@libp2p/webrtc 3.2.3 → 3.2.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.min.js 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 ry=Object.create;var lo=Object.defineProperty;var ny=Object.getOwnPropertyDescriptor;var iy=Object.getOwnPropertyNames;var oy=Object.getPrototypeOf,sy=Object.prototype.hasOwnProperty;var pe=(e,t)=>()=>(e&&(t=e(e=0)),t);var Y=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),ue=(e,t)=>{for(var r in t)lo(e,r,{get:t[r],enumerable:!0})},Gu=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of iy(t))!sy.call(e,i)&&i!==r&&lo(e,i,{get:()=>t[i],enumerable:!(n=ny(t,i))||n.enumerable});return e};var Re=(e,t,r)=>(r=e!=null?ry(oy(e)):{},Gu(t||!e||!e.__esModule?lo(r,"default",{value:e,enumerable:!0}):r,e)),ho=e=>Gu(lo({},"__esModule",{value:!0}),e);var Yu=Y((QE,$u)=>{var In=1e3,Tn=In*60,_n=Tn*60,Yr=_n*24,ay=Yr*7,cy=Yr*365.25;$u.exports=function(e,t){t=t||{};var r=typeof e;if(r==="string"&&e.length>0)return uy(e);if(r==="number"&&isFinite(e))return t.long?ly(e):fy(e);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(e))};function uy(e){if(e=String(e),!(e.length>100)){var t=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(e);if(t){var r=parseFloat(t[1]),n=(t[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return r*cy;case"weeks":case"week":case"w":return r*ay;case"days":case"day":case"d":return r*Yr;case"hours":case"hour":case"hrs":case"hr":case"h":return r*_n;case"minutes":case"minute":case"mins":case"min":case"m":return r*Tn;case"seconds":case"second":case"secs":case"sec":case"s":return r*In;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}function fy(e){var t=Math.abs(e);return t>=Yr?Math.round(e/Yr)+"d":t>=_n?Math.round(e/_n)+"h":t>=Tn?Math.round(e/Tn)+"m":t>=In?Math.round(e/In)+"s":e+"ms"}function ly(e){var t=Math.abs(e);return t>=Yr?yo(e,t,Yr,"day"):t>=_n?yo(e,t,_n,"hour"):t>=Tn?yo(e,t,Tn,"minute"):t>=In?yo(e,t,In,"second"):e+" ms"}function yo(e,t,r,n){var i=t>=r*1.5;return Math.round(e/r)+" "+n+(i?"s":"")}});var Xu=Y((jE,Zu)=>{function hy(e){r.debug=r,r.default=r,r.coerce=c,r.disable=o,r.enable=i,r.enabled=s,r.humanize=Yu(),r.destroy=u,Object.keys(e).forEach(f=>{r[f]=e[f]}),r.names=[],r.skips=[],r.formatters={};function t(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=t;function r(f){let l,h=null,y,d;function p(...g){if(!p.enabled)return;let m=p,v=Number(new Date),x=v-(l||v);m.diff=x,m.prev=l,m.curr=v,l=v,g[0]=r.coerce(g[0]),typeof g[0]!="string"&&g.unshift("%O");let A=0;g[0]=g[0].replace(/%([a-zA-Z%])/g,(E,D)=>{if(E==="%%")return"%";A++;let B=r.formatters[D];if(typeof B=="function"){let R=g[A];E=B.call(m,R),g.splice(A,1),A--}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}Zu.exports=hy});var Qu=Y((dt,go)=>{dt.formatArgs=py;dt.save=yy;dt.load=gy;dt.useColors=dy;dt.storage=my();dt.destroy=(()=>{let e=!1;return()=>{e||(e=!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 dy(){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 py(e){if(e[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+e[0]+(this.useColors?"%c ":" ")+"+"+go.exports.humanize(this.diff),!this.useColors)return;let t="color: "+this.color;e.splice(1,0,t,"color: inherit");let r=0,n=0;e[0].replace(/%[a-zA-Z%]/g,i=>{i!=="%%"&&(r++,i==="%c"&&(n=r))}),e.splice(n,0,t)}dt.log=console.debug||console.log||(()=>{});function yy(e){try{e?dt.storage.setItem("debug",e):dt.storage.removeItem("debug")}catch{}}function gy(){let e;try{e=dt.storage.getItem("debug")}catch{}return!e&&typeof process<"u"&&"env"in process&&(e=process.env.DEBUG),e}function my(){try{return localStorage}catch{}}go.exports=Xu()(dt);var{formatters:xy}=go.exports;xy.j=function(e){try{return JSON.stringify(e)}catch(t){return"[UnexpectedJSONParseError]: "+t.message}}});var cl=Y((k6,al)=>{"use strict";function sl(e,t){for(let r in t)Object.defineProperty(e,r,{value:t[r],enumerable:!0,configurable:!0});return e}function Am(e,t,r){if(!e||typeof e=="string")throw new TypeError("Please pass an Error to err-code");r||(r={}),typeof t=="object"&&(r=t,t=""),t&&(r.code=t);try{return sl(e,r)}catch{r.message=e.message,r.stack=e.stack;let i=function(){};return i.prototype=Object.create(Object.getPrototypeOf(e)),sl(new i,r)}}al.exports=Am});var ll=Y((M6,fl)=>{"use strict";fl.exports=_m;function _m(e,t){for(var r=new Array(arguments.length-1),n=0,i=2,o=!0;i<arguments.length;)r[n++]=arguments[i++];return new Promise(function(a,c){r[n]=function(f){if(o)if(o=!1,f)c(f);else{for(var l=new Array(arguments.length-1),h=0;h<l.length;)l[h++]=arguments[h];a.apply(null,l)}};try{e.apply(t||null,r)}catch(u){o&&(o=!1,c(u))}})}});var yl=Y(pl=>{"use strict";var Ko=pl;Ko.length=function(t){var r=t.length;if(!r)return 0;for(var n=0;--r%4>1&&t.charAt(r)==="=";)++n;return Math.ceil(t.length*3)/4-n};var Gn=new Array(64),dl=new Array(123);for(kt=0;kt<64;)dl[Gn[kt]=kt<26?kt+65:kt<52?kt+71:kt<62?kt-4:kt-59|43]=kt++;var kt;Ko.encode=function(t,r,n){for(var i=null,o=[],s=0,a=0,c;r<n;){var u=t[r++];switch(a){case 0:o[s++]=Gn[u>>2],c=(u&3)<<4,a=1;break;case 1:o[s++]=Gn[c|u>>4],c=(u&15)<<2,a=2;break;case 2:o[s++]=Gn[c|u>>6],o[s++]=Gn[u&63],a=0;break}s>8191&&((i||(i=[])).push(String.fromCharCode.apply(String,o)),s=0)}return a&&(o[s++]=Gn[c],o[s++]=61,a===1&&(o[s++]=61)),i?(s&&i.push(String.fromCharCode.apply(String,o.slice(0,s))),i.join("")):String.fromCharCode.apply(String,o.slice(0,s))};var hl="invalid encoding";Ko.decode=function(t,r,n){for(var i=n,o=0,s,a=0;a<t.length;){var c=t.charCodeAt(a++);if(c===61&&o>1)break;if((c=dl[c])===void 0)throw Error(hl);switch(o){case 0:s=c,o=1;break;case 1:r[n++]=s<<2|(c&48)>>4,s=c,o=2;break;case 2:r[n++]=(s&15)<<4|(c&60)>>2,s=c,o=3;break;case 3:r[n++]=(s&3)<<6|c,o=0;break}}if(o===1)throw Error(hl);return n-i};Ko.test=function(t){return/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/.test(t)}});var ml=Y((q6,gl)=>{"use strict";gl.exports=Mo;function Mo(){this._listeners={}}Mo.prototype.on=function(t,r,n){return(this._listeners[t]||(this._listeners[t]=[])).push({fn:r,ctx:n||this}),this};Mo.prototype.off=function(t,r){if(t===void 0)this._listeners={};else if(r===void 0)this._listeners[t]=[];else for(var n=this._listeners[t],i=0;i<n.length;)n[i].fn===r?n.splice(i,1):++i;return this};Mo.prototype.emit=function(t){var r=this._listeners[t];if(r){for(var n=[],i=1;i<arguments.length;)n.push(arguments[i++]);for(i=0;i<r.length;)r[i].fn.apply(r[i++].ctx,n)}return this}});var Cl=Y((H6,Sl)=>{"use strict";Sl.exports=xl(xl);function xl(e){return typeof Float32Array<"u"?function(){var t=new Float32Array([-0]),r=new Uint8Array(t.buffer),n=r[3]===128;function i(c,u,f){t[0]=c,u[f]=r[0],u[f+1]=r[1],u[f+2]=r[2],u[f+3]=r[3]}function o(c,u,f){t[0]=c,u[f]=r[3],u[f+1]=r[2],u[f+2]=r[1],u[f+3]=r[0]}e.writeFloatLE=n?i:o,e.writeFloatBE=n?o:i;function s(c,u){return r[0]=c[u],r[1]=c[u+1],r[2]=c[u+2],r[3]=c[u+3],t[0]}function a(c,u){return r[3]=c[u],r[2]=c[u+1],r[1]=c[u+2],r[0]=c[u+3],t[0]}e.readFloatLE=n?s:a,e.readFloatBE=n?a:s}():function(){function t(n,i,o,s){var a=i<0?1:0;if(a&&(i=-i),i===0)n(1/i>0?0:2147483648,o,s);else if(isNaN(i))n(2143289344,o,s);else if(i>34028234663852886e22)n((a<<31|2139095040)>>>0,o,s);else if(i<11754943508222875e-54)n((a<<31|Math.round(i/1401298464324817e-60))>>>0,o,s);else{var c=Math.floor(Math.log(i)/Math.LN2),u=Math.round(i*Math.pow(2,-c)*8388608)&8388607;n((a<<31|c+127<<23|u)>>>0,o,s)}}e.writeFloatLE=t.bind(null,bl),e.writeFloatBE=t.bind(null,wl);function r(n,i,o){var s=n(i,o),a=(s>>31)*2+1,c=s>>>23&255,u=s&8388607;return c===255?u?NaN:a*(1/0):c===0?a*1401298464324817e-60*u:a*Math.pow(2,c-150)*(u+8388608)}e.readFloatLE=r.bind(null,vl),e.readFloatBE=r.bind(null,El)}(),typeof Float64Array<"u"?function(){var t=new Float64Array([-0]),r=new Uint8Array(t.buffer),n=r[7]===128;function i(c,u,f){t[0]=c,u[f]=r[0],u[f+1]=r[1],u[f+2]=r[2],u[f+3]=r[3],u[f+4]=r[4],u[f+5]=r[5],u[f+6]=r[6],u[f+7]=r[7]}function o(c,u,f){t[0]=c,u[f]=r[7],u[f+1]=r[6],u[f+2]=r[5],u[f+3]=r[4],u[f+4]=r[3],u[f+5]=r[2],u[f+6]=r[1],u[f+7]=r[0]}e.writeDoubleLE=n?i:o,e.writeDoubleBE=n?o:i;function s(c,u){return r[0]=c[u],r[1]=c[u+1],r[2]=c[u+2],r[3]=c[u+3],r[4]=c[u+4],r[5]=c[u+5],r[6]=c[u+6],r[7]=c[u+7],t[0]}function a(c,u){return r[7]=c[u],r[6]=c[u+1],r[5]=c[u+2],r[4]=c[u+3],r[3]=c[u+4],r[2]=c[u+5],r[1]=c[u+6],r[0]=c[u+7],t[0]}e.readDoubleLE=n?s:a,e.readDoubleBE=n?a:s}():function(){function t(n,i,o,s,a,c){var u=s<0?1:0;if(u&&(s=-s),s===0)n(0,a,c+i),n(1/s>0?0:2147483648,a,c+o);else if(isNaN(s))n(0,a,c+i),n(2146959360,a,c+o);else if(s>17976931348623157e292)n(0,a,c+i),n((u<<31|2146435072)>>>0,a,c+o);else{var f;if(s<22250738585072014e-324)f=s/5e-324,n(f>>>0,a,c+i),n((u<<31|f/4294967296)>>>0,a,c+o);else{var l=Math.floor(Math.log(s)/Math.LN2);l===1024&&(l=1023),f=s*Math.pow(2,-l),n(f*4503599627370496>>>0,a,c+i),n((u<<31|l+1023<<20|f*1048576&1048575)>>>0,a,c+o)}}}e.writeDoubleLE=t.bind(null,bl,0,4),e.writeDoubleBE=t.bind(null,wl,4,0);function r(n,i,o,s,a){var c=n(s,a+i),u=n(s,a+o),f=(u>>31)*2+1,l=u>>>20&2047,h=4294967296*(u&1048575)+c;return l===2047?h?NaN:f*(1/0):l===0?f*5e-324*h:f*Math.pow(2,l-1075)*(h+4503599627370496)}e.readDoubleLE=r.bind(null,vl,0,4),e.readDoubleBE=r.bind(null,El,4,0)}(),e}function bl(e,t,r){t[r]=e&255,t[r+1]=e>>>8&255,t[r+2]=e>>>16&255,t[r+3]=e>>>24}function wl(e,t,r){t[r]=e>>>24,t[r+1]=e>>>16&255,t[r+2]=e>>>8&255,t[r+3]=e&255}function vl(e,t){return(e[t]|e[t+1]<<8|e[t+2]<<16|e[t+3]<<24)>>>0}function El(e,t){return(e[t]<<24|e[t+1]<<16|e[t+2]<<8|e[t+3])>>>0}});var Al=Y((exports,module)=>{"use strict";module.exports=inquire;function inquire(moduleName){try{var mod=eval("quire".replace(/^/,"re"))(moduleName);if(mod&&(mod.length||Object.keys(mod).length))return mod}catch(e){}return null}});var Bl=Y(Dl=>{"use strict";var wc=Dl;wc.length=function(t){for(var r=0,n=0,i=0;i<t.length;++i)n=t.charCodeAt(i),n<128?r+=1:n<2048?r+=2:(n&64512)===55296&&(t.charCodeAt(i+1)&64512)===56320?(++i,r+=4):r+=3;return r};wc.read=function(t,r,n){var i=n-r;if(i<1)return"";for(var o=null,s=[],a=0,c;r<n;)c=t[r++],c<128?s[a++]=c:c>191&&c<224?s[a++]=(c&31)<<6|t[r++]&63:c>239&&c<365?(c=((c&7)<<18|(t[r++]&63)<<12|(t[r++]&63)<<6|t[r++]&63)-65536,s[a++]=55296+(c>>10),s[a++]=56320+(c&1023)):s[a++]=(c&15)<<12|(t[r++]&63)<<6|t[r++]&63,a>8191&&((o||(o=[])).push(String.fromCharCode.apply(String,s)),a=0);return o?(a&&o.push(String.fromCharCode.apply(String,s.slice(0,a))),o.join("")):String.fromCharCode.apply(String,s.slice(0,a))};wc.write=function(t,r,n){for(var i=n,o,s,a=0;a<t.length;++a)o=t.charCodeAt(a),o<128?r[n++]=o:o<2048?(r[n++]=o>>6|192,r[n++]=o&63|128):(o&64512)===55296&&((s=t.charCodeAt(a+1))&64512)===56320?(o=65536+((o&1023)<<10)+(s&1023),++a,r[n++]=o>>18|240,r[n++]=o>>12&63|128,r[n++]=o>>6&63|128,r[n++]=o&63|128):(r[n++]=o>>12|224,r[n++]=o>>6&63|128,r[n++]=o&63|128);return n-i}});var Tl=Y((G6,Il)=>{"use strict";Il.exports=km;function km(e,t,r){var n=r||8192,i=n>>>1,o=null,s=n;return function(c){if(c<1||c>i)return e(c);s+c>n&&(o=e(n),s=0);var u=t.call(o,s,s+=c);return s&7&&(s=(s|7)+1),u}}});var kl=Y((W6,_l)=>{"use strict";_l.exports=Ge;var Ri=on();function Ge(e,t){this.lo=e>>>0,this.hi=t>>>0}var nn=Ge.zero=new Ge(0,0);nn.toNumber=function(){return 0};nn.zzEncode=nn.zzDecode=function(){return this};nn.length=function(){return 1};var Rm=Ge.zeroHash="\0\0\0\0\0\0\0\0";Ge.fromNumber=function(t){if(t===0)return nn;var r=t<0;r&&(t=-t);var n=t>>>0,i=(t-n)/4294967296>>>0;return r&&(i=~i>>>0,n=~n>>>0,++n>4294967295&&(n=0,++i>4294967295&&(i=0))),new Ge(n,i)};Ge.from=function(t){if(typeof t=="number")return Ge.fromNumber(t);if(Ri.isString(t))if(Ri.Long)t=Ri.Long.fromString(t);else return Ge.fromNumber(parseInt(t,10));return t.low||t.high?new Ge(t.low>>>0,t.high>>>0):nn};Ge.prototype.toNumber=function(t){if(!t&&this.hi>>>31){var r=~this.lo+1>>>0,n=~this.hi>>>0;return r||(n=n+1>>>0),-(r+n*4294967296)}return this.lo+this.hi*4294967296};Ge.prototype.toLong=function(t){return Ri.Long?new Ri.Long(this.lo|0,this.hi|0,!!t):{low:this.lo|0,high:this.hi|0,unsigned:!!t}};var kr=String.prototype.charCodeAt;Ge.fromHash=function(t){return t===Rm?nn:new Ge((kr.call(t,0)|kr.call(t,1)<<8|kr.call(t,2)<<16|kr.call(t,3)<<24)>>>0,(kr.call(t,4)|kr.call(t,5)<<8|kr.call(t,6)<<16|kr.call(t,7)<<24)>>>0)};Ge.prototype.toHash=function(){return String.fromCharCode(this.lo&255,this.lo>>>8&255,this.lo>>>16&255,this.lo>>>24,this.hi&255,this.hi>>>8&255,this.hi>>>16&255,this.hi>>>24)};Ge.prototype.zzEncode=function(){var t=this.hi>>31;return this.hi=((this.hi<<1|this.lo>>>31)^t)>>>0,this.lo=(this.lo<<1^t)>>>0,this};Ge.prototype.zzDecode=function(){var t=-(this.lo&1);return this.lo=((this.lo>>>1|this.hi<<31)^t)>>>0,this.hi=(this.hi>>>1^t)>>>0,this};Ge.prototype.length=function(){var t=this.lo,r=(this.lo>>>28|this.hi<<4)>>>0,n=this.hi>>>24;return n===0?r===0?t<16384?t<128?1:2:t<2097152?3:4:r<16384?r<128?5:6:r<2097152?7:8:n<128?9:10}});var on=Y(vc=>{"use strict";var $=vc;$.asPromise=ll();$.base64=yl();$.EventEmitter=ml();$.float=Cl();$.inquire=Al();$.utf8=Bl();$.pool=Tl();$.LongBits=kl();$.isNode=!!(typeof globalThis<"u"&&globalThis&&globalThis.process&&globalThis.process.versions&&globalThis.process.versions.node);$.global=$.isNode&&globalThis||typeof window<"u"&&window||typeof self<"u"&&self||vc;$.emptyArray=Object.freeze?Object.freeze([]):[];$.emptyObject=Object.freeze?Object.freeze({}):{};$.isInteger=Number.isInteger||function(t){return typeof t=="number"&&isFinite(t)&&Math.floor(t)===t};$.isString=function(t){return typeof t=="string"||t instanceof String};$.isObject=function(t){return t&&typeof t=="object"};$.isset=$.isSet=function(t,r){var n=t[r];return n!=null&&t.hasOwnProperty(r)?typeof n!="object"||(Array.isArray(n)?n.length:Object.keys(n).length)>0:!1};$.Buffer=function(){try{var e=$.inquire("buffer").Buffer;return e.prototype.utf8Write?e:null}catch{return null}}();$._Buffer_from=null;$._Buffer_allocUnsafe=null;$.newBuffer=function(t){return typeof t=="number"?$.Buffer?$._Buffer_allocUnsafe(t):new $.Array(t):$.Buffer?$._Buffer_from(t):typeof Uint8Array>"u"?t:new Uint8Array(t)};$.Array=typeof Uint8Array<"u"?Uint8Array:Array;$.Long=$.global.dcodeIO&&$.global.dcodeIO.Long||$.global.Long||$.inquire("long");$.key2Re=/^true|false|0|1$/;$.key32Re=/^-?(?:0|[1-9][0-9]*)$/;$.key64Re=/^(?:[\\x00-\\xff]{8}|-?(?:0|[1-9][0-9]*))$/;$.longToHash=function(t){return t?$.LongBits.from(t).toHash():$.LongBits.zeroHash};$.longFromHash=function(t,r){var n=$.LongBits.fromHash(t);return $.Long?$.Long.fromBits(n.lo,n.hi,r):n.toNumber(!!r)};function Rl(e,t,r){for(var n=Object.keys(t),i=0;i<n.length;++i)(e[n[i]]===void 0||!r)&&(e[n[i]]=t[n[i]]);return e}$.merge=Rl;$.lcFirst=function(t){return t.charAt(0).toLowerCase()+t.substring(1)};function Ll(e){function t(r,n){if(!(this instanceof t))return new t(r,n);Object.defineProperty(this,"message",{get:function(){return r}}),Error.captureStackTrace?Error.captureStackTrace(this,t):Object.defineProperty(this,"stack",{value:new Error().stack||""}),n&&Rl(this,n)}return t.prototype=Object.create(Error.prototype,{constructor:{value:t,writable:!0,enumerable:!1,configurable:!0},name:{get:function(){return e},set:void 0,enumerable:!1,configurable:!0},toString:{value:function(){return this.name+": "+this.message},writable:!0,enumerable:!1,configurable:!0}}),t}$.newError=Ll;$.ProtocolError=Ll("ProtocolError");$.oneOfGetter=function(t){for(var r={},n=0;n<t.length;++n)r[t[n]]=1;return function(){for(var i=Object.keys(this),o=i.length-1;o>-1;--o)if(r[i[o]]===1&&this[i[o]]!==void 0&&this[i[o]]!==null)return i[o]}};$.oneOfSetter=function(t){return function(r){for(var n=0;n<t.length;++n)t[n]!==r&&delete this[t[n]]}};$.toJSONOptions={longs:String,enums:String,bytes:String,json:!0};$._configure=function(){var e=$.Buffer;if(!e){$._Buffer_from=$._Buffer_allocUnsafe=null;return}$._Buffer_from=e.from!==Uint8Array.from&&e.from||function(r,n){return new e(r,n)},$._Buffer_allocUnsafe=e.allocUnsafe||function(r){return new e(r)}}});var Cc=Y((Y6,Fl)=>{"use strict";Fl.exports=Fe;var Rt=on(),Sc,Ul=Rt.LongBits,Lm=Rt.utf8;function Lt(e,t){return RangeError("index out of range: "+e.pos+" + "+(t||1)+" > "+e.len)}function Fe(e){this.buf=e,this.pos=0,this.len=e.length}var Nl=typeof Uint8Array<"u"?function(t){if(t instanceof Uint8Array||Array.isArray(t))return new Fe(t);throw Error("illegal buffer")}:function(t){if(Array.isArray(t))return new Fe(t);throw Error("illegal buffer")},Ol=function(){return Rt.Buffer?function(r){return(Fe.create=function(i){return Rt.Buffer.isBuffer(i)?new Sc(i):Nl(i)})(r)}:Nl};Fe.create=Ol();Fe.prototype._slice=Rt.Array.prototype.subarray||Rt.Array.prototype.slice;Fe.prototype.uint32=function(){var t=4294967295;return function(){if(t=(this.buf[this.pos]&127)>>>0,this.buf[this.pos++]<128||(t=(t|(this.buf[this.pos]&127)<<7)>>>0,this.buf[this.pos++]<128)||(t=(t|(this.buf[this.pos]&127)<<14)>>>0,this.buf[this.pos++]<128)||(t=(t|(this.buf[this.pos]&127)<<21)>>>0,this.buf[this.pos++]<128)||(t=(t|(this.buf[this.pos]&15)<<28)>>>0,this.buf[this.pos++]<128))return t;if((this.pos+=5)>this.len)throw this.pos=this.len,Lt(this,10);return t}}();Fe.prototype.int32=function(){return this.uint32()|0};Fe.prototype.sint32=function(){var t=this.uint32();return t>>>1^-(t&1)|0};function Ec(){var e=new Ul(0,0),t=0;if(this.len-this.pos>4){for(;t<4;++t)if(e.lo=(e.lo|(this.buf[this.pos]&127)<<t*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;t=0}else{for(;t<3;++t){if(this.pos>=this.len)throw Lt(this);if(e.lo=(e.lo|(this.buf[this.pos]&127)<<t*7)>>>0,this.buf[this.pos++]<128)return e}return e.lo=(e.lo|(this.buf[this.pos++]&127)<<t*7)>>>0,e}if(this.len-this.pos>4){for(;t<5;++t)if(e.hi=(e.hi|(this.buf[this.pos]&127)<<t*7+3)>>>0,this.buf[this.pos++]<128)return e}else for(;t<5;++t){if(this.pos>=this.len)throw Lt(this);if(e.hi=(e.hi|(this.buf[this.pos]&127)<<t*7+3)>>>0,this.buf[this.pos++]<128)return e}throw Error("invalid varint encoding")}Fe.prototype.bool=function(){return this.uint32()!==0};function Vo(e,t){return(e[t-4]|e[t-3]<<8|e[t-2]<<16|e[t-1]<<24)>>>0}Fe.prototype.fixed32=function(){if(this.pos+4>this.len)throw Lt(this,4);return Vo(this.buf,this.pos+=4)};Fe.prototype.sfixed32=function(){if(this.pos+4>this.len)throw Lt(this,4);return Vo(this.buf,this.pos+=4)|0};function Pl(){if(this.pos+8>this.len)throw Lt(this,8);return new Ul(Vo(this.buf,this.pos+=4),Vo(this.buf,this.pos+=4))}Fe.prototype.float=function(){if(this.pos+4>this.len)throw Lt(this,4);var t=Rt.float.readFloatLE(this.buf,this.pos);return this.pos+=4,t};Fe.prototype.double=function(){if(this.pos+8>this.len)throw Lt(this,4);var t=Rt.float.readDoubleLE(this.buf,this.pos);return this.pos+=8,t};Fe.prototype.bytes=function(){var t=this.uint32(),r=this.pos,n=this.pos+t;if(n>this.len)throw Lt(this,t);if(this.pos+=t,Array.isArray(this.buf))return this.buf.slice(r,n);if(r===n){var i=Rt.Buffer;return i?i.alloc(0):new this.buf.constructor(0)}return this._slice.call(this.buf,r,n)};Fe.prototype.string=function(){var t=this.bytes();return Lm.read(t,0,t.length)};Fe.prototype.skip=function(t){if(typeof t=="number"){if(this.pos+t>this.len)throw Lt(this,t);this.pos+=t}else do if(this.pos>=this.len)throw Lt(this);while(this.buf[this.pos++]&128);return this};Fe.prototype.skipType=function(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};Fe._configure=function(e){Sc=e,Fe.create=Ol(),Sc._configure();var t=Rt.Long?"toLong":"toNumber";Rt.merge(Fe.prototype,{int64:function(){return Ec.call(this)[t](!1)},uint64:function(){return Ec.call(this)[t](!0)},sint64:function(){return Ec.call(this).zzDecode()[t](!1)},fixed64:function(){return Pl.call(this)[t](!0)},sfixed64:function(){return Pl.call(this)[t](!1)}})}});var ql=Y((Z6,Vl)=>{"use strict";Vl.exports=sn;var Ml=Cc();(sn.prototype=Object.create(Ml.prototype)).constructor=sn;var Kl=on();function sn(e){Ml.call(this,e)}sn._configure=function(){Kl.Buffer&&(sn.prototype._slice=Kl.Buffer.prototype.slice)};sn.prototype.string=function(){var t=this.uint32();return this.buf.utf8Slice?this.buf.utf8Slice(this.pos,this.pos=Math.min(this.pos+t,this.len)):this.buf.toString("utf-8",this.pos,this.pos=Math.min(this.pos+t,this.len))};sn._configure()});var kc=Y((X6,Wl)=>{"use strict";Wl.exports=fe;var vt=on(),Ac,qo=vt.LongBits,Hl=vt.base64,zl=vt.utf8;function Li(e,t,r){this.fn=e,this.len=t,this.next=void 0,this.val=r}function Bc(){}function Nm(e){this.head=e.head,this.tail=e.tail,this.len=e.len,this.next=e.states}function fe(){this.len=0,this.head=new Li(Bc,0,0),this.tail=this.head,this.states=null}var Gl=function(){return vt.Buffer?function(){return(fe.create=function(){return new Ac})()}:function(){return new fe}};fe.create=Gl();fe.alloc=function(t){return new vt.Array(t)};vt.Array!==Array&&(fe.alloc=vt.pool(fe.alloc,vt.Array.prototype.subarray));fe.prototype._push=function(t,r,n){return this.tail=this.tail.next=new Li(t,r,n),this.len+=r,this};function Ic(e,t,r){t[r]=e&255}function Pm(e,t,r){for(;e>127;)t[r++]=e&127|128,e>>>=7;t[r]=e}function Tc(e,t){this.len=e,this.next=void 0,this.val=t}Tc.prototype=Object.create(Li.prototype);Tc.prototype.fn=Pm;fe.prototype.uint32=function(t){return this.len+=(this.tail=this.tail.next=new Tc((t=t>>>0)<128?1:t<16384?2:t<2097152?3:t<268435456?4:5,t)).len,this};fe.prototype.int32=function(t){return t<0?this._push(_c,10,qo.fromNumber(t)):this.uint32(t)};fe.prototype.sint32=function(t){return this.uint32((t<<1^t>>31)>>>0)};function _c(e,t,r){for(;e.hi;)t[r++]=e.lo&127|128,e.lo=(e.lo>>>7|e.hi<<25)>>>0,e.hi>>>=7;for(;e.lo>127;)t[r++]=e.lo&127|128,e.lo=e.lo>>>7;t[r++]=e.lo}fe.prototype.uint64=function(t){var r=qo.from(t);return this._push(_c,r.length(),r)};fe.prototype.int64=fe.prototype.uint64;fe.prototype.sint64=function(t){var r=qo.from(t).zzEncode();return this._push(_c,r.length(),r)};fe.prototype.bool=function(t){return this._push(Ic,1,t?1:0)};function Dc(e,t,r){t[r]=e&255,t[r+1]=e>>>8&255,t[r+2]=e>>>16&255,t[r+3]=e>>>24}fe.prototype.fixed32=function(t){return this._push(Dc,4,t>>>0)};fe.prototype.sfixed32=fe.prototype.fixed32;fe.prototype.fixed64=function(t){var r=qo.from(t);return this._push(Dc,4,r.lo)._push(Dc,4,r.hi)};fe.prototype.sfixed64=fe.prototype.fixed64;fe.prototype.float=function(t){return this._push(vt.float.writeFloatLE,4,t)};fe.prototype.double=function(t){return this._push(vt.float.writeDoubleLE,8,t)};var Um=vt.Array.prototype.set?function(t,r,n){r.set(t,n)}:function(t,r,n){for(var i=0;i<t.length;++i)r[n+i]=t[i]};fe.prototype.bytes=function(t){var r=t.length>>>0;if(!r)return this._push(Ic,1,0);if(vt.isString(t)){var n=fe.alloc(r=Hl.length(t));Hl.decode(t,n,0),t=n}return this.uint32(r)._push(Um,r,t)};fe.prototype.string=function(t){var r=zl.length(t);return r?this.uint32(r)._push(zl.write,r,t):this._push(Ic,1,0)};fe.prototype.fork=function(){return this.states=new Nm(this),this.head=this.tail=new Li(Bc,0,0),this.len=0,this};fe.prototype.reset=function(){return this.states?(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 Li(Bc,0,0),this.len=0),this};fe.prototype.ldelim=function(){var t=this.head,r=this.tail,n=this.len;return this.reset().uint32(n),n&&(this.tail.next=t.next,this.tail=r,this.len+=n),this};fe.prototype.finish=function(){for(var t=this.head.next,r=this.constructor.alloc(this.len),n=0;t;)t.fn(t.val,r,n),n+=t.len,t=t.next;return r};fe._configure=function(e){Ac=e,fe.create=Gl(),Ac._configure()}});var Zl=Y((Q6,Yl)=>{"use strict";Yl.exports=Xt;var $l=kc();(Xt.prototype=Object.create($l.prototype)).constructor=Xt;var Rr=on();function Xt(){$l.call(this)}Xt._configure=function(){Xt.alloc=Rr._Buffer_allocUnsafe,Xt.writeBytesBuffer=Rr.Buffer&&Rr.Buffer.prototype instanceof Uint8Array&&Rr.Buffer.prototype.set.name==="set"?function(t,r,n){r.set(t,n)}:function(t,r,n){if(t.copy)t.copy(r,n,0,t.length);else for(var i=0;i<t.length;)r[n++]=t[i++]}};Xt.prototype.bytes=function(t){Rr.isString(t)&&(t=Rr._Buffer_from(t,"base64"));var r=t.length>>>0;return this.uint32(r),r&&this._push(Xt.writeBytesBuffer,r,t),this};function Om(e,t,r){e.length<40?Rr.utf8.write(e,t,r):t.utf8Write?t.utf8Write(e,r):t.write(e,r)}Xt.prototype.string=function(t){var r=Rr.Buffer.byteLength(t);return this.uint32(r),r&&this._push(Om,r,t),this};Xt._configure()});var we=Y((bB,fd)=>{fd.exports={options:{usePureJavaScript:!1}}});var dd=Y((wB,hd)=>{var m0={};hd.exports=m0;var ld={};m0.encode=function(e,t,r){if(typeof t!="string")throw new TypeError('"alphabet" must be a string.');if(r!==void 0&&typeof r!="number")throw new TypeError('"maxline" must be a number.');var n="";if(!(e instanceof Uint8Array))n=Tb(e,t);else{var i=0,o=t.length,s=t.charAt(0),a=[0];for(i=0;i<e.length;++i){for(var c=0,u=e[i];c<a.length;++c)u+=a[c]<<8,a[c]=u%o,u=u/o|0;for(;u>0;)a.push(u%o),u=u/o|0}for(i=0;e[i]===0&&i<e.length-1;++i)n+=s;for(i=a.length-1;i>=0;--i)n+=t[a[i]]}if(r){var f=new RegExp(".{1,"+r+"}","g");n=n.match(f).join(`\r
3
- `)}return n};m0.decode=function(e,t){if(typeof e!="string")throw new TypeError('"input" must be a string.');if(typeof t!="string")throw new TypeError('"alphabet" must be a string.');var r=ld[t];if(!r){r=ld[t]=[];for(var n=0;n<t.length;++n)r[t.charCodeAt(n)]=n}e=e.replace(/\s/g,"");for(var i=t.length,o=t.charAt(0),s=[0],n=0;n<e.length;n++){var a=r[e.charCodeAt(n)];if(a===void 0)return;for(var c=0,u=a;c<s.length;++c)u+=s[c]*i,s[c]=u&255,u>>=8;for(;u>0;)s.push(u&255),u>>=8}for(var f=0;e[f]===o&&f<e.length-1;++f)s.push(0);return typeof Buffer<"u"?Buffer.from(s.reverse()):new Uint8Array(s.reverse())};function Tb(e,t){var r=0,n=t.length,i=t.charAt(0),o=[0];for(r=0;r<e.length();++r){for(var s=0,a=e.at(r);s<o.length;++s)a+=o[s]<<8,o[s]=a%n,a=a/n|0;for(;a>0;)o.push(a%n),a=a/n|0}var c="";for(r=0;e.at(r)===0&&r<e.length()-1;++r)c+=i;for(r=o.length-1;r>=0;--r)c+=t[o[r]];return c}});var Ve=Y((vB,md)=>{var pd=we(),yd=dd(),b=md.exports=pd.util=pd.util||{};(function(){if(typeof process<"u"&&process.nextTick&&!process.browser){b.nextTick=process.nextTick,typeof setImmediate=="function"?b.setImmediate=setImmediate:b.setImmediate=b.nextTick;return}if(typeof setImmediate=="function"){b.setImmediate=function(){return setImmediate.apply(void 0,arguments)},b.nextTick=function(a){return setImmediate(a)};return}if(b.setImmediate=function(a){setTimeout(a,0)},typeof window<"u"&&typeof window.postMessage=="function"){let a=function(c){if(c.source===window&&c.data===e){c.stopPropagation();var u=t.slice();t.length=0,u.forEach(function(f){f()})}};var s=a,e="forge.setImmediate",t=[];b.setImmediate=function(c){t.push(c),t.length===1&&window.postMessage(e,"*")},window.addEventListener("message",a,!0)}if(typeof MutationObserver<"u"){var r=Date.now(),n=!0,i=document.createElement("div"),t=[];new MutationObserver(function(){var c=t.slice();t.length=0,c.forEach(function(u){u()})}).observe(i,{attributes:!0});var o=b.setImmediate;b.setImmediate=function(c){Date.now()-r>15?(r=Date.now(),o(c)):(t.push(c),t.length===1&&i.setAttribute("a",n=!n))}}b.nextTick=b.setImmediate})();b.isNodejs=typeof process<"u"&&process.versions&&process.versions.node;b.globalScope=function(){return b.isNodejs?globalThis:typeof self>"u"?window:self}();b.isArray=Array.isArray||function(e){return Object.prototype.toString.call(e)==="[object Array]"};b.isArrayBuffer=function(e){return typeof ArrayBuffer<"u"&&e instanceof ArrayBuffer};b.isArrayBufferView=function(e){return e&&b.isArrayBuffer(e.buffer)&&e.byteLength!==void 0};function Hi(e){if(!(e===8||e===16||e===24||e===32))throw new Error("Only 8, 16, 24, or 32 bits supported: "+e)}b.ByteBuffer=x0;function x0(e){if(this.data="",this.read=0,typeof e=="string")this.data=e;else if(b.isArrayBuffer(e)||b.isArrayBufferView(e))if(typeof Buffer<"u"&&e instanceof Buffer)this.data=e.toString("binary");else{var t=new Uint8Array(e);try{this.data=String.fromCharCode.apply(null,t)}catch{for(var r=0;r<t.length;++r)this.putByte(t[r])}}else(e instanceof x0||typeof e=="object"&&typeof e.data=="string"&&typeof e.read=="number")&&(this.data=e.data,this.read=e.read);this._constructedStringLength=0}b.ByteStringBuffer=x0;var _b=4096;b.ByteStringBuffer.prototype._optimizeConstructedString=function(e){this._constructedStringLength+=e,this._constructedStringLength>_b&&(this.data.substr(0,1),this._constructedStringLength=0)};b.ByteStringBuffer.prototype.length=function(){return this.data.length-this.read};b.ByteStringBuffer.prototype.isEmpty=function(){return this.length()<=0};b.ByteStringBuffer.prototype.putByte=function(e){return this.putBytes(String.fromCharCode(e))};b.ByteStringBuffer.prototype.fillWithByte=function(e,t){e=String.fromCharCode(e);for(var r=this.data;t>0;)t&1&&(r+=e),t>>>=1,t>0&&(e+=e);return this.data=r,this._optimizeConstructedString(t),this};b.ByteStringBuffer.prototype.putBytes=function(e){return this.data+=e,this._optimizeConstructedString(e.length),this};b.ByteStringBuffer.prototype.putString=function(e){return this.putBytes(b.encodeUtf8(e))};b.ByteStringBuffer.prototype.putInt16=function(e){return this.putBytes(String.fromCharCode(e>>8&255)+String.fromCharCode(e&255))};b.ByteStringBuffer.prototype.putInt24=function(e){return this.putBytes(String.fromCharCode(e>>16&255)+String.fromCharCode(e>>8&255)+String.fromCharCode(e&255))};b.ByteStringBuffer.prototype.putInt32=function(e){return this.putBytes(String.fromCharCode(e>>24&255)+String.fromCharCode(e>>16&255)+String.fromCharCode(e>>8&255)+String.fromCharCode(e&255))};b.ByteStringBuffer.prototype.putInt16Le=function(e){return this.putBytes(String.fromCharCode(e&255)+String.fromCharCode(e>>8&255))};b.ByteStringBuffer.prototype.putInt24Le=function(e){return this.putBytes(String.fromCharCode(e&255)+String.fromCharCode(e>>8&255)+String.fromCharCode(e>>16&255))};b.ByteStringBuffer.prototype.putInt32Le=function(e){return this.putBytes(String.fromCharCode(e&255)+String.fromCharCode(e>>8&255)+String.fromCharCode(e>>16&255)+String.fromCharCode(e>>24&255))};b.ByteStringBuffer.prototype.putInt=function(e,t){Hi(t);var r="";do t-=8,r+=String.fromCharCode(e>>t&255);while(t>0);return this.putBytes(r)};b.ByteStringBuffer.prototype.putSignedInt=function(e,t){return e<0&&(e+=2<<t-1),this.putInt(e,t)};b.ByteStringBuffer.prototype.putBuffer=function(e){return this.putBytes(e.getBytes())};b.ByteStringBuffer.prototype.getByte=function(){return this.data.charCodeAt(this.read++)};b.ByteStringBuffer.prototype.getInt16=function(){var e=this.data.charCodeAt(this.read)<<8^this.data.charCodeAt(this.read+1);return this.read+=2,e};b.ByteStringBuffer.prototype.getInt24=function(){var e=this.data.charCodeAt(this.read)<<16^this.data.charCodeAt(this.read+1)<<8^this.data.charCodeAt(this.read+2);return this.read+=3,e};b.ByteStringBuffer.prototype.getInt32=function(){var e=this.data.charCodeAt(this.read)<<24^this.data.charCodeAt(this.read+1)<<16^this.data.charCodeAt(this.read+2)<<8^this.data.charCodeAt(this.read+3);return this.read+=4,e};b.ByteStringBuffer.prototype.getInt16Le=function(){var e=this.data.charCodeAt(this.read)^this.data.charCodeAt(this.read+1)<<8;return this.read+=2,e};b.ByteStringBuffer.prototype.getInt24Le=function(){var e=this.data.charCodeAt(this.read)^this.data.charCodeAt(this.read+1)<<8^this.data.charCodeAt(this.read+2)<<16;return this.read+=3,e};b.ByteStringBuffer.prototype.getInt32Le=function(){var e=this.data.charCodeAt(this.read)^this.data.charCodeAt(this.read+1)<<8^this.data.charCodeAt(this.read+2)<<16^this.data.charCodeAt(this.read+3)<<24;return this.read+=4,e};b.ByteStringBuffer.prototype.getInt=function(e){Hi(e);var t=0;do t=(t<<8)+this.data.charCodeAt(this.read++),e-=8;while(e>0);return t};b.ByteStringBuffer.prototype.getSignedInt=function(e){var t=this.getInt(e),r=2<<e-2;return t>=r&&(t-=r<<1),t};b.ByteStringBuffer.prototype.getBytes=function(e){var t;return e?(e=Math.min(this.length(),e),t=this.data.slice(this.read,this.read+e),this.read+=e):e===0?t="":(t=this.read===0?this.data:this.data.slice(this.read),this.clear()),t};b.ByteStringBuffer.prototype.bytes=function(e){return typeof e>"u"?this.data.slice(this.read):this.data.slice(this.read,this.read+e)};b.ByteStringBuffer.prototype.at=function(e){return this.data.charCodeAt(this.read+e)};b.ByteStringBuffer.prototype.setAt=function(e,t){return this.data=this.data.substr(0,this.read+e)+String.fromCharCode(t)+this.data.substr(this.read+e+1),this};b.ByteStringBuffer.prototype.last=function(){return this.data.charCodeAt(this.data.length-1)};b.ByteStringBuffer.prototype.copy=function(){var e=b.createBuffer(this.data);return e.read=this.read,e};b.ByteStringBuffer.prototype.compact=function(){return this.read>0&&(this.data=this.data.slice(this.read),this.read=0),this};b.ByteStringBuffer.prototype.clear=function(){return this.data="",this.read=0,this};b.ByteStringBuffer.prototype.truncate=function(e){var t=Math.max(0,this.length()-e);return this.data=this.data.substr(this.read,t),this.read=0,this};b.ByteStringBuffer.prototype.toHex=function(){for(var e="",t=this.read;t<this.data.length;++t){var r=this.data.charCodeAt(t);r<16&&(e+="0"),e+=r.toString(16)}return e};b.ByteStringBuffer.prototype.toString=function(){return b.decodeUtf8(this.bytes())};function kb(e,t){t=t||{},this.read=t.readOffset||0,this.growSize=t.growSize||1024;var r=b.isArrayBuffer(e),n=b.isArrayBufferView(e);if(r||n){r?this.data=new DataView(e):this.data=new DataView(e.buffer,e.byteOffset,e.byteLength),this.write="writeOffset"in t?t.writeOffset:this.data.byteLength;return}this.data=new DataView(new ArrayBuffer(0)),this.write=0,e!=null&&this.putBytes(e),"writeOffset"in t&&(this.write=t.writeOffset)}b.DataBuffer=kb;b.DataBuffer.prototype.length=function(){return this.write-this.read};b.DataBuffer.prototype.isEmpty=function(){return this.length()<=0};b.DataBuffer.prototype.accommodate=function(e,t){if(this.length()>=e)return this;t=Math.max(t||this.growSize,e);var r=new Uint8Array(this.data.buffer,this.data.byteOffset,this.data.byteLength),n=new Uint8Array(this.length()+t);return n.set(r),this.data=new DataView(n.buffer),this};b.DataBuffer.prototype.putByte=function(e){return this.accommodate(1),this.data.setUint8(this.write++,e),this};b.DataBuffer.prototype.fillWithByte=function(e,t){this.accommodate(t);for(var r=0;r<t;++r)this.data.setUint8(e);return this};b.DataBuffer.prototype.putBytes=function(e,t){if(b.isArrayBufferView(e)){var r=new Uint8Array(e.buffer,e.byteOffset,e.byteLength),n=r.byteLength-r.byteOffset;this.accommodate(n);var i=new Uint8Array(this.data.buffer,this.write);return i.set(r),this.write+=n,this}if(b.isArrayBuffer(e)){var r=new Uint8Array(e);this.accommodate(r.byteLength);var i=new Uint8Array(this.data.buffer);return i.set(r,this.write),this.write+=r.byteLength,this}if(e instanceof b.DataBuffer||typeof e=="object"&&typeof e.read=="number"&&typeof e.write=="number"&&b.isArrayBufferView(e.data)){var r=new Uint8Array(e.data.byteLength,e.read,e.length());this.accommodate(r.byteLength);var i=new Uint8Array(e.data.byteLength,this.write);return i.set(r),this.write+=r.byteLength,this}if(e instanceof b.ByteStringBuffer&&(e=e.data,t="binary"),t=t||"binary",typeof e=="string"){var o;if(t==="hex")return this.accommodate(Math.ceil(e.length/2)),o=new Uint8Array(this.data.buffer,this.write),this.write+=b.binary.hex.decode(e,o,this.write),this;if(t==="base64")return this.accommodate(Math.ceil(e.length/4)*3),o=new Uint8Array(this.data.buffer,this.write),this.write+=b.binary.base64.decode(e,o,this.write),this;if(t==="utf8"&&(e=b.encodeUtf8(e),t="binary"),t==="binary"||t==="raw")return this.accommodate(e.length),o=new Uint8Array(this.data.buffer,this.write),this.write+=b.binary.raw.decode(o),this;if(t==="utf16")return this.accommodate(e.length*2),o=new Uint16Array(this.data.buffer,this.write),this.write+=b.text.utf16.encode(o),this;throw new Error("Invalid encoding: "+t)}throw Error("Invalid parameter: "+e)};b.DataBuffer.prototype.putBuffer=function(e){return this.putBytes(e),e.clear(),this};b.DataBuffer.prototype.putString=function(e){return this.putBytes(e,"utf16")};b.DataBuffer.prototype.putInt16=function(e){return this.accommodate(2),this.data.setInt16(this.write,e),this.write+=2,this};b.DataBuffer.prototype.putInt24=function(e){return this.accommodate(3),this.data.setInt16(this.write,e>>8&65535),this.data.setInt8(this.write,e>>16&255),this.write+=3,this};b.DataBuffer.prototype.putInt32=function(e){return this.accommodate(4),this.data.setInt32(this.write,e),this.write+=4,this};b.DataBuffer.prototype.putInt16Le=function(e){return this.accommodate(2),this.data.setInt16(this.write,e,!0),this.write+=2,this};b.DataBuffer.prototype.putInt24Le=function(e){return this.accommodate(3),this.data.setInt8(this.write,e>>16&255),this.data.setInt16(this.write,e>>8&65535,!0),this.write+=3,this};b.DataBuffer.prototype.putInt32Le=function(e){return this.accommodate(4),this.data.setInt32(this.write,e,!0),this.write+=4,this};b.DataBuffer.prototype.putInt=function(e,t){Hi(t),this.accommodate(t/8);do t-=8,this.data.setInt8(this.write++,e>>t&255);while(t>0);return this};b.DataBuffer.prototype.putSignedInt=function(e,t){return Hi(t),this.accommodate(t/8),e<0&&(e+=2<<t-1),this.putInt(e,t)};b.DataBuffer.prototype.getByte=function(){return this.data.getInt8(this.read++)};b.DataBuffer.prototype.getInt16=function(){var e=this.data.getInt16(this.read);return this.read+=2,e};b.DataBuffer.prototype.getInt24=function(){var e=this.data.getInt16(this.read)<<8^this.data.getInt8(this.read+2);return this.read+=3,e};b.DataBuffer.prototype.getInt32=function(){var e=this.data.getInt32(this.read);return this.read+=4,e};b.DataBuffer.prototype.getInt16Le=function(){var e=this.data.getInt16(this.read,!0);return this.read+=2,e};b.DataBuffer.prototype.getInt24Le=function(){var e=this.data.getInt8(this.read)^this.data.getInt16(this.read+1,!0)<<8;return this.read+=3,e};b.DataBuffer.prototype.getInt32Le=function(){var e=this.data.getInt32(this.read,!0);return this.read+=4,e};b.DataBuffer.prototype.getInt=function(e){Hi(e);var t=0;do t=(t<<8)+this.data.getInt8(this.read++),e-=8;while(e>0);return t};b.DataBuffer.prototype.getSignedInt=function(e){var t=this.getInt(e),r=2<<e-2;return t>=r&&(t-=r<<1),t};b.DataBuffer.prototype.getBytes=function(e){var t;return e?(e=Math.min(this.length(),e),t=this.data.slice(this.read,this.read+e),this.read+=e):e===0?t="":(t=this.read===0?this.data:this.data.slice(this.read),this.clear()),t};b.DataBuffer.prototype.bytes=function(e){return typeof e>"u"?this.data.slice(this.read):this.data.slice(this.read,this.read+e)};b.DataBuffer.prototype.at=function(e){return this.data.getUint8(this.read+e)};b.DataBuffer.prototype.setAt=function(e,t){return this.data.setUint8(e,t),this};b.DataBuffer.prototype.last=function(){return this.data.getUint8(this.write-1)};b.DataBuffer.prototype.copy=function(){return new b.DataBuffer(this)};b.DataBuffer.prototype.compact=function(){if(this.read>0){var e=new Uint8Array(this.data.buffer,this.read),t=new Uint8Array(e.byteLength);t.set(e),this.data=new DataView(t),this.write-=this.read,this.read=0}return this};b.DataBuffer.prototype.clear=function(){return this.data=new DataView(new ArrayBuffer(0)),this.read=this.write=0,this};b.DataBuffer.prototype.truncate=function(e){return this.write=Math.max(0,this.length()-e),this.read=Math.min(this.read,this.write),this};b.DataBuffer.prototype.toHex=function(){for(var e="",t=this.read;t<this.data.byteLength;++t){var r=this.data.getUint8(t);r<16&&(e+="0"),e+=r.toString(16)}return e};b.DataBuffer.prototype.toString=function(e){var t=new Uint8Array(this.data,this.read,this.length());if(e=e||"utf8",e==="binary"||e==="raw")return b.binary.raw.encode(t);if(e==="hex")return b.binary.hex.encode(t);if(e==="base64")return b.binary.base64.encode(t);if(e==="utf8")return b.text.utf8.decode(t);if(e==="utf16")return b.text.utf16.decode(t);throw new Error("Invalid encoding: "+e)};b.createBuffer=function(e,t){return t=t||"raw",e!==void 0&&t==="utf8"&&(e=b.encodeUtf8(e)),new b.ByteBuffer(e)};b.fillString=function(e,t){for(var r="";t>0;)t&1&&(r+=e),t>>>=1,t>0&&(e+=e);return r};b.xorBytes=function(e,t,r){for(var n="",i="",o="",s=0,a=0;r>0;--r,++s)i=e.charCodeAt(s)^t.charCodeAt(s),a>=10&&(n+=o,o="",a=0),o+=String.fromCharCode(i),++a;return n+=o,n};b.hexToBytes=function(e){var t="",r=0;for(e.length&!0&&(r=1,t+=String.fromCharCode(parseInt(e[0],16)));r<e.length;r+=2)t+=String.fromCharCode(parseInt(e.substr(r,2),16));return t};b.bytesToHex=function(e){return b.createBuffer(e).toHex()};b.int32ToBytes=function(e){return String.fromCharCode(e>>24&255)+String.fromCharCode(e>>16&255)+String.fromCharCode(e>>8&255)+String.fromCharCode(e&255)};var Mr="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",Vr=[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],gd="123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz";b.encode64=function(e,t){for(var r="",n="",i,o,s,a=0;a<e.length;)i=e.charCodeAt(a++),o=e.charCodeAt(a++),s=e.charCodeAt(a++),r+=Mr.charAt(i>>2),r+=Mr.charAt((i&3)<<4|o>>4),isNaN(o)?r+="==":(r+=Mr.charAt((o&15)<<2|s>>6),r+=isNaN(s)?"=":Mr.charAt(s&63)),t&&r.length>t&&(n+=r.substr(0,t)+`\r
4
- `,r=r.substr(t));return n+=r,n};b.decode64=function(e){e=e.replace(/[^A-Za-z0-9\+\/\=]/g,"");for(var t="",r,n,i,o,s=0;s<e.length;)r=Vr[e.charCodeAt(s++)-43],n=Vr[e.charCodeAt(s++)-43],i=Vr[e.charCodeAt(s++)-43],o=Vr[e.charCodeAt(s++)-43],t+=String.fromCharCode(r<<2|n>>4),i!==64&&(t+=String.fromCharCode((n&15)<<4|i>>2),o!==64&&(t+=String.fromCharCode((i&3)<<6|o)));return t};b.encodeUtf8=function(e){return unescape(encodeURIComponent(e))};b.decodeUtf8=function(e){return decodeURIComponent(escape(e))};b.binary={raw:{},hex:{},base64:{},base58:{},baseN:{encode:yd.encode,decode:yd.decode}};b.binary.raw.encode=function(e){return String.fromCharCode.apply(null,e)};b.binary.raw.decode=function(e,t,r){var n=t;n||(n=new Uint8Array(e.length)),r=r||0;for(var i=r,o=0;o<e.length;++o)n[i++]=e.charCodeAt(o);return t?i-r:n};b.binary.hex.encode=b.bytesToHex;b.binary.hex.decode=function(e,t,r){var n=t;n||(n=new Uint8Array(Math.ceil(e.length/2))),r=r||0;var i=0,o=r;for(e.length&1&&(i=1,n[o++]=parseInt(e[0],16));i<e.length;i+=2)n[o++]=parseInt(e.substr(i,2),16);return t?o-r:n};b.binary.base64.encode=function(e,t){for(var r="",n="",i,o,s,a=0;a<e.byteLength;)i=e[a++],o=e[a++],s=e[a++],r+=Mr.charAt(i>>2),r+=Mr.charAt((i&3)<<4|o>>4),isNaN(o)?r+="==":(r+=Mr.charAt((o&15)<<2|s>>6),r+=isNaN(s)?"=":Mr.charAt(s&63)),t&&r.length>t&&(n+=r.substr(0,t)+`\r
5
- `,r=r.substr(t));return n+=r,n};b.binary.base64.decode=function(e,t,r){var n=t;n||(n=new Uint8Array(Math.ceil(e.length/4)*3)),e=e.replace(/[^A-Za-z0-9\+\/\=]/g,""),r=r||0;for(var i,o,s,a,c=0,u=r;c<e.length;)i=Vr[e.charCodeAt(c++)-43],o=Vr[e.charCodeAt(c++)-43],s=Vr[e.charCodeAt(c++)-43],a=Vr[e.charCodeAt(c++)-43],n[u++]=i<<2|o>>4,s!==64&&(n[u++]=(o&15)<<4|s>>2,a!==64&&(n[u++]=(s&3)<<6|a));return t?u-r:n.subarray(0,u)};b.binary.base58.encode=function(e,t){return b.binary.baseN.encode(e,gd,t)};b.binary.base58.decode=function(e,t){return b.binary.baseN.decode(e,gd,t)};b.text={utf8:{},utf16:{}};b.text.utf8.encode=function(e,t,r){e=b.encodeUtf8(e);var n=t;n||(n=new Uint8Array(e.length)),r=r||0;for(var i=r,o=0;o<e.length;++o)n[i++]=e.charCodeAt(o);return t?i-r:n};b.text.utf8.decode=function(e){return b.decodeUtf8(String.fromCharCode.apply(null,e))};b.text.utf16.encode=function(e,t,r){var n=t;n||(n=new Uint8Array(e.length*2));var i=new Uint16Array(n.buffer);r=r||0;for(var o=r,s=r,a=0;a<e.length;++a)i[s++]=e.charCodeAt(a),o+=2;return t?o-r:n};b.text.utf16.decode=function(e){return String.fromCharCode.apply(null,new Uint16Array(e.buffer))};b.deflate=function(e,t,r){if(t=b.decode64(e.deflate(b.encode64(t)).rval),r){var n=2,i=t.charCodeAt(1);i&32&&(n=6),t=t.substring(n,t.length-4)}return t};b.inflate=function(e,t,r){var n=e.inflate(b.encode64(t)).rval;return n===null?null:b.decode64(n)};var b0=function(e,t,r){if(!e)throw new Error("WebStorage not available.");var n;if(r===null?n=e.removeItem(t):(r=b.encode64(JSON.stringify(r)),n=e.setItem(t,r)),typeof n<"u"&&n.rval!==!0){var i=new Error(n.error.message);throw i.id=n.error.id,i.name=n.error.name,i}},w0=function(e,t){if(!e)throw new Error("WebStorage not available.");var r=e.getItem(t);if(e.init)if(r.rval===null){if(r.error){var n=new Error(r.error.message);throw n.id=r.error.id,n.name=r.error.name,n}r=null}else r=r.rval;return r!==null&&(r=JSON.parse(b.decode64(r))),r},Rb=function(e,t,r,n){var i=w0(e,t);i===null&&(i={}),i[r]=n,b0(e,t,i)},Lb=function(e,t,r){var n=w0(e,t);return n!==null&&(n=r in n?n[r]:null),n},Nb=function(e,t,r){var n=w0(e,t);if(n!==null&&r in n){delete n[r];var i=!0;for(var o in n){i=!1;break}i&&(n=null),b0(e,t,n)}},Pb=function(e,t){b0(e,t,null)},Ss=function(e,t,r){var n=null;typeof r>"u"&&(r=["web","flash"]);var i,o=!1,s=null;for(var a in r){i=r[a];try{if(i==="flash"||i==="both"){if(t[0]===null)throw new Error("Flash local storage not available.");n=e.apply(this,t),o=i==="flash"}(i==="web"||i==="both")&&(t[0]=localStorage,n=e.apply(this,t),o=!0)}catch(c){s=c}if(o)break}if(!o)throw s;return n};b.setItem=function(e,t,r,n,i){Ss(Rb,arguments,i)};b.getItem=function(e,t,r,n){return Ss(Lb,arguments,n)};b.removeItem=function(e,t,r,n){Ss(Nb,arguments,n)};b.clearItems=function(e,t,r){Ss(Pb,arguments,r)};b.isEmpty=function(e){for(var t in e)if(e.hasOwnProperty(t))return!1;return!0};b.format=function(e){for(var t=/%./g,r,n,i=0,o=[],s=0;r=t.exec(e);){n=e.substring(s,t.lastIndex-2),n.length>0&&o.push(n),s=t.lastIndex;var a=r[0][1];switch(a){case"s":case"o":i<arguments.length?o.push(arguments[i+++1]):o.push("<?>");break;case"%":o.push("%");break;default:o.push("<%"+a+"?>")}}return o.push(e.substring(s)),o.join("")};b.formatNumber=function(e,t,r,n){var i=e,o=isNaN(t=Math.abs(t))?2:t,s=r===void 0?",":r,a=n===void 0?".":n,c=i<0?"-":"",u=parseInt(i=Math.abs(+i||0).toFixed(o),10)+"",f=u.length>3?u.length%3:0;return c+(f?u.substr(0,f)+a:"")+u.substr(f).replace(/(\d{3})(?=\d)/g,"$1"+a)+(o?s+Math.abs(i-u).toFixed(o).slice(2):"")};b.formatSize=function(e){return e>=1073741824?e=b.formatNumber(e/1073741824,2,".","")+" GiB":e>=1048576?e=b.formatNumber(e/1048576,2,".","")+" MiB":e>=1024?e=b.formatNumber(e/1024,0)+" KiB":e=b.formatNumber(e,0)+" bytes",e};b.bytesFromIP=function(e){return e.indexOf(".")!==-1?b.bytesFromIPv4(e):e.indexOf(":")!==-1?b.bytesFromIPv6(e):null};b.bytesFromIPv4=function(e){if(e=e.split("."),e.length!==4)return null;for(var t=b.createBuffer(),r=0;r<e.length;++r){var n=parseInt(e[r],10);if(isNaN(n))return null;t.putByte(n)}return t.getBytes()};b.bytesFromIPv6=function(e){var t=0;e=e.split(":").filter(function(s){return s.length===0&&++t,!0});for(var r=(8-e.length+t)*2,n=b.createBuffer(),i=0;i<8;++i){if(!e[i]||e[i].length===0){n.fillWithByte(0,r),r=0;continue}var o=b.hexToBytes(e[i]);o.length<2&&n.putByte(0),n.putBytes(o)}return n.getBytes()};b.bytesToIP=function(e){return e.length===4?b.bytesToIPv4(e):e.length===16?b.bytesToIPv6(e):null};b.bytesToIPv4=function(e){if(e.length!==4)return null;for(var t=[],r=0;r<e.length;++r)t.push(e.charCodeAt(r));return t.join(".")};b.bytesToIPv6=function(e){if(e.length!==16)return null;for(var t=[],r=[],n=0,i=0;i<e.length;i+=2){for(var o=b.bytesToHex(e[i]+e[i+1]);o[0]==="0"&&o!=="0";)o=o.substr(1);if(o==="0"){var s=r[r.length-1],a=t.length;!s||a!==s.end+1?r.push({start:a,end:a}):(s.end=a,s.end-s.start>r[n].end-r[n].start&&(n=r.length-1))}t.push(o)}if(r.length>0){var c=r[n];c.end-c.start>0&&(t.splice(c.start,c.end-c.start+1,""),c.start===0&&t.unshift(""),c.end===7&&t.push(""))}return t.join(":")};b.estimateCores=function(e,t){if(typeof e=="function"&&(t=e,e={}),e=e||{},"cores"in b&&!e.update)return t(null,b.cores);if(typeof navigator<"u"&&"hardwareConcurrency"in navigator&&navigator.hardwareConcurrency>0)return b.cores=navigator.hardwareConcurrency,t(null,b.cores);if(typeof Worker>"u")return b.cores=1,t(null,b.cores);if(typeof Blob>"u")return b.cores=2,t(null,b.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 b.cores=Math.max(1,u),URL.revokeObjectURL(r),t(null,b.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=Y((EB,xd)=>{var zi=we();zi.pki=zi.pki||{};var v0=xd.exports=zi.pki.oids=zi.oids=zi.oids||{};function P(e,t){v0[e]=t,v0[t]=e}function me(e,t){v0[e]=t}P("1.2.840.113549.1.1.1","rsaEncryption");P("1.2.840.113549.1.1.4","md5WithRSAEncryption");P("1.2.840.113549.1.1.5","sha1WithRSAEncryption");P("1.2.840.113549.1.1.7","RSAES-OAEP");P("1.2.840.113549.1.1.8","mgf1");P("1.2.840.113549.1.1.9","pSpecified");P("1.2.840.113549.1.1.10","RSASSA-PSS");P("1.2.840.113549.1.1.11","sha256WithRSAEncryption");P("1.2.840.113549.1.1.12","sha384WithRSAEncryption");P("1.2.840.113549.1.1.13","sha512WithRSAEncryption");P("1.3.101.112","EdDSA25519");P("1.2.840.10040.4.3","dsa-with-sha1");P("1.3.14.3.2.7","desCBC");P("1.3.14.3.2.26","sha1");P("1.3.14.3.2.29","sha1WithRSASignature");P("2.16.840.1.101.3.4.2.1","sha256");P("2.16.840.1.101.3.4.2.2","sha384");P("2.16.840.1.101.3.4.2.3","sha512");P("2.16.840.1.101.3.4.2.4","sha224");P("2.16.840.1.101.3.4.2.5","sha512-224");P("2.16.840.1.101.3.4.2.6","sha512-256");P("1.2.840.113549.2.2","md2");P("1.2.840.113549.2.5","md5");P("1.2.840.113549.1.7.1","data");P("1.2.840.113549.1.7.2","signedData");P("1.2.840.113549.1.7.3","envelopedData");P("1.2.840.113549.1.7.4","signedAndEnvelopedData");P("1.2.840.113549.1.7.5","digestedData");P("1.2.840.113549.1.7.6","encryptedData");P("1.2.840.113549.1.9.1","emailAddress");P("1.2.840.113549.1.9.2","unstructuredName");P("1.2.840.113549.1.9.3","contentType");P("1.2.840.113549.1.9.4","messageDigest");P("1.2.840.113549.1.9.5","signingTime");P("1.2.840.113549.1.9.6","counterSignature");P("1.2.840.113549.1.9.7","challengePassword");P("1.2.840.113549.1.9.8","unstructuredAddress");P("1.2.840.113549.1.9.14","extensionRequest");P("1.2.840.113549.1.9.20","friendlyName");P("1.2.840.113549.1.9.21","localKeyId");P("1.2.840.113549.1.9.22.1","x509Certificate");P("1.2.840.113549.1.12.10.1.1","keyBag");P("1.2.840.113549.1.12.10.1.2","pkcs8ShroudedKeyBag");P("1.2.840.113549.1.12.10.1.3","certBag");P("1.2.840.113549.1.12.10.1.4","crlBag");P("1.2.840.113549.1.12.10.1.5","secretBag");P("1.2.840.113549.1.12.10.1.6","safeContentsBag");P("1.2.840.113549.1.5.13","pkcs5PBES2");P("1.2.840.113549.1.5.12","pkcs5PBKDF2");P("1.2.840.113549.1.12.1.1","pbeWithSHAAnd128BitRC4");P("1.2.840.113549.1.12.1.2","pbeWithSHAAnd40BitRC4");P("1.2.840.113549.1.12.1.3","pbeWithSHAAnd3-KeyTripleDES-CBC");P("1.2.840.113549.1.12.1.4","pbeWithSHAAnd2-KeyTripleDES-CBC");P("1.2.840.113549.1.12.1.5","pbeWithSHAAnd128BitRC2-CBC");P("1.2.840.113549.1.12.1.6","pbewithSHAAnd40BitRC2-CBC");P("1.2.840.113549.2.7","hmacWithSHA1");P("1.2.840.113549.2.8","hmacWithSHA224");P("1.2.840.113549.2.9","hmacWithSHA256");P("1.2.840.113549.2.10","hmacWithSHA384");P("1.2.840.113549.2.11","hmacWithSHA512");P("1.2.840.113549.3.7","des-EDE3-CBC");P("2.16.840.1.101.3.4.1.2","aes128-CBC");P("2.16.840.1.101.3.4.1.22","aes192-CBC");P("2.16.840.1.101.3.4.1.42","aes256-CBC");P("2.5.4.3","commonName");P("2.5.4.4","surname");P("2.5.4.5","serialNumber");P("2.5.4.6","countryName");P("2.5.4.7","localityName");P("2.5.4.8","stateOrProvinceName");P("2.5.4.9","streetAddress");P("2.5.4.10","organizationName");P("2.5.4.11","organizationalUnitName");P("2.5.4.12","title");P("2.5.4.13","description");P("2.5.4.15","businessCategory");P("2.5.4.17","postalCode");P("2.5.4.42","givenName");P("1.3.6.1.4.1.311.60.2.1.2","jurisdictionOfIncorporationStateOrProvinceName");P("1.3.6.1.4.1.311.60.2.1.3","jurisdictionOfIncorporationCountryName");P("2.16.840.1.113730.1.1","nsCertType");P("2.16.840.1.113730.1.13","nsComment");me("2.5.29.1","authorityKeyIdentifier");me("2.5.29.2","keyAttributes");me("2.5.29.3","certificatePolicies");me("2.5.29.4","keyUsageRestriction");me("2.5.29.5","policyMapping");me("2.5.29.6","subtreesConstraint");me("2.5.29.7","subjectAltName");me("2.5.29.8","issuerAltName");me("2.5.29.9","subjectDirectoryAttributes");me("2.5.29.10","basicConstraints");me("2.5.29.11","nameConstraints");me("2.5.29.12","policyConstraints");me("2.5.29.13","basicConstraints");P("2.5.29.14","subjectKeyIdentifier");P("2.5.29.15","keyUsage");me("2.5.29.16","privateKeyUsagePeriod");P("2.5.29.17","subjectAltName");P("2.5.29.18","issuerAltName");P("2.5.29.19","basicConstraints");me("2.5.29.20","cRLNumber");me("2.5.29.21","cRLReason");me("2.5.29.22","expirationDate");me("2.5.29.23","instructionCode");me("2.5.29.24","invalidityDate");me("2.5.29.25","cRLDistributionPoints");me("2.5.29.26","issuingDistributionPoint");me("2.5.29.27","deltaCRLIndicator");me("2.5.29.28","issuingDistributionPoint");me("2.5.29.29","certificateIssuer");me("2.5.29.30","nameConstraints");P("2.5.29.31","cRLDistributionPoints");P("2.5.29.32","certificatePolicies");me("2.5.29.33","policyMappings");me("2.5.29.34","policyConstraints");P("2.5.29.35","authorityKeyIdentifier");me("2.5.29.36","policyConstraints");P("2.5.29.37","extKeyUsage");me("2.5.29.46","freshestCRL");me("2.5.29.54","inhibitAnyPolicy");P("1.3.6.1.4.1.11129.2.4.2","timestampList");P("1.3.6.1.5.5.7.1.1","authorityInfoAccess");P("1.3.6.1.5.5.7.3.1","serverAuth");P("1.3.6.1.5.5.7.3.2","clientAuth");P("1.3.6.1.5.5.7.3.3","codeSigning");P("1.3.6.1.5.5.7.3.4","emailProtection");P("1.3.6.1.5.5.7.3.8","timeStamping")});var Wi=Y((SB,wd)=>{var Ae=we();Ve();Cs();var V=wd.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(e,t,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:e,type:t,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(e,t){var r;if(Ae.util.isArray(e)){r=[];for(var n=0;n<e.length;++n)r.push(V.copy(e[n],t));return r}return typeof e=="string"?e:(r={tagClass:e.tagClass,type:e.type,constructed:e.constructed,composed:e.composed,value:V.copy(e.value,t)},t&&!t.excludeBitStringContents&&(r.bitStringContents=e.bitStringContents),r)};V.equals=function(e,t,r){if(Ae.util.isArray(e)){if(!Ae.util.isArray(t)||e.length!==t.length)return!1;for(var n=0;n<e.length;++n)if(!V.equals(e[n],t[n]))return!1;return!0}if(typeof e!=typeof t)return!1;if(typeof e=="string")return e===t;var i=e.tagClass===t.tagClass&&e.type===t.type&&e.constructed===t.constructed&&e.composed===t.composed&&V.equals(e.value,t.value);return r&&r.includeBitStringContents&&(i=i&&e.bitStringContents===t.bitStringContents),i};V.getBerValueLength=function(e){var t=e.getByte();if(t!==128){var r,n=t&128;return n?r=e.getInt((t&127)<<3):r=t,r}};function Gi(e,t,r){if(r>t){var n=new Error("Too few bytes to parse DER.");throw n.available=e.length(),n.remaining=t,n.requested=r,n}}var Ub=function(e,t){var r=e.getByte();if(t--,r!==128){var n,i=r&128;if(!i)n=r;else{var o=r&127;Gi(e,t,o),n=e.getInt(o<<3)}if(n<0)throw new Error("Negative length: "+n);return n}};V.fromDer=function(e,t){t===void 0&&(t={strict:!0,parseAllBytes:!0,decodeBitStrings:!0}),typeof t=="boolean"&&(t={strict:t,parseAllBytes:!0,decodeBitStrings:!0}),"strict"in t||(t.strict=!0),"parseAllBytes"in t||(t.parseAllBytes=!0),"decodeBitStrings"in t||(t.decodeBitStrings=!0),typeof e=="string"&&(e=Ae.util.createBuffer(e));var r=e.length(),n=As(e,e.length(),0,t);if(t.parseAllBytes&&e.length()!==0){var i=new Error("Unparsed DER bytes remain after ASN.1 parsing.");throw i.byteCount=r,i.remaining=e.length(),i}return n};function As(e,t,r,n){var i;Gi(e,t,2);var o=e.getByte();t--;var s=o&192,a=o&31;i=e.length();var c=Ub(e,t);if(t-=i-e.length(),c!==void 0&&c>t){if(n.strict){var u=new Error("Too few bytes to read ASN.1 value.");throw u.available=e.length(),u.remaining=t,u.requested=c,u}c=t}var f,l,h=(o&32)===32;if(h)if(f=[],c===void 0)for(;;){if(Gi(e,t,2),e.bytes(2)===String.fromCharCode(0,0)){e.getBytes(2),t-=2;break}i=e.length(),f.push(As(e,t,r+1,n)),t-=i-e.length()}else for(;c>0;)i=e.length(),f.push(As(e,c,r+1,n)),t-=i-e.length(),c-=i-e.length();if(f===void 0&&s===V.Class.UNIVERSAL&&a===V.Type.BITSTRING&&(l=e.bytes(c)),f===void 0&&n.decodeBitStrings&&s===V.Class.UNIVERSAL&&a===V.Type.BITSTRING&&c>1){var y=e.read,d=t,p=0;if(a===V.Type.BITSTRING&&(Gi(e,t,1),p=e.getByte(),t--),p===0)try{i=e.length();var g={strict:!0,decodeBitStrings:!0},m=As(e,t,r+1,g),v=i-e.length();t-=v,a==V.Type.BITSTRING&&v++;var x=m.tagClass;v===c&&(x===V.Class.UNIVERSAL||x===V.Class.CONTEXT_SPECIFIC)&&(f=[m])}catch{}f===void 0&&(e.read=y,t=d)}if(f===void 0){if(c===void 0){if(n.strict)throw new Error("Non-constructed ASN.1 object of indefinite length.");c=t}if(a===V.Type.BMPSTRING)for(f="";c>0;c-=2)Gi(e,t,2),f+=String.fromCharCode(e.getInt16()),t-=2;else f=e.getBytes(c),t-=c}var A=l===void 0?null:{bitStringContents:l};return V.create(s,a,h,f,A)}V.toDer=function(e){var t=Ae.util.createBuffer(),r=e.tagClass|e.type,n=Ae.util.createBuffer(),i=!1;if("bitStringContents"in e&&(i=!0,e.original&&(i=V.equals(e,e.original))),i)n.putBytes(e.bitStringContents);else if(e.composed){e.constructed?r|=32:n.putByte(0);for(var o=0;o<e.value.length;++o)e.value[o]!==void 0&&n.putBuffer(V.toDer(e.value[o]))}else if(e.type===V.Type.BMPSTRING)for(var o=0;o<e.value.length;++o)n.putInt16(e.value.charCodeAt(o));else e.type===V.Type.INTEGER&&e.value.length>1&&(e.value.charCodeAt(0)===0&&!(e.value.charCodeAt(1)&128)||e.value.charCodeAt(0)===255&&(e.value.charCodeAt(1)&128)===128)?n.putBytes(e.value.substr(1)):n.putBytes(e.value);if(t.putByte(r),n.length()<=127)t.putByte(n.length()&127);else{var s=n.length(),a="";do a+=String.fromCharCode(s&255),s=s>>>8;while(s>0);t.putByte(a.length|128);for(var o=a.length-1;o>=0;--o)t.putByte(a.charCodeAt(o))}return t.putBuffer(n),t};V.oidToDer=function(e){var t=e.split("."),r=Ae.util.createBuffer();r.putByte(40*parseInt(t[0],10)+parseInt(t[1],10));for(var n,i,o,s,a=2;a<t.length;++a){n=!0,i=[],o=parseInt(t[a],10);do s=o&127,o=o>>>7,n||(s|=128),i.push(s),n=!1;while(o>0);for(var c=i.length-1;c>=0;--c)r.putByte(i[c])}return r};V.derToOid=function(e){var t;typeof e=="string"&&(e=Ae.util.createBuffer(e));var r=e.getByte();t=Math.floor(r/40)+"."+r%40;for(var n=0;e.length()>0;)r=e.getByte(),n=n<<7,r&128?n+=r&127:(t+="."+(n+r),n=0);return t};V.utcTimeToDate=function(e){var t=new Date,r=parseInt(e.substr(0,2),10);r=r>=50?1900+r:2e3+r;var n=parseInt(e.substr(2,2),10)-1,i=parseInt(e.substr(4,2),10),o=parseInt(e.substr(6,2),10),s=parseInt(e.substr(8,2),10),a=0;if(e.length>11){var c=e.charAt(10),u=10;c!=="+"&&c!=="-"&&(a=parseInt(e.substr(10,2),10),u+=2)}if(t.setUTCFullYear(r,n,i),t.setUTCHours(o,s,a,0),u&&(c=e.charAt(u),c==="+"||c==="-")){var f=parseInt(e.substr(u+1,2),10),l=parseInt(e.substr(u+4,2),10),h=f*60+l;h*=6e4,c==="+"?t.setTime(+t-h):t.setTime(+t+h)}return t};V.generalizedTimeToDate=function(e){var t=new Date,r=parseInt(e.substr(0,4),10),n=parseInt(e.substr(4,2),10)-1,i=parseInt(e.substr(6,2),10),o=parseInt(e.substr(8,2),10),s=parseInt(e.substr(10,2),10),a=parseInt(e.substr(12,2),10),c=0,u=0,f=!1;e.charAt(e.length-1)==="Z"&&(f=!0);var l=e.length-5,h=e.charAt(l);if(h==="+"||h==="-"){var y=parseInt(e.substr(l+1,2),10),d=parseInt(e.substr(l+4,2),10);u=y*60+d,u*=6e4,h==="+"&&(u*=-1),f=!0}return e.charAt(14)==="."&&(c=parseFloat(e.substr(14),10)*1e3),f?(t.setUTCFullYear(r,n,i),t.setUTCHours(o,s,a,c),t.setTime(+t+u)):(t.setFullYear(r,n,i),t.setHours(o,s,a,c)),t};V.dateToUtcTime=function(e){if(typeof e=="string")return e;var t="",r=[];r.push((""+e.getUTCFullYear()).substr(2)),r.push(""+(e.getUTCMonth()+1)),r.push(""+e.getUTCDate()),r.push(""+e.getUTCHours()),r.push(""+e.getUTCMinutes()),r.push(""+e.getUTCSeconds());for(var n=0;n<r.length;++n)r[n].length<2&&(t+="0"),t+=r[n];return t+="Z",t};V.dateToGeneralizedTime=function(e){if(typeof e=="string")return e;var t="",r=[];r.push(""+e.getUTCFullYear()),r.push(""+(e.getUTCMonth()+1)),r.push(""+e.getUTCDate()),r.push(""+e.getUTCHours()),r.push(""+e.getUTCMinutes()),r.push(""+e.getUTCSeconds());for(var n=0;n<r.length;++n)r[n].length<2&&(t+="0"),t+=r[n];return t+="Z",t};V.integerToDer=function(e){var t=Ae.util.createBuffer();if(e>=-128&&e<128)return t.putSignedInt(e,8);if(e>=-32768&&e<32768)return t.putSignedInt(e,16);if(e>=-8388608&&e<8388608)return t.putSignedInt(e,24);if(e>=-2147483648&&e<2147483648)return t.putSignedInt(e,32);var r=new Error("Integer too large; max is 32-bits.");throw r.integer=e,r};V.derToInteger=function(e){typeof e=="string"&&(e=Ae.util.createBuffer(e));var t=e.length()*8;if(t>32)throw new Error("Integer too large; max is 32-bits.");return e.getSignedInt(t)};V.validate=function(e,t,r,n){var i=!1;if((e.tagClass===t.tagClass||typeof t.tagClass>"u")&&(e.type===t.type||typeof t.type>"u"))if(e.constructed===t.constructed||typeof t.constructed>"u"){if(i=!0,t.value&&Ae.util.isArray(t.value))for(var o=0,s=0;i&&s<t.value.length;++s)i=t.value[s].optional||!1,e.value[o]&&(i=V.validate(e.value[o],t.value[s],r,n),i?++o:t.value[s].optional&&(i=!0)),!i&&n&&n.push("["+t.name+'] Tag class "'+t.tagClass+'", type "'+t.type+'" expected value length "'+t.value.length+'", got "'+e.value.length+'"');if(i&&r&&(t.capture&&(r[t.capture]=e.value),t.captureAsn1&&(r[t.captureAsn1]=e),t.captureBitStringContents&&"bitStringContents"in e&&(r[t.captureBitStringContents]=e.bitStringContents),t.captureBitStringValue&&"bitStringContents"in e)){var a;if(e.bitStringContents.length<2)r[t.captureBitStringValue]="";else{var c=e.bitStringContents.charCodeAt(0);if(c!==0)throw new Error("captureBitStringValue only supported for zero unused bits");r[t.captureBitStringValue]=e.bitStringContents.slice(1)}}}else n&&n.push("["+t.name+'] Expected constructed "'+t.constructed+'", got "'+e.constructed+'"');else n&&(e.tagClass!==t.tagClass&&n.push("["+t.name+'] Expected tag class "'+t.tagClass+'", got "'+e.tagClass+'"'),e.type!==t.type&&n.push("["+t.name+'] Expected type "'+t.type+'", got "'+e.type+'"'));return i};var bd=/[^\\u0000-\\u00ff]/;V.prettyPrint=function(e,t,r){var n="";t=t||0,r=r||2,t>0&&(n+=`
6
- `);for(var i="",o=0;o<t*r;++o)i+=" ";switch(n+=i+"Tag: ",e.tagClass){case V.Class.UNIVERSAL:n+="Universal:";break;case V.Class.APPLICATION:n+="Application:";break;case V.Class.CONTEXT_SPECIFIC:n+="Context-Specific:";break;case V.Class.PRIVATE:n+="Private:";break}if(e.tagClass===V.Class.UNIVERSAL)switch(n+=e.type,e.type){case V.Type.NONE:n+=" (None)";break;case V.Type.BOOLEAN:n+=" (Boolean)";break;case V.Type.INTEGER:n+=" (Integer)";break;case V.Type.BITSTRING:n+=" (Bit string)";break;case V.Type.OCTETSTRING:n+=" (Octet string)";break;case V.Type.NULL:n+=" (Null)";break;case V.Type.OID:n+=" (Object Identifier)";break;case V.Type.ODESC:n+=" (Object Descriptor)";break;case V.Type.EXTERNAL:n+=" (External or Instance of)";break;case V.Type.REAL:n+=" (Real)";break;case V.Type.ENUMERATED:n+=" (Enumerated)";break;case V.Type.EMBEDDED:n+=" (Embedded PDV)";break;case V.Type.UTF8:n+=" (UTF8)";break;case V.Type.ROID:n+=" (Relative Object Identifier)";break;case V.Type.SEQUENCE:n+=" (Sequence)";break;case V.Type.SET:n+=" (Set)";break;case V.Type.PRINTABLESTRING:n+=" (Printable String)";break;case V.Type.IA5String:n+=" (IA5String (ASCII))";break;case V.Type.UTCTIME:n+=" (UTC time)";break;case V.Type.GENERALIZEDTIME:n+=" (Generalized time)";break;case V.Type.BMPSTRING:n+=" (BMP String)";break}else n+=e.type;if(n+=`
7
- `,n+=i+"Constructed: "+e.constructed+`
8
- `,e.composed){for(var s=0,a="",o=0;o<e.value.length;++o)e.value[o]!==void 0&&(s+=1,a+=V.prettyPrint(e.value[o],t+1,r),o+1<e.value.length&&(a+=","));n+=i+"Sub values: "+s+a}else{if(n+=i+"Value: ",e.type===V.Type.OID){var c=V.derToOid(e.value);n+=c,Ae.pki&&Ae.pki.oids&&c in Ae.pki.oids&&(n+=" ("+Ae.pki.oids[c]+") ")}if(e.type===V.Type.INTEGER)try{n+=V.derToInteger(e.value)}catch{n+="0x"+Ae.util.bytesToHex(e.value)}else if(e.type===V.Type.BITSTRING){if(e.value.length>1?n+="0x"+Ae.util.bytesToHex(e.value.slice(1)):n+="(none)",e.value.length>0){var u=e.value.charCodeAt(0);u==1?n+=" (1 unused bit shown)":u>1&&(n+=" ("+u+" unused bits shown)")}}else if(e.type===V.Type.OCTETSTRING)bd.test(e.value)||(n+="("+e.value+") "),n+="0x"+Ae.util.bytesToHex(e.value);else if(e.type===V.Type.UTF8)try{n+=Ae.util.decodeUtf8(e.value)}catch(f){if(f.message==="URI malformed")n+="0x"+Ae.util.bytesToHex(e.value)+" (malformed UTF8)";else throw f}else e.type===V.Type.PRINTABLESTRING||e.type===V.Type.IA5String?n+=e.value:bd.test(e.value)?n+="0x"+Ae.util.bytesToHex(e.value):e.value.length===0?n+="[null]":n+=e.value}return n}});var S0=Y((CB,vd)=>{var We=we();Ve();vd.exports=We.cipher=We.cipher||{};We.cipher.algorithms=We.cipher.algorithms||{};We.cipher.createCipher=function(e,t){var r=e;if(typeof r=="string"&&(r=We.cipher.getAlgorithm(r),r&&(r=r())),!r)throw new Error("Unsupported algorithm: "+e);return new We.cipher.BlockCipher({algorithm:r,key:t,decrypt:!1})};We.cipher.createDecipher=function(e,t){var r=e;if(typeof r=="string"&&(r=We.cipher.getAlgorithm(r),r&&(r=r())),!r)throw new Error("Unsupported algorithm: "+e);return new We.cipher.BlockCipher({algorithm:r,key:t,decrypt:!0})};We.cipher.registerAlgorithm=function(e,t){e=e.toUpperCase(),We.cipher.algorithms[e]=t};We.cipher.getAlgorithm=function(e){return e=e.toUpperCase(),e in We.cipher.algorithms?We.cipher.algorithms[e]:null};var E0=We.cipher.BlockCipher=function(e){this.algorithm=e.algorithm,this.mode=this.algorithm.mode,this.blockSize=this.mode.blockSize,this._finish=!1,this._input=null,this.output=null,this._op=e.decrypt?this.mode.decrypt:this.mode.encrypt,this._decrypt=e.decrypt,this.algorithm.initialize(e)};E0.prototype.start=function(e){e=e||{};var t={};for(var r in e)t[r]=e[r];t.decrypt=this._decrypt,this._finish=!1,this._input=We.util.createBuffer(),this.output=e.output||We.util.createBuffer(),this.mode.start(t)};E0.prototype.update=function(e){for(e&&this._input.putBuffer(e);!this._op.call(this.mode,this._input,this.output,this._finish)&&!this._finish;);this._input.compact()};E0.prototype.finish=function(e){e&&(this.mode.name==="ECB"||this.mode.name==="CBC")&&(this.mode.pad=function(r){return e(this.blockSize,r,!1)},this.mode.unpad=function(r){return e(this.blockSize,r,!0)});var t={};return t.decrypt=this._decrypt,t.overflow=this._input.length()%this.blockSize,!(!this._decrypt&&this.mode.pad&&!this.mode.pad(this._input,t)||(this._finish=!0,this.update(),this._decrypt&&this.mode.unpad&&!this.mode.unpad(this.output,t))||this.mode.afterFinish&&!this.mode.afterFinish(this.output,t))}});var A0=Y((AB,Ed)=>{var $e=we();Ve();$e.cipher=$e.cipher||{};var ae=Ed.exports=$e.cipher.modes=$e.cipher.modes||{};ae.ecb=function(e){e=e||{},this.name="ECB",this.cipher=e.cipher,this.blockSize=e.blockSize||16,this._ints=this.blockSize/4,this._inBlock=new Array(this._ints),this._outBlock=new Array(this._ints)};ae.ecb.prototype.start=function(e){};ae.ecb.prototype.encrypt=function(e,t,r){if(e.length()<this.blockSize&&!(r&&e.length()>0))return!0;for(var n=0;n<this._ints;++n)this._inBlock[n]=e.getInt32();this.cipher.encrypt(this._inBlock,this._outBlock);for(var n=0;n<this._ints;++n)t.putInt32(this._outBlock[n])};ae.ecb.prototype.decrypt=function(e,t,r){if(e.length()<this.blockSize&&!(r&&e.length()>0))return!0;for(var n=0;n<this._ints;++n)this._inBlock[n]=e.getInt32();this.cipher.decrypt(this._inBlock,this._outBlock);for(var n=0;n<this._ints;++n)t.putInt32(this._outBlock[n])};ae.ecb.prototype.pad=function(e,t){var r=e.length()===this.blockSize?this.blockSize:this.blockSize-e.length();return e.fillWithByte(r,r),!0};ae.ecb.prototype.unpad=function(e,t){if(t.overflow>0)return!1;var r=e.length(),n=e.at(r-1);return n>this.blockSize<<2?!1:(e.truncate(n),!0)};ae.cbc=function(e){e=e||{},this.name="CBC",this.cipher=e.cipher,this.blockSize=e.blockSize||16,this._ints=this.blockSize/4,this._inBlock=new Array(this._ints),this._outBlock=new Array(this._ints)};ae.cbc.prototype.start=function(e){if(e.iv===null){if(!this._prev)throw new Error("Invalid IV parameter.");this._iv=this._prev.slice(0)}else if("iv"in e)this._iv=Ds(e.iv,this.blockSize),this._prev=this._iv.slice(0);else throw new Error("Invalid IV parameter.")};ae.cbc.prototype.encrypt=function(e,t,r){if(e.length()<this.blockSize&&!(r&&e.length()>0))return!0;for(var n=0;n<this._ints;++n)this._inBlock[n]=this._prev[n]^e.getInt32();this.cipher.encrypt(this._inBlock,this._outBlock);for(var n=0;n<this._ints;++n)t.putInt32(this._outBlock[n]);this._prev=this._outBlock};ae.cbc.prototype.decrypt=function(e,t,r){if(e.length()<this.blockSize&&!(r&&e.length()>0))return!0;for(var n=0;n<this._ints;++n)this._inBlock[n]=e.getInt32();this.cipher.decrypt(this._inBlock,this._outBlock);for(var n=0;n<this._ints;++n)t.putInt32(this._prev[n]^this._outBlock[n]);this._prev=this._inBlock.slice(0)};ae.cbc.prototype.pad=function(e,t){var r=e.length()===this.blockSize?this.blockSize:this.blockSize-e.length();return e.fillWithByte(r,r),!0};ae.cbc.prototype.unpad=function(e,t){if(t.overflow>0)return!1;var r=e.length(),n=e.at(r-1);return n>this.blockSize<<2?!1:(e.truncate(n),!0)};ae.cfb=function(e){e=e||{},this.name="CFB",this.cipher=e.cipher,this.blockSize=e.blockSize||16,this._ints=this.blockSize/4,this._inBlock=null,this._outBlock=new Array(this._ints),this._partialBlock=new Array(this._ints),this._partialOutput=$e.util.createBuffer(),this._partialBytes=0};ae.cfb.prototype.start=function(e){if(!("iv"in e))throw new Error("Invalid IV parameter.");this._iv=Ds(e.iv,this.blockSize),this._inBlock=this._iv.slice(0),this._partialBytes=0};ae.cfb.prototype.encrypt=function(e,t,r){var n=e.length();if(n===0)return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),this._partialBytes===0&&n>=this.blockSize){for(var i=0;i<this._ints;++i)this._inBlock[i]=e.getInt32()^this._outBlock[i],t.putInt32(this._inBlock[i]);return}var o=(this.blockSize-n)%this.blockSize;o>0&&(o=this.blockSize-o),this._partialOutput.clear();for(var i=0;i<this._ints;++i)this._partialBlock[i]=e.getInt32()^this._outBlock[i],this._partialOutput.putInt32(this._partialBlock[i]);if(o>0)e.read-=this.blockSize;else for(var i=0;i<this._ints;++i)this._inBlock[i]=this._partialBlock[i];if(this._partialBytes>0&&this._partialOutput.getBytes(this._partialBytes),o>0&&!r)return t.putBytes(this._partialOutput.getBytes(o-this._partialBytes)),this._partialBytes=o,!0;t.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=0};ae.cfb.prototype.decrypt=function(e,t,r){var n=e.length();if(n===0)return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),this._partialBytes===0&&n>=this.blockSize){for(var i=0;i<this._ints;++i)this._inBlock[i]=e.getInt32(),t.putInt32(this._inBlock[i]^this._outBlock[i]);return}var o=(this.blockSize-n)%this.blockSize;o>0&&(o=this.blockSize-o),this._partialOutput.clear();for(var i=0;i<this._ints;++i)this._partialBlock[i]=e.getInt32(),this._partialOutput.putInt32(this._partialBlock[i]^this._outBlock[i]);if(o>0)e.read-=this.blockSize;else for(var i=0;i<this._ints;++i)this._inBlock[i]=this._partialBlock[i];if(this._partialBytes>0&&this._partialOutput.getBytes(this._partialBytes),o>0&&!r)return t.putBytes(this._partialOutput.getBytes(o-this._partialBytes)),this._partialBytes=o,!0;t.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=0};ae.ofb=function(e){e=e||{},this.name="OFB",this.cipher=e.cipher,this.blockSize=e.blockSize||16,this._ints=this.blockSize/4,this._inBlock=null,this._outBlock=new Array(this._ints),this._partialOutput=$e.util.createBuffer(),this._partialBytes=0};ae.ofb.prototype.start=function(e){if(!("iv"in e))throw new Error("Invalid IV parameter.");this._iv=Ds(e.iv,this.blockSize),this._inBlock=this._iv.slice(0),this._partialBytes=0};ae.ofb.prototype.encrypt=function(e,t,r){var n=e.length();if(e.length()===0)return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),this._partialBytes===0&&n>=this.blockSize){for(var i=0;i<this._ints;++i)t.putInt32(e.getInt32()^this._outBlock[i]),this._inBlock[i]=this._outBlock[i];return}var o=(this.blockSize-n)%this.blockSize;o>0&&(o=this.blockSize-o),this._partialOutput.clear();for(var i=0;i<this._ints;++i)this._partialOutput.putInt32(e.getInt32()^this._outBlock[i]);if(o>0)e.read-=this.blockSize;else for(var i=0;i<this._ints;++i)this._inBlock[i]=this._outBlock[i];if(this._partialBytes>0&&this._partialOutput.getBytes(this._partialBytes),o>0&&!r)return t.putBytes(this._partialOutput.getBytes(o-this._partialBytes)),this._partialBytes=o,!0;t.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=0};ae.ofb.prototype.decrypt=ae.ofb.prototype.encrypt;ae.ctr=function(e){e=e||{},this.name="CTR",this.cipher=e.cipher,this.blockSize=e.blockSize||16,this._ints=this.blockSize/4,this._inBlock=null,this._outBlock=new Array(this._ints),this._partialOutput=$e.util.createBuffer(),this._partialBytes=0};ae.ctr.prototype.start=function(e){if(!("iv"in e))throw new Error("Invalid IV parameter.");this._iv=Ds(e.iv,this.blockSize),this._inBlock=this._iv.slice(0),this._partialBytes=0};ae.ctr.prototype.encrypt=function(e,t,r){var n=e.length();if(n===0)return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),this._partialBytes===0&&n>=this.blockSize)for(var i=0;i<this._ints;++i)t.putInt32(e.getInt32()^this._outBlock[i]);else{var o=(this.blockSize-n)%this.blockSize;o>0&&(o=this.blockSize-o),this._partialOutput.clear();for(var i=0;i<this._ints;++i)this._partialOutput.putInt32(e.getInt32()^this._outBlock[i]);if(o>0&&(e.read-=this.blockSize),this._partialBytes>0&&this._partialOutput.getBytes(this._partialBytes),o>0&&!r)return t.putBytes(this._partialOutput.getBytes(o-this._partialBytes)),this._partialBytes=o,!0;t.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=0}Bs(this._inBlock)};ae.ctr.prototype.decrypt=ae.ctr.prototype.encrypt;ae.gcm=function(e){e=e||{},this.name="GCM",this.cipher=e.cipher,this.blockSize=e.blockSize||16,this._ints=this.blockSize/4,this._inBlock=new Array(this._ints),this._outBlock=new Array(this._ints),this._partialOutput=$e.util.createBuffer(),this._partialBytes=0,this._R=3774873600};ae.gcm.prototype.start=function(e){if(!("iv"in e))throw new Error("Invalid IV parameter.");var t=$e.util.createBuffer(e.iv);this._cipherLength=0;var r;if("additionalData"in e?r=$e.util.createBuffer(e.additionalData):r=$e.util.createBuffer(),"tagLength"in e?this._tagLength=e.tagLength:this._tagLength=128,this._tag=null,e.decrypt&&(this._tag=$e.util.createBuffer(e.tag).getBytes(),this._tag.length!==this._tagLength/8))throw new Error("Authentication tag does not match tag length.");this._hashBlock=new Array(this._ints),this.tag=null,this._hashSubkey=new Array(this._ints),this.cipher.encrypt([0,0,0,0],this._hashSubkey),this.componentBits=4,this._m=this.generateHashTable(this._hashSubkey,this.componentBits);var n=t.length();if(n===12)this._j0=[t.getInt32(),t.getInt32(),t.getInt32(),1];else{for(this._j0=[0,0,0,0];t.length()>0;)this._j0=this.ghash(this._hashSubkey,this._j0,[t.getInt32(),t.getInt32(),t.getInt32(),t.getInt32()]);this._j0=this.ghash(this._hashSubkey,this._j0,[0,0].concat(C0(n*8)))}this._inBlock=this._j0.slice(0),Bs(this._inBlock),this._partialBytes=0,r=$e.util.createBuffer(r),this._aDataLength=C0(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(e,t,r){var n=e.length();if(n===0)return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),this._partialBytes===0&&n>=this.blockSize){for(var i=0;i<this._ints;++i)t.putInt32(this._outBlock[i]^=e.getInt32());this._cipherLength+=this.blockSize}else{var o=(this.blockSize-n)%this.blockSize;o>0&&(o=this.blockSize-o),this._partialOutput.clear();for(var i=0;i<this._ints;++i)this._partialOutput.putInt32(e.getInt32()^this._outBlock[i]);if(o<=0||r){if(r){var s=n%this.blockSize;this._cipherLength+=s,this._partialOutput.truncate(this.blockSize-s)}else this._cipherLength+=this.blockSize;for(var i=0;i<this._ints;++i)this._outBlock[i]=this._partialOutput.getInt32();this._partialOutput.read-=this.blockSize}if(this._partialBytes>0&&this._partialOutput.getBytes(this._partialBytes),o>0&&!r)return e.read-=this.blockSize,t.putBytes(this._partialOutput.getBytes(o-this._partialBytes)),this._partialBytes=o,!0;t.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=0}this._s=this.ghash(this._hashSubkey,this._s,this._outBlock),Bs(this._inBlock)};ae.gcm.prototype.decrypt=function(e,t,r){var n=e.length();if(n<this.blockSize&&!(r&&n>0))return!0;this.cipher.encrypt(this._inBlock,this._outBlock),Bs(this._inBlock),this._hashBlock[0]=e.getInt32(),this._hashBlock[1]=e.getInt32(),this._hashBlock[2]=e.getInt32(),this._hashBlock[3]=e.getInt32(),this._s=this.ghash(this._hashSubkey,this._s,this._hashBlock);for(var i=0;i<this._ints;++i)t.putInt32(this._outBlock[i]^this._hashBlock[i]);n<this.blockSize?this._cipherLength+=n%this.blockSize:this._cipherLength+=this.blockSize};ae.gcm.prototype.afterFinish=function(e,t){var r=!0;t.decrypt&&t.overflow&&e.truncate(this.blockSize-t.overflow),this.tag=$e.util.createBuffer();var n=this._aDataLength.concat(C0(this._cipherLength*8));this._s=this.ghash(this._hashSubkey,this._s,n);var i=[];this.cipher.encrypt(this._j0,i);for(var o=0;o<this._ints;++o)this.tag.putInt32(this._s[o]^i[o]);return this.tag.truncate(this.tag.length()%(this._tagLength/8)),t.decrypt&&this.tag.bytes()!==this._tag&&(r=!1),r};ae.gcm.prototype.multiply=function(e,t){for(var r=[0,0,0,0],n=t.slice(0),i=0;i<128;++i){var o=e[i/32|0]&1<<31-i%32;o&&(r[0]^=n[0],r[1]^=n[1],r[2]^=n[2],r[3]^=n[3]),this.pow(n,n)}return r};ae.gcm.prototype.pow=function(e,t){for(var r=e[3]&1,n=3;n>0;--n)t[n]=e[n]>>>1|(e[n-1]&1)<<31;t[0]=e[0]>>>1,r&&(t[0]^=this._R)};ae.gcm.prototype.tableMultiply=function(e){for(var t=[0,0,0,0],r=0;r<32;++r){var n=r/8|0,i=e[n]>>>(7-r%8)*4&15,o=this._m[r][i];t[0]^=o[0],t[1]^=o[1],t[2]^=o[2],t[3]^=o[3]}return t};ae.gcm.prototype.ghash=function(e,t,r){return t[0]^=r[0],t[1]^=r[1],t[2]^=r[2],t[3]^=r[3],this.tableMultiply(t)};ae.gcm.prototype.generateHashTable=function(e,t){for(var r=8/t,n=4*r,i=16*r,o=new Array(i),s=0;s<i;++s){var a=[0,0,0,0],c=s/n|0,u=(n-1-s%n)*t;a[c]=1<<t-1<<u,o[s]=this.generateSubHashTable(this.multiply(a,e),t)}return o};ae.gcm.prototype.generateSubHashTable=function(e,t){var r=1<<t,n=r>>>1,i=new Array(r);i[n]=e.slice(0);for(var o=n>>>1;o>0;)this.pow(i[2*o],i[o]=[]),o>>=1;for(o=2;o<n;){for(var s=1;s<o;++s){var a=i[o],c=i[s];i[o+s]=[a[0]^c[0],a[1]^c[1],a[2]^c[2],a[3]^c[3]]}o*=2}for(i[0]=[0,0,0,0],o=n+1;o<r;++o){var u=i[o^n];i[o]=[e[0]^u[0],e[1]^u[1],e[2]^u[2],e[3]^u[3]]}return i};function Ds(e,t){if(typeof e=="string"&&(e=$e.util.createBuffer(e)),$e.util.isArray(e)&&e.length>4){var r=e;e=$e.util.createBuffer();for(var n=0;n<r.length;++n)e.putByte(r[n])}if(e.length()<t)throw new Error("Invalid IV length; got "+e.length()+" bytes and expected "+t+" bytes.");if(!$e.util.isArray(e)){for(var i=[],o=t/4,n=0;n<o;++n)i.push(e.getInt32());e=i}return e}function Bs(e){e[e.length-1]=e[e.length-1]+1&4294967295}function C0(e){return[e/4294967296|0,e&4294967295]}});var T0=Y((DB,Dd)=>{var Ee=we();S0();A0();Ve();Dd.exports=Ee.aes=Ee.aes||{};Ee.aes.startEncrypting=function(e,t,r,n){var i=Is({key:e,output:r,decrypt:!1,mode:n});return i.start(t),i};Ee.aes.createEncryptionCipher=function(e,t){return Is({key:e,output:null,decrypt:!1,mode:t})};Ee.aes.startDecrypting=function(e,t,r,n){var i=Is({key:e,output:r,decrypt:!0,mode:n});return i.start(t),i};Ee.aes.createDecryptionCipher=function(e,t){return Is({key:e,output:null,decrypt:!0,mode:t})};Ee.aes.Algorithm=function(e,t){I0||Cd();var r=this;r.name=e,r.mode=new t({blockSize:16,cipher:{encrypt:function(n,i){return B0(r._w,n,i,!1)},decrypt:function(n,i){return B0(r._w,n,i,!0)}}}),r._init=!1};Ee.aes.Algorithm.prototype.initialize=function(e){if(!this._init){var t=e.key,r;if(typeof t=="string"&&(t.length===16||t.length===24||t.length===32))t=Ee.util.createBuffer(t);else if(Ee.util.isArray(t)&&(t.length===16||t.length===24||t.length===32)){r=t,t=Ee.util.createBuffer();for(var n=0;n<r.length;++n)t.putByte(r[n])}if(!Ee.util.isArray(t)){r=t,t=[];var i=r.length();if(i===16||i===24||i===32){i=i>>>2;for(var n=0;n<i;++n)t.push(r.getInt32())}}if(!Ee.util.isArray(t)||!(t.length===4||t.length===6||t.length===8))throw new Error("Invalid key parameter.");var o=this.mode.name,s=["CFB","OFB","CTR","GCM"].indexOf(o)!==-1;this._w=Ad(t,e.decrypt&&!s),this._init=!0}};Ee.aes._expandKey=function(e,t){return I0||Cd(),Ad(e,t)};Ee.aes._updateBlock=B0;ii("AES-ECB",Ee.cipher.modes.ecb);ii("AES-CBC",Ee.cipher.modes.cbc);ii("AES-CFB",Ee.cipher.modes.cfb);ii("AES-OFB",Ee.cipher.modes.ofb);ii("AES-CTR",Ee.cipher.modes.ctr);ii("AES-GCM",Ee.cipher.modes.gcm);function ii(e,t){var r=function(){return new Ee.aes.Algorithm(e,t)};Ee.cipher.registerAlgorithm(e,r)}var I0=!1,ni=4,at,D0,Sd,gn,Mt;function Cd(){I0=!0,Sd=[0,1,2,4,8,16,32,64,128,27,54];for(var e=new Array(256),t=0;t<128;++t)e[t]=t<<1,e[t+128]=t+128<<1^283;at=new Array(256),D0=new Array(256),gn=new Array(4),Mt=new Array(4);for(var t=0;t<4;++t)gn[t]=new Array(256),Mt[t]=new Array(256);for(var r=0,n=0,i,o,s,a,c,u,f,t=0;t<256;++t){a=n^n<<1^n<<2^n<<3^n<<4,a=a>>8^a&255^99,at[r]=a,D0[a]=r,c=e[a],i=e[r],o=e[i],s=e[o],u=c<<24^a<<16^a<<8^(a^c),f=(i^o^s)<<24^(r^s)<<16^(r^o^s)<<8^(r^i^s);for(var l=0;l<4;++l)gn[l][r]=u,Mt[l][a]=f,u=u<<24|u>>>8,f=f<<24|f>>>8;r===0?r=n=1:(r=i^e[e[e[i^s]]],n^=e[e[n]])}}function Ad(e,t){for(var r=e.slice(0),n,i=1,o=r.length,s=o+6+1,a=ni*s,c=o;c<a;++c)n=r[c-1],c%o===0?(n=at[n>>>16&255]<<24^at[n>>>8&255]<<16^at[n&255]<<8^at[n>>>24]^Sd[i]<<24,i++):o>6&&c%o===4&&(n=at[n>>>24]<<24^at[n>>>16&255]<<16^at[n>>>8&255]<<8^at[n&255]),r[c]=r[c-o]^n;if(t){var u,f=Mt[0],l=Mt[1],h=Mt[2],y=Mt[3],d=r.slice(0);a=r.length;for(var c=0,p=a-ni;c<a;c+=ni,p-=ni)if(c===0||c===a-ni)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<ni;++g)u=r[p+g],d[c+(3&-g)]=f[at[u>>>24]]^l[at[u>>>16&255]]^h[at[u>>>8&255]]^y[at[u&255]];r=d}return r}function B0(e,t,r,n){var i=e.length/4-1,o,s,a,c,u;n?(o=Mt[0],s=Mt[1],a=Mt[2],c=Mt[3],u=D0):(o=gn[0],s=gn[1],a=gn[2],c=gn[3],u=at);var f,l,h,y,d,p,g;f=t[0]^e[0],l=t[n?3:1]^e[1],h=t[2]^e[2],y=t[n?1:3]^e[3];for(var m=3,v=1;v<i;++v)d=o[f>>>24]^s[l>>>16&255]^a[h>>>8&255]^c[y&255]^e[++m],p=o[l>>>24]^s[h>>>16&255]^a[y>>>8&255]^c[f&255]^e[++m],g=o[h>>>24]^s[y>>>16&255]^a[f>>>8&255]^c[l&255]^e[++m],y=o[y>>>24]^s[f>>>16&255]^a[l>>>8&255]^c[h&255]^e[++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]^e[++m],r[n?3:1]=u[l>>>24]<<24^u[h>>>16&255]<<16^u[y>>>8&255]<<8^u[f&255]^e[++m],r[2]=u[h>>>24]<<24^u[y>>>16&255]<<16^u[f>>>8&255]<<8^u[l&255]^e[++m],r[n?1:3]=u[y>>>24]<<24^u[f>>>16&255]<<16^u[l>>>8&255]<<8^u[h&255]^e[++m]}function Is(e){e=e||{};var t=(e.mode||"CBC").toUpperCase(),r="AES-"+t,n;e.decrypt?n=Ee.cipher.createDecipher(r,e.key):n=Ee.cipher.createCipher(r,e.key);var i=n.start;return n.start=function(o,s){var a=null;s instanceof Ee.util.ByteBuffer&&(a=s,s={}),s=s||{},s.output=a,s.iv=o,i.call(n,s)},n}});var Td=Y((BB,Id)=>{var Te=we();S0();A0();Ve();Id.exports=Te.des=Te.des||{};Te.des.startEncrypting=function(e,t,r,n){var i=Ts({key:e,output:r,decrypt:!1,mode:n||(t===null?"ECB":"CBC")});return i.start(t),i};Te.des.createEncryptionCipher=function(e,t){return Ts({key:e,output:null,decrypt:!1,mode:t})};Te.des.startDecrypting=function(e,t,r,n){var i=Ts({key:e,output:r,decrypt:!0,mode:n||(t===null?"ECB":"CBC")});return i.start(t),i};Te.des.createDecryptionCipher=function(e,t){return Ts({key:e,output:null,decrypt:!0,mode:t})};Te.des.Algorithm=function(e,t){var r=this;r.name=e,r.mode=new t({blockSize:8,cipher:{encrypt:function(n,i){return Bd(r._keys,n,i,!1)},decrypt:function(n,i){return Bd(r._keys,n,i,!0)}}}),r._init=!1};Te.des.Algorithm.prototype.initialize=function(e){if(!this._init){var t=Te.util.createBuffer(e.key);if(this.name.indexOf("3DES")===0&&t.length()!==24)throw new Error("Invalid Triple-DES key size: "+t.length()*8);this._keys=Gb(t),this._init=!0}};Qt("DES-ECB",Te.cipher.modes.ecb);Qt("DES-CBC",Te.cipher.modes.cbc);Qt("DES-CFB",Te.cipher.modes.cfb);Qt("DES-OFB",Te.cipher.modes.ofb);Qt("DES-CTR",Te.cipher.modes.ctr);Qt("3DES-ECB",Te.cipher.modes.ecb);Qt("3DES-CBC",Te.cipher.modes.cbc);Qt("3DES-CFB",Te.cipher.modes.cfb);Qt("3DES-OFB",Te.cipher.modes.ofb);Qt("3DES-CTR",Te.cipher.modes.ctr);function Qt(e,t){var r=function(){return new Te.des.Algorithm(e,t)};Te.cipher.registerAlgorithm(e,r)}var Ob=[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],Fb=[-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],Kb=[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],Mb=[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],Vb=[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],qb=[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],Hb=[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],zb=[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 Gb(e){for(var t=[0,4,536870912,536870916,65536,65540,536936448,536936452,512,516,536871424,536871428,66048,66052,536936960,536936964],r=[0,1,1048576,1048577,67108864,67108865,68157440,68157441,256,257,1048832,1048833,67109120,67109121,68157696,68157697],n=[0,8,2048,2056,16777216,16777224,16779264,16779272,0,8,2048,2056,16777216,16777224,16779264,16779272],i=[0,2097152,134217728,136314880,8192,2105344,134225920,136323072,131072,2228224,134348800,136445952,139264,2236416,134356992,136454144],o=[0,262144,16,262160,0,262144,16,262160,4096,266240,4112,266256,4096,266240,4112,266256],s=[0,1024,32,1056,0,1024,32,1056,33554432,33555456,33554464,33555488,33554432,33555456,33554464,33555488],a=[0,268435456,524288,268959744,2,268435458,524290,268959746,0,268435456,524288,268959744,2,268435458,524290,268959746],c=[0,65536,2048,67584,536870912,536936448,536872960,536938496,131072,196608,133120,198656,537001984,537067520,537004032,537069568],u=[0,262144,0,262144,2,262146,2,262146,33554432,33816576,33554432,33816576,33554434,33816578,33554434,33816578],f=[0,268435456,8,268435464,0,268435456,8,268435464,1024,268436480,1032,268436488,1024,268436480,1032,268436488],l=[0,32,0,32,1048576,1048608,1048576,1048608,8192,8224,8192,8224,1056768,1056800,1056768,1056800],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=e.length()>8?3:1,g=[],m=[0,0,1,1,1,1,1,1,0,1,1,1,1,1,1,0],v=0,x,A=0;A<p;A++){var w=e.getInt32(),E=e.getInt32();x=(w>>>4^E)&252645135,E^=x,w^=x<<4,x=(E>>>-16^w)&65535,w^=x,E^=x<<-16,x=(w>>>2^E)&858993459,E^=x,w^=x<<2,x=(E>>>-16^w)&65535,w^=x,E^=x<<-16,x=(w>>>1^E)&1431655765,E^=x,w^=x<<1,x=(E>>>8^w)&16711935,w^=x,E^=x<<8,x=(w>>>1^E)&1431655765,E^=x,w^=x<<1,x=w<<8|E>>>20&240,w=E<<24|E<<8&16711680|E>>>8&65280|E>>>24&240,E=x;for(var D=0;D<m.length;++D){m[D]?(w=w<<2|w>>>26,E=E<<2|E>>>26):(w=w<<1|w>>>27,E=E<<1|E>>>27),w&=-15,E&=-15;var B=t[w>>>28]|r[w>>>24&15]|n[w>>>20&15]|i[w>>>16&15]|o[w>>>12&15]|s[w>>>8&15]|a[w>>>4&15],R=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=(R>>>16^B)&65535,g[v++]=B^x,g[v++]=R^x<<16}}return g}function Bd(e,t,r,n){var i=e.length===32?3:9,o;i===3?o=n?[30,-2,-2]:[0,32,2]:o=n?[94,62,-2,32,64,2,30,-2,-2]:[0,32,2,62,30,-2,64,96,2];var s,a=t[0],c=t[1];s=(a>>>4^c)&252645135,c^=s,a^=s<<4,s=(a>>>16^c)&65535,c^=s,a^=s<<16,s=(c>>>2^a)&858993459,a^=s,c^=s<<2,s=(c>>>8^a)&16711935,a^=s,c^=s<<8,s=(a>>>1^c)&1431655765,c^=s,a^=s<<1,a=a<<1|a>>>31,c=c<<1|c>>>31;for(var u=0;u<i;u+=3){for(var f=o[u+1],l=o[u+2],h=o[u];h!=f;h+=l){var y=c^e[h],d=(c>>>4|c<<28)^e[h+1];s=a,a=c,c=s^(Fb[y>>>24&63]|Mb[y>>>16&63]|qb[y>>>8&63]|zb[y&63]|Ob[d>>>24&63]|Kb[d>>>16&63]|Vb[d>>>8&63]|Hb[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 Ts(e){e=e||{};var t=(e.mode||"CBC").toUpperCase(),r="DES-"+t,n;e.decrypt?n=Te.cipher.createDecipher(r,e.key):n=Te.cipher.createCipher(r,e.key);var i=n.start;return n.start=function(o,s){var a=null;s instanceof Te.util.ByteBuffer&&(a=s,s={}),s=s||{},s.output=a,s.iv=o,i.call(n,s)},n}});var mn=Y((IB,_d)=>{var _s=we();_d.exports=_s.md=_s.md||{};_s.md.algorithms=_s.md.algorithms||{}});var Rd=Y((TB,kd)=>{var mr=we();mn();Ve();var Wb=kd.exports=mr.hmac=mr.hmac||{};Wb.create=function(){var e=null,t=null,r=null,n=null,i={};return i.start=function(o,s){if(o!==null)if(typeof o=="string")if(o=o.toLowerCase(),o in mr.md.algorithms)t=mr.md.algorithms[o].create();else throw new Error('Unknown hash algorithm "'+o+'"');else t=o;if(s===null)s=e;else{if(typeof s=="string")s=mr.util.createBuffer(s);else if(mr.util.isArray(s)){var a=s;s=mr.util.createBuffer();for(var c=0;c<a.length;++c)s.putByte(a[c])}var u=s.length();u>t.blockLength&&(t.start(),t.update(s.bytes()),s=t.digest()),r=mr.util.createBuffer(),n=mr.util.createBuffer(),u=s.length();for(var c=0;c<u;++c){var a=s.at(c);r.putByte(54^a),n.putByte(92^a)}if(u<t.blockLength)for(var a=t.blockLength-u,c=0;c<a;++c)r.putByte(54),n.putByte(92);e=s,r=r.bytes(),n=n.bytes()}t.start(),t.update(r)},i.update=function(o){t.update(o)},i.getMac=function(){var o=t.digest().bytes();return t.start(),t.update(n),t.update(o),t.digest()},i.digest=i.getMac,i}});var ks=Y(()=>{});var Nd=Y((RB,Ld)=>{var ct=we();Rd();mn();Ve();var $b=ct.pkcs5=ct.pkcs5||{},xr;ct.util.isNodejs&&!ct.options.usePureJavaScript&&(xr=ks());Ld.exports=ct.pbkdf2=$b.pbkdf2=function(e,t,r,n,i,o){if(typeof i=="function"&&(o=i,i=null),ct.util.isNodejs&&!ct.options.usePureJavaScript&&xr.pbkdf2&&(i===null||typeof i!="object")&&(xr.pbkdf2Sync.length>4||!i||i==="sha1"))return typeof i!="string"&&(i="sha1"),e=Buffer.from(e,"binary"),t=Buffer.from(t,"binary"),o?xr.pbkdf2Sync.length===4?xr.pbkdf2(e,t,r,n,function(x,A){if(x)return o(x);o(null,A.toString("binary"))}):xr.pbkdf2(e,t,r,n,i,function(x,A){if(x)return o(x);o(null,A.toString("binary"))}):xr.pbkdf2Sync.length===4?xr.pbkdf2Sync(e,t,r,n).toString("binary"):xr.pbkdf2Sync(e,t,r,n,i).toString("binary");if((typeof i>"u"||i===null)&&(i="sha1"),typeof i=="string"){if(!(i in ct.md.algorithms))throw new Error("Unknown hash algorithm: "+i);i=ct.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=ct.hmac.create();f.start(i,e);var l="",h,y,d;if(!o){for(var p=1;p<=c;++p){f.start(null,null),f.update(t),f.update(ct.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=ct.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(t),f.update(ct.util.int32ToBytes(p)),h=d=f.digest().getBytes(),g=2,v()}function v(){if(g<=r)return f.start(null,null),f.update(d),y=f.digest().getBytes(),h=ct.util.xorBytes(h,y,s),d=y,++g,ct.util.setImmediate(v);l+=p<c?h:h.substr(0,u),++p,m()}m()}});var Od=Y((LB,Ud)=>{var Ls=we();Ve();var Pd=Ud.exports=Ls.pem=Ls.pem||{};Pd.encode=function(e,t){t=t||{};var r="-----BEGIN "+e.type+`-----\r
9
- `,n;if(e.procType&&(n={name:"Proc-Type",values:[String(e.procType.version),e.procType.type]},r+=Rs(n)),e.contentDomain&&(n={name:"Content-Domain",values:[e.contentDomain]},r+=Rs(n)),e.dekInfo&&(n={name:"DEK-Info",values:[e.dekInfo.algorithm]},e.dekInfo.parameters&&n.values.push(e.dekInfo.parameters),r+=Rs(n)),e.headers)for(var i=0;i<e.headers.length;++i)r+=Rs(e.headers[i]);return e.procType&&(r+=`\r
10
- `),r+=Ls.util.encode64(e.body,t.maxline||64)+`\r
11
- `,r+="-----END "+e.type+`-----\r
12
- `,r};Pd.decode=function(e){for(var t=[],r=/\s*-----BEGIN ([A-Z0-9- ]+)-----\r?\n?([\x21-\x7e\s]+?(?:\r?\n\r?\n))?([:A-Za-z0-9+\/=\s]+?)-----END \1-----/g,n=/([\x21-\x7e]+):\s*([\x21-\x7e\s^:]+)/,i=/\r?\n/,o;o=r.exec(e),!!o;){var s=o[1];s==="NEW CERTIFICATE REQUEST"&&(s="CERTIFICATE REQUEST");var a={type:s,procType:null,contentDomain:null,dekInfo:null,headers:[],body:Ls.util.decode64(o[3])};if(t.push(a),!!o[2]){for(var c=o[2].split(i),u=0;o&&u<c.length;){for(var f=c[u].replace(/\s+$/,""),l=u+1;l<c.length;++l){var 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(Yb(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(t.length===0)throw new Error("Invalid PEM formatted message.");return t};function Rs(e){for(var t=e.name+": ",r=[],n=function(c,u){return" "+u},i=0;i<e.values.length;++i)r.push(e.values[i].replace(/^(\S+\r\n)/,n));t+=r.join(",")+`\r
13
- `;for(var o=0,s=-1,i=0;i<t.length;++i,++o)if(o>65&&s!==-1){var a=t[s];a===","?(++s,t=t.substr(0,s)+`\r
14
- `+t.substr(s)):t=t.substr(0,s)+`\r
15
- `+a+t.substr(s+1),o=i-s-1,s=-1,++i}else(t[i]===" "||t[i]===" "||t[i]===",")&&(s=i);return t}function Yb(e){return e.replace(/^\s+/,"")}});var Hd=Y((NB,qd)=>{var jt=we();mn();Ve();var Kd=qd.exports=jt.sha256=jt.sha256||{};jt.md.sha256=jt.md.algorithms.sha256=Kd;Kd.create=function(){Md||Zb();var e=null,t=jt.util.createBuffer(),r=new Array(64),n={algorithm:"sha256",blockLength:64,digestLength:32,messageLength:0,fullMessageLength:null,messageLengthSize:8};return n.start=function(){n.messageLength=0,n.fullMessageLength=n.messageLength64=[];for(var i=n.messageLengthSize/4,o=0;o<i;++o)n.fullMessageLength.push(0);return t=jt.util.createBuffer(),e={h0:1779033703,h1:3144134277,h2:1013904242,h3:2773480762,h4:1359893119,h5:2600822924,h6:528734635,h7:1541459225},n},n.start(),n.update=function(i,o){o==="utf8"&&(i=jt.util.encodeUtf8(i));var s=i.length;n.messageLength+=s,s=[s/4294967296>>>0,s>>>0];for(var a=n.fullMessageLength.length-1;a>=0;--a)n.fullMessageLength[a]+=s[1],s[1]=s[0]+(n.fullMessageLength[a]/4294967296>>>0),n.fullMessageLength[a]=n.fullMessageLength[a]>>>0,s[0]=s[1]/4294967296>>>0;return t.putBytes(i),Fd(e,r,t),(t.read>2048||t.length()===0)&&t.compact(),n},n.digest=function(){var i=jt.util.createBuffer();i.putBytes(t.bytes());var o=n.fullMessageLength[n.fullMessageLength.length-1]+n.messageLengthSize,s=o&n.blockLength-1;i.putBytes(_0.substr(0,n.blockLength-s));for(var a,c,u=n.fullMessageLength[0]*8,f=0;f<n.fullMessageLength.length-1;++f)a=n.fullMessageLength[f+1]*8,c=a/4294967296>>>0,u+=c,i.putInt32(u>>>0),u=a>>>0;i.putInt32(u);var l={h0:e.h0,h1:e.h1,h2:e.h2,h3:e.h3,h4:e.h4,h5:e.h5,h6:e.h6,h7:e.h7};Fd(l,r,i);var h=jt.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 _0=null,Md=!1,Vd=null;function Zb(){_0=String.fromCharCode(128),_0+=jt.util.fillString(String.fromCharCode(0),64),Vd=[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],Md=!0}function Fd(e,t,r){for(var n,i,o,s,a,c,u,f,l,h,y,d,p,g,m,v=r.length();v>=64;){for(u=0;u<16;++u)t[u]=r.getInt32();for(;u<64;++u)n=t[u-2],n=(n>>>17|n<<15)^(n>>>19|n<<13)^n>>>10,i=t[u-15],i=(i>>>7|i<<25)^(i>>>18|i<<14)^i>>>3,t[u]=n+t[u-7]+i+t[u-16]|0;for(f=e.h0,l=e.h1,h=e.h2,y=e.h3,d=e.h4,p=e.h5,g=e.h6,m=e.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+Vd[u]+t[u],i=o+c,m=g,g=p,p=d,d=y+n>>>0,y=h,h=l,l=f,f=n+i>>>0;e.h0=e.h0+f|0,e.h1=e.h1+l|0,e.h2=e.h2+h|0,e.h3=e.h3+y|0,e.h4=e.h4+d|0,e.h5=e.h5+p|0,e.h6=e.h6+g|0,e.h7=e.h7+m|0,v-=64}}});var Gd=Y((PB,zd)=>{var Jt=we();Ve();var Ns=null;Jt.util.isNodejs&&!Jt.options.usePureJavaScript&&!process.versions["node-webkit"]&&(Ns=ks());var Xb=zd.exports=Jt.prng=Jt.prng||{};Xb.create=function(e){for(var t={plugin:e,key:null,seed:null,time:null,reseeds:0,generated:0,keyBytes:""},r=e.md,n=new Array(32),i=0;i<32;++i)n[i]=r.create();t.pools=n,t.pool=0,t.generate=function(u,f){if(!f)return t.generateSync(u);var l=t.plugin.cipher,h=t.plugin.increment,y=t.plugin.formatKey,d=t.plugin.formatSeed,p=Jt.util.createBuffer();t.key=null,g();function g(m){if(m)return f(m);if(p.length()>=u)return f(null,p.getBytes(u));if(t.generated>1048575&&(t.key=null),t.key===null)return Jt.util.nextTick(function(){o(g)});var v=l(t.key,t.seed);t.generated+=v.length,p.putBytes(v),t.key=y(l(t.key,h(t.seed))),t.seed=d(l(t.key,t.seed)),Jt.util.setImmediate(g)}},t.generateSync=function(u){var f=t.plugin.cipher,l=t.plugin.increment,h=t.plugin.formatKey,y=t.plugin.formatSeed;t.key=null;for(var d=Jt.util.createBuffer();d.length()<u;){t.generated>1048575&&(t.key=null),t.key===null&&s();var p=f(t.key,t.seed);t.generated+=p.length,d.putBytes(p),t.key=h(f(t.key,l(t.seed))),t.seed=y(f(t.key,t.seed))}return d.getBytes(u)};function o(u){if(t.pools[0].messageLength>=32)return a(),u();var f=32-t.pools[0].messageLength<<5;t.seedFile(f,function(l,h){if(l)return u(l);t.collect(h),a(),u()})}function s(){if(t.pools[0].messageLength>=32)return a();var u=32-t.pools[0].messageLength<<5;t.collect(t.seedFileSync(u)),a()}function a(){t.reseeds=t.reseeds===4294967295?0:t.reseeds+1;var u=t.plugin.md.create();u.update(t.keyBytes);for(var f=1,l=0;l<32;++l)t.reseeds%f===0&&(u.update(t.pools[l].digest().getBytes()),t.pools[l].start()),f=f<<1;t.keyBytes=u.digest().getBytes(),u.start(),u.update(t.keyBytes);var h=u.digest().getBytes();t.key=t.plugin.formatKey(t.keyBytes),t.seed=t.plugin.formatSeed(h),t.generated=0}function c(u){var f=null,l=Jt.util.globalScope,h=l.crypto||l.msCrypto;h&&h.getRandomValues&&(f=function(w){return h.getRandomValues(w)});var y=Jt.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(w){if(!(typeof QuotaExceededError<"u"&&w instanceof QuotaExceededError))throw w}}if(y.length()<u)for(var m,v,x,A=Math.floor(Math.random()*65536);y.length()<u;){v=16807*(A&65535),m=16807*(A>>16),v+=(m&32767)<<16,v+=m>>15,v=(v&2147483647)+(v>>31),A=v&4294967295;for(var g=0;g<3;++g)x=A>>>(g<<3),x^=Math.floor(Math.random()*256),y.putByte(x&255)}return y.getBytes(u)}return Ns?(t.seedFile=function(u,f){Ns.randomBytes(u,function(l,h){if(l)return f(l);f(null,h.toString())})},t.seedFileSync=function(u){return Ns.randomBytes(u).toString()}):(t.seedFile=function(u,f){try{f(null,c(u))}catch(l){f(l)}},t.seedFileSync=c),t.collect=function(u){for(var f=u.length,l=0;l<f;++l)t.pools[t.pool].update(u.substr(l,1)),t.pool=t.pool===31?0:t.pool+1},t.collectInt=function(u,f){for(var l="",h=0;h<f;h+=8)l+=String.fromCharCode(u>>h&255);t.collect(l)},t.registerWorker=function(u){if(u===self)t.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&&t.seedFile(h.forge.prng.needed,function(y,d){u.postMessage({forge:{prng:{err:y,bytes:d}}})})};u.addEventListener("message",f)}},t}});var $i=Y((UB,k0)=>{var Ye=we();T0();Hd();Gd();Ve();(function(){if(Ye.random&&Ye.random.getBytes){k0.exports=Ye.random;return}(function(e){var t={},r=new Array(4),n=Ye.util.createBuffer();t.formatKey=function(l){var h=Ye.util.createBuffer(l);return l=new Array(4),l[0]=h.getInt32(),l[1]=h.getInt32(),l[2]=h.getInt32(),l[3]=h.getInt32(),Ye.aes._expandKey(l,!1)},t.formatSeed=function(l){var h=Ye.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},t.cipher=function(l,h){return Ye.aes._updateBlock(l,h,r,!1),n.putInt32(r[0]),n.putInt32(r[1]),n.putInt32(r[2]),n.putInt32(r[3]),n.getBytes()},t.increment=function(l){return++l[3],l},t.md=Ye.md.sha256;function i(){var l=Ye.prng.create(t);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=Ye.util.globalScope,c=a.crypto||a.msCrypto;if(c&&c.getRandomValues&&(s=function(l){return c.getRandomValues(l)}),Ye.options.usePureJavaScript||!Ye.util.isNodejs&&!s){if(typeof window>"u"||window.document,o.collectInt(+new Date,32),typeof navigator<"u"){var u="";for(var f in navigator)try{typeof navigator[f]=="string"&&(u+=navigator[f])}catch{}o.collect(u),u=null}e&&(e().mousemove(function(l){o.collectInt(l.clientX,16),o.collectInt(l.clientY,16)}),e().keypress(function(l){o.collectInt(l.charCode,8)}))}if(!Ye.random)Ye.random=o;else for(var f in o)Ye.random[f]=o[f];Ye.random.createInstance=i,k0.exports=Ye.random})(typeof jQuery<"u"?jQuery:null)})()});var Zd=Y((OB,Yd)=>{var lt=we();Ve();var R0=[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],Wd=[1,2,3,5],Qb=function(e,t){return e<<t&65535|(e&65535)>>16-t},jb=function(e,t){return(e&65535)>>t|e<<16-t&65535};Yd.exports=lt.rc2=lt.rc2||{};lt.rc2.expandKey=function(e,t){typeof e=="string"&&(e=lt.util.createBuffer(e)),t=t||128;var r=e,n=e.length(),i=t,o=Math.ceil(i/8),s=255>>(i&7),a;for(a=n;a<128;a++)r.putByte(R0[r.at(a-1)+r.at(a-n)&255]);for(r.setAt(128-o,R0[r.at(128-o)&s]),a=127-o;a>=0;a--)r.setAt(a,R0[r.at(a+1)^r.at(a+o)]);return r};var $d=function(e,t,r){var n=!1,i=null,o=null,s=null,a,c,u,f,l=[];for(e=lt.rc2.expandKey(e,t),u=0;u<64;u++)l.push(e.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]=Qb(d[u],Wd[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]=jb(d[u],Wd[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 v=0;v<d[m][0];v++)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=lt.util.createBuffer(d)),n=!1,i=lt.util.createBuffer(),o=p||new lt.util.createBuffer,s=d,y.output=o},update:function(d){for(n||i.putBuffer(d);i.length()>=8;)h([[5,a],[1,c],[6,a],[1,c],[5,a]])},finish:function(d){var p=!0;if(r)if(d)p=d(8,i,!r);else{var 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(),v=o.at(m-1);v>m?p=!1:o.truncate(v)}return p}},y};lt.rc2.startEncrypting=function(e,t,r){var n=lt.rc2.createEncryptionCipher(e,128);return n.start(t,r),n};lt.rc2.createEncryptionCipher=function(e,t){return $d(e,t,!0)};lt.rc2.startDecrypting=function(e,t,r){var n=lt.rc2.createDecryptionCipher(e,128);return n.start(t,r),n};lt.rc2.createDecryptionCipher=function(e,t){return $d(e,t,!1)}});var Os=Y((FB,np)=>{var L0=we();np.exports=L0.jsbn=L0.jsbn||{};var br,Jb=0xdeadbeefcafe,Xd=(Jb&16777215)==15715070;function N(e,t,r){this.data=[],e!=null&&(typeof e=="number"?this.fromNumber(e,t,r):t==null&&typeof e!="string"?this.fromString(e,256):this.fromString(e,t))}L0.jsbn.BigInteger=N;function le(){return new N(null)}function ew(e,t,r,n,i,o){for(;--o>=0;){var s=t*this.data[e++]+r.data[n]+i;i=Math.floor(s/67108864),r.data[n++]=s&67108863}return i}function tw(e,t,r,n,i,o){for(var s=t&32767,a=t>>15;--o>=0;){var c=this.data[e]&32767,u=this.data[e++]>>15,f=a*c+u*s;c=s*c+((f&32767)<<15)+r.data[n]+(i&1073741823),i=(c>>>30)+(f>>>15)+a*u+(i>>>30),r.data[n++]=c&1073741823}return i}function Qd(e,t,r,n,i,o){for(var s=t&16383,a=t>>14;--o>=0;){var c=this.data[e]&16383,u=this.data[e++]>>14,f=a*c+u*s;c=s*c+((f&16383)<<14)+r.data[n]+i,i=(c>>28)+(f>>14)+a*u,r.data[n++]=c&268435455}return i}typeof navigator>"u"?(N.prototype.am=Qd,br=28):Xd&&navigator.appName=="Microsoft Internet Explorer"?(N.prototype.am=tw,br=30):Xd&&navigator.appName!="Netscape"?(N.prototype.am=ew,br=26):(N.prototype.am=Qd,br=28);N.prototype.DB=br;N.prototype.DM=(1<<br)-1;N.prototype.DV=1<<br;var N0=52;N.prototype.FV=Math.pow(2,N0);N.prototype.F1=N0-br;N.prototype.F2=2*br-N0;var rw="0123456789abcdefghijklmnopqrstuvwxyz",Ps=new Array,oi,Ct;oi="0".charCodeAt(0);for(Ct=0;Ct<=9;++Ct)Ps[oi++]=Ct;oi="a".charCodeAt(0);for(Ct=10;Ct<36;++Ct)Ps[oi++]=Ct;oi="A".charCodeAt(0);for(Ct=10;Ct<36;++Ct)Ps[oi++]=Ct;function jd(e){return rw.charAt(e)}function Jd(e,t){var r=Ps[e.charCodeAt(t)];return r??-1}function nw(e){for(var t=this.t-1;t>=0;--t)e.data[t]=this.data[t];e.t=this.t,e.s=this.s}function iw(e){this.t=1,this.s=e<0?-1:0,e>0?this.data[0]=e:e<-1?this.data[0]=e+this.DV:this.t=0}function qr(e){var t=le();return t.fromInt(e),t}function ow(e,t){var r;if(t==16)r=4;else if(t==8)r=3;else if(t==256)r=8;else if(t==2)r=1;else if(t==32)r=5;else if(t==4)r=2;else{this.fromRadix(e,t);return}this.t=0,this.s=0;for(var n=e.length,i=!1,o=0;--n>=0;){var s=r==8?e[n]&255:Jd(e,n);if(s<0){e.charAt(n)=="-"&&(i=!0);continue}i=!1,o==0?this.data[this.t++]=s:o+r>this.DB?(this.data[this.t-1]|=(s&(1<<this.DB-o)-1)<<o,this.data[this.t++]=s>>this.DB-o):this.data[this.t-1]|=s<<o,o+=r,o>=this.DB&&(o-=this.DB)}r==8&&e[0]&128&&(this.s=-1,o>0&&(this.data[this.t-1]|=(1<<this.DB-o)-1<<o)),this.clamp(),i&&N.ZERO.subTo(this,this)}function sw(){for(var e=this.s&this.DM;this.t>0&&this.data[this.t-1]==e;)--this.t}function aw(e){if(this.s<0)return"-"+this.negate().toString(e);var t;if(e==16)t=4;else if(e==8)t=3;else if(e==2)t=1;else if(e==32)t=5;else if(e==4)t=2;else return this.toRadix(e);var r=(1<<t)-1,n,i=!1,o="",s=this.t,a=this.DB-s*this.DB%t;if(s-- >0)for(a<this.DB&&(n=this.data[s]>>a)>0&&(i=!0,o=jd(n));s>=0;)a<t?(n=(this.data[s]&(1<<a)-1)<<t-a,n|=this.data[--s]>>(a+=this.DB-t)):(n=this.data[s]>>(a-=t)&r,a<=0&&(a+=this.DB,--s)),n>0&&(i=!0),i&&(o+=jd(n));return i?o:"0"}function cw(){var e=le();return N.ZERO.subTo(this,e),e}function uw(){return this.s<0?this.negate():this}function fw(e){var t=this.s-e.s;if(t!=0)return t;var r=this.t;if(t=r-e.t,t!=0)return this.s<0?-t:t;for(;--r>=0;)if((t=this.data[r]-e.data[r])!=0)return t;return 0}function Us(e){var t=1,r;return(r=e>>>16)!=0&&(e=r,t+=16),(r=e>>8)!=0&&(e=r,t+=8),(r=e>>4)!=0&&(e=r,t+=4),(r=e>>2)!=0&&(e=r,t+=2),(r=e>>1)!=0&&(e=r,t+=1),t}function lw(){return this.t<=0?0:this.DB*(this.t-1)+Us(this.data[this.t-1]^this.s&this.DM)}function hw(e,t){var r;for(r=this.t-1;r>=0;--r)t.data[r+e]=this.data[r];for(r=e-1;r>=0;--r)t.data[r]=0;t.t=this.t+e,t.s=this.s}function dw(e,t){for(var r=e;r<this.t;++r)t.data[r-e]=this.data[r];t.t=Math.max(this.t-e,0),t.s=this.s}function pw(e,t){var r=e%this.DB,n=this.DB-r,i=(1<<n)-1,o=Math.floor(e/this.DB),s=this.s<<r&this.DM,a;for(a=this.t-1;a>=0;--a)t.data[a+o+1]=this.data[a]>>n|s,s=(this.data[a]&i)<<r;for(a=o-1;a>=0;--a)t.data[a]=0;t.data[o]=s,t.t=this.t+o+1,t.s=this.s,t.clamp()}function yw(e,t){t.s=this.s;var r=Math.floor(e/this.DB);if(r>=this.t){t.t=0;return}var n=e%this.DB,i=this.DB-n,o=(1<<n)-1;t.data[0]=this.data[r]>>n;for(var s=r+1;s<this.t;++s)t.data[s-r-1]|=(this.data[s]&o)<<i,t.data[s-r]=this.data[s]>>n;n>0&&(t.data[this.t-r-1]|=(this.s&o)<<i),t.t=this.t-r,t.clamp()}function gw(e,t){for(var r=0,n=0,i=Math.min(e.t,this.t);r<i;)n+=this.data[r]-e.data[r],t.data[r++]=n&this.DM,n>>=this.DB;if(e.t<this.t){for(n-=e.s;r<this.t;)n+=this.data[r],t.data[r++]=n&this.DM,n>>=this.DB;n+=this.s}else{for(n+=this.s;r<e.t;)n-=e.data[r],t.data[r++]=n&this.DM,n>>=this.DB;n-=e.s}t.s=n<0?-1:0,n<-1?t.data[r++]=this.DV+n:n>0&&(t.data[r++]=n),t.t=r,t.clamp()}function mw(e,t){var r=this.abs(),n=e.abs(),i=r.t;for(t.t=i+n.t;--i>=0;)t.data[i]=0;for(i=0;i<n.t;++i)t.data[i+r.t]=r.am(0,n.data[i],t,i,0,r.t);t.s=0,t.clamp(),this.s!=e.s&&N.ZERO.subTo(t,t)}function xw(e){for(var t=this.abs(),r=e.t=2*t.t;--r>=0;)e.data[r]=0;for(r=0;r<t.t-1;++r){var n=t.am(r,t.data[r],e,2*r,0,1);(e.data[r+t.t]+=t.am(r+1,2*t.data[r],e,2*r+1,n,t.t-r-1))>=t.DV&&(e.data[r+t.t]-=t.DV,e.data[r+t.t+1]=1)}e.t>0&&(e.data[e.t-1]+=t.am(r,t.data[r],e,2*r,0,1)),e.s=0,e.clamp()}function bw(e,t,r){var n=e.abs();if(!(n.t<=0)){var i=this.abs();if(i.t<n.t){t?.fromInt(0),r!=null&&this.copyTo(r);return}r==null&&(r=le());var o=le(),s=this.s,a=e.s,c=this.DB-Us(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=t??le();for(o.dlShiftTo(g,m),r.compareTo(m)>=0&&(r.data[r.t++]=1,r.subTo(m,r)),N.ONE.dlShiftTo(u,m),m.subTo(o,o);o.t<u;)o.data[o.t++]=0;for(;--g>=0;){var v=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,v,r,g,0,u))<v)for(o.dlShiftTo(g,m),r.subTo(m,r);r.data[p]<--v;)r.subTo(m,r)}t!=null&&(r.drShiftTo(u,t),s!=a&&N.ZERO.subTo(t,t)),r.t=u,r.clamp(),c>0&&r.rShiftTo(c,r),s<0&&N.ZERO.subTo(r,r)}}}function ww(e){var t=le();return this.abs().divRemTo(e,null,t),this.s<0&&t.compareTo(N.ZERO)>0&&e.subTo(t,t),t}function xn(e){this.m=e}function vw(e){return e.s<0||e.compareTo(this.m)>=0?e.mod(this.m):e}function Ew(e){return e}function Sw(e){e.divRemTo(this.m,null,e)}function Cw(e,t,r){e.multiplyTo(t,r),this.reduce(r)}function Aw(e,t){e.squareTo(t),this.reduce(t)}xn.prototype.convert=vw;xn.prototype.revert=Ew;xn.prototype.reduce=Sw;xn.prototype.mulTo=Cw;xn.prototype.sqrTo=Aw;function Dw(){if(this.t<1)return 0;var e=this.data[0];if(!(e&1))return 0;var t=e&3;return t=t*(2-(e&15)*t)&15,t=t*(2-(e&255)*t)&255,t=t*(2-((e&65535)*t&65535))&65535,t=t*(2-e*t%this.DV)%this.DV,t>0?this.DV-t:-t}function bn(e){this.m=e,this.mp=e.invDigit(),this.mpl=this.mp&32767,this.mph=this.mp>>15,this.um=(1<<e.DB-15)-1,this.mt2=2*e.t}function Bw(e){var t=le();return e.abs().dlShiftTo(this.m.t,t),t.divRemTo(this.m,null,t),e.s<0&&t.compareTo(N.ZERO)>0&&this.m.subTo(t,t),t}function Iw(e){var t=le();return e.copyTo(t),this.reduce(t),t}function Tw(e){for(;e.t<=this.mt2;)e.data[e.t++]=0;for(var t=0;t<this.m.t;++t){var r=e.data[t]&32767,n=r*this.mpl+((r*this.mph+(e.data[t]>>15)*this.mpl&this.um)<<15)&e.DM;for(r=t+this.m.t,e.data[r]+=this.m.am(0,n,e,t,0,this.m.t);e.data[r]>=e.DV;)e.data[r]-=e.DV,e.data[++r]++}e.clamp(),e.drShiftTo(this.m.t,e),e.compareTo(this.m)>=0&&e.subTo(this.m,e)}function _w(e,t){e.squareTo(t),this.reduce(t)}function kw(e,t,r){e.multiplyTo(t,r),this.reduce(r)}bn.prototype.convert=Bw;bn.prototype.revert=Iw;bn.prototype.reduce=Tw;bn.prototype.mulTo=kw;bn.prototype.sqrTo=_w;function Rw(){return(this.t>0?this.data[0]&1:this.s)==0}function Lw(e,t){if(e>4294967295||e<1)return N.ONE;var r=le(),n=le(),i=t.convert(this),o=Us(e)-1;for(i.copyTo(r);--o>=0;)if(t.sqrTo(r,n),(e&1<<o)>0)t.mulTo(n,i,r);else{var s=r;r=n,n=s}return t.revert(r)}function Nw(e,t){var r;return e<256||t.isEven()?r=new xn(t):r=new bn(t),this.exp(e,r)}N.prototype.copyTo=nw;N.prototype.fromInt=iw;N.prototype.fromString=ow;N.prototype.clamp=sw;N.prototype.dlShiftTo=hw;N.prototype.drShiftTo=dw;N.prototype.lShiftTo=pw;N.prototype.rShiftTo=yw;N.prototype.subTo=gw;N.prototype.multiplyTo=mw;N.prototype.squareTo=xw;N.prototype.divRemTo=bw;N.prototype.invDigit=Dw;N.prototype.isEven=Rw;N.prototype.exp=Lw;N.prototype.toString=aw;N.prototype.negate=cw;N.prototype.abs=uw;N.prototype.compareTo=fw;N.prototype.bitLength=lw;N.prototype.mod=ww;N.prototype.modPowInt=Nw;N.ZERO=qr(0);N.ONE=qr(1);function Pw(){var e=le();return this.copyTo(e),e}function Uw(){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 Ow(){return this.t==0?this.s:this.data[0]<<24>>24}function Fw(){return this.t==0?this.s:this.data[0]<<16>>16}function Kw(e){return Math.floor(Math.LN2*this.DB/Math.log(e))}function Mw(){return this.s<0?-1:this.t<=0||this.t==1&&this.data[0]<=0?0:1}function Vw(e){if(e==null&&(e=10),this.signum()==0||e<2||e>36)return"0";var t=this.chunkSize(e),r=Math.pow(e,t),n=qr(r),i=le(),o=le(),s="";for(this.divRemTo(n,i,o);i.signum()>0;)s=(r+o.intValue()).toString(e).substr(1)+s,i.divRemTo(n,i,o);return o.intValue().toString(e)+s}function qw(e,t){this.fromInt(0),t==null&&(t=10);for(var r=this.chunkSize(t),n=Math.pow(t,r),i=!1,o=0,s=0,a=0;a<e.length;++a){var c=Jd(e,a);if(c<0){e.charAt(a)=="-"&&this.signum()==0&&(i=!0);continue}s=t*s+c,++o>=r&&(this.dMultiply(n),this.dAddOffset(s,0),o=0,s=0)}o>0&&(this.dMultiply(Math.pow(t,o)),this.dAddOffset(s,0)),i&&N.ZERO.subTo(this,this)}function Hw(e,t,r){if(typeof t=="number")if(e<2)this.fromInt(1);else for(this.fromNumber(e,r),this.testBit(e-1)||this.bitwiseTo(N.ONE.shiftLeft(e-1),P0,this),this.isEven()&&this.dAddOffset(1,0);!this.isProbablePrime(t);)this.dAddOffset(2,0),this.bitLength()>e&&this.subTo(N.ONE.shiftLeft(e-1),this);else{var n=new Array,i=e&7;n.length=(e>>3)+1,t.nextBytes(n),i>0?n[0]&=(1<<i)-1:n[0]=0,this.fromString(n,256)}}function zw(){var e=this.t,t=new Array;t[0]=this.s;var r=this.DB-e*this.DB%8,n,i=0;if(e-- >0)for(r<this.DB&&(n=this.data[e]>>r)!=(this.s&this.DM)>>r&&(t[i++]=n|this.s<<this.DB-r);e>=0;)r<8?(n=(this.data[e]&(1<<r)-1)<<8-r,n|=this.data[--e]>>(r+=this.DB-8)):(n=this.data[e]>>(r-=8)&255,r<=0&&(r+=this.DB,--e)),n&128&&(n|=-256),i==0&&(this.s&128)!=(n&128)&&++i,(i>0||n!=this.s)&&(t[i++]=n);return t}function Gw(e){return this.compareTo(e)==0}function Ww(e){return this.compareTo(e)<0?this:e}function $w(e){return this.compareTo(e)>0?this:e}function Yw(e,t,r){var n,i,o=Math.min(e.t,this.t);for(n=0;n<o;++n)r.data[n]=t(this.data[n],e.data[n]);if(e.t<this.t){for(i=e.s&this.DM,n=o;n<this.t;++n)r.data[n]=t(this.data[n],i);r.t=this.t}else{for(i=this.s&this.DM,n=o;n<e.t;++n)r.data[n]=t(i,e.data[n]);r.t=e.t}r.s=t(this.s,e.s),r.clamp()}function Zw(e,t){return e&t}function Xw(e){var t=le();return this.bitwiseTo(e,Zw,t),t}function P0(e,t){return e|t}function Qw(e){var t=le();return this.bitwiseTo(e,P0,t),t}function ep(e,t){return e^t}function jw(e){var t=le();return this.bitwiseTo(e,ep,t),t}function tp(e,t){return e&~t}function Jw(e){var t=le();return this.bitwiseTo(e,tp,t),t}function ev(){for(var e=le(),t=0;t<this.t;++t)e.data[t]=this.DM&~this.data[t];return e.t=this.t,e.s=~this.s,e}function tv(e){var t=le();return e<0?this.rShiftTo(-e,t):this.lShiftTo(e,t),t}function rv(e){var t=le();return e<0?this.lShiftTo(-e,t):this.rShiftTo(e,t),t}function nv(e){if(e==0)return-1;var t=0;return e&65535||(e>>=16,t+=16),e&255||(e>>=8,t+=8),e&15||(e>>=4,t+=4),e&3||(e>>=2,t+=2),e&1||++t,t}function iv(){for(var e=0;e<this.t;++e)if(this.data[e]!=0)return e*this.DB+nv(this.data[e]);return this.s<0?this.t*this.DB:-1}function ov(e){for(var t=0;e!=0;)e&=e-1,++t;return t}function sv(){for(var e=0,t=this.s&this.DM,r=0;r<this.t;++r)e+=ov(this.data[r]^t);return e}function av(e){var t=Math.floor(e/this.DB);return t>=this.t?this.s!=0:(this.data[t]&1<<e%this.DB)!=0}function cv(e,t){var r=N.ONE.shiftLeft(e);return this.bitwiseTo(r,t,r),r}function uv(e){return this.changeBit(e,P0)}function fv(e){return this.changeBit(e,tp)}function lv(e){return this.changeBit(e,ep)}function hv(e,t){for(var r=0,n=0,i=Math.min(e.t,this.t);r<i;)n+=this.data[r]+e.data[r],t.data[r++]=n&this.DM,n>>=this.DB;if(e.t<this.t){for(n+=e.s;r<this.t;)n+=this.data[r],t.data[r++]=n&this.DM,n>>=this.DB;n+=this.s}else{for(n+=this.s;r<e.t;)n+=e.data[r],t.data[r++]=n&this.DM,n>>=this.DB;n+=e.s}t.s=n<0?-1:0,n>0?t.data[r++]=n:n<-1&&(t.data[r++]=this.DV+n),t.t=r,t.clamp()}function dv(e){var t=le();return this.addTo(e,t),t}function pv(e){var t=le();return this.subTo(e,t),t}function yv(e){var t=le();return this.multiplyTo(e,t),t}function gv(e){var t=le();return this.divRemTo(e,t,null),t}function mv(e){var t=le();return this.divRemTo(e,null,t),t}function xv(e){var t=le(),r=le();return this.divRemTo(e,t,r),new Array(t,r)}function bv(e){this.data[this.t]=this.am(0,e-1,this,0,0,this.t),++this.t,this.clamp()}function wv(e,t){if(e!=0){for(;this.t<=t;)this.data[this.t++]=0;for(this.data[t]+=e;this.data[t]>=this.DV;)this.data[t]-=this.DV,++t>=this.t&&(this.data[this.t++]=0),++this.data[t]}}function Yi(){}function rp(e){return e}function vv(e,t,r){e.multiplyTo(t,r)}function Ev(e,t){e.squareTo(t)}Yi.prototype.convert=rp;Yi.prototype.revert=rp;Yi.prototype.mulTo=vv;Yi.prototype.sqrTo=Ev;function Sv(e){return this.exp(e,new Yi)}function Cv(e,t,r){var n=Math.min(this.t+e.t,t);for(r.s=0,r.t=n;n>0;)r.data[--n]=0;var i;for(i=r.t-this.t;n<i;++n)r.data[n+this.t]=this.am(0,e.data[n],r,n,0,this.t);for(i=Math.min(e.t,t);n<i;++n)this.am(0,e.data[n],r,n,0,t-n);r.clamp()}function Av(e,t,r){--t;var n=r.t=this.t+e.t-t;for(r.s=0;--n>=0;)r.data[n]=0;for(n=Math.max(t-this.t,0);n<e.t;++n)r.data[this.t+n-t]=this.am(t-n,e.data[n],r,0,0,this.t+n-t);r.clamp(),r.drShiftTo(1,r)}function si(e){this.r2=le(),this.q3=le(),N.ONE.dlShiftTo(2*e.t,this.r2),this.mu=this.r2.divide(e),this.m=e}function Dv(e){if(e.s<0||e.t>2*this.m.t)return e.mod(this.m);if(e.compareTo(this.m)<0)return e;var t=le();return e.copyTo(t),this.reduce(t),t}function Bv(e){return e}function Iv(e){for(e.drShiftTo(this.m.t-1,this.r2),e.t>this.m.t+1&&(e.t=this.m.t+1,e.clamp()),this.mu.multiplyUpperTo(this.r2,this.m.t+1,this.q3),this.m.multiplyLowerTo(this.q3,this.m.t+1,this.r2);e.compareTo(this.r2)<0;)e.dAddOffset(1,this.m.t+1);for(e.subTo(this.r2,e);e.compareTo(this.m)>=0;)e.subTo(this.m,e)}function Tv(e,t){e.squareTo(t),this.reduce(t)}function _v(e,t,r){e.multiplyTo(t,r),this.reduce(r)}si.prototype.convert=Dv;si.prototype.revert=Bv;si.prototype.reduce=Iv;si.prototype.mulTo=_v;si.prototype.sqrTo=Tv;function kv(e,t){var r=e.bitLength(),n,i=qr(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 xn(t):t.isEven()?o=new si(t):o=new bn(t);var s=new Array,a=3,c=n-1,u=(1<<n)-1;if(s[1]=o.convert(this),n>1){var f=le();for(o.sqrTo(s[1],f);a<=u;)s[a]=le(),o.mulTo(f,s[a-2],s[a]),a+=2}var l=e.t-1,h,y=!0,d=le(),p;for(r=Us(e.data[l])-1;l>=0;){for(r>=c?h=e.data[l]>>r-c&u:(h=(e.data[l]&(1<<r+1)-1)<<c-r,l>0&&(h|=e.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&&!(e.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 Rv(e){var t=this.s<0?this.negate():this.clone(),r=e.s<0?e.negate():e.clone();if(t.compareTo(r)<0){var n=t;t=r,r=n}var i=t.getLowestSetBit(),o=r.getLowestSetBit();if(o<0)return t;for(i<o&&(o=i),o>0&&(t.rShiftTo(o,t),r.rShiftTo(o,r));t.signum()>0;)(i=t.getLowestSetBit())>0&&t.rShiftTo(i,t),(i=r.getLowestSetBit())>0&&r.rShiftTo(i,r),t.compareTo(r)>=0?(t.subTo(r,t),t.rShiftTo(1,t)):(r.subTo(t,r),r.rShiftTo(1,r));return o>0&&r.lShiftTo(o,r),r}function Lv(e){if(e<=0)return 0;var t=this.DV%e,r=this.s<0?e-1:0;if(this.t>0)if(t==0)r=this.data[0]%e;else for(var n=this.t-1;n>=0;--n)r=(t*r+this.data[n])%e;return r}function Nv(e){var t=e.isEven();if(this.isEven()&&t||e.signum()==0)return N.ZERO;for(var r=e.clone(),n=this.clone(),i=qr(1),o=qr(0),s=qr(0),a=qr(1);r.signum()!=0;){for(;r.isEven();)r.rShiftTo(1,r),t?((!i.isEven()||!o.isEven())&&(i.addTo(this,i),o.subTo(e,o)),i.rShiftTo(1,i)):o.isEven()||o.subTo(e,o),o.rShiftTo(1,o);for(;n.isEven();)n.rShiftTo(1,n),t?((!s.isEven()||!a.isEven())&&(s.addTo(this,s),a.subTo(e,a)),s.rShiftTo(1,s)):a.isEven()||a.subTo(e,a),a.rShiftTo(1,a);r.compareTo(n)>=0?(r.subTo(n,r),t&&i.subTo(s,i),o.subTo(a,o)):(n.subTo(r,n),t&&s.subTo(i,s),a.subTo(o,a))}if(n.compareTo(N.ONE)!=0)return N.ZERO;if(a.compareTo(e)>=0)return a.subtract(e);if(a.signum()<0)a.addTo(e,a);else return a;return a.signum()<0?a.add(e):a}var Vt=[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],Pv=(1<<26)/Vt[Vt.length-1];function Uv(e){var t,r=this.abs();if(r.t==1&&r.data[0]<=Vt[Vt.length-1]){for(t=0;t<Vt.length;++t)if(r.data[0]==Vt[t])return!0;return!1}if(r.isEven())return!1;for(t=1;t<Vt.length;){for(var n=Vt[t],i=t+1;i<Vt.length&&n<Pv;)n*=Vt[i++];for(n=r.modInt(n);t<i;)if(n%Vt[t++]==0)return!1}return r.millerRabin(e)}function Ov(e){var t=this.subtract(N.ONE),r=t.getLowestSetBit();if(r<=0)return!1;for(var n=t.shiftRight(r),i=Fv(),o,s=0;s<e;++s){do o=new N(this.bitLength(),i);while(o.compareTo(N.ONE)<=0||o.compareTo(t)>=0);var a=o.modPow(n,this);if(a.compareTo(N.ONE)!=0&&a.compareTo(t)!=0){for(var c=1;c++<r&&a.compareTo(t)!=0;)if(a=a.modPowInt(2,this),a.compareTo(N.ONE)==0)return!1;if(a.compareTo(t)!=0)return!1}}return!0}function Fv(){return{nextBytes:function(e){for(var t=0;t<e.length;++t)e[t]=Math.floor(Math.random()*256)}}}N.prototype.chunkSize=Kw;N.prototype.toRadix=Vw;N.prototype.fromRadix=qw;N.prototype.fromNumber=Hw;N.prototype.bitwiseTo=Yw;N.prototype.changeBit=cv;N.prototype.addTo=hv;N.prototype.dMultiply=bv;N.prototype.dAddOffset=wv;N.prototype.multiplyLowerTo=Cv;N.prototype.multiplyUpperTo=Av;N.prototype.modInt=Lv;N.prototype.millerRabin=Ov;N.prototype.clone=Pw;N.prototype.intValue=Uw;N.prototype.byteValue=Ow;N.prototype.shortValue=Fw;N.prototype.signum=Mw;N.prototype.toByteArray=zw;N.prototype.equals=Gw;N.prototype.min=Ww;N.prototype.max=$w;N.prototype.and=Xw;N.prototype.or=Qw;N.prototype.xor=jw;N.prototype.andNot=Jw;N.prototype.not=ev;N.prototype.shiftLeft=tv;N.prototype.shiftRight=rv;N.prototype.getLowestSetBit=iv;N.prototype.bitCount=sv;N.prototype.testBit=av;N.prototype.setBit=uv;N.prototype.clearBit=fv;N.prototype.flipBit=lv;N.prototype.add=dv;N.prototype.subtract=pv;N.prototype.multiply=yv;N.prototype.divide=gv;N.prototype.remainder=mv;N.prototype.divideAndRemainder=xv;N.prototype.modPow=kv;N.prototype.modInverse=Nv;N.prototype.pow=Sv;N.prototype.gcd=Rv;N.prototype.isProbablePrime=Uv});var cp=Y((KB,ap)=>{var er=we();mn();Ve();var op=ap.exports=er.sha1=er.sha1||{};er.md.sha1=er.md.algorithms.sha1=op;op.create=function(){sp||Kv();var e=null,t=er.util.createBuffer(),r=new Array(80),n={algorithm:"sha1",blockLength:64,digestLength:20,messageLength:0,fullMessageLength:null,messageLengthSize:8};return n.start=function(){n.messageLength=0,n.fullMessageLength=n.messageLength64=[];for(var i=n.messageLengthSize/4,o=0;o<i;++o)n.fullMessageLength.push(0);return t=er.util.createBuffer(),e={h0:1732584193,h1:4023233417,h2:2562383102,h3:271733878,h4:3285377520},n},n.start(),n.update=function(i,o){o==="utf8"&&(i=er.util.encodeUtf8(i));var s=i.length;n.messageLength+=s,s=[s/4294967296>>>0,s>>>0];for(var a=n.fullMessageLength.length-1;a>=0;--a)n.fullMessageLength[a]+=s[1],s[1]=s[0]+(n.fullMessageLength[a]/4294967296>>>0),n.fullMessageLength[a]=n.fullMessageLength[a]>>>0,s[0]=s[1]/4294967296>>>0;return t.putBytes(i),ip(e,r,t),(t.read>2048||t.length()===0)&&t.compact(),n},n.digest=function(){var i=er.util.createBuffer();i.putBytes(t.bytes());var o=n.fullMessageLength[n.fullMessageLength.length-1]+n.messageLengthSize,s=o&n.blockLength-1;i.putBytes(U0.substr(0,n.blockLength-s));for(var a,c,u=n.fullMessageLength[0]*8,f=0;f<n.fullMessageLength.length-1;++f)a=n.fullMessageLength[f+1]*8,c=a/4294967296>>>0,u+=c,i.putInt32(u>>>0),u=a>>>0;i.putInt32(u);var l={h0:e.h0,h1:e.h1,h2:e.h2,h3:e.h3,h4:e.h4};ip(l,r,i);var h=er.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 U0=null,sp=!1;function Kv(){U0=String.fromCharCode(128),U0+=er.util.fillString(String.fromCharCode(0),64),sp=!0}function ip(e,t,r){for(var n,i,o,s,a,c,u,f,l=r.length();l>=64;){for(i=e.h0,o=e.h1,s=e.h2,a=e.h3,c=e.h4,f=0;f<16;++f)n=r.getInt32(),t[f]=n,u=a^o&(s^a),n=(i<<5|i>>>27)+u+c+1518500249+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;for(;f<20;++f)n=t[f-3]^t[f-8]^t[f-14]^t[f-16],n=n<<1|n>>>31,t[f]=n,u=a^o&(s^a),n=(i<<5|i>>>27)+u+c+1518500249+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;for(;f<32;++f)n=t[f-3]^t[f-8]^t[f-14]^t[f-16],n=n<<1|n>>>31,t[f]=n,u=o^s^a,n=(i<<5|i>>>27)+u+c+1859775393+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;for(;f<40;++f)n=t[f-6]^t[f-16]^t[f-28]^t[f-32],n=n<<2|n>>>30,t[f]=n,u=o^s^a,n=(i<<5|i>>>27)+u+c+1859775393+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;for(;f<60;++f)n=t[f-6]^t[f-16]^t[f-28]^t[f-32],n=n<<2|n>>>30,t[f]=n,u=o&s|a&(o^s),n=(i<<5|i>>>27)+u+c+2400959708+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;for(;f<80;++f)n=t[f-6]^t[f-16]^t[f-28]^t[f-32],n=n<<2|n>>>30,t[f]=n,u=o^s^a,n=(i<<5|i>>>27)+u+c+3395469782+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;e.h0=e.h0+i|0,e.h1=e.h1+o|0,e.h2=e.h2+s|0,e.h3=e.h3+a|0,e.h4=e.h4+c|0,l-=64}}});var lp=Y((MB,fp)=>{var tr=we();Ve();$i();cp();var up=fp.exports=tr.pkcs1=tr.pkcs1||{};up.encode_rsa_oaep=function(e,t,r){var n,i,o,s;typeof r=="string"?(n=r,i=arguments[3]||void 0,o=arguments[4]||void 0):r&&(n=r.label||void 0,i=r.seed||void 0,o=r.md||void 0,r.mgf1&&r.mgf1.md&&(s=r.mgf1.md)),o?o.start():o=tr.md.sha1.create(),s||(s=o);var a=Math.ceil(e.n.bitLength()/8),c=a-2*o.digestLength-2;if(t.length>c){var u=new Error("RSAES-OAEP input message length is too long.");throw u.length=t.length,u.maxLength=c,u}n||(n=""),o.update(n,"raw");for(var f=o.digest(),l="",h=c-t.length,y=0;y<h;y++)l+="\0";var d=f.getBytes()+l+""+t;if(!i)i=tr.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=Fs(i,a-o.digestLength-1,s),g=tr.util.xorBytes(d,p,d.length),m=Fs(g,o.digestLength,s),v=tr.util.xorBytes(i,m,i.length);return"\0"+v+g};up.decode_rsa_oaep=function(e,t,r){var n,i,o;typeof r=="string"?(n=r,i=arguments[3]||void 0):r&&(n=r.label||void 0,i=r.md||void 0,r.mgf1&&r.mgf1.md&&(o=r.mgf1.md));var s=Math.ceil(e.n.bitLength()/8);if(t.length!==s){var g=new Error("RSAES-OAEP encoded message length is invalid.");throw g.length=t.length,g.expectedLength=s,g}if(i===void 0?i=tr.md.sha1.create():i.start(),o||(o=i),s<2*i.digestLength+2)throw new Error("RSAES-OAEP key is too short for the hash function.");n||(n=""),i.update(n,"raw");for(var a=i.digest().getBytes(),c=t.charAt(0),u=t.substring(1,i.digestLength+1),f=t.substring(1+i.digestLength),l=Fs(f,i.digestLength,o),h=tr.util.xorBytes(u,l,u.length),y=Fs(h,s-i.digestLength-1,o),d=tr.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 v=1,x=i.digestLength,A=i.digestLength;A<d.length;A++){var w=d.charCodeAt(A),E=w&1^1,D=v?65534:0;g|=w&D,v=v&E,x+=v}if(g||d.charCodeAt(x)!==1)throw new Error("Invalid RSAES-OAEP padding.");return d.substring(x+1)};function Fs(e,t,r){r||(r=tr.md.sha1.create());for(var n="",i=Math.ceil(t/r.digestLength),o=0;o<i;++o){var s=String.fromCharCode(o>>24&255,o>>16&255,o>>8&255,o&255);r.start(),r.update(e+s),n+=r.digest().getBytes()}return n.substring(0,t)}});var hp=Y((VB,O0)=>{var Hr=we();Ve();Os();$i();(function(){if(Hr.prime){O0.exports=Hr.prime;return}var e=O0.exports=Hr.prime=Hr.prime||{},t=Hr.jsbn.BigInteger,r=[6,4,2,4,2,4,6,2],n=new t(null);n.fromInt(30);var i=function(l,h){return l|h};e.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||Hr.random,g={nextBytes:function(m){for(var v=p.getBytesSync(m.length),x=0;x<m.length;++x)m[x]=v.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 v=10;"maxBlockTime"in y&&(v=y.maxBlockTime),a(p,l,h,g,m,v,d)}function a(l,h,y,d,p,g,m){var v=+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-v<g);Hr.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,v=m*30/8,x=y.workerScript||"forge/prime.worker.js";if(g===-1)return Hr.util.estimateCores(function(w,E){w&&(E=2),g=E-1,A()});A();function A(){g=Math.max(1,g);for(var w=[],E=0;E<g;++E)w[E]=new Worker(x);for(var D=g,E=0;E<g;++E)w[E].addEventListener("message",R);var B=!1;function R(F){if(!B){--D;var O=F.data;if(O.found){for(var K=0;K<w.length;++K)w[K].terminate();return B=!0,d(null,new t(O.prime,16))}p.bitLength()>l&&(p=u(l,h));var q=p.toString(16);F.target.postMessage({hex:q,workLoad:m}),p.dAddOffset(v,0)}}}}function u(l,h){var y=new t(l,h),d=l-1;return y.testBit(d)||y.bitwiseTo(t.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 Ms=Y((qB,bp)=>{var Z=we();Wi();Os();Cs();lp();hp();$i();Ve();typeof ce>"u"&&(ce=Z.jsbn.BigInteger);var ce,F0=Z.util.isNodejs?ks():null,C=Z.asn1,At=Z.util;Z.pki=Z.pki||{};bp.exports=Z.pki.rsa=Z.rsa=Z.rsa||{};var te=Z.pki,Mv=[6,4,2,4,2,4,6,2],Vv={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"}]},qv={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"}]},Hv={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"}]},zv=Z.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"}]}]},Gv={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"}]},Wv=function(e){var t;if(e.algorithm in te.oids)t=te.oids[e.algorithm];else{var r=new Error("Unknown message digest algorithm.");throw r.algorithm=e.algorithm,r}var n=C.oidToDer(t).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,e.digest().getBytes());return i.value.push(o),i.value.push(s),C.toDer(i).getBytes()},mp=function(e,t,r){if(r)return e.modPow(t.e,t.n);if(!t.p||!t.q)return e.modPow(t.d,t.n);t.dP||(t.dP=t.d.mod(t.p.subtract(ce.ONE))),t.dQ||(t.dQ=t.d.mod(t.q.subtract(ce.ONE))),t.qInv||(t.qInv=t.q.modInverse(t.p));var n;do n=new ce(Z.util.bytesToHex(Z.random.getBytes(t.n.bitLength()/8)),16);while(n.compareTo(t.n)>=0||!n.gcd(t.n).equals(ce.ONE));e=e.multiply(n.modPow(t.e,t.n)).mod(t.n);for(var i=e.mod(t.p).modPow(t.dP,t.p),o=e.mod(t.q).modPow(t.dQ,t.q);i.compareTo(o)<0;)i=i.add(t.p);var s=i.subtract(o).multiply(t.qInv).mod(t.p).multiply(t.q).add(o);return s=s.multiply(n.modInverse(t.n)).mod(t.n),s};te.rsa.encrypt=function(e,t,r){var n=r,i,o=Math.ceil(t.n.bitLength()/8);r!==!1&&r!==!0?(n=r===2,i=xp(e,t,r)):(i=Z.util.createBuffer(),i.putBytes(e));for(var s=new ce(i.toHex(),16),a=mp(s,t,n),c=a.toString(16),u=Z.util.createBuffer(),f=o-Math.ceil(c.length/2);f>0;)u.putByte(0),--f;return u.putBytes(Z.util.hexToBytes(c)),u.getBytes()};te.rsa.decrypt=function(e,t,r,n){var i=Math.ceil(t.n.bitLength()/8);if(e.length!==i){var o=new Error("Encrypted message length is invalid.");throw o.length=e.length,o.expected=i,o}var s=new ce(Z.util.createBuffer(e).toHex(),16);if(s.compareTo(t.n)>=0)throw new Error("Encrypted message is invalid.");for(var a=mp(s,t,r),c=a.toString(16),u=Z.util.createBuffer(),f=i-Math.ceil(c.length/2);f>0;)u.putByte(0),--f;return u.putBytes(Z.util.hexToBytes(c)),n!==!1?Ks(u.getBytes(),t,r):u.getBytes()};te.rsa.createKeyPairGenerationState=function(e,t,r){typeof e=="string"&&(e=parseInt(e,10)),e=e||2048,r=r||{};var n=r.prng||Z.random,i={nextBytes:function(a){for(var c=n.getBytesSync(a.length),u=0;u<a.length;++u)a[u]=c.charCodeAt(u)}},o=r.algorithm||"PRIMEINC",s;if(o==="PRIMEINC")s={algorithm:o,state:0,bits:e,rng:i,eInt:t||65537,e:new ce(null),p:null,q:null,qBits:e>>1,pBits:e-(e>>1),pqState:0,num:null,keys:null},s.e.fromInt(s.eInt);else throw new Error("Invalid key generation algorithm: "+o);return s};te.rsa.stepKeyPairGenerationState=function(e,t){"algorithm"in e||(e.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;e.keys===null&&(t<=0||a<t);){if(e.state===0){var c=e.p===null?e.pBits:e.qBits,u=c-1;e.pqState===0?(e.num=new ce(c,e.rng),e.num.testBit(u)||e.num.bitwiseTo(ce.ONE.shiftLeft(u),i,e.num),e.num.dAddOffset(31-e.num.mod(r).byteValue(),0),n=0,++e.pqState):e.pqState===1?e.num.bitLength()>c?e.pqState=0:e.num.isProbablePrime(Yv(e.num.bitLength()))?++e.pqState:e.num.dAddOffset(Mv[n++%8],0):e.pqState===2?e.pqState=e.num.subtract(ce.ONE).gcd(e.e).compareTo(ce.ONE)===0?3:0:e.pqState===3&&(e.pqState=0,e.p===null?e.p=e.num:e.q=e.num,e.p!==null&&e.q!==null&&++e.state,e.num=null)}else if(e.state===1)e.p.compareTo(e.q)<0&&(e.num=e.p,e.p=e.q,e.q=e.num),++e.state;else if(e.state===2)e.p1=e.p.subtract(ce.ONE),e.q1=e.q.subtract(ce.ONE),e.phi=e.p1.multiply(e.q1),++e.state;else if(e.state===3)e.phi.gcd(e.e).compareTo(ce.ONE)===0?++e.state:(e.p=null,e.q=null,e.state=0);else if(e.state===4)e.n=e.p.multiply(e.q),e.n.bitLength()===e.bits?++e.state:(e.q=null,e.state=0);else if(e.state===5){var f=e.e.modInverse(e.phi);e.keys={privateKey:te.rsa.setPrivateKey(e.n,e.e,f,e.p,e.q,f.mod(e.p1),f.mod(e.q1),e.q.modInverse(e.p)),publicKey:te.rsa.setPublicKey(e.n,e.e)}}s=+new Date,a+=s-o,o=s}return e.keys!==null};te.rsa.generateKeyPair=function(e,t,r,n){if(arguments.length===1?typeof e=="object"?(r=e,e=void 0):typeof e=="function"&&(n=e,e=void 0):arguments.length===2?typeof e=="number"?typeof t=="function"?(n=t,t=void 0):typeof t!="number"&&(r=t,t=void 0):(r=e,n=t,e=void 0,t=void 0):arguments.length===3&&(typeof t=="number"?typeof r=="function"&&(n=r,r=void 0):(n=r,r=t,t=void 0)),r=r||{},e===void 0&&(e=r.bits||2048),t===void 0&&(t=r.e||65537),!Z.options.usePureJavaScript&&!r.prng&&e>=256&&e<=16384&&(t===65537||t===3)){if(n){if(dp("generateKeyPair"))return F0.generateKeyPair("rsa",{modulusLength:e,publicExponent:t,publicKeyEncoding:{type:"spki",format:"pem"},privateKeyEncoding:{type:"pkcs8",format:"pem"}},function(a,c,u){if(a)return n(a);n(null,{privateKey:te.privateKeyFromPem(u),publicKey:te.publicKeyFromPem(c)})});if(pp("generateKey")&&pp("exportKey"))return At.globalScope.crypto.subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:e,publicExponent:gp(t),hash:{name:"SHA-256"}},!0,["sign","verify"]).then(function(a){return At.globalScope.crypto.subtle.exportKey("pkcs8",a.privateKey)}).then(void 0,function(a){n(a)}).then(function(a){if(a){var c=te.privateKeyFromAsn1(C.fromDer(Z.util.createBuffer(a)));n(null,{privateKey:c,publicKey:te.setRsaPublicKey(c.n,c.e)})}});if(yp("generateKey")&&yp("exportKey")){var i=At.globalScope.msCrypto.subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:e,publicExponent:gp(t),hash:{name:"SHA-256"}},!0,["sign","verify"]);i.oncomplete=function(a){var c=a.target.result,u=At.globalScope.msCrypto.subtle.exportKey("pkcs8",c.privateKey);u.oncomplete=function(f){var l=f.target.result,h=te.privateKeyFromAsn1(C.fromDer(Z.util.createBuffer(l)));n(null,{privateKey:h,publicKey:te.setRsaPublicKey(h.n,h.e)})},u.onerror=function(f){n(f)}},i.onerror=function(a){n(a)};return}}else if(dp("generateKeyPairSync")){var o=F0.generateKeyPairSync("rsa",{modulusLength:e,publicExponent:t,publicKeyEncoding:{type:"spki",format:"pem"},privateKeyEncoding:{type:"pkcs8",format:"pem"}});return{privateKey:te.privateKeyFromPem(o.privateKey),publicKey:te.publicKeyFromPem(o.publicKey)}}}var s=te.rsa.createKeyPairGenerationState(e,t,r);if(!n)return te.rsa.stepKeyPairGenerationState(s,0),s.keys;$v(s,r,n)};te.setRsaPublicKey=te.rsa.setPublicKey=function(e,t){var r={n:e,e:t};return r.encrypt=function(n,i,o){if(typeof i=="string"?i=i.toUpperCase():i===void 0&&(i="RSAES-PKCS1-V1_5"),i==="RSAES-PKCS1-V1_5")i={encode:function(a,c,u){return xp(a,c,2).getBytes()}};else if(i==="RSA-OAEP"||i==="RSAES-OAEP")i={encode:function(a,c){return Z.pkcs1.encode_rsa_oaep(c,a,o)}};else if(["RAW","NONE","NULL",null].indexOf(i)!==-1)i={encode:function(a){return a}};else if(typeof i=="string")throw new Error('Unsupported encryption scheme: "'+i+'".');var s=i.encode(n,r,!0);return te.rsa.encrypt(s,r,!0)},r.verify=function(n,i,o,s){typeof o=="string"?o=o.toUpperCase():o===void 0&&(o="RSASSA-PKCS1-V1_5"),s===void 0&&(s={_parseAllDigestBytes:!0}),"_parseAllDigestBytes"in s||(s._parseAllDigestBytes=!0),o==="RSASSA-PKCS1-V1_5"?o={verify:function(c,u){u=Ks(u,r,!0);var f=C.fromDer(u,{parseAllBytes:s._parseAllDigestBytes}),l={},h=[];if(!C.validate(f,Gv,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===Z.oids.md2||d===Z.oids.md5||d===Z.oids.sha1||d===Z.oids.sha224||d===Z.oids.sha256||d===Z.oids.sha384||d===Z.oids.sha512||d===Z.oids["sha512-224"]||d===Z.oids["sha512-256"])){var y=new Error("Unknown RSASSA-PKCS1-v1_5 DigestAlgorithm identifier.");throw y.oid=d,y}if((d===Z.oids.md2||d===Z.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=Ks(u,r,!0),c===u}});var a=te.rsa.decrypt(i,r,!0,!1);return o.verify(n,a,r.n.bitLength())},r};te.setRsaPrivateKey=te.rsa.setPrivateKey=function(e,t,r,n,i,o,s,a){var c={n:e,e:t,d:r,p:n,q:i,dP:o,dQ:s,qInv:a};return c.decrypt=function(u,f,l){typeof f=="string"?f=f.toUpperCase():f===void 0&&(f="RSAES-PKCS1-V1_5");var h=te.rsa.decrypt(u,c,!1,!1);if(f==="RSAES-PKCS1-V1_5")f={decode:Ks};else if(f==="RSA-OAEP"||f==="RSAES-OAEP")f={decode:function(y,d){return Z.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:Wv},l=1):(f==="NONE"||f==="NULL"||f===null)&&(f={encode:function(){return u}},l=1);var h=f.encode(u,c.n.bitLength());return te.rsa.encrypt(h,c,l)},c};te.wrapRsaPrivateKey=function(e){return C.create(C.Class.UNIVERSAL,C.Type.SEQUENCE,!0,[C.create(C.Class.UNIVERSAL,C.Type.INTEGER,!1,C.integerToDer(0).getBytes()),C.create(C.Class.UNIVERSAL,C.Type.SEQUENCE,!0,[C.create(C.Class.UNIVERSAL,C.Type.OID,!1,C.oidToDer(te.oids.rsaEncryption).getBytes()),C.create(C.Class.UNIVERSAL,C.Type.NULL,!1,"")]),C.create(C.Class.UNIVERSAL,C.Type.OCTETSTRING,!1,C.toDer(e).getBytes())])};te.privateKeyFromAsn1=function(e){var t={},r=[];if(C.validate(e,Vv,t,r)&&(e=C.fromDer(Z.util.createBuffer(t.privateKey))),t={},r=[],!C.validate(e,qv,t,r)){var n=new Error("Cannot read private key. ASN.1 object does not contain an RSAPrivateKey.");throw n.errors=r,n}var i,o,s,a,c,u,f,l;return i=Z.util.createBuffer(t.privateKeyModulus).toHex(),o=Z.util.createBuffer(t.privateKeyPublicExponent).toHex(),s=Z.util.createBuffer(t.privateKeyPrivateExponent).toHex(),a=Z.util.createBuffer(t.privateKeyPrime1).toHex(),c=Z.util.createBuffer(t.privateKeyPrime2).toHex(),u=Z.util.createBuffer(t.privateKeyExponent1).toHex(),f=Z.util.createBuffer(t.privateKeyExponent2).toHex(),l=Z.util.createBuffer(t.privateKeyCoefficient).toHex(),te.setRsaPrivateKey(new ce(i,16),new ce(o,16),new ce(s,16),new ce(a,16),new ce(c,16),new ce(u,16),new ce(f,16),new ce(l,16))};te.privateKeyToAsn1=te.privateKeyToRSAPrivateKey=function(e){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,rr(e.n)),C.create(C.Class.UNIVERSAL,C.Type.INTEGER,!1,rr(e.e)),C.create(C.Class.UNIVERSAL,C.Type.INTEGER,!1,rr(e.d)),C.create(C.Class.UNIVERSAL,C.Type.INTEGER,!1,rr(e.p)),C.create(C.Class.UNIVERSAL,C.Type.INTEGER,!1,rr(e.q)),C.create(C.Class.UNIVERSAL,C.Type.INTEGER,!1,rr(e.dP)),C.create(C.Class.UNIVERSAL,C.Type.INTEGER,!1,rr(e.dQ)),C.create(C.Class.UNIVERSAL,C.Type.INTEGER,!1,rr(e.qInv))])};te.publicKeyFromAsn1=function(e){var t={},r=[];if(C.validate(e,zv,t,r)){var n=C.derToOid(t.publicKeyOid);if(n!==te.oids.rsaEncryption){var i=new Error("Cannot read public key. Unknown OID.");throw i.oid=n,i}e=t.rsaPublicKey}if(r=[],!C.validate(e,Hv,t,r)){var i=new Error("Cannot read public key. ASN.1 object does not contain an RSAPublicKey.");throw i.errors=r,i}var o=Z.util.createBuffer(t.publicKeyModulus).toHex(),s=Z.util.createBuffer(t.publicKeyExponent).toHex();return te.setRsaPublicKey(new ce(o,16),new ce(s,16))};te.publicKeyToAsn1=te.publicKeyToSubjectPublicKeyInfo=function(e){return C.create(C.Class.UNIVERSAL,C.Type.SEQUENCE,!0,[C.create(C.Class.UNIVERSAL,C.Type.SEQUENCE,!0,[C.create(C.Class.UNIVERSAL,C.Type.OID,!1,C.oidToDer(te.oids.rsaEncryption).getBytes()),C.create(C.Class.UNIVERSAL,C.Type.NULL,!1,"")]),C.create(C.Class.UNIVERSAL,C.Type.BITSTRING,!1,[te.publicKeyToRSAPublicKey(e)])])};te.publicKeyToRSAPublicKey=function(e){return C.create(C.Class.UNIVERSAL,C.Type.SEQUENCE,!0,[C.create(C.Class.UNIVERSAL,C.Type.INTEGER,!1,rr(e.n)),C.create(C.Class.UNIVERSAL,C.Type.INTEGER,!1,rr(e.e))])};function xp(e,t,r){var n=Z.util.createBuffer(),i=Math.ceil(t.n.bitLength()/8);if(e.length>i-11){var o=new Error("Message is too long for PKCS#1 v1.5 padding.");throw o.length=e.length,o.max=i-11,o}n.putByte(0),n.putByte(r);var s=i-3-e.length,a;if(r===0||r===1){a=r===0?0:255;for(var c=0;c<s;++c)n.putByte(a)}else for(;s>0;){for(var u=0,f=Z.random.getBytes(s),c=0;c<s;++c)a=f.charCodeAt(c),a===0?++u:n.putByte(a);s=u}return n.putByte(0),n.putBytes(e),n}function Ks(e,t,r,n){var i=Math.ceil(t.n.bitLength()/8),o=Z.util.createBuffer(e),s=o.getByte(),a=o.getByte();if(s!==0||r&&a!==0&&a!==1||!r&&a!=2||r&&a===0&&typeof n>"u")throw new Error("Encryption block is invalid.");var c=0;if(a===0){c=i-3-n;for(var u=0;u<c;++u)if(o.getByte()!==0)throw new Error("Encryption block is invalid.")}else if(a===1)for(c=0;o.length()>1;){if(o.getByte()!==255){--o.read;break}++c}else if(a===2)for(c=0;o.length()>1;){if(o.getByte()===0){--o.read;break}++c}var f=o.getByte();if(f!==0||c!==i-3-o.length())throw new Error("Encryption block is invalid.");return o.getBytes()}function $v(e,t,r){typeof t=="function"&&(r=t,t={}),t=t||{};var n={algorithm:{name:t.algorithm||"PRIMEINC",options:{workers:t.workers||2,workLoad:t.workLoad||100,workerScript:t.workerScript}}};"prng"in t&&(n.prng=t.prng),i();function i(){o(e.pBits,function(a,c){if(a)return r(a);if(e.p=c,e.q!==null)return s(a,e.q);o(e.qBits,s)})}function o(a,c){Z.prime.generateProbablePrime(a,n,c)}function s(a,c){if(a)return r(a);if(e.q=c,e.p.compareTo(e.q)<0){var u=e.p;e.p=e.q,e.q=u}if(e.p.subtract(ce.ONE).gcd(e.e).compareTo(ce.ONE)!==0){e.p=null,i();return}if(e.q.subtract(ce.ONE).gcd(e.e).compareTo(ce.ONE)!==0){e.q=null,o(e.qBits,s);return}if(e.p1=e.p.subtract(ce.ONE),e.q1=e.q.subtract(ce.ONE),e.phi=e.p1.multiply(e.q1),e.phi.gcd(e.e).compareTo(ce.ONE)!==0){e.p=e.q=null,i();return}if(e.n=e.p.multiply(e.q),e.n.bitLength()!==e.bits){e.q=null,o(e.qBits,s);return}var f=e.e.modInverse(e.phi);e.keys={privateKey:te.rsa.setPrivateKey(e.n,e.e,f,e.p,e.q,f.mod(e.p1),f.mod(e.q1),e.q.modInverse(e.p)),publicKey:te.rsa.setPublicKey(e.n,e.e)},r(null,e.keys)}}function rr(e){var t=e.toString(16);t[0]>="8"&&(t="00"+t);var r=Z.util.hexToBytes(t);return r.length>1&&(r.charCodeAt(0)===0&&!(r.charCodeAt(1)&128)||r.charCodeAt(0)===255&&(r.charCodeAt(1)&128)===128)?r.substr(1):r}function Yv(e){return e<=100?27:e<=150?18:e<=200?15:e<=250?12:e<=300?9:e<=350?8:e<=400?7:e<=500?6:e<=600?5:e<=800?4:e<=1250?3:2}function dp(e){return Z.util.isNodejs&&typeof F0[e]=="function"}function pp(e){return typeof At.globalScope<"u"&&typeof At.globalScope.crypto=="object"&&typeof At.globalScope.crypto.subtle=="object"&&typeof At.globalScope.crypto.subtle[e]=="function"}function yp(e){return typeof At.globalScope<"u"&&typeof At.globalScope.msCrypto=="object"&&typeof At.globalScope.msCrypto.subtle=="object"&&typeof At.globalScope.msCrypto.subtle[e]=="function"}function gp(e){for(var t=Z.util.hexToBytes(e.toString(16)),r=new Uint8Array(t.length),n=0;n<t.length;++n)r[n]=t.charCodeAt(n);return r}});var Ap=Y((HB,Cp)=>{var G=we();T0();Wi();Td();mn();Cs();Nd();Od();$i();Zd();Ms();Ve();typeof wp>"u"&&(wp=G.jsbn.BigInteger);var wp,T=G.asn1,ie=G.pki=G.pki||{};Cp.exports=ie.pbe=G.pbe=G.pbe||{};var wn=ie.oids,Zv={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"}]},Xv={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"}]}]},Qv={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(e,t,r){r=r||{},r.saltSize=r.saltSize||8,r.count=r.count||2048,r.algorithm=r.algorithm||"aes128",r.prfAlgorithm=r.prfAlgorithm||"sha1";var n=G.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=wn["aes128-CBC"],l=G.aes.createEncryptionCipher;break;case"aes192":s=24,u=16,f=wn["aes192-CBC"],l=G.aes.createEncryptionCipher;break;case"aes256":s=32,u=16,f=wn["aes256-CBC"],l=G.aes.createEncryptionCipher;break;case"des":s=8,u=8,f=wn.desCBC,l=G.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=Sp(y),p=G.pkcs5.pbkdf2(t,n,i,s,d),g=G.random.getBytesSync(u),m=l(p);m.start(g),m.update(T.toDer(e)),m.finish(),c=m.output.getBytes();var v=jv(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(wn.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(wn.pkcs5PBKDF2).getBytes()),v]),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 G.util.ByteBuffer(n),p=ie.pbe.generatePkcs12Key(t,x,1,i,s),g=ie.pbe.generatePkcs12Key(t,x,2,i,s),m=G.des.createEncryptionCipher(p);m.start(g),m.update(T.toDer(e)),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(wn["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 A=T.create(T.Class.UNIVERSAL,T.Type.SEQUENCE,!0,[a,T.create(T.Class.UNIVERSAL,T.Type.OCTETSTRING,!1,c)]);return A};ie.decryptPrivateKeyInfo=function(e,t){var r=null,n={},i=[];if(!T.validate(e,Zv,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,t),c=G.util.createBuffer(n.encryptedData);return a.update(c),a.finish()&&(r=T.fromDer(a.output)),r};ie.encryptedPrivateKeyToPem=function(e,t){var r={type:"ENCRYPTED PRIVATE KEY",body:T.toDer(e).getBytes()};return G.pem.encode(r,{maxline:t})};ie.encryptedPrivateKeyFromPem=function(e){var t=G.pem.decode(e)[0];if(t.type!=="ENCRYPTED PRIVATE KEY"){var r=new Error('Could not convert encrypted private key from PEM; PEM header type is "ENCRYPTED PRIVATE KEY".');throw r.headerType=t.type,r}if(t.procType&&t.procType.type==="ENCRYPTED")throw new Error("Could not convert encrypted private key from PEM; PEM is encrypted.");return T.fromDer(t.body)};ie.encryptRsaPrivateKey=function(e,t,r){if(r=r||{},!r.legacy){var n=ie.wrapRsaPrivateKey(ie.privateKeyToAsn1(e));return n=ie.encryptPrivateKeyInfo(n,t,r),ie.encryptedPrivateKeyToPem(n)}var i,o,s,a;switch(r.algorithm){case"aes128":i="AES-128-CBC",s=16,o=G.random.getBytesSync(16),a=G.aes.createEncryptionCipher;break;case"aes192":i="AES-192-CBC",s=24,o=G.random.getBytesSync(16),a=G.aes.createEncryptionCipher;break;case"aes256":i="AES-256-CBC",s=32,o=G.random.getBytesSync(16),a=G.aes.createEncryptionCipher;break;case"3des":i="DES-EDE3-CBC",s=24,o=G.random.getBytesSync(8),a=G.des.createEncryptionCipher;break;case"des":i="DES-CBC",s=8,o=G.random.getBytesSync(8),a=G.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=G.pbe.opensslDeriveBytes(t,o.substr(0,8),s),f=a(u);f.start(o),f.update(T.toDer(ie.privateKeyToAsn1(e))),f.finish();var l={type:"RSA PRIVATE KEY",procType:{version:"4",type:"ENCRYPTED"},dekInfo:{algorithm:i,parameters:G.util.bytesToHex(o).toUpperCase()},body:f.output.getBytes()};return G.pem.encode(l)};ie.decryptRsaPrivateKey=function(e,t){var r=null,n=G.pem.decode(e)[0];if(n.type!=="ENCRYPTED PRIVATE KEY"&&n.type!=="PRIVATE KEY"&&n.type!=="RSA PRIVATE KEY"){var i=new Error('Could not convert private key from PEM; PEM header type is not "ENCRYPTED PRIVATE KEY", "PRIVATE KEY", or "RSA PRIVATE KEY".');throw i.headerType=i,i}if(n.procType&&n.procType.type==="ENCRYPTED"){var o,s;switch(n.dekInfo.algorithm){case"DES-CBC":o=8,s=G.des.createDecryptionCipher;break;case"DES-EDE3-CBC":o=24,s=G.des.createDecryptionCipher;break;case"AES-128-CBC":o=16,s=G.aes.createDecryptionCipher;break;case"AES-192-CBC":o=24,s=G.aes.createDecryptionCipher;break;case"AES-256-CBC":o=32,s=G.aes.createDecryptionCipher;break;case"RC2-40-CBC":o=5,s=function(l){return G.rc2.createDecryptionCipher(l,40)};break;case"RC2-64-CBC":o=8,s=function(l){return G.rc2.createDecryptionCipher(l,64)};break;case"RC2-128-CBC":o=16,s=function(l){return G.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=G.util.hexToBytes(n.dekInfo.parameters),c=G.pbe.opensslDeriveBytes(t,a.substr(0,8),o),u=s(c);if(u.start(a),u.update(G.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),t):r=T.fromDer(r),r!==null&&(r=ie.privateKeyFromAsn1(r)),r};ie.pbe.generatePkcs12Key=function(e,t,r,n,i,o){var s,a;if(typeof o>"u"||o===null){if(!("sha1"in G.md))throw new Error('"sha1" hash algorithm unavailable.');o=G.md.sha1.create()}var c=o.digestLength,u=o.blockLength,f=new G.util.ByteBuffer,l=new G.util.ByteBuffer;if(e!=null){for(a=0;a<e.length;a++)l.putInt16(e.charCodeAt(a));l.putInt16(0)}var h=l.length(),y=t.length(),d=new G.util.ByteBuffer;d.fillWithByte(r,u);var p=u*Math.ceil(y/u),g=new G.util.ByteBuffer;for(a=0;a<p;a++)g.putByte(t.at(a%y));var m=u*Math.ceil(h/u),v=new G.util.ByteBuffer;for(a=0;a<m;a++)v.putByte(l.at(a%h));var x=g;x.putBuffer(v);for(var A=Math.ceil(i/c),w=1;w<=A;w++){var E=new G.util.ByteBuffer;E.putBytes(d.bytes()),E.putBytes(x.bytes());for(var D=0;D<n;D++)o.start(),o.update(E.getBytes()),E=o.digest();var B=new G.util.ByteBuffer;for(a=0;a<u;a++)B.putByte(E.at(a%c));var R=Math.ceil(y/u)+Math.ceil(h/u),F=new G.util.ByteBuffer;for(s=0;s<R;s++){var O=new G.util.ByteBuffer(x.getBytes(u)),K=511;for(a=B.length()-1;a>=0;a--)K=K>>8,K+=B.at(a)+O.at(a),O.setAt(a,K&255);F.putBuffer(O)}x=F,f.putBuffer(E)}return f.truncate(f.length()-i),f};ie.pbe.getCipher=function(e,t,r){switch(e){case ie.oids.pkcs5PBES2:return ie.pbe.getCipherForPBES2(e,t,r);case ie.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:case ie.oids["pbewithSHAAnd40BitRC2-CBC"]:return ie.pbe.getCipherForPKCS12PBE(e,t,r);default:var n=new Error("Cannot read encrypted PBE data block. Unsupported OID.");throw n.oid=e,n.supportedOids=["pkcs5PBES2","pbeWithSHAAnd3-KeyTripleDES-CBC","pbewithSHAAnd40BitRC2-CBC"],n}};ie.pbe.getCipherForPBES2=function(e,t,r){var n={},i=[];if(!T.validate(t,Xv,n,i)){var o=new Error("Cannot read password-based-encryption algorithm parameters. ASN.1 object is not a supported EncryptedPrivateKeyInfo.");throw o.errors=i,o}if(e=T.derToOid(n.kdfOid),e!==ie.oids.pkcs5PBKDF2){var o=new Error("Cannot read encrypted private key. Unsupported key derivation function OID.");throw o.oid=e,o.supportedOids=["pkcs5PBKDF2"],o}if(e=T.derToOid(n.encOid),e!==ie.oids["aes128-CBC"]&&e!==ie.oids["aes192-CBC"]&&e!==ie.oids["aes256-CBC"]&&e!==ie.oids["des-EDE3-CBC"]&&e!==ie.oids.desCBC){var o=new Error("Cannot read encrypted private key. Unsupported encryption scheme OID.");throw o.oid=e,o.supportedOids=["aes128-CBC","aes192-CBC","aes256-CBC","des-EDE3-CBC","desCBC"],o}var s=n.kdfSalt,a=G.util.createBuffer(n.kdfIterationCount);a=a.getInt(a.length()<<3);var c,u;switch(ie.oids[e]){case"aes128-CBC":c=16,u=G.aes.createDecryptionCipher;break;case"aes192-CBC":c=24,u=G.aes.createDecryptionCipher;break;case"aes256-CBC":c=32,u=G.aes.createDecryptionCipher;break;case"des-EDE3-CBC":c=24,u=G.des.createDecryptionCipher;break;case"desCBC":c=8,u=G.des.createDecryptionCipher;break}var f=Ep(n.prfOid),l=G.pkcs5.pbkdf2(r,s,a,c,f),h=n.encIv,y=u(l);return y.start(h),y};ie.pbe.getCipherForPKCS12PBE=function(e,t,r){var n={},i=[];if(!T.validate(t,Qv,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=G.util.createBuffer(n.salt),a=G.util.createBuffer(n.iterations);a=a.getInt(a.length()<<3);var c,u,f;switch(e){case ie.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:c=24,u=8,f=G.des.startDecrypting;break;case ie.oids["pbewithSHAAnd40BitRC2-CBC"]:c=5,u=8,f=function(p,g){var m=G.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=e,o}var l=Ep(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(e,t,r,n){if(typeof n>"u"||n===null){if(!("md5"in G.md))throw new Error('"md5" hash algorithm unavailable.');n=G.md.md5.create()}t===null&&(t="");for(var i=[vp(n,e+t)],o=16,s=1;o<r;++s,o+=16)i.push(vp(n,i[s-1]+e+t));return i.join("").substr(0,r)};function vp(e,t){return e.start().update(t).digest().getBytes()}function Ep(e){var t;if(!e)t="hmacWithSHA1";else if(t=ie.oids[T.derToOid(e)],!t){var r=new Error("Unsupported PRF OID.");throw r.oid=e,r.supported=["hmacWithSHA1","hmacWithSHA224","hmacWithSHA256","hmacWithSHA384","hmacWithSHA512"],r}return Sp(t)}function Sp(e){var t=G.md;switch(e){case"hmacWithSHA224":t=G.md.sha512;case"hmacWithSHA1":case"hmacWithSHA256":case"hmacWithSHA384":case"hmacWithSHA512":e=e.substr(8).toLowerCase();break;default:var r=new Error("Unsupported PRF algorithm.");throw r.algorithm=e,r.supported=["hmacWithSHA1","hmacWithSHA224","hmacWithSHA256","hmacWithSHA384","hmacWithSHA512"],r}if(!t||!(e in t))throw new Error("Unknown hash algorithm: "+e);return t[e].create()}function jv(e,t,r,n){var i=T.create(T.Class.UNIVERSAL,T.Type.SEQUENCE,!0,[T.create(T.Class.UNIVERSAL,T.Type.OCTETSTRING,!1,e),T.create(T.Class.UNIVERSAL,T.Type.INTEGER,!1,t.getBytes())]);return n!=="hmacWithSHA1"&&i.value.push(T.create(T.Class.UNIVERSAL,T.Type.INTEGER,!1,G.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 Kp=Y((RI,Fp)=>{var De=we();mn();Ve();var Xi=Fp.exports=De.sha512=De.sha512||{};De.md.sha512=De.md.algorithms.sha512=Xi;var Up=De.sha384=De.sha512.sha384=De.sha512.sha384||{};Up.create=function(){return Xi.create("SHA-384")};De.md.sha384=De.md.algorithms.sha384=Up;De.sha512.sha256=De.sha512.sha256||{create:function(){return Xi.create("SHA-512/256")}};De.md["sha512/256"]=De.md.algorithms["sha512/256"]=De.sha512.sha256;De.sha512.sha224=De.sha512.sha224||{create:function(){return Xi.create("SHA-512/224")}};De.md["sha512/224"]=De.md.algorithms["sha512/224"]=De.sha512.sha224;Xi.create=function(e){if(Op||s8(),typeof e>"u"&&(e="SHA-512"),!(e in En))throw new Error("Invalid SHA-512 algorithm: "+e);for(var t=En[e],r=null,n=De.util.createBuffer(),i=new Array(80),o=0;o<80;++o)i[o]=new Array(2);var s=64;switch(e){case"SHA-384":s=48;break;case"SHA-512/256":s=32;break;case"SHA-512/224":s=28;break}var a={algorithm:e.replace("-","").toLowerCase(),blockLength:128,digestLength:s,messageLength:0,fullMessageLength:null,messageLengthSize:16};return a.start=function(){a.messageLength=0,a.fullMessageLength=a.messageLength128=[];for(var c=a.messageLengthSize/4,u=0;u<c;++u)a.fullMessageLength.push(0);n=De.util.createBuffer(),r=new Array(t.length);for(var u=0;u<t.length;++u)r[u]=t[u].slice(0);return a},a.start(),a.update=function(c,u){u==="utf8"&&(c=De.util.encodeUtf8(c));var f=c.length;a.messageLength+=f,f=[f/4294967296>>>0,f>>>0];for(var l=a.fullMessageLength.length-1;l>=0;--l)a.fullMessageLength[l]+=f[1],f[1]=f[0]+(a.fullMessageLength[l]/4294967296>>>0),a.fullMessageLength[l]=a.fullMessageLength[l]>>>0,f[0]=f[1]/4294967296>>>0;return n.putBytes(c),Pp(r,i,n),(n.read>2048||n.length()===0)&&n.compact(),a},a.digest=function(){var c=De.util.createBuffer();c.putBytes(n.bytes());var u=a.fullMessageLength[a.fullMessageLength.length-1]+a.messageLengthSize,f=u&a.blockLength-1;c.putBytes(H0.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);Pp(p,i,c);var g=De.util.createBuffer(),m;e==="SHA-512"?m=p.length:e==="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||e!=="SHA-512/224")&&g.putInt32(p[d][1]);return g},a};var H0=null,Op=!1,z0=null,En=null;function s8(){H0=String.fromCharCode(128),H0+=De.util.fillString(String.fromCharCode(0),128),z0=[[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]],En={},En["SHA-512"]=[[1779033703,4089235720],[3144134277,2227873595],[1013904242,4271175723],[2773480762,1595750129],[1359893119,2917565137],[2600822924,725511199],[528734635,4215389547],[1541459225,327033209]],En["SHA-384"]=[[3418070365,3238371032],[1654270250,914150663],[2438529370,812702999],[355462360,4144912697],[1731405415,4290775857],[2394180231,1750603025],[3675008525,1694076839],[1203062813,3204075428]],En["SHA-512/256"]=[[573645204,4230739756],[2673172387,3360449730],[596883563,1867755857],[2520282905,1497426621],[2519219938,2827943907],[3193839141,1401305490],[721525244,746961066],[246885852,2177182882]],En["SHA-512/224"]=[[2352822216,424955298],[1944164710,2312950998],[502970286,855612546],[1738396948,1479516111],[258812777,2077511080],[2011393907,79989058],[1067287976,1780299464],[286451373,2446758561]],Op=!0}function Pp(e,t,r){for(var n,i,o,s,a,c,u,f,l,h,y,d,p,g,m,v,x,A,w,E,D,B,R,F,O,K,q,j,I,L,_,k,S,U,M,H=r.length();H>=128;){for(I=0;I<16;++I)t[I][0]=r.getInt32()>>>0,t[I][1]=r.getInt32()>>>0;for(;I<80;++I)k=t[I-2],L=k[0],_=k[1],n=((L>>>19|_<<13)^(_>>>29|L<<3)^L>>>6)>>>0,i=((L<<13|_>>>19)^(_<<3|L>>>29)^(L<<26|_>>>6))>>>0,U=t[I-15],L=U[0],_=U[1],o=((L>>>1|_<<31)^(L>>>8|_<<24)^L>>>7)>>>0,s=((L<<31|_>>>1)^(L<<24|_>>>8)^(L<<25|_>>>7))>>>0,S=t[I-7],M=t[I-16],_=i+S[1]+s+M[1],t[I][0]=n+S[0]+o+M[0]+(_/4294967296>>>0)>>>0,t[I][1]=_>>>0;for(p=e[0][0],g=e[0][1],m=e[1][0],v=e[1][1],x=e[2][0],A=e[2][1],w=e[3][0],E=e[3][1],D=e[4][0],B=e[4][1],R=e[5][0],F=e[5][1],O=e[6][0],K=e[6][1],q=e[7][0],j=e[7][1],I=0;I<80;++I)u=((D>>>14|B<<18)^(D>>>18|B<<14)^(B>>>9|D<<23))>>>0,f=((D<<18|B>>>14)^(D<<14|B>>>18)^(B<<23|D>>>9))>>>0,l=(O^D&(R^O))>>>0,h=(K^B&(F^K))>>>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&v|A&(g^v))>>>0,_=j+f+h+z0[I][1]+t[I][1],n=q+u+l+z0[I][0]+t[I][0]+(_/4294967296>>>0)>>>0,i=_>>>0,_=c+d,o=a+y+(_/4294967296>>>0)>>>0,s=_>>>0,q=O,j=K,O=R,K=F,R=D,F=B,_=E+i,D=w+n+(_/4294967296>>>0)>>>0,B=_>>>0,w=x,E=A,x=m,A=v,m=p,v=g,_=i+s,p=n+o+(_/4294967296>>>0)>>>0,g=_>>>0;_=e[0][1]+g,e[0][0]=e[0][0]+p+(_/4294967296>>>0)>>>0,e[0][1]=_>>>0,_=e[1][1]+v,e[1][0]=e[1][0]+m+(_/4294967296>>>0)>>>0,e[1][1]=_>>>0,_=e[2][1]+A,e[2][0]=e[2][0]+x+(_/4294967296>>>0)>>>0,e[2][1]=_>>>0,_=e[3][1]+E,e[3][0]=e[3][0]+w+(_/4294967296>>>0)>>>0,e[3][1]=_>>>0,_=e[4][1]+B,e[4][0]=e[4][0]+D+(_/4294967296>>>0)>>>0,e[4][1]=_>>>0,_=e[5][1]+F,e[5][0]=e[5][0]+R+(_/4294967296>>>0)>>>0,e[5][1]=_>>>0,_=e[6][1]+K,e[6][0]=e[6][0]+O+(_/4294967296>>>0)>>>0,e[6][1]=_>>>0,_=e[7][1]+j,e[7][0]=e[7][0]+q+(_/4294967296>>>0)>>>0,e[7][1]=_>>>0,H-=128}}});var b1=Y((V_,x1)=>{"use strict";function L8(e){if(e.length>=255)throw new TypeError("Alphabet too long");for(var t=new Uint8Array(256),r=0;r<t.length;r++)t[r]=255;for(var n=0;n<e.length;n++){var i=e.charAt(n),o=i.charCodeAt(0);if(t[o]!==255)throw new TypeError(i+" is ambiguous");t[o]=n}var s=e.length,a=e.charAt(0),c=Math.log(s)/Math.log(256),u=Math.log(256)/Math.log(s);function f(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 v=(m-g)*u+1>>>0,x=new Uint8Array(v);g!==m;){for(var A=y[g],w=0,E=v-1;(A!==0||w<p)&&E!==-1;E--,w++)A+=256*x[E]>>>0,x[E]=A%s>>>0,A=A/s>>>0;if(A!==0)throw new Error("Non-zero carry");p=w,g++}for(var D=v-p;D!==v&&x[D]===0;)D++;for(var B=a.repeat(d);D<v;++D)B+=e.charAt(x[D]);return B}function l(y){if(typeof y!="string")throw new TypeError("Expected String");if(y.length===0)return new Uint8Array;var 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,v=new Uint8Array(m);y[d];){var x=t[y.charCodeAt(d)];if(x===255)return;for(var A=0,w=m-1;(x!==0||A<g)&&w!==-1;w--,A++)x+=s*v[w]>>>0,v[w]=x%256>>>0,x=x/256>>>0;if(x!==0)throw new Error("Non-zero carry");g=A,d++}if(y[d]!==" "){for(var E=m-g;E!==m&&v[E]===0;)E++;for(var D=new Uint8Array(p+(m-E)),B=p;E!==m;)D[B++]=v[E++];return D}}}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}}x1.exports=L8});var Qs=Y((q_,w1)=>{"use strict";var N8=new TextDecoder,P8=e=>N8.decode(e),U8=new TextEncoder,O8=e=>U8.encode(e);function F8(e,t){let r=new Uint8Array(t),n=0;for(let i of e)r.set(i,n),n+=i.length;return r}w1.exports={decodeText:P8,encodeText:O8,concat:F8}});var E1=Y((H_,v1)=>{"use strict";var{encodeText:K8}=Qs(),nu=class{constructor(t,r,n,i){this.name=t,this.code=r,this.codeBuf=K8(this.code),this.alphabet=i,this.codec=n(i)}encode(t){return this.codec.encode(t)}decode(t){for(let r of t)if(this.alphabet&&this.alphabet.indexOf(r)<0)throw new Error(`invalid character '${r}' in '${t}'`);return this.codec.decode(t)}};v1.exports=nu});var C1=Y((z_,S1)=>{"use strict";var M8=(e,t,r)=>{let n={};for(let u=0;u<t.length;++u)n[t[u]]=u;let i=e.length;for(;e[i-1]==="=";)--i;let o=new Uint8Array(i*r/8|0),s=0,a=0,c=0;for(let u=0;u<i;++u){let f=n[e[u]];if(f===void 0)throw new SyntaxError("Invalid character "+e[u]);a=a<<r|f,s+=r,s>=8&&(s-=8,o[c++]=255&a>>s)}if(s>=r||255&a<<8-s)throw new SyntaxError("Unexpected end of data");return o},V8=(e,t,r)=>{let n=t[t.length-1]==="=",i=(1<<r)-1,o="",s=0,a=0;for(let c=0;c<e.length;++c)for(a=a<<8|e[c],s+=8;s>r;)s-=r,o+=t[i&a>>s];if(s&&(o+=t[i&a<<r-s]),n)for(;o.length*r&7;)o+="=";return o},q8=e=>t=>({encode(r){return V8(r,t,e)},decode(r){return M8(r,t,e)}});S1.exports={rfc4648:q8}});var I1=Y((G_,B1)=>{"use strict";var io=b1(),H8=E1(),{rfc4648:rt}=C1(),{decodeText:z8,encodeText:G8}=Qs(),W8=()=>({encode:z8,decode:G8}),A1=[["identity","\0",W8,""],["base2","0",rt(1),"01"],["base8","7",rt(3),"01234567"],["base10","9",io,"0123456789"],["base16","f",rt(4),"0123456789abcdef"],["base16upper","F",rt(4),"0123456789ABCDEF"],["base32hex","v",rt(5),"0123456789abcdefghijklmnopqrstuv"],["base32hexupper","V",rt(5),"0123456789ABCDEFGHIJKLMNOPQRSTUV"],["base32hexpad","t",rt(5),"0123456789abcdefghijklmnopqrstuv="],["base32hexpadupper","T",rt(5),"0123456789ABCDEFGHIJKLMNOPQRSTUV="],["base32","b",rt(5),"abcdefghijklmnopqrstuvwxyz234567"],["base32upper","B",rt(5),"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567"],["base32pad","c",rt(5),"abcdefghijklmnopqrstuvwxyz234567="],["base32padupper","C",rt(5),"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567="],["base32z","h",rt(5),"ybndrfg8ejkmcpqxot1uwisza345h769"],["base36","k",io,"0123456789abcdefghijklmnopqrstuvwxyz"],["base36upper","K",io,"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"],["base58btc","z",io,"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"],["base58flickr","Z",io,"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"],["base64","m",rt(6),"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"],["base64pad","M",rt(6),"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="],["base64url","u",rt(6),"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_"],["base64urlpad","U",rt(6),"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_="]],D1=A1.reduce((e,t)=>(e[t[0]]=new H8(t[0],t[1],t[2],t[3]),e),{}),$8=A1.reduce((e,t)=>(e[t[1]]=D1[t[0]],e),{});B1.exports={names:D1,codes:$8}});var k1=Y((Cr,_1)=>{"use strict";var li=I1(),{encodeText:Y8,decodeText:js,concat:T1}=Qs();function Z8(e,t){if(!t)throw new Error("requires an encoded Uint8Array");let{name:r,codeBuf:n}=Dn(e);return J8(r,t),T1([n,t],n.length+t.length)}function X8(e,t){let r=Dn(e),n=Y8(r.encode(t));return T1([r.codeBuf,n],r.codeBuf.length+n.length)}function Q8(e){e instanceof Uint8Array&&(e=js(e));let t=e[0];return["f","F","v","V","t","T","b","B","c","C","h","k","K"].includes(t)&&(e=e.toLowerCase()),Dn(e[0]).decode(e.substring(1))}function j8(e){if(e instanceof Uint8Array&&(e=js(e)),Object.prototype.toString.call(e)!=="[object String]")return!1;try{return Dn(e[0]).name}catch{return!1}}function J8(e,t){Dn(e).decode(js(t))}function Dn(e){if(Object.prototype.hasOwnProperty.call(li.names,e))return li.names[e];if(Object.prototype.hasOwnProperty.call(li.codes,e))return li.codes[e];throw new Error(`Unsupported encoding: ${e}`)}function e3(e){return e instanceof Uint8Array&&(e=js(e)),Dn(e[0])}Cr=_1.exports=Z8;Cr.encode=X8;Cr.decode=Q8;Cr.isEncoded=j8;Cr.encoding=Dn;Cr.encodingFromData=e3;var t3=Object.freeze(li.names),r3=Object.freeze(li.codes);Cr.names=t3;Cr.codes=r3});var P1=Y((W_,N1)=>{N1.exports=L1;var R1=128,n3=127,i3=~n3,o3=Math.pow(2,31);function L1(e,t,r){t=t||[],r=r||0;for(var n=r;e>=o3;)t[r++]=e&255|R1,e/=128;for(;e&i3;)t[r++]=e&255|R1,e>>>=7;return t[r]=e|0,L1.bytes=r-n+1,t}});var F1=Y(($_,O1)=>{O1.exports=iu;var s3=128,U1=127;function iu(e,n){var r=0,n=n||0,i=0,o=n,s,a=e.length;do{if(o>=a)throw iu.bytes=0,new RangeError("Could not decode varint");s=e[o++],r+=i<28?(s&U1)<<i:(s&U1)*Math.pow(2,i),i+=7}while(s>=s3);return iu.bytes=o-n,r}});var M1=Y((Y_,K1)=>{var a3=Math.pow(2,7),c3=Math.pow(2,14),u3=Math.pow(2,21),f3=Math.pow(2,28),l3=Math.pow(2,35),h3=Math.pow(2,42),d3=Math.pow(2,49),p3=Math.pow(2,56),y3=Math.pow(2,63);K1.exports=function(e){return e<a3?1:e<c3?2:e<u3?3:e<f3?4:e<l3?5:e<h3?6:e<d3?7:e<p3?8:e<y3?9:10}});var q1=Y((Z_,V1)=>{V1.exports={encode:P1(),decode:F1(),encodingLength:M1()}});var z1=Y((X_,H1)=>{"use strict";var g3=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});H1.exports={names:g3}});function m3(e,t){if(e.length>=255)throw new TypeError("Alphabet too long");for(var r=new Uint8Array(256),n=0;n<r.length;n++)r[n]=255;for(var i=0;i<e.length;i++){var o=e.charAt(i),s=o.charCodeAt(0);if(r[s]!==255)throw new TypeError(o+" is ambiguous");r[s]=i}var a=e.length,c=e.charAt(0),u=Math.log(a)/Math.log(256),f=Math.log(256)/Math.log(a);function l(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,v=d.length;m!==v&&d[m]===0;)m++,p++;for(var x=(v-m)*f+1>>>0,A=new Uint8Array(x);m!==v;){for(var w=d[m],E=0,D=x-1;(w!==0||E<g)&&D!==-1;D--,E++)w+=256*A[D]>>>0,A[D]=w%a>>>0,w=w/a>>>0;if(w!==0)throw new Error("Non-zero carry");g=E,m++}for(var B=x-g;B!==x&&A[B]===0;)B++;for(var R=c.repeat(p);B<x;++B)R+=e.charAt(A[B]);return R}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 v=(d.length-p)*u+1>>>0,x=new Uint8Array(v);d[p];){var A=r[d.charCodeAt(p)];if(A===255)return;for(var w=0,E=v-1;(A!==0||w<m)&&E!==-1;E--,w++)A+=a*x[E]>>>0,x[E]=A%256>>>0,A=A/256>>>0;if(A!==0)throw new Error("Non-zero carry");m=w,p++}if(d[p]!==" "){for(var D=v-m;D!==v&&x[D]===0;)D++;for(var B=new Uint8Array(g+(v-D)),R=g;D!==v;)B[R++]=x[D++];return B}}}function y(d){var p=h(d);if(p)return p;throw new Error(`Non-${t} character`)}return{encode:l,decodeUnsafe:h,decode:y}}var x3,b3,G1,W1=pe(()=>{x3=m3,b3=x3,G1=b3});var j_,$1,Ar,Y1,Z1,zr=pe(()=>{j_=new Uint8Array(0),$1=(e,t)=>{if(e===t)return!0;if(e.byteLength!==t.byteLength)return!1;for(let r=0;r<e.byteLength;r++)if(e[r]!==t[r])return!1;return!0},Ar=e=>{if(e instanceof Uint8Array&&e.constructor.name==="Uint8Array")return e;if(e instanceof ArrayBuffer)return new Uint8Array(e);if(ArrayBuffer.isView(e))return new Uint8Array(e.buffer,e.byteOffset,e.byteLength);throw new Error("Unknown type, must be binary type")},Y1=e=>new TextEncoder().encode(e),Z1=e=>new TextDecoder().decode(e)});var ou,su,au,Q1,cu,hi,Gr,w3,v3,Pe,Ht=pe(()=>{W1();zr();ou=class{constructor(t,r,n){this.name=t,this.prefix=r,this.baseEncode=n}encode(t){if(t instanceof Uint8Array)return`${this.prefix}${this.baseEncode(t)}`;throw Error("Unknown type, must be binary type")}},su=class{constructor(t,r,n){if(this.name=t,this.prefix=r,r.codePointAt(0)===void 0)throw new Error("Invalid prefix character");this.prefixCodePoint=r.codePointAt(0),this.baseDecode=n}decode(t){if(typeof t=="string"){if(t.codePointAt(0)!==this.prefixCodePoint)throw Error(`Unable to decode multibase string ${JSON.stringify(t)}, ${this.name} decoder only supports inputs prefixed with ${this.prefix}`);return this.baseDecode(t.slice(this.prefix.length))}else throw Error("Can only multibase decode strings")}or(t){return Q1(this,t)}},au=class{constructor(t){this.decoders=t}or(t){return Q1(this,t)}decode(t){let r=t[0],n=this.decoders[r];if(n)return n.decode(t);throw RangeError(`Unable to decode multibase string ${JSON.stringify(t)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`)}},Q1=(e,t)=>new au({...e.decoders||{[e.prefix]:e},...t.decoders||{[t.prefix]:t}}),cu=class{constructor(t,r,n,i){this.name=t,this.prefix=r,this.baseEncode=n,this.baseDecode=i,this.encoder=new ou(t,r,n),this.decoder=new su(t,r,i)}encode(t){return this.encoder.encode(t)}decode(t){return this.decoder.decode(t)}},hi=({name:e,prefix:t,encode:r,decode:n})=>new cu(e,t,r,n),Gr=({prefix:e,name:t,alphabet:r})=>{let{encode:n,decode:i}=G1(r,t);return hi({prefix:e,name:t,encode:n,decode:o=>Ar(i(o))})},w3=(e,t,r,n)=>{let i={};for(let f=0;f<t.length;++f)i[t[f]]=f;let o=e.length;for(;e[o-1]==="=";)--o;let s=new Uint8Array(o*r/8|0),a=0,c=0,u=0;for(let f=0;f<o;++f){let l=i[e[f]];if(l===void 0)throw new SyntaxError(`Non-${n} character`);c=c<<r|l,a+=r,a>=8&&(a-=8,s[u++]=255&c>>a)}if(a>=r||255&c<<8-a)throw new SyntaxError("Unexpected end of data");return s},v3=(e,t,r)=>{let n=t[t.length-1]==="=",i=(1<<r)-1,o="",s=0,a=0;for(let c=0;c<e.length;++c)for(a=a<<8|e[c],s+=8;s>r;)s-=r,o+=t[i&a>>s];if(s&&(o+=t[i&a<<r-s]),n)for(;o.length*r&7;)o+="=";return o},Pe=({name:e,prefix:t,bitsPerChar:r,alphabet:n})=>hi({prefix:t,name:e,encode(i){return v3(i,n,r)},decode(i){return w3(i,n,r,e)}})});var uu={};ue(uu,{identity:()=>E3});var E3,j1=pe(()=>{Ht();zr();E3=hi({prefix:"\0",name:"identity",encode:e=>Z1(e),decode:e=>Y1(e)})});var fu={};ue(fu,{base2:()=>S3});var S3,J1=pe(()=>{Ht();S3=Pe({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1})});var lu={};ue(lu,{base8:()=>C3});var C3,e2=pe(()=>{Ht();C3=Pe({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3})});var hu={};ue(hu,{base10:()=>A3});var A3,t2=pe(()=>{Ht();A3=Gr({prefix:"9",name:"base10",alphabet:"0123456789"})});var du={};ue(du,{base16:()=>D3,base16upper:()=>B3});var D3,B3,r2=pe(()=>{Ht();D3=Pe({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),B3=Pe({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4})});var pu={};ue(pu,{base32:()=>di,base32hex:()=>k3,base32hexpad:()=>L3,base32hexpadupper:()=>N3,base32hexupper:()=>R3,base32pad:()=>T3,base32padupper:()=>_3,base32upper:()=>I3,base32z:()=>P3});var di,I3,T3,_3,k3,R3,L3,N3,P3,yu=pe(()=>{Ht();di=Pe({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),I3=Pe({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),T3=Pe({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),_3=Pe({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),k3=Pe({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),R3=Pe({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),L3=Pe({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),N3=Pe({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),P3=Pe({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5})});var gu={};ue(gu,{base36:()=>U3,base36upper:()=>O3});var U3,O3,n2=pe(()=>{Ht();U3=Gr({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),O3=Gr({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"})});var mu={};ue(mu,{base58btc:()=>or,base58flickr:()=>F3});var or,F3,xu=pe(()=>{Ht();or=Gr({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),F3=Gr({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"})});var bu={};ue(bu,{base64:()=>K3,base64pad:()=>M3,base64url:()=>V3,base64urlpad:()=>q3});var K3,M3,V3,q3,i2=pe(()=>{Ht();K3=Pe({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),M3=Pe({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),V3=Pe({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),q3=Pe({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6})});var wu={};ue(wu,{base256emoji:()=>$3});function G3(e){return e.reduce((t,r)=>(t+=H3[r],t),"")}function W3(e){let t=[];for(let r of e){let n=z3[r.codePointAt(0)];if(n===void 0)throw new Error(`Non-base256emoji character: ${r}`);t.push(n)}return new Uint8Array(t)}var o2,H3,z3,$3,s2=pe(()=>{Ht();o2=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}"),H3=o2.reduce((e,t,r)=>(e[r]=t,e),[]),z3=o2.reduce((e,t,r)=>(e[t.codePointAt(0)]=r,e),[]);$3=hi({prefix:"\u{1F680}",name:"base256emoji",encode:G3,decode:W3})});function u2(e,t,r){t=t||[],r=r||0;for(var n=r;e>=Q3;)t[r++]=e&255|a2,e/=128;for(;e&X3;)t[r++]=e&255|a2,e>>>=7;return t[r]=e|0,u2.bytes=r-n+1,t}function vu(e,n){var r=0,n=n||0,i=0,o=n,s,a=e.length;do{if(o>=a)throw vu.bytes=0,new RangeError("Could not decode varint");s=e[o++],r+=i<28?(s&c2)<<i:(s&c2)*Math.pow(2,i),i+=7}while(s>=J3);return vu.bytes=o-n,r}var Y3,a2,Z3,X3,Q3,j3,J3,c2,eE,tE,rE,nE,iE,oE,sE,aE,cE,uE,fE,lE,oo,f2=pe(()=>{Y3=u2,a2=128,Z3=127,X3=~Z3,Q3=Math.pow(2,31);j3=vu,J3=128,c2=127;eE=Math.pow(2,7),tE=Math.pow(2,14),rE=Math.pow(2,21),nE=Math.pow(2,28),iE=Math.pow(2,35),oE=Math.pow(2,42),sE=Math.pow(2,49),aE=Math.pow(2,56),cE=Math.pow(2,63),uE=function(e){return e<eE?1:e<tE?2:e<rE?3:e<nE?4:e<iE?5:e<oE?6:e<sE?7:e<aE?8:e<cE?9:10},fE={encode:Y3,decode:j3,encodingLength:uE},lE=fE,oo=lE});var so,pi,yi,ea=pe(()=>{f2();so=(e,t=0)=>[oo.decode(e,t),oo.decode.bytes],pi=(e,t,r=0)=>(oo.encode(e,t,r),t),yi=e=>oo.encodingLength(e)});var Bn,l2,h2,gi,co=pe(()=>{zr();ea();Bn=(e,t)=>{let r=t.byteLength,n=yi(e),i=n+yi(r),o=new Uint8Array(i+r);return pi(e,o,0),pi(r,o,n),o.set(t,i),new gi(e,r,t,o)},l2=e=>{let t=Ar(e),[r,n]=so(t),[i,o]=so(t.subarray(n)),s=t.subarray(n+o);if(s.byteLength!==i)throw new Error("Incorrect length");return new gi(r,i,s,t)},h2=(e,t)=>e===t?!0:e.code===t.code&&e.size===t.size&&$1(e.bytes,t.bytes),gi=class{constructor(t,r,n,i){this.code=t,this.size=r,this.digest=n,this.bytes=i}}});var Su,Eu,Cu=pe(()=>{co();Su=({name:e,code:t,encode:r})=>new Eu(e,t,r),Eu=class{constructor(t,r,n){this.name=t,this.code=r,this.encode=n}digest(t){if(t instanceof Uint8Array){let r=this.encode(t);return r instanceof Uint8Array?Bn(this.code,r):r.then(n=>Bn(this.code,n))}else throw Error("Unknown type, must be binary type")}}});var Au={};ue(Au,{sha256:()=>hE,sha512:()=>dE});var p2,hE,dE,y2=pe(()=>{Cu();p2=e=>async t=>new Uint8Array(await crypto.subtle.digest(e,t)),hE=Su({name:"sha2-256",code:18,encode:p2("SHA-256")}),dE=Su({name:"sha2-512",code:19,encode:p2("SHA-512")})});var Du={};ue(Du,{identity:()=>gE});var g2,pE,m2,yE,gE,x2=pe(()=>{zr();co();g2=0,pE="identity",m2=Ar,yE=e=>Bn(g2,m2(e)),gE={code:g2,name:pE,encode:m2,digest:yE}});var b2=pe(()=>{zr()});var bk,wk,w2=pe(()=>{bk=new TextEncoder,wk=new TextDecoder});var na,bE,wE,vE,uo,EE,v2,E2,ta,ra,SE,CE,AE,S2=pe(()=>{ea();co();xu();yu();zr();na=class e{constructor(t,r,n,i){this.code=r,this.version=t,this.multihash=n,this.bytes=i,this.byteOffset=i.byteOffset,this.byteLength=i.byteLength,this.asCID=this,this._baseCache=new Map,Object.defineProperties(this,{byteOffset:ra,byteLength:ra,code:ta,version:ta,multihash:ta,bytes:ta,_baseCache:ra,asCID:ra})}toV0(){switch(this.version){case 0:return this;default:{let{code:t,multihash:r}=this;if(t!==uo)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(r.code!==EE)throw new Error("Cannot convert non sha2-256 multihash CID to CIDv0");return e.createV0(r)}}}toV1(){switch(this.version){case 0:{let{code:t,digest:r}=this.multihash,n=Bn(t,r);return e.createV1(this.code,n)}case 1:return this;default:throw Error(`Can not convert CID version ${this.version} to version 0. This is a bug please report`)}}equals(t){return t&&this.code===t.code&&this.version===t.version&&h2(this.multihash,t.multihash)}toString(t){let{bytes:r,version:n,_baseCache:i}=this;switch(n){case 0:return wE(r,i,t||or.encoder);default:return vE(r,i,t||di.encoder)}}toJSON(){return{code:this.code,version:this.version,hash:this.multihash.bytes}}get[Symbol.toStringTag](){return"CID"}[Symbol.for("nodejs.util.inspect.custom")](){return"CID("+this.toString()+")"}static isCID(t){return CE(/^0\.0/,AE),!!(t&&(t[E2]||t.asCID===t))}get toBaseEncodedString(){throw new Error("Deprecated, use .toString()")}get codec(){throw new Error('"codec" property is deprecated, use integer "code" property instead')}get buffer(){throw new Error("Deprecated .buffer property, use .bytes to get Uint8Array instead")}get multibaseName(){throw new Error('"multibaseName" property is deprecated')}get prefix(){throw new Error('"prefix" property is deprecated')}static asCID(t){if(t instanceof e)return t;if(t!=null&&t.asCID===t){let{version:r,code:n,multihash:i,bytes:o}=t;return new e(r,n,i,o||v2(r,n,i.bytes))}else if(t!=null&&t[E2]===!0){let{version:r,multihash:n,code:i}=t,o=l2(n);return e.create(r,i,o)}else return null}static create(t,r,n){if(typeof r!="number")throw new Error("String codecs are no longer supported");switch(t){case 0:{if(r!==uo)throw new Error(`Version 0 CID must use dag-pb (code: ${uo}) block encoding`);return new e(t,r,n,n.bytes)}case 1:{let i=v2(t,r,n.bytes);return new e(t,r,n,i)}default:throw new Error("Invalid version")}}static createV0(t){return e.create(0,uo,t)}static createV1(t,r){return e.create(1,t,r)}static decode(t){let[r,n]=e.decodeFirst(t);if(n.length)throw new Error("Incorrect length");return r}static decodeFirst(t){let r=e.inspectBytes(t),n=r.size-r.multihashSize,i=Ar(t.subarray(n,n+r.multihashSize));if(i.byteLength!==r.multihashSize)throw new Error("Incorrect length");let o=i.subarray(r.multihashSize-r.digestSize),s=new gi(r.multihashCode,r.digestSize,o,i);return[r.version===0?e.createV0(s):e.createV1(r.codec,s),t.subarray(r.size)]}static inspectBytes(t){let r=0,n=()=>{let[l,h]=so(t.subarray(r));return r+=h,l},i=n(),o=uo;if(i===18?(i=0,r=0):i===1&&(o=n()),i!==0&&i!==1)throw new RangeError(`Invalid CID version ${i}`);let s=r,a=n(),c=n(),u=r+c,f=u-s;return{version:i,codec:o,multihashCode:a,digestSize:c,multihashSize:f,size:u}}static parse(t,r){let[n,i]=bE(t,r),o=e.decode(i);return o._baseCache.set(n,t),o}},bE=(e,t)=>{switch(e[0]){case"Q":{let r=t||or;return[or.prefix,r.decode(`${or.prefix}${e}`)]}case or.prefix:{let r=t||or;return[or.prefix,r.decode(e)]}case di.prefix:{let r=t||di;return[di.prefix,r.decode(e)]}default:{if(t==null)throw Error("To parse non base32 or base58btc encoded CID multibase decoder must be provided");return[e[0],t.decode(e)]}}},wE=(e,t,r)=>{let{prefix:n}=r;if(n!==or.prefix)throw Error(`Cannot string encode V0 in ${r.name} encoding`);let i=t.get(n);if(i==null){let o=r.encode(e).slice(1);return t.set(n,o),o}else return i},vE=(e,t,r)=>{let{prefix:n}=r,i=t.get(n);if(i==null){let o=r.encode(e);return t.set(n,o),o}else return i},uo=112,EE=18,v2=(e,t,r)=>{let n=yi(e),i=n+yi(t),o=new Uint8Array(i+r.byteLength);return pi(e,o,0),pi(t,o,n),o.set(r,i),o},E2=Symbol.for("@ipld/js-cid/CID"),ta={writable:!1,configurable:!1,enumerable:!0},ra={writable:!1,enumerable:!1,configurable:!1},SE="0.0.0-dev",CE=(e,t)=>{if(e.test(SE))console.warn(t);else throw new Error(t)},AE=`CID.isCID(v) is deprecated and will be removed in the next major release.
2
+ "use strict";var Libp2PWebrtc=(()=>{var h2=Object.create;var no=Object.defineProperty;var d2=Object.getOwnPropertyDescriptor;var p2=Object.getOwnPropertyNames;var y2=Object.getPrototypeOf,m2=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)no(t,r,{get:e[r],enumerable:!0})},Nu=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of p2(e))!m2.call(t,i)&&i!==r&&no(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)):{},Nu(e||!t||!t.__esModule?no(r,"default",{value:t,enumerable:!0}):r,t)),io=t=>Nu(no({},"__esModule",{value:!0}),t);var Ou=re((rE,Uu)=>{var bn=1e3,wn=bn*60,vn=wn*60,Mr=vn*24,g2=Mr*7,x2=Mr*365.25;Uu.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*g2;case"days":case"day":case"d":return r*Mr;case"hours":case"hour":case"hrs":case"hr":case"h":return r*vn;case"minutes":case"minute":case"mins":case"min":case"m":return r*wn;case"seconds":case"second":case"secs":case"sec":case"s":return r*bn;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>=vn?Math.round(t/vn)+"h":e>=wn?Math.round(t/wn)+"m":e>=bn?Math.round(t/bn)+"s":t+"ms"}function v2(t){var e=Math.abs(t);return e>=Mr?so(t,e,Mr,"day"):e>=vn?so(t,e,vn,"hour"):e>=wn?so(t,e,wn,"minute"):e>=bn?so(t,e,bn,"second"):t+" ms"}function so(t,e,r,n){var i=e>=r*1.5;return Math.round(t/r)+" "+n+(i?"s":"")}});var Ku=re((nE,Fu)=>{function E2(t){r.debug=r,r.default=r,r.coerce=c,r.disable=o,r.enable=i,r.enabled=s,r.humanize=Ou(),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,m,d;function p(...y){if(!p.enabled)return;let g=p,b=Number(new Date),x=b-(l||b);g.diff=x,g.prev=l,g.curr=b,l=b,y[0]=r.coerce(y[0]),typeof y[0]!="string"&&y.unshift("%O");let A=0;y[0]=y[0].replace(/%([a-zA-Z%])/g,(E,D)=>{if(E==="%%")return"%";A++;let B=r.formatters[D];if(typeof B=="function"){let U=y[A];E=B.call(g,U),y.splice(A,1),A--}return E}),r.formatArgs.call(g,y),(g.log||r.log).apply(g,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:(m!==r.namespaces&&(m=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,]+/),m=h.length;for(l=0;l<m;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}Fu.exports=E2});var Mu=re((lt,ao)=>{lt.formatArgs=A2;lt.save=C2;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 A2(t){if(t[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+t[0]+(this.useColors?"%c ":" ")+"+"+ao.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 C2(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{}}ao.exports=Ku()(lt);var{formatters:I2}=ao.exports;I2.j=function(t){try{return JSON.stringify(t)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}}});var Qf=re((U6,Zf)=>{"use strict";function Xf(t,e){for(let r in e)Object.defineProperty(t,r,{value:e[r],enumerable:!0,configurable:!0});return t}function Pm(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 Xf(t,r)}catch{r.message=t.message,r.stack=t.stack;let i=function(){};return i.prototype=Object.create(Object.getPrototypeOf(t)),Xf(new i,r)}}Zf.exports=Pm});var xe=re((DD,wh)=>{wh.exports={options:{usePureJavaScript:!1}}});var Sh=re((BD,Eh)=>{var s0={};Eh.exports=s0;var vh={};s0.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=Nx(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};s0.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 Nx(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((ID,Bh)=>{var Ah=xe(),Ch=Sh(),w=Bh.exports=Ah.util=Ah.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 Pi(t){if(!(t===8||t===16||t===24||t===32))throw new Error("Only 8, 16, 24, or 32 bits supported: "+t)}w.ByteBuffer=a0;function a0(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 a0||typeof t=="object"&&typeof t.data=="string"&&typeof t.read=="number")&&(this.data=t.data,this.read=t.read);this._constructedStringLength=0}w.ByteStringBuffer=a0;var Px=4096;w.ByteStringBuffer.prototype._optimizeConstructedString=function(t){this._constructedStringLength+=t,this._constructedStringLength>Px&&(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){Pi(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){Pi(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 Ux(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=Ux;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){Pi(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 Pi(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){Pi(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:Ch.encode,decode:Ch.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 c0=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}},u0=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},Ox=function(t,e,r,n){var i=u0(t,e);i===null&&(i={}),i[r]=n,c0(t,e,i)},Fx=function(t,e,r){var n=u0(t,e);return n!==null&&(n=r in n?n[r]:null),n},Kx=function(t,e,r){var n=u0(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),c0(t,e,n)}},Mx=function(t,e){c0(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(Ox,arguments,i)};w.getItem=function(t,e,r,n){return ds(Fx,arguments,n)};w.removeItem=function(t,e,r,n){ds(Kx,arguments,n)};w.clearItems=function(t,e,r){ds(Mx,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 m=0;m<s;++m)c[m].terminate();a(null,u)}}),c.push(l)}for(var f=0;f<s;++f)c[f].postMessage(f)}function o(s,a){for(var c=[],u=0;u<s;++u)for(var f=a[u],l=c[u]=[],h=0;h<s;++h)if(u!==h){var m=a[h];(f.st>m.st&&f.st<m.et||m.st>f.st&&m.st<f.et)&&l.push(h)}return c.reduce(function(d,p){return Math.max(d,p.length)},0)}}});var ps=re((TD,Ih)=>{var Ui=xe();Ui.pki=Ui.pki||{};var f0=Ih.exports=Ui.pki.oids=Ui.oids=Ui.oids||{};function N(t,e){f0[t]=e,f0[e]=t}function ye(t,e){f0[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");ye("2.5.29.1","authorityKeyIdentifier");ye("2.5.29.2","keyAttributes");ye("2.5.29.3","certificatePolicies");ye("2.5.29.4","keyUsageRestriction");ye("2.5.29.5","policyMapping");ye("2.5.29.6","subtreesConstraint");ye("2.5.29.7","subjectAltName");ye("2.5.29.8","issuerAltName");ye("2.5.29.9","subjectDirectoryAttributes");ye("2.5.29.10","basicConstraints");ye("2.5.29.11","nameConstraints");ye("2.5.29.12","policyConstraints");ye("2.5.29.13","basicConstraints");N("2.5.29.14","subjectKeyIdentifier");N("2.5.29.15","keyUsage");ye("2.5.29.16","privateKeyUsagePeriod");N("2.5.29.17","subjectAltName");N("2.5.29.18","issuerAltName");N("2.5.29.19","basicConstraints");ye("2.5.29.20","cRLNumber");ye("2.5.29.21","cRLReason");ye("2.5.29.22","expirationDate");ye("2.5.29.23","instructionCode");ye("2.5.29.24","invalidityDate");ye("2.5.29.25","cRLDistributionPoints");ye("2.5.29.26","issuingDistributionPoint");ye("2.5.29.27","deltaCRLIndicator");ye("2.5.29.28","issuingDistributionPoint");ye("2.5.29.29","certificateIssuer");ye("2.5.29.30","nameConstraints");N("2.5.29.31","cRLDistributionPoints");N("2.5.29.32","certificatePolicies");ye("2.5.29.33","policyMappings");ye("2.5.29.34","policyConstraints");N("2.5.29.35","authorityKeyIdentifier");ye("2.5.29.36","policyConstraints");N("2.5.29.37","extKeyUsage");ye("2.5.29.46","freshestCRL");ye("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 Fi=re((_D,_h)=>{var Ae=xe();Oe();ps();var V=_h.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 Oi(t,e,r){if(r>e){var n=new Error("Too few bytes to parse DER.");throw n.available=t.length(),n.remaining=e,n.requested=r,n}}var Vx=function(t,e){var r=t.getByte();if(e--,r!==128){var n,i=r&128;if(!i)n=r;else{var o=r&127;Oi(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=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;Oi(t,e,2);var o=t.getByte();e--;var s=o&192,a=o&31;i=t.length();var c=Vx(t,e);if(e-=i-t.length(),c!==void 0&&c>e){if(n.strict){var u=new Error("Too few bytes to read ASN.1 value.");throw u.available=t.length(),u.remaining=e,u.requested=c,u}c=e}var f,l,h=(o&32)===32;if(h)if(f=[],c===void 0)for(;;){if(Oi(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 m=t.read,d=e,p=0;if(a===V.Type.BITSTRING&&(Oi(t,e,1),p=t.getByte(),e--),p===0)try{i=t.length();var y={strict:!0,decodeBitStrings:!0},g=ys(t,e,r+1,y),b=i-t.length();e-=b,a==V.Type.BITSTRING&&b++;var x=g.tagClass;b===c&&(x===V.Class.UNIVERSAL||x===V.Class.CONTEXT_SPECIFIC)&&(f=[g])}catch{}f===void 0&&(t.read=m,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)Oi(t,e,2),f+=String.fromCharCode(t.getInt16()),e-=2;else f=t.getBytes(c),e-=c}var A=l===void 0?null:{bitStringContents:l};return V.create(s,a,h,f,A)}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 m=parseInt(t.substr(l+1,2),10),d=parseInt(t.substr(l+4,2),10);u=m*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 Th=/[^\\u0000-\\u00ff]/;V.prettyPrint=function(t,e,r){var n="";e=e||0,r=r||2,e>0&&(n+=`
6
+ `);for(var i="",o=0;o<e*r;++o)i+=" ";switch(n+=i+"Tag: ",t.tagClass){case V.Class.UNIVERSAL:n+="Universal:";break;case V.Class.APPLICATION:n+="Application:";break;case V.Class.CONTEXT_SPECIFIC:n+="Context-Specific:";break;case V.Class.PRIVATE:n+="Private:";break}if(t.tagClass===V.Class.UNIVERSAL)switch(n+=t.type,t.type){case V.Type.NONE:n+=" (None)";break;case V.Type.BOOLEAN:n+=" (Boolean)";break;case V.Type.INTEGER:n+=" (Integer)";break;case V.Type.BITSTRING:n+=" (Bit string)";break;case V.Type.OCTETSTRING:n+=" (Octet string)";break;case V.Type.NULL:n+=" (Null)";break;case V.Type.OID:n+=" (Object Identifier)";break;case V.Type.ODESC:n+=" (Object Descriptor)";break;case V.Type.EXTERNAL:n+=" (External or Instance of)";break;case V.Type.REAL:n+=" (Real)";break;case V.Type.ENUMERATED:n+=" (Enumerated)";break;case V.Type.EMBEDDED:n+=" (Embedded PDV)";break;case V.Type.UTF8:n+=" (UTF8)";break;case V.Type.ROID:n+=" (Relative Object Identifier)";break;case V.Type.SEQUENCE:n+=" (Sequence)";break;case V.Type.SET:n+=" (Set)";break;case V.Type.PRINTABLESTRING:n+=" (Printable String)";break;case V.Type.IA5String:n+=" (IA5String (ASCII))";break;case V.Type.UTCTIME:n+=" (UTC time)";break;case V.Type.GENERALIZEDTIME:n+=" (Generalized time)";break;case V.Type.BMPSTRING:n+=" (BMP String)";break}else n+=t.type;if(n+=`
7
+ `,n+=i+"Constructed: "+t.constructed+`
8
+ `,t.composed){for(var s=0,a="",o=0;o<t.value.length;++o)t.value[o]!==void 0&&(s+=1,a+=V.prettyPrint(t.value[o],e+1,r),o+1<t.value.length&&(a+=","));n+=i+"Sub values: "+s+a}else{if(n+=i+"Value: ",t.type===V.Type.OID){var c=V.derToOid(t.value);n+=c,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)Th.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:Th.test(t.value)?n+="0x"+Ae.util.bytesToHex(t.value):t.value.length===0?n+="[null]":n+=t.value}return n}});var h0=re((kD,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 l0=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)};l0.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)};l0.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()};l0.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 p0=re((RD,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=ms(t.iv,this.blockSize),this._prev=this._iv.slice(0);else throw new Error("Invalid IV parameter.")};ae.cbc.prototype.encrypt=function(t,e,r){if(t.length()<this.blockSize&&!(r&&t.length()>0))return!0;for(var n=0;n<this._ints;++n)this._inBlock[n]=this._prev[n]^t.getInt32();this.cipher.encrypt(this._inBlock,this._outBlock);for(var n=0;n<this._ints;++n)e.putInt32(this._outBlock[n]);this._prev=this._outBlock};ae.cbc.prototype.decrypt=function(t,e,r){if(t.length()<this.blockSize&&!(r&&t.length()>0))return!0;for(var n=0;n<this._ints;++n)this._inBlock[n]=t.getInt32();this.cipher.decrypt(this._inBlock,this._outBlock);for(var n=0;n<this._ints;++n)e.putInt32(this._prev[n]^this._outBlock[n]);this._prev=this._inBlock.slice(0)};ae.cbc.prototype.pad=function(t,e){var r=t.length()===this.blockSize?this.blockSize:this.blockSize-t.length();return t.fillWithByte(r,r),!0};ae.cbc.prototype.unpad=function(t,e){if(e.overflow>0)return!1;var r=t.length(),n=t.at(r-1);return n>this.blockSize<<2?!1:(t.truncate(n),!0)};ae.cfb=function(t){t=t||{},this.name="CFB",this.cipher=t.cipher,this.blockSize=t.blockSize||16,this._ints=this.blockSize/4,this._inBlock=null,this._outBlock=new Array(this._ints),this._partialBlock=new Array(this._ints),this._partialOutput=He.util.createBuffer(),this._partialBytes=0};ae.cfb.prototype.start=function(t){if(!("iv"in t))throw new Error("Invalid IV parameter.");this._iv=ms(t.iv,this.blockSize),this._inBlock=this._iv.slice(0),this._partialBytes=0};ae.cfb.prototype.encrypt=function(t,e,r){var n=t.length();if(n===0)return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),this._partialBytes===0&&n>=this.blockSize){for(var i=0;i<this._ints;++i)this._inBlock[i]=t.getInt32()^this._outBlock[i],e.putInt32(this._inBlock[i]);return}var o=(this.blockSize-n)%this.blockSize;o>0&&(o=this.blockSize-o),this._partialOutput.clear();for(var i=0;i<this._ints;++i)this._partialBlock[i]=t.getInt32()^this._outBlock[i],this._partialOutput.putInt32(this._partialBlock[i]);if(o>0)t.read-=this.blockSize;else for(var i=0;i<this._ints;++i)this._inBlock[i]=this._partialBlock[i];if(this._partialBytes>0&&this._partialOutput.getBytes(this._partialBytes),o>0&&!r)return e.putBytes(this._partialOutput.getBytes(o-this._partialBytes)),this._partialBytes=o,!0;e.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=0};ae.cfb.prototype.decrypt=function(t,e,r){var n=t.length();if(n===0)return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),this._partialBytes===0&&n>=this.blockSize){for(var i=0;i<this._ints;++i)this._inBlock[i]=t.getInt32(),e.putInt32(this._inBlock[i]^this._outBlock[i]);return}var o=(this.blockSize-n)%this.blockSize;o>0&&(o=this.blockSize-o),this._partialOutput.clear();for(var i=0;i<this._ints;++i)this._partialBlock[i]=t.getInt32(),this._partialOutput.putInt32(this._partialBlock[i]^this._outBlock[i]);if(o>0)t.read-=this.blockSize;else for(var i=0;i<this._ints;++i)this._inBlock[i]=this._partialBlock[i];if(this._partialBytes>0&&this._partialOutput.getBytes(this._partialBytes),o>0&&!r)return e.putBytes(this._partialOutput.getBytes(o-this._partialBytes)),this._partialBytes=o,!0;e.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=0};ae.ofb=function(t){t=t||{},this.name="OFB",this.cipher=t.cipher,this.blockSize=t.blockSize||16,this._ints=this.blockSize/4,this._inBlock=null,this._outBlock=new Array(this._ints),this._partialOutput=He.util.createBuffer(),this._partialBytes=0};ae.ofb.prototype.start=function(t){if(!("iv"in t))throw new Error("Invalid IV parameter.");this._iv=ms(t.iv,this.blockSize),this._inBlock=this._iv.slice(0),this._partialBytes=0};ae.ofb.prototype.encrypt=function(t,e,r){var n=t.length();if(t.length()===0)return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),this._partialBytes===0&&n>=this.blockSize){for(var i=0;i<this._ints;++i)e.putInt32(t.getInt32()^this._outBlock[i]),this._inBlock[i]=this._outBlock[i];return}var o=(this.blockSize-n)%this.blockSize;o>0&&(o=this.blockSize-o),this._partialOutput.clear();for(var i=0;i<this._ints;++i)this._partialOutput.putInt32(t.getInt32()^this._outBlock[i]);if(o>0)t.read-=this.blockSize;else for(var i=0;i<this._ints;++i)this._inBlock[i]=this._outBlock[i];if(this._partialBytes>0&&this._partialOutput.getBytes(this._partialBytes),o>0&&!r)return e.putBytes(this._partialOutput.getBytes(o-this._partialBytes)),this._partialBytes=o,!0;e.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=0};ae.ofb.prototype.decrypt=ae.ofb.prototype.encrypt;ae.ctr=function(t){t=t||{},this.name="CTR",this.cipher=t.cipher,this.blockSize=t.blockSize||16,this._ints=this.blockSize/4,this._inBlock=null,this._outBlock=new Array(this._ints),this._partialOutput=He.util.createBuffer(),this._partialBytes=0};ae.ctr.prototype.start=function(t){if(!("iv"in t))throw new Error("Invalid IV parameter.");this._iv=ms(t.iv,this.blockSize),this._inBlock=this._iv.slice(0),this._partialBytes=0};ae.ctr.prototype.encrypt=function(t,e,r){var n=t.length();if(n===0)return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),this._partialBytes===0&&n>=this.blockSize)for(var i=0;i<this._ints;++i)e.putInt32(t.getInt32()^this._outBlock[i]);else{var o=(this.blockSize-n)%this.blockSize;o>0&&(o=this.blockSize-o),this._partialOutput.clear();for(var i=0;i<this._ints;++i)this._partialOutput.putInt32(t.getInt32()^this._outBlock[i]);if(o>0&&(t.read-=this.blockSize),this._partialBytes>0&&this._partialOutput.getBytes(this._partialBytes),o>0&&!r)return e.putBytes(this._partialOutput.getBytes(o-this._partialBytes)),this._partialBytes=o,!0;e.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=0}gs(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(d0(n*8)))}this._inBlock=this._j0.slice(0),gs(this._inBlock),this._partialBytes=0,r=He.util.createBuffer(r),this._aDataLength=d0(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),gs(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),gs(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(d0(this._cipherLength*8));this._s=this.ghash(this._hashSubkey,this._s,n);var i=[];this.cipher.encrypt(this._j0,i);for(var o=0;o<this._ints;++o)this.tag.putInt32(this._s[o]^i[o]);return this.tag.truncate(this.tag.length()%(this._tagLength/8)),e.decrypt&&this.tag.bytes()!==this._tag&&(r=!1),r};ae.gcm.prototype.multiply=function(t,e){for(var r=[0,0,0,0],n=e.slice(0),i=0;i<128;++i){var o=t[i/32|0]&1<<31-i%32;o&&(r[0]^=n[0],r[1]^=n[1],r[2]^=n[2],r[3]^=n[3]),this.pow(n,n)}return r};ae.gcm.prototype.pow=function(t,e){for(var r=t[3]&1,n=3;n>0;--n)e[n]=t[n]>>>1|(t[n-1]&1)<<31;e[0]=t[0]>>>1,r&&(e[0]^=this._R)};ae.gcm.prototype.tableMultiply=function(t){for(var e=[0,0,0,0],r=0;r<32;++r){var n=r/8|0,i=t[n]>>>(7-r%8)*4&15,o=this._m[r][i];e[0]^=o[0],e[1]^=o[1],e[2]^=o[2],e[3]^=o[3]}return e};ae.gcm.prototype.ghash=function(t,e,r){return e[0]^=r[0],e[1]^=r[1],e[2]^=r[2],e[3]^=r[3],this.tableMultiply(e)};ae.gcm.prototype.generateHashTable=function(t,e){for(var r=8/e,n=4*r,i=16*r,o=new Array(i),s=0;s<i;++s){var a=[0,0,0,0],c=s/n|0,u=(n-1-s%n)*e;a[c]=1<<e-1<<u,o[s]=this.generateSubHashTable(this.multiply(a,t),e)}return o};ae.gcm.prototype.generateSubHashTable=function(t,e){var r=1<<e,n=r>>>1,i=new Array(r);i[n]=t.slice(0);for(var o=n>>>1;o>0;)this.pow(i[2*o],i[o]=[]),o>>=1;for(o=2;o<n;){for(var s=1;s<o;++s){var a=i[o],c=i[s];i[o+s]=[a[0]^c[0],a[1]^c[1],a[2]^c[2],a[3]^c[3]]}o*=2}for(i[0]=[0,0,0,0],o=n+1;o<r;++o){var u=i[o^n];i[o]=[t[0]^u[0],t[1]^u[1],t[2]^u[2],t[3]^u[3]]}return i};function ms(t,e){if(typeof t=="string"&&(t=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 gs(t){t[t.length-1]=t[t.length-1]+1&4294967295}function d0(t){return[t/4294967296|0,t&4294967295]}});var x0=re((LD,Uh)=>{var ve=xe();h0();p0();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 m0(r._w,n,i,!1)},decrypt:function(n,i){return m0(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=m0;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,y0,Lh,an,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),y0=new Array(256),an=new Array(4),Nt=new Array(4);for(var e=0;e<4;++e)an[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,y0[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)an[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],m=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]]^m[it[u&255]];r=d}return r}function m0(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=y0):(o=an[0],s=an[1],a=an[2],c=an[3],u=it);var f,l,h,m,d,p,y;f=e[0]^t[0],l=e[n?3:1]^t[1],h=e[2]^t[2],m=e[n?1:3]^t[3];for(var g=3,b=1;b<i;++b)d=o[f>>>24]^s[l>>>16&255]^a[h>>>8&255]^c[m&255]^t[++g],p=o[l>>>24]^s[h>>>16&255]^a[m>>>8&255]^c[f&255]^t[++g],y=o[h>>>24]^s[m>>>16&255]^a[f>>>8&255]^c[l&255]^t[++g],m=o[m>>>24]^s[f>>>16&255]^a[l>>>8&255]^c[h&255]^t[++g],f=d,l=p,h=y;r[0]=u[f>>>24]<<24^u[l>>>16&255]<<16^u[h>>>8&255]<<8^u[m&255]^t[++g],r[n?3:1]=u[l>>>24]<<24^u[h>>>16&255]<<16^u[m>>>8&255]<<8^u[f&255]^t[++g],r[2]=u[h>>>24]<<24^u[m>>>16&255]<<16^u[f>>>8&255]<<8^u[l&255]^t[++g],r[n?1:3]=u[m>>>24]<<24^u[f>>>16&255]<<16^u[l>>>8&255]<<8^u[h&255]^t[++g]}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((ND,Fh)=>{var Be=xe();h0();p0();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=Zx(e),this._init=!0}};zt("DES-ECB",Be.cipher.modes.ecb);zt("DES-CBC",Be.cipher.modes.cbc);zt("DES-CFB",Be.cipher.modes.cfb);zt("DES-OFB",Be.cipher.modes.ofb);zt("DES-CTR",Be.cipher.modes.ctr);zt("3DES-ECB",Be.cipher.modes.ecb);zt("3DES-CBC",Be.cipher.modes.cbc);zt("3DES-CFB",Be.cipher.modes.cfb);zt("3DES-OFB",Be.cipher.modes.ofb);zt("3DES-CTR",Be.cipher.modes.ctr);function zt(t,e){var r=function(){return new Be.des.Algorithm(t,e)};Be.cipher.registerAlgorithm(t,r)}var Hx=[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],qx=[-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],zx=[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],Gx=[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],Wx=[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],$x=[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],Yx=[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],Xx=[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 Zx(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],m=[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=[],g=[0,0,1,1,1,1,1,1,0,1,1,1,1,1,1,0],b=0,x,A=0;A<p;A++){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 D=0;D<g.length;++D){g[D]?(v=v<<2|v>>>26,E=E<<2|E>>>26):(v=v<<1|v>>>27,E=E<<1|E>>>27),v&=-15,E&=-15;var B=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]|m[E>>>8&15]|d[E>>>4&15];x=(U>>>16^B)&65535,y[b++]=B^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 m=c^t[h],d=(c>>>4|c<<28)^t[h+1];s=a,a=c,c=s^(qx[m>>>24&63]|Gx[m>>>16&63]|$x[m>>>8&63]|Xx[m&63]|Hx[d>>>24&63]|zx[d>>>16&63]|Wx[d>>>8&63]|Yx[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 cn=re((PD,Mh)=>{var ws=xe();Mh.exports=ws.md=ws.md||{};ws.md.algorithms=ws.md.algorithms||{}});var Hh=re((UD,Vh)=>{var fr=xe();cn();Oe();var Qx=Vh.exports=fr.hmac=fr.hmac||{};Qx.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((KD,qh)=>{var ot=xe();Hh();cn();Oe();var jx=ot.pkcs5=ot.pkcs5||{},lr;ot.util.isNodejs&&!ot.options.usePureJavaScript&&(lr=vs());qh.exports=ot.pbkdf2=jx.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,A){if(x)return o(x);o(null,A.toString("binary"))}):lr.pbkdf2(t,e,r,n,i,function(x,A){if(x)return o(x);o(null,A.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,m,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),m=f.digest().getBytes(),h=ot.util.xorBytes(h,m,s),d=m;l+=p<c?h:h.substr(0,u)}return l}var p=1,y;function g(){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),m=f.digest().getBytes(),h=ot.util.xorBytes(h,m,s),d=m,++y,ot.util.setImmediate(b);l+=p<c?h:h.substr(0,u),++p,g()}g()}});var $h=re((MD,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
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 m={name:o[1],values:[]},d=o[2].split(","),p=0;p<d.length;++p)m.values.push(Jx(d[p]));if(a.procType)if(!a.contentDomain&&m.name==="Content-Domain")a.contentDomain=d[0]||"";else if(!a.dekInfo&&m.name==="DEK-Info"){if(m.values.length===0)throw new Error('Invalid PEM formatted message. The "DEK-Info" header must have at least one subfield.');a.dekInfo={algorithm:d[0],parameters:d[1]||null}}else a.headers.push(m);else{if(m.name!=="Proc-Type")throw new Error('Invalid PEM formatted message. The first encapsulated header must be "Proc-Type".');if(m.values.length!==2)throw new Error('Invalid PEM formatted message. The "Proc-Type" header must have two subfields.');a.procType={version: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
13
+ `;for(var o=0,s=-1,i=0;i<e.length;++i,++o)if(o>65&&s!==-1){var a=e[s];a===","?(++s,e=e.substr(0,s)+`\r
14
+ `+e.substr(s)):e=e.substr(0,s)+`\r
15
+ `+a+e.substr(s+1),o=i-s-1,s=-1,++i}else(e[i]===" "||e[i]===" "||e[i]===",")&&(s=i);return e}function Jx(t){return t.replace(/^\s+/,"")}});var Jh=re((VD,jh)=>{var Gt=xe();cn();Oe();var Xh=jh.exports=Gt.sha256=Gt.sha256||{};Gt.md.sha256=Gt.md.algorithms.sha256=Xh;Xh.create=function(){Zh||eb();var t=null,e=Gt.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=Gt.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=Gt.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=Gt.util.createBuffer();i.putBytes(e.bytes());var o=n.fullMessageLength[n.fullMessageLength.length-1]+n.messageLengthSize,s=o&n.blockLength-1;i.putBytes(b0.substr(0,n.blockLength-s));for(var a,c,u=n.fullMessageLength[0]*8,f=0;f<n.fullMessageLength.length-1;++f)a=n.fullMessageLength[f+1]*8,c=a/4294967296>>>0,u+=c,i.putInt32(u>>>0),u=a>>>0;i.putInt32(u);var l={h0:t.h0,h1:t.h1,h2:t.h2,h3:t.h3,h4:t.h4,h5:t.h5,h6:t.h6,h7:t.h7};Yh(l,r,i);var h=Gt.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 b0=null,Zh=!1,Qh=null;function eb(){b0=String.fromCharCode(128),b0+=Gt.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,m,d,p,y,g,b=r.length();b>=64;){for(u=0;u<16;++u)e[u]=r.getInt32();for(;u<64;++u)n=e[u-2],n=(n>>>17|n<<15)^(n>>>19|n<<13)^n>>>10,i=e[u-15],i=(i>>>7|i<<25)^(i>>>18|i<<14)^i>>>3,e[u]=n+e[u-7]+i+e[u-16]|0;for(f=t.h0,l=t.h1,h=t.h2,m=t.h3,d=t.h4,p=t.h5,y=t.h6,g=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=g+s+a+Qh[u]+e[u],i=o+c,g=y,y=p,p=d,d=m+n>>>0,m=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+m|0,t.h4=t.h4+d|0,t.h5=t.h5+p|0,t.h6=t.h6+y|0,t.h7=t.h7+g|0,b-=64}}});var td=re((HD,ed)=>{var Wt=xe();Oe();var As=null;Wt.util.isNodejs&&!Wt.options.usePureJavaScript&&!process.versions["node-webkit"]&&(As=vs());var tb=ed.exports=Wt.prng=Wt.prng||{};tb.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,m=e.plugin.formatKey,d=e.plugin.formatSeed,p=Wt.util.createBuffer();e.key=null,y();function y(g){if(g)return f(g);if(p.length()>=u)return f(null,p.getBytes(u));if(e.generated>1048575&&(e.key=null),e.key===null)return Wt.util.nextTick(function(){o(y)});var b=l(e.key,e.seed);e.generated+=b.length,p.putBytes(b),e.key=m(l(e.key,h(e.seed))),e.seed=d(l(e.key,e.seed)),Wt.util.setImmediate(y)}},e.generateSync=function(u){var f=e.plugin.cipher,l=e.plugin.increment,h=e.plugin.formatKey,m=e.plugin.formatSeed;e.key=null;for(var d=Wt.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=m(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=Wt.util.globalScope,h=l.crypto||l.msCrypto;h&&h.getRandomValues&&(f=function(v){return h.getRandomValues(v)});var m=Wt.util.createBuffer();if(f)for(;m.length()<u;){var d=Math.max(1,Math.min(u-m.length(),65536)/4),p=new Uint32Array(Math.floor(d));try{f(p);for(var y=0;y<p.length;++y)m.putInt32(p[y])}catch(v){if(!(typeof QuotaExceededError<"u"&&v instanceof QuotaExceededError))throw v}}if(m.length()<u)for(var g,b,x,A=Math.floor(Math.random()*65536);m.length()<u;){b=16807*(A&65535),g=16807*(A>>16),b+=(g&32767)<<16,b+=g>>15,b=(b&2147483647)+(b>>31),A=b&4294967295;for(var y=0;y<3;++y)x=A>>>(y<<3),x^=Math.floor(Math.random()*256),m.putByte(x&255)}return m.getBytes(u)}return As?(e.seedFile=function(u,f){As.randomBytes(u,function(l,h){if(l)return f(l);f(null,h.toString())})},e.seedFileSync=function(u){return As.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 m(d){var p=d.data;p.forge&&p.forge.prng&&(self.removeEventListener("message",m),h(p.forge.prng.err,p.forge.prng.bytes))}self.addEventListener("message",m),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(m,d){u.postMessage({forge:{prng:{err:m,bytes:d}}})})};u.addEventListener("message",f)}},e}});var Ki=re((qD,w0)=>{var qe=xe();x0();Jh();td();Oe();(function(){if(qe.random&&qe.random.getBytes){w0.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,m){return l.generate(h,m)},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,w0.exports=qe.random})(typeof jQuery<"u"?jQuery:null)})()});var od=re((zD,id)=>{var ut=xe();Oe();var v0=[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],rb=function(t,e){return t<<e&65535|(t&65535)>>16-e},nb=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(v0[r.at(a-1)+r.at(a-n)&255]);for(r.setAt(128-o,v0[r.at(128-o)&s]),a=127-o;a>=0;a--)r.setAt(a,v0[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]=rb(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]=nb(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 g=0;g<d.length;g++)for(var b=0;b<d[g][0];b++)d[g][1](p);for(u=0;u<4;u++)s!==null&&(r?s.putInt16Le(p[u]):p[u]^=s.getInt16Le()),o.putInt16Le(p[u])},m=null;return m={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,m.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,m.update()),!r&&(p=i.length()===0,p))if(d)p=d(8,o,!r);else{var g=o.length(),b=o.at(g-1);b>g?p=!1:o.truncate(b)}return p}},m};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((GD,dd)=>{var E0=xe();dd.exports=E0.jsbn=E0.jsbn||{};var hr,ib=0xdeadbeefcafe,sd=(ib&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))}E0.jsbn.BigInteger=L;function fe(){return new L(null)}function ob(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 sb(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=sb,hr=30):sd&&navigator.appName!="Netscape"?(L.prototype.am=ob,hr=26):(L.prototype.am=ad,hr=28);L.prototype.DB=hr;L.prototype.DM=(1<<hr)-1;L.prototype.DV=1<<hr;var S0=52;L.prototype.FV=Math.pow(2,S0);L.prototype.F1=S0-hr;L.prototype.F2=2*hr-S0;var ab="0123456789abcdefghijklmnopqrstuvwxyz",Cs=new Array,Zn,wt;Zn="0".charCodeAt(0);for(wt=0;wt<=9;++wt)Cs[Zn++]=wt;Zn="a".charCodeAt(0);for(wt=10;wt<36;++wt)Cs[Zn++]=wt;Zn="A".charCodeAt(0);for(wt=10;wt<36;++wt)Cs[Zn++]=wt;function cd(t){return ab.charAt(t)}function ud(t,e){var r=Cs[t.charCodeAt(e)];return r??-1}function cb(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 ub(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 fb(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 lb(){for(var t=this.s&this.DM;this.t>0&&this.data[this.t-1]==t;)--this.t}function hb(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 db(){var t=fe();return L.ZERO.subTo(this,t),t}function pb(){return this.s<0?this.negate():this}function yb(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 mb(){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 xb(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 bb(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 wb(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 vb(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 Sb(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 Ab(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,m=(1<<this.F1)/l,d=1<<this.F2,p=r.t,y=p-u,g=e??fe();for(o.dlShiftTo(y,g),r.compareTo(g)>=0&&(r.data[r.t++]=1,r.subTo(g,r)),L.ONE.dlShiftTo(u,g),g.subTo(o,o);o.t<u;)o.data[o.t++]=0;for(;--y>=0;){var b=r.data[--p]==f?this.DM:Math.floor(r.data[p]*h+(r.data[p-1]+d)*m);if((r.data[p]+=o.am(0,b,r,y,0,u))<b)for(o.dlShiftTo(y,g),r.subTo(g,r);r.data[p]<--b;)r.subTo(g,r)}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 un(t){this.m=t}function Db(t){return t.s<0||t.compareTo(this.m)>=0?t.mod(this.m):t}function Bb(t){return t}function Ib(t){t.divRemTo(this.m,null,t)}function Tb(t,e,r){t.multiplyTo(e,r),this.reduce(r)}function _b(t,e){t.squareTo(e),this.reduce(e)}un.prototype.convert=Db;un.prototype.revert=Bb;un.prototype.reduce=Ib;un.prototype.mulTo=Tb;un.prototype.sqrTo=_b;function kb(){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 fn(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 Rb(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 Nb(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 Pb(t,e){t.squareTo(e),this.reduce(e)}function Ub(t,e,r){t.multiplyTo(e,r),this.reduce(r)}fn.prototype.convert=Rb;fn.prototype.revert=Lb;fn.prototype.reduce=Nb;fn.prototype.mulTo=Ub;fn.prototype.sqrTo=Pb;function Ob(){return(this.t>0?this.data[0]&1:this.s)==0}function Fb(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 Kb(t,e){var r;return t<256||e.isEven()?r=new un(e):r=new fn(e),this.exp(t,r)}L.prototype.copyTo=cb;L.prototype.fromInt=ub;L.prototype.fromString=fb;L.prototype.clamp=lb;L.prototype.dlShiftTo=gb;L.prototype.drShiftTo=xb;L.prototype.lShiftTo=bb;L.prototype.rShiftTo=wb;L.prototype.subTo=vb;L.prototype.multiplyTo=Eb;L.prototype.squareTo=Sb;L.prototype.divRemTo=Ab;L.prototype.invDigit=kb;L.prototype.isEven=Ob;L.prototype.exp=Fb;L.prototype.toString=hb;L.prototype.negate=db;L.prototype.abs=pb;L.prototype.compareTo=yb;L.prototype.bitLength=mb;L.prototype.mod=Cb;L.prototype.modPowInt=Kb;L.ZERO=Nr(0);L.ONE=Nr(1);function Mb(){var t=fe();return this.copyTo(t),t}function Vb(){if(this.s<0){if(this.t==1)return this.data[0]-this.DV;if(this.t==0)return-1}else{if(this.t==1)return this.data[0];if(this.t==0)return 0}return(this.data[1]&(1<<32-this.DB)-1)<<this.DB|this.data[0]}function Hb(){return this.t==0?this.s:this.data[0]<<24>>24}function qb(){return this.t==0?this.s:this.data[0]<<16>>16}function zb(t){return Math.floor(Math.LN2*this.DB/Math.log(t))}function Gb(){return this.s<0?-1:this.t<=0||this.t==1&&this.data[0]<=0?0:1}function Wb(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 $b(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 Yb(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),A0,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 Xb(){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 Zb(t){return this.compareTo(t)==0}function Qb(t){return this.compareTo(t)<0?this:t}function jb(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 ew(t,e){return t&e}function tw(t){var e=fe();return this.bitwiseTo(t,ew,e),e}function A0(t,e){return t|e}function rw(t){var e=fe();return this.bitwiseTo(t,A0,e),e}function fd(t,e){return t^e}function nw(t){var e=fe();return this.bitwiseTo(t,fd,e),e}function ld(t,e){return t&~e}function iw(t){var e=fe();return this.bitwiseTo(t,ld,e),e}function ow(){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 sw(t){var e=fe();return t<0?this.rShiftTo(-t,e):this.lShiftTo(t,e),e}function aw(t){var e=fe();return t<0?this.lShiftTo(-t,e):this.rShiftTo(t,e),e}function cw(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 uw(){for(var t=0;t<this.t;++t)if(this.data[t]!=0)return t*this.DB+cw(this.data[t]);return this.s<0?this.t*this.DB:-1}function fw(t){for(var e=0;t!=0;)t&=t-1,++e;return e}function lw(){for(var t=0,e=this.s&this.DM,r=0;r<this.t;++r)t+=fw(this.data[r]^e);return t}function hw(t){var e=Math.floor(t/this.DB);return e>=this.t?this.s!=0:(this.data[e]&1<<t%this.DB)!=0}function dw(t,e){var r=L.ONE.shiftLeft(t);return this.bitwiseTo(r,e,r),r}function pw(t){return this.changeBit(t,A0)}function yw(t){return this.changeBit(t,ld)}function mw(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 xw(t){var e=fe();return this.addTo(t,e),e}function bw(t){var e=fe();return this.subTo(t,e),e}function ww(t){var e=fe();return this.multiplyTo(t,e),e}function vw(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 Sw(t){var e=fe(),r=fe();return this.divRemTo(t,e,r),new Array(e,r)}function Aw(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 Mi(){}function hd(t){return t}function Dw(t,e,r){t.multiplyTo(e,r)}function Bw(t,e){t.squareTo(e)}Mi.prototype.convert=hd;Mi.prototype.revert=hd;Mi.prototype.mulTo=Dw;Mi.prototype.sqrTo=Bw;function Iw(t){return this.exp(t,new Mi)}function Tw(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 _w(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 kw(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 Rw(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 Nw(t,e){t.squareTo(e),this.reduce(e)}function Pw(t,e,r){t.multiplyTo(e,r),this.reduce(r)}Qn.prototype.convert=kw;Qn.prototype.revert=Rw;Qn.prototype.reduce=Lw;Qn.prototype.mulTo=Pw;Qn.prototype.sqrTo=Nw;function Uw(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 un(e):e.isEven()?o=new Qn(e):o=new fn(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,m=!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),m)s[h].copyTo(i),m=!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 Ow(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 Fw(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 Kw(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],Mw=(1<<26)/Pt[Pt.length-1];function Vw(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<Mw;)n*=Pt[i++];for(n=r.modInt(n);e<i;)if(n%Pt[e++]==0)return!1}return r.millerRabin(t)}function Hw(t){var e=this.subtract(L.ONE),r=e.getLowestSetBit();if(r<=0)return!1;for(var n=e.shiftRight(r),i=qw(),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 qw(){return{nextBytes:function(t){for(var e=0;e<t.length;++e)t[e]=Math.floor(Math.random()*256)}}}L.prototype.chunkSize=zb;L.prototype.toRadix=Wb;L.prototype.fromRadix=$b;L.prototype.fromNumber=Yb;L.prototype.bitwiseTo=Jb;L.prototype.changeBit=dw;L.prototype.addTo=gw;L.prototype.dMultiply=Aw;L.prototype.dAddOffset=Cw;L.prototype.multiplyLowerTo=Tw;L.prototype.multiplyUpperTo=_w;L.prototype.modInt=Fw;L.prototype.millerRabin=Hw;L.prototype.clone=Mb;L.prototype.intValue=Vb;L.prototype.byteValue=Hb;L.prototype.shortValue=qb;L.prototype.signum=Gb;L.prototype.toByteArray=Xb;L.prototype.equals=Zb;L.prototype.min=Qb;L.prototype.max=jb;L.prototype.and=tw;L.prototype.or=rw;L.prototype.xor=nw;L.prototype.andNot=iw;L.prototype.not=ow;L.prototype.shiftLeft=sw;L.prototype.shiftRight=aw;L.prototype.getLowestSetBit=uw;L.prototype.bitCount=lw;L.prototype.testBit=hw;L.prototype.setBit=pw;L.prototype.clearBit=yw;L.prototype.flipBit=mw;L.prototype.add=xw;L.prototype.subtract=bw;L.prototype.multiply=ww;L.prototype.divide=vw;L.prototype.remainder=Ew;L.prototype.divideAndRemainder=Sw;L.prototype.modPow=Uw;L.prototype.modInverse=Kw;L.prototype.pow=Iw;L.prototype.gcd=Ow;L.prototype.isProbablePrime=Vw});var xd=re((WD,gd)=>{var $t=xe();cn();Oe();var yd=gd.exports=$t.sha1=$t.sha1||{};$t.md.sha1=$t.md.algorithms.sha1=yd;yd.create=function(){md||zw();var t=null,e=$t.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=$t.util.createBuffer(),t={h0:1732584193,h1:4023233417,h2:2562383102,h3:271733878,h4:3285377520},n},n.start(),n.update=function(i,o){o==="utf8"&&(i=$t.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=$t.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=$t.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,md=!1;function zw(){C0=String.fromCharCode(128),C0+=$t.util.fillString(String.fromCharCode(0),64),md=!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(($D,wd)=>{var Yt=xe();Oe();Ki();xd();var bd=wd.exports=Yt.pkcs1=Yt.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=Yt.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,m=0;m<h;m++)l+="\0";var d=f.getBytes()+l+""+e;if(!i)i=Yt.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=Yt.util.xorBytes(d,p,d.length),g=Is(y,o.digestLength,s),b=Yt.util.xorBytes(i,g,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=Yt.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=Yt.util.xorBytes(u,l,u.length),m=Is(h,s-i.digestLength-1,o),d=Yt.util.xorBytes(f,m,f.length),p=d.substring(0,i.digestLength),y=c!=="\0",g=0;g<i.digestLength;++g)y|=a.charAt(g)!==p.charAt(g);for(var b=1,x=i.digestLength,A=i.digestLength;A<d.length;A++){var v=d.charCodeAt(A),E=v&1^1,D=b?65534:0;y|=v&D,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=Yt.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((YD,D0)=>{var Pr=xe();Oe();Bs();Ki();(function(){if(Pr.prime){D0.exports=Pr.prime;return}var t=D0.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,m){typeof h=="function"&&(m=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(g){for(var b=p.getBytesSync(g.length),x=0;x<g.length;++x)g[x]=b.charCodeAt(x)}};if(d.name==="PRIMEINC")return o(l,y,d.options,m);throw new Error("Invalid prime generation algorithm: "+d.name)};function o(l,h,m,d){return"workers"in m?c(l,h,m,d):s(l,h,m,d)}function s(l,h,m,d){var p=u(l,h),y=0,g=f(p.bitLength());"millerRabinTests"in m&&(g=m.millerRabinTests);var b=10;"maxBlockTime"in m&&(b=m.maxBlockTime),a(p,l,h,y,g,b,d)}function a(l,h,m,d,p,y,g){var b=+new Date;do{if(l.bitLength()>h&&(l=u(h,m)),l.isProbablePrime(p))return g(null,l);l.dAddOffset(r[d++%8],0)}while(y<0||+new Date-b<y);Pr.util.setImmediate(function(){a(l,h,m,d,p,y,g)})}function c(l,h,m,d){if(typeof Worker>"u")return s(l,h,m,d);var p=u(l,h),y=m.workers,g=m.workLoad||100,b=g*30/8,x=m.workerScript||"forge/prime.worker.js";if(y===-1)return Pr.util.estimateCores(function(v,E){v&&(E=2),y=E-1,A()});A();function A(){y=Math.max(1,y);for(var v=[],E=0;E<y;++E)v[E]=new Worker(x);for(var D=y,E=0;E<y;++E)v[E].addEventListener("message",U);var B=!1;function U(F){if(!B){--D;var O=F.data;if(O.found){for(var M=0;M<v.length;++M)v[M].terminate();return B=!0,d(null,new e(O.prime,16))}p.bitLength()>l&&(p=u(l,h));var G=p.toString(16);F.target.postMessage({hex:G,workLoad:g}),p.dAddOffset(b,0)}}}}function u(l,h){var m=new e(l,h),d=l-1;return m.testBit(d)||m.bitwiseTo(e.ONE.shiftLeft(d),i,m),m.dAddOffset(31-m.mod(n).byteValue(),0),m}function f(l){return l<=100?27:l<=150?18:l<=200?15:l<=250?12:l<=300?9:l<=350?8:l<=400?7:l<=500?6:l<=600?5:l<=800?4:l<=1250?3:2}})()});var _s=re((XD,Td)=>{var Y=xe();Fi();Bs();ps();vd();Ed();Ki();Oe();typeof ce>"u"&&(ce=Y.jsbn.BigInteger);var ce,B0=Y.util.isNodejs?vs():null,C=Y.asn1,vt=Y.util;Y.pki=Y.pki||{};Td.exports=Y.pki.rsa=Y.rsa=Y.rsa||{};var ee=Y.pki,Gw=[6,4,2,4,2,4,6,2],Ww={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"}]},$w={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"}]},Yw={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"}]},Xw=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"}]}]},Zw={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"}]},Qw=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()},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(Gw[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 B0.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(Ad("generateKey")&&Ad("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(C.fromDer(Y.util.createBuffer(a)));n(null,{privateKey:c,publicKey:ee.setRsaPublicKey(c.n,c.e)})}});if(Cd("generateKey")&&Cd("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(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(Sd("generateKeyPairSync")){var o=B0.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;jw(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=C.fromDer(u,{parseAllBytes:s._parseAllDigestBytes}),l={},h=[];if(!C.validate(f,Zw,l,h)){var m=new Error("ASN.1 object does not contain a valid RSASSA-PKCS1-v1_5 DigestInfo value.");throw m.errors=h,m}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 m=new Error("Unknown RSASSA-PKCS1-v1_5 DigestAlgorithm identifier.");throw m.oid=d,m}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(m,d){return Y.pkcs1.decode_rsa_oaep(d,m,l)}};else if(["RAW","NONE","NULL",null].indexOf(f)!==-1)f={decode:function(m){return m}};else throw new Error('Unsupported encryption scheme: "'+f+'".');return f.decode(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:Qw},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,Ww,e,r)&&(t=C.fromDer(Y.util.createBuffer(e.privateKey))),e={},r=[],!C.validate(t,$w,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,Xt(t.n)),C.create(C.Class.UNIVERSAL,C.Type.INTEGER,!1,Xt(t.e)),C.create(C.Class.UNIVERSAL,C.Type.INTEGER,!1,Xt(t.d)),C.create(C.Class.UNIVERSAL,C.Type.INTEGER,!1,Xt(t.p)),C.create(C.Class.UNIVERSAL,C.Type.INTEGER,!1,Xt(t.q)),C.create(C.Class.UNIVERSAL,C.Type.INTEGER,!1,Xt(t.dP)),C.create(C.Class.UNIVERSAL,C.Type.INTEGER,!1,Xt(t.dQ)),C.create(C.Class.UNIVERSAL,C.Type.INTEGER,!1,Xt(t.qInv))])};ee.publicKeyFromAsn1=function(t){var e={},r=[];if(C.validate(t,Xw,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,Yw,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,Xt(t.n)),C.create(C.Class.UNIVERSAL,C.Type.INTEGER,!1,Xt(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 jw(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 Xt(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 B0[t]=="function"}function Ad(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 Cd(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((ZD,Nd)=>{var z=xe();x0();Fi();Kh();cn();ps();zh();$h();Ki();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 ln=ie.oids,ev={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"}]},tv={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"}]}]},rv={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=ln["aes128-CBC"],l=z.aes.createEncryptionCipher;break;case"aes192":s=24,u=16,f=ln["aes192-CBC"],l=z.aes.createEncryptionCipher;break;case"aes256":s=32,u=16,f=ln["aes256-CBC"],l=z.aes.createEncryptionCipher;break;case"des":s=8,u=8,f=ln.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 m="hmacWith"+r.prfAlgorithm.toUpperCase(),d=Ld(m),p=z.pkcs5.pbkdf2(e,n,i,s,d),y=z.random.getBytesSync(u),g=l(p);g.start(y),g.update(T.toDer(t)),g.finish(),c=g.output.getBytes();var b=nv(n,o,s,m);a=T.create(T.Class.UNIVERSAL,T.Type.SEQUENCE,!0,[T.create(T.Class.UNIVERSAL,T.Type.OID,!1,T.oidToDer(ln.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(ln.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),g=z.des.createEncryptionCipher(p);g.start(y),g.update(T.toDer(t)),g.finish(),c=g.output.getBytes(),a=T.create(T.Class.UNIVERSAL,T.Type.SEQUENCE,!0,[T.create(T.Class.UNIVERSAL,T.Type.OID,!1,T.oidToDer(ln["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 A=T.create(T.Class.UNIVERSAL,T.Type.SEQUENCE,!0,[a,T.create(T.Class.UNIVERSAL,T.Type.OCTETSTRING,!1,c)]);return A};ie.decryptPrivateKeyInfo=function(t,e){var r=null,n={},i=[];if(!T.validate(t,ev,n,i)){var o=new Error("Cannot read encrypted private key. ASN.1 object is not a supported EncryptedPrivateKeyInfo.");throw o.errors=i,o}var s=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(),m=e.length(),d=new z.util.ByteBuffer;d.fillWithByte(r,u);var p=u*Math.ceil(m/u),y=new z.util.ByteBuffer;for(a=0;a<p;a++)y.putByte(e.at(a%m));var g=u*Math.ceil(h/u),b=new z.util.ByteBuffer;for(a=0;a<g;a++)b.putByte(l.at(a%h));var x=y;x.putBuffer(b);for(var A=Math.ceil(i/c),v=1;v<=A;v++){var E=new z.util.ByteBuffer;E.putBytes(d.bytes()),E.putBytes(x.bytes());for(var D=0;D<n;D++)o.start(),o.update(E.getBytes()),E=o.digest();var B=new z.util.ByteBuffer;for(a=0;a<u;a++)B.putByte(E.at(a%c));var U=Math.ceil(m/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=B.length()-1;a>=0;a--)M=M>>8,M+=B.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,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}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,m=u(l);return m.start(h),m};ie.pbe.getCipherForPKCS12PBE=function(t,e,r){var n={},i=[];if(!T.validate(e,rv,n,i)){var o=new Error("Cannot read password-based-encryption algorithm parameters. ASN.1 object is not a supported EncryptedPrivateKeyInfo.");throw o.errors=i,o}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 g=z.rc2.createDecryptionCipher(p,40);return g.start(y,null),g};break;default:var o=new Error("Cannot read PKCS #12 PBE data block. Unsupported OID.");throw o.oid=t,o}var l=Rd(n.prfOid),h=ie.pbe.generatePkcs12Key(r,s,1,a,c,l);l.start();var m=ie.pbe.generatePkcs12Key(r,s,2,a,u,l);return f(h,m)};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 nv(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((KB,Yd)=>{var Ce=xe();cn();Oe();var Hi=Yd.exports=Ce.sha512=Ce.sha512||{};Ce.md.sha512=Ce.md.algorithms.sha512=Hi;var Wd=Ce.sha384=Ce.sha512.sha384=Ce.sha512.sha384||{};Wd.create=function(){return Hi.create("SHA-384")};Ce.md.sha384=Ce.md.algorithms.sha384=Wd;Ce.sha512.sha256=Ce.sha512.sha256||{create:function(){return Hi.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 Hi.create("SHA-512/224")}};Ce.md["sha512/224"]=Ce.md.algorithms["sha512/224"]=Ce.sha512.sha224;Hi.create=function(t){if($d||lv(),typeof t>"u"&&(t="SHA-512"),!(t in dn))throw new Error("Invalid SHA-512 algorithm: "+t);for(var e=dn[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),Gd(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(R0.substr(0,a.blockLength-f));for(var l,h,m=a.fullMessageLength[0]*8,d=0;d<a.fullMessageLength.length-1;++d)l=a.fullMessageLength[d+1]*8,h=l/4294967296>>>0,m+=h,c.putInt32(m>>>0),m=l>>>0;c.putInt32(m);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=Ce.util.createBuffer(),g;t==="SHA-512"?g=p.length:t==="SHA-384"?g=p.length-2:g=p.length-4;for(var d=0;d<g;++d)y.putInt32(p[d][0]),(d!==g-1||t!=="SHA-512/224")&&y.putInt32(p[d][1]);return y},a};var R0=null,$d=!1,L0=null,dn=null;function lv(){R0=String.fromCharCode(128),R0+=Ce.util.fillString(String.fromCharCode(0),128),L0=[[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]],dn={},dn["SHA-512"]=[[1779033703,4089235720],[3144134277,2227873595],[1013904242,4271175723],[2773480762,1595750129],[1359893119,2917565137],[2600822924,725511199],[528734635,4215389547],[1541459225,327033209]],dn["SHA-384"]=[[3418070365,3238371032],[1654270250,914150663],[2438529370,812702999],[355462360,4144912697],[1731405415,4290775857],[2394180231,1750603025],[3675008525,1694076839],[1203062813,3204075428]],dn["SHA-512/256"]=[[573645204,4230739756],[2673172387,3360449730],[596883563,1867755857],[2520282905,1497426621],[2519219938,2827943907],[3193839141,1401305490],[721525244,746961066],[246885852,2177182882]],dn["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,m,d,p,y,g,b,x,A,v,E,D,B,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],g=t[1][0],b=t[1][1],x=t[2][0],A=t[2][1],v=t[3][0],E=t[3][1],D=t[4][0],B=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=((D>>>14|B<<18)^(D>>>18|B<<14)^(B>>>9|D<<23))>>>0,f=((D<<18|B>>>14)^(D<<14|B>>>18)^(B<<23|D>>>9))>>>0,l=(O^D&(U^O))>>>0,h=(M^B&(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,m=(p&g|x&(p^g))>>>0,d=(y&b|A&(y^b))>>>0,_=Q+f+h+L0[I][1]+e[I][1],n=G+u+l+L0[I][0]+e[I][0]+(_/4294967296>>>0)>>>0,i=_>>>0,_=c+d,o=a+m+(_/4294967296>>>0)>>>0,s=_>>>0,G=O,Q=M,O=U,M=F,U=D,F=B,_=E+i,D=v+n+(_/4294967296>>>0)>>>0,B=_>>>0,v=x,E=A,x=g,A=b,g=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]+g+(_/4294967296>>>0)>>>0,t[1][1]=_>>>0,_=t[2][1]+A,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]+B,t[4][0]=t[4][0]+D+(_/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((YT,Ip)=>{"use strict";function Fv(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(m){if(m instanceof Uint8Array||(ArrayBuffer.isView(m)?m=new Uint8Array(m.buffer,m.byteOffset,m.byteLength):Array.isArray(m)&&(m=Uint8Array.from(m))),!(m instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(m.length===0)return"";for(var d=0,p=0,y=0,g=m.length;y!==g&&m[y]===0;)y++,d++;for(var b=(g-y)*u+1>>>0,x=new Uint8Array(b);y!==g;){for(var A=m[y],v=0,E=b-1;(A!==0||v<p)&&E!==-1;E--,v++)A+=256*x[E]>>>0,x[E]=A%s>>>0,A=A/s>>>0;if(A!==0)throw new Error("Non-zero carry");p=v,y++}for(var D=b-p;D!==b&&x[D]===0;)D++;for(var B=a.repeat(d);D<b;++D)B+=t.charAt(x[D]);return B}function l(m){if(typeof m!="string")throw new TypeError("Expected String");if(m.length===0)return new Uint8Array;var d=0;if(m[d]!==" "){for(var p=0,y=0;m[d]===a;)p++,d++;for(var g=(m.length-d)*c+1>>>0,b=new Uint8Array(g);m[d];){var x=e[m.charCodeAt(d)];if(x===255)return;for(var A=0,v=g-1;(x!==0||A<y)&&v!==-1;v--,A++)x+=s*b[v]>>>0,b[v]=x%256>>>0,x=x/256>>>0;if(x!==0)throw new Error("Non-zero carry");y=A,d++}if(m[d]!==" "){for(var E=g-y;E!==g&&b[E]===0;)E++;for(var D=new Uint8Array(p+(g-E)),B=p;E!==g;)D[B++]=b[E++];return D}}}function h(m){var d=l(m);if(d)return d;throw new Error("Non-base"+s+" character")}return{encode:f,decodeUnsafe:l,decode:h}}Ip.exports=Fv});var Vs=re((XT,_p)=>{"use strict";var Kv=new TextDecoder,Mv=t=>Kv.decode(t),Vv=new TextEncoder,Hv=t=>Vv.encode(t);function qv(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:Mv,encodeText:Hv,concat:qv}});var Rp=re((ZT,kp)=>{"use strict";var{encodeText:zv}=Vs(),W0=class{constructor(e,r,n,i){this.name=e,this.code=r,this.codeBuf=zv(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=W0});var Np=re((QT,Lp)=>{"use strict";var Gv=(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},Wv=(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},$v=t=>e=>({encode(r){return Wv(r,e,t)},decode(r){return Gv(r,e,t)}});Lp.exports={rfc4648:$v}});var Fp=re((jT,Op)=>{"use strict";var Zi=Tp(),Yv=Rp(),{rfc4648:Je}=Np(),{decodeText:Xv,encodeText:Zv}=Vs(),Qv=()=>({encode:Xv,decode:Zv}),Pp=[["identity","\0",Qv,""],["base2","0",Je(1),"01"],["base8","7",Je(3),"01234567"],["base10","9",Zi,"0123456789"],["base16","f",Je(4),"0123456789abcdef"],["base16upper","F",Je(4),"0123456789ABCDEF"],["base32hex","v",Je(5),"0123456789abcdefghijklmnopqrstuv"],["base32hexupper","V",Je(5),"0123456789ABCDEFGHIJKLMNOPQRSTUV"],["base32hexpad","t",Je(5),"0123456789abcdefghijklmnopqrstuv="],["base32hexpadupper","T",Je(5),"0123456789ABCDEFGHIJKLMNOPQRSTUV="],["base32","b",Je(5),"abcdefghijklmnopqrstuvwxyz234567"],["base32upper","B",Je(5),"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567"],["base32pad","c",Je(5),"abcdefghijklmnopqrstuvwxyz234567="],["base32padupper","C",Je(5),"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567="],["base32z","h",Je(5),"ybndrfg8ejkmcpqxot1uwisza345h769"],["base36","k",Zi,"0123456789abcdefghijklmnopqrstuvwxyz"],["base36upper","K",Zi,"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"],["base58btc","z",Zi,"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"],["base58flickr","Z",Zi,"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"],["base64","m",Je(6),"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"],["base64pad","M",Je(6),"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="],["base64url","u",Je(6),"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_"],["base64urlpad","U",Je(6),"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_="]],Up=Pp.reduce((t,e)=>(t[e[0]]=new Yv(e[0],e[1],e[2],e[3]),t),{}),jv=Pp.reduce((t,e)=>(t[e[1]]=Up[e[0]],t),{});Op.exports={names:Up,codes:jv}});var Vp=re((gr,Mp)=>{"use strict";var ri=Fp(),{encodeText:Jv,decodeText:Hs,concat:Kp}=Vs();function e8(t,e){if(!e)throw new Error("requires an encoded Uint8Array");let{name:r,codeBuf:n}=gn(t);return i8(r,e),Kp([n,e],n.length+e.length)}function t8(t,e){let r=gn(t),n=Jv(r.encode(e));return Kp([r.codeBuf,n],r.codeBuf.length+n.length)}function r8(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 n8(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 i8(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 o8(t){return t instanceof Uint8Array&&(t=Hs(t)),gn(t[0])}gr=Mp.exports=e8;gr.encode=t8;gr.decode=r8;gr.isEncoded=n8;gr.encoding=gn;gr.encodingFromData=o8;var s8=Object.freeze(ri.names),a8=Object.freeze(ri.codes);gr.names=s8;gr.codes=a8});var Gp=re((JT,zp)=>{zp.exports=qp;var Hp=128,c8=127,u8=~c8,f8=Math.pow(2,31);function qp(t,e,r){e=e||[],r=r||0;for(var n=r;t>=f8;)e[r++]=t&255|Hp,t/=128;for(;t&u8;)e[r++]=t&255|Hp,t>>>=7;return e[r]=t|0,qp.bytes=r-n+1,e}});var Yp=re((e_,$p)=>{$p.exports=$0;var l8=128,Wp=127;function $0(t,n){var r=0,n=n||0,i=0,o=n,s,a=t.length;do{if(o>=a)throw $0.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>=l8);return $0.bytes=o-n,r}});var Zp=re((t_,Xp)=>{var h8=Math.pow(2,7),d8=Math.pow(2,14),p8=Math.pow(2,21),y8=Math.pow(2,28),m8=Math.pow(2,35),g8=Math.pow(2,42),x8=Math.pow(2,49),b8=Math.pow(2,56),w8=Math.pow(2,63);Xp.exports=function(t){return t<h8?1:t<d8?2:t<p8?3:t<y8?4:t<m8?5:t<g8?6:t<x8?7:t<b8?8:t<w8?9:10}});var jp=re((r_,Qp)=>{Qp.exports={encode:Gp(),decode:Yp(),encodingLength:Zp()}});var e1=re((n_,Jp)=>{"use strict";var v8=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:v8}});function E8(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,g=0,b=d.length;g!==b&&d[g]===0;)g++,p++;for(var x=(b-g)*f+1>>>0,A=new Uint8Array(x);g!==b;){for(var v=d[g],E=0,D=x-1;(v!==0||E<y)&&D!==-1;D--,E++)v+=256*A[D]>>>0,A[D]=v%a>>>0,v=v/a>>>0;if(v!==0)throw new Error("Non-zero carry");y=E,g++}for(var B=x-y;B!==x&&A[B]===0;)B++;for(var U=c.repeat(p);B<x;++B)U+=t.charAt(A[B]);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,g=0;d[p]===c;)y++,p++;for(var b=(d.length-p)*u+1>>>0,x=new Uint8Array(b);d[p];){var A=r[d.charCodeAt(p)];if(A===255)return;for(var v=0,E=b-1;(A!==0||v<g)&&E!==-1;E--,v++)A+=a*x[E]>>>0,x[E]=A%256>>>0,A=A/256>>>0;if(A!==0)throw new Error("Non-zero carry");g=v,p++}if(d[p]!==" "){for(var D=b-g;D!==b&&x[D]===0;)D++;for(var B=new Uint8Array(y+(b-D)),U=y;D!==b;)B[U++]=x[D++];return B}}}function m(d){var p=h(d);if(p)return p;throw new Error(`Non-${e} character`)}return{encode:l,decodeUnsafe:h,decode:m}}var S8,A8,t1,r1=he(()=>{S8=E8,A8=S8,t1=A8});var o_,n1,xr,i1,o1,Ur=he(()=>{o_=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 Y0,X0,Z0,a1,Q0,ni,Or,C8,D8,Re,Ot=he(()=>{r1();Ur();Y0=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")}},X0=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)}},Z0=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 Z0({...t.decoders||{[t.prefix]:t},...e.decoders||{[e.prefix]:e}}),Q0=class{constructor(e,r,n,i){this.name=e,this.prefix=r,this.baseEncode=n,this.baseDecode=i,this.encoder=new Y0(e,r,n),this.decoder=new X0(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 Q0(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},D8=(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 D8(i,n,r)},decode(i){return C8(i,n,r,t)}})});var j0={};ue(j0,{identity:()=>B8});var B8,c1=he(()=>{Ot();Ur();B8=ni({prefix:"\0",name:"identity",encode:t=>o1(t),decode:t=>i1(t)})});var J0={};ue(J0,{base2:()=>I8});var I8,u1=he(()=>{Ot();I8=Re({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1})});var eu={};ue(eu,{base8:()=>T8});var T8,f1=he(()=>{Ot();T8=Re({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3})});var tu={};ue(tu,{base10:()=>_8});var _8,l1=he(()=>{Ot();_8=Or({prefix:"9",name:"base10",alphabet:"0123456789"})});var ru={};ue(ru,{base16:()=>k8,base16upper:()=>R8});var k8,R8,h1=he(()=>{Ot();k8=Re({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),R8=Re({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4})});var nu={};ue(nu,{base32:()=>ii,base32hex:()=>U8,base32hexpad:()=>F8,base32hexpadupper:()=>K8,base32hexupper:()=>O8,base32pad:()=>N8,base32padupper:()=>P8,base32upper:()=>L8,base32z:()=>M8});var ii,L8,N8,P8,U8,O8,F8,K8,M8,iu=he(()=>{Ot();ii=Re({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),L8=Re({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),N8=Re({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),P8=Re({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),U8=Re({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),O8=Re({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),F8=Re({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),K8=Re({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),M8=Re({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5})});var ou={};ue(ou,{base36:()=>V8,base36upper:()=>H8});var V8,H8,d1=he(()=>{Ot();V8=Or({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),H8=Or({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"})});var su={};ue(su,{base58btc:()=>jt,base58flickr:()=>q8});var jt,q8,au=he(()=>{Ot();jt=Or({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),q8=Or({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"})});var cu={};ue(cu,{base64:()=>z8,base64pad:()=>G8,base64url:()=>W8,base64urlpad:()=>$8});var z8,G8,W8,$8,p1=he(()=>{Ot();z8=Re({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),G8=Re({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),W8=Re({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),$8=Re({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6})});var uu={};ue(uu,{base256emoji:()=>j8});function Z8(t){return t.reduce((e,r)=>(e+=Y8[r],e),"")}function Q8(t){let e=[];for(let r of t){let n=X8[r.codePointAt(0)];if(n===void 0)throw new Error(`Non-base256emoji character: ${r}`);e.push(n)}return new Uint8Array(e)}var y1,Y8,X8,j8,m1=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}"),Y8=y1.reduce((t,e,r)=>(t[r]=e,t),[]),X8=y1.reduce((t,e,r)=>(t[e.codePointAt(0)]=r,t),[]);j8=ni({prefix:"\u{1F680}",name:"base256emoji",encode:Z8,decode:Q8})});function b1(t,e,r){e=e||[],r=r||0;for(var n=r;t>=r3;)e[r++]=t&255|g1,t/=128;for(;t&t3;)e[r++]=t&255|g1,t>>>=7;return e[r]=t|0,b1.bytes=r-n+1,e}function fu(t,n){var r=0,n=n||0,i=0,o=n,s,a=t.length;do{if(o>=a)throw fu.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>=i3);return fu.bytes=o-n,r}var J8,g1,e3,t3,r3,n3,i3,x1,o3,s3,a3,c3,u3,f3,l3,h3,d3,p3,y3,m3,Qi,w1=he(()=>{J8=b1,g1=128,e3=127,t3=~e3,r3=Math.pow(2,31);n3=fu,i3=128,x1=127;o3=Math.pow(2,7),s3=Math.pow(2,14),a3=Math.pow(2,21),c3=Math.pow(2,28),u3=Math.pow(2,35),f3=Math.pow(2,42),l3=Math.pow(2,49),h3=Math.pow(2,56),d3=Math.pow(2,63),p3=function(t){return t<o3?1:t<s3?2:t<a3?3:t<c3?4:t<u3?5:t<f3?6:t<l3?7:t<h3?8:t<d3?9:10},y3={encode:J8,decode:n3,encodingLength:p3},m3=y3,Qi=m3});var ji,oi,si,zs=he(()=>{w1();ji=(t,e=0)=>[Qi.decode(t,e),Qi.decode.bytes],oi=(t,e,r=0)=>(Qi.encode(t,e,r),e),si=t=>Qi.encodingLength(t)});var xn,v1,E1,ai,eo=he(()=>{Ur();zs();xn=(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 hu,lu,du=he(()=>{eo();hu=({name:t,code:e,encode:r})=>new lu(t,e,r),lu=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?xn(this.code,r):r.then(n=>xn(this.code,n))}else throw Error("Unknown type, must be binary type")}}});var pu={};ue(pu,{sha256:()=>g3,sha512:()=>x3});var A1,g3,x3,C1=he(()=>{du();A1=t=>async e=>new Uint8Array(await crypto.subtle.digest(t,e)),g3=hu({name:"sha2-256",code:18,encode:A1("SHA-256")}),x3=hu({name:"sha2-512",code:19,encode:A1("SHA-512")})});var yu={};ue(yu,{identity:()=>v3});var D1,b3,B1,w3,v3,I1=he(()=>{Ur();eo();D1=0,b3="identity",B1=xr,w3=t=>xn(D1,B1(t)),v3={code:D1,name:b3,encode:B1,digest:w3}});var T1=he(()=>{Ur()});var D_,B_,_1=he(()=>{D_=new TextEncoder,B_=new TextDecoder});var $s,A3,C3,D3,to,B3,k1,R1,Gs,Ws,I3,T3,_3,L1=he(()=>{zs();eo();au();iu();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!==to)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(r.code!==B3)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=xn(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||jt.encoder);default:return D3(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 T3(/^0\.0/,_3),!!(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!==to)throw new Error(`Version 0 CID must use dag-pb (code: ${to}) block encoding`);return new t(e,r,n,n.bytes)}case 1:{let i=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,to,e)}static createV1(e,r){return t.create(1,e,r)}static decode(e){let[r,n]=t.decodeFirst(e);if(n.length)throw new Error("Incorrect length");return r}static decodeFirst(e){let r=t.inspectBytes(e),n=r.size-r.multihashSize,i=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=to;if(i===18?(i=0,r=0):i===1&&(o=n()),i!==0&&i!==1)throw new RangeError(`Invalid CID version ${i}`);let s=r,a=n(),c=n(),u=r+c,f=u-s;return{version:i,codec:o,multihashCode:a,digestSize:c,multihashSize:f,size:u}}static parse(e,r){let[n,i]=A3(e,r),o=t.decode(i);return o._baseCache.set(n,e),o}},A3=(t,e)=>{switch(t[0]){case"Q":{let r=e||jt;return[jt.prefix,r.decode(`${jt.prefix}${t}`)]}case jt.prefix:{let r=e||jt;return[jt.prefix,r.decode(t)]}case 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!==jt.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},D3=(t,e,r)=>{let{prefix:n}=r,i=e.get(n);if(i==null){let o=r.encode(t);return e.set(n,o),o}else return i},to=112,B3=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},I3="0.0.0-dev",T3=(t,e)=>{if(t.test(I3))console.warn(e);else throw new Error(e)},_3=`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,8 +26,8 @@ if (cid) {
26
26
  // Make sure to use cid instead of value
27
27
  doSomethingWithCID(cid)
28
28
  }
29
- `});var C2=pe(()=>{S2();ea();zr();Cu();co()});var Bu,Ik,A2=pe(()=>{j1();J1();e2();t2();r2();yu();n2();xu();i2();s2();y2();x2();b2();w2();C2();Bu={...uu,...fu,...lu,...hu,...du,...pu,...gu,...mu,...bu,...wu},Ik={...Au,...Du}});function mi(e){return globalThis.Buffer!=null?new Uint8Array(e.buffer,e.byteOffset,e.byteLength):e}var ia=pe(()=>{});function oa(e=0){return globalThis.Buffer!=null&&globalThis.Buffer.allocUnsafe!=null?mi(globalThis.Buffer.allocUnsafe(e)):new Uint8Array(e)}var Iu=pe(()=>{ia()});function B2(e,t,r,n){return{name:e,prefix:t,encoder:{name:e,prefix:t,encode:r},decoder:{decode:n}}}var D2,Tu,DE,sa,_u=pe(()=>{A2();Iu();D2=B2("utf8","u",e=>"u"+new TextDecoder("utf8").decode(e),e=>new TextEncoder().encode(e.substring(1))),Tu=B2("ascii","a",e=>{let t="a";for(let r=0;r<e.length;r++)t+=String.fromCharCode(e[r]);return t},e=>{e=e.substring(1);let t=oa(e.length);for(let r=0;r<e.length;r++)t[r]=e.charCodeAt(r);return t}),DE={utf8:D2,"utf-8":D2,hex:Bu.base16,latin1:Tu,ascii:Tu,binary:Tu,...Bu},sa=DE});var I2={};ue(I2,{toString:()=>BE});function BE(e,t="utf8"){let r=sa[t];if(!r)throw new Error(`Unsupported encoding "${t}"`);return(t==="utf8"||t==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?globalThis.Buffer.from(e.buffer,e.byteOffset,e.byteLength).toString("utf8"):r.encoder.encode(e).substring(1)}var T2=pe(()=>{_u()});var _2={};ue(_2,{fromString:()=>IE});function IE(e,t="utf8"){let r=sa[t];if(!r)throw new Error(`Unsupported encoding "${t}"`);return(t==="utf8"||t==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?mi(globalThis.Buffer.from(e,"utf-8")):r.decoder.decode(`${r.prefix}${e}`)}var k2=pe(()=>{_u();ia()});var R2={};ue(R2,{concat:()=>TE});function TE(e,t){t||(t=e.reduce((i,o)=>i+o.length,0));let r=oa(t),n=0;for(let i of e)r.set(i,n),n+=i.length;return mi(r)}var L2=pe(()=>{Iu();ia()});var Ru=Y((Vk,K2)=>{"use strict";var N2=k1(),xi=q1(),{names:fo}=z1(),{toString:aa}=(T2(),ho(I2)),{fromString:_E}=(k2(),ho(_2)),{concat:kE}=(L2(),ho(R2)),bi={};for(let e in fo){let t=e;bi[fo[t]]=t}Object.freeze(bi);function RE(e){if(!(e instanceof Uint8Array))throw new Error("must be passed a Uint8Array");return aa(e,"base16")}function LE(e){return _E(e,"base16")}function NE(e){if(!(e instanceof Uint8Array))throw new Error("must be passed a Uint8Array");return aa(N2.encode("base58btc",e)).slice(1)}function PE(e){let t=e instanceof Uint8Array?aa(e):e;return N2.decode("z"+t)}function P2(e){if(!(e instanceof Uint8Array))throw new Error("multihash must be a Uint8Array");if(e.length<2)throw new Error("multihash too short. must be > 2 bytes.");let t=xi.decode(e);if(!O2(t))throw new Error(`multihash unknown function code: 0x${t.toString(16)}`);e=e.slice(xi.decode.bytes);let r=xi.decode(e);if(r<0)throw new Error(`multihash invalid length: ${r}`);if(e=e.slice(xi.decode.bytes),e.length!==r)throw new Error(`multihash length inconsistent: 0x${aa(e,"base16")}`);return{code:t,name:bi[t],length:r,digest:e}}function UE(e,t,r){if(!e||t===void 0)throw new Error("multihash encode requires at least two args: digest, code");let n=U2(t);if(!(e instanceof Uint8Array))throw new Error("digest should be a Uint8Array");if(r==null&&(r=e.length),r&&e.length!==r)throw new Error("digest length should be equal to specified length.");let i=xi.encode(n),o=xi.encode(r);return kE([i,o,e],i.length+o.length+e.length)}function U2(e){let t=e;if(typeof e=="string"){if(fo[e]===void 0)throw new Error(`Unrecognized hash function named: ${e}`);t=fo[e]}if(typeof t!="number")throw new Error(`Hash function code should be a number. Got: ${t}`);if(bi[t]===void 0&&!ku(t))throw new Error(`Unrecognized function code: ${t}`);return t}function ku(e){return e>0&&e<16}function O2(e){return!!(ku(e)||bi[e])}function F2(e){P2(e)}function OE(e){return F2(e),e.subarray(0,2)}K2.exports={names:fo,codes:bi,toHexString:RE,fromHexString:LE,toB58String:NE,fromB58String:PE,decode:P2,encode:UE,coerceCode:U2,isAppCode:ku,validate:F2,prefix:OE,isValidCode:O2}});var $E={};ue($E,{webRTC:()=>WE,webRTCDirect:()=>GE});var W=class extends Error{code;props;constructor(t,r,n){super(t),this.code=r,this.name=n?.name??"CodeError",this.props=n??{}}},vi=class e extends Error{code;constructor(t="Unexpected Peer"){super(t),this.code=e.code}static code="ERR_UNEXPECTED_PEER"},$r=class e extends Error{code;constructor(t="Invalid crypto exchange"){super(t),this.code=e.code}static code="ERR_INVALID_CRYPTO_EXCHANGE"};var po=Symbol.for("@libp2p/transport");var Wu;(function(e){e[e.FATAL_ALL=0]="FATAL_ALL",e[e.NO_FATAL=1]="NO_FATAL"})(Wu||(Wu={}));var pt=Re(Qu(),1);var ga={};ue(ga,{base32:()=>It,base32hex:()=>By,base32hexpad:()=>Ty,base32hexpadupper:()=>_y,base32hexupper:()=>Iy,base32pad:()=>Ay,base32padupper:()=>Dy,base32upper:()=>Cy,base32z:()=>ky});function by(e,t){if(e.length>=255)throw new TypeError("Alphabet too long");for(var r=new Uint8Array(256),n=0;n<r.length;n++)r[n]=255;for(var i=0;i<e.length;i++){var o=e.charAt(i),s=o.charCodeAt(0);if(r[s]!==255)throw new TypeError(o+" is ambiguous");r[s]=i}var a=e.length,c=e.charAt(0),u=Math.log(a)/Math.log(256),f=Math.log(256)/Math.log(a);function l(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,v=d.length;m!==v&&d[m]===0;)m++,p++;for(var x=(v-m)*f+1>>>0,A=new Uint8Array(x);m!==v;){for(var w=d[m],E=0,D=x-1;(w!==0||E<g)&&D!==-1;D--,E++)w+=256*A[D]>>>0,A[D]=w%a>>>0,w=w/a>>>0;if(w!==0)throw new Error("Non-zero carry");g=E,m++}for(var B=x-g;B!==x&&A[B]===0;)B++;for(var R=c.repeat(p);B<x;++B)R+=e.charAt(A[B]);return R}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 v=(d.length-p)*u+1>>>0,x=new Uint8Array(v);d[p];){var A=r[d.charCodeAt(p)];if(A===255)return;for(var w=0,E=v-1;(A!==0||w<m)&&E!==-1;E--,w++)A+=a*x[E]>>>0,x[E]=A%256>>>0,A=A/256>>>0;if(A!==0)throw new Error("Non-zero carry");m=w,p++}if(d[p]!==" "){for(var D=v-m;D!==v&&x[D]===0;)D++;for(var B=new Uint8Array(g+(v-D)),R=g;D!==v;)B[R++]=x[D++];return B}}}function y(d){var p=h(d);if(p)return p;throw new Error(`Non-${t} character`)}return{encode:l,decodeUnsafe:h,decode:y}}var wy=by,vy=wy,ju=vy;var e4=new Uint8Array(0);var Ju=(e,t)=>{if(e===t)return!0;if(e.byteLength!==t.byteLength)return!1;for(let r=0;r<e.byteLength;r++)if(e[r]!==t[r])return!1;return!0},ar=e=>{if(e instanceof Uint8Array&&e.constructor.name==="Uint8Array")return e;if(e instanceof ArrayBuffer)return new Uint8Array(e);if(ArrayBuffer.isView(e))return new Uint8Array(e.buffer,e.byteOffset,e.byteLength);throw new Error("Unknown type, must be binary type")};var ef=e=>new TextEncoder().encode(e),tf=e=>new TextDecoder().decode(e);var ha=class{constructor(t,r,n){this.name=t,this.prefix=r,this.baseEncode=n}encode(t){if(t instanceof Uint8Array)return`${this.prefix}${this.baseEncode(t)}`;throw Error("Unknown type, must be binary type")}},da=class{constructor(t,r,n){if(this.name=t,this.prefix=r,r.codePointAt(0)===void 0)throw new Error("Invalid prefix character");this.prefixCodePoint=r.codePointAt(0),this.baseDecode=n}decode(t){if(typeof t=="string"){if(t.codePointAt(0)!==this.prefixCodePoint)throw Error(`Unable to decode multibase string ${JSON.stringify(t)}, ${this.name} decoder only supports inputs prefixed with ${this.prefix}`);return this.baseDecode(t.slice(this.prefix.length))}else throw Error("Can only multibase decode strings")}or(t){return nf(this,t)}},pa=class{constructor(t){this.decoders=t}or(t){return nf(this,t)}decode(t){let r=t[0],n=this.decoders[r];if(n)return n.decode(t);throw RangeError(`Unable to decode multibase string ${JSON.stringify(t)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`)}},nf=(e,t)=>new pa({...e.decoders||{[e.prefix]:e},...t.decoders||{[t.prefix]:t}}),ya=class{constructor(t,r,n,i){this.name=t,this.prefix=r,this.baseEncode=n,this.baseDecode=i,this.encoder=new ha(t,r,n),this.decoder=new da(t,r,i)}encode(t){return this.encoder.encode(t)}decode(t){return this.decoder.decode(t)}},kn=({name:e,prefix:t,encode:r,decode:n})=>new ya(e,t,r,n),Dr=({prefix:e,name:t,alphabet:r})=>{let{encode:n,decode:i}=ju(r,t);return kn({prefix:e,name:t,encode:n,decode:o=>ar(i(o))})},Ey=(e,t,r,n)=>{let i={};for(let f=0;f<t.length;++f)i[t[f]]=f;let o=e.length;for(;e[o-1]==="=";)--o;let s=new Uint8Array(o*r/8|0),a=0,c=0,u=0;for(let f=0;f<o;++f){let l=i[e[f]];if(l===void 0)throw new SyntaxError(`Non-${n} character`);c=c<<r|l,a+=r,a>=8&&(a-=8,s[u++]=255&c>>a)}if(a>=r||255&c<<8-a)throw new SyntaxError("Unexpected end of data");return s},Sy=(e,t,r)=>{let n=t[t.length-1]==="=",i=(1<<r)-1,o="",s=0,a=0;for(let c=0;c<e.length;++c)for(a=a<<8|e[c],s+=8;s>r;)s-=r,o+=t[i&a>>s];if(s&&(o+=t[i&a<<r-s]),n)for(;o.length*r&7;)o+="=";return o},Le=({name:e,prefix:t,bitsPerChar:r,alphabet:n})=>kn({prefix:t,name:e,encode(i){return Sy(i,n,r)},decode(i){return Ey(i,n,r,e)}});var It=Le({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),Cy=Le({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),Ay=Le({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),Dy=Le({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),By=Le({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),Iy=Le({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),Ty=Le({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),_y=Le({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),ky=Le({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var ma={};ue(ma,{base58btc:()=>ke,base58flickr:()=>Ry});var ke=Dr({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),Ry=Dr({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var ba={};ue(ba,{base64:()=>Rn,base64pad:()=>Ly,base64url:()=>xa,base64urlpad:()=>Ny});var Rn=Le({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),Ly=Le({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),xa=Le({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),Ny=Le({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});pt.default.formatters.b=e=>e==null?"undefined":ke.baseEncode(e);pt.default.formatters.t=e=>e==null?"undefined":It.baseEncode(e);pt.default.formatters.m=e=>e==null?"undefined":Rn.baseEncode(e);pt.default.formatters.p=e=>e==null?"undefined":e.toString();pt.default.formatters.c=e=>e==null?"undefined":e.toString();pt.default.formatters.k=e=>e==null?"undefined":e.toString();pt.default.formatters.a=e=>e==null?"undefined":e.toString();function Py(e){let t=()=>{};return t.enabled=!1,t.color="",t.diff=0,t.log=()=>{},t.namespace=e,t.destroy=()=>!0,t.extend=()=>t,t}function Ne(e){let t=Py(`${e}:trace`);return pt.default.enabled(`${e}:trace`)&&pt.default.names.map(r=>r.toString()).find(r=>r.includes(":trace"))!=null&&(t=(0,pt.default)(`${e}:trace`)),Object.assign((0,pt.default)(e),{error:(0,pt.default)(`${e}:error`),trace:t})}var of=Symbol.for("@libp2p/peer-id");var wa={};ue(wa,{base10:()=>Uy});var Uy=Dr({prefix:"9",name:"base10",alphabet:"0123456789"});var va={};ue(va,{base16:()=>Oy,base16upper:()=>Fy});var Oy=Le({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),Fy=Le({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var Ea={};ue(Ea,{base2:()=>Ky});var Ky=Le({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var Sa={};ue(Sa,{base256emoji:()=>zy});var sf=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}"),My=sf.reduce((e,t,r)=>(e[r]=t,e),[]),Vy=sf.reduce((e,t,r)=>(e[t.codePointAt(0)]=r,e),[]);function qy(e){return e.reduce((t,r)=>(t+=My[r],t),"")}function Hy(e){let t=[];for(let r of e){let n=Vy[r.codePointAt(0)];if(n===void 0)throw new Error(`Non-base256emoji character: ${r}`);t.push(n)}return new Uint8Array(t)}var zy=kn({prefix:"\u{1F680}",name:"base256emoji",encode:qy,decode:Hy});var Ca={};ue(Ca,{base36:()=>Gy,base36upper:()=>Wy});var Gy=Dr({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),Wy=Dr({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var Aa={};ue(Aa,{base8:()=>$y});var $y=Le({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var Da={};ue(Da,{identity:()=>Yy});var Yy=kn({prefix:"\0",name:"identity",encode:e=>tf(e),decode:e=>ef(e)});var w4=new TextEncoder,v4=new TextDecoder;var Ia={};ue(Ia,{identity:()=>Br});var Qy=uf,af=128,jy=127,Jy=~jy,eg=Math.pow(2,31);function uf(e,t,r){t=t||[],r=r||0;for(var n=r;e>=eg;)t[r++]=e&255|af,e/=128;for(;e&Jy;)t[r++]=e&255|af,e>>>=7;return t[r]=e|0,uf.bytes=r-n+1,t}var tg=Ba,rg=128,cf=127;function Ba(e,n){var r=0,n=n||0,i=0,o=n,s,a=e.length;do{if(o>=a)throw Ba.bytes=0,new RangeError("Could not decode varint");s=e[o++],r+=i<28?(s&cf)<<i:(s&cf)*Math.pow(2,i),i+=7}while(s>=rg);return Ba.bytes=o-n,r}var ng=Math.pow(2,7),ig=Math.pow(2,14),og=Math.pow(2,21),sg=Math.pow(2,28),ag=Math.pow(2,35),cg=Math.pow(2,42),ug=Math.pow(2,49),fg=Math.pow(2,56),lg=Math.pow(2,63),hg=function(e){return e<ng?1:e<ig?2:e<og?3:e<sg?4:e<ag?5:e<cg?6:e<ug?7:e<fg?8:e<lg?9:10},dg={encode:Qy,decode:tg,encodingLength:hg},pg=dg,Ei=pg;var Si=(e,t=0)=>[Ei.decode(e,t),Ei.decode.bytes],Ln=(e,t,r=0)=>(Ei.encode(e,t,r),t),Nn=e=>Ei.encodingLength(e);var zt=(e,t)=>{let r=t.byteLength,n=Nn(e),i=n+Nn(r),o=new Uint8Array(i+r);return Ln(e,o,0),Ln(r,o,n),o.set(t,i),new Pn(e,r,t,o)},Zr=e=>{let t=ar(e),[r,n]=Si(t),[i,o]=Si(t.subarray(n)),s=t.subarray(n+o);if(s.byteLength!==i)throw new Error("Incorrect length");return new Pn(r,i,s,t)},ff=(e,t)=>{if(e===t)return!0;{let r=t;return e.code===r.code&&e.size===r.size&&r.bytes instanceof Uint8Array&&Ju(e.bytes,r.bytes)}},Pn=class{constructor(t,r,n,i){this.code=t,this.size=r,this.digest=n,this.bytes=i}};var lf=0,yg="identity",hf=ar,gg=e=>zt(lf,hf(e)),Br={code:lf,name:yg,encode:hf,digest:gg};var ka={};ue(ka,{sha256:()=>je,sha512:()=>mg});var _a=({name:e,code:t,encode:r})=>new Ta(e,t,r),Ta=class{constructor(t,r,n){this.name=t,this.code=r,this.encode=n}digest(t){if(t instanceof Uint8Array){let r=this.encode(t);return r instanceof Uint8Array?zt(this.code,r):r.then(n=>zt(this.code,n))}else throw Error("Unknown type, must be binary type")}};var pf=e=>async t=>new Uint8Array(await crypto.subtle.digest(e,t)),je=_a({name:"sha2-256",code:18,encode:pf("SHA-256")}),mg=_a({name:"sha2-512",code:19,encode:pf("SHA-512")});var yf=(e,t)=>{let{bytes:r,version:n}=e;switch(n){case 0:return bg(r,Ra(e),t||ke.encoder);default:return wg(r,Ra(e),t||It.encoder)}};var gf=new WeakMap,Ra=e=>{let t=gf.get(e);if(t==null){let r=new Map;return gf.set(e,r),r}return t},Tt=class e{constructor(t,r,n,i){this.code=r,this.version=t,this.multihash=n,this.bytes=i,this["/"]=i}get asCID(){return this}get byteOffset(){return this.bytes.byteOffset}get byteLength(){return this.bytes.byteLength}toV0(){switch(this.version){case 0:return this;case 1:{let{code:t,multihash:r}=this;if(t!==Ci)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(r.code!==vg)throw new Error("Cannot convert non sha2-256 multihash CID to CIDv0");return e.createV0(r)}default:throw Error(`Can not convert CID version ${this.version} to version 0. This is a bug please report`)}}toV1(){switch(this.version){case 0:{let{code:t,digest:r}=this.multihash,n=zt(t,r);return e.createV1(this.code,n)}case 1:return this;default:throw Error(`Can not convert CID version ${this.version} to version 1. This is a bug please report`)}}equals(t){return e.equals(this,t)}static equals(t,r){let n=r;return n&&t.code===n.code&&t.version===n.version&&ff(t.multihash,n.multihash)}toString(t){return yf(this,t)}toJSON(){return{"/":yf(this)}}link(){return this}get[Symbol.toStringTag](){return"CID"}[Symbol.for("nodejs.util.inspect.custom")](){return`CID(${this.toString()})`}static asCID(t){if(t==null)return null;let r=t;if(r instanceof e)return r;if(r["/"]!=null&&r["/"]===r.bytes||r.asCID===r){let{version:n,code:i,multihash:o,bytes:s}=r;return new e(n,i,o,s||mf(n,i,o.bytes))}else if(r[Eg]===!0){let{version:n,multihash:i,code:o}=r,s=Zr(i);return e.create(n,o,s)}else return null}static create(t,r,n){if(typeof r!="number")throw new Error("String codecs are no longer supported");if(!(n.bytes instanceof Uint8Array))throw new Error("Invalid digest");switch(t){case 0:{if(r!==Ci)throw new Error(`Version 0 CID must use dag-pb (code: ${Ci}) block encoding`);return new e(t,r,n,n.bytes)}case 1:{let i=mf(t,r,n.bytes);return new e(t,r,n,i)}default:throw new Error("Invalid version")}}static createV0(t){return e.create(0,Ci,t)}static createV1(t,r){return e.create(1,t,r)}static decode(t){let[r,n]=e.decodeFirst(t);if(n.length)throw new Error("Incorrect length");return r}static decodeFirst(t){let r=e.inspectBytes(t),n=r.size-r.multihashSize,i=ar(t.subarray(n,n+r.multihashSize));if(i.byteLength!==r.multihashSize)throw new Error("Incorrect length");let o=i.subarray(r.multihashSize-r.digestSize),s=new Pn(r.multihashCode,r.digestSize,o,i);return[r.version===0?e.createV0(s):e.createV1(r.codec,s),t.subarray(r.size)]}static inspectBytes(t){let r=0,n=()=>{let[l,h]=Si(t.subarray(r));return r+=h,l},i=n(),o=Ci;if(i===18?(i=0,r=0):o=n(),i!==0&&i!==1)throw new RangeError(`Invalid CID version ${i}`);let s=r,a=n(),c=n(),u=r+c,f=u-s;return{version:i,codec:o,multihashCode:a,digestSize:c,multihashSize:f,size:u}}static parse(t,r){let[n,i]=xg(t,r),o=e.decode(i);if(o.version===0&&t[0]!=="Q")throw Error("Version 0 CID string must not include multibase prefix");return Ra(o).set(n,t),o}},xg=(e,t)=>{switch(e[0]){case"Q":{let r=t||ke;return[ke.prefix,r.decode(`${ke.prefix}${e}`)]}case ke.prefix:{let r=t||ke;return[ke.prefix,r.decode(e)]}case It.prefix:{let r=t||It;return[It.prefix,r.decode(e)]}default:{if(t==null)throw Error("To parse non base32 or base58btc encoded CID multibase decoder must be provided");return[e[0],t.decode(e)]}}},bg=(e,t,r)=>{let{prefix:n}=r;if(n!==ke.prefix)throw Error(`Cannot string encode V0 in ${r.name} encoding`);let i=t.get(n);if(i==null){let o=r.encode(e).slice(1);return t.set(n,o),o}else return i},wg=(e,t,r)=>{let{prefix:n}=r,i=t.get(n);if(i==null){let o=r.encode(e);return t.set(n,o),o}else return i},Ci=112,vg=18,mf=(e,t,r)=>{let n=Nn(e),i=n+Nn(t),o=new Uint8Array(i+r.byteLength);return Ln(e,o,0),Ln(t,o,n),o.set(r,i),o},Eg=Symbol.for("@ipld/js-cid/CID");var Gt={...Da,...Ea,...Aa,...wa,...va,...ga,...Ca,...ma,...ba,...Sa},O4={...ka,...Ia};function Me(e,t){if(e===t)return!0;if(e.byteLength!==t.byteLength)return!1;for(let r=0;r<e.byteLength;r++)if(e[r]!==t[r])return!1;return!0}var Sg=Symbol.for("nodejs.util.inspect.custom"),xf=Object.values(Gt).map(e=>e.decoder).reduce((e,t)=>e.or(t),Gt.identity.decoder),bf=114,La=36,Na=37,Ai=class{type;multihash;privateKey;publicKey;string;constructor(t){this.type=t.type,this.multihash=t.multihash,this.privateKey=t.privateKey,Object.defineProperty(this,"string",{enumerable:!1,writable:!0})}get[Symbol.toStringTag](){return`PeerId(${this.toString()})`}[of]=!0;toString(){return this.string==null&&(this.string=ke.encode(this.multihash.bytes).slice(1)),this.string}toCID(){return Tt.createV1(bf,this.multihash)}toBytes(){return this.multihash.bytes}toJSON(){return this.toString()}equals(t){if(t instanceof Uint8Array)return Me(this.multihash.bytes,t);if(typeof t=="string")return Qr(t).equals(this);if(t?.multihash?.bytes!=null)return Me(this.multihash.bytes,t.multihash.bytes);throw new Error("not valid Id")}[Sg](){return`PeerId(${this.toString()})`}},Un=class extends Ai{type="RSA";publicKey;constructor(t){super({...t,type:"RSA"}),this.publicKey=t.publicKey}},On=class extends Ai{type="Ed25519";publicKey;constructor(t){super({...t,type:"Ed25519"}),this.publicKey=t.multihash.digest}},Fn=class extends Ai{type="secp256k1";publicKey;constructor(t){super({...t,type:"secp256k1"}),this.publicKey=t.multihash.digest}};function Qr(e,t){if(t=t??xf,e.charAt(0)==="1"||e.charAt(0)==="Q"){let r=Zr(ke.decode(`z${e}`));return e.startsWith("12D")?new On({multihash:r}):e.startsWith("16U")?new Fn({multihash:r}):new Un({multihash:r})}return Cg(xf.decode(e))}function Cg(e){try{let t=Zr(e);if(t.code===Br.code){if(t.digest.length===La)return new On({multihash:t});if(t.digest.length===Na)return new Fn({multihash:t})}if(t.code===je.code)return new Un({multihash:t})}catch{return Ag(Tt.decode(e))}throw new Error("Supplied PeerID CID is invalid")}function Ag(e){if(e==null||e.multihash==null||e.version==null||e.version===1&&e.code!==bf)throw new Error("Supplied PeerID CID is invalid");let t=e.multihash;if(t.code===je.code)return new Un({multihash:e.multihash});if(t.code===Br.code){if(t.digest.length===La)return new On({multihash:e.multihash});if(t.digest.length===Na)return new Fn({multihash:e.multihash})}throw new Error("Supplied PeerID CID is invalid")}async function Pa(e,t){return e.length===La?new On({multihash:zt(Br.code,e),privateKey:t}):e.length===Na?new Fn({multihash:zt(Br.code,e),privateKey:t}):new Un({multihash:await je.digest(e),publicKey:e,privateKey:t})}function Ir(e){return globalThis.Buffer!=null?new Uint8Array(e.buffer,e.byteOffset,e.byteLength):e}function cr(e=0){return globalThis.Buffer?.alloc!=null?Ir(globalThis.Buffer.alloc(e)):new Uint8Array(e)}function bt(e=0){return globalThis.Buffer?.allocUnsafe!=null?Ir(globalThis.Buffer.allocUnsafe(e)):new Uint8Array(e)}function vf(e,t,r,n){return{name:e,prefix:t,encoder:{name:e,prefix:t,encode:r},decoder:{decode:n}}}var wf=vf("utf8","u",e=>"u"+new TextDecoder("utf8").decode(e),e=>new TextEncoder().encode(e.substring(1))),Ua=vf("ascii","a",e=>{let t="a";for(let r=0;r<e.length;r++)t+=String.fromCharCode(e[r]);return t},e=>{e=e.substring(1);let t=bt(e.length);for(let r=0;r<e.length;r++)t[r]=e.charCodeAt(r);return t}),Bg={utf8:wf,"utf-8":wf,hex:Gt.base16,latin1:Ua,ascii:Ua,binary:Ua,...Gt},xo=Bg;function se(e,t="utf8"){let r=xo[t];if(r==null)throw new Error(`Unsupported encoding "${t}"`);return(t==="utf8"||t==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?globalThis.Buffer.from(e.buffer,e.byteOffset,e.byteLength).toString("utf8"):r.encoder.encode(e).substring(1)}var Ig=Math.pow(2,7),Tg=Math.pow(2,14),_g=Math.pow(2,21),Oa=Math.pow(2,28),Fa=Math.pow(2,35),Ka=Math.pow(2,42),Ma=Math.pow(2,49),ye=128,it=127;function ut(e){if(e<Ig)return 1;if(e<Tg)return 2;if(e<_g)return 3;if(e<Oa)return 4;if(e<Fa)return 5;if(e<Ka)return 6;if(e<Ma)return 7;if(Number.MAX_SAFE_INTEGER!=null&&e>Number.MAX_SAFE_INTEGER)throw new RangeError("Could not encode varint");return 8}function kg(e,t,r=0){switch(ut(e)){case 8:t[r++]=e&255|ye,e/=128;case 7:t[r++]=e&255|ye,e/=128;case 6:t[r++]=e&255|ye,e/=128;case 5:t[r++]=e&255|ye,e/=128;case 4:t[r++]=e&255|ye,e>>>=7;case 3:t[r++]=e&255|ye,e>>>=7;case 2:t[r++]=e&255|ye,e>>>=7;case 1:{t[r++]=e&255,e>>>=7;break}default:throw new Error("unreachable")}return t}function Rg(e,t,r=0){switch(ut(e)){case 8:t.set(r++,e&255|ye),e/=128;case 7:t.set(r++,e&255|ye),e/=128;case 6:t.set(r++,e&255|ye),e/=128;case 5:t.set(r++,e&255|ye),e/=128;case 4:t.set(r++,e&255|ye),e>>>=7;case 3:t.set(r++,e&255|ye),e>>>=7;case 2:t.set(r++,e&255|ye),e>>>=7;case 1:{t.set(r++,e&255),e>>>=7;break}default:throw new Error("unreachable")}return t}function Lg(e,t){let r=e[t],n=0;if(n+=r&it,r<ye||(r=e[t+1],n+=(r&it)<<7,r<ye)||(r=e[t+2],n+=(r&it)<<14,r<ye)||(r=e[t+3],n+=(r&it)<<21,r<ye)||(r=e[t+4],n+=(r&it)*Oa,r<ye)||(r=e[t+5],n+=(r&it)*Fa,r<ye)||(r=e[t+6],n+=(r&it)*Ka,r<ye)||(r=e[t+7],n+=(r&it)*Ma,r<ye))return n;throw new RangeError("Could not decode varint")}function Ng(e,t){let r=e.get(t),n=0;if(n+=r&it,r<ye||(r=e.get(t+1),n+=(r&it)<<7,r<ye)||(r=e.get(t+2),n+=(r&it)<<14,r<ye)||(r=e.get(t+3),n+=(r&it)<<21,r<ye)||(r=e.get(t+4),n+=(r&it)*Oa,r<ye)||(r=e.get(t+5),n+=(r&it)*Fa,r<ye)||(r=e.get(t+6),n+=(r&it)*Ka,r<ye)||(r=e.get(t+7),n+=(r&it)*Ma,r<ye))return n;throw new RangeError("Could not decode varint")}function Tr(e,t,r=0){return t==null&&(t=bt(ut(e))),t instanceof Uint8Array?kg(e,t,r):Rg(e,t,r)}function _t(e,t=0){return e instanceof Uint8Array?Lg(e,t):Ng(e,t)}function ge(e,t){t==null&&(t=e.reduce((i,o)=>i+o.length,0));let r=bt(t),n=0;for(let i of e)r.set(i,n),n+=i.length;return Ir(r)}var bo=class{index=0;input="";new(t){return this.index=0,this.input=t,this}readAtomically(t){let r=this.index,n=t();return n===void 0&&(this.index=r),n}parseWith(t){let r=t();if(this.index===this.input.length)return r}peekChar(){if(!(this.index>=this.input.length))return this.input[this.index]}readChar(){if(!(this.index>=this.input.length))return this.input[this.index++]}readGivenChar(t){return this.readAtomically(()=>{let r=this.readChar();if(r===t)return r})}readSeparator(t,r,n){return this.readAtomically(()=>{if(!(r>0&&this.readGivenChar(t)===void 0))return n()})}readNumber(t,r,n,i){return this.readAtomically(()=>{let o=0,s=0,a=this.peekChar();if(a===void 0)return;let c=a==="0",u=2**(8*i)-1;for(;;){let f=this.readAtomically(()=>{let l=this.readChar();if(l===void 0)return;let h=Number.parseInt(l,t);if(!Number.isNaN(h))return h});if(f===void 0)break;if(o*=t,o+=f,o>u||(s+=1,r!==void 0&&s>r))return}if(s!==0)return!n&&c&&s>1?void 0:o})}readIPv4Addr(){return this.readAtomically(()=>{let t=new Uint8Array(4);for(let r=0;r<t.length;r++){let n=this.readSeparator(".",r,()=>this.readNumber(10,3,!1,1));if(n===void 0)return;t[r]=n}return t})}readIPv6Addr(){let t=r=>{for(let n=0;n<r.length/2;n++){let i=n*2;if(n<r.length-3){let s=this.readSeparator(":",n,()=>this.readIPv4Addr());if(s!==void 0)return r[i]=s[0],r[i+1]=s[1],r[i+2]=s[2],r[i+3]=s[3],[i+4,!0]}let o=this.readSeparator(":",n,()=>this.readNumber(16,4,!0,2));if(o===void 0)return[i,!1];r[i]=o>>8,r[i+1]=o&255}return[r.length,!1]};return this.readAtomically(()=>{let r=new Uint8Array(16),[n,i]=t(r);if(n===16)return r;if(i||this.readGivenChar(":")===void 0||this.readGivenChar(":")===void 0)return;let o=new Uint8Array(14),s=16-(n+2),[a]=t(o.subarray(0,s));return r.set(o.subarray(0,a),16-a),r})}readIPAddr(){return this.readIPv4Addr()??this.readIPv6Addr()}};var Ef=45,Pg=15,Kn=new bo;function Va(e){if(!(e.length>Pg))return Kn.new(e).parseWith(()=>Kn.readIPv4Addr())}function qa(e){if(e.includes("%")&&(e=e.split("%")[0]),!(e.length>Ef))return Kn.new(e).parseWith(()=>Kn.readIPv6Addr())}function wo(e){if(e.includes("%")&&(e=e.split("%")[0]),!(e.length>Ef))return Kn.new(e).parseWith(()=>Kn.readIPAddr())}var yS=parseInt("0xFFFF",16),gS=new Uint8Array([0,0,0,0,0,0,0,0,0,0,255,255]);function Be(e,t="utf8"){let r=xo[t];if(r==null)throw new Error(`Unsupported encoding "${t}"`);return(t==="utf8"||t==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?Ir(globalThis.Buffer.from(e,"utf-8")):r.decoder.decode(`${r.prefix}${e}`)}function vo(e){return!!Va(e)}function Eo(e){return!!qa(e)}function So(e){return!!wo(e)}var Af=vo,Mg=Eo,Ha=function(e){let t=0;if(e=e.toString().trim(),Af(e)){let r=new Uint8Array(t+4);return e.split(/\./g).forEach(n=>{r[t++]=parseInt(n,10)&255}),r}if(Mg(e)){let r=e.split(":",8),n;for(n=0;n<r.length;n++){let o=Af(r[n]),s;o&&(s=Ha(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(t+16);for(n=0;n<r.length;n++){let o=parseInt(r[n],16);i[t++]=o>>8&255,i[t++]=o&255}return i}throw new Error("invalid ip address")},Df=function(e,t=0,r){t=~~t,r=r??e.length-t;let n=new DataView(e.buffer);if(r===4){let i=[];for(let o=0;o<r;o++)i.push(e[t+o]);return i.join(".")}if(r===16){let i=[];for(let o=0;o<r;o+=2)i.push(n.getUint16(t+o).toString(16));return i.join(":").replace(/(^|:)0(:0)*:0(:|$)/,"$1::$3").replace(/:{3,4}/,"::")}return""};var Mn={},za={},qg=[[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"]];qg.forEach(e=>{let t=Hg(...e);za[t.code]=t,Mn[t.name]=t});function Hg(e,t,r,n,i){return{code:e,size:t,name:r,resolvable:!!n,path:!!i}}function be(e){if(typeof e=="number"){if(za[e]!=null)return za[e];throw new Error(`no protocol with code: ${e}`)}else if(typeof e=="string"){if(Mn[e]!=null)return Mn[e];throw new Error(`no protocol with name: ${e}`)}throw new Error(`invalid protocol id type: ${typeof e}`)}var r5=be("ip4"),n5=be("ip6"),i5=be("ipcidr");function Wa(e,t){switch(be(e).code){case 4:case 41:return Gg(t);case 42:return Tf(t);case 6:case 273:case 33:case 132:return kf(t).toString();case 53:case 54:case 55:case 56:case 400:case 449:case 777:return Tf(t);case 421:return Zg(t);case 444:return _f(t);case 445:return _f(t);case 466:return Yg(t);default:return se(t,"base16")}}function $a(e,t){switch(be(e).code){case 4:return Bf(t);case 41:return Bf(t);case 42:return If(t);case 6:case 273:case 33:case 132:return Ya(parseInt(t,10));case 53:case 54:case 55:case 56:case 400:case 449:case 777:return If(t);case 421:return Wg(t);case 444:return Xg(t);case 445:return Qg(t);case 466:return $g(t);default:return Be(t,"base16")}}var Ga=Object.values(Gt).map(e=>e.decoder),zg=function(){let e=Ga[0].or(Ga[1]);return Ga.slice(2).forEach(t=>e=e.or(t)),e}();function Bf(e){if(!So(e))throw new Error("invalid ip address");return Ha(e)}function Gg(e){let t=Df(e,0,e.length);if(t==null)throw new Error("ipBuff is required");if(!So(t))throw new Error("invalid ip address");return t}function Ya(e){let t=new ArrayBuffer(2);return new DataView(t).setUint16(0,e),new Uint8Array(t)}function kf(e){return new DataView(e.buffer).getUint16(e.byteOffset)}function If(e){let t=Be(e),r=Uint8Array.from(Tr(t.length));return ge([r,t],r.length+t.length)}function Tf(e){let t=_t(e);if(e=e.slice(ut(t)),e.length!==t)throw new Error("inconsistent lengths");return se(e)}function Wg(e){let t;e[0]==="Q"||e[0]==="1"?t=Zr(ke.decode(`z${e}`)).bytes:t=Tt.parse(e).multihash.bytes;let r=Uint8Array.from(Tr(t.length));return ge([r,t],r.length+t.length)}function $g(e){let t=zg.decode(e),r=Uint8Array.from(Tr(t.length));return ge([r,t],r.length+t.length)}function Yg(e){let t=_t(e),r=e.slice(ut(t));if(r.length!==t)throw new Error("inconsistent lengths");return"u"+se(r,"base64url")}function Zg(e){let t=_t(e),r=e.slice(ut(t));if(r.length!==t)throw new Error("inconsistent lengths");return se(r,"base58btc")}function Xg(e){let t=e.split(":");if(t.length!==2)throw new Error(`failed to parse onion addr: ["'${t.join('", "')}'"]' does not contain a port number`);if(t[0].length!==16)throw new Error(`failed to parse onion addr: ${t[0]} not a Tor onion address.`);let r=It.decode("b"+t[0]),n=parseInt(t[1],10);if(n<1||n>65536)throw new Error("Port number is not in range(1, 65536)");let i=Ya(n);return ge([r,i],r.length+i.length)}function Qg(e){let t=e.split(":");if(t.length!==2)throw new Error(`failed to parse onion addr: ["'${t.join('", "')}'"]' does not contain a port number`);if(t[0].length!==56)throw new Error(`failed to parse onion addr: ${t[0]} not a Tor onion3 address.`);let r=It.decode(`b${t[0]}`),n=parseInt(t[1],10);if(n<1||n>65536)throw new Error("Port number is not in range(1, 65536)");let i=Ya(n);return ge([r,i],r.length+i.length)}function _f(e){let t=e.slice(0,e.length-2),r=e.slice(e.length-2),n=se(t,"base32"),i=kf(r);return`${n}:${i}`}function Rf(e){e=Za(e);let t=[],r=[],n=null,i=e.split("/").slice(1);if(i.length===1&&i[0]==="")return{bytes:new Uint8Array,string:"/",tuples:[],stringTuples:[],path:null};for(let o=0;o<i.length;o++){let s=i[o],a=be(s);if(a.size===0){t.push([a.code]),r.push([a.code]);continue}if(o++,o>=i.length)throw Nf("invalid address: "+e);if(a.path===!0){n=Za(i.slice(o).join("/")),t.push([a.code,$a(a.code,n)]),r.push([a.code,n]);break}let c=$a(a.code,i[o]);t.push([a.code,c]),r.push([a.code,Wa(a.code,c)])}return{string:Lf(r),bytes:Qa(t),tuples:t,stringTuples:r,path:n}}function Xa(e){let t=[],r=[],n=null,i=0;for(;i<e.length;){let o=_t(e,i),s=ut(o),a=be(o),c=jg(a,e.slice(i+s));if(c===0){t.push([o]),r.push([o]),i+=s;continue}let u=e.slice(i+s,i+s+c);if(i+=c+s,i>e.length)throw Nf("Invalid address Uint8Array: "+se(e,"base16"));t.push([o,u]);let f=Wa(o,u);if(r.push([o,f]),a.path===!0){n=f;break}}return{bytes:Uint8Array.from(e),string:Lf(r),tuples:t,stringTuples:r,path:n}}function Lf(e){let t=[];return e.map(r=>{let n=be(r[0]);return t.push(n.name),r.length>1&&r[1]!=null&&t.push(r[1]),null}),Za(t.join("/"))}function Qa(e){return ge(e.map(t=>{let r=be(t[0]),n=Uint8Array.from(Tr(r.code));return t.length>1&&t[1]!=null&&(n=ge([n,t[1]])),n}))}function jg(e,t){if(e.size>0)return e.size/8;if(e.size===0)return 0;{let r=_t(t instanceof Uint8Array?t:Uint8Array.from(t));return r+ut(r)}}function Za(e){return"/"+e.trim().split("/").filter(t=>t).join("/")}function Nf(e){return new Error("Error parsing address: "+e)}var Jg=Symbol.for("nodejs.util.inspect.custom"),em=[be("dns").code,be("dns4").code,be("dns6").code,be("dnsaddr").code],tm=new Map,Pf=Symbol.for("@multiformats/js-multiaddr/multiaddr");function rm(e){return!!e?.[Pf]}var ja=class e{bytes;#e;#t;#r;#n;[Pf]=!0;constructor(t){t==null&&(t="");let r;if(t instanceof Uint8Array)r=Xa(t);else if(typeof t=="string"){if(t.length>0&&t.charAt(0)!=="/")throw new Error(`multiaddr "${t}" must start with a "/"`);r=Rf(t)}else if(rm(t))r=Xa(t.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 t,r,n,i,o="",s=be("tcp"),a=be("udp"),c=be("ip4"),u=be("ip6"),f=be("dns6"),l=be("ip6zone");for(let[y,d]of this.stringTuples())y===l.code&&(o=`%${d??""}`),em.includes(y)&&(r=s.name,i=443,n=`${d??""}${o}`,t=y===f.code?6:4),(y===s.code||y===a.code)&&(r=be(y).name,i=parseInt(d??"")),(y===c.code||y===u.code)&&(r=be(y).name,n=`${d??""}${o}`,t=y===u.code?6:4);if(t==null||r==null||n==null||i==null)throw new Error('multiaddr must have a valid format: "/{ip4, ip6, dns4, dns6, dnsaddr}/{address}/{tcp, udp}/{port}".');return{family:t,host:n,transport:r,port:i}}protos(){return this.#t.map(([t])=>Object.assign({},be(t)))}protoCodes(){return this.#t.map(([t])=>t)}protoNames(){return this.#t.map(([t])=>be(t).name)}tuples(){return this.#t}stringTuples(){return this.#r}encapsulate(t){return t=new e(t),new e(this.toString()+t.toString())}decapsulate(t){let r=t.toString(),n=this.toString(),i=n.lastIndexOf(r);if(i<0)throw new Error(`Address ${this.toString()} does not contain subaddress: ${t.toString()}`);return new e(n.slice(0,i))}decapsulateCode(t){let r=this.tuples();for(let n=r.length-1;n>=0;n--)if(r[n][0]===t)return new e(Qa(r.slice(0,n)));return this}getPeerId(){try{let t=[];this.stringTuples().forEach(([n,i])=>{n===Mn.p2p.code&&t.push([n,i]),n===Mn["p2p-circuit"].code&&(t=[])});let r=t.pop();if(r?.[1]!=null){let n=r[1];return n[0]==="Q"||n[0]==="1"?se(ke.decode(`z${n}`),"base58btc"):se(Tt.parse(n).multihash.bytes,"base58btc")}return null}catch{return null}}getPath(){return this.#n}equals(t){return Me(this.bytes,t.bytes)}async resolve(t){let r=this.protos().find(o=>o.resolvable);if(r==null)return[this];let n=tm.get(r.name);if(n==null)throw new W(`no available resolver for ${r.name}`,"ERR_NO_AVAILABLE_RESOLVER");return(await n(this,t)).map(o=>new e(o))}nodeAddress(){let t=this.toOptions();if(t.transport!=="tcp"&&t.transport!=="udp")throw new Error(`multiaddr must have a valid format - no protocol with name: "${t.transport}". Must have a valid transport protocol: "{tcp, udp}"`);return{family:t.family,address:t.host,port:t.port}}isThinWaistAddress(t){let r=(t??this).protos();return!(r.length!==2||r[0].code!==4&&r[0].code!==41||r[1].code!==6&&r[1].code!==273)}[Jg](){return`Multiaddr(${this.#e})`}};function Wt(e){return new ja(e)}var nm=e=>e.toString().split("/").slice(1),Bi=e=>({match:t=>t.length<1?!1:e(t[0])?t.slice(1):!1,pattern:"fn"}),Ue=e=>({match:t=>Bi(r=>r===e).match(t),pattern:e}),Do=()=>({match:e=>Bi(t=>typeof t=="string").match(e),pattern:"{string}"}),Uf=()=>({match:e=>Bi(t=>!isNaN(parseInt(t))).match(e),pattern:"{number}"}),wt=()=>({match:e=>{if(e.length<2||e[0]!=="p2p"&&e[0]!=="ipfs")return!1;if(e[1].startsWith("Q")||e[1].startsWith("1"))try{ke.decode(`z${e[1]}`)}catch{return!1}else return!1;return e.slice(2)},pattern:"/p2p/{peerid}"}),Co=()=>({match:e=>{if(e.length<2||e[0]!=="certhash")return!1;try{xa.decode(e[1])}catch{return!1}return e.slice(2)},pattern:"/certhash/{certhash}"}),$t=e=>({match:t=>{let r=e.match(t);return r===!1?t:r},pattern:`optional(${e.pattern})`}),Yt=(...e)=>({match:t=>{let r;for(let n of e){let i=n.match(t);i!==!1&&(r==null||i.length<r.length)&&(r=i)}return r??!1},pattern:`or(${e.map(t=>t.pattern).join(", ")})`}),Oe=(...e)=>({match:t=>{for(let r of e){let n=r.match(t);if(n===!1)return!1;t=n}return t},pattern:`and(${e.map(t=>t.pattern).join(", ")})`});function ze(...e){function t(i){let o=nm(i);for(let s of e){let a=s.match(o);if(a===!1)return!1;o=a}return o}function r(i){return t(i)!==!1}function n(i){let o=t(i);return o===!1?!1:o.length===0}return{matches:r,exactMatch:n}}var ec=Oe(Ue("dns4"),Do()),tc=Oe(Ue("dns6"),Do()),rc=Oe(Ue("dnsaddr"),Do()),Of=Oe(Ue("dns"),Do()),T5=ze(ec),_5=ze(tc),k5=ze(rc),R5=ze(Yt(Of,rc,ec,tc)),Ff=Oe(Ue("ip4"),Bi(vo)),Kf=Oe(Ue("ip6"),Bi(Eo)),Mf=Yt(Ff,Kf),Bo=Yt(Mf,Of,ec,tc,rc),L5=ze(Ff),N5=ze(Kf),P5=ze(Mf),Io=Oe(Bo,Ue("tcp"),Uf()),Ii=Oe(Bo,Ue("udp"),Uf()),im=Yt(Io,Ii),U5=ze(Io),O5=ze(Ii),nc=Oe(Ii,Ue("quic")),To=Oe(Ii,Ue("quic-v1")),om=Yt(nc,To),F5=ze(nc),K5=ze(To),Ja=Yt(Bo,Io,Ii,nc,To),Vf=Yt(Oe(Ja,Ue("ws"),$t(wt()))),M5=ze(Vf),qf=Yt(Oe(Ja,Ue("wss"),$t(wt())),Oe(Ja,Ue("tls"),Ue("ws"),$t(wt()))),V5=ze(qf),Hf=Oe(im,Ue("webrtc-direct"),Co(),$t(Co()),$t(wt())),zf=ze(Hf),Gf=Oe(To,Ue("webtransport"),Co(),Co(),$t(wt())),q5=ze(Gf),Ao=Yt(Vf,qf,Oe(Io,$t(wt())),Oe(om,$t(wt())),Oe(Bo,$t(wt())),Hf,Gf,wt()),H5=ze(Ao),sm=Oe(Ao,Ue("p2p-circuit"),wt()),z5=ze(sm),am=Yt(Oe(Ao,Ue("p2p-circuit"),Ue("webrtc"),wt()),Oe(Ao,Ue("webrtc"),$t(wt())),Ue("webrtc")),Wf=ze(am);var yt;(function(e){e.ERR_ALREADY_ABORTED="ERR_ALREADY_ABORTED",e.ERR_DATA_CHANNEL="ERR_DATA_CHANNEL",e.ERR_CONNECTION_CLOSED="ERR_CONNECTION_CLOSED",e.ERR_HASH_NOT_SUPPORTED="ERR_HASH_NOT_SUPPORTED",e.ERR_INVALID_MULTIADDR="ERR_INVALID_MULTIADDR",e.ERR_INVALID_FINGERPRINT="ERR_INVALID_FINGERPRINT",e.ERR_INVALID_PARAMETERS="ERR_INVALID_PARAMETERS",e.ERR_NOT_IMPLEMENTED="ERR_NOT_IMPLEMENTED",e.ERR_TOO_MANY_INBOUND_PROTOCOL_STREAMS="ERR_TOO_MANY_INBOUND_PROTOCOL_STREAMS",e.ERR_TOO_MANY_OUTBOUND_PROTOCOL_STREAMS="ERR_TOO_MANY_OUTBOUND_PROTOCOL_STREAMS"})(yt||(yt={}));var _r=class extends W{constructor(t,r){super(`WebRTC transport error: ${t}`,r??""),this.name="WebRTCTransportError"}};var ic=class extends _r{constructor(t,r){super(`[stream: ${t}] data channel error: ${r}`,yt.ERR_DATA_CHANNEL),this.name="WebRTC/DataChannelError"}};function fc(e,t){return new ic(e,t)}var oc=class extends _r{constructor(t){super(`There was a problem with the Multiaddr which was passed in: ${t}`,yt.ERR_INVALID_MULTIADDR),this.name="WebRTC/InappropriateMultiaddrError"}};function _o(e){return new oc(e)}var sc=class extends _r{constructor(t){super(`There was a problem with a provided argument: ${t}`,yt.ERR_INVALID_PARAMETERS),this.name="WebRTC/InvalidArgumentError"}};function Ti(e){return new sc(e)}var ac=class extends _r{constructor(t,r){super(`Invalid fingerprint "${t}" within ${r}`,yt.ERR_INVALID_FINGERPRINT),this.name="WebRTC/InvalidFingerprintError"}};function lc(e,t){return new ac(e,t)}var cc=class extends _r{constructor(t){super(`A method (${t}) was called though it has been intentionally left unimplemented.`,yt.ERR_NOT_IMPLEMENTED),this.name="WebRTC/UnimplementedError"}};function $f(e){return new cc(e)}var uc=class extends _r{constructor(t){super(`unsupported hash algorithm: ${t}`,yt.ERR_HASH_NOT_SUPPORTED),this.name="WebRTC/UnsupportedHashAlgorithmError"}};function Yf(e){return new uc(e)}var Zf=function(e,t,r){if(r||arguments.length===2)for(var n=0,i=t.length,o;n<i;n++)(o||!(n in t))&&(o||(o=Array.prototype.slice.call(t,0,n)),o[n]=t[n]);return e.concat(o||Array.prototype.slice.call(t))},cm=function(){function e(t,r,n){this.name=t,this.version=r,this.os=n,this.type="browser"}return e}();var um=function(){function e(t){this.version=t,this.type="node",this.name="node",this.os=process.platform}return e}();var fm=function(){function e(t,r,n,i){this.name=t,this.version=r,this.os=n,this.bot=i,this.type="bot-device"}return e}();var lm=function(){function e(){this.type="bot",this.bot=!0,this.name="bot",this.version=null,this.os=null}return e}();var hm=function(){function e(){this.type="react-native",this.name="react-native",this.version=null,this.os=null}return e}();var dm=/alexa|bot|crawl(er|ing)|facebookexternalhit|feedburner|google web preview|nagios|postrank|pingdom|slurp|spider|yahoo!|yandex/,pm=/(nuhk|curl|Googlebot|Yammybot|Openbot|Slurp|MSNBot|Ask\ Jeeves\/Teoma|ia_archiver)/,Xf=3,ym=[["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",dm]],Qf=[["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 Jf(e){return e?jf(e):typeof document>"u"&&typeof navigator<"u"&&navigator.product==="ReactNative"?new hm:typeof navigator<"u"?jf(navigator.userAgent):xm()}function gm(e){return e!==""&&ym.reduce(function(t,r){var n=r[0],i=r[1];if(t)return t;var o=i.exec(e);return!!o&&[n,o]},!1)}function jf(e){var t=gm(e);if(!t)return null;var r=t[0],n=t[1];if(r==="searchbot")return new lm;var i=n[1]&&n[1].split(".").join("_").split("_").slice(0,3);i?i.length<Xf&&(i=Zf(Zf([],i,!0),bm(Xf-i.length),!0)):i=[];var o=i.join("."),s=mm(e),a=pm.exec(e);return a&&a[1]?new fm(r,o,s,a[1]):new cm(r,o,s)}function mm(e){for(var t=0,r=Qf.length;t<r;t++){var n=Qf[t],i=n[0],o=n[1],s=o.exec(e);if(s)return i}return null}function xm(){var e=typeof process<"u"&&process.version;return e?new um(process.version.slice(1)):null}function bm(e){for(var t=[],r=0;r<e;r++)t.push("0");return t}function Je(){let e={};return e.promise=new Promise((t,r)=>{e.resolve=t,e.reject=r}),e}var Vn=class extends Error{constructor(t){super(t),this.name="TimeoutError"}},hc=class extends Error{constructor(t){super(),this.name="AbortError",this.message=t}},el=e=>globalThis.DOMException===void 0?new hc(e):new DOMException(e),tl=e=>{let t=e.reason===void 0?el("This operation was aborted."):e.reason;return t instanceof Error?t:el(t)};function jr(e,t){let{milliseconds:r,fallback:n,message:i,customTimers:o={setTimeout,clearTimeout}}=t,s,c=new Promise((u,f)=>{if(typeof r!="number"||Math.sign(r)!==1)throw new TypeError(`Expected \`milliseconds\` to be a positive number, got \`${r}\``);if(t.signal){let{signal:h}=t;h.aborted&&f(tl(h)),h.addEventListener("abort",()=>{f(tl(h))})}if(r===Number.POSITIVE_INFINITY){e.then(u,f);return}let l=new Vn;s=o.setTimeout.call(void 0,()=>{if(n){try{u(n())}catch(h){f(h)}return}typeof e.cancel=="function"&&e.cancel(),i===!1?u():i instanceof Error?f(i):(l.message=i??`Promise timed out after ${r} milliseconds`,f(l))},r),(async()=>{try{u(await e)}catch(h){f(h)}})()}).finally(()=>{c.clear()});return c.clear=()=>{o.clearTimeout.call(void 0,s),s=void 0},c}var dc=Ne("libp2p:webrtc:utils"),rl=Jf(),_i=rl!=null&&rl.name==="firefox",ko=async function*(){},Ro=async e=>{},wm=30*1e3;function pc(e,t,r=wm){e.readyState==="open"&&Promise.resolve().then(async()=>{if(e.bufferedAmount>0){dc("%s drain channel with %d buffered bytes",t,e.bufferedAmount);let n=Je(),i=!1;e.bufferedAmountLowThreshold=0;let o=()=>{i||(dc("%s drain channel closed before drain",t),n.resolve())};e.addEventListener("close",o,{once:!0}),e.addEventListener("bufferedamountlow",()=>{i=!0,e.removeEventListener("close",o),n.resolve()}),await jr(n.promise,{milliseconds:r})}}).then(async()=>{e.readyState==="open"&&e.close()}).catch(n=>{dc.error("error closing outbound stream",n)})}var yc=Ne("libp2p:webrtc:maconn"),Jr=class{peerConnection;remoteAddr;timeline;metrics;source=ko();sink=Ro;constructor(t){this.remoteAddr=t.remoteAddr,this.timeline=t.timeline,this.peerConnection=t.peerConnection;let r=this.peerConnection.connectionState;this.peerConnection.onconnectionstatechange=()=>{yc.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(t){yc.trace("closing connection"),this.peerConnection.close(),this.timeline.close=Date.now(),this.metrics?.increment({close:!0})}abort(t){yc.error("closing connection due to error",t),this.peerConnection.close(),this.timeline.close=Date.now(),this.metrics?.increment({abort:!0})}};var ki=class extends Error{constructor(t,r){super(t??"The operation was aborted"),this.type="aborted",this.code=r??"ABORT_ERR"}};function nl(e){if(e!=null){if(typeof e[Symbol.iterator]=="function")return e[Symbol.iterator]();if(typeof e[Symbol.asyncIterator]=="function")return e[Symbol.asyncIterator]();if(typeof e.next=="function")return e}throw new Error("argument is not an iterator or iterable")}function Lo(e,t,r){let n=r??{},i=nl(e);async function*o(){let s,a=()=>{s?.()};for(t.addEventListener("abort",a);;){let c;try{if(t.aborted){let{abortMessage:f,abortCode:l}=n;throw new ki(f,l)}let u=new Promise((f,l)=>{s=()=>{let{abortMessage:h,abortCode:y}=n;l(new ki(h,y))}});c=await Promise.race([u,i.next()]),s=null}catch(u){t.removeEventListener("abort",a);let f=u.type==="aborted"&&t.aborted;if(f&&n.onAbort!=null&&n.onAbort(e),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}t.removeEventListener("abort",a)}return o()}var No=class{buffer;mask;top;btm;next;constructor(t){if(!(t>0)||t-1&t)throw new Error("Max size for a FixedFIFO should be a power of two");this.buffer=new Array(t),this.mask=t-1,this.top=0,this.btm=0,this.next=null}push(t){return this.buffer[this.top]!==void 0?!1:(this.buffer[this.top]=t,this.top=this.top+1&this.mask,!0)}shift(){let t=this.buffer[this.btm];if(t!==void 0)return this.buffer[this.btm]=void 0,this.btm=this.btm+1&this.mask,t}isEmpty(){return this.buffer[this.btm]===void 0}},qn=class{size;hwm;head;tail;constructor(t={}){this.hwm=t.splitLimit??16,this.head=new No(this.hwm),this.tail=this.head,this.size=0}calculateSize(t){return t?.byteLength!=null?t.byteLength:1}push(t){if(t?.value!=null&&(this.size+=this.calculateSize(t.value)),!this.head.push(t)){let r=this.head;this.head=r.next=new No(2*this.head.buffer.length),this.head.push(t)}}shift(){let t=this.tail.shift();if(t===void 0&&this.tail.next!=null){let r=this.tail.next;this.tail.next=null,this.tail=r,t=this.tail.shift()}return t?.value!=null&&(this.size-=this.calculateSize(t.value)),t}isEmpty(){return this.head.isEmpty()}};var gc=class extends Error{type;code;constructor(t,r){super(t??"The operation was aborted"),this.type="aborted",this.code=r??"ABORT_ERR"}};function Zt(e={}){return vm(r=>{let n=r.shift();if(n==null)return{done:!0};if(n.error!=null)throw n.error;return{done:n.done===!0,value:n.value}},e)}function vm(e,t){t=t??{};let r=t.onEnd,n=new qn,i,o,s,a=Je(),c=async()=>{try{return n.isEmpty()?s?{done:!0}:await new Promise((g,m)=>{o=v=>{o=null,n.push(v);try{g(e(n))}catch(x){m(x)}return i}}):e(n)}finally{n.isEmpty()&&queueMicrotask(()=>{a.resolve(),a=Je()})}},u=g=>o!=null?o(g):(n.push(g),i),f=g=>(n=new qn,o!=null?o({error:g}):(n.push({error:g}),i)),l=g=>{if(s)return i;if(t?.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 qn,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 v,x;m!=null&&(v=new Promise((A,w)=>{x=()=>{w(new gc)},m.addEventListener("abort",x)}));try{await Promise.race([a.promise,v])}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 Hn=class extends Error{type;code;constructor(t,r){super(t??"The operation was aborted"),this.type="aborted",this.code=r??"ABORT_ERR"}};async function en(e,t,r){if(t==null)return e;if(t.aborted)return Promise.reject(new Hn(r?.errorMessage,r?.errorCode));let n,i=new Hn(r?.errorMessage,r?.errorCode);try{return await Promise.race([e,new Promise((o,s)=>{n=()=>{s(i)},t.addEventListener("abort",n)})])}finally{n!=null&&t.removeEventListener("abort",n)}}var ol=Symbol.for("@achingbrain/uint8arraylist");function il(e,t){if(t==null||t<0)throw new RangeError("index is out of bounds");let r=0;for(let n of e){let i=r+n.byteLength;if(t<i)return{buf:n,index:t-r};r=i}throw new RangeError("index is out of bounds")}function Po(e){return!!e?.[ol]}var et=class e{constructor(...t){Object.defineProperty(this,ol,{value:!0}),this.bufs=[],this.length=0,t.length>0&&this.appendAll(t)}*[Symbol.iterator](){yield*this.bufs}get byteLength(){return this.length}append(...t){this.appendAll(t)}appendAll(t){let r=0;for(let n of t)if(n instanceof Uint8Array)r+=n.byteLength,this.bufs.push(n);else if(Po(n))r+=n.byteLength,this.bufs.push(...n.bufs);else throw new Error("Could not append value, must be an Uint8Array or a Uint8ArrayList");this.length+=r}prepend(...t){this.prependAll(t)}prependAll(t){let r=0;for(let n of t.reverse())if(n instanceof Uint8Array)r+=n.byteLength,this.bufs.unshift(n);else if(Po(n))r+=n.byteLength,this.bufs.unshift(...n.bufs);else throw new Error("Could not prepend value, must be an Uint8Array or a Uint8ArrayList");this.length+=r}get(t){let r=il(this.bufs,t);return r.buf[r.index]}set(t,r){let n=il(this.bufs,t);n.buf[n.index]=r}write(t,r=0){if(t instanceof Uint8Array)for(let n=0;n<t.length;n++)this.set(r+n,t[n]);else if(Po(t))for(let n=0;n<t.length;n++)this.set(r+n,t.get(n));else throw new Error("Could not write value, must be an Uint8Array or a Uint8ArrayList")}consume(t){if(t=Math.trunc(t),!(Number.isNaN(t)||t<=0)){if(t===this.byteLength){this.bufs=[],this.length=0;return}for(;this.bufs.length>0;)if(t>=this.bufs[0].byteLength)t-=this.bufs[0].byteLength,this.length-=this.bufs[0].byteLength,this.bufs.shift();else{this.bufs[0]=this.bufs[0].subarray(t),this.length-=t;break}}}slice(t,r){let{bufs:n,length:i}=this._subList(t,r);return ge(n,i)}subarray(t,r){let{bufs:n,length:i}=this._subList(t,r);return n.length===1?n[0]:ge(n,i)}sublist(t,r){let{bufs:n,length:i}=this._subList(t,r),o=new e;return o.length=i,o.bufs=n,o}_subList(t,r){if(t=t??0,r=r??this.length,t<0&&(t=this.length+t),r<0&&(r=this.length+r),t<0||r>this.length)throw new RangeError("index is out of bounds");if(t===r)return{bufs:[],length:0};if(t===0&&r===this.length)return{bufs:[...this.bufs],length:this.length};let n=[],i=0;for(let o=0;o<this.bufs.length;o++){let s=this.bufs[o],a=i,c=a+s.byteLength;if(i=c,t>=c)continue;let u=t>=a&&t<c,f=r>a&&r<=c;if(u&&f){if(t===a&&r===c){n.push(s);break}let l=t-a;n.push(s.subarray(l,l+(r-t)));break}if(u){if(t===0){n.push(s);continue}n.push(s.subarray(t-a));continue}if(f){if(r===c){n.push(s);break}n.push(s.subarray(0,r-a));break}n.push(s)}return{bufs:n,length:r-t}}indexOf(t,r=0){if(!Po(t)&&!(t instanceof Uint8Array))throw new TypeError('The "value" argument must be a Uint8ArrayList or Uint8Array');let n=t instanceof Uint8Array?t:t.subarray();if(r=Number(r??0),isNaN(r)&&(r=0),r<0&&(r=this.length+r),r<0&&(r=0),t.length===0)return r>this.length?this.length:r;let i=n.byteLength;if(i===0)throw new TypeError("search must be at least 1 byte long");let o=256,s=new Int32Array(o);for(let l=0;l<o;l++)s[l]=-1;for(let l=0;l<i;l++)s[n[l]]=l;let a=s,c=this.byteLength-n.byteLength,u=n.byteLength-1,f;for(let l=r;l<=c;l+=f){f=0;for(let 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(t){let r=this.subarray(t,t+1);return new DataView(r.buffer,r.byteOffset,r.byteLength).getInt8(0)}setInt8(t,r){let n=bt(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setInt8(0,r),this.write(n,t)}getInt16(t,r){let n=this.subarray(t,t+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt16(0,r)}setInt16(t,r,n){let i=cr(2);new DataView(i.buffer,i.byteOffset,i.byteLength).setInt16(0,r,n),this.write(i,t)}getInt32(t,r){let n=this.subarray(t,t+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt32(0,r)}setInt32(t,r,n){let i=cr(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setInt32(0,r,n),this.write(i,t)}getBigInt64(t,r){let n=this.subarray(t,t+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigInt64(0,r)}setBigInt64(t,r,n){let i=cr(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setBigInt64(0,r,n),this.write(i,t)}getUint8(t){let r=this.subarray(t,t+1);return new DataView(r.buffer,r.byteOffset,r.byteLength).getUint8(0)}setUint8(t,r){let n=bt(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setUint8(0,r),this.write(n,t)}getUint16(t,r){let n=this.subarray(t,t+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint16(0,r)}setUint16(t,r,n){let i=cr(2);new DataView(i.buffer,i.byteOffset,i.byteLength).setUint16(0,r,n),this.write(i,t)}getUint32(t,r){let n=this.subarray(t,t+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint32(0,r)}setUint32(t,r,n){let i=cr(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setUint32(0,r,n),this.write(i,t)}getBigUint64(t,r){let n=this.subarray(t,t+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigUint64(0,r)}setBigUint64(t,r,n){let i=cr(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setBigUint64(0,r,n),this.write(i,t)}getFloat32(t,r){let n=this.subarray(t,t+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat32(0,r)}setFloat32(t,r,n){let i=cr(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setFloat32(0,r,n),this.write(i,t)}getFloat64(t,r){let n=this.subarray(t,t+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat64(0,r)}setFloat64(t,r,n){let i=cr(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setFloat64(0,r,n),this.write(i,t)}equals(t){if(t==null||!(t instanceof e)||t.bufs.length!==this.bufs.length)return!1;for(let r=0;r<this.bufs.length;r++)if(!Me(this.bufs[r],t.bufs[r]))return!1;return!0}static fromUint8Arrays(t,r){let n=new e;return n.bufs=t,r==null&&(r=t.reduce((i,o)=>i+o.byteLength,0)),n.length=r,n}};var Em="ERR_STREAM_RESET",Sm="ERR_SINK_INVALID_STATE",Cm=5e3;function mc(e){return e!=null&&typeof e.then=="function"}var Uo=class{id;direction;timeline;protocol;metadata;source;status;readStatus;writeStatus;sinkController;sinkEnd;endErr;streamSource;onEnd;onCloseRead;onCloseWrite;onReset;onAbort;sendCloseWriteTimeout;log;constructor(t){this.sinkController=new AbortController,this.sinkEnd=Je(),this.log=t.log,this.status="open",this.readStatus="ready",this.writeStatus="ready",this.id=t.id,this.metadata=t.metadata??{},this.direction=t.direction,this.timeline={open:Date.now()},this.sendCloseWriteTimeout=t.sendCloseWriteTimeout??Cm,this.onEnd=t.onEnd,this.onCloseRead=t?.onCloseRead,this.onCloseWrite=t?.onCloseWrite,this.onReset=t?.onReset,this.onAbort=t?.onAbort,this.source=this.streamSource=Zt({onEnd:r=>{r!=null?this.log.trace("source ended with error",r):this.log.trace("source ended"),this.onSourceEnd(r)}}),this.sink=this.sink.bind(this)}async sink(t){if(this.writeStatus!=="ready")throw new W(`writable end state is "${this.writeStatus}" not "ready"`,Sm);try{this.writeStatus="writing";let r={signal:this.sinkController.signal};if(this.direction==="outbound"){let n=this.sendNewStream(r);mc(n)&&await n}t=Lo(t,this.sinkController.signal,{returnOnAbort:!0}),this.log.trace("sink reading from source");for await(let n of t){n=n instanceof Uint8Array?new et(n):n;let i=this.sendData(n,r);mc(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(t){this.timeline.closeRead==null&&(this.timeline.closeRead=Date.now(),this.readStatus="closed",t!=null&&this.endErr==null&&(this.endErr=t),this.onCloseRead?.(),this.timeline.closeWrite!=null?(this.log.trace("source and sink ended"),this.timeline.close=Date.now(),this.status!=="aborted"&&this.status!=="reset"&&(this.status="closed"),this.onEnd!=null&&this.onEnd(this.endErr)):this.log.trace("source ended, waiting for sink to end"))}onSinkEnd(t){this.timeline.closeWrite==null&&(this.timeline.closeWrite=Date.now(),this.writeStatus="closed",t!=null&&this.endErr==null&&(this.endErr=t),this.onCloseWrite?.(),this.timeline.closeRead!=null?(this.log.trace("sink and source ended"),this.timeline.close=Date.now(),this.status!=="aborted"&&this.status!=="reset"&&(this.status="closed"),this.onEnd!=null&&this.onEnd(this.endErr)):this.log.trace("sink ended, waiting for source to end"))}async close(t){this.log.trace("closing gracefully"),this.status="closing",await Promise.all([this.closeRead(t),this.closeWrite(t)]),this.status="closed",this.log.trace("closed gracefully")}async closeRead(t={}){if(this.readStatus==="closing"||this.readStatus==="closed")return;this.log.trace('closing readable end of stream with starting read status "%s"',this.readStatus);let r=this.readStatus;this.readStatus="closing",this.status!=="reset"&&this.status!=="aborted"&&this.timeline.closeRead==null&&(this.log.trace("send close read to remote"),await this.sendCloseRead(t)),r==="ready"&&(this.log.trace("ending internal source queue"),this.streamSource.end()),this.log.trace("closed readable end of stream")}async closeWrite(t={}){this.writeStatus==="closing"||this.writeStatus==="closed"||(this.log.trace('closing writable end of stream with starting write status "%s"',this.writeStatus),this.writeStatus==="ready"&&(this.log.trace("sink was never sunk, sink an empty array"),await en(this.sink([]),t.signal)),this.writeStatus==="writing"&&await new Promise((r,n)=>{queueMicrotask(()=>{this.log.trace("aborting source passed to .sink"),this.sinkController.abort(),en(this.sinkEnd.promise,t.signal).then(r,n)})}),this.writeStatus="closed",this.log.trace("closed writable end of stream"))}abort(t){if(this.status==="closed"||this.status==="aborted"||this.status==="reset")return;this.log("abort with error",t),this.log("try to send reset to remote");let r=this.sendReset();mc(r)&&r.catch(n=>{this.log.error("error sending reset message",n)}),this.status="aborted",this.timeline.abort=Date.now(),this._closeSinkAndSource(t),this.onAbort?.(t)}reset(){if(this.status==="closed"||this.status==="aborted"||this.status==="reset")return;let t=new W("stream reset",Em);this.status="reset",this.timeline.reset=Date.now(),this._closeSinkAndSource(t),this.onReset?.()}_closeSinkAndSource(t){this._closeSink(t),this._closeSource(t)}_closeSink(t){this.writeStatus==="writing"&&(this.log.trace("end sink source"),this.sinkController.abort()),this.onSinkEnd(t)}_closeSource(t){this.readStatus!=="closing"&&this.readStatus!=="closed"&&(this.log.trace("ending source with %d bytes to be read by consumer",this.streamSource.readableLength),this.readStatus="closing",this.streamSource.end(t))}remoteCloseWrite(){if(this.readStatus==="closing"||this.readStatus==="closed"){this.log("received remote close write but local source is already closed");return}this.log.trace("remote close write"),this._closeSource()}remoteCloseRead(){if(this.writeStatus==="closing"||this.writeStatus==="closed"){this.log("received remote close read but local sink is already closed");return}this.log.trace("remote close read"),this._closeSink()}destroy(){if(this.status==="closed"||this.status==="aborted"||this.status==="reset"){this.log("received destroy but we are already closed");return}this.log.trace("stream destroyed"),this._closeSinkAndSource()}sourcePush(t){this.streamSource.push(t)}sourceReadableLength(){return this.streamSource.readableLength}};function Oo(e){return e[Symbol.asyncIterator]!=null}var Fo=e=>{let t=ut(e),r=bt(t);return Tr(e,r),Fo.bytes=t,r};Fo.bytes=0;function tn(e,t){t=t??{};let r=t.lengthEncoder??Fo;function*n(i){let o=r(i.byteLength);o instanceof Uint8Array?yield o:yield*o,i instanceof Uint8Array?yield i:yield*i}return Oo(e)?async function*(){for await(let i of e)yield*n(i)}():function*(){for(let i of e)yield*n(i)}()}tn.single=(e,t)=>{t=t??{};let r=t.lengthEncoder??Fo;return new et(r(e.byteLength),e)};var zn=Re(cl(),1);var Dm=8,Bm=1024*1024*4,rn;(function(e){e[e.LENGTH=0]="LENGTH",e[e.DATA=1]="DATA"})(rn||(rn={}));var xc=e=>{let t=_t(e);return xc.bytes=ut(t),t};xc.bytes=0;function ur(e,t){let r=new et,n=rn.LENGTH,i=-1,o=t?.lengthDecoder??xc,s=t?.maxLengthLength??Dm,a=t?.maxDataLength??Bm;function*c(){for(;r.byteLength>0;){if(n===rn.LENGTH)try{if(i=o(r),i<0)throw(0,zn.default)(new Error("invalid message length"),"ERR_INVALID_MSG_LENGTH");if(i>a)throw(0,zn.default)(new Error("message length too long"),"ERR_MSG_DATA_TOO_LONG");let u=o.bytes;r.consume(u),t?.onLength!=null&&t.onLength(i),n=rn.DATA}catch(u){if(u instanceof RangeError){if(r.byteLength>s)throw(0,zn.default)(new Error("message length length too long"),"ERR_MSG_LENGTH_TOO_LONG");break}throw u}if(n===rn.DATA){if(r.byteLength<i)break;let u=r.sublist(0,i);r.consume(i),t?.onData!=null&&t.onData(u),yield u,n=rn.LENGTH}}}return Oo(e)?async function*(){for await(let u of e)r.append(u),yield*c();if(r.byteLength>0)throw(0,zn.default)(new Error("unexpected end of input"),"ERR_UNEXPECTED_EOF")}():function*(){for(let u of e)r.append(u),yield*c();if(r.byteLength>0)throw(0,zn.default)(new Error("unexpected end of input"),"ERR_UNEXPECTED_EOF")}()}ur.fromReader=(e,t)=>{let r=1,n=async function*(){for(;;)try{let{done:o,value:s}=await e.next(r);if(o===!0)return;s!=null&&(yield s)}catch(o){if(o.code==="ERR_UNDER_READ")return{done:!0,value:null};throw o}finally{r=1}}();return ur(n,{...t??{},onLength:o=>{r=o}})};var Im=e=>{let t=e.on||e.addListener||e.addEventListener,r=e.off||e.removeListener||e.removeEventListener;if(!t||!r)throw new TypeError("Emitter is not compatible");return{addListener:t.bind(e),removeListener:r.bind(e)}};function Tm(e,t,r){let n,i=new Promise((o,s)=>{if(r={rejectionEvents:["error"],multiArgs:!1,resolveImmediately:!1,...r},!(r.count>=0&&(r.count===Number.POSITIVE_INFINITY||Number.isInteger(r.count))))throw new TypeError("The `count` option should be at least 0 or more");r.signal?.throwIfAborted();let a=[t].flat(),c=[],{addListener:u,removeListener:f}=Im(e),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=jr(i,{milliseconds:r.timeout});return o.cancel=n,o}return i}function ul(e,t,r){typeof r=="function"&&(r={filter:r}),r={...r,count:1,resolveImmediately:!1};let n=Tm(e,t,r),i=n.then(o=>o[0]);return i.cancel=n.cancel,i}var Rc=Re(Cc(),1),Xl=Re(ql(),1),Ql=Re(on(),1),Lc=Re(kc(),1),jl=Re(Zl(),1);function Fm(){Ql.default._configure(),Rc.default._configure(Xl.default),Lc.default._configure(jl.default)}Fm();var Jl=["uint64","int64","sint64","fixed64","sfixed64"];function Km(e){for(let t of Jl){if(e[t]==null)continue;let r=e[t];e[t]=function(){return BigInt(r.call(this).toString())}}return e}function Nc(e){return Km(new Rc.default(e))}function Mm(e){for(let t of Jl){if(e[t]==null)continue;let r=e[t];e[t]=function(n){return r.call(this,n.toString())}}return e}function Pc(){return Mm(Lc.default.create())}function Nt(e,t){let r=Nc(e instanceof Uint8Array?e:e.subarray());return t.decode(r)}function Pt(e,t){let r=Pc();return t.encode(e,r,{lengthDelimited:!1}),r.finish()}var Wn;(function(e){e[e.VARINT=0]="VARINT",e[e.BIT64=1]="BIT64",e[e.LENGTH_DELIMITED=2]="LENGTH_DELIMITED",e[e.START_GROUP=3]="START_GROUP",e[e.END_GROUP=4]="END_GROUP",e[e.BIT32=5]="BIT32"})(Wn||(Wn={}));function Ho(e,t,r,n){return{name:e,type:t,encode:r,decode:n}}function an(e){function t(i){if(e[i.toString()]==null)throw new Error("Invalid enum value");return e[i]}let r=function(o,s){let a=t(o);s.int32(a)},n=function(o){let s=o.int32();return t(s)};return Ho("enum",Wn.VARINT,r,n)}function Ut(e,t){return Ho("message",Wn.LENGTH_DELIMITED,e,t)}var ft;(function(e){let t;(function(i){i.FIN="FIN",i.STOP_SENDING="STOP_SENDING",i.RESET="RESET",i.FIN_ACK="FIN_ACK"})(t=e.Flag||(e.Flag={}));let r;(function(i){i[i.FIN=0]="FIN",i[i.STOP_SENDING=1]="STOP_SENDING",i[i.RESET=2]="RESET",i[i.FIN_ACK=3]="FIN_ACK"})(r||(r={})),function(i){i.codec=()=>an(r)}(t=e.Flag||(e.Flag={}));let n;e.codec=()=>(n==null&&(n=Ut((i,o,s={})=>{s.lengthDelimited!==!1&&o.fork(),i.flag!=null&&(o.uint32(8),e.Flag.codec().encode(i.flag,o)),i.message!=null&&(o.uint32(18),o.bytes(i.message)),s.lengthDelimited!==!1&&o.ldelim()},(i,o)=>{let s={},a=o==null?i.len:i.pos+o;for(;i.pos<a;){let c=i.uint32();switch(c>>>3){case 1:s.flag=e.Flag.codec().decode(i);break;case 2:s.message=i.bytes();break;default:i.skipType(c&7);break}}return s})),n),e.encode=i=>Pt(i,e.codec()),e.decode=i=>Nt(i,e.codec())})(ft||(ft={}));var Vm=16*1024*1024,qm=30*1e3,Hm=5,zm=2,Gm=16*1024,Wm=5e3,Uc=class extends Uo{channel;incomingData;messageQueue;maxBufferedAmount;bufferedAmountLowEventTimeout;maxMessageSize;receiveFinAck;finAckTimeout;constructor(t){let r=t.onEnd;switch(t.onEnd=i=>{this.log.trace("readable and writeable ends closed",this.status),Promise.resolve(async()=>{if(!(this.timeline.abort!=null||this.timeline.reset!==null))try{await jr(this.receiveFinAck.promise,{milliseconds:this.finAckTimeout})}catch(o){this.log.error("error receiving FIN_ACK",o)}}).then(()=>{this.incomingData.end(),r?.(i)}).catch(o=>{this.log.error("error ending stream",o)})},super(t),this.channel=t.channel,this.channel.binaryType="arraybuffer",this.incomingData=Zt(),this.messageQueue=new et,this.bufferedAmountLowEventTimeout=t.bufferedAmountLowEventTimeout??qm,this.maxBufferedAmount=t.maxBufferedAmount??Vm,this.maxMessageSize=(t.maxMessageSize??Gm)-Hm-zm,this.receiveFinAck=Je(),this.finAckTimeout=t.closeTimeout??Wm,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 ur(this.incomingData)){let o=n.processIncomingProtobuf(i);o!=null&&n.sourcePush(new et(o))}}).catch(i=>{this.log.error("error processing incoming data channel messages",i)})}sendNewStream(){}async _sendMessage(t,r=!0){if(r&&this.channel.bufferedAmount>this.maxBufferedAmount)try{await ul(this.channel,"bufferedamountlow",{timeout:this.bufferedAmountLowEventTimeout})}catch(n){throw n instanceof Vn?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 t)this.channel.send(n);else if(this.channel.readyState==="connecting")this.messageQueue==null&&(this.messageQueue=new et),this.messageQueue.append(t);else throw this.log.error("unknown datachannel state %s",this.channel.readyState),new W("Unknown datachannel state","ERR_INVALID_STATE")}async sendData(t){for(t=t.sublist();t.byteLength>0;){let r=Math.min(t.byteLength,this.maxMessageSize),n=t.subarray(0,r),i=ft.encode({message:n}),o=tn.single(i);await this._sendMessage(o),t.consume(r)}}async sendReset(){await this._sendFlag(ft.Flag.RESET)}async sendCloseWrite(t){if(await this._sendFlag(ft.Flag.FIN)){this.log.trace("awaiting FIN_ACK");try{await en(this.receiveFinAck.promise,t?.signal,{errorMessage:"sending close-write was aborted before FIN_ACK was received",errorCode:"ERR_FIN_ACK_NOT_RECEIVED"})}catch(n){this.log.error("failed to await FIN_ACK",n)}}else this.log.trace("sending FIN failed, not awaiting FIN_ACK");this.receiveFinAck.resolve()}async sendCloseRead(){await this._sendFlag(ft.Flag.STOP_SENDING)}processIncomingProtobuf(t){let r=ft.decode(t);if(r.flag!==void 0&&(this.log.trace('incoming flag %s, write status "%s", read status "%s"',r.flag,this.writeStatus,this.readStatus),r.flag===ft.Flag.FIN&&(this.remoteCloseWrite(),this.log.trace("sending FIN_ACK"),this._sendFlag(ft.Flag.FIN_ACK).catch(n=>{this.log.error("error sending FIN_ACK immediately",n)})),r.flag===ft.Flag.RESET&&this.reset(),r.flag===ft.Flag.STOP_SENDING&&this.remoteCloseRead(),r.flag===ft.Flag.FIN_ACK&&(this.log.trace("received FIN_ACK"),this.receiveFinAck.resolve())),this.readStatus==="ready")return r.message}async _sendFlag(t){if(this.channel.readyState!=="open")return this.log.trace("not sending flag %s because channel is not open",t.toString()),!1;this.log.trace("sending flag %s",t.toString());let r=ft.encode({flag:t}),n=tn.single(r);try{return await this._sendMessage(n,!1),!0}catch(i){this.log.error("could not send flag %s",t.toString(),i)}return!1}};function $n(e){let{channel:t,direction:r}=e;return new Uc({id:r==="inbound"?`i${t.id}`:`r${t.id}`,log:Ne(`libp2p:webrtc:stream:${r}:${t.id}`),...e})}var eh=Ne("libp2p:webrtc:muxer"),th="/webrtc",cn=class{protocol;peerConnection;streamBuffer=[];metrics;dataChannelOptions;constructor(t){this.peerConnection=t.peerConnection,this.metrics=t.metrics,this.protocol=t.protocol??th,this.dataChannelOptions=t.dataChannelOptions??{},this.peerConnection.ondatachannel=({channel:r})=>{let n=$n({channel:r,direction:"inbound",onEnd:()=>{this.streamBuffer=this.streamBuffer.filter(i=>i.id!==n.id)},...this.dataChannelOptions});this.streamBuffer.push(n)}}createStreamMuxer(t){return new Oc({...t,peerConnection:this.peerConnection,dataChannelOptions:this.dataChannelOptions,metrics:this.metrics,streams:this.streamBuffer,protocol:this.protocol})}},Oc=class{init;streams;protocol;peerConnection;dataChannelOptions;metrics;constructor(t){this.init=t,this.streams=t.streams,this.peerConnection=t.peerConnection,this.protocol=t.protocol??th,this.metrics=t.metrics,this.dataChannelOptions=t.dataChannelOptions??{},this.peerConnection.ondatachannel=({channel:n})=>{let i=$n({channel:n,direction:"inbound",onEnd:()=>{eh.trace("stream %s %s %s onEnd",i.direction,i.id,i.protocol),pc(n,`inbound ${i.id} ${i.protocol}`,this.dataChannelOptions.drainTimeout),this.streams=this.streams.filter(o=>o.id!==i.id),this.metrics?.increment({stream_end:!0}),t?.onStreamEnd?.(i)},...this.dataChannelOptions});this.streams.push(i),this.metrics?.increment({incoming_stream:!0}),t?.onIncomingStream?.(i)};let r=t?.onIncomingStream;r!=null&&this.streams.forEach(n=>{r(n)})}async close(t){try{await Promise.all(this.streams.map(async r=>r.close(t)))}catch(r){this.abort(r)}}abort(t){for(let r of this.streams)r.abort(t)}source=ko();sink=Ro;newStream(){let t=this.peerConnection.createDataChannel(""),r=$n({channel:t,direction:"outbound",onEnd:()=>{eh.trace("stream %s %s %s onEnd",r.direction,r.id,r.protocol),pc(t,`outbound ${r.id} ${r.protocol}`,this.dataChannelOptions.drainTimeout),this.streams=this.streams.filter(n=>n.id!==r.id),this.metrics?.increment({stream_end:!0}),this.init?.onStreamEnd?.(r)},...this.dataChannelOptions});return this.streams.push(r),this.metrics?.increment({outgoing_stream:!0}),r}};var Yn=globalThis.RTCPeerConnection,zo=globalThis.RTCSessionDescription,rh=globalThis.RTCIceCandidate;var Go=class extends Error{code;constructor(t,r){super(t),this.code=r}},Fc=class extends Go{type;constructor(t){super(t,"ABORT_ERR"),this.type="aborted"}};function nh(e){let t=Zt();e.sink(t).catch(o=>{t.end(o)}),e.sink=async o=>{for await(let s of o)t.push(s);t.end()};let r=e.source;e.source[Symbol.iterator]!=null?r=e.source[Symbol.iterator]():e.source[Symbol.asyncIterator]!=null&&(r=e.source[Symbol.asyncIterator]());let n=new et;return{read:async(o,s)=>{s?.signal?.throwIfAborted();let a,c=new Promise((u,f)=>{a=()=>{f(new Fc("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 et:l}for(;n.byteLength<o;){let{value:f,done:l}=await Promise.race([r.next(),c]);if(l===!0)throw new Go("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?t.push(o):t.push(o.subarray()),await t.onEmpty(s)},unwrap:()=>{let o=e.source;return e.source=async function*(){yield*n,yield*o}(),e}}}var Wo=class extends Error{code;constructor(t,r){super(t),this.code=r}},ih=e=>_t(e);ih.bytes=0;function Ni(e,t){let r=nh(e);return{read:async i=>{let o=-1,s=new et,a=t?.lengthDecoder??ih;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(t?.maxLengthLength!=null&&s.byteLength>t.maxLengthLength)throw new Wo("message length length too long","ERR_MSG_LENGTH_TOO_LONG")}if(t?.maxDataLength!=null&&o>t.maxDataLength)throw new Wo("message length too long","ERR_MSG_DATA_TOO_LONG");return r.read(o,i)},write:async(i,o)=>{await r.write(tn.single(i,t),o)},unwrap:()=>r.unwrap()}}function $o(e,t){let r=Ni(e,t),n={read:async(i,o)=>{let s=await r.read(o);return i.decode(s)},write:async(i,o,s)=>{await r.write(o.encode(i),s)},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 ot;(function(e){let t;(function(i){i.SDP_OFFER="SDP_OFFER",i.SDP_ANSWER="SDP_ANSWER",i.ICE_CANDIDATE="ICE_CANDIDATE"})(t=e.Type||(e.Type={}));let r;(function(i){i[i.SDP_OFFER=0]="SDP_OFFER",i[i.SDP_ANSWER=1]="SDP_ANSWER",i[i.ICE_CANDIDATE=2]="ICE_CANDIDATE"})(r||(r={})),function(i){i.codec=()=>an(r)}(t=e.Type||(e.Type={}));let n;e.codec=()=>(n==null&&(n=Ut((i,o,s={})=>{s.lengthDelimited!==!1&&o.fork(),i.type!=null&&(o.uint32(8),e.Type.codec().encode(i.type,o)),i.data!=null&&(o.uint32(18),o.string(i.data)),s.lengthDelimited!==!1&&o.ldelim()},(i,o)=>{let s={},a=o==null?i.len:i.pos+o;for(;i.pos<a;){let c=i.uint32();switch(c>>>3){case 1:s.type=e.Type.codec().decode(i);break;case 2:s.data=i.string();break;default:i.skipType(c&7);break}}return s})),n),e.encode=i=>Pt(i,e.codec()),e.decode=i=>Nt(i,e.codec())})(ot||(ot={}));function oh(e){let t=new globalThis.AbortController;function r(){t.abort();for(let o of e)o?.removeEventListener!=null&&o.removeEventListener("abort",r)}for(let o of e){if(o?.aborted===!0){r();break}o?.addEventListener!=null&&o.addEventListener("abort",r)}function n(){for(let o of e)o?.removeEventListener!=null&&o.removeEventListener("abort",r)}let i=t.signal;return i.clear=n,i}var un=Ne("libp2p:webrtc:peer:util"),Yo=async(e,t,r,n)=>{let i=new AbortController;e.promise.then(()=>{i.abort()},()=>{i.abort()});let o=oh([i.signal,n.signal]),s=Lo(r.unwrap().unwrap().source,o,{returnOnAbort:!0});try{for await(let a of ur(s)){let c=ot.decode(a);if(c.type!==ot.Type.ICE_CANDIDATE)throw new W("ICE candidate message expected","ERR_NOT_ICE_CANDIDATE");let u=JSON.parse(c.data??"null");u===""&&(un.trace("end-of-candidates for this generation received"),u={candidate:"",sdpMid:"0",sdpMLineIndex:0}),u===null&&(un.trace("end-of-candidates received"),u={candidate:null,sdpMid:"0",sdpMLineIndex:0});let f=new rh(u);un.trace("%s received new ICE candidate",n.direction,f);try{await t.addIceCandidate(f)}catch(l){un.error("%s bad candidate received",n.direction,l)}}}catch(a){un.error("%s error parsing ICE candidate",n.direction,a)}finally{o.clear()}if(n.signal?.aborted===!0)throw new Hn("Aborted while reading ICE candidates","ERR_ICE_CANDIDATES_READ_ABORTED");await en(e.promise,n.signal,{errorMessage:"Aborted before connected",errorCode:"ERR_ABORTED_BEFORE_CONNECTED"})};function Zo(e,t){e[_i?"oniceconnectionstatechange":"onconnectionstatechange"]=r=>{switch(un.trace("receiver peerConnectionState state change: %s",e.connectionState),_i?e.iceConnectionState:e.connectionState){case"connected":t.resolve();break;case"failed":case"disconnected":case"closed":t.reject(new W("RTCPeerConnection was closed","ERR_CONNECTION_CLOSED_BEFORE_CONNECTED"));break;default:break}}}function Xo(e){let t=e.split(`\r
30
- `).filter(n=>n.startsWith("a=candidate")).pop(),r=t?.split(" ");return t==null||r==null||r.length<5?(un("could not parse remote address from",t),"/webrtc"):`/dnsaddr/${r[4]}/${r[2].toLowerCase()}/${r[5]}/webrtc`}var Et=Ne("libp2p:webrtc:initiate-connection");async function sh({peerConnection:e,signal:t,metrics:r,multiaddr:n,connectionManager:i,transportManager:o}){let{baseAddr:s,peerId:a}=ah(n);r?.dialerEvents.increment({open:!0}),Et.trace("dialing base address: %a",s);let c=s.getPeerId();if(c==null)throw new W("Relay peer was missing","ERR_INVALID_ADDRESS");let u=i.getConnections(Qr(c)),f,l=!1;u.length===0?(f=await o.dial(s,{signal:t}),l=!0):f=u[0];try{let h=await f.newStream(Qo,{signal:t,runOnTransientConnection:!0}),y=$o(h).pb(ot),d=Je(),p=()=>{d.reject(new W("SDP handshake aborted","ERR_SDP_HANDSHAKE_ABORTED"))};try{Zo(e,d),t?.addEventListener("abort",p);let g=e.createDataChannel("init");e.onicecandidate=({candidate:w})=>{let E=JSON.stringify(w?.toJSON()??null);Et.trace("initiator sending ICE candidate %s",E),y.write({type:ot.Type.ICE_CANDIDATE,data:E},{signal:t}).catch(D=>{Et.error("error sending ICE candidate",D)})},e.onicecandidateerror=w=>{Et("initiator ICE candidate error",w)};let m=await e.createOffer();Et.trace("initiator send SDP offer %s",m.sdp),await y.write({type:ot.Type.SDP_OFFER,data:m.sdp},{signal:t}),await e.setLocalDescription(m).catch(w=>{throw Et.error("could not execute setLocalDescription",w),new W("Failed to set localDescription","ERR_SDP_HANDSHAKE_FAILED")});let v=await y.read({signal:t});if(v.type!==ot.Type.SDP_ANSWER)throw new W("remote should send an SDP answer","ERR_SDP_HANDSHAKE_FAILED");Et.trace("initiator receive SDP answer %s",v.data);let x=new zo({type:"answer",sdp:v.data});await e.setRemoteDescription(x).catch(w=>{throw Et.error("could not execute setRemoteDescription",w),new W("Failed to set remoteDescription","ERR_SDP_HANDSHAKE_FAILED")}),Et.trace("initiator read candidates until connected"),await Yo(d,e,y,{direction:"initiator",signal:t}),Et.trace("initiator connected, closing init channel"),g.close(),Et.trace("initiator closing signalling stream"),await y.unwrap().unwrap().close({signal:t});let A=Xo(e.currentRemoteDescription?.sdp??"");return Et.trace("initiator connected to remote address %s",A),{remoteAddress:Wt(A).encapsulate(`/p2p/${a.toString()}`)}}catch(g){throw e.close(),h.abort(g),g}finally{t?.removeEventListener("abort",p),e.onicecandidate=null,e.onicecandidateerror=null}}finally{if(l)try{await f.close({signal:t})}catch(h){f.abort(h)}}}var jo=class extends EventTarget{#e=new Map;listenerCount(t){let r=this.#e.get(t);return r==null?0:r.length}addEventListener(t,r,n){super.addEventListener(t,r,n);let i=this.#e.get(t);i==null&&(i=[],this.#e.set(t,i)),i.push({callback:r,once:(n!==!0&&n!==!1&&n?.once)??!1})}removeEventListener(t,r,n){super.removeEventListener(t.toString(),r??null,n);let i=this.#e.get(t);i!=null&&(i=i.filter(({callback:o})=>o!==r),this.#e.set(t,i))}dispatchEvent(t){let r=super.dispatchEvent(t),n=this.#e.get(t.type);return n==null||(n=n.filter(({once:i})=>!i),this.#e.set(t.type,n)),r}safeDispatchEvent(t,r){return this.dispatchEvent(new $m(t,r))}},Kc=class extends Event{detail;constructor(t,r){super(t,r),this.detail=r?.detail}},$m=globalThis.CustomEvent??Kc;var Ym=z("dns4"),Zm=z("dns6"),Xm=z("dnsaddr"),fn=Ke(z("dns"),Xm,Ym,Zm),ts=Ke(z("ip4"),z("ip6")),Zn=Ke(X(ts,z("tcp")),X(fn,z("tcp"))),rs=X(ts,z("udp")),Qm=X(rs,z("utp")),jm=X(rs,z("quic")),Jm=X(rs,z("quic-v1")),Mc=Ke(X(Zn,z("ws")),X(fn,z("ws"))),Jo=Ke(X(Mc,z("p2p")),Mc),Vc=Ke(X(Zn,z("wss")),X(fn,z("wss")),X(Zn,z("tls"),z("ws")),X(fn,z("tls"),z("ws"))),es=Ke(X(Vc,z("p2p")),Vc),qc=Ke(X(Zn,z("http")),X(ts,z("http")),X(fn,z("http"))),Hc=Ke(X(Zn,z("https")),X(ts,z("https")),X(fn,z("https"))),ch=X(rs,z("webrtc-direct"),z("certhash")),lh=Ke(X(ch,z("p2p")),ch),uh=X(Jm,z("webtransport"),z("certhash"),z("certhash")),hh=Ke(X(uh,z("p2p")),uh),dh=Ke(X(Jo,z("p2p-webrtc-star"),z("p2p")),X(es,z("p2p-webrtc-star"),z("p2p")),X(Jo,z("p2p-webrtc-star")),X(es,z("p2p-webrtc-star"))),lA=Ke(X(Jo,z("p2p-websocket-star"),z("p2p")),X(es,z("p2p-websocket-star"),z("p2p")),X(Jo,z("p2p-websocket-star")),X(es,z("p2p-websocket-star"))),ph=Ke(X(qc,z("p2p-webrtc-direct"),z("p2p")),X(Hc,z("p2p-webrtc-direct"),z("p2p")),X(qc,z("p2p-webrtc-direct")),X(Hc,z("p2p-webrtc-direct"))),ln=Ke(Mc,Vc,qc,Hc,dh,ph,Zn,Qm,jm,fn,lh,hh),hA=Ke(X(ln,z("p2p-stardust"),z("p2p")),X(ln,z("p2p-stardust"))),Lr=Ke(X(ln,z("p2p")),dh,ph,lh,hh,z("p2p")),fh=Ke(X(Lr,z("p2p-circuit"),Lr),X(Lr,z("p2p-circuit")),X(z("p2p-circuit"),Lr),X(ln,z("p2p-circuit")),X(z("p2p-circuit"),ln),z("p2p-circuit")),yh=()=>Ke(X(fh,yh),fh),fr=yh(),dA=Ke(X(fr,Lr,fr),X(Lr,fr),X(fr,Lr),fr,Lr);var pA=Ke(X(fr,z("webrtc"),z("p2p")),X(fr,z("webrtc")),X(ln,z("webrtc"),z("p2p")),X(ln,z("webrtc")),z("webrtc"));function gh(e){function t(r){let n;try{n=Wt(r)}catch{return!1}let i=e(n.protoNames());return i===null?!1:i===!0||i===!1?i:i.length===0}return t}function X(...e){function t(r){if(r.length<e.length)return null;let n=r;return e.some(i=>(n=typeof i=="function"?i().partialMatch(r):i.partialMatch(r),Array.isArray(n)&&(r=n),n===null)),n}return{toString:function(){return"{ "+e.join(" ")+" }"},input:e,matches:gh(t),partialMatch:t}}function Ke(...e){function t(n){let i=null;return e.some(o=>{let s=typeof o=="function"?o().partialMatch(n):o.partialMatch(n);return s!=null?(i=s,!0):!1}),i}return{toString:function(){return"{ "+e.join(" ")+" }"},input:e,matches:gh(t),partialMatch:t}}function z(e){let t=e;function r(i){let o;try{o=Wt(i)}catch{return!1}let s=o.protoNames();return s.length===1&&s[0]===t}function n(i){return i.length===0?null:i[0]===t?i.slice(1):null}return{toString:function(){return t},matches:r,partialMatch:n}}var ns=class extends jo{peerId;transportManager;shutdownController;constructor(t,r){super(),this.peerId=t.peerId,this.transportManager=t.transportManager,this.shutdownController=r.shutdownController}async listen(){this.safeDispatchEvent("listening",{})}getAddrs(){return this.transportManager.getListeners().filter(t=>t!==this).map(t=>t.getAddrs().filter(r=>fr.matches(r)).map(r=>r.encapsulate(`/webrtc/p2p/${this.peerId}`))).flat()}async close(){this.shutdownController.abort(),this.safeDispatchEvent("close",{})}};var gt=Ne("libp2p:webrtc:signaling-stream-handler");async function mh({peerConnection:e,stream:t,signal:r,connection:n}){gt.trace("new inbound signaling stream");let i=$o(t).pb(ot);try{let s=Je(),a=Je();r.onabort=()=>{s.reject(new W("Timed out while trying to connect","ERR_TIMEOUT"))},e.onicecandidate=({candidate:l})=>{a.promise.then(async()=>{let h=JSON.stringify(l?.toJSON()??null);gt.trace("recipient sending ICE candidate %s",h),await i.write({type:ot.Type.ICE_CANDIDATE,data:h},{signal:r})},h=>{gt.error("cannot set candidate since sending answer failed",h),s.reject(h)})},Zo(e,s);let c=await i.read({signal:r});if(c.type!==ot.Type.SDP_OFFER)throw new W(`expected message type SDP_OFFER, received: ${c.type??"undefined"} `,"ERR_SDP_HANDSHAKE_FAILED");gt.trace("recipient receive SDP offer %s",c.data);let u=new zo({type:"offer",sdp:c.data});await e.setRemoteDescription(u).catch(l=>{throw gt.error("could not execute setRemoteDescription",l),new W("Failed to set remoteDescription","ERR_SDP_HANDSHAKE_FAILED")});let f=await e.createAnswer().catch(l=>{throw gt.error("could not execute createAnswer",l),a.reject(l),new W("Failed to create answer","ERR_SDP_HANDSHAKE_FAILED")});gt.trace("recipient send SDP answer %s",f.sdp),await i.write({type:ot.Type.SDP_ANSWER,data:f.sdp},{signal:r}),await e.setLocalDescription(f).catch(l=>{throw gt.error("could not execute setLocalDescription",l),a.reject(l),new W("Failed to set localDescription","ERR_SDP_HANDSHAKE_FAILED")}),a.resolve(),gt.trace("recipient read candidates until connected"),await Yo(s,e,i,{direction:"recipient",signal:r}),gt.trace("recipient connected, closing signaling stream"),await i.unwrap().unwrap().close({signal:r})}catch(s){if(e.connectionState!=="connected")throw gt.error("error while handling signaling stream from peer %a",n.remoteAddr,s),e.close(),s;gt("error while handling signaling stream from peer %a, ignoring as the RTCPeerConnection is already connected",n.remoteAddr,s)}let o=Xo(e.currentRemoteDescription?.sdp??"");return gt.trace("recipient connected to remote address %s",o),{remoteAddress:o}}var zc=Ne("libp2p:webrtc:peer"),ex="/webrtc",tx="/p2p-circuit",Qo="/webrtc-signaling/0.0.1",rx=30*1e3,is=class{components;init;_started=!1;metrics;shutdownController;constructor(t,r={}){this.components=t,this.init=r,this.shutdownController=new AbortController,t.metrics!=null&&(this.metrics={dialerEvents:t.metrics.registerCounterGroup("libp2p_webrtc_dialer_events_total",{label:"event",help:"Total count of WebRTC dialer events by type"}),listenerEvents:t.metrics.registerCounterGroup("libp2p_webrtc_listener_events_total",{label:"event",help:"Total count of WebRTC listener events by type"})})}isStarted(){return this._started}async start(){await this.components.registrar.handle(Qo,t=>{this._onProtocol(t).catch(r=>{zc.error("failed to handle incoming connect from %p",t.connection.remotePeer,r)})},{runOnTransientConnection:!0}),this._started=!0}async stop(){await this.components.registrar.unhandle(Qo),this._started=!1}createListener(t){return new ns(this.components,{shutdownController:this.shutdownController})}[Symbol.toStringTag]="@libp2p/webrtc";[po]=!0;filter(t){return t.filter(Wf.exactMatch)}async dial(t,r){zc.trace("dialing address: %a",t);let n=new Yn(this.init.rtcConfiguration),i=new cn({peerConnection:n,dataChannelOptions:this.init.dataChannel}),{remoteAddress:o}=await sh({peerConnection:n,multiaddr:t,dataChannelOptions:this.init.dataChannel,signal:r.signal,connectionManager:this.components.connectionManager,transportManager:this.components.transportManager}),s=new Jr({peerConnection:n,timeline:{open:Date.now()},remoteAddr:o,metrics:this.metrics?.dialerEvents}),a=await r.upgrader.upgradeOutbound(s,{skipProtection:!0,skipEncryption:!0,muxerFactory:i});return this._closeOnShutdown(n,s),a}async _onProtocol({connection:t,stream:r}){let n=AbortSignal.timeout(this.init.inboundConnectionTimeout??rx),i=new Yn(this.init.rtcConfiguration),o=new cn({peerConnection:i,dataChannelOptions:this.init.dataChannel});try{let{remoteAddress:s}=await mh({peerConnection:i,connection:t,stream:r,signal:n}),a=new Jr({peerConnection:i,timeline:{open:new Date().getTime()},remoteAddr:Wt(s).encapsulate(`/p2p/${t.remotePeer.toString()}`),metrics:this.metrics?.listenerEvents});this._closeOnShutdown(i,a),await this.components.upgrader.upgradeInbound(a,{skipEncryption:!0,skipProtection:!0,muxerFactory:o}),await r.close({signal:n})}catch(s){throw r.abort(s),s}}_closeOnShutdown(t,r){let n=()=>{r.close().catch(i=>{zc.error("could not close WebRTCMultiaddrConnection",i)})};this.shutdownController.signal.addEventListener("abort",n),t.addEventListener("close",()=>{this.shutdownController.signal.removeEventListener("abort",n)})}};function ah(e){let t=e.toString().split(ex+"/");if(t.length!==2)throw new W("webrtc protocol was not present in multiaddr",yt.ERR_INVALID_MULTIADDR);if(!t[0].includes(tx))throw new W("p2p-circuit protocol was not present in multiaddr",yt.ERR_INVALID_MULTIADDR);let r=Wt(t[0]),i=Wt("/"+t[1]).getPeerId();if(i==null)throw new W("destination peer id was missing",yt.ERR_INVALID_MULTIADDR);let o=r.protos().pop();if(o===void 0)throw new W("invalid multiaddr",yt.ERR_INVALID_MULTIADDR);return o.name!=="p2p"&&(r=r.encapsulate(`/p2p/${i}`)),{baseAddr:r,peerId:Qr(i)}}function Gc(){let e=Je(),t=!1;return{sink:async r=>{if(t)throw new Error("already piped");t=!0,e.resolve(r)},source:async function*(){yield*await e.promise}()}}function xh(){let e=Gc(),t=Gc();return[{source:e.source,sink:t.sink},{source:t.source,sink:e.sink}]}function nx(e){return e[Symbol.asyncIterator]!=null}function ix(...e){let t=[];for(let r of e)nx(r)||t.push(r);return t.length===e.length?function*(){for(let r of t)yield*r}():async function*(){let r=Zt({objectMode:!0});Promise.resolve().then(async()=>{try{await Promise.all(e.map(async n=>{for await(let i of n)r.push(i)})),r.end()}catch(n){r.end(n)}}),yield*r}()}var bh=ix;function wh(e,...t){if(e==null)throw new Error("Empty pipeline");if(Wc(e)){let n=e;e=()=>n.source}else if(Eh(e)||vh(e)){let n=e;e=()=>n}let r=[e,...t];if(r.length>1&&Wc(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++)Wc(r[n])&&(r[n]=sx(r[n]));return ox(...r)}var ox=(...e)=>{let t;for(;e.length>0;)t=e.shift()(t);return t},vh=e=>e?.[Symbol.asyncIterator]!=null,Eh=e=>e?.[Symbol.iterator]!=null,Wc=e=>e==null?!1:e.sink!=null&&e.source!=null,sx=e=>t=>{let r=e.sink(t);if(r?.then!=null){let n=Zt({objectMode:!0});r.then(()=>{n.end()},s=>{n.end(s)});let i,o=e.source;if(vh(o))i=async function*(){yield*o,n.end()};else if(Eh(o))i=function*(){yield*o,n.end()};else throw new Error("Unknown duplex source type - must be Iterable or AsyncIterable");return bh(n,i())}return e.source};var Sh=!!globalThis.process?.env?.DUMP_SESSION_KEYS;var ax=e=>e instanceof Uint8Array;var lr=e=>new Uint32Array(e.buffer,e.byteOffset,Math.floor(e.byteLength/4)),Ch=e=>new DataView(e.buffer,e.byteOffset,e.byteLength),cx=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!cx)throw new Error("Non little-endian hardware is not supported");function os(e){if(typeof e!="string")throw new Error(`utf8ToBytes expected string, got ${typeof e}`);return new Uint8Array(new TextEncoder().encode(e))}function ss(e){if(typeof e=="string"&&(e=os(e)),!ax(e))throw new Error(`expected Uint8Array, got ${typeof e}`);return e}var ux=e=>Object.prototype.toString.call(e)==="[object Object]"&&e.constructor===Object;function Ah(e,t){if(t!==void 0&&(typeof t!="object"||!ux(t)))throw new Error("options must be object or undefined");return Object.assign(e,t)}function hn(e,t){if(!(e instanceof Uint8Array))throw new Error("Uint8Array expected");if(typeof t=="number"&&e.length!==t)throw new Error(`Uint8Array length ${t} expected`)}function Dh(e,t){if(e.length!==t.length)throw new Error("equalBytes: Different size of Uint8Arrays");let r=!0;for(let n=0;n<e.length;n++)r&&(r=e[n]===t[n]);return r}function $c(e,t,r,n){if(typeof e.setBigUint64=="function")return e.setBigUint64(t,r,n);let i=BigInt(32),o=BigInt(4294967295),s=Number(r>>i&o),a=Number(r&o),c=n?4:0,u=n?0:4;e.setUint32(t+c,s,n),e.setUint32(t+u,a,n)}function Yc(e){if(!Number.isSafeInteger(e)||e<0)throw new Error(`Wrong positive integer: ${e}`)}function fx(e){if(typeof e!="boolean")throw new Error(`Expected boolean, not ${e}`)}function Bh(e,...t){if(!(e instanceof Uint8Array))throw new Error("Expected Uint8Array");if(t.length>0&&!t.includes(e.length))throw new Error(`Expected Uint8Array of length ${t}, not of length=${e.length}`)}function lx(e){if(typeof e!="function"||typeof e.create!="function")throw new Error("hash must be wrapped by utils.wrapConstructor");Yc(e.outputLen),Yc(e.blockLen)}function hx(e,t=!0){if(e.destroyed)throw new Error("Hash instance has been destroyed");if(t&&e.finished)throw new Error("Hash#digest() has already been called")}function dx(e,t){Bh(e);let r=t.outputLen;if(e.length<r)throw new Error(`digestInto() expects output buffer of length at least ${r}`)}var px={number:Yc,bool:fx,bytes:Bh,hash:lx,exists:hx,output:dx},st=px;var tt=(e,t)=>e[t++]&255|(e[t++]&255)<<8,Zc=class{constructor(t){this.blockLen=16,this.outputLen=16,this.buffer=new Uint8Array(16),this.r=new Uint16Array(10),this.h=new Uint16Array(10),this.pad=new Uint16Array(8),this.pos=0,this.finished=!1,t=ss(t),hn(t,32);let r=tt(t,0),n=tt(t,2),i=tt(t,4),o=tt(t,6),s=tt(t,8),a=tt(t,10),c=tt(t,12),u=tt(t,14);this.r[0]=r&8191,this.r[1]=(r>>>13|n<<3)&8191,this.r[2]=(n>>>10|i<<6)&7939,this.r[3]=(i>>>7|o<<9)&8191,this.r[4]=(o>>>4|s<<12)&255,this.r[5]=s>>>1&8190,this.r[6]=(s>>>14|a<<2)&8191,this.r[7]=(a>>>11|c<<5)&8065,this.r[8]=(c>>>8|u<<8)&8191,this.r[9]=u>>>5&127;for(let f=0;f<8;f++)this.pad[f]=tt(t,16+2*f)}process(t,r,n=!1){let i=n?0:2048,{h:o,r:s}=this,a=s[0],c=s[1],u=s[2],f=s[3],l=s[4],h=s[5],y=s[6],d=s[7],p=s[8],g=s[9],m=tt(t,r+0),v=tt(t,r+2),x=tt(t,r+4),A=tt(t,r+6),w=tt(t,r+8),E=tt(t,r+10),D=tt(t,r+12),B=tt(t,r+14),R=o[0]+(m&8191),F=o[1]+((m>>>13|v<<3)&8191),O=o[2]+((v>>>10|x<<6)&8191),K=o[3]+((x>>>7|A<<9)&8191),q=o[4]+((A>>>4|w<<12)&8191),j=o[5]+(w>>>1&8191),I=o[6]+((w>>>14|E<<2)&8191),L=o[7]+((E>>>11|D<<5)&8191),_=o[8]+((D>>>8|B<<8)&8191),k=o[9]+(B>>>5|i),S=0,U=S+R*a+F*(5*g)+O*(5*p)+K*(5*d)+q*(5*y);S=U>>>13,U&=8191,U+=j*(5*h)+I*(5*l)+L*(5*f)+_*(5*u)+k*(5*c),S+=U>>>13,U&=8191;let M=S+R*c+F*a+O*(5*g)+K*(5*p)+q*(5*d);S=M>>>13,M&=8191,M+=j*(5*y)+I*(5*h)+L*(5*l)+_*(5*f)+k*(5*u),S+=M>>>13,M&=8191;let H=S+R*u+F*c+O*a+K*(5*g)+q*(5*p);S=H>>>13,H&=8191,H+=j*(5*d)+I*(5*y)+L*(5*h)+_*(5*l)+k*(5*f),S+=H>>>13,H&=8191;let Q=S+R*f+F*u+O*c+K*a+q*(5*g);S=Q>>>13,Q&=8191,Q+=j*(5*p)+I*(5*d)+L*(5*y)+_*(5*h)+k*(5*l),S+=Q>>>13,Q&=8191;let J=S+R*l+F*f+O*u+K*c+q*a;S=J>>>13,J&=8191,J+=j*(5*g)+I*(5*p)+L*(5*d)+_*(5*y)+k*(5*h),S+=J>>>13,J&=8191;let oe=S+R*h+F*l+O*f+K*u+q*c;S=oe>>>13,oe&=8191,oe+=j*a+I*(5*g)+L*(5*p)+_*(5*d)+k*(5*y),S+=oe>>>13,oe&=8191;let ee=S+R*y+F*h+O*l+K*f+q*u;S=ee>>>13,ee&=8191,ee+=j*c+I*a+L*(5*g)+_*(5*p)+k*(5*d),S+=ee>>>13,ee&=8191;let re=S+R*d+F*y+O*h+K*l+q*f;S=re>>>13,re&=8191,re+=j*u+I*c+L*a+_*(5*g)+k*(5*p),S+=re>>>13,re&=8191;let ve=S+R*p+F*d+O*y+K*h+q*l;S=ve>>>13,ve&=8191,ve+=j*f+I*u+L*c+_*a+k*(5*g),S+=ve>>>13,ve&=8191;let xe=S+R*g+F*p+O*d+K*y+q*h;S=xe>>>13,xe&=8191,xe+=j*l+I*f+L*u+_*c+k*a,S+=xe>>>13,xe&=8191,S=(S<<2)+S|0,S=S+U|0,U=S&8191,S=S>>>13,M+=S,o[0]=U,o[1]=M,o[2]=H,o[3]=Q,o[4]=J,o[5]=oe,o[6]=ee,o[7]=re,o[8]=ve,o[9]=xe}finalize(){let{h:t,pad:r}=this,n=new Uint16Array(10),i=t[1]>>>13;t[1]&=8191;for(let a=2;a<10;a++)t[a]+=i,i=t[a]>>>13,t[a]&=8191;t[0]+=i*5,i=t[0]>>>13,t[0]&=8191,t[1]+=i,i=t[1]>>>13,t[1]&=8191,t[2]+=i,n[0]=t[0]+5,i=n[0]>>>13,n[0]&=8191;for(let a=1;a<10;a++)n[a]=t[a]+i,i=n[a]>>>13,n[a]&=8191;n[9]-=8192;let o=(i^1)-1;for(let a=0;a<10;a++)n[a]&=o;o=~o;for(let a=0;a<10;a++)t[a]=t[a]&o|n[a];t[0]=(t[0]|t[1]<<13)&65535,t[1]=(t[1]>>>3|t[2]<<10)&65535,t[2]=(t[2]>>>6|t[3]<<7)&65535,t[3]=(t[3]>>>9|t[4]<<4)&65535,t[4]=(t[4]>>>12|t[5]<<1|t[6]<<14)&65535,t[5]=(t[6]>>>2|t[7]<<11)&65535,t[6]=(t[7]>>>5|t[8]<<8)&65535,t[7]=(t[8]>>>8|t[9]<<5)&65535;let s=t[0]+r[0];t[0]=s&65535;for(let a=1;a<8;a++)s=(t[a]+r[a]|0)+(s>>>16)|0,t[a]=s&65535}update(t){st.exists(this);let{buffer:r,blockLen:n}=this;t=ss(t);let i=t.length;for(let o=0;o<i;){let s=Math.min(n-this.pos,i-o);if(s===n){for(;n<=i-o;o+=n)this.process(t,o);continue}r.set(t.subarray(o,o+s),this.pos),this.pos+=s,o+=s,this.pos===n&&(this.process(r,0,!1),this.pos=0)}return this}destroy(){this.h.fill(0),this.r.fill(0),this.buffer.fill(0),this.pad.fill(0)}digestInto(t){st.exists(this),st.output(t,this),this.finished=!0;let{buffer:r,h:n}=this,{pos:i}=this;if(i){for(r[i++]=1;i<16;i++)r[i]=0;this.process(r,0,!0)}this.finalize();let o=0;for(let s=0;s<8;s++)t[o++]=n[s]>>>0,t[o++]=n[s]>>>8;return t}digest(){let{buffer:t,outputLen:r}=this;this.digestInto(t);let n=t.slice(0,r);return this.destroy(),n}};function yx(e){let t=(n,i)=>e(i).update(ss(n)).digest(),r=e(new Uint8Array(32));return t.outputLen=r.outputLen,t.blockLen=r.blockLen,t.create=n=>e(n),t}var Ih=yx(e=>new Zc(e));var gx=os("expand 16-byte k"),mx=os("expand 32-byte k"),xx=lr(gx),bx=lr(mx),as=e=>!(e.byteOffset%4),Th=e=>{let{core:t,rounds:r,counterRight:n,counterLen:i,allow128bitKeys:o,extendNonceFn:s,blockLen:a}=Ah({rounds:20,counterRight:!1,counterLen:8,allow128bitKeys:!0,blockLen:64},e);st.number(i),st.number(r),st.number(a),st.bool(n),st.bool(o);let c=a/4;if(a%4!==0)throw new Error("Salsa/ChaCha: blockLen must be aligned to 4 bytes");return(u,f,l,h,y=0)=>{if(st.bytes(u),st.bytes(f),st.bytes(l),h||(h=new Uint8Array(l.length)),st.bytes(h),st.number(y),y<0||y>=2**32-1)throw new Error("Salsa/ChaCha: counter overflow");if(h.length<l.length)throw new Error(`Salsa/ChaCha: output (${h.length}) is shorter than data (${l.length})`);let d=[],p,g;if(u.length===32)as(u)?p=u:(p=u.slice(),d.push(p)),g=bx;else if(u.length===16&&o)p=new Uint8Array(32),p.set(u),p.set(u,16),g=xx,d.push(p);else throw new Error(`Salsa/ChaCha: invalid 32-byte key, got length=${u.length}`);if(as(f)||(f=f.slice(),d.push(f)),s){if(f.length<=16)throw new Error("Salsa/ChaCha: extended nonce must be bigger than 16 bytes");p=s(g,p,f.subarray(0,16),new Uint8Array(32)),d.push(p),f=f.subarray(16)}let m=16-i;if(f.length!==m)throw new Error(`Salsa/ChaCha: nonce must be ${m} or 16 bytes`);if(m!==12){let R=new Uint8Array(12);R.set(f,n?0:12-f.length),d.push(f=R)}let v=new Uint8Array(a),x=lr(v),A=lr(p),w=lr(f),E=as(l)&&lr(l),D=as(h)&&lr(h);d.push(x);let B=l.length;for(let R=0,F=y;R<B;F++){if(t(g,A,w,x,F,r),F>=2**32-1)throw new Error("Salsa/ChaCha: counter overflow");let O=Math.min(a,B-R);if(O===a&&D&&E){let K=R/4;if(R%4!==0)throw new Error("Salsa/ChaCha: invalid block position");for(let q=0;q<c;q++)D[K+q]=E[K+q]^x[q];R+=a;continue}for(let K=0;K<O;K++)h[R+K]=l[R+K]^v[K];R+=O}for(let R=0;R<d.length;R++)d[R].fill(0);return h}};var he=(e,t)=>e<<t|e>>>32-t;function wx(e,t,r,n,i,o=20){let s=e[0],a=e[1],c=e[2],u=e[3],f=t[0],l=t[1],h=t[2],y=t[3],d=t[4],p=t[5],g=t[6],m=t[7],v=i,x=r[0],A=r[1],w=r[2],E=s,D=a,B=c,R=u,F=f,O=l,K=h,q=y,j=d,I=p,L=g,_=m,k=v,S=x,U=A,M=w;for(let Q=0;Q<o;Q+=2)E=E+F|0,k=he(k^E,16),j=j+k|0,F=he(F^j,12),E=E+F|0,k=he(k^E,8),j=j+k|0,F=he(F^j,7),D=D+O|0,S=he(S^D,16),I=I+S|0,O=he(O^I,12),D=D+O|0,S=he(S^D,8),I=I+S|0,O=he(O^I,7),B=B+K|0,U=he(U^B,16),L=L+U|0,K=he(K^L,12),B=B+K|0,U=he(U^B,8),L=L+U|0,K=he(K^L,7),R=R+q|0,M=he(M^R,16),_=_+M|0,q=he(q^_,12),R=R+q|0,M=he(M^R,8),_=_+M|0,q=he(q^_,7),E=E+O|0,M=he(M^E,16),L=L+M|0,O=he(O^L,12),E=E+O|0,M=he(M^E,8),L=L+M|0,O=he(O^L,7),D=D+K|0,k=he(k^D,16),_=_+k|0,K=he(K^_,12),D=D+K|0,k=he(k^D,8),_=_+k|0,K=he(K^_,7),B=B+q|0,S=he(S^B,16),j=j+S|0,q=he(q^j,12),B=B+q|0,S=he(S^B,8),j=j+S|0,q=he(q^j,7),R=R+F|0,U=he(U^R,16),I=I+U|0,F=he(F^I,12),R=R+F|0,U=he(U^R,8),I=I+U|0,F=he(F^I,7);let H=0;n[H++]=s+E|0,n[H++]=a+D|0,n[H++]=c+B|0,n[H++]=u+R|0,n[H++]=f+F|0,n[H++]=l+O|0,n[H++]=h+K|0,n[H++]=y+q|0,n[H++]=d+j|0,n[H++]=p+I|0,n[H++]=g+L|0,n[H++]=m+_|0,n[H++]=v+k|0,n[H++]=x+S|0,n[H++]=A+U|0,n[H++]=w+M|0}var vx=Th({core:wx,counterRight:!1,counterLen:4,allow128bitKeys:!1});var Ex=new Uint8Array(16),_h=(e,t)=>{e.update(t);let r=t.length%16;r&&e.update(Ex.subarray(r))},kh=(e,t,r,n,i)=>{let o=e(t,r,new Uint8Array(32)),s=Ih.create(o);i&&_h(s,i),_h(s,n);let a=new Uint8Array(16),c=Ch(a);$c(c,0,BigInt(i?i.length:0),!0),$c(c,8,BigInt(n.length),!0),s.update(a);let u=s.digest();return o.fill(0),u},Sx=e=>(t,r,n)=>(hn(t,32),hn(r),{tagLength:16,encrypt:(o,s)=>{let a=o.length,c=a+16;s?hn(s,c):s=new Uint8Array(c),e(t,r,o,s,1);let u=kh(e,t,r,s.subarray(0,-16),n);return s.set(u,a),s},decrypt:(o,s)=>{let a=o.length,c=a-16;if(a<16)throw new Error("encrypted data must be at least 16 bytes");s?hn(s,c):s=new Uint8Array(c);let u=o.subarray(0,-16),f=o.subarray(-16),l=kh(e,t,r,u,n);if(!Dh(f,l))throw new Error("invalid tag");return e(t,r,u,s,1),s}}),Xc=Sx(vx);function cs(e){if(!Number.isSafeInteger(e)||e<0)throw new Error(`Wrong positive integer: ${e}`)}function Qc(e,...t){if(!(e instanceof Uint8Array))throw new Error("Expected Uint8Array");if(t.length>0&&!t.includes(e.length))throw new Error(`Expected Uint8Array of length ${t}, not of length=${e.length}`)}function Pi(e){if(typeof e!="function"||typeof e.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");cs(e.outputLen),cs(e.blockLen)}function Xn(e,t=!0){if(e.destroyed)throw new Error("Hash instance has been destroyed");if(t&&e.finished)throw new Error("Hash#digest() has already been called")}function Rh(e,t){Qc(e);let r=t.outputLen;if(e.length<r)throw new Error(`digestInto() expects output buffer of length at least ${r}`)}var us=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;var Lh=e=>e instanceof Uint8Array;var fs=e=>new DataView(e.buffer,e.byteOffset,e.byteLength),Ot=(e,t)=>e<<32-t|e>>>t,Cx=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!Cx)throw new Error("Non little-endian hardware is not supported");function jc(e){if(typeof e!="string")throw new Error(`utf8ToBytes expected string, got ${typeof e}`);return new Uint8Array(new TextEncoder().encode(e))}function Nr(e){if(typeof e=="string"&&(e=jc(e)),!Lh(e))throw new Error(`expected Uint8Array, got ${typeof e}`);return e}function ls(...e){let t=new Uint8Array(e.reduce((n,i)=>n+i.length,0)),r=0;return e.forEach(n=>{if(!Lh(n))throw new Error("Uint8Array expected");t.set(n,r),r+=n.length}),t}var Qn=class{clone(){return this._cloneInto()}},dD={}.toString;function hs(e){let t=n=>e().update(Nr(n)).digest(),r=e();return t.outputLen=r.outputLen,t.blockLen=r.blockLen,t.create=()=>e(),t}function dn(e=32){if(us&&typeof us.getRandomValues=="function")return us.getRandomValues(new Uint8Array(e));throw new Error("crypto.getRandomValues must be defined")}function Ax(e,t,r,n){if(typeof e.setBigUint64=="function")return e.setBigUint64(t,r,n);let i=BigInt(32),o=BigInt(4294967295),s=Number(r>>i&o),a=Number(r&o),c=n?4:0,u=n?0:4;e.setUint32(t+c,s,n),e.setUint32(t+u,a,n)}var jn=class extends Qn{constructor(t,r,n,i){super(),this.blockLen=t,this.outputLen=r,this.padOffset=n,this.isLE=i,this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.buffer=new Uint8Array(t),this.view=fs(this.buffer)}update(t){Xn(this);let{view:r,buffer:n,blockLen:i}=this;t=Nr(t);let o=t.length;for(let s=0;s<o;){let a=Math.min(i-this.pos,o-s);if(a===i){let c=fs(t);for(;i<=o-s;s+=i)this.process(c,s);continue}n.set(t.subarray(s,s+a),this.pos),this.pos+=a,s+=a,this.pos===i&&(this.process(r,0),this.pos=0)}return this.length+=t.length,this.roundClean(),this}digestInto(t){Xn(this),Rh(t,this),this.finished=!0;let{buffer:r,view:n,blockLen:i,isLE:o}=this,{pos:s}=this;r[s++]=128,this.buffer.subarray(s).fill(0),this.padOffset>i-s&&(this.process(n,0),s=0);for(let l=s;l<i;l++)r[l]=0;Ax(n,i-8,BigInt(this.length*8),o),this.process(n,0);let a=fs(t),c=this.outputLen;if(c%4)throw new Error("_sha2: outputLen should be aligned to 32bit");let u=c/4,f=this.get();if(u>f.length)throw new Error("_sha2: outputLen bigger than state");for(let l=0;l<u;l++)a.setUint32(4*l,f[l],o)}digest(){let{buffer:t,outputLen:r}=this;this.digestInto(t);let n=t.slice(0,r);return this.destroy(),n}_cloneInto(t){t||(t=new this.constructor),t.set(...this.get());let{blockLen:r,buffer:n,length:i,finished:o,destroyed:s,pos:a}=this;return t.length=i,t.pos=a,t.finished=o,t.destroyed=s,i%r&&t.buffer.set(n),t}};var ds=BigInt(4294967295),Jc=BigInt(32);function Nh(e,t=!1){return t?{h:Number(e&ds),l:Number(e>>Jc&ds)}:{h:Number(e>>Jc&ds)|0,l:Number(e&ds)|0}}function Dx(e,t=!1){let r=new Uint32Array(e.length),n=new Uint32Array(e.length);for(let i=0;i<e.length;i++){let{h:o,l:s}=Nh(e[i],t);[r[i],n[i]]=[o,s]}return[r,n]}var Bx=(e,t)=>BigInt(e>>>0)<<Jc|BigInt(t>>>0),Ix=(e,t,r)=>e>>>r,Tx=(e,t,r)=>e<<32-r|t>>>r,_x=(e,t,r)=>e>>>r|t<<32-r,kx=(e,t,r)=>e<<32-r|t>>>r,Rx=(e,t,r)=>e<<64-r|t>>>r-32,Lx=(e,t,r)=>e>>>r-32|t<<64-r,Nx=(e,t)=>t,Px=(e,t)=>e,Ux=(e,t,r)=>e<<r|t>>>32-r,Ox=(e,t,r)=>t<<r|e>>>32-r,Fx=(e,t,r)=>t<<r-32|e>>>64-r,Kx=(e,t,r)=>e<<r-32|t>>>64-r;function Mx(e,t,r,n){let i=(t>>>0)+(n>>>0);return{h:e+r+(i/2**32|0)|0,l:i|0}}var Vx=(e,t,r)=>(e>>>0)+(t>>>0)+(r>>>0),qx=(e,t,r,n)=>t+r+n+(e/2**32|0)|0,Hx=(e,t,r,n)=>(e>>>0)+(t>>>0)+(r>>>0)+(n>>>0),zx=(e,t,r,n,i)=>t+r+n+i+(e/2**32|0)|0,Gx=(e,t,r,n,i)=>(e>>>0)+(t>>>0)+(r>>>0)+(n>>>0)+(i>>>0),Wx=(e,t,r,n,i,o)=>t+r+n+i+o+(e/2**32|0)|0;var $x={fromBig:Nh,split:Dx,toBig:Bx,shrSH:Ix,shrSL:Tx,rotrSH:_x,rotrSL:kx,rotrBH:Rx,rotrBL:Lx,rotr32H:Nx,rotr32L:Px,rotlSH:Ux,rotlSL:Ox,rotlBH:Fx,rotlBL:Kx,add:Mx,add3L:Vx,add3H:qx,add4L:Hx,add4H:zx,add5H:Wx,add5L:Gx},ne=$x;var[Yx,Zx]=(()=>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(e=>BigInt(e))))(),Pr=new Uint32Array(80),Ur=new Uint32Array(80),e0=class extends jn{constructor(){super(128,64,16,!1),this.Ah=1779033703,this.Al=-205731576,this.Bh=-1150833019,this.Bl=-2067093701,this.Ch=1013904242,this.Cl=-23791573,this.Dh=-1521486534,this.Dl=1595750129,this.Eh=1359893119,this.El=-1377402159,this.Fh=-1694144372,this.Fl=725511199,this.Gh=528734635,this.Gl=-79577749,this.Hh=1541459225,this.Hl=327033209}get(){let{Ah:t,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[t,r,n,i,o,s,a,c,u,f,l,h,y,d,p,g]}set(t,r,n,i,o,s,a,c,u,f,l,h,y,d,p,g){this.Ah=t|0,this.Al=r|0,this.Bh=n|0,this.Bl=i|0,this.Ch=o|0,this.Cl=s|0,this.Dh=a|0,this.Dl=c|0,this.Eh=u|0,this.El=f|0,this.Fh=l|0,this.Fl=h|0,this.Gh=y|0,this.Gl=d|0,this.Hh=p|0,this.Hl=g|0}process(t,r){for(let x=0;x<16;x++,r+=4)Pr[x]=t.getUint32(r),Ur[x]=t.getUint32(r+=4);for(let x=16;x<80;x++){let A=Pr[x-15]|0,w=Ur[x-15]|0,E=ne.rotrSH(A,w,1)^ne.rotrSH(A,w,8)^ne.shrSH(A,w,7),D=ne.rotrSL(A,w,1)^ne.rotrSL(A,w,8)^ne.shrSL(A,w,7),B=Pr[x-2]|0,R=Ur[x-2]|0,F=ne.rotrSH(B,R,19)^ne.rotrBH(B,R,61)^ne.shrSH(B,R,6),O=ne.rotrSL(B,R,19)^ne.rotrBL(B,R,61)^ne.shrSL(B,R,6),K=ne.add4L(D,O,Ur[x-7],Ur[x-16]),q=ne.add4H(K,E,F,Pr[x-7],Pr[x-16]);Pr[x]=q|0,Ur[x]=K|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:v}=this;for(let x=0;x<80;x++){let A=ne.rotrSH(l,h,14)^ne.rotrSH(l,h,18)^ne.rotrBH(l,h,41),w=ne.rotrSL(l,h,14)^ne.rotrSL(l,h,18)^ne.rotrBL(l,h,41),E=l&y^~l&p,D=h&d^~h&g,B=ne.add5L(v,w,D,Zx[x],Ur[x]),R=ne.add5H(B,m,A,E,Yx[x],Pr[x]),F=B|0,O=ne.rotrSH(n,i,28)^ne.rotrBH(n,i,34)^ne.rotrBH(n,i,39),K=ne.rotrSL(n,i,28)^ne.rotrBL(n,i,34)^ne.rotrBL(n,i,39),q=n&o^n&a^o&a,j=i&s^i&c^s&c;m=p|0,v=g|0,p=y|0,g=d|0,y=l|0,d=h|0,{h:l,l:h}=ne.add(u|0,f|0,R|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,K,j);n=ne.add3H(I,R,O,q),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:v}=ne.add(this.Hh|0,this.Hl|0,m|0,v|0),this.set(n,i,o,s,a,c,u,f,l,h,y,d,p,g,m,v)}roundClean(){Pr.fill(0),Ur.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 t0=hs(()=>new e0);var gs={};ue(gs,{bitGet:()=>rb,bitLen:()=>tb,bitMask:()=>Ui,bitSet:()=>nb,bytesToHex:()=>hr,bytesToNumberBE:()=>dr,bytesToNumberLE:()=>Ft,concatBytes:()=>yr,createHmacDrbg:()=>i0,ensureBytes:()=>Se,equalBytes:()=>Jx,hexToBytes:()=>pn,hexToNumber:()=>n0,numberToBytesBE:()=>Or,numberToBytesLE:()=>pr,numberToHexUnpadded:()=>Oh,numberToVarBytesBE:()=>jx,utf8ToBytes:()=>eb,validateObject:()=>St});var Uh=BigInt(0),ps=BigInt(1),Xx=BigInt(2),ys=e=>e instanceof Uint8Array,Qx=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,"0"));function hr(e){if(!ys(e))throw new Error("Uint8Array expected");let t="";for(let r=0;r<e.length;r++)t+=Qx[e[r]];return t}function Oh(e){let t=e.toString(16);return t.length&1?`0${t}`:t}function n0(e){if(typeof e!="string")throw new Error("hex string expected, got "+typeof e);return BigInt(e===""?"0":`0x${e}`)}function pn(e){if(typeof e!="string")throw new Error("hex string expected, got "+typeof e);let t=e.length;if(t%2)throw new Error("padded hex string expected, got unpadded hex of length "+t);let r=new Uint8Array(t/2);for(let n=0;n<r.length;n++){let i=n*2,o=e.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 dr(e){return n0(hr(e))}function Ft(e){if(!ys(e))throw new Error("Uint8Array expected");return n0(hr(Uint8Array.from(e).reverse()))}function Or(e,t){return pn(e.toString(16).padStart(t*2,"0"))}function pr(e,t){return Or(e,t).reverse()}function jx(e){return pn(Oh(e))}function Se(e,t,r){let n;if(typeof t=="string")try{n=pn(t)}catch(o){throw new Error(`${e} must be valid hex string, got "${t}". Cause: ${o}`)}else if(ys(t))n=Uint8Array.from(t);else throw new Error(`${e} must be hex string or Uint8Array`);let i=n.length;if(typeof r=="number"&&i!==r)throw new Error(`${e} expected ${r} bytes, got ${i}`);return n}function yr(...e){let t=new Uint8Array(e.reduce((n,i)=>n+i.length,0)),r=0;return e.forEach(n=>{if(!ys(n))throw new Error("Uint8Array expected");t.set(n,r),r+=n.length}),t}function Jx(e,t){if(e.length!==t.length)return!1;for(let r=0;r<e.length;r++)if(e[r]!==t[r])return!1;return!0}function eb(e){if(typeof e!="string")throw new Error(`utf8ToBytes expected string, got ${typeof e}`);return new Uint8Array(new TextEncoder().encode(e))}function tb(e){let t;for(t=0;e>Uh;e>>=ps,t+=1);return t}function rb(e,t){return e>>BigInt(t)&ps}var nb=(e,t,r)=>e|(r?ps:Uh)<<BigInt(t),Ui=e=>(Xx<<BigInt(e-1))-ps,r0=e=>new Uint8Array(e),Ph=e=>Uint8Array.from(e);function i0(e,t,r){if(typeof e!="number"||e<2)throw new Error("hashLen must be a number");if(typeof t!="number"||t<2)throw new Error("qByteLen must be a number");if(typeof r!="function")throw new Error("hmacFn must be a function");let n=r0(e),i=r0(e),o=0,s=()=>{n.fill(1),i.fill(0),o=0},a=(...l)=>r(i,n,...l),c=(l=r0())=>{i=a(Ph([0]),l),n=a(),l.length!==0&&(i=a(Ph([1]),l),n=a())},u=()=>{if(o++>=1e3)throw new Error("drbg: tried 1000 values");let l=0,h=[];for(;l<t;){n=a();let y=n.slice();h.push(y),l+=n.length}return yr(...h)};return(l,h)=>{s(),c(l);let y;for(;!(y=h(u()));)c();return s(),y}}var ib={bigint:e=>typeof e=="bigint",function:e=>typeof e=="function",boolean:e=>typeof e=="boolean",string:e=>typeof e=="string",stringOrUint8Array:e=>typeof e=="string"||e instanceof Uint8Array,isSafeInteger:e=>Number.isSafeInteger(e),array:e=>Array.isArray(e),field:(e,t)=>t.Fp.isValid(e),hash:e=>typeof e=="function"&&Number.isSafeInteger(e.outputLen)};function St(e,t,r={}){let n=(i,o,s)=>{let a=ib[o];if(typeof a!="function")throw new Error(`Invalid validator "${o}", expected function`);let c=e[i];if(!(s&&c===void 0)&&!a(c,e))throw new Error(`Invalid param ${String(i)}=${c} (${typeof c}), expected ${o}`)};for(let[i,o]of Object.entries(t))n(i,o,!1);for(let[i,o]of Object.entries(r))n(i,o,!0);return e}var He=BigInt(0),Ie=BigInt(1),yn=BigInt(2),ob=BigInt(3),o0=BigInt(4),Fh=BigInt(5),Kh=BigInt(8),sb=BigInt(9),ab=BigInt(16);function de(e,t){let r=e%t;return r>=He?r:t+r}function s0(e,t,r){if(r<=He||t<He)throw new Error("Expected power/modulo > 0");if(r===Ie)return He;let n=Ie;for(;t>He;)t&Ie&&(n=n*e%r),e=e*e%r,t>>=Ie;return n}function Ce(e,t,r){let n=e;for(;t-- >He;)n*=n,n%=r;return n}function ms(e,t){if(e===He||t<=He)throw new Error(`invert: expected positive integers, got n=${e} mod=${t}`);let r=de(e,t),n=t,i=He,o=Ie,s=Ie,a=He;for(;r!==He;){let u=n/r,f=n%r,l=i-s*u,h=o-a*u;n=r,r=f,i=s,o=a,s=l,a=h}if(n!==Ie)throw new Error("invert: does not exist");return de(i,t)}function cb(e){let t=(e-Ie)/yn,r,n,i;for(r=e-Ie,n=0;r%yn===He;r/=yn,n++);for(i=yn;i<e&&s0(i,t,e)!==e-Ie;i++);if(n===1){let s=(e+Ie)/o0;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+Ie)/yn;return function(a,c){if(a.pow(c,t)===a.neg(a.ONE))throw new Error("Cannot find square root");let u=n,f=a.pow(a.mul(a.ONE,i),r),l=a.pow(c,o),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,Ie<<BigInt(u-y-1));f=a.sqr(d),l=a.mul(l,d),h=a.mul(h,f),u=y}return l}}function ub(e){if(e%o0===ob){let t=(e+Ie)/o0;return function(n,i){let o=n.pow(i,t);if(!n.eql(n.sqr(o),i))throw new Error("Cannot find square root");return o}}if(e%Kh===Fh){let t=(e-Fh)/Kh;return function(n,i){let o=n.mul(i,yn),s=n.pow(o,t),a=n.mul(i,s),c=n.mul(n.mul(a,yn),s),u=n.mul(a,n.sub(c,n.ONE));if(!n.eql(n.sqr(u),i))throw new Error("Cannot find square root");return u}}return e%ab,cb(e)}var Mh=(e,t)=>(de(e,t)&Ie)===Ie,fb=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function a0(e){let t={ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"},r=fb.reduce((n,i)=>(n[i]="function",n),t);return St(e,r)}function lb(e,t,r){if(r<He)throw new Error("Expected power > 0");if(r===He)return e.ONE;if(r===Ie)return t;let n=e.ONE,i=t;for(;r>He;)r&Ie&&(n=e.mul(n,i)),i=e.sqr(i),r>>=Ie;return n}function hb(e,t){let r=new Array(t.length),n=t.reduce((o,s,a)=>e.is0(s)?o:(r[a]=o,e.mul(o,s)),e.ONE),i=e.inv(n);return t.reduceRight((o,s,a)=>e.is0(s)?o:(r[a]=e.mul(o,r[a]),e.mul(o,s)),i),r}function c0(e,t){let r=t!==void 0?t:e.toString(2).length,n=Math.ceil(r/8);return{nBitLength:r,nByteLength:n}}function xs(e,t,r=!1,n={}){if(e<=He)throw new Error(`Expected Field ORDER > 0, got ${e}`);let{nBitLength:i,nByteLength:o}=c0(e,t);if(o>2048)throw new Error("Field lengths over 2048 bytes are not supported");let s=ub(e),a=Object.freeze({ORDER:e,BITS:i,BYTES:o,MASK:Ui(i),ZERO:He,ONE:Ie,create:c=>de(c,e),isValid:c=>{if(typeof c!="bigint")throw new Error(`Invalid field element: expected bigint, got ${typeof c}`);return He<=c&&c<e},is0:c=>c===He,isOdd:c=>(c&Ie)===Ie,neg:c=>de(-c,e),eql:(c,u)=>c===u,sqr:c=>de(c*c,e),add:(c,u)=>de(c+u,e),sub:(c,u)=>de(c-u,e),mul:(c,u)=>de(c*u,e),pow:(c,u)=>lb(a,c,u),div:(c,u)=>de(c*ms(u,e),e),sqrN:c=>c*c,addN:(c,u)=>c+u,subN:(c,u)=>c-u,mulN:(c,u)=>c*u,inv:c=>ms(c,e),sqrt:n.sqrt||(c=>s(a,c)),invertBatch:c=>hb(a,c),cmov:(c,u,f)=>f?u:c,toBytes:c=>r?pr(c,o):Or(c,o),fromBytes:c=>{if(c.length!==o)throw new Error(`Fp.fromBytes: expected ${o}, got ${c.length}`);return r?Ft(c):dr(c)}});return Object.freeze(a)}function Vh(e,t){if(!e.isOdd)throw new Error("Field doesn't have isOdd");let r=e.sqrt(t);return e.isOdd(r)?e.neg(r):r}function qh(e){if(typeof e!="bigint")throw new Error("field order must be bigint");let t=e.toString(2).length;return Math.ceil(t/8)}function u0(e){let t=qh(e);return t+Math.ceil(t/2)}function Hh(e,t,r=!1){let n=e.length,i=qh(t),o=u0(t);if(n<16||n<o||n>1024)throw new Error(`expected ${o}-1024 bytes of input, got ${n}`);let s=r?dr(e):Ft(e),a=de(s,t-Ie)+Ie;return r?pr(a,i):Or(a,i)}var pb=BigInt(0),f0=BigInt(1);function bs(e,t){let r=(i,o)=>{let s=o.negate();return i?s:o},n=i=>{let o=Math.ceil(t/i)+1,s=2**(i-1);return{windows:o,windowSize:s}};return{constTimeNegate:r,unsafeLadder(i,o){let s=e.ZERO,a=i;for(;o>pb;)o&f0&&(s=s.add(a)),a=a.double(),o>>=f0;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=e.ZERO,f=e.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+=f0);let m=p,v=p+Math.abs(g)-1,x=d%2!==0,A=g<0;g===0?f=f.add(r(x,o[m])):u=u.add(r(A,o[v]))}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 Oi(e){return a0(e.Fp),St(e,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...c0(e.n,e.nBitLength),...e,p:e.Fp.ORDER})}var Kt=BigInt(0),mt=BigInt(1),ws=BigInt(2),yb=BigInt(8),gb={zip215:!0};function mb(e){let t=Oi(e);return St(e,{hash:"function",a:"bigint",d:"bigint",randomBytes:"function"},{adjustScalarBytes:"function",domain:"function",uvRatio:"function",mapToCurve:"function"}),Object.freeze({...t})}function vs(e){let t=mb(e),{Fp:r,n,prehash:i,hash:o,randomBytes:s,nByteLength:a,h:c}=t,u=ws<<BigInt(a*8)-mt,f=r.create,l=t.uvRatio||((k,S)=>{try{return{isValid:!0,value:r.sqrt(k*r.inv(S))}}catch{return{isValid:!1,value:Kt}}}),h=t.adjustScalarBytes||(k=>k),y=t.domain||((k,S,U)=>{if(S.length||U)throw new Error("Contexts/pre-hash are not supported");return k}),d=k=>typeof k=="bigint"&&Kt<k,p=(k,S)=>d(k)&&d(S)&&k<S,g=k=>k===Kt||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 v(k){return k===Kt?k:m(k,n)}let x=new Map;function A(k){if(!(k instanceof w))throw new Error("ExtendedPoint expected")}class w{constructor(S,U,M,H){if(this.ex=S,this.ey=U,this.ez=M,this.et=H,!g(S))throw new Error("x required");if(!g(U))throw new Error("y required");if(!g(M))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(S){if(S instanceof w)throw new Error("extended point not allowed");let{x:U,y:M}=S||{};if(!g(U)||!g(M))throw new Error("invalid affine point");return new w(U,M,mt,f(U*M))}static normalizeZ(S){let U=r.invertBatch(S.map(M=>M.ez));return S.map((M,H)=>M.toAffine(U[H])).map(w.fromAffine)}_setWindowSize(S){this._WINDOW_SIZE=S,x.delete(this)}assertValidity(){let{a:S,d:U}=t;if(this.is0())throw new Error("bad point: ZERO");let{ex:M,ey:H,ez:Q,et:J}=this,oe=f(M*M),ee=f(H*H),re=f(Q*Q),ve=f(re*re),xe=f(oe*S),Xe=f(re*f(xe+ee)),Qe=f(ve+f(U*f(oe*ee)));if(Xe!==Qe)throw new Error("bad point: equation left != right (1)");let qe=f(M*H),nt=f(Q*J);if(qe!==nt)throw new Error("bad point: equation left != right (2)")}equals(S){A(S);let{ex:U,ey:M,ez:H}=this,{ex:Q,ey:J,ez:oe}=S,ee=f(U*oe),re=f(Q*H),ve=f(M*oe),xe=f(J*H);return ee===re&&ve===xe}is0(){return this.equals(w.ZERO)}negate(){return new w(f(-this.ex),this.ey,this.ez,f(-this.et))}double(){let{a:S}=t,{ex:U,ey:M,ez:H}=this,Q=f(U*U),J=f(M*M),oe=f(ws*f(H*H)),ee=f(S*Q),re=U+M,ve=f(f(re*re)-Q-J),xe=ee+J,Xe=xe-oe,Qe=ee-J,qe=f(ve*Xe),nt=f(xe*Qe),sr=f(ve*Qe),Wr=f(Xe*xe);return new w(qe,nt,Wr,sr)}add(S){A(S);let{a:U,d:M}=t,{ex:H,ey:Q,ez:J,et:oe}=this,{ex:ee,ey:re,ez:ve,et:xe}=S;if(U===BigInt(-1)){let Fu=f((Q-H)*(re+ee)),Ku=f((Q+H)*(re-ee)),la=f(Ku-Fu);if(la===Kt)return this.double();let Mu=f(J*ws*xe),Vu=f(oe*ws*ve),qu=Vu+Mu,Hu=Ku+Fu,zu=Vu-Mu,j2=f(qu*la),J2=f(Hu*zu),ey=f(qu*zu),ty=f(la*Hu);return new w(j2,J2,ty,ey)}let Xe=f(H*ee),Qe=f(Q*re),qe=f(oe*M*xe),nt=f(J*ve),sr=f((H+Q)*(ee+re)-Xe-Qe),Wr=nt-qe,wi=nt+qe,Ou=f(Qe-U*Xe),Y2=f(sr*Wr),Z2=f(wi*Ou),X2=f(sr*Ou),Q2=f(Wr*wi);return new w(Y2,Z2,Q2,X2)}subtract(S){return this.add(S.negate())}wNAF(S){return B.wNAFCached(this,x,S,w.normalizeZ)}multiply(S){let{p:U,f:M}=this.wNAF(m(S,n));return w.normalizeZ([U,M])[0]}multiplyUnsafe(S){let U=v(S);return U===Kt?D:this.equals(D)||U===mt?this:this.equals(E)?this.wNAF(U).p:B.unsafeLadder(this,U)}isSmallOrder(){return this.multiplyUnsafe(c).is0()}isTorsionFree(){return B.unsafeLadder(this,n).is0()}toAffine(S){let{ex:U,ey:M,ez:H}=this,Q=this.is0();S==null&&(S=Q?yb:r.inv(H));let J=f(U*S),oe=f(M*S),ee=f(H*S);if(Q)return{x:Kt,y:mt};if(ee!==mt)throw new Error("invZ was invalid");return{x:J,y:oe}}clearCofactor(){let{h:S}=t;return S===mt?this:this.multiplyUnsafe(S)}static fromHex(S,U=!1){let{d:M,a:H}=t,Q=r.BYTES;S=Se("pointHex",S,Q);let J=S.slice(),oe=S[Q-1];J[Q-1]=oe&-129;let ee=Ft(J);ee===Kt||(U?m(ee,u):m(ee,r.ORDER));let re=f(ee*ee),ve=f(re-mt),xe=f(M*re-H),{isValid:Xe,value:Qe}=l(ve,xe);if(!Xe)throw new Error("Point.fromHex: invalid y coordinate");let qe=(Qe&mt)===mt,nt=(oe&128)!==0;if(!U&&Qe===Kt&&nt)throw new Error("Point.fromHex: x=0 and x_0=1");return nt!==qe&&(Qe=f(-Qe)),w.fromAffine({x:Qe,y:ee})}static fromPrivateKey(S){return O(S).point}toRawBytes(){let{x:S,y:U}=this.toAffine(),M=pr(U,r.BYTES);return M[M.length-1]|=S&mt?128:0,M}toHex(){return hr(this.toRawBytes())}}w.BASE=new w(t.Gx,t.Gy,mt,f(t.Gx*t.Gy)),w.ZERO=new w(Kt,mt,mt,Kt);let{BASE:E,ZERO:D}=w,B=bs(w,a*8);function R(k){return de(k,n)}function F(k){return R(Ft(k))}function O(k){let S=a;k=Se("private key",k,S);let U=Se("hashed private key",o(k),2*S),M=h(U.slice(0,S)),H=U.slice(S,2*S),Q=F(M),J=E.multiply(Q),oe=J.toRawBytes();return{head:M,prefix:H,scalar:Q,point:J,pointBytes:oe}}function K(k){return O(k).pointBytes}function q(k=new Uint8Array,...S){let U=yr(...S);return F(o(y(U,Se("context",k),!!i)))}function j(k,S,U={}){k=Se("message",k),i&&(k=i(k));let{prefix:M,scalar:H,pointBytes:Q}=O(S),J=q(U.context,M,k),oe=E.multiply(J).toRawBytes(),ee=q(U.context,oe,Q,k),re=R(J+ee*H);v(re);let ve=yr(oe,pr(re,r.BYTES));return Se("result",ve,a*2)}let I=gb;function L(k,S,U,M=I){let{context:H,zip215:Q}=M,J=r.BYTES;k=Se("signature",k,2*J),S=Se("message",S),i&&(S=i(S));let oe=Ft(k.slice(J,2*J)),ee,re,ve;try{ee=w.fromHex(U,Q),re=w.fromHex(k.slice(0,J),Q),ve=E.multiplyUnsafe(oe)}catch{return!1}if(!Q&&ee.isSmallOrder())return!1;let xe=q(H,re.toRawBytes(),ee.toRawBytes(),S);return re.add(ee.multiplyUnsafe(xe)).subtract(ve).clearCofactor().equals(w.ZERO)}return E._setWindowSize(8),{CURVE:t,getPublicKey:K,sign:j,verify:L,ExtendedPoint:w,utils:{getExtendedPublicKey:O,randomPrivateKey:()=>s(r.BYTES),precompute(k=8,S=w.BASE){return S._setWindowSize(k),S.multiply(BigInt(3)),S}}}}var Fi=BigInt(0),l0=BigInt(1);function xb(e){return St(e,{a:"bigint"},{montgomeryBits:"isSafeInteger",nByteLength:"isSafeInteger",adjustScalarBytes:"function",domain:"function",powPminus2:"function",Gu:"bigint"}),Object.freeze({...e})}function zh(e){let t=xb(e),{P:r}=t,n=x=>de(x,r),i=t.montgomeryBits,o=Math.ceil(i/8),s=t.nByteLength,a=t.adjustScalarBytes||(x=>x),c=t.powPminus2||(x=>s0(x,r-BigInt(2),r));function u(x,A,w){let E=n(x*(A-w));return A=n(A-E),w=n(w+E),[A,w]}function f(x){if(typeof x=="bigint"&&Fi<=x&&x<r)return x;throw new Error("Expected valid scalar 0 < scalar < CURVE.P")}let l=(t.a-BigInt(2))/BigInt(4);function h(x,A){let w=f(x),E=f(A),D=w,B=l0,R=Fi,F=w,O=l0,K=Fi,q;for(let I=BigInt(i-1);I>=Fi;I--){let L=E>>I&l0;K^=L,q=u(K,B,F),B=q[0],F=q[1],q=u(K,R,O),R=q[0],O=q[1],K=L;let _=B+R,k=n(_*_),S=B-R,U=n(S*S),M=k-U,H=F+O,Q=F-O,J=n(Q*_),oe=n(H*S),ee=J+oe,re=J-oe;F=n(ee*ee),O=n(D*n(re*re)),B=n(k*U),R=n(M*(k+n(l*M)))}q=u(K,B,F),B=q[0],F=q[1],q=u(K,R,O),R=q[0],O=q[1];let j=c(R);return n(B*j)}function y(x){return pr(n(x),o)}function d(x){let A=Se("u coordinate",x,o);return s===o&&(A[s-1]&=127),Ft(A)}function p(x){let A=Se("scalar",x);if(A.length!==o&&A.length!==s)throw new Error(`Expected ${o} or ${s} bytes, got ${A.length}`);return Ft(a(A))}function g(x,A){let w=d(A),E=p(x),D=h(w,E);if(D===Fi)throw new Error("Invalid private or public key received");return y(D)}let m=y(t.Gu);function v(x){return g(x,m)}return{scalarMult:g,scalarMultBase:v,getSharedSecret:(x,A)=>g(x,A),getPublicKey:x=>v(x),utils:{randomPrivateKey:()=>t.randomBytes(t.nByteLength)},GuBytes:m}}var Ki=BigInt("57896044618658097711785492504343953926634992332820282019728792003956564819949"),Gh=BigInt("19681161376707505956807079304988542015446066515923890162744021073123829784752"),KD=BigInt(0),bb=BigInt(1),h0=BigInt(2),wb=BigInt(5),Wh=BigInt(10),vb=BigInt(20),Eb=BigInt(40),$h=BigInt(80);function Yh(e){let t=Ki,n=e*e%t*e%t,i=Ce(n,h0,t)*n%t,o=Ce(i,bb,t)*e%t,s=Ce(o,wb,t)*o%t,a=Ce(s,Wh,t)*s%t,c=Ce(a,vb,t)*a%t,u=Ce(c,Eb,t)*c%t,f=Ce(u,$h,t)*u%t,l=Ce(f,$h,t)*u%t,h=Ce(l,Wh,t)*s%t;return{pow_p_5_8:Ce(h,h0,t)*e%t,b2:n}}function Zh(e){return e[0]&=248,e[31]&=127,e[31]|=64,e}function Sb(e,t){let r=Ki,n=de(t*t*t,r),i=de(n*n*t,r),o=Yh(e*i).pow_p_5_8,s=de(e*n*o,r),a=de(t*s*s,r),c=s,u=de(s*Gh,r),f=a===e,l=a===de(-e,r),h=a===de(-e*Gh,r);return f&&(s=c),(l||h)&&(s=u),Mh(s,r)&&(s=de(-s,r)),{isValid:f||l,value:s}}var gr=xs(Ki,void 0,!0),d0={a:BigInt(-1),d:BigInt("37095705934669439343138083508754565189542113879843219016388785533085940283555"),Fp:gr,n:BigInt("7237005577332262213973186563042994240857116359379907606001950938285454250989"),h:BigInt(8),Gx:BigInt("15112221349535400772501151409588531511454012693041857206046113283949847762202"),Gy:BigInt("46316835694926478169428394003475163141307993866256225615783033603165251855960"),hash:t0,randomBytes:dn,adjustScalarBytes:Zh,uvRatio:Sb},Jn=vs(d0);function Xh(e,t,r){if(t.length>255)throw new Error("Context is too big");return ls(jc("SigEd25519 no Ed25519 collisions"),new Uint8Array([r?1:0,t.length]),t,e)}var MD=vs({...d0,domain:Xh}),VD=vs({...d0,domain:Xh,prehash:t0}),Mi=(()=>zh({P:Ki,a:BigInt(486662),montgomeryBits:255,nByteLength:32,Gu:BigInt(9),powPminus2:e=>{let t=Ki,{pow_p_5_8:r,b2:n}=Yh(e);return de(Ce(r,BigInt(3),t)*n,t)},adjustScalarBytes:Zh,randomBytes:dn}))();var Cb=(gr.ORDER+BigInt(3))/BigInt(8),qD=gr.pow(h0,Cb),HD=gr.sqrt(gr.neg(gr.ONE)),zD=(gr.ORDER-BigInt(5))/BigInt(8),GD=BigInt(486662);var WD=Vh(gr,gr.neg(BigInt(486664)));var $D=BigInt("25063068953384623474111414158702152701244531502492656460079210482610430750235"),YD=BigInt("54469307008909316920995813868745141605393597292927456921205312896311721017578"),ZD=BigInt("1159843021668779879193775521855586647937357759715417654439879720876111806838"),XD=BigInt("40440834346308536858101042469323190826248399146238708352240133220865137265952");var QD=BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff");var Es=class extends Qn{constructor(t,r){super(),this.finished=!1,this.destroyed=!1,Pi(t);let n=Nr(r);if(this.iHash=t.create(),typeof this.iHash.update!="function")throw new Error("Expected instance of class which extends utils.Hash");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;let i=this.blockLen,o=new Uint8Array(i);o.set(n.length>i?t.create().update(n).digest():n);for(let s=0;s<o.length;s++)o[s]^=54;this.iHash.update(o),this.oHash=t.create();for(let s=0;s<o.length;s++)o[s]^=106;this.oHash.update(o),o.fill(0)}update(t){return Xn(this),this.iHash.update(t),this}digestInto(t){Xn(this),Qc(t,this.outputLen),this.finished=!0,this.iHash.digestInto(t),this.oHash.update(t),this.oHash.digestInto(t),this.destroy()}digest(){let t=new Uint8Array(this.oHash.outputLen);return this.digestInto(t),t}_cloneInto(t){t||(t=Object.create(Object.getPrototypeOf(this),{}));let{oHash:r,iHash:n,finished:i,destroyed:o,blockLen:s,outputLen:a}=this;return t=t,t.finished=i,t.destroyed=o,t.blockLen=s,t.outputLen=a,t.oHash=r._cloneInto(t.oHash),t.iHash=n._cloneInto(t.iHash),t}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}},ei=(e,t,r)=>new Es(e,t).update(r).digest();ei.create=(e,t)=>new Es(e,t);function jh(e,t,r){return Pi(e),r===void 0&&(r=new Uint8Array(e.outputLen)),ei(e,Nr(r),Nr(t))}var p0=new Uint8Array([0]),Qh=new Uint8Array;function Jh(e,t,r,n=32){if(Pi(e),cs(n),n>255*e.outputLen)throw new Error("Length should be <= 255*HashLen");let i=Math.ceil(n/e.outputLen);r===void 0&&(r=Qh);let o=new Uint8Array(i*e.outputLen),s=ei.create(e,t),a=s._cloneInto(),c=new Uint8Array(s.outputLen);for(let u=0;u<i;u++)p0[0]=u+1,a.update(u===0?Qh:c).update(r).update(p0).digestInto(c),o.set(c,e.outputLen*u),s._cloneInto(a);return s.destroy(),a.destroy(),c.fill(0),p0.fill(0),o.slice(0,n)}var Ab=(e,t,r)=>e&t^~e&r,Db=(e,t,r)=>e&t^e&r^t&r,Bb=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]),Fr=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),Kr=new Uint32Array(64),y0=class extends jn{constructor(){super(64,32,8,!1),this.A=Fr[0]|0,this.B=Fr[1]|0,this.C=Fr[2]|0,this.D=Fr[3]|0,this.E=Fr[4]|0,this.F=Fr[5]|0,this.G=Fr[6]|0,this.H=Fr[7]|0}get(){let{A:t,B:r,C:n,D:i,E:o,F:s,G:a,H:c}=this;return[t,r,n,i,o,s,a,c]}set(t,r,n,i,o,s,a,c){this.A=t|0,this.B=r|0,this.C=n|0,this.D=i|0,this.E=o|0,this.F=s|0,this.G=a|0,this.H=c|0}process(t,r){for(let l=0;l<16;l++,r+=4)Kr[l]=t.getUint32(r,!1);for(let l=16;l<64;l++){let h=Kr[l-15],y=Kr[l-2],d=Ot(h,7)^Ot(h,18)^h>>>3,p=Ot(y,17)^Ot(y,19)^y>>>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=Ot(a,6)^Ot(a,11)^Ot(a,25),y=f+h+Ab(a,c,u)+Bb[l]+Kr[l]|0,p=(Ot(n,2)^Ot(n,13)^Ot(n,22))+Db(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(){Kr.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}};var ti=hs(()=>new y0);var g0={hashSHA256(e){return ti(e)},getHKDF(e,t){let r=jh(ti,t,e),i=Jh(ti,r,void 0,96),o=i.subarray(0,32),s=i.subarray(32,64),a=i.subarray(64,96);return[o,s,a]},generateX25519KeyPair(){let e=Mi.utils.randomPrivateKey();return{publicKey:Mi.getPublicKey(e),privateKey:e}},generateX25519KeyPairFromSeed(e){return{publicKey:Mi.getPublicKey(e),privateKey:e}},generateX25519SharedKey(e,t){return Mi.getSharedSecret(e,t)},chaCha20Poly1305Encrypt(e,t,r,n){return Xc(n,t,r).encrypt(e)},chaCha20Poly1305Decrypt(e,t,r,n,i){return Xc(n,t,r).decrypt(e,i)}};var Ib=e=>globalThis.Buffer?globalThis.Buffer.allocUnsafe(e):new Uint8Array(e),ri=e=>{let t=Ib(2);return new DataView(t.buffer,t.byteOffset,t.byteLength).setUint16(0,e,!1),t};ri.bytes=2;var Vi=e=>{if(e.length<2)throw RangeError("Could not decode int16BE");return e instanceof Uint8Array?new DataView(e.buffer,e.byteOffset,e.byteLength).getUint16(0,!1):e.getUint16(0)};Vi.bytes=2;function ed(e){return ge([e.ne,e.ciphertext],e.ne.length+e.ciphertext.length)}function td(e){return ge([e.ne,e.ns,e.ciphertext],e.ne.length+e.ns.length+e.ciphertext.length)}function rd(e){return ge([e.ns,e.ciphertext],e.ns.length+e.ciphertext.length)}function nd(e){if(e.length<32)throw new Error("Cannot decode stage 0 MessageBuffer: length less than 32 bytes.");return{ne:e.subarray(0,32),ciphertext:e.subarray(32,e.length),ns:new Uint8Array(0)}}function id(e){if(e.length<80)throw new Error("Cannot decode stage 1 MessageBuffer: length less than 80 bytes.");return{ne:e.subarray(0,32),ns:e.subarray(32,80),ciphertext:e.subarray(80,e.length)}}function od(e){if(e.length<48)throw new Error("Cannot decode stage 2 MessageBuffer: length less than 48 bytes.");return{ne:new Uint8Array(0),ns:e.subarray(0,48),ciphertext:e.subarray(48,e.length)}}var ad=16;function cd(e,t){return async function*(r){for await(let n of r)for(let i=0;i<n.length;i+=65519){let o=i+65519;o>n.length&&(o=n.length);let s=e.encrypt(n.subarray(i,o),e.session);t?.encryptedPackets.increment(),yield ri(s.byteLength),yield s}}}function ud(e,t){return async function*(r){for await(let n of r)for(let i=0;i<n.length;i+=65535){let o=i+65535;if(o>n.length&&(o=n.length),o-ad<i)throw new Error("Invalid chunk");let s=n.subarray(i,o),a=n.subarray(i,o-ad),{plaintext:c,valid:u}=e.decrypt(s,e.session,a);if(!u)throw t?.decryptErrors.increment(),new Error("Failed to validate decrypted chunk");t?.decryptedPackets.increment(),yield c}}}var _T=Re(Wi(),1),kT=Re(Ap(),1);var T8=Re(we(),1);var q0={};ue(q0,{Ed25519PrivateKey:()=>vn,Ed25519PublicKey:()=>Zi,generateKeyPair:()=>r8,generateKeyPairFromSeed:()=>Rp,unmarshalEd25519PrivateKey:()=>e8,unmarshalEd25519PublicKey:()=>t8});var ai=32,wr=64,Vs=32;async function Dp(){let e=Jn.utils.randomPrivateKey(),t=Jn.getPublicKey(e);return{privateKey:_p(e,t),publicKey:t}}async function Bp(e){if(e.length!==Vs)throw new TypeError('"seed" must be 32 bytes in length.');if(!(e instanceof Uint8Array))throw new TypeError('"seed" must be a node.js Buffer, or Uint8Array.');let t=e,r=Jn.getPublicKey(t);return{privateKey:_p(t,r),publicKey:r}}async function Ip(e,t){let r=e.subarray(0,Vs);return Jn.sign(t,r)}async function Tp(e,t,r){return Jn.verify(t,r,e)}function _p(e,t){let r=new Uint8Array(wr);for(let n=0;n<Vs;n++)r[n]=e[n],r[Vs+n]=t[n];return r}var ht={get(e=globalThis){let t=e.crypto;if(t==null||t.subtle==null)throw Object.assign(new Error("Missing Web Crypto API. The most likely cause of this error is that this page is being accessed from an insecure context (i.e. not HTTPS). For more information and possible resolutions see https://github.com/libp2p/js-libp2p-crypto/blob/master/README.md#web-crypto-api"),{code:"ERR_MISSING_WEB_CRYPTO"});return t}};var K0={alg:"A128GCM",ext:!0,k:"scm9jmO_4BJAgdwWGVulLg",key_ops:["encrypt","decrypt"],kty:"oct"};function M0(e){let t=e?.algorithm??"AES-GCM",r=e?.keyLength??16,n=e?.nonceLength??12,i=e?.digest??"SHA-256",o=e?.saltLength??16,s=e?.iterations??32767,a=ht.get();r*=8;async function c(l,h){let y=a.getRandomValues(new Uint8Array(o)),d=a.getRandomValues(new Uint8Array(n)),p={name:t,iv:d};typeof h=="string"&&(h=Be(h));let g;if(h.length===0){g=await a.subtle.importKey("jwk",K0,{name:"AES-GCM"},!0,["encrypt"]);try{let v={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(v,x,{name:t,length:r},!0,["encrypt"])}catch{g=await a.subtle.importKey("jwk",K0,{name:"AES-GCM"},!0,["encrypt"])}}else{let v={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(v,x,{name:t,length:r},!0,["encrypt"])}let m=await a.subtle.encrypt(p,g,l);return ge([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:t,iv:d};typeof h=="string"&&(h=Be(h));let m;if(h.length===0)try{let x={name:"PBKDF2",salt:y,iterations:s,hash:{name:i}},A=await a.subtle.importKey("raw",h,{name:"PBKDF2"},!1,["deriveKey"]);m=await a.subtle.deriveKey(x,A,{name:t,length:r},!0,["decrypt"])}catch{m=await a.subtle.importKey("jwk",K0,{name:"AES-GCM"},!0,["decrypt"])}else{let x={name:"PBKDF2",salt:y,iterations:s,hash:{name:i}},A=await a.subtle.importKey("raw",h,{name:"PBKDF2"},!1,["deriveKey"]);m=await a.subtle.deriveKey(x,A,{name:t,length:r},!0,["decrypt"])}let v=await a.subtle.decrypt(g,m,p);return new Uint8Array(v)}return{encrypt:c,decrypt:u}}async function ci(e,t){let n=await M0().encrypt(e,t);return Rn.encode(n)}var _e;(function(e){e.RSA="RSA",e.Ed25519="Ed25519",e.Secp256k1="Secp256k1"})(_e||(_e={}));var V0;(function(e){e[e.RSA=0]="RSA",e[e.Ed25519=1]="Ed25519",e[e.Secp256k1=2]="Secp256k1"})(V0||(V0={}));(function(e){e.codec=()=>an(V0)})(_e||(_e={}));var nr;(function(e){let t;e.codec=()=>(t==null&&(t=Ut((r,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),r.Type!=null&&(n.uint32(8),_e.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=_e.codec().decode(r);break;case 2:i.Data=r.bytes();break;default:r.skipType(s&7);break}}return i})),t),e.encode=r=>Pt(r,e.codec()),e.decode=r=>Nt(r,e.codec())})(nr||(nr={}));var ir;(function(e){let t;e.codec=()=>(t==null&&(t=Ut((r,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),r.Type!=null&&(n.uint32(8),_e.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=_e.codec().decode(r);break;case 2:i.Data=r.bytes();break;default:r.skipType(s&7);break}}return i})),t),e.encode=r=>Pt(r,e.codec()),e.decode=r=>Nt(r,e.codec())})(ir||(ir={}));var Zi=class{_key;constructor(t){this._key=ui(t,ai)}async verify(t,r){return Tp(this._key,r,t)}marshal(){return this._key}get bytes(){return nr.encode({Type:_e.Ed25519,Data:this.marshal()}).subarray()}equals(t){return Me(this.bytes,t.bytes)}async hash(){let{bytes:t}=await je.digest(this.bytes);return t}},vn=class{_key;_publicKey;constructor(t,r){this._key=ui(t,wr),this._publicKey=ui(r,ai)}async sign(t){return Ip(this._key,t)}get public(){return new Zi(this._publicKey)}marshal(){return this._key}get bytes(){return ir.encode({Type:_e.Ed25519,Data:this.marshal()}).subarray()}equals(t){return Me(this.bytes,t.bytes)}async hash(){let{bytes:t}=await je.digest(this.bytes);return t}async id(){let t=Br.digest(this.public.bytes);return ke.encode(t.bytes).substring(1)}async export(t,r="libp2p-key"){if(r==="libp2p-key")return ci(this.bytes,t);throw new W(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}};function e8(e){if(e.length>wr){e=ui(e,wr+ai);let n=e.subarray(0,wr),i=e.subarray(wr,e.length);return new vn(n,i)}e=ui(e,wr);let t=e.subarray(0,wr),r=e.subarray(ai);return new vn(t,r)}function t8(e){return e=ui(e,ai),new Zi(e)}async function r8(){let{privateKey:e,publicKey:t}=await Dp();return new vn(e,t)}async function Rp(e){let{privateKey:t,publicKey:r}=await Bp(e);return new vn(t,r)}function ui(e,t){if(e=Uint8Array.from(e??[]),e.length!==t)throw new W(`Key must be a Uint8Array of length ${t}, got ${e.length}`,"ERR_INVALID_KEY_TYPE");return e}var iI=Re(Ve(),1),oI=Re(Os(),1),Lp=Re(we(),1);function qt(e,t){let r=Uint8Array.from(e.abs().toByteArray());if(r=r[0]===0?r.subarray(1):r,t!=null){if(r.length>t)throw new Error("byte array longer than desired length");r=ge([new Uint8Array(t-r.length),r])}return se(r,"base64url")}function xt(e){let t=Np(e);return new Lp.default.jsbn.BigInteger(se(t,"base16"),16)}function Np(e,t){let r=Be(e,"base64urlpad");if(t!=null){if(r.length>t)throw new Error("byte array longer than desired length");r=ge([new Uint8Array(t-r.length),r])}return r}var n8={"P-256":256,"P-384":384,"P-521":521},i8=Object.keys(n8),gI=i8.join(" / ");var $0={};ue($0,{MAX_KEY_SIZE:()=>Ji,RsaPrivateKey:()=>fi,RsaPublicKey:()=>ji,fromJwk:()=>y8,generateKeyPair:()=>g8,unmarshalRsaPrivateKey:()=>d8,unmarshalRsaPublicKey:()=>p8});var Qi=Re(we(),1);var eT=Re(Kp(),1);function Hs(e){if(isNaN(e)||e<=0)throw new W("random bytes length must be a Number bigger than 0","ERR_INVALID_LENGTH");return dn(e)}var UI=Re(Ms(),1),G0=Re(we(),1);function Mp(e,t){return t.map(r=>xt(e[r]))}function Vp(e){return G0.default.pki.setRsaPrivateKey(...Mp(e,["n","e","d","p","q","dp","dq","qi"]))}function qp(e){return G0.default.pki.setRsaPublicKey(...Mp(e,["n","e"]))}var Sn={};ue(Sn,{jwkToPkcs1:()=>c8,jwkToPkix:()=>f8,pkcs1ToJwk:()=>a8,pkixToJwk:()=>u8});var KI=Re(Wi(),1),MI=Re(Ms(),1);var vr=Re(we(),1);function a8(e){let t=vr.default.asn1.fromDer(se(e,"ascii")),r=vr.default.pki.privateKeyFromAsn1(t);return{kty:"RSA",n:qt(r.n),e:qt(r.e),d:qt(r.d),p:qt(r.p),q:qt(r.q),dp:qt(r.dP),dq:qt(r.dQ),qi:qt(r.qInv),alg:"RS256"}}function c8(e){if(e.n==null||e.e==null||e.d==null||e.p==null||e.q==null||e.dp==null||e.dq==null||e.qi==null)throw new W("JWK was missing components","ERR_INVALID_PARAMETERS");let t=vr.default.pki.privateKeyToAsn1({n:xt(e.n),e:xt(e.e),d:xt(e.d),p:xt(e.p),q:xt(e.q),dP:xt(e.dp),dQ:xt(e.dq),qInv:xt(e.qi)});return Be(vr.default.asn1.toDer(t).getBytes(),"ascii")}function u8(e){let t=vr.default.asn1.fromDer(se(e,"ascii")),r=vr.default.pki.publicKeyFromAsn1(t);return{kty:"RSA",n:qt(r.n),e:qt(r.e)}}function f8(e){if(e.n==null||e.e==null)throw new W("JWK was missing components","ERR_INVALID_PARAMETERS");let t=vr.default.pki.publicKeyToAsn1({n:xt(e.n),e:xt(e.e)});return Be(vr.default.asn1.toDer(t).getBytes(),"ascii")}async function Hp(e){let t=await ht.get().subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:e,publicExponent:new Uint8Array([1,0,1]),hash:{name:"SHA-256"}},!0,["sign","verify"]),r=await Wp(t);return{privateKey:r[0],publicKey:r[1]}}async function W0(e){let r=[await ht.get().subtle.importKey("jwk",e,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!0,["sign"]),await l8(e)],n=await Wp({privateKey:r[0],publicKey:r[1]});return{privateKey:n[0],publicKey:n[1]}}async function zp(e,t){let r=await ht.get().subtle.importKey("jwk",e,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!1,["sign"]),n=await ht.get().subtle.sign({name:"RSASSA-PKCS1-v1_5"},r,Uint8Array.from(t));return new Uint8Array(n,0,n.byteLength)}async function Gp(e,t,r){let n=await ht.get().subtle.importKey("jwk",e,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!1,["verify"]);return ht.get().subtle.verify({name:"RSASSA-PKCS1-v1_5"},n,t,r)}async function Wp(e){if(e.privateKey==null||e.publicKey==null)throw new W("Private and public key are required","ERR_INVALID_PARAMETERS");return Promise.all([ht.get().subtle.exportKey("jwk",e.privateKey),ht.get().subtle.exportKey("jwk",e.publicKey)])}async function l8(e){return ht.get().subtle.importKey("jwk",{kty:e.kty,n:e.n,e:e.e},{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!0,["verify"])}function $p(e,t,r,n){let i=t?qp(e):Vp(e),o=se(Uint8Array.from(r),"ascii"),s=n(o,i);return Be(s,"ascii")}function Yp(e,t){return $p(e,!0,t,(r,n)=>n.encrypt(r))}function Zp(e,t){return $p(e,!1,t,(r,n)=>n.decrypt(r))}function zs(e){if(e.kty!=="RSA")throw new W("invalid key type","ERR_INVALID_KEY_TYPE");if(e.n==null)throw new W("invalid key modulus","ERR_INVALID_KEY_MODULUS");return Be(e.n,"base64url").length*8}var Ji=8192,ji=class{_key;constructor(t){this._key=t}async verify(t,r){return Gp(this._key,r,t)}marshal(){return Sn.jwkToPkix(this._key)}get bytes(){return nr.encode({Type:_e.RSA,Data:this.marshal()}).subarray()}encrypt(t){return Yp(this._key,t)}equals(t){return Me(this.bytes,t.bytes)}async hash(){let{bytes:t}=await je.digest(this.bytes);return t}},fi=class{_key;_publicKey;constructor(t,r){this._key=t,this._publicKey=r}genSecret(){return Hs(16)}async sign(t){return zp(this._key,t)}get public(){if(this._publicKey==null)throw new W("public key not provided","ERR_PUBKEY_NOT_PROVIDED");return new ji(this._publicKey)}decrypt(t){return Zp(this._key,t)}marshal(){return Sn.jwkToPkcs1(this._key)}get bytes(){return ir.encode({Type:_e.RSA,Data:this.marshal()}).subarray()}equals(t){return Me(this.bytes,t.bytes)}async hash(){let{bytes:t}=await je.digest(this.bytes);return t}async id(){let t=await this.public.hash();return se(t,"base58btc")}async export(t,r="pkcs-8"){if(r==="pkcs-8"){let n=new Qi.default.util.ByteBuffer(this.marshal()),i=Qi.default.asn1.fromDer(n),o=Qi.default.pki.privateKeyFromAsn1(i),s={algorithm:"aes256",count:1e4,saltSize:128/8,prfAlgorithm:"sha512"};return Qi.default.pki.encryptRsaPrivateKey(o,t,s)}else{if(r==="libp2p-key")return ci(this.bytes,t);throw new W(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}}};async function d8(e){let t=Sn.pkcs1ToJwk(e);if(zs(t)>Ji)throw new W("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let r=await W0(t);return new fi(r.privateKey,r.publicKey)}function p8(e){let t=Sn.pkixToJwk(e);if(zs(t)>Ji)throw new W("key size is too large","ERR_KEY_SIZE_TOO_LARGE");return new ji(t)}async function y8(e){if(zs(e)>Ji)throw new W("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let t=await W0(e);return new fi(t.privateKey,t.publicKey)}async function g8(e){if(e>Ji)throw new W("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let t=await Hp(e);return new fi(t.privateKey,t.publicKey)}var Q0={};ue(Q0,{Secp256k1PrivateKey:()=>to,Secp256k1PublicKey:()=>eo,generateKeyPair:()=>I8,unmarshalSecp256k1PrivateKey:()=>D8,unmarshalSecp256k1PublicKey:()=>B8});function m8(e){let t=Oi(e);St(t,{a:"field",b:"field"},{allowedPrivateKeyLengths:"array",wrapPrivateKey:"boolean",isTorsionFree:"function",clearCofactor:"function",allowInfinityPoint:"boolean",fromBytes:"function",toBytes:"function"});let{endo:r,Fp:n,a:i}=t;if(r){if(!n.eql(i,n.ZERO))throw new Error("Endomorphism can only be defined for Koblitz curves that have a=0");if(typeof r!="object"||typeof r.beta!="bigint"||typeof r.splitScalar!="function")throw new Error("Expected endomorphism with beta: bigint and splitScalar: function")}return Object.freeze({...t})}var{bytesToNumberBE:x8,hexToBytes:b8}=gs,Cn={Err:class extends Error{constructor(t=""){super(t)}},_parseInt(e){let{Err:t}=Cn;if(e.length<2||e[0]!==2)throw new t("Invalid signature integer tag");let r=e[1],n=e.subarray(2,r+2);if(!r||n.length!==r)throw new t("Invalid signature integer: wrong length");if(n[0]&128)throw new t("Invalid signature integer: negative");if(n[0]===0&&!(n[1]&128))throw new t("Invalid signature integer: unnecessary leading zero");return{d:x8(n),l:e.subarray(r+2)}},toSig(e){let{Err:t}=Cn,r=typeof e=="string"?b8(e):e;if(!(r instanceof Uint8Array))throw new Error("ui8a expected");let n=r.length;if(n<2||r[0]!=48)throw new t("Invalid signature tag");if(r[1]!==n-2)throw new t("Invalid signature: incorrect length");let{d:i,l:o}=Cn._parseInt(r.subarray(2)),{d:s,l:a}=Cn._parseInt(o);if(a.length)throw new t("Invalid signature: left bytes after parsing");return{r:i,s}},hexFromSig(e){let t=u=>Number.parseInt(u[0],16)&8?"00"+u:u,r=u=>{let f=u.toString(16);return f.length&1?`0${f}`:f},n=t(r(e.s)),i=t(r(e.r)),o=n.length/2,s=i.length/2,a=r(o),c=r(s);return`30${r(s+o+4)}02${c}${i}02${a}${n}`}},Er=BigInt(0),Dt=BigInt(1),sT=BigInt(2),Xp=BigInt(3),aT=BigInt(4);function w8(e){let t=m8(e),{Fp:r}=t,n=t.toBytes||((d,p,g)=>{let m=p.toAffine();return yr(Uint8Array.from([4]),r.toBytes(m.x),r.toBytes(m.y))}),i=t.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}=t,m=r.sqr(d),v=r.mul(m,d);return r.add(r.add(v,r.mul(d,p)),g)}if(!r.eql(r.sqr(t.Gy),o(t.Gx)))throw new Error("bad generator point: equation left != right");function s(d){return typeof d=="bigint"&&Er<d&&d<t.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:v}=t;if(p&&typeof d!="bigint"){if(d instanceof Uint8Array&&(d=hr(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:dr(Se("private key",d,g))}catch{throw new Error(`private key must be ${g} bytes, hex or bigint, not ${typeof d}`)}return m&&(x=de(x,v)),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 v=x=>r.eql(x,r.ZERO);return v(g)&&v(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,v)=>m.toAffine(g[v])).map(l.fromAffine)}static fromHex(p){let g=l.fromAffine(i(Se("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(t.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),v=o(p);if(!r.eql(m,v))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:v}=this,{px:x,py:A,pz:w}=p,E=r.eql(r.mul(g,w),r.mul(x,v)),D=r.eql(r.mul(m,w),r.mul(A,v));return E&&D}negate(){return new l(this.px,r.neg(this.py),this.pz)}double(){let{a:p,b:g}=t,m=r.mul(g,Xp),{px:v,py:x,pz:A}=this,w=r.ZERO,E=r.ZERO,D=r.ZERO,B=r.mul(v,v),R=r.mul(x,x),F=r.mul(A,A),O=r.mul(v,x);return O=r.add(O,O),D=r.mul(v,A),D=r.add(D,D),w=r.mul(p,D),E=r.mul(m,F),E=r.add(w,E),w=r.sub(R,E),E=r.add(R,E),E=r.mul(w,E),w=r.mul(O,w),D=r.mul(m,D),F=r.mul(p,F),O=r.sub(B,F),O=r.mul(p,O),O=r.add(O,D),D=r.add(B,B),B=r.add(D,B),B=r.add(B,F),B=r.mul(B,O),E=r.add(E,B),F=r.mul(x,A),F=r.add(F,F),B=r.mul(F,O),w=r.sub(w,B),D=r.mul(F,R),D=r.add(D,D),D=r.add(D,D),new l(w,E,D)}add(p){f(p);let{px:g,py:m,pz:v}=this,{px:x,py:A,pz:w}=p,E=r.ZERO,D=r.ZERO,B=r.ZERO,R=t.a,F=r.mul(t.b,Xp),O=r.mul(g,x),K=r.mul(m,A),q=r.mul(v,w),j=r.add(g,m),I=r.add(x,A);j=r.mul(j,I),I=r.add(O,K),j=r.sub(j,I),I=r.add(g,v);let L=r.add(x,w);return I=r.mul(I,L),L=r.add(O,q),I=r.sub(I,L),L=r.add(m,v),E=r.add(A,w),L=r.mul(L,E),E=r.add(K,q),L=r.sub(L,E),B=r.mul(R,I),E=r.mul(F,q),B=r.add(E,B),E=r.sub(K,B),B=r.add(K,B),D=r.mul(E,B),K=r.add(O,O),K=r.add(K,O),q=r.mul(R,q),I=r.mul(F,I),K=r.add(K,q),q=r.sub(O,q),q=r.mul(R,q),I=r.add(I,q),O=r.mul(K,I),D=r.add(D,O),O=r.mul(L,I),E=r.mul(j,E),E=r.sub(E,O),O=r.mul(j,K),B=r.mul(L,B),B=r.add(B,O),new l(E,D,B)}subtract(p){return this.add(p.negate())}is0(){return this.equals(l.ZERO)}wNAF(p){return y.wNAFCached(this,u,p,g=>{let m=r.invertBatch(g.map(v=>v.pz));return g.map((v,x)=>v.toAffine(m[x])).map(l.fromAffine)})}multiplyUnsafe(p){let g=l.ZERO;if(p===Er)return g;if(a(p),p===Dt)return this;let{endo:m}=t;if(!m)return y.unsafeLadder(this,p);let{k1neg:v,k1:x,k2neg:A,k2:w}=m.splitScalar(p),E=g,D=g,B=this;for(;x>Er||w>Er;)x&Dt&&(E=E.add(B)),w&Dt&&(D=D.add(B)),B=B.double(),x>>=Dt,w>>=Dt;return v&&(E=E.negate()),A&&(D=D.negate()),D=new l(r.mul(D.px,m.beta),D.py,D.pz),E.add(D)}multiply(p){a(p);let g=p,m,v,{endo:x}=t;if(x){let{k1neg:A,k1:w,k2neg:E,k2:D}=x.splitScalar(g),{p:B,f:R}=this.wNAF(w),{p:F,f:O}=this.wNAF(D);B=y.constTimeNegate(A,B),F=y.constTimeNegate(E,F),F=new l(r.mul(F.px,x.beta),F.py,F.pz),m=B.add(F),v=R.add(O)}else{let{p:A,f:w}=this.wNAF(g);m=A,v=w}return l.normalizeZ([m,v])[0]}multiplyAndAddUnsafe(p,g,m){let v=l.BASE,x=(w,E)=>E===Er||E===Dt||!w.equals(v)?w.multiplyUnsafe(E):w.multiply(E),A=x(this,g).add(x(p,m));return A.is0()?void 0:A}toAffine(p){let{px:g,py:m,pz:v}=this,x=this.is0();p==null&&(p=x?r.ONE:r.inv(v));let A=r.mul(g,p),w=r.mul(m,p),E=r.mul(v,p);if(x)return{x:r.ZERO,y:r.ZERO};if(!r.eql(E,r.ONE))throw new Error("invZ was invalid");return{x:A,y:w}}isTorsionFree(){let{h:p,isTorsionFree:g}=t;if(p===Dt)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}=t;return p===Dt?this:g?g(l,this):this.multiplyUnsafe(t.h)}toRawBytes(p=!0){return this.assertValidity(),n(l,this,p)}toHex(p=!0){return hr(this.toRawBytes(p))}}l.BASE=new l(t.Gx,t.Gy,r.ONE),l.ZERO=new l(r.ZERO,r.ONE,r.ZERO);let h=t.nBitLength,y=bs(l,t.endo?Math.ceil(h/2):h);return{CURVE:t,ProjectivePoint:l,normPrivateKeyToScalar:c,weierstrassEquation:o,isWithinCurveOrder:s}}function v8(e){let t=Oi(e);return St(t,{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze({lowS:!0,...t})}function Qp(e){let t=v8(e),{Fp:r,n}=t,i=r.BYTES+1,o=2*r.BYTES+1;function s(I){return Er<I&&I<r.ORDER}function a(I){return de(I,n)}function c(I){return ms(I,n)}let{ProjectivePoint:u,normPrivateKeyToScalar:f,weierstrassEquation:l,isWithinCurveOrder:h}=w8({...t,toBytes(I,L,_){let k=L.toAffine(),S=r.toBytes(k.x),U=yr;return _?U(Uint8Array.from([L.hasEvenY()?2:3]),S):U(Uint8Array.from([4]),S,r.toBytes(k.y))},fromBytes(I){let L=I.length,_=I[0],k=I.subarray(1);if(L===i&&(_===2||_===3)){let S=dr(k);if(!s(S))throw new Error("Point is not on curve");let U=l(S),M=r.sqrt(U),H=(M&Dt)===Dt;return(_&1)===1!==H&&(M=r.neg(M)),{x:S,y:M}}else if(L===o&&_===4){let S=r.fromBytes(k.subarray(0,r.BYTES)),U=r.fromBytes(k.subarray(r.BYTES,2*r.BYTES));return{x:S,y:U}}else throw new Error(`Point of length ${L} was invalid. Expected ${i} compressed bytes or ${o} uncompressed bytes`)}}),y=I=>hr(Or(I,t.nByteLength));function d(I){let L=n>>Dt;return I>L}function p(I){return d(I)?a(-I):I}let g=(I,L,_)=>dr(I.slice(L,_));class m{constructor(L,_,k){this.r=L,this.s=_,this.recovery=k,this.assertValidity()}static fromCompact(L){let _=t.nByteLength;return L=Se("compactSignature",L,_*2),new m(g(L,0,_),g(L,_,2*_))}static fromDER(L){let{r:_,s:k}=Cn.toSig(Se("DER",L));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(L){return new m(this.r,this.s,L)}recoverPublicKey(L){let{r:_,s:k,recovery:S}=this,U=D(Se("msgHash",L));if(S==null||![0,1,2,3].includes(S))throw new Error("recovery id invalid");let M=S===2||S===3?_+t.n:_;if(M>=r.ORDER)throw new Error("recovery id 2 or 3 invalid");let H=S&1?"03":"02",Q=u.fromHex(H+y(M)),J=c(M),oe=a(-U*J),ee=a(k*J),re=u.BASE.multiplyAndAddUnsafe(Q,oe,ee);if(!re)throw new Error("point at infinify");return re.assertValidity(),re}hasHighS(){return d(this.s)}normalizeS(){return this.hasHighS()?new m(this.r,a(-this.s),this.recovery):this}toDERRawBytes(){return pn(this.toDERHex())}toDERHex(){return Cn.hexFromSig({r:this.r,s:this.s})}toCompactRawBytes(){return pn(this.toCompactHex())}toCompactHex(){return y(this.r)+y(this.s)}}let v={isValidPrivateKey(I){try{return f(I),!0}catch{return!1}},normPrivateKeyToScalar:f,randomPrivateKey:()=>{let I=u0(t.n);return Hh(t.randomBytes(I),t.n)},precompute(I=8,L=u.BASE){return L._setWindowSize(I),L.multiply(BigInt(3)),L}};function x(I,L=!0){return u.fromPrivateKey(I).toRawBytes(L)}function A(I){let L=I instanceof Uint8Array,_=typeof I=="string",k=(L||_)&&I.length;return L?k===i||k===o:_?k===2*i||k===2*o:I instanceof u}function w(I,L,_=!0){if(A(I))throw new Error("first arg must be private key");if(!A(L))throw new Error("second arg must be public key");return u.fromHex(L).multiply(f(I)).toRawBytes(_)}let E=t.bits2int||function(I){let L=dr(I),_=I.length*8-t.nBitLength;return _>0?L>>BigInt(_):L},D=t.bits2int_modN||function(I){return a(E(I))},B=Ui(t.nBitLength);function R(I){if(typeof I!="bigint")throw new Error("bigint expected");if(!(Er<=I&&I<B))throw new Error(`bigint expected < 2^${t.nBitLength}`);return Or(I,t.nByteLength)}function F(I,L,_=O){if(["recovered","canonical"].some(xe=>xe in _))throw new Error("sign() legacy options not supported");let{hash:k,randomBytes:S}=t,{lowS:U,prehash:M,extraEntropy:H}=_;U==null&&(U=!0),I=Se("msgHash",I),M&&(I=Se("prehashed msgHash",k(I)));let Q=D(I),J=f(L),oe=[R(J),R(Q)];if(H!=null){let xe=H===!0?S(r.BYTES):H;oe.push(Se("extraEntropy",xe))}let ee=yr(...oe),re=Q;function ve(xe){let Xe=E(xe);if(!h(Xe))return;let Qe=c(Xe),qe=u.BASE.multiply(Xe).toAffine(),nt=a(qe.x);if(nt===Er)return;let sr=a(Qe*a(re+nt*J));if(sr===Er)return;let Wr=(qe.x===nt?0:2)|Number(qe.y&Dt),wi=sr;return U&&d(sr)&&(wi=p(sr),Wr^=1),new m(nt,wi,Wr)}return{seed:ee,k2sig:ve}}let O={lowS:t.lowS,prehash:!1},K={lowS:t.lowS,prehash:!1};function q(I,L,_=O){let{seed:k,k2sig:S}=F(I,L,_),U=t;return i0(U.hash.outputLen,U.nByteLength,U.hmac)(k,S)}u.BASE._setWindowSize(8);function j(I,L,_,k=K){let S=I;if(L=Se("msgHash",L),_=Se("publicKey",_),"strict"in k)throw new Error("options.strict was renamed to lowS");let{lowS:U,prehash:M}=k,H,Q;try{if(typeof S=="string"||S instanceof Uint8Array)try{H=m.fromDER(S)}catch(qe){if(!(qe instanceof Cn.Err))throw qe;H=m.fromCompact(S)}else if(typeof S=="object"&&typeof S.r=="bigint"&&typeof S.s=="bigint"){let{r:qe,s:nt}=S;H=new m(qe,nt)}else throw new Error("PARSE");Q=u.fromHex(_)}catch(qe){if(qe.message==="PARSE")throw new Error("signature must be Signature instance, Uint8Array or hex string");return!1}if(U&&H.hasHighS())return!1;M&&(L=t.hash(L));let{r:J,s:oe}=H,ee=D(L),re=c(oe),ve=a(ee*re),xe=a(J*re),Xe=u.BASE.multiplyAndAddUnsafe(Q,ve,xe)?.toAffine();return Xe?a(Xe.x)===J:!1}return{CURVE:t,getPublicKey:x,getSharedSecret:w,sign:q,verify:j,ProjectivePoint:u,Signature:m,utils:v}}function E8(e){return{hash:e,hmac:(t,...r)=>ei(e,t,ls(...r)),randomBytes:dn}}function jp(e,t){let r=n=>Qp({...e,...E8(n)});return Object.freeze({...r(t),create:r})}var t1=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),Jp=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),S8=BigInt(1),Y0=BigInt(2),e1=(e,t)=>(e+t/Y0)/t;function C8(e){let t=t1,r=BigInt(3),n=BigInt(6),i=BigInt(11),o=BigInt(22),s=BigInt(23),a=BigInt(44),c=BigInt(88),u=e*e*e%t,f=u*u*e%t,l=Ce(f,r,t)*f%t,h=Ce(l,r,t)*f%t,y=Ce(h,Y0,t)*u%t,d=Ce(y,i,t)*y%t,p=Ce(d,o,t)*d%t,g=Ce(p,a,t)*p%t,m=Ce(g,c,t)*g%t,v=Ce(m,a,t)*p%t,x=Ce(v,r,t)*f%t,A=Ce(x,s,t)*d%t,w=Ce(A,n,t)*u%t,E=Ce(w,Y0,t);if(!Z0.eql(Z0.sqr(E),e))throw new Error("Cannot find square root");return E}var Z0=xs(t1,void 0,void 0,{sqrt:C8}),Sr=jp({a:BigInt(0),b:BigInt(7),Fp:Z0,n:Jp,Gx:BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),Gy:BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),h:BigInt(1),lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:e=>{let t=Jp,r=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),n=-S8*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),i=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),o=r,s=BigInt("0x100000000000000000000000000000000"),a=e1(o*e,t),c=e1(-n*e,t),u=de(e-a*r-c*i,t),f=de(-a*n-c*o,t),l=u>s,h=f>s;if(l&&(u=t-u),h&&(f=t-f),u>s||f>s)throw new Error("splitScalar: Endomorphism failed, k="+e);return{k1neg:l,k1:u,k2neg:h,k2:f}}}},ti),gT=BigInt(0);var mT=Sr.ProjectivePoint;function r1(){return Sr.utils.randomPrivateKey()}async function n1(e,t){let{digest:r}=await je.digest(t);try{return Sr.sign(r,e).toDERRawBytes()}catch(n){throw new W(String(n),"ERR_INVALID_INPUT")}}async function i1(e,t,r){try{let{digest:n}=await je.digest(r);return Sr.verify(t,n,e)}catch(n){throw new W(String(n),"ERR_INVALID_INPUT")}}function o1(e){return Sr.ProjectivePoint.fromHex(e).toRawBytes(!0)}function s1(e){try{Sr.getPublicKey(e,!0)}catch(t){throw new W(String(t),"ERR_INVALID_PRIVATE_KEY")}}function X0(e){try{Sr.ProjectivePoint.fromHex(e)}catch(t){throw new W(String(t),"ERR_INVALID_PUBLIC_KEY")}}function a1(e){try{return Sr.getPublicKey(e,!0)}catch(t){throw new W(String(t),"ERR_INVALID_PRIVATE_KEY")}}var eo=class{_key;constructor(t){X0(t),this._key=t}async verify(t,r){return i1(this._key,r,t)}marshal(){return o1(this._key)}get bytes(){return nr.encode({Type:_e.Secp256k1,Data:this.marshal()}).subarray()}equals(t){return Me(this.bytes,t.bytes)}async hash(){let{bytes:t}=await je.digest(this.bytes);return t}},to=class{_key;_publicKey;constructor(t,r){this._key=t,this._publicKey=r??a1(t),s1(this._key),X0(this._publicKey)}async sign(t){return n1(this._key,t)}get public(){return new eo(this._publicKey)}marshal(){return this._key}get bytes(){return ir.encode({Type:_e.Secp256k1,Data:this.marshal()}).subarray()}equals(t){return Me(this.bytes,t.bytes)}async hash(){let{bytes:t}=await je.digest(this.bytes);return t}async id(){let t=await this.public.hash();return se(t,"base58btc")}async export(t,r="libp2p-key"){if(r==="libp2p-key")return ci(this.bytes,t);throw new W(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}};function D8(e){return new to(e)}function B8(e){return new eo(e)}async function I8(){let e=r1();return new to(e)}var An={rsa:$0,ed25519:q0,secp256k1:Q0};function c1(e){let t=Object.keys(An).join(" / ");return new W(`invalid or unsupported key type ${e}. Must be ${t}`,"ERR_UNSUPPORTED_KEY_TYPE")}function u1(e){let t=nr.decode(e),r=t.Data??new Uint8Array;switch(t.Type){case _e.RSA:return An.rsa.unmarshalRsaPublicKey(r);case _e.Ed25519:return An.ed25519.unmarshalEd25519PublicKey(r);case _e.Secp256k1:return An.secp256k1.unmarshalSecp256k1PublicKey(r);default:throw c1(t.Type??"unknown")}}async function f1(e){let t=ir.decode(e),r=t.Data??new Uint8Array;switch(t.Type){case _e.RSA:return An.rsa.unmarshalRsaPrivateKey(r);case _e.Ed25519:return An.ed25519.unmarshalEd25519PrivateKey(r);case _e.Secp256k1:return An.secp256k1.unmarshalSecp256k1PrivateKey(r);default:throw c1(t.Type??"RSA")}}var Gs;(function(e){let t;e.codec=()=>(t==null&&(t=Ut((r,n,i={})=>{if(i.lengthDelimited!==!1&&n.fork(),r.webtransportCerthashes!=null)for(let o of r.webtransportCerthashes)n.uint32(10),n.bytes(o);i.lengthDelimited!==!1&&n.ldelim()},(r,n)=>{let i={webtransportCerthashes:[]},o=n==null?r.len:r.pos+n;for(;r.pos<o;){let s=r.uint32();switch(s>>>3){case 1:i.webtransportCerthashes.push(r.bytes());break;default:r.skipType(s&7);break}}return i})),t),e.encode=r=>Pt(r,e.codec()),e.decode=r=>Nt(r,e.codec())})(Gs||(Gs={}));var ro;(function(e){let t;e.codec=()=>(t==null&&(t=Ut((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),Gs.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=Gs.codec().decode(r,r.uint32());break;default:r.skipType(s&7);break}}return i})),t),e.encode=r=>Pt(r,e.codec()),e.decode=r=>Nt(r,e.codec())})(ro||(ro={}));async function l1(e,t,r){let n=await k8(e,h1(t));if(e.publicKey==null)throw new Error("PublicKey was missing from local PeerId");return _8(e.publicKey,n,r)}function _8(e,t,r){return ro.encode({identityKey:e,identitySig:t,extensions:r??{webtransportCerthashes:[]}}).subarray()}async function k8(e,t){if(e.privateKey==null)throw new Error("PrivateKey was missing from PeerId");return(await f1(e.privateKey)).sign(t)}async function j0(e){return Pa(e.identityKey)}function J0(e){return ro.decode(e)}function h1(e){let t=Be("noise-libp2p-static-key:");return ge([t,e],t.length+e.length)}async function eu(e,t,r){let n=await Pa(t.identityKey);if(!n.equals(r))throw new Error(`Payload identity key ${n.toString()} does not match expected remote peer ${r.toString()}`);let i=h1(e);if(n.publicKey==null)throw new Error("PublicKey was missing from PeerId");if(t.identitySig==null)throw new Error("Signature was missing from message");if(!await u1(n.publicKey).verify(i,t.identitySig))throw new Error("Static key doesn't match to peer that signed payload!");return n}function no(e){return!(!(e instanceof Uint8Array)||e.length!==32)}var Ze=Ne("libp2p:noise");var Bt;Sh?Bt=Ze:Bt=Object.assign(()=>{},{enabled:!1,trace:()=>{},error:()=>{}});function d1(e){Bt(`LOCAL_STATIC_PUBLIC_KEY ${se(e.publicKey,"hex")}`),Bt(`LOCAL_STATIC_PRIVATE_KEY ${se(e.privateKey,"hex")}`)}function tu(e){e?(Bt(`LOCAL_PUBLIC_EPHEMERAL_KEY ${se(e.publicKey,"hex")}`),Bt(`LOCAL_PRIVATE_EPHEMERAL_KEY ${se(e.privateKey,"hex")}`)):Bt("Missing local ephemeral keys.")}function p1(e){Bt(`REMOTE_STATIC_PUBLIC_KEY ${se(e,"hex")}`)}function ru(e){Bt(`REMOTE_EPHEMERAL_PUBLIC_KEY ${se(e,"hex")}`)}function y1(e){e.cs1&&e.cs2?(Bt(`CIPHER_STATE_1 ${e.cs1.n.getUint64()} ${se(e.cs1.k,"hex")}`),Bt(`CIPHER_STATE_2 ${e.cs2.n.getUint64()} ${se(e.cs2.k,"hex")}`)):Bt("Missing cipher state.")}var R8="Cipherstate has reached maximum n, a new handshake must be performed",Ws=class{n;bytes;view;constructor(t=0){this.n=t,this.bytes=new Uint8Array(12),this.view=new DataView(this.bytes.buffer,this.bytes.byteOffset,this.bytes.byteLength),this.view.setUint32(4,t,!0)}increment(){this.n++,this.view.setUint32(4,this.n,!0)}getBytes(){return this.bytes}getUint64(){return this.n}assertValue(){if(this.n>4294967295)throw new Error(R8)}};var $s=class{crypto;constructor(t){this.crypto=t}encryptWithAd(t,r,n){let i=this.encrypt(t.k,t.n,r,n);return t.n.increment(),i}decryptWithAd(t,r,n,i){let{plaintext:o,valid:s}=this.decrypt(t.k,t.n,r,n,i);return s&&t.n.increment(),{plaintext:o,valid:s}}hasKey(t){return!this.isEmptyKey(t.k)}createEmptyKey(){return new Uint8Array(32)}isEmptyKey(t){let r=this.createEmptyKey();return Me(r,t)}encrypt(t,r,n,i){return r.assertValue(),this.crypto.chaCha20Poly1305Encrypt(i,r.getBytes(),n,t)}encryptAndHash(t,r){let n;return this.hasKey(t.cs)?n=this.encryptWithAd(t.cs,t.h,r):n=r,this.mixHash(t,n),n}decrypt(t,r,n,i,o){r.assertValue();let s=this.crypto.chaCha20Poly1305Decrypt(i,r.getBytes(),n,t,o);return s?{plaintext:s,valid:!0}:{plaintext:new Uint8Array(0),valid:!1}}decryptAndHash(t,r){let n,i=!0;return this.hasKey(t.cs)?{plaintext:n,valid:i}=this.decryptWithAd(t.cs,t.h,r):n=r,this.mixHash(t,r),{plaintext:n,valid:i}}dh(t,r){try{let n=this.crypto.generateX25519SharedKey(t,r);return n.length===32?n:n.subarray(0,32)}catch(n){let i=n;return Ze.error(i),new Uint8Array(32)}}mixHash(t,r){t.h=this.getHash(t.h,r)}getHash(t,r){return this.crypto.hashSHA256(ge([t,r],t.length+r.length))}mixKey(t,r){let[n,i]=this.crypto.getHKDF(t.ck,r);t.cs=this.initializeKey(i),t.ck=n}initializeKey(t){return{k:t,n:new Ws}}initializeSymmetric(t){let r=Be(t,"utf-8"),n=this.hashProtocolName(r),i=n,o=this.createEmptyKey();return{cs:this.initializeKey(o),ck:i,h:n}}hashProtocolName(t){if(t.length<=32){let r=new Uint8Array(32);return r.set(t),r}else return this.getHash(t,new Uint8Array(0))}split(t){let[r,n]=this.crypto.getHKDF(t.ck,new Uint8Array(0)),i=this.initializeKey(r),o=this.initializeKey(n);return{cs1:i,cs2:o}}writeMessageRegular(t,r){let n=this.encryptWithAd(t,new Uint8Array(0),r),i=this.createEmptyKey(),o=new Uint8Array(0);return{ne:i,ns:o,ciphertext:n}}readMessageRegular(t,r){return this.decryptWithAd(t,new Uint8Array(0),r.ciphertext)}};var Ys=class extends $s{initializeInitiator(t,r,n,i){let o="Noise_XX_25519_ChaChaPoly_SHA256",s=this.initializeSymmetric(o);this.mixHash(s,t);let a=new Uint8Array(32);return{ss:s,s:r,rs:n,psk:i,re:a}}initializeResponder(t,r,n,i){let o="Noise_XX_25519_ChaChaPoly_SHA256",s=this.initializeSymmetric(o);this.mixHash(s,t);let a=new Uint8Array(32);return{ss:s,s:r,rs:n,psk:i,re:a}}writeMessageA(t,r,n){let i=new Uint8Array(0);n!==void 0?t.e=n:t.e=this.crypto.generateX25519KeyPair();let o=t.e.publicKey;this.mixHash(t.ss,o);let s=this.encryptAndHash(t.ss,r);return{ne:o,ns:i,ciphertext:s}}writeMessageB(t,r){t.e=this.crypto.generateX25519KeyPair();let n=t.e.publicKey;this.mixHash(t.ss,n),this.mixKey(t.ss,this.dh(t.e.privateKey,t.re));let i=t.s.publicKey,o=this.encryptAndHash(t.ss,i);this.mixKey(t.ss,this.dh(t.s.privateKey,t.re));let s=this.encryptAndHash(t.ss,r);return{ne:n,ns:o,ciphertext:s}}writeMessageC(t,r){let n=t.s.publicKey,i=this.encryptAndHash(t.ss,n);this.mixKey(t.ss,this.dh(t.s.privateKey,t.re));let o=this.encryptAndHash(t.ss,r),a={ne:this.createEmptyKey(),ns:i,ciphertext:o},{cs1:c,cs2:u}=this.split(t.ss);return{h:t.ss.h,messageBuffer:a,cs1:c,cs2:u}}readMessageA(t,r){return no(r.ne)&&(t.re=r.ne),this.mixHash(t.ss,t.re),this.decryptAndHash(t.ss,r.ciphertext)}readMessageB(t,r){if(no(r.ne)&&(t.re=r.ne),this.mixHash(t.ss,t.re),!t.e)throw new Error("Handshake state `e` param is missing.");this.mixKey(t.ss,this.dh(t.e.privateKey,t.re));let{plaintext:n,valid:i}=this.decryptAndHash(t.ss,r.ns);i&&no(n)&&(t.rs=n),this.mixKey(t.ss,this.dh(t.e.privateKey,t.rs));let{plaintext:o,valid:s}=this.decryptAndHash(t.ss,r.ciphertext);return{plaintext:o,valid:i&&s}}readMessageC(t,r){let{plaintext:n,valid:i}=this.decryptAndHash(t.ss,r.ns);if(i&&no(n)&&(t.rs=n),!t.e)throw new Error("Handshake state `e` param is missing.");this.mixKey(t.ss,this.dh(t.e.privateKey,t.rs));let{plaintext:o,valid:s}=this.decryptAndHash(t.ss,r.ciphertext),{cs1:a,cs2:c}=this.split(t.ss);return{h:t.ss.h,plaintext:o,valid:i&&s,cs1:a,cs2:c}}initSession(t,r,n){let i=this.createEmptyKey(),o=new Uint8Array(32),s;return t?s=this.initializeInitiator(r,n,o,i):s=this.initializeResponder(r,n,o,i),{hs:s,i:t,mc:0}}sendMessage(t,r,n){let i;if(t.mc===0)i=this.writeMessageA(t.hs,r,n);else if(t.mc===1)i=this.writeMessageB(t.hs,r);else if(t.mc===2){let{h:o,messageBuffer:s,cs1:a,cs2:c}=this.writeMessageC(t.hs,r);i=s,t.h=o,t.cs1=a,t.cs2=c}else if(t.mc>2)if(t.i){if(!t.cs1)throw new Error("CS1 (cipher state) is not defined");i=this.writeMessageRegular(t.cs1,r)}else{if(!t.cs2)throw new Error("CS2 (cipher state) is not defined");i=this.writeMessageRegular(t.cs2,r)}else throw new Error("Session invalid.");return t.mc++,i}recvMessage(t,r){let n=new Uint8Array(0),i=!1;if(t.mc===0)({plaintext:n,valid:i}=this.readMessageA(t.hs,r));else if(t.mc===1)({plaintext:n,valid:i}=this.readMessageB(t.hs,r));else if(t.mc===2){let{h:o,plaintext:s,valid:a,cs1:c,cs2:u}=this.readMessageC(t.hs,r);n=s,i=a,t.h=o,t.cs1=c,t.cs2=u}return t.mc++,{plaintext:n,valid:i}}};var Zs=class{isInitiator;session;remotePeer;remoteExtensions={webtransportCerthashes:[]};payload;connection;xx;staticKeypair;prologue;constructor(t,r,n,i,o,s,a,c){this.isInitiator=t,this.payload=r,this.prologue=n,this.staticKeypair=o,this.connection=s,a&&(this.remotePeer=a),this.xx=c??new Ys(i),this.session=this.xx.initSession(this.isInitiator,this.prologue,this.staticKeypair)}async propose(){if(d1(this.session.hs.s),this.isInitiator){Ze.trace("Stage 0 - Initiator starting to send first message.");let t=this.xx.sendMessage(this.session,new Uint8Array(0));await this.connection.write(ed(t)),Ze.trace("Stage 0 - Initiator finished sending first message."),tu(this.session.hs.e)}else{Ze.trace("Stage 0 - Responder waiting to receive first message...");let t=nd((await this.connection.read()).subarray()),{valid:r}=this.xx.recvMessage(this.session,t);if(!r)throw new $r("xx handshake stage 0 validation fail");Ze.trace("Stage 0 - Responder received first message."),ru(this.session.hs.re)}}async exchange(){if(this.isInitiator){Ze.trace("Stage 1 - Initiator waiting to receive first message from responder...");let t=id((await this.connection.read()).subarray()),{plaintext:r,valid:n}=this.xx.recvMessage(this.session,t);if(!n)throw new $r("xx handshake stage 1 validation fail");Ze.trace("Stage 1 - Initiator received the message."),ru(this.session.hs.re),p1(this.session.hs.rs),Ze.trace("Initiator going to check remote's signature...");try{let i=J0(r);this.remotePeer=this.remotePeer||await j0(i),await eu(this.session.hs.rs,i,this.remotePeer),this.setRemoteNoiseExtension(i.extensions)}catch(i){let o=i;throw new vi(`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 t=this.xx.sendMessage(this.session,this.payload);await this.connection.write(td(t)),Ze.trace("Stage 1 - Responder sent the second handshake message with signed payload."),tu(this.session.hs.e)}}async finish(){if(this.isInitiator){Ze.trace("Stage 2 - Initiator sending third handshake message.");let t=this.xx.sendMessage(this.session,this.payload);await this.connection.write(rd(t)),Ze.trace("Stage 2 - Initiator sent message with signed payload.")}else{Ze.trace("Stage 2 - Responder waiting for third handshake message...");let t=od((await this.connection.read()).subarray()),{plaintext:r,valid:n}=this.xx.recvMessage(this.session,t);if(!n)throw new $r("xx handshake stage 2 validation fail");Ze.trace("Stage 2 - Responder received the message, finished handshake.");try{let i=J0(r);this.remotePeer=this.remotePeer||await j0(i),await eu(this.session.hs.rs,i,this.remotePeer),this.setRemoteNoiseExtension(i.extensions)}catch(i){let o=i;throw new vi(`Error occurred while verifying signed payload: ${o.message}`)}}y1(this.session)}encrypt(t,r){let n=this.getCS(r);return this.xx.encryptWithAd(n,new Uint8Array(0),t)}decrypt(t,r,n){let i=this.getCS(r,!1);return this.xx.decryptWithAd(i,new Uint8Array(0),t,n)}getRemoteStaticKey(){return this.session.hs.rs}getCS(t,r=!0){if(!t.cs1||!t.cs2)throw new $r("Handshake not completed properly, cipher state does not exist.");return this.isInitiator?r?t.cs1:t.cs2:r?t.cs2:t.cs1}setRemoteNoiseExtension(t){t&&(this.remoteExtensions=t)}};function g1(e){return{xxHandshakeSuccesses:e.registerCounter("libp2p_noise_xxhandshake_successes_total",{help:"Total count of noise xxHandshakes successes_"}),xxHandshakeErrors:e.registerCounter("libp2p_noise_xxhandshake_error_total",{help:"Total count of noise xxHandshakes errors"}),encryptedPackets:e.registerCounter("libp2p_noise_encrypted_packets_total",{help:"Total count of noise encrypted packets successfully"}),decryptedPackets:e.registerCounter("libp2p_noise_decrypted_packets_total",{help:"Total count of noise decrypted packets"}),decryptErrors:e.registerCounter("libp2p_noise_decrypt_errors_total",{help:"Total count of noise decrypt errors"})}}var Xs=class{protocol="/noise";crypto;prologue;staticKeys;extensions;metrics;constructor(t={}){let{staticNoiseKey:r,extensions:n,crypto:i,prologueBytes:o,metrics:s}=t;this.crypto=i??g0,this.extensions=n,this.metrics=s?g1(s):void 0,r?this.staticKeys=this.crypto.generateX25519KeyPairFromSeed(r):this.staticKeys=this.crypto.generateX25519KeyPair(),this.prologue=o??new Uint8Array(0)}async secureOutbound(t,r,n){let i=Ni(r,{lengthEncoder:ri,lengthDecoder:Vi,maxDataLength:65535}),o=await this.performHandshake({connection:i,isInitiator:!0,localPeer:t,remotePeer:n});return{conn:await this.createSecureConnection(i,o),remoteExtensions:o.remoteExtensions,remotePeer:o.remotePeer}}async secureInbound(t,r,n){let i=Ni(r,{lengthEncoder:ri,lengthDecoder:Vi,maxDataLength:65535}),o=await this.performHandshake({connection:i,isInitiator:!1,localPeer:t,remotePeer:n});return{conn:await this.createSecureConnection(i,o),remotePeer:o.remotePeer,remoteExtensions:o.remoteExtensions}}async performHandshake(t){let r=await l1(t.localPeer,this.staticKeys.publicKey,this.extensions);return this.performXXHandshake(t,r)}async performXXHandshake(t,r){let{isInitiator:n,remotePeer:i,connection:o}=t,s=new Zs(n,r,this.prologue,this.crypto,this.staticKeys,o,i);try{await s.propose(),await s.exchange(),await s.finish(),this.metrics?.xxHandshakeSuccesses.increment()}catch(a){if(this.metrics?.xxHandshakeErrors.increment(),a instanceof Error)throw a.message=`Error occurred during XX handshake: ${a.message}`,a}return s}async createSecureConnection(t,r){let[n,i]=xh(),o=t.unwrap();return await wh(n,cd(r,this.metrics),o,s=>ur(s,{lengthDecoder:Vi}),ud(r,this.metrics),n),i}};function m1(e={}){return()=>new Xs(e)}var $2=Re(Ru(),1);var M2=Re(Ru(),1);var Lu=Ne("libp2p:webrtc:sdp"),Nu=Object.values(Gt).map(e=>e.decoder).reduce((e,t)=>e.or(t));function V2(e){let t=e.getConfiguration().certificates?.at(0);if(t==null||t.getFingerprints==null){Lu.trace("fetching fingerprint from local SDP");let n=e.localDescription;return n==null?void 0:KE(n.sdp)}if(Lu.trace("fetching fingerprint from local certificate"),t.getFingerprints().length===0)return;let r=t.getFingerprints()[0].value;if(r==null)throw lc("","no fingerprint on local certificate");return r}var FE=/^a=fingerprint:(?:\w+-[0-9]+)\s(?<fingerprint>(:?[0-9a-fA-F]{2})+)$/m;function KE(e){return e.match(FE)?.groups?.fingerprint}function ME(e){for(let t of e.protoNames())if(t.startsWith("ip"))return t.toUpperCase();return Lu("Warning: multiaddr does not appear to contain IP4 or IP6, defaulting to IP6",e),"IP6"}function ca(e){let r=e.stringTuples().filter(n=>n[0]===z2).map(n=>n[1])[0];if(r===void 0||r==="")throw _o(`Couldn't find a certhash component of multiaddr: ${e.toString()}`);return r}function Pu(e){let t=Nu.decode(e);return M2.decode(t)}function VE(e){let t=Pu(ca(e)),r=Uu(t.name),n=t.digest.reduce((o,s)=>o+s.toString(16).padStart(2,"0"),""),i=n.match(/.{1,2}/g);if(i==null)throw lc(n,e.toString());return[`${r.toUpperCase()} ${i.join(":").toUpperCase()}`,n]}function Uu(e){switch(e){case"sha1":return"sha-1";case"sha2-256":return"sha-256";case"sha2-512":return"sha-512";default:throw Yf(e)}}function qE(e,t){let{host:r,port:n}=e.toOptions(),i=ME(e),[o]=VE(e);return`v=0
29
+ `});var N1=he(()=>{L1();zs();Ur();du();eo()});var mu,P_,P1=he(()=>{c1();u1();f1();l1();h1();iu();d1();au();p1();m1();C1();I1();T1();_1();N1();mu={...j0,...J0,...eu,...tu,...ru,...nu,...ou,...su,...cu,...uu},P_={...pu,...yu}});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,xu,k3,Zs,bu=he(()=>{P1();gu();U1=O1("utf8","u",t=>"u"+new TextDecoder("utf8").decode(t),t=>new TextEncoder().encode(t.substring(1))),xu=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}),k3={utf8:U1,"utf-8":U1,hex:mu.base16,latin1:xu,ascii:xu,binary:xu,...mu},Zs=k3});var F1={};ue(F1,{toString:()=>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?globalThis.Buffer.from(t.buffer,t.byteOffset,t.byteLength).toString("utf8"):r.encoder.encode(t).substring(1)}var K1=he(()=>{bu()});var M1={};ue(M1,{fromString:()=>L3});function L3(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(()=>{bu();Ys()});var H1={};ue(H1,{concat:()=>N3});function N3(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 vu=re((Y_,X1)=>{"use strict";var z1=Vp(),ui=jp(),{names:ro}=e1(),{toString:Qs}=(K1(),io(F1)),{fromString:P3}=(V1(),io(M1)),{concat:U3}=(q1(),io(H1)),fi={};for(let t in ro){let e=t;fi[ro[e]]=e}Object.freeze(fi);function O3(t){if(!(t instanceof Uint8Array))throw new Error("must be passed a Uint8Array");return Qs(t,"base16")}function F3(t){return P3(t,"base16")}function K3(t){if(!(t instanceof Uint8Array))throw new Error("must be passed a Uint8Array");return Qs(z1.encode("base58btc",t)).slice(1)}function M3(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 V3(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 U3([i,o,t],i.length+o.length+t.length)}function W1(t){let e=t;if(typeof t=="string"){if(ro[t]===void 0)throw new Error(`Unrecognized hash function named: ${t}`);e=ro[t]}if(typeof e!="number")throw new Error(`Hash function code should be a number. Got: ${e}`);if(fi[e]===void 0&&!wu(e))throw new Error(`Unrecognized function code: ${e}`);return e}function wu(t){return t>0&&t<16}function $1(t){return!!(wu(t)||fi[t])}function Y1(t){G1(t)}function H3(t){return Y1(t),t.subarray(0,2)}X1.exports={names:ro,codes:fi,toHexString:O3,fromHexString:F3,toB58String:K3,fromB58String:M3,decode:G1,encode:V3,coerceCode:W1,isAppCode:wu,validate:Y1,prefix:H3,isValidCode:$1}});var j3={};ue(j3,{webRTC:()=>Q3,webRTCDirect:()=>Z3});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 oo=Symbol.for("@libp2p/transport");var Pu;(function(t){t[t.FATAL_ALL=0]="FATAL_ALL",t[t.NO_FATAL=1]="NO_FATAL"})(Pu||(Pu={}));var ht=$e(Mu(),1);var sa={};ue(sa,{base32:()=>At,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,g=0,b=d.length;g!==b&&d[g]===0;)g++,p++;for(var x=(b-g)*f+1>>>0,A=new Uint8Array(x);g!==b;){for(var v=d[g],E=0,D=x-1;(v!==0||E<y)&&D!==-1;D--,E++)v+=256*A[D]>>>0,A[D]=v%a>>>0,v=v/a>>>0;if(v!==0)throw new Error("Non-zero carry");y=E,g++}for(var B=x-y;B!==x&&A[B]===0;)B++;for(var U=c.repeat(p);B<x;++B)U+=t.charAt(A[B]);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,g=0;d[p]===c;)y++,p++;for(var b=(d.length-p)*u+1>>>0,x=new Uint8Array(b);d[p];){var A=r[d.charCodeAt(p)];if(A===255)return;for(var v=0,E=b-1;(A!==0||v<g)&&E!==-1;E--,v++)A+=a*x[E]>>>0,x[E]=A%256>>>0,A=A/256>>>0;if(A!==0)throw new Error("Non-zero carry");g=v,p++}if(d[p]!==" "){for(var D=b-g;D!==b&&x[D]===0;)D++;for(var B=new Uint8Array(y+(b-D)),U=y;D!==b;)B[U++]=x[D++];return B}}}function m(d){var p=h(d);if(p)return p;throw new Error(`Non-${e} character`)}return{encode:l,decodeUnsafe:h,decode:m}}var _2=T2,k2=_2,Vu=k2;var oE=new Uint8Array(0);var Hu=(t,e)=>{if(t===e)return!0;if(t.byteLength!==e.byteLength)return!1;for(let r=0;r<t.byteLength;r++)if(t[r]!==e[r])return!1;return!0},er=t=>{if(t instanceof Uint8Array&&t.constructor.name==="Uint8Array")return t;if(t instanceof ArrayBuffer)return new Uint8Array(t);if(ArrayBuffer.isView(t))return new Uint8Array(t.buffer,t.byteOffset,t.byteLength);throw new Error("Unknown type, must be binary type")};var qu=t=>new TextEncoder().encode(t),zu=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 Wu(this,e)}},ia=class{constructor(e){this.decoders=e}or(e){return Wu(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`)}},Wu=(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)}},En=({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}=Vu(r,e);return En({prefix:t,name:e,encode:n,decode:o=>er(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})=>En({prefix:e,name:t,encode(i){return L2(i,n,r)},decode(i){return R2(i,n,r,t)}});var At=_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:()=>Sn,base64pad:()=>q2,base64url:()=>ca,base64urlpad:()=>z2});var Sn=_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":At.baseEncode(t);ht.default.formatters.m=t=>t==null?"undefined":Sn.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 $u=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 Yu=Array.from("\u{1F680}\u{1FA90}\u2604\u{1F6F0}\u{1F30C}\u{1F311}\u{1F312}\u{1F313}\u{1F314}\u{1F315}\u{1F316}\u{1F317}\u{1F318}\u{1F30D}\u{1F30F}\u{1F30E}\u{1F409}\u2600\u{1F4BB}\u{1F5A5}\u{1F4BE}\u{1F4BF}\u{1F602}\u2764\u{1F60D}\u{1F923}\u{1F60A}\u{1F64F}\u{1F495}\u{1F62D}\u{1F618}\u{1F44D}\u{1F605}\u{1F44F}\u{1F601}\u{1F525}\u{1F970}\u{1F494}\u{1F496}\u{1F499}\u{1F622}\u{1F914}\u{1F606}\u{1F644}\u{1F4AA}\u{1F609}\u263A\u{1F44C}\u{1F917}\u{1F49C}\u{1F614}\u{1F60E}\u{1F607}\u{1F339}\u{1F926}\u{1F389}\u{1F49E}\u270C\u2728\u{1F937}\u{1F631}\u{1F60C}\u{1F338}\u{1F64C}\u{1F60B}\u{1F497}\u{1F49A}\u{1F60F}\u{1F49B}\u{1F642}\u{1F493}\u{1F929}\u{1F604}\u{1F600}\u{1F5A4}\u{1F603}\u{1F4AF}\u{1F648}\u{1F447}\u{1F3B6}\u{1F612}\u{1F92D}\u2763\u{1F61C}\u{1F48B}\u{1F440}\u{1F62A}\u{1F611}\u{1F4A5}\u{1F64B}\u{1F61E}\u{1F629}\u{1F621}\u{1F92A}\u{1F44A}\u{1F973}\u{1F625}\u{1F924}\u{1F449}\u{1F483}\u{1F633}\u270B\u{1F61A}\u{1F61D}\u{1F634}\u{1F31F}\u{1F62C}\u{1F643}\u{1F340}\u{1F337}\u{1F63B}\u{1F613}\u2B50\u2705\u{1F97A}\u{1F308}\u{1F608}\u{1F918}\u{1F4A6}\u2714\u{1F623}\u{1F3C3}\u{1F490}\u2639\u{1F38A}\u{1F498}\u{1F620}\u261D\u{1F615}\u{1F33A}\u{1F382}\u{1F33B}\u{1F610}\u{1F595}\u{1F49D}\u{1F64A}\u{1F639}\u{1F5E3}\u{1F4AB}\u{1F480}\u{1F451}\u{1F3B5}\u{1F91E}\u{1F61B}\u{1F534}\u{1F624}\u{1F33C}\u{1F62B}\u26BD\u{1F919}\u2615\u{1F3C6}\u{1F92B}\u{1F448}\u{1F62E}\u{1F646}\u{1F37B}\u{1F343}\u{1F436}\u{1F481}\u{1F632}\u{1F33F}\u{1F9E1}\u{1F381}\u26A1\u{1F31E}\u{1F388}\u274C\u270A\u{1F44B}\u{1F630}\u{1F928}\u{1F636}\u{1F91D}\u{1F6B6}\u{1F4B0}\u{1F353}\u{1F4A2}\u{1F91F}\u{1F641}\u{1F6A8}\u{1F4A8}\u{1F92C}\u2708\u{1F380}\u{1F37A}\u{1F913}\u{1F619}\u{1F49F}\u{1F331}\u{1F616}\u{1F476}\u{1F974}\u25B6\u27A1\u2753\u{1F48E}\u{1F4B8}\u2B07\u{1F628}\u{1F31A}\u{1F98B}\u{1F637}\u{1F57A}\u26A0\u{1F645}\u{1F61F}\u{1F635}\u{1F44E}\u{1F932}\u{1F920}\u{1F927}\u{1F4CC}\u{1F535}\u{1F485}\u{1F9D0}\u{1F43E}\u{1F352}\u{1F617}\u{1F911}\u{1F30A}\u{1F92F}\u{1F437}\u260E\u{1F4A7}\u{1F62F}\u{1F486}\u{1F446}\u{1F3A4}\u{1F647}\u{1F351}\u2744\u{1F334}\u{1F4A3}\u{1F438}\u{1F48C}\u{1F4CD}\u{1F940}\u{1F922}\u{1F445}\u{1F4A1}\u{1F4A9}\u{1F450}\u{1F4F8}\u{1F47B}\u{1F910}\u{1F92E}\u{1F3BC}\u{1F975}\u{1F6A9}\u{1F34E}\u{1F34A}\u{1F47C}\u{1F48D}\u{1F4E3}\u{1F942}"),Z2=Yu.reduce((t,e,r)=>(t[r]=e,t),[]),Q2=Yu.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=En({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 ma={};ue(ma,{identity:()=>iy});var iy=En({prefix:"\0",name:"identity",encode:t=>zu(t),decode:t=>qu(t)});var CE=new TextEncoder,DE=new TextDecoder;var xa={};ue(xa,{identity:()=>wr});var ay=Qu,Xu=128,cy=127,uy=~cy,fy=Math.pow(2,31);function Qu(t,e,r){e=e||[],r=r||0;for(var n=r;t>=fy;)e[r++]=t&255|Xu,t/=128;for(;t&uy;)e[r++]=t&255|Xu,t>>>=7;return e[r]=t|0,Qu.bytes=r-n+1,e}var ly=ga,hy=128,Zu=127;function ga(t,n){var r=0,n=n||0,i=0,o=n,s,a=t.length;do{if(o>=a)throw ga.bytes=0,new RangeError("Could not decode varint");s=t[o++],r+=i<28?(s&Zu)<<i:(s&Zu)*Math.pow(2,i),i+=7}while(s>=hy);return ga.bytes=o-n,r}var dy=Math.pow(2,7),py=Math.pow(2,14),yy=Math.pow(2,21),my=Math.pow(2,28),gy=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<my?4:t<gy?5:t<xy?6:t<by?7:t<wy?8:t<vy?9:10},Sy={encode:ay,decode:ly,encodingLength:Ey},Ay=Sy,di=Ay;var pi=(t,e=0)=>[di.decode(t,e),di.decode.bytes],An=(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 An(t,o,0),An(r,o,n),o.set(e,i),new Dn(t,r,e,o)},Vr=t=>{let e=er(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 Dn(r,i,s,e)},ju=(t,e)=>{if(t===e)return!0;{let r=e;return t.code===r.code&&t.size===r.size&&r.bytes instanceof Uint8Array&&Hu(t.bytes,r.bytes)}},Dn=class{constructor(e,r,n,i){this.code=e,this.size=r,this.digest=n,this.bytes=i}};var Ju=0,Cy="identity",ef=er,Dy=t=>Ft(Ju,ef(t)),wr={code:Ju,name:Cy,encode:ef,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 rf=t=>async e=>new Uint8Array(await crypto.subtle.digest(t,e)),Ye=wa({name:"sha2-256",code:18,encode:rf("SHA-256")}),By=wa({name:"sha2-512",code:19,encode:rf("SHA-512")});var nf=(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||At.encoder)}};var of=new WeakMap,Ea=t=>{let e=of.get(t);if(e==null){let r=new Map;return of.set(t,r),r}return e},Ct=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&&ju(e.multihash,n.multihash)}toString(e){return nf(this,e)}toJSON(){return{"/":nf(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||sf(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=sf(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=er(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 Dn(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 At.prefix:{let r=e||At;return[At.prefix,r.decode(t)]}default:{if(e==null)throw Error("To parse non base32 or base58btc encoded CID multibase decoder must be provided");return[t[0],e.decode(t)]}}},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,sf=(t,e,r)=>{let n=Cn(t),i=n+Cn(e),o=new Uint8Array(i+r.byteLength);return An(t,o,0),An(e,o,n),o.set(r,i),o},Ry=Symbol.for("@ipld/js-cid/CID");var Kt={...ma,...ha,...ya,...fa,...la,...sa,...pa,...aa,...ua,...da},HE={...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"),af=Object.values(Kt).map(t=>t.decoder).reduce((t,e)=>t.or(e),Kt.identity.decoder),cf=114,Sa=36,Aa=37,mi=class{type;multihash;privateKey;publicKey;string;constructor(e){this.type=e.type,this.multihash=e.multihash,this.privateKey=e.privateKey,Object.defineProperty(this,"string",{enumerable:!1,writable:!0})}get[Symbol.toStringTag](){return`PeerId(${this.toString()})`}[$u]=!0;toString(){return this.string==null&&(this.string=Te.encode(this.multihash.bytes).slice(1)),this.string}toCID(){return Ct.createV1(cf,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()})`}},Bn=class extends mi{type="RSA";publicKey;constructor(e){super({...e,type:"RSA"}),this.publicKey=e.publicKey}},In=class extends mi{type="Ed25519";publicKey;constructor(e){super({...e,type:"Ed25519"}),this.publicKey=e.multihash.digest}},Tn=class extends mi{type="secp256k1";publicKey;constructor(e){super({...e,type:"secp256k1"}),this.publicKey=e.multihash.digest}};function qr(t,e){if(e=e??af,t.charAt(0)==="1"||t.charAt(0)==="Q"){let r=Vr(Te.decode(`z${t}`));return t.startsWith("12D")?new In({multihash:r}):t.startsWith("16U")?new Tn({multihash:r}):new Bn({multihash:r})}return Ny(af.decode(t))}function Ny(t){try{let e=Vr(t);if(e.code===wr.code){if(e.digest.length===Sa)return new In({multihash:e});if(e.digest.length===Aa)return new Tn({multihash:e})}if(e.code===Ye.code)return new Bn({multihash:e})}catch{return Py(Ct.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!==cf)throw new Error("Supplied PeerID CID is invalid");let e=t.multihash;if(e.code===Ye.code)return new Bn({multihash:t.multihash});if(e.code===wr.code){if(e.digest.length===Sa)return new In({multihash:t.multihash});if(e.digest.length===Aa)return new Tn({multihash:t.multihash})}throw new Error("Supplied PeerID CID is invalid")}async function Ca(t,e){return t.length===Sa?new In({multihash:Ft(wr.code,t),privateKey:e}):t.length===Aa?new Tn({multihash:Ft(wr.code,t),privateKey:e}):new Bn({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 tr(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 ff(t,e,r,n){return{name:t,prefix:e,encoder:{name:t,prefix:e,encode:r},decoder:{decode:n}}}var uf=ff("utf8","u",t=>"u"+new TextDecoder("utf8").decode(t),t=>new TextEncoder().encode(t.substring(1))),Da=ff("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:uf,"utf-8":uf,hex:Kt.base16,latin1:Da,ascii:Da,binary:Da,...Kt},uo=Oy;function se(t,e="utf8"){let r=uo[e];if(r==null)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?globalThis.Buffer.from(t.buffer,t.byteOffset,t.byteLength).toString("utf8"):r.encoder.encode(t).substring(1)}var 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 fo=class{index=0;input="";new(e){return this.index=0,this.input=e,this}readAtomically(e){let r=this.index,n=e();return n===void 0&&(this.index=r),n}parseWith(e){let r=e();if(this.index===this.input.length)return r}peekChar(){if(!(this.index>=this.input.length))return this.input[this.index]}readChar(){if(!(this.index>=this.input.length))return this.input[this.index++]}readGivenChar(e){return this.readAtomically(()=>{let r=this.readChar();if(r===e)return r})}readSeparator(e,r,n){return this.readAtomically(()=>{if(!(r>0&&this.readGivenChar(e)===void 0))return n()})}readNumber(e,r,n,i){return this.readAtomically(()=>{let o=0,s=0,a=this.peekChar();if(a===void 0)return;let c=a==="0",u=2**(8*i)-1;for(;;){let f=this.readAtomically(()=>{let l=this.readChar();if(l===void 0)return;let h=Number.parseInt(l,e);if(!Number.isNaN(h))return h});if(f===void 0)break;if(o*=e,o+=f,o>u||(s+=1,r!==void 0&&s>r))return}if(s!==0)return!n&&c&&s>1?void 0:o})}readIPv4Addr(){return this.readAtomically(()=>{let e=new Uint8Array(4);for(let r=0;r<e.length;r++){let n=this.readSeparator(".",r,()=>this.readNumber(10,3,!1,1));if(n===void 0)return;e[r]=n}return e})}readIPv6Addr(){let e=r=>{for(let n=0;n<r.length/2;n++){let i=n*2;if(n<r.length-3){let s=this.readSeparator(":",n,()=>this.readIPv4Addr());if(s!==void 0)return r[i]=s[0],r[i+1]=s[1],r[i+2]=s[2],r[i+3]=s[3],[i+4,!0]}let o=this.readSeparator(":",n,()=>this.readNumber(16,4,!0,2));if(o===void 0)return[i,!1];r[i]=o>>8,r[i+1]=o&255}return[r.length,!1]};return this.readAtomically(()=>{let r=new Uint8Array(16),[n,i]=e(r);if(n===16)return r;if(i||this.readGivenChar(":")===void 0||this.readGivenChar(":")===void 0)return;let o=new Uint8Array(14),s=16-(n+2),[a]=e(o.subarray(0,s));return r.set(o.subarray(0,a),16-a),r})}readIPAddr(){return this.readIPv4Addr()??this.readIPv6Addr()}};var lf=45,Gy=15,_n=new fo;function ka(t){if(!(t.length>Gy))return _n.new(t).parseWith(()=>_n.readIPv4Addr())}function Ra(t){if(t.includes("%")&&(t=t.split("%")[0]),!(t.length>lf))return _n.new(t).parseWith(()=>_n.readIPv6Addr())}function lo(t){if(t.includes("%")&&(t=t.split("%")[0]),!(t.length>lf))return _n.new(t).parseWith(()=>_n.readIPAddr())}var w4=parseInt("0xFFFF",16),v4=new Uint8Array([0,0,0,0,0,0,0,0,0,0,255,255]);function we(t,e="utf8"){let r=uo[e];if(r==null)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?vr(globalThis.Buffer.from(t,"utf-8")):r.decoder.decode(`${r.prefix}${t}`)}function ho(t){return!!ka(t)}function po(t){return!!Ra(t)}function yo(t){return!!lo(t)}var pf=ho,Zy=po,La=function(t){let e=0;if(t=t.toString().trim(),pf(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=pf(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")},yf=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 kn={},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,kn[e.name]=e});function Jy(t,e,r,n,i){return{code:t,size:e,name:r,resolvable:!!n,path:!!i}}function ge(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(kn[t]!=null)return kn[t];throw new Error(`no protocol with name: ${t}`)}throw new Error(`invalid protocol id type: ${typeof t}`)}var aS=ge("ip4"),cS=ge("ip6"),uS=ge("ipcidr");function Ua(t,e){switch(ge(t).code){case 4:case 41:return tm(e);case 42:return xf(e);case 6:case 273:case 33:case 132:return wf(e).toString();case 53:case 54:case 55:case 56:case 400:case 449:case 777:return xf(e);case 421:return om(e);case 444:return bf(e);case 445:return bf(e);case 466:return im(e);default:return se(e,"base16")}}function Oa(t,e){switch(ge(t).code){case 4:return mf(e);case 41:return mf(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 rm(e);case 444:return sm(e);case 445:return am(e);case 466:return nm(e);default:return we(e,"base16")}}var Pa=Object.values(Kt).map(t=>t.decoder),em=function(){let t=Pa[0].or(Pa[1]);return Pa.slice(2).forEach(e=>t=t.or(e)),t}();function mf(t){if(!yo(t))throw new Error("invalid ip address");return La(t)}function tm(t){let e=yf(t,0,t.length);if(e==null)throw new Error("ipBuff is required");if(!yo(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 wf(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 xf(t){let e=Dt(t);if(t=t.slice(st(e)),t.length!==e)throw new Error("inconsistent lengths");return se(t)}function rm(t){let e;t[0]==="Q"||t[0]==="1"?e=Vr(Te.decode(`z${t}`)).bytes:e=Ct.parse(t).multihash.bytes;let r=Uint8Array.from(Er(e.length));return pe([r,e],r.length+e.length)}function nm(t){let e=em.decode(t),r=Uint8Array.from(Er(e.length));return pe([r,e],r.length+e.length)}function im(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 om(t){let e=Dt(t),r=t.slice(st(e));if(r.length!==e)throw new Error("inconsistent lengths");return se(r,"base58btc")}function sm(t){let e=t.split(":");if(e.length!==2)throw new Error(`failed to parse onion addr: ["'${e.join('", "')}'"]' does not contain a port number`);if(e[0].length!==16)throw new Error(`failed to parse onion addr: ${e[0]} not a Tor onion address.`);let r=At.decode("b"+e[0]),n=parseInt(e[1],10);if(n<1||n>65536)throw new Error("Port number is not in range(1, 65536)");let i=Fa(n);return pe([r,i],r.length+i.length)}function am(t){let e=t.split(":");if(e.length!==2)throw new Error(`failed to parse onion addr: ["'${e.join('", "')}'"]' does not contain a port number`);if(e[0].length!==56)throw new Error(`failed to parse onion addr: ${e[0]} not a Tor onion3 address.`);let r=At.decode(`b${e[0]}`),n=parseInt(e[1],10);if(n<1||n>65536)throw new Error("Port number is not in range(1, 65536)");let i=Fa(n);return pe([r,i],r.length+i.length)}function bf(t){let e=t.slice(0,t.length-2),r=t.slice(t.length-2),n=se(e,"base32"),i=wf(r);return`${n}:${i}`}function vf(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=ge(s);if(a.size===0){e.push([a.code]),r.push([a.code]);continue}if(o++,o>=i.length)throw Sf("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:Ef(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=ge(o),c=cm(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 Sf("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:Ef(r),tuples:e,stringTuples:r,path:n}}function Ef(t){let e=[];return t.map(r=>{let n=ge(r[0]);return e.push(n.name),r.length>1&&r[1]!=null&&e.push(r[1]),null}),Ka(e.join("/"))}function Va(t){return pe(t.map(e=>{let r=ge(e[0]),n=Uint8Array.from(Er(r.code));return e.length>1&&e[1]!=null&&(n=pe([n,e[1]])),n}))}function cm(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 Sf(t){return new Error("Error parsing address: "+t)}var um=Symbol.for("nodejs.util.inspect.custom"),fm=[ge("dns").code,ge("dns4").code,ge("dns6").code,ge("dnsaddr").code],lm=new Map,Af=Symbol.for("@multiformats/js-multiaddr/multiaddr");function hm(t){return!!t?.[Af]}var Ha=class t{bytes;#e;#t;#r;#n;[Af]=!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=vf(e)}else if(hm(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=ge("tcp"),a=ge("udp"),c=ge("ip4"),u=ge("ip6"),f=ge("dns6"),l=ge("ip6zone");for(let[m,d]of this.stringTuples())m===l.code&&(o=`%${d??""}`),fm.includes(m)&&(r=s.name,i=443,n=`${d??""}${o}`,e=m===f.code?6:4),(m===s.code||m===a.code)&&(r=ge(m).name,i=parseInt(d??"")),(m===c.code||m===u.code)&&(r=ge(m).name,n=`${d??""}${o}`,e=m===u.code?6:4);if(e==null||r==null||n==null||i==null)throw new Error('multiaddr must have a valid format: "/{ip4, ip6, dns4, dns6, dnsaddr}/{address}/{tcp, udp}/{port}".');return{family:e,host:n,transport:r,port:i}}protos(){return this.#t.map(([e])=>Object.assign({},ge(e)))}protoCodes(){return this.#t.map(([e])=>e)}protoNames(){return this.#t.map(([e])=>ge(e).name)}tuples(){return this.#t}stringTuples(){return this.#r}encapsulate(e){return e=new t(e),new t(this.toString()+e.toString())}decapsulate(e){let r=e.toString(),n=this.toString(),i=n.lastIndexOf(r);if(i<0)throw new Error(`Address ${this.toString()} does not contain subaddress: ${e.toString()}`);return new t(n.slice(0,i))}decapsulateCode(e){let r=this.tuples();for(let n=r.length-1;n>=0;n--)if(r[n][0]===e)return new t(Va(r.slice(0,n)));return this}getPeerId(){try{let e=[];this.stringTuples().forEach(([n,i])=>{n===kn.p2p.code&&e.push([n,i]),n===kn["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(Ct.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=lm.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)}[um](){return`Multiaddr(${this.#e})`}};function Mt(t){return new Ha(t)}var dm=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}),xo=()=>({match:t=>xi(e=>typeof e=="string").match(t),pattern:"{string}"}),Cf=()=>({match:t=>xi(e=>!isNaN(parseInt(e))).match(t),pattern:"{number}"}),gt=()=>({match:t=>{if(t.length<2||t[0]!=="p2p"&&t[0]!=="ipfs")return!1;if(t[1].startsWith("Q")||t[1].startsWith("1"))try{Te.decode(`z${t[1]}`)}catch{return!1}else return!1;return t.slice(2)},pattern:"/p2p/{peerid}"}),mo=()=>({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}"}),Vt=t=>({match:e=>{let r=t.match(e);return r===!1?e:r},pattern:`optional(${t.pattern})`}),Ht=(...t)=>({match:e=>{let r;for(let n of t){let i=n.match(e);i!==!1&&(r==null||i.length<r.length)&&(r=i)}return r??!1},pattern:`or(${t.map(e=>e.pattern).join(", ")})`}),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 Me(...t){function e(i){let o=dm(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"),xo()),Ga=Ne(Le("dns6"),xo()),Wa=Ne(Le("dnsaddr"),xo()),Df=Ne(Le("dns"),xo()),NS=Me(za),PS=Me(Ga),US=Me(Wa),OS=Me(Ht(Df,Wa,za,Ga)),Bf=Ne(Le("ip4"),xi(ho)),If=Ne(Le("ip6"),xi(po)),Tf=Ht(Bf,If),bo=Ht(Tf,Df,za,Ga,Wa),FS=Me(Bf),KS=Me(If),MS=Me(Tf),wo=Ne(bo,Le("tcp"),Cf()),bi=Ne(bo,Le("udp"),Cf()),pm=Ht(wo,bi),VS=Me(wo),HS=Me(bi),$a=Ne(bi,Le("quic")),vo=Ne(bi,Le("quic-v1")),ym=Ht($a,vo),qS=Me($a),zS=Me(vo),qa=Ht(bo,wo,bi,$a,vo),_f=Ht(Ne(qa,Le("ws"),Vt(gt()))),GS=Me(_f),kf=Ht(Ne(qa,Le("wss"),Vt(gt())),Ne(qa,Le("tls"),Le("ws"),Vt(gt()))),WS=Me(kf),Rf=Ne(pm,Le("webrtc-direct"),mo(),Vt(mo()),Vt(gt())),Lf=Me(Rf),Nf=Ne(vo,Le("webtransport"),mo(),mo(),Vt(gt())),$S=Me(Nf),go=Ht(_f,kf,Ne(wo,Vt(gt())),Ne(ym,Vt(gt())),Ne(bo,Vt(gt())),Rf,Nf,gt()),YS=Me(go),mm=Ne(go,Le("p2p-circuit"),gt()),XS=Me(mm),gm=Ht(Ne(go,Le("p2p-circuit"),Le("webrtc"),gt()),Ne(go,Le("webrtc"),Vt(gt())),Le("webrtc")),Pf=Me(gm);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 Eo(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 wi(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))},xm=function(){function t(e,r,n){this.name=e,this.version=r,this.os=n,this.type="browser"}return t}();var bm=function(){function t(e){this.version=e,this.type="node",this.name="node",this.os=process.platform}return t}();var wm=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 vm=function(){function t(){this.type="bot",this.bot=!0,this.name="bot",this.version=null,this.os=null}return t}();var Em=function(){function t(){this.type="react-native",this.name="react-native",this.version=null,this.os=null}return t}();var Sm=/alexa|bot|crawl(er|ing)|facebookexternalhit|feedburner|google web preview|nagios|postrank|pingdom|slurp|spider|yahoo!|yandex/,Am=/(nuhk|curl|Googlebot|Yammybot|Openbot|Slurp|MSNBot|Ask\ Jeeves\/Teoma|ia_archiver)/,Kf=3,Cm=[["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",Sm]],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 Em:typeof navigator<"u"?Vf(navigator.userAgent):Im()}function Dm(t){return t!==""&&Cm.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=Dm(t);if(!e)return null;var r=e[0],n=e[1];if(r==="searchbot")return new vm;var i=n[1]&&n[1].split(".").join("_").split("_").slice(0,3);i?i.length<Kf&&(i=Ff(Ff([],i,!0),Tm(Kf-i.length),!0)):i=[];var o=i.join("."),s=Bm(t),a=Am.exec(t);return a&&a[1]?new wm(r,o,s,a[1]):new xm(r,o,s)}function Bm(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 Im(){var t=typeof process<"u"&&process.version;return t?new bm(process.version.slice(1)):null}function Tm(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 Rn=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 Rn;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(),vi=Gf!=null&&Gf.name==="firefox",So=async function*(){},Ao=async t=>{},_m=30*1e3;function ic(t,e,r=_m){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 oc=ke("libp2p:webrtc:maconn"),Gr=class{peerConnection;remoteAddr;timeline;metrics;source=So();sink=Ao;constructor(e){this.remoteAddr=e.remoteAddr,this.timeline=e.timeline,this.peerConnection=e.peerConnection;let r=this.peerConnection.connectionState;this.peerConnection.onconnectionstatechange=()=>{oc.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){oc.trace("closing connection"),this.peerConnection.close(),this.timeline.close=Date.now(),this.metrics?.increment({close:!0})}abort(e){oc.error("closing connection due to error",e),this.peerConnection.close(),this.timeline.close=Date.now(),this.metrics?.increment({abort:!0})}};var Ei=class extends Error{constructor(e,r){super(e??"The operation was aborted"),this.type="aborted",this.code=r??"ABORT_ERR"}};function Wf(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 Co(t,e,r){let n=r??{},i=Wf(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 Ei(f,l)}let u=new Promise((f,l)=>{s=()=>{let{abortMessage:h,abortCode:m}=n;l(new Ei(h,m))}});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 Do=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}},Ln=class{size;hwm;head;tail;constructor(e={}){this.hwm=e.splitLimit??16,this.head=new Do(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 Do(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 sc=class extends Error{type;code;constructor(e,r){super(e??"The operation was aborted"),this.type="aborted",this.code=r??"ABORT_ERR"}};function qt(t={}){return km(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 km(t,e){e=e??{};let r=e.onEnd,n=new Ln,i,o,s,a=Ze(),c=async()=>{try{return n.isEmpty()?s?{done:!0}:await new Promise((y,g)=>{o=b=>{o=null,n.push(b);try{y(t(n))}catch(x){g(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 Ln,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})),m=()=>(n=new Ln,h(),{done:!0}),d=y=>(h(y),{done:!0});if(i={[Symbol.asyncIterator](){return this},next:c,return:m,throw:d,push:l,end:h,get readableLength(){return n.size},onEmpty:async y=>{let g=y?.signal;if(g?.throwIfAborted(),n.isEmpty())return;let b,x;g!=null&&(b=new Promise((A,v)=>{x=()=>{v(new sc)},g.addEventListener("abort",x)}));try{await Promise.race([a.promise,b])}finally{x!=null&&g!=null&&g?.removeEventListener("abort",x)}}},r==null)return i;let p=i;return i={[Symbol.asyncIterator](){return this},next(){return p.next()},throw(y){return p.throw(y),r!=null&&(r(y),r=void 0),{done:!0}},return(){return p.return(),r!=null&&(r(),r=void 0),{done:!0}},push:l,end(y){return p.end(y),r!=null&&(r(y),r=void 0),i},get readableLength(){return p.readableLength}},i}var Nn=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 Nn(r?.errorMessage,r?.errorCode));let n,i=new Nn(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 Yf=Symbol.for("@achingbrain/uint8arraylist");function $f(t,e){if(e==null||e<0)throw new RangeError("index is out of bounds");let r=0;for(let n of t){let i=r+n.byteLength;if(e<i)return{buf:n,index:e-r};r=i}throw new RangeError("index is out of bounds")}function Bo(t){return!!t?.[Yf]}var Qe=class t{constructor(...e){Object.defineProperty(this,Yf,{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(Bo(n))r+=n.byteLength,this.bufs.push(...n.bufs);else throw new Error("Could not append value, must be an Uint8Array or a Uint8ArrayList");this.length+=r}prepend(...e){this.prependAll(e)}prependAll(e){let r=0;for(let n of e.reverse())if(n instanceof Uint8Array)r+=n.byteLength,this.bufs.unshift(n);else if(Bo(n))r+=n.byteLength,this.bufs.unshift(...n.bufs);else throw new Error("Could not prepend value, must be an Uint8Array or a Uint8ArrayList");this.length+=r}get(e){let r=$f(this.bufs,e);return r.buf[r.index]}set(e,r){let n=$f(this.bufs,e);n.buf[n.index]=r}write(e,r=0){if(e instanceof Uint8Array)for(let n=0;n<e.length;n++)this.set(r+n,e[n]);else if(Bo(e))for(let n=0;n<e.length;n++)this.set(r+n,e.get(n));else throw new Error("Could not write value, must be an Uint8Array or a Uint8ArrayList")}consume(e){if(e=Math.trunc(e),!(Number.isNaN(e)||e<=0)){if(e===this.byteLength){this.bufs=[],this.length=0;return}for(;this.bufs.length>0;)if(e>=this.bufs[0].byteLength)e-=this.bufs[0].byteLength,this.length-=this.bufs[0].byteLength,this.bufs.shift();else{this.bufs[0]=this.bufs[0].subarray(e),this.length-=e;break}}}slice(e,r){let{bufs:n,length:i}=this._subList(e,r);return 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(!Bo(e)&&!(e instanceof Uint8Array))throw new TypeError('The "value" argument must be a Uint8ArrayList or Uint8Array');let n=e instanceof Uint8Array?e:e.subarray();if(r=Number(r??0),isNaN(r)&&(r=0),r<0&&(r=this.length+r),r<0&&(r=0),e.length===0)return r>this.length?this.length:r;let i=n.byteLength;if(i===0)throw new TypeError("search must be at least 1 byte long");let o=256,s=new Int32Array(o);for(let l=0;l<o;l++)s[l]=-1;for(let l=0;l<i;l++)s[n[l]]=l;let a=s,c=this.byteLength-n.byteLength,u=n.byteLength-1,f;for(let l=r;l<=c;l+=f){f=0;for(let h=u;h>=0;h--){let m=this.get(l+h);if(n[h]!==m){f=Math.max(1,h-a[m]);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=tr(2);new DataView(i.buffer,i.byteOffset,i.byteLength).setInt16(0,r,n),this.write(i,e)}getInt32(e,r){let n=this.subarray(e,e+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt32(0,r)}setInt32(e,r,n){let i=tr(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setInt32(0,r,n),this.write(i,e)}getBigInt64(e,r){let n=this.subarray(e,e+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigInt64(0,r)}setBigInt64(e,r,n){let i=tr(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setBigInt64(0,r,n),this.write(i,e)}getUint8(e){let r=this.subarray(e,e+1);return new DataView(r.buffer,r.byteOffset,r.byteLength).getUint8(0)}setUint8(e,r){let n=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=tr(2);new DataView(i.buffer,i.byteOffset,i.byteLength).setUint16(0,r,n),this.write(i,e)}getUint32(e,r){let n=this.subarray(e,e+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint32(0,r)}setUint32(e,r,n){let i=tr(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setUint32(0,r,n),this.write(i,e)}getBigUint64(e,r){let n=this.subarray(e,e+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigUint64(0,r)}setBigUint64(e,r,n){let i=tr(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setBigUint64(0,r,n),this.write(i,e)}getFloat32(e,r){let n=this.subarray(e,e+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat32(0,r)}setFloat32(e,r,n){let i=tr(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setFloat32(0,r,n),this.write(i,e)}getFloat64(e,r){let n=this.subarray(e,e+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat64(0,r)}setFloat64(e,r,n){let i=tr(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setFloat64(0,r,n),this.write(i,e)}equals(e){if(e==null||!(e instanceof t)||e.bufs.length!==this.bufs.length)return!1;for(let r=0;r<this.bufs.length;r++)if(!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 Rm="ERR_STREAM_RESET",Lm="ERR_SINK_INVALID_STATE",Nm=5e3;function ac(t){return t!=null&&typeof t.then=="function"}var Io=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??Nm,this.onEnd=e.onEnd,this.onCloseRead=e?.onCloseRead,this.onCloseWrite=e?.onCloseWrite,this.onReset=e?.onReset,this.onAbort=e?.onAbort,this.source=this.streamSource=qt({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"`,Lm);try{this.writeStatus="writing";let r={signal:this.sinkController.signal};if(this.direction==="outbound"){let n=this.sendNewStream(r);ac(n)&&await n}e=Co(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);ac(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();ac(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",Rm);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 To(t){return t[Symbol.asyncIterator]!=null}var _o=t=>{let e=st(t),r=Xe(e);return Er(t,r),_o.bytes=e,r};_o.bytes=0;function $r(t,e){e=e??{};let r=e.lengthEncoder??_o;function*n(i){let o=r(i.byteLength);o instanceof Uint8Array?yield o:yield*o,i instanceof Uint8Array?yield i:yield*i}return To(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??_o;return new Qe(r(t.byteLength),t)};var Pn=$e(Qf(),1);var Um=8,Om=1024*1024*4,Yr;(function(t){t[t.LENGTH=0]="LENGTH",t[t.DATA=1]="DATA"})(Yr||(Yr={}));var cc=t=>{let e=Dt(t);return cc.bytes=st(e),e};cc.bytes=0;function rr(t,e){let r=new Qe,n=Yr.LENGTH,i=-1,o=e?.lengthDecoder??cc,s=e?.maxLengthLength??Um,a=e?.maxDataLength??Om;function*c(){for(;r.byteLength>0;){if(n===Yr.LENGTH)try{if(i=o(r),i<0)throw(0,Pn.default)(new Error("invalid message length"),"ERR_INVALID_MSG_LENGTH");if(i>a)throw(0,Pn.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,Pn.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 To(t)?async function*(){for await(let u of t)r.append(u),yield*c();if(r.byteLength>0)throw(0,Pn.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,Pn.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 Fm=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 Km(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}=Fm(t),l=(...m)=>{let d=r.multiArgs?m:m[0];r.filter&&!r.filter(d)||(c.push(d),r.count===c.length&&(n(),o(c)))},h=m=>{n(),s(m)};n=()=>{for(let m of a)f(m,l);for(let m of r.rejectionEvents)f(m,h)};for(let m of a)u(m,l);for(let m of r.rejectionEvents)u(m,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=Km(t,e,r),i=n.then(o=>o[0]);return i.cancel=n.cancel,i}var fc=new Float32Array([-0]),Ar=new Uint8Array(fc.buffer);function Jf(t,e,r){fc[0]=t,e[r]=Ar[0],e[r+1]=Ar[1],e[r+2]=Ar[2],e[r+3]=Ar[3]}function el(t,e){return Ar[0]=t[e],Ar[1]=t[e+1],Ar[2]=t[e+2],Ar[3]=t[e+3],fc[0]}var lc=new Float64Array([-0]),rt=new Uint8Array(lc.buffer);function tl(t,e,r){lc[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 rl(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],lc[0]}var Mm=BigInt(Number.MAX_SAFE_INTEGER),Vm=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<Mm&&e>Vm)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>nl&&(i=0n,++n>nl&&(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 nl=4294967296n;function il(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 ol(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 hc(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 ko(t,e){return(t[e-4]|t[e-3]<<8|t[e-2]<<16|t[e-1]<<24)>>>0}var dc=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 ko(this.buf,this.pos+=4)}sfixed32(){if(this.pos+4>this.len)throw Bt(this,4);return ko(this.buf,this.pos+=4)|0}float(){if(this.pos+4>this.len)throw Bt(this,4);let e=el(this.buf,this.pos);return this.pos+=4,e}double(){if(this.pos+8>this.len)throw Bt(this,4);let e=rl(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 ol(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=ko(this.buf,this.pos+=4),r=ko(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 pc(t){return new dc(t instanceof Uint8Array?t:t.subarray())}function It(t,e){let r=pc(t);return e.decode(r)}function yc(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 mc(){}var xc=class{head;tail;len;next;constructor(e){this.head=e.head,this.tail=e.tail,this.len=e.len,this.next=e.states}},Hm=yc();function qm(t){return globalThis.Buffer!=null?Xe(t):Hm(t)}var Ci=class{len;head;tail;states;constructor(){this.len=0,this.head=new Zr(mc,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 bc((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(Si,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(Si,r.length(),r)}uint64Number(e){let r=at.fromNumber(e);return this._push(Si,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(Si,r.length(),r)}sint64Number(e){let r=at.fromNumber(e).zzEncode();return this._push(Si,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(Jf,4,e)}double(e){return this._push(tl,8,e)}bytes(e){let r=e.length>>>0;return r===0?this._push(gc,1,0):this.uint32(r)._push(Gm,r,e)}string(e){let r=il(e);return r!==0?this.uint32(r)._push(hc,r,e):this._push(gc,1,0)}fork(){return this.states=new xc(this),this.head=this.tail=new Zr(mc,0,0),this.len=0,this}reset(){return this.states!=null?(this.head=this.states.head,this.tail=this.states.tail,this.len=this.states.len,this.states=this.states.next):(this.head=this.tail=new Zr(mc,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=qm(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 zm(t,e,r){for(;t>127;)e[r++]=t&127|128,t>>>=7;e[r]=t}var bc=class extends Zr{next;constructor(e,r){super(zm,e,r),this.next=void 0}};function Si(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 Gm(t,e,r){e.set(t,r)}globalThis.Buffer!=null&&(Ci.prototype.bytes=function(t){let e=t.length>>>0;return this.uint32(e),e>0&&this._push(Wm,e,t),this},Ci.prototype.string=function(t){let e=globalThis.Buffer.byteLength(t);return this.uint32(e),e>0&&this._push($m,e,t),this});function Wm(t,e,r){e.set(t,r)}function $m(t,e,r){t.length<40?hc(t,e,r):e.utf8Write!=null?e.utf8Write(t,r):e.set(we(t),r)}function wc(){return new Ci}function Tt(t,e){let r=wc();return e.encode(t,r,{lengthDelimited:!1}),r.finish()}var Un;(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"})(Un||(Un={}));function Ro(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 Ro("enum",Un.VARINT,r,n)}function _t(t,e){return Ro("message",Un.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 Ym=16*1024*1024,Xm=30*1e3,Zm=5,Qm=2,jm=16*1024,Jm=5e3,vc=class extends Io{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=qt(),this.messageQueue=new Qe,this.bufferedAmountLowEventTimeout=e.bufferedAmountLowEventTimeout??Xm,this.maxBufferedAmount=e.maxBufferedAmount??Ym,this.maxMessageSize=(e.maxMessageSize??jm)-Zm-Qm,this.receiveFinAck=Ze(),this.finAckTimeout=e.closeTimeout??Jm,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 Rn?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 On(t){let{channel:e,direction:r}=t;return new vc({id:r==="inbound"?`i${e.id}`:`r${e.id}`,log:ke(`libp2p:webrtc:stream:${r}:${e.id}`),...t})}var al=ke("libp2p:webrtc:muxer"),cl="/webrtc",jr=class{protocol;peerConnection;streamBuffer=[];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=On({channel:r,direction:"inbound",onEnd:()=>{this.streamBuffer=this.streamBuffer.filter(i=>i.id!==n.id)},...this.dataChannelOptions});this.streamBuffer.push(n)}}createStreamMuxer(e){return new Ec({...e,peerConnection:this.peerConnection,dataChannelOptions:this.dataChannelOptions,metrics:this.metrics,streams:this.streamBuffer,protocol:this.protocol})}},Ec=class{init;streams;protocol;peerConnection;dataChannelOptions;metrics;constructor(e){this.init=e,this.streams=e.streams,this.peerConnection=e.peerConnection,this.protocol=e.protocol??cl,this.metrics=e.metrics,this.dataChannelOptions=e.dataChannelOptions??{},this.peerConnection.ondatachannel=({channel:n})=>{let i=On({channel:n,direction:"inbound",onEnd:()=>{al.trace("stream %s %s %s onEnd",i.direction,i.id,i.protocol),ic(n,`inbound ${i.id} ${i.protocol}`,this.dataChannelOptions.drainTimeout),this.streams=this.streams.filter(o=>o.id!==i.id),this.metrics?.increment({stream_end:!0}),e?.onStreamEnd?.(i)},...this.dataChannelOptions});this.streams.push(i),this.metrics?.increment({incoming_stream:!0}),e?.onIncomingStream?.(i)};let r=e?.onIncomingStream;r!=null&&this.streams.forEach(n=>{r(n)})}async close(e){try{await Promise.all(this.streams.map(async r=>r.close(e)))}catch(r){this.abort(r)}}abort(e){for(let r of this.streams)r.abort(e)}source=So();sink=Ao;newStream(){let e=this.peerConnection.createDataChannel(""),r=On({channel:e,direction:"outbound",onEnd:()=>{al.trace("stream %s %s %s onEnd",r.direction,r.id,r.protocol),ic(e,`outbound ${r.id} ${r.protocol}`,this.dataChannelOptions.drainTimeout),this.streams=this.streams.filter(n=>n.id!==r.id),this.metrics?.increment({stream_end:!0}),this.init?.onStreamEnd?.(r)},...this.dataChannelOptions});return this.streams.push(r),this.metrics?.increment({outgoing_stream:!0}),r}};var Fn=globalThis.RTCPeerConnection,Lo=globalThis.RTCSessionDescription,ul=globalThis.RTCIceCandidate;var No=class extends Error{code;constructor(e,r){super(e),this.code=r}},Sc=class extends No{type;constructor(e){super(e,"ABORT_ERR"),this.type="aborted"}};function fl(t){let e=qt();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 Sc("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 No("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 Po=class extends Error{code;constructor(e,r){super(e),this.code=r}},ll=t=>Dt(t);ll.bytes=0;function Di(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 Po("message length length too long","ERR_MSG_LENGTH_TOO_LONG")}if(e?.maxDataLength!=null&&o>e.maxDataLength)throw new Po("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 Uo(t,e){let r=Di(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 Jr=ke("libp2p:webrtc:peer:util"),Oo=async(t,e,r,n)=>{let i=new AbortController;t.promise.then(()=>{i.abort()},()=>{i.abort()});let o=hl([i.signal,n.signal]),s=Co(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===""&&(Jr.trace("end-of-candidates for this generation received"),u={candidate:"",sdpMid:"0",sdpMLineIndex:0}),u===null&&(Jr.trace("end-of-candidates received"),u={candidate:null,sdpMid:"0",sdpMLineIndex:0});let f=new ul(u);Jr.trace("%s received new ICE candidate",n.direction,f);try{await e.addIceCandidate(f)}catch(l){Jr.error("%s bad candidate received",n.direction,l)}}}catch(a){Jr.error("%s error parsing ICE candidate",n.direction,a)}finally{o.clear()}if(n.signal?.aborted===!0)throw new Nn("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 Fo(t,e){t[vi?"oniceconnectionstatechange":"onconnectionstatechange"]=r=>{switch(Jr.trace("receiver peerConnectionState state change: %s",t.connectionState),vi?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}}}function Ko(t){let e=t.split(`\r
30
+ `).filter(n=>n.startsWith("a=candidate")).pop(),r=e?.split(" ");return e==null||r==null||r.length<5?(Jr("could not parse remote address from",e),"/webrtc"):`/dnsaddr/${r[4]}/${r[2].toLowerCase()}/${r[5]}/webrtc`}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,peerId:a}=pl(n);r?.dialerEvents.increment({open:!0}),xt.trace("dialing base address: %a",s);let c=s.getPeerId();if(c==null)throw new W("Relay peer was missing","ERR_INVALID_ADDRESS");let u=i.getConnections(qr(c)),f,l=!1;u.length===0?(f=await o.dial(s,{signal:e}),l=!0):f=u[0];try{let h=await f.newStream(Mo,{signal:e,runOnTransientConnection:!0}),m=Uo(h).pb(nt),d=Ze(),p=()=>{d.reject(new W("SDP handshake aborted","ERR_SDP_HANDSHAKE_ABORTED"))};try{Fo(t,d),e?.addEventListener("abort",p);let y=t.createDataChannel("init");t.onicecandidate=({candidate:v})=>{let E=JSON.stringify(v?.toJSON()??null);xt.trace("initiator sending ICE candidate %s",E),m.write({type:nt.Type.ICE_CANDIDATE,data:E},{signal:e}).catch(D=>{xt.error("error sending ICE candidate",D)})},t.onicecandidateerror=v=>{xt("initiator ICE candidate error",v)};let g=await t.createOffer();xt.trace("initiator send SDP offer %s",g.sdp),await m.write({type:nt.Type.SDP_OFFER,data:g.sdp},{signal:e}),await t.setLocalDescription(g).catch(v=>{throw xt.error("could not execute setLocalDescription",v),new W("Failed to set localDescription","ERR_SDP_HANDSHAKE_FAILED")});let b=await m.read({signal:e});if(b.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",b.data);let x=new Lo({type:"answer",sdp:b.data});await t.setRemoteDescription(x).catch(v=>{throw xt.error("could not execute setRemoteDescription",v),new W("Failed to set remoteDescription","ERR_SDP_HANDSHAKE_FAILED")}),xt.trace("initiator read candidates until connected"),await Oo(d,t,m,{direction:"initiator",signal:e}),xt.trace("initiator connected, closing init channel"),y.close(),xt.trace("initiator closing signalling stream"),await m.unwrap().unwrap().close({signal:e});let A=Ko(t.currentRemoteDescription?.sdp??"");return xt.trace("initiator connected to remote address %s",A),{remoteAddress:Mt(A).encapsulate(`/p2p/${a.toString()}`)}}catch(y){throw t.close(),h.abort(y),y}finally{e?.removeEventListener("abort",p),t.onicecandidate=null,t.onicecandidateerror=null}}finally{if(l)try{await f.close({signal:e})}catch(h){f.abort(h)}}}var 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 eg(e,r))}},Ac=class extends Event{detail;constructor(e,r){super(e,r),this.detail=r?.detail}},eg=globalThis.CustomEvent??Ac;var tg=q("dns4"),rg=q("dns6"),ng=q("dnsaddr"),en=Pe(q("dns"),ng,tg,rg),zo=Pe(q("ip4"),q("ip6")),Kn=Pe(X(zo,q("tcp")),X(en,q("tcp"))),Go=X(zo,q("udp")),ig=X(Go,q("utp")),og=X(Go,q("quic")),sg=X(Go,q("quic-v1")),Cc=Pe(X(Kn,q("ws")),X(en,q("ws"))),Ho=Pe(X(Cc,q("p2p")),Cc),Dc=Pe(X(Kn,q("wss")),X(en,q("wss")),X(Kn,q("tls"),q("ws")),X(en,q("tls"),q("ws"))),qo=Pe(X(Dc,q("p2p")),Dc),Bc=Pe(X(Kn,q("http")),X(zo,q("http")),X(en,q("http"))),Ic=Pe(X(Kn,q("https")),X(zo,q("https")),X(en,q("https"))),yl=X(Go,q("webrtc-direct"),q("certhash")),xl=Pe(X(yl,q("p2p")),yl),ml=X(sg,q("webtransport"),q("certhash"),q("certhash")),bl=Pe(X(ml,q("p2p")),ml),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"))),gA=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(Bc,q("p2p-webrtc-direct"),q("p2p")),X(Ic,q("p2p-webrtc-direct"),q("p2p")),X(Bc,q("p2p-webrtc-direct")),X(Ic,q("p2p-webrtc-direct"))),tn=Pe(Cc,Dc,Bc,Ic,wl,vl,Kn,ig,og,en,xl,bl),xA=Pe(X(tn,q("p2p-stardust"),q("p2p")),X(tn,q("p2p-stardust"))),Cr=Pe(X(tn,q("p2p")),wl,vl,xl,bl,q("p2p")),gl=Pe(X(Cr,q("p2p-circuit"),Cr),X(Cr,q("p2p-circuit")),X(q("p2p-circuit"),Cr),X(tn,q("p2p-circuit")),X(q("p2p-circuit"),tn),q("p2p-circuit")),El=()=>Pe(X(gl,El),gl),nr=El(),bA=Pe(X(nr,Cr,nr),X(Cr,nr),X(nr,Cr),nr,Cr);var wA=Pe(X(nr,q("webrtc"),q("p2p")),X(nr,q("webrtc")),X(tn,q("webrtc"),q("p2p")),X(tn,q("webrtc")),q("webrtc"));function Sl(t){function e(r){let n;try{n=Mt(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=Mt(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 Al({peerConnection:t,stream:e,signal:r,connection:n}){pt.trace("new inbound signaling stream");let i=Uo(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)})},Fo(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 Lo({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 Oo(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=Ko(t.currentRemoteDescription?.sdp??"");return pt.trace("recipient connected to remote address %s",o),{remoteAddress:o}}var Tc=ke("libp2p:webrtc:peer"),ag="/webrtc",cg="/p2p-circuit",Mo="/webrtc-signaling/0.0.1",ug=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=>{Tc.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";[oo]=!0;filter(e){return e.filter(Pf.exactMatch)}async dial(e,r){Tc.trace("dialing address: %a",e);let n=new Fn(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??ug),i=new Fn(this.init.rtcConfiguration),o=new jr({peerConnection:i,dataChannelOptions:this.init.dataChannel});try{let{remoteAddress:s}=await Al({peerConnection:i,connection:e,stream:r,signal:n}),a=new Gr({peerConnection:i,timeline:{open:new Date().getTime()},remoteAddr:Mt(s).encapsulate(`/p2p/${e.remotePeer.toString()}`),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=>{Tc.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(ag+"/");if(e.length!==2)throw new W("webrtc protocol was not present in multiaddr",dt.ERR_INVALID_MULTIADDR);if(!e[0].includes(cg))throw new W("p2p-circuit protocol was not present in multiaddr",dt.ERR_INVALID_MULTIADDR);let r=Mt(e[0]),i=Mt("/"+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 _c(){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 Cl(){let t=_c(),e=_c();return[{source:t.source,sink:e.sink},{source:e.source,sink:t.sink}]}function fg(t){return t[Symbol.asyncIterator]!=null}function lg(...t){let e=[];for(let r of t)fg(r)||e.push(r);return e.length===t.length?function*(){for(let r of e)yield*r}():async function*(){let r=qt({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=lg;function Bl(t,...e){if(t==null)throw new Error("Empty pipeline");if(kc(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&&kc(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++)kc(r[n])&&(r[n]=dg(r[n]));return hg(...r)}var hg=(...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,kc=t=>t==null?!1:t.sink!=null&&t.source!=null,dg=t=>e=>{let r=t.sink(e);if(r?.then!=null){let n=qt({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 pg=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),yg=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!yg)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(pg(t))t=t.slice();else throw new Error(`expected Uint8Array, got ${typeof t}`);return t}var mg=t=>Object.prototype.toString.call(t)==="[object Object]"&&t.constructor===Object;function Rl(t,e){if(e!==void 0&&(typeof e!="object"||!mg(e)))throw new Error("options must be object or undefined");return Object.assign(t,e)}function rn(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 Rc=(t,e)=>(Object.assign(e,t),e);function Lc(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 Nc(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 Pc(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,Uc=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),rn(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],m=s[6],d=s[7],p=s[8],y=s[9],g=je(e,r+0),b=je(e,r+2),x=je(e,r+4),A=je(e,r+6),v=je(e,r+8),E=je(e,r+10),D=je(e,r+12),B=je(e,r+14),U=o[0]+(g&8191),F=o[1]+((g>>>13|b<<3)&8191),O=o[2]+((b>>>10|x<<6)&8191),M=o[3]+((x>>>7|A<<9)&8191),G=o[4]+((A>>>4|v<<12)&8191),Q=o[5]+(v>>>1&8191),I=o[6]+((v>>>14|E<<2)&8191),R=o[7]+((E>>>11|D<<5)&8191),_=o[8]+((D>>>8|B<<8)&8191),k=o[9]+(B>>>5|i),S=0,P=S+U*a+F*(5*y)+O*(5*p)+M*(5*d)+G*(5*m);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*m)+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*m)+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*m)+_*(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*m)+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*m),S+=oe>>>13,oe&=8191;let J=S+U*m+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*m+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*m+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*m+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){Pc(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){Pc(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 gg(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=gg(t=>new Uc(t));var xg=Yo("expand 16-byte k"),bg=Yo("expand 32-byte k"),wg=ir(xg),vg=ir(bg);function $(t,e){return t<<e|t>>>32-e}function Oc(t){return t.byteOffset%4===0}var Qo=64,Eg=16,Ol=2**32-1,Ul=new Uint32Array;function Sg(t,e,r,n,i,o,s,a){let c=i.length,u=new Uint8Array(Qo),f=ir(u),l=Oc(i)&&Oc(o),h=l?ir(i):Ul,m=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 g=0,b;g<Eg;g++)b=y+g,m[b]=h[b]^f[g];d+=Qo;continue}for(let y=0,g;y<p;y++)g=d+y,o[g]=i[g]^u[y];d+=p}}function Fc(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),Nc(o),Nc(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 m=[],d=a.length,p,y;if(d===32)p=a.slice(),m.push(p),y=vg;else if(d===16&&r)p=new Uint8Array(32),p.set(a),p.set(a,16),y=wg,m.push(p);else throw new Error(`arx: invalid 32-byte key, got length=${d}`);Oc(c)||(c=c.slice(),m.push(c));let g=ir(p);if(n){if(c.length!==24)throw new Error("arx: extended nonce must be 24 bytes");n(y,g,ir(c.subarray(0,16)),g),c=c.subarray(16)}let b=16-i;if(b!==c.length)throw new Error(`arx: nonce must be ${b} or 16 bytes`);if(b!==12){let A=new Uint8Array(12);A.set(c,o?0:12-c.length),c=A,m.push(c)}let x=ir(c);for(Sg(t,y,g,x,u,f,l,s);m.length>0;)m.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],m=e[3],d=e[4],p=e[5],y=e[6],g=e[7],b=i,x=r[0],A=r[1],v=r[2],E=s,D=a,B=c,U=u,F=f,O=l,M=h,G=m,Q=d,I=p,R=y,_=g,k=b,S=x,P=A,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),D=D+O|0,S=$(S^D,16),I=I+S|0,O=$(O^I,12),D=D+O|0,S=$(S^D,8),I=I+S|0,O=$(O^I,7),B=B+M|0,P=$(P^B,16),R=R+P|0,M=$(M^R,12),B=B+M|0,P=$(P^B,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),D=D+M|0,k=$(k^D,16),_=_+k|0,M=$(M^_,12),D=D+M|0,k=$(k^D,8),_=_+k|0,M=$(M^_,7),B=B+G|0,S=$(S^B,16),Q=Q+S|0,G=$(G^Q,12),B=B+G|0,S=$(S^B,8),Q=Q+S|0,G=$(G^Q,7),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+D|0,n[H++]=c+B|0,n[H++]=u+U|0,n[H++]=f+F|0,n[H++]=l+O|0,n[H++]=h+M|0,n[H++]=m+G|0,n[H++]=d+Q|0,n[H++]=p+I|0,n[H++]=y+R|0,n[H++]=g+_|0,n[H++]=b+k|0,n[H++]=x+S|0,n[H++]=A+P|0,n[H++]=v+K|0}function Ag(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],m=e[5],d=e[6],p=e[7],y=r[0],g=r[1],b=r[2],x=r[3];for(let v=0;v<20;v+=2)i=i+c|0,y=$(y^i,16),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,g=$(g^o,16),m=m+g|0,u=$(u^m,12),o=o+u|0,g=$(g^o,8),m=m+g|0,u=$(u^m,7),s=s+f|0,b=$(b^s,16),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,g=$(g^s,16),h=h+g|0,l=$(l^h,12),s=s+l|0,g=$(g^s,8),h=h+g|0,l=$(l^h,7),a=a+c|0,b=$(b^a,16),m=m+b|0,c=$(c^m,12),a=a+c|0,b=$(b^a,8),m=m+b|0,c=$(c^m,7);let A=0;n[A++]=i,n[A++]=o,n[A++]=s,n[A++]=a,n[A++]=y,n[A++]=g,n[A++]=b,n[A++]=x}var Cg=Fc(Ml,{counterRight:!1,counterLength:4,allowShortKeys:!1}),Dg=Fc(Ml,{counterRight:!1,counterLength:8,extendNonceFn:Ag,allowShortKeys:!1});var Bg=new Uint8Array(16),Fl=(t,e)=>{t.update(e);let r=e.length%16;r&&t.update(Bg.subarray(r))},Ig=new Uint8Array(32);function Kl(t,e,r,n,i){let o=t(e,r,Ig),s=Pl.create(o);i&&Fl(s,i),Fl(s,n);let a=new Uint8Array(16),c=kl(a);Lc(c,0,BigInt(i?i.length:0),!0),Lc(c,8,BigInt(n.length),!0),s.update(a);let u=s.digest();return o.fill(0),u}var Vl=t=>(e,r,n)=>(rn(e,32),rn(r),{encrypt:(o,s)=>{let a=o.length,c=a+16;s?rn(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?rn(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}}),Kc=Rc({blockSize:64,nonceLength:12,tagLength:16},Vl(Cg)),yC=Rc({blockSize:64,nonceLength:24,tagLength:16},Vl(Dg));function jo(t){if(!Number.isSafeInteger(t)||t<0)throw new Error(`Wrong positive integer: ${t}`)}function Mc(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 Bi(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){Mc(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,Tg=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!Tg)throw new Error("Non little-endian hardware is not supported");function Vc(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=Vc(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()}},wC={}.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 nn(t=32){if(Jo&&typeof Jo.getRandomValues=="function")return Jo.getRandomValues(new Uint8Array(t));throw new Error("crypto.getRandomValues must be defined")}function _g(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;_g(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),Hc=BigInt(32);function zl(t,e=!1){return e?{h:Number(t&ns),l:Number(t>>Hc&ns)}:{h:Number(t>>Hc&ns)|0,l:Number(t&ns)|0}}function kg(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 Rg=(t,e)=>BigInt(t>>>0)<<Hc|BigInt(e>>>0),Lg=(t,e,r)=>t>>>r,Ng=(t,e,r)=>t<<32-r|e>>>r,Pg=(t,e,r)=>t>>>r|e<<32-r,Ug=(t,e,r)=>t<<32-r|e>>>r,Og=(t,e,r)=>t<<64-r|e>>>r-32,Fg=(t,e,r)=>t>>>r-32|e<<64-r,Kg=(t,e)=>e,Mg=(t,e)=>t,Vg=(t,e,r)=>t<<r|e>>>32-r,Hg=(t,e,r)=>e<<r|t>>>32-r,qg=(t,e,r)=>e<<r-32|t>>>64-r,zg=(t,e,r)=>t<<r-32|e>>>64-r;function Gg(t,e,r,n){let i=(e>>>0)+(n>>>0);return{h:t+r+(i/2**32|0)|0,l:i|0}}var Wg=(t,e,r)=>(t>>>0)+(e>>>0)+(r>>>0),$g=(t,e,r,n)=>e+r+n+(t/2**32|0)|0,Yg=(t,e,r,n)=>(t>>>0)+(e>>>0)+(r>>>0)+(n>>>0),Xg=(t,e,r,n,i)=>e+r+n+i+(t/2**32|0)|0,Zg=(t,e,r,n,i)=>(t>>>0)+(e>>>0)+(r>>>0)+(n>>>0)+(i>>>0),Qg=(t,e,r,n,i,o)=>e+r+n+i+o+(t/2**32|0)|0;var jg={fromBig:zl,split:kg,toBig:Rg,shrSH:Lg,shrSL:Ng,rotrSH:Pg,rotrSL:Ug,rotrBH:Og,rotrBL:Fg,rotr32H:Kg,rotr32L:Mg,rotlSH:Vg,rotlSL:Hg,rotlBH:qg,rotlBL:zg,add:Gg,add3L:Wg,add3H:$g,add4L:Yg,add4H:Xg,add5H:Qg,add5L:Zg},ne=jg;var[Jg,ex]=(()=>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),qc=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:m,Gl:d,Hh:p,Hl:y}=this;return[e,r,n,i,o,s,a,c,u,f,l,h,m,d,p,y]}set(e,r,n,i,o,s,a,c,u,f,l,h,m,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=m|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 A=Br[x-15]|0,v=Ir[x-15]|0,E=ne.rotrSH(A,v,1)^ne.rotrSH(A,v,8)^ne.shrSH(A,v,7),D=ne.rotrSL(A,v,1)^ne.rotrSL(A,v,8)^ne.shrSL(A,v,7),B=Br[x-2]|0,U=Ir[x-2]|0,F=ne.rotrSH(B,U,19)^ne.rotrBH(B,U,61)^ne.shrSH(B,U,6),O=ne.rotrSL(B,U,19)^ne.rotrBL(B,U,61)^ne.shrSL(B,U,6),M=ne.add4L(D,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:m,Fl:d,Gh:p,Gl:y,Hh:g,Hl:b}=this;for(let x=0;x<80;x++){let A=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&m^~l&p,D=h&d^~h&y,B=ne.add5L(b,v,D,ex[x],Ir[x]),U=ne.add5H(B,g,A,E,Jg[x],Br[x]),F=B|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;g=p|0,b=y|0,p=m|0,y=d|0,m=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:m,l:d}=ne.add(this.Fh|0,this.Fl|0,m|0,d|0),{h:p,l:y}=ne.add(this.Gh|0,this.Gl|0,p|0,y|0),{h:g,l:b}=ne.add(this.Hh|0,this.Hl|0,g|0,b|0),this.set(n,i,o,s,a,c,u,f,l,h,m,d,p,y,g,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 zc=rs(()=>new qc);var ss={};ue(ss,{bitGet:()=>ax,bitLen:()=>sx,bitMask:()=>Ii,bitSet:()=>cx,bytesToHex:()=>or,bytesToNumberBE:()=>sr,bytesToNumberLE:()=>Rt,concatBytes:()=>cr,createHmacDrbg:()=>$c,ensureBytes:()=>Ee,equalBytes:()=>ix,hexToBytes:()=>on,hexToNumber:()=>Wc,numberToBytesBE:()=>Tr,numberToBytesLE:()=>ar,numberToHexUnpadded:()=>$l,numberToVarBytesBE:()=>nx,utf8ToBytes:()=>ox,validateObject:()=>bt});var Wl=BigInt(0),is=BigInt(1),tx=BigInt(2),os=t=>t instanceof Uint8Array,rx=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+=rx[t[r]];return e}function $l(t){let e=t.toString(16);return e.length&1?`0${e}`:e}function Wc(t){if(typeof t!="string")throw new Error("hex string expected, got "+typeof t);return BigInt(t===""?"0":`0x${t}`)}function on(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 Wc(or(t))}function Rt(t){if(!os(t))throw new Error("Uint8Array expected");return Wc(or(Uint8Array.from(t).reverse()))}function Tr(t,e){return on(t.toString(16).padStart(e*2,"0"))}function ar(t,e){return Tr(t,e).reverse()}function nx(t){return on($l(t))}function Ee(t,e,r){let n;if(typeof e=="string")try{n=on(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 ix(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 ox(t){if(typeof t!="string")throw new Error(`utf8ToBytes expected string, got ${typeof t}`);return new Uint8Array(new TextEncoder().encode(t))}function sx(t){let e;for(e=0;t>Wl;t>>=is,e+=1);return e}function ax(t,e){return t>>BigInt(e)&is}var cx=(t,e,r)=>t|(r?is:Wl)<<BigInt(e),Ii=t=>(tx<<BigInt(t-1))-is,Gc=t=>new Uint8Array(t),Gl=t=>Uint8Array.from(t);function $c(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=Gc(t),i=Gc(t),o=0,s=()=>{n.fill(1),i.fill(0),o=0},a=(...l)=>r(i,n,...l),c=(l=Gc())=>{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 m=n.slice();h.push(m),l+=n.length}return cr(...h)};return(l,h)=>{s(),c(l);let m;for(;!(m=h(u()));)c();return s(),m}}var ux={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=ux[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),sn=BigInt(2),fx=BigInt(3),Yc=BigInt(4),Yl=BigInt(5),Xl=BigInt(8),lx=BigInt(9),hx=BigInt(16);function le(t,e){let r=t%e;return r>=Ke?r:e+r}function Xc(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 as(t,e){if(t===Ke||e<=Ke)throw new Error(`invert: expected positive integers, got n=${t} mod=${e}`);let r=le(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 le(i,e)}function dx(t){let e=(t-De)/sn,r,n,i;for(r=t-De,n=0;r%sn===Ke;r/=sn,n++);for(i=sn;i<t&&Xc(i,e,t)!==t-De;i++);if(n===1){let s=(t+De)/Yc;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)/sn;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 m=1;for(let p=a.sqr(h);m<u&&!a.eql(p,a.ONE);m++)p=a.sqr(p);let d=a.pow(f,De<<BigInt(u-m-1));f=a.sqr(d),l=a.mul(l,d),h=a.mul(h,f),u=m}return l}}function px(t){if(t%Yc===fx){let e=(t+De)/Yc;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,sn),s=n.pow(o,e),a=n.mul(i,s),c=n.mul(n.mul(a,sn),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%hx,dx(t)}var Zl=(t,e)=>(le(t,e)&De)===De,yx=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function Zc(t){let e={ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"},r=yx.reduce((n,i)=>(n[i]="function",n),e);return bt(t,r)}function mx(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 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 Qc(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<=Ke)throw new Error(`Expected Field ORDER > 0, got ${t}`);let{nBitLength:i,nByteLength:o}=Qc(t,e);if(o>2048)throw new Error("Field lengths over 2048 bytes are not supported");let s=px(t),a=Object.freeze({ORDER:t,BITS:i,BYTES:o,MASK:Ii(i),ZERO:Ke,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 Ke<=c&&c<t},is0:c=>c===Ke,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)=>mx(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 jc(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=jc(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 bx=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>bx;)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,m=BigInt(i);for(let d=0;d<a;d++){let p=d*c,y=Number(s&l);s>>=m,y>c&&(y-=h,s+=Jc);let g=p,b=p+Math.abs(y)-1,x=d%2!==0,A=y<0;y===0?f=f.add(r(x,o[g])):u=u.add(r(A,o[b]))}return{p:u,f}},wNAFCached(i,o,s,a){let c=i._WINDOW_SIZE||1,u=o.get(i);return u||(u=this.precomputeWindow(i,c),c!==1&&o.set(i,a(u))),this.wNAF(c,u,s)}}}function Ti(t){return Zc(t.Fp),bt(t,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...Qc(t.n,t.nBitLength),...t,p:t.Fp.ORDER})}var Lt=BigInt(0),yt=BigInt(1),fs=BigInt(2),wx=BigInt(8),vx={zip215:!0};function Ex(t){let e=Ti(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=Ex(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),m=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 g(k,S){if(p(k,S))return k;throw new Error(`Expected valid scalar < ${S}, got ${typeof k} ${k}`)}function b(k){return k===Lt?k:g(k,n)}let x=new Map;function A(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){A(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){A(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 Bu=f((Z-H)*(te+J)),Iu=f((Z+H)*(te-J)),ta=f(Iu-Bu);if(ta===Lt)return this.double();let Tu=f(j*fs*me),_u=f(oe*fs*be),ku=_u+Tu,Ru=Iu+Bu,Lu=_u-Tu,c2=f(ku*ta),u2=f(Ru*Lu),f2=f(ku*Lu),l2=f(ta*Ru);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,Du=f(We-P*Ge),i2=f(Jt*Fr),o2=f(li*Du),s2=f(Jt*Du),a2=f(Fr*li);return new v(i2,o2,a2,s2)}subtract(S){return this.add(S.negate())}wNAF(S){return B.wNAFCached(this,x,S,v.normalizeZ)}multiply(S){let{p:P,f:K}=this.wNAF(g(S,n));return v.normalizeZ([P,K])[0]}multiplyUnsafe(S){let P=b(S);return P===Lt?D:this.equals(D)||P===yt?this:this.equals(E)?this.wNAF(P).p:B.unsafeLadder(this,P)}isSmallOrder(){return this.multiplyUnsafe(c).is0()}isTorsionFree(){return B.unsafeLadder(this,n).is0()}toAffine(S){let{ex:P,ey:K,ez:H}=this,Z=this.is0();S==null&&(S=Z?wx: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?g(J,u):g(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:D}=v,B=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(m(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=vx;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 _i=BigInt(0),e0=BigInt(1);function Sx(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=Sx(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=>Xc(x,r-BigInt(2),r));function u(x,A,v){let E=n(x*(A-v));return A=n(A-E),v=n(v+E),[A,v]}function f(x){if(typeof x=="bigint"&&_i<=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,A){let v=f(x),E=f(A),D=v,B=e0,U=_i,F=v,O=e0,M=_i,G;for(let I=BigInt(i-1);I>=_i;I--){let R=E>>I&e0;M^=R,G=u(M,B,F),B=G[0],F=G[1],G=u(M,U,O),U=G[0],O=G[1],M=R;let _=B+U,k=n(_*_),S=B-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(D*n(te*te)),B=n(k*P),U=n(K*(k+n(l*K)))}G=u(M,B,F),B=G[0],F=G[1],G=u(M,U,O),U=G[0],O=G[1];let Q=c(U);return n(B*Q)}function m(x){return ar(n(x),o)}function d(x){let A=Ee("u coordinate",x,o);return s===o&&(A[s-1]&=127),Rt(A)}function p(x){let A=Ee("scalar",x);if(A.length!==o&&A.length!==s)throw new Error(`Expected ${o} or ${s} bytes, got ${A.length}`);return Rt(a(A))}function y(x,A){let v=d(A),E=p(x),D=h(v,E);if(D===_i)throw new Error("Invalid private or public key received");return m(D)}let g=m(e.Gu);function b(x){return y(x,g)}return{scalarMult:y,scalarMultBase:b,getSharedSecret:(x,A)=>y(x,A),getPublicKey:x=>b(x),utils:{randomPrivateKey:()=>e.randomBytes(e.nByteLength)},GuBytes:g}}var ki=BigInt("57896044618658097711785492504343953926634992332820282019728792003956564819949"),th=BigInt("19681161376707505956807079304988542015446066515923890162744021073123829784752"),WC=BigInt(0),Ax=BigInt(1),t0=BigInt(2),Cx=BigInt(5),rh=BigInt(10),Dx=BigInt(20),Bx=BigInt(40),nh=BigInt(80);function ih(t){let e=ki,n=t*t%e*t%e,i=Se(n,t0,e)*n%e,o=Se(i,Ax,e)*t%e,s=Se(o,Cx,e)*o%e,a=Se(s,rh,e)*s%e,c=Se(a,Dx,e)*a%e,u=Se(c,Bx,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,t0,e)*t%e,b2:n}}function oh(t){return t[0]&=248,t[31]&=127,t[31]|=64,t}function Ix(t,e){let r=ki,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(ki,void 0,!0),r0={a:BigInt(-1),d:BigInt("37095705934669439343138083508754565189542113879843219016388785533085940283555"),Fp:ur,n:BigInt("7237005577332262213973186563042994240857116359379907606001950938285454250989"),h:BigInt(8),Gx:BigInt("15112221349535400772501151409588531511454012693041857206046113283949847762202"),Gy:BigInt("46316835694926478169428394003475163141307993866256225615783033603165251855960"),hash:zc,randomBytes:nn,adjustScalarBytes:oh,uvRatio:Ix},zn=ls(r0);function sh(t,e,r){if(e.length>255)throw new Error("Context is too big");return ts(Vc("SigEd25519 no Ed25519 collisions"),new Uint8Array([r?1:0,e.length]),e,t)}var $C=ls({...r0,domain:sh}),YC=ls({...r0,domain:sh,prehash:zc}),Ri=(()=>eh({P:ki,a:BigInt(486662),montgomeryBits:255,nByteLength:32,Gu:BigInt(9),powPminus2:t=>{let e=ki,{pow_p_5_8:r,b2:n}=ih(t);return le(Se(r,BigInt(3),e)*n,e)},adjustScalarBytes:oh,randomBytes:nn}))();var Tx=(ur.ORDER+BigInt(3))/BigInt(8),XC=ur.pow(t0,Tx),ZC=ur.sqrt(ur.neg(ur.ONE)),QC=(ur.ORDER-BigInt(5))/BigInt(8),jC=BigInt(486662);var JC=Ql(ur,ur.neg(BigInt(486664)));var eD=BigInt("25063068953384623474111414158702152701244531502492656460079210482610430750235"),tD=BigInt("54469307008909316920995813868745141605393597292927456921205312896311721017578"),rD=BigInt("1159843021668779879193775521855586647937357759715417654439879720876111806838"),nD=BigInt("40440834346308536858101042469323190826248399146238708352240133220865137265952");var iD=BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff");var hs=class extends Hn{constructor(e,r){super(),this.finished=!1,this.destroyed=!1,Bi(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),Mc(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 Bi(t),r===void 0&&(r=new Uint8Array(t.outputLen)),Gn(t,Dr(r),Dr(e))}var n0=new Uint8Array([0]),ah=new Uint8Array;function uh(t,e,r,n=32){if(Bi(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++)n0[0]=u+1,a.update(u===0?ah:c).update(r).update(n0).digestInto(c),o.set(c,t.outputLen*u),s._cloneInto(a);return s.destroy(),a.destroy(),c.fill(0),n0.fill(0),o.slice(0,n)}var _x=(t,e,r)=>t&e^~t&r,kx=(t,e,r)=>t&e^t&r^e&r,Rx=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),i0=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],m=kr[l-2],d=kt(h,7)^kt(h,18)^h>>>3,p=kt(m,17)^kt(m,19)^m>>>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),m=f+h+_x(a,c,u)+Rx[l]+kr[l]|0,p=(kt(n,2)^kt(n,13)^kt(n,22))+kx(n,i,o)|0;f=u,u=c,c=a,a=s+m|0,s=o,o=i,i=n,n=m+p|0}n=n+this.A|0,i=i+this.B|0,o=o+this.C|0,s=s+this.D|0,a=a+this.E|0,c=c+this.F|0,u=u+this.G|0,f=f+this.H|0,this.set(n,i,o,s,a,c,u,f)}roundClean(){kr.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}};var Wn=rs(()=>new i0);var o0={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=Ri.utils.randomPrivateKey();return{publicKey:Ri.getPublicKey(t),privateKey:t}},generateX25519KeyPairFromSeed(t){return{publicKey:Ri.getPublicKey(t),privateKey:t}},generateX25519SharedKey(t,e){return Ri.getSharedSecret(t,e)},chaCha20Poly1305Encrypt(t,e,r,n){return Kc(n,e,r).encrypt(t)},chaCha20Poly1305Decrypt(t,e,r,n,i){return Kc(n,e,r).decrypt(t,i)}};var Lx=t=>globalThis.Buffer?globalThis.Buffer.allocUnsafe(t):new Uint8Array(t),$n=t=>{let e=Lx(2);return new DataView(e.buffer,e.byteOffset,e.byteLength).setUint16(0,t,!1),e};$n.bytes=2;var Li=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)};Li.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 gh=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-gh<i)throw new Error("Invalid chunk");let s=n.subarray(i,o),a=n.subarray(i,o-gh),{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 OI=$e(Fi(),1),FI=$e(Pd(),1);var Nv=$e(xe(),1);var k0={};ue(k0,{Ed25519PrivateKey:()=>hn,Ed25519PublicKey:()=>Vi,generateKeyPair:()=>av,generateKeyPairFromSeed:()=>Hd,unmarshalEd25519PrivateKey:()=>ov,unmarshalEd25519PublicKey:()=>sv});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 I0={alg:"A128GCM",ext:!0,k:"scm9jmO_4BJAgdwWGVulLg",key_ops:["encrypt","decrypt"],kty:"oct"};function T0(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 m=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",I0,{name:"AES-GCM"},!0,["encrypt"]);try{let b={name:"PBKDF2",salt:m,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",I0,{name:"AES-GCM"},!0,["encrypt"])}}else{let b={name:"PBKDF2",salt:m,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 g=await a.subtle.encrypt(p,y,l);return pe([m,p.iv,new Uint8Array(g)])}async function u(l,h){let m=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 g;if(h.length===0)try{let x={name:"PBKDF2",salt:m,iterations:s,hash:{name:i}},A=await a.subtle.importKey("raw",h,{name:"PBKDF2"},!1,["deriveKey"]);g=await a.subtle.deriveKey(x,A,{name:e,length:r},!0,["decrypt"])}catch{g=await a.subtle.importKey("jwk",I0,{name:"AES-GCM"},!0,["decrypt"])}else{let x={name:"PBKDF2",salt:m,iterations:s,hash:{name:i}},A=await a.subtle.importKey("raw",h,{name:"PBKDF2"},!1,["deriveKey"]);g=await a.subtle.deriveKey(x,A,{name:e,length:r},!0,["decrypt"])}let b=await a.subtle.decrypt(y,g,p);return new Uint8Array(b)}return{encrypt:c,decrypt:u}}async function Jn(t,e){let n=await T0().encrypt(t,e);return Sn.encode(n)}var Ie;(function(t){t.RSA="RSA",t.Ed25519="Ed25519",t.Secp256k1="Secp256k1"})(Ie||(Ie={}));var _0;(function(t){t[t.RSA=0]="RSA",t[t.Ed25519=1]="Ed25519",t[t.Secp256k1=2]="Secp256k1"})(_0||(_0={}));(function(t){t.codec=()=>Qr(_0)})(Ie||(Ie={}));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 Qt;(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())})(Qt||(Qt={}));var Vi=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 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}},hn=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 Vi(this._publicKey)}marshal(){return this._key}get bytes(){return Qt.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 ov(t){if(t.length>dr){t=ei(t,dr+jn);let n=t.subarray(0,dr),i=t.subarray(dr,t.length);return new hn(n,i)}t=ei(t,dr);let e=t.subarray(0,dr),r=t.subarray(jn);return new hn(e,r)}function sv(t){return t=ei(t,jn),new Vi(t)}async function av(){let{privateKey:t,publicKey:e}=await Ud();return new hn(t,e)}async function Hd(t){let{privateKey:e,publicKey:r}=await Od(t);return new hn(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 lB=$e(Oe(),1),hB=$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 mt(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 cv={"P-256":256,"P-384":384,"P-521":521},uv=Object.keys(cv),SB=uv.join(" / ");var U0={};ue(U0,{MAX_KEY_SIZE:()=>Gi,RsaPrivateKey:()=>ti,RsaPublicKey:()=>zi,fromJwk:()=>wv,generateKeyPair:()=>vv,unmarshalRsaPrivateKey:()=>xv,unmarshalRsaPublicKey:()=>bv});var qi=$e(xe(),1);var aI=$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 nn(t)}var qB=$e(_s(),1),N0=$e(xe(),1);function Zd(t,e){return e.map(r=>mt(t[r]))}function Qd(t){return N0.default.pki.setRsaPrivateKey(...Zd(t,["n","e","d","p","q","dp","dq","qi"]))}function jd(t){return N0.default.pki.setRsaPublicKey(...Zd(t,["n","e"]))}var pn={};ue(pn,{jwkToPkcs1:()=>dv,jwkToPkix:()=>yv,pkcs1ToJwk:()=>hv,pkixToJwk:()=>pv});var WB=$e(Fi(),1),$B=$e(_s(),1);var pr=$e(xe(),1);function hv(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 dv(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:mt(t.n),e:mt(t.e),d:mt(t.d),p:mt(t.p),q:mt(t.q),dP:mt(t.dp),dQ:mt(t.dq),qInv:mt(t.qi)});return we(pr.default.asn1.toDer(e).getBytes(),"ascii")}function pv(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 yv(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:mt(t.n),e:mt(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 P0(t){let r=[await ft.get().subtle.importKey("jwk",t,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!0,["sign"]),await mv(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 mv(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 Gi=8192,zi=class{_key;constructor(e){this._key=e}async verify(e,r){return tp(this._key,r,e)}marshal(){return pn.jwkToPkix(this._key)}get bytes(){return Zt.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 zi(this._publicKey)}decrypt(e){return op(this._key,e)}marshal(){return pn.jwkToPkcs1(this._key)}get bytes(){return Qt.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 qi.default.util.ByteBuffer(this.marshal()),i=qi.default.asn1.fromDer(n),o=qi.default.pki.privateKeyFromAsn1(i),s={algorithm:"aes256",count:1e4,saltSize:128/8,prfAlgorithm:"sha512"};return qi.default.pki.encryptRsaPrivateKey(o,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 xv(t){let e=pn.pkcs1ToJwk(t);if(Ns(e)>Gi)throw new W("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let r=await P0(e);return new ti(r.privateKey,r.publicKey)}function bv(t){let e=pn.pkixToJwk(t);if(Ns(e)>Gi)throw new W("key size is too large","ERR_KEY_SIZE_TOO_LARGE");return new zi(e)}async function wv(t){if(Ns(t)>Gi)throw new W("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let e=await P0(t);return new ti(e.privateKey,e.publicKey)}async function vv(t){if(t>Gi)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 M0={};ue(M0,{Secp256k1PrivateKey:()=>$i,Secp256k1PublicKey:()=>Wi,generateKeyPair:()=>Lv,unmarshalSecp256k1PrivateKey:()=>kv,unmarshalSecp256k1PublicKey:()=>Rv});function Ev(t){let e=Ti(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:Sv,hexToBytes:Av}=ss,yn={Err:class extends Error{constructor(e=""){super(e)}},_parseInt(t){let{Err:e}=yn;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:Sv(n),l:t.subarray(r+2)}},toSig(t){let{Err:e}=yn,r=typeof t=="string"?Av(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}=yn._parseInt(r.subarray(2)),{d:s,l:a}=yn._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),dI=BigInt(2),sp=BigInt(3),pI=BigInt(4);function Cv(t){let e=Ev(t),{Fp:r}=e,n=e.toBytes||((d,p,y)=>{let g=p.toAffine();return cr(Uint8Array.from([4]),r.toBytes(g.x),r.toBytes(g.y))}),i=e.fromBytes||(d=>{let p=d.subarray(1),y=r.fromBytes(p.subarray(0,r.BYTES)),g=r.fromBytes(p.subarray(r.BYTES,2*r.BYTES));return{x:y,y:g}});function o(d){let{a:p,b:y}=e,g=r.sqr(d),b=r.mul(g,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:g,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 g&&(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,g){if(this.px=p,this.py=y,this.pz=g,p==null||!r.isValid(p))throw new Error("x required");if(y==null||!r.isValid(y))throw new Error("y required");if(g==null||!r.isValid(g))throw new Error("z required")}static fromAffine(p){let{x:y,y:g}=p||{};if(!p||!r.isValid(y)||!r.isValid(g))throw new Error("invalid affine point");if(p instanceof l)throw new Error("projective point not allowed");let b=x=>r.eql(x,r.ZERO);return b(y)&&b(g)?l.ZERO:new l(y,g,r.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ(p){let y=r.invertBatch(p.map(g=>g.pz));return p.map((g,b)=>g.toAffine(y[b])).map(l.fromAffine)}static fromHex(p){let y=l.fromAffine(i(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 g=r.sqr(y),b=o(p);if(!r.eql(g,b))throw new Error("bad point: equation left != right");if(!this.isTorsionFree())throw new Error("bad point: not in prime-order subgroup")}hasEvenY(){let{y:p}=this.toAffine();if(r.isOdd)return!r.isOdd(p);throw new Error("Field doesn't support isOdd")}equals(p){f(p);let{px:y,py:g,pz:b}=this,{px:x,py:A,pz:v}=p,E=r.eql(r.mul(y,v),r.mul(x,b)),D=r.eql(r.mul(g,v),r.mul(A,b));return E&&D}negate(){return new l(this.px,r.neg(this.py),this.pz)}double(){let{a:p,b:y}=e,g=r.mul(y,sp),{px:b,py:x,pz:A}=this,v=r.ZERO,E=r.ZERO,D=r.ZERO,B=r.mul(b,b),U=r.mul(x,x),F=r.mul(A,A),O=r.mul(b,x);return O=r.add(O,O),D=r.mul(b,A),D=r.add(D,D),v=r.mul(p,D),E=r.mul(g,F),E=r.add(v,E),v=r.sub(U,E),E=r.add(U,E),E=r.mul(v,E),v=r.mul(O,v),D=r.mul(g,D),F=r.mul(p,F),O=r.sub(B,F),O=r.mul(p,O),O=r.add(O,D),D=r.add(B,B),B=r.add(D,B),B=r.add(B,F),B=r.mul(B,O),E=r.add(E,B),F=r.mul(x,A),F=r.add(F,F),B=r.mul(F,O),v=r.sub(v,B),D=r.mul(F,U),D=r.add(D,D),D=r.add(D,D),new l(v,E,D)}add(p){f(p);let{px:y,py:g,pz:b}=this,{px:x,py:A,pz:v}=p,E=r.ZERO,D=r.ZERO,B=r.ZERO,U=e.a,F=r.mul(e.b,sp),O=r.mul(y,x),M=r.mul(g,A),G=r.mul(b,v),Q=r.add(y,g),I=r.add(x,A);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(g,b),E=r.add(A,v),R=r.mul(R,E),E=r.add(M,G),R=r.sub(R,E),B=r.mul(U,I),E=r.mul(F,G),B=r.add(E,B),E=r.sub(M,B),B=r.add(M,B),D=r.mul(E,B),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),D=r.add(D,O),O=r.mul(R,I),E=r.mul(Q,E),E=r.sub(E,O),O=r.mul(Q,M),B=r.mul(R,B),B=r.add(B,O),new l(E,D,B)}subtract(p){return this.add(p.negate())}is0(){return this.equals(l.ZERO)}wNAF(p){return m.wNAFCached(this,u,p,y=>{let g=r.invertBatch(y.map(b=>b.pz));return y.map((b,x)=>b.toAffine(g[x])).map(l.fromAffine)})}multiplyUnsafe(p){let y=l.ZERO;if(p===yr)return y;if(a(p),p===Et)return this;let{endo:g}=e;if(!g)return m.unsafeLadder(this,p);let{k1neg:b,k1:x,k2neg:A,k2:v}=g.splitScalar(p),E=y,D=y,B=this;for(;x>yr||v>yr;)x&Et&&(E=E.add(B)),v&Et&&(D=D.add(B)),B=B.double(),x>>=Et,v>>=Et;return b&&(E=E.negate()),A&&(D=D.negate()),D=new l(r.mul(D.px,g.beta),D.py,D.pz),E.add(D)}multiply(p){a(p);let y=p,g,b,{endo:x}=e;if(x){let{k1neg:A,k1:v,k2neg:E,k2:D}=x.splitScalar(y),{p:B,f:U}=this.wNAF(v),{p:F,f:O}=this.wNAF(D);B=m.constTimeNegate(A,B),F=m.constTimeNegate(E,F),F=new l(r.mul(F.px,x.beta),F.py,F.pz),g=B.add(F),b=U.add(O)}else{let{p:A,f:v}=this.wNAF(y);g=A,b=v}return l.normalizeZ([g,b])[0]}multiplyAndAddUnsafe(p,y,g){let b=l.BASE,x=(v,E)=>E===yr||E===Et||!v.equals(b)?v.multiplyUnsafe(E):v.multiply(E),A=x(this,y).add(x(p,g));return A.is0()?void 0:A}toAffine(p){let{px:y,py:g,pz:b}=this,x=this.is0();p==null&&(p=x?r.ONE:r.inv(b));let A=r.mul(y,p),v=r.mul(g,p),E=r.mul(b,p);if(x)return{x:r.ZERO,y:r.ZERO};if(!r.eql(E,r.ONE))throw new Error("invZ was invalid");return{x:A,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,m=us(l,e.endo?Math.ceil(h/2):h);return{CURVE:e,ProjectivePoint:l,normPrivateKeyToScalar:c,weierstrassEquation:o,isWithinCurveOrder:s}}function Dv(t){let e=Ti(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=Dv(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`)}}),m=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 g{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 g(y(R,0,_),y(R,_,2*_))}static fromDER(R){let{r:_,s:k}=yn.toSig(Ee("DER",R));return new g(_,k)}assertValidity(){if(!h(this.r))throw new Error("r must be 0 < r < CURVE.n");if(!h(this.s))throw new Error("s must be 0 < s < CURVE.n")}addRecoveryBit(R){return new g(this.r,this.s,R)}recoverPublicKey(R){let{r:_,s:k,recovery:S}=this,P=D(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+m(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 g(this.r,a(-this.s),this.recovery):this}toDERRawBytes(){return on(this.toDERHex())}toDERHex(){return yn.hexFromSig({r:this.r,s:this.s})}toCompactRawBytes(){return on(this.toCompactHex())}toCompactHex(){return m(this.r)+m(this.s)}}let b={isValidPrivateKey(I){try{return f(I),!0}catch{return!1}},normPrivateKeyToScalar:f,randomPrivateKey:()=>{let I=jc(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 A(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(A(I))throw new Error("first arg must be private key");if(!A(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},D=e.bits2int_modN||function(I){return a(E(I))},B=Ii(e.nBitLength);function U(I){if(typeof I!="bigint")throw new Error("bigint expected");if(!(yr<=I&&I<B))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=D(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 g(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 $c(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=g.fromDER(S)}catch(Fe){if(!(Fe instanceof yn.Err))throw Fe;H=g.fromCompact(S)}else if(typeof S=="object"&&typeof S.r=="bigint"&&typeof S.s=="bigint"){let{r:Fe,s:et}=S;H=new g(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=D(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:g,utils:b}}function Bv(t){return{hash:t,hmac:(e,...r)=>Gn(t,e,ts(...r)),randomBytes:nn}}function cp(t,e){let r=n=>ap({...t,...Bv(n)});return Object.freeze({...r(e),create:r})}var lp=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),up=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),Iv=BigInt(1),O0=BigInt(2),fp=(t,e)=>(t+e/O0)/e;function Tv(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,m=Se(h,O0,e)*u%e,d=Se(m,i,e)*m%e,p=Se(d,o,e)*d%e,y=Se(p,a,e)*p%e,g=Se(y,c,e)*y%e,b=Se(g,a,e)*p%e,x=Se(b,r,e)*f%e,A=Se(x,s,e)*d%e,v=Se(A,n,e)*u%e,E=Se(v,O0,e);if(!F0.eql(F0.sqr(E),t))throw new Error("Cannot find square root");return E}var F0=cs(lp,void 0,void 0,{sqrt:Tv}),mr=cp({a:BigInt(0),b:BigInt(7),Fp:F0,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=-Iv*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),SI=BigInt(0);var AI=mr.ProjectivePoint;function hp(){return mr.utils.randomPrivateKey()}async function dp(t,e){let{digest:r}=await Ye.digest(e);try{return mr.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 mr.verify(e,n,t)}catch(n){throw new W(String(n),"ERR_INVALID_INPUT")}}function yp(t){return mr.ProjectivePoint.fromHex(t).toRawBytes(!0)}function mp(t){try{mr.getPublicKey(t,!0)}catch(e){throw new W(String(e),"ERR_INVALID_PRIVATE_KEY")}}function K0(t){try{mr.ProjectivePoint.fromHex(t)}catch(e){throw new W(String(e),"ERR_INVALID_PUBLIC_KEY")}}function gp(t){try{return mr.getPublicKey(t,!0)}catch(e){throw new W(String(e),"ERR_INVALID_PRIVATE_KEY")}}var Wi=class{_key;constructor(e){K0(e),this._key=e}async verify(e,r){return pp(this._key,r,e)}marshal(){return yp(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}},$i=class{_key;_publicKey;constructor(e,r){this._key=e,this._publicKey=r??gp(e),mp(this._key),K0(this._publicKey)}async sign(e){return dp(this._key,e)}get public(){return new Wi(this._publicKey)}marshal(){return this._key}get bytes(){return Qt.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 kv(t){return new $i(t)}function Rv(t){return new Wi(t)}async function Lv(){let t=hp();return new $i(t)}var mn={rsa:U0,ed25519:k0,secp256k1:M0};function xp(t){let e=Object.keys(mn).join(" / ");return new W(`invalid or unsupported key type ${t}. Must be ${e}`,"ERR_UNSUPPORTED_KEY_TYPE")}function bp(t){let e=Zt.decode(t),r=e.Data??new Uint8Array;switch(e.Type){case Ie.RSA:return mn.rsa.unmarshalRsaPublicKey(r);case Ie.Ed25519:return mn.ed25519.unmarshalEd25519PublicKey(r);case Ie.Secp256k1:return mn.secp256k1.unmarshalSecp256k1PublicKey(r);default:throw xp(e.Type??"unknown")}}async function wp(t){let e=Qt.decode(t),r=e.Data??new Uint8Array;switch(e.Type){case Ie.RSA:return mn.rsa.unmarshalRsaPrivateKey(r);case Ie.Ed25519:return mn.ed25519.unmarshalEd25519PrivateKey(r);case Ie.Secp256k1:return mn.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 Yi;(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())})(Yi||(Yi={}));async function vp(t,e,r){let n=await Uv(t,Ep(e));if(t.publicKey==null)throw new Error("PublicKey was missing from local PeerId");return Pv(t.publicKey,n,r)}function Pv(t,e,r){return Yi.encode({identityKey:t,identitySig:e,extensions:r??{webtransportCerthashes:[]}}).subarray()}async function Uv(t,e){if(t.privateKey==null)throw new Error("PrivateKey was missing from PeerId");return(await wp(t.privateKey)).sign(e)}async function V0(t){return Ca(t.identityKey)}function H0(t){return Yi.decode(t)}function Ep(t){let e=we("noise-libp2p-static-key:");return pe([e,t],e.length+t.length)}async function q0(t,e,r){let n=await Ca(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 Xi(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 z0(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 Ap(t){St(`REMOTE_STATIC_PUBLIC_KEY ${se(t,"hex")}`)}function G0(t){St(`REMOTE_EPHEMERAL_PUBLIC_KEY ${se(t,"hex")}`)}function Cp(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 Ov="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(Ov)}};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 Xi(r.ne)&&(e.re=r.ne),this.mixHash(e.ss,e.re),this.decryptAndHash(e.ss,r.ciphertext)}readMessageB(e,r){if(Xi(r.ne)&&(e.re=r.ne),this.mixHash(e.ss,e.re),!e.e)throw new Error("Handshake state `e` param is missing.");this.mixKey(e.ss,this.dh(e.e.privateKey,e.re));let{plaintext:n,valid:i}=this.decryptAndHash(e.ss,r.ns);i&&Xi(n)&&(e.rs=n),this.mixKey(e.ss,this.dh(e.e.privateKey,e.rs));let{plaintext:o,valid:s}=this.decryptAndHash(e.ss,r.ciphertext);return{plaintext:o,valid:i&&s}}readMessageC(e,r){let{plaintext:n,valid:i}=this.decryptAndHash(e.ss,r.ns);if(i&&Xi(n)&&(e.rs=n),!e.e)throw new Error("Handshake state `e` param is missing.");this.mixKey(e.ss,this.dh(e.e.privateKey,e.rs));let{plaintext:o,valid:s}=this.decryptAndHash(e.ss,r.ciphertext),{cs1:a,cs2:c}=this.split(e.ss);return{h:e.ss.h,plaintext:o,valid:i&&s,cs1:a,cs2:c}}initSession(e,r,n){let i=this.createEmptyKey(),o=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."),z0(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."),G0(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."),G0(this.session.hs.re),Ap(this.session.hs.rs),ze.trace("Initiator going to check remote's signature...");try{let i=H0(r);this.remotePeer=this.remotePeer||await V0(i),await q0(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."),z0(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=H0(r);this.remotePeer=this.remotePeer||await V0(i),await q0(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}`)}}Cp(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??o0,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=Di(r,{lengthEncoder:$n,lengthDecoder:Li,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=Di(r,{lengthEncoder:$n,lengthDecoder:Li,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]=Cl(),o=e.unwrap();return await Bl(n,xh(r,this.metrics),o,s=>rr(s,{lengthDecoder:Li}),bh(r,this.metrics),n),i}};function Bp(t={}){return()=>new Ms(t)}var n2=$e(vu(),1);var Z1=$e(vu(),1);var Eu=ke("libp2p:webrtc:sdp"),Su=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){Eu.trace("fetching fingerprint from local SDP");let n=t.localDescription;return n==null?void 0:z3(n.sdp)}if(Eu.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 q3=/^a=fingerprint:(?:\w+-[0-9]+)\s(?<fingerprint>(:?[0-9a-fA-F]{2})+)$/m;function z3(t){return t.match(q3)?.groups?.fingerprint}function G3(t){for(let e of t.protoNames())if(e.startsWith("ip"))return e.toUpperCase();return Eu("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 Eo(`Couldn't find a certhash component of multiaddr: ${t.toString()}`);return r}function Au(t){let e=Su.decode(t);return Z1.decode(e)}function W3(t){let e=Au(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 $3(t,e){let{host:r,port:n}=t.toOptions(),i=G3(t),[o]=W3(t);return`v=0
31
31
  o=- 0 0 IN ${i} ${r}
32
32
  s=-
33
33
  c=IN ${i} ${r}
@@ -36,17 +36,17 @@ a=ice-lite
36
36
  m=application ${n} UDP/DTLS/SCTP webrtc-datachannel
37
37
  a=mid:0
38
38
  a=setup:passive
39
- a=ice-ufrag:${t}
40
- a=ice-pwd:${t}
39
+ a=ice-ufrag:${e}
40
+ a=ice-pwd:${e}
41
41
  a=fingerprint:${o}
42
42
  a=sctp-port:5000
43
43
  a=max-message-size:16384
44
44
  a=candidate:1467250027 1 UDP 1467250027 ${r} ${n} typ host\r
45
- `}function q2(e,t){return{type:"answer",sdp:qE(e,t)}}function H2(e,t){if(e.sdp===void 0)throw Ti("Can't munge a missing SDP");return e.sdp=e.sdp.replace(/\na=ice-ufrag:[^\n]*\n/,`
46
- a=ice-ufrag:`+t+`
45
+ `}function j1(t,e){return{type:"answer",sdp:$3(t,e)}}function J1(t,e){if(t.sdp===void 0)throw wi("Can't munge a missing SDP");return t.sdp=t.sdp.replace(/\na=ice-ufrag:[^\n]*\n/,`
46
+ a=ice-ufrag:`+e+`
47
47
  `).replace(/\na=ice-pwd:[^\n]*\n/,`
48
- a=ice-pwd:`+t+`
49
- `),e}var G2=Array.from("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"),W2=e=>[...Array(e)].map(()=>G2.at(Math.floor(Math.random()*G2.length))).join("");var ua=Ne("libp2p:webrtc:transport"),zE=1e4,aR=be("webrtc-direct").code,z2=be("certhash").code,fa=class{metrics;components;init;constructor(t,r={}){this.components=t,this.init=r,t.metrics!=null&&(this.metrics={dialerEvents:t.metrics.registerCounterGroup("libp2p_webrtc-direct_dialer_events_total",{label:"event",help:"Total count of WebRTC-direct dial events by type"})})}async dial(t,r){let n=await this._connect(t,r);return ua("dialing address: %a",t),n}createListener(t){throw $f("WebRTCTransport.createListener")}filter(t){return t.filter(zf.exactMatch)}[Symbol.toStringTag]="@libp2p/webrtc-direct";[po]=!0;async _connect(t,r){let n=new AbortController,i=n.signal,o=t.getPeerId();if(o===null)throw _o("we need to have the remote's PeerId");let s=Qr(o),a=Pu(ca(t)),c=await Yn.generateCertificate({name:"ECDSA",namedCurve:"P-256",hash:Uu(a.name)}),u=new Yn({certificates:[c]});try{let f=new Promise((B,R)=>{let F=u.createDataChannel("",{negotiated:!0,id:0}),O=setTimeout(()=>{let K=`Data channel was never opened: state: ${F.readyState}`;ua.error(K),this.metrics?.dialerEvents.increment({open_error:!0}),R(fc("data",K))},zE);F.onopen=K=>{clearTimeout(O),B(F)},F.onerror=K=>{clearTimeout(O);let j=`Error opening a data channel for handshaking: ${K.target?.toString()??"not specified"}`;ua.error(j),this.metrics?.dialerEvents.increment({unknown_error:!0}),R(fc("data",j))}}),l="libp2p+webrtc+v1/"+W2(32),h=await u.createOffer(),y=H2(h,l);await u.setLocalDescription(y);let d=q2(t,l);await u.setRemoteDescription(d);let p=await f,g=this.components.peerId,m=this.generateNoisePrologue(u,a.code,t),v=m1({prologueBytes:m})(),x=$n({channel:p,direction:"inbound",...this.init.dataChannel??{}}),A={...x,sink:x.sink.bind(x),source:async function*(){for await(let B of x.source)for(let R of B)yield R}()},w=new Jr({peerConnection:u,remoteAddr:t,timeline:{open:Date.now()},metrics:this.metrics?.dialerEvents}),E=_i?"iceconnectionstatechange":"connectionstatechange";u.addEventListener(E,()=>{switch(u.connectionState){case"failed":case"disconnected":case"closed":w.close().catch(B=>{ua.error("error closing connection",B)}).finally(()=>{n.abort()});break;default:break}},{signal:i}),this.metrics?.dialerEvents.increment({peer_connection:!0});let D=new cn({peerConnection:u,metrics:this.metrics?.dialerEvents,dataChannelOptions:this.init.dataChannel});return await v.secureInbound(g,A,s),await r.upgrader.upgradeOutbound(w,{skipProtection:!0,skipEncryption:!0,muxerFactory:D})}catch(f){throw u.close(),f}}generateNoisePrologue(t,r,n){if(t.getConfiguration().certificates?.length===0)throw Ti("no local certificate");let i=V2(t);if(i==null)throw Ti("no local fingerprint found");let o=i.trim().toLowerCase().replaceAll(":",""),s=Be(o,"hex"),a=$2.encode(s,r),c=Nu.decode(ca(n)),u=Be("libp2p-webrtc-noise:");return ge([u,a,c])}};function GE(e){return t=>new fa(t,e)}function WE(e){return t=>new is(t,e)}return ho($E);})();
48
+ a=ice-pwd:`+e+`
49
+ `),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"),X3=1e4,pk=ge("webrtc-direct").code,e2=ge("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";[oo]=!0;async _connect(e,r){let n=new AbortController,i=n.signal,o=e.getPeerId();if(o===null)throw Eo("we need to have the remote's PeerId");let s=qr(o),a=Au(js(e)),c=await Fn.generateCertificate({name:"ECDSA",namedCurve:"P-256",hash:Cu(a.name)}),u=new Fn({certificates:[c]});try{let f=new Promise((B,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))},X3);F.onopen=M=>{clearTimeout(O),B(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(),m=J1(h,l);await u.setLocalDescription(m);let d=j1(e,l);await u.setRemoteDescription(d);let p=await f,y=this.components.peerId,g=this.generateNoisePrologue(u,a.code,e),b=Bp({prologueBytes:g})(),x=On({channel:p,direction:"inbound",...this.init.dataChannel??{}}),A={...x,sink:x.sink.bind(x),source:async function*(){for await(let B of x.source)for(let U of B)yield U}()},v=new Gr({peerConnection:u,remoteAddr:e,timeline:{open:Date.now()},metrics:this.metrics?.dialerEvents}),E=vi?"iceconnectionstatechange":"connectionstatechange";u.addEventListener(E,()=>{switch(u.connectionState){case"failed":case"disconnected":case"closed":v.close().catch(B=>{Js.error("error closing connection",B)}).finally(()=>{n.abort()});break;default:break}},{signal:i}),this.metrics?.dialerEvents.increment({peer_connection:!0});let D=new jr({peerConnection:u,metrics:this.metrics?.dialerEvents,dataChannelOptions:this.init.dataChannel});return await b.secureInbound(y,A,s),await r.upgrader.upgradeOutbound(v,{skipProtection:!0,skipEncryption:!0,muxerFactory:D})}catch(f){throw u.close(),f}}generateNoisePrologue(e,r,n){if(e.getConfiguration().certificates?.length===0)throw wi("no local certificate");let i=Q1(e);if(i==null)throw wi("no local fingerprint found");let o=i.trim().toLowerCase().replaceAll(":",""),s=we(o,"hex"),a=n2.encode(s,r),c=Su.decode(js(n)),u=we("libp2p-webrtc-noise:");return pe([u,a,c])}};function Z3(t){return e=>new ea(e,t)}function Q3(t){return e=>new $o(e,t)}return io(j3);})();
50
50
  /*! Bundled license information:
51
51
 
52
52
  @noble/ciphers/esm/utils.js: