@libp2p/webrtc 3.2.10 → 3.2.11-97ab31c0c

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 (53) hide show
  1. package/dist/index.min.js +12 -12
  2. package/dist/src/maconn.d.ts +6 -1
  3. package/dist/src/maconn.d.ts.map +1 -1
  4. package/dist/src/maconn.js +6 -6
  5. package/dist/src/maconn.js.map +1 -1
  6. package/dist/src/muxer.d.ts +12 -2
  7. package/dist/src/muxer.d.ts.map +1 -1
  8. package/dist/src/muxer.js +16 -7
  9. package/dist/src/muxer.js.map +1 -1
  10. package/dist/src/private-to-private/initiate-connection.d.ts +3 -2
  11. package/dist/src/private-to-private/initiate-connection.d.ts.map +1 -1
  12. package/dist/src/private-to-private/initiate-connection.js +3 -4
  13. package/dist/src/private-to-private/initiate-connection.js.map +1 -1
  14. package/dist/src/private-to-private/signaling-stream-handler.d.ts +3 -1
  15. package/dist/src/private-to-private/signaling-stream-handler.d.ts.map +1 -1
  16. package/dist/src/private-to-private/signaling-stream-handler.js +3 -4
  17. package/dist/src/private-to-private/signaling-stream-handler.js.map +1 -1
  18. package/dist/src/private-to-private/transport.d.ts +3 -0
  19. package/dist/src/private-to-private/transport.d.ts.map +1 -1
  20. package/dist/src/private-to-private/transport.js +13 -11
  21. package/dist/src/private-to-private/transport.js.map +1 -1
  22. package/dist/src/private-to-private/util.d.ts +2 -1
  23. package/dist/src/private-to-private/util.d.ts.map +1 -1
  24. package/dist/src/private-to-private/util.js +5 -8
  25. package/dist/src/private-to-private/util.js.map +1 -1
  26. package/dist/src/private-to-public/sdp.d.ts +2 -1
  27. package/dist/src/private-to-public/sdp.d.ts.map +1 -1
  28. package/dist/src/private-to-public/sdp.js +3 -6
  29. package/dist/src/private-to-public/sdp.js.map +1 -1
  30. package/dist/src/private-to-public/transport.d.ts +3 -0
  31. package/dist/src/private-to-public/transport.d.ts.map +1 -1
  32. package/dist/src/private-to-public/transport.js +21 -10
  33. package/dist/src/private-to-public/transport.js.map +1 -1
  34. package/dist/src/stream.d.ts +3 -1
  35. package/dist/src/stream.d.ts.map +1 -1
  36. package/dist/src/stream.js +1 -2
  37. package/dist/src/stream.js.map +1 -1
  38. package/dist/src/util.d.ts +2 -1
  39. package/dist/src/util.d.ts.map +1 -1
  40. package/dist/src/util.js +4 -6
  41. package/dist/src/util.js.map +1 -1
  42. package/package.json +18 -17
  43. package/src/maconn.ts +11 -7
  44. package/src/muxer.ts +29 -8
  45. package/src/private-to-private/initiate-connection.ts +5 -6
  46. package/src/private-to-private/signaling-stream-handler.ts +5 -5
  47. package/src/private-to-private/transport.ts +15 -12
  48. package/src/private-to-private/util.ts +7 -10
  49. package/src/private-to-public/sdp.ts +4 -8
  50. package/src/private-to-public/transport.ts +23 -11
  51. package/src/stream.ts +6 -3
  52. package/src/util.ts +5 -7
  53. package/dist/typedoc-urls.json +0 -8
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 h2=Object.create;var io=Object.defineProperty;var d2=Object.getOwnPropertyDescriptor;var p2=Object.getOwnPropertyNames;var y2=Object.getPrototypeOf,g2=Object.prototype.hasOwnProperty;var he=(t,e)=>()=>(t&&(e=t(t=0)),e);var re=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),ue=(t,e)=>{for(var r in e)io(t,r,{get:e[r],enumerable:!0})},Lu=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of p2(e))!g2.call(t,i)&&i!==r&&io(t,i,{get:()=>e[i],enumerable:!(n=d2(e,i))||n.enumerable});return t};var $e=(t,e,r)=>(r=t!=null?h2(y2(t)):{},Lu(e||!t||!t.__esModule?io(r,"default",{value:t,enumerable:!0}):r,t)),oo=t=>Lu(io({},"__esModule",{value:!0}),t);var Uu=re((tE,Pu)=>{var xn=1e3,bn=xn*60,wn=bn*60,Mr=wn*24,m2=Mr*7,x2=Mr*365.25;Pu.exports=function(t,e){e=e||{};var r=typeof t;if(r==="string"&&t.length>0)return b2(t);if(r==="number"&&isFinite(t))return e.long?v2(t):w2(t);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(t))};function b2(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*x2;case"weeks":case"week":case"w":return r*m2;case"days":case"day":case"d":return r*Mr;case"hours":case"hour":case"hrs":case"hr":case"h":return r*wn;case"minutes":case"minute":case"mins":case"min":case"m":return r*bn;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 w2(t){var e=Math.abs(t);return e>=Mr?Math.round(t/Mr)+"d":e>=wn?Math.round(t/wn)+"h":e>=bn?Math.round(t/bn)+"m":e>=xn?Math.round(t/xn)+"s":t+"ms"}function v2(t){var e=Math.abs(t);return e>=Mr?ao(t,e,Mr,"day"):e>=wn?ao(t,e,wn,"hour"):e>=bn?ao(t,e,bn,"minute"):e>=xn?ao(t,e,xn,"second"):t+" ms"}function ao(t,e,r,n){var i=e>=r*1.5;return Math.round(t/r)+" "+n+(i?"s":"")}});var Fu=re((rE,Ou)=>{function E2(t){r.debug=r,r.default=r,r.coerce=c,r.disable=o,r.enable=i,r.enabled=s,r.humanize=Uu(),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 C=0;y[0]=y[0].replace(/%([a-zA-Z%])/g,(E,B)=>{if(E==="%%")return"%";C++;let D=r.formatters[B];if(typeof D=="function"){let U=y[C];E=D.call(m,U),y.splice(C,1),C--}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}Ou.exports=E2});var Ku=re((lt,co)=>{lt.formatArgs=C2;lt.save=A2;lt.load=D2;lt.useColors=S2;lt.storage=B2();lt.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`."))}})();lt.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 S2(){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 C2(t){if(t[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+t[0]+(this.useColors?"%c ":" ")+"+"+co.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)}lt.log=console.debug||console.log||(()=>{});function A2(t){try{t?lt.storage.setItem("debug",t):lt.storage.removeItem("debug")}catch{}}function D2(){let t;try{t=lt.storage.getItem("debug")}catch{}return!t&&typeof process<"u"&&"env"in process&&(t=process.env.DEBUG),t}function B2(){try{return localStorage}catch{}}co.exports=Fu()(lt);var{formatters:I2}=co.exports;I2.j=function(t){try{return JSON.stringify(t)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}}});var jf=re((q6,Qf)=>{"use strict";function Zf(t,e){for(let r in e)Object.defineProperty(t,r,{value:e[r],enumerable:!0,configurable:!0});return t}function Lg(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 Zf(t,r)}catch{r.message=t.message,r.stack=t.stack;let i=function(){};return i.prototype=Object.create(Object.getPrototypeOf(t)),Zf(new i,r)}}Qf.exports=Lg});var xe=re((UD,wh)=>{wh.exports={options:{usePureJavaScript:!1}}});var Sh=re((OD,Eh)=>{var o0={};Eh.exports=o0;var vh={};o0.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=Lx(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};o0.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=vh[e];if(!r){r=vh[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 Lx(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 Oe=re((FD,Bh)=>{var Ch=xe(),Ah=Sh(),w=Bh.exports=Ch.util=Ch.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 Ui(t){if(!(t===8||t===16||t===24||t===32))throw new Error("Only 8, 16, 24, or 32 bits supported: "+t)}w.ByteBuffer=s0;function s0(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 s0||typeof t=="object"&&typeof t.data=="string"&&typeof t.read=="number")&&(this.data=t.data,this.read=t.read);this._constructedStringLength=0}w.ByteStringBuffer=s0;var Nx=4096;w.ByteStringBuffer.prototype._optimizeConstructedString=function(t){this._constructedStringLength+=t,this._constructedStringLength>Nx&&(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){Ui(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){Ui(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 Px(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=Px;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){Ui(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 Ui(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){Ui(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 Rr="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",Lr=[62,-1,-1,-1,63,52,53,54,55,56,57,58,59,60,61,-1,-1,-1,64,-1,-1,-1,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,-1,-1,-1,-1,-1,-1,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51],Dh="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+=Rr.charAt(i>>2),r+=Rr.charAt((i&3)<<4|o>>4),isNaN(o)?r+="==":(r+=Rr.charAt((o&15)<<2|s>>6),r+=isNaN(s)?"=":Rr.charAt(s&63)),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=Lr[t.charCodeAt(s++)-43],n=Lr[t.charCodeAt(s++)-43],i=Lr[t.charCodeAt(s++)-43],o=Lr[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:Ah.encode,decode:Ah.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+=Rr.charAt(i>>2),r+=Rr.charAt((i&3)<<4|o>>4),isNaN(o)?r+="==":(r+=Rr.charAt((o&15)<<2|s>>6),r+=isNaN(s)?"=":Rr.charAt(s&63)),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=Lr[t.charCodeAt(c++)-43],o=Lr[t.charCodeAt(c++)-43],s=Lr[t.charCodeAt(c++)-43],a=Lr[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,Dh,e)};w.binary.base58.decode=function(t,e){return w.binary.baseN.decode(t,Dh,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 a0=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}},c0=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},Ux=function(t,e,r,n){var i=c0(t,e);i===null&&(i={}),i[r]=n,a0(t,e,i)},Ox=function(t,e,r){var n=c0(t,e);return n!==null&&(n=r in n?n[r]:null),n},Fx=function(t,e,r){var n=c0(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),a0(t,e,n)}},Kx=function(t,e){a0(t,e,null)},ds=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){ds(Ux,arguments,i)};w.getItem=function(t,e,r,n){return ds(Ox,arguments,n)};w.removeItem=function(t,e,r,n){ds(Fx,arguments,n)};w.clearItems=function(t,e,r){ds(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 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 ps=re((KD,Ih)=>{var Oi=xe();Oi.pki=Oi.pki||{};var u0=Ih.exports=Oi.pki.oids=Oi.oids=Oi.oids||{};function N(t,e){u0[t]=e,u0[e]=t}function ge(t,e){u0[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");ge("2.5.29.1","authorityKeyIdentifier");ge("2.5.29.2","keyAttributes");ge("2.5.29.3","certificatePolicies");ge("2.5.29.4","keyUsageRestriction");ge("2.5.29.5","policyMapping");ge("2.5.29.6","subtreesConstraint");ge("2.5.29.7","subjectAltName");ge("2.5.29.8","issuerAltName");ge("2.5.29.9","subjectDirectoryAttributes");ge("2.5.29.10","basicConstraints");ge("2.5.29.11","nameConstraints");ge("2.5.29.12","policyConstraints");ge("2.5.29.13","basicConstraints");N("2.5.29.14","subjectKeyIdentifier");N("2.5.29.15","keyUsage");ge("2.5.29.16","privateKeyUsagePeriod");N("2.5.29.17","subjectAltName");N("2.5.29.18","issuerAltName");N("2.5.29.19","basicConstraints");ge("2.5.29.20","cRLNumber");ge("2.5.29.21","cRLReason");ge("2.5.29.22","expirationDate");ge("2.5.29.23","instructionCode");ge("2.5.29.24","invalidityDate");ge("2.5.29.25","cRLDistributionPoints");ge("2.5.29.26","issuingDistributionPoint");ge("2.5.29.27","deltaCRLIndicator");ge("2.5.29.28","issuingDistributionPoint");ge("2.5.29.29","certificateIssuer");ge("2.5.29.30","nameConstraints");N("2.5.29.31","cRLDistributionPoints");N("2.5.29.32","certificatePolicies");ge("2.5.29.33","policyMappings");ge("2.5.29.34","policyConstraints");N("2.5.29.35","authorityKeyIdentifier");ge("2.5.29.36","policyConstraints");N("2.5.29.37","extKeyUsage");ge("2.5.29.46","freshestCRL");ge("2.5.29.54","inhibitAnyPolicy");N("1.3.6.1.4.1.11129.2.4.2","timestampList");N("1.3.6.1.5.5.7.1.1","authorityInfoAccess");N("1.3.6.1.5.5.7.3.1","serverAuth");N("1.3.6.1.5.5.7.3.2","clientAuth");N("1.3.6.1.5.5.7.3.3","codeSigning");N("1.3.6.1.5.5.7.3.4","emailProtection");N("1.3.6.1.5.5.7.3.8","timeStamping")});var Ki=re((MD,_h)=>{var Ce=xe();Oe();ps();var V=_h.exports=Ce.asn1=Ce.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(Ce.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||Ce.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(Ce.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(Ce.util.isArray(t)){if(!Ce.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 Fi(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 Mx=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;Fi(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=Ce.util.createBuffer(t));var r=t.length(),n=ys(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 ys(t,e,r,n){var i;Fi(t,e,2);var o=t.getByte();e--;var s=o&192,a=o&31;i=t.length();var c=Mx(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(Fi(t,e,2),t.bytes(2)===String.fromCharCode(0,0)){t.getBytes(2),e-=2;break}i=t.length(),f.push(ys(t,e,r+1,n)),e-=i-t.length()}else for(;c>0;)i=t.length(),f.push(ys(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&&(Fi(t,e,1),p=t.getByte(),e--),p===0)try{i=t.length();var y={strict:!0,decodeBitStrings:!0},m=ys(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)Fi(t,e,2),f+=String.fromCharCode(t.getInt16()),e-=2;else f=t.getBytes(c),e-=c}var C=l===void 0?null:{bitStringContents:l};return V.create(s,a,h,f,C)}V.toDer=function(t){var e=Ce.util.createBuffer(),r=t.tagClass|t.type,n=Ce.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=Ce.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=Ce.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=Ce.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=Ce.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&&Ce.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 Th=/[^\\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 o2=Object.create;var eo=Object.defineProperty;var s2=Object.getOwnPropertyDescriptor;var a2=Object.getOwnPropertyNames;var c2=Object.getPrototypeOf,u2=Object.prototype.hasOwnProperty;var de=(t,e)=>()=>(t&&(e=t(t=0)),e);var re=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),ue=(t,e)=>{for(var r in e)eo(t,r,{get:e[r],enumerable:!0})},Au=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of a2(e))!u2.call(t,i)&&i!==r&&eo(t,i,{get:()=>e[i],enumerable:!(n=s2(e,i))||n.enumerable});return t};var $e=(t,e,r)=>(r=t!=null?o2(c2(t)):{},Au(e||!t||!t.__esModule?eo(r,"default",{value:t,enumerable:!0}):r,t)),to=t=>Au(eo({},"__esModule",{value:!0}),t);var Ff=re((A6,Of)=>{"use strict";function Uf(t,e){for(let r in e)Object.defineProperty(t,r,{value:e[r],enumerable:!0,configurable:!0});return t}function dg(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 Uf(t,r)}catch{r.message=t.message,r.stack=t.stack;let i=function(){};return i.prototype=Object.create(Object.getPrototypeOf(t)),Uf(new i,r)}}Of.exports=dg});var xe=re((BD,ah)=>{ah.exports={options:{usePureJavaScript:!1}}});var fh=re((ID,uh)=>{var Qc={};uh.exports=Qc;var ch={};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=hx(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=ch[e];if(!r){r=ch[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 hx(t,e){var r=0,n=e.length,i=e.charAt(0),o=[0];for(r=0;r<t.length();++r){for(var s=0,a=t.at(r);s<o.length;++s)a+=o[s]<<8,o[s]=a%n,a=a/n|0;for(;a>0;)o.push(a%n),a=a/n|0}var c="";for(r=0;t.at(r)===0&&r<t.length()-1;++r)c+=i;for(r=o.length-1;r>=0;--r)c+=e[o[r]];return c}});var Ue=re((TD,ph)=>{var lh=xe(),hh=fh(),w=ph.exports=lh.util=lh.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 Ri(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 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){Ri(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){Ri(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 px(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=px;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){Ri(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 Ri(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){Ri(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],dh="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:hh.encode,decode:hh.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,dh,e)};w.binary.base58.decode=function(t,e){return w.binary.baseN.decode(t,dh,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},yx=function(t,e,r,n){var i=e0(t,e);i===null&&(i={}),i[r]=n,Jc(t,e,i)},gx=function(t,e,r){var n=e0(t,e);return n!==null&&(n=r in n?n[r]:null),n},mx=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)}},xx=function(t,e){Jc(t,e,null)},as=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){as(yx,arguments,i)};w.getItem=function(t,e,r,n){return as(gx,arguments,n)};w.removeItem=function(t,e,r,n){as(mx,arguments,n)};w.clearItems=function(t,e,r){as(xx,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 cs=re((_D,yh)=>{var Li=xe();Li.pki=Li.pki||{};var t0=yh.exports=Li.pki.oids=Li.oids=Li.oids||{};function N(t,e){t0[t]=e,t0[e]=t}function ge(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");ge("2.5.29.1","authorityKeyIdentifier");ge("2.5.29.2","keyAttributes");ge("2.5.29.3","certificatePolicies");ge("2.5.29.4","keyUsageRestriction");ge("2.5.29.5","policyMapping");ge("2.5.29.6","subtreesConstraint");ge("2.5.29.7","subjectAltName");ge("2.5.29.8","issuerAltName");ge("2.5.29.9","subjectDirectoryAttributes");ge("2.5.29.10","basicConstraints");ge("2.5.29.11","nameConstraints");ge("2.5.29.12","policyConstraints");ge("2.5.29.13","basicConstraints");N("2.5.29.14","subjectKeyIdentifier");N("2.5.29.15","keyUsage");ge("2.5.29.16","privateKeyUsagePeriod");N("2.5.29.17","subjectAltName");N("2.5.29.18","issuerAltName");N("2.5.29.19","basicConstraints");ge("2.5.29.20","cRLNumber");ge("2.5.29.21","cRLReason");ge("2.5.29.22","expirationDate");ge("2.5.29.23","instructionCode");ge("2.5.29.24","invalidityDate");ge("2.5.29.25","cRLDistributionPoints");ge("2.5.29.26","issuingDistributionPoint");ge("2.5.29.27","deltaCRLIndicator");ge("2.5.29.28","issuingDistributionPoint");ge("2.5.29.29","certificateIssuer");ge("2.5.29.30","nameConstraints");N("2.5.29.31","cRLDistributionPoints");N("2.5.29.32","certificatePolicies");ge("2.5.29.33","policyMappings");ge("2.5.29.34","policyConstraints");N("2.5.29.35","authorityKeyIdentifier");ge("2.5.29.36","policyConstraints");N("2.5.29.37","extKeyUsage");ge("2.5.29.46","freshestCRL");ge("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 Pi=re((kD,mh)=>{var Ae=xe();Ue();cs();var V=mh.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 Ni(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 bx=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;Ni(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=us(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 us(t,e,r,n){var i;Ni(t,e,2);var o=t.getByte();e--;var s=o&192,a=o&31;i=t.length();var c=bx(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(Ni(t,e,2),t.bytes(2)===String.fromCharCode(0,0)){t.getBytes(2),e-=2;break}i=t.length(),f.push(us(t,e,r+1,n)),e-=i-t.length()}else for(;c>0;)i=t.length(),f.push(us(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&&(Ni(t,e,1),p=t.getByte(),e--),p===0)try{i=t.length();var g={strict:!0,decodeBitStrings:!0},m=us(t,e,r+1,g),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=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)Ni(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 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=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 gh=/[^\\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,Ce.pki&&Ce.pki.oids&&c in Ce.pki.oids&&(n+=" ("+Ce.pki.oids[c]+") ")}if(t.type===V.Type.INTEGER)try{n+=V.derToInteger(t.value)}catch{n+="0x"+Ce.util.bytesToHex(t.value)}else if(t.type===V.Type.BITSTRING){if(t.value.length>1?n+="0x"+Ce.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)Th.test(t.value)||(n+="("+t.value+") "),n+="0x"+Ce.util.bytesToHex(t.value);else if(t.type===V.Type.UTF8)try{n+=Ce.util.decodeUtf8(t.value)}catch(f){if(f.message==="URI malformed")n+="0x"+Ce.util.bytesToHex(t.value)+" (malformed UTF8)";else throw f}else t.type===V.Type.PRINTABLESTRING||t.type===V.Type.IA5String?n+=t.value:Th.test(t.value)?n+="0x"+Ce.util.bytesToHex(t.value):t.value.length===0?n+="[null]":n+=t.value}return n}});var l0=re((VD,kh)=>{var Ve=xe();Oe();kh.exports=Ve.cipher=Ve.cipher||{};Ve.cipher.algorithms=Ve.cipher.algorithms||{};Ve.cipher.createCipher=function(t,e){var r=t;if(typeof r=="string"&&(r=Ve.cipher.getAlgorithm(r),r&&(r=r())),!r)throw new Error("Unsupported algorithm: "+t);return new Ve.cipher.BlockCipher({algorithm:r,key:e,decrypt:!1})};Ve.cipher.createDecipher=function(t,e){var r=t;if(typeof r=="string"&&(r=Ve.cipher.getAlgorithm(r),r&&(r=r())),!r)throw new Error("Unsupported algorithm: "+t);return new Ve.cipher.BlockCipher({algorithm:r,key:e,decrypt:!0})};Ve.cipher.registerAlgorithm=function(t,e){t=t.toUpperCase(),Ve.cipher.algorithms[t]=e};Ve.cipher.getAlgorithm=function(t){return t=t.toUpperCase(),t in Ve.cipher.algorithms?Ve.cipher.algorithms[t]:null};var f0=Ve.cipher.BlockCipher=function(t){this.algorithm=t.algorithm,this.mode=this.algorithm.mode,this.blockSize=this.mode.blockSize,this._finish=!1,this._input=null,this.output=null,this._op=t.decrypt?this.mode.decrypt:this.mode.encrypt,this._decrypt=t.decrypt,this.algorithm.initialize(t)};f0.prototype.start=function(t){t=t||{};var e={};for(var r in t)e[r]=t[r];e.decrypt=this._decrypt,this._finish=!1,this._input=Ve.util.createBuffer(),this.output=t.output||Ve.util.createBuffer(),this.mode.start(e)};f0.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()};f0.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 d0=re((HD,Rh)=>{var He=xe();Oe();He.cipher=He.cipher||{};var ae=Rh.exports=He.cipher.modes=He.cipher.modes||{};ae.ecb=function(t){t=t||{},this.name="ECB",this.cipher=t.cipher,this.blockSize=t.blockSize||16,this._ints=this.blockSize/4,this._inBlock=new Array(this._ints),this._outBlock=new Array(this._ints)};ae.ecb.prototype.start=function(t){};ae.ecb.prototype.encrypt=function(t,e,r){if(t.length()<this.blockSize&&!(r&&t.length()>0))return!0;for(var n=0;n<this._ints;++n)this._inBlock[n]=t.getInt32();this.cipher.encrypt(this._inBlock,this._outBlock);for(var n=0;n<this._ints;++n)e.putInt32(this._outBlock[n])};ae.ecb.prototype.decrypt=function(t,e,r){if(t.length()<this.blockSize&&!(r&&t.length()>0))return!0;for(var n=0;n<this._ints;++n)this._inBlock[n]=t.getInt32();this.cipher.decrypt(this._inBlock,this._outBlock);for(var n=0;n<this._ints;++n)e.putInt32(this._outBlock[n])};ae.ecb.prototype.pad=function(t,e){var r=t.length()===this.blockSize?this.blockSize:this.blockSize-t.length();return t.fillWithByte(r,r),!0};ae.ecb.prototype.unpad=function(t,e){if(e.overflow>0)return!1;var r=t.length(),n=t.at(r-1);return n>this.blockSize<<2?!1:(t.truncate(n),!0)};ae.cbc=function(t){t=t||{},this.name="CBC",this.cipher=t.cipher,this.blockSize=t.blockSize||16,this._ints=this.blockSize/4,this._inBlock=new Array(this._ints),this._outBlock=new Array(this._ints)};ae.cbc.prototype.start=function(t){if(t.iv===null){if(!this._prev)throw new Error("Invalid IV parameter.");this._iv=this._prev.slice(0)}else if("iv"in t)this._iv=gs(t.iv,this.blockSize),this._prev=this._iv.slice(0);else throw new Error("Invalid IV parameter.")};ae.cbc.prototype.encrypt=function(t,e,r){if(t.length()<this.blockSize&&!(r&&t.length()>0))return!0;for(var n=0;n<this._ints;++n)this._inBlock[n]=this._prev[n]^t.getInt32();this.cipher.encrypt(this._inBlock,this._outBlock);for(var n=0;n<this._ints;++n)e.putInt32(this._outBlock[n]);this._prev=this._outBlock};ae.cbc.prototype.decrypt=function(t,e,r){if(t.length()<this.blockSize&&!(r&&t.length()>0))return!0;for(var n=0;n<this._ints;++n)this._inBlock[n]=t.getInt32();this.cipher.decrypt(this._inBlock,this._outBlock);for(var n=0;n<this._ints;++n)e.putInt32(this._prev[n]^this._outBlock[n]);this._prev=this._inBlock.slice(0)};ae.cbc.prototype.pad=function(t,e){var r=t.length()===this.blockSize?this.blockSize:this.blockSize-t.length();return t.fillWithByte(r,r),!0};ae.cbc.prototype.unpad=function(t,e){if(e.overflow>0)return!1;var r=t.length(),n=t.at(r-1);return n>this.blockSize<<2?!1:(t.truncate(n),!0)};ae.cfb=function(t){t=t||{},this.name="CFB",this.cipher=t.cipher,this.blockSize=t.blockSize||16,this._ints=this.blockSize/4,this._inBlock=null,this._outBlock=new Array(this._ints),this._partialBlock=new Array(this._ints),this._partialOutput=He.util.createBuffer(),this._partialBytes=0};ae.cfb.prototype.start=function(t){if(!("iv"in t))throw new Error("Invalid IV parameter.");this._iv=gs(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=He.util.createBuffer(),this._partialBytes=0};ae.ofb.prototype.start=function(t){if(!("iv"in t))throw new Error("Invalid IV parameter.");this._iv=gs(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=He.util.createBuffer(),this._partialBytes=0};ae.ctr.prototype.start=function(t){if(!("iv"in t))throw new Error("Invalid IV parameter.");this._iv=gs(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}ms(this._inBlock)};ae.ctr.prototype.decrypt=ae.ctr.prototype.encrypt;ae.gcm=function(t){t=t||{},this.name="GCM",this.cipher=t.cipher,this.blockSize=t.blockSize||16,this._ints=this.blockSize/4,this._inBlock=new Array(this._ints),this._outBlock=new Array(this._ints),this._partialOutput=He.util.createBuffer(),this._partialBytes=0,this._R=3774873600};ae.gcm.prototype.start=function(t){if(!("iv"in t))throw new Error("Invalid IV parameter.");var e=He.util.createBuffer(t.iv);this._cipherLength=0;var r;if("additionalData"in t?r=He.util.createBuffer(t.additionalData):r=He.util.createBuffer(),"tagLength"in t?this._tagLength=t.tagLength:this._tagLength=128,this._tag=null,t.decrypt&&(this._tag=He.util.createBuffer(t.tag).getBytes(),this._tag.length!==this._tagLength/8))throw new Error("Authentication tag does not match tag length.");this._hashBlock=new Array(this._ints),this.tag=null,this._hashSubkey=new Array(this._ints),this.cipher.encrypt([0,0,0,0],this._hashSubkey),this.componentBits=4,this._m=this.generateHashTable(this._hashSubkey,this.componentBits);var n=e.length();if(n===12)this._j0=[e.getInt32(),e.getInt32(),e.getInt32(),1];else{for(this._j0=[0,0,0,0];e.length()>0;)this._j0=this.ghash(this._hashSubkey,this._j0,[e.getInt32(),e.getInt32(),e.getInt32(),e.getInt32()]);this._j0=this.ghash(this._hashSubkey,this._j0,[0,0].concat(h0(n*8)))}this._inBlock=this._j0.slice(0),ms(this._inBlock),this._partialBytes=0,r=He.util.createBuffer(r),this._aDataLength=h0(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),ms(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),ms(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=He.util.createBuffer();var n=this._aDataLength.concat(h0(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 gs(t,e){if(typeof t=="string"&&(t=He.util.createBuffer(t)),He.util.isArray(t)&&t.length>4){var r=t;t=He.util.createBuffer();for(var n=0;n<r.length;++n)t.putByte(r[n])}if(t.length()<e)throw new Error("Invalid IV length; got "+t.length()+" bytes and expected "+e+" bytes.");if(!He.util.isArray(t)){for(var i=[],o=e/4,n=0;n<o;++n)i.push(t.getInt32());t=i}return t}function ms(t){t[t.length-1]=t[t.length-1]+1&4294967295}function h0(t){return[t/4294967296|0,t&4294967295]}});var m0=re((qD,Uh)=>{var ve=xe();l0();d0();Oe();Uh.exports=ve.aes=ve.aes||{};ve.aes.startEncrypting=function(t,e,r,n){var i=xs({key:t,output:r,decrypt:!1,mode:n});return i.start(e),i};ve.aes.createEncryptionCipher=function(t,e){return xs({key:t,output:null,decrypt:!1,mode:e})};ve.aes.startDecrypting=function(t,e,r,n){var i=xs({key:t,output:r,decrypt:!0,mode:n});return i.start(e),i};ve.aes.createDecryptionCipher=function(t,e){return xs({key:t,output:null,decrypt:!0,mode:e})};ve.aes.Algorithm=function(t,e){g0||Nh();var r=this;r.name=t,r.mode=new e({blockSize:16,cipher:{encrypt:function(n,i){return y0(r._w,n,i,!1)},decrypt:function(n,i){return y0(r._w,n,i,!0)}}}),r._init=!1};ve.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=ve.util.createBuffer(e);else if(ve.util.isArray(e)&&(e.length===16||e.length===24||e.length===32)){r=e,e=ve.util.createBuffer();for(var n=0;n<r.length;++n)e.putByte(r[n])}if(!ve.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(!ve.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=Ph(e,t.decrypt&&!s),this._init=!0}};ve.aes._expandKey=function(t,e){return g0||Nh(),Ph(t,e)};ve.aes._updateBlock=y0;Xn("AES-ECB",ve.cipher.modes.ecb);Xn("AES-CBC",ve.cipher.modes.cbc);Xn("AES-CFB",ve.cipher.modes.cfb);Xn("AES-OFB",ve.cipher.modes.ofb);Xn("AES-CTR",ve.cipher.modes.ctr);Xn("AES-GCM",ve.cipher.modes.gcm);function Xn(t,e){var r=function(){return new ve.aes.Algorithm(t,e)};ve.cipher.registerAlgorithm(t,r)}var g0=!1,Yn=4,it,p0,Lh,sn,Nt;function Nh(){g0=!0,Lh=[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),p0=new Array(256),sn=new Array(4),Nt=new Array(4);for(var e=0;e<4;++e)sn[e]=new Array(256),Nt[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,p0[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)sn[l][r]=u,Nt[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 Ph(t,e){for(var r=t.slice(0),n,i=1,o=r.length,s=o+6+1,a=Yn*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]^Lh[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=Nt[0],l=Nt[1],h=Nt[2],g=Nt[3],d=r.slice(0);a=r.length;for(var c=0,p=a-Yn;c<a;c+=Yn,p-=Yn)if(c===0||c===a-Yn)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<Yn;++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 y0(t,e,r,n){var i=t.length/4-1,o,s,a,c,u;n?(o=Nt[0],s=Nt[1],a=Nt[2],c=Nt[3],u=p0):(o=sn[0],s=sn[1],a=sn[2],c=sn[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 xs(t){t=t||{};var e=(t.mode||"CBC").toUpperCase(),r="AES-"+e,n;t.decrypt?n=ve.cipher.createDecipher(r,t.key):n=ve.cipher.createCipher(r,t.key);var i=n.start;return n.start=function(o,s){var a=null;s instanceof ve.util.ByteBuffer&&(a=s,s={}),s=s||{},s.output=a,s.iv=o,i.call(n,s)},n}});var Kh=re((zD,Fh)=>{var Be=xe();l0();d0();Oe();Fh.exports=Be.des=Be.des||{};Be.des.startEncrypting=function(t,e,r,n){var i=bs({key:t,output:r,decrypt:!1,mode:n||(e===null?"ECB":"CBC")});return i.start(e),i};Be.des.createEncryptionCipher=function(t,e){return bs({key:t,output:null,decrypt:!1,mode:e})};Be.des.startDecrypting=function(t,e,r,n){var i=bs({key:t,output:r,decrypt:!0,mode:n||(e===null?"ECB":"CBC")});return i.start(e),i};Be.des.createDecryptionCipher=function(t,e){return bs({key:t,output:null,decrypt:!0,mode:e})};Be.des.Algorithm=function(t,e){var r=this;r.name=t,r.mode=new e({blockSize:8,cipher:{encrypt:function(n,i){return Oh(r._keys,n,i,!1)},decrypt:function(n,i){return Oh(r._keys,n,i,!0)}}}),r._init=!1};Be.des.Algorithm.prototype.initialize=function(t){if(!this._init){var e=Be.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=Xx(e),this._init=!0}};qt("DES-ECB",Be.cipher.modes.ecb);qt("DES-CBC",Be.cipher.modes.cbc);qt("DES-CFB",Be.cipher.modes.cfb);qt("DES-OFB",Be.cipher.modes.ofb);qt("DES-CTR",Be.cipher.modes.ctr);qt("3DES-ECB",Be.cipher.modes.ecb);qt("3DES-CBC",Be.cipher.modes.cbc);qt("3DES-CFB",Be.cipher.modes.cfb);qt("3DES-OFB",Be.cipher.modes.ofb);qt("3DES-CTR",Be.cipher.modes.ctr);function qt(t,e){var r=function(){return new Be.des.Algorithm(t,e)};Be.cipher.registerAlgorithm(t,r)}var Vx=[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],Hx=[-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],qx=[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],zx=[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],Gx=[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],Wx=[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],$x=[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],Yx=[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 Xx(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,C=0;C<p;C++){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 Oh(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^(Hx[g>>>24&63]|zx[g>>>16&63]|Wx[g>>>8&63]|Yx[g&63]|Vx[d>>>24&63]|qx[d>>>16&63]|Gx[d>>>8&63]|$x[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 bs(t){t=t||{};var e=(t.mode||"CBC").toUpperCase(),r="DES-"+e,n;t.decrypt?n=Be.cipher.createDecipher(r,t.key):n=Be.cipher.createCipher(r,t.key);var i=n.start;return n.start=function(o,s){var a=null;s instanceof Be.util.ByteBuffer&&(a=s,s={}),s=s||{},s.output=a,s.iv=o,i.call(n,s)},n}});var an=re((GD,Mh)=>{var ws=xe();Mh.exports=ws.md=ws.md||{};ws.md.algorithms=ws.md.algorithms||{}});var Hh=re((WD,Vh)=>{var fr=xe();an();Oe();var Zx=Vh.exports=fr.hmac=fr.hmac||{};Zx.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 fr.md.algorithms)e=fr.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=fr.util.createBuffer(s);else if(fr.util.isArray(s)){var a=s;s=fr.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=fr.util.createBuffer(),n=fr.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 vs=re(()=>{});var zh=re((XD,qh)=>{var ot=xe();Hh();an();Oe();var Qx=ot.pkcs5=ot.pkcs5||{},lr;ot.util.isNodejs&&!ot.options.usePureJavaScript&&(lr=vs());qh.exports=ot.pbkdf2=Qx.pbkdf2=function(t,e,r,n,i,o){if(typeof i=="function"&&(o=i,i=null),ot.util.isNodejs&&!ot.options.usePureJavaScript&&lr.pbkdf2&&(i===null||typeof i!="object")&&(lr.pbkdf2Sync.length>4||!i||i==="sha1"))return typeof i!="string"&&(i="sha1"),t=Buffer.from(t,"binary"),e=Buffer.from(e,"binary"),o?lr.pbkdf2Sync.length===4?lr.pbkdf2(t,e,r,n,function(x,C){if(x)return o(x);o(null,C.toString("binary"))}):lr.pbkdf2(t,e,r,n,i,function(x,C){if(x)return o(x);o(null,C.toString("binary"))}):lr.pbkdf2Sync.length===4?lr.pbkdf2Sync(t,e,r,n).toString("binary"):lr.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 $h=re((ZD,Wh)=>{var Ss=xe();Oe();var Gh=Wh.exports=Ss.pem=Ss.pem||{};Gh.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+=Es(n)),t.contentDomain&&(n={name:"Content-Domain",values:[t.contentDomain]},r+=Es(n)),t.dekInfo&&(n={name:"DEK-Info",values:[t.dekInfo.algorithm]},t.dekInfo.parameters&&n.values.push(t.dekInfo.parameters),r+=Es(n)),t.headers)for(var i=0;i<t.headers.length;++i)r+=Es(t.headers[i]);return t.procType&&(r+=`\r
10
- `),r+=Ss.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,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)gh.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:gh.test(t.value)?n+="0x"+Ae.util.bytesToHex(t.value):t.value.length===0?n+="[null]":n+=t.value}return n}});var n0=re((RD,xh)=>{var Ve=xe();Ue();xh.exports=Ve.cipher=Ve.cipher||{};Ve.cipher.algorithms=Ve.cipher.algorithms||{};Ve.cipher.createCipher=function(t,e){var r=t;if(typeof r=="string"&&(r=Ve.cipher.getAlgorithm(r),r&&(r=r())),!r)throw new Error("Unsupported algorithm: "+t);return new Ve.cipher.BlockCipher({algorithm:r,key:e,decrypt:!1})};Ve.cipher.createDecipher=function(t,e){var r=t;if(typeof r=="string"&&(r=Ve.cipher.getAlgorithm(r),r&&(r=r())),!r)throw new Error("Unsupported algorithm: "+t);return new Ve.cipher.BlockCipher({algorithm:r,key:e,decrypt:!0})};Ve.cipher.registerAlgorithm=function(t,e){t=t.toUpperCase(),Ve.cipher.algorithms[t]=e};Ve.cipher.getAlgorithm=function(t){return t=t.toUpperCase(),t in Ve.cipher.algorithms?Ve.cipher.algorithms[t]:null};var r0=Ve.cipher.BlockCipher=function(t){this.algorithm=t.algorithm,this.mode=this.algorithm.mode,this.blockSize=this.mode.blockSize,this._finish=!1,this._input=null,this.output=null,this._op=t.decrypt?this.mode.decrypt:this.mode.encrypt,this._decrypt=t.decrypt,this.algorithm.initialize(t)};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=Ve.util.createBuffer(),this.output=t.output||Ve.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((LD,bh)=>{var He=xe();Ue();He.cipher=He.cipher||{};var ae=bh.exports=He.cipher.modes=He.cipher.modes||{};ae.ecb=function(t){t=t||{},this.name="ECB",this.cipher=t.cipher,this.blockSize=t.blockSize||16,this._ints=this.blockSize/4,this._inBlock=new Array(this._ints),this._outBlock=new Array(this._ints)};ae.ecb.prototype.start=function(t){};ae.ecb.prototype.encrypt=function(t,e,r){if(t.length()<this.blockSize&&!(r&&t.length()>0))return!0;for(var n=0;n<this._ints;++n)this._inBlock[n]=t.getInt32();this.cipher.encrypt(this._inBlock,this._outBlock);for(var n=0;n<this._ints;++n)e.putInt32(this._outBlock[n])};ae.ecb.prototype.decrypt=function(t,e,r){if(t.length()<this.blockSize&&!(r&&t.length()>0))return!0;for(var n=0;n<this._ints;++n)this._inBlock[n]=t.getInt32();this.cipher.decrypt(this._inBlock,this._outBlock);for(var n=0;n<this._ints;++n)e.putInt32(this._outBlock[n])};ae.ecb.prototype.pad=function(t,e){var r=t.length()===this.blockSize?this.blockSize:this.blockSize-t.length();return t.fillWithByte(r,r),!0};ae.ecb.prototype.unpad=function(t,e){if(e.overflow>0)return!1;var r=t.length(),n=t.at(r-1);return n>this.blockSize<<2?!1:(t.truncate(n),!0)};ae.cbc=function(t){t=t||{},this.name="CBC",this.cipher=t.cipher,this.blockSize=t.blockSize||16,this._ints=this.blockSize/4,this._inBlock=new Array(this._ints),this._outBlock=new Array(this._ints)};ae.cbc.prototype.start=function(t){if(t.iv===null){if(!this._prev)throw new Error("Invalid IV parameter.");this._iv=this._prev.slice(0)}else if("iv"in t)this._iv=fs(t.iv,this.blockSize),this._prev=this._iv.slice(0);else throw new Error("Invalid IV parameter.")};ae.cbc.prototype.encrypt=function(t,e,r){if(t.length()<this.blockSize&&!(r&&t.length()>0))return!0;for(var n=0;n<this._ints;++n)this._inBlock[n]=this._prev[n]^t.getInt32();this.cipher.encrypt(this._inBlock,this._outBlock);for(var n=0;n<this._ints;++n)e.putInt32(this._outBlock[n]);this._prev=this._outBlock};ae.cbc.prototype.decrypt=function(t,e,r){if(t.length()<this.blockSize&&!(r&&t.length()>0))return!0;for(var n=0;n<this._ints;++n)this._inBlock[n]=t.getInt32();this.cipher.decrypt(this._inBlock,this._outBlock);for(var n=0;n<this._ints;++n)e.putInt32(this._prev[n]^this._outBlock[n]);this._prev=this._inBlock.slice(0)};ae.cbc.prototype.pad=function(t,e){var r=t.length()===this.blockSize?this.blockSize:this.blockSize-t.length();return t.fillWithByte(r,r),!0};ae.cbc.prototype.unpad=function(t,e){if(e.overflow>0)return!1;var r=t.length(),n=t.at(r-1);return n>this.blockSize<<2?!1:(t.truncate(n),!0)};ae.cfb=function(t){t=t||{},this.name="CFB",this.cipher=t.cipher,this.blockSize=t.blockSize||16,this._ints=this.blockSize/4,this._inBlock=null,this._outBlock=new Array(this._ints),this._partialBlock=new Array(this._ints),this._partialOutput=He.util.createBuffer(),this._partialBytes=0};ae.cfb.prototype.start=function(t){if(!("iv"in t))throw new Error("Invalid IV parameter.");this._iv=fs(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=He.util.createBuffer(),this._partialBytes=0};ae.ofb.prototype.start=function(t){if(!("iv"in t))throw new Error("Invalid IV parameter.");this._iv=fs(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=He.util.createBuffer(),this._partialBytes=0};ae.ctr.prototype.start=function(t){if(!("iv"in t))throw new Error("Invalid IV parameter.");this._iv=fs(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}ls(this._inBlock)};ae.ctr.prototype.decrypt=ae.ctr.prototype.encrypt;ae.gcm=function(t){t=t||{},this.name="GCM",this.cipher=t.cipher,this.blockSize=t.blockSize||16,this._ints=this.blockSize/4,this._inBlock=new Array(this._ints),this._outBlock=new Array(this._ints),this._partialOutput=He.util.createBuffer(),this._partialBytes=0,this._R=3774873600};ae.gcm.prototype.start=function(t){if(!("iv"in t))throw new Error("Invalid IV parameter.");var e=He.util.createBuffer(t.iv);this._cipherLength=0;var r;if("additionalData"in t?r=He.util.createBuffer(t.additionalData):r=He.util.createBuffer(),"tagLength"in t?this._tagLength=t.tagLength:this._tagLength=128,this._tag=null,t.decrypt&&(this._tag=He.util.createBuffer(t.tag).getBytes(),this._tag.length!==this._tagLength/8))throw new Error("Authentication tag does not match tag length.");this._hashBlock=new Array(this._ints),this.tag=null,this._hashSubkey=new Array(this._ints),this.cipher.encrypt([0,0,0,0],this._hashSubkey),this.componentBits=4,this._m=this.generateHashTable(this._hashSubkey,this.componentBits);var n=e.length();if(n===12)this._j0=[e.getInt32(),e.getInt32(),e.getInt32(),1];else{for(this._j0=[0,0,0,0];e.length()>0;)this._j0=this.ghash(this._hashSubkey,this._j0,[e.getInt32(),e.getInt32(),e.getInt32(),e.getInt32()]);this._j0=this.ghash(this._hashSubkey,this._j0,[0,0].concat(i0(n*8)))}this._inBlock=this._j0.slice(0),ls(this._inBlock),this._partialBytes=0,r=He.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()])};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),ls(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),ls(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=He.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};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 fs(t,e){if(typeof t=="string"&&(t=He.util.createBuffer(t)),He.util.isArray(t)&&t.length>4){var r=t;t=He.util.createBuffer();for(var n=0;n<r.length;++n)t.putByte(r[n])}if(t.length()<e)throw new Error("Invalid IV length; got "+t.length()+" bytes and expected "+e+" bytes.");if(!He.util.isArray(t)){for(var i=[],o=e/4,n=0;n<o;++n)i.push(t.getInt32());t=i}return t}function ls(t){t[t.length-1]=t[t.length-1]+1&4294967295}function i0(t){return[t/4294967296|0,t&4294967295]}});var u0=re((ND,Sh)=>{var ve=xe();n0();o0();Ue();Sh.exports=ve.aes=ve.aes||{};ve.aes.startEncrypting=function(t,e,r,n){var i=hs({key:t,output:r,decrypt:!1,mode:n});return i.start(e),i};ve.aes.createEncryptionCipher=function(t,e){return hs({key:t,output:null,decrypt:!1,mode:e})};ve.aes.startDecrypting=function(t,e,r,n){var i=hs({key:t,output:r,decrypt:!0,mode:n});return i.start(e),i};ve.aes.createDecryptionCipher=function(t,e){return hs({key:t,output:null,decrypt:!0,mode:e})};ve.aes.Algorithm=function(t,e){c0||vh();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};ve.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=ve.util.createBuffer(e);else if(ve.util.isArray(e)&&(e.length===16||e.length===24||e.length===32)){r=e,e=ve.util.createBuffer();for(var n=0;n<r.length;++n)e.putByte(r[n])}if(!ve.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(!ve.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=Eh(e,t.decrypt&&!s),this._init=!0}};ve.aes._expandKey=function(t,e){return c0||vh(),Eh(t,e)};ve.aes._updateBlock=a0;Hn("AES-ECB",ve.cipher.modes.ecb);Hn("AES-CBC",ve.cipher.modes.cbc);Hn("AES-CFB",ve.cipher.modes.cfb);Hn("AES-OFB",ve.cipher.modes.ofb);Hn("AES-CTR",ve.cipher.modes.ctr);Hn("AES-GCM",ve.cipher.modes.gcm);function Hn(t,e){var r=function(){return new ve.aes.Algorithm(t,e)};ve.cipher.registerAlgorithm(t,r)}var c0=!1,Vn=4,nt,s0,wh,tn,kt;function vh(){c0=!0,wh=[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;nt=new Array(256),s0=new Array(256),tn=new Array(4),kt=new Array(4);for(var e=0;e<4;++e)tn[e]=new Array(256),kt[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,nt[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,kt[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 Eh(t,e){for(var r=t.slice(0),n,i=1,o=r.length,s=o+6+1,a=Vn*s,c=o;c<a;++c)n=r[c-1],c%o===0?(n=nt[n>>>16&255]<<24^nt[n>>>8&255]<<16^nt[n&255]<<8^nt[n>>>24]^wh[i]<<24,i++):o>6&&c%o===4&&(n=nt[n>>>24]<<24^nt[n>>>16&255]<<16^nt[n>>>8&255]<<8^nt[n&255]),r[c]=r[c-o]^n;if(e){var u,f=kt[0],l=kt[1],h=kt[2],y=kt[3],d=r.slice(0);a=r.length;for(var c=0,p=a-Vn;c<a;c+=Vn,p-=Vn)if(c===0||c===a-Vn)d[c]=r[p],d[c+1]=r[p+3],d[c+2]=r[p+2],d[c+3]=r[p+1];else for(var g=0;g<Vn;++g)u=r[p+g],d[c+(3&-g)]=f[nt[u>>>24]]^l[nt[u>>>16&255]]^h[nt[u>>>8&255]]^y[nt[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=kt[0],s=kt[1],a=kt[2],c=kt[3],u=s0):(o=tn[0],s=tn[1],a=tn[2],c=tn[3],u=nt);var f,l,h,y,d,p,g;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 m=3,b=1;b<i;++b)d=o[f>>>24]^s[l>>>16&255]^a[h>>>8&255]^c[y&255]^t[++m],p=o[l>>>24]^s[h>>>16&255]^a[y>>>8&255]^c[f&255]^t[++m],g=o[h>>>24]^s[y>>>16&255]^a[f>>>8&255]^c[l&255]^t[++m],y=o[y>>>24]^s[f>>>16&255]^a[l>>>8&255]^c[h&255]^t[++m],f=d,l=p,h=g;r[0]=u[f>>>24]<<24^u[l>>>16&255]<<16^u[h>>>8&255]<<8^u[y&255]^t[++m],r[n?3:1]=u[l>>>24]<<24^u[h>>>16&255]<<16^u[y>>>8&255]<<8^u[f&255]^t[++m],r[2]=u[h>>>24]<<24^u[y>>>16&255]<<16^u[f>>>8&255]<<8^u[l&255]^t[++m],r[n?1:3]=u[y>>>24]<<24^u[f>>>16&255]<<16^u[l>>>8&255]<<8^u[h&255]^t[++m]}function hs(t){t=t||{};var e=(t.mode||"CBC").toUpperCase(),r="AES-"+e,n;t.decrypt?n=ve.cipher.createDecipher(r,t.key):n=ve.cipher.createCipher(r,t.key);var i=n.start;return n.start=function(o,s){var a=null;s instanceof ve.util.ByteBuffer&&(a=s,s={}),s=s||{},s.output=a,s.iv=o,i.call(n,s)},n}});var Dh=re((PD,Ch)=>{var Be=xe();n0();o0();Ue();Ch.exports=Be.des=Be.des||{};Be.des.startEncrypting=function(t,e,r,n){var i=ds({key:t,output:r,decrypt:!1,mode:n||(e===null?"ECB":"CBC")});return i.start(e),i};Be.des.createEncryptionCipher=function(t,e){return ds({key:t,output:null,decrypt:!1,mode:e})};Be.des.startDecrypting=function(t,e,r,n){var i=ds({key:t,output:r,decrypt:!0,mode:n||(e===null?"ECB":"CBC")});return i.start(e),i};Be.des.createDecryptionCipher=function(t,e){return ds({key:t,output:null,decrypt:!0,mode:e})};Be.des.Algorithm=function(t,e){var r=this;r.name=t,r.mode=new e({blockSize:8,cipher:{encrypt:function(n,i){return Ah(r._keys,n,i,!1)},decrypt:function(n,i){return Ah(r._keys,n,i,!0)}}}),r._init=!1};Be.des.Algorithm.prototype.initialize=function(t){if(!this._init){var e=Be.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=Ix(e),this._init=!0}};Mt("DES-ECB",Be.cipher.modes.ecb);Mt("DES-CBC",Be.cipher.modes.cbc);Mt("DES-CFB",Be.cipher.modes.cfb);Mt("DES-OFB",Be.cipher.modes.ofb);Mt("DES-CTR",Be.cipher.modes.ctr);Mt("3DES-ECB",Be.cipher.modes.ecb);Mt("3DES-CBC",Be.cipher.modes.cbc);Mt("3DES-CFB",Be.cipher.modes.cfb);Mt("3DES-OFB",Be.cipher.modes.ofb);Mt("3DES-CTR",Be.cipher.modes.ctr);function Mt(t,e){var r=function(){return new Be.des.Algorithm(t,e)};Be.cipher.registerAlgorithm(t,r)}var wx=[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],vx=[-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],Ex=[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],Sx=[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],Ax=[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],Cx=[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],Dx=[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],Bx=[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 Ix(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,g=[],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]|y[E>>>8&15]|d[E>>>4&15];x=(U>>>16^D)&65535,g[b++]=D^x,g[b++]=U^x<<16}}return g}function Ah(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^(vx[y>>>24&63]|Sx[y>>>16&63]|Cx[y>>>8&63]|Bx[y&63]|wx[d>>>24&63]|Ex[d>>>16&63]|Ax[d>>>8&63]|Dx[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 ds(t){t=t||{};var e=(t.mode||"CBC").toUpperCase(),r="DES-"+e,n;t.decrypt?n=Be.cipher.createDecipher(r,t.key):n=Be.cipher.createCipher(r,t.key);var i=n.start;return n.start=function(o,s){var a=null;s instanceof Be.util.ByteBuffer&&(a=s,s={}),s=s||{},s.output=a,s.iv=o,i.call(n,s)},n}});var rn=re((UD,Bh)=>{var ps=xe();Bh.exports=ps.md=ps.md||{};ps.md.algorithms=ps.md.algorithms||{}});var Th=re((OD,Ih)=>{var ar=xe();rn();Ue();var Tx=Ih.exports=ar.hmac=ar.hmac||{};Tx.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 ar.md.algorithms)e=ar.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=ar.util.createBuffer(s);else if(ar.util.isArray(s)){var a=s;s=ar.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=ar.util.createBuffer(),n=ar.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 ys=re(()=>{});var kh=re((MD,_h)=>{var it=xe();Th();rn();Ue();var _x=it.pkcs5=it.pkcs5||{},cr;it.util.isNodejs&&!it.options.usePureJavaScript&&(cr=ys());_h.exports=it.pbkdf2=_x.pbkdf2=function(t,e,r,n,i,o){if(typeof i=="function"&&(o=i,i=null),it.util.isNodejs&&!it.options.usePureJavaScript&&cr.pbkdf2&&(i===null||typeof i!="object")&&(cr.pbkdf2Sync.length>4||!i||i==="sha1"))return typeof i!="string"&&(i="sha1"),t=Buffer.from(t,"binary"),e=Buffer.from(e,"binary"),o?cr.pbkdf2Sync.length===4?cr.pbkdf2(t,e,r,n,function(x,S){if(x)return o(x);o(null,S.toString("binary"))}):cr.pbkdf2(t,e,r,n,i,function(x,S){if(x)return o(x);o(null,S.toString("binary"))}):cr.pbkdf2Sync.length===4?cr.pbkdf2Sync(t,e,r,n).toString("binary"):cr.pbkdf2Sync(t,e,r,n,i).toString("binary");if((typeof i>"u"||i===null)&&(i="sha1"),typeof i=="string"){if(!(i in it.md.algorithms))throw new Error("Unknown hash algorithm: "+i);i=it.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=it.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(it.util.int32ToBytes(p)),h=d=f.digest().getBytes();for(var g=2;g<=r;++g)f.start(null,null),f.update(d),y=f.digest().getBytes(),h=it.util.xorBytes(h,y,s),d=y;l+=p<c?h:h.substr(0,u)}return l}var p=1,g;function m(){if(p>c)return o(null,l);f.start(null,null),f.update(e),f.update(it.util.int32ToBytes(p)),h=d=f.digest().getBytes(),g=2,b()}function b(){if(g<=r)return f.start(null,null),f.update(d),y=f.digest().getBytes(),h=it.util.xorBytes(h,y,s),d=y,++g,it.util.setImmediate(b);l+=p<c?h:h.substr(0,u),++p,m()}m()}});var Nh=re((VD,Lh)=>{var ms=xe();Ue();var Rh=Lh.exports=ms.pem=ms.pem||{};Rh.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+=gs(n)),t.contentDomain&&(n={name:"Content-Domain",values:[t.contentDomain]},r+=gs(n)),t.dekInfo&&(n={name:"DEK-Info",values:[t.dekInfo.algorithm]},t.dekInfo.parameters&&n.values.push(t.dekInfo.parameters),r+=gs(n)),t.headers)for(var i=0;i<t.headers.length;++i)r+=gs(t.headers[i]);return t.procType&&(r+=`\r
10
+ `),r+=ms.util.encode64(t.body,e.maxline||64)+`\r
11
11
  `,r+="-----END "+t.type+`-----\r
12
- `,r};Gh.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:Ss.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(jx(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 Es(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};Rh.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:ms.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(kx(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 gs(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 jx(t){return t.replace(/^\s+/,"")}});var Jh=re((QD,jh)=>{var zt=xe();an();Oe();var Xh=jh.exports=zt.sha256=zt.sha256||{};zt.md.sha256=zt.md.algorithms.sha256=Xh;Xh.create=function(){Zh||Jx();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),Yh(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(x0.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};Yh(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 x0=null,Zh=!1,Qh=null;function Jx(){x0=String.fromCharCode(128),x0+=zt.util.fillString(String.fromCharCode(0),64),Qh=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298],Zh=!0}function Yh(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+Qh[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 td=re((jD,ed)=>{var Gt=xe();Oe();var Cs=null;Gt.util.isNodejs&&!Gt.options.usePureJavaScript&&!process.versions["node-webkit"]&&(Cs=vs());var eb=ed.exports=Gt.prng=Gt.prng||{};eb.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=Gt.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 Gt.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)),Gt.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=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=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=Gt.util.globalScope,h=l.crypto||l.msCrypto;h&&h.getRandomValues&&(f=function(v){return h.getRandomValues(v)});var g=Gt.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,C=Math.floor(Math.random()*65536);g.length()<u;){b=16807*(C&65535),m=16807*(C>>16),b+=(m&32767)<<16,b+=m>>15,b=(b&2147483647)+(b>>31),C=b&4294967295;for(var y=0;y<3;++y)x=C>>>(y<<3),x^=Math.floor(Math.random()*256),g.putByte(x&255)}return g.getBytes(u)}return Cs?(e.seedFile=function(u,f){Cs.randomBytes(u,function(l,h){if(l)return f(l);f(null,h.toString())})},e.seedFileSync=function(u){return Cs.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 Mi=re((JD,b0)=>{var qe=xe();m0();Jh();td();Oe();(function(){if(qe.random&&qe.random.getBytes){b0.exports=qe.random;return}(function(t){var e={},r=new Array(4),n=qe.util.createBuffer();e.formatKey=function(l){var h=qe.util.createBuffer(l);return l=new Array(4),l[0]=h.getInt32(),l[1]=h.getInt32(),l[2]=h.getInt32(),l[3]=h.getInt32(),qe.aes._expandKey(l,!1)},e.formatSeed=function(l){var h=qe.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 qe.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=qe.md.sha256;function i(){var l=qe.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=qe.util.globalScope,c=a.crypto||a.msCrypto;if(c&&c.getRandomValues&&(s=function(l){return c.getRandomValues(l)}),qe.options.usePureJavaScript||!qe.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(!qe.random)qe.random=o;else for(var f in o)qe.random[f]=o[f];qe.random.createInstance=i,b0.exports=qe.random})(typeof jQuery<"u"?jQuery:null)})()});var od=re((eB,id)=>{var ut=xe();Oe();var w0=[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],rd=[1,2,3,5],tb=function(t,e){return t<<e&65535|(t&65535)>>16-e},rb=function(t,e){return(t&65535)>>e|t<<16-e&65535};id.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(w0[r.at(a-1)+r.at(a-n)&255]);for(r.setAt(128-o,w0[r.at(128-o)&s]),a=127-o;a>=0;a--)r.setAt(a,w0[r.at(a+1)^r.at(a+o)]);return r};var nd=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]=tb(d[u],rd[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]=rb(d[u],rd[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 nd(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 nd(t,e,!1)}});var Bs=re((tB,dd)=>{var v0=xe();dd.exports=v0.jsbn=v0.jsbn||{};var hr,nb=0xdeadbeefcafe,sd=(nb&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))}v0.jsbn.BigInteger=L;function fe(){return new L(null)}function ib(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 ob(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 ad(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=ad,hr=28):sd&&navigator.appName=="Microsoft Internet Explorer"?(L.prototype.am=ob,hr=30):sd&&navigator.appName!="Netscape"?(L.prototype.am=ib,hr=26):(L.prototype.am=ad,hr=28);L.prototype.DB=hr;L.prototype.DM=(1<<hr)-1;L.prototype.DV=1<<hr;var E0=52;L.prototype.FV=Math.pow(2,E0);L.prototype.F1=E0-hr;L.prototype.F2=2*hr-E0;var sb="0123456789abcdefghijklmnopqrstuvwxyz",As=new Array,Zn,wt;Zn="0".charCodeAt(0);for(wt=0;wt<=9;++wt)As[Zn++]=wt;Zn="a".charCodeAt(0);for(wt=10;wt<36;++wt)As[Zn++]=wt;Zn="A".charCodeAt(0);for(wt=10;wt<36;++wt)As[Zn++]=wt;function cd(t){return sb.charAt(t)}function ud(t,e){var r=As[t.charCodeAt(e)];return r??-1}function ab(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 cb(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 Nr(t){var e=fe();return e.fromInt(t),e}function ub(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:ud(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 fb(){for(var t=this.s&this.DM;this.t>0&&this.data[this.t-1]==t;)--this.t}function lb(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=cd(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+=cd(n));return i?o:"0"}function hb(){var t=fe();return L.ZERO.subTo(this,t),t}function db(){return this.s<0?this.negate():this}function pb(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 Ds(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 yb(){return this.t<=0?0:this.DB*(this.t-1)+Ds(this.data[this.t-1]^this.s&this.DM)}function gb(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 mb(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 xb(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 bb(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 wb(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 vb(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 Eb(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 Sb(t,e,r){var n=t.abs();if(!(n.t<=0)){var i=this.abs();if(i.t<n.t){e?.fromInt(0),r!=null&&this.copyTo(r);return}r==null&&(r=fe());var o=fe(),s=this.s,a=t.s,c=this.DB-Ds(n.data[n.t-1]);c>0?(n.lShiftTo(c,o),i.lShiftTo(c,r)):(n.copyTo(o),i.copyTo(r));var u=o.t,f=o.data[u-1];if(f!=0){var l=f*(1<<this.F1)+(u>1?o.data[u-2]>>this.F2:0),h=this.FV/l,g=(1<<this.F1)/l,d=1<<this.F2,p=r.t,y=p-u,m=e??fe();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 Cb(t){var e=fe();return this.abs().divRemTo(t,null,e),this.s<0&&e.compareTo(L.ZERO)>0&&t.subTo(e,e),e}function cn(t){this.m=t}function Ab(t){return t.s<0||t.compareTo(this.m)>=0?t.mod(this.m):t}function Db(t){return t}function Bb(t){t.divRemTo(this.m,null,t)}function Ib(t,e,r){t.multiplyTo(e,r),this.reduce(r)}function Tb(t,e){t.squareTo(e),this.reduce(e)}cn.prototype.convert=Ab;cn.prototype.revert=Db;cn.prototype.reduce=Bb;cn.prototype.mulTo=Ib;cn.prototype.sqrTo=Tb;function _b(){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 un(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 kb(t){var e=fe();return t.abs().dlShiftTo(this.m.t,e),e.divRemTo(this.m,null,e),t.s<0&&e.compareTo(L.ZERO)>0&&this.m.subTo(e,e),e}function Rb(t){var e=fe();return t.copyTo(e),this.reduce(e),e}function Lb(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 Nb(t,e){t.squareTo(e),this.reduce(e)}function Pb(t,e,r){t.multiplyTo(e,r),this.reduce(r)}un.prototype.convert=kb;un.prototype.revert=Rb;un.prototype.reduce=Lb;un.prototype.mulTo=Pb;un.prototype.sqrTo=Nb;function Ub(){return(this.t>0?this.data[0]&1:this.s)==0}function Ob(t,e){if(t>4294967295||t<1)return L.ONE;var r=fe(),n=fe(),i=e.convert(this),o=Ds(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 Fb(t,e){var r;return t<256||e.isEven()?r=new cn(e):r=new un(e),this.exp(t,r)}L.prototype.copyTo=ab;L.prototype.fromInt=cb;L.prototype.fromString=ub;L.prototype.clamp=fb;L.prototype.dlShiftTo=gb;L.prototype.drShiftTo=mb;L.prototype.lShiftTo=xb;L.prototype.rShiftTo=bb;L.prototype.subTo=wb;L.prototype.multiplyTo=vb;L.prototype.squareTo=Eb;L.prototype.divRemTo=Sb;L.prototype.invDigit=_b;L.prototype.isEven=Ub;L.prototype.exp=Ob;L.prototype.toString=lb;L.prototype.negate=hb;L.prototype.abs=db;L.prototype.compareTo=pb;L.prototype.bitLength=yb;L.prototype.mod=Cb;L.prototype.modPowInt=Fb;L.ZERO=Nr(0);L.ONE=Nr(1);function Kb(){var t=fe();return this.copyTo(t),t}function Mb(){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 Vb(){return this.t==0?this.s:this.data[0]<<24>>24}function Hb(){return this.t==0?this.s:this.data[0]<<16>>16}function qb(t){return Math.floor(Math.LN2*this.DB/Math.log(t))}function zb(){return this.s<0?-1:this.t<=0||this.t==1&&this.data[0]<=0?0:1}function Gb(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=Nr(r),i=fe(),o=fe(),s="";for(this.divRemTo(n,i,o);i.signum()>0;)s=(r+o.intValue()).toString(t).substr(1)+s,i.divRemTo(n,i,o);return o.intValue().toString(t)+s}function Wb(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=ud(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 $b(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),S0,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 Yb(){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 Xb(t){return this.compareTo(t)==0}function Zb(t){return this.compareTo(t)<0?this:t}function Qb(t){return this.compareTo(t)>0?this:t}function jb(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 Jb(t,e){return t&e}function ew(t){var e=fe();return this.bitwiseTo(t,Jb,e),e}function S0(t,e){return t|e}function tw(t){var e=fe();return this.bitwiseTo(t,S0,e),e}function fd(t,e){return t^e}function rw(t){var e=fe();return this.bitwiseTo(t,fd,e),e}function ld(t,e){return t&~e}function nw(t){var e=fe();return this.bitwiseTo(t,ld,e),e}function iw(){for(var t=fe(),e=0;e<this.t;++e)t.data[e]=this.DM&~this.data[e];return t.t=this.t,t.s=~this.s,t}function ow(t){var e=fe();return t<0?this.rShiftTo(-t,e):this.lShiftTo(t,e),e}function sw(t){var e=fe();return t<0?this.lShiftTo(-t,e):this.rShiftTo(t,e),e}function aw(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 cw(){for(var t=0;t<this.t;++t)if(this.data[t]!=0)return t*this.DB+aw(this.data[t]);return this.s<0?this.t*this.DB:-1}function uw(t){for(var e=0;t!=0;)t&=t-1,++e;return e}function fw(){for(var t=0,e=this.s&this.DM,r=0;r<this.t;++r)t+=uw(this.data[r]^e);return t}function lw(t){var e=Math.floor(t/this.DB);return e>=this.t?this.s!=0:(this.data[e]&1<<t%this.DB)!=0}function hw(t,e){var r=L.ONE.shiftLeft(t);return this.bitwiseTo(r,e,r),r}function dw(t){return this.changeBit(t,S0)}function pw(t){return this.changeBit(t,ld)}function yw(t){return this.changeBit(t,fd)}function gw(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 mw(t){var e=fe();return this.addTo(t,e),e}function xw(t){var e=fe();return this.subTo(t,e),e}function bw(t){var e=fe();return this.multiplyTo(t,e),e}function ww(t){var e=fe();return this.divRemTo(t,e,null),e}function vw(t){var e=fe();return this.divRemTo(t,null,e),e}function Ew(t){var e=fe(),r=fe();return this.divRemTo(t,e,r),new Array(e,r)}function Sw(t){this.data[this.t]=this.am(0,t-1,this,0,0,this.t),++this.t,this.clamp()}function Cw(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 Vi(){}function hd(t){return t}function Aw(t,e,r){t.multiplyTo(e,r)}function Dw(t,e){t.squareTo(e)}Vi.prototype.convert=hd;Vi.prototype.revert=hd;Vi.prototype.mulTo=Aw;Vi.prototype.sqrTo=Dw;function Bw(t){return this.exp(t,new Vi)}function Iw(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 Tw(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=fe(),this.q3=fe(),L.ONE.dlShiftTo(2*t.t,this.r2),this.mu=this.r2.divide(t),this.m=t}function _w(t){if(t.s<0||t.t>2*this.m.t)return t.mod(this.m);if(t.compareTo(this.m)<0)return t;var e=fe();return t.copyTo(e),this.reduce(e),e}function kw(t){return t}function Rw(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 Lw(t,e){t.squareTo(e),this.reduce(e)}function Nw(t,e,r){t.multiplyTo(e,r),this.reduce(r)}Qn.prototype.convert=_w;Qn.prototype.revert=kw;Qn.prototype.reduce=Rw;Qn.prototype.mulTo=Nw;Qn.prototype.sqrTo=Lw;function Pw(t,e){var r=t.bitLength(),n,i=Nr(1),o;if(r<=0)return i;r<18?n=1:r<48?n=3:r<144?n=4:r<768?n=5:n=6,r<8?o=new cn(e):e.isEven()?o=new Qn(e):o=new un(e);var s=new Array,a=3,c=n-1,u=(1<<n)-1;if(s[1]=o.convert(this),n>1){var f=fe();for(o.sqrTo(s[1],f);a<=u;)s[a]=fe(),o.mulTo(f,s[a-2],s[a]),a+=2}var l=t.t-1,h,g=!0,d=fe(),p;for(r=Ds(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 Uw(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 Ow(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 Fw(t){var e=t.isEven();if(this.isEven()&&e||t.signum()==0)return L.ZERO;for(var r=t.clone(),n=this.clone(),i=Nr(1),o=Nr(0),s=Nr(0),a=Nr(1);r.signum()!=0;){for(;r.isEven();)r.rShiftTo(1,r),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 Pt=[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)/Pt[Pt.length-1];function Mw(t){var e,r=this.abs();if(r.t==1&&r.data[0]<=Pt[Pt.length-1]){for(e=0;e<Pt.length;++e)if(r.data[0]==Pt[e])return!0;return!1}if(r.isEven())return!1;for(e=1;e<Pt.length;){for(var n=Pt[e],i=e+1;i<Pt.length&&n<Kw;)n*=Pt[i++];for(n=r.modInt(n);e<i;)if(n%Pt[e++]==0)return!1}return r.millerRabin(t)}function Vw(t){var e=this.subtract(L.ONE),r=e.getLowestSetBit();if(r<=0)return!1;for(var n=e.shiftRight(r),i=Hw(),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 Hw(){return{nextBytes:function(t){for(var e=0;e<t.length;++e)t[e]=Math.floor(Math.random()*256)}}}L.prototype.chunkSize=qb;L.prototype.toRadix=Gb;L.prototype.fromRadix=Wb;L.prototype.fromNumber=$b;L.prototype.bitwiseTo=jb;L.prototype.changeBit=hw;L.prototype.addTo=gw;L.prototype.dMultiply=Sw;L.prototype.dAddOffset=Cw;L.prototype.multiplyLowerTo=Iw;L.prototype.multiplyUpperTo=Tw;L.prototype.modInt=Ow;L.prototype.millerRabin=Vw;L.prototype.clone=Kb;L.prototype.intValue=Mb;L.prototype.byteValue=Vb;L.prototype.shortValue=Hb;L.prototype.signum=zb;L.prototype.toByteArray=Yb;L.prototype.equals=Xb;L.prototype.min=Zb;L.prototype.max=Qb;L.prototype.and=ew;L.prototype.or=tw;L.prototype.xor=rw;L.prototype.andNot=nw;L.prototype.not=iw;L.prototype.shiftLeft=ow;L.prototype.shiftRight=sw;L.prototype.getLowestSetBit=cw;L.prototype.bitCount=fw;L.prototype.testBit=lw;L.prototype.setBit=dw;L.prototype.clearBit=pw;L.prototype.flipBit=yw;L.prototype.add=mw;L.prototype.subtract=xw;L.prototype.multiply=bw;L.prototype.divide=ww;L.prototype.remainder=vw;L.prototype.divideAndRemainder=Ew;L.prototype.modPow=Pw;L.prototype.modInverse=Fw;L.prototype.pow=Bw;L.prototype.gcd=Uw;L.prototype.isProbablePrime=Mw});var xd=re((rB,md)=>{var Wt=xe();an();Oe();var yd=md.exports=Wt.sha1=Wt.sha1||{};Wt.md.sha1=Wt.md.algorithms.sha1=yd;yd.create=function(){gd||qw();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),pd(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(C0.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};pd(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 C0=null,gd=!1;function qw(){C0=String.fromCharCode(128),C0+=Wt.util.fillString(String.fromCharCode(0),64),gd=!0}function pd(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 vd=re((nB,wd)=>{var $t=xe();Oe();Mi();xd();var bd=wd.exports=$t.pkcs1=$t.pkcs1||{};bd.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,g=0;g<h;g++)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=Is(i,a-o.digestLength-1,s),y=$t.util.xorBytes(d,p,d.length),m=Is(y,o.digestLength,s),b=$t.util.xorBytes(i,m,i.length);return"\0"+b+y};bd.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=$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=Is(f,i.digestLength,o),h=$t.util.xorBytes(u,l,u.length),g=Is(h,s-i.digestLength-1,o),d=$t.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,C=i.digestLength;C<d.length;C++){var v=d.charCodeAt(C),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 Is(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 Ed=re((iB,A0)=>{var Pr=xe();Oe();Bs();Mi();(function(){if(Pr.prime){A0.exports=Pr.prime;return}var t=A0.exports=Pr.prime=Pr.prime||{},e=Pr.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||Pr.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);Pr.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 Pr.util.estimateCores(function(v,E){v&&(E=2),y=E-1,C()});C();function C(){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 _s=re((oB,Td)=>{var Y=xe();Ki();Bs();ps();vd();Ed();Mi();Oe();typeof ce>"u"&&(ce=Y.jsbn.BigInteger);var ce,D0=Y.util.isNodejs?vs():null,A=Y.asn1,vt=Y.util;Y.pki=Y.pki||{};Td.exports=Y.pki.rsa=Y.rsa=Y.rsa||{};var ee=Y.pki,zw=[6,4,2,4,2,4,6,2],Gw={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"}]},Ww={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"}]},$w={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"}]},Yw=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"}]}]},Xw={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"}]},Zw=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()},Bd=function(t,e,r){if(r)return t.modPow(e.e,e.n);if(!e.p||!e.q)return t.modPow(e.d,e.n);e.dP||(e.dP=e.d.mod(e.p.subtract(ce.ONE))),e.dQ||(e.dQ=e.d.mod(e.q.subtract(ce.ONE))),e.qInv||(e.qInv=e.q.modInverse(e.p));var n;do n=new ce(Y.util.bytesToHex(Y.random.getBytes(e.n.bitLength()/8)),16);while(n.compareTo(e.n)>=0||!n.gcd(e.n).equals(ce.ONE));t=t.multiply(n.modPow(e.e,e.n)).mod(e.n);for(var i=t.mod(e.p).modPow(e.dP,e.p),o=t.mod(e.q).modPow(e.dQ,e.q);i.compareTo(o)<0;)i=i.add(e.p);var s=i.subtract(o).multiply(e.qInv).mod(e.p).multiply(e.q).add(o);return s=s.multiply(n.modInverse(e.n)).mod(e.n),s};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=Id(t,e,r)):(i=Y.util.createBuffer(),i.putBytes(t));for(var s=new ce(i.toHex(),16),a=Bd(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 ce(Y.util.createBuffer(t).toHex(),16);if(s.compareTo(e.n)>=0)throw new Error("Encrypted message is invalid.");for(var a=Bd(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?Ts(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 ce(null),p:null,q:null,qBits:t>>1,pBits:t-(t>>1),pqState:0,num:null,keys:null},s.e.fromInt(s.eInt);else throw new Error("Invalid key generation algorithm: "+o);return s};ee.rsa.stepKeyPairGenerationState=function(t,e){"algorithm"in t||(t.algorithm="PRIMEINC");var r=new ce(null);r.fromInt(30);for(var n=0,i=function(l,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 ce(c,t.rng),t.num.testBit(u)||t.num.bitwiseTo(ce.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(jw(t.num.bitLength()))?++t.pqState:t.num.dAddOffset(zw[n++%8],0):t.pqState===2?t.pqState=t.num.subtract(ce.ONE).gcd(t.e).compareTo(ce.ONE)===0?3:0:t.pqState===3&&(t.pqState=0,t.p===null?t.p=t.num:t.q=t.num,t.p!==null&&t.q!==null&&++t.state,t.num=null)}else if(t.state===1)t.p.compareTo(t.q)<0&&(t.num=t.p,t.p=t.q,t.q=t.num),++t.state;else if(t.state===2)t.p1=t.p.subtract(ce.ONE),t.q1=t.q.subtract(ce.ONE),t.phi=t.p1.multiply(t.q1),++t.state;else if(t.state===3)t.phi.gcd(t.e).compareTo(ce.ONE)===0?++t.state:(t.p=null,t.q=null,t.state=0);else if(t.state===4)t.n=t.p.multiply(t.q),t.n.bitLength()===t.bits?++t.state:(t.q=null,t.state=0);else if(t.state===5){var 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(Sd("generateKeyPair"))return D0.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(Cd("generateKey")&&Cd("exportKey"))return vt.globalScope.crypto.subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:t,publicExponent:Dd(e),hash:{name:"SHA-256"}},!0,["sign","verify"]).then(function(a){return vt.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(Ad("generateKey")&&Ad("exportKey")){var i=vt.globalScope.msCrypto.subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:t,publicExponent:Dd(e),hash:{name:"SHA-256"}},!0,["sign","verify"]);i.oncomplete=function(a){var c=a.target.result,u=vt.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(Sd("generateKeyPairSync")){var o=D0.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;Qw(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 Id(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=Ts(u,r,!0);var f=A.fromDer(u,{parseAllBytes:s._parseAllDigestBytes}),l={},h=[];if(!A.validate(f,Xw,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=Ts(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:Ts};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:Zw},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,Gw,e,r)&&(t=A.fromDer(Y.util.createBuffer(e.privateKey))),e={},r=[],!A.validate(t,Ww,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 ce(i,16),new ce(o,16),new ce(s,16),new ce(a,16),new ce(c,16),new ce(u,16),new ce(f,16),new ce(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,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))])};ee.publicKeyFromAsn1=function(t){var e={},r=[];if(A.validate(t,Yw,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,$w,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 ce(o,16),new ce(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,Yt(t.n)),A.create(A.Class.UNIVERSAL,A.Type.INTEGER,!1,Yt(t.e))])};function Id(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 Ts(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 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){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(ce.ONE).gcd(t.e).compareTo(ce.ONE)!==0){t.p=null,i();return}if(t.q.subtract(ce.ONE).gcd(t.e).compareTo(ce.ONE)!==0){t.q=null,o(t.qBits,s);return}if(t.p1=t.p.subtract(ce.ONE),t.q1=t.q.subtract(ce.ONE),t.phi=t.p1.multiply(t.q1),t.phi.gcd(t.e).compareTo(ce.ONE)!==0){t.p=t.q=null,i();return}if(t.n=t.p.multiply(t.q),t.n.bitLength()!==t.bits){t.q=null,o(t.qBits,s);return}var 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 Yt(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 jw(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 Sd(t){return Y.util.isNodejs&&typeof D0[t]=="function"}function Cd(t){return typeof vt.globalScope<"u"&&typeof vt.globalScope.crypto=="object"&&typeof vt.globalScope.crypto.subtle=="object"&&typeof vt.globalScope.crypto.subtle[t]=="function"}function Ad(t){return typeof vt.globalScope<"u"&&typeof vt.globalScope.msCrypto=="object"&&typeof vt.globalScope.msCrypto.subtle=="object"&&typeof vt.globalScope.msCrypto.subtle[t]=="function"}function Dd(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 Pd=re((sB,Nd)=>{var z=xe();m0();Ki();Kh();an();ps();zh();$h();Mi();od();_s();Oe();typeof _d>"u"&&(_d=z.jsbn.BigInteger);var _d,T=z.asn1,ie=z.pki=z.pki||{};Nd.exports=ie.pbe=z.pbe=z.pbe||{};var fn=ie.oids,Jw={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"}]},ev={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"}]}]},tv={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=fn["aes128-CBC"],l=z.aes.createEncryptionCipher;break;case"aes192":s=24,u=16,f=fn["aes192-CBC"],l=z.aes.createEncryptionCipher;break;case"aes256":s=32,u=16,f=fn["aes256-CBC"],l=z.aes.createEncryptionCipher;break;case"des":s=8,u=8,f=fn.desCBC,l=z.des.createEncryptionCipher;break;default:var h=new Error("Cannot encrypt private key. Unknown encryption algorithm.");throw h.algorithm=r.algorithm,h}var g="hmacWith"+r.prfAlgorithm.toUpperCase(),d=Ld(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=rv(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(fn.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(fn.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(fn["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 C=T.create(T.Class.UNIVERSAL,T.Type.SEQUENCE,!0,[a,T.create(T.Class.UNIVERSAL,T.Type.OCTETSTRING,!1,c)]);return C};ie.decryptPrivateKeyInfo=function(t,e){var r=null,n={},i=[];if(!T.validate(t,Jw,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 C=Math.ceil(i/c),v=1;v<=C;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,ev,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=Rd(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,tv,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=Rd(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=[kd(n,t+e)],o=16,s=1;o<r;++s,o+=16)i.push(kd(n,i[s-1]+t+e));return i.join("").substr(0,r)};function kd(t,e){return t.start().update(e).digest().getBytes()}function Rd(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 Ld(e)}function Ld(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 rv(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 Xd=re((XB,Yd)=>{var Ae=xe();an();Oe();var qi=Yd.exports=Ae.sha512=Ae.sha512||{};Ae.md.sha512=Ae.md.algorithms.sha512=qi;var Wd=Ae.sha384=Ae.sha512.sha384=Ae.sha512.sha384||{};Wd.create=function(){return qi.create("SHA-384")};Ae.md.sha384=Ae.md.algorithms.sha384=Wd;Ae.sha512.sha256=Ae.sha512.sha256||{create:function(){return qi.create("SHA-512/256")}};Ae.md["sha512/256"]=Ae.md.algorithms["sha512/256"]=Ae.sha512.sha256;Ae.sha512.sha224=Ae.sha512.sha224||{create:function(){return qi.create("SHA-512/224")}};Ae.md["sha512/224"]=Ae.md.algorithms["sha512/224"]=Ae.sha512.sha224;qi.create=function(t){if($d||fv(),typeof t>"u"&&(t="SHA-512"),!(t in hn))throw new Error("Invalid SHA-512 algorithm: "+t);for(var e=hn[t],r=null,n=Ae.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=Ae.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=Ae.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),Gd(r,i,n),(n.read>2048||n.length()===0)&&n.compact(),a},a.digest=function(){var c=Ae.util.createBuffer();c.putBytes(n.bytes());var u=a.fullMessageLength[a.fullMessageLength.length-1]+a.messageLengthSize,f=u&a.blockLength-1;c.putBytes(k0.substr(0,a.blockLength-f));for(var l,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);Gd(p,i,c);var y=Ae.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 k0=null,$d=!1,R0=null,hn=null;function fv(){k0=String.fromCharCode(128),k0+=Ae.util.fillString(String.fromCharCode(0),128),R0=[[1116352408,3609767458],[1899447441,602891725],[3049323471,3964484399],[3921009573,2173295548],[961987163,4081628472],[1508970993,3053834265],[2453635748,2937671579],[2870763221,3664609560],[3624381080,2734883394],[310598401,1164996542],[607225278,1323610764],[1426881987,3590304994],[1925078388,4068182383],[2162078206,991336113],[2614888103,633803317],[3248222580,3479774868],[3835390401,2666613458],[4022224774,944711139],[264347078,2341262773],[604807628,2007800933],[770255983,1495990901],[1249150122,1856431235],[1555081692,3175218132],[1996064986,2198950837],[2554220882,3999719339],[2821834349,766784016],[2952996808,2566594879],[3210313671,3203337956],[3336571891,1034457026],[3584528711,2466948901],[113926993,3758326383],[338241895,168717936],[666307205,1188179964],[773529912,1546045734],[1294757372,1522805485],[1396182291,2643833823],[1695183700,2343527390],[1986661051,1014477480],[2177026350,1206759142],[2456956037,344077627],[2730485921,1290863460],[2820302411,3158454273],[3259730800,3505952657],[3345764771,106217008],[3516065817,3606008344],[3600352804,1432725776],[4094571909,1467031594],[275423344,851169720],[430227734,3100823752],[506948616,1363258195],[659060556,3750685593],[883997877,3785050280],[958139571,3318307427],[1322822218,3812723403],[1537002063,2003034995],[1747873779,3602036899],[1955562222,1575990012],[2024104815,1125592928],[2227730452,2716904306],[2361852424,442776044],[2428436474,593698344],[2756734187,3733110249],[3204031479,2999351573],[3329325298,3815920427],[3391569614,3928383900],[3515267271,566280711],[3940187606,3454069534],[4118630271,4000239992],[116418474,1914138554],[174292421,2731055270],[289380356,3203993006],[460393269,320620315],[685471733,587496836],[852142971,1086792851],[1017036298,365543100],[1126000580,2618297676],[1288033470,3409855158],[1501505948,4234509866],[1607167915,987167468],[1816402316,1246189591]],hn={},hn["SHA-512"]=[[1779033703,4089235720],[3144134277,2227873595],[1013904242,4271175723],[2773480762,1595750129],[1359893119,2917565137],[2600822924,725511199],[528734635,4215389547],[1541459225,327033209]],hn["SHA-384"]=[[3418070365,3238371032],[1654270250,914150663],[2438529370,812702999],[355462360,4144912697],[1731405415,4290775857],[2394180231,1750603025],[3675008525,1694076839],[1203062813,3204075428]],hn["SHA-512/256"]=[[573645204,4230739756],[2673172387,3360449730],[596883563,1867755857],[2520282905,1497426621],[2519219938,2827943907],[3193839141,1401305490],[721525244,746961066],[246885852,2177182882]],hn["SHA-512/224"]=[[2352822216,424955298],[1944164710,2312950998],[502970286,855612546],[1738396948,1479516111],[258812777,2077511080],[2011393907,79989058],[1067287976,1780299464],[286451373,2446758561]],$d=!0}function Gd(t,e,r){for(var n,i,o,s,a,c,u,f,l,h,g,d,p,y,m,b,x,C,v,E,B,D,U,F,O,M,G,Q,I,R,_,k,S,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,S=e[I-7],K=e[I-16],_=i+S[1]+s+K[1],e[I][0]=n+S[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],C=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|C&(y^b))>>>0,_=Q+f+h+R0[I][1]+e[I][1],n=G+u+l+R0[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=C,x=m,C=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]+C,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 Tp=re((i_,Ip)=>{"use strict";function Ov(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 C=g[y],v=0,E=b-1;(C!==0||v<p)&&E!==-1;E--,v++)C+=256*x[E]>>>0,x[E]=C%s>>>0,C=C/s>>>0;if(C!==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 C=0,v=m-1;(x!==0||C<y)&&v!==-1;v--,C++)x+=s*b[v]>>>0,b[v]=x%256>>>0,x=x/256>>>0;if(x!==0)throw new Error("Non-zero carry");y=C,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}}Ip.exports=Ov});var Vs=re((o_,_p)=>{"use strict";var Fv=new TextDecoder,Kv=t=>Fv.decode(t),Mv=new TextEncoder,Vv=t=>Mv.encode(t);function Hv(t,e){let r=new Uint8Array(e),n=0;for(let i of t)r.set(i,n),n+=i.length;return r}_p.exports={decodeText:Kv,encodeText:Vv,concat:Hv}});var Rp=re((s_,kp)=>{"use strict";var{encodeText:qv}=Vs(),G0=class{constructor(e,r,n,i){this.name=e,this.code=r,this.codeBuf=qv(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)}};kp.exports=G0});var Np=re((a_,Lp)=>{"use strict";var zv=(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},Gv=(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},Wv=t=>e=>({encode(r){return Gv(r,e,t)},decode(r){return zv(r,e,t)}});Lp.exports={rfc4648:Wv}});var Fp=re((c_,Op)=>{"use strict";var Qi=Tp(),$v=Rp(),{rfc4648:Je}=Np(),{decodeText:Yv,encodeText:Xv}=Vs(),Zv=()=>({encode:Yv,decode:Xv}),Pp=[["identity","\0",Zv,""],["base2","0",Je(1),"01"],["base8","7",Je(3),"01234567"],["base10","9",Qi,"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",Qi,"0123456789abcdefghijklmnopqrstuvwxyz"],["base36upper","K",Qi,"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"],["base58btc","z",Qi,"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"],["base58flickr","Z",Qi,"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"],["base64","m",Je(6),"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"],["base64pad","M",Je(6),"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="],["base64url","u",Je(6),"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_"],["base64urlpad","U",Je(6),"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_="]],Up=Pp.reduce((t,e)=>(t[e[0]]=new $v(e[0],e[1],e[2],e[3]),t),{}),Qv=Pp.reduce((t,e)=>(t[e[1]]=Up[e[0]],t),{});Op.exports={names:Up,codes:Qv}});var Vp=re((mr,Mp)=>{"use strict";var ri=Fp(),{encodeText:jv,decodeText:Hs,concat:Kp}=Vs();function Jv(t,e){if(!e)throw new Error("requires an encoded Uint8Array");let{name:r,codeBuf:n}=gn(t);return n8(r,e),Kp([n,e],n.length+e.length)}function e8(t,e){let r=gn(t),n=jv(r.encode(e));return Kp([r.codeBuf,n],r.codeBuf.length+n.length)}function t8(t){t instanceof Uint8Array&&(t=Hs(t));let e=t[0];return["f","F","v","V","t","T","b","B","c","C","h","k","K"].includes(e)&&(t=t.toLowerCase()),gn(t[0]).decode(t.substring(1))}function r8(t){if(t instanceof Uint8Array&&(t=Hs(t)),Object.prototype.toString.call(t)!=="[object String]")return!1;try{return gn(t[0]).name}catch{return!1}}function n8(t,e){gn(t).decode(Hs(e))}function gn(t){if(Object.prototype.hasOwnProperty.call(ri.names,t))return ri.names[t];if(Object.prototype.hasOwnProperty.call(ri.codes,t))return ri.codes[t];throw new Error(`Unsupported encoding: ${t}`)}function i8(t){return t instanceof Uint8Array&&(t=Hs(t)),gn(t[0])}mr=Mp.exports=Jv;mr.encode=e8;mr.decode=t8;mr.isEncoded=r8;mr.encoding=gn;mr.encodingFromData=i8;var o8=Object.freeze(ri.names),s8=Object.freeze(ri.codes);mr.names=o8;mr.codes=s8});var Gp=re((u_,zp)=>{zp.exports=qp;var Hp=128,a8=127,c8=~a8,u8=Math.pow(2,31);function qp(t,e,r){e=e||[],r=r||0;for(var n=r;t>=u8;)e[r++]=t&255|Hp,t/=128;for(;t&c8;)e[r++]=t&255|Hp,t>>>=7;return e[r]=t|0,qp.bytes=r-n+1,e}});var Yp=re((f_,$p)=>{$p.exports=W0;var f8=128,Wp=127;function W0(t,n){var r=0,n=n||0,i=0,o=n,s,a=t.length;do{if(o>=a)throw W0.bytes=0,new RangeError("Could not decode varint");s=t[o++],r+=i<28?(s&Wp)<<i:(s&Wp)*Math.pow(2,i),i+=7}while(s>=f8);return W0.bytes=o-n,r}});var Zp=re((l_,Xp)=>{var l8=Math.pow(2,7),h8=Math.pow(2,14),d8=Math.pow(2,21),p8=Math.pow(2,28),y8=Math.pow(2,35),g8=Math.pow(2,42),m8=Math.pow(2,49),x8=Math.pow(2,56),b8=Math.pow(2,63);Xp.exports=function(t){return t<l8?1:t<h8?2:t<d8?3:t<p8?4:t<y8?5:t<g8?6:t<m8?7:t<x8?8:t<b8?9:10}});var jp=re((h_,Qp)=>{Qp.exports={encode:Gp(),decode:Yp(),encodingLength:Zp()}});var e1=re((d_,Jp)=>{"use strict";var w8=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});Jp.exports={names:w8}});function v8(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,C=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*C[B]>>>0,C[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&&C[D]===0;)D++;for(var U=c.repeat(p);D<x;++D)U+=t.charAt(C[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 C=r[d.charCodeAt(p)];if(C===255)return;for(var v=0,E=b-1;(C!==0||v<m)&&E!==-1;E--,v++)C+=a*x[E]>>>0,x[E]=C%256>>>0,C=C/256>>>0;if(C!==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 E8,S8,t1,r1=he(()=>{E8=v8,S8=E8,t1=S8});var y_,n1,xr,i1,o1,Ur=he(()=>{y_=new Uint8Array(0),n1=(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},xr=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")},i1=t=>new TextEncoder().encode(t),o1=t=>new TextDecoder().decode(t)});var $0,Y0,X0,a1,Z0,ni,Or,C8,A8,Re,Ot=he(()=>{r1();Ur();$0=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")}},Y0=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 a1(this,e)}},X0=class{constructor(e){this.decoders=e}or(e){return a1(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`)}},a1=(t,e)=>new X0({...t.decoders||{[t.prefix]:t},...e.decoders||{[e.prefix]:e}}),Z0=class{constructor(e,r,n,i){this.name=e,this.prefix=r,this.baseEncode=n,this.baseDecode=i,this.encoder=new $0(e,r,n),this.decoder=new Y0(e,r,i)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}},ni=({name:t,prefix:e,encode:r,decode:n})=>new Z0(t,e,r,n),Or=({prefix:t,name:e,alphabet:r})=>{let{encode:n,decode:i}=t1(r,e);return ni({prefix:t,name:e,encode:n,decode:o=>xr(i(o))})},C8=(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},A8=(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})=>ni({prefix:e,name:t,encode(i){return A8(i,n,r)},decode(i){return C8(i,n,r,t)}})});var Q0={};ue(Q0,{identity:()=>D8});var D8,c1=he(()=>{Ot();Ur();D8=ni({prefix:"\0",name:"identity",encode:t=>o1(t),decode:t=>i1(t)})});var j0={};ue(j0,{base2:()=>B8});var B8,u1=he(()=>{Ot();B8=Re({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1})});var J0={};ue(J0,{base8:()=>I8});var I8,f1=he(()=>{Ot();I8=Re({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3})});var eu={};ue(eu,{base10:()=>T8});var T8,l1=he(()=>{Ot();T8=Or({prefix:"9",name:"base10",alphabet:"0123456789"})});var tu={};ue(tu,{base16:()=>_8,base16upper:()=>k8});var _8,k8,h1=he(()=>{Ot();_8=Re({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),k8=Re({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4})});var ru={};ue(ru,{base32:()=>ii,base32hex:()=>P8,base32hexpad:()=>O8,base32hexpadupper:()=>F8,base32hexupper:()=>U8,base32pad:()=>L8,base32padupper:()=>N8,base32upper:()=>R8,base32z:()=>K8});var ii,R8,L8,N8,P8,U8,O8,F8,K8,nu=he(()=>{Ot();ii=Re({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),R8=Re({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),L8=Re({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),N8=Re({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),P8=Re({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),U8=Re({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),O8=Re({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),F8=Re({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),K8=Re({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5})});var iu={};ue(iu,{base36:()=>M8,base36upper:()=>V8});var M8,V8,d1=he(()=>{Ot();M8=Or({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),V8=Or({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"})});var ou={};ue(ou,{base58btc:()=>Qt,base58flickr:()=>H8});var Qt,H8,su=he(()=>{Ot();Qt=Or({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),H8=Or({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"})});var au={};ue(au,{base64:()=>q8,base64pad:()=>z8,base64url:()=>G8,base64urlpad:()=>W8});var q8,z8,G8,W8,p1=he(()=>{Ot();q8=Re({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),z8=Re({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),G8=Re({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),W8=Re({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6})});var cu={};ue(cu,{base256emoji:()=>Q8});function X8(t){return t.reduce((e,r)=>(e+=$8[r],e),"")}function Z8(t){let e=[];for(let r of t){let n=Y8[r.codePointAt(0)];if(n===void 0)throw new Error(`Non-base256emoji character: ${r}`);e.push(n)}return new Uint8Array(e)}var y1,$8,Y8,Q8,g1=he(()=>{Ot();y1=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}"),$8=y1.reduce((t,e,r)=>(t[r]=e,t),[]),Y8=y1.reduce((t,e,r)=>(t[e.codePointAt(0)]=r,t),[]);Q8=ni({prefix:"\u{1F680}",name:"base256emoji",encode:X8,decode:Z8})});function b1(t,e,r){e=e||[],r=r||0;for(var n=r;t>=t3;)e[r++]=t&255|m1,t/=128;for(;t&e3;)e[r++]=t&255|m1,t>>>=7;return e[r]=t|0,b1.bytes=r-n+1,e}function uu(t,n){var r=0,n=n||0,i=0,o=n,s,a=t.length;do{if(o>=a)throw uu.bytes=0,new RangeError("Could not decode varint");s=t[o++],r+=i<28?(s&x1)<<i:(s&x1)*Math.pow(2,i),i+=7}while(s>=n3);return uu.bytes=o-n,r}var j8,m1,J8,e3,t3,r3,n3,x1,i3,o3,s3,a3,c3,u3,f3,l3,h3,d3,p3,y3,ji,w1=he(()=>{j8=b1,m1=128,J8=127,e3=~J8,t3=Math.pow(2,31);r3=uu,n3=128,x1=127;i3=Math.pow(2,7),o3=Math.pow(2,14),s3=Math.pow(2,21),a3=Math.pow(2,28),c3=Math.pow(2,35),u3=Math.pow(2,42),f3=Math.pow(2,49),l3=Math.pow(2,56),h3=Math.pow(2,63),d3=function(t){return t<i3?1:t<o3?2:t<s3?3:t<a3?4:t<c3?5:t<u3?6:t<f3?7:t<l3?8:t<h3?9:10},p3={encode:j8,decode:r3,encodingLength:d3},y3=p3,ji=y3});var Ji,oi,si,zs=he(()=>{w1();Ji=(t,e=0)=>[ji.decode(t,e),ji.decode.bytes],oi=(t,e,r=0)=>(ji.encode(t,e,r),e),si=t=>ji.encodingLength(t)});var mn,v1,E1,ai,to=he(()=>{Ur();zs();mn=(t,e)=>{let r=e.byteLength,n=si(t),i=n+si(r),o=new Uint8Array(i+r);return oi(t,o,0),oi(r,o,n),o.set(e,i),new ai(t,r,e,o)},v1=t=>{let e=xr(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 ai(r,i,s,e)},E1=(t,e)=>t===e?!0:t.code===e.code&&t.size===e.size&&n1(t.bytes,e.bytes),ai=class{constructor(e,r,n,i){this.code=e,this.size=r,this.digest=n,this.bytes=i}}});var lu,fu,hu=he(()=>{to();lu=({name:t,code:e,encode:r})=>new fu(t,e,r),fu=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 du={};ue(du,{sha256:()=>g3,sha512:()=>m3});var C1,g3,m3,A1=he(()=>{hu();C1=t=>async e=>new Uint8Array(await crypto.subtle.digest(t,e)),g3=lu({name:"sha2-256",code:18,encode:C1("SHA-256")}),m3=lu({name:"sha2-512",code:19,encode:C1("SHA-512")})});var pu={};ue(pu,{identity:()=>w3});var D1,x3,B1,b3,w3,I1=he(()=>{Ur();to();D1=0,x3="identity",B1=xr,b3=t=>mn(D1,B1(t)),w3={code:D1,name:x3,encode:B1,digest:b3}});var T1=he(()=>{Ur()});var U_,O_,_1=he(()=>{U_=new TextEncoder,O_=new TextDecoder});var $s,S3,C3,A3,ro,D3,k1,R1,Gs,Ws,B3,I3,T3,L1=he(()=>{zs();to();su();nu();Ur();$s=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:Ws,byteLength:Ws,code:Gs,version:Gs,multihash:Gs,bytes:Gs,_baseCache:Ws,asCID:Ws})}toV0(){switch(this.version){case 0:return this;default:{let{code:e,multihash:r}=this;if(e!==ro)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(r.code!==D3)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&&E1(this.multihash,e.multihash)}toString(e){let{bytes:r,version:n,_baseCache:i}=this;switch(n){case 0:return C3(r,i,e||Qt.encoder);default:return A3(r,i,e||ii.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 I3(/^0\.0/,T3),!!(e&&(e[R1]||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||k1(r,n,i.bytes))}else if(e!=null&&e[R1]===!0){let{version:r,multihash:n,code:i}=e,o=v1(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!==ro)throw new Error(`Version 0 CID must use dag-pb (code: ${ro}) block encoding`);return new t(e,r,n,n.bytes)}case 1:{let i=k1(e,r,n.bytes);return new t(e,r,n,i)}default:throw new Error("Invalid version")}}static createV0(e){return t.create(0,ro,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=xr(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 ai(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=ro;if(i===18?(i=0,r=0):i===1&&(o=n()),i!==0&&i!==1)throw new RangeError(`Invalid CID version ${i}`);let s=r,a=n(),c=n(),u=r+c,f=u-s;return{version:i,codec:o,multihashCode:a,digestSize:c,multihashSize:f,size:u}}static parse(e,r){let[n,i]=S3(e,r),o=t.decode(i);return o._baseCache.set(n,e),o}},S3=(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 ii.prefix:{let r=e||ii;return[ii.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)]}}},C3=(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},A3=(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},ro=112,D3=18,k1=(t,e,r)=>{let n=si(t),i=n+si(e),o=new Uint8Array(i+r.byteLength);return oi(t,o,0),oi(e,o,n),o.set(r,i),o},R1=Symbol.for("@ipld/js-cid/CID"),Gs={writable:!1,configurable:!1,enumerable:!0},Ws={writable:!1,enumerable:!1,configurable:!1},B3="0.0.0-dev",I3=(t,e)=>{if(t.test(B3))console.warn(e);else throw new Error(e)},T3=`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 kx(t){return t.replace(/^\s+/,"")}});var Mh=re((HD,Kh)=>{var Vt=xe();rn();Ue();var Uh=Kh.exports=Vt.sha256=Vt.sha256||{};Vt.md.sha256=Vt.md.algorithms.sha256=Uh;Uh.create=function(){Oh||Rx();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),Ph(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};Ph(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,Oh=!1,Fh=null;function Rx(){f0=String.fromCharCode(128),f0+=Vt.util.fillString(String.fromCharCode(0),64),Fh=[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],Oh=!0}function Ph(t,e,r){for(var n,i,o,s,a,c,u,f,l,h,y,d,p,g,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,y=t.h3,d=t.h4,p=t.h5,g=t.h6,m=t.h7,u=0;u<64;++u)s=(d>>>6|d<<26)^(d>>>11|d<<21)^(d>>>25|d<<7),a=g^d&(p^g),o=(f>>>2|f<<30)^(f>>>13|f<<19)^(f>>>22|f<<10),c=f&l|h&(f^l),n=m+s+a+Fh[u]+e[u],i=o+c,m=g,g=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+g|0,t.h7=t.h7+m|0,b-=64}}});var Hh=re((qD,Vh)=>{var Ht=xe();Ue();var xs=null;Ht.util.isNodejs&&!Ht.options.usePureJavaScript&&!process.versions["node-webkit"]&&(xs=ys());var Lx=Vh.exports=Ht.prng=Ht.prng||{};Lx.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=Ht.util.createBuffer();e.key=null,g();function g(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(g)});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)),Ht.util.setImmediate(g)}},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=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=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=Ht.util.globalScope,h=l.crypto||l.msCrypto;h&&h.getRandomValues&&(f=function(v){return h.getRandomValues(v)});var y=Ht.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 g=0;g<p.length;++g)y.putInt32(p[g])}catch(v){if(!(typeof QuotaExceededError<"u"&&v instanceof QuotaExceededError))throw v}}if(y.length()<u)for(var m,b,x,S=Math.floor(Math.random()*65536);y.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 g=0;g<3;++g)x=S>>>(g<<3),x^=Math.floor(Math.random()*256),y.putByte(x&255)}return y.getBytes(u)}return xs?(e.seedFile=function(u,f){xs.randomBytes(u,function(l,h){if(l)return f(l);f(null,h.toString())})},e.seedFileSync=function(u){return xs.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 Ui=re((zD,l0)=>{var qe=xe();u0();Mh();Hh();Ue();(function(){if(qe.random&&qe.random.getBytes){l0.exports=qe.random;return}(function(t){var e={},r=new Array(4),n=qe.util.createBuffer();e.formatKey=function(l){var h=qe.util.createBuffer(l);return l=new Array(4),l[0]=h.getInt32(),l[1]=h.getInt32(),l[2]=h.getInt32(),l[3]=h.getInt32(),qe.aes._expandKey(l,!1)},e.formatSeed=function(l){var h=qe.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 qe.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=qe.md.sha256;function i(){var l=qe.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=qe.util.globalScope,c=a.crypto||a.msCrypto;if(c&&c.getRandomValues&&(s=function(l){return c.getRandomValues(l)}),qe.options.usePureJavaScript||!qe.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(!qe.random)qe.random=o;else for(var f in o)qe.random[f]=o[f];qe.random.createInstance=i,l0.exports=qe.random})(typeof jQuery<"u"?jQuery:null)})()});var Wh=re((GD,Gh)=>{var ct=xe();Ue();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],qh=[1,2,3,5],Nx=function(t,e){return t<<e&65535|(t&65535)>>16-e},Px=function(t,e){return(t&65535)>>e|t<<16-e&65535};Gh.exports=ct.rc2=ct.rc2||{};ct.rc2.expandKey=function(t,e){typeof t=="string"&&(t=ct.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 zh=function(t,e,r){var n=!1,i=null,o=null,s=null,a,c,u,f,l=[];for(t=ct.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]=Nx(d[u],qh[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]=Px(d[u],qh[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 g=i.getInt16Le();s!==null&&(r?g^=s.getInt16Le():s.putInt16Le(g)),p.push(g&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])},y=null;return y={start:function(d,p){d&&typeof d=="string"&&(d=ct.util.createBuffer(d)),n=!1,i=ct.util.createBuffer(),o=p||new ct.util.createBuffer,s=d,y.output=o},update:function(d){for(n||i.putBuffer(d);i.length()>=8;)h([[5,a],[1,c],[6,a],[1,c],[5,a]])},finish:function(d){var p=!0;if(r)if(d)p=d(8,i,!r);else{var g=i.length()===8?8:8-i.length();i.fillWithByte(g,g)}if(p&&(n=!0,y.update()),!r&&(p=i.length()===0,p))if(d)p=d(8,o,!r);else{var m=o.length(),b=o.at(m-1);b>m?p=!1:o.truncate(b)}return p}},y};ct.rc2.startEncrypting=function(t,e,r){var n=ct.rc2.createEncryptionCipher(t,128);return n.start(e,r),n};ct.rc2.createEncryptionCipher=function(t,e){return zh(t,e,!0)};ct.rc2.startDecrypting=function(t,e,r){var n=ct.rc2.createDecryptionCipher(t,128);return n.start(e,r),n};ct.rc2.createDecryptionCipher=function(t,e){return zh(t,e,!1)}});var vs=re((WD,ed)=>{var d0=xe();ed.exports=d0.jsbn=d0.jsbn||{};var ur,Ux=0xdeadbeefcafe,$h=(Ux&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 fe(){return new L(null)}function Ox(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 Fx(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 Yh(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=Yh,ur=28):$h&&navigator.appName=="Microsoft Internet Explorer"?(L.prototype.am=Fx,ur=30):$h&&navigator.appName!="Netscape"?(L.prototype.am=Ox,ur=26):(L.prototype.am=Yh,ur=28);L.prototype.DB=ur;L.prototype.DM=(1<<ur)-1;L.prototype.DV=1<<ur;var p0=52;L.prototype.FV=Math.pow(2,p0);L.prototype.F1=p0-ur;L.prototype.F2=2*ur-p0;var Kx="0123456789abcdefghijklmnopqrstuvwxyz",bs=new Array,qn,mt;qn="0".charCodeAt(0);for(mt=0;mt<=9;++mt)bs[qn++]=mt;qn="a".charCodeAt(0);for(mt=10;mt<36;++mt)bs[qn++]=mt;qn="A".charCodeAt(0);for(mt=10;mt<36;++mt)bs[qn++]=mt;function Xh(t){return Kx.charAt(t)}function Zh(t,e){var r=bs[t.charCodeAt(e)];return r??-1}function Mx(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 Vx(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=fe();return e.fromInt(t),e}function Hx(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:Zh(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 qx(){for(var t=this.s&this.DM;this.t>0&&this.data[this.t-1]==t;)--this.t}function zx(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=Xh(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+=Xh(n));return i?o:"0"}function Gx(){var t=fe();return L.ZERO.subTo(this,t),t}function Wx(){return this.s<0?this.negate():this}function $x(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 ws(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 Yx(){return this.t<=0?0:this.DB*(this.t-1)+ws(this.data[this.t-1]^this.s&this.DM)}function Xx(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 Zx(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 Qx(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 jx(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 Jx(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 eb(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 tb(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 rb(t,e,r){var n=t.abs();if(!(n.t<=0)){var i=this.abs();if(i.t<n.t){e?.fromInt(0),r!=null&&this.copyTo(r);return}r==null&&(r=fe());var o=fe(),s=this.s,a=t.s,c=this.DB-ws(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,g=p-u,m=e??fe();for(o.dlShiftTo(g,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(;--g>=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,g,0,u))<b)for(o.dlShiftTo(g,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 nb(t){var e=fe();return this.abs().divRemTo(t,null,e),this.s<0&&e.compareTo(L.ZERO)>0&&t.subTo(e,e),e}function nn(t){this.m=t}function ib(t){return t.s<0||t.compareTo(this.m)>=0?t.mod(this.m):t}function ob(t){return t}function sb(t){t.divRemTo(this.m,null,t)}function ab(t,e,r){t.multiplyTo(e,r),this.reduce(r)}function cb(t,e){t.squareTo(e),this.reduce(e)}nn.prototype.convert=ib;nn.prototype.revert=ob;nn.prototype.reduce=sb;nn.prototype.mulTo=ab;nn.prototype.sqrTo=cb;function ub(){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 fb(t){var e=fe();return t.abs().dlShiftTo(this.m.t,e),e.divRemTo(this.m,null,e),t.s<0&&e.compareTo(L.ZERO)>0&&this.m.subTo(e,e),e}function lb(t){var e=fe();return t.copyTo(e),this.reduce(e),e}function hb(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 pb(t,e,r){t.multiplyTo(e,r),this.reduce(r)}on.prototype.convert=fb;on.prototype.revert=lb;on.prototype.reduce=hb;on.prototype.mulTo=pb;on.prototype.sqrTo=db;function yb(){return(this.t>0?this.data[0]&1:this.s)==0}function gb(t,e){if(t>4294967295||t<1)return L.ONE;var r=fe(),n=fe(),i=e.convert(this),o=ws(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 mb(t,e){var r;return t<256||e.isEven()?r=new nn(e):r=new on(e),this.exp(t,r)}L.prototype.copyTo=Mx;L.prototype.fromInt=Vx;L.prototype.fromString=Hx;L.prototype.clamp=qx;L.prototype.dlShiftTo=Xx;L.prototype.drShiftTo=Zx;L.prototype.lShiftTo=Qx;L.prototype.rShiftTo=jx;L.prototype.subTo=Jx;L.prototype.multiplyTo=eb;L.prototype.squareTo=tb;L.prototype.divRemTo=rb;L.prototype.invDigit=ub;L.prototype.isEven=yb;L.prototype.exp=gb;L.prototype.toString=zx;L.prototype.negate=Gx;L.prototype.abs=Wx;L.prototype.compareTo=$x;L.prototype.bitLength=Yx;L.prototype.mod=nb;L.prototype.modPowInt=mb;L.ZERO=Rr(0);L.ONE=Rr(1);function xb(){var t=fe();return this.copyTo(t),t}function bb(){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 wb(){return this.t==0?this.s:this.data[0]<<24>>24}function vb(){return this.t==0?this.s:this.data[0]<<16>>16}function Eb(t){return Math.floor(Math.LN2*this.DB/Math.log(t))}function Sb(){return this.s<0?-1:this.t<=0||this.t==1&&this.data[0]<=0?0:1}function Ab(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=fe(),o=fe(),s="";for(this.divRemTo(n,i,o);i.signum()>0;)s=(r+o.intValue()).toString(t).substr(1)+s,i.divRemTo(n,i,o);return o.intValue().toString(t)+s}function Cb(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=Zh(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 Db(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 Bb(){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 Ib(t){return this.compareTo(t)==0}function Tb(t){return this.compareTo(t)<0?this:t}function _b(t){return this.compareTo(t)>0?this:t}function kb(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 Rb(t,e){return t&e}function Lb(t){var e=fe();return this.bitwiseTo(t,Rb,e),e}function y0(t,e){return t|e}function Nb(t){var e=fe();return this.bitwiseTo(t,y0,e),e}function Qh(t,e){return t^e}function Pb(t){var e=fe();return this.bitwiseTo(t,Qh,e),e}function jh(t,e){return t&~e}function Ub(t){var e=fe();return this.bitwiseTo(t,jh,e),e}function Ob(){for(var t=fe(),e=0;e<this.t;++e)t.data[e]=this.DM&~this.data[e];return t.t=this.t,t.s=~this.s,t}function Fb(t){var e=fe();return t<0?this.rShiftTo(-t,e):this.lShiftTo(t,e),e}function Kb(t){var e=fe();return t<0?this.lShiftTo(-t,e):this.rShiftTo(t,e),e}function Mb(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 Vb(){for(var t=0;t<this.t;++t)if(this.data[t]!=0)return t*this.DB+Mb(this.data[t]);return this.s<0?this.t*this.DB:-1}function Hb(t){for(var e=0;t!=0;)t&=t-1,++e;return e}function qb(){for(var t=0,e=this.s&this.DM,r=0;r<this.t;++r)t+=Hb(this.data[r]^e);return t}function zb(t){var e=Math.floor(t/this.DB);return e>=this.t?this.s!=0:(this.data[e]&1<<t%this.DB)!=0}function Gb(t,e){var r=L.ONE.shiftLeft(t);return this.bitwiseTo(r,e,r),r}function Wb(t){return this.changeBit(t,y0)}function $b(t){return this.changeBit(t,jh)}function Yb(t){return this.changeBit(t,Qh)}function Xb(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 Zb(t){var e=fe();return this.addTo(t,e),e}function Qb(t){var e=fe();return this.subTo(t,e),e}function jb(t){var e=fe();return this.multiplyTo(t,e),e}function Jb(t){var e=fe();return this.divRemTo(t,e,null),e}function ew(t){var e=fe();return this.divRemTo(t,null,e),e}function tw(t){var e=fe(),r=fe();return this.divRemTo(t,e,r),new Array(e,r)}function rw(t){this.data[this.t]=this.am(0,t-1,this,0,0,this.t),++this.t,this.clamp()}function nw(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 Oi(){}function Jh(t){return t}function iw(t,e,r){t.multiplyTo(e,r)}function ow(t,e){t.squareTo(e)}Oi.prototype.convert=Jh;Oi.prototype.revert=Jh;Oi.prototype.mulTo=iw;Oi.prototype.sqrTo=ow;function sw(t){return this.exp(t,new Oi)}function aw(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 cw(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 zn(t){this.r2=fe(),this.q3=fe(),L.ONE.dlShiftTo(2*t.t,this.r2),this.mu=this.r2.divide(t),this.m=t}function uw(t){if(t.s<0||t.t>2*this.m.t)return t.mod(this.m);if(t.compareTo(this.m)<0)return t;var e=fe();return t.copyTo(e),this.reduce(e),e}function fw(t){return t}function lw(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 hw(t,e){t.squareTo(e),this.reduce(e)}function dw(t,e,r){t.multiplyTo(e,r),this.reduce(r)}zn.prototype.convert=uw;zn.prototype.revert=fw;zn.prototype.reduce=lw;zn.prototype.mulTo=dw;zn.prototype.sqrTo=hw;function pw(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 zn(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=fe();for(o.sqrTo(s[1],f);a<=u;)s[a]=fe(),o.mulTo(f,s[a-2],s[a]),a+=2}var l=t.t-1,h,y=!0,d=fe(),p;for(r=ws(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 yw(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 gw(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 mw(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 Rt=[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],xw=(1<<26)/Rt[Rt.length-1];function bw(t){var e,r=this.abs();if(r.t==1&&r.data[0]<=Rt[Rt.length-1]){for(e=0;e<Rt.length;++e)if(r.data[0]==Rt[e])return!0;return!1}if(r.isEven())return!1;for(e=1;e<Rt.length;){for(var n=Rt[e],i=e+1;i<Rt.length&&n<xw;)n*=Rt[i++];for(n=r.modInt(n);e<i;)if(n%Rt[e++]==0)return!1}return r.millerRabin(t)}function ww(t){var e=this.subtract(L.ONE),r=e.getLowestSetBit();if(r<=0)return!1;for(var n=e.shiftRight(r),i=vw(),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 vw(){return{nextBytes:function(t){for(var e=0;e<t.length;++e)t[e]=Math.floor(Math.random()*256)}}}L.prototype.chunkSize=Eb;L.prototype.toRadix=Ab;L.prototype.fromRadix=Cb;L.prototype.fromNumber=Db;L.prototype.bitwiseTo=kb;L.prototype.changeBit=Gb;L.prototype.addTo=Xb;L.prototype.dMultiply=rw;L.prototype.dAddOffset=nw;L.prototype.multiplyLowerTo=aw;L.prototype.multiplyUpperTo=cw;L.prototype.modInt=gw;L.prototype.millerRabin=ww;L.prototype.clone=xb;L.prototype.intValue=bb;L.prototype.byteValue=wb;L.prototype.shortValue=vb;L.prototype.signum=Sb;L.prototype.toByteArray=Bb;L.prototype.equals=Ib;L.prototype.min=Tb;L.prototype.max=_b;L.prototype.and=Lb;L.prototype.or=Nb;L.prototype.xor=Pb;L.prototype.andNot=Ub;L.prototype.not=Ob;L.prototype.shiftLeft=Fb;L.prototype.shiftRight=Kb;L.prototype.getLowestSetBit=Vb;L.prototype.bitCount=qb;L.prototype.testBit=zb;L.prototype.setBit=Wb;L.prototype.clearBit=$b;L.prototype.flipBit=Yb;L.prototype.add=Zb;L.prototype.subtract=Qb;L.prototype.multiply=jb;L.prototype.divide=Jb;L.prototype.remainder=ew;L.prototype.divideAndRemainder=tw;L.prototype.modPow=pw;L.prototype.modInverse=mw;L.prototype.pow=sw;L.prototype.gcd=yw;L.prototype.isProbablePrime=bw});var od=re(($D,id)=>{var qt=xe();rn();Ue();var rd=id.exports=qt.sha1=qt.sha1||{};qt.md.sha1=qt.md.algorithms.sha1=rd;rd.create=function(){nd||Ew();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),td(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};td(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,nd=!1;function Ew(){g0=String.fromCharCode(128),g0+=qt.util.fillString(String.fromCharCode(0),64),nd=!0}function td(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 cd=re((YD,ad)=>{var zt=xe();Ue();Ui();od();var sd=ad.exports=zt.pkcs1=zt.pkcs1||{};sd.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,y=0;y<h;y++)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=Es(i,a-o.digestLength-1,s),g=zt.util.xorBytes(d,p,d.length),m=Es(g,o.digestLength,s),b=zt.util.xorBytes(i,m,i.length);return"\0"+b+g};sd.decode_rsa_oaep=function(t,e,r){var n,i,o;typeof r=="string"?(n=r,i=arguments[3]||void 0):r&&(n=r.label||void 0,i=r.md||void 0,r.mgf1&&r.mgf1.md&&(o=r.mgf1.md));var s=Math.ceil(t.n.bitLength()/8);if(e.length!==s){var g=new Error("RSAES-OAEP encoded message length is invalid.");throw g.length=e.length,g.expectedLength=s,g}if(i===void 0?i=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=Es(f,i.digestLength,o),h=zt.util.xorBytes(u,l,u.length),y=Es(h,s-i.digestLength-1,o),d=zt.util.xorBytes(f,y,f.length),p=d.substring(0,i.digestLength),g=c!=="\0",m=0;m<i.digestLength;++m)g|=a.charAt(m)!==p.charAt(m);for(var 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;g|=v&B,b=b&E,x+=b}if(g||d.charCodeAt(x)!==1)throw new Error("Invalid RSAES-OAEP padding.");return d.substring(x+1)};function Es(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 ud=re((XD,m0)=>{var Lr=xe();Ue();vs();Ui();(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,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||Lr.random,g={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,g,d.options,y);throw new Error("Invalid prime generation algorithm: "+d.name)};function o(l,h,y,d){return"workers"in y?c(l,h,y,d):s(l,h,y,d)}function s(l,h,y,d){var p=u(l,h),g=0,m=f(p.bitLength());"millerRabinTests"in y&&(m=y.millerRabinTests);var b=10;"maxBlockTime"in y&&(b=y.maxBlockTime),a(p,l,h,g,m,b,d)}function a(l,h,y,d,p,g,m){var b=+new Date;do{if(l.bitLength()>h&&(l=u(h,y)),l.isProbablePrime(p))return m(null,l);l.dAddOffset(r[d++%8],0)}while(g<0||+new Date-b<g);Lr.util.setImmediate(function(){a(l,h,y,d,p,g,m)})}function c(l,h,y,d){if(typeof Worker>"u")return s(l,h,y,d);var p=u(l,h),g=y.workers,m=y.workLoad||100,b=m*30/8,x=y.workerScript||"forge/prime.worker.js";if(g===-1)return Lr.util.estimateCores(function(v,E){v&&(E=2),g=E-1,S()});S();function S(){g=Math.max(1,g);for(var v=[],E=0;E<g;++E)v[E]=new Worker(x);for(var B=g,E=0;E<g;++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 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 As=re((ZD,gd)=>{var Y=xe();Pi();vs();cs();cd();ud();Ui();Ue();typeof ce>"u"&&(ce=Y.jsbn.BigInteger);var ce,x0=Y.util.isNodejs?ys():null,C=Y.asn1,xt=Y.util;Y.pki=Y.pki||{};gd.exports=Y.pki.rsa=Y.rsa=Y.rsa||{};var ee=Y.pki,Sw=[6,4,2,4,2,4,6,2],Aw={name:"PrivateKeyInfo",tagClass:C.Class.UNIVERSAL,type:C.Type.SEQUENCE,constructed:!0,value:[{name:"PrivateKeyInfo.version",tagClass:C.Class.UNIVERSAL,type:C.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"PrivateKeyInfo.privateKeyAlgorithm",tagClass:C.Class.UNIVERSAL,type:C.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:C.Class.UNIVERSAL,type:C.Type.OID,constructed:!1,capture:"privateKeyOid"}]},{name:"PrivateKeyInfo",tagClass:C.Class.UNIVERSAL,type:C.Type.OCTETSTRING,constructed:!1,capture:"privateKey"}]},Cw={name:"RSAPrivateKey",tagClass:C.Class.UNIVERSAL,type:C.Type.SEQUENCE,constructed:!0,value:[{name:"RSAPrivateKey.version",tagClass:C.Class.UNIVERSAL,type:C.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"RSAPrivateKey.modulus",tagClass:C.Class.UNIVERSAL,type:C.Type.INTEGER,constructed:!1,capture:"privateKeyModulus"},{name:"RSAPrivateKey.publicExponent",tagClass:C.Class.UNIVERSAL,type:C.Type.INTEGER,constructed:!1,capture:"privateKeyPublicExponent"},{name:"RSAPrivateKey.privateExponent",tagClass:C.Class.UNIVERSAL,type:C.Type.INTEGER,constructed:!1,capture:"privateKeyPrivateExponent"},{name:"RSAPrivateKey.prime1",tagClass:C.Class.UNIVERSAL,type:C.Type.INTEGER,constructed:!1,capture:"privateKeyPrime1"},{name:"RSAPrivateKey.prime2",tagClass:C.Class.UNIVERSAL,type:C.Type.INTEGER,constructed:!1,capture:"privateKeyPrime2"},{name:"RSAPrivateKey.exponent1",tagClass:C.Class.UNIVERSAL,type:C.Type.INTEGER,constructed:!1,capture:"privateKeyExponent1"},{name:"RSAPrivateKey.exponent2",tagClass:C.Class.UNIVERSAL,type:C.Type.INTEGER,constructed:!1,capture:"privateKeyExponent2"},{name:"RSAPrivateKey.coefficient",tagClass:C.Class.UNIVERSAL,type:C.Type.INTEGER,constructed:!1,capture:"privateKeyCoefficient"}]},Dw={name:"RSAPublicKey",tagClass:C.Class.UNIVERSAL,type:C.Type.SEQUENCE,constructed:!0,value:[{name:"RSAPublicKey.modulus",tagClass:C.Class.UNIVERSAL,type:C.Type.INTEGER,constructed:!1,capture:"publicKeyModulus"},{name:"RSAPublicKey.exponent",tagClass:C.Class.UNIVERSAL,type:C.Type.INTEGER,constructed:!1,capture:"publicKeyExponent"}]},Bw=Y.pki.rsa.publicKeyValidator={name:"SubjectPublicKeyInfo",tagClass:C.Class.UNIVERSAL,type:C.Type.SEQUENCE,constructed:!0,captureAsn1:"subjectPublicKeyInfo",value:[{name:"SubjectPublicKeyInfo.AlgorithmIdentifier",tagClass:C.Class.UNIVERSAL,type:C.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:C.Class.UNIVERSAL,type:C.Type.OID,constructed:!1,capture:"publicKeyOid"}]},{name:"SubjectPublicKeyInfo.subjectPublicKey",tagClass:C.Class.UNIVERSAL,type:C.Type.BITSTRING,constructed:!1,value:[{name:"SubjectPublicKeyInfo.subjectPublicKey.RSAPublicKey",tagClass:C.Class.UNIVERSAL,type:C.Type.SEQUENCE,constructed:!0,optional:!0,captureAsn1:"rsaPublicKey"}]}]},Iw={name:"DigestInfo",tagClass:C.Class.UNIVERSAL,type:C.Type.SEQUENCE,constructed:!0,value:[{name:"DigestInfo.DigestAlgorithm",tagClass:C.Class.UNIVERSAL,type:C.Type.SEQUENCE,constructed:!0,value:[{name:"DigestInfo.DigestAlgorithm.algorithmIdentifier",tagClass:C.Class.UNIVERSAL,type:C.Type.OID,constructed:!1,capture:"algorithmIdentifier"},{name:"DigestInfo.DigestAlgorithm.parameters",tagClass:C.Class.UNIVERSAL,type:C.Type.NULL,capture:"parameters",optional:!0,constructed:!1}]},{name:"DigestInfo.digest",tagClass:C.Class.UNIVERSAL,type:C.Type.OCTETSTRING,constructed:!1,capture:"digest"}]},Tw=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=C.oidToDer(e).getBytes(),i=C.create(C.Class.UNIVERSAL,C.Type.SEQUENCE,!0,[]),o=C.create(C.Class.UNIVERSAL,C.Type.SEQUENCE,!0,[]);o.value.push(C.create(C.Class.UNIVERSAL,C.Type.OID,!1,n)),o.value.push(C.create(C.Class.UNIVERSAL,C.Type.NULL,!1,""));var s=C.create(C.Class.UNIVERSAL,C.Type.OCTETSTRING,!1,t.digest().getBytes());return i.value.push(o),i.value.push(s),C.toDer(i).getBytes()},pd=function(t,e,r){if(r)return t.modPow(e.e,e.n);if(!e.p||!e.q)return t.modPow(e.d,e.n);e.dP||(e.dP=e.d.mod(e.p.subtract(ce.ONE))),e.dQ||(e.dQ=e.d.mod(e.q.subtract(ce.ONE))),e.qInv||(e.qInv=e.q.modInverse(e.p));var n;do n=new ce(Y.util.bytesToHex(Y.random.getBytes(e.n.bitLength()/8)),16);while(n.compareTo(e.n)>=0||!n.gcd(e.n).equals(ce.ONE));t=t.multiply(n.modPow(e.e,e.n)).mod(e.n);for(var i=t.mod(e.p).modPow(e.dP,e.p),o=t.mod(e.q).modPow(e.dQ,e.q);i.compareTo(o)<0;)i=i.add(e.p);var s=i.subtract(o).multiply(e.qInv).mod(e.p).multiply(e.q).add(o);return s=s.multiply(n.modInverse(e.n)).mod(e.n),s};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=yd(t,e,r)):(i=Y.util.createBuffer(),i.putBytes(t));for(var s=new ce(i.toHex(),16),a=pd(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 ce(Y.util.createBuffer(t).toHex(),16);if(s.compareTo(e.n)>=0)throw new Error("Encrypted message is invalid.");for(var a=pd(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?Ss(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 ce(null),p:null,q:null,qBits:t>>1,pBits:t-(t>>1),pqState:0,num:null,keys:null},s.e.fromInt(s.eInt);else throw new Error("Invalid key generation algorithm: "+o);return s};ee.rsa.stepKeyPairGenerationState=function(t,e){"algorithm"in t||(t.algorithm="PRIMEINC");var r=new ce(null);r.fromInt(30);for(var n=0,i=function(l,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 ce(c,t.rng),t.num.testBit(u)||t.num.bitwiseTo(ce.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(kw(t.num.bitLength()))?++t.pqState:t.num.dAddOffset(Sw[n++%8],0):t.pqState===2?t.pqState=t.num.subtract(ce.ONE).gcd(t.e).compareTo(ce.ONE)===0?3:0:t.pqState===3&&(t.pqState=0,t.p===null?t.p=t.num:t.q=t.num,t.p!==null&&t.q!==null&&++t.state,t.num=null)}else if(t.state===1)t.p.compareTo(t.q)<0&&(t.num=t.p,t.p=t.q,t.q=t.num),++t.state;else if(t.state===2)t.p1=t.p.subtract(ce.ONE),t.q1=t.q.subtract(ce.ONE),t.phi=t.p1.multiply(t.q1),++t.state;else if(t.state===3)t.phi.gcd(t.e).compareTo(ce.ONE)===0?++t.state:(t.p=null,t.q=null,t.state=0);else if(t.state===4)t.n=t.p.multiply(t.q),t.n.bitLength()===t.bits?++t.state:(t.q=null,t.state=0);else if(t.state===5){var 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(fd("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(ld("generateKey")&&ld("exportKey"))return xt.globalScope.crypto.subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:t,publicExponent:dd(e),hash:{name:"SHA-256"}},!0,["sign","verify"]).then(function(a){return xt.globalScope.crypto.subtle.exportKey("pkcs8",a.privateKey)}).then(void 0,function(a){n(a)}).then(function(a){if(a){var c=ee.privateKeyFromAsn1(C.fromDer(Y.util.createBuffer(a)));n(null,{privateKey:c,publicKey:ee.setRsaPublicKey(c.n,c.e)})}});if(hd("generateKey")&&hd("exportKey")){var i=xt.globalScope.msCrypto.subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:t,publicExponent:dd(e),hash:{name:"SHA-256"}},!0,["sign","verify"]);i.oncomplete=function(a){var c=a.target.result,u=xt.globalScope.msCrypto.subtle.exportKey("pkcs8",c.privateKey);u.oncomplete=function(f){var l=f.target.result,h=ee.privateKeyFromAsn1(C.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(fd("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;_w(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 yd(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=Ss(u,r,!0);var f=C.fromDer(u,{parseAllBytes:s._parseAllDigestBytes}),l={},h=[];if(!C.validate(f,Iw,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=C.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 y=new Error("Unknown RSASSA-PKCS1-v1_5 DigestAlgorithm identifier.");throw y.oid=d,y}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=Ss(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:Ss};else if(f==="RSA-OAEP"||f==="RSAES-OAEP")f={decode:function(y,d){return Y.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:Tw},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 C.create(C.Class.UNIVERSAL,C.Type.SEQUENCE,!0,[C.create(C.Class.UNIVERSAL,C.Type.INTEGER,!1,C.integerToDer(0).getBytes()),C.create(C.Class.UNIVERSAL,C.Type.SEQUENCE,!0,[C.create(C.Class.UNIVERSAL,C.Type.OID,!1,C.oidToDer(ee.oids.rsaEncryption).getBytes()),C.create(C.Class.UNIVERSAL,C.Type.NULL,!1,"")]),C.create(C.Class.UNIVERSAL,C.Type.OCTETSTRING,!1,C.toDer(t).getBytes())])};ee.privateKeyFromAsn1=function(t){var e={},r=[];if(C.validate(t,Aw,e,r)&&(t=C.fromDer(Y.util.createBuffer(e.privateKey))),e={},r=[],!C.validate(t,Cw,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 ce(i,16),new ce(o,16),new ce(s,16),new ce(a,16),new ce(c,16),new ce(u,16),new ce(f,16),new ce(l,16))};ee.privateKeyToAsn1=ee.privateKeyToRSAPrivateKey=function(t){return C.create(C.Class.UNIVERSAL,C.Type.SEQUENCE,!0,[C.create(C.Class.UNIVERSAL,C.Type.INTEGER,!1,C.integerToDer(0).getBytes()),C.create(C.Class.UNIVERSAL,C.Type.INTEGER,!1,Gt(t.n)),C.create(C.Class.UNIVERSAL,C.Type.INTEGER,!1,Gt(t.e)),C.create(C.Class.UNIVERSAL,C.Type.INTEGER,!1,Gt(t.d)),C.create(C.Class.UNIVERSAL,C.Type.INTEGER,!1,Gt(t.p)),C.create(C.Class.UNIVERSAL,C.Type.INTEGER,!1,Gt(t.q)),C.create(C.Class.UNIVERSAL,C.Type.INTEGER,!1,Gt(t.dP)),C.create(C.Class.UNIVERSAL,C.Type.INTEGER,!1,Gt(t.dQ)),C.create(C.Class.UNIVERSAL,C.Type.INTEGER,!1,Gt(t.qInv))])};ee.publicKeyFromAsn1=function(t){var e={},r=[];if(C.validate(t,Bw,e,r)){var n=C.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=[],!C.validate(t,Dw,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 ce(o,16),new ce(s,16))};ee.publicKeyToAsn1=ee.publicKeyToSubjectPublicKeyInfo=function(t){return C.create(C.Class.UNIVERSAL,C.Type.SEQUENCE,!0,[C.create(C.Class.UNIVERSAL,C.Type.SEQUENCE,!0,[C.create(C.Class.UNIVERSAL,C.Type.OID,!1,C.oidToDer(ee.oids.rsaEncryption).getBytes()),C.create(C.Class.UNIVERSAL,C.Type.NULL,!1,"")]),C.create(C.Class.UNIVERSAL,C.Type.BITSTRING,!1,[ee.publicKeyToRSAPublicKey(t)])])};ee.publicKeyToRSAPublicKey=function(t){return C.create(C.Class.UNIVERSAL,C.Type.SEQUENCE,!0,[C.create(C.Class.UNIVERSAL,C.Type.INTEGER,!1,Gt(t.n)),C.create(C.Class.UNIVERSAL,C.Type.INTEGER,!1,Gt(t.e))])};function yd(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 Ss(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 _w(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(ce.ONE).gcd(t.e).compareTo(ce.ONE)!==0){t.p=null,i();return}if(t.q.subtract(ce.ONE).gcd(t.e).compareTo(ce.ONE)!==0){t.q=null,o(t.qBits,s);return}if(t.p1=t.p.subtract(ce.ONE),t.q1=t.q.subtract(ce.ONE),t.phi=t.p1.multiply(t.q1),t.phi.gcd(t.e).compareTo(ce.ONE)!==0){t.p=t.q=null,i();return}if(t.n=t.p.multiply(t.q),t.n.bitLength()!==t.bits){t.q=null,o(t.qBits,s);return}var 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 kw(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 fd(t){return Y.util.isNodejs&&typeof x0[t]=="function"}function ld(t){return typeof xt.globalScope<"u"&&typeof xt.globalScope.crypto=="object"&&typeof xt.globalScope.crypto.subtle=="object"&&typeof xt.globalScope.crypto.subtle[t]=="function"}function hd(t){return typeof xt.globalScope<"u"&&typeof xt.globalScope.msCrypto=="object"&&typeof xt.globalScope.msCrypto.subtle=="object"&&typeof xt.globalScope.msCrypto.subtle[t]=="function"}function dd(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 Ed=re((QD,vd)=>{var z=xe();u0();Pi();Dh();rn();cs();kh();Nh();Ui();Wh();As();Ue();typeof md>"u"&&(md=z.jsbn.BigInteger);var md,T=z.asn1,ie=z.pki=z.pki||{};vd.exports=ie.pbe=z.pbe=z.pbe||{};var sn=ie.oids,Rw={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"}]},Lw={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"}]}]},Nw={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 y="hmacWith"+r.prfAlgorithm.toUpperCase(),d=wd(y),p=z.pkcs5.pbkdf2(e,n,i,s,d),g=z.random.getBytesSync(u),m=l(p);m.start(g),m.update(T.toDer(t)),m.finish(),c=m.output.getBytes();var b=Pw(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(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,g)])])])}else if(r.algorithm==="3des"){s=24;var x=new z.util.ByteBuffer(n),p=ie.pbe.generatePkcs12Key(e,x,1,i,s),g=ie.pbe.generatePkcs12Key(e,x,2,i,s),m=z.des.createEncryptionCipher(p);m.start(g),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,Rw,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(),y=e.length(),d=new z.util.ByteBuffer;d.fillWithByte(r,u);var p=u*Math.ceil(y/u),g=new z.util.ByteBuffer;for(a=0;a<p;a++)g.putByte(e.at(a%y));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=g;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};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,Lw,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=bd(n.prfOid),l=z.pkcs5.pbkdf2(r,s,a,c,f),h=n.encIv,y=u(l);return y.start(h),y};ie.pbe.getCipherForPKCS12PBE=function(t,e,r){var n={},i=[];if(!T.validate(e,Nw,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,g){var m=z.rc2.createDecryptionCipher(p,40);return m.start(g,null),m};break;default:var o=new Error("Cannot read PKCS #12 PBE data block. Unsupported OID.");throw o.oid=t,o}var l=bd(n.prfOid),h=ie.pbe.generatePkcs12Key(r,s,1,a,c,l);l.start();var y=ie.pbe.generatePkcs12Key(r,s,2,a,u,l);return f(h,y)};ie.pbe.opensslDeriveBytes=function(t,e,r,n){if(typeof n>"u"||n===null){if(!("md5"in z.md))throw new Error('"md5" hash algorithm unavailable.');n=z.md.md5.create()}e===null&&(e="");for(var i=[xd(n,t+e)],o=16,s=1;o<r;++s,o+=16)i.push(xd(n,i[s-1]+t+e));return i.join("").substr(0,r)};function xd(t,e){return t.start().update(e).digest().getBytes()}function bd(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 wd(e)}function wd(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 Pw(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 Ud=re((MB,Pd)=>{var Ce=xe();rn();Ue();var Ki=Pd.exports=Ce.sha512=Ce.sha512||{};Ce.md.sha512=Ce.md.algorithms.sha512=Ki;var Ld=Ce.sha384=Ce.sha512.sha384=Ce.sha512.sha384||{};Ld.create=function(){return Ki.create("SHA-384")};Ce.md.sha384=Ce.md.algorithms.sha384=Ld;Ce.sha512.sha256=Ce.sha512.sha256||{create:function(){return Ki.create("SHA-512/256")}};Ce.md["sha512/256"]=Ce.md.algorithms["sha512/256"]=Ce.sha512.sha256;Ce.sha512.sha224=Ce.sha512.sha224||{create:function(){return Ki.create("SHA-512/224")}};Ce.md["sha512/224"]=Ce.md.algorithms["sha512/224"]=Ce.sha512.sha224;Ki.create=function(t){if(Nd||qw(),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=Ce.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=Ce.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=Ce.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),Rd(r,i,n),(n.read>2048||n.length()===0)&&n.compact(),a},a.digest=function(){var c=Ce.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,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);Rd(p,i,c);var g=Ce.util.createBuffer(),m;t==="SHA-512"?m=p.length:t==="SHA-384"?m=p.length-2:m=p.length-4;for(var d=0;d<m;++d)g.putInt32(p[d][0]),(d!==m-1||t!=="SHA-512/224")&&g.putInt32(p[d][1]);return g},a};var S0=null,Nd=!1,A0=null,cn=null;function qw(){S0=String.fromCharCode(128),S0+=Ce.util.fillString(String.fromCharCode(0),128),A0=[[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]],Nd=!0}function Rd(t,e,r){for(var n,i,o,s,a,c,u,f,l,h,y,d,p,g,m,b,x,S,v,E,B,D,U,F,O,M,G,Q,I,R,_,k,A,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,A=e[I-7],K=e[I-16],_=i+A[1]+s+K[1],e[I][0]=n+A[0]+o+K[0]+(_/4294967296>>>0)>>>0,e[I][1]=_>>>0;for(p=t[0][0],g=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|g<<4)^(g>>>2|p<<30)^(g>>>7|p<<25))>>>0,c=((p<<4|g>>>28)^(g<<30|p>>>2)^(g<<25|p>>>7))>>>0,y=(p&m|x&(p^m))>>>0,d=(g&b|S&(g^b))>>>0,_=Q+f+h+A0[I][1]+e[I][1],n=G+u+l+A0[I][0]+e[I][0]+(_/4294967296>>>0)>>>0,i=_>>>0,_=c+d,o=a+y+(_/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=g,_=i+s,p=n+o+(_/4294967296>>>0)>>>0,g=_>>>0;_=t[0][1]+g,t[0][0]=t[0][0]+p+(_/4294967296>>>0)>>>0,t[0][1]=_>>>0,_=t[1][1]+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 lp=re((eT,fp)=>{var Xn=1e3,Zn=Xn*60,Qn=Zn*60,hn=Qn*24,yv=hn*7,gv=hn*365.25;fp.exports=function(t,e){e=e||{};var r=typeof t;if(r==="string"&&t.length>0)return mv(t);if(r==="number"&&isFinite(t))return e.long?bv(t):xv(t);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(t))};function mv(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*gv;case"weeks":case"week":case"w":return r*yv;case"days":case"day":case"d":return r*hn;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 xv(t){var e=Math.abs(t);return e>=hn?Math.round(t/hn)+"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 bv(t){var e=Math.abs(t);return e>=hn?_s(t,e,hn,"day"):e>=Qn?_s(t,e,Qn,"hour"):e>=Zn?_s(t,e,Zn,"minute"):e>=Xn?_s(t,e,Xn,"second"):t+" ms"}function _s(t,e,r,n){var i=e>=r*1.5;return Math.round(t/r)+" "+n+(i?"s":"")}});var dp=re((tT,hp)=>{function wv(t){r.debug=r,r.default=r,r.coerce=c,r.disable=o,r.enable=i,r.enabled=s,r.humanize=lp(),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(...g){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,g[0]=r.coerce(g[0]),typeof g[0]!="string"&&g.unshift("%O");let S=0;g[0]=g[0].replace(/%([a-zA-Z%])/g,(E,B)=>{if(E==="%%")return"%";S++;let D=r.formatters[B];if(typeof D=="function"){let U=g[S];E=D.call(m,U),g.splice(S,1),S--}return E}),r.formatArgs.call(m,g),(m.log||r.log).apply(m,g)}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:g=>{h=g}}),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}hp.exports=wv});var pp=re((dt,ks)=>{dt.formatArgs=Ev;dt.save=Sv;dt.load=Av;dt.useColors=vv;dt.storage=Cv();dt.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`."))}})();dt.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 vv(){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 Ev(t){if(t[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+t[0]+(this.useColors?"%c ":" ")+"+"+ks.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)}dt.log=console.debug||console.log||(()=>{});function Sv(t){try{t?dt.storage.setItem("debug",t):dt.storage.removeItem("debug")}catch{}}function Av(){let t;try{t=dt.storage.getItem("debug")}catch{}return!t&&typeof process<"u"&&"env"in process&&(t=process.env.DEBUG),t}function Cv(){try{return localStorage}catch{}}ks.exports=dp()(dt);var{formatters:Dv}=ks.exports;Dv.j=function(t){try{return JSON.stringify(t)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}}});var Ep=re((GT,vp)=>{"use strict";function Tv(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,g=0,m=y.length;g!==m&&y[g]===0;)g++,d++;for(var b=(m-g)*u+1>>>0,x=new Uint8Array(b);g!==m;){for(var S=y[g],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,g++}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,g=0;y[d]===a;)p++,d++;for(var m=(y.length-d)*c+1>>>0,b=new Uint8Array(m);y[d];){var x=e[y.charCodeAt(d)];if(x===255)return;for(var S=0,v=m-1;(x!==0||S<g)&&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");g=S,d++}if(y[d]!==" "){for(var E=m-g;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(y){var d=l(y);if(d)return d;throw new Error("Non-base"+s+" character")}return{encode:f,decodeUnsafe:l,decode:h}}vp.exports=Tv});var Os=re((WT,Sp)=>{"use strict";var _v=new TextDecoder,kv=t=>_v.decode(t),Rv=new TextEncoder,Lv=t=>Rv.encode(t);function Nv(t,e){let r=new Uint8Array(e),n=0;for(let i of t)r.set(i,n),n+=i.length;return r}Sp.exports={decodeText:kv,encodeText:Lv,concat:Nv}});var Cp=re(($T,Ap)=>{"use strict";var{encodeText:Pv}=Os(),O0=class{constructor(e,r,n,i){this.name=e,this.code=r,this.codeBuf=Pv(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)}};Ap.exports=O0});var Bp=re((YT,Dp)=>{"use strict";var Uv=(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},Ov=(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},Fv=t=>e=>({encode(r){return Ov(r,e,t)},decode(r){return Uv(r,e,t)}});Dp.exports={rfc4648:Fv}});var kp=re((XT,_p)=>{"use strict";var $i=Ep(),Kv=Cp(),{rfc4648:je}=Bp(),{decodeText:Mv,encodeText:Vv}=Os(),Hv=()=>({encode:Mv,decode:Vv}),Ip=[["identity","\0",Hv,""],["base2","0",je(1),"01"],["base8","7",je(3),"01234567"],["base10","9",$i,"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",$i,"0123456789abcdefghijklmnopqrstuvwxyz"],["base36upper","K",$i,"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"],["base58btc","z",$i,"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"],["base58flickr","Z",$i,"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"],["base64","m",je(6),"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"],["base64pad","M",je(6),"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="],["base64url","u",je(6),"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_"],["base64urlpad","U",je(6),"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_="]],Tp=Ip.reduce((t,e)=>(t[e[0]]=new Kv(e[0],e[1],e[2],e[3]),t),{}),qv=Ip.reduce((t,e)=>(t[e[1]]=Tp[e[0]],t),{});_p.exports={names:Tp,codes:qv}});var Np=re((pr,Lp)=>{"use strict";var jn=kp(),{encodeText:zv,decodeText:Fs,concat:Rp}=Os();function Gv(t,e){if(!e)throw new Error("requires an encoded Uint8Array");let{name:r,codeBuf:n}=dn(t);return Xv(r,e),Rp([n,e],n.length+e.length)}function Wv(t,e){let r=dn(t),n=zv(r.encode(e));return Rp([r.codeBuf,n],r.codeBuf.length+n.length)}function $v(t){t instanceof Uint8Array&&(t=Fs(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 Yv(t){if(t instanceof Uint8Array&&(t=Fs(t)),Object.prototype.toString.call(t)!=="[object String]")return!1;try{return dn(t[0]).name}catch{return!1}}function Xv(t,e){dn(t).decode(Fs(e))}function dn(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 Zv(t){return t instanceof Uint8Array&&(t=Fs(t)),dn(t[0])}pr=Lp.exports=Gv;pr.encode=Wv;pr.decode=$v;pr.isEncoded=Yv;pr.encoding=dn;pr.encodingFromData=Zv;var Qv=Object.freeze(jn.names),jv=Object.freeze(jn.codes);pr.names=Qv;pr.codes=jv});var Fp=re((ZT,Op)=>{Op.exports=Up;var Pp=128,Jv=127,e8=~Jv,t8=Math.pow(2,31);function Up(t,e,r){e=e||[],r=r||0;for(var n=r;t>=t8;)e[r++]=t&255|Pp,t/=128;for(;t&e8;)e[r++]=t&255|Pp,t>>>=7;return e[r]=t|0,Up.bytes=r-n+1,e}});var Vp=re((QT,Mp)=>{Mp.exports=F0;var r8=128,Kp=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&Kp)<<i:(s&Kp)*Math.pow(2,i),i+=7}while(s>=r8);return F0.bytes=o-n,r}});var qp=re((jT,Hp)=>{var n8=Math.pow(2,7),i8=Math.pow(2,14),o8=Math.pow(2,21),s8=Math.pow(2,28),a8=Math.pow(2,35),c8=Math.pow(2,42),u8=Math.pow(2,49),f8=Math.pow(2,56),l8=Math.pow(2,63);Hp.exports=function(t){return t<n8?1:t<i8?2:t<o8?3:t<s8?4:t<a8?5:t<c8?6:t<u8?7:t<f8?8:t<l8?9:10}});var Gp=re((JT,zp)=>{zp.exports={encode:Fp(),decode:Vp(),encodingLength:qp()}});var $p=re((e_,Wp)=>{"use strict";var h8=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});Wp.exports={names:h8}});function d8(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,g=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<g)&&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");g=E,m++}for(var D=x-g;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 g=0,m=0;d[p]===c;)g++,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(g+(b-B)),U=g;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 p8,y8,Yp,Xp=de(()=>{p8=d8,y8=p8,Yp=y8});var r_,Zp,yr,Qp,jp,Nr=de(()=>{r_=new Uint8Array(0),Zp=(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},yr=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")},Qp=t=>new TextEncoder().encode(t),jp=t=>new TextDecoder().decode(t)});var K0,M0,V0,e1,H0,Jn,Pr,g8,m8,ke,Nt=de(()=>{Xp();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 e1(this,e)}},V0=class{constructor(e){this.decoders=e}or(e){return e1(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`)}},e1=(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}=Yp(r,e);return Jn({prefix:t,name:e,encode:n,decode:o=>yr(i(o))})},g8=(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},m8=(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},ke=({name:t,prefix:e,bitsPerChar:r,alphabet:n})=>Jn({prefix:e,name:t,encode(i){return m8(i,n,r)},decode(i){return g8(i,n,r,t)}})});var q0={};ue(q0,{identity:()=>x8});var x8,t1=de(()=>{Nt();Nr();x8=Jn({prefix:"\0",name:"identity",encode:t=>jp(t),decode:t=>Qp(t)})});var z0={};ue(z0,{base2:()=>b8});var b8,r1=de(()=>{Nt();b8=ke({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1})});var G0={};ue(G0,{base8:()=>w8});var w8,n1=de(()=>{Nt();w8=ke({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3})});var W0={};ue(W0,{base10:()=>v8});var v8,i1=de(()=>{Nt();v8=Pr({prefix:"9",name:"base10",alphabet:"0123456789"})});var $0={};ue($0,{base16:()=>E8,base16upper:()=>S8});var E8,S8,o1=de(()=>{Nt();E8=ke({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),S8=ke({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4})});var Y0={};ue(Y0,{base32:()=>ei,base32hex:()=>B8,base32hexpad:()=>T8,base32hexpadupper:()=>_8,base32hexupper:()=>I8,base32pad:()=>C8,base32padupper:()=>D8,base32upper:()=>A8,base32z:()=>k8});var ei,A8,C8,D8,B8,I8,T8,_8,k8,X0=de(()=>{Nt();ei=ke({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),A8=ke({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),C8=ke({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),D8=ke({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),B8=ke({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),I8=ke({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),T8=ke({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),_8=ke({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),k8=ke({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5})});var Z0={};ue(Z0,{base36:()=>R8,base36upper:()=>L8});var R8,L8,s1=de(()=>{Nt();R8=Pr({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),L8=Pr({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"})});var Q0={};ue(Q0,{base58btc:()=>Yt,base58flickr:()=>N8});var Yt,N8,j0=de(()=>{Nt();Yt=Pr({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),N8=Pr({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"})});var J0={};ue(J0,{base64:()=>P8,base64pad:()=>U8,base64url:()=>O8,base64urlpad:()=>F8});var P8,U8,O8,F8,a1=de(()=>{Nt();P8=ke({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),U8=ke({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),O8=ke({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),F8=ke({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6})});var eu={};ue(eu,{base256emoji:()=>q8});function V8(t){return t.reduce((e,r)=>(e+=K8[r],e),"")}function H8(t){let e=[];for(let r of t){let n=M8[r.codePointAt(0)];if(n===void 0)throw new Error(`Non-base256emoji character: ${r}`);e.push(n)}return new Uint8Array(e)}var c1,K8,M8,q8,u1=de(()=>{Nt();c1=Array.from("\u{1F680}\u{1FA90}\u2604\u{1F6F0}\u{1F30C}\u{1F311}\u{1F312}\u{1F313}\u{1F314}\u{1F315}\u{1F316}\u{1F317}\u{1F318}\u{1F30D}\u{1F30F}\u{1F30E}\u{1F409}\u2600\u{1F4BB}\u{1F5A5}\u{1F4BE}\u{1F4BF}\u{1F602}\u2764\u{1F60D}\u{1F923}\u{1F60A}\u{1F64F}\u{1F495}\u{1F62D}\u{1F618}\u{1F44D}\u{1F605}\u{1F44F}\u{1F601}\u{1F525}\u{1F970}\u{1F494}\u{1F496}\u{1F499}\u{1F622}\u{1F914}\u{1F606}\u{1F644}\u{1F4AA}\u{1F609}\u263A\u{1F44C}\u{1F917}\u{1F49C}\u{1F614}\u{1F60E}\u{1F607}\u{1F339}\u{1F926}\u{1F389}\u{1F49E}\u270C\u2728\u{1F937}\u{1F631}\u{1F60C}\u{1F338}\u{1F64C}\u{1F60B}\u{1F497}\u{1F49A}\u{1F60F}\u{1F49B}\u{1F642}\u{1F493}\u{1F929}\u{1F604}\u{1F600}\u{1F5A4}\u{1F603}\u{1F4AF}\u{1F648}\u{1F447}\u{1F3B6}\u{1F612}\u{1F92D}\u2763\u{1F61C}\u{1F48B}\u{1F440}\u{1F62A}\u{1F611}\u{1F4A5}\u{1F64B}\u{1F61E}\u{1F629}\u{1F621}\u{1F92A}\u{1F44A}\u{1F973}\u{1F625}\u{1F924}\u{1F449}\u{1F483}\u{1F633}\u270B\u{1F61A}\u{1F61D}\u{1F634}\u{1F31F}\u{1F62C}\u{1F643}\u{1F340}\u{1F337}\u{1F63B}\u{1F613}\u2B50\u2705\u{1F97A}\u{1F308}\u{1F608}\u{1F918}\u{1F4A6}\u2714\u{1F623}\u{1F3C3}\u{1F490}\u2639\u{1F38A}\u{1F498}\u{1F620}\u261D\u{1F615}\u{1F33A}\u{1F382}\u{1F33B}\u{1F610}\u{1F595}\u{1F49D}\u{1F64A}\u{1F639}\u{1F5E3}\u{1F4AB}\u{1F480}\u{1F451}\u{1F3B5}\u{1F91E}\u{1F61B}\u{1F534}\u{1F624}\u{1F33C}\u{1F62B}\u26BD\u{1F919}\u2615\u{1F3C6}\u{1F92B}\u{1F448}\u{1F62E}\u{1F646}\u{1F37B}\u{1F343}\u{1F436}\u{1F481}\u{1F632}\u{1F33F}\u{1F9E1}\u{1F381}\u26A1\u{1F31E}\u{1F388}\u274C\u270A\u{1F44B}\u{1F630}\u{1F928}\u{1F636}\u{1F91D}\u{1F6B6}\u{1F4B0}\u{1F353}\u{1F4A2}\u{1F91F}\u{1F641}\u{1F6A8}\u{1F4A8}\u{1F92C}\u2708\u{1F380}\u{1F37A}\u{1F913}\u{1F619}\u{1F49F}\u{1F331}\u{1F616}\u{1F476}\u{1F974}\u25B6\u27A1\u2753\u{1F48E}\u{1F4B8}\u2B07\u{1F628}\u{1F31A}\u{1F98B}\u{1F637}\u{1F57A}\u26A0\u{1F645}\u{1F61F}\u{1F635}\u{1F44E}\u{1F932}\u{1F920}\u{1F927}\u{1F4CC}\u{1F535}\u{1F485}\u{1F9D0}\u{1F43E}\u{1F352}\u{1F617}\u{1F911}\u{1F30A}\u{1F92F}\u{1F437}\u260E\u{1F4A7}\u{1F62F}\u{1F486}\u{1F446}\u{1F3A4}\u{1F647}\u{1F351}\u2744\u{1F334}\u{1F4A3}\u{1F438}\u{1F48C}\u{1F4CD}\u{1F940}\u{1F922}\u{1F445}\u{1F4A1}\u{1F4A9}\u{1F450}\u{1F4F8}\u{1F47B}\u{1F910}\u{1F92E}\u{1F3BC}\u{1F975}\u{1F6A9}\u{1F34E}\u{1F34A}\u{1F47C}\u{1F48D}\u{1F4E3}\u{1F942}"),K8=c1.reduce((t,e,r)=>(t[r]=e,t),[]),M8=c1.reduce((t,e,r)=>(t[e.codePointAt(0)]=r,t),[]);q8=Jn({prefix:"\u{1F680}",name:"base256emoji",encode:V8,decode:H8})});function h1(t,e,r){e=e||[],r=r||0;for(var n=r;t>=$8;)e[r++]=t&255|f1,t/=128;for(;t&W8;)e[r++]=t&255|f1,t>>>=7;return e[r]=t|0,h1.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&l1)<<i:(s&l1)*Math.pow(2,i),i+=7}while(s>=X8);return tu.bytes=o-n,r}var z8,f1,G8,W8,$8,Y8,X8,l1,Z8,Q8,j8,J8,e3,t3,r3,n3,i3,o3,s3,a3,Yi,d1=de(()=>{z8=h1,f1=128,G8=127,W8=~G8,$8=Math.pow(2,31);Y8=tu,X8=128,l1=127;Z8=Math.pow(2,7),Q8=Math.pow(2,14),j8=Math.pow(2,21),J8=Math.pow(2,28),e3=Math.pow(2,35),t3=Math.pow(2,42),r3=Math.pow(2,49),n3=Math.pow(2,56),i3=Math.pow(2,63),o3=function(t){return t<Z8?1:t<Q8?2:t<j8?3:t<J8?4:t<e3?5:t<t3?6:t<r3?7:t<n3?8:t<i3?9:10},s3={encode:z8,decode:Y8,encodingLength:o3},a3=s3,Yi=a3});var Xi,ti,ri,Ms=de(()=>{d1();Xi=(t,e=0)=>[Yi.decode(t,e),Yi.decode.bytes],ti=(t,e,r=0)=>(Yi.encode(t,e,r),e),ri=t=>Yi.encodingLength(t)});var pn,p1,y1,ni,Qi=de(()=>{Nr();Ms();pn=(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)},p1=t=>{let e=yr(t),[r,n]=Xi(e),[i,o]=Xi(e.subarray(n)),s=e.subarray(n+o);if(s.byteLength!==i)throw new Error("Incorrect length");return new ni(r,i,s,e)},y1=(t,e)=>t===e?!0:t.code===e.code&&t.size===e.size&&Zp(t.bytes,e.bytes),ni=class{constructor(e,r,n,i){this.code=e,this.size=r,this.digest=n,this.bytes=i}}});var nu,ru,iu=de(()=>{Qi();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={};ue(ou,{sha256:()=>c3,sha512:()=>u3});var m1,c3,u3,x1=de(()=>{iu();m1=t=>async e=>new Uint8Array(await crypto.subtle.digest(t,e)),c3=nu({name:"sha2-256",code:18,encode:m1("SHA-256")}),u3=nu({name:"sha2-512",code:19,encode:m1("SHA-512")})});var su={};ue(su,{identity:()=>h3});var b1,f3,w1,l3,h3,v1=de(()=>{Nr();Qi();b1=0,f3="identity",w1=yr,l3=t=>pn(b1,w1(t)),h3={code:b1,name:f3,encode:w1,digest:l3}});var E1=de(()=>{Nr()});var S_,A_,S1=de(()=>{S_=new TextEncoder,A_=new TextDecoder});var qs,y3,g3,m3,ji,x3,A1,C1,Vs,Hs,b3,w3,v3,D1=de(()=>{Ms();Qi();j0();X0();Nr();qs=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:Hs,byteLength:Hs,code:Vs,version:Vs,multihash:Vs,bytes:Vs,_baseCache:Hs,asCID:Hs})}toV0(){switch(this.version){case 0:return this;default:{let{code:e,multihash:r}=this;if(e!==ji)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(r.code!==x3)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&&y1(this.multihash,e.multihash)}toString(e){let{bytes:r,version:n,_baseCache:i}=this;switch(n){case 0:return g3(r,i,e||Yt.encoder);default:return m3(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 w3(/^0\.0/,v3),!!(e&&(e[C1]||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||A1(r,n,i.bytes))}else if(e!=null&&e[C1]===!0){let{version:r,multihash:n,code:i}=e,o=p1(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!==ji)throw new Error(`Version 0 CID must use dag-pb (code: ${ji}) block encoding`);return new t(e,r,n,n.bytes)}case 1:{let i=A1(e,r,n.bytes);return new t(e,r,n,i)}default:throw new Error("Invalid version")}}static createV0(e){return t.create(0,ji,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=yr(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]=Xi(e.subarray(r));return r+=h,l},i=n(),o=ji;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]=y3(e,r),o=t.decode(i);return o._baseCache.set(n,e),o}},y3=(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 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)]}}},g3=(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},m3=(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},ji=112,x3=18,A1=(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},C1=Symbol.for("@ipld/js-cid/CID"),Vs={writable:!1,configurable:!1,enumerable:!0},Hs={writable:!1,enumerable:!1,configurable:!1},b3="0.0.0-dev",w3=(t,e)=>{if(t.test(b3))console.warn(e);else throw new Error(e)},v3=`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 N1=he(()=>{L1();zs();Ur();hu();to()});var yu,G_,P1=he(()=>{c1();u1();f1();l1();h1();nu();d1();su();p1();g1();A1();I1();T1();_1();N1();yu={...Q0,...j0,...J0,...eu,...tu,...ru,...iu,...ou,...au,...cu},G_={...du,...pu}});function ci(t){return globalThis.Buffer!=null?new Uint8Array(t.buffer,t.byteOffset,t.byteLength):t}var Ys=he(()=>{});function Xs(t=0){return globalThis.Buffer!=null&&globalThis.Buffer.allocUnsafe!=null?ci(globalThis.Buffer.allocUnsafe(t)):new Uint8Array(t)}var gu=he(()=>{Ys()});function O1(t,e,r,n){return{name:t,prefix:e,encoder:{name:t,prefix:e,encode:r},decoder:{decode:n}}}var U1,mu,_3,Zs,xu=he(()=>{P1();gu();U1=O1("utf8","u",t=>"u"+new TextDecoder("utf8").decode(t),t=>new TextEncoder().encode(t.substring(1))),mu=O1("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=Xs(t.length);for(let r=0;r<t.length;r++)e[r]=t.charCodeAt(r);return e}),_3={utf8:U1,"utf-8":U1,hex:yu.base16,latin1:mu,ascii:mu,binary:mu,...yu},Zs=_3});var F1={};ue(F1,{toString:()=>k3});function k3(t,e="utf8"){let r=Zs[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 K1=he(()=>{xu()});var M1={};ue(M1,{fromString:()=>R3});function R3(t,e="utf8"){let r=Zs[e];if(!r)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?ci(globalThis.Buffer.from(t,"utf-8")):r.decoder.decode(`${r.prefix}${t}`)}var V1=he(()=>{xu();Ys()});var H1={};ue(H1,{concat:()=>L3});function L3(t,e){e||(e=t.reduce((i,o)=>i+o.length,0));let r=Xs(e),n=0;for(let i of t)r.set(i,n),n+=i.length;return ci(r)}var q1=he(()=>{gu();Ys()});var wu=re((ik,X1)=>{"use strict";var z1=Vp(),ui=jp(),{names:no}=e1(),{toString:Qs}=(K1(),oo(F1)),{fromString:N3}=(V1(),oo(M1)),{concat:P3}=(q1(),oo(H1)),fi={};for(let t in no){let e=t;fi[no[e]]=e}Object.freeze(fi);function U3(t){if(!(t instanceof Uint8Array))throw new Error("must be passed a Uint8Array");return Qs(t,"base16")}function O3(t){return N3(t,"base16")}function F3(t){if(!(t instanceof Uint8Array))throw new Error("must be passed a Uint8Array");return Qs(z1.encode("base58btc",t)).slice(1)}function K3(t){let e=t instanceof Uint8Array?Qs(t):t;return z1.decode("z"+e)}function G1(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=ui.decode(t);if(!$1(e))throw new Error(`multihash unknown function code: 0x${e.toString(16)}`);t=t.slice(ui.decode.bytes);let r=ui.decode(t);if(r<0)throw new Error(`multihash invalid length: ${r}`);if(t=t.slice(ui.decode.bytes),t.length!==r)throw new Error(`multihash length inconsistent: 0x${Qs(t,"base16")}`);return{code:e,name:fi[e],length:r,digest:t}}function M3(t,e,r){if(!t||e===void 0)throw new Error("multihash encode requires at least two args: digest, code");let n=W1(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=ui.encode(n),o=ui.encode(r);return P3([i,o,t],i.length+o.length+t.length)}function W1(t){let e=t;if(typeof t=="string"){if(no[t]===void 0)throw new Error(`Unrecognized hash function named: ${t}`);e=no[t]}if(typeof e!="number")throw new Error(`Hash function code should be a number. Got: ${e}`);if(fi[e]===void 0&&!bu(e))throw new Error(`Unrecognized function code: ${e}`);return e}function bu(t){return t>0&&t<16}function $1(t){return!!(bu(t)||fi[t])}function Y1(t){G1(t)}function V3(t){return Y1(t),t.subarray(0,2)}X1.exports={names:no,codes:fi,toHexString:U3,fromHexString:O3,toB58String:F3,fromB58String:K3,decode:G1,encode:M3,coerceCode:W1,isAppCode:bu,validate:Y1,prefix:V3,isValidCode:$1}});var Q3={};ue(Q3,{webRTC:()=>Z3,webRTCDirect:()=>X3});var W=class extends Error{code;props;constructor(e,r,n){super(e),this.code=r,this.name=n?.name??"CodeError",this.props=n??{}}},hi=class t extends Error{code;constructor(e="Unexpected Peer"){super(e),this.code=t.code}static code="ERR_UNEXPECTED_PEER"},Kr=class t extends Error{code;constructor(e="Invalid crypto exchange"){super(e),this.code=t.code}static code="ERR_INVALID_CRYPTO_EXCHANGE"};var so=Symbol.for("@libp2p/transport");var Nu;(function(t){t[t.FATAL_ALL=0]="FATAL_ALL",t[t.NO_FATAL=1]="NO_FATAL"})(Nu||(Nu={}));var ht=$e(Ku(),1);var sa={};ue(sa,{base32:()=>Ct,base32hex:()=>O2,base32hexpad:()=>K2,base32hexpadupper:()=>M2,base32hexupper:()=>F2,base32pad:()=>P2,base32padupper:()=>U2,base32upper:()=>N2,base32z:()=>V2});function T2(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,C=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*C[B]>>>0,C[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&&C[D]===0;)D++;for(var U=c.repeat(p);D<x;++D)U+=t.charAt(C[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 C=r[d.charCodeAt(p)];if(C===255)return;for(var v=0,E=b-1;(C!==0||v<m)&&E!==-1;E--,v++)C+=a*x[E]>>>0,x[E]=C%256>>>0,C=C/256>>>0;if(C!==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 _2=T2,k2=_2,Mu=k2;var iE=new Uint8Array(0);var Vu=(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 Hu=t=>new TextEncoder().encode(t),qu=t=>new TextDecoder().decode(t);var ra=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")}},na=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 Gu(this,e)}},ia=class{constructor(e){this.decoders=e}or(e){return Gu(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`)}},Gu=(t,e)=>new ia({...t.decoders||{[t.prefix]:t},...e.decoders||{[e.prefix]:e}}),oa=class{constructor(e,r,n,i){this.name=e,this.prefix=r,this.baseEncode=n,this.baseDecode=i,this.encoder=new ra(e,r,n),this.decoder=new na(e,r,i)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}},vn=({name:t,prefix:e,encode:r,decode:n})=>new oa(t,e,r,n),br=({prefix:t,name:e,alphabet:r})=>{let{encode:n,decode:i}=Mu(r,e);return vn({prefix:t,name:e,encode:n,decode:o=>Jt(i(o))})},R2=(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},L2=(t,e,r)=>{let n=e[e.length-1]==="=",i=(1<<r)-1,o="",s=0,a=0;for(let c=0;c<t.length;++c)for(a=a<<8|t[c],s+=8;s>r;)s-=r,o+=e[i&a>>s];if(s&&(o+=e[i&a<<r-s]),n)for(;o.length*r&7;)o+="=";return o},_e=({name:t,prefix:e,bitsPerChar:r,alphabet:n})=>vn({prefix:e,name:t,encode(i){return L2(i,n,r)},decode(i){return R2(i,n,r,t)}});var Ct=_e({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),N2=_e({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),P2=_e({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),U2=_e({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),O2=_e({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),F2=_e({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),K2=_e({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),M2=_e({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),V2=_e({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var aa={};ue(aa,{base58btc:()=>Te,base58flickr:()=>H2});var Te=br({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),H2=br({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var ua={};ue(ua,{base64:()=>En,base64pad:()=>q2,base64url:()=>ca,base64urlpad:()=>z2});var En=_e({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),q2=_e({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),ca=_e({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),z2=_e({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});ht.default.formatters.b=t=>t==null?"undefined":Te.baseEncode(t);ht.default.formatters.t=t=>t==null?"undefined":Ct.baseEncode(t);ht.default.formatters.m=t=>t==null?"undefined":En.baseEncode(t);ht.default.formatters.p=t=>t==null?"undefined":t.toString();ht.default.formatters.c=t=>t==null?"undefined":t.toString();ht.default.formatters.k=t=>t==null?"undefined":t.toString();ht.default.formatters.a=t=>t==null?"undefined":t.toString();function G2(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 ke(t){let e=G2(`${t}:trace`);return ht.default.enabled(`${t}:trace`)&&ht.default.names.map(r=>r.toString()).find(r=>r.includes(":trace"))!=null&&(e=(0,ht.default)(`${t}:trace`)),Object.assign((0,ht.default)(t),{error:(0,ht.default)(`${t}:error`),trace:e})}var Wu=Symbol.for("@libp2p/peer-id");var fa={};ue(fa,{base10:()=>W2});var W2=br({prefix:"9",name:"base10",alphabet:"0123456789"});var la={};ue(la,{base16:()=>$2,base16upper:()=>Y2});var $2=_e({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),Y2=_e({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var ha={};ue(ha,{base2:()=>X2});var X2=_e({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var da={};ue(da,{base256emoji:()=>ey});var $u=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}"),Z2=$u.reduce((t,e,r)=>(t[r]=e,t),[]),Q2=$u.reduce((t,e,r)=>(t[e.codePointAt(0)]=r,t),[]);function j2(t){return t.reduce((e,r)=>(e+=Z2[r],e),"")}function J2(t){let e=[];for(let r of t){let n=Q2[r.codePointAt(0)];if(n===void 0)throw new Error(`Non-base256emoji character: ${r}`);e.push(n)}return new Uint8Array(e)}var ey=vn({prefix:"\u{1F680}",name:"base256emoji",encode:j2,decode:J2});var pa={};ue(pa,{base36:()=>ty,base36upper:()=>ry});var ty=br({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),ry=br({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var ya={};ue(ya,{base8:()=>ny});var ny=_e({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var ga={};ue(ga,{identity:()=>iy});var iy=vn({prefix:"\0",name:"identity",encode:t=>qu(t),decode:t=>Hu(t)});var BE=new TextEncoder,IE=new TextDecoder;var xa={};ue(xa,{identity:()=>wr});var ay=Zu,Yu=128,cy=127,uy=~cy,fy=Math.pow(2,31);function Zu(t,e,r){e=e||[],r=r||0;for(var n=r;t>=fy;)e[r++]=t&255|Yu,t/=128;for(;t&uy;)e[r++]=t&255|Yu,t>>>=7;return e[r]=t|0,Zu.bytes=r-n+1,e}var ly=ma,hy=128,Xu=127;function ma(t,n){var r=0,n=n||0,i=0,o=n,s,a=t.length;do{if(o>=a)throw ma.bytes=0,new RangeError("Could not decode varint");s=t[o++],r+=i<28?(s&Xu)<<i:(s&Xu)*Math.pow(2,i),i+=7}while(s>=hy);return ma.bytes=o-n,r}var dy=Math.pow(2,7),py=Math.pow(2,14),yy=Math.pow(2,21),gy=Math.pow(2,28),my=Math.pow(2,35),xy=Math.pow(2,42),by=Math.pow(2,49),wy=Math.pow(2,56),vy=Math.pow(2,63),Ey=function(t){return t<dy?1:t<py?2:t<yy?3:t<gy?4:t<my?5:t<xy?6:t<by?7:t<wy?8:t<vy?9:10},Sy={encode:ay,decode:ly,encodingLength:Ey},Cy=Sy,di=Cy;var pi=(t,e=0)=>[di.decode(t,e),di.decode.bytes],Sn=(t,e,r=0)=>(di.encode(t,e,r),e),Cn=t=>di.encodingLength(t);var Ft=(t,e)=>{let r=e.byteLength,n=Cn(t),i=n+Cn(r),o=new Uint8Array(i+r);return Sn(t,o,0),Sn(r,o,n),o.set(e,i),new An(t,r,e,o)},Vr=t=>{let e=Jt(t),[r,n]=pi(e),[i,o]=pi(e.subarray(n)),s=e.subarray(n+o);if(s.byteLength!==i)throw new Error("Incorrect length");return new An(r,i,s,e)},Qu=(t,e)=>{if(t===e)return!0;{let r=e;return t.code===r.code&&t.size===r.size&&r.bytes instanceof Uint8Array&&Vu(t.bytes,r.bytes)}},An=class{constructor(e,r,n,i){this.code=e,this.size=r,this.digest=n,this.bytes=i}};var ju=0,Ay="identity",Ju=Jt,Dy=t=>Ft(ju,Ju(t)),wr={code:ju,name:Ay,encode:Ju,digest:Dy};var va={};ue(va,{sha256:()=>Ye,sha512:()=>By});var wa=({name:t,code:e,encode:r})=>new ba(t,e,r),ba=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?Ft(this.code,r):r.then(n=>Ft(this.code,n))}else throw Error("Unknown type, must be binary type")}};var tf=t=>async e=>new Uint8Array(await crypto.subtle.digest(t,e)),Ye=wa({name:"sha2-256",code:18,encode:tf("SHA-256")}),By=wa({name:"sha2-512",code:19,encode:tf("SHA-512")});var rf=(t,e)=>{let{bytes:r,version:n}=t;switch(n){case 0:return Ty(r,Ea(t),e||Te.encoder);default:return _y(r,Ea(t),e||Ct.encoder)}};var nf=new WeakMap,Ea=t=>{let e=nf.get(t);if(e==null){let r=new Map;return nf.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!==yi)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(r.code!==ky)throw new Error("Cannot convert non sha2-256 multihash CID to CIDv0");return t.createV0(r)}default:throw Error(`Can not convert CID version ${this.version} to version 0. This is a bug please report`)}}toV1(){switch(this.version){case 0:{let{code:e,digest:r}=this.multihash,n=Ft(e,r);return t.createV1(this.code,n)}case 1:return this;default:throw Error(`Can not convert CID version ${this.version} to version 1. This is a bug please report`)}}equals(e){return t.equals(this,e)}static equals(e,r){let n=r;return n&&e.code===n.code&&e.version===n.version&&Qu(e.multihash,n.multihash)}toString(e){return rf(this,e)}toJSON(){return{"/":rf(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||of(n,i,o.bytes))}else if(r[Ry]===!0){let{version:n,multihash:i,code:o}=r,s=Vr(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!==yi)throw new Error(`Version 0 CID must use dag-pb (code: ${yi}) block encoding`);return new t(e,r,n,n.bytes)}case 1:{let i=of(e,r,n.bytes);return new t(e,r,n,i)}default:throw new Error("Invalid version")}}static createV0(e){return t.create(0,yi,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 An(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]=pi(e.subarray(r));return r+=h,l},i=n(),o=yi;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]=Iy(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 Ea(o).set(n,e),o}},Iy=(t,e)=>{switch(t[0]){case"Q":{let r=e||Te;return[Te.prefix,r.decode(`${Te.prefix}${t}`)]}case Te.prefix:{let r=e||Te;return[Te.prefix,r.decode(t)]}case Ct.prefix:{let r=e||Ct;return[Ct.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)]}}},Ty=(t,e,r)=>{let{prefix:n}=r;if(n!==Te.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},_y=(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},yi=112,ky=18,of=(t,e,r)=>{let n=Cn(t),i=n+Cn(e),o=new Uint8Array(i+r.byteLength);return Sn(t,o,0),Sn(e,o,n),o.set(r,i),o},Ry=Symbol.for("@ipld/js-cid/CID");var Kt={...ga,...ha,...ya,...fa,...la,...sa,...pa,...aa,...ua,...da},zE={...va,...xa};function Ue(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 Ly=Symbol.for("nodejs.util.inspect.custom"),sf=Object.values(Kt).map(t=>t.decoder).reduce((t,e)=>t.or(e),Kt.identity.decoder),af=114,Sa=36,Ca=37,gi=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()})`}[Wu]=!0;toString(){return this.string==null&&(this.string=Te.encode(this.multihash.bytes).slice(1)),this.string}toCID(){return At.createV1(af,this.multihash)}toBytes(){return this.multihash.bytes}toJSON(){return this.toString()}equals(e){if(e instanceof Uint8Array)return Ue(this.multihash.bytes,e);if(typeof e=="string")return qr(e).equals(this);if(e?.multihash?.bytes!=null)return Ue(this.multihash.bytes,e.multihash.bytes);throw new Error("not valid Id")}[Ly](){return`PeerId(${this.toString()})`}},Dn=class extends gi{type="RSA";publicKey;constructor(e){super({...e,type:"RSA"}),this.publicKey=e.publicKey}},Bn=class extends gi{type="Ed25519";publicKey;constructor(e){super({...e,type:"Ed25519"}),this.publicKey=e.multihash.digest}},In=class extends gi{type="secp256k1";publicKey;constructor(e){super({...e,type:"secp256k1"}),this.publicKey=e.multihash.digest}};function qr(t,e){if(e=e??sf,t.charAt(0)==="1"||t.charAt(0)==="Q"){let r=Vr(Te.decode(`z${t}`));return t.startsWith("12D")?new Bn({multihash:r}):t.startsWith("16U")?new In({multihash:r}):new Dn({multihash:r})}return Ny(sf.decode(t))}function Ny(t){try{let e=Vr(t);if(e.code===wr.code){if(e.digest.length===Sa)return new Bn({multihash:e});if(e.digest.length===Ca)return new In({multihash:e})}if(e.code===Ye.code)return new Dn({multihash:e})}catch{return Py(At.decode(t))}throw new Error("Supplied PeerID CID is invalid")}function Py(t){if(t==null||t.multihash==null||t.version==null||t.version===1&&t.code!==af)throw new Error("Supplied PeerID CID is invalid");let e=t.multihash;if(e.code===Ye.code)return new Dn({multihash:t.multihash});if(e.code===wr.code){if(e.digest.length===Sa)return new Bn({multihash:t.multihash});if(e.digest.length===Ca)return new In({multihash:t.multihash})}throw new Error("Supplied PeerID CID is invalid")}async function Aa(t,e){return t.length===Sa?new Bn({multihash:Ft(wr.code,t),privateKey:e}):t.length===Ca?new In({multihash:Ft(wr.code,t),privateKey:e}):new Dn({multihash:await Ye.digest(t),publicKey:t,privateKey:e})}function vr(t){return globalThis.Buffer!=null?new Uint8Array(t.buffer,t.byteOffset,t.byteLength):t}function er(t=0){return globalThis.Buffer?.alloc!=null?vr(globalThis.Buffer.alloc(t)):new Uint8Array(t)}function Xe(t=0){return globalThis.Buffer?.allocUnsafe!=null?vr(globalThis.Buffer.allocUnsafe(t)):new Uint8Array(t)}function uf(t,e,r,n){return{name:t,prefix:e,encoder:{name:t,prefix:e,encode:r},decoder:{decode:n}}}var cf=uf("utf8","u",t=>"u"+new TextDecoder("utf8").decode(t),t=>new TextEncoder().encode(t.substring(1))),Da=uf("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=Xe(t.length);for(let r=0;r<t.length;r++)e[r]=t.charCodeAt(r);return e}),Oy={utf8:cf,"utf-8":cf,hex:Kt.base16,latin1:Da,ascii:Da,binary:Da,...Kt},fo=Oy;function se(t,e="utf8"){let r=fo[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 Fy=Math.pow(2,7),Ky=Math.pow(2,14),My=Math.pow(2,21),Ba=Math.pow(2,28),Ia=Math.pow(2,35),Ta=Math.pow(2,42),_a=Math.pow(2,49),de=128,tt=127;function st(t){if(t<Fy)return 1;if(t<Ky)return 2;if(t<My)return 3;if(t<Ba)return 4;if(t<Ia)return 5;if(t<Ta)return 6;if(t<_a)return 7;if(Number.MAX_SAFE_INTEGER!=null&&t>Number.MAX_SAFE_INTEGER)throw new RangeError("Could not encode varint");return 8}function Vy(t,e,r=0){switch(st(t)){case 8:e[r++]=t&255|de,t/=128;case 7:e[r++]=t&255|de,t/=128;case 6:e[r++]=t&255|de,t/=128;case 5:e[r++]=t&255|de,t/=128;case 4:e[r++]=t&255|de,t>>>=7;case 3:e[r++]=t&255|de,t>>>=7;case 2:e[r++]=t&255|de,t>>>=7;case 1:{e[r++]=t&255,t>>>=7;break}default:throw new Error("unreachable")}return e}function Hy(t,e,r=0){switch(st(t)){case 8:e.set(r++,t&255|de),t/=128;case 7:e.set(r++,t&255|de),t/=128;case 6:e.set(r++,t&255|de),t/=128;case 5:e.set(r++,t&255|de),t/=128;case 4:e.set(r++,t&255|de),t>>>=7;case 3:e.set(r++,t&255|de),t>>>=7;case 2:e.set(r++,t&255|de),t>>>=7;case 1:{e.set(r++,t&255),t>>>=7;break}default:throw new Error("unreachable")}return e}function qy(t,e){let r=t[e],n=0;if(n+=r&tt,r<de||(r=t[e+1],n+=(r&tt)<<7,r<de)||(r=t[e+2],n+=(r&tt)<<14,r<de)||(r=t[e+3],n+=(r&tt)<<21,r<de)||(r=t[e+4],n+=(r&tt)*Ba,r<de)||(r=t[e+5],n+=(r&tt)*Ia,r<de)||(r=t[e+6],n+=(r&tt)*Ta,r<de)||(r=t[e+7],n+=(r&tt)*_a,r<de))return n;throw new RangeError("Could not decode varint")}function zy(t,e){let r=t.get(e),n=0;if(n+=r&tt,r<de||(r=t.get(e+1),n+=(r&tt)<<7,r<de)||(r=t.get(e+2),n+=(r&tt)<<14,r<de)||(r=t.get(e+3),n+=(r&tt)<<21,r<de)||(r=t.get(e+4),n+=(r&tt)*Ba,r<de)||(r=t.get(e+5),n+=(r&tt)*Ia,r<de)||(r=t.get(e+6),n+=(r&tt)*Ta,r<de)||(r=t.get(e+7),n+=(r&tt)*_a,r<de))return n;throw new RangeError("Could not decode varint")}function Er(t,e,r=0){return e==null&&(e=Xe(st(t))),e instanceof Uint8Array?Vy(t,e,r):Hy(t,e,r)}function Dt(t,e=0){return t instanceof Uint8Array?qy(t,e):zy(t,e)}function pe(t,e){e==null&&(e=t.reduce((i,o)=>i+o.length,0));let r=Xe(e),n=0;for(let i of t)r.set(i,n),n+=i.length;return vr(r)}var lo=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 ff=45,Gy=15,Tn=new lo;function ka(t){if(!(t.length>Gy))return Tn.new(t).parseWith(()=>Tn.readIPv4Addr())}function Ra(t){if(t.includes("%")&&(t=t.split("%")[0]),!(t.length>ff))return Tn.new(t).parseWith(()=>Tn.readIPv6Addr())}function ho(t){if(t.includes("%")&&(t=t.split("%")[0]),!(t.length>ff))return Tn.new(t).parseWith(()=>Tn.readIPAddr())}var E4=parseInt("0xFFFF",16),S4=new Uint8Array([0,0,0,0,0,0,0,0,0,0,255,255]);function we(t,e="utf8"){let r=fo[e];if(r==null)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?vr(globalThis.Buffer.from(t,"utf-8")):r.decoder.decode(`${r.prefix}${t}`)}function po(t){return!!ka(t)}function yo(t){return!!Ra(t)}function go(t){return!!ho(t)}var df=po,Zy=yo,La=function(t){let e=0;if(t=t.toString().trim(),df(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=df(r[n]),s;o&&(s=La(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")},pf=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 _n={},Na={},jy=[[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"]];jy.forEach(t=>{let e=Jy(...t);Na[e.code]=e,_n[e.name]=e});function Jy(t,e,r,n,i){return{code:t,size:e,name:r,resolvable:!!n,path:!!i}}function ye(t){if(typeof t=="number"){if(Na[t]!=null)return Na[t];throw new Error(`no protocol with code: ${t}`)}else if(typeof t=="string"){if(_n[t]!=null)return _n[t];throw new Error(`no protocol with name: ${t}`)}throw new Error(`invalid protocol id type: ${typeof t}`)}var uS=ye("ip4"),fS=ye("ip6"),lS=ye("ipcidr");function Ua(t,e){switch(ye(t).code){case 4:case 41:return tg(e);case 42:return mf(e);case 6:case 273:case 33:case 132:return bf(e).toString();case 53:case 54:case 55:case 56:case 400:case 449:case 777:return mf(e);case 421:return og(e);case 444:return xf(e);case 445:return xf(e);case 466:return ig(e);default:return se(e,"base16")}}function Oa(t,e){switch(ye(t).code){case 4:return yf(e);case 41:return yf(e);case 42:return gf(e);case 6:case 273:case 33:case 132:return Fa(parseInt(e,10));case 53:case 54:case 55:case 56:case 400:case 449:case 777:return gf(e);case 421:return rg(e);case 444:return sg(e);case 445:return ag(e);case 466:return ng(e);default:return we(e,"base16")}}var Pa=Object.values(Kt).map(t=>t.decoder),eg=function(){let t=Pa[0].or(Pa[1]);return Pa.slice(2).forEach(e=>t=t.or(e)),t}();function yf(t){if(!go(t))throw new Error("invalid ip address");return La(t)}function tg(t){let e=pf(t,0,t.length);if(e==null)throw new Error("ipBuff is required");if(!go(e))throw new Error("invalid ip address");return e}function Fa(t){let e=new ArrayBuffer(2);return new DataView(e).setUint16(0,t),new Uint8Array(e)}function bf(t){return new DataView(t.buffer).getUint16(t.byteOffset)}function gf(t){let e=we(t),r=Uint8Array.from(Er(e.length));return pe([r,e],r.length+e.length)}function mf(t){let e=Dt(t);if(t=t.slice(st(e)),t.length!==e)throw new Error("inconsistent lengths");return se(t)}function rg(t){let e;t[0]==="Q"||t[0]==="1"?e=Vr(Te.decode(`z${t}`)).bytes:e=At.parse(t).multihash.bytes;let r=Uint8Array.from(Er(e.length));return pe([r,e],r.length+e.length)}function ng(t){let e=eg.decode(t),r=Uint8Array.from(Er(e.length));return pe([r,e],r.length+e.length)}function ig(t){let e=Dt(t),r=t.slice(st(e));if(r.length!==e)throw new Error("inconsistent lengths");return"u"+se(r,"base64url")}function og(t){let e=Dt(t),r=t.slice(st(e));if(r.length!==e)throw new Error("inconsistent lengths");return se(r,"base58btc")}function sg(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=Ct.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=Fa(n);return pe([r,i],r.length+i.length)}function ag(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=Ct.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=Fa(n);return pe([r,i],r.length+i.length)}function xf(t){let e=t.slice(0,t.length-2),r=t.slice(t.length-2),n=se(e,"base32"),i=bf(r);return`${n}:${i}`}function wf(t){t=Ka(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=ye(s);if(a.size===0){e.push([a.code]),r.push([a.code]);continue}if(o++,o>=i.length)throw Ef("invalid address: "+t);if(a.path===!0){n=Ka(i.slice(o).join("/")),e.push([a.code,Oa(a.code,n)]),r.push([a.code,n]);break}let c=Oa(a.code,i[o]);e.push([a.code,c]),r.push([a.code,Ua(a.code,c)])}return{string:vf(r),bytes:Va(e),tuples:e,stringTuples:r,path:n}}function Ma(t){let e=[],r=[],n=null,i=0;for(;i<t.length;){let o=Dt(t,i),s=st(o),a=ye(o),c=cg(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 Ef("Invalid address Uint8Array: "+se(t,"base16"));e.push([o,u]);let f=Ua(o,u);if(r.push([o,f]),a.path===!0){n=f;break}}return{bytes:Uint8Array.from(t),string:vf(r),tuples:e,stringTuples:r,path:n}}function vf(t){let e=[];return t.map(r=>{let n=ye(r[0]);return e.push(n.name),r.length>1&&r[1]!=null&&e.push(r[1]),null}),Ka(e.join("/"))}function Va(t){return pe(t.map(e=>{let r=ye(e[0]),n=Uint8Array.from(Er(r.code));return e.length>1&&e[1]!=null&&(n=pe([n,e[1]])),n}))}function cg(t,e){if(t.size>0)return t.size/8;if(t.size===0)return 0;{let r=Dt(e instanceof Uint8Array?e:Uint8Array.from(e));return r+st(r)}}function Ka(t){return"/"+t.trim().split("/").filter(e=>e).join("/")}function Ef(t){return new Error("Error parsing address: "+t)}var ug=Symbol.for("nodejs.util.inspect.custom"),Ha=Symbol.for("@multiformats/js-multiaddr/multiaddr"),fg=[ye("dns").code,ye("dns4").code,ye("dns6").code,ye("dnsaddr").code],mo=class t{bytes;#e;#t;#r;#n;[Ha]=!0;constructor(e){e==null&&(e="");let r;if(e instanceof Uint8Array)r=Ma(e);else if(typeof e=="string"){if(e.length>0&&e.charAt(0)!=="/")throw new Error(`multiaddr "${e}" must start with a "/"`);r=wf(e)}else if(Cf(e))r=Ma(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=ye("tcp"),a=ye("udp"),c=ye("ip4"),u=ye("ip6"),f=ye("dns6"),l=ye("ip6zone");for(let[g,d]of this.stringTuples())g===l.code&&(o=`%${d??""}`),fg.includes(g)&&(r=s.name,i=443,n=`${d??""}${o}`,e=g===f.code?6:4),(g===s.code||g===a.code)&&(r=ye(g).name,i=parseInt(d??"")),(g===c.code||g===u.code)&&(r=ye(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({},ye(e)))}protoCodes(){return this.#t.map(([e])=>e)}protoNames(){return this.#t.map(([e])=>ye(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(Va(r.slice(0,n)));return this}getPeerId(){try{let e=[];this.stringTuples().forEach(([n,i])=>{n===_n.p2p.code&&e.push([n,i]),n===_n["p2p-circuit"].code&&(e=[])});let r=e.pop();if(r?.[1]!=null){let n=r[1];return n[0]==="Q"||n[0]==="1"?se(Te.decode(`z${n}`),"base58btc"):se(At.parse(n).multihash.bytes,"base58btc")}return null}catch{return null}}getPath(){return this.#n}equals(e){return Ue(this.bytes,e.bytes)}async resolve(e){let r=this.protos().find(o=>o.resolvable);if(r==null)return[this];let n=Sf.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)}[ug](){return`Multiaddr(${this.#e})`}};var Sf=new Map;function Cf(t){return!!t?.[Ha]}function tr(t){return new mo(t)}var lg=t=>t.toString().split("/").slice(1),xi=t=>({match:e=>e.length<1?!1:t(e[0])?e.slice(1):!1,pattern:"fn"}),Le=t=>({match:e=>xi(r=>r===t).match(e),pattern:t}),wo=()=>({match:t=>xi(e=>typeof e=="string").match(t),pattern:"{string}"}),Af=()=>({match:t=>xi(e=>!isNaN(parseInt(e))).match(t),pattern:"{number}"}),mt=()=>({match:t=>{if(t.length<2||t[0]!=="p2p"&&t[0]!=="ipfs")return!1;if(t[1].startsWith("Q")||t[1].startsWith("1"))try{Te.decode(`z${t[1]}`)}catch{return!1}else return!1;return t.slice(2)},pattern:"/p2p/{peerid}"}),xo=()=>({match:t=>{if(t.length<2||t[0]!=="certhash")return!1;try{ca.decode(t[1])}catch{return!1}return t.slice(2)},pattern:"/certhash/{certhash}"}),Mt=t=>({match:e=>{let r=t.match(e);return r===!1?e:r},pattern:`optional(${t.pattern})`}),Vt=(...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(", ")})`}),Ne=(...t)=>({match:e=>{for(let r of t){let n=r.match(e);if(n===!1)return!1;e=n}return e},pattern:`and(${t.map(e=>e.pattern).join(", ")})`});function Ke(...t){function e(i){let o=lg(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 za=Ne(Le("dns4"),wo()),Ga=Ne(Le("dns6"),wo()),Wa=Ne(Le("dnsaddr"),wo()),Df=Ne(Le("dns"),wo()),MS=Ke(za),VS=Ke(Ga),HS=Ke(Wa),qS=Ke(Vt(Df,Wa,za,Ga)),Bf=Ne(Le("ip4"),xi(po)),If=Ne(Le("ip6"),xi(yo)),Tf=Vt(Bf,If),bi=Vt(Tf,Df,za,Ga,Wa),zS=Ke(bi),GS=Ke(Bf),WS=Ke(If),$S=Ke(Tf),vo=Ne(bi,Le("tcp"),Af()),wi=Ne(bi,Le("udp"),Af()),hg=Vt(vo,wi),YS=Ke(vo),XS=Ke(wi),$a=Ne(wi,Le("quic")),Eo=Ne(wi,Le("quic-v1")),dg=Vt($a,Eo),ZS=Ke($a),QS=Ke(Eo),qa=Vt(bi,vo,wi,$a,Eo),_f=Vt(Ne(qa,Le("ws"),Mt(mt()))),jS=Ke(_f),kf=Vt(Ne(qa,Le("wss"),Mt(mt())),Ne(qa,Le("tls"),Le("ws"),Mt(mt()))),JS=Ke(kf),Rf=Ne(hg,Le("webrtc-direct"),xo(),Mt(xo()),Mt(mt())),Lf=Ke(Rf),Nf=Ne(Eo,Le("webtransport"),xo(),xo(),Mt(mt())),e6=Ke(Nf),bo=Vt(_f,kf,Ne(vo,Mt(mt())),Ne(dg,Mt(mt())),Ne(bi,Mt(mt())),Rf,Nf,mt()),t6=Ke(bo),pg=Ne(bo,Le("p2p-circuit"),mt()),r6=Ke(pg),yg=Vt(Ne(bo,Le("p2p-circuit"),Le("webrtc"),mt()),Ne(bo,Le("webrtc"),Mt(mt())),Le("webrtc")),Pf=Ke(yg);var dt;(function(t){t.ERR_ALREADY_ABORTED="ERR_ALREADY_ABORTED",t.ERR_DATA_CHANNEL="ERR_DATA_CHANNEL",t.ERR_CONNECTION_CLOSED="ERR_CONNECTION_CLOSED",t.ERR_HASH_NOT_SUPPORTED="ERR_HASH_NOT_SUPPORTED",t.ERR_INVALID_MULTIADDR="ERR_INVALID_MULTIADDR",t.ERR_INVALID_FINGERPRINT="ERR_INVALID_FINGERPRINT",t.ERR_INVALID_PARAMETERS="ERR_INVALID_PARAMETERS",t.ERR_NOT_IMPLEMENTED="ERR_NOT_IMPLEMENTED",t.ERR_TOO_MANY_INBOUND_PROTOCOL_STREAMS="ERR_TOO_MANY_INBOUND_PROTOCOL_STREAMS",t.ERR_TOO_MANY_OUTBOUND_PROTOCOL_STREAMS="ERR_TOO_MANY_OUTBOUND_PROTOCOL_STREAMS"})(dt||(dt={}));var Sr=class extends W{constructor(e,r){super(`WebRTC transport error: ${e}`,r??""),this.name="WebRTCTransportError"}};var Ya=class extends Sr{constructor(e,r){super(`[stream: ${e}] data channel error: ${r}`,dt.ERR_DATA_CHANNEL),this.name="WebRTC/DataChannelError"}};function ec(t,e){return new Ya(t,e)}var Xa=class extends Sr{constructor(e){super(`There was a problem with the Multiaddr which was passed in: ${e}`,dt.ERR_INVALID_MULTIADDR),this.name="WebRTC/InappropriateMultiaddrError"}};function So(t){return new Xa(t)}var Za=class extends Sr{constructor(e){super(`There was a problem with a provided argument: ${e}`,dt.ERR_INVALID_PARAMETERS),this.name="WebRTC/InvalidArgumentError"}};function vi(t){return new Za(t)}var Qa=class extends Sr{constructor(e,r){super(`Invalid fingerprint "${e}" within ${r}`,dt.ERR_INVALID_FINGERPRINT),this.name="WebRTC/InvalidFingerprintError"}};function tc(t,e){return new Qa(t,e)}var ja=class extends Sr{constructor(e){super(`A method (${e}) was called though it has been intentionally left unimplemented.`,dt.ERR_NOT_IMPLEMENTED),this.name="WebRTC/UnimplementedError"}};function Uf(t){return new ja(t)}var Ja=class extends Sr{constructor(e){super(`unsupported hash algorithm: ${e}`,dt.ERR_HASH_NOT_SUPPORTED),this.name="WebRTC/UnsupportedHashAlgorithmError"}};function Of(t){return new Ja(t)}var Ff=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))},gg=function(){function t(e,r,n){this.name=e,this.version=r,this.os=n,this.type="browser"}return t}();var mg=function(){function t(e){this.version=e,this.type="node",this.name="node",this.os=process.platform}return t}();var xg=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 bg=function(){function t(){this.type="bot",this.bot=!0,this.name="bot",this.version=null,this.os=null}return t}();var wg=function(){function t(){this.type="react-native",this.name="react-native",this.version=null,this.os=null}return t}();var vg=/alexa|bot|crawl(er|ing)|facebookexternalhit|feedburner|google web preview|nagios|postrank|pingdom|slurp|spider|yahoo!|yandex/,Eg=/(nuhk|curl|Googlebot|Yammybot|Openbot|Slurp|MSNBot|Ask\ Jeeves\/Teoma|ia_archiver)/,Kf=3,Sg=[["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",vg]],Mf=[["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 Hf(t){return t?Vf(t):typeof document>"u"&&typeof navigator<"u"&&navigator.product==="ReactNative"?new wg:typeof navigator<"u"?Vf(navigator.userAgent):Dg()}function Cg(t){return t!==""&&Sg.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 Vf(t){var e=Cg(t);if(!e)return null;var r=e[0],n=e[1];if(r==="searchbot")return new bg;var i=n[1]&&n[1].split(".").join("_").split("_").slice(0,3);i?i.length<Kf&&(i=Ff(Ff([],i,!0),Bg(Kf-i.length),!0)):i=[];var o=i.join("."),s=Ag(t),a=Eg.exec(t);return a&&a[1]?new xg(r,o,s,a[1]):new gg(r,o,s)}function Ag(t){for(var e=0,r=Mf.length;e<r;e++){var n=Mf[e],i=n[0],o=n[1],s=o.exec(t);if(s)return i}return null}function Dg(){var t=typeof process<"u"&&process.version;return t?new mg(process.version.slice(1)):null}function Bg(t){for(var e=[],r=0;r<t;r++)e.push("0");return e}function Ze(){let t={};return t.promise=new Promise((e,r)=>{t.resolve=e,t.reject=r}),t}var kn=class extends Error{constructor(e){super(e),this.name="TimeoutError"}},rc=class extends Error{constructor(e){super(),this.name="AbortError",this.message=e}},qf=t=>globalThis.DOMException===void 0?new rc(t):new DOMException(t),zf=t=>{let e=t.reason===void 0?qf("This operation was aborted."):t.reason;return e instanceof Error?e:qf(e)};function zr(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(zf(h)),h.addEventListener("abort",()=>{f(zf(h))})}if(r===Number.POSITIVE_INFINITY){t.then(u,f);return}let l=new kn;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 nc=ke("libp2p:webrtc:utils"),Gf=Hf(),Ei=Gf!=null&&Gf.name==="firefox",Co=async function*(){},Ao=async t=>{},Ig=30*1e3;function Wf(t,e,r=Ig){t.readyState==="open"&&Promise.resolve().then(async()=>{if(t.bufferedAmount>0){nc("%s drain channel with %d buffered bytes",e,t.bufferedAmount);let n=Ze(),i=!1;t.bufferedAmountLowThreshold=0;let o=()=>{i||(nc("%s drain channel closed before drain",e),n.resolve())};t.addEventListener("close",o,{once:!0}),t.addEventListener("bufferedamountlow",()=>{i=!0,t.removeEventListener("close",o),n.resolve()}),await zr(n.promise,{milliseconds:r})}}).then(async()=>{t.readyState==="open"&&t.close()}).catch(n=>{nc.error("error closing outbound stream",n)})}var ic=ke("libp2p:webrtc:maconn"),Gr=class{peerConnection;remoteAddr;timeline;metrics;source=Co();sink=Ao;constructor(e){this.remoteAddr=e.remoteAddr,this.timeline=e.timeline,this.peerConnection=e.peerConnection;let r=this.peerConnection.connectionState;this.peerConnection.onconnectionstatechange=()=>{ic.trace("peer connection state change",this.peerConnection.connectionState,"initial state",r),(this.peerConnection.connectionState==="disconnected"||this.peerConnection.connectionState==="failed"||this.peerConnection.connectionState==="closed")&&(this.timeline.close=Date.now())}}async close(e){ic.trace("closing connection"),this.peerConnection.close(),this.timeline.close=Date.now(),this.metrics?.increment({close:!0})}abort(e){ic.error("closing connection due to error",e),this.peerConnection.close(),this.timeline.close=Date.now(),this.metrics?.increment({abort:!0})}};var Si=class extends Error{constructor(e,r){super(e??"The operation was aborted"),this.type="aborted",this.code=r??"ABORT_ERR"}};function $f(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 Do(t,e,r){let n=r??{},i=$f(t);async function*o(){let s,a=()=>{s?.()};for(e.addEventListener("abort",a);;){let c;try{if(e.aborted){let{abortMessage:f,abortCode:l}=n;throw new Si(f,l)}let u=new Promise((f,l)=>{s=()=>{let{abortMessage:h,abortCode:g}=n;l(new Si(h,g))}});c=await Promise.race([u,i.next()]),s=null}catch(u){e.removeEventListener("abort",a);let f=u.type==="aborted"&&e.aborted;if(f&&n.onAbort!=null&&n.onAbort(t),typeof i.return=="function")try{let l=i.return();l instanceof Promise&&l.catch(h=>{n.onReturnError!=null&&n.onReturnError(h)})}catch(l){n.onReturnError!=null&&n.onReturnError(l)}if(f&&n.returnOnAbort===!0)return;throw u}if(c.done===!0)break;yield c.value}e.removeEventListener("abort",a)}return o()}var Bo=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}},Rn=class{size;hwm;head;tail;constructor(e={}){this.hwm=e.splitLimit??16,this.head=new Bo(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 Bo(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 oc=class extends Error{type;code;constructor(e,r){super(e??"The operation was aborted"),this.type="aborted",this.code=r??"ABORT_ERR"}};function Ht(t={}){return Tg(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 Tg(t,e){e=e??{};let r=e.onEnd,n=new Rn,i,o,s,a=Ze(),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=Ze()})}},u=y=>o!=null?o(y):(n.push(y),i),f=y=>(n=new Rn,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 Rn,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((C,v)=>{x=()=>{v(new oc)},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}},i}var Ln=class extends Error{type;code;constructor(e,r){super(e??"The operation was aborted"),this.type="aborted",this.code=r??"ABORT_ERR"}};async function Wr(t,e,r){if(e==null)return t;if(e.aborted)return Promise.reject(new Ln(r?.errorMessage,r?.errorCode));let n,i=new Ln(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 Xf=Symbol.for("@achingbrain/uint8arraylist");function Yf(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 Io(t){return!!t?.[Xf]}var Qe=class t{constructor(...e){Object.defineProperty(this,Xf,{value:!0}),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(Io(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(Io(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=Yf(this.bufs,e);return r.buf[r.index]}set(e,r){let n=Yf(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(Io(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 pe(n,i)}subarray(e,r){let{bufs:n,length:i}=this._subList(e,r);return n.length===1?n[0]:pe(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(!Io(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=Xe(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=er(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=er(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=er(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=Xe(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=er(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=er(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=er(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=er(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=er(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(!Ue(this.bufs[r],e.bufs[r]))return!1;return!0}static fromUint8Arrays(e,r){let n=new t;return n.bufs=e,r==null&&(r=e.reduce((i,o)=>i+o.byteLength,0)),n.length=r,n}};var _g="ERR_STREAM_RESET",kg="ERR_SINK_INVALID_STATE",Rg=5e3;function sc(t){return t!=null&&typeof t.then=="function"}var To=class{id;direction;timeline;protocol;metadata;source;status;readStatus;writeStatus;sinkController;sinkEnd;endErr;streamSource;onEnd;onCloseRead;onCloseWrite;onReset;onAbort;sendCloseWriteTimeout;log;constructor(e){this.sinkController=new AbortController,this.sinkEnd=Ze(),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??Rg,this.onEnd=e.onEnd,this.onCloseRead=e?.onCloseRead,this.onCloseWrite=e?.onCloseWrite,this.onReset=e?.onReset,this.onAbort=e?.onAbort,this.source=this.streamSource=Ht({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"`,kg);try{this.writeStatus="writing";let r={signal:this.sinkController.signal};if(this.direction==="outbound"){let n=this.sendNewStream(r);sc(n)&&await n}e=Do(e,this.sinkController.signal,{returnOnAbort:!0}),this.log.trace("sink reading from source");for await(let n of e){n=n instanceof Uint8Array?new Qe(n):n;let i=this.sendData(n,r);sc(i)&&await i}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.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.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)]),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"),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();sc(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",_g);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=st(t),r=Xe(e);return Er(t,r),ko.bytes=e,r};ko.bytes=0;function $r(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)}()}$r.single=(t,e)=>{e=e??{};let r=e.lengthEncoder??ko;return new Qe(r(t.byteLength),t)};var Nn=$e(jf(),1);var Ng=8,Pg=1024*1024*4,Yr;(function(t){t[t.LENGTH=0]="LENGTH",t[t.DATA=1]="DATA"})(Yr||(Yr={}));var ac=t=>{let e=Dt(t);return ac.bytes=st(e),e};ac.bytes=0;function rr(t,e){let r=new Qe,n=Yr.LENGTH,i=-1,o=e?.lengthDecoder??ac,s=e?.maxLengthLength??Ng,a=e?.maxDataLength??Pg;function*c(){for(;r.byteLength>0;){if(n===Yr.LENGTH)try{if(i=o(r),i<0)throw(0,Nn.default)(new Error("invalid message length"),"ERR_INVALID_MSG_LENGTH");if(i>a)throw(0,Nn.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=Yr.DATA}catch(u){if(u instanceof RangeError){if(r.byteLength>s)throw(0,Nn.default)(new Error("message length length too long"),"ERR_MSG_LENGTH_TOO_LONG");break}throw u}if(n===Yr.DATA){if(r.byteLength<i)break;let u=r.sublist(0,i);r.consume(i),e?.onData!=null&&e.onData(u),yield u,n=Yr.LENGTH}}}return _o(t)?async function*(){for await(let u of t)r.append(u),yield*c();if(r.byteLength>0)throw(0,Nn.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,Nn.default)(new Error("unexpected end of input"),"ERR_UNEXPECTED_EOF")}()}rr.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 rr(n,{...e??{},onLength:o=>{r=o}})};var Ug=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 Og(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}=Ug(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=zr(i,{milliseconds:r.timeout});return o.cancel=n,o}return i}function Jf(t,e,r){typeof r=="function"&&(r={filter:r}),r={...r,count:1,resolveImmediately:!1};let n=Og(t,e,r),i=n.then(o=>o[0]);return i.cancel=n.cancel,i}var uc=new Float32Array([-0]),Cr=new Uint8Array(uc.buffer);function el(t,e,r){uc[0]=t,e[r]=Cr[0],e[r+1]=Cr[1],e[r+2]=Cr[2],e[r+3]=Cr[3]}function tl(t,e){return Cr[0]=t[e],Cr[1]=t[e+1],Cr[2]=t[e+2],Cr[3]=t[e+3],uc[0]}var fc=new Float64Array([-0]),rt=new Uint8Array(fc.buffer);function rl(t,e,r){fc[0]=t,e[r]=rt[0],e[r+1]=rt[1],e[r+2]=rt[2],e[r+3]=rt[3],e[r+4]=rt[4],e[r+5]=rt[5],e[r+6]=rt[6],e[r+7]=rt[7]}function nl(t,e){return rt[0]=t[e],rt[1]=t[e+1],rt[2]=t[e+2],rt[3]=t[e+3],rt[4]=t[e+4],rt[5]=t[e+5],rt[6]=t[e+6],rt[7]=t[e+7],fc[0]}var Fg=BigInt(Number.MAX_SAFE_INTEGER),Kg=BigInt(Number.MIN_SAFE_INTEGER),at=class t{lo;hi;constructor(e,r){this.lo=e|0,this.hi=r|0}toNumber(e=!1){if(!e&&this.hi>>>31>0){let r=~this.lo+1>>>0,n=~this.hi>>>0;return r===0&&(n=n+1>>>0),-(r+n*4294967296)}return this.lo+this.hi*4294967296}toBigInt(e=!1){if(e)return BigInt(this.lo>>>0)+(BigInt(this.hi>>>0)<<32n);if(this.hi>>>31){let r=~this.lo+1>>>0,n=~this.hi>>>0;return r===0&&(n=n+1>>>0),-(BigInt(r)+(BigInt(n)<<32n))}return BigInt(this.lo>>>0)+(BigInt(this.hi>>>0)<<32n)}toString(e=!1){return this.toBigInt(e).toString()}zzEncode(){let e=this.hi>>31;return this.hi=((this.hi<<1|this.lo>>>31)^e)>>>0,this.lo=(this.lo<<1^e)>>>0,this}zzDecode(){let e=-(this.lo&1);return this.lo=((this.lo>>>1|this.hi<<31)^e)>>>0,this.hi=(this.hi>>>1^e)>>>0,this}length(){let e=this.lo,r=(this.lo>>>28|this.hi<<4)>>>0,n=this.hi>>>24;return n===0?r===0?e<16384?e<128?1:2:e<2097152?3:4:r<16384?r<128?5:6:r<2097152?7:8:n<128?9:10}static fromBigInt(e){if(e===0n)return Xr;if(e<Fg&&e>Kg)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>il&&(i=0n,++n>il&&(n=0n))),new t(Number(i),Number(n))}static fromNumber(e){if(e===0)return Xr;let r=e<0;r&&(e=-e);let n=e>>>0,i=(e-n)/4294967296>>>0;return r&&(i=~i>>>0,n=~n>>>0,++n>4294967295&&(n=0,++i>4294967295&&(i=0))),new t(n,i)}static from(e){return typeof e=="number"?t.fromNumber(e):typeof e=="bigint"?t.fromBigInt(e):typeof e=="string"?t.fromBigInt(BigInt(e)):e.low!=null||e.high!=null?new t(e.low>>>0,e.high>>>0):Xr}},Xr=new at(0,0);Xr.toBigInt=function(){return 0n};Xr.zzEncode=Xr.zzDecode=function(){return this};Xr.length=function(){return 1};var il=4294967296n;function ol(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 sl(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 lc(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 Bt(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 hc=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,Bt(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 Bt(this,4);return Ro(this.buf,this.pos+=4)}sfixed32(){if(this.pos+4>this.len)throw Bt(this,4);return Ro(this.buf,this.pos+=4)|0}float(){if(this.pos+4>this.len)throw Bt(this,4);let e=tl(this.buf,this.pos);return this.pos+=4,e}double(){if(this.pos+8>this.len)throw Bt(this,4);let e=nl(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 Bt(this,e);return this.pos+=e,r===n?new Uint8Array(0):this.buf.subarray(r,n)}string(){let e=this.bytes();return sl(e,0,e.length)}skip(e){if(typeof e=="number"){if(this.pos+e>this.len)throw Bt(this,e);this.pos+=e}else do if(this.pos>=this.len)throw Bt(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 at(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 Bt(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 Bt(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 Bt(this,8);let e=Ro(this.buf,this.pos+=4),r=Ro(this.buf,this.pos+=4);return new at(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 dc(t){return new hc(t instanceof Uint8Array?t:t.subarray())}function It(t,e){let r=dc(t);return e.decode(r)}function pc(t){let e=t??8192,r=e>>>1,n,i=e;return function(s){if(s<1||s>r)return Xe(s);i+s>e&&(n=Xe(e),i=0);let a=n.subarray(i,i+=s);return i&7&&(i=(i|7)+1),a}}var Zr=class{fn;len;next;val;constructor(e,r,n){this.fn=e,this.len=r,this.next=void 0,this.val=n}};function yc(){}var mc=class{head;tail;len;next;constructor(e){this.head=e.head,this.tail=e.tail,this.len=e.len,this.next=e.states}},Mg=pc();function Vg(t){return globalThis.Buffer!=null?Xe(t):Mg(t)}var Di=class{len;head;tail;states;constructor(){this.len=0,this.head=new Zr(yc,0,0),this.tail=this.head,this.states=null}_push(e,r,n){return this.tail=this.tail.next=new Zr(e,r,n),this.len+=r,this}uint32(e){return this.len+=(this.tail=this.tail.next=new xc((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(Ci,10,at.fromNumber(e)):this.uint32(e)}sint32(e){return this.uint32((e<<1^e>>31)>>>0)}uint64(e){let r=at.fromBigInt(e);return this._push(Ci,r.length(),r)}uint64Number(e){let r=at.fromNumber(e);return this._push(Ci,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=at.fromBigInt(e).zzEncode();return this._push(Ci,r.length(),r)}sint64Number(e){let r=at.fromNumber(e).zzEncode();return this._push(Ci,r.length(),r)}sint64String(e){return this.sint64(BigInt(e))}bool(e){return this._push(gc,1,e?1:0)}fixed32(e){return this._push(Ai,4,e>>>0)}sfixed32(e){return this.fixed32(e)}fixed64(e){let r=at.fromBigInt(e);return this._push(Ai,4,r.lo)._push(Ai,4,r.hi)}fixed64Number(e){let r=at.fromNumber(e);return this._push(Ai,4,r.lo)._push(Ai,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(el,4,e)}double(e){return this._push(rl,8,e)}bytes(e){let r=e.length>>>0;return r===0?this._push(gc,1,0):this.uint32(r)._push(qg,r,e)}string(e){let r=ol(e);return r!==0?this.uint32(r)._push(lc,r,e):this._push(gc,1,0)}fork(){return this.states=new mc(this),this.head=this.tail=new Zr(yc,0,0),this.len=0,this}reset(){return this.states!=null?(this.head=this.states.head,this.tail=this.states.tail,this.len=this.states.len,this.states=this.states.next):(this.head=this.tail=new Zr(yc,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=Vg(this.len),n=0;for(;e!=null;)e.fn(e.val,r,n),n+=e.len,e=e.next;return r}};function gc(t,e,r){e[r]=t&255}function Hg(t,e,r){for(;t>127;)e[r++]=t&127|128,t>>>=7;e[r]=t}var xc=class extends Zr{next;constructor(e,r){super(Hg,e,r),this.next=void 0}};function Ci(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 Ai(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 qg(t,e,r){e.set(t,r)}globalThis.Buffer!=null&&(Di.prototype.bytes=function(t){let e=t.length>>>0;return this.uint32(e),e>0&&this._push(zg,e,t),this},Di.prototype.string=function(t){let e=globalThis.Buffer.byteLength(t);return this.uint32(e),e>0&&this._push(Gg,e,t),this});function zg(t,e,r){e.set(t,r)}function Gg(t,e,r){t.length<40?lc(t,e,r):e.utf8Write!=null?e.utf8Write(t,r):e.set(we(t),r)}function bc(){return new Di}function Tt(t,e){let r=bc();return e.encode(t,r,{lengthDelimited:!1}),r.finish()}var Pn;(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"})(Pn||(Pn={}));function Lo(t,e,r,n){return{name:t,type:e,encode:r,decode:n}}function Qr(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",Pn.VARINT,r,n)}function _t(t,e){return Lo("message",Pn.LENGTH_DELIMITED,t,e)}var ct;(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=()=>Qr(r)}(e=t.Flag||(t.Flag={}));let n;t.codec=()=>(n==null&&(n=_t((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=>Tt(i,t.codec()),t.decode=i=>It(i,t.codec())})(ct||(ct={}));var Wg=16*1024*1024,$g=30*1e3,Yg=5,Xg=2,Zg=16*1024,Qg=5e3,wc=class extends To{channel;incomingData;messageQueue;maxBufferedAmount;bufferedAmountLowEventTimeout;maxMessageSize;receiveFinAck;finAckTimeout;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 zr(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=Ht(),this.messageQueue=new Qe,this.bufferedAmountLowEventTimeout=e.bufferedAmountLowEventTimeout??$g,this.maxBufferedAmount=e.maxBufferedAmount??Wg,this.maxMessageSize=(e.maxMessageSize??Zg)-Yg-Xg,this.receiveFinAck=Ze(),this.finAckTimeout=e.closeTimeout??Qg,this.channel.readyState){case"open":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.messageQueue!=null&&this.messageQueue.byteLength>0&&(this.log.trace("dataChannel opened, sending queued messages",this.messageQueue.byteLength,this.channel.readyState),this._sendMessage(this.messageQueue).catch(o=>{this.log.error("error sending queued messages",o),this.abort(o)})),this.messageQueue=void 0},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 rr(this.incomingData)){let o=n.processIncomingProtobuf(i);o!=null&&n.sourcePush(new Qe(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{await Jf(this.channel,"bufferedamountlow",{timeout:this.bufferedAmountLowEventTimeout})}catch(n){throw n instanceof kn?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");if(this.channel.readyState==="open")for(let n of e)this.channel.send(n);else if(this.channel.readyState==="connecting")this.messageQueue==null&&(this.messageQueue=new Qe),this.messageQueue.append(e);else throw this.log.error("unknown datachannel state %s",this.channel.readyState),new W("Unknown datachannel state","ERR_INVALID_STATE")}async sendData(e){for(e=e.sublist();e.byteLength>0;){let r=Math.min(e.byteLength,this.maxMessageSize),n=e.subarray(0,r),i=ct.encode({message:n}),o=$r.single(i);await this._sendMessage(o),e.consume(r)}}async sendReset(){await this._sendFlag(ct.Flag.RESET)}async sendCloseWrite(e){if(await this._sendFlag(ct.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(ct.Flag.STOP_SENDING)}processIncomingProtobuf(e){let r=ct.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===ct.Flag.FIN&&(this.remoteCloseWrite(),this.log.trace("sending FIN_ACK"),this._sendFlag(ct.Flag.FIN_ACK).catch(n=>{this.log.error("error sending FIN_ACK immediately",n)})),r.flag===ct.Flag.RESET&&this.reset(),r.flag===ct.Flag.STOP_SENDING&&this.remoteCloseRead(),r.flag===ct.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 not open",e.toString()),!1;this.log.trace("sending flag %s",e.toString());let r=ct.encode({flag:e}),n=$r.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 Un(t){let{channel:e,direction:r}=t;return new wc({id:r==="inbound"?`i${e.id}`:`r${e.id}`,log:ke(`libp2p:webrtc:stream:${r}:${e.id}`),...t})}var jg=ke("libp2p:webrtc:muxer"),cl="/webrtc",jr=class{protocol;peerConnection;bufferedStreams=[];metrics;dataChannelOptions;constructor(e){this.peerConnection=e.peerConnection,this.metrics=e.metrics,this.protocol=e.protocol??cl,this.dataChannelOptions=e.dataChannelOptions??{},this.peerConnection.ondatachannel=({channel:r})=>{let n={},i=Un({channel:r,direction:"inbound",onEnd:o=>{n.onEnd(o)},...this.dataChannelOptions});n.stream=i,n.channel=r,n.onEnd=()=>{this.bufferedStreams=this.bufferedStreams.filter(o=>o.stream.id!==i.id)},this.bufferedStreams.push(n)}}createStreamMuxer(e){return new vc({...e,peerConnection:this.peerConnection,dataChannelOptions:this.dataChannelOptions,metrics:this.metrics,streams:this.bufferedStreams,protocol:this.protocol})}},vc=class{init;streams;protocol;peerConnection;dataChannelOptions;metrics;constructor(e){this.init=e,this.streams=e.streams.map(r=>r.stream),this.peerConnection=e.peerConnection,this.protocol=e.protocol??cl,this.metrics=e.metrics,this.dataChannelOptions=e.dataChannelOptions??{},this.peerConnection.ondatachannel=({channel:r})=>{let n=Un({channel:r,direction:"inbound",onEnd:()=>{this.#e(n,r)},...this.dataChannelOptions});this.streams.push(n),this.metrics?.increment({incoming_stream:!0}),e?.onIncomingStream?.(n)},this.init.streams.length>0&&queueMicrotask(()=>{this.init.streams.forEach(r=>{r.onEnd=()=>{this.#e(r.stream,r.channel)},this.metrics?.increment({incoming_stream:!0}),this.init?.onIncomingStream?.(r.stream)})})}#e(e,r){jg.trace("stream %s %s %s onEnd",e.direction,e.id,e.protocol),Wf(r,`${e.direction} ${e.id} ${e.protocol}`,this.dataChannelOptions.drainTimeout),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=Co();sink=Ao;newStream(){let e=this.peerConnection.createDataChannel(""),r=Un({channel:e,direction:"outbound",onEnd:()=>{this.#e(r,e)},...this.dataChannelOptions});return this.streams.push(r),this.metrics?.increment({outgoing_stream:!0}),r}};var On=globalThis.RTCPeerConnection,No=globalThis.RTCSessionDescription,ul=globalThis.RTCIceCandidate;var Po=class extends Error{code;constructor(e,r){super(e),this.code=r}},Ec=class extends Po{type;constructor(e){super(e,"ABORT_ERR"),this.type="aborted"}};function fl(t){let e=Ht();t.sink(e).catch(o=>{e.end(o)}),t.sink=async o=>{for await(let s of o)e.push(s);e.end()};let r=t.source;t.source[Symbol.iterator]!=null?r=t.source[Symbol.iterator]():t.source[Symbol.asyncIterator]!=null&&(r=t.source[Symbol.asyncIterator]());let n=new Qe;return{read:async(o,s)=>{s?.signal?.throwIfAborted();let a,c=new Promise((u,f)=>{a=()=>{f(new Ec("Read aborted"))},s?.signal?.addEventListener("abort",a)});try{if(o==null){let{done:f,value:l}=await Promise.race([r.next(),c]);return f===!0?new Qe:l}for(;n.byteLength<o;){let{value:f,done:l}=await Promise.race([r.next(),c]);if(l===!0)throw new Po("unexpected end of input","ERR_UNEXPECTED_EOF");n.append(f)}let u=n.sublist(0,o);return n.consume(o),u}finally{a!=null&&s?.signal?.removeEventListener("abort",a)}},write:async(o,s)=>{s?.signal?.throwIfAborted(),o instanceof Uint8Array?e.push(o):e.push(o.subarray()),await e.onEmpty(s)},unwrap:()=>{let o=t.source;return t.source=async function*(){yield*n,yield*o}(),t}}}var Uo=class extends Error{code;constructor(e,r){super(e),this.code=r}},ll=t=>Dt(t);ll.bytes=0;function Bi(t,e){let r=fl(t);return{read:async i=>{let o=-1,s=new Qe,a=e?.lengthDecoder??ll;for(;;){s.append(await r.read(1,i));try{o=a(s)}catch(c){if(c instanceof RangeError)continue;throw c}if(o>-1)break;if(e?.maxLengthLength!=null&&s.byteLength>e.maxLengthLength)throw new Uo("message length length too long","ERR_MSG_LENGTH_TOO_LONG")}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($r.single(i,e),o)},unwrap:()=>r.unwrap()}}function Oo(t,e){let r=Bi(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)},pb:i=>({read:async o=>n.read(i,o),write:async(o,s)=>n.write(o,i,s),unwrap:()=>n}),unwrap:()=>r.unwrap()};return n}var nt;(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=()=>Qr(r)}(e=t.Type||(t.Type={}));let n;t.codec=()=>(n==null&&(n=_t((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=>Tt(i,t.codec()),t.decode=i=>It(i,t.codec())})(nt||(nt={}));function hl(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 Fn=ke("libp2p:webrtc:peer:util"),Fo=async(t,e,r,n)=>{let i=new AbortController;t.promise.then(()=>{i.abort()},()=>{i.abort()});let o=hl([i.signal,n.signal]),s=Do(r.unwrap().unwrap().source,o,{returnOnAbort:!0});try{for await(let a of rr(s)){let c=nt.decode(a);if(c.type!==nt.Type.ICE_CANDIDATE)throw new W("ICE candidate message expected","ERR_NOT_ICE_CANDIDATE");let u=JSON.parse(c.data??"null");u===""&&(Fn.trace("end-of-candidates for this generation received"),u={candidate:"",sdpMid:"0",sdpMLineIndex:0}),u===null&&(Fn.trace("end-of-candidates received"),u={candidate:null,sdpMid:"0",sdpMLineIndex:0});let f=new ul(u);Fn.trace("%s received new ICE candidate",n.direction,f);try{await e.addIceCandidate(f)}catch(l){Fn.error("%s bad candidate received",n.direction,l)}}}catch(a){Fn.error("%s error parsing ICE candidate",n.direction,a)}finally{o.clear()}if(n.signal?.aborted===!0)throw new Ln("Aborted while reading ICE candidates","ERR_ICE_CANDIDATES_READ_ABORTED");await Wr(t.promise,n.signal,{errorMessage:"Aborted before connected",errorCode:"ERR_ABORTED_BEFORE_CONNECTED"})};function Ko(t,e){t[Ei?"oniceconnectionstatechange":"onconnectionstatechange"]=r=>{switch(Fn.trace("receiver peerConnectionState state change: %s",t.connectionState),Ei?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}}}var xt=ke("libp2p:webrtc:initiate-connection");async function dl({peerConnection:t,signal:e,metrics:r,multiaddr:n,connectionManager:i,transportManager:o}){let{baseAddr:s}=pl(n);r?.dialerEvents.increment({open:!0}),xt.trace("dialing base address: %a",s);let a=s.getPeerId();if(a==null)throw new W("Relay peer was missing","ERR_INVALID_ADDRESS");let c=i.getConnections(qr(a)),u,f=!1;c.length===0?(u=await o.dial(s,{signal:e}),f=!0):u=c[0];try{let l=await u.newStream(Mo,{signal:e,runOnTransientConnection:!0}),h=Oo(l).pb(nt),g=Ze(),d=()=>{g.reject(new W("SDP handshake aborted","ERR_SDP_HANDSHAKE_ABORTED"))};try{Ko(t,g),e?.addEventListener("abort",d);let p=t.createDataChannel("init");t.onicecandidate=({candidate:x})=>{let C=JSON.stringify(x?.toJSON()??null);xt.trace("initiator sending ICE candidate %s",C),h.write({type:nt.Type.ICE_CANDIDATE,data:C},{signal:e}).catch(v=>{xt.error("error sending ICE candidate",v)})},t.onicecandidateerror=x=>{xt("initiator ICE candidate error",x)};let y=await t.createOffer();xt.trace("initiator send SDP offer %s",y.sdp),await h.write({type:nt.Type.SDP_OFFER,data:y.sdp},{signal:e}),await t.setLocalDescription(y).catch(x=>{throw xt.error("could not execute setLocalDescription",x),new W("Failed to set localDescription","ERR_SDP_HANDSHAKE_FAILED")});let m=await h.read({signal:e});if(m.type!==nt.Type.SDP_ANSWER)throw new W("remote should send an SDP answer","ERR_SDP_HANDSHAKE_FAILED");xt.trace("initiator receive SDP answer %s",m.data);let b=new No({type:"answer",sdp:m.data});return await t.setRemoteDescription(b).catch(x=>{throw xt.error("could not execute setRemoteDescription",x),new W("Failed to set remoteDescription","ERR_SDP_HANDSHAKE_FAILED")}),xt.trace("initiator read candidates until connected"),await Fo(g,t,h,{direction:"initiator",signal:e}),xt.trace("initiator connected, closing init channel"),p.close(),xt.trace("initiator closing signalling stream"),await h.unwrap().unwrap().close({signal:e}),xt.trace("initiator connected to remote address %s",n),{remoteAddress:n}}catch(p){throw t.close(),l.abort(p),p}finally{e?.removeEventListener("abort",d),t.onicecandidate=null,t.onicecandidateerror=null}}finally{if(f)try{await u.close({signal:e})}catch(l){u.abort(l)}}}var Vo=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 Jg(e,r))}},Sc=class extends Event{detail;constructor(e,r){super(e,r),this.detail=r?.detail}},Jg=globalThis.CustomEvent??Sc;var em=q("dns4"),tm=q("dns6"),rm=q("dnsaddr"),Jr=Pe(q("dns"),rm,em,tm),zo=Pe(q("ip4"),q("ip6")),Kn=Pe(X(zo,q("tcp")),X(Jr,q("tcp"))),Go=X(zo,q("udp")),nm=X(Go,q("utp")),im=X(Go,q("quic")),om=X(Go,q("quic-v1")),Cc=Pe(X(Kn,q("ws")),X(Jr,q("ws"))),Ho=Pe(X(Cc,q("p2p")),Cc),Ac=Pe(X(Kn,q("wss")),X(Jr,q("wss")),X(Kn,q("tls"),q("ws")),X(Jr,q("tls"),q("ws"))),qo=Pe(X(Ac,q("p2p")),Ac),Dc=Pe(X(Kn,q("http")),X(zo,q("http")),X(Jr,q("http"))),Bc=Pe(X(Kn,q("https")),X(zo,q("https")),X(Jr,q("https"))),yl=X(Go,q("webrtc-direct"),q("certhash")),xl=Pe(X(yl,q("p2p")),yl),gl=X(om,q("webtransport"),q("certhash"),q("certhash")),bl=Pe(X(gl,q("p2p")),gl),wl=Pe(X(Ho,q("p2p-webrtc-star"),q("p2p")),X(qo,q("p2p-webrtc-star"),q("p2p")),X(Ho,q("p2p-webrtc-star")),X(qo,q("p2p-webrtc-star"))),DC=Pe(X(Ho,q("p2p-websocket-star"),q("p2p")),X(qo,q("p2p-websocket-star"),q("p2p")),X(Ho,q("p2p-websocket-star")),X(qo,q("p2p-websocket-star"))),vl=Pe(X(Dc,q("p2p-webrtc-direct"),q("p2p")),X(Bc,q("p2p-webrtc-direct"),q("p2p")),X(Dc,q("p2p-webrtc-direct")),X(Bc,q("p2p-webrtc-direct"))),en=Pe(Cc,Ac,Dc,Bc,wl,vl,Kn,nm,im,Jr,xl,bl),BC=Pe(X(en,q("p2p-stardust"),q("p2p")),X(en,q("p2p-stardust"))),Ar=Pe(X(en,q("p2p")),wl,vl,xl,bl,q("p2p")),ml=Pe(X(Ar,q("p2p-circuit"),Ar),X(Ar,q("p2p-circuit")),X(q("p2p-circuit"),Ar),X(en,q("p2p-circuit")),X(q("p2p-circuit"),en),q("p2p-circuit")),El=()=>Pe(X(ml,El),ml),nr=El(),IC=Pe(X(nr,Ar,nr),X(Ar,nr),X(nr,Ar),nr,Ar);var TC=Pe(X(nr,q("webrtc"),q("p2p")),X(nr,q("webrtc")),X(en,q("webrtc"),q("p2p")),X(en,q("webrtc")),q("webrtc"));function Sl(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 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:Sl(e),partialMatch:e}}function Pe(...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:Sl(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 Wo=class extends Vo{peerId;transportManager;shutdownController;constructor(e,r){super(),this.peerId=e.peerId,this.transportManager=e.transportManager,this.shutdownController=r.shutdownController}async listen(){this.safeDispatchEvent("listening",{})}getAddrs(){return this.transportManager.getListeners().filter(e=>e!==this).map(e=>e.getAddrs().filter(r=>nr.matches(r)).map(r=>r.encapsulate(`/webrtc/p2p/${this.peerId}`))).flat()}async close(){this.shutdownController.abort(),this.safeDispatchEvent("close",{})}};var pt=ke("libp2p:webrtc:signaling-stream-handler");async function Cl({peerConnection:t,stream:e,signal:r,connection:n}){pt.trace("new inbound signaling stream");let i=Oo(e).pb(nt);try{let s=Ze(),a=Ze();r.onabort=()=>{s.reject(new W("Timed out while trying to connect","ERR_TIMEOUT"))},t.onicecandidate=({candidate:l})=>{a.promise.then(async()=>{let h=JSON.stringify(l?.toJSON()??null);pt.trace("recipient sending ICE candidate %s",h),await i.write({type:nt.Type.ICE_CANDIDATE,data:h},{signal:r})},h=>{pt.error("cannot set candidate since sending answer failed",h),s.reject(h)})},Ko(t,s);let c=await i.read({signal:r});if(c.type!==nt.Type.SDP_OFFER)throw new W(`expected message type SDP_OFFER, received: ${c.type??"undefined"} `,"ERR_SDP_HANDSHAKE_FAILED");pt.trace("recipient receive SDP offer %s",c.data);let u=new No({type:"offer",sdp:c.data});await t.setRemoteDescription(u).catch(l=>{throw pt.error("could not execute setRemoteDescription",l),new W("Failed to set remoteDescription","ERR_SDP_HANDSHAKE_FAILED")});let f=await t.createAnswer().catch(l=>{throw pt.error("could not execute createAnswer",l),a.reject(l),new W("Failed to create answer","ERR_SDP_HANDSHAKE_FAILED")});pt.trace("recipient send SDP answer %s",f.sdp),await i.write({type:nt.Type.SDP_ANSWER,data:f.sdp},{signal:r}),await t.setLocalDescription(f).catch(l=>{throw pt.error("could not execute setLocalDescription",l),a.reject(l),new W("Failed to set localDescription","ERR_SDP_HANDSHAKE_FAILED")}),a.resolve(),pt.trace("recipient read candidates until connected"),await Fo(s,t,i,{direction:"recipient",signal:r}),pt.trace("recipient connected, closing signaling stream"),await i.unwrap().unwrap().close({signal:r})}catch(s){if(t.connectionState!=="connected")throw pt.error("error while handling signaling stream from peer %a",n.remoteAddr,s),t.close(),s;pt("error while handling signaling stream from peer %a, ignoring as the RTCPeerConnection is already connected",n.remoteAddr,s)}let o=tr(`/webrtc/p2p/${n.remoteAddr.getPeerId()}`);return pt.trace("recipient connected to remote address %s",o),{remoteAddress:o}}var Ic=ke("libp2p:webrtc:peer"),sm="/webrtc",am="/p2p-circuit",Mo="/webrtc-signaling/0.0.1",cm=30*1e3,$o=class{components;init;_started=!1;metrics;shutdownController;constructor(e,r={}){this.components=e,this.init=r,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=>{Ic.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 Wo(this.components,{shutdownController:this.shutdownController})}[Symbol.toStringTag]="@libp2p/webrtc";[so]=!0;filter(e){return e.filter(Pf.exactMatch)}async dial(e,r){Ic.trace("dialing address: %a",e);let n=new On(this.init.rtcConfiguration),i=new jr({peerConnection:n,dataChannelOptions:this.init.dataChannel}),{remoteAddress:o}=await dl({peerConnection:n,multiaddr:e,dataChannelOptions:this.init.dataChannel,signal:r.signal,connectionManager:this.components.connectionManager,transportManager:this.components.transportManager}),s=new Gr({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??cm),i=new On(this.init.rtcConfiguration),o=new jr({peerConnection:i,dataChannelOptions:this.init.dataChannel});try{let{remoteAddress:s}=await Cl({peerConnection:i,connection:e,stream:r,signal:n}),a=new Gr({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=>{Ic.error("could not close WebRTCMultiaddrConnection",i)})};this.shutdownController.signal.addEventListener("abort",n),e.addEventListener("close",()=>{this.shutdownController.signal.removeEventListener("abort",n)})}};function pl(t){let e=t.toString().split(sm+"/");if(e.length!==2)throw new W("webrtc protocol was not present in multiaddr",dt.ERR_INVALID_MULTIADDR);if(!e[0].includes(am))throw new W("p2p-circuit protocol was not present in multiaddr",dt.ERR_INVALID_MULTIADDR);let r=tr(e[0]),i=tr("/"+e[1]).getPeerId();if(i==null)throw new W("destination peer id was missing",dt.ERR_INVALID_MULTIADDR);let o=r.protos().pop();if(o===void 0)throw new W("invalid multiaddr",dt.ERR_INVALID_MULTIADDR);return o.name!=="p2p"&&(r=r.encapsulate(`/p2p/${i}`)),{baseAddr:r,peerId:qr(i)}}function Tc(){let t=Ze(),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 Al(){let t=Tc(),e=Tc();return[{source:t.source,sink:e.sink},{source:e.source,sink:t.sink}]}function um(t){return t[Symbol.asyncIterator]!=null}function fm(...t){let e=[];for(let r of t)um(r)||e.push(r);return e.length===t.length?function*(){for(let r of e)yield*r}():async function*(){let r=Ht({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 Dl=fm;function Bl(t,...e){if(t==null)throw new Error("Empty pipeline");if(_c(t)){let n=t;t=()=>n.source}else if(Tl(t)||Il(t)){let n=t;t=()=>n}let r=[t,...e];if(r.length>1&&_c(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++)_c(r[n])&&(r[n]=hm(r[n]));return lm(...r)}var lm=(...t)=>{let e;for(;t.length>0;)e=t.shift()(e);return e},Il=t=>t?.[Symbol.asyncIterator]!=null,Tl=t=>t?.[Symbol.iterator]!=null,_c=t=>t==null?!1:t.sink!=null&&t.source!=null,hm=t=>e=>{let r=t.sink(e);if(r?.then!=null){let n=Ht({objectMode:!0});r.then(()=>{n.end()},s=>{n.end(s)});let i,o=t.source;if(Il(o))i=async function*(){yield*o,n.end()};else if(Tl(o))i=function*(){yield*o,n.end()};else throw new Error("Unknown duplex source type - must be Iterable or AsyncIterable");return Dl(n,i())}return t.source};var _l=!!globalThis.process?.env?.DUMP_SESSION_KEYS;var dm=t=>t instanceof Uint8Array;var ir=t=>new Uint32Array(t.buffer,t.byteOffset,Math.floor(t.byteLength/4)),kl=t=>new DataView(t.buffer,t.byteOffset,t.byteLength),pm=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!pm)throw new Error("Non little-endian hardware is not supported");function Yo(t){if(typeof t!="string")throw new Error(`utf8ToBytes expected string, got ${typeof t}`);return new Uint8Array(new TextEncoder().encode(t))}function Xo(t){if(typeof t=="string")t=Yo(t);else if(dm(t))t=t.slice();else throw new Error(`expected Uint8Array, got ${typeof t}`);return t}var ym=t=>Object.prototype.toString.call(t)==="[object Object]"&&t.constructor===Object;function Rl(t,e){if(e!==void 0&&(typeof e!="object"||!ym(e)))throw new Error("options must be object or undefined");return Object.assign(t,e)}function tn(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 Ll(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 kc=(t,e)=>(Object.assign(e,t),e);function Rc(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 Zo(t){if(!Number.isSafeInteger(t)||t<0)throw new Error(`Wrong positive integer: ${t}`)}function Lc(t){if(typeof t!="boolean")throw new Error(`Expected boolean, not ${t}`)}function Mn(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 Nc(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 Nl(t,e){Mn(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,Pc=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=Xo(e),tn(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],g=s[6],d=s[7],p=s[8],y=s[9],m=je(e,r+0),b=je(e,r+2),x=je(e,r+4),C=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]+(m&8191),F=o[1]+((m>>>13|b<<3)&8191),O=o[2]+((b>>>10|x<<6)&8191),M=o[3]+((x>>>7|C<<9)&8191),G=o[4]+((C>>>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),S=0,P=S+U*a+F*(5*y)+O*(5*p)+M*(5*d)+G*(5*g);S=P>>>13,P&=8191,P+=Q*(5*h)+I*(5*l)+R*(5*f)+_*(5*u)+k*(5*c),S+=P>>>13,P&=8191;let K=S+U*c+F*a+O*(5*y)+M*(5*p)+G*(5*d);S=K>>>13,K&=8191,K+=Q*(5*g)+I*(5*h)+R*(5*l)+_*(5*f)+k*(5*u),S+=K>>>13,K&=8191;let H=S+U*u+F*c+O*a+M*(5*y)+G*(5*p);S=H>>>13,H&=8191,H+=Q*(5*d)+I*(5*g)+R*(5*h)+_*(5*l)+k*(5*f),S+=H>>>13,H&=8191;let Z=S+U*f+F*u+O*c+M*a+G*(5*y);S=Z>>>13,Z&=8191,Z+=Q*(5*p)+I*(5*d)+R*(5*g)+_*(5*h)+k*(5*l),S+=Z>>>13,Z&=8191;let j=S+U*l+F*f+O*u+M*c+G*a;S=j>>>13,j&=8191,j+=Q*(5*y)+I*(5*p)+R*(5*d)+_*(5*g)+k*(5*h),S+=j>>>13,j&=8191;let oe=S+U*h+F*l+O*f+M*u+G*c;S=oe>>>13,oe&=8191,oe+=Q*a+I*(5*y)+R*(5*p)+_*(5*d)+k*(5*g),S+=oe>>>13,oe&=8191;let J=S+U*g+F*h+O*l+M*f+G*u;S=J>>>13,J&=8191,J+=Q*c+I*a+R*(5*y)+_*(5*p)+k*(5*d),S+=J>>>13,J&=8191;let te=S+U*d+F*g+O*h+M*l+G*f;S=te>>>13,te&=8191,te+=Q*u+I*c+R*a+_*(5*y)+k*(5*p),S+=te>>>13,te&=8191;let be=S+U*p+F*d+O*g+M*h+G*l;S=be>>>13,be&=8191,be+=Q*f+I*u+R*c+_*a+k*(5*y),S+=be>>>13,be&=8191;let me=S+U*y+F*p+O*d+M*g+G*h;S=me>>>13,me&=8191,me+=Q*l+I*f+R*u+_*c+k*a,S+=me>>>13,me&=8191,S=(S<<2)+S|0,S=S+P|0,P=S&8191,S=S>>>13,K+=S,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]=be,o[9]=me}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){Nc(this);let{buffer:r,blockLen:n}=this;e=Xo(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){Nc(this),Nl(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 gm(t){let e=(n,i)=>t(i).update(Xo(n)).digest(),r=t(new Uint8Array(32));return e.outputLen=r.outputLen,e.blockLen=r.blockLen,e.create=n=>t(n),e}var Pl=gm(t=>new Pc(t));var mm=Yo("expand 16-byte k"),xm=Yo("expand 32-byte k"),bm=ir(mm),wm=ir(xm);function $(t,e){return t<<e|t>>>32-e}function Uc(t){return t.byteOffset%4===0}var Qo=64,vm=16,Ol=2**32-1,Ul=new Uint32Array;function Em(t,e,r,n,i,o,s,a){let c=i.length,u=new Uint8Array(Qo),f=ir(u),l=Uc(i)&&Uc(o),h=l?ir(i):Ul,g=l?ir(o):Ul;for(let d=0;d<c;s++){if(t(e,r,n,f,s,a),s>=Ol)throw new Error("arx: counter overflow");let p=Math.min(Qo,c-d);if(l&&p===Qo){let y=d/4;if(d%4!==0)throw new Error("arx: invalid block position");for(let m=0,b;m<vm;m++)b=y+m,g[b]=h[b]^f[m];d+=Qo;continue}for(let y=0,m;y<p;y++)m=d+y,o[m]=i[m]^u[y];d+=p}}function Oc(t,e){let{allowShortKeys:r,extendNonceFn:n,counterLength:i,counterRight:o,rounds:s}=Rl({allowShortKeys:!1,counterLength:8,counterRight:!1,rounds:20},e);if(typeof t!="function")throw new Error("core must be a function");return Zo(i),Zo(s),Lc(o),Lc(r),(a,c,u,f,l=0)=>{Mn(a),Mn(c),Mn(u);let h=u.length;if(f||(f=new Uint8Array(h)),Mn(f),Zo(l),l<0||l>=Ol)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=wm;else if(d===16&&r)p=new Uint8Array(32),p.set(a),p.set(a,16),y=bm,g.push(p);else throw new Error(`arx: invalid 32-byte key, got length=${d}`);Uc(c)||(c=c.slice(),g.push(c));let m=ir(p);if(n){if(c.length!==24)throw new Error("arx: extended nonce must be 24 bytes");n(y,m,ir(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 C=new Uint8Array(12);C.set(c,o?0:12-c.length),c=C,g.push(c)}let x=ir(c);for(Em(t,y,m,x,u,f,l,s);g.length>0;)g.pop().fill(0);return f}}function Ml(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],C=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,S=x,P=C,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,S=$(S^B,16),I=I+S|0,O=$(O^I,12),B=B+O|0,S=$(S^B,8),I=I+S|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,S=$(S^D,16),Q=Q+S|0,G=$(G^Q,12),D=D+G|0,S=$(S^D,8),Q=Q+S|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+S|0,n[H++]=C+P|0,n[H++]=v+K|0}function Sm(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 C=0;n[C++]=i,n[C++]=o,n[C++]=s,n[C++]=a,n[C++]=y,n[C++]=m,n[C++]=b,n[C++]=x}var Cm=Oc(Ml,{counterRight:!1,counterLength:4,allowShortKeys:!1}),Am=Oc(Ml,{counterRight:!1,counterLength:8,extendNonceFn:Sm,allowShortKeys:!1});var Dm=new Uint8Array(16),Fl=(t,e)=>{t.update(e);let r=e.length%16;r&&t.update(Dm.subarray(r))},Bm=new Uint8Array(32);function Kl(t,e,r,n,i){let o=t(e,r,Bm),s=Pl.create(o);i&&Fl(s,i),Fl(s,n);let a=new Uint8Array(16),c=kl(a);Rc(c,0,BigInt(i?i.length:0),!0),Rc(c,8,BigInt(n.length),!0),s.update(a);let u=s.digest();return o.fill(0),u}var Vl=t=>(e,r,n)=>(tn(e,32),tn(r),{encrypt:(o,s)=>{let a=o.length,c=a+16;s?tn(s,c):s=new Uint8Array(c),t(e,r,o,s,1);let u=Kl(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?tn(s,c):s=new Uint8Array(c);let u=o.subarray(0,-16),f=o.subarray(-16),l=Kl(t,e,r,u,n);if(!Ll(f,l))throw new Error("invalid tag");return t(e,r,u,s,1),s}}),Fc=kc({blockSize:64,nonceLength:12,tagLength:16},Vl(Cm)),AA=kc({blockSize:64,nonceLength:24,tagLength:16},Vl(Am));function jo(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 Ii(t){if(typeof t!="function"||typeof t.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");jo(t.outputLen),jo(t.blockLen)}function Vn(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 Hl(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 Jo=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;var ql=t=>t instanceof Uint8Array;var es=t=>new DataView(t.buffer,t.byteOffset,t.byteLength),kt=(t,e)=>t<<32-e|t>>>e,Im=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!Im)throw new Error("Non little-endian hardware is not supported");function Mc(t){if(typeof t!="string")throw new Error(`utf8ToBytes expected string, got ${typeof t}`);return new Uint8Array(new TextEncoder().encode(t))}function Dr(t){if(typeof t=="string"&&(t=Mc(t)),!ql(t))throw new Error(`expected Uint8Array, got ${typeof t}`);return t}function ts(...t){let e=new Uint8Array(t.reduce((n,i)=>n+i.length,0)),r=0;return t.forEach(n=>{if(!ql(n))throw new Error("Uint8Array expected");e.set(n,r),r+=n.length}),e}var Hn=class{clone(){return this._cloneInto()}},_A={}.toString;function rs(t){let e=n=>t().update(Dr(n)).digest(),r=t();return e.outputLen=r.outputLen,e.blockLen=r.blockLen,e.create=()=>t(),e}function rn(t=32){if(Jo&&typeof Jo.getRandomValues=="function")return Jo.getRandomValues(new Uint8Array(t));throw new Error("crypto.getRandomValues must be defined")}function Tm(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 qn=class extends Hn{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=es(this.buffer)}update(e){Vn(this);let{view:r,buffer:n,blockLen:i}=this;e=Dr(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=es(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){Vn(this),Hl(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;Tm(n,i-8,BigInt(this.length*8),o),this.process(n,0);let a=es(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 ns=BigInt(4294967295),Vc=BigInt(32);function zl(t,e=!1){return e?{h:Number(t&ns),l:Number(t>>Vc&ns)}:{h:Number(t>>Vc&ns)|0,l:Number(t&ns)|0}}function _m(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}=zl(t[i],e);[r[i],n[i]]=[o,s]}return[r,n]}var km=(t,e)=>BigInt(t>>>0)<<Vc|BigInt(e>>>0),Rm=(t,e,r)=>t>>>r,Lm=(t,e,r)=>t<<32-r|e>>>r,Nm=(t,e,r)=>t>>>r|e<<32-r,Pm=(t,e,r)=>t<<32-r|e>>>r,Um=(t,e,r)=>t<<64-r|e>>>r-32,Om=(t,e,r)=>t>>>r-32|e<<64-r,Fm=(t,e)=>e,Km=(t,e)=>t,Mm=(t,e,r)=>t<<r|e>>>32-r,Vm=(t,e,r)=>e<<r|t>>>32-r,Hm=(t,e,r)=>e<<r-32|t>>>64-r,qm=(t,e,r)=>t<<r-32|e>>>64-r;function zm(t,e,r,n){let i=(e>>>0)+(n>>>0);return{h:t+r+(i/2**32|0)|0,l:i|0}}var Gm=(t,e,r)=>(t>>>0)+(e>>>0)+(r>>>0),Wm=(t,e,r,n)=>e+r+n+(t/2**32|0)|0,$m=(t,e,r,n)=>(t>>>0)+(e>>>0)+(r>>>0)+(n>>>0),Ym=(t,e,r,n,i)=>e+r+n+i+(t/2**32|0)|0,Xm=(t,e,r,n,i)=>(t>>>0)+(e>>>0)+(r>>>0)+(n>>>0)+(i>>>0),Zm=(t,e,r,n,i,o)=>e+r+n+i+o+(t/2**32|0)|0;var Qm={fromBig:zl,split:_m,toBig:km,shrSH:Rm,shrSL:Lm,rotrSH:Nm,rotrSL:Pm,rotrBH:Um,rotrBL:Om,rotr32H:Fm,rotr32L:Km,rotlSH:Mm,rotlSL:Vm,rotlBH:Hm,rotlBL:qm,add:zm,add3L:Gm,add3H:Wm,add4L:$m,add4H:Ym,add5H:Zm,add5L:Xm},ne=Qm;var[jm,Jm]=(()=>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))))(),Br=new Uint32Array(80),Ir=new Uint32Array(80),Hc=class extends qn{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)Br[x]=e.getUint32(r),Ir[x]=e.getUint32(r+=4);for(let x=16;x<80;x++){let C=Br[x-15]|0,v=Ir[x-15]|0,E=ne.rotrSH(C,v,1)^ne.rotrSH(C,v,8)^ne.shrSH(C,v,7),B=ne.rotrSL(C,v,1)^ne.rotrSL(C,v,8)^ne.shrSL(C,v,7),D=Br[x-2]|0,U=Ir[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,Ir[x-7],Ir[x-16]),G=ne.add4H(M,E,F,Br[x-7],Br[x-16]);Br[x]=G|0,Ir[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 C=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,Jm[x],Ir[x]),U=ne.add5H(D,m,C,E,jm[x],Br[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(){Br.fill(0),Ir.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 qc=rs(()=>new Hc);var ss={};ue(ss,{bitGet:()=>sx,bitLen:()=>ox,bitMask:()=>Ti,bitSet:()=>ax,bytesToHex:()=>or,bytesToNumberBE:()=>sr,bytesToNumberLE:()=>Rt,concatBytes:()=>cr,createHmacDrbg:()=>Wc,ensureBytes:()=>Ee,equalBytes:()=>nx,hexToBytes:()=>nn,hexToNumber:()=>Gc,numberToBytesBE:()=>Tr,numberToBytesLE:()=>ar,numberToHexUnpadded:()=>$l,numberToVarBytesBE:()=>rx,utf8ToBytes:()=>ix,validateObject:()=>bt});var Wl=BigInt(0),is=BigInt(1),ex=BigInt(2),os=t=>t instanceof Uint8Array,tx=Array.from({length:256},(t,e)=>e.toString(16).padStart(2,"0"));function or(t){if(!os(t))throw new Error("Uint8Array expected");let e="";for(let r=0;r<t.length;r++)e+=tx[t[r]];return e}function $l(t){let e=t.toString(16);return e.length&1?`0${e}`:e}function Gc(t){if(typeof t!="string")throw new Error("hex string expected, got "+typeof t);return BigInt(t===""?"0":`0x${t}`)}function nn(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 sr(t){return Gc(or(t))}function Rt(t){if(!os(t))throw new Error("Uint8Array expected");return Gc(or(Uint8Array.from(t).reverse()))}function Tr(t,e){return nn(t.toString(16).padStart(e*2,"0"))}function ar(t,e){return Tr(t,e).reverse()}function rx(t){return nn($l(t))}function Ee(t,e,r){let n;if(typeof e=="string")try{n=nn(e)}catch(o){throw new Error(`${t} must be valid hex string, got "${e}". Cause: ${o}`)}else if(os(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 cr(...t){let e=new Uint8Array(t.reduce((n,i)=>n+i.length,0)),r=0;return t.forEach(n=>{if(!os(n))throw new Error("Uint8Array expected");e.set(n,r),r+=n.length}),e}function nx(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 ix(t){if(typeof t!="string")throw new Error(`utf8ToBytes expected string, got ${typeof t}`);return new Uint8Array(new TextEncoder().encode(t))}function ox(t){let e;for(e=0;t>Wl;t>>=is,e+=1);return e}function sx(t,e){return t>>BigInt(e)&is}var ax=(t,e,r)=>t|(r?is:Wl)<<BigInt(e),Ti=t=>(ex<<BigInt(t-1))-is,zc=t=>new Uint8Array(t),Gl=t=>Uint8Array.from(t);function Wc(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=zc(t),i=zc(t),o=0,s=()=>{n.fill(1),i.fill(0),o=0},a=(...l)=>r(i,n,...l),c=(l=zc())=>{i=a(Gl([0]),l),n=a(),l.length!==0&&(i=a(Gl([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 cr(...h)};return(l,h)=>{s(),c(l);let g;for(;!(g=h(u()));)c();return s(),g}}var cx={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 bt(t,e,r={}){let n=(i,o,s)=>{let a=cx[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 Me=BigInt(0),De=BigInt(1),on=BigInt(2),ux=BigInt(3),$c=BigInt(4),Yl=BigInt(5),Xl=BigInt(8),fx=BigInt(9),lx=BigInt(16);function le(t,e){let r=t%e;return r>=Me?r:e+r}function Yc(t,e,r){if(r<=Me||e<Me)throw new Error("Expected power/modulo > 0");if(r===De)return Me;let n=De;for(;e>Me;)e&De&&(n=n*t%r),t=t*t%r,e>>=De;return n}function Se(t,e,r){let n=t;for(;e-- >Me;)n*=n,n%=r;return n}function as(t,e){if(t===Me||e<=Me)throw new Error(`invert: expected positive integers, got n=${t} mod=${e}`);let r=le(t,e),n=e,i=Me,o=De,s=De,a=Me;for(;r!==Me;){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!==De)throw new Error("invert: does not exist");return le(i,e)}function hx(t){let e=(t-De)/on,r,n,i;for(r=t-De,n=0;r%on===Me;r/=on,n++);for(i=on;i<t&&Yc(i,e,t)!==t-De;i++);if(n===1){let s=(t+De)/$c;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+De)/on;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,De<<BigInt(u-g-1));f=a.sqr(d),l=a.mul(l,d),h=a.mul(h,f),u=g}return l}}function dx(t){if(t%$c===ux){let e=(t+De)/$c;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%Xl===Yl){let e=(t-Yl)/Xl;return function(n,i){let o=n.mul(i,on),s=n.pow(o,e),a=n.mul(i,s),c=n.mul(n.mul(a,on),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%lx,hx(t)}var Zl=(t,e)=>(le(t,e)&De)===De,px=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function Xc(t){let e={ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"},r=px.reduce((n,i)=>(n[i]="function",n),e);return bt(t,r)}function yx(t,e,r){if(r<Me)throw new Error("Expected power > 0");if(r===Me)return t.ONE;if(r===De)return e;let n=t.ONE,i=e;for(;r>Me;)r&De&&(n=t.mul(n,i)),i=t.sqr(i),r>>=De;return n}function gx(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 Zc(t,e){let r=e!==void 0?e:t.toString(2).length,n=Math.ceil(r/8);return{nBitLength:r,nByteLength:n}}function cs(t,e,r=!1,n={}){if(t<=Me)throw new Error(`Expected Field ORDER > 0, got ${t}`);let{nBitLength:i,nByteLength:o}=Zc(t,e);if(o>2048)throw new Error("Field lengths over 2048 bytes are not supported");let s=dx(t),a=Object.freeze({ORDER:t,BITS:i,BYTES:o,MASK:Ti(i),ZERO:Me,ONE:De,create:c=>le(c,t),isValid:c=>{if(typeof c!="bigint")throw new Error(`Invalid field element: expected bigint, got ${typeof c}`);return Me<=c&&c<t},is0:c=>c===Me,isOdd:c=>(c&De)===De,neg:c=>le(-c,t),eql:(c,u)=>c===u,sqr:c=>le(c*c,t),add:(c,u)=>le(c+u,t),sub:(c,u)=>le(c-u,t),mul:(c,u)=>le(c*u,t),pow:(c,u)=>yx(a,c,u),div:(c,u)=>le(c*as(u,t),t),sqrN:c=>c*c,addN:(c,u)=>c+u,subN:(c,u)=>c-u,mulN:(c,u)=>c*u,inv:c=>as(c,t),sqrt:n.sqrt||(c=>s(a,c)),invertBatch:c=>gx(a,c),cmov:(c,u,f)=>f?u:c,toBytes:c=>r?ar(c,o):Tr(c,o),fromBytes:c=>{if(c.length!==o)throw new Error(`Fp.fromBytes: expected ${o}, got ${c.length}`);return r?Rt(c):sr(c)}});return Object.freeze(a)}function Ql(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 jl(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=jl(t);return e+Math.ceil(e/2)}function Jl(t,e,r=!1){let n=t.length,i=jl(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?sr(t):Rt(t),a=le(s,e-De)+De;return r?ar(a,i):Tr(a,i)}var xx=BigInt(0),jc=BigInt(1);function us(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>xx;)o&jc&&(s=s.add(a)),a=a.double(),o>>=jc;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+=jc);let m=p,b=p+Math.abs(y)-1,x=d%2!==0,C=y<0;y===0?f=f.add(r(x,o[m])):u=u.add(r(C,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 _i(t){return Xc(t.Fp),bt(t,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...Zc(t.n,t.nBitLength),...t,p:t.Fp.ORDER})}var Lt=BigInt(0),yt=BigInt(1),fs=BigInt(2),bx=BigInt(8),wx={zip215:!0};function vx(t){let e=_i(t);return bt(t,{hash:"function",a:"bigint",d:"bigint",randomBytes:"function"},{adjustScalarBytes:"function",domain:"function",uvRatio:"function",mapToCurve:"function"}),Object.freeze({...e})}function ls(t){let e=vx(t),{Fp:r,n,prehash:i,hash:o,randomBytes:s,nByteLength:a,h:c}=e,u=fs<<BigInt(a*8)-yt,f=r.create,l=e.uvRatio||((k,S)=>{try{return{isValid:!0,value:r.sqrt(k*r.inv(S))}}catch{return{isValid:!1,value:Lt}}}),h=e.adjustScalarBytes||(k=>k),g=e.domain||((k,S,P)=>{if(S.length||P)throw new Error("Contexts/pre-hash are not supported");return k}),d=k=>typeof k=="bigint"&&Lt<k,p=(k,S)=>d(k)&&d(S)&&k<S,y=k=>k===Lt||p(k,u);function m(k,S){if(p(k,S))return k;throw new Error(`Expected valid scalar < ${S}, got ${typeof k} ${k}`)}function b(k){return k===Lt?k:m(k,n)}let x=new Map;function C(k){if(!(k instanceof v))throw new Error("ExtendedPoint expected")}class v{constructor(S,P,K,H){if(this.ex=S,this.ey=P,this.ez=K,this.et=H,!y(S))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(S){if(S instanceof v)throw new Error("extended point not allowed");let{x:P,y:K}=S||{};if(!y(P)||!y(K))throw new Error("invalid affine point");return new v(P,K,yt,f(P*K))}static normalizeZ(S){let P=r.invertBatch(S.map(K=>K.ez));return S.map((K,H)=>K.toAffine(P[H])).map(v.fromAffine)}_setWindowSize(S){this._WINDOW_SIZE=S,x.delete(this)}assertValidity(){let{a:S,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),be=f(te*te),me=f(oe*S),Ge=f(te*f(me+J)),We=f(be+f(P*f(oe*J)));if(Ge!==We)throw new Error("bad point: equation left != right (1)");let Fe=f(K*H),et=f(Z*j);if(Fe!==et)throw new Error("bad point: equation left != right (2)")}equals(S){C(S);let{ex:P,ey:K,ez:H}=this,{ex:Z,ey:j,ez:oe}=S,J=f(P*oe),te=f(Z*H),be=f(K*oe),me=f(j*H);return J===te&&be===me}is0(){return this.equals(v.ZERO)}negate(){return new v(f(-this.ex),this.ey,this.ez,f(-this.et))}double(){let{a:S}=e,{ex:P,ey:K,ez:H}=this,Z=f(P*P),j=f(K*K),oe=f(fs*f(H*H)),J=f(S*Z),te=P+K,be=f(f(te*te)-Z-j),me=J+j,Ge=me-oe,We=J-j,Fe=f(be*Ge),et=f(me*We),jt=f(be*We),Fr=f(Ge*me);return new v(Fe,et,Fr,jt)}add(S){C(S);let{a:P,d:K}=e,{ex:H,ey:Z,ez:j,et:oe}=this,{ex:J,ey:te,ez:be,et:me}=S;if(P===BigInt(-1)){let Du=f((Z-H)*(te+J)),Bu=f((Z+H)*(te-J)),ta=f(Bu-Du);if(ta===Lt)return this.double();let Iu=f(j*fs*me),Tu=f(oe*fs*be),_u=Tu+Iu,ku=Bu+Du,Ru=Tu-Iu,c2=f(_u*ta),u2=f(ku*Ru),f2=f(_u*Ru),l2=f(ta*ku);return new v(c2,u2,l2,f2)}let Ge=f(H*J),We=f(Z*te),Fe=f(oe*K*me),et=f(j*be),jt=f((H+Z)*(J+te)-Ge-We),Fr=et-Fe,li=et+Fe,Au=f(We-P*Ge),i2=f(jt*Fr),o2=f(li*Au),s2=f(jt*Au),a2=f(Fr*li);return new v(i2,o2,a2,s2)}subtract(S){return this.add(S.negate())}wNAF(S){return D.wNAFCached(this,x,S,v.normalizeZ)}multiply(S){let{p:P,f:K}=this.wNAF(m(S,n));return v.normalizeZ([P,K])[0]}multiplyUnsafe(S){let P=b(S);return P===Lt?B:this.equals(B)||P===yt?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(S){let{ex:P,ey:K,ez:H}=this,Z=this.is0();S==null&&(S=Z?bx:r.inv(H));let j=f(P*S),oe=f(K*S),J=f(H*S);if(Z)return{x:Lt,y:yt};if(J!==yt)throw new Error("invZ was invalid");return{x:j,y:oe}}clearCofactor(){let{h:S}=e;return S===yt?this:this.multiplyUnsafe(S)}static fromHex(S,P=!1){let{d:K,a:H}=e,Z=r.BYTES;S=Ee("pointHex",S,Z);let j=S.slice(),oe=S[Z-1];j[Z-1]=oe&-129;let J=Rt(j);J===Lt||(P?m(J,u):m(J,r.ORDER));let te=f(J*J),be=f(te-yt),me=f(K*te-H),{isValid:Ge,value:We}=l(be,me);if(!Ge)throw new Error("Point.fromHex: invalid y coordinate");let Fe=(We&yt)===yt,et=(oe&128)!==0;if(!P&&We===Lt&&et)throw new Error("Point.fromHex: x=0 and x_0=1");return et!==Fe&&(We=f(-We)),v.fromAffine({x:We,y:J})}static fromPrivateKey(S){return O(S).point}toRawBytes(){let{x:S,y:P}=this.toAffine(),K=ar(P,r.BYTES);return K[K.length-1]|=S&yt?128:0,K}toHex(){return or(this.toRawBytes())}}v.BASE=new v(e.Gx,e.Gy,yt,f(e.Gx*e.Gy)),v.ZERO=new v(Lt,yt,yt,Lt);let{BASE:E,ZERO:B}=v,D=us(v,a*8);function U(k){return le(k,n)}function F(k){return U(Rt(k))}function O(k){let S=a;k=Ee("private key",k,S);let P=Ee("hashed private key",o(k),2*S),K=h(P.slice(0,S)),H=P.slice(S,2*S),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,...S){let P=cr(...S);return F(o(g(P,Ee("context",k),!!i)))}function Q(k,S,P={}){k=Ee("message",k),i&&(k=i(k));let{prefix:K,scalar:H,pointBytes:Z}=O(S),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 be=cr(oe,ar(te,r.BYTES));return Ee("result",be,a*2)}let I=wx;function R(k,S,P,K=I){let{context:H,zip215:Z}=K,j=r.BYTES;k=Ee("signature",k,2*j),S=Ee("message",S),i&&(S=i(S));let oe=Rt(k.slice(j,2*j)),J,te,be;try{J=v.fromHex(P,Z),te=v.fromHex(k.slice(0,j),Z),be=E.multiplyUnsafe(oe)}catch{return!1}if(!Z&&J.isSmallOrder())return!1;let me=G(H,te.toRawBytes(),J.toRawBytes(),S);return te.add(J.multiplyUnsafe(me)).subtract(be).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,S=v.BASE){return S._setWindowSize(k),S.multiply(BigInt(3)),S}}}}var ki=BigInt(0),Jc=BigInt(1);function Ex(t){return bt(t,{a:"bigint"},{montgomeryBits:"isSafeInteger",nByteLength:"isSafeInteger",adjustScalarBytes:"function",domain:"function",powPminus2:"function",Gu:"bigint"}),Object.freeze({...t})}function eh(t){let e=Ex(t),{P:r}=e,n=x=>le(x,r),i=e.montgomeryBits,o=Math.ceil(i/8),s=e.nByteLength,a=e.adjustScalarBytes||(x=>x),c=e.powPminus2||(x=>Yc(x,r-BigInt(2),r));function u(x,C,v){let E=n(x*(C-v));return C=n(C-E),v=n(v+E),[C,v]}function f(x){if(typeof x=="bigint"&&ki<=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,C){let v=f(x),E=f(C),B=v,D=Jc,U=ki,F=v,O=Jc,M=ki,G;for(let I=BigInt(i-1);I>=ki;I--){let R=E>>I&Jc;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(_*_),S=D-U,P=n(S*S),K=k-P,H=F+O,Z=F-O,j=n(Z*_),oe=n(H*S),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 ar(n(x),o)}function d(x){let C=Ee("u coordinate",x,o);return s===o&&(C[s-1]&=127),Rt(C)}function p(x){let C=Ee("scalar",x);if(C.length!==o&&C.length!==s)throw new Error(`Expected ${o} or ${s} bytes, got ${C.length}`);return Rt(a(C))}function y(x,C){let v=d(C),E=p(x),B=h(v,E);if(B===ki)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,C)=>y(x,C),getPublicKey:x=>b(x),utils:{randomPrivateKey:()=>e.randomBytes(e.nByteLength)},GuBytes:m}}var Ri=BigInt("57896044618658097711785492504343953926634992332820282019728792003956564819949"),th=BigInt("19681161376707505956807079304988542015446066515923890162744021073123829784752"),rD=BigInt(0),Sx=BigInt(1),e0=BigInt(2),Cx=BigInt(5),rh=BigInt(10),Ax=BigInt(20),Dx=BigInt(40),nh=BigInt(80);function ih(t){let e=Ri,n=t*t%e*t%e,i=Se(n,e0,e)*n%e,o=Se(i,Sx,e)*t%e,s=Se(o,Cx,e)*o%e,a=Se(s,rh,e)*s%e,c=Se(a,Ax,e)*a%e,u=Se(c,Dx,e)*c%e,f=Se(u,nh,e)*u%e,l=Se(f,nh,e)*u%e,h=Se(l,rh,e)*s%e;return{pow_p_5_8:Se(h,e0,e)*t%e,b2:n}}function oh(t){return t[0]&=248,t[31]&=127,t[31]|=64,t}function Bx(t,e){let r=Ri,n=le(e*e*e,r),i=le(n*n*e,r),o=ih(t*i).pow_p_5_8,s=le(t*n*o,r),a=le(e*s*s,r),c=s,u=le(s*th,r),f=a===t,l=a===le(-t,r),h=a===le(-t*th,r);return f&&(s=c),(l||h)&&(s=u),Zl(s,r)&&(s=le(-s,r)),{isValid:f||l,value:s}}var ur=cs(Ri,void 0,!0),t0={a:BigInt(-1),d:BigInt("37095705934669439343138083508754565189542113879843219016388785533085940283555"),Fp:ur,n:BigInt("7237005577332262213973186563042994240857116359379907606001950938285454250989"),h:BigInt(8),Gx:BigInt("15112221349535400772501151409588531511454012693041857206046113283949847762202"),Gy:BigInt("46316835694926478169428394003475163141307993866256225615783033603165251855960"),hash:qc,randomBytes:rn,adjustScalarBytes:oh,uvRatio:Bx},zn=ls(t0);function sh(t,e,r){if(e.length>255)throw new Error("Context is too big");return ts(Mc("SigEd25519 no Ed25519 collisions"),new Uint8Array([r?1:0,e.length]),e,t)}var nD=ls({...t0,domain:sh}),iD=ls({...t0,domain:sh,prehash:qc}),Li=(()=>eh({P:Ri,a:BigInt(486662),montgomeryBits:255,nByteLength:32,Gu:BigInt(9),powPminus2:t=>{let e=Ri,{pow_p_5_8:r,b2:n}=ih(t);return le(Se(r,BigInt(3),e)*n,e)},adjustScalarBytes:oh,randomBytes:rn}))();var Ix=(ur.ORDER+BigInt(3))/BigInt(8),oD=ur.pow(e0,Ix),sD=ur.sqrt(ur.neg(ur.ONE)),aD=(ur.ORDER-BigInt(5))/BigInt(8),cD=BigInt(486662);var uD=Ql(ur,ur.neg(BigInt(486664)));var fD=BigInt("25063068953384623474111414158702152701244531502492656460079210482610430750235"),lD=BigInt("54469307008909316920995813868745141605393597292927456921205312896311721017578"),hD=BigInt("1159843021668779879193775521855586647937357759715417654439879720876111806838"),dD=BigInt("40440834346308536858101042469323190826248399146238708352240133220865137265952");var pD=BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff");var hs=class extends Hn{constructor(e,r){super(),this.finished=!1,this.destroyed=!1,Ii(e);let n=Dr(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 Vn(this),this.iHash.update(e),this}digestInto(e){Vn(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()}},Gn=(t,e,r)=>new hs(t,e).update(r).digest();Gn.create=(t,e)=>new hs(t,e);function ch(t,e,r){return Ii(t),r===void 0&&(r=new Uint8Array(t.outputLen)),Gn(t,Dr(r),Dr(e))}var r0=new Uint8Array([0]),ah=new Uint8Array;function uh(t,e,r,n=32){if(Ii(t),jo(n),n>255*t.outputLen)throw new Error("Length should be <= 255*HashLen");let i=Math.ceil(n/t.outputLen);r===void 0&&(r=ah);let o=new Uint8Array(i*t.outputLen),s=Gn.create(t,e),a=s._cloneInto(),c=new Uint8Array(s.outputLen);for(let u=0;u<i;u++)r0[0]=u+1,a.update(u===0?ah:c).update(r).update(r0).digestInto(c),o.set(c,t.outputLen*u),s._cloneInto(a);return s.destroy(),a.destroy(),c.fill(0),r0.fill(0),o.slice(0,n)}var Tx=(t,e,r)=>t&e^~t&r,_x=(t,e,r)=>t&e^t&r^e&r,kx=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),_r=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),kr=new Uint32Array(64),n0=class extends qn{constructor(){super(64,32,8,!1),this.A=_r[0]|0,this.B=_r[1]|0,this.C=_r[2]|0,this.D=_r[3]|0,this.E=_r[4]|0,this.F=_r[5]|0,this.G=_r[6]|0,this.H=_r[7]|0}get(){let{A: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)kr[l]=e.getUint32(r,!1);for(let l=16;l<64;l++){let h=kr[l-15],g=kr[l-2],d=kt(h,7)^kt(h,18)^h>>>3,p=kt(g,17)^kt(g,19)^g>>>10;kr[l]=p+kr[l-7]+d+kr[l-16]|0}let{A:n,B:i,C:o,D:s,E:a,F:c,G:u,H:f}=this;for(let l=0;l<64;l++){let h=kt(a,6)^kt(a,11)^kt(a,25),g=f+h+Tx(a,c,u)+kx[l]+kr[l]|0,p=(kt(n,2)^kt(n,13)^kt(n,22))+_x(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(){kr.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}};var Wn=rs(()=>new n0);var i0={hashSHA256(t){return Wn(t)},getHKDF(t,e){let r=ch(Wn,e,t),i=uh(Wn,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=Li.utils.randomPrivateKey();return{publicKey:Li.getPublicKey(t),privateKey:t}},generateX25519KeyPairFromSeed(t){return{publicKey:Li.getPublicKey(t),privateKey:t}},generateX25519SharedKey(t,e){return Li.getSharedSecret(t,e)},chaCha20Poly1305Encrypt(t,e,r,n){return Fc(n,e,r).encrypt(t)},chaCha20Poly1305Decrypt(t,e,r,n,i){return Fc(n,e,r).decrypt(t,i)}};var Rx=t=>globalThis.Buffer?globalThis.Buffer.allocUnsafe(t):new Uint8Array(t),$n=t=>{let e=Rx(2);return new DataView(e.buffer,e.byteOffset,e.byteLength).setUint16(0,t,!1),e};$n.bytes=2;var Ni=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)};Ni.bytes=2;function fh(t){return pe([t.ne,t.ciphertext],t.ne.length+t.ciphertext.length)}function lh(t){return pe([t.ne,t.ns,t.ciphertext],t.ne.length+t.ns.length+t.ciphertext.length)}function hh(t){return pe([t.ns,t.ciphertext],t.ns.length+t.ciphertext.length)}function dh(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:new Uint8Array(0)}}function ph(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 yh(t){if(t.length<48)throw new Error("Cannot decode stage 2 MessageBuffer: length less than 48 bytes.");return{ne:new Uint8Array(0),ns:t.subarray(0,48),ciphertext:t.subarray(48,t.length)}}var mh=16;function xh(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 $n(s.byteLength),yield s}}}function bh(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 $I=$e(Ki(),1),YI=$e(Pd(),1);var Lv=$e(xe(),1);var _0={};ue(_0,{Ed25519PrivateKey:()=>ln,Ed25519PublicKey:()=>Hi,generateKeyPair:()=>sv,generateKeyPairFromSeed:()=>Hd,unmarshalEd25519PrivateKey:()=>iv,unmarshalEd25519PublicKey:()=>ov});var jn=32,dr=64,ks=32;async function Ud(){let t=zn.utils.randomPrivateKey(),e=zn.getPublicKey(t);return{privateKey:Md(t,e),publicKey:e}}async function Od(t){if(t.length!==ks)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=zn.getPublicKey(e);return{privateKey:Md(e,r),publicKey:r}}async function Fd(t,e){let r=t.subarray(0,ks);return zn.sign(e,r)}async function Kd(t,e,r){return zn.verify(e,r,t)}function Md(t,e){let r=new Uint8Array(dr);for(let n=0;n<ks;n++)r[n]=t[n],r[ks+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-crypto/blob/master/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 I0(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=we(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 pe([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=we(h));let m;if(h.length===0)try{let x={name:"PBKDF2",salt:g,iterations:s,hash:{name:i}},C=await a.subtle.importKey("raw",h,{name:"PBKDF2"},!1,["deriveKey"]);m=await a.subtle.deriveKey(x,C,{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}},C=await a.subtle.importKey("raw",h,{name:"PBKDF2"},!1,["deriveKey"]);m=await a.subtle.deriveKey(x,C,{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 Jn(t,e){let n=await I0().encrypt(t,e);return En.encode(n)}var Ie;(function(t){t.RSA="RSA",t.Ed25519="Ed25519",t.Secp256k1="Secp256k1"})(Ie||(Ie={}));var T0;(function(t){t[t.RSA=0]="RSA",t[t.Ed25519=1]="Ed25519",t[t.Secp256k1=2]="Secp256k1"})(T0||(T0={}));(function(t){t.codec=()=>Qr(T0)})(Ie||(Ie={}));var Xt;(function(t){let e;t.codec=()=>(e==null&&(e=_t((r,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),r.Type!=null&&(n.uint32(8),Ie.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=Ie.codec().decode(r);break;case 2:i.Data=r.bytes();break;default:r.skipType(s&7);break}}return i})),e),t.encode=r=>Tt(r,t.codec()),t.decode=r=>It(r,t.codec())})(Xt||(Xt={}));var Zt;(function(t){let e;t.codec=()=>(e==null&&(e=_t((r,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),r.Type!=null&&(n.uint32(8),Ie.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=Ie.codec().decode(r);break;case 2:i.Data=r.bytes();break;default:r.skipType(s&7);break}}return i})),e),t.encode=r=>Tt(r,t.codec()),t.decode=r=>It(r,t.codec())})(Zt||(Zt={}));var Hi=class{_key;constructor(e){this._key=ei(e,jn)}async verify(e,r){return Kd(this._key,r,e)}marshal(){return this._key}get bytes(){return Xt.encode({Type:Ie.Ed25519,Data:this.marshal()}).subarray()}equals(e){return Ue(this.bytes,e.bytes)}async hash(){let{bytes:e}=await Ye.digest(this.bytes);return e}},ln=class{_key;_publicKey;constructor(e,r){this._key=ei(e,dr),this._publicKey=ei(r,jn)}async sign(e){return Fd(this._key,e)}get public(){return new Hi(this._publicKey)}marshal(){return this._key}get bytes(){return Zt.encode({Type:Ie.Ed25519,Data:this.marshal()}).subarray()}equals(e){return Ue(this.bytes,e.bytes)}async hash(){let{bytes:e}=await Ye.digest(this.bytes);return e}async id(){let e=wr.digest(this.public.bytes);return Te.encode(e.bytes).substring(1)}async export(e,r="libp2p-key"){if(r==="libp2p-key")return Jn(this.bytes,e);throw new W(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}};function iv(t){if(t.length>dr){t=ei(t,dr+jn);let n=t.subarray(0,dr),i=t.subarray(dr,t.length);return new ln(n,i)}t=ei(t,dr);let e=t.subarray(0,dr),r=t.subarray(jn);return new ln(e,r)}function ov(t){return t=ei(t,jn),new Hi(t)}async function sv(){let{privateKey:t,publicKey:e}=await Ud();return new ln(t,e)}async function Hd(t){let{privateKey:e,publicKey:r}=await Od(t);return new ln(e,r)}function ei(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 vB=$e(Oe(),1),EB=$e(Bs(),1),qd=$e(xe(),1);function Ut(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=pe([new Uint8Array(e-r.length),r])}return se(r,"base64url")}function gt(t){let e=zd(t);return new qd.default.jsbn.BigInteger(se(e,"base16"),16)}function zd(t,e){let r=we(t,"base64urlpad");if(e!=null){if(r.length>e)throw new Error("byte array longer than desired length");r=pe([new Uint8Array(e-r.length),r])}return r}var av={"P-256":256,"P-384":384,"P-521":521},cv=Object.keys(av),LB=cv.join(" / ");var P0={};ue(P0,{MAX_KEY_SIZE:()=>Wi,RsaPrivateKey:()=>ti,RsaPublicKey:()=>Gi,fromJwk:()=>bv,generateKeyPair:()=>wv,unmarshalRsaPrivateKey:()=>mv,unmarshalRsaPublicKey:()=>xv});var zi=$e(xe(),1);var mI=$e(Xd(),1);function Ls(t){if(isNaN(t)||t<=0)throw new W("random bytes length must be a Number bigger than 0","ERR_INVALID_LENGTH");return rn(t)}var JB=$e(_s(),1),L0=$e(xe(),1);function Zd(t,e){return e.map(r=>gt(t[r]))}function Qd(t){return L0.default.pki.setRsaPrivateKey(...Zd(t,["n","e","d","p","q","dp","dq","qi"]))}function jd(t){return L0.default.pki.setRsaPublicKey(...Zd(t,["n","e"]))}var dn={};ue(dn,{jwkToPkcs1:()=>hv,jwkToPkix:()=>pv,pkcs1ToJwk:()=>lv,pkixToJwk:()=>dv});var rI=$e(Ki(),1),nI=$e(_s(),1);var pr=$e(xe(),1);function lv(t){let e=pr.default.asn1.fromDer(se(t,"ascii")),r=pr.default.pki.privateKeyFromAsn1(e);return{kty:"RSA",n:Ut(r.n),e:Ut(r.e),d:Ut(r.d),p:Ut(r.p),q:Ut(r.q),dp:Ut(r.dP),dq:Ut(r.dQ),qi:Ut(r.qInv),alg:"RS256"}}function hv(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=pr.default.pki.privateKeyToAsn1({n:gt(t.n),e:gt(t.e),d:gt(t.d),p:gt(t.p),q:gt(t.q),dP:gt(t.dp),dQ:gt(t.dq),qInv:gt(t.qi)});return we(pr.default.asn1.toDer(e).getBytes(),"ascii")}function dv(t){let e=pr.default.asn1.fromDer(se(t,"ascii")),r=pr.default.pki.publicKeyFromAsn1(e);return{kty:"RSA",n:Ut(r.n),e:Ut(r.e)}}function pv(t){if(t.n==null||t.e==null)throw new W("JWK was missing components","ERR_INVALID_PARAMETERS");let e=pr.default.pki.publicKeyToAsn1({n:gt(t.n),e:gt(t.e)});return we(pr.default.asn1.toDer(e).getBytes(),"ascii")}async function Jd(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 rp(e);return{privateKey:r[0],publicKey:r[1]}}async function N0(t){let r=[await ft.get().subtle.importKey("jwk",t,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!0,["sign"]),await yv(t)],n=await rp({privateKey:r[0],publicKey:r[1]});return{privateKey:n[0],publicKey:n[1]}}async function ep(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,Uint8Array.from(e));return new Uint8Array(n,0,n.byteLength)}async function tp(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)}async function rp(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 yv(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 np(t,e,r,n){let i=e?jd(t):Qd(t),o=se(Uint8Array.from(r),"ascii"),s=n(o,i);return we(s,"ascii")}function ip(t,e){return np(t,!0,e,(r,n)=>n.encrypt(r))}function op(t,e){return np(t,!1,e,(r,n)=>n.decrypt(r))}function Ns(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 we(t.n,"base64url").length*8}var Wi=8192,Gi=class{_key;constructor(e){this._key=e}async verify(e,r){return tp(this._key,r,e)}marshal(){return dn.jwkToPkix(this._key)}get bytes(){return Xt.encode({Type:Ie.RSA,Data:this.marshal()}).subarray()}encrypt(e){return ip(this._key,e)}equals(e){return Ue(this.bytes,e.bytes)}async hash(){let{bytes:e}=await Ye.digest(this.bytes);return e}},ti=class{_key;_publicKey;constructor(e,r){this._key=e,this._publicKey=r}genSecret(){return Ls(16)}async sign(e){return ep(this._key,e)}get public(){if(this._publicKey==null)throw new W("public key not provided","ERR_PUBKEY_NOT_PROVIDED");return new Gi(this._publicKey)}decrypt(e){return op(this._key,e)}marshal(){return dn.jwkToPkcs1(this._key)}get bytes(){return Zt.encode({Type:Ie.RSA,Data:this.marshal()}).subarray()}equals(e){return Ue(this.bytes,e.bytes)}async hash(){let{bytes:e}=await Ye.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 zi.default.util.ByteBuffer(this.marshal()),i=zi.default.asn1.fromDer(n),o=zi.default.pki.privateKeyFromAsn1(i),s={algorithm:"aes256",count:1e4,saltSize:128/8,prfAlgorithm:"sha512"};return zi.default.pki.encryptRsaPrivateKey(o,e,s)}else{if(r==="libp2p-key")return Jn(this.bytes,e);throw new W(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}}};async function mv(t){let e=dn.pkcs1ToJwk(t);if(Ns(e)>Wi)throw new W("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let r=await N0(e);return new ti(r.privateKey,r.publicKey)}function xv(t){let e=dn.pkixToJwk(t);if(Ns(e)>Wi)throw new W("key size is too large","ERR_KEY_SIZE_TOO_LARGE");return new Gi(e)}async function bv(t){if(Ns(t)>Wi)throw new W("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let e=await N0(t);return new ti(e.privateKey,e.publicKey)}async function wv(t){if(t>Wi)throw new W("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let e=await Jd(t);return new ti(e.privateKey,e.publicKey)}var K0={};ue(K0,{Secp256k1PrivateKey:()=>Yi,Secp256k1PublicKey:()=>$i,generateKeyPair:()=>Rv,unmarshalSecp256k1PrivateKey:()=>_v,unmarshalSecp256k1PublicKey:()=>kv});function vv(t){let e=_i(t);bt(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:Ev,hexToBytes:Sv}=ss,pn={Err:class extends Error{constructor(e=""){super(e)}},_parseInt(t){let{Err:e}=pn;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:Ev(n),l:t.subarray(r+2)}},toSig(t){let{Err:e}=pn,r=typeof t=="string"?Sv(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}=pn._parseInt(r.subarray(2)),{d:s,l:a}=pn._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}`}},yr=BigInt(0),Et=BigInt(1),SI=BigInt(2),sp=BigInt(3),CI=BigInt(4);function Cv(t){let e=vv(t),{Fp:r}=e,n=e.toBytes||((d,p,y)=>{let m=p.toAffine();return cr(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"&&yr<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=or(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:sr(Ee("private key",d,y))}catch{throw new Error(`private key must be ${y} bytes, hex or bigint, not ${typeof d}`)}return m&&(x=le(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(Ee("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:C,pz:v}=p,E=r.eql(r.mul(y,v),r.mul(x,b)),B=r.eql(r.mul(m,v),r.mul(C,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,sp),{px:b,py:x,pz:C}=this,v=r.ZERO,E=r.ZERO,B=r.ZERO,D=r.mul(b,b),U=r.mul(x,x),F=r.mul(C,C),O=r.mul(b,x);return O=r.add(O,O),B=r.mul(b,C),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,C),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:C,pz:v}=p,E=r.ZERO,B=r.ZERO,D=r.ZERO,U=e.a,F=r.mul(e.b,sp),O=r.mul(y,x),M=r.mul(m,C),G=r.mul(b,v),Q=r.add(y,m),I=r.add(x,C);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(C,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===yr)return y;if(a(p),p===Et)return this;let{endo:m}=e;if(!m)return g.unsafeLadder(this,p);let{k1neg:b,k1:x,k2neg:C,k2:v}=m.splitScalar(p),E=y,B=y,D=this;for(;x>yr||v>yr;)x&Et&&(E=E.add(D)),v&Et&&(B=B.add(D)),D=D.double(),x>>=Et,v>>=Et;return b&&(E=E.negate()),C&&(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:C,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(C,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:C,f:v}=this.wNAF(y);m=C,b=v}return l.normalizeZ([m,b])[0]}multiplyAndAddUnsafe(p,y,m){let b=l.BASE,x=(v,E)=>E===yr||E===Et||!v.equals(b)?v.multiplyUnsafe(E):v.multiply(E),C=x(this,y).add(x(p,m));return C.is0()?void 0:C}toAffine(p){let{px:y,py:m,pz:b}=this,x=this.is0();p==null&&(p=x?r.ONE:r.inv(b));let C=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:C,y:v}}isTorsionFree(){let{h:p,isTorsionFree:y}=e;if(p===Et)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===Et?this:y?y(l,this):this.multiplyUnsafe(e.h)}toRawBytes(p=!0){return this.assertValidity(),n(l,this,p)}toHex(p=!0){return or(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=us(l,e.endo?Math.ceil(h/2):h);return{CURVE:e,ProjectivePoint:l,normPrivateKeyToScalar:c,weierstrassEquation:o,isWithinCurveOrder:s}}function Av(t){let e=_i(t);return bt(e,{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze({lowS:!0,...e})}function ap(t){let e=Av(t),{Fp:r,n}=e,i=r.BYTES+1,o=2*r.BYTES+1;function s(I){return yr<I&&I<r.ORDER}function a(I){return le(I,n)}function c(I){return as(I,n)}let{ProjectivePoint:u,normPrivateKeyToScalar:f,weierstrassEquation:l,isWithinCurveOrder:h}=Cv({...e,toBytes(I,R,_){let k=R.toAffine(),S=r.toBytes(k.x),P=cr;return _?P(Uint8Array.from([R.hasEvenY()?2:3]),S):P(Uint8Array.from([4]),S,r.toBytes(k.y))},fromBytes(I){let R=I.length,_=I[0],k=I.subarray(1);if(R===i&&(_===2||_===3)){let S=sr(k);if(!s(S))throw new Error("Point is not on curve");let P=l(S),K=r.sqrt(P),H=(K&Et)===Et;return(_&1)===1!==H&&(K=r.neg(K)),{x:S,y:K}}else if(R===o&&_===4){let S=r.fromBytes(k.subarray(0,r.BYTES)),P=r.fromBytes(k.subarray(r.BYTES,2*r.BYTES));return{x:S,y:P}}else throw new Error(`Point of length ${R} was invalid. Expected ${i} compressed bytes or ${o} uncompressed bytes`)}}),g=I=>or(Tr(I,e.nByteLength));function d(I){let R=n>>Et;return I>R}function p(I){return d(I)?a(-I):I}let y=(I,R,_)=>sr(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=Ee("compactSignature",R,_*2),new m(y(R,0,_),y(R,_,2*_))}static fromDER(R){let{r:_,s:k}=pn.toSig(Ee("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:S}=this,P=B(Ee("msgHash",R));if(S==null||![0,1,2,3].includes(S))throw new Error("recovery id invalid");let K=S===2||S===3?_+e.n:_;if(K>=r.ORDER)throw new Error("recovery id 2 or 3 invalid");let H=S&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 nn(this.toDERHex())}toDERHex(){return pn.hexFromSig({r:this.r,s:this.s})}toCompactRawBytes(){return nn(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 Jl(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 C(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(C(I))throw new Error("first arg must be private key");if(!C(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=sr(I),_=I.length*8-e.nBitLength;return _>0?R>>BigInt(_):R},B=e.bits2int_modN||function(I){return a(E(I))},D=Ti(e.nBitLength);function U(I){if(typeof I!="bigint")throw new Error("bigint expected");if(!(yr<=I&&I<D))throw new Error(`bigint expected < 2^${e.nBitLength}`);return Tr(I,e.nByteLength)}function F(I,R,_=O){if(["recovered","canonical"].some(me=>me in _))throw new Error("sign() legacy options not supported");let{hash:k,randomBytes:S}=e,{lowS:P,prehash:K,extraEntropy:H}=_;P==null&&(P=!0),I=Ee("msgHash",I),K&&(I=Ee("prehashed msgHash",k(I)));let Z=B(I),j=f(R),oe=[U(j),U(Z)];if(H!=null){let me=H===!0?S(r.BYTES):H;oe.push(Ee("extraEntropy",me))}let J=cr(...oe),te=Z;function be(me){let Ge=E(me);if(!h(Ge))return;let We=c(Ge),Fe=u.BASE.multiply(Ge).toAffine(),et=a(Fe.x);if(et===yr)return;let jt=a(We*a(te+et*j));if(jt===yr)return;let Fr=(Fe.x===et?0:2)|Number(Fe.y&Et),li=jt;return P&&d(jt)&&(li=p(jt),Fr^=1),new m(et,li,Fr)}return{seed:J,k2sig:be}}let O={lowS:e.lowS,prehash:!1},M={lowS:e.lowS,prehash:!1};function G(I,R,_=O){let{seed:k,k2sig:S}=F(I,R,_),P=e;return Wc(P.hash.outputLen,P.nByteLength,P.hmac)(k,S)}u.BASE._setWindowSize(8);function Q(I,R,_,k=M){let S=I;if(R=Ee("msgHash",R),_=Ee("publicKey",_),"strict"in k)throw new Error("options.strict was renamed to lowS");let{lowS:P,prehash:K}=k,H,Z;try{if(typeof S=="string"||S instanceof Uint8Array)try{H=m.fromDER(S)}catch(Fe){if(!(Fe instanceof pn.Err))throw Fe;H=m.fromCompact(S)}else if(typeof S=="object"&&typeof S.r=="bigint"&&typeof S.s=="bigint"){let{r:Fe,s:et}=S;H=new m(Fe,et)}else throw new Error("PARSE");Z=u.fromHex(_)}catch(Fe){if(Fe.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),be=a(J*te),me=a(j*te),Ge=u.BASE.multiplyAndAddUnsafe(Z,be,me)?.toAffine();return Ge?a(Ge.x)===j:!1}return{CURVE:e,getPublicKey:x,getSharedSecret:v,sign:G,verify:Q,ProjectivePoint:u,Signature:m,utils:b}}function Dv(t){return{hash:t,hmac:(e,...r)=>Gn(t,e,ts(...r)),randomBytes:rn}}function cp(t,e){let r=n=>ap({...t,...Dv(n)});return Object.freeze({...r(e),create:r})}var lp=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),up=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),Bv=BigInt(1),U0=BigInt(2),fp=(t,e)=>(t+e/U0)/e;function Iv(t){let e=lp,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=Se(f,r,e)*f%e,h=Se(l,r,e)*f%e,g=Se(h,U0,e)*u%e,d=Se(g,i,e)*g%e,p=Se(d,o,e)*d%e,y=Se(p,a,e)*p%e,m=Se(y,c,e)*y%e,b=Se(m,a,e)*p%e,x=Se(b,r,e)*f%e,C=Se(x,s,e)*d%e,v=Se(C,n,e)*u%e,E=Se(v,U0,e);if(!O0.eql(O0.sqr(E),t))throw new Error("Cannot find square root");return E}var O0=cs(lp,void 0,void 0,{sqrt:Iv}),gr=cp({a:BigInt(0),b:BigInt(7),Fp:O0,n:up,Gx:BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),Gy:BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),h:BigInt(1),lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:t=>{let e=up,r=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),n=-Bv*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),i=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),o=r,s=BigInt("0x100000000000000000000000000000000"),a=fp(o*t,e),c=fp(-n*t,e),u=le(t-a*r-c*i,e),f=le(-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}}}},Wn),LI=BigInt(0);var NI=gr.ProjectivePoint;function hp(){return gr.utils.randomPrivateKey()}async function dp(t,e){let{digest:r}=await Ye.digest(e);try{return gr.sign(r,t).toDERRawBytes()}catch(n){throw new W(String(n),"ERR_INVALID_INPUT")}}async function pp(t,e,r){try{let{digest:n}=await Ye.digest(r);return gr.verify(e,n,t)}catch(n){throw new W(String(n),"ERR_INVALID_INPUT")}}function yp(t){return gr.ProjectivePoint.fromHex(t).toRawBytes(!0)}function gp(t){try{gr.getPublicKey(t,!0)}catch(e){throw new W(String(e),"ERR_INVALID_PRIVATE_KEY")}}function F0(t){try{gr.ProjectivePoint.fromHex(t)}catch(e){throw new W(String(e),"ERR_INVALID_PUBLIC_KEY")}}function mp(t){try{return gr.getPublicKey(t,!0)}catch(e){throw new W(String(e),"ERR_INVALID_PRIVATE_KEY")}}var $i=class{_key;constructor(e){F0(e),this._key=e}async verify(e,r){return pp(this._key,r,e)}marshal(){return yp(this._key)}get bytes(){return Xt.encode({Type:Ie.Secp256k1,Data:this.marshal()}).subarray()}equals(e){return Ue(this.bytes,e.bytes)}async hash(){let{bytes:e}=await Ye.digest(this.bytes);return e}},Yi=class{_key;_publicKey;constructor(e,r){this._key=e,this._publicKey=r??mp(e),gp(this._key),F0(this._publicKey)}async sign(e){return dp(this._key,e)}get public(){return new $i(this._publicKey)}marshal(){return this._key}get bytes(){return Zt.encode({Type:Ie.Secp256k1,Data:this.marshal()}).subarray()}equals(e){return Ue(this.bytes,e.bytes)}async hash(){let{bytes:e}=await Ye.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 Jn(this.bytes,e);throw new W(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}};function _v(t){return new Yi(t)}function kv(t){return new $i(t)}async function Rv(){let t=hp();return new Yi(t)}var yn={rsa:P0,ed25519:_0,secp256k1:K0};function xp(t){let e=Object.keys(yn).join(" / ");return new W(`invalid or unsupported key type ${t}. Must be ${e}`,"ERR_UNSUPPORTED_KEY_TYPE")}function bp(t){let e=Xt.decode(t),r=e.Data??new Uint8Array;switch(e.Type){case Ie.RSA:return yn.rsa.unmarshalRsaPublicKey(r);case Ie.Ed25519:return yn.ed25519.unmarshalEd25519PublicKey(r);case Ie.Secp256k1:return yn.secp256k1.unmarshalSecp256k1PublicKey(r);default:throw xp(e.Type??"unknown")}}async function wp(t){let e=Zt.decode(t),r=e.Data??new Uint8Array;switch(e.Type){case Ie.RSA:return yn.rsa.unmarshalRsaPrivateKey(r);case Ie.Ed25519:return yn.ed25519.unmarshalEd25519PrivateKey(r);case Ie.Secp256k1:return yn.secp256k1.unmarshalSecp256k1PrivateKey(r);default:throw xp(e.Type??"RSA")}}var Ps;(function(t){let e;t.codec=()=>(e==null&&(e=_t((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=>Tt(r,t.codec()),t.decode=r=>It(r,t.codec())})(Ps||(Ps={}));var Xi;(function(t){let e;t.codec=()=>(e==null&&(e=_t((r,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),(i.writeDefaults===!0||r.identityKey!=null&&r.identityKey.byteLength>0)&&(n.uint32(10),n.bytes(r.identityKey??new Uint8Array(0))),(i.writeDefaults===!0||r.identitySig!=null&&r.identitySig.byteLength>0)&&(n.uint32(18),n.bytes(r.identitySig??new Uint8Array(0))),r.extensions!=null&&(n.uint32(34),Ps.codec().encode(r.extensions,n,{writeDefaults:!1})),i.lengthDelimited!==!1&&n.ldelim()},(r,n)=>{let i={identityKey:new Uint8Array(0),identitySig:new Uint8Array(0)},o=n==null?r.len:r.pos+n;for(;r.pos<o;){let s=r.uint32();switch(s>>>3){case 1:i.identityKey=r.bytes();break;case 2:i.identitySig=r.bytes();break;case 4:i.extensions=Ps.codec().decode(r,r.uint32());break;default:r.skipType(s&7);break}}return i})),e),t.encode=r=>Tt(r,t.codec()),t.decode=r=>It(r,t.codec())})(Xi||(Xi={}));async function vp(t,e,r){let n=await Pv(t,Ep(e));if(t.publicKey==null)throw new Error("PublicKey was missing from local PeerId");return Nv(t.publicKey,n,r)}function Nv(t,e,r){return Xi.encode({identityKey:t,identitySig:e,extensions:r??{webtransportCerthashes:[]}}).subarray()}async function Pv(t,e){if(t.privateKey==null)throw new Error("PrivateKey was missing from PeerId");return(await wp(t.privateKey)).sign(e)}async function M0(t){return Aa(t.identityKey)}function V0(t){return Xi.decode(t)}function Ep(t){let e=we("noise-libp2p-static-key:");return pe([e,t],e.length+t.length)}async function H0(t,e,r){let n=await Aa(e.identityKey);if(!n.equals(r))throw new Error(`Payload identity key ${n.toString()} does not match expected remote peer ${r.toString()}`);let i=Ep(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 bp(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 ze=ke("libp2p:noise");var St;_l?St=ze:St=Object.assign(()=>{},{enabled:!1,trace:()=>{},error:()=>{}});function Sp(t){St(`LOCAL_STATIC_PUBLIC_KEY ${se(t.publicKey,"hex")}`),St(`LOCAL_STATIC_PRIVATE_KEY ${se(t.privateKey,"hex")}`)}function q0(t){t?(St(`LOCAL_PUBLIC_EPHEMERAL_KEY ${se(t.publicKey,"hex")}`),St(`LOCAL_PRIVATE_EPHEMERAL_KEY ${se(t.privateKey,"hex")}`)):St("Missing local ephemeral keys.")}function Cp(t){St(`REMOTE_STATIC_PUBLIC_KEY ${se(t,"hex")}`)}function z0(t){St(`REMOTE_EPHEMERAL_PUBLIC_KEY ${se(t,"hex")}`)}function Ap(t){t.cs1&&t.cs2?(St(`CIPHER_STATE_1 ${t.cs1.n.getUint64()} ${se(t.cs1.k,"hex")}`),St(`CIPHER_STATE_2 ${t.cs2.n.getUint64()} ${se(t.cs2.k,"hex")}`)):St("Missing cipher state.")}var Uv="Cipherstate has reached maximum n, a new handshake must be performed",Us=class{n;bytes;view;constructor(e=0){this.n=e,this.bytes=new Uint8Array(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>4294967295)throw new Error(Uv)}};var Os=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 new Uint8Array(32)}isEmptyKey(e){let r=this.createEmptyKey();return Ue(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:new Uint8Array(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 ze.error(i),new Uint8Array(32)}}mixHash(e,r){e.h=this.getHash(e.h,r)}getHash(e,r){return this.crypto.hashSHA256(pe([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 Us}}initializeSymmetric(e){let r=we(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=new Uint8Array(32);return r.set(e),r}else return this.getHash(e,new Uint8Array(0))}split(e){let[r,n]=this.crypto.getHKDF(e.ck,new Uint8Array(0)),i=this.initializeKey(r),o=this.initializeKey(n);return{cs1:i,cs2:o}}writeMessageRegular(e,r){let n=this.encryptWithAd(e,new Uint8Array(0),r),i=this.createEmptyKey(),o=new Uint8Array(0);return{ne:i,ns:o,ciphertext:n}}readMessageRegular(e,r){return this.decryptWithAd(e,new Uint8Array(0),r.ciphertext)}};var Fs=class extends Os{initializeInitiator(e,r,n,i){let o="Noise_XX_25519_ChaChaPoly_SHA256",s=this.initializeSymmetric(o);this.mixHash(s,e);let a=new Uint8Array(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=new Uint8Array(32);return{ss:s,s:r,rs:n,psk:i,re:a}}writeMessageA(e,r,n){let i=new Uint8Array(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=new Uint8Array(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=new Uint8Array(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 Ks=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 Fs(i),this.session=this.xx.initSession(this.isInitiator,this.prologue,this.staticKeypair)}async propose(){if(Sp(this.session.hs.s),this.isInitiator){ze.trace("Stage 0 - Initiator starting to send first message.");let e=this.xx.sendMessage(this.session,new Uint8Array(0));await this.connection.write(fh(e)),ze.trace("Stage 0 - Initiator finished sending first message."),q0(this.session.hs.e)}else{ze.trace("Stage 0 - Responder waiting to receive first message...");let e=dh((await this.connection.read()).subarray()),{valid:r}=this.xx.recvMessage(this.session,e);if(!r)throw new Kr("xx handshake stage 0 validation fail");ze.trace("Stage 0 - Responder received first message."),z0(this.session.hs.re)}}async exchange(){if(this.isInitiator){ze.trace("Stage 1 - Initiator waiting to receive first message from responder...");let e=ph((await this.connection.read()).subarray()),{plaintext:r,valid:n}=this.xx.recvMessage(this.session,e);if(!n)throw new Kr("xx handshake stage 1 validation fail");ze.trace("Stage 1 - Initiator received the message."),z0(this.session.hs.re),Cp(this.session.hs.rs),ze.trace("Initiator going to check remote's signature...");try{let i=V0(r);this.remotePeer=this.remotePeer||await M0(i),await H0(this.session.hs.rs,i,this.remotePeer),this.setRemoteNoiseExtension(i.extensions)}catch(i){let o=i;throw new hi(`Error occurred while verifying signed payload: ${o.message}`)}ze.trace("All good with the signature!")}else{ze.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(lh(e)),ze.trace("Stage 1 - Responder sent the second handshake message with signed payload."),q0(this.session.hs.e)}}async finish(){if(this.isInitiator){ze.trace("Stage 2 - Initiator sending third handshake message.");let e=this.xx.sendMessage(this.session,this.payload);await this.connection.write(hh(e)),ze.trace("Stage 2 - Initiator sent message with signed payload.")}else{ze.trace("Stage 2 - Responder waiting for third handshake message...");let e=yh((await this.connection.read()).subarray()),{plaintext:r,valid:n}=this.xx.recvMessage(this.session,e);if(!n)throw new Kr("xx handshake stage 2 validation fail");ze.trace("Stage 2 - Responder received the message, finished handshake.");try{let i=V0(r);this.remotePeer=this.remotePeer||await M0(i),await H0(this.session.hs.rs,i,this.remotePeer),this.setRemoteNoiseExtension(i.extensions)}catch(i){let o=i;throw new hi(`Error occurred while verifying signed payload: ${o.message}`)}}Ap(this.session)}encrypt(e,r){let n=this.getCS(r);return this.xx.encryptWithAd(n,new Uint8Array(0),e)}decrypt(e,r,n){let i=this.getCS(r,!1);return this.xx.decryptWithAd(i,new Uint8Array(0),e,n)}getRemoteStaticKey(){return this.session.hs.rs}getCS(e,r=!0){if(!e.cs1||!e.cs2)throw new Kr("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 Dp(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 Ms=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??i0,this.extensions=n,this.metrics=s?Dp(s):void 0,r?this.staticKeys=this.crypto.generateX25519KeyPairFromSeed(r):this.staticKeys=this.crypto.generateX25519KeyPair(),this.prologue=o??new Uint8Array(0)}async secureOutbound(e,r,n){let i=Bi(r,{lengthEncoder:$n,lengthDecoder:Ni,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=Bi(r,{lengthEncoder:$n,lengthDecoder:Ni,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 vp(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 Ks(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]=Al(),o=e.unwrap();return await Bl(n,xh(r,this.metrics),o,s=>rr(s,{lengthDecoder:Ni}),bh(r,this.metrics),n),i}};function Bp(t={}){return()=>new Ms(t)}var n2=$e(wu(),1);var Z1=$e(wu(),1);var vu=ke("libp2p:webrtc:sdp"),Eu=Object.values(Kt).map(t=>t.decoder).reduce((t,e)=>t.or(e));function Q1(t){let e=t.getConfiguration().certificates?.at(0);if(e==null||e.getFingerprints==null){vu.trace("fetching fingerprint from local SDP");let n=t.localDescription;return n==null?void 0:q3(n.sdp)}if(vu.trace("fetching fingerprint from local certificate"),e.getFingerprints().length===0)return;let r=e.getFingerprints()[0].value;if(r==null)throw tc("","no fingerprint on local certificate");return r}var H3=/^a=fingerprint:(?:\w+-[0-9]+)\s(?<fingerprint>(:?[0-9a-fA-F]{2})+)$/m;function q3(t){return t.match(H3)?.groups?.fingerprint}function z3(t){for(let e of t.protoNames())if(e.startsWith("ip"))return e.toUpperCase();return vu("Warning: multiaddr does not appear to contain IP4 or IP6, defaulting to IP6",t),"IP6"}function js(t){let r=t.stringTuples().filter(n=>n[0]===e2).map(n=>n[1])[0];if(r===void 0||r==="")throw So(`Couldn't find a certhash component of multiaddr: ${t.toString()}`);return r}function Su(t){let e=Eu.decode(t);return Z1.decode(e)}function G3(t){let e=Su(js(t)),r=Cu(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 tc(n,t.toString());return[`${r.toUpperCase()} ${i.join(":").toUpperCase()}`,n]}function Cu(t){switch(t){case"sha1":return"sha-1";case"sha2-256":return"sha-256";case"sha2-512":return"sha-512";default:throw Of(t)}}function W3(t,e){let{host:r,port:n}=t.toOptions(),i=z3(t),[o]=G3(t);return`v=0
29
+ `});var B1=de(()=>{D1();Ms();Nr();iu();Qi()});var au,R_,I1=de(()=>{t1();r1();n1();i1();o1();X0();s1();j0();a1();u1();x1();v1();E1();S1();B1();au={...q0,...z0,...G0,...W0,...$0,...Y0,...Z0,...Q0,...J0,...eu},R_={...ou,...su}});function ii(t){return globalThis.Buffer!=null?new Uint8Array(t.buffer,t.byteOffset,t.byteLength):t}var zs=de(()=>{});function Gs(t=0){return globalThis.Buffer!=null&&globalThis.Buffer.allocUnsafe!=null?ii(globalThis.Buffer.allocUnsafe(t)):new Uint8Array(t)}var cu=de(()=>{zs()});function _1(t,e,r,n){return{name:t,prefix:e,encoder:{name:t,prefix:e,encode:r},decoder:{decode:n}}}var T1,uu,E3,Ws,fu=de(()=>{I1();cu();T1=_1("utf8","u",t=>"u"+new TextDecoder("utf8").decode(t),t=>new TextEncoder().encode(t.substring(1))),uu=_1("ascii","a",t=>{let e="a";for(let r=0;r<t.length;r++)e+=String.fromCharCode(t[r]);return e},t=>{t=t.substring(1);let e=Gs(t.length);for(let r=0;r<t.length;r++)e[r]=t.charCodeAt(r);return e}),E3={utf8:T1,"utf-8":T1,hex:au.base16,latin1:uu,ascii:uu,binary:uu,...au},Ws=E3});var k1={};ue(k1,{toString:()=>S3});function S3(t,e="utf8"){let r=Ws[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 R1=de(()=>{fu()});var L1={};ue(L1,{fromString:()=>A3});function A3(t,e="utf8"){let r=Ws[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 N1=de(()=>{fu();zs()});var P1={};ue(P1,{concat:()=>C3});function C3(t,e){e||(e=t.reduce((i,o)=>i+o.length,0));let r=Gs(e),n=0;for(let i of t)r.set(i,n),n+=i.length;return ii(r)}var U1=de(()=>{cu();zs()});var hu=re((G_,H1)=>{"use strict";var O1=Np(),oi=Gp(),{names:Ji}=$p(),{toString:$s}=(R1(),to(k1)),{fromString:D3}=(N1(),to(L1)),{concat:B3}=(U1(),to(P1)),si={};for(let t in Ji){let e=t;si[Ji[e]]=e}Object.freeze(si);function I3(t){if(!(t instanceof Uint8Array))throw new Error("must be passed a Uint8Array");return $s(t,"base16")}function T3(t){return D3(t,"base16")}function _3(t){if(!(t instanceof Uint8Array))throw new Error("must be passed a Uint8Array");return $s(O1.encode("base58btc",t)).slice(1)}function k3(t){let e=t instanceof Uint8Array?$s(t):t;return O1.decode("z"+e)}function F1(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(!M1(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${$s(t,"base16")}`);return{code:e,name:si[e],length:r,digest:t}}function R3(t,e,r){if(!t||e===void 0)throw new Error("multihash encode requires at least two args: digest, code");let n=K1(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 B3([i,o,t],i.length+o.length+t.length)}function K1(t){let e=t;if(typeof t=="string"){if(Ji[t]===void 0)throw new Error(`Unrecognized hash function named: ${t}`);e=Ji[t]}if(typeof e!="number")throw new Error(`Hash function code should be a number. Got: ${e}`);if(si[e]===void 0&&!lu(e))throw new Error(`Unrecognized function code: ${e}`);return e}function lu(t){return t>0&&t<16}function M1(t){return!!(lu(t)||si[t])}function V1(t){F1(t)}function L3(t){return V1(t),t.subarray(0,2)}H1.exports={names:Ji,codes:si,toHexString:I3,fromHexString:T3,toB58String:_3,fromB58String:k3,decode:F1,encode:R3,coerceCode:K1,isAppCode:lu,validate:V1,prefix:L3,isValidCode:M1}});var q3={};ue(q3,{webRTC:()=>H3,webRTCDirect:()=>V3});var W=class extends Error{code;props;constructor(e,r,n){super(e),this.code=r,this.name=n?.name??"CodeError",this.props=n??{}}},ci=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 ro=Symbol.for("@libp2p/transport");var Cu;(function(t){t[t.FATAL_ALL=0]="FATAL_ALL",t[t.NO_FATAL=1]="NO_FATAL"})(Cu||(Cu={}));var Du=Symbol.for("@libp2p/peer-id");var ta={};ue(ta,{base58btc:()=>Te,base58flickr:()=>y2});function f2(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,g=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<g)&&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");g=E,m++}for(var D=x-g;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 g=0,m=0;d[p]===c;)g++,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(g+(b-B)),U=g;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 l2=f2,h2=l2,Bu=h2;var X3=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 Qs=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")}},js=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}}),ea=class{constructor(e,r,n,i){this.name=e,this.prefix=r,this.baseEncode=n,this.baseDecode=i,this.encoder=new Qs(e,r,n),this.decoder=new js(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 ea(t,e,r,n),gr=({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))})},d2=(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},p2=(t,e,r)=>{let n=e[e.length-1]==="=",i=(1<<r)-1,o="",s=0,a=0;for(let c=0;c<t.length;++c)for(a=a<<8|t[c],s+=8;s>r;)s-=r,o+=e[i&a>>s];if(s&&(o+=e[i&a<<r-s]),n)for(;o.length*r&7;)o+="=";return o},_e=({name:t,prefix:e,bitsPerChar:r,alphabet:n})=>yn({prefix:e,name:t,encode(i){return p2(i,n,r)},decode(i){return d2(i,n,r,t)}});var Te=gr({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),y2=gr({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var ra={};ue(ra,{base10:()=>g2});var g2=gr({prefix:"9",name:"base10",alphabet:"0123456789"});var na={};ue(na,{base16:()=>m2,base16upper:()=>x2});var m2=_e({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),x2=_e({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var ia={};ue(ia,{base2:()=>b2});var b2=_e({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var oa={};ue(oa,{base256emoji:()=>A2});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}"),w2=Lu.reduce((t,e,r)=>(t[r]=e,t),[]),v2=Lu.reduce((t,e,r)=>(t[e.codePointAt(0)]=r,t),[]);function E2(t){return t.reduce((e,r)=>(e+=w2[r],e),"")}function S2(t){let e=[];for(let r of t){let n=v2[r.codePointAt(0)];if(n===void 0)throw new Error(`Non-base256emoji character: ${r}`);e.push(n)}return new Uint8Array(e)}var A2=yn({prefix:"\u{1F680}",name:"base256emoji",encode:E2,decode:S2});var sa={};ue(sa,{base32:()=>vt,base32hex:()=>I2,base32hexpad:()=>_2,base32hexpadupper:()=>k2,base32hexupper:()=>T2,base32pad:()=>D2,base32padupper:()=>B2,base32upper:()=>C2,base32z:()=>R2});var vt=_e({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),C2=_e({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),D2=_e({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),B2=_e({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),I2=_e({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),T2=_e({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),_2=_e({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),k2=_e({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),R2=_e({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var aa={};ue(aa,{base36:()=>L2,base36upper:()=>N2});var L2=gr({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),N2=gr({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var ua={};ue(ua,{base64:()=>gn,base64pad:()=>P2,base64url:()=>ca,base64urlpad:()=>U2});var gn=_e({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),P2=_e({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),ca=_e({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),U2=_e({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var fa={};ue(fa,{base8:()=>O2});var O2=_e({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var la={};ue(la,{identity:()=>F2});var F2=yn({prefix:"\0",name:"identity",encode:t=>_u(t),decode:t=>Tu(t)});var fE=new TextEncoder,lE=new TextDecoder;var da={};ue(da,{identity:()=>mr});var V2=Uu,Nu=128,H2=127,q2=~H2,z2=Math.pow(2,31);function Uu(t,e,r){e=e||[],r=r||0;for(var n=r;t>=z2;)e[r++]=t&255|Nu,t/=128;for(;t&q2;)e[r++]=t&255|Nu,t>>>=7;return e[r]=t|0,Uu.bytes=r-n+1,e}var G2=ha,W2=128,Pu=127;function ha(t,n){var r=0,n=n||0,i=0,o=n,s,a=t.length;do{if(o>=a)throw ha.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>=W2);return ha.bytes=o-n,r}var $2=Math.pow(2,7),Y2=Math.pow(2,14),X2=Math.pow(2,21),Z2=Math.pow(2,28),Q2=Math.pow(2,35),j2=Math.pow(2,42),J2=Math.pow(2,49),ey=Math.pow(2,56),ty=Math.pow(2,63),ry=function(t){return t<$2?1:t<Y2?2:t<X2?3:t<Z2?4:t<Q2?5:t<j2?6:t<J2?7:t<ey?8:t<ty?9:10},ny={encode:V2,decode:G2,encodingLength:ry},iy=ny,ui=iy;var fi=(t,e=0)=>[ui.decode(t,e),ui.decode.bytes],mn=(t,e,r=0)=>(ui.encode(t,e,r),e),xn=t=>ui.encodingLength(t);var Pt=(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]=fi(e),[i,o]=fi(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,oy="identity",Ku=Zt,sy=t=>Pt(Fu,Ku(t)),mr={code:Fu,name:oy,encode:Ku,digest:sy};var ga={};ue(ga,{sha256:()=>Ye,sha512:()=>ay});var ya=({name:t,code:e,encode:r})=>new pa(t,e,r),pa=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?Pt(this.code,r):r.then(n=>Pt(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)),Ye=ya({name:"sha2-256",code:18,encode:Vu("SHA-256")}),ay=ya({name:"sha2-512",code:19,encode:Vu("SHA-512")});var Hu=(t,e)=>{let{bytes:r,version:n}=t;switch(n){case 0:return uy(r,ma(t),e||Te.encoder);default:return fy(r,ma(t),e||vt.encoder)}};var qu=new WeakMap,ma=t=>{let e=qu.get(t);if(e==null){let r=new Map;return qu.set(t,r),r}return e},Et=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!==li)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(r.code!==ly)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=Pt(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[hy]===!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!==li)throw new Error(`Version 0 CID must use dag-pb (code: ${li}) 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,li,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]=fi(e.subarray(r));return r+=h,l},i=n(),o=li;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]=cy(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 ma(o).set(n,e),o}},cy=(t,e)=>{switch(t[0]){case"Q":{let r=e||Te;return[Te.prefix,r.decode(`${Te.prefix}${t}`)]}case Te.prefix:{let r=e||Te;return[Te.prefix,r.decode(t)]}case vt.prefix:{let r=e||vt;return[vt.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)]}}},uy=(t,e,r)=>{let{prefix:n}=r;if(n!==Te.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},fy=(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},li=112,ly=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},hy=Symbol.for("@ipld/js-cid/CID");var Ut={...la,...ia,...fa,...ra,...na,...sa,...aa,...ta,...ua,...oa},BE={...ga,...da};function Pe(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 dy=Symbol.for("nodejs.util.inspect.custom"),Gu=Object.values(Ut).map(t=>t.decoder).reduce((t,e)=>t.or(e),Ut.identity.decoder),Wu=114,xa=36,ba=37,hi=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=Te.encode(this.multihash.bytes).slice(1)),this.string}toCID(){return Et.createV1(Wu,this.multihash)}toBytes(){return this.multihash.bytes}toJSON(){return this.toString()}equals(e){if(e instanceof Uint8Array)return Pe(this.multihash.bytes,e);if(typeof e=="string")return Mr(e).equals(this);if(e?.multihash?.bytes!=null)return Pe(this.multihash.bytes,e.multihash.bytes);throw new Error("not valid Id")}[dy](){return`PeerId(${this.toString()})`}},wn=class extends hi{type="RSA";publicKey;constructor(e){super({...e,type:"RSA"}),this.publicKey=e.publicKey}},vn=class extends hi{type="Ed25519";publicKey;constructor(e){super({...e,type:"Ed25519"}),this.publicKey=e.multihash.digest}},En=class extends hi{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(Te.decode(`z${t}`));return t.startsWith("12D")?new vn({multihash:r}):t.startsWith("16U")?new En({multihash:r}):new wn({multihash:r})}return py(Gu.decode(t))}function py(t){try{let e=Fr(t);if(e.code===mr.code){if(e.digest.length===xa)return new vn({multihash:e});if(e.digest.length===ba)return new En({multihash:e})}if(e.code===Ye.code)return new wn({multihash:e})}catch{return yy(Et.decode(t))}throw new Error("Supplied PeerID CID is invalid")}function yy(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===Ye.code)return new wn({multihash:t.multihash});if(e.code===mr.code){if(e.digest.length===xa)return new vn({multihash:t.multihash});if(e.digest.length===ba)return new En({multihash:t.multihash})}throw new Error("Supplied PeerID CID is invalid")}async function wa(t,e){return t.length===xa?new vn({multihash:Pt(mr.code,t),privateKey:e}):t.length===ba?new En({multihash:Pt(mr.code,t),privateKey:e}):new wn({multihash:await Ye.digest(t),publicKey:t,privateKey:e})}function xr(t){return globalThis.Buffer!=null?new Uint8Array(t.buffer,t.byteOffset,t.byteLength):t}function Qt(t=0){return globalThis.Buffer?.alloc!=null?xr(globalThis.Buffer.alloc(t)):new Uint8Array(t)}function Xe(t=0){return globalThis.Buffer?.allocUnsafe!=null?xr(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))),va=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=Xe(t.length);for(let r=0;r<t.length;r++)e[r]=t.charCodeAt(r);return e}),my={utf8:$u,"utf-8":$u,hex:Ut.base16,latin1:va,ascii:va,binary:va,...Ut},io=my;function se(t,e="utf8"){let r=io[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 xy=Math.pow(2,7),by=Math.pow(2,14),wy=Math.pow(2,21),Ea=Math.pow(2,28),Sa=Math.pow(2,35),Aa=Math.pow(2,42),Ca=Math.pow(2,49),pe=128,et=127;function ot(t){if(t<xy)return 1;if(t<by)return 2;if(t<wy)return 3;if(t<Ea)return 4;if(t<Sa)return 5;if(t<Aa)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 vy(t,e,r=0){switch(ot(t)){case 8:e[r++]=t&255|pe,t/=128;case 7:e[r++]=t&255|pe,t/=128;case 6:e[r++]=t&255|pe,t/=128;case 5:e[r++]=t&255|pe,t/=128;case 4:e[r++]=t&255|pe,t>>>=7;case 3:e[r++]=t&255|pe,t>>>=7;case 2:e[r++]=t&255|pe,t>>>=7;case 1:{e[r++]=t&255,t>>>=7;break}default:throw new Error("unreachable")}return e}function Ey(t,e,r=0){switch(ot(t)){case 8:e.set(r++,t&255|pe),t/=128;case 7:e.set(r++,t&255|pe),t/=128;case 6:e.set(r++,t&255|pe),t/=128;case 5:e.set(r++,t&255|pe),t/=128;case 4:e.set(r++,t&255|pe),t>>>=7;case 3:e.set(r++,t&255|pe),t>>>=7;case 2:e.set(r++,t&255|pe),t>>>=7;case 1:{e.set(r++,t&255),t>>>=7;break}default:throw new Error("unreachable")}return e}function Sy(t,e){let r=t[e],n=0;if(n+=r&et,r<pe||(r=t[e+1],n+=(r&et)<<7,r<pe)||(r=t[e+2],n+=(r&et)<<14,r<pe)||(r=t[e+3],n+=(r&et)<<21,r<pe)||(r=t[e+4],n+=(r&et)*Ea,r<pe)||(r=t[e+5],n+=(r&et)*Sa,r<pe)||(r=t[e+6],n+=(r&et)*Aa,r<pe)||(r=t[e+7],n+=(r&et)*Ca,r<pe))return n;throw new RangeError("Could not decode varint")}function Ay(t,e){let r=t.get(e),n=0;if(n+=r&et,r<pe||(r=t.get(e+1),n+=(r&et)<<7,r<pe)||(r=t.get(e+2),n+=(r&et)<<14,r<pe)||(r=t.get(e+3),n+=(r&et)<<21,r<pe)||(r=t.get(e+4),n+=(r&et)*Ea,r<pe)||(r=t.get(e+5),n+=(r&et)*Sa,r<pe)||(r=t.get(e+6),n+=(r&et)*Aa,r<pe)||(r=t.get(e+7),n+=(r&et)*Ca,r<pe))return n;throw new RangeError("Could not decode varint")}function br(t,e,r=0){return e==null&&(e=Xe(ot(t))),e instanceof Uint8Array?vy(t,e,r):Ey(t,e,r)}function St(t,e=0){return t instanceof Uint8Array?Sy(t,e):Ay(t,e)}function le(t,e){e==null&&(e=t.reduce((i,o)=>i+o.length,0));let r=Xe(e),n=0;for(let i of t)r.set(i,n),n+=i.length;return xr(r)}var oo=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,Cy=15,Sn=new oo;function Da(t){if(!(t.length>Cy))return Sn.new(t).parseWith(()=>Sn.readIPv4Addr())}function Ba(t){if(t.includes("%")&&(t=t.split("%")[0]),!(t.length>Xu))return Sn.new(t).parseWith(()=>Sn.readIPv6Addr())}function so(t){if(t.includes("%")&&(t=t.split("%")[0]),!(t.length>Xu))return Sn.new(t).parseWith(()=>Sn.readIPAddr())}var o4=parseInt("0xFFFF",16),s4=new Uint8Array([0,0,0,0,0,0,0,0,0,0,255,255]);function we(t,e="utf8"){let r=io[e];if(r==null)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?xr(globalThis.Buffer.from(t,"utf-8")):r.decoder.decode(`${r.prefix}${t}`)}function ao(t){return!!Da(t)}function co(t){return!!Ba(t)}function uo(t){return!!so(t)}var ju=ao,_y=co,Ia=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(_y(t)){let r=t.split(":",8),n;for(n=0;n<r.length;n++){let o=ju(r[n]),s;o&&(s=Ia(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")},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 An={},Ta={},Ry=[[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"]];Ry.forEach(t=>{let e=Ly(...t);Ta[e.code]=e,An[e.name]=e});function Ly(t,e,r,n,i){return{code:t,size:e,name:r,resolvable:!!n,path:!!i}}function ye(t){if(typeof t=="number"){if(Ta[t]!=null)return Ta[t];throw new Error(`no protocol with code: ${t}`)}else if(typeof t=="string"){if(An[t]!=null)return An[t];throw new Error(`no protocol with name: ${t}`)}throw new Error(`invalid protocol id type: ${typeof t}`)}var W4=ye("ip4"),$4=ye("ip6"),Y4=ye("ipcidr");function ka(t,e){switch(ye(t).code){case 4:case 41:return Py(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 Ky(e);case 444:return nf(e);case 445:return nf(e);case 466:return Fy(e);default:return se(e,"base16")}}function Ra(t,e){switch(ye(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 La(parseInt(e,10));case 53:case 54:case 55:case 56:case 400:case 449:case 777:return tf(e);case 421:return Uy(e);case 444:return My(e);case 445:return Vy(e);case 466:return Oy(e);default:return we(e,"base16")}}var _a=Object.values(Ut).map(t=>t.decoder),Ny=function(){let t=_a[0].or(_a[1]);return _a.slice(2).forEach(e=>t=t.or(e)),t}();function ef(t){if(!uo(t))throw new Error("invalid ip address");return Ia(t)}function Py(t){let e=Ju(t,0,t.length);if(e==null)throw new Error("ipBuff is required");if(!uo(e))throw new Error("invalid ip address");return e}function La(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=we(t),r=Uint8Array.from(br(e.length));return le([r,e],r.length+e.length)}function rf(t){let e=St(t);if(t=t.slice(ot(e)),t.length!==e)throw new Error("inconsistent lengths");return se(t)}function Uy(t){let e;t[0]==="Q"||t[0]==="1"?e=Fr(Te.decode(`z${t}`)).bytes:e=Et.parse(t).multihash.bytes;let r=Uint8Array.from(br(e.length));return le([r,e],r.length+e.length)}function Oy(t){let e=Ny.decode(t),r=Uint8Array.from(br(e.length));return le([r,e],r.length+e.length)}function Fy(t){let e=St(t),r=t.slice(ot(e));if(r.length!==e)throw new Error("inconsistent lengths");return"u"+se(r,"base64url")}function Ky(t){let e=St(t),r=t.slice(ot(e));if(r.length!==e)throw new Error("inconsistent lengths");return se(r,"base58btc")}function My(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=vt.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=La(n);return le([r,i],r.length+i.length)}function Vy(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=vt.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=La(n);return le([r,i],r.length+i.length)}function nf(t){let e=t.slice(0,t.length-2),r=t.slice(t.length-2),n=se(e,"base32"),i=of(r);return`${n}:${i}`}function sf(t){t=Na(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=ye(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=Na(i.slice(o).join("/")),e.push([a.code,Ra(a.code,n)]),r.push([a.code,n]);break}let c=Ra(a.code,i[o]);e.push([a.code,c]),r.push([a.code,ka(a.code,c)])}return{string:af(r),bytes:Ua(e),tuples:e,stringTuples:r,path:n}}function Pa(t){let e=[],r=[],n=null,i=0;for(;i<t.length;){let o=St(t,i),s=ot(o),a=ye(o),c=Hy(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: "+se(t,"base16"));e.push([o,u]);let f=ka(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=ye(r[0]);return e.push(n.name),r.length>1&&r[1]!=null&&e.push(r[1]),null}),Na(e.join("/"))}function Ua(t){return le(t.map(e=>{let r=ye(e[0]),n=Uint8Array.from(br(r.code));return e.length>1&&e[1]!=null&&(n=le([n,e[1]])),n}))}function Hy(t,e){if(t.size>0)return t.size/8;if(t.size===0)return 0;{let r=St(e instanceof Uint8Array?e:Uint8Array.from(e));return r+ot(r)}}function Na(t){return"/"+t.trim().split("/").filter(e=>e).join("/")}function cf(t){return new Error("Error parsing address: "+t)}var qy=Symbol.for("nodejs.util.inspect.custom"),Oa=Symbol.for("@multiformats/js-multiaddr/multiaddr"),zy=[ye("dns").code,ye("dns4").code,ye("dns6").code,ye("dnsaddr").code],fo=class t{bytes;#e;#t;#r;#n;[Oa]=!0;constructor(e){e==null&&(e="");let r;if(e instanceof Uint8Array)r=Pa(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=Pa(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=ye("tcp"),a=ye("udp"),c=ye("ip4"),u=ye("ip6"),f=ye("dns6"),l=ye("ip6zone");for(let[y,d]of this.stringTuples())y===l.code&&(o=`%${d??""}`),zy.includes(y)&&(r=s.name,i=443,n=`${d??""}${o}`,e=y===f.code?6:4),(y===s.code||y===a.code)&&(r=ye(y).name,i=parseInt(d??"")),(y===c.code||y===u.code)&&(r=ye(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({},ye(e)))}protoCodes(){return this.#t.map(([e])=>e)}protoNames(){return this.#t.map(([e])=>ye(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(Ua(r.slice(0,n)));return this}getPeerId(){try{let e=[];this.stringTuples().forEach(([n,i])=>{n===An.p2p.code&&e.push([n,i]),n===An["p2p-circuit"].code&&(e=[])});let r=e.pop();if(r?.[1]!=null){let n=r[1];return n[0]==="Q"||n[0]==="1"?se(Te.decode(`z${n}`),"base58btc"):se(Et.parse(n).multihash.bytes,"base58btc")}return null}catch{return null}}getPath(){return this.#n}equals(e){return Pe(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)}[qy](){return`Multiaddr(${this.#e})`}};var uf=new Map;function ff(t){return!!t?.[Oa]}function jt(t){return new fo(t)}var Gy=t=>t.toString().split("/").slice(1),pi=t=>({match:e=>e.length<1?!1:t(e[0])?e.slice(1):!1,pattern:"fn"}),Re=t=>({match:e=>pi(r=>r===t).match(e),pattern:t}),po=()=>({match:t=>pi(e=>typeof e=="string").match(t),pattern:"{string}"}),lf=()=>({match:t=>pi(e=>!isNaN(parseInt(e))).match(t),pattern:"{number}"}),yt=()=>({match:t=>{if(t.length<2||t[0]!=="p2p"&&t[0]!=="ipfs")return!1;if(t[1].startsWith("Q")||t[1].startsWith("1"))try{Te.decode(`z${t[1]}`)}catch{return!1}else return!1;return t.slice(2)},pattern:"/p2p/{peerid}"}),lo=()=>({match:t=>{if(t.length<2||t[0]!=="certhash")return!1;try{ca.decode(t[1])}catch{return!1}return t.slice(2)},pattern:"/certhash/{certhash}"}),Ot=t=>({match:e=>{let r=t.match(e);return r===!1?e:r},pattern:`optional(${t.pattern})`}),Ft=(...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(", ")})`}),Le=(...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 Fe(...t){function e(i){let o=Gy(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 Ka=Le(Re("dns4"),po()),Ma=Le(Re("dns6"),po()),Va=Le(Re("dnsaddr"),po()),hf=Le(Re("dns"),po()),SS=Fe(Ka),AS=Fe(Ma),CS=Fe(Va),DS=Fe(Ft(hf,Va,Ka,Ma)),df=Le(Re("ip4"),pi(ao)),pf=Le(Re("ip6"),pi(co)),yf=Ft(df,pf),yi=Ft(yf,hf,Ka,Ma,Va),BS=Fe(yi),IS=Fe(df),TS=Fe(pf),_S=Fe(yf),yo=Le(yi,Re("tcp"),lf()),gi=Le(yi,Re("udp"),lf()),Wy=Ft(yo,gi),kS=Fe(yo),RS=Fe(gi),Ha=Le(gi,Re("quic")),go=Le(gi,Re("quic-v1")),$y=Ft(Ha,go),LS=Fe(Ha),NS=Fe(go),Fa=Ft(yi,yo,gi,Ha,go),gf=Ft(Le(Fa,Re("ws"),Ot(yt()))),PS=Fe(gf),mf=Ft(Le(Fa,Re("wss"),Ot(yt())),Le(Fa,Re("tls"),Re("ws"),Ot(yt()))),US=Fe(mf),xf=Le(Wy,Re("webrtc-direct"),lo(),Ot(lo()),Ot(yt())),bf=Fe(xf),wf=Le(go,Re("webtransport"),lo(),lo(),Ot(yt())),OS=Fe(wf),ho=Ft(gf,mf,Le(yo,Ot(yt())),Le($y,Ot(yt())),Le(yi,Ot(yt())),xf,wf,yt()),FS=Fe(ho),Yy=Le(ho,Re("p2p-circuit"),yt()),KS=Fe(Yy),Xy=Ft(Le(ho,Re("p2p-circuit"),Re("webrtc"),yt()),Le(ho,Re("webrtc"),Ot(yt())),Re("webrtc")),vf=Fe(Xy);var ft;(function(t){t.ERR_ALREADY_ABORTED="ERR_ALREADY_ABORTED",t.ERR_DATA_CHANNEL="ERR_DATA_CHANNEL",t.ERR_CONNECTION_CLOSED="ERR_CONNECTION_CLOSED",t.ERR_HASH_NOT_SUPPORTED="ERR_HASH_NOT_SUPPORTED",t.ERR_INVALID_MULTIADDR="ERR_INVALID_MULTIADDR",t.ERR_INVALID_FINGERPRINT="ERR_INVALID_FINGERPRINT",t.ERR_INVALID_PARAMETERS="ERR_INVALID_PARAMETERS",t.ERR_NOT_IMPLEMENTED="ERR_NOT_IMPLEMENTED",t.ERR_TOO_MANY_INBOUND_PROTOCOL_STREAMS="ERR_TOO_MANY_INBOUND_PROTOCOL_STREAMS",t.ERR_TOO_MANY_OUTBOUND_PROTOCOL_STREAMS="ERR_TOO_MANY_OUTBOUND_PROTOCOL_STREAMS"})(ft||(ft={}));var wr=class extends W{constructor(e,r){super(`WebRTC transport error: ${e}`,r??""),this.name="WebRTCTransportError"}};var qa=class extends wr{constructor(e,r){super(`[stream: ${e}] data channel error: ${r}`,ft.ERR_DATA_CHANNEL),this.name="WebRTC/DataChannelError"}};function Xa(t,e){return new qa(t,e)}var za=class extends wr{constructor(e){super(`There was a problem with the Multiaddr which was passed in: ${e}`,ft.ERR_INVALID_MULTIADDR),this.name="WebRTC/InappropriateMultiaddrError"}};function mo(t){return new za(t)}var Ga=class extends wr{constructor(e){super(`There was a problem with a provided argument: ${e}`,ft.ERR_INVALID_PARAMETERS),this.name="WebRTC/InvalidArgumentError"}};function mi(t){return new Ga(t)}var Wa=class extends wr{constructor(e,r){super(`Invalid fingerprint "${e}" within ${r}`,ft.ERR_INVALID_FINGERPRINT),this.name="WebRTC/InvalidFingerprintError"}};function Za(t,e){return new Wa(t,e)}var $a=class extends wr{constructor(e){super(`A method (${e}) was called though it has been intentionally left unimplemented.`,ft.ERR_NOT_IMPLEMENTED),this.name="WebRTC/UnimplementedError"}};function Ef(t){return new $a(t)}var Ya=class extends wr{constructor(e){super(`unsupported hash algorithm: ${e}`,ft.ERR_HASH_NOT_SUPPORTED),this.name="WebRTC/UnsupportedHashAlgorithmError"}};function Sf(t){return new Ya(t)}var Af=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))},Zy=function(){function t(e,r,n){this.name=e,this.version=r,this.os=n,this.type="browser"}return t}();var Qy=function(){function t(e){this.version=e,this.type="node",this.name="node",this.os=process.platform}return t}();var jy=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 Jy=function(){function t(){this.type="bot",this.bot=!0,this.name="bot",this.version=null,this.os=null}return t}();var eg=function(){function t(){this.type="react-native",this.name="react-native",this.version=null,this.os=null}return t}();var tg=/alexa|bot|crawl(er|ing)|facebookexternalhit|feedburner|google web preview|nagios|postrank|pingdom|slurp|spider|yahoo!|yandex/,rg=/(nuhk|curl|Googlebot|Yammybot|Openbot|Slurp|MSNBot|Ask\ Jeeves\/Teoma|ia_archiver)/,Cf=3,ng=[["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",tg]],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 eg:typeof navigator<"u"?Bf(navigator.userAgent):sg()}function ig(t){return t!==""&&ng.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=ig(t);if(!e)return null;var r=e[0],n=e[1];if(r==="searchbot")return new Jy;var i=n[1]&&n[1].split(".").join("_").split("_").slice(0,3);i?i.length<Cf&&(i=Af(Af([],i,!0),ag(Cf-i.length),!0)):i=[];var o=i.join("."),s=og(t),a=rg.exec(t);return a&&a[1]?new jy(r,o,s,a[1]):new Zy(r,o,s)}function og(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 sg(){var t=typeof process<"u"&&process.version;return t?new Qy(process.version.slice(1)):null}function ag(t){for(var e=[],r=0;r<t;r++)e.push("0");return e}function Ze(){let t={};return t.promise=new Promise((e,r)=>{t.resolve=e,t.reject=r}),t}var Cn=class extends Error{constructor(e){super(e),this.name="TimeoutError"}},Qa=class extends Error{constructor(e){super(),this.name="AbortError",this.message=e}},Tf=t=>globalThis.DOMException===void 0?new Qa(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 Cn;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(),xi=kf!=null&&kf.name==="firefox",xo=async function*(){},bo=async t=>{},cg=30*1e3;function Rf(t,e,r=cg,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=Ze(),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=xo();sink=bo;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 bi=class extends Error{constructor(e,r){super(e??"The operation was aborted"),this.type="aborted",this.code=r??"ABORT_ERR"}};function Lf(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 wo(t,e,r){let n=r??{},i=Lf(t);async function*o(){let s,a=()=>{s?.()};for(e.addEventListener("abort",a);;){let c;try{if(e.aborted){let{abortMessage:f,abortCode:l}=n;throw new bi(f,l)}let u=new Promise((f,l)=>{s=()=>{let{abortMessage:h,abortCode:y}=n;l(new bi(h,y))}});c=await Promise.race([u,i.next()]),s=null}catch(u){e.removeEventListener("abort",a);let f=u.type==="aborted"&&e.aborted;if(f&&n.onAbort!=null&&n.onAbort(t),typeof i.return=="function")try{let l=i.return();l instanceof Promise&&l.catch(h=>{n.onReturnError!=null&&n.onReturnError(h)})}catch(l){n.onReturnError!=null&&n.onReturnError(l)}if(f&&n.returnOnAbort===!0)return;throw u}if(c.done===!0)break;yield c.value}e.removeEventListener("abort",a)}return o()}var vo=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 vo(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 vo(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 ja=class extends Error{type;code;constructor(e,r){super(e??"The operation was aborted"),this.type="aborted",this.code=r??"ABORT_ERR"}};function Kt(t={}){return ug(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 ug(t,e){e=e??{};let r=e.onEnd,n=new Dn,i,o,s,a=Ze(),c=async()=>{try{return n.isEmpty()?s?{done:!0}:await new Promise((g,m)=>{o=b=>{o=null,n.push(b);try{g(t(n))}catch(x){m(x)}return i}}):t(n)}finally{n.isEmpty()&&queueMicrotask(()=>{a.resolve(),a=Ze()})}},u=g=>o!=null?o(g):(n.push(g),i),f=g=>(n=new Dn,o!=null?o({error:g}):(n.push({error:g}),i)),l=g=>{if(s)return i;if(e?.objectMode!==!0&&g?.byteLength==null)throw new Error("objectMode was not true but tried to push non-Uint8Array value");return u({done:!1,value:g})},h=g=>s?i:(s=!0,g!=null?f(g):u({done:!0})),y=()=>(n=new Dn,h(),{done:!0}),d=g=>(h(g),{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 g=>{let m=g?.signal;if(m?.throwIfAborted(),n.isEmpty())return;let b,x;m!=null&&(b=new Promise((S,v)=>{x=()=>{v(new ja)},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(g){return p.throw(g),r!=null&&(r(g),r=void 0),{done:!0}},return(){return p.return(),r!=null&&(r(),r=void 0),{done:!0}},push:l,end(g){return p.end(g),r!=null&&(r(g),r=void 0),i},get readableLength(){return p.readableLength}},i}var Bn=class extends Error{type;code;constructor(e,r){super(e??"The operation was aborted"),this.type="aborted",this.code=r??"ABORT_ERR"}};async function qr(t,e,r){if(e==null)return t;if(e.aborted)return Promise.reject(new Bn(r?.errorMessage,r?.errorCode));let n,i=new Bn(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 Pf=Symbol.for("@achingbrain/uint8arraylist");function Nf(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 Eo(t){return!!t?.[Pf]}var Me=class t{constructor(...e){Object.defineProperty(this,Pf,{value:!0}),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(Eo(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(Eo(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=Nf(this.bufs,e);return r.buf[r.index]}set(e,r){let n=Nf(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(Eo(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 le(n,i)}subarray(e,r){let{bufs:n,length:i}=this._subList(e,r);return n.length===1?n[0]:le(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(!Eo(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=Xe(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=Qt(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=Qt(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=Qt(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=Xe(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=Qt(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=Qt(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=Qt(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=Qt(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=Qt(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(!Pe(this.bufs[r],e.bufs[r]))return!1;return!0}static fromUint8Arrays(e,r){let n=new t;return n.bufs=e,r==null&&(r=e.reduce((i,o)=>i+o.byteLength,0)),n.length=r,n}};var fg="ERR_STREAM_RESET",lg="ERR_SINK_INVALID_STATE",hg=5e3;function Ja(t){return t!=null&&typeof t.then=="function"}var So=class{id;direction;timeline;protocol;metadata;source;status;readStatus;writeStatus;sinkController;sinkEnd;endErr;streamSource;onEnd;onCloseRead;onCloseWrite;onReset;onAbort;sendCloseWriteTimeout;log;constructor(e){this.sinkController=new AbortController,this.sinkEnd=Ze(),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??hg,this.onEnd=e.onEnd,this.onCloseRead=e?.onCloseRead,this.onCloseWrite=e?.onCloseWrite,this.onReset=e?.onReset,this.onAbort=e?.onAbort,this.source=this.streamSource=Kt({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"`,lg);try{this.writeStatus="writing";let r={signal:this.sinkController.signal};if(this.direction==="outbound"){let n=this.sendNewStream(r);Ja(n)&&await n}e=wo(e,this.sinkController.signal,{returnOnAbort:!0}),this.log.trace("sink reading from source");for await(let n of e){n=n instanceof Uint8Array?new Me(n):n;let i=this.sendData(n,r);Ja(i)&&await i}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.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.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)]),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"),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 qr(this.sink([]),e.signal)),this.writeStatus==="writing"&&await new Promise((r,n)=>{queueMicrotask(()=>{this.log.trace("aborting source passed to .sink"),this.sinkController.abort(),qr(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",fg);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 Ao(t){return t[Symbol.asyncIterator]!=null}var Co=t=>{let e=ot(t),r=Xe(e);return br(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 Ao(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 Me(r(t.byteLength),t)};var In=$e(Ff(),1);var pg=8,yg=1024*1024*4,zr;(function(t){t[t.LENGTH=0]="LENGTH",t[t.DATA=1]="DATA"})(zr||(zr={}));var ec=t=>{let e=St(t);return ec.bytes=ot(e),e};ec.bytes=0;function Jt(t,e){let r=new Me,n=zr.LENGTH,i=-1,o=e?.lengthDecoder??ec,s=e?.maxLengthLength??pg,a=e?.maxDataLength??yg;function*c(){for(;r.byteLength>0;){if(n===zr.LENGTH)try{if(i=o(r),i<0)throw(0,In.default)(new Error("invalid message length"),"ERR_INVALID_MSG_LENGTH");if(i>a)throw(0,In.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=zr.DATA}catch(u){if(u instanceof RangeError){if(r.byteLength>s)throw(0,In.default)(new Error("message length length too long"),"ERR_MSG_LENGTH_TOO_LONG");break}throw u}if(n===zr.DATA){if(r.byteLength<i)break;let u=r.sublist(0,i);r.consume(i),e?.onData!=null&&e.onData(u),yield u,n=zr.LENGTH}}}return Ao(t)?async function*(){for await(let u of t)r.append(u),yield*c();if(r.byteLength>0)throw(0,In.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,In.default)(new Error("unexpected end of input"),"ERR_UNEXPECTED_EOF")}()}Jt.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 Jt(n,{...e??{},onLength:o=>{r=o}})};var gg=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 mg(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}=gg(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 Kf(t,e,r){typeof r=="function"&&(r={filter:r}),r={...r,count:1,resolveImmediately:!1};let n=mg(t,e,r),i=n.then(o=>o[0]);return i.cancel=n.cancel,i}var rc=new Float32Array([-0]),Er=new Uint8Array(rc.buffer);function Mf(t,e,r){rc[0]=t,e[r]=Er[0],e[r+1]=Er[1],e[r+2]=Er[2],e[r+3]=Er[3]}function Vf(t,e){return Er[0]=t[e],Er[1]=t[e+1],Er[2]=t[e+2],Er[3]=t[e+3],rc[0]}var nc=new Float64Array([-0]),tt=new Uint8Array(nc.buffer);function Hf(t,e,r){nc[0]=t,e[r]=tt[0],e[r+1]=tt[1],e[r+2]=tt[2],e[r+3]=tt[3],e[r+4]=tt[4],e[r+5]=tt[5],e[r+6]=tt[6],e[r+7]=tt[7]}function qf(t,e){return tt[0]=t[e],tt[1]=t[e+1],tt[2]=t[e+2],tt[3]=t[e+3],tt[4]=t[e+4],tt[5]=t[e+5],tt[6]=t[e+6],tt[7]=t[e+7],nc[0]}var xg=BigInt(Number.MAX_SAFE_INTEGER),bg=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<xg&&e>bg)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>zf&&(i=0n,++n>zf&&(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 zf=4294967296n;function Gf(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 Wf(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 ic(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 Do(t,e){return(t[e-4]|t[e-3]<<8|t[e-2]<<16|t[e-1]<<24)>>>0}var oc=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 Do(this.buf,this.pos+=4)}sfixed32(){if(this.pos+4>this.len)throw At(this,4);return Do(this.buf,this.pos+=4)|0}float(){if(this.pos+4>this.len)throw At(this,4);let e=Vf(this.buf,this.pos);return this.pos+=4,e}double(){if(this.pos+8>this.len)throw At(this,4);let e=qf(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 Wf(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=Do(this.buf,this.pos+=4),r=Do(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 sc(t){return new oc(t instanceof Uint8Array?t:t.subarray())}function Ct(t,e){let r=sc(t);return e.decode(r)}function ac(t){let e=t??8192,r=e>>>1,n,i=e;return function(s){if(s<1||s>r)return Xe(s);i+s>e&&(n=Xe(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 cc(){}var fc=class{head;tail;len;next;constructor(e){this.head=e.head,this.tail=e.tail,this.len=e.len,this.next=e.states}},wg=ac();function vg(t){return globalThis.Buffer!=null?Xe(t):wg(t)}var Ei=class{len;head;tail;states;constructor(){this.len=0,this.head=new Wr(cc,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 lc((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(wi,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(wi,r.length(),r)}uint64Number(e){let r=st.fromNumber(e);return this._push(wi,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(wi,r.length(),r)}sint64Number(e){let r=st.fromNumber(e).zzEncode();return this._push(wi,r.length(),r)}sint64String(e){return this.sint64(BigInt(e))}bool(e){return this._push(uc,1,e?1:0)}fixed32(e){return this._push(vi,4,e>>>0)}sfixed32(e){return this.fixed32(e)}fixed64(e){let r=st.fromBigInt(e);return this._push(vi,4,r.lo)._push(vi,4,r.hi)}fixed64Number(e){let r=st.fromNumber(e);return this._push(vi,4,r.lo)._push(vi,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(Mf,4,e)}double(e){return this._push(Hf,8,e)}bytes(e){let r=e.length>>>0;return r===0?this._push(uc,1,0):this.uint32(r)._push(Sg,r,e)}string(e){let r=Gf(e);return r!==0?this.uint32(r)._push(ic,r,e):this._push(uc,1,0)}fork(){return this.states=new fc(this),this.head=this.tail=new Wr(cc,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(cc,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=vg(this.len),n=0;for(;e!=null;)e.fn(e.val,r,n),n+=e.len,e=e.next;return r}};function uc(t,e,r){e[r]=t&255}function Eg(t,e,r){for(;t>127;)e[r++]=t&127|128,t>>>=7;e[r]=t}var lc=class extends Wr{next;constructor(e,r){super(Eg,e,r),this.next=void 0}};function wi(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 vi(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 Sg(t,e,r){e.set(t,r)}globalThis.Buffer!=null&&(Ei.prototype.bytes=function(t){let e=t.length>>>0;return this.uint32(e),e>0&&this._push(Ag,e,t),this},Ei.prototype.string=function(t){let e=globalThis.Buffer.byteLength(t);return this.uint32(e),e>0&&this._push(Cg,e,t),this});function Ag(t,e,r){e.set(t,r)}function Cg(t,e,r){t.length<40?ic(t,e,r):e.utf8Write!=null?e.utf8Write(t,r):e.set(we(t),r)}function hc(){return new Ei}function Dt(t,e){let r=hc();return e.encode(t,r,{lengthDelimited:!1}),r.finish()}var Tn;(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"})(Tn||(Tn={}));function Bo(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 Bo("enum",Tn.VARINT,r,n)}function Bt(t,e){return Bo("message",Tn.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=Bt((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=>Dt(i,t.codec()),t.decode=i=>Ct(i,t.codec())})(at||(at={}));var Dg=16*1024*1024,Bg=30*1e3,Ig=5,Tg=2,_g=16*1024,kg=5e3,dc=class extends So{channel;incomingData;messageQueue;maxBufferedAmount;bufferedAmountLowEventTimeout;maxMessageSize;receiveFinAck;finAckTimeout;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=Kt(),this.messageQueue=new Me,this.bufferedAmountLowEventTimeout=e.bufferedAmountLowEventTimeout??Bg,this.maxBufferedAmount=e.maxBufferedAmount??Dg,this.maxMessageSize=(e.maxMessageSize??_g)-Ig-Tg,this.receiveFinAck=Ze(),this.finAckTimeout=e.closeTimeout??kg,this.channel.readyState){case"open":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.messageQueue!=null&&this.messageQueue.byteLength>0&&(this.log.trace("dataChannel opened, sending queued messages",this.messageQueue.byteLength,this.channel.readyState),this._sendMessage(this.messageQueue).catch(o=>{this.log.error("error sending queued messages",o),this.abort(o)})),this.messageQueue=void 0},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 Jt(this.incomingData)){let o=n.processIncomingProtobuf(i);o!=null&&n.sourcePush(new Me(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{await Kf(this.channel,"bufferedamountlow",{timeout:this.bufferedAmountLowEventTimeout})}catch(n){throw n instanceof Cn?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");if(this.channel.readyState==="open")for(let n of e)this.channel.send(n);else if(this.channel.readyState==="connecting")this.messageQueue==null&&(this.messageQueue=new Me),this.messageQueue.append(e);else throw this.log.error("unknown datachannel state %s",this.channel.readyState),new W("Unknown datachannel state","ERR_INVALID_STATE")}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 qr(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 not open",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 _n(t){let{channel:e,direction:r}=t;return new dc({id:r==="inbound"?`i${e.id}`:`r${e.id}`,log:t.logger.forComponent(`libp2p:webrtc:stream:${r}:${e.id}`),...t})}var Yf="/webrtc",Yr=class{protocol;peerConnection;bufferedStreams=[];metrics;dataChannelOptions;components;constructor(e,r){this.components=e,this.peerConnection=r.peerConnection,this.metrics=r.metrics,this.protocol=r.protocol??Yf,this.dataChannelOptions=r.dataChannelOptions??{},this.peerConnection.ondatachannel=({channel:n})=>{let i={},o=_n({channel:n,direction:"inbound",onEnd:s=>{i.onEnd(s)},logger:e.logger,...this.dataChannelOptions});i.stream=o,i.channel=n,i.onEnd=()=>{this.bufferedStreams=this.bufferedStreams.filter(s=>s.stream.id!==o.id)},this.bufferedStreams.push(i)}}createStreamMuxer(e){return new pc(this.components,{...e,peerConnection:this.peerConnection,dataChannelOptions:this.dataChannelOptions,metrics:this.metrics,streams:this.bufferedStreams,protocol:this.protocol})}},pc=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??Yf,this.metrics=r.metrics,this.dataChannelOptions=r.dataChannelOptions??{},this.peerConnection.ondatachannel=({channel:n})=>{let i=_n({channel:n,direction:"inbound",onEnd:()=>{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.#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=xo();sink=bo;newStream(){let e=this.peerConnection.createDataChannel(""),r=_n({channel:e,direction:"outbound",onEnd:()=>{this.#e(r,e)},logger:this.logger,...this.dataChannelOptions});return this.streams.push(r),this.metrics?.increment({outgoing_stream:!0}),r}};var kn=globalThis.RTCPeerConnection,Io=globalThis.RTCSessionDescription,Xf=globalThis.RTCIceCandidate;var To=class extends Error{code;constructor(e,r){super(e),this.code=r}},yc=class extends To{type;constructor(e){super(e,"ABORT_ERR"),this.type="aborted"}};function Zf(t){let e=Kt();t.sink(e).catch(o=>{e.end(o)}),t.sink=async o=>{for await(let s of o)e.push(s);e.end()};let r=t.source;t.source[Symbol.iterator]!=null?r=t.source[Symbol.iterator]():t.source[Symbol.asyncIterator]!=null&&(r=t.source[Symbol.asyncIterator]());let n=new Me;return{read:async(o,s)=>{s?.signal?.throwIfAborted();let a,c=new Promise((u,f)=>{a=()=>{f(new yc("Read aborted"))},s?.signal?.addEventListener("abort",a)});try{if(o==null){let{done:f,value:l}=await Promise.race([r.next(),c]);return f===!0?new Me:l}for(;n.byteLength<o;){let{value:f,done:l}=await Promise.race([r.next(),c]);if(l===!0)throw new To("unexpected end of input","ERR_UNEXPECTED_EOF");n.append(f)}let u=n.sublist(0,o);return n.consume(o),u}finally{a!=null&&s?.signal?.removeEventListener("abort",a)}},write:async(o,s)=>{s?.signal?.throwIfAborted(),o instanceof Uint8Array?e.push(o):e.push(o.subarray()),await e.onEmpty(s)},unwrap:()=>{let o=t.source;return t.source=async function*(){yield*n,yield*o}(),t}}}var _o=class extends Error{code;constructor(e,r){super(e),this.code=r}},Qf=t=>St(t);Qf.bytes=0;function Si(t,e){let r=Zf(t);return{read:async i=>{let o=-1,s=new Me,a=e?.lengthDecoder??Qf;for(;;){s.append(await r.read(1,i));try{o=a(s)}catch(c){if(c instanceof RangeError)continue;throw c}if(o>-1)break;if(e?.maxLengthLength!=null&&s.byteLength>e.maxLengthLength)throw new _o("message length length too long","ERR_MSG_LENGTH_TOO_LONG")}if(e?.maxDataLength!=null&&o>e.maxDataLength)throw new _o("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 Me(...i.map(a=>vr.single(a,e)));await r.write(s,o)},unwrap:()=>r.unwrap()}}function ko(t,e){let r=Si(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 rt;(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=Bt((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=>Dt(i,t.codec()),t.decode=i=>Ct(i,t.codec())})(rt||(rt={}));function jf(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 Ro=async(t,e,r,n)=>{let i=new AbortController;t.promise.then(()=>{i.abort()},()=>{i.abort()});let o=jf([i.signal,n.signal]),s=wo(r.unwrap().unwrap().source,o,{returnOnAbort:!0});try{for await(let a of Jt(s)){let c=rt.decode(a);if(c.type!==rt.Type.ICE_CANDIDATE)throw new W("ICE candidate message expected","ERR_NOT_ICE_CANDIDATE");let u=JSON.parse(c.data??"null");u===""&&(n.log.trace("end-of-candidates for this generation received"),u={candidate:"",sdpMid:"0",sdpMLineIndex:0}),u===null&&(n.log.trace("end-of-candidates received"),u={candidate:null,sdpMid:"0",sdpMLineIndex:0});let f=new Xf(u);n.log.trace("%s received new ICE candidate",n.direction,f);try{await e.addIceCandidate(f)}catch(l){n.log.error("%s bad candidate received",n.direction,l)}}}catch(a){n.log.error("%s error parsing ICE candidate",n.direction,a)}finally{o.clear()}if(n.signal?.aborted===!0)throw new Bn("Aborted while reading ICE candidates","ERR_ICE_CANDIDATES_READ_ABORTED");await qr(t.promise,n.signal,{errorMessage:"Aborted before connected",errorCode:"ERR_ABORTED_BEFORE_CONNECTED"})};function Lo(t,e){t[xi?"oniceconnectionstatechange":"onconnectionstatechange"]=r=>{switch(xi?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 Jf({peerConnection:t,signal:e,metrics:r,multiaddr:n,connectionManager:i,transportManager:o,log:s}){let{baseAddr:a}=el(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(No,{signal:e,runOnTransientConnection:!0}),y=ko(h).pb(rt),d=Ze(),p=()=>{d.reject(new W("SDP handshake aborted","ERR_SDP_HANDSHAKE_ABORTED"))};try{Lo(t,d),e?.addEventListener("abort",p);let g=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:rt.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 y.write({type:rt.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 y.read({signal:e});if(b.type!==rt.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 Io({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 Ro(d,t,y,{direction:"initiator",signal:e,log:s}),s.trace("initiator connected, closing init channel"),g.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(g){throw t.close(),h.abort(g),g}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 Po=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 Rg(e,r))}},gc=class extends Event{detail;constructor(e,r){super(e,r),this.detail=r?.detail}},Rg=globalThis.CustomEvent??gc;var Lg=q("dns4"),Ng=q("dns6"),Pg=q("dnsaddr"),Xr=Ne(q("dns"),Pg,Lg,Ng),Fo=Ne(q("ip4"),q("ip6")),Rn=Ne(X(Fo,q("tcp")),X(Xr,q("tcp"))),Ko=X(Fo,q("udp")),Ug=X(Ko,q("utp")),Og=X(Ko,q("quic")),Fg=X(Ko,q("quic-v1")),mc=Ne(X(Rn,q("ws")),X(Xr,q("ws"))),Uo=Ne(X(mc,q("p2p")),mc),xc=Ne(X(Rn,q("wss")),X(Xr,q("wss")),X(Rn,q("tls"),q("ws")),X(Xr,q("tls"),q("ws"))),Oo=Ne(X(xc,q("p2p")),xc),bc=Ne(X(Rn,q("http")),X(Fo,q("http")),X(Xr,q("http"))),wc=Ne(X(Rn,q("https")),X(Fo,q("https")),X(Xr,q("https"))),tl=X(Ko,q("webrtc-direct"),q("certhash")),il=Ne(X(tl,q("p2p")),tl),rl=X(Fg,q("webtransport"),q("certhash"),q("certhash")),ol=Ne(X(rl,q("p2p")),rl),sl=Ne(X(Uo,q("p2p-webrtc-star"),q("p2p")),X(Oo,q("p2p-webrtc-star"),q("p2p")),X(Uo,q("p2p-webrtc-star")),X(Oo,q("p2p-webrtc-star"))),nA=Ne(X(Uo,q("p2p-websocket-star"),q("p2p")),X(Oo,q("p2p-websocket-star"),q("p2p")),X(Uo,q("p2p-websocket-star")),X(Oo,q("p2p-websocket-star"))),al=Ne(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=Ne(mc,xc,bc,wc,sl,al,Rn,Ug,Og,Xr,il,ol),iA=Ne(X(Zr,q("p2p-stardust"),q("p2p")),X(Zr,q("p2p-stardust"))),Sr=Ne(X(Zr,q("p2p")),sl,al,il,ol,q("p2p")),nl=Ne(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")),cl=()=>Ne(X(nl,cl),nl),er=cl(),oA=Ne(X(er,Sr,er),X(Sr,er),X(er,Sr),er,Sr);var sA=Ne(X(er,q("webrtc"),q("p2p")),X(er,q("webrtc")),X(Zr,q("webrtc"),q("p2p")),X(Zr,q("webrtc")),q("webrtc"));function ul(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:ul(e),partialMatch:e}}function Ne(...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:ul(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 Mo=class extends Po{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=>er.matches(r)).map(r=>r.encapsulate(`/webrtc/p2p/${this.peerId}`))).flat()}async close(){this.shutdownController.abort(),this.safeDispatchEvent("close",{})}};async function fl({peerConnection:t,stream:e,signal:r,connection:n,log:i}){i.trace("new inbound signaling stream");let o=ko(e).pb(rt);try{let a=Ze(),c=Ze();r.onabort=()=>{a.reject(new W("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:rt.Type.ICE_CANDIDATE,data:y},{signal:r})},y=>{i.error("cannot set candidate since sending answer failed",y),a.reject(y)})},Lo(t,a);let u=await o.read({signal:r});if(u.type!==rt.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 Io({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:rt.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 Ro(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 Kg="/webrtc",Mg="/p2p-circuit",No="/webrtc-signaling/0.0.1",Vg=30*1e3,Vo=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(No,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(No),this._started=!1}createListener(e){return new Mo(this.components,{shutdownController:this.shutdownController})}[Symbol.toStringTag]="@libp2p/webrtc";[ro]=!0;filter(e){return e.filter(vf.exactMatch)}async dial(e,r){this.log.trace("dialing address: %a",e);let n=new kn(this.init.rtcConfiguration),i=new Yr(this.components,{peerConnection:n,dataChannelOptions:this.init.dataChannel}),{remoteAddress:o}=await Jf({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??Vg),i=new kn(this.init.rtcConfiguration),o=new Yr(this.components,{peerConnection:i,dataChannelOptions:this.init.dataChannel});try{let{remoteAddress:s}=await fl({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 el(t){let e=t.toString().split(Kg+"/");if(e.length!==2)throw new W("webrtc protocol was not present in multiaddr",ft.ERR_INVALID_MULTIADDR);if(!e[0].includes(Mg))throw new W("p2p-circuit protocol was not present in multiaddr",ft.ERR_INVALID_MULTIADDR);let r=jt(e[0]),i=jt("/"+e[1]).getPeerId();if(i==null)throw new W("destination peer id was missing",ft.ERR_INVALID_MULTIADDR);let o=r.protos().pop();if(o===void 0)throw new W("invalid multiaddr",ft.ERR_INVALID_MULTIADDR);return o.name!=="p2p"&&(r=r.encapsulate(`/p2p/${i}`)),{baseAddr:r,peerId:Mr(i)}}function vc(){let t=Ze(),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 ll(){let t=vc(),e=vc();return[{source:t.source,sink:e.sink},{source:e.source,sink:t.sink}]}function Hg(t){return t[Symbol.asyncIterator]!=null}function qg(...t){let e=[];for(let r of t)Hg(r)||e.push(r);return e.length===t.length?function*(){for(let r of e)yield*r}():async function*(){let r=Kt({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 hl=qg;function dl(t,...e){if(t==null)throw new Error("Empty pipeline");if(Ec(t)){let n=t;t=()=>n.source}else if(yl(t)||pl(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]=Gg(r[n]));return zg(...r)}var zg=(...t)=>{let e;for(;t.length>0;)e=t.shift()(e);return e},pl=t=>t?.[Symbol.asyncIterator]!=null,yl=t=>t?.[Symbol.iterator]!=null,Ec=t=>t==null?!1:t.sink!=null&&t.source!=null,Gg=t=>e=>{let r=t.sink(e);if(r?.then!=null){let n=Kt({objectMode:!0});r.then(()=>{n.end()},s=>{n.end(s)});let i,o=t.source;if(pl(o))i=async function*(){yield*o,n.end()};else if(yl(o))i=function*(){yield*o,n.end()};else throw new Error("Unknown duplex source type - must be Iterable or AsyncIterable");return hl(n,i())}return t.source};var gl=!!globalThis.process?.env?.DUMP_SESSION_KEYS;var Wg=t=>t instanceof Uint8Array;var tr=t=>new Uint32Array(t.buffer,t.byteOffset,Math.floor(t.byteLength/4)),ml=t=>new DataView(t.buffer,t.byteOffset,t.byteLength),$g=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!$g)throw new Error("Non little-endian hardware is not supported");function Ho(t){if(typeof t!="string")throw new Error(`utf8ToBytes expected string, got ${typeof t}`);return new Uint8Array(new TextEncoder().encode(t))}function qo(t){if(typeof t=="string")t=Ho(t);else if(Wg(t))t=t.slice();else throw new Error(`expected Uint8Array, got ${typeof t}`);return t}var Yg=t=>Object.prototype.toString.call(t)==="[object Object]"&&t.constructor===Object;function xl(t,e){if(e!==void 0&&(typeof e!="object"||!Yg(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 bl(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 Ac(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 zo(t){if(!Number.isSafeInteger(t)||t<0)throw new Error(`Wrong positive integer: ${t}`)}function Cc(t){if(typeof t!="boolean")throw new Error(`Expected boolean, not ${t}`)}function Ln(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 wl(t,e){Ln(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=qo(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],y=s[6],d=s[7],p=s[8],g=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),A=0,P=A+U*a+F*(5*g)+O*(5*p)+M*(5*d)+G*(5*y);A=P>>>13,P&=8191,P+=Q*(5*h)+I*(5*l)+R*(5*f)+_*(5*u)+k*(5*c),A+=P>>>13,P&=8191;let K=A+U*c+F*a+O*(5*g)+M*(5*p)+G*(5*d);A=K>>>13,K&=8191,K+=Q*(5*y)+I*(5*h)+R*(5*l)+_*(5*f)+k*(5*u),A+=K>>>13,K&=8191;let H=A+U*u+F*c+O*a+M*(5*g)+G*(5*p);A=H>>>13,H&=8191,H+=Q*(5*d)+I*(5*y)+R*(5*h)+_*(5*l)+k*(5*f),A+=H>>>13,H&=8191;let Z=A+U*f+F*u+O*c+M*a+G*(5*g);A=Z>>>13,Z&=8191,Z+=Q*(5*p)+I*(5*d)+R*(5*y)+_*(5*h)+k*(5*l),A+=Z>>>13,Z&=8191;let j=A+U*l+F*f+O*u+M*c+G*a;A=j>>>13,j&=8191,j+=Q*(5*g)+I*(5*p)+R*(5*d)+_*(5*y)+k*(5*h),A+=j>>>13,j&=8191;let oe=A+U*h+F*l+O*f+M*u+G*c;A=oe>>>13,oe&=8191,oe+=Q*a+I*(5*g)+R*(5*p)+_*(5*d)+k*(5*y),A+=oe>>>13,oe&=8191;let J=A+U*y+F*h+O*l+M*f+G*u;A=J>>>13,J&=8191,J+=Q*c+I*a+R*(5*g)+_*(5*p)+k*(5*d),A+=J>>>13,J&=8191;let te=A+U*d+F*y+O*h+M*l+G*f;A=te>>>13,te&=8191,te+=Q*u+I*c+R*a+_*(5*g)+k*(5*p),A+=te>>>13,te&=8191;let be=A+U*p+F*d+O*y+M*h+G*l;A=be>>>13,be&=8191,be+=Q*f+I*u+R*c+_*a+k*(5*g),A+=be>>>13,be&=8191;let me=A+U*g+F*p+O*d+M*y+G*h;A=me>>>13,me&=8191,me+=Q*l+I*f+R*u+_*c+k*a,A+=me>>>13,me&=8191,A=(A<<2)+A|0,A=A+P|0,P=A&8191,A=A>>>13,K+=A,o[0]=P,o[1]=K,o[2]=H,o[3]=Z,o[4]=j,o[5]=oe,o[6]=J,o[7]=te,o[8]=be,o[9]=me}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=qo(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),wl(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 Xg(t){let e=(n,i)=>t(i).update(qo(n)).digest(),r=t(new Uint8Array(32));return e.outputLen=r.outputLen,e.blockLen=r.blockLen,e.create=n=>t(n),e}var vl=Xg(t=>new Bc(t));var Zg=Ho("expand 16-byte k"),Qg=Ho("expand 32-byte k"),jg=tr(Zg),Jg=tr(Qg);function $(t,e){return t<<e|t>>>32-e}function Ic(t){return t.byteOffset%4===0}var Go=64,em=16,Sl=2**32-1,El=new Uint32Array;function tm(t,e,r,n,i,o,s,a){let c=i.length,u=new Uint8Array(Go),f=tr(u),l=Ic(i)&&Ic(o),h=l?tr(i):El,y=l?tr(o):El;for(let d=0;d<c;s++){if(t(e,r,n,f,s,a),s>=Sl)throw new Error("arx: counter overflow");let p=Math.min(Go,c-d);if(l&&p===Go){let g=d/4;if(d%4!==0)throw new Error("arx: invalid block position");for(let m=0,b;m<em;m++)b=g+m,y[b]=h[b]^f[m];d+=Go;continue}for(let g=0,m;g<p;g++)m=d+g,o[m]=i[m]^u[g];d+=p}}function Tc(t,e){let{allowShortKeys:r,extendNonceFn:n,counterLength:i,counterRight:o,rounds:s}=xl({allowShortKeys:!1,counterLength:8,counterRight:!1,rounds:20},e);if(typeof t!="function")throw new Error("core must be a function");return zo(i),zo(s),Cc(o),Cc(r),(a,c,u,f,l=0)=>{Ln(a),Ln(c),Ln(u);let h=u.length;if(f||(f=new Uint8Array(h)),Ln(f),zo(l),l<0||l>=Sl)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,g;if(d===32)p=a.slice(),y.push(p),g=Jg;else if(d===16&&r)p=new Uint8Array(32),p.set(a),p.set(a,16),g=jg,y.push(p);else throw new Error(`arx: invalid 32-byte key, got length=${d}`);Ic(c)||(c=c.slice(),y.push(c));let m=tr(p);if(n){if(c.length!==24)throw new Error("arx: extended nonce must be 24 bytes");n(g,m,tr(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,y.push(c)}let x=tr(c);for(tm(t,g,m,x,u,f,l,s);y.length>0;)y.pop().fill(0);return f}}function Dl(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],g=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=y,Q=d,I=p,R=g,_=m,k=b,A=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,A=$(A^B,16),I=I+A|0,O=$(O^I,12),B=B+O|0,A=$(A^B,8),I=I+A|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,A=$(A^D,16),Q=Q+A|0,G=$(G^Q,12),D=D+G|0,A=$(A^D,8),Q=Q+A|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++]=y+G|0,n[H++]=d+Q|0,n[H++]=p+I|0,n[H++]=g+R|0,n[H++]=m+_|0,n[H++]=b+k|0,n[H++]=x+A|0,n[H++]=S+P|0,n[H++]=v+K|0}function rm(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],g=r[0],m=r[1],b=r[2],x=r[3];for(let v=0;v<20;v+=2)i=i+c|0,g=$(g^i,16),h=h+g|0,c=$(c^h,12),i=i+c|0,g=$(g^i,8),h=h+g|0,c=$(c^h,7),o=o+u|0,m=$(m^o,16),y=y+m|0,u=$(u^y,12),o=o+u|0,m=$(m^o,8),y=y+m|0,u=$(u^y,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,g=$(g^o,16),p=p+g|0,f=$(f^p,12),o=o+f|0,g=$(g^o,8),p=p+g|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),y=y+b|0,c=$(c^y,12),a=a+c|0,b=$(b^a,8),y=y+b|0,c=$(c^y,7);let S=0;n[S++]=i,n[S++]=o,n[S++]=s,n[S++]=a,n[S++]=g,n[S++]=m,n[S++]=b,n[S++]=x}var nm=Tc(Dl,{counterRight:!1,counterLength:4,allowShortKeys:!1}),im=Tc(Dl,{counterRight:!1,counterLength:8,extendNonceFn:rm,allowShortKeys:!1});var om=new Uint8Array(16),Al=(t,e)=>{t.update(e);let r=e.length%16;r&&t.update(om.subarray(r))},sm=new Uint8Array(32);function Cl(t,e,r,n,i){let o=t(e,r,sm),s=vl.create(o);i&&Al(s,i),Al(s,n);let a=new Uint8Array(16),c=ml(a);Ac(c,0,BigInt(i?i.length:0),!0),Ac(c,8,BigInt(n.length),!0),s.update(a);let u=s.digest();return o.fill(0),u}var Bl=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=Cl(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=Cl(t,e,r,u,n);if(!bl(f,l))throw new Error("invalid tag");return t(e,r,u,s,1),s}}),_c=Sc({blockSize:64,nonceLength:12,tagLength:16},Bl(nm)),eC=Sc({blockSize:64,nonceLength:24,tagLength:16},Bl(im));function Wo(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 Ai(t){if(typeof t!="function"||typeof t.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");Wo(t.outputLen),Wo(t.blockLen)}function Nn(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 Il(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 $o=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;var Tl=t=>t instanceof Uint8Array;var Yo=t=>new DataView(t.buffer,t.byteOffset,t.byteLength),It=(t,e)=>t<<32-e|t>>>e,am=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!am)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 Ar(t){if(typeof t=="string"&&(t=Rc(t)),!Tl(t))throw new Error(`expected Uint8Array, got ${typeof t}`);return t}function Xo(...t){let e=new Uint8Array(t.reduce((n,i)=>n+i.length,0)),r=0;return t.forEach(n=>{if(!Tl(n))throw new Error("Uint8Array expected");e.set(n,r),r+=n.length}),e}var Pn=class{clone(){return this._cloneInto()}},oC={}.toString;function Zo(t){let e=n=>t().update(Ar(n)).digest(),r=t();return e.outputLen=r.outputLen,e.blockLen=r.blockLen,e.create=()=>t(),e}function jr(t=32){if($o&&typeof $o.getRandomValues=="function")return $o.getRandomValues(new Uint8Array(t));throw new Error("crypto.getRandomValues must be defined")}function cm(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 Un=class extends Pn{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=Yo(this.buffer)}update(e){Nn(this);let{view:r,buffer:n,blockLen:i}=this;e=Ar(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=Yo(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){Nn(this),Il(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;cm(n,i-8,BigInt(this.length*8),o),this.process(n,0);let a=Yo(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 Qo=BigInt(4294967295),Lc=BigInt(32);function _l(t,e=!1){return e?{h:Number(t&Qo),l:Number(t>>Lc&Qo)}:{h:Number(t>>Lc&Qo)|0,l:Number(t&Qo)|0}}function um(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}=_l(t[i],e);[r[i],n[i]]=[o,s]}return[r,n]}var fm=(t,e)=>BigInt(t>>>0)<<Lc|BigInt(e>>>0),lm=(t,e,r)=>t>>>r,hm=(t,e,r)=>t<<32-r|e>>>r,dm=(t,e,r)=>t>>>r|e<<32-r,pm=(t,e,r)=>t<<32-r|e>>>r,ym=(t,e,r)=>t<<64-r|e>>>r-32,gm=(t,e,r)=>t>>>r-32|e<<64-r,mm=(t,e)=>e,xm=(t,e)=>t,bm=(t,e,r)=>t<<r|e>>>32-r,wm=(t,e,r)=>e<<r|t>>>32-r,vm=(t,e,r)=>e<<r-32|t>>>64-r,Em=(t,e,r)=>t<<r-32|e>>>64-r;function Sm(t,e,r,n){let i=(e>>>0)+(n>>>0);return{h:t+r+(i/2**32|0)|0,l:i|0}}var Am=(t,e,r)=>(t>>>0)+(e>>>0)+(r>>>0),Cm=(t,e,r,n)=>e+r+n+(t/2**32|0)|0,Dm=(t,e,r,n)=>(t>>>0)+(e>>>0)+(r>>>0)+(n>>>0),Bm=(t,e,r,n,i)=>e+r+n+i+(t/2**32|0)|0,Im=(t,e,r,n,i)=>(t>>>0)+(e>>>0)+(r>>>0)+(n>>>0)+(i>>>0),Tm=(t,e,r,n,i,o)=>e+r+n+i+o+(t/2**32|0)|0;var _m={fromBig:_l,split:um,toBig:fm,shrSH:lm,shrSL:hm,rotrSH:dm,rotrSL:pm,rotrBH:ym,rotrBL:gm,rotr32H:mm,rotr32L:xm,rotlSH:bm,rotlSL:wm,rotlBH:vm,rotlBL:Em,add:Sm,add3L:Am,add3H:Cm,add4L:Dm,add4H:Bm,add5H:Tm,add5L:Im},ne=_m;var[km,Rm]=(()=>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))))(),Cr=new Uint32Array(80),Dr=new Uint32Array(80),Nc=class extends Un{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:g}=this;return[e,r,n,i,o,s,a,c,u,f,l,h,y,d,p,g]}set(e,r,n,i,o,s,a,c,u,f,l,h,y,d,p,g){this.Ah=e|0,this.Al=r|0,this.Bh=n|0,this.Bl=i|0,this.Ch=o|0,this.Cl=s|0,this.Dh=a|0,this.Dl=c|0,this.Eh=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=g|0}process(e,r){for(let x=0;x<16;x++,r+=4)Cr[x]=e.getUint32(r),Dr[x]=e.getUint32(r+=4);for(let x=16;x<80;x++){let S=Cr[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=Cr[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,Cr[x-7],Cr[x-16]);Cr[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:y,Fl:d,Gh:p,Gl:g,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&y^~l&p,B=h&d^~h&g,D=ne.add5L(b,v,B,Rm[x],Dr[x]),U=ne.add5H(D,m,S,E,km[x],Cr[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=g|0,p=y|0,g=d|0,y=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:y,l:d}=ne.add(this.Fh|0,this.Fl|0,y|0,d|0),{h:p,l:g}=ne.add(this.Gh|0,this.Gl|0,p|0,g|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,y,d,p,g,m,b)}roundClean(){Cr.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=Zo(()=>new Nc);var es={};ue(es,{bitGet:()=>Km,bitLen:()=>Fm,bitMask:()=>Ci,bitSet:()=>Mm,bytesToHex:()=>rr,bytesToNumberBE:()=>nr,bytesToNumberLE:()=>Tt,concatBytes:()=>or,createHmacDrbg:()=>Fc,ensureBytes:()=>Ee,equalBytes:()=>Um,hexToBytes:()=>Jr,hexToNumber:()=>Oc,numberToBytesBE:()=>Br,numberToBytesLE:()=>ir,numberToHexUnpadded:()=>Ll,numberToVarBytesBE:()=>Pm,utf8ToBytes:()=>Om,validateObject:()=>gt});var Rl=BigInt(0),jo=BigInt(1),Lm=BigInt(2),Jo=t=>t instanceof Uint8Array,Nm=Array.from({length:256},(t,e)=>e.toString(16).padStart(2,"0"));function rr(t){if(!Jo(t))throw new Error("Uint8Array expected");let e="";for(let r=0;r<t.length;r++)e+=Nm[t[r]];return e}function Ll(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 nr(t){return Oc(rr(t))}function Tt(t){if(!Jo(t))throw new Error("Uint8Array expected");return Oc(rr(Uint8Array.from(t).reverse()))}function Br(t,e){return Jr(t.toString(16).padStart(e*2,"0"))}function ir(t,e){return Br(t,e).reverse()}function Pm(t){return Jr(Ll(t))}function Ee(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 or(...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 Um(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 Om(t){if(typeof t!="string")throw new Error(`utf8ToBytes expected string, got ${typeof t}`);return new Uint8Array(new TextEncoder().encode(t))}function Fm(t){let e;for(e=0;t>Rl;t>>=jo,e+=1);return e}function Km(t,e){return t>>BigInt(e)&jo}var Mm=(t,e,r)=>t|(r?jo:Rl)<<BigInt(e),Ci=t=>(Lm<<BigInt(t-1))-jo,Uc=t=>new Uint8Array(t),kl=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(kl([0]),l),n=a(),l.length!==0&&(i=a(kl([1]),l),n=a())},u=()=>{if(o++>=1e3)throw new Error("drbg: tried 1000 values");let l=0,h=[];for(;l<e;){n=a();let y=n.slice();h.push(y),l+=n.length}return or(...h)};return(l,h)=>{s(),c(l);let y;for(;!(y=h(u()));)c();return s(),y}}var Vm={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 gt(t,e,r={}){let n=(i,o,s)=>{let a=Vm[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 Ke=BigInt(0),De=BigInt(1),en=BigInt(2),Hm=BigInt(3),Kc=BigInt(4),Nl=BigInt(5),Pl=BigInt(8),qm=BigInt(9),zm=BigInt(16);function he(t,e){let r=t%e;return r>=Ke?r:e+r}function Mc(t,e,r){if(r<=Ke||e<Ke)throw new Error("Expected power/modulo > 0");if(r===De)return Ke;let n=De;for(;e>Ke;)e&De&&(n=n*t%r),t=t*t%r,e>>=De;return n}function Se(t,e,r){let n=t;for(;e-- >Ke;)n*=n,n%=r;return n}function ts(t,e){if(t===Ke||e<=Ke)throw new Error(`invert: expected positive integers, got n=${t} mod=${e}`);let r=he(t,e),n=e,i=Ke,o=De,s=De,a=Ke;for(;r!==Ke;){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!==De)throw new Error("invert: does not exist");return he(i,e)}function Gm(t){let e=(t-De)/en,r,n,i;for(r=t-De,n=0;r%en===Ke;r/=en,n++);for(i=en;i<t&&Mc(i,e,t)!==t-De;i++);if(n===1){let s=(t+De)/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+De)/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,De<<BigInt(u-y-1));f=a.sqr(d),l=a.mul(l,d),h=a.mul(h,f),u=y}return l}}function Wm(t){if(t%Kc===Hm){let e=(t+De)/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%Pl===Nl){let e=(t-Nl)/Pl;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%zm,Gm(t)}var Ul=(t,e)=>(he(t,e)&De)===De,$m=["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=$m.reduce((n,i)=>(n[i]="function",n),e);return gt(t,r)}function Ym(t,e,r){if(r<Ke)throw new Error("Expected power > 0");if(r===Ke)return t.ONE;if(r===De)return e;let n=t.ONE,i=e;for(;r>Ke;)r&De&&(n=t.mul(n,i)),i=t.sqr(i),r>>=De;return n}function Xm(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 rs(t,e,r=!1,n={}){if(t<=Ke)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=Wm(t),a=Object.freeze({ORDER:t,BITS:i,BYTES:o,MASK:Ci(i),ZERO:Ke,ONE:De,create:c=>he(c,t),isValid:c=>{if(typeof c!="bigint")throw new Error(`Invalid field element: expected bigint, got ${typeof c}`);return Ke<=c&&c<t},is0:c=>c===Ke,isOdd:c=>(c&De)===De,neg:c=>he(-c,t),eql:(c,u)=>c===u,sqr:c=>he(c*c,t),add:(c,u)=>he(c+u,t),sub:(c,u)=>he(c-u,t),mul:(c,u)=>he(c*u,t),pow:(c,u)=>Ym(a,c,u),div:(c,u)=>he(c*ts(u,t),t),sqrN:c=>c*c,addN:(c,u)=>c+u,subN:(c,u)=>c-u,mulN:(c,u)=>c*u,inv:c=>ts(c,t),sqrt:n.sqrt||(c=>s(a,c)),invertBatch:c=>Xm(a,c),cmov:(c,u,f)=>f?u:c,toBytes:c=>r?ir(c,o):Br(c,o),fromBytes:c=>{if(c.length!==o)throw new Error(`Fp.fromBytes: expected ${o}, got ${c.length}`);return r?Tt(c):nr(c)}});return Object.freeze(a)}function Ol(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 Fl(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=Fl(t);return e+Math.ceil(e/2)}function Kl(t,e,r=!1){let n=t.length,i=Fl(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?nr(t):Tt(t),a=he(s,e-De)+De;return r?ir(a,i):Br(a,i)}var Qm=BigInt(0),zc=BigInt(1);function ns(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>Qm;)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,y=BigInt(i);for(let d=0;d<a;d++){let p=d*c,g=Number(s&l);s>>=y,g>c&&(g-=h,s+=zc);let m=p,b=p+Math.abs(g)-1,x=d%2!==0,S=g<0;g===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 Di(t){return Vc(t.Fp),gt(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 _t=BigInt(0),lt=BigInt(1),is=BigInt(2),jm=BigInt(8),Jm={zip215:!0};function ex(t){let e=Di(t);return gt(t,{hash:"function",a:"bigint",d:"bigint",randomBytes:"function"},{adjustScalarBytes:"function",domain:"function",uvRatio:"function",mapToCurve:"function"}),Object.freeze({...e})}function os(t){let e=ex(t),{Fp:r,n,prehash:i,hash:o,randomBytes:s,nByteLength:a,h:c}=e,u=is<<BigInt(a*8)-lt,f=r.create,l=e.uvRatio||((k,A)=>{try{return{isValid:!0,value:r.sqrt(k*r.inv(A))}}catch{return{isValid:!1,value:_t}}}),h=e.adjustScalarBytes||(k=>k),y=e.domain||((k,A,P)=>{if(A.length||P)throw new Error("Contexts/pre-hash are not supported");return k}),d=k=>typeof k=="bigint"&&_t<k,p=(k,A)=>d(k)&&d(A)&&k<A,g=k=>k===_t||p(k,u);function m(k,A){if(p(k,A))return k;throw new Error(`Expected valid scalar < ${A}, got ${typeof k} ${k}`)}function b(k){return k===_t?k:m(k,n)}let x=new Map;function S(k){if(!(k instanceof v))throw new Error("ExtendedPoint expected")}class v{constructor(A,P,K,H){if(this.ex=A,this.ey=P,this.ez=K,this.et=H,!g(A))throw new Error("x required");if(!g(P))throw new Error("y required");if(!g(K))throw new Error("z required");if(!g(H))throw new Error("t required")}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static fromAffine(A){if(A instanceof v)throw new Error("extended point not allowed");let{x:P,y:K}=A||{};if(!g(P)||!g(K))throw new Error("invalid affine point");return new v(P,K,lt,f(P*K))}static normalizeZ(A){let P=r.invertBatch(A.map(K=>K.ez));return A.map((K,H)=>K.toAffine(P[H])).map(v.fromAffine)}_setWindowSize(A){this._WINDOW_SIZE=A,x.delete(this)}assertValidity(){let{a:A,d:P}=e;if(this.is0())throw new Error("bad point: ZERO");let{ex:K,ey:H,ez:Z,et:j}=this,oe=f(K*K),J=f(H*H),te=f(Z*Z),be=f(te*te),me=f(oe*A),Ge=f(te*f(me+J)),We=f(be+f(P*f(oe*J)));if(Ge!==We)throw new Error("bad point: equation left != right (1)");let Oe=f(K*H),Je=f(Z*j);if(Oe!==Je)throw new Error("bad point: equation left != right (2)")}equals(A){S(A);let{ex:P,ey:K,ez:H}=this,{ex:Z,ey:j,ez:oe}=A,J=f(P*oe),te=f(Z*H),be=f(K*oe),me=f(j*H);return J===te&&be===me}is0(){return this.equals(v.ZERO)}negate(){return new v(f(-this.ex),this.ey,this.ez,f(-this.et))}double(){let{a:A}=e,{ex:P,ey:K,ez:H}=this,Z=f(P*P),j=f(K*K),oe=f(is*f(H*H)),J=f(A*Z),te=P+K,be=f(f(te*te)-Z-j),me=J+j,Ge=me-oe,We=J-j,Oe=f(be*Ge),Je=f(me*We),Xt=f(be*We),Ur=f(Ge*me);return new v(Oe,Je,Ur,Xt)}add(A){S(A);let{a:P,d:K}=e,{ex:H,ey:Z,ez:j,et:oe}=this,{ex:J,ey:te,ez:be,et:me}=A;if(P===BigInt(-1)){let mu=f((Z-H)*(te+J)),xu=f((Z+H)*(te-J)),Zs=f(xu-mu);if(Zs===_t)return this.double();let bu=f(j*is*me),wu=f(oe*is*be),vu=wu+bu,Eu=xu+mu,Su=wu-bu,t2=f(vu*Zs),r2=f(Eu*Su),n2=f(vu*Su),i2=f(Zs*Eu);return new v(t2,r2,i2,n2)}let Ge=f(H*J),We=f(Z*te),Oe=f(oe*K*me),Je=f(j*be),Xt=f((H+Z)*(J+te)-Ge-We),Ur=Je-Oe,ai=Je+Oe,gu=f(We-P*Ge),Q1=f(Xt*Ur),j1=f(ai*gu),J1=f(Xt*gu),e2=f(Ur*ai);return new v(Q1,j1,e2,J1)}subtract(A){return this.add(A.negate())}wNAF(A){return D.wNAFCached(this,x,A,v.normalizeZ)}multiply(A){let{p:P,f:K}=this.wNAF(m(A,n));return v.normalizeZ([P,K])[0]}multiplyUnsafe(A){let P=b(A);return P===_t?B:this.equals(B)||P===lt?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(A){let{ex:P,ey:K,ez:H}=this,Z=this.is0();A==null&&(A=Z?jm:r.inv(H));let j=f(P*A),oe=f(K*A),J=f(H*A);if(Z)return{x:_t,y:lt};if(J!==lt)throw new Error("invZ was invalid");return{x:j,y:oe}}clearCofactor(){let{h:A}=e;return A===lt?this:this.multiplyUnsafe(A)}static fromHex(A,P=!1){let{d:K,a:H}=e,Z=r.BYTES;A=Ee("pointHex",A,Z);let j=A.slice(),oe=A[Z-1];j[Z-1]=oe&-129;let J=Tt(j);J===_t||(P?m(J,u):m(J,r.ORDER));let te=f(J*J),be=f(te-lt),me=f(K*te-H),{isValid:Ge,value:We}=l(be,me);if(!Ge)throw new Error("Point.fromHex: invalid y coordinate");let Oe=(We&lt)===lt,Je=(oe&128)!==0;if(!P&&We===_t&&Je)throw new Error("Point.fromHex: x=0 and x_0=1");return Je!==Oe&&(We=f(-We)),v.fromAffine({x:We,y:J})}static fromPrivateKey(A){return O(A).point}toRawBytes(){let{x:A,y:P}=this.toAffine(),K=ir(P,r.BYTES);return K[K.length-1]|=A&lt?128:0,K}toHex(){return rr(this.toRawBytes())}}v.BASE=new v(e.Gx,e.Gy,lt,f(e.Gx*e.Gy)),v.ZERO=new v(_t,lt,lt,_t);let{BASE:E,ZERO:B}=v,D=ns(v,a*8);function U(k){return he(k,n)}function F(k){return U(Tt(k))}function O(k){let A=a;k=Ee("private key",k,A);let P=Ee("hashed private key",o(k),2*A),K=h(P.slice(0,A)),H=P.slice(A,2*A),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,...A){let P=or(...A);return F(o(y(P,Ee("context",k),!!i)))}function Q(k,A,P={}){k=Ee("message",k),i&&(k=i(k));let{prefix:K,scalar:H,pointBytes:Z}=O(A),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 be=or(oe,ir(te,r.BYTES));return Ee("result",be,a*2)}let I=Jm;function R(k,A,P,K=I){let{context:H,zip215:Z}=K,j=r.BYTES;k=Ee("signature",k,2*j),A=Ee("message",A),i&&(A=i(A));let oe=Tt(k.slice(j,2*j)),J,te,be;try{J=v.fromHex(P,Z),te=v.fromHex(k.slice(0,j),Z),be=E.multiplyUnsafe(oe)}catch{return!1}if(!Z&&J.isSmallOrder())return!1;let me=G(H,te.toRawBytes(),J.toRawBytes(),A);return te.add(J.multiplyUnsafe(me)).subtract(be).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,A=v.BASE){return A._setWindowSize(k),A.multiply(BigInt(3)),A}}}}var Bi=BigInt(0),Gc=BigInt(1);function tx(t){return gt(t,{a:"bigint"},{montgomeryBits:"isSafeInteger",nByteLength:"isSafeInteger",adjustScalarBytes:"function",domain:"function",powPminus2:"function",Gu:"bigint"}),Object.freeze({...t})}function Ml(t){let e=tx(t),{P:r}=e,n=x=>he(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"&&Bi<=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=Bi,F=v,O=Gc,M=Bi,G;for(let I=BigInt(i-1);I>=Bi;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(_*_),A=D-U,P=n(A*A),K=k-P,H=F+O,Z=F-O,j=n(Z*_),oe=n(H*A),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 y(x){return ir(n(x),o)}function d(x){let S=Ee("u coordinate",x,o);return s===o&&(S[s-1]&=127),Tt(S)}function p(x){let S=Ee("scalar",x);if(S.length!==o&&S.length!==s)throw new Error(`Expected ${o} or ${s} bytes, got ${S.length}`);return Tt(a(S))}function g(x,S){let v=d(S),E=p(x),B=h(v,E);if(B===Bi)throw new Error("Invalid private or public key received");return y(B)}let m=y(e.Gu);function b(x){return g(x,m)}return{scalarMult:g,scalarMultBase:b,getSharedSecret:(x,S)=>g(x,S),getPublicKey:x=>b(x),utils:{randomPrivateKey:()=>e.randomBytes(e.nByteLength)},GuBytes:m}}var Ii=BigInt("57896044618658097711785492504343953926634992332820282019728792003956564819949"),Vl=BigInt("19681161376707505956807079304988542015446066515923890162744021073123829784752"),kC=BigInt(0),rx=BigInt(1),Wc=BigInt(2),nx=BigInt(5),Hl=BigInt(10),ix=BigInt(20),ox=BigInt(40),ql=BigInt(80);function zl(t){let e=Ii,n=t*t%e*t%e,i=Se(n,Wc,e)*n%e,o=Se(i,rx,e)*t%e,s=Se(o,nx,e)*o%e,a=Se(s,Hl,e)*s%e,c=Se(a,ix,e)*a%e,u=Se(c,ox,e)*c%e,f=Se(u,ql,e)*u%e,l=Se(f,ql,e)*u%e,h=Se(l,Hl,e)*s%e;return{pow_p_5_8:Se(h,Wc,e)*t%e,b2:n}}function Gl(t){return t[0]&=248,t[31]&=127,t[31]|=64,t}function sx(t,e){let r=Ii,n=he(e*e*e,r),i=he(n*n*e,r),o=zl(t*i).pow_p_5_8,s=he(t*n*o,r),a=he(e*s*s,r),c=s,u=he(s*Vl,r),f=a===t,l=a===he(-t,r),h=a===he(-t*Vl,r);return f&&(s=c),(l||h)&&(s=u),Ul(s,r)&&(s=he(-s,r)),{isValid:f||l,value:s}}var sr=rs(Ii,void 0,!0),$c={a:BigInt(-1),d:BigInt("37095705934669439343138083508754565189542113879843219016388785533085940283555"),Fp:sr,n:BigInt("7237005577332262213973186563042994240857116359379907606001950938285454250989"),h:BigInt(8),Gx:BigInt("15112221349535400772501151409588531511454012693041857206046113283949847762202"),Gy:BigInt("46316835694926478169428394003475163141307993866256225615783033603165251855960"),hash:Pc,randomBytes:jr,adjustScalarBytes:Gl,uvRatio:sx},On=os($c);function Wl(t,e,r){if(e.length>255)throw new Error("Context is too big");return Xo(Rc("SigEd25519 no Ed25519 collisions"),new Uint8Array([r?1:0,e.length]),e,t)}var RC=os({...$c,domain:Wl}),LC=os({...$c,domain:Wl,prehash:Pc}),Ti=(()=>Ml({P:Ii,a:BigInt(486662),montgomeryBits:255,nByteLength:32,Gu:BigInt(9),powPminus2:t=>{let e=Ii,{pow_p_5_8:r,b2:n}=zl(t);return he(Se(r,BigInt(3),e)*n,e)},adjustScalarBytes:Gl,randomBytes:jr}))();var ax=(sr.ORDER+BigInt(3))/BigInt(8),NC=sr.pow(Wc,ax),PC=sr.sqrt(sr.neg(sr.ONE)),UC=(sr.ORDER-BigInt(5))/BigInt(8),OC=BigInt(486662);var FC=Ol(sr,sr.neg(BigInt(486664)));var KC=BigInt("25063068953384623474111414158702152701244531502492656460079210482610430750235"),MC=BigInt("54469307008909316920995813868745141605393597292927456921205312896311721017578"),VC=BigInt("1159843021668779879193775521855586647937357759715417654439879720876111806838"),HC=BigInt("40440834346308536858101042469323190826248399146238708352240133220865137265952");var qC=BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff");var ss=class extends Pn{constructor(e,r){super(),this.finished=!1,this.destroyed=!1,Ai(e);let n=Ar(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 Nn(this),this.iHash.update(e),this}digestInto(e){Nn(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()}},Fn=(t,e,r)=>new ss(t,e).update(r).digest();Fn.create=(t,e)=>new ss(t,e);function Yl(t,e,r){return Ai(t),r===void 0&&(r=new Uint8Array(t.outputLen)),Fn(t,Ar(r),Ar(e))}var Yc=new Uint8Array([0]),$l=new Uint8Array;function Xl(t,e,r,n=32){if(Ai(t),Wo(n),n>255*t.outputLen)throw new Error("Length should be <= 255*HashLen");let i=Math.ceil(n/t.outputLen);r===void 0&&(r=$l);let o=new Uint8Array(i*t.outputLen),s=Fn.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?$l: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 cx=(t,e,r)=>t&e^~t&r,ux=(t,e,r)=>t&e^t&r^e&r,fx=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 Un{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],y=Tr[l-2],d=It(h,7)^It(h,18)^h>>>3,p=It(y,17)^It(y,19)^y>>>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=It(a,6)^It(a,11)^It(a,25),y=f+h+cx(a,c,u)+fx[l]+Tr[l]|0,p=(It(n,2)^It(n,13)^It(n,22))+ux(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(){Tr.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}};var Kn=Zo(()=>new Xc);var Zc={hashSHA256(t){return Kn(t)},getHKDF(t,e){let r=Yl(Kn,e,t),i=Xl(Kn,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=Ti.utils.randomPrivateKey();return{publicKey:Ti.getPublicKey(t),privateKey:t}},generateX25519KeyPairFromSeed(t){return{publicKey:Ti.getPublicKey(t),privateKey:t}},generateX25519SharedKey(t,e){return Ti.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 Zl=Zc;var lx=t=>globalThis.Buffer?globalThis.Buffer.allocUnsafe(t):new Uint8Array(t),Mn=t=>{let e=lx(2);return new DataView(e.buffer,e.byteOffset,e.byteLength).setUint16(0,t,!1),e};Mn.bytes=2;var _i=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)};_i.bytes=2;function Ql(t){return le([t.ne,t.ciphertext],t.ne.length+t.ciphertext.length)}function jl(t){return le([t.ne,t.ns,t.ciphertext],t.ne.length+t.ns.length+t.ciphertext.length)}function Jl(t){return le([t.ns,t.ciphertext],t.ns.length+t.ciphertext.length)}function eh(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:new Uint8Array(0)}}function th(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 rh(t){if(t.length<48)throw new Error("Cannot decode stage 2 MessageBuffer: length less than 48 bytes.");return{ne:new Uint8Array(0),ns:t.subarray(0,48),ciphertext:t.subarray(48,t.length)}}var ih=16;function oh(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 le([Mn(s.byteLength),s],2+s.byteLength)}}}function sh(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-ih<i)throw new Error("Invalid chunk");let s=n.subarray(i,o),a=n.subarray(i,o-ih),{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 FI=$e(Pi(),1),KI=$e(Ed(),1);var hv=$e(xe(),1);var E0={};ue(E0,{Ed25519PrivateKey:()=>an,Ed25519PublicKey:()=>Fi,generateKeyPair:()=>Kw,generateKeyPairFromSeed:()=>Td,unmarshalEd25519PrivateKey:()=>Ow,unmarshalEd25519PublicKey:()=>Fw});var Gn=32,fr=64,Cs=32;async function Sd(){let t=On.utils.randomPrivateKey(),e=On.getPublicKey(t);return{privateKey:Bd(t,e),publicKey:e}}async function Ad(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=On.getPublicKey(e);return{privateKey:Bd(e,r),publicKey:r}}async function Cd(t,e){let r=t.subarray(0,Cs);return On.sign(e,r)}async function Dd(t,e,r){return On.verify(e,r,t)}function Bd(t,e){let r=new Uint8Array(fr);for(let n=0;n<Cs;n++)r[n]=t[n],r[Cs+n]=e[n];return r}var ut={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 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=ut.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=we(h));let g;if(h.length===0){g=await a.subtle.importKey("jwk",b0,{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"]);g=await a.subtle.deriveKey(b,x,{name:e,length:r},!0,["encrypt"])}catch{g=await a.subtle.importKey("jwk",b0,{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"]);g=await a.subtle.deriveKey(b,x,{name:e,length:r},!0,["encrypt"])}let m=await a.subtle.encrypt(p,g,l);return le([y,p.iv,new Uint8Array(m)])}async function u(l,h){let y=l.subarray(0,o),d=l.subarray(o,o+n),p=l.subarray(o+n),g={name:e,iv:d};typeof h=="string"&&(h=we(h));let m;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"]);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:y,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(g,m,p);return new Uint8Array(b)}return{encrypt:c,decrypt:u}}async function Wn(t,e){let n=await w0().encrypt(t,e);return gn.encode(n)}var Ie;(function(t){t.RSA="RSA",t.Ed25519="Ed25519",t.Secp256k1="Secp256k1"})(Ie||(Ie={}));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)})(Ie||(Ie={}));var Wt;(function(t){let e;t.codec=()=>(e==null&&(e=Bt((r,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),r.Type!=null&&(n.uint32(8),Ie.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=Ie.codec().decode(r);break;case 2:i.Data=r.bytes();break;default:r.skipType(s&7);break}}return i})),e),t.encode=r=>Dt(r,t.codec()),t.decode=r=>Ct(r,t.codec())})(Wt||(Wt={}));var $t;(function(t){let e;t.codec=()=>(e==null&&(e=Bt((r,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),r.Type!=null&&(n.uint32(8),Ie.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=Ie.codec().decode(r);break;case 2:i.Data=r.bytes();break;default:r.skipType(s&7);break}}return i})),e),t.encode=r=>Dt(r,t.codec()),t.decode=r=>Ct(r,t.codec())})($t||($t={}));var Fi=class{_key;constructor(e){this._key=$n(e,Gn)}async verify(e,r){return Dd(this._key,r,e)}marshal(){return this._key}get bytes(){return Wt.encode({Type:Ie.Ed25519,Data:this.marshal()}).subarray()}equals(e){return Pe(this.bytes,e.bytes)}async hash(){let{bytes:e}=await Ye.digest(this.bytes);return e}},an=class{_key;_publicKey;constructor(e,r){this._key=$n(e,fr),this._publicKey=$n(r,Gn)}async sign(e){return Cd(this._key,e)}get public(){return new Fi(this._publicKey)}marshal(){return this._key}get bytes(){return $t.encode({Type:Ie.Ed25519,Data:this.marshal()}).subarray()}equals(e){return Pe(this.bytes,e.bytes)}async hash(){let{bytes:e}=await Ye.digest(this.bytes);return e}async id(){let e=mr.digest(this.public.bytes);return Te.encode(e.bytes).substring(1)}async export(e,r="libp2p-key"){if(r==="libp2p-key")return Wn(this.bytes,e);throw new W(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}};function Ow(t){if(t.length>fr){t=$n(t,fr+Gn);let n=t.subarray(0,fr),i=t.subarray(fr,t.length);return new an(n,i)}t=$n(t,fr);let e=t.subarray(0,fr),r=t.subarray(Gn);return new an(e,r)}function Fw(t){return t=$n(t,Gn),new Fi(t)}async function Kw(){let{privateKey:t,publicKey:e}=await Sd();return new an(t,e)}async function Td(t){let{privateKey:e,publicKey:r}=await Ad(t);return new an(e,r)}function $n(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 hB=$e(Ue(),1),dB=$e(vs(),1),_d=$e(xe(),1);function Lt(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=le([new Uint8Array(e-r.length),r])}return se(r,"base64url")}function ht(t){let e=kd(t);return new _d.default.jsbn.BigInteger(se(e,"base16"),16)}function kd(t,e){let r=we(t,"base64urlpad");if(e!=null){if(r.length>e)throw new Error("byte array longer than desired length");r=le([new Uint8Array(e-r.length),r])}return r}var Mw={"P-256":256,"P-384":384,"P-521":521},Vw=Object.keys(Mw),AB=Vw.join(" / ");var B0={};ue(B0,{MAX_KEY_SIZE:()=>Hi,RsaPrivateKey:()=>Yn,RsaPublicKey:()=>Vi,fromJwk:()=>jw,generateKeyPair:()=>Jw,unmarshalRsaPrivateKey:()=>Zw,unmarshalRsaPublicKey:()=>Qw});var Mi=$e(xe(),1);var cI=$e(Ud(),1);function Bs(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 zB=$e(As(),1),C0=$e(xe(),1);function Od(t,e){return e.map(r=>ht(t[r]))}function Fd(t){return C0.default.pki.setRsaPrivateKey(...Od(t,["n","e","d","p","q","dp","dq","qi"]))}function Kd(t){return C0.default.pki.setRsaPublicKey(...Od(t,["n","e"]))}var un={};ue(un,{jwkToPkcs1:()=>Gw,jwkToPkix:()=>$w,pkcs1ToJwk:()=>zw,pkixToJwk:()=>Ww});var $B=$e(Pi(),1),YB=$e(As(),1);var lr=$e(xe(),1);function zw(t){let e=lr.default.asn1.fromDer(se(t,"ascii")),r=lr.default.pki.privateKeyFromAsn1(e);return{kty:"RSA",n:Lt(r.n),e:Lt(r.e),d:Lt(r.d),p:Lt(r.p),q:Lt(r.q),dp:Lt(r.dP),dq:Lt(r.dQ),qi:Lt(r.qInv),alg:"RS256"}}function Gw(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=lr.default.pki.privateKeyToAsn1({n:ht(t.n),e:ht(t.e),d:ht(t.d),p:ht(t.p),q:ht(t.q),dP:ht(t.dp),dQ:ht(t.dq),qInv:ht(t.qi)});return we(lr.default.asn1.toDer(e).getBytes(),"ascii")}function Ww(t){let e=lr.default.asn1.fromDer(se(t,"ascii")),r=lr.default.pki.publicKeyFromAsn1(e);return{kty:"RSA",n:Lt(r.n),e:Lt(r.e)}}function $w(t){if(t.n==null||t.e==null)throw new W("JWK was missing components","ERR_INVALID_PARAMETERS");let e=lr.default.pki.publicKeyToAsn1({n:ht(t.n),e:ht(t.e)});return we(lr.default.asn1.toDer(e).getBytes(),"ascii")}async function Md(t){let e=await ut.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 qd(e);return{privateKey:r[0],publicKey:r[1]}}async function D0(t){let r=[await ut.get().subtle.importKey("jwk",t,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!0,["sign"]),await Yw(t)],n=await qd({privateKey:r[0],publicKey:r[1]});return{privateKey:n[0],publicKey:n[1]}}async function Vd(t,e){let r=await ut.get().subtle.importKey("jwk",t,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!1,["sign"]),n=await ut.get().subtle.sign({name:"RSASSA-PKCS1-v1_5"},r,Uint8Array.from(e));return new Uint8Array(n,0,n.byteLength)}async function Hd(t,e,r){let n=await ut.get().subtle.importKey("jwk",t,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!1,["verify"]);return ut.get().subtle.verify({name:"RSASSA-PKCS1-v1_5"},n,e,r)}async function qd(t){if(t.privateKey==null||t.publicKey==null)throw new W("Private and public key are required","ERR_INVALID_PARAMETERS");return Promise.all([ut.get().subtle.exportKey("jwk",t.privateKey),ut.get().subtle.exportKey("jwk",t.publicKey)])}async function Yw(t){return ut.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 zd(t,e,r,n){let i=e?Kd(t):Fd(t),o=se(Uint8Array.from(r),"ascii"),s=n(o,i);return we(s,"ascii")}function Gd(t,e){return zd(t,!0,e,(r,n)=>n.encrypt(r))}function Wd(t,e){return zd(t,!1,e,(r,n)=>n.decrypt(r))}function Is(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 we(t.n,"base64url").length*8}var Hi=8192,Vi=class{_key;constructor(e){this._key=e}async verify(e,r){return Hd(this._key,r,e)}marshal(){return un.jwkToPkix(this._key)}get bytes(){return Wt.encode({Type:Ie.RSA,Data:this.marshal()}).subarray()}encrypt(e){return Gd(this._key,e)}equals(e){return Pe(this.bytes,e.bytes)}async hash(){let{bytes:e}=await Ye.digest(this.bytes);return e}},Yn=class{_key;_publicKey;constructor(e,r){this._key=e,this._publicKey=r}genSecret(){return Bs(16)}async sign(e){return Vd(this._key,e)}get public(){if(this._publicKey==null)throw new W("public key not provided","ERR_PUBKEY_NOT_PROVIDED");return new Vi(this._publicKey)}decrypt(e){return Wd(this._key,e)}marshal(){return un.jwkToPkcs1(this._key)}get bytes(){return $t.encode({Type:Ie.RSA,Data:this.marshal()}).subarray()}equals(e){return Pe(this.bytes,e.bytes)}async hash(){let{bytes:e}=await Ye.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 Mi.default.util.ByteBuffer(this.marshal()),i=Mi.default.asn1.fromDer(n),o=Mi.default.pki.privateKeyFromAsn1(i),s={algorithm:"aes256",count:1e4,saltSize:128/8,prfAlgorithm:"sha512"};return Mi.default.pki.encryptRsaPrivateKey(o,e,s)}else{if(r==="libp2p-key")return Wn(this.bytes,e);throw new W(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}}};async function Zw(t){let e=un.pkcs1ToJwk(t);if(Is(e)>Hi)throw new W("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let r=await D0(e);return new Yn(r.privateKey,r.publicKey)}function Qw(t){let e=un.pkixToJwk(t);if(Is(e)>Hi)throw new W("key size is too large","ERR_KEY_SIZE_TOO_LARGE");return new Vi(e)}async function jw(t){if(Is(t)>Hi)throw new W("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let e=await D0(t);return new Yn(e.privateKey,e.publicKey)}async function Jw(t){if(t>Hi)throw new W("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let e=await Md(t);return new Yn(e.privateKey,e.publicKey)}var k0={};ue(k0,{Secp256k1PrivateKey:()=>zi,Secp256k1PublicKey:()=>qi,generateKeyPair:()=>lv,unmarshalSecp256k1PrivateKey:()=>uv,unmarshalSecp256k1PublicKey:()=>fv});function ev(t){let e=Di(t);gt(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:tv,hexToBytes:rv}=es,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:tv(n),l:t.subarray(r+2)}},toSig(t){let{Err:e}=fn,r=typeof t=="string"?rv(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}`}},hr=BigInt(0),bt=BigInt(1),pI=BigInt(2),$d=BigInt(3),yI=BigInt(4);function nv(t){let e=ev(t),{Fp:r}=e,n=e.toBytes||((d,p,g)=>{let m=p.toAffine();return or(Uint8Array.from([4]),r.toBytes(m.x),r.toBytes(m.y))}),i=e.fromBytes||(d=>{let p=d.subarray(1),g=r.fromBytes(p.subarray(0,r.BYTES)),m=r.fromBytes(p.subarray(r.BYTES,2*r.BYTES));return{x:g,y:m}});function o(d){let{a:p,b:g}=e,m=r.sqr(d),b=r.mul(m,d);return r.add(r.add(b,r.mul(d,p)),g)}if(!r.eql(r.sqr(e.Gy),o(e.Gx)))throw new Error("bad generator point: equation left != right");function s(d){return typeof d=="bigint"&&hr<d&&d<e.n}function a(d){if(!s(d))throw new Error("Expected valid bigint: 0 < bigint < curve.n")}function c(d){let{allowedPrivateKeyLengths:p,nByteLength:g,wrapPrivateKey:m,n:b}=e;if(p&&typeof d!="bigint"){if(d instanceof Uint8Array&&(d=rr(d)),typeof d!="string"||!p.includes(d.length))throw new Error("Invalid key");d=d.padStart(g*2,"0")}let x;try{x=typeof d=="bigint"?d:nr(Ee("private key",d,g))}catch{throw new Error(`private key must be ${g} bytes, hex or bigint, not ${typeof d}`)}return m&&(x=he(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,g,m){if(this.px=p,this.py=g,this.pz=m,p==null||!r.isValid(p))throw new Error("x required");if(g==null||!r.isValid(g))throw new Error("y required");if(m==null||!r.isValid(m))throw new Error("z required")}static fromAffine(p){let{x:g,y:m}=p||{};if(!p||!r.isValid(g)||!r.isValid(m))throw new Error("invalid affine point");if(p instanceof l)throw new Error("projective point not allowed");let b=x=>r.eql(x,r.ZERO);return b(g)&&b(m)?l.ZERO:new l(g,m,r.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ(p){let g=r.invertBatch(p.map(m=>m.pz));return p.map((m,b)=>m.toAffine(g[b])).map(l.fromAffine)}static fromHex(p){let g=l.fromAffine(i(Ee("pointHex",p)));return g.assertValidity(),g}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:g}=this.toAffine();if(!r.isValid(p)||!r.isValid(g))throw new Error("bad point: x or y not FE");let m=r.sqr(g),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:g,py:m,pz:b}=this,{px:x,py:S,pz:v}=p,E=r.eql(r.mul(g,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:g}=e,m=r.mul(g,$d),{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:g,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,$d),O=r.mul(g,x),M=r.mul(m,S),G=r.mul(b,v),Q=r.add(g,m),I=r.add(x,S);Q=r.mul(Q,I),I=r.add(O,M),Q=r.sub(Q,I),I=r.add(g,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 y.wNAFCached(this,u,p,g=>{let m=r.invertBatch(g.map(b=>b.pz));return g.map((b,x)=>b.toAffine(m[x])).map(l.fromAffine)})}multiplyUnsafe(p){let g=l.ZERO;if(p===hr)return g;if(a(p),p===bt)return this;let{endo:m}=e;if(!m)return y.unsafeLadder(this,p);let{k1neg:b,k1:x,k2neg:S,k2:v}=m.splitScalar(p),E=g,B=g,D=this;for(;x>hr||v>hr;)x&bt&&(E=E.add(D)),v&bt&&(B=B.add(D)),D=D.double(),x>>=bt,v>>=bt;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 g=p,m,b,{endo:x}=e;if(x){let{k1neg:S,k1:v,k2neg:E,k2:B}=x.splitScalar(g),{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),m=D.add(F),b=U.add(O)}else{let{p:S,f:v}=this.wNAF(g);m=S,b=v}return l.normalizeZ([m,b])[0]}multiplyAndAddUnsafe(p,g,m){let b=l.BASE,x=(v,E)=>E===hr||E===bt||!v.equals(b)?v.multiplyUnsafe(E):v.multiply(E),S=x(this,g).add(x(p,m));return S.is0()?void 0:S}toAffine(p){let{px:g,py:m,pz:b}=this,x=this.is0();p==null&&(p=x?r.ONE:r.inv(b));let S=r.mul(g,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:g}=e;if(p===bt)return!0;if(g)return g(l,this);throw new Error("isTorsionFree() has not been declared for the elliptic curve")}clearCofactor(){let{h:p,clearCofactor:g}=e;return p===bt?this:g?g(l,this):this.multiplyUnsafe(e.h)}toRawBytes(p=!0){return this.assertValidity(),n(l,this,p)}toHex(p=!0){return rr(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=ns(l,e.endo?Math.ceil(h/2):h);return{CURVE:e,ProjectivePoint:l,normPrivateKeyToScalar:c,weierstrassEquation:o,isWithinCurveOrder:s}}function iv(t){let e=Di(t);return gt(e,{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze({lowS:!0,...e})}function Yd(t){let e=iv(t),{Fp:r,n}=e,i=r.BYTES+1,o=2*r.BYTES+1;function s(I){return hr<I&&I<r.ORDER}function a(I){return he(I,n)}function c(I){return ts(I,n)}let{ProjectivePoint:u,normPrivateKeyToScalar:f,weierstrassEquation:l,isWithinCurveOrder:h}=nv({...e,toBytes(I,R,_){let k=R.toAffine(),A=r.toBytes(k.x),P=or;return _?P(Uint8Array.from([R.hasEvenY()?2:3]),A):P(Uint8Array.from([4]),A,r.toBytes(k.y))},fromBytes(I){let R=I.length,_=I[0],k=I.subarray(1);if(R===i&&(_===2||_===3)){let A=nr(k);if(!s(A))throw new Error("Point is not on curve");let P=l(A),K=r.sqrt(P),H=(K&bt)===bt;return(_&1)===1!==H&&(K=r.neg(K)),{x:A,y:K}}else if(R===o&&_===4){let A=r.fromBytes(k.subarray(0,r.BYTES)),P=r.fromBytes(k.subarray(r.BYTES,2*r.BYTES));return{x:A,y:P}}else throw new Error(`Point of length ${R} was invalid. Expected ${i} compressed bytes or ${o} uncompressed bytes`)}}),y=I=>rr(Br(I,e.nByteLength));function d(I){let R=n>>bt;return I>R}function p(I){return d(I)?a(-I):I}let g=(I,R,_)=>nr(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=Ee("compactSignature",R,_*2),new m(g(R,0,_),g(R,_,2*_))}static fromDER(R){let{r:_,s:k}=fn.toSig(Ee("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:A}=this,P=B(Ee("msgHash",R));if(A==null||![0,1,2,3].includes(A))throw new Error("recovery id invalid");let K=A===2||A===3?_+e.n:_;if(K>=r.ORDER)throw new Error("recovery id 2 or 3 invalid");let H=A&1?"03":"02",Z=u.fromHex(H+y(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 y(this.r)+y(this.s)}}let b={isValidPrivateKey(I){try{return f(I),!0}catch{return!1}},normPrivateKeyToScalar:f,randomPrivateKey:()=>{let I=qc(e.n);return Kl(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=nr(I),_=I.length*8-e.nBitLength;return _>0?R>>BigInt(_):R},B=e.bits2int_modN||function(I){return a(E(I))},D=Ci(e.nBitLength);function U(I){if(typeof I!="bigint")throw new Error("bigint expected");if(!(hr<=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(me=>me in _))throw new Error("sign() legacy options not supported");let{hash:k,randomBytes:A}=e,{lowS:P,prehash:K,extraEntropy:H}=_;P==null&&(P=!0),I=Ee("msgHash",I),K&&(I=Ee("prehashed msgHash",k(I)));let Z=B(I),j=f(R),oe=[U(j),U(Z)];if(H!=null){let me=H===!0?A(r.BYTES):H;oe.push(Ee("extraEntropy",me))}let J=or(...oe),te=Z;function be(me){let Ge=E(me);if(!h(Ge))return;let We=c(Ge),Oe=u.BASE.multiply(Ge).toAffine(),Je=a(Oe.x);if(Je===hr)return;let Xt=a(We*a(te+Je*j));if(Xt===hr)return;let Ur=(Oe.x===Je?0:2)|Number(Oe.y&bt),ai=Xt;return P&&d(Xt)&&(ai=p(Xt),Ur^=1),new m(Je,ai,Ur)}return{seed:J,k2sig:be}}let O={lowS:e.lowS,prehash:!1},M={lowS:e.lowS,prehash:!1};function G(I,R,_=O){let{seed:k,k2sig:A}=F(I,R,_),P=e;return Fc(P.hash.outputLen,P.nByteLength,P.hmac)(k,A)}u.BASE._setWindowSize(8);function Q(I,R,_,k=M){let A=I;if(R=Ee("msgHash",R),_=Ee("publicKey",_),"strict"in k)throw new Error("options.strict was renamed to lowS");let{lowS:P,prehash:K}=k,H,Z;try{if(typeof A=="string"||A instanceof Uint8Array)try{H=m.fromDER(A)}catch(Oe){if(!(Oe instanceof fn.Err))throw Oe;H=m.fromCompact(A)}else if(typeof A=="object"&&typeof A.r=="bigint"&&typeof A.s=="bigint"){let{r:Oe,s:Je}=A;H=new m(Oe,Je)}else throw new Error("PARSE");Z=u.fromHex(_)}catch(Oe){if(Oe.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),be=a(J*te),me=a(j*te),Ge=u.BASE.multiplyAndAddUnsafe(Z,be,me)?.toAffine();return Ge?a(Ge.x)===j:!1}return{CURVE:e,getPublicKey:x,getSharedSecret:v,sign:G,verify:Q,ProjectivePoint:u,Signature:m,utils:b}}function ov(t){return{hash:t,hmac:(e,...r)=>Fn(t,e,Xo(...r)),randomBytes:jr}}function Xd(t,e){let r=n=>Yd({...t,...ov(n)});return Object.freeze({...r(e),create:r})}var jd=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),Zd=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),sv=BigInt(1),I0=BigInt(2),Qd=(t,e)=>(t+e/I0)/e;function av(t){let e=jd,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=Se(f,r,e)*f%e,h=Se(l,r,e)*f%e,y=Se(h,I0,e)*u%e,d=Se(y,i,e)*y%e,p=Se(d,o,e)*d%e,g=Se(p,a,e)*p%e,m=Se(g,c,e)*g%e,b=Se(m,a,e)*p%e,x=Se(b,r,e)*f%e,S=Se(x,s,e)*d%e,v=Se(S,n,e)*u%e,E=Se(v,I0,e);if(!T0.eql(T0.sqr(E),t))throw new Error("Cannot find square root");return E}var T0=rs(jd,void 0,void 0,{sqrt:av}),dr=Xd({a:BigInt(0),b:BigInt(7),Fp:T0,n:Zd,Gx:BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),Gy:BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),h:BigInt(1),lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:t=>{let e=Zd,r=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),n=-sv*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),i=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),o=r,s=BigInt("0x100000000000000000000000000000000"),a=Qd(o*t,e),c=Qd(-n*t,e),u=he(t-a*r-c*i,e),f=he(-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}}}},Kn),AI=BigInt(0);var CI=dr.ProjectivePoint;function Jd(){return dr.utils.randomPrivateKey()}async function ep(t,e){let{digest:r}=await Ye.digest(e);try{return dr.sign(r,t).toDERRawBytes()}catch(n){throw new W(String(n),"ERR_INVALID_INPUT")}}async function tp(t,e,r){try{let{digest:n}=await Ye.digest(r);return dr.verify(e,n,t)}catch(n){throw new W(String(n),"ERR_INVALID_INPUT")}}function rp(t){return dr.ProjectivePoint.fromHex(t).toRawBytes(!0)}function np(t){try{dr.getPublicKey(t,!0)}catch(e){throw new W(String(e),"ERR_INVALID_PRIVATE_KEY")}}function _0(t){try{dr.ProjectivePoint.fromHex(t)}catch(e){throw new W(String(e),"ERR_INVALID_PUBLIC_KEY")}}function ip(t){try{return dr.getPublicKey(t,!0)}catch(e){throw new W(String(e),"ERR_INVALID_PRIVATE_KEY")}}var qi=class{_key;constructor(e){_0(e),this._key=e}async verify(e,r){return tp(this._key,r,e)}marshal(){return rp(this._key)}get bytes(){return Wt.encode({Type:Ie.Secp256k1,Data:this.marshal()}).subarray()}equals(e){return Pe(this.bytes,e.bytes)}async hash(){let{bytes:e}=await Ye.digest(this.bytes);return e}},zi=class{_key;_publicKey;constructor(e,r){this._key=e,this._publicKey=r??ip(e),np(this._key),_0(this._publicKey)}async sign(e){return ep(this._key,e)}get public(){return new qi(this._publicKey)}marshal(){return this._key}get bytes(){return $t.encode({Type:Ie.Secp256k1,Data:this.marshal()}).subarray()}equals(e){return Pe(this.bytes,e.bytes)}async hash(){let{bytes:e}=await Ye.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 Wn(this.bytes,e);throw new W(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}};function uv(t){return new zi(t)}function fv(t){return new qi(t)}async function lv(){let t=Jd();return new zi(t)}var ln={rsa:B0,ed25519:E0,secp256k1:k0};function op(t){let e=Object.keys(ln).join(" / ");return new W(`invalid or unsupported key type ${t}. Must be ${e}`,"ERR_UNSUPPORTED_KEY_TYPE")}function sp(t){let e=Wt.decode(t),r=e.Data??new Uint8Array;switch(e.Type){case Ie.RSA:return ln.rsa.unmarshalRsaPublicKey(r);case Ie.Ed25519:return ln.ed25519.unmarshalEd25519PublicKey(r);case Ie.Secp256k1:return ln.secp256k1.unmarshalSecp256k1PublicKey(r);default:throw op(e.Type??"unknown")}}async function ap(t){let e=$t.decode(t),r=e.Data??new Uint8Array;switch(e.Type){case Ie.RSA:return ln.rsa.unmarshalRsaPrivateKey(r);case Ie.Ed25519:return ln.ed25519.unmarshalEd25519PrivateKey(r);case Ie.Secp256k1:return ln.secp256k1.unmarshalSecp256k1PrivateKey(r);default:throw op(e.Type??"RSA")}}var Ts;(function(t){let e;t.codec=()=>(e==null&&(e=Bt((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=>Dt(r,t.codec()),t.decode=r=>Ct(r,t.codec())})(Ts||(Ts={}));var Gi;(function(t){let e;t.codec=()=>(e==null&&(e=Bt((r,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),(i.writeDefaults===!0||r.identityKey!=null&&r.identityKey.byteLength>0)&&(n.uint32(10),n.bytes(r.identityKey??new Uint8Array(0))),(i.writeDefaults===!0||r.identitySig!=null&&r.identitySig.byteLength>0)&&(n.uint32(18),n.bytes(r.identitySig??new Uint8Array(0))),r.extensions!=null&&(n.uint32(34),Ts.codec().encode(r.extensions,n,{writeDefaults:!1})),i.lengthDelimited!==!1&&n.ldelim()},(r,n)=>{let i={identityKey:new Uint8Array(0),identitySig:new Uint8Array(0)},o=n==null?r.len:r.pos+n;for(;r.pos<o;){let s=r.uint32();switch(s>>>3){case 1:i.identityKey=r.bytes();break;case 2:i.identitySig=r.bytes();break;case 4:i.extensions=Ts.codec().decode(r,r.uint32());break;default:r.skipType(s&7);break}}return i})),e),t.encode=r=>Dt(r,t.codec()),t.decode=r=>Ct(r,t.codec())})(Gi||(Gi={}));async function cp(t,e,r){let n=await pv(t,up(e));if(t.publicKey==null)throw new Error("PublicKey was missing from local PeerId");return dv(t.publicKey,n,r)}function dv(t,e,r){return Gi.encode({identityKey:t,identitySig:e,extensions:r??{webtransportCerthashes:[]}}).subarray()}async function pv(t,e){if(t.privateKey==null)throw new Error("PrivateKey was missing from PeerId");return(await ap(t.privateKey)).sign(e)}async function R0(t){return wa(t.identityKey)}function L0(t){return Gi.decode(t)}function up(t){let e=we("noise-libp2p-static-key:");return le([e,t],e.length+t.length)}async function N0(t,e,r){let n=await wa(e.identityKey);if(!n.equals(r))throw new Error(`Payload identity key ${n.toString()} does not match expected remote peer ${r.toString()}`);let i=up(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 sp(n.publicKey).verify(i,e.identitySig))throw new Error("Static key doesn't match to peer that signed payload!");return n}function Wi(t){return!(!(t instanceof Uint8Array)||t.length!==32)}var pt=$e(pp(),1);pt.default.formatters.b=t=>t==null?"undefined":Te.baseEncode(t);pt.default.formatters.t=t=>t==null?"undefined":vt.baseEncode(t);pt.default.formatters.m=t=>t==null?"undefined":gn.baseEncode(t);pt.default.formatters.p=t=>t==null?"undefined":t.toString();pt.default.formatters.c=t=>t==null?"undefined":t.toString();pt.default.formatters.k=t=>t==null?"undefined":t.toString();pt.default.formatters.a=t=>t==null?"undefined":t.toString();function Bv(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 yp(t){let e=Bv(`${t}:trace`);return pt.default.enabled(`${t}:trace`)&&pt.default.names.map(r=>r.toString()).find(r=>r.includes(":trace"))!=null&&(e=(0,pt.default)(`${t}:trace`)),Object.assign((0,pt.default)(t),{error:(0,pt.default)(`${t}:error`),trace:e})}var ze=yp("libp2p:noise");var wt;gl?wt=ze:wt=Object.assign(()=>{},{enabled:!1,trace:()=>{},error:()=>{}});function gp(t){wt(`LOCAL_STATIC_PUBLIC_KEY ${se(t.publicKey,"hex")}`),wt(`LOCAL_STATIC_PRIVATE_KEY ${se(t.privateKey,"hex")}`)}function P0(t){t?(wt(`LOCAL_PUBLIC_EPHEMERAL_KEY ${se(t.publicKey,"hex")}`),wt(`LOCAL_PRIVATE_EPHEMERAL_KEY ${se(t.privateKey,"hex")}`)):wt("Missing local ephemeral keys.")}function mp(t){wt(`REMOTE_STATIC_PUBLIC_KEY ${se(t,"hex")}`)}function U0(t){wt(`REMOTE_EPHEMERAL_PUBLIC_KEY ${se(t,"hex")}`)}function xp(t){t.cs1&&t.cs2?(wt(`CIPHER_STATE_1 ${t.cs1.n.getUint64()} ${se(t.cs1.k,"hex")}`),wt(`CIPHER_STATE_2 ${t.cs2.n.getUint64()} ${se(t.cs2.k,"hex")}`)):wt("Missing cipher state.")}var Iv="Cipherstate has reached maximum n, a new handshake must be performed",Rs=class{n;bytes;view;constructor(e=0){this.n=e,this.bytes=new Uint8Array(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>4294967295)throw new Error(Iv)}};var Ls=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 new Uint8Array(32)}isEmptyKey(e){let r=this.createEmptyKey();return Pe(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:new Uint8Array(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 ze.error(i),new Uint8Array(32)}}mixHash(e,r){e.h=this.getHash(e.h,r)}getHash(e,r){return this.crypto.hashSHA256(le([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 Rs}}initializeSymmetric(e){let r=we(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=new Uint8Array(32);return r.set(e),r}else return this.getHash(e,new Uint8Array(0))}split(e){let[r,n]=this.crypto.getHKDF(e.ck,new Uint8Array(0)),i=this.initializeKey(r),o=this.initializeKey(n);return{cs1:i,cs2:o}}writeMessageRegular(e,r){let n=this.encryptWithAd(e,new Uint8Array(0),r),i=this.createEmptyKey(),o=new Uint8Array(0);return{ne:i,ns:o,ciphertext:n}}readMessageRegular(e,r){return this.decryptWithAd(e,new Uint8Array(0),r.ciphertext)}};var Ns=class extends Ls{initializeInitiator(e,r,n,i){let o="Noise_XX_25519_ChaChaPoly_SHA256",s=this.initializeSymmetric(o);this.mixHash(s,e);let a=new Uint8Array(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=new Uint8Array(32);return{ss:s,s:r,rs:n,psk:i,re:a}}writeMessageA(e,r,n){let i=new Uint8Array(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 Wi(r.ne)&&(e.re=r.ne),this.mixHash(e.ss,e.re),this.decryptAndHash(e.ss,r.ciphertext)}readMessageB(e,r){if(Wi(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&&Wi(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&&Wi(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=new Uint8Array(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=new Uint8Array(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 Ps=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 Ns(i),this.session=this.xx.initSession(this.isInitiator,this.prologue,this.staticKeypair)}async propose(){if(gp(this.session.hs.s),this.isInitiator){ze.trace("Stage 0 - Initiator starting to send first message.");let e=this.xx.sendMessage(this.session,new Uint8Array(0));await this.connection.write(Ql(e)),ze.trace("Stage 0 - Initiator finished sending first message."),P0(this.session.hs.e)}else{ze.trace("Stage 0 - Responder waiting to receive first message...");let e=eh((await this.connection.read()).subarray()),{valid:r}=this.xx.recvMessage(this.session,e);if(!r)throw new Or("xx handshake stage 0 validation fail");ze.trace("Stage 0 - Responder received first message."),U0(this.session.hs.re)}}async exchange(){if(this.isInitiator){ze.trace("Stage 1 - Initiator waiting to receive first message from responder...");let e=th((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");ze.trace("Stage 1 - Initiator received the message."),U0(this.session.hs.re),mp(this.session.hs.rs),ze.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 ci(`Error occurred while verifying signed payload: ${o.message}`)}ze.trace("All good with the signature!")}else{ze.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(jl(e)),ze.trace("Stage 1 - Responder sent the second handshake message with signed payload."),P0(this.session.hs.e)}}async finish(){if(this.isInitiator){ze.trace("Stage 2 - Initiator sending third handshake message.");let e=this.xx.sendMessage(this.session,this.payload);await this.connection.write(Jl(e)),ze.trace("Stage 2 - Initiator sent message with signed payload.")}else{ze.trace("Stage 2 - Responder waiting for third handshake message...");let e=rh((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");ze.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 ci(`Error occurred while verifying signed payload: ${o.message}`)}}xp(this.session)}encrypt(e,r){let n=this.getCS(r);return this.xx.encryptWithAd(n,new Uint8Array(0),e)}decrypt(e,r,n){let i=this.getCS(r,!1);return this.xx.decryptWithAd(i,new Uint8Array(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 bp(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 Us=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??Zl,this.extensions=n,this.metrics=s?bp(s):void 0,r?this.staticKeys=this.crypto.generateX25519KeyPairFromSeed(r):this.staticKeys=this.crypto.generateX25519KeyPair(),this.prologue=o??new Uint8Array(0)}async secureOutbound(e,r,n){let i=Si(r,{lengthEncoder:Mn,lengthDecoder:_i,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=Si(r,{lengthEncoder:Mn,lengthDecoder:_i,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 cp(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 Ps(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]=ll(),o=e.unwrap();return await dl(n,oh(r,this.metrics),o,s=>Jt(s,{lengthDecoder:_i}),sh(r,this.metrics),n),i}};function wp(t={}){return()=>new Us(t)}var Z1=$e(hu(),1);var q1=$e(hu(),1);var du=Object.values(Ut).map(t=>t.decoder).reduce((t,e)=>t.or(e));function z1(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:P3(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 Za("","no fingerprint on local certificate");return n}var N3=/^a=fingerprint:(?:\w+-[0-9]+)\s(?<fingerprint>(:?[0-9a-fA-F]{2})+)$/m;function P3(t){return t.match(N3)?.groups?.fingerprint}function U3(t){for(let e of t.protoNames())if(e.startsWith("ip"))return e.toUpperCase();return"IP6"}function Ys(t){let r=t.stringTuples().filter(n=>n[0]===$1).map(n=>n[1])[0];if(r===void 0||r==="")throw mo(`Couldn't find a certhash component of multiaddr: ${t.toString()}`);return r}function pu(t){let e=du.decode(t);return q1.decode(e)}function O3(t){let e=pu(Ys(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 Za(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 F3(t,e){let{host:r,port:n}=t.toOptions(),i=U3(t),[o]=O3(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 j1(t,e){return{type:"answer",sdp:W3(t,e)}}function J1(t,e){if(t.sdp===void 0)throw vi("Can't munge a missing SDP");return t.sdp=t.sdp.replace(/\na=ice-ufrag:[^\n]*\n/,`
44
+ `}function G1(t,e){return{type:"answer",sdp:F3(t,e)}}function W1(t,e){if(t.sdp===void 0)throw mi("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 t2=Array.from("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"),r2=t=>[...Array(t)].map(()=>t2.at(Math.floor(Math.random()*t2.length))).join("");var Js=ke("libp2p:webrtc:transport"),Y3=1e4,Ck=ye("webrtc-direct").code,e2=ye("certhash").code,ea=class{metrics;components;init;constructor(e,r={}){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 Js("dialing address: %a",e),n}createListener(e){throw Uf("WebRTCTransport.createListener")}filter(e){return e.filter(Lf.exactMatch)}[Symbol.toStringTag]="@libp2p/webrtc-direct";[so]=!0;async _connect(e,r){let n=new AbortController,i=n.signal,o=e.getPeerId();if(o===null)throw So("we need to have the remote's PeerId");let s=qr(o),a=Su(js(e)),c=await On.generateCertificate({name:"ECDSA",namedCurve:"P-256",hash:Cu(a.name)}),u=new On({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}`;Js.error(M),this.metrics?.dialerEvents.increment({open_error:!0}),U(ec("data",M))},Y3);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"}`;Js.error(Q),this.metrics?.dialerEvents.increment({unknown_error:!0}),U(ec("data",Q))}}),l="libp2p+webrtc+v1/"+r2(32),h=await u.createOffer(),g=J1(h,l);await u.setLocalDescription(g);let d=j1(e,l);await u.setRemoteDescription(d);let p=await f,y=this.components.peerId,m=this.generateNoisePrologue(u,a.code,e),b=Bp({prologueBytes:m})(),x=Un({channel:p,direction:"inbound",...this.init.dataChannel??{}}),C={...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 Gr({peerConnection:u,remoteAddr:e,timeline:{open:Date.now()},metrics:this.metrics?.dialerEvents}),E=Ei?"iceconnectionstatechange":"connectionstatechange";u.addEventListener(E,()=>{switch(u.connectionState){case"failed":case"disconnected":case"closed":v.close().catch(D=>{Js.error("error closing connection",D)}).finally(()=>{n.abort()});break;default:break}},{signal:i}),this.metrics?.dialerEvents.increment({peer_connection:!0});let B=new jr({peerConnection:u,metrics:this.metrics?.dialerEvents,dataChannelOptions:this.init.dataChannel});return await b.secureInbound(y,C,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 vi("no local certificate");let i=Q1(e);if(i==null)throw vi("no local fingerprint found");let o=i.trim().toLowerCase().replaceAll(":",""),s=we(o,"hex"),a=n2.encode(s,r),c=Eu.decode(js(n)),u=we("libp2p-webrtc-noise:");return pe([u,a,c])}};function X3(t){return e=>new ea(e,t)}function Z3(t){return e=>new $o(e,t)}return oo(Q3);})();
48
+ `),t}var Y1=Array.from("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"),X1=t=>[...Array(t)].map(()=>Y1.at(Math.floor(Math.random()*Y1.length))).join("");var M3=1e4,uk=ye("webrtc-direct").code,$1=ye("certhash").code,Xs=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";[ro]=!0;async _connect(e,r){let n=new AbortController,i=n.signal,o=e.getPeerId();if(o===null)throw mo("we need to have the remote's PeerId");let s=Mr(o),a=pu(Ys(e)),c=await kn.generateCertificate({name:"ECDSA",namedCurve:"P-256",hash:yu(a.name)}),u=new kn({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(Xa("data",M))},M3);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(Xa("data",Q))}}),l="libp2p+webrtc+v1/"+X1(32),h=await u.createOffer(),y=W1(h,l);await u.setLocalDescription(y);let d=G1(e,l);await u.setRemoteDescription(d);let p=await f,g=this.components.peerId,m=this.generateNoisePrologue(u,a.code,e),b=wp({prologueBytes:m})(),x=_n({channel:p,direction:"inbound",logger:this.components.logger,...this.init.dataChannel??{}}),S={...x,sink:x.sink.bind(x),source:async function*(){for await(let 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=xi?"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(g,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 mi("no local certificate");let i=z1(e,{log:this.log});if(i==null)throw mi("no local fingerprint found");let o=i.trim().toLowerCase().replaceAll(":",""),s=we(o,"hex"),a=Z1.encode(s,r),c=du.decode(Ys(n)),u=we("libp2p-webrtc-noise:");return le([u,a,c])}};function V3(t){return e=>new Xs(e,t)}function H3(t){return e=>new Vo(e,t)}return to(q3);})();
49
49
  /*! Bundled license information:
50
50
 
51
51
  @noble/ciphers/esm/utils.js: