@did-btcr2/method 0.62.0 → 0.63.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +5 -1
- package/dist/.tsbuildinfo +1 -1
- package/dist/browser.js +3 -3
- package/dist/browser.mjs +3 -3
- package/dist/cjs/index.js +199 -149
- package/dist/esm/core/beacon/signal-discovery.js +34 -1
- package/dist/esm/core/beacon/signal-discovery.js.map +1 -1
- package/dist/esm/core/resolver.js +205 -195
- package/dist/esm/core/resolver.js.map +1 -1
- package/dist/types/core/beacon/interfaces.d.ts +9 -1
- package/dist/types/core/beacon/interfaces.d.ts.map +1 -1
- package/dist/types/core/beacon/signal-discovery.d.ts +12 -0
- package/dist/types/core/beacon/signal-discovery.d.ts.map +1 -1
- package/dist/types/core/interfaces.d.ts +16 -5
- package/dist/types/core/interfaces.d.ts.map +1 -1
- package/dist/types/core/resolver.d.ts +3 -23
- package/dist/types/core/resolver.d.ts.map +1 -1
- package/package.json +3 -3
- package/src/core/beacon/interfaces.ts +10 -1
- package/src/core/beacon/signal-discovery.ts +44 -1
- package/src/core/interfaces.ts +16 -5
- package/src/core/resolver.ts +248 -243
package/dist/browser.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
"use strict";var BTCR2=(()=>{var EB=Object.create;var Of=Object.defineProperty;var vB=Object.getOwnPropertyDescriptor;var SB=Object.getOwnPropertyNames;var AB=Object.getPrototypeOf,TB=Object.prototype.hasOwnProperty;var _B=(t,e)=>()=>(t&&(e=t(t=0)),e);var oe=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),Su=(t,e)=>{for(var r in e)Of(t,r,{get:e[r],enumerable:!0})},mx=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of SB(e))!TB.call(t,i)&&i!==r&&Of(t,i,{get:()=>e[i],enumerable:!(n=vB(e,i))||n.enumerable});return t};var Mn=(t,e,r)=>(r=t!=null?EB(AB(t)):{},mx(e||!t||!t.__esModule?Of(r,"default",{value:t,enumerable:!0}):r,t)),IB=t=>mx(Of({},"__esModule",{value:!0}),t);var xx=oe(Df=>{"use strict";l();Df.byteLength=RB;Df.toByteArray=OB;Df.fromByteArray=NB;var Kn=[],Yr=[],BB=typeof Uint8Array<"u"?Uint8Array:Array,ay="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";for(ys=0,wx=ay.length;ys<wx;++ys)Kn[ys]=ay[ys],Yr[ay.charCodeAt(ys)]=ys;var ys,wx;Yr[45]=62;Yr[95]=63;function bx(t){var e=t.length;if(e%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var r=t.indexOf("=");r===-1&&(r=e);var n=r===e?0:4-r%4;return[r,n]}function RB(t){var e=bx(t),r=e[0],n=e[1];return(r+n)*3/4-n}function UB(t,e,r){return(e+r)*3/4-r}function OB(t){var e,r=bx(t),n=r[0],i=r[1],o=new BB(UB(t,n,i)),s=0,c=i>0?n-4:n,a;for(a=0;a<c;a+=4)e=Yr[t.charCodeAt(a)]<<18|Yr[t.charCodeAt(a+1)]<<12|Yr[t.charCodeAt(a+2)]<<6|Yr[t.charCodeAt(a+3)],o[s++]=e>>16&255,o[s++]=e>>8&255,o[s++]=e&255;return i===2&&(e=Yr[t.charCodeAt(a)]<<2|Yr[t.charCodeAt(a+1)]>>4,o[s++]=e&255),i===1&&(e=Yr[t.charCodeAt(a)]<<10|Yr[t.charCodeAt(a+1)]<<4|Yr[t.charCodeAt(a+2)]>>2,o[s++]=e>>8&255,o[s++]=e&255),o}function DB(t){return Kn[t>>18&63]+Kn[t>>12&63]+Kn[t>>6&63]+Kn[t&63]}function kB(t,e,r){for(var n,i=[],o=e;o<r;o+=3)n=(t[o]<<16&16711680)+(t[o+1]<<8&65280)+(t[o+2]&255),i.push(DB(n));return i.join("")}function NB(t){for(var e,r=t.length,n=r%3,i=[],o=16383,s=0,c=r-n;s<c;s+=o)i.push(kB(t,s,s+o>c?c:s+o));return n===1?(e=t[r-1],i.push(Kn[e>>2]+Kn[e<<4&63]+"==")):n===2&&(e=(t[r-2]<<8)+t[r-1],i.push(Kn[e>>10]+Kn[e>>4&63]+Kn[e<<2&63]+"=")),i.join("")}});var Ex=oe(uy=>{l();uy.read=function(t,e,r,n,i){var o,s,c=i*8-n-1,a=(1<<c)-1,u=a>>1,d=-7,f=r?i-1:0,h=r?-1:1,p=t[e+f];for(f+=h,o=p&(1<<-d)-1,p>>=-d,d+=c;d>0;o=o*256+t[e+f],f+=h,d-=8);for(s=o&(1<<-d)-1,o>>=-d,d+=n;d>0;s=s*256+t[e+f],f+=h,d-=8);if(o===0)o=1-u;else{if(o===a)return s?NaN:(p?-1:1)*(1/0);s=s+Math.pow(2,n),o=o-u}return(p?-1:1)*s*Math.pow(2,o-n)};uy.write=function(t,e,r,n,i,o){var s,c,a,u=o*8-i-1,d=(1<<u)-1,f=d>>1,h=i===23?Math.pow(2,-24)-Math.pow(2,-77):0,p=n?0:o-1,g=n?1:-1,y=e<0||e===0&&1/e<0?1:0;for(e=Math.abs(e),isNaN(e)||e===1/0?(c=isNaN(e)?1:0,s=d):(s=Math.floor(Math.log(e)/Math.LN2),e*(a=Math.pow(2,-s))<1&&(s--,a*=2),s+f>=1?e+=h/a:e+=h*Math.pow(2,1-f),e*a>=2&&(s++,a/=2),s+f>=d?(c=0,s=d):s+f>=1?(c=(e*a-1)*Math.pow(2,i),s=s+f):(c=e*Math.pow(2,f-1)*Math.pow(2,i),s=0));i>=8;t[r+p]=c&255,p+=g,c/=256,i-=8);for(s=s<<i|c,u+=i;u>0;t[r+p]=s&255,p+=g,s/=256,u-=8);t[r+p-g]|=y*128}});var Tr=oe(Cc=>{"use strict";l();var dy=xx(),Nc=Ex(),vx=typeof Symbol=="function"&&typeof Symbol.for=="function"?Symbol.for("nodejs.util.inspect.custom"):null;Cc.Buffer=F;Cc.SlowBuffer=$B;Cc.INSPECT_MAX_BYTES=50;var kf=2147483647;Cc.kMaxLength=kf;F.TYPED_ARRAY_SUPPORT=CB();!F.TYPED_ARRAY_SUPPORT&&typeof console<"u"&&typeof console.error=="function"&&console.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support.");function CB(){try{var t=new Uint8Array(1),e={foo:function(){return 42}};return Object.setPrototypeOf(e,Uint8Array.prototype),Object.setPrototypeOf(t,e),t.foo()===42}catch{return!1}}Object.defineProperty(F.prototype,"parent",{enumerable:!0,get:function(){if(F.isBuffer(this))return this.buffer}});Object.defineProperty(F.prototype,"offset",{enumerable:!0,get:function(){if(F.isBuffer(this))return this.byteOffset}});function wi(t){if(t>kf)throw new RangeError('The value "'+t+'" is invalid for option "size"');var e=new Uint8Array(t);return Object.setPrototypeOf(e,F.prototype),e}function F(t,e,r){if(typeof t=="number"){if(typeof e=="string")throw new TypeError('The "string" argument must be of type string. Received type number');return py(t)}return Tx(t,e,r)}F.poolSize=8192;function Tx(t,e,r){if(typeof t=="string")return PB(t,e);if(ArrayBuffer.isView(t))return MB(t);if(t==null)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof t);if($n(t,ArrayBuffer)||t&&$n(t.buffer,ArrayBuffer)||typeof SharedArrayBuffer<"u"&&($n(t,SharedArrayBuffer)||t&&$n(t.buffer,SharedArrayBuffer)))return ly(t,e,r);if(typeof t=="number")throw new TypeError('The "value" argument must not be of type number. Received type number');var n=t.valueOf&&t.valueOf();if(n!=null&&n!==t)return F.from(n,e,r);var i=KB(t);if(i)return i;if(typeof Symbol<"u"&&Symbol.toPrimitive!=null&&typeof t[Symbol.toPrimitive]=="function")return F.from(t[Symbol.toPrimitive]("string"),e,r);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof t)}F.from=function(t,e,r){return Tx(t,e,r)};Object.setPrototypeOf(F.prototype,Uint8Array.prototype);Object.setPrototypeOf(F,Uint8Array);function _x(t){if(typeof t!="number")throw new TypeError('"size" argument must be of type number');if(t<0)throw new RangeError('The value "'+t+'" is invalid for option "size"')}function LB(t,e,r){return _x(t),t<=0?wi(t):e!==void 0?typeof r=="string"?wi(t).fill(e,r):wi(t).fill(e):wi(t)}F.alloc=function(t,e,r){return LB(t,e,r)};function py(t){return _x(t),wi(t<0?0:yy(t)|0)}F.allocUnsafe=function(t){return py(t)};F.allocUnsafeSlow=function(t){return py(t)};function PB(t,e){if((typeof e!="string"||e==="")&&(e="utf8"),!F.isEncoding(e))throw new TypeError("Unknown encoding: "+e);var r=Ix(t,e)|0,n=wi(r),i=n.write(t,e);return i!==r&&(n=n.slice(0,i)),n}function fy(t){for(var e=t.length<0?0:yy(t.length)|0,r=wi(e),n=0;n<e;n+=1)r[n]=t[n]&255;return r}function MB(t){if($n(t,Uint8Array)){var e=new Uint8Array(t);return ly(e.buffer,e.byteOffset,e.byteLength)}return fy(t)}function ly(t,e,r){if(e<0||t.byteLength<e)throw new RangeError('"offset" is outside of buffer bounds');if(t.byteLength<e+(r||0))throw new RangeError('"length" is outside of buffer bounds');var n;return e===void 0&&r===void 0?n=new Uint8Array(t):r===void 0?n=new Uint8Array(t,e):n=new Uint8Array(t,e,r),Object.setPrototypeOf(n,F.prototype),n}function KB(t){if(F.isBuffer(t)){var e=yy(t.length)|0,r=wi(e);return r.length===0||t.copy(r,0,0,e),r}if(t.length!==void 0)return typeof t.length!="number"||gy(t.length)?wi(0):fy(t);if(t.type==="Buffer"&&Array.isArray(t.data))return fy(t.data)}function yy(t){if(t>=kf)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+kf.toString(16)+" bytes");return t|0}function $B(t){return+t!=t&&(t=0),F.alloc(+t)}F.isBuffer=function(e){return e!=null&&e._isBuffer===!0&&e!==F.prototype};F.compare=function(e,r){if($n(e,Uint8Array)&&(e=F.from(e,e.offset,e.byteLength)),$n(r,Uint8Array)&&(r=F.from(r,r.offset,r.byteLength)),!F.isBuffer(e)||!F.isBuffer(r))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(e===r)return 0;for(var n=e.length,i=r.length,o=0,s=Math.min(n,i);o<s;++o)if(e[o]!==r[o]){n=e[o],i=r[o];break}return n<i?-1:i<n?1:0};F.isEncoding=function(e){switch(String(e).toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"latin1":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return!0;default:return!1}};F.concat=function(e,r){if(!Array.isArray(e))throw new TypeError('"list" argument must be an Array of Buffers');if(e.length===0)return F.alloc(0);var n;if(r===void 0)for(r=0,n=0;n<e.length;++n)r+=e[n].length;var i=F.allocUnsafe(r),o=0;for(n=0;n<e.length;++n){var s=e[n];if($n(s,Uint8Array))o+s.length>i.length?F.from(s).copy(i,o):Uint8Array.prototype.set.call(i,s,o);else if(F.isBuffer(s))s.copy(i,o);else throw new TypeError('"list" argument must be an Array of Buffers');o+=s.length}return i};function Ix(t,e){if(F.isBuffer(t))return t.length;if(ArrayBuffer.isView(t)||$n(t,ArrayBuffer))return t.byteLength;if(typeof t!="string")throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof t);var r=t.length,n=arguments.length>2&&arguments[2]===!0;if(!n&&r===0)return 0;for(var i=!1;;)switch(e){case"ascii":case"latin1":case"binary":return r;case"utf8":case"utf-8":return hy(t).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return r*2;case"hex":return r>>>1;case"base64":return kx(t).length;default:if(i)return n?-1:hy(t).length;e=(""+e).toLowerCase(),i=!0}}F.byteLength=Ix;function HB(t,e,r){var n=!1;if((e===void 0||e<0)&&(e=0),e>this.length||((r===void 0||r>this.length)&&(r=this.length),r<=0)||(r>>>=0,e>>>=0,r<=e))return"";for(t||(t="utf8");;)switch(t){case"hex":return XB(this,e,r);case"utf8":case"utf-8":return Rx(this,e,r);case"ascii":return YB(this,e,r);case"latin1":case"binary":return JB(this,e,r);case"base64":return GB(this,e,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return ZB(this,e,r);default:if(n)throw new TypeError("Unknown encoding: "+t);t=(t+"").toLowerCase(),n=!0}}F.prototype._isBuffer=!0;function gs(t,e,r){var n=t[e];t[e]=t[r],t[r]=n}F.prototype.swap16=function(){var e=this.length;if(e%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(var r=0;r<e;r+=2)gs(this,r,r+1);return this};F.prototype.swap32=function(){var e=this.length;if(e%4!==0)throw new RangeError("Buffer size must be a multiple of 32-bits");for(var r=0;r<e;r+=4)gs(this,r,r+3),gs(this,r+1,r+2);return this};F.prototype.swap64=function(){var e=this.length;if(e%8!==0)throw new RangeError("Buffer size must be a multiple of 64-bits");for(var r=0;r<e;r+=8)gs(this,r,r+7),gs(this,r+1,r+6),gs(this,r+2,r+5),gs(this,r+3,r+4);return this};F.prototype.toString=function(){var e=this.length;return e===0?"":arguments.length===0?Rx(this,0,e):HB.apply(this,arguments)};F.prototype.toLocaleString=F.prototype.toString;F.prototype.equals=function(e){if(!F.isBuffer(e))throw new TypeError("Argument must be a Buffer");return this===e?!0:F.compare(this,e)===0};F.prototype.inspect=function(){var e="",r=Cc.INSPECT_MAX_BYTES;return e=this.toString("hex",0,r).replace(/(.{2})/g,"$1 ").trim(),this.length>r&&(e+=" ... "),"<Buffer "+e+">"};vx&&(F.prototype[vx]=F.prototype.inspect);F.prototype.compare=function(e,r,n,i,o){if($n(e,Uint8Array)&&(e=F.from(e,e.offset,e.byteLength)),!F.isBuffer(e))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof e);if(r===void 0&&(r=0),n===void 0&&(n=e?e.length:0),i===void 0&&(i=0),o===void 0&&(o=this.length),r<0||n>e.length||i<0||o>this.length)throw new RangeError("out of range index");if(i>=o&&r>=n)return 0;if(i>=o)return-1;if(r>=n)return 1;if(r>>>=0,n>>>=0,i>>>=0,o>>>=0,this===e)return 0;for(var s=o-i,c=n-r,a=Math.min(s,c),u=this.slice(i,o),d=e.slice(r,n),f=0;f<a;++f)if(u[f]!==d[f]){s=u[f],c=d[f];break}return s<c?-1:c<s?1:0};function Bx(t,e,r,n,i){if(t.length===0)return-1;if(typeof r=="string"?(n=r,r=0):r>2147483647?r=2147483647:r<-2147483648&&(r=-2147483648),r=+r,gy(r)&&(r=i?0:t.length-1),r<0&&(r=t.length+r),r>=t.length){if(i)return-1;r=t.length-1}else if(r<0)if(i)r=0;else return-1;if(typeof e=="string"&&(e=F.from(e,n)),F.isBuffer(e))return e.length===0?-1:Sx(t,e,r,n,i);if(typeof e=="number")return e=e&255,typeof Uint8Array.prototype.indexOf=="function"?i?Uint8Array.prototype.indexOf.call(t,e,r):Uint8Array.prototype.lastIndexOf.call(t,e,r):Sx(t,[e],r,n,i);throw new TypeError("val must be string, number or Buffer")}function Sx(t,e,r,n,i){var o=1,s=t.length,c=e.length;if(n!==void 0&&(n=String(n).toLowerCase(),n==="ucs2"||n==="ucs-2"||n==="utf16le"||n==="utf-16le")){if(t.length<2||e.length<2)return-1;o=2,s/=2,c/=2,r/=2}function a(p,g){return o===1?p[g]:p.readUInt16BE(g*o)}var u;if(i){var d=-1;for(u=r;u<s;u++)if(a(t,u)===a(e,d===-1?0:u-d)){if(d===-1&&(d=u),u-d+1===c)return d*o}else d!==-1&&(u-=u-d),d=-1}else for(r+c>s&&(r=s-c),u=r;u>=0;u--){for(var f=!0,h=0;h<c;h++)if(a(t,u+h)!==a(e,h)){f=!1;break}if(f)return u}return-1}F.prototype.includes=function(e,r,n){return this.indexOf(e,r,n)!==-1};F.prototype.indexOf=function(e,r,n){return Bx(this,e,r,n,!0)};F.prototype.lastIndexOf=function(e,r,n){return Bx(this,e,r,n,!1)};function VB(t,e,r,n){r=Number(r)||0;var i=t.length-r;n?(n=Number(n),n>i&&(n=i)):n=i;var o=e.length;n>o/2&&(n=o/2);for(var s=0;s<n;++s){var c=parseInt(e.substr(s*2,2),16);if(gy(c))return s;t[r+s]=c}return s}function qB(t,e,r,n){return Nf(hy(e,t.length-r),t,r,n)}function FB(t,e,r,n){return Nf(t8(e),t,r,n)}function jB(t,e,r,n){return Nf(kx(e),t,r,n)}function WB(t,e,r,n){return Nf(r8(e,t.length-r),t,r,n)}F.prototype.write=function(e,r,n,i){if(r===void 0)i="utf8",n=this.length,r=0;else if(n===void 0&&typeof r=="string")i=r,n=this.length,r=0;else if(isFinite(r))r=r>>>0,isFinite(n)?(n=n>>>0,i===void 0&&(i="utf8")):(i=n,n=void 0);else throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");var o=this.length-r;if((n===void 0||n>o)&&(n=o),e.length>0&&(n<0||r<0)||r>this.length)throw new RangeError("Attempt to write outside buffer bounds");i||(i="utf8");for(var s=!1;;)switch(i){case"hex":return VB(this,e,r,n);case"utf8":case"utf-8":return qB(this,e,r,n);case"ascii":case"latin1":case"binary":return FB(this,e,r,n);case"base64":return jB(this,e,r,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return WB(this,e,r,n);default:if(s)throw new TypeError("Unknown encoding: "+i);i=(""+i).toLowerCase(),s=!0}};F.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function GB(t,e,r){return e===0&&r===t.length?dy.fromByteArray(t):dy.fromByteArray(t.slice(e,r))}function Rx(t,e,r){r=Math.min(t.length,r);for(var n=[],i=e;i<r;){var o=t[i],s=null,c=o>239?4:o>223?3:o>191?2:1;if(i+c<=r){var a,u,d,f;switch(c){case 1:o<128&&(s=o);break;case 2:a=t[i+1],(a&192)===128&&(f=(o&31)<<6|a&63,f>127&&(s=f));break;case 3:a=t[i+1],u=t[i+2],(a&192)===128&&(u&192)===128&&(f=(o&15)<<12|(a&63)<<6|u&63,f>2047&&(f<55296||f>57343)&&(s=f));break;case 4:a=t[i+1],u=t[i+2],d=t[i+3],(a&192)===128&&(u&192)===128&&(d&192)===128&&(f=(o&15)<<18|(a&63)<<12|(u&63)<<6|d&63,f>65535&&f<1114112&&(s=f))}}s===null?(s=65533,c=1):s>65535&&(s-=65536,n.push(s>>>10&1023|55296),s=56320|s&1023),n.push(s),i+=c}return zB(n)}var Ax=4096;function zB(t){var e=t.length;if(e<=Ax)return String.fromCharCode.apply(String,t);for(var r="",n=0;n<e;)r+=String.fromCharCode.apply(String,t.slice(n,n+=Ax));return r}function YB(t,e,r){var n="";r=Math.min(t.length,r);for(var i=e;i<r;++i)n+=String.fromCharCode(t[i]&127);return n}function JB(t,e,r){var n="";r=Math.min(t.length,r);for(var i=e;i<r;++i)n+=String.fromCharCode(t[i]);return n}function XB(t,e,r){var n=t.length;(!e||e<0)&&(e=0),(!r||r<0||r>n)&&(r=n);for(var i="",o=e;o<r;++o)i+=n8[t[o]];return i}function ZB(t,e,r){for(var n=t.slice(e,r),i="",o=0;o<n.length-1;o+=2)i+=String.fromCharCode(n[o]+n[o+1]*256);return i}F.prototype.slice=function(e,r){var n=this.length;e=~~e,r=r===void 0?n:~~r,e<0?(e+=n,e<0&&(e=0)):e>n&&(e=n),r<0?(r+=n,r<0&&(r=0)):r>n&&(r=n),r<e&&(r=e);var i=this.subarray(e,r);return Object.setPrototypeOf(i,F.prototype),i};function Ot(t,e,r){if(t%1!==0||t<0)throw new RangeError("offset is not uint");if(t+e>r)throw new RangeError("Trying to access beyond buffer length")}F.prototype.readUintLE=F.prototype.readUIntLE=function(e,r,n){e=e>>>0,r=r>>>0,n||Ot(e,r,this.length);for(var i=this[e],o=1,s=0;++s<r&&(o*=256);)i+=this[e+s]*o;return i};F.prototype.readUintBE=F.prototype.readUIntBE=function(e,r,n){e=e>>>0,r=r>>>0,n||Ot(e,r,this.length);for(var i=this[e+--r],o=1;r>0&&(o*=256);)i+=this[e+--r]*o;return i};F.prototype.readUint8=F.prototype.readUInt8=function(e,r){return e=e>>>0,r||Ot(e,1,this.length),this[e]};F.prototype.readUint16LE=F.prototype.readUInt16LE=function(e,r){return e=e>>>0,r||Ot(e,2,this.length),this[e]|this[e+1]<<8};F.prototype.readUint16BE=F.prototype.readUInt16BE=function(e,r){return e=e>>>0,r||Ot(e,2,this.length),this[e]<<8|this[e+1]};F.prototype.readUint32LE=F.prototype.readUInt32LE=function(e,r){return e=e>>>0,r||Ot(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+this[e+3]*16777216};F.prototype.readUint32BE=F.prototype.readUInt32BE=function(e,r){return e=e>>>0,r||Ot(e,4,this.length),this[e]*16777216+(this[e+1]<<16|this[e+2]<<8|this[e+3])};F.prototype.readIntLE=function(e,r,n){e=e>>>0,r=r>>>0,n||Ot(e,r,this.length);for(var i=this[e],o=1,s=0;++s<r&&(o*=256);)i+=this[e+s]*o;return o*=128,i>=o&&(i-=Math.pow(2,8*r)),i};F.prototype.readIntBE=function(e,r,n){e=e>>>0,r=r>>>0,n||Ot(e,r,this.length);for(var i=r,o=1,s=this[e+--i];i>0&&(o*=256);)s+=this[e+--i]*o;return o*=128,s>=o&&(s-=Math.pow(2,8*r)),s};F.prototype.readInt8=function(e,r){return e=e>>>0,r||Ot(e,1,this.length),this[e]&128?(255-this[e]+1)*-1:this[e]};F.prototype.readInt16LE=function(e,r){e=e>>>0,r||Ot(e,2,this.length);var n=this[e]|this[e+1]<<8;return n&32768?n|4294901760:n};F.prototype.readInt16BE=function(e,r){e=e>>>0,r||Ot(e,2,this.length);var n=this[e+1]|this[e]<<8;return n&32768?n|4294901760:n};F.prototype.readInt32LE=function(e,r){return e=e>>>0,r||Ot(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24};F.prototype.readInt32BE=function(e,r){return e=e>>>0,r||Ot(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]};F.prototype.readFloatLE=function(e,r){return e=e>>>0,r||Ot(e,4,this.length),Nc.read(this,e,!0,23,4)};F.prototype.readFloatBE=function(e,r){return e=e>>>0,r||Ot(e,4,this.length),Nc.read(this,e,!1,23,4)};F.prototype.readDoubleLE=function(e,r){return e=e>>>0,r||Ot(e,8,this.length),Nc.read(this,e,!0,52,8)};F.prototype.readDoubleBE=function(e,r){return e=e>>>0,r||Ot(e,8,this.length),Nc.read(this,e,!1,52,8)};function lr(t,e,r,n,i,o){if(!F.isBuffer(t))throw new TypeError('"buffer" argument must be a Buffer instance');if(e>i||e<o)throw new RangeError('"value" argument is out of bounds');if(r+n>t.length)throw new RangeError("Index out of range")}F.prototype.writeUintLE=F.prototype.writeUIntLE=function(e,r,n,i){if(e=+e,r=r>>>0,n=n>>>0,!i){var o=Math.pow(2,8*n)-1;lr(this,e,r,n,o,0)}var s=1,c=0;for(this[r]=e&255;++c<n&&(s*=256);)this[r+c]=e/s&255;return r+n};F.prototype.writeUintBE=F.prototype.writeUIntBE=function(e,r,n,i){if(e=+e,r=r>>>0,n=n>>>0,!i){var o=Math.pow(2,8*n)-1;lr(this,e,r,n,o,0)}var s=n-1,c=1;for(this[r+s]=e&255;--s>=0&&(c*=256);)this[r+s]=e/c&255;return r+n};F.prototype.writeUint8=F.prototype.writeUInt8=function(e,r,n){return e=+e,r=r>>>0,n||lr(this,e,r,1,255,0),this[r]=e&255,r+1};F.prototype.writeUint16LE=F.prototype.writeUInt16LE=function(e,r,n){return e=+e,r=r>>>0,n||lr(this,e,r,2,65535,0),this[r]=e&255,this[r+1]=e>>>8,r+2};F.prototype.writeUint16BE=F.prototype.writeUInt16BE=function(e,r,n){return e=+e,r=r>>>0,n||lr(this,e,r,2,65535,0),this[r]=e>>>8,this[r+1]=e&255,r+2};F.prototype.writeUint32LE=F.prototype.writeUInt32LE=function(e,r,n){return e=+e,r=r>>>0,n||lr(this,e,r,4,4294967295,0),this[r+3]=e>>>24,this[r+2]=e>>>16,this[r+1]=e>>>8,this[r]=e&255,r+4};F.prototype.writeUint32BE=F.prototype.writeUInt32BE=function(e,r,n){return e=+e,r=r>>>0,n||lr(this,e,r,4,4294967295,0),this[r]=e>>>24,this[r+1]=e>>>16,this[r+2]=e>>>8,this[r+3]=e&255,r+4};F.prototype.writeIntLE=function(e,r,n,i){if(e=+e,r=r>>>0,!i){var o=Math.pow(2,8*n-1);lr(this,e,r,n,o-1,-o)}var s=0,c=1,a=0;for(this[r]=e&255;++s<n&&(c*=256);)e<0&&a===0&&this[r+s-1]!==0&&(a=1),this[r+s]=(e/c>>0)-a&255;return r+n};F.prototype.writeIntBE=function(e,r,n,i){if(e=+e,r=r>>>0,!i){var o=Math.pow(2,8*n-1);lr(this,e,r,n,o-1,-o)}var s=n-1,c=1,a=0;for(this[r+s]=e&255;--s>=0&&(c*=256);)e<0&&a===0&&this[r+s+1]!==0&&(a=1),this[r+s]=(e/c>>0)-a&255;return r+n};F.prototype.writeInt8=function(e,r,n){return e=+e,r=r>>>0,n||lr(this,e,r,1,127,-128),e<0&&(e=255+e+1),this[r]=e&255,r+1};F.prototype.writeInt16LE=function(e,r,n){return e=+e,r=r>>>0,n||lr(this,e,r,2,32767,-32768),this[r]=e&255,this[r+1]=e>>>8,r+2};F.prototype.writeInt16BE=function(e,r,n){return e=+e,r=r>>>0,n||lr(this,e,r,2,32767,-32768),this[r]=e>>>8,this[r+1]=e&255,r+2};F.prototype.writeInt32LE=function(e,r,n){return e=+e,r=r>>>0,n||lr(this,e,r,4,2147483647,-2147483648),this[r]=e&255,this[r+1]=e>>>8,this[r+2]=e>>>16,this[r+3]=e>>>24,r+4};F.prototype.writeInt32BE=function(e,r,n){return e=+e,r=r>>>0,n||lr(this,e,r,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),this[r]=e>>>24,this[r+1]=e>>>16,this[r+2]=e>>>8,this[r+3]=e&255,r+4};function Ux(t,e,r,n,i,o){if(r+n>t.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("Index out of range")}function Ox(t,e,r,n,i){return e=+e,r=r>>>0,i||Ux(t,e,r,4,34028234663852886e22,-34028234663852886e22),Nc.write(t,e,r,n,23,4),r+4}F.prototype.writeFloatLE=function(e,r,n){return Ox(this,e,r,!0,n)};F.prototype.writeFloatBE=function(e,r,n){return Ox(this,e,r,!1,n)};function Dx(t,e,r,n,i){return e=+e,r=r>>>0,i||Ux(t,e,r,8,17976931348623157e292,-17976931348623157e292),Nc.write(t,e,r,n,52,8),r+8}F.prototype.writeDoubleLE=function(e,r,n){return Dx(this,e,r,!0,n)};F.prototype.writeDoubleBE=function(e,r,n){return Dx(this,e,r,!1,n)};F.prototype.copy=function(e,r,n,i){if(!F.isBuffer(e))throw new TypeError("argument should be a Buffer");if(n||(n=0),!i&&i!==0&&(i=this.length),r>=e.length&&(r=e.length),r||(r=0),i>0&&i<n&&(i=n),i===n||e.length===0||this.length===0)return 0;if(r<0)throw new RangeError("targetStart out of bounds");if(n<0||n>=this.length)throw new RangeError("Index out of range");if(i<0)throw new RangeError("sourceEnd out of bounds");i>this.length&&(i=this.length),e.length-r<i-n&&(i=e.length-r+n);var o=i-n;return this===e&&typeof Uint8Array.prototype.copyWithin=="function"?this.copyWithin(r,n,i):Uint8Array.prototype.set.call(e,this.subarray(n,i),r),o};F.prototype.fill=function(e,r,n,i){if(typeof e=="string"){if(typeof r=="string"?(i=r,r=0,n=this.length):typeof n=="string"&&(i=n,n=this.length),i!==void 0&&typeof i!="string")throw new TypeError("encoding must be a string");if(typeof i=="string"&&!F.isEncoding(i))throw new TypeError("Unknown encoding: "+i);if(e.length===1){var o=e.charCodeAt(0);(i==="utf8"&&o<128||i==="latin1")&&(e=o)}}else typeof e=="number"?e=e&255:typeof e=="boolean"&&(e=Number(e));if(r<0||this.length<r||this.length<n)throw new RangeError("Out of range index");if(n<=r)return this;r=r>>>0,n=n===void 0?this.length:n>>>0,e||(e=0);var s;if(typeof e=="number")for(s=r;s<n;++s)this[s]=e;else{var c=F.isBuffer(e)?e:F.from(e,i),a=c.length;if(a===0)throw new TypeError('The value "'+e+'" is invalid for argument "value"');for(s=0;s<n-r;++s)this[s+r]=c[s%a]}return this};var QB=/[^+/0-9A-Za-z-_]/g;function e8(t){if(t=t.split("=")[0],t=t.trim().replace(QB,""),t.length<2)return"";for(;t.length%4!==0;)t=t+"=";return t}function hy(t,e){e=e||1/0;for(var r,n=t.length,i=null,o=[],s=0;s<n;++s){if(r=t.charCodeAt(s),r>55295&&r<57344){if(!i){if(r>56319){(e-=3)>-1&&o.push(239,191,189);continue}else if(s+1===n){(e-=3)>-1&&o.push(239,191,189);continue}i=r;continue}if(r<56320){(e-=3)>-1&&o.push(239,191,189),i=r;continue}r=(i-55296<<10|r-56320)+65536}else i&&(e-=3)>-1&&o.push(239,191,189);if(i=null,r<128){if((e-=1)<0)break;o.push(r)}else if(r<2048){if((e-=2)<0)break;o.push(r>>6|192,r&63|128)}else if(r<65536){if((e-=3)<0)break;o.push(r>>12|224,r>>6&63|128,r&63|128)}else if(r<1114112){if((e-=4)<0)break;o.push(r>>18|240,r>>12&63|128,r>>6&63|128,r&63|128)}else throw new Error("Invalid code point")}return o}function t8(t){for(var e=[],r=0;r<t.length;++r)e.push(t.charCodeAt(r)&255);return e}function r8(t,e){for(var r,n,i,o=[],s=0;s<t.length&&!((e-=2)<0);++s)r=t.charCodeAt(s),n=r>>8,i=r%256,o.push(i),o.push(n);return o}function kx(t){return dy.toByteArray(e8(t))}function Nf(t,e,r,n){for(var i=0;i<n&&!(i+r>=e.length||i>=t.length);++i)e[i+r]=t[i];return i}function $n(t,e){return t instanceof e||t!=null&&t.constructor!=null&&t.constructor.name!=null&&t.constructor.name===e.name}function gy(t){return t!==t}var n8=function(){for(var t="0123456789abcdef",e=new Array(256),r=0;r<16;++r)for(var n=r*16,i=0;i<16;++i)e[n+i]=t[r]+t[i];return e}()});var Ei=oe((eP,Px)=>{l();var ft=Px.exports={},Hn,Vn;function my(){throw new Error("setTimeout has not been defined")}function wy(){throw new Error("clearTimeout has not been defined")}(function(){try{typeof setTimeout=="function"?Hn=setTimeout:Hn=my}catch{Hn=my}try{typeof clearTimeout=="function"?Vn=clearTimeout:Vn=wy}catch{Vn=wy}})();function Nx(t){if(Hn===setTimeout)return setTimeout(t,0);if((Hn===my||!Hn)&&setTimeout)return Hn=setTimeout,setTimeout(t,0);try{return Hn(t,0)}catch{try{return Hn.call(null,t,0)}catch{return Hn.call(this,t,0)}}}function i8(t){if(Vn===clearTimeout)return clearTimeout(t);if((Vn===wy||!Vn)&&clearTimeout)return Vn=clearTimeout,clearTimeout(t);try{return Vn(t)}catch{try{return Vn.call(null,t)}catch{return Vn.call(this,t)}}}var bi=[],Lc=!1,ms,Cf=-1;function o8(){!Lc||!ms||(Lc=!1,ms.length?bi=ms.concat(bi):Cf=-1,bi.length&&Cx())}function Cx(){if(!Lc){var t=Nx(o8);Lc=!0;for(var e=bi.length;e;){for(ms=bi,bi=[];++Cf<e;)ms&&ms[Cf].run();Cf=-1,e=bi.length}ms=null,Lc=!1,i8(t)}}ft.nextTick=function(t){var e=new Array(arguments.length-1);if(arguments.length>1)for(var r=1;r<arguments.length;r++)e[r-1]=arguments[r];bi.push(new Lx(t,e)),bi.length===1&&!Lc&&Nx(Cx)};function Lx(t,e){this.fun=t,this.array=e}Lx.prototype.run=function(){this.fun.apply(null,this.array)};ft.title="browser";ft.browser=!0;ft.env={};ft.argv=[];ft.version="";ft.versions={};function xi(){}ft.on=xi;ft.addListener=xi;ft.once=xi;ft.off=xi;ft.removeListener=xi;ft.removeAllListeners=xi;ft.emit=xi;ft.prependListener=xi;ft.prependOnceListener=xi;ft.listeners=function(t){return[]};ft.binding=function(t){throw new Error("process.binding is not supported")};ft.cwd=function(){return"/"};ft.chdir=function(t){throw new Error("process.chdir is not supported")};ft.umask=function(){return 0}});var b,w,rP,l=_B(()=>{b=Mn(Tr()),w=Mn(Ei()),rP=function(t){function e(){var n=this||self;return delete t.prototype.__magic__,n}if(typeof globalThis=="object")return globalThis;if(this)return e();t.defineProperty(t.prototype,"__magic__",{configurable:!0,get:e});var r=__magic__;return r}(Object)});var s1=oe((LH,o1)=>{l();var p6=typeof performance=="object"&&performance&&typeof performance.now=="function"?performance:Date,ql=()=>p6.now(),y6=t=>t&&t===Math.floor(t)&&t>0&&isFinite(t),rg=t=>t===1/0||y6(t),ng=class t{constructor({max:e=1/0,ttl:r,updateAgeOnGet:n=!1,checkAgeOnGet:i=!1,noUpdateTTL:o=!1,dispose:s,noDisposeOnSet:c=!1}={}){if(this.expirations=Object.create(null),this.data=new Map,this.expirationMap=new Map,r!==void 0&&!rg(r))throw new TypeError("ttl must be positive integer or Infinity if set");if(!rg(e))throw new TypeError("max must be positive integer or Infinity");if(this.ttl=r,this.max=e,this.updateAgeOnGet=!!n,this.checkAgeOnGet=!!i,this.noUpdateTTL=!!o,this.noDisposeOnSet=!!c,s!==void 0){if(typeof s!="function")throw new TypeError("dispose must be function if set");this.dispose=s}this.timer=void 0,this.timerExpiration=void 0}setTimer(e,r){if(this.timerExpiration<e)return;this.timer&&clearTimeout(this.timer);let n=setTimeout(()=>{this.timer=void 0,this.timerExpiration=void 0,this.purgeStale();for(let i in this.expirations){this.setTimer(i,i-ql());break}},r);n.unref&&n.unref(),this.timerExpiration=e,this.timer=n}cancelTimer(){this.timer&&(clearTimeout(this.timer),this.timerExpiration=void 0,this.timer=void 0)}cancelTimers(){return w.default.emitWarning('TTLCache.cancelTimers has been renamed to TTLCache.cancelTimer (no "s"), and will be removed in the next major version update'),this.cancelTimer()}clear(){let e=this.dispose!==t.prototype.dispose?[...this]:[];this.data.clear(),this.expirationMap.clear(),this.cancelTimer(),this.expirations=Object.create(null);for(let[r,n]of e)this.dispose(n,r,"delete")}setTTL(e,r=this.ttl){let n=this.expirationMap.get(e);if(n!==void 0){let i=this.expirations[n];!i||i.length<=1?delete this.expirations[n]:this.expirations[n]=i.filter(o=>o!==e)}if(r!==1/0){let i=Math.floor(ql()+r);this.expirationMap.set(e,i),this.expirations[i]||(this.expirations[i]=[],this.setTimer(i,r)),this.expirations[i].push(e)}else this.expirationMap.set(e,1/0)}set(e,r,{ttl:n=this.ttl,noUpdateTTL:i=this.noUpdateTTL,noDisposeOnSet:o=this.noDisposeOnSet}={}){if(!rg(n))throw new TypeError("ttl must be positive integer or Infinity");if(this.expirationMap.has(e)){i||this.setTTL(e,n);let s=this.data.get(e);s!==r&&(this.data.set(e,r),o||this.dispose(s,e,"set"))}else this.setTTL(e,n),this.data.set(e,r);for(;this.size>this.max;)this.purgeToCapacity();return this}has(e){return this.data.has(e)}getRemainingTTL(e){let r=this.expirationMap.get(e);return r===1/0?r:r!==void 0?Math.max(0,Math.ceil(r-ql())):0}get(e,{updateAgeOnGet:r=this.updateAgeOnGet,ttl:n=this.ttl,checkAgeOnGet:i=this.checkAgeOnGet}={}){let o=this.data.get(e);if(i&&this.getRemainingTTL(e)===0){this.delete(e);return}return r&&this.setTTL(e,n),o}dispose(e,r){}delete(e){let r=this.expirationMap.get(e);if(r!==void 0){let n=this.data.get(e);this.data.delete(e),this.expirationMap.delete(e);let i=this.expirations[r];return i&&(i.length<=1?delete this.expirations[r]:this.expirations[r]=i.filter(o=>o!==e)),this.dispose(n,e,"delete"),this.size===0&&this.cancelTimer(),!0}return!1}purgeToCapacity(){for(let e in this.expirations){let r=this.expirations[e];if(this.size-r.length>=this.max){delete this.expirations[e];let n=[];for(let i of r)n.push([i,this.data.get(i)]),this.data.delete(i),this.expirationMap.delete(i);for(let[i,o]of n)this.dispose(o,i,"evict")}else{let n=this.size-this.max,i=[];for(let o of r.splice(0,n))i.push([o,this.data.get(o)]),this.data.delete(o),this.expirationMap.delete(o);for(let[o,s]of i)this.dispose(s,o,"evict");return}}}get size(){return this.data.size}purgeStale(){let e=Math.ceil(ql());for(let r in this.expirations){if(r==="Infinity"||r>e)return;let n=[...this.expirations[r]||[]],i=[];delete this.expirations[r];for(let o of n)i.push([o,this.data.get(o)]),this.data.delete(o),this.expirationMap.delete(o);for(let[o,s]of i)this.dispose(s,o,"stale")}this.size===0&&this.cancelTimer()}*entries(){for(let e in this.expirations)for(let r of this.expirations[e])yield[r,this.data.get(r)]}*keys(){for(let e in this.expirations)for(let r of this.expirations[e])yield r}*values(){for(let e in this.expirations)for(let r of this.expirations[e])yield this.data.get(r)}[Symbol.iterator](){return this.entries()}};o1.exports=ng});var S1=oe(v1=>{"use strict";l();v1.supports=function(...e){let r=e.reduce((n,i)=>Object.assign(n,i),{});return Object.assign(r,{snapshots:r.snapshots||!1,permanence:r.permanence||!1,seek:r.seek||!1,clear:r.clear||!1,getMany:r.getMany||!1,keyIterator:r.keyIterator||!1,valueIterator:r.valueIterator||!1,iteratorNextv:r.iteratorNextv||!1,iteratorAll:r.iteratorAll||!1,status:r.status||!1,createIfMissing:r.createIfMissing||!1,errorIfExists:r.errorIfExists||!1,deferredOpen:r.deferredOpen||!1,promises:r.promises||!1,streams:r.streams||!1,encodings:Object.assign({},r.encodings),events:Object.assign({},r.events),additionalMethods:Object.assign({},r.additionalMethods)})}});var vn=oe((sq,A1)=>{"use strict";l();A1.exports=class extends Error{constructor(e,r){super(e||""),typeof r=="object"&&r!==null&&(r.code&&(this.code=String(r.code)),r.expected&&(this.expected=!0),r.transient&&(this.transient=!0),r.cause&&(this.cause=r.cause)),Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)}}});var wg=oe((aq,T1)=>{"use strict";l();var mg=null;T1.exports=function(){return mg===null&&(mg={textEncoder:new TextEncoder,textDecoder:new TextDecoder}),mg}});var Eg=oe(_1=>{"use strict";l();var bg=vn(),z6=new Set(["buffer","view","utf8"]),xg=class{constructor(e){if(this.encode=e.encode||this.encode,this.decode=e.decode||this.decode,this.name=e.name||this.name,this.format=e.format||this.format,typeof this.encode!="function")throw new TypeError("The 'encode' property must be a function");if(typeof this.decode!="function")throw new TypeError("The 'decode' property must be a function");if(this.encode=this.encode.bind(this),this.decode=this.decode.bind(this),typeof this.name!="string"||this.name==="")throw new TypeError("The 'name' property must be a string");if(typeof this.format!="string"||!z6.has(this.format))throw new TypeError("The 'format' property must be one of 'buffer', 'view', 'utf8'");e.createViewTranscoder&&(this.createViewTranscoder=e.createViewTranscoder),e.createBufferTranscoder&&(this.createBufferTranscoder=e.createBufferTranscoder),e.createUTF8Transcoder&&(this.createUTF8Transcoder=e.createUTF8Transcoder)}get commonName(){return this.name.split("+")[0]}createBufferTranscoder(){throw new bg(`Encoding '${this.name}' cannot be transcoded to 'buffer'`,{code:"LEVEL_ENCODING_NOT_SUPPORTED"})}createViewTranscoder(){throw new bg(`Encoding '${this.name}' cannot be transcoded to 'view'`,{code:"LEVEL_ENCODING_NOT_SUPPORTED"})}createUTF8Transcoder(){throw new bg(`Encoding '${this.name}' cannot be transcoded to 'utf8'`,{code:"LEVEL_ENCODING_NOT_SUPPORTED"})}};_1.Encoding=xg});var Tg=oe(jl=>{"use strict";l();var{Buffer:Sg}=Tr()||{},{Encoding:Ag}=Eg(),Y6=wg(),ud=class extends Ag{constructor(e){super({...e,format:"buffer"})}createViewTranscoder(){return new dd({encode:this.encode,decode:e=>this.decode(Sg.from(e.buffer,e.byteOffset,e.byteLength)),name:`${this.name}+view`})}createBufferTranscoder(){return this}},dd=class extends Ag{constructor(e){super({...e,format:"view"})}createBufferTranscoder(){return new ud({encode:e=>{let r=this.encode(e);return Sg.from(r.buffer,r.byteOffset,r.byteLength)},decode:this.decode,name:`${this.name}+buffer`})}createViewTranscoder(){return this}},vg=class extends Ag{constructor(e){super({...e,format:"utf8"})}createBufferTranscoder(){return new ud({encode:e=>Sg.from(this.encode(e),"utf8"),decode:e=>this.decode(e.toString("utf8")),name:`${this.name}+buffer`})}createViewTranscoder(){let{textEncoder:e,textDecoder:r}=Y6();return new dd({encode:n=>e.encode(this.encode(n)),decode:n=>this.decode(r.decode(n)),name:`${this.name}+view`})}createUTF8Transcoder(){return this}};jl.BufferFormat=ud;jl.ViewFormat=dd;jl.UTF8Format=vg});var U1=oe(Vs=>{"use strict";l();var{Buffer:Xt}=Tr()||{Buffer:{isBuffer:()=>!1}},{textEncoder:B1,textDecoder:I1}=wg()(),{BufferFormat:fd,ViewFormat:_g,UTF8Format:R1}=Tg(),Wl=t=>t;Vs.utf8=new R1({encode:function(t){return Xt.isBuffer(t)?t.toString("utf8"):ArrayBuffer.isView(t)?I1.decode(t):String(t)},decode:Wl,name:"utf8",createViewTranscoder(){return new _g({encode:function(t){return ArrayBuffer.isView(t)?t:B1.encode(t)},decode:function(t){return I1.decode(t)},name:`${this.name}+view`})},createBufferTranscoder(){return new fd({encode:function(t){return Xt.isBuffer(t)?t:ArrayBuffer.isView(t)?Xt.from(t.buffer,t.byteOffset,t.byteLength):Xt.from(String(t),"utf8")},decode:function(t){return t.toString("utf8")},name:`${this.name}+buffer`})}});Vs.json=new R1({encode:JSON.stringify,decode:JSON.parse,name:"json"});Vs.buffer=new fd({encode:function(t){return Xt.isBuffer(t)?t:ArrayBuffer.isView(t)?Xt.from(t.buffer,t.byteOffset,t.byteLength):Xt.from(String(t),"utf8")},decode:Wl,name:"buffer",createViewTranscoder(){return new _g({encode:function(t){return ArrayBuffer.isView(t)?t:Xt.from(String(t),"utf8")},decode:function(t){return Xt.from(t.buffer,t.byteOffset,t.byteLength)},name:`${this.name}+view`})}});Vs.view=new _g({encode:function(t){return ArrayBuffer.isView(t)?t:B1.encode(t)},decode:Wl,name:"view",createBufferTranscoder(){return new fd({encode:function(t){return Xt.isBuffer(t)?t:ArrayBuffer.isView(t)?Xt.from(t.buffer,t.byteOffset,t.byteLength):Xt.from(String(t),"utf8")},decode:Wl,name:`${this.name}+buffer`})}});Vs.hex=new fd({encode:function(t){return Xt.isBuffer(t)?t:Xt.from(String(t),"hex")},decode:function(t){return t.toString("hex")},name:"hex"});Vs.base64=new fd({encode:function(t){return Xt.isBuffer(t)?t:Xt.from(String(t),"base64")},decode:function(t){return t.toString("base64")},name:"base64"})});var k1=oe(D1=>{"use strict";l();var O1=vn(),zl=U1(),{Encoding:J6}=Eg(),{BufferFormat:X6,ViewFormat:Z6,UTF8Format:Q6}=Tg(),ld=Symbol("formats"),Gl=Symbol("encodings"),eU=new Set(["buffer","view","utf8"]),Ig=class{constructor(e){if(Array.isArray(e)){if(!e.every(r=>eU.has(r)))throw new TypeError("Format must be one of 'buffer', 'view', 'utf8'")}else throw new TypeError("The first argument 'formats' must be an array");this[Gl]=new Map,this[ld]=new Set(e);for(let r in zl)try{this.encoding(r)}catch(n){if(n.code!=="LEVEL_ENCODING_NOT_SUPPORTED")throw n}}encodings(){return Array.from(new Set(this[Gl].values()))}encoding(e){let r=this[Gl].get(e);if(r===void 0){if(typeof e=="string"&&e!==""){if(r=iU[e],!r)throw new O1(`Encoding '${e}' is not found`,{code:"LEVEL_ENCODING_NOT_FOUND"})}else{if(typeof e!="object"||e===null)throw new TypeError("First argument 'encoding' must be a string or object");r=tU(e)}let{name:n,format:i}=r;if(!this[ld].has(i))if(this[ld].has("view"))r=r.createViewTranscoder();else if(this[ld].has("buffer"))r=r.createBufferTranscoder();else if(this[ld].has("utf8"))r=r.createUTF8Transcoder();else throw new O1(`Encoding '${n}' cannot be transcoded`,{code:"LEVEL_ENCODING_NOT_SUPPORTED"});for(let o of[e,n,r.name,r.commonName])this[Gl].set(o,r)}return r}};D1.Transcoder=Ig;function tU(t){if(t instanceof J6)return t;let e="type"in t&&typeof t.type=="string"?t.type:void 0,r=t.name||e||`anonymous-${oU++}`;switch(rU(t)){case"view":return new Z6({...t,name:r});case"utf8":return new Q6({...t,name:r});case"buffer":return new X6({...t,name:r});default:throw new TypeError("Format must be one of 'buffer', 'view', 'utf8'")}}function rU(t){return"format"in t&&t.format!==void 0?t.format:"buffer"in t&&typeof t.buffer=="boolean"?t.buffer?"buffer":"utf8":"code"in t&&Number.isInteger(t.code)?"view":"buffer"}var nU={binary:zl.buffer,"utf-8":zl.utf8},iU={...zl,...nU},oU=0});var ya=oe((wq,Bg)=>{"use strict";l();var pa=typeof Reflect=="object"?Reflect:null,N1=pa&&typeof pa.apply=="function"?pa.apply:function(e,r,n){return Function.prototype.apply.call(e,r,n)},Yl;pa&&typeof pa.ownKeys=="function"?Yl=pa.ownKeys:Object.getOwnPropertySymbols?Yl=function(e){return Object.getOwnPropertyNames(e).concat(Object.getOwnPropertySymbols(e))}:Yl=function(e){return Object.getOwnPropertyNames(e)};function sU(t){console&&console.warn&&console.warn(t)}var L1=Number.isNaN||function(e){return e!==e};function Pe(){Pe.init.call(this)}Bg.exports=Pe;Bg.exports.once=dU;Pe.EventEmitter=Pe;Pe.prototype._events=void 0;Pe.prototype._eventsCount=0;Pe.prototype._maxListeners=void 0;var C1=10;function Jl(t){if(typeof t!="function")throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof t)}Object.defineProperty(Pe,"defaultMaxListeners",{enumerable:!0,get:function(){return C1},set:function(t){if(typeof t!="number"||t<0||L1(t))throw new RangeError('The value of "defaultMaxListeners" is out of range. It must be a non-negative number. Received '+t+".");C1=t}});Pe.init=function(){(this._events===void 0||this._events===Object.getPrototypeOf(this)._events)&&(this._events=Object.create(null),this._eventsCount=0),this._maxListeners=this._maxListeners||void 0};Pe.prototype.setMaxListeners=function(e){if(typeof e!="number"||e<0||L1(e))throw new RangeError('The value of "n" is out of range. It must be a non-negative number. Received '+e+".");return this._maxListeners=e,this};function P1(t){return t._maxListeners===void 0?Pe.defaultMaxListeners:t._maxListeners}Pe.prototype.getMaxListeners=function(){return P1(this)};Pe.prototype.emit=function(e){for(var r=[],n=1;n<arguments.length;n++)r.push(arguments[n]);var i=e==="error",o=this._events;if(o!==void 0)i=i&&o.error===void 0;else if(!i)return!1;if(i){var s;if(r.length>0&&(s=r[0]),s instanceof Error)throw s;var c=new Error("Unhandled error."+(s?" ("+s.message+")":""));throw c.context=s,c}var a=o[e];if(a===void 0)return!1;if(typeof a=="function")N1(a,this,r);else for(var u=a.length,d=V1(a,u),n=0;n<u;++n)N1(d[n],this,r);return!0};function M1(t,e,r,n){var i,o,s;if(Jl(r),o=t._events,o===void 0?(o=t._events=Object.create(null),t._eventsCount=0):(o.newListener!==void 0&&(t.emit("newListener",e,r.listener?r.listener:r),o=t._events),s=o[e]),s===void 0)s=o[e]=r,++t._eventsCount;else if(typeof s=="function"?s=o[e]=n?[r,s]:[s,r]:n?s.unshift(r):s.push(r),i=P1(t),i>0&&s.length>i&&!s.warned){s.warned=!0;var c=new Error("Possible EventEmitter memory leak detected. "+s.length+" "+String(e)+" listeners added. Use emitter.setMaxListeners() to increase limit");c.name="MaxListenersExceededWarning",c.emitter=t,c.type=e,c.count=s.length,sU(c)}return t}Pe.prototype.addListener=function(e,r){return M1(this,e,r,!1)};Pe.prototype.on=Pe.prototype.addListener;Pe.prototype.prependListener=function(e,r){return M1(this,e,r,!0)};function cU(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,arguments.length===0?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function K1(t,e,r){var n={fired:!1,wrapFn:void 0,target:t,type:e,listener:r},i=cU.bind(n);return i.listener=r,n.wrapFn=i,i}Pe.prototype.once=function(e,r){return Jl(r),this.on(e,K1(this,e,r)),this};Pe.prototype.prependOnceListener=function(e,r){return Jl(r),this.prependListener(e,K1(this,e,r)),this};Pe.prototype.removeListener=function(e,r){var n,i,o,s,c;if(Jl(r),i=this._events,i===void 0)return this;if(n=i[e],n===void 0)return this;if(n===r||n.listener===r)--this._eventsCount===0?this._events=Object.create(null):(delete i[e],i.removeListener&&this.emit("removeListener",e,n.listener||r));else if(typeof n!="function"){for(o=-1,s=n.length-1;s>=0;s--)if(n[s]===r||n[s].listener===r){c=n[s].listener,o=s;break}if(o<0)return this;o===0?n.shift():aU(n,o),n.length===1&&(i[e]=n[0]),i.removeListener!==void 0&&this.emit("removeListener",e,c||r)}return this};Pe.prototype.off=Pe.prototype.removeListener;Pe.prototype.removeAllListeners=function(e){var r,n,i;if(n=this._events,n===void 0)return this;if(n.removeListener===void 0)return arguments.length===0?(this._events=Object.create(null),this._eventsCount=0):n[e]!==void 0&&(--this._eventsCount===0?this._events=Object.create(null):delete n[e]),this;if(arguments.length===0){var o=Object.keys(n),s;for(i=0;i<o.length;++i)s=o[i],s!=="removeListener"&&this.removeAllListeners(s);return this.removeAllListeners("removeListener"),this._events=Object.create(null),this._eventsCount=0,this}if(r=n[e],typeof r=="function")this.removeListener(e,r);else if(r!==void 0)for(i=r.length-1;i>=0;i--)this.removeListener(e,r[i]);return this};function $1(t,e,r){var n=t._events;if(n===void 0)return[];var i=n[e];return i===void 0?[]:typeof i=="function"?r?[i.listener||i]:[i]:r?uU(i):V1(i,i.length)}Pe.prototype.listeners=function(e){return $1(this,e,!0)};Pe.prototype.rawListeners=function(e){return $1(this,e,!1)};Pe.listenerCount=function(t,e){return typeof t.listenerCount=="function"?t.listenerCount(e):H1.call(t,e)};Pe.prototype.listenerCount=H1;function H1(t){var e=this._events;if(e!==void 0){var r=e[t];if(typeof r=="function")return 1;if(r!==void 0)return r.length}return 0}Pe.prototype.eventNames=function(){return this._eventsCount>0?Yl(this._events):[]};function V1(t,e){for(var r=new Array(e),n=0;n<e;++n)r[n]=t[n];return r}function aU(t,e){for(;e+1<t.length;e++)t[e]=t[e+1];t.pop()}function uU(t){for(var e=new Array(t.length),r=0;r<e.length;++r)e[r]=t[r].listener||t[r];return e}function dU(t,e){return new Promise(function(r,n){function i(s){t.removeListener(e,o),n(s)}function o(){typeof t.removeListener=="function"&&t.removeListener("error",i),r([].slice.call(arguments))}q1(t,e,o,{once:!0}),e!=="error"&&fU(t,i,{once:!0})})}function fU(t,e,r){typeof t.on=="function"&&q1(t,"error",e,r)}function q1(t,e,r,n){if(typeof t.on=="function")n.once?t.once(e,r):t.on(e,r);else if(typeof t.addEventListener=="function")t.addEventListener(e,function i(o){n.once&&t.removeEventListener(e,i),r(o)});else throw new TypeError('The "emitter" argument must be of type EventEmitter. Received type '+typeof t)}});var j1=oe((xq,F1)=>{l();F1.exports=typeof queueMicrotask=="function"?queueMicrotask:t=>Promise.resolve().then(t)});var hd=oe(Rg=>{"use strict";l();var W1=j1();Rg.fromCallback=function(t,e){if(t===void 0){var r=new Promise(function(n,i){t=function(o,s){o?i(o):n(s)}});t[e!==void 0?e:"promise"]=r}else if(typeof t!="function")throw new TypeError("Callback must be a function");return t};Rg.fromPromise=function(t,e){if(e===void 0)return t;t.then(function(r){W1(()=>e(null,r))}).catch(function(r){W1(()=>e(r))})}});var Xl=oe(Ug=>{"use strict";l();Ug.getCallback=function(t,e){return typeof t=="function"?t:e};Ug.getOptions=function(t,e){return typeof t=="object"&&t!==null?t:e!==void 0?e:{}}});var $o=oe(th=>{"use strict";l();var{fromCallback:Og}=hd(),kr=vn(),{getOptions:Dg,getCallback:G1}=Xl(),qs=Symbol("promise"),ga=Symbol("callback"),Zn=Symbol("working"),Fs=Symbol("handleOne"),$i=Symbol("handleMany"),kg=Symbol("autoClose"),Mo=Symbol("finishWork"),Qn=Symbol("returnMany"),Co=Symbol("closing"),pd=Symbol("handleClose"),Zl=Symbol("closed"),yd=Symbol("closeCallbacks"),Po=Symbol("keyEncoding"),js=Symbol("valueEncoding"),Ng=Symbol("abortOnClose"),Ql=Symbol("legacy"),Cg=Symbol("keys"),Lg=Symbol("values"),Lo=Symbol("limit"),tn=Symbol("count"),eh=Object.freeze({}),lU=()=>{},z1=!1,gd=class{constructor(e,r,n){if(typeof e!="object"||e===null){let i=e===null?"null":typeof e;throw new TypeError(`The first argument must be an abstract-level database, received ${i}`)}if(typeof r!="object"||r===null)throw new TypeError("The second argument must be an options object");this[Zl]=!1,this[yd]=[],this[Zn]=!1,this[Co]=!1,this[kg]=!1,this[ga]=null,this[Fs]=this[Fs].bind(this),this[$i]=this[$i].bind(this),this[pd]=this[pd].bind(this),this[Po]=r[Po],this[js]=r[js],this[Ql]=n,this[Lo]=Number.isInteger(r.limit)&&r.limit>=0?r.limit:1/0,this[tn]=0,this[Ng]=!!r.abortOnClose,this.db=e,this.db.attachResource(this),this.nextTick=e.nextTick}get count(){return this[tn]}get limit(){return this[Lo]}next(e){let r;if(e===void 0)r=new Promise((n,i)=>{e=(o,s,c)=>{o?i(o):this[Ql]?s===void 0&&c===void 0?n():n([s,c]):n(s)}});else if(typeof e!="function")throw new TypeError("Callback must be a function");return this[Co]?this.nextTick(e,new kr("Iterator is not open: cannot call next() after close()",{code:"LEVEL_ITERATOR_NOT_OPEN"})):this[Zn]?this.nextTick(e,new kr("Iterator is busy: cannot call next() until previous call has completed",{code:"LEVEL_ITERATOR_BUSY"})):(this[Zn]=!0,this[ga]=e,this[tn]>=this[Lo]?this.nextTick(this[Fs],null):this._next(this[Fs])),r}_next(e){this.nextTick(e)}nextv(e,r,n){return n=G1(r,n),n=Og(n,qs),r=Dg(r,eh),Number.isInteger(e)?(this[Co]?this.nextTick(n,new kr("Iterator is not open: cannot call nextv() after close()",{code:"LEVEL_ITERATOR_NOT_OPEN"})):this[Zn]?this.nextTick(n,new kr("Iterator is busy: cannot call nextv() until previous call has completed",{code:"LEVEL_ITERATOR_BUSY"})):(e<1&&(e=1),this[Lo]<1/0&&(e=Math.min(e,this[Lo]-this[tn])),this[Zn]=!0,this[ga]=n,e<=0?this.nextTick(this[$i],null,[]):this._nextv(e,r,this[$i])),n[qs]):(this.nextTick(n,new TypeError("The first argument 'size' must be an integer")),n[qs])}_nextv(e,r,n){let i=[],o=(s,c,a)=>{if(s)return n(s);if(this[Ql]?c===void 0&&a===void 0:c===void 0)return n(null,i);i.push(this[Ql]?[c,a]:c),i.length===e?n(null,i):this._next(o)};this._next(o)}all(e,r){return r=G1(e,r),r=Og(r,qs),e=Dg(e,eh),this[Co]?this.nextTick(r,new kr("Iterator is not open: cannot call all() after close()",{code:"LEVEL_ITERATOR_NOT_OPEN"})):this[Zn]?this.nextTick(r,new kr("Iterator is busy: cannot call all() until previous call has completed",{code:"LEVEL_ITERATOR_BUSY"})):(this[Zn]=!0,this[ga]=r,this[kg]=!0,this[tn]>=this[Lo]?this.nextTick(this[$i],null,[]):this._all(e,this[$i])),r[qs]}_all(e,r){let n=this[tn],i=[],o=()=>{let c=this[Lo]<1/0?Math.min(1e3,this[Lo]-n):1e3;c<=0?this.nextTick(r,null,i):this._nextv(c,eh,s)},s=(c,a)=>{c?r(c):a.length===0?r(null,i):(i.push.apply(i,a),n+=a.length,o())};o()}[Mo](){let e=this[ga];return this[Ng]&&e===null?lU:(this[Zn]=!1,this[ga]=null,this[Co]&&this._close(this[pd]),e)}[Qn](e,r,n){this[kg]?this.close(e.bind(null,r,n)):e(r,n)}seek(e,r){if(r=Dg(r,eh),!this[Co]){if(this[Zn])throw new kr("Iterator is busy: cannot call seek() until next() has completed",{code:"LEVEL_ITERATOR_BUSY"});{let n=this.db.keyEncoding(r.keyEncoding||this[Po]),i=n.format;r.keyEncoding!==i&&(r={...r,keyEncoding:i});let o=this.db.prefixKey(n.encode(e),i);this._seek(o,r)}}}_seek(e,r){throw new kr("Iterator does not support seek()",{code:"LEVEL_NOT_SUPPORTED"})}close(e){return e=Og(e,qs),this[Zl]?this.nextTick(e):this[Co]?this[yd].push(e):(this[Co]=!0,this[yd].push(e),this[Zn]?this[Ng]&&this[Mo]()(new kr("Aborted on iterator close()",{code:"LEVEL_ITERATOR_NOT_OPEN"})):this._close(this[pd])),e[qs]}_close(e){this.nextTick(e)}[pd](){this[Zl]=!0,this.db.detachResource(this);let e=this[yd];this[yd]=[];for(let r of e)r()}async*[Symbol.asyncIterator](){try{let e;for(;(e=await this.next())!==void 0;)yield e}finally{this[Zl]||await this.close()}}},ma=class extends gd{constructor(e,r){super(e,r,!0),this[Cg]=r.keys!==!1,this[Lg]=r.values!==!1}[Fs](e,r,n){let i=this[Mo]();if(e)return i(e);try{r=this[Cg]&&r!==void 0?this[Po].decode(r):void 0,n=this[Lg]&&n!==void 0?this[js].decode(n):void 0}catch(o){return i(new Ko("entry",o))}r===void 0&&n===void 0||this[tn]++,i(null,r,n)}[$i](e,r){let n=this[Mo]();if(e)return this[Qn](n,e);try{for(let i of r){let o=i[0],s=i[1];i[0]=this[Cg]&&o!==void 0?this[Po].decode(o):void 0,i[1]=this[Lg]&&s!==void 0?this[js].decode(s):void 0}}catch(i){return this[Qn](n,new Ko("entries",i))}this[tn]+=r.length,this[Qn](n,null,r)}end(e){return!z1&&typeof console<"u"&&(z1=!0,console.warn(new kr("The iterator.end() method was renamed to close() and end() is an alias that will be removed in a future version",{code:"LEVEL_LEGACY"}))),this.close(e)}},Pg=class extends gd{constructor(e,r){super(e,r,!1)}[Fs](e,r){let n=this[Mo]();if(e)return n(e);try{r=r!==void 0?this[Po].decode(r):void 0}catch(i){return n(new Ko("key",i))}r!==void 0&&this[tn]++,n(null,r)}[$i](e,r){let n=this[Mo]();if(e)return this[Qn](n,e);try{for(let i=0;i<r.length;i++){let o=r[i];r[i]=o!==void 0?this[Po].decode(o):void 0}}catch(i){return this[Qn](n,new Ko("keys",i))}this[tn]+=r.length,this[Qn](n,null,r)}},Mg=class extends gd{constructor(e,r){super(e,r,!1)}[Fs](e,r){let n=this[Mo]();if(e)return n(e);try{r=r!==void 0?this[js].decode(r):void 0}catch(i){return n(new Ko("value",i))}r!==void 0&&this[tn]++,n(null,r)}[$i](e,r){let n=this[Mo]();if(e)return this[Qn](n,e);try{for(let i=0;i<r.length;i++){let o=r[i];r[i]=o!==void 0?this[js].decode(o):void 0}}catch(i){return this[Qn](n,new Ko("values",i))}this[tn]+=r.length,this[Qn](n,null,r)}},Ko=class extends kr{constructor(e,r){super(`Iterator could not decode ${e}`,{code:"LEVEL_DECODE_ERROR",cause:r})}};for(let t of["_ended property","_nexting property","_end method"])Object.defineProperty(ma.prototype,t.split(" ")[0],{get(){throw new kr(`The ${t} has been removed`,{code:"LEVEL_LEGACY"})},set(){throw new kr(`The ${t} has been removed`,{code:"LEVEL_LEGACY"})}});ma.keyEncoding=Po;ma.valueEncoding=js;th.AbstractIterator=ma;th.AbstractKeyIterator=Pg;th.AbstractValueIterator=Mg});var Y1=oe(Kg=>{"use strict";l();var{AbstractKeyIterator:hU,AbstractValueIterator:pU}=$o(),Ws=Symbol("iterator"),md=Symbol("callback"),wa=Symbol("handleOne"),Gs=Symbol("handleMany"),wd=class extends hU{constructor(e,r){super(e,r),this[Ws]=e.iterator({...r,keys:!0,values:!1}),this[wa]=this[wa].bind(this),this[Gs]=this[Gs].bind(this)}},rh=class extends pU{constructor(e,r){super(e,r),this[Ws]=e.iterator({...r,keys:!1,values:!0}),this[wa]=this[wa].bind(this),this[Gs]=this[Gs].bind(this)}};for(let t of[wd,rh]){let e=t===wd,r=e?n=>n[0]:n=>n[1];t.prototype._next=function(n){this[md]=n,this[Ws].next(this[wa])},t.prototype[wa]=function(n,i,o){let s=this[md];n?s(n):s(null,e?i:o)},t.prototype._nextv=function(n,i,o){this[md]=o,this[Ws].nextv(n,i,this[Gs])},t.prototype._all=function(n,i){this[md]=i,this[Ws].all(n,this[Gs])},t.prototype[Gs]=function(n,i){let o=this[md];n?o(n):o(null,i.map(r))},t.prototype._seek=function(n,i){this[Ws].seek(n,i)},t.prototype._close=function(n){this[Ws].close(n)}}Kg.DefaultKeyIterator=wd;Kg.DefaultValueIterator=rh});var J1=oe(ah=>{"use strict";l();var{AbstractIterator:yU,AbstractKeyIterator:gU,AbstractValueIterator:mU}=$o(),$g=vn(),gr=Symbol("nut"),sh=Symbol("undefer"),ch=Symbol("factory"),nh=class extends yU{constructor(e,r){super(e,r),this[gr]=null,this[ch]=()=>e.iterator(r),this.db.defer(()=>this[sh]())}},ih=class extends gU{constructor(e,r){super(e,r),this[gr]=null,this[ch]=()=>e.keys(r),this.db.defer(()=>this[sh]())}},oh=class extends mU{constructor(e,r){super(e,r),this[gr]=null,this[ch]=()=>e.values(r),this.db.defer(()=>this[sh]())}};for(let t of[nh,ih,oh])t.prototype[sh]=function(){this.db.status==="open"&&(this[gr]=this[ch]())},t.prototype._next=function(e){this[gr]!==null?this[gr].next(e):this.db.status==="opening"?this.db.defer(()=>this._next(e)):this.nextTick(e,new $g("Iterator is not open: cannot call next() after close()",{code:"LEVEL_ITERATOR_NOT_OPEN"}))},t.prototype._nextv=function(e,r,n){this[gr]!==null?this[gr].nextv(e,r,n):this.db.status==="opening"?this.db.defer(()=>this._nextv(e,r,n)):this.nextTick(n,new $g("Iterator is not open: cannot call nextv() after close()",{code:"LEVEL_ITERATOR_NOT_OPEN"}))},t.prototype._all=function(e,r){this[gr]!==null?this[gr].all(r):this.db.status==="opening"?this.db.defer(()=>this._all(e,r)):this.nextTick(r,new $g("Iterator is not open: cannot call all() after close()",{code:"LEVEL_ITERATOR_NOT_OPEN"}))},t.prototype._seek=function(e,r){this[gr]!==null?this[gr]._seek(e,r):this.db.status==="opening"&&this.db.defer(()=>this._seek(e,r))},t.prototype._close=function(e){this[gr]!==null?this[gr].close(e):this.db.status==="opening"?this.db.defer(()=>this._close(e)):this.nextTick(e)};ah.DeferredIterator=nh;ah.DeferredKeyIterator=ih;ah.DeferredValueIterator=oh});var Vg=oe(Z1=>{"use strict";l();var{fromCallback:X1}=hd(),uh=vn(),{getCallback:wU,getOptions:bU}=Xl(),dh=Symbol("promise"),rn=Symbol("status"),ba=Symbol("operations"),bd=Symbol("finishClose"),xa=Symbol("closeCallbacks"),Hg=class{constructor(e){if(typeof e!="object"||e===null){let r=e===null?"null":typeof e;throw new TypeError(`The first argument must be an abstract-level database, received ${r}`)}this[ba]=[],this[xa]=[],this[rn]="open",this[bd]=this[bd].bind(this),this.db=e,this.db.attachResource(this),this.nextTick=e.nextTick}get length(){return this[ba].length}put(e,r,n){if(this[rn]!=="open")throw new uh("Batch is not open: cannot call put() after write() or close()",{code:"LEVEL_BATCH_NOT_OPEN"});let i=this.db._checkKey(e)||this.db._checkValue(r);if(i)throw i;let o=n&&n.sublevel!=null?n.sublevel:this.db,s=n,c=o.keyEncoding(n&&n.keyEncoding),a=o.valueEncoding(n&&n.valueEncoding),u=c.format;n={...n,keyEncoding:u,valueEncoding:a.format},o!==this.db&&(n.sublevel=null);let d=o.prefixKey(c.encode(e),u),f=a.encode(r);return this._put(d,f,n),this[ba].push({...s,type:"put",key:e,value:r}),this}_put(e,r,n){}del(e,r){if(this[rn]!=="open")throw new uh("Batch is not open: cannot call del() after write() or close()",{code:"LEVEL_BATCH_NOT_OPEN"});let n=this.db._checkKey(e);if(n)throw n;let i=r&&r.sublevel!=null?r.sublevel:this.db,o=r,s=i.keyEncoding(r&&r.keyEncoding),c=s.format;return r={...r,keyEncoding:c},i!==this.db&&(r.sublevel=null),this._del(i.prefixKey(s.encode(e),c),r),this[ba].push({...o,type:"del",key:e}),this}_del(e,r){}clear(){if(this[rn]!=="open")throw new uh("Batch is not open: cannot call clear() after write() or close()",{code:"LEVEL_BATCH_NOT_OPEN"});return this._clear(),this[ba]=[],this}_clear(){}write(e,r){return r=wU(e,r),r=X1(r,dh),e=bU(e),this[rn]!=="open"?this.nextTick(r,new uh("Batch is not open: cannot call write() after write() or close()",{code:"LEVEL_BATCH_NOT_OPEN"})):this.length===0?this.close(r):(this[rn]="writing",this._write(e,n=>{this[rn]="closing",this[xa].push(()=>r(n)),n||this.db.emit("batch",this[ba]),this._close(this[bd])})),r[dh]}_write(e,r){}close(e){return e=X1(e,dh),this[rn]==="closing"?this[xa].push(e):this[rn]==="closed"?this.nextTick(e):(this[xa].push(e),this[rn]!=="writing"&&(this[rn]="closing",this._close(this[bd]))),e[dh]}_close(e){this.nextTick(e)}[bd](){this[rn]="closed",this.db.detachResource(this);let e=this[xa];this[xa]=[];for(let r of e)r()}};Z1.AbstractChainedBatch=Hg});var e2=oe(Q1=>{"use strict";l();var{AbstractChainedBatch:xU}=Vg(),EU=vn(),Ea=Symbol("encoded"),qg=class extends xU{constructor(e){super(e),this[Ea]=[]}_put(e,r,n){this[Ea].push({...n,type:"put",key:e,value:r})}_del(e,r){this[Ea].push({...r,type:"del",key:e})}_clear(){this[Ea]=[]}_write(e,r){this.db.status==="opening"?this.db.defer(()=>this._write(e,r)):this.db.status==="open"?this[Ea].length===0?this.nextTick(r):this.db._batch(this[Ea],e,r):this.nextTick(r,new EU("Batch is not open: cannot call write() after write() or close()",{code:"LEVEL_BATCH_NOT_OPEN"}))}};Q1.DefaultChainedBatch=qg});var n2=oe((Lq,r2)=>{"use strict";l();var t2=vn(),vU=Object.prototype.hasOwnProperty,SU=new Set(["lt","lte","gt","gte"]);r2.exports=function(t,e){let r={};for(let n in t)if(vU.call(t,n)&&!(n==="keyEncoding"||n==="valueEncoding")){if(n==="start"||n==="end")throw new t2(`The legacy range option '${n}' has been removed`,{code:"LEVEL_LEGACY"});if(n==="encoding")throw new t2("The levelup-style 'encoding' alias has been removed, use 'valueEncoding' instead",{code:"LEVEL_LEGACY"});SU.has(n)?r[n]=e.encode(t[n]):r[n]=t[n]}return r.reverse=!!r.reverse,r.limit=Number.isInteger(r.limit)&&r.limit>=0?r.limit:-1,r}});var Fg=oe((Mq,o2)=>{l();var i2;o2.exports=typeof queueMicrotask=="function"?queueMicrotask.bind(typeof window<"u"?window:globalThis):t=>(i2||(i2=Promise.resolve())).then(t).catch(e=>setTimeout(()=>{throw e},0))});var a2=oe(($q,c2)=>{"use strict";l();var s2=Fg();c2.exports=function(t,...e){e.length===0?s2(t):s2(()=>t(...e))}});var u2=oe(fh=>{"use strict";l();var{AbstractIterator:AU,AbstractKeyIterator:TU,AbstractValueIterator:_U}=$o(),va=Symbol("unfix"),Sn=Symbol("iterator"),zs=Symbol("handleOne"),Ho=Symbol("handleMany"),Hi=Symbol("callback"),xd=class extends AU{constructor(e,r,n,i){super(e,r),this[Sn]=n,this[va]=i,this[zs]=this[zs].bind(this),this[Ho]=this[Ho].bind(this),this[Hi]=null}[zs](e,r,n){let i=this[Hi];if(e)return i(e);r!==void 0&&(r=this[va](r)),i(e,r,n)}[Ho](e,r){let n=this[Hi];if(e)return n(e);for(let i of r){let o=i[0];o!==void 0&&(i[0]=this[va](o))}n(e,r)}},Ed=class extends TU{constructor(e,r,n,i){super(e,r),this[Sn]=n,this[va]=i,this[zs]=this[zs].bind(this),this[Ho]=this[Ho].bind(this),this[Hi]=null}[zs](e,r){let n=this[Hi];if(e)return n(e);r!==void 0&&(r=this[va](r)),n(e,r)}[Ho](e,r){let n=this[Hi];if(e)return n(e);for(let i=0;i<r.length;i++){let o=r[i];o!==void 0&&(r[i]=this[va](o))}n(e,r)}},vd=class extends _U{constructor(e,r,n){super(e,r),this[Sn]=n}};for(let t of[xd,Ed])t.prototype._next=function(e){this[Hi]=e,this[Sn].next(this[zs])},t.prototype._nextv=function(e,r,n){this[Hi]=n,this[Sn].nextv(e,r,this[Ho])},t.prototype._all=function(e,r){this[Hi]=r,this[Sn].all(e,this[Ho])};for(let t of[vd])t.prototype._next=function(e){this[Sn].next(e)},t.prototype._nextv=function(e,r,n){this[Sn].nextv(e,r,n)},t.prototype._all=function(e,r){this[Sn].all(e,r)};for(let t of[xd,Ed,vd])t.prototype._seek=function(e,r){this[Sn].seek(e,r)},t.prototype._close=function(e){this[Sn].close(e)};fh.AbstractSublevelIterator=xd;fh.AbstractSublevelKeyIterator=Ed;fh.AbstractSublevelValueIterator=vd});var h2=oe((Fq,l2)=>{"use strict";l();var jg=vn(),{Buffer:zg}=Tr()||{},{AbstractSublevelIterator:IU,AbstractSublevelKeyIterator:BU,AbstractSublevelValueIterator:RU}=u2(),Vi=Symbol("prefix"),d2=Symbol("upperBound"),Sd=Symbol("prefixRange"),Nr=Symbol("parent"),Wg=Symbol("unfix"),f2=new TextEncoder,UU={separator:"!"};l2.exports=function({AbstractLevel:t}){class e extends t{static defaults(n){if(typeof n=="string")throw new jg("The subleveldown string shorthand for { separator } has been removed",{code:"LEVEL_LEGACY"});if(n&&n.open)throw new jg("The subleveldown open option has been removed",{code:"LEVEL_LEGACY"});return n==null?UU:n.separator?n:{...n,separator:"!"}}constructor(n,i,o){let{separator:s,manifest:c,...a}=e.defaults(o);i=DU(i,s);let u=s.charCodeAt(0)+1,d=n[Nr]||n;if(!f2.encode(i).every(p=>p>u&&p<127))throw new jg(`Prefix must use bytes > ${u} < 127`,{code:"LEVEL_INVALID_PREFIX"});super(OU(d,c),a);let f=(n.prefix||"")+s+i+s,h=f.slice(0,-1)+String.fromCharCode(u);this[Nr]=d,this[Vi]=new lh(f),this[d2]=new lh(h),this[Wg]=new Yg,this.nextTick=d.nextTick}prefixKey(n,i){if(i==="utf8")return this[Vi].utf8+n;if(n.byteLength===0)return this[Vi][i];if(i==="view"){let o=this[Vi].view,s=new Uint8Array(o.byteLength+n.byteLength);return s.set(o,0),s.set(n,o.byteLength),s}else{let o=this[Vi].buffer;return zg.concat([o,n],o.byteLength+n.byteLength)}}[Sd](n,i){n.gte!==void 0?n.gte=this.prefixKey(n.gte,i):n.gt!==void 0?n.gt=this.prefixKey(n.gt,i):n.gte=this[Vi][i],n.lte!==void 0?n.lte=this.prefixKey(n.lte,i):n.lt!==void 0?n.lt=this.prefixKey(n.lt,i):n.lte=this[d2][i]}get prefix(){return this[Vi].utf8}get db(){return this[Nr]}_open(n,i){this[Nr].open({passive:!0},i)}_put(n,i,o,s){this[Nr].put(n,i,o,s)}_get(n,i,o){this[Nr].get(n,i,o)}_getMany(n,i,o){this[Nr].getMany(n,i,o)}_del(n,i,o){this[Nr].del(n,i,o)}_batch(n,i,o){this[Nr].batch(n,i,o)}_clear(n,i){this[Sd](n,n.keyEncoding),this[Nr].clear(n,i)}_iterator(n){this[Sd](n,n.keyEncoding);let i=this[Nr].iterator(n),o=this[Wg].get(this[Vi].utf8.length,n.keyEncoding);return new IU(this,n,i,o)}_keys(n){this[Sd](n,n.keyEncoding);let i=this[Nr].keys(n),o=this[Wg].get(this[Vi].utf8.length,n.keyEncoding);return new BU(this,n,i,o)}_values(n){this[Sd](n,n.keyEncoding);let i=this[Nr].values(n);return new RU(this,n,i)}}return{AbstractSublevel:e}};var OU=function(t,e){return{...t.supports,createIfMissing:!1,errorIfExists:!1,events:{},additionalMethods:{},...e,encodings:{utf8:Gg(t,"utf8"),buffer:Gg(t,"buffer"),view:Gg(t,"view")}}},Gg=function(t,e){return t.supports.encodings[e]?t.keyEncoding(e).name===e:!1},lh=class{constructor(e){this.utf8=e,this.view=f2.encode(e),this.buffer=zg?zg.from(this.view.buffer,0,this.view.byteLength):{}}},Yg=class{constructor(){this.cache=new Map}get(e,r){let n=this.cache.get(r);return n===void 0&&(r==="view"?n=(function(i,o){return o.subarray(i)}).bind(null,e):n=(function(i,o){return o.slice(i)}).bind(null,e),this.cache.set(r,n)),n}},DU=function(t,e){let r=0,n=t.length;for(;r<n&&t[r]===e;)r++;for(;n>r&&t[n-1]===e;)n--;return t.slice(r,n)}});var em=oe(Qg=>{"use strict";l();var{supports:kU}=S1(),{Transcoder:NU}=k1(),{EventEmitter:CU}=ya(),{fromCallback:Vo}=hd(),An=vn(),{AbstractIterator:Ys}=$o(),{DefaultKeyIterator:LU,DefaultValueIterator:PU}=Y1(),{DeferredIterator:MU,DeferredKeyIterator:KU,DeferredValueIterator:$U}=J1(),{DefaultChainedBatch:p2}=e2(),{getCallback:Js,getOptions:qo}=Xl(),hh=n2(),pe=Symbol("promise"),qi=Symbol("landed"),Xs=Symbol("resources"),Jg=Symbol("closeResources"),Ad=Symbol("operations"),Td=Symbol("undefer"),ph=Symbol("deferOpen"),y2=Symbol("options"),be=Symbol("status"),Zs=Symbol("defaultOptions"),Sa=Symbol("transcoder"),yh=Symbol("keyEncoding"),Xg=Symbol("valueEncoding"),HU=()=>{},_d=class extends CU{constructor(e,r){if(super(),typeof e!="object"||e===null)throw new TypeError("The first argument 'manifest' must be an object");r=qo(r);let{keyEncoding:n,valueEncoding:i,passive:o,...s}=r;this[Xs]=new Set,this[Ad]=[],this[ph]=!0,this[y2]=s,this[be]="opening",this.supports=kU(e,{status:!0,promises:!0,clear:!0,getMany:!0,deferredOpen:!0,snapshots:e.snapshots!==!1,permanence:e.permanence!==!1,keyIterator:!0,valueIterator:!0,iteratorNextv:!0,iteratorAll:!0,encodings:e.encodings||{},events:Object.assign({},e.events,{opening:!0,open:!0,closing:!0,closed:!0,put:!0,del:!0,batch:!0,clear:!0})}),this[Sa]=new NU(VU(this)),this[yh]=this[Sa].encoding(n||"utf8"),this[Xg]=this[Sa].encoding(i||"utf8");for(let c of this[Sa].encodings())this.supports.encodings[c.commonName]||(this.supports.encodings[c.commonName]=!0);this[Zs]={empty:Object.freeze({}),entry:Object.freeze({keyEncoding:this[yh].commonName,valueEncoding:this[Xg].commonName}),key:Object.freeze({keyEncoding:this[yh].commonName})},this.nextTick(()=>{this[ph]&&this.open({passive:!1},HU)})}get status(){return this[be]}keyEncoding(e){return this[Sa].encoding(e??this[yh])}valueEncoding(e){return this[Sa].encoding(e??this[Xg])}open(e,r){r=Js(e,r),r=Vo(r,pe),e={...this[y2],...qo(e)},e.createIfMissing=e.createIfMissing!==!1,e.errorIfExists=!!e.errorIfExists;let n=i=>{this[be]==="closing"||this[be]==="opening"?this.once(qi,i?()=>n(i):n):this[be]!=="open"?r(new An("Database is not open",{code:"LEVEL_DATABASE_NOT_OPEN",cause:i})):r()};return e.passive?this[be]==="opening"?this.once(qi,n):this.nextTick(n):this[be]==="closed"||this[ph]?(this[ph]=!1,this[be]="opening",this.emit("opening"),this._open(e,i=>{if(i){this[be]="closed",this[Jg](()=>{this.emit(qi),n(i)}),this[Td]();return}this[be]="open",this[Td](),this.emit(qi),this[be]==="open"&&this.emit("open"),this[be]==="open"&&this.emit("ready"),n()})):this[be]==="open"?this.nextTick(n):this.once(qi,()=>this.open(e,r)),r[pe]}_open(e,r){this.nextTick(r)}close(e){e=Vo(e,pe);let r=n=>{this[be]==="opening"||this[be]==="closing"?this.once(qi,n?r(n):r):this[be]!=="closed"?e(new An("Database is not closed",{code:"LEVEL_DATABASE_NOT_CLOSED",cause:n})):e()};if(this[be]==="open"){this[be]="closing",this.emit("closing");let n=i=>{this[be]="open",this[Td](),this.emit(qi),r(i)};this[Jg](()=>{this._close(i=>{if(i)return n(i);this[be]="closed",this[Td](),this.emit(qi),this[be]==="closed"&&this.emit("closed"),r()})})}else this[be]==="closed"?this.nextTick(r):this.once(qi,()=>this.close(e));return e[pe]}[Jg](e){if(this[Xs].size===0)return this.nextTick(e);let r=this[Xs].size,n=!0,i=()=>{--r===0&&(n?this.nextTick(e):e())};for(let o of this[Xs])o.close(i);n=!1,this[Xs].clear()}_close(e){this.nextTick(e)}get(e,r,n){if(n=Js(r,n),n=Vo(n,pe),r=qo(r,this[Zs].entry),this[be]==="opening")return this.defer(()=>this.get(e,r,n)),n[pe];if(Aa(this,n))return n[pe];let i=this._checkKey(e);if(i)return this.nextTick(n,i),n[pe];let o=this.keyEncoding(r.keyEncoding),s=this.valueEncoding(r.valueEncoding),c=o.format,a=s.format;return(r.keyEncoding!==c||r.valueEncoding!==a)&&(r=Object.assign({},r,{keyEncoding:c,valueEncoding:a})),this._get(this.prefixKey(o.encode(e),c),r,(u,d)=>{if(u)return(u.code==="LEVEL_NOT_FOUND"||u.notFound||/NotFound/i.test(u))&&(u.code||(u.code="LEVEL_NOT_FOUND"),u.notFound||(u.notFound=!0),u.status||(u.status=404)),n(u);try{d=s.decode(d)}catch(f){return n(new An("Could not decode value",{code:"LEVEL_DECODE_ERROR",cause:f}))}n(null,d)}),n[pe]}_get(e,r,n){this.nextTick(n,new Error("NotFound"))}getMany(e,r,n){if(n=Js(r,n),n=Vo(n,pe),r=qo(r,this[Zs].entry),this[be]==="opening")return this.defer(()=>this.getMany(e,r,n)),n[pe];if(Aa(this,n))return n[pe];if(!Array.isArray(e))return this.nextTick(n,new TypeError("The first argument 'keys' must be an array")),n[pe];if(e.length===0)return this.nextTick(n,null,[]),n[pe];let i=this.keyEncoding(r.keyEncoding),o=this.valueEncoding(r.valueEncoding),s=i.format,c=o.format;(r.keyEncoding!==s||r.valueEncoding!==c)&&(r=Object.assign({},r,{keyEncoding:s,valueEncoding:c}));let a=new Array(e.length);for(let u=0;u<e.length;u++){let d=e[u],f=this._checkKey(d);if(f)return this.nextTick(n,f),n[pe];a[u]=this.prefixKey(i.encode(d),s)}return this._getMany(a,r,(u,d)=>{if(u)return n(u);try{for(let f=0;f<d.length;f++)d[f]!==void 0&&(d[f]=o.decode(d[f]))}catch(f){return n(new An(`Could not decode one or more of ${d.length} value(s)`,{code:"LEVEL_DECODE_ERROR",cause:f}))}n(null,d)}),n[pe]}_getMany(e,r,n){this.nextTick(n,null,new Array(e.length).fill(void 0))}put(e,r,n,i){if(i=Js(n,i),i=Vo(i,pe),n=qo(n,this[Zs].entry),this[be]==="opening")return this.defer(()=>this.put(e,r,n,i)),i[pe];if(Aa(this,i))return i[pe];let o=this._checkKey(e)||this._checkValue(r);if(o)return this.nextTick(i,o),i[pe];let s=this.keyEncoding(n.keyEncoding),c=this.valueEncoding(n.valueEncoding),a=s.format,u=c.format;(n.keyEncoding!==a||n.valueEncoding!==u)&&(n=Object.assign({},n,{keyEncoding:a,valueEncoding:u}));let d=this.prefixKey(s.encode(e),a),f=c.encode(r);return this._put(d,f,n,h=>{if(h)return i(h);this.emit("put",e,r),i()}),i[pe]}_put(e,r,n,i){this.nextTick(i)}del(e,r,n){if(n=Js(r,n),n=Vo(n,pe),r=qo(r,this[Zs].key),this[be]==="opening")return this.defer(()=>this.del(e,r,n)),n[pe];if(Aa(this,n))return n[pe];let i=this._checkKey(e);if(i)return this.nextTick(n,i),n[pe];let o=this.keyEncoding(r.keyEncoding),s=o.format;return r.keyEncoding!==s&&(r=Object.assign({},r,{keyEncoding:s})),this._del(this.prefixKey(o.encode(e),s),r,c=>{if(c)return n(c);this.emit("del",e),n()}),n[pe]}_del(e,r,n){this.nextTick(n)}batch(e,r,n){if(!arguments.length){if(this[be]==="opening")return new p2(this);if(this[be]!=="open")throw new An("Database is not open",{code:"LEVEL_DATABASE_NOT_OPEN"});return this._chainedBatch()}if(typeof e=="function"?n=e:n=Js(r,n),n=Vo(n,pe),r=qo(r,this[Zs].empty),this[be]==="opening")return this.defer(()=>this.batch(e,r,n)),n[pe];if(Aa(this,n))return n[pe];if(!Array.isArray(e))return this.nextTick(n,new TypeError("The first argument 'operations' must be an array")),n[pe];if(e.length===0)return this.nextTick(n),n[pe];let i=new Array(e.length),{keyEncoding:o,valueEncoding:s,...c}=r;for(let a=0;a<e.length;a++){if(typeof e[a]!="object"||e[a]===null)return this.nextTick(n,new TypeError("A batch operation must be an object")),n[pe];let u=Object.assign({},e[a]);if(u.type!=="put"&&u.type!=="del")return this.nextTick(n,new TypeError("A batch operation must have a type property that is 'put' or 'del'")),n[pe];let d=this._checkKey(u.key);if(d)return this.nextTick(n,d),n[pe];let f=u.sublevel!=null?u.sublevel:this,h=f.keyEncoding(u.keyEncoding||o),p=h.format;if(u.key=f.prefixKey(h.encode(u.key),p),u.keyEncoding=p,u.type==="put"){let g=this._checkValue(u.value);if(g)return this.nextTick(n,g),n[pe];let y=f.valueEncoding(u.valueEncoding||s);u.value=y.encode(u.value),u.valueEncoding=y.format}f!==this&&(u.sublevel=null),i[a]=u}return this._batch(i,c,a=>{if(a)return n(a);this.emit("batch",e),n()}),n[pe]}_batch(e,r,n){this.nextTick(n)}sublevel(e,r){return this._sublevel(e,Zg.defaults(r))}_sublevel(e,r){return new Zg(this,e,r)}prefixKey(e,r){return e}clear(e,r){if(r=Js(e,r),r=Vo(r,pe),e=qo(e,this[Zs].empty),this[be]==="opening")return this.defer(()=>this.clear(e,r)),r[pe];if(Aa(this,r))return r[pe];let n=e,i=this.keyEncoding(e.keyEncoding);return e=hh(e,i),e.keyEncoding=i.format,e.limit===0?this.nextTick(r):this._clear(e,o=>{if(o)return r(o);this.emit("clear",n),r()}),r[pe]}_clear(e,r){this.nextTick(r)}iterator(e){let r=this.keyEncoding(e&&e.keyEncoding),n=this.valueEncoding(e&&e.valueEncoding);if(e=hh(e,r),e.keys=e.keys!==!1,e.values=e.values!==!1,e[Ys.keyEncoding]=r,e[Ys.valueEncoding]=n,e.keyEncoding=r.format,e.valueEncoding=n.format,this[be]==="opening")return new MU(this,e);if(this[be]!=="open")throw new An("Database is not open",{code:"LEVEL_DATABASE_NOT_OPEN"});return this._iterator(e)}_iterator(e){return new Ys(this,e)}keys(e){let r=this.keyEncoding(e&&e.keyEncoding),n=this.valueEncoding(e&&e.valueEncoding);if(e=hh(e,r),e[Ys.keyEncoding]=r,e[Ys.valueEncoding]=n,e.keyEncoding=r.format,e.valueEncoding=n.format,this[be]==="opening")return new KU(this,e);if(this[be]!=="open")throw new An("Database is not open",{code:"LEVEL_DATABASE_NOT_OPEN"});return this._keys(e)}_keys(e){return new LU(this,e)}values(e){let r=this.keyEncoding(e&&e.keyEncoding),n=this.valueEncoding(e&&e.valueEncoding);if(e=hh(e,r),e[Ys.keyEncoding]=r,e[Ys.valueEncoding]=n,e.keyEncoding=r.format,e.valueEncoding=n.format,this[be]==="opening")return new $U(this,e);if(this[be]!=="open")throw new An("Database is not open",{code:"LEVEL_DATABASE_NOT_OPEN"});return this._values(e)}_values(e){return new PU(this,e)}defer(e){if(typeof e!="function")throw new TypeError("The first argument must be a function");this[Ad].push(e)}[Td](){if(this[Ad].length===0)return;let e=this[Ad];this[Ad]=[];for(let r of e)r()}attachResource(e){if(typeof e!="object"||e===null||typeof e.close!="function")throw new TypeError("The first argument must be a resource object");this[Xs].add(e)}detachResource(e){this[Xs].delete(e)}_chainedBatch(){return new p2(this)}_checkKey(e){if(e==null)return new An("Key cannot be null or undefined",{code:"LEVEL_INVALID_KEY"})}_checkValue(e){if(e==null)return new An("Value cannot be null or undefined",{code:"LEVEL_INVALID_VALUE"})}};_d.prototype.nextTick=a2();var{AbstractSublevel:Zg}=h2()({AbstractLevel:_d});Qg.AbstractLevel=_d;Qg.AbstractSublevel=Zg;var Aa=function(t,e){return t[be]!=="open"?(t.nextTick(e,new An("Database is not open",{code:"LEVEL_DATABASE_NOT_OPEN"})),!0):!1},VU=function(t){return Object.keys(t.supports.encodings).filter(e=>!!t.supports.encodings[e])}});var tm=oe(Qs=>{"use strict";l();Qs.AbstractLevel=em().AbstractLevel;Qs.AbstractSublevel=em().AbstractSublevel;Qs.AbstractIterator=$o().AbstractIterator;Qs.AbstractKeyIterator=$o().AbstractKeyIterator;Qs.AbstractValueIterator=$o().AbstractValueIterator;Qs.AbstractChainedBatch=Vg().AbstractChainedBatch});var m2=oe((Jq,g2)=>{l();g2.exports=FU;var qU=Fg();function FU(t,e,r){if(typeof e!="number")throw new Error("second argument must be a Number");let n,i,o,s,c,a=!0,u;Array.isArray(t)?(n=[],o=i=t.length):(s=Object.keys(t),n={},o=i=s.length);function d(h){function p(){r&&r(h,n),r=null}a?qU(p):p()}function f(h,p,g){if(n[h]=g,p&&(c=!0),--o===0||p)d(p);else if(!c&&u<i){let y;s?(y=s[u],u+=1,t[y](function(x,S){f(y,x,S)})):(y=u,u+=1,t[y](function(x,S){f(y,x,S)}))}}u=e,o?s?s.some(function(h,p){return t[h](function(g,y){f(h,g,y)}),p===e-1}):t.some(function(h,p){return h(function(g,y){f(p,g,y)}),p===e-1}):d(null),a=!1}});var rm=oe((Zq,w2)=>{"use strict";l();w2.exports=function(e){let r=e.gte!==void 0?e.gte:e.gt!==void 0?e.gt:void 0,n=e.lte!==void 0?e.lte:e.lt!==void 0?e.lt:void 0,i=e.gte===void 0,o=e.lte===void 0;return r!==void 0&&n!==void 0?IDBKeyRange.bound(r,n,i,o):r!==void 0?IDBKeyRange.lowerBound(r,i):n!==void 0?IDBKeyRange.upperBound(n,o):null}});var nm=oe((eF,b2)=>{"use strict";l();var jU=new TextEncoder;b2.exports=function(t){return t instanceof Uint8Array?t:t instanceof ArrayBuffer?new Uint8Array(t):jU.encode(t)}});var A2=oe(S2=>{"use strict";l();var{AbstractIterator:WU}=tm(),x2=rm(),gh=nm(),ei=Symbol("cache"),Fi=Symbol("finished"),Cr=Symbol("options"),ji=Symbol("currentOptions"),ec=Symbol("position"),im=Symbol("location"),Ta=Symbol("first"),E2={},om=class extends WU{constructor(e,r,n){super(e,n),this[ei]=[],this[Fi]=this.limit===0,this[Cr]=n,this[ji]={...n},this[ec]=void 0,this[im]=r,this[Ta]=!0}_nextv(e,r,n){if(this[Ta]=!1,this[Fi])return this.nextTick(n,null,[]);if(this[ei].length>0)return e=Math.min(e,this[ei].length),this.nextTick(n,null,this[ei].splice(0,e));this[ec]!==void 0&&(this[Cr].reverse?(this[ji].lt=this[ec],this[ji].lte=void 0):(this[ji].gt=this[ec],this[ji].gte=void 0));let i;try{i=x2(this[ji])}catch{return this[Fi]=!0,this.nextTick(n,null,[])}let o=this.db.db.transaction([this[im]],"readonly"),s=o.objectStore(this[im]),c=[];if(this[Cr].reverse){let a=!this[Cr].values&&s.openKeyCursor?"openKeyCursor":"openCursor";s[a](i,"prev").onsuccess=u=>{let d=u.target.result;if(d){let{key:f,value:h}=d;this[ec]=f,c.push([this[Cr].keys&&f!==void 0?gh(f):void 0,this[Cr].values&&h!==void 0?gh(h):void 0]),c.length<e?d.continue():v2(o)}else this[Fi]=!0}}else{let a,u,d=()=>{if(a===void 0||u===void 0)return;let f=Math.max(a.length,u.length);f===0||e===1/0?this[Fi]=!0:this[ec]=a[f-1],c.length=f;for(let h=0;h<f;h++){let p=a[h],g=u[h];c[h]=[this[Cr].keys&&p!==void 0?gh(p):void 0,this[Cr].values&&g!==void 0?gh(g):void 0]}v2(o)};this[Cr].keys||e<1/0?s.getAllKeys(i,e<1/0?e:void 0).onsuccess=f=>{a=f.target.result,d()}:(a=[],this.nextTick(d)),this[Cr].values?s.getAll(i,e<1/0?e:void 0).onsuccess=f=>{u=f.target.result,d()}:(u=[],this.nextTick(d))}o.onabort=()=>{n(o.error||new Error("aborted by user")),n=null},o.oncomplete=()=>{n(null,c),n=null}}_next(e){if(this[ei].length>0){let[r,n]=this[ei].shift();this.nextTick(e,null,r,n)}else if(this[Fi])this.nextTick(e);else{let r=Math.min(100,this.limit-this.count);this[Ta]&&(this[Ta]=!1,r=1),this._nextv(r,E2,(n,i)=>{if(n)return e(n);this[ei]=i,this._next(e)})}}_all(e,r){this[Ta]=!1;let n=this[ei].splice(0,this[ei].length),i=this.limit-this.count-n.length;if(i<=0)return this.nextTick(r,null,n);this._nextv(i,E2,(o,s)=>{if(o)return r(o);n.length>0&&(s=n.concat(s)),r(null,s)})}_seek(e,r){this[Ta]=!0,this[ei]=[],this[Fi]=!1,this[ec]=void 0,this[ji]={...this[Cr]};let n;try{n=x2(this[Cr])}catch{this[Fi]=!0;return}n!==null&&!n.includes(e)?this[Fi]=!0:this[Cr].reverse?this[ji].lte=e:this[ji].gte=e}};S2.Iterator=om;function v2(t){typeof t.commit=="function"&&t.commit()}});var _2=oe((iF,T2)=>{"use strict";l();T2.exports=function(e,r,n,i,o){if(i.limit===0)return e.nextTick(o);let s=e.db.transaction([r],"readwrite"),c=s.objectStore(r),a=0;s.oncomplete=function(){o()},s.onabort=function(){o(s.error||new Error("aborted by user"))};let u=c.openKeyCursor?"openKeyCursor":"openCursor",d=i.reverse?"prev":"next";c[u](n,d).onsuccess=function(f){let h=f.target.result;h&&(c.delete(h.key).onsuccess=function(){(i.limit<=0||++a<i.limit)&&h.continue()})}}});var D2=oe(O2=>{"use strict";l();var{AbstractLevel:GU}=tm(),I2=vn(),zU=m2(),{fromCallback:YU}=hd(),{Iterator:JU}=A2(),B2=nm(),XU=_2(),ZU=rm(),U2="level-js-",Id=Symbol("idb"),sm=Symbol("namePrefix"),Wi=Symbol("location"),cm=Symbol("version"),tc=Symbol("store"),Bd=Symbol("onComplete"),R2=Symbol("promise"),mh=class extends GU{constructor(e,r,n){if(typeof r=="function"||typeof n=="function")throw new I2("The levelup-style callback argument has been removed",{code:"LEVEL_LEGACY"});let{prefix:i,version:o,...s}=r||{};if(super({encodings:{view:!0},snapshots:!1,createIfMissing:!1,errorIfExists:!1,seek:!0},s),typeof e!="string")throw new Error("constructor requires a location string argument");this[Wi]=e,this[sm]=i??U2,this[cm]=parseInt(o||1,10),this[Id]=null}get location(){return this[Wi]}get namePrefix(){return this[sm]}get version(){return this[cm]}get db(){return this[Id]}get type(){return"browser-level"}_open(e,r){let n=indexedDB.open(this[sm]+this[Wi],this[cm]);n.onerror=function(){r(n.error||new Error("unknown error"))},n.onsuccess=()=>{this[Id]=n.result,r()},n.onupgradeneeded=i=>{let o=i.target.result;o.objectStoreNames.contains(this[Wi])||o.createObjectStore(this[Wi])}}[tc](e){return this[Id].transaction([this[Wi]],e).objectStore(this[Wi])}[Bd](e,r){let n=e.transaction;n.onabort=function(){r(n.error||new Error("aborted by user"))},n.oncomplete=function(){r(null,e.result)}}_get(e,r,n){let i=this[tc]("readonly"),o;try{o=i.get(e)}catch(s){return this.nextTick(n,s)}this[Bd](o,function(s,c){if(s)return n(s);if(c===void 0)return n(new I2("Entry not found",{code:"LEVEL_NOT_FOUND"}));n(null,B2(c))})}_getMany(e,r,n){let i=this[tc]("readonly"),o=e.map(s=>c=>{let a;try{a=i.get(s)}catch(u){return c(u)}a.onsuccess=()=>{let u=a.result;c(null,u===void 0?u:B2(u))},a.onerror=u=>{u.stopPropagation(),c(a.error)}});zU(o,16,n)}_del(e,r,n){let i=this[tc]("readwrite"),o;try{o=i.delete(e)}catch(s){return this.nextTick(n,s)}this[Bd](o,n)}_put(e,r,n,i){let o=this[tc]("readwrite"),s;try{s=o.put(r,e)}catch(c){return this.nextTick(i,c)}this[Bd](s,i)}_iterator(e){return new JU(this,this[Wi],e)}_batch(e,r,n){let i=this[tc]("readwrite"),o=i.transaction,s=0,c;o.onabort=function(){n(c||o.error||new Error("aborted by user"))},o.oncomplete=function(){n()};function a(){let u=e[s++],d=u.key,f;try{f=u.type==="del"?i.delete(d):i.put(u.value,d)}catch(h){c=h,o.abort();return}s<e.length?f.onsuccess=a:typeof o.commit=="function"&&o.commit()}a()}_clear(e,r){let n,i;try{n=ZU(e)}catch{return this.nextTick(r)}if(e.limit>=0)return XU(this,this[Wi],n,e,r);try{let o=this[tc]("readwrite");i=n?o.delete(n):o.clear()}catch(o){return this.nextTick(r,o)}this[Bd](i,r)}_close(e){this[Id].close(),this.nextTick(e)}};mh.destroy=function(t,e,r){typeof e=="function"&&(r=e,e=U2),r=YU(r,R2);let n=indexedDB.deleteDatabase(e+t);return n.onsuccess=function(){r()},n.onerror=function(i){r(i)},r[R2]};O2.BrowserLevel=mh});var am=oe(k2=>{l();k2.Level=D2().BrowserLevel});var nt=oe((yF,N2)=>{"use strict";l();N2.exports={ArrayIsArray(t){return Array.isArray(t)},ArrayPrototypeIncludes(t,e){return t.includes(e)},ArrayPrototypeIndexOf(t,e){return t.indexOf(e)},ArrayPrototypeJoin(t,e){return t.join(e)},ArrayPrototypeMap(t,e){return t.map(e)},ArrayPrototypePop(t,e){return t.pop(e)},ArrayPrototypePush(t,e){return t.push(e)},ArrayPrototypeSlice(t,e,r){return t.slice(e,r)},Error,FunctionPrototypeCall(t,e,...r){return t.call(e,...r)},FunctionPrototypeSymbolHasInstance(t,e){return Function.prototype[Symbol.hasInstance].call(t,e)},MathFloor:Math.floor,Number,NumberIsInteger:Number.isInteger,NumberIsNaN:Number.isNaN,NumberMAX_SAFE_INTEGER:Number.MAX_SAFE_INTEGER,NumberMIN_SAFE_INTEGER:Number.MIN_SAFE_INTEGER,NumberParseInt:Number.parseInt,ObjectDefineProperties(t,e){return Object.defineProperties(t,e)},ObjectDefineProperty(t,e,r){return Object.defineProperty(t,e,r)},ObjectGetOwnPropertyDescriptor(t,e){return Object.getOwnPropertyDescriptor(t,e)},ObjectKeys(t){return Object.keys(t)},ObjectSetPrototypeOf(t,e){return Object.setPrototypeOf(t,e)},Promise,PromisePrototypeCatch(t,e){return t.catch(e)},PromisePrototypeThen(t,e,r){return t.then(e,r)},PromiseReject(t){return Promise.reject(t)},PromiseResolve(t){return Promise.resolve(t)},ReflectApply:Reflect.apply,RegExpPrototypeTest(t,e){return t.test(e)},SafeSet:Set,String,StringPrototypeSlice(t,e,r){return t.slice(e,r)},StringPrototypeToLowerCase(t){return t.toLowerCase()},StringPrototypeToUpperCase(t){return t.toUpperCase()},StringPrototypeTrim(t){return t.trim()},Symbol,SymbolFor:Symbol.for,SymbolAsyncIterator:Symbol.asyncIterator,SymbolHasInstance:Symbol.hasInstance,SymbolIterator:Symbol.iterator,SymbolDispose:Symbol.dispose||Symbol("Symbol.dispose"),SymbolAsyncDispose:Symbol.asyncDispose||Symbol("Symbol.asyncDispose"),TypedArrayPrototypeSet(t,e,r){return t.set(e,r)},Boolean,Uint8Array}});var _a=oe((mF,bh)=>{"use strict";l();var{AbortController:C2,AbortSignal:eO}=typeof self<"u"?self:typeof window<"u"?window:void 0;bh.exports=C2;bh.exports.AbortSignal=eO;bh.exports.default=C2});var Zt=oe((bF,dm)=>{"use strict";l();var tO=Tr(),{kResistStopPropagation:rO,SymbolDispose:nO}=nt(),iO=globalThis.AbortSignal||_a().AbortSignal,oO=globalThis.AbortController||_a().AbortController,sO=Object.getPrototypeOf(async function(){}).constructor,L2=globalThis.Blob||tO.Blob,cO=typeof L2<"u"?function(e){return e instanceof L2}:function(e){return!1},P2=(t,e)=>{if(t!==void 0&&(t===null||typeof t!="object"||!("aborted"in t)))throw new ERR_INVALID_ARG_TYPE(e,"AbortSignal",t)},aO=(t,e)=>{if(typeof t!="function")throw new ERR_INVALID_ARG_TYPE(e,"Function",t)},um=class extends Error{constructor(e){if(!Array.isArray(e))throw new TypeError(`Expected input to be an Array, got ${typeof e}`);let r="";for(let n=0;n<e.length;n++)r+=` ${e[n].stack}
|
|
2
|
-
`;super(r),this.name="AggregateError",this.errors=e}};dm.exports={AggregateError:um,kEmptyObject:Object.freeze({}),once(t){let e=!1;return function(...r){e||(e=!0,t.apply(this,r))}},createDeferredPromise:function(){let t,e;return{promise:new Promise((n,i)=>{t=n,e=i}),resolve:t,reject:e}},promisify(t){return new Promise((e,r)=>{t((n,...i)=>n?r(n):e(...i))})},debuglog(){return function(){}},format(t,...e){return t.replace(/%([sdifj])/g,function(...[r,n]){let i=e.shift();return n==="f"?i.toFixed(6):n==="j"?JSON.stringify(i):n==="s"&&typeof i=="object"?`${i.constructor!==Object?i.constructor.name:""} {}`.trim():i.toString()})},inspect(t){switch(typeof t){case"string":if(t.includes("'"))if(t.includes('"')){if(!t.includes("`")&&!t.includes("${"))return`\`${t}\``}else return`"${t}"`;return`'${t}'`;case"number":return isNaN(t)?"NaN":Object.is(t,-0)?String(t):t;case"bigint":return`${String(t)}n`;case"boolean":case"undefined":return String(t);case"object":return"{}"}},types:{isAsyncFunction(t){return t instanceof sO},isArrayBufferView(t){return ArrayBuffer.isView(t)}},isBlob:cO,deprecate(t,e){return t},addAbortListener:ya().addAbortListener||function(e,r){if(e===void 0)throw new ERR_INVALID_ARG_TYPE("signal","AbortSignal",e);P2(e,"signal"),aO(r,"listener");let n;return e.aborted?queueMicrotask(()=>r()):(e.addEventListener("abort",r,{__proto__:null,once:!0,[rO]:!0}),n=()=>{e.removeEventListener("abort",r)}),{__proto__:null,[nO](){var i;(i=n)===null||i===void 0||i()}}},AbortSignalAny:iO.any||function(e){if(e.length===1)return e[0];let r=new oO,n=()=>r.abort();return e.forEach(i=>{P2(i,"signals"),i.addEventListener("abort",n,{once:!0})}),r.signal.addEventListener("abort",()=>{e.forEach(i=>i.removeEventListener("abort",n))},{once:!0}),r.signal}};dm.exports.promisify.custom=Symbol.for("nodejs.util.promisify.custom")});var sr=oe((EF,$2)=>{"use strict";l();var{format:uO,inspect:xh,AggregateError:dO}=Zt(),fO=globalThis.AggregateError||dO,lO=Symbol("kIsNodeError"),hO=["string","function","number","object","Function","Object","boolean","bigint","symbol"],pO=/^([A-Z][a-z0-9]*)+$/,yO="__node_internal_",Eh={};function nc(t,e){if(!t)throw new Eh.ERR_INTERNAL_ASSERTION(e)}function M2(t){let e="",r=t.length,n=t[0]==="-"?1:0;for(;r>=n+4;r-=3)e=`_${t.slice(r-3,r)}${e}`;return`${t.slice(0,r)}${e}`}function gO(t,e,r){if(typeof e=="function")return nc(e.length<=r.length,`Code: ${t}; The provided arguments length (${r.length}) does not match the required ones (${e.length}).`),e(...r);let n=(e.match(/%[dfijoOs]/g)||[]).length;return nc(n===r.length,`Code: ${t}; The provided arguments length (${r.length}) does not match the required ones (${n}).`),r.length===0?e:uO(e,...r)}function Kt(t,e,r){r||(r=Error);class n extends r{constructor(...o){super(gO(t,e,o))}toString(){return`${this.name} [${t}]: ${this.message}`}}Object.defineProperties(n.prototype,{name:{value:r.name,writable:!0,enumerable:!1,configurable:!0},toString:{value(){return`${this.name} [${t}]: ${this.message}`},writable:!0,enumerable:!1,configurable:!0}}),n.prototype.code=t,n.prototype[lO]=!0,Eh[t]=n}function K2(t){let e=yO+t.name;return Object.defineProperty(t,"name",{value:e}),t}function mO(t,e){if(t&&e&&t!==e){if(Array.isArray(e.errors))return e.errors.push(t),e;let r=new fO([e,t],e.message);return r.code=e.code,r}return t||e}var fm=class extends Error{constructor(e="The operation was aborted",r=void 0){if(r!==void 0&&typeof r!="object")throw new Eh.ERR_INVALID_ARG_TYPE("options","Object",r);super(e,r),this.code="ABORT_ERR",this.name="AbortError"}};Kt("ERR_ASSERTION","%s",Error);Kt("ERR_INVALID_ARG_TYPE",(t,e,r)=>{nc(typeof t=="string","'name' must be a string"),Array.isArray(e)||(e=[e]);let n="The ";t.endsWith(" argument")?n+=`${t} `:n+=`"${t}" ${t.includes(".")?"property":"argument"} `,n+="must be ";let i=[],o=[],s=[];for(let a of e)nc(typeof a=="string","All expected entries have to be of type string"),hO.includes(a)?i.push(a.toLowerCase()):pO.test(a)?o.push(a):(nc(a!=="object",'The value "object" should be written as "Object"'),s.push(a));if(o.length>0){let a=i.indexOf("object");a!==-1&&(i.splice(i,a,1),o.push("Object"))}if(i.length>0){switch(i.length){case 1:n+=`of type ${i[0]}`;break;case 2:n+=`one of type ${i[0]} or ${i[1]}`;break;default:{let a=i.pop();n+=`one of type ${i.join(", ")}, or ${a}`}}(o.length>0||s.length>0)&&(n+=" or ")}if(o.length>0){switch(o.length){case 1:n+=`an instance of ${o[0]}`;break;case 2:n+=`an instance of ${o[0]} or ${o[1]}`;break;default:{let a=o.pop();n+=`an instance of ${o.join(", ")}, or ${a}`}}s.length>0&&(n+=" or ")}switch(s.length){case 0:break;case 1:s[0].toLowerCase()!==s[0]&&(n+="an "),n+=`${s[0]}`;break;case 2:n+=`one of ${s[0]} or ${s[1]}`;break;default:{let a=s.pop();n+=`one of ${s.join(", ")}, or ${a}`}}if(r==null)n+=`. Received ${r}`;else if(typeof r=="function"&&r.name)n+=`. Received function ${r.name}`;else if(typeof r=="object"){var c;if((c=r.constructor)!==null&&c!==void 0&&c.name)n+=`. Received an instance of ${r.constructor.name}`;else{let a=xh(r,{depth:-1});n+=`. Received ${a}`}}else{let a=xh(r,{colors:!1});a.length>25&&(a=`${a.slice(0,25)}...`),n+=`. Received type ${typeof r} (${a})`}return n},TypeError);Kt("ERR_INVALID_ARG_VALUE",(t,e,r="is invalid")=>{let n=xh(e);return n.length>128&&(n=n.slice(0,128)+"..."),`The ${t.includes(".")?"property":"argument"} '${t}' ${r}. Received ${n}`},TypeError);Kt("ERR_INVALID_RETURN_VALUE",(t,e,r)=>{var n;let i=r!=null&&(n=r.constructor)!==null&&n!==void 0&&n.name?`instance of ${r.constructor.name}`:`type ${typeof r}`;return`Expected ${t} to be returned from the "${e}" function but got ${i}.`},TypeError);Kt("ERR_MISSING_ARGS",(...t)=>{nc(t.length>0,"At least one arg needs to be specified");let e,r=t.length;switch(t=(Array.isArray(t)?t:[t]).map(n=>`"${n}"`).join(" or "),r){case 1:e+=`The ${t[0]} argument`;break;case 2:e+=`The ${t[0]} and ${t[1]} arguments`;break;default:{let n=t.pop();e+=`The ${t.join(", ")}, and ${n} arguments`}break}return`${e} must be specified`},TypeError);Kt("ERR_OUT_OF_RANGE",(t,e,r)=>{nc(e,'Missing "range" argument');let n;return Number.isInteger(r)&&Math.abs(r)>2**32?n=M2(String(r)):typeof r=="bigint"?(n=String(r),(r>2n**32n||r<-(2n**32n))&&(n=M2(n)),n+="n"):n=xh(r),`The value of "${t}" is out of range. It must be ${e}. Received ${n}`},RangeError);Kt("ERR_MULTIPLE_CALLBACK","Callback called multiple times",Error);Kt("ERR_METHOD_NOT_IMPLEMENTED","The %s method is not implemented",Error);Kt("ERR_STREAM_ALREADY_FINISHED","Cannot call %s after a stream was finished",Error);Kt("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable",Error);Kt("ERR_STREAM_DESTROYED","Cannot call %s after a stream was destroyed",Error);Kt("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError);Kt("ERR_STREAM_PREMATURE_CLOSE","Premature close",Error);Kt("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF",Error);Kt("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event",Error);Kt("ERR_STREAM_WRITE_AFTER_END","write after end",Error);Kt("ERR_UNKNOWN_ENCODING","Unknown encoding: %s",TypeError);$2.exports={AbortError:fm,aggregateTwoErrors:K2(mO),hideStackFrames:K2,codes:Eh}});var Ba=oe((SF,J2)=>{"use strict";l();var{ArrayIsArray:hm,ArrayPrototypeIncludes:F2,ArrayPrototypeJoin:j2,ArrayPrototypeMap:wO,NumberIsInteger:pm,NumberIsNaN:bO,NumberMAX_SAFE_INTEGER:xO,NumberMIN_SAFE_INTEGER:EO,NumberParseInt:vO,ObjectPrototypeHasOwnProperty:SO,RegExpPrototypeExec:W2,String:AO,StringPrototypeToUpperCase:TO,StringPrototypeTrim:_O}=nt(),{hideStackFrames:nn,codes:{ERR_SOCKET_BAD_PORT:IO,ERR_INVALID_ARG_TYPE:Qt,ERR_INVALID_ARG_VALUE:Ia,ERR_OUT_OF_RANGE:ic,ERR_UNKNOWN_SIGNAL:H2}}=sr(),{normalizeEncoding:BO}=Zt(),{isAsyncFunction:RO,isArrayBufferView:UO}=Zt().types,V2={};function OO(t){return t===(t|0)}function DO(t){return t===t>>>0}var kO=/^[0-7]+$/,NO="must be a 32-bit unsigned integer or an octal string";function CO(t,e,r){if(typeof t>"u"&&(t=r),typeof t=="string"){if(W2(kO,t)===null)throw new Ia(e,t,NO);t=vO(t,8)}return G2(t,e),t}var LO=nn((t,e,r=EO,n=xO)=>{if(typeof t!="number")throw new Qt(e,"number",t);if(!pm(t))throw new ic(e,"an integer",t);if(t<r||t>n)throw new ic(e,`>= ${r} && <= ${n}`,t)}),PO=nn((t,e,r=-2147483648,n=2147483647)=>{if(typeof t!="number")throw new Qt(e,"number",t);if(!pm(t))throw new ic(e,"an integer",t);if(t<r||t>n)throw new ic(e,`>= ${r} && <= ${n}`,t)}),G2=nn((t,e,r=!1)=>{if(typeof t!="number")throw new Qt(e,"number",t);if(!pm(t))throw new ic(e,"an integer",t);let n=r?1:0,i=4294967295;if(t<n||t>i)throw new ic(e,`>= ${n} && <= ${i}`,t)});function ym(t,e){if(typeof t!="string")throw new Qt(e,"string",t)}function MO(t,e,r=void 0,n){if(typeof t!="number")throw new Qt(e,"number",t);if(r!=null&&t<r||n!=null&&t>n||(r!=null||n!=null)&&bO(t))throw new ic(e,`${r!=null?`>= ${r}`:""}${r!=null&&n!=null?" && ":""}${n!=null?`<= ${n}`:""}`,t)}var KO=nn((t,e,r)=>{if(!F2(r,t)){let i="must be one of: "+j2(wO(r,o=>typeof o=="string"?`'${o}'`:AO(o)),", ");throw new Ia(e,t,i)}});function z2(t,e){if(typeof t!="boolean")throw new Qt(e,"boolean",t)}function lm(t,e,r){return t==null||!SO(t,e)?r:t[e]}var $O=nn((t,e,r=null)=>{let n=lm(r,"allowArray",!1),i=lm(r,"allowFunction",!1);if(!lm(r,"nullable",!1)&&t===null||!n&&hm(t)||typeof t!="object"&&(!i||typeof t!="function"))throw new Qt(e,"Object",t)}),HO=nn((t,e)=>{if(t!=null&&typeof t!="object"&&typeof t!="function")throw new Qt(e,"a dictionary",t)}),vh=nn((t,e,r=0)=>{if(!hm(t))throw new Qt(e,"Array",t);if(t.length<r){let n=`must be longer than ${r}`;throw new Ia(e,t,n)}});function VO(t,e){vh(t,e);for(let r=0;r<t.length;r++)ym(t[r],`${e}[${r}]`)}function qO(t,e){vh(t,e);for(let r=0;r<t.length;r++)z2(t[r],`${e}[${r}]`)}function FO(t,e){vh(t,e);for(let r=0;r<t.length;r++){let n=t[r],i=`${e}[${r}]`;if(n==null)throw new Qt(i,"AbortSignal",n);Y2(n,i)}}function jO(t,e="signal"){if(ym(t,e),V2[t]===void 0)throw V2[TO(t)]!==void 0?new H2(t+" (signals must use all capital letters)"):new H2(t)}var WO=nn((t,e="buffer")=>{if(!UO(t))throw new Qt(e,["Buffer","TypedArray","DataView"],t)});function GO(t,e){let r=BO(e),n=t.length;if(r==="hex"&&n%2!==0)throw new Ia("encoding",e,`is invalid for data of length ${n}`)}function zO(t,e="Port",r=!0){if(typeof t!="number"&&typeof t!="string"||typeof t=="string"&&_O(t).length===0||+t!==+t>>>0||t>65535||t===0&&!r)throw new IO(e,t,r);return t|0}var Y2=nn((t,e)=>{if(t!==void 0&&(t===null||typeof t!="object"||!("aborted"in t)))throw new Qt(e,"AbortSignal",t)}),YO=nn((t,e)=>{if(typeof t!="function")throw new Qt(e,"Function",t)}),JO=nn((t,e)=>{if(typeof t!="function"||RO(t))throw new Qt(e,"Function",t)}),XO=nn((t,e)=>{if(t!==void 0)throw new Qt(e,"undefined",t)});function ZO(t,e,r){if(!F2(r,t))throw new Qt(e,`('${j2(r,"|")}')`,t)}var QO=/^(?:<[^>]*>)(?:\s*;\s*[^;"\s]+(?:=(")?[^;"\s]*\1)?)*$/;function q2(t,e){if(typeof t>"u"||!W2(QO,t))throw new Ia(e,t,'must be an array or string of format "</styles.css>; rel=preload; as=style"')}function e5(t){if(typeof t=="string")return q2(t,"hints"),t;if(hm(t)){let e=t.length,r="";if(e===0)return r;for(let n=0;n<e;n++){let i=t[n];q2(i,"hints"),r+=i,n!==e-1&&(r+=", ")}return r}throw new Ia("hints",t,'must be an array or string of format "</styles.css>; rel=preload; as=style"')}J2.exports={isInt32:OO,isUint32:DO,parseFileMode:CO,validateArray:vh,validateStringArray:VO,validateBooleanArray:qO,validateAbortSignalArray:FO,validateBoolean:z2,validateBuffer:WO,validateDictionary:HO,validateEncoding:GO,validateFunction:YO,validateInt32:PO,validateInteger:LO,validateNumber:MO,validateObject:$O,validateOneOf:KO,validatePlainFunction:JO,validatePort:zO,validateSignalName:jO,validateString:ym,validateUint32:G2,validateUndefined:XO,validateUnion:ZO,validateAbortSignal:Y2,validateLinkHeaderValue:e5}});var ri=oe((TF,fS)=>{"use strict";l();var{SymbolAsyncIterator:X2,SymbolIterator:Z2,SymbolFor:oc}=nt(),Q2=oc("nodejs.stream.destroyed"),eS=oc("nodejs.stream.errored"),gm=oc("nodejs.stream.readable"),mm=oc("nodejs.stream.writable"),tS=oc("nodejs.stream.disturbed"),t5=oc("nodejs.webstream.isClosedPromise"),r5=oc("nodejs.webstream.controllerErrorFunction");function Sh(t,e=!1){var r;return!!(t&&typeof t.pipe=="function"&&typeof t.on=="function"&&(!e||typeof t.pause=="function"&&typeof t.resume=="function")&&(!t._writableState||((r=t._readableState)===null||r===void 0?void 0:r.readable)!==!1)&&(!t._writableState||t._readableState))}function Ah(t){var e;return!!(t&&typeof t.write=="function"&&typeof t.on=="function"&&(!t._readableState||((e=t._writableState)===null||e===void 0?void 0:e.writable)!==!1))}function n5(t){return!!(t&&typeof t.pipe=="function"&&t._readableState&&typeof t.on=="function"&&typeof t.write=="function")}function ti(t){return t&&(t._readableState||t._writableState||typeof t.write=="function"&&typeof t.on=="function"||typeof t.pipe=="function"&&typeof t.on=="function")}function rS(t){return!!(t&&!ti(t)&&typeof t.pipeThrough=="function"&&typeof t.getReader=="function"&&typeof t.cancel=="function")}function nS(t){return!!(t&&!ti(t)&&typeof t.getWriter=="function"&&typeof t.abort=="function")}function iS(t){return!!(t&&!ti(t)&&typeof t.readable=="object"&&typeof t.writable=="object")}function i5(t){return rS(t)||nS(t)||iS(t)}function o5(t,e){return t==null?!1:e===!0?typeof t[X2]=="function":e===!1?typeof t[Z2]=="function":typeof t[X2]=="function"||typeof t[Z2]=="function"}function Th(t){if(!ti(t))return null;let e=t._writableState,r=t._readableState,n=e||r;return!!(t.destroyed||t[Q2]||n!=null&&n.destroyed)}function oS(t){if(!Ah(t))return null;if(t.writableEnded===!0)return!0;let e=t._writableState;return e!=null&&e.errored?!1:typeof e?.ended!="boolean"?null:e.ended}function s5(t,e){if(!Ah(t))return null;if(t.writableFinished===!0)return!0;let r=t._writableState;return r!=null&&r.errored?!1:typeof r?.finished!="boolean"?null:!!(r.finished||e===!1&&r.ended===!0&&r.length===0)}function c5(t){if(!Sh(t))return null;if(t.readableEnded===!0)return!0;let e=t._readableState;return!e||e.errored?!1:typeof e?.ended!="boolean"?null:e.ended}function sS(t,e){if(!Sh(t))return null;let r=t._readableState;return r!=null&&r.errored?!1:typeof r?.endEmitted!="boolean"?null:!!(r.endEmitted||e===!1&&r.ended===!0&&r.length===0)}function cS(t){return t&&t[gm]!=null?t[gm]:typeof t?.readable!="boolean"?null:Th(t)?!1:Sh(t)&&t.readable&&!sS(t)}function aS(t){return t&&t[mm]!=null?t[mm]:typeof t?.writable!="boolean"?null:Th(t)?!1:Ah(t)&&t.writable&&!oS(t)}function a5(t,e){return ti(t)?Th(t)?!0:!(e?.readable!==!1&&cS(t)||e?.writable!==!1&&aS(t)):null}function u5(t){var e,r;return ti(t)?t.writableErrored?t.writableErrored:(e=(r=t._writableState)===null||r===void 0?void 0:r.errored)!==null&&e!==void 0?e:null:null}function d5(t){var e,r;return ti(t)?t.readableErrored?t.readableErrored:(e=(r=t._readableState)===null||r===void 0?void 0:r.errored)!==null&&e!==void 0?e:null:null}function f5(t){if(!ti(t))return null;if(typeof t.closed=="boolean")return t.closed;let e=t._writableState,r=t._readableState;return typeof e?.closed=="boolean"||typeof r?.closed=="boolean"?e?.closed||r?.closed:typeof t._closed=="boolean"&&uS(t)?t._closed:null}function uS(t){return typeof t._closed=="boolean"&&typeof t._defaultKeepAlive=="boolean"&&typeof t._removedConnection=="boolean"&&typeof t._removedContLen=="boolean"}function dS(t){return typeof t._sent100=="boolean"&&uS(t)}function l5(t){var e;return typeof t._consuming=="boolean"&&typeof t._dumped=="boolean"&&((e=t.req)===null||e===void 0?void 0:e.upgradeOrConnect)===void 0}function h5(t){if(!ti(t))return null;let e=t._writableState,r=t._readableState,n=e||r;return!n&&dS(t)||!!(n&&n.autoDestroy&&n.emitClose&&n.closed===!1)}function p5(t){var e;return!!(t&&((e=t[tS])!==null&&e!==void 0?e:t.readableDidRead||t.readableAborted))}function y5(t){var e,r,n,i,o,s,c,a,u,d;return!!(t&&((e=(r=(n=(i=(o=(s=t[eS])!==null&&s!==void 0?s:t.readableErrored)!==null&&o!==void 0?o:t.writableErrored)!==null&&i!==void 0?i:(c=t._readableState)===null||c===void 0?void 0:c.errorEmitted)!==null&&n!==void 0?n:(a=t._writableState)===null||a===void 0?void 0:a.errorEmitted)!==null&&r!==void 0?r:(u=t._readableState)===null||u===void 0?void 0:u.errored)!==null&&e!==void 0?e:!((d=t._writableState)===null||d===void 0)&&d.errored))}fS.exports={isDestroyed:Th,kIsDestroyed:Q2,isDisturbed:p5,kIsDisturbed:tS,isErrored:y5,kIsErrored:eS,isReadable:cS,kIsReadable:gm,kIsClosedPromise:t5,kControllerErrorFunction:r5,kIsWritable:mm,isClosed:f5,isDuplexNodeStream:n5,isFinished:a5,isIterable:o5,isReadableNodeStream:Sh,isReadableStream:rS,isReadableEnded:c5,isReadableFinished:sS,isReadableErrored:d5,isNodeStream:ti,isWebStream:i5,isWritable:aS,isWritableNodeStream:Ah,isWritableStream:nS,isWritableEnded:oS,isWritableFinished:s5,isWritableErrored:u5,isServerRequest:l5,isServerResponse:dS,willEmitClose:h5,isTransformStream:iS}});var Gi=oe((IF,vm)=>{l();var Fo=Ei(),{AbortError:xS,codes:g5}=sr(),{ERR_INVALID_ARG_TYPE:m5,ERR_STREAM_PREMATURE_CLOSE:lS}=g5,{kEmptyObject:bm,once:xm}=Zt(),{validateAbortSignal:w5,validateFunction:b5,validateObject:x5,validateBoolean:E5}=Ba(),{Promise:v5,PromisePrototypeThen:S5,SymbolDispose:ES}=nt(),{isClosed:A5,isReadable:hS,isReadableNodeStream:wm,isReadableStream:T5,isReadableFinished:pS,isReadableErrored:yS,isWritable:gS,isWritableNodeStream:mS,isWritableStream:_5,isWritableFinished:wS,isWritableErrored:bS,isNodeStream:I5,willEmitClose:B5,kIsClosedPromise:R5}=ri(),Ra;function U5(t){return t.setHeader&&typeof t.abort=="function"}var Em=()=>{};function vS(t,e,r){var n,i;if(arguments.length===2?(r=e,e=bm):e==null?e=bm:x5(e,"options"),b5(r,"callback"),w5(e.signal,"options.signal"),r=xm(r),T5(t)||_5(t))return O5(t,e,r);if(!I5(t))throw new m5("stream",["ReadableStream","WritableStream","Stream"],t);let o=(n=e.readable)!==null&&n!==void 0?n:wm(t),s=(i=e.writable)!==null&&i!==void 0?i:mS(t),c=t._writableState,a=t._readableState,u=()=>{t.writable||h()},d=B5(t)&&wm(t)===o&&mS(t)===s,f=wS(t,!1),h=()=>{f=!0,t.destroyed&&(d=!1),!(d&&(!t.readable||o))&&(!o||p)&&r.call(t)},p=pS(t,!1),g=()=>{p=!0,t.destroyed&&(d=!1),!(d&&(!t.writable||s))&&(!s||f)&&r.call(t)},y=T=>{r.call(t,T)},x=A5(t),S=()=>{x=!0;let T=bS(t)||yS(t);if(T&&typeof T!="boolean")return r.call(t,T);if(o&&!p&&wm(t,!0)&&!pS(t,!1))return r.call(t,new lS);if(s&&!f&&!wS(t,!1))return r.call(t,new lS);r.call(t)},_=()=>{x=!0;let T=bS(t)||yS(t);if(T&&typeof T!="boolean")return r.call(t,T);r.call(t)},A=()=>{t.req.on("finish",h)};U5(t)?(t.on("complete",h),d||t.on("abort",S),t.req?A():t.on("request",A)):s&&!c&&(t.on("end",u),t.on("close",u)),!d&&typeof t.aborted=="boolean"&&t.on("aborted",S),t.on("end",g),t.on("finish",h),e.error!==!1&&t.on("error",y),t.on("close",S),x?Fo.nextTick(S):c!=null&&c.errorEmitted||a!=null&&a.errorEmitted?d||Fo.nextTick(_):(!o&&(!d||hS(t))&&(f||gS(t)===!1)||!s&&(!d||gS(t))&&(p||hS(t)===!1)||a&&t.req&&t.aborted)&&Fo.nextTick(_);let O=()=>{r=Em,t.removeListener("aborted",S),t.removeListener("complete",h),t.removeListener("abort",S),t.removeListener("request",A),t.req&&t.req.removeListener("finish",h),t.removeListener("end",u),t.removeListener("close",u),t.removeListener("finish",h),t.removeListener("end",g),t.removeListener("error",y),t.removeListener("close",S)};if(e.signal&&!x){let T=()=>{let M=r;O(),M.call(t,new xS(void 0,{cause:e.signal.reason}))};if(e.signal.aborted)Fo.nextTick(T);else{Ra=Ra||Zt().addAbortListener;let M=Ra(e.signal,T),q=r;r=xm((...j)=>{M[ES](),q.apply(t,j)})}}return O}function O5(t,e,r){let n=!1,i=Em;if(e.signal)if(i=()=>{n=!0,r.call(t,new xS(void 0,{cause:e.signal.reason}))},e.signal.aborted)Fo.nextTick(i);else{Ra=Ra||Zt().addAbortListener;let s=Ra(e.signal,i),c=r;r=xm((...a)=>{s[ES](),c.apply(t,a)})}let o=(...s)=>{n||Fo.nextTick(()=>r.apply(t,s))};return S5(t[R5].promise,o,o),Em}function D5(t,e){var r;let n=!1;return e===null&&(e=bm),(r=e)!==null&&r!==void 0&&r.cleanup&&(E5(e.cleanup,"cleanup"),n=e.cleanup),new v5((i,o)=>{let s=vS(t,e,c=>{n&&s(),c?o(c):i()})})}vm.exports=vS;vm.exports.finished=D5});var sc=oe((RF,US)=>{"use strict";l();var ni=Ei(),{aggregateTwoErrors:k5,codes:{ERR_MULTIPLE_CALLBACK:N5},AbortError:C5}=sr(),{Symbol:TS}=nt(),{kIsDestroyed:L5,isDestroyed:P5,isFinished:M5,isServerRequest:K5}=ri(),_S=TS("kDestroy"),Sm=TS("kConstruct");function IS(t,e,r){t&&(t.stack,e&&!e.errored&&(e.errored=t),r&&!r.errored&&(r.errored=t))}function $5(t,e){let r=this._readableState,n=this._writableState,i=n||r;return n!=null&&n.destroyed||r!=null&&r.destroyed?(typeof e=="function"&&e(),this):(IS(t,n,r),n&&(n.destroyed=!0),r&&(r.destroyed=!0),i.constructed?SS(this,t,e):this.once(_S,function(o){SS(this,k5(o,t),e)}),this)}function SS(t,e,r){let n=!1;function i(o){if(n)return;n=!0;let s=t._readableState,c=t._writableState;IS(o,c,s),c&&(c.closed=!0),s&&(s.closed=!0),typeof r=="function"&&r(o),o?ni.nextTick(H5,t,o):ni.nextTick(BS,t)}try{t._destroy(e||null,i)}catch(o){i(o)}}function H5(t,e){Am(t,e),BS(t)}function BS(t){let e=t._readableState,r=t._writableState;r&&(r.closeEmitted=!0),e&&(e.closeEmitted=!0),(r!=null&&r.emitClose||e!=null&&e.emitClose)&&t.emit("close")}function Am(t,e){let r=t._readableState,n=t._writableState;n!=null&&n.errorEmitted||r!=null&&r.errorEmitted||(n&&(n.errorEmitted=!0),r&&(r.errorEmitted=!0),t.emit("error",e))}function V5(){let t=this._readableState,e=this._writableState;t&&(t.constructed=!0,t.closed=!1,t.closeEmitted=!1,t.destroyed=!1,t.errored=null,t.errorEmitted=!1,t.reading=!1,t.ended=t.readable===!1,t.endEmitted=t.readable===!1),e&&(e.constructed=!0,e.destroyed=!1,e.closed=!1,e.closeEmitted=!1,e.errored=null,e.errorEmitted=!1,e.finalCalled=!1,e.prefinished=!1,e.ended=e.writable===!1,e.ending=e.writable===!1,e.finished=e.writable===!1)}function Tm(t,e,r){let n=t._readableState,i=t._writableState;if(i!=null&&i.destroyed||n!=null&&n.destroyed)return this;n!=null&&n.autoDestroy||i!=null&&i.autoDestroy?t.destroy(e):e&&(e.stack,i&&!i.errored&&(i.errored=e),n&&!n.errored&&(n.errored=e),r?ni.nextTick(Am,t,e):Am(t,e))}function q5(t,e){if(typeof t._construct!="function")return;let r=t._readableState,n=t._writableState;r&&(r.constructed=!1),n&&(n.constructed=!1),t.once(Sm,e),!(t.listenerCount(Sm)>1)&&ni.nextTick(F5,t)}function F5(t){let e=!1;function r(n){if(e){Tm(t,n??new N5);return}e=!0;let i=t._readableState,o=t._writableState,s=o||i;i&&(i.constructed=!0),o&&(o.constructed=!0),s.destroyed?t.emit(_S,n):n?Tm(t,n,!0):ni.nextTick(j5,t)}try{t._construct(n=>{ni.nextTick(r,n)})}catch(n){ni.nextTick(r,n)}}function j5(t){t.emit(Sm)}function AS(t){return t?.setHeader&&typeof t.abort=="function"}function RS(t){t.emit("close")}function W5(t,e){t.emit("error",e),ni.nextTick(RS,t)}function G5(t,e){!t||P5(t)||(!e&&!M5(t)&&(e=new C5),K5(t)?(t.socket=null,t.destroy(e)):AS(t)?t.abort():AS(t.req)?t.req.abort():typeof t.destroy=="function"?t.destroy(e):typeof t.close=="function"?t.close():e?ni.nextTick(W5,t,e):ni.nextTick(RS,t),t.destroyed||(t[L5]=!0))}US.exports={construct:q5,destroyer:G5,destroy:$5,undestroy:V5,errorOrDestroy:Tm}});var Bh=oe((OF,DS)=>{"use strict";l();var{ArrayIsArray:z5,ObjectSetPrototypeOf:OS}=nt(),{EventEmitter:_h}=ya();function Ih(t){_h.call(this,t)}OS(Ih.prototype,_h.prototype);OS(Ih,_h);Ih.prototype.pipe=function(t,e){let r=this;function n(d){t.writable&&t.write(d)===!1&&r.pause&&r.pause()}r.on("data",n);function i(){r.readable&&r.resume&&r.resume()}t.on("drain",i),!t._isStdio&&(!e||e.end!==!1)&&(r.on("end",s),r.on("close",c));let o=!1;function s(){o||(o=!0,t.end())}function c(){o||(o=!0,typeof t.destroy=="function"&&t.destroy())}function a(d){u(),_h.listenerCount(this,"error")===0&&this.emit("error",d)}_m(r,"error",a),_m(t,"error",a);function u(){r.removeListener("data",n),t.removeListener("drain",i),r.removeListener("end",s),r.removeListener("close",c),r.removeListener("error",a),t.removeListener("error",a),r.removeListener("end",u),r.removeListener("close",u),t.removeListener("close",u)}return r.on("end",u),r.on("close",u),t.on("close",u),t.emit("pipe",r),t};function _m(t,e,r){if(typeof t.prependListener=="function")return t.prependListener(e,r);!t._events||!t._events[e]?t.on(e,r):z5(t._events[e])?t._events[e].unshift(r):t._events[e]=[r,t._events[e]]}DS.exports={Stream:Ih,prependListener:_m}});var Rd=oe((kF,Rh)=>{"use strict";l();var{SymbolDispose:Y5}=nt(),{AbortError:kS,codes:J5}=sr(),{isNodeStream:NS,isWebStream:X5,kControllerErrorFunction:Z5}=ri(),Q5=Gi(),{ERR_INVALID_ARG_TYPE:CS}=J5,Im,e3=(t,e)=>{if(typeof t!="object"||!("aborted"in t))throw new CS(e,"AbortSignal",t)};Rh.exports.addAbortSignal=function(e,r){if(e3(e,"signal"),!NS(r)&&!X5(r))throw new CS("stream",["ReadableStream","WritableStream","Stream"],r);return Rh.exports.addAbortSignalNoValidate(e,r)};Rh.exports.addAbortSignalNoValidate=function(t,e){if(typeof t!="object"||!("aborted"in t))return e;let r=NS(e)?()=>{e.destroy(new kS(void 0,{cause:t.reason}))}:()=>{e[Z5](new kS(void 0,{cause:t.reason}))};if(t.aborted)r();else{Im=Im||Zt().addAbortListener;let n=Im(t,r);Q5(e,n[Y5])}return e}});var MS=oe((LF,PS)=>{"use strict";l();var{StringPrototypeSlice:LS,SymbolIterator:t3,TypedArrayPrototypeSet:Uh,Uint8Array:r3}=nt(),{Buffer:Bm}=Tr(),{inspect:n3}=Zt();PS.exports=class{constructor(){this.head=null,this.tail=null,this.length=0}push(e){let r={data:e,next:null};this.length>0?this.tail.next=r:this.head=r,this.tail=r,++this.length}unshift(e){let r={data:e,next:this.head};this.length===0&&(this.tail=r),this.head=r,++this.length}shift(){if(this.length===0)return;let e=this.head.data;return this.length===1?this.head=this.tail=null:this.head=this.head.next,--this.length,e}clear(){this.head=this.tail=null,this.length=0}join(e){if(this.length===0)return"";let r=this.head,n=""+r.data;for(;(r=r.next)!==null;)n+=e+r.data;return n}concat(e){if(this.length===0)return Bm.alloc(0);let r=Bm.allocUnsafe(e>>>0),n=this.head,i=0;for(;n;)Uh(r,n.data,i),i+=n.data.length,n=n.next;return r}consume(e,r){let n=this.head.data;if(e<n.length){let i=n.slice(0,e);return this.head.data=n.slice(e),i}return e===n.length?this.shift():r?this._getString(e):this._getBuffer(e)}first(){return this.head.data}*[t3](){for(let e=this.head;e;e=e.next)yield e.data}_getString(e){let r="",n=this.head,i=0;do{let o=n.data;if(e>o.length)r+=o,e-=o.length;else{e===o.length?(r+=o,++i,n.next?this.head=n.next:this.head=this.tail=null):(r+=LS(o,0,e),this.head=n,n.data=LS(o,e));break}++i}while((n=n.next)!==null);return this.length-=i,r}_getBuffer(e){let r=Bm.allocUnsafe(e),n=e,i=this.head,o=0;do{let s=i.data;if(e>s.length)Uh(r,s,n-e),e-=s.length;else{e===s.length?(Uh(r,s,n-e),++o,i.next?this.head=i.next:this.head=this.tail=null):(Uh(r,new r3(s.buffer,s.byteOffset,e),n-e),this.head=i,i.data=s.slice(e));break}++o}while((i=i.next)!==null);return this.length-=o,r}[Symbol.for("nodejs.util.inspect.custom")](e,r){return n3(this,{...r,depth:0,customInspect:!1})}}});var Ud=oe((MF,VS)=>{"use strict";l();var{MathFloor:i3,NumberIsInteger:o3}=nt(),{validateInteger:s3}=Ba(),{ERR_INVALID_ARG_VALUE:c3}=sr().codes,KS=16*1024,$S=16;function a3(t,e,r){return t.highWaterMark!=null?t.highWaterMark:e?t[r]:null}function HS(t){return t?$S:KS}function u3(t,e){s3(e,"value",0),t?$S=e:KS=e}function d3(t,e,r,n){let i=a3(e,n,r);if(i!=null){if(!o3(i)||i<0){let o=n?`options.${r}`:"options.highWaterMark";throw new c3(o,i)}return i3(i)}return HS(t.objectMode)}VS.exports={getHighWaterMark:d3,getDefaultHighWaterMark:HS,setDefaultHighWaterMark:u3}});var jS=oe((Rm,FS)=>{l();var Oh=Tr(),ii=Oh.Buffer;function qS(t,e){for(var r in t)e[r]=t[r]}ii.from&&ii.alloc&&ii.allocUnsafe&&ii.allocUnsafeSlow?FS.exports=Oh:(qS(Oh,Rm),Rm.Buffer=cc);function cc(t,e,r){return ii(t,e,r)}cc.prototype=Object.create(ii.prototype);qS(ii,cc);cc.from=function(t,e,r){if(typeof t=="number")throw new TypeError("Argument must not be a number");return ii(t,e,r)};cc.alloc=function(t,e,r){if(typeof t!="number")throw new TypeError("Argument must be a number");var n=ii(t);return e!==void 0?typeof r=="string"?n.fill(e,r):n.fill(e):n.fill(0),n};cc.allocUnsafe=function(t){if(typeof t!="number")throw new TypeError("Argument must be a number");return ii(t)};cc.allocUnsafeSlow=function(t){if(typeof t!="number")throw new TypeError("Argument must be a number");return Oh.SlowBuffer(t)}});var zS=oe(GS=>{"use strict";l();var Om=jS().Buffer,WS=Om.isEncoding||function(t){switch(t=""+t,t&&t.toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":case"raw":return!0;default:return!1}};function f3(t){if(!t)return"utf8";for(var e;;)switch(t){case"utf8":case"utf-8":return"utf8";case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return"utf16le";case"latin1":case"binary":return"latin1";case"base64":case"ascii":case"hex":return t;default:if(e)return;t=(""+t).toLowerCase(),e=!0}}function l3(t){var e=f3(t);if(typeof e!="string"&&(Om.isEncoding===WS||!WS(t)))throw new Error("Unknown encoding: "+t);return e||t}GS.StringDecoder=Od;function Od(t){this.encoding=l3(t);var e;switch(this.encoding){case"utf16le":this.text=w3,this.end=b3,e=4;break;case"utf8":this.fillLast=y3,e=4;break;case"base64":this.text=x3,this.end=E3,e=3;break;default:this.write=v3,this.end=S3;return}this.lastNeed=0,this.lastTotal=0,this.lastChar=Om.allocUnsafe(e)}Od.prototype.write=function(t){if(t.length===0)return"";var e,r;if(this.lastNeed){if(e=this.fillLast(t),e===void 0)return"";r=this.lastNeed,this.lastNeed=0}else r=0;return r<t.length?e?e+this.text(t,r):this.text(t,r):e||""};Od.prototype.end=m3;Od.prototype.text=g3;Od.prototype.fillLast=function(t){if(this.lastNeed<=t.length)return t.copy(this.lastChar,this.lastTotal-this.lastNeed,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);t.copy(this.lastChar,this.lastTotal-this.lastNeed,0,t.length),this.lastNeed-=t.length};function Um(t){return t<=127?0:t>>5===6?2:t>>4===14?3:t>>3===30?4:t>>6===2?-1:-2}function h3(t,e,r){var n=e.length-1;if(n<r)return 0;var i=Um(e[n]);return i>=0?(i>0&&(t.lastNeed=i-1),i):--n<r||i===-2?0:(i=Um(e[n]),i>=0?(i>0&&(t.lastNeed=i-2),i):--n<r||i===-2?0:(i=Um(e[n]),i>=0?(i>0&&(i===2?i=0:t.lastNeed=i-3),i):0))}function p3(t,e,r){if((e[0]&192)!==128)return t.lastNeed=0,"\uFFFD";if(t.lastNeed>1&&e.length>1){if((e[1]&192)!==128)return t.lastNeed=1,"\uFFFD";if(t.lastNeed>2&&e.length>2&&(e[2]&192)!==128)return t.lastNeed=2,"\uFFFD"}}function y3(t){var e=this.lastTotal-this.lastNeed,r=p3(this,t,e);if(r!==void 0)return r;if(this.lastNeed<=t.length)return t.copy(this.lastChar,e,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);t.copy(this.lastChar,e,0,t.length),this.lastNeed-=t.length}function g3(t,e){var r=h3(this,t,e);if(!this.lastNeed)return t.toString("utf8",e);this.lastTotal=r;var n=t.length-(r-this.lastNeed);return t.copy(this.lastChar,0,n),t.toString("utf8",e,n)}function m3(t){var e=t&&t.length?this.write(t):"";return this.lastNeed?e+"\uFFFD":e}function w3(t,e){if((t.length-e)%2===0){var r=t.toString("utf16le",e);if(r){var n=r.charCodeAt(r.length-1);if(n>=55296&&n<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=t[t.length-2],this.lastChar[1]=t[t.length-1],r.slice(0,-1)}return r}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=t[t.length-1],t.toString("utf16le",e,t.length-1)}function b3(t){var e=t&&t.length?this.write(t):"";if(this.lastNeed){var r=this.lastTotal-this.lastNeed;return e+this.lastChar.toString("utf16le",0,r)}return e}function x3(t,e){var r=(t.length-e)%3;return r===0?t.toString("base64",e):(this.lastNeed=3-r,this.lastTotal=3,r===1?this.lastChar[0]=t[t.length-1]:(this.lastChar[0]=t[t.length-2],this.lastChar[1]=t[t.length-1]),t.toString("base64",e,t.length-r))}function E3(t){var e=t&&t.length?this.write(t):"";return this.lastNeed?e+this.lastChar.toString("base64",0,3-this.lastNeed):e}function v3(t){return t.toString(this.encoding)}function S3(t){return t&&t.length?this.write(t):""}});var Dm=oe((qF,ZS)=>{"use strict";l();var YS=Ei(),{PromisePrototypeThen:A3,SymbolAsyncIterator:JS,SymbolIterator:XS}=nt(),{Buffer:T3}=Tr(),{ERR_INVALID_ARG_TYPE:_3,ERR_STREAM_NULL_VALUES:I3}=sr().codes;function B3(t,e,r){let n;if(typeof e=="string"||e instanceof T3)return new t({objectMode:!0,...r,read(){this.push(e),this.push(null)}});let i;if(e&&e[JS])i=!0,n=e[JS]();else if(e&&e[XS])i=!1,n=e[XS]();else throw new _3("iterable",["Iterable"],e);let o=new t({objectMode:!0,highWaterMark:1,...r}),s=!1;o._read=function(){s||(s=!0,a())},o._destroy=function(u,d){A3(c(u),()=>YS.nextTick(d,u),f=>YS.nextTick(d,f||u))};async function c(u){let d=u!=null,f=typeof n.throw=="function";if(d&&f){let{value:h,done:p}=await n.throw(u);if(await h,p)return}if(typeof n.return=="function"){let{value:h}=await n.return();await h}}async function a(){for(;;){try{let{value:u,done:d}=i?await n.next():n.next();if(d)o.push(null);else{let f=u&&typeof u.then=="function"?await u:u;if(f===null)throw s=!1,new I3;if(o.push(f))continue;s=!1}}catch(u){o.destroy(u)}break}}return o}ZS.exports=B3});var kd=oe((jF,gA)=>{l();var Tn=Ei(),{ArrayPrototypeIndexOf:R3,NumberIsInteger:U3,NumberIsNaN:O3,NumberParseInt:D3,ObjectDefineProperties:$m,ObjectKeys:k3,ObjectSetPrototypeOf:tA,Promise:rA,SafeSet:N3,SymbolAsyncDispose:C3,SymbolAsyncIterator:L3,Symbol:P3}=nt();gA.exports=ye;ye.ReadableState=Ch;var{EventEmitter:M3}=ya(),{Stream:jo,prependListener:K3}=Bh(),{Buffer:km}=Tr(),{addAbortSignal:$3}=Rd(),nA=Gi(),Ee=Zt().debuglog("stream",t=>{Ee=t}),H3=MS(),Da=sc(),{getHighWaterMark:V3,getDefaultHighWaterMark:q3}=Ud(),{aggregateTwoErrors:QS,codes:{ERR_INVALID_ARG_TYPE:F3,ERR_METHOD_NOT_IMPLEMENTED:j3,ERR_OUT_OF_RANGE:W3,ERR_STREAM_PUSH_AFTER_EOF:G3,ERR_STREAM_UNSHIFT_AFTER_END_EVENT:z3},AbortError:Y3}=sr(),{validateObject:J3}=Ba(),ac=P3("kPaused"),{StringDecoder:iA}=zS(),X3=Dm();tA(ye.prototype,jo.prototype);tA(ye,jo);var Nm=()=>{},{errorOrDestroy:Ua}=Da,Oa=1,Z3=2,oA=4,Dd=8,sA=16,Dh=32,kh=64,cA=128,Q3=256,eD=512,tD=1024,Mm=2048,Km=4096,rD=8192,nD=16384,iD=32768,aA=65536,oD=1<<17,sD=1<<18;function Tt(t){return{enumerable:!1,get(){return(this.state&t)!==0},set(e){e?this.state|=t:this.state&=~t}}}$m(Ch.prototype,{objectMode:Tt(Oa),ended:Tt(Z3),endEmitted:Tt(oA),reading:Tt(Dd),constructed:Tt(sA),sync:Tt(Dh),needReadable:Tt(kh),emittedReadable:Tt(cA),readableListening:Tt(Q3),resumeScheduled:Tt(eD),errorEmitted:Tt(tD),emitClose:Tt(Mm),autoDestroy:Tt(Km),destroyed:Tt(rD),closed:Tt(nD),closeEmitted:Tt(iD),multiAwaitDrain:Tt(aA),readingMore:Tt(oD),dataEmitted:Tt(sD)});function Ch(t,e,r){typeof r!="boolean"&&(r=e instanceof oi()),this.state=Mm|Km|sA|Dh,t&&t.objectMode&&(this.state|=Oa),r&&t&&t.readableObjectMode&&(this.state|=Oa),this.highWaterMark=t?V3(this,t,"readableHighWaterMark",r):q3(!1),this.buffer=new H3,this.length=0,this.pipes=[],this.flowing=null,this[ac]=null,t&&t.emitClose===!1&&(this.state&=~Mm),t&&t.autoDestroy===!1&&(this.state&=~Km),this.errored=null,this.defaultEncoding=t&&t.defaultEncoding||"utf8",this.awaitDrainWriters=null,this.decoder=null,this.encoding=null,t&&t.encoding&&(this.decoder=new iA(t.encoding),this.encoding=t.encoding)}function ye(t){if(!(this instanceof ye))return new ye(t);let e=this instanceof oi();this._readableState=new Ch(t,this,e),t&&(typeof t.read=="function"&&(this._read=t.read),typeof t.destroy=="function"&&(this._destroy=t.destroy),typeof t.construct=="function"&&(this._construct=t.construct),t.signal&&!e&&$3(t.signal,this)),jo.call(this,t),Da.construct(this,()=>{this._readableState.needReadable&&Nh(this,this._readableState)})}ye.prototype.destroy=Da.destroy;ye.prototype._undestroy=Da.undestroy;ye.prototype._destroy=function(t,e){e(t)};ye.prototype[M3.captureRejectionSymbol]=function(t){this.destroy(t)};ye.prototype[C3]=function(){let t;return this.destroyed||(t=this.readableEnded?null:new Y3,this.destroy(t)),new rA((e,r)=>nA(this,n=>n&&n!==t?r(n):e(null)))};ye.prototype.push=function(t,e){return uA(this,t,e,!1)};ye.prototype.unshift=function(t,e){return uA(this,t,e,!0)};function uA(t,e,r,n){Ee("readableAddChunk",e);let i=t._readableState,o;if(i.state&Oa||(typeof e=="string"?(r=r||i.defaultEncoding,i.encoding!==r&&(n&&i.encoding?e=km.from(e,r).toString(i.encoding):(e=km.from(e,r),r=""))):e instanceof km?r="":jo._isUint8Array(e)?(e=jo._uint8ArrayToBuffer(e),r=""):e!=null&&(o=new F3("chunk",["string","Buffer","Uint8Array"],e))),o)Ua(t,o);else if(e===null)i.state&=~Dd,uD(t,i);else if(i.state&Oa||e&&e.length>0)if(n)if(i.state&oA)Ua(t,new z3);else{if(i.destroyed||i.errored)return!1;Cm(t,i,e,!0)}else if(i.ended)Ua(t,new G3);else{if(i.destroyed||i.errored)return!1;i.state&=~Dd,i.decoder&&!r?(e=i.decoder.write(e),i.objectMode||e.length!==0?Cm(t,i,e,!1):Nh(t,i)):Cm(t,i,e,!1)}else n||(i.state&=~Dd,Nh(t,i));return!i.ended&&(i.length<i.highWaterMark||i.length===0)}function Cm(t,e,r,n){e.flowing&&e.length===0&&!e.sync&&t.listenerCount("data")>0?(e.state&aA?e.awaitDrainWriters.clear():e.awaitDrainWriters=null,e.dataEmitted=!0,t.emit("data",r)):(e.length+=e.objectMode?1:r.length,n?e.buffer.unshift(r):e.buffer.push(r),e.state&kh&&Lh(t)),Nh(t,e)}ye.prototype.isPaused=function(){let t=this._readableState;return t[ac]===!0||t.flowing===!1};ye.prototype.setEncoding=function(t){let e=new iA(t);this._readableState.decoder=e,this._readableState.encoding=this._readableState.decoder.encoding;let r=this._readableState.buffer,n="";for(let i of r)n+=e.write(i);return r.clear(),n!==""&&r.push(n),this._readableState.length=n.length,this};var cD=1073741824;function aD(t){if(t>cD)throw new W3("size","<= 1GiB",t);return t--,t|=t>>>1,t|=t>>>2,t|=t>>>4,t|=t>>>8,t|=t>>>16,t++,t}function eA(t,e){return t<=0||e.length===0&&e.ended?0:e.state&Oa?1:O3(t)?e.flowing&&e.length?e.buffer.first().length:e.length:t<=e.length?t:e.ended?e.length:0}ye.prototype.read=function(t){Ee("read",t),t===void 0?t=NaN:U3(t)||(t=D3(t,10));let e=this._readableState,r=t;if(t>e.highWaterMark&&(e.highWaterMark=aD(t)),t!==0&&(e.state&=~cA),t===0&&e.needReadable&&((e.highWaterMark!==0?e.length>=e.highWaterMark:e.length>0)||e.ended))return Ee("read: emitReadable",e.length,e.ended),e.length===0&&e.ended?Lm(this):Lh(this),null;if(t=eA(t,e),t===0&&e.ended)return e.length===0&&Lm(this),null;let n=(e.state&kh)!==0;if(Ee("need readable",n),(e.length===0||e.length-t<e.highWaterMark)&&(n=!0,Ee("length less than watermark",n)),e.ended||e.reading||e.destroyed||e.errored||!e.constructed)n=!1,Ee("reading, ended or constructing",n);else if(n){Ee("do read"),e.state|=Dd|Dh,e.length===0&&(e.state|=kh);try{this._read(e.highWaterMark)}catch(o){Ua(this,o)}e.state&=~Dh,e.reading||(t=eA(r,e))}let i;return t>0?i=pA(t,e):i=null,i===null?(e.needReadable=e.length<=e.highWaterMark,t=0):(e.length-=t,e.multiAwaitDrain?e.awaitDrainWriters.clear():e.awaitDrainWriters=null),e.length===0&&(e.ended||(e.needReadable=!0),r!==t&&e.ended&&Lm(this)),i!==null&&!e.errorEmitted&&!e.closeEmitted&&(e.dataEmitted=!0,this.emit("data",i)),i};function uD(t,e){if(Ee("onEofChunk"),!e.ended){if(e.decoder){let r=e.decoder.end();r&&r.length&&(e.buffer.push(r),e.length+=e.objectMode?1:r.length)}e.ended=!0,e.sync?Lh(t):(e.needReadable=!1,e.emittedReadable=!0,dA(t))}}function Lh(t){let e=t._readableState;Ee("emitReadable",e.needReadable,e.emittedReadable),e.needReadable=!1,e.emittedReadable||(Ee("emitReadable",e.flowing),e.emittedReadable=!0,Tn.nextTick(dA,t))}function dA(t){let e=t._readableState;Ee("emitReadable_",e.destroyed,e.length,e.ended),!e.destroyed&&!e.errored&&(e.length||e.ended)&&(t.emit("readable"),e.emittedReadable=!1),e.needReadable=!e.flowing&&!e.ended&&e.length<=e.highWaterMark,lA(t)}function Nh(t,e){!e.readingMore&&e.constructed&&(e.readingMore=!0,Tn.nextTick(dD,t,e))}function dD(t,e){for(;!e.reading&&!e.ended&&(e.length<e.highWaterMark||e.flowing&&e.length===0);){let r=e.length;if(Ee("maybeReadMore read 0"),t.read(0),r===e.length)break}e.readingMore=!1}ye.prototype._read=function(t){throw new j3("_read()")};ye.prototype.pipe=function(t,e){let r=this,n=this._readableState;n.pipes.length===1&&(n.multiAwaitDrain||(n.multiAwaitDrain=!0,n.awaitDrainWriters=new N3(n.awaitDrainWriters?[n.awaitDrainWriters]:[]))),n.pipes.push(t),Ee("pipe count=%d opts=%j",n.pipes.length,e);let o=(!e||e.end!==!1)&&t!==Tn.stdout&&t!==Tn.stderr?c:x;n.endEmitted?Tn.nextTick(o):r.once("end",o),t.on("unpipe",s);function s(S,_){Ee("onunpipe"),S===r&&_&&_.hasUnpiped===!1&&(_.hasUnpiped=!0,d())}function c(){Ee("onend"),t.end()}let a,u=!1;function d(){Ee("cleanup"),t.removeListener("close",g),t.removeListener("finish",y),a&&t.removeListener("drain",a),t.removeListener("error",p),t.removeListener("unpipe",s),r.removeListener("end",c),r.removeListener("end",x),r.removeListener("data",h),u=!0,a&&n.awaitDrainWriters&&(!t._writableState||t._writableState.needDrain)&&a()}function f(){u||(n.pipes.length===1&&n.pipes[0]===t?(Ee("false write response, pause",0),n.awaitDrainWriters=t,n.multiAwaitDrain=!1):n.pipes.length>1&&n.pipes.includes(t)&&(Ee("false write response, pause",n.awaitDrainWriters.size),n.awaitDrainWriters.add(t)),r.pause()),a||(a=fD(r,t),t.on("drain",a))}r.on("data",h);function h(S){Ee("ondata");let _=t.write(S);Ee("dest.write",_),_===!1&&f()}function p(S){if(Ee("onerror",S),x(),t.removeListener("error",p),t.listenerCount("error")===0){let _=t._writableState||t._readableState;_&&!_.errorEmitted?Ua(t,S):t.emit("error",S)}}K3(t,"error",p);function g(){t.removeListener("finish",y),x()}t.once("close",g);function y(){Ee("onfinish"),t.removeListener("close",g),x()}t.once("finish",y);function x(){Ee("unpipe"),r.unpipe(t)}return t.emit("pipe",r),t.writableNeedDrain===!0?f():n.flowing||(Ee("pipe resume"),r.resume()),t};function fD(t,e){return function(){let n=t._readableState;n.awaitDrainWriters===e?(Ee("pipeOnDrain",1),n.awaitDrainWriters=null):n.multiAwaitDrain&&(Ee("pipeOnDrain",n.awaitDrainWriters.size),n.awaitDrainWriters.delete(e)),(!n.awaitDrainWriters||n.awaitDrainWriters.size===0)&&t.listenerCount("data")&&t.resume()}}ye.prototype.unpipe=function(t){let e=this._readableState,r={hasUnpiped:!1};if(e.pipes.length===0)return this;if(!t){let i=e.pipes;e.pipes=[],this.pause();for(let o=0;o<i.length;o++)i[o].emit("unpipe",this,{hasUnpiped:!1});return this}let n=R3(e.pipes,t);return n===-1?this:(e.pipes.splice(n,1),e.pipes.length===0&&this.pause(),t.emit("unpipe",this,r),this)};ye.prototype.on=function(t,e){let r=jo.prototype.on.call(this,t,e),n=this._readableState;return t==="data"?(n.readableListening=this.listenerCount("readable")>0,n.flowing!==!1&&this.resume()):t==="readable"&&!n.endEmitted&&!n.readableListening&&(n.readableListening=n.needReadable=!0,n.flowing=!1,n.emittedReadable=!1,Ee("on readable",n.length,n.reading),n.length?Lh(this):n.reading||Tn.nextTick(lD,this)),r};ye.prototype.addListener=ye.prototype.on;ye.prototype.removeListener=function(t,e){let r=jo.prototype.removeListener.call(this,t,e);return t==="readable"&&Tn.nextTick(fA,this),r};ye.prototype.off=ye.prototype.removeListener;ye.prototype.removeAllListeners=function(t){let e=jo.prototype.removeAllListeners.apply(this,arguments);return(t==="readable"||t===void 0)&&Tn.nextTick(fA,this),e};function fA(t){let e=t._readableState;e.readableListening=t.listenerCount("readable")>0,e.resumeScheduled&&e[ac]===!1?e.flowing=!0:t.listenerCount("data")>0?t.resume():e.readableListening||(e.flowing=null)}function lD(t){Ee("readable nexttick read 0"),t.read(0)}ye.prototype.resume=function(){let t=this._readableState;return t.flowing||(Ee("resume"),t.flowing=!t.readableListening,hD(this,t)),t[ac]=!1,this};function hD(t,e){e.resumeScheduled||(e.resumeScheduled=!0,Tn.nextTick(pD,t,e))}function pD(t,e){Ee("resume",e.reading),e.reading||t.read(0),e.resumeScheduled=!1,t.emit("resume"),lA(t),e.flowing&&!e.reading&&t.read(0)}ye.prototype.pause=function(){return Ee("call pause flowing=%j",this._readableState.flowing),this._readableState.flowing!==!1&&(Ee("pause"),this._readableState.flowing=!1,this.emit("pause")),this._readableState[ac]=!0,this};function lA(t){let e=t._readableState;for(Ee("flow",e.flowing);e.flowing&&t.read()!==null;);}ye.prototype.wrap=function(t){let e=!1;t.on("data",n=>{!this.push(n)&&t.pause&&(e=!0,t.pause())}),t.on("end",()=>{this.push(null)}),t.on("error",n=>{Ua(this,n)}),t.on("close",()=>{this.destroy()}),t.on("destroy",()=>{this.destroy()}),this._read=()=>{e&&t.resume&&(e=!1,t.resume())};let r=k3(t);for(let n=1;n<r.length;n++){let i=r[n];this[i]===void 0&&typeof t[i]=="function"&&(this[i]=t[i].bind(t))}return this};ye.prototype[L3]=function(){return hA(this)};ye.prototype.iterator=function(t){return t!==void 0&&J3(t,"options"),hA(this,t)};function hA(t,e){typeof t.read!="function"&&(t=ye.wrap(t,{objectMode:!0}));let r=yD(t,e);return r.stream=t,r}async function*yD(t,e){let r=Nm;function n(s){this===t?(r(),r=Nm):r=s}t.on("readable",n);let i,o=nA(t,{writable:!1},s=>{i=s?QS(i,s):null,r(),r=Nm});try{for(;;){let s=t.destroyed?null:t.read();if(s!==null)yield s;else{if(i)throw i;if(i===null)return;await new rA(n)}}}catch(s){throw i=QS(i,s),i}finally{(i||e?.destroyOnReturn!==!1)&&(i===void 0||t._readableState.autoDestroy)?Da.destroyer(t,null):(t.off("readable",n),o())}}$m(ye.prototype,{readable:{__proto__:null,get(){let t=this._readableState;return!!t&&t.readable!==!1&&!t.destroyed&&!t.errorEmitted&&!t.endEmitted},set(t){this._readableState&&(this._readableState.readable=!!t)}},readableDidRead:{__proto__:null,enumerable:!1,get:function(){return this._readableState.dataEmitted}},readableAborted:{__proto__:null,enumerable:!1,get:function(){return!!(this._readableState.readable!==!1&&(this._readableState.destroyed||this._readableState.errored)&&!this._readableState.endEmitted)}},readableHighWaterMark:{__proto__:null,enumerable:!1,get:function(){return this._readableState.highWaterMark}},readableBuffer:{__proto__:null,enumerable:!1,get:function(){return this._readableState&&this._readableState.buffer}},readableFlowing:{__proto__:null,enumerable:!1,get:function(){return this._readableState.flowing},set:function(t){this._readableState&&(this._readableState.flowing=t)}},readableLength:{__proto__:null,enumerable:!1,get(){return this._readableState.length}},readableObjectMode:{__proto__:null,enumerable:!1,get(){return this._readableState?this._readableState.objectMode:!1}},readableEncoding:{__proto__:null,enumerable:!1,get(){return this._readableState?this._readableState.encoding:null}},errored:{__proto__:null,enumerable:!1,get(){return this._readableState?this._readableState.errored:null}},closed:{__proto__:null,get(){return this._readableState?this._readableState.closed:!1}},destroyed:{__proto__:null,enumerable:!1,get(){return this._readableState?this._readableState.destroyed:!1},set(t){this._readableState&&(this._readableState.destroyed=t)}},readableEnded:{__proto__:null,enumerable:!1,get(){return this._readableState?this._readableState.endEmitted:!1}}});$m(Ch.prototype,{pipesCount:{__proto__:null,get(){return this.pipes.length}},paused:{__proto__:null,get(){return this[ac]!==!1},set(t){this[ac]=!!t}}});ye._fromList=pA;function pA(t,e){if(e.length===0)return null;let r;return e.objectMode?r=e.buffer.shift():!t||t>=e.length?(e.decoder?r=e.buffer.join(""):e.buffer.length===1?r=e.buffer.first():r=e.buffer.concat(e.length),e.buffer.clear()):r=e.buffer.consume(t,e.decoder),r}function Lm(t){let e=t._readableState;Ee("endReadable",e.endEmitted),e.endEmitted||(e.ended=!0,Tn.nextTick(gD,e,t))}function gD(t,e){if(Ee("endReadableNT",t.endEmitted,t.length),!t.errored&&!t.closeEmitted&&!t.endEmitted&&t.length===0){if(t.endEmitted=!0,e.emit("end"),e.writable&&e.allowHalfOpen===!1)Tn.nextTick(mD,e);else if(t.autoDestroy){let r=e._writableState;(!r||r.autoDestroy&&(r.finished||r.writable===!1))&&e.destroy()}}}function mD(t){t.writable&&!t.writableEnded&&!t.destroyed&&t.end()}ye.from=function(t,e){return X3(ye,t,e)};var Pm;function yA(){return Pm===void 0&&(Pm={}),Pm}ye.fromWeb=function(t,e){return yA().newStreamReadableFromReadableStream(t,e)};ye.toWeb=function(t,e){return yA().newReadableStreamFromStreamReadable(t,e)};ye.wrap=function(t,e){var r,n;return new ye({objectMode:(r=(n=t.readableObjectMode)!==null&&n!==void 0?n:t.objectMode)!==null&&r!==void 0?r:!0,...e,destroy(i,o){Da.destroyer(t,i),o(i)}}).wrap(t)}});var Hh=oe((GF,BA)=>{l();var uc=Ei(),{ArrayPrototypeSlice:bA,Error:wD,FunctionPrototypeSymbolHasInstance:xA,ObjectDefineProperty:EA,ObjectDefineProperties:bD,ObjectSetPrototypeOf:vA,StringPrototypeToLowerCase:xD,Symbol:ED,SymbolHasInstance:vD}=nt();BA.exports=it;it.WritableState=Ld;var{EventEmitter:SD}=ya(),Nd=Bh().Stream,{Buffer:Ph}=Tr(),$h=sc(),{addAbortSignal:AD}=Rd(),{getHighWaterMark:TD,getDefaultHighWaterMark:_D}=Ud(),{ERR_INVALID_ARG_TYPE:ID,ERR_METHOD_NOT_IMPLEMENTED:BD,ERR_MULTIPLE_CALLBACK:SA,ERR_STREAM_CANNOT_PIPE:RD,ERR_STREAM_DESTROYED:Cd,ERR_STREAM_ALREADY_FINISHED:UD,ERR_STREAM_NULL_VALUES:OD,ERR_STREAM_WRITE_AFTER_END:DD,ERR_UNKNOWN_ENCODING:AA}=sr().codes,{errorOrDestroy:ka}=$h;vA(it.prototype,Nd.prototype);vA(it,Nd);function qm(){}var Na=ED("kOnFinished");function Ld(t,e,r){typeof r!="boolean"&&(r=e instanceof oi()),this.objectMode=!!(t&&t.objectMode),r&&(this.objectMode=this.objectMode||!!(t&&t.writableObjectMode)),this.highWaterMark=t?TD(this,t,"writableHighWaterMark",r):_D(!1),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;let n=!!(t&&t.decodeStrings===!1);this.decodeStrings=!n,this.defaultEncoding=t&&t.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=ND.bind(void 0,e),this.writecb=null,this.writelen=0,this.afterWriteTickInfo=null,Kh(this),this.pendingcb=0,this.constructed=!0,this.prefinished=!1,this.errorEmitted=!1,this.emitClose=!t||t.emitClose!==!1,this.autoDestroy=!t||t.autoDestroy!==!1,this.errored=null,this.closed=!1,this.closeEmitted=!1,this[Na]=[]}function Kh(t){t.buffered=[],t.bufferedIndex=0,t.allBuffers=!0,t.allNoop=!0}Ld.prototype.getBuffer=function(){return bA(this.buffered,this.bufferedIndex)};EA(Ld.prototype,"bufferedRequestCount",{__proto__:null,get(){return this.buffered.length-this.bufferedIndex}});function it(t){let e=this instanceof oi();if(!e&&!xA(it,this))return new it(t);this._writableState=new Ld(t,this,e),t&&(typeof t.write=="function"&&(this._write=t.write),typeof t.writev=="function"&&(this._writev=t.writev),typeof t.destroy=="function"&&(this._destroy=t.destroy),typeof t.final=="function"&&(this._final=t.final),typeof t.construct=="function"&&(this._construct=t.construct),t.signal&&AD(t.signal,this)),Nd.call(this,t),$h.construct(this,()=>{let r=this._writableState;r.writing||jm(this,r),Wm(this,r)})}EA(it,vD,{__proto__:null,value:function(t){return xA(this,t)?!0:this!==it?!1:t&&t._writableState instanceof Ld}});it.prototype.pipe=function(){ka(this,new RD)};function TA(t,e,r,n){let i=t._writableState;if(typeof r=="function")n=r,r=i.defaultEncoding;else{if(!r)r=i.defaultEncoding;else if(r!=="buffer"&&!Ph.isEncoding(r))throw new AA(r);typeof n!="function"&&(n=qm)}if(e===null)throw new OD;if(!i.objectMode)if(typeof e=="string")i.decodeStrings!==!1&&(e=Ph.from(e,r),r="buffer");else if(e instanceof Ph)r="buffer";else if(Nd._isUint8Array(e))e=Nd._uint8ArrayToBuffer(e),r="buffer";else throw new ID("chunk",["string","Buffer","Uint8Array"],e);let o;return i.ending?o=new DD:i.destroyed&&(o=new Cd("write")),o?(uc.nextTick(n,o),ka(t,o,!0),o):(i.pendingcb++,kD(t,i,e,r,n))}it.prototype.write=function(t,e,r){return TA(this,t,e,r)===!0};it.prototype.cork=function(){this._writableState.corked++};it.prototype.uncork=function(){let t=this._writableState;t.corked&&(t.corked--,t.writing||jm(this,t))};it.prototype.setDefaultEncoding=function(e){if(typeof e=="string"&&(e=xD(e)),!Ph.isEncoding(e))throw new AA(e);return this._writableState.defaultEncoding=e,this};function kD(t,e,r,n,i){let o=e.objectMode?1:r.length;e.length+=o;let s=e.length<e.highWaterMark;return s||(e.needDrain=!0),e.writing||e.corked||e.errored||!e.constructed?(e.buffered.push({chunk:r,encoding:n,callback:i}),e.allBuffers&&n!=="buffer"&&(e.allBuffers=!1),e.allNoop&&i!==qm&&(e.allNoop=!1)):(e.writelen=o,e.writecb=i,e.writing=!0,e.sync=!0,t._write(r,n,e.onwrite),e.sync=!1),s&&!e.errored&&!e.destroyed}function mA(t,e,r,n,i,o,s){e.writelen=n,e.writecb=s,e.writing=!0,e.sync=!0,e.destroyed?e.onwrite(new Cd("write")):r?t._writev(i,e.onwrite):t._write(i,o,e.onwrite),e.sync=!1}function wA(t,e,r,n){--e.pendingcb,n(r),Fm(e),ka(t,r)}function ND(t,e){let r=t._writableState,n=r.sync,i=r.writecb;if(typeof i!="function"){ka(t,new SA);return}r.writing=!1,r.writecb=null,r.length-=r.writelen,r.writelen=0,e?(e.stack,r.errored||(r.errored=e),t._readableState&&!t._readableState.errored&&(t._readableState.errored=e),n?uc.nextTick(wA,t,r,e,i):wA(t,r,e,i)):(r.buffered.length>r.bufferedIndex&&jm(t,r),n?r.afterWriteTickInfo!==null&&r.afterWriteTickInfo.cb===i?r.afterWriteTickInfo.count++:(r.afterWriteTickInfo={count:1,cb:i,stream:t,state:r},uc.nextTick(CD,r.afterWriteTickInfo)):_A(t,r,1,i))}function CD({stream:t,state:e,count:r,cb:n}){return e.afterWriteTickInfo=null,_A(t,e,r,n)}function _A(t,e,r,n){for(!e.ending&&!t.destroyed&&e.length===0&&e.needDrain&&(e.needDrain=!1,t.emit("drain"));r-- >0;)e.pendingcb--,n();e.destroyed&&Fm(e),Wm(t,e)}function Fm(t){if(t.writing)return;for(let i=t.bufferedIndex;i<t.buffered.length;++i){var e;let{chunk:o,callback:s}=t.buffered[i],c=t.objectMode?1:o.length;t.length-=c,s((e=t.errored)!==null&&e!==void 0?e:new Cd("write"))}let r=t[Na].splice(0);for(let i=0;i<r.length;i++){var n;r[i]((n=t.errored)!==null&&n!==void 0?n:new Cd("end"))}Kh(t)}function jm(t,e){if(e.corked||e.bufferProcessing||e.destroyed||!e.constructed)return;let{buffered:r,bufferedIndex:n,objectMode:i}=e,o=r.length-n;if(!o)return;let s=n;if(e.bufferProcessing=!0,o>1&&t._writev){e.pendingcb-=o-1;let c=e.allNoop?qm:u=>{for(let d=s;d<r.length;++d)r[d].callback(u)},a=e.allNoop&&s===0?r:bA(r,s);a.allBuffers=e.allBuffers,mA(t,e,!0,e.length,a,"",c),Kh(e)}else{do{let{chunk:c,encoding:a,callback:u}=r[s];r[s++]=null;let d=i?1:c.length;mA(t,e,!1,d,c,a,u)}while(s<r.length&&!e.writing);s===r.length?Kh(e):s>256?(r.splice(0,s),e.bufferedIndex=0):e.bufferedIndex=s}e.bufferProcessing=!1}it.prototype._write=function(t,e,r){if(this._writev)this._writev([{chunk:t,encoding:e}],r);else throw new BD("_write()")};it.prototype._writev=null;it.prototype.end=function(t,e,r){let n=this._writableState;typeof t=="function"?(r=t,t=null,e=null):typeof e=="function"&&(r=e,e=null);let i;if(t!=null){let o=TA(this,t,e);o instanceof wD&&(i=o)}return n.corked&&(n.corked=1,this.uncork()),i||(!n.errored&&!n.ending?(n.ending=!0,Wm(this,n,!0),n.ended=!0):n.finished?i=new UD("end"):n.destroyed&&(i=new Cd("end"))),typeof r=="function"&&(i||n.finished?uc.nextTick(r,i):n[Na].push(r)),this};function Mh(t){return t.ending&&!t.destroyed&&t.constructed&&t.length===0&&!t.errored&&t.buffered.length===0&&!t.finished&&!t.writing&&!t.errorEmitted&&!t.closeEmitted}function LD(t,e){let r=!1;function n(i){if(r){ka(t,i??SA());return}if(r=!0,e.pendingcb--,i){let o=e[Na].splice(0);for(let s=0;s<o.length;s++)o[s](i);ka(t,i,e.sync)}else Mh(e)&&(e.prefinished=!0,t.emit("prefinish"),e.pendingcb++,uc.nextTick(Vm,t,e))}e.sync=!0,e.pendingcb++;try{t._final(n)}catch(i){n(i)}e.sync=!1}function PD(t,e){!e.prefinished&&!e.finalCalled&&(typeof t._final=="function"&&!e.destroyed?(e.finalCalled=!0,LD(t,e)):(e.prefinished=!0,t.emit("prefinish")))}function Wm(t,e,r){Mh(e)&&(PD(t,e),e.pendingcb===0&&(r?(e.pendingcb++,uc.nextTick((n,i)=>{Mh(i)?Vm(n,i):i.pendingcb--},t,e)):Mh(e)&&(e.pendingcb++,Vm(t,e))))}function Vm(t,e){e.pendingcb--,e.finished=!0;let r=e[Na].splice(0);for(let n=0;n<r.length;n++)r[n]();if(t.emit("finish"),e.autoDestroy){let n=t._readableState;(!n||n.autoDestroy&&(n.endEmitted||n.readable===!1))&&t.destroy()}}bD(it.prototype,{closed:{__proto__:null,get(){return this._writableState?this._writableState.closed:!1}},destroyed:{__proto__:null,get(){return this._writableState?this._writableState.destroyed:!1},set(t){this._writableState&&(this._writableState.destroyed=t)}},writable:{__proto__:null,get(){let t=this._writableState;return!!t&&t.writable!==!1&&!t.destroyed&&!t.errored&&!t.ending&&!t.ended},set(t){this._writableState&&(this._writableState.writable=!!t)}},writableFinished:{__proto__:null,get(){return this._writableState?this._writableState.finished:!1}},writableObjectMode:{__proto__:null,get(){return this._writableState?this._writableState.objectMode:!1}},writableBuffer:{__proto__:null,get(){return this._writableState&&this._writableState.getBuffer()}},writableEnded:{__proto__:null,get(){return this._writableState?this._writableState.ending:!1}},writableNeedDrain:{__proto__:null,get(){let t=this._writableState;return t?!t.destroyed&&!t.ending&&t.needDrain:!1}},writableHighWaterMark:{__proto__:null,get(){return this._writableState&&this._writableState.highWaterMark}},writableCorked:{__proto__:null,get(){return this._writableState?this._writableState.corked:0}},writableLength:{__proto__:null,get(){return this._writableState&&this._writableState.length}},errored:{__proto__:null,enumerable:!1,get(){return this._writableState?this._writableState.errored:null}},writableAborted:{__proto__:null,enumerable:!1,get:function(){return!!(this._writableState.writable!==!1&&(this._writableState.destroyed||this._writableState.errored)&&!this._writableState.finished)}}});var MD=$h.destroy;it.prototype.destroy=function(t,e){let r=this._writableState;return!r.destroyed&&(r.bufferedIndex<r.buffered.length||r[Na].length)&&uc.nextTick(Fm,r),MD.call(this,t,e),this};it.prototype._undestroy=$h.undestroy;it.prototype._destroy=function(t,e){e(t)};it.prototype[SD.captureRejectionSymbol]=function(t){this.destroy(t)};var Hm;function IA(){return Hm===void 0&&(Hm={}),Hm}it.fromWeb=function(t,e){return IA().newStreamWritableFromWritableStream(t,e)};it.toWeb=function(t){return IA().newWritableStreamFromStreamWritable(t)}});var qA=oe((YF,VA)=>{l();var Gm=Ei(),KD=Tr(),{isReadable:$D,isWritable:HD,isIterable:RA,isNodeStream:VD,isReadableNodeStream:UA,isWritableNodeStream:OA,isDuplexNodeStream:qD,isReadableStream:DA,isWritableStream:kA}=ri(),NA=Gi(),{AbortError:$A,codes:{ERR_INVALID_ARG_TYPE:FD,ERR_INVALID_RETURN_VALUE:CA}}=sr(),{destroyer:La}=sc(),jD=oi(),HA=kd(),WD=Hh(),{createDeferredPromise:LA}=Zt(),PA=Dm(),MA=globalThis.Blob||KD.Blob,GD=typeof MA<"u"?function(e){return e instanceof MA}:function(e){return!1},zD=globalThis.AbortController||_a().AbortController,{FunctionPrototypeCall:KA}=nt(),Wo=class extends jD{constructor(e){super(e),e?.readable===!1&&(this._readableState.readable=!1,this._readableState.ended=!0,this._readableState.endEmitted=!0),e?.writable===!1&&(this._writableState.writable=!1,this._writableState.ending=!0,this._writableState.ended=!0,this._writableState.finished=!0)}};VA.exports=function t(e,r){if(qD(e))return e;if(UA(e))return Ca({readable:e});if(OA(e))return Ca({writable:e});if(VD(e))return Ca({writable:!1,readable:!1});if(DA(e))return Ca({readable:HA.fromWeb(e)});if(kA(e))return Ca({writable:WD.fromWeb(e)});if(typeof e=="function"){let{value:i,write:o,final:s,destroy:c}=YD(e);if(RA(i))return PA(Wo,i,{objectMode:!0,write:o,final:s,destroy:c});let a=i?.then;if(typeof a=="function"){let u,d=KA(a,i,f=>{if(f!=null)throw new CA("nully","body",f)},f=>{La(u,f)});return u=new Wo({objectMode:!0,readable:!1,write:o,final(f){s(async()=>{try{await d,Gm.nextTick(f,null)}catch(h){Gm.nextTick(f,h)}})},destroy:c})}throw new CA("Iterable, AsyncIterable or AsyncFunction",r,i)}if(GD(e))return t(e.arrayBuffer());if(RA(e))return PA(Wo,e,{objectMode:!0,writable:!1});if(DA(e?.readable)&&kA(e?.writable))return Wo.fromWeb(e);if(typeof e?.writable=="object"||typeof e?.readable=="object"){let i=e!=null&&e.readable?UA(e?.readable)?e?.readable:t(e.readable):void 0,o=e!=null&&e.writable?OA(e?.writable)?e?.writable:t(e.writable):void 0;return Ca({readable:i,writable:o})}let n=e?.then;if(typeof n=="function"){let i;return KA(n,e,o=>{o!=null&&i.push(o),i.push(null)},o=>{La(i,o)}),i=new Wo({objectMode:!0,writable:!1,read(){}})}throw new FD(r,["Blob","ReadableStream","WritableStream","Stream","Iterable","AsyncIterable","Function","{ readable, writable } pair","Promise"],e)};function YD(t){let{promise:e,resolve:r}=LA(),n=new zD,i=n.signal;return{value:t(async function*(){for(;;){let s=e;e=null;let{chunk:c,done:a,cb:u}=await s;if(Gm.nextTick(u),a)return;if(i.aborted)throw new $A(void 0,{cause:i.reason});({promise:e,resolve:r}=LA()),yield c}}(),{signal:i}),write(s,c,a){let u=r;r=null,u({chunk:s,done:!1,cb:a})},final(s){let c=r;r=null,c({done:!0,cb:s})},destroy(s,c){n.abort(),c(s)}}}function Ca(t){let e=t.readable&&typeof t.readable.read!="function"?HA.wrap(t.readable):t.readable,r=t.writable,n=!!$D(e),i=!!HD(r),o,s,c,a,u;function d(f){let h=a;a=null,h?h(f):f&&u.destroy(f)}return u=new Wo({readableObjectMode:!!(e!=null&&e.readableObjectMode),writableObjectMode:!!(r!=null&&r.writableObjectMode),readable:n,writable:i}),i&&(NA(r,f=>{i=!1,f&&La(e,f),d(f)}),u._write=function(f,h,p){r.write(f,h)?p():o=p},u._final=function(f){r.end(),s=f},r.on("drain",function(){if(o){let f=o;o=null,f()}}),r.on("finish",function(){if(s){let f=s;s=null,f()}})),n&&(NA(e,f=>{n=!1,f&&La(e,f),d(f)}),e.on("readable",function(){if(c){let f=c;c=null,f()}}),e.on("end",function(){u.push(null)}),u._read=function(){for(;;){let f=e.read();if(f===null){c=u._read;return}if(!u.push(f))return}}),u._destroy=function(f,h){!f&&a!==null&&(f=new $A),c=null,o=null,s=null,a===null?h(f):(a=h,La(r,f),La(e,f))},u}});var oi=oe((XF,WA)=>{"use strict";l();var{ObjectDefineProperties:JD,ObjectGetOwnPropertyDescriptor:zi,ObjectKeys:XD,ObjectSetPrototypeOf:FA}=nt();WA.exports=_n;var Jm=kd(),on=Hh();FA(_n.prototype,Jm.prototype);FA(_n,Jm);{let t=XD(on.prototype);for(let e=0;e<t.length;e++){let r=t[e];_n.prototype[r]||(_n.prototype[r]=on.prototype[r])}}function _n(t){if(!(this instanceof _n))return new _n(t);Jm.call(this,t),on.call(this,t),t?(this.allowHalfOpen=t.allowHalfOpen!==!1,t.readable===!1&&(this._readableState.readable=!1,this._readableState.ended=!0,this._readableState.endEmitted=!0),t.writable===!1&&(this._writableState.writable=!1,this._writableState.ending=!0,this._writableState.ended=!0,this._writableState.finished=!0)):this.allowHalfOpen=!0}JD(_n.prototype,{writable:{__proto__:null,...zi(on.prototype,"writable")},writableHighWaterMark:{__proto__:null,...zi(on.prototype,"writableHighWaterMark")},writableObjectMode:{__proto__:null,...zi(on.prototype,"writableObjectMode")},writableBuffer:{__proto__:null,...zi(on.prototype,"writableBuffer")},writableLength:{__proto__:null,...zi(on.prototype,"writableLength")},writableFinished:{__proto__:null,...zi(on.prototype,"writableFinished")},writableCorked:{__proto__:null,...zi(on.prototype,"writableCorked")},writableEnded:{__proto__:null,...zi(on.prototype,"writableEnded")},writableNeedDrain:{__proto__:null,...zi(on.prototype,"writableNeedDrain")},destroyed:{__proto__:null,get(){return this._readableState===void 0||this._writableState===void 0?!1:this._readableState.destroyed&&this._writableState.destroyed},set(t){this._readableState&&this._writableState&&(this._readableState.destroyed=t,this._writableState.destroyed=t)}}});var zm;function jA(){return zm===void 0&&(zm={}),zm}_n.fromWeb=function(t,e){return jA().newStreamDuplexFromReadableWritablePair(t,e)};_n.toWeb=function(t){return jA().newReadableWritablePairFromDuplex(t)};var Ym;_n.from=function(t){return Ym||(Ym=qA()),Ym(t,"body")}});var Qm=oe((QF,zA)=>{"use strict";l();var{ObjectSetPrototypeOf:GA,Symbol:ZD}=nt();zA.exports=Yi;var{ERR_METHOD_NOT_IMPLEMENTED:QD}=sr().codes,Zm=oi(),{getHighWaterMark:ek}=Ud();GA(Yi.prototype,Zm.prototype);GA(Yi,Zm);var Pd=ZD("kCallback");function Yi(t){if(!(this instanceof Yi))return new Yi(t);let e=t?ek(this,t,"readableHighWaterMark",!0):null;e===0&&(t={...t,highWaterMark:null,readableHighWaterMark:e,writableHighWaterMark:t.writableHighWaterMark||0}),Zm.call(this,t),this._readableState.sync=!1,this[Pd]=null,t&&(typeof t.transform=="function"&&(this._transform=t.transform),typeof t.flush=="function"&&(this._flush=t.flush)),this.on("prefinish",tk)}function Xm(t){typeof this._flush=="function"&&!this.destroyed?this._flush((e,r)=>{if(e){t?t(e):this.destroy(e);return}r!=null&&this.push(r),this.push(null),t&&t()}):(this.push(null),t&&t())}function tk(){this._final!==Xm&&Xm.call(this)}Yi.prototype._final=Xm;Yi.prototype._transform=function(t,e,r){throw new QD("_transform()")};Yi.prototype._write=function(t,e,r){let n=this._readableState,i=this._writableState,o=n.length;this._transform(t,e,(s,c)=>{if(s){r(s);return}c!=null&&this.push(c),i.ended||o===n.length||n.length<n.highWaterMark?r():this[Pd]=r})};Yi.prototype._read=function(){if(this[Pd]){let t=this[Pd];this[Pd]=null,t()}}});var tw=oe((tj,JA)=>{"use strict";l();var{ObjectSetPrototypeOf:YA}=nt();JA.exports=Pa;var ew=Qm();YA(Pa.prototype,ew.prototype);YA(Pa,ew);function Pa(t){if(!(this instanceof Pa))return new Pa(t);ew.call(this,t)}Pa.prototype._transform=function(t,e,r){r(null,t)}});var jh=oe((nj,tT)=>{l();var Md=Ei(),{ArrayIsArray:rk,Promise:nk,SymbolAsyncIterator:ik,SymbolDispose:ok}=nt(),Fh=Gi(),{once:sk}=Zt(),ck=sc(),XA=oi(),{aggregateTwoErrors:ak,codes:{ERR_INVALID_ARG_TYPE:dw,ERR_INVALID_RETURN_VALUE:rw,ERR_MISSING_ARGS:uk,ERR_STREAM_DESTROYED:dk,ERR_STREAM_PREMATURE_CLOSE:fk},AbortError:lk}=sr(),{validateFunction:hk,validateAbortSignal:pk}=Ba(),{isIterable:dc,isReadable:nw,isReadableNodeStream:qh,isNodeStream:ZA,isTransformStream:Ma,isWebStream:yk,isReadableStream:iw,isReadableFinished:gk}=ri(),mk=globalThis.AbortController||_a().AbortController,ow,sw,cw;function QA(t,e,r){let n=!1;t.on("close",()=>{n=!0});let i=Fh(t,{readable:e,writable:r},o=>{n=!o});return{destroy:o=>{n||(n=!0,ck.destroyer(t,o||new dk("pipe")))},cleanup:i}}function wk(t){return hk(t[t.length-1],"streams[stream.length - 1]"),t.pop()}function aw(t){if(dc(t))return t;if(qh(t))return bk(t);throw new dw("val",["Readable","Iterable","AsyncIterable"],t)}async function*bk(t){sw||(sw=kd()),yield*sw.prototype[ik].call(t)}async function Vh(t,e,r,{end:n}){let i,o=null,s=u=>{if(u&&(i=u),o){let d=o;o=null,d()}},c=()=>new nk((u,d)=>{i?d(i):o=()=>{i?d(i):u()}});e.on("drain",s);let a=Fh(e,{readable:!1},s);try{e.writableNeedDrain&&await c();for await(let u of t)e.write(u)||await c();n&&(e.end(),await c()),r()}catch(u){r(i!==u?ak(i,u):u)}finally{a(),e.off("drain",s)}}async function uw(t,e,r,{end:n}){Ma(e)&&(e=e.writable);let i=e.getWriter();try{for await(let o of t)await i.ready,i.write(o).catch(()=>{});await i.ready,n&&await i.close(),r()}catch(o){try{await i.abort(o),r(o)}catch(s){r(s)}}}function xk(...t){return eT(t,sk(wk(t)))}function eT(t,e,r){if(t.length===1&&rk(t[0])&&(t=t[0]),t.length<2)throw new uk("streams");let n=new mk,i=n.signal,o=r?.signal,s=[];pk(o,"options.signal");function c(){g(new lk)}cw=cw||Zt().addAbortListener;let a;o&&(a=cw(o,c));let u,d,f=[],h=0;function p(A){g(A,--h===0)}function g(A,O){var T;if(A&&(!u||u.code==="ERR_STREAM_PREMATURE_CLOSE")&&(u=A),!(!u&&!O)){for(;f.length;)f.shift()(u);(T=a)===null||T===void 0||T[ok](),n.abort(),O&&(u||s.forEach(M=>M()),Md.nextTick(e,u,d))}}let y;for(let A=0;A<t.length;A++){let O=t[A],T=A<t.length-1,M=A>0,q=T||r?.end!==!1,j=A===t.length-1;if(ZA(O)){let $=function(Z){Z&&Z.name!=="AbortError"&&Z.code!=="ERR_STREAM_PREMATURE_CLOSE"&&p(Z)};var _=$;if(q){let{destroy:Z,cleanup:Q}=QA(O,T,M);f.push(Z),nw(O)&&j&&s.push(Q)}O.on("error",$),nw(O)&&j&&s.push(()=>{O.removeListener("error",$)})}if(A===0)if(typeof O=="function"){if(y=O({signal:i}),!dc(y))throw new rw("Iterable, AsyncIterable or Stream","source",y)}else dc(O)||qh(O)||Ma(O)?y=O:y=XA.from(O);else if(typeof O=="function"){if(Ma(y)){var x;y=aw((x=y)===null||x===void 0?void 0:x.readable)}else y=aw(y);if(y=O(y,{signal:i}),T){if(!dc(y,!0))throw new rw("AsyncIterable",`transform[${A-1}]`,y)}else{var S;ow||(ow=tw());let $=new ow({objectMode:!0}),Z=(S=y)===null||S===void 0?void 0:S.then;if(typeof Z=="function")h++,Z.call(y,I=>{d=I,I!=null&&$.write(I),q&&$.end(),Md.nextTick(p)},I=>{$.destroy(I),Md.nextTick(p,I)});else if(dc(y,!0))h++,Vh(y,$,p,{end:q});else if(iw(y)||Ma(y)){let I=y.readable||y;h++,Vh(I,$,p,{end:q})}else throw new rw("AsyncIterable or Promise","destination",y);y=$;let{destroy:Q,cleanup:G}=QA(y,!1,!0);f.push(Q),j&&s.push(G)}}else if(ZA(O)){if(qh(y)){h+=2;let $=Ek(y,O,p,{end:q});nw(O)&&j&&s.push($)}else if(Ma(y)||iw(y)){let $=y.readable||y;h++,Vh($,O,p,{end:q})}else if(dc(y))h++,Vh(y,O,p,{end:q});else throw new dw("val",["Readable","Iterable","AsyncIterable","ReadableStream","TransformStream"],y);y=O}else if(yk(O)){if(qh(y))h++,uw(aw(y),O,p,{end:q});else if(iw(y)||dc(y))h++,uw(y,O,p,{end:q});else if(Ma(y))h++,uw(y.readable,O,p,{end:q});else throw new dw("val",["Readable","Iterable","AsyncIterable","ReadableStream","TransformStream"],y);y=O}else y=XA.from(O)}return(i!=null&&i.aborted||o!=null&&o.aborted)&&Md.nextTick(c),y}function Ek(t,e,r,{end:n}){let i=!1;if(e.on("close",()=>{i||r(new fk)}),t.pipe(e,{end:!1}),n){let s=function(){i=!0,e.end()};var o=s;gk(t)?Md.nextTick(s):t.once("end",s)}else r();return Fh(t,{readable:!0,writable:!1},s=>{let c=t._readableState;s&&s.code==="ERR_STREAM_PREMATURE_CLOSE"&&c&&c.ended&&!c.errored&&!c.errorEmitted?t.once("end",r).once("error",r):r(s)}),Fh(e,{readable:!1,writable:!0},r)}tT.exports={pipelineImpl:eT,pipeline:xk}});var lw=oe((oj,cT)=>{"use strict";l();var{pipeline:vk}=jh(),Wh=oi(),{destroyer:Sk}=sc(),{isNodeStream:Gh,isReadable:rT,isWritable:nT,isWebStream:fw,isTransformStream:fc,isWritableStream:iT,isReadableStream:oT}=ri(),{AbortError:Ak,codes:{ERR_INVALID_ARG_VALUE:sT,ERR_MISSING_ARGS:Tk}}=sr(),_k=Gi();cT.exports=function(...e){if(e.length===0)throw new Tk("streams");if(e.length===1)return Wh.from(e[0]);let r=[...e];if(typeof e[0]=="function"&&(e[0]=Wh.from(e[0])),typeof e[e.length-1]=="function"){let p=e.length-1;e[p]=Wh.from(e[p])}for(let p=0;p<e.length;++p)if(!(!Gh(e[p])&&!fw(e[p]))){if(p<e.length-1&&!(rT(e[p])||oT(e[p])||fc(e[p])))throw new sT(`streams[${p}]`,r[p],"must be readable");if(p>0&&!(nT(e[p])||iT(e[p])||fc(e[p])))throw new sT(`streams[${p}]`,r[p],"must be writable")}let n,i,o,s,c;function a(p){let g=s;s=null,g?g(p):p?c.destroy(p):!h&&!f&&c.destroy()}let u=e[0],d=vk(e,a),f=!!(nT(u)||iT(u)||fc(u)),h=!!(rT(d)||oT(d)||fc(d));if(c=new Wh({writableObjectMode:!!(u!=null&&u.writableObjectMode),readableObjectMode:!!(d!=null&&d.readableObjectMode),writable:f,readable:h}),f){if(Gh(u))c._write=function(g,y,x){u.write(g,y)?x():n=x},c._final=function(g){u.end(),i=g},u.on("drain",function(){if(n){let g=n;n=null,g()}});else if(fw(u)){let y=(fc(u)?u.writable:u).getWriter();c._write=async function(x,S,_){try{await y.ready,y.write(x).catch(()=>{}),_()}catch(A){_(A)}},c._final=async function(x){try{await y.ready,y.close().catch(()=>{}),i=x}catch(S){x(S)}}}let p=fc(d)?d.readable:d;_k(p,()=>{if(i){let g=i;i=null,g()}})}if(h){if(Gh(d))d.on("readable",function(){if(o){let p=o;o=null,p()}}),d.on("end",function(){c.push(null)}),c._read=function(){for(;;){let p=d.read();if(p===null){o=c._read;return}if(!c.push(p))return}};else if(fw(d)){let g=(fc(d)?d.readable:d).getReader();c._read=async function(){for(;;)try{let{value:y,done:x}=await g.read();if(!c.push(y))return;if(x){c.push(null);return}}catch{return}}}}return c._destroy=function(p,g){!p&&s!==null&&(p=new Ak),o=null,n=null,i=null,s===null?g(p):(s=g,Gh(d)&&Sk(d,p))},c}});var mT=oe((cj,yw)=>{"use strict";l();var Ik=globalThis.AbortController||_a().AbortController,{codes:{ERR_INVALID_ARG_VALUE:Bk,ERR_INVALID_ARG_TYPE:Kd,ERR_MISSING_ARGS:Rk,ERR_OUT_OF_RANGE:Uk},AbortError:si}=sr(),{validateAbortSignal:lc,validateInteger:aT,validateObject:hc}=Ba(),Ok=nt().Symbol("kWeak"),Dk=nt().Symbol("kResistStopPropagation"),{finished:kk}=Gi(),Nk=lw(),{addAbortSignalNoValidate:Ck}=Rd(),{isWritable:Lk,isNodeStream:Pk}=ri(),{deprecate:Mk}=Zt(),{ArrayPrototypePush:Kk,Boolean:$k,MathFloor:uT,Number:Hk,NumberIsNaN:Vk,Promise:dT,PromiseReject:fT,PromiseResolve:qk,PromisePrototypeThen:lT,Symbol:pT}=nt(),zh=pT("kEmpty"),hT=pT("kEof");function Fk(t,e){if(e!=null&&hc(e,"options"),e?.signal!=null&&lc(e.signal,"options.signal"),Pk(t)&&!Lk(t))throw new Bk("stream",t,"must be writable");let r=Nk(this,t);return e!=null&&e.signal&&Ck(e.signal,r),r}function Yh(t,e){if(typeof t!="function")throw new Kd("fn",["Function","AsyncFunction"],t);e!=null&&hc(e,"options"),e?.signal!=null&&lc(e.signal,"options.signal");let r=1;e?.concurrency!=null&&(r=uT(e.concurrency));let n=r-1;return e?.highWaterMark!=null&&(n=uT(e.highWaterMark)),aT(r,"options.concurrency",1),aT(n,"options.highWaterMark",0),n+=r,(async function*(){let o=Zt().AbortSignalAny([e?.signal].filter($k)),s=this,c=[],a={signal:o},u,d,f=!1,h=0;function p(){f=!0,g()}function g(){h-=1,y()}function y(){d&&!f&&h<r&&c.length<n&&(d(),d=null)}async function x(){try{for await(let S of s){if(f)return;if(o.aborted)throw new si;try{if(S=t(S,a),S===zh)continue;S=qk(S)}catch(_){S=fT(_)}h+=1,lT(S,g,p),c.push(S),u&&(u(),u=null),!f&&(c.length>=n||h>=r)&&await new dT(_=>{d=_})}c.push(hT)}catch(S){let _=fT(S);lT(_,g,p),c.push(_)}finally{f=!0,u&&(u(),u=null)}}x();try{for(;;){for(;c.length>0;){let S=await c[0];if(S===hT)return;if(o.aborted)throw new si;S!==zh&&(yield S),c.shift(),y()}await new dT(S=>{u=S})}}finally{f=!0,d&&(d(),d=null)}}).call(this)}function jk(t=void 0){return t!=null&&hc(t,"options"),t?.signal!=null&&lc(t.signal,"options.signal"),(async function*(){let r=0;for await(let i of this){var n;if(t!=null&&(n=t.signal)!==null&&n!==void 0&&n.aborted)throw new si({cause:t.signal.reason});yield[r++,i]}}).call(this)}async function yT(t,e=void 0){for await(let r of pw.call(this,t,e))return!0;return!1}async function Wk(t,e=void 0){if(typeof t!="function")throw new Kd("fn",["Function","AsyncFunction"],t);return!await yT.call(this,async(...r)=>!await t(...r),e)}async function Gk(t,e){for await(let r of pw.call(this,t,e))return r}async function zk(t,e){if(typeof t!="function")throw new Kd("fn",["Function","AsyncFunction"],t);async function r(n,i){return await t(n,i),zh}for await(let n of Yh.call(this,r,e));}function pw(t,e){if(typeof t!="function")throw new Kd("fn",["Function","AsyncFunction"],t);async function r(n,i){return await t(n,i)?n:zh}return Yh.call(this,r,e)}var hw=class extends Rk{constructor(){super("reduce"),this.message="Reduce of an empty stream requires an initial value"}};async function Yk(t,e,r){var n;if(typeof t!="function")throw new Kd("reducer",["Function","AsyncFunction"],t);r!=null&&hc(r,"options"),r?.signal!=null&&lc(r.signal,"options.signal");let i=arguments.length>1;if(r!=null&&(n=r.signal)!==null&&n!==void 0&&n.aborted){let u=new si(void 0,{cause:r.signal.reason});throw this.once("error",()=>{}),await kk(this.destroy(u)),u}let o=new Ik,s=o.signal;if(r!=null&&r.signal){let u={once:!0,[Ok]:this,[Dk]:!0};r.signal.addEventListener("abort",()=>o.abort(),u)}let c=!1;try{for await(let u of this){var a;if(c=!0,r!=null&&(a=r.signal)!==null&&a!==void 0&&a.aborted)throw new si;i?e=await t(e,u,{signal:s}):(e=u,i=!0)}if(!c&&!i)throw new hw}finally{o.abort()}return e}async function Jk(t){t!=null&&hc(t,"options"),t?.signal!=null&&lc(t.signal,"options.signal");let e=[];for await(let n of this){var r;if(t!=null&&(r=t.signal)!==null&&r!==void 0&&r.aborted)throw new si(void 0,{cause:t.signal.reason});Kk(e,n)}return e}function Xk(t,e){let r=Yh.call(this,t,e);return(async function*(){for await(let i of r)yield*i}).call(this)}function gT(t){if(t=Hk(t),Vk(t))return 0;if(t<0)throw new Uk("number",">= 0",t);return t}function Zk(t,e=void 0){return e!=null&&hc(e,"options"),e?.signal!=null&&lc(e.signal,"options.signal"),t=gT(t),(async function*(){var n;if(e!=null&&(n=e.signal)!==null&&n!==void 0&&n.aborted)throw new si;for await(let o of this){var i;if(e!=null&&(i=e.signal)!==null&&i!==void 0&&i.aborted)throw new si;t--<=0&&(yield o)}}).call(this)}function Qk(t,e=void 0){return e!=null&&hc(e,"options"),e?.signal!=null&&lc(e.signal,"options.signal"),t=gT(t),(async function*(){var n;if(e!=null&&(n=e.signal)!==null&&n!==void 0&&n.aborted)throw new si;for await(let o of this){var i;if(e!=null&&(i=e.signal)!==null&&i!==void 0&&i.aborted)throw new si;if(t-- >0&&(yield o),t<=0)return}}).call(this)}yw.exports.streamReturningOperators={asIndexedPairs:Mk(jk,"readable.asIndexedPairs will be removed in a future version."),drop:Zk,filter:pw,flatMap:Xk,map:Yh,take:Qk,compose:Fk};yw.exports.promiseReturningOperators={every:Wk,forEach:zk,reduce:Yk,toArray:Jk,some:yT,find:Gk}});var gw=oe((uj,wT)=>{"use strict";l();var{ArrayPrototypePop:e4,Promise:t4}=nt(),{isIterable:r4,isNodeStream:n4,isWebStream:i4}=ri(),{pipelineImpl:o4}=jh(),{finished:s4}=Gi();mw();function c4(...t){return new t4((e,r)=>{let n,i,o=t[t.length-1];if(o&&typeof o=="object"&&!n4(o)&&!r4(o)&&!i4(o)){let s=e4(t);n=s.signal,i=s.end}o4(t,(s,c)=>{s?r(s):e(c)},{signal:n,end:i})})}wT.exports={finished:s4,pipeline:c4}});var mw=oe((fj,IT)=>{l();var{Buffer:a4}=Tr(),{ObjectDefineProperty:Ji,ObjectKeys:ET,ReflectApply:vT}=nt(),{promisify:{custom:ST}}=Zt(),{streamReturningOperators:bT,promiseReturningOperators:xT}=mT(),{codes:{ERR_ILLEGAL_CONSTRUCTOR:AT}}=sr(),u4=lw(),{setDefaultHighWaterMark:d4,getDefaultHighWaterMark:f4}=Ud(),{pipeline:TT}=jh(),{destroyer:l4}=sc(),_T=Gi(),ww=gw(),$d=ri(),We=IT.exports=Bh().Stream;We.isDestroyed=$d.isDestroyed;We.isDisturbed=$d.isDisturbed;We.isErrored=$d.isErrored;We.isReadable=$d.isReadable;We.isWritable=$d.isWritable;We.Readable=kd();for(let t of ET(bT)){let r=function(...n){if(new.target)throw AT();return We.Readable.from(vT(e,this,n))};bw=r;let e=bT[t];Ji(r,"name",{__proto__:null,value:e.name}),Ji(r,"length",{__proto__:null,value:e.length}),Ji(We.Readable.prototype,t,{__proto__:null,value:r,enumerable:!1,configurable:!0,writable:!0})}var bw;for(let t of ET(xT)){let r=function(...i){if(new.target)throw AT();return vT(e,this,i)};bw=r;let e=xT[t];Ji(r,"name",{__proto__:null,value:e.name}),Ji(r,"length",{__proto__:null,value:e.length}),Ji(We.Readable.prototype,t,{__proto__:null,value:r,enumerable:!1,configurable:!0,writable:!0})}var bw;We.Writable=Hh();We.Duplex=oi();We.Transform=Qm();We.PassThrough=tw();We.pipeline=TT;var{addAbortSignal:h4}=Rd();We.addAbortSignal=h4;We.finished=_T;We.destroy=l4;We.compose=u4;We.setDefaultHighWaterMark=d4;We.getDefaultHighWaterMark=f4;Ji(We,"promises",{__proto__:null,configurable:!0,enumerable:!0,get(){return ww}});Ji(TT,ST,{__proto__:null,enumerable:!0,get(){return ww.pipeline}});Ji(_T,ST,{__proto__:null,enumerable:!0,get(){return ww.finished}});We.Stream=We;We._isUint8Array=function(e){return e instanceof Uint8Array};We._uint8ArrayToBuffer=function(e){return a4.from(e.buffer,e.byteOffset,e.byteLength)}});var xw=oe((hj,gt)=>{"use strict";l();var _t=mw(),p4=gw(),y4=_t.Readable.destroy;gt.exports=_t.Readable;gt.exports._uint8ArrayToBuffer=_t._uint8ArrayToBuffer;gt.exports._isUint8Array=_t._isUint8Array;gt.exports.isDisturbed=_t.isDisturbed;gt.exports.isErrored=_t.isErrored;gt.exports.isReadable=_t.isReadable;gt.exports.Readable=_t.Readable;gt.exports.Writable=_t.Writable;gt.exports.Duplex=_t.Duplex;gt.exports.Transform=_t.Transform;gt.exports.PassThrough=_t.PassThrough;gt.exports.addAbortSignal=_t.addAbortSignal;gt.exports.finished=_t.finished;gt.exports.destroy=_t.destroy;gt.exports.destroy=y4;gt.exports.pipeline=_t.pipeline;gt.exports.compose=_t.compose;Object.defineProperty(_t,"promises",{configurable:!0,enumerable:!0,get(){return p4}});gt.exports.Stream=_t.Stream;gt.exports.default=gt.exports});var Y_=oe((Pp,z_)=>{l();(function(t,e){typeof Pp=="object"&&typeof z_<"u"?e(Pp):typeof define=="function"&&define.amd?define(["exports"],e):e(t.URI=t.URI||{})})(Pp,function(t){"use strict";function e(){for(var B=arguments.length,v=Array(B),k=0;k<B;k++)v[k]=arguments[k];if(v.length>1){v[0]=v[0].slice(0,-1);for(var K=v.length-1,H=1;H<K;++H)v[H]=v[H].slice(1,-1);return v[K]=v[K].slice(1),v.join("")}else return v[0]}function r(B){return"(?:"+B+")"}function n(B){return B===void 0?"undefined":B===null?"null":Object.prototype.toString.call(B).split(" ").pop().split("]").shift().toLowerCase()}function i(B){return B.toUpperCase()}function o(B){return B!=null?B instanceof Array?B:typeof B.length!="number"||B.split||B.setInterval||B.call?[B]:Array.prototype.slice.call(B):[]}function s(B,v){var k=B;if(v)for(var K in v)k[K]=v[K];return k}function c(B){var v="[A-Za-z]",k="[\\x0D]",K="[0-9]",H="[\\x22]",te=e(K,"[A-Fa-f]"),fe="[\\x0A]",Se="[\\x20]",Oe=r(r("%[EFef]"+te+"%"+te+te+"%"+te+te)+"|"+r("%[89A-Fa-f]"+te+"%"+te+te)+"|"+r("%"+te+te)),mt="[\\:\\/\\?\\#\\[\\]\\@]",ve="[\\!\\$\\&\\'\\(\\)\\*\\+\\,\\;\\=]",tt=e(mt,ve),wt=B?"[\\xA0-\\u200D\\u2010-\\u2029\\u202F-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF]":"[]",Xe=B?"[\\uE000-\\uF8FF]":"[]",_e=e(v,K,"[\\-\\.\\_\\~]",wt),rt=r(v+e(v,K,"[\\+\\-\\.]")+"*"),Ne=r(r(Oe+"|"+e(_e,ve,"[\\:]"))+"*"),ls=r(r("25[0-5]")+"|"+r("2[0-4]"+K)+"|"+r("1"+K+K)+"|"+r("[1-9]"+K)+"|"+K),Sr=r(r("25[0-5]")+"|"+r("2[0-4]"+K)+"|"+r("1"+K+K)+"|"+r("0?[1-9]"+K)+"|0?0?"+K),Gr=r(Sr+"\\."+Sr+"\\."+Sr+"\\."+Sr),$e=r(te+"{1,4}"),Ar=r(r($e+"\\:"+$e)+"|"+Gr),zr=r(r($e+"\\:")+"{6}"+Ar),Pn=r("\\:\\:"+r($e+"\\:")+"{5}"+Ar),hs=r(r($e)+"?\\:\\:"+r($e+"\\:")+"{4}"+Ar),yi=r(r(r($e+"\\:")+"{0,1}"+$e)+"?\\:\\:"+r($e+"\\:")+"{3}"+Ar),wu=r(r(r($e+"\\:")+"{0,2}"+$e)+"?\\:\\:"+r($e+"\\:")+"{2}"+Ar),Bf=r(r(r($e+"\\:")+"{0,3}"+$e)+"?\\:\\:"+$e+"\\:"+Ar),Rf=r(r(r($e+"\\:")+"{0,4}"+$e)+"?\\:\\:"+Ar),Bc=r(r(r($e+"\\:")+"{0,5}"+$e)+"?\\:\\:"+$e),Rc=r(r(r($e+"\\:")+"{0,6}"+$e)+"?\\:\\:"),gi=r([zr,Pn,hs,yi,wu,Bf,Rf,Bc,Rc].join("|")),Uc=r(r(_e+"|"+Oe)+"+"),sy=r(gi+"\\%25"+Uc),ps=r(gi+r("\\%25|\\%(?!"+te+"{2})")+Uc),pB=r("[vV]"+te+"+\\."+e(_e,ve,"[\\:]")+"+"),yB=r("\\["+r(ps+"|"+gi+"|"+pB)+"\\]"),hx=r(r(Oe+"|"+e(_e,ve))+"*"),bu=r(yB+"|"+Gr+"(?!"+hx+")|"+hx),xu=r(K+"*"),px=r(r(Ne+"@")+"?"+bu+r("\\:"+xu)+"?"),Eu=r(Oe+"|"+e(_e,ve,"[\\:\\@]")),gB=r(Eu+"*"),yx=r(Eu+"+"),mB=r(r(Oe+"|"+e(_e,ve,"[\\@]"))+"+"),mi=r(r("\\/"+gB)+"*"),Oc=r("\\/"+r(yx+mi)+"?"),cy=r(mB+mi),Uf=r(yx+mi),Dc="(?!"+Eu+")",KL=r(mi+"|"+Oc+"|"+cy+"|"+Uf+"|"+Dc),kc=r(r(Eu+"|"+e("[\\/\\?]",Xe))+"*"),vu=r(r(Eu+"|[\\/\\?]")+"*"),gx=r(r("\\/\\/"+px+mi)+"|"+Oc+"|"+Uf+"|"+Dc),wB=r(rt+"\\:"+gx+r("\\?"+kc)+"?"+r("\\#"+vu)+"?"),bB=r(r("\\/\\/"+px+mi)+"|"+Oc+"|"+cy+"|"+Dc),xB=r(bB+r("\\?"+kc)+"?"+r("\\#"+vu)+"?"),$L=r(wB+"|"+xB),HL=r(rt+"\\:"+gx+r("\\?"+kc)+"?"),VL="^("+rt+")\\:"+r(r("\\/\\/("+r("("+Ne+")@")+"?("+bu+")"+r("\\:("+xu+")")+"?)")+"?("+mi+"|"+Oc+"|"+Uf+"|"+Dc+")")+r("\\?("+kc+")")+"?"+r("\\#("+vu+")")+"?$",qL="^(){0}"+r(r("\\/\\/("+r("("+Ne+")@")+"?("+bu+")"+r("\\:("+xu+")")+"?)")+"?("+mi+"|"+Oc+"|"+cy+"|"+Dc+")")+r("\\?("+kc+")")+"?"+r("\\#("+vu+")")+"?$",FL="^("+rt+")\\:"+r(r("\\/\\/("+r("("+Ne+")@")+"?("+bu+")"+r("\\:("+xu+")")+"?)")+"?("+mi+"|"+Oc+"|"+Uf+"|"+Dc+")")+r("\\?("+kc+")")+"?$",jL="^"+r("\\#("+vu+")")+"?$",WL="^"+r("("+Ne+")@")+"?("+bu+")"+r("\\:("+xu+")")+"?$";return{NOT_SCHEME:new RegExp(e("[^]",v,K,"[\\+\\-\\.]"),"g"),NOT_USERINFO:new RegExp(e("[^\\%\\:]",_e,ve),"g"),NOT_HOST:new RegExp(e("[^\\%\\[\\]\\:]",_e,ve),"g"),NOT_PATH:new RegExp(e("[^\\%\\/\\:\\@]",_e,ve),"g"),NOT_PATH_NOSCHEME:new RegExp(e("[^\\%\\/\\@]",_e,ve),"g"),NOT_QUERY:new RegExp(e("[^\\%]",_e,ve,"[\\:\\@\\/\\?]",Xe),"g"),NOT_FRAGMENT:new RegExp(e("[^\\%]",_e,ve,"[\\:\\@\\/\\?]"),"g"),ESCAPE:new RegExp(e("[^]",_e,ve),"g"),UNRESERVED:new RegExp(_e,"g"),OTHER_CHARS:new RegExp(e("[^\\%]",_e,tt),"g"),PCT_ENCODED:new RegExp(Oe,"g"),IPV4ADDRESS:new RegExp("^("+Gr+")$"),IPV6ADDRESS:new RegExp("^\\[?("+gi+")"+r(r("\\%25|\\%(?!"+te+"{2})")+"("+Uc+")")+"?\\]?$")}}var a=c(!1),u=c(!0),d=function(){function B(v,k){var K=[],H=!0,te=!1,fe=void 0;try{for(var Se=v[Symbol.iterator](),Oe;!(H=(Oe=Se.next()).done)&&(K.push(Oe.value),!(k&&K.length===k));H=!0);}catch(mt){te=!0,fe=mt}finally{try{!H&&Se.return&&Se.return()}finally{if(te)throw fe}}return K}return function(v,k){if(Array.isArray(v))return v;if(Symbol.iterator in Object(v))return B(v,k);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),f=function(B){if(Array.isArray(B)){for(var v=0,k=Array(B.length);v<B.length;v++)k[v]=B[v];return k}else return Array.from(B)},h=2147483647,p=36,g=1,y=26,x=38,S=700,_=72,A=128,O="-",T=/^xn--/,M=/[^\0-\x7E]/,q=/[\x2E\u3002\uFF0E\uFF61]/g,j={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},$=p-g,Z=Math.floor,Q=String.fromCharCode;function G(B){throw new RangeError(j[B])}function I(B,v){for(var k=[],K=B.length;K--;)k[K]=v(B[K]);return k}function D(B,v){var k=B.split("@"),K="";k.length>1&&(K=k[0]+"@",B=k[1]),B=B.replace(q,".");var H=B.split("."),te=I(H,v).join(".");return K+te}function E(B){for(var v=[],k=0,K=B.length;k<K;){var H=B.charCodeAt(k++);if(H>=55296&&H<=56319&&k<K){var te=B.charCodeAt(k++);(te&64512)==56320?v.push(((H&1023)<<10)+(te&1023)+65536):(v.push(H),k--)}else v.push(H)}return v}var U=function(v){return String.fromCodePoint.apply(String,f(v))},L=function(v){return v-48<10?v-22:v-65<26?v-65:v-97<26?v-97:p},N=function(v,k){return v+22+75*(v<26)-((k!=0)<<5)},R=function(v,k,K){var H=0;for(v=K?Z(v/S):v>>1,v+=Z(v/k);v>$*y>>1;H+=p)v=Z(v/$);return Z(H+($+1)*v/(v+x))},C=function(v){var k=[],K=v.length,H=0,te=A,fe=_,Se=v.lastIndexOf(O);Se<0&&(Se=0);for(var Oe=0;Oe<Se;++Oe)v.charCodeAt(Oe)>=128&&G("not-basic"),k.push(v.charCodeAt(Oe));for(var mt=Se>0?Se+1:0;mt<K;){for(var ve=H,tt=1,wt=p;;wt+=p){mt>=K&&G("invalid-input");var Xe=L(v.charCodeAt(mt++));(Xe>=p||Xe>Z((h-H)/tt))&&G("overflow"),H+=Xe*tt;var _e=wt<=fe?g:wt>=fe+y?y:wt-fe;if(Xe<_e)break;var rt=p-_e;tt>Z(h/rt)&&G("overflow"),tt*=rt}var Ne=k.length+1;fe=R(H-ve,Ne,ve==0),Z(H/Ne)>h-te&&G("overflow"),te+=Z(H/Ne),H%=Ne,k.splice(H++,0,te)}return String.fromCodePoint.apply(String,k)},P=function(v){var k=[];v=E(v);var K=v.length,H=A,te=0,fe=_,Se=!0,Oe=!1,mt=void 0;try{for(var ve=v[Symbol.iterator](),tt;!(Se=(tt=ve.next()).done);Se=!0){var wt=tt.value;wt<128&&k.push(Q(wt))}}catch(ps){Oe=!0,mt=ps}finally{try{!Se&&ve.return&&ve.return()}finally{if(Oe)throw mt}}var Xe=k.length,_e=Xe;for(Xe&&k.push(O);_e<K;){var rt=h,Ne=!0,ls=!1,Sr=void 0;try{for(var Gr=v[Symbol.iterator](),$e;!(Ne=($e=Gr.next()).done);Ne=!0){var Ar=$e.value;Ar>=H&&Ar<rt&&(rt=Ar)}}catch(ps){ls=!0,Sr=ps}finally{try{!Ne&&Gr.return&&Gr.return()}finally{if(ls)throw Sr}}var zr=_e+1;rt-H>Z((h-te)/zr)&&G("overflow"),te+=(rt-H)*zr,H=rt;var Pn=!0,hs=!1,yi=void 0;try{for(var wu=v[Symbol.iterator](),Bf;!(Pn=(Bf=wu.next()).done);Pn=!0){var Rf=Bf.value;if(Rf<H&&++te>h&&G("overflow"),Rf==H){for(var Bc=te,Rc=p;;Rc+=p){var gi=Rc<=fe?g:Rc>=fe+y?y:Rc-fe;if(Bc<gi)break;var Uc=Bc-gi,sy=p-gi;k.push(Q(N(gi+Uc%sy,0))),Bc=Z(Uc/sy)}k.push(Q(N(Bc,0))),fe=R(te,zr,_e==Xe),te=0,++_e}}}catch(ps){hs=!0,yi=ps}finally{try{!Pn&&wu.return&&wu.return()}finally{if(hs)throw yi}}++te,++H}return k.join("")},V=function(v){return D(v,function(k){return T.test(k)?C(k.slice(4).toLowerCase()):k})},J=function(v){return D(v,function(k){return M.test(k)?"xn--"+P(k):k})},z={version:"2.1.0",ucs2:{decode:E,encode:U},decode:C,encode:P,toASCII:J,toUnicode:V},W={};function Y(B){var v=B.charCodeAt(0),k=void 0;return v<16?k="%0"+v.toString(16).toUpperCase():v<128?k="%"+v.toString(16).toUpperCase():v<2048?k="%"+(v>>6|192).toString(16).toUpperCase()+"%"+(v&63|128).toString(16).toUpperCase():k="%"+(v>>12|224).toString(16).toUpperCase()+"%"+(v>>6&63|128).toString(16).toUpperCase()+"%"+(v&63|128).toString(16).toUpperCase(),k}function X(B){for(var v="",k=0,K=B.length;k<K;){var H=parseInt(B.substr(k+1,2),16);if(H<128)v+=String.fromCharCode(H),k+=3;else if(H>=194&&H<224){if(K-k>=6){var te=parseInt(B.substr(k+4,2),16);v+=String.fromCharCode((H&31)<<6|te&63)}else v+=B.substr(k,6);k+=6}else if(H>=224){if(K-k>=9){var fe=parseInt(B.substr(k+4,2),16),Se=parseInt(B.substr(k+7,2),16);v+=String.fromCharCode((H&15)<<12|(fe&63)<<6|Se&63)}else v+=B.substr(k,9);k+=9}else v+=B.substr(k,3),k+=3}return v}function ue(B,v){function k(K){var H=X(K);return H.match(v.UNRESERVED)?H:K}return B.scheme&&(B.scheme=String(B.scheme).replace(v.PCT_ENCODED,k).toLowerCase().replace(v.NOT_SCHEME,"")),B.userinfo!==void 0&&(B.userinfo=String(B.userinfo).replace(v.PCT_ENCODED,k).replace(v.NOT_USERINFO,Y).replace(v.PCT_ENCODED,i)),B.host!==void 0&&(B.host=String(B.host).replace(v.PCT_ENCODED,k).toLowerCase().replace(v.NOT_HOST,Y).replace(v.PCT_ENCODED,i)),B.path!==void 0&&(B.path=String(B.path).replace(v.PCT_ENCODED,k).replace(B.scheme?v.NOT_PATH:v.NOT_PATH_NOSCHEME,Y).replace(v.PCT_ENCODED,i)),B.query!==void 0&&(B.query=String(B.query).replace(v.PCT_ENCODED,k).replace(v.NOT_QUERY,Y).replace(v.PCT_ENCODED,i)),B.fragment!==void 0&&(B.fragment=String(B.fragment).replace(v.PCT_ENCODED,k).replace(v.NOT_FRAGMENT,Y).replace(v.PCT_ENCODED,i)),B}function ee(B){return B.replace(/^0*(.*)/,"$1")||"0"}function ce(B,v){var k=B.match(v.IPV4ADDRESS)||[],K=d(k,2),H=K[1];return H?H.split(".").map(ee).join("."):B}function Ue(B,v){var k=B.match(v.IPV6ADDRESS)||[],K=d(k,3),H=K[1],te=K[2];if(H){for(var fe=H.toLowerCase().split("::").reverse(),Se=d(fe,2),Oe=Se[0],mt=Se[1],ve=mt?mt.split(":").map(ee):[],tt=Oe.split(":").map(ee),wt=v.IPV4ADDRESS.test(tt[tt.length-1]),Xe=wt?7:8,_e=tt.length-Xe,rt=Array(Xe),Ne=0;Ne<Xe;++Ne)rt[Ne]=ve[Ne]||tt[_e+Ne]||"";wt&&(rt[Xe-1]=ce(rt[Xe-1],v));var ls=rt.reduce(function(zr,Pn,hs){if(!Pn||Pn==="0"){var yi=zr[zr.length-1];yi&&yi.index+yi.length===hs?yi.length++:zr.push({index:hs,length:1})}return zr},[]),Sr=ls.sort(function(zr,Pn){return Pn.length-zr.length})[0],Gr=void 0;if(Sr&&Sr.length>1){var $e=rt.slice(0,Sr.index),Ar=rt.slice(Sr.index+Sr.length);Gr=$e.join(":")+"::"+Ar.join(":")}else Gr=rt.join(":");return te&&(Gr+="%"+te),Gr}else return B}var Ke=/^(?:([^:\/?#]+):)?(?:\/\/((?:([^\/?#@]*)@)?(\[[^\/?#\]]+\]|[^\/?#:]*)(?:\:(\d*))?))?([^?#]*)(?:\?([^#]*))?(?:#((?:.|\n|\r)*))?/i,Je="".match(/(){0}/)[1]===void 0;function xt(B){var v=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},k={},K=v.iri!==!1?u:a;v.reference==="suffix"&&(B=(v.scheme?v.scheme+":":"")+"//"+B);var H=B.match(Ke);if(H){Je?(k.scheme=H[1],k.userinfo=H[3],k.host=H[4],k.port=parseInt(H[5],10),k.path=H[6]||"",k.query=H[7],k.fragment=H[8],isNaN(k.port)&&(k.port=H[5])):(k.scheme=H[1]||void 0,k.userinfo=B.indexOf("@")!==-1?H[3]:void 0,k.host=B.indexOf("//")!==-1?H[4]:void 0,k.port=parseInt(H[5],10),k.path=H[6]||"",k.query=B.indexOf("?")!==-1?H[7]:void 0,k.fragment=B.indexOf("#")!==-1?H[8]:void 0,isNaN(k.port)&&(k.port=B.match(/\/\/(?:.|\n)*\:(?:\/|\?|\#|$)/)?H[4]:void 0)),k.host&&(k.host=Ue(ce(k.host,K),K)),k.scheme===void 0&&k.userinfo===void 0&&k.host===void 0&&k.port===void 0&&!k.path&&k.query===void 0?k.reference="same-document":k.scheme===void 0?k.reference="relative":k.fragment===void 0?k.reference="absolute":k.reference="uri",v.reference&&v.reference!=="suffix"&&v.reference!==k.reference&&(k.error=k.error||"URI is not a "+v.reference+" reference.");var te=W[(v.scheme||k.scheme||"").toLowerCase()];if(!v.unicodeSupport&&(!te||!te.unicodeSupport)){if(k.host&&(v.domainHost||te&&te.domainHost))try{k.host=z.toASCII(k.host.replace(K.PCT_ENCODED,X).toLowerCase())}catch(fe){k.error=k.error||"Host's domain name can not be converted to ASCII via punycode: "+fe}ue(k,a)}else ue(k,K);te&&te.parse&&te.parse(k,v)}else k.error=k.error||"URI can not be parsed.";return k}function pi(B,v){var k=v.iri!==!1?u:a,K=[];return B.userinfo!==void 0&&(K.push(B.userinfo),K.push("@")),B.host!==void 0&&K.push(Ue(ce(String(B.host),k),k).replace(k.IPV6ADDRESS,function(H,te,fe){return"["+te+(fe?"%25"+fe:"")+"]"})),(typeof B.port=="number"||typeof B.port=="string")&&(K.push(":"),K.push(String(B.port))),K.length?K.join(""):void 0}var ho=/^\.\.?\//,pu=/^\/\.(\/|$)/,vf=/^\/\.\.(\/|$)/,ny=/^\/?(?:.|\n)*?(?=\/|$)/;function po(B){for(var v=[];B.length;)if(B.match(ho))B=B.replace(ho,"");else if(B.match(pu))B=B.replace(pu,"/");else if(B.match(vf))B=B.replace(vf,"/"),v.pop();else if(B==="."||B==="..")B="";else{var k=B.match(ny);if(k){var K=k[0];B=B.slice(K.length),v.push(K)}else throw new Error("Unexpected dot segment condition")}return v.join("")}function jr(B){var v=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},k=v.iri?u:a,K=[],H=W[(v.scheme||B.scheme||"").toLowerCase()];if(H&&H.serialize&&H.serialize(B,v),B.host&&!k.IPV6ADDRESS.test(B.host)){if(v.domainHost||H&&H.domainHost)try{B.host=v.iri?z.toUnicode(B.host):z.toASCII(B.host.replace(k.PCT_ENCODED,X).toLowerCase())}catch(Se){B.error=B.error||"Host's domain name can not be converted to "+(v.iri?"Unicode":"ASCII")+" via punycode: "+Se}}ue(B,k),v.reference!=="suffix"&&B.scheme&&(K.push(B.scheme),K.push(":"));var te=pi(B,v);if(te!==void 0&&(v.reference!=="suffix"&&K.push("//"),K.push(te),B.path&&B.path.charAt(0)!=="/"&&K.push("/")),B.path!==void 0){var fe=B.path;!v.absolutePath&&(!H||!H.absolutePath)&&(fe=po(fe)),te===void 0&&(fe=fe.replace(/^\/\//,"/%2F")),K.push(fe)}return B.query!==void 0&&(K.push("?"),K.push(B.query)),B.fragment!==void 0&&(K.push("#"),K.push(B.fragment)),K.join("")}function yu(B,v){var k=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},K=arguments[3],H={};return K||(B=xt(jr(B,k),k),v=xt(jr(v,k),k)),k=k||{},!k.tolerant&&v.scheme?(H.scheme=v.scheme,H.userinfo=v.userinfo,H.host=v.host,H.port=v.port,H.path=po(v.path||""),H.query=v.query):(v.userinfo!==void 0||v.host!==void 0||v.port!==void 0?(H.userinfo=v.userinfo,H.host=v.host,H.port=v.port,H.path=po(v.path||""),H.query=v.query):(v.path?(v.path.charAt(0)==="/"?H.path=po(v.path):((B.userinfo!==void 0||B.host!==void 0||B.port!==void 0)&&!B.path?H.path="/"+v.path:B.path?H.path=B.path.slice(0,B.path.lastIndexOf("/")+1)+v.path:H.path=v.path,H.path=po(H.path)),H.query=v.query):(H.path=B.path,v.query!==void 0?H.query=v.query:H.query=B.query),H.userinfo=B.userinfo,H.host=B.host,H.port=B.port),H.scheme=B.scheme),H.fragment=v.fragment,H}function Sf(B,v,k){var K=s({scheme:"null"},k);return jr(yu(xt(B,K),xt(v,K),K,!0),K)}function gu(B,v){return typeof B=="string"?B=jr(xt(B,v),v):n(B)==="object"&&(B=xt(jr(B,v),v)),B}function Af(B,v,k){return typeof B=="string"?B=jr(xt(B,k),k):n(B)==="object"&&(B=jr(B,k)),typeof v=="string"?v=jr(xt(v,k),k):n(v)==="object"&&(v=jr(v,k)),B===v}function Tf(B,v){return B&&B.toString().replace(!v||!v.iri?a.ESCAPE:u.ESCAPE,Y)}function Wr(B,v){return B&&B.toString().replace(!v||!v.iri?a.PCT_ENCODED:u.PCT_ENCODED,X)}var yo={scheme:"http",domainHost:!0,parse:function(v,k){return v.host||(v.error=v.error||"HTTP URIs must have a host."),v},serialize:function(v,k){var K=String(v.scheme).toLowerCase()==="https";return(v.port===(K?443:80)||v.port==="")&&(v.port=void 0),v.path||(v.path="/"),v}},mu={scheme:"https",domainHost:yo.domainHost,parse:yo.parse,serialize:yo.serialize};function _f(B){return typeof B.secure=="boolean"?B.secure:String(B.scheme).toLowerCase()==="wss"}var fs={scheme:"ws",domainHost:!0,parse:function(v,k){var K=v;return K.secure=_f(K),K.resourceName=(K.path||"/")+(K.query?"?"+K.query:""),K.path=void 0,K.query=void 0,K},serialize:function(v,k){if((v.port===(_f(v)?443:80)||v.port==="")&&(v.port=void 0),typeof v.secure=="boolean"&&(v.scheme=v.secure?"wss":"ws",v.secure=void 0),v.resourceName){var K=v.resourceName.split("?"),H=d(K,2),te=H[0],fe=H[1];v.path=te&&te!=="/"?te:void 0,v.query=fe,v.resourceName=void 0}return v.fragment=void 0,v}},If={scheme:"wss",domainHost:fs.domainHost,parse:fs.parse,serialize:fs.serialize},iy={},nB=!0,ax="[A-Za-z0-9\\-\\.\\_\\~"+(nB?"\\xA0-\\u200D\\u2010-\\u2029\\u202F-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF":"")+"]",Ln="[0-9A-Fa-f]",iB=r(r("%[EFef]"+Ln+"%"+Ln+Ln+"%"+Ln+Ln)+"|"+r("%[89A-Fa-f]"+Ln+"%"+Ln+Ln)+"|"+r("%"+Ln+Ln)),oB="[A-Za-z0-9\\!\\$\\%\\'\\*\\+\\-\\^\\_\\`\\{\\|\\}\\~]",sB="[\\!\\$\\%\\'\\(\\)\\*\\+\\,\\-\\.0-9\\<\\>A-Z\\x5E-\\x7E]",cB=e(sB,'[\\"\\\\]'),aB="[\\!\\$\\'\\(\\)\\*\\+\\,\\;\\:\\@]",uB=new RegExp(ax,"g"),Ic=new RegExp(iB,"g"),dB=new RegExp(e("[^]",oB,"[\\.]",'[\\"]',cB),"g"),ux=new RegExp(e("[^]",ax,aB),"g"),fB=ux;function oy(B){var v=X(B);return v.match(uB)?v:B}var dx={scheme:"mailto",parse:function(v,k){var K=v,H=K.to=K.path?K.path.split(","):[];if(K.path=void 0,K.query){for(var te=!1,fe={},Se=K.query.split("&"),Oe=0,mt=Se.length;Oe<mt;++Oe){var ve=Se[Oe].split("=");switch(ve[0]){case"to":for(var tt=ve[1].split(","),wt=0,Xe=tt.length;wt<Xe;++wt)H.push(tt[wt]);break;case"subject":K.subject=Wr(ve[1],k);break;case"body":K.body=Wr(ve[1],k);break;default:te=!0,fe[Wr(ve[0],k)]=Wr(ve[1],k);break}}te&&(K.headers=fe)}K.query=void 0;for(var _e=0,rt=H.length;_e<rt;++_e){var Ne=H[_e].split("@");if(Ne[0]=Wr(Ne[0]),k.unicodeSupport)Ne[1]=Wr(Ne[1],k).toLowerCase();else try{Ne[1]=z.toASCII(Wr(Ne[1],k).toLowerCase())}catch(ls){K.error=K.error||"Email address's domain name can not be converted to ASCII via punycode: "+ls}H[_e]=Ne.join("@")}return K},serialize:function(v,k){var K=v,H=o(v.to);if(H){for(var te=0,fe=H.length;te<fe;++te){var Se=String(H[te]),Oe=Se.lastIndexOf("@"),mt=Se.slice(0,Oe).replace(Ic,oy).replace(Ic,i).replace(dB,Y),ve=Se.slice(Oe+1);try{ve=k.iri?z.toUnicode(ve):z.toASCII(Wr(ve,k).toLowerCase())}catch(_e){K.error=K.error||"Email address's domain name can not be converted to "+(k.iri?"Unicode":"ASCII")+" via punycode: "+_e}H[te]=mt+"@"+ve}K.path=H.join(",")}var tt=v.headers=v.headers||{};v.subject&&(tt.subject=v.subject),v.body&&(tt.body=v.body);var wt=[];for(var Xe in tt)tt[Xe]!==iy[Xe]&&wt.push(Xe.replace(Ic,oy).replace(Ic,i).replace(ux,Y)+"="+tt[Xe].replace(Ic,oy).replace(Ic,i).replace(fB,Y));return wt.length&&(K.query=wt.join("&")),K}},lB=/^([^\:]+)\:(.*)/,fx={scheme:"urn",parse:function(v,k){var K=v.path&&v.path.match(lB),H=v;if(K){var te=k.scheme||H.scheme||"urn",fe=K[1].toLowerCase(),Se=K[2],Oe=te+":"+(k.nid||fe),mt=W[Oe];H.nid=fe,H.nss=Se,H.path=void 0,mt&&(H=mt.parse(H,k))}else H.error=H.error||"URN can not be parsed.";return H},serialize:function(v,k){var K=k.scheme||v.scheme||"urn",H=v.nid,te=K+":"+(k.nid||H),fe=W[te];fe&&(v=fe.serialize(v,k));var Se=v,Oe=v.nss;return Se.path=(H||k.nid)+":"+Oe,Se}},hB=/^[0-9A-Fa-f]{8}(?:\-[0-9A-Fa-f]{4}){3}\-[0-9A-Fa-f]{12}$/,lx={scheme:"urn:uuid",parse:function(v,k){var K=v;return K.uuid=K.nss,K.nss=void 0,!k.tolerant&&(!K.uuid||!K.uuid.match(hB))&&(K.error=K.error||"UUID is not valid."),K},serialize:function(v,k){var K=v;return K.nss=(v.uuid||"").toLowerCase(),K}};W[yo.scheme]=yo,W[mu.scheme]=mu,W[fs.scheme]=fs,W[If.scheme]=If,W[dx.scheme]=dx,W[fx.scheme]=fx,W[lx.scheme]=lx,t.SCHEMES=W,t.pctEncChar=Y,t.pctDecChars=X,t.parse=xt,t.removeDotSegments=po,t.serialize=jr,t.resolveComponents=yu,t.resolve=Sf,t.normalize=gu,t.equal=Af,t.escapeComponent=Tf,t.unescapeComponent=Wr,Object.defineProperty(t,"__esModule",{value:!0})})});var X_=oe((KX,J_)=>{"use strict";l();J_.exports=function t(e){if(typeof e=="number"&&isNaN(e))throw new Error("NaN is not allowed");if(typeof e=="number"&&!isFinite(e))throw new Error("Infinity is not allowed");return e===null||typeof e!="object"?JSON.stringify(e):e.toJSON instanceof Function?t(e.toJSON()):Array.isArray(e)?`[${e.reduce((i,o,s)=>`${i}${s===0?"":","}${t(o===void 0||typeof o=="symbol"?null:o)}`,"")}]`:`{${Object.keys(e).sort().reduce((n,i)=>{if(e[i]===void 0||typeof e[i]=="symbol")return n;let o=n.length===0?"":",";return`${n}${o}${t(i)}:${t(e[i])}`},"")}}`}});var dI=oe((VQ,uI)=>{l();var iu=1e3,ou=iu*60,su=ou*60,xc=su*24,JC=xc*7,XC=xc*365.25;uI.exports=function(t,e){e=e||{};var r=typeof t;if(r==="string"&&t.length>0)return ZC(t);if(r==="number"&&isFinite(t))return e.long?eL(t):QC(t);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(t))};function ZC(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*XC;case"weeks":case"week":case"w":return r*JC;case"days":case"day":case"d":return r*xc;case"hours":case"hour":case"hrs":case"hr":case"h":return r*su;case"minutes":case"minute":case"mins":case"min":case"m":return r*ou;case"seconds":case"second":case"secs":case"sec":case"s":return r*iu;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}function QC(t){var e=Math.abs(t);return e>=xc?Math.round(t/xc)+"d":e>=su?Math.round(t/su)+"h":e>=ou?Math.round(t/ou)+"m":e>=iu?Math.round(t/iu)+"s":t+"ms"}function eL(t){var e=Math.abs(t);return e>=xc?Vp(t,e,xc,"day"):e>=su?Vp(t,e,su,"hour"):e>=ou?Vp(t,e,ou,"minute"):e>=iu?Vp(t,e,iu,"second"):t+" ms"}function Vp(t,e,r,n){var i=e>=r*1.5;return Math.round(t/r)+" "+n+(i?"s":"")}});var ML={};Su(ML,{AggregateBeaconError:()=>D0,Appendix:()=>ot,BECH32M_CHARS:()=>IL,BTCR2_DID_DOCUMENT_CONTEXT:()=>GI,BTCR2_UPDATE_CONTEXT:()=>_c,BeaconError:()=>Yt,BeaconFactory:()=>Ms,BeaconSignalDiscovery:()=>tx,BeaconUtils:()=>Fr,CASBeacon:()=>Yu,CASBeaconError:()=>k0,CHANGE_OUTPUT_VBYTES:()=>M0,DEFAULT_FEE_ESTIMATOR:()=>kl,DEFAULT_MIN_CONF:()=>tB,DID_REGEX:()=>zI,DUST_LIMIT_SATS:()=>K0,DidBtcr2:()=>xf,DidDocument:()=>qr,DidDocumentBuilder:()=>cx,DidVerificationMethod:()=>ty,GenesisDocument:()=>fu,ID_PLACEHOLDER_VALUE:()=>rr,Identifier:()=>fr,MULTIKEY_PUBLIC_KEY_MULTIBASE_PREFIX:()=>Tc,MULTIKEY_VERIFICATION_METHOD_TYPE:()=>Ac,P2PKH_BEACON_TX_VSIZE:()=>kv,P2TR_BEACON_TX_VSIZE:()=>Ov,P2WPKH_BEACON_TX_VSIZE:()=>Dv,Resolver:()=>lo,SINGLETON_BEACON_TX_VSIZE:()=>Nv,SMTBeacon:()=>nd,SMTBeaconError:()=>ia,SPENDABLE_DUST_LIMIT_SATS:()=>Nl,SinglePartyBeacon:()=>Ci,SingletonBeacon:()=>Ju,SingletonBeaconError:()=>O0,StaticFeeEstimator:()=>oa,Updater:()=>bf,beaconTxVsize:()=>$0,buildAggregationBeaconTx:()=>s6,deriveSingletonAddress:()=>Cv,detectSingletonScriptKind:()=>H0,extractOpReturnSignalHash:()=>ex,getAggregationCommunicationKey:()=>rB,isBtcr2UpdateContext:()=>ry,isMultikeyVerificationMethod:()=>YI,opReturnScript:()=>q0,resolveBtcr2SenderPk:()=>PL,resolveChangeAddress:()=>V0,selectSpendableUtxo:()=>Pv});l();l();l();l();var ws=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;function bs(t){return t instanceof Uint8Array||ArrayBuffer.isView(t)&&t.constructor.name==="Uint8Array"}function Au(t){if(!Number.isSafeInteger(t)||t<0)throw new Error("positive integer expected, got "+t)}function pn(t,...e){if(!bs(t))throw new Error("Uint8Array expected");if(e.length>0&&!e.includes(t.length))throw new Error("Uint8Array expected of length "+e+", got length="+t.length)}function Lf(t){if(typeof t!="function"||typeof t.create!="function")throw new Error("Hash should be wrapped by utils.createHasher");Au(t.outputLen),Au(t.blockLen)}function Mc(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 Kx(t,e){pn(t);let r=e.outputLen;if(t.length<r)throw new Error("digestInto() expects output buffer of length at least "+r)}function qn(...t){for(let e=0;e<t.length;e++)t[e].fill(0)}function Pf(t){return new DataView(t.buffer,t.byteOffset,t.byteLength)}function yn(t,e){return t<<32-e|t>>>e}function Tu(t,e){return t<<e|t>>>32-e>>>0}var $x=typeof Uint8Array.from([]).toHex=="function"&&typeof Uint8Array.fromHex=="function",s8=Array.from({length:256},(t,e)=>e.toString(16).padStart(2,"0"));function Pt(t){if(pn(t),$x)return t.toHex();let e="";for(let r=0;r<t.length;r++)e+=s8[t[r]];return e}var vi={_0:48,_9:57,A:65,F:70,a:97,f:102};function Mx(t){if(t>=vi._0&&t<=vi._9)return t-vi._0;if(t>=vi.A&&t<=vi.F)return t-(vi.A-10);if(t>=vi.a&&t<=vi.f)return t-(vi.a-10)}function _r(t){if(typeof t!="string")throw new Error("hex string expected, got "+typeof t);if($x)return Uint8Array.fromHex(t);let e=t.length,r=e/2;if(e%2)throw new Error("hex string expected, got unpadded hex of length "+e);let n=new Uint8Array(r);for(let i=0,o=0;i<r;i++,o+=2){let s=Mx(t.charCodeAt(o)),c=Mx(t.charCodeAt(o+1));if(s===void 0||c===void 0){let a=t[o]+t[o+1];throw new Error('hex string expected, got non-hex character "'+a+'" at index '+o)}n[i]=s*16+c}return n}function xs(t){if(typeof t!="string")throw new Error("string expected");return new Uint8Array(new TextEncoder().encode(t))}function _u(t){return typeof t=="string"&&(t=xs(t)),pn(t),t}function lt(...t){let e=0;for(let n=0;n<t.length;n++){let i=t[n];pn(i),e+=i.length}let r=new Uint8Array(e);for(let n=0,i=0;n<t.length;n++){let o=t[n];r.set(o,i),i+=o.length}return r}var Pc=class{};function Mf(t){let e=n=>t().update(_u(n)).digest(),r=t();return e.outputLen=r.outputLen,e.blockLen=r.blockLen,e.create=()=>t(),e}function Ir(t=32){if(ws&&typeof ws.getRandomValues=="function")return ws.getRandomValues(new Uint8Array(t));if(ws&&typeof ws.randomBytes=="function")return Uint8Array.from(ws.randomBytes(t));throw new Error("crypto.getRandomValues must be defined")}l();l();l();l();l();function c8(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),c=Number(r&o),a=n?4:0,u=n?0:4;t.setUint32(e+a,s,n),t.setUint32(e+u,c,n)}function by(t,e,r){return t&e^~t&r}function xy(t,e,r){return t&e^t&r^e&r}var Kc=class extends Pc{constructor(e,r,n,i){super(),this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.blockLen=e,this.outputLen=r,this.padOffset=n,this.isLE=i,this.buffer=new Uint8Array(e),this.view=Pf(this.buffer)}update(e){Mc(this),e=_u(e),pn(e);let{view:r,buffer:n,blockLen:i}=this,o=e.length;for(let s=0;s<o;){let c=Math.min(i-this.pos,o-s);if(c===i){let a=Pf(e);for(;i<=o-s;s+=i)this.process(a,s);continue}n.set(e.subarray(s,s+c),this.pos),this.pos+=c,s+=c,this.pos===i&&(this.process(r,0),this.pos=0)}return this.length+=e.length,this.roundClean(),this}digestInto(e){Mc(this),Kx(e,this),this.finished=!0;let{buffer:r,view:n,blockLen:i,isLE:o}=this,{pos:s}=this;r[s++]=128,qn(this.buffer.subarray(s)),this.padOffset>i-s&&(this.process(n,0),s=0);for(let f=s;f<i;f++)r[f]=0;c8(n,i-8,BigInt(this.length*8),o),this.process(n,0);let c=Pf(e),a=this.outputLen;if(a%4)throw new Error("_sha2: outputLen should be aligned to 32bit");let u=a/4,d=this.get();if(u>d.length)throw new Error("_sha2: outputLen bigger than state");for(let f=0;f<u;f++)c.setUint32(4*f,d[f],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:c}=this;return e.destroyed=s,e.finished=o,e.length=i,e.pos=c,i%r&&e.buffer.set(n),e}clone(){return this._cloneInto()}},Si=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]);var a8=Uint32Array.from([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]),go=new Uint32Array(64),Ey=class extends Kc{constructor(e=32){super(64,e,8,!1),this.A=Si[0]|0,this.B=Si[1]|0,this.C=Si[2]|0,this.D=Si[3]|0,this.E=Si[4]|0,this.F=Si[5]|0,this.G=Si[6]|0,this.H=Si[7]|0}get(){let{A:e,B:r,C:n,D:i,E:o,F:s,G:c,H:a}=this;return[e,r,n,i,o,s,c,a]}set(e,r,n,i,o,s,c,a){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=c|0,this.H=a|0}process(e,r){for(let f=0;f<16;f++,r+=4)go[f]=e.getUint32(r,!1);for(let f=16;f<64;f++){let h=go[f-15],p=go[f-2],g=yn(h,7)^yn(h,18)^h>>>3,y=yn(p,17)^yn(p,19)^p>>>10;go[f]=y+go[f-7]+g+go[f-16]|0}let{A:n,B:i,C:o,D:s,E:c,F:a,G:u,H:d}=this;for(let f=0;f<64;f++){let h=yn(c,6)^yn(c,11)^yn(c,25),p=d+h+by(c,a,u)+a8[f]+go[f]|0,y=(yn(n,2)^yn(n,13)^yn(n,22))+xy(n,i,o)|0;d=u,u=a,a=c,c=s+p|0,s=o,o=i,i=n,n=p+y|0}n=n+this.A|0,i=i+this.B|0,o=o+this.C|0,s=s+this.D|0,c=c+this.E|0,a=a+this.F|0,u=u+this.G|0,d=d+this.H|0,this.set(n,i,o,s,c,a,u,d)}roundClean(){qn(go)}destroy(){this.set(0,0,0,0,0,0,0,0),qn(this.buffer)}};var ke=Mf(()=>new Ey);l();l();l();var Kf=class extends Pc{constructor(e,r){super(),this.finished=!1,this.destroyed=!1,Lf(e);let n=_u(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),qn(o)}update(e){return Mc(this),this.iHash.update(e),this}digestInto(e){Mc(this),pn(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:c}=this;return e=e,e.finished=i,e.destroyed=o,e.blockLen=s,e.outputLen=c,e.oHash=r._cloneInto(e.oHash),e.iHash=n._cloneInto(e.iHash),e}clone(){return this._cloneInto()}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}},vy=(t,e,r)=>new Kf(t,e).update(r).digest();vy.create=(t,e)=>new Kf(t,e);l();var Ty=BigInt(0),Ay=BigInt(1);function Iu(t,e=""){if(typeof t!="boolean"){let r=e&&`"${e}"`;throw new Error(r+"expected boolean, got type="+typeof t)}return t}function mo(t,e,r=""){let n=bs(t),i=t?.length,o=e!==void 0;if(!n||o&&i!==e){let s=r&&`"${r}" `,c=o?` of length ${e}`:"",a=n?`length=${i}`:`type=${typeof t}`;throw new Error(s+"expected Uint8Array"+c+", got "+a)}return t}function Bu(t){let e=t.toString(16);return e.length&1?"0"+e:e}function Hx(t){if(typeof t!="string")throw new Error("hex string expected, got "+typeof t);return t===""?Ty:BigInt("0x"+t)}function Ai(t){return Hx(Pt(t))}function _y(t){return pn(t),Hx(Pt(Uint8Array.from(t).reverse()))}function $c(t,e){return _r(t.toString(16).padStart(e*2,"0"))}function Iy(t,e){return $c(t,e).reverse()}function st(t,e,r){let n;if(typeof e=="string")try{n=_r(e)}catch(o){throw new Error(t+" must be hex string or Uint8Array, cause: "+o)}else if(bs(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+" of length "+r+" expected, got "+i);return n}function wo(t,e){if(t.length!==e.length)return!1;let r=0;for(let n=0;n<t.length;n++)r|=t[n]^e[n];return r===0}var Sy=t=>typeof t=="bigint"&&Ty<=t;function Ru(t,e,r){return Sy(t)&&Sy(e)&&Sy(r)&&e<=t&&t<r}function Vx(t,e,r,n){if(!Ru(e,r,n))throw new Error("expected valid "+t+": "+r+" <= n < "+n+", got "+e)}function $f(t){let e;for(e=0;t>Ty;t>>=Ay,e+=1);return e}var bo=t=>(Ay<<BigInt(t))-Ay;function qx(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=p=>new Uint8Array(p),i=p=>Uint8Array.of(p),o=n(t),s=n(t),c=0,a=()=>{o.fill(1),s.fill(0),c=0},u=(...p)=>r(s,o,...p),d=(p=n(0))=>{s=u(i(0),p),o=u(),p.length!==0&&(s=u(i(1),p),o=u())},f=()=>{if(c++>=1e3)throw new Error("drbg: tried 1000 values");let p=0,g=[];for(;p<e;){o=u();let y=o.slice();g.push(y),p+=o.length}return lt(...g)};return(p,g)=>{a(),d(p);let y;for(;!(y=g(f()));)d();return a(),y}}function Uu(t,e,r={}){if(!t||typeof t!="object")throw new Error("expected valid options object");function n(i,o,s){let c=t[i];if(s&&c===void 0)return;let a=typeof c;if(a!==o||c===null)throw new Error(`param "${i}" is invalid: expected ${o}, got ${a}`)}Object.entries(e).forEach(([i,o])=>n(i,o,!1)),Object.entries(r).forEach(([i,o])=>n(i,o,!0))}function By(t){let e=new WeakMap;return(r,...n)=>{let i=e.get(r);if(i!==void 0)return i;let o=t(r,...n);return e.set(r,o),o}}l();l();var nr=BigInt(0),Ft=BigInt(1),Es=BigInt(2),Wx=BigInt(3),Gx=BigInt(4),zx=BigInt(5),u8=BigInt(7),Yx=BigInt(8),d8=BigInt(9),Jx=BigInt(16);function Br(t,e){let r=t%e;return r>=nr?r:e+r}function Rr(t,e,r){let n=t;for(;e-- >nr;)n*=n,n%=r;return n}function Fx(t,e){if(t===nr)throw new Error("invert: expected non-zero number");if(e<=nr)throw new Error("invert: expected positive modulus, got "+e);let r=Br(t,e),n=e,i=nr,o=Ft,s=Ft,c=nr;for(;r!==nr;){let u=n/r,d=n%r,f=i-s*u,h=o-c*u;n=r,r=d,i=s,o=c,s=f,c=h}if(n!==Ft)throw new Error("invert: does not exist");return Br(i,e)}function Ry(t,e,r){if(!t.eql(t.sqr(e),r))throw new Error("Cannot find square root")}function Xx(t,e){let r=(t.ORDER+Ft)/Gx,n=t.pow(e,r);return Ry(t,n,e),n}function f8(t,e){let r=(t.ORDER-zx)/Yx,n=t.mul(e,Es),i=t.pow(n,r),o=t.mul(e,i),s=t.mul(t.mul(o,Es),i),c=t.mul(o,t.sub(s,t.ONE));return Ry(t,c,e),c}function l8(t){let e=xo(t),r=Zx(t),n=r(e,e.neg(e.ONE)),i=r(e,n),o=r(e,e.neg(n)),s=(t+u8)/Jx;return(c,a)=>{let u=c.pow(a,s),d=c.mul(u,n),f=c.mul(u,i),h=c.mul(u,o),p=c.eql(c.sqr(d),a),g=c.eql(c.sqr(f),a);u=c.cmov(u,d,p),d=c.cmov(h,f,g);let y=c.eql(c.sqr(d),a),x=c.cmov(u,d,y);return Ry(c,x,a),x}}function Zx(t){if(t<Wx)throw new Error("sqrt is not defined for small field");let e=t-Ft,r=0;for(;e%Es===nr;)e/=Es,r++;let n=Es,i=xo(t);for(;jx(i,n)===1;)if(n++>1e3)throw new Error("Cannot find square root: probably non-prime P");if(r===1)return Xx;let o=i.pow(n,e),s=(e+Ft)/Es;return function(a,u){if(a.is0(u))return u;if(jx(a,u)!==1)throw new Error("Cannot find square root");let d=r,f=a.mul(a.ONE,o),h=a.pow(u,e),p=a.pow(u,s);for(;!a.eql(h,a.ONE);){if(a.is0(h))return a.ZERO;let g=1,y=a.sqr(h);for(;!a.eql(y,a.ONE);)if(g++,y=a.sqr(y),g===d)throw new Error("Cannot find square root");let x=Ft<<BigInt(d-g-1),S=a.pow(f,x);d=g,f=a.sqr(S),h=a.mul(h,f),p=a.mul(p,S)}return p}}function h8(t){return t%Gx===Wx?Xx:t%Yx===zx?f8:t%Jx===d8?l8(t):Zx(t)}var p8=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function Uy(t){let e={ORDER:"bigint",MASK:"bigint",BYTES:"number",BITS:"number"},r=p8.reduce((n,i)=>(n[i]="function",n),e);return Uu(t,r),t}function y8(t,e,r){if(r<nr)throw new Error("invalid exponent, negatives unsupported");if(r===nr)return t.ONE;if(r===Ft)return e;let n=t.ONE,i=e;for(;r>nr;)r&Ft&&(n=t.mul(n,i)),i=t.sqr(i),r>>=Ft;return n}function Hf(t,e,r=!1){let n=new Array(e.length).fill(r?t.ZERO:void 0),i=e.reduce((s,c,a)=>t.is0(c)?s:(n[a]=s,t.mul(s,c)),t.ONE),o=t.inv(i);return e.reduceRight((s,c,a)=>t.is0(c)?s:(n[a]=t.mul(s,n[a]),t.mul(s,c)),o),n}function jx(t,e){let r=(t.ORDER-Ft)/Es,n=t.pow(e,r),i=t.eql(n,t.ONE),o=t.eql(n,t.ZERO),s=t.eql(n,t.neg(t.ONE));if(!i&&!o&&!s)throw new Error("invalid Legendre symbol result");return i?1:o?0:-1}function Vf(t,e){e!==void 0&&Au(e);let r=e!==void 0?e:t.toString(2).length,n=Math.ceil(r/8);return{nBitLength:r,nByteLength:n}}function xo(t,e,r=!1,n={}){if(t<=nr)throw new Error("invalid field: expected ORDER > 0, got "+t);let i,o,s=!1,c;if(typeof e=="object"&&e!=null){if(n.sqrt||r)throw new Error("cannot specify opts in two arguments");let h=e;h.BITS&&(i=h.BITS),h.sqrt&&(o=h.sqrt),typeof h.isLE=="boolean"&&(r=h.isLE),typeof h.modFromBytes=="boolean"&&(s=h.modFromBytes),c=h.allowedLengths}else typeof e=="number"&&(i=e),n.sqrt&&(o=n.sqrt);let{nBitLength:a,nByteLength:u}=Vf(t,i);if(u>2048)throw new Error("invalid field: expected ORDER of <= 2048 bytes");let d,f=Object.freeze({ORDER:t,isLE:r,BITS:a,BYTES:u,MASK:bo(a),ZERO:nr,ONE:Ft,allowedLengths:c,create:h=>Br(h,t),isValid:h=>{if(typeof h!="bigint")throw new Error("invalid field element: expected bigint, got "+typeof h);return nr<=h&&h<t},is0:h=>h===nr,isValidNot0:h=>!f.is0(h)&&f.isValid(h),isOdd:h=>(h&Ft)===Ft,neg:h=>Br(-h,t),eql:(h,p)=>h===p,sqr:h=>Br(h*h,t),add:(h,p)=>Br(h+p,t),sub:(h,p)=>Br(h-p,t),mul:(h,p)=>Br(h*p,t),pow:(h,p)=>y8(f,h,p),div:(h,p)=>Br(h*Fx(p,t),t),sqrN:h=>h*h,addN:(h,p)=>h+p,subN:(h,p)=>h-p,mulN:(h,p)=>h*p,inv:h=>Fx(h,t),sqrt:o||(h=>(d||(d=h8(t)),d(f,h))),toBytes:h=>r?Iy(h,u):$c(h,u),fromBytes:(h,p=!0)=>{if(c){if(!c.includes(h.length)||h.length>u)throw new Error("Field.fromBytes: expected "+c+" bytes, got "+h.length);let y=new Uint8Array(u);y.set(h,r?0:y.length-h.length),h=y}if(h.length!==u)throw new Error("Field.fromBytes: expected "+u+" bytes, got "+h.length);let g=r?_y(h):Ai(h);if(s&&(g=Br(g,t)),!p&&!f.isValid(g))throw new Error("invalid field element: outside of range 0..ORDER");return g},invertBatch:h=>Hf(f,h),cmov:(h,p,g)=>g?p:h});return Object.freeze(f)}function Qx(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 Oy(t){let e=Qx(t);return e+Math.ceil(e/2)}function qf(t,e,r=!1){let n=t.length,i=Qx(e),o=Oy(e);if(n<16||n<o||n>1024)throw new Error("expected "+o+"-1024 bytes of input, got "+n);let s=r?_y(t):Ai(t),c=Br(s,e-Ft)+Ft;return r?Iy(c,i):$c(c,i)}var Hc=BigInt(0),vs=BigInt(1);function Ou(t,e){let r=e.negate();return t?r:e}function jf(t,e){let r=Hf(t.Fp,e.map(n=>n.Z));return e.map((n,i)=>t.fromAffine(n.toAffine(r[i])))}function nE(t,e){if(!Number.isSafeInteger(t)||t<=0||t>e)throw new Error("invalid window size, expected [1.."+e+"], got W="+t)}function Dy(t,e){nE(t,e);let r=Math.ceil(e/t)+1,n=2**(t-1),i=2**t,o=bo(t),s=BigInt(t);return{windows:r,windowSize:n,mask:o,maxNumber:i,shiftBy:s}}function eE(t,e,r){let{windowSize:n,mask:i,maxNumber:o,shiftBy:s}=r,c=Number(t&i),a=t>>s;c>n&&(c-=o,a+=vs);let u=e*n,d=u+Math.abs(c)-1,f=c===0,h=c<0,p=e%2!==0;return{nextN:a,offset:d,isZero:f,isNeg:h,isNegF:p,offsetF:u}}function g8(t,e){if(!Array.isArray(t))throw new Error("array expected");t.forEach((r,n)=>{if(!(r instanceof e))throw new Error("invalid point at index "+n)})}function m8(t,e){if(!Array.isArray(t))throw new Error("array of scalars expected");t.forEach((r,n)=>{if(!e.isValid(r))throw new Error("invalid scalar at index "+n)})}var ky=new WeakMap,iE=new WeakMap;function Ny(t){return iE.get(t)||1}function tE(t){if(t!==Hc)throw new Error("invalid wNAF")}var Ff=class{constructor(e,r){this.BASE=e.BASE,this.ZERO=e.ZERO,this.Fn=e.Fn,this.bits=r}_unsafeLadder(e,r,n=this.ZERO){let i=e;for(;r>Hc;)r&vs&&(n=n.add(i)),i=i.double(),r>>=vs;return n}precomputeWindow(e,r){let{windows:n,windowSize:i}=Dy(r,this.bits),o=[],s=e,c=s;for(let a=0;a<n;a++){c=s,o.push(c);for(let u=1;u<i;u++)c=c.add(s),o.push(c);s=c.double()}return o}wNAF(e,r,n){if(!this.Fn.isValid(n))throw new Error("invalid scalar");let i=this.ZERO,o=this.BASE,s=Dy(e,this.bits);for(let c=0;c<s.windows;c++){let{nextN:a,offset:u,isZero:d,isNeg:f,isNegF:h,offsetF:p}=eE(n,c,s);n=a,d?o=o.add(Ou(h,r[p])):i=i.add(Ou(f,r[u]))}return tE(n),{p:i,f:o}}wNAFUnsafe(e,r,n,i=this.ZERO){let o=Dy(e,this.bits);for(let s=0;s<o.windows&&n!==Hc;s++){let{nextN:c,offset:a,isZero:u,isNeg:d}=eE(n,s,o);if(n=c,!u){let f=r[a];i=i.add(d?f.negate():f)}}return tE(n),i}getPrecomputes(e,r,n){let i=ky.get(r);return i||(i=this.precomputeWindow(r,e),e!==1&&(typeof n=="function"&&(i=n(i)),ky.set(r,i))),i}cached(e,r,n){let i=Ny(e);return this.wNAF(i,this.getPrecomputes(i,e,n),r)}unsafe(e,r,n,i){let o=Ny(e);return o===1?this._unsafeLadder(e,r,i):this.wNAFUnsafe(o,this.getPrecomputes(o,e,n),r,i)}createCache(e,r){nE(r,this.bits),iE.set(e,r),ky.delete(e)}hasCache(e){return Ny(e)!==1}};function oE(t,e,r,n){let i=e,o=t.ZERO,s=t.ZERO;for(;r>Hc||n>Hc;)r&vs&&(o=o.add(i)),n&vs&&(s=s.add(i)),i=i.double(),r>>=vs,n>>=vs;return{p1:o,p2:s}}function sE(t,e,r,n){g8(r,t),m8(n,e);let i=r.length,o=n.length;if(i!==o)throw new Error("arrays of points and scalars must have equal length");let s=t.ZERO,c=$f(BigInt(i)),a=1;c>12?a=c-3:c>4?a=c-2:c>0&&(a=2);let u=bo(a),d=new Array(Number(u)+1).fill(s),f=Math.floor((e.BITS-1)/a)*a,h=s;for(let p=f;p>=0;p-=a){d.fill(s);for(let y=0;y<o;y++){let x=n[y],S=Number(x>>BigInt(p)&u);d[S]=d[S].add(r[y])}let g=s;for(let y=d.length-1,x=s;y>0;y--)x=x.add(d[y]),g=g.add(x);if(h=h.add(g),p!==0)for(let y=0;y<a;y++)h=h.double()}return h}function rE(t,e,r){if(e){if(e.ORDER!==t)throw new Error("Field.ORDER must match order: Fp == p, Fn == n");return Uy(e),e}else return xo(t,{isLE:r})}function cE(t,e,r={},n){if(n===void 0&&(n=t==="edwards"),!e||typeof e!="object")throw new Error(`expected valid ${t} CURVE object`);for(let a of["p","n","h"]){let u=e[a];if(!(typeof u=="bigint"&&u>Hc))throw new Error(`CURVE.${a} must be positive bigint`)}let i=rE(e.p,r.Fp,n),o=rE(e.n,r.Fn,n),c=["Gx","Gy","a",t==="weierstrass"?"b":"d"];for(let a of c)if(!i.isValid(e[a]))throw new Error(`CURVE.${a} must be valid field element of CURVE.Fp`);return e=Object.freeze(Object.assign({},e)),{CURVE:e,Fp:i,Fn:o}}var aE=(t,e)=>(t+(t>=0?e:-e)/uE)/e;function w8(t,e,r){let[[n,i],[o,s]]=e,c=aE(s*t,r),a=aE(-i*t,r),u=t-c*n-a*o,d=-c*i-a*s,f=u<_i,h=d<_i;f&&(u=-u),h&&(d=-d);let p=bo(Math.ceil($f(r)/2))+Vc;if(u<_i||u>=p||d<_i||d>=p)throw new Error("splitScalar (endomorphism): failed, k="+t);return{k1neg:f,k1:u,k2neg:h,k2:d}}function Ly(t){if(!["compact","recovered","der"].includes(t))throw new Error('Signature format must be "compact", "recovered", or "der"');return t}function Cy(t,e){let r={};for(let n of Object.keys(e))r[n]=t[n]===void 0?e[n]:t[n];return Iu(r.lowS,"lowS"),Iu(r.prehash,"prehash"),r.format!==void 0&&Ly(r.format),r}var Py=class extends Error{constructor(e=""){super(e)}},Ti={Err:Py,_tlv:{encode:(t,e)=>{let{Err:r}=Ti;if(t<0||t>256)throw new r("tlv.encode: wrong tag");if(e.length&1)throw new r("tlv.encode: unpadded data");let n=e.length/2,i=Bu(n);if(i.length/2&128)throw new r("tlv.encode: long form length too big");let o=n>127?Bu(i.length/2|128):"";return Bu(t)+o+i+e},decode(t,e){let{Err:r}=Ti,n=0;if(t<0||t>256)throw new r("tlv.encode: wrong tag");if(e.length<2||e[n++]!==t)throw new r("tlv.decode: wrong tlv");let i=e[n++],o=!!(i&128),s=0;if(!o)s=i;else{let a=i&127;if(!a)throw new r("tlv.decode(long): indefinite length not supported");if(a>4)throw new r("tlv.decode(long): byte length is too big");let u=e.subarray(n,n+a);if(u.length!==a)throw new r("tlv.decode: length bytes not complete");if(u[0]===0)throw new r("tlv.decode(long): zero leftmost byte");for(let d of u)s=s<<8|d;if(n+=a,s<128)throw new r("tlv.decode(long): not minimal encoding")}let c=e.subarray(n,n+s);if(c.length!==s)throw new r("tlv.decode: wrong value length");return{v:c,l:e.subarray(n+s)}}},_int:{encode(t){let{Err:e}=Ti;if(t<_i)throw new e("integer: negative integers are not allowed");let r=Bu(t);if(Number.parseInt(r[0],16)&8&&(r="00"+r),r.length&1)throw new e("unexpected DER parsing assertion: unpadded hex");return r},decode(t){let{Err:e}=Ti;if(t[0]&128)throw new e("invalid signature integer: negative");if(t[0]===0&&!(t[1]&128))throw new e("invalid signature integer: unnecessary leading zero");return Ai(t)}},toSig(t){let{Err:e,_int:r,_tlv:n}=Ti,i=st("signature",t),{v:o,l:s}=n.decode(48,i);if(s.length)throw new e("invalid signature: left bytes after parsing");let{v:c,l:a}=n.decode(2,o),{v:u,l:d}=n.decode(2,a);if(d.length)throw new e("invalid signature: left bytes after parsing");return{r:r.decode(c),s:r.decode(u)}},hexFromSig(t){let{_tlv:e,_int:r}=Ti,n=e.encode(2,r.encode(t.r)),i=e.encode(2,r.encode(t.s)),o=n+i;return e.encode(48,o)}},_i=BigInt(0),Vc=BigInt(1),uE=BigInt(2),Wf=BigInt(3),b8=BigInt(4);function Eo(t,e){let{BYTES:r}=t,n;if(typeof e=="bigint")n=e;else{let i=st("private key",e);try{n=t.fromBytes(i)}catch{throw new Error(`invalid private key: expected ui8a of size ${r}, got ${typeof e}`)}}if(!t.isValidNot0(n))throw new Error("invalid private key: out of range [1..N-1]");return n}function x8(t,e={}){let r=cE("weierstrass",t,e),{Fp:n,Fn:i}=r,o=r.CURVE,{h:s,n:c}=o;Uu(e,{},{allowInfinityPoint:"boolean",clearCofactor:"function",isTorsionFree:"function",fromBytes:"function",toBytes:"function",endo:"object",wrapPrivateKey:"boolean"});let{endo:a}=e;if(a&&(!n.is0(o.a)||typeof a.beta!="bigint"||!Array.isArray(a.basises)))throw new Error('invalid endo: expected "beta": bigint and "basises": array');let u=fE(n,i);function d(){if(!n.isOdd)throw new Error("compression is not supported: Field does not have .isOdd()")}function f(G,I,D){let{x:E,y:U}=I.toAffine(),L=n.toBytes(E);if(Iu(D,"isCompressed"),D){d();let N=!n.isOdd(U);return lt(dE(N),L)}else return lt(Uint8Array.of(4),L,n.toBytes(U))}function h(G){mo(G,void 0,"Point");let{publicKey:I,publicKeyUncompressed:D}=u,E=G.length,U=G[0],L=G.subarray(1);if(E===I&&(U===2||U===3)){let N=n.fromBytes(L);if(!n.isValid(N))throw new Error("bad point: is not on curve, wrong x");let R=y(N),C;try{C=n.sqrt(R)}catch(J){let z=J instanceof Error?": "+J.message:"";throw new Error("bad point: is not on curve, sqrt error"+z)}d();let P=n.isOdd(C);return(U&1)===1!==P&&(C=n.neg(C)),{x:N,y:C}}else if(E===D&&U===4){let N=n.BYTES,R=n.fromBytes(L.subarray(0,N)),C=n.fromBytes(L.subarray(N,N*2));if(!x(R,C))throw new Error("bad point: is not on curve");return{x:R,y:C}}else throw new Error(`bad point: got length ${E}, expected compressed=${I} or uncompressed=${D}`)}let p=e.toBytes||f,g=e.fromBytes||h;function y(G){let I=n.sqr(G),D=n.mul(I,G);return n.add(n.add(D,n.mul(G,o.a)),o.b)}function x(G,I){let D=n.sqr(I),E=y(G);return n.eql(D,E)}if(!x(o.Gx,o.Gy))throw new Error("bad curve params: generator point");let S=n.mul(n.pow(o.a,Wf),b8),_=n.mul(n.sqr(o.b),BigInt(27));if(n.is0(n.add(S,_)))throw new Error("bad curve params: a or b");function A(G,I,D=!1){if(!n.isValid(I)||D&&n.is0(I))throw new Error(`bad point coordinate ${G}`);return I}function O(G){if(!(G instanceof $))throw new Error("ProjectivePoint expected")}function T(G){if(!a||!a.basises)throw new Error("no endo");return w8(G,a.basises,i.ORDER)}let M=By((G,I)=>{let{X:D,Y:E,Z:U}=G;if(n.eql(U,n.ONE))return{x:D,y:E};let L=G.is0();I==null&&(I=L?n.ONE:n.inv(U));let N=n.mul(D,I),R=n.mul(E,I),C=n.mul(U,I);if(L)return{x:n.ZERO,y:n.ZERO};if(!n.eql(C,n.ONE))throw new Error("invZ was invalid");return{x:N,y:R}}),q=By(G=>{if(G.is0()){if(e.allowInfinityPoint&&!n.is0(G.Y))return;throw new Error("bad point: ZERO")}let{x:I,y:D}=G.toAffine();if(!n.isValid(I)||!n.isValid(D))throw new Error("bad point: x or y not field elements");if(!x(I,D))throw new Error("bad point: equation left != right");if(!G.isTorsionFree())throw new Error("bad point: not in prime-order subgroup");return!0});function j(G,I,D,E,U){return D=new $(n.mul(D.X,G),D.Y,D.Z),I=Ou(E,I),D=Ou(U,D),I.add(D)}class ${constructor(I,D,E){this.X=A("x",I),this.Y=A("y",D,!0),this.Z=A("z",E),Object.freeze(this)}static CURVE(){return o}static fromAffine(I){let{x:D,y:E}=I||{};if(!I||!n.isValid(D)||!n.isValid(E))throw new Error("invalid affine point");if(I instanceof $)throw new Error("projective point not allowed");return n.is0(D)&&n.is0(E)?$.ZERO:new $(D,E,n.ONE)}static fromBytes(I){let D=$.fromAffine(g(mo(I,void 0,"point")));return D.assertValidity(),D}static fromHex(I){return $.fromBytes(st("pointHex",I))}get x(){return this.toAffine().x}get y(){return this.toAffine().y}precompute(I=8,D=!0){return Q.createCache(this,I),D||this.multiply(Wf),this}assertValidity(){q(this)}hasEvenY(){let{y:I}=this.toAffine();if(!n.isOdd)throw new Error("Field doesn't support isOdd");return!n.isOdd(I)}equals(I){O(I);let{X:D,Y:E,Z:U}=this,{X:L,Y:N,Z:R}=I,C=n.eql(n.mul(D,R),n.mul(L,U)),P=n.eql(n.mul(E,R),n.mul(N,U));return C&&P}negate(){return new $(this.X,n.neg(this.Y),this.Z)}double(){let{a:I,b:D}=o,E=n.mul(D,Wf),{X:U,Y:L,Z:N}=this,R=n.ZERO,C=n.ZERO,P=n.ZERO,V=n.mul(U,U),J=n.mul(L,L),z=n.mul(N,N),W=n.mul(U,L);return W=n.add(W,W),P=n.mul(U,N),P=n.add(P,P),R=n.mul(I,P),C=n.mul(E,z),C=n.add(R,C),R=n.sub(J,C),C=n.add(J,C),C=n.mul(R,C),R=n.mul(W,R),P=n.mul(E,P),z=n.mul(I,z),W=n.sub(V,z),W=n.mul(I,W),W=n.add(W,P),P=n.add(V,V),V=n.add(P,V),V=n.add(V,z),V=n.mul(V,W),C=n.add(C,V),z=n.mul(L,N),z=n.add(z,z),V=n.mul(z,W),R=n.sub(R,V),P=n.mul(z,J),P=n.add(P,P),P=n.add(P,P),new $(R,C,P)}add(I){O(I);let{X:D,Y:E,Z:U}=this,{X:L,Y:N,Z:R}=I,C=n.ZERO,P=n.ZERO,V=n.ZERO,J=o.a,z=n.mul(o.b,Wf),W=n.mul(D,L),Y=n.mul(E,N),X=n.mul(U,R),ue=n.add(D,E),ee=n.add(L,N);ue=n.mul(ue,ee),ee=n.add(W,Y),ue=n.sub(ue,ee),ee=n.add(D,U);let ce=n.add(L,R);return ee=n.mul(ee,ce),ce=n.add(W,X),ee=n.sub(ee,ce),ce=n.add(E,U),C=n.add(N,R),ce=n.mul(ce,C),C=n.add(Y,X),ce=n.sub(ce,C),V=n.mul(J,ee),C=n.mul(z,X),V=n.add(C,V),C=n.sub(Y,V),V=n.add(Y,V),P=n.mul(C,V),Y=n.add(W,W),Y=n.add(Y,W),X=n.mul(J,X),ee=n.mul(z,ee),Y=n.add(Y,X),X=n.sub(W,X),X=n.mul(J,X),ee=n.add(ee,X),W=n.mul(Y,ee),P=n.add(P,W),W=n.mul(ce,ee),C=n.mul(ue,C),C=n.sub(C,W),W=n.mul(ue,Y),V=n.mul(ce,V),V=n.add(V,W),new $(C,P,V)}subtract(I){return this.add(I.negate())}is0(){return this.equals($.ZERO)}multiply(I){let{endo:D}=e;if(!i.isValidNot0(I))throw new Error("invalid scalar: out of range");let E,U,L=N=>Q.cached(this,N,R=>jf($,R));if(D){let{k1neg:N,k1:R,k2neg:C,k2:P}=T(I),{p:V,f:J}=L(R),{p:z,f:W}=L(P);U=J.add(W),E=j(D.beta,V,z,N,C)}else{let{p:N,f:R}=L(I);E=N,U=R}return jf($,[E,U])[0]}multiplyUnsafe(I){let{endo:D}=e,E=this;if(!i.isValid(I))throw new Error("invalid scalar: out of range");if(I===_i||E.is0())return $.ZERO;if(I===Vc)return E;if(Q.hasCache(this))return this.multiply(I);if(D){let{k1neg:U,k1:L,k2neg:N,k2:R}=T(I),{p1:C,p2:P}=oE($,E,L,R);return j(D.beta,C,P,U,N)}else return Q.unsafe(E,I)}multiplyAndAddUnsafe(I,D,E){let U=this.multiplyUnsafe(D).add(I.multiplyUnsafe(E));return U.is0()?void 0:U}toAffine(I){return M(this,I)}isTorsionFree(){let{isTorsionFree:I}=e;return s===Vc?!0:I?I($,this):Q.unsafe(this,c).is0()}clearCofactor(){let{clearCofactor:I}=e;return s===Vc?this:I?I($,this):this.multiplyUnsafe(s)}isSmallOrder(){return this.multiplyUnsafe(s).is0()}toBytes(I=!0){return Iu(I,"isCompressed"),this.assertValidity(),p($,this,I)}toHex(I=!0){return Pt(this.toBytes(I))}toString(){return`<Point ${this.is0()?"ZERO":this.toHex()}>`}get px(){return this.X}get py(){return this.X}get pz(){return this.Z}toRawBytes(I=!0){return this.toBytes(I)}_setWindowSize(I){this.precompute(I)}static normalizeZ(I){return jf($,I)}static msm(I,D){return sE($,i,I,D)}static fromPrivateKey(I){return $.BASE.multiply(Eo(i,I))}}$.BASE=new $(o.Gx,o.Gy,n.ONE),$.ZERO=new $(n.ZERO,n.ONE,n.ZERO),$.Fp=n,$.Fn=i;let Z=i.BITS,Q=new Ff($,e.endo?Math.ceil(Z/2):Z);return $.BASE.precompute(8),$}function dE(t){return Uint8Array.of(t?2:3)}function fE(t,e){return{secretKey:e.BYTES,publicKey:1+t.BYTES,publicKeyUncompressed:1+2*t.BYTES,publicKeyHasPrefix:!0,signature:2*e.BYTES}}function E8(t,e={}){let{Fn:r}=t,n=e.randomBytes||Ir,i=Object.assign(fE(t.Fp,r),{seed:Oy(r.ORDER)});function o(p){try{return!!Eo(r,p)}catch{return!1}}function s(p,g){let{publicKey:y,publicKeyUncompressed:x}=i;try{let S=p.length;return g===!0&&S!==y||g===!1&&S!==x?!1:!!t.fromBytes(p)}catch{return!1}}function c(p=n(i.seed)){return qf(mo(p,i.seed,"seed"),r.ORDER)}function a(p,g=!0){return t.BASE.multiply(Eo(r,p)).toBytes(g)}function u(p){let g=c(p);return{secretKey:g,publicKey:a(g)}}function d(p){if(typeof p=="bigint")return!1;if(p instanceof t)return!0;let{secretKey:g,publicKey:y,publicKeyUncompressed:x}=i;if(r.allowedLengths||g===y)return;let S=st("key",p).length;return S===y||S===x}function f(p,g,y=!0){if(d(p)===!0)throw new Error("first arg must be private key");if(d(g)===!1)throw new Error("second arg must be public key");let x=Eo(r,p);return t.fromHex(g).multiply(x).toBytes(y)}return Object.freeze({getPublicKey:a,getSharedSecret:f,keygen:u,Point:t,utils:{isValidSecretKey:o,isValidPublicKey:s,randomSecretKey:c,isValidPrivateKey:o,randomPrivateKey:c,normPrivateKeyToScalar:p=>Eo(r,p),precompute(p=8,g=t.BASE){return g.precompute(p,!1)}},lengths:i})}function v8(t,e,r={}){Lf(e),Uu(r,{},{hmac:"function",lowS:"boolean",randomBytes:"function",bits2int:"function",bits2int_modN:"function"});let n=r.randomBytes||Ir,i=r.hmac||((D,...E)=>vy(e,D,lt(...E))),{Fp:o,Fn:s}=t,{ORDER:c,BITS:a}=s,{keygen:u,getPublicKey:d,getSharedSecret:f,utils:h,lengths:p}=E8(t,r),g={prehash:!1,lowS:typeof r.lowS=="boolean"?r.lowS:!1,format:void 0,extraEntropy:!1},y="compact";function x(D){let E=c>>Vc;return D>E}function S(D,E){if(!s.isValidNot0(E))throw new Error(`invalid signature ${D}: out of range 1..Point.Fn.ORDER`);return E}function _(D,E){Ly(E);let U=p.signature,L=E==="compact"?U:E==="recovered"?U+1:void 0;return mo(D,L,`${E} signature`)}class A{constructor(E,U,L){this.r=S("r",E),this.s=S("s",U),L!=null&&(this.recovery=L),Object.freeze(this)}static fromBytes(E,U=y){_(E,U);let L;if(U==="der"){let{r:P,s:V}=Ti.toSig(mo(E));return new A(P,V)}U==="recovered"&&(L=E[0],U="compact",E=E.subarray(1));let N=s.BYTES,R=E.subarray(0,N),C=E.subarray(N,N*2);return new A(s.fromBytes(R),s.fromBytes(C),L)}static fromHex(E,U){return this.fromBytes(_r(E),U)}addRecoveryBit(E){return new A(this.r,this.s,E)}recoverPublicKey(E){let U=o.ORDER,{r:L,s:N,recovery:R}=this;if(R==null||![0,1,2,3].includes(R))throw new Error("recovery id invalid");if(c*uE<U&&R>1)throw new Error("recovery id is ambiguous for h>1 curve");let P=R===2||R===3?L+c:L;if(!o.isValid(P))throw new Error("recovery id 2 or 3 invalid");let V=o.toBytes(P),J=t.fromBytes(lt(dE((R&1)===0),V)),z=s.inv(P),W=T(st("msgHash",E)),Y=s.create(-W*z),X=s.create(N*z),ue=t.BASE.multiplyUnsafe(Y).add(J.multiplyUnsafe(X));if(ue.is0())throw new Error("point at infinify");return ue.assertValidity(),ue}hasHighS(){return x(this.s)}toBytes(E=y){if(Ly(E),E==="der")return _r(Ti.hexFromSig(this));let U=s.toBytes(this.r),L=s.toBytes(this.s);if(E==="recovered"){if(this.recovery==null)throw new Error("recovery bit must be present");return lt(Uint8Array.of(this.recovery),U,L)}return lt(U,L)}toHex(E){return Pt(this.toBytes(E))}assertValidity(){}static fromCompact(E){return A.fromBytes(st("sig",E),"compact")}static fromDER(E){return A.fromBytes(st("sig",E),"der")}normalizeS(){return this.hasHighS()?new A(this.r,s.neg(this.s),this.recovery):this}toDERRawBytes(){return this.toBytes("der")}toDERHex(){return Pt(this.toBytes("der"))}toCompactRawBytes(){return this.toBytes("compact")}toCompactHex(){return Pt(this.toBytes("compact"))}}let O=r.bits2int||function(E){if(E.length>8192)throw new Error("input is too large");let U=Ai(E),L=E.length*8-a;return L>0?U>>BigInt(L):U},T=r.bits2int_modN||function(E){return s.create(O(E))},M=bo(a);function q(D){return Vx("num < 2^"+a,D,_i,M),s.toBytes(D)}function j(D,E){return mo(D,void 0,"message"),E?mo(e(D),void 0,"prehashed message"):D}function $(D,E,U){if(["recovered","canonical"].some(Y=>Y in U))throw new Error("sign() legacy options not supported");let{lowS:L,prehash:N,extraEntropy:R}=Cy(U,g);D=j(D,N);let C=T(D),P=Eo(s,E),V=[q(P),q(C)];if(R!=null&&R!==!1){let Y=R===!0?n(p.secretKey):R;V.push(st("extraEntropy",Y))}let J=lt(...V),z=C;function W(Y){let X=O(Y);if(!s.isValidNot0(X))return;let ue=s.inv(X),ee=t.BASE.multiply(X).toAffine(),ce=s.create(ee.x);if(ce===_i)return;let Ue=s.create(ue*s.create(z+ce*P));if(Ue===_i)return;let Ke=(ee.x===ce?0:2)|Number(ee.y&Vc),Je=Ue;return L&&x(Ue)&&(Je=s.neg(Ue),Ke^=1),new A(ce,Je,Ke)}return{seed:J,k2sig:W}}function Z(D,E,U={}){D=st("message",D);let{seed:L,k2sig:N}=$(D,E,U);return qx(e.outputLen,s.BYTES,i)(L,N)}function Q(D){let E,U=typeof D=="string"||bs(D),L=!U&&D!==null&&typeof D=="object"&&typeof D.r=="bigint"&&typeof D.s=="bigint";if(!U&&!L)throw new Error("invalid signature, expected Uint8Array, hex string or Signature instance");if(L)E=new A(D.r,D.s);else if(U){try{E=A.fromBytes(st("sig",D),"der")}catch(N){if(!(N instanceof Ti.Err))throw N}if(!E)try{E=A.fromBytes(st("sig",D),"compact")}catch{return!1}}return E||!1}function G(D,E,U,L={}){let{lowS:N,prehash:R,format:C}=Cy(L,g);if(U=st("publicKey",U),E=j(st("message",E),R),"strict"in L)throw new Error("options.strict was renamed to lowS");let P=C===void 0?Q(D):A.fromBytes(st("sig",D),C);if(P===!1)return!1;try{let V=t.fromBytes(U);if(N&&P.hasHighS())return!1;let{r:J,s:z}=P,W=T(E),Y=s.inv(z),X=s.create(W*Y),ue=s.create(J*Y),ee=t.BASE.multiplyUnsafe(X).add(V.multiplyUnsafe(ue));return ee.is0()?!1:s.create(ee.x)===J}catch{return!1}}function I(D,E,U={}){let{prehash:L}=Cy(U,g);return E=j(E,L),A.fromBytes(D,"recovered").recoverPublicKey(E).toBytes()}return Object.freeze({keygen:u,getPublicKey:d,getSharedSecret:f,utils:h,lengths:p,Point:t,sign:Z,verify:G,recoverPublicKey:I,Signature:A,hash:e})}function S8(t){let e={a:t.a,b:t.b,p:t.Fp.ORDER,n:t.n,h:t.h,Gx:t.Gx,Gy:t.Gy},r=t.Fp,n=t.allowedPrivateKeyLengths?Array.from(new Set(t.allowedPrivateKeyLengths.map(s=>Math.ceil(s/2)))):void 0,i=xo(e.n,{BITS:t.nBitLength,allowedLengths:n,modFromBytes:t.wrapPrivateKey}),o={Fp:r,Fn:i,allowInfinityPoint:t.allowInfinityPoint,endo:t.endo,isTorsionFree:t.isTorsionFree,clearCofactor:t.clearCofactor,fromBytes:t.fromBytes,toBytes:t.toBytes};return{CURVE:e,curveOpts:o}}function A8(t){let{CURVE:e,curveOpts:r}=S8(t),n={hmac:t.hmac,randomBytes:t.randomBytes,lowS:t.lowS,bits2int:t.bits2int,bits2int_modN:t.bits2int_modN};return{CURVE:e,curveOpts:r,hash:t.hash,ecdsaOpts:n}}function T8(t,e){let r=e.Point;return Object.assign({},e,{ProjectivePoint:r,CURVE:Object.assign({},t,Vf(r.Fn.ORDER,r.Fn.BITS))})}function lE(t){let{CURVE:e,curveOpts:r,hash:n,ecdsaOpts:i}=A8(t),o=x8(e,r),s=v8(o,n,i);return T8(t,s)}function hE(t,e){let r=n=>lE({...t,hash:n});return{...r(e),create:r}}var qc={p:BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),n:BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),h:BigInt(1),a:BigInt(0),b:BigInt(7),Gx:BigInt("0x79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798"),Gy:BigInt("0x483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8")},_8={beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),basises:[[BigInt("0x3086d221a7d46bcde86c90e49284eb15"),-BigInt("0xe4437ed6010e88286f547fa90abfe4c3")],[BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),BigInt("0x3086d221a7d46bcde86c90e49284eb15")]]},I8=BigInt(0),pE=BigInt(1),My=BigInt(2);function B8(t){let e=qc.p,r=BigInt(3),n=BigInt(6),i=BigInt(11),o=BigInt(22),s=BigInt(23),c=BigInt(44),a=BigInt(88),u=t*t*t%e,d=u*u*t%e,f=Rr(d,r,e)*d%e,h=Rr(f,r,e)*d%e,p=Rr(h,My,e)*u%e,g=Rr(p,i,e)*p%e,y=Rr(g,o,e)*g%e,x=Rr(y,c,e)*y%e,S=Rr(x,a,e)*x%e,_=Rr(S,c,e)*y%e,A=Rr(_,r,e)*d%e,O=Rr(A,s,e)*g%e,T=Rr(O,n,e)*u%e,M=Rr(T,My,e);if(!Gf.eql(Gf.sqr(M),t))throw new Error("Cannot find square root");return M}var Gf=xo(qc.p,{sqrt:B8}),vo=hE({...qc,Fp:Gf,lowS:!0,endo:_8},ke),yE={};function zf(t,...e){let r=yE[t];if(r===void 0){let n=ke(xs(t));r=lt(n,n),yE[t]=r}return ke(lt(r,...e))}var $y=t=>t.toBytes(!0).slice(1),Fc=vo.Point,Hy=t=>t%My===I8;function Ky(t){let{Fn:e,BASE:r}=Fc,n=Eo(e,t),i=r.multiply(n);return{scalar:Hy(i.y)?n:e.neg(n),bytes:$y(i)}}function mE(t){let e=Gf;if(!e.isValidNot0(t))throw new Error("invalid x: Fail if x \u2265 p");let r=e.create(t*t),n=e.create(r*t+BigInt(7)),i=e.sqrt(n);Hy(i)||(i=e.neg(i));let o=Fc.fromAffine({x:t,y:i});return o.assertValidity(),o}var Du=Ai;function wE(...t){return Fc.Fn.create(Du(zf("BIP0340/challenge",...t)))}function gE(t){return Ky(t).bytes}function R8(t,e,r=Ir(32)){let{Fn:n}=Fc,i=st("message",t),{bytes:o,scalar:s}=Ky(e),c=st("auxRand",r,32),a=n.toBytes(s^Du(zf("BIP0340/aux",c))),u=zf("BIP0340/nonce",a,o,i),{bytes:d,scalar:f}=Ky(u),h=wE(d,o,i),p=new Uint8Array(64);if(p.set(d,0),p.set(n.toBytes(n.create(f+h*s)),32),!bE(p,i,o))throw new Error("sign: Invalid signature produced");return p}function bE(t,e,r){let{Fn:n,BASE:i}=Fc,o=st("signature",t,64),s=st("message",e),c=st("publicKey",r,32);try{let a=mE(Du(c)),u=Du(o.subarray(0,32));if(!Ru(u,pE,qc.p))return!1;let d=Du(o.subarray(32,64));if(!Ru(d,pE,qc.n))return!1;let f=wE(n.toBytes(u),$y(a),s),h=i.multiplyUnsafe(d).add(a.multiplyUnsafe(n.neg(f))),{x:p,y:g}=h.toAffine();return!(h.is0()||!Hy(g)||p!==u)}catch{return!1}}var Ur=(()=>{let r=(i=Ir(48))=>qf(i,qc.n);vo.utils.randomSecretKey;function n(i){let o=r(i);return{secretKey:o,publicKey:gE(o)}}return{keygen:n,getPublicKey:gE,sign:R8,verify:bE,Point:Fc,utils:{randomSecretKey:r,randomPrivateKey:r,taggedHash:zf,lift_x:mE,pointToBytes:$y,numberToBytesBE:$c,bytesToNumberBE:Ai,mod:Br},lengths:{secretKey:32,publicKey:32,publicKeyHasPrefix:!1,signature:32*2,seed:48}}})();l();var U8=Uint8Array.from([7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8]),EE=Uint8Array.from(new Array(16).fill(0).map((t,e)=>e)),O8=EE.map(t=>(9*t+5)%16),vE=(()=>{let r=[[EE],[O8]];for(let n=0;n<4;n++)for(let i of r)i.push(i[n].map(o=>U8[o]));return r})(),SE=vE[0],AE=vE[1],TE=[[11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8],[12,13,11,15,6,9,9,7,12,15,11,13,7,8,7,7],[13,15,14,11,7,7,6,8,13,14,13,12,5,5,6,9],[14,11,12,14,8,6,5,5,15,12,15,14,9,9,8,6],[15,12,13,13,9,5,8,6,14,11,12,11,8,6,5,5]].map(t=>Uint8Array.from(t)),D8=SE.map((t,e)=>t.map(r=>TE[e][r])),k8=AE.map((t,e)=>t.map(r=>TE[e][r])),N8=Uint32Array.from([0,1518500249,1859775393,2400959708,2840853838]),C8=Uint32Array.from([1352829926,1548603684,1836072691,2053994217,0]);function xE(t,e,r,n){return t===0?e^r^n:t===1?e&r|~e&n:t===2?(e|~r)^n:t===3?e&n|r&~n:e^(r|~n)}var Yf=new Uint32Array(16),Vy=class extends Kc{constructor(){super(64,20,8,!0),this.h0=1732584193,this.h1=-271733879,this.h2=-1732584194,this.h3=271733878,this.h4=-1009589776}get(){let{h0:e,h1:r,h2:n,h3:i,h4:o}=this;return[e,r,n,i,o]}set(e,r,n,i,o){this.h0=e|0,this.h1=r|0,this.h2=n|0,this.h3=i|0,this.h4=o|0}process(e,r){for(let p=0;p<16;p++,r+=4)Yf[p]=e.getUint32(r,!0);let n=this.h0|0,i=n,o=this.h1|0,s=o,c=this.h2|0,a=c,u=this.h3|0,d=u,f=this.h4|0,h=f;for(let p=0;p<5;p++){let g=4-p,y=N8[p],x=C8[p],S=SE[p],_=AE[p],A=D8[p],O=k8[p];for(let T=0;T<16;T++){let M=Tu(n+xE(p,o,c,u)+Yf[S[T]]+y,A[T])+f|0;n=f,f=u,u=Tu(c,10)|0,c=o,o=M}for(let T=0;T<16;T++){let M=Tu(i+xE(g,s,a,d)+Yf[_[T]]+x,O[T])+h|0;i=h,h=d,d=Tu(a,10)|0,a=s,s=M}}this.set(this.h1+c+d|0,this.h2+u+h|0,this.h3+f+i|0,this.h4+n+s|0,this.h0+o+a|0)}roundClean(){qn(Yf)}destroy(){this.destroyed=!0,qn(this.buffer),this.set(0,0,0,0,0)}},_E=Mf(()=>new Vy);l();l();function jc(t){return t instanceof Uint8Array||ArrayBuffer.isView(t)&&t.constructor.name==="Uint8Array"}function L8(t,...e){if(!jc(t))throw new Error("Uint8Array expected");if(e.length>0&&!e.includes(t.length))throw new Error("Uint8Array expected of length "+e+", got length="+t.length)}function OE(t,e){return Array.isArray(e)?e.length===0?!0:t?e.every(r=>typeof r=="string"):e.every(r=>Number.isSafeInteger(r)):!1}function jy(t){if(typeof t!="function")throw new Error("function expected");return!0}function Wc(t,e){if(typeof e!="string")throw new Error(`${t}: string expected`);return!0}function Nu(t){if(!Number.isSafeInteger(t))throw new Error(`invalid integer: ${t}`)}function Xf(t){if(!Array.isArray(t))throw new Error("array expected")}function DE(t,e){if(!OE(!0,e))throw new Error(`${t}: array of strings expected`)}function Wy(t,e){if(!OE(!1,e))throw new Error(`${t}: array of numbers expected`)}function Cu(...t){let e=o=>o,r=(o,s)=>c=>o(s(c)),n=t.map(o=>o.encode).reduceRight(r,e),i=t.map(o=>o.decode).reduce(r,e);return{encode:n,decode:i}}function Qf(t){let e=typeof t=="string"?t.split(""):t,r=e.length;DE("alphabet",e);let n=new Map(e.map((i,o)=>[i,o]));return{encode:i=>(Xf(i),i.map(o=>{if(!Number.isSafeInteger(o)||o<0||o>=r)throw new Error(`alphabet.encode: digit index outside alphabet "${o}". Allowed: ${t}`);return e[o]})),decode:i=>(Xf(i),i.map(o=>{Wc("alphabet.decode",o);let s=n.get(o);if(s===void 0)throw new Error(`Unknown letter: "${o}". Allowed: ${t}`);return s}))}}function el(t=""){return Wc("join",t),{encode:e=>(DE("join.decode",e),e.join(t)),decode:e=>(Wc("join.decode",e),e.split(t))}}function P8(t){return jy(t),{encode:e=>e,decode:e=>t(e)}}function IE(t,e,r){if(e<2)throw new Error(`convertRadix: invalid from=${e}, base cannot be less than 2`);if(r<2)throw new Error(`convertRadix: invalid to=${r}, base cannot be less than 2`);if(Xf(t),!t.length)return[];let n=0,i=[],o=Array.from(t,c=>{if(Nu(c),c<0||c>=e)throw new Error(`invalid integer: ${c}`);return c}),s=o.length;for(;;){let c=0,a=!0;for(let u=n;u<s;u++){let d=o[u],f=e*c,h=f+d;if(!Number.isSafeInteger(h)||f/e!==c||h-d!==f)throw new Error("convertRadix: carry overflow");let p=h/r;c=h%r;let g=Math.floor(p);if(o[u]=g,!Number.isSafeInteger(g)||g*r+c!==h)throw new Error("convertRadix: carry overflow");if(a)g?a=!1:n=u;else continue}if(i.push(c),a)break}for(let c=0;c<t.length-1&&t[c]===0;c++)i.push(0);return i.reverse()}var kE=(t,e)=>e===0?t:kE(e,t%e),Zf=(t,e)=>t+(e-kE(t,e)),Jf=(()=>{let t=[];for(let e=0;e<40;e++)t.push(2**e);return t})();function qy(t,e,r,n){if(Xf(t),e<=0||e>32)throw new Error(`convertRadix2: wrong from=${e}`);if(r<=0||r>32)throw new Error(`convertRadix2: wrong to=${r}`);if(Zf(e,r)>32)throw new Error(`convertRadix2: carry overflow from=${e} to=${r} carryBits=${Zf(e,r)}`);let i=0,o=0,s=Jf[e],c=Jf[r]-1,a=[];for(let u of t){if(Nu(u),u>=s)throw new Error(`convertRadix2: invalid data word=${u} from=${e}`);if(i=i<<e|u,o+e>32)throw new Error(`convertRadix2: carry overflow pos=${o} from=${e}`);for(o+=e;o>=r;o-=r)a.push((i>>o-r&c)>>>0);let d=Jf[o];if(d===void 0)throw new Error("invalid carry");i&=d-1}if(i=i<<r-o&c,!n&&o>=e)throw new Error("Excess padding");if(!n&&i>0)throw new Error(`Non-zero padding: ${i}`);return n&&o>0&&a.push(i>>>0),a}function M8(t){Nu(t);let e=2**8;return{encode:r=>{if(!jc(r))throw new Error("radix.encode input should be Uint8Array");return IE(Array.from(r),e,t)},decode:r=>(Wy("radix.decode",r),Uint8Array.from(IE(r,t,e)))}}function Gy(t,e=!1){if(Nu(t),t<=0||t>32)throw new Error("radix2: bits should be in (0..32]");if(Zf(8,t)>32||Zf(t,8)>32)throw new Error("radix2: carry overflow");return{encode:r=>{if(!jc(r))throw new Error("radix2.encode input should be Uint8Array");return qy(Array.from(r),8,t,!e)},decode:r=>(Wy("radix2.decode",r),Uint8Array.from(qy(r,t,8,e)))}}function BE(t){return jy(t),function(...e){try{return t.apply(null,e)}catch{}}}function K8(t,e){return Nu(t),jy(e),{encode(r){if(!jc(r))throw new Error("checksum.encode: input should be Uint8Array");let n=e(r).slice(0,t),i=new Uint8Array(r.length+t);return i.set(r),i.set(n,r.length),i},decode(r){if(!jc(r))throw new Error("checksum.decode: input should be Uint8Array");let n=r.slice(0,-t),i=r.slice(-t),o=e(n).slice(0,t);for(let s=0;s<t;s++)if(o[s]!==i[s])throw new Error("Invalid checksum");return n}}}var Gc=Cu(Gy(6),Qf("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_"),el("")),$8=t=>Cu(M8(58),Qf(t),el("")),tl=$8("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz");var NE=t=>Cu(K8(4,e=>t(t(e))),tl);var Fy=Cu(Qf("qpzry9x8gf2tvdw0s3jn54khce6mua7l"),el("")),RE=[996825010,642813549,513874426,1027748829,705979059];function ku(t){let e=t>>25,r=(t&33554431)<<5;for(let n=0;n<RE.length;n++)(e>>n&1)===1&&(r^=RE[n]);return r}function UE(t,e,r=1){let n=t.length,i=1;for(let o=0;o<n;o++){let s=t.charCodeAt(o);if(s<33||s>126)throw new Error(`Invalid prefix (${t})`);i=ku(i)^s>>5}i=ku(i);for(let o=0;o<n;o++)i=ku(i)^t.charCodeAt(o)&31;for(let o of e)i=ku(i)^o;for(let o=0;o<6;o++)i=ku(i);return i^=r,Fy.encode(qy([i%Jf[30]],30,5,!1))}function CE(t){let e=t==="bech32"?1:734539939,r=Gy(5),n=r.decode,i=r.encode,o=BE(n);function s(f,h,p=90){Wc("bech32.encode prefix",f),jc(h)&&(h=Array.from(h)),Wy("bech32.encode",h);let g=f.length;if(g===0)throw new TypeError(`Invalid prefix length ${g}`);let y=g+7+h.length;if(p!==!1&&y>p)throw new TypeError(`Length ${y} exceeds limit ${p}`);let x=f.toLowerCase(),S=UE(x,h,e);return`${x}1${Fy.encode(h)}${S}`}function c(f,h=90){Wc("bech32.decode input",f);let p=f.length;if(p<8||h!==!1&&p>h)throw new TypeError(`invalid string length: ${p} (${f}). Expected (8..${h})`);let g=f.toLowerCase();if(f!==g&&f!==f.toUpperCase())throw new Error("String must be lowercase or uppercase");let y=g.lastIndexOf("1");if(y===0||y===-1)throw new Error('Letter "1" must be present between prefix and data only');let x=g.slice(0,y),S=g.slice(y+1);if(S.length<6)throw new Error("Data must be at least 6 characters long");let _=Fy.decode(S).slice(0,-6),A=UE(x,_,e);if(!S.endsWith(A))throw new Error(`Invalid checksum in ${f}: expected "${A}"`);return{prefix:x,words:_}}let a=BE(c);function u(f){let{prefix:h,words:p}=c(f,!1);return{prefix:h,words:p,bytes:n(p)}}function d(f,h){return s(f,i(h))}return{encode:s,decode:c,encodeFromBytes:d,decodeToBytes:u,decodeUnsafe:a,fromWords:n,fromWordsUnsafe:o,toWords:i}}var rl=CE("bech32"),Ss=CE("bech32m"),LE={encode:t=>new TextDecoder().decode(t),decode:t=>new TextEncoder().encode(t)},H8=typeof Uint8Array.from([]).toHex=="function"&&typeof Uint8Array.fromHex=="function",V8={encode(t){return L8(t),t.toHex()},decode(t){return Wc("hex",t),Uint8Array.fromHex(t)}},xe=H8?V8:Cu(Gy(4),Qf("0123456789abcdef"),el(""),P8(t=>{if(typeof t!="string"||t.length%2!==0)throw new TypeError(`hex.decode: expected string, got ${typeof t} with length ${t.length}`);return t.toLowerCase()}));var Ve=new Uint8Array,Xy=new Uint8Array([0]);function zc(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 Jr(t){return t instanceof Uint8Array||ArrayBuffer.isView(t)&&t.constructor.name==="Uint8Array"}function q8(...t){let e=0;for(let n=0;n<t.length;n++){let i=t[n];if(!Jr(i))throw new Error("Uint8Array expected");e+=i.length}let r=new Uint8Array(e);for(let n=0,i=0;n<t.length;n++){let o=t[n];r.set(o,i),i+=o.length}return r}var Zy=t=>new DataView(t.buffer,t.byteOffset,t.byteLength);function Yc(t){return Object.prototype.toString.call(t)==="[object Object]"}function Fn(t){return Number.isSafeInteger(t)}var nl={equalBytes:zc,isBytes:Jr,isCoder:Or,checkBounds:ME,concatBytes:q8,createView:Zy,isPlainObject:Yc},PE=t=>{if(t!==null&&typeof t!="string"&&!Or(t)&&!Jr(t)&&!Fn(t))throw new Error(`lengthCoder: expected null | number | Uint8Array | CoderType, got ${t} (${typeof t})`);return{encodeStream(e,r){if(t===null)return;if(Or(t))return t.encodeStream(e,r);let n;if(typeof t=="number"?n=t:typeof t=="string"&&(n=Ii.resolve(e.stack,t)),typeof n=="bigint"&&(n=Number(n)),n===void 0||n!==r)throw e.err(`Wrong length: ${n} len=${t} exp=${r} (${typeof r})`)},decodeStream(e){let r;if(Or(t)?r=Number(t.decodeStream(e)):typeof t=="number"?r=t:typeof t=="string"&&(r=Ii.resolve(e.stack,t)),typeof r=="bigint"&&(r=Number(r)),typeof r!="number")throw e.err(`Wrong length: ${r}`);return r}}},Dt={BITS:32,FULL_MASK:-1>>>0,len:t=>Math.ceil(t/32),create:t=>new Uint32Array(Dt.len(t)),clean:t=>t.fill(0),debug:t=>Array.from(t).map(e=>(e>>>0).toString(2).padStart(32,"0")),checkLen:(t,e)=>{if(Dt.len(e)!==t.length)throw new Error(`wrong length=${t.length}. Expected: ${Dt.len(e)}`)},chunkLen:(t,e,r)=>{if(e<0)throw new Error(`wrong pos=${e}`);if(e+r>t)throw new Error(`wrong range=${e}/${r} of ${t}`)},set:(t,e,r,n=!0)=>!n&&t[e]&r?!1:(t[e]|=r,!0),pos:(t,e)=>({chunk:Math.floor((t+e)/32),mask:1<<32-(t+e)%32-1}),indices:(t,e,r=!1)=>{Dt.checkLen(t,e);let{FULL_MASK:n,BITS:i}=Dt,o=i-e%i,s=o?n>>>o<<o:n,c=[];for(let a=0;a<t.length;a++){let u=t[a];if(r&&(u=~u),a===t.length-1&&(u&=s),u!==0)for(let d=0;d<i;d++){let f=1<<i-d-1;u&f&&c.push(a*i+d)}}return c},range:t=>{let e=[],r;for(let n of t)r===void 0||n!==r.pos+r.length?e.push(r={pos:n,length:1}):r.length+=1;return e},rangeDebug:(t,e,r=!1)=>`[${Dt.range(Dt.indices(t,e,r)).map(n=>`(${n.pos}/${n.length})`).join(", ")}]`,setRange:(t,e,r,n,i=!0)=>{Dt.chunkLen(e,r,n);let{FULL_MASK:o,BITS:s}=Dt,c=r%s?Math.floor(r/s):void 0,a=r+n,u=a%s?Math.floor(a/s):void 0;if(c!==void 0&&c===u)return Dt.set(t,c,o>>>s-n<<s-n-r,i);if(c!==void 0&&!Dt.set(t,c,o>>>r%s,i))return!1;let d=c!==void 0?c+1:r/s,f=u!==void 0?u:a/s;for(let h=d;h<f;h++)if(!Dt.set(t,h,o,i))return!1;return!(u!==void 0&&c!==u&&!Dt.set(t,u,o<<s-a%s,i))}},Ii={pushObj:(t,e,r)=>{let n={obj:e};t.push(n),r((i,o)=>{n.field=i,o(),n.field=void 0}),t.pop()},path:t=>{let e=[];for(let r of t)r.field!==void 0&&e.push(r.field);return e.join("/")},err:(t,e,r)=>{let n=new Error(`${t}(${Ii.path(e)}): ${typeof r=="string"?r:r.message}`);return r instanceof Error&&r.stack&&(n.stack=r.stack),n},resolve:(t,e)=>{let r=e.split("/"),n=t.map(s=>s.obj),i=0;for(;i<r.length&&r[i]==="..";i++)n.pop();let o=n.pop();for(;i<r.length;i++){if(!o||o[r[i]]===void 0)return;o=o[r[i]]}return o}},zy=class t{constructor(e,r={},n=[],i=void 0,o=0){this.pos=0,this.bitBuf=0,this.bitPos=0,this.data=e,this.opts=r,this.stack=n,this.parent=i,this.parentOffset=o,this.view=Zy(e)}_enablePointers(){if(this.parent)return this.parent._enablePointers();this.bs||(this.bs=Dt.create(this.data.length),Dt.setRange(this.bs,this.data.length,0,this.pos,this.opts.allowMultipleReads))}markBytesBS(e,r){return this.parent?this.parent.markBytesBS(this.parentOffset+e,r):!r||!this.bs?!0:Dt.setRange(this.bs,this.data.length,e,r,!1)}markBytes(e){let r=this.pos;this.pos+=e;let n=this.markBytesBS(r,e);if(!this.opts.allowMultipleReads&&!n)throw this.err(`multiple read pos=${this.pos} len=${e}`);return n}pushObj(e,r){return Ii.pushObj(this.stack,e,r)}readView(e,r){if(!Number.isFinite(e))throw this.err(`readView: wrong length=${e}`);if(this.pos+e>this.data.length)throw this.err("readView: Unexpected end of buffer");let n=r(this.view,this.pos);return this.markBytes(e),n}absBytes(e){if(e>this.data.length)throw new Error("Unexpected end of buffer");return this.data.subarray(e)}finish(){if(!this.opts.allowUnreadBytes){if(this.bitPos)throw this.err(`${this.bitPos} bits left after unpack: ${xe.encode(this.data.slice(this.pos))}`);if(this.bs&&!this.parent){let e=Dt.indices(this.bs,this.data.length,!0);if(e.length){let r=Dt.range(e).map(({pos:n,length:i})=>`(${n}/${i})[${xe.encode(this.data.subarray(n,n+i))}]`).join(", ");throw this.err(`unread byte ranges: ${r} (total=${this.data.length})`)}else return}if(!this.isEnd())throw this.err(`${this.leftBytes} bytes ${this.bitPos} bits left after unpack: ${xe.encode(this.data.slice(this.pos))}`)}}err(e){return Ii.err("Reader",this.stack,e)}offsetReader(e){if(e>this.data.length)throw this.err("offsetReader: Unexpected end of buffer");return new t(this.absBytes(e),this.opts,this.stack,this,e)}bytes(e,r=!1){if(this.bitPos)throw this.err("readBytes: bitPos not empty");if(!Number.isFinite(e))throw this.err(`readBytes: wrong length=${e}`);if(this.pos+e>this.data.length)throw this.err("readBytes: Unexpected end of buffer");let n=this.data.subarray(this.pos,this.pos+e);return r||this.markBytes(e),n}byte(e=!1){if(this.bitPos)throw this.err("readByte: bitPos not empty");if(this.pos+1>this.data.length)throw this.err("readBytes: Unexpected end of buffer");let r=this.data[this.pos];return e||this.markBytes(1),r}get leftBytes(){return this.data.length-this.pos}get totalBytes(){return this.data.length}isEnd(){return this.pos>=this.data.length&&!this.bitPos}bits(e){if(e>32)throw this.err("BitReader: cannot read more than 32 bits in single call");let r=0;for(;e;){this.bitPos||(this.bitBuf=this.byte(),this.bitPos=8);let n=Math.min(e,this.bitPos);this.bitPos-=n,r=r<<n|this.bitBuf>>this.bitPos&2**n-1,this.bitBuf&=2**this.bitPos-1,e-=n}return r>>>0}find(e,r=this.pos){if(!Jr(e))throw this.err(`find: needle is not bytes! ${e}`);if(this.bitPos)throw this.err("findByte: bitPos not empty");if(!e.length)throw this.err("find: needle is empty");for(let n=r;(n=this.data.indexOf(e[0],n))!==-1;n++){if(n===-1||this.data.length-n<e.length)return;if(zc(e,this.data.subarray(n,n+e.length)))return n}}},Yy=class{constructor(e=[]){this.pos=0,this.buffers=[],this.ptrs=[],this.bitBuf=0,this.bitPos=0,this.viewBuf=new Uint8Array(8),this.finished=!1,this.stack=e,this.view=Zy(this.viewBuf)}pushObj(e,r){return Ii.pushObj(this.stack,e,r)}writeView(e,r){if(this.finished)throw this.err("buffer: finished");if(!Fn(e)||e>8)throw new Error(`wrong writeView length=${e}`);r(this.view),this.bytes(this.viewBuf.slice(0,e)),this.viewBuf.fill(0)}err(e){if(this.finished)throw this.err("buffer: finished");return Ii.err("Reader",this.stack,e)}bytes(e){if(this.finished)throw this.err("buffer: finished");if(this.bitPos)throw this.err("writeBytes: ends with non-empty bit buffer");this.buffers.push(e),this.pos+=e.length}byte(e){if(this.finished)throw this.err("buffer: finished");if(this.bitPos)throw this.err("writeByte: ends with non-empty bit buffer");this.buffers.push(new Uint8Array([e])),this.pos++}finish(e=!0){if(this.finished)throw this.err("buffer: finished");if(this.bitPos)throw this.err("buffer: ends with non-empty bit buffer");let r=this.buffers.concat(this.ptrs.map(o=>o.buffer)),n=r.map(o=>o.length).reduce((o,s)=>o+s,0),i=new Uint8Array(n);for(let o=0,s=0;o<r.length;o++){let c=r[o];i.set(c,s),s+=c.length}for(let o=this.pos,s=0;s<this.ptrs.length;s++){let c=this.ptrs[s];i.set(c.ptr.encode(o),c.pos),o+=c.buffer.length}if(e){this.buffers=[];for(let o of this.ptrs)o.buffer.fill(0);this.ptrs=[],this.finished=!0,this.bitBuf=0}return i}bits(e,r){if(r>32)throw this.err("writeBits: cannot write more than 32 bits in single call");if(e>=2**r)throw this.err(`writeBits: value (${e}) >= 2**bits (${r})`);for(;r;){let n=Math.min(r,8-this.bitPos);this.bitBuf=this.bitBuf<<n|e>>r-n,this.bitPos+=n,r-=n,e&=2**r-1,this.bitPos===8&&(this.bitPos=0,this.buffers.push(new Uint8Array([this.bitBuf])),this.pos++)}}},Jy=t=>Uint8Array.from(t).reverse();function ME(t,e,r){if(r){let n=2n**(e-1n);if(t<-n||t>=n)throw new Error(`value out of signed bounds. Expected ${-n} <= ${t} < ${n}`)}else if(0n>t||t>=2n**e)throw new Error(`value out of unsigned bounds. Expected 0 <= ${t} < ${2n**e}`)}function KE(t){return{encodeStream:t.encodeStream,decodeStream:t.decodeStream,size:t.size,encode:e=>{let r=new Yy;return t.encodeStream(r,e),r.finish()},decode:(e,r={})=>{let n=new zy(e,r),i=t.decodeStream(n);return n.finish(),i}}}function jt(t,e){if(!Or(t))throw new Error(`validate: invalid inner value ${t}`);if(typeof e!="function")throw new Error("validate: fn should be function");return KE({size:t.size,encodeStream:(r,n)=>{let i;try{i=e(n)}catch(o){throw r.err(o)}t.encodeStream(r,i)},decodeStream:r=>{let n=t.decodeStream(r);try{return e(n)}catch(i){throw r.err(i)}}})}var Wt=t=>{let e=KE(t);return t.validate?jt(e,t.validate):e},il=t=>Yc(t)&&typeof t.decode=="function"&&typeof t.encode=="function";function Or(t){return Yc(t)&&il(t)&&typeof t.encodeStream=="function"&&typeof t.decodeStream=="function"&&(t.size===void 0||Fn(t.size))}function F8(){return{encode:t=>{if(!Array.isArray(t))throw new Error("array expected");let e={};for(let r of t){if(!Array.isArray(r)||r.length!==2)throw new Error("array of two elements expected");let n=r[0],i=r[1];if(e[n]!==void 0)throw new Error(`key(${n}) appears twice in struct`);e[n]=i}return e},decode:t=>{if(!Yc(t))throw new Error(`expected plain object, got ${t}`);return Object.entries(t)}}}var j8={encode:t=>{if(typeof t!="bigint")throw new Error(`expected bigint, got ${typeof t}`);if(t>BigInt(Number.MAX_SAFE_INTEGER))throw new Error(`element bigger than MAX_SAFE_INTEGER=${t}`);return Number(t)},decode:t=>{if(!Fn(t))throw new Error("element is not a safe integer");return BigInt(t)}};function W8(t){if(!Yc(t))throw new Error("plain object expected");return{encode:e=>{if(!Fn(e)||!(e in t))throw new Error(`wrong value ${e}`);return t[e]},decode:e=>{if(typeof e!="string")throw new Error(`wrong value ${typeof e}`);return t[e]}}}function G8(t,e=!1){if(!Fn(t))throw new Error(`decimal/precision: wrong value ${t}`);if(typeof e!="boolean")throw new Error(`decimal/round: expected boolean, got ${typeof e}`);let r=10n**BigInt(t);return{encode:n=>{if(typeof n!="bigint")throw new Error(`expected bigint, got ${typeof n}`);let i=(n<0n?-n:n).toString(10),o=i.length-t;o<0&&(i=i.padStart(i.length-o,"0"),o=0);let s=i.length-1;for(;s>=o&&i[s]==="0";s--);let c=i.slice(0,o),a=i.slice(o,s+1);return c||(c="0"),n<0n&&(c="-"+c),a?`${c}.${a}`:c},decode:n=>{if(typeof n!="string")throw new Error(`expected string, got ${typeof n}`);if(n==="-0")throw new Error("negative zero is not allowed");let i=!1;if(n.startsWith("-")&&(i=!0,n=n.slice(1)),!/^(0|[1-9]\d*)(\.\d+)?$/.test(n))throw new Error(`wrong string value=${n}`);let o=n.indexOf(".");o=o===-1?n.length:o;let s=n.slice(0,o),c=n.slice(o+1).replace(/0+$/,""),a=BigInt(s)*r;if(!e&&c.length>t)throw new Error(`fractional part cannot be represented with this precision (num=${n}, prec=${t})`);let u=Math.min(c.length,t),d=BigInt(c.slice(0,u))*10n**BigInt(t-u),f=a+d;return i?-f:f}}}function z8(t){if(!Array.isArray(t))throw new Error(`expected array, got ${typeof t}`);for(let e of t)if(!il(e))throw new Error(`wrong base coder ${e}`);return{encode:e=>{for(let r of t){let n=r.encode(e);if(n!==void 0)return n}throw new Error(`match/encode: cannot find match in ${e}`)},decode:e=>{for(let r of t){let n=r.decode(e);if(n!==void 0)return n}throw new Error(`match/decode: cannot find match in ${e}`)}}}var $E=t=>{if(!il(t))throw new Error("BaseCoder expected");return{encode:t.decode,decode:t.encode}},Bi={dict:F8,numberBigint:j8,tsEnum:W8,decimal:G8,match:z8,reverse:$E};var Qy=(t,e=!1,r=!1,n=!0)=>{if(!Fn(t))throw new Error(`bigint/size: wrong value ${t}`);if(typeof e!="boolean")throw new Error(`bigint/le: expected boolean, got ${typeof e}`);if(typeof r!="boolean")throw new Error(`bigint/signed: expected boolean, got ${typeof r}`);if(typeof n!="boolean")throw new Error(`bigint/sized: expected boolean, got ${typeof n}`);let i=BigInt(t),o=2n**(8n*i-1n);return Wt({size:n?t:void 0,encodeStream:(s,c)=>{r&&c<0&&(c=c|o);let a=[];for(let d=0;d<t;d++)a.push(Number(c&255n)),c>>=8n;let u=new Uint8Array(a).reverse();if(!n){let d=0;for(d=0;d<u.length&&u[d]===0;d++);u=u.subarray(d)}s.bytes(e?u.reverse():u)},decodeStream:s=>{let c=s.bytes(n?t:Math.min(t,s.leftBytes)),a=e?c:Jy(c),u=0n;for(let d=0;d<a.length;d++)u|=BigInt(a[d])<<8n*BigInt(d);return r&&u&o&&(u=(u^o)-o),u},validate:s=>{if(typeof s!="bigint")throw new Error(`bigint: invalid value: ${s}`);return ME(s,8n*i,!!r),s}})};var HE=Qy(32,!1);var Jc=Qy(8,!0);var VE=Qy(8,!0,!0);var Y8=(t,e)=>Wt({size:t,encodeStream:(r,n)=>r.writeView(t,i=>e.write(i,n)),decodeStream:r=>r.readView(t,e.read),validate:r=>{if(typeof r!="number")throw new Error(`viewCoder: expected number, got ${typeof r}`);return e.validate&&e.validate(r),r}}),Lu=(t,e,r)=>{let n=t*8,i=2**(n-1),o=a=>{if(!Fn(a))throw new Error(`sintView: value is not safe integer: ${a}`);if(a<-i||a>=i)throw new Error(`sintView: value out of bounds. Expected ${-i} <= ${a} < ${i}`)},s=2**n,c=a=>{if(!Fn(a))throw new Error(`uintView: value is not safe integer: ${a}`);if(0>a||a>=s)throw new Error(`uintView: value out of bounds. Expected 0 <= ${a} < ${s}`)};return Y8(t,{write:r.write,read:r.read,validate:e?o:c})},Ie=Lu(4,!1,{read:(t,e)=>t.getUint32(e,!0),write:(t,e)=>t.setUint32(0,e,!0)}),qE=Lu(4,!1,{read:(t,e)=>t.getUint32(e,!1),write:(t,e)=>t.setUint32(0,e,!1)}),So=Lu(4,!0,{read:(t,e)=>t.getInt32(e,!0),write:(t,e)=>t.setInt32(0,e,!0)});var e0=Lu(2,!1,{read:(t,e)=>t.getUint16(e,!0),write:(t,e)=>t.setUint16(0,e,!0)});var mn=Lu(1,!1,{read:(t,e)=>t.getUint8(e),write:(t,e)=>t.setUint8(0,e)});var Fe=(t,e=!1)=>{if(typeof e!="boolean")throw new Error(`bytes/le: expected boolean, got ${typeof e}`);let r=PE(t),n=Jr(t);return Wt({size:typeof t=="number"?t:void 0,encodeStream:(i,o)=>{n||r.encodeStream(i,o.length),i.bytes(e?Jy(o):o),n&&i.bytes(t)},decodeStream:i=>{let o;if(n){let s=i.find(t);if(!s)throw i.err("bytes: cannot find terminator");o=i.bytes(s-i.pos),i.bytes(t.length)}else o=i.bytes(t===null?i.leftBytes:r.decodeStream(i));return e?Jy(o):o},validate:i=>{if(!Jr(i))throw new Error(`bytes: invalid value ${i}`);return i}})};function FE(t,e){if(!Or(e))throw new Error(`prefix: invalid inner value ${e}`);return gn(Fe(t),$E(e))}var ol=(t,e=!1)=>jt(gn(Fe(t,e),LE),r=>{if(typeof r!="string")throw new Error(`expected string, got ${typeof r}`);return r});var jE=(t,e={isLE:!1,with0x:!1})=>{let r=gn(Fe(t,e.isLE),xe),n=e.with0x;if(typeof n!="boolean")throw new Error(`hex/with0x: expected boolean, got ${typeof n}`);return n&&(r=gn(r,{encode:i=>`0x${i}`,decode:i=>{if(!i.startsWith("0x"))throw new Error("hex(with0x=true).encode input should start with 0x");return i.slice(2)}})),r};function gn(t,e){if(!Or(t))throw new Error(`apply: invalid inner value ${t}`);if(!il(e))throw new Error(`apply: invalid base value ${t}`);return Wt({size:t.size,encodeStream:(r,n)=>{let i;try{i=e.decode(n)}catch(o){throw r.err(""+o)}return t.encodeStream(r,i)},decodeStream:r=>{let n=t.decodeStream(r);try{return e.encode(n)}catch(i){throw r.err(""+i)}}})}var WE=(t,e=!1)=>{if(!Jr(t))throw new Error(`flag/flagValue: expected Uint8Array, got ${typeof t}`);if(typeof e!="boolean")throw new Error(`flag/xor: expected boolean, got ${typeof e}`);return Wt({size:t.length,encodeStream:(r,n)=>{!!n!==e&&r.bytes(t)},decodeStream:r=>{let n=r.leftBytes>=t.length;return n&&(n=zc(r.bytes(t.length,!0),t),n&&r.bytes(t.length)),n!==e},validate:r=>{if(r!==void 0&&typeof r!="boolean")throw new Error(`flag: expected boolean value or undefined, got ${typeof r}`);return r}})};function GE(t,e,r){if(!Or(e))throw new Error(`flagged: invalid inner value ${e}`);if(typeof t!="string"&&!Or(e))throw new Error(`flagged: wrong path=${t}`);return Wt({encodeStream:(n,i)=>{typeof t=="string"?Ii.resolve(n.stack,t)?e.encodeStream(n,i):r&&e.encodeStream(n,r):(t.encodeStream(n,!!i),i?e.encodeStream(n,i):r&&e.encodeStream(n,r))},decodeStream:n=>{let i=!1;if(typeof t=="string"?i=!!Ii.resolve(n.stack,t):i=t.decodeStream(n),i)return e.decodeStream(n);r&&e.decodeStream(n)}})}function sl(t,e,r=!0){if(!Or(t))throw new Error(`magic: invalid inner value ${t}`);if(typeof r!="boolean")throw new Error(`magic: expected boolean, got ${typeof r}`);return Wt({size:t.size,encodeStream:(n,i)=>t.encodeStream(n,e),decodeStream:n=>{let i=t.decodeStream(n);if(r&&typeof i!="object"&&i!==e||Jr(e)&&!zc(e,i))throw n.err(`magic: invalid value: ${i} !== ${e}`)},validate:n=>{if(n!==void 0)throw new Error(`magic: wrong value=${typeof n}`);return n}})}function zE(t){let e=0;for(let r of t){if(r.size===void 0)return;if(!Fn(r.size))throw new Error(`sizeof: wrong element size=${e}`);e+=r.size}return e}function Et(t){if(!Yc(t))throw new Error(`struct: expected plain object, got ${t}`);for(let e in t)if(!Or(t[e]))throw new Error(`struct: field ${e} is not CoderType`);return Wt({size:zE(Object.values(t)),encodeStream:(e,r)=>{e.pushObj(r,n=>{for(let i in t)n(i,()=>t[i].encodeStream(e,r[i]))})},decodeStream:e=>{let r={};return e.pushObj(r,n=>{for(let i in t)n(i,()=>r[i]=t[i].decodeStream(e))}),r},validate:e=>{if(typeof e!="object"||e===null)throw new Error(`struct: invalid value ${e}`);return e}})}function YE(t){if(!Array.isArray(t))throw new Error(`Packed.Tuple: got ${typeof t} instead of array`);for(let e=0;e<t.length;e++)if(!Or(t[e]))throw new Error(`tuple: field ${e} is not CoderType`);return Wt({size:zE(t),encodeStream:(e,r)=>{if(!Array.isArray(r))throw e.err(`tuple: invalid value ${r}`);e.pushObj(r,n=>{for(let i=0;i<t.length;i++)n(`${i}`,()=>t[i].encodeStream(e,r[i]))})},decodeStream:e=>{let r=[];return e.pushObj(r,n=>{for(let i=0;i<t.length;i++)n(`${i}`,()=>r.push(t[i].decodeStream(e)))}),r},validate:e=>{if(!Array.isArray(e))throw new Error(`tuple: invalid value ${e}`);if(e.length!==t.length)throw new Error(`tuple: wrong length=${e.length}, expected ${t.length}`);return e}})}function Gt(t,e){if(!Or(e))throw new Error(`array: invalid inner value ${e}`);let r=PE(typeof t=="string"?`../${t}`:t);return Wt({size:typeof t=="number"&&e.size?t*e.size:void 0,encodeStream:(n,i)=>{let o=n;o.pushObj(i,s=>{Jr(t)||r.encodeStream(n,i.length);for(let c=0;c<i.length;c++)s(`${c}`,()=>{let a=i[c],u=n.pos;if(e.encodeStream(n,a),Jr(t)){if(t.length>o.pos-u)return;let d=o.finish(!1).subarray(u,o.pos);if(zc(d.subarray(0,t.length),t))throw o.err(`array: inner element encoding same as separator. elm=${a} data=${d}`)}})}),Jr(t)&&n.bytes(t)},decodeStream:n=>{let i=[];return n.pushObj(i,o=>{if(t===null)for(let s=0;!n.isEnd()&&(o(`${s}`,()=>i.push(e.decodeStream(n))),!(e.size&&n.leftBytes<e.size));s++);else if(Jr(t))for(let s=0;;s++){if(zc(n.bytes(t.length,!0),t)){n.bytes(t.length);break}o(`${s}`,()=>i.push(e.decodeStream(n)))}else{let s;o("arrayLen",()=>s=r.decodeStream(n));for(let c=0;c<s;c++)o(`${c}`,()=>i.push(e.decodeStream(n)))}}),i},validate:n=>{if(!Array.isArray(n))throw new Error(`array: invalid value ${n}`);return n}})}var ul=vo.ProjectivePoint,al=vo.CURVE.n,Ce=nl.isBytes,jn=nl.concatBytes,ct=nl.equalBytes;var Xc=t=>_E(ke(t)),Ri=(...t)=>ke(ke(jn(...t))),lM=Ur.utils.randomPrivateKey,dl=Ur.getPublicKey,t0=vo.getPublicKey,JE=t=>t.r<al/2n;function XE(t,e,r=!1){let n=vo.sign(t,e);if(r&&!JE(n)){let i=new Uint8Array(32),o=0;for(;!JE(n);)if(i.set(Ie.encode(o++)),n=vo.sign(t,e,{extraEntropy:i}),o>4294967295)throw new Error("lowR counter overflow: report the error")}return n.toDERRawBytes()}var r0=Ur.sign,Pu=Ur.utils.taggedHash,vt;(function(t){t[t.ecdsa=0]="ecdsa",t[t.schnorr=1]="schnorr"})(vt||(vt={}));function Ao(t,e){let r=t.length;if(e===vt.ecdsa){if(r===32)throw new Error("Expected non-Schnorr key");return ul.fromHex(t),t}else if(e===vt.schnorr){if(r!==32)throw new Error("Expected 32-byte Schnorr key");return Ur.utils.lift_x(Ur.utils.bytesToNumberBE(t)),t}else throw new Error("Unknown key type")}function ZE(t,e){let r=Ur.utils,n=r.taggedHash("TapTweak",t,e),i=r.bytesToNumberBE(n);if(i>=al)throw new Error("tweak higher than curve order");return i}function QE(t,e=Uint8Array.of()){let r=Ur.utils,n=r.bytesToNumberBE(t),i=ul.fromPrivateKey(n),o=i.hasEvenY()?n:r.mod(-n,al),s=r.pointToBytes(i),c=ZE(s,e);return r.numberToBytesBE(r.mod(o+c,al),32)}function Mu(t,e){let r=Ur.utils,n=ZE(t,e),o=r.lift_x(r.bytesToNumberBE(t)).add(ul.fromPrivateKey(n)),s=o.hasEvenY()?0:1;return[r.pointToBytes(o),s]}var fl=ke(ul.BASE.toRawBytes(!1)),Xr={bech32:"bc",pubKeyHash:0,scriptHash:5,wif:128},n0={bech32:"tb",pubKeyHash:111,scriptHash:196,wif:239};function Ku(t,e){if(!Ce(t)||!Ce(e))throw new Error(`cmp: wrong type a=${typeof t} b=${typeof e}`);let r=Math.min(t.length,e.length);for(let n=0;n<r;n++)if(t[n]!=e[n])return Math.sign(t[n]-e[n]);return Math.sign(t.length-e.length)}l();l();l();var bt;(function(t){t[t.OP_0=0]="OP_0",t[t.PUSHDATA1=76]="PUSHDATA1",t[t.PUSHDATA2=77]="PUSHDATA2",t[t.PUSHDATA4=78]="PUSHDATA4",t[t["1NEGATE"]=79]="1NEGATE",t[t.RESERVED=80]="RESERVED",t[t.OP_1=81]="OP_1",t[t.OP_2=82]="OP_2",t[t.OP_3=83]="OP_3",t[t.OP_4=84]="OP_4",t[t.OP_5=85]="OP_5",t[t.OP_6=86]="OP_6",t[t.OP_7=87]="OP_7",t[t.OP_8=88]="OP_8",t[t.OP_9=89]="OP_9",t[t.OP_10=90]="OP_10",t[t.OP_11=91]="OP_11",t[t.OP_12=92]="OP_12",t[t.OP_13=93]="OP_13",t[t.OP_14=94]="OP_14",t[t.OP_15=95]="OP_15",t[t.OP_16=96]="OP_16",t[t.NOP=97]="NOP",t[t.VER=98]="VER",t[t.IF=99]="IF",t[t.NOTIF=100]="NOTIF",t[t.VERIF=101]="VERIF",t[t.VERNOTIF=102]="VERNOTIF",t[t.ELSE=103]="ELSE",t[t.ENDIF=104]="ENDIF",t[t.VERIFY=105]="VERIFY",t[t.RETURN=106]="RETURN",t[t.TOALTSTACK=107]="TOALTSTACK",t[t.FROMALTSTACK=108]="FROMALTSTACK",t[t["2DROP"]=109]="2DROP",t[t["2DUP"]=110]="2DUP",t[t["3DUP"]=111]="3DUP",t[t["2OVER"]=112]="2OVER",t[t["2ROT"]=113]="2ROT",t[t["2SWAP"]=114]="2SWAP",t[t.IFDUP=115]="IFDUP",t[t.DEPTH=116]="DEPTH",t[t.DROP=117]="DROP",t[t.DUP=118]="DUP",t[t.NIP=119]="NIP",t[t.OVER=120]="OVER",t[t.PICK=121]="PICK",t[t.ROLL=122]="ROLL",t[t.ROT=123]="ROT",t[t.SWAP=124]="SWAP",t[t.TUCK=125]="TUCK",t[t.CAT=126]="CAT",t[t.SUBSTR=127]="SUBSTR",t[t.LEFT=128]="LEFT",t[t.RIGHT=129]="RIGHT",t[t.SIZE=130]="SIZE",t[t.INVERT=131]="INVERT",t[t.AND=132]="AND",t[t.OR=133]="OR",t[t.XOR=134]="XOR",t[t.EQUAL=135]="EQUAL",t[t.EQUALVERIFY=136]="EQUALVERIFY",t[t.RESERVED1=137]="RESERVED1",t[t.RESERVED2=138]="RESERVED2",t[t["1ADD"]=139]="1ADD",t[t["1SUB"]=140]="1SUB",t[t["2MUL"]=141]="2MUL",t[t["2DIV"]=142]="2DIV",t[t.NEGATE=143]="NEGATE",t[t.ABS=144]="ABS",t[t.NOT=145]="NOT",t[t["0NOTEQUAL"]=146]="0NOTEQUAL",t[t.ADD=147]="ADD",t[t.SUB=148]="SUB",t[t.MUL=149]="MUL",t[t.DIV=150]="DIV",t[t.MOD=151]="MOD",t[t.LSHIFT=152]="LSHIFT",t[t.RSHIFT=153]="RSHIFT",t[t.BOOLAND=154]="BOOLAND",t[t.BOOLOR=155]="BOOLOR",t[t.NUMEQUAL=156]="NUMEQUAL",t[t.NUMEQUALVERIFY=157]="NUMEQUALVERIFY",t[t.NUMNOTEQUAL=158]="NUMNOTEQUAL",t[t.LESSTHAN=159]="LESSTHAN",t[t.GREATERTHAN=160]="GREATERTHAN",t[t.LESSTHANOREQUAL=161]="LESSTHANOREQUAL",t[t.GREATERTHANOREQUAL=162]="GREATERTHANOREQUAL",t[t.MIN=163]="MIN",t[t.MAX=164]="MAX",t[t.WITHIN=165]="WITHIN",t[t.RIPEMD160=166]="RIPEMD160",t[t.SHA1=167]="SHA1",t[t.SHA256=168]="SHA256",t[t.HASH160=169]="HASH160",t[t.HASH256=170]="HASH256",t[t.CODESEPARATOR=171]="CODESEPARATOR",t[t.CHECKSIG=172]="CHECKSIG",t[t.CHECKSIGVERIFY=173]="CHECKSIGVERIFY",t[t.CHECKMULTISIG=174]="CHECKMULTISIG",t[t.CHECKMULTISIGVERIFY=175]="CHECKMULTISIGVERIFY",t[t.NOP1=176]="NOP1",t[t.CHECKLOCKTIMEVERIFY=177]="CHECKLOCKTIMEVERIFY",t[t.CHECKSEQUENCEVERIFY=178]="CHECKSEQUENCEVERIFY",t[t.NOP4=179]="NOP4",t[t.NOP5=180]="NOP5",t[t.NOP6=181]="NOP6",t[t.NOP7=182]="NOP7",t[t.NOP8=183]="NOP8",t[t.NOP9=184]="NOP9",t[t.NOP10=185]="NOP10",t[t.CHECKSIGADD=186]="CHECKSIGADD",t[t.INVALID=255]="INVALID"})(bt||(bt={}));function i0(t=6,e=!1){return Wt({encodeStream:(r,n)=>{if(n===0n)return;let i=n<0,o=BigInt(n),s=[];for(let c=i?-o:o;c;c>>=8n)s.push(Number(c&0xffn));s[s.length-1]>=128?s.push(i?128:0):i&&(s[s.length-1]|=128),r.bytes(new Uint8Array(s))},decodeStream:r=>{let n=r.leftBytes;if(n>t)throw new Error(`ScriptNum: number (${n}) bigger than limit=${t}`);if(n===0)return 0n;if(e){let s=r.bytes(n,!0);if(!(s[s.length-1]&127)&&(n<=1||!(s[s.length-2]&128)))throw new Error("Non-minimally encoded ScriptNum")}let i=0,o=0n;for(let s=0;s<n;++s)i=r.byte(),o|=BigInt(i)<<8n*BigInt(s);return i>=128&&(o&=2n**BigInt(n*8)-1n>>1n,o=-o),o}})}function rv(t,e=4,r=!0){if(typeof t=="number")return t;if(Ce(t))try{let n=i0(e,r).decode(t);return n>Number.MAX_SAFE_INTEGER?void 0:Number(n)}catch{return}}var Ze=Wt({encodeStream:(t,e)=>{for(let r of e){if(typeof r=="string"){if(bt[r]===void 0)throw new Error(`Unknown opcode=${r}`);t.byte(bt[r]);continue}else if(typeof r=="number"){if(r===0){t.byte(0);continue}else if(1<=r&&r<=16){t.byte(bt.OP_1-1+r);continue}}if(typeof r=="number"&&(r=i0().encode(BigInt(r))),!Ce(r))throw new Error(`Wrong Script OP=${r} (${typeof r})`);let n=r.length;n<bt.PUSHDATA1?t.byte(n):n<=255?(t.byte(bt.PUSHDATA1),t.byte(n)):n<=65535?(t.byte(bt.PUSHDATA2),t.bytes(e0.encode(n))):(t.byte(bt.PUSHDATA4),t.bytes(Ie.encode(n))),t.bytes(r)}},decodeStream:t=>{let e=[];for(;!t.isEnd();){let r=t.byte();if(bt.OP_0<r&&r<=bt.PUSHDATA4){let n;if(r<bt.PUSHDATA1)n=r;else if(r===bt.PUSHDATA1)n=mn.decodeStream(t);else if(r===bt.PUSHDATA2)n=e0.decodeStream(t);else if(r===bt.PUSHDATA4)n=Ie.decodeStream(t);else throw new Error("Should be not possible");e.push(t.bytes(n))}else if(r===0)e.push(0);else if(bt.OP_1<=r&&r<=bt.OP_16)e.push(r-(bt.OP_1-1));else{let n=bt[r];if(n===void 0)throw new Error(`Unknown opcode=${r.toString(16)}`);e.push(n)}}return e}}),tv={253:[253,2,253n,65535n],254:[254,4,65536n,4294967295n],255:[255,8,4294967296n,18446744073709551615n]},Zc=Wt({encodeStream:(t,e)=>{if(typeof e=="number"&&(e=BigInt(e)),0n<=e&&e<=252n)return t.byte(Number(e));for(let[r,n,i,o]of Object.values(tv))if(!(i>e||e>o)){t.byte(r);for(let s=0;s<n;s++)t.byte(Number(e>>8n*BigInt(s)&0xffn));return}throw t.err(`VarInt too big: ${e}`)},decodeStream:t=>{let e=t.byte();if(e<=252)return BigInt(e);let[r,n,i]=tv[e],o=0n;for(let s=0;s<n;s++)o|=BigInt(t.byte())<<8n*BigInt(s);if(o<i)throw t.err(`Wrong CompactSize(${8*n})`);return o}}),Dr=gn(Zc,Bi.numberBigint),hr=Fe(Zc),Qc=Gt(Dr,hr),ll=t=>Gt(Zc,t),nv=Et({txid:Fe(32,!0),index:Ie,finalScriptSig:hr,sequence:Ie}),Ui=Et({amount:Jc,script:hr}),J8=Et({version:So,segwitFlag:WE(new Uint8Array([0,1])),inputs:ll(nv),outputs:ll(Ui),witnesses:GE("segwitFlag",Gt("inputs/length",Qc)),lockTime:Ie});function X8(t){if(t.segwitFlag&&t.witnesses&&!t.witnesses.length)throw new Error("Segwit flag with empty witnesses array");return t}var Oi=jt(J8,X8),As=Et({version:So,inputs:ll(nv),outputs:ll(Ui),lockTime:Ie});var s0=jt(Fe(null),t=>Ao(t,vt.ecdsa)),hl=jt(Fe(32),t=>Ao(t,vt.schnorr)),iv=jt(Fe(null),t=>{if(t.length!==64&&t.length!==65)throw new Error("Schnorr signature should be 64 or 65 bytes long");return t}),pl=Et({fingerprint:qE,path:Gt(null,Ie)}),cv=Et({hashes:Gt(Dr,Fe(32)),der:pl}),Z8=Fe(78),Q8=Et({pubKey:hl,leafHash:Fe(32)}),eR=Et({version:mn,internalKey:Fe(32),merklePath:Gt(null,Fe(32))}),Di=jt(eR,t=>{if(t.merklePath.length>128)throw new Error("TaprootControlBlock: merklePath should be of length 0..128 (inclusive)");return t}),tR=Gt(null,Et({depth:mn,version:mn,script:hr})),St=Fe(null),ov=Fe(20),$u=Fe(32),yl={unsignedTx:[0,!1,As,[0],[0],!1],xpub:[1,Z8,pl,[],[0,2],!1],txVersion:[2,!1,Ie,[2],[2],!1],fallbackLocktime:[3,!1,Ie,[],[2],!1],inputCount:[4,!1,Dr,[2],[2],!1],outputCount:[5,!1,Dr,[2],[2],!1],txModifiable:[6,!1,mn,[],[2],!1],version:[251,!1,Ie,[],[0,2],!1],proprietary:[252,St,St,[],[0,2],!1]},Hu={nonWitnessUtxo:[0,!1,Oi,[],[0,2],!1],witnessUtxo:[1,!1,Ui,[],[0,2],!1],partialSig:[2,s0,St,[],[0,2],!1],sighashType:[3,!1,Ie,[],[0,2],!1],redeemScript:[4,!1,St,[],[0,2],!1],witnessScript:[5,!1,St,[],[0,2],!1],bip32Derivation:[6,s0,pl,[],[0,2],!1],finalScriptSig:[7,!1,St,[],[0,2],!1],finalScriptWitness:[8,!1,Qc,[],[0,2],!1],porCommitment:[9,!1,St,[],[0,2],!1],ripemd160:[10,ov,St,[],[0,2],!1],sha256:[11,$u,St,[],[0,2],!1],hash160:[12,ov,St,[],[0,2],!1],hash256:[13,$u,St,[],[0,2],!1],txid:[14,!1,$u,[2],[2],!0],index:[15,!1,Ie,[2],[2],!0],sequence:[16,!1,Ie,[],[2],!0],requiredTimeLocktime:[17,!1,Ie,[],[2],!1],requiredHeightLocktime:[18,!1,Ie,[],[2],!1],tapKeySig:[19,!1,iv,[],[0,2],!1],tapScriptSig:[20,Q8,iv,[],[0,2],!1],tapLeafScript:[21,Di,St,[],[0,2],!1],tapBip32Derivation:[22,$u,cv,[],[0,2],!1],tapInternalKey:[23,!1,hl,[],[0,2],!1],tapMerkleRoot:[24,!1,$u,[],[0,2],!1],proprietary:[252,St,St,[],[0,2],!1]},av=["txid","sequence","index","witnessUtxo","nonWitnessUtxo","finalScriptSig","finalScriptWitness","unknown"],uv=["partialSig","finalScriptSig","finalScriptWitness","tapKeySig","tapScriptSig"],Vu={redeemScript:[0,!1,St,[],[0,2],!1],witnessScript:[1,!1,St,[],[0,2],!1],bip32Derivation:[2,s0,pl,[],[0,2],!1],amount:[3,!1,VE,[2],[2],!0],script:[4,!1,St,[2],[2],!0],tapInternalKey:[5,!1,hl,[],[0,2],!1],tapTree:[6,!1,tR,[],[0,2],!1],tapBip32Derivation:[7,hl,cv,[],[0,2],!1],proprietary:[252,St,St,[],[0,2],!1]},dv=[],sv=Gt(Xy,Et({key:FE(Dr,Et({type:Dr,key:Fe(null)})),value:Fe(Dr)}));function c0(t){let[e,r,n,i,o,s]=t;return{type:e,kc:r,vc:n,reqInc:i,allowInc:o,silentIgnore:s}}var xM=Et({type:Dr,key:Fe(null)});function a0(t){let e={};for(let r in t){let[n,i,o]=t[r];e[n]=[r,i,o]}return Wt({encodeStream:(r,n)=>{let i=[];for(let o in t){let s=n[o];if(s===void 0)continue;let[c,a,u]=t[o];if(!a)i.push({key:{type:c,key:Ve},value:u.encode(s)});else{let d=s.map(([f,h])=>[a.encode(f),u.encode(h)]);d.sort((f,h)=>Ku(f[0],h[0]));for(let[f,h]of d)i.push({key:{key:f,type:c},value:h})}}if(n.unknown){n.unknown.sort((o,s)=>Ku(o[0].key,s[0].key));for(let[o,s]of n.unknown)i.push({key:o,value:s})}sv.encodeStream(r,i)},decodeStream:r=>{let n=sv.decodeStream(r),i={},o={};for(let s of n){let c="unknown",a=s.key.key,u=s.value;if(e[s.key.type]){let[d,f,h]=e[s.key.type];if(c=d,!f&&a.length)throw new Error(`PSBT: Non-empty key for ${c} (key=${xe.encode(a)} value=${xe.encode(u)}`);if(a=f?f.decode(a):void 0,u=h.decode(u),!f){if(i[c])throw new Error(`PSBT: Same keys: ${c} (key=${a} value=${u})`);i[c]=u,o[c]=!0;continue}}else a={type:s.key.type,key:s.key.key};if(o[c])throw new Error(`PSBT: Key type with empty key and no key=${c} val=${u}`);i[c]||(i[c]=[]),i[c].push([a,u])}return i}})}var gl=jt(a0(Hu),t=>{if(t.finalScriptWitness&&!t.finalScriptWitness.length)throw new Error("validateInput: empty finalScriptWitness");if(t.partialSig&&!t.partialSig.length)throw new Error("Empty partialSig");if(t.partialSig)for(let[e]of t.partialSig)Ao(e,vt.ecdsa);if(t.bip32Derivation)for(let[e]of t.bip32Derivation)Ao(e,vt.ecdsa);if(t.requiredTimeLocktime!==void 0&&t.requiredTimeLocktime<5e8)throw new Error(`validateInput: wrong timeLocktime=${t.requiredTimeLocktime}`);if(t.requiredHeightLocktime!==void 0&&(t.requiredHeightLocktime<=0||t.requiredHeightLocktime>=5e8))throw new Error(`validateInput: wrong heighLocktime=${t.requiredHeightLocktime}`);if(t.tapLeafScript)for(let[e,r]of t.tapLeafScript){if((e.version&254)!==r[r.length-1])throw new Error("validateInput: tapLeafScript version mimatch");if(r[r.length-1]&1)throw new Error("validateInput: tapLeafScript version has parity bit!")}return t}),ml=jt(a0(Vu),t=>{if(t.bip32Derivation)for(let[e]of t.bip32Derivation)Ao(e,vt.ecdsa);return t}),fv=jt(a0(yl),t=>{if((t.version||0)===0){if(!t.unsignedTx)throw new Error("PSBTv0: missing unsignedTx");for(let r of t.unsignedTx.inputs)if(r.finalScriptSig&&r.finalScriptSig.length)throw new Error("PSBTv0: input scriptSig found in unsignedTx")}return t}),rR=Et({magic:sl(ol(new Uint8Array([255])),"psbt"),global:fv,inputs:Gt("global/unsignedTx/inputs/length",gl),outputs:Gt(null,ml)}),nR=Et({magic:sl(ol(new Uint8Array([255])),"psbt"),global:fv,inputs:Gt("global/inputCount",gl),outputs:Gt("global/outputCount",ml)}),EM=Et({magic:sl(ol(new Uint8Array([255])),"psbt"),items:Gt(null,gn(Gt(Xy,YE([jE(Dr),Fe(Zc)])),Bi.dict()))});function o0(t,e,r){for(let n in r){if(n==="unknown"||!e[n])continue;let{allowInc:i}=c0(e[n]);if(!i.includes(t))throw new Error(`PSBTv${t}: field ${n} is not allowed`)}for(let n in e){let{reqInc:i}=c0(e[n]);if(i.includes(t)&&r[n]===void 0)throw new Error(`PSBTv${t}: missing required field ${n}`)}}function u0(t,e,r){let n={};for(let i in r){let o=i;if(o!=="unknown"){if(!e[o])continue;let{allowInc:s,silentIgnore:c}=c0(e[o]);if(!s.includes(t)){if(c)continue;throw new Error(`Failed to serialize in PSBTv${t}: ${o} but versions allows inclusion=${s}`)}}n[o]=r[o]}return n}function lv(t){let e=t&&t.global&&t.global.version||0;o0(e,yl,t.global);for(let s of t.inputs)o0(e,Hu,s);for(let s of t.outputs)o0(e,Vu,s);let r=e?t.global.inputCount:t.global.unsignedTx.inputs.length;if(t.inputs.length<r)throw new Error("Not enough inputs");let n=t.inputs.slice(r);if(n.length>1||n.length&&Object.keys(n[0]).length)throw new Error(`Unexpected inputs left in tx=${n}`);let i=e?t.global.outputCount:t.global.unsignedTx.outputs.length;if(t.outputs.length<i)throw new Error("Not outputs inputs");let o=t.outputs.slice(i);if(o.length>1||o.length&&Object.keys(o[0]).length)throw new Error(`Unexpected outputs left in tx=${o}`);return t}function wl(t,e,r,n,i){let o={...r,...e};for(let s in t){let c=s,[a,u,d]=t[c],f=n&&!n.includes(s);if(e[s]===void 0&&s in e){if(f)throw new Error(`Cannot remove signed field=${s}`);delete o[s]}else if(u){let h=r&&r[s]?r[s]:[],p=e[c];if(p){if(!Array.isArray(p))throw new Error(`keyMap(${s}): KV pairs should be [k, v][]`);p=p.map(x=>{if(x.length!==2)throw new Error(`keyMap(${s}): KV pairs should be [k, v][]`);return[typeof x[0]=="string"?u.decode(xe.decode(x[0])):x[0],typeof x[1]=="string"?d.decode(xe.decode(x[1])):x[1]]});let g={},y=(x,S,_)=>{if(g[x]===void 0){g[x]=[S,_];return}let A=xe.encode(d.encode(g[x][1])),O=xe.encode(d.encode(_));if(A!==O)throw new Error(`keyMap(${c}): same key=${x} oldVal=${A} newVal=${O}`)};for(let[x,S]of h){let _=xe.encode(u.encode(x));y(_,x,S)}for(let[x,S]of p){let _=xe.encode(u.encode(x));if(S===void 0){if(f)throw new Error(`Cannot remove signed field=${c}/${x}`);delete g[_]}else y(_,x,S)}o[c]=Object.values(g)}}else if(typeof o[s]=="string")o[s]=d.decode(xe.decode(o[s]));else if(f&&s in e&&r&&r[s]!==void 0&&!ct(d.encode(e[s]),d.encode(r[s])))throw new Error(`Cannot change signed field=${s}`)}for(let s in o)if(!t[s]){if(i&&s==="unknown")continue;delete o[s]}return o}var d0=jt(rR,lv),f0=jt(nR,lv);var oR={encode(t){if(!(t.length!==2||t[0]!==1||!Ce(t[1])||xe.encode(t[1])!=="4e73"))return{type:"p2a",script:Ze.encode(t)}},decode:t=>{if(t.type==="p2a")return[1,xe.decode("4e73")]}};function To(t,e){try{return Ao(t,e),!0}catch{return!1}}var sR={encode(t){if(!(t.length!==2||!Ce(t[0])||!To(t[0],vt.ecdsa)||t[1]!=="CHECKSIG"))return{type:"pk",pubkey:t[0]}},decode:t=>t.type==="pk"?[t.pubkey,"CHECKSIG"]:void 0},cR={encode(t){if(!(t.length!==5||t[0]!=="DUP"||t[1]!=="HASH160"||!Ce(t[2]))&&!(t[3]!=="EQUALVERIFY"||t[4]!=="CHECKSIG"))return{type:"pkh",hash:t[2]}},decode:t=>t.type==="pkh"?["DUP","HASH160",t.hash,"EQUALVERIFY","CHECKSIG"]:void 0},aR={encode(t){if(!(t.length!==3||t[0]!=="HASH160"||!Ce(t[1])||t[2]!=="EQUAL"))return{type:"sh",hash:t[1]}},decode:t=>t.type==="sh"?["HASH160",t.hash,"EQUAL"]:void 0},uR={encode(t){if(!(t.length!==2||t[0]!==0||!Ce(t[1]))&&t[1].length===32)return{type:"wsh",hash:t[1]}},decode:t=>t.type==="wsh"?[0,t.hash]:void 0},dR={encode(t){if(!(t.length!==2||t[0]!==0||!Ce(t[1]))&&t[1].length===20)return{type:"wpkh",hash:t[1]}},decode:t=>t.type==="wpkh"?[0,t.hash]:void 0},fR={encode(t){let e=t.length-1;if(t[e]!=="CHECKMULTISIG")return;let r=t[0],n=t[e-1];if(typeof r!="number"||typeof n!="number")return;let i=t.slice(1,-2);if(n===i.length){for(let o of i)if(!Ce(o))return;return{type:"ms",m:r,pubkeys:i}}},decode:t=>t.type==="ms"?[t.m,...t.pubkeys,t.pubkeys.length,"CHECKMULTISIG"]:void 0},lR={encode(t){if(!(t.length!==2||t[0]!==1||!Ce(t[1])))return{type:"tr",pubkey:t[1]}},decode:t=>t.type==="tr"?[1,t.pubkey]:void 0},hR={encode(t){let e=t.length-1;if(t[e]!=="CHECKSIG")return;let r=[];for(let n=0;n<e;n++){let i=t[n];if(n&1){if(i!=="CHECKSIGVERIFY"||n===e-1)return;continue}if(!Ce(i))return;r.push(i)}return{type:"tr_ns",pubkeys:r}},decode:t=>{if(t.type!=="tr_ns")return;let e=[];for(let r=0;r<t.pubkeys.length-1;r++)e.push(t.pubkeys[r],"CHECKSIGVERIFY");return e.push(t.pubkeys[t.pubkeys.length-1],"CHECKSIG"),e}},pR={encode(t){let e=t.length-1;if(t[e]!=="NUMEQUAL"||t[1]!=="CHECKSIG")return;let r=[],n=rv(t[e-1]);if(typeof n=="number"){for(let i=0;i<e-1;i++){let o=t[i];if(i&1){if(o!==(i===1?"CHECKSIG":"CHECKSIGADD"))throw new Error("OutScript.encode/tr_ms: wrong element");continue}if(!Ce(o))throw new Error("OutScript.encode/tr_ms: wrong key element");r.push(o)}return{type:"tr_ms",pubkeys:r,m:n}}},decode:t=>{if(t.type!=="tr_ms")return;let e=[t.pubkeys[0],"CHECKSIG"];for(let r=1;r<t.pubkeys.length;r++)e.push(t.pubkeys[r],"CHECKSIGADD");return e.push(t.m,"NUMEQUAL"),e}},yR={encode(t){return{type:"unknown",script:Ze.encode(t)}},decode:t=>t.type==="unknown"?Ze.decode(t.script):void 0},gR=[oR,sR,cR,aR,uR,dR,fR,lR,hR,pR,yR],mR=gn(Ze,Bi.match(gR)),Qe=jt(mR,t=>{if(t.type==="pk"&&!To(t.pubkey,vt.ecdsa))throw new Error("OutScript/pk: wrong key");if((t.type==="pkh"||t.type==="sh"||t.type==="wpkh")&&(!Ce(t.hash)||t.hash.length!==20))throw new Error(`OutScript/${t.type}: wrong hash`);if(t.type==="wsh"&&(!Ce(t.hash)||t.hash.length!==32))throw new Error("OutScript/wsh: wrong hash");if(t.type==="tr"&&(!Ce(t.pubkey)||!To(t.pubkey,vt.schnorr)))throw new Error("OutScript/tr: wrong taproot public key");if((t.type==="ms"||t.type==="tr_ns"||t.type==="tr_ms")&&!Array.isArray(t.pubkeys))throw new Error("OutScript/multisig: wrong pubkeys array");if(t.type==="ms"){let e=t.pubkeys.length;for(let r of t.pubkeys)if(!To(r,vt.ecdsa))throw new Error("OutScript/multisig: wrong pubkey");if(t.m<=0||e>16||t.m>e)throw new Error("OutScript/multisig: invalid params")}if(t.type==="tr_ns"||t.type==="tr_ms"){for(let e of t.pubkeys)if(!To(e,vt.schnorr))throw new Error(`OutScript/${t.type}: wrong pubkey`)}if(t.type==="tr_ms"){let e=t.pubkeys.length;if(t.m<=0||e>999||t.m>e)throw new Error("OutScript/tr_ms: invalid params")}return t});function hv(t,e){if(!ct(t.hash,ke(e)))throw new Error("checkScript: wsh wrong witnessScript hash");let r=Qe.decode(e);if(r.type==="tr"||r.type==="tr_ns"||r.type==="tr_ms")throw new Error(`checkScript: P2${r.type} cannot be wrapped in P2SH`);if(r.type==="wpkh"||r.type==="sh")throw new Error(`checkScript: P2${r.type} cannot be wrapped in P2WSH`)}function m0(t,e,r){if(t){let n=Qe.decode(t);if(n.type==="tr_ns"||n.type==="tr_ms"||n.type==="ms"||n.type=="pk")throw new Error(`checkScript: non-wrapped ${n.type}`);if(n.type==="sh"&&e){if(!ct(n.hash,Xc(e)))throw new Error("checkScript: sh wrong redeemScript hash");let i=Qe.decode(e);if(i.type==="tr"||i.type==="tr_ns"||i.type==="tr_ms")throw new Error(`checkScript: P2${i.type} cannot be wrapped in P2SH`);if(i.type==="sh")throw new Error("checkScript: P2SH cannot be wrapped in P2SH")}n.type==="wsh"&&r&&hv(n,r)}if(e){let n=Qe.decode(e);n.type==="wsh"&&r&&hv(n,r)}}var ki=(t,e=Xr)=>{if(!To(t,vt.ecdsa))throw new Error("P2PKH: invalid publicKey");let r=Xc(t);return{type:"pkh",script:Qe.encode({type:"pkh",hash:r}),address:Zr(e).encode({type:"pkh",hash:r}),hash:r}};var Ts=(t,e=Xr)=>{if(!To(t,vt.ecdsa))throw new Error("P2WPKH: invalid publicKey");if(t.length===65)throw new Error("P2WPKH: uncompressed public key");let r=Xc(t);return{type:"wpkh",script:Qe.encode({type:"wpkh",hash:r}),address:Zr(e).encode({type:"wpkh",hash:r}),hash:r}};function wR(t,e,r=!1,n){let i=Qe.decode(t);if(i.type==="unknown"){if(n){let c=gn(Ze,Bi.match(n)).decode(t);if(c!==void 0){if(typeof c.type!="string"||!c.type.startsWith("tr_"))throw new Error(`P2TR: invalid custom type=${c.type}`);return}}if(r)return}if(!["tr_ns","tr_ms"].includes(i.type))throw new Error(`P2TR: invalid leaf script=${i.type}`);let o=i;if(!r&&o.pubkeys)for(let s of o.pubkeys){if(ct(s,fl))throw new Error("Unspendable taproot key in leaf script");if(ct(s,e))throw new Error("Using P2TR with leaf script with same key as internal key is not supported")}}function yv(t){let e=Array.from(t);for(;e.length>=2;){e.sort((s,c)=>(c.weight||1)-(s.weight||1));let n=e.pop(),i=e.pop(),o=(i?.weight||1)+(n?.weight||1);e.push({weight:o,childs:[i?.childs||i,n?.childs||n]})}let r=e[0];return r?.childs||r}function h0(t,e=[]){if(!t)throw new Error("taprootAddPath: empty tree");if(t.type==="leaf")return{...t,path:e};if(t.type!=="branch")throw new Error(`taprootAddPath: wrong type=${t}`);return{...t,path:e,left:h0(t.left,[t.right.hash,...e]),right:h0(t.right,[t.left.hash,...e])}}function p0(t){if(!t)throw new Error("taprootAddPath: empty tree");if(t.type==="leaf")return[t];if(t.type!=="branch")throw new Error(`taprootWalkTree: wrong type=${t}`);return[...p0(t.left),...p0(t.right)]}function y0(t,e,r=!1,n){if(!t)throw new Error("taprootHashTree: empty tree");if(Array.isArray(t)&&t.length===1&&(t=t[0]),!Array.isArray(t)){let{leafVersion:a,script:u}=t;if(t.tapLeafScript||t.tapMerkleRoot&&!ct(t.tapMerkleRoot,Ve))throw new Error("P2TR: tapRoot leafScript cannot have tree");let d=typeof u=="string"?xe.decode(u):u;if(!Ce(d))throw new Error(`checkScript: wrong script type=${d}`);return wR(d,e,r,n),{type:"leaf",version:a,script:d,hash:qu(d,a)}}if(t.length!==2&&(t=yv(t)),t.length!==2)throw new Error("hashTree: non binary tree!");let i=y0(t[0],e,r,n),o=y0(t[1],e,r,n),[s,c]=[i.hash,o.hash];return Ku(c,s)===-1&&([s,c]=[c,s]),{type:"branch",left:i,right:o,hash:Pu("TapBranch",s,c)}}var g0=192,qu=(t,e=g0)=>Pu("TapLeaf",new Uint8Array([e]),hr.encode(t));function _s(t,e,r=Xr,n=!1,i){if(!t&&!e)throw new Error("p2tr: should have pubKey or scriptTree (or both)");let o=typeof t=="string"?xe.decode(t):t||fl;if(!To(o,vt.schnorr))throw new Error("p2tr: non-schnorr pubkey");if(e){let s=h0(y0(e,o,n,i)),c=s.hash,[a,u]=Mu(o,c),d=p0(s).map(f=>({...f,controlBlock:Di.encode({version:(f.version||g0)+u,internalKey:o,merklePath:f.path})}));return{type:"tr",script:Qe.encode({type:"tr",pubkey:a}),address:Zr(r).encode({type:"tr",pubkey:a}),tweakedPubkey:a,tapInternalKey:o,leaves:d,tapLeafScript:d.map(f=>[Di.decode(f.controlBlock),jn(f.script,new Uint8Array([f.version||g0]))]),tapMerkleRoot:c}}else{let s=Mu(o,Ve)[0];return{type:"tr",script:Qe.encode({type:"tr",pubkey:s}),address:Zr(r).encode({type:"tr",pubkey:s}),tweakedPubkey:s,tapInternalKey:o}}}var gv=NE(ke);function mv(t,e){if(e.length<2||e.length>40)throw new Error("Witness: invalid length");if(t>16)throw new Error("Witness: invalid version");if(t===0&&!(e.length===20||e.length===32))throw new Error("Witness: invalid length for version")}function l0(t,e,r=Xr){mv(t,e);let n=t===0?rl:Ss;return n.encode(r.bech32,[t].concat(n.toWords(e)))}function pv(t,e){return gv.encode(jn(Uint8Array.from(e),t))}function Zr(t=Xr){return{encode(e){let{type:r}=e;if(r==="wpkh")return l0(0,e.hash,t);if(r==="wsh")return l0(0,e.hash,t);if(r==="tr")return l0(1,e.pubkey,t);if(r==="pkh")return pv(e.hash,[t.pubKeyHash]);if(r==="sh")return pv(e.hash,[t.scriptHash]);throw new Error(`Unknown address type=${r}`)},decode(e){if(e.length<14||e.length>74)throw new Error("Invalid address length");if(t.bech32&&e.toLowerCase().startsWith(`${t.bech32}1`)){let n;try{if(n=rl.decode(e),n.words[0]!==0)throw new Error(`bech32: wrong version=${n.words[0]}`)}catch{if(n=Ss.decode(e),n.words[0]===0)throw new Error(`bech32m: wrong version=${n.words[0]}`)}if(n.prefix!==t.bech32)throw new Error(`wrong bech32 prefix=${n.prefix}`);let[i,...o]=n.words,s=rl.fromWords(o);if(mv(i,s),i===0&&s.length===32)return{type:"wsh",hash:s};if(i===0&&s.length===20)return{type:"wpkh",hash:s};if(i===1&&s.length===32)return{type:"tr",pubkey:s};throw new Error("Unknown witness program")}let r=gv.decode(e);if(r.length!==21)throw new Error("Invalid base58 address");if(r[0]===t.pubKeyHash)return{type:"pkh",hash:r.slice(1)};if(r[0]===t.scriptHash)return{type:"sh",hash:r.slice(1)};throw new Error(`Invalid address prefix=${r[0]}`)}}}l();var bl=new Uint8Array(32),bR={amount:0xffffffffffffffffn,script:Ve},xR=t=>Math.ceil(t/4),ER=8,vR=2,Is=0,E0=4294967295,SR=Bi.decimal(ER),ju=(t,e)=>t===void 0?e:t;function El(t){if(Array.isArray(t))return t.map(e=>El(e));if(Ce(t))return Uint8Array.from(t);if(["number","bigint","boolean","string","undefined"].includes(typeof t))return t;if(t===null)return t;if(typeof t=="object")return Object.fromEntries(Object.entries(t).map(([e,r])=>[e,El(r)]));throw new Error(`cloneDeep: unknown type=${t} (${typeof t})`)}var je;(function(t){t[t.DEFAULT=0]="DEFAULT",t[t.ALL=1]="ALL",t[t.NONE=2]="NONE",t[t.SINGLE=3]="SINGLE",t[t.ANYONECANPAY=128]="ANYONECANPAY"})(je||(je={}));var _o;(function(t){t[t.DEFAULT=0]="DEFAULT",t[t.ALL=1]="ALL",t[t.NONE=2]="NONE",t[t.SINGLE=3]="SINGLE",t[t.DEFAULT_ANYONECANPAY=128]="DEFAULT_ANYONECANPAY",t[t.ALL_ANYONECANPAY=129]="ALL_ANYONECANPAY",t[t.NONE_ANYONECANPAY=130]="NONE_ANYONECANPAY",t[t.SINGLE_ANYONECANPAY=131]="SINGLE_ANYONECANPAY"})(_o||(_o={}));function AR(t,e,r,n=Ve){return ct(r,e)&&(t=QE(t,n),e=dl(t)),{privKey:t,pubKey:e}}function Bs(t){if(t.script===void 0||t.amount===void 0)throw new Error("Transaction/output: script and amount required");return{script:t.script,amount:t.amount}}function Fu(t){if(t.txid===void 0||t.index===void 0)throw new Error("Transaction/input: txid and index required");return{txid:t.txid,index:t.index,sequence:ju(t.sequence,E0),finalScriptSig:ju(t.finalScriptSig,Ve)}}function w0(t){for(let e in t){let r=e;av.includes(r)||delete t[r]}}var b0=Et({txid:Fe(32,!0),index:Ie});function TR(t){if(typeof t!="number"||typeof _o[t]!="string")throw new Error(`Invalid SigHash=${t}`);return t}function wv(t){let e=t&31;return{isAny:!!(t&je.ANYONECANPAY),isNone:e===je.NONE,isSingle:e===je.SINGLE}}function _R(t){if(t!==void 0&&{}.toString.call(t)!=="[object Object]")throw new Error(`Wrong object type for transaction options: ${t}`);let e={...t,version:ju(t.version,vR),lockTime:ju(t.lockTime,0),PSBTVersion:ju(t.PSBTVersion,0)};if(typeof e.allowUnknowInput<"u"&&(t.allowUnknownInputs=e.allowUnknowInput),typeof e.allowUnknowOutput<"u"&&(t.allowUnknownOutputs=e.allowUnknowOutput),typeof e.lockTime!="number")throw new Error("Transaction lock time should be number");if(Ie.encode(e.lockTime),e.PSBTVersion!==0&&e.PSBTVersion!==2)throw new Error(`Unknown PSBT version ${e.PSBTVersion}`);for(let r of["allowUnknownVersion","allowUnknownOutputs","allowUnknownInputs","disableScriptCheck","bip174jsCompat","allowLegacyWitnessUtxo","lowR"]){let n=e[r];if(n!==void 0&&typeof n!="boolean")throw new Error(`Transation options wrong type: ${r}=${n} (${typeof n})`)}if(e.allowUnknownVersion?typeof e.version=="number":![-1,0,1,2,3].includes(e.version))throw new Error(`Unknown version: ${e.version}`);if(e.customScripts!==void 0){let r=e.customScripts;if(!Array.isArray(r))throw new Error(`wrong custom scripts type (expected array): customScripts=${r} (${typeof r})`);for(let n of r){if(typeof n.encode!="function"||typeof n.decode!="function")throw new Error(`wrong script=${n} (${typeof n})`);if(n.finalizeTaproot!==void 0&&typeof n.finalizeTaproot!="function")throw new Error(`wrong script=${n} (${typeof n})`)}}return Object.freeze(e)}function bv(t){if(t.nonWitnessUtxo&&t.index!==void 0){let e=t.nonWitnessUtxo.outputs.length-1;if(t.index>e)throw new Error(`validateInput: index(${t.index}) not in nonWitnessUtxo`);let r=t.nonWitnessUtxo.outputs[t.index];if(t.witnessUtxo&&(!ct(t.witnessUtxo.script,r.script)||t.witnessUtxo.amount!==r.amount))throw new Error("validateInput: witnessUtxo different from nonWitnessUtxo");if(t.txid){if(t.nonWitnessUtxo.outputs.length-1<t.index)throw new Error("nonWitnessUtxo: incorect output index");let i=Rs.fromRaw(Oi.encode(t.nonWitnessUtxo),{allowUnknownOutputs:!0,disableScriptCheck:!0,allowUnknownInputs:!0}),o=xe.encode(t.txid);if(i.isFinal&&i.id!==o)throw new Error(`nonWitnessUtxo: wrong txid, exp=${o} got=${i.id}`)}}return t}function xl(t){if(t.nonWitnessUtxo){if(t.index===void 0)throw new Error("Unknown input index");return t.nonWitnessUtxo.outputs[t.index]}else{if(t.witnessUtxo)return t.witnessUtxo;throw new Error("Cannot find previous output info")}}function xv(t,e,r,n=!1,i=!1){let{nonWitnessUtxo:o,txid:s}=t;typeof o=="string"&&(o=xe.decode(o)),Ce(o)&&(o=Oi.decode(o)),!("nonWitnessUtxo"in t)&&o===void 0&&(o=e?.nonWitnessUtxo),typeof s=="string"&&(s=xe.decode(s)),s===void 0&&(s=e?.txid);let c={...e,...t,nonWitnessUtxo:o,txid:s};!("nonWitnessUtxo"in t)&&c.nonWitnessUtxo===void 0&&delete c.nonWitnessUtxo,c.sequence===void 0&&(c.sequence=E0),c.tapMerkleRoot===null&&delete c.tapMerkleRoot,c=wl(Hu,c,e,r,i),gl.encode(c);let a;return c.nonWitnessUtxo&&c.index!==void 0?a=c.nonWitnessUtxo.outputs[c.index]:c.witnessUtxo&&(a=c.witnessUtxo),a&&!n&&m0(a&&a.script,c.redeemScript,c.witnessScript),c}function x0(t,e=!1){let r="legacy",n=je.ALL,i=xl(t),o=Qe.decode(i.script),s=o.type,c=o,a=[o];if(o.type==="tr")return n=je.DEFAULT,{txType:"taproot",type:"tr",last:o,lastScript:i.script,defaultSighash:n,sighash:t.sighashType||n};{if((o.type==="wpkh"||o.type==="wsh")&&(r="segwit"),o.type==="sh"){if(!t.redeemScript)throw new Error("inputType: sh without redeemScript");let h=Qe.decode(t.redeemScript);(h.type==="wpkh"||h.type==="wsh")&&(r="segwit"),a.push(h),c=h,s+=`-${h.type}`}if(c.type==="wsh"){if(!t.witnessScript)throw new Error("inputType: wsh without witnessScript");let h=Qe.decode(t.witnessScript);h.type==="wsh"&&(r="segwit"),a.push(h),c=h,s+=`-${h.type}`}let u=a[a.length-1];if(u.type==="sh"||u.type==="wsh")throw new Error("inputType: sh/wsh cannot be terminal type");let d=Qe.encode(u),f={type:s,txType:r,last:u,lastScript:d,defaultSighash:n,sighash:t.sighashType||n};if(r==="legacy"&&!e&&!t.nonWitnessUtxo)throw new Error("Transaction/sign: legacy input without nonWitnessUtxo, can result in attack that forces paying higher fees. Pass allowLegacyWitnessUtxo=true, if you sure");return f}}var Rs=class t{constructor(e={}){this.global={},this.inputs=[],this.outputs=[];let r=this.opts=_R(e);r.lockTime!==Is&&(this.global.fallbackLocktime=r.lockTime),this.global.txVersion=r.version}static fromRaw(e,r={}){let n=Oi.decode(e),i=new t({...r,version:n.version,lockTime:n.lockTime});for(let o of n.outputs)i.addOutput(o);if(i.outputs=n.outputs,i.inputs=n.inputs,n.witnesses)for(let o=0;o<n.witnesses.length;o++)i.inputs[o].finalScriptWitness=n.witnesses[o];return i}static fromPSBT(e,r={}){let n;try{n=d0.decode(e)}catch(f){try{n=f0.decode(e)}catch{throw f}}let i=n.global.version||0;if(i!==0&&i!==2)throw new Error(`Wrong PSBT version=${i}`);let o=n.global.unsignedTx,s=i===0?o?.version:n.global.txVersion,c=i===0?o?.lockTime:n.global.fallbackLocktime,a=new t({...r,version:s,lockTime:c,PSBTVersion:i}),u=i===0?o?.inputs.length:n.global.inputCount;a.inputs=n.inputs.slice(0,u).map((f,h)=>bv({finalScriptSig:Ve,...n.global.unsignedTx?.inputs[h],...f}));let d=i===0?o?.outputs.length:n.global.outputCount;return a.outputs=n.outputs.slice(0,d).map((f,h)=>({...f,...n.global.unsignedTx?.outputs[h]})),a.global={...n.global,txVersion:s},c!==Is&&(a.global.fallbackLocktime=c),a}toPSBT(e=this.opts.PSBTVersion){if(e!==0&&e!==2)throw new Error(`Wrong PSBT version=${e}`);let r=this.inputs.map(o=>bv(u0(e,Hu,o)));for(let o of r)o.partialSig&&!o.partialSig.length&&delete o.partialSig,o.finalScriptSig&&!o.finalScriptSig.length&&delete o.finalScriptSig,o.finalScriptWitness&&!o.finalScriptWitness.length&&delete o.finalScriptWitness;let n=this.outputs.map(o=>u0(e,Vu,o)),i={...this.global};return e===0?(i.unsignedTx=As.decode(As.encode({version:this.version,lockTime:this.lockTime,inputs:this.inputs.map(Fu).map(o=>({...o,finalScriptSig:Ve})),outputs:this.outputs.map(Bs)})),delete i.fallbackLocktime,delete i.txVersion):(i.version=e,i.txVersion=this.version,i.inputCount=this.inputs.length,i.outputCount=this.outputs.length,i.fallbackLocktime&&i.fallbackLocktime===Is&&delete i.fallbackLocktime),this.opts.bip174jsCompat&&(r.length||r.push({}),n.length||n.push({})),(e===0?d0:f0).encode({global:i,inputs:r,outputs:n})}get lockTime(){let e=Is,r=0,n=Is,i=0;for(let o of this.inputs)o.requiredHeightLocktime&&(e=Math.max(e,o.requiredHeightLocktime),r++),o.requiredTimeLocktime&&(n=Math.max(n,o.requiredTimeLocktime),i++);return r&&r>=i?e:n!==Is?n:this.global.fallbackLocktime||Is}get version(){if(this.global.txVersion===void 0)throw new Error("No global.txVersion");return this.global.txVersion}inputStatus(e){this.checkInputIdx(e);let r=this.inputs[e];return r.finalScriptSig&&r.finalScriptSig.length||r.finalScriptWitness&&r.finalScriptWitness.length?"finalized":r.tapKeySig||r.tapScriptSig&&r.tapScriptSig.length||r.partialSig&&r.partialSig.length?"signed":"unsigned"}inputSighash(e){this.checkInputIdx(e);let r=this.inputs[e].sighashType,n=r===void 0?je.DEFAULT:r,i=n===je.DEFAULT?je.ALL:n&3;return{sigInputs:n&je.ANYONECANPAY,sigOutputs:i}}signStatus(){let e=!0,r=!0,n=[],i=[];for(let o=0;o<this.inputs.length;o++){if(this.inputStatus(o)==="unsigned")continue;let{sigInputs:c,sigOutputs:a}=this.inputSighash(o);if(c===je.ANYONECANPAY?n.push(o):e=!1,a===je.ALL)r=!1;else if(a===je.SINGLE)i.push(o);else if(a!==je.NONE)throw new Error(`Wrong signature hash output type: ${a}`)}return{addInput:e,addOutput:r,inputs:n,outputs:i}}get isFinal(){for(let e=0;e<this.inputs.length;e++)if(this.inputStatus(e)!=="finalized")return!1;return!0}get hasWitnesses(){let e=!1;for(let r of this.inputs)r.finalScriptWitness&&r.finalScriptWitness.length&&(e=!0);return e}get weight(){if(!this.isFinal)throw new Error("Transaction is not finalized");let e=32,r=this.outputs.map(Bs);e+=4*Dr.encode(this.outputs.length).length;for(let n of r)e+=32+4*hr.encode(n.script).length;this.hasWitnesses&&(e+=2),e+=4*Dr.encode(this.inputs.length).length;for(let n of this.inputs)e+=160+4*hr.encode(n.finalScriptSig||Ve).length,this.hasWitnesses&&n.finalScriptWitness&&(e+=Qc.encode(n.finalScriptWitness).length);return e}get vsize(){return xR(this.weight)}toBytes(e=!1,r=!1){return Oi.encode({version:this.version,lockTime:this.lockTime,inputs:this.inputs.map(Fu).map(n=>({...n,finalScriptSig:e&&n.finalScriptSig||Ve})),outputs:this.outputs.map(Bs),witnesses:this.inputs.map(n=>n.finalScriptWitness||[]),segwitFlag:r&&this.hasWitnesses})}get unsignedTx(){return this.toBytes(!1,!1)}get hex(){return xe.encode(this.toBytes(!0,this.hasWitnesses))}get hash(){if(!this.isFinal)throw new Error("Transaction is not finalized");return xe.encode(Ri(this.toBytes(!0)))}get id(){if(!this.isFinal)throw new Error("Transaction is not finalized");return xe.encode(Ri(this.toBytes(!0)).reverse())}checkInputIdx(e){if(!Number.isSafeInteger(e)||0>e||e>=this.inputs.length)throw new Error(`Wrong input index=${e}`)}getInput(e){return this.checkInputIdx(e),El(this.inputs[e])}get inputsLength(){return this.inputs.length}addInput(e,r=!1){if(!r&&!this.signStatus().addInput)throw new Error("Tx has signed inputs, cannot add new one");return this.inputs.push(xv(e,void 0,void 0,this.opts.disableScriptCheck)),this.inputs.length-1}updateInput(e,r,n=!1){this.checkInputIdx(e);let i;if(!n){let o=this.signStatus();(!o.addInput||o.inputs.includes(e))&&(i=uv)}this.inputs[e]=xv(r,this.inputs[e],i,this.opts.disableScriptCheck,this.opts.allowUnknown)}checkOutputIdx(e){if(!Number.isSafeInteger(e)||0>e||e>=this.outputs.length)throw new Error(`Wrong output index=${e}`)}getOutput(e){return this.checkOutputIdx(e),El(this.outputs[e])}getOutputAddress(e,r=Xr){let n=this.getOutput(e);if(n.script)return Zr(r).encode(Qe.decode(n.script))}get outputsLength(){return this.outputs.length}normalizeOutput(e,r,n){let{amount:i,script:o}=e;if(i===void 0&&(i=r?.amount),typeof i!="bigint")throw new Error(`Wrong amount type, should be of type bigint in sats, but got ${i} of type ${typeof i}`);typeof o=="string"&&(o=xe.decode(o)),o===void 0&&(o=r?.script);let s={...r,...e,amount:i,script:o};if(s.amount===void 0&&delete s.amount,s=wl(Vu,s,r,n,this.opts.allowUnknown),ml.encode(s),s.script&&!this.opts.allowUnknownOutputs&&Qe.decode(s.script).type==="unknown")throw new Error("Transaction/output: unknown output script type, there is a chance that input is unspendable. Pass allowUnknownOutputs=true, if you sure");return this.opts.disableScriptCheck||m0(s.script,s.redeemScript,s.witnessScript),s}addOutput(e,r=!1){if(!r&&!this.signStatus().addOutput)throw new Error("Tx has signed outputs, cannot add new one");return this.outputs.push(this.normalizeOutput(e)),this.outputs.length-1}updateOutput(e,r,n=!1){this.checkOutputIdx(e);let i;if(!n){let o=this.signStatus();(!o.addOutput||o.outputs.includes(e))&&(i=dv)}this.outputs[e]=this.normalizeOutput(r,this.outputs[e],i)}addOutputAddress(e,r,n=Xr){return this.addOutput({script:Qe.encode(Zr(n).decode(e)),amount:r})}get fee(){let e=0n;for(let n of this.inputs){let i=xl(n);if(!i)throw new Error("Empty input amount");e+=i.amount}let r=this.outputs.map(Bs);for(let n of r)e-=n.amount;return e}preimageLegacy(e,r,n){let{isAny:i,isNone:o,isSingle:s}=wv(n);if(e<0||!Number.isSafeInteger(e))throw new Error(`Invalid input idx=${e}`);if(s&&e>=this.outputs.length||e>=this.inputs.length)return HE.encode(1n);r=Ze.encode(Ze.decode(r).filter(d=>d!=="CODESEPARATOR"));let c=this.inputs.map(Fu).map((d,f)=>({...d,finalScriptSig:f===e?r:Ve}));i?c=[c[e]]:(o||s)&&(c=c.map((d,f)=>({...d,sequence:f===e?d.sequence:0})));let a=this.outputs.map(Bs);o?a=[]:s&&(a=a.slice(0,e).fill(bR).concat([a[e]]));let u=Oi.encode({lockTime:this.lockTime,version:this.version,segwitFlag:!1,inputs:c,outputs:a});return Ri(u,So.encode(n))}preimageWitnessV0(e,r,n,i){let{isAny:o,isNone:s,isSingle:c}=wv(n),a=bl,u=bl,d=bl,f=this.inputs.map(Fu),h=this.outputs.map(Bs);o||(a=Ri(...f.map(b0.encode))),!o&&!c&&!s&&(u=Ri(...f.map(g=>Ie.encode(g.sequence)))),!c&&!s?d=Ri(...h.map(Ui.encode)):c&&e<h.length&&(d=Ri(Ui.encode(h[e])));let p=f[e];return Ri(So.encode(this.version),a,u,Fe(32,!0).encode(p.txid),Ie.encode(p.index),hr.encode(r),Jc.encode(i),Ie.encode(p.sequence),d,Ie.encode(this.lockTime),Ie.encode(n))}preimageWitnessV1(e,r,n,i,o=-1,s,c=192,a){if(!Array.isArray(i)||this.inputs.length!==i.length)throw new Error(`Invalid amounts array=${i}`);if(!Array.isArray(r)||this.inputs.length!==r.length)throw new Error(`Invalid prevOutScript array=${r}`);let u=[mn.encode(0),mn.encode(n),So.encode(this.version),Ie.encode(this.lockTime)],d=n===je.DEFAULT?je.ALL:n&3,f=n&je.ANYONECANPAY,h=this.inputs.map(Fu),p=this.outputs.map(Bs);f!==je.ANYONECANPAY&&u.push(...[h.map(b0.encode),i.map(Jc.encode),r.map(hr.encode),h.map(y=>Ie.encode(y.sequence))].map(y=>ke(jn(...y)))),d===je.ALL&&u.push(ke(jn(...p.map(Ui.encode))));let g=(a?1:0)|(s?2:0);if(u.push(new Uint8Array([g])),f===je.ANYONECANPAY){let y=h[e];u.push(b0.encode(y),Jc.encode(i[e]),hr.encode(r[e]),Ie.encode(y.sequence))}else u.push(Ie.encode(e));return g&1&&u.push(ke(hr.encode(a||Ve))),d===je.SINGLE&&u.push(e<p.length?ke(Ui.encode(p[e])):bl),s&&u.push(qu(s,c),mn.encode(0),So.encode(o)),Pu("TapSighash",...u)}signIdx(e,r,n,i){this.checkInputIdx(r);let o=this.inputs[r],s=x0(o,this.opts.allowLegacyWitnessUtxo);if(!Ce(e)){if(!o.bip32Derivation||!o.bip32Derivation.length)throw new Error("bip32Derivation: empty");let d=o.bip32Derivation.filter(h=>h[1].fingerprint==e.fingerprint).map(([h,{path:p}])=>{let g=e;for(let y of p)g=g.deriveChild(y);if(!ct(g.publicKey,h))throw new Error("bip32Derivation: wrong pubKey");if(!g.privateKey)throw new Error("bip32Derivation: no privateKey");return g});if(!d.length)throw new Error(`bip32Derivation: no items with fingerprint=${e.fingerprint}`);let f=!1;for(let h of d)this.signIdx(h.privateKey,r)&&(f=!0);return f}n?n.forEach(TR):n=[s.defaultSighash];let c=s.sighash;if(!n.includes(c))throw new Error(`Input with not allowed sigHash=${c}. Allowed: ${n.join(", ")}`);let{sigOutputs:a}=this.inputSighash(r);if(a===je.SINGLE&&r>=this.outputs.length)throw new Error(`Input with sighash SINGLE, but there is no output with corresponding index=${r}`);let u=xl(o);if(s.txType==="taproot"){let d=this.inputs.map(xl),f=d.map(x=>x.script),h=d.map(x=>x.amount),p=!1,g=dl(e),y=o.tapMerkleRoot||Ve;if(o.tapInternalKey){let{pubKey:x,privKey:S}=AR(e,g,o.tapInternalKey,y),[_,A]=Mu(o.tapInternalKey,y);if(ct(_,x)){let O=this.preimageWitnessV1(r,f,c,h),T=jn(r0(O,S,i),c!==je.DEFAULT?new Uint8Array([c]):Ve);this.updateInput(r,{tapKeySig:T},!0),p=!0}}if(o.tapLeafScript){o.tapScriptSig=o.tapScriptSig||[];for(let[x,S]of o.tapLeafScript){let _=S.subarray(0,-1),A=Ze.decode(_),O=S[S.length-1],T=qu(_,O);if(A.findIndex($=>Ce($)&&ct($,g))===-1)continue;let q=this.preimageWitnessV1(r,f,c,h,void 0,_,O),j=jn(r0(q,e,i),c!==je.DEFAULT?new Uint8Array([c]):Ve);this.updateInput(r,{tapScriptSig:[[{pubKey:g,leafHash:T},j]]},!0),p=!0}}if(!p)throw new Error("No taproot scripts signed");return!0}else{let d=t0(e),f=!1,h=Xc(d);for(let y of Ze.decode(s.lastScript))Ce(y)&&(ct(y,d)||ct(y,h))&&(f=!0);if(!f)throw new Error(`Input script doesn't have pubKey: ${s.lastScript}`);let p;if(s.txType==="legacy")p=this.preimageLegacy(r,s.lastScript,c);else if(s.txType==="segwit"){let y=s.lastScript;s.last.type==="wpkh"&&(y=Qe.encode({type:"pkh",hash:s.last.hash})),p=this.preimageWitnessV0(r,y,c,u.amount)}else throw new Error(`Transaction/sign: unknown tx type: ${s.txType}`);let g=XE(p,e,this.opts.lowR);this.updateInput(r,{partialSig:[[d,jn(g,new Uint8Array([c]))]]},!0)}return!0}sign(e,r,n){let i=0;for(let o=0;o<this.inputs.length;o++)try{this.signIdx(e,o,r,n)&&i++}catch{}if(!i)throw new Error("No inputs signed");return i}finalizeIdx(e){if(this.checkInputIdx(e),this.fee<0n)throw new Error("Outputs spends more than inputs amount");let r=this.inputs[e],n=x0(r,this.opts.allowLegacyWitnessUtxo);if(n.txType==="taproot"){if(r.tapKeySig)r.finalScriptWitness=[r.tapKeySig];else if(r.tapLeafScript&&r.tapScriptSig){let a=r.tapLeafScript.sort((u,d)=>Di.encode(u[0]).length-Di.encode(d[0]).length);for(let[u,d]of a){let f=d.slice(0,-1),h=d[d.length-1],p=Qe.decode(f),g=qu(f,h),y=r.tapScriptSig.filter(S=>ct(S[0].leafHash,g)),x=[];if(p.type==="tr_ms"){let S=p.m,_=p.pubkeys,A=0;for(let O of _){let T=y.findIndex(M=>ct(M[0].pubKey,O));if(A===S||T===-1){x.push(Ve);continue}x.push(y[T][1]),A++}if(A!==S)continue}else if(p.type==="tr_ns"){for(let S of p.pubkeys){let _=y.findIndex(A=>ct(A[0].pubKey,S));_!==-1&&x.push(y[_][1])}if(x.length!==p.pubkeys.length)continue}else if(p.type==="unknown"&&this.opts.allowUnknownInputs){let S=Ze.decode(f);if(x=y.map(([{pubKey:_},A])=>{let O=S.findIndex(T=>Ce(T)&&ct(T,_));if(O===-1)throw new Error("finalize/taproot: cannot find position of pubkey in script");return{signature:A,pos:O}}).sort((_,A)=>_.pos-A.pos).map(_=>_.signature),!x.length)continue}else{let S=this.opts.customScripts;if(S)for(let _ of S){if(!_.finalizeTaproot)continue;let A=Ze.decode(f),O=_.encode(A);if(O===void 0)continue;let T=_.finalizeTaproot(f,O,y);if(T){r.finalScriptWitness=T.concat(Di.encode(u)),r.finalScriptSig=Ve,w0(r);return}}throw new Error("Finalize: Unknown tapLeafScript")}r.finalScriptWitness=x.reverse().concat([f,Di.encode(u)]);break}if(!r.finalScriptWitness)throw new Error("finalize/taproot: empty witness")}else throw new Error("finalize/taproot: unknown input");r.finalScriptSig=Ve,w0(r);return}if(!r.partialSig||!r.partialSig.length)throw new Error("Not enough partial sign");let i=Ve,o=[];if(n.last.type==="ms"){let a=n.last.m,u=n.last.pubkeys,d=[];for(let f of u){let h=r.partialSig.find(p=>ct(f,p[0]));h&&d.push(h[1])}if(d=d.slice(0,a),d.length!==a)throw new Error(`Multisig: wrong signatures count, m=${a} n=${u.length} signatures=${d.length}`);i=Ze.encode([0,...d])}else if(n.last.type==="pk")i=Ze.encode([r.partialSig[0][1]]);else if(n.last.type==="pkh")i=Ze.encode([r.partialSig[0][1],r.partialSig[0][0]]);else if(n.last.type==="wpkh")i=Ve,o=[r.partialSig[0][1],r.partialSig[0][0]];else if(n.last.type==="unknown"&&!this.opts.allowUnknownInputs)throw new Error("Unknown inputs not allowed");let s,c;if(n.type.includes("wsh-")&&(i.length&&n.lastScript.length&&(o=Ze.decode(i).map(a=>{if(a===0)return Ve;if(Ce(a))return a;throw new Error(`Wrong witness op=${a}`)})),o=o.concat(n.lastScript)),n.txType==="segwit"&&(c=o),n.type.startsWith("sh-wsh-")?s=Ze.encode([Ze.encode([0,ke(n.lastScript)])]):n.type.startsWith("sh-")?s=Ze.encode([...Ze.decode(i),n.lastScript]):n.type.startsWith("wsh-")||n.txType!=="segwit"&&(s=i),!s&&!c)throw new Error("Unknown error finalizing input");s&&(r.finalScriptSig=s),c&&(r.finalScriptWitness=c),w0(r)}finalize(){for(let e=0;e<this.inputs.length;e++)this.finalizeIdx(e)}extract(){if(!this.isFinal)throw new Error("Transaction has unfinalized inputs");if(!this.outputs.length)throw new Error("Transaction has no outputs");if(this.fee<0n)throw new Error("Outputs spends more than inputs amount");return this.toBytes(!0,!0)}combine(e){for(let i of["PSBTVersion","version","lockTime"])if(this.opts[i]!==e.opts[i])throw new Error(`Transaction/combine: different ${i} this=${this.opts[i]} other=${e.opts[i]}`);for(let i of["inputs","outputs"])if(this[i].length!==e[i].length)throw new Error(`Transaction/combine: different ${i} length this=${this[i].length} other=${e[i].length}`);let r=this.global.unsignedTx?As.encode(this.global.unsignedTx):Ve,n=e.global.unsignedTx?As.encode(e.global.unsignedTx):Ve;if(!ct(r,n))throw new Error("Transaction/combine: different unsigned tx");this.global=wl(yl,this.global,e.global,void 0,this.opts.allowUnknown);for(let i=0;i<this.inputs.length;i++)this.updateInput(i,e.inputs[i],!0);for(let i=0;i<this.outputs.length;i++)this.updateOutput(i,e.outputs[i],!0);return this}clone(){return t.fromPSBT(this.toPSBT(this.opts.PSBTVersion),this.opts)}};l();l();l();l();l();function Ev(t,e){var r="",n=e&&e.include,i=e&&e.exclude;i&&typeof i=="string"&&(i=[i]),n&&n.sort();var o=new WeakMap,s=e&&e.allowCircular,c=e&&e.filterUndefined,a=e&&e.undefinedInArrayToNull;return u(t,""),r;function u(d,f){if(d===null||typeof d!="object"||d.toJSON!=null)r+=JSON.stringify(d);else if(Array.isArray(d)){var h=o.get(d);if(h!==void 0&&f.startsWith(h)){if(!s)throw new Error("Circular reference detected");r+='"[Circular]"';return}o.set(d,f),r+="[";var p=!1;d.forEach(function(S,_){p&&(r+=","),p=!0,a&&S===void 0&&(S=null),u(S,f+"["+_+"]")}),r+="]"}else{var h=o.get(d);if(h!==void 0&&f.startsWith(h)){if(!s)throw new Error("Circular reference detected");r+='"[Circular]"';return}o.set(d,f),r+="{";var g=!1,y=function(_){i&&i.includes(_)||(g&&(r+=","),g=!0,r+=JSON.stringify(_),r+=":",u(d[_],f+"."+_))};if(f===""&&n)n.forEach(function(_){d.hasOwnProperty(_)&&y(_)});else{var x=Object.keys(d);c&&(x=x.filter(function(_){return d[_]!==void 0})),x.sort(),x.forEach(function(_){y(_)})}r+="}"}}}function vv(t,e){return Ev(t,{allowCircular:e,filterUndefined:!0,undefinedInArrayToNull:!0})}l();var v0;(function(t){t.INVALID_DID="INVALID_DID",t.METHOD_NOT_SUPPORTED="METHOD_NOT_SUPPORTED",t.INTERNAL_ERROR="INTERNAL_ERROR",t.INVALID_DID_DOCUMENT="INVALID_DID_DOCUMENT",t.INVALID_DID_UPDATE="INVALID_DID_UPDATE",t.INVALID_DID_DOCUMENT_LENGTH="INVALID_DID_DOCUMENT_LENGTH",t.INVALID_DID_URL="INVALID_DID_URL",t.INVALID_PREVIOUS_DID_PROOF="INVALID_PREVIOUS_DID_PROOF",t.INVALID_PUBLIC_KEY="INVALID_PUBLIC_KEY",t.INVALID_PUBLIC_KEY_MULTIBASE="INVALID_PUBLIC_KEY_MULTIBASE",t.INVALID_PUBLIC_KEY_LENGTH="INVALID_PUBLIC_KEY_LENGTH",t.INVALID_PUBLIC_KEY_TYPE="INVALID_PUBLIC_KEY_TYPE",t.INVALID_SIGNATURE="INVALID_SIGNATURE",t.NOT_FOUND="NOT_FOUND",t.REPRESENTATION_NOT_SUPPORTED="REPRESENTATION_NOT_SUPPORTED",t.UNSUPPORTED_PUBLIC_KEY_TYPE="UNSUPPORTED_PUBLIC_KEY_TYPE",t.PROOF_VERIFICATION_ERROR="PROOF_VERIFICATION_ERROR",t.PROOF_GENERATION_ERROR="PROOF_GENERATION_ERROR",t.PROOF_SERIALIZATION_ERROR="PROOF_SERIALIZATION_ERROR",t.PROOF_PARSING_ERROR="PROOF_PARSING_ERROR",t.VERIFICATION_METHOD_ERROR="VERIFICATION_METHOD_ERROR",t.LATE_PUBLISHING_ERROR="LATE_PUBLISHING_ERROR",t.INVALID_SIDECAR_DATA="INVALID_SIDECAR_DATA",t.MISSING_UPDATE_DATA="MISSING_UPDATE_DATA",t.INVALID_UPDATE="INVALID_UPDATE",t.INVALID_DOMAIN_ERROR="INVALID_DOMAIN_ERROR",t.MISSING_RESOLUTION_OPTIONS="MISSING_RESOLUTION_OPTIONS",t.INVALID_OPTIONS="INVALID_OPTIONS"})(v0||(v0={}));var{INVALID_DID:ht,METHOD_NOT_SUPPORTED:vl,INTERNAL_ERROR:Sv,INVALID_DID_DOCUMENT:Le,INVALID_DID_UPDATE:Ae,INVALID_DID_URL:dK,INVALID_PREVIOUS_DID_PROOF:fK,INVALID_PUBLIC_KEY:lK,INVALID_PUBLIC_KEY_MULTIBASE:hK,INVALID_PUBLIC_KEY_LENGTH:pK,INVALID_PUBLIC_KEY_TYPE:yK,INVALID_SIGNATURE:gK,NOT_FOUND:mK,PROOF_VERIFICATION_ERROR:Ni,PROOF_GENERATION_ERROR:Bo,PROOF_SERIALIZATION_ERROR:Av,PROOF_PARSING_ERROR:wK,VERIFICATION_METHOD_ERROR:Sl,LATE_PUBLISHING_ERROR:Al,INVALID_SIDECAR_DATA:bK,MISSING_UPDATE_DATA:xK,MISSING_RESOLUTION_OPTIONS:EK,INVALID_OPTIONS:Tv}=v0,zt=class t extends Error{name="DidMethodError";type="DidMethodError";data;constructor(e,r={}){super(e),this.type=r.type??this.type,this.name=r.name??this.name,this.data=r.data,Object.setPrototypeOf(this,new.target.prototype),Error.captureStackTrace?.(this,t)}},we=class extends zt{constructor(e,r="MethodError",n){super(e,{type:r,name:r,data:n})}};var at=class extends zt{constructor(e,r="IdentifierError",n){super(e,{type:r,name:r,data:n})}},At=class extends zt{constructor(e,r="UpdateError",n){super(e,{type:r,name:r,data:n})}},De=class extends zt{constructor(e,r="ResolveError",n){super(e,{type:r,name:r,data:n})}};var qe=class extends zt{constructor(e,r="DidDocumentError",n){super(e,{type:r,name:r,data:n})}},Io=class extends zt{constructor(e,r="CryptosuiteError",n){super(e,{type:r,name:r,data:n})}},wn=class extends zt{constructor(e,r="DataIntegrityProofError",n){super(e,{type:r,name:r,data:n})}},bn=class extends zt{constructor(e,r="KeyPairError",n){super(e,{type:r,name:r,data:n})}},Wn=class extends zt{constructor(e,r="SecretKeyError",n){super(e,{type:r,name:r,data:n})}},Us=class extends zt{constructor(e,r="PublicKeyError",n){super(e,{type:r,name:r,data:n})}},xn=class extends zt{constructor(e,r="MultikeyError",n){super(e,{type:r,name:r,data:n})}};var ea=class extends zt{constructor(e,r="CanonicalizationError",n){super(e,{type:r,name:r,data:n})}};var IR=new Set(["jcs"]),BR=new Set(["hex","base58","base64urlnopad"]);function S0(t){let e=t.toLowerCase();if(!IR.has(e))throw new ea(`Unsupported algorithm: ${t}`,"ALGORITHM_ERROR");return e}function A0(t){let e=t.toLowerCase();if(!BR.has(e))throw new ea(`Unsupported encoding: ${t}`,"ENCODING_ERROR");return e}function ir(t,e="jcs"){switch(S0(e)){case"jcs":{let n=JSON.parse(JSON.stringify(t));return vv(n)}default:throw new ea(`Unsupported algorithm: ${e}`,"ALGORITHM_ERROR")}}function Ro(t){return ke(t)}function Qr(t,e="base64urlnopad"){switch(A0(e)){case"hex":return xe.encode(t);case"base58":return tl.encode(t);case"base64urlnopad":return Gc.encode(t)}}function Os(t,e="base64urlnopad"){switch(A0(e)){case"hex":return xe.decode(t);case"base58":return tl.decode(t);case"base64urlnopad":return Gc.decode(t)}}function Uo(t,e="jcs"){return Ro(ir(t,S0(e)))}function Gn(t,e){let r=S0(e?.algorithm??"jcs"),n=A0(e?.encoding??"base64urlnopad");return Qr(Ro(ir(t,r)),n)}l();l();var T0={};Su(T0,{JsonPatchError:()=>ut,_areEquals:()=>zu,applyOperation:()=>Ds,applyPatch:()=>Ol,applyReducer:()=>kR,deepClone:()=>OR,getValueByPointer:()=>Rl,validate:()=>Iv,validator:()=>Ul});l();l();var RR=function(){var t=function(e,r){return t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,i){n.__proto__=i}||function(n,i){for(var o in i)i.hasOwnProperty(o)&&(n[o]=i[o])},t(e,r)};return function(e,r){t(e,r);function n(){this.constructor=e}e.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}(),UR=Object.prototype.hasOwnProperty;function _l(t,e){return UR.call(t,e)}function Il(t){if(Array.isArray(t)){for(var e=new Array(t.length),r=0;r<e.length;r++)e[r]=""+r;return e}if(Object.keys)return Object.keys(t);var n=[];for(var i in t)_l(t,i)&&n.push(i);return n}function Mt(t){switch(typeof t){case"object":return JSON.parse(JSON.stringify(t));case"undefined":return null;default:return t}}function Bl(t){for(var e=0,r=t.length,n;e<r;){if(n=t.charCodeAt(e),n>=48&&n<=57){e++;continue}return!1}return!0}function zn(t){return t.indexOf("/")===-1&&t.indexOf("~")===-1?t:t.replace(/~/g,"~0").replace(/\//g,"~1")}function Wu(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}function Tl(t){if(t===void 0)return!0;if(t){if(Array.isArray(t)){for(var e=0,r=t.length;e<r;e++)if(Tl(t[e]))return!0}else if(typeof t=="object"){for(var n=Il(t),i=n.length,o=0;o<i;o++)if(Tl(t[n[o]]))return!0}}return!1}function _v(t,e){var r=[t];for(var n in e){var i=typeof e[n]=="object"?JSON.stringify(e[n],null,2):e[n];typeof i<"u"&&r.push(n+": "+i)}return r.join(`
|
|
3
|
-
`)}var Gu=function(t){RR(e,t);function e(r,n,i,o,s){var c=this.constructor,a=t.call(this,_v(r,{name:n,index:i,operation:o,tree:s}))||this;return a.name=n,a.index=i,a.operation=o,a.tree=s,Object.setPrototypeOf(a,c.prototype),a.message=_v(r,{name:n,index:i,operation:o,tree:s}),a}return e}(Error);var ut=Gu,OR=Mt,ta={add:function(t,e,r){return t[e]=this.value,{newDocument:r}},remove:function(t,e,r){var n=t[e];return delete t[e],{newDocument:r,removed:n}},replace:function(t,e,r){var n=t[e];return t[e]=this.value,{newDocument:r,removed:n}},move:function(t,e,r){var n=Rl(r,this.path);n&&(n=Mt(n));var i=Ds(r,{op:"remove",path:this.from}).removed;return Ds(r,{op:"add",path:this.path,value:i}),{newDocument:r,removed:n}},copy:function(t,e,r){var n=Rl(r,this.from);return Ds(r,{op:"add",path:this.path,value:Mt(n)}),{newDocument:r}},test:function(t,e,r){return{newDocument:r,test:zu(t[e],this.value)}},_get:function(t,e,r){return this.value=t[e],{newDocument:r}}},DR={add:function(t,e,r){return Bl(e)?t.splice(e,0,this.value):t[e]=this.value,{newDocument:r,index:e}},remove:function(t,e,r){var n=t.splice(e,1);return{newDocument:r,removed:n[0]}},replace:function(t,e,r){var n=t[e];return t[e]=this.value,{newDocument:r,removed:n}},move:ta.move,copy:ta.copy,test:ta.test,_get:ta._get};function Rl(t,e){if(e=="")return t;var r={op:"_get",path:e};return Ds(t,r),r.value}function Ds(t,e,r,n,i,o){if(r===void 0&&(r=!1),n===void 0&&(n=!0),i===void 0&&(i=!0),o===void 0&&(o=0),r&&(typeof r=="function"?r(e,0,t,e.path):Ul(e,0)),e.path===""){var s={newDocument:t};if(e.op==="add")return s.newDocument=e.value,s;if(e.op==="replace")return s.newDocument=e.value,s.removed=t,s;if(e.op==="move"||e.op==="copy")return s.newDocument=Rl(t,e.from),e.op==="move"&&(s.removed=t),s;if(e.op==="test"){if(s.test=zu(t,e.value),s.test===!1)throw new ut("Test operation failed","TEST_OPERATION_FAILED",o,e,t);return s.newDocument=t,s}else{if(e.op==="remove")return s.removed=t,s.newDocument=null,s;if(e.op==="_get")return e.value=t,s;if(r)throw new ut("Operation `op` property is not one of operations defined in RFC-6902","OPERATION_OP_INVALID",o,e,t);return s}}else{n||(t=Mt(t));var c=e.path||"",a=c.split("/"),u=t,d=1,f=a.length,h=void 0,p=void 0,g=void 0;for(typeof r=="function"?g=r:g=Ul;;){if(p=a[d],p&&p.indexOf("~")!=-1&&(p=Wu(p)),i&&(p=="__proto__"||p=="prototype"&&d>0&&a[d-1]=="constructor"))throw new TypeError("JSON-Patch: modifying `__proto__` or `constructor/prototype` prop is banned for security reasons, if this was on purpose, please set `banPrototypeModifications` flag false and pass it to this function. More info in fast-json-patch README");if(r&&h===void 0&&(u[p]===void 0?h=a.slice(0,d).join("/"):d==f-1&&(h=e.path),h!==void 0&&g(e,0,t,h)),d++,Array.isArray(u)){if(p==="-")p=u.length;else{if(r&&!Bl(p))throw new ut("Expected an unsigned base-10 integer value, making the new referenced value the array element with the zero-based index","OPERATION_PATH_ILLEGAL_ARRAY_INDEX",o,e,t);Bl(p)&&(p=~~p)}if(d>=f){if(r&&e.op==="add"&&p>u.length)throw new ut("The specified index MUST NOT be greater than the number of elements in the array","OPERATION_VALUE_OUT_OF_BOUNDS",o,e,t);var s=DR[e.op].call(e,u,p,t);if(s.test===!1)throw new ut("Test operation failed","TEST_OPERATION_FAILED",o,e,t);return s}}else if(d>=f){var s=ta[e.op].call(e,u,p,t);if(s.test===!1)throw new ut("Test operation failed","TEST_OPERATION_FAILED",o,e,t);return s}if(u=u[p],r&&d<f&&(!u||typeof u!="object"))throw new ut("Cannot perform operation at the desired path","OPERATION_PATH_UNRESOLVABLE",o,e,t)}}}function Ol(t,e,r,n,i){if(n===void 0&&(n=!0),i===void 0&&(i=!0),r&&!Array.isArray(e))throw new ut("Patch sequence must be an array","SEQUENCE_NOT_AN_ARRAY");n||(t=Mt(t));for(var o=new Array(e.length),s=0,c=e.length;s<c;s++)o[s]=Ds(t,e[s],r,!0,i,s),t=o[s].newDocument;return o.newDocument=t,o}function kR(t,e,r){var n=Ds(t,e);if(n.test===!1)throw new ut("Test operation failed","TEST_OPERATION_FAILED",r,e,t);return n.newDocument}function Ul(t,e,r,n){if(typeof t!="object"||t===null||Array.isArray(t))throw new ut("Operation is not an object","OPERATION_NOT_AN_OBJECT",e,t,r);if(ta[t.op]){if(typeof t.path!="string")throw new ut("Operation `path` property is not a string","OPERATION_PATH_INVALID",e,t,r);if(t.path.indexOf("/")!==0&&t.path.length>0)throw new ut('Operation `path` property must start with "/"',"OPERATION_PATH_INVALID",e,t,r);if((t.op==="move"||t.op==="copy")&&typeof t.from!="string")throw new ut("Operation `from` property is not present (applicable in `move` and `copy` operations)","OPERATION_FROM_REQUIRED",e,t,r);if((t.op==="add"||t.op==="replace"||t.op==="test")&&t.value===void 0)throw new ut("Operation `value` property is not present (applicable in `add`, `replace` and `test` operations)","OPERATION_VALUE_REQUIRED",e,t,r);if((t.op==="add"||t.op==="replace"||t.op==="test")&&Tl(t.value))throw new ut("Operation `value` property is not present (applicable in `add`, `replace` and `test` operations)","OPERATION_VALUE_CANNOT_CONTAIN_UNDEFINED",e,t,r);if(r){if(t.op=="add"){var i=t.path.split("/").length,o=n.split("/").length;if(i!==o+1&&i!==o)throw new ut("Cannot perform an `add` operation at the desired path","OPERATION_PATH_CANNOT_ADD",e,t,r)}else if(t.op==="replace"||t.op==="remove"||t.op==="_get"){if(t.path!==n)throw new ut("Cannot perform the operation at a path that does not exist","OPERATION_PATH_UNRESOLVABLE",e,t,r)}else if(t.op==="move"||t.op==="copy"){var s={op:"_get",path:t.from,value:void 0},c=Iv([s],r);if(c&&c.name==="OPERATION_PATH_UNRESOLVABLE")throw new ut("Cannot perform the operation from a path that does not exist","OPERATION_FROM_UNRESOLVABLE",e,t,r)}}}else throw new ut("Operation `op` property is not one of operations defined in RFC-6902","OPERATION_OP_INVALID",e,t,r)}function Iv(t,e,r){try{if(!Array.isArray(t))throw new ut("Patch sequence must be an array","SEQUENCE_NOT_AN_ARRAY");if(e)Ol(Mt(e),Mt(t),r||!0);else{r=r||Ul;for(var n=0;n<t.length;n++)r(t[n],n,e,void 0)}}catch(i){if(i instanceof ut)return i;throw i}}function zu(t,e){if(t===e)return!0;if(t&&e&&typeof t=="object"&&typeof e=="object"){var r=Array.isArray(t),n=Array.isArray(e),i,o,s;if(r&&n){if(o=t.length,o!=e.length)return!1;for(i=o;i--!==0;)if(!zu(t[i],e[i]))return!1;return!0}if(r!=n)return!1;var c=Object.keys(t);if(o=c.length,o!==Object.keys(e).length)return!1;for(i=o;i--!==0;)if(!e.hasOwnProperty(c[i]))return!1;for(i=o;i--!==0;)if(s=c[i],!zu(t[s],e[s]))return!1;return!0}return t!==t&&e!==e}var R0={};Su(R0,{compare:()=>HR,generate:()=>_0,observe:()=>$R,unobserve:()=>KR});l();var I0=new WeakMap,NR=function(){function t(e){this.observers=new Map,this.obj=e}return t}(),CR=function(){function t(e,r){this.callback=e,this.observer=r}return t}();function LR(t){return I0.get(t)}function PR(t,e){return t.observers.get(e)}function MR(t,e){t.observers.delete(e.callback)}function KR(t,e){e.unobserve()}function $R(t,e){var r=[],n,i=LR(t);if(!i)i=new NR(t),I0.set(t,i);else{var o=PR(i,e);n=o&&o.observer}if(n)return n;if(n={},i.value=Mt(t),e){n.callback=e,n.next=null;var s=function(){_0(n)},c=function(){clearTimeout(n.next),n.next=setTimeout(s)};typeof window<"u"&&(window.addEventListener("mouseup",c),window.addEventListener("keyup",c),window.addEventListener("mousedown",c),window.addEventListener("keydown",c),window.addEventListener("change",c))}return n.patches=r,n.object=t,n.unobserve=function(){_0(n),clearTimeout(n.next),MR(i,n),typeof window<"u"&&(window.removeEventListener("mouseup",c),window.removeEventListener("keyup",c),window.removeEventListener("mousedown",c),window.removeEventListener("keydown",c),window.removeEventListener("change",c))},i.observers.set(e,new CR(e,n)),n}function _0(t,e){e===void 0&&(e=!1);var r=I0.get(t.object);B0(r.value,t.object,t.patches,"",e),t.patches.length&&Ol(r.value,t.patches);var n=t.patches;return n.length>0&&(t.patches=[],t.callback&&t.callback(n)),n}function B0(t,e,r,n,i){if(e!==t){typeof e.toJSON=="function"&&(e=e.toJSON());for(var o=Il(e),s=Il(t),c=!1,a=!1,u=s.length-1;u>=0;u--){var d=s[u],f=t[d];if(_l(e,d)&&!(e[d]===void 0&&f!==void 0&&Array.isArray(e)===!1)){var h=e[d];typeof f=="object"&&f!=null&&typeof h=="object"&&h!=null&&Array.isArray(f)===Array.isArray(h)?B0(f,h,r,n+"/"+zn(d),i):f!==h&&(c=!0,i&&r.push({op:"test",path:n+"/"+zn(d),value:Mt(f)}),r.push({op:"replace",path:n+"/"+zn(d),value:Mt(h)}))}else Array.isArray(t)===Array.isArray(e)?(i&&r.push({op:"test",path:n+"/"+zn(d),value:Mt(f)}),r.push({op:"remove",path:n+"/"+zn(d)}),a=!0):(i&&r.push({op:"test",path:n,value:t}),r.push({op:"replace",path:n,value:e}),c=!0)}if(!(!a&&o.length==s.length))for(var u=0;u<o.length;u++){var d=o[u];!_l(t,d)&&e[d]!==void 0&&r.push({op:"add",path:n+"/"+zn(d),value:Mt(e[d])})}}}function HR(t,e,r){r===void 0&&(r=!1);var n=[];return B0(t,e,n,"",r),n}var Bv=Object.assign({},T0,R0,{JsonPatchError:Gu,deepClone:Mt,escapePathComponent:zn,unescapePathComponent:Wu});var{applyPatch:VR,compare:qR,deepClone:FR}=Bv,jR=new Set(["__proto__","constructor","prototype"]);function Rv(t){return t.split("/").map(e=>e.replace(/~1/g,"/").replace(/~0/g,"~")).find(e=>jR.has(e))}var ra=class{static apply(e,r,n={}){let i=n.mutate??!1,o=n.clone??FR,s=i?e:o(e),c=this.validateOperations(r);if(c)throw new we("Invalid JSON Patch operations","JSON_PATCH_APPLY_ERROR",{error:c});try{let a=VR(s,r,!1,i);if(a.newDocument===void 0)throw new we("JSON Patch application failed","JSON_PATCH_APPLY_ERROR",{result:a});return a.newDocument}catch(a){throw new we("JSON Patch application failed","JSON_PATCH_APPLY_ERROR",{error:a})}}static diff(e,r,n=""){let i=qR(e??{},r??{});if(!n)return i;let o=n.endsWith("/")?n.slice(0,-1):n;return i.map(s=>({...s,path:this.joinPointer(o,s.path)}))}static joinPointer(e,r){if(!e)return r;let n=e.startsWith("/")?e:`/${e}`;return`${this.escapeSegmentPath(n)}${r}`}static escapeSegmentPath(e){return e.split("/").map((r,n)=>n===0?r:r.replace(/~/g,"~0").replace(/\//g,"~1")).join("/")}static validateOperations(e){if(!Array.isArray(e))return new we("Operations must be an array","JSON_PATCH_VALIDATION_ERROR");for(let r of e){if(!r||typeof r!="object")return new we("Operation must be an object","JSON_PATCH_VALIDATION_ERROR");if(typeof r.op!="string")return new we("Operation.op must be a string","JSON_PATCH_VALIDATION_ERROR");if(typeof r.path!="string")return new we("Operation.path must be a string","JSON_PATCH_VALIDATION_ERROR");let n=Rv(r.path);if(n)return new we(`Operation.path traverses prototype machinery: ${n}`,"JSON_PATCH_VALIDATION_ERROR");if((r.op==="move"||r.op==="copy")&&typeof r.from!="string")return new we(`Operation.from must be a string for op=${r.op}`,"JSON_PATCH_VALIDATION_ERROR");if(typeof r.from=="string"){let i=Rv(r.from);if(i)return new we(`Operation.from traverses prototype machinery: ${i}`,"JSON_PATCH_VALIDATION_ERROR")}}return null}};l();var en;(function(t){t.KEY="KEY",t.EXTERNAL="EXTERNAL"})(en||(en={}));var Dl;(function(t){t.k="k",t.x="x"})(Dl||(Dl={}));var na;(function(t){t[t.bitcoin=0]="bitcoin",t[t.signet=1]="signet",t[t.regtest=2]="regtest",t[t.testnet3=3]="testnet3",t[t.testnet4=4]="testnet4",t[t.mutinynet=5]="mutinynet"})(na||(na={}));l();var Oo=class{static toISOStringNonFractional(e=new Date){let r=e.getTime();if(Number.isNaN(r))throw new we(`Invalid date: ${e}`,"INVALID_DATE");return e.toISOString().replace(/\.\d{3}Z$/,"Z")}static toUnixSeconds(e=new Date){let r=e.getTime();if(Number.isNaN(r))throw new we(`Invalid date: ${e}`,"INVALID_DATE");return Math.floor(e.getTime()/1e3)}static dateStringToTimestamp(e){let r=new Date(e);return Number.isNaN(r.getTime())?new Date(0):r}static blocktimeToTimestamp(e){return new Date(e*1e3)}static isValidXsdDateTime(e){if(!e)return!1;let r=/^-?(\d{4,})-(\d{2})-(\d{2})T(\d{2}):(\d{2}):(\d{2})(\.\d+)?(Z|[+-]\d{2}:\d{2})?$/,n=e.match(r);if(!n)return!1;let[,i,o,s,c,a,u,,d]=n,f=parseInt(i,10),h=parseInt(o,10),p=parseInt(s,10),g=parseInt(c,10),y=parseInt(a,10),x=parseInt(u,10);if(f===0||h<1||h>12)return!1;let S=[31,28,31,30,31,30,31,31,30,31,30,31],_=f%4===0&&f%100!==0||f%400===0,A=h===2&&_?29:S[h-1];if(p<1||p>A)return!1;if(g===24){if(y!==0||x!==0)return!1}else if(g>23)return!1;if(y>59||x>59)return!1;if(d&&d!=="Z"){let O=d.match(/^[+-](\d{2}):(\d{2})$/);if(O){let T=parseInt(O[1],10),M=parseInt(O[2],10);if(T>14||T===14&&M!==0||M>59)return!1}}return!0}};l();function U0(t,e,r){Object.defineProperty(t,e,{value:r,writable:!0,enumerable:!0,configurable:!0})}var ks=class{static isObject(e){if(e===null||typeof e!="object"||Array.isArray(e))return!1;let r=Object.getPrototypeOf(e);return r===Object.prototype||r===null}static isParsable(e){if(typeof e!="string")return!1;try{return JSON.parse(e),!0}catch{return!1}}static isUnprototyped(e){return e===null||typeof e!="object"?!1:Object.getPrototypeOf(e)===null}static normalize(e){return this.cloneInternal(e,{stripPrototypes:!0})}static copy(e){return{...e}}static clone(e){return typeof structuredClone=="function"?structuredClone(e):this.cloneInternal(e)}static cloneReplace(e,r,n){return this.cloneInternal(e,{transform:i=>typeof i=="string"?i.replace(r,n):i})}static deepEqual(e,r,n=new WeakMap,i=0){if(i>1024)throw new we("Maximum comparison depth exceeded","MAX_DEPTH_EXCEEDED");if(Object.is(e,r))return!0;if(typeof e!=typeof r||e===null||r===null||typeof e!="object")return!1;if(n.get(e)===r)return!0;if(n.set(e,r),ArrayBuffer.isView(e)&&ArrayBuffer.isView(r)){let c=new Uint8Array(e.buffer,e.byteOffset,e.byteLength),a=new Uint8Array(r.buffer,r.byteOffset,r.byteLength);if(c.byteLength!==a.byteLength)return!1;for(let u=0;u<c.byteLength;u++)if(c[u]!==a[u])return!1;return!0}if(e instanceof Date&&r instanceof Date)return e.getTime()===r.getTime();if(e instanceof Set&&r instanceof Set){if(e.size!==r.size)return!1;for(let c of e){let a=!1;for(let u of r)if(this.deepEqual(c,u,n,i+1)){a=!0;break}if(!a)return!1}return!0}if(e instanceof Map&&r instanceof Map){if(e.size!==r.size)return!1;for(let[c,a]of e){let u=!1;if(r.has(c))u=this.deepEqual(a,r.get(c),n,i+1);else for(let[d,f]of r)if(this.deepEqual(c,d,n,i+1)&&this.deepEqual(a,f,n,i+1)){u=!0;break}if(!u)return!1}return!0}if(Array.isArray(e)&&Array.isArray(r)){if(e.length!==r.length)return!1;for(let c=0;c<e.length;c++)if(!this.deepEqual(e[c],r[c],n,i+1))return!1;return!0}let o=Object.keys(e),s=Object.keys(r);if(o.length!==s.length)return!1;for(let c of o)if(!Object.prototype.hasOwnProperty.call(r,c)||!this.deepEqual(e[c],r[c],n,i+1))return!1;return!0}static deleteKeys(e,r){let n=new Set(r.map(o=>typeof o=="number"?o.toString():o)),i=o=>{if(Array.isArray(o))return o.map(s=>i(s));if(o&&typeof o=="object"){let s={};for(let c of Object.keys(o))n.has(c)||U0(s,c,i(o[c]));return s}return o};return i(e)}static sanitize(e){let r=n=>{if(Array.isArray(n))return n.filter(i=>i!==void 0).map(i=>r(i));if(n&&typeof n=="object"){let i={};for(let[o,s]of Object.entries(n)){let c=r(s);c!==void 0&&U0(i,o,c)}return i}return n};return r(e)}static cloneInternal(e,r={},n=new WeakMap,i=0){if(i>1024)throw new we("Maximum clone depth exceeded","MAX_DEPTH_EXCEEDED");let o=r.transform?r.transform(e):e;if(o!==e||typeof e!="object"||e===null)return o;if(n.has(e))throw new we("Cannot clone circular structure","CIRCULAR_STRUCTURE");if(Array.isArray(e)){let c=[];n.set(e,c);for(let a of e)c.push(this.cloneInternal(a,r,n,i+1));return c}if(ArrayBuffer.isView(e)){if(e instanceof DataView)return new DataView(e.buffer.slice(e.byteOffset,e.byteOffset+e.byteLength));if(typeof e.slice=="function")return e.slice()}if(e instanceof Date)return new Date(e.getTime());let s=r.stripPrototypes?{}:Object.create(Object.getPrototypeOf(e));n.set(e,s);for(let c of Object.keys(e))U0(s,c,this.cloneInternal(e[c],r,n,i+1));return s}};l();var Yt=class extends we{constructor(e,r="BeaconError",n){super(e,r,n)}},O0=class extends we{constructor(e,r="SingletonBeaconError",n){super(e,r,n)}},D0=class extends we{constructor(e,r="AggregateBeaconError",n){super(e,r,n)}},k0=class extends we{constructor(e,r="CASBeaconError",n){super(e,r,n)}},ia=class extends we{constructor(e,r="SMTBeaconError",n){super(e,r,n)}};l();l();l();l();l();l();l();l();l();l();l();l();l();l();l();var t6={bech32:"bcrt",pubKeyHash:111,scriptHash:196,wif:239};function Do(t){switch(t){case"bitcoin":return Xr;case"testnet3":case"testnet4":case"signet":case"mutinynet":return n0;case"regtest":return t6;default:throw new Error(`Unknown network "${t}"`)}}l();var oa=class{satsPerVbyte;constructor(e=5){if(e<0||!Number.isFinite(e))throw new Error(`Invalid satsPerVbyte: ${e}`);this.satsPerVbyte=e}async estimateFee(e){if(e<0||!Number.isFinite(e))throw new Error(`Invalid vsize: ${e}`);return BigInt(Math.ceil(e*this.satsPerVbyte))}};l();var C0="0000000000000000000000000000000000000000000000000000000000000000",L0="4a5e1e4baab89f3a32518a88c31bc87f618f76673e2cc77ab2127b7afdeda33b";l();var P0;(function(t){t[t.hex=0]="hex",t[t.json=1]="json",t[t.jsonext=2]="jsonext",t[t.jsonextprev=3]="jsonextprev"})(P0||(P0={}));var kl=new oa(5);var Ov=160,Dv=155,kv=240,Nv={p2pkh:kv,p2wpkh:Dv,p2tr:Ov},M0={p2pkh:34,p2wpkh:31,p2tr:43},K0={p2pkh:546,p2wpkh:294,p2tr:330};function $0(t,e){return Nv[t]-M0[t]+M0[e]}function H0(t,e){let r=Zr(e).decode(t);if(r.type==="pkh")return"p2pkh";if(r.type==="wpkh")return"p2wpkh";if(r.type==="tr")return"p2tr";throw new Yt(`Unsupported singleton beacon address type "${r.type}". Expected P2PKH, P2WPKH, or P2TR (taproot key-path).`,"UNSUPPORTED_BEACON_ADDRESS_TYPE",{address:t,kind:r.type})}function Cv(t,e,r){return t==="p2pkh"?ki(e,r).address:t==="p2wpkh"?Ts(e,r).address:_s(e.slice(1,33),void 0,r).address}function V0(t,e,r){if(!r||r===t)return t;try{Zr(e).decode(r)}catch{throw new Yt(`Invalid change address "${r}" for network "${e}".`,"INVALID_CHANGE_ADDRESS",{changeAddress:r,network:e})}return r}function Lv(t,e){try{return H0(t,e)}catch{return"p2tr"}}function q0(t){return Ze.encode(["RETURN",t])}var Nl=546;function i6(t){return t.status.confirmed===!0}function o6(t,e){if(t.status.block_height!==e.status.block_height)return t.status.block_height-e.status.block_height;let r=t.txid.localeCompare(e.txid);return r!==0?r:t.vout-e.vout}function Pv(t,e){if(!t.length)throw new Yt("No UTXOs found, please fund address!","UNFUNDED_BEACON_ADDRESS",{address:e});let r=t.filter(i6),n=r.filter(i=>i.value>Nl);if(!n.length){let i=r.length===0?`all ${t.length} UTXO(s) are unconfirmed`:`all ${r.length} confirmed UTXO(s) are at or below the ${Nl}-sat dust limit`;throw new Yt(`No spendable UTXO at beacon address: ${i}.`,"NO_SPENDABLE_BEACON_UTXO",{address:e,total:t.length,confirmed:r.length,dustLimit:Nl})}return[...n].sort(o6)[0]}async function Mv(t,e){let r=await e.rest.address.getUtxos(t),n=Pv(r,t),i=await e.rest.transaction.getHex(n.txid);return{utxo:n,prevTxBytes:_r(i)}}async function s6(t){let e=t.feeEstimator??kl,{utxo:r,prevTxBytes:n}=await Mv(t.beaconAddress,t.bitcoin),i=V0(t.beaconAddress,t.network,t.changeAddress),o=Qe.encode(Zr(t.network).decode(t.beaconAddress)),s=Lv(i,t.network),c=await e.estimateFee($0("p2tr",s));if(BigInt(r.value)<=c)throw new Yt(`UTXO value (${r.value}) insufficient to cover fee (${c}).`,"INSUFFICIENT_FUNDS",{address:t.beaconAddress,valueSats:r.value,feeSats:c});let a=new Rs({allowUnknownOutputs:!0});a.addInput({txid:r.txid,index:r.vout,nonWitnessUtxo:n,witnessUtxo:{amount:BigInt(r.value),script:o},tapInternalKey:t.internalPubkey});let u=BigInt(r.value)-c;return u>=BigInt(K0[s])&&a.addOutputAddress(i,u,t.network),a.addOutput({script:q0(t.signalBytes),amount:0n}),{tx:a,prevOutScripts:[o],prevOutValues:[BigInt(r.value)],beaconAddress:t.beaconAddress,changeAddress:i,utxo:r,feeSats:c,scriptKind:"p2tr"}}async function c6(t,e,r,n,i,o){let s=n.publicKey;if(r==="p2pkh"){let u=_o.ALL,d=t.preimageLegacy(e,i,u),f=n.sign(d,"ecdsa"),h=lt(f,new Uint8Array([u]));return t.updateInput(e,{partialSig:[[s,h]]},!0),t.finalize(),t.hex}if(r==="p2wpkh"){let u=Qe.decode(i);if(u.type!=="wpkh")throw new Yt(`Expected P2WPKH prev-output script, got "${u.type}".`,"PREVOUT_SCRIPT_MISMATCH",{kind:r,observedScriptType:u.type});let d=Qe.encode({type:"pkh",hash:u.hash}),f=_o.ALL,h=t.preimageWitnessV0(e,d,f,o),p=n.sign(h,"ecdsa"),g=lt(p,new Uint8Array([f]));return t.updateInput(e,{partialSig:[[s,g]]},!0),t.finalize(),t.hex}let c=t.preimageWitnessV1(e,[i],_o.DEFAULT,[o]),a=n.sign(c,"bip341");return t.updateInput(e,{tapKeySig:a}),t.finalize(),t.hex}var Ci=class{service;did;constructor(e,r){this.service=e,this.did=r}async buildSignAndBroadcast(e,r,n,i){let o=i?.feeEstimator??kl,s=this.service.serviceEndpoint.replace("bitcoin:",""),{utxo:c,prevTxBytes:a}=await Mv(s,n),u=await this.buildSinglePartyTx({signalBytes:e,beaconAddress:s,utxo:c,prevTxBytes:a,signer:r,bitcoin:n,feeEstimator:o,changeAddress:i?.changeAddress}),d=await this.signSinglePartyTx(u,r);return this.broadcastRawTx(n,d)}async buildSinglePartyTx(e){let r=e.bitcoin.data,n=e.signer.publicKey,i=H0(e.beaconAddress,r),o=V0(e.beaconAddress,r,e.changeAddress),s=Cv(i,n,r);if(s!==e.beaconAddress)throw new Yt(`Signer pubkey produces ${i.toUpperCase()} address "${s}", but beacon address is "${e.beaconAddress}".`,"SIGNER_KEY_MISMATCH",{kind:i,address:e.beaconAddress,derivedAddress:s});let c=Lv(o,r),a=await e.feeEstimator.estimateFee($0(i,c)),u=BigInt(e.utxo.value);if(u<=a)throw new Yt(`UTXO value (${e.utxo.value}) insufficient to cover fee (${a}).`,"INSUFFICIENT_FUNDS",{address:e.beaconAddress,valueSats:e.utxo.value,feeSats:a});let d=new Rs({allowUnknownOutputs:!0}),f;if(i==="p2pkh")f=ki(n,r).script,d.addInput({txid:e.utxo.txid,index:e.utxo.vout,nonWitnessUtxo:e.prevTxBytes});else if(i==="p2wpkh")f=Ts(n,r).script,d.addInput({txid:e.utxo.txid,index:e.utxo.vout,nonWitnessUtxo:e.prevTxBytes,witnessUtxo:{amount:u,script:f}});else{let p=n.slice(1,33);f=_s(p,void 0,r).script,d.addInput({txid:e.utxo.txid,index:e.utxo.vout,nonWitnessUtxo:e.prevTxBytes,witnessUtxo:{amount:u,script:f},tapInternalKey:p})}let h=u-a;return h>=BigInt(K0[c])&&d.addOutputAddress(o,h,r),d.addOutput({script:q0(e.signalBytes),amount:0n}),{tx:d,prevOutScripts:[f],prevOutValues:[u],beaconAddress:e.beaconAddress,changeAddress:o,utxo:e.utxo,feeSats:a,scriptKind:i}}async signSinglePartyTx(e,r){return c6(e.tx,0,e.scriptKind,r,e.prevOutScripts[0],e.prevOutValues[0])}async broadcastRawTx(e,r){return e.rest.transaction.send(r)}};l();var Yu=class extends Ci{constructor(e,r){super({...e,type:"CASBeacon"},r)}processSignals(e,r){let n=new Array,i=new Array,o=this.did;for(let s of e){let c=s.signalBytes,a=r.casMap.get(c);if(!a){i.push({kind:"NeedCASAnnouncement",announcementHash:c,beaconServiceId:this.service.id});continue}let u=a[o];if(!u)continue;let d=Qr(Os(u,"base64urlnopad"),"hex"),f=r.updateMap.get(d);if(!f){i.push({kind:"NeedSignedUpdate",updateHash:d,beaconServiceId:this.service.id});continue}n.push([f,s.blockMetadata])}return{updates:n,needs:i}}async broadcastSignal(e,r,n,i){let o=this.did,s=Gn(e),c={[o]:s},a=Ro(ir(c));i?.casPublish&&await i.casPublish(c);let u=await this.buildSignAndBroadcast(a,r,n,i);return{signedUpdate:e,txid:u,announcement:c}}};l();l();var Ju=class extends Ci{constructor(e,r){super({...e,type:"SingletonBeacon"},r)}processSignals(e,r){let n=new Array,i=new Array;for(let o of e){let s=o.signalBytes,c=r.updateMap.get(s);if(!c){i.push({kind:"NeedSignedUpdate",updateHash:s,beaconServiceId:this.service.id});continue}n.push([c,o.blockMetadata])}return{updates:n,needs:i}}async broadcastSignal(e,r,n,i){let o=Ro(ir(e)),s=await this.buildSignAndBroadcast(o,r,n,i);return{signedUpdate:e,txid:s}}};l();l();l();var a6=new Uint8Array(32),F0=1n<<BigInt(256),Kv=(()=>{let t=new Array(257),e=F0>>1n;for(let r=0;r<256;r++)t[r]=e,e>>=1n;return t[256]=0n,t})();l();l();l();function Xu(t){return t instanceof Uint8Array||ArrayBuffer.isView(t)&&t.constructor.name==="Uint8Array"}function Yn(t,e=""){if(!Number.isSafeInteger(t)||t<0){let r=e&&`"${e}" `;throw new Error(`${r}expected integer >= 0, got ${t}`)}}function Te(t,e,r=""){let n=Xu(t),i=t?.length,o=e!==void 0;if(!n||o&&i!==e){let s=r&&`"${r}" `,c=o?` of length ${e}`:"",a=n?`length=${i}`:`type=${typeof t}`;throw new Error(s+"expected Uint8Array"+c+", got "+a)}return t}function Cl(t){if(typeof t!="function"||typeof t.create!="function")throw new Error("Hash must wrapped by utils.createHasher");Yn(t.outputLen),Yn(t.blockLen)}function sa(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 Hv(t,e){Te(t,void 0,"digestInto() output");let r=e.outputLen;if(t.length<r)throw new Error('"digestInto() output" expected to be of length >='+r)}function Ns(...t){for(let e=0;e<t.length;e++)t[e].fill(0)}function Ll(t){return new DataView(t.buffer,t.byteOffset,t.byteLength)}function En(t,e){return t<<32-e|t>>>e}var Vv=typeof Uint8Array.from([]).toHex=="function"&&typeof Uint8Array.fromHex=="function",u6=Array.from({length:256},(t,e)=>e.toString(16).padStart(2,"0"));function Cs(t){if(Te(t),Vv)return t.toHex();let e="";for(let r=0;r<t.length;r++)e+=u6[t[r]];return e}var Li={_0:48,_9:57,A:65,F:70,a:97,f:102};function $v(t){if(t>=Li._0&&t<=Li._9)return t-Li._0;if(t>=Li.A&&t<=Li.F)return t-(Li.A-10);if(t>=Li.a&&t<=Li.f)return t-(Li.a-10)}function Ls(t){if(typeof t!="string")throw new Error("hex string expected, got "+typeof t);if(Vv)return Uint8Array.fromHex(t);let e=t.length,r=e/2;if(e%2)throw new Error("hex string expected, got unpadded hex of length "+e);let n=new Uint8Array(r);for(let i=0,o=0;i<r;i++,o+=2){let s=$v(t.charCodeAt(o)),c=$v(t.charCodeAt(o+1));if(s===void 0||c===void 0){let a=t[o]+t[o+1];throw new Error('hex string expected, got non-hex character "'+a+'" at index '+o)}n[i]=s*16+c}return n}function pr(...t){let e=0;for(let n=0;n<t.length;n++){let i=t[n];Te(i),e+=i.length}let r=new Uint8Array(e);for(let n=0,i=0;n<t.length;n++){let o=t[n];r.set(o,i),i+=o.length}return r}function qv(t,e={}){let r=(i,o)=>t(o).update(i).digest(),n=t(void 0);return r.outputLen=n.outputLen,r.blockLen=n.blockLen,r.create=i=>t(i),Object.assign(r,e),Object.freeze(r)}function Ps(t=32){let e=typeof globalThis=="object"?globalThis.crypto:null;if(typeof e?.getRandomValues!="function")throw new Error("crypto.getRandomValues must be defined");return e.getRandomValues(new Uint8Array(t))}var Fv=t=>({oid:Uint8Array.from([6,9,96,134,72,1,101,3,4,2,t])});var W0=BigInt(0),j0=BigInt(1);function Zu(t,e=""){if(typeof t!="boolean"){let r=e&&`"${e}" `;throw new Error(r+"expected boolean, got type="+typeof t)}return t}function jv(t){if(typeof t=="bigint"){if(!Pl(t))throw new Error("positive bigint expected, got "+t)}else Yn(t);return t}function Qu(t){let e=jv(t).toString(16);return e.length&1?"0"+e:e}function Wv(t){if(typeof t!="string")throw new Error("hex string expected, got "+typeof t);return t===""?W0:BigInt("0x"+t)}function ko(t){return Wv(Cs(t))}function G0(t){return Wv(Cs(d6(Te(t)).reverse()))}function Ml(t,e){Yn(e),t=jv(t);let r=Ls(t.toString(16).padStart(e*2,"0"));if(r.length!==e)throw new Error("number too large");return r}function z0(t,e){return Ml(t,e).reverse()}function ca(t,e){if(t.length!==e.length)return!1;let r=0;for(let n=0;n<t.length;n++)r|=t[n]^e[n];return r===0}function d6(t){return Uint8Array.from(t)}function Gv(t){return Uint8Array.from(t,(e,r)=>{let n=e.charCodeAt(0);if(e.length!==1||n>127)throw new Error(`string contains non-ASCII character "${t[r]}" with code ${n} at position ${r}`);return n})}var Pl=t=>typeof t=="bigint"&&W0<=t;function f6(t,e,r){return Pl(t)&&Pl(e)&&Pl(r)&&e<=t&&t<r}function zv(t,e,r,n){if(!f6(e,r,n))throw new Error("expected valid "+t+": "+r+" <= n < "+n+", got "+e)}function Y0(t){let e;for(e=0;t>W0;t>>=j0,e+=1);return e}var ed=t=>(j0<<BigInt(t))-j0;function Yv(t,e,r){if(Yn(t,"hashLen"),Yn(e,"qByteLen"),typeof r!="function")throw new Error("hmacFn must be a function");let n=x=>new Uint8Array(x),i=Uint8Array.of(),o=Uint8Array.of(0),s=Uint8Array.of(1),c=1e3,a=n(t),u=n(t),d=0,f=()=>{a.fill(1),u.fill(0),d=0},h=(...x)=>r(u,pr(a,...x)),p=(x=i)=>{u=h(o,x),a=h(),x.length!==0&&(u=h(s,x),a=h())},g=()=>{if(d++>=c)throw new Error("drbg: tried max amount of iterations");let x=0,S=[];for(;x<e;){a=h();let _=a.slice();S.push(_),x+=a.length}return pr(...S)};return(x,S)=>{f(),p(x);let _;for(;!(_=S(g()));)p();return f(),_}}function td(t,e={},r={}){if(!t||typeof t!="object")throw new Error("expected valid options object");function n(o,s,c){let a=t[o];if(c&&a===void 0)return;let u=typeof a;if(u!==s||a===null)throw new Error(`param "${o}" is invalid: expected ${s}, got ${u}`)}let i=(o,s)=>Object.entries(o).forEach(([c,a])=>n(c,a,s));i(e,!1),i(r,!0)}function J0(t){let e=new WeakMap;return(r,...n)=>{let i=e.get(r);if(i!==void 0)return i;let o=t(r,...n);return e.set(r,o),o}}function X0(t){return t.length===32}function Kl(t){if(!X0(t))throw new RangeError(`Invalid hash: expected ${32} bytes, got ${t.length}`)}function pt(...t){return ke(lt(...t))}function rd(t){Kl(t);let e=0n;for(let r of t)e=e<<8n|BigInt(r);return e}function Z0(t){let e=new Uint8Array(32),r=t;for(let n=31;n>=0;n--)e[n]=Number(r&0xffn),r>>=8n;if(r!==0n)throw new RangeError("Value exceeds 256 bits");return e}function Q0(t){Kl(t);let e="";for(let r of t)e+=r.toString(16).padStart(2,"0");return e}function eg(t,e){return!X0(t)||!X0(e)?!1:ca(t,e)}function aa(t){return Kl(t),Gc.encode(t)}function Jn(t){let e=Gc.decode(t);if(e.length!==32)throw new RangeError(`Invalid base64url hash: expected ${32} decoded bytes, got ${e.length}`);return e}l();l();var Jv;(function(t){t[t.Pending=0]="Pending",t[t.Valid=1]="Valid",t[t.Invalid=2]="Invalid"})(Jv||(Jv={}));l();l();var No=256;function ua(t,e){return Number(t>>BigInt(e)&1n)}var Xv=(()=>{let t=new Array(No+1),e=new Uint8Array(32);for(let r=0;r<=No;r++)e=pt(e,e),t[r]=e;return t})();function $l(t,e){if(t.length===0)return Xv[e];if(e===0)return t[0].leaf;let r=No-e,n=[],i=[];for(let o of t)(ua(o.index,r)===0?n:i).push(o);return pt($l(n,e-1),$l(i,e-1))}function Zv(t){return $l(t,No)}function Qv(t,e){let r=0n,n=[];for(let i=1;i<=No;i++){let o=No-i,s=[];for(let c of t){if(c.index===e)continue;let a=!0;for(let u=0;u<o;u++)if(ua(c.index,u)!==ua(e,u)){a=!1;break}a&&ua(c.index,o)!==ua(e,o)&&s.push(c)}s.length===0?r|=1n<<BigInt(o):n.push($l(s,i-1))}return{collapsed:r,hashes:n}}function e1(t,e,r,n,i){let o=n,s=0;for(let c=0;c<No;c++){let a=No-1-c,u;if((t>>BigInt(a)&1n)===1n)u=Xv[c];else{if(s>=e.length)return!1;u=e[s++]}o=ua(r,a)===1?pt(u,o):pt(o,u)}return s===e.length&&eg(o,i)}l();var l6=new TextEncoder;function Hl(t){return rd(pt(l6.encode(t)))}function t1(t,e){return pt(pt(t),pt(e))}function r1(t){return pt(pt(t))}l();function n1(t,e,r){let n={id:aa(t),collapsed:aa(Z0(e.collapsed)),hashes:e.hashes.map(i=>aa(i))};return r?.nonce&&(n.nonce=aa(r.nonce)),r?.updateId&&(n.updateId=aa(r.updateId)),n}function h6(t){let e={rootHash:Jn(t.id),collapsed:rd(Jn(t.collapsed)),hashes:t.hashes.map(r=>Jn(r))};return t.nonce&&(e.nonce=Jn(t.nonce)),t.updateId&&(e.updateId=Jn(t.updateId)),e}function i1(t,e,r){let{rootHash:n,collapsed:i,hashes:o}=h6(t);return e1(i,o,e,r,n)}l();var Vl=class{#e=new Map;#t=new Map;#n=null;#r=null;constructor(e=!0){}addEntries(e){for(let r of e){let n=Hl(r.did);if(this.#e.has(n))throw new RangeError(`Duplicate DID index for: ${r.did}`);this.#e.set(n,r),this.#t.set(r.did,n)}this.#n=null,this.#r=null}finalize(){let e=[];for(let[r,n]of this.#e){let i=n.signedUpdate!==void 0?t1(n.nonce,n.signedUpdate):r1(n.nonce);e.push({index:r,leaf:i})}this.#n=e,this.#r=Zv(e)}get rootHash(){if(this.#r===null)throw new Error("Tree not finalized: call finalize() first");return this.#r}proof(e){let r=this.#t.get(e);if(r===void 0)throw new RangeError(`DID not in tree: ${e}`);if(this.#n===null||this.#r===null)throw new Error("Tree not finalized: call finalize() first");let n=this.#e.get(r),i=Qv(this.#n,r),o=n.signedUpdate!==void 0?pt(n.signedUpdate):void 0;return n1(this.#r,i,{nonce:n.nonce,updateId:o})}reset(){this.#n=null,this.#r=null}};var nd=class extends Ci{constructor(e,r){super({...e,type:"SMTBeacon"},r)}processSignals(e,r){let n=new Array,i=new Array,o=this.did;for(let s of e){let c=r.smtMap.get(s.signalBytes);if(!c){i.push({kind:"NeedSMTProof",smtRootHash:s.signalBytes,beaconServiceId:this.service.id});continue}if(!c.nonce)throw new ia("SMT proof missing required nonce field.","INVALID_SMT_PROOF",{smtProof:c,did:o});let a=Hl(o),u=Jn(c.nonce),d=c.updateId?pt(pt(u),Jn(c.updateId)):pt(pt(u));if(!i1(c,a,d))throw new ia("SMT proof verification failed.","INVALID_SMT_PROOF",{smtProof:c,did:o});if(!c.updateId)continue;let h=Q0(Jn(c.updateId)),p=r.updateMap.get(h);if(!p){i.push({kind:"NeedSignedUpdate",updateHash:h,beaconServiceId:this.service.id});continue}n.push([p,s.blockMetadata])}return{updates:n,needs:i}}async broadcastSignal(e,r,n,i){let o=this.did,s=new TextEncoder().encode(ir(e)),c=Ir(32),a=new Vl;a.addEntries([{did:o,nonce:c,signedUpdate:s}]),a.finalize();let u=a.proof(o),d=await this.buildSignAndBroadcast(a.rootHash,r,n,i);return{signedUpdate:e,txid:d,proof:u}}};var Ms=class{static establish(e,r){switch(e.type){case"SingletonBeacon":return new Ju(e,r);case"CASBeacon":return new Yu(e,r);case"SMTBeacon":return new nd(e,r);default:throw new we("Invalid Beacon Type","INVALID_BEACON_ERROR",e)}}};l();l();l();l();l();l();var Mi;(function(t){t.authentication="authentication",t.assertionMethod="assertionMethod",t.keyAgreement="keyAgreement",t.capabilityInvocation="capabilityInvocation",t.capabilityDelegation="capabilityDelegation"})(Mi||(Mi={}));l();var yt={"@context":"https://w3id.org/did-resolution/v1",didResolutionMetadata:{},didDocument:null,didDocumentMetadata:{}};l();var me=class t{constructor({method:e,id:r,path:n,query:i,fragment:o,params:s}){this.uri=`did:${e}:${r}`,this.method=e,this.id=r,this.path=n,this.query=i,this.fragment=o,this.params=s}static parse(e){if(!e)return null;let r=t.DID_URI_PATTERN.exec(e);if(!r||!r.groups)return null;let{method:n,id:i,path:o,query:s,fragment:c}=r.groups,a={uri:`did:${n}:${i}`,method:n,id:i};if(o&&(a.path=o),s&&(a.query=s.slice(1)),c&&(a.fragment=c.slice(1)),s){let u={},d=s.slice(1).split("&");for(let f of d){let[h,p]=f.split("=");u[h]=p}a.params=u}return a}};me.METHOD_PATTERN="([a-z0-9]+)";me.PCT_ENCODED_PATTERN="(?:%[0-9a-fA-F]{2})";me.ID_CHAR_PATTERN=`(?:[a-zA-Z0-9._-]|${me.PCT_ENCODED_PATTERN})`;me.METHOD_ID_PATTERN=`((?:${me.ID_CHAR_PATTERN}*:)*(${me.ID_CHAR_PATTERN}+))`;me.PATH_PATTERN="(/[^#?]*)?";me.QUERY_PATTERN="([?][^#]*)?";me.FRAGMENT_PATTERN="(#.*)?";me.DID_URI_PATTERN=new RegExp(`^did:(?<method>${me.METHOD_PATTERN}):(?<id>${me.METHOD_ID_PATTERN})(?<path>${me.PATH_PATTERN})(?<query>${me.QUERY_PATTERN})(?<fragment>${me.FRAGMENT_PATTERN})$`);l();var re=class t extends Error{constructor(e,r){super(`${e}: ${r}`),this.code=e,this.name="DidError",Object.setPrototypeOf(this,new.target.prototype),Error.captureStackTrace&&Error.captureStackTrace(this,t)}},ie;(function(t){t.InvalidDid="invalidDid",t.MethodNotSupported="methodNotSupported",t.InternalError="internalError",t.InvalidDidDocument="invalidDidDocument",t.InvalidDidDocumentLength="invalidDidDocumentLength",t.InvalidDidUrl="invalidDidUrl",t.InvalidPreviousDidProof="invalidPreviousDidProof",t.InvalidPublicKey="invalidPublicKey",t.InvalidPublicKeyLength="invalidPublicKeyLength",t.InvalidPublicKeyType="invalidPublicKeyType",t.InvalidSignature="invalidSignature",t.NotFound="notFound",t.RepresentationNotSupported="representationNotSupported",t.UnsupportedPublicKeyType="unsupportedPublicKeyType"})(ie||(ie={}));l();l();l();l();l();var g6=Mn(s1(),1);l();l();l();l();var $H=new Uint8Array(0);function c1(t,e){if(t===e)return!0;if(t.byteLength!==e.byteLength)return!1;for(let r=0;r<t.byteLength;r++)if(t[r]!==e[r])return!1;return!0}function da(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")}l();function w6(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 c=t.length,a=t.charAt(0),u=Math.log(c)/Math.log(256),d=Math.log(256)/Math.log(c);function f(g){if(g instanceof Uint8Array||(ArrayBuffer.isView(g)?g=new Uint8Array(g.buffer,g.byteOffset,g.byteLength):Array.isArray(g)&&(g=Uint8Array.from(g))),!(g instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(g.length===0)return"";for(var y=0,x=0,S=0,_=g.length;S!==_&&g[S]===0;)S++,y++;for(var A=(_-S)*d+1>>>0,O=new Uint8Array(A);S!==_;){for(var T=g[S],M=0,q=A-1;(T!==0||M<x)&&q!==-1;q--,M++)T+=256*O[q]>>>0,O[q]=T%c>>>0,T=T/c>>>0;if(T!==0)throw new Error("Non-zero carry");x=M,S++}for(var j=A-x;j!==A&&O[j]===0;)j++;for(var $=a.repeat(y);j<A;++j)$+=t.charAt(O[j]);return $}function h(g){if(typeof g!="string")throw new TypeError("Expected String");if(g.length===0)return new Uint8Array;var y=0;if(g[y]!==" "){for(var x=0,S=0;g[y]===a;)x++,y++;for(var _=(g.length-y)*u+1>>>0,A=new Uint8Array(_);g[y];){var O=r[g.charCodeAt(y)];if(O===255)return;for(var T=0,M=_-1;(O!==0||T<S)&&M!==-1;M--,T++)O+=c*A[M]>>>0,A[M]=O%256>>>0,O=O/256>>>0;if(O!==0)throw new Error("Non-zero carry");S=T,y++}if(g[y]!==" "){for(var q=_-S;q!==_&&A[q]===0;)q++;for(var j=new Uint8Array(x+(_-q)),$=x;q!==_;)j[$++]=A[q++];return j}}}function p(g){var y=h(g);if(y)return y;throw new Error(`Non-${e} character`)}return{encode:f,decodeUnsafe:h,decode:p}}var b6=w6,x6=b6,a1=x6;var ig=class{name;prefix;baseEncode;constructor(e,r,n){this.name=e,this.prefix=r,this.baseEncode=n}encode(e){if(e instanceof Uint8Array)return`${this.prefix}${this.baseEncode(e)}`;throw Error("Unknown type, must be binary type")}},og=class{name;prefix;baseDecode;prefixCodePoint;constructor(e,r,n){if(this.name=e,this.prefix=r,r.codePointAt(0)===void 0)throw new Error("Invalid prefix character");this.prefixCodePoint=r.codePointAt(0),this.baseDecode=n}decode(e){if(typeof e=="string"){if(e.codePointAt(0)!==this.prefixCodePoint)throw Error(`Unable to decode multibase string ${JSON.stringify(e)}, ${this.name} decoder only supports inputs prefixed with ${this.prefix}`);return this.baseDecode(e.slice(this.prefix.length))}else throw Error("Can only multibase decode strings")}or(e){return u1(this,e)}},sg=class{decoders;constructor(e){this.decoders=e}or(e){return u1(this,e)}decode(e){let r=e[0],n=this.decoders[r];if(n!=null)return n.decode(e);throw RangeError(`Unable to decode multibase string ${JSON.stringify(e)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`)}};function u1(t,e){return new sg({...t.decoders??{[t.prefix]:t},...e.decoders??{[e.prefix]:e}})}var cg=class{name;prefix;baseEncode;baseDecode;encoder;decoder;constructor(e,r,n,i){this.name=e,this.prefix=r,this.baseEncode=n,this.baseDecode=i,this.encoder=new ig(e,r,n),this.decoder=new og(e,r,i)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}};function d1({name:t,prefix:e,encode:r,decode:n}){return new cg(t,e,r,n)}function ag({name:t,prefix:e,alphabet:r}){let{encode:n,decode:i}=a1(r,t);return d1({prefix:e,name:t,encode:n,decode:o=>da(i(o))})}function E6(t,e,r,n){let i={};for(let d=0;d<e.length;++d)i[e[d]]=d;let o=t.length;for(;t[o-1]==="=";)--o;let s=new Uint8Array(o*r/8|0),c=0,a=0,u=0;for(let d=0;d<o;++d){let f=i[t[d]];if(f===void 0)throw new SyntaxError(`Non-${n} character`);a=a<<r|f,c+=r,c>=8&&(c-=8,s[u++]=255&a>>c)}if(c>=r||255&a<<8-c)throw new SyntaxError("Unexpected end of data");return s}function v6(t,e,r){let n=e[e.length-1]==="=",i=(1<<r)-1,o="",s=0,c=0;for(let a=0;a<t.length;++a)for(c=c<<8|t[a],s+=8;s>r;)s-=r,o+=e[i&c>>s];if(s!==0&&(o+=e[i&c<<r-s]),n)for(;o.length*r&7;)o+="=";return o}function or({name:t,prefix:e,bitsPerChar:r,alphabet:n}){return d1({prefix:e,name:t,encode(i){return v6(i,n,r)},decode(i){return E6(i,n,r,t)}})}var id=or({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),YH=or({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),JH=or({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),XH=or({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),ZH=or({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),QH=or({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),eV=or({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),tV=or({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),ug=or({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});l();var yr=ag({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),oV=ag({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});l();var uV=or({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),dV=or({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),Xn=or({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),fV=or({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});l();function f1(t){return t.byteOffset!==0||t.byteLength!==t.buffer.byteLength}function l1(t){return typeof t!="object"||t===null?!1:typeof t[Symbol.asyncIterator]=="function"}function fa(t){let r=Object.prototype.toString.call(t).match(/\s([a-zA-Z0-9]+)/),[n,i]=r;return i}var od=function(t,e,r,n){function i(o){return o instanceof r?o:new r(function(s){s(o)})}return new(r||(r=Promise))(function(o,s){function c(d){try{u(n.next(d))}catch(f){s(f)}}function a(d){try{u(n.throw(d))}catch(f){s(f)}}function u(d){d.done?o(d.value):i(d.value).then(c,a)}u((n=n.apply(t,e||[])).next())})},h1=function(t){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var e=t[Symbol.asyncIterator],r;return e?e.call(t):(t=typeof __values=="function"?__values(t):t[Symbol.iterator](),r={},n("next"),n("throw"),n("return"),r[Symbol.asyncIterator]=function(){return this},r);function n(o){r[o]=t[o]&&function(s){return new Promise(function(c,a){s=t[o](s),i(c,a,s.done,s.value)})}}function i(o,s,c,a){Promise.resolve(a).then(function(u){o({value:u,done:c})},s)}},Fl=new TextEncoder,Ks=new TextDecoder,ne=class t{constructor(e,r){this.data=e,this.format=r}static arrayBuffer(e){return new t(e,"ArrayBuffer")}static asyncIterable(e){if(!l1(e))throw new TypeError("Input must be of type AsyncIterable.");return new t(e,"AsyncIterable")}static base32Z(e){return new t(e,"Base32Z")}static base58Btc(e){return new t(e,"Base58Btc")}static base64Url(e){return new t(e,"Base64Url")}static bufferSource(e){return new t(e,"BufferSource")}static hex(e){if(typeof e!="string")throw new TypeError("Hex input must be a string.");if(e.length%2!==0)throw new TypeError("Hex input must have an even number of characters.");return new t(e,"Hex")}static multibase(e){return new t(e,"Multibase")}static object(e){return new t(e,"Object")}static string(e){return new t(e,"String")}static uint8Array(e){return new t(e,"Uint8Array")}toArrayBuffer(){switch(this.format){case"Base58Btc":return yr.baseDecode(this.data).buffer;case"Base64Url":return Xn.baseDecode(this.data).buffer;case"BufferSource":{if(fa(this.data)==="ArrayBuffer")return this.data;if(ArrayBuffer.isView(this.data))return f1(this.data)?this.data.buffer.slice(this.data.byteOffset,this.data.byteOffset+this.data.byteLength):this.data.buffer;throw new TypeError(`${this.format} value is not of type: ArrayBuffer, DataView, or TypedArray.`)}case"Hex":return this.toUint8Array().buffer;case"String":return this.toUint8Array().buffer;case"Uint8Array":return this.data.buffer;default:throw new TypeError(`Conversion from ${this.format} to ArrayBuffer is not supported.`)}}toArrayBufferAsync(){return od(this,void 0,void 0,function*(){switch(this.format){case"AsyncIterable":return yield(yield this.toBlobAsync()).arrayBuffer();default:throw new TypeError(`Asynchronous conversion from ${this.format} to ArrayBuffer is not supported.`)}})}toBase32Z(){switch(this.format){case"Uint8Array":return ug.baseEncode(this.data);default:throw new TypeError(`Conversion from ${this.format} to Base64Z is not supported.`)}}toBase58Btc(){switch(this.format){case"ArrayBuffer":{let e=new Uint8Array(this.data);return yr.baseEncode(e)}case"Multibase":return this.data.substring(1);case"Uint8Array":return yr.baseEncode(this.data);default:throw new TypeError(`Conversion from ${this.format} to Base58Btc is not supported.`)}}toBase64Url(){switch(this.format){case"ArrayBuffer":{let e=new Uint8Array(this.data);return Xn.baseEncode(e)}case"BufferSource":{let e=this.toUint8Array();return Xn.baseEncode(e)}case"Object":{let e=JSON.stringify(this.data),r=Fl.encode(e);return Xn.baseEncode(r)}case"String":{let e=Fl.encode(this.data);return Xn.baseEncode(e)}case"Uint8Array":return Xn.baseEncode(this.data);default:throw new TypeError(`Conversion from ${this.format} to Base64Url is not supported.`)}}toBlobAsync(){return od(this,void 0,void 0,function*(){var e,r,n,i;switch(this.format){case"AsyncIterable":{let a=[];try{for(var o=!0,s=h1(this.data),c;c=yield s.next(),e=c.done,!e;o=!0){i=c.value,o=!1;let d=i;a.push(d)}}catch(d){r={error:d}}finally{try{!o&&!e&&(n=s.return)&&(yield n.call(s))}finally{if(r)throw r.error}}return new Blob(a)}default:throw new TypeError(`Asynchronous conversion from ${this.format} to Blob is not supported.`)}})}toHex(){let e=Array.from({length:256},(r,n)=>n.toString(16).padStart(2,"0"));switch(this.format){case"ArrayBuffer":{let r=this.toUint8Array();return t.uint8Array(r).toHex()}case"Base64Url":{let r=this.toUint8Array();return t.uint8Array(r).toHex()}case"Uint8Array":{let r="";for(let n=0;n<this.data.length;n++)r+=e[this.data[n]];return r}default:throw new TypeError(`Conversion from ${this.format} to Hex is not supported.`)}}toMultibase(){switch(this.format){case"Base58Btc":return`z${this.data}`;default:throw new TypeError(`Conversion from ${this.format} to Multibase is not supported.`)}}toObject(){switch(this.format){case"Base64Url":{let e=Xn.baseDecode(this.data),r=Ks.decode(e);return JSON.parse(r)}case"String":return JSON.parse(this.data);case"Uint8Array":{let e=Ks.decode(this.data);return JSON.parse(e)}default:throw new TypeError(`Conversion from ${this.format} to Object is not supported.`)}}toObjectAsync(){return od(this,void 0,void 0,function*(){switch(this.format){case"AsyncIterable":{let e=yield this.toStringAsync();return JSON.parse(e)}default:throw new TypeError(`Asynchronous conversion from ${this.format} to Object is not supported.`)}})}toString(){switch(this.format){case"ArrayBuffer":return Ks.decode(this.data);case"Base64Url":{let e=Xn.baseDecode(this.data);return Ks.decode(e)}case"Object":return JSON.stringify(this.data);case"Uint8Array":return Ks.decode(this.data);default:throw new TypeError(`Conversion from ${this.format} to String is not supported.`)}}toStringAsync(){return od(this,void 0,void 0,function*(){var e,r,n,i;switch(this.format){case"AsyncIterable":{let a="";try{for(var o=!0,s=h1(this.data),c;c=yield s.next(),e=c.done,!e;o=!0){i=c.value,o=!1;let u=i;typeof u=="string"?a+=u:a+=Ks.decode(u,{stream:!0})}}catch(u){r={error:u}}finally{try{!o&&!e&&(n=s.return)&&(yield n.call(s))}finally{if(r)throw r.error}}return a+=Ks.decode(void 0,{stream:!1}),a}default:throw new TypeError(`Asynchronous conversion from ${this.format} to String is not supported.`)}})}toUint8Array(){switch(this.format){case"ArrayBuffer":return new Uint8Array(this.data);case"Base32Z":return ug.baseDecode(this.data);case"Base58Btc":return yr.baseDecode(this.data);case"Base64Url":return Xn.baseDecode(this.data);case"BufferSource":{let e=fa(this.data);if(e==="Uint8Array")return this.data;if(e==="ArrayBuffer")return new Uint8Array(this.data);if(ArrayBuffer.isView(this.data))return new Uint8Array(this.data.buffer,this.data.byteOffset,this.data.byteLength);throw new TypeError(`${this.format} value is not of type: ArrayBuffer, DataView, or TypedArray.`)}case"Hex":{let e=new Uint8Array(this.data.length/2);for(let r=0;r<this.data.length;r+=2){let n=parseInt(this.data.substring(r,r+2),16);if(isNaN(n))throw new TypeError("Input is not a valid hexadecimal string.");e[r/2]=n}return e}case"Object":{let e=JSON.stringify(this.data);return Fl.encode(e)}case"String":return Fl.encode(this.data);default:throw new TypeError(`Conversion from ${this.format} to Uint8Array is not supported.`)}}toUint8ArrayAsync(){return od(this,void 0,void 0,function*(){switch(this.format){case"AsyncIterable":{let e=yield this.toArrayBufferAsync();return new Uint8Array(e)}default:throw new TypeError(`Asynchronous conversion from ${this.format} to Uint8Array is not supported.`)}})}};l();var sd;(function(t){t.Debug="debug",t.Silent="silent"})(sd||(sd={}));var dg=class{constructor(){this.logLevel=sd.Silent}setLogLevel(e){this.logLevel=e}log(e){this.info(e)}info(e){this.logLevel!==sd.Silent&&console.info(e)}error(e){this.logLevel!==sd.Silent&&console.error(e)}},S6=new dg;typeof window<"u"&&(window.web5logger=S6);l();l();l();l();var Ki={};Su(Ki,{decode:()=>la,encodeTo:()=>$s,encodingLength:()=>Hs});l();l();var A6=g1,p1=128,T6=127,_6=~T6,I6=Math.pow(2,31);function g1(t,e,r){e=e||[],r=r||0;for(var n=r;t>=I6;)e[r++]=t&255|p1,t/=128;for(;t&_6;)e[r++]=t&255|p1,t>>>=7;return e[r]=t|0,g1.bytes=r-n+1,e}var B6=fg,R6=128,y1=127;function fg(t,n){var r=0,n=n||0,i=0,o=n,s,c=t.length;do{if(o>=c)throw fg.bytes=0,new RangeError("Could not decode varint");s=t[o++],r+=i<28?(s&y1)<<i:(s&y1)*Math.pow(2,i),i+=7}while(s>=R6);return fg.bytes=o-n,r}var U6=Math.pow(2,7),O6=Math.pow(2,14),D6=Math.pow(2,21),k6=Math.pow(2,28),N6=Math.pow(2,35),C6=Math.pow(2,42),L6=Math.pow(2,49),P6=Math.pow(2,56),M6=Math.pow(2,63),K6=function(t){return t<U6?1:t<O6?2:t<D6?3:t<k6?4:t<N6?5:t<C6?6:t<L6?7:t<P6?8:t<M6?9:10},$6={encode:A6,decode:B6,encodingLength:K6},H6=$6,cd=H6;function la(t,e=0){return[cd.decode(t,e),cd.decode.bytes]}function $s(t,e,r=0){return cd.encode(t,e,r),e}function Hs(t){return cd.encodingLength(t)}function lg(t,e){let r=e.byteLength,n=Hs(t),i=n+Hs(r),o=new Uint8Array(i+r);return $s(t,o,0),$s(r,o,n),o.set(e,i),new ha(t,r,e,o)}function m1(t){let e=da(t),[r,n]=la(e),[i,o]=la(e.subarray(n)),s=e.subarray(n+o);if(s.byteLength!==i)throw new Error("Incorrect length");return new ha(r,i,s,e)}function w1(t,e){if(t===e)return!0;{let r=e;return t.code===r.code&&t.size===r.size&&r.bytes instanceof Uint8Array&&c1(t.bytes,r.bytes)}}var ha=class{code;size;digest;bytes;constructor(e,r,n,i){this.code=e,this.size=r,this.digest=n,this.bytes=i}};l();function b1(t,e){let{bytes:r,version:n}=t;switch(n){case 0:return q6(r,pg(t),e??yr.encoder);default:return F6(r,pg(t),e??id.encoder)}}var x1=new WeakMap;function pg(t){let e=x1.get(t);if(e==null){let r=new Map;return x1.set(t,r),r}return e}var yg=class t{code;version;multihash;bytes;"/";constructor(e,r,n,i){this.code=r,this.version=e,this.multihash=n,this.bytes=i,this["/"]=i}get asCID(){return this}get byteOffset(){return this.bytes.byteOffset}get byteLength(){return this.bytes.byteLength}toV0(){switch(this.version){case 0:return this;case 1:{let{code:e,multihash:r}=this;if(e!==ad)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(r.code!==j6)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=lg(e,r);return t.createV1(this.code,n)}case 1:return this;default:throw Error(`Can not convert CID version ${this.version} to version 1. This is a bug please report`)}}equals(e){return t.equals(this,e)}static equals(e,r){let n=r;return n!=null&&e.code===n.code&&e.version===n.version&&w1(e.multihash,n.multihash)}toString(e){return b1(this,e)}toJSON(){return{"/":b1(this)}}link(){return this}[Symbol.toStringTag]="CID";[Symbol.for("nodejs.util.inspect.custom")](){return`CID(${this.toString()})`}static asCID(e){if(e==null)return null;let r=e;if(r instanceof t)return r;if(r["/"]!=null&&r["/"]===r.bytes||r.asCID===r){let{version:n,code:i,multihash:o,bytes:s}=r;return new t(n,i,o,s??E1(n,i,o.bytes))}else if(r[W6]===!0){let{version:n,multihash:i,code:o}=r,s=m1(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!==ad)throw new Error(`Version 0 CID must use dag-pb (code: ${ad}) block encoding`);return new t(e,r,n,n.bytes)}case 1:{let i=E1(e,r,n.bytes);return new t(e,r,n,i)}default:throw new Error("Invalid version")}}static createV0(e){return t.create(0,ad,e)}static createV1(e,r){return t.create(1,e,r)}static decode(e){let[r,n]=t.decodeFirst(e);if(n.length!==0)throw new Error("Incorrect length");return r}static decodeFirst(e){let r=t.inspectBytes(e),n=r.size-r.multihashSize,i=da(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 ha(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[f,h]=la(e.subarray(r));return r+=h,f},i=n(),o=ad;if(i===18?(i=0,r=0):o=n(),i!==0&&i!==1)throw new RangeError(`Invalid CID version ${i}`);let s=r,c=n(),a=n(),u=r+a,d=u-s;return{version:i,codec:o,multihashCode:c,digestSize:a,multihashSize:d,size:u}}static parse(e,r){let[n,i]=V6(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 pg(o).set(n,e),o}};function V6(t,e){switch(t[0]){case"Q":{let r=e??yr;return[yr.prefix,r.decode(`${yr.prefix}${t}`)]}case yr.prefix:{let r=e??yr;return[yr.prefix,r.decode(t)]}case id.prefix:{let r=e??id;return[id.prefix,r.decode(t)]}default:{if(e==null)throw Error("To parse non base32 or base58btc encoded CID multibase decoder must be provided");return[t[0],e.decode(t)]}}}function q6(t,e,r){let{prefix:n}=r;if(n!==yr.prefix)throw Error(`Cannot string encode V0 in ${r.name} encoding`);let i=e.get(n);if(i==null){let o=r.encode(t).slice(1);return e.set(n,o),o}else return i}function F6(t,e,r){let{prefix:n}=r,i=e.get(n);if(i==null){let o=r.encode(t);return e.set(n,o),o}else return i}var ad=112,j6=18;function E1(t,e,r){let n=Hs(t),i=n+Hs(e),o=new Uint8Array(i+r.byteLength);return $s(t,o,0),$s(e,o,n),o.set(r,i),o}var W6=Symbol.for("@ipld/js-cid/CID");l();l();l();l();l();l();var Jt=class t{static addPrefix(e){var r;let{code:n,data:i,name:o}=e;if(!(o?!n:n))throw new Error("Either 'name' or 'code' must be defined, but not both.");if(n=t.codeToName.has(n)?n:t.nameToCode.get(o),n===void 0)throw new Error(`Unsupported multicodec: ${(r=e.name)!==null&&r!==void 0?r:e.code}`);let s=Ki.encodingLength(n),c=new Uint8Array(s+i.byteLength);return c.set(i,s),Ki.encodeTo(n,c),c}static getCodeFromData(e){let{prefixedData:r}=e,[n,i]=Ki.decode(r);return n}static getCodeFromName(e){let{name:r}=e,n=t.nameToCode.get(r);if(n===void 0)throw new Error(`Unsupported multicodec: ${r}`);return n}static getNameFromCode(e){let{code:r}=e,n=t.codeToName.get(r);if(n===void 0)throw new Error(`Unsupported multicodec: ${r}`);return n}static registerCodec(e){t.codeToName.set(e.code,e.name),t.nameToCode.set(e.name,e.code)}static removePrefix(e){let{prefixedData:r}=e,[n,i]=Ki.decode(r),o=t.codeToName.get(n);if(o===void 0)throw new Error(`Unsupported multicodec: ${n}`);return{code:n,data:r.slice(i),name:o}}};Jt.codeToName=new Map;Jt.nameToCode=new Map;Jt.registerCodec({code:237,name:"ed25519-pub"});Jt.registerCodec({code:4864,name:"ed25519-priv"});Jt.registerCodec({code:236,name:"x25519-pub"});Jt.registerCodec({code:4866,name:"x25519-priv"});Jt.registerCodec({code:231,name:"secp256k1-pub"});Jt.registerCodec({code:4865,name:"secp256k1-priv"});l();function gg(t){Object.keys(t).forEach(e=>{t[e]===void 0?delete t[e]:typeof t[e]=="object"&&gg(t[e])})}l();var QU=Mn(am(),1),rc=function(t,e,r,n){function i(o){return o instanceof r?o:new r(function(s){s(o)})}return new(r||(r=Promise))(function(o,s){function c(d){try{u(n.next(d))}catch(f){s(f)}}function a(d){try{u(n.throw(d))}catch(f){s(f)}}function u(d){d.done?o(d.value):i(d.value).then(c,a)}u((n=n.apply(t,e||[])).next())})};var wh=class{constructor(){this.store=new Map}clear(){return rc(this,void 0,void 0,function*(){this.store.clear()})}close(){return rc(this,void 0,void 0,function*(){})}delete(e){return rc(this,void 0,void 0,function*(){return this.store.delete(e)})}get(e){return rc(this,void 0,void 0,function*(){return this.store.get(e)})}has(e){return rc(this,void 0,void 0,function*(){return this.store.has(e)})}list(){return rc(this,void 0,void 0,function*(){return Array.from(this.store.values())})}set(e,r){return rc(this,void 0,void 0,function*(){this.store.set(e,r)})}};l();l();var g4=Mn(xw(),1);var m4=Mn(xw(),1);l();l();l();l();l();function w4(t){return t instanceof Uint8Array||t!=null&&typeof t=="object"&&t.constructor.name==="Uint8Array"}function Ew(t,...e){if(!w4(t))throw new Error("Uint8Array expected");if(e.length>0&&!e.includes(t.length))throw new Error(`Uint8Array expected of length ${e}, not of length=${t.length}`)}function vw(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 BT(t,e){Ew(t);let r=e.outputLen;if(t.length<r)throw new Error(`digestInto() expects output buffer of length at least ${r}`)}l();l();var Ka=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;var Xh=t=>new DataView(t.buffer,t.byteOffset,t.byteLength),In=(t,e)=>t<<32-e|t>>>e;var Pj=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;function b4(t){if(typeof t!="string")throw new Error(`utf8ToBytes expected string, got ${typeof t}`);return new Uint8Array(new TextEncoder().encode(t))}function Sw(t){return typeof t=="string"&&(t=b4(t)),Ew(t),t}var Jh=class{clone(){return this._cloneInto()}},Mj={}.toString;function RT(t){let e=n=>t().update(Sw(n)).digest(),r=t();return e.outputLen=r.outputLen,e.blockLen=r.blockLen,e.create=()=>t(),e}function UT(t=32){if(Ka&&typeof Ka.getRandomValues=="function")return Ka.getRandomValues(new Uint8Array(t));throw new Error("crypto.getRandomValues must be defined")}function x4(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),c=Number(r&o),a=n?4:0,u=n?0:4;t.setUint32(e+a,s,n),t.setUint32(e+u,c,n)}var OT=(t,e,r)=>t&e^~t&r,DT=(t,e,r)=>t&e^t&r^e&r,Zh=class extends Jh{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=Xh(this.buffer)}update(e){vw(this);let{view:r,buffer:n,blockLen:i}=this;e=Sw(e);let o=e.length;for(let s=0;s<o;){let c=Math.min(i-this.pos,o-s);if(c===i){let a=Xh(e);for(;i<=o-s;s+=i)this.process(a,s);continue}n.set(e.subarray(s,s+c),this.pos),this.pos+=c,s+=c,this.pos===i&&(this.process(r,0),this.pos=0)}return this.length+=e.length,this.roundClean(),this}digestInto(e){vw(this),BT(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 f=s;f<i;f++)r[f]=0;x4(n,i-8,BigInt(this.length*8),o),this.process(n,0);let c=Xh(e),a=this.outputLen;if(a%4)throw new Error("_sha2: outputLen should be aligned to 32bit");let u=a/4,d=this.get();if(u>d.length)throw new Error("_sha2: outputLen bigger than state");for(let f=0;f<u;f++)c.setUint32(4*f,d[f],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:c}=this;return e.length=i,e.pos=c,e.finished=o,e.destroyed=s,i%r&&e.buffer.set(n),e}};var E4=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]),Go=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),zo=new Uint32Array(64),Aw=class extends Zh{constructor(){super(64,32,8,!1),this.A=Go[0]|0,this.B=Go[1]|0,this.C=Go[2]|0,this.D=Go[3]|0,this.E=Go[4]|0,this.F=Go[5]|0,this.G=Go[6]|0,this.H=Go[7]|0}get(){let{A:e,B:r,C:n,D:i,E:o,F:s,G:c,H:a}=this;return[e,r,n,i,o,s,c,a]}set(e,r,n,i,o,s,c,a){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=c|0,this.H=a|0}process(e,r){for(let f=0;f<16;f++,r+=4)zo[f]=e.getUint32(r,!1);for(let f=16;f<64;f++){let h=zo[f-15],p=zo[f-2],g=In(h,7)^In(h,18)^h>>>3,y=In(p,17)^In(p,19)^p>>>10;zo[f]=y+zo[f-7]+g+zo[f-16]|0}let{A:n,B:i,C:o,D:s,E:c,F:a,G:u,H:d}=this;for(let f=0;f<64;f++){let h=In(c,6)^In(c,11)^In(c,25),p=d+h+OT(c,a,u)+E4[f]+zo[f]|0,y=(In(n,2)^In(n,13)^In(n,22))+DT(n,i,o)|0;d=u,u=a,a=c,c=s+p|0,s=o,o=i,i=n,n=p+y|0}n=n+this.A|0,i=i+this.B|0,o=o+this.C|0,s=s+this.D|0,c=c+this.E|0,a=a+this.F|0,u=u+this.G|0,d=d+this.H|0,this.set(n,i,o,s,c,a,u,d)}roundClean(){zo.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}};var Yo=RT(()=>new Aw);var v4=function(t,e,r,n){function i(o){return o instanceof r?o:new r(function(s){s(o)})}return new(r||(r=Promise))(function(o,s){function c(d){try{u(n.next(d))}catch(f){s(f)}}function a(d){try{u(n.throw(d))}catch(f){s(f)}}function u(d){d.done?o(d.value):i(d.value).then(c,a)}u((n=n.apply(t,e||[])).next())})},$a=class{static digest(e){return v4(this,arguments,void 0,function*({data:r}){return Yo(r)})}};l();var ci=class{};var S4=function(t,e,r,n){function i(o){return o instanceof r?o:new r(function(s){s(o)})}return new(r||(r=Promise))(function(o,s){function c(d){try{u(n.next(d))}catch(f){s(f)}}function a(d){try{u(n.throw(d))}catch(f){s(f)}}function u(d){d.done?o(d.value):i(d.value).then(c,a)}u((n=n.apply(t,e||[])).next())})},Qh=class extends ci{digest(e){return S4(this,arguments,void 0,function*({algorithm:r,data:n}){switch(r){case"SHA-256":return yield $a.digest({data:n})}})}};l();l();l();l();l();l();function kT(t){if(!Number.isSafeInteger(t)||t<0)throw new Error(`Wrong positive integer: ${t}`)}function A4(t){return t instanceof Uint8Array||t!=null&&typeof t=="object"&&t.constructor.name==="Uint8Array"}function Tw(t,...e){if(!A4(t))throw new Error("Expected Uint8Array");if(e.length>0&&!e.includes(t.length))throw new Error(`Expected Uint8Array of length ${e}, not of length=${t.length}`)}function NT(t){if(typeof t!="function"||typeof t.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");kT(t.outputLen),kT(t.blockLen)}function Ha(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 CT(t,e){Tw(t);let r=e.outputLen;if(t.length<r)throw new Error(`digestInto() expects output buffer of length at least ${r}`)}l();l();var ep=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;function LT(t){return t instanceof Uint8Array||t!=null&&typeof t=="object"&&t.constructor.name==="Uint8Array"}var tp=t=>new DataView(t.buffer,t.byteOffset,t.byteLength),Bn=(t,e)=>t<<32-e|t>>>e,T4=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!T4)throw new Error("Non little-endian hardware is not supported");function _w(t){if(typeof t!="string")throw new Error(`utf8ToBytes expected string, got ${typeof t}`);return new Uint8Array(new TextEncoder().encode(t))}function Hd(t){if(typeof t=="string"&&(t=_w(t)),!LT(t))throw new Error(`expected Uint8Array, got ${typeof t}`);return t}function rp(...t){let e=0;for(let n=0;n<t.length;n++){let i=t[n];if(!LT(i))throw new Error("Uint8Array expected");e+=i.length}let r=new Uint8Array(e);for(let n=0,i=0;n<t.length;n++){let o=t[n];r.set(o,i),i+=o.length}return r}var Va=class{clone(){return this._cloneInto()}},uW={}.toString;function np(t){let e=n=>t().update(Hd(n)).digest(),r=t();return e.outputLen=r.outputLen,e.blockLen=r.blockLen,e.create=()=>t(),e}function Vd(t=32){if(ep&&typeof ep.getRandomValues=="function")return ep.getRandomValues(new Uint8Array(t));throw new Error("crypto.getRandomValues must be defined")}function _4(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),c=Number(r&o),a=n?4:0,u=n?0:4;t.setUint32(e+a,s,n),t.setUint32(e+u,c,n)}var qa=class extends Va{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=tp(this.buffer)}update(e){Ha(this);let{view:r,buffer:n,blockLen:i}=this;e=Hd(e);let o=e.length;for(let s=0;s<o;){let c=Math.min(i-this.pos,o-s);if(c===i){let a=tp(e);for(;i<=o-s;s+=i)this.process(a,s);continue}n.set(e.subarray(s,s+c),this.pos),this.pos+=c,s+=c,this.pos===i&&(this.process(r,0),this.pos=0)}return this.length+=e.length,this.roundClean(),this}digestInto(e){Ha(this),CT(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 f=s;f<i;f++)r[f]=0;_4(n,i-8,BigInt(this.length*8),o),this.process(n,0);let c=tp(e),a=this.outputLen;if(a%4)throw new Error("_sha2: outputLen should be aligned to 32bit");let u=a/4,d=this.get();if(u>d.length)throw new Error("_sha2: outputLen bigger than state");for(let f=0;f<u;f++)c.setUint32(4*f,d[f],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:c}=this;return e.length=i,e.pos=c,e.finished=o,e.destroyed=s,i%r&&e.buffer.set(n),e}};var I4=(t,e,r)=>t&e^~t&r,B4=(t,e,r)=>t&e^t&r^e&r,R4=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]),Jo=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),Xo=new Uint32Array(64),Iw=class extends qa{constructor(){super(64,32,8,!1),this.A=Jo[0]|0,this.B=Jo[1]|0,this.C=Jo[2]|0,this.D=Jo[3]|0,this.E=Jo[4]|0,this.F=Jo[5]|0,this.G=Jo[6]|0,this.H=Jo[7]|0}get(){let{A:e,B:r,C:n,D:i,E:o,F:s,G:c,H:a}=this;return[e,r,n,i,o,s,c,a]}set(e,r,n,i,o,s,c,a){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=c|0,this.H=a|0}process(e,r){for(let f=0;f<16;f++,r+=4)Xo[f]=e.getUint32(r,!1);for(let f=16;f<64;f++){let h=Xo[f-15],p=Xo[f-2],g=Bn(h,7)^Bn(h,18)^h>>>3,y=Bn(p,17)^Bn(p,19)^p>>>10;Xo[f]=y+Xo[f-7]+g+Xo[f-16]|0}let{A:n,B:i,C:o,D:s,E:c,F:a,G:u,H:d}=this;for(let f=0;f<64;f++){let h=Bn(c,6)^Bn(c,11)^Bn(c,25),p=d+h+I4(c,a,u)+R4[f]+Xo[f]|0,y=(Bn(n,2)^Bn(n,13)^Bn(n,22))+B4(n,i,o)|0;d=u,u=a,a=c,c=s+p|0,s=o,o=i,i=n,n=p+y|0}n=n+this.A|0,i=i+this.B|0,o=o+this.C|0,s=s+this.D|0,c=c+this.E|0,a=a+this.F|0,u=u+this.G|0,d=d+this.H|0,this.set(n,i,o,s,c,a,u,d)}roundClean(){Xo.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}};var ip=np(()=>new Iw);l();var sp={};Su(sp,{bitGet:()=>L4,bitLen:()=>C4,bitMask:()=>qd,bitSet:()=>P4,bytesToHex:()=>Zi,bytesToNumberBE:()=>Qi,bytesToNumberLE:()=>Un,concatBytes:()=>to,createHmacDrbg:()=>Uw,ensureBytes:()=>Ge,equalBytes:()=>k4,hexToBytes:()=>pc,hexToNumber:()=>Rw,isBytes:()=>Rn,numberToBytesBE:()=>mr,numberToBytesLE:()=>eo,numberToHexUnpadded:()=>$T,numberToVarBytesBE:()=>D4,utf8ToBytes:()=>N4,validateObject:()=>sn});l();var KT=BigInt(0),op=BigInt(1),U4=BigInt(2);function Rn(t){return t instanceof Uint8Array||t!=null&&typeof t=="object"&&t.constructor.name==="Uint8Array"}var O4=Array.from({length:256},(t,e)=>e.toString(16).padStart(2,"0"));function Zi(t){if(!Rn(t))throw new Error("Uint8Array expected");let e="";for(let r=0;r<t.length;r++)e+=O4[t[r]];return e}function $T(t){let e=t.toString(16);return e.length&1?`0${e}`:e}function Rw(t){if(typeof t!="string")throw new Error("hex string expected, got "+typeof t);return BigInt(t===""?"0":`0x${t}`)}var Xi={_0:48,_9:57,_A:65,_F:70,_a:97,_f:102};function PT(t){if(t>=Xi._0&&t<=Xi._9)return t-Xi._0;if(t>=Xi._A&&t<=Xi._F)return t-(Xi._A-10);if(t>=Xi._a&&t<=Xi._f)return t-(Xi._a-10)}function pc(t){if(typeof t!="string")throw new Error("hex string expected, got "+typeof t);let e=t.length,r=e/2;if(e%2)throw new Error("padded hex string expected, got unpadded hex of length "+e);let n=new Uint8Array(r);for(let i=0,o=0;i<r;i++,o+=2){let s=PT(t.charCodeAt(o)),c=PT(t.charCodeAt(o+1));if(s===void 0||c===void 0){let a=t[o]+t[o+1];throw new Error('hex string expected, got non-hex character "'+a+'" at index '+o)}n[i]=s*16+c}return n}function Qi(t){return Rw(Zi(t))}function Un(t){if(!Rn(t))throw new Error("Uint8Array expected");return Rw(Zi(Uint8Array.from(t).reverse()))}function mr(t,e){return pc(t.toString(16).padStart(e*2,"0"))}function eo(t,e){return mr(t,e).reverse()}function D4(t){return pc($T(t))}function Ge(t,e,r){let n;if(typeof e=="string")try{n=pc(e)}catch(o){throw new Error(`${t} must be valid hex string, got "${e}". Cause: ${o}`)}else if(Rn(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 to(...t){let e=0;for(let i=0;i<t.length;i++){let o=t[i];if(!Rn(o))throw new Error("Uint8Array expected");e+=o.length}let r=new Uint8Array(e),n=0;for(let i=0;i<t.length;i++){let o=t[i];r.set(o,n),n+=o.length}return r}function k4(t,e){if(t.length!==e.length)return!1;let r=0;for(let n=0;n<t.length;n++)r|=t[n]^e[n];return r===0}function N4(t){if(typeof t!="string")throw new Error(`utf8ToBytes expected string, got ${typeof t}`);return new Uint8Array(new TextEncoder().encode(t))}function C4(t){let e;for(e=0;t>KT;t>>=op,e+=1);return e}function L4(t,e){return t>>BigInt(e)&op}var P4=(t,e,r)=>t|(r?op:KT)<<BigInt(e),qd=t=>(U4<<BigInt(t-1))-op,Bw=t=>new Uint8Array(t),MT=t=>Uint8Array.from(t);function Uw(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=Bw(t),i=Bw(t),o=0,s=()=>{n.fill(1),i.fill(0),o=0},c=(...f)=>r(i,n,...f),a=(f=Bw())=>{i=c(MT([0]),f),n=c(),f.length!==0&&(i=c(MT([1]),f),n=c())},u=()=>{if(o++>=1e3)throw new Error("drbg: tried 1000 values");let f=0,h=[];for(;f<e;){n=c();let p=n.slice();h.push(p),f+=n.length}return to(...h)};return(f,h)=>{s(),a(f);let p;for(;!(p=h(u()));)a();return s(),p}}var M4={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"||Rn(t),isSafeInteger:t=>Number.isSafeInteger(t),array:t=>Array.isArray(t),field:(t,e)=>e.Fp.isValid(t),hash:t=>typeof t=="function"&&Number.isSafeInteger(t.outputLen)};function sn(t,e,r={}){let n=(i,o,s)=>{let c=M4[o];if(typeof c!="function")throw new Error(`Invalid validator "${o}", expected function`);let a=t[i];if(!(s&&a===void 0)&&!c(a,t))throw new Error(`Invalid param ${String(i)}=${a} (${typeof a}), 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 It=BigInt(0),et=BigInt(1),yc=BigInt(2),K4=BigInt(3),Ow=BigInt(4),HT=BigInt(5),VT=BigInt(8),$4=BigInt(9),H4=BigInt(16);function Be(t,e){let r=t%e;return r>=It?r:e+r}function Dw(t,e,r){if(r<=It||e<It)throw new Error("Expected power/modulo > 0");if(r===et)return It;let n=et;for(;e>It;)e&et&&(n=n*t%r),t=t*t%r,e>>=et;return n}function ze(t,e,r){let n=t;for(;e-- >It;)n*=n,n%=r;return n}function cp(t,e){if(t===It||e<=It)throw new Error(`invert: expected positive integers, got n=${t} mod=${e}`);let r=Be(t,e),n=e,i=It,o=et,s=et,c=It;for(;r!==It;){let u=n/r,d=n%r,f=i-s*u,h=o-c*u;n=r,r=d,i=s,o=c,s=f,c=h}if(n!==et)throw new Error("invert: does not exist");return Be(i,e)}function V4(t){let e=(t-et)/yc,r,n,i;for(r=t-et,n=0;r%yc===It;r/=yc,n++);for(i=yc;i<t&&Dw(i,e,t)!==t-et;i++);if(n===1){let s=(t+et)/Ow;return function(a,u){let d=a.pow(u,s);if(!a.eql(a.sqr(d),u))throw new Error("Cannot find square root");return d}}let o=(r+et)/yc;return function(c,a){if(c.pow(a,e)===c.neg(c.ONE))throw new Error("Cannot find square root");let u=n,d=c.pow(c.mul(c.ONE,i),r),f=c.pow(a,o),h=c.pow(a,r);for(;!c.eql(h,c.ONE);){if(c.eql(h,c.ZERO))return c.ZERO;let p=1;for(let y=c.sqr(h);p<u&&!c.eql(y,c.ONE);p++)y=c.sqr(y);let g=c.pow(d,et<<BigInt(u-p-1));d=c.sqr(g),f=c.mul(f,g),h=c.mul(h,d),u=p}return f}}function q4(t){if(t%Ow===K4){let e=(t+et)/Ow;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%VT===HT){let e=(t-HT)/VT;return function(n,i){let o=n.mul(i,yc),s=n.pow(o,e),c=n.mul(i,s),a=n.mul(n.mul(c,yc),s),u=n.mul(c,n.sub(a,n.ONE));if(!n.eql(n.sqr(u),i))throw new Error("Cannot find square root");return u}}return t%H4,V4(t)}var qT=(t,e)=>(Be(t,e)&et)===et,F4=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function kw(t){let e={ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"},r=F4.reduce((n,i)=>(n[i]="function",n),e);return sn(t,r)}function j4(t,e,r){if(r<It)throw new Error("Expected power > 0");if(r===It)return t.ONE;if(r===et)return e;let n=t.ONE,i=e;for(;r>It;)r&et&&(n=t.mul(n,i)),i=t.sqr(i),r>>=et;return n}function W4(t,e){let r=new Array(e.length),n=e.reduce((o,s,c)=>t.is0(s)?o:(r[c]=o,t.mul(o,s)),t.ONE),i=t.inv(n);return e.reduceRight((o,s,c)=>t.is0(s)?o:(r[c]=t.mul(o,r[c]),t.mul(o,s)),i),r}function Nw(t,e){let r=e!==void 0?e:t.toString(2).length,n=Math.ceil(r/8);return{nBitLength:r,nByteLength:n}}function Fa(t,e,r=!1,n={}){if(t<=It)throw new Error(`Expected Field ORDER > 0, got ${t}`);let{nBitLength:i,nByteLength:o}=Nw(t,e);if(o>2048)throw new Error("Field lengths over 2048 bytes are not supported");let s=q4(t),c=Object.freeze({ORDER:t,BITS:i,BYTES:o,MASK:qd(i),ZERO:It,ONE:et,create:a=>Be(a,t),isValid:a=>{if(typeof a!="bigint")throw new Error(`Invalid field element: expected bigint, got ${typeof a}`);return It<=a&&a<t},is0:a=>a===It,isOdd:a=>(a&et)===et,neg:a=>Be(-a,t),eql:(a,u)=>a===u,sqr:a=>Be(a*a,t),add:(a,u)=>Be(a+u,t),sub:(a,u)=>Be(a-u,t),mul:(a,u)=>Be(a*u,t),pow:(a,u)=>j4(c,a,u),div:(a,u)=>Be(a*cp(u,t),t),sqrN:a=>a*a,addN:(a,u)=>a+u,subN:(a,u)=>a-u,mulN:(a,u)=>a*u,inv:a=>cp(a,t),sqrt:n.sqrt||(a=>s(c,a)),invertBatch:a=>W4(c,a),cmov:(a,u,d)=>d?u:a,toBytes:a=>r?eo(a,o):mr(a,o),fromBytes:a=>{if(a.length!==o)throw new Error(`Fp.fromBytes: expected ${o}, got ${a.length}`);return r?Un(a):Qi(a)}});return Object.freeze(c)}function FT(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 jT(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 Cw(t){let e=jT(t);return e+Math.ceil(e/2)}function WT(t,e,r=!1){let n=t.length,i=jT(e),o=Cw(e);if(n<16||n<o||n>1024)throw new Error(`expected ${o}-1024 bytes of input, got ${n}`);let s=r?Qi(t):Un(t),c=Be(s,e-et)+et;return r?eo(c,i):mr(c,i)}l();l();var z4=BigInt(0),Lw=BigInt(1);function ap(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,c=i;for(;o>z4;)o&Lw&&(s=s.add(c)),c=c.double(),o>>=Lw;return s},precomputeWindow(i,o){let{windows:s,windowSize:c}=n(o),a=[],u=i,d=u;for(let f=0;f<s;f++){d=u,a.push(d);for(let h=1;h<c;h++)d=d.add(u),a.push(d);u=d.double()}return a},wNAF(i,o,s){let{windows:c,windowSize:a}=n(i),u=t.ZERO,d=t.BASE,f=BigInt(2**i-1),h=2**i,p=BigInt(i);for(let g=0;g<c;g++){let y=g*a,x=Number(s&f);s>>=p,x>a&&(x-=h,s+=Lw);let S=y,_=y+Math.abs(x)-1,A=g%2!==0,O=x<0;x===0?d=d.add(r(A,o[S])):u=u.add(r(O,o[_]))}return{p:u,f:d}},wNAFCached(i,o,s,c){let a=i._WINDOW_SIZE||1,u=o.get(i);return u||(u=this.precomputeWindow(i,a),a!==1&&o.set(i,c(u))),this.wNAF(a,u,s)}}}function Fd(t){return kw(t.Fp),sn(t,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...Nw(t.n,t.nBitLength),...t,p:t.Fp.ORDER})}function Y4(t){let e=Fd(t);sn(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:J4,hexToBytes:X4}=sp,gc={Err:class extends Error{constructor(e=""){super(e)}},_parseInt(t){let{Err:e}=gc;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:J4(n),l:t.subarray(r+2)}},toSig(t){let{Err:e}=gc,r=typeof t=="string"?X4(t):t;if(!Rn(r))throw new Error("ui8a expected");let n=r.length;if(n<2||r[0]!=48)throw new e("Invalid signature tag");if(r[1]!==n-2)throw new e("Invalid signature: incorrect length");let{d:i,l:o}=gc._parseInt(r.subarray(2)),{d:s,l:c}=gc._parseInt(o);if(c.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 d=u.toString(16);return d.length&1?`0${d}`:d},n=e(r(t.s)),i=e(r(t.r)),o=n.length/2,s=i.length/2,c=r(o),a=r(s);return`30${r(s+o+4)}02${a}${i}02${c}${n}`}},ro=BigInt(0),cn=BigInt(1),UW=BigInt(2),GT=BigInt(3),OW=BigInt(4);function Z4(t){let e=Y4(t),{Fp:r}=e,n=e.toBytes||((g,y,x)=>{let S=y.toAffine();return to(Uint8Array.from([4]),r.toBytes(S.x),r.toBytes(S.y))}),i=e.fromBytes||(g=>{let y=g.subarray(1),x=r.fromBytes(y.subarray(0,r.BYTES)),S=r.fromBytes(y.subarray(r.BYTES,2*r.BYTES));return{x,y:S}});function o(g){let{a:y,b:x}=e,S=r.sqr(g),_=r.mul(S,g);return r.add(r.add(_,r.mul(g,y)),x)}if(!r.eql(r.sqr(e.Gy),o(e.Gx)))throw new Error("bad generator point: equation left != right");function s(g){return typeof g=="bigint"&&ro<g&&g<e.n}function c(g){if(!s(g))throw new Error("Expected valid bigint: 0 < bigint < curve.n")}function a(g){let{allowedPrivateKeyLengths:y,nByteLength:x,wrapPrivateKey:S,n:_}=e;if(y&&typeof g!="bigint"){if(Rn(g)&&(g=Zi(g)),typeof g!="string"||!y.includes(g.length))throw new Error("Invalid key");g=g.padStart(x*2,"0")}let A;try{A=typeof g=="bigint"?g:Qi(Ge("private key",g,x))}catch{throw new Error(`private key must be ${x} bytes, hex or bigint, not ${typeof g}`)}return S&&(A=Be(A,_)),c(A),A}let u=new Map;function d(g){if(!(g instanceof f))throw new Error("ProjectivePoint expected")}class f{constructor(y,x,S){if(this.px=y,this.py=x,this.pz=S,y==null||!r.isValid(y))throw new Error("x required");if(x==null||!r.isValid(x))throw new Error("y required");if(S==null||!r.isValid(S))throw new Error("z required")}static fromAffine(y){let{x,y:S}=y||{};if(!y||!r.isValid(x)||!r.isValid(S))throw new Error("invalid affine point");if(y instanceof f)throw new Error("projective point not allowed");let _=A=>r.eql(A,r.ZERO);return _(x)&&_(S)?f.ZERO:new f(x,S,r.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ(y){let x=r.invertBatch(y.map(S=>S.pz));return y.map((S,_)=>S.toAffine(x[_])).map(f.fromAffine)}static fromHex(y){let x=f.fromAffine(i(Ge("pointHex",y)));return x.assertValidity(),x}static fromPrivateKey(y){return f.BASE.multiply(a(y))}_setWindowSize(y){this._WINDOW_SIZE=y,u.delete(this)}assertValidity(){if(this.is0()){if(e.allowInfinityPoint&&!r.is0(this.py))return;throw new Error("bad point: ZERO")}let{x:y,y:x}=this.toAffine();if(!r.isValid(y)||!r.isValid(x))throw new Error("bad point: x or y not FE");let S=r.sqr(x),_=o(y);if(!r.eql(S,_))throw new Error("bad point: equation left != right");if(!this.isTorsionFree())throw new Error("bad point: not in prime-order subgroup")}hasEvenY(){let{y}=this.toAffine();if(r.isOdd)return!r.isOdd(y);throw new Error("Field doesn't support isOdd")}equals(y){d(y);let{px:x,py:S,pz:_}=this,{px:A,py:O,pz:T}=y,M=r.eql(r.mul(x,T),r.mul(A,_)),q=r.eql(r.mul(S,T),r.mul(O,_));return M&&q}negate(){return new f(this.px,r.neg(this.py),this.pz)}double(){let{a:y,b:x}=e,S=r.mul(x,GT),{px:_,py:A,pz:O}=this,T=r.ZERO,M=r.ZERO,q=r.ZERO,j=r.mul(_,_),$=r.mul(A,A),Z=r.mul(O,O),Q=r.mul(_,A);return Q=r.add(Q,Q),q=r.mul(_,O),q=r.add(q,q),T=r.mul(y,q),M=r.mul(S,Z),M=r.add(T,M),T=r.sub($,M),M=r.add($,M),M=r.mul(T,M),T=r.mul(Q,T),q=r.mul(S,q),Z=r.mul(y,Z),Q=r.sub(j,Z),Q=r.mul(y,Q),Q=r.add(Q,q),q=r.add(j,j),j=r.add(q,j),j=r.add(j,Z),j=r.mul(j,Q),M=r.add(M,j),Z=r.mul(A,O),Z=r.add(Z,Z),j=r.mul(Z,Q),T=r.sub(T,j),q=r.mul(Z,$),q=r.add(q,q),q=r.add(q,q),new f(T,M,q)}add(y){d(y);let{px:x,py:S,pz:_}=this,{px:A,py:O,pz:T}=y,M=r.ZERO,q=r.ZERO,j=r.ZERO,$=e.a,Z=r.mul(e.b,GT),Q=r.mul(x,A),G=r.mul(S,O),I=r.mul(_,T),D=r.add(x,S),E=r.add(A,O);D=r.mul(D,E),E=r.add(Q,G),D=r.sub(D,E),E=r.add(x,_);let U=r.add(A,T);return E=r.mul(E,U),U=r.add(Q,I),E=r.sub(E,U),U=r.add(S,_),M=r.add(O,T),U=r.mul(U,M),M=r.add(G,I),U=r.sub(U,M),j=r.mul($,E),M=r.mul(Z,I),j=r.add(M,j),M=r.sub(G,j),j=r.add(G,j),q=r.mul(M,j),G=r.add(Q,Q),G=r.add(G,Q),I=r.mul($,I),E=r.mul(Z,E),G=r.add(G,I),I=r.sub(Q,I),I=r.mul($,I),E=r.add(E,I),Q=r.mul(G,E),q=r.add(q,Q),Q=r.mul(U,E),M=r.mul(D,M),M=r.sub(M,Q),Q=r.mul(D,G),j=r.mul(U,j),j=r.add(j,Q),new f(M,q,j)}subtract(y){return this.add(y.negate())}is0(){return this.equals(f.ZERO)}wNAF(y){return p.wNAFCached(this,u,y,x=>{let S=r.invertBatch(x.map(_=>_.pz));return x.map((_,A)=>_.toAffine(S[A])).map(f.fromAffine)})}multiplyUnsafe(y){let x=f.ZERO;if(y===ro)return x;if(c(y),y===cn)return this;let{endo:S}=e;if(!S)return p.unsafeLadder(this,y);let{k1neg:_,k1:A,k2neg:O,k2:T}=S.splitScalar(y),M=x,q=x,j=this;for(;A>ro||T>ro;)A&cn&&(M=M.add(j)),T&cn&&(q=q.add(j)),j=j.double(),A>>=cn,T>>=cn;return _&&(M=M.negate()),O&&(q=q.negate()),q=new f(r.mul(q.px,S.beta),q.py,q.pz),M.add(q)}multiply(y){c(y);let x=y,S,_,{endo:A}=e;if(A){let{k1neg:O,k1:T,k2neg:M,k2:q}=A.splitScalar(x),{p:j,f:$}=this.wNAF(T),{p:Z,f:Q}=this.wNAF(q);j=p.constTimeNegate(O,j),Z=p.constTimeNegate(M,Z),Z=new f(r.mul(Z.px,A.beta),Z.py,Z.pz),S=j.add(Z),_=$.add(Q)}else{let{p:O,f:T}=this.wNAF(x);S=O,_=T}return f.normalizeZ([S,_])[0]}multiplyAndAddUnsafe(y,x,S){let _=f.BASE,A=(T,M)=>M===ro||M===cn||!T.equals(_)?T.multiplyUnsafe(M):T.multiply(M),O=A(this,x).add(A(y,S));return O.is0()?void 0:O}toAffine(y){let{px:x,py:S,pz:_}=this,A=this.is0();y==null&&(y=A?r.ONE:r.inv(_));let O=r.mul(x,y),T=r.mul(S,y),M=r.mul(_,y);if(A)return{x:r.ZERO,y:r.ZERO};if(!r.eql(M,r.ONE))throw new Error("invZ was invalid");return{x:O,y:T}}isTorsionFree(){let{h:y,isTorsionFree:x}=e;if(y===cn)return!0;if(x)return x(f,this);throw new Error("isTorsionFree() has not been declared for the elliptic curve")}clearCofactor(){let{h:y,clearCofactor:x}=e;return y===cn?this:x?x(f,this):this.multiplyUnsafe(e.h)}toRawBytes(y=!0){return this.assertValidity(),n(f,this,y)}toHex(y=!0){return Zi(this.toRawBytes(y))}}f.BASE=new f(e.Gx,e.Gy,r.ONE),f.ZERO=new f(r.ZERO,r.ONE,r.ZERO);let h=e.nBitLength,p=ap(f,e.endo?Math.ceil(h/2):h);return{CURVE:e,ProjectivePoint:f,normPrivateKeyToScalar:a,weierstrassEquation:o,isWithinCurveOrder:s}}function Q4(t){let e=Fd(t);return sn(e,{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze({lowS:!0,...e})}function zT(t){let e=Q4(t),{Fp:r,n}=e,i=r.BYTES+1,o=2*r.BYTES+1;function s(E){return ro<E&&E<r.ORDER}function c(E){return Be(E,n)}function a(E){return cp(E,n)}let{ProjectivePoint:u,normPrivateKeyToScalar:d,weierstrassEquation:f,isWithinCurveOrder:h}=Z4({...e,toBytes(E,U,L){let N=U.toAffine(),R=r.toBytes(N.x),C=to;return L?C(Uint8Array.from([U.hasEvenY()?2:3]),R):C(Uint8Array.from([4]),R,r.toBytes(N.y))},fromBytes(E){let U=E.length,L=E[0],N=E.subarray(1);if(U===i&&(L===2||L===3)){let R=Qi(N);if(!s(R))throw new Error("Point is not on curve");let C=f(R),P=r.sqrt(C),V=(P&cn)===cn;return(L&1)===1!==V&&(P=r.neg(P)),{x:R,y:P}}else if(U===o&&L===4){let R=r.fromBytes(N.subarray(0,r.BYTES)),C=r.fromBytes(N.subarray(r.BYTES,2*r.BYTES));return{x:R,y:C}}else throw new Error(`Point of length ${U} was invalid. Expected ${i} compressed bytes or ${o} uncompressed bytes`)}}),p=E=>Zi(mr(E,e.nByteLength));function g(E){let U=n>>cn;return E>U}function y(E){return g(E)?c(-E):E}let x=(E,U,L)=>Qi(E.slice(U,L));class S{constructor(U,L,N){this.r=U,this.s=L,this.recovery=N,this.assertValidity()}static fromCompact(U){let L=e.nByteLength;return U=Ge("compactSignature",U,L*2),new S(x(U,0,L),x(U,L,2*L))}static fromDER(U){let{r:L,s:N}=gc.toSig(Ge("DER",U));return new S(L,N)}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(U){return new S(this.r,this.s,U)}recoverPublicKey(U){let{r:L,s:N,recovery:R}=this,C=q(Ge("msgHash",U));if(R==null||![0,1,2,3].includes(R))throw new Error("recovery id invalid");let P=R===2||R===3?L+e.n:L;if(P>=r.ORDER)throw new Error("recovery id 2 or 3 invalid");let V=R&1?"03":"02",J=u.fromHex(V+p(P)),z=a(P),W=c(-C*z),Y=c(N*z),X=u.BASE.multiplyAndAddUnsafe(J,W,Y);if(!X)throw new Error("point at infinify");return X.assertValidity(),X}hasHighS(){return g(this.s)}normalizeS(){return this.hasHighS()?new S(this.r,c(-this.s),this.recovery):this}toDERRawBytes(){return pc(this.toDERHex())}toDERHex(){return gc.hexFromSig({r:this.r,s:this.s})}toCompactRawBytes(){return pc(this.toCompactHex())}toCompactHex(){return p(this.r)+p(this.s)}}let _={isValidPrivateKey(E){try{return d(E),!0}catch{return!1}},normPrivateKeyToScalar:d,randomPrivateKey:()=>{let E=Cw(e.n);return WT(e.randomBytes(E),e.n)},precompute(E=8,U=u.BASE){return U._setWindowSize(E),U.multiply(BigInt(3)),U}};function A(E,U=!0){return u.fromPrivateKey(E).toRawBytes(U)}function O(E){let U=Rn(E),L=typeof E=="string",N=(U||L)&&E.length;return U?N===i||N===o:L?N===2*i||N===2*o:E instanceof u}function T(E,U,L=!0){if(O(E))throw new Error("first arg must be private key");if(!O(U))throw new Error("second arg must be public key");return u.fromHex(U).multiply(d(E)).toRawBytes(L)}let M=e.bits2int||function(E){let U=Qi(E),L=E.length*8-e.nBitLength;return L>0?U>>BigInt(L):U},q=e.bits2int_modN||function(E){return c(M(E))},j=qd(e.nBitLength);function $(E){if(typeof E!="bigint")throw new Error("bigint expected");if(!(ro<=E&&E<j))throw new Error(`bigint expected < 2^${e.nBitLength}`);return mr(E,e.nByteLength)}function Z(E,U,L=Q){if(["recovered","canonical"].some(ee=>ee in L))throw new Error("sign() legacy options not supported");let{hash:N,randomBytes:R}=e,{lowS:C,prehash:P,extraEntropy:V}=L;C==null&&(C=!0),E=Ge("msgHash",E),P&&(E=Ge("prehashed msgHash",N(E)));let J=q(E),z=d(U),W=[$(z),$(J)];if(V!=null){let ee=V===!0?R(r.BYTES):V;W.push(Ge("extraEntropy",ee))}let Y=to(...W),X=J;function ue(ee){let ce=M(ee);if(!h(ce))return;let Ue=a(ce),Ke=u.BASE.multiply(ce).toAffine(),Je=c(Ke.x);if(Je===ro)return;let xt=c(Ue*c(X+Je*z));if(xt===ro)return;let pi=(Ke.x===Je?0:2)|Number(Ke.y&cn),ho=xt;return C&&g(xt)&&(ho=y(xt),pi^=1),new S(Je,ho,pi)}return{seed:Y,k2sig:ue}}let Q={lowS:e.lowS,prehash:!1},G={lowS:e.lowS,prehash:!1};function I(E,U,L=Q){let{seed:N,k2sig:R}=Z(E,U,L),C=e;return Uw(C.hash.outputLen,C.nByteLength,C.hmac)(N,R)}u.BASE._setWindowSize(8);function D(E,U,L,N=G){let R=E;if(U=Ge("msgHash",U),L=Ge("publicKey",L),"strict"in N)throw new Error("options.strict was renamed to lowS");let{lowS:C,prehash:P}=N,V,J;try{if(typeof R=="string"||Rn(R))try{V=S.fromDER(R)}catch(Ke){if(!(Ke instanceof gc.Err))throw Ke;V=S.fromCompact(R)}else if(typeof R=="object"&&typeof R.r=="bigint"&&typeof R.s=="bigint"){let{r:Ke,s:Je}=R;V=new S(Ke,Je)}else throw new Error("PARSE");J=u.fromHex(L)}catch(Ke){if(Ke.message==="PARSE")throw new Error("signature must be Signature instance, Uint8Array or hex string");return!1}if(C&&V.hasHighS())return!1;P&&(U=e.hash(U));let{r:z,s:W}=V,Y=q(U),X=a(W),ue=c(Y*X),ee=c(z*X),ce=u.BASE.multiplyAndAddUnsafe(J,ue,ee)?.toAffine();return ce?c(ce.x)===z:!1}return{CURVE:e,getPublicKey:A,getSharedSecret:T,sign:I,verify:D,ProjectivePoint:u,Signature:S,utils:_}}l();l();var up=class extends Va{constructor(e,r){super(),this.finished=!1,this.destroyed=!1,NT(e);let n=Hd(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 Ha(this),this.iHash.update(e),this}digestInto(e){Ha(this),Tw(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:c}=this;return e=e,e.finished=i,e.destroyed=o,e.blockLen=s,e.outputLen=c,e.oHash=r._cloneInto(e.oHash),e.iHash=n._cloneInto(e.iHash),e}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}},Pw=(t,e,r)=>new up(t,e).update(r).digest();Pw.create=(t,e)=>new up(t,e);function eN(t){return{hash:t,hmac:(e,...r)=>Pw(t,e,rp(...r)),randomBytes:Vd}}function dp(t,e){let r=n=>zT({...t,...eN(n)});return Object.freeze({...r(e),create:r})}var XT=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),YT=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),tN=BigInt(1),Mw=BigInt(2),JT=(t,e)=>(t+e/Mw)/e;function rN(t){let e=XT,r=BigInt(3),n=BigInt(6),i=BigInt(11),o=BigInt(22),s=BigInt(23),c=BigInt(44),a=BigInt(88),u=t*t*t%e,d=u*u*t%e,f=ze(d,r,e)*d%e,h=ze(f,r,e)*d%e,p=ze(h,Mw,e)*u%e,g=ze(p,i,e)*p%e,y=ze(g,o,e)*g%e,x=ze(y,c,e)*y%e,S=ze(x,a,e)*x%e,_=ze(S,c,e)*y%e,A=ze(_,r,e)*d%e,O=ze(A,s,e)*g%e,T=ze(O,n,e)*u%e,M=ze(T,Mw,e);if(!Kw.eql(Kw.sqr(M),t))throw new Error("Cannot find square root");return M}var Kw=Fa(XT,void 0,void 0,{sqrt:rN}),wr=dp({a:BigInt(0),b:BigInt(7),Fp:Kw,n:YT,Gx:BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),Gy:BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),h:BigInt(1),lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:t=>{let e=YT,r=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),n=-tN*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),i=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),o=r,s=BigInt("0x100000000000000000000000000000000"),c=JT(o*t,e),a=JT(-n*t,e),u=Be(t-c*r-a*i,e),d=Be(-c*n-a*o,e),f=u>s,h=d>s;if(f&&(u=e-u),h&&(d=e-d),u>s||d>s)throw new Error("splitScalar: Endomorphism failed, k="+t);return{k1neg:f,k1:u,k2neg:h,k2:d}}}},ip),WW=BigInt(0);var GW=wr.ProjectivePoint;l();l();function ZT(t){let e=n=>{if(n!==null&&typeof n=="object"&&!Array.isArray(n)){let i=Object.keys(n).sort(),o={};for(let s of i)o[s]=e(n[s]);return o}return n},r=e(t);return JSON.stringify(r)}var nN=function(t,e,r,n){function i(o){return o instanceof r?o:new r(function(s){s(o)})}return new(r||(r=Promise))(function(o,s){function c(d){try{u(n.next(d))}catch(f){s(f)}}function a(d){try{u(n.throw(d))}catch(f){s(f)}}function u(d){d.done?o(d.value):i(d.value).then(c,a)}u((n=n.apply(t,e||[])).next())})},$w="urn:jwk:";function ge(t){return nN(this,arguments,void 0,function*({jwk:e}){let r=e.kty,n;if(r==="EC")n={crv:e.crv,kty:e.kty,x:e.x,y:e.y};else if(r==="oct")n={k:e.k,kty:e.kty};else if(r==="OKP")n={crv:e.crv,kty:e.kty,x:e.x};else if(r==="RSA")n={e:e.e,kty:e.kty,n:e.n};else throw new Error(`Unsupported key type: ${r}`);gg(n);let i=ZT(n),o=ne.string(i).toUint8Array(),s=yield $a.digest({data:o});return ne.uint8Array(s).toBase64Url()})}function ai(t){return!(!t||typeof t!="object"||!("kty"in t&&"crv"in t&&"x"in t&&"d"in t)||t.kty!=="EC"||typeof t.d!="string"||typeof t.x!="string")}function ja(t){return!(!t||typeof t!="object"||!("kty"in t&&"crv"in t&&"x"in t)||"d"in t||t.kty!=="EC"||typeof t.x!="string")}function ui(t){return!(!t||typeof t!="object"||!("kty"in t&&"crv"in t&&"x"in t&&"d"in t)||t.kty!=="OKP"||typeof t.d!="string"||typeof t.x!="string")}function Wa(t){return!(!t||typeof t!="object"||"d"in t||!("kty"in t&&"crv"in t&&"x"in t)||t.kty!=="OKP"||typeof t.x!="string")}function QT(t){if(!t||typeof t!="object")return!1;switch(t.kty){case"EC":case"OKP":case"RSA":return"d"in t;case"oct":return"k"in t;default:return!1}}var $t=function(t,e,r,n){function i(o){return o instanceof r?o:new r(function(s){s(o)})}return new(r||(r=Promise))(function(o,s){function c(d){try{u(n.next(d))}catch(f){s(f)}}function a(d){try{u(n.throw(d))}catch(f){s(f)}}function u(d){d.done?o(d.value):i(d.value).then(c,a)}u((n=n.apply(t,e||[])).next())})},iN=function(t,e){var r={};for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&e.indexOf(n)<0&&(r[n]=t[n]);if(t!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,n=Object.getOwnPropertySymbols(t);i<n.length;i++)e.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(t,n[i])&&(r[n[i]]=t[n[i]]);return r},kt=class t{static adjustSignatureToLowS(e){return $t(this,arguments,void 0,function*({signature:r}){let n=wr.Signature.fromCompact(r);return n.hasHighS()?n.normalizeS().toCompactRawBytes():r})}static bytesToPrivateKey(e){return $t(this,arguments,void 0,function*({privateKeyBytes:r}){let n=yield t.getCurvePoint({keyBytes:r}),i={kty:"EC",crv:"secp256k1",d:ne.uint8Array(r).toBase64Url(),x:ne.uint8Array(n.x).toBase64Url(),y:ne.uint8Array(n.y).toBase64Url()};return i.kid=yield ge({jwk:i}),i})}static bytesToPublicKey(e){return $t(this,arguments,void 0,function*({publicKeyBytes:r}){let n=yield t.getCurvePoint({keyBytes:r}),i={kty:"EC",crv:"secp256k1",x:ne.uint8Array(n.x).toBase64Url(),y:ne.uint8Array(n.y).toBase64Url()};return i.kid=yield ge({jwk:i}),i})}static compressPublicKey(e){return $t(this,arguments,void 0,function*({publicKeyBytes:r}){return wr.ProjectivePoint.fromHex(r).toRawBytes(!0)})}static computePublicKey(e){return $t(this,arguments,void 0,function*({key:r}){let n=yield t.privateKeyToBytes({privateKey:r}),i=yield t.getCurvePoint({keyBytes:n}),o={kty:"EC",crv:"secp256k1",x:ne.uint8Array(i.x).toBase64Url(),y:ne.uint8Array(i.y).toBase64Url()};return o.kid=yield ge({jwk:o}),o})}static convertDerToCompactSignature(e){return $t(this,arguments,void 0,function*({derSignature:r}){return wr.Signature.fromDER(r).toCompactRawBytes()})}static decompressPublicKey(e){return $t(this,arguments,void 0,function*({publicKeyBytes:r}){return wr.ProjectivePoint.fromHex(r).toRawBytes(!1)})}static generateKey(){return $t(this,void 0,void 0,function*(){let e=wr.utils.randomPrivateKey(),r=yield t.bytesToPrivateKey({privateKeyBytes:e});return r.kid=yield ge({jwk:r}),r})}static getPublicKey(e){return $t(this,arguments,void 0,function*({key:r}){var n;if(!(ai(r)&&r.crv==="secp256k1"))throw new Error("Secp256k1: The provided key is not a secp256k1 private JWK.");let{d:i}=r,o=iN(r,["d"]);return(n=o.kid)!==null&&n!==void 0||(o.kid=yield ge({jwk:o})),o})}static privateKeyToBytes(e){return $t(this,arguments,void 0,function*({privateKey:r}){if(!ai(r))throw new Error("Secp256k1: The provided key is not a valid EC private key.");return ne.base64Url(r.d).toUint8Array()})}static publicKeyToBytes(e){return $t(this,arguments,void 0,function*({publicKey:r}){if(!(ja(r)&&r.y))throw new Error("Secp256k1: The provided key is not a valid EC public key.");let n=new Uint8Array([4]),i=ne.base64Url(r.x).toUint8Array(),o=ne.base64Url(r.y).toUint8Array();return new Uint8Array([...n,...i,...o])})}static sharedSecret(e){return $t(this,arguments,void 0,function*({privateKeyA:r,publicKeyB:n}){if("x"in r&&"x"in n&&r.x===n.x)throw new Error("Secp256k1: ECDH shared secret cannot be computed from a single key pair's public and private keys.");let i=yield t.privateKeyToBytes({privateKey:r}),o=yield t.publicKeyToBytes({publicKey:n});return wr.getSharedSecret(i,o,!0).slice(1)})}static sign(e){return $t(this,arguments,void 0,function*({data:r,key:n}){let i=yield t.privateKeyToBytes({privateKey:n}),o=Yo(r);return wr.sign(o,i).toCompactRawBytes()})}static validatePrivateKey(e){return $t(this,arguments,void 0,function*({privateKeyBytes:r}){return wr.utils.isValidPrivateKey(r)})}static validatePublicKey(e){return $t(this,arguments,void 0,function*({publicKeyBytes:r}){try{wr.ProjectivePoint.fromHex(r).assertValidity()}catch{return!1}return!0})}static verify(e){return $t(this,arguments,void 0,function*({key:r,signature:n,data:i}){let o=yield t.publicKeyToBytes({publicKey:r}),s=Yo(i);return wr.verify(n,s,o,{lowS:!1})})}static getCurvePoint(e){return $t(this,arguments,void 0,function*({keyBytes:r}){r.byteLength===32&&(r=wr.getPublicKey(r));let n=wr.ProjectivePoint.fromHex(r),i=mr(n.x,32),o=mr(n.y,32);return{x:i,y:o}})}};l();l();var e_=Fa(BigInt("0xffffffff00000001000000000000000000000000ffffffffffffffffffffffff")),oN=e_.create(BigInt("-3")),sN=BigInt("0x5ac635d8aa3a93e7b3ebbd55769886bc651d06b0cc53b0f63bce3c3e27d2604b"),cN=dp({a:oN,b:sN,Fp:e_,n:BigInt("0xffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551"),Gx:BigInt("0x6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296"),Gy:BigInt("0x4fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5"),h:BigInt(1),lowS:!1},ip),Lr=cN;var Ht=function(t,e,r,n){function i(o){return o instanceof r?o:new r(function(s){s(o)})}return new(r||(r=Promise))(function(o,s){function c(d){try{u(n.next(d))}catch(f){s(f)}}function a(d){try{u(n.throw(d))}catch(f){s(f)}}function u(d){d.done?o(d.value):i(d.value).then(c,a)}u((n=n.apply(t,e||[])).next())})},aN=function(t,e){var r={};for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&e.indexOf(n)<0&&(r[n]=t[n]);if(t!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,n=Object.getOwnPropertySymbols(t);i<n.length;i++)e.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(t,n[i])&&(r[n[i]]=t[n[i]]);return r},Vt=class t{static adjustSignatureToLowS(e){return Ht(this,arguments,void 0,function*({signature:r}){let n=Lr.Signature.fromCompact(r);return n.hasHighS()?n.normalizeS().toCompactRawBytes():r})}static bytesToPrivateKey(e){return Ht(this,arguments,void 0,function*({privateKeyBytes:r}){let n=yield t.getCurvePoint({keyBytes:r}),i={kty:"EC",crv:"P-256",d:ne.uint8Array(r).toBase64Url(),x:ne.uint8Array(n.x).toBase64Url(),y:ne.uint8Array(n.y).toBase64Url()};return i.kid=yield ge({jwk:i}),i})}static bytesToPublicKey(e){return Ht(this,arguments,void 0,function*({publicKeyBytes:r}){let n=yield t.getCurvePoint({keyBytes:r}),i={kty:"EC",crv:"P-256",x:ne.uint8Array(n.x).toBase64Url(),y:ne.uint8Array(n.y).toBase64Url()};return i.kid=yield ge({jwk:i}),i})}static compressPublicKey(e){return Ht(this,arguments,void 0,function*({publicKeyBytes:r}){return Lr.ProjectivePoint.fromHex(r).toRawBytes(!0)})}static computePublicKey(e){return Ht(this,arguments,void 0,function*({key:r}){let n=yield t.privateKeyToBytes({privateKey:r}),i=yield t.getCurvePoint({keyBytes:n}),o={kty:"EC",crv:"P-256",x:ne.uint8Array(i.x).toBase64Url(),y:ne.uint8Array(i.y).toBase64Url()};return o.kid=yield ge({jwk:o}),o})}static convertDerToCompactSignature(e){return Ht(this,arguments,void 0,function*({derSignature:r}){return Lr.Signature.fromDER(r).toCompactRawBytes()})}static decompressPublicKey(e){return Ht(this,arguments,void 0,function*({publicKeyBytes:r}){return Lr.ProjectivePoint.fromHex(r).toRawBytes(!1)})}static generateKey(){return Ht(this,void 0,void 0,function*(){let e=Lr.utils.randomPrivateKey(),r=yield t.bytesToPrivateKey({privateKeyBytes:e});return r.kid=yield ge({jwk:r}),r})}static getPublicKey(e){return Ht(this,arguments,void 0,function*({key:r}){var n;if(!(ai(r)&&r.crv==="P-256"))throw new Error("Secp256r1: The provided key is not a 'P-256' private JWK.");let{d:i}=r,o=aN(r,["d"]);return(n=o.kid)!==null&&n!==void 0||(o.kid=yield ge({jwk:o})),o})}static privateKeyToBytes(e){return Ht(this,arguments,void 0,function*({privateKey:r}){if(!ai(r))throw new Error("Secp256r1: The provided key is not a valid EC private key.");return ne.base64Url(r.d).toUint8Array()})}static publicKeyToBytes(e){return Ht(this,arguments,void 0,function*({publicKey:r}){if(!(ja(r)&&r.y))throw new Error("Secp256r1: The provided key is not a valid EC public key.");let n=new Uint8Array([4]),i=ne.base64Url(r.x).toUint8Array(),o=ne.base64Url(r.y).toUint8Array();return new Uint8Array([...n,...i,...o])})}static sharedSecret(e){return Ht(this,arguments,void 0,function*({privateKeyA:r,publicKeyB:n}){if("x"in r&&"x"in n&&r.x===n.x)throw new Error("Secp256r1: ECDH shared secret cannot be computed from a single key pair's public and private keys.");let i=yield t.privateKeyToBytes({privateKey:r}),o=yield t.publicKeyToBytes({publicKey:n});return Lr.getSharedSecret(i,o,!0).slice(1)})}static sign(e){return Ht(this,arguments,void 0,function*({data:r,key:n}){let i=yield t.privateKeyToBytes({privateKey:n}),o=Yo(r);return Lr.sign(o,i).toCompactRawBytes()})}static validatePrivateKey(e){return Ht(this,arguments,void 0,function*({privateKeyBytes:r}){return Lr.utils.isValidPrivateKey(r)})}static validatePublicKey(e){return Ht(this,arguments,void 0,function*({publicKeyBytes:r}){try{Lr.ProjectivePoint.fromHex(r).assertValidity()}catch{return!1}return!0})}static verify(e){return Ht(this,arguments,void 0,function*({key:r,signature:n,data:i}){let o=yield t.publicKeyToBytes({publicKey:r}),s=Yo(i);return Lr.verify(n,s,o,{lowS:!1})})}static getCurvePoint(e){return Ht(this,arguments,void 0,function*({keyBytes:r}){r.byteLength===32&&(r=Lr.getPublicKey(r));let n=Lr.ProjectivePoint.fromHex(r),i=mr(n.x,32),o=mr(n.y,32);return{x:i,y:o}})}};var jd=function(t,e,r,n){function i(o){return o instanceof r?o:new r(function(s){s(o)})}return new(r||(r=Promise))(function(o,s){function c(d){try{u(n.next(d))}catch(f){s(f)}}function a(d){try{u(n.throw(d))}catch(f){s(f)}}function u(d){d.done?o(d.value):i(d.value).then(c,a)}u((n=n.apply(t,e||[])).next())})},Wd=class extends ci{computePublicKey(e){return jd(this,arguments,void 0,function*({key:r}){if(!ai(r))throw new TypeError("Invalid key provided. Must be an elliptic curve (EC) private key.");switch(r.crv){case"secp256k1":{let n=yield kt.computePublicKey({key:r});return n.alg="ES256K",n}case"P-256":{let n=yield Vt.computePublicKey({key:r});return n.alg="ES256",n}default:throw new Error(`Unsupported curve: ${r.crv}`)}})}generateKey(e){return jd(this,arguments,void 0,function*({algorithm:r}){switch(r){case"ES256K":case"secp256k1":{let n=yield kt.generateKey();return n.alg="ES256K",n}case"ES256":case"secp256r1":{let n=yield Vt.generateKey();return n.alg="ES256",n}}})}getPublicKey(e){return jd(this,arguments,void 0,function*({key:r}){if(!ai(r))throw new TypeError("Invalid key provided. Must be an elliptic curve (EC) private key.");switch(r.crv){case"secp256k1":{let n=yield kt.getPublicKey({key:r});return n.alg="ES256K",n}case"P-256":{let n=yield Vt.getPublicKey({key:r});return n.alg="ES256",n}default:throw new Error(`Unsupported curve: ${r.crv}`)}})}sign(e){return jd(this,arguments,void 0,function*({key:r,data:n}){if(!ai(r))throw new TypeError("Invalid key provided. Must be an elliptic curve (EC) private key.");switch(r.crv){case"secp256k1":return yield kt.sign({key:r,data:n});case"P-256":return yield Vt.sign({key:r,data:n});default:throw new Error(`Unsupported curve: ${r.crv}`)}})}verify(e){return jd(this,arguments,void 0,function*({key:r,signature:n,data:i}){if(!ja(r))throw new TypeError("Invalid key provided. Must be an elliptic curve (EC) public key.");switch(r.crv){case"secp256k1":return yield kt.verify({key:r,signature:n,data:i});case"P-256":return yield Vt.verify({key:r,signature:n,data:i});default:throw new Error(`Unsupported curve: ${r.crv}`)}})}};l();l();l();l();l();var fp=BigInt(4294967295),Hw=BigInt(32);function t_(t,e=!1){return e?{h:Number(t&fp),l:Number(t>>Hw&fp)}:{h:Number(t>>Hw&fp)|0,l:Number(t&fp)|0}}function uN(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}=t_(t[i],e);[r[i],n[i]]=[o,s]}return[r,n]}var dN=(t,e)=>BigInt(t>>>0)<<Hw|BigInt(e>>>0),fN=(t,e,r)=>t>>>r,lN=(t,e,r)=>t<<32-r|e>>>r,hN=(t,e,r)=>t>>>r|e<<32-r,pN=(t,e,r)=>t<<32-r|e>>>r,yN=(t,e,r)=>t<<64-r|e>>>r-32,gN=(t,e,r)=>t>>>r-32|e<<64-r,mN=(t,e)=>e,wN=(t,e)=>t,bN=(t,e,r)=>t<<r|e>>>32-r,xN=(t,e,r)=>e<<r|t>>>32-r,EN=(t,e,r)=>e<<r-32|t>>>64-r,vN=(t,e,r)=>t<<r-32|e>>>64-r;function SN(t,e,r,n){let i=(e>>>0)+(n>>>0);return{h:t+r+(i/2**32|0)|0,l:i|0}}var AN=(t,e,r)=>(t>>>0)+(e>>>0)+(r>>>0),TN=(t,e,r,n)=>e+r+n+(t/2**32|0)|0,_N=(t,e,r,n)=>(t>>>0)+(e>>>0)+(r>>>0)+(n>>>0),IN=(t,e,r,n,i)=>e+r+n+i+(t/2**32|0)|0,BN=(t,e,r,n,i)=>(t>>>0)+(e>>>0)+(r>>>0)+(n>>>0)+(i>>>0),RN=(t,e,r,n,i,o)=>e+r+n+i+o+(t/2**32|0)|0;var UN={fromBig:t_,split:uN,toBig:dN,shrSH:fN,shrSL:lN,rotrSH:hN,rotrSL:pN,rotrBH:yN,rotrBL:gN,rotr32H:mN,rotr32L:wN,rotlSH:bN,rotlSL:xN,rotlBH:EN,rotlBL:vN,add:SN,add3L:AN,add3H:TN,add4L:_N,add4H:IN,add5H:RN,add5L:BN},le=UN;var[ON,DN]=le.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))),Zo=new Uint32Array(80),Qo=new Uint32Array(80),Vw=class extends qa{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:c,Dl:a,Eh:u,El:d,Fh:f,Fl:h,Gh:p,Gl:g,Hh:y,Hl:x}=this;return[e,r,n,i,o,s,c,a,u,d,f,h,p,g,y,x]}set(e,r,n,i,o,s,c,a,u,d,f,h,p,g,y,x){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=c|0,this.Dl=a|0,this.Eh=u|0,this.El=d|0,this.Fh=f|0,this.Fl=h|0,this.Gh=p|0,this.Gl=g|0,this.Hh=y|0,this.Hl=x|0}process(e,r){for(let A=0;A<16;A++,r+=4)Zo[A]=e.getUint32(r),Qo[A]=e.getUint32(r+=4);for(let A=16;A<80;A++){let O=Zo[A-15]|0,T=Qo[A-15]|0,M=le.rotrSH(O,T,1)^le.rotrSH(O,T,8)^le.shrSH(O,T,7),q=le.rotrSL(O,T,1)^le.rotrSL(O,T,8)^le.shrSL(O,T,7),j=Zo[A-2]|0,$=Qo[A-2]|0,Z=le.rotrSH(j,$,19)^le.rotrBH(j,$,61)^le.shrSH(j,$,6),Q=le.rotrSL(j,$,19)^le.rotrBL(j,$,61)^le.shrSL(j,$,6),G=le.add4L(q,Q,Qo[A-7],Qo[A-16]),I=le.add4H(G,M,Z,Zo[A-7],Zo[A-16]);Zo[A]=I|0,Qo[A]=G|0}let{Ah:n,Al:i,Bh:o,Bl:s,Ch:c,Cl:a,Dh:u,Dl:d,Eh:f,El:h,Fh:p,Fl:g,Gh:y,Gl:x,Hh:S,Hl:_}=this;for(let A=0;A<80;A++){let O=le.rotrSH(f,h,14)^le.rotrSH(f,h,18)^le.rotrBH(f,h,41),T=le.rotrSL(f,h,14)^le.rotrSL(f,h,18)^le.rotrBL(f,h,41),M=f&p^~f&y,q=h&g^~h&x,j=le.add5L(_,T,q,DN[A],Qo[A]),$=le.add5H(j,S,O,M,ON[A],Zo[A]),Z=j|0,Q=le.rotrSH(n,i,28)^le.rotrBH(n,i,34)^le.rotrBH(n,i,39),G=le.rotrSL(n,i,28)^le.rotrBL(n,i,34)^le.rotrBL(n,i,39),I=n&o^n&c^o&c,D=i&s^i&a^s&a;S=y|0,_=x|0,y=p|0,x=g|0,p=f|0,g=h|0,{h:f,l:h}=le.add(u|0,d|0,$|0,Z|0),u=c|0,d=a|0,c=o|0,a=s|0,o=n|0,s=i|0;let E=le.add3L(Z,G,D);n=le.add3H(E,$,Q,I),i=E|0}({h:n,l:i}=le.add(this.Ah|0,this.Al|0,n|0,i|0)),{h:o,l:s}=le.add(this.Bh|0,this.Bl|0,o|0,s|0),{h:c,l:a}=le.add(this.Ch|0,this.Cl|0,c|0,a|0),{h:u,l:d}=le.add(this.Dh|0,this.Dl|0,u|0,d|0),{h:f,l:h}=le.add(this.Eh|0,this.El|0,f|0,h|0),{h:p,l:g}=le.add(this.Fh|0,this.Fl|0,p|0,g|0),{h:y,l:x}=le.add(this.Gh|0,this.Gl|0,y|0,x|0),{h:S,l:_}=le.add(this.Hh|0,this.Hl|0,S|0,_|0),this.set(n,i,o,s,c,a,u,d,f,h,p,g,y,x,S,_)}roundClean(){Zo.fill(0),Qo.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 qw=np(()=>new Vw);l();var On=BigInt(0),Pr=BigInt(1),lp=BigInt(2),kN=BigInt(8),NN={zip215:!0};function CN(t){let e=Fd(t);return sn(t,{hash:"function",a:"bigint",d:"bigint",randomBytes:"function"},{adjustScalarBytes:"function",domain:"function",uvRatio:"function",mapToCurve:"function"}),Object.freeze({...e})}function hp(t){let e=CN(t),{Fp:r,n,prehash:i,hash:o,randomBytes:s,nByteLength:c,h:a}=e,u=lp<<BigInt(c*8)-Pr,d=r.create,f=e.uvRatio||((N,R)=>{try{return{isValid:!0,value:r.sqrt(N*r.inv(R))}}catch{return{isValid:!1,value:On}}}),h=e.adjustScalarBytes||(N=>N),p=e.domain||((N,R,C)=>{if(R.length||C)throw new Error("Contexts/pre-hash are not supported");return N}),g=N=>typeof N=="bigint"&&On<N,y=(N,R)=>g(N)&&g(R)&&N<R,x=N=>N===On||y(N,u);function S(N,R){if(y(N,R))return N;throw new Error(`Expected valid scalar < ${R}, got ${typeof N} ${N}`)}function _(N){return N===On?N:S(N,n)}let A=new Map;function O(N){if(!(N instanceof T))throw new Error("ExtendedPoint expected")}class T{constructor(R,C,P,V){if(this.ex=R,this.ey=C,this.ez=P,this.et=V,!x(R))throw new Error("x required");if(!x(C))throw new Error("y required");if(!x(P))throw new Error("z required");if(!x(V))throw new Error("t required")}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static fromAffine(R){if(R instanceof T)throw new Error("extended point not allowed");let{x:C,y:P}=R||{};if(!x(C)||!x(P))throw new Error("invalid affine point");return new T(C,P,Pr,d(C*P))}static normalizeZ(R){let C=r.invertBatch(R.map(P=>P.ez));return R.map((P,V)=>P.toAffine(C[V])).map(T.fromAffine)}_setWindowSize(R){this._WINDOW_SIZE=R,A.delete(this)}assertValidity(){let{a:R,d:C}=e;if(this.is0())throw new Error("bad point: ZERO");let{ex:P,ey:V,ez:J,et:z}=this,W=d(P*P),Y=d(V*V),X=d(J*J),ue=d(X*X),ee=d(W*R),ce=d(X*d(ee+Y)),Ue=d(ue+d(C*d(W*Y)));if(ce!==Ue)throw new Error("bad point: equation left != right (1)");let Ke=d(P*V),Je=d(J*z);if(Ke!==Je)throw new Error("bad point: equation left != right (2)")}equals(R){O(R);let{ex:C,ey:P,ez:V}=this,{ex:J,ey:z,ez:W}=R,Y=d(C*W),X=d(J*V),ue=d(P*W),ee=d(z*V);return Y===X&&ue===ee}is0(){return this.equals(T.ZERO)}negate(){return new T(d(-this.ex),this.ey,this.ez,d(-this.et))}double(){let{a:R}=e,{ex:C,ey:P,ez:V}=this,J=d(C*C),z=d(P*P),W=d(lp*d(V*V)),Y=d(R*J),X=C+P,ue=d(d(X*X)-J-z),ee=Y+z,ce=ee-W,Ue=Y-z,Ke=d(ue*ce),Je=d(ee*Ue),xt=d(ue*Ue),pi=d(ce*ee);return new T(Ke,Je,pi,xt)}add(R){O(R);let{a:C,d:P}=e,{ex:V,ey:J,ez:z,et:W}=this,{ex:Y,ey:X,ez:ue,et:ee}=R;if(C===BigInt(-1)){let yu=d((J-V)*(X+Y)),Sf=d((J+V)*(X-Y)),gu=d(Sf-yu);if(gu===On)return this.double();let Af=d(z*lp*ee),Tf=d(W*lp*ue),Wr=Tf+Af,yo=Sf+yu,mu=Tf-Af,_f=d(Wr*gu),fs=d(yo*mu),If=d(Wr*mu),iy=d(gu*yo);return new T(_f,fs,iy,If)}let ce=d(V*Y),Ue=d(J*X),Ke=d(W*P*ee),Je=d(z*ue),xt=d((V+J)*(Y+X)-ce-Ue),pi=Je-Ke,ho=Je+Ke,pu=d(Ue-C*ce),vf=d(xt*pi),ny=d(ho*pu),po=d(xt*pu),jr=d(pi*ho);return new T(vf,ny,jr,po)}subtract(R){return this.add(R.negate())}wNAF(R){return j.wNAFCached(this,A,R,T.normalizeZ)}multiply(R){let{p:C,f:P}=this.wNAF(S(R,n));return T.normalizeZ([C,P])[0]}multiplyUnsafe(R){let C=_(R);return C===On?q:this.equals(q)||C===Pr?this:this.equals(M)?this.wNAF(C).p:j.unsafeLadder(this,C)}isSmallOrder(){return this.multiplyUnsafe(a).is0()}isTorsionFree(){return j.unsafeLadder(this,n).is0()}toAffine(R){let{ex:C,ey:P,ez:V}=this,J=this.is0();R==null&&(R=J?kN:r.inv(V));let z=d(C*R),W=d(P*R),Y=d(V*R);if(J)return{x:On,y:Pr};if(Y!==Pr)throw new Error("invZ was invalid");return{x:z,y:W}}clearCofactor(){let{h:R}=e;return R===Pr?this:this.multiplyUnsafe(R)}static fromHex(R,C=!1){let{d:P,a:V}=e,J=r.BYTES;R=Ge("pointHex",R,J);let z=R.slice(),W=R[J-1];z[J-1]=W&-129;let Y=Un(z);Y===On||(C?S(Y,u):S(Y,r.ORDER));let X=d(Y*Y),ue=d(X-Pr),ee=d(P*X-V),{isValid:ce,value:Ue}=f(ue,ee);if(!ce)throw new Error("Point.fromHex: invalid y coordinate");let Ke=(Ue&Pr)===Pr,Je=(W&128)!==0;if(!C&&Ue===On&&Je)throw new Error("Point.fromHex: x=0 and x_0=1");return Je!==Ke&&(Ue=d(-Ue)),T.fromAffine({x:Ue,y:Y})}static fromPrivateKey(R){return Q(R).point}toRawBytes(){let{x:R,y:C}=this.toAffine(),P=eo(C,r.BYTES);return P[P.length-1]|=R&Pr?128:0,P}toHex(){return Zi(this.toRawBytes())}}T.BASE=new T(e.Gx,e.Gy,Pr,d(e.Gx*e.Gy)),T.ZERO=new T(On,Pr,Pr,On);let{BASE:M,ZERO:q}=T,j=ap(T,c*8);function $(N){return Be(N,n)}function Z(N){return $(Un(N))}function Q(N){let R=c;N=Ge("private key",N,R);let C=Ge("hashed private key",o(N),2*R),P=h(C.slice(0,R)),V=C.slice(R,2*R),J=Z(P),z=M.multiply(J),W=z.toRawBytes();return{head:P,prefix:V,scalar:J,point:z,pointBytes:W}}function G(N){return Q(N).pointBytes}function I(N=new Uint8Array,...R){let C=to(...R);return Z(o(p(C,Ge("context",N),!!i)))}function D(N,R,C={}){N=Ge("message",N),i&&(N=i(N));let{prefix:P,scalar:V,pointBytes:J}=Q(R),z=I(C.context,P,N),W=M.multiply(z).toRawBytes(),Y=I(C.context,W,J,N),X=$(z+Y*V);_(X);let ue=to(W,eo(X,r.BYTES));return Ge("result",ue,c*2)}let E=NN;function U(N,R,C,P=E){let{context:V,zip215:J}=P,z=r.BYTES;N=Ge("signature",N,2*z),R=Ge("message",R),i&&(R=i(R));let W=Un(N.slice(z,2*z)),Y,X,ue;try{Y=T.fromHex(C,J),X=T.fromHex(N.slice(0,z),J),ue=M.multiplyUnsafe(W)}catch{return!1}if(!J&&Y.isSmallOrder())return!1;let ee=I(V,X.toRawBytes(),Y.toRawBytes(),R);return X.add(Y.multiplyUnsafe(ee)).subtract(ue).clearCofactor().equals(T.ZERO)}return M._setWindowSize(8),{CURVE:e,getPublicKey:G,sign:D,verify:U,ExtendedPoint:T,utils:{getExtendedPublicKey:Q,randomPrivateKey:()=>s(r.BYTES),precompute(N=8,R=T.BASE){return R._setWindowSize(N),R.multiply(BigInt(3)),R}}}}l();var Gd=BigInt(0),Fw=BigInt(1);function LN(t){return sn(t,{a:"bigint"},{montgomeryBits:"isSafeInteger",nByteLength:"isSafeInteger",adjustScalarBytes:"function",domain:"function",powPminus2:"function",Gu:"bigint"}),Object.freeze({...t})}function r_(t){let e=LN(t),{P:r}=e,n=A=>Be(A,r),i=e.montgomeryBits,o=Math.ceil(i/8),s=e.nByteLength,c=e.adjustScalarBytes||(A=>A),a=e.powPminus2||(A=>Dw(A,r-BigInt(2),r));function u(A,O,T){let M=n(A*(O-T));return O=n(O-M),T=n(T+M),[O,T]}function d(A){if(typeof A=="bigint"&&Gd<=A&&A<r)return A;throw new Error("Expected valid scalar 0 < scalar < CURVE.P")}let f=(e.a-BigInt(2))/BigInt(4);function h(A,O){let T=d(A),M=d(O),q=T,j=Fw,$=Gd,Z=T,Q=Fw,G=Gd,I;for(let E=BigInt(i-1);E>=Gd;E--){let U=M>>E&Fw;G^=U,I=u(G,j,Z),j=I[0],Z=I[1],I=u(G,$,Q),$=I[0],Q=I[1],G=U;let L=j+$,N=n(L*L),R=j-$,C=n(R*R),P=N-C,V=Z+Q,J=Z-Q,z=n(J*L),W=n(V*R),Y=z+W,X=z-W;Z=n(Y*Y),Q=n(q*n(X*X)),j=n(N*C),$=n(P*(N+n(f*P)))}I=u(G,j,Z),j=I[0],Z=I[1],I=u(G,$,Q),$=I[0],Q=I[1];let D=a($);return n(j*D)}function p(A){return eo(n(A),o)}function g(A){let O=Ge("u coordinate",A,o);return s===32&&(O[31]&=127),Un(O)}function y(A){let O=Ge("scalar",A),T=O.length;if(T!==o&&T!==s)throw new Error(`Expected ${o} or ${s} bytes, got ${T}`);return Un(c(O))}function x(A,O){let T=g(O),M=y(A),q=h(T,M);if(q===Gd)throw new Error("Invalid private or public key received");return p(q)}let S=p(e.Gu);function _(A){return x(A,S)}return{scalarMult:x,scalarMultBase:_,getSharedSecret:(A,O)=>x(A,O),getPublicKey:A=>_(A),utils:{randomPrivateKey:()=>e.randomBytes(e.nByteLength)},GuBytes:S}}var zd=BigInt("57896044618658097711785492504343953926634992332820282019728792003956564819949"),n_=BigInt("19681161376707505956807079304988542015446066515923890162744021073123829784752"),YG=BigInt(0),PN=BigInt(1),jw=BigInt(2),MN=BigInt(5),i_=BigInt(10),KN=BigInt(20),$N=BigInt(40),o_=BigInt(80);function s_(t){let e=zd,n=t*t%e*t%e,i=ze(n,jw,e)*n%e,o=ze(i,PN,e)*t%e,s=ze(o,MN,e)*o%e,c=ze(s,i_,e)*s%e,a=ze(c,KN,e)*c%e,u=ze(a,$N,e)*a%e,d=ze(u,o_,e)*u%e,f=ze(d,o_,e)*u%e,h=ze(f,i_,e)*s%e;return{pow_p_5_8:ze(h,jw,e)*t%e,b2:n}}function c_(t){return t[0]&=248,t[31]&=127,t[31]|=64,t}function HN(t,e){let r=zd,n=Be(e*e*e,r),i=Be(n*n*e,r),o=s_(t*i).pow_p_5_8,s=Be(t*n*o,r),c=Be(e*s*s,r),a=s,u=Be(s*n_,r),d=c===t,f=c===Be(-t,r),h=c===Be(-t*n_,r);return d&&(s=a),(f||h)&&(s=u),qT(s,r)&&(s=Be(-s,r)),{isValid:d||f,value:s}}var an=Fa(zd,void 0,!0),Yd={a:BigInt(-1),d:BigInt("37095705934669439343138083508754565189542113879843219016388785533085940283555"),Fp:an,n:BigInt("7237005577332262213973186563042994240857116359379907606001950938285454250989"),h:BigInt(8),Gx:BigInt("15112221349535400772501151409588531511454012693041857206046113283949847762202"),Gy:BigInt("46316835694926478169428394003475163141307993866256225615783033603165251855960"),hash:qw,randomBytes:Vd,adjustScalarBytes:c_,uvRatio:HN},es=hp(Yd);function a_(t,e,r){if(e.length>255)throw new Error("Context is too big");return rp(_w("SigEd25519 no Ed25519 collisions"),new Uint8Array([r?1:0,e.length]),e,t)}var JG=hp({...Yd,domain:a_}),XG=hp({...Yd,domain:a_,prehash:qw}),mc=r_({P:zd,a:BigInt(486662),montgomeryBits:255,nByteLength:32,Gu:BigInt(9),powPminus2:t=>{let e=zd,{pow_p_5_8:r,b2:n}=s_(t);return Be(ze(r,BigInt(3),e)*n,e)},adjustScalarBytes:c_,randomBytes:Vd});function u_(t){let{y:e}=es.ExtendedPoint.fromHex(t),r=BigInt(1);return an.toBytes(an.create((r+e)*an.inv(r-e)))}function d_(t){let e=Yd.hash(t.subarray(0,32));return Yd.adjustScalarBytes(e).subarray(0,32)}var VN=(an.ORDER+BigInt(3))/BigInt(8),ZG=an.pow(jw,VN),QG=an.sqrt(an.neg(an.ONE)),ez=(an.ORDER-BigInt(5))/BigInt(8),tz=BigInt(486662);var rz=FT(an,an.neg(BigInt(486664)));var nz=BigInt("25063068953384623474111414158702152701244531502492656460079210482610430750235"),iz=BigInt("54469307008909316920995813868745141605393597292927456921205312896311721017578"),oz=BigInt("1159843021668779879193775521855586647937357759715417654439879720876111806838"),sz=BigInt("40440834346308536858101042469323190826248399146238708352240133220865137265952");var cz=BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff");var un=function(t,e,r,n){function i(o){return o instanceof r?o:new r(function(s){s(o)})}return new(r||(r=Promise))(function(o,s){function c(d){try{u(n.next(d))}catch(f){s(f)}}function a(d){try{u(n.throw(d))}catch(f){s(f)}}function u(d){d.done?o(d.value):i(d.value).then(c,a)}u((n=n.apply(t,e||[])).next())})},qN=function(t,e){var r={};for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&e.indexOf(n)<0&&(r[n]=t[n]);if(t!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,n=Object.getOwnPropertySymbols(t);i<n.length;i++)e.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(t,n[i])&&(r[n[i]]=t[n[i]]);return r},Bt=class t{static bytesToPrivateKey(e){return un(this,arguments,void 0,function*({privateKeyBytes:r}){let n=es.getPublicKey(r),i={crv:"Ed25519",d:ne.uint8Array(r).toBase64Url(),kty:"OKP",x:ne.uint8Array(n).toBase64Url()};return i.kid=yield ge({jwk:i}),i})}static bytesToPublicKey(e){return un(this,arguments,void 0,function*({publicKeyBytes:r}){let n={kty:"OKP",crv:"Ed25519",x:ne.uint8Array(r).toBase64Url()};return n.kid=yield ge({jwk:n}),n})}static computePublicKey(e){return un(this,arguments,void 0,function*({key:r}){let n=yield t.privateKeyToBytes({privateKey:r}),i=es.getPublicKey(n),o={kty:"OKP",crv:"Ed25519",x:ne.uint8Array(i).toBase64Url()};return o.kid=yield ge({jwk:o}),o})}static convertPrivateKeyToX25519(e){return un(this,arguments,void 0,function*({privateKey:r}){let n=yield t.privateKeyToBytes({privateKey:r}),i=d_(n),o=mc.getPublicKey(i),s={kty:"OKP",crv:"X25519",d:ne.uint8Array(i).toBase64Url(),x:ne.uint8Array(o).toBase64Url()};return s.kid=yield ge({jwk:s}),s})}static convertPublicKeyToX25519(e){return un(this,arguments,void 0,function*({publicKey:r}){let n=yield t.publicKeyToBytes({publicKey:r});if(!(yield t.validatePublicKey({publicKeyBytes:n})))throw new Error("Ed25519: Invalid public key.");let o=u_(n),s={kty:"OKP",crv:"X25519",x:ne.uint8Array(o).toBase64Url()};return s.kid=yield ge({jwk:s}),s})}static generateKey(){return un(this,void 0,void 0,function*(){let e=es.utils.randomPrivateKey(),r=yield t.bytesToPrivateKey({privateKeyBytes:e});return r.kid=yield ge({jwk:r}),r})}static getPublicKey(e){return un(this,arguments,void 0,function*({key:r}){var n;if(!(ui(r)&&r.crv==="Ed25519"))throw new Error("Ed25519: The provided key is not an Ed25519 private JWK.");let{d:i}=r,o=qN(r,["d"]);return(n=o.kid)!==null&&n!==void 0||(o.kid=yield ge({jwk:o})),o})}static privateKeyToBytes(e){return un(this,arguments,void 0,function*({privateKey:r}){if(!ui(r))throw new Error("Ed25519: The provided key is not a valid OKP private key.");return ne.base64Url(r.d).toUint8Array()})}static publicKeyToBytes(e){return un(this,arguments,void 0,function*({publicKey:r}){if(!Wa(r))throw new Error("Ed25519: The provided key is not a valid OKP public key.");return ne.base64Url(r.x).toUint8Array()})}static sign(e){return un(this,arguments,void 0,function*({key:r,data:n}){let i=yield t.privateKeyToBytes({privateKey:r});return es.sign(n,i)})}static validatePublicKey(e){return un(this,arguments,void 0,function*({publicKeyBytes:r}){try{es.ExtendedPoint.fromHex(r).assertValidity()}catch{return!1}return!0})}static verify(e){return un(this,arguments,void 0,function*({key:r,signature:n,data:i}){let o=yield t.publicKeyToBytes({publicKey:r});return es.verify(n,i,o)})}};var Jd=function(t,e,r,n){function i(o){return o instanceof r?o:new r(function(s){s(o)})}return new(r||(r=Promise))(function(o,s){function c(d){try{u(n.next(d))}catch(f){s(f)}}function a(d){try{u(n.throw(d))}catch(f){s(f)}}function u(d){d.done?o(d.value):i(d.value).then(c,a)}u((n=n.apply(t,e||[])).next())})},pp=class extends ci{computePublicKey(e){return Jd(this,arguments,void 0,function*({key:r}){if(!ui(r))throw new TypeError("Invalid key provided. Must be an octet key pair (OKP) private key.");switch(r.crv){case"Ed25519":{let n=yield Bt.computePublicKey({key:r});return n.alg="EdDSA",n}default:throw new Error(`Unsupported curve: ${r.crv}`)}})}generateKey(e){return Jd(this,arguments,void 0,function*({algorithm:r}){switch(r){case"Ed25519":{let n=yield Bt.generateKey();return n.alg="EdDSA",n}}})}getPublicKey(e){return Jd(this,arguments,void 0,function*({key:r}){if(!ui(r))throw new TypeError("Invalid key provided. Must be an octet key pair (OKP) private key.");switch(r.crv){case"Ed25519":{let n=yield Bt.getPublicKey({key:r});return n.alg="EdDSA",n}default:throw new Error(`Unsupported curve: ${r.crv}`)}})}sign(e){return Jd(this,arguments,void 0,function*({key:r,data:n}){if(!ui(r))throw new TypeError("Invalid key provided. Must be an octet key pair (OKP) private key.");switch(r.crv){case"Ed25519":return yield Bt.sign({key:r,data:n});default:throw new Error(`Unsupported curve: ${r.crv}`)}})}verify(e){return Jd(this,arguments,void 0,function*({key:r,signature:n,data:i}){if(!Wa(r))throw new TypeError("Invalid key provided. Must be an octet key pair (OKP) public key.");switch(r.crv){case"Ed25519":return yield Bt.verify({key:r,signature:n,data:i});default:throw new Error(`Unsupported curve: ${r.crv}`)}})}};var no=function(t,e,r,n){function i(o){return o instanceof r?o:new r(function(s){s(o)})}return new(r||(r=Promise))(function(o,s){function c(d){try{u(n.next(d))}catch(f){s(f)}}function a(d){try{u(n.throw(d))}catch(f){s(f)}}function u(d){d.done?o(d.value):i(d.value).then(c,a)}u((n=n.apply(t,e||[])).next())})},Ww={Ed25519:{implementation:pp,names:["Ed25519"]},secp256k1:{implementation:Wd,names:["ES256K","secp256k1"]},secp256r1:{implementation:Wd,names:["ES256","secp256r1"]},"SHA-256":{implementation:Qh,names:["SHA-256"]}},er=class{constructor(e){var r;this._algorithmInstances=new Map,this._keyStore=(r=e?.keyStore)!==null&&r!==void 0?r:new wh}digest(e){return no(this,arguments,void 0,function*({algorithm:r,data:n}){return yield this.getAlgorithm({algorithm:r}).digest({algorithm:r,data:n})})}exportKey(e){return no(this,arguments,void 0,function*({keyUri:r}){return yield this.getPrivateKey({keyUri:r})})}generateKey(e){return no(this,arguments,void 0,function*({algorithm:r}){let i=yield this.getAlgorithm({algorithm:r}).generateKey({algorithm:r});if(i?.kid===void 0)throw new Error("Generated key is missing a required property: kid");let o=`${$w}${i.kid}`;return yield this._keyStore.set(o,i),o})}getKeyUri(e){return no(this,arguments,void 0,function*({key:r}){let n=yield ge({jwk:r});return`${$w}${n}`})}getPublicKey(e){return no(this,arguments,void 0,function*({keyUri:r}){let n=yield this.getPrivateKey({keyUri:r}),i=this.getAlgorithmName({key:n});return yield this.getAlgorithm({algorithm:i}).getPublicKey({key:n})})}importKey(e){return no(this,arguments,void 0,function*({key:r}){var n;if(!QT(r))throw new TypeError("Invalid key provided. Must be a private key in JWK format.");let i=structuredClone(r);(n=i.kid)!==null&&n!==void 0||(i.kid=yield ge({jwk:i}));let o=yield this.getKeyUri({key:i});return yield this._keyStore.set(o,i),o})}sign(e){return no(this,arguments,void 0,function*({keyUri:r,data:n}){let i=yield this.getPrivateKey({keyUri:r}),o=this.getAlgorithmName({key:i});return this.getAlgorithm({algorithm:o}).sign({data:n,key:i})})}verify(e){return no(this,arguments,void 0,function*({key:r,signature:n,data:i}){let o=this.getAlgorithmName({key:r});return this.getAlgorithm({algorithm:o}).verify({key:r,signature:n,data:i})})}getAlgorithm({algorithm:e}){var r;let n=(r=Ww[e])===null||r===void 0?void 0:r.implementation;if(!n)throw new Error(`Algorithm not supported: ${e}`);return this._algorithmInstances.has(n)||this._algorithmInstances.set(n,new n),this._algorithmInstances.get(n)}getAlgorithmName({key:e}){let r=e.alg,n=e.crv;for(let i in Ww){let o=Ww[i];if(r&&o.names.includes(r))return i;if(n&&o.names.includes(n))return i}throw new Error(`Unable to determine algorithm based on provided input: alg=${r}, crv=${n}`)}getPrivateKey(e){return no(this,arguments,void 0,function*({keyUri:r}){let n=yield this._keyStore.get(r);if(!n)throw new Error(`Key not found: ${r}`);return n})}};l();var yp=class t{static getJoseSignatureAlgorithmFromPublicKey(e){let r={Ed25519:"EdDSA","P-256":"ES256","P-384":"ES384","P-521":"ES512",secp256k1:"ES256K"};if(e.alg&&Object.values(r).includes(e.alg))return e.alg;if(e.crv&&Object.keys(r).includes(e.crv))return r[e.crv];throw new Error(`Unable to determine algorithm based on provided input: alg=${e.alg}, crv=${e.crv}. Supported 'alg' values: ${Object.values(r).join(", ")}. Supported 'crv' values: ${Object.keys(r).join(", ")}.`)}static randomBytes(e){return UT(e)}static randomUuid(){return Ka.randomUUID()}static randomPin({length:e}){if(3>e||e>10)throw new Error("randomPin() can securely generate a PIN between 3 to 10 digits.");let r=Math.pow(10,e)-1,n;if(e<=6){let i=Math.pow(10,e);do{let o=t.randomBytes(Math.ceil(e/2));n=new DataView(o.buffer).getUint16(0,!1)%i}while(n>r)}else{let i=Math.pow(10,10);do{let o=t.randomBytes(4);n=new DataView(o.buffer).getUint32(0,!1)%i}while(n>r)}return n.toString().padStart(e,"0")}};l();l();l();l();l();l();l();l();l();l();var ts=function(t,e,r,n){function i(o){return o instanceof r?o:new r(function(s){s(o)})}return new(r||(r=Promise))(function(o,s){function c(d){try{u(n.next(d))}catch(f){s(f)}}function a(d){try{u(n.throw(d))}catch(f){s(f)}}function u(d){d.done?o(d.value):i(d.value).then(c,a)}u((n=n.apply(t,e||[])).next())})},FN=function(t,e){var r={};for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&e.indexOf(n)<0&&(r[n]=t[n]);if(t!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,n=Object.getOwnPropertySymbols(t);i<n.length;i++)e.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(t,n[i])&&(r[n[i]]=t[n[i]]);return r},Ga=class t{static bytesToPrivateKey(e){return ts(this,arguments,void 0,function*({privateKeyBytes:r}){let n=mc.getPublicKey(r),i={kty:"OKP",crv:"X25519",d:ne.uint8Array(r).toBase64Url(),x:ne.uint8Array(n).toBase64Url()};return i.kid=yield ge({jwk:i}),i})}static bytesToPublicKey(e){return ts(this,arguments,void 0,function*({publicKeyBytes:r}){let n={kty:"OKP",crv:"X25519",x:ne.uint8Array(r).toBase64Url()};return n.kid=yield ge({jwk:n}),n})}static computePublicKey(e){return ts(this,arguments,void 0,function*({key:r}){let n=yield t.privateKeyToBytes({privateKey:r}),i=mc.getPublicKey(n),o={kty:"OKP",crv:"X25519",x:ne.uint8Array(i).toBase64Url()};return o.kid=yield ge({jwk:o}),o})}static generateKey(){return ts(this,void 0,void 0,function*(){let e=mc.utils.randomPrivateKey(),r=yield t.bytesToPrivateKey({privateKeyBytes:e});return r.kid=yield ge({jwk:r}),r})}static getPublicKey(e){return ts(this,arguments,void 0,function*({key:r}){var n;if(!(ui(r)&&r.crv==="X25519"))throw new Error("X25519: The provided key is not an X25519 private JWK.");let{d:i}=r,o=FN(r,["d"]);return(n=o.kid)!==null&&n!==void 0||(o.kid=yield ge({jwk:o})),o})}static privateKeyToBytes(e){return ts(this,arguments,void 0,function*({privateKey:r}){if(!ui(r))throw new Error("X25519: The provided key is not a valid OKP private key.");return ne.base64Url(r.d).toUint8Array()})}static publicKeyToBytes(e){return ts(this,arguments,void 0,function*({publicKey:r}){if(!Wa(r))throw new Error("X25519: The provided key is not a valid OKP public key.");return ne.base64Url(r.x).toUint8Array()})}static sharedSecret(e){return ts(this,arguments,void 0,function*({privateKeyA:r,publicKeyB:n}){if("x"in r&&"x"in n&&r.x===n.x)throw new Error("X25519: ECDH shared secret cannot be computed from a single key pair's public and private keys.");let i=yield t.privateKeyToBytes({privateKey:r}),o=yield t.publicKeyToBytes({publicKey:n});return mc.getSharedSecret(i,o)})}};l();l();l();function Mr(t){if(typeof t=="string"&&t.length!==0)return t.split("#").pop()}function Yw({didDocument:t}){var e,r;if(!t)throw new TypeError("Required parameter missing: 'didDocument'");let n=[];return n.push(...(r=(e=t.verificationMethod)===null||e===void 0?void 0:e.filter(zw))!==null&&r!==void 0?r:[]),Object.keys(Mi).forEach(i=>{var o,s;n.push(...(s=(o=t[i])===null||o===void 0?void 0:o.filter(zw))!==null&&s!==void 0?s:[])}),n}function f_({didDocument:t}){let r=Yw({didDocument:t}).map(n=>n.type);return[...new Set(r)]}function l_({didDocument:t,methodId:e}){let r=[];return Object.keys(Mi).forEach(n=>{if(Array.isArray(t[n])){let i=t[n],o=Mr(e);i.some(c=>{let a=Mr(c)===o,u=zw(c)&&Mr(c.id)===o;return a||u})&&r.push(n)}}),r}function h_(t){return!t||typeof t!="object"||t===null?!1:"id"in t&&"type"in t&&"serviceEndpoint"in t}function zw(t){return!(!t||typeof t!="object"||t===null||!("id"in t&&"type"in t&&"controller"in t)||typeof t.id!="string"||typeof t.type!="string"||typeof t.controller!="string")}function Jw({keyBytes:t,multicodecCode:e,multicodecName:r}){let n=Jt.addPrefix({code:e,data:t,name:r}),i=ne.uint8Array(n).toBase58Btc();return ne.base58Btc(i).toMultibase()}function Xw({multibaseKeyId:t}){try{let e=ne.multibase(t).toBase58Btc(),r=ne.base58Btc(e).toUint8Array(),{code:n,data:i,name:o}=Jt.removePrefix({prefixedData:r});return{keyBytes:i,multicodecCode:n,multicodecName:o}}catch{throw new re(ie.InvalidDid,`Invalid multibase identifier: ${t}`)}}var Xd=function(t,e,r,n){function i(o){return o instanceof r?o:new r(function(s){s(o)})}return new(r||(r=Promise))(function(o,s){function c(d){try{u(n.next(d))}catch(f){s(f)}}function a(d){try{u(n.throw(d))}catch(f){s(f)}}function u(d){d.done?o(d.value):i(d.value).then(c,a)}u((n=n.apply(t,e||[])).next())})},br=class t{constructor({uri:e,document:r,metadata:n,keyManager:i}){this.uri=e,this.document=r,this.metadata=n,this.keyManager=i}export(){return Xd(this,void 0,void 0,function*(){if(!(Array.isArray(this.document.verificationMethod)&&this.document.verificationMethod.length>0))throw new Error(`DID document for '${this.uri}' is missing verification methods`);let e=JSON.parse(JSON.stringify({uri:this.uri,document:this.document,metadata:this.metadata}));if("exportKey"in this.keyManager&&typeof this.keyManager.exportKey=="function"){let r=[];for(let n of this.document.verificationMethod){if(!n.publicKeyJwk)throw new Error(`Verification method '${n.id}' does not contain a public key in JWK format`);let i=yield this.keyManager.getKeyUri({key:n.publicKeyJwk}),o=yield this.keyManager.exportKey({keyUri:i});r.push(Object.assign({},o))}e.privateKeys=r}return e})}getSigner(e){return Xd(this,void 0,void 0,function*(){var r;let n=(r=this.document.verificationMethod)===null||r===void 0?void 0:r.find(a=>{var u,d;return Mr(a.id)===((u=Mr(e?.methodId))!==null&&u!==void 0?u:Mr((d=this.document.assertionMethod)===null||d===void 0?void 0:d[0]))});if(!(n&&n.publicKeyJwk))throw new re(ie.InternalError,"A verification method intended for signing could not be determined from the DID Document");let i=yield this.keyManager.getKeyUri({key:n.publicKeyJwk}),o=yield this.keyManager.getPublicKey({keyUri:i}),s=this.keyManager;return{algorithm:yp.getJoseSignatureAlgorithmFromPublicKey(o),keyId:n.id,sign(a){return Xd(this,arguments,void 0,function*({data:u}){return yield s.sign({data:u,keyUri:i})})},verify(a){return Xd(this,arguments,void 0,function*({data:u,signature:d}){return yield s.verify({data:u,key:o,signature:d})})}}})}static import(e){return Xd(this,arguments,void 0,function*({portableDid:r,keyManager:n=new er}){var i;let o=Yw({didDocument:r.document});if(o.length===0)throw new re(ie.InvalidDidDocument,"At least one verification method is required but 0 were given");for(let c of(i=r.privateKeys)!==null&&i!==void 0?i:[]){let a=yield n.getKeyUri({key:c});(yield n.getPublicKey({keyUri:a}).then(()=>!0).catch(()=>!1))||(yield n.importKey({key:c}))}for(let c of o){if(!c.publicKeyJwk)throw new Error(`Verification method '${c.id}' does not contain a public key in JWK format`);let a=yield n.getKeyUri({key:c.publicKeyJwk});yield n.getPublicKey({keyUri:a})}return new t({uri:r.uri,document:r.document,metadata:r.metadata,keyManager:n})})}};l();l();l();l();l();var Zw="0123456789abcdef",y_=[],p_=[];for(let t=0;t<256;t++)y_[t]=Zw[t>>4&15]+Zw[t&15],t<16&&(t<10?p_[48+t]=t:p_[87+t]=t);var Qw=t=>{let e=t.length,r="",n=0;for(;n<e;)r+=y_[t[n++]];return r};var g_=(t,e=0)=>{let r=t.length||0;if(!e){let s=r;for(;s--;)e+=t[s].length}let n=new Uint8Array(e),i=e,o=r;for(;o--;)i-=t[o].length,n.set(t[o],i);return n};l();var m_="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",WN=typeof Uint8Array>"u"?[]:new Uint8Array(256);for(Zd=0;Zd<m_.length;Zd++)WN[m_.charCodeAt(Zd)]=Zd;var Zd;var GN=new TextDecoder,eb=(t,e)=>e?new TextDecoder(e).decode(t):GN.decode(t),zN=new TextEncoder,dn=t=>zN.encode(t);var w_=typeof window<"u"?window:self,b_=w_.crypto||w_.msCrypto||{},cJ=b_.subtle||b_.webkitSubtle;l();function za(t){let e=t<0?1:0;return t=Math.abs(Number(t||1)),Math.floor(Math.log10(t))+1+e}function gp(t){return ArrayBuffer.isView(t)?"arraybufferview":Array.isArray(t)?"array":t instanceof Number?"number":t instanceof Boolean?"boolean":t instanceof Set?"set":t instanceof Map?"map":t instanceof String?"string":t instanceof ArrayBuffer?"arraybuffer":typeof t}function Re(t,e,r){let n=[],i=null;return Re._encode(n,t),i=g_(n),Re.bytes=i.length,ArrayBuffer.isView(e)?(e.set(i,r),e):i}Re.bytes=-1;Re._floatConversionDetected=!1;Re._encode=function(t,e){if(e!=null)switch(gp(e)){case"object":Re.dict(t,e);break;case"map":Re.dictMap(t,e);break;case"array":Re.list(t,e);break;case"set":Re.listSet(t,e);break;case"string":Re.string(t,e);break;case"number":Re.number(t,e);break;case"boolean":Re.number(t,e);break;case"arraybufferview":Re.buffer(t,new Uint8Array(e.buffer,e.byteOffset,e.byteLength));break;case"arraybuffer":Re.buffer(t,new Uint8Array(e));break}};var mp=new Uint8Array([101]),x_=new Uint8Array([100]),E_=new Uint8Array([108]);Re.buffer=function(t,e){t.push(dn(e.length+":"),e)};Re.string=function(t,e){t.push(dn(dn(e).byteLength+":"+e))};Re.number=function(t,e){if(Number.isInteger(e))return t.push(dn("i"+BigInt(e)+"e"));let r=2147483648,n=e/r<<0,i=e%r<<0,o=n*r+i;t.push(dn("i"+o+"e")),o!==e&&!Re._floatConversionDetected&&(Re._floatConversionDetected=!0,console.warn('WARNING: Possible data corruption detected with value "'+e+'":','Bencoding only defines support for integers, value was converted to "'+o+'"'),console.trace())};Re.dict=function(t,e){t.push(x_);let r=0,n,i=Object.keys(e).sort(),o=i.length;for(;r<o;r++)n=i[r],e[n]!=null&&(Re.string(t,n),Re._encode(t,e[n]));t.push(mp)};Re.dictMap=function(t,e){t.push(x_);let r=Array.from(e.keys()).sort();for(let n of r)e.get(n)!=null&&(ArrayBuffer.isView(n)?Re._encode(t,n):Re.string(t,String(n)),Re._encode(t,e.get(n)));t.push(mp)};Re.list=function(t,e){let r=0,n=e.length;for(t.push(E_);r<n;r++)e[r]!=null&&Re._encode(t,e[r]);t.push(mp)};Re.listSet=function(t,e){t.push(E_);for(let r of e)r!=null&&Re._encode(t,r);t.push(mp)};var v_=Re;l();var YN=105,JN=58,XN=100,ZN=108,tb=101;function S_(t,e,r){let n=0,i=1;for(let o=e;o<r;o++){let s=t[o];if(s<58&&s>=48){n=n*10+(s-48);continue}if(!(o===e&&s===43)){if(o===e&&s===45){i=-1;continue}if(s===46)break;throw new Error("not a number: buffer["+o+"] = "+s)}}return n*i}function de(t,e,r,n){return t==null||t.length===0?null:(typeof e!="number"&&n==null&&(n=e,e=void 0),typeof r!="number"&&n==null&&(n=r,r=void 0),de.position=0,de.encoding=n||null,de.data=ArrayBuffer.isView(t)?new Uint8Array(t.slice(e,r)):dn(t),de.bytes=de.data.length,de.next())}de.bytes=0;de.position=0;de.data=null;de.encoding=null;de.next=function(){switch(de.data[de.position]){case XN:return de.dictionary();case ZN:return de.list();case YN:return de.integer();default:return de.buffer()}};de.find=function(t){let e=de.position,r=de.data.length,n=de.data;for(;e<r;){if(n[e]===t)return e;e++}throw new Error('Invalid data: Missing delimiter "'+String.fromCharCode(t)+'" [0x'+t.toString(16)+"]")};de.dictionary=function(){de.position++;let t={};for(;de.data[de.position]!==tb;){let e=de.buffer(),r=eb(e);r.includes("\uFFFD")&&(r=Qw(e)),t[r]=de.next()}return de.position++,t};de.list=function(){de.position++;let t=[];for(;de.data[de.position]!==tb;)t.push(de.next());return de.position++,t};de.integer=function(){let t=de.find(tb),e=S_(de.data,de.position+1,t);return de.position+=t+1-de.position,e};de.buffer=function(){let t=de.find(JN),e=S_(de.data,de.position,t),r=++t+e;return de.position=r,de.encoding?eb(de.data.slice(t,r)):de.data.slice(t,r)};var A_=de;l();function QN(t){let e=2;for(let r of t)e+=wp(r);return e}function eC(t){let e=2;for(let[r,n]of t){let i=dn(r).byteLength;e+=za(i)+1+i,e+=wp(n)}return e}function tC(t){let e=2,r=Object.keys(t);for(let n=0;n<r.length;n++){let i=dn(r[n]).byteLength;e+=za(i)+1+i,e+=wp(t[r[n]])}return e}function rC(t){let e=dn(t).byteLength;return za(e)+1+e}function nC(t){let e=t.byteLength-t.byteOffset;return za(e)+1+e}function wp(t){if(t==null)return 0;let r=gp(t);switch(r){case"arraybufferview":return nC(t);case"string":return rC(t);case"array":case"set":return QN(t);case"number":return 1+za(Math.floor(t))+1;case"bigint":return 1+t.toString().length+1;case"object":return tC(t);case"map":return eC(t);default:throw new TypeError(`Unsupported value of type "${r}"`)}}var rb=wp;var iC=rb,nb={encode:v_,decode:A_,byteLength:rb,encodingLength:iC};l();l();var oC=/^(\d{1,3}\.){3,3}\d{1,3}$/;var sC=/^(::)?(((\d{1,3}\.){3}(\d{1,3}){1})?([0-9a-f]){0,4}:{0,2}){1,8}(::)?$/i;var Dn={name:"v4",size:4,isFormat:t=>oC.test(t),encode(t,e,r){r=~~r,e=e||new Uint8Array(r+4);let n=t.length,i=0;for(let o=0;o<n;){let s=t.charCodeAt(o++);s===46?(e[r++]=i,i=0):i=i*10+(s-48)}return e[r]=i,e},decode(t,e){return e=~~e,`${t[e++]}.${t[e++]}.${t[e++]}.${t[e]}`}},io={name:"v6",size:16,isFormat:t=>t.length>0&&sC.test(t),encode(t,e,r){r=~~r;let n=r+16,i=-1,o=0,s=0,c=!0,a=!1;e=e||new Uint8Array(r+16);for(let u=0;u<t.length;u++){let d=t.charCodeAt(u);d===58?(c?i!==-1?(r<n&&(e[r]=0),r<n-1&&(e[r+1]=0),r+=2):r<n&&(i=r):(a===!0?(r<n&&(e[r]=s),r++):(r<n&&(e[r]=o>>8),r<n-1&&(e[r+1]=o&255),r+=2),o=0,s=0),c=!0,a=!1):d===46?(r<n&&(e[r]=s),r++,s=0,o=0,c=!1,a=!0):(c=!1,d>=97?d-=87:d>=65?d-=55:(d-=48,s=s*10+d),o=(o<<4)+d)}if(c===!1)a===!0?(r<n&&(e[r]=s),r++):(r<n&&(e[r]=o>>8),r<n-1&&(e[r+1]=o&255),r+=2);else if(i===0)r<n&&(e[r]=0),r<n-1&&(e[r+1]=0),r+=2;else if(i!==-1){r+=2;for(let u=Math.min(r-1,n-1);u>=i+2;u--)e[u]=e[u-2];e[i]=0,e[i+1]=0,i=r}if(i!==r&&i!==-1)for(r>n-2&&(r=n-2);n>i;)e[--n]=r<n&&r>i?e[--r]:0;else for(;r<n;)e[r++]=0;return e},decode(t,e){e=~~e;let r="";for(let n=0;n<16;n+=2)n!==0&&(r+=":"),r+=(t[e+n]<<8|t[e+n+1]).toString(16);return r.replace(/(^|:)0(:0)*:0(:|$)/,"$1::$3").replace(/:{3,4}/,"::")}};function T_(t){if(Dn.isFormat(t))return Dn.size;if(io.isFormat(t))return io.size;throw Error(`Invalid ip address: ${t}`)}function __(t){return T_(t)===Dn.size?1:2}function I_(t,e,r){r=~~r;let n=T_(t);return typeof e=="function"&&(e=e(r+n)),n===Dn.size?Dn.encode(t,e,r):io.encode(t,e,r)}function B_(t,e,r){if(e=~~e,r=r||t.length-e,r===Dn.size)return Dn.decode(t,e,r);if(r===io.size)return io.decode(t,e,r);throw Error(`Invalid buffer size needs to be ${Dn.size} for v4 or ${io.size} for v6.`)}l();function Qd(t){switch(t){case 1:return"A";case 10:return"NULL";case 28:return"AAAA";case 18:return"AFSDB";case 42:return"APL";case 257:return"CAA";case 60:return"CDNSKEY";case 59:return"CDS";case 37:return"CERT";case 5:return"CNAME";case 49:return"DHCID";case 32769:return"DLV";case 39:return"DNAME";case 48:return"DNSKEY";case 43:return"DS";case 55:return"HIP";case 13:return"HINFO";case 45:return"IPSECKEY";case 25:return"KEY";case 36:return"KX";case 29:return"LOC";case 15:return"MX";case 35:return"NAPTR";case 2:return"NS";case 47:return"NSEC";case 50:return"NSEC3";case 51:return"NSEC3PARAM";case 12:return"PTR";case 46:return"RRSIG";case 17:return"RP";case 24:return"SIG";case 6:return"SOA";case 99:return"SPF";case 33:return"SRV";case 44:return"SSHFP";case 32768:return"TA";case 249:return"TKEY";case 52:return"TLSA";case 250:return"TSIG";case 16:return"TXT";case 252:return"AXFR";case 251:return"IXFR";case 41:return"OPT";case 255:return"ANY"}return"UNKNOWN_"+t}function Ya(t){switch(t.toUpperCase()){case"A":return 1;case"NULL":return 10;case"AAAA":return 28;case"AFSDB":return 18;case"APL":return 42;case"CAA":return 257;case"CDNSKEY":return 60;case"CDS":return 59;case"CERT":return 37;case"CNAME":return 5;case"DHCID":return 49;case"DLV":return 32769;case"DNAME":return 39;case"DNSKEY":return 48;case"DS":return 43;case"HIP":return 55;case"HINFO":return 13;case"IPSECKEY":return 45;case"KEY":return 25;case"KX":return 36;case"LOC":return 29;case"MX":return 15;case"NAPTR":return 35;case"NS":return 2;case"NSEC":return 47;case"NSEC3":return 50;case"NSEC3PARAM":return 51;case"PTR":return 12;case"RRSIG":return 46;case"RP":return 17;case"SIG":return 24;case"SOA":return 6;case"SPF":return 99;case"SRV":return 33;case"SSHFP":return 44;case"TA":return 32768;case"TKEY":return 249;case"TLSA":return 52;case"TSIG":return 250;case"TXT":return 16;case"AXFR":return 252;case"IXFR":return 251;case"OPT":return 41;case"ANY":return 255;case"*":return 255}return t.toUpperCase().startsWith("UNKNOWN_")?parseInt(t.slice(8)):0}l();function R_(t){switch(t){case 0:return"NOERROR";case 1:return"FORMERR";case 2:return"SERVFAIL";case 3:return"NXDOMAIN";case 4:return"NOTIMP";case 5:return"REFUSED";case 6:return"YXDOMAIN";case 7:return"YXRRSET";case 8:return"NXRRSET";case 9:return"NOTAUTH";case 10:return"NOTZONE";case 11:return"RCODE_11";case 12:return"RCODE_12";case 13:return"RCODE_13";case 14:return"RCODE_14";case 15:return"RCODE_15"}return"RCODE_"+t}l();function U_(t){switch(t){case 0:return"QUERY";case 1:return"IQUERY";case 2:return"STATUS";case 3:return"OPCODE_3";case 4:return"NOTIFY";case 5:return"UPDATE";case 6:return"OPCODE_6";case 7:return"OPCODE_7";case 8:return"OPCODE_8";case 9:return"OPCODE_9";case 10:return"OPCODE_10";case 11:return"OPCODE_11";case 12:return"OPCODE_12";case 13:return"OPCODE_13";case 14:return"OPCODE_14";case 15:return"OPCODE_15"}return"OPCODE_"+t}l();function ib(t){switch(t){case 1:return"IN";case 2:return"CS";case 3:return"CH";case 4:return"HS";case 255:return"ANY"}return"UNKNOWN_"+t}function ob(t){switch(t.toUpperCase()){case"IN":return 1;case"CS":return 2;case"CH":return 3;case"HS":return 4;case"ANY":return 255}return 0}l();function O_(t){switch(t){case 1:return"LLQ";case 2:return"UL";case 3:return"NSID";case 5:return"DAU";case 6:return"DHU";case 7:return"N3U";case 8:return"CLIENT_SUBNET";case 9:return"EXPIRE";case 10:return"COOKIE";case 11:return"TCP_KEEPALIVE";case 12:return"PADDING";case 13:return"CHAIN";case 14:return"KEY_TAG";case 26946:return"DEVICEID"}return t<0?null:`OPTION_${t}`}function sb(t){if(typeof t=="number")return t;if(!t)return-1;switch(t.toUpperCase()){case"OPTION_0":return 0;case"LLQ":return 1;case"UL":return 2;case"NSID":return 3;case"OPTION_4":return 4;case"DAU":return 5;case"DHU":return 6;case"N3U":return 7;case"CLIENT_SUBNET":return 8;case"EXPIRE":return 9;case"COOKIE":return 10;case"TCP_KEEPALIVE":return 11;case"PADDING":return 12;case"CHAIN":return 13;case"KEY_TAG":return 14;case"DEVICEID":return 26946;case"OPTION_65535":return 65535}let e=t.match(/_(\d+)$/);return e?parseInt(e[1],10):-1}l();l();function cb(t){let e=0,r=t.length;for(let n=0;n<r;n+=1){let i=t.charCodeAt(n);if(i<=127)e+=1;else if(i<=2047)e+=2;else if((i&63488)!==55296)e+=3;else{let o=n+1;o===r||i>=56320||(t.charCodeAt(o)&64512)!==56320?e+=3:(n=o,e+=4)}}return e}function Ja(t,e,r){let n=t.length;r==null&&(r=0),e===void 0&&(e=new Uint8Array(cb(t)+r));let i=r;for(let o=0;o<n;o+=1){let s=t.charCodeAt(o);if(s<=127)e[i++]=s;else if(s<=2047)e[i++]=192|(s&1984)>>6,e[i++]=128|s&63;else if((s&63488)!==55296)e[i++]=224|(s&61440)>>12,e[i++]=128|(s&4032)>>6,e[i++]=128|s&63;else{let c=o+1;if(c===n||s>=56320)e[i++]=239,e[i++]=191,e[i++]=189;else{let a=t.charCodeAt(c);(a&64512)!==56320?(e[i++]=239,e[i++]=191,e[i++]=189):(o=c,s=65536|(s&1023)<<10|a&1023,e[i++]=240|(s&1835008)>>18,e[i++]=128|(s&258048)>>12,e[i++]=128|(s&4032)>>6,e[i++]=128|s&63)}}}return Ja.bytes=i-r,e}Ja.bytes=0;function Xa(t,e,r){let n="";e==null&&(e=0),r==null&&(r=t.length);for(let i=e;i<r;){let o=t[i++],s;if(o<=128)s=o;else if(o>191&&o<224)s=(o&31)<<6|t[i++]&63;else if(o>239&&o<365){s=((o&7)<<18|(t[i++]&63)<<12|(t[i++]&63)<<6|t[i++]&63)-65536;let c=55296|s>>10&1023;n+=String.fromCharCode(c),s=56320|s&1023}else s=(o&15)<<12|(t[i++]&63)<<6|t[i++]&63;n+=String.fromCharCode(s)}return Xa.bytes=r-e,n}Xa.bytes=0;var rs=t=>t instanceof Uint8Array;function oo(t){return typeof t=="string"?cb(t):t.byteLength}function bp(t){return t instanceof Uint8Array?t:Array.isArray(t)?new Uint8Array(t):Ja(t)}function xp(t,e,r){if(typeof e!="string")throw new Error("unknown input type");return Ja(e,t,r),Ja.bytes}var ef={},D_=new Array(255);for(let t=0;t<=15;t+=1){let e=t.toString(16),r=e.toUpperCase();for(let n=0;n<=15;n+=1){let i=n.toString(16),o=i.toUpperCase(),s=t<<4|n,c=`${e}${i}`;D_[s]=c,ef[c]=s,ef[`${r}${i}`]=s,ef[`${e}${o}`]=s,ef[`${r}${o}`]=s}}function k_(t,e,r){let n="";for(let i=e;i<r;){let o=t[i++];n+=D_[o]}return n}function ab(t){return t.length>>>1}function N_(t,e,r,n){let i=0;for(;r<n;){let o=e.substr(i,2),s=ef[o];if(s===void 0)return;t[r++]=s,i+=2}return t}var pC=Math.pow(2,24),yC=Math.pow(2,16),gC=Math.pow(2,8),di=(t,e)=>t[e]*pC+t[e+1]*yC+t[e+2]*gC+t[e+3],he=(t,e)=>t[e]<<8|t[e+1],fi=(t,e,r)=>(e=+e,t[r+3]=e,e=e>>>8,t[r+2]=e,e=e>>>8,t[r+1]=e,e=e>>>8,t[r]=e,r+4),ae=(t,e,r)=>(t[r]=e>>8,t[r+1]=e&255,r+2);function xr(t,e,r,n,i){return r<0&&(n-=r,r=0),n<0&&(n=0),i<0?new Uint8Array(0):r>=e.length||n>=i?0:mC(t,e,r,n,i)}function mC(t,e,r,n,i){i-n>e.length-r&&(i=n+e.length-r);let o=i-n,s=t.length-n;return o>s&&(o=s),(n!==0||i<t.length)&&(t=new Uint8Array(t.buffer,t.byteOffset+n,o)),e.set(t,r),o}var bC=0,C_=32768,db=32768,xC=~db,P_=32768,EC=~P_;function He({bytes:t=0,encode:e,decode:r,encodingLength:n}){return e.bytes=t,r.bytes=t,{encode:e,decode:r,encodingLength:n||(()=>t)}}var se=He({encode(t,e,r){e||(e=new Uint8Array(se.encodingLength(t))),r||(r=0);let n=r,i=t.replace(/^\.|\.$/gm,"");if(i.length){let o=i.split(".");for(let s=0;s<o.length;s++){let c=xp(e,o[s],r+1);e[r]=c,r+=c+1}}return e[r++]=0,se.encode.bytes=r-n,e},decode(t,e){e||(e=0);let r=[],n=e,i=0,o=0,s=!1;for(;;){if(e>=t.length)throw new Error("Cannot decode name (buffer overflow)");let c=t[e++];if(o+=s?0:1,c===0)break;if(c&192)if((c&192)===192){if(e+1>t.length)throw new Error("Cannot decode name (buffer overflow)");let a=he(t,e-1)-49152;if(a>=n)throw new Error("Cannot decode name (bad pointer)");e=a,n=a,o+=s?0:1,s=!0}else throw new Error("Cannot decode name (bad label)");else{if(e+c>t.length)throw new Error("Cannot decode name (buffer overflow)");if(i+=c+1,i>254)throw new Error("Cannot decode name (name too long)");r.push(Xa(t,e,e+c)),e+=c,o+=s?0:c}}return se.decode.bytes=o,r.length===0?".":r.join(".")},encodingLength(t){return t==="."||t===".."?1:oo(t.replace(/^\.|\.$/gm,""))+2}}),Rt=He({encode(t,e,r){e||(e=new Uint8Array(Rt.encodingLength(t))),r||(r=0);let n=xp(e,t,r+1);return e[r]=n,Rt.encode.bytes=n+1,e},decode(t,e){e||(e=0);let r=t[e],n=Xa(t,e+1,e+1+r);return Rt.decode.bytes=r+1,n},encodingLength(t){return oo(t)+1}}),Za=He({bytes:12,encode(t,e,r){e||(e=new Uint8Array(Za.encodingLength(t))),r||(r=0);let n=(t.flags||0)&32767,i=t.type==="response"?C_:bC;return ae(e,t.id||0,r),ae(e,n|i,r+2),ae(e,t.questions.length,r+4),ae(e,t.answers.length,r+6),ae(e,t.authorities.length,r+8),ae(e,t.additionals.length,r+10),e},decode(t,e){if(e||(e=0),t.length<12)throw new Error("Header must be 12 bytes");let r=he(t,e+2);return{id:he(t,e),type:r&C_?"response":"query",flags:r&32767,flag_qr:(r>>15&1)===1,opcode:U_(r>>11&15),flag_aa:(r>>10&1)===1,flag_tc:(r>>9&1)===1,flag_rd:(r>>8&1)===1,flag_ra:(r>>7&1)===1,flag_z:(r>>6&1)===1,flag_ad:(r>>5&1)===1,flag_cd:(r>>4&1)===1,rcode:R_(r&15),questions:new Array(he(t,e+4)),answers:new Array(he(t,e+6)),authorities:new Array(he(t,e+8)),additionals:new Array(he(t,e+10))}},encodingLength(){return 12}}),vp=He({encode(t,e,r){e||(e=new Uint8Array(vp.encodingLength(t))),r||(r=0);let n=t.length;return ae(e,n,r),xr(t,e,r+2,0,n),vp.encode.bytes=n+2,e},decode(t,e){e||(e=0);let r=he(t,e),n=t.slice(e+2,e+2+r);return vp.decode.bytes=r+2,n},encodingLength(t){return t.length+2}}),Sp=He({encode(t,e,r){return e||(e=new Uint8Array(Sp.encodingLength(t))),r||(r=0),se.encode(t,e,r+2),ae(e,se.encode.bytes,r),Sp.encode.bytes=se.encode.bytes+2,e},decode(t,e){e||(e=0);let r=he(t,e),n=se.decode(t,e+2);return Sp.decode.bytes=r+2,n},encodingLength(t){return se.encodingLength(t)+2}}),Ap=He({encode(t,e,r){e||(e=new Uint8Array(Ap.encodingLength(t))),r||(r=0);let n=r;return r+=2,se.encode(t.mname,e,r),r+=se.encode.bytes,se.encode(t.rname,e,r),r+=se.encode.bytes,fi(e,t.serial||0,r),r+=4,fi(e,t.refresh||0,r),r+=4,fi(e,t.retry||0,r),r+=4,fi(e,t.expire||0,r),r+=4,fi(e,t.minimum||0,r),r+=4,ae(e,r-n-2,n),Ap.encode.bytes=r-n,e},decode(t,e){e||(e=0);let r=e,n={};return e+=2,n.mname=se.decode(t,e),e+=se.decode.bytes,n.rname=se.decode(t,e),e+=se.decode.bytes,n.serial=di(t,e),e+=4,n.refresh=di(t,e),e+=4,n.retry=di(t,e),e+=4,n.expire=di(t,e),e+=4,n.minimum=di(t,e),e+=4,Ap.decode.bytes=e-r,n},encodingLength(t){return 22+se.encodingLength(t.mname)+se.encodingLength(t.rname)}}),Tp=He({encode(t,e,r){Array.isArray(t)||(t=[t]);for(let i=0;i<t.length;i++)if(typeof t[i]=="string"&&(t[i]=bp(t[i])),!rs(t[i]))throw new Error("Must be a Buffer");e||(e=new Uint8Array(Tp.encodingLength(t))),r||(r=0);let n=r;return r+=2,t.forEach(function(i){e[r++]=i.length,xr(i,e,r,0,i.length),r+=i.length}),ae(e,r-n-2,n),Tp.encode.bytes=r-n,e},decode(t,e){e||(e=0);let r=e,n=he(t,e);e+=2;let i=[];for(;n>0;){let o=t[e++];if(--n,n<o)throw new Error("Buffer overflow");i.push(t.slice(e,e+o)),e+=o,n-=o}return Tp.decode.bytes=e-r,i},encodingLength(t){Array.isArray(t)||(t=[t]);let e=2;return t.forEach(function(r){typeof r=="string"?e+=oo(r)+1:e+=r.length+1}),e}}),_p=He({encode(t,e,r){e||(e=new Uint8Array(_p.encodingLength(t))),r||(r=0),typeof t=="string"&&(t=bp(t)),t||(t=new Uint8Array(0));let n=r;r+=2;let i=t.length;return xr(t,e,r,0,i),r+=i,ae(e,r-n-2,n),_p.encode.bytes=r-n,e},decode(t,e){e||(e=0);let r=e,n=he(t,e);e+=2;let i=t.slice(e,e+n);return e+=n,_p.decode.bytes=e-r,i},encodingLength(t){return t?(rs(t)?t.length:oo(t))+2:2}}),Ip=He({encode(t,e,r){e||(e=new Uint8Array(Ip.encodingLength(t))),r||(r=0);let n=r;return r+=2,Rt.encode(t.cpu,e,r),r+=Rt.encode.bytes,Rt.encode(t.os,e,r),r+=Rt.encode.bytes,ae(e,r-n-2,n),Ip.encode.bytes=r-n,e},decode(t,e){e||(e=0);let r=e,n={};return e+=2,n.cpu=Rt.decode(t,e),e+=Rt.decode.bytes,n.os=Rt.decode(t,e),e+=Rt.decode.bytes,Ip.decode.bytes=e-r,n},encodingLength(t){return Rt.encodingLength(t.cpu)+Rt.encodingLength(t.os)+2}}),tu=He({encode(t,e,r){return e||(e=new Uint8Array(tu.encodingLength(t))),r||(r=0),se.encode(t,e,r+2),ae(e,se.encode.bytes,r),tu.encode.bytes=se.encode.bytes+2,e},decode(t,e){e||(e=0);let r=se.decode(t,e+2);return tu.decode.bytes=se.decode.bytes+2,r},encodingLength(t){return se.encodingLength(t)+2}}),Bp=He({encode(t,e,r){e||(e=new Uint8Array(Bp.encodingLength(t))),r||(r=0),ae(e,t.priority||0,r+2),ae(e,t.weight||0,r+4),ae(e,t.port||0,r+6),se.encode(t.target,e,r+8);let n=se.encode.bytes+6;return ae(e,n,r),Bp.encode.bytes=n+2,e},decode(t,e){e||(e=0);let r=he(t,e),n={};return n.priority=he(t,e+2),n.weight=he(t,e+4),n.port=he(t,e+6),n.target=se.decode(t,e+8),Bp.decode.bytes=r+2,n},encodingLength(t){return 8+se.encodingLength(t.target)}}),ns=He({encode(t,e,r){let n=ns.encodingLength(t);return e||(e=new Uint8Array(ns.encodingLength(t))),r||(r=0),t.issuerCritical&&(t.flags=ns.ISSUER_CRITICAL),ae(e,n-2,r),r+=2,e[r]=t.flags||0,r+=1,Rt.encode(t.tag,e,r),r+=Rt.encode.bytes,xp(e,t.value,r),r+=oo(t.value),ns.encode.bytes=n,e},decode(t,e){e||(e=0);let r=he(t,e);e+=2;let n=e,i={};return i.flags=t[e],e+=1,i.tag=Rt.decode(t,e),e+=Rt.decode.bytes,i.value=Xa(t,e,n+r),i.issuerCritical=!!(i.flags&ns.ISSUER_CRITICAL),ns.decode.bytes=r+2,i},encodingLength(t){return Rt.encodingLength(t.tag)+Rt.encodingLength(t.value)+2}});ns.ISSUER_CRITICAL=128;var Rp=He({encode(t,e,r){e||(e=new Uint8Array(Rp.encodingLength(t))),r||(r=0);let n=r;return r+=2,ae(e,t.preference||0,r),r+=2,se.encode(t.exchange,e,r),r+=se.encode.bytes,ae(e,r-n-2,n),Rp.encode.bytes=r-n,e},decode(t,e){e||(e=0);let r=e,n={};return e+=2,n.preference=he(t,e),e+=2,n.exchange=se.decode(t,e),e+=se.decode.bytes,Rp.decode.bytes=e-r,n},encodingLength(t){return 4+se.encodingLength(t.exchange)}}),M_=He({encode(t,e,r){return e||(e=new Uint8Array(M_.encodingLength(t))),r||(r=0),ae(e,4,r),r+=2,Dn.encode(t,e,r),e},decode(t,e){return e||(e=0),e+=2,Dn.decode(t,e)},bytes:6}),Up=He({encode(t,e,r){return e||(e=new Uint8Array(Up.encodingLength(t))),r||(r=0),ae(e,16,r),r+=2,io.encode(t,e,r),Up.encode.bytes=18,e},decode(t,e){e||(e=0),e+=2;let r=io.decode(t,e);return Up.decode.bytes=18,r},bytes:18}),L_=t=>new Uint8Array(t),so=He({encode(t,e,r){e||(e=new Uint8Array(so.encodingLength(t))),r||(r=0);let n=r,i=sb(t.code);if(ae(e,i,r),r+=2,t.data)ae(e,t.data.length,r),r+=2,xr(t.data,e,r),r+=t.data.length;else switch(i){case 8:{let o=t.sourcePrefixLength||0,s=t.family||__(t.ip,L_),c=I_(t.ip,L_),a=Math.ceil(o/8);ae(e,a+4,r),r+=2,ae(e,s,r),r+=2,e[r++]=o,e[r++]=t.scopePrefixLength||0,xr(c,e,r,0,a),r+=a}break;case 11:t.timeout?(ae(e,2,r),r+=2,ae(e,t.timeout,r),r+=2):(ae(e,0,r),r+=2);break;case 12:{let o=t.length||0;ae(e,o,r),r+=2,e.fill(0,r,r+o),r+=o}break;case 14:{let o=t.tags.length*2;ae(e,o,r),r+=2;for(let s of t.tags)ae(e,s,r),r+=2}break;default:throw new Error(`Unknown roption code: ${t.code}`)}return so.encode.bytes=r-n,e},decode(t,e){e||(e=0);let r={};r.code=he(t,e),r.type=O_(r.code),e+=2;let n=he(t,e);switch(e+=2,r.data=t.slice(e,e+n),r.code){case 8:r.family=he(t,e),e+=2,r.sourcePrefixLength=t[e++],r.scopePrefixLength=t[e++];{let i=new Uint8Array(r.family===1?4:16);xr(t,i,0,e,e+n-4),r.ip=B_(i)}break;case 11:n>0&&(r.timeout=he(t,e),e+=2);break;case 14:r.tags=[];for(let i=0;i<n;i+=2)r.tags.push(he(t,e)),e+=2}return so.decode.bytes=n+4,r},encodingLength(t){if(t.data)return t.data.length+4;switch(sb(t.code)){case 8:{let r=t.sourcePrefixLength||0;return Math.ceil(r/8)+8}case 11:return typeof t.timeout=="number"?6:4;case 12:return t.length+4;case 14:return 4+t.tags.length*2}throw new Error(`Unknown roption code: ${t.code}`)}}),is=He({encode(t,e,r){e||(e=new Uint8Array(is.encodingLength(t))),r||(r=0);let n=r,i=eu(t,so);return ae(e,i,r),r=cf(t,so,e,r+2),is.encode.bytes=r-n,e},decode(t,e){e||(e=0);let r=e,n=[],i=he(t,e);e+=2;let o=0;for(;i>0;)n[o++]=so.decode(t,e),e+=so.decode.bytes,i-=so.decode.bytes;return is.decode.bytes=e-r,n},encodingLength(t){return 2+eu(t||[],so)}}),li=He({encode(t,e,r){e||(e=new Uint8Array(li.encodingLength(t))),r||(r=0);let n=r,i=t.key;if(!rs(i))throw new Error("Key must be a Buffer");return r+=2,ae(e,t.flags,r),r+=2,e[r]=li.PROTOCOL_DNSSEC,r+=1,e[r]=t.algorithm,r+=1,xr(i,e,r,0,i.length),r+=i.length,li.encode.bytes=r-n,ae(e,li.encode.bytes-2,n),e},decode(t,e){e||(e=0);let r=e,n={},i=he(t,e);if(e+=2,n.flags=he(t,e),e+=2,t[e]!==li.PROTOCOL_DNSSEC)throw new Error("Protocol must be 3");return e+=1,n.algorithm=t[e],e+=1,n.key=t.slice(e,r+i+2),e+=n.key.length,li.decode.bytes=e-r,n},encodingLength(t){return 6+oo(t.key)}});li.PROTOCOL_DNSSEC=3;li.ZONE_KEY=128;li.SECURE_ENTRYPOINT=32768;var tf=He({encode(t,e,r){e||(e=new Uint8Array(tf.encodingLength(t))),r||(r=0);let n=r,i=t.signature;if(!rs(i))throw new Error("Signature must be a Buffer");return r+=2,ae(e,Ya(t.typeCovered),r),r+=2,e[r]=t.algorithm,r+=1,e[r]=t.labels,r+=1,fi(e,t.originalTTL,r),r+=4,fi(e,t.expiration,r),r+=4,fi(e,t.inception,r),r+=4,ae(e,t.keyTag,r),r+=2,se.encode(t.signersName,e,r),r+=se.encode.bytes,xr(i,e,r,0,i.length),r+=i.length,tf.encode.bytes=r-n,ae(e,tf.encode.bytes-2,n),e},decode(t,e){e||(e=0);let r=e,n={},i=he(t,e);return e+=2,n.typeCovered=Qd(he(t,e)),e+=2,n.algorithm=t[e],e+=1,n.labels=t[e],e+=1,n.originalTTL=di(t,e),e+=4,n.expiration=di(t,e),e+=4,n.inception=di(t,e),e+=4,n.keyTag=he(t,e),e+=2,n.signersName=se.decode(t,e),e+=se.decode.bytes,n.signature=t.slice(e,r+i+2),e+=n.signature.length,tf.decode.bytes=e-r,n},encodingLength(t){return 20+se.encodingLength(t.signersName)+oo(t.signature)}}),rf=He({encode(t,e,r){e||(e=new Uint8Array(rf.encodingLength(t))),r||(r=0);let n=r;return r+=2,se.encode(t.mbox||".",e,r),r+=se.encode.bytes,se.encode(t.txt||".",e,r),r+=se.encode.bytes,rf.encode.bytes=r-n,ae(e,rf.encode.bytes-2,n),e},decode(t,e){e||(e=0);let r=e,n={};return e+=2,n.mbox=se.decode(t,e)||".",e+=se.decode.bytes,n.txt=se.decode(t,e)||".",e+=se.decode.bytes,rf.decode.bytes=e-r,n},encodingLength(t){return 2+se.encodingLength(t.mbox||".")+se.encodingLength(t.txt||".")}}),Kr=He({encode(t,e,r){e||(e=new Uint8Array(Kr.encodingLength(t))),r||(r=0);let n=r,i=[];for(let o=0;o<t.length;o++){let s=Ya(t[o]);i[s>>8]===void 0&&(i[s>>8]=[]),i[s>>8][s>>3&31]|=1<<7-(s&7)}for(let o=0;o<i.length;o++)if(i[o]!==void 0){let s=bp(i[o]);e[r]=o,r+=1,e[r]=s.length,r+=1,xr(s,e,r,0,s.length),r+=s.length}return Kr.encode.bytes=r-n,e},decode(t,e,r){e||(e=0);let n=e,i=[];for(;e-n<r;){let o=t[e];e+=1;let s=t[e];e+=1;for(let c=0;c<s;c++){let a=t[e+c];for(let u=0;u<8;u++)if(a&1<<7-u){let d=Qd(o<<8|c<<3|u);i.push(d)}}e+=s}return Kr.decode.bytes=e-n,i},encodingLength(t){let e=[];for(let n=0;n<t.length;n++){let i=Ya(t[n]);e[i>>8]=Math.max(e[i>>8]||0,i&255)}let r=0;for(let n=0;n<e.length;n++)e[n]!==void 0&&(r+=2+Math.ceil((e[n]+1)/8));return r}}),nf=He({encode(t,e,r){e||(e=new Uint8Array(nf.encodingLength(t))),r||(r=0);let n=r;return r+=2,se.encode(t.nextDomain,e,r),r+=se.encode.bytes,Kr.encode(t.rrtypes,e,r),r+=Kr.encode.bytes,nf.encode.bytes=r-n,ae(e,nf.encode.bytes-2,n),e},decode(t,e){e||(e=0);let r=e,n={},i=he(t,e);return e+=2,n.nextDomain=se.decode(t,e),e+=se.decode.bytes,n.rrtypes=Kr.decode(t,e,i-(e-r)),e+=Kr.decode.bytes,nf.decode.bytes=e-r,n},encodingLength(t){return 2+se.encodingLength(t.nextDomain)+Kr.encodingLength(t.rrtypes)}}),of=He({encode(t,e,r){e||(e=new Uint8Array(of.encodingLength(t))),r||(r=0);let n=r,i=t.salt;if(!rs(i))throw new Error("salt must be a Buffer");let o=t.nextDomain;if(!rs(o))throw new Error("nextDomain must be a Buffer");return r+=2,e[r]=t.algorithm,r+=1,e[r]=t.flags,r+=1,ae(e,t.iterations,r),r+=2,e[r]=i.length,r+=1,xr(i,e,r,0,i.length),r+=i.length,e[r]=o.length,r+=1,xr(o,e,r,0,o.length),r+=o.length,Kr.encode(t.rrtypes,e,r),r+=Kr.encode.bytes,of.encode.bytes=r-n,ae(e,of.encode.bytes-2,n),e},decode(t,e){e||(e=0);let r=e,n={},i=he(t,e);e+=2,n.algorithm=t[e],e+=1,n.flags=t[e],e+=1,n.iterations=he(t,e),e+=2;let o=t[e];e+=1,n.salt=t.slice(e,e+o),e+=o;let s=t[e];return e+=1,n.nextDomain=t.slice(e,e+s),e+=s,n.rrtypes=Kr.decode(t,e,i-(e-r)),e+=Kr.decode.bytes,of.decode.bytes=e-r,n},encodingLength(t){return 8+t.salt.length+t.nextDomain.length+Kr.encodingLength(t.rrtypes)}}),sf=He({encode(t,e,r){e||(e=new Uint8Array(sf.encodingLength(t))),r||(r=0);let n=r,i=t.digest;if(!rs(i))throw new Error("Digest must be a Buffer");return r+=2,ae(e,t.keyTag,r),r+=2,e[r]=t.algorithm,r+=1,e[r]=t.digestType,r+=1,xr(i,e,r,0,i.length),r+=i.length,sf.encode.bytes=r-n,ae(e,sf.encode.bytes-2,n),e},decode(t,e){e||(e=0);let r=e,n={},i=he(t,e);return e+=2,n.keyTag=he(t,e),e+=2,n.algorithm=t[e],e+=1,n.digestType=t[e],e+=1,n.digest=t.slice(e,r+i+2),e+=n.digest.length,sf.decode.bytes=e-r,n},encodingLength(t){return 6+oo(t.digest)}}),Qa=He({encode(t,e,r){e||(e=new Uint8Array(Qa.encodingLength(t))),r||(r=0);let n=r;r+=2,e[r]=t.algorithm,r+=1,e[r]=t.hash,r+=1;let i=ab(t.fingerprint),o=fb(t.hash);if(i!==o)throw new Error(`Invalid length of fingerprint "${t.fingerprint}" for hashType=${t.hash}: ${i} != ${o}`);return N_(e,t.fingerprint,r,r+=i),Qa.encode.bytes=r-n,ae(e,Qa.encode.bytes-2,n),e},decode(t,e){e||(e=0);let r=e,n={};e+=2,n.algorithm=t[e],e+=1,n.hash=t[e],e+=1;let i=fb(n.hash);return n.fingerprint=k_(t,e,e+i),e+=i,Qa.decode.bytes=e-r,n},encodingLength(t){return 4+ab(t.fingerprint)}});function fb(t){if(t===1)return 20;if(t===2)return 32;throw new Error(`Invalid hashType=${t}, supported=1,2`)}Qa.getFingerprintLengthForHashType=fb;function ub(t){switch(t.toUpperCase()){case"A":return M_;case"PTR":return tu;case"CNAME":return tu;case"DNAME":return tu;case"TXT":return Tp;case"NULL":return _p;case"AAAA":return Up;case"SRV":return Bp;case"HINFO":return Ip;case"CAA":return ns;case"NS":return Sp;case"SOA":return Ap;case"MX":return Rp;case"OPT":return is;case"DNSKEY":return li;case"RRSIG":return tf;case"RP":return rf;case"NSEC":return nf;case"NSEC3":return of;case"SSHFP":return Qa;case"DS":return sf}return vp}var fn=He({encode(t,e,r){e||(e=new Uint8Array(fn.encodingLength(t))),r||(r=0);let n=r;if(se.encode(t.name,e,r),r+=se.encode.bytes,ae(e,Ya(t.type),r),t.type.toUpperCase()==="OPT"){if(t.name!==".")throw new Error("OPT name must be root.");ae(e,t.udpPayloadSize||4096,r+2),e[r+4]=t.extendedRcode||0,e[r+5]=t.ednsVersion||0,ae(e,t.flags||0,r+6),r+=8,is.encode(t.options||[],e,r),r+=is.encode.bytes}else{let i=ob(t.class===void 0?"IN":t.class);t.flush&&(i|=db),ae(e,i,r+2),fi(e,t.ttl||0,r+4),r+=8;let o=ub(t.type);o.encode(t.data,e,r),r+=o.encode.bytes}return fn.encode.bytes=r-n,e},decode(t,e){e||(e=0);let r={},n=e;if(r.name=se.decode(t,e),e+=se.decode.bytes,r.type=Qd(he(t,e)),r.type==="OPT")r.udpPayloadSize=he(t,e+2),r.extendedRcode=t[e+4],r.ednsVersion=t[e+5],r.flags=he(t,e+6),r.flag_do=(r.flags>>15&1)===1,r.options=is.decode(t,e+8),e+=8+is.decode.bytes;else{let i=he(t,e+2);r.ttl=di(t,e+4),r.class=ib(i&xC),r.flush=!!(i&db);let o=ub(r.type);r.data=o.decode(t,e+8),e+=8+o.decode.bytes}return fn.decode.bytes=e-n,r},encodingLength(t){let e=t.data!==null&&t.data!==void 0?t.data:t.options;return se.encodingLength(t.name)+8+ub(t.type).encodingLength(e)}}),ru=He({encode(t,e,r){e||(e=new Uint8Array(ru.encodingLength(t))),r||(r=0);let n=r;return se.encode(t.name,e,r),r+=se.encode.bytes,ae(e,Ya(t.type),r),r+=2,ae(e,ob(t.class===void 0?"IN":t.class),r),r+=2,ru.encode.bytes=r-n,t},decode(t,e){e||(e=0);let r=e,n={};return n.name=se.decode(t,e),e+=se.decode.bytes,n.type=Qd(he(t,e)),e+=2,n.class=ib(he(t,e)),e+=2,!!(n.class&P_)&&(n.class&=EC),ru.decode.bytes=e-r,n},encodingLength(t){return se.encodingLength(t.name)+4}});var K_=1024;var qt={encode:function(t,e,r){let n=!e;n&&(e=new Uint8Array(vC(t))),r||(r=0);let i=r;return t.questions||(t.questions=[]),t.answers||(t.answers=[]),t.authorities||(t.authorities=[]),t.additionals||(t.additionals=[]),Za.encode(t,e,r),r+=Za.encode.bytes,r=cf(t.questions,ru,e,r),r=cf(t.answers,fn,e,r),r=cf(t.authorities,fn,e,r),r=cf(t.additionals,fn,e,r),qt.encode.bytes=r-i,n&&af.bytes!==e.length?e.slice(0,af.bytes):e},decode:function(t,e){e||(e=0);let r=e,n=Za.decode(t,e);return e+=Za.decode.bytes,e=Ep(n.questions,ru,t,e),e=Ep(n.answers,fn,t,e),e=Ep(n.authorities,fn,t,e),e=Ep(n.additionals,fn,t,e),qt.decode.bytes=e-r,n},encodingLength:function(t){return Za.encodingLength(t)+eu(t.questions||[],ru)+eu(t.answers||[],fn)+eu(t.authorities||[],fn)+eu(t.additionals||[],fn)}};qt.encode.bytes=0;qt.decode.bytes=0;function Op(t,e){if(t.questions)throw new Error("Only one .question object expected instead of a .questions array!");let r=Object.assign({type:e},t);return r.question&&(r.questions=[r.question],delete r.question),r}var Dp={encode:function(t,e,r){return e=qt.encode(Op(t,"query"),e,r),Dp.encode.bytes=qt.encode.bytes,e},decode:function(t,e){let r=qt.decode(t,e);return Dp.decode.bytes=qt.decode.bytes,r.questions&&(r.question=r.questions[0],delete r.questions),r},encodingLength:function(t){return qt.encodingLength(Op(t,"query"))}};Dp.encode.bytes=0;Dp.decode.bytes=0;var kp={encode:function(t,e,r){return e=qt.encode(Op(t,"response"),e,r),kp.encode.bytes=qt.encode.bytes,e},decode:function(t,e){let r=qt.decode(t,e);return kp.decode.bytes=qt.decode.bytes,r.questions&&(r.question=r.questions[0],delete r.questions),r},encodingLength:function(t){return qt.encodingLength(Op(t,"response"))}};kp.encode.bytes=0;kp.decode.bytes=0;var af=qt.encode,Np=qt.decode,vC=qt.encodingLength;function $_(t){let e=af(t),r=new Uint8Array(2+e.byteLength);return ae(r,e.byteLength),xr(e,r,2,0,e.length),$_.bytes=r.byteLength,r}$_.bytes=0;function H_(t){let e=he(t,0);if(t.byteLength<e+2)return null;let r=Np(t.slice(2));return H_.bytes=Np.bytes,r}H_.bytes=0;function eu(t,e){let r=0;for(let n=0;n<t.length;n++)r+=e.encodingLength(t[n]);return r}function cf(t,e,r,n){for(let i=0;i<t.length;i++)e.encode(t[i],r,n),n+=e.encode.bytes;return n}function Ep(t,e,r,n){for(let i=0;i<t.length;i++)t[i]=e.decode(r,n),n+=e.decode.bytes;return n}l();var V_=function(t,e,r,n){function i(o){return o instanceof r?o:new r(function(s){s(o)})}return new(r||(r=Promise))(function(o,s){function c(d){try{u(n.next(d))}catch(f){s(f)}}function a(d){try{u(n.throw(d))}catch(f){s(f)}}function u(d){d.done?o(d.value):i(d.value).then(c,a)}u((n=n.apply(t,e||[])).next())})},ln=class{static getSigningMethod(e){return V_(this,void 0,void 0,function*(){throw new Error("Not implemented: Classes extending DidMethod must implement getSigningMethod()")})}static resolve(e,r){return V_(this,void 0,void 0,function*(){throw new Error("Not implemented: Classes extending DidMethod must implement resolve()")})}};var Ct=function(t,e,r,n){function i(o){return o instanceof r?o:new r(function(s){s(o)})}return new(r||(r=Promise))(function(o,s){function c(d){try{u(n.next(d))}catch(f){s(f)}}function a(d){try{u(n.throw(d))}catch(f){s(f)}}function u(d){d.done?o(d.value):i(d.value).then(c,a)}u((n=n.apply(t,e||[])).next())})},q_=function(t,e){var r={};for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&e.indexOf(n)<0&&(r[n]=t[n]);if(t!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,n=Object.getOwnPropertySymbols(t);i<n.length;i++)e.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(t,n[i])&&(r[n[i]]=t[n[i]]);return r},F_="https://diddht.tbddev.org",SC=0,os=7200,Cp=";",cr=",",lb;(function(t){t[t.Discoverable=0]="Discoverable",t[t.Organization=1]="Organization",t[t.Government=2]="Government",t[t.Corporation=3]="Corporation",t[t.LocalBusiness=4]="LocalBusiness",t[t.SoftwarePackage=5]="SoftwarePackage",t[t.WebApp=6]="WebApp",t[t.FinancialInstitution=7]="FinancialInstitution"})(lb||(lb={}));var ar;(function(t){t[t.Ed25519=0]="Ed25519",t[t.secp256k1=1]="secp256k1",t[t.secp256r1=2]="secp256r1",t[t.X25519=3]="X25519"})(ar||(ar={}));var hb;(function(t){t.authentication="auth",t.assertionMethod="asm",t.capabilityDelegation="del",t.capabilityInvocation="inv",t.keyAgreement="agm"})(hb||(hb={}));var W_={Ed25519:ar.Ed25519,ES256K:ar.secp256k1,ES256:ar.secp256r1,"P-256":ar.secp256r1,secp256k1:ar.secp256k1,secp256r1:ar.secp256r1,X25519:ar.X25519},j_={[ar.Ed25519]:"EdDSA",[ar.secp256k1]:"ES256K",[ar.secp256r1]:"ES256",[ar.X25519]:"ECDH-ES+A256KW"},uf=class t extends ln{static create(){return Ct(this,arguments,void 0,function*({keyManager:e=new er,options:r={}}={}){var n,i,o,s,c,a,u,d,f,h,p;if(!((n=r.verificationMethods)===null||n===void 0)&&n.some(T=>!(T.algorithm in W_)))throw new Error("One or more verification method algorithms are not supported");let g=(i=r.verificationMethods)===null||i===void 0?void 0:i.filter(T=>"id"in T).map(T=>T.id);if(g&&g.length!==new Set(g).size)throw new Error("One or more verification method IDs are not unique");if(!((o=r.services)===null||o===void 0)&&o.some(T=>!T.id||!T.type||!T.serviceEndpoint))throw new Error("One or more services are missing required properties");let y=yield e.generateKey({algorithm:"Ed25519"}),x=yield e.getPublicKey({keyUri:y}),S=yield Nt.identityKeyToIdentifier({identityKey:x}),_=Object.assign(Object.assign({id:S},r.alsoKnownAs&&{alsoKnownAs:r.alsoKnownAs}),r.controllers&&{controller:r.controllers}),A=[...(s=r.verificationMethods)!==null&&s!==void 0?s:[]];A?.some(T=>{var M;return((M=T.id)===null||M===void 0?void 0:M.split("#").pop())==="0"})||A.unshift({algorithm:"Ed25519",id:"0",purposes:["authentication","assertionMethod","capabilityDelegation","capabilityInvocation"]});for(let T of A){let M=T.id&&T.id.split("#").pop()==="0"?y:yield e.generateKey({algorithm:T.algorithm}),q=yield e.getPublicKey({keyUri:M}),j=(a=(c=T.id)!==null&&c!==void 0?c:q.kid)!==null&&a!==void 0?a:yield ge({jwk:q});j=`${S}#${Mr(j)}`,(u=_.verificationMethod)!==null&&u!==void 0||(_.verificationMethod=[]),_.verificationMethod.push({id:j,type:"JsonWebKey",controller:(d=T.controller)!==null&&d!==void 0?d:S,publicKeyJwk:q});for(let $ of(f=T.purposes)!==null&&f!==void 0?f:[])_[$]||(_[$]=[]),_[$].push(j)}(h=r.services)===null||h===void 0||h.forEach(T=>{var M;(M=_.service)!==null&&M!==void 0||(_.service=[]),T.id=`${S}#${T.id.split("#").pop()}`,_.service.push(T)});let O=new br({uri:S,document:_,metadata:Object.assign({published:!1},r.types&&{types:r.types}),keyManager:e});if(!((p=r.publish)!==null&&p!==void 0)||p){let T=yield t.publish({did:O,gatewayUri:r.gatewayUri});O.metadata=T.didDocumentMetadata}return O})}static import(e){return Ct(this,arguments,void 0,function*({portableDid:r,keyManager:n=new er}){var i;let o=me.parse(r.uri);if(o?.method!==t.methodName)throw new re(ie.MethodNotSupported,"Method not supported");let s=yield br.import({portableDid:r,keyManager:n});if(!(!((i=s.document.verificationMethod)===null||i===void 0)&&i.some(c=>{var a;return((a=c.id)===null||a===void 0?void 0:a.split("#").pop())==="0"})))throw new re(ie.InvalidDidDocument,"DID document must contain an Identity Key");return s})}static getSigningMethod(e){return Ct(this,arguments,void 0,function*({didDocument:r,methodId:n="#0"}){var i;let o=me.parse(r.id);if(o&&o.method!==this.methodName)throw new re(ie.MethodNotSupported,`Method not supported: ${o.method}`);let s=(i=r.verificationMethod)===null||i===void 0?void 0:i.find(c=>{var a,u;return Mr(c.id)===((a=Mr(n))!==null&&a!==void 0?a:Mr((u=r.assertionMethod)===null||u===void 0?void 0:u[0]))});if(!(s&&s.publicKeyJwk))throw new re(ie.InternalError,"A verification method intended for signing could not be determined from the DID Document");return s})}static publish(e){return Ct(this,arguments,void 0,function*({did:r,gatewayUri:n=F_}){return yield Lp.put({did:r,gatewayUri:n})})}static resolve(e){return Ct(this,arguments,void 0,function*(r,n={}){var i;let o=(i=n?.gatewayUri)!==null&&i!==void 0?i:F_;try{yield Nt.identifierToIdentityKey({didUri:r});let{didDocument:s,didDocumentMetadata:c}=yield Lp.get({didUri:r,gatewayUri:o});return Object.assign(Object.assign({},yt),{didDocument:s,didDocumentMetadata:c})}catch(s){if(!(s instanceof re))throw new Error(s);return Object.assign(Object.assign({},yt),{didResolutionMetadata:Object.assign({error:s.code},s.message&&{errorMessage:s.message})})}})}};uf.methodName="dht";var Lp=class t{static get(e){return Ct(this,arguments,void 0,function*({didUri:r,gatewayUri:n}){let i=Nt.identifierToIdentityKeyBytes({didUri:r}),o=yield t.pkarrGet({gatewayUri:n,publicKeyBytes:i}),s=yield Nt.parseBep44GetMessage({bep44Message:o}),c=yield t.fromDnsPacket({didUri:r,dnsPacket:s});return c.didDocumentMetadata.versionId=o.seq.toString(),c})}static put(e){return Ct(this,arguments,void 0,function*({did:r,gatewayUri:n}){let i=yield t.toDnsPacket({didDocument:r.document,didMetadata:r.metadata,authoritativeGatewayUris:[n]}),o=yield Nt.createBep44PutMessage({dnsPacket:i,publicKeyBytes:Nt.identifierToIdentityKeyBytes({didUri:r.uri}),signer:yield r.getSigner({methodId:"0"})}),s=yield t.pkarrPut({gatewayUri:n,bep44Message:o});return{didDocument:r.document,didDocumentMetadata:Object.assign(Object.assign({},r.metadata),{published:s,versionId:o.seq.toString()}),didRegistrationMetadata:{}}})}static pkarrGet(e){return Ct(this,arguments,void 0,function*({gatewayUri:r,publicKeyBytes:n}){let i=ne.uint8Array(n).toBase32Z(),o=new URL(i,r).href,s;try{if(s=yield fetch(o,{method:"GET"}),!s.ok)throw new re(ie.NotFound,`Pkarr record not found for: ${i}`)}catch(u){throw u instanceof re?u:new re(ie.InternalError,`Failed to fetch Pkarr record: ${u.message}`)}let c=yield s.arrayBuffer();if(!c)throw new re(ie.NotFound,`Pkarr record not found for: ${i}`);if(c.byteLength<72)throw new re(ie.InvalidDidDocumentLength,`Pkarr response must be at least 72 bytes but got: ${c.byteLength}`);if(c.byteLength>1072)throw new re(ie.InvalidDidDocumentLength,`Pkarr response exceeds 1000 byte limit: ${c.byteLength}`);return{k:n,seq:Number(new DataView(c).getBigUint64(64)),sig:new Uint8Array(c,0,64),v:new Uint8Array(c,72)}})}static pkarrPut(e){return Ct(this,arguments,void 0,function*({gatewayUri:r,bep44Message:n}){let i=ne.uint8Array(n.k).toBase32Z(),o=new URL(i,r).href,s=new Uint8Array(n.v.length+72);s.set(n.sig,0),new DataView(s.buffer).setBigUint64(n.sig.length,BigInt(n.seq)),s.set(n.v,n.sig.length+8);let c;try{c=yield fetch(o,{method:"PUT",headers:{"Content-Type":"application/octet-stream"},body:s})}catch(a){throw new re(ie.InternalError,`Failed to put Pkarr record for identifier ${i}: ${a.message}`)}return c.ok})}static fromDnsPacket(e){return Ct(this,arguments,void 0,function*({didUri:r,dnsPacket:n}){var i,o,s;let c={id:r},a={published:!0},u=new Map;for(let d of(i=n?.answers)!==null&&i!==void 0?i:[]){if(d.type!=="TXT")continue;let f=d.name.split(".")[0].substring(1);switch(!0){case f.startsWith("aka"):{let h=Nt.parseTxtDataToString(d.data);c.alsoKnownAs=h.split(cr);break}case f.startsWith("cnt"):{let h=Nt.parseTxtDataToString(d.data);c.controller=h.includes(cr)?h.split(cr):h;break}case f.startsWith("k"):{let{id:h,t:p,k:g,c:y,a:x}=Nt.parseTxtDataToObject(d.data),S=ne.base64Url(g).toUint8Array(),_=ar[Number(p)],A=yield Nt.keyConverter(_).bytesToPublicKey({publicKeyBytes:S});A.alg=x||j_[Number(p)];let O=f==="k0"?"0":h!==void 0?h:yield ge({jwk:A});(o=c.verificationMethod)!==null&&o!==void 0||(c.verificationMethod=[]);let T=`${r}#${O}`;c.verificationMethod.push({id:T,type:"JsonWebKey",controller:y??r,publicKeyJwk:A}),u.set(f,T);break}case f.startsWith("s"):{let h=Nt.parseTxtDataToObject(d.data),{id:p,t:g,se:y}=h,x=q_(h,["id","t","se"]),S=y.includes(cr)?y.split(cr):[y],_=Object.fromEntries(Object.entries(x).map(([A,O])=>[A,O.includes(cr)?O.split(cr):O]));(s=c.service)!==null&&s!==void 0||(c.service=[]),c.service.push(Object.assign(Object.assign({},_),{id:`${r}#${p}`,type:g,serviceEndpoint:S}));break}case f.startsWith("typ"):{let{id:h}=Nt.parseTxtDataToObject(d.data);a.types=h.split(cr).map(p=>Number(p));break}case f.startsWith("did"):{let h=_=>_.split(cr).map(A=>u.get(A)).filter(A=>typeof A=="string"),{auth:p,asm:g,del:y,inv:x,agm:S}=Nt.parseTxtDataToObject(d.data);p&&(c.authentication=h(p)),g&&(c.assertionMethod=h(g)),y&&(c.capabilityDelegation=h(y)),x&&(c.capabilityInvocation=h(x)),S&&(c.keyAgreement=h(S));break}}}return{didDocument:c,didDocumentMetadata:a,didResolutionMetadata:{}}})}static toDnsPacket(e){return Ct(this,arguments,void 0,function*({didDocument:r,didMetadata:n,authoritativeGatewayUris:i,previousDidProof:o}){var s,c,a,u,d;let f=[],h=[],p=new Map,g=[],y=[];if(o!==void 0){let{signature:_,previousDid:A}=o;yield Nt.validatePreviousDidProof({newDid:r.id,previousDidProof:o}),f.push({type:"TXT",name:"_prv._did.",ttl:os,data:`id=${A};s=${_}`})}if(r.alsoKnownAs&&f.push({type:"TXT",name:"_aka._did.",ttl:os,data:r.alsoKnownAs.join(cr)}),r.controller){let _=Array.isArray(r.controller)?r.controller.join(cr):r.controller;f.push({type:"TXT",name:"_cnt._did.",ttl:os,data:_})}for(let[_,A]of(c=(s=r.verificationMethod)===null||s===void 0?void 0:s.entries())!==null&&c!==void 0?c:[]){let O=`k${_}`;y.push(O);let T=A.id.split("#").pop();p.set(T,O);let M=A.publicKeyJwk;if(!(M?.crv&&M.crv in W_))throw new re(ie.InvalidPublicKeyType,`Verification method '${A.id}' contains an unsupported key type: ${(a=M?.crv)!==null&&a!==void 0?a:"undefined"}`);let q=ar[M.crv],j=yield Nt.keyConverter(M.crv).publicKeyToBytes({publicKey:M}),$=ne.uint8Array(j).toBase64Url(),Z=[`t=${q}`,`k=${$}`];T!=="0"&&(yield ge({jwk:M}))!==T&&Z.unshift(`id=${T}`),M.alg!==j_[q]&&Z.push(`a=${M.alg}`),A.controller!==r.id&&Z.push(`c=${A.controller}`),f.push({type:"TXT",name:`_${O}._did.`,ttl:os,data:Z.join(Cp)})}(u=r.service)===null||u===void 0||u.forEach((_,A)=>{let O=`s${A}`;g.push(O);let{id:T,type:M,serviceEndpoint:q}=_,j=q_(_,["id","type","serviceEndpoint"]);T=Mr(T),q=Array.isArray(q)?q.join(","):q;let Z=Object.entries(Object.assign({id:T,t:M,se:q},j)).map(([G,I])=>`${G}=${I}`).join(Cp),Q=Nt.chunkDataIfNeeded(Z);f.push({type:"TXT",name:`_${O}._did.`,ttl:os,data:Q})});let x=[`v=${SC}`];if(y.length&&x.push(`vm=${y.join(cr)}`),Object.keys(Mi).forEach(_=>{var A;let O=(A=r[_])===null||A===void 0?void 0:A.map(T=>p.get(T.split("#").pop()));if(O){let T=hb[_];x.push(`${T}=${O.join(cr)}`)}}),g.length&&x.push(`svc=${g.join(cr)}`),!((d=n.types)===null||d===void 0)&&d.length){let A=n.types.map(O=>typeof O=="string"?lb[O]:O);f.push({type:"TXT",name:"_typ._did.",ttl:os,data:`id=${A.join(cr)}`})}f.push({type:"TXT",name:"_did."+t.getUniqueDidSuffix(r.id)+".",ttl:os,data:x.join(Cp)});for(let _ of i||[])h.push({type:"NS",name:"_did."+t.getUniqueDidSuffix(r.id)+".",ttl:os,data:_+"."});return{id:0,type:"response",flags:K_,answers:[...f,...h]}})}static getUniqueDidSuffix(e){return e.split(":")[2]}},Nt=class t{static createBep44PutMessage(e){return Ct(this,arguments,void 0,function*({dnsPacket:r,publicKeyBytes:n,signer:i}){let o=Math.ceil(Date.now()/1e3),s=af(r),c=nb.encode({seq:o,v:s}).subarray(1,-1);if(c.length>1e3)throw new re(ie.InvalidDidDocumentLength,`DNS packet exceeds the 1000 byte maximum size: ${c.length} bytes`);let a=yield i.sign({data:c});return{k:n,seq:o,sig:a,v:s}})}static identifierToIdentityKey(e){return Ct(this,arguments,void 0,function*({didUri:r}){let n=t.identifierToIdentityKeyBytes({didUri:r});return yield Bt.bytesToPublicKey({publicKeyBytes:n})})}static identifierToIdentityKeyBytes({didUri:e}){let r=me.parse(e);if(!r)throw new re(ie.InvalidDid,`Invalid DID URI: ${e}`);if(r.method!==uf.methodName)throw new re(ie.MethodNotSupported,`Method not supported: ${r.method}`);let n;try{n=ne.base32Z(r.id).toUint8Array()}catch{throw new re(ie.InvalidPublicKey,"Failed to decode method-specific identifier")}if(n.length!==32)throw new re(ie.InvalidPublicKeyLength,`Invalid public key length: ${n.length}`);return n}static identityKeyToIdentifier(e){return Ct(this,arguments,void 0,function*({identityKey:r}){let n=yield Bt.publicKeyToBytes({publicKey:r}),i=ne.uint8Array(n).toBase32Z();return`did:${uf.methodName}:${i}`})}static keyConverter(e){let n={Ed25519:Bt,"P-256":{publicKeyToBytes:i=>Ct(this,[i],void 0,function*({publicKey:o}){let s=yield Vt.publicKeyToBytes({publicKey:o});return yield Vt.compressPublicKey({publicKeyBytes:s})}),bytesToPublicKey:Vt.bytesToPublicKey,privateKeyToBytes:Vt.privateKeyToBytes,bytesToPrivateKey:Vt.bytesToPrivateKey},secp256k1:{publicKeyToBytes:i=>Ct(this,[i],void 0,function*({publicKey:o}){let s=yield kt.publicKeyToBytes({publicKey:o});return yield kt.compressPublicKey({publicKeyBytes:s})}),bytesToPublicKey:kt.bytesToPublicKey,privateKeyToBytes:kt.privateKeyToBytes,bytesToPrivateKey:kt.bytesToPrivateKey},X25519:Ga}[e];if(!n)throw new re(ie.InvalidPublicKeyType,`Unsupported curve: ${e}`);return n}static parseBep44GetMessage(e){return Ct(this,arguments,void 0,function*({bep44Message:r}){let n=yield Bt.bytesToPublicKey({publicKeyBytes:r.k}),i=nb.encode({seq:r.seq,v:r.v}).subarray(1,-1);if(!(yield Bt.verify({key:n,signature:r.sig,data:i})))throw new re(ie.InvalidSignature,"Invalid signature for DHT BEP44 message");return Np(r.v)})}static parseTxtDataToObject(e){return this.parseTxtDataToString(e).split(Cp).reduce((r,n)=>{let[i,o]=n.split("=");return r[i]=o,r},{})}static parseTxtDataToString(e){if(typeof e=="string")return e;if(e instanceof Uint8Array)return ne.uint8Array(e).toString();if(Array.isArray(e))return e.map(r=>this.parseTxtDataToString(r)).join("");throw new re(ie.InternalError,"Pkarr returned DNS TXT record with invalid data type")}static validatePreviousDidProof(e){return Ct(this,arguments,void 0,function*({newDid:r,previousDidProof:n}){let i=yield t.identifierToIdentityKey({didUri:n.previousDid}),o=t.identifierToIdentityKeyBytes({didUri:r}),s=ne.base64Url(n.signature).toUint8Array();if(!(yield Bt.verify({key:i,data:o,signature:s})))throw new re(ie.InvalidPreviousDidProof,"The previous DID proof is invalid.")})}static chunkDataIfNeeded(e){if(e.length<=255)return e;let r=[];for(let n=0;n<e.length;n+=255)r.push(e.slice(n,n+255));return r}};l();l();l();l();l();var Ye={DeltaExceedsMaximumSize:"DeltaExceedsMaximumSize",DidDocumentPublicKeyIdDuplicated:"DidDocumentPublicKeyIdDuplicated",DidDocumentPublicKeyMissingOrIncorrectType:"DidDocumentPublicKeyMissingOrIncorrectType",DidDocumentServiceIdDuplicated:"DidDocumentServiceIdDuplicated",DidSuffixIncorrectLength:"DidSuffixIncorrectLength",EncodedStringIncorrectEncoding:"EncodedStringIncorrectEncoding",IdNotUsingBase64UrlCharacterSet:"IdNotUsingBase64UrlCharacterSet",IdTooLong:"IdTooLong",JwkEs256kMissingOrInvalidCrv:"JwkEs256kMissingOrInvalidCrv",JwkEs256kMissingOrInvalidKty:"JwkEs256kMissingOrInvalidKty",JwkEs256kHasIncorrectLengthOfX:"JwkEs256kHasIncorrectLengthOfX",JwkEs256kHasIncorrectLengthOfY:"JwkEs256kHasIncorrectLengthOfY",JwkEs256kHasIncorrectLengthOfD:"JwkEs256kHasIncorrectLengthOfD",MultihashStringNotAMultihash:"MultihashStringNotAMultihash",MultihashUnsupportedHashAlgorithm:"MultihashUnsupportedHashAlgorithm",PublicKeyJwkEs256kHasUnexpectedProperty:"PublicKeyJwkEs256kHasUnexpectedProperty",PublicKeyPurposeDuplicated:"PublicKeyPurposeDuplicated",ServiceEndpointCannotBeAnArray:"ServiceEndpointCannotBeAnArray",ServiceEndpointStringNotValidUri:"ServiceEndpointStringNotValidUri",ServiceTypeTooLong:"ServiceTypeTooLong"};l();var Me=class extends Error{constructor(e,r){super(`${e}: ${r}`),this.code=e,Object.setPrototypeOf(this,new.target.prototype)}};l();l();l();l();var cX=new Uint8Array(0);var pb=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")};l();var yb=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")}},gb=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 G_(this,e)}},mb=class{constructor(e){this.decoders=e}or(e){return G_(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`)}},G_=(t,e)=>new mb({...t.decoders||{[t.prefix]:t},...e.decoders||{[e.prefix]:e}}),wb=class{constructor(e,r,n,i){this.name=e,this.prefix=r,this.baseEncode=n,this.baseDecode=i,this.encoder=new yb(e,r,n),this.decoder=new gb(e,r,i)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}},AC=({name:t,prefix:e,encode:r,decode:n})=>new wb(t,e,r,n);var TC=(t,e,r,n)=>{let i={};for(let d=0;d<e.length;++d)i[e[d]]=d;let o=t.length;for(;t[o-1]==="=";)--o;let s=new Uint8Array(o*r/8|0),c=0,a=0,u=0;for(let d=0;d<o;++d){let f=i[t[d]];if(f===void 0)throw new SyntaxError(`Non-${n} character`);a=a<<r|f,c+=r,c>=8&&(c-=8,s[u++]=255&a>>c)}if(c>=r||255&a<<8-c)throw new SyntaxError("Unexpected end of data");return s},_C=(t,e,r)=>{let n=e[e.length-1]==="=",i=(1<<r)-1,o="",s=0,c=0;for(let a=0;a<t.length;++a)for(c=c<<8|t[a],s+=8;s>r;)s-=r,o+=e[i&c>>s];if(s&&(o+=e[i&c<<r-s]),n)for(;o.length*r&7;)o+="=";return o},df=({name:t,prefix:e,bitsPerChar:r,alphabet:n})=>AC({prefix:e,name:t,encode(i){return _C(i,n,r)},decode(i){return TC(i,n,r,t)}});var wX=df({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),bX=df({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),ff=df({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),xX=df({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var Er=class t{static encode(e){return ff.baseEncode(e)}static decodeAsBytes(e,r){if(!t.isBase64UrlString(e))throw new Me(Ye.EncodedStringIncorrectEncoding,`Given ${r} must be base64url string.`);return ff.baseDecode(e)}static decodeAsString(e,r){let n=t.decodeAsBytes(e,r);return t.bytesToString(n)}static isBase64UrlString(e){return/^[A-Za-z0-9_-]+$/.test(e)}static stringToBytes(e){return new TextEncoder().encode(e)}static bytesToString(e){return new TextDecoder().decode(e)}};l();var iI=Mn(Y_(),1);l();l();var bb;(function(t){t.Public="public",t.Private="private"})(bb||(bb={}));var $r=bb;var Ut=class{static validateEs256kOperationKey(e,r){let n=new Set(["kty","crv","x","y"]);r===$r.Private&&n.add("d");for(let i in e)if(!n.has(i))throw new Me(Ye.PublicKeyJwkEs256kHasUnexpectedProperty,`SECP256K1 JWK key has unexpected property '${i}'.`);if(e.crv!=="secp256k1")throw new Me(Ye.JwkEs256kMissingOrInvalidCrv,`SECP256K1 JWK 'crv' property must be 'secp256k1' but got '${e.crv}.'`);if(e.kty!=="EC")throw new Me(Ye.JwkEs256kMissingOrInvalidKty,`SECP256K1 JWK 'kty' property must be 'EC' but got '${e.kty}.'`);if(e.x.length!==43)throw new Me(Ye.JwkEs256kHasIncorrectLengthOfX,"SECP256K1 JWK 'x' property must be 43 bytes.");if(e.y.length!==43)throw new Me(Ye.JwkEs256kHasIncorrectLengthOfY,"SECP256K1 JWK 'y' property must be 43 bytes.");if(r===$r.Private&&(e.d===void 0||e.d.length!==43))throw new Me(Ye.JwkEs256kHasIncorrectLengthOfD,"SECP256K1 JWK 'd' property must be 43 bytes.")}static validateId(e){if(e.length>50)throw new Me(Ye.IdTooLong,`Key ID length ${e.length} exceed max allowed length of 50.`);if(!Er.isBase64UrlString(e))throw new Me(Ye.IdNotUsingBase64UrlCharacterSet,`Key ID '${e}' is not a Base64URL string.`)}static validatePublicKeyPurposes(e){if(e===void 0)return;let r=new Set;for(let n of e){if(r.has(n))throw new Me(Ye.PublicKeyPurposeDuplicated,`Public key purpose '${n}' already specified.`);r.add(n)}}};l();var lf=class{};lf.hashAlgorithmInMultihashCode=18;lf.maxCanonicalizedDeltaSizeInBytes=1e3;var ur=lf;l();var Z_=Mn(X_(),1);var kn=class t{static canonicalizeAsBytes(e){let r=t.removeAllUndefinedProperties(e),n=Z_.default(r);return Er.stringToBytes(n)}static removeAllUndefinedProperties(e){for(let r in e)typeof e[r]=="object"?t.removeAllUndefinedProperties(e[r]):e[r]===void 0&&delete e[r];return e}};l();l();l();l();var IC=tI,Q_=128,BC=127,RC=~BC,UC=Math.pow(2,31);function tI(t,e,r){e=e||[],r=r||0;for(var n=r;t>=UC;)e[r++]=t&255|Q_,t/=128;for(;t&RC;)e[r++]=t&255|Q_,t>>>=7;return e[r]=t|0,tI.bytes=r-n+1,e}var OC=xb,DC=128,eI=127;function xb(t,n){var r=0,n=n||0,i=0,o=n,s,c=t.length;do{if(o>=c)throw xb.bytes=0,new RangeError("Could not decode varint");s=t[o++],r+=i<28?(s&eI)<<i:(s&eI)*Math.pow(2,i),i+=7}while(s>=DC);return xb.bytes=o-n,r}var kC=Math.pow(2,7),NC=Math.pow(2,14),CC=Math.pow(2,21),LC=Math.pow(2,28),PC=Math.pow(2,35),MC=Math.pow(2,42),KC=Math.pow(2,49),$C=Math.pow(2,56),HC=Math.pow(2,63),VC=function(t){return t<kC?1:t<NC?2:t<CC?3:t<LC?4:t<PC?5:t<MC?6:t<KC?7:t<$C?8:t<HC?9:10},qC={encode:IC,decode:OC,encodingLength:VC},FC=qC,hf=FC;var Eb=(t,e=0)=>[hf.decode(t,e),hf.decode.bytes],vb=(t,e,r=0)=>(hf.encode(t,e,r),e),Sb=t=>hf.encodingLength(t);var Ab=(t,e)=>{let r=e.byteLength,n=Sb(t),i=n+Sb(r),o=new Uint8Array(i+r);return vb(t,o,0),vb(r,o,n),o.set(e,i),new Mp(t,r,e,o)},rI=t=>{let e=pb(t),[r,n]=Eb(e),[i,o]=Eb(e.subarray(n)),s=e.subarray(n+o);if(s.byteLength!==i)throw new Error("Incorrect length");return new Mp(r,i,s,e)};var Mp=class{constructor(e,r,n,i){this.code=e,this.size=r,this.digest=n,this.bytes=i}};l();l();var _b=({name:t,code:e,encode:r})=>new Tb(t,e,r),Tb=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?Ab(this.code,r):r.then(n=>Ab(this.code,n))}else throw Error("Unknown type, must be binary type")}};var nI=t=>async e=>new Uint8Array(await crypto.subtle.digest(t,e)),Kp=_b({name:"sha2-256",code:18,encode:nI("SHA-256")}),eZ=_b({name:"sha2-512",code:19,encode:nI("SHA-512")});var pf=function(t,e,r,n){function i(o){return o instanceof r?o:new r(function(s){s(o)})}return new(r||(r=Promise))(function(o,s){function c(d){try{u(n.next(d))}catch(f){s(f)}}function a(d){try{u(n.throw(d))}catch(f){s(f)}}function u(d){d.done?o(d.value):i(d.value).then(c,a)}u((n=n.apply(t,e||[])).next())})},Lt=class t{static hash(e,r){return pf(this,void 0,void 0,function*(){let n;switch(r){case 18:n=(yield Kp.digest(e)).bytes;break;default:throw new Me(Ye.MultihashUnsupportedHashAlgorithm,`Hash algorithm defined in multihash code ${r} is not supported.`)}return n})}static hashAsNonMultihashBytes(e,r){return pf(this,void 0,void 0,function*(){let n;switch(r){case 18:n=yield Kp.encode(e);break;default:throw new Me(Ye.MultihashUnsupportedHashAlgorithm,`Hash algorithm defined in multihash code ${r} is not supported.`)}return n})}static canonicalizeThenHashThenEncode(e,r){return pf(this,void 0,void 0,function*(){let n=kn.canonicalizeAsBytes(e);return yield t.hashThenEncode(n,r)})}static canonicalizeThenDoubleHashThenEncode(e,r){return pf(this,void 0,void 0,function*(){let n=kn.canonicalizeAsBytes(e),i=yield t.hashAsNonMultihashBytes(n,r);return yield t.hashThenEncode(i,r)})}static hashThenEncode(e,r){return pf(this,void 0,void 0,function*(){let n=yield t.hash(e,r);return Er.encode(n)})}static validateEncodedHashComputedUsingSupportedHashAlgorithm(e,r){let n,i=Er.decodeAsBytes(e,r);try{n=rI(i)}catch{throw new Me(Ye.MultihashStringNotAMultihash,`Given ${r} string '${e}' is not a multihash after decoding.`)}let o=ur.hashAlgorithmInMultihashCode;if(o!==n.code)throw new Me(Ye.MultihashUnsupportedHashAlgorithm,`Given ${r} uses unsupported multihash algorithm with code ${n.code}, should use ${o} or change IonSdkConfig to desired hashing algorithm.`)}};l();var Ib;(function(t){t.Create="create",t.Update="update",t.Deactivate="deactivate",t.Recover="recover"})(Ib||(Ib={}));var yf=Ib;l();var Bb;(function(t){t.Replace="replace",t.AddPublicKeys="add-public-keys",t.RemovePublicKeys="remove-public-keys",t.AddServices="add-services",t.RemoveServices="remove-services"})(Bb||(Bb={}));var wc=Bb;var $p=function(t,e,r,n){function i(o){return o instanceof r?o:new r(function(s){s(o)})}return new(r||(r=Promise))(function(o,s){function c(d){try{u(n.next(d))}catch(f){s(f)}}function a(d){try{u(n.throw(d))}catch(f){s(f)}}function u(d){d.done?o(d.value):i(d.value).then(c,a)}u((n=n.apply(t,e||[])).next())})},ss=class t{static createCreateRequest(e){return $p(this,void 0,void 0,function*(){let r=e.recoveryKey,n=e.updateKey,i=e.document.publicKeys,o=e.document.services;Ut.validateEs256kOperationKey(r,$r.Public),Ut.validateEs256kOperationKey(n,$r.Public),t.validateDidDocumentKeys(i),t.validateServices(o);let s=ur.hashAlgorithmInMultihashCode,c=[{action:wc.Replace,document:e.document}],a={updateCommitment:yield Lt.canonicalizeThenDoubleHashThenEncode(n,s),patches:c};t.validateDeltaSize(a);let d={deltaHash:yield Lt.canonicalizeThenHashThenEncode(a,s),recoveryCommitment:yield Lt.canonicalizeThenDoubleHashThenEncode(r,s)};return{type:yf.Create,suffixData:d,delta:a}})}static createDeactivateRequest(e){return $p(this,void 0,void 0,function*(){t.validateDidSuffix(e.didSuffix),Ut.validateEs256kOperationKey(e.recoveryPublicKey,$r.Public);let r=ur.hashAlgorithmInMultihashCode,n=yield Lt.canonicalizeThenHashThenEncode(e.recoveryPublicKey,r),i={didSuffix:e.didSuffix,recoveryKey:e.recoveryPublicKey},o=yield e.signer.sign({alg:"ES256K"},i);return{type:yf.Deactivate,didSuffix:e.didSuffix,revealValue:n,signedData:o}})}static createRecoverRequest(e){return $p(this,void 0,void 0,function*(){t.validateDidSuffix(e.didSuffix),Ut.validateEs256kOperationKey(e.recoveryPublicKey,$r.Public),Ut.validateEs256kOperationKey(e.nextRecoveryPublicKey,$r.Public),Ut.validateEs256kOperationKey(e.nextUpdatePublicKey,$r.Public),t.validateDidDocumentKeys(e.document.publicKeys),t.validateServices(e.document.services);let r=ur.hashAlgorithmInMultihashCode,n=yield Lt.canonicalizeThenHashThenEncode(e.recoveryPublicKey,r),i=[{action:wc.Replace,document:e.document}],o=yield Lt.canonicalizeThenDoubleHashThenEncode(e.nextUpdatePublicKey,r),s={patches:i,updateCommitment:o},c=yield Lt.canonicalizeThenHashThenEncode(s,r),u={recoveryCommitment:yield Lt.canonicalizeThenDoubleHashThenEncode(e.nextRecoveryPublicKey,r),recoveryKey:e.recoveryPublicKey,deltaHash:c},d=yield e.signer.sign({alg:"ES256K"},u);return{type:yf.Recover,didSuffix:e.didSuffix,revealValue:n,delta:s,signedData:d}})}static createUpdateRequest(e){return $p(this,void 0,void 0,function*(){if(t.validateDidSuffix(e.didSuffix),Ut.validateEs256kOperationKey(e.updatePublicKey,$r.Public),Ut.validateEs256kOperationKey(e.nextUpdatePublicKey,$r.Public),t.validateServices(e.servicesToAdd),t.validateDidDocumentKeys(e.publicKeysToAdd),e.idsOfServicesToRemove!==void 0)for(let g of e.idsOfServicesToRemove)Ut.validateId(g);if(e.idsOfPublicKeysToRemove!==void 0)for(let g of e.idsOfPublicKeysToRemove)Ut.validateId(g);let r=[],n=e.servicesToAdd;if(n!==void 0&&n.length>0){let g={action:wc.AddServices,services:n};r.push(g)}let i=e.idsOfServicesToRemove;if(i!==void 0&&i.length>0){let g={action:wc.RemoveServices,ids:i};r.push(g)}let o=e.publicKeysToAdd;if(o!==void 0&&o.length>0){let g={action:wc.AddPublicKeys,publicKeys:o};r.push(g)}let s=e.idsOfPublicKeysToRemove;if(s!==void 0&&s.length>0){let g={action:wc.RemovePublicKeys,ids:s};r.push(g)}let c=ur.hashAlgorithmInMultihashCode,a=yield Lt.canonicalizeThenHashThenEncode(e.updatePublicKey,c),u=yield Lt.canonicalizeThenDoubleHashThenEncode(e.nextUpdatePublicKey,c),d={patches:r,updateCommitment:u},f=yield Lt.canonicalizeThenHashThenEncode(d,c),h={updateKey:e.updatePublicKey,deltaHash:f},p=yield e.signer.sign({alg:"ES256K"},h);return{type:yf.Update,didSuffix:e.didSuffix,revealValue:a,delta:d,signedData:p}})}static validateDidSuffix(e){Lt.validateEncodedHashComputedUsingSupportedHashAlgorithm(e,"didSuffix")}static validateDidDocumentKeys(e){if(e===void 0)return;let r=new Set;for(let n of e){if(Array.isArray(n.publicKeyJwk))throw new Me(Ye.DidDocumentPublicKeyMissingOrIncorrectType,"DID Document key 'publicKeyJwk' property is not a non-array object.");if(Ut.validateId(n.id),r.has(n.id))throw new Me(Ye.DidDocumentPublicKeyIdDuplicated,`DID Document key with ID '${n.id}' already exists.`);r.add(n.id),Ut.validatePublicKeyPurposes(n.purposes)}}static validateServices(e){if(e!==void 0&&e.length!==0){let r=new Set;for(let n of e){if(t.validateService(n),r.has(n.id))throw new Me(Ye.DidDocumentServiceIdDuplicated,"Service id has to be unique");r.add(n.id)}}}static validateService(e){Ut.validateId(e.id);let r=30;if(e.type.length>r){let n=`Service endpoint type length ${e.type.length} exceeds max allowed length of ${r}.`;throw new Me(Ye.ServiceTypeTooLong,n)}if(Array.isArray(e.serviceEndpoint)){let n="Service endpoint value cannot be an array.";throw new Me(Ye.ServiceEndpointCannotBeAnArray,n)}if(typeof e.serviceEndpoint=="string"&&iI.parse(e.serviceEndpoint).error!==void 0)throw new Me(Ye.ServiceEndpointStringNotValidUri,`Service endpoint string '${e.serviceEndpoint}' is not a URI.`)}static validateDeltaSize(e){let r=kn.canonicalizeAsBytes(e);if(r.length>ur.maxCanonicalizedDeltaSizeInBytes){let n=`Delta of ${r.length} bytes exceeded limit of ${ur.maxCanonicalizedDeltaSizeInBytes} bytes.`;throw new Me(Ye.DeltaExceedsMaximumSize,n)}}};var oI=function(t,e,r,n){function i(o){return o instanceof r?o:new r(function(s){s(o)})}return new(r||(r=Promise))(function(o,s){function c(d){try{u(n.next(d))}catch(f){s(f)}}function a(d){try{u(n.throw(d))}catch(f){s(f)}}function u(d){d.done?o(d.value):i(d.value).then(c,a)}u((n=n.apply(t,e||[])).next())})},nu=class t{static createLongFormDid(e){return oI(this,void 0,void 0,function*(){let r=yield ss.createCreateRequest(e),n=yield t.computeDidUniqueSuffix(r.suffixData),i;ur.network===void 0||ur.network==="mainnet"?i=`did:ion:${n}`:i=`did:ion:${ur.network}:${n}`;let o={suffixData:r.suffixData,delta:r.delta},s=kn.canonicalizeAsBytes(o),c=Er.encode(s);return`${i}:${c}`})}static computeDidUniqueSuffix(e){return oI(this,void 0,void 0,function*(){let r=kn.canonicalizeAsBytes(e),n=yield Lt.hash(r,ur.hashAlgorithmInMultihashCode);return Er.encode(n)})}};l();l();var sI;(function(t){t.Mainnet="mainnet",t.Testnet="test"})(sI||(sI={}));l();var cI;(function(t){t.Authentication="authentication",t.AssertionMethod="assertionMethod",t.CapabilityInvocation="capabilityInvocation",t.CapabilityDelegation="capabilityDelegation",t.KeyAgreement="keyAgreement"})(cI||(cI={}));l();var cs=function(t,e,r,n){function i(o){return o instanceof r?o:new r(function(s){s(o)})}return new(r||(r=Promise))(function(o,s){function c(d){try{u(n.next(d))}catch(f){s(f)}}function a(d){try{u(n.throw(d))}catch(f){s(f)}}function u(d){d.done?o(d.value):i(d.value).then(c,a)}u((n=n.apply(t,e||[])).next())})},hi;(function(t){t.Ed25519="Ed25519",t.secp256k1="secp256k1",t.secp256r1="secp256r1",t.X25519="X25519"})(hi||(hi={}));var GC={Ed25519:hi.Ed25519,ES256K:hi.secp256k1,ES256:hi.secp256r1,"P-256":hi.secp256r1,secp256k1:hi.secp256k1,secp256r1:hi.secp256r1},aI="https://ion.tbd.engineering",Rb=class t extends ln{static create(){return cs(this,arguments,void 0,function*({keyManager:e=new er,options:r={}}={}){var n,i,o,s,c,a,u;if(!((n=r.verificationMethods)===null||n===void 0)&&n.some(T=>!(T.algorithm in GC)))throw new Error("One or more verification method algorithms are not supported");let d=(i=r.verificationMethods)===null||i===void 0?void 0:i.filter(T=>"id"in T).map(T=>T.id);if(d&&d.length!==new Set(d).size)throw new Error("One or more verification method IDs are not unique");if(!((o=r.services)===null||o===void 0)&&o.some(T=>!T.id||!T.type||!T.serviceEndpoint))throw new Error("One or more services are missing required properties");let f={algorithm:"Ed25519",purposes:["authentication","assertionMethod","capabilityDelegation","capabilityInvocation"]},h=[];for(let T of(s=r.verificationMethods)!==null&&s!==void 0?s:[f]){let M=yield e.generateKey({algorithm:T.algorithm}),q=yield e.getPublicKey({keyUri:M});h.push({id:T.id,publicKeyJwk:q,purposes:(c=T.purposes)!==null&&c!==void 0?c:["authentication","assertionMethod","capabilityDelegation","capabilityInvocation"]})}let p=yield e.generateKey({algorithm:hi.secp256k1}),g=yield e.getPublicKey({keyUri:p}),y=yield e.generateKey({algorithm:hi.secp256k1}),x=yield e.getPublicKey({keyUri:y}),S=yield bc.computeLongFormDidUri({recoveryKey:g,updateKey:x,services:(a=r.services)!==null&&a!==void 0?a:[],verificationMethods:h}),{didDocument:_,didResolutionMetadata:A}=yield t.resolve(S,{gatewayUri:r.gatewayUri});if(_===null)throw new Error(`Unable to resolve DID during creation: ${A?.error}`);let O=new br({uri:S,document:_,metadata:{published:!1,canonicalId:S.split(":",3).join(":"),recoveryKey:g,updateKey:x},keyManager:e});if(!((u=r.publish)!==null&&u!==void 0)||u){let T=yield t.publish({did:O,gatewayUri:r.gatewayUri});O.metadata=T.didDocumentMetadata}return O})}static getSigningMethod(e){return cs(this,arguments,void 0,function*({didDocument:r,methodId:n}){var i;let o=me.parse(r.id);if(o&&o.method!==this.methodName)throw new re(ie.MethodNotSupported,`Method not supported: ${o.method}`);let s=(i=r.verificationMethod)===null||i===void 0?void 0:i.find(c=>{var a;return c.id===(n??((a=r.assertionMethod)===null||a===void 0?void 0:a[0]))});if(!(s&&s.publicKeyJwk))throw new re(ie.InternalError,"A verification method intended for signing could not be determined from the DID Document");return s})}static import(e){return cs(this,arguments,void 0,function*({portableDid:r,keyManager:n=new er}){let i=me.parse(r.uri);if(i?.method!==t.methodName)throw new re(ie.MethodNotSupported,"Method not supported");return yield br.import({portableDid:r,keyManager:n})})}static publish(e){return cs(this,arguments,void 0,function*({did:r,gatewayUri:n=aI}){var i,o,s;let c=(o=(i=r.document.verificationMethod)===null||i===void 0?void 0:i.map(d=>({id:d.id,publicKeyJwk:d.publicKeyJwk,purposes:l_({didDocument:r.document,methodId:d.id})})))!==null&&o!==void 0?o:[],a=yield bc.createIonDocument({services:(s=r.document.service)!==null&&s!==void 0?s:[],verificationMethods:c}),u=yield bc.constructCreateRequest({ionDocument:a,recoveryKey:r.metadata.recoveryKey,updateKey:r.metadata.updateKey});try{let d=bc.appendPathToUrl({baseUrl:n,path:"/operations"}),f=yield fetch(d,{method:"POST",mode:"cors",headers:{"Content-Type":"application/json"},body:JSON.stringify(u)});return{didDocument:r.document,didDocumentMetadata:Object.assign(Object.assign({},r.metadata),{published:f.ok}),didRegistrationMetadata:{}}}catch{return{didDocument:null,didDocumentMetadata:{published:!1},didRegistrationMetadata:{error:ie.InternalError,errorMessage:`Failed to publish DID document for: ${r.uri}`}}}})}static resolve(e){return cs(this,arguments,void 0,function*(r,n={}){var i,o;let s=me.parse(r);if(!s)return Object.assign(Object.assign({},yt),{didResolutionMetadata:{error:"invalidDid"}});if(s.method!==t.methodName)return Object.assign(Object.assign({},yt),{didResolutionMetadata:{error:"methodNotSupported"}});let c=(i=n?.gatewayUri)!==null&&i!==void 0?i:aI;try{let a=bc.appendPathToUrl({baseUrl:c,path:`/identifiers/${r}`}),u=yield fetch(a);if(!u.ok)throw new re(ie.NotFound,`Unable to find DID document for: ${r}`);let{didDocument:d,didDocumentMetadata:f}=yield u.json();return Object.assign(Object.assign(Object.assign({},yt),d&&{didDocument:d}),{didDocumentMetadata:Object.assign({published:(o=f?.method)===null||o===void 0?void 0:o.published},f)})}catch(a){if(!(a instanceof re))throw new Error(a);return Object.assign(Object.assign({},yt),{didResolutionMetadata:Object.assign({error:a.code},a.message&&{errorMessage:a.message})})}})}};Rb.methodName="ion";var bc=class t{static appendPathToUrl({baseUrl:e,path:r}){let n=new URL(e);return n.pathname=n.pathname.endsWith("/")?n.pathname:n.pathname+"/",n.pathname+=r.startsWith("/")?r.substring(1):r,n.toString()}static computeLongFormDidUri(e){return cs(this,arguments,void 0,function*({recoveryKey:r,updateKey:n,services:i,verificationMethods:o}){let s=yield t.createIonDocument({services:i,verificationMethods:o}),c=t.normalizeJwk(r),a=t.normalizeJwk(n);return yield nu.createLongFormDid({document:s,recoveryKey:c,updateKey:a})})}static constructCreateRequest(e){return cs(this,arguments,void 0,function*({ionDocument:r,recoveryKey:n,updateKey:i}){return yield ss.createCreateRequest({document:r,recoveryKey:t.normalizeJwk(n),updateKey:t.normalizeJwk(i)})})}static createIonDocument(e){return cs(this,arguments,void 0,function*({services:r,verificationMethods:n}){var i,o;let s=[];for(let u of n){let d=(o=(i=u.id)!==null&&i!==void 0?i:u.publicKeyJwk.kid)!==null&&o!==void 0?o:yield ge({jwk:u.publicKeyJwk});d=`${d.split("#").pop()}`;let f={id:d,publicKeyJwk:t.normalizeJwk(u.publicKeyJwk),purposes:u.purposes,type:"JsonWebKey2020"};s.push(f)}let c=r.map(u=>Object.assign(Object.assign({},u),{id:`${u.id.split("#").pop()}`}));return{publicKeys:s,services:c}})}static normalizeJwk(e){let r=e.kty,n;if(r==="EC")n={crv:e.crv,kty:e.kty,x:e.x,y:e.y};else if(r==="oct")n={k:e.k,kty:e.kty};else if(r==="OKP")n={crv:e.crv,kty:e.kty,x:e.x};else if(r==="RSA")n={e:e.e,kty:e.kty,n:e.n};else throw new Error(`Unsupported key type: ${r}`);return n}};l();var Hp=function(t,e,r,n){function i(o){return o instanceof r?o:new r(function(s){s(o)})}return new(r||(r=Promise))(function(o,s){function c(d){try{u(n.next(d))}catch(f){s(f)}}function a(d){try{u(n.throw(d))}catch(f){s(f)}}function u(d){d.done?o(d.value):i(d.value).then(c,a)}u((n=n.apply(t,e||[])).next())})},Ub=class t extends ln{static create(){return Hp(this,arguments,void 0,function*({keyManager:e=new er,options:r={}}={}){var n,i,o,s;if(r.algorithm&&r.verificationMethods)throw new Error("The 'algorithm' and 'verificationMethods' options are mutually exclusive");if(r.verificationMethods&&r.verificationMethods.length!==1)throw new Error("The 'verificationMethods' option must contain exactly one entry");let c=(s=(n=r.algorithm)!==null&&n!==void 0?n:(o=(i=r.verificationMethods)===null||i===void 0?void 0:i[0])===null||o===void 0?void 0:o.algorithm)!==null&&s!==void 0?s:"Ed25519",a=yield e.generateKey({algorithm:c}),u=yield e.getPublicKey({keyUri:a}),d=ne.object(u).toBase64Url(),f=`did:${t.methodName}:${d}`,p=(yield t.resolve(f)).didDocument;return new br({uri:f,document:p,metadata:{},keyManager:e})})}static getSigningMethod(e){return Hp(this,arguments,void 0,function*({didDocument:r}){var n;let i=me.parse(r.id);if(i&&i.method!==this.methodName)throw new re(ie.MethodNotSupported,`Method not supported: ${i.method}`);let[o]=(n=r.verificationMethod)!==null&&n!==void 0?n:[];if(!(o&&o.publicKeyJwk))throw new re(ie.InternalError,"A verification method intended for signing could not be determined from the DID Document");return o})}static import(e){return Hp(this,arguments,void 0,function*({portableDid:r,keyManager:n=new er}){let i=me.parse(r.uri);if(i?.method!==t.methodName)throw new re(ie.MethodNotSupported,"Method not supported");let o=yield br.import({portableDid:r,keyManager:n});if(o.document.verificationMethod.length!==1)throw new re(ie.InvalidDidDocument,"DID document must contain exactly one verification method");return o})}static resolve(e,r){return Hp(this,void 0,void 0,function*(){let n=me.parse(e),i;try{i=ne.base64Url(n.id).toObject()}catch{}if(!n||!i)return Object.assign(Object.assign({},yt),{didResolutionMetadata:{error:"invalidDid"}});if(n.method!==t.methodName)return Object.assign(Object.assign({},yt),{didResolutionMetadata:{error:"methodNotSupported"}});let o={"@context":["https://www.w3.org/ns/did/v1"],id:n.uri},s=`${o.id}#0`;switch(o.verificationMethod=[{id:s,type:"JsonWebKey",controller:o.id,publicKeyJwk:i}],o.authentication=[s],o.assertionMethod=[s],o.capabilityInvocation=[s],o.capabilityDelegation=[s],o.keyAgreement=[s],i.use){case"sig":{delete o.keyAgreement;break}case"enc":{delete o.authentication,delete o.assertionMethod,delete o.capabilityInvocation,delete o.capabilityDelegation;break}}return Object.assign(Object.assign({},yt),{didDocument:o})})}};Ub.methodName="jwk";l();var Nn=function(t,e,r,n){function i(o){return o instanceof r?o:new r(function(s){s(o)})}return new(r||(r=Promise))(function(o,s){function c(d){try{u(n.next(d))}catch(f){s(f)}}function a(d){try{u(n.throw(d))}catch(f){s(f)}}function u(d){d.done?o(d.value):i(d.value).then(c,a)}u((n=n.apply(t,e||[])).next())})},co;(function(t){t.Ed25519="Ed25519",t.secp256k1="secp256k1",t.secp256r1="secp256r1",t.X25519="X25519"})(co||(co={}));var Ob={Ed25519VerificationKey2020:"https://w3id.org/security/suites/ed25519-2020/v1",JsonWebKey2020:"https://w3id.org/security/suites/jws-2020/v1",X25519KeyAgreementKey2020:"https://w3id.org/security/suites/x25519-2020/v1"},zC={Ed25519:co.Ed25519,ES256K:co.secp256k1,ES256:co.secp256r1,"P-256":co.secp256r1,secp256k1:co.secp256k1,secp256r1:co.secp256r1,X25519:co.X25519},Db=class t extends ln{static create(){return Nn(this,arguments,void 0,function*({keyManager:e=new er,options:r={}}={}){var n,i,o,s;if(r.algorithm&&r.verificationMethods)throw new Error("The 'algorithm' and 'verificationMethods' options are mutually exclusive");if(r.verificationMethods&&r.verificationMethods.length!==1)throw new Error("The 'verificationMethods' option must contain exactly one entry");let c=(s=(n=r.algorithm)!==null&&n!==void 0?n:(o=(i=r.verificationMethods)===null||i===void 0?void 0:i[0])===null||o===void 0?void 0:o.algorithm)!==null&&s!==void 0?s:"Ed25519",a=yield e.generateKey({algorithm:c}),u=yield e.getPublicKey({keyUri:a}),d=yield vr.publicKeyToMultibaseId({publicKey:u}),f=`did:${t.methodName}:${d}`,p=(yield t.resolve(f,r)).didDocument;return new br({uri:f,document:p,metadata:{},keyManager:e})})}static getSigningMethod(e){return Nn(this,arguments,void 0,function*({didDocument:r}){var n;let i=me.parse(r.id);if(i&&i.method!==this.methodName)throw new re(ie.MethodNotSupported,`Method not supported: ${i.method}`);let[o]=r.assertionMethod||[],s=(n=r.verificationMethod)===null||n===void 0?void 0:n.find(c=>c.id===o);if(!(s&&s.publicKeyJwk))throw new re(ie.InternalError,"A verification method intended for signing could not be determined from the DID Document");return s})}static import(e){return Nn(this,arguments,void 0,function*({portableDid:r,keyManager:n=new er}){let i=me.parse(r.uri);if(i?.method!==t.methodName)throw new re(ie.MethodNotSupported,"Method not supported");let o=yield br.import({portableDid:r,keyManager:n});if(o.document.verificationMethod.length!==1)throw new re(ie.InvalidDidDocument,"DID document must contain exactly one verification method");return o})}static resolve(e,r){return Nn(this,void 0,void 0,function*(){try{let n=yield t.createDocument({didUri:e,options:r});return Object.assign(Object.assign({},yt),{didDocument:n})}catch(n){if(!(n instanceof re))throw new Error(n);return Object.assign(Object.assign({},yt),{didResolutionMetadata:Object.assign({error:n.code},n.message&&{errorMessage:n.message})})}})}static createDocument(e){return Nn(this,arguments,void 0,function*({didUri:r,options:n={}}){let{defaultContext:i="https://www.w3.org/ns/did/v1",enableEncryptionKeyDerivation:o=!1,enableExperimentalPublicKeyTypes:s=!1,publicKeyFormat:c="JsonWebKey2020"}=n,a={id:""},u=me.parse(r);if(!u)throw new re(ie.InvalidDid,`Invalid DID URI: ${r}`);let d=u.id;if(u.method!==t.methodName)throw new re(ie.MethodNotSupported,`Method not supported: ${u.method}`);if(!t.validateIdentifier(u))throw new re(ie.InvalidDid,`Invalid DID URI: ${r}`);let f=yield t.createSignatureMethod({didUri:r,multibaseValue:d,options:{enableExperimentalPublicKeyTypes:s,publicKeyFormat:c}});if(a.id=u.uri,a.verificationMethod=[f],a.authentication=[f.id],a.assertionMethod=[f.id],a.capabilityInvocation=[f.id],a.capabilityDelegation=[f.id],o===!0){let g=c==="Ed25519VerificationKey2020"?"X25519KeyAgreementKey2020":"JsonWebKey2020",y=yield this.createEncryptionMethod({didUri:r,multibaseValue:d,options:{enableExperimentalPublicKeyTypes:s,publicKeyFormat:g}});a.verificationMethod.push(y),a.keyAgreement=[y.id]}let h=[i];return f_({didDocument:a}).forEach(g=>{let y=Ob[g];h.push(y)}),a["@context"]=h,a})}static createEncryptionMethod(e){return Nn(this,arguments,void 0,function*({didUri:r,multibaseValue:n,options:i}){let{enableExperimentalPublicKeyTypes:o,publicKeyFormat:s}=i,c={id:"",type:"",controller:""},{keyBytes:a,multicodecCode:u}=yield t.deriveEncryptionKey({multibaseValue:n}),d=a.byteLength,f=vr.MULTICODEC_PUBLIC_KEY_LENGTH[u];if(d!==f)throw new re(ie.InvalidPublicKeyLength,`Expected ${d} bytes. Actual: ${f}`);let h=Jw({keyBytes:a,multicodecCode:u});c.id=`${r}#${h}`;try{new URL(c.id)}catch{throw new re(ie.InvalidDidUrl,"Verification Method ID is not a valid DID URL.")}if(!(s in Ob))throw new re(ie.UnsupportedPublicKeyType,`Unsupported format: ${s}`);if(o===!1&&!["Multikey","JsonWebKey2020","X25519KeyAgreementKey2020"].includes(s))throw new re(ie.InvalidPublicKeyType,`Specified '${s}' without setting enableExperimentalPublicKeyTypes to true.`);if(c.type=s,c.controller=r,s==="X25519KeyAgreementKey2020"&&(c.publicKeyMultibase=h),s==="JsonWebKey2020"){let{crv:g}=yield vr.multicodecToJwk({code:u});c.publicKeyJwk=yield vr.keyConverter(g).bytesToPublicKey({publicKeyBytes:a})}return c})}static createSignatureMethod(e){return Nn(this,arguments,void 0,function*({didUri:r,multibaseValue:n,options:i}){let{enableExperimentalPublicKeyTypes:o,publicKeyFormat:s}=i,c={id:"",type:"",controller:""},{keyBytes:a,multicodecCode:u,multicodecName:d}=Xw({multibaseKeyId:n}),f=a.byteLength,h=vr.MULTICODEC_PUBLIC_KEY_LENGTH[u];if(f!==h)throw new re(ie.InvalidPublicKeyLength,`Expected ${f} bytes. Actual: ${h}`);let p=!1;switch(d){case"secp256k1-pub":p=yield kt.validatePublicKey({publicKeyBytes:a});break;case"ed25519-pub":p=yield Bt.validatePublicKey({publicKeyBytes:a});break;case"x25519-pub":p=!0;break}if(!p)throw new re(ie.InvalidPublicKey,"Invalid public key detected.");c.id=`${r}#${n}`;try{new URL(c.id)}catch{throw new re(ie.InvalidDidUrl,"Verification Method ID is not a valid DID URL.")}if(!(s in Ob))throw new re(ie.UnsupportedPublicKeyType,`Unsupported format: ${s}`);if(o===!1&&!["Multikey","JsonWebKey2020","Ed25519VerificationKey2020"].includes(s))throw new re(ie.InvalidPublicKeyType,`Specified '${s}' without setting enableExperimentalPublicKeyTypes to true.`);if(c.type=s,c.controller=r,s==="Ed25519VerificationKey2020"&&(c.publicKeyMultibase=n),s==="JsonWebKey2020"){let{crv:y}=yield vr.multicodecToJwk({code:u});c.publicKeyJwk=yield vr.keyConverter(y).bytesToPublicKey({publicKeyBytes:a})}return c})}static deriveEncryptionKey(e){return Nn(this,arguments,void 0,function*({multibaseValue:r}){let n={keyBytes:new Uint8Array,multicodecCode:0},{keyBytes:i,multicodecCode:o}=Xw({multibaseKeyId:r});if(o===237){let s=yield vr.keyConverter("Ed25519").bytesToPublicKey({publicKeyBytes:i}),c=yield Bt.convertPublicKeyToX25519({publicKey:s});n={keyBytes:yield vr.keyConverter("Ed25519").publicKeyToBytes({publicKey:c}),multicodecCode:236}}return n})}static validateIdentifier(e){let{method:r,id:n}=e,[i]=e.uri.split(":",1);return i==="did"&&r==="key"&&Number("1")>0&&fa(n)==="String"&&n.startsWith("z")}};Db.methodName="key";var vr=class t{static jwkToMulticodec(e){return Nn(this,arguments,void 0,function*({jwk:r}){let n=[];r.crv&&(n.push(r.crv),r.d?n.push("private"):n.push("public"));let i=n.join(":"),o=t.JWK_TO_MULTICODEC[i];if(o===void 0)throw new Error(`Unsupported JWK to Multicodec conversion: '${i}'`);return{code:Jt.getCodeFromName({name:o}),name:o}})}static keyCompressor(e){let n={"P-256":Vt.compressPublicKey,secp256k1:kt.compressPublicKey}[e];if(!n)throw new re(ie.InvalidPublicKeyType,`Unsupported curve: ${e}`);return n}static keyConverter(e){let n={Ed25519:Bt,"P-256":Vt,secp256k1:kt,X25519:Ga}[e];if(!n)throw new re(ie.InvalidPublicKeyType,`Unsupported curve: ${e}`);return n}static multicodecToJwk(e){return Nn(this,arguments,void 0,function*({code:r,name:n}){if(!(n?!r:r))throw new Error("Either 'name' or 'code' must be defined, but not both.");n=n===void 0?Jt.getNameFromCode({code:r}):n;let i=n,o=t.MULTICODEC_TO_JWK[i];if(o===void 0)throw new Error("Unsupported Multicodec to JWK conversion");return Object.assign({},o)})}static publicKeyToMultibaseId(e){return Nn(this,arguments,void 0,function*({publicKey:r}){var n;if(!(r?.crv&&r.crv in zC))throw new re(ie.InvalidPublicKeyType,`Public key contains an unsupported key type: ${(n=r?.crv)!==null&&n!==void 0?n:"undefined"}`);let i=yield t.keyConverter(r.crv).publicKeyToBytes({publicKey:r});/^(secp256k1|P-256|P-384|P-521)$/.test(r.crv)&&(i=yield t.keyCompressor(r.crv)({publicKeyBytes:i}));let{name:o}=yield t.jwkToMulticodec({jwk:r});return Jw({keyBytes:i,multicodecName:o})})}};vr.JWK_TO_MULTICODEC={"Ed25519:public":"ed25519-pub","Ed25519:private":"ed25519-priv","secp256k1:public":"secp256k1-pub","secp256k1:private":"secp256k1-priv","X25519:public":"x25519-pub","X25519:private":"x25519-priv"};vr.MULTICODEC_PUBLIC_KEY_LENGTH={231:33,236:32,237:32};vr.MULTICODEC_TO_JWK={"ed25519-pub":{crv:"Ed25519",kty:"OKP",x:""},"ed25519-priv":{crv:"Ed25519",kty:"OKP",x:"",d:""},"secp256k1-pub":{crv:"secp256k1",kty:"EC",x:"",y:""},"secp256k1-priv":{crv:"secp256k1",kty:"EC",x:"",y:"",d:""},"x25519-pub":{crv:"X25519",kty:"OKP",x:""},"x25519-priv":{crv:"X25519",kty:"OKP",x:"",d:""}};l();var YC=function(t,e,r,n){function i(o){return o instanceof r?o:new r(function(s){s(o)})}return new(r||(r=Promise))(function(o,s){function c(d){try{u(n.next(d))}catch(f){s(f)}}function a(d){try{u(n.throw(d))}catch(f){s(f)}}function u(d){d.done?o(d.value):i(d.value).then(c,a)}u((n=n.apply(t,e||[])).next())})},kb=class t extends ln{static resolve(e,r){return YC(this,void 0,void 0,function*(){let n=me.parse(e);if(!n)return Object.assign(Object.assign({},yt),{didResolutionMetadata:{error:"invalidDid"}});if(n.method!==t.methodName)return Object.assign(Object.assign({},yt),{didResolutionMetadata:{error:"methodNotSupported"}});let i=`https://${n.id.replace(/:/g,"/")}`;i=decodeURIComponent(i);let o=n.id.includes(":")?`${i}/did.json`:`${i}/.well-known/did.json`;try{let s=yield fetch(o);if(!s.ok)throw new Error("HTTP error status code returned");let c=yield s.json();return Object.assign(Object.assign({},yt),{didDocument:c})}catch{return Object.assign(Object.assign({},yt),{didResolutionMetadata:{error:"notFound"}})}})}};kb.methodName="web";l();var tL=Mn(dI(),1),rL=Mn(am(),1);l();l();var ot=class t{static absoluteDidUrl(e,r){if(typeof e=="string"&&e.length!==0)return e.startsWith("#")?`${r}${e}`:e}static relationshipMethodId(e,r){let n=typeof e=="object"&&e!==null&&!Array.isArray(e)?e.id:e;return t.absoluteDidUrl(n,r)}static isDidVerificationMethod(e){return!(!e||typeof e!="object"||e===null||!("id"in e&&"type"in e&&"controller"in e)||typeof e.id!="string"||typeof e.type!="string"||typeof e.controller!="string")}static isDidService(e){return!(!e||typeof e!="object"||e===null||!("id"in e&&"type"in e&&"serviceEndpoint"in e)||typeof e.id!="string"||typeof e.type!="string"||typeof e.serviceEndpoint!="string")}static getVerificationMethods(e){if(!e)throw new qe("Required parameter missing: 'didDocument'");let r=[];return r.push(...e.verificationMethod?.filter(t.isDidVerificationMethod)??[]),Object.keys(Mi).forEach(n=>{r.push(...e[n]?.filter(t.isDidVerificationMethod)??[])}),r}static deriveRootCapability(e){return{"@context":"https://w3id.org/zcap/v1",id:`urn:zcap:root:${encodeURIComponent(e)}`,controller:e,invocationTarget:e}}static dereferenceZcapId(e){let r={},[n,i,o,s]=e.split(":")??[];if([n,i,o,s].length!==4)throw new re(ie.InvalidDid,`Invalid capabilityId: ${e}`);if(!n||n!=="urn")throw new re(ie.InvalidDid,`Invalid capabilityId: ${e}`);if(!i||i!=="zcap")throw new re(ie.InvalidDid,`Invalid capabilityId: ${e}`);if(!o||o!=="root")throw new re(ie.InvalidDid,`Invalid capabilityId: ${e}`);let a=decodeURIComponent(s);return r.id=e,r.controller=a,r.invocationTarget=a,r}};l();l();l();l();l();l();l();function fI(t,e,r){return t&e^~t&r}function lI(t,e,r){return t&e^t&r^e&r}var qp=class{blockLen;outputLen;padOffset;isLE;buffer;view;finished=!1;length=0;pos=0;destroyed=!1;constructor(e,r,n,i){this.blockLen=e,this.outputLen=r,this.padOffset=n,this.isLE=i,this.buffer=new Uint8Array(e),this.view=Ll(this.buffer)}update(e){sa(this),Te(e);let{view:r,buffer:n,blockLen:i}=this,o=e.length;for(let s=0;s<o;){let c=Math.min(i-this.pos,o-s);if(c===i){let a=Ll(e);for(;i<=o-s;s+=i)this.process(a,s);continue}n.set(e.subarray(s,s+c),this.pos),this.pos+=c,s+=c,this.pos===i&&(this.process(r,0),this.pos=0)}return this.length+=e.length,this.roundClean(),this}digestInto(e){sa(this),Hv(e,this),this.finished=!0;let{buffer:r,view:n,blockLen:i,isLE:o}=this,{pos:s}=this;r[s++]=128,Ns(this.buffer.subarray(s)),this.padOffset>i-s&&(this.process(n,0),s=0);for(let f=s;f<i;f++)r[f]=0;n.setBigUint64(i-8,BigInt(this.length*8),o),this.process(n,0);let c=Ll(e),a=this.outputLen;if(a%4)throw new Error("_sha2: outputLen must be aligned to 32bit");let u=a/4,d=this.get();if(u>d.length)throw new Error("_sha2: outputLen bigger than state");for(let f=0;f<u;f++)c.setUint32(4*f,d[f],o)}digest(){let{buffer:e,outputLen:r}=this;this.digestInto(e);let n=e.slice(0,r);return this.destroy(),n}_cloneInto(e){e||=new this.constructor,e.set(...this.get());let{blockLen:r,buffer:n,length:i,finished:o,destroyed:s,pos:c}=this;return e.destroyed=s,e.finished=o,e.length=i,e.pos=c,i%r&&e.buffer.set(n),e}clone(){return this._cloneInto()}},ao=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]);var nL=Uint32Array.from([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]),as=new Uint32Array(64),Nb=class extends qp{constructor(e){super(64,e,8,!1)}get(){let{A:e,B:r,C:n,D:i,E:o,F:s,G:c,H:a}=this;return[e,r,n,i,o,s,c,a]}set(e,r,n,i,o,s,c,a){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=c|0,this.H=a|0}process(e,r){for(let f=0;f<16;f++,r+=4)as[f]=e.getUint32(r,!1);for(let f=16;f<64;f++){let h=as[f-15],p=as[f-2],g=En(h,7)^En(h,18)^h>>>3,y=En(p,17)^En(p,19)^p>>>10;as[f]=y+as[f-7]+g+as[f-16]|0}let{A:n,B:i,C:o,D:s,E:c,F:a,G:u,H:d}=this;for(let f=0;f<64;f++){let h=En(c,6)^En(c,11)^En(c,25),p=d+h+fI(c,a,u)+nL[f]+as[f]|0,y=(En(n,2)^En(n,13)^En(n,22))+lI(n,i,o)|0;d=u,u=a,a=c,c=s+p|0,s=o,o=i,i=n,n=p+y|0}n=n+this.A|0,i=i+this.B|0,o=o+this.C|0,s=s+this.D|0,c=c+this.E|0,a=a+this.F|0,u=u+this.G|0,d=d+this.H|0,this.set(n,i,o,s,c,a,u,d)}roundClean(){Ns(as)}destroy(){this.set(0,0,0,0,0,0,0,0),Ns(this.buffer)}},Cb=class extends Nb{A=ao[0]|0;B=ao[1]|0;C=ao[2]|0;D=ao[3]|0;E=ao[4]|0;F=ao[5]|0;G=ao[6]|0;H=ao[7]|0;constructor(){super(32)}};var Fp=qv(()=>new Cb,Fv(1));l();l();var dr=BigInt(0),tr=BigInt(1),Ec=BigInt(2),yI=BigInt(3),gI=BigInt(4),mI=BigInt(5),iL=BigInt(7),wI=BigInt(8),oL=BigInt(9),bI=BigInt(16);function Cn(t,e){let r=t%e;return r>=dr?r:e+r}function Hr(t,e,r){let n=t;for(;e-- >dr;)n*=n,n%=r;return n}function hI(t,e){if(t===dr)throw new Error("invert: expected non-zero number");if(e<=dr)throw new Error("invert: expected positive modulus, got "+e);let r=Cn(t,e),n=e,i=dr,o=tr,s=tr,c=dr;for(;r!==dr;){let u=n/r,d=n%r,f=i-s*u,h=o-c*u;n=r,r=d,i=s,o=c,s=f,c=h}if(n!==tr)throw new Error("invert: does not exist");return Cn(i,e)}function Pb(t,e,r){if(!t.eql(t.sqr(e),r))throw new Error("Cannot find square root")}function xI(t,e){let r=(t.ORDER+tr)/gI,n=t.pow(e,r);return Pb(t,n,e),n}function sL(t,e){let r=(t.ORDER-mI)/wI,n=t.mul(e,Ec),i=t.pow(n,r),o=t.mul(e,i),s=t.mul(t.mul(o,Ec),i),c=t.mul(o,t.sub(s,t.ONE));return Pb(t,c,e),c}function cL(t){let e=cu(t),r=EI(t),n=r(e,e.neg(e.ONE)),i=r(e,n),o=r(e,e.neg(n)),s=(t+iL)/bI;return(c,a)=>{let u=c.pow(a,s),d=c.mul(u,n),f=c.mul(u,i),h=c.mul(u,o),p=c.eql(c.sqr(d),a),g=c.eql(c.sqr(f),a);u=c.cmov(u,d,p),d=c.cmov(h,f,g);let y=c.eql(c.sqr(d),a),x=c.cmov(u,d,y);return Pb(c,x,a),x}}function EI(t){if(t<yI)throw new Error("sqrt is not defined for small field");let e=t-tr,r=0;for(;e%Ec===dr;)e/=Ec,r++;let n=Ec,i=cu(t);for(;pI(i,n)===1;)if(n++>1e3)throw new Error("Cannot find square root: probably non-prime P");if(r===1)return xI;let o=i.pow(n,e),s=(e+tr)/Ec;return function(a,u){if(a.is0(u))return u;if(pI(a,u)!==1)throw new Error("Cannot find square root");let d=r,f=a.mul(a.ONE,o),h=a.pow(u,e),p=a.pow(u,s);for(;!a.eql(h,a.ONE);){if(a.is0(h))return a.ZERO;let g=1,y=a.sqr(h);for(;!a.eql(y,a.ONE);)if(g++,y=a.sqr(y),g===d)throw new Error("Cannot find square root");let x=tr<<BigInt(d-g-1),S=a.pow(f,x);d=g,f=a.sqr(S),h=a.mul(h,f),p=a.mul(p,S)}return p}}function aL(t){return t%gI===yI?xI:t%wI===mI?sL:t%bI===oL?cL(t):EI(t)}var uL=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function Mb(t){let e={ORDER:"bigint",BYTES:"number",BITS:"number"},r=uL.reduce((n,i)=>(n[i]="function",n),e);return td(t,r),t}function dL(t,e,r){if(r<dr)throw new Error("invalid exponent, negatives unsupported");if(r===dr)return t.ONE;if(r===tr)return e;let n=t.ONE,i=e;for(;r>dr;)r&tr&&(n=t.mul(n,i)),i=t.sqr(i),r>>=tr;return n}function jp(t,e,r=!1){let n=new Array(e.length).fill(r?t.ZERO:void 0),i=e.reduce((s,c,a)=>t.is0(c)?s:(n[a]=s,t.mul(s,c)),t.ONE),o=t.inv(i);return e.reduceRight((s,c,a)=>t.is0(c)?s:(n[a]=t.mul(s,n[a]),t.mul(s,c)),o),n}function pI(t,e){let r=(t.ORDER-tr)/Ec,n=t.pow(e,r),i=t.eql(n,t.ONE),o=t.eql(n,t.ZERO),s=t.eql(n,t.neg(t.ONE));if(!i&&!o&&!s)throw new Error("invalid Legendre symbol result");return i?1:o?0:-1}function fL(t,e){e!==void 0&&Yn(e);let r=e!==void 0?e:t.toString(2).length,n=Math.ceil(r/8);return{nBitLength:r,nByteLength:n}}var Lb=class{ORDER;BITS;BYTES;isLE;ZERO=dr;ONE=tr;_lengths;_sqrt;_mod;constructor(e,r={}){if(e<=dr)throw new Error("invalid field: expected ORDER > 0, got "+e);let n;this.isLE=!1,r!=null&&typeof r=="object"&&(typeof r.BITS=="number"&&(n=r.BITS),typeof r.sqrt=="function"&&(this.sqrt=r.sqrt),typeof r.isLE=="boolean"&&(this.isLE=r.isLE),r.allowedLengths&&(this._lengths=r.allowedLengths?.slice()),typeof r.modFromBytes=="boolean"&&(this._mod=r.modFromBytes));let{nBitLength:i,nByteLength:o}=fL(e,n);if(o>2048)throw new Error("invalid field: expected ORDER of <= 2048 bytes");this.ORDER=e,this.BITS=i,this.BYTES=o,this._sqrt=void 0,Object.preventExtensions(this)}create(e){return Cn(e,this.ORDER)}isValid(e){if(typeof e!="bigint")throw new Error("invalid field element: expected bigint, got "+typeof e);return dr<=e&&e<this.ORDER}is0(e){return e===dr}isValidNot0(e){return!this.is0(e)&&this.isValid(e)}isOdd(e){return(e&tr)===tr}neg(e){return Cn(-e,this.ORDER)}eql(e,r){return e===r}sqr(e){return Cn(e*e,this.ORDER)}add(e,r){return Cn(e+r,this.ORDER)}sub(e,r){return Cn(e-r,this.ORDER)}mul(e,r){return Cn(e*r,this.ORDER)}pow(e,r){return dL(this,e,r)}div(e,r){return Cn(e*hI(r,this.ORDER),this.ORDER)}sqrN(e){return e*e}addN(e,r){return e+r}subN(e,r){return e-r}mulN(e,r){return e*r}inv(e){return hI(e,this.ORDER)}sqrt(e){return this._sqrt||(this._sqrt=aL(this.ORDER)),this._sqrt(this,e)}toBytes(e){return this.isLE?z0(e,this.BYTES):Ml(e,this.BYTES)}fromBytes(e,r=!1){Te(e);let{_lengths:n,BYTES:i,isLE:o,ORDER:s,_mod:c}=this;if(n){if(!n.includes(e.length)||e.length>i)throw new Error("Field.fromBytes: expected "+n+" bytes, got "+e.length);let u=new Uint8Array(i);u.set(e,o?0:u.length-e.length),e=u}if(e.length!==i)throw new Error("Field.fromBytes: expected "+i+" bytes, got "+e.length);let a=o?G0(e):ko(e);if(c&&(a=Cn(a,s)),!r&&!this.isValid(a))throw new Error("invalid field element: outside of range 0..ORDER");return a}invertBatch(e){return jp(this,e)}cmov(e,r,n){return n?r:e}};function cu(t,e={}){return new Lb(t,e)}function vI(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 Kb(t){let e=vI(t);return e+Math.ceil(e/2)}function Wp(t,e,r=!1){Te(t);let n=t.length,i=vI(e),o=Kb(e);if(n<16||n<o||n>1024)throw new Error("expected "+o+"-1024 bytes of input, got "+n);let s=r?G0(t):ko(t),c=Cn(s,e-tr)+tr;return r?z0(c,i):Ml(c,i)}var au=BigInt(0),vc=BigInt(1);function gf(t,e){let r=e.negate();return t?r:e}function qb(t,e){let r=jp(t.Fp,e.map(n=>n.Z));return e.map((n,i)=>t.fromAffine(n.toAffine(r[i])))}function _I(t,e){if(!Number.isSafeInteger(t)||t<=0||t>e)throw new Error("invalid window size, expected [1.."+e+"], got W="+t)}function $b(t,e){_I(t,e);let r=Math.ceil(e/t)+1,n=2**(t-1),i=2**t,o=ed(t),s=BigInt(t);return{windows:r,windowSize:n,mask:o,maxNumber:i,shiftBy:s}}function SI(t,e,r){let{windowSize:n,mask:i,maxNumber:o,shiftBy:s}=r,c=Number(t&i),a=t>>s;c>n&&(c-=o,a+=vc);let u=e*n,d=u+Math.abs(c)-1,f=c===0,h=c<0,p=e%2!==0;return{nextN:a,offset:d,isZero:f,isNeg:h,isNegF:p,offsetF:u}}var Hb=new WeakMap,II=new WeakMap;function Vb(t){return II.get(t)||1}function AI(t){if(t!==au)throw new Error("invalid wNAF")}var Gp=class{BASE;ZERO;Fn;bits;constructor(e,r){this.BASE=e.BASE,this.ZERO=e.ZERO,this.Fn=e.Fn,this.bits=r}_unsafeLadder(e,r,n=this.ZERO){let i=e;for(;r>au;)r&vc&&(n=n.add(i)),i=i.double(),r>>=vc;return n}precomputeWindow(e,r){let{windows:n,windowSize:i}=$b(r,this.bits),o=[],s=e,c=s;for(let a=0;a<n;a++){c=s,o.push(c);for(let u=1;u<i;u++)c=c.add(s),o.push(c);s=c.double()}return o}wNAF(e,r,n){if(!this.Fn.isValid(n))throw new Error("invalid scalar");let i=this.ZERO,o=this.BASE,s=$b(e,this.bits);for(let c=0;c<s.windows;c++){let{nextN:a,offset:u,isZero:d,isNeg:f,isNegF:h,offsetF:p}=SI(n,c,s);n=a,d?o=o.add(gf(h,r[p])):i=i.add(gf(f,r[u]))}return AI(n),{p:i,f:o}}wNAFUnsafe(e,r,n,i=this.ZERO){let o=$b(e,this.bits);for(let s=0;s<o.windows&&n!==au;s++){let{nextN:c,offset:a,isZero:u,isNeg:d}=SI(n,s,o);if(n=c,!u){let f=r[a];i=i.add(d?f.negate():f)}}return AI(n),i}getPrecomputes(e,r,n){let i=Hb.get(r);return i||(i=this.precomputeWindow(r,e),e!==1&&(typeof n=="function"&&(i=n(i)),Hb.set(r,i))),i}cached(e,r,n){let i=Vb(e);return this.wNAF(i,this.getPrecomputes(i,e,n),r)}unsafe(e,r,n,i){let o=Vb(e);return o===1?this._unsafeLadder(e,r,i):this.wNAFUnsafe(o,this.getPrecomputes(o,e,n),r,i)}createCache(e,r){_I(r,this.bits),II.set(e,r),Hb.delete(e)}hasCache(e){return Vb(e)!==1}};function BI(t,e,r,n){let i=e,o=t.ZERO,s=t.ZERO;for(;r>au||n>au;)r&vc&&(o=o.add(i)),n&vc&&(s=s.add(i)),i=i.double(),r>>=vc,n>>=vc;return{p1:o,p2:s}}function TI(t,e,r){if(e){if(e.ORDER!==t)throw new Error("Field.ORDER must match order: Fp == p, Fn == n");return Mb(e),e}else return cu(t,{isLE:r})}function RI(t,e,r={},n){if(n===void 0&&(n=t==="edwards"),!e||typeof e!="object")throw new Error(`expected valid ${t} CURVE object`);for(let a of["p","n","h"]){let u=e[a];if(!(typeof u=="bigint"&&u>au))throw new Error(`CURVE.${a} must be positive bigint`)}let i=TI(e.p,r.Fp,n),o=TI(e.n,r.Fn,n),c=["Gx","Gy","a",t==="weierstrass"?"b":"d"];for(let a of c)if(!i.isValid(e[a]))throw new Error(`CURVE.${a} must be valid field element of CURVE.Fp`);return e=Object.freeze(Object.assign({},e)),{CURVE:e,Fp:i,Fn:o}}function zp(t,e){return function(n){let i=t(n);return{secretKey:i,publicKey:e(i)}}}l();l();var Yp=class{oHash;iHash;blockLen;outputLen;finished=!1;destroyed=!1;constructor(e,r){if(Cl(e),Te(r,void 0,"key"),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 n=this.blockLen,i=new Uint8Array(n);i.set(r.length>n?e.create().update(r).digest():r);for(let o=0;o<i.length;o++)i[o]^=54;this.iHash.update(i),this.oHash=e.create();for(let o=0;o<i.length;o++)i[o]^=106;this.oHash.update(i),Ns(i)}update(e){return sa(this),this.iHash.update(e),this}digestInto(e){sa(this),Te(e,this.outputLen,"output"),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||=Object.create(Object.getPrototypeOf(this),{});let{oHash:r,iHash:n,finished:i,destroyed:o,blockLen:s,outputLen:c}=this;return e=e,e.finished=i,e.destroyed=o,e.blockLen=s,e.outputLen=c,e.oHash=r._cloneInto(e.oHash),e.iHash=n._cloneInto(e.iHash),e}clone(){return this._cloneInto()}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}},Fb=(t,e,r)=>new Yp(t,e).update(r).digest();Fb.create=(t,e)=>new Yp(t,e);var UI=(t,e)=>(t+(t>=0?e:-e)/OI)/e;function lL(t,e,r){let[[n,i],[o,s]]=e,c=UI(s*t,r),a=UI(-i*t,r),u=t-c*n-a*o,d=-c*i-a*s,f=u<uo,h=d<uo;f&&(u=-u),h&&(d=-d);let p=ed(Math.ceil(Y0(r)/2))+uu;if(u<uo||u>=p||d<uo||d>=p)throw new Error("splitScalar (endomorphism): failed, k="+t);return{k1neg:f,k1:u,k2neg:h,k2:d}}function Wb(t){if(!["compact","recovered","der"].includes(t))throw new Error('Signature format must be "compact", "recovered", or "der"');return t}function jb(t,e){let r={};for(let n of Object.keys(e))r[n]=t[n]===void 0?e[n]:t[n];return Zu(r.lowS,"lowS"),Zu(r.prehash,"prehash"),r.format!==void 0&&Wb(r.format),r}var Gb=class extends Error{constructor(e=""){super(e)}},us={Err:Gb,_tlv:{encode:(t,e)=>{let{Err:r}=us;if(t<0||t>256)throw new r("tlv.encode: wrong tag");if(e.length&1)throw new r("tlv.encode: unpadded data");let n=e.length/2,i=Qu(n);if(i.length/2&128)throw new r("tlv.encode: long form length too big");let o=n>127?Qu(i.length/2|128):"";return Qu(t)+o+i+e},decode(t,e){let{Err:r}=us,n=0;if(t<0||t>256)throw new r("tlv.encode: wrong tag");if(e.length<2||e[n++]!==t)throw new r("tlv.decode: wrong tlv");let i=e[n++],o=!!(i&128),s=0;if(!o)s=i;else{let a=i&127;if(!a)throw new r("tlv.decode(long): indefinite length not supported");if(a>4)throw new r("tlv.decode(long): byte length is too big");let u=e.subarray(n,n+a);if(u.length!==a)throw new r("tlv.decode: length bytes not complete");if(u[0]===0)throw new r("tlv.decode(long): zero leftmost byte");for(let d of u)s=s<<8|d;if(n+=a,s<128)throw new r("tlv.decode(long): not minimal encoding")}let c=e.subarray(n,n+s);if(c.length!==s)throw new r("tlv.decode: wrong value length");return{v:c,l:e.subarray(n+s)}}},_int:{encode(t){let{Err:e}=us;if(t<uo)throw new e("integer: negative integers are not allowed");let r=Qu(t);if(Number.parseInt(r[0],16)&8&&(r="00"+r),r.length&1)throw new e("unexpected DER parsing assertion: unpadded hex");return r},decode(t){let{Err:e}=us;if(t[0]&128)throw new e("invalid signature integer: negative");if(t[0]===0&&!(t[1]&128))throw new e("invalid signature integer: unnecessary leading zero");return ko(t)}},toSig(t){let{Err:e,_int:r,_tlv:n}=us,i=Te(t,void 0,"signature"),{v:o,l:s}=n.decode(48,i);if(s.length)throw new e("invalid signature: left bytes after parsing");let{v:c,l:a}=n.decode(2,o),{v:u,l:d}=n.decode(2,a);if(d.length)throw new e("invalid signature: left bytes after parsing");return{r:r.decode(c),s:r.decode(u)}},hexFromSig(t){let{_tlv:e,_int:r}=us,n=e.encode(2,r.encode(t.r)),i=e.encode(2,r.encode(t.s)),o=n+i;return e.encode(48,o)}},uo=BigInt(0),uu=BigInt(1),OI=BigInt(2),Jp=BigInt(3),hL=BigInt(4);function DI(t,e={}){let r=RI("weierstrass",t,e),{Fp:n,Fn:i}=r,o=r.CURVE,{h:s,n:c}=o;td(e,{},{allowInfinityPoint:"boolean",clearCofactor:"function",isTorsionFree:"function",fromBytes:"function",toBytes:"function",endo:"object"});let{endo:a}=e;if(a&&(!n.is0(o.a)||typeof a.beta!="bigint"||!Array.isArray(a.basises)))throw new Error('invalid endo: expected "beta": bigint and "basises": array');let u=NI(n,i);function d(){if(!n.isOdd)throw new Error("compression is not supported: Field does not have .isOdd()")}function f(G,I,D){let{x:E,y:U}=I.toAffine(),L=n.toBytes(E);if(Zu(D,"isCompressed"),D){d();let N=!n.isOdd(U);return pr(kI(N),L)}else return pr(Uint8Array.of(4),L,n.toBytes(U))}function h(G){Te(G,void 0,"Point");let{publicKey:I,publicKeyUncompressed:D}=u,E=G.length,U=G[0],L=G.subarray(1);if(E===I&&(U===2||U===3)){let N=n.fromBytes(L);if(!n.isValid(N))throw new Error("bad point: is not on curve, wrong x");let R=y(N),C;try{C=n.sqrt(R)}catch(J){let z=J instanceof Error?": "+J.message:"";throw new Error("bad point: is not on curve, sqrt error"+z)}d();let P=n.isOdd(C);return(U&1)===1!==P&&(C=n.neg(C)),{x:N,y:C}}else if(E===D&&U===4){let N=n.BYTES,R=n.fromBytes(L.subarray(0,N)),C=n.fromBytes(L.subarray(N,N*2));if(!x(R,C))throw new Error("bad point: is not on curve");return{x:R,y:C}}else throw new Error(`bad point: got length ${E}, expected compressed=${I} or uncompressed=${D}`)}let p=e.toBytes||f,g=e.fromBytes||h;function y(G){let I=n.sqr(G),D=n.mul(I,G);return n.add(n.add(D,n.mul(G,o.a)),o.b)}function x(G,I){let D=n.sqr(I),E=y(G);return n.eql(D,E)}if(!x(o.Gx,o.Gy))throw new Error("bad curve params: generator point");let S=n.mul(n.pow(o.a,Jp),hL),_=n.mul(n.sqr(o.b),BigInt(27));if(n.is0(n.add(S,_)))throw new Error("bad curve params: a or b");function A(G,I,D=!1){if(!n.isValid(I)||D&&n.is0(I))throw new Error(`bad point coordinate ${G}`);return I}function O(G){if(!(G instanceof $))throw new Error("Weierstrass Point expected")}function T(G){if(!a||!a.basises)throw new Error("no endo");return lL(G,a.basises,i.ORDER)}let M=J0((G,I)=>{let{X:D,Y:E,Z:U}=G;if(n.eql(U,n.ONE))return{x:D,y:E};let L=G.is0();I==null&&(I=L?n.ONE:n.inv(U));let N=n.mul(D,I),R=n.mul(E,I),C=n.mul(U,I);if(L)return{x:n.ZERO,y:n.ZERO};if(!n.eql(C,n.ONE))throw new Error("invZ was invalid");return{x:N,y:R}}),q=J0(G=>{if(G.is0()){if(e.allowInfinityPoint&&!n.is0(G.Y))return;throw new Error("bad point: ZERO")}let{x:I,y:D}=G.toAffine();if(!n.isValid(I)||!n.isValid(D))throw new Error("bad point: x or y not field elements");if(!x(I,D))throw new Error("bad point: equation left != right");if(!G.isTorsionFree())throw new Error("bad point: not in prime-order subgroup");return!0});function j(G,I,D,E,U){return D=new $(n.mul(D.X,G),D.Y,D.Z),I=gf(E,I),D=gf(U,D),I.add(D)}class ${static BASE=new $(o.Gx,o.Gy,n.ONE);static ZERO=new $(n.ZERO,n.ONE,n.ZERO);static Fp=n;static Fn=i;X;Y;Z;constructor(I,D,E){this.X=A("x",I),this.Y=A("y",D,!0),this.Z=A("z",E),Object.freeze(this)}static CURVE(){return o}static fromAffine(I){let{x:D,y:E}=I||{};if(!I||!n.isValid(D)||!n.isValid(E))throw new Error("invalid affine point");if(I instanceof $)throw new Error("projective point not allowed");return n.is0(D)&&n.is0(E)?$.ZERO:new $(D,E,n.ONE)}static fromBytes(I){let D=$.fromAffine(g(Te(I,void 0,"point")));return D.assertValidity(),D}static fromHex(I){return $.fromBytes(Ls(I))}get x(){return this.toAffine().x}get y(){return this.toAffine().y}precompute(I=8,D=!0){return Q.createCache(this,I),D||this.multiply(Jp),this}assertValidity(){q(this)}hasEvenY(){let{y:I}=this.toAffine();if(!n.isOdd)throw new Error("Field doesn't support isOdd");return!n.isOdd(I)}equals(I){O(I);let{X:D,Y:E,Z:U}=this,{X:L,Y:N,Z:R}=I,C=n.eql(n.mul(D,R),n.mul(L,U)),P=n.eql(n.mul(E,R),n.mul(N,U));return C&&P}negate(){return new $(this.X,n.neg(this.Y),this.Z)}double(){let{a:I,b:D}=o,E=n.mul(D,Jp),{X:U,Y:L,Z:N}=this,R=n.ZERO,C=n.ZERO,P=n.ZERO,V=n.mul(U,U),J=n.mul(L,L),z=n.mul(N,N),W=n.mul(U,L);return W=n.add(W,W),P=n.mul(U,N),P=n.add(P,P),R=n.mul(I,P),C=n.mul(E,z),C=n.add(R,C),R=n.sub(J,C),C=n.add(J,C),C=n.mul(R,C),R=n.mul(W,R),P=n.mul(E,P),z=n.mul(I,z),W=n.sub(V,z),W=n.mul(I,W),W=n.add(W,P),P=n.add(V,V),V=n.add(P,V),V=n.add(V,z),V=n.mul(V,W),C=n.add(C,V),z=n.mul(L,N),z=n.add(z,z),V=n.mul(z,W),R=n.sub(R,V),P=n.mul(z,J),P=n.add(P,P),P=n.add(P,P),new $(R,C,P)}add(I){O(I);let{X:D,Y:E,Z:U}=this,{X:L,Y:N,Z:R}=I,C=n.ZERO,P=n.ZERO,V=n.ZERO,J=o.a,z=n.mul(o.b,Jp),W=n.mul(D,L),Y=n.mul(E,N),X=n.mul(U,R),ue=n.add(D,E),ee=n.add(L,N);ue=n.mul(ue,ee),ee=n.add(W,Y),ue=n.sub(ue,ee),ee=n.add(D,U);let ce=n.add(L,R);return ee=n.mul(ee,ce),ce=n.add(W,X),ee=n.sub(ee,ce),ce=n.add(E,U),C=n.add(N,R),ce=n.mul(ce,C),C=n.add(Y,X),ce=n.sub(ce,C),V=n.mul(J,ee),C=n.mul(z,X),V=n.add(C,V),C=n.sub(Y,V),V=n.add(Y,V),P=n.mul(C,V),Y=n.add(W,W),Y=n.add(Y,W),X=n.mul(J,X),ee=n.mul(z,ee),Y=n.add(Y,X),X=n.sub(W,X),X=n.mul(J,X),ee=n.add(ee,X),W=n.mul(Y,ee),P=n.add(P,W),W=n.mul(ce,ee),C=n.mul(ue,C),C=n.sub(C,W),W=n.mul(ue,Y),V=n.mul(ce,V),V=n.add(V,W),new $(C,P,V)}subtract(I){return this.add(I.negate())}is0(){return this.equals($.ZERO)}multiply(I){let{endo:D}=e;if(!i.isValidNot0(I))throw new Error("invalid scalar: out of range");let E,U,L=N=>Q.cached(this,N,R=>qb($,R));if(D){let{k1neg:N,k1:R,k2neg:C,k2:P}=T(I),{p:V,f:J}=L(R),{p:z,f:W}=L(P);U=J.add(W),E=j(D.beta,V,z,N,C)}else{let{p:N,f:R}=L(I);E=N,U=R}return qb($,[E,U])[0]}multiplyUnsafe(I){let{endo:D}=e,E=this;if(!i.isValid(I))throw new Error("invalid scalar: out of range");if(I===uo||E.is0())return $.ZERO;if(I===uu)return E;if(Q.hasCache(this))return this.multiply(I);if(D){let{k1neg:U,k1:L,k2neg:N,k2:R}=T(I),{p1:C,p2:P}=BI($,E,L,R);return j(D.beta,C,P,U,N)}else return Q.unsafe(E,I)}toAffine(I){return M(this,I)}isTorsionFree(){let{isTorsionFree:I}=e;return s===uu?!0:I?I($,this):Q.unsafe(this,c).is0()}clearCofactor(){let{clearCofactor:I}=e;return s===uu?this:I?I($,this):this.multiplyUnsafe(s)}isSmallOrder(){return this.multiplyUnsafe(s).is0()}toBytes(I=!0){return Zu(I,"isCompressed"),this.assertValidity(),p($,this,I)}toHex(I=!0){return Cs(this.toBytes(I))}toString(){return`<Point ${this.is0()?"ZERO":this.toHex()}>`}}let Z=i.BITS,Q=new Gp($,e.endo?Math.ceil(Z/2):Z);return $.BASE.precompute(8),$}function kI(t){return Uint8Array.of(t?2:3)}function NI(t,e){return{secretKey:e.BYTES,publicKey:1+t.BYTES,publicKeyUncompressed:1+2*t.BYTES,publicKeyHasPrefix:!0,signature:2*e.BYTES}}function pL(t,e={}){let{Fn:r}=t,n=e.randomBytes||Ps,i=Object.assign(NI(t.Fp,r),{seed:Kb(r.ORDER)});function o(p){try{let g=r.fromBytes(p);return r.isValidNot0(g)}catch{return!1}}function s(p,g){let{publicKey:y,publicKeyUncompressed:x}=i;try{let S=p.length;return g===!0&&S!==y||g===!1&&S!==x?!1:!!t.fromBytes(p)}catch{return!1}}function c(p=n(i.seed)){return Wp(Te(p,i.seed,"seed"),r.ORDER)}function a(p,g=!0){return t.BASE.multiply(r.fromBytes(p)).toBytes(g)}function u(p){let{secretKey:g,publicKey:y,publicKeyUncompressed:x}=i;if(!Xu(p)||"_lengths"in r&&r._lengths||g===y)return;let S=Te(p,void 0,"key").length;return S===y||S===x}function d(p,g,y=!0){if(u(p)===!0)throw new Error("first arg must be private key");if(u(g)===!1)throw new Error("second arg must be public key");let x=r.fromBytes(p);return t.fromBytes(g).multiply(x).toBytes(y)}let f={isValidSecretKey:o,isValidPublicKey:s,randomSecretKey:c},h=zp(c,a);return Object.freeze({getPublicKey:a,getSharedSecret:d,keygen:h,Point:t,utils:f,lengths:i})}function CI(t,e,r={}){Cl(e),td(r,{},{hmac:"function",lowS:"boolean",randomBytes:"function",bits2int:"function",bits2int_modN:"function"}),r=Object.assign({},r);let n=r.randomBytes||Ps,i=r.hmac||((D,E)=>Fb(e,D,E)),{Fp:o,Fn:s}=t,{ORDER:c,BITS:a}=s,{keygen:u,getPublicKey:d,getSharedSecret:f,utils:h,lengths:p}=pL(t,r),g={prehash:!0,lowS:typeof r.lowS=="boolean"?r.lowS:!0,format:"compact",extraEntropy:!1},y=c*OI<o.ORDER;function x(D){let E=c>>uu;return D>E}function S(D,E){if(!s.isValidNot0(E))throw new Error(`invalid signature ${D}: out of range 1..Point.Fn.ORDER`);return E}function _(){if(y)throw new Error('"recovered" sig type is not supported for cofactor >2 curves')}function A(D,E){Wb(E);let U=p.signature,L=E==="compact"?U:E==="recovered"?U+1:void 0;return Te(D,L)}class O{r;s;recovery;constructor(E,U,L){if(this.r=S("r",E),this.s=S("s",U),L!=null){if(_(),![0,1,2,3].includes(L))throw new Error("invalid recovery id");this.recovery=L}Object.freeze(this)}static fromBytes(E,U=g.format){A(E,U);let L;if(U==="der"){let{r:P,s:V}=us.toSig(Te(E));return new O(P,V)}U==="recovered"&&(L=E[0],U="compact",E=E.subarray(1));let N=p.signature/2,R=E.subarray(0,N),C=E.subarray(N,N*2);return new O(s.fromBytes(R),s.fromBytes(C),L)}static fromHex(E,U){return this.fromBytes(Ls(E),U)}assertRecovery(){let{recovery:E}=this;if(E==null)throw new Error("invalid recovery id: must be present");return E}addRecoveryBit(E){return new O(this.r,this.s,E)}recoverPublicKey(E){let{r:U,s:L}=this,N=this.assertRecovery(),R=N===2||N===3?U+c:U;if(!o.isValid(R))throw new Error("invalid recovery id: sig.r+curve.n != R.x");let C=o.toBytes(R),P=t.fromBytes(pr(kI((N&1)===0),C)),V=s.inv(R),J=M(Te(E,void 0,"msgHash")),z=s.create(-J*V),W=s.create(L*V),Y=t.BASE.multiplyUnsafe(z).add(P.multiplyUnsafe(W));if(Y.is0())throw new Error("invalid recovery: point at infinify");return Y.assertValidity(),Y}hasHighS(){return x(this.s)}toBytes(E=g.format){if(Wb(E),E==="der")return Ls(us.hexFromSig(this));let{r:U,s:L}=this,N=s.toBytes(U),R=s.toBytes(L);return E==="recovered"?(_(),pr(Uint8Array.of(this.assertRecovery()),N,R)):pr(N,R)}toHex(E){return Cs(this.toBytes(E))}}let T=r.bits2int||function(E){if(E.length>8192)throw new Error("input is too large");let U=ko(E),L=E.length*8-a;return L>0?U>>BigInt(L):U},M=r.bits2int_modN||function(E){return s.create(T(E))},q=ed(a);function j(D){return zv("num < 2^"+a,D,uo,q),s.toBytes(D)}function $(D,E){return Te(D,void 0,"message"),E?Te(e(D),void 0,"prehashed message"):D}function Z(D,E,U){let{lowS:L,prehash:N,extraEntropy:R}=jb(U,g);D=$(D,N);let C=M(D),P=s.fromBytes(E);if(!s.isValidNot0(P))throw new Error("invalid private key");let V=[j(P),j(C)];if(R!=null&&R!==!1){let Y=R===!0?n(p.secretKey):R;V.push(Te(Y,void 0,"extraEntropy"))}let J=pr(...V),z=C;function W(Y){let X=T(Y);if(!s.isValidNot0(X))return;let ue=s.inv(X),ee=t.BASE.multiply(X).toAffine(),ce=s.create(ee.x);if(ce===uo)return;let Ue=s.create(ue*s.create(z+ce*P));if(Ue===uo)return;let Ke=(ee.x===ce?0:2)|Number(ee.y&uu),Je=Ue;return L&&x(Ue)&&(Je=s.neg(Ue),Ke^=1),new O(ce,Je,y?void 0:Ke)}return{seed:J,k2sig:W}}function Q(D,E,U={}){let{seed:L,k2sig:N}=Z(D,E,U);return Yv(e.outputLen,s.BYTES,i)(L,N).toBytes(U.format)}function G(D,E,U,L={}){let{lowS:N,prehash:R,format:C}=jb(L,g);if(U=Te(U,void 0,"publicKey"),E=$(E,R),!Xu(D)){let P=D instanceof O?", use sig.toBytes()":"";throw new Error("verify expects Uint8Array signature"+P)}A(D,C);try{let P=O.fromBytes(D,C),V=t.fromBytes(U);if(N&&P.hasHighS())return!1;let{r:J,s:z}=P,W=M(E),Y=s.inv(z),X=s.create(W*Y),ue=s.create(J*Y),ee=t.BASE.multiplyUnsafe(X).add(V.multiplyUnsafe(ue));return ee.is0()?!1:s.create(ee.x)===J}catch{return!1}}function I(D,E,U={}){let{prehash:L}=jb(U,g);return E=$(E,L),O.fromBytes(D,"recovered").recoverPublicKey(E).toBytes()}return Object.freeze({keygen:u,getPublicKey:d,getSharedSecret:f,utils:h,lengths:p,Point:t,sign:Q,verify:G,recoverPublicKey:I,Signature:O,hash:e})}var Qp={p:BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),n:BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),h:BigInt(1),a:BigInt(0),b:BigInt(7),Gx:BigInt("0x79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798"),Gy:BigInt("0x483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8")},yL={beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),basises:[[BigInt("0x3086d221a7d46bcde86c90e49284eb15"),-BigInt("0xe4437ed6010e88286f547fa90abfe4c3")],[BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),BigInt("0x3086d221a7d46bcde86c90e49284eb15")]]},gL=BigInt(0),zb=BigInt(2);function mL(t){let e=Qp.p,r=BigInt(3),n=BigInt(6),i=BigInt(11),o=BigInt(22),s=BigInt(23),c=BigInt(44),a=BigInt(88),u=t*t*t%e,d=u*u*t%e,f=Hr(d,r,e)*d%e,h=Hr(f,r,e)*d%e,p=Hr(h,zb,e)*u%e,g=Hr(p,i,e)*p%e,y=Hr(g,o,e)*g%e,x=Hr(y,c,e)*y%e,S=Hr(x,a,e)*x%e,_=Hr(S,c,e)*y%e,A=Hr(_,r,e)*d%e,O=Hr(A,s,e)*g%e,T=Hr(O,n,e)*u%e,M=Hr(T,zb,e);if(!Xp.eql(Xp.sqr(M),t))throw new Error("Cannot find square root");return M}var Xp=cu(Qp.p,{sqrt:mL}),Sc=DI(Qp,{Fp:Xp,endo:yL}),hn=CI(Sc,Fp),LI={};function Zp(t,...e){let r=LI[t];if(r===void 0){let n=Fp(Gv(t));r=pr(n,n),LI[t]=r}return Fp(pr(r,...e))}var Jb=t=>t.toBytes(!0).slice(1),Xb=t=>t%zb===gL;function Yb(t){let{Fn:e,BASE:r}=Sc,n=e.fromBytes(t),i=r.multiply(n);return{scalar:Xb(i.y)?n:e.neg(n),bytes:Jb(i)}}function MI(t){let e=Xp;if(!e.isValidNot0(t))throw new Error("invalid x: Fail if x \u2265 p");let r=e.create(t*t),n=e.create(r*t+BigInt(7)),i=e.sqrt(n);Xb(i)||(i=e.neg(i));let o=Sc.fromAffine({x:t,y:i});return o.assertValidity(),o}var mf=ko;function KI(...t){return Sc.Fn.create(mf(Zp("BIP0340/challenge",...t)))}function PI(t){return Yb(t).bytes}function wL(t,e,r=Ps(32)){let{Fn:n}=Sc,i=Te(t,void 0,"message"),{bytes:o,scalar:s}=Yb(e),c=Te(r,32,"auxRand"),a=n.toBytes(s^mf(Zp("BIP0340/aux",c))),u=Zp("BIP0340/nonce",a,o,i),{bytes:d,scalar:f}=Yb(u),h=KI(d,o,i),p=new Uint8Array(64);if(p.set(d,0),p.set(n.toBytes(n.create(f+h*s)),32),!$I(p,i,o))throw new Error("sign: Invalid signature produced");return p}function $I(t,e,r){let{Fp:n,Fn:i,BASE:o}=Sc,s=Te(t,64,"signature"),c=Te(e,void 0,"message"),a=Te(r,32,"publicKey");try{let u=MI(mf(a)),d=mf(s.subarray(0,32));if(!n.isValidNot0(d))return!1;let f=mf(s.subarray(32,64));if(!i.isValidNot0(f))return!1;let h=KI(i.toBytes(d),Jb(u),c),p=o.multiplyUnsafe(f).add(u.multiplyUnsafe(i.neg(h))),{x:g,y}=p.toAffine();return!(p.is0()||!Xb(y)||g!==d)}catch{return!1}}var ey=(()=>{let r=(n=Ps(48))=>Wp(n,Qp.n);return{keygen:zp(r,PI),getPublicKey:PI,sign:wL,verify:$I,Point:Sc,utils:{randomSecretKey:r,taggedHash:Zp,lift_x:MI,pointToBytes:Jb},lengths:{secretKey:32,publicKey:32,publicKeyHasPrefix:!1,signature:32*2,seed:48}}})();l();function bL(t){return t instanceof Uint8Array||ArrayBuffer.isView(t)&&t.constructor.name==="Uint8Array"}function VI(t,e){return Array.isArray(e)?e.length===0?!0:t?e.every(r=>typeof r=="string"):e.every(r=>Number.isSafeInteger(r)):!1}function Zb(t,e){if(typeof e!="string")throw new Error(`${t}: string expected`);return!0}function qI(t){if(!Number.isSafeInteger(t))throw new Error(`invalid integer: ${t}`)}function Qb(t){if(!Array.isArray(t))throw new Error("array expected")}function FI(t,e){if(!VI(!0,e))throw new Error(`${t}: array of strings expected`)}function xL(t,e){if(!VI(!1,e))throw new Error(`${t}: array of numbers expected`)}function EL(...t){let e=o=>o,r=(o,s)=>c=>o(s(c)),n=t.map(o=>o.encode).reduceRight(r,e),i=t.map(o=>o.decode).reduce(r,e);return{encode:n,decode:i}}function vL(t){let e=typeof t=="string"?t.split(""):t,r=e.length;FI("alphabet",e);let n=new Map(e.map((i,o)=>[i,o]));return{encode:i=>(Qb(i),i.map(o=>{if(!Number.isSafeInteger(o)||o<0||o>=r)throw new Error(`alphabet.encode: digit index outside alphabet "${o}". Allowed: ${t}`);return e[o]})),decode:i=>(Qb(i),i.map(o=>{Zb("alphabet.decode",o);let s=n.get(o);if(s===void 0)throw new Error(`Unknown letter: "${o}". Allowed: ${t}`);return s}))}}function SL(t=""){return Zb("join",t),{encode:e=>(FI("join.decode",e),e.join(t)),decode:e=>(Zb("join.decode",e),e.split(t))}}function HI(t,e,r){if(e<2)throw new Error(`convertRadix: invalid from=${e}, base cannot be less than 2`);if(r<2)throw new Error(`convertRadix: invalid to=${r}, base cannot be less than 2`);if(Qb(t),!t.length)return[];let n=0,i=[],o=Array.from(t,c=>{if(qI(c),c<0||c>=e)throw new Error(`invalid integer: ${c}`);return c}),s=o.length;for(;;){let c=0,a=!0;for(let u=n;u<s;u++){let d=o[u],f=e*c,h=f+d;if(!Number.isSafeInteger(h)||f/e!==c||h-d!==f)throw new Error("convertRadix: carry overflow");let p=h/r;c=h%r;let g=Math.floor(p);if(o[u]=g,!Number.isSafeInteger(g)||g*r+c!==h)throw new Error("convertRadix: carry overflow");if(a)g?a=!1:n=u;else continue}if(i.push(c),a)break}for(let c=0;c<t.length-1&&t[c]===0;c++)i.push(0);return i.reverse()}function AL(t){qI(t);let e=2**8;return{encode:r=>{if(!bL(r))throw new Error("radix.encode input should be Uint8Array");return HI(Array.from(r),e,t)},decode:r=>(xL("radix.decode",r),Uint8Array.from(HI(r,t,e)))}}var TL=t=>EL(AL(58),vL(t),SL("")),du=TL("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz");var jI=new Uint8Array([231,1]),dt=class t{#e;#t={prefix:jI,key:[],encoded:""};constructor(e){let r=e instanceof Uint8Array?e:_r(e);if(!r||r.length!==33)throw new Us("Invalid argument: byte length must be 33 (compressed)","CONSTRUCTOR_ERROR",{keyBytes:r});if(!hn.utils.isValidPublicKey(r))throw new Us("Invalid argument: not a valid secp256k1 compressed point","CONSTRUCTOR_ERROR",{keyBytes:r});this.#e=new Uint8Array(r),this.#t.encoded=this.encode(),this.#t.key=[...this.#t.prefix,...this.compressed]}get compressed(){return new Uint8Array(this.#e)}get uncompressed(){return hn.Point.fromBytes(this.compressed).toBytes(!1)}get xOnly(){return this.compressed.slice(1)}get parity(){let e=this.compressed[0];if(![2,3].includes(e))throw new Us("Invalid state: parity byte must be 2 or 3","PARITY_ERROR",{parity:e});return e}get isEven(){return this.parity===2}get x(){return this.compressed.slice(1,33)}get y(){return this.uncompressed.slice(33,65)}get multibase(){return{prefix:new Uint8Array(this.#t.prefix),key:[...this.#t.key],encoded:this.#t.encoded}}get hex(){return Pt(this.compressed)}get point(){return{x:this.x,y:this.y}}bip340(){return this.xOnly}decode(){return du.decode(this.multibase.encoded.slice(1))}encode(){let e=Array.from(this.compressed),r=Array.from(jI);return r.push(...e),"z"+du.encode(Uint8Array.from(r))}verify(e,r,n){if(n??={scheme:"schnorr"},n.scheme==="ecdsa")return hn.verify(e,r,this.compressed);if(n.scheme==="schnorr")return ey.verify(e,r,this.x);throw new Us(`Invalid scheme: ${n.scheme}.`,"VERIFY_SIGNATURE_ERROR",n)}equals(e){return ca(this.compressed,e.compressed)}toJSON(){return{hex:this.hex,multibase:this.multibase,point:{x:Array.from(this.x),y:Array.from(this.y),parity:this.parity}}}static isValid(e){try{return new t(e),!0}catch{return!1}}static fromJSON(e){return new t(Uint8Array.from([e.point.parity,...e.point.x]))}};l();var WI=new Uint8Array([129,38]),_L=Pt(ke(WI)),Vr=class t{#e;#t;#n;constructor(e){let r=e instanceof Uint8Array,n=typeof e=="bigint";if(!r&&!n)throw new Wn("Invalid entropy: must be a valid byte array (32) or bigint","CONSTRUCTOR_ERROR");if(r&&e.length===32&&(this.#e=new Uint8Array(e),this.#t=t.toSecret(this.#e)),n&&e>=1n&&e<hn.Point.Fn.ORDER&&(this.#e=t.toBytes(e),this.#t=e),!this.#e||this.#e.length!==32)throw new Wn("Invalid bytes: must be a valid 32-byte secret key","CONSTRUCTOR_ERROR");if(!this.#t||this.#t<1n||this.#t>=hn.Point.Fn.ORDER)throw new Wn("Invalid seed: must be valid bigint","CONSTRUCTOR_ERROR");this.#n=this.encode()}destroy(){this.#e&&this.#e.fill(0),this.#t=void 0,this.#n=""}get bytes(){return new Uint8Array(this.#e)}get seed(){return BigInt(this.#t)}get hex(){return Pt(this.bytes)}get multibase(){return this.#n}encode(){let e=Array.from(this.bytes),r=Array.from(WI);return r.push(...e),"z"+du.encode(Uint8Array.from(r))}equals(e){return ca(this.bytes,e.bytes)}computePublicKey(){return new dt(hn.getPublicKey(this.bytes))}toJSON(){return{type:"Secp256k1SecretKey"}}exportJSON(){return{bytes:Array.from(this.bytes),seed:this.seed.toString(),hex:this.hex}}toString(){return"[Secp256k1SecretKey]"}[Symbol.for("nodejs.util.inspect.custom")](){return"[Secp256k1SecretKey]"}isValid(){return hn.utils.isValidSecretKey(this.bytes)}hasValidPublicKey(){try{return this.computePublicKey(),!0}catch{return!1}}sign(e,r){if(r??={scheme:"schnorr"},r.scheme==="ecdsa")return hn.sign(e,this.bytes);if(r.scheme==="schnorr")return ey.sign(e,this.bytes);throw new Wn(`Invalid scheme: ${r.scheme}.`,"SIGN_ERROR",r)}static decode(e){let r=du.decode(e.slice(1));if(r.length!==34)throw new Wn("Invalid argument: must be 34 byte secretKeyMultibase","DECODE_MULTIBASE_ERROR");let n=r.slice(0,2);if(Pt(ke(n))!==_L)throw new Wn(`Invalid prefix: malformed multibase prefix ${n}`,"DECODE_MULTIBASE_ERROR");return r}static fromJSON(e){return new t(new Uint8Array(e.bytes))}static toSecret(e){return e.reduce((r,n)=>r<<8n|BigInt(n),0n)}static toBytes(e){let r=Uint8Array.from({length:32},(n,i)=>Number(e>>BigInt(8*(31-i))&BigInt(255)));if(!hn.utils.isValidSecretKey(r))throw new Wn("Invalid secret key: secret out of valid range","SET_PRIVATE_KEY_ERROR");return new Uint8Array(r)}static fromBigInt(e){return new t(t.toBytes(e))}static random(){let e;do e=Ir(32);while(!hn.utils.isValidSecretKey(e));return e}static generate(){let e=this.random();return new t(e)}static getPublicKey(e){return new t(e).computePublicKey()}};var fo=class t{#e;#t;constructor(e={}){if(!e.publicKey&&!e.secretKey)throw new bn("Argument missing: must at least provide a publicKey","CONSTRUCTOR_ERROR");if(e.secretKey instanceof Uint8Array?this.#e=new Vr(e.secretKey):e.secretKey instanceof Vr&&(this.#e=e.secretKey),e.publicKey instanceof dt?this.#t=e.publicKey:e.publicKey instanceof Uint8Array?this.#t=new dt(e.publicKey):this.#t=this.#e.computePublicKey(),this.#e&&e.publicKey){let r=this.#e.computePublicKey();if(!this.#t.equals(r))throw new bn("Public key does not match secret key","CONSTRUCTOR_ERROR")}}get secretKey(){if(!this.#e)throw new bn("Secret key not available","SECRET_KEY_ERROR");if(!this.#e.isValid())throw new bn("Secret key is not valid","SECRET_KEY_ERROR");return this.#e}set publicKey(e){if(this.#e){let r=this.#e.computePublicKey();if(!e.equals(r))throw new bn("Public key does not match secret key","PUBLIC_KEY_ERROR")}this.#t=e}get publicKey(){return this.#t}get hasSecretKey(){return!!this.#e}get raw(){return{public:this.publicKey.compressed,secret:this.#e?this.#e.bytes:void 0}}get hex(){return{public:this.publicKey.hex,secret:this.#e?this.#e.hex:void 0}}get multibase(){return{publicKeyMultibase:this.#t.multibase.encoded,secretKeyMultibase:this.#e?this.#e.multibase:""}}toJSON(){return{publicKey:this.publicKey.toJSON()}}exportJSON(){if(!this.#e)throw new bn("Cannot export: secret key required. Use publicKey.toJSON() for public-key-only pairs.","SERIALIZE_ERROR");return{secretKey:this.#e.exportJSON(),publicKey:this.publicKey.toJSON()}}[Symbol.for("nodejs.util.inspect.custom")](){return`[SchnorrKeyPair ${this.publicKey.hex}]`}static fromJSON(e){return new t({secretKey:Vr.fromJSON(e.secretKey),publicKey:dt.fromJSON(e.publicKey)})}static fromSecret(e){let r=typeof e=="string"?_r(e):e;if(r.length!==32)throw new bn("Invalid arg: must be 32 byte secret key","FROM_SECRET_KEY_ERROR");let n=new Vr(r),i=n.computePublicKey();return new t({secretKey:n,publicKey:i})}static fromBigInt(e){let r=Vr.fromBigInt(e),n=r.computePublicKey();return new t({secretKey:r,publicKey:n})}static toHex(e){return Pt(e)}static equals(e,r){return e.publicKey.equals(r.publicKey)}static generate(){let e=Vr.random(),r=new Vr(e),n=r.computePublicKey();return new t({secretKey:r,publicKey:n})}};l();l();l();l();var GI=["https://www.w3.org/ns/did/v1.1","https://btcr2.dev/context/v1"],Ac="Multikey",Tc="zQ3s",rr="did:btcr2:_",IL="",zI=/did:btcr2:(x1[qpzry9x8gf2tvdw0s3jn54khce6mua7l]*)/g;function YI(t){if(!ot.isDidVerificationMethod(t))return!1;let{type:e,publicKeyMultibase:r}=t;return e===Ac&&typeof r=="string"&&r.startsWith(Tc)}var ty=class{id;type;controller;publicKeyMultibase;secretKeyMultibase;constructor({id:e,type:r,controller:n,publicKeyMultibase:i,secretKeyMultibase:o}){if(r!==Ac)throw new qe(`Invalid verification method: type must be "${Ac}"`,Le,{id:e,type:r});if(typeof i!="string"||!i.startsWith(Tc))throw new qe(`Invalid verification method: publicKeyMultibase must start with "${Tc}"`,Le,{id:e,publicKeyMultibase:i});this.id=e,this.type=r,this.controller=n,this.publicKeyMultibase=i,this.secretKeyMultibase=o,o||delete this.secretKeyMultibase}},qr=class t{id;"@context"=["https://www.w3.org/ns/did/v1.1","https://btcr2.dev/context/v1"];verificationMethod;authentication;assertionMethod;capabilityInvocation;capabilityDelegation;service;deactivated;constructor(e){if(!e.id)throw new qe("DID Document must have an id",Le,e);let r=e.id.includes("k1")?en.KEY:en.EXTERNAL,n=e.id===rr,{id:i,verificationMethod:o,service:s}=e;if(!n){if(!t.isValidId(i))throw new qe(`Invalid id: ${i}`,Le,e);if(!t.isValidVerificationMethods(o))throw new qe("Invalid verificationMethod: "+o,Le,e);if(!t.isValidServices(s))throw new qe("Invalid service: "+s,Le,e)}if(this.id=e.id,this.verificationMethod=e.verificationMethod||[],this.service=e.service||[],this["@context"]=e["@context"]||["https://www.w3.org/ns/did/v1.1","https://btcr2.dev/context/v1"],r===en.KEY){let c=`${this.id}#initialKey`;this.authentication=e.authentication||[c],this.assertionMethod=e.assertionMethod||[c],this.capabilityInvocation=e.capabilityInvocation||[c],this.capabilityDelegation=e.capabilityDelegation||[c]}else this.authentication=e.authentication,this.assertionMethod=e.assertionMethod,this.capabilityInvocation=e.capabilityInvocation,this.capabilityDelegation=e.capabilityDelegation;t.sanitize(this),n?this.validateGenesis():t.validate(this)}toJSON(){return{id:this.id,"@context":this["@context"],verificationMethod:this.verificationMethod,authentication:this.authentication,assertionMethod:this.assertionMethod,capabilityInvocation:this.capabilityInvocation,capabilityDelegation:this.capabilityDelegation,service:this.service,deactivated:this.deactivated}}static fromKeyIdentifier(e,r,n){e=e.includes("#")?e:`${e}#initialKey`;let i={id:e,verificationMethod:[new ty({id:e,type:"Multikey",controller:e,publicKeyMultibase:r})],service:n};return new t(i)}static fromExternalIdentifier(e){return new t(e)}static sanitize(e){for(let r of Object.keys(e))e[r]===void 0&&delete e[r];return e}static isValid(e){if(!this.isValidContext(e?.["@context"]))throw new qe('Invalid "@context"',Le,e);if(!this.isValidId(e?.id))throw new qe('Invalid "id"',Le,e);if(!this.isValidVerificationMethods(e?.verificationMethod))throw new qe('Invalid "verificationMethod"',Le,e);if(!this.isValidServices(e?.service))throw new qe('Invalid "service"',Le,e);if(!this.isValidVerificationRelationships(e))throw new qe("Invalid verification relationships",Le,e);return!0}static isValidContext(e){return!Array.isArray(e)||e.length===0?!1:GI.every(r=>e.includes(r))}static isValidId(e){if(typeof e!="string")return!1;try{return fr.decode(e),!0}catch{return!1}}static isValidVerificationMethods(e){return Array.isArray(e)&&e.every(YI)}static isValidServices(e){return Array.isArray(e)&&e.every(h_)}static isValidVerificationRelationships(e){let r=["authentication","assertionMethod","capabilityInvocation","capabilityDelegation"],n=Object.keys(e);return r.filter(o=>n.includes(o)).every(o=>{let s=e[o];return s&&Array.isArray(s)&&s.every(c=>typeof c=="string"||ot.isDidVerificationMethod(c))})}static validate(e){return e.id===rr?e.validateGenesis():t.isValid(e),e}validateGenesis(){if(this.id!==rr)throw new qe("Invalid GenesisDocument ID",Le,this);if(!this.verificationMethod.every(e=>e.id.includes(rr)&&e.controller===rr))throw new qe("Invalid GenesisDocument verificationMethod",Le,this);if(!this.service.every(e=>e.id.includes(rr)))throw new qe("Invalid GenesisDocument service",Le,this);if(!t.isValidVerificationRelationships(this))throw new qe("Invalid GenesisDocument assertionMethod",Le,this);return!0}toIntermediate(){if(this.id.includes("k1"))throw new qe("Cannot convert a key identifier to an intermediate document",Le,this);return new fu(this)}},fu=class t extends qr{constructor(e){super(e)}toDidDocument(e){let r=JSON.stringify(this).replaceAll(rr,e),n=JSON.parse(r);return new qr(n)}static fromDidDocument(e){let r=ks.cloneReplace(e,zI,rr);return new t(r)}static create(e,r,n){return new t({id:rr,...r,verificationMethod:e,service:n})}static fromPublicKey(e,r){let n=new dt(e),i=rr,o=ki(n.compressed,Do(r)).address,s=[{id:`${i}#service-0`,serviceEndpoint:`bitcoin:${o}`,type:"SingletonBeacon"}],c={authentication:[`${i}#key-0`],assertionMethod:[`${i}#key-0`],capabilityInvocation:[`${i}#key-0`],capabilityDelegation:[`${i}#key-0`]},a=[{id:`${i}#key-0`,type:"Multikey",controller:i,publicKeyMultibase:n.multibase.encoded}];return t.create(a,c,s)}static fromJSON(e){return new t(e)}static toGenesisBytes(e){return Ro(ir(e))}};var JI="did:btcr2:",fr=class t{static encode(e,r){let{idType:n,version:i=1,network:o="bitcoin"}=r;if(!(n in en))throw new at('Expected "idType" to be "KEY" or "EXTERNAL"',ht,{idType:n});if(i!==1)throw new at('Expected "version" to be 1',ht,{version:i});if(typeof o!="string")throw new at('Expected "network" to be a known network name',ht,{network:o});let s=na[o];if(s===void 0)throw new at('Invalid "network" name',ht,{network:o});if(n==="KEY")try{new dt(e)}catch{throw new at('Expected "genesisBytes" to be a valid compressed secp256k1 public key',ht,{genesisBytes:e})}else if(e.length!==32)throw new at('Expected "genesisBytes" to be a 32-byte hash for EXTERNAL identifiers',ht,{genesisBytes:e});let c=n==="KEY"?"k":"x",a=i-1<<4|s,u=new Uint8Array([a,...e]);return`${JI}${Ss.encodeFromBytes(c,u)}`}static decode(e){let r=e.split(":");if(r.length!==3)throw new at(`Invalid did: ${e}`,ht,{identifier:e});let[n,i,o]=r;if(n!=="did")throw new at(`Invalid did: ${e}`,ht,{identifier:e});if(i!=="btcr2")throw new at(`Invalid did method: ${i}`,vl,{identifier:e});if(!o)throw new at(`Invalid method-specific id: ${e}`,ht,{identifier:e});if(o!==o.toLowerCase())throw new at(`Invalid method-specific id (must be lowercase): ${e}`,ht,{identifier:e});let s,c;try{({prefix:s,bytes:c}=Ss.decodeToBytes(o))}catch(g){let y=g instanceof Error?g.message:String(g);throw new at(`Invalid method-specific id (Bech32m decoding failed: ${y}): ${e}`,ht,{identifier:e,reason:y})}if(!["x","k"].includes(s))throw new at(`Invalid hrp: ${s}`,ht,{identifier:e});if(!c||c.length<1)throw new at(`Failed to decode id: ${o}`,ht,{identifier:e});let a=s==="k"?"KEY":"EXTERNAL",u=c[0]>>>4;if(u!==0)throw new at(`Invalid btcr2_version (expected 0): ${u}`,ht,{identifier:e});let d=1,f=c[0]&15,h=na[f];if(typeof h!="string"){let g=f>=12?"custom network not supported":"reserved";throw new at(`Invalid network (${g}): ${f}`,ht,{identifier:e})}let p=c.slice(1);if(a==="KEY")try{new dt(p)}catch{throw new at(`Invalid genesisBytes: ${p}`,ht,{identifier:e})}else if(p.length!==32)throw new at(`Invalid genesisBytes: ${p}`,ht,{identifier:e});return{idType:a,hrp:s,version:d,network:h,genesisBytes:p}}static validate(e,r={}){let n=[],i=(x,S)=>{n.push(S===void 0?{name:x,ok:!0}:{name:x,ok:!0,detail:S})},o=(x,S,_={})=>(n.push({name:x,ok:!1,detail:S}),{did:e,valid:!1,..._,checks:n});if(typeof e!="string")return o("prefix","The identifier is not a string.");let s=e.split(":");if(s.length!==3||s[0]!=="did"||s[1]!=="btcr2")return o("prefix",`The identifier must be "${JI}" followed by the method-specific id.`);let c=s[2];if(c.length===0)return o("prefix","The method-specific id is empty.");if(i("prefix"),c!==c.toLowerCase())return o("lowercase","The method-specific id must be lowercase.");i("lowercase");let a,u;try{({prefix:a,bytes:u}=Ss.decodeToBytes(c))}catch(x){return o("bech32m",`Bech32m decoding failed: ${x instanceof Error?x.message:String(x)}`)}if(a!=="k"&&a!=="x")return o("bech32m",`The hrp must be "k" or "x", got "${a}".`);let d=a==="k"?en.KEY:en.EXTERNAL;if(u.length<1)return o("bech32m","The data bytes are empty.",{idType:d});i("bech32m",`hrp "${a}", ${u.length} data bytes`);let f=u[0]>>>4;if(f!==0)return o("version",`btcr2_version must be 0, got ${f}.`,{idType:d});i("version","btcr2_version 0 (version_number 1)");let h=u[0]&15,p=na[h];if(typeof p!="string"){let x=h>=12?`network_value ${h} is a custom network, not supported by this implementation.`:`network_value ${h} is reserved.`;return o("network",x,{idType:d})}i("network",`network_value ${h} (${p})`);let g=u.slice(1);if(d===en.KEY){try{new dt(g)}catch{return o("genesisBytes",`Expected a 33-byte SEC compressed secp256k1 public key, got ${g.length} bytes that are not a valid key.`,{idType:d,network:p})}i("genesisBytes","33-byte SEC compressed secp256k1 public key")}else{if(g.length!==32)return o("genesisBytes",`Expected a 32-byte SHA-256 hash, got ${g.length} bytes.`,{idType:d,network:p});i("genesisBytes","32-byte SHA-256 hash")}let y;try{y=t.encode(g,{idType:d,version:1,network:p})}catch(x){return o("roundTrip",`Re-encoding failed: ${x instanceof Error?x.message:String(x)}`,{idType:d,network:p})}if(y!==e)return o("roundTrip",`Re-encoding produced "${y}".`,{idType:d,network:p});if(i("roundTrip"),r.genesisBytes!==void 0){let x=r.genesisBytes;if(!(x instanceof Uint8Array))return o("genesisBytesMatch","The supplied genesis bytes are not a Uint8Array.",{idType:d,network:p});if(x.length!==g.length)return o("genesisBytesMatch",`Expected ${g.length} genesis bytes for a ${d} identifier, got ${x.length}.`,{idType:d,network:p});if(!wo(x,g))return o("genesisBytesMatch",`The supplied genesis bytes ${xe.encode(x)} do not equal the genesis bytes of the identifier ${xe.encode(g)}.`,{idType:d,network:p});i("genesisBytesMatch","The supplied genesis bytes equal the genesis bytes of the identifier.")}if(r.genesisDocument!==void 0){let x=r.genesisDocument;if(d===en.KEY)return o("genesisDocument","A KEY identifier has no genesis document.",{idType:d,network:p});let S=x.id;if(S!==rr)return o("genesisDocument",`The genesis document id must be "${rr}", got ${JSON.stringify(S)}.`,{idType:d,network:p});try{fu.fromJSON(x)}catch(A){return o("genesisDocument",`Invalid genesis document: ${A instanceof Error?A.message:String(A)}`,{idType:d,network:p})}let _=Uo(x);if(!wo(_,g))return o("genesisDocument",`The genesis document hash ${xe.encode(_)} does not equal the genesis bytes ${xe.encode(g)}.`,{idType:d,network:p});i("genesisDocument","The genesis document hashes to the genesis bytes.")}return{did:e,valid:!0,idType:d,network:p,checks:n}}static generate(){let e=fo.generate(),r=this.encode(e.publicKey.compressed,{idType:"KEY",version:1,network:"regtest"});return{keyPair:e.exportJSON(),did:r}}static getPublicKey(e){let{idType:r,genesisBytes:n}=t.decode(e);if(r!=="KEY")throw new at(`Cannot extract public key from EXTERNAL DID: ${e}. EXTERNAL DIDs encode a document hash, not a public key.`,ht,{did:e,idType:r});return new dt(n)}static isValid(e){try{return this.decode(e),!0}catch{return!1}}};var Fr=class{static parseBitcoinAddress(e){if(!e.startsWith("bitcoin:"))throw new we("Invalid Bitcoin URI format","BEACON_SERVICE_ERROR",{uri:e});return e.replace("bitcoin:","").split("?")[0]}static isBeaconService(e){return!(!ot.isDidService(e)||!["SingletonBeacon","CASBeacon","SMTBeacon"].includes(e.type)||[e.serviceEndpoint].flat().some(r=>typeof r=="string"&&!r.startsWith("bitcoin:")))}static getBeaconServices(e){return e.service.filter(this.isBeaconService)??[]}static createBeaconServices(e,r){try{return["p2pkh","p2wpkh","p2tr"].map(i=>this.createBeaconService(e,i,r))}catch(n){throw new Yt("Failed to create beacon services: "+n.message,"BEACON_SERVICE_ERROR",{did:e,beaconType:r})}}static createBeaconService(e,r,n){try{let i=fr.decode(e),o=Do(i.network),s=i.genesisBytes,c=`${e}#initial${r.toUpperCase()}`,u=`bitcoin:${r==="p2tr"?_s(s.slice(1,33),void 0,o).address:r==="p2wpkh"?Ts(s,o).address:ki(s,o).address}`;return{id:c,type:n,serviceEndpoint:u}}catch(i){throw new Yt("Failed to create beacon service: "+i.message,"BEACON_SERVICE_ERROR",{did:e,beaconType:n})}}static generateBeaconServices({id:e,publicKey:r,network:n,beaconType:i}){try{let o=ki(r,n).address,s=Ts(r,n).address,c=_s(r.slice(1,33),void 0,n).address;if(!o||!s||!c)throw new zt("Failed to generate bitcoin addresses");return[{id:`${e}#initialP2PKH`,type:i,serviceEndpoint:`bitcoin:${o}`},{id:`${e}#initialP2WPKH`,type:i,serviceEndpoint:`bitcoin:${s}`},{id:`${e}#initialP2TR`,type:i,serviceEndpoint:`bitcoin:${c}`}]}catch(o){throw new Yt("Failed to create beacon services: "+o.message,"BEACON_SERVICE_ERROR",{id:e,publicKey:r,network:n,beaconType:i})}}static parseBeaconServiceEndpoint(e){return{...e,serviceEndpoint:e.serviceEndpoint.replace("bitcoin:","")}}static getBeaconServiceIds(e){return this.getBeaconServices(e).map(r=>r.id)}};var BL=/^6a20([0-9a-f]{64})$/i;function ex(t){if(!t)return null;let e=BL.exec(t.trim());return e?e[1].toLowerCase():null}var tx=class t{static async spendsFromAddress(e,r,n){for(let i of e.vin??[]){if(i.is_coinbase)continue;let o=i.prevout;if(!o&&i.txid&&(o=(await n.rest.transaction.get(i.txid))?.vout?.[i.vout]),o?.scriptpubkey_address===r)return!0}return!1}static async indexer(e,r){let n=new Map,i=await r.rest.block.count();for(let o of e){n.set(o,[]);let s=Fr.parseBitcoinAddress(o.serviceEndpoint),c=await r.rest.address.getTxs(s);if(!(!c||!c.length))for(let a of c){let u=a.status;if(u.confirmed!==!0)continue;let d=a.vout.slice(-1)[0];if(!d)continue;let f=ex(d.scriptpubkey);if(!f||!await t.spendsFromAddress(a,s,r))continue;let h=i-u.block_height+1;n.get(o)?.push({tx:a,signalBytes:f,blockMetadata:{confirmations:h,height:u.block_height,time:u.block_time}})}}return n}static async fullnode(e,r){let n=new Map;for(let u of e)n.set(u,[]);let i=r.rpc;if(!i)throw new De("RPC connection is not available","RPC_CONNECTION_ERROR",r);let o=await i.getBlockCount(),s=new Map(e.map(u=>[Fr.parseBitcoinAddress(u.serviceEndpoint),u])),c=0,a=await r.rpc.getBlock({height:c});for(console.info("Searching for beacon signals, please wait ...");a.height<=o;){for(let u of a.tx){if(u.txid===L0)continue;let d=u.vout.slice(-1)[0];if(!d)continue;let f=ex(d.scriptPubKey?.hex);if(!f)continue;let h=new Set;for(let p of u.vin){if(p.coinbase||p.txinwitness&&p.txinwitness.length===1&&p.txinwitness[0]===C0||!p.txid||p.vout===void 0)continue;let g=await i.getRawTransaction(p.txid,2);if(!g.vout[p.vout])continue;let y=g.vout[p.vout].scriptPubKey;if(!y.address)continue;let x=s.get(y.address);!x||h.has(x)||(h.add(x),console.info(`Tx ${u.txid} contains beacon address ${y.address}`),n.get(x)?.push({tx:u,signalBytes:f,blockMetadata:{height:a.height,time:a.time,confirmations:a.confirmations}}))}}if(c+=1,c>o){console.info(`Chain tip reached ${c}, breaking ...`);break}a=await i.getBlock({height:c})}return n}};l();var _c=Object.freeze(["https://w3id.org/json-ld-patch/v1","https://w3id.org/zcap/v1","https://w3id.org/security/data-integrity/v2","https://btcr2.dev/context/v1"]);function ry(t,e=_c){return Array.isArray(t)&&t.length===e.length&&t.every((r,n)=>r===e[n])}l();l();l();l();l();l();var xre=new Uint8Array(0);function XI(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")}l();function RL(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 c=t.length,a=t.charAt(0),u=Math.log(c)/Math.log(256),d=Math.log(256)/Math.log(c);function f(g){if(g instanceof Uint8Array||(ArrayBuffer.isView(g)?g=new Uint8Array(g.buffer,g.byteOffset,g.byteLength):Array.isArray(g)&&(g=Uint8Array.from(g))),!(g instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(g.length===0)return"";for(var y=0,x=0,S=0,_=g.length;S!==_&&g[S]===0;)S++,y++;for(var A=(_-S)*d+1>>>0,O=new Uint8Array(A);S!==_;){for(var T=g[S],M=0,q=A-1;(T!==0||M<x)&&q!==-1;q--,M++)T+=256*O[q]>>>0,O[q]=T%c>>>0,T=T/c>>>0;if(T!==0)throw new Error("Non-zero carry");x=M,S++}for(var j=A-x;j!==A&&O[j]===0;)j++;for(var $=a.repeat(y);j<A;++j)$+=t.charAt(O[j]);return $}function h(g){if(typeof g!="string")throw new TypeError("Expected String");if(g.length===0)return new Uint8Array;var y=0;if(g[y]!==" "){for(var x=0,S=0;g[y]===a;)x++,y++;for(var _=(g.length-y)*u+1>>>0,A=new Uint8Array(_);g[y];){var O=r[g.charCodeAt(y)];if(O===255)return;for(var T=0,M=_-1;(O!==0||T<S)&&M!==-1;M--,T++)O+=c*A[M]>>>0,A[M]=O%256>>>0,O=O/256>>>0;if(O!==0)throw new Error("Non-zero carry");S=T,y++}if(g[y]!==" "){for(var q=_-S;q!==_&&A[q]===0;)q++;for(var j=new Uint8Array(x+(_-q)),$=x;q!==_;)j[$++]=A[q++];return j}}}function p(g){var y=h(g);if(y)return y;throw new Error(`Non-${e} character`)}return{encode:f,decodeUnsafe:h,decode:p}}var UL=RL,OL=UL,ZI=OL;var rx=class{name;prefix;baseEncode;constructor(e,r,n){this.name=e,this.prefix=r,this.baseEncode=n}encode(e){if(e instanceof Uint8Array)return`${this.prefix}${this.baseEncode(e)}`;throw Error("Unknown type, must be binary type")}},nx=class{name;prefix;baseDecode;prefixCodePoint;constructor(e,r,n){this.name=e,this.prefix=r;let i=r.codePointAt(0);if(i===void 0)throw new Error("Invalid prefix character");this.prefixCodePoint=i,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 QI(this,e)}},ix=class{decoders;constructor(e){this.decoders=e}or(e){return QI(this,e)}decode(e){let r=e[0],n=this.decoders[r];if(n!=null)return n.decode(e);throw RangeError(`Unable to decode multibase string ${JSON.stringify(e)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`)}};function QI(t,e){return new ix({...t.decoders??{[t.prefix]:t},...e.decoders??{[e.prefix]:e}})}var ox=class{name;prefix;baseEncode;baseDecode;encoder;decoder;constructor(e,r,n,i){this.name=e,this.prefix=r,this.baseEncode=n,this.baseDecode=i,this.encoder=new rx(e,r,n),this.decoder=new nx(e,r,i)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}};function DL({name:t,prefix:e,encode:r,decode:n}){return new ox(t,e,r,n)}function sx({name:t,prefix:e,alphabet:r}){let{encode:n,decode:i}=ZI(r,t);return DL({prefix:e,name:t,encode:n,decode:o=>XI(i(o))})}var wf=sx({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),Ure=sx({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});l();function eB(t){return t===void 0?[]:Array.isArray(t)?t:[t]}var lu=class{cryptosuite;constructor(e){this.cryptosuite=e}addProof(e,r){let n=this.cryptosuite.createProof(e,r);if(!n.type||!n.verificationMethod||!n.proofPurpose)throw new wn("Invalid proof: missing proof.type, proof.verificationMethod and/or proof.proofPurpose",Bo,{config:r,proof:n});if(r.domain&&n.domain!==r.domain)throw new wn("Domain mismatch: proof.domain !== config.domain",Bo,{config:r,proof:n});if(r.challenge&&n.challenge!==r.challenge)throw new wn("Challenge mismatch options and challenge passed",Bo,{config:r,proof:n});let i=e;return i.proof=n,i}verifyProof(e,r,n,i,o){let s=JSON.parse(e),c=s.proof;if(!c.type||!c.verificationMethod||!c.proofPurpose)throw new wn("Invalid proof: missing proof.type, proof.verificationMethod and/or proof.proofPurpose",Ni,s);if(r&&r!==c.proofPurpose)throw new wn("Proof purpose mismatch: proof.proofPurpose !== expectedPurpose",Ni,{proof:c,expectedPurpose:r});if(o&&o!==c.challenge)throw new wn("Challenge mismatch: proof.challenge !== expectedChallenge","INVALID_CHALLENGE_ERROR",{proof:c,expectedChallenge:o});if(i){let u=eB(i),d=eB(c.domain);if(u.length!==d.length)throw new wn("Domain mismatch: expectedDomain length does not match proof.domain length",Ni,{proof:c,expectedDomain:i});if(!u.every(f=>d.includes(f))||!d.every(f=>u.includes(f)))throw new wn("Domain mismatch: expectedDomain and proof.domain do not match",Ni,{proof:c,expectedDomain:i})}let a=this.cryptosuite.verifyProof(s);return a.mediaType=n,a}};var hu=class{type="DataIntegrityProof";cryptosuite="bip340-jcs-2025";multikey;constructor(e){this.multikey=e}toDataIntegrityProof(){return new lu(this)}#e(){return{type:this.type,cryptosuite:this.cryptosuite,verificationMethod:this.multikey.fullId()}}createProof(e,r){r["@context"]=e["@context"]??r["@context"];let n=this.proofConfiguration(r),i=this.transformDocument(e,r),o=this.generateHash(n,i),s=this.proofSerialization(o,r),c=r;return c.proofValue=wf.encode(s),c.cryptosuite=this.cryptosuite,c.type=this.type,c}verifyProof(e){let{proof:r,...n}=e,{proofValue:i,...o}=r,s=this.transformDocument(n,o),c=this.proofConfiguration(o),a=this.generateHash(c,s),u=wf.decode(e.proof.proofValue),d=this.proofVerification(a,u,o);return{verified:d,verifiedDocument:d?e:void 0}}transformDocument(e,r){if(r.type!==this.type)throw new we("Type mismatch: config.type !== this.type",Ni,{config:r,suite:this.#e()});if(r.cryptosuite!==this.cryptosuite)throw new we("Cryptosuite mismatch: config.cryptosuite !== this.cryptosuite",Ni,{config:r,suite:this.#e()});return ir(e)}generateHash(e,r){let n=ke(xs(e)),i=ke(xs(r)),o=lt(n,i);return ke(o)}proofConfiguration(e){if(e.type!==this.type)throw new Io("Type mismatch: config.type !== this.type",Bo,{config:e,suite:this.#e()});if(e.cryptosuite!==this.cryptosuite)throw new Io("Cryptosuite mismatch: config.cryptosuite !== this.cryptosuite",Bo,{config:e,suite:this.#e()});if(e.created&&!Oo.isValidXsdDateTime(e.created))throw new Io('Invalid config: "created" must be a valid XMLSchema DateTime string',Bo,e);return ir(e)}proofSerialization(e,r){if(r.verificationMethod!==this.multikey.fullId())throw new Io("Id mismatch: config.verificationMethod !== this.multikey.fullId()",Av,{config:r,suite:this.#e()});return this.multikey.sign(e)}proofVerification(e,r,n){if(n.verificationMethod!==this.multikey.fullId())throw new Io("Id mismatch: config.verificationMethod !== this.multikey.fullId()",Ni,{config:n,suite:this.#e()});return this.multikey.verify(r,e)}};l();l();l();var ds=class t{static type="Multikey";id;controller;#e;#t;constructor({id:e,controller:r,keyPair:n,externalSigner:i}){if(!n)throw new xn('Argument missing: "keyPair" required',"CONSTRUCTOR_ERROR");if(!n.publicKey)throw new xn('Argument missing: "keyPair" must contain a "publicKey"',"CONSTRUCTOR_ERROR");if(i){let o=i.publicKey,s=n.publicKey.compressed;if(o.length!==s.length||!o.every((c,a)=>c===s[a]))throw new xn("externalSigner.publicKey does not match keyPair.publicKey.compressed","CONSTRUCTOR_ERROR")}this.id=e,this.controller=r,this.#e=n,this.#t=i}get keyPair(){return this.#e}get publicKey(){return this.#e.publicKey}get secretKey(){try{return this.#e.secretKey}catch{throw new xn("Cannot get: no secretKey","PRIVATE_KEY_ERROR")}}toCryptosuite(){return new hu(this)}sign(e){if(this.#t)return this.#t.sign(e,"bip340");if(!this.signer)throw new xn("Cannot sign: no secretKey","SIGN_ERROR");return Ur.sign(e,this.secretKey.bytes,Ir(32))}verify(e,r){return Ur.verify(e,r,this.publicKey.x)}fullId(){return this.id.startsWith("#")?`${this.controller}${this.id}`:this.id}toVerificationMethod(){return{id:this.id,type:t.type,controller:this.controller,publicKeyMultibase:this.publicKey.multibase.encoded}}get signer(){return!!this.#t||!!this.#e.secretKey}toJSON(){let e;try{e=this.signer}catch{e=!1}return{id:this.id,controller:this.controller,fullId:this.fullId(),signer:e,keyPair:this.keyPair.toJSON(),verificationMethod:this.toVerificationMethod()}}static create({id:e,controller:r,keyPair:n}){return new t({id:e,controller:r,keyPair:n})}static fromSecretKey(e,r,n){let i=new Vr(n),o=i.computePublicKey(),s=new fo({publicKey:o,secretKey:i});return new t({id:e,controller:r,keyPair:s})}static fromSigner(e,r,n){let i=new dt(n.publicKey),o=new fo({publicKey:i});return new t({id:e,controller:r,keyPair:o,externalSigner:n})}static fromPublicKey({id:e,controller:r,publicKeyBytes:n}){let i=new dt(n),o=new fo({publicKey:i});return new t({id:e,controller:r,keyPair:o})}static fromVerificationMethod({id:e,controller:r,publicKeyMultibase:n}){if(!n)throw new xn("Invalid publicKeyMultibase: cannot be undefined",Sl,{publicKeyMultibase:n});let i=wf.decode(n);if(i.length!==35)throw new xn(`Invalid publicKeyMultibase length: ${i.length}`,Sl,{publicKeyMultibase:n});if(i[0]!==231||i[1]!==1)throw new xn(`Invalid publicKeyMultibase prefix: expected secp256k1 multicodec [0xe7, 0x01], got [0x${i[0]?.toString(16)??"??"}, 0x${i[1]?.toString(16)??"??"}]`,Sl,{publicKeyMultibase:n});let o=i.slice(2),s=new fo({publicKey:o});return new t({id:e,controller:r,keyPair:s})}};l();l();l();l();var bf=class t{#e={phase:"Construct"};#t;#n;#r;#o;#i;constructor(e){this.#t=e.sourceDocument,this.#n=e.patches,this.#r=e.sourceVersionId,this.#o=e.verificationMethod,this.#i=e.beaconService}static construct(e,r,n){let i={"@context":[..._c],patch:r,targetHash:"",targetVersionId:n+1,sourceHash:Gn(e)},o=ra.apply(e,r);if(o.id!==e.id)throw new At(`Patches must not change the DID document id (source "${e.id}" to target "${o.id}").`,Ae,{sourceId:e.id,targetId:o.id});try{qr.isValid(o)}catch(s){throw new At("Error validating targetDocument: "+(s instanceof Error?s.message:String(s)),Ae,o)}return i.targetHash=Gn(o),i}static sign(e,r,n,i){if(!e.startsWith("did:btcr2:"))throw new At(`Expected a did:btcr2 identifier for the root capability; got "${e}".`,Ae,{did:e});let o=n.controller,s=n.id.indexOf("#");if(s<0)throw new At(`Verification method id must contain a fragment (e.g. "${n.id}#initialKey"); got "${n.id}".`,Ae,{verificationMethodId:n.id});let c=n.id.slice(s),a=ds.fromSigner(c,o,i),u=s===0?`${e}${c}`:n.id,d=a.publicKey.multibase.encoded;if(n.publicKeyMultibase&&d!==n.publicKeyMultibase)throw new At(`Signing key does not match verification method "${n.id}": the signer's public key differs from the method's published publicKeyMultibase.`,Ae,{verificationMethodId:n.id,expected:n.publicKeyMultibase,actual:d});let f={"@context":[..._c],cryptosuite:"bip340-jcs-2025",type:"DataIntegrityProof",verificationMethod:u,proofPurpose:"capabilityInvocation",capability:`urn:zcap:root:${encodeURIComponent(e)}`,capabilityAction:"Write"};return a.toCryptosuite().toDataIntegrityProof().addProof(r,f)}static async announce(e,r,n,i,o,s){return Ms.establish(e,r).broadcastSignal(n,i,o,s)}#s(){return t.construct(this.#t,this.#n,this.#r)}advance(){for(;;)switch(this.#e.phase){case"Construct":{let e=this.#s();this.#e={phase:"Sign",unsignedUpdate:e};continue}case"Sign":return{status:"action-required",needs:[{kind:"NeedSigningKey",verificationMethodId:this.#o.id,unsignedUpdate:this.#e.unsignedUpdate}]};case"Fund":return{status:"action-required",needs:[{kind:"NeedFunding",beaconAddress:this.#i.serviceEndpoint.replace("bitcoin:",""),beaconService:this.#i}]};case"Broadcast":return{status:"action-required",needs:[{kind:"NeedBroadcast",beaconService:this.#i,signedUpdate:this.#e.signedUpdate,did:this.#t.id}]};case"Complete":return{status:"complete",result:{signedUpdate:this.#e.signedUpdate}}}}provide(e,r){switch(e.kind){case"NeedSigningKey":{if(this.#e.phase!=="Sign")throw new At(`Cannot provide NeedSigningKey: updater phase is ${this.#e.phase}, expected Sign.`,Ae,{phase:this.#e.phase});if(!r)throw new At("NeedSigningKey requires a Signer.",Ae);let n=this.#e.unsignedUpdate,i=t.sign(this.#t.id,n,this.#o,r);this.#e={phase:"Fund",unsignedUpdate:n,signedUpdate:i};break}case"NeedFunding":{if(this.#e.phase!=="Fund")throw new At(`Cannot provide NeedFunding: updater phase is ${this.#e.phase}, expected Fund.`,Ae,{phase:this.#e.phase});if(r!==void 0){let n=r;if(typeof n.utxoCount!="number"||!Number.isFinite(n.utxoCount)||n.utxoCount<1)throw new At(`NeedFunding proof must have utxoCount >= 1; got ${String(n.utxoCount)}.`,Ae,{utxoCount:n.utxoCount})}this.#e={phase:"Broadcast",unsignedUpdate:this.#e.unsignedUpdate,signedUpdate:this.#e.signedUpdate};break}case"NeedBroadcast":{if(this.#e.phase!=="Broadcast")throw new At(`Cannot provide NeedBroadcast: updater phase is ${this.#e.phase}, expected Broadcast.`,Ae,{phase:this.#e.phase});this.#e={phase:"Complete",signedUpdate:this.#e.signedUpdate};break}}}};var xf=class{static methodName="btcr2";static create(e,r){let{idType:n,version:i=1,network:o="bitcoin"}=r||{};if(!n)throw new we("idType is required for creating a did:btcr2 identifier",Le,r);return fr.encode(e,{idType:n,version:i,network:o})}static resolve(e,r={}){let n=fr.decode(e),i=lo.sidecarData(r.sidecar),o=n.hrp===Dl.k?lo.deterministic(n):null;return new lo(n,i,o,{versionId:r.versionId,versionTime:r.versionTime,genesisDocument:r.sidecar?.genesisDocument,maxDiscoveryRounds:r.maxDiscoveryRounds,minConf:r.minConf})}static update({sourceDocument:e,patches:r,sourceVersionId:n,verificationMethodId:i,beaconId:o}){let s=ot.relationshipMethodId(i,e.id);if(!(s!==void 0&&e.capabilityInvocation?.some(f=>ot.relationshipMethodId(f,e.id)===s)))throw new At("Invalid verificationMethodId: not authorized for capabilityInvocation",Le,e);let a=this.getSigningMethod(e,i);if(!a)throw new At("Invalid verificationMethod: not found in source document",Le,{sourceDocument:e,verificationMethodId:i});if(a.type!==Ac)throw new At(`Invalid verificationMethod: verificationMethod.type must be "${Ac}"`,Le,a);if(!a.publicKeyMultibase?.startsWith(Tc))throw new At(`Invalid verificationMethodId: publicKeyMultibase prefix must start with "${Tc}"`,Le,a);let u=ot.absoluteDidUrl(o,e.id),d=e.service.filter(f=>u!==void 0&&ot.absoluteDidUrl(f.id,e.id)===u).filter(f=>!!f).shift();if(!d)throw new At("No beacon service found for provided beaconId",Ae,{sourceDocument:e,beaconId:o});return new bf({sourceDocument:e,patches:r,sourceVersionId:n,verificationMethod:a,beaconService:d})}static getSigningMethod(e,r){r??="#initialKey";let n=me.parse(e.id);if(n&&n.method!==this.methodName)throw new we(`Method not supported: ${n.method}`,vl,{identifier:e.id});let i=ot.absoluteDidUrl(r,e.id)??ot.relationshipMethodId(e.assertionMethod?.[0],e.id),o=i===void 0?void 0:e.verificationMethod?.find(s=>ot.absoluteDidUrl(s.id,e.id)===i);if(!(o&&o.publicKeyMultibase))throw new re(ie.InternalError,"A verification method intended for signing could not be determined from the DID Document");return o}};var tB=6;function Ef(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}function kL(t){return Ef(t)&&Object.values(t).every(e=>typeof e=="string")}function NL(t){return Ef(t)?Array.isArray(t.patch)&&typeof t.sourceHash=="string"&&typeof t.targetHash=="string"&&Number.isInteger(t.targetVersionId)&&t.targetVersionId>=2&&Ef(t.proof):!1}function CL(t){return Ef(t)?typeof t.id=="string"&&typeof t.collapsed=="string"&&Array.isArray(t.hashes):!1}function LL(t){if(t===void 0)return tB;if(typeof t=="number"&&Number.isInteger(t)&&t>=1)return t;let e=typeof t=="string"?JSON.stringify(t):String(t);throw new De(`Invalid resolution option minConf: expected a positive integer (minimum 1), got ${e}.`,Tv,{minConf:t})}var lo=class t{#e;#t;#n;#r;#o;#i;#s=null;#f=new Map;#l=new Set;#d=new Set;#c=[];#a=null;#h=1;#g=[];#u;#p=0;#y;constructor(e,r,n,i){this.#e=e,this.#o=r,this.#i=n,this.#t=i?.versionId,this.#n=i?.versionTime;let o=i?.maxDiscoveryRounds;this.#u=typeof o=="number"&&o>0?o:1/0,this.#y=LL(i?.minConf),i?.genesisDocument&&(this.#s=i.genesisDocument),this.#r=n?"BeaconDiscovery":"GenesisDocument"}static deterministic(e){let r=e.genesisBytes,n=fr.encode(r,e),{multibase:i}=new dt(r),o=Fr.generateBeaconServices({id:n,publicKey:r,network:Do(e.network),beaconType:"SingletonBeacon"});return new qr({id:n,verificationMethod:[{id:`${n}#initialKey`,type:"Multikey",controller:n,publicKeyMultibase:i.encoded}],service:o})}static external(e,r){let n=Uo(r);if(!wo(e.genesisBytes,n))throw new De("Initial document mismatch: genesisBytes !== genesisDocumentHash",ht,{genesisBytes:Qr(e.genesisBytes,"hex"),genesisDocumentHash:Qr(n,"hex")});let i=fr.encode(e.genesisBytes,e),o=JSON.parse(JSON.stringify(r).replaceAll(rr,i));return new qr(o)}static sidecarData(e={}){let r=new Map;if(e.updates?.length)for(let o of e.updates)r.set(Gn(o,{encoding:"hex"}),o);let n=new Map;if(e.casUpdates?.length)for(let o of e.casUpdates)n.set(Gn(o,{encoding:"hex"}),o);let i=new Map;if(e.smtProofs?.length)for(let o of e.smtProofs)i.set(Qr(Os(o.id,"base64urlnopad"),"hex"),o);return{updateMap:r,casMap:n,smtMap:i}}static updates(e,r,n,i,o={currentVersionId:1,updateHashHistory:[]}){let s=o.currentVersionId,c=o.updateHashHistory,a=r.sort(([d,f],[h,p])=>d.targetVersionId-h.targetVersionId||f.height-p.height),u={didDocument:e,metadata:{versionId:`${s}`,confirmations:0,deactivated:e.deactivated||!1}};for(let[d,f]of a){let h=Uo(u.didDocument),p=Oo.blocktimeToTimestamp(f.time);if(u.metadata.updated=Oo.toISOStringNonFractional(p),u.metadata.confirmations=f.confirmations,d.targetVersionId<=s){this.confirmDuplicate(d,c);continue}if(n&&p>Oo.dateStringToTimestamp(n))return u;if(d.targetVersionId===s+1){let y=Os(d.sourceHash,"base64urlnopad");if(!wo(y,h))throw new De("Hash mismatch: update.sourceHash !== currentDocumentHash",Ae,{sourceHash:d.sourceHash,currentDocumentHash:Qr(h,"hex")});u.didDocument=this.applyUpdate(u.didDocument,d);let x=ks.deleteKeys(d,["proof"]);c.push(Uo(x))}else throw new De("Version Id Mismatch: targetVersionId cannot be > currentVersionId + 1",Al,{targetVersionId:d.targetVersionId,currentVersionId:s+1});s++,u.metadata.versionId=`${s}`;let g=Number(i);if(!isNaN(g)&&g<=s)return u;if(u.didDocument.deactivated)return u.metadata.deactivated=u.didDocument.deactivated,u}return u}static confirmDuplicate(e,r){if(!Number.isInteger(e.targetVersionId)||e.targetVersionId<2)throw new De("Invalid duplicate: targetVersionId must be an integer >= 2",Ae,{targetVersionId:e.targetVersionId});let{proof:n,...i}=e,o=Uo(i),s=r[e.targetVersionId-2];if(s===void 0)throw new De("Invalid duplicate: no applied update in history for targetVersionId",Al,{targetVersionId:e.targetVersionId,historyLength:r.length});if(!wo(s,o))throw new De("Invalid duplicate: unsigned update hash does not match historical hash",Al,{unsignedUpdateHash:Qr(o,"hex"),historicalHash:Qr(s,"hex")})}static applyUpdate(e,r){if(!ry(r["@context"]))throw new De("Invalid update: @context is not the array the specification pins for a BTCR2 Update",Ae,{context:r["@context"],expected:[..._c]});if(!ry(r.proof?.["@context"],r["@context"]))throw new De("Invalid update: proof @context does not equal the update @context",Ae,{proofContext:r.proof?.["@context"],context:r["@context"]});let n=r.proof?.capability;if(!n)throw new De("No root capability found in update",Ae,r);let i=ot.dereferenceZcapId(n),{invocationTarget:o,controller:s}=i;if(![o,s].every(A=>A===e.id))throw new De("Invalid root capability",Ae,{rootCapability:i,currentDocument:e});let c=r.proof?.verificationMethod;if(!c)throw new De("No verificationMethod found in update",Ae,r);let a=ot.relationshipMethodId(c,e.id);if(!(a!==void 0&&e.capabilityInvocation?.some(A=>ot.relationshipMethodId(A,e.id)===a)))throw new De("Invalid update: verificationMethod is not authorized for capabilityInvocation",Ae,{verificationMethodId:c,capabilityInvocation:e.capabilityInvocation});let d=xf.getSigningMethod(e,c),f=ds.fromVerificationMethod(d),h=new hu(f),p=ir(r),y=new lu(h).verifyProof(p,"capabilityInvocation");if(!y.verified)throw new De("Invalid update: proof not verified",Ae,y);let x=ra.apply(e,r.patch);qr.validate(x);let S=Uo(x),_=Os(r.targetHash);if(!wo(_,S))throw new De("Invalid update: update.targetHash !== currentDocumentHash",Ae,{updateTargetHash:_,currentDocumentHash:S});return x}resolve(){for(;;)switch(this.#r){case"GenesisDocument":{if(this.#s){this.#i=t.external(this.#e,this.#s),this.#s=null,this.#r="BeaconDiscovery";continue}return{status:"action-required",needs:[{kind:"NeedGenesisDocument",genesisHash:Qr(this.#e.genesisBytes,"hex")}]}}case"BeaconDiscovery":{let r=Fr.getBeaconServices(this.#i).filter(n=>{let i=Fr.parseBitcoinAddress(n.serviceEndpoint);return!this.#d.has(i)});if(r.length>0){for(let n of r){let i=Fr.parseBitcoinAddress(n.serviceEndpoint);this.#d.add(i)}return{status:"action-required",needs:[{kind:"NeedBeaconSignals",beaconServices:r}]}}this.#r="BeaconProcess";continue}case"BeaconProcess":{let e=[];for(let[r,n]of this.#f){if(this.#l.has(r.id)||!n.length)continue;let i=this.#m(n);if(!i.length)continue;let s=Ms.establish(r,this.#i.id).processSignals(i,this.#o);s.needs.length>0?e.push(...s.needs):(this.#c.push(...s.updates),this.#l.add(r.id))}if(e.length>0)return{status:"action-required",needs:e};this.#r="ApplyUpdates";continue}case"ApplyUpdates":{if(this.#c.length>0&&(this.#a=t.updates(this.#i,this.#c,this.#n,this.#t,{currentVersionId:this.#h,updateHashHistory:this.#g}),this.#h=Number(this.#a.metadata.versionId),this.#i=this.#a.didDocument,this.#c=[],Fr.getBeaconServices(this.#i).some(n=>{let i=Fr.parseBitcoinAddress(n.serviceEndpoint);return!this.#d.has(i)}))){if(++this.#p>this.#u)throw new De(`Exceeded the configured maximum of ${this.#u} beacon-discovery rounds. Raise or remove ResolutionOptions.maxDiscoveryRounds to resolve this DID.`,Sv,{maxDiscoveryRounds:this.#u,discoveryRounds:this.#p});this.#r="BeaconDiscovery";continue}this.#r="Complete";continue}case"Complete":return{status:"resolved",result:this.#a??{didDocument:this.#i,metadata:{versionId:this.#t??"1",confirmations:0,deactivated:this.#i.deactivated||!1}}}}}#m(e){let r=[];for(let n of e){let i=n.blockMetadata,o=i?.confirmations;if(!(!Number.isInteger(o)||o<this.#y)){if(!Number.isFinite(i?.height)||!Number.isFinite(i?.time))throw new De(`Beacon signal ${n.signalBytes} has ${o} confirmations but no valid block height or block time.`,Ae,{signalBytes:n.signalBytes,confirmations:o,height:i?.height,time:i?.time});r.push(n)}}return r}provide(e,r){switch(e.kind){case"NeedGenesisDocument":{if(!Ef(r))throw new De("Provided data for NeedGenesisDocument must be a document object.",Ae,{kind:e.kind});this.#s=r;break}case"NeedBeaconSignals":{if(!(r instanceof Map))throw new De("Provided data for NeedBeaconSignals must be a Map of beacon services to signals.",Ae,{kind:e.kind});for(let[n,i]of r)this.#f.set(n,i);break}case"NeedCASAnnouncement":{if(!kL(r))throw new De("Provided data for NeedCASAnnouncement is not a CAS announcement.",Ae,{kind:e.kind});let n=Gn(r,{encoding:"hex"});if(n!==e.announcementHash)throw new De(`CAS announcement hash mismatch: expected ${e.announcementHash}, got ${n}.`,Ae,{expected:e.announcementHash,actual:n});this.#o.casMap.set(n,r);break}case"NeedSignedUpdate":{if(!NL(r))throw new De("Provided data for NeedSignedUpdate is not a signed BTCR2 update.",Ae,{kind:e.kind});let n=Gn(r,{encoding:"hex"});if(n!==e.updateHash)throw new De(`Signed update hash mismatch: expected ${e.updateHash}, got ${n}.`,Ae,{expected:e.updateHash,actual:n});this.#o.updateMap.set(n,r);break}case"NeedSMTProof":{if(!CL(r))throw new De("Provided data for NeedSMTProof is not an SMT proof.",Ae,{kind:e.kind});let n=Qr(Os(r.id,"base64urlnopad"),"hex");if(n!==e.smtRootHash)throw new De(`SMT proof root hash mismatch: expected ${e.smtRootHash}, got ${n}`,Ae,{expected:e.smtRootHash,actual:n});this.#o.smtMap.set(e.smtRootHash,r);break}}}};function rB(t){let e=t.capabilityInvocation?.[0];if(e===void 0)throw new qe("Cannot derive aggregation communication key: capabilityInvocation is absent",Le,{id:t.id});let r=ot.absoluteDidUrl(e,t.id),n=typeof e=="string"?r===void 0?void 0:t.verificationMethod?.find(i=>ot.absoluteDidUrl(i.id,t.id)===r):e;if(!n)throw new qe(`Cannot derive aggregation communication key: capabilityInvocation[0] "${e}" does not resolve to a verification method`,Le,{id:t.id,invocation:e});return ds.fromVerificationMethod(n).publicKey}function PL(t,e){try{let r=fr.decode(t);if(r.idType==="KEY")return new dt(r.genesisBytes);if(e?.genesisDocument){let n=lo.external(r,e.genesisDocument);return rB(n)}}catch{}}l();l();l();var cx=class{document={};constructor(e){if(!e.id)throw new qe('Missing required "id" property',Le,e);this.document.id=e.id,this.document.verificationMethod=e.verificationMethod??[],e["@context"]&&(this.document["@context"]=e["@context"])}withAuthentication(e){return e&&(this.document.authentication=e),this}withAssertionMethod(e){return e&&(this.document.assertionMethod=e),this}withCapabilityInvocation(e){return e&&(this.document.capabilityInvocation=e),this}withCapabilityDelegation(e){return e&&(this.document.capabilityDelegation=e),this}withService(e){return e&&(this.document.service=e),this}build(){let e=new qr(this.document);for(let r of Object.keys(e))e[r]===void 0&&delete e[r];return e}};return IB(ML);})();
|
|
1
|
+
"use strict";var BTCR2=(()=>{var SB=Object.create;var Df=Object.defineProperty;var AB=Object.getOwnPropertyDescriptor;var TB=Object.getOwnPropertyNames;var _B=Object.getPrototypeOf,IB=Object.prototype.hasOwnProperty;var BB=(t,e)=>()=>(t&&(e=t(t=0)),e);var oe=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),Su=(t,e)=>{for(var r in e)Df(t,r,{get:e[r],enumerable:!0})},xx=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of TB(e))!IB.call(t,i)&&i!==r&&Df(t,i,{get:()=>e[i],enumerable:!(n=AB(e,i))||n.enumerable});return t};var Mn=(t,e,r)=>(r=t!=null?SB(_B(t)):{},xx(e||!t||!t.__esModule?Df(r,"default",{value:t,enumerable:!0}):r,t)),RB=t=>xx(Df({},"__esModule",{value:!0}),t);var Sx=oe(kf=>{"use strict";l();kf.byteLength=OB;kf.toByteArray=kB;kf.fromByteArray=LB;var Kn=[],Yr=[],UB=typeof Uint8Array<"u"?Uint8Array:Array,dy="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";for(ys=0,Ex=dy.length;ys<Ex;++ys)Kn[ys]=dy[ys],Yr[dy.charCodeAt(ys)]=ys;var ys,Ex;Yr[45]=62;Yr[95]=63;function vx(t){var e=t.length;if(e%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var r=t.indexOf("=");r===-1&&(r=e);var n=r===e?0:4-r%4;return[r,n]}function OB(t){var e=vx(t),r=e[0],n=e[1];return(r+n)*3/4-n}function DB(t,e,r){return(e+r)*3/4-r}function kB(t){var e,r=vx(t),n=r[0],i=r[1],o=new UB(DB(t,n,i)),s=0,c=i>0?n-4:n,a;for(a=0;a<c;a+=4)e=Yr[t.charCodeAt(a)]<<18|Yr[t.charCodeAt(a+1)]<<12|Yr[t.charCodeAt(a+2)]<<6|Yr[t.charCodeAt(a+3)],o[s++]=e>>16&255,o[s++]=e>>8&255,o[s++]=e&255;return i===2&&(e=Yr[t.charCodeAt(a)]<<2|Yr[t.charCodeAt(a+1)]>>4,o[s++]=e&255),i===1&&(e=Yr[t.charCodeAt(a)]<<10|Yr[t.charCodeAt(a+1)]<<4|Yr[t.charCodeAt(a+2)]>>2,o[s++]=e>>8&255,o[s++]=e&255),o}function NB(t){return Kn[t>>18&63]+Kn[t>>12&63]+Kn[t>>6&63]+Kn[t&63]}function CB(t,e,r){for(var n,i=[],o=e;o<r;o+=3)n=(t[o]<<16&16711680)+(t[o+1]<<8&65280)+(t[o+2]&255),i.push(NB(n));return i.join("")}function LB(t){for(var e,r=t.length,n=r%3,i=[],o=16383,s=0,c=r-n;s<c;s+=o)i.push(CB(t,s,s+o>c?c:s+o));return n===1?(e=t[r-1],i.push(Kn[e>>2]+Kn[e<<4&63]+"==")):n===2&&(e=(t[r-2]<<8)+t[r-1],i.push(Kn[e>>10]+Kn[e>>4&63]+Kn[e<<2&63]+"=")),i.join("")}});var Ax=oe(fy=>{l();fy.read=function(t,e,r,n,i){var o,s,c=i*8-n-1,a=(1<<c)-1,u=a>>1,d=-7,f=r?i-1:0,h=r?-1:1,p=t[e+f];for(f+=h,o=p&(1<<-d)-1,p>>=-d,d+=c;d>0;o=o*256+t[e+f],f+=h,d-=8);for(s=o&(1<<-d)-1,o>>=-d,d+=n;d>0;s=s*256+t[e+f],f+=h,d-=8);if(o===0)o=1-u;else{if(o===a)return s?NaN:(p?-1:1)*(1/0);s=s+Math.pow(2,n),o=o-u}return(p?-1:1)*s*Math.pow(2,o-n)};fy.write=function(t,e,r,n,i,o){var s,c,a,u=o*8-i-1,d=(1<<u)-1,f=d>>1,h=i===23?Math.pow(2,-24)-Math.pow(2,-77):0,p=n?0:o-1,y=n?1:-1,g=e<0||e===0&&1/e<0?1:0;for(e=Math.abs(e),isNaN(e)||e===1/0?(c=isNaN(e)?1:0,s=d):(s=Math.floor(Math.log(e)/Math.LN2),e*(a=Math.pow(2,-s))<1&&(s--,a*=2),s+f>=1?e+=h/a:e+=h*Math.pow(2,1-f),e*a>=2&&(s++,a/=2),s+f>=d?(c=0,s=d):s+f>=1?(c=(e*a-1)*Math.pow(2,i),s=s+f):(c=e*Math.pow(2,f-1)*Math.pow(2,i),s=0));i>=8;t[r+p]=c&255,p+=y,c/=256,i-=8);for(s=s<<i|c,u+=i;u>0;t[r+p]=s&255,p+=y,s/=256,u-=8);t[r+p-y]|=g*128}});var Tr=oe(Cc=>{"use strict";l();var ly=Sx(),Nc=Ax(),Tx=typeof Symbol=="function"&&typeof Symbol.for=="function"?Symbol.for("nodejs.util.inspect.custom"):null;Cc.Buffer=F;Cc.SlowBuffer=VB;Cc.INSPECT_MAX_BYTES=50;var Nf=2147483647;Cc.kMaxLength=Nf;F.TYPED_ARRAY_SUPPORT=PB();!F.TYPED_ARRAY_SUPPORT&&typeof console<"u"&&typeof console.error=="function"&&console.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support.");function PB(){try{var t=new Uint8Array(1),e={foo:function(){return 42}};return Object.setPrototypeOf(e,Uint8Array.prototype),Object.setPrototypeOf(t,e),t.foo()===42}catch{return!1}}Object.defineProperty(F.prototype,"parent",{enumerable:!0,get:function(){if(F.isBuffer(this))return this.buffer}});Object.defineProperty(F.prototype,"offset",{enumerable:!0,get:function(){if(F.isBuffer(this))return this.byteOffset}});function wi(t){if(t>Nf)throw new RangeError('The value "'+t+'" is invalid for option "size"');var e=new Uint8Array(t);return Object.setPrototypeOf(e,F.prototype),e}function F(t,e,r){if(typeof t=="number"){if(typeof e=="string")throw new TypeError('The "string" argument must be of type string. Received type number');return gy(t)}return Bx(t,e,r)}F.poolSize=8192;function Bx(t,e,r){if(typeof t=="string")return KB(t,e);if(ArrayBuffer.isView(t))return $B(t);if(t==null)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof t);if($n(t,ArrayBuffer)||t&&$n(t.buffer,ArrayBuffer)||typeof SharedArrayBuffer<"u"&&($n(t,SharedArrayBuffer)||t&&$n(t.buffer,SharedArrayBuffer)))return py(t,e,r);if(typeof t=="number")throw new TypeError('The "value" argument must not be of type number. Received type number');var n=t.valueOf&&t.valueOf();if(n!=null&&n!==t)return F.from(n,e,r);var i=HB(t);if(i)return i;if(typeof Symbol<"u"&&Symbol.toPrimitive!=null&&typeof t[Symbol.toPrimitive]=="function")return F.from(t[Symbol.toPrimitive]("string"),e,r);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof t)}F.from=function(t,e,r){return Bx(t,e,r)};Object.setPrototypeOf(F.prototype,Uint8Array.prototype);Object.setPrototypeOf(F,Uint8Array);function Rx(t){if(typeof t!="number")throw new TypeError('"size" argument must be of type number');if(t<0)throw new RangeError('The value "'+t+'" is invalid for option "size"')}function MB(t,e,r){return Rx(t),t<=0?wi(t):e!==void 0?typeof r=="string"?wi(t).fill(e,r):wi(t).fill(e):wi(t)}F.alloc=function(t,e,r){return MB(t,e,r)};function gy(t){return Rx(t),wi(t<0?0:my(t)|0)}F.allocUnsafe=function(t){return gy(t)};F.allocUnsafeSlow=function(t){return gy(t)};function KB(t,e){if((typeof e!="string"||e==="")&&(e="utf8"),!F.isEncoding(e))throw new TypeError("Unknown encoding: "+e);var r=Ux(t,e)|0,n=wi(r),i=n.write(t,e);return i!==r&&(n=n.slice(0,i)),n}function hy(t){for(var e=t.length<0?0:my(t.length)|0,r=wi(e),n=0;n<e;n+=1)r[n]=t[n]&255;return r}function $B(t){if($n(t,Uint8Array)){var e=new Uint8Array(t);return py(e.buffer,e.byteOffset,e.byteLength)}return hy(t)}function py(t,e,r){if(e<0||t.byteLength<e)throw new RangeError('"offset" is outside of buffer bounds');if(t.byteLength<e+(r||0))throw new RangeError('"length" is outside of buffer bounds');var n;return e===void 0&&r===void 0?n=new Uint8Array(t):r===void 0?n=new Uint8Array(t,e):n=new Uint8Array(t,e,r),Object.setPrototypeOf(n,F.prototype),n}function HB(t){if(F.isBuffer(t)){var e=my(t.length)|0,r=wi(e);return r.length===0||t.copy(r,0,0,e),r}if(t.length!==void 0)return typeof t.length!="number"||wy(t.length)?wi(0):hy(t);if(t.type==="Buffer"&&Array.isArray(t.data))return hy(t.data)}function my(t){if(t>=Nf)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+Nf.toString(16)+" bytes");return t|0}function VB(t){return+t!=t&&(t=0),F.alloc(+t)}F.isBuffer=function(e){return e!=null&&e._isBuffer===!0&&e!==F.prototype};F.compare=function(e,r){if($n(e,Uint8Array)&&(e=F.from(e,e.offset,e.byteLength)),$n(r,Uint8Array)&&(r=F.from(r,r.offset,r.byteLength)),!F.isBuffer(e)||!F.isBuffer(r))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(e===r)return 0;for(var n=e.length,i=r.length,o=0,s=Math.min(n,i);o<s;++o)if(e[o]!==r[o]){n=e[o],i=r[o];break}return n<i?-1:i<n?1:0};F.isEncoding=function(e){switch(String(e).toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"latin1":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return!0;default:return!1}};F.concat=function(e,r){if(!Array.isArray(e))throw new TypeError('"list" argument must be an Array of Buffers');if(e.length===0)return F.alloc(0);var n;if(r===void 0)for(r=0,n=0;n<e.length;++n)r+=e[n].length;var i=F.allocUnsafe(r),o=0;for(n=0;n<e.length;++n){var s=e[n];if($n(s,Uint8Array))o+s.length>i.length?F.from(s).copy(i,o):Uint8Array.prototype.set.call(i,s,o);else if(F.isBuffer(s))s.copy(i,o);else throw new TypeError('"list" argument must be an Array of Buffers');o+=s.length}return i};function Ux(t,e){if(F.isBuffer(t))return t.length;if(ArrayBuffer.isView(t)||$n(t,ArrayBuffer))return t.byteLength;if(typeof t!="string")throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof t);var r=t.length,n=arguments.length>2&&arguments[2]===!0;if(!n&&r===0)return 0;for(var i=!1;;)switch(e){case"ascii":case"latin1":case"binary":return r;case"utf8":case"utf-8":return yy(t).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return r*2;case"hex":return r>>>1;case"base64":return Lx(t).length;default:if(i)return n?-1:yy(t).length;e=(""+e).toLowerCase(),i=!0}}F.byteLength=Ux;function qB(t,e,r){var n=!1;if((e===void 0||e<0)&&(e=0),e>this.length||((r===void 0||r>this.length)&&(r=this.length),r<=0)||(r>>>=0,e>>>=0,r<=e))return"";for(t||(t="utf8");;)switch(t){case"hex":return QB(this,e,r);case"utf8":case"utf-8":return Dx(this,e,r);case"ascii":return XB(this,e,r);case"latin1":case"binary":return ZB(this,e,r);case"base64":return YB(this,e,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return e8(this,e,r);default:if(n)throw new TypeError("Unknown encoding: "+t);t=(t+"").toLowerCase(),n=!0}}F.prototype._isBuffer=!0;function gs(t,e,r){var n=t[e];t[e]=t[r],t[r]=n}F.prototype.swap16=function(){var e=this.length;if(e%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(var r=0;r<e;r+=2)gs(this,r,r+1);return this};F.prototype.swap32=function(){var e=this.length;if(e%4!==0)throw new RangeError("Buffer size must be a multiple of 32-bits");for(var r=0;r<e;r+=4)gs(this,r,r+3),gs(this,r+1,r+2);return this};F.prototype.swap64=function(){var e=this.length;if(e%8!==0)throw new RangeError("Buffer size must be a multiple of 64-bits");for(var r=0;r<e;r+=8)gs(this,r,r+7),gs(this,r+1,r+6),gs(this,r+2,r+5),gs(this,r+3,r+4);return this};F.prototype.toString=function(){var e=this.length;return e===0?"":arguments.length===0?Dx(this,0,e):qB.apply(this,arguments)};F.prototype.toLocaleString=F.prototype.toString;F.prototype.equals=function(e){if(!F.isBuffer(e))throw new TypeError("Argument must be a Buffer");return this===e?!0:F.compare(this,e)===0};F.prototype.inspect=function(){var e="",r=Cc.INSPECT_MAX_BYTES;return e=this.toString("hex",0,r).replace(/(.{2})/g,"$1 ").trim(),this.length>r&&(e+=" ... "),"<Buffer "+e+">"};Tx&&(F.prototype[Tx]=F.prototype.inspect);F.prototype.compare=function(e,r,n,i,o){if($n(e,Uint8Array)&&(e=F.from(e,e.offset,e.byteLength)),!F.isBuffer(e))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof e);if(r===void 0&&(r=0),n===void 0&&(n=e?e.length:0),i===void 0&&(i=0),o===void 0&&(o=this.length),r<0||n>e.length||i<0||o>this.length)throw new RangeError("out of range index");if(i>=o&&r>=n)return 0;if(i>=o)return-1;if(r>=n)return 1;if(r>>>=0,n>>>=0,i>>>=0,o>>>=0,this===e)return 0;for(var s=o-i,c=n-r,a=Math.min(s,c),u=this.slice(i,o),d=e.slice(r,n),f=0;f<a;++f)if(u[f]!==d[f]){s=u[f],c=d[f];break}return s<c?-1:c<s?1:0};function Ox(t,e,r,n,i){if(t.length===0)return-1;if(typeof r=="string"?(n=r,r=0):r>2147483647?r=2147483647:r<-2147483648&&(r=-2147483648),r=+r,wy(r)&&(r=i?0:t.length-1),r<0&&(r=t.length+r),r>=t.length){if(i)return-1;r=t.length-1}else if(r<0)if(i)r=0;else return-1;if(typeof e=="string"&&(e=F.from(e,n)),F.isBuffer(e))return e.length===0?-1:_x(t,e,r,n,i);if(typeof e=="number")return e=e&255,typeof Uint8Array.prototype.indexOf=="function"?i?Uint8Array.prototype.indexOf.call(t,e,r):Uint8Array.prototype.lastIndexOf.call(t,e,r):_x(t,[e],r,n,i);throw new TypeError("val must be string, number or Buffer")}function _x(t,e,r,n,i){var o=1,s=t.length,c=e.length;if(n!==void 0&&(n=String(n).toLowerCase(),n==="ucs2"||n==="ucs-2"||n==="utf16le"||n==="utf-16le")){if(t.length<2||e.length<2)return-1;o=2,s/=2,c/=2,r/=2}function a(p,y){return o===1?p[y]:p.readUInt16BE(y*o)}var u;if(i){var d=-1;for(u=r;u<s;u++)if(a(t,u)===a(e,d===-1?0:u-d)){if(d===-1&&(d=u),u-d+1===c)return d*o}else d!==-1&&(u-=u-d),d=-1}else for(r+c>s&&(r=s-c),u=r;u>=0;u--){for(var f=!0,h=0;h<c;h++)if(a(t,u+h)!==a(e,h)){f=!1;break}if(f)return u}return-1}F.prototype.includes=function(e,r,n){return this.indexOf(e,r,n)!==-1};F.prototype.indexOf=function(e,r,n){return Ox(this,e,r,n,!0)};F.prototype.lastIndexOf=function(e,r,n){return Ox(this,e,r,n,!1)};function FB(t,e,r,n){r=Number(r)||0;var i=t.length-r;n?(n=Number(n),n>i&&(n=i)):n=i;var o=e.length;n>o/2&&(n=o/2);for(var s=0;s<n;++s){var c=parseInt(e.substr(s*2,2),16);if(wy(c))return s;t[r+s]=c}return s}function jB(t,e,r,n){return Cf(yy(e,t.length-r),t,r,n)}function WB(t,e,r,n){return Cf(n8(e),t,r,n)}function GB(t,e,r,n){return Cf(Lx(e),t,r,n)}function zB(t,e,r,n){return Cf(i8(e,t.length-r),t,r,n)}F.prototype.write=function(e,r,n,i){if(r===void 0)i="utf8",n=this.length,r=0;else if(n===void 0&&typeof r=="string")i=r,n=this.length,r=0;else if(isFinite(r))r=r>>>0,isFinite(n)?(n=n>>>0,i===void 0&&(i="utf8")):(i=n,n=void 0);else throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");var o=this.length-r;if((n===void 0||n>o)&&(n=o),e.length>0&&(n<0||r<0)||r>this.length)throw new RangeError("Attempt to write outside buffer bounds");i||(i="utf8");for(var s=!1;;)switch(i){case"hex":return FB(this,e,r,n);case"utf8":case"utf-8":return jB(this,e,r,n);case"ascii":case"latin1":case"binary":return WB(this,e,r,n);case"base64":return GB(this,e,r,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return zB(this,e,r,n);default:if(s)throw new TypeError("Unknown encoding: "+i);i=(""+i).toLowerCase(),s=!0}};F.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function YB(t,e,r){return e===0&&r===t.length?ly.fromByteArray(t):ly.fromByteArray(t.slice(e,r))}function Dx(t,e,r){r=Math.min(t.length,r);for(var n=[],i=e;i<r;){var o=t[i],s=null,c=o>239?4:o>223?3:o>191?2:1;if(i+c<=r){var a,u,d,f;switch(c){case 1:o<128&&(s=o);break;case 2:a=t[i+1],(a&192)===128&&(f=(o&31)<<6|a&63,f>127&&(s=f));break;case 3:a=t[i+1],u=t[i+2],(a&192)===128&&(u&192)===128&&(f=(o&15)<<12|(a&63)<<6|u&63,f>2047&&(f<55296||f>57343)&&(s=f));break;case 4:a=t[i+1],u=t[i+2],d=t[i+3],(a&192)===128&&(u&192)===128&&(d&192)===128&&(f=(o&15)<<18|(a&63)<<12|(u&63)<<6|d&63,f>65535&&f<1114112&&(s=f))}}s===null?(s=65533,c=1):s>65535&&(s-=65536,n.push(s>>>10&1023|55296),s=56320|s&1023),n.push(s),i+=c}return JB(n)}var Ix=4096;function JB(t){var e=t.length;if(e<=Ix)return String.fromCharCode.apply(String,t);for(var r="",n=0;n<e;)r+=String.fromCharCode.apply(String,t.slice(n,n+=Ix));return r}function XB(t,e,r){var n="";r=Math.min(t.length,r);for(var i=e;i<r;++i)n+=String.fromCharCode(t[i]&127);return n}function ZB(t,e,r){var n="";r=Math.min(t.length,r);for(var i=e;i<r;++i)n+=String.fromCharCode(t[i]);return n}function QB(t,e,r){var n=t.length;(!e||e<0)&&(e=0),(!r||r<0||r>n)&&(r=n);for(var i="",o=e;o<r;++o)i+=o8[t[o]];return i}function e8(t,e,r){for(var n=t.slice(e,r),i="",o=0;o<n.length-1;o+=2)i+=String.fromCharCode(n[o]+n[o+1]*256);return i}F.prototype.slice=function(e,r){var n=this.length;e=~~e,r=r===void 0?n:~~r,e<0?(e+=n,e<0&&(e=0)):e>n&&(e=n),r<0?(r+=n,r<0&&(r=0)):r>n&&(r=n),r<e&&(r=e);var i=this.subarray(e,r);return Object.setPrototypeOf(i,F.prototype),i};function Ot(t,e,r){if(t%1!==0||t<0)throw new RangeError("offset is not uint");if(t+e>r)throw new RangeError("Trying to access beyond buffer length")}F.prototype.readUintLE=F.prototype.readUIntLE=function(e,r,n){e=e>>>0,r=r>>>0,n||Ot(e,r,this.length);for(var i=this[e],o=1,s=0;++s<r&&(o*=256);)i+=this[e+s]*o;return i};F.prototype.readUintBE=F.prototype.readUIntBE=function(e,r,n){e=e>>>0,r=r>>>0,n||Ot(e,r,this.length);for(var i=this[e+--r],o=1;r>0&&(o*=256);)i+=this[e+--r]*o;return i};F.prototype.readUint8=F.prototype.readUInt8=function(e,r){return e=e>>>0,r||Ot(e,1,this.length),this[e]};F.prototype.readUint16LE=F.prototype.readUInt16LE=function(e,r){return e=e>>>0,r||Ot(e,2,this.length),this[e]|this[e+1]<<8};F.prototype.readUint16BE=F.prototype.readUInt16BE=function(e,r){return e=e>>>0,r||Ot(e,2,this.length),this[e]<<8|this[e+1]};F.prototype.readUint32LE=F.prototype.readUInt32LE=function(e,r){return e=e>>>0,r||Ot(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+this[e+3]*16777216};F.prototype.readUint32BE=F.prototype.readUInt32BE=function(e,r){return e=e>>>0,r||Ot(e,4,this.length),this[e]*16777216+(this[e+1]<<16|this[e+2]<<8|this[e+3])};F.prototype.readIntLE=function(e,r,n){e=e>>>0,r=r>>>0,n||Ot(e,r,this.length);for(var i=this[e],o=1,s=0;++s<r&&(o*=256);)i+=this[e+s]*o;return o*=128,i>=o&&(i-=Math.pow(2,8*r)),i};F.prototype.readIntBE=function(e,r,n){e=e>>>0,r=r>>>0,n||Ot(e,r,this.length);for(var i=r,o=1,s=this[e+--i];i>0&&(o*=256);)s+=this[e+--i]*o;return o*=128,s>=o&&(s-=Math.pow(2,8*r)),s};F.prototype.readInt8=function(e,r){return e=e>>>0,r||Ot(e,1,this.length),this[e]&128?(255-this[e]+1)*-1:this[e]};F.prototype.readInt16LE=function(e,r){e=e>>>0,r||Ot(e,2,this.length);var n=this[e]|this[e+1]<<8;return n&32768?n|4294901760:n};F.prototype.readInt16BE=function(e,r){e=e>>>0,r||Ot(e,2,this.length);var n=this[e+1]|this[e]<<8;return n&32768?n|4294901760:n};F.prototype.readInt32LE=function(e,r){return e=e>>>0,r||Ot(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24};F.prototype.readInt32BE=function(e,r){return e=e>>>0,r||Ot(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]};F.prototype.readFloatLE=function(e,r){return e=e>>>0,r||Ot(e,4,this.length),Nc.read(this,e,!0,23,4)};F.prototype.readFloatBE=function(e,r){return e=e>>>0,r||Ot(e,4,this.length),Nc.read(this,e,!1,23,4)};F.prototype.readDoubleLE=function(e,r){return e=e>>>0,r||Ot(e,8,this.length),Nc.read(this,e,!0,52,8)};F.prototype.readDoubleBE=function(e,r){return e=e>>>0,r||Ot(e,8,this.length),Nc.read(this,e,!1,52,8)};function lr(t,e,r,n,i,o){if(!F.isBuffer(t))throw new TypeError('"buffer" argument must be a Buffer instance');if(e>i||e<o)throw new RangeError('"value" argument is out of bounds');if(r+n>t.length)throw new RangeError("Index out of range")}F.prototype.writeUintLE=F.prototype.writeUIntLE=function(e,r,n,i){if(e=+e,r=r>>>0,n=n>>>0,!i){var o=Math.pow(2,8*n)-1;lr(this,e,r,n,o,0)}var s=1,c=0;for(this[r]=e&255;++c<n&&(s*=256);)this[r+c]=e/s&255;return r+n};F.prototype.writeUintBE=F.prototype.writeUIntBE=function(e,r,n,i){if(e=+e,r=r>>>0,n=n>>>0,!i){var o=Math.pow(2,8*n)-1;lr(this,e,r,n,o,0)}var s=n-1,c=1;for(this[r+s]=e&255;--s>=0&&(c*=256);)this[r+s]=e/c&255;return r+n};F.prototype.writeUint8=F.prototype.writeUInt8=function(e,r,n){return e=+e,r=r>>>0,n||lr(this,e,r,1,255,0),this[r]=e&255,r+1};F.prototype.writeUint16LE=F.prototype.writeUInt16LE=function(e,r,n){return e=+e,r=r>>>0,n||lr(this,e,r,2,65535,0),this[r]=e&255,this[r+1]=e>>>8,r+2};F.prototype.writeUint16BE=F.prototype.writeUInt16BE=function(e,r,n){return e=+e,r=r>>>0,n||lr(this,e,r,2,65535,0),this[r]=e>>>8,this[r+1]=e&255,r+2};F.prototype.writeUint32LE=F.prototype.writeUInt32LE=function(e,r,n){return e=+e,r=r>>>0,n||lr(this,e,r,4,4294967295,0),this[r+3]=e>>>24,this[r+2]=e>>>16,this[r+1]=e>>>8,this[r]=e&255,r+4};F.prototype.writeUint32BE=F.prototype.writeUInt32BE=function(e,r,n){return e=+e,r=r>>>0,n||lr(this,e,r,4,4294967295,0),this[r]=e>>>24,this[r+1]=e>>>16,this[r+2]=e>>>8,this[r+3]=e&255,r+4};F.prototype.writeIntLE=function(e,r,n,i){if(e=+e,r=r>>>0,!i){var o=Math.pow(2,8*n-1);lr(this,e,r,n,o-1,-o)}var s=0,c=1,a=0;for(this[r]=e&255;++s<n&&(c*=256);)e<0&&a===0&&this[r+s-1]!==0&&(a=1),this[r+s]=(e/c>>0)-a&255;return r+n};F.prototype.writeIntBE=function(e,r,n,i){if(e=+e,r=r>>>0,!i){var o=Math.pow(2,8*n-1);lr(this,e,r,n,o-1,-o)}var s=n-1,c=1,a=0;for(this[r+s]=e&255;--s>=0&&(c*=256);)e<0&&a===0&&this[r+s+1]!==0&&(a=1),this[r+s]=(e/c>>0)-a&255;return r+n};F.prototype.writeInt8=function(e,r,n){return e=+e,r=r>>>0,n||lr(this,e,r,1,127,-128),e<0&&(e=255+e+1),this[r]=e&255,r+1};F.prototype.writeInt16LE=function(e,r,n){return e=+e,r=r>>>0,n||lr(this,e,r,2,32767,-32768),this[r]=e&255,this[r+1]=e>>>8,r+2};F.prototype.writeInt16BE=function(e,r,n){return e=+e,r=r>>>0,n||lr(this,e,r,2,32767,-32768),this[r]=e>>>8,this[r+1]=e&255,r+2};F.prototype.writeInt32LE=function(e,r,n){return e=+e,r=r>>>0,n||lr(this,e,r,4,2147483647,-2147483648),this[r]=e&255,this[r+1]=e>>>8,this[r+2]=e>>>16,this[r+3]=e>>>24,r+4};F.prototype.writeInt32BE=function(e,r,n){return e=+e,r=r>>>0,n||lr(this,e,r,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),this[r]=e>>>24,this[r+1]=e>>>16,this[r+2]=e>>>8,this[r+3]=e&255,r+4};function kx(t,e,r,n,i,o){if(r+n>t.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("Index out of range")}function Nx(t,e,r,n,i){return e=+e,r=r>>>0,i||kx(t,e,r,4,34028234663852886e22,-34028234663852886e22),Nc.write(t,e,r,n,23,4),r+4}F.prototype.writeFloatLE=function(e,r,n){return Nx(this,e,r,!0,n)};F.prototype.writeFloatBE=function(e,r,n){return Nx(this,e,r,!1,n)};function Cx(t,e,r,n,i){return e=+e,r=r>>>0,i||kx(t,e,r,8,17976931348623157e292,-17976931348623157e292),Nc.write(t,e,r,n,52,8),r+8}F.prototype.writeDoubleLE=function(e,r,n){return Cx(this,e,r,!0,n)};F.prototype.writeDoubleBE=function(e,r,n){return Cx(this,e,r,!1,n)};F.prototype.copy=function(e,r,n,i){if(!F.isBuffer(e))throw new TypeError("argument should be a Buffer");if(n||(n=0),!i&&i!==0&&(i=this.length),r>=e.length&&(r=e.length),r||(r=0),i>0&&i<n&&(i=n),i===n||e.length===0||this.length===0)return 0;if(r<0)throw new RangeError("targetStart out of bounds");if(n<0||n>=this.length)throw new RangeError("Index out of range");if(i<0)throw new RangeError("sourceEnd out of bounds");i>this.length&&(i=this.length),e.length-r<i-n&&(i=e.length-r+n);var o=i-n;return this===e&&typeof Uint8Array.prototype.copyWithin=="function"?this.copyWithin(r,n,i):Uint8Array.prototype.set.call(e,this.subarray(n,i),r),o};F.prototype.fill=function(e,r,n,i){if(typeof e=="string"){if(typeof r=="string"?(i=r,r=0,n=this.length):typeof n=="string"&&(i=n,n=this.length),i!==void 0&&typeof i!="string")throw new TypeError("encoding must be a string");if(typeof i=="string"&&!F.isEncoding(i))throw new TypeError("Unknown encoding: "+i);if(e.length===1){var o=e.charCodeAt(0);(i==="utf8"&&o<128||i==="latin1")&&(e=o)}}else typeof e=="number"?e=e&255:typeof e=="boolean"&&(e=Number(e));if(r<0||this.length<r||this.length<n)throw new RangeError("Out of range index");if(n<=r)return this;r=r>>>0,n=n===void 0?this.length:n>>>0,e||(e=0);var s;if(typeof e=="number")for(s=r;s<n;++s)this[s]=e;else{var c=F.isBuffer(e)?e:F.from(e,i),a=c.length;if(a===0)throw new TypeError('The value "'+e+'" is invalid for argument "value"');for(s=0;s<n-r;++s)this[s+r]=c[s%a]}return this};var t8=/[^+/0-9A-Za-z-_]/g;function r8(t){if(t=t.split("=")[0],t=t.trim().replace(t8,""),t.length<2)return"";for(;t.length%4!==0;)t=t+"=";return t}function yy(t,e){e=e||1/0;for(var r,n=t.length,i=null,o=[],s=0;s<n;++s){if(r=t.charCodeAt(s),r>55295&&r<57344){if(!i){if(r>56319){(e-=3)>-1&&o.push(239,191,189);continue}else if(s+1===n){(e-=3)>-1&&o.push(239,191,189);continue}i=r;continue}if(r<56320){(e-=3)>-1&&o.push(239,191,189),i=r;continue}r=(i-55296<<10|r-56320)+65536}else i&&(e-=3)>-1&&o.push(239,191,189);if(i=null,r<128){if((e-=1)<0)break;o.push(r)}else if(r<2048){if((e-=2)<0)break;o.push(r>>6|192,r&63|128)}else if(r<65536){if((e-=3)<0)break;o.push(r>>12|224,r>>6&63|128,r&63|128)}else if(r<1114112){if((e-=4)<0)break;o.push(r>>18|240,r>>12&63|128,r>>6&63|128,r&63|128)}else throw new Error("Invalid code point")}return o}function n8(t){for(var e=[],r=0;r<t.length;++r)e.push(t.charCodeAt(r)&255);return e}function i8(t,e){for(var r,n,i,o=[],s=0;s<t.length&&!((e-=2)<0);++s)r=t.charCodeAt(s),n=r>>8,i=r%256,o.push(i),o.push(n);return o}function Lx(t){return ly.toByteArray(r8(t))}function Cf(t,e,r,n){for(var i=0;i<n&&!(i+r>=e.length||i>=t.length);++i)e[i+r]=t[i];return i}function $n(t,e){return t instanceof e||t!=null&&t.constructor!=null&&t.constructor.name!=null&&t.constructor.name===e.name}function wy(t){return t!==t}var o8=function(){for(var t="0123456789abcdef",e=new Array(256),r=0;r<16;++r)for(var n=r*16,i=0;i<16;++i)e[n+i]=t[r]+t[i];return e}()});var Ei=oe((sP,$x)=>{l();var ft=$x.exports={},Hn,Vn;function by(){throw new Error("setTimeout has not been defined")}function xy(){throw new Error("clearTimeout has not been defined")}(function(){try{typeof setTimeout=="function"?Hn=setTimeout:Hn=by}catch{Hn=by}try{typeof clearTimeout=="function"?Vn=clearTimeout:Vn=xy}catch{Vn=xy}})();function Px(t){if(Hn===setTimeout)return setTimeout(t,0);if((Hn===by||!Hn)&&setTimeout)return Hn=setTimeout,setTimeout(t,0);try{return Hn(t,0)}catch{try{return Hn.call(null,t,0)}catch{return Hn.call(this,t,0)}}}function s8(t){if(Vn===clearTimeout)return clearTimeout(t);if((Vn===xy||!Vn)&&clearTimeout)return Vn=clearTimeout,clearTimeout(t);try{return Vn(t)}catch{try{return Vn.call(null,t)}catch{return Vn.call(this,t)}}}var bi=[],Lc=!1,ms,Lf=-1;function c8(){!Lc||!ms||(Lc=!1,ms.length?bi=ms.concat(bi):Lf=-1,bi.length&&Mx())}function Mx(){if(!Lc){var t=Px(c8);Lc=!0;for(var e=bi.length;e;){for(ms=bi,bi=[];++Lf<e;)ms&&ms[Lf].run();Lf=-1,e=bi.length}ms=null,Lc=!1,s8(t)}}ft.nextTick=function(t){var e=new Array(arguments.length-1);if(arguments.length>1)for(var r=1;r<arguments.length;r++)e[r-1]=arguments[r];bi.push(new Kx(t,e)),bi.length===1&&!Lc&&Px(Mx)};function Kx(t,e){this.fun=t,this.array=e}Kx.prototype.run=function(){this.fun.apply(null,this.array)};ft.title="browser";ft.browser=!0;ft.env={};ft.argv=[];ft.version="";ft.versions={};function xi(){}ft.on=xi;ft.addListener=xi;ft.once=xi;ft.off=xi;ft.removeListener=xi;ft.removeAllListeners=xi;ft.emit=xi;ft.prependListener=xi;ft.prependOnceListener=xi;ft.listeners=function(t){return[]};ft.binding=function(t){throw new Error("process.binding is not supported")};ft.cwd=function(){return"/"};ft.chdir=function(t){throw new Error("process.chdir is not supported")};ft.umask=function(){return 0}});var b,w,aP,l=BB(()=>{b=Mn(Tr()),w=Mn(Ei()),aP=function(t){function e(){var n=this||self;return delete t.prototype.__magic__,n}if(typeof globalThis=="object")return globalThis;if(this)return e();t.defineProperty(t.prototype,"__magic__",{configurable:!0,get:e});var r=__magic__;return r}(Object)});var a1=oe((HH,c1)=>{l();var g6=typeof performance=="object"&&performance&&typeof performance.now=="function"?performance:Date,jl=()=>g6.now(),m6=t=>t&&t===Math.floor(t)&&t>0&&isFinite(t),ig=t=>t===1/0||m6(t),og=class t{constructor({max:e=1/0,ttl:r,updateAgeOnGet:n=!1,checkAgeOnGet:i=!1,noUpdateTTL:o=!1,dispose:s,noDisposeOnSet:c=!1}={}){if(this.expirations=Object.create(null),this.data=new Map,this.expirationMap=new Map,r!==void 0&&!ig(r))throw new TypeError("ttl must be positive integer or Infinity if set");if(!ig(e))throw new TypeError("max must be positive integer or Infinity");if(this.ttl=r,this.max=e,this.updateAgeOnGet=!!n,this.checkAgeOnGet=!!i,this.noUpdateTTL=!!o,this.noDisposeOnSet=!!c,s!==void 0){if(typeof s!="function")throw new TypeError("dispose must be function if set");this.dispose=s}this.timer=void 0,this.timerExpiration=void 0}setTimer(e,r){if(this.timerExpiration<e)return;this.timer&&clearTimeout(this.timer);let n=setTimeout(()=>{this.timer=void 0,this.timerExpiration=void 0,this.purgeStale();for(let i in this.expirations){this.setTimer(i,i-jl());break}},r);n.unref&&n.unref(),this.timerExpiration=e,this.timer=n}cancelTimer(){this.timer&&(clearTimeout(this.timer),this.timerExpiration=void 0,this.timer=void 0)}cancelTimers(){return w.default.emitWarning('TTLCache.cancelTimers has been renamed to TTLCache.cancelTimer (no "s"), and will be removed in the next major version update'),this.cancelTimer()}clear(){let e=this.dispose!==t.prototype.dispose?[...this]:[];this.data.clear(),this.expirationMap.clear(),this.cancelTimer(),this.expirations=Object.create(null);for(let[r,n]of e)this.dispose(n,r,"delete")}setTTL(e,r=this.ttl){let n=this.expirationMap.get(e);if(n!==void 0){let i=this.expirations[n];!i||i.length<=1?delete this.expirations[n]:this.expirations[n]=i.filter(o=>o!==e)}if(r!==1/0){let i=Math.floor(jl()+r);this.expirationMap.set(e,i),this.expirations[i]||(this.expirations[i]=[],this.setTimer(i,r)),this.expirations[i].push(e)}else this.expirationMap.set(e,1/0)}set(e,r,{ttl:n=this.ttl,noUpdateTTL:i=this.noUpdateTTL,noDisposeOnSet:o=this.noDisposeOnSet}={}){if(!ig(n))throw new TypeError("ttl must be positive integer or Infinity");if(this.expirationMap.has(e)){i||this.setTTL(e,n);let s=this.data.get(e);s!==r&&(this.data.set(e,r),o||this.dispose(s,e,"set"))}else this.setTTL(e,n),this.data.set(e,r);for(;this.size>this.max;)this.purgeToCapacity();return this}has(e){return this.data.has(e)}getRemainingTTL(e){let r=this.expirationMap.get(e);return r===1/0?r:r!==void 0?Math.max(0,Math.ceil(r-jl())):0}get(e,{updateAgeOnGet:r=this.updateAgeOnGet,ttl:n=this.ttl,checkAgeOnGet:i=this.checkAgeOnGet}={}){let o=this.data.get(e);if(i&&this.getRemainingTTL(e)===0){this.delete(e);return}return r&&this.setTTL(e,n),o}dispose(e,r){}delete(e){let r=this.expirationMap.get(e);if(r!==void 0){let n=this.data.get(e);this.data.delete(e),this.expirationMap.delete(e);let i=this.expirations[r];return i&&(i.length<=1?delete this.expirations[r]:this.expirations[r]=i.filter(o=>o!==e)),this.dispose(n,e,"delete"),this.size===0&&this.cancelTimer(),!0}return!1}purgeToCapacity(){for(let e in this.expirations){let r=this.expirations[e];if(this.size-r.length>=this.max){delete this.expirations[e];let n=[];for(let i of r)n.push([i,this.data.get(i)]),this.data.delete(i),this.expirationMap.delete(i);for(let[i,o]of n)this.dispose(o,i,"evict")}else{let n=this.size-this.max,i=[];for(let o of r.splice(0,n))i.push([o,this.data.get(o)]),this.data.delete(o),this.expirationMap.delete(o);for(let[o,s]of i)this.dispose(s,o,"evict");return}}}get size(){return this.data.size}purgeStale(){let e=Math.ceil(jl());for(let r in this.expirations){if(r==="Infinity"||r>e)return;let n=[...this.expirations[r]||[]],i=[];delete this.expirations[r];for(let o of n)i.push([o,this.data.get(o)]),this.data.delete(o),this.expirationMap.delete(o);for(let[o,s]of i)this.dispose(s,o,"stale")}this.size===0&&this.cancelTimer()}*entries(){for(let e in this.expirations)for(let r of this.expirations[e])yield[r,this.data.get(r)]}*keys(){for(let e in this.expirations)for(let r of this.expirations[e])yield r}*values(){for(let e in this.expirations)for(let r of this.expirations[e])yield this.data.get(r)}[Symbol.iterator](){return this.entries()}};c1.exports=og});var T1=oe(A1=>{"use strict";l();A1.supports=function(...e){let r=e.reduce((n,i)=>Object.assign(n,i),{});return Object.assign(r,{snapshots:r.snapshots||!1,permanence:r.permanence||!1,seek:r.seek||!1,clear:r.clear||!1,getMany:r.getMany||!1,keyIterator:r.keyIterator||!1,valueIterator:r.valueIterator||!1,iteratorNextv:r.iteratorNextv||!1,iteratorAll:r.iteratorAll||!1,status:r.status||!1,createIfMissing:r.createIfMissing||!1,errorIfExists:r.errorIfExists||!1,deferredOpen:r.deferredOpen||!1,promises:r.promises||!1,streams:r.streams||!1,encodings:Object.assign({},r.encodings),events:Object.assign({},r.events),additionalMethods:Object.assign({},r.additionalMethods)})}});var vn=oe((fq,_1)=>{"use strict";l();_1.exports=class extends Error{constructor(e,r){super(e||""),typeof r=="object"&&r!==null&&(r.code&&(this.code=String(r.code)),r.expected&&(this.expected=!0),r.transient&&(this.transient=!0),r.cause&&(this.cause=r.cause)),Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)}}});var xg=oe((hq,I1)=>{"use strict";l();var bg=null;I1.exports=function(){return bg===null&&(bg={textEncoder:new TextEncoder,textDecoder:new TextDecoder}),bg}});var Sg=oe(B1=>{"use strict";l();var Eg=vn(),J6=new Set(["buffer","view","utf8"]),vg=class{constructor(e){if(this.encode=e.encode||this.encode,this.decode=e.decode||this.decode,this.name=e.name||this.name,this.format=e.format||this.format,typeof this.encode!="function")throw new TypeError("The 'encode' property must be a function");if(typeof this.decode!="function")throw new TypeError("The 'decode' property must be a function");if(this.encode=this.encode.bind(this),this.decode=this.decode.bind(this),typeof this.name!="string"||this.name==="")throw new TypeError("The 'name' property must be a string");if(typeof this.format!="string"||!J6.has(this.format))throw new TypeError("The 'format' property must be one of 'buffer', 'view', 'utf8'");e.createViewTranscoder&&(this.createViewTranscoder=e.createViewTranscoder),e.createBufferTranscoder&&(this.createBufferTranscoder=e.createBufferTranscoder),e.createUTF8Transcoder&&(this.createUTF8Transcoder=e.createUTF8Transcoder)}get commonName(){return this.name.split("+")[0]}createBufferTranscoder(){throw new Eg(`Encoding '${this.name}' cannot be transcoded to 'buffer'`,{code:"LEVEL_ENCODING_NOT_SUPPORTED"})}createViewTranscoder(){throw new Eg(`Encoding '${this.name}' cannot be transcoded to 'view'`,{code:"LEVEL_ENCODING_NOT_SUPPORTED"})}createUTF8Transcoder(){throw new Eg(`Encoding '${this.name}' cannot be transcoded to 'utf8'`,{code:"LEVEL_ENCODING_NOT_SUPPORTED"})}};B1.Encoding=vg});var Ig=oe(Gl=>{"use strict";l();var{Buffer:Tg}=Tr()||{},{Encoding:_g}=Sg(),X6=xg(),dd=class extends _g{constructor(e){super({...e,format:"buffer"})}createViewTranscoder(){return new fd({encode:this.encode,decode:e=>this.decode(Tg.from(e.buffer,e.byteOffset,e.byteLength)),name:`${this.name}+view`})}createBufferTranscoder(){return this}},fd=class extends _g{constructor(e){super({...e,format:"view"})}createBufferTranscoder(){return new dd({encode:e=>{let r=this.encode(e);return Tg.from(r.buffer,r.byteOffset,r.byteLength)},decode:this.decode,name:`${this.name}+buffer`})}createViewTranscoder(){return this}},Ag=class extends _g{constructor(e){super({...e,format:"utf8"})}createBufferTranscoder(){return new dd({encode:e=>Tg.from(this.encode(e),"utf8"),decode:e=>this.decode(e.toString("utf8")),name:`${this.name}+buffer`})}createViewTranscoder(){let{textEncoder:e,textDecoder:r}=X6();return new fd({encode:n=>e.encode(this.encode(n)),decode:n=>this.decode(r.decode(n)),name:`${this.name}+view`})}createUTF8Transcoder(){return this}};Gl.BufferFormat=dd;Gl.ViewFormat=fd;Gl.UTF8Format=Ag});var D1=oe(Vs=>{"use strict";l();var{Buffer:Xt}=Tr()||{Buffer:{isBuffer:()=>!1}},{textEncoder:U1,textDecoder:R1}=xg()(),{BufferFormat:ld,ViewFormat:Bg,UTF8Format:O1}=Ig(),zl=t=>t;Vs.utf8=new O1({encode:function(t){return Xt.isBuffer(t)?t.toString("utf8"):ArrayBuffer.isView(t)?R1.decode(t):String(t)},decode:zl,name:"utf8",createViewTranscoder(){return new Bg({encode:function(t){return ArrayBuffer.isView(t)?t:U1.encode(t)},decode:function(t){return R1.decode(t)},name:`${this.name}+view`})},createBufferTranscoder(){return new ld({encode:function(t){return Xt.isBuffer(t)?t:ArrayBuffer.isView(t)?Xt.from(t.buffer,t.byteOffset,t.byteLength):Xt.from(String(t),"utf8")},decode:function(t){return t.toString("utf8")},name:`${this.name}+buffer`})}});Vs.json=new O1({encode:JSON.stringify,decode:JSON.parse,name:"json"});Vs.buffer=new ld({encode:function(t){return Xt.isBuffer(t)?t:ArrayBuffer.isView(t)?Xt.from(t.buffer,t.byteOffset,t.byteLength):Xt.from(String(t),"utf8")},decode:zl,name:"buffer",createViewTranscoder(){return new Bg({encode:function(t){return ArrayBuffer.isView(t)?t:Xt.from(String(t),"utf8")},decode:function(t){return Xt.from(t.buffer,t.byteOffset,t.byteLength)},name:`${this.name}+view`})}});Vs.view=new Bg({encode:function(t){return ArrayBuffer.isView(t)?t:U1.encode(t)},decode:zl,name:"view",createBufferTranscoder(){return new ld({encode:function(t){return Xt.isBuffer(t)?t:ArrayBuffer.isView(t)?Xt.from(t.buffer,t.byteOffset,t.byteLength):Xt.from(String(t),"utf8")},decode:zl,name:`${this.name}+buffer`})}});Vs.hex=new ld({encode:function(t){return Xt.isBuffer(t)?t:Xt.from(String(t),"hex")},decode:function(t){return t.toString("hex")},name:"hex"});Vs.base64=new ld({encode:function(t){return Xt.isBuffer(t)?t:Xt.from(String(t),"base64")},decode:function(t){return t.toString("base64")},name:"base64"})});var C1=oe(N1=>{"use strict";l();var k1=vn(),Jl=D1(),{Encoding:Z6}=Sg(),{BufferFormat:Q6,ViewFormat:eU,UTF8Format:tU}=Ig(),hd=Symbol("formats"),Yl=Symbol("encodings"),rU=new Set(["buffer","view","utf8"]),Rg=class{constructor(e){if(Array.isArray(e)){if(!e.every(r=>rU.has(r)))throw new TypeError("Format must be one of 'buffer', 'view', 'utf8'")}else throw new TypeError("The first argument 'formats' must be an array");this[Yl]=new Map,this[hd]=new Set(e);for(let r in Jl)try{this.encoding(r)}catch(n){if(n.code!=="LEVEL_ENCODING_NOT_SUPPORTED")throw n}}encodings(){return Array.from(new Set(this[Yl].values()))}encoding(e){let r=this[Yl].get(e);if(r===void 0){if(typeof e=="string"&&e!==""){if(r=sU[e],!r)throw new k1(`Encoding '${e}' is not found`,{code:"LEVEL_ENCODING_NOT_FOUND"})}else{if(typeof e!="object"||e===null)throw new TypeError("First argument 'encoding' must be a string or object");r=nU(e)}let{name:n,format:i}=r;if(!this[hd].has(i))if(this[hd].has("view"))r=r.createViewTranscoder();else if(this[hd].has("buffer"))r=r.createBufferTranscoder();else if(this[hd].has("utf8"))r=r.createUTF8Transcoder();else throw new k1(`Encoding '${n}' cannot be transcoded`,{code:"LEVEL_ENCODING_NOT_SUPPORTED"});for(let o of[e,n,r.name,r.commonName])this[Yl].set(o,r)}return r}};N1.Transcoder=Rg;function nU(t){if(t instanceof Z6)return t;let e="type"in t&&typeof t.type=="string"?t.type:void 0,r=t.name||e||`anonymous-${cU++}`;switch(iU(t)){case"view":return new eU({...t,name:r});case"utf8":return new tU({...t,name:r});case"buffer":return new Q6({...t,name:r});default:throw new TypeError("Format must be one of 'buffer', 'view', 'utf8'")}}function iU(t){return"format"in t&&t.format!==void 0?t.format:"buffer"in t&&typeof t.buffer=="boolean"?t.buffer?"buffer":"utf8":"code"in t&&Number.isInteger(t.code)?"view":"buffer"}var oU={binary:Jl.buffer,"utf-8":Jl.utf8},sU={...Jl,...oU},cU=0});var ya=oe((Sq,Ug)=>{"use strict";l();var pa=typeof Reflect=="object"?Reflect:null,L1=pa&&typeof pa.apply=="function"?pa.apply:function(e,r,n){return Function.prototype.apply.call(e,r,n)},Xl;pa&&typeof pa.ownKeys=="function"?Xl=pa.ownKeys:Object.getOwnPropertySymbols?Xl=function(e){return Object.getOwnPropertyNames(e).concat(Object.getOwnPropertySymbols(e))}:Xl=function(e){return Object.getOwnPropertyNames(e)};function aU(t){console&&console.warn&&console.warn(t)}var M1=Number.isNaN||function(e){return e!==e};function Pe(){Pe.init.call(this)}Ug.exports=Pe;Ug.exports.once=lU;Pe.EventEmitter=Pe;Pe.prototype._events=void 0;Pe.prototype._eventsCount=0;Pe.prototype._maxListeners=void 0;var P1=10;function Zl(t){if(typeof t!="function")throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof t)}Object.defineProperty(Pe,"defaultMaxListeners",{enumerable:!0,get:function(){return P1},set:function(t){if(typeof t!="number"||t<0||M1(t))throw new RangeError('The value of "defaultMaxListeners" is out of range. It must be a non-negative number. Received '+t+".");P1=t}});Pe.init=function(){(this._events===void 0||this._events===Object.getPrototypeOf(this)._events)&&(this._events=Object.create(null),this._eventsCount=0),this._maxListeners=this._maxListeners||void 0};Pe.prototype.setMaxListeners=function(e){if(typeof e!="number"||e<0||M1(e))throw new RangeError('The value of "n" is out of range. It must be a non-negative number. Received '+e+".");return this._maxListeners=e,this};function K1(t){return t._maxListeners===void 0?Pe.defaultMaxListeners:t._maxListeners}Pe.prototype.getMaxListeners=function(){return K1(this)};Pe.prototype.emit=function(e){for(var r=[],n=1;n<arguments.length;n++)r.push(arguments[n]);var i=e==="error",o=this._events;if(o!==void 0)i=i&&o.error===void 0;else if(!i)return!1;if(i){var s;if(r.length>0&&(s=r[0]),s instanceof Error)throw s;var c=new Error("Unhandled error."+(s?" ("+s.message+")":""));throw c.context=s,c}var a=o[e];if(a===void 0)return!1;if(typeof a=="function")L1(a,this,r);else for(var u=a.length,d=F1(a,u),n=0;n<u;++n)L1(d[n],this,r);return!0};function $1(t,e,r,n){var i,o,s;if(Zl(r),o=t._events,o===void 0?(o=t._events=Object.create(null),t._eventsCount=0):(o.newListener!==void 0&&(t.emit("newListener",e,r.listener?r.listener:r),o=t._events),s=o[e]),s===void 0)s=o[e]=r,++t._eventsCount;else if(typeof s=="function"?s=o[e]=n?[r,s]:[s,r]:n?s.unshift(r):s.push(r),i=K1(t),i>0&&s.length>i&&!s.warned){s.warned=!0;var c=new Error("Possible EventEmitter memory leak detected. "+s.length+" "+String(e)+" listeners added. Use emitter.setMaxListeners() to increase limit");c.name="MaxListenersExceededWarning",c.emitter=t,c.type=e,c.count=s.length,aU(c)}return t}Pe.prototype.addListener=function(e,r){return $1(this,e,r,!1)};Pe.prototype.on=Pe.prototype.addListener;Pe.prototype.prependListener=function(e,r){return $1(this,e,r,!0)};function uU(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,arguments.length===0?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function H1(t,e,r){var n={fired:!1,wrapFn:void 0,target:t,type:e,listener:r},i=uU.bind(n);return i.listener=r,n.wrapFn=i,i}Pe.prototype.once=function(e,r){return Zl(r),this.on(e,H1(this,e,r)),this};Pe.prototype.prependOnceListener=function(e,r){return Zl(r),this.prependListener(e,H1(this,e,r)),this};Pe.prototype.removeListener=function(e,r){var n,i,o,s,c;if(Zl(r),i=this._events,i===void 0)return this;if(n=i[e],n===void 0)return this;if(n===r||n.listener===r)--this._eventsCount===0?this._events=Object.create(null):(delete i[e],i.removeListener&&this.emit("removeListener",e,n.listener||r));else if(typeof n!="function"){for(o=-1,s=n.length-1;s>=0;s--)if(n[s]===r||n[s].listener===r){c=n[s].listener,o=s;break}if(o<0)return this;o===0?n.shift():dU(n,o),n.length===1&&(i[e]=n[0]),i.removeListener!==void 0&&this.emit("removeListener",e,c||r)}return this};Pe.prototype.off=Pe.prototype.removeListener;Pe.prototype.removeAllListeners=function(e){var r,n,i;if(n=this._events,n===void 0)return this;if(n.removeListener===void 0)return arguments.length===0?(this._events=Object.create(null),this._eventsCount=0):n[e]!==void 0&&(--this._eventsCount===0?this._events=Object.create(null):delete n[e]),this;if(arguments.length===0){var o=Object.keys(n),s;for(i=0;i<o.length;++i)s=o[i],s!=="removeListener"&&this.removeAllListeners(s);return this.removeAllListeners("removeListener"),this._events=Object.create(null),this._eventsCount=0,this}if(r=n[e],typeof r=="function")this.removeListener(e,r);else if(r!==void 0)for(i=r.length-1;i>=0;i--)this.removeListener(e,r[i]);return this};function V1(t,e,r){var n=t._events;if(n===void 0)return[];var i=n[e];return i===void 0?[]:typeof i=="function"?r?[i.listener||i]:[i]:r?fU(i):F1(i,i.length)}Pe.prototype.listeners=function(e){return V1(this,e,!0)};Pe.prototype.rawListeners=function(e){return V1(this,e,!1)};Pe.listenerCount=function(t,e){return typeof t.listenerCount=="function"?t.listenerCount(e):q1.call(t,e)};Pe.prototype.listenerCount=q1;function q1(t){var e=this._events;if(e!==void 0){var r=e[t];if(typeof r=="function")return 1;if(r!==void 0)return r.length}return 0}Pe.prototype.eventNames=function(){return this._eventsCount>0?Xl(this._events):[]};function F1(t,e){for(var r=new Array(e),n=0;n<e;++n)r[n]=t[n];return r}function dU(t,e){for(;e+1<t.length;e++)t[e]=t[e+1];t.pop()}function fU(t){for(var e=new Array(t.length),r=0;r<e.length;++r)e[r]=t[r].listener||t[r];return e}function lU(t,e){return new Promise(function(r,n){function i(s){t.removeListener(e,o),n(s)}function o(){typeof t.removeListener=="function"&&t.removeListener("error",i),r([].slice.call(arguments))}j1(t,e,o,{once:!0}),e!=="error"&&hU(t,i,{once:!0})})}function hU(t,e,r){typeof t.on=="function"&&j1(t,"error",e,r)}function j1(t,e,r,n){if(typeof t.on=="function")n.once?t.once(e,r):t.on(e,r);else if(typeof t.addEventListener=="function")t.addEventListener(e,function i(o){n.once&&t.removeEventListener(e,i),r(o)});else throw new TypeError('The "emitter" argument must be of type EventEmitter. Received type '+typeof t)}});var G1=oe((Tq,W1)=>{l();W1.exports=typeof queueMicrotask=="function"?queueMicrotask:t=>Promise.resolve().then(t)});var pd=oe(Og=>{"use strict";l();var z1=G1();Og.fromCallback=function(t,e){if(t===void 0){var r=new Promise(function(n,i){t=function(o,s){o?i(o):n(s)}});t[e!==void 0?e:"promise"]=r}else if(typeof t!="function")throw new TypeError("Callback must be a function");return t};Og.fromPromise=function(t,e){if(e===void 0)return t;t.then(function(r){z1(()=>e(null,r))}).catch(function(r){z1(()=>e(r))})}});var Ql=oe(Dg=>{"use strict";l();Dg.getCallback=function(t,e){return typeof t=="function"?t:e};Dg.getOptions=function(t,e){return typeof t=="object"&&t!==null?t:e!==void 0?e:{}}});var $o=oe(nh=>{"use strict";l();var{fromCallback:kg}=pd(),kr=vn(),{getOptions:Ng,getCallback:Y1}=Ql(),qs=Symbol("promise"),ga=Symbol("callback"),Zn=Symbol("working"),Fs=Symbol("handleOne"),$i=Symbol("handleMany"),Cg=Symbol("autoClose"),Mo=Symbol("finishWork"),Qn=Symbol("returnMany"),Co=Symbol("closing"),yd=Symbol("handleClose"),eh=Symbol("closed"),gd=Symbol("closeCallbacks"),Po=Symbol("keyEncoding"),js=Symbol("valueEncoding"),Lg=Symbol("abortOnClose"),th=Symbol("legacy"),Pg=Symbol("keys"),Mg=Symbol("values"),Lo=Symbol("limit"),tn=Symbol("count"),rh=Object.freeze({}),pU=()=>{},J1=!1,md=class{constructor(e,r,n){if(typeof e!="object"||e===null){let i=e===null?"null":typeof e;throw new TypeError(`The first argument must be an abstract-level database, received ${i}`)}if(typeof r!="object"||r===null)throw new TypeError("The second argument must be an options object");this[eh]=!1,this[gd]=[],this[Zn]=!1,this[Co]=!1,this[Cg]=!1,this[ga]=null,this[Fs]=this[Fs].bind(this),this[$i]=this[$i].bind(this),this[yd]=this[yd].bind(this),this[Po]=r[Po],this[js]=r[js],this[th]=n,this[Lo]=Number.isInteger(r.limit)&&r.limit>=0?r.limit:1/0,this[tn]=0,this[Lg]=!!r.abortOnClose,this.db=e,this.db.attachResource(this),this.nextTick=e.nextTick}get count(){return this[tn]}get limit(){return this[Lo]}next(e){let r;if(e===void 0)r=new Promise((n,i)=>{e=(o,s,c)=>{o?i(o):this[th]?s===void 0&&c===void 0?n():n([s,c]):n(s)}});else if(typeof e!="function")throw new TypeError("Callback must be a function");return this[Co]?this.nextTick(e,new kr("Iterator is not open: cannot call next() after close()",{code:"LEVEL_ITERATOR_NOT_OPEN"})):this[Zn]?this.nextTick(e,new kr("Iterator is busy: cannot call next() until previous call has completed",{code:"LEVEL_ITERATOR_BUSY"})):(this[Zn]=!0,this[ga]=e,this[tn]>=this[Lo]?this.nextTick(this[Fs],null):this._next(this[Fs])),r}_next(e){this.nextTick(e)}nextv(e,r,n){return n=Y1(r,n),n=kg(n,qs),r=Ng(r,rh),Number.isInteger(e)?(this[Co]?this.nextTick(n,new kr("Iterator is not open: cannot call nextv() after close()",{code:"LEVEL_ITERATOR_NOT_OPEN"})):this[Zn]?this.nextTick(n,new kr("Iterator is busy: cannot call nextv() until previous call has completed",{code:"LEVEL_ITERATOR_BUSY"})):(e<1&&(e=1),this[Lo]<1/0&&(e=Math.min(e,this[Lo]-this[tn])),this[Zn]=!0,this[ga]=n,e<=0?this.nextTick(this[$i],null,[]):this._nextv(e,r,this[$i])),n[qs]):(this.nextTick(n,new TypeError("The first argument 'size' must be an integer")),n[qs])}_nextv(e,r,n){let i=[],o=(s,c,a)=>{if(s)return n(s);if(this[th]?c===void 0&&a===void 0:c===void 0)return n(null,i);i.push(this[th]?[c,a]:c),i.length===e?n(null,i):this._next(o)};this._next(o)}all(e,r){return r=Y1(e,r),r=kg(r,qs),e=Ng(e,rh),this[Co]?this.nextTick(r,new kr("Iterator is not open: cannot call all() after close()",{code:"LEVEL_ITERATOR_NOT_OPEN"})):this[Zn]?this.nextTick(r,new kr("Iterator is busy: cannot call all() until previous call has completed",{code:"LEVEL_ITERATOR_BUSY"})):(this[Zn]=!0,this[ga]=r,this[Cg]=!0,this[tn]>=this[Lo]?this.nextTick(this[$i],null,[]):this._all(e,this[$i])),r[qs]}_all(e,r){let n=this[tn],i=[],o=()=>{let c=this[Lo]<1/0?Math.min(1e3,this[Lo]-n):1e3;c<=0?this.nextTick(r,null,i):this._nextv(c,rh,s)},s=(c,a)=>{c?r(c):a.length===0?r(null,i):(i.push.apply(i,a),n+=a.length,o())};o()}[Mo](){let e=this[ga];return this[Lg]&&e===null?pU:(this[Zn]=!1,this[ga]=null,this[Co]&&this._close(this[yd]),e)}[Qn](e,r,n){this[Cg]?this.close(e.bind(null,r,n)):e(r,n)}seek(e,r){if(r=Ng(r,rh),!this[Co]){if(this[Zn])throw new kr("Iterator is busy: cannot call seek() until next() has completed",{code:"LEVEL_ITERATOR_BUSY"});{let n=this.db.keyEncoding(r.keyEncoding||this[Po]),i=n.format;r.keyEncoding!==i&&(r={...r,keyEncoding:i});let o=this.db.prefixKey(n.encode(e),i);this._seek(o,r)}}}_seek(e,r){throw new kr("Iterator does not support seek()",{code:"LEVEL_NOT_SUPPORTED"})}close(e){return e=kg(e,qs),this[eh]?this.nextTick(e):this[Co]?this[gd].push(e):(this[Co]=!0,this[gd].push(e),this[Zn]?this[Lg]&&this[Mo]()(new kr("Aborted on iterator close()",{code:"LEVEL_ITERATOR_NOT_OPEN"})):this._close(this[yd])),e[qs]}_close(e){this.nextTick(e)}[yd](){this[eh]=!0,this.db.detachResource(this);let e=this[gd];this[gd]=[];for(let r of e)r()}async*[Symbol.asyncIterator](){try{let e;for(;(e=await this.next())!==void 0;)yield e}finally{this[eh]||await this.close()}}},ma=class extends md{constructor(e,r){super(e,r,!0),this[Pg]=r.keys!==!1,this[Mg]=r.values!==!1}[Fs](e,r,n){let i=this[Mo]();if(e)return i(e);try{r=this[Pg]&&r!==void 0?this[Po].decode(r):void 0,n=this[Mg]&&n!==void 0?this[js].decode(n):void 0}catch(o){return i(new Ko("entry",o))}r===void 0&&n===void 0||this[tn]++,i(null,r,n)}[$i](e,r){let n=this[Mo]();if(e)return this[Qn](n,e);try{for(let i of r){let o=i[0],s=i[1];i[0]=this[Pg]&&o!==void 0?this[Po].decode(o):void 0,i[1]=this[Mg]&&s!==void 0?this[js].decode(s):void 0}}catch(i){return this[Qn](n,new Ko("entries",i))}this[tn]+=r.length,this[Qn](n,null,r)}end(e){return!J1&&typeof console<"u"&&(J1=!0,console.warn(new kr("The iterator.end() method was renamed to close() and end() is an alias that will be removed in a future version",{code:"LEVEL_LEGACY"}))),this.close(e)}},Kg=class extends md{constructor(e,r){super(e,r,!1)}[Fs](e,r){let n=this[Mo]();if(e)return n(e);try{r=r!==void 0?this[Po].decode(r):void 0}catch(i){return n(new Ko("key",i))}r!==void 0&&this[tn]++,n(null,r)}[$i](e,r){let n=this[Mo]();if(e)return this[Qn](n,e);try{for(let i=0;i<r.length;i++){let o=r[i];r[i]=o!==void 0?this[Po].decode(o):void 0}}catch(i){return this[Qn](n,new Ko("keys",i))}this[tn]+=r.length,this[Qn](n,null,r)}},$g=class extends md{constructor(e,r){super(e,r,!1)}[Fs](e,r){let n=this[Mo]();if(e)return n(e);try{r=r!==void 0?this[js].decode(r):void 0}catch(i){return n(new Ko("value",i))}r!==void 0&&this[tn]++,n(null,r)}[$i](e,r){let n=this[Mo]();if(e)return this[Qn](n,e);try{for(let i=0;i<r.length;i++){let o=r[i];r[i]=o!==void 0?this[js].decode(o):void 0}}catch(i){return this[Qn](n,new Ko("values",i))}this[tn]+=r.length,this[Qn](n,null,r)}},Ko=class extends kr{constructor(e,r){super(`Iterator could not decode ${e}`,{code:"LEVEL_DECODE_ERROR",cause:r})}};for(let t of["_ended property","_nexting property","_end method"])Object.defineProperty(ma.prototype,t.split(" ")[0],{get(){throw new kr(`The ${t} has been removed`,{code:"LEVEL_LEGACY"})},set(){throw new kr(`The ${t} has been removed`,{code:"LEVEL_LEGACY"})}});ma.keyEncoding=Po;ma.valueEncoding=js;nh.AbstractIterator=ma;nh.AbstractKeyIterator=Kg;nh.AbstractValueIterator=$g});var X1=oe(Hg=>{"use strict";l();var{AbstractKeyIterator:yU,AbstractValueIterator:gU}=$o(),Ws=Symbol("iterator"),wd=Symbol("callback"),wa=Symbol("handleOne"),Gs=Symbol("handleMany"),bd=class extends yU{constructor(e,r){super(e,r),this[Ws]=e.iterator({...r,keys:!0,values:!1}),this[wa]=this[wa].bind(this),this[Gs]=this[Gs].bind(this)}},ih=class extends gU{constructor(e,r){super(e,r),this[Ws]=e.iterator({...r,keys:!1,values:!0}),this[wa]=this[wa].bind(this),this[Gs]=this[Gs].bind(this)}};for(let t of[bd,ih]){let e=t===bd,r=e?n=>n[0]:n=>n[1];t.prototype._next=function(n){this[wd]=n,this[Ws].next(this[wa])},t.prototype[wa]=function(n,i,o){let s=this[wd];n?s(n):s(null,e?i:o)},t.prototype._nextv=function(n,i,o){this[wd]=o,this[Ws].nextv(n,i,this[Gs])},t.prototype._all=function(n,i){this[wd]=i,this[Ws].all(n,this[Gs])},t.prototype[Gs]=function(n,i){let o=this[wd];n?o(n):o(null,i.map(r))},t.prototype._seek=function(n,i){this[Ws].seek(n,i)},t.prototype._close=function(n){this[Ws].close(n)}}Hg.DefaultKeyIterator=bd;Hg.DefaultValueIterator=ih});var Z1=oe(dh=>{"use strict";l();var{AbstractIterator:mU,AbstractKeyIterator:wU,AbstractValueIterator:bU}=$o(),Vg=vn(),gr=Symbol("nut"),ah=Symbol("undefer"),uh=Symbol("factory"),oh=class extends mU{constructor(e,r){super(e,r),this[gr]=null,this[uh]=()=>e.iterator(r),this.db.defer(()=>this[ah]())}},sh=class extends wU{constructor(e,r){super(e,r),this[gr]=null,this[uh]=()=>e.keys(r),this.db.defer(()=>this[ah]())}},ch=class extends bU{constructor(e,r){super(e,r),this[gr]=null,this[uh]=()=>e.values(r),this.db.defer(()=>this[ah]())}};for(let t of[oh,sh,ch])t.prototype[ah]=function(){this.db.status==="open"&&(this[gr]=this[uh]())},t.prototype._next=function(e){this[gr]!==null?this[gr].next(e):this.db.status==="opening"?this.db.defer(()=>this._next(e)):this.nextTick(e,new Vg("Iterator is not open: cannot call next() after close()",{code:"LEVEL_ITERATOR_NOT_OPEN"}))},t.prototype._nextv=function(e,r,n){this[gr]!==null?this[gr].nextv(e,r,n):this.db.status==="opening"?this.db.defer(()=>this._nextv(e,r,n)):this.nextTick(n,new Vg("Iterator is not open: cannot call nextv() after close()",{code:"LEVEL_ITERATOR_NOT_OPEN"}))},t.prototype._all=function(e,r){this[gr]!==null?this[gr].all(r):this.db.status==="opening"?this.db.defer(()=>this._all(e,r)):this.nextTick(r,new Vg("Iterator is not open: cannot call all() after close()",{code:"LEVEL_ITERATOR_NOT_OPEN"}))},t.prototype._seek=function(e,r){this[gr]!==null?this[gr]._seek(e,r):this.db.status==="opening"&&this.db.defer(()=>this._seek(e,r))},t.prototype._close=function(e){this[gr]!==null?this[gr].close(e):this.db.status==="opening"?this.db.defer(()=>this._close(e)):this.nextTick(e)};dh.DeferredIterator=oh;dh.DeferredKeyIterator=sh;dh.DeferredValueIterator=ch});var Fg=oe(e2=>{"use strict";l();var{fromCallback:Q1}=pd(),fh=vn(),{getCallback:xU,getOptions:EU}=Ql(),lh=Symbol("promise"),rn=Symbol("status"),ba=Symbol("operations"),xd=Symbol("finishClose"),xa=Symbol("closeCallbacks"),qg=class{constructor(e){if(typeof e!="object"||e===null){let r=e===null?"null":typeof e;throw new TypeError(`The first argument must be an abstract-level database, received ${r}`)}this[ba]=[],this[xa]=[],this[rn]="open",this[xd]=this[xd].bind(this),this.db=e,this.db.attachResource(this),this.nextTick=e.nextTick}get length(){return this[ba].length}put(e,r,n){if(this[rn]!=="open")throw new fh("Batch is not open: cannot call put() after write() or close()",{code:"LEVEL_BATCH_NOT_OPEN"});let i=this.db._checkKey(e)||this.db._checkValue(r);if(i)throw i;let o=n&&n.sublevel!=null?n.sublevel:this.db,s=n,c=o.keyEncoding(n&&n.keyEncoding),a=o.valueEncoding(n&&n.valueEncoding),u=c.format;n={...n,keyEncoding:u,valueEncoding:a.format},o!==this.db&&(n.sublevel=null);let d=o.prefixKey(c.encode(e),u),f=a.encode(r);return this._put(d,f,n),this[ba].push({...s,type:"put",key:e,value:r}),this}_put(e,r,n){}del(e,r){if(this[rn]!=="open")throw new fh("Batch is not open: cannot call del() after write() or close()",{code:"LEVEL_BATCH_NOT_OPEN"});let n=this.db._checkKey(e);if(n)throw n;let i=r&&r.sublevel!=null?r.sublevel:this.db,o=r,s=i.keyEncoding(r&&r.keyEncoding),c=s.format;return r={...r,keyEncoding:c},i!==this.db&&(r.sublevel=null),this._del(i.prefixKey(s.encode(e),c),r),this[ba].push({...o,type:"del",key:e}),this}_del(e,r){}clear(){if(this[rn]!=="open")throw new fh("Batch is not open: cannot call clear() after write() or close()",{code:"LEVEL_BATCH_NOT_OPEN"});return this._clear(),this[ba]=[],this}_clear(){}write(e,r){return r=xU(e,r),r=Q1(r,lh),e=EU(e),this[rn]!=="open"?this.nextTick(r,new fh("Batch is not open: cannot call write() after write() or close()",{code:"LEVEL_BATCH_NOT_OPEN"})):this.length===0?this.close(r):(this[rn]="writing",this._write(e,n=>{this[rn]="closing",this[xa].push(()=>r(n)),n||this.db.emit("batch",this[ba]),this._close(this[xd])})),r[lh]}_write(e,r){}close(e){return e=Q1(e,lh),this[rn]==="closing"?this[xa].push(e):this[rn]==="closed"?this.nextTick(e):(this[xa].push(e),this[rn]!=="writing"&&(this[rn]="closing",this._close(this[xd]))),e[lh]}_close(e){this.nextTick(e)}[xd](){this[rn]="closed",this.db.detachResource(this);let e=this[xa];this[xa]=[];for(let r of e)r()}};e2.AbstractChainedBatch=qg});var r2=oe(t2=>{"use strict";l();var{AbstractChainedBatch:vU}=Fg(),SU=vn(),Ea=Symbol("encoded"),jg=class extends vU{constructor(e){super(e),this[Ea]=[]}_put(e,r,n){this[Ea].push({...n,type:"put",key:e,value:r})}_del(e,r){this[Ea].push({...r,type:"del",key:e})}_clear(){this[Ea]=[]}_write(e,r){this.db.status==="opening"?this.db.defer(()=>this._write(e,r)):this.db.status==="open"?this[Ea].length===0?this.nextTick(r):this.db._batch(this[Ea],e,r):this.nextTick(r,new SU("Batch is not open: cannot call write() after write() or close()",{code:"LEVEL_BATCH_NOT_OPEN"}))}};t2.DefaultChainedBatch=jg});var o2=oe((Hq,i2)=>{"use strict";l();var n2=vn(),AU=Object.prototype.hasOwnProperty,TU=new Set(["lt","lte","gt","gte"]);i2.exports=function(t,e){let r={};for(let n in t)if(AU.call(t,n)&&!(n==="keyEncoding"||n==="valueEncoding")){if(n==="start"||n==="end")throw new n2(`The legacy range option '${n}' has been removed`,{code:"LEVEL_LEGACY"});if(n==="encoding")throw new n2("The levelup-style 'encoding' alias has been removed, use 'valueEncoding' instead",{code:"LEVEL_LEGACY"});TU.has(n)?r[n]=e.encode(t[n]):r[n]=t[n]}return r.reverse=!!r.reverse,r.limit=Number.isInteger(r.limit)&&r.limit>=0?r.limit:-1,r}});var Wg=oe((qq,c2)=>{l();var s2;c2.exports=typeof queueMicrotask=="function"?queueMicrotask.bind(typeof window<"u"?window:globalThis):t=>(s2||(s2=Promise.resolve())).then(t).catch(e=>setTimeout(()=>{throw e},0))});var d2=oe((jq,u2)=>{"use strict";l();var a2=Wg();u2.exports=function(t,...e){e.length===0?a2(t):a2(()=>t(...e))}});var f2=oe(hh=>{"use strict";l();var{AbstractIterator:_U,AbstractKeyIterator:IU,AbstractValueIterator:BU}=$o(),va=Symbol("unfix"),Sn=Symbol("iterator"),zs=Symbol("handleOne"),Ho=Symbol("handleMany"),Hi=Symbol("callback"),Ed=class extends _U{constructor(e,r,n,i){super(e,r),this[Sn]=n,this[va]=i,this[zs]=this[zs].bind(this),this[Ho]=this[Ho].bind(this),this[Hi]=null}[zs](e,r,n){let i=this[Hi];if(e)return i(e);r!==void 0&&(r=this[va](r)),i(e,r,n)}[Ho](e,r){let n=this[Hi];if(e)return n(e);for(let i of r){let o=i[0];o!==void 0&&(i[0]=this[va](o))}n(e,r)}},vd=class extends IU{constructor(e,r,n,i){super(e,r),this[Sn]=n,this[va]=i,this[zs]=this[zs].bind(this),this[Ho]=this[Ho].bind(this),this[Hi]=null}[zs](e,r){let n=this[Hi];if(e)return n(e);r!==void 0&&(r=this[va](r)),n(e,r)}[Ho](e,r){let n=this[Hi];if(e)return n(e);for(let i=0;i<r.length;i++){let o=r[i];o!==void 0&&(r[i]=this[va](o))}n(e,r)}},Sd=class extends BU{constructor(e,r,n){super(e,r),this[Sn]=n}};for(let t of[Ed,vd])t.prototype._next=function(e){this[Hi]=e,this[Sn].next(this[zs])},t.prototype._nextv=function(e,r,n){this[Hi]=n,this[Sn].nextv(e,r,this[Ho])},t.prototype._all=function(e,r){this[Hi]=r,this[Sn].all(e,this[Ho])};for(let t of[Sd])t.prototype._next=function(e){this[Sn].next(e)},t.prototype._nextv=function(e,r,n){this[Sn].nextv(e,r,n)},t.prototype._all=function(e,r){this[Sn].all(e,r)};for(let t of[Ed,vd,Sd])t.prototype._seek=function(e,r){this[Sn].seek(e,r)},t.prototype._close=function(e){this[Sn].close(e)};hh.AbstractSublevelIterator=Ed;hh.AbstractSublevelKeyIterator=vd;hh.AbstractSublevelValueIterator=Sd});var y2=oe((Yq,p2)=>{"use strict";l();var Gg=vn(),{Buffer:Jg}=Tr()||{},{AbstractSublevelIterator:RU,AbstractSublevelKeyIterator:UU,AbstractSublevelValueIterator:OU}=f2(),Vi=Symbol("prefix"),l2=Symbol("upperBound"),Ad=Symbol("prefixRange"),Nr=Symbol("parent"),zg=Symbol("unfix"),h2=new TextEncoder,DU={separator:"!"};p2.exports=function({AbstractLevel:t}){class e extends t{static defaults(n){if(typeof n=="string")throw new Gg("The subleveldown string shorthand for { separator } has been removed",{code:"LEVEL_LEGACY"});if(n&&n.open)throw new Gg("The subleveldown open option has been removed",{code:"LEVEL_LEGACY"});return n==null?DU:n.separator?n:{...n,separator:"!"}}constructor(n,i,o){let{separator:s,manifest:c,...a}=e.defaults(o);i=NU(i,s);let u=s.charCodeAt(0)+1,d=n[Nr]||n;if(!h2.encode(i).every(p=>p>u&&p<127))throw new Gg(`Prefix must use bytes > ${u} < 127`,{code:"LEVEL_INVALID_PREFIX"});super(kU(d,c),a);let f=(n.prefix||"")+s+i+s,h=f.slice(0,-1)+String.fromCharCode(u);this[Nr]=d,this[Vi]=new ph(f),this[l2]=new ph(h),this[zg]=new Xg,this.nextTick=d.nextTick}prefixKey(n,i){if(i==="utf8")return this[Vi].utf8+n;if(n.byteLength===0)return this[Vi][i];if(i==="view"){let o=this[Vi].view,s=new Uint8Array(o.byteLength+n.byteLength);return s.set(o,0),s.set(n,o.byteLength),s}else{let o=this[Vi].buffer;return Jg.concat([o,n],o.byteLength+n.byteLength)}}[Ad](n,i){n.gte!==void 0?n.gte=this.prefixKey(n.gte,i):n.gt!==void 0?n.gt=this.prefixKey(n.gt,i):n.gte=this[Vi][i],n.lte!==void 0?n.lte=this.prefixKey(n.lte,i):n.lt!==void 0?n.lt=this.prefixKey(n.lt,i):n.lte=this[l2][i]}get prefix(){return this[Vi].utf8}get db(){return this[Nr]}_open(n,i){this[Nr].open({passive:!0},i)}_put(n,i,o,s){this[Nr].put(n,i,o,s)}_get(n,i,o){this[Nr].get(n,i,o)}_getMany(n,i,o){this[Nr].getMany(n,i,o)}_del(n,i,o){this[Nr].del(n,i,o)}_batch(n,i,o){this[Nr].batch(n,i,o)}_clear(n,i){this[Ad](n,n.keyEncoding),this[Nr].clear(n,i)}_iterator(n){this[Ad](n,n.keyEncoding);let i=this[Nr].iterator(n),o=this[zg].get(this[Vi].utf8.length,n.keyEncoding);return new RU(this,n,i,o)}_keys(n){this[Ad](n,n.keyEncoding);let i=this[Nr].keys(n),o=this[zg].get(this[Vi].utf8.length,n.keyEncoding);return new UU(this,n,i,o)}_values(n){this[Ad](n,n.keyEncoding);let i=this[Nr].values(n);return new OU(this,n,i)}}return{AbstractSublevel:e}};var kU=function(t,e){return{...t.supports,createIfMissing:!1,errorIfExists:!1,events:{},additionalMethods:{},...e,encodings:{utf8:Yg(t,"utf8"),buffer:Yg(t,"buffer"),view:Yg(t,"view")}}},Yg=function(t,e){return t.supports.encodings[e]?t.keyEncoding(e).name===e:!1},ph=class{constructor(e){this.utf8=e,this.view=h2.encode(e),this.buffer=Jg?Jg.from(this.view.buffer,0,this.view.byteLength):{}}},Xg=class{constructor(){this.cache=new Map}get(e,r){let n=this.cache.get(r);return n===void 0&&(r==="view"?n=(function(i,o){return o.subarray(i)}).bind(null,e):n=(function(i,o){return o.slice(i)}).bind(null,e),this.cache.set(r,n)),n}},NU=function(t,e){let r=0,n=t.length;for(;r<n&&t[r]===e;)r++;for(;n>r&&t[n-1]===e;)n--;return t.slice(r,n)}});var rm=oe(tm=>{"use strict";l();var{supports:CU}=T1(),{Transcoder:LU}=C1(),{EventEmitter:PU}=ya(),{fromCallback:Vo}=pd(),An=vn(),{AbstractIterator:Ys}=$o(),{DefaultKeyIterator:MU,DefaultValueIterator:KU}=X1(),{DeferredIterator:$U,DeferredKeyIterator:HU,DeferredValueIterator:VU}=Z1(),{DefaultChainedBatch:g2}=r2(),{getCallback:Js,getOptions:qo}=Ql(),yh=o2(),pe=Symbol("promise"),qi=Symbol("landed"),Xs=Symbol("resources"),Zg=Symbol("closeResources"),Td=Symbol("operations"),_d=Symbol("undefer"),gh=Symbol("deferOpen"),m2=Symbol("options"),be=Symbol("status"),Zs=Symbol("defaultOptions"),Sa=Symbol("transcoder"),mh=Symbol("keyEncoding"),Qg=Symbol("valueEncoding"),qU=()=>{},Id=class extends PU{constructor(e,r){if(super(),typeof e!="object"||e===null)throw new TypeError("The first argument 'manifest' must be an object");r=qo(r);let{keyEncoding:n,valueEncoding:i,passive:o,...s}=r;this[Xs]=new Set,this[Td]=[],this[gh]=!0,this[m2]=s,this[be]="opening",this.supports=CU(e,{status:!0,promises:!0,clear:!0,getMany:!0,deferredOpen:!0,snapshots:e.snapshots!==!1,permanence:e.permanence!==!1,keyIterator:!0,valueIterator:!0,iteratorNextv:!0,iteratorAll:!0,encodings:e.encodings||{},events:Object.assign({},e.events,{opening:!0,open:!0,closing:!0,closed:!0,put:!0,del:!0,batch:!0,clear:!0})}),this[Sa]=new LU(FU(this)),this[mh]=this[Sa].encoding(n||"utf8"),this[Qg]=this[Sa].encoding(i||"utf8");for(let c of this[Sa].encodings())this.supports.encodings[c.commonName]||(this.supports.encodings[c.commonName]=!0);this[Zs]={empty:Object.freeze({}),entry:Object.freeze({keyEncoding:this[mh].commonName,valueEncoding:this[Qg].commonName}),key:Object.freeze({keyEncoding:this[mh].commonName})},this.nextTick(()=>{this[gh]&&this.open({passive:!1},qU)})}get status(){return this[be]}keyEncoding(e){return this[Sa].encoding(e??this[mh])}valueEncoding(e){return this[Sa].encoding(e??this[Qg])}open(e,r){r=Js(e,r),r=Vo(r,pe),e={...this[m2],...qo(e)},e.createIfMissing=e.createIfMissing!==!1,e.errorIfExists=!!e.errorIfExists;let n=i=>{this[be]==="closing"||this[be]==="opening"?this.once(qi,i?()=>n(i):n):this[be]!=="open"?r(new An("Database is not open",{code:"LEVEL_DATABASE_NOT_OPEN",cause:i})):r()};return e.passive?this[be]==="opening"?this.once(qi,n):this.nextTick(n):this[be]==="closed"||this[gh]?(this[gh]=!1,this[be]="opening",this.emit("opening"),this._open(e,i=>{if(i){this[be]="closed",this[Zg](()=>{this.emit(qi),n(i)}),this[_d]();return}this[be]="open",this[_d](),this.emit(qi),this[be]==="open"&&this.emit("open"),this[be]==="open"&&this.emit("ready"),n()})):this[be]==="open"?this.nextTick(n):this.once(qi,()=>this.open(e,r)),r[pe]}_open(e,r){this.nextTick(r)}close(e){e=Vo(e,pe);let r=n=>{this[be]==="opening"||this[be]==="closing"?this.once(qi,n?r(n):r):this[be]!=="closed"?e(new An("Database is not closed",{code:"LEVEL_DATABASE_NOT_CLOSED",cause:n})):e()};if(this[be]==="open"){this[be]="closing",this.emit("closing");let n=i=>{this[be]="open",this[_d](),this.emit(qi),r(i)};this[Zg](()=>{this._close(i=>{if(i)return n(i);this[be]="closed",this[_d](),this.emit(qi),this[be]==="closed"&&this.emit("closed"),r()})})}else this[be]==="closed"?this.nextTick(r):this.once(qi,()=>this.close(e));return e[pe]}[Zg](e){if(this[Xs].size===0)return this.nextTick(e);let r=this[Xs].size,n=!0,i=()=>{--r===0&&(n?this.nextTick(e):e())};for(let o of this[Xs])o.close(i);n=!1,this[Xs].clear()}_close(e){this.nextTick(e)}get(e,r,n){if(n=Js(r,n),n=Vo(n,pe),r=qo(r,this[Zs].entry),this[be]==="opening")return this.defer(()=>this.get(e,r,n)),n[pe];if(Aa(this,n))return n[pe];let i=this._checkKey(e);if(i)return this.nextTick(n,i),n[pe];let o=this.keyEncoding(r.keyEncoding),s=this.valueEncoding(r.valueEncoding),c=o.format,a=s.format;return(r.keyEncoding!==c||r.valueEncoding!==a)&&(r=Object.assign({},r,{keyEncoding:c,valueEncoding:a})),this._get(this.prefixKey(o.encode(e),c),r,(u,d)=>{if(u)return(u.code==="LEVEL_NOT_FOUND"||u.notFound||/NotFound/i.test(u))&&(u.code||(u.code="LEVEL_NOT_FOUND"),u.notFound||(u.notFound=!0),u.status||(u.status=404)),n(u);try{d=s.decode(d)}catch(f){return n(new An("Could not decode value",{code:"LEVEL_DECODE_ERROR",cause:f}))}n(null,d)}),n[pe]}_get(e,r,n){this.nextTick(n,new Error("NotFound"))}getMany(e,r,n){if(n=Js(r,n),n=Vo(n,pe),r=qo(r,this[Zs].entry),this[be]==="opening")return this.defer(()=>this.getMany(e,r,n)),n[pe];if(Aa(this,n))return n[pe];if(!Array.isArray(e))return this.nextTick(n,new TypeError("The first argument 'keys' must be an array")),n[pe];if(e.length===0)return this.nextTick(n,null,[]),n[pe];let i=this.keyEncoding(r.keyEncoding),o=this.valueEncoding(r.valueEncoding),s=i.format,c=o.format;(r.keyEncoding!==s||r.valueEncoding!==c)&&(r=Object.assign({},r,{keyEncoding:s,valueEncoding:c}));let a=new Array(e.length);for(let u=0;u<e.length;u++){let d=e[u],f=this._checkKey(d);if(f)return this.nextTick(n,f),n[pe];a[u]=this.prefixKey(i.encode(d),s)}return this._getMany(a,r,(u,d)=>{if(u)return n(u);try{for(let f=0;f<d.length;f++)d[f]!==void 0&&(d[f]=o.decode(d[f]))}catch(f){return n(new An(`Could not decode one or more of ${d.length} value(s)`,{code:"LEVEL_DECODE_ERROR",cause:f}))}n(null,d)}),n[pe]}_getMany(e,r,n){this.nextTick(n,null,new Array(e.length).fill(void 0))}put(e,r,n,i){if(i=Js(n,i),i=Vo(i,pe),n=qo(n,this[Zs].entry),this[be]==="opening")return this.defer(()=>this.put(e,r,n,i)),i[pe];if(Aa(this,i))return i[pe];let o=this._checkKey(e)||this._checkValue(r);if(o)return this.nextTick(i,o),i[pe];let s=this.keyEncoding(n.keyEncoding),c=this.valueEncoding(n.valueEncoding),a=s.format,u=c.format;(n.keyEncoding!==a||n.valueEncoding!==u)&&(n=Object.assign({},n,{keyEncoding:a,valueEncoding:u}));let d=this.prefixKey(s.encode(e),a),f=c.encode(r);return this._put(d,f,n,h=>{if(h)return i(h);this.emit("put",e,r),i()}),i[pe]}_put(e,r,n,i){this.nextTick(i)}del(e,r,n){if(n=Js(r,n),n=Vo(n,pe),r=qo(r,this[Zs].key),this[be]==="opening")return this.defer(()=>this.del(e,r,n)),n[pe];if(Aa(this,n))return n[pe];let i=this._checkKey(e);if(i)return this.nextTick(n,i),n[pe];let o=this.keyEncoding(r.keyEncoding),s=o.format;return r.keyEncoding!==s&&(r=Object.assign({},r,{keyEncoding:s})),this._del(this.prefixKey(o.encode(e),s),r,c=>{if(c)return n(c);this.emit("del",e),n()}),n[pe]}_del(e,r,n){this.nextTick(n)}batch(e,r,n){if(!arguments.length){if(this[be]==="opening")return new g2(this);if(this[be]!=="open")throw new An("Database is not open",{code:"LEVEL_DATABASE_NOT_OPEN"});return this._chainedBatch()}if(typeof e=="function"?n=e:n=Js(r,n),n=Vo(n,pe),r=qo(r,this[Zs].empty),this[be]==="opening")return this.defer(()=>this.batch(e,r,n)),n[pe];if(Aa(this,n))return n[pe];if(!Array.isArray(e))return this.nextTick(n,new TypeError("The first argument 'operations' must be an array")),n[pe];if(e.length===0)return this.nextTick(n),n[pe];let i=new Array(e.length),{keyEncoding:o,valueEncoding:s,...c}=r;for(let a=0;a<e.length;a++){if(typeof e[a]!="object"||e[a]===null)return this.nextTick(n,new TypeError("A batch operation must be an object")),n[pe];let u=Object.assign({},e[a]);if(u.type!=="put"&&u.type!=="del")return this.nextTick(n,new TypeError("A batch operation must have a type property that is 'put' or 'del'")),n[pe];let d=this._checkKey(u.key);if(d)return this.nextTick(n,d),n[pe];let f=u.sublevel!=null?u.sublevel:this,h=f.keyEncoding(u.keyEncoding||o),p=h.format;if(u.key=f.prefixKey(h.encode(u.key),p),u.keyEncoding=p,u.type==="put"){let y=this._checkValue(u.value);if(y)return this.nextTick(n,y),n[pe];let g=f.valueEncoding(u.valueEncoding||s);u.value=g.encode(u.value),u.valueEncoding=g.format}f!==this&&(u.sublevel=null),i[a]=u}return this._batch(i,c,a=>{if(a)return n(a);this.emit("batch",e),n()}),n[pe]}_batch(e,r,n){this.nextTick(n)}sublevel(e,r){return this._sublevel(e,em.defaults(r))}_sublevel(e,r){return new em(this,e,r)}prefixKey(e,r){return e}clear(e,r){if(r=Js(e,r),r=Vo(r,pe),e=qo(e,this[Zs].empty),this[be]==="opening")return this.defer(()=>this.clear(e,r)),r[pe];if(Aa(this,r))return r[pe];let n=e,i=this.keyEncoding(e.keyEncoding);return e=yh(e,i),e.keyEncoding=i.format,e.limit===0?this.nextTick(r):this._clear(e,o=>{if(o)return r(o);this.emit("clear",n),r()}),r[pe]}_clear(e,r){this.nextTick(r)}iterator(e){let r=this.keyEncoding(e&&e.keyEncoding),n=this.valueEncoding(e&&e.valueEncoding);if(e=yh(e,r),e.keys=e.keys!==!1,e.values=e.values!==!1,e[Ys.keyEncoding]=r,e[Ys.valueEncoding]=n,e.keyEncoding=r.format,e.valueEncoding=n.format,this[be]==="opening")return new $U(this,e);if(this[be]!=="open")throw new An("Database is not open",{code:"LEVEL_DATABASE_NOT_OPEN"});return this._iterator(e)}_iterator(e){return new Ys(this,e)}keys(e){let r=this.keyEncoding(e&&e.keyEncoding),n=this.valueEncoding(e&&e.valueEncoding);if(e=yh(e,r),e[Ys.keyEncoding]=r,e[Ys.valueEncoding]=n,e.keyEncoding=r.format,e.valueEncoding=n.format,this[be]==="opening")return new HU(this,e);if(this[be]!=="open")throw new An("Database is not open",{code:"LEVEL_DATABASE_NOT_OPEN"});return this._keys(e)}_keys(e){return new MU(this,e)}values(e){let r=this.keyEncoding(e&&e.keyEncoding),n=this.valueEncoding(e&&e.valueEncoding);if(e=yh(e,r),e[Ys.keyEncoding]=r,e[Ys.valueEncoding]=n,e.keyEncoding=r.format,e.valueEncoding=n.format,this[be]==="opening")return new VU(this,e);if(this[be]!=="open")throw new An("Database is not open",{code:"LEVEL_DATABASE_NOT_OPEN"});return this._values(e)}_values(e){return new KU(this,e)}defer(e){if(typeof e!="function")throw new TypeError("The first argument must be a function");this[Td].push(e)}[_d](){if(this[Td].length===0)return;let e=this[Td];this[Td]=[];for(let r of e)r()}attachResource(e){if(typeof e!="object"||e===null||typeof e.close!="function")throw new TypeError("The first argument must be a resource object");this[Xs].add(e)}detachResource(e){this[Xs].delete(e)}_chainedBatch(){return new g2(this)}_checkKey(e){if(e==null)return new An("Key cannot be null or undefined",{code:"LEVEL_INVALID_KEY"})}_checkValue(e){if(e==null)return new An("Value cannot be null or undefined",{code:"LEVEL_INVALID_VALUE"})}};Id.prototype.nextTick=d2();var{AbstractSublevel:em}=y2()({AbstractLevel:Id});tm.AbstractLevel=Id;tm.AbstractSublevel=em;var Aa=function(t,e){return t[be]!=="open"?(t.nextTick(e,new An("Database is not open",{code:"LEVEL_DATABASE_NOT_OPEN"})),!0):!1},FU=function(t){return Object.keys(t.supports.encodings).filter(e=>!!t.supports.encodings[e])}});var nm=oe(Qs=>{"use strict";l();Qs.AbstractLevel=rm().AbstractLevel;Qs.AbstractSublevel=rm().AbstractSublevel;Qs.AbstractIterator=$o().AbstractIterator;Qs.AbstractKeyIterator=$o().AbstractKeyIterator;Qs.AbstractValueIterator=$o().AbstractValueIterator;Qs.AbstractChainedBatch=Fg().AbstractChainedBatch});var b2=oe((tF,w2)=>{l();w2.exports=WU;var jU=Wg();function WU(t,e,r){if(typeof e!="number")throw new Error("second argument must be a Number");let n,i,o,s,c,a=!0,u;Array.isArray(t)?(n=[],o=i=t.length):(s=Object.keys(t),n={},o=i=s.length);function d(h){function p(){r&&r(h,n),r=null}a?jU(p):p()}function f(h,p,y){if(n[h]=y,p&&(c=!0),--o===0||p)d(p);else if(!c&&u<i){let g;s?(g=s[u],u+=1,t[g](function(x,S){f(g,x,S)})):(g=u,u+=1,t[g](function(x,S){f(g,x,S)}))}}u=e,o?s?s.some(function(h,p){return t[h](function(y,g){f(h,y,g)}),p===e-1}):t.some(function(h,p){return h(function(y,g){f(p,y,g)}),p===e-1}):d(null),a=!1}});var im=oe((nF,x2)=>{"use strict";l();x2.exports=function(e){let r=e.gte!==void 0?e.gte:e.gt!==void 0?e.gt:void 0,n=e.lte!==void 0?e.lte:e.lt!==void 0?e.lt:void 0,i=e.gte===void 0,o=e.lte===void 0;return r!==void 0&&n!==void 0?IDBKeyRange.bound(r,n,i,o):r!==void 0?IDBKeyRange.lowerBound(r,i):n!==void 0?IDBKeyRange.upperBound(n,o):null}});var om=oe((oF,E2)=>{"use strict";l();var GU=new TextEncoder;E2.exports=function(t){return t instanceof Uint8Array?t:t instanceof ArrayBuffer?new Uint8Array(t):GU.encode(t)}});var _2=oe(T2=>{"use strict";l();var{AbstractIterator:zU}=nm(),v2=im(),wh=om(),ei=Symbol("cache"),Fi=Symbol("finished"),Cr=Symbol("options"),ji=Symbol("currentOptions"),ec=Symbol("position"),sm=Symbol("location"),Ta=Symbol("first"),S2={},cm=class extends zU{constructor(e,r,n){super(e,n),this[ei]=[],this[Fi]=this.limit===0,this[Cr]=n,this[ji]={...n},this[ec]=void 0,this[sm]=r,this[Ta]=!0}_nextv(e,r,n){if(this[Ta]=!1,this[Fi])return this.nextTick(n,null,[]);if(this[ei].length>0)return e=Math.min(e,this[ei].length),this.nextTick(n,null,this[ei].splice(0,e));this[ec]!==void 0&&(this[Cr].reverse?(this[ji].lt=this[ec],this[ji].lte=void 0):(this[ji].gt=this[ec],this[ji].gte=void 0));let i;try{i=v2(this[ji])}catch{return this[Fi]=!0,this.nextTick(n,null,[])}let o=this.db.db.transaction([this[sm]],"readonly"),s=o.objectStore(this[sm]),c=[];if(this[Cr].reverse){let a=!this[Cr].values&&s.openKeyCursor?"openKeyCursor":"openCursor";s[a](i,"prev").onsuccess=u=>{let d=u.target.result;if(d){let{key:f,value:h}=d;this[ec]=f,c.push([this[Cr].keys&&f!==void 0?wh(f):void 0,this[Cr].values&&h!==void 0?wh(h):void 0]),c.length<e?d.continue():A2(o)}else this[Fi]=!0}}else{let a,u,d=()=>{if(a===void 0||u===void 0)return;let f=Math.max(a.length,u.length);f===0||e===1/0?this[Fi]=!0:this[ec]=a[f-1],c.length=f;for(let h=0;h<f;h++){let p=a[h],y=u[h];c[h]=[this[Cr].keys&&p!==void 0?wh(p):void 0,this[Cr].values&&y!==void 0?wh(y):void 0]}A2(o)};this[Cr].keys||e<1/0?s.getAllKeys(i,e<1/0?e:void 0).onsuccess=f=>{a=f.target.result,d()}:(a=[],this.nextTick(d)),this[Cr].values?s.getAll(i,e<1/0?e:void 0).onsuccess=f=>{u=f.target.result,d()}:(u=[],this.nextTick(d))}o.onabort=()=>{n(o.error||new Error("aborted by user")),n=null},o.oncomplete=()=>{n(null,c),n=null}}_next(e){if(this[ei].length>0){let[r,n]=this[ei].shift();this.nextTick(e,null,r,n)}else if(this[Fi])this.nextTick(e);else{let r=Math.min(100,this.limit-this.count);this[Ta]&&(this[Ta]=!1,r=1),this._nextv(r,S2,(n,i)=>{if(n)return e(n);this[ei]=i,this._next(e)})}}_all(e,r){this[Ta]=!1;let n=this[ei].splice(0,this[ei].length),i=this.limit-this.count-n.length;if(i<=0)return this.nextTick(r,null,n);this._nextv(i,S2,(o,s)=>{if(o)return r(o);n.length>0&&(s=n.concat(s)),r(null,s)})}_seek(e,r){this[Ta]=!0,this[ei]=[],this[Fi]=!1,this[ec]=void 0,this[ji]={...this[Cr]};let n;try{n=v2(this[Cr])}catch{this[Fi]=!0;return}n!==null&&!n.includes(e)?this[Fi]=!0:this[Cr].reverse?this[ji].lte=e:this[ji].gte=e}};T2.Iterator=cm;function A2(t){typeof t.commit=="function"&&t.commit()}});var B2=oe((uF,I2)=>{"use strict";l();I2.exports=function(e,r,n,i,o){if(i.limit===0)return e.nextTick(o);let s=e.db.transaction([r],"readwrite"),c=s.objectStore(r),a=0;s.oncomplete=function(){o()},s.onabort=function(){o(s.error||new Error("aborted by user"))};let u=c.openKeyCursor?"openKeyCursor":"openCursor",d=i.reverse?"prev":"next";c[u](n,d).onsuccess=function(f){let h=f.target.result;h&&(c.delete(h.key).onsuccess=function(){(i.limit<=0||++a<i.limit)&&h.continue()})}}});var N2=oe(k2=>{"use strict";l();var{AbstractLevel:YU}=nm(),R2=vn(),JU=b2(),{fromCallback:XU}=pd(),{Iterator:ZU}=_2(),U2=om(),QU=B2(),eO=im(),D2="level-js-",Bd=Symbol("idb"),am=Symbol("namePrefix"),Wi=Symbol("location"),um=Symbol("version"),tc=Symbol("store"),Rd=Symbol("onComplete"),O2=Symbol("promise"),bh=class extends YU{constructor(e,r,n){if(typeof r=="function"||typeof n=="function")throw new R2("The levelup-style callback argument has been removed",{code:"LEVEL_LEGACY"});let{prefix:i,version:o,...s}=r||{};if(super({encodings:{view:!0},snapshots:!1,createIfMissing:!1,errorIfExists:!1,seek:!0},s),typeof e!="string")throw new Error("constructor requires a location string argument");this[Wi]=e,this[am]=i??D2,this[um]=parseInt(o||1,10),this[Bd]=null}get location(){return this[Wi]}get namePrefix(){return this[am]}get version(){return this[um]}get db(){return this[Bd]}get type(){return"browser-level"}_open(e,r){let n=indexedDB.open(this[am]+this[Wi],this[um]);n.onerror=function(){r(n.error||new Error("unknown error"))},n.onsuccess=()=>{this[Bd]=n.result,r()},n.onupgradeneeded=i=>{let o=i.target.result;o.objectStoreNames.contains(this[Wi])||o.createObjectStore(this[Wi])}}[tc](e){return this[Bd].transaction([this[Wi]],e).objectStore(this[Wi])}[Rd](e,r){let n=e.transaction;n.onabort=function(){r(n.error||new Error("aborted by user"))},n.oncomplete=function(){r(null,e.result)}}_get(e,r,n){let i=this[tc]("readonly"),o;try{o=i.get(e)}catch(s){return this.nextTick(n,s)}this[Rd](o,function(s,c){if(s)return n(s);if(c===void 0)return n(new R2("Entry not found",{code:"LEVEL_NOT_FOUND"}));n(null,U2(c))})}_getMany(e,r,n){let i=this[tc]("readonly"),o=e.map(s=>c=>{let a;try{a=i.get(s)}catch(u){return c(u)}a.onsuccess=()=>{let u=a.result;c(null,u===void 0?u:U2(u))},a.onerror=u=>{u.stopPropagation(),c(a.error)}});JU(o,16,n)}_del(e,r,n){let i=this[tc]("readwrite"),o;try{o=i.delete(e)}catch(s){return this.nextTick(n,s)}this[Rd](o,n)}_put(e,r,n,i){let o=this[tc]("readwrite"),s;try{s=o.put(r,e)}catch(c){return this.nextTick(i,c)}this[Rd](s,i)}_iterator(e){return new ZU(this,this[Wi],e)}_batch(e,r,n){let i=this[tc]("readwrite"),o=i.transaction,s=0,c;o.onabort=function(){n(c||o.error||new Error("aborted by user"))},o.oncomplete=function(){n()};function a(){let u=e[s++],d=u.key,f;try{f=u.type==="del"?i.delete(d):i.put(u.value,d)}catch(h){c=h,o.abort();return}s<e.length?f.onsuccess=a:typeof o.commit=="function"&&o.commit()}a()}_clear(e,r){let n,i;try{n=eO(e)}catch{return this.nextTick(r)}if(e.limit>=0)return QU(this,this[Wi],n,e,r);try{let o=this[tc]("readwrite");i=n?o.delete(n):o.clear()}catch(o){return this.nextTick(r,o)}this[Rd](i,r)}_close(e){this[Bd].close(),this.nextTick(e)}};bh.destroy=function(t,e,r){typeof e=="function"&&(r=e,e=D2),r=XU(r,O2);let n=indexedDB.deleteDatabase(e+t);return n.onsuccess=function(){r()},n.onerror=function(i){r(i)},r[O2]};k2.BrowserLevel=bh});var dm=oe(C2=>{l();C2.Level=N2().BrowserLevel});var nt=oe((xF,L2)=>{"use strict";l();L2.exports={ArrayIsArray(t){return Array.isArray(t)},ArrayPrototypeIncludes(t,e){return t.includes(e)},ArrayPrototypeIndexOf(t,e){return t.indexOf(e)},ArrayPrototypeJoin(t,e){return t.join(e)},ArrayPrototypeMap(t,e){return t.map(e)},ArrayPrototypePop(t,e){return t.pop(e)},ArrayPrototypePush(t,e){return t.push(e)},ArrayPrototypeSlice(t,e,r){return t.slice(e,r)},Error,FunctionPrototypeCall(t,e,...r){return t.call(e,...r)},FunctionPrototypeSymbolHasInstance(t,e){return Function.prototype[Symbol.hasInstance].call(t,e)},MathFloor:Math.floor,Number,NumberIsInteger:Number.isInteger,NumberIsNaN:Number.isNaN,NumberMAX_SAFE_INTEGER:Number.MAX_SAFE_INTEGER,NumberMIN_SAFE_INTEGER:Number.MIN_SAFE_INTEGER,NumberParseInt:Number.parseInt,ObjectDefineProperties(t,e){return Object.defineProperties(t,e)},ObjectDefineProperty(t,e,r){return Object.defineProperty(t,e,r)},ObjectGetOwnPropertyDescriptor(t,e){return Object.getOwnPropertyDescriptor(t,e)},ObjectKeys(t){return Object.keys(t)},ObjectSetPrototypeOf(t,e){return Object.setPrototypeOf(t,e)},Promise,PromisePrototypeCatch(t,e){return t.catch(e)},PromisePrototypeThen(t,e,r){return t.then(e,r)},PromiseReject(t){return Promise.reject(t)},PromiseResolve(t){return Promise.resolve(t)},ReflectApply:Reflect.apply,RegExpPrototypeTest(t,e){return t.test(e)},SafeSet:Set,String,StringPrototypeSlice(t,e,r){return t.slice(e,r)},StringPrototypeToLowerCase(t){return t.toLowerCase()},StringPrototypeToUpperCase(t){return t.toUpperCase()},StringPrototypeTrim(t){return t.trim()},Symbol,SymbolFor:Symbol.for,SymbolAsyncIterator:Symbol.asyncIterator,SymbolHasInstance:Symbol.hasInstance,SymbolIterator:Symbol.iterator,SymbolDispose:Symbol.dispose||Symbol("Symbol.dispose"),SymbolAsyncDispose:Symbol.asyncDispose||Symbol("Symbol.asyncDispose"),TypedArrayPrototypeSet(t,e,r){return t.set(e,r)},Boolean,Uint8Array}});var _a=oe((vF,Eh)=>{"use strict";l();var{AbortController:P2,AbortSignal:rO}=typeof self<"u"?self:typeof window<"u"?window:void 0;Eh.exports=P2;Eh.exports.AbortSignal=rO;Eh.exports.default=P2});var Zt=oe((AF,lm)=>{"use strict";l();var nO=Tr(),{kResistStopPropagation:iO,SymbolDispose:oO}=nt(),sO=globalThis.AbortSignal||_a().AbortSignal,cO=globalThis.AbortController||_a().AbortController,aO=Object.getPrototypeOf(async function(){}).constructor,M2=globalThis.Blob||nO.Blob,uO=typeof M2<"u"?function(e){return e instanceof M2}:function(e){return!1},K2=(t,e)=>{if(t!==void 0&&(t===null||typeof t!="object"||!("aborted"in t)))throw new ERR_INVALID_ARG_TYPE(e,"AbortSignal",t)},dO=(t,e)=>{if(typeof t!="function")throw new ERR_INVALID_ARG_TYPE(e,"Function",t)},fm=class extends Error{constructor(e){if(!Array.isArray(e))throw new TypeError(`Expected input to be an Array, got ${typeof e}`);let r="";for(let n=0;n<e.length;n++)r+=` ${e[n].stack}
|
|
2
|
+
`;super(r),this.name="AggregateError",this.errors=e}};lm.exports={AggregateError:fm,kEmptyObject:Object.freeze({}),once(t){let e=!1;return function(...r){e||(e=!0,t.apply(this,r))}},createDeferredPromise:function(){let t,e;return{promise:new Promise((n,i)=>{t=n,e=i}),resolve:t,reject:e}},promisify(t){return new Promise((e,r)=>{t((n,...i)=>n?r(n):e(...i))})},debuglog(){return function(){}},format(t,...e){return t.replace(/%([sdifj])/g,function(...[r,n]){let i=e.shift();return n==="f"?i.toFixed(6):n==="j"?JSON.stringify(i):n==="s"&&typeof i=="object"?`${i.constructor!==Object?i.constructor.name:""} {}`.trim():i.toString()})},inspect(t){switch(typeof t){case"string":if(t.includes("'"))if(t.includes('"')){if(!t.includes("`")&&!t.includes("${"))return`\`${t}\``}else return`"${t}"`;return`'${t}'`;case"number":return isNaN(t)?"NaN":Object.is(t,-0)?String(t):t;case"bigint":return`${String(t)}n`;case"boolean":case"undefined":return String(t);case"object":return"{}"}},types:{isAsyncFunction(t){return t instanceof aO},isArrayBufferView(t){return ArrayBuffer.isView(t)}},isBlob:uO,deprecate(t,e){return t},addAbortListener:ya().addAbortListener||function(e,r){if(e===void 0)throw new ERR_INVALID_ARG_TYPE("signal","AbortSignal",e);K2(e,"signal"),dO(r,"listener");let n;return e.aborted?queueMicrotask(()=>r()):(e.addEventListener("abort",r,{__proto__:null,once:!0,[iO]:!0}),n=()=>{e.removeEventListener("abort",r)}),{__proto__:null,[oO](){var i;(i=n)===null||i===void 0||i()}}},AbortSignalAny:sO.any||function(e){if(e.length===1)return e[0];let r=new cO,n=()=>r.abort();return e.forEach(i=>{K2(i,"signals"),i.addEventListener("abort",n,{once:!0})}),r.signal.addEventListener("abort",()=>{e.forEach(i=>i.removeEventListener("abort",n))},{once:!0}),r.signal}};lm.exports.promisify.custom=Symbol.for("nodejs.util.promisify.custom")});var sr=oe((_F,V2)=>{"use strict";l();var{format:fO,inspect:vh,AggregateError:lO}=Zt(),hO=globalThis.AggregateError||lO,pO=Symbol("kIsNodeError"),yO=["string","function","number","object","Function","Object","boolean","bigint","symbol"],gO=/^([A-Z][a-z0-9]*)+$/,mO="__node_internal_",Sh={};function nc(t,e){if(!t)throw new Sh.ERR_INTERNAL_ASSERTION(e)}function $2(t){let e="",r=t.length,n=t[0]==="-"?1:0;for(;r>=n+4;r-=3)e=`_${t.slice(r-3,r)}${e}`;return`${t.slice(0,r)}${e}`}function wO(t,e,r){if(typeof e=="function")return nc(e.length<=r.length,`Code: ${t}; The provided arguments length (${r.length}) does not match the required ones (${e.length}).`),e(...r);let n=(e.match(/%[dfijoOs]/g)||[]).length;return nc(n===r.length,`Code: ${t}; The provided arguments length (${r.length}) does not match the required ones (${n}).`),r.length===0?e:fO(e,...r)}function Kt(t,e,r){r||(r=Error);class n extends r{constructor(...o){super(wO(t,e,o))}toString(){return`${this.name} [${t}]: ${this.message}`}}Object.defineProperties(n.prototype,{name:{value:r.name,writable:!0,enumerable:!1,configurable:!0},toString:{value(){return`${this.name} [${t}]: ${this.message}`},writable:!0,enumerable:!1,configurable:!0}}),n.prototype.code=t,n.prototype[pO]=!0,Sh[t]=n}function H2(t){let e=mO+t.name;return Object.defineProperty(t,"name",{value:e}),t}function bO(t,e){if(t&&e&&t!==e){if(Array.isArray(e.errors))return e.errors.push(t),e;let r=new hO([e,t],e.message);return r.code=e.code,r}return t||e}var hm=class extends Error{constructor(e="The operation was aborted",r=void 0){if(r!==void 0&&typeof r!="object")throw new Sh.ERR_INVALID_ARG_TYPE("options","Object",r);super(e,r),this.code="ABORT_ERR",this.name="AbortError"}};Kt("ERR_ASSERTION","%s",Error);Kt("ERR_INVALID_ARG_TYPE",(t,e,r)=>{nc(typeof t=="string","'name' must be a string"),Array.isArray(e)||(e=[e]);let n="The ";t.endsWith(" argument")?n+=`${t} `:n+=`"${t}" ${t.includes(".")?"property":"argument"} `,n+="must be ";let i=[],o=[],s=[];for(let a of e)nc(typeof a=="string","All expected entries have to be of type string"),yO.includes(a)?i.push(a.toLowerCase()):gO.test(a)?o.push(a):(nc(a!=="object",'The value "object" should be written as "Object"'),s.push(a));if(o.length>0){let a=i.indexOf("object");a!==-1&&(i.splice(i,a,1),o.push("Object"))}if(i.length>0){switch(i.length){case 1:n+=`of type ${i[0]}`;break;case 2:n+=`one of type ${i[0]} or ${i[1]}`;break;default:{let a=i.pop();n+=`one of type ${i.join(", ")}, or ${a}`}}(o.length>0||s.length>0)&&(n+=" or ")}if(o.length>0){switch(o.length){case 1:n+=`an instance of ${o[0]}`;break;case 2:n+=`an instance of ${o[0]} or ${o[1]}`;break;default:{let a=o.pop();n+=`an instance of ${o.join(", ")}, or ${a}`}}s.length>0&&(n+=" or ")}switch(s.length){case 0:break;case 1:s[0].toLowerCase()!==s[0]&&(n+="an "),n+=`${s[0]}`;break;case 2:n+=`one of ${s[0]} or ${s[1]}`;break;default:{let a=s.pop();n+=`one of ${s.join(", ")}, or ${a}`}}if(r==null)n+=`. Received ${r}`;else if(typeof r=="function"&&r.name)n+=`. Received function ${r.name}`;else if(typeof r=="object"){var c;if((c=r.constructor)!==null&&c!==void 0&&c.name)n+=`. Received an instance of ${r.constructor.name}`;else{let a=vh(r,{depth:-1});n+=`. Received ${a}`}}else{let a=vh(r,{colors:!1});a.length>25&&(a=`${a.slice(0,25)}...`),n+=`. Received type ${typeof r} (${a})`}return n},TypeError);Kt("ERR_INVALID_ARG_VALUE",(t,e,r="is invalid")=>{let n=vh(e);return n.length>128&&(n=n.slice(0,128)+"..."),`The ${t.includes(".")?"property":"argument"} '${t}' ${r}. Received ${n}`},TypeError);Kt("ERR_INVALID_RETURN_VALUE",(t,e,r)=>{var n;let i=r!=null&&(n=r.constructor)!==null&&n!==void 0&&n.name?`instance of ${r.constructor.name}`:`type ${typeof r}`;return`Expected ${t} to be returned from the "${e}" function but got ${i}.`},TypeError);Kt("ERR_MISSING_ARGS",(...t)=>{nc(t.length>0,"At least one arg needs to be specified");let e,r=t.length;switch(t=(Array.isArray(t)?t:[t]).map(n=>`"${n}"`).join(" or "),r){case 1:e+=`The ${t[0]} argument`;break;case 2:e+=`The ${t[0]} and ${t[1]} arguments`;break;default:{let n=t.pop();e+=`The ${t.join(", ")}, and ${n} arguments`}break}return`${e} must be specified`},TypeError);Kt("ERR_OUT_OF_RANGE",(t,e,r)=>{nc(e,'Missing "range" argument');let n;return Number.isInteger(r)&&Math.abs(r)>2**32?n=$2(String(r)):typeof r=="bigint"?(n=String(r),(r>2n**32n||r<-(2n**32n))&&(n=$2(n)),n+="n"):n=vh(r),`The value of "${t}" is out of range. It must be ${e}. Received ${n}`},RangeError);Kt("ERR_MULTIPLE_CALLBACK","Callback called multiple times",Error);Kt("ERR_METHOD_NOT_IMPLEMENTED","The %s method is not implemented",Error);Kt("ERR_STREAM_ALREADY_FINISHED","Cannot call %s after a stream was finished",Error);Kt("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable",Error);Kt("ERR_STREAM_DESTROYED","Cannot call %s after a stream was destroyed",Error);Kt("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError);Kt("ERR_STREAM_PREMATURE_CLOSE","Premature close",Error);Kt("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF",Error);Kt("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event",Error);Kt("ERR_STREAM_WRITE_AFTER_END","write after end",Error);Kt("ERR_UNKNOWN_ENCODING","Unknown encoding: %s",TypeError);V2.exports={AbortError:hm,aggregateTwoErrors:H2(bO),hideStackFrames:H2,codes:Sh}});var Ba=oe((BF,Z2)=>{"use strict";l();var{ArrayIsArray:ym,ArrayPrototypeIncludes:W2,ArrayPrototypeJoin:G2,ArrayPrototypeMap:xO,NumberIsInteger:gm,NumberIsNaN:EO,NumberMAX_SAFE_INTEGER:vO,NumberMIN_SAFE_INTEGER:SO,NumberParseInt:AO,ObjectPrototypeHasOwnProperty:TO,RegExpPrototypeExec:z2,String:_O,StringPrototypeToUpperCase:IO,StringPrototypeTrim:BO}=nt(),{hideStackFrames:nn,codes:{ERR_SOCKET_BAD_PORT:RO,ERR_INVALID_ARG_TYPE:Qt,ERR_INVALID_ARG_VALUE:Ia,ERR_OUT_OF_RANGE:ic,ERR_UNKNOWN_SIGNAL:q2}}=sr(),{normalizeEncoding:UO}=Zt(),{isAsyncFunction:OO,isArrayBufferView:DO}=Zt().types,F2={};function kO(t){return t===(t|0)}function NO(t){return t===t>>>0}var CO=/^[0-7]+$/,LO="must be a 32-bit unsigned integer or an octal string";function PO(t,e,r){if(typeof t>"u"&&(t=r),typeof t=="string"){if(z2(CO,t)===null)throw new Ia(e,t,LO);t=AO(t,8)}return Y2(t,e),t}var MO=nn((t,e,r=SO,n=vO)=>{if(typeof t!="number")throw new Qt(e,"number",t);if(!gm(t))throw new ic(e,"an integer",t);if(t<r||t>n)throw new ic(e,`>= ${r} && <= ${n}`,t)}),KO=nn((t,e,r=-2147483648,n=2147483647)=>{if(typeof t!="number")throw new Qt(e,"number",t);if(!gm(t))throw new ic(e,"an integer",t);if(t<r||t>n)throw new ic(e,`>= ${r} && <= ${n}`,t)}),Y2=nn((t,e,r=!1)=>{if(typeof t!="number")throw new Qt(e,"number",t);if(!gm(t))throw new ic(e,"an integer",t);let n=r?1:0,i=4294967295;if(t<n||t>i)throw new ic(e,`>= ${n} && <= ${i}`,t)});function mm(t,e){if(typeof t!="string")throw new Qt(e,"string",t)}function $O(t,e,r=void 0,n){if(typeof t!="number")throw new Qt(e,"number",t);if(r!=null&&t<r||n!=null&&t>n||(r!=null||n!=null)&&EO(t))throw new ic(e,`${r!=null?`>= ${r}`:""}${r!=null&&n!=null?" && ":""}${n!=null?`<= ${n}`:""}`,t)}var HO=nn((t,e,r)=>{if(!W2(r,t)){let i="must be one of: "+G2(xO(r,o=>typeof o=="string"?`'${o}'`:_O(o)),", ");throw new Ia(e,t,i)}});function J2(t,e){if(typeof t!="boolean")throw new Qt(e,"boolean",t)}function pm(t,e,r){return t==null||!TO(t,e)?r:t[e]}var VO=nn((t,e,r=null)=>{let n=pm(r,"allowArray",!1),i=pm(r,"allowFunction",!1);if(!pm(r,"nullable",!1)&&t===null||!n&&ym(t)||typeof t!="object"&&(!i||typeof t!="function"))throw new Qt(e,"Object",t)}),qO=nn((t,e)=>{if(t!=null&&typeof t!="object"&&typeof t!="function")throw new Qt(e,"a dictionary",t)}),Ah=nn((t,e,r=0)=>{if(!ym(t))throw new Qt(e,"Array",t);if(t.length<r){let n=`must be longer than ${r}`;throw new Ia(e,t,n)}});function FO(t,e){Ah(t,e);for(let r=0;r<t.length;r++)mm(t[r],`${e}[${r}]`)}function jO(t,e){Ah(t,e);for(let r=0;r<t.length;r++)J2(t[r],`${e}[${r}]`)}function WO(t,e){Ah(t,e);for(let r=0;r<t.length;r++){let n=t[r],i=`${e}[${r}]`;if(n==null)throw new Qt(i,"AbortSignal",n);X2(n,i)}}function GO(t,e="signal"){if(mm(t,e),F2[t]===void 0)throw F2[IO(t)]!==void 0?new q2(t+" (signals must use all capital letters)"):new q2(t)}var zO=nn((t,e="buffer")=>{if(!DO(t))throw new Qt(e,["Buffer","TypedArray","DataView"],t)});function YO(t,e){let r=UO(e),n=t.length;if(r==="hex"&&n%2!==0)throw new Ia("encoding",e,`is invalid for data of length ${n}`)}function JO(t,e="Port",r=!0){if(typeof t!="number"&&typeof t!="string"||typeof t=="string"&&BO(t).length===0||+t!==+t>>>0||t>65535||t===0&&!r)throw new RO(e,t,r);return t|0}var X2=nn((t,e)=>{if(t!==void 0&&(t===null||typeof t!="object"||!("aborted"in t)))throw new Qt(e,"AbortSignal",t)}),XO=nn((t,e)=>{if(typeof t!="function")throw new Qt(e,"Function",t)}),ZO=nn((t,e)=>{if(typeof t!="function"||OO(t))throw new Qt(e,"Function",t)}),QO=nn((t,e)=>{if(t!==void 0)throw new Qt(e,"undefined",t)});function e5(t,e,r){if(!W2(r,t))throw new Qt(e,`('${G2(r,"|")}')`,t)}var t5=/^(?:<[^>]*>)(?:\s*;\s*[^;"\s]+(?:=(")?[^;"\s]*\1)?)*$/;function j2(t,e){if(typeof t>"u"||!z2(t5,t))throw new Ia(e,t,'must be an array or string of format "</styles.css>; rel=preload; as=style"')}function r5(t){if(typeof t=="string")return j2(t,"hints"),t;if(ym(t)){let e=t.length,r="";if(e===0)return r;for(let n=0;n<e;n++){let i=t[n];j2(i,"hints"),r+=i,n!==e-1&&(r+=", ")}return r}throw new Ia("hints",t,'must be an array or string of format "</styles.css>; rel=preload; as=style"')}Z2.exports={isInt32:kO,isUint32:NO,parseFileMode:PO,validateArray:Ah,validateStringArray:FO,validateBooleanArray:jO,validateAbortSignalArray:WO,validateBoolean:J2,validateBuffer:zO,validateDictionary:qO,validateEncoding:YO,validateFunction:XO,validateInt32:KO,validateInteger:MO,validateNumber:$O,validateObject:VO,validateOneOf:HO,validatePlainFunction:ZO,validatePort:JO,validateSignalName:GO,validateString:mm,validateUint32:Y2,validateUndefined:QO,validateUnion:e5,validateAbortSignal:X2,validateLinkHeaderValue:r5}});var ri=oe((UF,hS)=>{"use strict";l();var{SymbolAsyncIterator:Q2,SymbolIterator:eS,SymbolFor:oc}=nt(),tS=oc("nodejs.stream.destroyed"),rS=oc("nodejs.stream.errored"),wm=oc("nodejs.stream.readable"),bm=oc("nodejs.stream.writable"),nS=oc("nodejs.stream.disturbed"),n5=oc("nodejs.webstream.isClosedPromise"),i5=oc("nodejs.webstream.controllerErrorFunction");function Th(t,e=!1){var r;return!!(t&&typeof t.pipe=="function"&&typeof t.on=="function"&&(!e||typeof t.pause=="function"&&typeof t.resume=="function")&&(!t._writableState||((r=t._readableState)===null||r===void 0?void 0:r.readable)!==!1)&&(!t._writableState||t._readableState))}function _h(t){var e;return!!(t&&typeof t.write=="function"&&typeof t.on=="function"&&(!t._readableState||((e=t._writableState)===null||e===void 0?void 0:e.writable)!==!1))}function o5(t){return!!(t&&typeof t.pipe=="function"&&t._readableState&&typeof t.on=="function"&&typeof t.write=="function")}function ti(t){return t&&(t._readableState||t._writableState||typeof t.write=="function"&&typeof t.on=="function"||typeof t.pipe=="function"&&typeof t.on=="function")}function iS(t){return!!(t&&!ti(t)&&typeof t.pipeThrough=="function"&&typeof t.getReader=="function"&&typeof t.cancel=="function")}function oS(t){return!!(t&&!ti(t)&&typeof t.getWriter=="function"&&typeof t.abort=="function")}function sS(t){return!!(t&&!ti(t)&&typeof t.readable=="object"&&typeof t.writable=="object")}function s5(t){return iS(t)||oS(t)||sS(t)}function c5(t,e){return t==null?!1:e===!0?typeof t[Q2]=="function":e===!1?typeof t[eS]=="function":typeof t[Q2]=="function"||typeof t[eS]=="function"}function Ih(t){if(!ti(t))return null;let e=t._writableState,r=t._readableState,n=e||r;return!!(t.destroyed||t[tS]||n!=null&&n.destroyed)}function cS(t){if(!_h(t))return null;if(t.writableEnded===!0)return!0;let e=t._writableState;return e!=null&&e.errored?!1:typeof e?.ended!="boolean"?null:e.ended}function a5(t,e){if(!_h(t))return null;if(t.writableFinished===!0)return!0;let r=t._writableState;return r!=null&&r.errored?!1:typeof r?.finished!="boolean"?null:!!(r.finished||e===!1&&r.ended===!0&&r.length===0)}function u5(t){if(!Th(t))return null;if(t.readableEnded===!0)return!0;let e=t._readableState;return!e||e.errored?!1:typeof e?.ended!="boolean"?null:e.ended}function aS(t,e){if(!Th(t))return null;let r=t._readableState;return r!=null&&r.errored?!1:typeof r?.endEmitted!="boolean"?null:!!(r.endEmitted||e===!1&&r.ended===!0&&r.length===0)}function uS(t){return t&&t[wm]!=null?t[wm]:typeof t?.readable!="boolean"?null:Ih(t)?!1:Th(t)&&t.readable&&!aS(t)}function dS(t){return t&&t[bm]!=null?t[bm]:typeof t?.writable!="boolean"?null:Ih(t)?!1:_h(t)&&t.writable&&!cS(t)}function d5(t,e){return ti(t)?Ih(t)?!0:!(e?.readable!==!1&&uS(t)||e?.writable!==!1&&dS(t)):null}function f5(t){var e,r;return ti(t)?t.writableErrored?t.writableErrored:(e=(r=t._writableState)===null||r===void 0?void 0:r.errored)!==null&&e!==void 0?e:null:null}function l5(t){var e,r;return ti(t)?t.readableErrored?t.readableErrored:(e=(r=t._readableState)===null||r===void 0?void 0:r.errored)!==null&&e!==void 0?e:null:null}function h5(t){if(!ti(t))return null;if(typeof t.closed=="boolean")return t.closed;let e=t._writableState,r=t._readableState;return typeof e?.closed=="boolean"||typeof r?.closed=="boolean"?e?.closed||r?.closed:typeof t._closed=="boolean"&&fS(t)?t._closed:null}function fS(t){return typeof t._closed=="boolean"&&typeof t._defaultKeepAlive=="boolean"&&typeof t._removedConnection=="boolean"&&typeof t._removedContLen=="boolean"}function lS(t){return typeof t._sent100=="boolean"&&fS(t)}function p5(t){var e;return typeof t._consuming=="boolean"&&typeof t._dumped=="boolean"&&((e=t.req)===null||e===void 0?void 0:e.upgradeOrConnect)===void 0}function y5(t){if(!ti(t))return null;let e=t._writableState,r=t._readableState,n=e||r;return!n&&lS(t)||!!(n&&n.autoDestroy&&n.emitClose&&n.closed===!1)}function g5(t){var e;return!!(t&&((e=t[nS])!==null&&e!==void 0?e:t.readableDidRead||t.readableAborted))}function m5(t){var e,r,n,i,o,s,c,a,u,d;return!!(t&&((e=(r=(n=(i=(o=(s=t[rS])!==null&&s!==void 0?s:t.readableErrored)!==null&&o!==void 0?o:t.writableErrored)!==null&&i!==void 0?i:(c=t._readableState)===null||c===void 0?void 0:c.errorEmitted)!==null&&n!==void 0?n:(a=t._writableState)===null||a===void 0?void 0:a.errorEmitted)!==null&&r!==void 0?r:(u=t._readableState)===null||u===void 0?void 0:u.errored)!==null&&e!==void 0?e:!((d=t._writableState)===null||d===void 0)&&d.errored))}hS.exports={isDestroyed:Ih,kIsDestroyed:tS,isDisturbed:g5,kIsDisturbed:nS,isErrored:m5,kIsErrored:rS,isReadable:uS,kIsReadable:wm,kIsClosedPromise:n5,kControllerErrorFunction:i5,kIsWritable:bm,isClosed:h5,isDuplexNodeStream:o5,isFinished:d5,isIterable:c5,isReadableNodeStream:Th,isReadableStream:iS,isReadableEnded:u5,isReadableFinished:aS,isReadableErrored:l5,isNodeStream:ti,isWebStream:s5,isWritable:dS,isWritableNodeStream:_h,isWritableStream:oS,isWritableEnded:cS,isWritableFinished:a5,isWritableErrored:f5,isServerRequest:p5,isServerResponse:lS,willEmitClose:y5,isTransformStream:sS}});var Gi=oe((DF,Am)=>{l();var Fo=Ei(),{AbortError:vS,codes:w5}=sr(),{ERR_INVALID_ARG_TYPE:b5,ERR_STREAM_PREMATURE_CLOSE:pS}=w5,{kEmptyObject:Em,once:vm}=Zt(),{validateAbortSignal:x5,validateFunction:E5,validateObject:v5,validateBoolean:S5}=Ba(),{Promise:A5,PromisePrototypeThen:T5,SymbolDispose:SS}=nt(),{isClosed:_5,isReadable:yS,isReadableNodeStream:xm,isReadableStream:I5,isReadableFinished:gS,isReadableErrored:mS,isWritable:wS,isWritableNodeStream:bS,isWritableStream:B5,isWritableFinished:xS,isWritableErrored:ES,isNodeStream:R5,willEmitClose:U5,kIsClosedPromise:O5}=ri(),Ra;function D5(t){return t.setHeader&&typeof t.abort=="function"}var Sm=()=>{};function AS(t,e,r){var n,i;if(arguments.length===2?(r=e,e=Em):e==null?e=Em:v5(e,"options"),E5(r,"callback"),x5(e.signal,"options.signal"),r=vm(r),I5(t)||B5(t))return k5(t,e,r);if(!R5(t))throw new b5("stream",["ReadableStream","WritableStream","Stream"],t);let o=(n=e.readable)!==null&&n!==void 0?n:xm(t),s=(i=e.writable)!==null&&i!==void 0?i:bS(t),c=t._writableState,a=t._readableState,u=()=>{t.writable||h()},d=U5(t)&&xm(t)===o&&bS(t)===s,f=xS(t,!1),h=()=>{f=!0,t.destroyed&&(d=!1),!(d&&(!t.readable||o))&&(!o||p)&&r.call(t)},p=gS(t,!1),y=()=>{p=!0,t.destroyed&&(d=!1),!(d&&(!t.writable||s))&&(!s||f)&&r.call(t)},g=T=>{r.call(t,T)},x=_5(t),S=()=>{x=!0;let T=ES(t)||mS(t);if(T&&typeof T!="boolean")return r.call(t,T);if(o&&!p&&xm(t,!0)&&!gS(t,!1))return r.call(t,new pS);if(s&&!f&&!xS(t,!1))return r.call(t,new pS);r.call(t)},_=()=>{x=!0;let T=ES(t)||mS(t);if(T&&typeof T!="boolean")return r.call(t,T);r.call(t)},A=()=>{t.req.on("finish",h)};D5(t)?(t.on("complete",h),d||t.on("abort",S),t.req?A():t.on("request",A)):s&&!c&&(t.on("end",u),t.on("close",u)),!d&&typeof t.aborted=="boolean"&&t.on("aborted",S),t.on("end",y),t.on("finish",h),e.error!==!1&&t.on("error",g),t.on("close",S),x?Fo.nextTick(S):c!=null&&c.errorEmitted||a!=null&&a.errorEmitted?d||Fo.nextTick(_):(!o&&(!d||yS(t))&&(f||wS(t)===!1)||!s&&(!d||wS(t))&&(p||yS(t)===!1)||a&&t.req&&t.aborted)&&Fo.nextTick(_);let O=()=>{r=Sm,t.removeListener("aborted",S),t.removeListener("complete",h),t.removeListener("abort",S),t.removeListener("request",A),t.req&&t.req.removeListener("finish",h),t.removeListener("end",u),t.removeListener("close",u),t.removeListener("finish",h),t.removeListener("end",y),t.removeListener("error",g),t.removeListener("close",S)};if(e.signal&&!x){let T=()=>{let M=r;O(),M.call(t,new vS(void 0,{cause:e.signal.reason}))};if(e.signal.aborted)Fo.nextTick(T);else{Ra=Ra||Zt().addAbortListener;let M=Ra(e.signal,T),q=r;r=vm((...j)=>{M[SS](),q.apply(t,j)})}}return O}function k5(t,e,r){let n=!1,i=Sm;if(e.signal)if(i=()=>{n=!0,r.call(t,new vS(void 0,{cause:e.signal.reason}))},e.signal.aborted)Fo.nextTick(i);else{Ra=Ra||Zt().addAbortListener;let s=Ra(e.signal,i),c=r;r=vm((...a)=>{s[SS](),c.apply(t,a)})}let o=(...s)=>{n||Fo.nextTick(()=>r.apply(t,s))};return T5(t[O5].promise,o,o),Sm}function N5(t,e){var r;let n=!1;return e===null&&(e=Em),(r=e)!==null&&r!==void 0&&r.cleanup&&(S5(e.cleanup,"cleanup"),n=e.cleanup),new A5((i,o)=>{let s=AS(t,e,c=>{n&&s(),c?o(c):i()})})}Am.exports=AS;Am.exports.finished=N5});var sc=oe((NF,DS)=>{"use strict";l();var ni=Ei(),{aggregateTwoErrors:C5,codes:{ERR_MULTIPLE_CALLBACK:L5},AbortError:P5}=sr(),{Symbol:IS}=nt(),{kIsDestroyed:M5,isDestroyed:K5,isFinished:$5,isServerRequest:H5}=ri(),BS=IS("kDestroy"),Tm=IS("kConstruct");function RS(t,e,r){t&&(t.stack,e&&!e.errored&&(e.errored=t),r&&!r.errored&&(r.errored=t))}function V5(t,e){let r=this._readableState,n=this._writableState,i=n||r;return n!=null&&n.destroyed||r!=null&&r.destroyed?(typeof e=="function"&&e(),this):(RS(t,n,r),n&&(n.destroyed=!0),r&&(r.destroyed=!0),i.constructed?TS(this,t,e):this.once(BS,function(o){TS(this,C5(o,t),e)}),this)}function TS(t,e,r){let n=!1;function i(o){if(n)return;n=!0;let s=t._readableState,c=t._writableState;RS(o,c,s),c&&(c.closed=!0),s&&(s.closed=!0),typeof r=="function"&&r(o),o?ni.nextTick(q5,t,o):ni.nextTick(US,t)}try{t._destroy(e||null,i)}catch(o){i(o)}}function q5(t,e){_m(t,e),US(t)}function US(t){let e=t._readableState,r=t._writableState;r&&(r.closeEmitted=!0),e&&(e.closeEmitted=!0),(r!=null&&r.emitClose||e!=null&&e.emitClose)&&t.emit("close")}function _m(t,e){let r=t._readableState,n=t._writableState;n!=null&&n.errorEmitted||r!=null&&r.errorEmitted||(n&&(n.errorEmitted=!0),r&&(r.errorEmitted=!0),t.emit("error",e))}function F5(){let t=this._readableState,e=this._writableState;t&&(t.constructed=!0,t.closed=!1,t.closeEmitted=!1,t.destroyed=!1,t.errored=null,t.errorEmitted=!1,t.reading=!1,t.ended=t.readable===!1,t.endEmitted=t.readable===!1),e&&(e.constructed=!0,e.destroyed=!1,e.closed=!1,e.closeEmitted=!1,e.errored=null,e.errorEmitted=!1,e.finalCalled=!1,e.prefinished=!1,e.ended=e.writable===!1,e.ending=e.writable===!1,e.finished=e.writable===!1)}function Im(t,e,r){let n=t._readableState,i=t._writableState;if(i!=null&&i.destroyed||n!=null&&n.destroyed)return this;n!=null&&n.autoDestroy||i!=null&&i.autoDestroy?t.destroy(e):e&&(e.stack,i&&!i.errored&&(i.errored=e),n&&!n.errored&&(n.errored=e),r?ni.nextTick(_m,t,e):_m(t,e))}function j5(t,e){if(typeof t._construct!="function")return;let r=t._readableState,n=t._writableState;r&&(r.constructed=!1),n&&(n.constructed=!1),t.once(Tm,e),!(t.listenerCount(Tm)>1)&&ni.nextTick(W5,t)}function W5(t){let e=!1;function r(n){if(e){Im(t,n??new L5);return}e=!0;let i=t._readableState,o=t._writableState,s=o||i;i&&(i.constructed=!0),o&&(o.constructed=!0),s.destroyed?t.emit(BS,n):n?Im(t,n,!0):ni.nextTick(G5,t)}try{t._construct(n=>{ni.nextTick(r,n)})}catch(n){ni.nextTick(r,n)}}function G5(t){t.emit(Tm)}function _S(t){return t?.setHeader&&typeof t.abort=="function"}function OS(t){t.emit("close")}function z5(t,e){t.emit("error",e),ni.nextTick(OS,t)}function Y5(t,e){!t||K5(t)||(!e&&!$5(t)&&(e=new P5),H5(t)?(t.socket=null,t.destroy(e)):_S(t)?t.abort():_S(t.req)?t.req.abort():typeof t.destroy=="function"?t.destroy(e):typeof t.close=="function"?t.close():e?ni.nextTick(z5,t,e):ni.nextTick(OS,t),t.destroyed||(t[M5]=!0))}DS.exports={construct:j5,destroyer:Y5,destroy:V5,undestroy:F5,errorOrDestroy:Im}});var Uh=oe((LF,NS)=>{"use strict";l();var{ArrayIsArray:J5,ObjectSetPrototypeOf:kS}=nt(),{EventEmitter:Bh}=ya();function Rh(t){Bh.call(this,t)}kS(Rh.prototype,Bh.prototype);kS(Rh,Bh);Rh.prototype.pipe=function(t,e){let r=this;function n(d){t.writable&&t.write(d)===!1&&r.pause&&r.pause()}r.on("data",n);function i(){r.readable&&r.resume&&r.resume()}t.on("drain",i),!t._isStdio&&(!e||e.end!==!1)&&(r.on("end",s),r.on("close",c));let o=!1;function s(){o||(o=!0,t.end())}function c(){o||(o=!0,typeof t.destroy=="function"&&t.destroy())}function a(d){u(),Bh.listenerCount(this,"error")===0&&this.emit("error",d)}Bm(r,"error",a),Bm(t,"error",a);function u(){r.removeListener("data",n),t.removeListener("drain",i),r.removeListener("end",s),r.removeListener("close",c),r.removeListener("error",a),t.removeListener("error",a),r.removeListener("end",u),r.removeListener("close",u),t.removeListener("close",u)}return r.on("end",u),r.on("close",u),t.on("close",u),t.emit("pipe",r),t};function Bm(t,e,r){if(typeof t.prependListener=="function")return t.prependListener(e,r);!t._events||!t._events[e]?t.on(e,r):J5(t._events[e])?t._events[e].unshift(r):t._events[e]=[r,t._events[e]]}NS.exports={Stream:Rh,prependListener:Bm}});var Ud=oe((MF,Oh)=>{"use strict";l();var{SymbolDispose:X5}=nt(),{AbortError:CS,codes:Z5}=sr(),{isNodeStream:LS,isWebStream:Q5,kControllerErrorFunction:e3}=ri(),t3=Gi(),{ERR_INVALID_ARG_TYPE:PS}=Z5,Rm,r3=(t,e)=>{if(typeof t!="object"||!("aborted"in t))throw new PS(e,"AbortSignal",t)};Oh.exports.addAbortSignal=function(e,r){if(r3(e,"signal"),!LS(r)&&!Q5(r))throw new PS("stream",["ReadableStream","WritableStream","Stream"],r);return Oh.exports.addAbortSignalNoValidate(e,r)};Oh.exports.addAbortSignalNoValidate=function(t,e){if(typeof t!="object"||!("aborted"in t))return e;let r=LS(e)?()=>{e.destroy(new CS(void 0,{cause:t.reason}))}:()=>{e[e3](new CS(void 0,{cause:t.reason}))};if(t.aborted)r();else{Rm=Rm||Zt().addAbortListener;let n=Rm(t,r);t3(e,n[X5])}return e}});var $S=oe((HF,KS)=>{"use strict";l();var{StringPrototypeSlice:MS,SymbolIterator:n3,TypedArrayPrototypeSet:Dh,Uint8Array:i3}=nt(),{Buffer:Um}=Tr(),{inspect:o3}=Zt();KS.exports=class{constructor(){this.head=null,this.tail=null,this.length=0}push(e){let r={data:e,next:null};this.length>0?this.tail.next=r:this.head=r,this.tail=r,++this.length}unshift(e){let r={data:e,next:this.head};this.length===0&&(this.tail=r),this.head=r,++this.length}shift(){if(this.length===0)return;let e=this.head.data;return this.length===1?this.head=this.tail=null:this.head=this.head.next,--this.length,e}clear(){this.head=this.tail=null,this.length=0}join(e){if(this.length===0)return"";let r=this.head,n=""+r.data;for(;(r=r.next)!==null;)n+=e+r.data;return n}concat(e){if(this.length===0)return Um.alloc(0);let r=Um.allocUnsafe(e>>>0),n=this.head,i=0;for(;n;)Dh(r,n.data,i),i+=n.data.length,n=n.next;return r}consume(e,r){let n=this.head.data;if(e<n.length){let i=n.slice(0,e);return this.head.data=n.slice(e),i}return e===n.length?this.shift():r?this._getString(e):this._getBuffer(e)}first(){return this.head.data}*[n3](){for(let e=this.head;e;e=e.next)yield e.data}_getString(e){let r="",n=this.head,i=0;do{let o=n.data;if(e>o.length)r+=o,e-=o.length;else{e===o.length?(r+=o,++i,n.next?this.head=n.next:this.head=this.tail=null):(r+=MS(o,0,e),this.head=n,n.data=MS(o,e));break}++i}while((n=n.next)!==null);return this.length-=i,r}_getBuffer(e){let r=Um.allocUnsafe(e),n=e,i=this.head,o=0;do{let s=i.data;if(e>s.length)Dh(r,s,n-e),e-=s.length;else{e===s.length?(Dh(r,s,n-e),++o,i.next?this.head=i.next:this.head=this.tail=null):(Dh(r,new i3(s.buffer,s.byteOffset,e),n-e),this.head=i,i.data=s.slice(e));break}++o}while((i=i.next)!==null);return this.length-=o,r}[Symbol.for("nodejs.util.inspect.custom")](e,r){return o3(this,{...r,depth:0,customInspect:!1})}}});var Od=oe((qF,FS)=>{"use strict";l();var{MathFloor:s3,NumberIsInteger:c3}=nt(),{validateInteger:a3}=Ba(),{ERR_INVALID_ARG_VALUE:u3}=sr().codes,HS=16*1024,VS=16;function d3(t,e,r){return t.highWaterMark!=null?t.highWaterMark:e?t[r]:null}function qS(t){return t?VS:HS}function f3(t,e){a3(e,"value",0),t?VS=e:HS=e}function l3(t,e,r,n){let i=d3(e,n,r);if(i!=null){if(!c3(i)||i<0){let o=n?`options.${r}`:"options.highWaterMark";throw new u3(o,i)}return s3(i)}return qS(t.objectMode)}FS.exports={getHighWaterMark:l3,getDefaultHighWaterMark:qS,setDefaultHighWaterMark:f3}});var GS=oe((Om,WS)=>{l();var kh=Tr(),ii=kh.Buffer;function jS(t,e){for(var r in t)e[r]=t[r]}ii.from&&ii.alloc&&ii.allocUnsafe&&ii.allocUnsafeSlow?WS.exports=kh:(jS(kh,Om),Om.Buffer=cc);function cc(t,e,r){return ii(t,e,r)}cc.prototype=Object.create(ii.prototype);jS(ii,cc);cc.from=function(t,e,r){if(typeof t=="number")throw new TypeError("Argument must not be a number");return ii(t,e,r)};cc.alloc=function(t,e,r){if(typeof t!="number")throw new TypeError("Argument must be a number");var n=ii(t);return e!==void 0?typeof r=="string"?n.fill(e,r):n.fill(e):n.fill(0),n};cc.allocUnsafe=function(t){if(typeof t!="number")throw new TypeError("Argument must be a number");return ii(t)};cc.allocUnsafeSlow=function(t){if(typeof t!="number")throw new TypeError("Argument must be a number");return kh.SlowBuffer(t)}});var JS=oe(YS=>{"use strict";l();var km=GS().Buffer,zS=km.isEncoding||function(t){switch(t=""+t,t&&t.toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":case"raw":return!0;default:return!1}};function h3(t){if(!t)return"utf8";for(var e;;)switch(t){case"utf8":case"utf-8":return"utf8";case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return"utf16le";case"latin1":case"binary":return"latin1";case"base64":case"ascii":case"hex":return t;default:if(e)return;t=(""+t).toLowerCase(),e=!0}}function p3(t){var e=h3(t);if(typeof e!="string"&&(km.isEncoding===zS||!zS(t)))throw new Error("Unknown encoding: "+t);return e||t}YS.StringDecoder=Dd;function Dd(t){this.encoding=p3(t);var e;switch(this.encoding){case"utf16le":this.text=x3,this.end=E3,e=4;break;case"utf8":this.fillLast=m3,e=4;break;case"base64":this.text=v3,this.end=S3,e=3;break;default:this.write=A3,this.end=T3;return}this.lastNeed=0,this.lastTotal=0,this.lastChar=km.allocUnsafe(e)}Dd.prototype.write=function(t){if(t.length===0)return"";var e,r;if(this.lastNeed){if(e=this.fillLast(t),e===void 0)return"";r=this.lastNeed,this.lastNeed=0}else r=0;return r<t.length?e?e+this.text(t,r):this.text(t,r):e||""};Dd.prototype.end=b3;Dd.prototype.text=w3;Dd.prototype.fillLast=function(t){if(this.lastNeed<=t.length)return t.copy(this.lastChar,this.lastTotal-this.lastNeed,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);t.copy(this.lastChar,this.lastTotal-this.lastNeed,0,t.length),this.lastNeed-=t.length};function Dm(t){return t<=127?0:t>>5===6?2:t>>4===14?3:t>>3===30?4:t>>6===2?-1:-2}function y3(t,e,r){var n=e.length-1;if(n<r)return 0;var i=Dm(e[n]);return i>=0?(i>0&&(t.lastNeed=i-1),i):--n<r||i===-2?0:(i=Dm(e[n]),i>=0?(i>0&&(t.lastNeed=i-2),i):--n<r||i===-2?0:(i=Dm(e[n]),i>=0?(i>0&&(i===2?i=0:t.lastNeed=i-3),i):0))}function g3(t,e,r){if((e[0]&192)!==128)return t.lastNeed=0,"\uFFFD";if(t.lastNeed>1&&e.length>1){if((e[1]&192)!==128)return t.lastNeed=1,"\uFFFD";if(t.lastNeed>2&&e.length>2&&(e[2]&192)!==128)return t.lastNeed=2,"\uFFFD"}}function m3(t){var e=this.lastTotal-this.lastNeed,r=g3(this,t,e);if(r!==void 0)return r;if(this.lastNeed<=t.length)return t.copy(this.lastChar,e,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);t.copy(this.lastChar,e,0,t.length),this.lastNeed-=t.length}function w3(t,e){var r=y3(this,t,e);if(!this.lastNeed)return t.toString("utf8",e);this.lastTotal=r;var n=t.length-(r-this.lastNeed);return t.copy(this.lastChar,0,n),t.toString("utf8",e,n)}function b3(t){var e=t&&t.length?this.write(t):"";return this.lastNeed?e+"\uFFFD":e}function x3(t,e){if((t.length-e)%2===0){var r=t.toString("utf16le",e);if(r){var n=r.charCodeAt(r.length-1);if(n>=55296&&n<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=t[t.length-2],this.lastChar[1]=t[t.length-1],r.slice(0,-1)}return r}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=t[t.length-1],t.toString("utf16le",e,t.length-1)}function E3(t){var e=t&&t.length?this.write(t):"";if(this.lastNeed){var r=this.lastTotal-this.lastNeed;return e+this.lastChar.toString("utf16le",0,r)}return e}function v3(t,e){var r=(t.length-e)%3;return r===0?t.toString("base64",e):(this.lastNeed=3-r,this.lastTotal=3,r===1?this.lastChar[0]=t[t.length-1]:(this.lastChar[0]=t[t.length-2],this.lastChar[1]=t[t.length-1]),t.toString("base64",e,t.length-r))}function S3(t){var e=t&&t.length?this.write(t):"";return this.lastNeed?e+this.lastChar.toString("base64",0,3-this.lastNeed):e}function A3(t){return t.toString(this.encoding)}function T3(t){return t&&t.length?this.write(t):""}});var Nm=oe((zF,eA)=>{"use strict";l();var XS=Ei(),{PromisePrototypeThen:_3,SymbolAsyncIterator:ZS,SymbolIterator:QS}=nt(),{Buffer:I3}=Tr(),{ERR_INVALID_ARG_TYPE:B3,ERR_STREAM_NULL_VALUES:R3}=sr().codes;function U3(t,e,r){let n;if(typeof e=="string"||e instanceof I3)return new t({objectMode:!0,...r,read(){this.push(e),this.push(null)}});let i;if(e&&e[ZS])i=!0,n=e[ZS]();else if(e&&e[QS])i=!1,n=e[QS]();else throw new B3("iterable",["Iterable"],e);let o=new t({objectMode:!0,highWaterMark:1,...r}),s=!1;o._read=function(){s||(s=!0,a())},o._destroy=function(u,d){_3(c(u),()=>XS.nextTick(d,u),f=>XS.nextTick(d,f||u))};async function c(u){let d=u!=null,f=typeof n.throw=="function";if(d&&f){let{value:h,done:p}=await n.throw(u);if(await h,p)return}if(typeof n.return=="function"){let{value:h}=await n.return();await h}}async function a(){for(;;){try{let{value:u,done:d}=i?await n.next():n.next();if(d)o.push(null);else{let f=u&&typeof u.then=="function"?await u:u;if(f===null)throw s=!1,new R3;if(o.push(f))continue;s=!1}}catch(u){o.destroy(u)}break}}return o}eA.exports=U3});var Nd=oe((JF,wA)=>{l();var Tn=Ei(),{ArrayPrototypeIndexOf:O3,NumberIsInteger:D3,NumberIsNaN:k3,NumberParseInt:N3,ObjectDefineProperties:Vm,ObjectKeys:C3,ObjectSetPrototypeOf:nA,Promise:iA,SafeSet:L3,SymbolAsyncDispose:P3,SymbolAsyncIterator:M3,Symbol:K3}=nt();wA.exports=ye;ye.ReadableState=Ph;var{EventEmitter:$3}=ya(),{Stream:jo,prependListener:H3}=Uh(),{Buffer:Cm}=Tr(),{addAbortSignal:V3}=Ud(),oA=Gi(),Ee=Zt().debuglog("stream",t=>{Ee=t}),q3=$S(),Da=sc(),{getHighWaterMark:F3,getDefaultHighWaterMark:j3}=Od(),{aggregateTwoErrors:tA,codes:{ERR_INVALID_ARG_TYPE:W3,ERR_METHOD_NOT_IMPLEMENTED:G3,ERR_OUT_OF_RANGE:z3,ERR_STREAM_PUSH_AFTER_EOF:Y3,ERR_STREAM_UNSHIFT_AFTER_END_EVENT:J3},AbortError:X3}=sr(),{validateObject:Z3}=Ba(),ac=K3("kPaused"),{StringDecoder:sA}=JS(),Q3=Nm();nA(ye.prototype,jo.prototype);nA(ye,jo);var Lm=()=>{},{errorOrDestroy:Ua}=Da,Oa=1,eD=2,cA=4,kd=8,aA=16,Nh=32,Ch=64,uA=128,tD=256,rD=512,nD=1024,$m=2048,Hm=4096,iD=8192,oD=16384,sD=32768,dA=65536,cD=1<<17,aD=1<<18;function Tt(t){return{enumerable:!1,get(){return(this.state&t)!==0},set(e){e?this.state|=t:this.state&=~t}}}Vm(Ph.prototype,{objectMode:Tt(Oa),ended:Tt(eD),endEmitted:Tt(cA),reading:Tt(kd),constructed:Tt(aA),sync:Tt(Nh),needReadable:Tt(Ch),emittedReadable:Tt(uA),readableListening:Tt(tD),resumeScheduled:Tt(rD),errorEmitted:Tt(nD),emitClose:Tt($m),autoDestroy:Tt(Hm),destroyed:Tt(iD),closed:Tt(oD),closeEmitted:Tt(sD),multiAwaitDrain:Tt(dA),readingMore:Tt(cD),dataEmitted:Tt(aD)});function Ph(t,e,r){typeof r!="boolean"&&(r=e instanceof oi()),this.state=$m|Hm|aA|Nh,t&&t.objectMode&&(this.state|=Oa),r&&t&&t.readableObjectMode&&(this.state|=Oa),this.highWaterMark=t?F3(this,t,"readableHighWaterMark",r):j3(!1),this.buffer=new q3,this.length=0,this.pipes=[],this.flowing=null,this[ac]=null,t&&t.emitClose===!1&&(this.state&=~$m),t&&t.autoDestroy===!1&&(this.state&=~Hm),this.errored=null,this.defaultEncoding=t&&t.defaultEncoding||"utf8",this.awaitDrainWriters=null,this.decoder=null,this.encoding=null,t&&t.encoding&&(this.decoder=new sA(t.encoding),this.encoding=t.encoding)}function ye(t){if(!(this instanceof ye))return new ye(t);let e=this instanceof oi();this._readableState=new Ph(t,this,e),t&&(typeof t.read=="function"&&(this._read=t.read),typeof t.destroy=="function"&&(this._destroy=t.destroy),typeof t.construct=="function"&&(this._construct=t.construct),t.signal&&!e&&V3(t.signal,this)),jo.call(this,t),Da.construct(this,()=>{this._readableState.needReadable&&Lh(this,this._readableState)})}ye.prototype.destroy=Da.destroy;ye.prototype._undestroy=Da.undestroy;ye.prototype._destroy=function(t,e){e(t)};ye.prototype[$3.captureRejectionSymbol]=function(t){this.destroy(t)};ye.prototype[P3]=function(){let t;return this.destroyed||(t=this.readableEnded?null:new X3,this.destroy(t)),new iA((e,r)=>oA(this,n=>n&&n!==t?r(n):e(null)))};ye.prototype.push=function(t,e){return fA(this,t,e,!1)};ye.prototype.unshift=function(t,e){return fA(this,t,e,!0)};function fA(t,e,r,n){Ee("readableAddChunk",e);let i=t._readableState,o;if(i.state&Oa||(typeof e=="string"?(r=r||i.defaultEncoding,i.encoding!==r&&(n&&i.encoding?e=Cm.from(e,r).toString(i.encoding):(e=Cm.from(e,r),r=""))):e instanceof Cm?r="":jo._isUint8Array(e)?(e=jo._uint8ArrayToBuffer(e),r=""):e!=null&&(o=new W3("chunk",["string","Buffer","Uint8Array"],e))),o)Ua(t,o);else if(e===null)i.state&=~kd,fD(t,i);else if(i.state&Oa||e&&e.length>0)if(n)if(i.state&cA)Ua(t,new J3);else{if(i.destroyed||i.errored)return!1;Pm(t,i,e,!0)}else if(i.ended)Ua(t,new Y3);else{if(i.destroyed||i.errored)return!1;i.state&=~kd,i.decoder&&!r?(e=i.decoder.write(e),i.objectMode||e.length!==0?Pm(t,i,e,!1):Lh(t,i)):Pm(t,i,e,!1)}else n||(i.state&=~kd,Lh(t,i));return!i.ended&&(i.length<i.highWaterMark||i.length===0)}function Pm(t,e,r,n){e.flowing&&e.length===0&&!e.sync&&t.listenerCount("data")>0?(e.state&dA?e.awaitDrainWriters.clear():e.awaitDrainWriters=null,e.dataEmitted=!0,t.emit("data",r)):(e.length+=e.objectMode?1:r.length,n?e.buffer.unshift(r):e.buffer.push(r),e.state&Ch&&Mh(t)),Lh(t,e)}ye.prototype.isPaused=function(){let t=this._readableState;return t[ac]===!0||t.flowing===!1};ye.prototype.setEncoding=function(t){let e=new sA(t);this._readableState.decoder=e,this._readableState.encoding=this._readableState.decoder.encoding;let r=this._readableState.buffer,n="";for(let i of r)n+=e.write(i);return r.clear(),n!==""&&r.push(n),this._readableState.length=n.length,this};var uD=1073741824;function dD(t){if(t>uD)throw new z3("size","<= 1GiB",t);return t--,t|=t>>>1,t|=t>>>2,t|=t>>>4,t|=t>>>8,t|=t>>>16,t++,t}function rA(t,e){return t<=0||e.length===0&&e.ended?0:e.state&Oa?1:k3(t)?e.flowing&&e.length?e.buffer.first().length:e.length:t<=e.length?t:e.ended?e.length:0}ye.prototype.read=function(t){Ee("read",t),t===void 0?t=NaN:D3(t)||(t=N3(t,10));let e=this._readableState,r=t;if(t>e.highWaterMark&&(e.highWaterMark=dD(t)),t!==0&&(e.state&=~uA),t===0&&e.needReadable&&((e.highWaterMark!==0?e.length>=e.highWaterMark:e.length>0)||e.ended))return Ee("read: emitReadable",e.length,e.ended),e.length===0&&e.ended?Mm(this):Mh(this),null;if(t=rA(t,e),t===0&&e.ended)return e.length===0&&Mm(this),null;let n=(e.state&Ch)!==0;if(Ee("need readable",n),(e.length===0||e.length-t<e.highWaterMark)&&(n=!0,Ee("length less than watermark",n)),e.ended||e.reading||e.destroyed||e.errored||!e.constructed)n=!1,Ee("reading, ended or constructing",n);else if(n){Ee("do read"),e.state|=kd|Nh,e.length===0&&(e.state|=Ch);try{this._read(e.highWaterMark)}catch(o){Ua(this,o)}e.state&=~Nh,e.reading||(t=rA(r,e))}let i;return t>0?i=gA(t,e):i=null,i===null?(e.needReadable=e.length<=e.highWaterMark,t=0):(e.length-=t,e.multiAwaitDrain?e.awaitDrainWriters.clear():e.awaitDrainWriters=null),e.length===0&&(e.ended||(e.needReadable=!0),r!==t&&e.ended&&Mm(this)),i!==null&&!e.errorEmitted&&!e.closeEmitted&&(e.dataEmitted=!0,this.emit("data",i)),i};function fD(t,e){if(Ee("onEofChunk"),!e.ended){if(e.decoder){let r=e.decoder.end();r&&r.length&&(e.buffer.push(r),e.length+=e.objectMode?1:r.length)}e.ended=!0,e.sync?Mh(t):(e.needReadable=!1,e.emittedReadable=!0,lA(t))}}function Mh(t){let e=t._readableState;Ee("emitReadable",e.needReadable,e.emittedReadable),e.needReadable=!1,e.emittedReadable||(Ee("emitReadable",e.flowing),e.emittedReadable=!0,Tn.nextTick(lA,t))}function lA(t){let e=t._readableState;Ee("emitReadable_",e.destroyed,e.length,e.ended),!e.destroyed&&!e.errored&&(e.length||e.ended)&&(t.emit("readable"),e.emittedReadable=!1),e.needReadable=!e.flowing&&!e.ended&&e.length<=e.highWaterMark,pA(t)}function Lh(t,e){!e.readingMore&&e.constructed&&(e.readingMore=!0,Tn.nextTick(lD,t,e))}function lD(t,e){for(;!e.reading&&!e.ended&&(e.length<e.highWaterMark||e.flowing&&e.length===0);){let r=e.length;if(Ee("maybeReadMore read 0"),t.read(0),r===e.length)break}e.readingMore=!1}ye.prototype._read=function(t){throw new G3("_read()")};ye.prototype.pipe=function(t,e){let r=this,n=this._readableState;n.pipes.length===1&&(n.multiAwaitDrain||(n.multiAwaitDrain=!0,n.awaitDrainWriters=new L3(n.awaitDrainWriters?[n.awaitDrainWriters]:[]))),n.pipes.push(t),Ee("pipe count=%d opts=%j",n.pipes.length,e);let o=(!e||e.end!==!1)&&t!==Tn.stdout&&t!==Tn.stderr?c:x;n.endEmitted?Tn.nextTick(o):r.once("end",o),t.on("unpipe",s);function s(S,_){Ee("onunpipe"),S===r&&_&&_.hasUnpiped===!1&&(_.hasUnpiped=!0,d())}function c(){Ee("onend"),t.end()}let a,u=!1;function d(){Ee("cleanup"),t.removeListener("close",y),t.removeListener("finish",g),a&&t.removeListener("drain",a),t.removeListener("error",p),t.removeListener("unpipe",s),r.removeListener("end",c),r.removeListener("end",x),r.removeListener("data",h),u=!0,a&&n.awaitDrainWriters&&(!t._writableState||t._writableState.needDrain)&&a()}function f(){u||(n.pipes.length===1&&n.pipes[0]===t?(Ee("false write response, pause",0),n.awaitDrainWriters=t,n.multiAwaitDrain=!1):n.pipes.length>1&&n.pipes.includes(t)&&(Ee("false write response, pause",n.awaitDrainWriters.size),n.awaitDrainWriters.add(t)),r.pause()),a||(a=hD(r,t),t.on("drain",a))}r.on("data",h);function h(S){Ee("ondata");let _=t.write(S);Ee("dest.write",_),_===!1&&f()}function p(S){if(Ee("onerror",S),x(),t.removeListener("error",p),t.listenerCount("error")===0){let _=t._writableState||t._readableState;_&&!_.errorEmitted?Ua(t,S):t.emit("error",S)}}H3(t,"error",p);function y(){t.removeListener("finish",g),x()}t.once("close",y);function g(){Ee("onfinish"),t.removeListener("close",y),x()}t.once("finish",g);function x(){Ee("unpipe"),r.unpipe(t)}return t.emit("pipe",r),t.writableNeedDrain===!0?f():n.flowing||(Ee("pipe resume"),r.resume()),t};function hD(t,e){return function(){let n=t._readableState;n.awaitDrainWriters===e?(Ee("pipeOnDrain",1),n.awaitDrainWriters=null):n.multiAwaitDrain&&(Ee("pipeOnDrain",n.awaitDrainWriters.size),n.awaitDrainWriters.delete(e)),(!n.awaitDrainWriters||n.awaitDrainWriters.size===0)&&t.listenerCount("data")&&t.resume()}}ye.prototype.unpipe=function(t){let e=this._readableState,r={hasUnpiped:!1};if(e.pipes.length===0)return this;if(!t){let i=e.pipes;e.pipes=[],this.pause();for(let o=0;o<i.length;o++)i[o].emit("unpipe",this,{hasUnpiped:!1});return this}let n=O3(e.pipes,t);return n===-1?this:(e.pipes.splice(n,1),e.pipes.length===0&&this.pause(),t.emit("unpipe",this,r),this)};ye.prototype.on=function(t,e){let r=jo.prototype.on.call(this,t,e),n=this._readableState;return t==="data"?(n.readableListening=this.listenerCount("readable")>0,n.flowing!==!1&&this.resume()):t==="readable"&&!n.endEmitted&&!n.readableListening&&(n.readableListening=n.needReadable=!0,n.flowing=!1,n.emittedReadable=!1,Ee("on readable",n.length,n.reading),n.length?Mh(this):n.reading||Tn.nextTick(pD,this)),r};ye.prototype.addListener=ye.prototype.on;ye.prototype.removeListener=function(t,e){let r=jo.prototype.removeListener.call(this,t,e);return t==="readable"&&Tn.nextTick(hA,this),r};ye.prototype.off=ye.prototype.removeListener;ye.prototype.removeAllListeners=function(t){let e=jo.prototype.removeAllListeners.apply(this,arguments);return(t==="readable"||t===void 0)&&Tn.nextTick(hA,this),e};function hA(t){let e=t._readableState;e.readableListening=t.listenerCount("readable")>0,e.resumeScheduled&&e[ac]===!1?e.flowing=!0:t.listenerCount("data")>0?t.resume():e.readableListening||(e.flowing=null)}function pD(t){Ee("readable nexttick read 0"),t.read(0)}ye.prototype.resume=function(){let t=this._readableState;return t.flowing||(Ee("resume"),t.flowing=!t.readableListening,yD(this,t)),t[ac]=!1,this};function yD(t,e){e.resumeScheduled||(e.resumeScheduled=!0,Tn.nextTick(gD,t,e))}function gD(t,e){Ee("resume",e.reading),e.reading||t.read(0),e.resumeScheduled=!1,t.emit("resume"),pA(t),e.flowing&&!e.reading&&t.read(0)}ye.prototype.pause=function(){return Ee("call pause flowing=%j",this._readableState.flowing),this._readableState.flowing!==!1&&(Ee("pause"),this._readableState.flowing=!1,this.emit("pause")),this._readableState[ac]=!0,this};function pA(t){let e=t._readableState;for(Ee("flow",e.flowing);e.flowing&&t.read()!==null;);}ye.prototype.wrap=function(t){let e=!1;t.on("data",n=>{!this.push(n)&&t.pause&&(e=!0,t.pause())}),t.on("end",()=>{this.push(null)}),t.on("error",n=>{Ua(this,n)}),t.on("close",()=>{this.destroy()}),t.on("destroy",()=>{this.destroy()}),this._read=()=>{e&&t.resume&&(e=!1,t.resume())};let r=C3(t);for(let n=1;n<r.length;n++){let i=r[n];this[i]===void 0&&typeof t[i]=="function"&&(this[i]=t[i].bind(t))}return this};ye.prototype[M3]=function(){return yA(this)};ye.prototype.iterator=function(t){return t!==void 0&&Z3(t,"options"),yA(this,t)};function yA(t,e){typeof t.read!="function"&&(t=ye.wrap(t,{objectMode:!0}));let r=mD(t,e);return r.stream=t,r}async function*mD(t,e){let r=Lm;function n(s){this===t?(r(),r=Lm):r=s}t.on("readable",n);let i,o=oA(t,{writable:!1},s=>{i=s?tA(i,s):null,r(),r=Lm});try{for(;;){let s=t.destroyed?null:t.read();if(s!==null)yield s;else{if(i)throw i;if(i===null)return;await new iA(n)}}}catch(s){throw i=tA(i,s),i}finally{(i||e?.destroyOnReturn!==!1)&&(i===void 0||t._readableState.autoDestroy)?Da.destroyer(t,null):(t.off("readable",n),o())}}Vm(ye.prototype,{readable:{__proto__:null,get(){let t=this._readableState;return!!t&&t.readable!==!1&&!t.destroyed&&!t.errorEmitted&&!t.endEmitted},set(t){this._readableState&&(this._readableState.readable=!!t)}},readableDidRead:{__proto__:null,enumerable:!1,get:function(){return this._readableState.dataEmitted}},readableAborted:{__proto__:null,enumerable:!1,get:function(){return!!(this._readableState.readable!==!1&&(this._readableState.destroyed||this._readableState.errored)&&!this._readableState.endEmitted)}},readableHighWaterMark:{__proto__:null,enumerable:!1,get:function(){return this._readableState.highWaterMark}},readableBuffer:{__proto__:null,enumerable:!1,get:function(){return this._readableState&&this._readableState.buffer}},readableFlowing:{__proto__:null,enumerable:!1,get:function(){return this._readableState.flowing},set:function(t){this._readableState&&(this._readableState.flowing=t)}},readableLength:{__proto__:null,enumerable:!1,get(){return this._readableState.length}},readableObjectMode:{__proto__:null,enumerable:!1,get(){return this._readableState?this._readableState.objectMode:!1}},readableEncoding:{__proto__:null,enumerable:!1,get(){return this._readableState?this._readableState.encoding:null}},errored:{__proto__:null,enumerable:!1,get(){return this._readableState?this._readableState.errored:null}},closed:{__proto__:null,get(){return this._readableState?this._readableState.closed:!1}},destroyed:{__proto__:null,enumerable:!1,get(){return this._readableState?this._readableState.destroyed:!1},set(t){this._readableState&&(this._readableState.destroyed=t)}},readableEnded:{__proto__:null,enumerable:!1,get(){return this._readableState?this._readableState.endEmitted:!1}}});Vm(Ph.prototype,{pipesCount:{__proto__:null,get(){return this.pipes.length}},paused:{__proto__:null,get(){return this[ac]!==!1},set(t){this[ac]=!!t}}});ye._fromList=gA;function gA(t,e){if(e.length===0)return null;let r;return e.objectMode?r=e.buffer.shift():!t||t>=e.length?(e.decoder?r=e.buffer.join(""):e.buffer.length===1?r=e.buffer.first():r=e.buffer.concat(e.length),e.buffer.clear()):r=e.buffer.consume(t,e.decoder),r}function Mm(t){let e=t._readableState;Ee("endReadable",e.endEmitted),e.endEmitted||(e.ended=!0,Tn.nextTick(wD,e,t))}function wD(t,e){if(Ee("endReadableNT",t.endEmitted,t.length),!t.errored&&!t.closeEmitted&&!t.endEmitted&&t.length===0){if(t.endEmitted=!0,e.emit("end"),e.writable&&e.allowHalfOpen===!1)Tn.nextTick(bD,e);else if(t.autoDestroy){let r=e._writableState;(!r||r.autoDestroy&&(r.finished||r.writable===!1))&&e.destroy()}}}function bD(t){t.writable&&!t.writableEnded&&!t.destroyed&&t.end()}ye.from=function(t,e){return Q3(ye,t,e)};var Km;function mA(){return Km===void 0&&(Km={}),Km}ye.fromWeb=function(t,e){return mA().newStreamReadableFromReadableStream(t,e)};ye.toWeb=function(t,e){return mA().newReadableStreamFromStreamReadable(t,e)};ye.wrap=function(t,e){var r,n;return new ye({objectMode:(r=(n=t.readableObjectMode)!==null&&n!==void 0?n:t.objectMode)!==null&&r!==void 0?r:!0,...e,destroy(i,o){Da.destroyer(t,i),o(i)}}).wrap(t)}});var qh=oe((ZF,UA)=>{l();var uc=Ei(),{ArrayPrototypeSlice:EA,Error:xD,FunctionPrototypeSymbolHasInstance:vA,ObjectDefineProperty:SA,ObjectDefineProperties:ED,ObjectSetPrototypeOf:AA,StringPrototypeToLowerCase:vD,Symbol:SD,SymbolHasInstance:AD}=nt();UA.exports=it;it.WritableState=Pd;var{EventEmitter:TD}=ya(),Cd=Uh().Stream,{Buffer:Kh}=Tr(),Vh=sc(),{addAbortSignal:_D}=Ud(),{getHighWaterMark:ID,getDefaultHighWaterMark:BD}=Od(),{ERR_INVALID_ARG_TYPE:RD,ERR_METHOD_NOT_IMPLEMENTED:UD,ERR_MULTIPLE_CALLBACK:TA,ERR_STREAM_CANNOT_PIPE:OD,ERR_STREAM_DESTROYED:Ld,ERR_STREAM_ALREADY_FINISHED:DD,ERR_STREAM_NULL_VALUES:kD,ERR_STREAM_WRITE_AFTER_END:ND,ERR_UNKNOWN_ENCODING:_A}=sr().codes,{errorOrDestroy:ka}=Vh;AA(it.prototype,Cd.prototype);AA(it,Cd);function jm(){}var Na=SD("kOnFinished");function Pd(t,e,r){typeof r!="boolean"&&(r=e instanceof oi()),this.objectMode=!!(t&&t.objectMode),r&&(this.objectMode=this.objectMode||!!(t&&t.writableObjectMode)),this.highWaterMark=t?ID(this,t,"writableHighWaterMark",r):BD(!1),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;let n=!!(t&&t.decodeStrings===!1);this.decodeStrings=!n,this.defaultEncoding=t&&t.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=LD.bind(void 0,e),this.writecb=null,this.writelen=0,this.afterWriteTickInfo=null,Hh(this),this.pendingcb=0,this.constructed=!0,this.prefinished=!1,this.errorEmitted=!1,this.emitClose=!t||t.emitClose!==!1,this.autoDestroy=!t||t.autoDestroy!==!1,this.errored=null,this.closed=!1,this.closeEmitted=!1,this[Na]=[]}function Hh(t){t.buffered=[],t.bufferedIndex=0,t.allBuffers=!0,t.allNoop=!0}Pd.prototype.getBuffer=function(){return EA(this.buffered,this.bufferedIndex)};SA(Pd.prototype,"bufferedRequestCount",{__proto__:null,get(){return this.buffered.length-this.bufferedIndex}});function it(t){let e=this instanceof oi();if(!e&&!vA(it,this))return new it(t);this._writableState=new Pd(t,this,e),t&&(typeof t.write=="function"&&(this._write=t.write),typeof t.writev=="function"&&(this._writev=t.writev),typeof t.destroy=="function"&&(this._destroy=t.destroy),typeof t.final=="function"&&(this._final=t.final),typeof t.construct=="function"&&(this._construct=t.construct),t.signal&&_D(t.signal,this)),Cd.call(this,t),Vh.construct(this,()=>{let r=this._writableState;r.writing||Gm(this,r),zm(this,r)})}SA(it,AD,{__proto__:null,value:function(t){return vA(this,t)?!0:this!==it?!1:t&&t._writableState instanceof Pd}});it.prototype.pipe=function(){ka(this,new OD)};function IA(t,e,r,n){let i=t._writableState;if(typeof r=="function")n=r,r=i.defaultEncoding;else{if(!r)r=i.defaultEncoding;else if(r!=="buffer"&&!Kh.isEncoding(r))throw new _A(r);typeof n!="function"&&(n=jm)}if(e===null)throw new kD;if(!i.objectMode)if(typeof e=="string")i.decodeStrings!==!1&&(e=Kh.from(e,r),r="buffer");else if(e instanceof Kh)r="buffer";else if(Cd._isUint8Array(e))e=Cd._uint8ArrayToBuffer(e),r="buffer";else throw new RD("chunk",["string","Buffer","Uint8Array"],e);let o;return i.ending?o=new ND:i.destroyed&&(o=new Ld("write")),o?(uc.nextTick(n,o),ka(t,o,!0),o):(i.pendingcb++,CD(t,i,e,r,n))}it.prototype.write=function(t,e,r){return IA(this,t,e,r)===!0};it.prototype.cork=function(){this._writableState.corked++};it.prototype.uncork=function(){let t=this._writableState;t.corked&&(t.corked--,t.writing||Gm(this,t))};it.prototype.setDefaultEncoding=function(e){if(typeof e=="string"&&(e=vD(e)),!Kh.isEncoding(e))throw new _A(e);return this._writableState.defaultEncoding=e,this};function CD(t,e,r,n,i){let o=e.objectMode?1:r.length;e.length+=o;let s=e.length<e.highWaterMark;return s||(e.needDrain=!0),e.writing||e.corked||e.errored||!e.constructed?(e.buffered.push({chunk:r,encoding:n,callback:i}),e.allBuffers&&n!=="buffer"&&(e.allBuffers=!1),e.allNoop&&i!==jm&&(e.allNoop=!1)):(e.writelen=o,e.writecb=i,e.writing=!0,e.sync=!0,t._write(r,n,e.onwrite),e.sync=!1),s&&!e.errored&&!e.destroyed}function bA(t,e,r,n,i,o,s){e.writelen=n,e.writecb=s,e.writing=!0,e.sync=!0,e.destroyed?e.onwrite(new Ld("write")):r?t._writev(i,e.onwrite):t._write(i,o,e.onwrite),e.sync=!1}function xA(t,e,r,n){--e.pendingcb,n(r),Wm(e),ka(t,r)}function LD(t,e){let r=t._writableState,n=r.sync,i=r.writecb;if(typeof i!="function"){ka(t,new TA);return}r.writing=!1,r.writecb=null,r.length-=r.writelen,r.writelen=0,e?(e.stack,r.errored||(r.errored=e),t._readableState&&!t._readableState.errored&&(t._readableState.errored=e),n?uc.nextTick(xA,t,r,e,i):xA(t,r,e,i)):(r.buffered.length>r.bufferedIndex&&Gm(t,r),n?r.afterWriteTickInfo!==null&&r.afterWriteTickInfo.cb===i?r.afterWriteTickInfo.count++:(r.afterWriteTickInfo={count:1,cb:i,stream:t,state:r},uc.nextTick(PD,r.afterWriteTickInfo)):BA(t,r,1,i))}function PD({stream:t,state:e,count:r,cb:n}){return e.afterWriteTickInfo=null,BA(t,e,r,n)}function BA(t,e,r,n){for(!e.ending&&!t.destroyed&&e.length===0&&e.needDrain&&(e.needDrain=!1,t.emit("drain"));r-- >0;)e.pendingcb--,n();e.destroyed&&Wm(e),zm(t,e)}function Wm(t){if(t.writing)return;for(let i=t.bufferedIndex;i<t.buffered.length;++i){var e;let{chunk:o,callback:s}=t.buffered[i],c=t.objectMode?1:o.length;t.length-=c,s((e=t.errored)!==null&&e!==void 0?e:new Ld("write"))}let r=t[Na].splice(0);for(let i=0;i<r.length;i++){var n;r[i]((n=t.errored)!==null&&n!==void 0?n:new Ld("end"))}Hh(t)}function Gm(t,e){if(e.corked||e.bufferProcessing||e.destroyed||!e.constructed)return;let{buffered:r,bufferedIndex:n,objectMode:i}=e,o=r.length-n;if(!o)return;let s=n;if(e.bufferProcessing=!0,o>1&&t._writev){e.pendingcb-=o-1;let c=e.allNoop?jm:u=>{for(let d=s;d<r.length;++d)r[d].callback(u)},a=e.allNoop&&s===0?r:EA(r,s);a.allBuffers=e.allBuffers,bA(t,e,!0,e.length,a,"",c),Hh(e)}else{do{let{chunk:c,encoding:a,callback:u}=r[s];r[s++]=null;let d=i?1:c.length;bA(t,e,!1,d,c,a,u)}while(s<r.length&&!e.writing);s===r.length?Hh(e):s>256?(r.splice(0,s),e.bufferedIndex=0):e.bufferedIndex=s}e.bufferProcessing=!1}it.prototype._write=function(t,e,r){if(this._writev)this._writev([{chunk:t,encoding:e}],r);else throw new UD("_write()")};it.prototype._writev=null;it.prototype.end=function(t,e,r){let n=this._writableState;typeof t=="function"?(r=t,t=null,e=null):typeof e=="function"&&(r=e,e=null);let i;if(t!=null){let o=IA(this,t,e);o instanceof xD&&(i=o)}return n.corked&&(n.corked=1,this.uncork()),i||(!n.errored&&!n.ending?(n.ending=!0,zm(this,n,!0),n.ended=!0):n.finished?i=new DD("end"):n.destroyed&&(i=new Ld("end"))),typeof r=="function"&&(i||n.finished?uc.nextTick(r,i):n[Na].push(r)),this};function $h(t){return t.ending&&!t.destroyed&&t.constructed&&t.length===0&&!t.errored&&t.buffered.length===0&&!t.finished&&!t.writing&&!t.errorEmitted&&!t.closeEmitted}function MD(t,e){let r=!1;function n(i){if(r){ka(t,i??TA());return}if(r=!0,e.pendingcb--,i){let o=e[Na].splice(0);for(let s=0;s<o.length;s++)o[s](i);ka(t,i,e.sync)}else $h(e)&&(e.prefinished=!0,t.emit("prefinish"),e.pendingcb++,uc.nextTick(Fm,t,e))}e.sync=!0,e.pendingcb++;try{t._final(n)}catch(i){n(i)}e.sync=!1}function KD(t,e){!e.prefinished&&!e.finalCalled&&(typeof t._final=="function"&&!e.destroyed?(e.finalCalled=!0,MD(t,e)):(e.prefinished=!0,t.emit("prefinish")))}function zm(t,e,r){$h(e)&&(KD(t,e),e.pendingcb===0&&(r?(e.pendingcb++,uc.nextTick((n,i)=>{$h(i)?Fm(n,i):i.pendingcb--},t,e)):$h(e)&&(e.pendingcb++,Fm(t,e))))}function Fm(t,e){e.pendingcb--,e.finished=!0;let r=e[Na].splice(0);for(let n=0;n<r.length;n++)r[n]();if(t.emit("finish"),e.autoDestroy){let n=t._readableState;(!n||n.autoDestroy&&(n.endEmitted||n.readable===!1))&&t.destroy()}}ED(it.prototype,{closed:{__proto__:null,get(){return this._writableState?this._writableState.closed:!1}},destroyed:{__proto__:null,get(){return this._writableState?this._writableState.destroyed:!1},set(t){this._writableState&&(this._writableState.destroyed=t)}},writable:{__proto__:null,get(){let t=this._writableState;return!!t&&t.writable!==!1&&!t.destroyed&&!t.errored&&!t.ending&&!t.ended},set(t){this._writableState&&(this._writableState.writable=!!t)}},writableFinished:{__proto__:null,get(){return this._writableState?this._writableState.finished:!1}},writableObjectMode:{__proto__:null,get(){return this._writableState?this._writableState.objectMode:!1}},writableBuffer:{__proto__:null,get(){return this._writableState&&this._writableState.getBuffer()}},writableEnded:{__proto__:null,get(){return this._writableState?this._writableState.ending:!1}},writableNeedDrain:{__proto__:null,get(){let t=this._writableState;return t?!t.destroyed&&!t.ending&&t.needDrain:!1}},writableHighWaterMark:{__proto__:null,get(){return this._writableState&&this._writableState.highWaterMark}},writableCorked:{__proto__:null,get(){return this._writableState?this._writableState.corked:0}},writableLength:{__proto__:null,get(){return this._writableState&&this._writableState.length}},errored:{__proto__:null,enumerable:!1,get(){return this._writableState?this._writableState.errored:null}},writableAborted:{__proto__:null,enumerable:!1,get:function(){return!!(this._writableState.writable!==!1&&(this._writableState.destroyed||this._writableState.errored)&&!this._writableState.finished)}}});var $D=Vh.destroy;it.prototype.destroy=function(t,e){let r=this._writableState;return!r.destroyed&&(r.bufferedIndex<r.buffered.length||r[Na].length)&&uc.nextTick(Wm,r),$D.call(this,t,e),this};it.prototype._undestroy=Vh.undestroy;it.prototype._destroy=function(t,e){e(t)};it.prototype[TD.captureRejectionSymbol]=function(t){this.destroy(t)};var qm;function RA(){return qm===void 0&&(qm={}),qm}it.fromWeb=function(t,e){return RA().newStreamWritableFromWritableStream(t,e)};it.toWeb=function(t){return RA().newWritableStreamFromStreamWritable(t)}});var jA=oe((ej,FA)=>{l();var Ym=Ei(),HD=Tr(),{isReadable:VD,isWritable:qD,isIterable:OA,isNodeStream:FD,isReadableNodeStream:DA,isWritableNodeStream:kA,isDuplexNodeStream:jD,isReadableStream:NA,isWritableStream:CA}=ri(),LA=Gi(),{AbortError:VA,codes:{ERR_INVALID_ARG_TYPE:WD,ERR_INVALID_RETURN_VALUE:PA}}=sr(),{destroyer:La}=sc(),GD=oi(),qA=Nd(),zD=qh(),{createDeferredPromise:MA}=Zt(),KA=Nm(),$A=globalThis.Blob||HD.Blob,YD=typeof $A<"u"?function(e){return e instanceof $A}:function(e){return!1},JD=globalThis.AbortController||_a().AbortController,{FunctionPrototypeCall:HA}=nt(),Wo=class extends GD{constructor(e){super(e),e?.readable===!1&&(this._readableState.readable=!1,this._readableState.ended=!0,this._readableState.endEmitted=!0),e?.writable===!1&&(this._writableState.writable=!1,this._writableState.ending=!0,this._writableState.ended=!0,this._writableState.finished=!0)}};FA.exports=function t(e,r){if(jD(e))return e;if(DA(e))return Ca({readable:e});if(kA(e))return Ca({writable:e});if(FD(e))return Ca({writable:!1,readable:!1});if(NA(e))return Ca({readable:qA.fromWeb(e)});if(CA(e))return Ca({writable:zD.fromWeb(e)});if(typeof e=="function"){let{value:i,write:o,final:s,destroy:c}=XD(e);if(OA(i))return KA(Wo,i,{objectMode:!0,write:o,final:s,destroy:c});let a=i?.then;if(typeof a=="function"){let u,d=HA(a,i,f=>{if(f!=null)throw new PA("nully","body",f)},f=>{La(u,f)});return u=new Wo({objectMode:!0,readable:!1,write:o,final(f){s(async()=>{try{await d,Ym.nextTick(f,null)}catch(h){Ym.nextTick(f,h)}})},destroy:c})}throw new PA("Iterable, AsyncIterable or AsyncFunction",r,i)}if(YD(e))return t(e.arrayBuffer());if(OA(e))return KA(Wo,e,{objectMode:!0,writable:!1});if(NA(e?.readable)&&CA(e?.writable))return Wo.fromWeb(e);if(typeof e?.writable=="object"||typeof e?.readable=="object"){let i=e!=null&&e.readable?DA(e?.readable)?e?.readable:t(e.readable):void 0,o=e!=null&&e.writable?kA(e?.writable)?e?.writable:t(e.writable):void 0;return Ca({readable:i,writable:o})}let n=e?.then;if(typeof n=="function"){let i;return HA(n,e,o=>{o!=null&&i.push(o),i.push(null)},o=>{La(i,o)}),i=new Wo({objectMode:!0,writable:!1,read(){}})}throw new WD(r,["Blob","ReadableStream","WritableStream","Stream","Iterable","AsyncIterable","Function","{ readable, writable } pair","Promise"],e)};function XD(t){let{promise:e,resolve:r}=MA(),n=new JD,i=n.signal;return{value:t(async function*(){for(;;){let s=e;e=null;let{chunk:c,done:a,cb:u}=await s;if(Ym.nextTick(u),a)return;if(i.aborted)throw new VA(void 0,{cause:i.reason});({promise:e,resolve:r}=MA()),yield c}}(),{signal:i}),write(s,c,a){let u=r;r=null,u({chunk:s,done:!1,cb:a})},final(s){let c=r;r=null,c({done:!0,cb:s})},destroy(s,c){n.abort(),c(s)}}}function Ca(t){let e=t.readable&&typeof t.readable.read!="function"?qA.wrap(t.readable):t.readable,r=t.writable,n=!!VD(e),i=!!qD(r),o,s,c,a,u;function d(f){let h=a;a=null,h?h(f):f&&u.destroy(f)}return u=new Wo({readableObjectMode:!!(e!=null&&e.readableObjectMode),writableObjectMode:!!(r!=null&&r.writableObjectMode),readable:n,writable:i}),i&&(LA(r,f=>{i=!1,f&&La(e,f),d(f)}),u._write=function(f,h,p){r.write(f,h)?p():o=p},u._final=function(f){r.end(),s=f},r.on("drain",function(){if(o){let f=o;o=null,f()}}),r.on("finish",function(){if(s){let f=s;s=null,f()}})),n&&(LA(e,f=>{n=!1,f&&La(e,f),d(f)}),e.on("readable",function(){if(c){let f=c;c=null,f()}}),e.on("end",function(){u.push(null)}),u._read=function(){for(;;){let f=e.read();if(f===null){c=u._read;return}if(!u.push(f))return}}),u._destroy=function(f,h){!f&&a!==null&&(f=new VA),c=null,o=null,s=null,a===null?h(f):(a=h,La(r,f),La(e,f))},u}});var oi=oe((rj,zA)=>{"use strict";l();var{ObjectDefineProperties:ZD,ObjectGetOwnPropertyDescriptor:zi,ObjectKeys:QD,ObjectSetPrototypeOf:WA}=nt();zA.exports=_n;var Zm=Nd(),on=qh();WA(_n.prototype,Zm.prototype);WA(_n,Zm);{let t=QD(on.prototype);for(let e=0;e<t.length;e++){let r=t[e];_n.prototype[r]||(_n.prototype[r]=on.prototype[r])}}function _n(t){if(!(this instanceof _n))return new _n(t);Zm.call(this,t),on.call(this,t),t?(this.allowHalfOpen=t.allowHalfOpen!==!1,t.readable===!1&&(this._readableState.readable=!1,this._readableState.ended=!0,this._readableState.endEmitted=!0),t.writable===!1&&(this._writableState.writable=!1,this._writableState.ending=!0,this._writableState.ended=!0,this._writableState.finished=!0)):this.allowHalfOpen=!0}ZD(_n.prototype,{writable:{__proto__:null,...zi(on.prototype,"writable")},writableHighWaterMark:{__proto__:null,...zi(on.prototype,"writableHighWaterMark")},writableObjectMode:{__proto__:null,...zi(on.prototype,"writableObjectMode")},writableBuffer:{__proto__:null,...zi(on.prototype,"writableBuffer")},writableLength:{__proto__:null,...zi(on.prototype,"writableLength")},writableFinished:{__proto__:null,...zi(on.prototype,"writableFinished")},writableCorked:{__proto__:null,...zi(on.prototype,"writableCorked")},writableEnded:{__proto__:null,...zi(on.prototype,"writableEnded")},writableNeedDrain:{__proto__:null,...zi(on.prototype,"writableNeedDrain")},destroyed:{__proto__:null,get(){return this._readableState===void 0||this._writableState===void 0?!1:this._readableState.destroyed&&this._writableState.destroyed},set(t){this._readableState&&this._writableState&&(this._readableState.destroyed=t,this._writableState.destroyed=t)}}});var Jm;function GA(){return Jm===void 0&&(Jm={}),Jm}_n.fromWeb=function(t,e){return GA().newStreamDuplexFromReadableWritablePair(t,e)};_n.toWeb=function(t){return GA().newReadableWritablePairFromDuplex(t)};var Xm;_n.from=function(t){return Xm||(Xm=jA()),Xm(t,"body")}});var tw=oe((ij,JA)=>{"use strict";l();var{ObjectSetPrototypeOf:YA,Symbol:ek}=nt();JA.exports=Yi;var{ERR_METHOD_NOT_IMPLEMENTED:tk}=sr().codes,ew=oi(),{getHighWaterMark:rk}=Od();YA(Yi.prototype,ew.prototype);YA(Yi,ew);var Md=ek("kCallback");function Yi(t){if(!(this instanceof Yi))return new Yi(t);let e=t?rk(this,t,"readableHighWaterMark",!0):null;e===0&&(t={...t,highWaterMark:null,readableHighWaterMark:e,writableHighWaterMark:t.writableHighWaterMark||0}),ew.call(this,t),this._readableState.sync=!1,this[Md]=null,t&&(typeof t.transform=="function"&&(this._transform=t.transform),typeof t.flush=="function"&&(this._flush=t.flush)),this.on("prefinish",nk)}function Qm(t){typeof this._flush=="function"&&!this.destroyed?this._flush((e,r)=>{if(e){t?t(e):this.destroy(e);return}r!=null&&this.push(r),this.push(null),t&&t()}):(this.push(null),t&&t())}function nk(){this._final!==Qm&&Qm.call(this)}Yi.prototype._final=Qm;Yi.prototype._transform=function(t,e,r){throw new tk("_transform()")};Yi.prototype._write=function(t,e,r){let n=this._readableState,i=this._writableState,o=n.length;this._transform(t,e,(s,c)=>{if(s){r(s);return}c!=null&&this.push(c),i.ended||o===n.length||n.length<n.highWaterMark?r():this[Md]=r})};Yi.prototype._read=function(){if(this[Md]){let t=this[Md];this[Md]=null,t()}}});var nw=oe((sj,ZA)=>{"use strict";l();var{ObjectSetPrototypeOf:XA}=nt();ZA.exports=Pa;var rw=tw();XA(Pa.prototype,rw.prototype);XA(Pa,rw);function Pa(t){if(!(this instanceof Pa))return new Pa(t);rw.call(this,t)}Pa.prototype._transform=function(t,e,r){r(null,t)}});var Gh=oe((aj,nT)=>{l();var Kd=Ei(),{ArrayIsArray:ik,Promise:ok,SymbolAsyncIterator:sk,SymbolDispose:ck}=nt(),Wh=Gi(),{once:ak}=Zt(),uk=sc(),QA=oi(),{aggregateTwoErrors:dk,codes:{ERR_INVALID_ARG_TYPE:lw,ERR_INVALID_RETURN_VALUE:iw,ERR_MISSING_ARGS:fk,ERR_STREAM_DESTROYED:lk,ERR_STREAM_PREMATURE_CLOSE:hk},AbortError:pk}=sr(),{validateFunction:yk,validateAbortSignal:gk}=Ba(),{isIterable:dc,isReadable:ow,isReadableNodeStream:jh,isNodeStream:eT,isTransformStream:Ma,isWebStream:mk,isReadableStream:sw,isReadableFinished:wk}=ri(),bk=globalThis.AbortController||_a().AbortController,cw,aw,uw;function tT(t,e,r){let n=!1;t.on("close",()=>{n=!0});let i=Wh(t,{readable:e,writable:r},o=>{n=!o});return{destroy:o=>{n||(n=!0,uk.destroyer(t,o||new lk("pipe")))},cleanup:i}}function xk(t){return yk(t[t.length-1],"streams[stream.length - 1]"),t.pop()}function dw(t){if(dc(t))return t;if(jh(t))return Ek(t);throw new lw("val",["Readable","Iterable","AsyncIterable"],t)}async function*Ek(t){aw||(aw=Nd()),yield*aw.prototype[sk].call(t)}async function Fh(t,e,r,{end:n}){let i,o=null,s=u=>{if(u&&(i=u),o){let d=o;o=null,d()}},c=()=>new ok((u,d)=>{i?d(i):o=()=>{i?d(i):u()}});e.on("drain",s);let a=Wh(e,{readable:!1},s);try{e.writableNeedDrain&&await c();for await(let u of t)e.write(u)||await c();n&&(e.end(),await c()),r()}catch(u){r(i!==u?dk(i,u):u)}finally{a(),e.off("drain",s)}}async function fw(t,e,r,{end:n}){Ma(e)&&(e=e.writable);let i=e.getWriter();try{for await(let o of t)await i.ready,i.write(o).catch(()=>{});await i.ready,n&&await i.close(),r()}catch(o){try{await i.abort(o),r(o)}catch(s){r(s)}}}function vk(...t){return rT(t,ak(xk(t)))}function rT(t,e,r){if(t.length===1&&ik(t[0])&&(t=t[0]),t.length<2)throw new fk("streams");let n=new bk,i=n.signal,o=r?.signal,s=[];gk(o,"options.signal");function c(){y(new pk)}uw=uw||Zt().addAbortListener;let a;o&&(a=uw(o,c));let u,d,f=[],h=0;function p(A){y(A,--h===0)}function y(A,O){var T;if(A&&(!u||u.code==="ERR_STREAM_PREMATURE_CLOSE")&&(u=A),!(!u&&!O)){for(;f.length;)f.shift()(u);(T=a)===null||T===void 0||T[ck](),n.abort(),O&&(u||s.forEach(M=>M()),Kd.nextTick(e,u,d))}}let g;for(let A=0;A<t.length;A++){let O=t[A],T=A<t.length-1,M=A>0,q=T||r?.end!==!1,j=A===t.length-1;if(eT(O)){let $=function(Z){Z&&Z.name!=="AbortError"&&Z.code!=="ERR_STREAM_PREMATURE_CLOSE"&&p(Z)};var _=$;if(q){let{destroy:Z,cleanup:Q}=tT(O,T,M);f.push(Z),ow(O)&&j&&s.push(Q)}O.on("error",$),ow(O)&&j&&s.push(()=>{O.removeListener("error",$)})}if(A===0)if(typeof O=="function"){if(g=O({signal:i}),!dc(g))throw new iw("Iterable, AsyncIterable or Stream","source",g)}else dc(O)||jh(O)||Ma(O)?g=O:g=QA.from(O);else if(typeof O=="function"){if(Ma(g)){var x;g=dw((x=g)===null||x===void 0?void 0:x.readable)}else g=dw(g);if(g=O(g,{signal:i}),T){if(!dc(g,!0))throw new iw("AsyncIterable",`transform[${A-1}]`,g)}else{var S;cw||(cw=nw());let $=new cw({objectMode:!0}),Z=(S=g)===null||S===void 0?void 0:S.then;if(typeof Z=="function")h++,Z.call(g,I=>{d=I,I!=null&&$.write(I),q&&$.end(),Kd.nextTick(p)},I=>{$.destroy(I),Kd.nextTick(p,I)});else if(dc(g,!0))h++,Fh(g,$,p,{end:q});else if(sw(g)||Ma(g)){let I=g.readable||g;h++,Fh(I,$,p,{end:q})}else throw new iw("AsyncIterable or Promise","destination",g);g=$;let{destroy:Q,cleanup:G}=tT(g,!1,!0);f.push(Q),j&&s.push(G)}}else if(eT(O)){if(jh(g)){h+=2;let $=Sk(g,O,p,{end:q});ow(O)&&j&&s.push($)}else if(Ma(g)||sw(g)){let $=g.readable||g;h++,Fh($,O,p,{end:q})}else if(dc(g))h++,Fh(g,O,p,{end:q});else throw new lw("val",["Readable","Iterable","AsyncIterable","ReadableStream","TransformStream"],g);g=O}else if(mk(O)){if(jh(g))h++,fw(dw(g),O,p,{end:q});else if(sw(g)||dc(g))h++,fw(g,O,p,{end:q});else if(Ma(g))h++,fw(g.readable,O,p,{end:q});else throw new lw("val",["Readable","Iterable","AsyncIterable","ReadableStream","TransformStream"],g);g=O}else g=QA.from(O)}return(i!=null&&i.aborted||o!=null&&o.aborted)&&Kd.nextTick(c),g}function Sk(t,e,r,{end:n}){let i=!1;if(e.on("close",()=>{i||r(new hk)}),t.pipe(e,{end:!1}),n){let s=function(){i=!0,e.end()};var o=s;wk(t)?Kd.nextTick(s):t.once("end",s)}else r();return Wh(t,{readable:!0,writable:!1},s=>{let c=t._readableState;s&&s.code==="ERR_STREAM_PREMATURE_CLOSE"&&c&&c.ended&&!c.errored&&!c.errorEmitted?t.once("end",r).once("error",r):r(s)}),Wh(e,{readable:!1,writable:!0},r)}nT.exports={pipelineImpl:rT,pipeline:vk}});var pw=oe((dj,uT)=>{"use strict";l();var{pipeline:Ak}=Gh(),zh=oi(),{destroyer:Tk}=sc(),{isNodeStream:Yh,isReadable:iT,isWritable:oT,isWebStream:hw,isTransformStream:fc,isWritableStream:sT,isReadableStream:cT}=ri(),{AbortError:_k,codes:{ERR_INVALID_ARG_VALUE:aT,ERR_MISSING_ARGS:Ik}}=sr(),Bk=Gi();uT.exports=function(...e){if(e.length===0)throw new Ik("streams");if(e.length===1)return zh.from(e[0]);let r=[...e];if(typeof e[0]=="function"&&(e[0]=zh.from(e[0])),typeof e[e.length-1]=="function"){let p=e.length-1;e[p]=zh.from(e[p])}for(let p=0;p<e.length;++p)if(!(!Yh(e[p])&&!hw(e[p]))){if(p<e.length-1&&!(iT(e[p])||cT(e[p])||fc(e[p])))throw new aT(`streams[${p}]`,r[p],"must be readable");if(p>0&&!(oT(e[p])||sT(e[p])||fc(e[p])))throw new aT(`streams[${p}]`,r[p],"must be writable")}let n,i,o,s,c;function a(p){let y=s;s=null,y?y(p):p?c.destroy(p):!h&&!f&&c.destroy()}let u=e[0],d=Ak(e,a),f=!!(oT(u)||sT(u)||fc(u)),h=!!(iT(d)||cT(d)||fc(d));if(c=new zh({writableObjectMode:!!(u!=null&&u.writableObjectMode),readableObjectMode:!!(d!=null&&d.readableObjectMode),writable:f,readable:h}),f){if(Yh(u))c._write=function(y,g,x){u.write(y,g)?x():n=x},c._final=function(y){u.end(),i=y},u.on("drain",function(){if(n){let y=n;n=null,y()}});else if(hw(u)){let g=(fc(u)?u.writable:u).getWriter();c._write=async function(x,S,_){try{await g.ready,g.write(x).catch(()=>{}),_()}catch(A){_(A)}},c._final=async function(x){try{await g.ready,g.close().catch(()=>{}),i=x}catch(S){x(S)}}}let p=fc(d)?d.readable:d;Bk(p,()=>{if(i){let y=i;i=null,y()}})}if(h){if(Yh(d))d.on("readable",function(){if(o){let p=o;o=null,p()}}),d.on("end",function(){c.push(null)}),c._read=function(){for(;;){let p=d.read();if(p===null){o=c._read;return}if(!c.push(p))return}};else if(hw(d)){let y=(fc(d)?d.readable:d).getReader();c._read=async function(){for(;;)try{let{value:g,done:x}=await y.read();if(!c.push(g))return;if(x){c.push(null);return}}catch{return}}}}return c._destroy=function(p,y){!p&&s!==null&&(p=new _k),o=null,n=null,i=null,s===null?y(p):(s=y,Yh(d)&&Tk(d,p))},c}});var bT=oe((lj,mw)=>{"use strict";l();var Rk=globalThis.AbortController||_a().AbortController,{codes:{ERR_INVALID_ARG_VALUE:Uk,ERR_INVALID_ARG_TYPE:$d,ERR_MISSING_ARGS:Ok,ERR_OUT_OF_RANGE:Dk},AbortError:si}=sr(),{validateAbortSignal:lc,validateInteger:dT,validateObject:hc}=Ba(),kk=nt().Symbol("kWeak"),Nk=nt().Symbol("kResistStopPropagation"),{finished:Ck}=Gi(),Lk=pw(),{addAbortSignalNoValidate:Pk}=Ud(),{isWritable:Mk,isNodeStream:Kk}=ri(),{deprecate:$k}=Zt(),{ArrayPrototypePush:Hk,Boolean:Vk,MathFloor:fT,Number:qk,NumberIsNaN:Fk,Promise:lT,PromiseReject:hT,PromiseResolve:jk,PromisePrototypeThen:pT,Symbol:gT}=nt(),Jh=gT("kEmpty"),yT=gT("kEof");function Wk(t,e){if(e!=null&&hc(e,"options"),e?.signal!=null&&lc(e.signal,"options.signal"),Kk(t)&&!Mk(t))throw new Uk("stream",t,"must be writable");let r=Lk(this,t);return e!=null&&e.signal&&Pk(e.signal,r),r}function Xh(t,e){if(typeof t!="function")throw new $d("fn",["Function","AsyncFunction"],t);e!=null&&hc(e,"options"),e?.signal!=null&&lc(e.signal,"options.signal");let r=1;e?.concurrency!=null&&(r=fT(e.concurrency));let n=r-1;return e?.highWaterMark!=null&&(n=fT(e.highWaterMark)),dT(r,"options.concurrency",1),dT(n,"options.highWaterMark",0),n+=r,(async function*(){let o=Zt().AbortSignalAny([e?.signal].filter(Vk)),s=this,c=[],a={signal:o},u,d,f=!1,h=0;function p(){f=!0,y()}function y(){h-=1,g()}function g(){d&&!f&&h<r&&c.length<n&&(d(),d=null)}async function x(){try{for await(let S of s){if(f)return;if(o.aborted)throw new si;try{if(S=t(S,a),S===Jh)continue;S=jk(S)}catch(_){S=hT(_)}h+=1,pT(S,y,p),c.push(S),u&&(u(),u=null),!f&&(c.length>=n||h>=r)&&await new lT(_=>{d=_})}c.push(yT)}catch(S){let _=hT(S);pT(_,y,p),c.push(_)}finally{f=!0,u&&(u(),u=null)}}x();try{for(;;){for(;c.length>0;){let S=await c[0];if(S===yT)return;if(o.aborted)throw new si;S!==Jh&&(yield S),c.shift(),g()}await new lT(S=>{u=S})}}finally{f=!0,d&&(d(),d=null)}}).call(this)}function Gk(t=void 0){return t!=null&&hc(t,"options"),t?.signal!=null&&lc(t.signal,"options.signal"),(async function*(){let r=0;for await(let i of this){var n;if(t!=null&&(n=t.signal)!==null&&n!==void 0&&n.aborted)throw new si({cause:t.signal.reason});yield[r++,i]}}).call(this)}async function mT(t,e=void 0){for await(let r of gw.call(this,t,e))return!0;return!1}async function zk(t,e=void 0){if(typeof t!="function")throw new $d("fn",["Function","AsyncFunction"],t);return!await mT.call(this,async(...r)=>!await t(...r),e)}async function Yk(t,e){for await(let r of gw.call(this,t,e))return r}async function Jk(t,e){if(typeof t!="function")throw new $d("fn",["Function","AsyncFunction"],t);async function r(n,i){return await t(n,i),Jh}for await(let n of Xh.call(this,r,e));}function gw(t,e){if(typeof t!="function")throw new $d("fn",["Function","AsyncFunction"],t);async function r(n,i){return await t(n,i)?n:Jh}return Xh.call(this,r,e)}var yw=class extends Ok{constructor(){super("reduce"),this.message="Reduce of an empty stream requires an initial value"}};async function Xk(t,e,r){var n;if(typeof t!="function")throw new $d("reducer",["Function","AsyncFunction"],t);r!=null&&hc(r,"options"),r?.signal!=null&&lc(r.signal,"options.signal");let i=arguments.length>1;if(r!=null&&(n=r.signal)!==null&&n!==void 0&&n.aborted){let u=new si(void 0,{cause:r.signal.reason});throw this.once("error",()=>{}),await Ck(this.destroy(u)),u}let o=new Rk,s=o.signal;if(r!=null&&r.signal){let u={once:!0,[kk]:this,[Nk]:!0};r.signal.addEventListener("abort",()=>o.abort(),u)}let c=!1;try{for await(let u of this){var a;if(c=!0,r!=null&&(a=r.signal)!==null&&a!==void 0&&a.aborted)throw new si;i?e=await t(e,u,{signal:s}):(e=u,i=!0)}if(!c&&!i)throw new yw}finally{o.abort()}return e}async function Zk(t){t!=null&&hc(t,"options"),t?.signal!=null&&lc(t.signal,"options.signal");let e=[];for await(let n of this){var r;if(t!=null&&(r=t.signal)!==null&&r!==void 0&&r.aborted)throw new si(void 0,{cause:t.signal.reason});Hk(e,n)}return e}function Qk(t,e){let r=Xh.call(this,t,e);return(async function*(){for await(let i of r)yield*i}).call(this)}function wT(t){if(t=qk(t),Fk(t))return 0;if(t<0)throw new Dk("number",">= 0",t);return t}function e4(t,e=void 0){return e!=null&&hc(e,"options"),e?.signal!=null&&lc(e.signal,"options.signal"),t=wT(t),(async function*(){var n;if(e!=null&&(n=e.signal)!==null&&n!==void 0&&n.aborted)throw new si;for await(let o of this){var i;if(e!=null&&(i=e.signal)!==null&&i!==void 0&&i.aborted)throw new si;t--<=0&&(yield o)}}).call(this)}function t4(t,e=void 0){return e!=null&&hc(e,"options"),e?.signal!=null&&lc(e.signal,"options.signal"),t=wT(t),(async function*(){var n;if(e!=null&&(n=e.signal)!==null&&n!==void 0&&n.aborted)throw new si;for await(let o of this){var i;if(e!=null&&(i=e.signal)!==null&&i!==void 0&&i.aborted)throw new si;if(t-- >0&&(yield o),t<=0)return}}).call(this)}mw.exports.streamReturningOperators={asIndexedPairs:$k(Gk,"readable.asIndexedPairs will be removed in a future version."),drop:e4,filter:gw,flatMap:Qk,map:Xh,take:t4,compose:Wk};mw.exports.promiseReturningOperators={every:zk,forEach:Jk,reduce:Xk,toArray:Zk,some:mT,find:Yk}});var ww=oe((pj,xT)=>{"use strict";l();var{ArrayPrototypePop:r4,Promise:n4}=nt(),{isIterable:i4,isNodeStream:o4,isWebStream:s4}=ri(),{pipelineImpl:c4}=Gh(),{finished:a4}=Gi();bw();function u4(...t){return new n4((e,r)=>{let n,i,o=t[t.length-1];if(o&&typeof o=="object"&&!o4(o)&&!i4(o)&&!s4(o)){let s=r4(t);n=s.signal,i=s.end}c4(t,(s,c)=>{s?r(s):e(c)},{signal:n,end:i})})}xT.exports={finished:a4,pipeline:u4}});var bw=oe((gj,RT)=>{l();var{Buffer:d4}=Tr(),{ObjectDefineProperty:Ji,ObjectKeys:ST,ReflectApply:AT}=nt(),{promisify:{custom:TT}}=Zt(),{streamReturningOperators:ET,promiseReturningOperators:vT}=bT(),{codes:{ERR_ILLEGAL_CONSTRUCTOR:_T}}=sr(),f4=pw(),{setDefaultHighWaterMark:l4,getDefaultHighWaterMark:h4}=Od(),{pipeline:IT}=Gh(),{destroyer:p4}=sc(),BT=Gi(),xw=ww(),Hd=ri(),We=RT.exports=Uh().Stream;We.isDestroyed=Hd.isDestroyed;We.isDisturbed=Hd.isDisturbed;We.isErrored=Hd.isErrored;We.isReadable=Hd.isReadable;We.isWritable=Hd.isWritable;We.Readable=Nd();for(let t of ST(ET)){let r=function(...n){if(new.target)throw _T();return We.Readable.from(AT(e,this,n))};Ew=r;let e=ET[t];Ji(r,"name",{__proto__:null,value:e.name}),Ji(r,"length",{__proto__:null,value:e.length}),Ji(We.Readable.prototype,t,{__proto__:null,value:r,enumerable:!1,configurable:!0,writable:!0})}var Ew;for(let t of ST(vT)){let r=function(...i){if(new.target)throw _T();return AT(e,this,i)};Ew=r;let e=vT[t];Ji(r,"name",{__proto__:null,value:e.name}),Ji(r,"length",{__proto__:null,value:e.length}),Ji(We.Readable.prototype,t,{__proto__:null,value:r,enumerable:!1,configurable:!0,writable:!0})}var Ew;We.Writable=qh();We.Duplex=oi();We.Transform=tw();We.PassThrough=nw();We.pipeline=IT;var{addAbortSignal:y4}=Ud();We.addAbortSignal=y4;We.finished=BT;We.destroy=p4;We.compose=f4;We.setDefaultHighWaterMark=l4;We.getDefaultHighWaterMark=h4;Ji(We,"promises",{__proto__:null,configurable:!0,enumerable:!0,get(){return xw}});Ji(IT,TT,{__proto__:null,enumerable:!0,get(){return xw.pipeline}});Ji(BT,TT,{__proto__:null,enumerable:!0,get(){return xw.finished}});We.Stream=We;We._isUint8Array=function(e){return e instanceof Uint8Array};We._uint8ArrayToBuffer=function(e){return d4.from(e.buffer,e.byteOffset,e.byteLength)}});var vw=oe((wj,gt)=>{"use strict";l();var _t=bw(),g4=ww(),m4=_t.Readable.destroy;gt.exports=_t.Readable;gt.exports._uint8ArrayToBuffer=_t._uint8ArrayToBuffer;gt.exports._isUint8Array=_t._isUint8Array;gt.exports.isDisturbed=_t.isDisturbed;gt.exports.isErrored=_t.isErrored;gt.exports.isReadable=_t.isReadable;gt.exports.Readable=_t.Readable;gt.exports.Writable=_t.Writable;gt.exports.Duplex=_t.Duplex;gt.exports.Transform=_t.Transform;gt.exports.PassThrough=_t.PassThrough;gt.exports.addAbortSignal=_t.addAbortSignal;gt.exports.finished=_t.finished;gt.exports.destroy=_t.destroy;gt.exports.destroy=m4;gt.exports.pipeline=_t.pipeline;gt.exports.compose=_t.compose;Object.defineProperty(_t,"promises",{configurable:!0,enumerable:!0,get(){return g4}});gt.exports.Stream=_t.Stream;gt.exports.default=gt.exports});var X_=oe((Kp,J_)=>{l();(function(t,e){typeof Kp=="object"&&typeof J_<"u"?e(Kp):typeof define=="function"&&define.amd?define(["exports"],e):e(t.URI=t.URI||{})})(Kp,function(t){"use strict";function e(){for(var B=arguments.length,v=Array(B),k=0;k<B;k++)v[k]=arguments[k];if(v.length>1){v[0]=v[0].slice(0,-1);for(var K=v.length-1,H=1;H<K;++H)v[H]=v[H].slice(1,-1);return v[K]=v[K].slice(1),v.join("")}else return v[0]}function r(B){return"(?:"+B+")"}function n(B){return B===void 0?"undefined":B===null?"null":Object.prototype.toString.call(B).split(" ").pop().split("]").shift().toLowerCase()}function i(B){return B.toUpperCase()}function o(B){return B!=null?B instanceof Array?B:typeof B.length!="number"||B.split||B.setInterval||B.call?[B]:Array.prototype.slice.call(B):[]}function s(B,v){var k=B;if(v)for(var K in v)k[K]=v[K];return k}function c(B){var v="[A-Za-z]",k="[\\x0D]",K="[0-9]",H="[\\x22]",te=e(K,"[A-Fa-f]"),fe="[\\x0A]",Ae="[\\x20]",De=r(r("%[EFef]"+te+"%"+te+te+"%"+te+te)+"|"+r("%[89A-Fa-f]"+te+"%"+te+te)+"|"+r("%"+te+te)),mt="[\\:\\/\\?\\#\\[\\]\\@]",Se="[\\!\\$\\&\\'\\(\\)\\*\\+\\,\\;\\=]",tt=e(mt,Se),wt=B?"[\\xA0-\\u200D\\u2010-\\u2029\\u202F-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF]":"[]",Xe=B?"[\\uE000-\\uF8FF]":"[]",Ie=e(v,K,"[\\-\\.\\_\\~]",wt),rt=r(v+e(v,K,"[\\+\\-\\.]")+"*"),Ne=r(r(De+"|"+e(Ie,Se,"[\\:]"))+"*"),ls=r(r("25[0-5]")+"|"+r("2[0-4]"+K)+"|"+r("1"+K+K)+"|"+r("[1-9]"+K)+"|"+K),Sr=r(r("25[0-5]")+"|"+r("2[0-4]"+K)+"|"+r("1"+K+K)+"|"+r("0?[1-9]"+K)+"|0?0?"+K),Gr=r(Sr+"\\."+Sr+"\\."+Sr+"\\."+Sr),$e=r(te+"{1,4}"),Ar=r(r($e+"\\:"+$e)+"|"+Gr),zr=r(r($e+"\\:")+"{6}"+Ar),Pn=r("\\:\\:"+r($e+"\\:")+"{5}"+Ar),hs=r(r($e)+"?\\:\\:"+r($e+"\\:")+"{4}"+Ar),yi=r(r(r($e+"\\:")+"{0,1}"+$e)+"?\\:\\:"+r($e+"\\:")+"{3}"+Ar),wu=r(r(r($e+"\\:")+"{0,2}"+$e)+"?\\:\\:"+r($e+"\\:")+"{2}"+Ar),Rf=r(r(r($e+"\\:")+"{0,3}"+$e)+"?\\:\\:"+$e+"\\:"+Ar),Uf=r(r(r($e+"\\:")+"{0,4}"+$e)+"?\\:\\:"+Ar),Bc=r(r(r($e+"\\:")+"{0,5}"+$e)+"?\\:\\:"+$e),Rc=r(r(r($e+"\\:")+"{0,6}"+$e)+"?\\:\\:"),gi=r([zr,Pn,hs,yi,wu,Rf,Uf,Bc,Rc].join("|")),Uc=r(r(Ie+"|"+De)+"+"),ay=r(gi+"\\%25"+Uc),ps=r(gi+r("\\%25|\\%(?!"+te+"{2})")+Uc),gB=r("[vV]"+te+"+\\."+e(Ie,Se,"[\\:]")+"+"),mB=r("\\["+r(ps+"|"+gi+"|"+gB)+"\\]"),gx=r(r(De+"|"+e(Ie,Se))+"*"),bu=r(mB+"|"+Gr+"(?!"+gx+")|"+gx),xu=r(K+"*"),mx=r(r(Ne+"@")+"?"+bu+r("\\:"+xu)+"?"),Eu=r(De+"|"+e(Ie,Se,"[\\:\\@]")),wB=r(Eu+"*"),wx=r(Eu+"+"),bB=r(r(De+"|"+e(Ie,Se,"[\\@]"))+"+"),mi=r(r("\\/"+wB)+"*"),Oc=r("\\/"+r(wx+mi)+"?"),uy=r(bB+mi),Of=r(wx+mi),Dc="(?!"+Eu+")",jL=r(mi+"|"+Oc+"|"+uy+"|"+Of+"|"+Dc),kc=r(r(Eu+"|"+e("[\\/\\?]",Xe))+"*"),vu=r(r(Eu+"|[\\/\\?]")+"*"),bx=r(r("\\/\\/"+mx+mi)+"|"+Oc+"|"+Of+"|"+Dc),xB=r(rt+"\\:"+bx+r("\\?"+kc)+"?"+r("\\#"+vu)+"?"),EB=r(r("\\/\\/"+mx+mi)+"|"+Oc+"|"+uy+"|"+Dc),vB=r(EB+r("\\?"+kc)+"?"+r("\\#"+vu)+"?"),WL=r(xB+"|"+vB),GL=r(rt+"\\:"+bx+r("\\?"+kc)+"?"),zL="^("+rt+")\\:"+r(r("\\/\\/("+r("("+Ne+")@")+"?("+bu+")"+r("\\:("+xu+")")+"?)")+"?("+mi+"|"+Oc+"|"+Of+"|"+Dc+")")+r("\\?("+kc+")")+"?"+r("\\#("+vu+")")+"?$",YL="^(){0}"+r(r("\\/\\/("+r("("+Ne+")@")+"?("+bu+")"+r("\\:("+xu+")")+"?)")+"?("+mi+"|"+Oc+"|"+uy+"|"+Dc+")")+r("\\?("+kc+")")+"?"+r("\\#("+vu+")")+"?$",JL="^("+rt+")\\:"+r(r("\\/\\/("+r("("+Ne+")@")+"?("+bu+")"+r("\\:("+xu+")")+"?)")+"?("+mi+"|"+Oc+"|"+Of+"|"+Dc+")")+r("\\?("+kc+")")+"?$",XL="^"+r("\\#("+vu+")")+"?$",ZL="^"+r("("+Ne+")@")+"?("+bu+")"+r("\\:("+xu+")")+"?$";return{NOT_SCHEME:new RegExp(e("[^]",v,K,"[\\+\\-\\.]"),"g"),NOT_USERINFO:new RegExp(e("[^\\%\\:]",Ie,Se),"g"),NOT_HOST:new RegExp(e("[^\\%\\[\\]\\:]",Ie,Se),"g"),NOT_PATH:new RegExp(e("[^\\%\\/\\:\\@]",Ie,Se),"g"),NOT_PATH_NOSCHEME:new RegExp(e("[^\\%\\/\\@]",Ie,Se),"g"),NOT_QUERY:new RegExp(e("[^\\%]",Ie,Se,"[\\:\\@\\/\\?]",Xe),"g"),NOT_FRAGMENT:new RegExp(e("[^\\%]",Ie,Se,"[\\:\\@\\/\\?]"),"g"),ESCAPE:new RegExp(e("[^]",Ie,Se),"g"),UNRESERVED:new RegExp(Ie,"g"),OTHER_CHARS:new RegExp(e("[^\\%]",Ie,tt),"g"),PCT_ENCODED:new RegExp(De,"g"),IPV4ADDRESS:new RegExp("^("+Gr+")$"),IPV6ADDRESS:new RegExp("^\\[?("+gi+")"+r(r("\\%25|\\%(?!"+te+"{2})")+"("+Uc+")")+"?\\]?$")}}var a=c(!1),u=c(!0),d=function(){function B(v,k){var K=[],H=!0,te=!1,fe=void 0;try{for(var Ae=v[Symbol.iterator](),De;!(H=(De=Ae.next()).done)&&(K.push(De.value),!(k&&K.length===k));H=!0);}catch(mt){te=!0,fe=mt}finally{try{!H&&Ae.return&&Ae.return()}finally{if(te)throw fe}}return K}return function(v,k){if(Array.isArray(v))return v;if(Symbol.iterator in Object(v))return B(v,k);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),f=function(B){if(Array.isArray(B)){for(var v=0,k=Array(B.length);v<B.length;v++)k[v]=B[v];return k}else return Array.from(B)},h=2147483647,p=36,y=1,g=26,x=38,S=700,_=72,A=128,O="-",T=/^xn--/,M=/[^\0-\x7E]/,q=/[\x2E\u3002\uFF0E\uFF61]/g,j={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},$=p-y,Z=Math.floor,Q=String.fromCharCode;function G(B){throw new RangeError(j[B])}function I(B,v){for(var k=[],K=B.length;K--;)k[K]=v(B[K]);return k}function D(B,v){var k=B.split("@"),K="";k.length>1&&(K=k[0]+"@",B=k[1]),B=B.replace(q,".");var H=B.split("."),te=I(H,v).join(".");return K+te}function E(B){for(var v=[],k=0,K=B.length;k<K;){var H=B.charCodeAt(k++);if(H>=55296&&H<=56319&&k<K){var te=B.charCodeAt(k++);(te&64512)==56320?v.push(((H&1023)<<10)+(te&1023)+65536):(v.push(H),k--)}else v.push(H)}return v}var U=function(v){return String.fromCodePoint.apply(String,f(v))},L=function(v){return v-48<10?v-22:v-65<26?v-65:v-97<26?v-97:p},N=function(v,k){return v+22+75*(v<26)-((k!=0)<<5)},R=function(v,k,K){var H=0;for(v=K?Z(v/S):v>>1,v+=Z(v/k);v>$*g>>1;H+=p)v=Z(v/$);return Z(H+($+1)*v/(v+x))},C=function(v){var k=[],K=v.length,H=0,te=A,fe=_,Ae=v.lastIndexOf(O);Ae<0&&(Ae=0);for(var De=0;De<Ae;++De)v.charCodeAt(De)>=128&&G("not-basic"),k.push(v.charCodeAt(De));for(var mt=Ae>0?Ae+1:0;mt<K;){for(var Se=H,tt=1,wt=p;;wt+=p){mt>=K&&G("invalid-input");var Xe=L(v.charCodeAt(mt++));(Xe>=p||Xe>Z((h-H)/tt))&&G("overflow"),H+=Xe*tt;var Ie=wt<=fe?y:wt>=fe+g?g:wt-fe;if(Xe<Ie)break;var rt=p-Ie;tt>Z(h/rt)&&G("overflow"),tt*=rt}var Ne=k.length+1;fe=R(H-Se,Ne,Se==0),Z(H/Ne)>h-te&&G("overflow"),te+=Z(H/Ne),H%=Ne,k.splice(H++,0,te)}return String.fromCodePoint.apply(String,k)},P=function(v){var k=[];v=E(v);var K=v.length,H=A,te=0,fe=_,Ae=!0,De=!1,mt=void 0;try{for(var Se=v[Symbol.iterator](),tt;!(Ae=(tt=Se.next()).done);Ae=!0){var wt=tt.value;wt<128&&k.push(Q(wt))}}catch(ps){De=!0,mt=ps}finally{try{!Ae&&Se.return&&Se.return()}finally{if(De)throw mt}}var Xe=k.length,Ie=Xe;for(Xe&&k.push(O);Ie<K;){var rt=h,Ne=!0,ls=!1,Sr=void 0;try{for(var Gr=v[Symbol.iterator](),$e;!(Ne=($e=Gr.next()).done);Ne=!0){var Ar=$e.value;Ar>=H&&Ar<rt&&(rt=Ar)}}catch(ps){ls=!0,Sr=ps}finally{try{!Ne&&Gr.return&&Gr.return()}finally{if(ls)throw Sr}}var zr=Ie+1;rt-H>Z((h-te)/zr)&&G("overflow"),te+=(rt-H)*zr,H=rt;var Pn=!0,hs=!1,yi=void 0;try{for(var wu=v[Symbol.iterator](),Rf;!(Pn=(Rf=wu.next()).done);Pn=!0){var Uf=Rf.value;if(Uf<H&&++te>h&&G("overflow"),Uf==H){for(var Bc=te,Rc=p;;Rc+=p){var gi=Rc<=fe?y:Rc>=fe+g?g:Rc-fe;if(Bc<gi)break;var Uc=Bc-gi,ay=p-gi;k.push(Q(N(gi+Uc%ay,0))),Bc=Z(Uc/ay)}k.push(Q(N(Bc,0))),fe=R(te,zr,Ie==Xe),te=0,++Ie}}}catch(ps){hs=!0,yi=ps}finally{try{!Pn&&wu.return&&wu.return()}finally{if(hs)throw yi}}++te,++H}return k.join("")},V=function(v){return D(v,function(k){return T.test(k)?C(k.slice(4).toLowerCase()):k})},J=function(v){return D(v,function(k){return M.test(k)?"xn--"+P(k):k})},z={version:"2.1.0",ucs2:{decode:E,encode:U},decode:C,encode:P,toASCII:J,toUnicode:V},W={};function Y(B){var v=B.charCodeAt(0),k=void 0;return v<16?k="%0"+v.toString(16).toUpperCase():v<128?k="%"+v.toString(16).toUpperCase():v<2048?k="%"+(v>>6|192).toString(16).toUpperCase()+"%"+(v&63|128).toString(16).toUpperCase():k="%"+(v>>12|224).toString(16).toUpperCase()+"%"+(v>>6&63|128).toString(16).toUpperCase()+"%"+(v&63|128).toString(16).toUpperCase(),k}function X(B){for(var v="",k=0,K=B.length;k<K;){var H=parseInt(B.substr(k+1,2),16);if(H<128)v+=String.fromCharCode(H),k+=3;else if(H>=194&&H<224){if(K-k>=6){var te=parseInt(B.substr(k+4,2),16);v+=String.fromCharCode((H&31)<<6|te&63)}else v+=B.substr(k,6);k+=6}else if(H>=224){if(K-k>=9){var fe=parseInt(B.substr(k+4,2),16),Ae=parseInt(B.substr(k+7,2),16);v+=String.fromCharCode((H&15)<<12|(fe&63)<<6|Ae&63)}else v+=B.substr(k,9);k+=9}else v+=B.substr(k,3),k+=3}return v}function ue(B,v){function k(K){var H=X(K);return H.match(v.UNRESERVED)?H:K}return B.scheme&&(B.scheme=String(B.scheme).replace(v.PCT_ENCODED,k).toLowerCase().replace(v.NOT_SCHEME,"")),B.userinfo!==void 0&&(B.userinfo=String(B.userinfo).replace(v.PCT_ENCODED,k).replace(v.NOT_USERINFO,Y).replace(v.PCT_ENCODED,i)),B.host!==void 0&&(B.host=String(B.host).replace(v.PCT_ENCODED,k).toLowerCase().replace(v.NOT_HOST,Y).replace(v.PCT_ENCODED,i)),B.path!==void 0&&(B.path=String(B.path).replace(v.PCT_ENCODED,k).replace(B.scheme?v.NOT_PATH:v.NOT_PATH_NOSCHEME,Y).replace(v.PCT_ENCODED,i)),B.query!==void 0&&(B.query=String(B.query).replace(v.PCT_ENCODED,k).replace(v.NOT_QUERY,Y).replace(v.PCT_ENCODED,i)),B.fragment!==void 0&&(B.fragment=String(B.fragment).replace(v.PCT_ENCODED,k).replace(v.NOT_FRAGMENT,Y).replace(v.PCT_ENCODED,i)),B}function ee(B){return B.replace(/^0*(.*)/,"$1")||"0"}function ce(B,v){var k=B.match(v.IPV4ADDRESS)||[],K=d(k,2),H=K[1];return H?H.split(".").map(ee).join("."):B}function Oe(B,v){var k=B.match(v.IPV6ADDRESS)||[],K=d(k,3),H=K[1],te=K[2];if(H){for(var fe=H.toLowerCase().split("::").reverse(),Ae=d(fe,2),De=Ae[0],mt=Ae[1],Se=mt?mt.split(":").map(ee):[],tt=De.split(":").map(ee),wt=v.IPV4ADDRESS.test(tt[tt.length-1]),Xe=wt?7:8,Ie=tt.length-Xe,rt=Array(Xe),Ne=0;Ne<Xe;++Ne)rt[Ne]=Se[Ne]||tt[Ie+Ne]||"";wt&&(rt[Xe-1]=ce(rt[Xe-1],v));var ls=rt.reduce(function(zr,Pn,hs){if(!Pn||Pn==="0"){var yi=zr[zr.length-1];yi&&yi.index+yi.length===hs?yi.length++:zr.push({index:hs,length:1})}return zr},[]),Sr=ls.sort(function(zr,Pn){return Pn.length-zr.length})[0],Gr=void 0;if(Sr&&Sr.length>1){var $e=rt.slice(0,Sr.index),Ar=rt.slice(Sr.index+Sr.length);Gr=$e.join(":")+"::"+Ar.join(":")}else Gr=rt.join(":");return te&&(Gr+="%"+te),Gr}else return B}var Ke=/^(?:([^:\/?#]+):)?(?:\/\/((?:([^\/?#@]*)@)?(\[[^\/?#\]]+\]|[^\/?#:]*)(?:\:(\d*))?))?([^?#]*)(?:\?([^#]*))?(?:#((?:.|\n|\r)*))?/i,Je="".match(/(){0}/)[1]===void 0;function xt(B){var v=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},k={},K=v.iri!==!1?u:a;v.reference==="suffix"&&(B=(v.scheme?v.scheme+":":"")+"//"+B);var H=B.match(Ke);if(H){Je?(k.scheme=H[1],k.userinfo=H[3],k.host=H[4],k.port=parseInt(H[5],10),k.path=H[6]||"",k.query=H[7],k.fragment=H[8],isNaN(k.port)&&(k.port=H[5])):(k.scheme=H[1]||void 0,k.userinfo=B.indexOf("@")!==-1?H[3]:void 0,k.host=B.indexOf("//")!==-1?H[4]:void 0,k.port=parseInt(H[5],10),k.path=H[6]||"",k.query=B.indexOf("?")!==-1?H[7]:void 0,k.fragment=B.indexOf("#")!==-1?H[8]:void 0,isNaN(k.port)&&(k.port=B.match(/\/\/(?:.|\n)*\:(?:\/|\?|\#|$)/)?H[4]:void 0)),k.host&&(k.host=Oe(ce(k.host,K),K)),k.scheme===void 0&&k.userinfo===void 0&&k.host===void 0&&k.port===void 0&&!k.path&&k.query===void 0?k.reference="same-document":k.scheme===void 0?k.reference="relative":k.fragment===void 0?k.reference="absolute":k.reference="uri",v.reference&&v.reference!=="suffix"&&v.reference!==k.reference&&(k.error=k.error||"URI is not a "+v.reference+" reference.");var te=W[(v.scheme||k.scheme||"").toLowerCase()];if(!v.unicodeSupport&&(!te||!te.unicodeSupport)){if(k.host&&(v.domainHost||te&&te.domainHost))try{k.host=z.toASCII(k.host.replace(K.PCT_ENCODED,X).toLowerCase())}catch(fe){k.error=k.error||"Host's domain name can not be converted to ASCII via punycode: "+fe}ue(k,a)}else ue(k,K);te&&te.parse&&te.parse(k,v)}else k.error=k.error||"URI can not be parsed.";return k}function pi(B,v){var k=v.iri!==!1?u:a,K=[];return B.userinfo!==void 0&&(K.push(B.userinfo),K.push("@")),B.host!==void 0&&K.push(Oe(ce(String(B.host),k),k).replace(k.IPV6ADDRESS,function(H,te,fe){return"["+te+(fe?"%25"+fe:"")+"]"})),(typeof B.port=="number"||typeof B.port=="string")&&(K.push(":"),K.push(String(B.port))),K.length?K.join(""):void 0}var ho=/^\.\.?\//,pu=/^\/\.(\/|$)/,Sf=/^\/\.\.(\/|$)/,oy=/^\/?(?:.|\n)*?(?=\/|$)/;function po(B){for(var v=[];B.length;)if(B.match(ho))B=B.replace(ho,"");else if(B.match(pu))B=B.replace(pu,"/");else if(B.match(Sf))B=B.replace(Sf,"/"),v.pop();else if(B==="."||B==="..")B="";else{var k=B.match(oy);if(k){var K=k[0];B=B.slice(K.length),v.push(K)}else throw new Error("Unexpected dot segment condition")}return v.join("")}function jr(B){var v=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},k=v.iri?u:a,K=[],H=W[(v.scheme||B.scheme||"").toLowerCase()];if(H&&H.serialize&&H.serialize(B,v),B.host&&!k.IPV6ADDRESS.test(B.host)){if(v.domainHost||H&&H.domainHost)try{B.host=v.iri?z.toUnicode(B.host):z.toASCII(B.host.replace(k.PCT_ENCODED,X).toLowerCase())}catch(Ae){B.error=B.error||"Host's domain name can not be converted to "+(v.iri?"Unicode":"ASCII")+" via punycode: "+Ae}}ue(B,k),v.reference!=="suffix"&&B.scheme&&(K.push(B.scheme),K.push(":"));var te=pi(B,v);if(te!==void 0&&(v.reference!=="suffix"&&K.push("//"),K.push(te),B.path&&B.path.charAt(0)!=="/"&&K.push("/")),B.path!==void 0){var fe=B.path;!v.absolutePath&&(!H||!H.absolutePath)&&(fe=po(fe)),te===void 0&&(fe=fe.replace(/^\/\//,"/%2F")),K.push(fe)}return B.query!==void 0&&(K.push("?"),K.push(B.query)),B.fragment!==void 0&&(K.push("#"),K.push(B.fragment)),K.join("")}function yu(B,v){var k=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},K=arguments[3],H={};return K||(B=xt(jr(B,k),k),v=xt(jr(v,k),k)),k=k||{},!k.tolerant&&v.scheme?(H.scheme=v.scheme,H.userinfo=v.userinfo,H.host=v.host,H.port=v.port,H.path=po(v.path||""),H.query=v.query):(v.userinfo!==void 0||v.host!==void 0||v.port!==void 0?(H.userinfo=v.userinfo,H.host=v.host,H.port=v.port,H.path=po(v.path||""),H.query=v.query):(v.path?(v.path.charAt(0)==="/"?H.path=po(v.path):((B.userinfo!==void 0||B.host!==void 0||B.port!==void 0)&&!B.path?H.path="/"+v.path:B.path?H.path=B.path.slice(0,B.path.lastIndexOf("/")+1)+v.path:H.path=v.path,H.path=po(H.path)),H.query=v.query):(H.path=B.path,v.query!==void 0?H.query=v.query:H.query=B.query),H.userinfo=B.userinfo,H.host=B.host,H.port=B.port),H.scheme=B.scheme),H.fragment=v.fragment,H}function Af(B,v,k){var K=s({scheme:"null"},k);return jr(yu(xt(B,K),xt(v,K),K,!0),K)}function gu(B,v){return typeof B=="string"?B=jr(xt(B,v),v):n(B)==="object"&&(B=xt(jr(B,v),v)),B}function Tf(B,v,k){return typeof B=="string"?B=jr(xt(B,k),k):n(B)==="object"&&(B=jr(B,k)),typeof v=="string"?v=jr(xt(v,k),k):n(v)==="object"&&(v=jr(v,k)),B===v}function _f(B,v){return B&&B.toString().replace(!v||!v.iri?a.ESCAPE:u.ESCAPE,Y)}function Wr(B,v){return B&&B.toString().replace(!v||!v.iri?a.PCT_ENCODED:u.PCT_ENCODED,X)}var yo={scheme:"http",domainHost:!0,parse:function(v,k){return v.host||(v.error=v.error||"HTTP URIs must have a host."),v},serialize:function(v,k){var K=String(v.scheme).toLowerCase()==="https";return(v.port===(K?443:80)||v.port==="")&&(v.port=void 0),v.path||(v.path="/"),v}},mu={scheme:"https",domainHost:yo.domainHost,parse:yo.parse,serialize:yo.serialize};function If(B){return typeof B.secure=="boolean"?B.secure:String(B.scheme).toLowerCase()==="wss"}var fs={scheme:"ws",domainHost:!0,parse:function(v,k){var K=v;return K.secure=If(K),K.resourceName=(K.path||"/")+(K.query?"?"+K.query:""),K.path=void 0,K.query=void 0,K},serialize:function(v,k){if((v.port===(If(v)?443:80)||v.port==="")&&(v.port=void 0),typeof v.secure=="boolean"&&(v.scheme=v.secure?"wss":"ws",v.secure=void 0),v.resourceName){var K=v.resourceName.split("?"),H=d(K,2),te=H[0],fe=H[1];v.path=te&&te!=="/"?te:void 0,v.query=fe,v.resourceName=void 0}return v.fragment=void 0,v}},Bf={scheme:"wss",domainHost:fs.domainHost,parse:fs.parse,serialize:fs.serialize},sy={},oB=!0,fx="[A-Za-z0-9\\-\\.\\_\\~"+(oB?"\\xA0-\\u200D\\u2010-\\u2029\\u202F-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF":"")+"]",Ln="[0-9A-Fa-f]",sB=r(r("%[EFef]"+Ln+"%"+Ln+Ln+"%"+Ln+Ln)+"|"+r("%[89A-Fa-f]"+Ln+"%"+Ln+Ln)+"|"+r("%"+Ln+Ln)),cB="[A-Za-z0-9\\!\\$\\%\\'\\*\\+\\-\\^\\_\\`\\{\\|\\}\\~]",aB="[\\!\\$\\%\\'\\(\\)\\*\\+\\,\\-\\.0-9\\<\\>A-Z\\x5E-\\x7E]",uB=e(aB,'[\\"\\\\]'),dB="[\\!\\$\\'\\(\\)\\*\\+\\,\\;\\:\\@]",fB=new RegExp(fx,"g"),Ic=new RegExp(sB,"g"),lB=new RegExp(e("[^]",cB,"[\\.]",'[\\"]',uB),"g"),lx=new RegExp(e("[^]",fx,dB),"g"),hB=lx;function cy(B){var v=X(B);return v.match(fB)?v:B}var hx={scheme:"mailto",parse:function(v,k){var K=v,H=K.to=K.path?K.path.split(","):[];if(K.path=void 0,K.query){for(var te=!1,fe={},Ae=K.query.split("&"),De=0,mt=Ae.length;De<mt;++De){var Se=Ae[De].split("=");switch(Se[0]){case"to":for(var tt=Se[1].split(","),wt=0,Xe=tt.length;wt<Xe;++wt)H.push(tt[wt]);break;case"subject":K.subject=Wr(Se[1],k);break;case"body":K.body=Wr(Se[1],k);break;default:te=!0,fe[Wr(Se[0],k)]=Wr(Se[1],k);break}}te&&(K.headers=fe)}K.query=void 0;for(var Ie=0,rt=H.length;Ie<rt;++Ie){var Ne=H[Ie].split("@");if(Ne[0]=Wr(Ne[0]),k.unicodeSupport)Ne[1]=Wr(Ne[1],k).toLowerCase();else try{Ne[1]=z.toASCII(Wr(Ne[1],k).toLowerCase())}catch(ls){K.error=K.error||"Email address's domain name can not be converted to ASCII via punycode: "+ls}H[Ie]=Ne.join("@")}return K},serialize:function(v,k){var K=v,H=o(v.to);if(H){for(var te=0,fe=H.length;te<fe;++te){var Ae=String(H[te]),De=Ae.lastIndexOf("@"),mt=Ae.slice(0,De).replace(Ic,cy).replace(Ic,i).replace(lB,Y),Se=Ae.slice(De+1);try{Se=k.iri?z.toUnicode(Se):z.toASCII(Wr(Se,k).toLowerCase())}catch(Ie){K.error=K.error||"Email address's domain name can not be converted to "+(k.iri?"Unicode":"ASCII")+" via punycode: "+Ie}H[te]=mt+"@"+Se}K.path=H.join(",")}var tt=v.headers=v.headers||{};v.subject&&(tt.subject=v.subject),v.body&&(tt.body=v.body);var wt=[];for(var Xe in tt)tt[Xe]!==sy[Xe]&&wt.push(Xe.replace(Ic,cy).replace(Ic,i).replace(lx,Y)+"="+tt[Xe].replace(Ic,cy).replace(Ic,i).replace(hB,Y));return wt.length&&(K.query=wt.join("&")),K}},pB=/^([^\:]+)\:(.*)/,px={scheme:"urn",parse:function(v,k){var K=v.path&&v.path.match(pB),H=v;if(K){var te=k.scheme||H.scheme||"urn",fe=K[1].toLowerCase(),Ae=K[2],De=te+":"+(k.nid||fe),mt=W[De];H.nid=fe,H.nss=Ae,H.path=void 0,mt&&(H=mt.parse(H,k))}else H.error=H.error||"URN can not be parsed.";return H},serialize:function(v,k){var K=k.scheme||v.scheme||"urn",H=v.nid,te=K+":"+(k.nid||H),fe=W[te];fe&&(v=fe.serialize(v,k));var Ae=v,De=v.nss;return Ae.path=(H||k.nid)+":"+De,Ae}},yB=/^[0-9A-Fa-f]{8}(?:\-[0-9A-Fa-f]{4}){3}\-[0-9A-Fa-f]{12}$/,yx={scheme:"urn:uuid",parse:function(v,k){var K=v;return K.uuid=K.nss,K.nss=void 0,!k.tolerant&&(!K.uuid||!K.uuid.match(yB))&&(K.error=K.error||"UUID is not valid."),K},serialize:function(v,k){var K=v;return K.nss=(v.uuid||"").toLowerCase(),K}};W[yo.scheme]=yo,W[mu.scheme]=mu,W[fs.scheme]=fs,W[Bf.scheme]=Bf,W[hx.scheme]=hx,W[px.scheme]=px,W[yx.scheme]=yx,t.SCHEMES=W,t.pctEncChar=Y,t.pctDecChars=X,t.parse=xt,t.removeDotSegments=po,t.serialize=jr,t.resolveComponents=yu,t.resolve=Af,t.normalize=gu,t.equal=Tf,t.escapeComponent=_f,t.unescapeComponent=Wr,Object.defineProperty(t,"__esModule",{value:!0})})});var Q_=oe((FX,Z_)=>{"use strict";l();Z_.exports=function t(e){if(typeof e=="number"&&isNaN(e))throw new Error("NaN is not allowed");if(typeof e=="number"&&!isFinite(e))throw new Error("Infinity is not allowed");return e===null||typeof e!="object"?JSON.stringify(e):e.toJSON instanceof Function?t(e.toJSON()):Array.isArray(e)?`[${e.reduce((i,o,s)=>`${i}${s===0?"":","}${t(o===void 0||typeof o=="symbol"?null:o)}`,"")}]`:`{${Object.keys(e).sort().reduce((n,i)=>{if(e[i]===void 0||typeof e[i]=="symbol")return n;let o=n.length===0?"":",";return`${n}${o}${t(i)}:${t(e[i])}`},"")}}`}});var lI=oe((GQ,fI)=>{l();var iu=1e3,ou=iu*60,su=ou*60,xc=su*24,ZC=xc*7,QC=xc*365.25;fI.exports=function(t,e){e=e||{};var r=typeof t;if(r==="string"&&t.length>0)return eL(t);if(r==="number"&&isFinite(t))return e.long?rL(t):tL(t);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(t))};function eL(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*QC;case"weeks":case"week":case"w":return r*ZC;case"days":case"day":case"d":return r*xc;case"hours":case"hour":case"hrs":case"hr":case"h":return r*su;case"minutes":case"minute":case"mins":case"min":case"m":return r*ou;case"seconds":case"second":case"secs":case"sec":case"s":return r*iu;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}function tL(t){var e=Math.abs(t);return e>=xc?Math.round(t/xc)+"d":e>=su?Math.round(t/su)+"h":e>=ou?Math.round(t/ou)+"m":e>=iu?Math.round(t/iu)+"s":t+"ms"}function rL(t){var e=Math.abs(t);return e>=xc?Fp(t,e,xc,"day"):e>=su?Fp(t,e,su,"hour"):e>=ou?Fp(t,e,ou,"minute"):e>=iu?Fp(t,e,iu,"second"):t+" ms"}function Fp(t,e,r,n){var i=e>=r*1.5;return Math.round(t/r)+" "+n+(i?"s":"")}});var FL={};Su(FL,{AggregateBeaconError:()=>N0,Appendix:()=>ot,BECH32M_CHARS:()=>RL,BTCR2_DID_DOCUMENT_CONTEXT:()=>YI,BTCR2_UPDATE_CONTEXT:()=>_c,BeaconError:()=>Yt,BeaconFactory:()=>Ms,BeaconSignalDiscovery:()=>nx,BeaconUtils:()=>Fr,CASBeacon:()=>Ju,CASBeaconError:()=>C0,CHANGE_OUTPUT_VBYTES:()=>$0,DEFAULT_FEE_ESTIMATOR:()=>Cl,DEFAULT_MIN_CONF:()=>nB,DID_REGEX:()=>JI,DUST_LIMIT_SATS:()=>H0,DidBtcr2:()=>Ef,DidDocument:()=>qr,DidDocumentBuilder:()=>dx,DidVerificationMethod:()=>ny,GenesisDocument:()=>fu,ID_PLACEHOLDER_VALUE:()=>rr,Identifier:()=>fr,MULTIKEY_PUBLIC_KEY_MULTIBASE_PREFIX:()=>Tc,MULTIKEY_VERIFICATION_METHOD_TYPE:()=>Ac,P2PKH_BEACON_TX_VSIZE:()=>Cv,P2TR_BEACON_TX_VSIZE:()=>kv,P2WPKH_BEACON_TX_VSIZE:()=>Nv,Resolver:()=>lo,SINGLETON_BEACON_TX_VSIZE:()=>Lv,SMTBeacon:()=>id,SMTBeaconError:()=>ia,SPENDABLE_DUST_LIMIT_SATS:()=>Ll,SinglePartyBeacon:()=>Ci,SingletonBeacon:()=>Xu,SingletonBeaconError:()=>k0,StaticFeeEstimator:()=>oa,Updater:()=>xf,beaconTxVsize:()=>V0,buildAggregationBeaconTx:()=>a6,deriveSingletonAddress:()=>Pv,detectSingletonScriptKind:()=>q0,extractOpReturnSignalHash:()=>rx,getAggregationCommunicationKey:()=>iB,isBtcr2UpdateContext:()=>iy,isMultikeyVerificationMethod:()=>XI,opReturnScript:()=>j0,resolveBtcr2SenderPk:()=>qL,resolveChangeAddress:()=>F0,selectSpendableUtxo:()=>Kv});l();l();l();l();var ws=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;function bs(t){return t instanceof Uint8Array||ArrayBuffer.isView(t)&&t.constructor.name==="Uint8Array"}function Au(t){if(!Number.isSafeInteger(t)||t<0)throw new Error("positive integer expected, got "+t)}function pn(t,...e){if(!bs(t))throw new Error("Uint8Array expected");if(e.length>0&&!e.includes(t.length))throw new Error("Uint8Array expected of length "+e+", got length="+t.length)}function Pf(t){if(typeof t!="function"||typeof t.create!="function")throw new Error("Hash should be wrapped by utils.createHasher");Au(t.outputLen),Au(t.blockLen)}function Mc(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 Vx(t,e){pn(t);let r=e.outputLen;if(t.length<r)throw new Error("digestInto() expects output buffer of length at least "+r)}function qn(...t){for(let e=0;e<t.length;e++)t[e].fill(0)}function Mf(t){return new DataView(t.buffer,t.byteOffset,t.byteLength)}function yn(t,e){return t<<32-e|t>>>e}function Tu(t,e){return t<<e|t>>>32-e>>>0}var qx=typeof Uint8Array.from([]).toHex=="function"&&typeof Uint8Array.fromHex=="function",a8=Array.from({length:256},(t,e)=>e.toString(16).padStart(2,"0"));function Pt(t){if(pn(t),qx)return t.toHex();let e="";for(let r=0;r<t.length;r++)e+=a8[t[r]];return e}var vi={_0:48,_9:57,A:65,F:70,a:97,f:102};function Hx(t){if(t>=vi._0&&t<=vi._9)return t-vi._0;if(t>=vi.A&&t<=vi.F)return t-(vi.A-10);if(t>=vi.a&&t<=vi.f)return t-(vi.a-10)}function _r(t){if(typeof t!="string")throw new Error("hex string expected, got "+typeof t);if(qx)return Uint8Array.fromHex(t);let e=t.length,r=e/2;if(e%2)throw new Error("hex string expected, got unpadded hex of length "+e);let n=new Uint8Array(r);for(let i=0,o=0;i<r;i++,o+=2){let s=Hx(t.charCodeAt(o)),c=Hx(t.charCodeAt(o+1));if(s===void 0||c===void 0){let a=t[o]+t[o+1];throw new Error('hex string expected, got non-hex character "'+a+'" at index '+o)}n[i]=s*16+c}return n}function xs(t){if(typeof t!="string")throw new Error("string expected");return new Uint8Array(new TextEncoder().encode(t))}function _u(t){return typeof t=="string"&&(t=xs(t)),pn(t),t}function lt(...t){let e=0;for(let n=0;n<t.length;n++){let i=t[n];pn(i),e+=i.length}let r=new Uint8Array(e);for(let n=0,i=0;n<t.length;n++){let o=t[n];r.set(o,i),i+=o.length}return r}var Pc=class{};function Kf(t){let e=n=>t().update(_u(n)).digest(),r=t();return e.outputLen=r.outputLen,e.blockLen=r.blockLen,e.create=()=>t(),e}function Ir(t=32){if(ws&&typeof ws.getRandomValues=="function")return ws.getRandomValues(new Uint8Array(t));if(ws&&typeof ws.randomBytes=="function")return Uint8Array.from(ws.randomBytes(t));throw new Error("crypto.getRandomValues must be defined")}l();l();l();l();l();function u8(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),c=Number(r&o),a=n?4:0,u=n?0:4;t.setUint32(e+a,s,n),t.setUint32(e+u,c,n)}function Ey(t,e,r){return t&e^~t&r}function vy(t,e,r){return t&e^t&r^e&r}var Kc=class extends Pc{constructor(e,r,n,i){super(),this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.blockLen=e,this.outputLen=r,this.padOffset=n,this.isLE=i,this.buffer=new Uint8Array(e),this.view=Mf(this.buffer)}update(e){Mc(this),e=_u(e),pn(e);let{view:r,buffer:n,blockLen:i}=this,o=e.length;for(let s=0;s<o;){let c=Math.min(i-this.pos,o-s);if(c===i){let a=Mf(e);for(;i<=o-s;s+=i)this.process(a,s);continue}n.set(e.subarray(s,s+c),this.pos),this.pos+=c,s+=c,this.pos===i&&(this.process(r,0),this.pos=0)}return this.length+=e.length,this.roundClean(),this}digestInto(e){Mc(this),Vx(e,this),this.finished=!0;let{buffer:r,view:n,blockLen:i,isLE:o}=this,{pos:s}=this;r[s++]=128,qn(this.buffer.subarray(s)),this.padOffset>i-s&&(this.process(n,0),s=0);for(let f=s;f<i;f++)r[f]=0;u8(n,i-8,BigInt(this.length*8),o),this.process(n,0);let c=Mf(e),a=this.outputLen;if(a%4)throw new Error("_sha2: outputLen should be aligned to 32bit");let u=a/4,d=this.get();if(u>d.length)throw new Error("_sha2: outputLen bigger than state");for(let f=0;f<u;f++)c.setUint32(4*f,d[f],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:c}=this;return e.destroyed=s,e.finished=o,e.length=i,e.pos=c,i%r&&e.buffer.set(n),e}clone(){return this._cloneInto()}},Si=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]);var d8=Uint32Array.from([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]),go=new Uint32Array(64),Sy=class extends Kc{constructor(e=32){super(64,e,8,!1),this.A=Si[0]|0,this.B=Si[1]|0,this.C=Si[2]|0,this.D=Si[3]|0,this.E=Si[4]|0,this.F=Si[5]|0,this.G=Si[6]|0,this.H=Si[7]|0}get(){let{A:e,B:r,C:n,D:i,E:o,F:s,G:c,H:a}=this;return[e,r,n,i,o,s,c,a]}set(e,r,n,i,o,s,c,a){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=c|0,this.H=a|0}process(e,r){for(let f=0;f<16;f++,r+=4)go[f]=e.getUint32(r,!1);for(let f=16;f<64;f++){let h=go[f-15],p=go[f-2],y=yn(h,7)^yn(h,18)^h>>>3,g=yn(p,17)^yn(p,19)^p>>>10;go[f]=g+go[f-7]+y+go[f-16]|0}let{A:n,B:i,C:o,D:s,E:c,F:a,G:u,H:d}=this;for(let f=0;f<64;f++){let h=yn(c,6)^yn(c,11)^yn(c,25),p=d+h+Ey(c,a,u)+d8[f]+go[f]|0,g=(yn(n,2)^yn(n,13)^yn(n,22))+vy(n,i,o)|0;d=u,u=a,a=c,c=s+p|0,s=o,o=i,i=n,n=p+g|0}n=n+this.A|0,i=i+this.B|0,o=o+this.C|0,s=s+this.D|0,c=c+this.E|0,a=a+this.F|0,u=u+this.G|0,d=d+this.H|0,this.set(n,i,o,s,c,a,u,d)}roundClean(){qn(go)}destroy(){this.set(0,0,0,0,0,0,0,0),qn(this.buffer)}};var ke=Kf(()=>new Sy);l();l();l();var $f=class extends Pc{constructor(e,r){super(),this.finished=!1,this.destroyed=!1,Pf(e);let n=_u(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),qn(o)}update(e){return Mc(this),this.iHash.update(e),this}digestInto(e){Mc(this),pn(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:c}=this;return e=e,e.finished=i,e.destroyed=o,e.blockLen=s,e.outputLen=c,e.oHash=r._cloneInto(e.oHash),e.iHash=n._cloneInto(e.iHash),e}clone(){return this._cloneInto()}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}},Ay=(t,e,r)=>new $f(t,e).update(r).digest();Ay.create=(t,e)=>new $f(t,e);l();var Iy=BigInt(0),_y=BigInt(1);function Iu(t,e=""){if(typeof t!="boolean"){let r=e&&`"${e}"`;throw new Error(r+"expected boolean, got type="+typeof t)}return t}function mo(t,e,r=""){let n=bs(t),i=t?.length,o=e!==void 0;if(!n||o&&i!==e){let s=r&&`"${r}" `,c=o?` of length ${e}`:"",a=n?`length=${i}`:`type=${typeof t}`;throw new Error(s+"expected Uint8Array"+c+", got "+a)}return t}function Bu(t){let e=t.toString(16);return e.length&1?"0"+e:e}function Fx(t){if(typeof t!="string")throw new Error("hex string expected, got "+typeof t);return t===""?Iy:BigInt("0x"+t)}function Ai(t){return Fx(Pt(t))}function By(t){return pn(t),Fx(Pt(Uint8Array.from(t).reverse()))}function $c(t,e){return _r(t.toString(16).padStart(e*2,"0"))}function Ry(t,e){return $c(t,e).reverse()}function st(t,e,r){let n;if(typeof e=="string")try{n=_r(e)}catch(o){throw new Error(t+" must be hex string or Uint8Array, cause: "+o)}else if(bs(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+" of length "+r+" expected, got "+i);return n}function wo(t,e){if(t.length!==e.length)return!1;let r=0;for(let n=0;n<t.length;n++)r|=t[n]^e[n];return r===0}var Ty=t=>typeof t=="bigint"&&Iy<=t;function Ru(t,e,r){return Ty(t)&&Ty(e)&&Ty(r)&&e<=t&&t<r}function jx(t,e,r,n){if(!Ru(e,r,n))throw new Error("expected valid "+t+": "+r+" <= n < "+n+", got "+e)}function Hf(t){let e;for(e=0;t>Iy;t>>=_y,e+=1);return e}var bo=t=>(_y<<BigInt(t))-_y;function Wx(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=p=>new Uint8Array(p),i=p=>Uint8Array.of(p),o=n(t),s=n(t),c=0,a=()=>{o.fill(1),s.fill(0),c=0},u=(...p)=>r(s,o,...p),d=(p=n(0))=>{s=u(i(0),p),o=u(),p.length!==0&&(s=u(i(1),p),o=u())},f=()=>{if(c++>=1e3)throw new Error("drbg: tried 1000 values");let p=0,y=[];for(;p<e;){o=u();let g=o.slice();y.push(g),p+=o.length}return lt(...y)};return(p,y)=>{a(),d(p);let g;for(;!(g=y(f()));)d();return a(),g}}function Uu(t,e,r={}){if(!t||typeof t!="object")throw new Error("expected valid options object");function n(i,o,s){let c=t[i];if(s&&c===void 0)return;let a=typeof c;if(a!==o||c===null)throw new Error(`param "${i}" is invalid: expected ${o}, got ${a}`)}Object.entries(e).forEach(([i,o])=>n(i,o,!1)),Object.entries(r).forEach(([i,o])=>n(i,o,!0))}function Uy(t){let e=new WeakMap;return(r,...n)=>{let i=e.get(r);if(i!==void 0)return i;let o=t(r,...n);return e.set(r,o),o}}l();l();var nr=BigInt(0),Ft=BigInt(1),Es=BigInt(2),Yx=BigInt(3),Jx=BigInt(4),Xx=BigInt(5),f8=BigInt(7),Zx=BigInt(8),l8=BigInt(9),Qx=BigInt(16);function Br(t,e){let r=t%e;return r>=nr?r:e+r}function Rr(t,e,r){let n=t;for(;e-- >nr;)n*=n,n%=r;return n}function Gx(t,e){if(t===nr)throw new Error("invert: expected non-zero number");if(e<=nr)throw new Error("invert: expected positive modulus, got "+e);let r=Br(t,e),n=e,i=nr,o=Ft,s=Ft,c=nr;for(;r!==nr;){let u=n/r,d=n%r,f=i-s*u,h=o-c*u;n=r,r=d,i=s,o=c,s=f,c=h}if(n!==Ft)throw new Error("invert: does not exist");return Br(i,e)}function Oy(t,e,r){if(!t.eql(t.sqr(e),r))throw new Error("Cannot find square root")}function eE(t,e){let r=(t.ORDER+Ft)/Jx,n=t.pow(e,r);return Oy(t,n,e),n}function h8(t,e){let r=(t.ORDER-Xx)/Zx,n=t.mul(e,Es),i=t.pow(n,r),o=t.mul(e,i),s=t.mul(t.mul(o,Es),i),c=t.mul(o,t.sub(s,t.ONE));return Oy(t,c,e),c}function p8(t){let e=xo(t),r=tE(t),n=r(e,e.neg(e.ONE)),i=r(e,n),o=r(e,e.neg(n)),s=(t+f8)/Qx;return(c,a)=>{let u=c.pow(a,s),d=c.mul(u,n),f=c.mul(u,i),h=c.mul(u,o),p=c.eql(c.sqr(d),a),y=c.eql(c.sqr(f),a);u=c.cmov(u,d,p),d=c.cmov(h,f,y);let g=c.eql(c.sqr(d),a),x=c.cmov(u,d,g);return Oy(c,x,a),x}}function tE(t){if(t<Yx)throw new Error("sqrt is not defined for small field");let e=t-Ft,r=0;for(;e%Es===nr;)e/=Es,r++;let n=Es,i=xo(t);for(;zx(i,n)===1;)if(n++>1e3)throw new Error("Cannot find square root: probably non-prime P");if(r===1)return eE;let o=i.pow(n,e),s=(e+Ft)/Es;return function(a,u){if(a.is0(u))return u;if(zx(a,u)!==1)throw new Error("Cannot find square root");let d=r,f=a.mul(a.ONE,o),h=a.pow(u,e),p=a.pow(u,s);for(;!a.eql(h,a.ONE);){if(a.is0(h))return a.ZERO;let y=1,g=a.sqr(h);for(;!a.eql(g,a.ONE);)if(y++,g=a.sqr(g),y===d)throw new Error("Cannot find square root");let x=Ft<<BigInt(d-y-1),S=a.pow(f,x);d=y,f=a.sqr(S),h=a.mul(h,f),p=a.mul(p,S)}return p}}function y8(t){return t%Jx===Yx?eE:t%Zx===Xx?h8:t%Qx===l8?p8(t):tE(t)}var g8=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function Dy(t){let e={ORDER:"bigint",MASK:"bigint",BYTES:"number",BITS:"number"},r=g8.reduce((n,i)=>(n[i]="function",n),e);return Uu(t,r),t}function m8(t,e,r){if(r<nr)throw new Error("invalid exponent, negatives unsupported");if(r===nr)return t.ONE;if(r===Ft)return e;let n=t.ONE,i=e;for(;r>nr;)r&Ft&&(n=t.mul(n,i)),i=t.sqr(i),r>>=Ft;return n}function Vf(t,e,r=!1){let n=new Array(e.length).fill(r?t.ZERO:void 0),i=e.reduce((s,c,a)=>t.is0(c)?s:(n[a]=s,t.mul(s,c)),t.ONE),o=t.inv(i);return e.reduceRight((s,c,a)=>t.is0(c)?s:(n[a]=t.mul(s,n[a]),t.mul(s,c)),o),n}function zx(t,e){let r=(t.ORDER-Ft)/Es,n=t.pow(e,r),i=t.eql(n,t.ONE),o=t.eql(n,t.ZERO),s=t.eql(n,t.neg(t.ONE));if(!i&&!o&&!s)throw new Error("invalid Legendre symbol result");return i?1:o?0:-1}function qf(t,e){e!==void 0&&Au(e);let r=e!==void 0?e:t.toString(2).length,n=Math.ceil(r/8);return{nBitLength:r,nByteLength:n}}function xo(t,e,r=!1,n={}){if(t<=nr)throw new Error("invalid field: expected ORDER > 0, got "+t);let i,o,s=!1,c;if(typeof e=="object"&&e!=null){if(n.sqrt||r)throw new Error("cannot specify opts in two arguments");let h=e;h.BITS&&(i=h.BITS),h.sqrt&&(o=h.sqrt),typeof h.isLE=="boolean"&&(r=h.isLE),typeof h.modFromBytes=="boolean"&&(s=h.modFromBytes),c=h.allowedLengths}else typeof e=="number"&&(i=e),n.sqrt&&(o=n.sqrt);let{nBitLength:a,nByteLength:u}=qf(t,i);if(u>2048)throw new Error("invalid field: expected ORDER of <= 2048 bytes");let d,f=Object.freeze({ORDER:t,isLE:r,BITS:a,BYTES:u,MASK:bo(a),ZERO:nr,ONE:Ft,allowedLengths:c,create:h=>Br(h,t),isValid:h=>{if(typeof h!="bigint")throw new Error("invalid field element: expected bigint, got "+typeof h);return nr<=h&&h<t},is0:h=>h===nr,isValidNot0:h=>!f.is0(h)&&f.isValid(h),isOdd:h=>(h&Ft)===Ft,neg:h=>Br(-h,t),eql:(h,p)=>h===p,sqr:h=>Br(h*h,t),add:(h,p)=>Br(h+p,t),sub:(h,p)=>Br(h-p,t),mul:(h,p)=>Br(h*p,t),pow:(h,p)=>m8(f,h,p),div:(h,p)=>Br(h*Gx(p,t),t),sqrN:h=>h*h,addN:(h,p)=>h+p,subN:(h,p)=>h-p,mulN:(h,p)=>h*p,inv:h=>Gx(h,t),sqrt:o||(h=>(d||(d=y8(t)),d(f,h))),toBytes:h=>r?Ry(h,u):$c(h,u),fromBytes:(h,p=!0)=>{if(c){if(!c.includes(h.length)||h.length>u)throw new Error("Field.fromBytes: expected "+c+" bytes, got "+h.length);let g=new Uint8Array(u);g.set(h,r?0:g.length-h.length),h=g}if(h.length!==u)throw new Error("Field.fromBytes: expected "+u+" bytes, got "+h.length);let y=r?By(h):Ai(h);if(s&&(y=Br(y,t)),!p&&!f.isValid(y))throw new Error("invalid field element: outside of range 0..ORDER");return y},invertBatch:h=>Vf(f,h),cmov:(h,p,y)=>y?p:h});return Object.freeze(f)}function rE(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 ky(t){let e=rE(t);return e+Math.ceil(e/2)}function Ff(t,e,r=!1){let n=t.length,i=rE(e),o=ky(e);if(n<16||n<o||n>1024)throw new Error("expected "+o+"-1024 bytes of input, got "+n);let s=r?By(t):Ai(t),c=Br(s,e-Ft)+Ft;return r?Ry(c,i):$c(c,i)}var Hc=BigInt(0),vs=BigInt(1);function Ou(t,e){let r=e.negate();return t?r:e}function Wf(t,e){let r=Vf(t.Fp,e.map(n=>n.Z));return e.map((n,i)=>t.fromAffine(n.toAffine(r[i])))}function sE(t,e){if(!Number.isSafeInteger(t)||t<=0||t>e)throw new Error("invalid window size, expected [1.."+e+"], got W="+t)}function Ny(t,e){sE(t,e);let r=Math.ceil(e/t)+1,n=2**(t-1),i=2**t,o=bo(t),s=BigInt(t);return{windows:r,windowSize:n,mask:o,maxNumber:i,shiftBy:s}}function nE(t,e,r){let{windowSize:n,mask:i,maxNumber:o,shiftBy:s}=r,c=Number(t&i),a=t>>s;c>n&&(c-=o,a+=vs);let u=e*n,d=u+Math.abs(c)-1,f=c===0,h=c<0,p=e%2!==0;return{nextN:a,offset:d,isZero:f,isNeg:h,isNegF:p,offsetF:u}}function w8(t,e){if(!Array.isArray(t))throw new Error("array expected");t.forEach((r,n)=>{if(!(r instanceof e))throw new Error("invalid point at index "+n)})}function b8(t,e){if(!Array.isArray(t))throw new Error("array of scalars expected");t.forEach((r,n)=>{if(!e.isValid(r))throw new Error("invalid scalar at index "+n)})}var Cy=new WeakMap,cE=new WeakMap;function Ly(t){return cE.get(t)||1}function iE(t){if(t!==Hc)throw new Error("invalid wNAF")}var jf=class{constructor(e,r){this.BASE=e.BASE,this.ZERO=e.ZERO,this.Fn=e.Fn,this.bits=r}_unsafeLadder(e,r,n=this.ZERO){let i=e;for(;r>Hc;)r&vs&&(n=n.add(i)),i=i.double(),r>>=vs;return n}precomputeWindow(e,r){let{windows:n,windowSize:i}=Ny(r,this.bits),o=[],s=e,c=s;for(let a=0;a<n;a++){c=s,o.push(c);for(let u=1;u<i;u++)c=c.add(s),o.push(c);s=c.double()}return o}wNAF(e,r,n){if(!this.Fn.isValid(n))throw new Error("invalid scalar");let i=this.ZERO,o=this.BASE,s=Ny(e,this.bits);for(let c=0;c<s.windows;c++){let{nextN:a,offset:u,isZero:d,isNeg:f,isNegF:h,offsetF:p}=nE(n,c,s);n=a,d?o=o.add(Ou(h,r[p])):i=i.add(Ou(f,r[u]))}return iE(n),{p:i,f:o}}wNAFUnsafe(e,r,n,i=this.ZERO){let o=Ny(e,this.bits);for(let s=0;s<o.windows&&n!==Hc;s++){let{nextN:c,offset:a,isZero:u,isNeg:d}=nE(n,s,o);if(n=c,!u){let f=r[a];i=i.add(d?f.negate():f)}}return iE(n),i}getPrecomputes(e,r,n){let i=Cy.get(r);return i||(i=this.precomputeWindow(r,e),e!==1&&(typeof n=="function"&&(i=n(i)),Cy.set(r,i))),i}cached(e,r,n){let i=Ly(e);return this.wNAF(i,this.getPrecomputes(i,e,n),r)}unsafe(e,r,n,i){let o=Ly(e);return o===1?this._unsafeLadder(e,r,i):this.wNAFUnsafe(o,this.getPrecomputes(o,e,n),r,i)}createCache(e,r){sE(r,this.bits),cE.set(e,r),Cy.delete(e)}hasCache(e){return Ly(e)!==1}};function aE(t,e,r,n){let i=e,o=t.ZERO,s=t.ZERO;for(;r>Hc||n>Hc;)r&vs&&(o=o.add(i)),n&vs&&(s=s.add(i)),i=i.double(),r>>=vs,n>>=vs;return{p1:o,p2:s}}function uE(t,e,r,n){w8(r,t),b8(n,e);let i=r.length,o=n.length;if(i!==o)throw new Error("arrays of points and scalars must have equal length");let s=t.ZERO,c=Hf(BigInt(i)),a=1;c>12?a=c-3:c>4?a=c-2:c>0&&(a=2);let u=bo(a),d=new Array(Number(u)+1).fill(s),f=Math.floor((e.BITS-1)/a)*a,h=s;for(let p=f;p>=0;p-=a){d.fill(s);for(let g=0;g<o;g++){let x=n[g],S=Number(x>>BigInt(p)&u);d[S]=d[S].add(r[g])}let y=s;for(let g=d.length-1,x=s;g>0;g--)x=x.add(d[g]),y=y.add(x);if(h=h.add(y),p!==0)for(let g=0;g<a;g++)h=h.double()}return h}function oE(t,e,r){if(e){if(e.ORDER!==t)throw new Error("Field.ORDER must match order: Fp == p, Fn == n");return Dy(e),e}else return xo(t,{isLE:r})}function dE(t,e,r={},n){if(n===void 0&&(n=t==="edwards"),!e||typeof e!="object")throw new Error(`expected valid ${t} CURVE object`);for(let a of["p","n","h"]){let u=e[a];if(!(typeof u=="bigint"&&u>Hc))throw new Error(`CURVE.${a} must be positive bigint`)}let i=oE(e.p,r.Fp,n),o=oE(e.n,r.Fn,n),c=["Gx","Gy","a",t==="weierstrass"?"b":"d"];for(let a of c)if(!i.isValid(e[a]))throw new Error(`CURVE.${a} must be valid field element of CURVE.Fp`);return e=Object.freeze(Object.assign({},e)),{CURVE:e,Fp:i,Fn:o}}var fE=(t,e)=>(t+(t>=0?e:-e)/lE)/e;function x8(t,e,r){let[[n,i],[o,s]]=e,c=fE(s*t,r),a=fE(-i*t,r),u=t-c*n-a*o,d=-c*i-a*s,f=u<_i,h=d<_i;f&&(u=-u),h&&(d=-d);let p=bo(Math.ceil(Hf(r)/2))+Vc;if(u<_i||u>=p||d<_i||d>=p)throw new Error("splitScalar (endomorphism): failed, k="+t);return{k1neg:f,k1:u,k2neg:h,k2:d}}function My(t){if(!["compact","recovered","der"].includes(t))throw new Error('Signature format must be "compact", "recovered", or "der"');return t}function Py(t,e){let r={};for(let n of Object.keys(e))r[n]=t[n]===void 0?e[n]:t[n];return Iu(r.lowS,"lowS"),Iu(r.prehash,"prehash"),r.format!==void 0&&My(r.format),r}var Ky=class extends Error{constructor(e=""){super(e)}},Ti={Err:Ky,_tlv:{encode:(t,e)=>{let{Err:r}=Ti;if(t<0||t>256)throw new r("tlv.encode: wrong tag");if(e.length&1)throw new r("tlv.encode: unpadded data");let n=e.length/2,i=Bu(n);if(i.length/2&128)throw new r("tlv.encode: long form length too big");let o=n>127?Bu(i.length/2|128):"";return Bu(t)+o+i+e},decode(t,e){let{Err:r}=Ti,n=0;if(t<0||t>256)throw new r("tlv.encode: wrong tag");if(e.length<2||e[n++]!==t)throw new r("tlv.decode: wrong tlv");let i=e[n++],o=!!(i&128),s=0;if(!o)s=i;else{let a=i&127;if(!a)throw new r("tlv.decode(long): indefinite length not supported");if(a>4)throw new r("tlv.decode(long): byte length is too big");let u=e.subarray(n,n+a);if(u.length!==a)throw new r("tlv.decode: length bytes not complete");if(u[0]===0)throw new r("tlv.decode(long): zero leftmost byte");for(let d of u)s=s<<8|d;if(n+=a,s<128)throw new r("tlv.decode(long): not minimal encoding")}let c=e.subarray(n,n+s);if(c.length!==s)throw new r("tlv.decode: wrong value length");return{v:c,l:e.subarray(n+s)}}},_int:{encode(t){let{Err:e}=Ti;if(t<_i)throw new e("integer: negative integers are not allowed");let r=Bu(t);if(Number.parseInt(r[0],16)&8&&(r="00"+r),r.length&1)throw new e("unexpected DER parsing assertion: unpadded hex");return r},decode(t){let{Err:e}=Ti;if(t[0]&128)throw new e("invalid signature integer: negative");if(t[0]===0&&!(t[1]&128))throw new e("invalid signature integer: unnecessary leading zero");return Ai(t)}},toSig(t){let{Err:e,_int:r,_tlv:n}=Ti,i=st("signature",t),{v:o,l:s}=n.decode(48,i);if(s.length)throw new e("invalid signature: left bytes after parsing");let{v:c,l:a}=n.decode(2,o),{v:u,l:d}=n.decode(2,a);if(d.length)throw new e("invalid signature: left bytes after parsing");return{r:r.decode(c),s:r.decode(u)}},hexFromSig(t){let{_tlv:e,_int:r}=Ti,n=e.encode(2,r.encode(t.r)),i=e.encode(2,r.encode(t.s)),o=n+i;return e.encode(48,o)}},_i=BigInt(0),Vc=BigInt(1),lE=BigInt(2),Gf=BigInt(3),E8=BigInt(4);function Eo(t,e){let{BYTES:r}=t,n;if(typeof e=="bigint")n=e;else{let i=st("private key",e);try{n=t.fromBytes(i)}catch{throw new Error(`invalid private key: expected ui8a of size ${r}, got ${typeof e}`)}}if(!t.isValidNot0(n))throw new Error("invalid private key: out of range [1..N-1]");return n}function v8(t,e={}){let r=dE("weierstrass",t,e),{Fp:n,Fn:i}=r,o=r.CURVE,{h:s,n:c}=o;Uu(e,{},{allowInfinityPoint:"boolean",clearCofactor:"function",isTorsionFree:"function",fromBytes:"function",toBytes:"function",endo:"object",wrapPrivateKey:"boolean"});let{endo:a}=e;if(a&&(!n.is0(o.a)||typeof a.beta!="bigint"||!Array.isArray(a.basises)))throw new Error('invalid endo: expected "beta": bigint and "basises": array');let u=pE(n,i);function d(){if(!n.isOdd)throw new Error("compression is not supported: Field does not have .isOdd()")}function f(G,I,D){let{x:E,y:U}=I.toAffine(),L=n.toBytes(E);if(Iu(D,"isCompressed"),D){d();let N=!n.isOdd(U);return lt(hE(N),L)}else return lt(Uint8Array.of(4),L,n.toBytes(U))}function h(G){mo(G,void 0,"Point");let{publicKey:I,publicKeyUncompressed:D}=u,E=G.length,U=G[0],L=G.subarray(1);if(E===I&&(U===2||U===3)){let N=n.fromBytes(L);if(!n.isValid(N))throw new Error("bad point: is not on curve, wrong x");let R=g(N),C;try{C=n.sqrt(R)}catch(J){let z=J instanceof Error?": "+J.message:"";throw new Error("bad point: is not on curve, sqrt error"+z)}d();let P=n.isOdd(C);return(U&1)===1!==P&&(C=n.neg(C)),{x:N,y:C}}else if(E===D&&U===4){let N=n.BYTES,R=n.fromBytes(L.subarray(0,N)),C=n.fromBytes(L.subarray(N,N*2));if(!x(R,C))throw new Error("bad point: is not on curve");return{x:R,y:C}}else throw new Error(`bad point: got length ${E}, expected compressed=${I} or uncompressed=${D}`)}let p=e.toBytes||f,y=e.fromBytes||h;function g(G){let I=n.sqr(G),D=n.mul(I,G);return n.add(n.add(D,n.mul(G,o.a)),o.b)}function x(G,I){let D=n.sqr(I),E=g(G);return n.eql(D,E)}if(!x(o.Gx,o.Gy))throw new Error("bad curve params: generator point");let S=n.mul(n.pow(o.a,Gf),E8),_=n.mul(n.sqr(o.b),BigInt(27));if(n.is0(n.add(S,_)))throw new Error("bad curve params: a or b");function A(G,I,D=!1){if(!n.isValid(I)||D&&n.is0(I))throw new Error(`bad point coordinate ${G}`);return I}function O(G){if(!(G instanceof $))throw new Error("ProjectivePoint expected")}function T(G){if(!a||!a.basises)throw new Error("no endo");return x8(G,a.basises,i.ORDER)}let M=Uy((G,I)=>{let{X:D,Y:E,Z:U}=G;if(n.eql(U,n.ONE))return{x:D,y:E};let L=G.is0();I==null&&(I=L?n.ONE:n.inv(U));let N=n.mul(D,I),R=n.mul(E,I),C=n.mul(U,I);if(L)return{x:n.ZERO,y:n.ZERO};if(!n.eql(C,n.ONE))throw new Error("invZ was invalid");return{x:N,y:R}}),q=Uy(G=>{if(G.is0()){if(e.allowInfinityPoint&&!n.is0(G.Y))return;throw new Error("bad point: ZERO")}let{x:I,y:D}=G.toAffine();if(!n.isValid(I)||!n.isValid(D))throw new Error("bad point: x or y not field elements");if(!x(I,D))throw new Error("bad point: equation left != right");if(!G.isTorsionFree())throw new Error("bad point: not in prime-order subgroup");return!0});function j(G,I,D,E,U){return D=new $(n.mul(D.X,G),D.Y,D.Z),I=Ou(E,I),D=Ou(U,D),I.add(D)}class ${constructor(I,D,E){this.X=A("x",I),this.Y=A("y",D,!0),this.Z=A("z",E),Object.freeze(this)}static CURVE(){return o}static fromAffine(I){let{x:D,y:E}=I||{};if(!I||!n.isValid(D)||!n.isValid(E))throw new Error("invalid affine point");if(I instanceof $)throw new Error("projective point not allowed");return n.is0(D)&&n.is0(E)?$.ZERO:new $(D,E,n.ONE)}static fromBytes(I){let D=$.fromAffine(y(mo(I,void 0,"point")));return D.assertValidity(),D}static fromHex(I){return $.fromBytes(st("pointHex",I))}get x(){return this.toAffine().x}get y(){return this.toAffine().y}precompute(I=8,D=!0){return Q.createCache(this,I),D||this.multiply(Gf),this}assertValidity(){q(this)}hasEvenY(){let{y:I}=this.toAffine();if(!n.isOdd)throw new Error("Field doesn't support isOdd");return!n.isOdd(I)}equals(I){O(I);let{X:D,Y:E,Z:U}=this,{X:L,Y:N,Z:R}=I,C=n.eql(n.mul(D,R),n.mul(L,U)),P=n.eql(n.mul(E,R),n.mul(N,U));return C&&P}negate(){return new $(this.X,n.neg(this.Y),this.Z)}double(){let{a:I,b:D}=o,E=n.mul(D,Gf),{X:U,Y:L,Z:N}=this,R=n.ZERO,C=n.ZERO,P=n.ZERO,V=n.mul(U,U),J=n.mul(L,L),z=n.mul(N,N),W=n.mul(U,L);return W=n.add(W,W),P=n.mul(U,N),P=n.add(P,P),R=n.mul(I,P),C=n.mul(E,z),C=n.add(R,C),R=n.sub(J,C),C=n.add(J,C),C=n.mul(R,C),R=n.mul(W,R),P=n.mul(E,P),z=n.mul(I,z),W=n.sub(V,z),W=n.mul(I,W),W=n.add(W,P),P=n.add(V,V),V=n.add(P,V),V=n.add(V,z),V=n.mul(V,W),C=n.add(C,V),z=n.mul(L,N),z=n.add(z,z),V=n.mul(z,W),R=n.sub(R,V),P=n.mul(z,J),P=n.add(P,P),P=n.add(P,P),new $(R,C,P)}add(I){O(I);let{X:D,Y:E,Z:U}=this,{X:L,Y:N,Z:R}=I,C=n.ZERO,P=n.ZERO,V=n.ZERO,J=o.a,z=n.mul(o.b,Gf),W=n.mul(D,L),Y=n.mul(E,N),X=n.mul(U,R),ue=n.add(D,E),ee=n.add(L,N);ue=n.mul(ue,ee),ee=n.add(W,Y),ue=n.sub(ue,ee),ee=n.add(D,U);let ce=n.add(L,R);return ee=n.mul(ee,ce),ce=n.add(W,X),ee=n.sub(ee,ce),ce=n.add(E,U),C=n.add(N,R),ce=n.mul(ce,C),C=n.add(Y,X),ce=n.sub(ce,C),V=n.mul(J,ee),C=n.mul(z,X),V=n.add(C,V),C=n.sub(Y,V),V=n.add(Y,V),P=n.mul(C,V),Y=n.add(W,W),Y=n.add(Y,W),X=n.mul(J,X),ee=n.mul(z,ee),Y=n.add(Y,X),X=n.sub(W,X),X=n.mul(J,X),ee=n.add(ee,X),W=n.mul(Y,ee),P=n.add(P,W),W=n.mul(ce,ee),C=n.mul(ue,C),C=n.sub(C,W),W=n.mul(ue,Y),V=n.mul(ce,V),V=n.add(V,W),new $(C,P,V)}subtract(I){return this.add(I.negate())}is0(){return this.equals($.ZERO)}multiply(I){let{endo:D}=e;if(!i.isValidNot0(I))throw new Error("invalid scalar: out of range");let E,U,L=N=>Q.cached(this,N,R=>Wf($,R));if(D){let{k1neg:N,k1:R,k2neg:C,k2:P}=T(I),{p:V,f:J}=L(R),{p:z,f:W}=L(P);U=J.add(W),E=j(D.beta,V,z,N,C)}else{let{p:N,f:R}=L(I);E=N,U=R}return Wf($,[E,U])[0]}multiplyUnsafe(I){let{endo:D}=e,E=this;if(!i.isValid(I))throw new Error("invalid scalar: out of range");if(I===_i||E.is0())return $.ZERO;if(I===Vc)return E;if(Q.hasCache(this))return this.multiply(I);if(D){let{k1neg:U,k1:L,k2neg:N,k2:R}=T(I),{p1:C,p2:P}=aE($,E,L,R);return j(D.beta,C,P,U,N)}else return Q.unsafe(E,I)}multiplyAndAddUnsafe(I,D,E){let U=this.multiplyUnsafe(D).add(I.multiplyUnsafe(E));return U.is0()?void 0:U}toAffine(I){return M(this,I)}isTorsionFree(){let{isTorsionFree:I}=e;return s===Vc?!0:I?I($,this):Q.unsafe(this,c).is0()}clearCofactor(){let{clearCofactor:I}=e;return s===Vc?this:I?I($,this):this.multiplyUnsafe(s)}isSmallOrder(){return this.multiplyUnsafe(s).is0()}toBytes(I=!0){return Iu(I,"isCompressed"),this.assertValidity(),p($,this,I)}toHex(I=!0){return Pt(this.toBytes(I))}toString(){return`<Point ${this.is0()?"ZERO":this.toHex()}>`}get px(){return this.X}get py(){return this.X}get pz(){return this.Z}toRawBytes(I=!0){return this.toBytes(I)}_setWindowSize(I){this.precompute(I)}static normalizeZ(I){return Wf($,I)}static msm(I,D){return uE($,i,I,D)}static fromPrivateKey(I){return $.BASE.multiply(Eo(i,I))}}$.BASE=new $(o.Gx,o.Gy,n.ONE),$.ZERO=new $(n.ZERO,n.ONE,n.ZERO),$.Fp=n,$.Fn=i;let Z=i.BITS,Q=new jf($,e.endo?Math.ceil(Z/2):Z);return $.BASE.precompute(8),$}function hE(t){return Uint8Array.of(t?2:3)}function pE(t,e){return{secretKey:e.BYTES,publicKey:1+t.BYTES,publicKeyUncompressed:1+2*t.BYTES,publicKeyHasPrefix:!0,signature:2*e.BYTES}}function S8(t,e={}){let{Fn:r}=t,n=e.randomBytes||Ir,i=Object.assign(pE(t.Fp,r),{seed:ky(r.ORDER)});function o(p){try{return!!Eo(r,p)}catch{return!1}}function s(p,y){let{publicKey:g,publicKeyUncompressed:x}=i;try{let S=p.length;return y===!0&&S!==g||y===!1&&S!==x?!1:!!t.fromBytes(p)}catch{return!1}}function c(p=n(i.seed)){return Ff(mo(p,i.seed,"seed"),r.ORDER)}function a(p,y=!0){return t.BASE.multiply(Eo(r,p)).toBytes(y)}function u(p){let y=c(p);return{secretKey:y,publicKey:a(y)}}function d(p){if(typeof p=="bigint")return!1;if(p instanceof t)return!0;let{secretKey:y,publicKey:g,publicKeyUncompressed:x}=i;if(r.allowedLengths||y===g)return;let S=st("key",p).length;return S===g||S===x}function f(p,y,g=!0){if(d(p)===!0)throw new Error("first arg must be private key");if(d(y)===!1)throw new Error("second arg must be public key");let x=Eo(r,p);return t.fromHex(y).multiply(x).toBytes(g)}return Object.freeze({getPublicKey:a,getSharedSecret:f,keygen:u,Point:t,utils:{isValidSecretKey:o,isValidPublicKey:s,randomSecretKey:c,isValidPrivateKey:o,randomPrivateKey:c,normPrivateKeyToScalar:p=>Eo(r,p),precompute(p=8,y=t.BASE){return y.precompute(p,!1)}},lengths:i})}function A8(t,e,r={}){Pf(e),Uu(r,{},{hmac:"function",lowS:"boolean",randomBytes:"function",bits2int:"function",bits2int_modN:"function"});let n=r.randomBytes||Ir,i=r.hmac||((D,...E)=>Ay(e,D,lt(...E))),{Fp:o,Fn:s}=t,{ORDER:c,BITS:a}=s,{keygen:u,getPublicKey:d,getSharedSecret:f,utils:h,lengths:p}=S8(t,r),y={prehash:!1,lowS:typeof r.lowS=="boolean"?r.lowS:!1,format:void 0,extraEntropy:!1},g="compact";function x(D){let E=c>>Vc;return D>E}function S(D,E){if(!s.isValidNot0(E))throw new Error(`invalid signature ${D}: out of range 1..Point.Fn.ORDER`);return E}function _(D,E){My(E);let U=p.signature,L=E==="compact"?U:E==="recovered"?U+1:void 0;return mo(D,L,`${E} signature`)}class A{constructor(E,U,L){this.r=S("r",E),this.s=S("s",U),L!=null&&(this.recovery=L),Object.freeze(this)}static fromBytes(E,U=g){_(E,U);let L;if(U==="der"){let{r:P,s:V}=Ti.toSig(mo(E));return new A(P,V)}U==="recovered"&&(L=E[0],U="compact",E=E.subarray(1));let N=s.BYTES,R=E.subarray(0,N),C=E.subarray(N,N*2);return new A(s.fromBytes(R),s.fromBytes(C),L)}static fromHex(E,U){return this.fromBytes(_r(E),U)}addRecoveryBit(E){return new A(this.r,this.s,E)}recoverPublicKey(E){let U=o.ORDER,{r:L,s:N,recovery:R}=this;if(R==null||![0,1,2,3].includes(R))throw new Error("recovery id invalid");if(c*lE<U&&R>1)throw new Error("recovery id is ambiguous for h>1 curve");let P=R===2||R===3?L+c:L;if(!o.isValid(P))throw new Error("recovery id 2 or 3 invalid");let V=o.toBytes(P),J=t.fromBytes(lt(hE((R&1)===0),V)),z=s.inv(P),W=T(st("msgHash",E)),Y=s.create(-W*z),X=s.create(N*z),ue=t.BASE.multiplyUnsafe(Y).add(J.multiplyUnsafe(X));if(ue.is0())throw new Error("point at infinify");return ue.assertValidity(),ue}hasHighS(){return x(this.s)}toBytes(E=g){if(My(E),E==="der")return _r(Ti.hexFromSig(this));let U=s.toBytes(this.r),L=s.toBytes(this.s);if(E==="recovered"){if(this.recovery==null)throw new Error("recovery bit must be present");return lt(Uint8Array.of(this.recovery),U,L)}return lt(U,L)}toHex(E){return Pt(this.toBytes(E))}assertValidity(){}static fromCompact(E){return A.fromBytes(st("sig",E),"compact")}static fromDER(E){return A.fromBytes(st("sig",E),"der")}normalizeS(){return this.hasHighS()?new A(this.r,s.neg(this.s),this.recovery):this}toDERRawBytes(){return this.toBytes("der")}toDERHex(){return Pt(this.toBytes("der"))}toCompactRawBytes(){return this.toBytes("compact")}toCompactHex(){return Pt(this.toBytes("compact"))}}let O=r.bits2int||function(E){if(E.length>8192)throw new Error("input is too large");let U=Ai(E),L=E.length*8-a;return L>0?U>>BigInt(L):U},T=r.bits2int_modN||function(E){return s.create(O(E))},M=bo(a);function q(D){return jx("num < 2^"+a,D,_i,M),s.toBytes(D)}function j(D,E){return mo(D,void 0,"message"),E?mo(e(D),void 0,"prehashed message"):D}function $(D,E,U){if(["recovered","canonical"].some(Y=>Y in U))throw new Error("sign() legacy options not supported");let{lowS:L,prehash:N,extraEntropy:R}=Py(U,y);D=j(D,N);let C=T(D),P=Eo(s,E),V=[q(P),q(C)];if(R!=null&&R!==!1){let Y=R===!0?n(p.secretKey):R;V.push(st("extraEntropy",Y))}let J=lt(...V),z=C;function W(Y){let X=O(Y);if(!s.isValidNot0(X))return;let ue=s.inv(X),ee=t.BASE.multiply(X).toAffine(),ce=s.create(ee.x);if(ce===_i)return;let Oe=s.create(ue*s.create(z+ce*P));if(Oe===_i)return;let Ke=(ee.x===ce?0:2)|Number(ee.y&Vc),Je=Oe;return L&&x(Oe)&&(Je=s.neg(Oe),Ke^=1),new A(ce,Je,Ke)}return{seed:J,k2sig:W}}function Z(D,E,U={}){D=st("message",D);let{seed:L,k2sig:N}=$(D,E,U);return Wx(e.outputLen,s.BYTES,i)(L,N)}function Q(D){let E,U=typeof D=="string"||bs(D),L=!U&&D!==null&&typeof D=="object"&&typeof D.r=="bigint"&&typeof D.s=="bigint";if(!U&&!L)throw new Error("invalid signature, expected Uint8Array, hex string or Signature instance");if(L)E=new A(D.r,D.s);else if(U){try{E=A.fromBytes(st("sig",D),"der")}catch(N){if(!(N instanceof Ti.Err))throw N}if(!E)try{E=A.fromBytes(st("sig",D),"compact")}catch{return!1}}return E||!1}function G(D,E,U,L={}){let{lowS:N,prehash:R,format:C}=Py(L,y);if(U=st("publicKey",U),E=j(st("message",E),R),"strict"in L)throw new Error("options.strict was renamed to lowS");let P=C===void 0?Q(D):A.fromBytes(st("sig",D),C);if(P===!1)return!1;try{let V=t.fromBytes(U);if(N&&P.hasHighS())return!1;let{r:J,s:z}=P,W=T(E),Y=s.inv(z),X=s.create(W*Y),ue=s.create(J*Y),ee=t.BASE.multiplyUnsafe(X).add(V.multiplyUnsafe(ue));return ee.is0()?!1:s.create(ee.x)===J}catch{return!1}}function I(D,E,U={}){let{prehash:L}=Py(U,y);return E=j(E,L),A.fromBytes(D,"recovered").recoverPublicKey(E).toBytes()}return Object.freeze({keygen:u,getPublicKey:d,getSharedSecret:f,utils:h,lengths:p,Point:t,sign:Z,verify:G,recoverPublicKey:I,Signature:A,hash:e})}function T8(t){let e={a:t.a,b:t.b,p:t.Fp.ORDER,n:t.n,h:t.h,Gx:t.Gx,Gy:t.Gy},r=t.Fp,n=t.allowedPrivateKeyLengths?Array.from(new Set(t.allowedPrivateKeyLengths.map(s=>Math.ceil(s/2)))):void 0,i=xo(e.n,{BITS:t.nBitLength,allowedLengths:n,modFromBytes:t.wrapPrivateKey}),o={Fp:r,Fn:i,allowInfinityPoint:t.allowInfinityPoint,endo:t.endo,isTorsionFree:t.isTorsionFree,clearCofactor:t.clearCofactor,fromBytes:t.fromBytes,toBytes:t.toBytes};return{CURVE:e,curveOpts:o}}function _8(t){let{CURVE:e,curveOpts:r}=T8(t),n={hmac:t.hmac,randomBytes:t.randomBytes,lowS:t.lowS,bits2int:t.bits2int,bits2int_modN:t.bits2int_modN};return{CURVE:e,curveOpts:r,hash:t.hash,ecdsaOpts:n}}function I8(t,e){let r=e.Point;return Object.assign({},e,{ProjectivePoint:r,CURVE:Object.assign({},t,qf(r.Fn.ORDER,r.Fn.BITS))})}function yE(t){let{CURVE:e,curveOpts:r,hash:n,ecdsaOpts:i}=_8(t),o=v8(e,r),s=A8(o,n,i);return I8(t,s)}function gE(t,e){let r=n=>yE({...t,hash:n});return{...r(e),create:r}}var qc={p:BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),n:BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),h:BigInt(1),a:BigInt(0),b:BigInt(7),Gx:BigInt("0x79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798"),Gy:BigInt("0x483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8")},B8={beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),basises:[[BigInt("0x3086d221a7d46bcde86c90e49284eb15"),-BigInt("0xe4437ed6010e88286f547fa90abfe4c3")],[BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),BigInt("0x3086d221a7d46bcde86c90e49284eb15")]]},R8=BigInt(0),mE=BigInt(1),$y=BigInt(2);function U8(t){let e=qc.p,r=BigInt(3),n=BigInt(6),i=BigInt(11),o=BigInt(22),s=BigInt(23),c=BigInt(44),a=BigInt(88),u=t*t*t%e,d=u*u*t%e,f=Rr(d,r,e)*d%e,h=Rr(f,r,e)*d%e,p=Rr(h,$y,e)*u%e,y=Rr(p,i,e)*p%e,g=Rr(y,o,e)*y%e,x=Rr(g,c,e)*g%e,S=Rr(x,a,e)*x%e,_=Rr(S,c,e)*g%e,A=Rr(_,r,e)*d%e,O=Rr(A,s,e)*y%e,T=Rr(O,n,e)*u%e,M=Rr(T,$y,e);if(!zf.eql(zf.sqr(M),t))throw new Error("Cannot find square root");return M}var zf=xo(qc.p,{sqrt:U8}),vo=gE({...qc,Fp:zf,lowS:!0,endo:B8},ke),wE={};function Yf(t,...e){let r=wE[t];if(r===void 0){let n=ke(xs(t));r=lt(n,n),wE[t]=r}return ke(lt(r,...e))}var Vy=t=>t.toBytes(!0).slice(1),Fc=vo.Point,qy=t=>t%$y===R8;function Hy(t){let{Fn:e,BASE:r}=Fc,n=Eo(e,t),i=r.multiply(n);return{scalar:qy(i.y)?n:e.neg(n),bytes:Vy(i)}}function xE(t){let e=zf;if(!e.isValidNot0(t))throw new Error("invalid x: Fail if x \u2265 p");let r=e.create(t*t),n=e.create(r*t+BigInt(7)),i=e.sqrt(n);qy(i)||(i=e.neg(i));let o=Fc.fromAffine({x:t,y:i});return o.assertValidity(),o}var Du=Ai;function EE(...t){return Fc.Fn.create(Du(Yf("BIP0340/challenge",...t)))}function bE(t){return Hy(t).bytes}function O8(t,e,r=Ir(32)){let{Fn:n}=Fc,i=st("message",t),{bytes:o,scalar:s}=Hy(e),c=st("auxRand",r,32),a=n.toBytes(s^Du(Yf("BIP0340/aux",c))),u=Yf("BIP0340/nonce",a,o,i),{bytes:d,scalar:f}=Hy(u),h=EE(d,o,i),p=new Uint8Array(64);if(p.set(d,0),p.set(n.toBytes(n.create(f+h*s)),32),!vE(p,i,o))throw new Error("sign: Invalid signature produced");return p}function vE(t,e,r){let{Fn:n,BASE:i}=Fc,o=st("signature",t,64),s=st("message",e),c=st("publicKey",r,32);try{let a=xE(Du(c)),u=Du(o.subarray(0,32));if(!Ru(u,mE,qc.p))return!1;let d=Du(o.subarray(32,64));if(!Ru(d,mE,qc.n))return!1;let f=EE(n.toBytes(u),Vy(a),s),h=i.multiplyUnsafe(d).add(a.multiplyUnsafe(n.neg(f))),{x:p,y}=h.toAffine();return!(h.is0()||!qy(y)||p!==u)}catch{return!1}}var Ur=(()=>{let r=(i=Ir(48))=>Ff(i,qc.n);vo.utils.randomSecretKey;function n(i){let o=r(i);return{secretKey:o,publicKey:bE(o)}}return{keygen:n,getPublicKey:bE,sign:O8,verify:vE,Point:Fc,utils:{randomSecretKey:r,randomPrivateKey:r,taggedHash:Yf,lift_x:xE,pointToBytes:Vy,numberToBytesBE:$c,bytesToNumberBE:Ai,mod:Br},lengths:{secretKey:32,publicKey:32,publicKeyHasPrefix:!1,signature:32*2,seed:48}}})();l();var D8=Uint8Array.from([7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8]),AE=Uint8Array.from(new Array(16).fill(0).map((t,e)=>e)),k8=AE.map(t=>(9*t+5)%16),TE=(()=>{let r=[[AE],[k8]];for(let n=0;n<4;n++)for(let i of r)i.push(i[n].map(o=>D8[o]));return r})(),_E=TE[0],IE=TE[1],BE=[[11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8],[12,13,11,15,6,9,9,7,12,15,11,13,7,8,7,7],[13,15,14,11,7,7,6,8,13,14,13,12,5,5,6,9],[14,11,12,14,8,6,5,5,15,12,15,14,9,9,8,6],[15,12,13,13,9,5,8,6,14,11,12,11,8,6,5,5]].map(t=>Uint8Array.from(t)),N8=_E.map((t,e)=>t.map(r=>BE[e][r])),C8=IE.map((t,e)=>t.map(r=>BE[e][r])),L8=Uint32Array.from([0,1518500249,1859775393,2400959708,2840853838]),P8=Uint32Array.from([1352829926,1548603684,1836072691,2053994217,0]);function SE(t,e,r,n){return t===0?e^r^n:t===1?e&r|~e&n:t===2?(e|~r)^n:t===3?e&n|r&~n:e^(r|~n)}var Jf=new Uint32Array(16),Fy=class extends Kc{constructor(){super(64,20,8,!0),this.h0=1732584193,this.h1=-271733879,this.h2=-1732584194,this.h3=271733878,this.h4=-1009589776}get(){let{h0:e,h1:r,h2:n,h3:i,h4:o}=this;return[e,r,n,i,o]}set(e,r,n,i,o){this.h0=e|0,this.h1=r|0,this.h2=n|0,this.h3=i|0,this.h4=o|0}process(e,r){for(let p=0;p<16;p++,r+=4)Jf[p]=e.getUint32(r,!0);let n=this.h0|0,i=n,o=this.h1|0,s=o,c=this.h2|0,a=c,u=this.h3|0,d=u,f=this.h4|0,h=f;for(let p=0;p<5;p++){let y=4-p,g=L8[p],x=P8[p],S=_E[p],_=IE[p],A=N8[p],O=C8[p];for(let T=0;T<16;T++){let M=Tu(n+SE(p,o,c,u)+Jf[S[T]]+g,A[T])+f|0;n=f,f=u,u=Tu(c,10)|0,c=o,o=M}for(let T=0;T<16;T++){let M=Tu(i+SE(y,s,a,d)+Jf[_[T]]+x,O[T])+h|0;i=h,h=d,d=Tu(a,10)|0,a=s,s=M}}this.set(this.h1+c+d|0,this.h2+u+h|0,this.h3+f+i|0,this.h4+n+s|0,this.h0+o+a|0)}roundClean(){qn(Jf)}destroy(){this.destroyed=!0,qn(this.buffer),this.set(0,0,0,0,0)}},RE=Kf(()=>new Fy);l();l();function jc(t){return t instanceof Uint8Array||ArrayBuffer.isView(t)&&t.constructor.name==="Uint8Array"}function M8(t,...e){if(!jc(t))throw new Error("Uint8Array expected");if(e.length>0&&!e.includes(t.length))throw new Error("Uint8Array expected of length "+e+", got length="+t.length)}function NE(t,e){return Array.isArray(e)?e.length===0?!0:t?e.every(r=>typeof r=="string"):e.every(r=>Number.isSafeInteger(r)):!1}function Gy(t){if(typeof t!="function")throw new Error("function expected");return!0}function Wc(t,e){if(typeof e!="string")throw new Error(`${t}: string expected`);return!0}function Nu(t){if(!Number.isSafeInteger(t))throw new Error(`invalid integer: ${t}`)}function Zf(t){if(!Array.isArray(t))throw new Error("array expected")}function CE(t,e){if(!NE(!0,e))throw new Error(`${t}: array of strings expected`)}function zy(t,e){if(!NE(!1,e))throw new Error(`${t}: array of numbers expected`)}function Cu(...t){let e=o=>o,r=(o,s)=>c=>o(s(c)),n=t.map(o=>o.encode).reduceRight(r,e),i=t.map(o=>o.decode).reduce(r,e);return{encode:n,decode:i}}function el(t){let e=typeof t=="string"?t.split(""):t,r=e.length;CE("alphabet",e);let n=new Map(e.map((i,o)=>[i,o]));return{encode:i=>(Zf(i),i.map(o=>{if(!Number.isSafeInteger(o)||o<0||o>=r)throw new Error(`alphabet.encode: digit index outside alphabet "${o}". Allowed: ${t}`);return e[o]})),decode:i=>(Zf(i),i.map(o=>{Wc("alphabet.decode",o);let s=n.get(o);if(s===void 0)throw new Error(`Unknown letter: "${o}". Allowed: ${t}`);return s}))}}function tl(t=""){return Wc("join",t),{encode:e=>(CE("join.decode",e),e.join(t)),decode:e=>(Wc("join.decode",e),e.split(t))}}function K8(t){return Gy(t),{encode:e=>e,decode:e=>t(e)}}function UE(t,e,r){if(e<2)throw new Error(`convertRadix: invalid from=${e}, base cannot be less than 2`);if(r<2)throw new Error(`convertRadix: invalid to=${r}, base cannot be less than 2`);if(Zf(t),!t.length)return[];let n=0,i=[],o=Array.from(t,c=>{if(Nu(c),c<0||c>=e)throw new Error(`invalid integer: ${c}`);return c}),s=o.length;for(;;){let c=0,a=!0;for(let u=n;u<s;u++){let d=o[u],f=e*c,h=f+d;if(!Number.isSafeInteger(h)||f/e!==c||h-d!==f)throw new Error("convertRadix: carry overflow");let p=h/r;c=h%r;let y=Math.floor(p);if(o[u]=y,!Number.isSafeInteger(y)||y*r+c!==h)throw new Error("convertRadix: carry overflow");if(a)y?a=!1:n=u;else continue}if(i.push(c),a)break}for(let c=0;c<t.length-1&&t[c]===0;c++)i.push(0);return i.reverse()}var LE=(t,e)=>e===0?t:LE(e,t%e),Qf=(t,e)=>t+(e-LE(t,e)),Xf=(()=>{let t=[];for(let e=0;e<40;e++)t.push(2**e);return t})();function jy(t,e,r,n){if(Zf(t),e<=0||e>32)throw new Error(`convertRadix2: wrong from=${e}`);if(r<=0||r>32)throw new Error(`convertRadix2: wrong to=${r}`);if(Qf(e,r)>32)throw new Error(`convertRadix2: carry overflow from=${e} to=${r} carryBits=${Qf(e,r)}`);let i=0,o=0,s=Xf[e],c=Xf[r]-1,a=[];for(let u of t){if(Nu(u),u>=s)throw new Error(`convertRadix2: invalid data word=${u} from=${e}`);if(i=i<<e|u,o+e>32)throw new Error(`convertRadix2: carry overflow pos=${o} from=${e}`);for(o+=e;o>=r;o-=r)a.push((i>>o-r&c)>>>0);let d=Xf[o];if(d===void 0)throw new Error("invalid carry");i&=d-1}if(i=i<<r-o&c,!n&&o>=e)throw new Error("Excess padding");if(!n&&i>0)throw new Error(`Non-zero padding: ${i}`);return n&&o>0&&a.push(i>>>0),a}function $8(t){Nu(t);let e=2**8;return{encode:r=>{if(!jc(r))throw new Error("radix.encode input should be Uint8Array");return UE(Array.from(r),e,t)},decode:r=>(zy("radix.decode",r),Uint8Array.from(UE(r,t,e)))}}function Yy(t,e=!1){if(Nu(t),t<=0||t>32)throw new Error("radix2: bits should be in (0..32]");if(Qf(8,t)>32||Qf(t,8)>32)throw new Error("radix2: carry overflow");return{encode:r=>{if(!jc(r))throw new Error("radix2.encode input should be Uint8Array");return jy(Array.from(r),8,t,!e)},decode:r=>(zy("radix2.decode",r),Uint8Array.from(jy(r,t,8,e)))}}function OE(t){return Gy(t),function(...e){try{return t.apply(null,e)}catch{}}}function H8(t,e){return Nu(t),Gy(e),{encode(r){if(!jc(r))throw new Error("checksum.encode: input should be Uint8Array");let n=e(r).slice(0,t),i=new Uint8Array(r.length+t);return i.set(r),i.set(n,r.length),i},decode(r){if(!jc(r))throw new Error("checksum.decode: input should be Uint8Array");let n=r.slice(0,-t),i=r.slice(-t),o=e(n).slice(0,t);for(let s=0;s<t;s++)if(o[s]!==i[s])throw new Error("Invalid checksum");return n}}}var Gc=Cu(Yy(6),el("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_"),tl("")),V8=t=>Cu($8(58),el(t),tl("")),rl=V8("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz");var PE=t=>Cu(H8(4,e=>t(t(e))),rl);var Wy=Cu(el("qpzry9x8gf2tvdw0s3jn54khce6mua7l"),tl("")),DE=[996825010,642813549,513874426,1027748829,705979059];function ku(t){let e=t>>25,r=(t&33554431)<<5;for(let n=0;n<DE.length;n++)(e>>n&1)===1&&(r^=DE[n]);return r}function kE(t,e,r=1){let n=t.length,i=1;for(let o=0;o<n;o++){let s=t.charCodeAt(o);if(s<33||s>126)throw new Error(`Invalid prefix (${t})`);i=ku(i)^s>>5}i=ku(i);for(let o=0;o<n;o++)i=ku(i)^t.charCodeAt(o)&31;for(let o of e)i=ku(i)^o;for(let o=0;o<6;o++)i=ku(i);return i^=r,Wy.encode(jy([i%Xf[30]],30,5,!1))}function ME(t){let e=t==="bech32"?1:734539939,r=Yy(5),n=r.decode,i=r.encode,o=OE(n);function s(f,h,p=90){Wc("bech32.encode prefix",f),jc(h)&&(h=Array.from(h)),zy("bech32.encode",h);let y=f.length;if(y===0)throw new TypeError(`Invalid prefix length ${y}`);let g=y+7+h.length;if(p!==!1&&g>p)throw new TypeError(`Length ${g} exceeds limit ${p}`);let x=f.toLowerCase(),S=kE(x,h,e);return`${x}1${Wy.encode(h)}${S}`}function c(f,h=90){Wc("bech32.decode input",f);let p=f.length;if(p<8||h!==!1&&p>h)throw new TypeError(`invalid string length: ${p} (${f}). Expected (8..${h})`);let y=f.toLowerCase();if(f!==y&&f!==f.toUpperCase())throw new Error("String must be lowercase or uppercase");let g=y.lastIndexOf("1");if(g===0||g===-1)throw new Error('Letter "1" must be present between prefix and data only');let x=y.slice(0,g),S=y.slice(g+1);if(S.length<6)throw new Error("Data must be at least 6 characters long");let _=Wy.decode(S).slice(0,-6),A=kE(x,_,e);if(!S.endsWith(A))throw new Error(`Invalid checksum in ${f}: expected "${A}"`);return{prefix:x,words:_}}let a=OE(c);function u(f){let{prefix:h,words:p}=c(f,!1);return{prefix:h,words:p,bytes:n(p)}}function d(f,h){return s(f,i(h))}return{encode:s,decode:c,encodeFromBytes:d,decodeToBytes:u,decodeUnsafe:a,fromWords:n,fromWordsUnsafe:o,toWords:i}}var nl=ME("bech32"),Ss=ME("bech32m"),KE={encode:t=>new TextDecoder().decode(t),decode:t=>new TextEncoder().encode(t)},q8=typeof Uint8Array.from([]).toHex=="function"&&typeof Uint8Array.fromHex=="function",F8={encode(t){return M8(t),t.toHex()},decode(t){return Wc("hex",t),Uint8Array.fromHex(t)}},xe=q8?F8:Cu(Yy(4),el("0123456789abcdef"),tl(""),K8(t=>{if(typeof t!="string"||t.length%2!==0)throw new TypeError(`hex.decode: expected string, got ${typeof t} with length ${t.length}`);return t.toLowerCase()}));var Ve=new Uint8Array,Qy=new Uint8Array([0]);function zc(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 Jr(t){return t instanceof Uint8Array||ArrayBuffer.isView(t)&&t.constructor.name==="Uint8Array"}function j8(...t){let e=0;for(let n=0;n<t.length;n++){let i=t[n];if(!Jr(i))throw new Error("Uint8Array expected");e+=i.length}let r=new Uint8Array(e);for(let n=0,i=0;n<t.length;n++){let o=t[n];r.set(o,i),i+=o.length}return r}var e0=t=>new DataView(t.buffer,t.byteOffset,t.byteLength);function Yc(t){return Object.prototype.toString.call(t)==="[object Object]"}function Fn(t){return Number.isSafeInteger(t)}var il={equalBytes:zc,isBytes:Jr,isCoder:Or,checkBounds:HE,concatBytes:j8,createView:e0,isPlainObject:Yc},$E=t=>{if(t!==null&&typeof t!="string"&&!Or(t)&&!Jr(t)&&!Fn(t))throw new Error(`lengthCoder: expected null | number | Uint8Array | CoderType, got ${t} (${typeof t})`);return{encodeStream(e,r){if(t===null)return;if(Or(t))return t.encodeStream(e,r);let n;if(typeof t=="number"?n=t:typeof t=="string"&&(n=Ii.resolve(e.stack,t)),typeof n=="bigint"&&(n=Number(n)),n===void 0||n!==r)throw e.err(`Wrong length: ${n} len=${t} exp=${r} (${typeof r})`)},decodeStream(e){let r;if(Or(t)?r=Number(t.decodeStream(e)):typeof t=="number"?r=t:typeof t=="string"&&(r=Ii.resolve(e.stack,t)),typeof r=="bigint"&&(r=Number(r)),typeof r!="number")throw e.err(`Wrong length: ${r}`);return r}}},Dt={BITS:32,FULL_MASK:-1>>>0,len:t=>Math.ceil(t/32),create:t=>new Uint32Array(Dt.len(t)),clean:t=>t.fill(0),debug:t=>Array.from(t).map(e=>(e>>>0).toString(2).padStart(32,"0")),checkLen:(t,e)=>{if(Dt.len(e)!==t.length)throw new Error(`wrong length=${t.length}. Expected: ${Dt.len(e)}`)},chunkLen:(t,e,r)=>{if(e<0)throw new Error(`wrong pos=${e}`);if(e+r>t)throw new Error(`wrong range=${e}/${r} of ${t}`)},set:(t,e,r,n=!0)=>!n&&t[e]&r?!1:(t[e]|=r,!0),pos:(t,e)=>({chunk:Math.floor((t+e)/32),mask:1<<32-(t+e)%32-1}),indices:(t,e,r=!1)=>{Dt.checkLen(t,e);let{FULL_MASK:n,BITS:i}=Dt,o=i-e%i,s=o?n>>>o<<o:n,c=[];for(let a=0;a<t.length;a++){let u=t[a];if(r&&(u=~u),a===t.length-1&&(u&=s),u!==0)for(let d=0;d<i;d++){let f=1<<i-d-1;u&f&&c.push(a*i+d)}}return c},range:t=>{let e=[],r;for(let n of t)r===void 0||n!==r.pos+r.length?e.push(r={pos:n,length:1}):r.length+=1;return e},rangeDebug:(t,e,r=!1)=>`[${Dt.range(Dt.indices(t,e,r)).map(n=>`(${n.pos}/${n.length})`).join(", ")}]`,setRange:(t,e,r,n,i=!0)=>{Dt.chunkLen(e,r,n);let{FULL_MASK:o,BITS:s}=Dt,c=r%s?Math.floor(r/s):void 0,a=r+n,u=a%s?Math.floor(a/s):void 0;if(c!==void 0&&c===u)return Dt.set(t,c,o>>>s-n<<s-n-r,i);if(c!==void 0&&!Dt.set(t,c,o>>>r%s,i))return!1;let d=c!==void 0?c+1:r/s,f=u!==void 0?u:a/s;for(let h=d;h<f;h++)if(!Dt.set(t,h,o,i))return!1;return!(u!==void 0&&c!==u&&!Dt.set(t,u,o<<s-a%s,i))}},Ii={pushObj:(t,e,r)=>{let n={obj:e};t.push(n),r((i,o)=>{n.field=i,o(),n.field=void 0}),t.pop()},path:t=>{let e=[];for(let r of t)r.field!==void 0&&e.push(r.field);return e.join("/")},err:(t,e,r)=>{let n=new Error(`${t}(${Ii.path(e)}): ${typeof r=="string"?r:r.message}`);return r instanceof Error&&r.stack&&(n.stack=r.stack),n},resolve:(t,e)=>{let r=e.split("/"),n=t.map(s=>s.obj),i=0;for(;i<r.length&&r[i]==="..";i++)n.pop();let o=n.pop();for(;i<r.length;i++){if(!o||o[r[i]]===void 0)return;o=o[r[i]]}return o}},Jy=class t{constructor(e,r={},n=[],i=void 0,o=0){this.pos=0,this.bitBuf=0,this.bitPos=0,this.data=e,this.opts=r,this.stack=n,this.parent=i,this.parentOffset=o,this.view=e0(e)}_enablePointers(){if(this.parent)return this.parent._enablePointers();this.bs||(this.bs=Dt.create(this.data.length),Dt.setRange(this.bs,this.data.length,0,this.pos,this.opts.allowMultipleReads))}markBytesBS(e,r){return this.parent?this.parent.markBytesBS(this.parentOffset+e,r):!r||!this.bs?!0:Dt.setRange(this.bs,this.data.length,e,r,!1)}markBytes(e){let r=this.pos;this.pos+=e;let n=this.markBytesBS(r,e);if(!this.opts.allowMultipleReads&&!n)throw this.err(`multiple read pos=${this.pos} len=${e}`);return n}pushObj(e,r){return Ii.pushObj(this.stack,e,r)}readView(e,r){if(!Number.isFinite(e))throw this.err(`readView: wrong length=${e}`);if(this.pos+e>this.data.length)throw this.err("readView: Unexpected end of buffer");let n=r(this.view,this.pos);return this.markBytes(e),n}absBytes(e){if(e>this.data.length)throw new Error("Unexpected end of buffer");return this.data.subarray(e)}finish(){if(!this.opts.allowUnreadBytes){if(this.bitPos)throw this.err(`${this.bitPos} bits left after unpack: ${xe.encode(this.data.slice(this.pos))}`);if(this.bs&&!this.parent){let e=Dt.indices(this.bs,this.data.length,!0);if(e.length){let r=Dt.range(e).map(({pos:n,length:i})=>`(${n}/${i})[${xe.encode(this.data.subarray(n,n+i))}]`).join(", ");throw this.err(`unread byte ranges: ${r} (total=${this.data.length})`)}else return}if(!this.isEnd())throw this.err(`${this.leftBytes} bytes ${this.bitPos} bits left after unpack: ${xe.encode(this.data.slice(this.pos))}`)}}err(e){return Ii.err("Reader",this.stack,e)}offsetReader(e){if(e>this.data.length)throw this.err("offsetReader: Unexpected end of buffer");return new t(this.absBytes(e),this.opts,this.stack,this,e)}bytes(e,r=!1){if(this.bitPos)throw this.err("readBytes: bitPos not empty");if(!Number.isFinite(e))throw this.err(`readBytes: wrong length=${e}`);if(this.pos+e>this.data.length)throw this.err("readBytes: Unexpected end of buffer");let n=this.data.subarray(this.pos,this.pos+e);return r||this.markBytes(e),n}byte(e=!1){if(this.bitPos)throw this.err("readByte: bitPos not empty");if(this.pos+1>this.data.length)throw this.err("readBytes: Unexpected end of buffer");let r=this.data[this.pos];return e||this.markBytes(1),r}get leftBytes(){return this.data.length-this.pos}get totalBytes(){return this.data.length}isEnd(){return this.pos>=this.data.length&&!this.bitPos}bits(e){if(e>32)throw this.err("BitReader: cannot read more than 32 bits in single call");let r=0;for(;e;){this.bitPos||(this.bitBuf=this.byte(),this.bitPos=8);let n=Math.min(e,this.bitPos);this.bitPos-=n,r=r<<n|this.bitBuf>>this.bitPos&2**n-1,this.bitBuf&=2**this.bitPos-1,e-=n}return r>>>0}find(e,r=this.pos){if(!Jr(e))throw this.err(`find: needle is not bytes! ${e}`);if(this.bitPos)throw this.err("findByte: bitPos not empty");if(!e.length)throw this.err("find: needle is empty");for(let n=r;(n=this.data.indexOf(e[0],n))!==-1;n++){if(n===-1||this.data.length-n<e.length)return;if(zc(e,this.data.subarray(n,n+e.length)))return n}}},Xy=class{constructor(e=[]){this.pos=0,this.buffers=[],this.ptrs=[],this.bitBuf=0,this.bitPos=0,this.viewBuf=new Uint8Array(8),this.finished=!1,this.stack=e,this.view=e0(this.viewBuf)}pushObj(e,r){return Ii.pushObj(this.stack,e,r)}writeView(e,r){if(this.finished)throw this.err("buffer: finished");if(!Fn(e)||e>8)throw new Error(`wrong writeView length=${e}`);r(this.view),this.bytes(this.viewBuf.slice(0,e)),this.viewBuf.fill(0)}err(e){if(this.finished)throw this.err("buffer: finished");return Ii.err("Reader",this.stack,e)}bytes(e){if(this.finished)throw this.err("buffer: finished");if(this.bitPos)throw this.err("writeBytes: ends with non-empty bit buffer");this.buffers.push(e),this.pos+=e.length}byte(e){if(this.finished)throw this.err("buffer: finished");if(this.bitPos)throw this.err("writeByte: ends with non-empty bit buffer");this.buffers.push(new Uint8Array([e])),this.pos++}finish(e=!0){if(this.finished)throw this.err("buffer: finished");if(this.bitPos)throw this.err("buffer: ends with non-empty bit buffer");let r=this.buffers.concat(this.ptrs.map(o=>o.buffer)),n=r.map(o=>o.length).reduce((o,s)=>o+s,0),i=new Uint8Array(n);for(let o=0,s=0;o<r.length;o++){let c=r[o];i.set(c,s),s+=c.length}for(let o=this.pos,s=0;s<this.ptrs.length;s++){let c=this.ptrs[s];i.set(c.ptr.encode(o),c.pos),o+=c.buffer.length}if(e){this.buffers=[];for(let o of this.ptrs)o.buffer.fill(0);this.ptrs=[],this.finished=!0,this.bitBuf=0}return i}bits(e,r){if(r>32)throw this.err("writeBits: cannot write more than 32 bits in single call");if(e>=2**r)throw this.err(`writeBits: value (${e}) >= 2**bits (${r})`);for(;r;){let n=Math.min(r,8-this.bitPos);this.bitBuf=this.bitBuf<<n|e>>r-n,this.bitPos+=n,r-=n,e&=2**r-1,this.bitPos===8&&(this.bitPos=0,this.buffers.push(new Uint8Array([this.bitBuf])),this.pos++)}}},Zy=t=>Uint8Array.from(t).reverse();function HE(t,e,r){if(r){let n=2n**(e-1n);if(t<-n||t>=n)throw new Error(`value out of signed bounds. Expected ${-n} <= ${t} < ${n}`)}else if(0n>t||t>=2n**e)throw new Error(`value out of unsigned bounds. Expected 0 <= ${t} < ${2n**e}`)}function VE(t){return{encodeStream:t.encodeStream,decodeStream:t.decodeStream,size:t.size,encode:e=>{let r=new Xy;return t.encodeStream(r,e),r.finish()},decode:(e,r={})=>{let n=new Jy(e,r),i=t.decodeStream(n);return n.finish(),i}}}function jt(t,e){if(!Or(t))throw new Error(`validate: invalid inner value ${t}`);if(typeof e!="function")throw new Error("validate: fn should be function");return VE({size:t.size,encodeStream:(r,n)=>{let i;try{i=e(n)}catch(o){throw r.err(o)}t.encodeStream(r,i)},decodeStream:r=>{let n=t.decodeStream(r);try{return e(n)}catch(i){throw r.err(i)}}})}var Wt=t=>{let e=VE(t);return t.validate?jt(e,t.validate):e},ol=t=>Yc(t)&&typeof t.decode=="function"&&typeof t.encode=="function";function Or(t){return Yc(t)&&ol(t)&&typeof t.encodeStream=="function"&&typeof t.decodeStream=="function"&&(t.size===void 0||Fn(t.size))}function W8(){return{encode:t=>{if(!Array.isArray(t))throw new Error("array expected");let e={};for(let r of t){if(!Array.isArray(r)||r.length!==2)throw new Error("array of two elements expected");let n=r[0],i=r[1];if(e[n]!==void 0)throw new Error(`key(${n}) appears twice in struct`);e[n]=i}return e},decode:t=>{if(!Yc(t))throw new Error(`expected plain object, got ${t}`);return Object.entries(t)}}}var G8={encode:t=>{if(typeof t!="bigint")throw new Error(`expected bigint, got ${typeof t}`);if(t>BigInt(Number.MAX_SAFE_INTEGER))throw new Error(`element bigger than MAX_SAFE_INTEGER=${t}`);return Number(t)},decode:t=>{if(!Fn(t))throw new Error("element is not a safe integer");return BigInt(t)}};function z8(t){if(!Yc(t))throw new Error("plain object expected");return{encode:e=>{if(!Fn(e)||!(e in t))throw new Error(`wrong value ${e}`);return t[e]},decode:e=>{if(typeof e!="string")throw new Error(`wrong value ${typeof e}`);return t[e]}}}function Y8(t,e=!1){if(!Fn(t))throw new Error(`decimal/precision: wrong value ${t}`);if(typeof e!="boolean")throw new Error(`decimal/round: expected boolean, got ${typeof e}`);let r=10n**BigInt(t);return{encode:n=>{if(typeof n!="bigint")throw new Error(`expected bigint, got ${typeof n}`);let i=(n<0n?-n:n).toString(10),o=i.length-t;o<0&&(i=i.padStart(i.length-o,"0"),o=0);let s=i.length-1;for(;s>=o&&i[s]==="0";s--);let c=i.slice(0,o),a=i.slice(o,s+1);return c||(c="0"),n<0n&&(c="-"+c),a?`${c}.${a}`:c},decode:n=>{if(typeof n!="string")throw new Error(`expected string, got ${typeof n}`);if(n==="-0")throw new Error("negative zero is not allowed");let i=!1;if(n.startsWith("-")&&(i=!0,n=n.slice(1)),!/^(0|[1-9]\d*)(\.\d+)?$/.test(n))throw new Error(`wrong string value=${n}`);let o=n.indexOf(".");o=o===-1?n.length:o;let s=n.slice(0,o),c=n.slice(o+1).replace(/0+$/,""),a=BigInt(s)*r;if(!e&&c.length>t)throw new Error(`fractional part cannot be represented with this precision (num=${n}, prec=${t})`);let u=Math.min(c.length,t),d=BigInt(c.slice(0,u))*10n**BigInt(t-u),f=a+d;return i?-f:f}}}function J8(t){if(!Array.isArray(t))throw new Error(`expected array, got ${typeof t}`);for(let e of t)if(!ol(e))throw new Error(`wrong base coder ${e}`);return{encode:e=>{for(let r of t){let n=r.encode(e);if(n!==void 0)return n}throw new Error(`match/encode: cannot find match in ${e}`)},decode:e=>{for(let r of t){let n=r.decode(e);if(n!==void 0)return n}throw new Error(`match/decode: cannot find match in ${e}`)}}}var qE=t=>{if(!ol(t))throw new Error("BaseCoder expected");return{encode:t.decode,decode:t.encode}},Bi={dict:W8,numberBigint:G8,tsEnum:z8,decimal:Y8,match:J8,reverse:qE};var t0=(t,e=!1,r=!1,n=!0)=>{if(!Fn(t))throw new Error(`bigint/size: wrong value ${t}`);if(typeof e!="boolean")throw new Error(`bigint/le: expected boolean, got ${typeof e}`);if(typeof r!="boolean")throw new Error(`bigint/signed: expected boolean, got ${typeof r}`);if(typeof n!="boolean")throw new Error(`bigint/sized: expected boolean, got ${typeof n}`);let i=BigInt(t),o=2n**(8n*i-1n);return Wt({size:n?t:void 0,encodeStream:(s,c)=>{r&&c<0&&(c=c|o);let a=[];for(let d=0;d<t;d++)a.push(Number(c&255n)),c>>=8n;let u=new Uint8Array(a).reverse();if(!n){let d=0;for(d=0;d<u.length&&u[d]===0;d++);u=u.subarray(d)}s.bytes(e?u.reverse():u)},decodeStream:s=>{let c=s.bytes(n?t:Math.min(t,s.leftBytes)),a=e?c:Zy(c),u=0n;for(let d=0;d<a.length;d++)u|=BigInt(a[d])<<8n*BigInt(d);return r&&u&o&&(u=(u^o)-o),u},validate:s=>{if(typeof s!="bigint")throw new Error(`bigint: invalid value: ${s}`);return HE(s,8n*i,!!r),s}})};var FE=t0(32,!1);var Jc=t0(8,!0);var jE=t0(8,!0,!0);var X8=(t,e)=>Wt({size:t,encodeStream:(r,n)=>r.writeView(t,i=>e.write(i,n)),decodeStream:r=>r.readView(t,e.read),validate:r=>{if(typeof r!="number")throw new Error(`viewCoder: expected number, got ${typeof r}`);return e.validate&&e.validate(r),r}}),Lu=(t,e,r)=>{let n=t*8,i=2**(n-1),o=a=>{if(!Fn(a))throw new Error(`sintView: value is not safe integer: ${a}`);if(a<-i||a>=i)throw new Error(`sintView: value out of bounds. Expected ${-i} <= ${a} < ${i}`)},s=2**n,c=a=>{if(!Fn(a))throw new Error(`uintView: value is not safe integer: ${a}`);if(0>a||a>=s)throw new Error(`uintView: value out of bounds. Expected 0 <= ${a} < ${s}`)};return X8(t,{write:r.write,read:r.read,validate:e?o:c})},Be=Lu(4,!1,{read:(t,e)=>t.getUint32(e,!0),write:(t,e)=>t.setUint32(0,e,!0)}),WE=Lu(4,!1,{read:(t,e)=>t.getUint32(e,!1),write:(t,e)=>t.setUint32(0,e,!1)}),So=Lu(4,!0,{read:(t,e)=>t.getInt32(e,!0),write:(t,e)=>t.setInt32(0,e,!0)});var r0=Lu(2,!1,{read:(t,e)=>t.getUint16(e,!0),write:(t,e)=>t.setUint16(0,e,!0)});var mn=Lu(1,!1,{read:(t,e)=>t.getUint8(e),write:(t,e)=>t.setUint8(0,e)});var Fe=(t,e=!1)=>{if(typeof e!="boolean")throw new Error(`bytes/le: expected boolean, got ${typeof e}`);let r=$E(t),n=Jr(t);return Wt({size:typeof t=="number"?t:void 0,encodeStream:(i,o)=>{n||r.encodeStream(i,o.length),i.bytes(e?Zy(o):o),n&&i.bytes(t)},decodeStream:i=>{let o;if(n){let s=i.find(t);if(!s)throw i.err("bytes: cannot find terminator");o=i.bytes(s-i.pos),i.bytes(t.length)}else o=i.bytes(t===null?i.leftBytes:r.decodeStream(i));return e?Zy(o):o},validate:i=>{if(!Jr(i))throw new Error(`bytes: invalid value ${i}`);return i}})};function GE(t,e){if(!Or(e))throw new Error(`prefix: invalid inner value ${e}`);return gn(Fe(t),qE(e))}var sl=(t,e=!1)=>jt(gn(Fe(t,e),KE),r=>{if(typeof r!="string")throw new Error(`expected string, got ${typeof r}`);return r});var zE=(t,e={isLE:!1,with0x:!1})=>{let r=gn(Fe(t,e.isLE),xe),n=e.with0x;if(typeof n!="boolean")throw new Error(`hex/with0x: expected boolean, got ${typeof n}`);return n&&(r=gn(r,{encode:i=>`0x${i}`,decode:i=>{if(!i.startsWith("0x"))throw new Error("hex(with0x=true).encode input should start with 0x");return i.slice(2)}})),r};function gn(t,e){if(!Or(t))throw new Error(`apply: invalid inner value ${t}`);if(!ol(e))throw new Error(`apply: invalid base value ${t}`);return Wt({size:t.size,encodeStream:(r,n)=>{let i;try{i=e.decode(n)}catch(o){throw r.err(""+o)}return t.encodeStream(r,i)},decodeStream:r=>{let n=t.decodeStream(r);try{return e.encode(n)}catch(i){throw r.err(""+i)}}})}var YE=(t,e=!1)=>{if(!Jr(t))throw new Error(`flag/flagValue: expected Uint8Array, got ${typeof t}`);if(typeof e!="boolean")throw new Error(`flag/xor: expected boolean, got ${typeof e}`);return Wt({size:t.length,encodeStream:(r,n)=>{!!n!==e&&r.bytes(t)},decodeStream:r=>{let n=r.leftBytes>=t.length;return n&&(n=zc(r.bytes(t.length,!0),t),n&&r.bytes(t.length)),n!==e},validate:r=>{if(r!==void 0&&typeof r!="boolean")throw new Error(`flag: expected boolean value or undefined, got ${typeof r}`);return r}})};function JE(t,e,r){if(!Or(e))throw new Error(`flagged: invalid inner value ${e}`);if(typeof t!="string"&&!Or(e))throw new Error(`flagged: wrong path=${t}`);return Wt({encodeStream:(n,i)=>{typeof t=="string"?Ii.resolve(n.stack,t)?e.encodeStream(n,i):r&&e.encodeStream(n,r):(t.encodeStream(n,!!i),i?e.encodeStream(n,i):r&&e.encodeStream(n,r))},decodeStream:n=>{let i=!1;if(typeof t=="string"?i=!!Ii.resolve(n.stack,t):i=t.decodeStream(n),i)return e.decodeStream(n);r&&e.decodeStream(n)}})}function cl(t,e,r=!0){if(!Or(t))throw new Error(`magic: invalid inner value ${t}`);if(typeof r!="boolean")throw new Error(`magic: expected boolean, got ${typeof r}`);return Wt({size:t.size,encodeStream:(n,i)=>t.encodeStream(n,e),decodeStream:n=>{let i=t.decodeStream(n);if(r&&typeof i!="object"&&i!==e||Jr(e)&&!zc(e,i))throw n.err(`magic: invalid value: ${i} !== ${e}`)},validate:n=>{if(n!==void 0)throw new Error(`magic: wrong value=${typeof n}`);return n}})}function XE(t){let e=0;for(let r of t){if(r.size===void 0)return;if(!Fn(r.size))throw new Error(`sizeof: wrong element size=${e}`);e+=r.size}return e}function Et(t){if(!Yc(t))throw new Error(`struct: expected plain object, got ${t}`);for(let e in t)if(!Or(t[e]))throw new Error(`struct: field ${e} is not CoderType`);return Wt({size:XE(Object.values(t)),encodeStream:(e,r)=>{e.pushObj(r,n=>{for(let i in t)n(i,()=>t[i].encodeStream(e,r[i]))})},decodeStream:e=>{let r={};return e.pushObj(r,n=>{for(let i in t)n(i,()=>r[i]=t[i].decodeStream(e))}),r},validate:e=>{if(typeof e!="object"||e===null)throw new Error(`struct: invalid value ${e}`);return e}})}function ZE(t){if(!Array.isArray(t))throw new Error(`Packed.Tuple: got ${typeof t} instead of array`);for(let e=0;e<t.length;e++)if(!Or(t[e]))throw new Error(`tuple: field ${e} is not CoderType`);return Wt({size:XE(t),encodeStream:(e,r)=>{if(!Array.isArray(r))throw e.err(`tuple: invalid value ${r}`);e.pushObj(r,n=>{for(let i=0;i<t.length;i++)n(`${i}`,()=>t[i].encodeStream(e,r[i]))})},decodeStream:e=>{let r=[];return e.pushObj(r,n=>{for(let i=0;i<t.length;i++)n(`${i}`,()=>r.push(t[i].decodeStream(e)))}),r},validate:e=>{if(!Array.isArray(e))throw new Error(`tuple: invalid value ${e}`);if(e.length!==t.length)throw new Error(`tuple: wrong length=${e.length}, expected ${t.length}`);return e}})}function Gt(t,e){if(!Or(e))throw new Error(`array: invalid inner value ${e}`);let r=$E(typeof t=="string"?`../${t}`:t);return Wt({size:typeof t=="number"&&e.size?t*e.size:void 0,encodeStream:(n,i)=>{let o=n;o.pushObj(i,s=>{Jr(t)||r.encodeStream(n,i.length);for(let c=0;c<i.length;c++)s(`${c}`,()=>{let a=i[c],u=n.pos;if(e.encodeStream(n,a),Jr(t)){if(t.length>o.pos-u)return;let d=o.finish(!1).subarray(u,o.pos);if(zc(d.subarray(0,t.length),t))throw o.err(`array: inner element encoding same as separator. elm=${a} data=${d}`)}})}),Jr(t)&&n.bytes(t)},decodeStream:n=>{let i=[];return n.pushObj(i,o=>{if(t===null)for(let s=0;!n.isEnd()&&(o(`${s}`,()=>i.push(e.decodeStream(n))),!(e.size&&n.leftBytes<e.size));s++);else if(Jr(t))for(let s=0;;s++){if(zc(n.bytes(t.length,!0),t)){n.bytes(t.length);break}o(`${s}`,()=>i.push(e.decodeStream(n)))}else{let s;o("arrayLen",()=>s=r.decodeStream(n));for(let c=0;c<s;c++)o(`${c}`,()=>i.push(e.decodeStream(n)))}}),i},validate:n=>{if(!Array.isArray(n))throw new Error(`array: invalid value ${n}`);return n}})}var dl=vo.ProjectivePoint,ul=vo.CURVE.n,Ce=il.isBytes,jn=il.concatBytes,ct=il.equalBytes;var Xc=t=>RE(ke(t)),Ri=(...t)=>ke(ke(jn(...t))),wM=Ur.utils.randomPrivateKey,fl=Ur.getPublicKey,n0=vo.getPublicKey,QE=t=>t.r<ul/2n;function ev(t,e,r=!1){let n=vo.sign(t,e);if(r&&!QE(n)){let i=new Uint8Array(32),o=0;for(;!QE(n);)if(i.set(Be.encode(o++)),n=vo.sign(t,e,{extraEntropy:i}),o>4294967295)throw new Error("lowR counter overflow: report the error")}return n.toDERRawBytes()}var i0=Ur.sign,Pu=Ur.utils.taggedHash,vt;(function(t){t[t.ecdsa=0]="ecdsa",t[t.schnorr=1]="schnorr"})(vt||(vt={}));function Ao(t,e){let r=t.length;if(e===vt.ecdsa){if(r===32)throw new Error("Expected non-Schnorr key");return dl.fromHex(t),t}else if(e===vt.schnorr){if(r!==32)throw new Error("Expected 32-byte Schnorr key");return Ur.utils.lift_x(Ur.utils.bytesToNumberBE(t)),t}else throw new Error("Unknown key type")}function tv(t,e){let r=Ur.utils,n=r.taggedHash("TapTweak",t,e),i=r.bytesToNumberBE(n);if(i>=ul)throw new Error("tweak higher than curve order");return i}function rv(t,e=Uint8Array.of()){let r=Ur.utils,n=r.bytesToNumberBE(t),i=dl.fromPrivateKey(n),o=i.hasEvenY()?n:r.mod(-n,ul),s=r.pointToBytes(i),c=tv(s,e);return r.numberToBytesBE(r.mod(o+c,ul),32)}function Mu(t,e){let r=Ur.utils,n=tv(t,e),o=r.lift_x(r.bytesToNumberBE(t)).add(dl.fromPrivateKey(n)),s=o.hasEvenY()?0:1;return[r.pointToBytes(o),s]}var ll=ke(dl.BASE.toRawBytes(!1)),Xr={bech32:"bc",pubKeyHash:0,scriptHash:5,wif:128},o0={bech32:"tb",pubKeyHash:111,scriptHash:196,wif:239};function Ku(t,e){if(!Ce(t)||!Ce(e))throw new Error(`cmp: wrong type a=${typeof t} b=${typeof e}`);let r=Math.min(t.length,e.length);for(let n=0;n<r;n++)if(t[n]!=e[n])return Math.sign(t[n]-e[n]);return Math.sign(t.length-e.length)}l();l();l();var bt;(function(t){t[t.OP_0=0]="OP_0",t[t.PUSHDATA1=76]="PUSHDATA1",t[t.PUSHDATA2=77]="PUSHDATA2",t[t.PUSHDATA4=78]="PUSHDATA4",t[t["1NEGATE"]=79]="1NEGATE",t[t.RESERVED=80]="RESERVED",t[t.OP_1=81]="OP_1",t[t.OP_2=82]="OP_2",t[t.OP_3=83]="OP_3",t[t.OP_4=84]="OP_4",t[t.OP_5=85]="OP_5",t[t.OP_6=86]="OP_6",t[t.OP_7=87]="OP_7",t[t.OP_8=88]="OP_8",t[t.OP_9=89]="OP_9",t[t.OP_10=90]="OP_10",t[t.OP_11=91]="OP_11",t[t.OP_12=92]="OP_12",t[t.OP_13=93]="OP_13",t[t.OP_14=94]="OP_14",t[t.OP_15=95]="OP_15",t[t.OP_16=96]="OP_16",t[t.NOP=97]="NOP",t[t.VER=98]="VER",t[t.IF=99]="IF",t[t.NOTIF=100]="NOTIF",t[t.VERIF=101]="VERIF",t[t.VERNOTIF=102]="VERNOTIF",t[t.ELSE=103]="ELSE",t[t.ENDIF=104]="ENDIF",t[t.VERIFY=105]="VERIFY",t[t.RETURN=106]="RETURN",t[t.TOALTSTACK=107]="TOALTSTACK",t[t.FROMALTSTACK=108]="FROMALTSTACK",t[t["2DROP"]=109]="2DROP",t[t["2DUP"]=110]="2DUP",t[t["3DUP"]=111]="3DUP",t[t["2OVER"]=112]="2OVER",t[t["2ROT"]=113]="2ROT",t[t["2SWAP"]=114]="2SWAP",t[t.IFDUP=115]="IFDUP",t[t.DEPTH=116]="DEPTH",t[t.DROP=117]="DROP",t[t.DUP=118]="DUP",t[t.NIP=119]="NIP",t[t.OVER=120]="OVER",t[t.PICK=121]="PICK",t[t.ROLL=122]="ROLL",t[t.ROT=123]="ROT",t[t.SWAP=124]="SWAP",t[t.TUCK=125]="TUCK",t[t.CAT=126]="CAT",t[t.SUBSTR=127]="SUBSTR",t[t.LEFT=128]="LEFT",t[t.RIGHT=129]="RIGHT",t[t.SIZE=130]="SIZE",t[t.INVERT=131]="INVERT",t[t.AND=132]="AND",t[t.OR=133]="OR",t[t.XOR=134]="XOR",t[t.EQUAL=135]="EQUAL",t[t.EQUALVERIFY=136]="EQUALVERIFY",t[t.RESERVED1=137]="RESERVED1",t[t.RESERVED2=138]="RESERVED2",t[t["1ADD"]=139]="1ADD",t[t["1SUB"]=140]="1SUB",t[t["2MUL"]=141]="2MUL",t[t["2DIV"]=142]="2DIV",t[t.NEGATE=143]="NEGATE",t[t.ABS=144]="ABS",t[t.NOT=145]="NOT",t[t["0NOTEQUAL"]=146]="0NOTEQUAL",t[t.ADD=147]="ADD",t[t.SUB=148]="SUB",t[t.MUL=149]="MUL",t[t.DIV=150]="DIV",t[t.MOD=151]="MOD",t[t.LSHIFT=152]="LSHIFT",t[t.RSHIFT=153]="RSHIFT",t[t.BOOLAND=154]="BOOLAND",t[t.BOOLOR=155]="BOOLOR",t[t.NUMEQUAL=156]="NUMEQUAL",t[t.NUMEQUALVERIFY=157]="NUMEQUALVERIFY",t[t.NUMNOTEQUAL=158]="NUMNOTEQUAL",t[t.LESSTHAN=159]="LESSTHAN",t[t.GREATERTHAN=160]="GREATERTHAN",t[t.LESSTHANOREQUAL=161]="LESSTHANOREQUAL",t[t.GREATERTHANOREQUAL=162]="GREATERTHANOREQUAL",t[t.MIN=163]="MIN",t[t.MAX=164]="MAX",t[t.WITHIN=165]="WITHIN",t[t.RIPEMD160=166]="RIPEMD160",t[t.SHA1=167]="SHA1",t[t.SHA256=168]="SHA256",t[t.HASH160=169]="HASH160",t[t.HASH256=170]="HASH256",t[t.CODESEPARATOR=171]="CODESEPARATOR",t[t.CHECKSIG=172]="CHECKSIG",t[t.CHECKSIGVERIFY=173]="CHECKSIGVERIFY",t[t.CHECKMULTISIG=174]="CHECKMULTISIG",t[t.CHECKMULTISIGVERIFY=175]="CHECKMULTISIGVERIFY",t[t.NOP1=176]="NOP1",t[t.CHECKLOCKTIMEVERIFY=177]="CHECKLOCKTIMEVERIFY",t[t.CHECKSEQUENCEVERIFY=178]="CHECKSEQUENCEVERIFY",t[t.NOP4=179]="NOP4",t[t.NOP5=180]="NOP5",t[t.NOP6=181]="NOP6",t[t.NOP7=182]="NOP7",t[t.NOP8=183]="NOP8",t[t.NOP9=184]="NOP9",t[t.NOP10=185]="NOP10",t[t.CHECKSIGADD=186]="CHECKSIGADD",t[t.INVALID=255]="INVALID"})(bt||(bt={}));function s0(t=6,e=!1){return Wt({encodeStream:(r,n)=>{if(n===0n)return;let i=n<0,o=BigInt(n),s=[];for(let c=i?-o:o;c;c>>=8n)s.push(Number(c&0xffn));s[s.length-1]>=128?s.push(i?128:0):i&&(s[s.length-1]|=128),r.bytes(new Uint8Array(s))},decodeStream:r=>{let n=r.leftBytes;if(n>t)throw new Error(`ScriptNum: number (${n}) bigger than limit=${t}`);if(n===0)return 0n;if(e){let s=r.bytes(n,!0);if(!(s[s.length-1]&127)&&(n<=1||!(s[s.length-2]&128)))throw new Error("Non-minimally encoded ScriptNum")}let i=0,o=0n;for(let s=0;s<n;++s)i=r.byte(),o|=BigInt(i)<<8n*BigInt(s);return i>=128&&(o&=2n**BigInt(n*8)-1n>>1n,o=-o),o}})}function ov(t,e=4,r=!0){if(typeof t=="number")return t;if(Ce(t))try{let n=s0(e,r).decode(t);return n>Number.MAX_SAFE_INTEGER?void 0:Number(n)}catch{return}}var Ze=Wt({encodeStream:(t,e)=>{for(let r of e){if(typeof r=="string"){if(bt[r]===void 0)throw new Error(`Unknown opcode=${r}`);t.byte(bt[r]);continue}else if(typeof r=="number"){if(r===0){t.byte(0);continue}else if(1<=r&&r<=16){t.byte(bt.OP_1-1+r);continue}}if(typeof r=="number"&&(r=s0().encode(BigInt(r))),!Ce(r))throw new Error(`Wrong Script OP=${r} (${typeof r})`);let n=r.length;n<bt.PUSHDATA1?t.byte(n):n<=255?(t.byte(bt.PUSHDATA1),t.byte(n)):n<=65535?(t.byte(bt.PUSHDATA2),t.bytes(r0.encode(n))):(t.byte(bt.PUSHDATA4),t.bytes(Be.encode(n))),t.bytes(r)}},decodeStream:t=>{let e=[];for(;!t.isEnd();){let r=t.byte();if(bt.OP_0<r&&r<=bt.PUSHDATA4){let n;if(r<bt.PUSHDATA1)n=r;else if(r===bt.PUSHDATA1)n=mn.decodeStream(t);else if(r===bt.PUSHDATA2)n=r0.decodeStream(t);else if(r===bt.PUSHDATA4)n=Be.decodeStream(t);else throw new Error("Should be not possible");e.push(t.bytes(n))}else if(r===0)e.push(0);else if(bt.OP_1<=r&&r<=bt.OP_16)e.push(r-(bt.OP_1-1));else{let n=bt[r];if(n===void 0)throw new Error(`Unknown opcode=${r.toString(16)}`);e.push(n)}}return e}}),iv={253:[253,2,253n,65535n],254:[254,4,65536n,4294967295n],255:[255,8,4294967296n,18446744073709551615n]},Zc=Wt({encodeStream:(t,e)=>{if(typeof e=="number"&&(e=BigInt(e)),0n<=e&&e<=252n)return t.byte(Number(e));for(let[r,n,i,o]of Object.values(iv))if(!(i>e||e>o)){t.byte(r);for(let s=0;s<n;s++)t.byte(Number(e>>8n*BigInt(s)&0xffn));return}throw t.err(`VarInt too big: ${e}`)},decodeStream:t=>{let e=t.byte();if(e<=252)return BigInt(e);let[r,n,i]=iv[e],o=0n;for(let s=0;s<n;s++)o|=BigInt(t.byte())<<8n*BigInt(s);if(o<i)throw t.err(`Wrong CompactSize(${8*n})`);return o}}),Dr=gn(Zc,Bi.numberBigint),hr=Fe(Zc),Qc=Gt(Dr,hr),hl=t=>Gt(Zc,t),sv=Et({txid:Fe(32,!0),index:Be,finalScriptSig:hr,sequence:Be}),Ui=Et({amount:Jc,script:hr}),Z8=Et({version:So,segwitFlag:YE(new Uint8Array([0,1])),inputs:hl(sv),outputs:hl(Ui),witnesses:JE("segwitFlag",Gt("inputs/length",Qc)),lockTime:Be});function Q8(t){if(t.segwitFlag&&t.witnesses&&!t.witnesses.length)throw new Error("Segwit flag with empty witnesses array");return t}var Oi=jt(Z8,Q8),As=Et({version:So,inputs:hl(sv),outputs:hl(Ui),lockTime:Be});var a0=jt(Fe(null),t=>Ao(t,vt.ecdsa)),pl=jt(Fe(32),t=>Ao(t,vt.schnorr)),cv=jt(Fe(null),t=>{if(t.length!==64&&t.length!==65)throw new Error("Schnorr signature should be 64 or 65 bytes long");return t}),yl=Et({fingerprint:WE,path:Gt(null,Be)}),dv=Et({hashes:Gt(Dr,Fe(32)),der:yl}),eR=Fe(78),tR=Et({pubKey:pl,leafHash:Fe(32)}),rR=Et({version:mn,internalKey:Fe(32),merklePath:Gt(null,Fe(32))}),Di=jt(rR,t=>{if(t.merklePath.length>128)throw new Error("TaprootControlBlock: merklePath should be of length 0..128 (inclusive)");return t}),nR=Gt(null,Et({depth:mn,version:mn,script:hr})),St=Fe(null),av=Fe(20),$u=Fe(32),gl={unsignedTx:[0,!1,As,[0],[0],!1],xpub:[1,eR,yl,[],[0,2],!1],txVersion:[2,!1,Be,[2],[2],!1],fallbackLocktime:[3,!1,Be,[],[2],!1],inputCount:[4,!1,Dr,[2],[2],!1],outputCount:[5,!1,Dr,[2],[2],!1],txModifiable:[6,!1,mn,[],[2],!1],version:[251,!1,Be,[],[0,2],!1],proprietary:[252,St,St,[],[0,2],!1]},Hu={nonWitnessUtxo:[0,!1,Oi,[],[0,2],!1],witnessUtxo:[1,!1,Ui,[],[0,2],!1],partialSig:[2,a0,St,[],[0,2],!1],sighashType:[3,!1,Be,[],[0,2],!1],redeemScript:[4,!1,St,[],[0,2],!1],witnessScript:[5,!1,St,[],[0,2],!1],bip32Derivation:[6,a0,yl,[],[0,2],!1],finalScriptSig:[7,!1,St,[],[0,2],!1],finalScriptWitness:[8,!1,Qc,[],[0,2],!1],porCommitment:[9,!1,St,[],[0,2],!1],ripemd160:[10,av,St,[],[0,2],!1],sha256:[11,$u,St,[],[0,2],!1],hash160:[12,av,St,[],[0,2],!1],hash256:[13,$u,St,[],[0,2],!1],txid:[14,!1,$u,[2],[2],!0],index:[15,!1,Be,[2],[2],!0],sequence:[16,!1,Be,[],[2],!0],requiredTimeLocktime:[17,!1,Be,[],[2],!1],requiredHeightLocktime:[18,!1,Be,[],[2],!1],tapKeySig:[19,!1,cv,[],[0,2],!1],tapScriptSig:[20,tR,cv,[],[0,2],!1],tapLeafScript:[21,Di,St,[],[0,2],!1],tapBip32Derivation:[22,$u,dv,[],[0,2],!1],tapInternalKey:[23,!1,pl,[],[0,2],!1],tapMerkleRoot:[24,!1,$u,[],[0,2],!1],proprietary:[252,St,St,[],[0,2],!1]},fv=["txid","sequence","index","witnessUtxo","nonWitnessUtxo","finalScriptSig","finalScriptWitness","unknown"],lv=["partialSig","finalScriptSig","finalScriptWitness","tapKeySig","tapScriptSig"],Vu={redeemScript:[0,!1,St,[],[0,2],!1],witnessScript:[1,!1,St,[],[0,2],!1],bip32Derivation:[2,a0,yl,[],[0,2],!1],amount:[3,!1,jE,[2],[2],!0],script:[4,!1,St,[2],[2],!0],tapInternalKey:[5,!1,pl,[],[0,2],!1],tapTree:[6,!1,nR,[],[0,2],!1],tapBip32Derivation:[7,pl,dv,[],[0,2],!1],proprietary:[252,St,St,[],[0,2],!1]},hv=[],uv=Gt(Qy,Et({key:GE(Dr,Et({type:Dr,key:Fe(null)})),value:Fe(Dr)}));function u0(t){let[e,r,n,i,o,s]=t;return{type:e,kc:r,vc:n,reqInc:i,allowInc:o,silentIgnore:s}}var _M=Et({type:Dr,key:Fe(null)});function d0(t){let e={};for(let r in t){let[n,i,o]=t[r];e[n]=[r,i,o]}return Wt({encodeStream:(r,n)=>{let i=[];for(let o in t){let s=n[o];if(s===void 0)continue;let[c,a,u]=t[o];if(!a)i.push({key:{type:c,key:Ve},value:u.encode(s)});else{let d=s.map(([f,h])=>[a.encode(f),u.encode(h)]);d.sort((f,h)=>Ku(f[0],h[0]));for(let[f,h]of d)i.push({key:{key:f,type:c},value:h})}}if(n.unknown){n.unknown.sort((o,s)=>Ku(o[0].key,s[0].key));for(let[o,s]of n.unknown)i.push({key:o,value:s})}uv.encodeStream(r,i)},decodeStream:r=>{let n=uv.decodeStream(r),i={},o={};for(let s of n){let c="unknown",a=s.key.key,u=s.value;if(e[s.key.type]){let[d,f,h]=e[s.key.type];if(c=d,!f&&a.length)throw new Error(`PSBT: Non-empty key for ${c} (key=${xe.encode(a)} value=${xe.encode(u)}`);if(a=f?f.decode(a):void 0,u=h.decode(u),!f){if(i[c])throw new Error(`PSBT: Same keys: ${c} (key=${a} value=${u})`);i[c]=u,o[c]=!0;continue}}else a={type:s.key.type,key:s.key.key};if(o[c])throw new Error(`PSBT: Key type with empty key and no key=${c} val=${u}`);i[c]||(i[c]=[]),i[c].push([a,u])}return i}})}var ml=jt(d0(Hu),t=>{if(t.finalScriptWitness&&!t.finalScriptWitness.length)throw new Error("validateInput: empty finalScriptWitness");if(t.partialSig&&!t.partialSig.length)throw new Error("Empty partialSig");if(t.partialSig)for(let[e]of t.partialSig)Ao(e,vt.ecdsa);if(t.bip32Derivation)for(let[e]of t.bip32Derivation)Ao(e,vt.ecdsa);if(t.requiredTimeLocktime!==void 0&&t.requiredTimeLocktime<5e8)throw new Error(`validateInput: wrong timeLocktime=${t.requiredTimeLocktime}`);if(t.requiredHeightLocktime!==void 0&&(t.requiredHeightLocktime<=0||t.requiredHeightLocktime>=5e8))throw new Error(`validateInput: wrong heighLocktime=${t.requiredHeightLocktime}`);if(t.tapLeafScript)for(let[e,r]of t.tapLeafScript){if((e.version&254)!==r[r.length-1])throw new Error("validateInput: tapLeafScript version mimatch");if(r[r.length-1]&1)throw new Error("validateInput: tapLeafScript version has parity bit!")}return t}),wl=jt(d0(Vu),t=>{if(t.bip32Derivation)for(let[e]of t.bip32Derivation)Ao(e,vt.ecdsa);return t}),pv=jt(d0(gl),t=>{if((t.version||0)===0){if(!t.unsignedTx)throw new Error("PSBTv0: missing unsignedTx");for(let r of t.unsignedTx.inputs)if(r.finalScriptSig&&r.finalScriptSig.length)throw new Error("PSBTv0: input scriptSig found in unsignedTx")}return t}),iR=Et({magic:cl(sl(new Uint8Array([255])),"psbt"),global:pv,inputs:Gt("global/unsignedTx/inputs/length",ml),outputs:Gt(null,wl)}),oR=Et({magic:cl(sl(new Uint8Array([255])),"psbt"),global:pv,inputs:Gt("global/inputCount",ml),outputs:Gt("global/outputCount",wl)}),IM=Et({magic:cl(sl(new Uint8Array([255])),"psbt"),items:Gt(null,gn(Gt(Qy,ZE([zE(Dr),Fe(Zc)])),Bi.dict()))});function c0(t,e,r){for(let n in r){if(n==="unknown"||!e[n])continue;let{allowInc:i}=u0(e[n]);if(!i.includes(t))throw new Error(`PSBTv${t}: field ${n} is not allowed`)}for(let n in e){let{reqInc:i}=u0(e[n]);if(i.includes(t)&&r[n]===void 0)throw new Error(`PSBTv${t}: missing required field ${n}`)}}function f0(t,e,r){let n={};for(let i in r){let o=i;if(o!=="unknown"){if(!e[o])continue;let{allowInc:s,silentIgnore:c}=u0(e[o]);if(!s.includes(t)){if(c)continue;throw new Error(`Failed to serialize in PSBTv${t}: ${o} but versions allows inclusion=${s}`)}}n[o]=r[o]}return n}function yv(t){let e=t&&t.global&&t.global.version||0;c0(e,gl,t.global);for(let s of t.inputs)c0(e,Hu,s);for(let s of t.outputs)c0(e,Vu,s);let r=e?t.global.inputCount:t.global.unsignedTx.inputs.length;if(t.inputs.length<r)throw new Error("Not enough inputs");let n=t.inputs.slice(r);if(n.length>1||n.length&&Object.keys(n[0]).length)throw new Error(`Unexpected inputs left in tx=${n}`);let i=e?t.global.outputCount:t.global.unsignedTx.outputs.length;if(t.outputs.length<i)throw new Error("Not outputs inputs");let o=t.outputs.slice(i);if(o.length>1||o.length&&Object.keys(o[0]).length)throw new Error(`Unexpected outputs left in tx=${o}`);return t}function bl(t,e,r,n,i){let o={...r,...e};for(let s in t){let c=s,[a,u,d]=t[c],f=n&&!n.includes(s);if(e[s]===void 0&&s in e){if(f)throw new Error(`Cannot remove signed field=${s}`);delete o[s]}else if(u){let h=r&&r[s]?r[s]:[],p=e[c];if(p){if(!Array.isArray(p))throw new Error(`keyMap(${s}): KV pairs should be [k, v][]`);p=p.map(x=>{if(x.length!==2)throw new Error(`keyMap(${s}): KV pairs should be [k, v][]`);return[typeof x[0]=="string"?u.decode(xe.decode(x[0])):x[0],typeof x[1]=="string"?d.decode(xe.decode(x[1])):x[1]]});let y={},g=(x,S,_)=>{if(y[x]===void 0){y[x]=[S,_];return}let A=xe.encode(d.encode(y[x][1])),O=xe.encode(d.encode(_));if(A!==O)throw new Error(`keyMap(${c}): same key=${x} oldVal=${A} newVal=${O}`)};for(let[x,S]of h){let _=xe.encode(u.encode(x));g(_,x,S)}for(let[x,S]of p){let _=xe.encode(u.encode(x));if(S===void 0){if(f)throw new Error(`Cannot remove signed field=${c}/${x}`);delete y[_]}else g(_,x,S)}o[c]=Object.values(y)}}else if(typeof o[s]=="string")o[s]=d.decode(xe.decode(o[s]));else if(f&&s in e&&r&&r[s]!==void 0&&!ct(d.encode(e[s]),d.encode(r[s])))throw new Error(`Cannot change signed field=${s}`)}for(let s in o)if(!t[s]){if(i&&s==="unknown")continue;delete o[s]}return o}var l0=jt(iR,yv),h0=jt(oR,yv);var cR={encode(t){if(!(t.length!==2||t[0]!==1||!Ce(t[1])||xe.encode(t[1])!=="4e73"))return{type:"p2a",script:Ze.encode(t)}},decode:t=>{if(t.type==="p2a")return[1,xe.decode("4e73")]}};function To(t,e){try{return Ao(t,e),!0}catch{return!1}}var aR={encode(t){if(!(t.length!==2||!Ce(t[0])||!To(t[0],vt.ecdsa)||t[1]!=="CHECKSIG"))return{type:"pk",pubkey:t[0]}},decode:t=>t.type==="pk"?[t.pubkey,"CHECKSIG"]:void 0},uR={encode(t){if(!(t.length!==5||t[0]!=="DUP"||t[1]!=="HASH160"||!Ce(t[2]))&&!(t[3]!=="EQUALVERIFY"||t[4]!=="CHECKSIG"))return{type:"pkh",hash:t[2]}},decode:t=>t.type==="pkh"?["DUP","HASH160",t.hash,"EQUALVERIFY","CHECKSIG"]:void 0},dR={encode(t){if(!(t.length!==3||t[0]!=="HASH160"||!Ce(t[1])||t[2]!=="EQUAL"))return{type:"sh",hash:t[1]}},decode:t=>t.type==="sh"?["HASH160",t.hash,"EQUAL"]:void 0},fR={encode(t){if(!(t.length!==2||t[0]!==0||!Ce(t[1]))&&t[1].length===32)return{type:"wsh",hash:t[1]}},decode:t=>t.type==="wsh"?[0,t.hash]:void 0},lR={encode(t){if(!(t.length!==2||t[0]!==0||!Ce(t[1]))&&t[1].length===20)return{type:"wpkh",hash:t[1]}},decode:t=>t.type==="wpkh"?[0,t.hash]:void 0},hR={encode(t){let e=t.length-1;if(t[e]!=="CHECKMULTISIG")return;let r=t[0],n=t[e-1];if(typeof r!="number"||typeof n!="number")return;let i=t.slice(1,-2);if(n===i.length){for(let o of i)if(!Ce(o))return;return{type:"ms",m:r,pubkeys:i}}},decode:t=>t.type==="ms"?[t.m,...t.pubkeys,t.pubkeys.length,"CHECKMULTISIG"]:void 0},pR={encode(t){if(!(t.length!==2||t[0]!==1||!Ce(t[1])))return{type:"tr",pubkey:t[1]}},decode:t=>t.type==="tr"?[1,t.pubkey]:void 0},yR={encode(t){let e=t.length-1;if(t[e]!=="CHECKSIG")return;let r=[];for(let n=0;n<e;n++){let i=t[n];if(n&1){if(i!=="CHECKSIGVERIFY"||n===e-1)return;continue}if(!Ce(i))return;r.push(i)}return{type:"tr_ns",pubkeys:r}},decode:t=>{if(t.type!=="tr_ns")return;let e=[];for(let r=0;r<t.pubkeys.length-1;r++)e.push(t.pubkeys[r],"CHECKSIGVERIFY");return e.push(t.pubkeys[t.pubkeys.length-1],"CHECKSIG"),e}},gR={encode(t){let e=t.length-1;if(t[e]!=="NUMEQUAL"||t[1]!=="CHECKSIG")return;let r=[],n=ov(t[e-1]);if(typeof n=="number"){for(let i=0;i<e-1;i++){let o=t[i];if(i&1){if(o!==(i===1?"CHECKSIG":"CHECKSIGADD"))throw new Error("OutScript.encode/tr_ms: wrong element");continue}if(!Ce(o))throw new Error("OutScript.encode/tr_ms: wrong key element");r.push(o)}return{type:"tr_ms",pubkeys:r,m:n}}},decode:t=>{if(t.type!=="tr_ms")return;let e=[t.pubkeys[0],"CHECKSIG"];for(let r=1;r<t.pubkeys.length;r++)e.push(t.pubkeys[r],"CHECKSIGADD");return e.push(t.m,"NUMEQUAL"),e}},mR={encode(t){return{type:"unknown",script:Ze.encode(t)}},decode:t=>t.type==="unknown"?Ze.decode(t.script):void 0},wR=[cR,aR,uR,dR,fR,lR,hR,pR,yR,gR,mR],bR=gn(Ze,Bi.match(wR)),Qe=jt(bR,t=>{if(t.type==="pk"&&!To(t.pubkey,vt.ecdsa))throw new Error("OutScript/pk: wrong key");if((t.type==="pkh"||t.type==="sh"||t.type==="wpkh")&&(!Ce(t.hash)||t.hash.length!==20))throw new Error(`OutScript/${t.type}: wrong hash`);if(t.type==="wsh"&&(!Ce(t.hash)||t.hash.length!==32))throw new Error("OutScript/wsh: wrong hash");if(t.type==="tr"&&(!Ce(t.pubkey)||!To(t.pubkey,vt.schnorr)))throw new Error("OutScript/tr: wrong taproot public key");if((t.type==="ms"||t.type==="tr_ns"||t.type==="tr_ms")&&!Array.isArray(t.pubkeys))throw new Error("OutScript/multisig: wrong pubkeys array");if(t.type==="ms"){let e=t.pubkeys.length;for(let r of t.pubkeys)if(!To(r,vt.ecdsa))throw new Error("OutScript/multisig: wrong pubkey");if(t.m<=0||e>16||t.m>e)throw new Error("OutScript/multisig: invalid params")}if(t.type==="tr_ns"||t.type==="tr_ms"){for(let e of t.pubkeys)if(!To(e,vt.schnorr))throw new Error(`OutScript/${t.type}: wrong pubkey`)}if(t.type==="tr_ms"){let e=t.pubkeys.length;if(t.m<=0||e>999||t.m>e)throw new Error("OutScript/tr_ms: invalid params")}return t});function gv(t,e){if(!ct(t.hash,ke(e)))throw new Error("checkScript: wsh wrong witnessScript hash");let r=Qe.decode(e);if(r.type==="tr"||r.type==="tr_ns"||r.type==="tr_ms")throw new Error(`checkScript: P2${r.type} cannot be wrapped in P2SH`);if(r.type==="wpkh"||r.type==="sh")throw new Error(`checkScript: P2${r.type} cannot be wrapped in P2WSH`)}function b0(t,e,r){if(t){let n=Qe.decode(t);if(n.type==="tr_ns"||n.type==="tr_ms"||n.type==="ms"||n.type=="pk")throw new Error(`checkScript: non-wrapped ${n.type}`);if(n.type==="sh"&&e){if(!ct(n.hash,Xc(e)))throw new Error("checkScript: sh wrong redeemScript hash");let i=Qe.decode(e);if(i.type==="tr"||i.type==="tr_ns"||i.type==="tr_ms")throw new Error(`checkScript: P2${i.type} cannot be wrapped in P2SH`);if(i.type==="sh")throw new Error("checkScript: P2SH cannot be wrapped in P2SH")}n.type==="wsh"&&r&&gv(n,r)}if(e){let n=Qe.decode(e);n.type==="wsh"&&r&&gv(n,r)}}var ki=(t,e=Xr)=>{if(!To(t,vt.ecdsa))throw new Error("P2PKH: invalid publicKey");let r=Xc(t);return{type:"pkh",script:Qe.encode({type:"pkh",hash:r}),address:Zr(e).encode({type:"pkh",hash:r}),hash:r}};var Ts=(t,e=Xr)=>{if(!To(t,vt.ecdsa))throw new Error("P2WPKH: invalid publicKey");if(t.length===65)throw new Error("P2WPKH: uncompressed public key");let r=Xc(t);return{type:"wpkh",script:Qe.encode({type:"wpkh",hash:r}),address:Zr(e).encode({type:"wpkh",hash:r}),hash:r}};function xR(t,e,r=!1,n){let i=Qe.decode(t);if(i.type==="unknown"){if(n){let c=gn(Ze,Bi.match(n)).decode(t);if(c!==void 0){if(typeof c.type!="string"||!c.type.startsWith("tr_"))throw new Error(`P2TR: invalid custom type=${c.type}`);return}}if(r)return}if(!["tr_ns","tr_ms"].includes(i.type))throw new Error(`P2TR: invalid leaf script=${i.type}`);let o=i;if(!r&&o.pubkeys)for(let s of o.pubkeys){if(ct(s,ll))throw new Error("Unspendable taproot key in leaf script");if(ct(s,e))throw new Error("Using P2TR with leaf script with same key as internal key is not supported")}}function wv(t){let e=Array.from(t);for(;e.length>=2;){e.sort((s,c)=>(c.weight||1)-(s.weight||1));let n=e.pop(),i=e.pop(),o=(i?.weight||1)+(n?.weight||1);e.push({weight:o,childs:[i?.childs||i,n?.childs||n]})}let r=e[0];return r?.childs||r}function y0(t,e=[]){if(!t)throw new Error("taprootAddPath: empty tree");if(t.type==="leaf")return{...t,path:e};if(t.type!=="branch")throw new Error(`taprootAddPath: wrong type=${t}`);return{...t,path:e,left:y0(t.left,[t.right.hash,...e]),right:y0(t.right,[t.left.hash,...e])}}function g0(t){if(!t)throw new Error("taprootAddPath: empty tree");if(t.type==="leaf")return[t];if(t.type!=="branch")throw new Error(`taprootWalkTree: wrong type=${t}`);return[...g0(t.left),...g0(t.right)]}function m0(t,e,r=!1,n){if(!t)throw new Error("taprootHashTree: empty tree");if(Array.isArray(t)&&t.length===1&&(t=t[0]),!Array.isArray(t)){let{leafVersion:a,script:u}=t;if(t.tapLeafScript||t.tapMerkleRoot&&!ct(t.tapMerkleRoot,Ve))throw new Error("P2TR: tapRoot leafScript cannot have tree");let d=typeof u=="string"?xe.decode(u):u;if(!Ce(d))throw new Error(`checkScript: wrong script type=${d}`);return xR(d,e,r,n),{type:"leaf",version:a,script:d,hash:qu(d,a)}}if(t.length!==2&&(t=wv(t)),t.length!==2)throw new Error("hashTree: non binary tree!");let i=m0(t[0],e,r,n),o=m0(t[1],e,r,n),[s,c]=[i.hash,o.hash];return Ku(c,s)===-1&&([s,c]=[c,s]),{type:"branch",left:i,right:o,hash:Pu("TapBranch",s,c)}}var w0=192,qu=(t,e=w0)=>Pu("TapLeaf",new Uint8Array([e]),hr.encode(t));function _s(t,e,r=Xr,n=!1,i){if(!t&&!e)throw new Error("p2tr: should have pubKey or scriptTree (or both)");let o=typeof t=="string"?xe.decode(t):t||ll;if(!To(o,vt.schnorr))throw new Error("p2tr: non-schnorr pubkey");if(e){let s=y0(m0(e,o,n,i)),c=s.hash,[a,u]=Mu(o,c),d=g0(s).map(f=>({...f,controlBlock:Di.encode({version:(f.version||w0)+u,internalKey:o,merklePath:f.path})}));return{type:"tr",script:Qe.encode({type:"tr",pubkey:a}),address:Zr(r).encode({type:"tr",pubkey:a}),tweakedPubkey:a,tapInternalKey:o,leaves:d,tapLeafScript:d.map(f=>[Di.decode(f.controlBlock),jn(f.script,new Uint8Array([f.version||w0]))]),tapMerkleRoot:c}}else{let s=Mu(o,Ve)[0];return{type:"tr",script:Qe.encode({type:"tr",pubkey:s}),address:Zr(r).encode({type:"tr",pubkey:s}),tweakedPubkey:s,tapInternalKey:o}}}var bv=PE(ke);function xv(t,e){if(e.length<2||e.length>40)throw new Error("Witness: invalid length");if(t>16)throw new Error("Witness: invalid version");if(t===0&&!(e.length===20||e.length===32))throw new Error("Witness: invalid length for version")}function p0(t,e,r=Xr){xv(t,e);let n=t===0?nl:Ss;return n.encode(r.bech32,[t].concat(n.toWords(e)))}function mv(t,e){return bv.encode(jn(Uint8Array.from(e),t))}function Zr(t=Xr){return{encode(e){let{type:r}=e;if(r==="wpkh")return p0(0,e.hash,t);if(r==="wsh")return p0(0,e.hash,t);if(r==="tr")return p0(1,e.pubkey,t);if(r==="pkh")return mv(e.hash,[t.pubKeyHash]);if(r==="sh")return mv(e.hash,[t.scriptHash]);throw new Error(`Unknown address type=${r}`)},decode(e){if(e.length<14||e.length>74)throw new Error("Invalid address length");if(t.bech32&&e.toLowerCase().startsWith(`${t.bech32}1`)){let n;try{if(n=nl.decode(e),n.words[0]!==0)throw new Error(`bech32: wrong version=${n.words[0]}`)}catch{if(n=Ss.decode(e),n.words[0]===0)throw new Error(`bech32m: wrong version=${n.words[0]}`)}if(n.prefix!==t.bech32)throw new Error(`wrong bech32 prefix=${n.prefix}`);let[i,...o]=n.words,s=nl.fromWords(o);if(xv(i,s),i===0&&s.length===32)return{type:"wsh",hash:s};if(i===0&&s.length===20)return{type:"wpkh",hash:s};if(i===1&&s.length===32)return{type:"tr",pubkey:s};throw new Error("Unknown witness program")}let r=bv.decode(e);if(r.length!==21)throw new Error("Invalid base58 address");if(r[0]===t.pubKeyHash)return{type:"pkh",hash:r.slice(1)};if(r[0]===t.scriptHash)return{type:"sh",hash:r.slice(1)};throw new Error(`Invalid address prefix=${r[0]}`)}}}l();var xl=new Uint8Array(32),ER={amount:0xffffffffffffffffn,script:Ve},vR=t=>Math.ceil(t/4),SR=8,AR=2,Is=0,S0=4294967295,TR=Bi.decimal(SR),ju=(t,e)=>t===void 0?e:t;function vl(t){if(Array.isArray(t))return t.map(e=>vl(e));if(Ce(t))return Uint8Array.from(t);if(["number","bigint","boolean","string","undefined"].includes(typeof t))return t;if(t===null)return t;if(typeof t=="object")return Object.fromEntries(Object.entries(t).map(([e,r])=>[e,vl(r)]));throw new Error(`cloneDeep: unknown type=${t} (${typeof t})`)}var je;(function(t){t[t.DEFAULT=0]="DEFAULT",t[t.ALL=1]="ALL",t[t.NONE=2]="NONE",t[t.SINGLE=3]="SINGLE",t[t.ANYONECANPAY=128]="ANYONECANPAY"})(je||(je={}));var _o;(function(t){t[t.DEFAULT=0]="DEFAULT",t[t.ALL=1]="ALL",t[t.NONE=2]="NONE",t[t.SINGLE=3]="SINGLE",t[t.DEFAULT_ANYONECANPAY=128]="DEFAULT_ANYONECANPAY",t[t.ALL_ANYONECANPAY=129]="ALL_ANYONECANPAY",t[t.NONE_ANYONECANPAY=130]="NONE_ANYONECANPAY",t[t.SINGLE_ANYONECANPAY=131]="SINGLE_ANYONECANPAY"})(_o||(_o={}));function _R(t,e,r,n=Ve){return ct(r,e)&&(t=rv(t,n),e=fl(t)),{privKey:t,pubKey:e}}function Bs(t){if(t.script===void 0||t.amount===void 0)throw new Error("Transaction/output: script and amount required");return{script:t.script,amount:t.amount}}function Fu(t){if(t.txid===void 0||t.index===void 0)throw new Error("Transaction/input: txid and index required");return{txid:t.txid,index:t.index,sequence:ju(t.sequence,S0),finalScriptSig:ju(t.finalScriptSig,Ve)}}function x0(t){for(let e in t){let r=e;fv.includes(r)||delete t[r]}}var E0=Et({txid:Fe(32,!0),index:Be});function IR(t){if(typeof t!="number"||typeof _o[t]!="string")throw new Error(`Invalid SigHash=${t}`);return t}function Ev(t){let e=t&31;return{isAny:!!(t&je.ANYONECANPAY),isNone:e===je.NONE,isSingle:e===je.SINGLE}}function BR(t){if(t!==void 0&&{}.toString.call(t)!=="[object Object]")throw new Error(`Wrong object type for transaction options: ${t}`);let e={...t,version:ju(t.version,AR),lockTime:ju(t.lockTime,0),PSBTVersion:ju(t.PSBTVersion,0)};if(typeof e.allowUnknowInput<"u"&&(t.allowUnknownInputs=e.allowUnknowInput),typeof e.allowUnknowOutput<"u"&&(t.allowUnknownOutputs=e.allowUnknowOutput),typeof e.lockTime!="number")throw new Error("Transaction lock time should be number");if(Be.encode(e.lockTime),e.PSBTVersion!==0&&e.PSBTVersion!==2)throw new Error(`Unknown PSBT version ${e.PSBTVersion}`);for(let r of["allowUnknownVersion","allowUnknownOutputs","allowUnknownInputs","disableScriptCheck","bip174jsCompat","allowLegacyWitnessUtxo","lowR"]){let n=e[r];if(n!==void 0&&typeof n!="boolean")throw new Error(`Transation options wrong type: ${r}=${n} (${typeof n})`)}if(e.allowUnknownVersion?typeof e.version=="number":![-1,0,1,2,3].includes(e.version))throw new Error(`Unknown version: ${e.version}`);if(e.customScripts!==void 0){let r=e.customScripts;if(!Array.isArray(r))throw new Error(`wrong custom scripts type (expected array): customScripts=${r} (${typeof r})`);for(let n of r){if(typeof n.encode!="function"||typeof n.decode!="function")throw new Error(`wrong script=${n} (${typeof n})`);if(n.finalizeTaproot!==void 0&&typeof n.finalizeTaproot!="function")throw new Error(`wrong script=${n} (${typeof n})`)}}return Object.freeze(e)}function vv(t){if(t.nonWitnessUtxo&&t.index!==void 0){let e=t.nonWitnessUtxo.outputs.length-1;if(t.index>e)throw new Error(`validateInput: index(${t.index}) not in nonWitnessUtxo`);let r=t.nonWitnessUtxo.outputs[t.index];if(t.witnessUtxo&&(!ct(t.witnessUtxo.script,r.script)||t.witnessUtxo.amount!==r.amount))throw new Error("validateInput: witnessUtxo different from nonWitnessUtxo");if(t.txid){if(t.nonWitnessUtxo.outputs.length-1<t.index)throw new Error("nonWitnessUtxo: incorect output index");let i=Rs.fromRaw(Oi.encode(t.nonWitnessUtxo),{allowUnknownOutputs:!0,disableScriptCheck:!0,allowUnknownInputs:!0}),o=xe.encode(t.txid);if(i.isFinal&&i.id!==o)throw new Error(`nonWitnessUtxo: wrong txid, exp=${o} got=${i.id}`)}}return t}function El(t){if(t.nonWitnessUtxo){if(t.index===void 0)throw new Error("Unknown input index");return t.nonWitnessUtxo.outputs[t.index]}else{if(t.witnessUtxo)return t.witnessUtxo;throw new Error("Cannot find previous output info")}}function Sv(t,e,r,n=!1,i=!1){let{nonWitnessUtxo:o,txid:s}=t;typeof o=="string"&&(o=xe.decode(o)),Ce(o)&&(o=Oi.decode(o)),!("nonWitnessUtxo"in t)&&o===void 0&&(o=e?.nonWitnessUtxo),typeof s=="string"&&(s=xe.decode(s)),s===void 0&&(s=e?.txid);let c={...e,...t,nonWitnessUtxo:o,txid:s};!("nonWitnessUtxo"in t)&&c.nonWitnessUtxo===void 0&&delete c.nonWitnessUtxo,c.sequence===void 0&&(c.sequence=S0),c.tapMerkleRoot===null&&delete c.tapMerkleRoot,c=bl(Hu,c,e,r,i),ml.encode(c);let a;return c.nonWitnessUtxo&&c.index!==void 0?a=c.nonWitnessUtxo.outputs[c.index]:c.witnessUtxo&&(a=c.witnessUtxo),a&&!n&&b0(a&&a.script,c.redeemScript,c.witnessScript),c}function v0(t,e=!1){let r="legacy",n=je.ALL,i=El(t),o=Qe.decode(i.script),s=o.type,c=o,a=[o];if(o.type==="tr")return n=je.DEFAULT,{txType:"taproot",type:"tr",last:o,lastScript:i.script,defaultSighash:n,sighash:t.sighashType||n};{if((o.type==="wpkh"||o.type==="wsh")&&(r="segwit"),o.type==="sh"){if(!t.redeemScript)throw new Error("inputType: sh without redeemScript");let h=Qe.decode(t.redeemScript);(h.type==="wpkh"||h.type==="wsh")&&(r="segwit"),a.push(h),c=h,s+=`-${h.type}`}if(c.type==="wsh"){if(!t.witnessScript)throw new Error("inputType: wsh without witnessScript");let h=Qe.decode(t.witnessScript);h.type==="wsh"&&(r="segwit"),a.push(h),c=h,s+=`-${h.type}`}let u=a[a.length-1];if(u.type==="sh"||u.type==="wsh")throw new Error("inputType: sh/wsh cannot be terminal type");let d=Qe.encode(u),f={type:s,txType:r,last:u,lastScript:d,defaultSighash:n,sighash:t.sighashType||n};if(r==="legacy"&&!e&&!t.nonWitnessUtxo)throw new Error("Transaction/sign: legacy input without nonWitnessUtxo, can result in attack that forces paying higher fees. Pass allowLegacyWitnessUtxo=true, if you sure");return f}}var Rs=class t{constructor(e={}){this.global={},this.inputs=[],this.outputs=[];let r=this.opts=BR(e);r.lockTime!==Is&&(this.global.fallbackLocktime=r.lockTime),this.global.txVersion=r.version}static fromRaw(e,r={}){let n=Oi.decode(e),i=new t({...r,version:n.version,lockTime:n.lockTime});for(let o of n.outputs)i.addOutput(o);if(i.outputs=n.outputs,i.inputs=n.inputs,n.witnesses)for(let o=0;o<n.witnesses.length;o++)i.inputs[o].finalScriptWitness=n.witnesses[o];return i}static fromPSBT(e,r={}){let n;try{n=l0.decode(e)}catch(f){try{n=h0.decode(e)}catch{throw f}}let i=n.global.version||0;if(i!==0&&i!==2)throw new Error(`Wrong PSBT version=${i}`);let o=n.global.unsignedTx,s=i===0?o?.version:n.global.txVersion,c=i===0?o?.lockTime:n.global.fallbackLocktime,a=new t({...r,version:s,lockTime:c,PSBTVersion:i}),u=i===0?o?.inputs.length:n.global.inputCount;a.inputs=n.inputs.slice(0,u).map((f,h)=>vv({finalScriptSig:Ve,...n.global.unsignedTx?.inputs[h],...f}));let d=i===0?o?.outputs.length:n.global.outputCount;return a.outputs=n.outputs.slice(0,d).map((f,h)=>({...f,...n.global.unsignedTx?.outputs[h]})),a.global={...n.global,txVersion:s},c!==Is&&(a.global.fallbackLocktime=c),a}toPSBT(e=this.opts.PSBTVersion){if(e!==0&&e!==2)throw new Error(`Wrong PSBT version=${e}`);let r=this.inputs.map(o=>vv(f0(e,Hu,o)));for(let o of r)o.partialSig&&!o.partialSig.length&&delete o.partialSig,o.finalScriptSig&&!o.finalScriptSig.length&&delete o.finalScriptSig,o.finalScriptWitness&&!o.finalScriptWitness.length&&delete o.finalScriptWitness;let n=this.outputs.map(o=>f0(e,Vu,o)),i={...this.global};return e===0?(i.unsignedTx=As.decode(As.encode({version:this.version,lockTime:this.lockTime,inputs:this.inputs.map(Fu).map(o=>({...o,finalScriptSig:Ve})),outputs:this.outputs.map(Bs)})),delete i.fallbackLocktime,delete i.txVersion):(i.version=e,i.txVersion=this.version,i.inputCount=this.inputs.length,i.outputCount=this.outputs.length,i.fallbackLocktime&&i.fallbackLocktime===Is&&delete i.fallbackLocktime),this.opts.bip174jsCompat&&(r.length||r.push({}),n.length||n.push({})),(e===0?l0:h0).encode({global:i,inputs:r,outputs:n})}get lockTime(){let e=Is,r=0,n=Is,i=0;for(let o of this.inputs)o.requiredHeightLocktime&&(e=Math.max(e,o.requiredHeightLocktime),r++),o.requiredTimeLocktime&&(n=Math.max(n,o.requiredTimeLocktime),i++);return r&&r>=i?e:n!==Is?n:this.global.fallbackLocktime||Is}get version(){if(this.global.txVersion===void 0)throw new Error("No global.txVersion");return this.global.txVersion}inputStatus(e){this.checkInputIdx(e);let r=this.inputs[e];return r.finalScriptSig&&r.finalScriptSig.length||r.finalScriptWitness&&r.finalScriptWitness.length?"finalized":r.tapKeySig||r.tapScriptSig&&r.tapScriptSig.length||r.partialSig&&r.partialSig.length?"signed":"unsigned"}inputSighash(e){this.checkInputIdx(e);let r=this.inputs[e].sighashType,n=r===void 0?je.DEFAULT:r,i=n===je.DEFAULT?je.ALL:n&3;return{sigInputs:n&je.ANYONECANPAY,sigOutputs:i}}signStatus(){let e=!0,r=!0,n=[],i=[];for(let o=0;o<this.inputs.length;o++){if(this.inputStatus(o)==="unsigned")continue;let{sigInputs:c,sigOutputs:a}=this.inputSighash(o);if(c===je.ANYONECANPAY?n.push(o):e=!1,a===je.ALL)r=!1;else if(a===je.SINGLE)i.push(o);else if(a!==je.NONE)throw new Error(`Wrong signature hash output type: ${a}`)}return{addInput:e,addOutput:r,inputs:n,outputs:i}}get isFinal(){for(let e=0;e<this.inputs.length;e++)if(this.inputStatus(e)!=="finalized")return!1;return!0}get hasWitnesses(){let e=!1;for(let r of this.inputs)r.finalScriptWitness&&r.finalScriptWitness.length&&(e=!0);return e}get weight(){if(!this.isFinal)throw new Error("Transaction is not finalized");let e=32,r=this.outputs.map(Bs);e+=4*Dr.encode(this.outputs.length).length;for(let n of r)e+=32+4*hr.encode(n.script).length;this.hasWitnesses&&(e+=2),e+=4*Dr.encode(this.inputs.length).length;for(let n of this.inputs)e+=160+4*hr.encode(n.finalScriptSig||Ve).length,this.hasWitnesses&&n.finalScriptWitness&&(e+=Qc.encode(n.finalScriptWitness).length);return e}get vsize(){return vR(this.weight)}toBytes(e=!1,r=!1){return Oi.encode({version:this.version,lockTime:this.lockTime,inputs:this.inputs.map(Fu).map(n=>({...n,finalScriptSig:e&&n.finalScriptSig||Ve})),outputs:this.outputs.map(Bs),witnesses:this.inputs.map(n=>n.finalScriptWitness||[]),segwitFlag:r&&this.hasWitnesses})}get unsignedTx(){return this.toBytes(!1,!1)}get hex(){return xe.encode(this.toBytes(!0,this.hasWitnesses))}get hash(){if(!this.isFinal)throw new Error("Transaction is not finalized");return xe.encode(Ri(this.toBytes(!0)))}get id(){if(!this.isFinal)throw new Error("Transaction is not finalized");return xe.encode(Ri(this.toBytes(!0)).reverse())}checkInputIdx(e){if(!Number.isSafeInteger(e)||0>e||e>=this.inputs.length)throw new Error(`Wrong input index=${e}`)}getInput(e){return this.checkInputIdx(e),vl(this.inputs[e])}get inputsLength(){return this.inputs.length}addInput(e,r=!1){if(!r&&!this.signStatus().addInput)throw new Error("Tx has signed inputs, cannot add new one");return this.inputs.push(Sv(e,void 0,void 0,this.opts.disableScriptCheck)),this.inputs.length-1}updateInput(e,r,n=!1){this.checkInputIdx(e);let i;if(!n){let o=this.signStatus();(!o.addInput||o.inputs.includes(e))&&(i=lv)}this.inputs[e]=Sv(r,this.inputs[e],i,this.opts.disableScriptCheck,this.opts.allowUnknown)}checkOutputIdx(e){if(!Number.isSafeInteger(e)||0>e||e>=this.outputs.length)throw new Error(`Wrong output index=${e}`)}getOutput(e){return this.checkOutputIdx(e),vl(this.outputs[e])}getOutputAddress(e,r=Xr){let n=this.getOutput(e);if(n.script)return Zr(r).encode(Qe.decode(n.script))}get outputsLength(){return this.outputs.length}normalizeOutput(e,r,n){let{amount:i,script:o}=e;if(i===void 0&&(i=r?.amount),typeof i!="bigint")throw new Error(`Wrong amount type, should be of type bigint in sats, but got ${i} of type ${typeof i}`);typeof o=="string"&&(o=xe.decode(o)),o===void 0&&(o=r?.script);let s={...r,...e,amount:i,script:o};if(s.amount===void 0&&delete s.amount,s=bl(Vu,s,r,n,this.opts.allowUnknown),wl.encode(s),s.script&&!this.opts.allowUnknownOutputs&&Qe.decode(s.script).type==="unknown")throw new Error("Transaction/output: unknown output script type, there is a chance that input is unspendable. Pass allowUnknownOutputs=true, if you sure");return this.opts.disableScriptCheck||b0(s.script,s.redeemScript,s.witnessScript),s}addOutput(e,r=!1){if(!r&&!this.signStatus().addOutput)throw new Error("Tx has signed outputs, cannot add new one");return this.outputs.push(this.normalizeOutput(e)),this.outputs.length-1}updateOutput(e,r,n=!1){this.checkOutputIdx(e);let i;if(!n){let o=this.signStatus();(!o.addOutput||o.outputs.includes(e))&&(i=hv)}this.outputs[e]=this.normalizeOutput(r,this.outputs[e],i)}addOutputAddress(e,r,n=Xr){return this.addOutput({script:Qe.encode(Zr(n).decode(e)),amount:r})}get fee(){let e=0n;for(let n of this.inputs){let i=El(n);if(!i)throw new Error("Empty input amount");e+=i.amount}let r=this.outputs.map(Bs);for(let n of r)e-=n.amount;return e}preimageLegacy(e,r,n){let{isAny:i,isNone:o,isSingle:s}=Ev(n);if(e<0||!Number.isSafeInteger(e))throw new Error(`Invalid input idx=${e}`);if(s&&e>=this.outputs.length||e>=this.inputs.length)return FE.encode(1n);r=Ze.encode(Ze.decode(r).filter(d=>d!=="CODESEPARATOR"));let c=this.inputs.map(Fu).map((d,f)=>({...d,finalScriptSig:f===e?r:Ve}));i?c=[c[e]]:(o||s)&&(c=c.map((d,f)=>({...d,sequence:f===e?d.sequence:0})));let a=this.outputs.map(Bs);o?a=[]:s&&(a=a.slice(0,e).fill(ER).concat([a[e]]));let u=Oi.encode({lockTime:this.lockTime,version:this.version,segwitFlag:!1,inputs:c,outputs:a});return Ri(u,So.encode(n))}preimageWitnessV0(e,r,n,i){let{isAny:o,isNone:s,isSingle:c}=Ev(n),a=xl,u=xl,d=xl,f=this.inputs.map(Fu),h=this.outputs.map(Bs);o||(a=Ri(...f.map(E0.encode))),!o&&!c&&!s&&(u=Ri(...f.map(y=>Be.encode(y.sequence)))),!c&&!s?d=Ri(...h.map(Ui.encode)):c&&e<h.length&&(d=Ri(Ui.encode(h[e])));let p=f[e];return Ri(So.encode(this.version),a,u,Fe(32,!0).encode(p.txid),Be.encode(p.index),hr.encode(r),Jc.encode(i),Be.encode(p.sequence),d,Be.encode(this.lockTime),Be.encode(n))}preimageWitnessV1(e,r,n,i,o=-1,s,c=192,a){if(!Array.isArray(i)||this.inputs.length!==i.length)throw new Error(`Invalid amounts array=${i}`);if(!Array.isArray(r)||this.inputs.length!==r.length)throw new Error(`Invalid prevOutScript array=${r}`);let u=[mn.encode(0),mn.encode(n),So.encode(this.version),Be.encode(this.lockTime)],d=n===je.DEFAULT?je.ALL:n&3,f=n&je.ANYONECANPAY,h=this.inputs.map(Fu),p=this.outputs.map(Bs);f!==je.ANYONECANPAY&&u.push(...[h.map(E0.encode),i.map(Jc.encode),r.map(hr.encode),h.map(g=>Be.encode(g.sequence))].map(g=>ke(jn(...g)))),d===je.ALL&&u.push(ke(jn(...p.map(Ui.encode))));let y=(a?1:0)|(s?2:0);if(u.push(new Uint8Array([y])),f===je.ANYONECANPAY){let g=h[e];u.push(E0.encode(g),Jc.encode(i[e]),hr.encode(r[e]),Be.encode(g.sequence))}else u.push(Be.encode(e));return y&1&&u.push(ke(hr.encode(a||Ve))),d===je.SINGLE&&u.push(e<p.length?ke(Ui.encode(p[e])):xl),s&&u.push(qu(s,c),mn.encode(0),So.encode(o)),Pu("TapSighash",...u)}signIdx(e,r,n,i){this.checkInputIdx(r);let o=this.inputs[r],s=v0(o,this.opts.allowLegacyWitnessUtxo);if(!Ce(e)){if(!o.bip32Derivation||!o.bip32Derivation.length)throw new Error("bip32Derivation: empty");let d=o.bip32Derivation.filter(h=>h[1].fingerprint==e.fingerprint).map(([h,{path:p}])=>{let y=e;for(let g of p)y=y.deriveChild(g);if(!ct(y.publicKey,h))throw new Error("bip32Derivation: wrong pubKey");if(!y.privateKey)throw new Error("bip32Derivation: no privateKey");return y});if(!d.length)throw new Error(`bip32Derivation: no items with fingerprint=${e.fingerprint}`);let f=!1;for(let h of d)this.signIdx(h.privateKey,r)&&(f=!0);return f}n?n.forEach(IR):n=[s.defaultSighash];let c=s.sighash;if(!n.includes(c))throw new Error(`Input with not allowed sigHash=${c}. Allowed: ${n.join(", ")}`);let{sigOutputs:a}=this.inputSighash(r);if(a===je.SINGLE&&r>=this.outputs.length)throw new Error(`Input with sighash SINGLE, but there is no output with corresponding index=${r}`);let u=El(o);if(s.txType==="taproot"){let d=this.inputs.map(El),f=d.map(x=>x.script),h=d.map(x=>x.amount),p=!1,y=fl(e),g=o.tapMerkleRoot||Ve;if(o.tapInternalKey){let{pubKey:x,privKey:S}=_R(e,y,o.tapInternalKey,g),[_,A]=Mu(o.tapInternalKey,g);if(ct(_,x)){let O=this.preimageWitnessV1(r,f,c,h),T=jn(i0(O,S,i),c!==je.DEFAULT?new Uint8Array([c]):Ve);this.updateInput(r,{tapKeySig:T},!0),p=!0}}if(o.tapLeafScript){o.tapScriptSig=o.tapScriptSig||[];for(let[x,S]of o.tapLeafScript){let _=S.subarray(0,-1),A=Ze.decode(_),O=S[S.length-1],T=qu(_,O);if(A.findIndex($=>Ce($)&&ct($,y))===-1)continue;let q=this.preimageWitnessV1(r,f,c,h,void 0,_,O),j=jn(i0(q,e,i),c!==je.DEFAULT?new Uint8Array([c]):Ve);this.updateInput(r,{tapScriptSig:[[{pubKey:y,leafHash:T},j]]},!0),p=!0}}if(!p)throw new Error("No taproot scripts signed");return!0}else{let d=n0(e),f=!1,h=Xc(d);for(let g of Ze.decode(s.lastScript))Ce(g)&&(ct(g,d)||ct(g,h))&&(f=!0);if(!f)throw new Error(`Input script doesn't have pubKey: ${s.lastScript}`);let p;if(s.txType==="legacy")p=this.preimageLegacy(r,s.lastScript,c);else if(s.txType==="segwit"){let g=s.lastScript;s.last.type==="wpkh"&&(g=Qe.encode({type:"pkh",hash:s.last.hash})),p=this.preimageWitnessV0(r,g,c,u.amount)}else throw new Error(`Transaction/sign: unknown tx type: ${s.txType}`);let y=ev(p,e,this.opts.lowR);this.updateInput(r,{partialSig:[[d,jn(y,new Uint8Array([c]))]]},!0)}return!0}sign(e,r,n){let i=0;for(let o=0;o<this.inputs.length;o++)try{this.signIdx(e,o,r,n)&&i++}catch{}if(!i)throw new Error("No inputs signed");return i}finalizeIdx(e){if(this.checkInputIdx(e),this.fee<0n)throw new Error("Outputs spends more than inputs amount");let r=this.inputs[e],n=v0(r,this.opts.allowLegacyWitnessUtxo);if(n.txType==="taproot"){if(r.tapKeySig)r.finalScriptWitness=[r.tapKeySig];else if(r.tapLeafScript&&r.tapScriptSig){let a=r.tapLeafScript.sort((u,d)=>Di.encode(u[0]).length-Di.encode(d[0]).length);for(let[u,d]of a){let f=d.slice(0,-1),h=d[d.length-1],p=Qe.decode(f),y=qu(f,h),g=r.tapScriptSig.filter(S=>ct(S[0].leafHash,y)),x=[];if(p.type==="tr_ms"){let S=p.m,_=p.pubkeys,A=0;for(let O of _){let T=g.findIndex(M=>ct(M[0].pubKey,O));if(A===S||T===-1){x.push(Ve);continue}x.push(g[T][1]),A++}if(A!==S)continue}else if(p.type==="tr_ns"){for(let S of p.pubkeys){let _=g.findIndex(A=>ct(A[0].pubKey,S));_!==-1&&x.push(g[_][1])}if(x.length!==p.pubkeys.length)continue}else if(p.type==="unknown"&&this.opts.allowUnknownInputs){let S=Ze.decode(f);if(x=g.map(([{pubKey:_},A])=>{let O=S.findIndex(T=>Ce(T)&&ct(T,_));if(O===-1)throw new Error("finalize/taproot: cannot find position of pubkey in script");return{signature:A,pos:O}}).sort((_,A)=>_.pos-A.pos).map(_=>_.signature),!x.length)continue}else{let S=this.opts.customScripts;if(S)for(let _ of S){if(!_.finalizeTaproot)continue;let A=Ze.decode(f),O=_.encode(A);if(O===void 0)continue;let T=_.finalizeTaproot(f,O,g);if(T){r.finalScriptWitness=T.concat(Di.encode(u)),r.finalScriptSig=Ve,x0(r);return}}throw new Error("Finalize: Unknown tapLeafScript")}r.finalScriptWitness=x.reverse().concat([f,Di.encode(u)]);break}if(!r.finalScriptWitness)throw new Error("finalize/taproot: empty witness")}else throw new Error("finalize/taproot: unknown input");r.finalScriptSig=Ve,x0(r);return}if(!r.partialSig||!r.partialSig.length)throw new Error("Not enough partial sign");let i=Ve,o=[];if(n.last.type==="ms"){let a=n.last.m,u=n.last.pubkeys,d=[];for(let f of u){let h=r.partialSig.find(p=>ct(f,p[0]));h&&d.push(h[1])}if(d=d.slice(0,a),d.length!==a)throw new Error(`Multisig: wrong signatures count, m=${a} n=${u.length} signatures=${d.length}`);i=Ze.encode([0,...d])}else if(n.last.type==="pk")i=Ze.encode([r.partialSig[0][1]]);else if(n.last.type==="pkh")i=Ze.encode([r.partialSig[0][1],r.partialSig[0][0]]);else if(n.last.type==="wpkh")i=Ve,o=[r.partialSig[0][1],r.partialSig[0][0]];else if(n.last.type==="unknown"&&!this.opts.allowUnknownInputs)throw new Error("Unknown inputs not allowed");let s,c;if(n.type.includes("wsh-")&&(i.length&&n.lastScript.length&&(o=Ze.decode(i).map(a=>{if(a===0)return Ve;if(Ce(a))return a;throw new Error(`Wrong witness op=${a}`)})),o=o.concat(n.lastScript)),n.txType==="segwit"&&(c=o),n.type.startsWith("sh-wsh-")?s=Ze.encode([Ze.encode([0,ke(n.lastScript)])]):n.type.startsWith("sh-")?s=Ze.encode([...Ze.decode(i),n.lastScript]):n.type.startsWith("wsh-")||n.txType!=="segwit"&&(s=i),!s&&!c)throw new Error("Unknown error finalizing input");s&&(r.finalScriptSig=s),c&&(r.finalScriptWitness=c),x0(r)}finalize(){for(let e=0;e<this.inputs.length;e++)this.finalizeIdx(e)}extract(){if(!this.isFinal)throw new Error("Transaction has unfinalized inputs");if(!this.outputs.length)throw new Error("Transaction has no outputs");if(this.fee<0n)throw new Error("Outputs spends more than inputs amount");return this.toBytes(!0,!0)}combine(e){for(let i of["PSBTVersion","version","lockTime"])if(this.opts[i]!==e.opts[i])throw new Error(`Transaction/combine: different ${i} this=${this.opts[i]} other=${e.opts[i]}`);for(let i of["inputs","outputs"])if(this[i].length!==e[i].length)throw new Error(`Transaction/combine: different ${i} length this=${this[i].length} other=${e[i].length}`);let r=this.global.unsignedTx?As.encode(this.global.unsignedTx):Ve,n=e.global.unsignedTx?As.encode(e.global.unsignedTx):Ve;if(!ct(r,n))throw new Error("Transaction/combine: different unsigned tx");this.global=bl(gl,this.global,e.global,void 0,this.opts.allowUnknown);for(let i=0;i<this.inputs.length;i++)this.updateInput(i,e.inputs[i],!0);for(let i=0;i<this.outputs.length;i++)this.updateOutput(i,e.outputs[i],!0);return this}clone(){return t.fromPSBT(this.toPSBT(this.opts.PSBTVersion),this.opts)}};l();l();l();l();l();function Av(t,e){var r="",n=e&&e.include,i=e&&e.exclude;i&&typeof i=="string"&&(i=[i]),n&&n.sort();var o=new WeakMap,s=e&&e.allowCircular,c=e&&e.filterUndefined,a=e&&e.undefinedInArrayToNull;return u(t,""),r;function u(d,f){if(d===null||typeof d!="object"||d.toJSON!=null)r+=JSON.stringify(d);else if(Array.isArray(d)){var h=o.get(d);if(h!==void 0&&f.startsWith(h)){if(!s)throw new Error("Circular reference detected");r+='"[Circular]"';return}o.set(d,f),r+="[";var p=!1;d.forEach(function(S,_){p&&(r+=","),p=!0,a&&S===void 0&&(S=null),u(S,f+"["+_+"]")}),r+="]"}else{var h=o.get(d);if(h!==void 0&&f.startsWith(h)){if(!s)throw new Error("Circular reference detected");r+='"[Circular]"';return}o.set(d,f),r+="{";var y=!1,g=function(_){i&&i.includes(_)||(y&&(r+=","),y=!0,r+=JSON.stringify(_),r+=":",u(d[_],f+"."+_))};if(f===""&&n)n.forEach(function(_){d.hasOwnProperty(_)&&g(_)});else{var x=Object.keys(d);c&&(x=x.filter(function(_){return d[_]!==void 0})),x.sort(),x.forEach(function(_){g(_)})}r+="}"}}}function Tv(t,e){return Av(t,{allowCircular:e,filterUndefined:!0,undefinedInArrayToNull:!0})}l();var A0;(function(t){t.INVALID_DID="INVALID_DID",t.METHOD_NOT_SUPPORTED="METHOD_NOT_SUPPORTED",t.INTERNAL_ERROR="INTERNAL_ERROR",t.INVALID_DID_DOCUMENT="INVALID_DID_DOCUMENT",t.INVALID_DID_UPDATE="INVALID_DID_UPDATE",t.INVALID_DID_DOCUMENT_LENGTH="INVALID_DID_DOCUMENT_LENGTH",t.INVALID_DID_URL="INVALID_DID_URL",t.INVALID_PREVIOUS_DID_PROOF="INVALID_PREVIOUS_DID_PROOF",t.INVALID_PUBLIC_KEY="INVALID_PUBLIC_KEY",t.INVALID_PUBLIC_KEY_MULTIBASE="INVALID_PUBLIC_KEY_MULTIBASE",t.INVALID_PUBLIC_KEY_LENGTH="INVALID_PUBLIC_KEY_LENGTH",t.INVALID_PUBLIC_KEY_TYPE="INVALID_PUBLIC_KEY_TYPE",t.INVALID_SIGNATURE="INVALID_SIGNATURE",t.NOT_FOUND="NOT_FOUND",t.REPRESENTATION_NOT_SUPPORTED="REPRESENTATION_NOT_SUPPORTED",t.UNSUPPORTED_PUBLIC_KEY_TYPE="UNSUPPORTED_PUBLIC_KEY_TYPE",t.PROOF_VERIFICATION_ERROR="PROOF_VERIFICATION_ERROR",t.PROOF_GENERATION_ERROR="PROOF_GENERATION_ERROR",t.PROOF_SERIALIZATION_ERROR="PROOF_SERIALIZATION_ERROR",t.PROOF_PARSING_ERROR="PROOF_PARSING_ERROR",t.VERIFICATION_METHOD_ERROR="VERIFICATION_METHOD_ERROR",t.LATE_PUBLISHING_ERROR="LATE_PUBLISHING_ERROR",t.INVALID_SIDECAR_DATA="INVALID_SIDECAR_DATA",t.MISSING_UPDATE_DATA="MISSING_UPDATE_DATA",t.INVALID_UPDATE="INVALID_UPDATE",t.INVALID_DOMAIN_ERROR="INVALID_DOMAIN_ERROR",t.MISSING_RESOLUTION_OPTIONS="MISSING_RESOLUTION_OPTIONS",t.INVALID_OPTIONS="INVALID_OPTIONS"})(A0||(A0={}));var{INVALID_DID:ht,METHOD_NOT_SUPPORTED:Sl,INTERNAL_ERROR:Al,INVALID_DID_DOCUMENT:Le,INVALID_DID_UPDATE:Te,INVALID_DID_URL:gK,INVALID_PREVIOUS_DID_PROOF:mK,INVALID_PUBLIC_KEY:wK,INVALID_PUBLIC_KEY_MULTIBASE:bK,INVALID_PUBLIC_KEY_LENGTH:xK,INVALID_PUBLIC_KEY_TYPE:EK,INVALID_SIGNATURE:vK,NOT_FOUND:_v,PROOF_VERIFICATION_ERROR:Ni,PROOF_GENERATION_ERROR:Bo,PROOF_SERIALIZATION_ERROR:Iv,PROOF_PARSING_ERROR:SK,VERIFICATION_METHOD_ERROR:Tl,LATE_PUBLISHING_ERROR:_l,INVALID_SIDECAR_DATA:AK,MISSING_UPDATE_DATA:TK,MISSING_RESOLUTION_OPTIONS:_K,INVALID_OPTIONS:Wu}=A0,zt=class t extends Error{name="DidMethodError";type="DidMethodError";data;constructor(e,r={}){super(e),this.type=r.type??this.type,this.name=r.name??this.name,this.data=r.data,Object.setPrototypeOf(this,new.target.prototype),Error.captureStackTrace?.(this,t)}},we=class extends zt{constructor(e,r="MethodError",n){super(e,{type:r,name:r,data:n})}};var at=class extends zt{constructor(e,r="IdentifierError",n){super(e,{type:r,name:r,data:n})}},At=class extends zt{constructor(e,r="UpdateError",n){super(e,{type:r,name:r,data:n})}},ve=class extends zt{constructor(e,r="ResolveError",n){super(e,{type:r,name:r,data:n})}};var qe=class extends zt{constructor(e,r="DidDocumentError",n){super(e,{type:r,name:r,data:n})}},Io=class extends zt{constructor(e,r="CryptosuiteError",n){super(e,{type:r,name:r,data:n})}},wn=class extends zt{constructor(e,r="DataIntegrityProofError",n){super(e,{type:r,name:r,data:n})}},bn=class extends zt{constructor(e,r="KeyPairError",n){super(e,{type:r,name:r,data:n})}},Wn=class extends zt{constructor(e,r="SecretKeyError",n){super(e,{type:r,name:r,data:n})}},Us=class extends zt{constructor(e,r="PublicKeyError",n){super(e,{type:r,name:r,data:n})}},xn=class extends zt{constructor(e,r="MultikeyError",n){super(e,{type:r,name:r,data:n})}};var ea=class extends zt{constructor(e,r="CanonicalizationError",n){super(e,{type:r,name:r,data:n})}};var RR=new Set(["jcs"]),UR=new Set(["hex","base58","base64urlnopad"]);function T0(t){let e=t.toLowerCase();if(!RR.has(e))throw new ea(`Unsupported algorithm: ${t}`,"ALGORITHM_ERROR");return e}function _0(t){let e=t.toLowerCase();if(!UR.has(e))throw new ea(`Unsupported encoding: ${t}`,"ENCODING_ERROR");return e}function ir(t,e="jcs"){switch(T0(e)){case"jcs":{let n=JSON.parse(JSON.stringify(t));return Tv(n)}default:throw new ea(`Unsupported algorithm: ${e}`,"ALGORITHM_ERROR")}}function Ro(t){return ke(t)}function Qr(t,e="base64urlnopad"){switch(_0(e)){case"hex":return xe.encode(t);case"base58":return rl.encode(t);case"base64urlnopad":return Gc.encode(t)}}function Os(t,e="base64urlnopad"){switch(_0(e)){case"hex":return xe.decode(t);case"base58":return rl.decode(t);case"base64urlnopad":return Gc.decode(t)}}function Uo(t,e="jcs"){return Ro(ir(t,T0(e)))}function Gn(t,e){let r=T0(e?.algorithm??"jcs"),n=_0(e?.encoding??"base64urlnopad");return Qr(Ro(ir(t,r)),n)}l();l();var I0={};Su(I0,{JsonPatchError:()=>ut,_areEquals:()=>Yu,applyOperation:()=>Ds,applyPatch:()=>kl,applyReducer:()=>CR,deepClone:()=>kR,getValueByPointer:()=>Ol,validate:()=>Rv,validator:()=>Dl});l();l();var OR=function(){var t=function(e,r){return t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,i){n.__proto__=i}||function(n,i){for(var o in i)i.hasOwnProperty(o)&&(n[o]=i[o])},t(e,r)};return function(e,r){t(e,r);function n(){this.constructor=e}e.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}(),DR=Object.prototype.hasOwnProperty;function Bl(t,e){return DR.call(t,e)}function Rl(t){if(Array.isArray(t)){for(var e=new Array(t.length),r=0;r<e.length;r++)e[r]=""+r;return e}if(Object.keys)return Object.keys(t);var n=[];for(var i in t)Bl(t,i)&&n.push(i);return n}function Mt(t){switch(typeof t){case"object":return JSON.parse(JSON.stringify(t));case"undefined":return null;default:return t}}function Ul(t){for(var e=0,r=t.length,n;e<r;){if(n=t.charCodeAt(e),n>=48&&n<=57){e++;continue}return!1}return!0}function zn(t){return t.indexOf("/")===-1&&t.indexOf("~")===-1?t:t.replace(/~/g,"~0").replace(/\//g,"~1")}function Gu(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}function Il(t){if(t===void 0)return!0;if(t){if(Array.isArray(t)){for(var e=0,r=t.length;e<r;e++)if(Il(t[e]))return!0}else if(typeof t=="object"){for(var n=Rl(t),i=n.length,o=0;o<i;o++)if(Il(t[n[o]]))return!0}}return!1}function Bv(t,e){var r=[t];for(var n in e){var i=typeof e[n]=="object"?JSON.stringify(e[n],null,2):e[n];typeof i<"u"&&r.push(n+": "+i)}return r.join(`
|
|
3
|
+
`)}var zu=function(t){OR(e,t);function e(r,n,i,o,s){var c=this.constructor,a=t.call(this,Bv(r,{name:n,index:i,operation:o,tree:s}))||this;return a.name=n,a.index=i,a.operation=o,a.tree=s,Object.setPrototypeOf(a,c.prototype),a.message=Bv(r,{name:n,index:i,operation:o,tree:s}),a}return e}(Error);var ut=zu,kR=Mt,ta={add:function(t,e,r){return t[e]=this.value,{newDocument:r}},remove:function(t,e,r){var n=t[e];return delete t[e],{newDocument:r,removed:n}},replace:function(t,e,r){var n=t[e];return t[e]=this.value,{newDocument:r,removed:n}},move:function(t,e,r){var n=Ol(r,this.path);n&&(n=Mt(n));var i=Ds(r,{op:"remove",path:this.from}).removed;return Ds(r,{op:"add",path:this.path,value:i}),{newDocument:r,removed:n}},copy:function(t,e,r){var n=Ol(r,this.from);return Ds(r,{op:"add",path:this.path,value:Mt(n)}),{newDocument:r}},test:function(t,e,r){return{newDocument:r,test:Yu(t[e],this.value)}},_get:function(t,e,r){return this.value=t[e],{newDocument:r}}},NR={add:function(t,e,r){return Ul(e)?t.splice(e,0,this.value):t[e]=this.value,{newDocument:r,index:e}},remove:function(t,e,r){var n=t.splice(e,1);return{newDocument:r,removed:n[0]}},replace:function(t,e,r){var n=t[e];return t[e]=this.value,{newDocument:r,removed:n}},move:ta.move,copy:ta.copy,test:ta.test,_get:ta._get};function Ol(t,e){if(e=="")return t;var r={op:"_get",path:e};return Ds(t,r),r.value}function Ds(t,e,r,n,i,o){if(r===void 0&&(r=!1),n===void 0&&(n=!0),i===void 0&&(i=!0),o===void 0&&(o=0),r&&(typeof r=="function"?r(e,0,t,e.path):Dl(e,0)),e.path===""){var s={newDocument:t};if(e.op==="add")return s.newDocument=e.value,s;if(e.op==="replace")return s.newDocument=e.value,s.removed=t,s;if(e.op==="move"||e.op==="copy")return s.newDocument=Ol(t,e.from),e.op==="move"&&(s.removed=t),s;if(e.op==="test"){if(s.test=Yu(t,e.value),s.test===!1)throw new ut("Test operation failed","TEST_OPERATION_FAILED",o,e,t);return s.newDocument=t,s}else{if(e.op==="remove")return s.removed=t,s.newDocument=null,s;if(e.op==="_get")return e.value=t,s;if(r)throw new ut("Operation `op` property is not one of operations defined in RFC-6902","OPERATION_OP_INVALID",o,e,t);return s}}else{n||(t=Mt(t));var c=e.path||"",a=c.split("/"),u=t,d=1,f=a.length,h=void 0,p=void 0,y=void 0;for(typeof r=="function"?y=r:y=Dl;;){if(p=a[d],p&&p.indexOf("~")!=-1&&(p=Gu(p)),i&&(p=="__proto__"||p=="prototype"&&d>0&&a[d-1]=="constructor"))throw new TypeError("JSON-Patch: modifying `__proto__` or `constructor/prototype` prop is banned for security reasons, if this was on purpose, please set `banPrototypeModifications` flag false and pass it to this function. More info in fast-json-patch README");if(r&&h===void 0&&(u[p]===void 0?h=a.slice(0,d).join("/"):d==f-1&&(h=e.path),h!==void 0&&y(e,0,t,h)),d++,Array.isArray(u)){if(p==="-")p=u.length;else{if(r&&!Ul(p))throw new ut("Expected an unsigned base-10 integer value, making the new referenced value the array element with the zero-based index","OPERATION_PATH_ILLEGAL_ARRAY_INDEX",o,e,t);Ul(p)&&(p=~~p)}if(d>=f){if(r&&e.op==="add"&&p>u.length)throw new ut("The specified index MUST NOT be greater than the number of elements in the array","OPERATION_VALUE_OUT_OF_BOUNDS",o,e,t);var s=NR[e.op].call(e,u,p,t);if(s.test===!1)throw new ut("Test operation failed","TEST_OPERATION_FAILED",o,e,t);return s}}else if(d>=f){var s=ta[e.op].call(e,u,p,t);if(s.test===!1)throw new ut("Test operation failed","TEST_OPERATION_FAILED",o,e,t);return s}if(u=u[p],r&&d<f&&(!u||typeof u!="object"))throw new ut("Cannot perform operation at the desired path","OPERATION_PATH_UNRESOLVABLE",o,e,t)}}}function kl(t,e,r,n,i){if(n===void 0&&(n=!0),i===void 0&&(i=!0),r&&!Array.isArray(e))throw new ut("Patch sequence must be an array","SEQUENCE_NOT_AN_ARRAY");n||(t=Mt(t));for(var o=new Array(e.length),s=0,c=e.length;s<c;s++)o[s]=Ds(t,e[s],r,!0,i,s),t=o[s].newDocument;return o.newDocument=t,o}function CR(t,e,r){var n=Ds(t,e);if(n.test===!1)throw new ut("Test operation failed","TEST_OPERATION_FAILED",r,e,t);return n.newDocument}function Dl(t,e,r,n){if(typeof t!="object"||t===null||Array.isArray(t))throw new ut("Operation is not an object","OPERATION_NOT_AN_OBJECT",e,t,r);if(ta[t.op]){if(typeof t.path!="string")throw new ut("Operation `path` property is not a string","OPERATION_PATH_INVALID",e,t,r);if(t.path.indexOf("/")!==0&&t.path.length>0)throw new ut('Operation `path` property must start with "/"',"OPERATION_PATH_INVALID",e,t,r);if((t.op==="move"||t.op==="copy")&&typeof t.from!="string")throw new ut("Operation `from` property is not present (applicable in `move` and `copy` operations)","OPERATION_FROM_REQUIRED",e,t,r);if((t.op==="add"||t.op==="replace"||t.op==="test")&&t.value===void 0)throw new ut("Operation `value` property is not present (applicable in `add`, `replace` and `test` operations)","OPERATION_VALUE_REQUIRED",e,t,r);if((t.op==="add"||t.op==="replace"||t.op==="test")&&Il(t.value))throw new ut("Operation `value` property is not present (applicable in `add`, `replace` and `test` operations)","OPERATION_VALUE_CANNOT_CONTAIN_UNDEFINED",e,t,r);if(r){if(t.op=="add"){var i=t.path.split("/").length,o=n.split("/").length;if(i!==o+1&&i!==o)throw new ut("Cannot perform an `add` operation at the desired path","OPERATION_PATH_CANNOT_ADD",e,t,r)}else if(t.op==="replace"||t.op==="remove"||t.op==="_get"){if(t.path!==n)throw new ut("Cannot perform the operation at a path that does not exist","OPERATION_PATH_UNRESOLVABLE",e,t,r)}else if(t.op==="move"||t.op==="copy"){var s={op:"_get",path:t.from,value:void 0},c=Rv([s],r);if(c&&c.name==="OPERATION_PATH_UNRESOLVABLE")throw new ut("Cannot perform the operation from a path that does not exist","OPERATION_FROM_UNRESOLVABLE",e,t,r)}}}else throw new ut("Operation `op` property is not one of operations defined in RFC-6902","OPERATION_OP_INVALID",e,t,r)}function Rv(t,e,r){try{if(!Array.isArray(t))throw new ut("Patch sequence must be an array","SEQUENCE_NOT_AN_ARRAY");if(e)kl(Mt(e),Mt(t),r||!0);else{r=r||Dl;for(var n=0;n<t.length;n++)r(t[n],n,e,void 0)}}catch(i){if(i instanceof ut)return i;throw i}}function Yu(t,e){if(t===e)return!0;if(t&&e&&typeof t=="object"&&typeof e=="object"){var r=Array.isArray(t),n=Array.isArray(e),i,o,s;if(r&&n){if(o=t.length,o!=e.length)return!1;for(i=o;i--!==0;)if(!Yu(t[i],e[i]))return!1;return!0}if(r!=n)return!1;var c=Object.keys(t);if(o=c.length,o!==Object.keys(e).length)return!1;for(i=o;i--!==0;)if(!e.hasOwnProperty(c[i]))return!1;for(i=o;i--!==0;)if(s=c[i],!Yu(t[s],e[s]))return!1;return!0}return t!==t&&e!==e}var O0={};Su(O0,{compare:()=>qR,generate:()=>B0,observe:()=>VR,unobserve:()=>HR});l();var R0=new WeakMap,LR=function(){function t(e){this.observers=new Map,this.obj=e}return t}(),PR=function(){function t(e,r){this.callback=e,this.observer=r}return t}();function MR(t){return R0.get(t)}function KR(t,e){return t.observers.get(e)}function $R(t,e){t.observers.delete(e.callback)}function HR(t,e){e.unobserve()}function VR(t,e){var r=[],n,i=MR(t);if(!i)i=new LR(t),R0.set(t,i);else{var o=KR(i,e);n=o&&o.observer}if(n)return n;if(n={},i.value=Mt(t),e){n.callback=e,n.next=null;var s=function(){B0(n)},c=function(){clearTimeout(n.next),n.next=setTimeout(s)};typeof window<"u"&&(window.addEventListener("mouseup",c),window.addEventListener("keyup",c),window.addEventListener("mousedown",c),window.addEventListener("keydown",c),window.addEventListener("change",c))}return n.patches=r,n.object=t,n.unobserve=function(){B0(n),clearTimeout(n.next),$R(i,n),typeof window<"u"&&(window.removeEventListener("mouseup",c),window.removeEventListener("keyup",c),window.removeEventListener("mousedown",c),window.removeEventListener("keydown",c),window.removeEventListener("change",c))},i.observers.set(e,new PR(e,n)),n}function B0(t,e){e===void 0&&(e=!1);var r=R0.get(t.object);U0(r.value,t.object,t.patches,"",e),t.patches.length&&kl(r.value,t.patches);var n=t.patches;return n.length>0&&(t.patches=[],t.callback&&t.callback(n)),n}function U0(t,e,r,n,i){if(e!==t){typeof e.toJSON=="function"&&(e=e.toJSON());for(var o=Rl(e),s=Rl(t),c=!1,a=!1,u=s.length-1;u>=0;u--){var d=s[u],f=t[d];if(Bl(e,d)&&!(e[d]===void 0&&f!==void 0&&Array.isArray(e)===!1)){var h=e[d];typeof f=="object"&&f!=null&&typeof h=="object"&&h!=null&&Array.isArray(f)===Array.isArray(h)?U0(f,h,r,n+"/"+zn(d),i):f!==h&&(c=!0,i&&r.push({op:"test",path:n+"/"+zn(d),value:Mt(f)}),r.push({op:"replace",path:n+"/"+zn(d),value:Mt(h)}))}else Array.isArray(t)===Array.isArray(e)?(i&&r.push({op:"test",path:n+"/"+zn(d),value:Mt(f)}),r.push({op:"remove",path:n+"/"+zn(d)}),a=!0):(i&&r.push({op:"test",path:n,value:t}),r.push({op:"replace",path:n,value:e}),c=!0)}if(!(!a&&o.length==s.length))for(var u=0;u<o.length;u++){var d=o[u];!Bl(t,d)&&e[d]!==void 0&&r.push({op:"add",path:n+"/"+zn(d),value:Mt(e[d])})}}}function qR(t,e,r){r===void 0&&(r=!1);var n=[];return U0(t,e,n,"",r),n}var Uv=Object.assign({},I0,O0,{JsonPatchError:zu,deepClone:Mt,escapePathComponent:zn,unescapePathComponent:Gu});var{applyPatch:FR,compare:jR,deepClone:WR}=Uv,GR=new Set(["__proto__","constructor","prototype"]);function Ov(t){return t.split("/").map(e=>e.replace(/~1/g,"/").replace(/~0/g,"~")).find(e=>GR.has(e))}var ra=class{static apply(e,r,n={}){let i=n.mutate??!1,o=n.clone??WR,s=i?e:o(e),c=this.validateOperations(r);if(c)throw new we("Invalid JSON Patch operations","JSON_PATCH_APPLY_ERROR",{error:c});try{let a=FR(s,r,!1,i);if(a.newDocument===void 0)throw new we("JSON Patch application failed","JSON_PATCH_APPLY_ERROR",{result:a});return a.newDocument}catch(a){throw new we("JSON Patch application failed","JSON_PATCH_APPLY_ERROR",{error:a})}}static diff(e,r,n=""){let i=jR(e??{},r??{});if(!n)return i;let o=n.endsWith("/")?n.slice(0,-1):n;return i.map(s=>({...s,path:this.joinPointer(o,s.path)}))}static joinPointer(e,r){if(!e)return r;let n=e.startsWith("/")?e:`/${e}`;return`${this.escapeSegmentPath(n)}${r}`}static escapeSegmentPath(e){return e.split("/").map((r,n)=>n===0?r:r.replace(/~/g,"~0").replace(/\//g,"~1")).join("/")}static validateOperations(e){if(!Array.isArray(e))return new we("Operations must be an array","JSON_PATCH_VALIDATION_ERROR");for(let r of e){if(!r||typeof r!="object")return new we("Operation must be an object","JSON_PATCH_VALIDATION_ERROR");if(typeof r.op!="string")return new we("Operation.op must be a string","JSON_PATCH_VALIDATION_ERROR");if(typeof r.path!="string")return new we("Operation.path must be a string","JSON_PATCH_VALIDATION_ERROR");let n=Ov(r.path);if(n)return new we(`Operation.path traverses prototype machinery: ${n}`,"JSON_PATCH_VALIDATION_ERROR");if((r.op==="move"||r.op==="copy")&&typeof r.from!="string")return new we(`Operation.from must be a string for op=${r.op}`,"JSON_PATCH_VALIDATION_ERROR");if(typeof r.from=="string"){let i=Ov(r.from);if(i)return new we(`Operation.from traverses prototype machinery: ${i}`,"JSON_PATCH_VALIDATION_ERROR")}}return null}};l();var en;(function(t){t.KEY="KEY",t.EXTERNAL="EXTERNAL"})(en||(en={}));var Nl;(function(t){t.k="k",t.x="x"})(Nl||(Nl={}));var na;(function(t){t[t.bitcoin=0]="bitcoin",t[t.signet=1]="signet",t[t.regtest=2]="regtest",t[t.testnet3=3]="testnet3",t[t.testnet4=4]="testnet4",t[t.mutinynet=5]="mutinynet"})(na||(na={}));l();var Oo=class{static toISOStringNonFractional(e=new Date){let r=e.getTime();if(Number.isNaN(r))throw new we(`Invalid date: ${e}`,"INVALID_DATE");return e.toISOString().replace(/\.\d{3}Z$/,"Z")}static toUnixSeconds(e=new Date){let r=e.getTime();if(Number.isNaN(r))throw new we(`Invalid date: ${e}`,"INVALID_DATE");return Math.floor(e.getTime()/1e3)}static dateStringToTimestamp(e){let r=new Date(e);return Number.isNaN(r.getTime())?new Date(0):r}static blocktimeToTimestamp(e){return new Date(e*1e3)}static isValidXsdDateTime(e){if(!e)return!1;let r=/^-?(\d{4,})-(\d{2})-(\d{2})T(\d{2}):(\d{2}):(\d{2})(\.\d+)?(Z|[+-]\d{2}:\d{2})?$/,n=e.match(r);if(!n)return!1;let[,i,o,s,c,a,u,,d]=n,f=parseInt(i,10),h=parseInt(o,10),p=parseInt(s,10),y=parseInt(c,10),g=parseInt(a,10),x=parseInt(u,10);if(f===0||h<1||h>12)return!1;let S=[31,28,31,30,31,30,31,31,30,31,30,31],_=f%4===0&&f%100!==0||f%400===0,A=h===2&&_?29:S[h-1];if(p<1||p>A)return!1;if(y===24){if(g!==0||x!==0)return!1}else if(y>23)return!1;if(g>59||x>59)return!1;if(d&&d!=="Z"){let O=d.match(/^[+-](\d{2}):(\d{2})$/);if(O){let T=parseInt(O[1],10),M=parseInt(O[2],10);if(T>14||T===14&&M!==0||M>59)return!1}}return!0}};l();function D0(t,e,r){Object.defineProperty(t,e,{value:r,writable:!0,enumerable:!0,configurable:!0})}var ks=class{static isObject(e){if(e===null||typeof e!="object"||Array.isArray(e))return!1;let r=Object.getPrototypeOf(e);return r===Object.prototype||r===null}static isParsable(e){if(typeof e!="string")return!1;try{return JSON.parse(e),!0}catch{return!1}}static isUnprototyped(e){return e===null||typeof e!="object"?!1:Object.getPrototypeOf(e)===null}static normalize(e){return this.cloneInternal(e,{stripPrototypes:!0})}static copy(e){return{...e}}static clone(e){return typeof structuredClone=="function"?structuredClone(e):this.cloneInternal(e)}static cloneReplace(e,r,n){return this.cloneInternal(e,{transform:i=>typeof i=="string"?i.replace(r,n):i})}static deepEqual(e,r,n=new WeakMap,i=0){if(i>1024)throw new we("Maximum comparison depth exceeded","MAX_DEPTH_EXCEEDED");if(Object.is(e,r))return!0;if(typeof e!=typeof r||e===null||r===null||typeof e!="object")return!1;if(n.get(e)===r)return!0;if(n.set(e,r),ArrayBuffer.isView(e)&&ArrayBuffer.isView(r)){let c=new Uint8Array(e.buffer,e.byteOffset,e.byteLength),a=new Uint8Array(r.buffer,r.byteOffset,r.byteLength);if(c.byteLength!==a.byteLength)return!1;for(let u=0;u<c.byteLength;u++)if(c[u]!==a[u])return!1;return!0}if(e instanceof Date&&r instanceof Date)return e.getTime()===r.getTime();if(e instanceof Set&&r instanceof Set){if(e.size!==r.size)return!1;for(let c of e){let a=!1;for(let u of r)if(this.deepEqual(c,u,n,i+1)){a=!0;break}if(!a)return!1}return!0}if(e instanceof Map&&r instanceof Map){if(e.size!==r.size)return!1;for(let[c,a]of e){let u=!1;if(r.has(c))u=this.deepEqual(a,r.get(c),n,i+1);else for(let[d,f]of r)if(this.deepEqual(c,d,n,i+1)&&this.deepEqual(a,f,n,i+1)){u=!0;break}if(!u)return!1}return!0}if(Array.isArray(e)&&Array.isArray(r)){if(e.length!==r.length)return!1;for(let c=0;c<e.length;c++)if(!this.deepEqual(e[c],r[c],n,i+1))return!1;return!0}let o=Object.keys(e),s=Object.keys(r);if(o.length!==s.length)return!1;for(let c of o)if(!Object.prototype.hasOwnProperty.call(r,c)||!this.deepEqual(e[c],r[c],n,i+1))return!1;return!0}static deleteKeys(e,r){let n=new Set(r.map(o=>typeof o=="number"?o.toString():o)),i=o=>{if(Array.isArray(o))return o.map(s=>i(s));if(o&&typeof o=="object"){let s={};for(let c of Object.keys(o))n.has(c)||D0(s,c,i(o[c]));return s}return o};return i(e)}static sanitize(e){let r=n=>{if(Array.isArray(n))return n.filter(i=>i!==void 0).map(i=>r(i));if(n&&typeof n=="object"){let i={};for(let[o,s]of Object.entries(n)){let c=r(s);c!==void 0&&D0(i,o,c)}return i}return n};return r(e)}static cloneInternal(e,r={},n=new WeakMap,i=0){if(i>1024)throw new we("Maximum clone depth exceeded","MAX_DEPTH_EXCEEDED");let o=r.transform?r.transform(e):e;if(o!==e||typeof e!="object"||e===null)return o;if(n.has(e))throw new we("Cannot clone circular structure","CIRCULAR_STRUCTURE");if(Array.isArray(e)){let c=[];n.set(e,c);for(let a of e)c.push(this.cloneInternal(a,r,n,i+1));return c}if(ArrayBuffer.isView(e)){if(e instanceof DataView)return new DataView(e.buffer.slice(e.byteOffset,e.byteOffset+e.byteLength));if(typeof e.slice=="function")return e.slice()}if(e instanceof Date)return new Date(e.getTime());let s=r.stripPrototypes?{}:Object.create(Object.getPrototypeOf(e));n.set(e,s);for(let c of Object.keys(e))D0(s,c,this.cloneInternal(e[c],r,n,i+1));return s}};l();var Yt=class extends we{constructor(e,r="BeaconError",n){super(e,r,n)}},k0=class extends we{constructor(e,r="SingletonBeaconError",n){super(e,r,n)}},N0=class extends we{constructor(e,r="AggregateBeaconError",n){super(e,r,n)}},C0=class extends we{constructor(e,r="CASBeaconError",n){super(e,r,n)}},ia=class extends we{constructor(e,r="SMTBeaconError",n){super(e,r,n)}};l();l();l();l();l();l();l();l();l();l();l();l();l();l();l();var n6={bech32:"bcrt",pubKeyHash:111,scriptHash:196,wif:239};function Do(t){switch(t){case"bitcoin":return Xr;case"testnet3":case"testnet4":case"signet":case"mutinynet":return o0;case"regtest":return n6;default:throw new Error(`Unknown network "${t}"`)}}l();var oa=class{satsPerVbyte;constructor(e=5){if(e<0||!Number.isFinite(e))throw new Error(`Invalid satsPerVbyte: ${e}`);this.satsPerVbyte=e}async estimateFee(e){if(e<0||!Number.isFinite(e))throw new Error(`Invalid vsize: ${e}`);return BigInt(Math.ceil(e*this.satsPerVbyte))}};l();var P0="0000000000000000000000000000000000000000000000000000000000000000",M0="4a5e1e4baab89f3a32518a88c31bc87f618f76673e2cc77ab2127b7afdeda33b";l();var K0;(function(t){t[t.hex=0]="hex",t[t.json=1]="json",t[t.jsonext=2]="jsonext",t[t.jsonextprev=3]="jsonextprev"})(K0||(K0={}));var Cl=new oa(5);var kv=160,Nv=155,Cv=240,Lv={p2pkh:Cv,p2wpkh:Nv,p2tr:kv},$0={p2pkh:34,p2wpkh:31,p2tr:43},H0={p2pkh:546,p2wpkh:294,p2tr:330};function V0(t,e){return Lv[t]-$0[t]+$0[e]}function q0(t,e){let r=Zr(e).decode(t);if(r.type==="pkh")return"p2pkh";if(r.type==="wpkh")return"p2wpkh";if(r.type==="tr")return"p2tr";throw new Yt(`Unsupported singleton beacon address type "${r.type}". Expected P2PKH, P2WPKH, or P2TR (taproot key-path).`,"UNSUPPORTED_BEACON_ADDRESS_TYPE",{address:t,kind:r.type})}function Pv(t,e,r){return t==="p2pkh"?ki(e,r).address:t==="p2wpkh"?Ts(e,r).address:_s(e.slice(1,33),void 0,r).address}function F0(t,e,r){if(!r||r===t)return t;try{Zr(e).decode(r)}catch{throw new Yt(`Invalid change address "${r}" for network "${e}".`,"INVALID_CHANGE_ADDRESS",{changeAddress:r,network:e})}return r}function Mv(t,e){try{return q0(t,e)}catch{return"p2tr"}}function j0(t){return Ze.encode(["RETURN",t])}var Ll=546;function s6(t){return t.status.confirmed===!0}function c6(t,e){if(t.status.block_height!==e.status.block_height)return t.status.block_height-e.status.block_height;let r=t.txid.localeCompare(e.txid);return r!==0?r:t.vout-e.vout}function Kv(t,e){if(!t.length)throw new Yt("No UTXOs found, please fund address!","UNFUNDED_BEACON_ADDRESS",{address:e});let r=t.filter(s6),n=r.filter(i=>i.value>Ll);if(!n.length){let i=r.length===0?`all ${t.length} UTXO(s) are unconfirmed`:`all ${r.length} confirmed UTXO(s) are at or below the ${Ll}-sat dust limit`;throw new Yt(`No spendable UTXO at beacon address: ${i}.`,"NO_SPENDABLE_BEACON_UTXO",{address:e,total:t.length,confirmed:r.length,dustLimit:Ll})}return[...n].sort(c6)[0]}async function $v(t,e){let r=await e.rest.address.getUtxos(t),n=Kv(r,t),i=await e.rest.transaction.getHex(n.txid);return{utxo:n,prevTxBytes:_r(i)}}async function a6(t){let e=t.feeEstimator??Cl,{utxo:r,prevTxBytes:n}=await $v(t.beaconAddress,t.bitcoin),i=F0(t.beaconAddress,t.network,t.changeAddress),o=Qe.encode(Zr(t.network).decode(t.beaconAddress)),s=Mv(i,t.network),c=await e.estimateFee(V0("p2tr",s));if(BigInt(r.value)<=c)throw new Yt(`UTXO value (${r.value}) insufficient to cover fee (${c}).`,"INSUFFICIENT_FUNDS",{address:t.beaconAddress,valueSats:r.value,feeSats:c});let a=new Rs({allowUnknownOutputs:!0});a.addInput({txid:r.txid,index:r.vout,nonWitnessUtxo:n,witnessUtxo:{amount:BigInt(r.value),script:o},tapInternalKey:t.internalPubkey});let u=BigInt(r.value)-c;return u>=BigInt(H0[s])&&a.addOutputAddress(i,u,t.network),a.addOutput({script:j0(t.signalBytes),amount:0n}),{tx:a,prevOutScripts:[o],prevOutValues:[BigInt(r.value)],beaconAddress:t.beaconAddress,changeAddress:i,utxo:r,feeSats:c,scriptKind:"p2tr"}}async function u6(t,e,r,n,i,o){let s=n.publicKey;if(r==="p2pkh"){let u=_o.ALL,d=t.preimageLegacy(e,i,u),f=n.sign(d,"ecdsa"),h=lt(f,new Uint8Array([u]));return t.updateInput(e,{partialSig:[[s,h]]},!0),t.finalize(),t.hex}if(r==="p2wpkh"){let u=Qe.decode(i);if(u.type!=="wpkh")throw new Yt(`Expected P2WPKH prev-output script, got "${u.type}".`,"PREVOUT_SCRIPT_MISMATCH",{kind:r,observedScriptType:u.type});let d=Qe.encode({type:"pkh",hash:u.hash}),f=_o.ALL,h=t.preimageWitnessV0(e,d,f,o),p=n.sign(h,"ecdsa"),y=lt(p,new Uint8Array([f]));return t.updateInput(e,{partialSig:[[s,y]]},!0),t.finalize(),t.hex}let c=t.preimageWitnessV1(e,[i],_o.DEFAULT,[o]),a=n.sign(c,"bip341");return t.updateInput(e,{tapKeySig:a}),t.finalize(),t.hex}var Ci=class{service;did;constructor(e,r){this.service=e,this.did=r}async buildSignAndBroadcast(e,r,n,i){let o=i?.feeEstimator??Cl,s=this.service.serviceEndpoint.replace("bitcoin:",""),{utxo:c,prevTxBytes:a}=await $v(s,n),u=await this.buildSinglePartyTx({signalBytes:e,beaconAddress:s,utxo:c,prevTxBytes:a,signer:r,bitcoin:n,feeEstimator:o,changeAddress:i?.changeAddress}),d=await this.signSinglePartyTx(u,r);return this.broadcastRawTx(n,d)}async buildSinglePartyTx(e){let r=e.bitcoin.data,n=e.signer.publicKey,i=q0(e.beaconAddress,r),o=F0(e.beaconAddress,r,e.changeAddress),s=Pv(i,n,r);if(s!==e.beaconAddress)throw new Yt(`Signer pubkey produces ${i.toUpperCase()} address "${s}", but beacon address is "${e.beaconAddress}".`,"SIGNER_KEY_MISMATCH",{kind:i,address:e.beaconAddress,derivedAddress:s});let c=Mv(o,r),a=await e.feeEstimator.estimateFee(V0(i,c)),u=BigInt(e.utxo.value);if(u<=a)throw new Yt(`UTXO value (${e.utxo.value}) insufficient to cover fee (${a}).`,"INSUFFICIENT_FUNDS",{address:e.beaconAddress,valueSats:e.utxo.value,feeSats:a});let d=new Rs({allowUnknownOutputs:!0}),f;if(i==="p2pkh")f=ki(n,r).script,d.addInput({txid:e.utxo.txid,index:e.utxo.vout,nonWitnessUtxo:e.prevTxBytes});else if(i==="p2wpkh")f=Ts(n,r).script,d.addInput({txid:e.utxo.txid,index:e.utxo.vout,nonWitnessUtxo:e.prevTxBytes,witnessUtxo:{amount:u,script:f}});else{let p=n.slice(1,33);f=_s(p,void 0,r).script,d.addInput({txid:e.utxo.txid,index:e.utxo.vout,nonWitnessUtxo:e.prevTxBytes,witnessUtxo:{amount:u,script:f},tapInternalKey:p})}let h=u-a;return h>=BigInt(H0[c])&&d.addOutputAddress(o,h,r),d.addOutput({script:j0(e.signalBytes),amount:0n}),{tx:d,prevOutScripts:[f],prevOutValues:[u],beaconAddress:e.beaconAddress,changeAddress:o,utxo:e.utxo,feeSats:a,scriptKind:i}}async signSinglePartyTx(e,r){return u6(e.tx,0,e.scriptKind,r,e.prevOutScripts[0],e.prevOutValues[0])}async broadcastRawTx(e,r){return e.rest.transaction.send(r)}};l();var Ju=class extends Ci{constructor(e,r){super({...e,type:"CASBeacon"},r)}processSignals(e,r){let n=new Array,i=new Array,o=this.did;for(let s of e){let c=s.signalBytes,a=r.casMap.get(c);if(!a){i.push({kind:"NeedCASAnnouncement",announcementHash:c,beaconServiceId:this.service.id});continue}let u=a[o];if(!u)continue;let d=Qr(Os(u,"base64urlnopad"),"hex"),f=r.updateMap.get(d);if(!f){i.push({kind:"NeedSignedUpdate",updateHash:d,beaconServiceId:this.service.id});continue}n.push([f,s.blockMetadata])}return{updates:n,needs:i}}async broadcastSignal(e,r,n,i){let o=this.did,s=Gn(e),c={[o]:s},a=Ro(ir(c));i?.casPublish&&await i.casPublish(c);let u=await this.buildSignAndBroadcast(a,r,n,i);return{signedUpdate:e,txid:u,announcement:c}}};l();l();var Xu=class extends Ci{constructor(e,r){super({...e,type:"SingletonBeacon"},r)}processSignals(e,r){let n=new Array,i=new Array;for(let o of e){let s=o.signalBytes,c=r.updateMap.get(s);if(!c){i.push({kind:"NeedSignedUpdate",updateHash:s,beaconServiceId:this.service.id});continue}n.push([c,o.blockMetadata])}return{updates:n,needs:i}}async broadcastSignal(e,r,n,i){let o=Ro(ir(e)),s=await this.buildSignAndBroadcast(o,r,n,i);return{signedUpdate:e,txid:s}}};l();l();l();var d6=new Uint8Array(32),W0=1n<<BigInt(256),Hv=(()=>{let t=new Array(257),e=W0>>1n;for(let r=0;r<256;r++)t[r]=e,e>>=1n;return t[256]=0n,t})();l();l();l();function Zu(t){return t instanceof Uint8Array||ArrayBuffer.isView(t)&&t.constructor.name==="Uint8Array"}function Yn(t,e=""){if(!Number.isSafeInteger(t)||t<0){let r=e&&`"${e}" `;throw new Error(`${r}expected integer >= 0, got ${t}`)}}function _e(t,e,r=""){let n=Zu(t),i=t?.length,o=e!==void 0;if(!n||o&&i!==e){let s=r&&`"${r}" `,c=o?` of length ${e}`:"",a=n?`length=${i}`:`type=${typeof t}`;throw new Error(s+"expected Uint8Array"+c+", got "+a)}return t}function Pl(t){if(typeof t!="function"||typeof t.create!="function")throw new Error("Hash must wrapped by utils.createHasher");Yn(t.outputLen),Yn(t.blockLen)}function sa(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 qv(t,e){_e(t,void 0,"digestInto() output");let r=e.outputLen;if(t.length<r)throw new Error('"digestInto() output" expected to be of length >='+r)}function Ns(...t){for(let e=0;e<t.length;e++)t[e].fill(0)}function Ml(t){return new DataView(t.buffer,t.byteOffset,t.byteLength)}function En(t,e){return t<<32-e|t>>>e}var Fv=typeof Uint8Array.from([]).toHex=="function"&&typeof Uint8Array.fromHex=="function",f6=Array.from({length:256},(t,e)=>e.toString(16).padStart(2,"0"));function Cs(t){if(_e(t),Fv)return t.toHex();let e="";for(let r=0;r<t.length;r++)e+=f6[t[r]];return e}var Li={_0:48,_9:57,A:65,F:70,a:97,f:102};function Vv(t){if(t>=Li._0&&t<=Li._9)return t-Li._0;if(t>=Li.A&&t<=Li.F)return t-(Li.A-10);if(t>=Li.a&&t<=Li.f)return t-(Li.a-10)}function Ls(t){if(typeof t!="string")throw new Error("hex string expected, got "+typeof t);if(Fv)return Uint8Array.fromHex(t);let e=t.length,r=e/2;if(e%2)throw new Error("hex string expected, got unpadded hex of length "+e);let n=new Uint8Array(r);for(let i=0,o=0;i<r;i++,o+=2){let s=Vv(t.charCodeAt(o)),c=Vv(t.charCodeAt(o+1));if(s===void 0||c===void 0){let a=t[o]+t[o+1];throw new Error('hex string expected, got non-hex character "'+a+'" at index '+o)}n[i]=s*16+c}return n}function pr(...t){let e=0;for(let n=0;n<t.length;n++){let i=t[n];_e(i),e+=i.length}let r=new Uint8Array(e);for(let n=0,i=0;n<t.length;n++){let o=t[n];r.set(o,i),i+=o.length}return r}function jv(t,e={}){let r=(i,o)=>t(o).update(i).digest(),n=t(void 0);return r.outputLen=n.outputLen,r.blockLen=n.blockLen,r.create=i=>t(i),Object.assign(r,e),Object.freeze(r)}function Ps(t=32){let e=typeof globalThis=="object"?globalThis.crypto:null;if(typeof e?.getRandomValues!="function")throw new Error("crypto.getRandomValues must be defined");return e.getRandomValues(new Uint8Array(t))}var Wv=t=>({oid:Uint8Array.from([6,9,96,134,72,1,101,3,4,2,t])});var z0=BigInt(0),G0=BigInt(1);function Qu(t,e=""){if(typeof t!="boolean"){let r=e&&`"${e}" `;throw new Error(r+"expected boolean, got type="+typeof t)}return t}function Gv(t){if(typeof t=="bigint"){if(!Kl(t))throw new Error("positive bigint expected, got "+t)}else Yn(t);return t}function ed(t){let e=Gv(t).toString(16);return e.length&1?"0"+e:e}function zv(t){if(typeof t!="string")throw new Error("hex string expected, got "+typeof t);return t===""?z0:BigInt("0x"+t)}function ko(t){return zv(Cs(t))}function Y0(t){return zv(Cs(l6(_e(t)).reverse()))}function $l(t,e){Yn(e),t=Gv(t);let r=Ls(t.toString(16).padStart(e*2,"0"));if(r.length!==e)throw new Error("number too large");return r}function J0(t,e){return $l(t,e).reverse()}function ca(t,e){if(t.length!==e.length)return!1;let r=0;for(let n=0;n<t.length;n++)r|=t[n]^e[n];return r===0}function l6(t){return Uint8Array.from(t)}function Yv(t){return Uint8Array.from(t,(e,r)=>{let n=e.charCodeAt(0);if(e.length!==1||n>127)throw new Error(`string contains non-ASCII character "${t[r]}" with code ${n} at position ${r}`);return n})}var Kl=t=>typeof t=="bigint"&&z0<=t;function h6(t,e,r){return Kl(t)&&Kl(e)&&Kl(r)&&e<=t&&t<r}function Jv(t,e,r,n){if(!h6(e,r,n))throw new Error("expected valid "+t+": "+r+" <= n < "+n+", got "+e)}function X0(t){let e;for(e=0;t>z0;t>>=G0,e+=1);return e}var td=t=>(G0<<BigInt(t))-G0;function Xv(t,e,r){if(Yn(t,"hashLen"),Yn(e,"qByteLen"),typeof r!="function")throw new Error("hmacFn must be a function");let n=x=>new Uint8Array(x),i=Uint8Array.of(),o=Uint8Array.of(0),s=Uint8Array.of(1),c=1e3,a=n(t),u=n(t),d=0,f=()=>{a.fill(1),u.fill(0),d=0},h=(...x)=>r(u,pr(a,...x)),p=(x=i)=>{u=h(o,x),a=h(),x.length!==0&&(u=h(s,x),a=h())},y=()=>{if(d++>=c)throw new Error("drbg: tried max amount of iterations");let x=0,S=[];for(;x<e;){a=h();let _=a.slice();S.push(_),x+=a.length}return pr(...S)};return(x,S)=>{f(),p(x);let _;for(;!(_=S(y()));)p();return f(),_}}function rd(t,e={},r={}){if(!t||typeof t!="object")throw new Error("expected valid options object");function n(o,s,c){let a=t[o];if(c&&a===void 0)return;let u=typeof a;if(u!==s||a===null)throw new Error(`param "${o}" is invalid: expected ${s}, got ${u}`)}let i=(o,s)=>Object.entries(o).forEach(([c,a])=>n(c,a,s));i(e,!1),i(r,!0)}function Z0(t){let e=new WeakMap;return(r,...n)=>{let i=e.get(r);if(i!==void 0)return i;let o=t(r,...n);return e.set(r,o),o}}function Q0(t){return t.length===32}function Hl(t){if(!Q0(t))throw new RangeError(`Invalid hash: expected ${32} bytes, got ${t.length}`)}function pt(...t){return ke(lt(...t))}function nd(t){Hl(t);let e=0n;for(let r of t)e=e<<8n|BigInt(r);return e}function eg(t){let e=new Uint8Array(32),r=t;for(let n=31;n>=0;n--)e[n]=Number(r&0xffn),r>>=8n;if(r!==0n)throw new RangeError("Value exceeds 256 bits");return e}function tg(t){Hl(t);let e="";for(let r of t)e+=r.toString(16).padStart(2,"0");return e}function rg(t,e){return!Q0(t)||!Q0(e)?!1:ca(t,e)}function aa(t){return Hl(t),Gc.encode(t)}function Jn(t){let e=Gc.decode(t);if(e.length!==32)throw new RangeError(`Invalid base64url hash: expected ${32} decoded bytes, got ${e.length}`);return e}l();l();var Zv;(function(t){t[t.Pending=0]="Pending",t[t.Valid=1]="Valid",t[t.Invalid=2]="Invalid"})(Zv||(Zv={}));l();l();var No=256;function ua(t,e){return Number(t>>BigInt(e)&1n)}var Qv=(()=>{let t=new Array(No+1),e=new Uint8Array(32);for(let r=0;r<=No;r++)e=pt(e,e),t[r]=e;return t})();function Vl(t,e){if(t.length===0)return Qv[e];if(e===0)return t[0].leaf;let r=No-e,n=[],i=[];for(let o of t)(ua(o.index,r)===0?n:i).push(o);return pt(Vl(n,e-1),Vl(i,e-1))}function e1(t){return Vl(t,No)}function t1(t,e){let r=0n,n=[];for(let i=1;i<=No;i++){let o=No-i,s=[];for(let c of t){if(c.index===e)continue;let a=!0;for(let u=0;u<o;u++)if(ua(c.index,u)!==ua(e,u)){a=!1;break}a&&ua(c.index,o)!==ua(e,o)&&s.push(c)}s.length===0?r|=1n<<BigInt(o):n.push(Vl(s,i-1))}return{collapsed:r,hashes:n}}function r1(t,e,r,n,i){let o=n,s=0;for(let c=0;c<No;c++){let a=No-1-c,u;if((t>>BigInt(a)&1n)===1n)u=Qv[c];else{if(s>=e.length)return!1;u=e[s++]}o=ua(r,a)===1?pt(u,o):pt(o,u)}return s===e.length&&rg(o,i)}l();var p6=new TextEncoder;function ql(t){return nd(pt(p6.encode(t)))}function n1(t,e){return pt(pt(t),pt(e))}function i1(t){return pt(pt(t))}l();function o1(t,e,r){let n={id:aa(t),collapsed:aa(eg(e.collapsed)),hashes:e.hashes.map(i=>aa(i))};return r?.nonce&&(n.nonce=aa(r.nonce)),r?.updateId&&(n.updateId=aa(r.updateId)),n}function y6(t){let e={rootHash:Jn(t.id),collapsed:nd(Jn(t.collapsed)),hashes:t.hashes.map(r=>Jn(r))};return t.nonce&&(e.nonce=Jn(t.nonce)),t.updateId&&(e.updateId=Jn(t.updateId)),e}function s1(t,e,r){let{rootHash:n,collapsed:i,hashes:o}=y6(t);return r1(i,o,e,r,n)}l();var Fl=class{#e=new Map;#t=new Map;#n=null;#r=null;constructor(e=!0){}addEntries(e){for(let r of e){let n=ql(r.did);if(this.#e.has(n))throw new RangeError(`Duplicate DID index for: ${r.did}`);this.#e.set(n,r),this.#t.set(r.did,n)}this.#n=null,this.#r=null}finalize(){let e=[];for(let[r,n]of this.#e){let i=n.signedUpdate!==void 0?n1(n.nonce,n.signedUpdate):i1(n.nonce);e.push({index:r,leaf:i})}this.#n=e,this.#r=e1(e)}get rootHash(){if(this.#r===null)throw new Error("Tree not finalized: call finalize() first");return this.#r}proof(e){let r=this.#t.get(e);if(r===void 0)throw new RangeError(`DID not in tree: ${e}`);if(this.#n===null||this.#r===null)throw new Error("Tree not finalized: call finalize() first");let n=this.#e.get(r),i=t1(this.#n,r),o=n.signedUpdate!==void 0?pt(n.signedUpdate):void 0;return o1(this.#r,i,{nonce:n.nonce,updateId:o})}reset(){this.#n=null,this.#r=null}};var id=class extends Ci{constructor(e,r){super({...e,type:"SMTBeacon"},r)}processSignals(e,r){let n=new Array,i=new Array,o=this.did;for(let s of e){let c=r.smtMap.get(s.signalBytes);if(!c){i.push({kind:"NeedSMTProof",smtRootHash:s.signalBytes,beaconServiceId:this.service.id});continue}if(!c.nonce)throw new ia("SMT proof missing required nonce field.","INVALID_SMT_PROOF",{smtProof:c,did:o});let a=ql(o),u=Jn(c.nonce),d=c.updateId?pt(pt(u),Jn(c.updateId)):pt(pt(u));if(!s1(c,a,d))throw new ia("SMT proof verification failed.","INVALID_SMT_PROOF",{smtProof:c,did:o});if(!c.updateId)continue;let h=tg(Jn(c.updateId)),p=r.updateMap.get(h);if(!p){i.push({kind:"NeedSignedUpdate",updateHash:h,beaconServiceId:this.service.id});continue}n.push([p,s.blockMetadata])}return{updates:n,needs:i}}async broadcastSignal(e,r,n,i){let o=this.did,s=new TextEncoder().encode(ir(e)),c=Ir(32),a=new Fl;a.addEntries([{did:o,nonce:c,signedUpdate:s}]),a.finalize();let u=a.proof(o),d=await this.buildSignAndBroadcast(a.rootHash,r,n,i);return{signedUpdate:e,txid:d,proof:u}}};var Ms=class{static establish(e,r){switch(e.type){case"SingletonBeacon":return new Xu(e,r);case"CASBeacon":return new Ju(e,r);case"SMTBeacon":return new id(e,r);default:throw new we("Invalid Beacon Type","INVALID_BEACON_ERROR",e)}}};l();l();l();l();l();l();var Mi;(function(t){t.authentication="authentication",t.assertionMethod="assertionMethod",t.keyAgreement="keyAgreement",t.capabilityInvocation="capabilityInvocation",t.capabilityDelegation="capabilityDelegation"})(Mi||(Mi={}));l();var yt={"@context":"https://w3id.org/did-resolution/v1",didResolutionMetadata:{},didDocument:null,didDocumentMetadata:{}};l();var me=class t{constructor({method:e,id:r,path:n,query:i,fragment:o,params:s}){this.uri=`did:${e}:${r}`,this.method=e,this.id=r,this.path=n,this.query=i,this.fragment=o,this.params=s}static parse(e){if(!e)return null;let r=t.DID_URI_PATTERN.exec(e);if(!r||!r.groups)return null;let{method:n,id:i,path:o,query:s,fragment:c}=r.groups,a={uri:`did:${n}:${i}`,method:n,id:i};if(o&&(a.path=o),s&&(a.query=s.slice(1)),c&&(a.fragment=c.slice(1)),s){let u={},d=s.slice(1).split("&");for(let f of d){let[h,p]=f.split("=");u[h]=p}a.params=u}return a}};me.METHOD_PATTERN="([a-z0-9]+)";me.PCT_ENCODED_PATTERN="(?:%[0-9a-fA-F]{2})";me.ID_CHAR_PATTERN=`(?:[a-zA-Z0-9._-]|${me.PCT_ENCODED_PATTERN})`;me.METHOD_ID_PATTERN=`((?:${me.ID_CHAR_PATTERN}*:)*(${me.ID_CHAR_PATTERN}+))`;me.PATH_PATTERN="(/[^#?]*)?";me.QUERY_PATTERN="([?][^#]*)?";me.FRAGMENT_PATTERN="(#.*)?";me.DID_URI_PATTERN=new RegExp(`^did:(?<method>${me.METHOD_PATTERN}):(?<id>${me.METHOD_ID_PATTERN})(?<path>${me.PATH_PATTERN})(?<query>${me.QUERY_PATTERN})(?<fragment>${me.FRAGMENT_PATTERN})$`);l();var re=class t extends Error{constructor(e,r){super(`${e}: ${r}`),this.code=e,this.name="DidError",Object.setPrototypeOf(this,new.target.prototype),Error.captureStackTrace&&Error.captureStackTrace(this,t)}},ie;(function(t){t.InvalidDid="invalidDid",t.MethodNotSupported="methodNotSupported",t.InternalError="internalError",t.InvalidDidDocument="invalidDidDocument",t.InvalidDidDocumentLength="invalidDidDocumentLength",t.InvalidDidUrl="invalidDidUrl",t.InvalidPreviousDidProof="invalidPreviousDidProof",t.InvalidPublicKey="invalidPublicKey",t.InvalidPublicKeyLength="invalidPublicKeyLength",t.InvalidPublicKeyType="invalidPublicKeyType",t.InvalidSignature="invalidSignature",t.NotFound="notFound",t.RepresentationNotSupported="representationNotSupported",t.UnsupportedPublicKeyType="unsupportedPublicKeyType"})(ie||(ie={}));l();l();l();l();l();var w6=Mn(a1(),1);l();l();l();l();var jH=new Uint8Array(0);function u1(t,e){if(t===e)return!0;if(t.byteLength!==e.byteLength)return!1;for(let r=0;r<t.byteLength;r++)if(t[r]!==e[r])return!1;return!0}function da(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")}l();function x6(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 c=t.length,a=t.charAt(0),u=Math.log(c)/Math.log(256),d=Math.log(256)/Math.log(c);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 g=0,x=0,S=0,_=y.length;S!==_&&y[S]===0;)S++,g++;for(var A=(_-S)*d+1>>>0,O=new Uint8Array(A);S!==_;){for(var T=y[S],M=0,q=A-1;(T!==0||M<x)&&q!==-1;q--,M++)T+=256*O[q]>>>0,O[q]=T%c>>>0,T=T/c>>>0;if(T!==0)throw new Error("Non-zero carry");x=M,S++}for(var j=A-x;j!==A&&O[j]===0;)j++;for(var $=a.repeat(g);j<A;++j)$+=t.charAt(O[j]);return $}function h(y){if(typeof y!="string")throw new TypeError("Expected String");if(y.length===0)return new Uint8Array;var g=0;if(y[g]!==" "){for(var x=0,S=0;y[g]===a;)x++,g++;for(var _=(y.length-g)*u+1>>>0,A=new Uint8Array(_);y[g];){var O=r[y.charCodeAt(g)];if(O===255)return;for(var T=0,M=_-1;(O!==0||T<S)&&M!==-1;M--,T++)O+=c*A[M]>>>0,A[M]=O%256>>>0,O=O/256>>>0;if(O!==0)throw new Error("Non-zero carry");S=T,g++}if(y[g]!==" "){for(var q=_-S;q!==_&&A[q]===0;)q++;for(var j=new Uint8Array(x+(_-q)),$=x;q!==_;)j[$++]=A[q++];return j}}}function p(y){var g=h(y);if(g)return g;throw new Error(`Non-${e} character`)}return{encode:f,decodeUnsafe:h,decode:p}}var E6=x6,v6=E6,d1=v6;var sg=class{name;prefix;baseEncode;constructor(e,r,n){this.name=e,this.prefix=r,this.baseEncode=n}encode(e){if(e instanceof Uint8Array)return`${this.prefix}${this.baseEncode(e)}`;throw Error("Unknown type, must be binary type")}},cg=class{name;prefix;baseDecode;prefixCodePoint;constructor(e,r,n){if(this.name=e,this.prefix=r,r.codePointAt(0)===void 0)throw new Error("Invalid prefix character");this.prefixCodePoint=r.codePointAt(0),this.baseDecode=n}decode(e){if(typeof e=="string"){if(e.codePointAt(0)!==this.prefixCodePoint)throw Error(`Unable to decode multibase string ${JSON.stringify(e)}, ${this.name} decoder only supports inputs prefixed with ${this.prefix}`);return this.baseDecode(e.slice(this.prefix.length))}else throw Error("Can only multibase decode strings")}or(e){return f1(this,e)}},ag=class{decoders;constructor(e){this.decoders=e}or(e){return f1(this,e)}decode(e){let r=e[0],n=this.decoders[r];if(n!=null)return n.decode(e);throw RangeError(`Unable to decode multibase string ${JSON.stringify(e)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`)}};function f1(t,e){return new ag({...t.decoders??{[t.prefix]:t},...e.decoders??{[e.prefix]:e}})}var ug=class{name;prefix;baseEncode;baseDecode;encoder;decoder;constructor(e,r,n,i){this.name=e,this.prefix=r,this.baseEncode=n,this.baseDecode=i,this.encoder=new sg(e,r,n),this.decoder=new cg(e,r,i)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}};function l1({name:t,prefix:e,encode:r,decode:n}){return new ug(t,e,r,n)}function dg({name:t,prefix:e,alphabet:r}){let{encode:n,decode:i}=d1(r,t);return l1({prefix:e,name:t,encode:n,decode:o=>da(i(o))})}function S6(t,e,r,n){let i={};for(let d=0;d<e.length;++d)i[e[d]]=d;let o=t.length;for(;t[o-1]==="=";)--o;let s=new Uint8Array(o*r/8|0),c=0,a=0,u=0;for(let d=0;d<o;++d){let f=i[t[d]];if(f===void 0)throw new SyntaxError(`Non-${n} character`);a=a<<r|f,c+=r,c>=8&&(c-=8,s[u++]=255&a>>c)}if(c>=r||255&a<<8-c)throw new SyntaxError("Unexpected end of data");return s}function A6(t,e,r){let n=e[e.length-1]==="=",i=(1<<r)-1,o="",s=0,c=0;for(let a=0;a<t.length;++a)for(c=c<<8|t[a],s+=8;s>r;)s-=r,o+=e[i&c>>s];if(s!==0&&(o+=e[i&c<<r-s]),n)for(;o.length*r&7;)o+="=";return o}function or({name:t,prefix:e,bitsPerChar:r,alphabet:n}){return l1({prefix:e,name:t,encode(i){return A6(i,n,r)},decode(i){return S6(i,n,r,t)}})}var od=or({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),eV=or({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),tV=or({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),rV=or({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),nV=or({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),iV=or({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),oV=or({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),sV=or({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),fg=or({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});l();var yr=dg({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),dV=dg({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});l();var pV=or({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),yV=or({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),Xn=or({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),gV=or({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});l();function h1(t){return t.byteOffset!==0||t.byteLength!==t.buffer.byteLength}function p1(t){return typeof t!="object"||t===null?!1:typeof t[Symbol.asyncIterator]=="function"}function fa(t){let r=Object.prototype.toString.call(t).match(/\s([a-zA-Z0-9]+)/),[n,i]=r;return i}var sd=function(t,e,r,n){function i(o){return o instanceof r?o:new r(function(s){s(o)})}return new(r||(r=Promise))(function(o,s){function c(d){try{u(n.next(d))}catch(f){s(f)}}function a(d){try{u(n.throw(d))}catch(f){s(f)}}function u(d){d.done?o(d.value):i(d.value).then(c,a)}u((n=n.apply(t,e||[])).next())})},y1=function(t){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var e=t[Symbol.asyncIterator],r;return e?e.call(t):(t=typeof __values=="function"?__values(t):t[Symbol.iterator](),r={},n("next"),n("throw"),n("return"),r[Symbol.asyncIterator]=function(){return this},r);function n(o){r[o]=t[o]&&function(s){return new Promise(function(c,a){s=t[o](s),i(c,a,s.done,s.value)})}}function i(o,s,c,a){Promise.resolve(a).then(function(u){o({value:u,done:c})},s)}},Wl=new TextEncoder,Ks=new TextDecoder,ne=class t{constructor(e,r){this.data=e,this.format=r}static arrayBuffer(e){return new t(e,"ArrayBuffer")}static asyncIterable(e){if(!p1(e))throw new TypeError("Input must be of type AsyncIterable.");return new t(e,"AsyncIterable")}static base32Z(e){return new t(e,"Base32Z")}static base58Btc(e){return new t(e,"Base58Btc")}static base64Url(e){return new t(e,"Base64Url")}static bufferSource(e){return new t(e,"BufferSource")}static hex(e){if(typeof e!="string")throw new TypeError("Hex input must be a string.");if(e.length%2!==0)throw new TypeError("Hex input must have an even number of characters.");return new t(e,"Hex")}static multibase(e){return new t(e,"Multibase")}static object(e){return new t(e,"Object")}static string(e){return new t(e,"String")}static uint8Array(e){return new t(e,"Uint8Array")}toArrayBuffer(){switch(this.format){case"Base58Btc":return yr.baseDecode(this.data).buffer;case"Base64Url":return Xn.baseDecode(this.data).buffer;case"BufferSource":{if(fa(this.data)==="ArrayBuffer")return this.data;if(ArrayBuffer.isView(this.data))return h1(this.data)?this.data.buffer.slice(this.data.byteOffset,this.data.byteOffset+this.data.byteLength):this.data.buffer;throw new TypeError(`${this.format} value is not of type: ArrayBuffer, DataView, or TypedArray.`)}case"Hex":return this.toUint8Array().buffer;case"String":return this.toUint8Array().buffer;case"Uint8Array":return this.data.buffer;default:throw new TypeError(`Conversion from ${this.format} to ArrayBuffer is not supported.`)}}toArrayBufferAsync(){return sd(this,void 0,void 0,function*(){switch(this.format){case"AsyncIterable":return yield(yield this.toBlobAsync()).arrayBuffer();default:throw new TypeError(`Asynchronous conversion from ${this.format} to ArrayBuffer is not supported.`)}})}toBase32Z(){switch(this.format){case"Uint8Array":return fg.baseEncode(this.data);default:throw new TypeError(`Conversion from ${this.format} to Base64Z is not supported.`)}}toBase58Btc(){switch(this.format){case"ArrayBuffer":{let e=new Uint8Array(this.data);return yr.baseEncode(e)}case"Multibase":return this.data.substring(1);case"Uint8Array":return yr.baseEncode(this.data);default:throw new TypeError(`Conversion from ${this.format} to Base58Btc is not supported.`)}}toBase64Url(){switch(this.format){case"ArrayBuffer":{let e=new Uint8Array(this.data);return Xn.baseEncode(e)}case"BufferSource":{let e=this.toUint8Array();return Xn.baseEncode(e)}case"Object":{let e=JSON.stringify(this.data),r=Wl.encode(e);return Xn.baseEncode(r)}case"String":{let e=Wl.encode(this.data);return Xn.baseEncode(e)}case"Uint8Array":return Xn.baseEncode(this.data);default:throw new TypeError(`Conversion from ${this.format} to Base64Url is not supported.`)}}toBlobAsync(){return sd(this,void 0,void 0,function*(){var e,r,n,i;switch(this.format){case"AsyncIterable":{let a=[];try{for(var o=!0,s=y1(this.data),c;c=yield s.next(),e=c.done,!e;o=!0){i=c.value,o=!1;let d=i;a.push(d)}}catch(d){r={error:d}}finally{try{!o&&!e&&(n=s.return)&&(yield n.call(s))}finally{if(r)throw r.error}}return new Blob(a)}default:throw new TypeError(`Asynchronous conversion from ${this.format} to Blob is not supported.`)}})}toHex(){let e=Array.from({length:256},(r,n)=>n.toString(16).padStart(2,"0"));switch(this.format){case"ArrayBuffer":{let r=this.toUint8Array();return t.uint8Array(r).toHex()}case"Base64Url":{let r=this.toUint8Array();return t.uint8Array(r).toHex()}case"Uint8Array":{let r="";for(let n=0;n<this.data.length;n++)r+=e[this.data[n]];return r}default:throw new TypeError(`Conversion from ${this.format} to Hex is not supported.`)}}toMultibase(){switch(this.format){case"Base58Btc":return`z${this.data}`;default:throw new TypeError(`Conversion from ${this.format} to Multibase is not supported.`)}}toObject(){switch(this.format){case"Base64Url":{let e=Xn.baseDecode(this.data),r=Ks.decode(e);return JSON.parse(r)}case"String":return JSON.parse(this.data);case"Uint8Array":{let e=Ks.decode(this.data);return JSON.parse(e)}default:throw new TypeError(`Conversion from ${this.format} to Object is not supported.`)}}toObjectAsync(){return sd(this,void 0,void 0,function*(){switch(this.format){case"AsyncIterable":{let e=yield this.toStringAsync();return JSON.parse(e)}default:throw new TypeError(`Asynchronous conversion from ${this.format} to Object is not supported.`)}})}toString(){switch(this.format){case"ArrayBuffer":return Ks.decode(this.data);case"Base64Url":{let e=Xn.baseDecode(this.data);return Ks.decode(e)}case"Object":return JSON.stringify(this.data);case"Uint8Array":return Ks.decode(this.data);default:throw new TypeError(`Conversion from ${this.format} to String is not supported.`)}}toStringAsync(){return sd(this,void 0,void 0,function*(){var e,r,n,i;switch(this.format){case"AsyncIterable":{let a="";try{for(var o=!0,s=y1(this.data),c;c=yield s.next(),e=c.done,!e;o=!0){i=c.value,o=!1;let u=i;typeof u=="string"?a+=u:a+=Ks.decode(u,{stream:!0})}}catch(u){r={error:u}}finally{try{!o&&!e&&(n=s.return)&&(yield n.call(s))}finally{if(r)throw r.error}}return a+=Ks.decode(void 0,{stream:!1}),a}default:throw new TypeError(`Asynchronous conversion from ${this.format} to String is not supported.`)}})}toUint8Array(){switch(this.format){case"ArrayBuffer":return new Uint8Array(this.data);case"Base32Z":return fg.baseDecode(this.data);case"Base58Btc":return yr.baseDecode(this.data);case"Base64Url":return Xn.baseDecode(this.data);case"BufferSource":{let e=fa(this.data);if(e==="Uint8Array")return this.data;if(e==="ArrayBuffer")return new Uint8Array(this.data);if(ArrayBuffer.isView(this.data))return new Uint8Array(this.data.buffer,this.data.byteOffset,this.data.byteLength);throw new TypeError(`${this.format} value is not of type: ArrayBuffer, DataView, or TypedArray.`)}case"Hex":{let e=new Uint8Array(this.data.length/2);for(let r=0;r<this.data.length;r+=2){let n=parseInt(this.data.substring(r,r+2),16);if(isNaN(n))throw new TypeError("Input is not a valid hexadecimal string.");e[r/2]=n}return e}case"Object":{let e=JSON.stringify(this.data);return Wl.encode(e)}case"String":return Wl.encode(this.data);default:throw new TypeError(`Conversion from ${this.format} to Uint8Array is not supported.`)}}toUint8ArrayAsync(){return sd(this,void 0,void 0,function*(){switch(this.format){case"AsyncIterable":{let e=yield this.toArrayBufferAsync();return new Uint8Array(e)}default:throw new TypeError(`Asynchronous conversion from ${this.format} to Uint8Array is not supported.`)}})}};l();var cd;(function(t){t.Debug="debug",t.Silent="silent"})(cd||(cd={}));var lg=class{constructor(){this.logLevel=cd.Silent}setLogLevel(e){this.logLevel=e}log(e){this.info(e)}info(e){this.logLevel!==cd.Silent&&console.info(e)}error(e){this.logLevel!==cd.Silent&&console.error(e)}},T6=new lg;typeof window<"u"&&(window.web5logger=T6);l();l();l();l();var Ki={};Su(Ki,{decode:()=>la,encodeTo:()=>$s,encodingLength:()=>Hs});l();l();var _6=w1,g1=128,I6=127,B6=~I6,R6=Math.pow(2,31);function w1(t,e,r){e=e||[],r=r||0;for(var n=r;t>=R6;)e[r++]=t&255|g1,t/=128;for(;t&B6;)e[r++]=t&255|g1,t>>>=7;return e[r]=t|0,w1.bytes=r-n+1,e}var U6=hg,O6=128,m1=127;function hg(t,n){var r=0,n=n||0,i=0,o=n,s,c=t.length;do{if(o>=c)throw hg.bytes=0,new RangeError("Could not decode varint");s=t[o++],r+=i<28?(s&m1)<<i:(s&m1)*Math.pow(2,i),i+=7}while(s>=O6);return hg.bytes=o-n,r}var D6=Math.pow(2,7),k6=Math.pow(2,14),N6=Math.pow(2,21),C6=Math.pow(2,28),L6=Math.pow(2,35),P6=Math.pow(2,42),M6=Math.pow(2,49),K6=Math.pow(2,56),$6=Math.pow(2,63),H6=function(t){return t<D6?1:t<k6?2:t<N6?3:t<C6?4:t<L6?5:t<P6?6:t<M6?7:t<K6?8:t<$6?9:10},V6={encode:_6,decode:U6,encodingLength:H6},q6=V6,ad=q6;function la(t,e=0){return[ad.decode(t,e),ad.decode.bytes]}function $s(t,e,r=0){return ad.encode(t,e,r),e}function Hs(t){return ad.encodingLength(t)}function pg(t,e){let r=e.byteLength,n=Hs(t),i=n+Hs(r),o=new Uint8Array(i+r);return $s(t,o,0),$s(r,o,n),o.set(e,i),new ha(t,r,e,o)}function b1(t){let e=da(t),[r,n]=la(e),[i,o]=la(e.subarray(n)),s=e.subarray(n+o);if(s.byteLength!==i)throw new Error("Incorrect length");return new ha(r,i,s,e)}function x1(t,e){if(t===e)return!0;{let r=e;return t.code===r.code&&t.size===r.size&&r.bytes instanceof Uint8Array&&u1(t.bytes,r.bytes)}}var ha=class{code;size;digest;bytes;constructor(e,r,n,i){this.code=e,this.size=r,this.digest=n,this.bytes=i}};l();function E1(t,e){let{bytes:r,version:n}=t;switch(n){case 0:return j6(r,gg(t),e??yr.encoder);default:return W6(r,gg(t),e??od.encoder)}}var v1=new WeakMap;function gg(t){let e=v1.get(t);if(e==null){let r=new Map;return v1.set(t,r),r}return e}var mg=class t{code;version;multihash;bytes;"/";constructor(e,r,n,i){this.code=r,this.version=e,this.multihash=n,this.bytes=i,this["/"]=i}get asCID(){return this}get byteOffset(){return this.bytes.byteOffset}get byteLength(){return this.bytes.byteLength}toV0(){switch(this.version){case 0:return this;case 1:{let{code:e,multihash:r}=this;if(e!==ud)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(r.code!==G6)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=pg(e,r);return t.createV1(this.code,n)}case 1:return this;default:throw Error(`Can not convert CID version ${this.version} to version 1. This is a bug please report`)}}equals(e){return t.equals(this,e)}static equals(e,r){let n=r;return n!=null&&e.code===n.code&&e.version===n.version&&x1(e.multihash,n.multihash)}toString(e){return E1(this,e)}toJSON(){return{"/":E1(this)}}link(){return this}[Symbol.toStringTag]="CID";[Symbol.for("nodejs.util.inspect.custom")](){return`CID(${this.toString()})`}static asCID(e){if(e==null)return null;let r=e;if(r instanceof t)return r;if(r["/"]!=null&&r["/"]===r.bytes||r.asCID===r){let{version:n,code:i,multihash:o,bytes:s}=r;return new t(n,i,o,s??S1(n,i,o.bytes))}else if(r[z6]===!0){let{version:n,multihash:i,code:o}=r,s=b1(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!==ud)throw new Error(`Version 0 CID must use dag-pb (code: ${ud}) block encoding`);return new t(e,r,n,n.bytes)}case 1:{let i=S1(e,r,n.bytes);return new t(e,r,n,i)}default:throw new Error("Invalid version")}}static createV0(e){return t.create(0,ud,e)}static createV1(e,r){return t.create(1,e,r)}static decode(e){let[r,n]=t.decodeFirst(e);if(n.length!==0)throw new Error("Incorrect length");return r}static decodeFirst(e){let r=t.inspectBytes(e),n=r.size-r.multihashSize,i=da(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 ha(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[f,h]=la(e.subarray(r));return r+=h,f},i=n(),o=ud;if(i===18?(i=0,r=0):o=n(),i!==0&&i!==1)throw new RangeError(`Invalid CID version ${i}`);let s=r,c=n(),a=n(),u=r+a,d=u-s;return{version:i,codec:o,multihashCode:c,digestSize:a,multihashSize:d,size:u}}static parse(e,r){let[n,i]=F6(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 gg(o).set(n,e),o}};function F6(t,e){switch(t[0]){case"Q":{let r=e??yr;return[yr.prefix,r.decode(`${yr.prefix}${t}`)]}case yr.prefix:{let r=e??yr;return[yr.prefix,r.decode(t)]}case od.prefix:{let r=e??od;return[od.prefix,r.decode(t)]}default:{if(e==null)throw Error("To parse non base32 or base58btc encoded CID multibase decoder must be provided");return[t[0],e.decode(t)]}}}function j6(t,e,r){let{prefix:n}=r;if(n!==yr.prefix)throw Error(`Cannot string encode V0 in ${r.name} encoding`);let i=e.get(n);if(i==null){let o=r.encode(t).slice(1);return e.set(n,o),o}else return i}function W6(t,e,r){let{prefix:n}=r,i=e.get(n);if(i==null){let o=r.encode(t);return e.set(n,o),o}else return i}var ud=112,G6=18;function S1(t,e,r){let n=Hs(t),i=n+Hs(e),o=new Uint8Array(i+r.byteLength);return $s(t,o,0),$s(e,o,n),o.set(r,i),o}var z6=Symbol.for("@ipld/js-cid/CID");l();l();l();l();l();l();var Jt=class t{static addPrefix(e){var r;let{code:n,data:i,name:o}=e;if(!(o?!n:n))throw new Error("Either 'name' or 'code' must be defined, but not both.");if(n=t.codeToName.has(n)?n:t.nameToCode.get(o),n===void 0)throw new Error(`Unsupported multicodec: ${(r=e.name)!==null&&r!==void 0?r:e.code}`);let s=Ki.encodingLength(n),c=new Uint8Array(s+i.byteLength);return c.set(i,s),Ki.encodeTo(n,c),c}static getCodeFromData(e){let{prefixedData:r}=e,[n,i]=Ki.decode(r);return n}static getCodeFromName(e){let{name:r}=e,n=t.nameToCode.get(r);if(n===void 0)throw new Error(`Unsupported multicodec: ${r}`);return n}static getNameFromCode(e){let{code:r}=e,n=t.codeToName.get(r);if(n===void 0)throw new Error(`Unsupported multicodec: ${r}`);return n}static registerCodec(e){t.codeToName.set(e.code,e.name),t.nameToCode.set(e.name,e.code)}static removePrefix(e){let{prefixedData:r}=e,[n,i]=Ki.decode(r),o=t.codeToName.get(n);if(o===void 0)throw new Error(`Unsupported multicodec: ${n}`);return{code:n,data:r.slice(i),name:o}}};Jt.codeToName=new Map;Jt.nameToCode=new Map;Jt.registerCodec({code:237,name:"ed25519-pub"});Jt.registerCodec({code:4864,name:"ed25519-priv"});Jt.registerCodec({code:236,name:"x25519-pub"});Jt.registerCodec({code:4866,name:"x25519-priv"});Jt.registerCodec({code:231,name:"secp256k1-pub"});Jt.registerCodec({code:4865,name:"secp256k1-priv"});l();function wg(t){Object.keys(t).forEach(e=>{t[e]===void 0?delete t[e]:typeof t[e]=="object"&&wg(t[e])})}l();var tO=Mn(dm(),1),rc=function(t,e,r,n){function i(o){return o instanceof r?o:new r(function(s){s(o)})}return new(r||(r=Promise))(function(o,s){function c(d){try{u(n.next(d))}catch(f){s(f)}}function a(d){try{u(n.throw(d))}catch(f){s(f)}}function u(d){d.done?o(d.value):i(d.value).then(c,a)}u((n=n.apply(t,e||[])).next())})};var xh=class{constructor(){this.store=new Map}clear(){return rc(this,void 0,void 0,function*(){this.store.clear()})}close(){return rc(this,void 0,void 0,function*(){})}delete(e){return rc(this,void 0,void 0,function*(){return this.store.delete(e)})}get(e){return rc(this,void 0,void 0,function*(){return this.store.get(e)})}has(e){return rc(this,void 0,void 0,function*(){return this.store.has(e)})}list(){return rc(this,void 0,void 0,function*(){return Array.from(this.store.values())})}set(e,r){return rc(this,void 0,void 0,function*(){this.store.set(e,r)})}};l();l();var w4=Mn(vw(),1);var b4=Mn(vw(),1);l();l();l();l();l();function x4(t){return t instanceof Uint8Array||t!=null&&typeof t=="object"&&t.constructor.name==="Uint8Array"}function Sw(t,...e){if(!x4(t))throw new Error("Uint8Array expected");if(e.length>0&&!e.includes(t.length))throw new Error(`Uint8Array expected of length ${e}, not of length=${t.length}`)}function Aw(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 UT(t,e){Sw(t);let r=e.outputLen;if(t.length<r)throw new Error(`digestInto() expects output buffer of length at least ${r}`)}l();l();var Ka=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;var Qh=t=>new DataView(t.buffer,t.byteOffset,t.byteLength),In=(t,e)=>t<<32-e|t>>>e;var Vj=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;function E4(t){if(typeof t!="string")throw new Error(`utf8ToBytes expected string, got ${typeof t}`);return new Uint8Array(new TextEncoder().encode(t))}function Tw(t){return typeof t=="string"&&(t=E4(t)),Sw(t),t}var Zh=class{clone(){return this._cloneInto()}},qj={}.toString;function OT(t){let e=n=>t().update(Tw(n)).digest(),r=t();return e.outputLen=r.outputLen,e.blockLen=r.blockLen,e.create=()=>t(),e}function DT(t=32){if(Ka&&typeof Ka.getRandomValues=="function")return Ka.getRandomValues(new Uint8Array(t));throw new Error("crypto.getRandomValues must be defined")}function v4(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),c=Number(r&o),a=n?4:0,u=n?0:4;t.setUint32(e+a,s,n),t.setUint32(e+u,c,n)}var kT=(t,e,r)=>t&e^~t&r,NT=(t,e,r)=>t&e^t&r^e&r,ep=class extends Zh{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=Qh(this.buffer)}update(e){Aw(this);let{view:r,buffer:n,blockLen:i}=this;e=Tw(e);let o=e.length;for(let s=0;s<o;){let c=Math.min(i-this.pos,o-s);if(c===i){let a=Qh(e);for(;i<=o-s;s+=i)this.process(a,s);continue}n.set(e.subarray(s,s+c),this.pos),this.pos+=c,s+=c,this.pos===i&&(this.process(r,0),this.pos=0)}return this.length+=e.length,this.roundClean(),this}digestInto(e){Aw(this),UT(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 f=s;f<i;f++)r[f]=0;v4(n,i-8,BigInt(this.length*8),o),this.process(n,0);let c=Qh(e),a=this.outputLen;if(a%4)throw new Error("_sha2: outputLen should be aligned to 32bit");let u=a/4,d=this.get();if(u>d.length)throw new Error("_sha2: outputLen bigger than state");for(let f=0;f<u;f++)c.setUint32(4*f,d[f],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:c}=this;return e.length=i,e.pos=c,e.finished=o,e.destroyed=s,i%r&&e.buffer.set(n),e}};var S4=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]),Go=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),zo=new Uint32Array(64),_w=class extends ep{constructor(){super(64,32,8,!1),this.A=Go[0]|0,this.B=Go[1]|0,this.C=Go[2]|0,this.D=Go[3]|0,this.E=Go[4]|0,this.F=Go[5]|0,this.G=Go[6]|0,this.H=Go[7]|0}get(){let{A:e,B:r,C:n,D:i,E:o,F:s,G:c,H:a}=this;return[e,r,n,i,o,s,c,a]}set(e,r,n,i,o,s,c,a){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=c|0,this.H=a|0}process(e,r){for(let f=0;f<16;f++,r+=4)zo[f]=e.getUint32(r,!1);for(let f=16;f<64;f++){let h=zo[f-15],p=zo[f-2],y=In(h,7)^In(h,18)^h>>>3,g=In(p,17)^In(p,19)^p>>>10;zo[f]=g+zo[f-7]+y+zo[f-16]|0}let{A:n,B:i,C:o,D:s,E:c,F:a,G:u,H:d}=this;for(let f=0;f<64;f++){let h=In(c,6)^In(c,11)^In(c,25),p=d+h+kT(c,a,u)+S4[f]+zo[f]|0,g=(In(n,2)^In(n,13)^In(n,22))+NT(n,i,o)|0;d=u,u=a,a=c,c=s+p|0,s=o,o=i,i=n,n=p+g|0}n=n+this.A|0,i=i+this.B|0,o=o+this.C|0,s=s+this.D|0,c=c+this.E|0,a=a+this.F|0,u=u+this.G|0,d=d+this.H|0,this.set(n,i,o,s,c,a,u,d)}roundClean(){zo.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}};var Yo=OT(()=>new _w);var A4=function(t,e,r,n){function i(o){return o instanceof r?o:new r(function(s){s(o)})}return new(r||(r=Promise))(function(o,s){function c(d){try{u(n.next(d))}catch(f){s(f)}}function a(d){try{u(n.throw(d))}catch(f){s(f)}}function u(d){d.done?o(d.value):i(d.value).then(c,a)}u((n=n.apply(t,e||[])).next())})},$a=class{static digest(e){return A4(this,arguments,void 0,function*({data:r}){return Yo(r)})}};l();var ci=class{};var T4=function(t,e,r,n){function i(o){return o instanceof r?o:new r(function(s){s(o)})}return new(r||(r=Promise))(function(o,s){function c(d){try{u(n.next(d))}catch(f){s(f)}}function a(d){try{u(n.throw(d))}catch(f){s(f)}}function u(d){d.done?o(d.value):i(d.value).then(c,a)}u((n=n.apply(t,e||[])).next())})},tp=class extends ci{digest(e){return T4(this,arguments,void 0,function*({algorithm:r,data:n}){switch(r){case"SHA-256":return yield $a.digest({data:n})}})}};l();l();l();l();l();l();function CT(t){if(!Number.isSafeInteger(t)||t<0)throw new Error(`Wrong positive integer: ${t}`)}function _4(t){return t instanceof Uint8Array||t!=null&&typeof t=="object"&&t.constructor.name==="Uint8Array"}function Iw(t,...e){if(!_4(t))throw new Error("Expected Uint8Array");if(e.length>0&&!e.includes(t.length))throw new Error(`Expected Uint8Array of length ${e}, not of length=${t.length}`)}function LT(t){if(typeof t!="function"||typeof t.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");CT(t.outputLen),CT(t.blockLen)}function Ha(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 PT(t,e){Iw(t);let r=e.outputLen;if(t.length<r)throw new Error(`digestInto() expects output buffer of length at least ${r}`)}l();l();var rp=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;function MT(t){return t instanceof Uint8Array||t!=null&&typeof t=="object"&&t.constructor.name==="Uint8Array"}var np=t=>new DataView(t.buffer,t.byteOffset,t.byteLength),Bn=(t,e)=>t<<32-e|t>>>e,I4=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!I4)throw new Error("Non little-endian hardware is not supported");function Bw(t){if(typeof t!="string")throw new Error(`utf8ToBytes expected string, got ${typeof t}`);return new Uint8Array(new TextEncoder().encode(t))}function Vd(t){if(typeof t=="string"&&(t=Bw(t)),!MT(t))throw new Error(`expected Uint8Array, got ${typeof t}`);return t}function ip(...t){let e=0;for(let n=0;n<t.length;n++){let i=t[n];if(!MT(i))throw new Error("Uint8Array expected");e+=i.length}let r=new Uint8Array(e);for(let n=0,i=0;n<t.length;n++){let o=t[n];r.set(o,i),i+=o.length}return r}var Va=class{clone(){return this._cloneInto()}},pW={}.toString;function op(t){let e=n=>t().update(Vd(n)).digest(),r=t();return e.outputLen=r.outputLen,e.blockLen=r.blockLen,e.create=()=>t(),e}function qd(t=32){if(rp&&typeof rp.getRandomValues=="function")return rp.getRandomValues(new Uint8Array(t));throw new Error("crypto.getRandomValues must be defined")}function B4(t,e,r,n){if(typeof t.setBigUint64=="function")return t.setBigUint64(e,r,n);let i=BigInt(32),o=BigInt(4294967295),s=Number(r>>i&o),c=Number(r&o),a=n?4:0,u=n?0:4;t.setUint32(e+a,s,n),t.setUint32(e+u,c,n)}var qa=class extends Va{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=np(this.buffer)}update(e){Ha(this);let{view:r,buffer:n,blockLen:i}=this;e=Vd(e);let o=e.length;for(let s=0;s<o;){let c=Math.min(i-this.pos,o-s);if(c===i){let a=np(e);for(;i<=o-s;s+=i)this.process(a,s);continue}n.set(e.subarray(s,s+c),this.pos),this.pos+=c,s+=c,this.pos===i&&(this.process(r,0),this.pos=0)}return this.length+=e.length,this.roundClean(),this}digestInto(e){Ha(this),PT(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 f=s;f<i;f++)r[f]=0;B4(n,i-8,BigInt(this.length*8),o),this.process(n,0);let c=np(e),a=this.outputLen;if(a%4)throw new Error("_sha2: outputLen should be aligned to 32bit");let u=a/4,d=this.get();if(u>d.length)throw new Error("_sha2: outputLen bigger than state");for(let f=0;f<u;f++)c.setUint32(4*f,d[f],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:c}=this;return e.length=i,e.pos=c,e.finished=o,e.destroyed=s,i%r&&e.buffer.set(n),e}};var R4=(t,e,r)=>t&e^~t&r,U4=(t,e,r)=>t&e^t&r^e&r,O4=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]),Jo=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),Xo=new Uint32Array(64),Rw=class extends qa{constructor(){super(64,32,8,!1),this.A=Jo[0]|0,this.B=Jo[1]|0,this.C=Jo[2]|0,this.D=Jo[3]|0,this.E=Jo[4]|0,this.F=Jo[5]|0,this.G=Jo[6]|0,this.H=Jo[7]|0}get(){let{A:e,B:r,C:n,D:i,E:o,F:s,G:c,H:a}=this;return[e,r,n,i,o,s,c,a]}set(e,r,n,i,o,s,c,a){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=c|0,this.H=a|0}process(e,r){for(let f=0;f<16;f++,r+=4)Xo[f]=e.getUint32(r,!1);for(let f=16;f<64;f++){let h=Xo[f-15],p=Xo[f-2],y=Bn(h,7)^Bn(h,18)^h>>>3,g=Bn(p,17)^Bn(p,19)^p>>>10;Xo[f]=g+Xo[f-7]+y+Xo[f-16]|0}let{A:n,B:i,C:o,D:s,E:c,F:a,G:u,H:d}=this;for(let f=0;f<64;f++){let h=Bn(c,6)^Bn(c,11)^Bn(c,25),p=d+h+R4(c,a,u)+O4[f]+Xo[f]|0,g=(Bn(n,2)^Bn(n,13)^Bn(n,22))+U4(n,i,o)|0;d=u,u=a,a=c,c=s+p|0,s=o,o=i,i=n,n=p+g|0}n=n+this.A|0,i=i+this.B|0,o=o+this.C|0,s=s+this.D|0,c=c+this.E|0,a=a+this.F|0,u=u+this.G|0,d=d+this.H|0,this.set(n,i,o,s,c,a,u,d)}roundClean(){Xo.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}};var sp=op(()=>new Rw);l();var ap={};Su(ap,{bitGet:()=>M4,bitLen:()=>P4,bitMask:()=>Fd,bitSet:()=>K4,bytesToHex:()=>Zi,bytesToNumberBE:()=>Qi,bytesToNumberLE:()=>Un,concatBytes:()=>to,createHmacDrbg:()=>Dw,ensureBytes:()=>Ge,equalBytes:()=>C4,hexToBytes:()=>pc,hexToNumber:()=>Ow,isBytes:()=>Rn,numberToBytesBE:()=>mr,numberToBytesLE:()=>eo,numberToHexUnpadded:()=>VT,numberToVarBytesBE:()=>N4,utf8ToBytes:()=>L4,validateObject:()=>sn});l();var HT=BigInt(0),cp=BigInt(1),D4=BigInt(2);function Rn(t){return t instanceof Uint8Array||t!=null&&typeof t=="object"&&t.constructor.name==="Uint8Array"}var k4=Array.from({length:256},(t,e)=>e.toString(16).padStart(2,"0"));function Zi(t){if(!Rn(t))throw new Error("Uint8Array expected");let e="";for(let r=0;r<t.length;r++)e+=k4[t[r]];return e}function VT(t){let e=t.toString(16);return e.length&1?`0${e}`:e}function Ow(t){if(typeof t!="string")throw new Error("hex string expected, got "+typeof t);return BigInt(t===""?"0":`0x${t}`)}var Xi={_0:48,_9:57,_A:65,_F:70,_a:97,_f:102};function KT(t){if(t>=Xi._0&&t<=Xi._9)return t-Xi._0;if(t>=Xi._A&&t<=Xi._F)return t-(Xi._A-10);if(t>=Xi._a&&t<=Xi._f)return t-(Xi._a-10)}function pc(t){if(typeof t!="string")throw new Error("hex string expected, got "+typeof t);let e=t.length,r=e/2;if(e%2)throw new Error("padded hex string expected, got unpadded hex of length "+e);let n=new Uint8Array(r);for(let i=0,o=0;i<r;i++,o+=2){let s=KT(t.charCodeAt(o)),c=KT(t.charCodeAt(o+1));if(s===void 0||c===void 0){let a=t[o]+t[o+1];throw new Error('hex string expected, got non-hex character "'+a+'" at index '+o)}n[i]=s*16+c}return n}function Qi(t){return Ow(Zi(t))}function Un(t){if(!Rn(t))throw new Error("Uint8Array expected");return Ow(Zi(Uint8Array.from(t).reverse()))}function mr(t,e){return pc(t.toString(16).padStart(e*2,"0"))}function eo(t,e){return mr(t,e).reverse()}function N4(t){return pc(VT(t))}function Ge(t,e,r){let n;if(typeof e=="string")try{n=pc(e)}catch(o){throw new Error(`${t} must be valid hex string, got "${e}". Cause: ${o}`)}else if(Rn(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 to(...t){let e=0;for(let i=0;i<t.length;i++){let o=t[i];if(!Rn(o))throw new Error("Uint8Array expected");e+=o.length}let r=new Uint8Array(e),n=0;for(let i=0;i<t.length;i++){let o=t[i];r.set(o,n),n+=o.length}return r}function C4(t,e){if(t.length!==e.length)return!1;let r=0;for(let n=0;n<t.length;n++)r|=t[n]^e[n];return r===0}function L4(t){if(typeof t!="string")throw new Error(`utf8ToBytes expected string, got ${typeof t}`);return new Uint8Array(new TextEncoder().encode(t))}function P4(t){let e;for(e=0;t>HT;t>>=cp,e+=1);return e}function M4(t,e){return t>>BigInt(e)&cp}var K4=(t,e,r)=>t|(r?cp:HT)<<BigInt(e),Fd=t=>(D4<<BigInt(t-1))-cp,Uw=t=>new Uint8Array(t),$T=t=>Uint8Array.from(t);function Dw(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=Uw(t),i=Uw(t),o=0,s=()=>{n.fill(1),i.fill(0),o=0},c=(...f)=>r(i,n,...f),a=(f=Uw())=>{i=c($T([0]),f),n=c(),f.length!==0&&(i=c($T([1]),f),n=c())},u=()=>{if(o++>=1e3)throw new Error("drbg: tried 1000 values");let f=0,h=[];for(;f<e;){n=c();let p=n.slice();h.push(p),f+=n.length}return to(...h)};return(f,h)=>{s(),a(f);let p;for(;!(p=h(u()));)a();return s(),p}}var $4={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"||Rn(t),isSafeInteger:t=>Number.isSafeInteger(t),array:t=>Array.isArray(t),field:(t,e)=>e.Fp.isValid(t),hash:t=>typeof t=="function"&&Number.isSafeInteger(t.outputLen)};function sn(t,e,r={}){let n=(i,o,s)=>{let c=$4[o];if(typeof c!="function")throw new Error(`Invalid validator "${o}", expected function`);let a=t[i];if(!(s&&a===void 0)&&!c(a,t))throw new Error(`Invalid param ${String(i)}=${a} (${typeof a}), 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 It=BigInt(0),et=BigInt(1),yc=BigInt(2),H4=BigInt(3),kw=BigInt(4),qT=BigInt(5),FT=BigInt(8),V4=BigInt(9),q4=BigInt(16);function Re(t,e){let r=t%e;return r>=It?r:e+r}function Nw(t,e,r){if(r<=It||e<It)throw new Error("Expected power/modulo > 0");if(r===et)return It;let n=et;for(;e>It;)e&et&&(n=n*t%r),t=t*t%r,e>>=et;return n}function ze(t,e,r){let n=t;for(;e-- >It;)n*=n,n%=r;return n}function up(t,e){if(t===It||e<=It)throw new Error(`invert: expected positive integers, got n=${t} mod=${e}`);let r=Re(t,e),n=e,i=It,o=et,s=et,c=It;for(;r!==It;){let u=n/r,d=n%r,f=i-s*u,h=o-c*u;n=r,r=d,i=s,o=c,s=f,c=h}if(n!==et)throw new Error("invert: does not exist");return Re(i,e)}function F4(t){let e=(t-et)/yc,r,n,i;for(r=t-et,n=0;r%yc===It;r/=yc,n++);for(i=yc;i<t&&Nw(i,e,t)!==t-et;i++);if(n===1){let s=(t+et)/kw;return function(a,u){let d=a.pow(u,s);if(!a.eql(a.sqr(d),u))throw new Error("Cannot find square root");return d}}let o=(r+et)/yc;return function(c,a){if(c.pow(a,e)===c.neg(c.ONE))throw new Error("Cannot find square root");let u=n,d=c.pow(c.mul(c.ONE,i),r),f=c.pow(a,o),h=c.pow(a,r);for(;!c.eql(h,c.ONE);){if(c.eql(h,c.ZERO))return c.ZERO;let p=1;for(let g=c.sqr(h);p<u&&!c.eql(g,c.ONE);p++)g=c.sqr(g);let y=c.pow(d,et<<BigInt(u-p-1));d=c.sqr(y),f=c.mul(f,y),h=c.mul(h,d),u=p}return f}}function j4(t){if(t%kw===H4){let e=(t+et)/kw;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%FT===qT){let e=(t-qT)/FT;return function(n,i){let o=n.mul(i,yc),s=n.pow(o,e),c=n.mul(i,s),a=n.mul(n.mul(c,yc),s),u=n.mul(c,n.sub(a,n.ONE));if(!n.eql(n.sqr(u),i))throw new Error("Cannot find square root");return u}}return t%q4,F4(t)}var jT=(t,e)=>(Re(t,e)&et)===et,W4=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function Cw(t){let e={ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"},r=W4.reduce((n,i)=>(n[i]="function",n),e);return sn(t,r)}function G4(t,e,r){if(r<It)throw new Error("Expected power > 0");if(r===It)return t.ONE;if(r===et)return e;let n=t.ONE,i=e;for(;r>It;)r&et&&(n=t.mul(n,i)),i=t.sqr(i),r>>=et;return n}function z4(t,e){let r=new Array(e.length),n=e.reduce((o,s,c)=>t.is0(s)?o:(r[c]=o,t.mul(o,s)),t.ONE),i=t.inv(n);return e.reduceRight((o,s,c)=>t.is0(s)?o:(r[c]=t.mul(o,r[c]),t.mul(o,s)),i),r}function Lw(t,e){let r=e!==void 0?e:t.toString(2).length,n=Math.ceil(r/8);return{nBitLength:r,nByteLength:n}}function Fa(t,e,r=!1,n={}){if(t<=It)throw new Error(`Expected Field ORDER > 0, got ${t}`);let{nBitLength:i,nByteLength:o}=Lw(t,e);if(o>2048)throw new Error("Field lengths over 2048 bytes are not supported");let s=j4(t),c=Object.freeze({ORDER:t,BITS:i,BYTES:o,MASK:Fd(i),ZERO:It,ONE:et,create:a=>Re(a,t),isValid:a=>{if(typeof a!="bigint")throw new Error(`Invalid field element: expected bigint, got ${typeof a}`);return It<=a&&a<t},is0:a=>a===It,isOdd:a=>(a&et)===et,neg:a=>Re(-a,t),eql:(a,u)=>a===u,sqr:a=>Re(a*a,t),add:(a,u)=>Re(a+u,t),sub:(a,u)=>Re(a-u,t),mul:(a,u)=>Re(a*u,t),pow:(a,u)=>G4(c,a,u),div:(a,u)=>Re(a*up(u,t),t),sqrN:a=>a*a,addN:(a,u)=>a+u,subN:(a,u)=>a-u,mulN:(a,u)=>a*u,inv:a=>up(a,t),sqrt:n.sqrt||(a=>s(c,a)),invertBatch:a=>z4(c,a),cmov:(a,u,d)=>d?u:a,toBytes:a=>r?eo(a,o):mr(a,o),fromBytes:a=>{if(a.length!==o)throw new Error(`Fp.fromBytes: expected ${o}, got ${a.length}`);return r?Un(a):Qi(a)}});return Object.freeze(c)}function WT(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 GT(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 Pw(t){let e=GT(t);return e+Math.ceil(e/2)}function zT(t,e,r=!1){let n=t.length,i=GT(e),o=Pw(e);if(n<16||n<o||n>1024)throw new Error(`expected ${o}-1024 bytes of input, got ${n}`);let s=r?Qi(t):Un(t),c=Re(s,e-et)+et;return r?eo(c,i):mr(c,i)}l();l();var J4=BigInt(0),Mw=BigInt(1);function dp(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,c=i;for(;o>J4;)o&Mw&&(s=s.add(c)),c=c.double(),o>>=Mw;return s},precomputeWindow(i,o){let{windows:s,windowSize:c}=n(o),a=[],u=i,d=u;for(let f=0;f<s;f++){d=u,a.push(d);for(let h=1;h<c;h++)d=d.add(u),a.push(d);u=d.double()}return a},wNAF(i,o,s){let{windows:c,windowSize:a}=n(i),u=t.ZERO,d=t.BASE,f=BigInt(2**i-1),h=2**i,p=BigInt(i);for(let y=0;y<c;y++){let g=y*a,x=Number(s&f);s>>=p,x>a&&(x-=h,s+=Mw);let S=g,_=g+Math.abs(x)-1,A=y%2!==0,O=x<0;x===0?d=d.add(r(A,o[S])):u=u.add(r(O,o[_]))}return{p:u,f:d}},wNAFCached(i,o,s,c){let a=i._WINDOW_SIZE||1,u=o.get(i);return u||(u=this.precomputeWindow(i,a),a!==1&&o.set(i,c(u))),this.wNAF(a,u,s)}}}function jd(t){return Cw(t.Fp),sn(t,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...Lw(t.n,t.nBitLength),...t,p:t.Fp.ORDER})}function X4(t){let e=jd(t);sn(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:Z4,hexToBytes:Q4}=ap,gc={Err:class extends Error{constructor(e=""){super(e)}},_parseInt(t){let{Err:e}=gc;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:Z4(n),l:t.subarray(r+2)}},toSig(t){let{Err:e}=gc,r=typeof t=="string"?Q4(t):t;if(!Rn(r))throw new Error("ui8a expected");let n=r.length;if(n<2||r[0]!=48)throw new e("Invalid signature tag");if(r[1]!==n-2)throw new e("Invalid signature: incorrect length");let{d:i,l:o}=gc._parseInt(r.subarray(2)),{d:s,l:c}=gc._parseInt(o);if(c.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 d=u.toString(16);return d.length&1?`0${d}`:d},n=e(r(t.s)),i=e(r(t.r)),o=n.length/2,s=i.length/2,c=r(o),a=r(s);return`30${r(s+o+4)}02${a}${i}02${c}${n}`}},ro=BigInt(0),cn=BigInt(1),CW=BigInt(2),YT=BigInt(3),LW=BigInt(4);function eN(t){let e=X4(t),{Fp:r}=e,n=e.toBytes||((y,g,x)=>{let S=g.toAffine();return to(Uint8Array.from([4]),r.toBytes(S.x),r.toBytes(S.y))}),i=e.fromBytes||(y=>{let g=y.subarray(1),x=r.fromBytes(g.subarray(0,r.BYTES)),S=r.fromBytes(g.subarray(r.BYTES,2*r.BYTES));return{x,y:S}});function o(y){let{a:g,b:x}=e,S=r.sqr(y),_=r.mul(S,y);return r.add(r.add(_,r.mul(y,g)),x)}if(!r.eql(r.sqr(e.Gy),o(e.Gx)))throw new Error("bad generator point: equation left != right");function s(y){return typeof y=="bigint"&&ro<y&&y<e.n}function c(y){if(!s(y))throw new Error("Expected valid bigint: 0 < bigint < curve.n")}function a(y){let{allowedPrivateKeyLengths:g,nByteLength:x,wrapPrivateKey:S,n:_}=e;if(g&&typeof y!="bigint"){if(Rn(y)&&(y=Zi(y)),typeof y!="string"||!g.includes(y.length))throw new Error("Invalid key");y=y.padStart(x*2,"0")}let A;try{A=typeof y=="bigint"?y:Qi(Ge("private key",y,x))}catch{throw new Error(`private key must be ${x} bytes, hex or bigint, not ${typeof y}`)}return S&&(A=Re(A,_)),c(A),A}let u=new Map;function d(y){if(!(y instanceof f))throw new Error("ProjectivePoint expected")}class f{constructor(g,x,S){if(this.px=g,this.py=x,this.pz=S,g==null||!r.isValid(g))throw new Error("x required");if(x==null||!r.isValid(x))throw new Error("y required");if(S==null||!r.isValid(S))throw new Error("z required")}static fromAffine(g){let{x,y:S}=g||{};if(!g||!r.isValid(x)||!r.isValid(S))throw new Error("invalid affine point");if(g instanceof f)throw new Error("projective point not allowed");let _=A=>r.eql(A,r.ZERO);return _(x)&&_(S)?f.ZERO:new f(x,S,r.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ(g){let x=r.invertBatch(g.map(S=>S.pz));return g.map((S,_)=>S.toAffine(x[_])).map(f.fromAffine)}static fromHex(g){let x=f.fromAffine(i(Ge("pointHex",g)));return x.assertValidity(),x}static fromPrivateKey(g){return f.BASE.multiply(a(g))}_setWindowSize(g){this._WINDOW_SIZE=g,u.delete(this)}assertValidity(){if(this.is0()){if(e.allowInfinityPoint&&!r.is0(this.py))return;throw new Error("bad point: ZERO")}let{x:g,y:x}=this.toAffine();if(!r.isValid(g)||!r.isValid(x))throw new Error("bad point: x or y not FE");let S=r.sqr(x),_=o(g);if(!r.eql(S,_))throw new Error("bad point: equation left != right");if(!this.isTorsionFree())throw new Error("bad point: not in prime-order subgroup")}hasEvenY(){let{y:g}=this.toAffine();if(r.isOdd)return!r.isOdd(g);throw new Error("Field doesn't support isOdd")}equals(g){d(g);let{px:x,py:S,pz:_}=this,{px:A,py:O,pz:T}=g,M=r.eql(r.mul(x,T),r.mul(A,_)),q=r.eql(r.mul(S,T),r.mul(O,_));return M&&q}negate(){return new f(this.px,r.neg(this.py),this.pz)}double(){let{a:g,b:x}=e,S=r.mul(x,YT),{px:_,py:A,pz:O}=this,T=r.ZERO,M=r.ZERO,q=r.ZERO,j=r.mul(_,_),$=r.mul(A,A),Z=r.mul(O,O),Q=r.mul(_,A);return Q=r.add(Q,Q),q=r.mul(_,O),q=r.add(q,q),T=r.mul(g,q),M=r.mul(S,Z),M=r.add(T,M),T=r.sub($,M),M=r.add($,M),M=r.mul(T,M),T=r.mul(Q,T),q=r.mul(S,q),Z=r.mul(g,Z),Q=r.sub(j,Z),Q=r.mul(g,Q),Q=r.add(Q,q),q=r.add(j,j),j=r.add(q,j),j=r.add(j,Z),j=r.mul(j,Q),M=r.add(M,j),Z=r.mul(A,O),Z=r.add(Z,Z),j=r.mul(Z,Q),T=r.sub(T,j),q=r.mul(Z,$),q=r.add(q,q),q=r.add(q,q),new f(T,M,q)}add(g){d(g);let{px:x,py:S,pz:_}=this,{px:A,py:O,pz:T}=g,M=r.ZERO,q=r.ZERO,j=r.ZERO,$=e.a,Z=r.mul(e.b,YT),Q=r.mul(x,A),G=r.mul(S,O),I=r.mul(_,T),D=r.add(x,S),E=r.add(A,O);D=r.mul(D,E),E=r.add(Q,G),D=r.sub(D,E),E=r.add(x,_);let U=r.add(A,T);return E=r.mul(E,U),U=r.add(Q,I),E=r.sub(E,U),U=r.add(S,_),M=r.add(O,T),U=r.mul(U,M),M=r.add(G,I),U=r.sub(U,M),j=r.mul($,E),M=r.mul(Z,I),j=r.add(M,j),M=r.sub(G,j),j=r.add(G,j),q=r.mul(M,j),G=r.add(Q,Q),G=r.add(G,Q),I=r.mul($,I),E=r.mul(Z,E),G=r.add(G,I),I=r.sub(Q,I),I=r.mul($,I),E=r.add(E,I),Q=r.mul(G,E),q=r.add(q,Q),Q=r.mul(U,E),M=r.mul(D,M),M=r.sub(M,Q),Q=r.mul(D,G),j=r.mul(U,j),j=r.add(j,Q),new f(M,q,j)}subtract(g){return this.add(g.negate())}is0(){return this.equals(f.ZERO)}wNAF(g){return p.wNAFCached(this,u,g,x=>{let S=r.invertBatch(x.map(_=>_.pz));return x.map((_,A)=>_.toAffine(S[A])).map(f.fromAffine)})}multiplyUnsafe(g){let x=f.ZERO;if(g===ro)return x;if(c(g),g===cn)return this;let{endo:S}=e;if(!S)return p.unsafeLadder(this,g);let{k1neg:_,k1:A,k2neg:O,k2:T}=S.splitScalar(g),M=x,q=x,j=this;for(;A>ro||T>ro;)A&cn&&(M=M.add(j)),T&cn&&(q=q.add(j)),j=j.double(),A>>=cn,T>>=cn;return _&&(M=M.negate()),O&&(q=q.negate()),q=new f(r.mul(q.px,S.beta),q.py,q.pz),M.add(q)}multiply(g){c(g);let x=g,S,_,{endo:A}=e;if(A){let{k1neg:O,k1:T,k2neg:M,k2:q}=A.splitScalar(x),{p:j,f:$}=this.wNAF(T),{p:Z,f:Q}=this.wNAF(q);j=p.constTimeNegate(O,j),Z=p.constTimeNegate(M,Z),Z=new f(r.mul(Z.px,A.beta),Z.py,Z.pz),S=j.add(Z),_=$.add(Q)}else{let{p:O,f:T}=this.wNAF(x);S=O,_=T}return f.normalizeZ([S,_])[0]}multiplyAndAddUnsafe(g,x,S){let _=f.BASE,A=(T,M)=>M===ro||M===cn||!T.equals(_)?T.multiplyUnsafe(M):T.multiply(M),O=A(this,x).add(A(g,S));return O.is0()?void 0:O}toAffine(g){let{px:x,py:S,pz:_}=this,A=this.is0();g==null&&(g=A?r.ONE:r.inv(_));let O=r.mul(x,g),T=r.mul(S,g),M=r.mul(_,g);if(A)return{x:r.ZERO,y:r.ZERO};if(!r.eql(M,r.ONE))throw new Error("invZ was invalid");return{x:O,y:T}}isTorsionFree(){let{h:g,isTorsionFree:x}=e;if(g===cn)return!0;if(x)return x(f,this);throw new Error("isTorsionFree() has not been declared for the elliptic curve")}clearCofactor(){let{h:g,clearCofactor:x}=e;return g===cn?this:x?x(f,this):this.multiplyUnsafe(e.h)}toRawBytes(g=!0){return this.assertValidity(),n(f,this,g)}toHex(g=!0){return Zi(this.toRawBytes(g))}}f.BASE=new f(e.Gx,e.Gy,r.ONE),f.ZERO=new f(r.ZERO,r.ONE,r.ZERO);let h=e.nBitLength,p=dp(f,e.endo?Math.ceil(h/2):h);return{CURVE:e,ProjectivePoint:f,normPrivateKeyToScalar:a,weierstrassEquation:o,isWithinCurveOrder:s}}function tN(t){let e=jd(t);return sn(e,{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze({lowS:!0,...e})}function JT(t){let e=tN(t),{Fp:r,n}=e,i=r.BYTES+1,o=2*r.BYTES+1;function s(E){return ro<E&&E<r.ORDER}function c(E){return Re(E,n)}function a(E){return up(E,n)}let{ProjectivePoint:u,normPrivateKeyToScalar:d,weierstrassEquation:f,isWithinCurveOrder:h}=eN({...e,toBytes(E,U,L){let N=U.toAffine(),R=r.toBytes(N.x),C=to;return L?C(Uint8Array.from([U.hasEvenY()?2:3]),R):C(Uint8Array.from([4]),R,r.toBytes(N.y))},fromBytes(E){let U=E.length,L=E[0],N=E.subarray(1);if(U===i&&(L===2||L===3)){let R=Qi(N);if(!s(R))throw new Error("Point is not on curve");let C=f(R),P=r.sqrt(C),V=(P&cn)===cn;return(L&1)===1!==V&&(P=r.neg(P)),{x:R,y:P}}else if(U===o&&L===4){let R=r.fromBytes(N.subarray(0,r.BYTES)),C=r.fromBytes(N.subarray(r.BYTES,2*r.BYTES));return{x:R,y:C}}else throw new Error(`Point of length ${U} was invalid. Expected ${i} compressed bytes or ${o} uncompressed bytes`)}}),p=E=>Zi(mr(E,e.nByteLength));function y(E){let U=n>>cn;return E>U}function g(E){return y(E)?c(-E):E}let x=(E,U,L)=>Qi(E.slice(U,L));class S{constructor(U,L,N){this.r=U,this.s=L,this.recovery=N,this.assertValidity()}static fromCompact(U){let L=e.nByteLength;return U=Ge("compactSignature",U,L*2),new S(x(U,0,L),x(U,L,2*L))}static fromDER(U){let{r:L,s:N}=gc.toSig(Ge("DER",U));return new S(L,N)}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(U){return new S(this.r,this.s,U)}recoverPublicKey(U){let{r:L,s:N,recovery:R}=this,C=q(Ge("msgHash",U));if(R==null||![0,1,2,3].includes(R))throw new Error("recovery id invalid");let P=R===2||R===3?L+e.n:L;if(P>=r.ORDER)throw new Error("recovery id 2 or 3 invalid");let V=R&1?"03":"02",J=u.fromHex(V+p(P)),z=a(P),W=c(-C*z),Y=c(N*z),X=u.BASE.multiplyAndAddUnsafe(J,W,Y);if(!X)throw new Error("point at infinify");return X.assertValidity(),X}hasHighS(){return y(this.s)}normalizeS(){return this.hasHighS()?new S(this.r,c(-this.s),this.recovery):this}toDERRawBytes(){return pc(this.toDERHex())}toDERHex(){return gc.hexFromSig({r:this.r,s:this.s})}toCompactRawBytes(){return pc(this.toCompactHex())}toCompactHex(){return p(this.r)+p(this.s)}}let _={isValidPrivateKey(E){try{return d(E),!0}catch{return!1}},normPrivateKeyToScalar:d,randomPrivateKey:()=>{let E=Pw(e.n);return zT(e.randomBytes(E),e.n)},precompute(E=8,U=u.BASE){return U._setWindowSize(E),U.multiply(BigInt(3)),U}};function A(E,U=!0){return u.fromPrivateKey(E).toRawBytes(U)}function O(E){let U=Rn(E),L=typeof E=="string",N=(U||L)&&E.length;return U?N===i||N===o:L?N===2*i||N===2*o:E instanceof u}function T(E,U,L=!0){if(O(E))throw new Error("first arg must be private key");if(!O(U))throw new Error("second arg must be public key");return u.fromHex(U).multiply(d(E)).toRawBytes(L)}let M=e.bits2int||function(E){let U=Qi(E),L=E.length*8-e.nBitLength;return L>0?U>>BigInt(L):U},q=e.bits2int_modN||function(E){return c(M(E))},j=Fd(e.nBitLength);function $(E){if(typeof E!="bigint")throw new Error("bigint expected");if(!(ro<=E&&E<j))throw new Error(`bigint expected < 2^${e.nBitLength}`);return mr(E,e.nByteLength)}function Z(E,U,L=Q){if(["recovered","canonical"].some(ee=>ee in L))throw new Error("sign() legacy options not supported");let{hash:N,randomBytes:R}=e,{lowS:C,prehash:P,extraEntropy:V}=L;C==null&&(C=!0),E=Ge("msgHash",E),P&&(E=Ge("prehashed msgHash",N(E)));let J=q(E),z=d(U),W=[$(z),$(J)];if(V!=null){let ee=V===!0?R(r.BYTES):V;W.push(Ge("extraEntropy",ee))}let Y=to(...W),X=J;function ue(ee){let ce=M(ee);if(!h(ce))return;let Oe=a(ce),Ke=u.BASE.multiply(ce).toAffine(),Je=c(Ke.x);if(Je===ro)return;let xt=c(Oe*c(X+Je*z));if(xt===ro)return;let pi=(Ke.x===Je?0:2)|Number(Ke.y&cn),ho=xt;return C&&y(xt)&&(ho=g(xt),pi^=1),new S(Je,ho,pi)}return{seed:Y,k2sig:ue}}let Q={lowS:e.lowS,prehash:!1},G={lowS:e.lowS,prehash:!1};function I(E,U,L=Q){let{seed:N,k2sig:R}=Z(E,U,L),C=e;return Dw(C.hash.outputLen,C.nByteLength,C.hmac)(N,R)}u.BASE._setWindowSize(8);function D(E,U,L,N=G){let R=E;if(U=Ge("msgHash",U),L=Ge("publicKey",L),"strict"in N)throw new Error("options.strict was renamed to lowS");let{lowS:C,prehash:P}=N,V,J;try{if(typeof R=="string"||Rn(R))try{V=S.fromDER(R)}catch(Ke){if(!(Ke instanceof gc.Err))throw Ke;V=S.fromCompact(R)}else if(typeof R=="object"&&typeof R.r=="bigint"&&typeof R.s=="bigint"){let{r:Ke,s:Je}=R;V=new S(Ke,Je)}else throw new Error("PARSE");J=u.fromHex(L)}catch(Ke){if(Ke.message==="PARSE")throw new Error("signature must be Signature instance, Uint8Array or hex string");return!1}if(C&&V.hasHighS())return!1;P&&(U=e.hash(U));let{r:z,s:W}=V,Y=q(U),X=a(W),ue=c(Y*X),ee=c(z*X),ce=u.BASE.multiplyAndAddUnsafe(J,ue,ee)?.toAffine();return ce?c(ce.x)===z:!1}return{CURVE:e,getPublicKey:A,getSharedSecret:T,sign:I,verify:D,ProjectivePoint:u,Signature:S,utils:_}}l();l();var fp=class extends Va{constructor(e,r){super(),this.finished=!1,this.destroyed=!1,LT(e);let n=Vd(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 Ha(this),this.iHash.update(e),this}digestInto(e){Ha(this),Iw(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:c}=this;return e=e,e.finished=i,e.destroyed=o,e.blockLen=s,e.outputLen=c,e.oHash=r._cloneInto(e.oHash),e.iHash=n._cloneInto(e.iHash),e}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}},Kw=(t,e,r)=>new fp(t,e).update(r).digest();Kw.create=(t,e)=>new fp(t,e);function rN(t){return{hash:t,hmac:(e,...r)=>Kw(t,e,ip(...r)),randomBytes:qd}}function lp(t,e){let r=n=>JT({...t,...rN(n)});return Object.freeze({...r(e),create:r})}var QT=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),XT=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),nN=BigInt(1),$w=BigInt(2),ZT=(t,e)=>(t+e/$w)/e;function iN(t){let e=QT,r=BigInt(3),n=BigInt(6),i=BigInt(11),o=BigInt(22),s=BigInt(23),c=BigInt(44),a=BigInt(88),u=t*t*t%e,d=u*u*t%e,f=ze(d,r,e)*d%e,h=ze(f,r,e)*d%e,p=ze(h,$w,e)*u%e,y=ze(p,i,e)*p%e,g=ze(y,o,e)*y%e,x=ze(g,c,e)*g%e,S=ze(x,a,e)*x%e,_=ze(S,c,e)*g%e,A=ze(_,r,e)*d%e,O=ze(A,s,e)*y%e,T=ze(O,n,e)*u%e,M=ze(T,$w,e);if(!Hw.eql(Hw.sqr(M),t))throw new Error("Cannot find square root");return M}var Hw=Fa(QT,void 0,void 0,{sqrt:iN}),wr=lp({a:BigInt(0),b:BigInt(7),Fp:Hw,n:XT,Gx:BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),Gy:BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),h:BigInt(1),lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:t=>{let e=XT,r=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),n=-nN*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),i=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),o=r,s=BigInt("0x100000000000000000000000000000000"),c=ZT(o*t,e),a=ZT(-n*t,e),u=Re(t-c*r-a*i,e),d=Re(-c*n-a*o,e),f=u>s,h=d>s;if(f&&(u=e-u),h&&(d=e-d),u>s||d>s)throw new Error("splitScalar: Endomorphism failed, k="+t);return{k1neg:f,k1:u,k2neg:h,k2:d}}}},sp),XW=BigInt(0);var ZW=wr.ProjectivePoint;l();l();function e_(t){let e=n=>{if(n!==null&&typeof n=="object"&&!Array.isArray(n)){let i=Object.keys(n).sort(),o={};for(let s of i)o[s]=e(n[s]);return o}return n},r=e(t);return JSON.stringify(r)}var oN=function(t,e,r,n){function i(o){return o instanceof r?o:new r(function(s){s(o)})}return new(r||(r=Promise))(function(o,s){function c(d){try{u(n.next(d))}catch(f){s(f)}}function a(d){try{u(n.throw(d))}catch(f){s(f)}}function u(d){d.done?o(d.value):i(d.value).then(c,a)}u((n=n.apply(t,e||[])).next())})},Vw="urn:jwk:";function ge(t){return oN(this,arguments,void 0,function*({jwk:e}){let r=e.kty,n;if(r==="EC")n={crv:e.crv,kty:e.kty,x:e.x,y:e.y};else if(r==="oct")n={k:e.k,kty:e.kty};else if(r==="OKP")n={crv:e.crv,kty:e.kty,x:e.x};else if(r==="RSA")n={e:e.e,kty:e.kty,n:e.n};else throw new Error(`Unsupported key type: ${r}`);wg(n);let i=e_(n),o=ne.string(i).toUint8Array(),s=yield $a.digest({data:o});return ne.uint8Array(s).toBase64Url()})}function ai(t){return!(!t||typeof t!="object"||!("kty"in t&&"crv"in t&&"x"in t&&"d"in t)||t.kty!=="EC"||typeof t.d!="string"||typeof t.x!="string")}function ja(t){return!(!t||typeof t!="object"||!("kty"in t&&"crv"in t&&"x"in t)||"d"in t||t.kty!=="EC"||typeof t.x!="string")}function ui(t){return!(!t||typeof t!="object"||!("kty"in t&&"crv"in t&&"x"in t&&"d"in t)||t.kty!=="OKP"||typeof t.d!="string"||typeof t.x!="string")}function Wa(t){return!(!t||typeof t!="object"||"d"in t||!("kty"in t&&"crv"in t&&"x"in t)||t.kty!=="OKP"||typeof t.x!="string")}function t_(t){if(!t||typeof t!="object")return!1;switch(t.kty){case"EC":case"OKP":case"RSA":return"d"in t;case"oct":return"k"in t;default:return!1}}var $t=function(t,e,r,n){function i(o){return o instanceof r?o:new r(function(s){s(o)})}return new(r||(r=Promise))(function(o,s){function c(d){try{u(n.next(d))}catch(f){s(f)}}function a(d){try{u(n.throw(d))}catch(f){s(f)}}function u(d){d.done?o(d.value):i(d.value).then(c,a)}u((n=n.apply(t,e||[])).next())})},sN=function(t,e){var r={};for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&e.indexOf(n)<0&&(r[n]=t[n]);if(t!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,n=Object.getOwnPropertySymbols(t);i<n.length;i++)e.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(t,n[i])&&(r[n[i]]=t[n[i]]);return r},kt=class t{static adjustSignatureToLowS(e){return $t(this,arguments,void 0,function*({signature:r}){let n=wr.Signature.fromCompact(r);return n.hasHighS()?n.normalizeS().toCompactRawBytes():r})}static bytesToPrivateKey(e){return $t(this,arguments,void 0,function*({privateKeyBytes:r}){let n=yield t.getCurvePoint({keyBytes:r}),i={kty:"EC",crv:"secp256k1",d:ne.uint8Array(r).toBase64Url(),x:ne.uint8Array(n.x).toBase64Url(),y:ne.uint8Array(n.y).toBase64Url()};return i.kid=yield ge({jwk:i}),i})}static bytesToPublicKey(e){return $t(this,arguments,void 0,function*({publicKeyBytes:r}){let n=yield t.getCurvePoint({keyBytes:r}),i={kty:"EC",crv:"secp256k1",x:ne.uint8Array(n.x).toBase64Url(),y:ne.uint8Array(n.y).toBase64Url()};return i.kid=yield ge({jwk:i}),i})}static compressPublicKey(e){return $t(this,arguments,void 0,function*({publicKeyBytes:r}){return wr.ProjectivePoint.fromHex(r).toRawBytes(!0)})}static computePublicKey(e){return $t(this,arguments,void 0,function*({key:r}){let n=yield t.privateKeyToBytes({privateKey:r}),i=yield t.getCurvePoint({keyBytes:n}),o={kty:"EC",crv:"secp256k1",x:ne.uint8Array(i.x).toBase64Url(),y:ne.uint8Array(i.y).toBase64Url()};return o.kid=yield ge({jwk:o}),o})}static convertDerToCompactSignature(e){return $t(this,arguments,void 0,function*({derSignature:r}){return wr.Signature.fromDER(r).toCompactRawBytes()})}static decompressPublicKey(e){return $t(this,arguments,void 0,function*({publicKeyBytes:r}){return wr.ProjectivePoint.fromHex(r).toRawBytes(!1)})}static generateKey(){return $t(this,void 0,void 0,function*(){let e=wr.utils.randomPrivateKey(),r=yield t.bytesToPrivateKey({privateKeyBytes:e});return r.kid=yield ge({jwk:r}),r})}static getPublicKey(e){return $t(this,arguments,void 0,function*({key:r}){var n;if(!(ai(r)&&r.crv==="secp256k1"))throw new Error("Secp256k1: The provided key is not a secp256k1 private JWK.");let{d:i}=r,o=sN(r,["d"]);return(n=o.kid)!==null&&n!==void 0||(o.kid=yield ge({jwk:o})),o})}static privateKeyToBytes(e){return $t(this,arguments,void 0,function*({privateKey:r}){if(!ai(r))throw new Error("Secp256k1: The provided key is not a valid EC private key.");return ne.base64Url(r.d).toUint8Array()})}static publicKeyToBytes(e){return $t(this,arguments,void 0,function*({publicKey:r}){if(!(ja(r)&&r.y))throw new Error("Secp256k1: The provided key is not a valid EC public key.");let n=new Uint8Array([4]),i=ne.base64Url(r.x).toUint8Array(),o=ne.base64Url(r.y).toUint8Array();return new Uint8Array([...n,...i,...o])})}static sharedSecret(e){return $t(this,arguments,void 0,function*({privateKeyA:r,publicKeyB:n}){if("x"in r&&"x"in n&&r.x===n.x)throw new Error("Secp256k1: ECDH shared secret cannot be computed from a single key pair's public and private keys.");let i=yield t.privateKeyToBytes({privateKey:r}),o=yield t.publicKeyToBytes({publicKey:n});return wr.getSharedSecret(i,o,!0).slice(1)})}static sign(e){return $t(this,arguments,void 0,function*({data:r,key:n}){let i=yield t.privateKeyToBytes({privateKey:n}),o=Yo(r);return wr.sign(o,i).toCompactRawBytes()})}static validatePrivateKey(e){return $t(this,arguments,void 0,function*({privateKeyBytes:r}){return wr.utils.isValidPrivateKey(r)})}static validatePublicKey(e){return $t(this,arguments,void 0,function*({publicKeyBytes:r}){try{wr.ProjectivePoint.fromHex(r).assertValidity()}catch{return!1}return!0})}static verify(e){return $t(this,arguments,void 0,function*({key:r,signature:n,data:i}){let o=yield t.publicKeyToBytes({publicKey:r}),s=Yo(i);return wr.verify(n,s,o,{lowS:!1})})}static getCurvePoint(e){return $t(this,arguments,void 0,function*({keyBytes:r}){r.byteLength===32&&(r=wr.getPublicKey(r));let n=wr.ProjectivePoint.fromHex(r),i=mr(n.x,32),o=mr(n.y,32);return{x:i,y:o}})}};l();l();var r_=Fa(BigInt("0xffffffff00000001000000000000000000000000ffffffffffffffffffffffff")),cN=r_.create(BigInt("-3")),aN=BigInt("0x5ac635d8aa3a93e7b3ebbd55769886bc651d06b0cc53b0f63bce3c3e27d2604b"),uN=lp({a:cN,b:aN,Fp:r_,n:BigInt("0xffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551"),Gx:BigInt("0x6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296"),Gy:BigInt("0x4fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5"),h:BigInt(1),lowS:!1},sp),Lr=uN;var Ht=function(t,e,r,n){function i(o){return o instanceof r?o:new r(function(s){s(o)})}return new(r||(r=Promise))(function(o,s){function c(d){try{u(n.next(d))}catch(f){s(f)}}function a(d){try{u(n.throw(d))}catch(f){s(f)}}function u(d){d.done?o(d.value):i(d.value).then(c,a)}u((n=n.apply(t,e||[])).next())})},dN=function(t,e){var r={};for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&e.indexOf(n)<0&&(r[n]=t[n]);if(t!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,n=Object.getOwnPropertySymbols(t);i<n.length;i++)e.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(t,n[i])&&(r[n[i]]=t[n[i]]);return r},Vt=class t{static adjustSignatureToLowS(e){return Ht(this,arguments,void 0,function*({signature:r}){let n=Lr.Signature.fromCompact(r);return n.hasHighS()?n.normalizeS().toCompactRawBytes():r})}static bytesToPrivateKey(e){return Ht(this,arguments,void 0,function*({privateKeyBytes:r}){let n=yield t.getCurvePoint({keyBytes:r}),i={kty:"EC",crv:"P-256",d:ne.uint8Array(r).toBase64Url(),x:ne.uint8Array(n.x).toBase64Url(),y:ne.uint8Array(n.y).toBase64Url()};return i.kid=yield ge({jwk:i}),i})}static bytesToPublicKey(e){return Ht(this,arguments,void 0,function*({publicKeyBytes:r}){let n=yield t.getCurvePoint({keyBytes:r}),i={kty:"EC",crv:"P-256",x:ne.uint8Array(n.x).toBase64Url(),y:ne.uint8Array(n.y).toBase64Url()};return i.kid=yield ge({jwk:i}),i})}static compressPublicKey(e){return Ht(this,arguments,void 0,function*({publicKeyBytes:r}){return Lr.ProjectivePoint.fromHex(r).toRawBytes(!0)})}static computePublicKey(e){return Ht(this,arguments,void 0,function*({key:r}){let n=yield t.privateKeyToBytes({privateKey:r}),i=yield t.getCurvePoint({keyBytes:n}),o={kty:"EC",crv:"P-256",x:ne.uint8Array(i.x).toBase64Url(),y:ne.uint8Array(i.y).toBase64Url()};return o.kid=yield ge({jwk:o}),o})}static convertDerToCompactSignature(e){return Ht(this,arguments,void 0,function*({derSignature:r}){return Lr.Signature.fromDER(r).toCompactRawBytes()})}static decompressPublicKey(e){return Ht(this,arguments,void 0,function*({publicKeyBytes:r}){return Lr.ProjectivePoint.fromHex(r).toRawBytes(!1)})}static generateKey(){return Ht(this,void 0,void 0,function*(){let e=Lr.utils.randomPrivateKey(),r=yield t.bytesToPrivateKey({privateKeyBytes:e});return r.kid=yield ge({jwk:r}),r})}static getPublicKey(e){return Ht(this,arguments,void 0,function*({key:r}){var n;if(!(ai(r)&&r.crv==="P-256"))throw new Error("Secp256r1: The provided key is not a 'P-256' private JWK.");let{d:i}=r,o=dN(r,["d"]);return(n=o.kid)!==null&&n!==void 0||(o.kid=yield ge({jwk:o})),o})}static privateKeyToBytes(e){return Ht(this,arguments,void 0,function*({privateKey:r}){if(!ai(r))throw new Error("Secp256r1: The provided key is not a valid EC private key.");return ne.base64Url(r.d).toUint8Array()})}static publicKeyToBytes(e){return Ht(this,arguments,void 0,function*({publicKey:r}){if(!(ja(r)&&r.y))throw new Error("Secp256r1: The provided key is not a valid EC public key.");let n=new Uint8Array([4]),i=ne.base64Url(r.x).toUint8Array(),o=ne.base64Url(r.y).toUint8Array();return new Uint8Array([...n,...i,...o])})}static sharedSecret(e){return Ht(this,arguments,void 0,function*({privateKeyA:r,publicKeyB:n}){if("x"in r&&"x"in n&&r.x===n.x)throw new Error("Secp256r1: ECDH shared secret cannot be computed from a single key pair's public and private keys.");let i=yield t.privateKeyToBytes({privateKey:r}),o=yield t.publicKeyToBytes({publicKey:n});return Lr.getSharedSecret(i,o,!0).slice(1)})}static sign(e){return Ht(this,arguments,void 0,function*({data:r,key:n}){let i=yield t.privateKeyToBytes({privateKey:n}),o=Yo(r);return Lr.sign(o,i).toCompactRawBytes()})}static validatePrivateKey(e){return Ht(this,arguments,void 0,function*({privateKeyBytes:r}){return Lr.utils.isValidPrivateKey(r)})}static validatePublicKey(e){return Ht(this,arguments,void 0,function*({publicKeyBytes:r}){try{Lr.ProjectivePoint.fromHex(r).assertValidity()}catch{return!1}return!0})}static verify(e){return Ht(this,arguments,void 0,function*({key:r,signature:n,data:i}){let o=yield t.publicKeyToBytes({publicKey:r}),s=Yo(i);return Lr.verify(n,s,o,{lowS:!1})})}static getCurvePoint(e){return Ht(this,arguments,void 0,function*({keyBytes:r}){r.byteLength===32&&(r=Lr.getPublicKey(r));let n=Lr.ProjectivePoint.fromHex(r),i=mr(n.x,32),o=mr(n.y,32);return{x:i,y:o}})}};var Wd=function(t,e,r,n){function i(o){return o instanceof r?o:new r(function(s){s(o)})}return new(r||(r=Promise))(function(o,s){function c(d){try{u(n.next(d))}catch(f){s(f)}}function a(d){try{u(n.throw(d))}catch(f){s(f)}}function u(d){d.done?o(d.value):i(d.value).then(c,a)}u((n=n.apply(t,e||[])).next())})},Gd=class extends ci{computePublicKey(e){return Wd(this,arguments,void 0,function*({key:r}){if(!ai(r))throw new TypeError("Invalid key provided. Must be an elliptic curve (EC) private key.");switch(r.crv){case"secp256k1":{let n=yield kt.computePublicKey({key:r});return n.alg="ES256K",n}case"P-256":{let n=yield Vt.computePublicKey({key:r});return n.alg="ES256",n}default:throw new Error(`Unsupported curve: ${r.crv}`)}})}generateKey(e){return Wd(this,arguments,void 0,function*({algorithm:r}){switch(r){case"ES256K":case"secp256k1":{let n=yield kt.generateKey();return n.alg="ES256K",n}case"ES256":case"secp256r1":{let n=yield Vt.generateKey();return n.alg="ES256",n}}})}getPublicKey(e){return Wd(this,arguments,void 0,function*({key:r}){if(!ai(r))throw new TypeError("Invalid key provided. Must be an elliptic curve (EC) private key.");switch(r.crv){case"secp256k1":{let n=yield kt.getPublicKey({key:r});return n.alg="ES256K",n}case"P-256":{let n=yield Vt.getPublicKey({key:r});return n.alg="ES256",n}default:throw new Error(`Unsupported curve: ${r.crv}`)}})}sign(e){return Wd(this,arguments,void 0,function*({key:r,data:n}){if(!ai(r))throw new TypeError("Invalid key provided. Must be an elliptic curve (EC) private key.");switch(r.crv){case"secp256k1":return yield kt.sign({key:r,data:n});case"P-256":return yield Vt.sign({key:r,data:n});default:throw new Error(`Unsupported curve: ${r.crv}`)}})}verify(e){return Wd(this,arguments,void 0,function*({key:r,signature:n,data:i}){if(!ja(r))throw new TypeError("Invalid key provided. Must be an elliptic curve (EC) public key.");switch(r.crv){case"secp256k1":return yield kt.verify({key:r,signature:n,data:i});case"P-256":return yield Vt.verify({key:r,signature:n,data:i});default:throw new Error(`Unsupported curve: ${r.crv}`)}})}};l();l();l();l();l();var hp=BigInt(4294967295),qw=BigInt(32);function n_(t,e=!1){return e?{h:Number(t&hp),l:Number(t>>qw&hp)}:{h:Number(t>>qw&hp)|0,l:Number(t&hp)|0}}function fN(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}=n_(t[i],e);[r[i],n[i]]=[o,s]}return[r,n]}var lN=(t,e)=>BigInt(t>>>0)<<qw|BigInt(e>>>0),hN=(t,e,r)=>t>>>r,pN=(t,e,r)=>t<<32-r|e>>>r,yN=(t,e,r)=>t>>>r|e<<32-r,gN=(t,e,r)=>t<<32-r|e>>>r,mN=(t,e,r)=>t<<64-r|e>>>r-32,wN=(t,e,r)=>t>>>r-32|e<<64-r,bN=(t,e)=>e,xN=(t,e)=>t,EN=(t,e,r)=>t<<r|e>>>32-r,vN=(t,e,r)=>e<<r|t>>>32-r,SN=(t,e,r)=>e<<r-32|t>>>64-r,AN=(t,e,r)=>t<<r-32|e>>>64-r;function TN(t,e,r,n){let i=(e>>>0)+(n>>>0);return{h:t+r+(i/2**32|0)|0,l:i|0}}var _N=(t,e,r)=>(t>>>0)+(e>>>0)+(r>>>0),IN=(t,e,r,n)=>e+r+n+(t/2**32|0)|0,BN=(t,e,r,n)=>(t>>>0)+(e>>>0)+(r>>>0)+(n>>>0),RN=(t,e,r,n,i)=>e+r+n+i+(t/2**32|0)|0,UN=(t,e,r,n,i)=>(t>>>0)+(e>>>0)+(r>>>0)+(n>>>0)+(i>>>0),ON=(t,e,r,n,i,o)=>e+r+n+i+o+(t/2**32|0)|0;var DN={fromBig:n_,split:fN,toBig:lN,shrSH:hN,shrSL:pN,rotrSH:yN,rotrSL:gN,rotrBH:mN,rotrBL:wN,rotr32H:bN,rotr32L:xN,rotlSH:EN,rotlSL:vN,rotlBH:SN,rotlBL:AN,add:TN,add3L:_N,add3H:IN,add4L:BN,add4H:RN,add5H:ON,add5L:UN},le=DN;var[kN,NN]=le.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))),Zo=new Uint32Array(80),Qo=new Uint32Array(80),Fw=class extends qa{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:c,Dl:a,Eh:u,El:d,Fh:f,Fl:h,Gh:p,Gl:y,Hh:g,Hl:x}=this;return[e,r,n,i,o,s,c,a,u,d,f,h,p,y,g,x]}set(e,r,n,i,o,s,c,a,u,d,f,h,p,y,g,x){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=c|0,this.Dl=a|0,this.Eh=u|0,this.El=d|0,this.Fh=f|0,this.Fl=h|0,this.Gh=p|0,this.Gl=y|0,this.Hh=g|0,this.Hl=x|0}process(e,r){for(let A=0;A<16;A++,r+=4)Zo[A]=e.getUint32(r),Qo[A]=e.getUint32(r+=4);for(let A=16;A<80;A++){let O=Zo[A-15]|0,T=Qo[A-15]|0,M=le.rotrSH(O,T,1)^le.rotrSH(O,T,8)^le.shrSH(O,T,7),q=le.rotrSL(O,T,1)^le.rotrSL(O,T,8)^le.shrSL(O,T,7),j=Zo[A-2]|0,$=Qo[A-2]|0,Z=le.rotrSH(j,$,19)^le.rotrBH(j,$,61)^le.shrSH(j,$,6),Q=le.rotrSL(j,$,19)^le.rotrBL(j,$,61)^le.shrSL(j,$,6),G=le.add4L(q,Q,Qo[A-7],Qo[A-16]),I=le.add4H(G,M,Z,Zo[A-7],Zo[A-16]);Zo[A]=I|0,Qo[A]=G|0}let{Ah:n,Al:i,Bh:o,Bl:s,Ch:c,Cl:a,Dh:u,Dl:d,Eh:f,El:h,Fh:p,Fl:y,Gh:g,Gl:x,Hh:S,Hl:_}=this;for(let A=0;A<80;A++){let O=le.rotrSH(f,h,14)^le.rotrSH(f,h,18)^le.rotrBH(f,h,41),T=le.rotrSL(f,h,14)^le.rotrSL(f,h,18)^le.rotrBL(f,h,41),M=f&p^~f&g,q=h&y^~h&x,j=le.add5L(_,T,q,NN[A],Qo[A]),$=le.add5H(j,S,O,M,kN[A],Zo[A]),Z=j|0,Q=le.rotrSH(n,i,28)^le.rotrBH(n,i,34)^le.rotrBH(n,i,39),G=le.rotrSL(n,i,28)^le.rotrBL(n,i,34)^le.rotrBL(n,i,39),I=n&o^n&c^o&c,D=i&s^i&a^s&a;S=g|0,_=x|0,g=p|0,x=y|0,p=f|0,y=h|0,{h:f,l:h}=le.add(u|0,d|0,$|0,Z|0),u=c|0,d=a|0,c=o|0,a=s|0,o=n|0,s=i|0;let E=le.add3L(Z,G,D);n=le.add3H(E,$,Q,I),i=E|0}({h:n,l:i}=le.add(this.Ah|0,this.Al|0,n|0,i|0)),{h:o,l:s}=le.add(this.Bh|0,this.Bl|0,o|0,s|0),{h:c,l:a}=le.add(this.Ch|0,this.Cl|0,c|0,a|0),{h:u,l:d}=le.add(this.Dh|0,this.Dl|0,u|0,d|0),{h:f,l:h}=le.add(this.Eh|0,this.El|0,f|0,h|0),{h:p,l:y}=le.add(this.Fh|0,this.Fl|0,p|0,y|0),{h:g,l:x}=le.add(this.Gh|0,this.Gl|0,g|0,x|0),{h:S,l:_}=le.add(this.Hh|0,this.Hl|0,S|0,_|0),this.set(n,i,o,s,c,a,u,d,f,h,p,y,g,x,S,_)}roundClean(){Zo.fill(0),Qo.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 jw=op(()=>new Fw);l();var On=BigInt(0),Pr=BigInt(1),pp=BigInt(2),CN=BigInt(8),LN={zip215:!0};function PN(t){let e=jd(t);return sn(t,{hash:"function",a:"bigint",d:"bigint",randomBytes:"function"},{adjustScalarBytes:"function",domain:"function",uvRatio:"function",mapToCurve:"function"}),Object.freeze({...e})}function yp(t){let e=PN(t),{Fp:r,n,prehash:i,hash:o,randomBytes:s,nByteLength:c,h:a}=e,u=pp<<BigInt(c*8)-Pr,d=r.create,f=e.uvRatio||((N,R)=>{try{return{isValid:!0,value:r.sqrt(N*r.inv(R))}}catch{return{isValid:!1,value:On}}}),h=e.adjustScalarBytes||(N=>N),p=e.domain||((N,R,C)=>{if(R.length||C)throw new Error("Contexts/pre-hash are not supported");return N}),y=N=>typeof N=="bigint"&&On<N,g=(N,R)=>y(N)&&y(R)&&N<R,x=N=>N===On||g(N,u);function S(N,R){if(g(N,R))return N;throw new Error(`Expected valid scalar < ${R}, got ${typeof N} ${N}`)}function _(N){return N===On?N:S(N,n)}let A=new Map;function O(N){if(!(N instanceof T))throw new Error("ExtendedPoint expected")}class T{constructor(R,C,P,V){if(this.ex=R,this.ey=C,this.ez=P,this.et=V,!x(R))throw new Error("x required");if(!x(C))throw new Error("y required");if(!x(P))throw new Error("z required");if(!x(V))throw new Error("t required")}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static fromAffine(R){if(R instanceof T)throw new Error("extended point not allowed");let{x:C,y:P}=R||{};if(!x(C)||!x(P))throw new Error("invalid affine point");return new T(C,P,Pr,d(C*P))}static normalizeZ(R){let C=r.invertBatch(R.map(P=>P.ez));return R.map((P,V)=>P.toAffine(C[V])).map(T.fromAffine)}_setWindowSize(R){this._WINDOW_SIZE=R,A.delete(this)}assertValidity(){let{a:R,d:C}=e;if(this.is0())throw new Error("bad point: ZERO");let{ex:P,ey:V,ez:J,et:z}=this,W=d(P*P),Y=d(V*V),X=d(J*J),ue=d(X*X),ee=d(W*R),ce=d(X*d(ee+Y)),Oe=d(ue+d(C*d(W*Y)));if(ce!==Oe)throw new Error("bad point: equation left != right (1)");let Ke=d(P*V),Je=d(J*z);if(Ke!==Je)throw new Error("bad point: equation left != right (2)")}equals(R){O(R);let{ex:C,ey:P,ez:V}=this,{ex:J,ey:z,ez:W}=R,Y=d(C*W),X=d(J*V),ue=d(P*W),ee=d(z*V);return Y===X&&ue===ee}is0(){return this.equals(T.ZERO)}negate(){return new T(d(-this.ex),this.ey,this.ez,d(-this.et))}double(){let{a:R}=e,{ex:C,ey:P,ez:V}=this,J=d(C*C),z=d(P*P),W=d(pp*d(V*V)),Y=d(R*J),X=C+P,ue=d(d(X*X)-J-z),ee=Y+z,ce=ee-W,Oe=Y-z,Ke=d(ue*ce),Je=d(ee*Oe),xt=d(ue*Oe),pi=d(ce*ee);return new T(Ke,Je,pi,xt)}add(R){O(R);let{a:C,d:P}=e,{ex:V,ey:J,ez:z,et:W}=this,{ex:Y,ey:X,ez:ue,et:ee}=R;if(C===BigInt(-1)){let yu=d((J-V)*(X+Y)),Af=d((J+V)*(X-Y)),gu=d(Af-yu);if(gu===On)return this.double();let Tf=d(z*pp*ee),_f=d(W*pp*ue),Wr=_f+Tf,yo=Af+yu,mu=_f-Tf,If=d(Wr*gu),fs=d(yo*mu),Bf=d(Wr*mu),sy=d(gu*yo);return new T(If,fs,sy,Bf)}let ce=d(V*Y),Oe=d(J*X),Ke=d(W*P*ee),Je=d(z*ue),xt=d((V+J)*(Y+X)-ce-Oe),pi=Je-Ke,ho=Je+Ke,pu=d(Oe-C*ce),Sf=d(xt*pi),oy=d(ho*pu),po=d(xt*pu),jr=d(pi*ho);return new T(Sf,oy,jr,po)}subtract(R){return this.add(R.negate())}wNAF(R){return j.wNAFCached(this,A,R,T.normalizeZ)}multiply(R){let{p:C,f:P}=this.wNAF(S(R,n));return T.normalizeZ([C,P])[0]}multiplyUnsafe(R){let C=_(R);return C===On?q:this.equals(q)||C===Pr?this:this.equals(M)?this.wNAF(C).p:j.unsafeLadder(this,C)}isSmallOrder(){return this.multiplyUnsafe(a).is0()}isTorsionFree(){return j.unsafeLadder(this,n).is0()}toAffine(R){let{ex:C,ey:P,ez:V}=this,J=this.is0();R==null&&(R=J?CN:r.inv(V));let z=d(C*R),W=d(P*R),Y=d(V*R);if(J)return{x:On,y:Pr};if(Y!==Pr)throw new Error("invZ was invalid");return{x:z,y:W}}clearCofactor(){let{h:R}=e;return R===Pr?this:this.multiplyUnsafe(R)}static fromHex(R,C=!1){let{d:P,a:V}=e,J=r.BYTES;R=Ge("pointHex",R,J);let z=R.slice(),W=R[J-1];z[J-1]=W&-129;let Y=Un(z);Y===On||(C?S(Y,u):S(Y,r.ORDER));let X=d(Y*Y),ue=d(X-Pr),ee=d(P*X-V),{isValid:ce,value:Oe}=f(ue,ee);if(!ce)throw new Error("Point.fromHex: invalid y coordinate");let Ke=(Oe&Pr)===Pr,Je=(W&128)!==0;if(!C&&Oe===On&&Je)throw new Error("Point.fromHex: x=0 and x_0=1");return Je!==Ke&&(Oe=d(-Oe)),T.fromAffine({x:Oe,y:Y})}static fromPrivateKey(R){return Q(R).point}toRawBytes(){let{x:R,y:C}=this.toAffine(),P=eo(C,r.BYTES);return P[P.length-1]|=R&Pr?128:0,P}toHex(){return Zi(this.toRawBytes())}}T.BASE=new T(e.Gx,e.Gy,Pr,d(e.Gx*e.Gy)),T.ZERO=new T(On,Pr,Pr,On);let{BASE:M,ZERO:q}=T,j=dp(T,c*8);function $(N){return Re(N,n)}function Z(N){return $(Un(N))}function Q(N){let R=c;N=Ge("private key",N,R);let C=Ge("hashed private key",o(N),2*R),P=h(C.slice(0,R)),V=C.slice(R,2*R),J=Z(P),z=M.multiply(J),W=z.toRawBytes();return{head:P,prefix:V,scalar:J,point:z,pointBytes:W}}function G(N){return Q(N).pointBytes}function I(N=new Uint8Array,...R){let C=to(...R);return Z(o(p(C,Ge("context",N),!!i)))}function D(N,R,C={}){N=Ge("message",N),i&&(N=i(N));let{prefix:P,scalar:V,pointBytes:J}=Q(R),z=I(C.context,P,N),W=M.multiply(z).toRawBytes(),Y=I(C.context,W,J,N),X=$(z+Y*V);_(X);let ue=to(W,eo(X,r.BYTES));return Ge("result",ue,c*2)}let E=LN;function U(N,R,C,P=E){let{context:V,zip215:J}=P,z=r.BYTES;N=Ge("signature",N,2*z),R=Ge("message",R),i&&(R=i(R));let W=Un(N.slice(z,2*z)),Y,X,ue;try{Y=T.fromHex(C,J),X=T.fromHex(N.slice(0,z),J),ue=M.multiplyUnsafe(W)}catch{return!1}if(!J&&Y.isSmallOrder())return!1;let ee=I(V,X.toRawBytes(),Y.toRawBytes(),R);return X.add(Y.multiplyUnsafe(ee)).subtract(ue).clearCofactor().equals(T.ZERO)}return M._setWindowSize(8),{CURVE:e,getPublicKey:G,sign:D,verify:U,ExtendedPoint:T,utils:{getExtendedPublicKey:Q,randomPrivateKey:()=>s(r.BYTES),precompute(N=8,R=T.BASE){return R._setWindowSize(N),R.multiply(BigInt(3)),R}}}}l();var zd=BigInt(0),Ww=BigInt(1);function MN(t){return sn(t,{a:"bigint"},{montgomeryBits:"isSafeInteger",nByteLength:"isSafeInteger",adjustScalarBytes:"function",domain:"function",powPminus2:"function",Gu:"bigint"}),Object.freeze({...t})}function i_(t){let e=MN(t),{P:r}=e,n=A=>Re(A,r),i=e.montgomeryBits,o=Math.ceil(i/8),s=e.nByteLength,c=e.adjustScalarBytes||(A=>A),a=e.powPminus2||(A=>Nw(A,r-BigInt(2),r));function u(A,O,T){let M=n(A*(O-T));return O=n(O-M),T=n(T+M),[O,T]}function d(A){if(typeof A=="bigint"&&zd<=A&&A<r)return A;throw new Error("Expected valid scalar 0 < scalar < CURVE.P")}let f=(e.a-BigInt(2))/BigInt(4);function h(A,O){let T=d(A),M=d(O),q=T,j=Ww,$=zd,Z=T,Q=Ww,G=zd,I;for(let E=BigInt(i-1);E>=zd;E--){let U=M>>E&Ww;G^=U,I=u(G,j,Z),j=I[0],Z=I[1],I=u(G,$,Q),$=I[0],Q=I[1],G=U;let L=j+$,N=n(L*L),R=j-$,C=n(R*R),P=N-C,V=Z+Q,J=Z-Q,z=n(J*L),W=n(V*R),Y=z+W,X=z-W;Z=n(Y*Y),Q=n(q*n(X*X)),j=n(N*C),$=n(P*(N+n(f*P)))}I=u(G,j,Z),j=I[0],Z=I[1],I=u(G,$,Q),$=I[0],Q=I[1];let D=a($);return n(j*D)}function p(A){return eo(n(A),o)}function y(A){let O=Ge("u coordinate",A,o);return s===32&&(O[31]&=127),Un(O)}function g(A){let O=Ge("scalar",A),T=O.length;if(T!==o&&T!==s)throw new Error(`Expected ${o} or ${s} bytes, got ${T}`);return Un(c(O))}function x(A,O){let T=y(O),M=g(A),q=h(T,M);if(q===zd)throw new Error("Invalid private or public key received");return p(q)}let S=p(e.Gu);function _(A){return x(A,S)}return{scalarMult:x,scalarMultBase:_,getSharedSecret:(A,O)=>x(A,O),getPublicKey:A=>_(A),utils:{randomPrivateKey:()=>e.randomBytes(e.nByteLength)},GuBytes:S}}var Yd=BigInt("57896044618658097711785492504343953926634992332820282019728792003956564819949"),o_=BigInt("19681161376707505956807079304988542015446066515923890162744021073123829784752"),ez=BigInt(0),KN=BigInt(1),Gw=BigInt(2),$N=BigInt(5),s_=BigInt(10),HN=BigInt(20),VN=BigInt(40),c_=BigInt(80);function a_(t){let e=Yd,n=t*t%e*t%e,i=ze(n,Gw,e)*n%e,o=ze(i,KN,e)*t%e,s=ze(o,$N,e)*o%e,c=ze(s,s_,e)*s%e,a=ze(c,HN,e)*c%e,u=ze(a,VN,e)*a%e,d=ze(u,c_,e)*u%e,f=ze(d,c_,e)*u%e,h=ze(f,s_,e)*s%e;return{pow_p_5_8:ze(h,Gw,e)*t%e,b2:n}}function u_(t){return t[0]&=248,t[31]&=127,t[31]|=64,t}function qN(t,e){let r=Yd,n=Re(e*e*e,r),i=Re(n*n*e,r),o=a_(t*i).pow_p_5_8,s=Re(t*n*o,r),c=Re(e*s*s,r),a=s,u=Re(s*o_,r),d=c===t,f=c===Re(-t,r),h=c===Re(-t*o_,r);return d&&(s=a),(f||h)&&(s=u),jT(s,r)&&(s=Re(-s,r)),{isValid:d||f,value:s}}var an=Fa(Yd,void 0,!0),Jd={a:BigInt(-1),d:BigInt("37095705934669439343138083508754565189542113879843219016388785533085940283555"),Fp:an,n:BigInt("7237005577332262213973186563042994240857116359379907606001950938285454250989"),h:BigInt(8),Gx:BigInt("15112221349535400772501151409588531511454012693041857206046113283949847762202"),Gy:BigInt("46316835694926478169428394003475163141307993866256225615783033603165251855960"),hash:jw,randomBytes:qd,adjustScalarBytes:u_,uvRatio:qN},es=yp(Jd);function d_(t,e,r){if(e.length>255)throw new Error("Context is too big");return ip(Bw("SigEd25519 no Ed25519 collisions"),new Uint8Array([r?1:0,e.length]),e,t)}var tz=yp({...Jd,domain:d_}),rz=yp({...Jd,domain:d_,prehash:jw}),mc=i_({P:Yd,a:BigInt(486662),montgomeryBits:255,nByteLength:32,Gu:BigInt(9),powPminus2:t=>{let e=Yd,{pow_p_5_8:r,b2:n}=a_(t);return Re(ze(r,BigInt(3),e)*n,e)},adjustScalarBytes:u_,randomBytes:qd});function f_(t){let{y:e}=es.ExtendedPoint.fromHex(t),r=BigInt(1);return an.toBytes(an.create((r+e)*an.inv(r-e)))}function l_(t){let e=Jd.hash(t.subarray(0,32));return Jd.adjustScalarBytes(e).subarray(0,32)}var FN=(an.ORDER+BigInt(3))/BigInt(8),nz=an.pow(Gw,FN),iz=an.sqrt(an.neg(an.ONE)),oz=(an.ORDER-BigInt(5))/BigInt(8),sz=BigInt(486662);var cz=WT(an,an.neg(BigInt(486664)));var az=BigInt("25063068953384623474111414158702152701244531502492656460079210482610430750235"),uz=BigInt("54469307008909316920995813868745141605393597292927456921205312896311721017578"),dz=BigInt("1159843021668779879193775521855586647937357759715417654439879720876111806838"),fz=BigInt("40440834346308536858101042469323190826248399146238708352240133220865137265952");var lz=BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff");var un=function(t,e,r,n){function i(o){return o instanceof r?o:new r(function(s){s(o)})}return new(r||(r=Promise))(function(o,s){function c(d){try{u(n.next(d))}catch(f){s(f)}}function a(d){try{u(n.throw(d))}catch(f){s(f)}}function u(d){d.done?o(d.value):i(d.value).then(c,a)}u((n=n.apply(t,e||[])).next())})},jN=function(t,e){var r={};for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&e.indexOf(n)<0&&(r[n]=t[n]);if(t!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,n=Object.getOwnPropertySymbols(t);i<n.length;i++)e.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(t,n[i])&&(r[n[i]]=t[n[i]]);return r},Bt=class t{static bytesToPrivateKey(e){return un(this,arguments,void 0,function*({privateKeyBytes:r}){let n=es.getPublicKey(r),i={crv:"Ed25519",d:ne.uint8Array(r).toBase64Url(),kty:"OKP",x:ne.uint8Array(n).toBase64Url()};return i.kid=yield ge({jwk:i}),i})}static bytesToPublicKey(e){return un(this,arguments,void 0,function*({publicKeyBytes:r}){let n={kty:"OKP",crv:"Ed25519",x:ne.uint8Array(r).toBase64Url()};return n.kid=yield ge({jwk:n}),n})}static computePublicKey(e){return un(this,arguments,void 0,function*({key:r}){let n=yield t.privateKeyToBytes({privateKey:r}),i=es.getPublicKey(n),o={kty:"OKP",crv:"Ed25519",x:ne.uint8Array(i).toBase64Url()};return o.kid=yield ge({jwk:o}),o})}static convertPrivateKeyToX25519(e){return un(this,arguments,void 0,function*({privateKey:r}){let n=yield t.privateKeyToBytes({privateKey:r}),i=l_(n),o=mc.getPublicKey(i),s={kty:"OKP",crv:"X25519",d:ne.uint8Array(i).toBase64Url(),x:ne.uint8Array(o).toBase64Url()};return s.kid=yield ge({jwk:s}),s})}static convertPublicKeyToX25519(e){return un(this,arguments,void 0,function*({publicKey:r}){let n=yield t.publicKeyToBytes({publicKey:r});if(!(yield t.validatePublicKey({publicKeyBytes:n})))throw new Error("Ed25519: Invalid public key.");let o=f_(n),s={kty:"OKP",crv:"X25519",x:ne.uint8Array(o).toBase64Url()};return s.kid=yield ge({jwk:s}),s})}static generateKey(){return un(this,void 0,void 0,function*(){let e=es.utils.randomPrivateKey(),r=yield t.bytesToPrivateKey({privateKeyBytes:e});return r.kid=yield ge({jwk:r}),r})}static getPublicKey(e){return un(this,arguments,void 0,function*({key:r}){var n;if(!(ui(r)&&r.crv==="Ed25519"))throw new Error("Ed25519: The provided key is not an Ed25519 private JWK.");let{d:i}=r,o=jN(r,["d"]);return(n=o.kid)!==null&&n!==void 0||(o.kid=yield ge({jwk:o})),o})}static privateKeyToBytes(e){return un(this,arguments,void 0,function*({privateKey:r}){if(!ui(r))throw new Error("Ed25519: The provided key is not a valid OKP private key.");return ne.base64Url(r.d).toUint8Array()})}static publicKeyToBytes(e){return un(this,arguments,void 0,function*({publicKey:r}){if(!Wa(r))throw new Error("Ed25519: The provided key is not a valid OKP public key.");return ne.base64Url(r.x).toUint8Array()})}static sign(e){return un(this,arguments,void 0,function*({key:r,data:n}){let i=yield t.privateKeyToBytes({privateKey:r});return es.sign(n,i)})}static validatePublicKey(e){return un(this,arguments,void 0,function*({publicKeyBytes:r}){try{es.ExtendedPoint.fromHex(r).assertValidity()}catch{return!1}return!0})}static verify(e){return un(this,arguments,void 0,function*({key:r,signature:n,data:i}){let o=yield t.publicKeyToBytes({publicKey:r});return es.verify(n,i,o)})}};var Xd=function(t,e,r,n){function i(o){return o instanceof r?o:new r(function(s){s(o)})}return new(r||(r=Promise))(function(o,s){function c(d){try{u(n.next(d))}catch(f){s(f)}}function a(d){try{u(n.throw(d))}catch(f){s(f)}}function u(d){d.done?o(d.value):i(d.value).then(c,a)}u((n=n.apply(t,e||[])).next())})},gp=class extends ci{computePublicKey(e){return Xd(this,arguments,void 0,function*({key:r}){if(!ui(r))throw new TypeError("Invalid key provided. Must be an octet key pair (OKP) private key.");switch(r.crv){case"Ed25519":{let n=yield Bt.computePublicKey({key:r});return n.alg="EdDSA",n}default:throw new Error(`Unsupported curve: ${r.crv}`)}})}generateKey(e){return Xd(this,arguments,void 0,function*({algorithm:r}){switch(r){case"Ed25519":{let n=yield Bt.generateKey();return n.alg="EdDSA",n}}})}getPublicKey(e){return Xd(this,arguments,void 0,function*({key:r}){if(!ui(r))throw new TypeError("Invalid key provided. Must be an octet key pair (OKP) private key.");switch(r.crv){case"Ed25519":{let n=yield Bt.getPublicKey({key:r});return n.alg="EdDSA",n}default:throw new Error(`Unsupported curve: ${r.crv}`)}})}sign(e){return Xd(this,arguments,void 0,function*({key:r,data:n}){if(!ui(r))throw new TypeError("Invalid key provided. Must be an octet key pair (OKP) private key.");switch(r.crv){case"Ed25519":return yield Bt.sign({key:r,data:n});default:throw new Error(`Unsupported curve: ${r.crv}`)}})}verify(e){return Xd(this,arguments,void 0,function*({key:r,signature:n,data:i}){if(!Wa(r))throw new TypeError("Invalid key provided. Must be an octet key pair (OKP) public key.");switch(r.crv){case"Ed25519":return yield Bt.verify({key:r,signature:n,data:i});default:throw new Error(`Unsupported curve: ${r.crv}`)}})}};var no=function(t,e,r,n){function i(o){return o instanceof r?o:new r(function(s){s(o)})}return new(r||(r=Promise))(function(o,s){function c(d){try{u(n.next(d))}catch(f){s(f)}}function a(d){try{u(n.throw(d))}catch(f){s(f)}}function u(d){d.done?o(d.value):i(d.value).then(c,a)}u((n=n.apply(t,e||[])).next())})},zw={Ed25519:{implementation:gp,names:["Ed25519"]},secp256k1:{implementation:Gd,names:["ES256K","secp256k1"]},secp256r1:{implementation:Gd,names:["ES256","secp256r1"]},"SHA-256":{implementation:tp,names:["SHA-256"]}},er=class{constructor(e){var r;this._algorithmInstances=new Map,this._keyStore=(r=e?.keyStore)!==null&&r!==void 0?r:new xh}digest(e){return no(this,arguments,void 0,function*({algorithm:r,data:n}){return yield this.getAlgorithm({algorithm:r}).digest({algorithm:r,data:n})})}exportKey(e){return no(this,arguments,void 0,function*({keyUri:r}){return yield this.getPrivateKey({keyUri:r})})}generateKey(e){return no(this,arguments,void 0,function*({algorithm:r}){let i=yield this.getAlgorithm({algorithm:r}).generateKey({algorithm:r});if(i?.kid===void 0)throw new Error("Generated key is missing a required property: kid");let o=`${Vw}${i.kid}`;return yield this._keyStore.set(o,i),o})}getKeyUri(e){return no(this,arguments,void 0,function*({key:r}){let n=yield ge({jwk:r});return`${Vw}${n}`})}getPublicKey(e){return no(this,arguments,void 0,function*({keyUri:r}){let n=yield this.getPrivateKey({keyUri:r}),i=this.getAlgorithmName({key:n});return yield this.getAlgorithm({algorithm:i}).getPublicKey({key:n})})}importKey(e){return no(this,arguments,void 0,function*({key:r}){var n;if(!t_(r))throw new TypeError("Invalid key provided. Must be a private key in JWK format.");let i=structuredClone(r);(n=i.kid)!==null&&n!==void 0||(i.kid=yield ge({jwk:i}));let o=yield this.getKeyUri({key:i});return yield this._keyStore.set(o,i),o})}sign(e){return no(this,arguments,void 0,function*({keyUri:r,data:n}){let i=yield this.getPrivateKey({keyUri:r}),o=this.getAlgorithmName({key:i});return this.getAlgorithm({algorithm:o}).sign({data:n,key:i})})}verify(e){return no(this,arguments,void 0,function*({key:r,signature:n,data:i}){let o=this.getAlgorithmName({key:r});return this.getAlgorithm({algorithm:o}).verify({key:r,signature:n,data:i})})}getAlgorithm({algorithm:e}){var r;let n=(r=zw[e])===null||r===void 0?void 0:r.implementation;if(!n)throw new Error(`Algorithm not supported: ${e}`);return this._algorithmInstances.has(n)||this._algorithmInstances.set(n,new n),this._algorithmInstances.get(n)}getAlgorithmName({key:e}){let r=e.alg,n=e.crv;for(let i in zw){let o=zw[i];if(r&&o.names.includes(r))return i;if(n&&o.names.includes(n))return i}throw new Error(`Unable to determine algorithm based on provided input: alg=${r}, crv=${n}`)}getPrivateKey(e){return no(this,arguments,void 0,function*({keyUri:r}){let n=yield this._keyStore.get(r);if(!n)throw new Error(`Key not found: ${r}`);return n})}};l();var mp=class t{static getJoseSignatureAlgorithmFromPublicKey(e){let r={Ed25519:"EdDSA","P-256":"ES256","P-384":"ES384","P-521":"ES512",secp256k1:"ES256K"};if(e.alg&&Object.values(r).includes(e.alg))return e.alg;if(e.crv&&Object.keys(r).includes(e.crv))return r[e.crv];throw new Error(`Unable to determine algorithm based on provided input: alg=${e.alg}, crv=${e.crv}. Supported 'alg' values: ${Object.values(r).join(", ")}. Supported 'crv' values: ${Object.keys(r).join(", ")}.`)}static randomBytes(e){return DT(e)}static randomUuid(){return Ka.randomUUID()}static randomPin({length:e}){if(3>e||e>10)throw new Error("randomPin() can securely generate a PIN between 3 to 10 digits.");let r=Math.pow(10,e)-1,n;if(e<=6){let i=Math.pow(10,e);do{let o=t.randomBytes(Math.ceil(e/2));n=new DataView(o.buffer).getUint16(0,!1)%i}while(n>r)}else{let i=Math.pow(10,10);do{let o=t.randomBytes(4);n=new DataView(o.buffer).getUint32(0,!1)%i}while(n>r)}return n.toString().padStart(e,"0")}};l();l();l();l();l();l();l();l();l();l();var ts=function(t,e,r,n){function i(o){return o instanceof r?o:new r(function(s){s(o)})}return new(r||(r=Promise))(function(o,s){function c(d){try{u(n.next(d))}catch(f){s(f)}}function a(d){try{u(n.throw(d))}catch(f){s(f)}}function u(d){d.done?o(d.value):i(d.value).then(c,a)}u((n=n.apply(t,e||[])).next())})},WN=function(t,e){var r={};for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&e.indexOf(n)<0&&(r[n]=t[n]);if(t!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,n=Object.getOwnPropertySymbols(t);i<n.length;i++)e.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(t,n[i])&&(r[n[i]]=t[n[i]]);return r},Ga=class t{static bytesToPrivateKey(e){return ts(this,arguments,void 0,function*({privateKeyBytes:r}){let n=mc.getPublicKey(r),i={kty:"OKP",crv:"X25519",d:ne.uint8Array(r).toBase64Url(),x:ne.uint8Array(n).toBase64Url()};return i.kid=yield ge({jwk:i}),i})}static bytesToPublicKey(e){return ts(this,arguments,void 0,function*({publicKeyBytes:r}){let n={kty:"OKP",crv:"X25519",x:ne.uint8Array(r).toBase64Url()};return n.kid=yield ge({jwk:n}),n})}static computePublicKey(e){return ts(this,arguments,void 0,function*({key:r}){let n=yield t.privateKeyToBytes({privateKey:r}),i=mc.getPublicKey(n),o={kty:"OKP",crv:"X25519",x:ne.uint8Array(i).toBase64Url()};return o.kid=yield ge({jwk:o}),o})}static generateKey(){return ts(this,void 0,void 0,function*(){let e=mc.utils.randomPrivateKey(),r=yield t.bytesToPrivateKey({privateKeyBytes:e});return r.kid=yield ge({jwk:r}),r})}static getPublicKey(e){return ts(this,arguments,void 0,function*({key:r}){var n;if(!(ui(r)&&r.crv==="X25519"))throw new Error("X25519: The provided key is not an X25519 private JWK.");let{d:i}=r,o=WN(r,["d"]);return(n=o.kid)!==null&&n!==void 0||(o.kid=yield ge({jwk:o})),o})}static privateKeyToBytes(e){return ts(this,arguments,void 0,function*({privateKey:r}){if(!ui(r))throw new Error("X25519: The provided key is not a valid OKP private key.");return ne.base64Url(r.d).toUint8Array()})}static publicKeyToBytes(e){return ts(this,arguments,void 0,function*({publicKey:r}){if(!Wa(r))throw new Error("X25519: The provided key is not a valid OKP public key.");return ne.base64Url(r.x).toUint8Array()})}static sharedSecret(e){return ts(this,arguments,void 0,function*({privateKeyA:r,publicKeyB:n}){if("x"in r&&"x"in n&&r.x===n.x)throw new Error("X25519: ECDH shared secret cannot be computed from a single key pair's public and private keys.");let i=yield t.privateKeyToBytes({privateKey:r}),o=yield t.publicKeyToBytes({publicKey:n});return mc.getSharedSecret(i,o)})}};l();l();l();function Mr(t){if(typeof t=="string"&&t.length!==0)return t.split("#").pop()}function Xw({didDocument:t}){var e,r;if(!t)throw new TypeError("Required parameter missing: 'didDocument'");let n=[];return n.push(...(r=(e=t.verificationMethod)===null||e===void 0?void 0:e.filter(Jw))!==null&&r!==void 0?r:[]),Object.keys(Mi).forEach(i=>{var o,s;n.push(...(s=(o=t[i])===null||o===void 0?void 0:o.filter(Jw))!==null&&s!==void 0?s:[])}),n}function h_({didDocument:t}){let r=Xw({didDocument:t}).map(n=>n.type);return[...new Set(r)]}function p_({didDocument:t,methodId:e}){let r=[];return Object.keys(Mi).forEach(n=>{if(Array.isArray(t[n])){let i=t[n],o=Mr(e);i.some(c=>{let a=Mr(c)===o,u=Jw(c)&&Mr(c.id)===o;return a||u})&&r.push(n)}}),r}function y_(t){return!t||typeof t!="object"||t===null?!1:"id"in t&&"type"in t&&"serviceEndpoint"in t}function Jw(t){return!(!t||typeof t!="object"||t===null||!("id"in t&&"type"in t&&"controller"in t)||typeof t.id!="string"||typeof t.type!="string"||typeof t.controller!="string")}function Zw({keyBytes:t,multicodecCode:e,multicodecName:r}){let n=Jt.addPrefix({code:e,data:t,name:r}),i=ne.uint8Array(n).toBase58Btc();return ne.base58Btc(i).toMultibase()}function Qw({multibaseKeyId:t}){try{let e=ne.multibase(t).toBase58Btc(),r=ne.base58Btc(e).toUint8Array(),{code:n,data:i,name:o}=Jt.removePrefix({prefixedData:r});return{keyBytes:i,multicodecCode:n,multicodecName:o}}catch{throw new re(ie.InvalidDid,`Invalid multibase identifier: ${t}`)}}var Zd=function(t,e,r,n){function i(o){return o instanceof r?o:new r(function(s){s(o)})}return new(r||(r=Promise))(function(o,s){function c(d){try{u(n.next(d))}catch(f){s(f)}}function a(d){try{u(n.throw(d))}catch(f){s(f)}}function u(d){d.done?o(d.value):i(d.value).then(c,a)}u((n=n.apply(t,e||[])).next())})},br=class t{constructor({uri:e,document:r,metadata:n,keyManager:i}){this.uri=e,this.document=r,this.metadata=n,this.keyManager=i}export(){return Zd(this,void 0,void 0,function*(){if(!(Array.isArray(this.document.verificationMethod)&&this.document.verificationMethod.length>0))throw new Error(`DID document for '${this.uri}' is missing verification methods`);let e=JSON.parse(JSON.stringify({uri:this.uri,document:this.document,metadata:this.metadata}));if("exportKey"in this.keyManager&&typeof this.keyManager.exportKey=="function"){let r=[];for(let n of this.document.verificationMethod){if(!n.publicKeyJwk)throw new Error(`Verification method '${n.id}' does not contain a public key in JWK format`);let i=yield this.keyManager.getKeyUri({key:n.publicKeyJwk}),o=yield this.keyManager.exportKey({keyUri:i});r.push(Object.assign({},o))}e.privateKeys=r}return e})}getSigner(e){return Zd(this,void 0,void 0,function*(){var r;let n=(r=this.document.verificationMethod)===null||r===void 0?void 0:r.find(a=>{var u,d;return Mr(a.id)===((u=Mr(e?.methodId))!==null&&u!==void 0?u:Mr((d=this.document.assertionMethod)===null||d===void 0?void 0:d[0]))});if(!(n&&n.publicKeyJwk))throw new re(ie.InternalError,"A verification method intended for signing could not be determined from the DID Document");let i=yield this.keyManager.getKeyUri({key:n.publicKeyJwk}),o=yield this.keyManager.getPublicKey({keyUri:i}),s=this.keyManager;return{algorithm:mp.getJoseSignatureAlgorithmFromPublicKey(o),keyId:n.id,sign(a){return Zd(this,arguments,void 0,function*({data:u}){return yield s.sign({data:u,keyUri:i})})},verify(a){return Zd(this,arguments,void 0,function*({data:u,signature:d}){return yield s.verify({data:u,key:o,signature:d})})}}})}static import(e){return Zd(this,arguments,void 0,function*({portableDid:r,keyManager:n=new er}){var i;let o=Xw({didDocument:r.document});if(o.length===0)throw new re(ie.InvalidDidDocument,"At least one verification method is required but 0 were given");for(let c of(i=r.privateKeys)!==null&&i!==void 0?i:[]){let a=yield n.getKeyUri({key:c});(yield n.getPublicKey({keyUri:a}).then(()=>!0).catch(()=>!1))||(yield n.importKey({key:c}))}for(let c of o){if(!c.publicKeyJwk)throw new Error(`Verification method '${c.id}' does not contain a public key in JWK format`);let a=yield n.getKeyUri({key:c.publicKeyJwk});yield n.getPublicKey({keyUri:a})}return new t({uri:r.uri,document:r.document,metadata:r.metadata,keyManager:n})})}};l();l();l();l();l();var eb="0123456789abcdef",m_=[],g_=[];for(let t=0;t<256;t++)m_[t]=eb[t>>4&15]+eb[t&15],t<16&&(t<10?g_[48+t]=t:g_[87+t]=t);var tb=t=>{let e=t.length,r="",n=0;for(;n<e;)r+=m_[t[n++]];return r};var w_=(t,e=0)=>{let r=t.length||0;if(!e){let s=r;for(;s--;)e+=t[s].length}let n=new Uint8Array(e),i=e,o=r;for(;o--;)i-=t[o].length,n.set(t[o],i);return n};l();var b_="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",zN=typeof Uint8Array>"u"?[]:new Uint8Array(256);for(Qd=0;Qd<b_.length;Qd++)zN[b_.charCodeAt(Qd)]=Qd;var Qd;var YN=new TextDecoder,rb=(t,e)=>e?new TextDecoder(e).decode(t):YN.decode(t),JN=new TextEncoder,dn=t=>JN.encode(t);var x_=typeof window<"u"?window:self,E_=x_.crypto||x_.msCrypto||{},lJ=E_.subtle||E_.webkitSubtle;l();function za(t){let e=t<0?1:0;return t=Math.abs(Number(t||1)),Math.floor(Math.log10(t))+1+e}function wp(t){return ArrayBuffer.isView(t)?"arraybufferview":Array.isArray(t)?"array":t instanceof Number?"number":t instanceof Boolean?"boolean":t instanceof Set?"set":t instanceof Map?"map":t instanceof String?"string":t instanceof ArrayBuffer?"arraybuffer":typeof t}function Ue(t,e,r){let n=[],i=null;return Ue._encode(n,t),i=w_(n),Ue.bytes=i.length,ArrayBuffer.isView(e)?(e.set(i,r),e):i}Ue.bytes=-1;Ue._floatConversionDetected=!1;Ue._encode=function(t,e){if(e!=null)switch(wp(e)){case"object":Ue.dict(t,e);break;case"map":Ue.dictMap(t,e);break;case"array":Ue.list(t,e);break;case"set":Ue.listSet(t,e);break;case"string":Ue.string(t,e);break;case"number":Ue.number(t,e);break;case"boolean":Ue.number(t,e);break;case"arraybufferview":Ue.buffer(t,new Uint8Array(e.buffer,e.byteOffset,e.byteLength));break;case"arraybuffer":Ue.buffer(t,new Uint8Array(e));break}};var bp=new Uint8Array([101]),v_=new Uint8Array([100]),S_=new Uint8Array([108]);Ue.buffer=function(t,e){t.push(dn(e.length+":"),e)};Ue.string=function(t,e){t.push(dn(dn(e).byteLength+":"+e))};Ue.number=function(t,e){if(Number.isInteger(e))return t.push(dn("i"+BigInt(e)+"e"));let r=2147483648,n=e/r<<0,i=e%r<<0,o=n*r+i;t.push(dn("i"+o+"e")),o!==e&&!Ue._floatConversionDetected&&(Ue._floatConversionDetected=!0,console.warn('WARNING: Possible data corruption detected with value "'+e+'":','Bencoding only defines support for integers, value was converted to "'+o+'"'),console.trace())};Ue.dict=function(t,e){t.push(v_);let r=0,n,i=Object.keys(e).sort(),o=i.length;for(;r<o;r++)n=i[r],e[n]!=null&&(Ue.string(t,n),Ue._encode(t,e[n]));t.push(bp)};Ue.dictMap=function(t,e){t.push(v_);let r=Array.from(e.keys()).sort();for(let n of r)e.get(n)!=null&&(ArrayBuffer.isView(n)?Ue._encode(t,n):Ue.string(t,String(n)),Ue._encode(t,e.get(n)));t.push(bp)};Ue.list=function(t,e){let r=0,n=e.length;for(t.push(S_);r<n;r++)e[r]!=null&&Ue._encode(t,e[r]);t.push(bp)};Ue.listSet=function(t,e){t.push(S_);for(let r of e)r!=null&&Ue._encode(t,r);t.push(bp)};var A_=Ue;l();var XN=105,ZN=58,QN=100,eC=108,nb=101;function T_(t,e,r){let n=0,i=1;for(let o=e;o<r;o++){let s=t[o];if(s<58&&s>=48){n=n*10+(s-48);continue}if(!(o===e&&s===43)){if(o===e&&s===45){i=-1;continue}if(s===46)break;throw new Error("not a number: buffer["+o+"] = "+s)}}return n*i}function de(t,e,r,n){return t==null||t.length===0?null:(typeof e!="number"&&n==null&&(n=e,e=void 0),typeof r!="number"&&n==null&&(n=r,r=void 0),de.position=0,de.encoding=n||null,de.data=ArrayBuffer.isView(t)?new Uint8Array(t.slice(e,r)):dn(t),de.bytes=de.data.length,de.next())}de.bytes=0;de.position=0;de.data=null;de.encoding=null;de.next=function(){switch(de.data[de.position]){case QN:return de.dictionary();case eC:return de.list();case XN:return de.integer();default:return de.buffer()}};de.find=function(t){let e=de.position,r=de.data.length,n=de.data;for(;e<r;){if(n[e]===t)return e;e++}throw new Error('Invalid data: Missing delimiter "'+String.fromCharCode(t)+'" [0x'+t.toString(16)+"]")};de.dictionary=function(){de.position++;let t={};for(;de.data[de.position]!==nb;){let e=de.buffer(),r=rb(e);r.includes("\uFFFD")&&(r=tb(e)),t[r]=de.next()}return de.position++,t};de.list=function(){de.position++;let t=[];for(;de.data[de.position]!==nb;)t.push(de.next());return de.position++,t};de.integer=function(){let t=de.find(nb),e=T_(de.data,de.position+1,t);return de.position+=t+1-de.position,e};de.buffer=function(){let t=de.find(ZN),e=T_(de.data,de.position,t),r=++t+e;return de.position=r,de.encoding?rb(de.data.slice(t,r)):de.data.slice(t,r)};var __=de;l();function tC(t){let e=2;for(let r of t)e+=xp(r);return e}function rC(t){let e=2;for(let[r,n]of t){let i=dn(r).byteLength;e+=za(i)+1+i,e+=xp(n)}return e}function nC(t){let e=2,r=Object.keys(t);for(let n=0;n<r.length;n++){let i=dn(r[n]).byteLength;e+=za(i)+1+i,e+=xp(t[r[n]])}return e}function iC(t){let e=dn(t).byteLength;return za(e)+1+e}function oC(t){let e=t.byteLength-t.byteOffset;return za(e)+1+e}function xp(t){if(t==null)return 0;let r=wp(t);switch(r){case"arraybufferview":return oC(t);case"string":return iC(t);case"array":case"set":return tC(t);case"number":return 1+za(Math.floor(t))+1;case"bigint":return 1+t.toString().length+1;case"object":return nC(t);case"map":return rC(t);default:throw new TypeError(`Unsupported value of type "${r}"`)}}var ib=xp;var sC=ib,ob={encode:A_,decode:__,byteLength:ib,encodingLength:sC};l();l();var cC=/^(\d{1,3}\.){3,3}\d{1,3}$/;var aC=/^(::)?(((\d{1,3}\.){3}(\d{1,3}){1})?([0-9a-f]){0,4}:{0,2}){1,8}(::)?$/i;var Dn={name:"v4",size:4,isFormat:t=>cC.test(t),encode(t,e,r){r=~~r,e=e||new Uint8Array(r+4);let n=t.length,i=0;for(let o=0;o<n;){let s=t.charCodeAt(o++);s===46?(e[r++]=i,i=0):i=i*10+(s-48)}return e[r]=i,e},decode(t,e){return e=~~e,`${t[e++]}.${t[e++]}.${t[e++]}.${t[e]}`}},io={name:"v6",size:16,isFormat:t=>t.length>0&&aC.test(t),encode(t,e,r){r=~~r;let n=r+16,i=-1,o=0,s=0,c=!0,a=!1;e=e||new Uint8Array(r+16);for(let u=0;u<t.length;u++){let d=t.charCodeAt(u);d===58?(c?i!==-1?(r<n&&(e[r]=0),r<n-1&&(e[r+1]=0),r+=2):r<n&&(i=r):(a===!0?(r<n&&(e[r]=s),r++):(r<n&&(e[r]=o>>8),r<n-1&&(e[r+1]=o&255),r+=2),o=0,s=0),c=!0,a=!1):d===46?(r<n&&(e[r]=s),r++,s=0,o=0,c=!1,a=!0):(c=!1,d>=97?d-=87:d>=65?d-=55:(d-=48,s=s*10+d),o=(o<<4)+d)}if(c===!1)a===!0?(r<n&&(e[r]=s),r++):(r<n&&(e[r]=o>>8),r<n-1&&(e[r+1]=o&255),r+=2);else if(i===0)r<n&&(e[r]=0),r<n-1&&(e[r+1]=0),r+=2;else if(i!==-1){r+=2;for(let u=Math.min(r-1,n-1);u>=i+2;u--)e[u]=e[u-2];e[i]=0,e[i+1]=0,i=r}if(i!==r&&i!==-1)for(r>n-2&&(r=n-2);n>i;)e[--n]=r<n&&r>i?e[--r]:0;else for(;r<n;)e[r++]=0;return e},decode(t,e){e=~~e;let r="";for(let n=0;n<16;n+=2)n!==0&&(r+=":"),r+=(t[e+n]<<8|t[e+n+1]).toString(16);return r.replace(/(^|:)0(:0)*:0(:|$)/,"$1::$3").replace(/:{3,4}/,"::")}};function I_(t){if(Dn.isFormat(t))return Dn.size;if(io.isFormat(t))return io.size;throw Error(`Invalid ip address: ${t}`)}function B_(t){return I_(t)===Dn.size?1:2}function R_(t,e,r){r=~~r;let n=I_(t);return typeof e=="function"&&(e=e(r+n)),n===Dn.size?Dn.encode(t,e,r):io.encode(t,e,r)}function U_(t,e,r){if(e=~~e,r=r||t.length-e,r===Dn.size)return Dn.decode(t,e,r);if(r===io.size)return io.decode(t,e,r);throw Error(`Invalid buffer size needs to be ${Dn.size} for v4 or ${io.size} for v6.`)}l();function ef(t){switch(t){case 1:return"A";case 10:return"NULL";case 28:return"AAAA";case 18:return"AFSDB";case 42:return"APL";case 257:return"CAA";case 60:return"CDNSKEY";case 59:return"CDS";case 37:return"CERT";case 5:return"CNAME";case 49:return"DHCID";case 32769:return"DLV";case 39:return"DNAME";case 48:return"DNSKEY";case 43:return"DS";case 55:return"HIP";case 13:return"HINFO";case 45:return"IPSECKEY";case 25:return"KEY";case 36:return"KX";case 29:return"LOC";case 15:return"MX";case 35:return"NAPTR";case 2:return"NS";case 47:return"NSEC";case 50:return"NSEC3";case 51:return"NSEC3PARAM";case 12:return"PTR";case 46:return"RRSIG";case 17:return"RP";case 24:return"SIG";case 6:return"SOA";case 99:return"SPF";case 33:return"SRV";case 44:return"SSHFP";case 32768:return"TA";case 249:return"TKEY";case 52:return"TLSA";case 250:return"TSIG";case 16:return"TXT";case 252:return"AXFR";case 251:return"IXFR";case 41:return"OPT";case 255:return"ANY"}return"UNKNOWN_"+t}function Ya(t){switch(t.toUpperCase()){case"A":return 1;case"NULL":return 10;case"AAAA":return 28;case"AFSDB":return 18;case"APL":return 42;case"CAA":return 257;case"CDNSKEY":return 60;case"CDS":return 59;case"CERT":return 37;case"CNAME":return 5;case"DHCID":return 49;case"DLV":return 32769;case"DNAME":return 39;case"DNSKEY":return 48;case"DS":return 43;case"HIP":return 55;case"HINFO":return 13;case"IPSECKEY":return 45;case"KEY":return 25;case"KX":return 36;case"LOC":return 29;case"MX":return 15;case"NAPTR":return 35;case"NS":return 2;case"NSEC":return 47;case"NSEC3":return 50;case"NSEC3PARAM":return 51;case"PTR":return 12;case"RRSIG":return 46;case"RP":return 17;case"SIG":return 24;case"SOA":return 6;case"SPF":return 99;case"SRV":return 33;case"SSHFP":return 44;case"TA":return 32768;case"TKEY":return 249;case"TLSA":return 52;case"TSIG":return 250;case"TXT":return 16;case"AXFR":return 252;case"IXFR":return 251;case"OPT":return 41;case"ANY":return 255;case"*":return 255}return t.toUpperCase().startsWith("UNKNOWN_")?parseInt(t.slice(8)):0}l();function O_(t){switch(t){case 0:return"NOERROR";case 1:return"FORMERR";case 2:return"SERVFAIL";case 3:return"NXDOMAIN";case 4:return"NOTIMP";case 5:return"REFUSED";case 6:return"YXDOMAIN";case 7:return"YXRRSET";case 8:return"NXRRSET";case 9:return"NOTAUTH";case 10:return"NOTZONE";case 11:return"RCODE_11";case 12:return"RCODE_12";case 13:return"RCODE_13";case 14:return"RCODE_14";case 15:return"RCODE_15"}return"RCODE_"+t}l();function D_(t){switch(t){case 0:return"QUERY";case 1:return"IQUERY";case 2:return"STATUS";case 3:return"OPCODE_3";case 4:return"NOTIFY";case 5:return"UPDATE";case 6:return"OPCODE_6";case 7:return"OPCODE_7";case 8:return"OPCODE_8";case 9:return"OPCODE_9";case 10:return"OPCODE_10";case 11:return"OPCODE_11";case 12:return"OPCODE_12";case 13:return"OPCODE_13";case 14:return"OPCODE_14";case 15:return"OPCODE_15"}return"OPCODE_"+t}l();function sb(t){switch(t){case 1:return"IN";case 2:return"CS";case 3:return"CH";case 4:return"HS";case 255:return"ANY"}return"UNKNOWN_"+t}function cb(t){switch(t.toUpperCase()){case"IN":return 1;case"CS":return 2;case"CH":return 3;case"HS":return 4;case"ANY":return 255}return 0}l();function k_(t){switch(t){case 1:return"LLQ";case 2:return"UL";case 3:return"NSID";case 5:return"DAU";case 6:return"DHU";case 7:return"N3U";case 8:return"CLIENT_SUBNET";case 9:return"EXPIRE";case 10:return"COOKIE";case 11:return"TCP_KEEPALIVE";case 12:return"PADDING";case 13:return"CHAIN";case 14:return"KEY_TAG";case 26946:return"DEVICEID"}return t<0?null:`OPTION_${t}`}function ab(t){if(typeof t=="number")return t;if(!t)return-1;switch(t.toUpperCase()){case"OPTION_0":return 0;case"LLQ":return 1;case"UL":return 2;case"NSID":return 3;case"OPTION_4":return 4;case"DAU":return 5;case"DHU":return 6;case"N3U":return 7;case"CLIENT_SUBNET":return 8;case"EXPIRE":return 9;case"COOKIE":return 10;case"TCP_KEEPALIVE":return 11;case"PADDING":return 12;case"CHAIN":return 13;case"KEY_TAG":return 14;case"DEVICEID":return 26946;case"OPTION_65535":return 65535}let e=t.match(/_(\d+)$/);return e?parseInt(e[1],10):-1}l();l();function ub(t){let e=0,r=t.length;for(let n=0;n<r;n+=1){let i=t.charCodeAt(n);if(i<=127)e+=1;else if(i<=2047)e+=2;else if((i&63488)!==55296)e+=3;else{let o=n+1;o===r||i>=56320||(t.charCodeAt(o)&64512)!==56320?e+=3:(n=o,e+=4)}}return e}function Ja(t,e,r){let n=t.length;r==null&&(r=0),e===void 0&&(e=new Uint8Array(ub(t)+r));let i=r;for(let o=0;o<n;o+=1){let s=t.charCodeAt(o);if(s<=127)e[i++]=s;else if(s<=2047)e[i++]=192|(s&1984)>>6,e[i++]=128|s&63;else if((s&63488)!==55296)e[i++]=224|(s&61440)>>12,e[i++]=128|(s&4032)>>6,e[i++]=128|s&63;else{let c=o+1;if(c===n||s>=56320)e[i++]=239,e[i++]=191,e[i++]=189;else{let a=t.charCodeAt(c);(a&64512)!==56320?(e[i++]=239,e[i++]=191,e[i++]=189):(o=c,s=65536|(s&1023)<<10|a&1023,e[i++]=240|(s&1835008)>>18,e[i++]=128|(s&258048)>>12,e[i++]=128|(s&4032)>>6,e[i++]=128|s&63)}}}return Ja.bytes=i-r,e}Ja.bytes=0;function Xa(t,e,r){let n="";e==null&&(e=0),r==null&&(r=t.length);for(let i=e;i<r;){let o=t[i++],s;if(o<=128)s=o;else if(o>191&&o<224)s=(o&31)<<6|t[i++]&63;else if(o>239&&o<365){s=((o&7)<<18|(t[i++]&63)<<12|(t[i++]&63)<<6|t[i++]&63)-65536;let c=55296|s>>10&1023;n+=String.fromCharCode(c),s=56320|s&1023}else s=(o&15)<<12|(t[i++]&63)<<6|t[i++]&63;n+=String.fromCharCode(s)}return Xa.bytes=r-e,n}Xa.bytes=0;var rs=t=>t instanceof Uint8Array;function oo(t){return typeof t=="string"?ub(t):t.byteLength}function Ep(t){return t instanceof Uint8Array?t:Array.isArray(t)?new Uint8Array(t):Ja(t)}function vp(t,e,r){if(typeof e!="string")throw new Error("unknown input type");return Ja(e,t,r),Ja.bytes}var tf={},N_=new Array(255);for(let t=0;t<=15;t+=1){let e=t.toString(16),r=e.toUpperCase();for(let n=0;n<=15;n+=1){let i=n.toString(16),o=i.toUpperCase(),s=t<<4|n,c=`${e}${i}`;N_[s]=c,tf[c]=s,tf[`${r}${i}`]=s,tf[`${e}${o}`]=s,tf[`${r}${o}`]=s}}function C_(t,e,r){let n="";for(let i=e;i<r;){let o=t[i++];n+=N_[o]}return n}function db(t){return t.length>>>1}function L_(t,e,r,n){let i=0;for(;r<n;){let o=e.substr(i,2),s=tf[o];if(s===void 0)return;t[r++]=s,i+=2}return t}var gC=Math.pow(2,24),mC=Math.pow(2,16),wC=Math.pow(2,8),di=(t,e)=>t[e]*gC+t[e+1]*mC+t[e+2]*wC+t[e+3],he=(t,e)=>t[e]<<8|t[e+1],fi=(t,e,r)=>(e=+e,t[r+3]=e,e=e>>>8,t[r+2]=e,e=e>>>8,t[r+1]=e,e=e>>>8,t[r]=e,r+4),ae=(t,e,r)=>(t[r]=e>>8,t[r+1]=e&255,r+2);function xr(t,e,r,n,i){return r<0&&(n-=r,r=0),n<0&&(n=0),i<0?new Uint8Array(0):r>=e.length||n>=i?0:bC(t,e,r,n,i)}function bC(t,e,r,n,i){i-n>e.length-r&&(i=n+e.length-r);let o=i-n,s=t.length-n;return o>s&&(o=s),(n!==0||i<t.length)&&(t=new Uint8Array(t.buffer,t.byteOffset+n,o)),e.set(t,r),o}var EC=0,P_=32768,lb=32768,vC=~lb,K_=32768,SC=~K_;function He({bytes:t=0,encode:e,decode:r,encodingLength:n}){return e.bytes=t,r.bytes=t,{encode:e,decode:r,encodingLength:n||(()=>t)}}var se=He({encode(t,e,r){e||(e=new Uint8Array(se.encodingLength(t))),r||(r=0);let n=r,i=t.replace(/^\.|\.$/gm,"");if(i.length){let o=i.split(".");for(let s=0;s<o.length;s++){let c=vp(e,o[s],r+1);e[r]=c,r+=c+1}}return e[r++]=0,se.encode.bytes=r-n,e},decode(t,e){e||(e=0);let r=[],n=e,i=0,o=0,s=!1;for(;;){if(e>=t.length)throw new Error("Cannot decode name (buffer overflow)");let c=t[e++];if(o+=s?0:1,c===0)break;if(c&192)if((c&192)===192){if(e+1>t.length)throw new Error("Cannot decode name (buffer overflow)");let a=he(t,e-1)-49152;if(a>=n)throw new Error("Cannot decode name (bad pointer)");e=a,n=a,o+=s?0:1,s=!0}else throw new Error("Cannot decode name (bad label)");else{if(e+c>t.length)throw new Error("Cannot decode name (buffer overflow)");if(i+=c+1,i>254)throw new Error("Cannot decode name (name too long)");r.push(Xa(t,e,e+c)),e+=c,o+=s?0:c}}return se.decode.bytes=o,r.length===0?".":r.join(".")},encodingLength(t){return t==="."||t===".."?1:oo(t.replace(/^\.|\.$/gm,""))+2}}),Rt=He({encode(t,e,r){e||(e=new Uint8Array(Rt.encodingLength(t))),r||(r=0);let n=vp(e,t,r+1);return e[r]=n,Rt.encode.bytes=n+1,e},decode(t,e){e||(e=0);let r=t[e],n=Xa(t,e+1,e+1+r);return Rt.decode.bytes=r+1,n},encodingLength(t){return oo(t)+1}}),Za=He({bytes:12,encode(t,e,r){e||(e=new Uint8Array(Za.encodingLength(t))),r||(r=0);let n=(t.flags||0)&32767,i=t.type==="response"?P_:EC;return ae(e,t.id||0,r),ae(e,n|i,r+2),ae(e,t.questions.length,r+4),ae(e,t.answers.length,r+6),ae(e,t.authorities.length,r+8),ae(e,t.additionals.length,r+10),e},decode(t,e){if(e||(e=0),t.length<12)throw new Error("Header must be 12 bytes");let r=he(t,e+2);return{id:he(t,e),type:r&P_?"response":"query",flags:r&32767,flag_qr:(r>>15&1)===1,opcode:D_(r>>11&15),flag_aa:(r>>10&1)===1,flag_tc:(r>>9&1)===1,flag_rd:(r>>8&1)===1,flag_ra:(r>>7&1)===1,flag_z:(r>>6&1)===1,flag_ad:(r>>5&1)===1,flag_cd:(r>>4&1)===1,rcode:O_(r&15),questions:new Array(he(t,e+4)),answers:new Array(he(t,e+6)),authorities:new Array(he(t,e+8)),additionals:new Array(he(t,e+10))}},encodingLength(){return 12}}),Ap=He({encode(t,e,r){e||(e=new Uint8Array(Ap.encodingLength(t))),r||(r=0);let n=t.length;return ae(e,n,r),xr(t,e,r+2,0,n),Ap.encode.bytes=n+2,e},decode(t,e){e||(e=0);let r=he(t,e),n=t.slice(e+2,e+2+r);return Ap.decode.bytes=r+2,n},encodingLength(t){return t.length+2}}),Tp=He({encode(t,e,r){return e||(e=new Uint8Array(Tp.encodingLength(t))),r||(r=0),se.encode(t,e,r+2),ae(e,se.encode.bytes,r),Tp.encode.bytes=se.encode.bytes+2,e},decode(t,e){e||(e=0);let r=he(t,e),n=se.decode(t,e+2);return Tp.decode.bytes=r+2,n},encodingLength(t){return se.encodingLength(t)+2}}),_p=He({encode(t,e,r){e||(e=new Uint8Array(_p.encodingLength(t))),r||(r=0);let n=r;return r+=2,se.encode(t.mname,e,r),r+=se.encode.bytes,se.encode(t.rname,e,r),r+=se.encode.bytes,fi(e,t.serial||0,r),r+=4,fi(e,t.refresh||0,r),r+=4,fi(e,t.retry||0,r),r+=4,fi(e,t.expire||0,r),r+=4,fi(e,t.minimum||0,r),r+=4,ae(e,r-n-2,n),_p.encode.bytes=r-n,e},decode(t,e){e||(e=0);let r=e,n={};return e+=2,n.mname=se.decode(t,e),e+=se.decode.bytes,n.rname=se.decode(t,e),e+=se.decode.bytes,n.serial=di(t,e),e+=4,n.refresh=di(t,e),e+=4,n.retry=di(t,e),e+=4,n.expire=di(t,e),e+=4,n.minimum=di(t,e),e+=4,_p.decode.bytes=e-r,n},encodingLength(t){return 22+se.encodingLength(t.mname)+se.encodingLength(t.rname)}}),Ip=He({encode(t,e,r){Array.isArray(t)||(t=[t]);for(let i=0;i<t.length;i++)if(typeof t[i]=="string"&&(t[i]=Ep(t[i])),!rs(t[i]))throw new Error("Must be a Buffer");e||(e=new Uint8Array(Ip.encodingLength(t))),r||(r=0);let n=r;return r+=2,t.forEach(function(i){e[r++]=i.length,xr(i,e,r,0,i.length),r+=i.length}),ae(e,r-n-2,n),Ip.encode.bytes=r-n,e},decode(t,e){e||(e=0);let r=e,n=he(t,e);e+=2;let i=[];for(;n>0;){let o=t[e++];if(--n,n<o)throw new Error("Buffer overflow");i.push(t.slice(e,e+o)),e+=o,n-=o}return Ip.decode.bytes=e-r,i},encodingLength(t){Array.isArray(t)||(t=[t]);let e=2;return t.forEach(function(r){typeof r=="string"?e+=oo(r)+1:e+=r.length+1}),e}}),Bp=He({encode(t,e,r){e||(e=new Uint8Array(Bp.encodingLength(t))),r||(r=0),typeof t=="string"&&(t=Ep(t)),t||(t=new Uint8Array(0));let n=r;r+=2;let i=t.length;return xr(t,e,r,0,i),r+=i,ae(e,r-n-2,n),Bp.encode.bytes=r-n,e},decode(t,e){e||(e=0);let r=e,n=he(t,e);e+=2;let i=t.slice(e,e+n);return e+=n,Bp.decode.bytes=e-r,i},encodingLength(t){return t?(rs(t)?t.length:oo(t))+2:2}}),Rp=He({encode(t,e,r){e||(e=new Uint8Array(Rp.encodingLength(t))),r||(r=0);let n=r;return r+=2,Rt.encode(t.cpu,e,r),r+=Rt.encode.bytes,Rt.encode(t.os,e,r),r+=Rt.encode.bytes,ae(e,r-n-2,n),Rp.encode.bytes=r-n,e},decode(t,e){e||(e=0);let r=e,n={};return e+=2,n.cpu=Rt.decode(t,e),e+=Rt.decode.bytes,n.os=Rt.decode(t,e),e+=Rt.decode.bytes,Rp.decode.bytes=e-r,n},encodingLength(t){return Rt.encodingLength(t.cpu)+Rt.encodingLength(t.os)+2}}),tu=He({encode(t,e,r){return e||(e=new Uint8Array(tu.encodingLength(t))),r||(r=0),se.encode(t,e,r+2),ae(e,se.encode.bytes,r),tu.encode.bytes=se.encode.bytes+2,e},decode(t,e){e||(e=0);let r=se.decode(t,e+2);return tu.decode.bytes=se.decode.bytes+2,r},encodingLength(t){return se.encodingLength(t)+2}}),Up=He({encode(t,e,r){e||(e=new Uint8Array(Up.encodingLength(t))),r||(r=0),ae(e,t.priority||0,r+2),ae(e,t.weight||0,r+4),ae(e,t.port||0,r+6),se.encode(t.target,e,r+8);let n=se.encode.bytes+6;return ae(e,n,r),Up.encode.bytes=n+2,e},decode(t,e){e||(e=0);let r=he(t,e),n={};return n.priority=he(t,e+2),n.weight=he(t,e+4),n.port=he(t,e+6),n.target=se.decode(t,e+8),Up.decode.bytes=r+2,n},encodingLength(t){return 8+se.encodingLength(t.target)}}),ns=He({encode(t,e,r){let n=ns.encodingLength(t);return e||(e=new Uint8Array(ns.encodingLength(t))),r||(r=0),t.issuerCritical&&(t.flags=ns.ISSUER_CRITICAL),ae(e,n-2,r),r+=2,e[r]=t.flags||0,r+=1,Rt.encode(t.tag,e,r),r+=Rt.encode.bytes,vp(e,t.value,r),r+=oo(t.value),ns.encode.bytes=n,e},decode(t,e){e||(e=0);let r=he(t,e);e+=2;let n=e,i={};return i.flags=t[e],e+=1,i.tag=Rt.decode(t,e),e+=Rt.decode.bytes,i.value=Xa(t,e,n+r),i.issuerCritical=!!(i.flags&ns.ISSUER_CRITICAL),ns.decode.bytes=r+2,i},encodingLength(t){return Rt.encodingLength(t.tag)+Rt.encodingLength(t.value)+2}});ns.ISSUER_CRITICAL=128;var Op=He({encode(t,e,r){e||(e=new Uint8Array(Op.encodingLength(t))),r||(r=0);let n=r;return r+=2,ae(e,t.preference||0,r),r+=2,se.encode(t.exchange,e,r),r+=se.encode.bytes,ae(e,r-n-2,n),Op.encode.bytes=r-n,e},decode(t,e){e||(e=0);let r=e,n={};return e+=2,n.preference=he(t,e),e+=2,n.exchange=se.decode(t,e),e+=se.decode.bytes,Op.decode.bytes=e-r,n},encodingLength(t){return 4+se.encodingLength(t.exchange)}}),$_=He({encode(t,e,r){return e||(e=new Uint8Array($_.encodingLength(t))),r||(r=0),ae(e,4,r),r+=2,Dn.encode(t,e,r),e},decode(t,e){return e||(e=0),e+=2,Dn.decode(t,e)},bytes:6}),Dp=He({encode(t,e,r){return e||(e=new Uint8Array(Dp.encodingLength(t))),r||(r=0),ae(e,16,r),r+=2,io.encode(t,e,r),Dp.encode.bytes=18,e},decode(t,e){e||(e=0),e+=2;let r=io.decode(t,e);return Dp.decode.bytes=18,r},bytes:18}),M_=t=>new Uint8Array(t),so=He({encode(t,e,r){e||(e=new Uint8Array(so.encodingLength(t))),r||(r=0);let n=r,i=ab(t.code);if(ae(e,i,r),r+=2,t.data)ae(e,t.data.length,r),r+=2,xr(t.data,e,r),r+=t.data.length;else switch(i){case 8:{let o=t.sourcePrefixLength||0,s=t.family||B_(t.ip,M_),c=R_(t.ip,M_),a=Math.ceil(o/8);ae(e,a+4,r),r+=2,ae(e,s,r),r+=2,e[r++]=o,e[r++]=t.scopePrefixLength||0,xr(c,e,r,0,a),r+=a}break;case 11:t.timeout?(ae(e,2,r),r+=2,ae(e,t.timeout,r),r+=2):(ae(e,0,r),r+=2);break;case 12:{let o=t.length||0;ae(e,o,r),r+=2,e.fill(0,r,r+o),r+=o}break;case 14:{let o=t.tags.length*2;ae(e,o,r),r+=2;for(let s of t.tags)ae(e,s,r),r+=2}break;default:throw new Error(`Unknown roption code: ${t.code}`)}return so.encode.bytes=r-n,e},decode(t,e){e||(e=0);let r={};r.code=he(t,e),r.type=k_(r.code),e+=2;let n=he(t,e);switch(e+=2,r.data=t.slice(e,e+n),r.code){case 8:r.family=he(t,e),e+=2,r.sourcePrefixLength=t[e++],r.scopePrefixLength=t[e++];{let i=new Uint8Array(r.family===1?4:16);xr(t,i,0,e,e+n-4),r.ip=U_(i)}break;case 11:n>0&&(r.timeout=he(t,e),e+=2);break;case 14:r.tags=[];for(let i=0;i<n;i+=2)r.tags.push(he(t,e)),e+=2}return so.decode.bytes=n+4,r},encodingLength(t){if(t.data)return t.data.length+4;switch(ab(t.code)){case 8:{let r=t.sourcePrefixLength||0;return Math.ceil(r/8)+8}case 11:return typeof t.timeout=="number"?6:4;case 12:return t.length+4;case 14:return 4+t.tags.length*2}throw new Error(`Unknown roption code: ${t.code}`)}}),is=He({encode(t,e,r){e||(e=new Uint8Array(is.encodingLength(t))),r||(r=0);let n=r,i=eu(t,so);return ae(e,i,r),r=af(t,so,e,r+2),is.encode.bytes=r-n,e},decode(t,e){e||(e=0);let r=e,n=[],i=he(t,e);e+=2;let o=0;for(;i>0;)n[o++]=so.decode(t,e),e+=so.decode.bytes,i-=so.decode.bytes;return is.decode.bytes=e-r,n},encodingLength(t){return 2+eu(t||[],so)}}),li=He({encode(t,e,r){e||(e=new Uint8Array(li.encodingLength(t))),r||(r=0);let n=r,i=t.key;if(!rs(i))throw new Error("Key must be a Buffer");return r+=2,ae(e,t.flags,r),r+=2,e[r]=li.PROTOCOL_DNSSEC,r+=1,e[r]=t.algorithm,r+=1,xr(i,e,r,0,i.length),r+=i.length,li.encode.bytes=r-n,ae(e,li.encode.bytes-2,n),e},decode(t,e){e||(e=0);let r=e,n={},i=he(t,e);if(e+=2,n.flags=he(t,e),e+=2,t[e]!==li.PROTOCOL_DNSSEC)throw new Error("Protocol must be 3");return e+=1,n.algorithm=t[e],e+=1,n.key=t.slice(e,r+i+2),e+=n.key.length,li.decode.bytes=e-r,n},encodingLength(t){return 6+oo(t.key)}});li.PROTOCOL_DNSSEC=3;li.ZONE_KEY=128;li.SECURE_ENTRYPOINT=32768;var rf=He({encode(t,e,r){e||(e=new Uint8Array(rf.encodingLength(t))),r||(r=0);let n=r,i=t.signature;if(!rs(i))throw new Error("Signature must be a Buffer");return r+=2,ae(e,Ya(t.typeCovered),r),r+=2,e[r]=t.algorithm,r+=1,e[r]=t.labels,r+=1,fi(e,t.originalTTL,r),r+=4,fi(e,t.expiration,r),r+=4,fi(e,t.inception,r),r+=4,ae(e,t.keyTag,r),r+=2,se.encode(t.signersName,e,r),r+=se.encode.bytes,xr(i,e,r,0,i.length),r+=i.length,rf.encode.bytes=r-n,ae(e,rf.encode.bytes-2,n),e},decode(t,e){e||(e=0);let r=e,n={},i=he(t,e);return e+=2,n.typeCovered=ef(he(t,e)),e+=2,n.algorithm=t[e],e+=1,n.labels=t[e],e+=1,n.originalTTL=di(t,e),e+=4,n.expiration=di(t,e),e+=4,n.inception=di(t,e),e+=4,n.keyTag=he(t,e),e+=2,n.signersName=se.decode(t,e),e+=se.decode.bytes,n.signature=t.slice(e,r+i+2),e+=n.signature.length,rf.decode.bytes=e-r,n},encodingLength(t){return 20+se.encodingLength(t.signersName)+oo(t.signature)}}),nf=He({encode(t,e,r){e||(e=new Uint8Array(nf.encodingLength(t))),r||(r=0);let n=r;return r+=2,se.encode(t.mbox||".",e,r),r+=se.encode.bytes,se.encode(t.txt||".",e,r),r+=se.encode.bytes,nf.encode.bytes=r-n,ae(e,nf.encode.bytes-2,n),e},decode(t,e){e||(e=0);let r=e,n={};return e+=2,n.mbox=se.decode(t,e)||".",e+=se.decode.bytes,n.txt=se.decode(t,e)||".",e+=se.decode.bytes,nf.decode.bytes=e-r,n},encodingLength(t){return 2+se.encodingLength(t.mbox||".")+se.encodingLength(t.txt||".")}}),Kr=He({encode(t,e,r){e||(e=new Uint8Array(Kr.encodingLength(t))),r||(r=0);let n=r,i=[];for(let o=0;o<t.length;o++){let s=Ya(t[o]);i[s>>8]===void 0&&(i[s>>8]=[]),i[s>>8][s>>3&31]|=1<<7-(s&7)}for(let o=0;o<i.length;o++)if(i[o]!==void 0){let s=Ep(i[o]);e[r]=o,r+=1,e[r]=s.length,r+=1,xr(s,e,r,0,s.length),r+=s.length}return Kr.encode.bytes=r-n,e},decode(t,e,r){e||(e=0);let n=e,i=[];for(;e-n<r;){let o=t[e];e+=1;let s=t[e];e+=1;for(let c=0;c<s;c++){let a=t[e+c];for(let u=0;u<8;u++)if(a&1<<7-u){let d=ef(o<<8|c<<3|u);i.push(d)}}e+=s}return Kr.decode.bytes=e-n,i},encodingLength(t){let e=[];for(let n=0;n<t.length;n++){let i=Ya(t[n]);e[i>>8]=Math.max(e[i>>8]||0,i&255)}let r=0;for(let n=0;n<e.length;n++)e[n]!==void 0&&(r+=2+Math.ceil((e[n]+1)/8));return r}}),of=He({encode(t,e,r){e||(e=new Uint8Array(of.encodingLength(t))),r||(r=0);let n=r;return r+=2,se.encode(t.nextDomain,e,r),r+=se.encode.bytes,Kr.encode(t.rrtypes,e,r),r+=Kr.encode.bytes,of.encode.bytes=r-n,ae(e,of.encode.bytes-2,n),e},decode(t,e){e||(e=0);let r=e,n={},i=he(t,e);return e+=2,n.nextDomain=se.decode(t,e),e+=se.decode.bytes,n.rrtypes=Kr.decode(t,e,i-(e-r)),e+=Kr.decode.bytes,of.decode.bytes=e-r,n},encodingLength(t){return 2+se.encodingLength(t.nextDomain)+Kr.encodingLength(t.rrtypes)}}),sf=He({encode(t,e,r){e||(e=new Uint8Array(sf.encodingLength(t))),r||(r=0);let n=r,i=t.salt;if(!rs(i))throw new Error("salt must be a Buffer");let o=t.nextDomain;if(!rs(o))throw new Error("nextDomain must be a Buffer");return r+=2,e[r]=t.algorithm,r+=1,e[r]=t.flags,r+=1,ae(e,t.iterations,r),r+=2,e[r]=i.length,r+=1,xr(i,e,r,0,i.length),r+=i.length,e[r]=o.length,r+=1,xr(o,e,r,0,o.length),r+=o.length,Kr.encode(t.rrtypes,e,r),r+=Kr.encode.bytes,sf.encode.bytes=r-n,ae(e,sf.encode.bytes-2,n),e},decode(t,e){e||(e=0);let r=e,n={},i=he(t,e);e+=2,n.algorithm=t[e],e+=1,n.flags=t[e],e+=1,n.iterations=he(t,e),e+=2;let o=t[e];e+=1,n.salt=t.slice(e,e+o),e+=o;let s=t[e];return e+=1,n.nextDomain=t.slice(e,e+s),e+=s,n.rrtypes=Kr.decode(t,e,i-(e-r)),e+=Kr.decode.bytes,sf.decode.bytes=e-r,n},encodingLength(t){return 8+t.salt.length+t.nextDomain.length+Kr.encodingLength(t.rrtypes)}}),cf=He({encode(t,e,r){e||(e=new Uint8Array(cf.encodingLength(t))),r||(r=0);let n=r,i=t.digest;if(!rs(i))throw new Error("Digest must be a Buffer");return r+=2,ae(e,t.keyTag,r),r+=2,e[r]=t.algorithm,r+=1,e[r]=t.digestType,r+=1,xr(i,e,r,0,i.length),r+=i.length,cf.encode.bytes=r-n,ae(e,cf.encode.bytes-2,n),e},decode(t,e){e||(e=0);let r=e,n={},i=he(t,e);return e+=2,n.keyTag=he(t,e),e+=2,n.algorithm=t[e],e+=1,n.digestType=t[e],e+=1,n.digest=t.slice(e,r+i+2),e+=n.digest.length,cf.decode.bytes=e-r,n},encodingLength(t){return 6+oo(t.digest)}}),Qa=He({encode(t,e,r){e||(e=new Uint8Array(Qa.encodingLength(t))),r||(r=0);let n=r;r+=2,e[r]=t.algorithm,r+=1,e[r]=t.hash,r+=1;let i=db(t.fingerprint),o=hb(t.hash);if(i!==o)throw new Error(`Invalid length of fingerprint "${t.fingerprint}" for hashType=${t.hash}: ${i} != ${o}`);return L_(e,t.fingerprint,r,r+=i),Qa.encode.bytes=r-n,ae(e,Qa.encode.bytes-2,n),e},decode(t,e){e||(e=0);let r=e,n={};e+=2,n.algorithm=t[e],e+=1,n.hash=t[e],e+=1;let i=hb(n.hash);return n.fingerprint=C_(t,e,e+i),e+=i,Qa.decode.bytes=e-r,n},encodingLength(t){return 4+db(t.fingerprint)}});function hb(t){if(t===1)return 20;if(t===2)return 32;throw new Error(`Invalid hashType=${t}, supported=1,2`)}Qa.getFingerprintLengthForHashType=hb;function fb(t){switch(t.toUpperCase()){case"A":return $_;case"PTR":return tu;case"CNAME":return tu;case"DNAME":return tu;case"TXT":return Ip;case"NULL":return Bp;case"AAAA":return Dp;case"SRV":return Up;case"HINFO":return Rp;case"CAA":return ns;case"NS":return Tp;case"SOA":return _p;case"MX":return Op;case"OPT":return is;case"DNSKEY":return li;case"RRSIG":return rf;case"RP":return nf;case"NSEC":return of;case"NSEC3":return sf;case"SSHFP":return Qa;case"DS":return cf}return Ap}var fn=He({encode(t,e,r){e||(e=new Uint8Array(fn.encodingLength(t))),r||(r=0);let n=r;if(se.encode(t.name,e,r),r+=se.encode.bytes,ae(e,Ya(t.type),r),t.type.toUpperCase()==="OPT"){if(t.name!==".")throw new Error("OPT name must be root.");ae(e,t.udpPayloadSize||4096,r+2),e[r+4]=t.extendedRcode||0,e[r+5]=t.ednsVersion||0,ae(e,t.flags||0,r+6),r+=8,is.encode(t.options||[],e,r),r+=is.encode.bytes}else{let i=cb(t.class===void 0?"IN":t.class);t.flush&&(i|=lb),ae(e,i,r+2),fi(e,t.ttl||0,r+4),r+=8;let o=fb(t.type);o.encode(t.data,e,r),r+=o.encode.bytes}return fn.encode.bytes=r-n,e},decode(t,e){e||(e=0);let r={},n=e;if(r.name=se.decode(t,e),e+=se.decode.bytes,r.type=ef(he(t,e)),r.type==="OPT")r.udpPayloadSize=he(t,e+2),r.extendedRcode=t[e+4],r.ednsVersion=t[e+5],r.flags=he(t,e+6),r.flag_do=(r.flags>>15&1)===1,r.options=is.decode(t,e+8),e+=8+is.decode.bytes;else{let i=he(t,e+2);r.ttl=di(t,e+4),r.class=sb(i&vC),r.flush=!!(i&lb);let o=fb(r.type);r.data=o.decode(t,e+8),e+=8+o.decode.bytes}return fn.decode.bytes=e-n,r},encodingLength(t){let e=t.data!==null&&t.data!==void 0?t.data:t.options;return se.encodingLength(t.name)+8+fb(t.type).encodingLength(e)}}),ru=He({encode(t,e,r){e||(e=new Uint8Array(ru.encodingLength(t))),r||(r=0);let n=r;return se.encode(t.name,e,r),r+=se.encode.bytes,ae(e,Ya(t.type),r),r+=2,ae(e,cb(t.class===void 0?"IN":t.class),r),r+=2,ru.encode.bytes=r-n,t},decode(t,e){e||(e=0);let r=e,n={};return n.name=se.decode(t,e),e+=se.decode.bytes,n.type=ef(he(t,e)),e+=2,n.class=sb(he(t,e)),e+=2,!!(n.class&K_)&&(n.class&=SC),ru.decode.bytes=e-r,n},encodingLength(t){return se.encodingLength(t.name)+4}});var H_=1024;var qt={encode:function(t,e,r){let n=!e;n&&(e=new Uint8Array(AC(t))),r||(r=0);let i=r;return t.questions||(t.questions=[]),t.answers||(t.answers=[]),t.authorities||(t.authorities=[]),t.additionals||(t.additionals=[]),Za.encode(t,e,r),r+=Za.encode.bytes,r=af(t.questions,ru,e,r),r=af(t.answers,fn,e,r),r=af(t.authorities,fn,e,r),r=af(t.additionals,fn,e,r),qt.encode.bytes=r-i,n&&uf.bytes!==e.length?e.slice(0,uf.bytes):e},decode:function(t,e){e||(e=0);let r=e,n=Za.decode(t,e);return e+=Za.decode.bytes,e=Sp(n.questions,ru,t,e),e=Sp(n.answers,fn,t,e),e=Sp(n.authorities,fn,t,e),e=Sp(n.additionals,fn,t,e),qt.decode.bytes=e-r,n},encodingLength:function(t){return Za.encodingLength(t)+eu(t.questions||[],ru)+eu(t.answers||[],fn)+eu(t.authorities||[],fn)+eu(t.additionals||[],fn)}};qt.encode.bytes=0;qt.decode.bytes=0;function kp(t,e){if(t.questions)throw new Error("Only one .question object expected instead of a .questions array!");let r=Object.assign({type:e},t);return r.question&&(r.questions=[r.question],delete r.question),r}var Np={encode:function(t,e,r){return e=qt.encode(kp(t,"query"),e,r),Np.encode.bytes=qt.encode.bytes,e},decode:function(t,e){let r=qt.decode(t,e);return Np.decode.bytes=qt.decode.bytes,r.questions&&(r.question=r.questions[0],delete r.questions),r},encodingLength:function(t){return qt.encodingLength(kp(t,"query"))}};Np.encode.bytes=0;Np.decode.bytes=0;var Cp={encode:function(t,e,r){return e=qt.encode(kp(t,"response"),e,r),Cp.encode.bytes=qt.encode.bytes,e},decode:function(t,e){let r=qt.decode(t,e);return Cp.decode.bytes=qt.decode.bytes,r.questions&&(r.question=r.questions[0],delete r.questions),r},encodingLength:function(t){return qt.encodingLength(kp(t,"response"))}};Cp.encode.bytes=0;Cp.decode.bytes=0;var uf=qt.encode,Lp=qt.decode,AC=qt.encodingLength;function V_(t){let e=uf(t),r=new Uint8Array(2+e.byteLength);return ae(r,e.byteLength),xr(e,r,2,0,e.length),V_.bytes=r.byteLength,r}V_.bytes=0;function q_(t){let e=he(t,0);if(t.byteLength<e+2)return null;let r=Lp(t.slice(2));return q_.bytes=Lp.bytes,r}q_.bytes=0;function eu(t,e){let r=0;for(let n=0;n<t.length;n++)r+=e.encodingLength(t[n]);return r}function af(t,e,r,n){for(let i=0;i<t.length;i++)e.encode(t[i],r,n),n+=e.encode.bytes;return n}function Sp(t,e,r,n){for(let i=0;i<t.length;i++)t[i]=e.decode(r,n),n+=e.decode.bytes;return n}l();var F_=function(t,e,r,n){function i(o){return o instanceof r?o:new r(function(s){s(o)})}return new(r||(r=Promise))(function(o,s){function c(d){try{u(n.next(d))}catch(f){s(f)}}function a(d){try{u(n.throw(d))}catch(f){s(f)}}function u(d){d.done?o(d.value):i(d.value).then(c,a)}u((n=n.apply(t,e||[])).next())})},ln=class{static getSigningMethod(e){return F_(this,void 0,void 0,function*(){throw new Error("Not implemented: Classes extending DidMethod must implement getSigningMethod()")})}static resolve(e,r){return F_(this,void 0,void 0,function*(){throw new Error("Not implemented: Classes extending DidMethod must implement resolve()")})}};var Ct=function(t,e,r,n){function i(o){return o instanceof r?o:new r(function(s){s(o)})}return new(r||(r=Promise))(function(o,s){function c(d){try{u(n.next(d))}catch(f){s(f)}}function a(d){try{u(n.throw(d))}catch(f){s(f)}}function u(d){d.done?o(d.value):i(d.value).then(c,a)}u((n=n.apply(t,e||[])).next())})},j_=function(t,e){var r={};for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&e.indexOf(n)<0&&(r[n]=t[n]);if(t!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,n=Object.getOwnPropertySymbols(t);i<n.length;i++)e.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(t,n[i])&&(r[n[i]]=t[n[i]]);return r},W_="https://diddht.tbddev.org",TC=0,os=7200,Pp=";",cr=",",pb;(function(t){t[t.Discoverable=0]="Discoverable",t[t.Organization=1]="Organization",t[t.Government=2]="Government",t[t.Corporation=3]="Corporation",t[t.LocalBusiness=4]="LocalBusiness",t[t.SoftwarePackage=5]="SoftwarePackage",t[t.WebApp=6]="WebApp",t[t.FinancialInstitution=7]="FinancialInstitution"})(pb||(pb={}));var ar;(function(t){t[t.Ed25519=0]="Ed25519",t[t.secp256k1=1]="secp256k1",t[t.secp256r1=2]="secp256r1",t[t.X25519=3]="X25519"})(ar||(ar={}));var yb;(function(t){t.authentication="auth",t.assertionMethod="asm",t.capabilityDelegation="del",t.capabilityInvocation="inv",t.keyAgreement="agm"})(yb||(yb={}));var z_={Ed25519:ar.Ed25519,ES256K:ar.secp256k1,ES256:ar.secp256r1,"P-256":ar.secp256r1,secp256k1:ar.secp256k1,secp256r1:ar.secp256r1,X25519:ar.X25519},G_={[ar.Ed25519]:"EdDSA",[ar.secp256k1]:"ES256K",[ar.secp256r1]:"ES256",[ar.X25519]:"ECDH-ES+A256KW"},df=class t extends ln{static create(){return Ct(this,arguments,void 0,function*({keyManager:e=new er,options:r={}}={}){var n,i,o,s,c,a,u,d,f,h,p;if(!((n=r.verificationMethods)===null||n===void 0)&&n.some(T=>!(T.algorithm in z_)))throw new Error("One or more verification method algorithms are not supported");let y=(i=r.verificationMethods)===null||i===void 0?void 0:i.filter(T=>"id"in T).map(T=>T.id);if(y&&y.length!==new Set(y).size)throw new Error("One or more verification method IDs are not unique");if(!((o=r.services)===null||o===void 0)&&o.some(T=>!T.id||!T.type||!T.serviceEndpoint))throw new Error("One or more services are missing required properties");let g=yield e.generateKey({algorithm:"Ed25519"}),x=yield e.getPublicKey({keyUri:g}),S=yield Nt.identityKeyToIdentifier({identityKey:x}),_=Object.assign(Object.assign({id:S},r.alsoKnownAs&&{alsoKnownAs:r.alsoKnownAs}),r.controllers&&{controller:r.controllers}),A=[...(s=r.verificationMethods)!==null&&s!==void 0?s:[]];A?.some(T=>{var M;return((M=T.id)===null||M===void 0?void 0:M.split("#").pop())==="0"})||A.unshift({algorithm:"Ed25519",id:"0",purposes:["authentication","assertionMethod","capabilityDelegation","capabilityInvocation"]});for(let T of A){let M=T.id&&T.id.split("#").pop()==="0"?g:yield e.generateKey({algorithm:T.algorithm}),q=yield e.getPublicKey({keyUri:M}),j=(a=(c=T.id)!==null&&c!==void 0?c:q.kid)!==null&&a!==void 0?a:yield ge({jwk:q});j=`${S}#${Mr(j)}`,(u=_.verificationMethod)!==null&&u!==void 0||(_.verificationMethod=[]),_.verificationMethod.push({id:j,type:"JsonWebKey",controller:(d=T.controller)!==null&&d!==void 0?d:S,publicKeyJwk:q});for(let $ of(f=T.purposes)!==null&&f!==void 0?f:[])_[$]||(_[$]=[]),_[$].push(j)}(h=r.services)===null||h===void 0||h.forEach(T=>{var M;(M=_.service)!==null&&M!==void 0||(_.service=[]),T.id=`${S}#${T.id.split("#").pop()}`,_.service.push(T)});let O=new br({uri:S,document:_,metadata:Object.assign({published:!1},r.types&&{types:r.types}),keyManager:e});if(!((p=r.publish)!==null&&p!==void 0)||p){let T=yield t.publish({did:O,gatewayUri:r.gatewayUri});O.metadata=T.didDocumentMetadata}return O})}static import(e){return Ct(this,arguments,void 0,function*({portableDid:r,keyManager:n=new er}){var i;let o=me.parse(r.uri);if(o?.method!==t.methodName)throw new re(ie.MethodNotSupported,"Method not supported");let s=yield br.import({portableDid:r,keyManager:n});if(!(!((i=s.document.verificationMethod)===null||i===void 0)&&i.some(c=>{var a;return((a=c.id)===null||a===void 0?void 0:a.split("#").pop())==="0"})))throw new re(ie.InvalidDidDocument,"DID document must contain an Identity Key");return s})}static getSigningMethod(e){return Ct(this,arguments,void 0,function*({didDocument:r,methodId:n="#0"}){var i;let o=me.parse(r.id);if(o&&o.method!==this.methodName)throw new re(ie.MethodNotSupported,`Method not supported: ${o.method}`);let s=(i=r.verificationMethod)===null||i===void 0?void 0:i.find(c=>{var a,u;return Mr(c.id)===((a=Mr(n))!==null&&a!==void 0?a:Mr((u=r.assertionMethod)===null||u===void 0?void 0:u[0]))});if(!(s&&s.publicKeyJwk))throw new re(ie.InternalError,"A verification method intended for signing could not be determined from the DID Document");return s})}static publish(e){return Ct(this,arguments,void 0,function*({did:r,gatewayUri:n=W_}){return yield Mp.put({did:r,gatewayUri:n})})}static resolve(e){return Ct(this,arguments,void 0,function*(r,n={}){var i;let o=(i=n?.gatewayUri)!==null&&i!==void 0?i:W_;try{yield Nt.identifierToIdentityKey({didUri:r});let{didDocument:s,didDocumentMetadata:c}=yield Mp.get({didUri:r,gatewayUri:o});return Object.assign(Object.assign({},yt),{didDocument:s,didDocumentMetadata:c})}catch(s){if(!(s instanceof re))throw new Error(s);return Object.assign(Object.assign({},yt),{didResolutionMetadata:Object.assign({error:s.code},s.message&&{errorMessage:s.message})})}})}};df.methodName="dht";var Mp=class t{static get(e){return Ct(this,arguments,void 0,function*({didUri:r,gatewayUri:n}){let i=Nt.identifierToIdentityKeyBytes({didUri:r}),o=yield t.pkarrGet({gatewayUri:n,publicKeyBytes:i}),s=yield Nt.parseBep44GetMessage({bep44Message:o}),c=yield t.fromDnsPacket({didUri:r,dnsPacket:s});return c.didDocumentMetadata.versionId=o.seq.toString(),c})}static put(e){return Ct(this,arguments,void 0,function*({did:r,gatewayUri:n}){let i=yield t.toDnsPacket({didDocument:r.document,didMetadata:r.metadata,authoritativeGatewayUris:[n]}),o=yield Nt.createBep44PutMessage({dnsPacket:i,publicKeyBytes:Nt.identifierToIdentityKeyBytes({didUri:r.uri}),signer:yield r.getSigner({methodId:"0"})}),s=yield t.pkarrPut({gatewayUri:n,bep44Message:o});return{didDocument:r.document,didDocumentMetadata:Object.assign(Object.assign({},r.metadata),{published:s,versionId:o.seq.toString()}),didRegistrationMetadata:{}}})}static pkarrGet(e){return Ct(this,arguments,void 0,function*({gatewayUri:r,publicKeyBytes:n}){let i=ne.uint8Array(n).toBase32Z(),o=new URL(i,r).href,s;try{if(s=yield fetch(o,{method:"GET"}),!s.ok)throw new re(ie.NotFound,`Pkarr record not found for: ${i}`)}catch(u){throw u instanceof re?u:new re(ie.InternalError,`Failed to fetch Pkarr record: ${u.message}`)}let c=yield s.arrayBuffer();if(!c)throw new re(ie.NotFound,`Pkarr record not found for: ${i}`);if(c.byteLength<72)throw new re(ie.InvalidDidDocumentLength,`Pkarr response must be at least 72 bytes but got: ${c.byteLength}`);if(c.byteLength>1072)throw new re(ie.InvalidDidDocumentLength,`Pkarr response exceeds 1000 byte limit: ${c.byteLength}`);return{k:n,seq:Number(new DataView(c).getBigUint64(64)),sig:new Uint8Array(c,0,64),v:new Uint8Array(c,72)}})}static pkarrPut(e){return Ct(this,arguments,void 0,function*({gatewayUri:r,bep44Message:n}){let i=ne.uint8Array(n.k).toBase32Z(),o=new URL(i,r).href,s=new Uint8Array(n.v.length+72);s.set(n.sig,0),new DataView(s.buffer).setBigUint64(n.sig.length,BigInt(n.seq)),s.set(n.v,n.sig.length+8);let c;try{c=yield fetch(o,{method:"PUT",headers:{"Content-Type":"application/octet-stream"},body:s})}catch(a){throw new re(ie.InternalError,`Failed to put Pkarr record for identifier ${i}: ${a.message}`)}return c.ok})}static fromDnsPacket(e){return Ct(this,arguments,void 0,function*({didUri:r,dnsPacket:n}){var i,o,s;let c={id:r},a={published:!0},u=new Map;for(let d of(i=n?.answers)!==null&&i!==void 0?i:[]){if(d.type!=="TXT")continue;let f=d.name.split(".")[0].substring(1);switch(!0){case f.startsWith("aka"):{let h=Nt.parseTxtDataToString(d.data);c.alsoKnownAs=h.split(cr);break}case f.startsWith("cnt"):{let h=Nt.parseTxtDataToString(d.data);c.controller=h.includes(cr)?h.split(cr):h;break}case f.startsWith("k"):{let{id:h,t:p,k:y,c:g,a:x}=Nt.parseTxtDataToObject(d.data),S=ne.base64Url(y).toUint8Array(),_=ar[Number(p)],A=yield Nt.keyConverter(_).bytesToPublicKey({publicKeyBytes:S});A.alg=x||G_[Number(p)];let O=f==="k0"?"0":h!==void 0?h:yield ge({jwk:A});(o=c.verificationMethod)!==null&&o!==void 0||(c.verificationMethod=[]);let T=`${r}#${O}`;c.verificationMethod.push({id:T,type:"JsonWebKey",controller:g??r,publicKeyJwk:A}),u.set(f,T);break}case f.startsWith("s"):{let h=Nt.parseTxtDataToObject(d.data),{id:p,t:y,se:g}=h,x=j_(h,["id","t","se"]),S=g.includes(cr)?g.split(cr):[g],_=Object.fromEntries(Object.entries(x).map(([A,O])=>[A,O.includes(cr)?O.split(cr):O]));(s=c.service)!==null&&s!==void 0||(c.service=[]),c.service.push(Object.assign(Object.assign({},_),{id:`${r}#${p}`,type:y,serviceEndpoint:S}));break}case f.startsWith("typ"):{let{id:h}=Nt.parseTxtDataToObject(d.data);a.types=h.split(cr).map(p=>Number(p));break}case f.startsWith("did"):{let h=_=>_.split(cr).map(A=>u.get(A)).filter(A=>typeof A=="string"),{auth:p,asm:y,del:g,inv:x,agm:S}=Nt.parseTxtDataToObject(d.data);p&&(c.authentication=h(p)),y&&(c.assertionMethod=h(y)),g&&(c.capabilityDelegation=h(g)),x&&(c.capabilityInvocation=h(x)),S&&(c.keyAgreement=h(S));break}}}return{didDocument:c,didDocumentMetadata:a,didResolutionMetadata:{}}})}static toDnsPacket(e){return Ct(this,arguments,void 0,function*({didDocument:r,didMetadata:n,authoritativeGatewayUris:i,previousDidProof:o}){var s,c,a,u,d;let f=[],h=[],p=new Map,y=[],g=[];if(o!==void 0){let{signature:_,previousDid:A}=o;yield Nt.validatePreviousDidProof({newDid:r.id,previousDidProof:o}),f.push({type:"TXT",name:"_prv._did.",ttl:os,data:`id=${A};s=${_}`})}if(r.alsoKnownAs&&f.push({type:"TXT",name:"_aka._did.",ttl:os,data:r.alsoKnownAs.join(cr)}),r.controller){let _=Array.isArray(r.controller)?r.controller.join(cr):r.controller;f.push({type:"TXT",name:"_cnt._did.",ttl:os,data:_})}for(let[_,A]of(c=(s=r.verificationMethod)===null||s===void 0?void 0:s.entries())!==null&&c!==void 0?c:[]){let O=`k${_}`;g.push(O);let T=A.id.split("#").pop();p.set(T,O);let M=A.publicKeyJwk;if(!(M?.crv&&M.crv in z_))throw new re(ie.InvalidPublicKeyType,`Verification method '${A.id}' contains an unsupported key type: ${(a=M?.crv)!==null&&a!==void 0?a:"undefined"}`);let q=ar[M.crv],j=yield Nt.keyConverter(M.crv).publicKeyToBytes({publicKey:M}),$=ne.uint8Array(j).toBase64Url(),Z=[`t=${q}`,`k=${$}`];T!=="0"&&(yield ge({jwk:M}))!==T&&Z.unshift(`id=${T}`),M.alg!==G_[q]&&Z.push(`a=${M.alg}`),A.controller!==r.id&&Z.push(`c=${A.controller}`),f.push({type:"TXT",name:`_${O}._did.`,ttl:os,data:Z.join(Pp)})}(u=r.service)===null||u===void 0||u.forEach((_,A)=>{let O=`s${A}`;y.push(O);let{id:T,type:M,serviceEndpoint:q}=_,j=j_(_,["id","type","serviceEndpoint"]);T=Mr(T),q=Array.isArray(q)?q.join(","):q;let Z=Object.entries(Object.assign({id:T,t:M,se:q},j)).map(([G,I])=>`${G}=${I}`).join(Pp),Q=Nt.chunkDataIfNeeded(Z);f.push({type:"TXT",name:`_${O}._did.`,ttl:os,data:Q})});let x=[`v=${TC}`];if(g.length&&x.push(`vm=${g.join(cr)}`),Object.keys(Mi).forEach(_=>{var A;let O=(A=r[_])===null||A===void 0?void 0:A.map(T=>p.get(T.split("#").pop()));if(O){let T=yb[_];x.push(`${T}=${O.join(cr)}`)}}),y.length&&x.push(`svc=${y.join(cr)}`),!((d=n.types)===null||d===void 0)&&d.length){let A=n.types.map(O=>typeof O=="string"?pb[O]:O);f.push({type:"TXT",name:"_typ._did.",ttl:os,data:`id=${A.join(cr)}`})}f.push({type:"TXT",name:"_did."+t.getUniqueDidSuffix(r.id)+".",ttl:os,data:x.join(Pp)});for(let _ of i||[])h.push({type:"NS",name:"_did."+t.getUniqueDidSuffix(r.id)+".",ttl:os,data:_+"."});return{id:0,type:"response",flags:H_,answers:[...f,...h]}})}static getUniqueDidSuffix(e){return e.split(":")[2]}},Nt=class t{static createBep44PutMessage(e){return Ct(this,arguments,void 0,function*({dnsPacket:r,publicKeyBytes:n,signer:i}){let o=Math.ceil(Date.now()/1e3),s=uf(r),c=ob.encode({seq:o,v:s}).subarray(1,-1);if(c.length>1e3)throw new re(ie.InvalidDidDocumentLength,`DNS packet exceeds the 1000 byte maximum size: ${c.length} bytes`);let a=yield i.sign({data:c});return{k:n,seq:o,sig:a,v:s}})}static identifierToIdentityKey(e){return Ct(this,arguments,void 0,function*({didUri:r}){let n=t.identifierToIdentityKeyBytes({didUri:r});return yield Bt.bytesToPublicKey({publicKeyBytes:n})})}static identifierToIdentityKeyBytes({didUri:e}){let r=me.parse(e);if(!r)throw new re(ie.InvalidDid,`Invalid DID URI: ${e}`);if(r.method!==df.methodName)throw new re(ie.MethodNotSupported,`Method not supported: ${r.method}`);let n;try{n=ne.base32Z(r.id).toUint8Array()}catch{throw new re(ie.InvalidPublicKey,"Failed to decode method-specific identifier")}if(n.length!==32)throw new re(ie.InvalidPublicKeyLength,`Invalid public key length: ${n.length}`);return n}static identityKeyToIdentifier(e){return Ct(this,arguments,void 0,function*({identityKey:r}){let n=yield Bt.publicKeyToBytes({publicKey:r}),i=ne.uint8Array(n).toBase32Z();return`did:${df.methodName}:${i}`})}static keyConverter(e){let n={Ed25519:Bt,"P-256":{publicKeyToBytes:i=>Ct(this,[i],void 0,function*({publicKey:o}){let s=yield Vt.publicKeyToBytes({publicKey:o});return yield Vt.compressPublicKey({publicKeyBytes:s})}),bytesToPublicKey:Vt.bytesToPublicKey,privateKeyToBytes:Vt.privateKeyToBytes,bytesToPrivateKey:Vt.bytesToPrivateKey},secp256k1:{publicKeyToBytes:i=>Ct(this,[i],void 0,function*({publicKey:o}){let s=yield kt.publicKeyToBytes({publicKey:o});return yield kt.compressPublicKey({publicKeyBytes:s})}),bytesToPublicKey:kt.bytesToPublicKey,privateKeyToBytes:kt.privateKeyToBytes,bytesToPrivateKey:kt.bytesToPrivateKey},X25519:Ga}[e];if(!n)throw new re(ie.InvalidPublicKeyType,`Unsupported curve: ${e}`);return n}static parseBep44GetMessage(e){return Ct(this,arguments,void 0,function*({bep44Message:r}){let n=yield Bt.bytesToPublicKey({publicKeyBytes:r.k}),i=ob.encode({seq:r.seq,v:r.v}).subarray(1,-1);if(!(yield Bt.verify({key:n,signature:r.sig,data:i})))throw new re(ie.InvalidSignature,"Invalid signature for DHT BEP44 message");return Lp(r.v)})}static parseTxtDataToObject(e){return this.parseTxtDataToString(e).split(Pp).reduce((r,n)=>{let[i,o]=n.split("=");return r[i]=o,r},{})}static parseTxtDataToString(e){if(typeof e=="string")return e;if(e instanceof Uint8Array)return ne.uint8Array(e).toString();if(Array.isArray(e))return e.map(r=>this.parseTxtDataToString(r)).join("");throw new re(ie.InternalError,"Pkarr returned DNS TXT record with invalid data type")}static validatePreviousDidProof(e){return Ct(this,arguments,void 0,function*({newDid:r,previousDidProof:n}){let i=yield t.identifierToIdentityKey({didUri:n.previousDid}),o=t.identifierToIdentityKeyBytes({didUri:r}),s=ne.base64Url(n.signature).toUint8Array();if(!(yield Bt.verify({key:i,data:o,signature:s})))throw new re(ie.InvalidPreviousDidProof,"The previous DID proof is invalid.")})}static chunkDataIfNeeded(e){if(e.length<=255)return e;let r=[];for(let n=0;n<e.length;n+=255)r.push(e.slice(n,n+255));return r}};l();l();l();l();l();var Ye={DeltaExceedsMaximumSize:"DeltaExceedsMaximumSize",DidDocumentPublicKeyIdDuplicated:"DidDocumentPublicKeyIdDuplicated",DidDocumentPublicKeyMissingOrIncorrectType:"DidDocumentPublicKeyMissingOrIncorrectType",DidDocumentServiceIdDuplicated:"DidDocumentServiceIdDuplicated",DidSuffixIncorrectLength:"DidSuffixIncorrectLength",EncodedStringIncorrectEncoding:"EncodedStringIncorrectEncoding",IdNotUsingBase64UrlCharacterSet:"IdNotUsingBase64UrlCharacterSet",IdTooLong:"IdTooLong",JwkEs256kMissingOrInvalidCrv:"JwkEs256kMissingOrInvalidCrv",JwkEs256kMissingOrInvalidKty:"JwkEs256kMissingOrInvalidKty",JwkEs256kHasIncorrectLengthOfX:"JwkEs256kHasIncorrectLengthOfX",JwkEs256kHasIncorrectLengthOfY:"JwkEs256kHasIncorrectLengthOfY",JwkEs256kHasIncorrectLengthOfD:"JwkEs256kHasIncorrectLengthOfD",MultihashStringNotAMultihash:"MultihashStringNotAMultihash",MultihashUnsupportedHashAlgorithm:"MultihashUnsupportedHashAlgorithm",PublicKeyJwkEs256kHasUnexpectedProperty:"PublicKeyJwkEs256kHasUnexpectedProperty",PublicKeyPurposeDuplicated:"PublicKeyPurposeDuplicated",ServiceEndpointCannotBeAnArray:"ServiceEndpointCannotBeAnArray",ServiceEndpointStringNotValidUri:"ServiceEndpointStringNotValidUri",ServiceTypeTooLong:"ServiceTypeTooLong"};l();var Me=class extends Error{constructor(e,r){super(`${e}: ${r}`),this.code=e,Object.setPrototypeOf(this,new.target.prototype)}};l();l();l();l();var lX=new Uint8Array(0);var gb=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")};l();var mb=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")}},wb=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 Y_(this,e)}},bb=class{constructor(e){this.decoders=e}or(e){return Y_(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`)}},Y_=(t,e)=>new bb({...t.decoders||{[t.prefix]:t},...e.decoders||{[e.prefix]:e}}),xb=class{constructor(e,r,n,i){this.name=e,this.prefix=r,this.baseEncode=n,this.baseDecode=i,this.encoder=new mb(e,r,n),this.decoder=new wb(e,r,i)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}},_C=({name:t,prefix:e,encode:r,decode:n})=>new xb(t,e,r,n);var IC=(t,e,r,n)=>{let i={};for(let d=0;d<e.length;++d)i[e[d]]=d;let o=t.length;for(;t[o-1]==="=";)--o;let s=new Uint8Array(o*r/8|0),c=0,a=0,u=0;for(let d=0;d<o;++d){let f=i[t[d]];if(f===void 0)throw new SyntaxError(`Non-${n} character`);a=a<<r|f,c+=r,c>=8&&(c-=8,s[u++]=255&a>>c)}if(c>=r||255&a<<8-c)throw new SyntaxError("Unexpected end of data");return s},BC=(t,e,r)=>{let n=e[e.length-1]==="=",i=(1<<r)-1,o="",s=0,c=0;for(let a=0;a<t.length;++a)for(c=c<<8|t[a],s+=8;s>r;)s-=r,o+=e[i&c>>s];if(s&&(o+=e[i&c<<r-s]),n)for(;o.length*r&7;)o+="=";return o},ff=({name:t,prefix:e,bitsPerChar:r,alphabet:n})=>_C({prefix:e,name:t,encode(i){return BC(i,n,r)},decode(i){return IC(i,n,r,t)}});var SX=ff({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),AX=ff({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),lf=ff({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),TX=ff({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var Er=class t{static encode(e){return lf.baseEncode(e)}static decodeAsBytes(e,r){if(!t.isBase64UrlString(e))throw new Me(Ye.EncodedStringIncorrectEncoding,`Given ${r} must be base64url string.`);return lf.baseDecode(e)}static decodeAsString(e,r){let n=t.decodeAsBytes(e,r);return t.bytesToString(n)}static isBase64UrlString(e){return/^[A-Za-z0-9_-]+$/.test(e)}static stringToBytes(e){return new TextEncoder().encode(e)}static bytesToString(e){return new TextDecoder().decode(e)}};l();var sI=Mn(X_(),1);l();l();var Eb;(function(t){t.Public="public",t.Private="private"})(Eb||(Eb={}));var $r=Eb;var Ut=class{static validateEs256kOperationKey(e,r){let n=new Set(["kty","crv","x","y"]);r===$r.Private&&n.add("d");for(let i in e)if(!n.has(i))throw new Me(Ye.PublicKeyJwkEs256kHasUnexpectedProperty,`SECP256K1 JWK key has unexpected property '${i}'.`);if(e.crv!=="secp256k1")throw new Me(Ye.JwkEs256kMissingOrInvalidCrv,`SECP256K1 JWK 'crv' property must be 'secp256k1' but got '${e.crv}.'`);if(e.kty!=="EC")throw new Me(Ye.JwkEs256kMissingOrInvalidKty,`SECP256K1 JWK 'kty' property must be 'EC' but got '${e.kty}.'`);if(e.x.length!==43)throw new Me(Ye.JwkEs256kHasIncorrectLengthOfX,"SECP256K1 JWK 'x' property must be 43 bytes.");if(e.y.length!==43)throw new Me(Ye.JwkEs256kHasIncorrectLengthOfY,"SECP256K1 JWK 'y' property must be 43 bytes.");if(r===$r.Private&&(e.d===void 0||e.d.length!==43))throw new Me(Ye.JwkEs256kHasIncorrectLengthOfD,"SECP256K1 JWK 'd' property must be 43 bytes.")}static validateId(e){if(e.length>50)throw new Me(Ye.IdTooLong,`Key ID length ${e.length} exceed max allowed length of 50.`);if(!Er.isBase64UrlString(e))throw new Me(Ye.IdNotUsingBase64UrlCharacterSet,`Key ID '${e}' is not a Base64URL string.`)}static validatePublicKeyPurposes(e){if(e===void 0)return;let r=new Set;for(let n of e){if(r.has(n))throw new Me(Ye.PublicKeyPurposeDuplicated,`Public key purpose '${n}' already specified.`);r.add(n)}}};l();var hf=class{};hf.hashAlgorithmInMultihashCode=18;hf.maxCanonicalizedDeltaSizeInBytes=1e3;var ur=hf;l();var eI=Mn(Q_(),1);var kn=class t{static canonicalizeAsBytes(e){let r=t.removeAllUndefinedProperties(e),n=eI.default(r);return Er.stringToBytes(n)}static removeAllUndefinedProperties(e){for(let r in e)typeof e[r]=="object"?t.removeAllUndefinedProperties(e[r]):e[r]===void 0&&delete e[r];return e}};l();l();l();l();var RC=nI,tI=128,UC=127,OC=~UC,DC=Math.pow(2,31);function nI(t,e,r){e=e||[],r=r||0;for(var n=r;t>=DC;)e[r++]=t&255|tI,t/=128;for(;t&OC;)e[r++]=t&255|tI,t>>>=7;return e[r]=t|0,nI.bytes=r-n+1,e}var kC=vb,NC=128,rI=127;function vb(t,n){var r=0,n=n||0,i=0,o=n,s,c=t.length;do{if(o>=c)throw vb.bytes=0,new RangeError("Could not decode varint");s=t[o++],r+=i<28?(s&rI)<<i:(s&rI)*Math.pow(2,i),i+=7}while(s>=NC);return vb.bytes=o-n,r}var CC=Math.pow(2,7),LC=Math.pow(2,14),PC=Math.pow(2,21),MC=Math.pow(2,28),KC=Math.pow(2,35),$C=Math.pow(2,42),HC=Math.pow(2,49),VC=Math.pow(2,56),qC=Math.pow(2,63),FC=function(t){return t<CC?1:t<LC?2:t<PC?3:t<MC?4:t<KC?5:t<$C?6:t<HC?7:t<VC?8:t<qC?9:10},jC={encode:RC,decode:kC,encodingLength:FC},WC=jC,pf=WC;var Sb=(t,e=0)=>[pf.decode(t,e),pf.decode.bytes],Ab=(t,e,r=0)=>(pf.encode(t,e,r),e),Tb=t=>pf.encodingLength(t);var _b=(t,e)=>{let r=e.byteLength,n=Tb(t),i=n+Tb(r),o=new Uint8Array(i+r);return Ab(t,o,0),Ab(r,o,n),o.set(e,i),new $p(t,r,e,o)},iI=t=>{let e=gb(t),[r,n]=Sb(e),[i,o]=Sb(e.subarray(n)),s=e.subarray(n+o);if(s.byteLength!==i)throw new Error("Incorrect length");return new $p(r,i,s,e)};var $p=class{constructor(e,r,n,i){this.code=e,this.size=r,this.digest=n,this.bytes=i}};l();l();var Bb=({name:t,code:e,encode:r})=>new Ib(t,e,r),Ib=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?_b(this.code,r):r.then(n=>_b(this.code,n))}else throw Error("Unknown type, must be binary type")}};var oI=t=>async e=>new Uint8Array(await crypto.subtle.digest(t,e)),Hp=Bb({name:"sha2-256",code:18,encode:oI("SHA-256")}),oZ=Bb({name:"sha2-512",code:19,encode:oI("SHA-512")});var yf=function(t,e,r,n){function i(o){return o instanceof r?o:new r(function(s){s(o)})}return new(r||(r=Promise))(function(o,s){function c(d){try{u(n.next(d))}catch(f){s(f)}}function a(d){try{u(n.throw(d))}catch(f){s(f)}}function u(d){d.done?o(d.value):i(d.value).then(c,a)}u((n=n.apply(t,e||[])).next())})},Lt=class t{static hash(e,r){return yf(this,void 0,void 0,function*(){let n;switch(r){case 18:n=(yield Hp.digest(e)).bytes;break;default:throw new Me(Ye.MultihashUnsupportedHashAlgorithm,`Hash algorithm defined in multihash code ${r} is not supported.`)}return n})}static hashAsNonMultihashBytes(e,r){return yf(this,void 0,void 0,function*(){let n;switch(r){case 18:n=yield Hp.encode(e);break;default:throw new Me(Ye.MultihashUnsupportedHashAlgorithm,`Hash algorithm defined in multihash code ${r} is not supported.`)}return n})}static canonicalizeThenHashThenEncode(e,r){return yf(this,void 0,void 0,function*(){let n=kn.canonicalizeAsBytes(e);return yield t.hashThenEncode(n,r)})}static canonicalizeThenDoubleHashThenEncode(e,r){return yf(this,void 0,void 0,function*(){let n=kn.canonicalizeAsBytes(e),i=yield t.hashAsNonMultihashBytes(n,r);return yield t.hashThenEncode(i,r)})}static hashThenEncode(e,r){return yf(this,void 0,void 0,function*(){let n=yield t.hash(e,r);return Er.encode(n)})}static validateEncodedHashComputedUsingSupportedHashAlgorithm(e,r){let n,i=Er.decodeAsBytes(e,r);try{n=iI(i)}catch{throw new Me(Ye.MultihashStringNotAMultihash,`Given ${r} string '${e}' is not a multihash after decoding.`)}let o=ur.hashAlgorithmInMultihashCode;if(o!==n.code)throw new Me(Ye.MultihashUnsupportedHashAlgorithm,`Given ${r} uses unsupported multihash algorithm with code ${n.code}, should use ${o} or change IonSdkConfig to desired hashing algorithm.`)}};l();var Rb;(function(t){t.Create="create",t.Update="update",t.Deactivate="deactivate",t.Recover="recover"})(Rb||(Rb={}));var gf=Rb;l();var Ub;(function(t){t.Replace="replace",t.AddPublicKeys="add-public-keys",t.RemovePublicKeys="remove-public-keys",t.AddServices="add-services",t.RemoveServices="remove-services"})(Ub||(Ub={}));var wc=Ub;var Vp=function(t,e,r,n){function i(o){return o instanceof r?o:new r(function(s){s(o)})}return new(r||(r=Promise))(function(o,s){function c(d){try{u(n.next(d))}catch(f){s(f)}}function a(d){try{u(n.throw(d))}catch(f){s(f)}}function u(d){d.done?o(d.value):i(d.value).then(c,a)}u((n=n.apply(t,e||[])).next())})},ss=class t{static createCreateRequest(e){return Vp(this,void 0,void 0,function*(){let r=e.recoveryKey,n=e.updateKey,i=e.document.publicKeys,o=e.document.services;Ut.validateEs256kOperationKey(r,$r.Public),Ut.validateEs256kOperationKey(n,$r.Public),t.validateDidDocumentKeys(i),t.validateServices(o);let s=ur.hashAlgorithmInMultihashCode,c=[{action:wc.Replace,document:e.document}],a={updateCommitment:yield Lt.canonicalizeThenDoubleHashThenEncode(n,s),patches:c};t.validateDeltaSize(a);let d={deltaHash:yield Lt.canonicalizeThenHashThenEncode(a,s),recoveryCommitment:yield Lt.canonicalizeThenDoubleHashThenEncode(r,s)};return{type:gf.Create,suffixData:d,delta:a}})}static createDeactivateRequest(e){return Vp(this,void 0,void 0,function*(){t.validateDidSuffix(e.didSuffix),Ut.validateEs256kOperationKey(e.recoveryPublicKey,$r.Public);let r=ur.hashAlgorithmInMultihashCode,n=yield Lt.canonicalizeThenHashThenEncode(e.recoveryPublicKey,r),i={didSuffix:e.didSuffix,recoveryKey:e.recoveryPublicKey},o=yield e.signer.sign({alg:"ES256K"},i);return{type:gf.Deactivate,didSuffix:e.didSuffix,revealValue:n,signedData:o}})}static createRecoverRequest(e){return Vp(this,void 0,void 0,function*(){t.validateDidSuffix(e.didSuffix),Ut.validateEs256kOperationKey(e.recoveryPublicKey,$r.Public),Ut.validateEs256kOperationKey(e.nextRecoveryPublicKey,$r.Public),Ut.validateEs256kOperationKey(e.nextUpdatePublicKey,$r.Public),t.validateDidDocumentKeys(e.document.publicKeys),t.validateServices(e.document.services);let r=ur.hashAlgorithmInMultihashCode,n=yield Lt.canonicalizeThenHashThenEncode(e.recoveryPublicKey,r),i=[{action:wc.Replace,document:e.document}],o=yield Lt.canonicalizeThenDoubleHashThenEncode(e.nextUpdatePublicKey,r),s={patches:i,updateCommitment:o},c=yield Lt.canonicalizeThenHashThenEncode(s,r),u={recoveryCommitment:yield Lt.canonicalizeThenDoubleHashThenEncode(e.nextRecoveryPublicKey,r),recoveryKey:e.recoveryPublicKey,deltaHash:c},d=yield e.signer.sign({alg:"ES256K"},u);return{type:gf.Recover,didSuffix:e.didSuffix,revealValue:n,delta:s,signedData:d}})}static createUpdateRequest(e){return Vp(this,void 0,void 0,function*(){if(t.validateDidSuffix(e.didSuffix),Ut.validateEs256kOperationKey(e.updatePublicKey,$r.Public),Ut.validateEs256kOperationKey(e.nextUpdatePublicKey,$r.Public),t.validateServices(e.servicesToAdd),t.validateDidDocumentKeys(e.publicKeysToAdd),e.idsOfServicesToRemove!==void 0)for(let y of e.idsOfServicesToRemove)Ut.validateId(y);if(e.idsOfPublicKeysToRemove!==void 0)for(let y of e.idsOfPublicKeysToRemove)Ut.validateId(y);let r=[],n=e.servicesToAdd;if(n!==void 0&&n.length>0){let y={action:wc.AddServices,services:n};r.push(y)}let i=e.idsOfServicesToRemove;if(i!==void 0&&i.length>0){let y={action:wc.RemoveServices,ids:i};r.push(y)}let o=e.publicKeysToAdd;if(o!==void 0&&o.length>0){let y={action:wc.AddPublicKeys,publicKeys:o};r.push(y)}let s=e.idsOfPublicKeysToRemove;if(s!==void 0&&s.length>0){let y={action:wc.RemovePublicKeys,ids:s};r.push(y)}let c=ur.hashAlgorithmInMultihashCode,a=yield Lt.canonicalizeThenHashThenEncode(e.updatePublicKey,c),u=yield Lt.canonicalizeThenDoubleHashThenEncode(e.nextUpdatePublicKey,c),d={patches:r,updateCommitment:u},f=yield Lt.canonicalizeThenHashThenEncode(d,c),h={updateKey:e.updatePublicKey,deltaHash:f},p=yield e.signer.sign({alg:"ES256K"},h);return{type:gf.Update,didSuffix:e.didSuffix,revealValue:a,delta:d,signedData:p}})}static validateDidSuffix(e){Lt.validateEncodedHashComputedUsingSupportedHashAlgorithm(e,"didSuffix")}static validateDidDocumentKeys(e){if(e===void 0)return;let r=new Set;for(let n of e){if(Array.isArray(n.publicKeyJwk))throw new Me(Ye.DidDocumentPublicKeyMissingOrIncorrectType,"DID Document key 'publicKeyJwk' property is not a non-array object.");if(Ut.validateId(n.id),r.has(n.id))throw new Me(Ye.DidDocumentPublicKeyIdDuplicated,`DID Document key with ID '${n.id}' already exists.`);r.add(n.id),Ut.validatePublicKeyPurposes(n.purposes)}}static validateServices(e){if(e!==void 0&&e.length!==0){let r=new Set;for(let n of e){if(t.validateService(n),r.has(n.id))throw new Me(Ye.DidDocumentServiceIdDuplicated,"Service id has to be unique");r.add(n.id)}}}static validateService(e){Ut.validateId(e.id);let r=30;if(e.type.length>r){let n=`Service endpoint type length ${e.type.length} exceeds max allowed length of ${r}.`;throw new Me(Ye.ServiceTypeTooLong,n)}if(Array.isArray(e.serviceEndpoint)){let n="Service endpoint value cannot be an array.";throw new Me(Ye.ServiceEndpointCannotBeAnArray,n)}if(typeof e.serviceEndpoint=="string"&&sI.parse(e.serviceEndpoint).error!==void 0)throw new Me(Ye.ServiceEndpointStringNotValidUri,`Service endpoint string '${e.serviceEndpoint}' is not a URI.`)}static validateDeltaSize(e){let r=kn.canonicalizeAsBytes(e);if(r.length>ur.maxCanonicalizedDeltaSizeInBytes){let n=`Delta of ${r.length} bytes exceeded limit of ${ur.maxCanonicalizedDeltaSizeInBytes} bytes.`;throw new Me(Ye.DeltaExceedsMaximumSize,n)}}};var cI=function(t,e,r,n){function i(o){return o instanceof r?o:new r(function(s){s(o)})}return new(r||(r=Promise))(function(o,s){function c(d){try{u(n.next(d))}catch(f){s(f)}}function a(d){try{u(n.throw(d))}catch(f){s(f)}}function u(d){d.done?o(d.value):i(d.value).then(c,a)}u((n=n.apply(t,e||[])).next())})},nu=class t{static createLongFormDid(e){return cI(this,void 0,void 0,function*(){let r=yield ss.createCreateRequest(e),n=yield t.computeDidUniqueSuffix(r.suffixData),i;ur.network===void 0||ur.network==="mainnet"?i=`did:ion:${n}`:i=`did:ion:${ur.network}:${n}`;let o={suffixData:r.suffixData,delta:r.delta},s=kn.canonicalizeAsBytes(o),c=Er.encode(s);return`${i}:${c}`})}static computeDidUniqueSuffix(e){return cI(this,void 0,void 0,function*(){let r=kn.canonicalizeAsBytes(e),n=yield Lt.hash(r,ur.hashAlgorithmInMultihashCode);return Er.encode(n)})}};l();l();var aI;(function(t){t.Mainnet="mainnet",t.Testnet="test"})(aI||(aI={}));l();var uI;(function(t){t.Authentication="authentication",t.AssertionMethod="assertionMethod",t.CapabilityInvocation="capabilityInvocation",t.CapabilityDelegation="capabilityDelegation",t.KeyAgreement="keyAgreement"})(uI||(uI={}));l();var cs=function(t,e,r,n){function i(o){return o instanceof r?o:new r(function(s){s(o)})}return new(r||(r=Promise))(function(o,s){function c(d){try{u(n.next(d))}catch(f){s(f)}}function a(d){try{u(n.throw(d))}catch(f){s(f)}}function u(d){d.done?o(d.value):i(d.value).then(c,a)}u((n=n.apply(t,e||[])).next())})},hi;(function(t){t.Ed25519="Ed25519",t.secp256k1="secp256k1",t.secp256r1="secp256r1",t.X25519="X25519"})(hi||(hi={}));var YC={Ed25519:hi.Ed25519,ES256K:hi.secp256k1,ES256:hi.secp256r1,"P-256":hi.secp256r1,secp256k1:hi.secp256k1,secp256r1:hi.secp256r1},dI="https://ion.tbd.engineering",Ob=class t extends ln{static create(){return cs(this,arguments,void 0,function*({keyManager:e=new er,options:r={}}={}){var n,i,o,s,c,a,u;if(!((n=r.verificationMethods)===null||n===void 0)&&n.some(T=>!(T.algorithm in YC)))throw new Error("One or more verification method algorithms are not supported");let d=(i=r.verificationMethods)===null||i===void 0?void 0:i.filter(T=>"id"in T).map(T=>T.id);if(d&&d.length!==new Set(d).size)throw new Error("One or more verification method IDs are not unique");if(!((o=r.services)===null||o===void 0)&&o.some(T=>!T.id||!T.type||!T.serviceEndpoint))throw new Error("One or more services are missing required properties");let f={algorithm:"Ed25519",purposes:["authentication","assertionMethod","capabilityDelegation","capabilityInvocation"]},h=[];for(let T of(s=r.verificationMethods)!==null&&s!==void 0?s:[f]){let M=yield e.generateKey({algorithm:T.algorithm}),q=yield e.getPublicKey({keyUri:M});h.push({id:T.id,publicKeyJwk:q,purposes:(c=T.purposes)!==null&&c!==void 0?c:["authentication","assertionMethod","capabilityDelegation","capabilityInvocation"]})}let p=yield e.generateKey({algorithm:hi.secp256k1}),y=yield e.getPublicKey({keyUri:p}),g=yield e.generateKey({algorithm:hi.secp256k1}),x=yield e.getPublicKey({keyUri:g}),S=yield bc.computeLongFormDidUri({recoveryKey:y,updateKey:x,services:(a=r.services)!==null&&a!==void 0?a:[],verificationMethods:h}),{didDocument:_,didResolutionMetadata:A}=yield t.resolve(S,{gatewayUri:r.gatewayUri});if(_===null)throw new Error(`Unable to resolve DID during creation: ${A?.error}`);let O=new br({uri:S,document:_,metadata:{published:!1,canonicalId:S.split(":",3).join(":"),recoveryKey:y,updateKey:x},keyManager:e});if(!((u=r.publish)!==null&&u!==void 0)||u){let T=yield t.publish({did:O,gatewayUri:r.gatewayUri});O.metadata=T.didDocumentMetadata}return O})}static getSigningMethod(e){return cs(this,arguments,void 0,function*({didDocument:r,methodId:n}){var i;let o=me.parse(r.id);if(o&&o.method!==this.methodName)throw new re(ie.MethodNotSupported,`Method not supported: ${o.method}`);let s=(i=r.verificationMethod)===null||i===void 0?void 0:i.find(c=>{var a;return c.id===(n??((a=r.assertionMethod)===null||a===void 0?void 0:a[0]))});if(!(s&&s.publicKeyJwk))throw new re(ie.InternalError,"A verification method intended for signing could not be determined from the DID Document");return s})}static import(e){return cs(this,arguments,void 0,function*({portableDid:r,keyManager:n=new er}){let i=me.parse(r.uri);if(i?.method!==t.methodName)throw new re(ie.MethodNotSupported,"Method not supported");return yield br.import({portableDid:r,keyManager:n})})}static publish(e){return cs(this,arguments,void 0,function*({did:r,gatewayUri:n=dI}){var i,o,s;let c=(o=(i=r.document.verificationMethod)===null||i===void 0?void 0:i.map(d=>({id:d.id,publicKeyJwk:d.publicKeyJwk,purposes:p_({didDocument:r.document,methodId:d.id})})))!==null&&o!==void 0?o:[],a=yield bc.createIonDocument({services:(s=r.document.service)!==null&&s!==void 0?s:[],verificationMethods:c}),u=yield bc.constructCreateRequest({ionDocument:a,recoveryKey:r.metadata.recoveryKey,updateKey:r.metadata.updateKey});try{let d=bc.appendPathToUrl({baseUrl:n,path:"/operations"}),f=yield fetch(d,{method:"POST",mode:"cors",headers:{"Content-Type":"application/json"},body:JSON.stringify(u)});return{didDocument:r.document,didDocumentMetadata:Object.assign(Object.assign({},r.metadata),{published:f.ok}),didRegistrationMetadata:{}}}catch{return{didDocument:null,didDocumentMetadata:{published:!1},didRegistrationMetadata:{error:ie.InternalError,errorMessage:`Failed to publish DID document for: ${r.uri}`}}}})}static resolve(e){return cs(this,arguments,void 0,function*(r,n={}){var i,o;let s=me.parse(r);if(!s)return Object.assign(Object.assign({},yt),{didResolutionMetadata:{error:"invalidDid"}});if(s.method!==t.methodName)return Object.assign(Object.assign({},yt),{didResolutionMetadata:{error:"methodNotSupported"}});let c=(i=n?.gatewayUri)!==null&&i!==void 0?i:dI;try{let a=bc.appendPathToUrl({baseUrl:c,path:`/identifiers/${r}`}),u=yield fetch(a);if(!u.ok)throw new re(ie.NotFound,`Unable to find DID document for: ${r}`);let{didDocument:d,didDocumentMetadata:f}=yield u.json();return Object.assign(Object.assign(Object.assign({},yt),d&&{didDocument:d}),{didDocumentMetadata:Object.assign({published:(o=f?.method)===null||o===void 0?void 0:o.published},f)})}catch(a){if(!(a instanceof re))throw new Error(a);return Object.assign(Object.assign({},yt),{didResolutionMetadata:Object.assign({error:a.code},a.message&&{errorMessage:a.message})})}})}};Ob.methodName="ion";var bc=class t{static appendPathToUrl({baseUrl:e,path:r}){let n=new URL(e);return n.pathname=n.pathname.endsWith("/")?n.pathname:n.pathname+"/",n.pathname+=r.startsWith("/")?r.substring(1):r,n.toString()}static computeLongFormDidUri(e){return cs(this,arguments,void 0,function*({recoveryKey:r,updateKey:n,services:i,verificationMethods:o}){let s=yield t.createIonDocument({services:i,verificationMethods:o}),c=t.normalizeJwk(r),a=t.normalizeJwk(n);return yield nu.createLongFormDid({document:s,recoveryKey:c,updateKey:a})})}static constructCreateRequest(e){return cs(this,arguments,void 0,function*({ionDocument:r,recoveryKey:n,updateKey:i}){return yield ss.createCreateRequest({document:r,recoveryKey:t.normalizeJwk(n),updateKey:t.normalizeJwk(i)})})}static createIonDocument(e){return cs(this,arguments,void 0,function*({services:r,verificationMethods:n}){var i,o;let s=[];for(let u of n){let d=(o=(i=u.id)!==null&&i!==void 0?i:u.publicKeyJwk.kid)!==null&&o!==void 0?o:yield ge({jwk:u.publicKeyJwk});d=`${d.split("#").pop()}`;let f={id:d,publicKeyJwk:t.normalizeJwk(u.publicKeyJwk),purposes:u.purposes,type:"JsonWebKey2020"};s.push(f)}let c=r.map(u=>Object.assign(Object.assign({},u),{id:`${u.id.split("#").pop()}`}));return{publicKeys:s,services:c}})}static normalizeJwk(e){let r=e.kty,n;if(r==="EC")n={crv:e.crv,kty:e.kty,x:e.x,y:e.y};else if(r==="oct")n={k:e.k,kty:e.kty};else if(r==="OKP")n={crv:e.crv,kty:e.kty,x:e.x};else if(r==="RSA")n={e:e.e,kty:e.kty,n:e.n};else throw new Error(`Unsupported key type: ${r}`);return n}};l();var qp=function(t,e,r,n){function i(o){return o instanceof r?o:new r(function(s){s(o)})}return new(r||(r=Promise))(function(o,s){function c(d){try{u(n.next(d))}catch(f){s(f)}}function a(d){try{u(n.throw(d))}catch(f){s(f)}}function u(d){d.done?o(d.value):i(d.value).then(c,a)}u((n=n.apply(t,e||[])).next())})},Db=class t extends ln{static create(){return qp(this,arguments,void 0,function*({keyManager:e=new er,options:r={}}={}){var n,i,o,s;if(r.algorithm&&r.verificationMethods)throw new Error("The 'algorithm' and 'verificationMethods' options are mutually exclusive");if(r.verificationMethods&&r.verificationMethods.length!==1)throw new Error("The 'verificationMethods' option must contain exactly one entry");let c=(s=(n=r.algorithm)!==null&&n!==void 0?n:(o=(i=r.verificationMethods)===null||i===void 0?void 0:i[0])===null||o===void 0?void 0:o.algorithm)!==null&&s!==void 0?s:"Ed25519",a=yield e.generateKey({algorithm:c}),u=yield e.getPublicKey({keyUri:a}),d=ne.object(u).toBase64Url(),f=`did:${t.methodName}:${d}`,p=(yield t.resolve(f)).didDocument;return new br({uri:f,document:p,metadata:{},keyManager:e})})}static getSigningMethod(e){return qp(this,arguments,void 0,function*({didDocument:r}){var n;let i=me.parse(r.id);if(i&&i.method!==this.methodName)throw new re(ie.MethodNotSupported,`Method not supported: ${i.method}`);let[o]=(n=r.verificationMethod)!==null&&n!==void 0?n:[];if(!(o&&o.publicKeyJwk))throw new re(ie.InternalError,"A verification method intended for signing could not be determined from the DID Document");return o})}static import(e){return qp(this,arguments,void 0,function*({portableDid:r,keyManager:n=new er}){let i=me.parse(r.uri);if(i?.method!==t.methodName)throw new re(ie.MethodNotSupported,"Method not supported");let o=yield br.import({portableDid:r,keyManager:n});if(o.document.verificationMethod.length!==1)throw new re(ie.InvalidDidDocument,"DID document must contain exactly one verification method");return o})}static resolve(e,r){return qp(this,void 0,void 0,function*(){let n=me.parse(e),i;try{i=ne.base64Url(n.id).toObject()}catch{}if(!n||!i)return Object.assign(Object.assign({},yt),{didResolutionMetadata:{error:"invalidDid"}});if(n.method!==t.methodName)return Object.assign(Object.assign({},yt),{didResolutionMetadata:{error:"methodNotSupported"}});let o={"@context":["https://www.w3.org/ns/did/v1"],id:n.uri},s=`${o.id}#0`;switch(o.verificationMethod=[{id:s,type:"JsonWebKey",controller:o.id,publicKeyJwk:i}],o.authentication=[s],o.assertionMethod=[s],o.capabilityInvocation=[s],o.capabilityDelegation=[s],o.keyAgreement=[s],i.use){case"sig":{delete o.keyAgreement;break}case"enc":{delete o.authentication,delete o.assertionMethod,delete o.capabilityInvocation,delete o.capabilityDelegation;break}}return Object.assign(Object.assign({},yt),{didDocument:o})})}};Db.methodName="jwk";l();var Nn=function(t,e,r,n){function i(o){return o instanceof r?o:new r(function(s){s(o)})}return new(r||(r=Promise))(function(o,s){function c(d){try{u(n.next(d))}catch(f){s(f)}}function a(d){try{u(n.throw(d))}catch(f){s(f)}}function u(d){d.done?o(d.value):i(d.value).then(c,a)}u((n=n.apply(t,e||[])).next())})},co;(function(t){t.Ed25519="Ed25519",t.secp256k1="secp256k1",t.secp256r1="secp256r1",t.X25519="X25519"})(co||(co={}));var kb={Ed25519VerificationKey2020:"https://w3id.org/security/suites/ed25519-2020/v1",JsonWebKey2020:"https://w3id.org/security/suites/jws-2020/v1",X25519KeyAgreementKey2020:"https://w3id.org/security/suites/x25519-2020/v1"},JC={Ed25519:co.Ed25519,ES256K:co.secp256k1,ES256:co.secp256r1,"P-256":co.secp256r1,secp256k1:co.secp256k1,secp256r1:co.secp256r1,X25519:co.X25519},Nb=class t extends ln{static create(){return Nn(this,arguments,void 0,function*({keyManager:e=new er,options:r={}}={}){var n,i,o,s;if(r.algorithm&&r.verificationMethods)throw new Error("The 'algorithm' and 'verificationMethods' options are mutually exclusive");if(r.verificationMethods&&r.verificationMethods.length!==1)throw new Error("The 'verificationMethods' option must contain exactly one entry");let c=(s=(n=r.algorithm)!==null&&n!==void 0?n:(o=(i=r.verificationMethods)===null||i===void 0?void 0:i[0])===null||o===void 0?void 0:o.algorithm)!==null&&s!==void 0?s:"Ed25519",a=yield e.generateKey({algorithm:c}),u=yield e.getPublicKey({keyUri:a}),d=yield vr.publicKeyToMultibaseId({publicKey:u}),f=`did:${t.methodName}:${d}`,p=(yield t.resolve(f,r)).didDocument;return new br({uri:f,document:p,metadata:{},keyManager:e})})}static getSigningMethod(e){return Nn(this,arguments,void 0,function*({didDocument:r}){var n;let i=me.parse(r.id);if(i&&i.method!==this.methodName)throw new re(ie.MethodNotSupported,`Method not supported: ${i.method}`);let[o]=r.assertionMethod||[],s=(n=r.verificationMethod)===null||n===void 0?void 0:n.find(c=>c.id===o);if(!(s&&s.publicKeyJwk))throw new re(ie.InternalError,"A verification method intended for signing could not be determined from the DID Document");return s})}static import(e){return Nn(this,arguments,void 0,function*({portableDid:r,keyManager:n=new er}){let i=me.parse(r.uri);if(i?.method!==t.methodName)throw new re(ie.MethodNotSupported,"Method not supported");let o=yield br.import({portableDid:r,keyManager:n});if(o.document.verificationMethod.length!==1)throw new re(ie.InvalidDidDocument,"DID document must contain exactly one verification method");return o})}static resolve(e,r){return Nn(this,void 0,void 0,function*(){try{let n=yield t.createDocument({didUri:e,options:r});return Object.assign(Object.assign({},yt),{didDocument:n})}catch(n){if(!(n instanceof re))throw new Error(n);return Object.assign(Object.assign({},yt),{didResolutionMetadata:Object.assign({error:n.code},n.message&&{errorMessage:n.message})})}})}static createDocument(e){return Nn(this,arguments,void 0,function*({didUri:r,options:n={}}){let{defaultContext:i="https://www.w3.org/ns/did/v1",enableEncryptionKeyDerivation:o=!1,enableExperimentalPublicKeyTypes:s=!1,publicKeyFormat:c="JsonWebKey2020"}=n,a={id:""},u=me.parse(r);if(!u)throw new re(ie.InvalidDid,`Invalid DID URI: ${r}`);let d=u.id;if(u.method!==t.methodName)throw new re(ie.MethodNotSupported,`Method not supported: ${u.method}`);if(!t.validateIdentifier(u))throw new re(ie.InvalidDid,`Invalid DID URI: ${r}`);let f=yield t.createSignatureMethod({didUri:r,multibaseValue:d,options:{enableExperimentalPublicKeyTypes:s,publicKeyFormat:c}});if(a.id=u.uri,a.verificationMethod=[f],a.authentication=[f.id],a.assertionMethod=[f.id],a.capabilityInvocation=[f.id],a.capabilityDelegation=[f.id],o===!0){let y=c==="Ed25519VerificationKey2020"?"X25519KeyAgreementKey2020":"JsonWebKey2020",g=yield this.createEncryptionMethod({didUri:r,multibaseValue:d,options:{enableExperimentalPublicKeyTypes:s,publicKeyFormat:y}});a.verificationMethod.push(g),a.keyAgreement=[g.id]}let h=[i];return h_({didDocument:a}).forEach(y=>{let g=kb[y];h.push(g)}),a["@context"]=h,a})}static createEncryptionMethod(e){return Nn(this,arguments,void 0,function*({didUri:r,multibaseValue:n,options:i}){let{enableExperimentalPublicKeyTypes:o,publicKeyFormat:s}=i,c={id:"",type:"",controller:""},{keyBytes:a,multicodecCode:u}=yield t.deriveEncryptionKey({multibaseValue:n}),d=a.byteLength,f=vr.MULTICODEC_PUBLIC_KEY_LENGTH[u];if(d!==f)throw new re(ie.InvalidPublicKeyLength,`Expected ${d} bytes. Actual: ${f}`);let h=Zw({keyBytes:a,multicodecCode:u});c.id=`${r}#${h}`;try{new URL(c.id)}catch{throw new re(ie.InvalidDidUrl,"Verification Method ID is not a valid DID URL.")}if(!(s in kb))throw new re(ie.UnsupportedPublicKeyType,`Unsupported format: ${s}`);if(o===!1&&!["Multikey","JsonWebKey2020","X25519KeyAgreementKey2020"].includes(s))throw new re(ie.InvalidPublicKeyType,`Specified '${s}' without setting enableExperimentalPublicKeyTypes to true.`);if(c.type=s,c.controller=r,s==="X25519KeyAgreementKey2020"&&(c.publicKeyMultibase=h),s==="JsonWebKey2020"){let{crv:y}=yield vr.multicodecToJwk({code:u});c.publicKeyJwk=yield vr.keyConverter(y).bytesToPublicKey({publicKeyBytes:a})}return c})}static createSignatureMethod(e){return Nn(this,arguments,void 0,function*({didUri:r,multibaseValue:n,options:i}){let{enableExperimentalPublicKeyTypes:o,publicKeyFormat:s}=i,c={id:"",type:"",controller:""},{keyBytes:a,multicodecCode:u,multicodecName:d}=Qw({multibaseKeyId:n}),f=a.byteLength,h=vr.MULTICODEC_PUBLIC_KEY_LENGTH[u];if(f!==h)throw new re(ie.InvalidPublicKeyLength,`Expected ${f} bytes. Actual: ${h}`);let p=!1;switch(d){case"secp256k1-pub":p=yield kt.validatePublicKey({publicKeyBytes:a});break;case"ed25519-pub":p=yield Bt.validatePublicKey({publicKeyBytes:a});break;case"x25519-pub":p=!0;break}if(!p)throw new re(ie.InvalidPublicKey,"Invalid public key detected.");c.id=`${r}#${n}`;try{new URL(c.id)}catch{throw new re(ie.InvalidDidUrl,"Verification Method ID is not a valid DID URL.")}if(!(s in kb))throw new re(ie.UnsupportedPublicKeyType,`Unsupported format: ${s}`);if(o===!1&&!["Multikey","JsonWebKey2020","Ed25519VerificationKey2020"].includes(s))throw new re(ie.InvalidPublicKeyType,`Specified '${s}' without setting enableExperimentalPublicKeyTypes to true.`);if(c.type=s,c.controller=r,s==="Ed25519VerificationKey2020"&&(c.publicKeyMultibase=n),s==="JsonWebKey2020"){let{crv:g}=yield vr.multicodecToJwk({code:u});c.publicKeyJwk=yield vr.keyConverter(g).bytesToPublicKey({publicKeyBytes:a})}return c})}static deriveEncryptionKey(e){return Nn(this,arguments,void 0,function*({multibaseValue:r}){let n={keyBytes:new Uint8Array,multicodecCode:0},{keyBytes:i,multicodecCode:o}=Qw({multibaseKeyId:r});if(o===237){let s=yield vr.keyConverter("Ed25519").bytesToPublicKey({publicKeyBytes:i}),c=yield Bt.convertPublicKeyToX25519({publicKey:s});n={keyBytes:yield vr.keyConverter("Ed25519").publicKeyToBytes({publicKey:c}),multicodecCode:236}}return n})}static validateIdentifier(e){let{method:r,id:n}=e,[i]=e.uri.split(":",1);return i==="did"&&r==="key"&&Number("1")>0&&fa(n)==="String"&&n.startsWith("z")}};Nb.methodName="key";var vr=class t{static jwkToMulticodec(e){return Nn(this,arguments,void 0,function*({jwk:r}){let n=[];r.crv&&(n.push(r.crv),r.d?n.push("private"):n.push("public"));let i=n.join(":"),o=t.JWK_TO_MULTICODEC[i];if(o===void 0)throw new Error(`Unsupported JWK to Multicodec conversion: '${i}'`);return{code:Jt.getCodeFromName({name:o}),name:o}})}static keyCompressor(e){let n={"P-256":Vt.compressPublicKey,secp256k1:kt.compressPublicKey}[e];if(!n)throw new re(ie.InvalidPublicKeyType,`Unsupported curve: ${e}`);return n}static keyConverter(e){let n={Ed25519:Bt,"P-256":Vt,secp256k1:kt,X25519:Ga}[e];if(!n)throw new re(ie.InvalidPublicKeyType,`Unsupported curve: ${e}`);return n}static multicodecToJwk(e){return Nn(this,arguments,void 0,function*({code:r,name:n}){if(!(n?!r:r))throw new Error("Either 'name' or 'code' must be defined, but not both.");n=n===void 0?Jt.getNameFromCode({code:r}):n;let i=n,o=t.MULTICODEC_TO_JWK[i];if(o===void 0)throw new Error("Unsupported Multicodec to JWK conversion");return Object.assign({},o)})}static publicKeyToMultibaseId(e){return Nn(this,arguments,void 0,function*({publicKey:r}){var n;if(!(r?.crv&&r.crv in JC))throw new re(ie.InvalidPublicKeyType,`Public key contains an unsupported key type: ${(n=r?.crv)!==null&&n!==void 0?n:"undefined"}`);let i=yield t.keyConverter(r.crv).publicKeyToBytes({publicKey:r});/^(secp256k1|P-256|P-384|P-521)$/.test(r.crv)&&(i=yield t.keyCompressor(r.crv)({publicKeyBytes:i}));let{name:o}=yield t.jwkToMulticodec({jwk:r});return Zw({keyBytes:i,multicodecName:o})})}};vr.JWK_TO_MULTICODEC={"Ed25519:public":"ed25519-pub","Ed25519:private":"ed25519-priv","secp256k1:public":"secp256k1-pub","secp256k1:private":"secp256k1-priv","X25519:public":"x25519-pub","X25519:private":"x25519-priv"};vr.MULTICODEC_PUBLIC_KEY_LENGTH={231:33,236:32,237:32};vr.MULTICODEC_TO_JWK={"ed25519-pub":{crv:"Ed25519",kty:"OKP",x:""},"ed25519-priv":{crv:"Ed25519",kty:"OKP",x:"",d:""},"secp256k1-pub":{crv:"secp256k1",kty:"EC",x:"",y:""},"secp256k1-priv":{crv:"secp256k1",kty:"EC",x:"",y:"",d:""},"x25519-pub":{crv:"X25519",kty:"OKP",x:""},"x25519-priv":{crv:"X25519",kty:"OKP",x:"",d:""}};l();var XC=function(t,e,r,n){function i(o){return o instanceof r?o:new r(function(s){s(o)})}return new(r||(r=Promise))(function(o,s){function c(d){try{u(n.next(d))}catch(f){s(f)}}function a(d){try{u(n.throw(d))}catch(f){s(f)}}function u(d){d.done?o(d.value):i(d.value).then(c,a)}u((n=n.apply(t,e||[])).next())})},Cb=class t extends ln{static resolve(e,r){return XC(this,void 0,void 0,function*(){let n=me.parse(e);if(!n)return Object.assign(Object.assign({},yt),{didResolutionMetadata:{error:"invalidDid"}});if(n.method!==t.methodName)return Object.assign(Object.assign({},yt),{didResolutionMetadata:{error:"methodNotSupported"}});let i=`https://${n.id.replace(/:/g,"/")}`;i=decodeURIComponent(i);let o=n.id.includes(":")?`${i}/did.json`:`${i}/.well-known/did.json`;try{let s=yield fetch(o);if(!s.ok)throw new Error("HTTP error status code returned");let c=yield s.json();return Object.assign(Object.assign({},yt),{didDocument:c})}catch{return Object.assign(Object.assign({},yt),{didResolutionMetadata:{error:"notFound"}})}})}};Cb.methodName="web";l();var nL=Mn(lI(),1),iL=Mn(dm(),1);l();l();var ot=class t{static absoluteDidUrl(e,r){if(typeof e=="string"&&e.length!==0)return e.startsWith("#")?`${r}${e}`:e}static relationshipMethodId(e,r){let n=typeof e=="object"&&e!==null&&!Array.isArray(e)?e.id:e;return t.absoluteDidUrl(n,r)}static isDidVerificationMethod(e){return!(!e||typeof e!="object"||e===null||!("id"in e&&"type"in e&&"controller"in e)||typeof e.id!="string"||typeof e.type!="string"||typeof e.controller!="string")}static isDidService(e){return!(!e||typeof e!="object"||e===null||!("id"in e&&"type"in e&&"serviceEndpoint"in e)||typeof e.id!="string"||typeof e.type!="string"||typeof e.serviceEndpoint!="string")}static getVerificationMethods(e){if(!e)throw new qe("Required parameter missing: 'didDocument'");let r=[];return r.push(...e.verificationMethod?.filter(t.isDidVerificationMethod)??[]),Object.keys(Mi).forEach(n=>{r.push(...e[n]?.filter(t.isDidVerificationMethod)??[])}),r}static deriveRootCapability(e){return{"@context":"https://w3id.org/zcap/v1",id:`urn:zcap:root:${encodeURIComponent(e)}`,controller:e,invocationTarget:e}}static dereferenceZcapId(e){let r={},[n,i,o,s]=e.split(":")??[];if([n,i,o,s].length!==4)throw new re(ie.InvalidDid,`Invalid capabilityId: ${e}`);if(!n||n!=="urn")throw new re(ie.InvalidDid,`Invalid capabilityId: ${e}`);if(!i||i!=="zcap")throw new re(ie.InvalidDid,`Invalid capabilityId: ${e}`);if(!o||o!=="root")throw new re(ie.InvalidDid,`Invalid capabilityId: ${e}`);let a=decodeURIComponent(s);return r.id=e,r.controller=a,r.invocationTarget=a,r}};l();l();l();l();l();l();l();function hI(t,e,r){return t&e^~t&r}function pI(t,e,r){return t&e^t&r^e&r}var jp=class{blockLen;outputLen;padOffset;isLE;buffer;view;finished=!1;length=0;pos=0;destroyed=!1;constructor(e,r,n,i){this.blockLen=e,this.outputLen=r,this.padOffset=n,this.isLE=i,this.buffer=new Uint8Array(e),this.view=Ml(this.buffer)}update(e){sa(this),_e(e);let{view:r,buffer:n,blockLen:i}=this,o=e.length;for(let s=0;s<o;){let c=Math.min(i-this.pos,o-s);if(c===i){let a=Ml(e);for(;i<=o-s;s+=i)this.process(a,s);continue}n.set(e.subarray(s,s+c),this.pos),this.pos+=c,s+=c,this.pos===i&&(this.process(r,0),this.pos=0)}return this.length+=e.length,this.roundClean(),this}digestInto(e){sa(this),qv(e,this),this.finished=!0;let{buffer:r,view:n,blockLen:i,isLE:o}=this,{pos:s}=this;r[s++]=128,Ns(this.buffer.subarray(s)),this.padOffset>i-s&&(this.process(n,0),s=0);for(let f=s;f<i;f++)r[f]=0;n.setBigUint64(i-8,BigInt(this.length*8),o),this.process(n,0);let c=Ml(e),a=this.outputLen;if(a%4)throw new Error("_sha2: outputLen must be aligned to 32bit");let u=a/4,d=this.get();if(u>d.length)throw new Error("_sha2: outputLen bigger than state");for(let f=0;f<u;f++)c.setUint32(4*f,d[f],o)}digest(){let{buffer:e,outputLen:r}=this;this.digestInto(e);let n=e.slice(0,r);return this.destroy(),n}_cloneInto(e){e||=new this.constructor,e.set(...this.get());let{blockLen:r,buffer:n,length:i,finished:o,destroyed:s,pos:c}=this;return e.destroyed=s,e.finished=o,e.length=i,e.pos=c,i%r&&e.buffer.set(n),e}clone(){return this._cloneInto()}},ao=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]);var oL=Uint32Array.from([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]),as=new Uint32Array(64),Lb=class extends jp{constructor(e){super(64,e,8,!1)}get(){let{A:e,B:r,C:n,D:i,E:o,F:s,G:c,H:a}=this;return[e,r,n,i,o,s,c,a]}set(e,r,n,i,o,s,c,a){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=c|0,this.H=a|0}process(e,r){for(let f=0;f<16;f++,r+=4)as[f]=e.getUint32(r,!1);for(let f=16;f<64;f++){let h=as[f-15],p=as[f-2],y=En(h,7)^En(h,18)^h>>>3,g=En(p,17)^En(p,19)^p>>>10;as[f]=g+as[f-7]+y+as[f-16]|0}let{A:n,B:i,C:o,D:s,E:c,F:a,G:u,H:d}=this;for(let f=0;f<64;f++){let h=En(c,6)^En(c,11)^En(c,25),p=d+h+hI(c,a,u)+oL[f]+as[f]|0,g=(En(n,2)^En(n,13)^En(n,22))+pI(n,i,o)|0;d=u,u=a,a=c,c=s+p|0,s=o,o=i,i=n,n=p+g|0}n=n+this.A|0,i=i+this.B|0,o=o+this.C|0,s=s+this.D|0,c=c+this.E|0,a=a+this.F|0,u=u+this.G|0,d=d+this.H|0,this.set(n,i,o,s,c,a,u,d)}roundClean(){Ns(as)}destroy(){this.set(0,0,0,0,0,0,0,0),Ns(this.buffer)}},Pb=class extends Lb{A=ao[0]|0;B=ao[1]|0;C=ao[2]|0;D=ao[3]|0;E=ao[4]|0;F=ao[5]|0;G=ao[6]|0;H=ao[7]|0;constructor(){super(32)}};var Wp=jv(()=>new Pb,Wv(1));l();l();var dr=BigInt(0),tr=BigInt(1),Ec=BigInt(2),mI=BigInt(3),wI=BigInt(4),bI=BigInt(5),sL=BigInt(7),xI=BigInt(8),cL=BigInt(9),EI=BigInt(16);function Cn(t,e){let r=t%e;return r>=dr?r:e+r}function Hr(t,e,r){let n=t;for(;e-- >dr;)n*=n,n%=r;return n}function yI(t,e){if(t===dr)throw new Error("invert: expected non-zero number");if(e<=dr)throw new Error("invert: expected positive modulus, got "+e);let r=Cn(t,e),n=e,i=dr,o=tr,s=tr,c=dr;for(;r!==dr;){let u=n/r,d=n%r,f=i-s*u,h=o-c*u;n=r,r=d,i=s,o=c,s=f,c=h}if(n!==tr)throw new Error("invert: does not exist");return Cn(i,e)}function Kb(t,e,r){if(!t.eql(t.sqr(e),r))throw new Error("Cannot find square root")}function vI(t,e){let r=(t.ORDER+tr)/wI,n=t.pow(e,r);return Kb(t,n,e),n}function aL(t,e){let r=(t.ORDER-bI)/xI,n=t.mul(e,Ec),i=t.pow(n,r),o=t.mul(e,i),s=t.mul(t.mul(o,Ec),i),c=t.mul(o,t.sub(s,t.ONE));return Kb(t,c,e),c}function uL(t){let e=cu(t),r=SI(t),n=r(e,e.neg(e.ONE)),i=r(e,n),o=r(e,e.neg(n)),s=(t+sL)/EI;return(c,a)=>{let u=c.pow(a,s),d=c.mul(u,n),f=c.mul(u,i),h=c.mul(u,o),p=c.eql(c.sqr(d),a),y=c.eql(c.sqr(f),a);u=c.cmov(u,d,p),d=c.cmov(h,f,y);let g=c.eql(c.sqr(d),a),x=c.cmov(u,d,g);return Kb(c,x,a),x}}function SI(t){if(t<mI)throw new Error("sqrt is not defined for small field");let e=t-tr,r=0;for(;e%Ec===dr;)e/=Ec,r++;let n=Ec,i=cu(t);for(;gI(i,n)===1;)if(n++>1e3)throw new Error("Cannot find square root: probably non-prime P");if(r===1)return vI;let o=i.pow(n,e),s=(e+tr)/Ec;return function(a,u){if(a.is0(u))return u;if(gI(a,u)!==1)throw new Error("Cannot find square root");let d=r,f=a.mul(a.ONE,o),h=a.pow(u,e),p=a.pow(u,s);for(;!a.eql(h,a.ONE);){if(a.is0(h))return a.ZERO;let y=1,g=a.sqr(h);for(;!a.eql(g,a.ONE);)if(y++,g=a.sqr(g),y===d)throw new Error("Cannot find square root");let x=tr<<BigInt(d-y-1),S=a.pow(f,x);d=y,f=a.sqr(S),h=a.mul(h,f),p=a.mul(p,S)}return p}}function dL(t){return t%wI===mI?vI:t%xI===bI?aL:t%EI===cL?uL(t):SI(t)}var fL=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function $b(t){let e={ORDER:"bigint",BYTES:"number",BITS:"number"},r=fL.reduce((n,i)=>(n[i]="function",n),e);return rd(t,r),t}function lL(t,e,r){if(r<dr)throw new Error("invalid exponent, negatives unsupported");if(r===dr)return t.ONE;if(r===tr)return e;let n=t.ONE,i=e;for(;r>dr;)r&tr&&(n=t.mul(n,i)),i=t.sqr(i),r>>=tr;return n}function Gp(t,e,r=!1){let n=new Array(e.length).fill(r?t.ZERO:void 0),i=e.reduce((s,c,a)=>t.is0(c)?s:(n[a]=s,t.mul(s,c)),t.ONE),o=t.inv(i);return e.reduceRight((s,c,a)=>t.is0(c)?s:(n[a]=t.mul(s,n[a]),t.mul(s,c)),o),n}function gI(t,e){let r=(t.ORDER-tr)/Ec,n=t.pow(e,r),i=t.eql(n,t.ONE),o=t.eql(n,t.ZERO),s=t.eql(n,t.neg(t.ONE));if(!i&&!o&&!s)throw new Error("invalid Legendre symbol result");return i?1:o?0:-1}function hL(t,e){e!==void 0&&Yn(e);let r=e!==void 0?e:t.toString(2).length,n=Math.ceil(r/8);return{nBitLength:r,nByteLength:n}}var Mb=class{ORDER;BITS;BYTES;isLE;ZERO=dr;ONE=tr;_lengths;_sqrt;_mod;constructor(e,r={}){if(e<=dr)throw new Error("invalid field: expected ORDER > 0, got "+e);let n;this.isLE=!1,r!=null&&typeof r=="object"&&(typeof r.BITS=="number"&&(n=r.BITS),typeof r.sqrt=="function"&&(this.sqrt=r.sqrt),typeof r.isLE=="boolean"&&(this.isLE=r.isLE),r.allowedLengths&&(this._lengths=r.allowedLengths?.slice()),typeof r.modFromBytes=="boolean"&&(this._mod=r.modFromBytes));let{nBitLength:i,nByteLength:o}=hL(e,n);if(o>2048)throw new Error("invalid field: expected ORDER of <= 2048 bytes");this.ORDER=e,this.BITS=i,this.BYTES=o,this._sqrt=void 0,Object.preventExtensions(this)}create(e){return Cn(e,this.ORDER)}isValid(e){if(typeof e!="bigint")throw new Error("invalid field element: expected bigint, got "+typeof e);return dr<=e&&e<this.ORDER}is0(e){return e===dr}isValidNot0(e){return!this.is0(e)&&this.isValid(e)}isOdd(e){return(e&tr)===tr}neg(e){return Cn(-e,this.ORDER)}eql(e,r){return e===r}sqr(e){return Cn(e*e,this.ORDER)}add(e,r){return Cn(e+r,this.ORDER)}sub(e,r){return Cn(e-r,this.ORDER)}mul(e,r){return Cn(e*r,this.ORDER)}pow(e,r){return lL(this,e,r)}div(e,r){return Cn(e*yI(r,this.ORDER),this.ORDER)}sqrN(e){return e*e}addN(e,r){return e+r}subN(e,r){return e-r}mulN(e,r){return e*r}inv(e){return yI(e,this.ORDER)}sqrt(e){return this._sqrt||(this._sqrt=dL(this.ORDER)),this._sqrt(this,e)}toBytes(e){return this.isLE?J0(e,this.BYTES):$l(e,this.BYTES)}fromBytes(e,r=!1){_e(e);let{_lengths:n,BYTES:i,isLE:o,ORDER:s,_mod:c}=this;if(n){if(!n.includes(e.length)||e.length>i)throw new Error("Field.fromBytes: expected "+n+" bytes, got "+e.length);let u=new Uint8Array(i);u.set(e,o?0:u.length-e.length),e=u}if(e.length!==i)throw new Error("Field.fromBytes: expected "+i+" bytes, got "+e.length);let a=o?Y0(e):ko(e);if(c&&(a=Cn(a,s)),!r&&!this.isValid(a))throw new Error("invalid field element: outside of range 0..ORDER");return a}invertBatch(e){return Gp(this,e)}cmov(e,r,n){return n?r:e}};function cu(t,e={}){return new Mb(t,e)}function AI(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 Hb(t){let e=AI(t);return e+Math.ceil(e/2)}function zp(t,e,r=!1){_e(t);let n=t.length,i=AI(e),o=Hb(e);if(n<16||n<o||n>1024)throw new Error("expected "+o+"-1024 bytes of input, got "+n);let s=r?Y0(t):ko(t),c=Cn(s,e-tr)+tr;return r?J0(c,i):$l(c,i)}var au=BigInt(0),vc=BigInt(1);function mf(t,e){let r=e.negate();return t?r:e}function jb(t,e){let r=Gp(t.Fp,e.map(n=>n.Z));return e.map((n,i)=>t.fromAffine(n.toAffine(r[i])))}function BI(t,e){if(!Number.isSafeInteger(t)||t<=0||t>e)throw new Error("invalid window size, expected [1.."+e+"], got W="+t)}function Vb(t,e){BI(t,e);let r=Math.ceil(e/t)+1,n=2**(t-1),i=2**t,o=td(t),s=BigInt(t);return{windows:r,windowSize:n,mask:o,maxNumber:i,shiftBy:s}}function TI(t,e,r){let{windowSize:n,mask:i,maxNumber:o,shiftBy:s}=r,c=Number(t&i),a=t>>s;c>n&&(c-=o,a+=vc);let u=e*n,d=u+Math.abs(c)-1,f=c===0,h=c<0,p=e%2!==0;return{nextN:a,offset:d,isZero:f,isNeg:h,isNegF:p,offsetF:u}}var qb=new WeakMap,RI=new WeakMap;function Fb(t){return RI.get(t)||1}function _I(t){if(t!==au)throw new Error("invalid wNAF")}var Yp=class{BASE;ZERO;Fn;bits;constructor(e,r){this.BASE=e.BASE,this.ZERO=e.ZERO,this.Fn=e.Fn,this.bits=r}_unsafeLadder(e,r,n=this.ZERO){let i=e;for(;r>au;)r&vc&&(n=n.add(i)),i=i.double(),r>>=vc;return n}precomputeWindow(e,r){let{windows:n,windowSize:i}=Vb(r,this.bits),o=[],s=e,c=s;for(let a=0;a<n;a++){c=s,o.push(c);for(let u=1;u<i;u++)c=c.add(s),o.push(c);s=c.double()}return o}wNAF(e,r,n){if(!this.Fn.isValid(n))throw new Error("invalid scalar");let i=this.ZERO,o=this.BASE,s=Vb(e,this.bits);for(let c=0;c<s.windows;c++){let{nextN:a,offset:u,isZero:d,isNeg:f,isNegF:h,offsetF:p}=TI(n,c,s);n=a,d?o=o.add(mf(h,r[p])):i=i.add(mf(f,r[u]))}return _I(n),{p:i,f:o}}wNAFUnsafe(e,r,n,i=this.ZERO){let o=Vb(e,this.bits);for(let s=0;s<o.windows&&n!==au;s++){let{nextN:c,offset:a,isZero:u,isNeg:d}=TI(n,s,o);if(n=c,!u){let f=r[a];i=i.add(d?f.negate():f)}}return _I(n),i}getPrecomputes(e,r,n){let i=qb.get(r);return i||(i=this.precomputeWindow(r,e),e!==1&&(typeof n=="function"&&(i=n(i)),qb.set(r,i))),i}cached(e,r,n){let i=Fb(e);return this.wNAF(i,this.getPrecomputes(i,e,n),r)}unsafe(e,r,n,i){let o=Fb(e);return o===1?this._unsafeLadder(e,r,i):this.wNAFUnsafe(o,this.getPrecomputes(o,e,n),r,i)}createCache(e,r){BI(r,this.bits),RI.set(e,r),qb.delete(e)}hasCache(e){return Fb(e)!==1}};function UI(t,e,r,n){let i=e,o=t.ZERO,s=t.ZERO;for(;r>au||n>au;)r&vc&&(o=o.add(i)),n&vc&&(s=s.add(i)),i=i.double(),r>>=vc,n>>=vc;return{p1:o,p2:s}}function II(t,e,r){if(e){if(e.ORDER!==t)throw new Error("Field.ORDER must match order: Fp == p, Fn == n");return $b(e),e}else return cu(t,{isLE:r})}function OI(t,e,r={},n){if(n===void 0&&(n=t==="edwards"),!e||typeof e!="object")throw new Error(`expected valid ${t} CURVE object`);for(let a of["p","n","h"]){let u=e[a];if(!(typeof u=="bigint"&&u>au))throw new Error(`CURVE.${a} must be positive bigint`)}let i=II(e.p,r.Fp,n),o=II(e.n,r.Fn,n),c=["Gx","Gy","a",t==="weierstrass"?"b":"d"];for(let a of c)if(!i.isValid(e[a]))throw new Error(`CURVE.${a} must be valid field element of CURVE.Fp`);return e=Object.freeze(Object.assign({},e)),{CURVE:e,Fp:i,Fn:o}}function Jp(t,e){return function(n){let i=t(n);return{secretKey:i,publicKey:e(i)}}}l();l();var Xp=class{oHash;iHash;blockLen;outputLen;finished=!1;destroyed=!1;constructor(e,r){if(Pl(e),_e(r,void 0,"key"),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 n=this.blockLen,i=new Uint8Array(n);i.set(r.length>n?e.create().update(r).digest():r);for(let o=0;o<i.length;o++)i[o]^=54;this.iHash.update(i),this.oHash=e.create();for(let o=0;o<i.length;o++)i[o]^=106;this.oHash.update(i),Ns(i)}update(e){return sa(this),this.iHash.update(e),this}digestInto(e){sa(this),_e(e,this.outputLen,"output"),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||=Object.create(Object.getPrototypeOf(this),{});let{oHash:r,iHash:n,finished:i,destroyed:o,blockLen:s,outputLen:c}=this;return e=e,e.finished=i,e.destroyed=o,e.blockLen=s,e.outputLen=c,e.oHash=r._cloneInto(e.oHash),e.iHash=n._cloneInto(e.iHash),e}clone(){return this._cloneInto()}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}},Wb=(t,e,r)=>new Xp(t,e).update(r).digest();Wb.create=(t,e)=>new Xp(t,e);var DI=(t,e)=>(t+(t>=0?e:-e)/kI)/e;function pL(t,e,r){let[[n,i],[o,s]]=e,c=DI(s*t,r),a=DI(-i*t,r),u=t-c*n-a*o,d=-c*i-a*s,f=u<uo,h=d<uo;f&&(u=-u),h&&(d=-d);let p=td(Math.ceil(X0(r)/2))+uu;if(u<uo||u>=p||d<uo||d>=p)throw new Error("splitScalar (endomorphism): failed, k="+t);return{k1neg:f,k1:u,k2neg:h,k2:d}}function zb(t){if(!["compact","recovered","der"].includes(t))throw new Error('Signature format must be "compact", "recovered", or "der"');return t}function Gb(t,e){let r={};for(let n of Object.keys(e))r[n]=t[n]===void 0?e[n]:t[n];return Qu(r.lowS,"lowS"),Qu(r.prehash,"prehash"),r.format!==void 0&&zb(r.format),r}var Yb=class extends Error{constructor(e=""){super(e)}},us={Err:Yb,_tlv:{encode:(t,e)=>{let{Err:r}=us;if(t<0||t>256)throw new r("tlv.encode: wrong tag");if(e.length&1)throw new r("tlv.encode: unpadded data");let n=e.length/2,i=ed(n);if(i.length/2&128)throw new r("tlv.encode: long form length too big");let o=n>127?ed(i.length/2|128):"";return ed(t)+o+i+e},decode(t,e){let{Err:r}=us,n=0;if(t<0||t>256)throw new r("tlv.encode: wrong tag");if(e.length<2||e[n++]!==t)throw new r("tlv.decode: wrong tlv");let i=e[n++],o=!!(i&128),s=0;if(!o)s=i;else{let a=i&127;if(!a)throw new r("tlv.decode(long): indefinite length not supported");if(a>4)throw new r("tlv.decode(long): byte length is too big");let u=e.subarray(n,n+a);if(u.length!==a)throw new r("tlv.decode: length bytes not complete");if(u[0]===0)throw new r("tlv.decode(long): zero leftmost byte");for(let d of u)s=s<<8|d;if(n+=a,s<128)throw new r("tlv.decode(long): not minimal encoding")}let c=e.subarray(n,n+s);if(c.length!==s)throw new r("tlv.decode: wrong value length");return{v:c,l:e.subarray(n+s)}}},_int:{encode(t){let{Err:e}=us;if(t<uo)throw new e("integer: negative integers are not allowed");let r=ed(t);if(Number.parseInt(r[0],16)&8&&(r="00"+r),r.length&1)throw new e("unexpected DER parsing assertion: unpadded hex");return r},decode(t){let{Err:e}=us;if(t[0]&128)throw new e("invalid signature integer: negative");if(t[0]===0&&!(t[1]&128))throw new e("invalid signature integer: unnecessary leading zero");return ko(t)}},toSig(t){let{Err:e,_int:r,_tlv:n}=us,i=_e(t,void 0,"signature"),{v:o,l:s}=n.decode(48,i);if(s.length)throw new e("invalid signature: left bytes after parsing");let{v:c,l:a}=n.decode(2,o),{v:u,l:d}=n.decode(2,a);if(d.length)throw new e("invalid signature: left bytes after parsing");return{r:r.decode(c),s:r.decode(u)}},hexFromSig(t){let{_tlv:e,_int:r}=us,n=e.encode(2,r.encode(t.r)),i=e.encode(2,r.encode(t.s)),o=n+i;return e.encode(48,o)}},uo=BigInt(0),uu=BigInt(1),kI=BigInt(2),Zp=BigInt(3),yL=BigInt(4);function NI(t,e={}){let r=OI("weierstrass",t,e),{Fp:n,Fn:i}=r,o=r.CURVE,{h:s,n:c}=o;rd(e,{},{allowInfinityPoint:"boolean",clearCofactor:"function",isTorsionFree:"function",fromBytes:"function",toBytes:"function",endo:"object"});let{endo:a}=e;if(a&&(!n.is0(o.a)||typeof a.beta!="bigint"||!Array.isArray(a.basises)))throw new Error('invalid endo: expected "beta": bigint and "basises": array');let u=LI(n,i);function d(){if(!n.isOdd)throw new Error("compression is not supported: Field does not have .isOdd()")}function f(G,I,D){let{x:E,y:U}=I.toAffine(),L=n.toBytes(E);if(Qu(D,"isCompressed"),D){d();let N=!n.isOdd(U);return pr(CI(N),L)}else return pr(Uint8Array.of(4),L,n.toBytes(U))}function h(G){_e(G,void 0,"Point");let{publicKey:I,publicKeyUncompressed:D}=u,E=G.length,U=G[0],L=G.subarray(1);if(E===I&&(U===2||U===3)){let N=n.fromBytes(L);if(!n.isValid(N))throw new Error("bad point: is not on curve, wrong x");let R=g(N),C;try{C=n.sqrt(R)}catch(J){let z=J instanceof Error?": "+J.message:"";throw new Error("bad point: is not on curve, sqrt error"+z)}d();let P=n.isOdd(C);return(U&1)===1!==P&&(C=n.neg(C)),{x:N,y:C}}else if(E===D&&U===4){let N=n.BYTES,R=n.fromBytes(L.subarray(0,N)),C=n.fromBytes(L.subarray(N,N*2));if(!x(R,C))throw new Error("bad point: is not on curve");return{x:R,y:C}}else throw new Error(`bad point: got length ${E}, expected compressed=${I} or uncompressed=${D}`)}let p=e.toBytes||f,y=e.fromBytes||h;function g(G){let I=n.sqr(G),D=n.mul(I,G);return n.add(n.add(D,n.mul(G,o.a)),o.b)}function x(G,I){let D=n.sqr(I),E=g(G);return n.eql(D,E)}if(!x(o.Gx,o.Gy))throw new Error("bad curve params: generator point");let S=n.mul(n.pow(o.a,Zp),yL),_=n.mul(n.sqr(o.b),BigInt(27));if(n.is0(n.add(S,_)))throw new Error("bad curve params: a or b");function A(G,I,D=!1){if(!n.isValid(I)||D&&n.is0(I))throw new Error(`bad point coordinate ${G}`);return I}function O(G){if(!(G instanceof $))throw new Error("Weierstrass Point expected")}function T(G){if(!a||!a.basises)throw new Error("no endo");return pL(G,a.basises,i.ORDER)}let M=Z0((G,I)=>{let{X:D,Y:E,Z:U}=G;if(n.eql(U,n.ONE))return{x:D,y:E};let L=G.is0();I==null&&(I=L?n.ONE:n.inv(U));let N=n.mul(D,I),R=n.mul(E,I),C=n.mul(U,I);if(L)return{x:n.ZERO,y:n.ZERO};if(!n.eql(C,n.ONE))throw new Error("invZ was invalid");return{x:N,y:R}}),q=Z0(G=>{if(G.is0()){if(e.allowInfinityPoint&&!n.is0(G.Y))return;throw new Error("bad point: ZERO")}let{x:I,y:D}=G.toAffine();if(!n.isValid(I)||!n.isValid(D))throw new Error("bad point: x or y not field elements");if(!x(I,D))throw new Error("bad point: equation left != right");if(!G.isTorsionFree())throw new Error("bad point: not in prime-order subgroup");return!0});function j(G,I,D,E,U){return D=new $(n.mul(D.X,G),D.Y,D.Z),I=mf(E,I),D=mf(U,D),I.add(D)}class ${static BASE=new $(o.Gx,o.Gy,n.ONE);static ZERO=new $(n.ZERO,n.ONE,n.ZERO);static Fp=n;static Fn=i;X;Y;Z;constructor(I,D,E){this.X=A("x",I),this.Y=A("y",D,!0),this.Z=A("z",E),Object.freeze(this)}static CURVE(){return o}static fromAffine(I){let{x:D,y:E}=I||{};if(!I||!n.isValid(D)||!n.isValid(E))throw new Error("invalid affine point");if(I instanceof $)throw new Error("projective point not allowed");return n.is0(D)&&n.is0(E)?$.ZERO:new $(D,E,n.ONE)}static fromBytes(I){let D=$.fromAffine(y(_e(I,void 0,"point")));return D.assertValidity(),D}static fromHex(I){return $.fromBytes(Ls(I))}get x(){return this.toAffine().x}get y(){return this.toAffine().y}precompute(I=8,D=!0){return Q.createCache(this,I),D||this.multiply(Zp),this}assertValidity(){q(this)}hasEvenY(){let{y:I}=this.toAffine();if(!n.isOdd)throw new Error("Field doesn't support isOdd");return!n.isOdd(I)}equals(I){O(I);let{X:D,Y:E,Z:U}=this,{X:L,Y:N,Z:R}=I,C=n.eql(n.mul(D,R),n.mul(L,U)),P=n.eql(n.mul(E,R),n.mul(N,U));return C&&P}negate(){return new $(this.X,n.neg(this.Y),this.Z)}double(){let{a:I,b:D}=o,E=n.mul(D,Zp),{X:U,Y:L,Z:N}=this,R=n.ZERO,C=n.ZERO,P=n.ZERO,V=n.mul(U,U),J=n.mul(L,L),z=n.mul(N,N),W=n.mul(U,L);return W=n.add(W,W),P=n.mul(U,N),P=n.add(P,P),R=n.mul(I,P),C=n.mul(E,z),C=n.add(R,C),R=n.sub(J,C),C=n.add(J,C),C=n.mul(R,C),R=n.mul(W,R),P=n.mul(E,P),z=n.mul(I,z),W=n.sub(V,z),W=n.mul(I,W),W=n.add(W,P),P=n.add(V,V),V=n.add(P,V),V=n.add(V,z),V=n.mul(V,W),C=n.add(C,V),z=n.mul(L,N),z=n.add(z,z),V=n.mul(z,W),R=n.sub(R,V),P=n.mul(z,J),P=n.add(P,P),P=n.add(P,P),new $(R,C,P)}add(I){O(I);let{X:D,Y:E,Z:U}=this,{X:L,Y:N,Z:R}=I,C=n.ZERO,P=n.ZERO,V=n.ZERO,J=o.a,z=n.mul(o.b,Zp),W=n.mul(D,L),Y=n.mul(E,N),X=n.mul(U,R),ue=n.add(D,E),ee=n.add(L,N);ue=n.mul(ue,ee),ee=n.add(W,Y),ue=n.sub(ue,ee),ee=n.add(D,U);let ce=n.add(L,R);return ee=n.mul(ee,ce),ce=n.add(W,X),ee=n.sub(ee,ce),ce=n.add(E,U),C=n.add(N,R),ce=n.mul(ce,C),C=n.add(Y,X),ce=n.sub(ce,C),V=n.mul(J,ee),C=n.mul(z,X),V=n.add(C,V),C=n.sub(Y,V),V=n.add(Y,V),P=n.mul(C,V),Y=n.add(W,W),Y=n.add(Y,W),X=n.mul(J,X),ee=n.mul(z,ee),Y=n.add(Y,X),X=n.sub(W,X),X=n.mul(J,X),ee=n.add(ee,X),W=n.mul(Y,ee),P=n.add(P,W),W=n.mul(ce,ee),C=n.mul(ue,C),C=n.sub(C,W),W=n.mul(ue,Y),V=n.mul(ce,V),V=n.add(V,W),new $(C,P,V)}subtract(I){return this.add(I.negate())}is0(){return this.equals($.ZERO)}multiply(I){let{endo:D}=e;if(!i.isValidNot0(I))throw new Error("invalid scalar: out of range");let E,U,L=N=>Q.cached(this,N,R=>jb($,R));if(D){let{k1neg:N,k1:R,k2neg:C,k2:P}=T(I),{p:V,f:J}=L(R),{p:z,f:W}=L(P);U=J.add(W),E=j(D.beta,V,z,N,C)}else{let{p:N,f:R}=L(I);E=N,U=R}return jb($,[E,U])[0]}multiplyUnsafe(I){let{endo:D}=e,E=this;if(!i.isValid(I))throw new Error("invalid scalar: out of range");if(I===uo||E.is0())return $.ZERO;if(I===uu)return E;if(Q.hasCache(this))return this.multiply(I);if(D){let{k1neg:U,k1:L,k2neg:N,k2:R}=T(I),{p1:C,p2:P}=UI($,E,L,R);return j(D.beta,C,P,U,N)}else return Q.unsafe(E,I)}toAffine(I){return M(this,I)}isTorsionFree(){let{isTorsionFree:I}=e;return s===uu?!0:I?I($,this):Q.unsafe(this,c).is0()}clearCofactor(){let{clearCofactor:I}=e;return s===uu?this:I?I($,this):this.multiplyUnsafe(s)}isSmallOrder(){return this.multiplyUnsafe(s).is0()}toBytes(I=!0){return Qu(I,"isCompressed"),this.assertValidity(),p($,this,I)}toHex(I=!0){return Cs(this.toBytes(I))}toString(){return`<Point ${this.is0()?"ZERO":this.toHex()}>`}}let Z=i.BITS,Q=new Yp($,e.endo?Math.ceil(Z/2):Z);return $.BASE.precompute(8),$}function CI(t){return Uint8Array.of(t?2:3)}function LI(t,e){return{secretKey:e.BYTES,publicKey:1+t.BYTES,publicKeyUncompressed:1+2*t.BYTES,publicKeyHasPrefix:!0,signature:2*e.BYTES}}function gL(t,e={}){let{Fn:r}=t,n=e.randomBytes||Ps,i=Object.assign(LI(t.Fp,r),{seed:Hb(r.ORDER)});function o(p){try{let y=r.fromBytes(p);return r.isValidNot0(y)}catch{return!1}}function s(p,y){let{publicKey:g,publicKeyUncompressed:x}=i;try{let S=p.length;return y===!0&&S!==g||y===!1&&S!==x?!1:!!t.fromBytes(p)}catch{return!1}}function c(p=n(i.seed)){return zp(_e(p,i.seed,"seed"),r.ORDER)}function a(p,y=!0){return t.BASE.multiply(r.fromBytes(p)).toBytes(y)}function u(p){let{secretKey:y,publicKey:g,publicKeyUncompressed:x}=i;if(!Zu(p)||"_lengths"in r&&r._lengths||y===g)return;let S=_e(p,void 0,"key").length;return S===g||S===x}function d(p,y,g=!0){if(u(p)===!0)throw new Error("first arg must be private key");if(u(y)===!1)throw new Error("second arg must be public key");let x=r.fromBytes(p);return t.fromBytes(y).multiply(x).toBytes(g)}let f={isValidSecretKey:o,isValidPublicKey:s,randomSecretKey:c},h=Jp(c,a);return Object.freeze({getPublicKey:a,getSharedSecret:d,keygen:h,Point:t,utils:f,lengths:i})}function PI(t,e,r={}){Pl(e),rd(r,{},{hmac:"function",lowS:"boolean",randomBytes:"function",bits2int:"function",bits2int_modN:"function"}),r=Object.assign({},r);let n=r.randomBytes||Ps,i=r.hmac||((D,E)=>Wb(e,D,E)),{Fp:o,Fn:s}=t,{ORDER:c,BITS:a}=s,{keygen:u,getPublicKey:d,getSharedSecret:f,utils:h,lengths:p}=gL(t,r),y={prehash:!0,lowS:typeof r.lowS=="boolean"?r.lowS:!0,format:"compact",extraEntropy:!1},g=c*kI<o.ORDER;function x(D){let E=c>>uu;return D>E}function S(D,E){if(!s.isValidNot0(E))throw new Error(`invalid signature ${D}: out of range 1..Point.Fn.ORDER`);return E}function _(){if(g)throw new Error('"recovered" sig type is not supported for cofactor >2 curves')}function A(D,E){zb(E);let U=p.signature,L=E==="compact"?U:E==="recovered"?U+1:void 0;return _e(D,L)}class O{r;s;recovery;constructor(E,U,L){if(this.r=S("r",E),this.s=S("s",U),L!=null){if(_(),![0,1,2,3].includes(L))throw new Error("invalid recovery id");this.recovery=L}Object.freeze(this)}static fromBytes(E,U=y.format){A(E,U);let L;if(U==="der"){let{r:P,s:V}=us.toSig(_e(E));return new O(P,V)}U==="recovered"&&(L=E[0],U="compact",E=E.subarray(1));let N=p.signature/2,R=E.subarray(0,N),C=E.subarray(N,N*2);return new O(s.fromBytes(R),s.fromBytes(C),L)}static fromHex(E,U){return this.fromBytes(Ls(E),U)}assertRecovery(){let{recovery:E}=this;if(E==null)throw new Error("invalid recovery id: must be present");return E}addRecoveryBit(E){return new O(this.r,this.s,E)}recoverPublicKey(E){let{r:U,s:L}=this,N=this.assertRecovery(),R=N===2||N===3?U+c:U;if(!o.isValid(R))throw new Error("invalid recovery id: sig.r+curve.n != R.x");let C=o.toBytes(R),P=t.fromBytes(pr(CI((N&1)===0),C)),V=s.inv(R),J=M(_e(E,void 0,"msgHash")),z=s.create(-J*V),W=s.create(L*V),Y=t.BASE.multiplyUnsafe(z).add(P.multiplyUnsafe(W));if(Y.is0())throw new Error("invalid recovery: point at infinify");return Y.assertValidity(),Y}hasHighS(){return x(this.s)}toBytes(E=y.format){if(zb(E),E==="der")return Ls(us.hexFromSig(this));let{r:U,s:L}=this,N=s.toBytes(U),R=s.toBytes(L);return E==="recovered"?(_(),pr(Uint8Array.of(this.assertRecovery()),N,R)):pr(N,R)}toHex(E){return Cs(this.toBytes(E))}}let T=r.bits2int||function(E){if(E.length>8192)throw new Error("input is too large");let U=ko(E),L=E.length*8-a;return L>0?U>>BigInt(L):U},M=r.bits2int_modN||function(E){return s.create(T(E))},q=td(a);function j(D){return Jv("num < 2^"+a,D,uo,q),s.toBytes(D)}function $(D,E){return _e(D,void 0,"message"),E?_e(e(D),void 0,"prehashed message"):D}function Z(D,E,U){let{lowS:L,prehash:N,extraEntropy:R}=Gb(U,y);D=$(D,N);let C=M(D),P=s.fromBytes(E);if(!s.isValidNot0(P))throw new Error("invalid private key");let V=[j(P),j(C)];if(R!=null&&R!==!1){let Y=R===!0?n(p.secretKey):R;V.push(_e(Y,void 0,"extraEntropy"))}let J=pr(...V),z=C;function W(Y){let X=T(Y);if(!s.isValidNot0(X))return;let ue=s.inv(X),ee=t.BASE.multiply(X).toAffine(),ce=s.create(ee.x);if(ce===uo)return;let Oe=s.create(ue*s.create(z+ce*P));if(Oe===uo)return;let Ke=(ee.x===ce?0:2)|Number(ee.y&uu),Je=Oe;return L&&x(Oe)&&(Je=s.neg(Oe),Ke^=1),new O(ce,Je,g?void 0:Ke)}return{seed:J,k2sig:W}}function Q(D,E,U={}){let{seed:L,k2sig:N}=Z(D,E,U);return Xv(e.outputLen,s.BYTES,i)(L,N).toBytes(U.format)}function G(D,E,U,L={}){let{lowS:N,prehash:R,format:C}=Gb(L,y);if(U=_e(U,void 0,"publicKey"),E=$(E,R),!Zu(D)){let P=D instanceof O?", use sig.toBytes()":"";throw new Error("verify expects Uint8Array signature"+P)}A(D,C);try{let P=O.fromBytes(D,C),V=t.fromBytes(U);if(N&&P.hasHighS())return!1;let{r:J,s:z}=P,W=M(E),Y=s.inv(z),X=s.create(W*Y),ue=s.create(J*Y),ee=t.BASE.multiplyUnsafe(X).add(V.multiplyUnsafe(ue));return ee.is0()?!1:s.create(ee.x)===J}catch{return!1}}function I(D,E,U={}){let{prehash:L}=Gb(U,y);return E=$(E,L),O.fromBytes(D,"recovered").recoverPublicKey(E).toBytes()}return Object.freeze({keygen:u,getPublicKey:d,getSharedSecret:f,utils:h,lengths:p,Point:t,sign:Q,verify:G,recoverPublicKey:I,Signature:O,hash:e})}var ty={p:BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),n:BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),h:BigInt(1),a:BigInt(0),b:BigInt(7),Gx:BigInt("0x79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798"),Gy:BigInt("0x483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8")},mL={beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),basises:[[BigInt("0x3086d221a7d46bcde86c90e49284eb15"),-BigInt("0xe4437ed6010e88286f547fa90abfe4c3")],[BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),BigInt("0x3086d221a7d46bcde86c90e49284eb15")]]},wL=BigInt(0),Jb=BigInt(2);function bL(t){let e=ty.p,r=BigInt(3),n=BigInt(6),i=BigInt(11),o=BigInt(22),s=BigInt(23),c=BigInt(44),a=BigInt(88),u=t*t*t%e,d=u*u*t%e,f=Hr(d,r,e)*d%e,h=Hr(f,r,e)*d%e,p=Hr(h,Jb,e)*u%e,y=Hr(p,i,e)*p%e,g=Hr(y,o,e)*y%e,x=Hr(g,c,e)*g%e,S=Hr(x,a,e)*x%e,_=Hr(S,c,e)*g%e,A=Hr(_,r,e)*d%e,O=Hr(A,s,e)*y%e,T=Hr(O,n,e)*u%e,M=Hr(T,Jb,e);if(!Qp.eql(Qp.sqr(M),t))throw new Error("Cannot find square root");return M}var Qp=cu(ty.p,{sqrt:bL}),Sc=NI(ty,{Fp:Qp,endo:mL}),hn=PI(Sc,Wp),MI={};function ey(t,...e){let r=MI[t];if(r===void 0){let n=Wp(Yv(t));r=pr(n,n),MI[t]=r}return Wp(pr(r,...e))}var Zb=t=>t.toBytes(!0).slice(1),Qb=t=>t%Jb===wL;function Xb(t){let{Fn:e,BASE:r}=Sc,n=e.fromBytes(t),i=r.multiply(n);return{scalar:Qb(i.y)?n:e.neg(n),bytes:Zb(i)}}function $I(t){let e=Qp;if(!e.isValidNot0(t))throw new Error("invalid x: Fail if x \u2265 p");let r=e.create(t*t),n=e.create(r*t+BigInt(7)),i=e.sqrt(n);Qb(i)||(i=e.neg(i));let o=Sc.fromAffine({x:t,y:i});return o.assertValidity(),o}var wf=ko;function HI(...t){return Sc.Fn.create(wf(ey("BIP0340/challenge",...t)))}function KI(t){return Xb(t).bytes}function xL(t,e,r=Ps(32)){let{Fn:n}=Sc,i=_e(t,void 0,"message"),{bytes:o,scalar:s}=Xb(e),c=_e(r,32,"auxRand"),a=n.toBytes(s^wf(ey("BIP0340/aux",c))),u=ey("BIP0340/nonce",a,o,i),{bytes:d,scalar:f}=Xb(u),h=HI(d,o,i),p=new Uint8Array(64);if(p.set(d,0),p.set(n.toBytes(n.create(f+h*s)),32),!VI(p,i,o))throw new Error("sign: Invalid signature produced");return p}function VI(t,e,r){let{Fp:n,Fn:i,BASE:o}=Sc,s=_e(t,64,"signature"),c=_e(e,void 0,"message"),a=_e(r,32,"publicKey");try{let u=$I(wf(a)),d=wf(s.subarray(0,32));if(!n.isValidNot0(d))return!1;let f=wf(s.subarray(32,64));if(!i.isValidNot0(f))return!1;let h=HI(i.toBytes(d),Zb(u),c),p=o.multiplyUnsafe(f).add(u.multiplyUnsafe(i.neg(h))),{x:y,y:g}=p.toAffine();return!(p.is0()||!Qb(g)||y!==d)}catch{return!1}}var ry=(()=>{let r=(n=Ps(48))=>zp(n,ty.n);return{keygen:Jp(r,KI),getPublicKey:KI,sign:xL,verify:VI,Point:Sc,utils:{randomSecretKey:r,taggedHash:ey,lift_x:$I,pointToBytes:Zb},lengths:{secretKey:32,publicKey:32,publicKeyHasPrefix:!1,signature:32*2,seed:48}}})();l();function EL(t){return t instanceof Uint8Array||ArrayBuffer.isView(t)&&t.constructor.name==="Uint8Array"}function FI(t,e){return Array.isArray(e)?e.length===0?!0:t?e.every(r=>typeof r=="string"):e.every(r=>Number.isSafeInteger(r)):!1}function ex(t,e){if(typeof e!="string")throw new Error(`${t}: string expected`);return!0}function jI(t){if(!Number.isSafeInteger(t))throw new Error(`invalid integer: ${t}`)}function tx(t){if(!Array.isArray(t))throw new Error("array expected")}function WI(t,e){if(!FI(!0,e))throw new Error(`${t}: array of strings expected`)}function vL(t,e){if(!FI(!1,e))throw new Error(`${t}: array of numbers expected`)}function SL(...t){let e=o=>o,r=(o,s)=>c=>o(s(c)),n=t.map(o=>o.encode).reduceRight(r,e),i=t.map(o=>o.decode).reduce(r,e);return{encode:n,decode:i}}function AL(t){let e=typeof t=="string"?t.split(""):t,r=e.length;WI("alphabet",e);let n=new Map(e.map((i,o)=>[i,o]));return{encode:i=>(tx(i),i.map(o=>{if(!Number.isSafeInteger(o)||o<0||o>=r)throw new Error(`alphabet.encode: digit index outside alphabet "${o}". Allowed: ${t}`);return e[o]})),decode:i=>(tx(i),i.map(o=>{ex("alphabet.decode",o);let s=n.get(o);if(s===void 0)throw new Error(`Unknown letter: "${o}". Allowed: ${t}`);return s}))}}function TL(t=""){return ex("join",t),{encode:e=>(WI("join.decode",e),e.join(t)),decode:e=>(ex("join.decode",e),e.split(t))}}function qI(t,e,r){if(e<2)throw new Error(`convertRadix: invalid from=${e}, base cannot be less than 2`);if(r<2)throw new Error(`convertRadix: invalid to=${r}, base cannot be less than 2`);if(tx(t),!t.length)return[];let n=0,i=[],o=Array.from(t,c=>{if(jI(c),c<0||c>=e)throw new Error(`invalid integer: ${c}`);return c}),s=o.length;for(;;){let c=0,a=!0;for(let u=n;u<s;u++){let d=o[u],f=e*c,h=f+d;if(!Number.isSafeInteger(h)||f/e!==c||h-d!==f)throw new Error("convertRadix: carry overflow");let p=h/r;c=h%r;let y=Math.floor(p);if(o[u]=y,!Number.isSafeInteger(y)||y*r+c!==h)throw new Error("convertRadix: carry overflow");if(a)y?a=!1:n=u;else continue}if(i.push(c),a)break}for(let c=0;c<t.length-1&&t[c]===0;c++)i.push(0);return i.reverse()}function _L(t){jI(t);let e=2**8;return{encode:r=>{if(!EL(r))throw new Error("radix.encode input should be Uint8Array");return qI(Array.from(r),e,t)},decode:r=>(vL("radix.decode",r),Uint8Array.from(qI(r,t,e)))}}var IL=t=>SL(_L(58),AL(t),TL("")),du=IL("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz");var GI=new Uint8Array([231,1]),dt=class t{#e;#t={prefix:GI,key:[],encoded:""};constructor(e){let r=e instanceof Uint8Array?e:_r(e);if(!r||r.length!==33)throw new Us("Invalid argument: byte length must be 33 (compressed)","CONSTRUCTOR_ERROR",{keyBytes:r});if(!hn.utils.isValidPublicKey(r))throw new Us("Invalid argument: not a valid secp256k1 compressed point","CONSTRUCTOR_ERROR",{keyBytes:r});this.#e=new Uint8Array(r),this.#t.encoded=this.encode(),this.#t.key=[...this.#t.prefix,...this.compressed]}get compressed(){return new Uint8Array(this.#e)}get uncompressed(){return hn.Point.fromBytes(this.compressed).toBytes(!1)}get xOnly(){return this.compressed.slice(1)}get parity(){let e=this.compressed[0];if(![2,3].includes(e))throw new Us("Invalid state: parity byte must be 2 or 3","PARITY_ERROR",{parity:e});return e}get isEven(){return this.parity===2}get x(){return this.compressed.slice(1,33)}get y(){return this.uncompressed.slice(33,65)}get multibase(){return{prefix:new Uint8Array(this.#t.prefix),key:[...this.#t.key],encoded:this.#t.encoded}}get hex(){return Pt(this.compressed)}get point(){return{x:this.x,y:this.y}}bip340(){return this.xOnly}decode(){return du.decode(this.multibase.encoded.slice(1))}encode(){let e=Array.from(this.compressed),r=Array.from(GI);return r.push(...e),"z"+du.encode(Uint8Array.from(r))}verify(e,r,n){if(n??={scheme:"schnorr"},n.scheme==="ecdsa")return hn.verify(e,r,this.compressed);if(n.scheme==="schnorr")return ry.verify(e,r,this.x);throw new Us(`Invalid scheme: ${n.scheme}.`,"VERIFY_SIGNATURE_ERROR",n)}equals(e){return ca(this.compressed,e.compressed)}toJSON(){return{hex:this.hex,multibase:this.multibase,point:{x:Array.from(this.x),y:Array.from(this.y),parity:this.parity}}}static isValid(e){try{return new t(e),!0}catch{return!1}}static fromJSON(e){return new t(Uint8Array.from([e.point.parity,...e.point.x]))}};l();var zI=new Uint8Array([129,38]),BL=Pt(ke(zI)),Vr=class t{#e;#t;#n;constructor(e){let r=e instanceof Uint8Array,n=typeof e=="bigint";if(!r&&!n)throw new Wn("Invalid entropy: must be a valid byte array (32) or bigint","CONSTRUCTOR_ERROR");if(r&&e.length===32&&(this.#e=new Uint8Array(e),this.#t=t.toSecret(this.#e)),n&&e>=1n&&e<hn.Point.Fn.ORDER&&(this.#e=t.toBytes(e),this.#t=e),!this.#e||this.#e.length!==32)throw new Wn("Invalid bytes: must be a valid 32-byte secret key","CONSTRUCTOR_ERROR");if(!this.#t||this.#t<1n||this.#t>=hn.Point.Fn.ORDER)throw new Wn("Invalid seed: must be valid bigint","CONSTRUCTOR_ERROR");this.#n=this.encode()}destroy(){this.#e&&this.#e.fill(0),this.#t=void 0,this.#n=""}get bytes(){return new Uint8Array(this.#e)}get seed(){return BigInt(this.#t)}get hex(){return Pt(this.bytes)}get multibase(){return this.#n}encode(){let e=Array.from(this.bytes),r=Array.from(zI);return r.push(...e),"z"+du.encode(Uint8Array.from(r))}equals(e){return ca(this.bytes,e.bytes)}computePublicKey(){return new dt(hn.getPublicKey(this.bytes))}toJSON(){return{type:"Secp256k1SecretKey"}}exportJSON(){return{bytes:Array.from(this.bytes),seed:this.seed.toString(),hex:this.hex}}toString(){return"[Secp256k1SecretKey]"}[Symbol.for("nodejs.util.inspect.custom")](){return"[Secp256k1SecretKey]"}isValid(){return hn.utils.isValidSecretKey(this.bytes)}hasValidPublicKey(){try{return this.computePublicKey(),!0}catch{return!1}}sign(e,r){if(r??={scheme:"schnorr"},r.scheme==="ecdsa")return hn.sign(e,this.bytes);if(r.scheme==="schnorr")return ry.sign(e,this.bytes);throw new Wn(`Invalid scheme: ${r.scheme}.`,"SIGN_ERROR",r)}static decode(e){let r=du.decode(e.slice(1));if(r.length!==34)throw new Wn("Invalid argument: must be 34 byte secretKeyMultibase","DECODE_MULTIBASE_ERROR");let n=r.slice(0,2);if(Pt(ke(n))!==BL)throw new Wn(`Invalid prefix: malformed multibase prefix ${n}`,"DECODE_MULTIBASE_ERROR");return r}static fromJSON(e){return new t(new Uint8Array(e.bytes))}static toSecret(e){return e.reduce((r,n)=>r<<8n|BigInt(n),0n)}static toBytes(e){let r=Uint8Array.from({length:32},(n,i)=>Number(e>>BigInt(8*(31-i))&BigInt(255)));if(!hn.utils.isValidSecretKey(r))throw new Wn("Invalid secret key: secret out of valid range","SET_PRIVATE_KEY_ERROR");return new Uint8Array(r)}static fromBigInt(e){return new t(t.toBytes(e))}static random(){let e;do e=Ir(32);while(!hn.utils.isValidSecretKey(e));return e}static generate(){let e=this.random();return new t(e)}static getPublicKey(e){return new t(e).computePublicKey()}};var fo=class t{#e;#t;constructor(e={}){if(!e.publicKey&&!e.secretKey)throw new bn("Argument missing: must at least provide a publicKey","CONSTRUCTOR_ERROR");if(e.secretKey instanceof Uint8Array?this.#e=new Vr(e.secretKey):e.secretKey instanceof Vr&&(this.#e=e.secretKey),e.publicKey instanceof dt?this.#t=e.publicKey:e.publicKey instanceof Uint8Array?this.#t=new dt(e.publicKey):this.#t=this.#e.computePublicKey(),this.#e&&e.publicKey){let r=this.#e.computePublicKey();if(!this.#t.equals(r))throw new bn("Public key does not match secret key","CONSTRUCTOR_ERROR")}}get secretKey(){if(!this.#e)throw new bn("Secret key not available","SECRET_KEY_ERROR");if(!this.#e.isValid())throw new bn("Secret key is not valid","SECRET_KEY_ERROR");return this.#e}set publicKey(e){if(this.#e){let r=this.#e.computePublicKey();if(!e.equals(r))throw new bn("Public key does not match secret key","PUBLIC_KEY_ERROR")}this.#t=e}get publicKey(){return this.#t}get hasSecretKey(){return!!this.#e}get raw(){return{public:this.publicKey.compressed,secret:this.#e?this.#e.bytes:void 0}}get hex(){return{public:this.publicKey.hex,secret:this.#e?this.#e.hex:void 0}}get multibase(){return{publicKeyMultibase:this.#t.multibase.encoded,secretKeyMultibase:this.#e?this.#e.multibase:""}}toJSON(){return{publicKey:this.publicKey.toJSON()}}exportJSON(){if(!this.#e)throw new bn("Cannot export: secret key required. Use publicKey.toJSON() for public-key-only pairs.","SERIALIZE_ERROR");return{secretKey:this.#e.exportJSON(),publicKey:this.publicKey.toJSON()}}[Symbol.for("nodejs.util.inspect.custom")](){return`[SchnorrKeyPair ${this.publicKey.hex}]`}static fromJSON(e){return new t({secretKey:Vr.fromJSON(e.secretKey),publicKey:dt.fromJSON(e.publicKey)})}static fromSecret(e){let r=typeof e=="string"?_r(e):e;if(r.length!==32)throw new bn("Invalid arg: must be 32 byte secret key","FROM_SECRET_KEY_ERROR");let n=new Vr(r),i=n.computePublicKey();return new t({secretKey:n,publicKey:i})}static fromBigInt(e){let r=Vr.fromBigInt(e),n=r.computePublicKey();return new t({secretKey:r,publicKey:n})}static toHex(e){return Pt(e)}static equals(e,r){return e.publicKey.equals(r.publicKey)}static generate(){let e=Vr.random(),r=new Vr(e),n=r.computePublicKey();return new t({secretKey:r,publicKey:n})}};l();l();l();l();var YI=["https://www.w3.org/ns/did/v1.1","https://btcr2.dev/context/v1"],Ac="Multikey",Tc="zQ3s",rr="did:btcr2:_",RL="",JI=/did:btcr2:(x1[qpzry9x8gf2tvdw0s3jn54khce6mua7l]*)/g;function XI(t){if(!ot.isDidVerificationMethod(t))return!1;let{type:e,publicKeyMultibase:r}=t;return e===Ac&&typeof r=="string"&&r.startsWith(Tc)}var ny=class{id;type;controller;publicKeyMultibase;secretKeyMultibase;constructor({id:e,type:r,controller:n,publicKeyMultibase:i,secretKeyMultibase:o}){if(r!==Ac)throw new qe(`Invalid verification method: type must be "${Ac}"`,Le,{id:e,type:r});if(typeof i!="string"||!i.startsWith(Tc))throw new qe(`Invalid verification method: publicKeyMultibase must start with "${Tc}"`,Le,{id:e,publicKeyMultibase:i});this.id=e,this.type=r,this.controller=n,this.publicKeyMultibase=i,this.secretKeyMultibase=o,o||delete this.secretKeyMultibase}},qr=class t{id;"@context"=["https://www.w3.org/ns/did/v1.1","https://btcr2.dev/context/v1"];verificationMethod;authentication;assertionMethod;capabilityInvocation;capabilityDelegation;service;deactivated;constructor(e){if(!e.id)throw new qe("DID Document must have an id",Le,e);let r=e.id.includes("k1")?en.KEY:en.EXTERNAL,n=e.id===rr,{id:i,verificationMethod:o,service:s}=e;if(!n){if(!t.isValidId(i))throw new qe(`Invalid id: ${i}`,Le,e);if(!t.isValidVerificationMethods(o))throw new qe("Invalid verificationMethod: "+o,Le,e);if(!t.isValidServices(s))throw new qe("Invalid service: "+s,Le,e)}if(this.id=e.id,this.verificationMethod=e.verificationMethod||[],this.service=e.service||[],this["@context"]=e["@context"]||["https://www.w3.org/ns/did/v1.1","https://btcr2.dev/context/v1"],r===en.KEY){let c=`${this.id}#initialKey`;this.authentication=e.authentication||[c],this.assertionMethod=e.assertionMethod||[c],this.capabilityInvocation=e.capabilityInvocation||[c],this.capabilityDelegation=e.capabilityDelegation||[c]}else this.authentication=e.authentication,this.assertionMethod=e.assertionMethod,this.capabilityInvocation=e.capabilityInvocation,this.capabilityDelegation=e.capabilityDelegation;t.sanitize(this),n?this.validateGenesis():t.validate(this)}toJSON(){return{id:this.id,"@context":this["@context"],verificationMethod:this.verificationMethod,authentication:this.authentication,assertionMethod:this.assertionMethod,capabilityInvocation:this.capabilityInvocation,capabilityDelegation:this.capabilityDelegation,service:this.service,deactivated:this.deactivated}}static fromKeyIdentifier(e,r,n){e=e.includes("#")?e:`${e}#initialKey`;let i={id:e,verificationMethod:[new ny({id:e,type:"Multikey",controller:e,publicKeyMultibase:r})],service:n};return new t(i)}static fromExternalIdentifier(e){return new t(e)}static sanitize(e){for(let r of Object.keys(e))e[r]===void 0&&delete e[r];return e}static isValid(e){if(!this.isValidContext(e?.["@context"]))throw new qe('Invalid "@context"',Le,e);if(!this.isValidId(e?.id))throw new qe('Invalid "id"',Le,e);if(!this.isValidVerificationMethods(e?.verificationMethod))throw new qe('Invalid "verificationMethod"',Le,e);if(!this.isValidServices(e?.service))throw new qe('Invalid "service"',Le,e);if(!this.isValidVerificationRelationships(e))throw new qe("Invalid verification relationships",Le,e);return!0}static isValidContext(e){return!Array.isArray(e)||e.length===0?!1:YI.every(r=>e.includes(r))}static isValidId(e){if(typeof e!="string")return!1;try{return fr.decode(e),!0}catch{return!1}}static isValidVerificationMethods(e){return Array.isArray(e)&&e.every(XI)}static isValidServices(e){return Array.isArray(e)&&e.every(y_)}static isValidVerificationRelationships(e){let r=["authentication","assertionMethod","capabilityInvocation","capabilityDelegation"],n=Object.keys(e);return r.filter(o=>n.includes(o)).every(o=>{let s=e[o];return s&&Array.isArray(s)&&s.every(c=>typeof c=="string"||ot.isDidVerificationMethod(c))})}static validate(e){return e.id===rr?e.validateGenesis():t.isValid(e),e}validateGenesis(){if(this.id!==rr)throw new qe("Invalid GenesisDocument ID",Le,this);if(!this.verificationMethod.every(e=>e.id.includes(rr)&&e.controller===rr))throw new qe("Invalid GenesisDocument verificationMethod",Le,this);if(!this.service.every(e=>e.id.includes(rr)))throw new qe("Invalid GenesisDocument service",Le,this);if(!t.isValidVerificationRelationships(this))throw new qe("Invalid GenesisDocument assertionMethod",Le,this);return!0}toIntermediate(){if(this.id.includes("k1"))throw new qe("Cannot convert a key identifier to an intermediate document",Le,this);return new fu(this)}},fu=class t extends qr{constructor(e){super(e)}toDidDocument(e){let r=JSON.stringify(this).replaceAll(rr,e),n=JSON.parse(r);return new qr(n)}static fromDidDocument(e){let r=ks.cloneReplace(e,JI,rr);return new t(r)}static create(e,r,n){return new t({id:rr,...r,verificationMethod:e,service:n})}static fromPublicKey(e,r){let n=new dt(e),i=rr,o=ki(n.compressed,Do(r)).address,s=[{id:`${i}#service-0`,serviceEndpoint:`bitcoin:${o}`,type:"SingletonBeacon"}],c={authentication:[`${i}#key-0`],assertionMethod:[`${i}#key-0`],capabilityInvocation:[`${i}#key-0`],capabilityDelegation:[`${i}#key-0`]},a=[{id:`${i}#key-0`,type:"Multikey",controller:i,publicKeyMultibase:n.multibase.encoded}];return t.create(a,c,s)}static fromJSON(e){return new t(e)}static toGenesisBytes(e){return Ro(ir(e))}};var ZI="did:btcr2:",fr=class t{static encode(e,r){let{idType:n,version:i=1,network:o="bitcoin"}=r;if(!(n in en))throw new at('Expected "idType" to be "KEY" or "EXTERNAL"',ht,{idType:n});if(i!==1)throw new at('Expected "version" to be 1',ht,{version:i});if(typeof o!="string")throw new at('Expected "network" to be a known network name',ht,{network:o});let s=na[o];if(s===void 0)throw new at('Invalid "network" name',ht,{network:o});if(n==="KEY")try{new dt(e)}catch{throw new at('Expected "genesisBytes" to be a valid compressed secp256k1 public key',ht,{genesisBytes:e})}else if(e.length!==32)throw new at('Expected "genesisBytes" to be a 32-byte hash for EXTERNAL identifiers',ht,{genesisBytes:e});let c=n==="KEY"?"k":"x",a=i-1<<4|s,u=new Uint8Array([a,...e]);return`${ZI}${Ss.encodeFromBytes(c,u)}`}static decode(e){let r=e.split(":");if(r.length!==3)throw new at(`Invalid did: ${e}`,ht,{identifier:e});let[n,i,o]=r;if(n!=="did")throw new at(`Invalid did: ${e}`,ht,{identifier:e});if(i!=="btcr2")throw new at(`Invalid did method: ${i}`,Sl,{identifier:e});if(!o)throw new at(`Invalid method-specific id: ${e}`,ht,{identifier:e});if(o!==o.toLowerCase())throw new at(`Invalid method-specific id (must be lowercase): ${e}`,ht,{identifier:e});let s,c;try{({prefix:s,bytes:c}=Ss.decodeToBytes(o))}catch(y){let g=y instanceof Error?y.message:String(y);throw new at(`Invalid method-specific id (Bech32m decoding failed: ${g}): ${e}`,ht,{identifier:e,reason:g})}if(!["x","k"].includes(s))throw new at(`Invalid hrp: ${s}`,ht,{identifier:e});if(!c||c.length<1)throw new at(`Failed to decode id: ${o}`,ht,{identifier:e});let a=s==="k"?"KEY":"EXTERNAL",u=c[0]>>>4;if(u!==0)throw new at(`Invalid btcr2_version (expected 0): ${u}`,ht,{identifier:e});let d=1,f=c[0]&15,h=na[f];if(typeof h!="string"){let y=f>=12?"custom network not supported":"reserved";throw new at(`Invalid network (${y}): ${f}`,ht,{identifier:e})}let p=c.slice(1);if(a==="KEY")try{new dt(p)}catch{throw new at(`Invalid genesisBytes: ${p}`,ht,{identifier:e})}else if(p.length!==32)throw new at(`Invalid genesisBytes: ${p}`,ht,{identifier:e});return{idType:a,hrp:s,version:d,network:h,genesisBytes:p}}static validate(e,r={}){let n=[],i=(x,S)=>{n.push(S===void 0?{name:x,ok:!0}:{name:x,ok:!0,detail:S})},o=(x,S,_={})=>(n.push({name:x,ok:!1,detail:S}),{did:e,valid:!1,..._,checks:n});if(typeof e!="string")return o("prefix","The identifier is not a string.");let s=e.split(":");if(s.length!==3||s[0]!=="did"||s[1]!=="btcr2")return o("prefix",`The identifier must be "${ZI}" followed by the method-specific id.`);let c=s[2];if(c.length===0)return o("prefix","The method-specific id is empty.");if(i("prefix"),c!==c.toLowerCase())return o("lowercase","The method-specific id must be lowercase.");i("lowercase");let a,u;try{({prefix:a,bytes:u}=Ss.decodeToBytes(c))}catch(x){return o("bech32m",`Bech32m decoding failed: ${x instanceof Error?x.message:String(x)}`)}if(a!=="k"&&a!=="x")return o("bech32m",`The hrp must be "k" or "x", got "${a}".`);let d=a==="k"?en.KEY:en.EXTERNAL;if(u.length<1)return o("bech32m","The data bytes are empty.",{idType:d});i("bech32m",`hrp "${a}", ${u.length} data bytes`);let f=u[0]>>>4;if(f!==0)return o("version",`btcr2_version must be 0, got ${f}.`,{idType:d});i("version","btcr2_version 0 (version_number 1)");let h=u[0]&15,p=na[h];if(typeof p!="string"){let x=h>=12?`network_value ${h} is a custom network, not supported by this implementation.`:`network_value ${h} is reserved.`;return o("network",x,{idType:d})}i("network",`network_value ${h} (${p})`);let y=u.slice(1);if(d===en.KEY){try{new dt(y)}catch{return o("genesisBytes",`Expected a 33-byte SEC compressed secp256k1 public key, got ${y.length} bytes that are not a valid key.`,{idType:d,network:p})}i("genesisBytes","33-byte SEC compressed secp256k1 public key")}else{if(y.length!==32)return o("genesisBytes",`Expected a 32-byte SHA-256 hash, got ${y.length} bytes.`,{idType:d,network:p});i("genesisBytes","32-byte SHA-256 hash")}let g;try{g=t.encode(y,{idType:d,version:1,network:p})}catch(x){return o("roundTrip",`Re-encoding failed: ${x instanceof Error?x.message:String(x)}`,{idType:d,network:p})}if(g!==e)return o("roundTrip",`Re-encoding produced "${g}".`,{idType:d,network:p});if(i("roundTrip"),r.genesisBytes!==void 0){let x=r.genesisBytes;if(!(x instanceof Uint8Array))return o("genesisBytesMatch","The supplied genesis bytes are not a Uint8Array.",{idType:d,network:p});if(x.length!==y.length)return o("genesisBytesMatch",`Expected ${y.length} genesis bytes for a ${d} identifier, got ${x.length}.`,{idType:d,network:p});if(!wo(x,y))return o("genesisBytesMatch",`The supplied genesis bytes ${xe.encode(x)} do not equal the genesis bytes of the identifier ${xe.encode(y)}.`,{idType:d,network:p});i("genesisBytesMatch","The supplied genesis bytes equal the genesis bytes of the identifier.")}if(r.genesisDocument!==void 0){let x=r.genesisDocument;if(d===en.KEY)return o("genesisDocument","A KEY identifier has no genesis document.",{idType:d,network:p});let S=x.id;if(S!==rr)return o("genesisDocument",`The genesis document id must be "${rr}", got ${JSON.stringify(S)}.`,{idType:d,network:p});try{fu.fromJSON(x)}catch(A){return o("genesisDocument",`Invalid genesis document: ${A instanceof Error?A.message:String(A)}`,{idType:d,network:p})}let _=Uo(x);if(!wo(_,y))return o("genesisDocument",`The genesis document hash ${xe.encode(_)} does not equal the genesis bytes ${xe.encode(y)}.`,{idType:d,network:p});i("genesisDocument","The genesis document hashes to the genesis bytes.")}return{did:e,valid:!0,idType:d,network:p,checks:n}}static generate(){let e=fo.generate(),r=this.encode(e.publicKey.compressed,{idType:"KEY",version:1,network:"regtest"});return{keyPair:e.exportJSON(),did:r}}static getPublicKey(e){let{idType:r,genesisBytes:n}=t.decode(e);if(r!=="KEY")throw new at(`Cannot extract public key from EXTERNAL DID: ${e}. EXTERNAL DIDs encode a document hash, not a public key.`,ht,{did:e,idType:r});return new dt(n)}static isValid(e){try{return this.decode(e),!0}catch{return!1}}};var Fr=class{static parseBitcoinAddress(e){if(!e.startsWith("bitcoin:"))throw new we("Invalid Bitcoin URI format","BEACON_SERVICE_ERROR",{uri:e});return e.replace("bitcoin:","").split("?")[0]}static isBeaconService(e){return!(!ot.isDidService(e)||!["SingletonBeacon","CASBeacon","SMTBeacon"].includes(e.type)||[e.serviceEndpoint].flat().some(r=>typeof r=="string"&&!r.startsWith("bitcoin:")))}static getBeaconServices(e){return e.service.filter(this.isBeaconService)??[]}static createBeaconServices(e,r){try{return["p2pkh","p2wpkh","p2tr"].map(i=>this.createBeaconService(e,i,r))}catch(n){throw new Yt("Failed to create beacon services: "+n.message,"BEACON_SERVICE_ERROR",{did:e,beaconType:r})}}static createBeaconService(e,r,n){try{let i=fr.decode(e),o=Do(i.network),s=i.genesisBytes,c=`${e}#initial${r.toUpperCase()}`,u=`bitcoin:${r==="p2tr"?_s(s.slice(1,33),void 0,o).address:r==="p2wpkh"?Ts(s,o).address:ki(s,o).address}`;return{id:c,type:n,serviceEndpoint:u}}catch(i){throw new Yt("Failed to create beacon service: "+i.message,"BEACON_SERVICE_ERROR",{did:e,beaconType:n})}}static generateBeaconServices({id:e,publicKey:r,network:n,beaconType:i}){try{let o=ki(r,n).address,s=Ts(r,n).address,c=_s(r.slice(1,33),void 0,n).address;if(!o||!s||!c)throw new zt("Failed to generate bitcoin addresses");return[{id:`${e}#initialP2PKH`,type:i,serviceEndpoint:`bitcoin:${o}`},{id:`${e}#initialP2WPKH`,type:i,serviceEndpoint:`bitcoin:${s}`},{id:`${e}#initialP2TR`,type:i,serviceEndpoint:`bitcoin:${c}`}]}catch(o){throw new Yt("Failed to create beacon services: "+o.message,"BEACON_SERVICE_ERROR",{id:e,publicKey:r,network:n,beaconType:i})}}static parseBeaconServiceEndpoint(e){return{...e,serviceEndpoint:e.serviceEndpoint.replace("bitcoin:","")}}static getBeaconServiceIds(e){return this.getBeaconServices(e).map(r=>r.id)}};var UL=/^6a20([0-9a-f]{64})$/i;function rx(t){if(!t)return null;let e=UL.exec(t.trim());return e?e[1].toLowerCase():null}var nx=class t{static async spendsFromAddress(e,r,n){for(let i of e.vin??[]){if(i.is_coinbase)continue;let o=i.prevout;if(!o&&i.txid&&(o=(await n.rest.transaction.get(i.txid))?.vout?.[i.vout]),o?.scriptpubkey_address===r)return!0}return!1}static async indexer(e,r){let n=new Map,i=await r.rest.block.count(),o=new Map;for(let s of e){n.set(s,[]);let c=Fr.parseBitcoinAddress(s.serviceEndpoint),a=await r.rest.address.getTxs(c);if(!(!a||!a.length))for(let u of a){let d=u.status;if(d.confirmed!==!0)continue;let f=u.vout.slice(-1)[0];if(!f)continue;let h=rx(f.scriptpubkey);if(!h||!await t.spendsFromAddress(u,c,r))continue;let p=i-d.block_height+1,y=await t.mediantime(d.block_hash,r,o);n.get(s)?.push({tx:u,signalBytes:h,blockMetadata:{confirmations:p,height:d.block_height,time:d.block_time,mediantime:y}})}}return n}static async mediantime(e,r,n){let i=n.get(e);if(i!==void 0)return i;let o=await r.rest.block.get({blockhash:e}),s=o?.mediantime;if(typeof s!="number"||!Number.isFinite(s))throw new ve(`Block ${e} has no mediantime in the block record of the Bitcoin REST backend.`,Al,{blockhash:e,block:o});return n.set(e,s),s}static async fullnode(e,r){let n=new Map;for(let u of e)n.set(u,[]);let i=r.rpc;if(!i)throw new ve("RPC connection is not available","RPC_CONNECTION_ERROR",r);let o=await i.getBlockCount(),s=new Map(e.map(u=>[Fr.parseBitcoinAddress(u.serviceEndpoint),u])),c=0,a=await r.rpc.getBlock({height:c});for(console.info("Searching for beacon signals, please wait ...");a.height<=o;){for(let u of a.tx){if(u.txid===M0)continue;let d=u.vout.slice(-1)[0];if(!d)continue;let f=rx(d.scriptPubKey?.hex);if(!f)continue;let h=new Set;for(let p of u.vin){if(p.coinbase||p.txinwitness&&p.txinwitness.length===1&&p.txinwitness[0]===P0||!p.txid||p.vout===void 0)continue;let y=await i.getRawTransaction(p.txid,2);if(!y.vout[p.vout])continue;let g=y.vout[p.vout].scriptPubKey;if(!g.address)continue;let x=s.get(g.address);!x||h.has(x)||(h.add(x),console.info(`Tx ${u.txid} contains beacon address ${g.address}`),n.get(x)?.push({tx:u,signalBytes:f,blockMetadata:{height:a.height,time:a.time,mediantime:a.mediantime,confirmations:a.confirmations}}))}}if(c+=1,c>o){console.info(`Chain tip reached ${c}, breaking ...`);break}a=await i.getBlock({height:c})}return n}};l();var _c=Object.freeze(["https://w3id.org/json-ld-patch/v1","https://w3id.org/zcap/v1","https://w3id.org/security/data-integrity/v2","https://btcr2.dev/context/v1"]);function iy(t,e=_c){return Array.isArray(t)&&t.length===e.length&&t.every((r,n)=>r===e[n])}l();l();l();l();l();l();var Tre=new Uint8Array(0);function QI(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")}l();function OL(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 c=t.length,a=t.charAt(0),u=Math.log(c)/Math.log(256),d=Math.log(256)/Math.log(c);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 g=0,x=0,S=0,_=y.length;S!==_&&y[S]===0;)S++,g++;for(var A=(_-S)*d+1>>>0,O=new Uint8Array(A);S!==_;){for(var T=y[S],M=0,q=A-1;(T!==0||M<x)&&q!==-1;q--,M++)T+=256*O[q]>>>0,O[q]=T%c>>>0,T=T/c>>>0;if(T!==0)throw new Error("Non-zero carry");x=M,S++}for(var j=A-x;j!==A&&O[j]===0;)j++;for(var $=a.repeat(g);j<A;++j)$+=t.charAt(O[j]);return $}function h(y){if(typeof y!="string")throw new TypeError("Expected String");if(y.length===0)return new Uint8Array;var g=0;if(y[g]!==" "){for(var x=0,S=0;y[g]===a;)x++,g++;for(var _=(y.length-g)*u+1>>>0,A=new Uint8Array(_);y[g];){var O=r[y.charCodeAt(g)];if(O===255)return;for(var T=0,M=_-1;(O!==0||T<S)&&M!==-1;M--,T++)O+=c*A[M]>>>0,A[M]=O%256>>>0,O=O/256>>>0;if(O!==0)throw new Error("Non-zero carry");S=T,g++}if(y[g]!==" "){for(var q=_-S;q!==_&&A[q]===0;)q++;for(var j=new Uint8Array(x+(_-q)),$=x;q!==_;)j[$++]=A[q++];return j}}}function p(y){var g=h(y);if(g)return g;throw new Error(`Non-${e} character`)}return{encode:f,decodeUnsafe:h,decode:p}}var DL=OL,kL=DL,eB=kL;var ix=class{name;prefix;baseEncode;constructor(e,r,n){this.name=e,this.prefix=r,this.baseEncode=n}encode(e){if(e instanceof Uint8Array)return`${this.prefix}${this.baseEncode(e)}`;throw Error("Unknown type, must be binary type")}},ox=class{name;prefix;baseDecode;prefixCodePoint;constructor(e,r,n){this.name=e,this.prefix=r;let i=r.codePointAt(0);if(i===void 0)throw new Error("Invalid prefix character");this.prefixCodePoint=i,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 tB(this,e)}},sx=class{decoders;constructor(e){this.decoders=e}or(e){return tB(this,e)}decode(e){let r=e[0],n=this.decoders[r];if(n!=null)return n.decode(e);throw RangeError(`Unable to decode multibase string ${JSON.stringify(e)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`)}};function tB(t,e){return new sx({...t.decoders??{[t.prefix]:t},...e.decoders??{[e.prefix]:e}})}var cx=class{name;prefix;baseEncode;baseDecode;encoder;decoder;constructor(e,r,n,i){this.name=e,this.prefix=r,this.baseEncode=n,this.baseDecode=i,this.encoder=new ix(e,r,n),this.decoder=new ox(e,r,i)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}};function NL({name:t,prefix:e,encode:r,decode:n}){return new cx(t,e,r,n)}function ax({name:t,prefix:e,alphabet:r}){let{encode:n,decode:i}=eB(r,t);return NL({prefix:e,name:t,encode:n,decode:o=>QI(i(o))})}var bf=ax({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),Cre=ax({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});l();function rB(t){return t===void 0?[]:Array.isArray(t)?t:[t]}var lu=class{cryptosuite;constructor(e){this.cryptosuite=e}addProof(e,r){let n=this.cryptosuite.createProof(e,r);if(!n.type||!n.verificationMethod||!n.proofPurpose)throw new wn("Invalid proof: missing proof.type, proof.verificationMethod and/or proof.proofPurpose",Bo,{config:r,proof:n});if(r.domain&&n.domain!==r.domain)throw new wn("Domain mismatch: proof.domain !== config.domain",Bo,{config:r,proof:n});if(r.challenge&&n.challenge!==r.challenge)throw new wn("Challenge mismatch options and challenge passed",Bo,{config:r,proof:n});let i=e;return i.proof=n,i}verifyProof(e,r,n,i,o){let s=JSON.parse(e),c=s.proof;if(!c.type||!c.verificationMethod||!c.proofPurpose)throw new wn("Invalid proof: missing proof.type, proof.verificationMethod and/or proof.proofPurpose",Ni,s);if(r&&r!==c.proofPurpose)throw new wn("Proof purpose mismatch: proof.proofPurpose !== expectedPurpose",Ni,{proof:c,expectedPurpose:r});if(o&&o!==c.challenge)throw new wn("Challenge mismatch: proof.challenge !== expectedChallenge","INVALID_CHALLENGE_ERROR",{proof:c,expectedChallenge:o});if(i){let u=rB(i),d=rB(c.domain);if(u.length!==d.length)throw new wn("Domain mismatch: expectedDomain length does not match proof.domain length",Ni,{proof:c,expectedDomain:i});if(!u.every(f=>d.includes(f))||!d.every(f=>u.includes(f)))throw new wn("Domain mismatch: expectedDomain and proof.domain do not match",Ni,{proof:c,expectedDomain:i})}let a=this.cryptosuite.verifyProof(s);return a.mediaType=n,a}};var hu=class{type="DataIntegrityProof";cryptosuite="bip340-jcs-2025";multikey;constructor(e){this.multikey=e}toDataIntegrityProof(){return new lu(this)}#e(){return{type:this.type,cryptosuite:this.cryptosuite,verificationMethod:this.multikey.fullId()}}createProof(e,r){r["@context"]=e["@context"]??r["@context"];let n=this.proofConfiguration(r),i=this.transformDocument(e,r),o=this.generateHash(n,i),s=this.proofSerialization(o,r),c=r;return c.proofValue=bf.encode(s),c.cryptosuite=this.cryptosuite,c.type=this.type,c}verifyProof(e){let{proof:r,...n}=e,{proofValue:i,...o}=r,s=this.transformDocument(n,o),c=this.proofConfiguration(o),a=this.generateHash(c,s),u=bf.decode(e.proof.proofValue),d=this.proofVerification(a,u,o);return{verified:d,verifiedDocument:d?e:void 0}}transformDocument(e,r){if(r.type!==this.type)throw new we("Type mismatch: config.type !== this.type",Ni,{config:r,suite:this.#e()});if(r.cryptosuite!==this.cryptosuite)throw new we("Cryptosuite mismatch: config.cryptosuite !== this.cryptosuite",Ni,{config:r,suite:this.#e()});return ir(e)}generateHash(e,r){let n=ke(xs(e)),i=ke(xs(r)),o=lt(n,i);return ke(o)}proofConfiguration(e){if(e.type!==this.type)throw new Io("Type mismatch: config.type !== this.type",Bo,{config:e,suite:this.#e()});if(e.cryptosuite!==this.cryptosuite)throw new Io("Cryptosuite mismatch: config.cryptosuite !== this.cryptosuite",Bo,{config:e,suite:this.#e()});if(e.created&&!Oo.isValidXsdDateTime(e.created))throw new Io('Invalid config: "created" must be a valid XMLSchema DateTime string',Bo,e);return ir(e)}proofSerialization(e,r){if(r.verificationMethod!==this.multikey.fullId())throw new Io("Id mismatch: config.verificationMethod !== this.multikey.fullId()",Iv,{config:r,suite:this.#e()});return this.multikey.sign(e)}proofVerification(e,r,n){if(n.verificationMethod!==this.multikey.fullId())throw new Io("Id mismatch: config.verificationMethod !== this.multikey.fullId()",Ni,{config:n,suite:this.#e()});return this.multikey.verify(r,e)}};l();l();l();var ds=class t{static type="Multikey";id;controller;#e;#t;constructor({id:e,controller:r,keyPair:n,externalSigner:i}){if(!n)throw new xn('Argument missing: "keyPair" required',"CONSTRUCTOR_ERROR");if(!n.publicKey)throw new xn('Argument missing: "keyPair" must contain a "publicKey"',"CONSTRUCTOR_ERROR");if(i){let o=i.publicKey,s=n.publicKey.compressed;if(o.length!==s.length||!o.every((c,a)=>c===s[a]))throw new xn("externalSigner.publicKey does not match keyPair.publicKey.compressed","CONSTRUCTOR_ERROR")}this.id=e,this.controller=r,this.#e=n,this.#t=i}get keyPair(){return this.#e}get publicKey(){return this.#e.publicKey}get secretKey(){try{return this.#e.secretKey}catch{throw new xn("Cannot get: no secretKey","PRIVATE_KEY_ERROR")}}toCryptosuite(){return new hu(this)}sign(e){if(this.#t)return this.#t.sign(e,"bip340");if(!this.signer)throw new xn("Cannot sign: no secretKey","SIGN_ERROR");return Ur.sign(e,this.secretKey.bytes,Ir(32))}verify(e,r){return Ur.verify(e,r,this.publicKey.x)}fullId(){return this.id.startsWith("#")?`${this.controller}${this.id}`:this.id}toVerificationMethod(){return{id:this.id,type:t.type,controller:this.controller,publicKeyMultibase:this.publicKey.multibase.encoded}}get signer(){return!!this.#t||!!this.#e.secretKey}toJSON(){let e;try{e=this.signer}catch{e=!1}return{id:this.id,controller:this.controller,fullId:this.fullId(),signer:e,keyPair:this.keyPair.toJSON(),verificationMethod:this.toVerificationMethod()}}static create({id:e,controller:r,keyPair:n}){return new t({id:e,controller:r,keyPair:n})}static fromSecretKey(e,r,n){let i=new Vr(n),o=i.computePublicKey(),s=new fo({publicKey:o,secretKey:i});return new t({id:e,controller:r,keyPair:s})}static fromSigner(e,r,n){let i=new dt(n.publicKey),o=new fo({publicKey:i});return new t({id:e,controller:r,keyPair:o,externalSigner:n})}static fromPublicKey({id:e,controller:r,publicKeyBytes:n}){let i=new dt(n),o=new fo({publicKey:i});return new t({id:e,controller:r,keyPair:o})}static fromVerificationMethod({id:e,controller:r,publicKeyMultibase:n}){if(!n)throw new xn("Invalid publicKeyMultibase: cannot be undefined",Tl,{publicKeyMultibase:n});let i=bf.decode(n);if(i.length!==35)throw new xn(`Invalid publicKeyMultibase length: ${i.length}`,Tl,{publicKeyMultibase:n});if(i[0]!==231||i[1]!==1)throw new xn(`Invalid publicKeyMultibase prefix: expected secp256k1 multicodec [0xe7, 0x01], got [0x${i[0]?.toString(16)??"??"}, 0x${i[1]?.toString(16)??"??"}]`,Tl,{publicKeyMultibase:n});let o=i.slice(2),s=new fo({publicKey:o});return new t({id:e,controller:r,keyPair:s})}};l();l();l();l();var xf=class t{#e={phase:"Construct"};#t;#n;#r;#o;#i;constructor(e){this.#t=e.sourceDocument,this.#n=e.patches,this.#r=e.sourceVersionId,this.#o=e.verificationMethod,this.#i=e.beaconService}static construct(e,r,n){let i={"@context":[..._c],patch:r,targetHash:"",targetVersionId:n+1,sourceHash:Gn(e)},o=ra.apply(e,r);if(o.id!==e.id)throw new At(`Patches must not change the DID document id (source "${e.id}" to target "${o.id}").`,Te,{sourceId:e.id,targetId:o.id});try{qr.isValid(o)}catch(s){throw new At("Error validating targetDocument: "+(s instanceof Error?s.message:String(s)),Te,o)}return i.targetHash=Gn(o),i}static sign(e,r,n,i){if(!e.startsWith("did:btcr2:"))throw new At(`Expected a did:btcr2 identifier for the root capability; got "${e}".`,Te,{did:e});let o=n.controller,s=n.id.indexOf("#");if(s<0)throw new At(`Verification method id must contain a fragment (e.g. "${n.id}#initialKey"); got "${n.id}".`,Te,{verificationMethodId:n.id});let c=n.id.slice(s),a=ds.fromSigner(c,o,i),u=s===0?`${e}${c}`:n.id,d=a.publicKey.multibase.encoded;if(n.publicKeyMultibase&&d!==n.publicKeyMultibase)throw new At(`Signing key does not match verification method "${n.id}": the signer's public key differs from the method's published publicKeyMultibase.`,Te,{verificationMethodId:n.id,expected:n.publicKeyMultibase,actual:d});let f={"@context":[..._c],cryptosuite:"bip340-jcs-2025",type:"DataIntegrityProof",verificationMethod:u,proofPurpose:"capabilityInvocation",capability:`urn:zcap:root:${encodeURIComponent(e)}`,capabilityAction:"Write"};return a.toCryptosuite().toDataIntegrityProof().addProof(r,f)}static async announce(e,r,n,i,o,s){return Ms.establish(e,r).broadcastSignal(n,i,o,s)}#c(){return t.construct(this.#t,this.#n,this.#r)}advance(){for(;;)switch(this.#e.phase){case"Construct":{let e=this.#c();this.#e={phase:"Sign",unsignedUpdate:e};continue}case"Sign":return{status:"action-required",needs:[{kind:"NeedSigningKey",verificationMethodId:this.#o.id,unsignedUpdate:this.#e.unsignedUpdate}]};case"Fund":return{status:"action-required",needs:[{kind:"NeedFunding",beaconAddress:this.#i.serviceEndpoint.replace("bitcoin:",""),beaconService:this.#i}]};case"Broadcast":return{status:"action-required",needs:[{kind:"NeedBroadcast",beaconService:this.#i,signedUpdate:this.#e.signedUpdate,did:this.#t.id}]};case"Complete":return{status:"complete",result:{signedUpdate:this.#e.signedUpdate}}}}provide(e,r){switch(e.kind){case"NeedSigningKey":{if(this.#e.phase!=="Sign")throw new At(`Cannot provide NeedSigningKey: updater phase is ${this.#e.phase}, expected Sign.`,Te,{phase:this.#e.phase});if(!r)throw new At("NeedSigningKey requires a Signer.",Te);let n=this.#e.unsignedUpdate,i=t.sign(this.#t.id,n,this.#o,r);this.#e={phase:"Fund",unsignedUpdate:n,signedUpdate:i};break}case"NeedFunding":{if(this.#e.phase!=="Fund")throw new At(`Cannot provide NeedFunding: updater phase is ${this.#e.phase}, expected Fund.`,Te,{phase:this.#e.phase});if(r!==void 0){let n=r;if(typeof n.utxoCount!="number"||!Number.isFinite(n.utxoCount)||n.utxoCount<1)throw new At(`NeedFunding proof must have utxoCount >= 1; got ${String(n.utxoCount)}.`,Te,{utxoCount:n.utxoCount})}this.#e={phase:"Broadcast",unsignedUpdate:this.#e.unsignedUpdate,signedUpdate:this.#e.signedUpdate};break}case"NeedBroadcast":{if(this.#e.phase!=="Broadcast")throw new At(`Cannot provide NeedBroadcast: updater phase is ${this.#e.phase}, expected Broadcast.`,Te,{phase:this.#e.phase});this.#e={phase:"Complete",signedUpdate:this.#e.signedUpdate};break}}}};var Ef=class{static methodName="btcr2";static create(e,r){let{idType:n,version:i=1,network:o="bitcoin"}=r||{};if(!n)throw new we("idType is required for creating a did:btcr2 identifier",Le,r);return fr.encode(e,{idType:n,version:i,network:o})}static resolve(e,r={}){let n=fr.decode(e),i=lo.sidecarData(r.sidecar),o=n.hrp===Nl.k?lo.deterministic(n):null;return new lo(n,i,o,{versionId:r.versionId,versionTime:r.versionTime,genesisDocument:r.sidecar?.genesisDocument,maxDiscoveryRounds:r.maxDiscoveryRounds,minConf:r.minConf})}static update({sourceDocument:e,patches:r,sourceVersionId:n,verificationMethodId:i,beaconId:o}){let s=ot.relationshipMethodId(i,e.id);if(!(s!==void 0&&e.capabilityInvocation?.some(f=>ot.relationshipMethodId(f,e.id)===s)))throw new At("Invalid verificationMethodId: not authorized for capabilityInvocation",Le,e);let a=this.getSigningMethod(e,i);if(!a)throw new At("Invalid verificationMethod: not found in source document",Le,{sourceDocument:e,verificationMethodId:i});if(a.type!==Ac)throw new At(`Invalid verificationMethod: verificationMethod.type must be "${Ac}"`,Le,a);if(!a.publicKeyMultibase?.startsWith(Tc))throw new At(`Invalid verificationMethodId: publicKeyMultibase prefix must start with "${Tc}"`,Le,a);let u=ot.absoluteDidUrl(o,e.id),d=e.service.filter(f=>u!==void 0&&ot.absoluteDidUrl(f.id,e.id)===u).filter(f=>!!f).shift();if(!d)throw new At("No beacon service found for provided beaconId",Te,{sourceDocument:e,beaconId:o});return new xf({sourceDocument:e,patches:r,sourceVersionId:n,verificationMethod:a,beaconService:d})}static getSigningMethod(e,r){r??="#initialKey";let n=me.parse(e.id);if(n&&n.method!==this.methodName)throw new we(`Method not supported: ${n.method}`,Sl,{identifier:e.id});let i=ot.absoluteDidUrl(r,e.id)??ot.relationshipMethodId(e.assertionMethod?.[0],e.id),o=i===void 0?void 0:e.verificationMethod?.find(s=>ot.absoluteDidUrl(s.id,e.id)===i);if(!(o&&o.publicKeyMultibase))throw new re(ie.InternalError,"A verification method intended for signing could not be determined from the DID Document");return o}};var nB=6;function vf(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}function CL(t){return vf(t)&&Object.values(t).every(e=>typeof e=="string")}function LL(t){return vf(t)?Array.isArray(t.patch)&&typeof t.sourceHash=="string"&&typeof t.targetHash=="string"&&Number.isInteger(t.targetVersionId)&&t.targetVersionId>=2&&vf(t.proof):!1}function PL(t){return vf(t)?typeof t.id=="string"&&typeof t.collapsed=="string"&&Array.isArray(t.hashes):!1}function ML(t){if(t===void 0)return nB;if(typeof t=="number"&&Number.isInteger(t)&&t>=1)return t;throw new ve(`Invalid resolution option minConf: expected a positive integer (minimum 1), got ${ux(t)}.`,Wu,{minConf:t})}function ux(t){return typeof t=="string"?JSON.stringify(t):String(t)}var KL=/^-?[0-9]+$/;function $L(t){if(t!==void 0){if(typeof t=="string"&&KL.test(t)&&Number.isSafeInteger(Number(t)))return Number(t);throw new ve(`Invalid resolution option versionId: expected an ASCII string of an integer, got ${ux(t)}.`,Wu,{versionId:t})}}var HL=/^-?\d{4,}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}Z$/;function VL(t){if(t!==void 0){if(typeof t=="string"&&HL.test(t)&&Oo.isValidXsdDateTime(t)){let e=Date.parse(t);if(Number.isFinite(e))return e}throw new ve(`Invalid resolution option versionTime: expected an XML Datetime in UTC without a fraction (for example "2026-07-01T00:00:00Z"), got ${ux(t)}.`,Wu,{versionTime:t})}}var lo=class t{#e;#t;#n;#r;#o;#i;#c=null;#l=new Map;#h=new Set;#d=new Set;#a=[];#p=null;#s=1;#y=[];#g=0;#f;#u;#m=0;#w;constructor(e,r,n,i){if(this.#e=e,this.#o=r,this.#i=n,i?.versionId!==void 0&&i?.versionTime!==void 0)throw new ve("Invalid resolution options: versionId and versionTime are mutually exclusive. Pass one of them.",Wu,{versionId:i.versionId,versionTime:i.versionTime});this.#t=$L(i?.versionId),this.#n=VL(i?.versionTime);let o=i?.maxDiscoveryRounds;this.#u=typeof o=="number"&&o>0?o:1/0,this.#w=ML(i?.minConf),i?.genesisDocument&&(this.#c=i.genesisDocument),this.#r=n?"BeaconDiscovery":"GenesisDocument"}static deterministic(e){let r=e.genesisBytes,n=fr.encode(r,e),{multibase:i}=new dt(r),o=Fr.generateBeaconServices({id:n,publicKey:r,network:Do(e.network),beaconType:"SingletonBeacon"});return new qr({id:n,verificationMethod:[{id:`${n}#initialKey`,type:"Multikey",controller:n,publicKeyMultibase:i.encoded}],service:o})}static external(e,r){let n=Uo(r);if(!wo(e.genesisBytes,n))throw new ve("Initial document mismatch: genesisBytes !== genesisDocumentHash",ht,{genesisBytes:Qr(e.genesisBytes,"hex"),genesisDocumentHash:Qr(n,"hex")});let i=fr.encode(e.genesisBytes,e),o=JSON.parse(JSON.stringify(r).replaceAll(rr,i));return new qr(o)}static sidecarData(e={}){let r=new Map;if(e.updates?.length)for(let o of e.updates)r.set(Gn(o,{encoding:"hex"}),o);let n=new Map;if(e.casUpdates?.length)for(let o of e.casUpdates)n.set(Gn(o,{encoding:"hex"}),o);let i=new Map;if(e.smtProofs?.length)for(let o of e.smtProofs)i.set(Qr(Os(o.id,"base64urlnopad"),"hex"),o);return{updateMap:r,casMap:n,smtMap:i}}static confirmDuplicate(e,r){if(!Number.isInteger(e.targetVersionId)||e.targetVersionId<2)throw new ve("Invalid duplicate: targetVersionId must be an integer >= 2",Te,{targetVersionId:e.targetVersionId});let{proof:n,...i}=e,o=Uo(i),s=r[e.targetVersionId-2];if(s===void 0)throw new ve("Invalid duplicate: no applied update in history for targetVersionId",_l,{targetVersionId:e.targetVersionId,historyLength:r.length});if(!wo(s,o))throw new ve("Invalid duplicate: unsigned update hash does not match historical hash",_l,{unsignedUpdateHash:Qr(o,"hex"),historicalHash:Qr(s,"hex")})}static applyUpdate(e,r){let n=Uo(e),i=Os(r.sourceHash,"base64urlnopad");if(!wo(i,n))throw new ve("Hash mismatch: update.sourceHash !== currentDocumentHash",Te,{sourceHash:r.sourceHash,currentDocumentHash:Qr(n,"hex")});if(!iy(r["@context"]))throw new ve("Invalid update: @context is not the array the specification pins for a BTCR2 Update",Te,{context:r["@context"],expected:[..._c]});if(!iy(r.proof?.["@context"],r["@context"]))throw new ve("Invalid update: proof @context does not equal the update @context",Te,{proofContext:r.proof?.["@context"],context:r["@context"]});let o=r.proof?.capability;if(!o)throw new ve("No root capability found in update",Te,r);let s=ot.dereferenceZcapId(o),{invocationTarget:c,controller:a}=s;if(![c,a].every(T=>T===e.id))throw new ve("Invalid root capability",Te,{rootCapability:s,currentDocument:e});let u=r.proof?.verificationMethod;if(!u)throw new ve("No verificationMethod found in update",Te,r);let d=ot.relationshipMethodId(u,e.id);if(!(d!==void 0&&e.capabilityInvocation?.some(T=>ot.relationshipMethodId(T,e.id)===d)))throw new ve("Invalid update: verificationMethod is not authorized for capabilityInvocation",Te,{verificationMethodId:u,capabilityInvocation:e.capabilityInvocation});let h=Ef.getSigningMethod(e,u),p=ds.fromVerificationMethod(h),y=new hu(p),g=ir(r),S=new lu(y).verifyProof(g,"capabilityInvocation");if(!S.verified)throw new ve("Invalid update: proof not verified",Te,S);let _=ra.apply(e,r.patch);qr.validate(_);let A=Uo(_),O=Os(r.targetHash);if(!wo(O,A))throw new ve("Invalid update: update.targetHash !== updatedDocumentHash",Te,{updateTargetHash:O,updatedDocumentHash:A});return _}resolve(){for(;;)switch(this.#r){case"GenesisDocument":{if(this.#c){this.#i=t.external(this.#e,this.#c),this.#c=null,this.#r="BeaconDiscovery";continue}return{status:"action-required",needs:[{kind:"NeedGenesisDocument",genesisHash:Qr(this.#e.genesisBytes,"hex")}]}}case"BeaconDiscovery":{let r=Fr.getBeaconServices(this.#i).filter(n=>{let i=Fr.parseBitcoinAddress(n.serviceEndpoint);return!this.#d.has(i)});if(r.length>0){for(let n of r){let i=Fr.parseBitcoinAddress(n.serviceEndpoint);this.#d.add(i)}return{status:"action-required",needs:[{kind:"NeedBeaconSignals",beaconServices:r}]}}this.#r="BeaconProcess";continue}case"BeaconProcess":{let e=[];for(let[r,n]of this.#l){if(this.#h.has(r.id)||!n.length)continue;let i=this.#x(n);if(!i.length)continue;let s=Ms.establish(r,this.#i.id).processSignals(i,this.#o);s.needs.length>0?e.push(...s.needs):(this.#a.push(...s.updates),this.#h.add(r.id))}if(e.length>0)return{status:"action-required",needs:e};this.#r="ProcessUpdate";continue}case"ProcessUpdate":{let e=this.#i;if(this.#t!==void 0&&this.#s===this.#t){this.#r="Complete";continue}if(this.#a.length===0||e.deactivated){if(this.#t!==void 0)throw new ve(`Version ${this.#t} of the DID does not exist: the history `+(e.deactivated?`ends with the deactivation at version ${this.#s}.`:`ends at version ${this.#s}.`),_v,{versionId:this.#t,currentVersionId:this.#s});this.#r="Complete";continue}this.#a.sort(([o,s],[c,a])=>o.targetVersionId-c.targetVersionId||s.height-a.height);let[r,n]=this.#a.shift();if(r.targetVersionId<=this.#s){t.confirmDuplicate(r,this.#y);continue}if(this.#n!==void 0&&n.mediantime*1e3>this.#n){this.#r="Complete";continue}if(r.targetVersionId!==this.#s+1)throw new ve("Version Id Mismatch: targetVersionId cannot be > currentVersionId + 1",_l,{targetVersionId:r.targetVersionId,currentVersionId:this.#s+1});this.#i=t.applyUpdate(e,r);let i=ks.deleteKeys(r,["proof"]);if(this.#y.push(Uo(i)),this.#s++,this.#g=n.confirmations,this.#f=Oo.toISOStringNonFractional(Oo.blocktimeToTimestamp(n.time)),this.#b()){if(++this.#m>this.#u)throw new ve(`Exceeded the configured maximum of ${this.#u} beacon-discovery rounds. Raise or remove ResolutionOptions.maxDiscoveryRounds to resolve this DID.`,Al,{maxDiscoveryRounds:this.#u,discoveryRounds:this.#m});this.#r="BeaconDiscovery"}continue}case"Complete":return this.#p??={didDocument:this.#i,metadata:{versionId:`${this.#s}`,confirmations:this.#g,...this.#f!==void 0?{updated:this.#f}:{},deactivated:this.#i.deactivated||!1}},{status:"resolved",result:this.#p}}}#b(){return Fr.getBeaconServices(this.#i).some(e=>!this.#d.has(Fr.parseBitcoinAddress(e.serviceEndpoint)))}#x(e){let r=[];for(let n of e){let i=n.blockMetadata,o=i?.confirmations;if(!(!Number.isInteger(o)||o<this.#w)){if(!Number.isFinite(i?.height)||!Number.isFinite(i?.time)||!Number.isFinite(i?.mediantime))throw new ve(`Beacon signal ${n.signalBytes} has ${o} confirmations but no valid block height, block time, or block mediantime.`,Te,{signalBytes:n.signalBytes,confirmations:o,height:i?.height,time:i?.time,mediantime:i?.mediantime});r.push(n)}}return r}provide(e,r){switch(e.kind){case"NeedGenesisDocument":{if(!vf(r))throw new ve("Provided data for NeedGenesisDocument must be a document object.",Te,{kind:e.kind});this.#c=r;break}case"NeedBeaconSignals":{if(!(r instanceof Map))throw new ve("Provided data for NeedBeaconSignals must be a Map of beacon services to signals.",Te,{kind:e.kind});for(let[n,i]of r)this.#l.set(n,i);break}case"NeedCASAnnouncement":{if(!CL(r))throw new ve("Provided data for NeedCASAnnouncement is not a CAS announcement.",Te,{kind:e.kind});let n=Gn(r,{encoding:"hex"});if(n!==e.announcementHash)throw new ve(`CAS announcement hash mismatch: expected ${e.announcementHash}, got ${n}.`,Te,{expected:e.announcementHash,actual:n});this.#o.casMap.set(n,r);break}case"NeedSignedUpdate":{if(!LL(r))throw new ve("Provided data for NeedSignedUpdate is not a signed BTCR2 update.",Te,{kind:e.kind});let n=Gn(r,{encoding:"hex"});if(n!==e.updateHash)throw new ve(`Signed update hash mismatch: expected ${e.updateHash}, got ${n}.`,Te,{expected:e.updateHash,actual:n});this.#o.updateMap.set(n,r);break}case"NeedSMTProof":{if(!PL(r))throw new ve("Provided data for NeedSMTProof is not an SMT proof.",Te,{kind:e.kind});let n=Qr(Os(r.id,"base64urlnopad"),"hex");if(n!==e.smtRootHash)throw new ve(`SMT proof root hash mismatch: expected ${e.smtRootHash}, got ${n}`,Te,{expected:e.smtRootHash,actual:n});this.#o.smtMap.set(e.smtRootHash,r);break}}}};function iB(t){let e=t.capabilityInvocation?.[0];if(e===void 0)throw new qe("Cannot derive aggregation communication key: capabilityInvocation is absent",Le,{id:t.id});let r=ot.absoluteDidUrl(e,t.id),n=typeof e=="string"?r===void 0?void 0:t.verificationMethod?.find(i=>ot.absoluteDidUrl(i.id,t.id)===r):e;if(!n)throw new qe(`Cannot derive aggregation communication key: capabilityInvocation[0] "${e}" does not resolve to a verification method`,Le,{id:t.id,invocation:e});return ds.fromVerificationMethod(n).publicKey}function qL(t,e){try{let r=fr.decode(t);if(r.idType==="KEY")return new dt(r.genesisBytes);if(e?.genesisDocument){let n=lo.external(r,e.genesisDocument);return iB(n)}}catch{}}l();l();l();var dx=class{document={};constructor(e){if(!e.id)throw new qe('Missing required "id" property',Le,e);this.document.id=e.id,this.document.verificationMethod=e.verificationMethod??[],e["@context"]&&(this.document["@context"]=e["@context"])}withAuthentication(e){return e&&(this.document.authentication=e),this}withAssertionMethod(e){return e&&(this.document.assertionMethod=e),this}withCapabilityInvocation(e){return e&&(this.document.capabilityInvocation=e),this}withCapabilityDelegation(e){return e&&(this.document.capabilityDelegation=e),this}withService(e){return e&&(this.document.service=e),this}build(){let e=new qr(this.document);for(let r of Object.keys(e))e[r]===void 0&&delete e[r];return e}};return RB(FL);})();
|
|
4
4
|
/*! Bundled license information:
|
|
5
5
|
|
|
6
6
|
ieee754/index.js:
|