@did-btcr2/method 0.65.1 → 0.66.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/dist/browser.mjs CHANGED
@@ -1,6 +1,6 @@
1
- var pB=Object.create;var oy=Object.defineProperty;var yB=Object.getOwnPropertyDescriptor;var gB=Object.getOwnPropertyNames;var mB=Object.getPrototypeOf,wB=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),If=(t,e)=>{for(var r in e)oy(t,r,{get:e[r],enumerable:!0})},xB=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of gB(e))!wB.call(t,i)&&i!==r&&oy(t,i,{get:()=>e[i],enumerable:!(n=yB(e,i))||n.enumerable});return t};var Kn=(t,e,r)=>(r=t!=null?pB(mB(t)):{},xB(e||!t||!t.__esModule?oy(r,"default",{value:t,enumerable:!0}):r,t));var dx=oe(Bf=>{"use strict";l();Bf.byteLength=vB;Bf.toByteArray=AB;Bf.fromByteArray=IB;var $n=[],Yr=[],EB=typeof Uint8Array<"u"?Uint8Array:Array,sy="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";for(gs=0,ax=sy.length;gs<ax;++gs)$n[gs]=sy[gs],Yr[sy.charCodeAt(gs)]=gs;var gs,ax;Yr[45]=62;Yr[95]=63;function ux(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 vB(t){var e=ux(t),r=e[0],n=e[1];return(r+n)*3/4-n}function SB(t,e,r){return(e+r)*3/4-r}function AB(t){var e,r=ux(t),n=r[0],i=r[1],o=new EB(SB(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 TB(t){return $n[t>>18&63]+$n[t>>12&63]+$n[t>>6&63]+$n[t&63]}function _B(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(TB(n));return i.join("")}function IB(t){for(var e,r=t.length,n=r%3,i=[],o=16383,s=0,c=r-n;s<c;s+=o)i.push(_B(t,s,s+o>c?c:s+o));return n===1?(e=t[r-1],i.push($n[e>>2]+$n[e<<4&63]+"==")):n===2&&(e=(t[r-2]<<8)+t[r-1],i.push($n[e>>10]+$n[e>>4&63]+$n[e<<2&63]+"=")),i.join("")}});var fx=oe(cy=>{l();cy.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)};cy.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 Ir=oe(Oc=>{"use strict";l();var ay=dx(),Uc=fx(),lx=typeof Symbol=="function"&&typeof Symbol.for=="function"?Symbol.for("nodejs.util.inspect.custom"):null;Oc.Buffer=F;Oc.SlowBuffer=kB;Oc.INSPECT_MAX_BYTES=50;var Rf=2147483647;Oc.kMaxLength=Rf;F.TYPED_ARRAY_SUPPORT=BB();!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 BB(){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 bi(t){if(t>Rf)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 ly(t)}return yx(t,e,r)}F.poolSize=8192;function yx(t,e,r){if(typeof t=="string")return UB(t,e);if(ArrayBuffer.isView(t))return OB(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(Hn(t,ArrayBuffer)||t&&Hn(t.buffer,ArrayBuffer)||typeof SharedArrayBuffer<"u"&&(Hn(t,SharedArrayBuffer)||t&&Hn(t.buffer,SharedArrayBuffer)))return dy(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=DB(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 yx(t,e,r)};Object.setPrototypeOf(F.prototype,Uint8Array.prototype);Object.setPrototypeOf(F,Uint8Array);function gx(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 RB(t,e,r){return gx(t),t<=0?bi(t):e!==void 0?typeof r=="string"?bi(t).fill(e,r):bi(t).fill(e):bi(t)}F.alloc=function(t,e,r){return RB(t,e,r)};function ly(t){return gx(t),bi(t<0?0:hy(t)|0)}F.allocUnsafe=function(t){return ly(t)};F.allocUnsafeSlow=function(t){return ly(t)};function UB(t,e){if((typeof e!="string"||e==="")&&(e="utf8"),!F.isEncoding(e))throw new TypeError("Unknown encoding: "+e);var r=mx(t,e)|0,n=bi(r),i=n.write(t,e);return i!==r&&(n=n.slice(0,i)),n}function uy(t){for(var e=t.length<0?0:hy(t.length)|0,r=bi(e),n=0;n<e;n+=1)r[n]=t[n]&255;return r}function OB(t){if(Hn(t,Uint8Array)){var e=new Uint8Array(t);return dy(e.buffer,e.byteOffset,e.byteLength)}return uy(t)}function dy(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 DB(t){if(F.isBuffer(t)){var e=hy(t.length)|0,r=bi(e);return r.length===0||t.copy(r,0,0,e),r}if(t.length!==void 0)return typeof t.length!="number"||py(t.length)?bi(0):uy(t);if(t.type==="Buffer"&&Array.isArray(t.data))return uy(t.data)}function hy(t){if(t>=Rf)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+Rf.toString(16)+" bytes");return t|0}function kB(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(Hn(e,Uint8Array)&&(e=F.from(e,e.offset,e.byteLength)),Hn(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(Hn(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 mx(t,e){if(F.isBuffer(t))return t.length;if(ArrayBuffer.isView(t)||Hn(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 fy(t).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return r*2;case"hex":return r>>>1;case"base64":return Sx(t).length;default:if(i)return n?-1:fy(t).length;e=(""+e).toLowerCase(),i=!0}}F.byteLength=mx;function NB(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 FB(this,e,r);case"utf8":case"utf-8":return bx(this,e,r);case"ascii":return VB(this,e,r);case"latin1":case"binary":return qB(this,e,r);case"base64":return $B(this,e,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return jB(this,e,r);default:if(n)throw new TypeError("Unknown encoding: "+t);t=(t+"").toLowerCase(),n=!0}}F.prototype._isBuffer=!0;function ms(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)ms(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)ms(this,r,r+3),ms(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)ms(this,r,r+7),ms(this,r+1,r+6),ms(this,r+2,r+5),ms(this,r+3,r+4);return this};F.prototype.toString=function(){var e=this.length;return e===0?"":arguments.length===0?bx(this,0,e):NB.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=Oc.INSPECT_MAX_BYTES;return e=this.toString("hex",0,r).replace(/(.{2})/g,"$1 ").trim(),this.length>r&&(e+=" ... "),"<Buffer "+e+">"};lx&&(F.prototype[lx]=F.prototype.inspect);F.prototype.compare=function(e,r,n,i,o){if(Hn(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 wx(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,py(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:hx(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):hx(t,[e],r,n,i);throw new TypeError("val must be string, number or Buffer")}function hx(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 wx(this,e,r,n,!0)};F.prototype.lastIndexOf=function(e,r,n){return wx(this,e,r,n,!1)};function CB(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(py(c))return s;t[r+s]=c}return s}function LB(t,e,r,n){return Uf(fy(e,t.length-r),t,r,n)}function PB(t,e,r,n){return Uf(zB(e),t,r,n)}function MB(t,e,r,n){return Uf(Sx(e),t,r,n)}function KB(t,e,r,n){return Uf(YB(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 CB(this,e,r,n);case"utf8":case"utf-8":return LB(this,e,r,n);case"ascii":case"latin1":case"binary":return PB(this,e,r,n);case"base64":return MB(this,e,r,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return KB(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 $B(t,e,r){return e===0&&r===t.length?ay.fromByteArray(t):ay.fromByteArray(t.slice(e,r))}function bx(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 HB(n)}var px=4096;function HB(t){var e=t.length;if(e<=px)return String.fromCharCode.apply(String,t);for(var r="",n=0;n<e;)r+=String.fromCharCode.apply(String,t.slice(n,n+=px));return r}function VB(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 qB(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 FB(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+=JB[t[o]];return i}function jB(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),Uc.read(this,e,!0,23,4)};F.prototype.readFloatBE=function(e,r){return e=e>>>0,r||Ot(e,4,this.length),Uc.read(this,e,!1,23,4)};F.prototype.readDoubleLE=function(e,r){return e=e>>>0,r||Ot(e,8,this.length),Uc.read(this,e,!0,52,8)};F.prototype.readDoubleBE=function(e,r){return e=e>>>0,r||Ot(e,8,this.length),Uc.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 xx(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 Ex(t,e,r,n,i){return e=+e,r=r>>>0,i||xx(t,e,r,4,34028234663852886e22,-34028234663852886e22),Uc.write(t,e,r,n,23,4),r+4}F.prototype.writeFloatLE=function(e,r,n){return Ex(this,e,r,!0,n)};F.prototype.writeFloatBE=function(e,r,n){return Ex(this,e,r,!1,n)};function vx(t,e,r,n,i){return e=+e,r=r>>>0,i||xx(t,e,r,8,17976931348623157e292,-17976931348623157e292),Uc.write(t,e,r,n,52,8),r+8}F.prototype.writeDoubleLE=function(e,r,n){return vx(this,e,r,!0,n)};F.prototype.writeDoubleBE=function(e,r,n){return vx(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 WB=/[^+/0-9A-Za-z-_]/g;function GB(t){if(t=t.split("=")[0],t=t.trim().replace(WB,""),t.length<2)return"";for(;t.length%4!==0;)t=t+"=";return t}function fy(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 zB(t){for(var e=[],r=0;r<t.length;++r)e.push(t.charCodeAt(r)&255);return e}function YB(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 Sx(t){return ay.toByteArray(GB(t))}function Uf(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 Hn(t,e){return t instanceof e||t!=null&&t.constructor!=null&&t.constructor.name!=null&&t.constructor.name===e.name}function py(t){return t!==t}var JB=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 vi=oe((cP,Ix)=>{l();var lt=Ix.exports={},Vn,qn;function yy(){throw new Error("setTimeout has not been defined")}function gy(){throw new Error("clearTimeout has not been defined")}(function(){try{typeof setTimeout=="function"?Vn=setTimeout:Vn=yy}catch{Vn=yy}try{typeof clearTimeout=="function"?qn=clearTimeout:qn=gy}catch{qn=gy}})();function Ax(t){if(Vn===setTimeout)return setTimeout(t,0);if((Vn===yy||!Vn)&&setTimeout)return Vn=setTimeout,setTimeout(t,0);try{return Vn(t,0)}catch{try{return Vn.call(null,t,0)}catch{return Vn.call(this,t,0)}}}function XB(t){if(qn===clearTimeout)return clearTimeout(t);if((qn===gy||!qn)&&clearTimeout)return qn=clearTimeout,clearTimeout(t);try{return qn(t)}catch{try{return qn.call(null,t)}catch{return qn.call(this,t)}}}var xi=[],Dc=!1,ws,Of=-1;function ZB(){!Dc||!ws||(Dc=!1,ws.length?xi=ws.concat(xi):Of=-1,xi.length&&Tx())}function Tx(){if(!Dc){var t=Ax(ZB);Dc=!0;for(var e=xi.length;e;){for(ws=xi,xi=[];++Of<e;)ws&&ws[Of].run();Of=-1,e=xi.length}ws=null,Dc=!1,XB(t)}}lt.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];xi.push(new _x(t,e)),xi.length===1&&!Dc&&Ax(Tx)};function _x(t,e){this.fun=t,this.array=e}_x.prototype.run=function(){this.fun.apply(null,this.array)};lt.title="browser";lt.browser=!0;lt.env={};lt.argv=[];lt.version="";lt.versions={};function Ei(){}lt.on=Ei;lt.addListener=Ei;lt.once=Ei;lt.off=Ei;lt.removeListener=Ei;lt.removeAllListeners=Ei;lt.emit=Ei;lt.prependListener=Ei;lt.prependOnceListener=Ei;lt.listeners=function(t){return[]};lt.binding=function(t){throw new Error("process.binding is not supported")};lt.cwd=function(){return"/"};lt.chdir=function(t){throw new Error("process.chdir is not supported")};lt.umask=function(){return 0}});var b,w,uP,l=bB(()=>{b=Kn(Ir()),w=Kn(vi()),uP=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 Qv=oe((FH,Zv)=>{l();var p6=typeof performance=="object"&&performance&&typeof performance.now=="function"?performance:Date,Hl=()=>p6.now(),y6=t=>t&&t===Math.floor(t)&&t>0&&isFinite(t),G0=t=>t===1/0||y6(t),z0=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&&!G0(r))throw new TypeError("ttl must be positive integer or Infinity if set");if(!G0(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-Hl());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(Hl()+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(!G0(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-Hl())):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(Hl());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()}};Zv.exports=z0});var g1=oe(y1=>{"use strict";l();y1.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 Sn=oe((pq,m1)=>{"use strict";l();m1.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 ug=oe((gq,w1)=>{"use strict";l();var ag=null;w1.exports=function(){return ag===null&&(ag={textEncoder:new TextEncoder,textDecoder:new TextDecoder}),ag}});var lg=oe(b1=>{"use strict";l();var dg=Sn(),z6=new Set(["buffer","view","utf8"]),fg=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 dg(`Encoding '${this.name}' cannot be transcoded to 'buffer'`,{code:"LEVEL_ENCODING_NOT_SUPPORTED"})}createViewTranscoder(){throw new dg(`Encoding '${this.name}' cannot be transcoded to 'view'`,{code:"LEVEL_ENCODING_NOT_SUPPORTED"})}createUTF8Transcoder(){throw new dg(`Encoding '${this.name}' cannot be transcoded to 'utf8'`,{code:"LEVEL_ENCODING_NOT_SUPPORTED"})}};b1.Encoding=fg});var gg=oe(ql=>{"use strict";l();var{Buffer:pg}=Ir()||{},{Encoding:yg}=lg(),Y6=ug(),sd=class extends yg{constructor(e){super({...e,format:"buffer"})}createViewTranscoder(){return new cd({encode:this.encode,decode:e=>this.decode(pg.from(e.buffer,e.byteOffset,e.byteLength)),name:`${this.name}+view`})}createBufferTranscoder(){return this}},cd=class extends yg{constructor(e){super({...e,format:"view"})}createBufferTranscoder(){return new sd({encode:e=>{let r=this.encode(e);return pg.from(r.buffer,r.byteOffset,r.byteLength)},decode:this.decode,name:`${this.name}+buffer`})}createViewTranscoder(){return this}},hg=class extends yg{constructor(e){super({...e,format:"utf8"})}createBufferTranscoder(){return new sd({encode:e=>pg.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 cd({encode:n=>e.encode(this.encode(n)),decode:n=>this.decode(r.decode(n)),name:`${this.name}+view`})}createUTF8Transcoder(){return this}};ql.BufferFormat=sd;ql.ViewFormat=cd;ql.UTF8Format=hg});var S1=oe(Hs=>{"use strict";l();var{Buffer:Xt}=Ir()||{Buffer:{isBuffer:()=>!1}},{textEncoder:E1,textDecoder:x1}=ug()(),{BufferFormat:ad,ViewFormat:mg,UTF8Format:v1}=gg(),Fl=t=>t;Hs.utf8=new v1({encode:function(t){return Xt.isBuffer(t)?t.toString("utf8"):ArrayBuffer.isView(t)?x1.decode(t):String(t)},decode:Fl,name:"utf8",createViewTranscoder(){return new mg({encode:function(t){return ArrayBuffer.isView(t)?t:E1.encode(t)},decode:function(t){return x1.decode(t)},name:`${this.name}+view`})},createBufferTranscoder(){return new ad({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`})}});Hs.json=new v1({encode:JSON.stringify,decode:JSON.parse,name:"json"});Hs.buffer=new ad({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:Fl,name:"buffer",createViewTranscoder(){return new mg({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`})}});Hs.view=new mg({encode:function(t){return ArrayBuffer.isView(t)?t:E1.encode(t)},decode:Fl,name:"view",createBufferTranscoder(){return new ad({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:Fl,name:`${this.name}+buffer`})}});Hs.hex=new ad({encode:function(t){return Xt.isBuffer(t)?t:Xt.from(String(t),"hex")},decode:function(t){return t.toString("hex")},name:"hex"});Hs.base64=new ad({encode:function(t){return Xt.isBuffer(t)?t:Xt.from(String(t),"base64")},decode:function(t){return t.toString("base64")},name:"base64"})});var _1=oe(T1=>{"use strict";l();var A1=Sn(),Wl=S1(),{Encoding:J6}=lg(),{BufferFormat:X6,ViewFormat:Z6,UTF8Format:Q6}=gg(),ud=Symbol("formats"),jl=Symbol("encodings"),eU=new Set(["buffer","view","utf8"]),wg=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[jl]=new Map,this[ud]=new Set(e);for(let r in Wl)try{this.encoding(r)}catch(n){if(n.code!=="LEVEL_ENCODING_NOT_SUPPORTED")throw n}}encodings(){return Array.from(new Set(this[jl].values()))}encoding(e){let r=this[jl].get(e);if(r===void 0){if(typeof e=="string"&&e!==""){if(r=iU[e],!r)throw new A1(`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[ud].has(i))if(this[ud].has("view"))r=r.createViewTranscoder();else if(this[ud].has("buffer"))r=r.createBufferTranscoder();else if(this[ud].has("utf8"))r=r.createUTF8Transcoder();else throw new A1(`Encoding '${n}' cannot be transcoded`,{code:"LEVEL_ENCODING_NOT_SUPPORTED"});for(let o of[e,n,r.name,r.commonName])this[jl].set(o,r)}return r}};T1.Transcoder=wg;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:Wl.buffer,"utf-8":Wl.utf8},iU={...Wl,...nU},oU=0});var fa=oe((_q,bg)=>{"use strict";l();var da=typeof Reflect=="object"?Reflect:null,I1=da&&typeof da.apply=="function"?da.apply:function(e,r,n){return Function.prototype.apply.call(e,r,n)},Gl;da&&typeof da.ownKeys=="function"?Gl=da.ownKeys:Object.getOwnPropertySymbols?Gl=function(e){return Object.getOwnPropertyNames(e).concat(Object.getOwnPropertySymbols(e))}:Gl=function(e){return Object.getOwnPropertyNames(e)};function sU(t){console&&console.warn&&console.warn(t)}var R1=Number.isNaN||function(e){return e!==e};function Le(){Le.init.call(this)}bg.exports=Le;bg.exports.once=dU;Le.EventEmitter=Le;Le.prototype._events=void 0;Le.prototype._eventsCount=0;Le.prototype._maxListeners=void 0;var B1=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(Le,"defaultMaxListeners",{enumerable:!0,get:function(){return B1},set:function(t){if(typeof t!="number"||t<0||R1(t))throw new RangeError('The value of "defaultMaxListeners" is out of range. It must be a non-negative number. Received '+t+".");B1=t}});Le.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};Le.prototype.setMaxListeners=function(e){if(typeof e!="number"||e<0||R1(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 U1(t){return t._maxListeners===void 0?Le.defaultMaxListeners:t._maxListeners}Le.prototype.getMaxListeners=function(){return U1(this)};Le.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")I1(a,this,r);else for(var u=a.length,d=C1(a,u),n=0;n<u;++n)I1(d[n],this,r);return!0};function O1(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=U1(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}Le.prototype.addListener=function(e,r){return O1(this,e,r,!1)};Le.prototype.on=Le.prototype.addListener;Le.prototype.prependListener=function(e,r){return O1(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 D1(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}Le.prototype.once=function(e,r){return zl(r),this.on(e,D1(this,e,r)),this};Le.prototype.prependOnceListener=function(e,r){return zl(r),this.prependListener(e,D1(this,e,r)),this};Le.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():aU(n,o),n.length===1&&(i[e]=n[0]),i.removeListener!==void 0&&this.emit("removeListener",e,c||r)}return this};Le.prototype.off=Le.prototype.removeListener;Le.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 k1(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):C1(i,i.length)}Le.prototype.listeners=function(e){return k1(this,e,!0)};Le.prototype.rawListeners=function(e){return k1(this,e,!1)};Le.listenerCount=function(t,e){return typeof t.listenerCount=="function"?t.listenerCount(e):N1.call(t,e)};Le.prototype.listenerCount=N1;function N1(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}Le.prototype.eventNames=function(){return this._eventsCount>0?Gl(this._events):[]};function C1(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))}L1(t,e,o,{once:!0}),e!=="error"&&fU(t,i,{once:!0})})}function fU(t,e,r){typeof t.on=="function"&&L1(t,"error",e,r)}function L1(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 M1=oe((Bq,P1)=>{l();P1.exports=typeof queueMicrotask=="function"?queueMicrotask:t=>Promise.resolve().then(t)});var dd=oe(xg=>{"use strict";l();var K1=M1();xg.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};xg.fromPromise=function(t,e){if(e===void 0)return t;t.then(function(r){K1(()=>e(null,r))}).catch(function(r){K1(()=>e(r))})}});var Yl=oe(Eg=>{"use strict";l();Eg.getCallback=function(t,e){return typeof t=="function"?t:e};Eg.getOptions=function(t,e){return typeof t=="object"&&t!==null?t:e!==void 0?e:{}}});var Ho=oe(Ql=>{"use strict";l();var{fromCallback:vg}=dd(),Cr=Sn(),{getOptions:Sg,getCallback:$1}=Yl(),Vs=Symbol("promise"),la=Symbol("callback"),Qn=Symbol("working"),qs=Symbol("handleOne"),Hi=Symbol("handleMany"),Ag=Symbol("autoClose"),Ko=Symbol("finishWork"),ei=Symbol("returnMany"),Lo=Symbol("closing"),fd=Symbol("handleClose"),Jl=Symbol("closed"),ld=Symbol("closeCallbacks"),Mo=Symbol("keyEncoding"),Fs=Symbol("valueEncoding"),Tg=Symbol("abortOnClose"),Xl=Symbol("legacy"),_g=Symbol("keys"),Ig=Symbol("values"),Po=Symbol("limit"),tn=Symbol("count"),Zl=Object.freeze({}),lU=()=>{},H1=!1,hd=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[Jl]=!1,this[ld]=[],this[Qn]=!1,this[Lo]=!1,this[Ag]=!1,this[la]=null,this[qs]=this[qs].bind(this),this[Hi]=this[Hi].bind(this),this[fd]=this[fd].bind(this),this[Mo]=r[Mo],this[Fs]=r[Fs],this[Xl]=n,this[Po]=Number.isInteger(r.limit)&&r.limit>=0?r.limit:1/0,this[tn]=0,this[Tg]=!!r.abortOnClose,this.db=e,this.db.attachResource(this),this.nextTick=e.nextTick}get count(){return this[tn]}get limit(){return this[Po]}next(e){let r;if(e===void 0)r=new Promise((n,i)=>{e=(o,s,c)=>{o?i(o):this[Xl]?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[Lo]?this.nextTick(e,new Cr("Iterator is not open: cannot call next() after close()",{code:"LEVEL_ITERATOR_NOT_OPEN"})):this[Qn]?this.nextTick(e,new Cr("Iterator is busy: cannot call next() until previous call has completed",{code:"LEVEL_ITERATOR_BUSY"})):(this[Qn]=!0,this[la]=e,this[tn]>=this[Po]?this.nextTick(this[qs],null):this._next(this[qs])),r}_next(e){this.nextTick(e)}nextv(e,r,n){return n=$1(r,n),n=vg(n,Vs),r=Sg(r,Zl),Number.isInteger(e)?(this[Lo]?this.nextTick(n,new Cr("Iterator is not open: cannot call nextv() after close()",{code:"LEVEL_ITERATOR_NOT_OPEN"})):this[Qn]?this.nextTick(n,new Cr("Iterator is busy: cannot call nextv() until previous call has completed",{code:"LEVEL_ITERATOR_BUSY"})):(e<1&&(e=1),this[Po]<1/0&&(e=Math.min(e,this[Po]-this[tn])),this[Qn]=!0,this[la]=n,e<=0?this.nextTick(this[Hi],null,[]):this._nextv(e,r,this[Hi])),n[Vs]):(this.nextTick(n,new TypeError("The first argument 'size' must be an integer")),n[Vs])}_nextv(e,r,n){let i=[],o=(s,c,a)=>{if(s)return n(s);if(this[Xl]?c===void 0&&a===void 0:c===void 0)return n(null,i);i.push(this[Xl]?[c,a]:c),i.length===e?n(null,i):this._next(o)};this._next(o)}all(e,r){return r=$1(e,r),r=vg(r,Vs),e=Sg(e,Zl),this[Lo]?this.nextTick(r,new Cr("Iterator is not open: cannot call all() after close()",{code:"LEVEL_ITERATOR_NOT_OPEN"})):this[Qn]?this.nextTick(r,new Cr("Iterator is busy: cannot call all() until previous call has completed",{code:"LEVEL_ITERATOR_BUSY"})):(this[Qn]=!0,this[la]=r,this[Ag]=!0,this[tn]>=this[Po]?this.nextTick(this[Hi],null,[]):this._all(e,this[Hi])),r[Vs]}_all(e,r){let n=this[tn],i=[],o=()=>{let c=this[Po]<1/0?Math.min(1e3,this[Po]-n):1e3;c<=0?this.nextTick(r,null,i):this._nextv(c,Zl,s)},s=(c,a)=>{c?r(c):a.length===0?r(null,i):(i.push.apply(i,a),n+=a.length,o())};o()}[Ko](){let e=this[la];return this[Tg]&&e===null?lU:(this[Qn]=!1,this[la]=null,this[Lo]&&this._close(this[fd]),e)}[ei](e,r,n){this[Ag]?this.close(e.bind(null,r,n)):e(r,n)}seek(e,r){if(r=Sg(r,Zl),!this[Lo]){if(this[Qn])throw new Cr("Iterator is busy: cannot call seek() until next() has completed",{code:"LEVEL_ITERATOR_BUSY"});{let n=this.db.keyEncoding(r.keyEncoding||this[Mo]),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 Cr("Iterator does not support seek()",{code:"LEVEL_NOT_SUPPORTED"})}close(e){return e=vg(e,Vs),this[Jl]?this.nextTick(e):this[Lo]?this[ld].push(e):(this[Lo]=!0,this[ld].push(e),this[Qn]?this[Tg]&&this[Ko]()(new Cr("Aborted on iterator close()",{code:"LEVEL_ITERATOR_NOT_OPEN"})):this._close(this[fd])),e[Vs]}_close(e){this.nextTick(e)}[fd](){this[Jl]=!0,this.db.detachResource(this);let e=this[ld];this[ld]=[];for(let r of e)r()}async*[Symbol.asyncIterator](){try{let e;for(;(e=await this.next())!==void 0;)yield e}finally{this[Jl]||await this.close()}}},ha=class extends hd{constructor(e,r){super(e,r,!0),this[_g]=r.keys!==!1,this[Ig]=r.values!==!1}[qs](e,r,n){let i=this[Ko]();if(e)return i(e);try{r=this[_g]&&r!==void 0?this[Mo].decode(r):void 0,n=this[Ig]&&n!==void 0?this[Fs].decode(n):void 0}catch(o){return i(new $o("entry",o))}r===void 0&&n===void 0||this[tn]++,i(null,r,n)}[Hi](e,r){let n=this[Ko]();if(e)return this[ei](n,e);try{for(let i of r){let o=i[0],s=i[1];i[0]=this[_g]&&o!==void 0?this[Mo].decode(o):void 0,i[1]=this[Ig]&&s!==void 0?this[Fs].decode(s):void 0}}catch(i){return this[ei](n,new $o("entries",i))}this[tn]+=r.length,this[ei](n,null,r)}end(e){return!H1&&typeof console<"u"&&(H1=!0,console.warn(new Cr("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)}},Bg=class extends hd{constructor(e,r){super(e,r,!1)}[qs](e,r){let n=this[Ko]();if(e)return n(e);try{r=r!==void 0?this[Mo].decode(r):void 0}catch(i){return n(new $o("key",i))}r!==void 0&&this[tn]++,n(null,r)}[Hi](e,r){let n=this[Ko]();if(e)return this[ei](n,e);try{for(let i=0;i<r.length;i++){let o=r[i];r[i]=o!==void 0?this[Mo].decode(o):void 0}}catch(i){return this[ei](n,new $o("keys",i))}this[tn]+=r.length,this[ei](n,null,r)}},Rg=class extends hd{constructor(e,r){super(e,r,!1)}[qs](e,r){let n=this[Ko]();if(e)return n(e);try{r=r!==void 0?this[Fs].decode(r):void 0}catch(i){return n(new $o("value",i))}r!==void 0&&this[tn]++,n(null,r)}[Hi](e,r){let n=this[Ko]();if(e)return this[ei](n,e);try{for(let i=0;i<r.length;i++){let o=r[i];r[i]=o!==void 0?this[Fs].decode(o):void 0}}catch(i){return this[ei](n,new $o("values",i))}this[tn]+=r.length,this[ei](n,null,r)}},$o=class extends Cr{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(ha.prototype,t.split(" ")[0],{get(){throw new Cr(`The ${t} has been removed`,{code:"LEVEL_LEGACY"})},set(){throw new Cr(`The ${t} has been removed`,{code:"LEVEL_LEGACY"})}});ha.keyEncoding=Mo;ha.valueEncoding=Fs;Ql.AbstractIterator=ha;Ql.AbstractKeyIterator=Bg;Ql.AbstractValueIterator=Rg});var V1=oe(Ug=>{"use strict";l();var{AbstractKeyIterator:hU,AbstractValueIterator:pU}=Ho(),js=Symbol("iterator"),pd=Symbol("callback"),pa=Symbol("handleOne"),Ws=Symbol("handleMany"),yd=class extends hU{constructor(e,r){super(e,r),this[js]=e.iterator({...r,keys:!0,values:!1}),this[pa]=this[pa].bind(this),this[Ws]=this[Ws].bind(this)}},eh=class extends pU{constructor(e,r){super(e,r),this[js]=e.iterator({...r,keys:!1,values:!0}),this[pa]=this[pa].bind(this),this[Ws]=this[Ws].bind(this)}};for(let t of[yd,eh]){let e=t===yd,r=e?n=>n[0]:n=>n[1];t.prototype._next=function(n){this[pd]=n,this[js].next(this[pa])},t.prototype[pa]=function(n,i,o){let s=this[pd];n?s(n):s(null,e?i:o)},t.prototype._nextv=function(n,i,o){this[pd]=o,this[js].nextv(n,i,this[Ws])},t.prototype._all=function(n,i){this[pd]=i,this[js].all(n,this[Ws])},t.prototype[Ws]=function(n,i){let o=this[pd];n?o(n):o(null,i.map(r))},t.prototype._seek=function(n,i){this[js].seek(n,i)},t.prototype._close=function(n){this[js].close(n)}}Ug.DefaultKeyIterator=yd;Ug.DefaultValueIterator=eh});var q1=oe(sh=>{"use strict";l();var{AbstractIterator:yU,AbstractKeyIterator:gU,AbstractValueIterator:mU}=Ho(),Og=Sn(),gr=Symbol("nut"),ih=Symbol("undefer"),oh=Symbol("factory"),th=class extends yU{constructor(e,r){super(e,r),this[gr]=null,this[oh]=()=>e.iterator(r),this.db.defer(()=>this[ih]())}},rh=class extends gU{constructor(e,r){super(e,r),this[gr]=null,this[oh]=()=>e.keys(r),this.db.defer(()=>this[ih]())}},nh=class extends mU{constructor(e,r){super(e,r),this[gr]=null,this[oh]=()=>e.values(r),this.db.defer(()=>this[ih]())}};for(let t of[th,rh,nh])t.prototype[ih]=function(){this.db.status==="open"&&(this[gr]=this[oh]())},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 Og("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 Og("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 Og("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)};sh.DeferredIterator=th;sh.DeferredKeyIterator=rh;sh.DeferredValueIterator=nh});var kg=oe(j1=>{"use strict";l();var{fromCallback:F1}=dd(),ch=Sn(),{getCallback:wU,getOptions:bU}=Yl(),ah=Symbol("promise"),rn=Symbol("status"),ya=Symbol("operations"),gd=Symbol("finishClose"),ga=Symbol("closeCallbacks"),Dg=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[ya]=[],this[ga]=[],this[rn]="open",this[gd]=this[gd].bind(this),this.db=e,this.db.attachResource(this),this.nextTick=e.nextTick}get length(){return this[ya].length}put(e,r,n){if(this[rn]!=="open")throw new ch("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[ya].push({...s,type:"put",key:e,value:r}),this}_put(e,r,n){}del(e,r){if(this[rn]!=="open")throw new ch("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[ya].push({...o,type:"del",key:e}),this}_del(e,r){}clear(){if(this[rn]!=="open")throw new ch("Batch is not open: cannot call clear() after write() or close()",{code:"LEVEL_BATCH_NOT_OPEN"});return this._clear(),this[ya]=[],this}_clear(){}write(e,r){return r=wU(e,r),r=F1(r,ah),e=bU(e),this[rn]!=="open"?this.nextTick(r,new ch("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[ga].push(()=>r(n)),n||this.db.emit("batch",this[ya]),this._close(this[gd])})),r[ah]}_write(e,r){}close(e){return e=F1(e,ah),this[rn]==="closing"?this[ga].push(e):this[rn]==="closed"?this.nextTick(e):(this[ga].push(e),this[rn]!=="writing"&&(this[rn]="closing",this._close(this[gd]))),e[ah]}_close(e){this.nextTick(e)}[gd](){this[rn]="closed",this.db.detachResource(this);let e=this[ga];this[ga]=[];for(let r of e)r()}};j1.AbstractChainedBatch=Dg});var G1=oe(W1=>{"use strict";l();var{AbstractChainedBatch:xU}=kg(),EU=Sn(),ma=Symbol("encoded"),Ng=class extends xU{constructor(e){super(e),this[ma]=[]}_put(e,r,n){this[ma].push({...n,type:"put",key:e,value:r})}_del(e,r){this[ma].push({...r,type:"del",key:e})}_clear(){this[ma]=[]}_write(e,r){this.db.status==="opening"?this.db.defer(()=>this._write(e,r)):this.db.status==="open"?this[ma].length===0?this.nextTick(r):this.db._batch(this[ma],e,r):this.nextTick(r,new EU("Batch is not open: cannot call write() after write() or close()",{code:"LEVEL_BATCH_NOT_OPEN"}))}};W1.DefaultChainedBatch=Ng});var J1=oe((Fq,Y1)=>{"use strict";l();var z1=Sn(),vU=Object.prototype.hasOwnProperty,SU=new Set(["lt","lte","gt","gte"]);Y1.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 z1(`The legacy range option '${n}' has been removed`,{code:"LEVEL_LEGACY"});if(n==="encoding")throw new z1("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 Cg=oe((Wq,Z1)=>{l();var X1;Z1.exports=typeof queueMicrotask=="function"?queueMicrotask.bind(typeof window<"u"?window:globalThis):t=>(X1||(X1=Promise.resolve())).then(t).catch(e=>setTimeout(()=>{throw e},0))});var t2=oe((zq,e2)=>{"use strict";l();var Q1=Cg();e2.exports=function(t,...e){e.length===0?Q1(t):Q1(()=>t(...e))}});var r2=oe(uh=>{"use strict";l();var{AbstractIterator:AU,AbstractKeyIterator:TU,AbstractValueIterator:_U}=Ho(),wa=Symbol("unfix"),An=Symbol("iterator"),Gs=Symbol("handleOne"),Vo=Symbol("handleMany"),Vi=Symbol("callback"),md=class extends AU{constructor(e,r,n,i){super(e,r),this[An]=n,this[wa]=i,this[Gs]=this[Gs].bind(this),this[Vo]=this[Vo].bind(this),this[Vi]=null}[Gs](e,r,n){let i=this[Vi];if(e)return i(e);r!==void 0&&(r=this[wa](r)),i(e,r,n)}[Vo](e,r){let n=this[Vi];if(e)return n(e);for(let i of r){let o=i[0];o!==void 0&&(i[0]=this[wa](o))}n(e,r)}},wd=class extends TU{constructor(e,r,n,i){super(e,r),this[An]=n,this[wa]=i,this[Gs]=this[Gs].bind(this),this[Vo]=this[Vo].bind(this),this[Vi]=null}[Gs](e,r){let n=this[Vi];if(e)return n(e);r!==void 0&&(r=this[wa](r)),n(e,r)}[Vo](e,r){let n=this[Vi];if(e)return n(e);for(let i=0;i<r.length;i++){let o=r[i];o!==void 0&&(r[i]=this[wa](o))}n(e,r)}},bd=class extends _U{constructor(e,r,n){super(e,r),this[An]=n}};for(let t of[md,wd])t.prototype._next=function(e){this[Vi]=e,this[An].next(this[Gs])},t.prototype._nextv=function(e,r,n){this[Vi]=n,this[An].nextv(e,r,this[Vo])},t.prototype._all=function(e,r){this[Vi]=r,this[An].all(e,this[Vo])};for(let t of[bd])t.prototype._next=function(e){this[An].next(e)},t.prototype._nextv=function(e,r,n){this[An].nextv(e,r,n)},t.prototype._all=function(e,r){this[An].all(e,r)};for(let t of[md,wd,bd])t.prototype._seek=function(e,r){this[An].seek(e,r)},t.prototype._close=function(e){this[An].close(e)};uh.AbstractSublevelIterator=md;uh.AbstractSublevelKeyIterator=wd;uh.AbstractSublevelValueIterator=bd});var s2=oe((Zq,o2)=>{"use strict";l();var Lg=Sn(),{Buffer:Kg}=Ir()||{},{AbstractSublevelIterator:IU,AbstractSublevelKeyIterator:BU,AbstractSublevelValueIterator:RU}=r2(),qi=Symbol("prefix"),n2=Symbol("upperBound"),xd=Symbol("prefixRange"),Lr=Symbol("parent"),Pg=Symbol("unfix"),i2=new TextEncoder,UU={separator:"!"};o2.exports=function({AbstractLevel:t}){class e extends t{static defaults(n){if(typeof n=="string")throw new Lg("The subleveldown string shorthand for { separator } has been removed",{code:"LEVEL_LEGACY"});if(n&&n.open)throw new Lg("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[Lr]||n;if(!i2.encode(i).every(p=>p>u&&p<127))throw new Lg(`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[Lr]=d,this[qi]=new dh(f),this[n2]=new dh(h),this[Pg]=new $g,this.nextTick=d.nextTick}prefixKey(n,i){if(i==="utf8")return this[qi].utf8+n;if(n.byteLength===0)return this[qi][i];if(i==="view"){let o=this[qi].view,s=new Uint8Array(o.byteLength+n.byteLength);return s.set(o,0),s.set(n,o.byteLength),s}else{let o=this[qi].buffer;return Kg.concat([o,n],o.byteLength+n.byteLength)}}[xd](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[qi][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[n2][i]}get prefix(){return this[qi].utf8}get db(){return this[Lr]}_open(n,i){this[Lr].open({passive:!0},i)}_put(n,i,o,s){this[Lr].put(n,i,o,s)}_get(n,i,o){this[Lr].get(n,i,o)}_getMany(n,i,o){this[Lr].getMany(n,i,o)}_del(n,i,o){this[Lr].del(n,i,o)}_batch(n,i,o){this[Lr].batch(n,i,o)}_clear(n,i){this[xd](n,n.keyEncoding),this[Lr].clear(n,i)}_iterator(n){this[xd](n,n.keyEncoding);let i=this[Lr].iterator(n),o=this[Pg].get(this[qi].utf8.length,n.keyEncoding);return new IU(this,n,i,o)}_keys(n){this[xd](n,n.keyEncoding);let i=this[Lr].keys(n),o=this[Pg].get(this[qi].utf8.length,n.keyEncoding);return new BU(this,n,i,o)}_values(n){this[xd](n,n.keyEncoding);let i=this[Lr].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:Mg(t,"utf8"),buffer:Mg(t,"buffer"),view:Mg(t,"view")}}},Mg=function(t,e){return t.supports.encodings[e]?t.keyEncoding(e).name===e:!1},dh=class{constructor(e){this.utf8=e,this.view=i2.encode(e),this.buffer=Kg?Kg.from(this.view.buffer,0,this.view.byteLength):{}}},$g=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 jg=oe(Fg=>{"use strict";l();var{supports:kU}=g1(),{Transcoder:NU}=_1(),{EventEmitter:CU}=fa(),{fromCallback:qo}=dd(),Tn=Sn(),{AbstractIterator:zs}=Ho(),{DefaultKeyIterator:LU,DefaultValueIterator:PU}=V1(),{DeferredIterator:MU,DeferredKeyIterator:KU,DeferredValueIterator:$U}=q1(),{DefaultChainedBatch:c2}=G1(),{getCallback:Ys,getOptions:Fo}=Yl(),fh=J1(),ge=Symbol("promise"),Fi=Symbol("landed"),Js=Symbol("resources"),Hg=Symbol("closeResources"),Ed=Symbol("operations"),vd=Symbol("undefer"),lh=Symbol("deferOpen"),a2=Symbol("options"),Ee=Symbol("status"),Xs=Symbol("defaultOptions"),ba=Symbol("transcoder"),hh=Symbol("keyEncoding"),Vg=Symbol("valueEncoding"),HU=()=>{},Sd=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=Fo(r);let{keyEncoding:n,valueEncoding:i,passive:o,...s}=r;this[Js]=new Set,this[Ed]=[],this[lh]=!0,this[a2]=s,this[Ee]="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[ba]=new NU(VU(this)),this[hh]=this[ba].encoding(n||"utf8"),this[Vg]=this[ba].encoding(i||"utf8");for(let c of this[ba].encodings())this.supports.encodings[c.commonName]||(this.supports.encodings[c.commonName]=!0);this[Xs]={empty:Object.freeze({}),entry:Object.freeze({keyEncoding:this[hh].commonName,valueEncoding:this[Vg].commonName}),key:Object.freeze({keyEncoding:this[hh].commonName})},this.nextTick(()=>{this[lh]&&this.open({passive:!1},HU)})}get status(){return this[Ee]}keyEncoding(e){return this[ba].encoding(e??this[hh])}valueEncoding(e){return this[ba].encoding(e??this[Vg])}open(e,r){r=Ys(e,r),r=qo(r,ge),e={...this[a2],...Fo(e)},e.createIfMissing=e.createIfMissing!==!1,e.errorIfExists=!!e.errorIfExists;let n=i=>{this[Ee]==="closing"||this[Ee]==="opening"?this.once(Fi,i?()=>n(i):n):this[Ee]!=="open"?r(new Tn("Database is not open",{code:"LEVEL_DATABASE_NOT_OPEN",cause:i})):r()};return e.passive?this[Ee]==="opening"?this.once(Fi,n):this.nextTick(n):this[Ee]==="closed"||this[lh]?(this[lh]=!1,this[Ee]="opening",this.emit("opening"),this._open(e,i=>{if(i){this[Ee]="closed",this[Hg](()=>{this.emit(Fi),n(i)}),this[vd]();return}this[Ee]="open",this[vd](),this.emit(Fi),this[Ee]==="open"&&this.emit("open"),this[Ee]==="open"&&this.emit("ready"),n()})):this[Ee]==="open"?this.nextTick(n):this.once(Fi,()=>this.open(e,r)),r[ge]}_open(e,r){this.nextTick(r)}close(e){e=qo(e,ge);let r=n=>{this[Ee]==="opening"||this[Ee]==="closing"?this.once(Fi,n?r(n):r):this[Ee]!=="closed"?e(new Tn("Database is not closed",{code:"LEVEL_DATABASE_NOT_CLOSED",cause:n})):e()};if(this[Ee]==="open"){this[Ee]="closing",this.emit("closing");let n=i=>{this[Ee]="open",this[vd](),this.emit(Fi),r(i)};this[Hg](()=>{this._close(i=>{if(i)return n(i);this[Ee]="closed",this[vd](),this.emit(Fi),this[Ee]==="closed"&&this.emit("closed"),r()})})}else this[Ee]==="closed"?this.nextTick(r):this.once(Fi,()=>this.close(e));return e[ge]}[Hg](e){if(this[Js].size===0)return this.nextTick(e);let r=this[Js].size,n=!0,i=()=>{--r===0&&(n?this.nextTick(e):e())};for(let o of this[Js])o.close(i);n=!1,this[Js].clear()}_close(e){this.nextTick(e)}get(e,r,n){if(n=Ys(r,n),n=qo(n,ge),r=Fo(r,this[Xs].entry),this[Ee]==="opening")return this.defer(()=>this.get(e,r,n)),n[ge];if(xa(this,n))return n[ge];let i=this._checkKey(e);if(i)return this.nextTick(n,i),n[ge];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 Tn("Could not decode value",{code:"LEVEL_DECODE_ERROR",cause:f}))}n(null,d)}),n[ge]}_get(e,r,n){this.nextTick(n,new Error("NotFound"))}getMany(e,r,n){if(n=Ys(r,n),n=qo(n,ge),r=Fo(r,this[Xs].entry),this[Ee]==="opening")return this.defer(()=>this.getMany(e,r,n)),n[ge];if(xa(this,n))return n[ge];if(!Array.isArray(e))return this.nextTick(n,new TypeError("The first argument 'keys' must be an array")),n[ge];if(e.length===0)return this.nextTick(n,null,[]),n[ge];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[ge];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 Tn(`Could not decode one or more of ${d.length} value(s)`,{code:"LEVEL_DECODE_ERROR",cause:f}))}n(null,d)}),n[ge]}_getMany(e,r,n){this.nextTick(n,null,new Array(e.length).fill(void 0))}put(e,r,n,i){if(i=Ys(n,i),i=qo(i,ge),n=Fo(n,this[Xs].entry),this[Ee]==="opening")return this.defer(()=>this.put(e,r,n,i)),i[ge];if(xa(this,i))return i[ge];let o=this._checkKey(e)||this._checkValue(r);if(o)return this.nextTick(i,o),i[ge];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[ge]}_put(e,r,n,i){this.nextTick(i)}del(e,r,n){if(n=Ys(r,n),n=qo(n,ge),r=Fo(r,this[Xs].key),this[Ee]==="opening")return this.defer(()=>this.del(e,r,n)),n[ge];if(xa(this,n))return n[ge];let i=this._checkKey(e);if(i)return this.nextTick(n,i),n[ge];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[ge]}_del(e,r,n){this.nextTick(n)}batch(e,r,n){if(!arguments.length){if(this[Ee]==="opening")return new c2(this);if(this[Ee]!=="open")throw new Tn("Database is not open",{code:"LEVEL_DATABASE_NOT_OPEN"});return this._chainedBatch()}if(typeof e=="function"?n=e:n=Ys(r,n),n=qo(n,ge),r=Fo(r,this[Xs].empty),this[Ee]==="opening")return this.defer(()=>this.batch(e,r,n)),n[ge];if(xa(this,n))return n[ge];if(!Array.isArray(e))return this.nextTick(n,new TypeError("The first argument 'operations' must be an array")),n[ge];if(e.length===0)return this.nextTick(n),n[ge];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[ge];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[ge];let d=this._checkKey(u.key);if(d)return this.nextTick(n,d),n[ge];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[ge];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[ge]}_batch(e,r,n){this.nextTick(n)}sublevel(e,r){return this._sublevel(e,qg.defaults(r))}_sublevel(e,r){return new qg(this,e,r)}prefixKey(e,r){return e}clear(e,r){if(r=Ys(e,r),r=qo(r,ge),e=Fo(e,this[Xs].empty),this[Ee]==="opening")return this.defer(()=>this.clear(e,r)),r[ge];if(xa(this,r))return r[ge];let n=e,i=this.keyEncoding(e.keyEncoding);return e=fh(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[ge]}_clear(e,r){this.nextTick(r)}iterator(e){let r=this.keyEncoding(e&&e.keyEncoding),n=this.valueEncoding(e&&e.valueEncoding);if(e=fh(e,r),e.keys=e.keys!==!1,e.values=e.values!==!1,e[zs.keyEncoding]=r,e[zs.valueEncoding]=n,e.keyEncoding=r.format,e.valueEncoding=n.format,this[Ee]==="opening")return new MU(this,e);if(this[Ee]!=="open")throw new Tn("Database is not open",{code:"LEVEL_DATABASE_NOT_OPEN"});return this._iterator(e)}_iterator(e){return new zs(this,e)}keys(e){let r=this.keyEncoding(e&&e.keyEncoding),n=this.valueEncoding(e&&e.valueEncoding);if(e=fh(e,r),e[zs.keyEncoding]=r,e[zs.valueEncoding]=n,e.keyEncoding=r.format,e.valueEncoding=n.format,this[Ee]==="opening")return new KU(this,e);if(this[Ee]!=="open")throw new Tn("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=fh(e,r),e[zs.keyEncoding]=r,e[zs.valueEncoding]=n,e.keyEncoding=r.format,e.valueEncoding=n.format,this[Ee]==="opening")return new $U(this,e);if(this[Ee]!=="open")throw new Tn("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[Ed].push(e)}[vd](){if(this[Ed].length===0)return;let e=this[Ed];this[Ed]=[];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[Js].add(e)}detachResource(e){this[Js].delete(e)}_chainedBatch(){return new c2(this)}_checkKey(e){if(e==null)return new Tn("Key cannot be null or undefined",{code:"LEVEL_INVALID_KEY"})}_checkValue(e){if(e==null)return new Tn("Value cannot be null or undefined",{code:"LEVEL_INVALID_VALUE"})}};Sd.prototype.nextTick=t2();var{AbstractSublevel:qg}=s2()({AbstractLevel:Sd});Fg.AbstractLevel=Sd;Fg.AbstractSublevel=qg;var xa=function(t,e){return t[Ee]!=="open"?(t.nextTick(e,new Tn("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 Wg=oe(Zs=>{"use strict";l();Zs.AbstractLevel=jg().AbstractLevel;Zs.AbstractSublevel=jg().AbstractSublevel;Zs.AbstractIterator=Ho().AbstractIterator;Zs.AbstractKeyIterator=Ho().AbstractKeyIterator;Zs.AbstractValueIterator=Ho().AbstractValueIterator;Zs.AbstractChainedBatch=kg().AbstractChainedBatch});var d2=oe((iF,u2)=>{l();u2.exports=FU;var qU=Cg();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 Gg=oe((sF,f2)=>{"use strict";l();f2.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 zg=oe((aF,l2)=>{"use strict";l();var jU=new TextEncoder;l2.exports=function(t){return t instanceof Uint8Array?t:t instanceof ArrayBuffer?new Uint8Array(t):jU.encode(t)}});var m2=oe(g2=>{"use strict";l();var{AbstractIterator:WU}=Wg(),h2=Gg(),ph=zg(),ti=Symbol("cache"),ji=Symbol("finished"),Pr=Symbol("options"),Wi=Symbol("currentOptions"),Qs=Symbol("position"),Yg=Symbol("location"),Ea=Symbol("first"),p2={},Jg=class extends WU{constructor(e,r,n){super(e,n),this[ti]=[],this[ji]=this.limit===0,this[Pr]=n,this[Wi]={...n},this[Qs]=void 0,this[Yg]=r,this[Ea]=!0}_nextv(e,r,n){if(this[Ea]=!1,this[ji])return this.nextTick(n,null,[]);if(this[ti].length>0)return e=Math.min(e,this[ti].length),this.nextTick(n,null,this[ti].splice(0,e));this[Qs]!==void 0&&(this[Pr].reverse?(this[Wi].lt=this[Qs],this[Wi].lte=void 0):(this[Wi].gt=this[Qs],this[Wi].gte=void 0));let i;try{i=h2(this[Wi])}catch{return this[ji]=!0,this.nextTick(n,null,[])}let o=this.db.db.transaction([this[Yg]],"readonly"),s=o.objectStore(this[Yg]),c=[];if(this[Pr].reverse){let a=!this[Pr].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[Qs]=f,c.push([this[Pr].keys&&f!==void 0?ph(f):void 0,this[Pr].values&&h!==void 0?ph(h):void 0]),c.length<e?d.continue():y2(o)}else this[ji]=!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[ji]=!0:this[Qs]=a[f-1],c.length=f;for(let h=0;h<f;h++){let p=a[h],g=u[h];c[h]=[this[Pr].keys&&p!==void 0?ph(p):void 0,this[Pr].values&&g!==void 0?ph(g):void 0]}y2(o)};this[Pr].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[Pr].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[ti].length>0){let[r,n]=this[ti].shift();this.nextTick(e,null,r,n)}else if(this[ji])this.nextTick(e);else{let r=Math.min(100,this.limit-this.count);this[Ea]&&(this[Ea]=!1,r=1),this._nextv(r,p2,(n,i)=>{if(n)return e(n);this[ti]=i,this._next(e)})}}_all(e,r){this[Ea]=!1;let n=this[ti].splice(0,this[ti].length),i=this.limit-this.count-n.length;if(i<=0)return this.nextTick(r,null,n);this._nextv(i,p2,(o,s)=>{if(o)return r(o);n.length>0&&(s=n.concat(s)),r(null,s)})}_seek(e,r){this[Ea]=!0,this[ti]=[],this[ji]=!1,this[Qs]=void 0,this[Wi]={...this[Pr]};let n;try{n=h2(this[Pr])}catch{this[ji]=!0;return}n!==null&&!n.includes(e)?this[ji]=!0:this[Pr].reverse?this[Wi].lte=e:this[Wi].gte=e}};g2.Iterator=Jg;function y2(t){typeof t.commit=="function"&&t.commit()}});var b2=oe((lF,w2)=>{"use strict";l();w2.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 T2=oe(A2=>{"use strict";l();var{AbstractLevel:GU}=Wg(),x2=Sn(),zU=d2(),{fromCallback:YU}=dd(),{Iterator:JU}=m2(),E2=zg(),XU=b2(),ZU=Gg(),S2="level-js-",Ad=Symbol("idb"),Xg=Symbol("namePrefix"),Gi=Symbol("location"),Zg=Symbol("version"),ec=Symbol("store"),Td=Symbol("onComplete"),v2=Symbol("promise"),yh=class extends GU{constructor(e,r,n){if(typeof r=="function"||typeof n=="function")throw new x2("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[Gi]=e,this[Xg]=i??S2,this[Zg]=parseInt(o||1,10),this[Ad]=null}get location(){return this[Gi]}get namePrefix(){return this[Xg]}get version(){return this[Zg]}get db(){return this[Ad]}get type(){return"browser-level"}_open(e,r){let n=indexedDB.open(this[Xg]+this[Gi],this[Zg]);n.onerror=function(){r(n.error||new Error("unknown error"))},n.onsuccess=()=>{this[Ad]=n.result,r()},n.onupgradeneeded=i=>{let o=i.target.result;o.objectStoreNames.contains(this[Gi])||o.createObjectStore(this[Gi])}}[ec](e){return this[Ad].transaction([this[Gi]],e).objectStore(this[Gi])}[Td](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[ec]("readonly"),o;try{o=i.get(e)}catch(s){return this.nextTick(n,s)}this[Td](o,function(s,c){if(s)return n(s);if(c===void 0)return n(new x2("Entry not found",{code:"LEVEL_NOT_FOUND"}));n(null,E2(c))})}_getMany(e,r,n){let i=this[ec]("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:E2(u))},a.onerror=u=>{u.stopPropagation(),c(a.error)}});zU(o,16,n)}_del(e,r,n){let i=this[ec]("readwrite"),o;try{o=i.delete(e)}catch(s){return this.nextTick(n,s)}this[Td](o,n)}_put(e,r,n,i){let o=this[ec]("readwrite"),s;try{s=o.put(r,e)}catch(c){return this.nextTick(i,c)}this[Td](s,i)}_iterator(e){return new JU(this,this[Gi],e)}_batch(e,r,n){let i=this[ec]("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[Gi],n,e,r);try{let o=this[ec]("readwrite");i=n?o.delete(n):o.clear()}catch(o){return this.nextTick(r,o)}this[Td](i,r)}_close(e){this[Ad].close(),this.nextTick(e)}};yh.destroy=function(t,e,r){typeof e=="function"&&(r=e,e=S2),r=YU(r,v2);let n=indexedDB.deleteDatabase(e+t);return n.onsuccess=function(){r()},n.onerror=function(i){r(i)},r[v2]};A2.BrowserLevel=yh});var Qg=oe(_2=>{l();_2.Level=T2().BrowserLevel});var it=oe((SF,I2)=>{"use strict";l();I2.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 va=oe((TF,mh)=>{"use strict";l();var{AbortController:B2,AbortSignal:eO}=typeof self<"u"?self:typeof window<"u"?window:void 0;mh.exports=B2;mh.exports.AbortSignal=eO;mh.exports.default=B2});var Zt=oe((IF,tm)=>{"use strict";l();var tO=Ir(),{kResistStopPropagation:rO,SymbolDispose:nO}=it(),iO=globalThis.AbortSignal||va().AbortSignal,oO=globalThis.AbortController||va().AbortController,sO=Object.getPrototypeOf(async function(){}).constructor,R2=globalThis.Blob||tO.Blob,cO=typeof R2<"u"?function(e){return e instanceof R2}:function(e){return!1},U2=(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)},em=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}};tm.exports={AggregateError:em,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:fa().addAbortListener||function(e,r){if(e===void 0)throw new ERR_INVALID_ARG_TYPE("signal","AbortSignal",e);U2(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=>{U2(i,"signals"),i.addEventListener("abort",n,{once:!0})}),r.signal.addEventListener("abort",()=>{e.forEach(i=>i.removeEventListener("abort",n))},{once:!0}),r.signal}};tm.exports.promisify.custom=Symbol.for("nodejs.util.promisify.custom")});var or=oe((RF,k2)=>{"use strict";l();var{format:uO,inspect:wh,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_",bh={};function rc(t,e){if(!t)throw new bh.ERR_INTERNAL_ASSERTION(e)}function O2(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 rc(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 rc(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 Ht(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,bh[t]=n}function D2(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 rm=class extends Error{constructor(e="The operation was aborted",r=void 0){if(r!==void 0&&typeof r!="object")throw new bh.ERR_INVALID_ARG_TYPE("options","Object",r);super(e,r),this.code="ABORT_ERR",this.name="AbortError"}};Ht("ERR_ASSERTION","%s",Error);Ht("ERR_INVALID_ARG_TYPE",(t,e,r)=>{rc(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)rc(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):(rc(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=wh(r,{depth:-1});n+=`. Received ${a}`}}else{let a=wh(r,{colors:!1});a.length>25&&(a=`${a.slice(0,25)}...`),n+=`. Received type ${typeof r} (${a})`}return n},TypeError);Ht("ERR_INVALID_ARG_VALUE",(t,e,r="is invalid")=>{let n=wh(e);return n.length>128&&(n=n.slice(0,128)+"..."),`The ${t.includes(".")?"property":"argument"} '${t}' ${r}. Received ${n}`},TypeError);Ht("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);Ht("ERR_MISSING_ARGS",(...t)=>{rc(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);Ht("ERR_OUT_OF_RANGE",(t,e,r)=>{rc(e,'Missing "range" argument');let n;return Number.isInteger(r)&&Math.abs(r)>2**32?n=O2(String(r)):typeof r=="bigint"?(n=String(r),(r>2n**32n||r<-(2n**32n))&&(n=O2(n)),n+="n"):n=wh(r),`The value of "${t}" is out of range. It must be ${e}. Received ${n}`},RangeError);Ht("ERR_MULTIPLE_CALLBACK","Callback called multiple times",Error);Ht("ERR_METHOD_NOT_IMPLEMENTED","The %s method is not implemented",Error);Ht("ERR_STREAM_ALREADY_FINISHED","Cannot call %s after a stream was finished",Error);Ht("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable",Error);Ht("ERR_STREAM_DESTROYED","Cannot call %s after a stream was destroyed",Error);Ht("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError);Ht("ERR_STREAM_PREMATURE_CLOSE","Premature close",Error);Ht("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF",Error);Ht("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event",Error);Ht("ERR_STREAM_WRITE_AFTER_END","write after end",Error);Ht("ERR_UNKNOWN_ENCODING","Unknown encoding: %s",TypeError);k2.exports={AbortError:rm,aggregateTwoErrors:D2(mO),hideStackFrames:D2,codes:bh}});var Aa=oe((OF,q2)=>{"use strict";l();var{ArrayIsArray:im,ArrayPrototypeIncludes:P2,ArrayPrototypeJoin:M2,ArrayPrototypeMap:wO,NumberIsInteger:om,NumberIsNaN:bO,NumberMAX_SAFE_INTEGER:xO,NumberMIN_SAFE_INTEGER:EO,NumberParseInt:vO,ObjectPrototypeHasOwnProperty:SO,RegExpPrototypeExec:K2,String:AO,StringPrototypeToUpperCase:TO,StringPrototypeTrim:_O}=it(),{hideStackFrames:nn,codes:{ERR_SOCKET_BAD_PORT:IO,ERR_INVALID_ARG_TYPE:Qt,ERR_INVALID_ARG_VALUE:Sa,ERR_OUT_OF_RANGE:nc,ERR_UNKNOWN_SIGNAL:N2}}=or(),{normalizeEncoding:BO}=Zt(),{isAsyncFunction:RO,isArrayBufferView:UO}=Zt().types,C2={};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(K2(kO,t)===null)throw new Sa(e,t,NO);t=vO(t,8)}return $2(t,e),t}var LO=nn((t,e,r=EO,n=xO)=>{if(typeof t!="number")throw new Qt(e,"number",t);if(!om(t))throw new nc(e,"an integer",t);if(t<r||t>n)throw new nc(e,`>= ${r} && <= ${n}`,t)}),PO=nn((t,e,r=-2147483648,n=2147483647)=>{if(typeof t!="number")throw new Qt(e,"number",t);if(!om(t))throw new nc(e,"an integer",t);if(t<r||t>n)throw new nc(e,`>= ${r} && <= ${n}`,t)}),$2=nn((t,e,r=!1)=>{if(typeof t!="number")throw new Qt(e,"number",t);if(!om(t))throw new nc(e,"an integer",t);let n=r?1:0,i=4294967295;if(t<n||t>i)throw new nc(e,`>= ${n} && <= ${i}`,t)});function sm(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 nc(e,`${r!=null?`>= ${r}`:""}${r!=null&&n!=null?" && ":""}${n!=null?`<= ${n}`:""}`,t)}var KO=nn((t,e,r)=>{if(!P2(r,t)){let i="must be one of: "+M2(wO(r,o=>typeof o=="string"?`'${o}'`:AO(o)),", ");throw new Sa(e,t,i)}});function H2(t,e){if(typeof t!="boolean")throw new Qt(e,"boolean",t)}function nm(t,e,r){return t==null||!SO(t,e)?r:t[e]}var $O=nn((t,e,r=null)=>{let n=nm(r,"allowArray",!1),i=nm(r,"allowFunction",!1);if(!nm(r,"nullable",!1)&&t===null||!n&&im(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)}),xh=nn((t,e,r=0)=>{if(!im(t))throw new Qt(e,"Array",t);if(t.length<r){let n=`must be longer than ${r}`;throw new Sa(e,t,n)}});function VO(t,e){xh(t,e);for(let r=0;r<t.length;r++)sm(t[r],`${e}[${r}]`)}function qO(t,e){xh(t,e);for(let r=0;r<t.length;r++)H2(t[r],`${e}[${r}]`)}function FO(t,e){xh(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);V2(n,i)}}function jO(t,e="signal"){if(sm(t,e),C2[t]===void 0)throw C2[TO(t)]!==void 0?new N2(t+" (signals must use all capital letters)"):new N2(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 Sa("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 V2=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(!P2(r,t))throw new Qt(e,`('${M2(r,"|")}')`,t)}var QO=/^(?:<[^>]*>)(?:\s*;\s*[^;"\s]+(?:=(")?[^;"\s]*\1)?)*$/;function L2(t,e){if(typeof t>"u"||!K2(QO,t))throw new Sa(e,t,'must be an array or string of format "</styles.css>; rel=preload; as=style"')}function e5(t){if(typeof t=="string")return L2(t,"hints"),t;if(im(t)){let e=t.length,r="";if(e===0)return r;for(let n=0;n<e;n++){let i=t[n];L2(i,"hints"),r+=i,n!==e-1&&(r+=", ")}return r}throw new Sa("hints",t,'must be an array or string of format "</styles.css>; rel=preload; as=style"')}q2.exports={isInt32:OO,isUint32:DO,parseFileMode:CO,validateArray:xh,validateStringArray:VO,validateBooleanArray:qO,validateAbortSignalArray:FO,validateBoolean:H2,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:sm,validateUint32:$2,validateUndefined:XO,validateUnion:ZO,validateAbortSignal:V2,validateLinkHeaderValue:e5}});var ni=oe((kF,iS)=>{"use strict";l();var{SymbolAsyncIterator:F2,SymbolIterator:j2,SymbolFor:ic}=it(),W2=ic("nodejs.stream.destroyed"),G2=ic("nodejs.stream.errored"),cm=ic("nodejs.stream.readable"),am=ic("nodejs.stream.writable"),z2=ic("nodejs.stream.disturbed"),t5=ic("nodejs.webstream.isClosedPromise"),r5=ic("nodejs.webstream.controllerErrorFunction");function Eh(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 vh(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 ri(t){return t&&(t._readableState||t._writableState||typeof t.write=="function"&&typeof t.on=="function"||typeof t.pipe=="function"&&typeof t.on=="function")}function Y2(t){return!!(t&&!ri(t)&&typeof t.pipeThrough=="function"&&typeof t.getReader=="function"&&typeof t.cancel=="function")}function J2(t){return!!(t&&!ri(t)&&typeof t.getWriter=="function"&&typeof t.abort=="function")}function X2(t){return!!(t&&!ri(t)&&typeof t.readable=="object"&&typeof t.writable=="object")}function i5(t){return Y2(t)||J2(t)||X2(t)}function o5(t,e){return t==null?!1:e===!0?typeof t[F2]=="function":e===!1?typeof t[j2]=="function":typeof t[F2]=="function"||typeof t[j2]=="function"}function Sh(t){if(!ri(t))return null;let e=t._writableState,r=t._readableState,n=e||r;return!!(t.destroyed||t[W2]||n!=null&&n.destroyed)}function Z2(t){if(!vh(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(!vh(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(!Eh(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 Q2(t,e){if(!Eh(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 eS(t){return t&&t[cm]!=null?t[cm]:typeof t?.readable!="boolean"?null:Sh(t)?!1:Eh(t)&&t.readable&&!Q2(t)}function tS(t){return t&&t[am]!=null?t[am]:typeof t?.writable!="boolean"?null:Sh(t)?!1:vh(t)&&t.writable&&!Z2(t)}function a5(t,e){return ri(t)?Sh(t)?!0:!(e?.readable!==!1&&eS(t)||e?.writable!==!1&&tS(t)):null}function u5(t){var e,r;return ri(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 ri(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(!ri(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"&&rS(t)?t._closed:null}function rS(t){return typeof t._closed=="boolean"&&typeof t._defaultKeepAlive=="boolean"&&typeof t._removedConnection=="boolean"&&typeof t._removedContLen=="boolean"}function nS(t){return typeof t._sent100=="boolean"&&rS(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(!ri(t))return null;let e=t._writableState,r=t._readableState,n=e||r;return!n&&nS(t)||!!(n&&n.autoDestroy&&n.emitClose&&n.closed===!1)}function p5(t){var e;return!!(t&&((e=t[z2])!==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[G2])!==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))}iS.exports={isDestroyed:Sh,kIsDestroyed:W2,isDisturbed:p5,kIsDisturbed:z2,isErrored:y5,kIsErrored:G2,isReadable:eS,kIsReadable:cm,kIsClosedPromise:t5,kControllerErrorFunction:r5,kIsWritable:am,isClosed:f5,isDuplexNodeStream:n5,isFinished:a5,isIterable:o5,isReadableNodeStream:Eh,isReadableStream:Y2,isReadableEnded:c5,isReadableFinished:Q2,isReadableErrored:d5,isNodeStream:ri,isWebStream:i5,isWritable:tS,isWritableNodeStream:vh,isWritableStream:J2,isWritableEnded:Z2,isWritableFinished:s5,isWritableErrored:u5,isServerRequest:l5,isServerResponse:nS,willEmitClose:h5,isTransformStream:X2}});var zi=oe((CF,hm)=>{l();var jo=vi(),{AbortError:hS,codes:g5}=or(),{ERR_INVALID_ARG_TYPE:m5,ERR_STREAM_PREMATURE_CLOSE:oS}=g5,{kEmptyObject:dm,once:fm}=Zt(),{validateAbortSignal:w5,validateFunction:b5,validateObject:x5,validateBoolean:E5}=Aa(),{Promise:v5,PromisePrototypeThen:S5,SymbolDispose:pS}=it(),{isClosed:A5,isReadable:sS,isReadableNodeStream:um,isReadableStream:T5,isReadableFinished:cS,isReadableErrored:aS,isWritable:uS,isWritableNodeStream:dS,isWritableStream:_5,isWritableFinished:fS,isWritableErrored:lS,isNodeStream:I5,willEmitClose:B5,kIsClosedPromise:R5}=ni(),Ta;function U5(t){return t.setHeader&&typeof t.abort=="function"}var lm=()=>{};function yS(t,e,r){var n,i;if(arguments.length===2?(r=e,e=dm):e==null?e=dm:x5(e,"options"),b5(r,"callback"),w5(e.signal,"options.signal"),r=fm(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:um(t),s=(i=e.writable)!==null&&i!==void 0?i:dS(t),c=t._writableState,a=t._readableState,u=()=>{t.writable||h()},d=B5(t)&&um(t)===o&&dS(t)===s,f=fS(t,!1),h=()=>{f=!0,t.destroyed&&(d=!1),!(d&&(!t.readable||o))&&(!o||p)&&r.call(t)},p=cS(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=lS(t)||aS(t);if(T&&typeof T!="boolean")return r.call(t,T);if(o&&!p&&um(t,!0)&&!cS(t,!1))return r.call(t,new oS);if(s&&!f&&!fS(t,!1))return r.call(t,new oS);r.call(t)},I=()=>{x=!0;let T=lS(t)||aS(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?jo.nextTick(S):c!=null&&c.errorEmitted||a!=null&&a.errorEmitted?d||jo.nextTick(I):(!o&&(!d||sS(t))&&(f||uS(t)===!1)||!s&&(!d||uS(t))&&(p||sS(t)===!1)||a&&t.req&&t.aborted)&&jo.nextTick(I);let O=()=>{r=lm,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 hS(void 0,{cause:e.signal.reason}))};if(e.signal.aborted)jo.nextTick(T);else{Ta=Ta||Zt().addAbortListener;let M=Ta(e.signal,T),q=r;r=fm((...j)=>{M[pS](),q.apply(t,j)})}}return O}function O5(t,e,r){let n=!1,i=lm;if(e.signal)if(i=()=>{n=!0,r.call(t,new hS(void 0,{cause:e.signal.reason}))},e.signal.aborted)jo.nextTick(i);else{Ta=Ta||Zt().addAbortListener;let s=Ta(e.signal,i),c=r;r=fm((...a)=>{s[pS](),c.apply(t,a)})}let o=(...s)=>{n||jo.nextTick(()=>r.apply(t,s))};return S5(t[R5].promise,o,o),lm}function D5(t,e){var r;let n=!1;return e===null&&(e=dm),(r=e)!==null&&r!==void 0&&r.cleanup&&(E5(e.cleanup,"cleanup"),n=e.cleanup),new v5((i,o)=>{let s=yS(t,e,c=>{n&&s(),c?o(c):i()})})}hm.exports=yS;hm.exports.finished=D5});var oc=oe((PF,SS)=>{"use strict";l();var ii=vi(),{aggregateTwoErrors:k5,codes:{ERR_MULTIPLE_CALLBACK:N5},AbortError:C5}=or(),{Symbol:wS}=it(),{kIsDestroyed:L5,isDestroyed:P5,isFinished:M5,isServerRequest:K5}=ni(),bS=wS("kDestroy"),pm=wS("kConstruct");function xS(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):(xS(t,n,r),n&&(n.destroyed=!0),r&&(r.destroyed=!0),i.constructed?gS(this,t,e):this.once(bS,function(o){gS(this,k5(o,t),e)}),this)}function gS(t,e,r){let n=!1;function i(o){if(n)return;n=!0;let s=t._readableState,c=t._writableState;xS(o,c,s),c&&(c.closed=!0),s&&(s.closed=!0),typeof r=="function"&&r(o),o?ii.nextTick(H5,t,o):ii.nextTick(ES,t)}try{t._destroy(e||null,i)}catch(o){i(o)}}function H5(t,e){ym(t,e),ES(t)}function ES(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 ym(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 gm(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?ii.nextTick(ym,t,e):ym(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(pm,e),!(t.listenerCount(pm)>1)&&ii.nextTick(F5,t)}function F5(t){let e=!1;function r(n){if(e){gm(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(bS,n):n?gm(t,n,!0):ii.nextTick(j5,t)}try{t._construct(n=>{ii.nextTick(r,n)})}catch(n){ii.nextTick(r,n)}}function j5(t){t.emit(pm)}function mS(t){return t?.setHeader&&typeof t.abort=="function"}function vS(t){t.emit("close")}function W5(t,e){t.emit("error",e),ii.nextTick(vS,t)}function G5(t,e){!t||P5(t)||(!e&&!M5(t)&&(e=new C5),K5(t)?(t.socket=null,t.destroy(e)):mS(t)?t.abort():mS(t.req)?t.req.abort():typeof t.destroy=="function"?t.destroy(e):typeof t.close=="function"?t.close():e?ii.nextTick(W5,t,e):ii.nextTick(vS,t),t.destroyed||(t[L5]=!0))}SS.exports={construct:q5,destroyer:G5,destroy:$5,undestroy:V5,errorOrDestroy:gm}});var _h=oe((KF,TS)=>{"use strict";l();var{ArrayIsArray:z5,ObjectSetPrototypeOf:AS}=it(),{EventEmitter:Ah}=fa();function Th(t){Ah.call(this,t)}AS(Th.prototype,Ah.prototype);AS(Th,Ah);Th.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(),Ah.listenerCount(this,"error")===0&&this.emit("error",d)}mm(r,"error",a),mm(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 mm(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]]}TS.exports={Stream:Th,prependListener:mm}});var _d=oe((HF,Ih)=>{"use strict";l();var{SymbolDispose:Y5}=it(),{AbortError:_S,codes:J5}=or(),{isNodeStream:IS,isWebStream:X5,kControllerErrorFunction:Z5}=ni(),Q5=zi(),{ERR_INVALID_ARG_TYPE:BS}=J5,wm,e3=(t,e)=>{if(typeof t!="object"||!("aborted"in t))throw new BS(e,"AbortSignal",t)};Ih.exports.addAbortSignal=function(e,r){if(e3(e,"signal"),!IS(r)&&!X5(r))throw new BS("stream",["ReadableStream","WritableStream","Stream"],r);return Ih.exports.addAbortSignalNoValidate(e,r)};Ih.exports.addAbortSignalNoValidate=function(t,e){if(typeof t!="object"||!("aborted"in t))return e;let r=IS(e)?()=>{e.destroy(new _S(void 0,{cause:t.reason}))}:()=>{e[Z5](new _S(void 0,{cause:t.reason}))};if(t.aborted)r();else{wm=wm||Zt().addAbortListener;let n=wm(t,r);Q5(e,n[Y5])}return e}});var OS=oe((FF,US)=>{"use strict";l();var{StringPrototypeSlice:RS,SymbolIterator:t3,TypedArrayPrototypeSet:Bh,Uint8Array:r3}=it(),{Buffer:bm}=Ir(),{inspect:n3}=Zt();US.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;)Bh(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+=RS(o,0,e),this.head=n,n.data=RS(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)Bh(r,s,n-e),e-=s.length;else{e===s.length?(Bh(r,s,n-e),++o,i.next?this.head=i.next:this.head=this.tail=null):(Bh(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 Id=oe((WF,CS)=>{"use strict";l();var{MathFloor:i3,NumberIsInteger:o3}=it(),{validateInteger:s3}=Aa(),{ERR_INVALID_ARG_VALUE:c3}=or().codes,DS=16*1024,kS=16;function a3(t,e,r){return t.highWaterMark!=null?t.highWaterMark:e?t[r]:null}function NS(t){return t?kS:DS}function u3(t,e){s3(e,"value",0),t?kS=e:DS=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 NS(t.objectMode)}CS.exports={getHighWaterMark:d3,getDefaultHighWaterMark:NS,setDefaultHighWaterMark:u3}});var MS=oe((xm,PS)=>{l();var Rh=Ir(),oi=Rh.Buffer;function LS(t,e){for(var r in t)e[r]=t[r]}oi.from&&oi.alloc&&oi.allocUnsafe&&oi.allocUnsafeSlow?PS.exports=Rh:(LS(Rh,xm),xm.Buffer=sc);function sc(t,e,r){return oi(t,e,r)}sc.prototype=Object.create(oi.prototype);LS(oi,sc);sc.from=function(t,e,r){if(typeof t=="number")throw new TypeError("Argument must not be a number");return oi(t,e,r)};sc.alloc=function(t,e,r){if(typeof t!="number")throw new TypeError("Argument must be a number");var n=oi(t);return e!==void 0?typeof r=="string"?n.fill(e,r):n.fill(e):n.fill(0),n};sc.allocUnsafe=function(t){if(typeof t!="number")throw new TypeError("Argument must be a number");return oi(t)};sc.allocUnsafeSlow=function(t){if(typeof t!="number")throw new TypeError("Argument must be a number");return Rh.SlowBuffer(t)}});var HS=oe($S=>{"use strict";l();var vm=MS().Buffer,KS=vm.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"&&(vm.isEncoding===KS||!KS(t)))throw new Error("Unknown encoding: "+t);return e||t}$S.StringDecoder=Bd;function Bd(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=vm.allocUnsafe(e)}Bd.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||""};Bd.prototype.end=m3;Bd.prototype.text=g3;Bd.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 Em(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=Em(e[n]);return i>=0?(i>0&&(t.lastNeed=i-1),i):--n<r||i===-2?0:(i=Em(e[n]),i>=0?(i>0&&(t.lastNeed=i-2),i):--n<r||i===-2?0:(i=Em(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 Sm=oe((XF,jS)=>{"use strict";l();var VS=vi(),{PromisePrototypeThen:A3,SymbolAsyncIterator:qS,SymbolIterator:FS}=it(),{Buffer:T3}=Ir(),{ERR_INVALID_ARG_TYPE:_3,ERR_STREAM_NULL_VALUES:I3}=or().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[qS])i=!0,n=e[qS]();else if(e&&e[FS])i=!1,n=e[FS]();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),()=>VS.nextTick(d,u),f=>VS.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}jS.exports=B3});var Ud=oe((QF,uA)=>{l();var _n=vi(),{ArrayPrototypeIndexOf:R3,NumberIsInteger:U3,NumberIsNaN:O3,NumberParseInt:D3,ObjectDefineProperties:Om,ObjectKeys:k3,ObjectSetPrototypeOf:zS,Promise:YS,SafeSet:N3,SymbolAsyncDispose:C3,SymbolAsyncIterator:L3,Symbol:P3}=it();uA.exports=me;me.ReadableState=kh;var{EventEmitter:M3}=fa(),{Stream:Wo,prependListener:K3}=_h(),{Buffer:Am}=Ir(),{addAbortSignal:$3}=_d(),JS=zi(),Se=Zt().debuglog("stream",t=>{Se=t}),H3=OS(),Ba=oc(),{getHighWaterMark:V3,getDefaultHighWaterMark:q3}=Id(),{aggregateTwoErrors:WS,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}=or(),{validateObject:J3}=Aa(),cc=P3("kPaused"),{StringDecoder:XS}=HS(),X3=Sm();zS(me.prototype,Wo.prototype);zS(me,Wo);var Tm=()=>{},{errorOrDestroy:_a}=Ba,Ia=1,Z3=2,ZS=4,Rd=8,QS=16,Uh=32,Oh=64,eA=128,Q3=256,eD=512,tD=1024,Rm=2048,Um=4096,rD=8192,nD=16384,iD=32768,tA=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}}}Om(kh.prototype,{objectMode:Tt(Ia),ended:Tt(Z3),endEmitted:Tt(ZS),reading:Tt(Rd),constructed:Tt(QS),sync:Tt(Uh),needReadable:Tt(Oh),emittedReadable:Tt(eA),readableListening:Tt(Q3),resumeScheduled:Tt(eD),errorEmitted:Tt(tD),emitClose:Tt(Rm),autoDestroy:Tt(Um),destroyed:Tt(rD),closed:Tt(nD),closeEmitted:Tt(iD),multiAwaitDrain:Tt(tA),readingMore:Tt(oD),dataEmitted:Tt(sD)});function kh(t,e,r){typeof r!="boolean"&&(r=e instanceof si()),this.state=Rm|Um|QS|Uh,t&&t.objectMode&&(this.state|=Ia),r&&t&&t.readableObjectMode&&(this.state|=Ia),this.highWaterMark=t?V3(this,t,"readableHighWaterMark",r):q3(!1),this.buffer=new H3,this.length=0,this.pipes=[],this.flowing=null,this[cc]=null,t&&t.emitClose===!1&&(this.state&=~Rm),t&&t.autoDestroy===!1&&(this.state&=~Um),this.errored=null,this.defaultEncoding=t&&t.defaultEncoding||"utf8",this.awaitDrainWriters=null,this.decoder=null,this.encoding=null,t&&t.encoding&&(this.decoder=new XS(t.encoding),this.encoding=t.encoding)}function me(t){if(!(this instanceof me))return new me(t);let e=this instanceof si();this._readableState=new kh(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)),Wo.call(this,t),Ba.construct(this,()=>{this._readableState.needReadable&&Dh(this,this._readableState)})}me.prototype.destroy=Ba.destroy;me.prototype._undestroy=Ba.undestroy;me.prototype._destroy=function(t,e){e(t)};me.prototype[M3.captureRejectionSymbol]=function(t){this.destroy(t)};me.prototype[C3]=function(){let t;return this.destroyed||(t=this.readableEnded?null:new Y3,this.destroy(t)),new YS((e,r)=>JS(this,n=>n&&n!==t?r(n):e(null)))};me.prototype.push=function(t,e){return rA(this,t,e,!1)};me.prototype.unshift=function(t,e){return rA(this,t,e,!0)};function rA(t,e,r,n){Se("readableAddChunk",e);let i=t._readableState,o;if(i.state&Ia||(typeof e=="string"?(r=r||i.defaultEncoding,i.encoding!==r&&(n&&i.encoding?e=Am.from(e,r).toString(i.encoding):(e=Am.from(e,r),r=""))):e instanceof Am?r="":Wo._isUint8Array(e)?(e=Wo._uint8ArrayToBuffer(e),r=""):e!=null&&(o=new F3("chunk",["string","Buffer","Uint8Array"],e))),o)_a(t,o);else if(e===null)i.state&=~Rd,uD(t,i);else if(i.state&Ia||e&&e.length>0)if(n)if(i.state&ZS)_a(t,new z3);else{if(i.destroyed||i.errored)return!1;_m(t,i,e,!0)}else if(i.ended)_a(t,new G3);else{if(i.destroyed||i.errored)return!1;i.state&=~Rd,i.decoder&&!r?(e=i.decoder.write(e),i.objectMode||e.length!==0?_m(t,i,e,!1):Dh(t,i)):_m(t,i,e,!1)}else n||(i.state&=~Rd,Dh(t,i));return!i.ended&&(i.length<i.highWaterMark||i.length===0)}function _m(t,e,r,n){e.flowing&&e.length===0&&!e.sync&&t.listenerCount("data")>0?(e.state&tA?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&Oh&&Nh(t)),Dh(t,e)}me.prototype.isPaused=function(){let t=this._readableState;return t[cc]===!0||t.flowing===!1};me.prototype.setEncoding=function(t){let e=new XS(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 GS(t,e){return t<=0||e.length===0&&e.ended?0:e.state&Ia?1:O3(t)?e.flowing&&e.length?e.buffer.first().length:e.length:t<=e.length?t:e.ended?e.length:0}me.prototype.read=function(t){Se("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&=~eA),t===0&&e.needReadable&&((e.highWaterMark!==0?e.length>=e.highWaterMark:e.length>0)||e.ended))return Se("read: emitReadable",e.length,e.ended),e.length===0&&e.ended?Im(this):Nh(this),null;if(t=GS(t,e),t===0&&e.ended)return e.length===0&&Im(this),null;let n=(e.state&Oh)!==0;if(Se("need readable",n),(e.length===0||e.length-t<e.highWaterMark)&&(n=!0,Se("length less than watermark",n)),e.ended||e.reading||e.destroyed||e.errored||!e.constructed)n=!1,Se("reading, ended or constructing",n);else if(n){Se("do read"),e.state|=Rd|Uh,e.length===0&&(e.state|=Oh);try{this._read(e.highWaterMark)}catch(o){_a(this,o)}e.state&=~Uh,e.reading||(t=GS(r,e))}let i;return t>0?i=cA(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&&Im(this)),i!==null&&!e.errorEmitted&&!e.closeEmitted&&(e.dataEmitted=!0,this.emit("data",i)),i};function uD(t,e){if(Se("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?Nh(t):(e.needReadable=!1,e.emittedReadable=!0,nA(t))}}function Nh(t){let e=t._readableState;Se("emitReadable",e.needReadable,e.emittedReadable),e.needReadable=!1,e.emittedReadable||(Se("emitReadable",e.flowing),e.emittedReadable=!0,_n.nextTick(nA,t))}function nA(t){let e=t._readableState;Se("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,oA(t)}function Dh(t,e){!e.readingMore&&e.constructed&&(e.readingMore=!0,_n.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(Se("maybeReadMore read 0"),t.read(0),r===e.length)break}e.readingMore=!1}me.prototype._read=function(t){throw new j3("_read()")};me.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),Se("pipe count=%d opts=%j",n.pipes.length,e);let o=(!e||e.end!==!1)&&t!==_n.stdout&&t!==_n.stderr?c:x;n.endEmitted?_n.nextTick(o):r.once("end",o),t.on("unpipe",s);function s(S,I){Se("onunpipe"),S===r&&I&&I.hasUnpiped===!1&&(I.hasUnpiped=!0,d())}function c(){Se("onend"),t.end()}let a,u=!1;function d(){Se("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?(Se("false write response, pause",0),n.awaitDrainWriters=t,n.multiAwaitDrain=!1):n.pipes.length>1&&n.pipes.includes(t)&&(Se("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){Se("ondata");let I=t.write(S);Se("dest.write",I),I===!1&&f()}function p(S){if(Se("onerror",S),x(),t.removeListener("error",p),t.listenerCount("error")===0){let I=t._writableState||t._readableState;I&&!I.errorEmitted?_a(t,S):t.emit("error",S)}}K3(t,"error",p);function g(){t.removeListener("finish",y),x()}t.once("close",g);function y(){Se("onfinish"),t.removeListener("close",g),x()}t.once("finish",y);function x(){Se("unpipe"),r.unpipe(t)}return t.emit("pipe",r),t.writableNeedDrain===!0?f():n.flowing||(Se("pipe resume"),r.resume()),t};function fD(t,e){return function(){let n=t._readableState;n.awaitDrainWriters===e?(Se("pipeOnDrain",1),n.awaitDrainWriters=null):n.multiAwaitDrain&&(Se("pipeOnDrain",n.awaitDrainWriters.size),n.awaitDrainWriters.delete(e)),(!n.awaitDrainWriters||n.awaitDrainWriters.size===0)&&t.listenerCount("data")&&t.resume()}}me.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)};me.prototype.on=function(t,e){let r=Wo.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,Se("on readable",n.length,n.reading),n.length?Nh(this):n.reading||_n.nextTick(lD,this)),r};me.prototype.addListener=me.prototype.on;me.prototype.removeListener=function(t,e){let r=Wo.prototype.removeListener.call(this,t,e);return t==="readable"&&_n.nextTick(iA,this),r};me.prototype.off=me.prototype.removeListener;me.prototype.removeAllListeners=function(t){let e=Wo.prototype.removeAllListeners.apply(this,arguments);return(t==="readable"||t===void 0)&&_n.nextTick(iA,this),e};function iA(t){let e=t._readableState;e.readableListening=t.listenerCount("readable")>0,e.resumeScheduled&&e[cc]===!1?e.flowing=!0:t.listenerCount("data")>0?t.resume():e.readableListening||(e.flowing=null)}function lD(t){Se("readable nexttick read 0"),t.read(0)}me.prototype.resume=function(){let t=this._readableState;return t.flowing||(Se("resume"),t.flowing=!t.readableListening,hD(this,t)),t[cc]=!1,this};function hD(t,e){e.resumeScheduled||(e.resumeScheduled=!0,_n.nextTick(pD,t,e))}function pD(t,e){Se("resume",e.reading),e.reading||t.read(0),e.resumeScheduled=!1,t.emit("resume"),oA(t),e.flowing&&!e.reading&&t.read(0)}me.prototype.pause=function(){return Se("call pause flowing=%j",this._readableState.flowing),this._readableState.flowing!==!1&&(Se("pause"),this._readableState.flowing=!1,this.emit("pause")),this._readableState[cc]=!0,this};function oA(t){let e=t._readableState;for(Se("flow",e.flowing);e.flowing&&t.read()!==null;);}me.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=>{_a(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};me.prototype[L3]=function(){return sA(this)};me.prototype.iterator=function(t){return t!==void 0&&J3(t,"options"),sA(this,t)};function sA(t,e){typeof t.read!="function"&&(t=me.wrap(t,{objectMode:!0}));let r=yD(t,e);return r.stream=t,r}async function*yD(t,e){let r=Tm;function n(s){this===t?(r(),r=Tm):r=s}t.on("readable",n);let i,o=JS(t,{writable:!1},s=>{i=s?WS(i,s):null,r(),r=Tm});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 YS(n)}}}catch(s){throw i=WS(i,s),i}finally{(i||e?.destroyOnReturn!==!1)&&(i===void 0||t._readableState.autoDestroy)?Ba.destroyer(t,null):(t.off("readable",n),o())}}Om(me.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}}});Om(kh.prototype,{pipesCount:{__proto__:null,get(){return this.pipes.length}},paused:{__proto__:null,get(){return this[cc]!==!1},set(t){this[cc]=!!t}}});me._fromList=cA;function cA(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 Im(t){let e=t._readableState;Se("endReadable",e.endEmitted),e.endEmitted||(e.ended=!0,_n.nextTick(gD,e,t))}function gD(t,e){if(Se("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)_n.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()}me.from=function(t,e){return X3(me,t,e)};var Bm;function aA(){return Bm===void 0&&(Bm={}),Bm}me.fromWeb=function(t,e){return aA().newStreamReadableFromReadableStream(t,e)};me.toWeb=function(t,e){return aA().newReadableStreamFromStreamReadable(t,e)};me.wrap=function(t,e){var r,n;return new me({objectMode:(r=(n=t.readableObjectMode)!==null&&n!==void 0?n:t.objectMode)!==null&&r!==void 0?r:!0,...e,destroy(i,o){Ba.destroyer(t,i),o(i)}}).wrap(t)}});var Kh=oe((tj,EA)=>{l();var ac=vi(),{ArrayPrototypeSlice:lA,Error:wD,FunctionPrototypeSymbolHasInstance:hA,ObjectDefineProperty:pA,ObjectDefineProperties:bD,ObjectSetPrototypeOf:yA,StringPrototypeToLowerCase:xD,Symbol:ED,SymbolHasInstance:vD}=it();EA.exports=ot;ot.WritableState=kd;var{EventEmitter:SD}=fa(),Od=_h().Stream,{Buffer:Ch}=Ir(),Mh=oc(),{addAbortSignal:AD}=_d(),{getHighWaterMark:TD,getDefaultHighWaterMark:_D}=Id(),{ERR_INVALID_ARG_TYPE:ID,ERR_METHOD_NOT_IMPLEMENTED:BD,ERR_MULTIPLE_CALLBACK:gA,ERR_STREAM_CANNOT_PIPE:RD,ERR_STREAM_DESTROYED:Dd,ERR_STREAM_ALREADY_FINISHED:UD,ERR_STREAM_NULL_VALUES:OD,ERR_STREAM_WRITE_AFTER_END:DD,ERR_UNKNOWN_ENCODING:mA}=or().codes,{errorOrDestroy:Ra}=Mh;yA(ot.prototype,Od.prototype);yA(ot,Od);function Nm(){}var Ua=ED("kOnFinished");function kd(t,e,r){typeof r!="boolean"&&(r=e instanceof si()),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,Ph(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[Ua]=[]}function Ph(t){t.buffered=[],t.bufferedIndex=0,t.allBuffers=!0,t.allNoop=!0}kd.prototype.getBuffer=function(){return lA(this.buffered,this.bufferedIndex)};pA(kd.prototype,"bufferedRequestCount",{__proto__:null,get(){return this.buffered.length-this.bufferedIndex}});function ot(t){let e=this instanceof si();if(!e&&!hA(ot,this))return new ot(t);this._writableState=new kd(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)),Od.call(this,t),Mh.construct(this,()=>{let r=this._writableState;r.writing||Lm(this,r),Pm(this,r)})}pA(ot,vD,{__proto__:null,value:function(t){return hA(this,t)?!0:this!==ot?!1:t&&t._writableState instanceof kd}});ot.prototype.pipe=function(){Ra(this,new RD)};function wA(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"&&!Ch.isEncoding(r))throw new mA(r);typeof n!="function"&&(n=Nm)}if(e===null)throw new OD;if(!i.objectMode)if(typeof e=="string")i.decodeStrings!==!1&&(e=Ch.from(e,r),r="buffer");else if(e instanceof Ch)r="buffer";else if(Od._isUint8Array(e))e=Od._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 Dd("write")),o?(ac.nextTick(n,o),Ra(t,o,!0),o):(i.pendingcb++,kD(t,i,e,r,n))}ot.prototype.write=function(t,e,r){return wA(this,t,e,r)===!0};ot.prototype.cork=function(){this._writableState.corked++};ot.prototype.uncork=function(){let t=this._writableState;t.corked&&(t.corked--,t.writing||Lm(this,t))};ot.prototype.setDefaultEncoding=function(e){if(typeof e=="string"&&(e=xD(e)),!Ch.isEncoding(e))throw new mA(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!==Nm&&(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 dA(t,e,r,n,i,o,s){e.writelen=n,e.writecb=s,e.writing=!0,e.sync=!0,e.destroyed?e.onwrite(new Dd("write")):r?t._writev(i,e.onwrite):t._write(i,o,e.onwrite),e.sync=!1}function fA(t,e,r,n){--e.pendingcb,n(r),Cm(e),Ra(t,r)}function ND(t,e){let r=t._writableState,n=r.sync,i=r.writecb;if(typeof i!="function"){Ra(t,new gA);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?ac.nextTick(fA,t,r,e,i):fA(t,r,e,i)):(r.buffered.length>r.bufferedIndex&&Lm(t,r),n?r.afterWriteTickInfo!==null&&r.afterWriteTickInfo.cb===i?r.afterWriteTickInfo.count++:(r.afterWriteTickInfo={count:1,cb:i,stream:t,state:r},ac.nextTick(CD,r.afterWriteTickInfo)):bA(t,r,1,i))}function CD({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&&Cm(e),Pm(t,e)}function Cm(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 Dd("write"))}let r=t[Ua].splice(0);for(let i=0;i<r.length;i++){var n;r[i]((n=t.errored)!==null&&n!==void 0?n:new Dd("end"))}Ph(t)}function Lm(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?Nm:u=>{for(let d=s;d<r.length;++d)r[d].callback(u)},a=e.allNoop&&s===0?r:lA(r,s);a.allBuffers=e.allBuffers,dA(t,e,!0,e.length,a,"",c),Ph(e)}else{do{let{chunk:c,encoding:a,callback:u}=r[s];r[s++]=null;let d=i?1:c.length;dA(t,e,!1,d,c,a,u)}while(s<r.length&&!e.writing);s===r.length?Ph(e):s>256?(r.splice(0,s),e.bufferedIndex=0):e.bufferedIndex=s}e.bufferProcessing=!1}ot.prototype._write=function(t,e,r){if(this._writev)this._writev([{chunk:t,encoding:e}],r);else throw new BD("_write()")};ot.prototype._writev=null;ot.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=wA(this,t,e);o instanceof wD&&(i=o)}return n.corked&&(n.corked=1,this.uncork()),i||(!n.errored&&!n.ending?(n.ending=!0,Pm(this,n,!0),n.ended=!0):n.finished?i=new UD("end"):n.destroyed&&(i=new Dd("end"))),typeof r=="function"&&(i||n.finished?ac.nextTick(r,i):n[Ua].push(r)),this};function Lh(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){Ra(t,i??gA());return}if(r=!0,e.pendingcb--,i){let o=e[Ua].splice(0);for(let s=0;s<o.length;s++)o[s](i);Ra(t,i,e.sync)}else Lh(e)&&(e.prefinished=!0,t.emit("prefinish"),e.pendingcb++,ac.nextTick(km,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 Pm(t,e,r){Lh(e)&&(PD(t,e),e.pendingcb===0&&(r?(e.pendingcb++,ac.nextTick((n,i)=>{Lh(i)?km(n,i):i.pendingcb--},t,e)):Lh(e)&&(e.pendingcb++,km(t,e))))}function km(t,e){e.pendingcb--,e.finished=!0;let r=e[Ua].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(ot.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=Mh.destroy;ot.prototype.destroy=function(t,e){let r=this._writableState;return!r.destroyed&&(r.bufferedIndex<r.buffered.length||r[Ua].length)&&ac.nextTick(Cm,r),MD.call(this,t,e),this};ot.prototype._undestroy=Mh.undestroy;ot.prototype._destroy=function(t,e){e(t)};ot.prototype[SD.captureRejectionSymbol]=function(t){this.destroy(t)};var Dm;function xA(){return Dm===void 0&&(Dm={}),Dm}ot.fromWeb=function(t,e){return xA().newStreamWritableFromWritableStream(t,e)};ot.toWeb=function(t){return xA().newWritableStreamFromStreamWritable(t)}});var LA=oe((nj,CA)=>{l();var Mm=vi(),KD=Ir(),{isReadable:$D,isWritable:HD,isIterable:vA,isNodeStream:VD,isReadableNodeStream:SA,isWritableNodeStream:AA,isDuplexNodeStream:qD,isReadableStream:TA,isWritableStream:_A}=ni(),IA=zi(),{AbortError:kA,codes:{ERR_INVALID_ARG_TYPE:FD,ERR_INVALID_RETURN_VALUE:BA}}=or(),{destroyer:Da}=oc(),jD=si(),NA=Ud(),WD=Kh(),{createDeferredPromise:RA}=Zt(),UA=Sm(),OA=globalThis.Blob||KD.Blob,GD=typeof OA<"u"?function(e){return e instanceof OA}:function(e){return!1},zD=globalThis.AbortController||va().AbortController,{FunctionPrototypeCall:DA}=it(),Go=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)}};CA.exports=function t(e,r){if(qD(e))return e;if(SA(e))return Oa({readable:e});if(AA(e))return Oa({writable:e});if(VD(e))return Oa({writable:!1,readable:!1});if(TA(e))return Oa({readable:NA.fromWeb(e)});if(_A(e))return Oa({writable:WD.fromWeb(e)});if(typeof e=="function"){let{value:i,write:o,final:s,destroy:c}=YD(e);if(vA(i))return UA(Go,i,{objectMode:!0,write:o,final:s,destroy:c});let a=i?.then;if(typeof a=="function"){let u,d=DA(a,i,f=>{if(f!=null)throw new BA("nully","body",f)},f=>{Da(u,f)});return u=new Go({objectMode:!0,readable:!1,write:o,final(f){s(async()=>{try{await d,Mm.nextTick(f,null)}catch(h){Mm.nextTick(f,h)}})},destroy:c})}throw new BA("Iterable, AsyncIterable or AsyncFunction",r,i)}if(GD(e))return t(e.arrayBuffer());if(vA(e))return UA(Go,e,{objectMode:!0,writable:!1});if(TA(e?.readable)&&_A(e?.writable))return Go.fromWeb(e);if(typeof e?.writable=="object"||typeof e?.readable=="object"){let i=e!=null&&e.readable?SA(e?.readable)?e?.readable:t(e.readable):void 0,o=e!=null&&e.writable?AA(e?.writable)?e?.writable:t(e.writable):void 0;return Oa({readable:i,writable:o})}let n=e?.then;if(typeof n=="function"){let i;return DA(n,e,o=>{o!=null&&i.push(o),i.push(null)},o=>{Da(i,o)}),i=new Go({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}=RA(),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(Mm.nextTick(u),a)return;if(i.aborted)throw new kA(void 0,{cause:i.reason});({promise:e,resolve:r}=RA()),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 Oa(t){let e=t.readable&&typeof t.readable.read!="function"?NA.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 Go({readableObjectMode:!!(e!=null&&e.readableObjectMode),writableObjectMode:!!(r!=null&&r.writableObjectMode),readable:n,writable:i}),i&&(IA(r,f=>{i=!1,f&&Da(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&&(IA(e,f=>{n=!1,f&&Da(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 kA),c=null,o=null,s=null,a===null?h(f):(a=h,Da(r,f),Da(e,f))},u}});var si=oe((oj,KA)=>{"use strict";l();var{ObjectDefineProperties:JD,ObjectGetOwnPropertyDescriptor:Yi,ObjectKeys:XD,ObjectSetPrototypeOf:PA}=it();KA.exports=In;var Hm=Ud(),on=Kh();PA(In.prototype,Hm.prototype);PA(In,Hm);{let t=XD(on.prototype);for(let e=0;e<t.length;e++){let r=t[e];In.prototype[r]||(In.prototype[r]=on.prototype[r])}}function In(t){if(!(this instanceof In))return new In(t);Hm.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(In.prototype,{writable:{__proto__:null,...Yi(on.prototype,"writable")},writableHighWaterMark:{__proto__:null,...Yi(on.prototype,"writableHighWaterMark")},writableObjectMode:{__proto__:null,...Yi(on.prototype,"writableObjectMode")},writableBuffer:{__proto__:null,...Yi(on.prototype,"writableBuffer")},writableLength:{__proto__:null,...Yi(on.prototype,"writableLength")},writableFinished:{__proto__:null,...Yi(on.prototype,"writableFinished")},writableCorked:{__proto__:null,...Yi(on.prototype,"writableCorked")},writableEnded:{__proto__:null,...Yi(on.prototype,"writableEnded")},writableNeedDrain:{__proto__:null,...Yi(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 Km;function MA(){return Km===void 0&&(Km={}),Km}In.fromWeb=function(t,e){return MA().newStreamDuplexFromReadableWritablePair(t,e)};In.toWeb=function(t){return MA().newReadableWritablePairFromDuplex(t)};var $m;In.from=function(t){return $m||($m=LA()),$m(t,"body")}});var Fm=oe((cj,HA)=>{"use strict";l();var{ObjectSetPrototypeOf:$A,Symbol:ZD}=it();HA.exports=Ji;var{ERR_METHOD_NOT_IMPLEMENTED:QD}=or().codes,qm=si(),{getHighWaterMark:ek}=Id();$A(Ji.prototype,qm.prototype);$A(Ji,qm);var Nd=ZD("kCallback");function Ji(t){if(!(this instanceof Ji))return new Ji(t);let e=t?ek(this,t,"readableHighWaterMark",!0):null;e===0&&(t={...t,highWaterMark:null,readableHighWaterMark:e,writableHighWaterMark:t.writableHighWaterMark||0}),qm.call(this,t),this._readableState.sync=!1,this[Nd]=null,t&&(typeof t.transform=="function"&&(this._transform=t.transform),typeof t.flush=="function"&&(this._flush=t.flush)),this.on("prefinish",tk)}function Vm(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!==Vm&&Vm.call(this)}Ji.prototype._final=Vm;Ji.prototype._transform=function(t,e,r){throw new QD("_transform()")};Ji.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[Nd]=r})};Ji.prototype._read=function(){if(this[Nd]){let t=this[Nd];this[Nd]=null,t()}}});var Wm=oe((uj,qA)=>{"use strict";l();var{ObjectSetPrototypeOf:VA}=it();qA.exports=ka;var jm=Fm();VA(ka.prototype,jm.prototype);VA(ka,jm);function ka(t){if(!(this instanceof ka))return new ka(t);jm.call(this,t)}ka.prototype._transform=function(t,e,r){r(null,t)}});var qh=oe((fj,zA)=>{l();var Cd=vi(),{ArrayIsArray:rk,Promise:nk,SymbolAsyncIterator:ik,SymbolDispose:ok}=it(),Vh=zi(),{once:sk}=Zt(),ck=oc(),FA=si(),{aggregateTwoErrors:ak,codes:{ERR_INVALID_ARG_TYPE:tw,ERR_INVALID_RETURN_VALUE:Gm,ERR_MISSING_ARGS:uk,ERR_STREAM_DESTROYED:dk,ERR_STREAM_PREMATURE_CLOSE:fk},AbortError:lk}=or(),{validateFunction:hk,validateAbortSignal:pk}=Aa(),{isIterable:uc,isReadable:zm,isReadableNodeStream:Hh,isNodeStream:jA,isTransformStream:Na,isWebStream:yk,isReadableStream:Ym,isReadableFinished:gk}=ni(),mk=globalThis.AbortController||va().AbortController,Jm,Xm,Zm;function WA(t,e,r){let n=!1;t.on("close",()=>{n=!0});let i=Vh(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 Qm(t){if(uc(t))return t;if(Hh(t))return bk(t);throw new tw("val",["Readable","Iterable","AsyncIterable"],t)}async function*bk(t){Xm||(Xm=Ud()),yield*Xm.prototype[ik].call(t)}async function $h(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=Vh(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 ew(t,e,r,{end:n}){Na(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 GA(t,sk(wk(t)))}function GA(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)}Zm=Zm||Zt().addAbortListener;let a;o&&(a=Zm(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()),Cd.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(jA(O)){let $=function(Z){Z&&Z.name!=="AbortError"&&Z.code!=="ERR_STREAM_PREMATURE_CLOSE"&&p(Z)};var I=$;if(q){let{destroy:Z,cleanup:Q}=WA(O,T,M);f.push(Z),zm(O)&&j&&s.push(Q)}O.on("error",$),zm(O)&&j&&s.push(()=>{O.removeListener("error",$)})}if(A===0)if(typeof O=="function"){if(y=O({signal:i}),!uc(y))throw new Gm("Iterable, AsyncIterable or Stream","source",y)}else uc(O)||Hh(O)||Na(O)?y=O:y=FA.from(O);else if(typeof O=="function"){if(Na(y)){var x;y=Qm((x=y)===null||x===void 0?void 0:x.readable)}else y=Qm(y);if(y=O(y,{signal:i}),T){if(!uc(y,!0))throw new Gm("AsyncIterable",`transform[${A-1}]`,y)}else{var S;Jm||(Jm=Wm());let $=new Jm({objectMode:!0}),Z=(S=y)===null||S===void 0?void 0:S.then;if(typeof Z=="function")h++,Z.call(y,_=>{d=_,_!=null&&$.write(_),q&&$.end(),Cd.nextTick(p)},_=>{$.destroy(_),Cd.nextTick(p,_)});else if(uc(y,!0))h++,$h(y,$,p,{end:q});else if(Ym(y)||Na(y)){let _=y.readable||y;h++,$h(_,$,p,{end:q})}else throw new Gm("AsyncIterable or Promise","destination",y);y=$;let{destroy:Q,cleanup:G}=WA(y,!1,!0);f.push(Q),j&&s.push(G)}}else if(jA(O)){if(Hh(y)){h+=2;let $=Ek(y,O,p,{end:q});zm(O)&&j&&s.push($)}else if(Na(y)||Ym(y)){let $=y.readable||y;h++,$h($,O,p,{end:q})}else if(uc(y))h++,$h(y,O,p,{end:q});else throw new tw("val",["Readable","Iterable","AsyncIterable","ReadableStream","TransformStream"],y);y=O}else if(yk(O)){if(Hh(y))h++,ew(Qm(y),O,p,{end:q});else if(Ym(y)||uc(y))h++,ew(y,O,p,{end:q});else if(Na(y))h++,ew(y.readable,O,p,{end:q});else throw new tw("val",["Readable","Iterable","AsyncIterable","ReadableStream","TransformStream"],y);y=O}else y=FA.from(O)}return(i!=null&&i.aborted||o!=null&&o.aborted)&&Cd.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)?Cd.nextTick(s):t.once("end",s)}else r();return Vh(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)}),Vh(e,{readable:!1,writable:!0},r)}zA.exports={pipelineImpl:GA,pipeline:xk}});var nw=oe((hj,eT)=>{"use strict";l();var{pipeline:vk}=qh(),Fh=si(),{destroyer:Sk}=oc(),{isNodeStream:jh,isReadable:YA,isWritable:JA,isWebStream:rw,isTransformStream:dc,isWritableStream:XA,isReadableStream:ZA}=ni(),{AbortError:Ak,codes:{ERR_INVALID_ARG_VALUE:QA,ERR_MISSING_ARGS:Tk}}=or(),_k=zi();eT.exports=function(...e){if(e.length===0)throw new Tk("streams");if(e.length===1)return Fh.from(e[0]);let r=[...e];if(typeof e[0]=="function"&&(e[0]=Fh.from(e[0])),typeof e[e.length-1]=="function"){let p=e.length-1;e[p]=Fh.from(e[p])}for(let p=0;p<e.length;++p)if(!(!jh(e[p])&&!rw(e[p]))){if(p<e.length-1&&!(YA(e[p])||ZA(e[p])||dc(e[p])))throw new QA(`streams[${p}]`,r[p],"must be readable");if(p>0&&!(JA(e[p])||XA(e[p])||dc(e[p])))throw new QA(`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=!!(JA(u)||XA(u)||dc(u)),h=!!(YA(d)||ZA(d)||dc(d));if(c=new Fh({writableObjectMode:!!(u!=null&&u.writableObjectMode),readableObjectMode:!!(d!=null&&d.readableObjectMode),writable:f,readable:h}),f){if(jh(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(rw(u)){let y=(dc(u)?u.writable:u).getWriter();c._write=async function(x,S,I){try{await y.ready,y.write(x).catch(()=>{}),I()}catch(A){I(A)}},c._final=async function(x){try{await y.ready,y.close().catch(()=>{}),i=x}catch(S){x(S)}}}let p=dc(d)?d.readable:d;_k(p,()=>{if(i){let g=i;i=null,g()}})}if(h){if(jh(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(rw(d)){let g=(dc(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,jh(d)&&Sk(d,p))},c}});var dT=oe((yj,sw)=>{"use strict";l();var Ik=globalThis.AbortController||va().AbortController,{codes:{ERR_INVALID_ARG_VALUE:Bk,ERR_INVALID_ARG_TYPE:Ld,ERR_MISSING_ARGS:Rk,ERR_OUT_OF_RANGE:Uk},AbortError:ci}=or(),{validateAbortSignal:fc,validateInteger:tT,validateObject:lc}=Aa(),Ok=it().Symbol("kWeak"),Dk=it().Symbol("kResistStopPropagation"),{finished:kk}=zi(),Nk=nw(),{addAbortSignalNoValidate:Ck}=_d(),{isWritable:Lk,isNodeStream:Pk}=ni(),{deprecate:Mk}=Zt(),{ArrayPrototypePush:Kk,Boolean:$k,MathFloor:rT,Number:Hk,NumberIsNaN:Vk,Promise:nT,PromiseReject:iT,PromiseResolve:qk,PromisePrototypeThen:oT,Symbol:cT}=it(),Wh=cT("kEmpty"),sT=cT("kEof");function Fk(t,e){if(e!=null&&lc(e,"options"),e?.signal!=null&&fc(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 Gh(t,e){if(typeof t!="function")throw new Ld("fn",["Function","AsyncFunction"],t);e!=null&&lc(e,"options"),e?.signal!=null&&fc(e.signal,"options.signal");let r=1;e?.concurrency!=null&&(r=rT(e.concurrency));let n=r-1;return e?.highWaterMark!=null&&(n=rT(e.highWaterMark)),tT(r,"options.concurrency",1),tT(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 ci;try{if(S=t(S,a),S===Wh)continue;S=qk(S)}catch(I){S=iT(I)}h+=1,oT(S,g,p),c.push(S),u&&(u(),u=null),!f&&(c.length>=n||h>=r)&&await new nT(I=>{d=I})}c.push(sT)}catch(S){let I=iT(S);oT(I,g,p),c.push(I)}finally{f=!0,u&&(u(),u=null)}}x();try{for(;;){for(;c.length>0;){let S=await c[0];if(S===sT)return;if(o.aborted)throw new ci;S!==Wh&&(yield S),c.shift(),y()}await new nT(S=>{u=S})}}finally{f=!0,d&&(d(),d=null)}}).call(this)}function jk(t=void 0){return t!=null&&lc(t,"options"),t?.signal!=null&&fc(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 ci({cause:t.signal.reason});yield[r++,i]}}).call(this)}async function aT(t,e=void 0){for await(let r of ow.call(this,t,e))return!0;return!1}async function Wk(t,e=void 0){if(typeof t!="function")throw new Ld("fn",["Function","AsyncFunction"],t);return!await aT.call(this,async(...r)=>!await t(...r),e)}async function Gk(t,e){for await(let r of ow.call(this,t,e))return r}async function zk(t,e){if(typeof t!="function")throw new Ld("fn",["Function","AsyncFunction"],t);async function r(n,i){return await t(n,i),Wh}for await(let n of Gh.call(this,r,e));}function ow(t,e){if(typeof t!="function")throw new Ld("fn",["Function","AsyncFunction"],t);async function r(n,i){return await t(n,i)?n:Wh}return Gh.call(this,r,e)}var iw=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 Ld("reducer",["Function","AsyncFunction"],t);r!=null&&lc(r,"options"),r?.signal!=null&&fc(r.signal,"options.signal");let i=arguments.length>1;if(r!=null&&(n=r.signal)!==null&&n!==void 0&&n.aborted){let u=new ci(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 ci;i?e=await t(e,u,{signal:s}):(e=u,i=!0)}if(!c&&!i)throw new iw}finally{o.abort()}return e}async function Jk(t){t!=null&&lc(t,"options"),t?.signal!=null&&fc(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 ci(void 0,{cause:t.signal.reason});Kk(e,n)}return e}function Xk(t,e){let r=Gh.call(this,t,e);return(async function*(){for await(let i of r)yield*i}).call(this)}function uT(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&&lc(e,"options"),e?.signal!=null&&fc(e.signal,"options.signal"),t=uT(t),(async function*(){var n;if(e!=null&&(n=e.signal)!==null&&n!==void 0&&n.aborted)throw new ci;for await(let o of this){var i;if(e!=null&&(i=e.signal)!==null&&i!==void 0&&i.aborted)throw new ci;t--<=0&&(yield o)}}).call(this)}function Qk(t,e=void 0){return e!=null&&lc(e,"options"),e?.signal!=null&&fc(e.signal,"options.signal"),t=uT(t),(async function*(){var n;if(e!=null&&(n=e.signal)!==null&&n!==void 0&&n.aborted)throw new ci;for await(let o of this){var i;if(e!=null&&(i=e.signal)!==null&&i!==void 0&&i.aborted)throw new ci;if(t-- >0&&(yield o),t<=0)return}}).call(this)}sw.exports.streamReturningOperators={asIndexedPairs:Mk(jk,"readable.asIndexedPairs will be removed in a future version."),drop:Zk,filter:ow,flatMap:Xk,map:Gh,take:Qk,compose:Fk};sw.exports.promiseReturningOperators={every:Wk,forEach:zk,reduce:Yk,toArray:Jk,some:aT,find:Gk}});var cw=oe((mj,fT)=>{"use strict";l();var{ArrayPrototypePop:e4,Promise:t4}=it(),{isIterable:r4,isNodeStream:n4,isWebStream:i4}=ni(),{pipelineImpl:o4}=qh(),{finished:s4}=zi();aw();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})})}fT.exports={finished:s4,pipeline:c4}});var aw=oe((bj,xT)=>{l();var{Buffer:a4}=Ir(),{ObjectDefineProperty:Xi,ObjectKeys:pT,ReflectApply:yT}=it(),{promisify:{custom:gT}}=Zt(),{streamReturningOperators:lT,promiseReturningOperators:hT}=dT(),{codes:{ERR_ILLEGAL_CONSTRUCTOR:mT}}=or(),u4=nw(),{setDefaultHighWaterMark:d4,getDefaultHighWaterMark:f4}=Id(),{pipeline:wT}=qh(),{destroyer:l4}=oc(),bT=zi(),uw=cw(),Pd=ni(),We=xT.exports=_h().Stream;We.isDestroyed=Pd.isDestroyed;We.isDisturbed=Pd.isDisturbed;We.isErrored=Pd.isErrored;We.isReadable=Pd.isReadable;We.isWritable=Pd.isWritable;We.Readable=Ud();for(let t of pT(lT)){let r=function(...n){if(new.target)throw mT();return We.Readable.from(yT(e,this,n))};dw=r;let e=lT[t];Xi(r,"name",{__proto__:null,value:e.name}),Xi(r,"length",{__proto__:null,value:e.length}),Xi(We.Readable.prototype,t,{__proto__:null,value:r,enumerable:!1,configurable:!0,writable:!0})}var dw;for(let t of pT(hT)){let r=function(...i){if(new.target)throw mT();return yT(e,this,i)};dw=r;let e=hT[t];Xi(r,"name",{__proto__:null,value:e.name}),Xi(r,"length",{__proto__:null,value:e.length}),Xi(We.Readable.prototype,t,{__proto__:null,value:r,enumerable:!1,configurable:!0,writable:!0})}var dw;We.Writable=Kh();We.Duplex=si();We.Transform=Fm();We.PassThrough=Wm();We.pipeline=wT;var{addAbortSignal:h4}=_d();We.addAbortSignal=h4;We.finished=bT;We.destroy=l4;We.compose=u4;We.setDefaultHighWaterMark=d4;We.getDefaultHighWaterMark=f4;Xi(We,"promises",{__proto__:null,configurable:!0,enumerable:!0,get(){return uw}});Xi(wT,gT,{__proto__:null,enumerable:!0,get(){return uw.pipeline}});Xi(bT,gT,{__proto__:null,enumerable:!0,get(){return uw.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 fw=oe((Ej,mt)=>{"use strict";l();var _t=aw(),p4=cw(),y4=_t.Readable.destroy;mt.exports=_t.Readable;mt.exports._uint8ArrayToBuffer=_t._uint8ArrayToBuffer;mt.exports._isUint8Array=_t._isUint8Array;mt.exports.isDisturbed=_t.isDisturbed;mt.exports.isErrored=_t.isErrored;mt.exports.isReadable=_t.isReadable;mt.exports.Readable=_t.Readable;mt.exports.Writable=_t.Writable;mt.exports.Duplex=_t.Duplex;mt.exports.Transform=_t.Transform;mt.exports.PassThrough=_t.PassThrough;mt.exports.addAbortSignal=_t.addAbortSignal;mt.exports.finished=_t.finished;mt.exports.destroy=_t.destroy;mt.exports.destroy=y4;mt.exports.pipeline=_t.pipeline;mt.exports.compose=_t.compose;Object.defineProperty(_t,"promises",{configurable:!0,enumerable:!0,get(){return p4}});mt.exports.Stream=_t.Stream;mt.exports.default=mt.exports});var V_=oe((Cp,H_)=>{l();(function(t,e){typeof Cp=="object"&&typeof H_<"u"?e(Cp):typeof define=="function"&&define.amd?define(["exports"],e):e(t.URI=t.URI||{})})(Cp,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]"),he="[\\x0A]",Te="[\\x20]",De=r(r("%[EFef]"+te+"%"+te+te+"%"+te+te)+"|"+r("%[89A-Fa-f]"+te+"%"+te+te)+"|"+r("%"+te+te)),wt="[\\:\\/\\?\\#\\[\\]\\@]",Ae="[\\!\\$\\&\\'\\(\\)\\*\\+\\,\\;\\=]",tt=e(wt,Ae),bt=B?"[\\xA0-\\u200D\\u2010-\\u2029\\u202F-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF]":"[]",Xe=B?"[\\uE000-\\uF8FF]":"[]",Ie=e(v,K,"[\\-\\.\\_\\~]",bt),rt=r(v+e(v,K,"[\\+\\-\\.]")+"*"),Ne=r(r(De+"|"+e(Ie,Ae,"[\\:]"))+"*"),hs=r(r("25[0-5]")+"|"+r("2[0-4]"+K)+"|"+r("1"+K+K)+"|"+r("[1-9]"+K)+"|"+K),Tr=r(r("25[0-5]")+"|"+r("2[0-4]"+K)+"|"+r("1"+K+K)+"|"+r("0?[1-9]"+K)+"|0?0?"+K),Gr=r(Tr+"\\."+Tr+"\\."+Tr+"\\."+Tr),Ke=r(te+"{1,4}"),_r=r(r(Ke+"\\:"+Ke)+"|"+Gr),zr=r(r(Ke+"\\:")+"{6}"+_r),Mn=r("\\:\\:"+r(Ke+"\\:")+"{5}"+_r),ps=r(r(Ke)+"?\\:\\:"+r(Ke+"\\:")+"{4}"+_r),gi=r(r(r(Ke+"\\:")+"{0,1}"+Ke)+"?\\:\\:"+r(Ke+"\\:")+"{3}"+_r),gu=r(r(r(Ke+"\\:")+"{0,2}"+Ke)+"?\\:\\:"+r(Ke+"\\:")+"{2}"+_r),Af=r(r(r(Ke+"\\:")+"{0,3}"+Ke)+"?\\:\\:"+Ke+"\\:"+_r),Tf=r(r(r(Ke+"\\:")+"{0,4}"+Ke)+"?\\:\\:"+_r),Ac=r(r(r(Ke+"\\:")+"{0,5}"+Ke)+"?\\:\\:"+Ke),Tc=r(r(r(Ke+"\\:")+"{0,6}"+Ke)+"?\\:\\:"),mi=r([zr,Mn,ps,gi,gu,Af,Tf,Ac,Tc].join("|")),_c=r(r(Ie+"|"+De)+"+"),ny=r(mi+"\\%25"+_c),ys=r(mi+r("\\%25|\\%(?!"+te+"{2})")+_c),cB=r("[vV]"+te+"+\\."+e(Ie,Ae,"[\\:]")+"+"),aB=r("\\["+r(ys+"|"+mi+"|"+cB)+"\\]"),ix=r(r(De+"|"+e(Ie,Ae))+"*"),mu=r(aB+"|"+Gr+"(?!"+ix+")|"+ix),wu=r(K+"*"),ox=r(r(Ne+"@")+"?"+mu+r("\\:"+wu)+"?"),bu=r(De+"|"+e(Ie,Ae,"[\\:\\@]")),uB=r(bu+"*"),sx=r(bu+"+"),dB=r(r(De+"|"+e(Ie,Ae,"[\\@]"))+"+"),wi=r(r("\\/"+uB)+"*"),Ic=r("\\/"+r(sx+wi)+"?"),iy=r(dB+wi),_f=r(sx+wi),Bc="(?!"+bu+")",WL=r(wi+"|"+Ic+"|"+iy+"|"+_f+"|"+Bc),Rc=r(r(bu+"|"+e("[\\/\\?]",Xe))+"*"),xu=r(r(bu+"|[\\/\\?]")+"*"),cx=r(r("\\/\\/"+ox+wi)+"|"+Ic+"|"+_f+"|"+Bc),fB=r(rt+"\\:"+cx+r("\\?"+Rc)+"?"+r("\\#"+xu)+"?"),lB=r(r("\\/\\/"+ox+wi)+"|"+Ic+"|"+iy+"|"+Bc),hB=r(lB+r("\\?"+Rc)+"?"+r("\\#"+xu)+"?"),GL=r(fB+"|"+hB),zL=r(rt+"\\:"+cx+r("\\?"+Rc)+"?"),YL="^("+rt+")\\:"+r(r("\\/\\/("+r("("+Ne+")@")+"?("+mu+")"+r("\\:("+wu+")")+"?)")+"?("+wi+"|"+Ic+"|"+_f+"|"+Bc+")")+r("\\?("+Rc+")")+"?"+r("\\#("+xu+")")+"?$",JL="^(){0}"+r(r("\\/\\/("+r("("+Ne+")@")+"?("+mu+")"+r("\\:("+wu+")")+"?)")+"?("+wi+"|"+Ic+"|"+iy+"|"+Bc+")")+r("\\?("+Rc+")")+"?"+r("\\#("+xu+")")+"?$",XL="^("+rt+")\\:"+r(r("\\/\\/("+r("("+Ne+")@")+"?("+mu+")"+r("\\:("+wu+")")+"?)")+"?("+wi+"|"+Ic+"|"+_f+"|"+Bc+")")+r("\\?("+Rc+")")+"?$",ZL="^"+r("\\#("+xu+")")+"?$",QL="^"+r("("+Ne+")@")+"?("+mu+")"+r("\\:("+wu+")")+"?$";return{NOT_SCHEME:new RegExp(e("[^]",v,K,"[\\+\\-\\.]"),"g"),NOT_USERINFO:new RegExp(e("[^\\%\\:]",Ie,Ae),"g"),NOT_HOST:new RegExp(e("[^\\%\\[\\]\\:]",Ie,Ae),"g"),NOT_PATH:new RegExp(e("[^\\%\\/\\:\\@]",Ie,Ae),"g"),NOT_PATH_NOSCHEME:new RegExp(e("[^\\%\\/\\@]",Ie,Ae),"g"),NOT_QUERY:new RegExp(e("[^\\%]",Ie,Ae,"[\\:\\@\\/\\?]",Xe),"g"),NOT_FRAGMENT:new RegExp(e("[^\\%]",Ie,Ae,"[\\:\\@\\/\\?]"),"g"),ESCAPE:new RegExp(e("[^]",Ie,Ae),"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("^\\[?("+mi+")"+r(r("\\%25|\\%(?!"+te+"{2})")+"("+_c+")")+"?\\]?$")}}var a=c(!1),u=c(!0),d=function(){function B(v,k){var K=[],H=!0,te=!1,he=void 0;try{for(var Te=v[Symbol.iterator](),De;!(H=(De=Te.next()).done)&&(K.push(De.value),!(k&&K.length===k));H=!0);}catch(wt){te=!0,he=wt}finally{try{!H&&Te.return&&Te.return()}finally{if(te)throw he}}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,I=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 _(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=_(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,he=I,Te=v.lastIndexOf(O);Te<0&&(Te=0);for(var De=0;De<Te;++De)v.charCodeAt(De)>=128&&G("not-basic"),k.push(v.charCodeAt(De));for(var wt=Te>0?Te+1:0;wt<K;){for(var Ae=H,tt=1,bt=p;;bt+=p){wt>=K&&G("invalid-input");var Xe=L(v.charCodeAt(wt++));(Xe>=p||Xe>Z((h-H)/tt))&&G("overflow"),H+=Xe*tt;var Ie=bt<=he?g:bt>=he+y?y:bt-he;if(Xe<Ie)break;var rt=p-Ie;tt>Z(h/rt)&&G("overflow"),tt*=rt}var Ne=k.length+1;he=R(H-Ae,Ne,Ae==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,he=I,Te=!0,De=!1,wt=void 0;try{for(var Ae=v[Symbol.iterator](),tt;!(Te=(tt=Ae.next()).done);Te=!0){var bt=tt.value;bt<128&&k.push(Q(bt))}}catch(ys){De=!0,wt=ys}finally{try{!Te&&Ae.return&&Ae.return()}finally{if(De)throw wt}}var Xe=k.length,Ie=Xe;for(Xe&&k.push(O);Ie<K;){var rt=h,Ne=!0,hs=!1,Tr=void 0;try{for(var Gr=v[Symbol.iterator](),Ke;!(Ne=(Ke=Gr.next()).done);Ne=!0){var _r=Ke.value;_r>=H&&_r<rt&&(rt=_r)}}catch(ys){hs=!0,Tr=ys}finally{try{!Ne&&Gr.return&&Gr.return()}finally{if(hs)throw Tr}}var zr=Ie+1;rt-H>Z((h-te)/zr)&&G("overflow"),te+=(rt-H)*zr,H=rt;var Mn=!0,ps=!1,gi=void 0;try{for(var gu=v[Symbol.iterator](),Af;!(Mn=(Af=gu.next()).done);Mn=!0){var Tf=Af.value;if(Tf<H&&++te>h&&G("overflow"),Tf==H){for(var Ac=te,Tc=p;;Tc+=p){var mi=Tc<=he?g:Tc>=he+y?y:Tc-he;if(Ac<mi)break;var _c=Ac-mi,ny=p-mi;k.push(Q(N(mi+_c%ny,0))),Ac=Z(_c/ny)}k.push(Q(N(Ac,0))),he=R(te,zr,Ie==Xe),te=0,++Ie}}}catch(ys){ps=!0,gi=ys}finally{try{!Mn&&gu.return&&gu.return()}finally{if(ps)throw gi}}++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 he=parseInt(B.substr(k+4,2),16),Te=parseInt(B.substr(k+7,2),16);v+=String.fromCharCode((H&15)<<12|(he&63)<<6|Te&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 he=H.toLowerCase().split("::").reverse(),Te=d(he,2),De=Te[0],wt=Te[1],Ae=wt?wt.split(":").map(ee):[],tt=De.split(":").map(ee),bt=v.IPV4ADDRESS.test(tt[tt.length-1]),Xe=bt?7:8,Ie=tt.length-Xe,rt=Array(Xe),Ne=0;Ne<Xe;++Ne)rt[Ne]=Ae[Ne]||tt[Ie+Ne]||"";bt&&(rt[Xe-1]=ce(rt[Xe-1],v));var hs=rt.reduce(function(zr,Mn,ps){if(!Mn||Mn==="0"){var gi=zr[zr.length-1];gi&&gi.index+gi.length===ps?gi.length++:zr.push({index:ps,length:1})}return zr},[]),Tr=hs.sort(function(zr,Mn){return Mn.length-zr.length})[0],Gr=void 0;if(Tr&&Tr.length>1){var Ke=rt.slice(0,Tr.index),_r=rt.slice(Tr.index+Tr.length);Gr=Ke.join(":")+"::"+_r.join(":")}else Gr=rt.join(":");return te&&(Gr+="%"+te),Gr}else return B}var Me=/^(?:([^:\/?#]+):)?(?:\/\/((?:([^\/?#@]*)@)?(\[[^\/?#\]]+\]|[^\/?#:]*)(?:\:(\d*))?))?([^?#]*)(?:\?([^#]*))?(?:#((?:.|\n|\r)*))?/i,Je="".match(/(){0}/)[1]===void 0;function Et(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(Me);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(he){k.error=k.error||"Host's domain name can not be converted to ASCII via punycode: "+he}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 yi(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,he){return"["+te+(he?"%25"+he:"")+"]"})),(typeof B.port=="number"||typeof B.port=="string")&&(K.push(":"),K.push(String(B.port))),K.length?K.join(""):void 0}var po=/^\.\.?\//,lu=/^\/\.(\/|$)/,wf=/^\/\.\.(\/|$)/,ey=/^\/?(?:.|\n)*?(?=\/|$)/;function yo(B){for(var v=[];B.length;)if(B.match(po))B=B.replace(po,"");else if(B.match(lu))B=B.replace(lu,"/");else if(B.match(wf))B=B.replace(wf,"/"),v.pop();else if(B==="."||B==="..")B="";else{var k=B.match(ey);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(Te){B.error=B.error||"Host's domain name can not be converted to "+(v.iri?"Unicode":"ASCII")+" via punycode: "+Te}}ue(B,k),v.reference!=="suffix"&&B.scheme&&(K.push(B.scheme),K.push(":"));var te=yi(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 he=B.path;!v.absolutePath&&(!H||!H.absolutePath)&&(he=yo(he)),te===void 0&&(he=he.replace(/^\/\//,"/%2F")),K.push(he)}return B.query!==void 0&&(K.push("?"),K.push(B.query)),B.fragment!==void 0&&(K.push("#"),K.push(B.fragment)),K.join("")}function hu(B,v){var k=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},K=arguments[3],H={};return K||(B=Et(jr(B,k),k),v=Et(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=yo(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=yo(v.path||""),H.query=v.query):(v.path?(v.path.charAt(0)==="/"?H.path=yo(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=yo(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 bf(B,v,k){var K=s({scheme:"null"},k);return jr(hu(Et(B,K),Et(v,K),K,!0),K)}function pu(B,v){return typeof B=="string"?B=jr(Et(B,v),v):n(B)==="object"&&(B=Et(jr(B,v),v)),B}function xf(B,v,k){return typeof B=="string"?B=jr(Et(B,k),k):n(B)==="object"&&(B=jr(B,k)),typeof v=="string"?v=jr(Et(v,k),k):n(v)==="object"&&(v=jr(v,k)),B===v}function Ef(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 go={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}},yu={scheme:"https",domainHost:go.domainHost,parse:go.parse,serialize:go.serialize};function vf(B){return typeof B.secure=="boolean"?B.secure:String(B.scheme).toLowerCase()==="wss"}var ls={scheme:"ws",domainHost:!0,parse:function(v,k){var K=v;return K.secure=vf(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===(vf(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],he=H[1];v.path=te&&te!=="/"?te:void 0,v.query=he,v.resourceName=void 0}return v.fragment=void 0,v}},Sf={scheme:"wss",domainHost:ls.domainHost,parse:ls.parse,serialize:ls.serialize},ty={},JI=!0,Qb="[A-Za-z0-9\\-\\.\\_\\~"+(JI?"\\xA0-\\u200D\\u2010-\\u2029\\u202F-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF":"")+"]",Pn="[0-9A-Fa-f]",XI=r(r("%[EFef]"+Pn+"%"+Pn+Pn+"%"+Pn+Pn)+"|"+r("%[89A-Fa-f]"+Pn+"%"+Pn+Pn)+"|"+r("%"+Pn+Pn)),ZI="[A-Za-z0-9\\!\\$\\%\\'\\*\\+\\-\\^\\_\\`\\{\\|\\}\\~]",QI="[\\!\\$\\%\\'\\(\\)\\*\\+\\,\\-\\.0-9\\<\\>A-Z\\x5E-\\x7E]",eB=e(QI,'[\\"\\\\]'),tB="[\\!\\$\\'\\(\\)\\*\\+\\,\\;\\:\\@]",rB=new RegExp(Qb,"g"),Sc=new RegExp(XI,"g"),nB=new RegExp(e("[^]",ZI,"[\\.]",'[\\"]',eB),"g"),ex=new RegExp(e("[^]",Qb,tB),"g"),iB=ex;function ry(B){var v=X(B);return v.match(rB)?v:B}var tx={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,he={},Te=K.query.split("&"),De=0,wt=Te.length;De<wt;++De){var Ae=Te[De].split("=");switch(Ae[0]){case"to":for(var tt=Ae[1].split(","),bt=0,Xe=tt.length;bt<Xe;++bt)H.push(tt[bt]);break;case"subject":K.subject=Wr(Ae[1],k);break;case"body":K.body=Wr(Ae[1],k);break;default:te=!0,he[Wr(Ae[0],k)]=Wr(Ae[1],k);break}}te&&(K.headers=he)}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(hs){K.error=K.error||"Email address's domain name can not be converted to ASCII via punycode: "+hs}H[Ie]=Ne.join("@")}return K},serialize:function(v,k){var K=v,H=o(v.to);if(H){for(var te=0,he=H.length;te<he;++te){var Te=String(H[te]),De=Te.lastIndexOf("@"),wt=Te.slice(0,De).replace(Sc,ry).replace(Sc,i).replace(nB,Y),Ae=Te.slice(De+1);try{Ae=k.iri?z.toUnicode(Ae):z.toASCII(Wr(Ae,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]=wt+"@"+Ae}K.path=H.join(",")}var tt=v.headers=v.headers||{};v.subject&&(tt.subject=v.subject),v.body&&(tt.body=v.body);var bt=[];for(var Xe in tt)tt[Xe]!==ty[Xe]&&bt.push(Xe.replace(Sc,ry).replace(Sc,i).replace(ex,Y)+"="+tt[Xe].replace(Sc,ry).replace(Sc,i).replace(iB,Y));return bt.length&&(K.query=bt.join("&")),K}},oB=/^([^\:]+)\:(.*)/,rx={scheme:"urn",parse:function(v,k){var K=v.path&&v.path.match(oB),H=v;if(K){var te=k.scheme||H.scheme||"urn",he=K[1].toLowerCase(),Te=K[2],De=te+":"+(k.nid||he),wt=W[De];H.nid=he,H.nss=Te,H.path=void 0,wt&&(H=wt.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),he=W[te];he&&(v=he.serialize(v,k));var Te=v,De=v.nss;return Te.path=(H||k.nid)+":"+De,Te}},sB=/^[0-9A-Fa-f]{8}(?:\-[0-9A-Fa-f]{4}){3}\-[0-9A-Fa-f]{12}$/,nx={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(sB))&&(K.error=K.error||"UUID is not valid."),K},serialize:function(v,k){var K=v;return K.nss=(v.uuid||"").toLowerCase(),K}};W[go.scheme]=go,W[yu.scheme]=yu,W[ls.scheme]=ls,W[Sf.scheme]=Sf,W[tx.scheme]=tx,W[rx.scheme]=rx,W[nx.scheme]=nx,t.SCHEMES=W,t.pctEncChar=Y,t.pctDecChars=X,t.parse=Et,t.removeDotSegments=yo,t.serialize=jr,t.resolveComponents=hu,t.resolve=bf,t.normalize=pu,t.equal=xf,t.escapeComponent=Ef,t.unescapeComponent=Wr,Object.defineProperty(t,"__esModule",{value:!0})})});var F_=oe((GX,q_)=>{"use strict";l();q_.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 nI=oe((JQ,rI)=>{l();var eu=1e3,tu=eu*60,ru=tu*60,bc=ru*24,JC=bc*7,XC=bc*365.25;rI.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*bc;case"hours":case"hour":case"hrs":case"hr":case"h":return r*ru;case"minutes":case"minute":case"mins":case"min":case"m":return r*tu;case"seconds":case"second":case"secs":case"sec":case"s":return r*eu;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}function QC(t){var e=Math.abs(t);return e>=bc?Math.round(t/bc)+"d":e>=ru?Math.round(t/ru)+"h":e>=tu?Math.round(t/tu)+"m":e>=eu?Math.round(t/eu)+"s":t+"ms"}function eL(t){var e=Math.abs(t);return e>=bc?$p(t,e,bc,"day"):e>=ru?$p(t,e,ru,"hour"):e>=tu?$p(t,e,tu,"minute"):e>=eu?$p(t,e,eu,"second"):t+" ms"}function $p(t,e,r,n){var i=e>=r*1.5;return Math.round(t/r)+" "+n+(i?"s":"")}});l();l();l();l();var bs=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;function xs(t){return t instanceof Uint8Array||ArrayBuffer.isView(t)&&t.constructor.name==="Uint8Array"}function Eu(t){if(!Number.isSafeInteger(t)||t<0)throw new Error("positive integer expected, got "+t)}function yn(t,...e){if(!xs(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 Df(t){if(typeof t!="function"||typeof t.create!="function")throw new Error("Hash should be wrapped by utils.createHasher");Eu(t.outputLen),Eu(t.blockLen)}function Nc(t,e=!0){if(t.destroyed)throw new Error("Hash instance has been destroyed");if(e&&t.finished)throw new Error("Hash#digest() has already been called")}function Rx(t,e){yn(t);let r=e.outputLen;if(t.length<r)throw new Error("digestInto() expects output buffer of length at least "+r)}function Fn(...t){for(let e=0;e<t.length;e++)t[e].fill(0)}function kf(t){return new DataView(t.buffer,t.byteOffset,t.byteLength)}function gn(t,e){return t<<32-e|t>>>e}function vu(t,e){return t<<e|t>>>32-e>>>0}var Ux=typeof Uint8Array.from([]).toHex=="function"&&typeof Uint8Array.fromHex=="function",QB=Array.from({length:256},(t,e)=>e.toString(16).padStart(2,"0"));function Mt(t){if(yn(t),Ux)return t.toHex();let e="";for(let r=0;r<t.length;r++)e+=QB[t[r]];return e}var Si={_0:48,_9:57,A:65,F:70,a:97,f:102};function Bx(t){if(t>=Si._0&&t<=Si._9)return t-Si._0;if(t>=Si.A&&t<=Si.F)return t-(Si.A-10);if(t>=Si.a&&t<=Si.f)return t-(Si.a-10)}function Br(t){if(typeof t!="string")throw new Error("hex string expected, got "+typeof t);if(Ux)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=Bx(t.charCodeAt(o)),c=Bx(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 Es(t){if(typeof t!="string")throw new Error("string expected");return new Uint8Array(new TextEncoder().encode(t))}function Su(t){return typeof t=="string"&&(t=Es(t)),yn(t),t}function ht(...t){let e=0;for(let n=0;n<t.length;n++){let i=t[n];yn(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 kc=class{};function Nf(t){let e=n=>t().update(Su(n)).digest(),r=t();return e.outputLen=r.outputLen,e.blockLen=r.blockLen,e.create=()=>t(),e}function Rr(t=32){if(bs&&typeof bs.getRandomValues=="function")return bs.getRandomValues(new Uint8Array(t));if(bs&&typeof bs.randomBytes=="function")return Uint8Array.from(bs.randomBytes(t));throw new Error("crypto.getRandomValues must be defined")}l();l();l();l();l();function e8(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 my(t,e,r){return t&e^~t&r}function wy(t,e,r){return t&e^t&r^e&r}var Cc=class extends kc{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=kf(this.buffer)}update(e){Nc(this),e=Su(e),yn(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=kf(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){Nc(this),Rx(e,this),this.finished=!0;let{buffer:r,view:n,blockLen:i,isLE:o}=this,{pos:s}=this;r[s++]=128,Fn(this.buffer.subarray(s)),this.padOffset>i-s&&(this.process(n,0),s=0);for(let f=s;f<i;f++)r[f]=0;e8(n,i-8,BigInt(this.length*8),o),this.process(n,0);let c=kf(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()}},Ai=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]);var t8=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]),mo=new Uint32Array(64),by=class extends Cc{constructor(e=32){super(64,e,8,!1),this.A=Ai[0]|0,this.B=Ai[1]|0,this.C=Ai[2]|0,this.D=Ai[3]|0,this.E=Ai[4]|0,this.F=Ai[5]|0,this.G=Ai[6]|0,this.H=Ai[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)mo[f]=e.getUint32(r,!1);for(let f=16;f<64;f++){let h=mo[f-15],p=mo[f-2],g=gn(h,7)^gn(h,18)^h>>>3,y=gn(p,17)^gn(p,19)^p>>>10;mo[f]=y+mo[f-7]+g+mo[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=gn(c,6)^gn(c,11)^gn(c,25),p=d+h+my(c,a,u)+t8[f]+mo[f]|0,y=(gn(n,2)^gn(n,13)^gn(n,22))+wy(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(){Fn(mo)}destroy(){this.set(0,0,0,0,0,0,0,0),Fn(this.buffer)}};var ke=Nf(()=>new by);l();l();l();var Cf=class extends kc{constructor(e,r){super(),this.finished=!1,this.destroyed=!1,Df(e);let n=Su(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),Fn(o)}update(e){return Nc(this),this.iHash.update(e),this}digestInto(e){Nc(this),yn(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()}},xy=(t,e,r)=>new Cf(t,e).update(r).digest();xy.create=(t,e)=>new Cf(t,e);l();var Sy=BigInt(0),vy=BigInt(1);function Au(t,e=""){if(typeof t!="boolean"){let r=e&&`"${e}"`;throw new Error(r+"expected boolean, got type="+typeof t)}return t}function wo(t,e,r=""){let n=xs(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 Tu(t){let e=t.toString(16);return e.length&1?"0"+e:e}function Ox(t){if(typeof t!="string")throw new Error("hex string expected, got "+typeof t);return t===""?Sy:BigInt("0x"+t)}function Ti(t){return Ox(Mt(t))}function Ay(t){return yn(t),Ox(Mt(Uint8Array.from(t).reverse()))}function Lc(t,e){return Br(t.toString(16).padStart(e*2,"0"))}function Ty(t,e){return Lc(t,e).reverse()}function ct(t,e,r){let n;if(typeof e=="string")try{n=Br(e)}catch(o){throw new Error(t+" must be hex string or Uint8Array, cause: "+o)}else if(xs(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 bo(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 Ey=t=>typeof t=="bigint"&&Sy<=t;function _u(t,e,r){return Ey(t)&&Ey(e)&&Ey(r)&&e<=t&&t<r}function Dx(t,e,r,n){if(!_u(e,r,n))throw new Error("expected valid "+t+": "+r+" <= n < "+n+", got "+e)}function Lf(t){let e;for(e=0;t>Sy;t>>=vy,e+=1);return e}var xo=t=>(vy<<BigInt(t))-vy;function kx(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 ht(...g)};return(p,g)=>{a(),d(p);let y;for(;!(y=g(f()));)d();return a(),y}}function Iu(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 _y(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 rr=BigInt(0),Wt=BigInt(1),vs=BigInt(2),Lx=BigInt(3),Px=BigInt(4),Mx=BigInt(5),r8=BigInt(7),Kx=BigInt(8),n8=BigInt(9),$x=BigInt(16);function Ur(t,e){let r=t%e;return r>=rr?r:e+r}function Or(t,e,r){let n=t;for(;e-- >rr;)n*=n,n%=r;return n}function Nx(t,e){if(t===rr)throw new Error("invert: expected non-zero number");if(e<=rr)throw new Error("invert: expected positive modulus, got "+e);let r=Ur(t,e),n=e,i=rr,o=Wt,s=Wt,c=rr;for(;r!==rr;){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!==Wt)throw new Error("invert: does not exist");return Ur(i,e)}function Iy(t,e,r){if(!t.eql(t.sqr(e),r))throw new Error("Cannot find square root")}function Hx(t,e){let r=(t.ORDER+Wt)/Px,n=t.pow(e,r);return Iy(t,n,e),n}function i8(t,e){let r=(t.ORDER-Mx)/Kx,n=t.mul(e,vs),i=t.pow(n,r),o=t.mul(e,i),s=t.mul(t.mul(o,vs),i),c=t.mul(o,t.sub(s,t.ONE));return Iy(t,c,e),c}function o8(t){let e=Eo(t),r=Vx(t),n=r(e,e.neg(e.ONE)),i=r(e,n),o=r(e,e.neg(n)),s=(t+r8)/$x;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 Iy(c,x,a),x}}function Vx(t){if(t<Lx)throw new Error("sqrt is not defined for small field");let e=t-Wt,r=0;for(;e%vs===rr;)e/=vs,r++;let n=vs,i=Eo(t);for(;Cx(i,n)===1;)if(n++>1e3)throw new Error("Cannot find square root: probably non-prime P");if(r===1)return Hx;let o=i.pow(n,e),s=(e+Wt)/vs;return function(a,u){if(a.is0(u))return u;if(Cx(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=Wt<<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 s8(t){return t%Px===Lx?Hx:t%Kx===Mx?i8:t%$x===n8?o8(t):Vx(t)}var c8=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function By(t){let e={ORDER:"bigint",MASK:"bigint",BYTES:"number",BITS:"number"},r=c8.reduce((n,i)=>(n[i]="function",n),e);return Iu(t,r),t}function a8(t,e,r){if(r<rr)throw new Error("invalid exponent, negatives unsupported");if(r===rr)return t.ONE;if(r===Wt)return e;let n=t.ONE,i=e;for(;r>rr;)r&Wt&&(n=t.mul(n,i)),i=t.sqr(i),r>>=Wt;return n}function Pf(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 Cx(t,e){let r=(t.ORDER-Wt)/vs,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 Mf(t,e){e!==void 0&&Eu(e);let r=e!==void 0?e:t.toString(2).length,n=Math.ceil(r/8);return{nBitLength:r,nByteLength:n}}function Eo(t,e,r=!1,n={}){if(t<=rr)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}=Mf(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:xo(a),ZERO:rr,ONE:Wt,allowedLengths:c,create:h=>Ur(h,t),isValid:h=>{if(typeof h!="bigint")throw new Error("invalid field element: expected bigint, got "+typeof h);return rr<=h&&h<t},is0:h=>h===rr,isValidNot0:h=>!f.is0(h)&&f.isValid(h),isOdd:h=>(h&Wt)===Wt,neg:h=>Ur(-h,t),eql:(h,p)=>h===p,sqr:h=>Ur(h*h,t),add:(h,p)=>Ur(h+p,t),sub:(h,p)=>Ur(h-p,t),mul:(h,p)=>Ur(h*p,t),pow:(h,p)=>a8(f,h,p),div:(h,p)=>Ur(h*Nx(p,t),t),sqrN:h=>h*h,addN:(h,p)=>h+p,subN:(h,p)=>h-p,mulN:(h,p)=>h*p,inv:h=>Nx(h,t),sqrt:o||(h=>(d||(d=s8(t)),d(f,h))),toBytes:h=>r?Ty(h,u):Lc(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?Ay(h):Ti(h);if(s&&(g=Ur(g,t)),!p&&!f.isValid(g))throw new Error("invalid field element: outside of range 0..ORDER");return g},invertBatch:h=>Pf(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 Ry(t){let e=qx(t);return e+Math.ceil(e/2)}function Kf(t,e,r=!1){let n=t.length,i=qx(e),o=Ry(e);if(n<16||n<o||n>1024)throw new Error("expected "+o+"-1024 bytes of input, got "+n);let s=r?Ay(t):Ti(t),c=Ur(s,e-Wt)+Wt;return r?Ty(c,i):Lc(c,i)}var Pc=BigInt(0),Ss=BigInt(1);function Bu(t,e){let r=e.negate();return t?r:e}function Hf(t,e){let r=Pf(t.Fp,e.map(n=>n.Z));return e.map((n,i)=>t.fromAffine(n.toAffine(r[i])))}function Gx(t,e){if(!Number.isSafeInteger(t)||t<=0||t>e)throw new Error("invalid window size, expected [1.."+e+"], got W="+t)}function Uy(t,e){Gx(t,e);let r=Math.ceil(e/t)+1,n=2**(t-1),i=2**t,o=xo(t),s=BigInt(t);return{windows:r,windowSize:n,mask:o,maxNumber:i,shiftBy:s}}function Fx(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+=Ss);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 u8(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 d8(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 Oy=new WeakMap,zx=new WeakMap;function Dy(t){return zx.get(t)||1}function jx(t){if(t!==Pc)throw new Error("invalid wNAF")}var $f=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>Pc;)r&Ss&&(n=n.add(i)),i=i.double(),r>>=Ss;return n}precomputeWindow(e,r){let{windows:n,windowSize:i}=Uy(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=Uy(e,this.bits);for(let c=0;c<s.windows;c++){let{nextN:a,offset:u,isZero:d,isNeg:f,isNegF:h,offsetF:p}=Fx(n,c,s);n=a,d?o=o.add(Bu(h,r[p])):i=i.add(Bu(f,r[u]))}return jx(n),{p:i,f:o}}wNAFUnsafe(e,r,n,i=this.ZERO){let o=Uy(e,this.bits);for(let s=0;s<o.windows&&n!==Pc;s++){let{nextN:c,offset:a,isZero:u,isNeg:d}=Fx(n,s,o);if(n=c,!u){let f=r[a];i=i.add(d?f.negate():f)}}return jx(n),i}getPrecomputes(e,r,n){let i=Oy.get(r);return i||(i=this.precomputeWindow(r,e),e!==1&&(typeof n=="function"&&(i=n(i)),Oy.set(r,i))),i}cached(e,r,n){let i=Dy(e);return this.wNAF(i,this.getPrecomputes(i,e,n),r)}unsafe(e,r,n,i){let o=Dy(e);return o===1?this._unsafeLadder(e,r,i):this.wNAFUnsafe(o,this.getPrecomputes(o,e,n),r,i)}createCache(e,r){Gx(r,this.bits),zx.set(e,r),Oy.delete(e)}hasCache(e){return Dy(e)!==1}};function Yx(t,e,r,n){let i=e,o=t.ZERO,s=t.ZERO;for(;r>Pc||n>Pc;)r&Ss&&(o=o.add(i)),n&Ss&&(s=s.add(i)),i=i.double(),r>>=Ss,n>>=Ss;return{p1:o,p2:s}}function Jx(t,e,r,n){u8(r,t),d8(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=Lf(BigInt(i)),a=1;c>12?a=c-3:c>4?a=c-2:c>0&&(a=2);let u=xo(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 Wx(t,e,r){if(e){if(e.ORDER!==t)throw new Error("Field.ORDER must match order: Fp == p, Fn == n");return By(e),e}else return Eo(t,{isLE:r})}function Xx(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>Pc))throw new Error(`CURVE.${a} must be positive bigint`)}let i=Wx(e.p,r.Fp,n),o=Wx(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 Zx=(t,e)=>(t+(t>=0?e:-e)/Qx)/e;function f8(t,e,r){let[[n,i],[o,s]]=e,c=Zx(s*t,r),a=Zx(-i*t,r),u=t-c*n-a*o,d=-c*i-a*s,f=u<Ii,h=d<Ii;f&&(u=-u),h&&(d=-d);let p=xo(Math.ceil(Lf(r)/2))+Mc;if(u<Ii||u>=p||d<Ii||d>=p)throw new Error("splitScalar (endomorphism): failed, k="+t);return{k1neg:f,k1:u,k2neg:h,k2:d}}function Ny(t){if(!["compact","recovered","der"].includes(t))throw new Error('Signature format must be "compact", "recovered", or "der"');return t}function ky(t,e){let r={};for(let n of Object.keys(e))r[n]=t[n]===void 0?e[n]:t[n];return Au(r.lowS,"lowS"),Au(r.prehash,"prehash"),r.format!==void 0&&Ny(r.format),r}var Cy=class extends Error{constructor(e=""){super(e)}},_i={Err:Cy,_tlv:{encode:(t,e)=>{let{Err:r}=_i;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=Tu(n);if(i.length/2&128)throw new r("tlv.encode: long form length too big");let o=n>127?Tu(i.length/2|128):"";return Tu(t)+o+i+e},decode(t,e){let{Err:r}=_i,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}=_i;if(t<Ii)throw new e("integer: negative integers are not allowed");let r=Tu(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}=_i;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 Ti(t)}},toSig(t){let{Err:e,_int:r,_tlv:n}=_i,i=ct("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}=_i,n=e.encode(2,r.encode(t.r)),i=e.encode(2,r.encode(t.s)),o=n+i;return e.encode(48,o)}},Ii=BigInt(0),Mc=BigInt(1),Qx=BigInt(2),Vf=BigInt(3),l8=BigInt(4);function vo(t,e){let{BYTES:r}=t,n;if(typeof e=="bigint")n=e;else{let i=ct("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 h8(t,e={}){let r=Xx("weierstrass",t,e),{Fp:n,Fn:i}=r,o=r.CURVE,{h:s,n:c}=o;Iu(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=tE(n,i);function d(){if(!n.isOdd)throw new Error("compression is not supported: Field does not have .isOdd()")}function f(G,_,D){let{x:E,y:U}=_.toAffine(),L=n.toBytes(E);if(Au(D,"isCompressed"),D){d();let N=!n.isOdd(U);return ht(eE(N),L)}else return ht(Uint8Array.of(4),L,n.toBytes(U))}function h(G){wo(G,void 0,"Point");let{publicKey:_,publicKeyUncompressed:D}=u,E=G.length,U=G[0],L=G.subarray(1);if(E===_&&(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=${_} or uncompressed=${D}`)}let p=e.toBytes||f,g=e.fromBytes||h;function y(G){let _=n.sqr(G),D=n.mul(_,G);return n.add(n.add(D,n.mul(G,o.a)),o.b)}function x(G,_){let D=n.sqr(_),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,Vf),l8),I=n.mul(n.sqr(o.b),BigInt(27));if(n.is0(n.add(S,I)))throw new Error("bad curve params: a or b");function A(G,_,D=!1){if(!n.isValid(_)||D&&n.is0(_))throw new Error(`bad point coordinate ${G}`);return _}function O(G){if(!(G instanceof $))throw new Error("ProjectivePoint expected")}function T(G){if(!a||!a.basises)throw new Error("no endo");return f8(G,a.basises,i.ORDER)}let M=_y((G,_)=>{let{X:D,Y:E,Z:U}=G;if(n.eql(U,n.ONE))return{x:D,y:E};let L=G.is0();_==null&&(_=L?n.ONE:n.inv(U));let N=n.mul(D,_),R=n.mul(E,_),C=n.mul(U,_);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=_y(G=>{if(G.is0()){if(e.allowInfinityPoint&&!n.is0(G.Y))return;throw new Error("bad point: ZERO")}let{x:_,y:D}=G.toAffine();if(!n.isValid(_)||!n.isValid(D))throw new Error("bad point: x or y not field elements");if(!x(_,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,_,D,E,U){return D=new $(n.mul(D.X,G),D.Y,D.Z),_=Bu(E,_),D=Bu(U,D),_.add(D)}class ${constructor(_,D,E){this.X=A("x",_),this.Y=A("y",D,!0),this.Z=A("z",E),Object.freeze(this)}static CURVE(){return o}static fromAffine(_){let{x:D,y:E}=_||{};if(!_||!n.isValid(D)||!n.isValid(E))throw new Error("invalid affine point");if(_ instanceof $)throw new Error("projective point not allowed");return n.is0(D)&&n.is0(E)?$.ZERO:new $(D,E,n.ONE)}static fromBytes(_){let D=$.fromAffine(g(wo(_,void 0,"point")));return D.assertValidity(),D}static fromHex(_){return $.fromBytes(ct("pointHex",_))}get x(){return this.toAffine().x}get y(){return this.toAffine().y}precompute(_=8,D=!0){return Q.createCache(this,_),D||this.multiply(Vf),this}assertValidity(){q(this)}hasEvenY(){let{y:_}=this.toAffine();if(!n.isOdd)throw new Error("Field doesn't support isOdd");return!n.isOdd(_)}equals(_){O(_);let{X:D,Y:E,Z:U}=this,{X:L,Y:N,Z:R}=_,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:_,b:D}=o,E=n.mul(D,Vf),{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(_,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(_,z),W=n.sub(V,z),W=n.mul(_,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(_){O(_);let{X:D,Y:E,Z:U}=this,{X:L,Y:N,Z:R}=_,C=n.ZERO,P=n.ZERO,V=n.ZERO,J=o.a,z=n.mul(o.b,Vf),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(_){return this.add(_.negate())}is0(){return this.equals($.ZERO)}multiply(_){let{endo:D}=e;if(!i.isValidNot0(_))throw new Error("invalid scalar: out of range");let E,U,L=N=>Q.cached(this,N,R=>Hf($,R));if(D){let{k1neg:N,k1:R,k2neg:C,k2:P}=T(_),{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(_);E=N,U=R}return Hf($,[E,U])[0]}multiplyUnsafe(_){let{endo:D}=e,E=this;if(!i.isValid(_))throw new Error("invalid scalar: out of range");if(_===Ii||E.is0())return $.ZERO;if(_===Mc)return E;if(Q.hasCache(this))return this.multiply(_);if(D){let{k1neg:U,k1:L,k2neg:N,k2:R}=T(_),{p1:C,p2:P}=Yx($,E,L,R);return j(D.beta,C,P,U,N)}else return Q.unsafe(E,_)}multiplyAndAddUnsafe(_,D,E){let U=this.multiplyUnsafe(D).add(_.multiplyUnsafe(E));return U.is0()?void 0:U}toAffine(_){return M(this,_)}isTorsionFree(){let{isTorsionFree:_}=e;return s===Mc?!0:_?_($,this):Q.unsafe(this,c).is0()}clearCofactor(){let{clearCofactor:_}=e;return s===Mc?this:_?_($,this):this.multiplyUnsafe(s)}isSmallOrder(){return this.multiplyUnsafe(s).is0()}toBytes(_=!0){return Au(_,"isCompressed"),this.assertValidity(),p($,this,_)}toHex(_=!0){return Mt(this.toBytes(_))}toString(){return`<Point ${this.is0()?"ZERO":this.toHex()}>`}get px(){return this.X}get py(){return this.X}get pz(){return this.Z}toRawBytes(_=!0){return this.toBytes(_)}_setWindowSize(_){this.precompute(_)}static normalizeZ(_){return Hf($,_)}static msm(_,D){return Jx($,i,_,D)}static fromPrivateKey(_){return $.BASE.multiply(vo(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 $f($,e.endo?Math.ceil(Z/2):Z);return $.BASE.precompute(8),$}function eE(t){return Uint8Array.of(t?2:3)}function tE(t,e){return{secretKey:e.BYTES,publicKey:1+t.BYTES,publicKeyUncompressed:1+2*t.BYTES,publicKeyHasPrefix:!0,signature:2*e.BYTES}}function p8(t,e={}){let{Fn:r}=t,n=e.randomBytes||Rr,i=Object.assign(tE(t.Fp,r),{seed:Ry(r.ORDER)});function o(p){try{return!!vo(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 Kf(wo(p,i.seed,"seed"),r.ORDER)}function a(p,g=!0){return t.BASE.multiply(vo(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=ct("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=vo(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=>vo(r,p),precompute(p=8,g=t.BASE){return g.precompute(p,!1)}},lengths:i})}function y8(t,e,r={}){Df(e),Iu(r,{},{hmac:"function",lowS:"boolean",randomBytes:"function",bits2int:"function",bits2int_modN:"function"});let n=r.randomBytes||Rr,i=r.hmac||((D,...E)=>xy(e,D,ht(...E))),{Fp:o,Fn:s}=t,{ORDER:c,BITS:a}=s,{keygen:u,getPublicKey:d,getSharedSecret:f,utils:h,lengths:p}=p8(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>>Mc;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 I(D,E){Ny(E);let U=p.signature,L=E==="compact"?U:E==="recovered"?U+1:void 0;return wo(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){I(E,U);let L;if(U==="der"){let{r:P,s:V}=_i.toSig(wo(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(Br(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*Qx<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(ht(eE((R&1)===0),V)),z=s.inv(P),W=T(ct("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(Ny(E),E==="der")return Br(_i.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 ht(Uint8Array.of(this.recovery),U,L)}return ht(U,L)}toHex(E){return Mt(this.toBytes(E))}assertValidity(){}static fromCompact(E){return A.fromBytes(ct("sig",E),"compact")}static fromDER(E){return A.fromBytes(ct("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 Mt(this.toBytes("der"))}toCompactRawBytes(){return this.toBytes("compact")}toCompactHex(){return Mt(this.toBytes("compact"))}}let O=r.bits2int||function(E){if(E.length>8192)throw new Error("input is too large");let U=Ti(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=xo(a);function q(D){return Dx("num < 2^"+a,D,Ii,M),s.toBytes(D)}function j(D,E){return wo(D,void 0,"message"),E?wo(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}=ky(U,g);D=j(D,N);let C=T(D),P=vo(s,E),V=[q(P),q(C)];if(R!=null&&R!==!1){let Y=R===!0?n(p.secretKey):R;V.push(ct("extraEntropy",Y))}let J=ht(...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===Ii)return;let Oe=s.create(ue*s.create(z+ce*P));if(Oe===Ii)return;let Me=(ee.x===ce?0:2)|Number(ee.y&Mc),Je=Oe;return L&&x(Oe)&&(Je=s.neg(Oe),Me^=1),new A(ce,Je,Me)}return{seed:J,k2sig:W}}function Z(D,E,U={}){D=ct("message",D);let{seed:L,k2sig:N}=$(D,E,U);return kx(e.outputLen,s.BYTES,i)(L,N)}function Q(D){let E,U=typeof D=="string"||xs(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(ct("sig",D),"der")}catch(N){if(!(N instanceof _i.Err))throw N}if(!E)try{E=A.fromBytes(ct("sig",D),"compact")}catch{return!1}}return E||!1}function G(D,E,U,L={}){let{lowS:N,prehash:R,format:C}=ky(L,g);if(U=ct("publicKey",U),E=j(ct("message",E),R),"strict"in L)throw new Error("options.strict was renamed to lowS");let P=C===void 0?Q(D):A.fromBytes(ct("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 _(D,E,U={}){let{prehash:L}=ky(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:_,Signature:A,hash:e})}function g8(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=Eo(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 m8(t){let{CURVE:e,curveOpts:r}=g8(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 w8(t,e){let r=e.Point;return Object.assign({},e,{ProjectivePoint:r,CURVE:Object.assign({},t,Mf(r.Fn.ORDER,r.Fn.BITS))})}function rE(t){let{CURVE:e,curveOpts:r,hash:n,ecdsaOpts:i}=m8(t),o=h8(e,r),s=y8(o,n,i);return w8(t,s)}function nE(t,e){let r=n=>rE({...t,hash:n});return{...r(e),create:r}}var Kc={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")]]},x8=BigInt(0),iE=BigInt(1),Ly=BigInt(2);function E8(t){let e=Kc.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=Or(d,r,e)*d%e,h=Or(f,r,e)*d%e,p=Or(h,Ly,e)*u%e,g=Or(p,i,e)*p%e,y=Or(g,o,e)*g%e,x=Or(y,c,e)*y%e,S=Or(x,a,e)*x%e,I=Or(S,c,e)*y%e,A=Or(I,r,e)*d%e,O=Or(A,s,e)*g%e,T=Or(O,n,e)*u%e,M=Or(T,Ly,e);if(!qf.eql(qf.sqr(M),t))throw new Error("Cannot find square root");return M}var qf=Eo(Kc.p,{sqrt:E8}),So=nE({...Kc,Fp:qf,lowS:!0,endo:b8},ke),oE={};function Ff(t,...e){let r=oE[t];if(r===void 0){let n=ke(Es(t));r=ht(n,n),oE[t]=r}return ke(ht(r,...e))}var My=t=>t.toBytes(!0).slice(1),$c=So.Point,Ky=t=>t%Ly===x8;function Py(t){let{Fn:e,BASE:r}=$c,n=vo(e,t),i=r.multiply(n);return{scalar:Ky(i.y)?n:e.neg(n),bytes:My(i)}}function cE(t){let e=qf;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);Ky(i)||(i=e.neg(i));let o=$c.fromAffine({x:t,y:i});return o.assertValidity(),o}var Ru=Ti;function aE(...t){return $c.Fn.create(Ru(Ff("BIP0340/challenge",...t)))}function sE(t){return Py(t).bytes}function v8(t,e,r=Rr(32)){let{Fn:n}=$c,i=ct("message",t),{bytes:o,scalar:s}=Py(e),c=ct("auxRand",r,32),a=n.toBytes(s^Ru(Ff("BIP0340/aux",c))),u=Ff("BIP0340/nonce",a,o,i),{bytes:d,scalar:f}=Py(u),h=aE(d,o,i),p=new Uint8Array(64);if(p.set(d,0),p.set(n.toBytes(n.create(f+h*s)),32),!uE(p,i,o))throw new Error("sign: Invalid signature produced");return p}function uE(t,e,r){let{Fn:n,BASE:i}=$c,o=ct("signature",t,64),s=ct("message",e),c=ct("publicKey",r,32);try{let a=cE(Ru(c)),u=Ru(o.subarray(0,32));if(!_u(u,iE,Kc.p))return!1;let d=Ru(o.subarray(32,64));if(!_u(d,iE,Kc.n))return!1;let f=aE(n.toBytes(u),My(a),s),h=i.multiplyUnsafe(d).add(a.multiplyUnsafe(n.neg(f))),{x:p,y:g}=h.toAffine();return!(h.is0()||!Ky(g)||p!==u)}catch{return!1}}var Dr=(()=>{let r=(i=Rr(48))=>Kf(i,Kc.n);So.utils.randomSecretKey;function n(i){let o=r(i);return{secretKey:o,publicKey:sE(o)}}return{keygen:n,getPublicKey:sE,sign:v8,verify:uE,Point:$c,utils:{randomSecretKey:r,randomPrivateKey:r,taggedHash:Ff,lift_x:cE,pointToBytes:My,numberToBytesBE:Lc,bytesToNumberBE:Ti,mod:Ur},lengths:{secretKey:32,publicKey:32,publicKeyHasPrefix:!1,signature:32*2,seed:48}}})();l();var S8=Uint8Array.from([7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8]),fE=Uint8Array.from(new Array(16).fill(0).map((t,e)=>e)),A8=fE.map(t=>(9*t+5)%16),lE=(()=>{let r=[[fE],[A8]];for(let n=0;n<4;n++)for(let i of r)i.push(i[n].map(o=>S8[o]));return r})(),hE=lE[0],pE=lE[1],yE=[[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)),T8=hE.map((t,e)=>t.map(r=>yE[e][r])),_8=pE.map((t,e)=>t.map(r=>yE[e][r])),I8=Uint32Array.from([0,1518500249,1859775393,2400959708,2840853838]),B8=Uint32Array.from([1352829926,1548603684,1836072691,2053994217,0]);function dE(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),$y=class extends Cc{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 g=4-p,y=I8[p],x=B8[p],S=hE[p],I=pE[p],A=T8[p],O=_8[p];for(let T=0;T<16;T++){let M=vu(n+dE(p,o,c,u)+jf[S[T]]+y,A[T])+f|0;n=f,f=u,u=vu(c,10)|0,c=o,o=M}for(let T=0;T<16;T++){let M=vu(i+dE(g,s,a,d)+jf[I[T]]+x,O[T])+h|0;i=h,h=d,d=vu(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(){Fn(jf)}destroy(){this.destroyed=!0,Fn(this.buffer),this.set(0,0,0,0,0)}},gE=Nf(()=>new $y);l();l();function Hc(t){return t instanceof Uint8Array||ArrayBuffer.isView(t)&&t.constructor.name==="Uint8Array"}function R8(t,...e){if(!Hc(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 EE(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 qy(t){if(typeof t!="function")throw new Error("function expected");return!0}function Vc(t,e){if(typeof e!="string")throw new Error(`${t}: string expected`);return!0}function Ou(t){if(!Number.isSafeInteger(t))throw new Error(`invalid integer: ${t}`)}function Gf(t){if(!Array.isArray(t))throw new Error("array expected")}function vE(t,e){if(!EE(!0,e))throw new Error(`${t}: array of strings expected`)}function Fy(t,e){if(!EE(!1,e))throw new Error(`${t}: array of numbers expected`)}function Du(...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 Yf(t){let e=typeof t=="string"?t.split(""):t,r=e.length;vE("alphabet",e);let n=new Map(e.map((i,o)=>[i,o]));return{encode:i=>(Gf(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=>(Gf(i),i.map(o=>{Vc("alphabet.decode",o);let s=n.get(o);if(s===void 0)throw new Error(`Unknown letter: "${o}". Allowed: ${t}`);return s}))}}function Jf(t=""){return Vc("join",t),{encode:e=>(vE("join.decode",e),e.join(t)),decode:e=>(Vc("join.decode",e),e.split(t))}}function U8(t){return qy(t),{encode:e=>e,decode:e=>t(e)}}function mE(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(Gf(t),!t.length)return[];let n=0,i=[],o=Array.from(t,c=>{if(Ou(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 SE=(t,e)=>e===0?t:SE(e,t%e),zf=(t,e)=>t+(e-SE(t,e)),Wf=(()=>{let t=[];for(let e=0;e<40;e++)t.push(2**e);return t})();function Hy(t,e,r,n){if(Gf(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=Wf[e],c=Wf[r]-1,a=[];for(let u of t){if(Ou(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=Wf[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 O8(t){Ou(t);let e=2**8;return{encode:r=>{if(!Hc(r))throw new Error("radix.encode input should be Uint8Array");return mE(Array.from(r),e,t)},decode:r=>(Fy("radix.decode",r),Uint8Array.from(mE(r,t,e)))}}function jy(t,e=!1){if(Ou(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(!Hc(r))throw new Error("radix2.encode input should be Uint8Array");return Hy(Array.from(r),8,t,!e)},decode:r=>(Fy("radix2.decode",r),Uint8Array.from(Hy(r,t,8,e)))}}function wE(t){return qy(t),function(...e){try{return t.apply(null,e)}catch{}}}function D8(t,e){return Ou(t),qy(e),{encode(r){if(!Hc(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(!Hc(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 qc=Du(jy(6),Yf("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_"),Jf("")),k8=t=>Du(O8(58),Yf(t),Jf("")),Xf=k8("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz");var AE=t=>Du(D8(4,e=>t(t(e))),Xf);var Vy=Du(Yf("qpzry9x8gf2tvdw0s3jn54khce6mua7l"),Jf("")),bE=[996825010,642813549,513874426,1027748829,705979059];function Uu(t){let e=t>>25,r=(t&33554431)<<5;for(let n=0;n<bE.length;n++)(e>>n&1)===1&&(r^=bE[n]);return r}function xE(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=Uu(i)^s>>5}i=Uu(i);for(let o=0;o<n;o++)i=Uu(i)^t.charCodeAt(o)&31;for(let o of e)i=Uu(i)^o;for(let o=0;o<6;o++)i=Uu(i);return i^=r,Vy.encode(Hy([i%Wf[30]],30,5,!1))}function TE(t){let e=t==="bech32"?1:734539939,r=jy(5),n=r.decode,i=r.encode,o=wE(n);function s(f,h,p=90){Vc("bech32.encode prefix",f),Hc(h)&&(h=Array.from(h)),Fy("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=xE(x,h,e);return`${x}1${Vy.encode(h)}${S}`}function c(f,h=90){Vc("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 I=Vy.decode(S).slice(0,-6),A=xE(x,I,e);if(!S.endsWith(A))throw new Error(`Invalid checksum in ${f}: expected "${A}"`);return{prefix:x,words:I}}let a=wE(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 Zf=TE("bech32"),As=TE("bech32m"),_E={encode:t=>new TextDecoder().decode(t),decode:t=>new TextEncoder().encode(t)},N8=typeof Uint8Array.from([]).toHex=="function"&&typeof Uint8Array.fromHex=="function",C8={encode(t){return R8(t),t.toHex()},decode(t){return Vc("hex",t),Uint8Array.fromHex(t)}},ve=N8?C8:Du(jy(4),Yf("0123456789abcdef"),Jf(""),U8(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 He=new Uint8Array,Yy=new Uint8Array([0]);function Fc(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 L8(...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 Jy=t=>new DataView(t.buffer,t.byteOffset,t.byteLength);function jc(t){return Object.prototype.toString.call(t)==="[object Object]"}function jn(t){return Number.isSafeInteger(t)}var Qf={equalBytes:Fc,isBytes:Jr,isCoder:kr,checkBounds:BE,concatBytes:L8,createView:Jy,isPlainObject:jc},IE=t=>{if(t!==null&&typeof t!="string"&&!kr(t)&&!Jr(t)&&!jn(t))throw new Error(`lengthCoder: expected null | number | Uint8Array | CoderType, got ${t} (${typeof t})`);return{encodeStream(e,r){if(t===null)return;if(kr(t))return t.encodeStream(e,r);let n;if(typeof t=="number"?n=t:typeof t=="string"&&(n=Bi.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(kr(t)?r=Number(t.decodeStream(e)):typeof t=="number"?r=t:typeof t=="string"&&(r=Bi.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))}},Bi={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}(${Bi.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}},Wy=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=Jy(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 Bi.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: ${ve.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})[${ve.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: ${ve.encode(this.data.slice(this.pos))}`)}}err(e){return Bi.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(Fc(e,this.data.subarray(n,n+e.length)))return n}}},Gy=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=Jy(this.viewBuf)}pushObj(e,r){return Bi.pushObj(this.stack,e,r)}writeView(e,r){if(this.finished)throw this.err("buffer: finished");if(!jn(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 Bi.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 BE(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 RE(t){return{encodeStream:t.encodeStream,decodeStream:t.decodeStream,size:t.size,encode:e=>{let r=new Gy;return t.encodeStream(r,e),r.finish()},decode:(e,r={})=>{let n=new Wy(e,r),i=t.decodeStream(n);return n.finish(),i}}}function Gt(t,e){if(!kr(t))throw new Error(`validate: invalid inner value ${t}`);if(typeof e!="function")throw new Error("validate: fn should be function");return RE({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 zt=t=>{let e=RE(t);return t.validate?Gt(e,t.validate):e},el=t=>jc(t)&&typeof t.decode=="function"&&typeof t.encode=="function";function kr(t){return jc(t)&&el(t)&&typeof t.encodeStream=="function"&&typeof t.decodeStream=="function"&&(t.size===void 0||jn(t.size))}function P8(){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(!jc(t))throw new Error(`expected plain object, got ${t}`);return Object.entries(t)}}}var M8={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(!jn(t))throw new Error("element is not a safe integer");return BigInt(t)}};function K8(t){if(!jc(t))throw new Error("plain object expected");return{encode:e=>{if(!jn(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 $8(t,e=!1){if(!jn(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 H8(t){if(!Array.isArray(t))throw new Error(`expected array, got ${typeof t}`);for(let e of t)if(!el(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 UE=t=>{if(!el(t))throw new Error("BaseCoder expected");return{encode:t.decode,decode:t.encode}},Ri={dict:P8,numberBigint:M8,tsEnum:K8,decimal:$8,match:H8,reverse:UE};var Xy=(t,e=!1,r=!1,n=!0)=>{if(!jn(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 zt({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 BE(s,8n*i,!!r),s}})};var OE=Xy(32,!1);var Wc=Xy(8,!0);var DE=Xy(8,!0,!0);var V8=(t,e)=>zt({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}}),ku=(t,e,r)=>{let n=t*8,i=2**(n-1),o=a=>{if(!jn(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(!jn(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 V8(t,{write:r.write,read:r.read,validate:e?o:c})},Be=ku(4,!1,{read:(t,e)=>t.getUint32(e,!0),write:(t,e)=>t.setUint32(0,e,!0)}),kE=ku(4,!1,{read:(t,e)=>t.getUint32(e,!1),write:(t,e)=>t.setUint32(0,e,!1)}),Ao=ku(4,!0,{read:(t,e)=>t.getInt32(e,!0),write:(t,e)=>t.setInt32(0,e,!0)});var Zy=ku(2,!1,{read:(t,e)=>t.getUint16(e,!0),write:(t,e)=>t.setUint16(0,e,!0)});var wn=ku(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=IE(t),n=Jr(t);return zt({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 NE(t,e){if(!kr(e))throw new Error(`prefix: invalid inner value ${e}`);return mn(Fe(t),UE(e))}var tl=(t,e=!1)=>Gt(mn(Fe(t,e),_E),r=>{if(typeof r!="string")throw new Error(`expected string, got ${typeof r}`);return r});var CE=(t,e={isLE:!1,with0x:!1})=>{let r=mn(Fe(t,e.isLE),ve),n=e.with0x;if(typeof n!="boolean")throw new Error(`hex/with0x: expected boolean, got ${typeof n}`);return n&&(r=mn(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 mn(t,e){if(!kr(t))throw new Error(`apply: invalid inner value ${t}`);if(!el(e))throw new Error(`apply: invalid base value ${t}`);return zt({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 LE=(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 zt({size:t.length,encodeStream:(r,n)=>{!!n!==e&&r.bytes(t)},decodeStream:r=>{let n=r.leftBytes>=t.length;return n&&(n=Fc(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 PE(t,e,r){if(!kr(e))throw new Error(`flagged: invalid inner value ${e}`);if(typeof t!="string"&&!kr(e))throw new Error(`flagged: wrong path=${t}`);return zt({encodeStream:(n,i)=>{typeof t=="string"?Bi.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=!!Bi.resolve(n.stack,t):i=t.decodeStream(n),i)return e.decodeStream(n);r&&e.decodeStream(n)}})}function rl(t,e,r=!0){if(!kr(t))throw new Error(`magic: invalid inner value ${t}`);if(typeof r!="boolean")throw new Error(`magic: expected boolean, got ${typeof r}`);return zt({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)&&!Fc(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 ME(t){let e=0;for(let r of t){if(r.size===void 0)return;if(!jn(r.size))throw new Error(`sizeof: wrong element size=${e}`);e+=r.size}return e}function vt(t){if(!jc(t))throw new Error(`struct: expected plain object, got ${t}`);for(let e in t)if(!kr(t[e]))throw new Error(`struct: field ${e} is not CoderType`);return zt({size:ME(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 KE(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(!kr(t[e]))throw new Error(`tuple: field ${e} is not CoderType`);return zt({size:ME(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 Yt(t,e){if(!kr(e))throw new Error(`array: invalid inner value ${e}`);let r=IE(typeof t=="string"?`../${t}`:t);return zt({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(Fc(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(Fc(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 ol=So.ProjectivePoint,il=So.CURVE.n,Ce=Qf.isBytes,Wn=Qf.concatBytes,at=Qf.equalBytes;var Gc=t=>gE(ke(t)),Ui=(...t)=>ke(ke(Wn(...t))),bM=Dr.utils.randomPrivateKey,sl=Dr.getPublicKey,Qy=So.getPublicKey,$E=t=>t.r<il/2n;function HE(t,e,r=!1){let n=So.sign(t,e);if(r&&!$E(n)){let i=new Uint8Array(32),o=0;for(;!$E(n);)if(i.set(Be.encode(o++)),n=So.sign(t,e,{extraEntropy:i}),o>4294967295)throw new Error("lowR counter overflow: report the error")}return n.toDERRawBytes()}var e0=Dr.sign,Nu=Dr.utils.taggedHash,St;(function(t){t[t.ecdsa=0]="ecdsa",t[t.schnorr=1]="schnorr"})(St||(St={}));function To(t,e){let r=t.length;if(e===St.ecdsa){if(r===32)throw new Error("Expected non-Schnorr key");return ol.fromHex(t),t}else if(e===St.schnorr){if(r!==32)throw new Error("Expected 32-byte Schnorr key");return Dr.utils.lift_x(Dr.utils.bytesToNumberBE(t)),t}else throw new Error("Unknown key type")}function VE(t,e){let r=Dr.utils,n=r.taggedHash("TapTweak",t,e),i=r.bytesToNumberBE(n);if(i>=il)throw new Error("tweak higher than curve order");return i}function qE(t,e=Uint8Array.of()){let r=Dr.utils,n=r.bytesToNumberBE(t),i=ol.fromPrivateKey(n),o=i.hasEvenY()?n:r.mod(-n,il),s=r.pointToBytes(i),c=VE(s,e);return r.numberToBytesBE(r.mod(o+c,il),32)}function Cu(t,e){let r=Dr.utils,n=VE(t,e),o=r.lift_x(r.bytesToNumberBE(t)).add(ol.fromPrivateKey(n)),s=o.hasEvenY()?0:1;return[r.pointToBytes(o),s]}var cl=ke(ol.BASE.toRawBytes(!1)),Xr={bech32:"bc",pubKeyHash:0,scriptHash:5,wif:128},t0={bech32:"tb",pubKeyHash:111,scriptHash:196,wif:239};function Lu(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 xt;(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"})(xt||(xt={}));function r0(t=6,e=!1){return zt({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 WE(t,e=4,r=!0){if(typeof t=="number")return t;if(Ce(t))try{let n=r0(e,r).decode(t);return n>Number.MAX_SAFE_INTEGER?void 0:Number(n)}catch{return}}var Ze=zt({encodeStream:(t,e)=>{for(let r of e){if(typeof r=="string"){if(xt[r]===void 0)throw new Error(`Unknown opcode=${r}`);t.byte(xt[r]);continue}else if(typeof r=="number"){if(r===0){t.byte(0);continue}else if(1<=r&&r<=16){t.byte(xt.OP_1-1+r);continue}}if(typeof r=="number"&&(r=r0().encode(BigInt(r))),!Ce(r))throw new Error(`Wrong Script OP=${r} (${typeof r})`);let n=r.length;n<xt.PUSHDATA1?t.byte(n):n<=255?(t.byte(xt.PUSHDATA1),t.byte(n)):n<=65535?(t.byte(xt.PUSHDATA2),t.bytes(Zy.encode(n))):(t.byte(xt.PUSHDATA4),t.bytes(Be.encode(n))),t.bytes(r)}},decodeStream:t=>{let e=[];for(;!t.isEnd();){let r=t.byte();if(xt.OP_0<r&&r<=xt.PUSHDATA4){let n;if(r<xt.PUSHDATA1)n=r;else if(r===xt.PUSHDATA1)n=wn.decodeStream(t);else if(r===xt.PUSHDATA2)n=Zy.decodeStream(t);else if(r===xt.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(xt.OP_1<=r&&r<=xt.OP_16)e.push(r-(xt.OP_1-1));else{let n=xt[r];if(n===void 0)throw new Error(`Unknown opcode=${r.toString(16)}`);e.push(n)}}return e}}),jE={253:[253,2,253n,65535n],254:[254,4,65536n,4294967295n],255:[255,8,4294967296n,18446744073709551615n]},zc=zt({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(jE))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]=jE[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}}),Nr=mn(zc,Ri.numberBigint),hr=Fe(zc),Yc=Yt(Nr,hr),al=t=>Yt(zc,t),GE=vt({txid:Fe(32,!0),index:Be,finalScriptSig:hr,sequence:Be}),Oi=vt({amount:Wc,script:hr}),q8=vt({version:Ao,segwitFlag:LE(new Uint8Array([0,1])),inputs:al(GE),outputs:al(Oi),witnesses:PE("segwitFlag",Yt("inputs/length",Yc)),lockTime:Be});function F8(t){if(t.segwitFlag&&t.witnesses&&!t.witnesses.length)throw new Error("Segwit flag with empty witnesses array");return t}var Di=Gt(q8,F8),Ts=vt({version:Ao,inputs:al(GE),outputs:al(Oi),lockTime:Be});var i0=Gt(Fe(null),t=>To(t,St.ecdsa)),ul=Gt(Fe(32),t=>To(t,St.schnorr)),zE=Gt(Fe(null),t=>{if(t.length!==64&&t.length!==65)throw new Error("Schnorr signature should be 64 or 65 bytes long");return t}),dl=vt({fingerprint:kE,path:Yt(null,Be)}),XE=vt({hashes:Yt(Nr,Fe(32)),der:dl}),j8=Fe(78),W8=vt({pubKey:ul,leafHash:Fe(32)}),G8=vt({version:wn,internalKey:Fe(32),merklePath:Yt(null,Fe(32))}),ki=Gt(G8,t=>{if(t.merklePath.length>128)throw new Error("TaprootControlBlock: merklePath should be of length 0..128 (inclusive)");return t}),z8=Yt(null,vt({depth:wn,version:wn,script:hr})),At=Fe(null),YE=Fe(20),Pu=Fe(32),fl={unsignedTx:[0,!1,Ts,[0],[0],!1],xpub:[1,j8,dl,[],[0,2],!1],txVersion:[2,!1,Be,[2],[2],!1],fallbackLocktime:[3,!1,Be,[],[2],!1],inputCount:[4,!1,Nr,[2],[2],!1],outputCount:[5,!1,Nr,[2],[2],!1],txModifiable:[6,!1,wn,[],[2],!1],version:[251,!1,Be,[],[0,2],!1],proprietary:[252,At,At,[],[0,2],!1]},Mu={nonWitnessUtxo:[0,!1,Di,[],[0,2],!1],witnessUtxo:[1,!1,Oi,[],[0,2],!1],partialSig:[2,i0,At,[],[0,2],!1],sighashType:[3,!1,Be,[],[0,2],!1],redeemScript:[4,!1,At,[],[0,2],!1],witnessScript:[5,!1,At,[],[0,2],!1],bip32Derivation:[6,i0,dl,[],[0,2],!1],finalScriptSig:[7,!1,At,[],[0,2],!1],finalScriptWitness:[8,!1,Yc,[],[0,2],!1],porCommitment:[9,!1,At,[],[0,2],!1],ripemd160:[10,YE,At,[],[0,2],!1],sha256:[11,Pu,At,[],[0,2],!1],hash160:[12,YE,At,[],[0,2],!1],hash256:[13,Pu,At,[],[0,2],!1],txid:[14,!1,Pu,[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,zE,[],[0,2],!1],tapScriptSig:[20,W8,zE,[],[0,2],!1],tapLeafScript:[21,ki,At,[],[0,2],!1],tapBip32Derivation:[22,Pu,XE,[],[0,2],!1],tapInternalKey:[23,!1,ul,[],[0,2],!1],tapMerkleRoot:[24,!1,Pu,[],[0,2],!1],proprietary:[252,At,At,[],[0,2],!1]},ZE=["txid","sequence","index","witnessUtxo","nonWitnessUtxo","finalScriptSig","finalScriptWitness","unknown"],QE=["partialSig","finalScriptSig","finalScriptWitness","tapKeySig","tapScriptSig"],Ku={redeemScript:[0,!1,At,[],[0,2],!1],witnessScript:[1,!1,At,[],[0,2],!1],bip32Derivation:[2,i0,dl,[],[0,2],!1],amount:[3,!1,DE,[2],[2],!0],script:[4,!1,At,[2],[2],!0],tapInternalKey:[5,!1,ul,[],[0,2],!1],tapTree:[6,!1,z8,[],[0,2],!1],tapBip32Derivation:[7,ul,XE,[],[0,2],!1],proprietary:[252,At,At,[],[0,2],!1]},ev=[],JE=Yt(Yy,vt({key:NE(Nr,vt({type:Nr,key:Fe(null)})),value:Fe(Nr)}));function o0(t){let[e,r,n,i,o,s]=t;return{type:e,kc:r,vc:n,reqInc:i,allowInc:o,silentIgnore:s}}var IM=vt({type:Nr,key:Fe(null)});function s0(t){let e={};for(let r in t){let[n,i,o]=t[r];e[n]=[r,i,o]}return zt({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:He},value:u.encode(s)});else{let d=s.map(([f,h])=>[a.encode(f),u.encode(h)]);d.sort((f,h)=>Lu(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)=>Lu(o[0].key,s[0].key));for(let[o,s]of n.unknown)i.push({key:o,value:s})}JE.encodeStream(r,i)},decodeStream:r=>{let n=JE.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=${ve.encode(a)} value=${ve.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 ll=Gt(s0(Mu),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)To(e,St.ecdsa);if(t.bip32Derivation)for(let[e]of t.bip32Derivation)To(e,St.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}),hl=Gt(s0(Ku),t=>{if(t.bip32Derivation)for(let[e]of t.bip32Derivation)To(e,St.ecdsa);return t}),tv=Gt(s0(fl),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}),Y8=vt({magic:rl(tl(new Uint8Array([255])),"psbt"),global:tv,inputs:Yt("global/unsignedTx/inputs/length",ll),outputs:Yt(null,hl)}),J8=vt({magic:rl(tl(new Uint8Array([255])),"psbt"),global:tv,inputs:Yt("global/inputCount",ll),outputs:Yt("global/outputCount",hl)}),BM=vt({magic:rl(tl(new Uint8Array([255])),"psbt"),items:Yt(null,mn(Yt(Yy,KE([CE(Nr),Fe(zc)])),Ri.dict()))});function n0(t,e,r){for(let n in r){if(n==="unknown"||!e[n])continue;let{allowInc:i}=o0(e[n]);if(!i.includes(t))throw new Error(`PSBTv${t}: field ${n} is not allowed`)}for(let n in e){let{reqInc:i}=o0(e[n]);if(i.includes(t)&&r[n]===void 0)throw new Error(`PSBTv${t}: missing required field ${n}`)}}function c0(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}=o0(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 rv(t){let e=t&&t.global&&t.global.version||0;n0(e,fl,t.global);for(let s of t.inputs)n0(e,Mu,s);for(let s of t.outputs)n0(e,Ku,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 pl(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(ve.decode(x[0])):x[0],typeof x[1]=="string"?d.decode(ve.decode(x[1])):x[1]]});let g={},y=(x,S,I)=>{if(g[x]===void 0){g[x]=[S,I];return}let A=ve.encode(d.encode(g[x][1])),O=ve.encode(d.encode(I));if(A!==O)throw new Error(`keyMap(${c}): same key=${x} oldVal=${A} newVal=${O}`)};for(let[x,S]of h){let I=ve.encode(u.encode(x));y(I,x,S)}for(let[x,S]of p){let I=ve.encode(u.encode(x));if(S===void 0){if(f)throw new Error(`Cannot remove signed field=${c}/${x}`);delete g[I]}else y(I,x,S)}o[c]=Object.values(g)}}else if(typeof o[s]=="string")o[s]=d.decode(ve.decode(o[s]));else if(f&&s in e&&r&&r[s]!==void 0&&!at(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 a0=Gt(Y8,rv),u0=Gt(J8,rv);var Z8={encode(t){if(!(t.length!==2||t[0]!==1||!Ce(t[1])||ve.encode(t[1])!=="4e73"))return{type:"p2a",script:Ze.encode(t)}},decode:t=>{if(t.type==="p2a")return[1,ve.decode("4e73")]}};function _o(t,e){try{return To(t,e),!0}catch{return!1}}var Q8={encode(t){if(!(t.length!==2||!Ce(t[0])||!_o(t[0],St.ecdsa)||t[1]!=="CHECKSIG"))return{type:"pk",pubkey:t[0]}},decode:t=>t.type==="pk"?[t.pubkey,"CHECKSIG"]:void 0},eR={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},tR={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},rR={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},nR={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},iR={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},oR={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},sR={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}},cR={encode(t){let e=t.length-1;if(t[e]!=="NUMEQUAL"||t[1]!=="CHECKSIG")return;let r=[],n=WE(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}},aR={encode(t){return{type:"unknown",script:Ze.encode(t)}},decode:t=>t.type==="unknown"?Ze.decode(t.script):void 0},uR=[Z8,Q8,eR,tR,rR,nR,iR,oR,sR,cR,aR],dR=mn(Ze,Ri.match(uR)),Qe=Gt(dR,t=>{if(t.type==="pk"&&!_o(t.pubkey,St.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)||!_o(t.pubkey,St.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(!_o(r,St.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(!_o(e,St.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 nv(t,e){if(!at(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 y0(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(!at(n.hash,Gc(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&&nv(n,r)}if(e){let n=Qe.decode(e);n.type==="wsh"&&r&&nv(n,r)}}var Ni=(t,e=Xr)=>{if(!_o(t,St.ecdsa))throw new Error("P2PKH: invalid publicKey");let r=Gc(t);return{type:"pkh",script:Qe.encode({type:"pkh",hash:r}),address:Zr(e).encode({type:"pkh",hash:r}),hash:r}};var _s=(t,e=Xr)=>{if(!_o(t,St.ecdsa))throw new Error("P2WPKH: invalid publicKey");if(t.length===65)throw new Error("P2WPKH: uncompressed public key");let r=Gc(t);return{type:"wpkh",script:Qe.encode({type:"wpkh",hash:r}),address:Zr(e).encode({type:"wpkh",hash:r}),hash:r}};function fR(t,e,r=!1,n){let i=Qe.decode(t);if(i.type==="unknown"){if(n){let c=mn(Ze,Ri.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(at(s,cl))throw new Error("Unspendable taproot key in leaf script");if(at(s,e))throw new Error("Using P2TR with leaf script with same key as internal key is not supported")}}function ov(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 f0(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:f0(t.left,[t.right.hash,...e]),right:f0(t.right,[t.left.hash,...e])}}function l0(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[...l0(t.left),...l0(t.right)]}function h0(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&&!at(t.tapMerkleRoot,He))throw new Error("P2TR: tapRoot leafScript cannot have tree");let d=typeof u=="string"?ve.decode(u):u;if(!Ce(d))throw new Error(`checkScript: wrong script type=${d}`);return fR(d,e,r,n),{type:"leaf",version:a,script:d,hash:$u(d,a)}}if(t.length!==2&&(t=ov(t)),t.length!==2)throw new Error("hashTree: non binary tree!");let i=h0(t[0],e,r,n),o=h0(t[1],e,r,n),[s,c]=[i.hash,o.hash];return Lu(c,s)===-1&&([s,c]=[c,s]),{type:"branch",left:i,right:o,hash:Nu("TapBranch",s,c)}}var p0=192,$u=(t,e=p0)=>Nu("TapLeaf",new Uint8Array([e]),hr.encode(t));function Is(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"?ve.decode(t):t||cl;if(!_o(o,St.schnorr))throw new Error("p2tr: non-schnorr pubkey");if(e){let s=f0(h0(e,o,n,i)),c=s.hash,[a,u]=Cu(o,c),d=l0(s).map(f=>({...f,controlBlock:ki.encode({version:(f.version||p0)+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=>[ki.decode(f.controlBlock),Wn(f.script,new Uint8Array([f.version||p0]))]),tapMerkleRoot:c}}else{let s=Cu(o,He)[0];return{type:"tr",script:Qe.encode({type:"tr",pubkey:s}),address:Zr(r).encode({type:"tr",pubkey:s}),tweakedPubkey:s,tapInternalKey:o}}}var sv=AE(ke);function cv(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 d0(t,e,r=Xr){cv(t,e);let n=t===0?Zf:As;return n.encode(r.bech32,[t].concat(n.toWords(e)))}function iv(t,e){return sv.encode(Wn(Uint8Array.from(e),t))}function Zr(t=Xr){return{encode(e){let{type:r}=e;if(r==="wpkh")return d0(0,e.hash,t);if(r==="wsh")return d0(0,e.hash,t);if(r==="tr")return d0(1,e.pubkey,t);if(r==="pkh")return iv(e.hash,[t.pubKeyHash]);if(r==="sh")return iv(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=Zf.decode(e),n.words[0]!==0)throw new Error(`bech32: wrong version=${n.words[0]}`)}catch{if(n=As.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=Zf.fromWords(o);if(cv(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=sv.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 yl=new Uint8Array(32),lR={amount:0xffffffffffffffffn,script:He},hR=t=>Math.ceil(t/4),pR=8,yR=2,Bs=0,b0=4294967295,gR=Ri.decimal(pR),Vu=(t,e)=>t===void 0?e:t;function ml(t){if(Array.isArray(t))return t.map(e=>ml(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,ml(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 Io;(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"})(Io||(Io={}));function mR(t,e,r,n=He){return at(r,e)&&(t=qE(t,n),e=sl(t)),{privKey:t,pubKey:e}}function Rs(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 Hu(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:Vu(t.sequence,b0),finalScriptSig:Vu(t.finalScriptSig,He)}}function g0(t){for(let e in t){let r=e;ZE.includes(r)||delete t[r]}}var m0=vt({txid:Fe(32,!0),index:Be});function wR(t){if(typeof t!="number"||typeof Io[t]!="string")throw new Error(`Invalid SigHash=${t}`);return t}function av(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:Vu(t.version,yR),lockTime:Vu(t.lockTime,0),PSBTVersion:Vu(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 uv(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&&(!at(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=Us.fromRaw(Di.encode(t.nonWitnessUtxo),{allowUnknownOutputs:!0,disableScriptCheck:!0,allowUnknownInputs:!0}),o=ve.encode(t.txid);if(i.isFinal&&i.id!==o)throw new Error(`nonWitnessUtxo: wrong txid, exp=${o} got=${i.id}`)}}return t}function gl(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 dv(t,e,r,n=!1,i=!1){let{nonWitnessUtxo:o,txid:s}=t;typeof o=="string"&&(o=ve.decode(o)),Ce(o)&&(o=Di.decode(o)),!("nonWitnessUtxo"in t)&&o===void 0&&(o=e?.nonWitnessUtxo),typeof s=="string"&&(s=ve.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=b0),c.tapMerkleRoot===null&&delete c.tapMerkleRoot,c=pl(Mu,c,e,r,i),ll.encode(c);let a;return c.nonWitnessUtxo&&c.index!==void 0?a=c.nonWitnessUtxo.outputs[c.index]:c.witnessUtxo&&(a=c.witnessUtxo),a&&!n&&y0(a&&a.script,c.redeemScript,c.witnessScript),c}function w0(t,e=!1){let r="legacy",n=je.ALL,i=gl(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 Us=class t{constructor(e={}){this.global={},this.inputs=[],this.outputs=[];let r=this.opts=bR(e);r.lockTime!==Bs&&(this.global.fallbackLocktime=r.lockTime),this.global.txVersion=r.version}static fromRaw(e,r={}){let n=Di.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=a0.decode(e)}catch(f){try{n=u0.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)=>uv({finalScriptSig:He,...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!==Bs&&(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=>uv(c0(e,Mu,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=>c0(e,Ku,o)),i={...this.global};return e===0?(i.unsignedTx=Ts.decode(Ts.encode({version:this.version,lockTime:this.lockTime,inputs:this.inputs.map(Hu).map(o=>({...o,finalScriptSig:He})),outputs:this.outputs.map(Rs)})),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===Bs&&delete i.fallbackLocktime),this.opts.bip174jsCompat&&(r.length||r.push({}),n.length||n.push({})),(e===0?a0:u0).encode({global:i,inputs:r,outputs:n})}get lockTime(){let e=Bs,r=0,n=Bs,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!==Bs?n:this.global.fallbackLocktime||Bs}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(Rs);e+=4*Nr.encode(this.outputs.length).length;for(let n of r)e+=32+4*hr.encode(n.script).length;this.hasWitnesses&&(e+=2),e+=4*Nr.encode(this.inputs.length).length;for(let n of this.inputs)e+=160+4*hr.encode(n.finalScriptSig||He).length,this.hasWitnesses&&n.finalScriptWitness&&(e+=Yc.encode(n.finalScriptWitness).length);return e}get vsize(){return hR(this.weight)}toBytes(e=!1,r=!1){return Di.encode({version:this.version,lockTime:this.lockTime,inputs:this.inputs.map(Hu).map(n=>({...n,finalScriptSig:e&&n.finalScriptSig||He})),outputs:this.outputs.map(Rs),witnesses:this.inputs.map(n=>n.finalScriptWitness||[]),segwitFlag:r&&this.hasWitnesses})}get unsignedTx(){return this.toBytes(!1,!1)}get hex(){return ve.encode(this.toBytes(!0,this.hasWitnesses))}get hash(){if(!this.isFinal)throw new Error("Transaction is not finalized");return ve.encode(Ui(this.toBytes(!0)))}get id(){if(!this.isFinal)throw new Error("Transaction is not finalized");return ve.encode(Ui(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),ml(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(dv(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=QE)}this.inputs[e]=dv(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),ml(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=ve.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=pl(Ku,s,r,n,this.opts.allowUnknown),hl.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||y0(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=ev)}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=gl(n);if(!i)throw new Error("Empty input amount");e+=i.amount}let r=this.outputs.map(Rs);for(let n of r)e-=n.amount;return e}preimageLegacy(e,r,n){let{isAny:i,isNone:o,isSingle:s}=av(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 OE.encode(1n);r=Ze.encode(Ze.decode(r).filter(d=>d!=="CODESEPARATOR"));let c=this.inputs.map(Hu).map((d,f)=>({...d,finalScriptSig:f===e?r:He}));i?c=[c[e]]:(o||s)&&(c=c.map((d,f)=>({...d,sequence:f===e?d.sequence:0})));let a=this.outputs.map(Rs);o?a=[]:s&&(a=a.slice(0,e).fill(lR).concat([a[e]]));let u=Di.encode({lockTime:this.lockTime,version:this.version,segwitFlag:!1,inputs:c,outputs:a});return Ui(u,Ao.encode(n))}preimageWitnessV0(e,r,n,i){let{isAny:o,isNone:s,isSingle:c}=av(n),a=yl,u=yl,d=yl,f=this.inputs.map(Hu),h=this.outputs.map(Rs);o||(a=Ui(...f.map(m0.encode))),!o&&!c&&!s&&(u=Ui(...f.map(g=>Be.encode(g.sequence)))),!c&&!s?d=Ui(...h.map(Oi.encode)):c&&e<h.length&&(d=Ui(Oi.encode(h[e])));let p=f[e];return Ui(Ao.encode(this.version),a,u,Fe(32,!0).encode(p.txid),Be.encode(p.index),hr.encode(r),Wc.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=[wn.encode(0),wn.encode(n),Ao.encode(this.version),Be.encode(this.lockTime)],d=n===je.DEFAULT?je.ALL:n&3,f=n&je.ANYONECANPAY,h=this.inputs.map(Hu),p=this.outputs.map(Rs);f!==je.ANYONECANPAY&&u.push(...[h.map(m0.encode),i.map(Wc.encode),r.map(hr.encode),h.map(y=>Be.encode(y.sequence))].map(y=>ke(Wn(...y)))),d===je.ALL&&u.push(ke(Wn(...p.map(Oi.encode))));let g=(a?1:0)|(s?2:0);if(u.push(new Uint8Array([g])),f===je.ANYONECANPAY){let y=h[e];u.push(m0.encode(y),Wc.encode(i[e]),hr.encode(r[e]),Be.encode(y.sequence))}else u.push(Be.encode(e));return g&1&&u.push(ke(hr.encode(a||He))),d===je.SINGLE&&u.push(e<p.length?ke(Oi.encode(p[e])):yl),s&&u.push($u(s,c),wn.encode(0),Ao.encode(o)),Nu("TapSighash",...u)}signIdx(e,r,n,i){this.checkInputIdx(r);let o=this.inputs[r],s=w0(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(!at(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(wR):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=gl(o);if(s.txType==="taproot"){let d=this.inputs.map(gl),f=d.map(x=>x.script),h=d.map(x=>x.amount),p=!1,g=sl(e),y=o.tapMerkleRoot||He;if(o.tapInternalKey){let{pubKey:x,privKey:S}=mR(e,g,o.tapInternalKey,y),[I,A]=Cu(o.tapInternalKey,y);if(at(I,x)){let O=this.preimageWitnessV1(r,f,c,h),T=Wn(e0(O,S,i),c!==je.DEFAULT?new Uint8Array([c]):He);this.updateInput(r,{tapKeySig:T},!0),p=!0}}if(o.tapLeafScript){o.tapScriptSig=o.tapScriptSig||[];for(let[x,S]of o.tapLeafScript){let I=S.subarray(0,-1),A=Ze.decode(I),O=S[S.length-1],T=$u(I,O);if(A.findIndex($=>Ce($)&&at($,g))===-1)continue;let q=this.preimageWitnessV1(r,f,c,h,void 0,I,O),j=Wn(e0(q,e,i),c!==je.DEFAULT?new Uint8Array([c]):He);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=Qy(e),f=!1,h=Gc(d);for(let y of Ze.decode(s.lastScript))Ce(y)&&(at(y,d)||at(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=HE(p,e,this.opts.lowR);this.updateInput(r,{partialSig:[[d,Wn(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=w0(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)=>ki.encode(u[0]).length-ki.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=$u(f,h),y=r.tapScriptSig.filter(S=>at(S[0].leafHash,g)),x=[];if(p.type==="tr_ms"){let S=p.m,I=p.pubkeys,A=0;for(let O of I){let T=y.findIndex(M=>at(M[0].pubKey,O));if(A===S||T===-1){x.push(He);continue}x.push(y[T][1]),A++}if(A!==S)continue}else if(p.type==="tr_ns"){for(let S of p.pubkeys){let I=y.findIndex(A=>at(A[0].pubKey,S));I!==-1&&x.push(y[I][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:I},A])=>{let O=S.findIndex(T=>Ce(T)&&at(T,I));if(O===-1)throw new Error("finalize/taproot: cannot find position of pubkey in script");return{signature:A,pos:O}}).sort((I,A)=>I.pos-A.pos).map(I=>I.signature),!x.length)continue}else{let S=this.opts.customScripts;if(S)for(let I of S){if(!I.finalizeTaproot)continue;let A=Ze.decode(f),O=I.encode(A);if(O===void 0)continue;let T=I.finalizeTaproot(f,O,y);if(T){r.finalScriptWitness=T.concat(ki.encode(u)),r.finalScriptSig=He,g0(r);return}}throw new Error("Finalize: Unknown tapLeafScript")}r.finalScriptWitness=x.reverse().concat([f,ki.encode(u)]);break}if(!r.finalScriptWitness)throw new Error("finalize/taproot: empty witness")}else throw new Error("finalize/taproot: unknown input");r.finalScriptSig=He,g0(r);return}if(!r.partialSig||!r.partialSig.length)throw new Error("Not enough partial sign");let i=He,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=>at(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=He,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 He;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),g0(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?Ts.encode(this.global.unsignedTx):He,n=e.global.unsignedTx?Ts.encode(e.global.unsignedTx):He;if(!at(r,n))throw new Error("Transaction/combine: different unsigned tx");this.global=pl(fl,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 fv(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,I){p&&(r+=","),p=!0,a&&S===void 0&&(S=null),u(S,f+"["+I+"]")}),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&&i.includes(I)||(g&&(r+=","),g=!0,r+=JSON.stringify(I),r+=":",u(d[I],f+"."+I))};if(f===""&&n)n.forEach(function(I){d.hasOwnProperty(I)&&y(I)});else{var x=Object.keys(d);c&&(x=x.filter(function(I){return d[I]!==void 0})),x.sort(),x.forEach(function(I){y(I)})}r+="}"}}}function lv(t,e){return fv(t,{allowCircular:e,filterUndefined:!0,undefinedInArrayToNull:!0})}l();var x0;(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"})(x0||(x0={}));var{INVALID_DID:pt,METHOD_NOT_SUPPORTED:wl,INTERNAL_ERROR:bl,INVALID_DID_DOCUMENT:qe,INVALID_DID_UPDATE:fe,INVALID_DID_URL:mK,INVALID_PREVIOUS_DID_PROOF:wK,INVALID_PUBLIC_KEY:bK,INVALID_PUBLIC_KEY_MULTIBASE:xK,INVALID_PUBLIC_KEY_LENGTH:EK,INVALID_PUBLIC_KEY_TYPE:vK,INVALID_SIGNATURE:SK,NOT_FOUND:hv,PROOF_VERIFICATION_ERROR:Ci,PROOF_GENERATION_ERROR:Ro,PROOF_SERIALIZATION_ERROR:pv,PROOF_PARSING_ERROR:AK,VERIFICATION_METHOD_ERROR:xl,LATE_PUBLISHING_ERROR:El,INVALID_SIDECAR_DATA:TK,MISSING_UPDATE_DATA:_K,MISSING_RESOLUTION_OPTIONS:IK,INVALID_OPTIONS:qu}=x0,kt=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)}},be=class extends kt{constructor(e,r="MethodError",n){super(e,{type:r,name:r,data:n})}};var ut=class extends kt{constructor(e,r="IdentifierError",n){super(e,{type:r,name:r,data:n})}},nt=class extends kt{constructor(e,r="UpdateError",n){super(e,{type:r,name:r,data:n})}},le=class extends kt{constructor(e,r="ResolveError",n){super(e,{type:r,name:r,data:n})}};var Ve=class extends kt{constructor(e,r="DidDocumentError",n){super(e,{type:r,name:r,data:n})}},Bo=class extends kt{constructor(e,r="CryptosuiteError",n){super(e,{type:r,name:r,data:n})}},bn=class extends kt{constructor(e,r="DataIntegrityProofError",n){super(e,{type:r,name:r,data:n})}},xn=class extends kt{constructor(e,r="KeyPairError",n){super(e,{type:r,name:r,data:n})}},Gn=class extends kt{constructor(e,r="SecretKeyError",n){super(e,{type:r,name:r,data:n})}},Os=class extends kt{constructor(e,r="PublicKeyError",n){super(e,{type:r,name:r,data:n})}},En=class extends kt{constructor(e,r="MultikeyError",n){super(e,{type:r,name:r,data:n})}};var Jc=class extends kt{constructor(e,r="CanonicalizationError",n){super(e,{type:r,name:r,data:n})}};var xR=new Set(["jcs"]),ER=new Set(["hex","base58","base64urlnopad"]);function E0(t){let e=t.toLowerCase();if(!xR.has(e))throw new Jc(`Unsupported algorithm: ${t}`,"ALGORITHM_ERROR");return e}function v0(t){let e=t.toLowerCase();if(!ER.has(e))throw new Jc(`Unsupported encoding: ${t}`,"ENCODING_ERROR");return e}function Kt(t,e="jcs"){switch(E0(e)){case"jcs":{let n=JSON.parse(JSON.stringify(t));return lv(n)}default:throw new Jc(`Unsupported algorithm: ${e}`,"ALGORITHM_ERROR")}}function Uo(t){return ke(t)}function Qr(t,e="base64urlnopad"){switch(v0(e)){case"hex":return ve.encode(t);case"base58":return Xf.encode(t);case"base64urlnopad":return qc.encode(t)}}function Xc(t,e="base64urlnopad"){switch(v0(e)){case"hex":return ve.decode(t);case"base58":return Xf.decode(t);case"base64urlnopad":return qc.decode(t)}}function Oo(t,e="jcs"){return Uo(Kt(t,E0(e)))}function zn(t,e){let r=E0(e?.algorithm??"jcs"),n=v0(e?.encoding??"base64urlnopad");return Qr(Uo(Kt(t,r)),n)}l();l();var S0={};If(S0,{JsonPatchError:()=>dt,_areEquals:()=>Wu,applyOperation:()=>Ds,applyPatch:()=>Bl,applyReducer:()=>_R,deepClone:()=>AR,getValueByPointer:()=>_l,validate:()=>gv,validator:()=>Il});l();l();var vR=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)}}(),SR=Object.prototype.hasOwnProperty;function Sl(t,e){return SR.call(t,e)}function Al(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)Sl(t,i)&&n.push(i);return n}function $t(t){switch(typeof t){case"object":return JSON.parse(JSON.stringify(t));case"undefined":return null;default:return t}}function Tl(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 Yn(t){return t.indexOf("/")===-1&&t.indexOf("~")===-1?t:t.replace(/~/g,"~0").replace(/\//g,"~1")}function Fu(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}function vl(t){if(t===void 0)return!0;if(t){if(Array.isArray(t)){for(var e=0,r=t.length;e<r;e++)if(vl(t[e]))return!0}else if(typeof t=="object"){for(var n=Al(t),i=n.length,o=0;o<i;o++)if(vl(t[n[o]]))return!0}}return!1}function yv(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 ju=function(t){vR(e,t);function e(r,n,i,o,s){var c=this.constructor,a=t.call(this,yv(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=yv(r,{name:n,index:i,operation:o,tree:s}),a}return e}(Error);var dt=ju,AR=$t,Zc={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=_l(r,this.path);n&&(n=$t(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=_l(r,this.from);return Ds(r,{op:"add",path:this.path,value:$t(n)}),{newDocument:r}},test:function(t,e,r){return{newDocument:r,test:Wu(t[e],this.value)}},_get:function(t,e,r){return this.value=t[e],{newDocument:r}}},TR={add:function(t,e,r){return Tl(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:Zc.move,copy:Zc.copy,test:Zc.test,_get:Zc._get};function _l(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):Il(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=_l(t,e.from),e.op==="move"&&(s.removed=t),s;if(e.op==="test"){if(s.test=Wu(t,e.value),s.test===!1)throw new dt("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 dt("Operation `op` property is not one of operations defined in RFC-6902","OPERATION_OP_INVALID",o,e,t);return s}}else{n||(t=$t(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=Il;;){if(p=a[d],p&&p.indexOf("~")!=-1&&(p=Fu(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&&!Tl(p))throw new dt("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);Tl(p)&&(p=~~p)}if(d>=f){if(r&&e.op==="add"&&p>u.length)throw new dt("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=TR[e.op].call(e,u,p,t);if(s.test===!1)throw new dt("Test operation failed","TEST_OPERATION_FAILED",o,e,t);return s}}else if(d>=f){var s=Zc[e.op].call(e,u,p,t);if(s.test===!1)throw new dt("Test operation failed","TEST_OPERATION_FAILED",o,e,t);return s}if(u=u[p],r&&d<f&&(!u||typeof u!="object"))throw new dt("Cannot perform operation at the desired path","OPERATION_PATH_UNRESOLVABLE",o,e,t)}}}function Bl(t,e,r,n,i){if(n===void 0&&(n=!0),i===void 0&&(i=!0),r&&!Array.isArray(e))throw new dt("Patch sequence must be an array","SEQUENCE_NOT_AN_ARRAY");n||(t=$t(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 _R(t,e,r){var n=Ds(t,e);if(n.test===!1)throw new dt("Test operation failed","TEST_OPERATION_FAILED",r,e,t);return n.newDocument}function Il(t,e,r,n){if(typeof t!="object"||t===null||Array.isArray(t))throw new dt("Operation is not an object","OPERATION_NOT_AN_OBJECT",e,t,r);if(Zc[t.op]){if(typeof t.path!="string")throw new dt("Operation `path` property is not a string","OPERATION_PATH_INVALID",e,t,r);if(t.path.indexOf("/")!==0&&t.path.length>0)throw new dt('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 dt("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 dt("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")&&vl(t.value))throw new dt("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 dt("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 dt("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=gv([s],r);if(c&&c.name==="OPERATION_PATH_UNRESOLVABLE")throw new dt("Cannot perform the operation from a path that does not exist","OPERATION_FROM_UNRESOLVABLE",e,t,r)}}}else throw new dt("Operation `op` property is not one of operations defined in RFC-6902","OPERATION_OP_INVALID",e,t,r)}function gv(t,e,r){try{if(!Array.isArray(t))throw new dt("Patch sequence must be an array","SEQUENCE_NOT_AN_ARRAY");if(e)Bl($t(e),$t(t),r||!0);else{r=r||Il;for(var n=0;n<t.length;n++)r(t[n],n,e,void 0)}}catch(i){if(i instanceof dt)return i;throw i}}function Wu(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(!Wu(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],!Wu(t[s],e[s]))return!1;return!0}return t!==t&&e!==e}var I0={};If(I0,{compare:()=>NR,generate:()=>A0,observe:()=>kR,unobserve:()=>DR});l();var T0=new WeakMap,IR=function(){function t(e){this.observers=new Map,this.obj=e}return t}(),BR=function(){function t(e,r){this.callback=e,this.observer=r}return t}();function RR(t){return T0.get(t)}function UR(t,e){return t.observers.get(e)}function OR(t,e){t.observers.delete(e.callback)}function DR(t,e){e.unobserve()}function kR(t,e){var r=[],n,i=RR(t);if(!i)i=new IR(t),T0.set(t,i);else{var o=UR(i,e);n=o&&o.observer}if(n)return n;if(n={},i.value=$t(t),e){n.callback=e,n.next=null;var s=function(){A0(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(){A0(n),clearTimeout(n.next),OR(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 BR(e,n)),n}function A0(t,e){e===void 0&&(e=!1);var r=T0.get(t.object);_0(r.value,t.object,t.patches,"",e),t.patches.length&&Bl(r.value,t.patches);var n=t.patches;return n.length>0&&(t.patches=[],t.callback&&t.callback(n)),n}function _0(t,e,r,n,i){if(e!==t){typeof e.toJSON=="function"&&(e=e.toJSON());for(var o=Al(e),s=Al(t),c=!1,a=!1,u=s.length-1;u>=0;u--){var d=s[u],f=t[d];if(Sl(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)?_0(f,h,r,n+"/"+Yn(d),i):f!==h&&(c=!0,i&&r.push({op:"test",path:n+"/"+Yn(d),value:$t(f)}),r.push({op:"replace",path:n+"/"+Yn(d),value:$t(h)}))}else Array.isArray(t)===Array.isArray(e)?(i&&r.push({op:"test",path:n+"/"+Yn(d),value:$t(f)}),r.push({op:"remove",path:n+"/"+Yn(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];!Sl(t,d)&&e[d]!==void 0&&r.push({op:"add",path:n+"/"+Yn(d),value:$t(e[d])})}}}function NR(t,e,r){r===void 0&&(r=!1);var n=[];return _0(t,e,n,"",r),n}var mv=Object.assign({},S0,I0,{JsonPatchError:ju,deepClone:$t,escapePathComponent:Yn,unescapePathComponent:Fu});var{applyPatch:CR,compare:LR,deepClone:PR}=mv,MR=new Set(["__proto__","constructor","prototype"]);function wv(t){return t.split("/").map(e=>e.replace(/~1/g,"/").replace(/~0/g,"~")).find(e=>MR.has(e))}var KR=new Set(["add","remove","replace","move","copy","test"]),$R=new Set(["add","replace","test"]);function HR(t){if(!(t instanceof Error))return"";let{index:e,operation:r}=t;return`${typeof e=="number"&&r&&typeof r=="object"?` at operation ${e} (${String(r.op)} ${String(r.path)})`:""}: ${t.message}`}var Qc=class{static apply(e,r,n={}){let i=n.mutate??!1,o=n.strict??!1,s=n.clone??PR,c=i?e:s(e),a=this.validateOperations(r,o);if(a)throw new be(`Invalid JSON Patch operations: ${a.message}`,"JSON_PATCH_APPLY_ERROR",{error:a});let u;try{u=CR(c,r,o,i)}catch(d){throw new be(`JSON Patch application failed${HR(d)}`,"JSON_PATCH_APPLY_ERROR",{error:d})}if(u.newDocument===void 0)throw new be("JSON Patch application failed: no document","JSON_PATCH_APPLY_ERROR",{result:u});return u.newDocument}static diff(e,r,n=""){let i=LR(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,r=!1){if(!Array.isArray(e))return new be("Operations must be an array","JSON_PATCH_VALIDATION_ERROR");for(let n of e){if(!n||typeof n!="object")return new be("Operation must be an object","JSON_PATCH_VALIDATION_ERROR");if(typeof n.op!="string")return new be("Operation.op must be a string","JSON_PATCH_VALIDATION_ERROR");if(typeof n.path!="string")return new be("Operation.path must be a string","JSON_PATCH_VALIDATION_ERROR");if(r&&!KR.has(n.op))return new be(`Operation.op is not an RFC 6902 operation: ${n.op}`,"JSON_PATCH_VALIDATION_ERROR");if(r&&$R.has(n.op)&&n.value===void 0)return new be(`Operation.value is required for op=${n.op}`,"JSON_PATCH_VALIDATION_ERROR");let i=wv(n.path);if(i)return new be(`Operation.path traverses prototype machinery: ${i}`,"JSON_PATCH_VALIDATION_ERROR");if((n.op==="move"||n.op==="copy")&&typeof n.from!="string")return new be(`Operation.from must be a string for op=${n.op}`,"JSON_PATCH_VALIDATION_ERROR");if(typeof n.from=="string"){let o=wv(n.from);if(o)return new be(`Operation.from traverses prototype machinery: ${o}`,"JSON_PATCH_VALIDATION_ERROR")}}return null}};l();var en;(function(t){t.KEY="KEY",t.EXTERNAL="EXTERNAL"})(en||(en={}));var Rl;(function(t){t.k="k",t.x="x"})(Rl||(Rl={}));var ea;(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"})(ea||(ea={}));l();var Li=class{static toISOStringNonFractional(e=new Date){let r=e.getTime();if(Number.isNaN(r))throw new be(`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 be(`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],I=f%4===0&&f%100!==0||f%400===0,A=h===2&&I?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 B0(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 be("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)||B0(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&&B0(i,o,c)}return i}return n};return r(e)}static cloneInternal(e,r={},n=new WeakMap,i=0){if(i>1024)throw new be("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 be("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))B0(s,c,this.cloneInternal(e[c],r,n,i+1));return s}};l();var nr=class extends be{constructor(e,r="BeaconError",n){super(e,r,n)}},bv=class extends be{constructor(e,r="SingletonBeaconError",n){super(e,r,n)}},xv=class extends be{constructor(e,r="AggregateBeaconError",n){super(e,r,n)}},Ev=class extends be{constructor(e,r="CASBeaconError",n){super(e,r,n)}},Gu=class extends be{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 JR={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 t0;case"regtest":return JR;default:throw new Error(`Unknown network "${t}"`)}}l();var zu=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 U0="0000000000000000000000000000000000000000000000000000000000000000",O0="4a5e1e4baab89f3a32518a88c31bc87f618f76673e2cc77ab2127b7afdeda33b";l();var D0;(function(t){t[t.hex=0]="hex",t[t.json=1]="json",t[t.jsonext=2]="jsonext",t[t.jsonextprev=3]="jsonextprev"})(D0||(D0={}));var k0=new zu(5);var QR=160,e6=155,t6=240,r6={p2pkh:t6,p2wpkh:e6,p2tr:QR},Av={p2pkh:34,p2wpkh:31,p2tr:43},Tv={p2pkh:546,p2wpkh:294,p2tr:330};function _v(t,e){return r6[t]-Av[t]+Av[e]}function Iv(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 nr(`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 n6(t,e,r){return t==="p2pkh"?Ni(e,r).address:t==="p2wpkh"?_s(e,r).address:Is(e.slice(1,33),void 0,r).address}function Bv(t,e,r){if(!r||r===t)return t;try{Zr(e).decode(r)}catch{throw new nr(`Invalid change address "${r}" for network "${e}".`,"INVALID_CHANGE_ADDRESS",{changeAddress:r,network:e})}return r}function Rv(t,e){try{return Iv(t,e)}catch{return"p2tr"}}function Uv(t){return Ze.encode(["RETURN",t])}var N0=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 s6(t,e){if(!t.length)throw new nr("No UTXOs found, please fund address!","UNFUNDED_BEACON_ADDRESS",{address:e});let r=t.filter(i6),n=r.filter(i=>i.value>N0);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 ${N0}-sat dust limit`;throw new nr(`No spendable UTXO at beacon address: ${i}.`,"NO_SPENDABLE_BEACON_UTXO",{address:e,total:t.length,confirmed:r.length,dustLimit:N0})}return[...n].sort(o6)[0]}async function Ov(t,e){let r=await e.rest.address.getUtxos(t),n=s6(r,t),i=await e.rest.transaction.getHex(n.txid);return{utxo:n,prevTxBytes:Br(i)}}async function Z9(t){let e=t.feeEstimator??k0,{utxo:r,prevTxBytes:n}=await Ov(t.beaconAddress,t.bitcoin),i=Bv(t.beaconAddress,t.network,t.changeAddress),o=Qe.encode(Zr(t.network).decode(t.beaconAddress)),s=Rv(i,t.network),c=await e.estimateFee(_v("p2tr",s));if(BigInt(r.value)<=c)throw new nr(`UTXO value (${r.value}) insufficient to cover fee (${c}).`,"INSUFFICIENT_FUNDS",{address:t.beaconAddress,valueSats:r.value,feeSats:c});let a=new Us({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(Tv[s])&&a.addOutputAddress(i,u,t.network),a.addOutput({script:Uv(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=Io.ALL,d=t.preimageLegacy(e,i,u),f=n.sign(d,"ecdsa"),h=ht(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 nr(`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=Io.ALL,h=t.preimageWitnessV0(e,d,f,o),p=n.sign(h,"ecdsa"),g=ht(p,new Uint8Array([f]));return t.updateInput(e,{partialSig:[[s,g]]},!0),t.finalize(),t.hex}let c=t.preimageWitnessV1(e,[i],Io.DEFAULT,[o]),a=n.sign(c,"bip341");return t.updateInput(e,{tapKeySig:a}),t.finalize(),t.hex}var ko=class{service;did;constructor(e,r){this.service=e,this.did=r}async buildSignAndBroadcast(e,r,n,i){let o=i?.feeEstimator??k0,s=this.service.serviceEndpoint.replace("bitcoin:",""),{utxo:c,prevTxBytes:a}=await Ov(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=Iv(e.beaconAddress,r),o=Bv(e.beaconAddress,r,e.changeAddress),s=n6(i,n,r);if(s!==e.beaconAddress)throw new nr(`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=Rv(o,r),a=await e.feeEstimator.estimateFee(_v(i,c)),u=BigInt(e.utxo.value);if(u<=a)throw new nr(`UTXO value (${e.utxo.value}) insufficient to cover fee (${a}).`,"INSUFFICIENT_FUNDS",{address:e.beaconAddress,valueSats:e.utxo.value,feeSats:a});let d=new Us({allowUnknownOutputs:!0}),f;if(i==="p2pkh")f=Ni(n,r).script,d.addInput({txid:e.utxo.txid,index:e.utxo.vout,nonWitnessUtxo:e.prevTxBytes});else if(i==="p2wpkh")f=_s(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=Is(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(Tv[c])&&d.addOutputAddress(o,h,r),d.addOutput({script:Uv(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 Ul=class extends ko{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(Xc(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=zn(e),c={[o]:s},a=Uo(Kt(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 Ol=class extends ko{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=Uo(Kt(e)),s=await this.buildSignAndBroadcast(o,r,n,i);return{signedUpdate:e,txid:s}}};l();l();l();var a6=new Uint8Array(32),C0=1n<<BigInt(256),Dv=(()=>{let t=new Array(257),e=C0>>1n;for(let r=0;r<256;r++)t[r]=e,e>>=1n;return t[256]=0n,t})();l();l();l();function Yu(t){return t instanceof Uint8Array||ArrayBuffer.isView(t)&&t.constructor.name==="Uint8Array"}function Jn(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=Yu(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 Dl(t){if(typeof t!="function"||typeof t.create!="function")throw new Error("Hash must wrapped by utils.createHasher");Jn(t.outputLen),Jn(t.blockLen)}function ta(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 Nv(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 kl(t){return new DataView(t.buffer,t.byteOffset,t.byteLength)}function vn(t,e){return t<<32-e|t>>>e}var Cv=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(_e(t),Cv)return t.toHex();let e="";for(let r=0;r<t.length;r++)e+=u6[t[r]];return e}var Pi={_0:48,_9:57,A:65,F:70,a:97,f:102};function kv(t){if(t>=Pi._0&&t<=Pi._9)return t-Pi._0;if(t>=Pi.A&&t<=Pi.F)return t-(Pi.A-10);if(t>=Pi.a&&t<=Pi.f)return t-(Pi.a-10)}function Ls(t){if(typeof t!="string")throw new Error("hex string expected, got "+typeof t);if(Cv)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=kv(t.charCodeAt(o)),c=kv(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 Lv(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 Pv=t=>({oid:Uint8Array.from([6,9,96,134,72,1,101,3,4,2,t])});var P0=BigInt(0),L0=BigInt(1);function Ju(t,e=""){if(typeof t!="boolean"){let r=e&&`"${e}" `;throw new Error(r+"expected boolean, got type="+typeof t)}return t}function Mv(t){if(typeof t=="bigint"){if(!Nl(t))throw new Error("positive bigint expected, got "+t)}else Jn(t);return t}function Xu(t){let e=Mv(t).toString(16);return e.length&1?"0"+e:e}function Kv(t){if(typeof t!="string")throw new Error("hex string expected, got "+typeof t);return t===""?P0:BigInt("0x"+t)}function No(t){return Kv(Cs(t))}function M0(t){return Kv(Cs(d6(_e(t)).reverse()))}function Cl(t,e){Jn(e),t=Mv(t);let r=Ls(t.toString(16).padStart(e*2,"0"));if(r.length!==e)throw new Error("number too large");return r}function K0(t,e){return Cl(t,e).reverse()}function ra(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 $v(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 Nl=t=>typeof t=="bigint"&&P0<=t;function f6(t,e,r){return Nl(t)&&Nl(e)&&Nl(r)&&e<=t&&t<r}function Hv(t,e,r,n){if(!f6(e,r,n))throw new Error("expected valid "+t+": "+r+" <= n < "+n+", got "+e)}function $0(t){let e;for(e=0;t>P0;t>>=L0,e+=1);return e}var Zu=t=>(L0<<BigInt(t))-L0;function Vv(t,e,r){if(Jn(t,"hashLen"),Jn(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 I=a.slice();S.push(I),x+=a.length}return pr(...S)};return(x,S)=>{f(),p(x);let I;for(;!(I=S(g()));)p();return f(),I}}function Qu(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 H0(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 V0(t){return t.length===32}function Ll(t){if(!V0(t))throw new RangeError(`Invalid hash: expected ${32} bytes, got ${t.length}`)}function yt(...t){return ke(ht(...t))}function ed(t){Ll(t);let e=0n;for(let r of t)e=e<<8n|BigInt(r);return e}function q0(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 F0(t){Ll(t);let e="";for(let r of t)e+=r.toString(16).padStart(2,"0");return e}function j0(t,e){return!V0(t)||!V0(e)?!1:ra(t,e)}function na(t){return Ll(t),qc.encode(t)}function Xn(t){let e=qc.decode(t);if(e.length!==32)throw new RangeError(`Invalid base64url hash: expected ${32} decoded bytes, got ${e.length}`);return e}l();l();var qv;(function(t){t[t.Pending=0]="Pending",t[t.Valid=1]="Valid",t[t.Invalid=2]="Invalid"})(qv||(qv={}));l();l();var Co=256;function ia(t,e){return Number(t>>BigInt(e)&1n)}var Fv=(()=>{let t=new Array(Co+1),e=new Uint8Array(32);for(let r=0;r<=Co;r++)e=yt(e,e),t[r]=e;return t})();function Pl(t,e){if(t.length===0)return Fv[e];if(e===0)return t[0].leaf;let r=Co-e,n=[],i=[];for(let o of t)(ia(o.index,r)===0?n:i).push(o);return yt(Pl(n,e-1),Pl(i,e-1))}function jv(t){return Pl(t,Co)}function Wv(t,e){let r=0n,n=[];for(let i=1;i<=Co;i++){let o=Co-i,s=[];for(let c of t){if(c.index===e)continue;let a=!0;for(let u=0;u<o;u++)if(ia(c.index,u)!==ia(e,u)){a=!1;break}a&&ia(c.index,o)!==ia(e,o)&&s.push(c)}s.length===0?r|=1n<<BigInt(o):n.push(Pl(s,i-1))}return{collapsed:r,hashes:n}}function Gv(t,e,r,n,i){let o=n,s=0;for(let c=0;c<Co;c++){let a=Co-1-c,u;if((t>>BigInt(a)&1n)===1n)u=Fv[c];else{if(s>=e.length)return!1;u=e[s++]}o=ia(r,a)===1?yt(u,o):yt(o,u)}return s===e.length&&j0(o,i)}l();var l6=new TextEncoder;function Ml(t){return ed(yt(l6.encode(t)))}function zv(t,e){return yt(yt(t),yt(e))}function Yv(t){return yt(yt(t))}l();function Jv(t,e,r){let n={id:na(t),collapsed:na(q0(e.collapsed)),hashes:e.hashes.map(i=>na(i))};return r?.nonce&&(n.nonce=na(r.nonce)),r?.updateId&&(n.updateId=na(r.updateId)),n}function h6(t){let e={rootHash:Xn(t.id),collapsed:ed(Xn(t.collapsed)),hashes:t.hashes.map(r=>Xn(r))};return t.nonce&&(e.nonce=Xn(t.nonce)),t.updateId&&(e.updateId=Xn(t.updateId)),e}function Xv(t,e,r){let{rootHash:n,collapsed:i,hashes:o}=h6(t);return Gv(i,o,e,r,n)}l();var Kl=class{#e=new Map;#t=new Map;#n=null;#r=null;constructor(e=!0){}addEntries(e){for(let r of e){let n=Ml(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?zv(n.nonce,n.signedUpdate):Yv(n.nonce);e.push({index:r,leaf:i})}this.#n=e,this.#r=jv(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=Wv(this.#n,r),o=n.signedUpdate!==void 0?yt(n.signedUpdate):void 0;return Jv(this.#r,i,{nonce:n.nonce,updateId:o})}reset(){this.#n=null,this.#r=null}};var $l=class extends ko{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 Gu("SMT proof missing required nonce field.","INVALID_SMT_PROOF",{smtProof:c,did:o});let a=Ml(o),u=Xn(c.nonce),d=c.updateId?yt(yt(u),Xn(c.updateId)):yt(yt(u));if(!Xv(c,a,d))throw new Gu("SMT proof verification failed.","INVALID_SMT_PROOF",{smtProof:c,did:o});if(!c.updateId)continue;let h=F0(Xn(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(Kt(e)),c=Rr(32),a=new Kl;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 oa=class{static establish(e,r){switch(e.type){case"SingletonBeacon":return new Ol(e,r);case"CASBeacon":return new Ul(e,r);case"SMTBeacon":return new $l(e,r);default:throw new be("Invalid Beacon Type","INVALID_BEACON_ERROR",e)}}};l();l();l();l();l();l();var Ki;(function(t){t.authentication="authentication",t.assertionMethod="assertionMethod",t.keyAgreement="keyAgreement",t.capabilityInvocation="capabilityInvocation",t.capabilityDelegation="capabilityDelegation"})(Ki||(Ki={}));l();var gt={"@context":"https://w3id.org/did-resolution/v1",didResolutionMetadata:{},didDocument:null,didDocumentMetadata:{}};l();var xe=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}};xe.METHOD_PATTERN="([a-z0-9]+)";xe.PCT_ENCODED_PATTERN="(?:%[0-9a-fA-F]{2})";xe.ID_CHAR_PATTERN=`(?:[a-zA-Z0-9._-]|${xe.PCT_ENCODED_PATTERN})`;xe.METHOD_ID_PATTERN=`((?:${xe.ID_CHAR_PATTERN}*:)*(${xe.ID_CHAR_PATTERN}+))`;xe.PATH_PATTERN="(/[^#?]*)?";xe.QUERY_PATTERN="([?][^#]*)?";xe.FRAGMENT_PATTERN="(#.*)?";xe.DID_URI_PATTERN=new RegExp(`^did:(?<method>${xe.METHOD_PATTERN}):(?<id>${xe.METHOD_ID_PATTERN})(?<path>${xe.PATH_PATTERN})(?<query>${xe.QUERY_PATTERN})(?<fragment>${xe.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=Kn(Qv(),1);l();l();l();l();var zH=new Uint8Array(0);function e1(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 sa(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,I=g.length;S!==I&&g[S]===0;)S++,y++;for(var A=(I-S)*d+1>>>0,O=new Uint8Array(A);S!==I;){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 I=(g.length-y)*u+1>>>0,A=new Uint8Array(I);g[y];){var O=r[g.charCodeAt(y)];if(O===255)return;for(var T=0,M=I-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=I-S;q!==I&&A[q]===0;)q++;for(var j=new Uint8Array(x+(I-q)),$=x;q!==I;)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,t1=x6;var Y0=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")}},J0=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 r1(this,e)}},X0=class{decoders;constructor(e){this.decoders=e}or(e){return r1(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 r1(t,e){return new X0({...t.decoders??{[t.prefix]:t},...e.decoders??{[e.prefix]:e}})}var Z0=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 Y0(e,r,n),this.decoder=new J0(e,r,i)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}};function n1({name:t,prefix:e,encode:r,decode:n}){return new Z0(t,e,r,n)}function Q0({name:t,prefix:e,alphabet:r}){let{encode:n,decode:i}=t1(r,t);return n1({prefix:e,name:t,encode:n,decode:o=>sa(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 ir({name:t,prefix:e,bitsPerChar:r,alphabet:n}){return n1({prefix:e,name:t,encode(i){return v6(i,n,r)},decode(i){return E6(i,n,r,t)}})}var td=ir({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),nV=ir({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),iV=ir({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),oV=ir({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),sV=ir({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),cV=ir({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),aV=ir({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),uV=ir({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),eg=ir({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});l();var yr=Q0({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),hV=Q0({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});l();var mV=ir({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),wV=ir({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),Zn=ir({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),bV=ir({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});l();function i1(t){return t.byteOffset!==0||t.byteLength!==t.buffer.byteLength}function o1(t){return typeof t!="object"||t===null?!1:typeof t[Symbol.asyncIterator]=="function"}function ca(t){let r=Object.prototype.toString.call(t).match(/\s([a-zA-Z0-9]+)/),[n,i]=r;return i}var rd=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())})},s1=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)}},Vl=new TextEncoder,Ms=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(!o1(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 Zn.baseDecode(this.data).buffer;case"BufferSource":{if(ca(this.data)==="ArrayBuffer")return this.data;if(ArrayBuffer.isView(this.data))return i1(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 rd(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 eg.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 Zn.baseEncode(e)}case"BufferSource":{let e=this.toUint8Array();return Zn.baseEncode(e)}case"Object":{let e=JSON.stringify(this.data),r=Vl.encode(e);return Zn.baseEncode(r)}case"String":{let e=Vl.encode(this.data);return Zn.baseEncode(e)}case"Uint8Array":return Zn.baseEncode(this.data);default:throw new TypeError(`Conversion from ${this.format} to Base64Url is not supported.`)}}toBlobAsync(){return rd(this,void 0,void 0,function*(){var e,r,n,i;switch(this.format){case"AsyncIterable":{let a=[];try{for(var o=!0,s=s1(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=Zn.baseDecode(this.data),r=Ms.decode(e);return JSON.parse(r)}case"String":return JSON.parse(this.data);case"Uint8Array":{let e=Ms.decode(this.data);return JSON.parse(e)}default:throw new TypeError(`Conversion from ${this.format} to Object is not supported.`)}}toObjectAsync(){return rd(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 Ms.decode(this.data);case"Base64Url":{let e=Zn.baseDecode(this.data);return Ms.decode(e)}case"Object":return JSON.stringify(this.data);case"Uint8Array":return Ms.decode(this.data);default:throw new TypeError(`Conversion from ${this.format} to String is not supported.`)}}toStringAsync(){return rd(this,void 0,void 0,function*(){var e,r,n,i;switch(this.format){case"AsyncIterable":{let a="";try{for(var o=!0,s=s1(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+=Ms.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+=Ms.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 eg.baseDecode(this.data);case"Base58Btc":return yr.baseDecode(this.data);case"Base64Url":return Zn.baseDecode(this.data);case"BufferSource":{let e=ca(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 Vl.encode(e)}case"String":return Vl.encode(this.data);default:throw new TypeError(`Conversion from ${this.format} to Uint8Array is not supported.`)}}toUint8ArrayAsync(){return rd(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 nd;(function(t){t.Debug="debug",t.Silent="silent"})(nd||(nd={}));var tg=class{constructor(){this.logLevel=nd.Silent}setLogLevel(e){this.logLevel=e}log(e){this.info(e)}info(e){this.logLevel!==nd.Silent&&console.info(e)}error(e){this.logLevel!==nd.Silent&&console.error(e)}},S6=new tg;typeof window<"u"&&(window.web5logger=S6);l();l();l();l();var $i={};If($i,{decode:()=>aa,encodeTo:()=>Ks,encodingLength:()=>$s});l();l();var A6=u1,c1=128,T6=127,_6=~T6,I6=Math.pow(2,31);function u1(t,e,r){e=e||[],r=r||0;for(var n=r;t>=I6;)e[r++]=t&255|c1,t/=128;for(;t&_6;)e[r++]=t&255|c1,t>>>=7;return e[r]=t|0,u1.bytes=r-n+1,e}var B6=rg,R6=128,a1=127;function rg(t,n){var r=0,n=n||0,i=0,o=n,s,c=t.length;do{if(o>=c)throw rg.bytes=0,new RangeError("Could not decode varint");s=t[o++],r+=i<28?(s&a1)<<i:(s&a1)*Math.pow(2,i),i+=7}while(s>=R6);return rg.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,id=H6;function aa(t,e=0){return[id.decode(t,e),id.decode.bytes]}function Ks(t,e,r=0){return id.encode(t,e,r),e}function $s(t){return id.encodingLength(t)}function ng(t,e){let r=e.byteLength,n=$s(t),i=n+$s(r),o=new Uint8Array(i+r);return Ks(t,o,0),Ks(r,o,n),o.set(e,i),new ua(t,r,e,o)}function d1(t){let e=sa(t),[r,n]=aa(e),[i,o]=aa(e.subarray(n)),s=e.subarray(n+o);if(s.byteLength!==i)throw new Error("Incorrect length");return new ua(r,i,s,e)}function f1(t,e){if(t===e)return!0;{let r=e;return t.code===r.code&&t.size===r.size&&r.bytes instanceof Uint8Array&&e1(t.bytes,r.bytes)}}var ua=class{code;size;digest;bytes;constructor(e,r,n,i){this.code=e,this.size=r,this.digest=n,this.bytes=i}};l();function l1(t,e){let{bytes:r,version:n}=t;switch(n){case 0:return q6(r,og(t),e??yr.encoder);default:return F6(r,og(t),e??td.encoder)}}var h1=new WeakMap;function og(t){let e=h1.get(t);if(e==null){let r=new Map;return h1.set(t,r),r}return e}var sg=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!==od)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=ng(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&&f1(e.multihash,n.multihash)}toString(e){return l1(this,e)}toJSON(){return{"/":l1(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??p1(n,i,o.bytes))}else if(r[W6]===!0){let{version:n,multihash:i,code:o}=r,s=d1(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!==od)throw new Error(`Version 0 CID must use dag-pb (code: ${od}) block encoding`);return new t(e,r,n,n.bytes)}case 1:{let i=p1(e,r,n.bytes);return new t(e,r,n,i)}default:throw new Error("Invalid version")}}static createV0(e){return t.create(0,od,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=sa(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 ua(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]=aa(e.subarray(r));return r+=h,f},i=n(),o=od;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 og(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 td.prefix:{let r=e??td;return[td.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 od=112,j6=18;function p1(t,e,r){let n=$s(t),i=n+$s(e),o=new Uint8Array(i+r.byteLength);return Ks(t,o,0),Ks(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=$i.encodingLength(n),c=new Uint8Array(s+i.byteLength);return c.set(i,s),$i.encodeTo(n,c),c}static getCodeFromData(e){let{prefixedData:r}=e,[n,i]=$i.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]=$i.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 cg(t){Object.keys(t).forEach(e=>{t[e]===void 0?delete t[e]:typeof t[e]=="object"&&cg(t[e])})}l();var QU=Kn(Qg(),1),tc=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 gh=class{constructor(){this.store=new Map}clear(){return tc(this,void 0,void 0,function*(){this.store.clear()})}close(){return tc(this,void 0,void 0,function*(){})}delete(e){return tc(this,void 0,void 0,function*(){return this.store.delete(e)})}get(e){return tc(this,void 0,void 0,function*(){return this.store.get(e)})}has(e){return tc(this,void 0,void 0,function*(){return this.store.has(e)})}list(){return tc(this,void 0,void 0,function*(){return Array.from(this.store.values())})}set(e,r){return tc(this,void 0,void 0,function*(){this.store.set(e,r)})}};l();l();var g4=Kn(fw(),1);var m4=Kn(fw(),1);l();l();l();l();l();function w4(t){return t instanceof Uint8Array||t!=null&&typeof t=="object"&&t.constructor.name==="Uint8Array"}function lw(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 hw(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 ET(t,e){lw(t);let r=e.outputLen;if(t.length<r)throw new Error(`digestInto() expects output buffer of length at least ${r}`)}l();l();var Ca=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;var Yh=t=>new DataView(t.buffer,t.byteOffset,t.byteLength),Bn=(t,e)=>t<<32-e|t>>>e;var jj=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 pw(t){return typeof t=="string"&&(t=b4(t)),lw(t),t}var zh=class{clone(){return this._cloneInto()}},Wj={}.toString;function vT(t){let e=n=>t().update(pw(n)).digest(),r=t();return e.outputLen=r.outputLen,e.blockLen=r.blockLen,e.create=()=>t(),e}function ST(t=32){if(Ca&&typeof Ca.getRandomValues=="function")return Ca.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 AT=(t,e,r)=>t&e^~t&r,TT=(t,e,r)=>t&e^t&r^e&r,Jh=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=Yh(this.buffer)}update(e){hw(this);let{view:r,buffer:n,blockLen:i}=this;e=pw(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=Yh(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){hw(this),ET(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=Yh(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]),zo=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),Yo=new Uint32Array(64),yw=class extends Jh{constructor(){super(64,32,8,!1),this.A=zo[0]|0,this.B=zo[1]|0,this.C=zo[2]|0,this.D=zo[3]|0,this.E=zo[4]|0,this.F=zo[5]|0,this.G=zo[6]|0,this.H=zo[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)Yo[f]=e.getUint32(r,!1);for(let f=16;f<64;f++){let h=Yo[f-15],p=Yo[f-2],g=Bn(h,7)^Bn(h,18)^h>>>3,y=Bn(p,17)^Bn(p,19)^p>>>10;Yo[f]=y+Yo[f-7]+g+Yo[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+AT(c,a,u)+E4[f]+Yo[f]|0,y=(Bn(n,2)^Bn(n,13)^Bn(n,22))+TT(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(){Yo.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}};var Jo=vT(()=>new yw);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())})},La=class{static digest(e){return v4(this,arguments,void 0,function*({data:r}){return Jo(r)})}};l();var ai=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())})},Xh=class extends ai{digest(e){return S4(this,arguments,void 0,function*({algorithm:r,data:n}){switch(r){case"SHA-256":return yield La.digest({data:n})}})}};l();l();l();l();l();l();function _T(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 gw(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 IT(t){if(typeof t!="function"||typeof t.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");_T(t.outputLen),_T(t.blockLen)}function Pa(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){gw(t);let r=e.outputLen;if(t.length<r)throw new Error(`digestInto() expects output buffer of length at least ${r}`)}l();l();var Zh=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;function RT(t){return t instanceof Uint8Array||t!=null&&typeof t=="object"&&t.constructor.name==="Uint8Array"}var Qh=t=>new DataView(t.buffer,t.byteOffset,t.byteLength),Rn=(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 mw(t){if(typeof t!="string")throw new Error(`utf8ToBytes expected string, got ${typeof t}`);return new Uint8Array(new TextEncoder().encode(t))}function Md(t){if(typeof t=="string"&&(t=mw(t)),!RT(t))throw new Error(`expected Uint8Array, got ${typeof t}`);return t}function ep(...t){let e=0;for(let n=0;n<t.length;n++){let i=t[n];if(!RT(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 Ma=class{clone(){return this._cloneInto()}},mW={}.toString;function tp(t){let e=n=>t().update(Md(n)).digest(),r=t();return e.outputLen=r.outputLen,e.blockLen=r.blockLen,e.create=()=>t(),e}function Kd(t=32){if(Zh&&typeof Zh.getRandomValues=="function")return Zh.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 Ka=class extends Ma{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){Pa(this);let{view:r,buffer:n,blockLen:i}=this;e=Md(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){Pa(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;_4(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 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]),Xo=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),Zo=new Uint32Array(64),ww=class extends Ka{constructor(){super(64,32,8,!1),this.A=Xo[0]|0,this.B=Xo[1]|0,this.C=Xo[2]|0,this.D=Xo[3]|0,this.E=Xo[4]|0,this.F=Xo[5]|0,this.G=Xo[6]|0,this.H=Xo[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=Rn(h,7)^Rn(h,18)^h>>>3,y=Rn(p,17)^Rn(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=Rn(c,6)^Rn(c,11)^Rn(c,25),p=d+h+I4(c,a,u)+R4[f]+Zo[f]|0,y=(Rn(n,2)^Rn(n,13)^Rn(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(){Zo.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}};var rp=tp(()=>new ww);l();var ip={};If(ip,{bitGet:()=>L4,bitLen:()=>C4,bitMask:()=>$d,bitSet:()=>P4,bytesToHex:()=>Qi,bytesToNumberBE:()=>eo,bytesToNumberLE:()=>On,concatBytes:()=>ro,createHmacDrbg:()=>Ew,ensureBytes:()=>Ge,equalBytes:()=>k4,hexToBytes:()=>hc,hexToNumber:()=>xw,isBytes:()=>Un,numberToBytesBE:()=>mr,numberToBytesLE:()=>to,numberToHexUnpadded:()=>kT,numberToVarBytesBE:()=>D4,utf8ToBytes:()=>N4,validateObject:()=>sn});l();var DT=BigInt(0),np=BigInt(1),U4=BigInt(2);function Un(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 Qi(t){if(!Un(t))throw new Error("Uint8Array expected");let e="";for(let r=0;r<t.length;r++)e+=O4[t[r]];return e}function kT(t){let e=t.toString(16);return e.length&1?`0${e}`:e}function xw(t){if(typeof t!="string")throw new Error("hex string expected, got "+typeof t);return BigInt(t===""?"0":`0x${t}`)}var Zi={_0:48,_9:57,_A:65,_F:70,_a:97,_f:102};function UT(t){if(t>=Zi._0&&t<=Zi._9)return t-Zi._0;if(t>=Zi._A&&t<=Zi._F)return t-(Zi._A-10);if(t>=Zi._a&&t<=Zi._f)return t-(Zi._a-10)}function hc(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=UT(t.charCodeAt(o)),c=UT(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 eo(t){return xw(Qi(t))}function On(t){if(!Un(t))throw new Error("Uint8Array expected");return xw(Qi(Uint8Array.from(t).reverse()))}function mr(t,e){return hc(t.toString(16).padStart(e*2,"0"))}function to(t,e){return mr(t,e).reverse()}function D4(t){return hc(kT(t))}function Ge(t,e,r){let n;if(typeof e=="string")try{n=hc(e)}catch(o){throw new Error(`${t} must be valid hex string, got "${e}". Cause: ${o}`)}else if(Un(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 ro(...t){let e=0;for(let i=0;i<t.length;i++){let o=t[i];if(!Un(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>DT;t>>=np,e+=1);return e}function L4(t,e){return t>>BigInt(e)&np}var P4=(t,e,r)=>t|(r?np:DT)<<BigInt(e),$d=t=>(U4<<BigInt(t-1))-np,bw=t=>new Uint8Array(t),OT=t=>Uint8Array.from(t);function Ew(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(OT([0]),f),n=c(),f.length!==0&&(i=c(OT([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 ro(...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"||Un(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),pc=BigInt(2),K4=BigInt(3),vw=BigInt(4),NT=BigInt(5),CT=BigInt(8),$4=BigInt(9),H4=BigInt(16);function Re(t,e){let r=t%e;return r>=It?r:e+r}function Sw(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 op(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 V4(t){let e=(t-et)/pc,r,n,i;for(r=t-et,n=0;r%pc===It;r/=pc,n++);for(i=pc;i<t&&Sw(i,e,t)!==t-et;i++);if(n===1){let s=(t+et)/vw;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)/pc;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%vw===K4){let e=(t+et)/vw;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%CT===NT){let e=(t-NT)/CT;return function(n,i){let o=n.mul(i,pc),s=n.pow(o,e),c=n.mul(i,s),a=n.mul(n.mul(c,pc),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 LT=(t,e)=>(Re(t,e)&et)===et,F4=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function Aw(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 Tw(t,e){let r=e!==void 0?e:t.toString(2).length,n=Math.ceil(r/8);return{nBitLength:r,nByteLength:n}}function $a(t,e,r=!1,n={}){if(t<=It)throw new Error(`Expected Field ORDER > 0, got ${t}`);let{nBitLength:i,nByteLength:o}=Tw(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:$d(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)=>j4(c,a,u),div:(a,u)=>Re(a*op(u,t),t),sqrN:a=>a*a,addN:(a,u)=>a+u,subN:(a,u)=>a-u,mulN:(a,u)=>a*u,inv:a=>op(a,t),sqrt:n.sqrt||(a=>s(c,a)),invertBatch:a=>W4(c,a),cmov:(a,u,d)=>d?u:a,toBytes:a=>r?to(a,o):mr(a,o),fromBytes:a=>{if(a.length!==o)throw new Error(`Fp.fromBytes: expected ${o}, got ${a.length}`);return r?On(a):eo(a)}});return Object.freeze(c)}function PT(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 MT(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 _w(t){let e=MT(t);return e+Math.ceil(e/2)}function KT(t,e,r=!1){let n=t.length,i=MT(e),o=_w(e);if(n<16||n<o||n>1024)throw new Error(`expected ${o}-1024 bytes of input, got ${n}`);let s=r?eo(t):On(t),c=Re(s,e-et)+et;return r?to(c,i):mr(c,i)}l();l();var z4=BigInt(0),Iw=BigInt(1);function sp(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&Iw&&(s=s.add(c)),c=c.double(),o>>=Iw;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+=Iw);let S=y,I=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[I]))}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 Hd(t){return Aw(t.Fp),sn(t,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...Tw(t.n,t.nBitLength),...t,p:t.Fp.ORDER})}function Y4(t){let e=Hd(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}=ip,yc={Err:class extends Error{constructor(e=""){super(e)}},_parseInt(t){let{Err:e}=yc;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}=yc,r=typeof t=="string"?X4(t):t;if(!Un(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}=yc._parseInt(r.subarray(2)),{d:s,l:c}=yc._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}`}},no=BigInt(0),cn=BigInt(1),MW=BigInt(2),$T=BigInt(3),KW=BigInt(4);function Z4(t){let e=Y4(t),{Fp:r}=e,n=e.toBytes||((g,y,x)=>{let S=y.toAffine();return ro(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),I=r.mul(S,g);return r.add(r.add(I,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"&&no<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:I}=e;if(y&&typeof g!="bigint"){if(Un(g)&&(g=Qi(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:eo(Ge("private key",g,x))}catch{throw new Error(`private key must be ${x} bytes, hex or bigint, not ${typeof g}`)}return S&&(A=Re(A,I)),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 I=A=>r.eql(A,r.ZERO);return I(x)&&I(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,I)=>S.toAffine(x[I])).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),I=o(y);if(!r.eql(S,I))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:I}=this,{px:A,py:O,pz:T}=y,M=r.eql(r.mul(x,T),r.mul(A,I)),q=r.eql(r.mul(S,T),r.mul(O,I));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,$T),{px:I,py:A,pz:O}=this,T=r.ZERO,M=r.ZERO,q=r.ZERO,j=r.mul(I,I),$=r.mul(A,A),Z=r.mul(O,O),Q=r.mul(I,A);return Q=r.add(Q,Q),q=r.mul(I,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:I}=this,{px:A,py:O,pz:T}=y,M=r.ZERO,q=r.ZERO,j=r.ZERO,$=e.a,Z=r.mul(e.b,$T),Q=r.mul(x,A),G=r.mul(S,O),_=r.mul(I,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,I);let U=r.add(A,T);return E=r.mul(E,U),U=r.add(Q,_),E=r.sub(E,U),U=r.add(S,I),M=r.add(O,T),U=r.mul(U,M),M=r.add(G,_),U=r.sub(U,M),j=r.mul($,E),M=r.mul(Z,_),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),_=r.mul($,_),E=r.mul(Z,E),G=r.add(G,_),_=r.sub(Q,_),_=r.mul($,_),E=r.add(E,_),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(I=>I.pz));return x.map((I,A)=>I.toAffine(S[A])).map(f.fromAffine)})}multiplyUnsafe(y){let x=f.ZERO;if(y===no)return x;if(c(y),y===cn)return this;let{endo:S}=e;if(!S)return p.unsafeLadder(this,y);let{k1neg:I,k1:A,k2neg:O,k2:T}=S.splitScalar(y),M=x,q=x,j=this;for(;A>no||T>no;)A&cn&&(M=M.add(j)),T&cn&&(q=q.add(j)),j=j.double(),A>>=cn,T>>=cn;return I&&(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,I,{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),I=$.add(Q)}else{let{p:O,f:T}=this.wNAF(x);S=O,I=T}return f.normalizeZ([S,I])[0]}multiplyAndAddUnsafe(y,x,S){let I=f.BASE,A=(T,M)=>M===no||M===cn||!T.equals(I)?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:I}=this,A=this.is0();y==null&&(y=A?r.ONE:r.inv(I));let O=r.mul(x,y),T=r.mul(S,y),M=r.mul(I,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 Qi(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=sp(f,e.endo?Math.ceil(h/2):h);return{CURVE:e,ProjectivePoint:f,normPrivateKeyToScalar:a,weierstrassEquation:o,isWithinCurveOrder:s}}function Q4(t){let e=Hd(t);return sn(e,{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze({lowS:!0,...e})}function HT(t){let e=Q4(t),{Fp:r,n}=e,i=r.BYTES+1,o=2*r.BYTES+1;function s(E){return no<E&&E<r.ORDER}function c(E){return Re(E,n)}function a(E){return op(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=ro;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=eo(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=>Qi(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)=>eo(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}=yc.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 hc(this.toDERHex())}toDERHex(){return yc.hexFromSig({r:this.r,s:this.s})}toCompactRawBytes(){return hc(this.toCompactHex())}toCompactHex(){return p(this.r)+p(this.s)}}let I={isValidPrivateKey(E){try{return d(E),!0}catch{return!1}},normPrivateKeyToScalar:d,randomPrivateKey:()=>{let E=_w(e.n);return KT(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=Un(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=eo(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=$d(e.nBitLength);function $(E){if(typeof E!="bigint")throw new Error("bigint expected");if(!(no<=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=ro(...W),X=J;function ue(ee){let ce=M(ee);if(!h(ce))return;let Oe=a(ce),Me=u.BASE.multiply(ce).toAffine(),Je=c(Me.x);if(Je===no)return;let Et=c(Oe*c(X+Je*z));if(Et===no)return;let yi=(Me.x===Je?0:2)|Number(Me.y&cn),po=Et;return C&&g(Et)&&(po=y(Et),yi^=1),new S(Je,po,yi)}return{seed:Y,k2sig:ue}}let Q={lowS:e.lowS,prehash:!1},G={lowS:e.lowS,prehash:!1};function _(E,U,L=Q){let{seed:N,k2sig:R}=Z(E,U,L),C=e;return Ew(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"||Un(R))try{V=S.fromDER(R)}catch(Me){if(!(Me instanceof yc.Err))throw Me;V=S.fromCompact(R)}else if(typeof R=="object"&&typeof R.r=="bigint"&&typeof R.s=="bigint"){let{r:Me,s:Je}=R;V=new S(Me,Je)}else throw new Error("PARSE");J=u.fromHex(L)}catch(Me){if(Me.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:_,verify:D,ProjectivePoint:u,Signature:S,utils:I}}l();l();var cp=class extends Ma{constructor(e,r){super(),this.finished=!1,this.destroyed=!1,IT(e);let n=Md(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 Pa(this),this.iHash.update(e),this}digestInto(e){Pa(this),gw(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()}},Bw=(t,e,r)=>new cp(t,e).update(r).digest();Bw.create=(t,e)=>new cp(t,e);function eN(t){return{hash:t,hmac:(e,...r)=>Bw(t,e,ep(...r)),randomBytes:Kd}}function ap(t,e){let r=n=>HT({...t,...eN(n)});return Object.freeze({...r(e),create:r})}var FT=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),VT=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),tN=BigInt(1),Rw=BigInt(2),qT=(t,e)=>(t+e/Rw)/e;function rN(t){let e=FT,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,Rw,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,I=ze(S,c,e)*y%e,A=ze(I,r,e)*d%e,O=ze(A,s,e)*g%e,T=ze(O,n,e)*u%e,M=ze(T,Rw,e);if(!Uw.eql(Uw.sqr(M),t))throw new Error("Cannot find square root");return M}var Uw=$a(FT,void 0,void 0,{sqrt:rN}),wr=ap({a:BigInt(0),b:BigInt(7),Fp:Uw,n:VT,Gx:BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),Gy:BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),h:BigInt(1),lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:t=>{let e=VT,r=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),n=-tN*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),i=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),o=r,s=BigInt("0x100000000000000000000000000000000"),c=qT(o*t,e),a=qT(-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}}}},rp),eG=BigInt(0);var tG=wr.ProjectivePoint;l();l();function jT(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())})},Ow="urn:jwk:";function we(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}`);cg(n);let i=jT(n),o=ne.string(i).toUint8Array(),s=yield La.digest({data:o});return ne.uint8Array(s).toBase64Url()})}function ui(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 Ha(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 di(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 Va(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 WT(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 Vt=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},Nt=class t{static adjustSignatureToLowS(e){return Vt(this,arguments,void 0,function*({signature:r}){let n=wr.Signature.fromCompact(r);return n.hasHighS()?n.normalizeS().toCompactRawBytes():r})}static bytesToPrivateKey(e){return Vt(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 we({jwk:i}),i})}static bytesToPublicKey(e){return Vt(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 we({jwk:i}),i})}static compressPublicKey(e){return Vt(this,arguments,void 0,function*({publicKeyBytes:r}){return wr.ProjectivePoint.fromHex(r).toRawBytes(!0)})}static computePublicKey(e){return Vt(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 we({jwk:o}),o})}static convertDerToCompactSignature(e){return Vt(this,arguments,void 0,function*({derSignature:r}){return wr.Signature.fromDER(r).toCompactRawBytes()})}static decompressPublicKey(e){return Vt(this,arguments,void 0,function*({publicKeyBytes:r}){return wr.ProjectivePoint.fromHex(r).toRawBytes(!1)})}static generateKey(){return Vt(this,void 0,void 0,function*(){let e=wr.utils.randomPrivateKey(),r=yield t.bytesToPrivateKey({privateKeyBytes:e});return r.kid=yield we({jwk:r}),r})}static getPublicKey(e){return Vt(this,arguments,void 0,function*({key:r}){var n;if(!(ui(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 we({jwk:o})),o})}static privateKeyToBytes(e){return Vt(this,arguments,void 0,function*({privateKey:r}){if(!ui(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 Vt(this,arguments,void 0,function*({publicKey:r}){if(!(Ha(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 Vt(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 Vt(this,arguments,void 0,function*({data:r,key:n}){let i=yield t.privateKeyToBytes({privateKey:n}),o=Jo(r);return wr.sign(o,i).toCompactRawBytes()})}static validatePrivateKey(e){return Vt(this,arguments,void 0,function*({privateKeyBytes:r}){return wr.utils.isValidPrivateKey(r)})}static validatePublicKey(e){return Vt(this,arguments,void 0,function*({publicKeyBytes:r}){try{wr.ProjectivePoint.fromHex(r).assertValidity()}catch{return!1}return!0})}static verify(e){return Vt(this,arguments,void 0,function*({key:r,signature:n,data:i}){let o=yield t.publicKeyToBytes({publicKey:r}),s=Jo(i);return wr.verify(n,s,o,{lowS:!1})})}static getCurvePoint(e){return Vt(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 GT=$a(BigInt("0xffffffff00000001000000000000000000000000ffffffffffffffffffffffff")),oN=GT.create(BigInt("-3")),sN=BigInt("0x5ac635d8aa3a93e7b3ebbd55769886bc651d06b0cc53b0f63bce3c3e27d2604b"),cN=ap({a:oN,b:sN,Fp:GT,n:BigInt("0xffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551"),Gx:BigInt("0x6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296"),Gy:BigInt("0x4fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5"),h:BigInt(1),lowS:!1},rp),Mr=cN;var qt=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},Ft=class t{static adjustSignatureToLowS(e){return qt(this,arguments,void 0,function*({signature:r}){let n=Mr.Signature.fromCompact(r);return n.hasHighS()?n.normalizeS().toCompactRawBytes():r})}static bytesToPrivateKey(e){return qt(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 we({jwk:i}),i})}static bytesToPublicKey(e){return qt(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 we({jwk:i}),i})}static compressPublicKey(e){return qt(this,arguments,void 0,function*({publicKeyBytes:r}){return Mr.ProjectivePoint.fromHex(r).toRawBytes(!0)})}static computePublicKey(e){return qt(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 we({jwk:o}),o})}static convertDerToCompactSignature(e){return qt(this,arguments,void 0,function*({derSignature:r}){return Mr.Signature.fromDER(r).toCompactRawBytes()})}static decompressPublicKey(e){return qt(this,arguments,void 0,function*({publicKeyBytes:r}){return Mr.ProjectivePoint.fromHex(r).toRawBytes(!1)})}static generateKey(){return qt(this,void 0,void 0,function*(){let e=Mr.utils.randomPrivateKey(),r=yield t.bytesToPrivateKey({privateKeyBytes:e});return r.kid=yield we({jwk:r}),r})}static getPublicKey(e){return qt(this,arguments,void 0,function*({key:r}){var n;if(!(ui(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 we({jwk:o})),o})}static privateKeyToBytes(e){return qt(this,arguments,void 0,function*({privateKey:r}){if(!ui(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 qt(this,arguments,void 0,function*({publicKey:r}){if(!(Ha(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 qt(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 Mr.getSharedSecret(i,o,!0).slice(1)})}static sign(e){return qt(this,arguments,void 0,function*({data:r,key:n}){let i=yield t.privateKeyToBytes({privateKey:n}),o=Jo(r);return Mr.sign(o,i).toCompactRawBytes()})}static validatePrivateKey(e){return qt(this,arguments,void 0,function*({privateKeyBytes:r}){return Mr.utils.isValidPrivateKey(r)})}static validatePublicKey(e){return qt(this,arguments,void 0,function*({publicKeyBytes:r}){try{Mr.ProjectivePoint.fromHex(r).assertValidity()}catch{return!1}return!0})}static verify(e){return qt(this,arguments,void 0,function*({key:r,signature:n,data:i}){let o=yield t.publicKeyToBytes({publicKey:r}),s=Jo(i);return Mr.verify(n,s,o,{lowS:!1})})}static getCurvePoint(e){return qt(this,arguments,void 0,function*({keyBytes:r}){r.byteLength===32&&(r=Mr.getPublicKey(r));let n=Mr.ProjectivePoint.fromHex(r),i=mr(n.x,32),o=mr(n.y,32);return{x:i,y:o}})}};var Vd=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())})},qd=class extends ai{computePublicKey(e){return Vd(this,arguments,void 0,function*({key:r}){if(!ui(r))throw new TypeError("Invalid key provided. Must be an elliptic curve (EC) private key.");switch(r.crv){case"secp256k1":{let n=yield Nt.computePublicKey({key:r});return n.alg="ES256K",n}case"P-256":{let n=yield Ft.computePublicKey({key:r});return n.alg="ES256",n}default:throw new Error(`Unsupported curve: ${r.crv}`)}})}generateKey(e){return Vd(this,arguments,void 0,function*({algorithm:r}){switch(r){case"ES256K":case"secp256k1":{let n=yield Nt.generateKey();return n.alg="ES256K",n}case"ES256":case"secp256r1":{let n=yield Ft.generateKey();return n.alg="ES256",n}}})}getPublicKey(e){return Vd(this,arguments,void 0,function*({key:r}){if(!ui(r))throw new TypeError("Invalid key provided. Must be an elliptic curve (EC) private key.");switch(r.crv){case"secp256k1":{let n=yield Nt.getPublicKey({key:r});return n.alg="ES256K",n}case"P-256":{let n=yield Ft.getPublicKey({key:r});return n.alg="ES256",n}default:throw new Error(`Unsupported curve: ${r.crv}`)}})}sign(e){return Vd(this,arguments,void 0,function*({key:r,data:n}){if(!ui(r))throw new TypeError("Invalid key provided. Must be an elliptic curve (EC) private key.");switch(r.crv){case"secp256k1":return yield Nt.sign({key:r,data:n});case"P-256":return yield Ft.sign({key:r,data:n});default:throw new Error(`Unsupported curve: ${r.crv}`)}})}verify(e){return Vd(this,arguments,void 0,function*({key:r,signature:n,data:i}){if(!Ha(r))throw new TypeError("Invalid key provided. Must be an elliptic curve (EC) public key.");switch(r.crv){case"secp256k1":return yield Nt.verify({key:r,signature:n,data:i});case"P-256":return yield Ft.verify({key:r,signature:n,data:i});default:throw new Error(`Unsupported curve: ${r.crv}`)}})}};l();l();l();l();l();var up=BigInt(4294967295),Dw=BigInt(32);function zT(t,e=!1){return e?{h:Number(t&up),l:Number(t>>Dw&up)}:{h:Number(t>>Dw&up)|0,l:Number(t&up)|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}=zT(t[i],e);[r[i],n[i]]=[o,s]}return[r,n]}var dN=(t,e)=>BigInt(t>>>0)<<Dw|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:zT,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},pe=UN;var[ON,DN]=pe.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))),Qo=new Uint32Array(80),es=new Uint32Array(80),kw=class extends Ka{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)Qo[A]=e.getUint32(r),es[A]=e.getUint32(r+=4);for(let A=16;A<80;A++){let O=Qo[A-15]|0,T=es[A-15]|0,M=pe.rotrSH(O,T,1)^pe.rotrSH(O,T,8)^pe.shrSH(O,T,7),q=pe.rotrSL(O,T,1)^pe.rotrSL(O,T,8)^pe.shrSL(O,T,7),j=Qo[A-2]|0,$=es[A-2]|0,Z=pe.rotrSH(j,$,19)^pe.rotrBH(j,$,61)^pe.shrSH(j,$,6),Q=pe.rotrSL(j,$,19)^pe.rotrBL(j,$,61)^pe.shrSL(j,$,6),G=pe.add4L(q,Q,es[A-7],es[A-16]),_=pe.add4H(G,M,Z,Qo[A-7],Qo[A-16]);Qo[A]=_|0,es[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:I}=this;for(let A=0;A<80;A++){let O=pe.rotrSH(f,h,14)^pe.rotrSH(f,h,18)^pe.rotrBH(f,h,41),T=pe.rotrSL(f,h,14)^pe.rotrSL(f,h,18)^pe.rotrBL(f,h,41),M=f&p^~f&y,q=h&g^~h&x,j=pe.add5L(I,T,q,DN[A],es[A]),$=pe.add5H(j,S,O,M,ON[A],Qo[A]),Z=j|0,Q=pe.rotrSH(n,i,28)^pe.rotrBH(n,i,34)^pe.rotrBH(n,i,39),G=pe.rotrSL(n,i,28)^pe.rotrBL(n,i,34)^pe.rotrBL(n,i,39),_=n&o^n&c^o&c,D=i&s^i&a^s&a;S=y|0,I=x|0,y=p|0,x=g|0,p=f|0,g=h|0,{h:f,l:h}=pe.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=pe.add3L(Z,G,D);n=pe.add3H(E,$,Q,_),i=E|0}({h:n,l:i}=pe.add(this.Ah|0,this.Al|0,n|0,i|0)),{h:o,l:s}=pe.add(this.Bh|0,this.Bl|0,o|0,s|0),{h:c,l:a}=pe.add(this.Ch|0,this.Cl|0,c|0,a|0),{h:u,l:d}=pe.add(this.Dh|0,this.Dl|0,u|0,d|0),{h:f,l:h}=pe.add(this.Eh|0,this.El|0,f|0,h|0),{h:p,l:g}=pe.add(this.Fh|0,this.Fl|0,p|0,g|0),{h:y,l:x}=pe.add(this.Gh|0,this.Gl|0,y|0,x|0),{h:S,l:I}=pe.add(this.Hh|0,this.Hl|0,S|0,I|0),this.set(n,i,o,s,c,a,u,d,f,h,p,g,y,x,S,I)}roundClean(){Qo.fill(0),es.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 Nw=tp(()=>new kw);l();var Dn=BigInt(0),Kr=BigInt(1),dp=BigInt(2),kN=BigInt(8),NN={zip215:!0};function CN(t){let e=Hd(t);return sn(t,{hash:"function",a:"bigint",d:"bigint",randomBytes:"function"},{adjustScalarBytes:"function",domain:"function",uvRatio:"function",mapToCurve:"function"}),Object.freeze({...e})}function fp(t){let e=CN(t),{Fp:r,n,prehash:i,hash:o,randomBytes:s,nByteLength:c,h:a}=e,u=dp<<BigInt(c*8)-Kr,d=r.create,f=e.uvRatio||((N,R)=>{try{return{isValid:!0,value:r.sqrt(N*r.inv(R))}}catch{return{isValid:!1,value:Dn}}}),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"&&Dn<N,y=(N,R)=>g(N)&&g(R)&&N<R,x=N=>N===Dn||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 I(N){return N===Dn?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,Kr,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 Me=d(P*V),Je=d(J*z);if(Me!==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(dp*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,Me=d(ue*ce),Je=d(ee*Oe),Et=d(ue*Oe),yi=d(ce*ee);return new T(Me,Je,yi,Et)}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 hu=d((J-V)*(X+Y)),bf=d((J+V)*(X-Y)),pu=d(bf-hu);if(pu===Dn)return this.double();let xf=d(z*dp*ee),Ef=d(W*dp*ue),Wr=Ef+xf,go=bf+hu,yu=Ef-xf,vf=d(Wr*pu),ls=d(go*yu),Sf=d(Wr*yu),ty=d(pu*go);return new T(vf,ls,ty,Sf)}let ce=d(V*Y),Oe=d(J*X),Me=d(W*P*ee),Je=d(z*ue),Et=d((V+J)*(Y+X)-ce-Oe),yi=Je-Me,po=Je+Me,lu=d(Oe-C*ce),wf=d(Et*yi),ey=d(po*lu),yo=d(Et*lu),jr=d(yi*po);return new T(wf,ey,jr,yo)}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=I(R);return C===Dn?q:this.equals(q)||C===Kr?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:Dn,y:Kr};if(Y!==Kr)throw new Error("invZ was invalid");return{x:z,y:W}}clearCofactor(){let{h:R}=e;return R===Kr?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=On(z);Y===Dn||(C?S(Y,u):S(Y,r.ORDER));let X=d(Y*Y),ue=d(X-Kr),ee=d(P*X-V),{isValid:ce,value:Oe}=f(ue,ee);if(!ce)throw new Error("Point.fromHex: invalid y coordinate");let Me=(Oe&Kr)===Kr,Je=(W&128)!==0;if(!C&&Oe===Dn&&Je)throw new Error("Point.fromHex: x=0 and x_0=1");return Je!==Me&&(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=to(C,r.BYTES);return P[P.length-1]|=R&Kr?128:0,P}toHex(){return Qi(this.toRawBytes())}}T.BASE=new T(e.Gx,e.Gy,Kr,d(e.Gx*e.Gy)),T.ZERO=new T(Dn,Kr,Kr,Dn);let{BASE:M,ZERO:q}=T,j=sp(T,c*8);function $(N){return Re(N,n)}function Z(N){return $(On(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 _(N=new Uint8Array,...R){let C=ro(...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=_(C.context,P,N),W=M.multiply(z).toRawBytes(),Y=_(C.context,W,J,N),X=$(z+Y*V);I(X);let ue=ro(W,to(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=On(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=_(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 Fd=BigInt(0),Cw=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 YT(t){let e=LN(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=>Sw(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"&&Fd<=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=Cw,$=Fd,Z=T,Q=Cw,G=Fd,_;for(let E=BigInt(i-1);E>=Fd;E--){let U=M>>E&Cw;G^=U,_=u(G,j,Z),j=_[0],Z=_[1],_=u(G,$,Q),$=_[0],Q=_[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)))}_=u(G,j,Z),j=_[0],Z=_[1],_=u(G,$,Q),$=_[0],Q=_[1];let D=a($);return n(j*D)}function p(A){return to(n(A),o)}function g(A){let O=Ge("u coordinate",A,o);return s===32&&(O[31]&=127),On(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 On(c(O))}function x(A,O){let T=g(O),M=y(A),q=h(T,M);if(q===Fd)throw new Error("Invalid private or public key received");return p(q)}let S=p(e.Gu);function I(A){return x(A,S)}return{scalarMult:x,scalarMultBase:I,getSharedSecret:(A,O)=>x(A,O),getPublicKey:A=>I(A),utils:{randomPrivateKey:()=>e.randomBytes(e.nByteLength)},GuBytes:S}}var jd=BigInt("57896044618658097711785492504343953926634992332820282019728792003956564819949"),JT=BigInt("19681161376707505956807079304988542015446066515923890162744021073123829784752"),nz=BigInt(0),PN=BigInt(1),Lw=BigInt(2),MN=BigInt(5),XT=BigInt(10),KN=BigInt(20),$N=BigInt(40),ZT=BigInt(80);function QT(t){let e=jd,n=t*t%e*t%e,i=ze(n,Lw,e)*n%e,o=ze(i,PN,e)*t%e,s=ze(o,MN,e)*o%e,c=ze(s,XT,e)*s%e,a=ze(c,KN,e)*c%e,u=ze(a,$N,e)*a%e,d=ze(u,ZT,e)*u%e,f=ze(d,ZT,e)*u%e,h=ze(f,XT,e)*s%e;return{pow_p_5_8:ze(h,Lw,e)*t%e,b2:n}}function e_(t){return t[0]&=248,t[31]&=127,t[31]|=64,t}function HN(t,e){let r=jd,n=Re(e*e*e,r),i=Re(n*n*e,r),o=QT(t*i).pow_p_5_8,s=Re(t*n*o,r),c=Re(e*s*s,r),a=s,u=Re(s*JT,r),d=c===t,f=c===Re(-t,r),h=c===Re(-t*JT,r);return d&&(s=a),(f||h)&&(s=u),LT(s,r)&&(s=Re(-s,r)),{isValid:d||f,value:s}}var an=$a(jd,void 0,!0),Wd={a:BigInt(-1),d:BigInt("37095705934669439343138083508754565189542113879843219016388785533085940283555"),Fp:an,n:BigInt("7237005577332262213973186563042994240857116359379907606001950938285454250989"),h:BigInt(8),Gx:BigInt("15112221349535400772501151409588531511454012693041857206046113283949847762202"),Gy:BigInt("46316835694926478169428394003475163141307993866256225615783033603165251855960"),hash:Nw,randomBytes:Kd,adjustScalarBytes:e_,uvRatio:HN},ts=fp(Wd);function t_(t,e,r){if(e.length>255)throw new Error("Context is too big");return ep(mw("SigEd25519 no Ed25519 collisions"),new Uint8Array([r?1:0,e.length]),e,t)}var iz=fp({...Wd,domain:t_}),oz=fp({...Wd,domain:t_,prehash:Nw}),gc=YT({P:jd,a:BigInt(486662),montgomeryBits:255,nByteLength:32,Gu:BigInt(9),powPminus2:t=>{let e=jd,{pow_p_5_8:r,b2:n}=QT(t);return Re(ze(r,BigInt(3),e)*n,e)},adjustScalarBytes:e_,randomBytes:Kd});function r_(t){let{y:e}=ts.ExtendedPoint.fromHex(t),r=BigInt(1);return an.toBytes(an.create((r+e)*an.inv(r-e)))}function n_(t){let e=Wd.hash(t.subarray(0,32));return Wd.adjustScalarBytes(e).subarray(0,32)}var VN=(an.ORDER+BigInt(3))/BigInt(8),sz=an.pow(Lw,VN),cz=an.sqrt(an.neg(an.ONE)),az=(an.ORDER-BigInt(5))/BigInt(8),uz=BigInt(486662);var dz=PT(an,an.neg(BigInt(486664)));var fz=BigInt("25063068953384623474111414158702152701244531502492656460079210482610430750235"),lz=BigInt("54469307008909316920995813868745141605393597292927456921205312896311721017578"),hz=BigInt("1159843021668779879193775521855586647937357759715417654439879720876111806838"),pz=BigInt("40440834346308536858101042469323190826248399146238708352240133220865137265952");var yz=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=ts.getPublicKey(r),i={crv:"Ed25519",d:ne.uint8Array(r).toBase64Url(),kty:"OKP",x:ne.uint8Array(n).toBase64Url()};return i.kid=yield we({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 we({jwk:n}),n})}static computePublicKey(e){return un(this,arguments,void 0,function*({key:r}){let n=yield t.privateKeyToBytes({privateKey:r}),i=ts.getPublicKey(n),o={kty:"OKP",crv:"Ed25519",x:ne.uint8Array(i).toBase64Url()};return o.kid=yield we({jwk:o}),o})}static convertPrivateKeyToX25519(e){return un(this,arguments,void 0,function*({privateKey:r}){let n=yield t.privateKeyToBytes({privateKey:r}),i=n_(n),o=gc.getPublicKey(i),s={kty:"OKP",crv:"X25519",d:ne.uint8Array(i).toBase64Url(),x:ne.uint8Array(o).toBase64Url()};return s.kid=yield we({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=r_(n),s={kty:"OKP",crv:"X25519",x:ne.uint8Array(o).toBase64Url()};return s.kid=yield we({jwk:s}),s})}static generateKey(){return un(this,void 0,void 0,function*(){let e=ts.utils.randomPrivateKey(),r=yield t.bytesToPrivateKey({privateKeyBytes:e});return r.kid=yield we({jwk:r}),r})}static getPublicKey(e){return un(this,arguments,void 0,function*({key:r}){var n;if(!(di(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 we({jwk:o})),o})}static privateKeyToBytes(e){return un(this,arguments,void 0,function*({privateKey:r}){if(!di(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(!Va(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 ts.sign(n,i)})}static validatePublicKey(e){return un(this,arguments,void 0,function*({publicKeyBytes:r}){try{ts.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 ts.verify(n,i,o)})}};var Gd=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())})},lp=class extends ai{computePublicKey(e){return Gd(this,arguments,void 0,function*({key:r}){if(!di(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 Gd(this,arguments,void 0,function*({algorithm:r}){switch(r){case"Ed25519":{let n=yield Bt.generateKey();return n.alg="EdDSA",n}}})}getPublicKey(e){return Gd(this,arguments,void 0,function*({key:r}){if(!di(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 Gd(this,arguments,void 0,function*({key:r,data:n}){if(!di(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 Gd(this,arguments,void 0,function*({key:r,signature:n,data:i}){if(!Va(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 io=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())})},Pw={Ed25519:{implementation:lp,names:["Ed25519"]},secp256k1:{implementation:qd,names:["ES256K","secp256k1"]},secp256r1:{implementation:qd,names:["ES256","secp256r1"]},"SHA-256":{implementation:Xh,names:["SHA-256"]}},er=class{constructor(e){var r;this._algorithmInstances=new Map,this._keyStore=(r=e?.keyStore)!==null&&r!==void 0?r:new gh}digest(e){return io(this,arguments,void 0,function*({algorithm:r,data:n}){return yield this.getAlgorithm({algorithm:r}).digest({algorithm:r,data:n})})}exportKey(e){return io(this,arguments,void 0,function*({keyUri:r}){return yield this.getPrivateKey({keyUri:r})})}generateKey(e){return io(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=`${Ow}${i.kid}`;return yield this._keyStore.set(o,i),o})}getKeyUri(e){return io(this,arguments,void 0,function*({key:r}){let n=yield we({jwk:r});return`${Ow}${n}`})}getPublicKey(e){return io(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 io(this,arguments,void 0,function*({key:r}){var n;if(!WT(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 we({jwk:i}));let o=yield this.getKeyUri({key:i});return yield this._keyStore.set(o,i),o})}sign(e){return io(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 io(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=Pw[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 Pw){let o=Pw[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 io(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 hp=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 ST(e)}static randomUuid(){return Ca.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 rs=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},qa=class t{static bytesToPrivateKey(e){return rs(this,arguments,void 0,function*({privateKeyBytes:r}){let n=gc.getPublicKey(r),i={kty:"OKP",crv:"X25519",d:ne.uint8Array(r).toBase64Url(),x:ne.uint8Array(n).toBase64Url()};return i.kid=yield we({jwk:i}),i})}static bytesToPublicKey(e){return rs(this,arguments,void 0,function*({publicKeyBytes:r}){let n={kty:"OKP",crv:"X25519",x:ne.uint8Array(r).toBase64Url()};return n.kid=yield we({jwk:n}),n})}static computePublicKey(e){return rs(this,arguments,void 0,function*({key:r}){let n=yield t.privateKeyToBytes({privateKey:r}),i=gc.getPublicKey(n),o={kty:"OKP",crv:"X25519",x:ne.uint8Array(i).toBase64Url()};return o.kid=yield we({jwk:o}),o})}static generateKey(){return rs(this,void 0,void 0,function*(){let e=gc.utils.randomPrivateKey(),r=yield t.bytesToPrivateKey({privateKeyBytes:e});return r.kid=yield we({jwk:r}),r})}static getPublicKey(e){return rs(this,arguments,void 0,function*({key:r}){var n;if(!(di(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 we({jwk:o})),o})}static privateKeyToBytes(e){return rs(this,arguments,void 0,function*({privateKey:r}){if(!di(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 rs(this,arguments,void 0,function*({publicKey:r}){if(!Va(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 rs(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 gc.getSharedSecret(i,o)})}};l();l();l();function $r(t){if(typeof t=="string"&&t.length!==0)return t.split("#").pop()}function $w({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(Kw))!==null&&r!==void 0?r:[]),Object.keys(Ki).forEach(i=>{var o,s;n.push(...(s=(o=t[i])===null||o===void 0?void 0:o.filter(Kw))!==null&&s!==void 0?s:[])}),n}function i_({didDocument:t}){let r=$w({didDocument:t}).map(n=>n.type);return[...new Set(r)]}function o_({didDocument:t,methodId:e}){let r=[];return Object.keys(Ki).forEach(n=>{if(Array.isArray(t[n])){let i=t[n],o=$r(e);i.some(c=>{let a=$r(c)===o,u=Kw(c)&&$r(c.id)===o;return a||u})&&r.push(n)}}),r}function s_(t){return!t||typeof t!="object"||t===null?!1:"id"in t&&"type"in t&&"serviceEndpoint"in t}function Kw(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 Hw({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 Vw({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 $r(a.id)===((u=$r(e?.methodId))!==null&&u!==void 0?u:$r((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:hp.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=$w({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 qw="0123456789abcdef",a_=[],c_=[];for(let t=0;t<256;t++)a_[t]=qw[t>>4&15]+qw[t&15],t<16&&(t<10?c_[48+t]=t:c_[87+t]=t);var Fw=t=>{let e=t.length,r="",n=0;for(;n<e;)r+=a_[t[n++]];return r};var u_=(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 d_="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",WN=typeof Uint8Array>"u"?[]:new Uint8Array(256);for(Yd=0;Yd<d_.length;Yd++)WN[d_.charCodeAt(Yd)]=Yd;var Yd;var GN=new TextDecoder,jw=(t,e)=>e?new TextDecoder(e).decode(t):GN.decode(t),zN=new TextEncoder,dn=t=>zN.encode(t);var f_=typeof window<"u"?window:self,l_=f_.crypto||f_.msCrypto||{},yJ=l_.subtle||l_.webkitSubtle;l();function Fa(t){let e=t<0?1:0;return t=Math.abs(Number(t||1)),Math.floor(Math.log10(t))+1+e}function pp(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=u_(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(pp(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 yp=new Uint8Array([101]),h_=new Uint8Array([100]),p_=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(h_);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(yp)};Ue.dictMap=function(t,e){t.push(h_);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(yp)};Ue.list=function(t,e){let r=0,n=e.length;for(t.push(p_);r<n;r++)e[r]!=null&&Ue._encode(t,e[r]);t.push(yp)};Ue.listSet=function(t,e){t.push(p_);for(let r of e)r!=null&&Ue._encode(t,r);t.push(yp)};var y_=Ue;l();var YN=105,JN=58,XN=100,ZN=108,Ww=101;function g_(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]!==Ww;){let e=de.buffer(),r=jw(e);r.includes("\uFFFD")&&(r=Fw(e)),t[r]=de.next()}return de.position++,t};de.list=function(){de.position++;let t=[];for(;de.data[de.position]!==Ww;)t.push(de.next());return de.position++,t};de.integer=function(){let t=de.find(Ww),e=g_(de.data,de.position+1,t);return de.position+=t+1-de.position,e};de.buffer=function(){let t=de.find(JN),e=g_(de.data,de.position,t),r=++t+e;return de.position=r,de.encoding?jw(de.data.slice(t,r)):de.data.slice(t,r)};var m_=de;l();function QN(t){let e=2;for(let r of t)e+=gp(r);return e}function eC(t){let e=2;for(let[r,n]of t){let i=dn(r).byteLength;e+=Fa(i)+1+i,e+=gp(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+=Fa(i)+1+i,e+=gp(t[r[n]])}return e}function rC(t){let e=dn(t).byteLength;return Fa(e)+1+e}function nC(t){let e=t.byteLength-t.byteOffset;return Fa(e)+1+e}function gp(t){if(t==null)return 0;let r=pp(t);switch(r){case"arraybufferview":return nC(t);case"string":return rC(t);case"array":case"set":return QN(t);case"number":return 1+Fa(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 Gw=gp;var iC=Gw,zw={encode:y_,decode:m_,byteLength:Gw,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 kn={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]}`}},oo={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 w_(t){if(kn.isFormat(t))return kn.size;if(oo.isFormat(t))return oo.size;throw Error(`Invalid ip address: ${t}`)}function b_(t){return w_(t)===kn.size?1:2}function x_(t,e,r){r=~~r;let n=w_(t);return typeof e=="function"&&(e=e(r+n)),n===kn.size?kn.encode(t,e,r):oo.encode(t,e,r)}function E_(t,e,r){if(e=~~e,r=r||t.length-e,r===kn.size)return kn.decode(t,e,r);if(r===oo.size)return oo.decode(t,e,r);throw Error(`Invalid buffer size needs to be ${kn.size} for v4 or ${oo.size} for v6.`)}l();function Jd(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 ja(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 v_(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 S_(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 Yw(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 Jw(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 A_(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 Xw(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 Zw(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 Wa(t,e,r){let n=t.length;r==null&&(r=0),e===void 0&&(e=new Uint8Array(Zw(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 Wa.bytes=i-r,e}Wa.bytes=0;function Ga(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 Ga.bytes=r-e,n}Ga.bytes=0;var ns=t=>t instanceof Uint8Array;function so(t){return typeof t=="string"?Zw(t):t.byteLength}function mp(t){return t instanceof Uint8Array?t:Array.isArray(t)?new Uint8Array(t):Wa(t)}function wp(t,e,r){if(typeof e!="string")throw new Error("unknown input type");return Wa(e,t,r),Wa.bytes}var Xd={},T_=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}`;T_[s]=c,Xd[c]=s,Xd[`${r}${i}`]=s,Xd[`${e}${o}`]=s,Xd[`${r}${o}`]=s}}function __(t,e,r){let n="";for(let i=e;i<r;){let o=t[i++];n+=T_[o]}return n}function Qw(t){return t.length>>>1}function I_(t,e,r,n){let i=0;for(;r<n;){let o=e.substr(i,2),s=Xd[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),fi=(t,e)=>t[e]*pC+t[e+1]*yC+t[e+2]*gC+t[e+3],ye=(t,e)=>t[e]<<8|t[e+1],li=(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,B_=32768,tb=32768,xC=~tb,U_=32768,EC=~U_;function $e({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=$e({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=wp(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=ye(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(Ga(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:so(t.replace(/^\.|\.$/gm,""))+2}}),Rt=$e({encode(t,e,r){e||(e=new Uint8Array(Rt.encodingLength(t))),r||(r=0);let n=wp(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=Ga(t,e+1,e+1+r);return Rt.decode.bytes=r+1,n},encodingLength(t){return so(t)+1}}),za=$e({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"?B_: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=ye(t,e+2);return{id:ye(t,e),type:r&B_?"response":"query",flags:r&32767,flag_qr:(r>>15&1)===1,opcode:S_(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:v_(r&15),questions:new Array(ye(t,e+4)),answers:new Array(ye(t,e+6)),authorities:new Array(ye(t,e+8)),additionals:new Array(ye(t,e+10))}},encodingLength(){return 12}}),xp=$e({encode(t,e,r){e||(e=new Uint8Array(xp.encodingLength(t))),r||(r=0);let n=t.length;return ae(e,n,r),xr(t,e,r+2,0,n),xp.encode.bytes=n+2,e},decode(t,e){e||(e=0);let r=ye(t,e),n=t.slice(e+2,e+2+r);return xp.decode.bytes=r+2,n},encodingLength(t){return t.length+2}}),Ep=$e({encode(t,e,r){return e||(e=new Uint8Array(Ep.encodingLength(t))),r||(r=0),se.encode(t,e,r+2),ae(e,se.encode.bytes,r),Ep.encode.bytes=se.encode.bytes+2,e},decode(t,e){e||(e=0);let r=ye(t,e),n=se.decode(t,e+2);return Ep.decode.bytes=r+2,n},encodingLength(t){return se.encodingLength(t)+2}}),vp=$e({encode(t,e,r){e||(e=new Uint8Array(vp.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,li(e,t.serial||0,r),r+=4,li(e,t.refresh||0,r),r+=4,li(e,t.retry||0,r),r+=4,li(e,t.expire||0,r),r+=4,li(e,t.minimum||0,r),r+=4,ae(e,r-n-2,n),vp.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=fi(t,e),e+=4,n.refresh=fi(t,e),e+=4,n.retry=fi(t,e),e+=4,n.expire=fi(t,e),e+=4,n.minimum=fi(t,e),e+=4,vp.decode.bytes=e-r,n},encodingLength(t){return 22+se.encodingLength(t.mname)+se.encodingLength(t.rname)}}),Sp=$e({encode(t,e,r){Array.isArray(t)||(t=[t]);for(let i=0;i<t.length;i++)if(typeof t[i]=="string"&&(t[i]=mp(t[i])),!ns(t[i]))throw new Error("Must be a Buffer");e||(e=new Uint8Array(Sp.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),Sp.encode.bytes=r-n,e},decode(t,e){e||(e=0);let r=e,n=ye(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 Sp.decode.bytes=e-r,i},encodingLength(t){Array.isArray(t)||(t=[t]);let e=2;return t.forEach(function(r){typeof r=="string"?e+=so(r)+1:e+=r.length+1}),e}}),Ap=$e({encode(t,e,r){e||(e=new Uint8Array(Ap.encodingLength(t))),r||(r=0),typeof t=="string"&&(t=mp(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),Ap.encode.bytes=r-n,e},decode(t,e){e||(e=0);let r=e,n=ye(t,e);e+=2;let i=t.slice(e,e+n);return e+=n,Ap.decode.bytes=e-r,i},encodingLength(t){return t?(ns(t)?t.length:so(t))+2:2}}),Tp=$e({encode(t,e,r){e||(e=new Uint8Array(Tp.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),Tp.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,Tp.decode.bytes=e-r,n},encodingLength(t){return Rt.encodingLength(t.cpu)+Rt.encodingLength(t.os)+2}}),Xa=$e({encode(t,e,r){return e||(e=new Uint8Array(Xa.encodingLength(t))),r||(r=0),se.encode(t,e,r+2),ae(e,se.encode.bytes,r),Xa.encode.bytes=se.encode.bytes+2,e},decode(t,e){e||(e=0);let r=se.decode(t,e+2);return Xa.decode.bytes=se.decode.bytes+2,r},encodingLength(t){return se.encodingLength(t)+2}}),_p=$e({encode(t,e,r){e||(e=new Uint8Array(_p.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),_p.encode.bytes=n+2,e},decode(t,e){e||(e=0);let r=ye(t,e),n={};return n.priority=ye(t,e+2),n.weight=ye(t,e+4),n.port=ye(t,e+6),n.target=se.decode(t,e+8),_p.decode.bytes=r+2,n},encodingLength(t){return 8+se.encodingLength(t.target)}}),is=$e({encode(t,e,r){let n=is.encodingLength(t);return e||(e=new Uint8Array(is.encodingLength(t))),r||(r=0),t.issuerCritical&&(t.flags=is.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,wp(e,t.value,r),r+=so(t.value),is.encode.bytes=n,e},decode(t,e){e||(e=0);let r=ye(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=Ga(t,e,n+r),i.issuerCritical=!!(i.flags&is.ISSUER_CRITICAL),is.decode.bytes=r+2,i},encodingLength(t){return Rt.encodingLength(t.tag)+Rt.encodingLength(t.value)+2}});is.ISSUER_CRITICAL=128;var Ip=$e({encode(t,e,r){e||(e=new Uint8Array(Ip.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),Ip.encode.bytes=r-n,e},decode(t,e){e||(e=0);let r=e,n={};return e+=2,n.preference=ye(t,e),e+=2,n.exchange=se.decode(t,e),e+=se.decode.bytes,Ip.decode.bytes=e-r,n},encodingLength(t){return 4+se.encodingLength(t.exchange)}}),O_=$e({encode(t,e,r){return e||(e=new Uint8Array(O_.encodingLength(t))),r||(r=0),ae(e,4,r),r+=2,kn.encode(t,e,r),e},decode(t,e){return e||(e=0),e+=2,kn.decode(t,e)},bytes:6}),Bp=$e({encode(t,e,r){return e||(e=new Uint8Array(Bp.encodingLength(t))),r||(r=0),ae(e,16,r),r+=2,oo.encode(t,e,r),Bp.encode.bytes=18,e},decode(t,e){e||(e=0),e+=2;let r=oo.decode(t,e);return Bp.decode.bytes=18,r},bytes:18}),R_=t=>new Uint8Array(t),co=$e({encode(t,e,r){e||(e=new Uint8Array(co.encodingLength(t))),r||(r=0);let n=r,i=Xw(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,R_),c=x_(t.ip,R_),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 co.encode.bytes=r-n,e},decode(t,e){e||(e=0);let r={};r.code=ye(t,e),r.type=A_(r.code),e+=2;let n=ye(t,e);switch(e+=2,r.data=t.slice(e,e+n),r.code){case 8:r.family=ye(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=E_(i)}break;case 11:n>0&&(r.timeout=ye(t,e),e+=2);break;case 14:r.tags=[];for(let i=0;i<n;i+=2)r.tags.push(ye(t,e)),e+=2}return co.decode.bytes=n+4,r},encodingLength(t){if(t.data)return t.data.length+4;switch(Xw(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}`)}}),os=$e({encode(t,e,r){e||(e=new Uint8Array(os.encodingLength(t))),r||(r=0);let n=r,i=Ja(t,co);return ae(e,i,r),r=nf(t,co,e,r+2),os.encode.bytes=r-n,e},decode(t,e){e||(e=0);let r=e,n=[],i=ye(t,e);e+=2;let o=0;for(;i>0;)n[o++]=co.decode(t,e),e+=co.decode.bytes,i-=co.decode.bytes;return os.decode.bytes=e-r,n},encodingLength(t){return 2+Ja(t||[],co)}}),hi=$e({encode(t,e,r){e||(e=new Uint8Array(hi.encodingLength(t))),r||(r=0);let n=r,i=t.key;if(!ns(i))throw new Error("Key must be a Buffer");return r+=2,ae(e,t.flags,r),r+=2,e[r]=hi.PROTOCOL_DNSSEC,r+=1,e[r]=t.algorithm,r+=1,xr(i,e,r,0,i.length),r+=i.length,hi.encode.bytes=r-n,ae(e,hi.encode.bytes-2,n),e},decode(t,e){e||(e=0);let r=e,n={},i=ye(t,e);if(e+=2,n.flags=ye(t,e),e+=2,t[e]!==hi.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,hi.decode.bytes=e-r,n},encodingLength(t){return 6+so(t.key)}});hi.PROTOCOL_DNSSEC=3;hi.ZONE_KEY=128;hi.SECURE_ENTRYPOINT=32768;var Zd=$e({encode(t,e,r){e||(e=new Uint8Array(Zd.encodingLength(t))),r||(r=0);let n=r,i=t.signature;if(!ns(i))throw new Error("Signature must be a Buffer");return r+=2,ae(e,ja(t.typeCovered),r),r+=2,e[r]=t.algorithm,r+=1,e[r]=t.labels,r+=1,li(e,t.originalTTL,r),r+=4,li(e,t.expiration,r),r+=4,li(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,Zd.encode.bytes=r-n,ae(e,Zd.encode.bytes-2,n),e},decode(t,e){e||(e=0);let r=e,n={},i=ye(t,e);return e+=2,n.typeCovered=Jd(ye(t,e)),e+=2,n.algorithm=t[e],e+=1,n.labels=t[e],e+=1,n.originalTTL=fi(t,e),e+=4,n.expiration=fi(t,e),e+=4,n.inception=fi(t,e),e+=4,n.keyTag=ye(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,Zd.decode.bytes=e-r,n},encodingLength(t){return 20+se.encodingLength(t.signersName)+so(t.signature)}}),Qd=$e({encode(t,e,r){e||(e=new Uint8Array(Qd.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,Qd.encode.bytes=r-n,ae(e,Qd.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,Qd.decode.bytes=e-r,n},encodingLength(t){return 2+se.encodingLength(t.mbox||".")+se.encodingLength(t.txt||".")}}),Hr=$e({encode(t,e,r){e||(e=new Uint8Array(Hr.encodingLength(t))),r||(r=0);let n=r,i=[];for(let o=0;o<t.length;o++){let s=ja(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=mp(i[o]);e[r]=o,r+=1,e[r]=s.length,r+=1,xr(s,e,r,0,s.length),r+=s.length}return Hr.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=Jd(o<<8|c<<3|u);i.push(d)}}e+=s}return Hr.decode.bytes=e-n,i},encodingLength(t){let e=[];for(let n=0;n<t.length;n++){let i=ja(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}}),ef=$e({encode(t,e,r){e||(e=new Uint8Array(ef.encodingLength(t))),r||(r=0);let n=r;return r+=2,se.encode(t.nextDomain,e,r),r+=se.encode.bytes,Hr.encode(t.rrtypes,e,r),r+=Hr.encode.bytes,ef.encode.bytes=r-n,ae(e,ef.encode.bytes-2,n),e},decode(t,e){e||(e=0);let r=e,n={},i=ye(t,e);return e+=2,n.nextDomain=se.decode(t,e),e+=se.decode.bytes,n.rrtypes=Hr.decode(t,e,i-(e-r)),e+=Hr.decode.bytes,ef.decode.bytes=e-r,n},encodingLength(t){return 2+se.encodingLength(t.nextDomain)+Hr.encodingLength(t.rrtypes)}}),tf=$e({encode(t,e,r){e||(e=new Uint8Array(tf.encodingLength(t))),r||(r=0);let n=r,i=t.salt;if(!ns(i))throw new Error("salt must be a Buffer");let o=t.nextDomain;if(!ns(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,Hr.encode(t.rrtypes,e,r),r+=Hr.encode.bytes,tf.encode.bytes=r-n,ae(e,tf.encode.bytes-2,n),e},decode(t,e){e||(e=0);let r=e,n={},i=ye(t,e);e+=2,n.algorithm=t[e],e+=1,n.flags=t[e],e+=1,n.iterations=ye(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=Hr.decode(t,e,i-(e-r)),e+=Hr.decode.bytes,tf.decode.bytes=e-r,n},encodingLength(t){return 8+t.salt.length+t.nextDomain.length+Hr.encodingLength(t.rrtypes)}}),rf=$e({encode(t,e,r){e||(e=new Uint8Array(rf.encodingLength(t))),r||(r=0);let n=r,i=t.digest;if(!ns(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,rf.encode.bytes=r-n,ae(e,rf.encode.bytes-2,n),e},decode(t,e){e||(e=0);let r=e,n={},i=ye(t,e);return e+=2,n.keyTag=ye(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,rf.decode.bytes=e-r,n},encodingLength(t){return 6+so(t.digest)}}),Ya=$e({encode(t,e,r){e||(e=new Uint8Array(Ya.encodingLength(t))),r||(r=0);let n=r;r+=2,e[r]=t.algorithm,r+=1,e[r]=t.hash,r+=1;let i=Qw(t.fingerprint),o=rb(t.hash);if(i!==o)throw new Error(`Invalid length of fingerprint "${t.fingerprint}" for hashType=${t.hash}: ${i} != ${o}`);return I_(e,t.fingerprint,r,r+=i),Ya.encode.bytes=r-n,ae(e,Ya.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=rb(n.hash);return n.fingerprint=__(t,e,e+i),e+=i,Ya.decode.bytes=e-r,n},encodingLength(t){return 4+Qw(t.fingerprint)}});function rb(t){if(t===1)return 20;if(t===2)return 32;throw new Error(`Invalid hashType=${t}, supported=1,2`)}Ya.getFingerprintLengthForHashType=rb;function eb(t){switch(t.toUpperCase()){case"A":return O_;case"PTR":return Xa;case"CNAME":return Xa;case"DNAME":return Xa;case"TXT":return Sp;case"NULL":return Ap;case"AAAA":return Bp;case"SRV":return _p;case"HINFO":return Tp;case"CAA":return is;case"NS":return Ep;case"SOA":return vp;case"MX":return Ip;case"OPT":return os;case"DNSKEY":return hi;case"RRSIG":return Zd;case"RP":return Qd;case"NSEC":return ef;case"NSEC3":return tf;case"SSHFP":return Ya;case"DS":return rf}return xp}var fn=$e({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,ja(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,os.encode(t.options||[],e,r),r+=os.encode.bytes}else{let i=Jw(t.class===void 0?"IN":t.class);t.flush&&(i|=tb),ae(e,i,r+2),li(e,t.ttl||0,r+4),r+=8;let o=eb(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=Jd(ye(t,e)),r.type==="OPT")r.udpPayloadSize=ye(t,e+2),r.extendedRcode=t[e+4],r.ednsVersion=t[e+5],r.flags=ye(t,e+6),r.flag_do=(r.flags>>15&1)===1,r.options=os.decode(t,e+8),e+=8+os.decode.bytes;else{let i=ye(t,e+2);r.ttl=fi(t,e+4),r.class=Yw(i&xC),r.flush=!!(i&tb);let o=eb(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+eb(t.type).encodingLength(e)}}),Za=$e({encode(t,e,r){e||(e=new Uint8Array(Za.encodingLength(t))),r||(r=0);let n=r;return se.encode(t.name,e,r),r+=se.encode.bytes,ae(e,ja(t.type),r),r+=2,ae(e,Jw(t.class===void 0?"IN":t.class),r),r+=2,Za.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=Jd(ye(t,e)),e+=2,n.class=Yw(ye(t,e)),e+=2,!!(n.class&U_)&&(n.class&=EC),Za.decode.bytes=e-r,n},encodingLength(t){return se.encodingLength(t.name)+4}});var D_=1024;var jt={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=nf(t.questions,Za,e,r),r=nf(t.answers,fn,e,r),r=nf(t.authorities,fn,e,r),r=nf(t.additionals,fn,e,r),jt.encode.bytes=r-i,n&&of.bytes!==e.length?e.slice(0,of.bytes):e},decode:function(t,e){e||(e=0);let r=e,n=za.decode(t,e);return e+=za.decode.bytes,e=bp(n.questions,Za,t,e),e=bp(n.answers,fn,t,e),e=bp(n.authorities,fn,t,e),e=bp(n.additionals,fn,t,e),jt.decode.bytes=e-r,n},encodingLength:function(t){return za.encodingLength(t)+Ja(t.questions||[],Za)+Ja(t.answers||[],fn)+Ja(t.authorities||[],fn)+Ja(t.additionals||[],fn)}};jt.encode.bytes=0;jt.decode.bytes=0;function Rp(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 Up={encode:function(t,e,r){return e=jt.encode(Rp(t,"query"),e,r),Up.encode.bytes=jt.encode.bytes,e},decode:function(t,e){let r=jt.decode(t,e);return Up.decode.bytes=jt.decode.bytes,r.questions&&(r.question=r.questions[0],delete r.questions),r},encodingLength:function(t){return jt.encodingLength(Rp(t,"query"))}};Up.encode.bytes=0;Up.decode.bytes=0;var Op={encode:function(t,e,r){return e=jt.encode(Rp(t,"response"),e,r),Op.encode.bytes=jt.encode.bytes,e},decode:function(t,e){let r=jt.decode(t,e);return Op.decode.bytes=jt.decode.bytes,r.questions&&(r.question=r.questions[0],delete r.questions),r},encodingLength:function(t){return jt.encodingLength(Rp(t,"response"))}};Op.encode.bytes=0;Op.decode.bytes=0;var of=jt.encode,Dp=jt.decode,vC=jt.encodingLength;function k_(t){let e=of(t),r=new Uint8Array(2+e.byteLength);return ae(r,e.byteLength),xr(e,r,2,0,e.length),k_.bytes=r.byteLength,r}k_.bytes=0;function N_(t){let e=ye(t,0);if(t.byteLength<e+2)return null;let r=Dp(t.slice(2));return N_.bytes=Dp.bytes,r}N_.bytes=0;function Ja(t,e){let r=0;for(let n=0;n<t.length;n++)r+=e.encodingLength(t[n]);return r}function nf(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 bp(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 C_=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 C_(this,void 0,void 0,function*(){throw new Error("Not implemented: Classes extending DidMethod must implement getSigningMethod()")})}static resolve(e,r){return C_(this,void 0,void 0,function*(){throw new Error("Not implemented: Classes extending DidMethod must implement resolve()")})}};var Lt=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())})},L_=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},P_="https://diddht.tbddev.org",SC=0,ss=7200,kp=";",sr=",",nb;(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"})(nb||(nb={}));var cr;(function(t){t[t.Ed25519=0]="Ed25519",t[t.secp256k1=1]="secp256k1",t[t.secp256r1=2]="secp256r1",t[t.X25519=3]="X25519"})(cr||(cr={}));var ib;(function(t){t.authentication="auth",t.assertionMethod="asm",t.capabilityDelegation="del",t.capabilityInvocation="inv",t.keyAgreement="agm"})(ib||(ib={}));var K_={Ed25519:cr.Ed25519,ES256K:cr.secp256k1,ES256:cr.secp256r1,"P-256":cr.secp256r1,secp256k1:cr.secp256k1,secp256r1:cr.secp256r1,X25519:cr.X25519},M_={[cr.Ed25519]:"EdDSA",[cr.secp256k1]:"ES256K",[cr.secp256r1]:"ES256",[cr.X25519]:"ECDH-ES+A256KW"},sf=class t extends ln{static create(){return Lt(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 K_)))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 Ct.identityKeyToIdentifier({identityKey:x}),I=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 we({jwk:q});j=`${S}#${$r(j)}`,(u=I.verificationMethod)!==null&&u!==void 0||(I.verificationMethod=[]),I.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:[])I[$]||(I[$]=[]),I[$].push(j)}(h=r.services)===null||h===void 0||h.forEach(T=>{var M;(M=I.service)!==null&&M!==void 0||(I.service=[]),T.id=`${S}#${T.id.split("#").pop()}`,I.service.push(T)});let O=new br({uri:S,document:I,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 Lt(this,arguments,void 0,function*({portableDid:r,keyManager:n=new er}){var i;let o=xe.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 Lt(this,arguments,void 0,function*({didDocument:r,methodId:n="#0"}){var i;let o=xe.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 $r(c.id)===((a=$r(n))!==null&&a!==void 0?a:$r((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 Lt(this,arguments,void 0,function*({did:r,gatewayUri:n=P_}){return yield Np.put({did:r,gatewayUri:n})})}static resolve(e){return Lt(this,arguments,void 0,function*(r,n={}){var i;let o=(i=n?.gatewayUri)!==null&&i!==void 0?i:P_;try{yield Ct.identifierToIdentityKey({didUri:r});let{didDocument:s,didDocumentMetadata:c}=yield Np.get({didUri:r,gatewayUri:o});return Object.assign(Object.assign({},gt),{didDocument:s,didDocumentMetadata:c})}catch(s){if(!(s instanceof re))throw new Error(s);return Object.assign(Object.assign({},gt),{didResolutionMetadata:Object.assign({error:s.code},s.message&&{errorMessage:s.message})})}})}};sf.methodName="dht";var Np=class t{static get(e){return Lt(this,arguments,void 0,function*({didUri:r,gatewayUri:n}){let i=Ct.identifierToIdentityKeyBytes({didUri:r}),o=yield t.pkarrGet({gatewayUri:n,publicKeyBytes:i}),s=yield Ct.parseBep44GetMessage({bep44Message:o}),c=yield t.fromDnsPacket({didUri:r,dnsPacket:s});return c.didDocumentMetadata.versionId=o.seq.toString(),c})}static put(e){return Lt(this,arguments,void 0,function*({did:r,gatewayUri:n}){let i=yield t.toDnsPacket({didDocument:r.document,didMetadata:r.metadata,authoritativeGatewayUris:[n]}),o=yield Ct.createBep44PutMessage({dnsPacket:i,publicKeyBytes:Ct.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 Lt(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 Lt(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 Lt(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=Ct.parseTxtDataToString(d.data);c.alsoKnownAs=h.split(sr);break}case f.startsWith("cnt"):{let h=Ct.parseTxtDataToString(d.data);c.controller=h.includes(sr)?h.split(sr):h;break}case f.startsWith("k"):{let{id:h,t:p,k:g,c:y,a:x}=Ct.parseTxtDataToObject(d.data),S=ne.base64Url(g).toUint8Array(),I=cr[Number(p)],A=yield Ct.keyConverter(I).bytesToPublicKey({publicKeyBytes:S});A.alg=x||M_[Number(p)];let O=f==="k0"?"0":h!==void 0?h:yield we({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=Ct.parseTxtDataToObject(d.data),{id:p,t:g,se:y}=h,x=L_(h,["id","t","se"]),S=y.includes(sr)?y.split(sr):[y],I=Object.fromEntries(Object.entries(x).map(([A,O])=>[A,O.includes(sr)?O.split(sr):O]));(s=c.service)!==null&&s!==void 0||(c.service=[]),c.service.push(Object.assign(Object.assign({},I),{id:`${r}#${p}`,type:g,serviceEndpoint:S}));break}case f.startsWith("typ"):{let{id:h}=Ct.parseTxtDataToObject(d.data);a.types=h.split(sr).map(p=>Number(p));break}case f.startsWith("did"):{let h=I=>I.split(sr).map(A=>u.get(A)).filter(A=>typeof A=="string"),{auth:p,asm:g,del:y,inv:x,agm:S}=Ct.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 Lt(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:I,previousDid:A}=o;yield Ct.validatePreviousDidProof({newDid:r.id,previousDidProof:o}),f.push({type:"TXT",name:"_prv._did.",ttl:ss,data:`id=${A};s=${I}`})}if(r.alsoKnownAs&&f.push({type:"TXT",name:"_aka._did.",ttl:ss,data:r.alsoKnownAs.join(sr)}),r.controller){let I=Array.isArray(r.controller)?r.controller.join(sr):r.controller;f.push({type:"TXT",name:"_cnt._did.",ttl:ss,data:I})}for(let[I,A]of(c=(s=r.verificationMethod)===null||s===void 0?void 0:s.entries())!==null&&c!==void 0?c:[]){let O=`k${I}`;y.push(O);let T=A.id.split("#").pop();p.set(T,O);let M=A.publicKeyJwk;if(!(M?.crv&&M.crv in K_))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=cr[M.crv],j=yield Ct.keyConverter(M.crv).publicKeyToBytes({publicKey:M}),$=ne.uint8Array(j).toBase64Url(),Z=[`t=${q}`,`k=${$}`];T!=="0"&&(yield we({jwk:M}))!==T&&Z.unshift(`id=${T}`),M.alg!==M_[q]&&Z.push(`a=${M.alg}`),A.controller!==r.id&&Z.push(`c=${A.controller}`),f.push({type:"TXT",name:`_${O}._did.`,ttl:ss,data:Z.join(kp)})}(u=r.service)===null||u===void 0||u.forEach((I,A)=>{let O=`s${A}`;g.push(O);let{id:T,type:M,serviceEndpoint:q}=I,j=L_(I,["id","type","serviceEndpoint"]);T=$r(T),q=Array.isArray(q)?q.join(","):q;let Z=Object.entries(Object.assign({id:T,t:M,se:q},j)).map(([G,_])=>`${G}=${_}`).join(kp),Q=Ct.chunkDataIfNeeded(Z);f.push({type:"TXT",name:`_${O}._did.`,ttl:ss,data:Q})});let x=[`v=${SC}`];if(y.length&&x.push(`vm=${y.join(sr)}`),Object.keys(Ki).forEach(I=>{var A;let O=(A=r[I])===null||A===void 0?void 0:A.map(T=>p.get(T.split("#").pop()));if(O){let T=ib[I];x.push(`${T}=${O.join(sr)}`)}}),g.length&&x.push(`svc=${g.join(sr)}`),!((d=n.types)===null||d===void 0)&&d.length){let A=n.types.map(O=>typeof O=="string"?nb[O]:O);f.push({type:"TXT",name:"_typ._did.",ttl:ss,data:`id=${A.join(sr)}`})}f.push({type:"TXT",name:"_did."+t.getUniqueDidSuffix(r.id)+".",ttl:ss,data:x.join(kp)});for(let I of i||[])h.push({type:"NS",name:"_did."+t.getUniqueDidSuffix(r.id)+".",ttl:ss,data:I+"."});return{id:0,type:"response",flags:D_,answers:[...f,...h]}})}static getUniqueDidSuffix(e){return e.split(":")[2]}},Ct=class t{static createBep44PutMessage(e){return Lt(this,arguments,void 0,function*({dnsPacket:r,publicKeyBytes:n,signer:i}){let o=Math.ceil(Date.now()/1e3),s=of(r),c=zw.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 Lt(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=xe.parse(e);if(!r)throw new re(ie.InvalidDid,`Invalid DID URI: ${e}`);if(r.method!==sf.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 Lt(this,arguments,void 0,function*({identityKey:r}){let n=yield Bt.publicKeyToBytes({publicKey:r}),i=ne.uint8Array(n).toBase32Z();return`did:${sf.methodName}:${i}`})}static keyConverter(e){let n={Ed25519:Bt,"P-256":{publicKeyToBytes:i=>Lt(this,[i],void 0,function*({publicKey:o}){let s=yield Ft.publicKeyToBytes({publicKey:o});return yield Ft.compressPublicKey({publicKeyBytes:s})}),bytesToPublicKey:Ft.bytesToPublicKey,privateKeyToBytes:Ft.privateKeyToBytes,bytesToPrivateKey:Ft.bytesToPrivateKey},secp256k1:{publicKeyToBytes:i=>Lt(this,[i],void 0,function*({publicKey:o}){let s=yield Nt.publicKeyToBytes({publicKey:o});return yield Nt.compressPublicKey({publicKeyBytes:s})}),bytesToPublicKey:Nt.bytesToPublicKey,privateKeyToBytes:Nt.privateKeyToBytes,bytesToPrivateKey:Nt.bytesToPrivateKey},X25519:qa}[e];if(!n)throw new re(ie.InvalidPublicKeyType,`Unsupported curve: ${e}`);return n}static parseBep44GetMessage(e){return Lt(this,arguments,void 0,function*({bep44Message:r}){let n=yield Bt.bytesToPublicKey({publicKeyBytes:r.k}),i=zw.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 Dp(r.v)})}static parseTxtDataToObject(e){return this.parseTxtDataToString(e).split(kp).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 Lt(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 Pe=class extends Error{constructor(e,r){super(`${e}: ${r}`),this.code=e,Object.setPrototypeOf(this,new.target.prototype)}};l();l();l();l();var yX=new Uint8Array(0);var ob=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 sb=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")}},cb=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 $_(this,e)}},ab=class{constructor(e){this.decoders=e}or(e){return $_(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`)}},$_=(t,e)=>new ab({...t.decoders||{[t.prefix]:t},...e.decoders||{[e.prefix]:e}}),ub=class{constructor(e,r,n,i){this.name=e,this.prefix=r,this.baseEncode=n,this.baseDecode=i,this.encoder=new sb(e,r,n),this.decoder=new cb(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 ub(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},cf=({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 _X=cf({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),IX=cf({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),af=cf({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),BX=cf({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var Er=class t{static encode(e){return af.baseEncode(e)}static decodeAsBytes(e,r){if(!t.isBase64UrlString(e))throw new Pe(Ye.EncodedStringIncorrectEncoding,`Given ${r} must be base64url string.`);return af.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 X_=Kn(V_(),1);l();l();var db;(function(t){t.Public="public",t.Private="private"})(db||(db={}));var Vr=db;var Ut=class{static validateEs256kOperationKey(e,r){let n=new Set(["kty","crv","x","y"]);r===Vr.Private&&n.add("d");for(let i in e)if(!n.has(i))throw new Pe(Ye.PublicKeyJwkEs256kHasUnexpectedProperty,`SECP256K1 JWK key has unexpected property '${i}'.`);if(e.crv!=="secp256k1")throw new Pe(Ye.JwkEs256kMissingOrInvalidCrv,`SECP256K1 JWK 'crv' property must be 'secp256k1' but got '${e.crv}.'`);if(e.kty!=="EC")throw new Pe(Ye.JwkEs256kMissingOrInvalidKty,`SECP256K1 JWK 'kty' property must be 'EC' but got '${e.kty}.'`);if(e.x.length!==43)throw new Pe(Ye.JwkEs256kHasIncorrectLengthOfX,"SECP256K1 JWK 'x' property must be 43 bytes.");if(e.y.length!==43)throw new Pe(Ye.JwkEs256kHasIncorrectLengthOfY,"SECP256K1 JWK 'y' property must be 43 bytes.");if(r===Vr.Private&&(e.d===void 0||e.d.length!==43))throw new Pe(Ye.JwkEs256kHasIncorrectLengthOfD,"SECP256K1 JWK 'd' property must be 43 bytes.")}static validateId(e){if(e.length>50)throw new Pe(Ye.IdTooLong,`Key ID length ${e.length} exceed max allowed length of 50.`);if(!Er.isBase64UrlString(e))throw new Pe(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 Pe(Ye.PublicKeyPurposeDuplicated,`Public key purpose '${n}' already specified.`);r.add(n)}}};l();var uf=class{};uf.hashAlgorithmInMultihashCode=18;uf.maxCanonicalizedDeltaSizeInBytes=1e3;var ar=uf;l();var j_=Kn(F_(),1);var Nn=class t{static canonicalizeAsBytes(e){let r=t.removeAllUndefinedProperties(e),n=j_.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=z_,W_=128,BC=127,RC=~BC,UC=Math.pow(2,31);function z_(t,e,r){e=e||[],r=r||0;for(var n=r;t>=UC;)e[r++]=t&255|W_,t/=128;for(;t&RC;)e[r++]=t&255|W_,t>>>=7;return e[r]=t|0,z_.bytes=r-n+1,e}var OC=fb,DC=128,G_=127;function fb(t,n){var r=0,n=n||0,i=0,o=n,s,c=t.length;do{if(o>=c)throw fb.bytes=0,new RangeError("Could not decode varint");s=t[o++],r+=i<28?(s&G_)<<i:(s&G_)*Math.pow(2,i),i+=7}while(s>=DC);return fb.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,df=FC;var lb=(t,e=0)=>[df.decode(t,e),df.decode.bytes],hb=(t,e,r=0)=>(df.encode(t,e,r),e),pb=t=>df.encodingLength(t);var yb=(t,e)=>{let r=e.byteLength,n=pb(t),i=n+pb(r),o=new Uint8Array(i+r);return hb(t,o,0),hb(r,o,n),o.set(e,i),new Lp(t,r,e,o)},Y_=t=>{let e=ob(t),[r,n]=lb(e),[i,o]=lb(e.subarray(n)),s=e.subarray(n+o);if(s.byteLength!==i)throw new Error("Incorrect length");return new Lp(r,i,s,e)};var Lp=class{constructor(e,r,n,i){this.code=e,this.size=r,this.digest=n,this.bytes=i}};l();l();var mb=({name:t,code:e,encode:r})=>new gb(t,e,r),gb=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?yb(this.code,r):r.then(n=>yb(this.code,n))}else throw Error("Unknown type, must be binary type")}};var J_=t=>async e=>new Uint8Array(await crypto.subtle.digest(t,e)),Pp=mb({name:"sha2-256",code:18,encode:J_("SHA-256")}),aZ=mb({name:"sha2-512",code:19,encode:J_("SHA-512")});var ff=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())})},Pt=class t{static hash(e,r){return ff(this,void 0,void 0,function*(){let n;switch(r){case 18:n=(yield Pp.digest(e)).bytes;break;default:throw new Pe(Ye.MultihashUnsupportedHashAlgorithm,`Hash algorithm defined in multihash code ${r} is not supported.`)}return n})}static hashAsNonMultihashBytes(e,r){return ff(this,void 0,void 0,function*(){let n;switch(r){case 18:n=yield Pp.encode(e);break;default:throw new Pe(Ye.MultihashUnsupportedHashAlgorithm,`Hash algorithm defined in multihash code ${r} is not supported.`)}return n})}static canonicalizeThenHashThenEncode(e,r){return ff(this,void 0,void 0,function*(){let n=Nn.canonicalizeAsBytes(e);return yield t.hashThenEncode(n,r)})}static canonicalizeThenDoubleHashThenEncode(e,r){return ff(this,void 0,void 0,function*(){let n=Nn.canonicalizeAsBytes(e),i=yield t.hashAsNonMultihashBytes(n,r);return yield t.hashThenEncode(i,r)})}static hashThenEncode(e,r){return ff(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=Y_(i)}catch{throw new Pe(Ye.MultihashStringNotAMultihash,`Given ${r} string '${e}' is not a multihash after decoding.`)}let o=ar.hashAlgorithmInMultihashCode;if(o!==n.code)throw new Pe(Ye.MultihashUnsupportedHashAlgorithm,`Given ${r} uses unsupported multihash algorithm with code ${n.code}, should use ${o} or change IonSdkConfig to desired hashing algorithm.`)}};l();var wb;(function(t){t.Create="create",t.Update="update",t.Deactivate="deactivate",t.Recover="recover"})(wb||(wb={}));var lf=wb;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 mc=bb;var Mp=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())})},cs=class t{static createCreateRequest(e){return Mp(this,void 0,void 0,function*(){let r=e.recoveryKey,n=e.updateKey,i=e.document.publicKeys,o=e.document.services;Ut.validateEs256kOperationKey(r,Vr.Public),Ut.validateEs256kOperationKey(n,Vr.Public),t.validateDidDocumentKeys(i),t.validateServices(o);let s=ar.hashAlgorithmInMultihashCode,c=[{action:mc.Replace,document:e.document}],a={updateCommitment:yield Pt.canonicalizeThenDoubleHashThenEncode(n,s),patches:c};t.validateDeltaSize(a);let d={deltaHash:yield Pt.canonicalizeThenHashThenEncode(a,s),recoveryCommitment:yield Pt.canonicalizeThenDoubleHashThenEncode(r,s)};return{type:lf.Create,suffixData:d,delta:a}})}static createDeactivateRequest(e){return Mp(this,void 0,void 0,function*(){t.validateDidSuffix(e.didSuffix),Ut.validateEs256kOperationKey(e.recoveryPublicKey,Vr.Public);let r=ar.hashAlgorithmInMultihashCode,n=yield Pt.canonicalizeThenHashThenEncode(e.recoveryPublicKey,r),i={didSuffix:e.didSuffix,recoveryKey:e.recoveryPublicKey},o=yield e.signer.sign({alg:"ES256K"},i);return{type:lf.Deactivate,didSuffix:e.didSuffix,revealValue:n,signedData:o}})}static createRecoverRequest(e){return Mp(this,void 0,void 0,function*(){t.validateDidSuffix(e.didSuffix),Ut.validateEs256kOperationKey(e.recoveryPublicKey,Vr.Public),Ut.validateEs256kOperationKey(e.nextRecoveryPublicKey,Vr.Public),Ut.validateEs256kOperationKey(e.nextUpdatePublicKey,Vr.Public),t.validateDidDocumentKeys(e.document.publicKeys),t.validateServices(e.document.services);let r=ar.hashAlgorithmInMultihashCode,n=yield Pt.canonicalizeThenHashThenEncode(e.recoveryPublicKey,r),i=[{action:mc.Replace,document:e.document}],o=yield Pt.canonicalizeThenDoubleHashThenEncode(e.nextUpdatePublicKey,r),s={patches:i,updateCommitment:o},c=yield Pt.canonicalizeThenHashThenEncode(s,r),u={recoveryCommitment:yield Pt.canonicalizeThenDoubleHashThenEncode(e.nextRecoveryPublicKey,r),recoveryKey:e.recoveryPublicKey,deltaHash:c},d=yield e.signer.sign({alg:"ES256K"},u);return{type:lf.Recover,didSuffix:e.didSuffix,revealValue:n,delta:s,signedData:d}})}static createUpdateRequest(e){return Mp(this,void 0,void 0,function*(){if(t.validateDidSuffix(e.didSuffix),Ut.validateEs256kOperationKey(e.updatePublicKey,Vr.Public),Ut.validateEs256kOperationKey(e.nextUpdatePublicKey,Vr.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:mc.AddServices,services:n};r.push(g)}let i=e.idsOfServicesToRemove;if(i!==void 0&&i.length>0){let g={action:mc.RemoveServices,ids:i};r.push(g)}let o=e.publicKeysToAdd;if(o!==void 0&&o.length>0){let g={action:mc.AddPublicKeys,publicKeys:o};r.push(g)}let s=e.idsOfPublicKeysToRemove;if(s!==void 0&&s.length>0){let g={action:mc.RemovePublicKeys,ids:s};r.push(g)}let c=ar.hashAlgorithmInMultihashCode,a=yield Pt.canonicalizeThenHashThenEncode(e.updatePublicKey,c),u=yield Pt.canonicalizeThenDoubleHashThenEncode(e.nextUpdatePublicKey,c),d={patches:r,updateCommitment:u},f=yield Pt.canonicalizeThenHashThenEncode(d,c),h={updateKey:e.updatePublicKey,deltaHash:f},p=yield e.signer.sign({alg:"ES256K"},h);return{type:lf.Update,didSuffix:e.didSuffix,revealValue:a,delta:d,signedData:p}})}static validateDidSuffix(e){Pt.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 Pe(Ye.DidDocumentPublicKeyMissingOrIncorrectType,"DID Document key 'publicKeyJwk' property is not a non-array object.");if(Ut.validateId(n.id),r.has(n.id))throw new Pe(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 Pe(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 Pe(Ye.ServiceTypeTooLong,n)}if(Array.isArray(e.serviceEndpoint)){let n="Service endpoint value cannot be an array.";throw new Pe(Ye.ServiceEndpointCannotBeAnArray,n)}if(typeof e.serviceEndpoint=="string"&&X_.parse(e.serviceEndpoint).error!==void 0)throw new Pe(Ye.ServiceEndpointStringNotValidUri,`Service endpoint string '${e.serviceEndpoint}' is not a URI.`)}static validateDeltaSize(e){let r=Nn.canonicalizeAsBytes(e);if(r.length>ar.maxCanonicalizedDeltaSizeInBytes){let n=`Delta of ${r.length} bytes exceeded limit of ${ar.maxCanonicalizedDeltaSizeInBytes} bytes.`;throw new Pe(Ye.DeltaExceedsMaximumSize,n)}}};var Z_=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())})},Qa=class t{static createLongFormDid(e){return Z_(this,void 0,void 0,function*(){let r=yield cs.createCreateRequest(e),n=yield t.computeDidUniqueSuffix(r.suffixData),i;ar.network===void 0||ar.network==="mainnet"?i=`did:ion:${n}`:i=`did:ion:${ar.network}:${n}`;let o={suffixData:r.suffixData,delta:r.delta},s=Nn.canonicalizeAsBytes(o),c=Er.encode(s);return`${i}:${c}`})}static computeDidUniqueSuffix(e){return Z_(this,void 0,void 0,function*(){let r=Nn.canonicalizeAsBytes(e),n=yield Pt.hash(r,ar.hashAlgorithmInMultihashCode);return Er.encode(n)})}};l();l();var Q_;(function(t){t.Mainnet="mainnet",t.Testnet="test"})(Q_||(Q_={}));l();var eI;(function(t){t.Authentication="authentication",t.AssertionMethod="assertionMethod",t.CapabilityInvocation="capabilityInvocation",t.CapabilityDelegation="capabilityDelegation",t.KeyAgreement="keyAgreement"})(eI||(eI={}));l();var as=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())})},pi;(function(t){t.Ed25519="Ed25519",t.secp256k1="secp256k1",t.secp256r1="secp256r1",t.X25519="X25519"})(pi||(pi={}));var GC={Ed25519:pi.Ed25519,ES256K:pi.secp256k1,ES256:pi.secp256r1,"P-256":pi.secp256r1,secp256k1:pi.secp256k1,secp256r1:pi.secp256r1},tI="https://ion.tbd.engineering",xb=class t extends ln{static create(){return as(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:pi.secp256k1}),g=yield e.getPublicKey({keyUri:p}),y=yield e.generateKey({algorithm:pi.secp256k1}),x=yield e.getPublicKey({keyUri:y}),S=yield wc.computeLongFormDidUri({recoveryKey:g,updateKey:x,services:(a=r.services)!==null&&a!==void 0?a:[],verificationMethods:h}),{didDocument:I,didResolutionMetadata:A}=yield t.resolve(S,{gatewayUri:r.gatewayUri});if(I===null)throw new Error(`Unable to resolve DID during creation: ${A?.error}`);let O=new br({uri:S,document:I,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 as(this,arguments,void 0,function*({didDocument:r,methodId:n}){var i;let o=xe.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 as(this,arguments,void 0,function*({portableDid:r,keyManager:n=new er}){let i=xe.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 as(this,arguments,void 0,function*({did:r,gatewayUri:n=tI}){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:o_({didDocument:r.document,methodId:d.id})})))!==null&&o!==void 0?o:[],a=yield wc.createIonDocument({services:(s=r.document.service)!==null&&s!==void 0?s:[],verificationMethods:c}),u=yield wc.constructCreateRequest({ionDocument:a,recoveryKey:r.metadata.recoveryKey,updateKey:r.metadata.updateKey});try{let d=wc.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 as(this,arguments,void 0,function*(r,n={}){var i,o;let s=xe.parse(r);if(!s)return Object.assign(Object.assign({},gt),{didResolutionMetadata:{error:"invalidDid"}});if(s.method!==t.methodName)return Object.assign(Object.assign({},gt),{didResolutionMetadata:{error:"methodNotSupported"}});let c=(i=n?.gatewayUri)!==null&&i!==void 0?i:tI;try{let a=wc.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({},gt),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({},gt),{didResolutionMetadata:Object.assign({error:a.code},a.message&&{errorMessage:a.message})})}})}};xb.methodName="ion";var wc=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 as(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 Qa.createLongFormDid({document:s,recoveryKey:c,updateKey:a})})}static constructCreateRequest(e){return as(this,arguments,void 0,function*({ionDocument:r,recoveryKey:n,updateKey:i}){return yield cs.createCreateRequest({document:r,recoveryKey:t.normalizeJwk(n),updateKey:t.normalizeJwk(i)})})}static createIonDocument(e){return as(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 we({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 Kp=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())})},Eb=class t extends ln{static create(){return Kp(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 Kp(this,arguments,void 0,function*({didDocument:r}){var n;let i=xe.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 Kp(this,arguments,void 0,function*({portableDid:r,keyManager:n=new er}){let i=xe.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 Kp(this,void 0,void 0,function*(){let n=xe.parse(e),i;try{i=ne.base64Url(n.id).toObject()}catch{}if(!n||!i)return Object.assign(Object.assign({},gt),{didResolutionMetadata:{error:"invalidDid"}});if(n.method!==t.methodName)return Object.assign(Object.assign({},gt),{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({},gt),{didDocument:o})})}};Eb.methodName="jwk";l();var Cn=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())})},ao;(function(t){t.Ed25519="Ed25519",t.secp256k1="secp256k1",t.secp256r1="secp256r1",t.X25519="X25519"})(ao||(ao={}));var vb={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:ao.Ed25519,ES256K:ao.secp256k1,ES256:ao.secp256r1,"P-256":ao.secp256r1,secp256k1:ao.secp256k1,secp256r1:ao.secp256r1,X25519:ao.X25519},Sb=class t extends ln{static create(){return Cn(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 Cn(this,arguments,void 0,function*({didDocument:r}){var n;let i=xe.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 Cn(this,arguments,void 0,function*({portableDid:r,keyManager:n=new er}){let i=xe.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 Cn(this,void 0,void 0,function*(){try{let n=yield t.createDocument({didUri:e,options:r});return Object.assign(Object.assign({},gt),{didDocument:n})}catch(n){if(!(n instanceof re))throw new Error(n);return Object.assign(Object.assign({},gt),{didResolutionMetadata:Object.assign({error:n.code},n.message&&{errorMessage:n.message})})}})}static createDocument(e){return Cn(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=xe.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 i_({didDocument:a}).forEach(g=>{let y=vb[g];h.push(y)}),a["@context"]=h,a})}static createEncryptionMethod(e){return Cn(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=Hw({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 vb))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 Cn(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}=Vw({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 Nt.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 vb))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 Cn(this,arguments,void 0,function*({multibaseValue:r}){let n={keyBytes:new Uint8Array,multicodecCode:0},{keyBytes:i,multicodecCode:o}=Vw({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&&ca(n)==="String"&&n.startsWith("z")}};Sb.methodName="key";var vr=class t{static jwkToMulticodec(e){return Cn(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":Ft.compressPublicKey,secp256k1:Nt.compressPublicKey}[e];if(!n)throw new re(ie.InvalidPublicKeyType,`Unsupported curve: ${e}`);return n}static keyConverter(e){let n={Ed25519:Bt,"P-256":Ft,secp256k1:Nt,X25519:qa}[e];if(!n)throw new re(ie.InvalidPublicKeyType,`Unsupported curve: ${e}`);return n}static multicodecToJwk(e){return Cn(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 Cn(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 Hw({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())})},Ab=class t extends ln{static resolve(e,r){return YC(this,void 0,void 0,function*(){let n=xe.parse(e);if(!n)return Object.assign(Object.assign({},gt),{didResolutionMetadata:{error:"invalidDid"}});if(n.method!==t.methodName)return Object.assign(Object.assign({},gt),{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({},gt),{didDocument:c})}catch{return Object.assign(Object.assign({},gt),{didResolutionMetadata:{error:"notFound"}})}})}};Ab.methodName="web";l();var tL=Kn(nI(),1),rL=Kn(Qg(),1);l();l();var st=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 capabilityInvocationEntry(e,r){let n=t.relationshipMethodId(r,e.id);if(n!==void 0)return e.capabilityInvocation?.find(i=>t.relationshipMethodId(i,e.id)===n)}static verificationMethodOfEntry(e,r){if(t.isDidVerificationMethod(r))return r;let n=t.absoluteDidUrl(r,e.id);if(n!==void 0)return e.verificationMethod?.find(i=>t.absoluteDidUrl(i?.id,e.id)===n)}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 Ve("Required parameter missing: 'didDocument'");let r=[];return r.push(...e.verificationMethod?.filter(t.isDidVerificationMethod)??[]),Object.keys(Ki).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=e.split(":");if(n.length!==4)throw new re(ie.InvalidDid,`Invalid capabilityId: ${e}`);let[i,o,s,c]=n;if(!i||i!=="urn")throw new re(ie.InvalidDid,`Invalid capabilityId: ${e}`);if(!o||o!=="zcap")throw new re(ie.InvalidDid,`Invalid capabilityId: ${e}`);if(!s||s!=="root")throw new re(ie.InvalidDid,`Invalid capabilityId: ${e}`);let u=decodeURIComponent(c);return r.id=e,r.controller=u,r.invocationTarget=u,r}};l();l();l();l();l();l();l();function iI(t,e,r){return t&e^~t&r}function oI(t,e,r){return t&e^t&r^e&r}var Hp=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=kl(this.buffer)}update(e){ta(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=kl(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){ta(this),Nv(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=kl(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()}},uo=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]),us=new Uint32Array(64),Tb=class extends Hp{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)us[f]=e.getUint32(r,!1);for(let f=16;f<64;f++){let h=us[f-15],p=us[f-2],g=vn(h,7)^vn(h,18)^h>>>3,y=vn(p,17)^vn(p,19)^p>>>10;us[f]=y+us[f-7]+g+us[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=vn(c,6)^vn(c,11)^vn(c,25),p=d+h+iI(c,a,u)+nL[f]+us[f]|0,y=(vn(n,2)^vn(n,13)^vn(n,22))+oI(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(us)}destroy(){this.set(0,0,0,0,0,0,0,0),Ns(this.buffer)}},_b=class extends Tb{A=uo[0]|0;B=uo[1]|0;C=uo[2]|0;D=uo[3]|0;E=uo[4]|0;F=uo[5]|0;G=uo[6]|0;H=uo[7]|0;constructor(){super(32)}};var Vp=Lv(()=>new _b,Pv(1));l();l();var ur=BigInt(0),tr=BigInt(1),xc=BigInt(2),aI=BigInt(3),uI=BigInt(4),dI=BigInt(5),iL=BigInt(7),fI=BigInt(8),oL=BigInt(9),lI=BigInt(16);function Ln(t,e){let r=t%e;return r>=ur?r:e+r}function qr(t,e,r){let n=t;for(;e-- >ur;)n*=n,n%=r;return n}function sI(t,e){if(t===ur)throw new Error("invert: expected non-zero number");if(e<=ur)throw new Error("invert: expected positive modulus, got "+e);let r=Ln(t,e),n=e,i=ur,o=tr,s=tr,c=ur;for(;r!==ur;){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 Ln(i,e)}function Bb(t,e,r){if(!t.eql(t.sqr(e),r))throw new Error("Cannot find square root")}function hI(t,e){let r=(t.ORDER+tr)/uI,n=t.pow(e,r);return Bb(t,n,e),n}function sL(t,e){let r=(t.ORDER-dI)/fI,n=t.mul(e,xc),i=t.pow(n,r),o=t.mul(e,i),s=t.mul(t.mul(o,xc),i),c=t.mul(o,t.sub(s,t.ONE));return Bb(t,c,e),c}function cL(t){let e=nu(t),r=pI(t),n=r(e,e.neg(e.ONE)),i=r(e,n),o=r(e,e.neg(n)),s=(t+iL)/lI;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 Bb(c,x,a),x}}function pI(t){if(t<aI)throw new Error("sqrt is not defined for small field");let e=t-tr,r=0;for(;e%xc===ur;)e/=xc,r++;let n=xc,i=nu(t);for(;cI(i,n)===1;)if(n++>1e3)throw new Error("Cannot find square root: probably non-prime P");if(r===1)return hI;let o=i.pow(n,e),s=(e+tr)/xc;return function(a,u){if(a.is0(u))return u;if(cI(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%uI===aI?hI:t%fI===dI?sL:t%lI===oL?cL(t):pI(t)}var uL=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function Rb(t){let e={ORDER:"bigint",BYTES:"number",BITS:"number"},r=uL.reduce((n,i)=>(n[i]="function",n),e);return Qu(t,r),t}function dL(t,e,r){if(r<ur)throw new Error("invalid exponent, negatives unsupported");if(r===ur)return t.ONE;if(r===tr)return e;let n=t.ONE,i=e;for(;r>ur;)r&tr&&(n=t.mul(n,i)),i=t.sqr(i),r>>=tr;return n}function qp(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 cI(t,e){let r=(t.ORDER-tr)/xc,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&&Jn(e);let r=e!==void 0?e:t.toString(2).length,n=Math.ceil(r/8);return{nBitLength:r,nByteLength:n}}var Ib=class{ORDER;BITS;BYTES;isLE;ZERO=ur;ONE=tr;_lengths;_sqrt;_mod;constructor(e,r={}){if(e<=ur)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 Ln(e,this.ORDER)}isValid(e){if(typeof e!="bigint")throw new Error("invalid field element: expected bigint, got "+typeof e);return ur<=e&&e<this.ORDER}is0(e){return e===ur}isValidNot0(e){return!this.is0(e)&&this.isValid(e)}isOdd(e){return(e&tr)===tr}neg(e){return Ln(-e,this.ORDER)}eql(e,r){return e===r}sqr(e){return Ln(e*e,this.ORDER)}add(e,r){return Ln(e+r,this.ORDER)}sub(e,r){return Ln(e-r,this.ORDER)}mul(e,r){return Ln(e*r,this.ORDER)}pow(e,r){return dL(this,e,r)}div(e,r){return Ln(e*sI(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 sI(e,this.ORDER)}sqrt(e){return this._sqrt||(this._sqrt=aL(this.ORDER)),this._sqrt(this,e)}toBytes(e){return this.isLE?K0(e,this.BYTES):Cl(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?M0(e):No(e);if(c&&(a=Ln(a,s)),!r&&!this.isValid(a))throw new Error("invalid field element: outside of range 0..ORDER");return a}invertBatch(e){return qp(this,e)}cmov(e,r,n){return n?r:e}};function nu(t,e={}){return new Ib(t,e)}function yI(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 Ub(t){let e=yI(t);return e+Math.ceil(e/2)}function Fp(t,e,r=!1){_e(t);let n=t.length,i=yI(e),o=Ub(e);if(n<16||n<o||n>1024)throw new Error("expected "+o+"-1024 bytes of input, got "+n);let s=r?M0(t):No(t),c=Ln(s,e-tr)+tr;return r?K0(c,i):Cl(c,i)}var iu=BigInt(0),Ec=BigInt(1);function hf(t,e){let r=e.negate();return t?r:e}function Nb(t,e){let r=qp(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 Ob(t,e){bI(t,e);let r=Math.ceil(e/t)+1,n=2**(t-1),i=2**t,o=Zu(t),s=BigInt(t);return{windows:r,windowSize:n,mask:o,maxNumber:i,shiftBy:s}}function gI(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+=Ec);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 Db=new WeakMap,xI=new WeakMap;function kb(t){return xI.get(t)||1}function mI(t){if(t!==iu)throw new Error("invalid wNAF")}var jp=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>iu;)r&Ec&&(n=n.add(i)),i=i.double(),r>>=Ec;return n}precomputeWindow(e,r){let{windows:n,windowSize:i}=Ob(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=Ob(e,this.bits);for(let c=0;c<s.windows;c++){let{nextN:a,offset:u,isZero:d,isNeg:f,isNegF:h,offsetF:p}=gI(n,c,s);n=a,d?o=o.add(hf(h,r[p])):i=i.add(hf(f,r[u]))}return mI(n),{p:i,f:o}}wNAFUnsafe(e,r,n,i=this.ZERO){let o=Ob(e,this.bits);for(let s=0;s<o.windows&&n!==iu;s++){let{nextN:c,offset:a,isZero:u,isNeg:d}=gI(n,s,o);if(n=c,!u){let f=r[a];i=i.add(d?f.negate():f)}}return mI(n),i}getPrecomputes(e,r,n){let i=Db.get(r);return i||(i=this.precomputeWindow(r,e),e!==1&&(typeof n=="function"&&(i=n(i)),Db.set(r,i))),i}cached(e,r,n){let i=kb(e);return this.wNAF(i,this.getPrecomputes(i,e,n),r)}unsafe(e,r,n,i){let o=kb(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),xI.set(e,r),Db.delete(e)}hasCache(e){return kb(e)!==1}};function EI(t,e,r,n){let i=e,o=t.ZERO,s=t.ZERO;for(;r>iu||n>iu;)r&Ec&&(o=o.add(i)),n&Ec&&(s=s.add(i)),i=i.double(),r>>=Ec,n>>=Ec;return{p1:o,p2:s}}function wI(t,e,r){if(e){if(e.ORDER!==t)throw new Error("Field.ORDER must match order: Fp == p, Fn == n");return Rb(e),e}else return nu(t,{isLE:r})}function vI(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>iu))throw new Error(`CURVE.${a} must be positive bigint`)}let i=wI(e.p,r.Fp,n),o=wI(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 Wp(t,e){return function(n){let i=t(n);return{secretKey:i,publicKey:e(i)}}}l();l();var Gp=class{oHash;iHash;blockLen;outputLen;finished=!1;destroyed=!1;constructor(e,r){if(Dl(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 ta(this),this.iHash.update(e),this}digestInto(e){ta(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()}},Cb=(t,e,r)=>new Gp(t,e).update(r).digest();Cb.create=(t,e)=>new Gp(t,e);var SI=(t,e)=>(t+(t>=0?e:-e)/AI)/e;function lL(t,e,r){let[[n,i],[o,s]]=e,c=SI(s*t,r),a=SI(-i*t,r),u=t-c*n-a*o,d=-c*i-a*s,f=u<fo,h=d<fo;f&&(u=-u),h&&(d=-d);let p=Zu(Math.ceil($0(r)/2))+ou;if(u<fo||u>=p||d<fo||d>=p)throw new Error("splitScalar (endomorphism): failed, k="+t);return{k1neg:f,k1:u,k2neg:h,k2:d}}function Pb(t){if(!["compact","recovered","der"].includes(t))throw new Error('Signature format must be "compact", "recovered", or "der"');return t}function Lb(t,e){let r={};for(let n of Object.keys(e))r[n]=t[n]===void 0?e[n]:t[n];return Ju(r.lowS,"lowS"),Ju(r.prehash,"prehash"),r.format!==void 0&&Pb(r.format),r}var Mb=class extends Error{constructor(e=""){super(e)}},ds={Err:Mb,_tlv:{encode:(t,e)=>{let{Err:r}=ds;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=Xu(n);if(i.length/2&128)throw new r("tlv.encode: long form length too big");let o=n>127?Xu(i.length/2|128):"";return Xu(t)+o+i+e},decode(t,e){let{Err:r}=ds,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}=ds;if(t<fo)throw new e("integer: negative integers are not allowed");let r=Xu(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}=ds;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 No(t)}},toSig(t){let{Err:e,_int:r,_tlv:n}=ds,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}=ds,n=e.encode(2,r.encode(t.r)),i=e.encode(2,r.encode(t.s)),o=n+i;return e.encode(48,o)}},fo=BigInt(0),ou=BigInt(1),AI=BigInt(2),zp=BigInt(3),hL=BigInt(4);function TI(t,e={}){let r=vI("weierstrass",t,e),{Fp:n,Fn:i}=r,o=r.CURVE,{h:s,n:c}=o;Qu(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=II(n,i);function d(){if(!n.isOdd)throw new Error("compression is not supported: Field does not have .isOdd()")}function f(G,_,D){let{x:E,y:U}=_.toAffine(),L=n.toBytes(E);if(Ju(D,"isCompressed"),D){d();let N=!n.isOdd(U);return pr(_I(N),L)}else return pr(Uint8Array.of(4),L,n.toBytes(U))}function h(G){_e(G,void 0,"Point");let{publicKey:_,publicKeyUncompressed:D}=u,E=G.length,U=G[0],L=G.subarray(1);if(E===_&&(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=${_} or uncompressed=${D}`)}let p=e.toBytes||f,g=e.fromBytes||h;function y(G){let _=n.sqr(G),D=n.mul(_,G);return n.add(n.add(D,n.mul(G,o.a)),o.b)}function x(G,_){let D=n.sqr(_),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,zp),hL),I=n.mul(n.sqr(o.b),BigInt(27));if(n.is0(n.add(S,I)))throw new Error("bad curve params: a or b");function A(G,_,D=!1){if(!n.isValid(_)||D&&n.is0(_))throw new Error(`bad point coordinate ${G}`);return _}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=H0((G,_)=>{let{X:D,Y:E,Z:U}=G;if(n.eql(U,n.ONE))return{x:D,y:E};let L=G.is0();_==null&&(_=L?n.ONE:n.inv(U));let N=n.mul(D,_),R=n.mul(E,_),C=n.mul(U,_);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=H0(G=>{if(G.is0()){if(e.allowInfinityPoint&&!n.is0(G.Y))return;throw new Error("bad point: ZERO")}let{x:_,y:D}=G.toAffine();if(!n.isValid(_)||!n.isValid(D))throw new Error("bad point: x or y not field elements");if(!x(_,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,_,D,E,U){return D=new $(n.mul(D.X,G),D.Y,D.Z),_=hf(E,_),D=hf(U,D),_.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(_,D,E){this.X=A("x",_),this.Y=A("y",D,!0),this.Z=A("z",E),Object.freeze(this)}static CURVE(){return o}static fromAffine(_){let{x:D,y:E}=_||{};if(!_||!n.isValid(D)||!n.isValid(E))throw new Error("invalid affine point");if(_ instanceof $)throw new Error("projective point not allowed");return n.is0(D)&&n.is0(E)?$.ZERO:new $(D,E,n.ONE)}static fromBytes(_){let D=$.fromAffine(g(_e(_,void 0,"point")));return D.assertValidity(),D}static fromHex(_){return $.fromBytes(Ls(_))}get x(){return this.toAffine().x}get y(){return this.toAffine().y}precompute(_=8,D=!0){return Q.createCache(this,_),D||this.multiply(zp),this}assertValidity(){q(this)}hasEvenY(){let{y:_}=this.toAffine();if(!n.isOdd)throw new Error("Field doesn't support isOdd");return!n.isOdd(_)}equals(_){O(_);let{X:D,Y:E,Z:U}=this,{X:L,Y:N,Z:R}=_,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:_,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(_,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(_,z),W=n.sub(V,z),W=n.mul(_,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(_){O(_);let{X:D,Y:E,Z:U}=this,{X:L,Y:N,Z:R}=_,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(_){return this.add(_.negate())}is0(){return this.equals($.ZERO)}multiply(_){let{endo:D}=e;if(!i.isValidNot0(_))throw new Error("invalid scalar: out of range");let E,U,L=N=>Q.cached(this,N,R=>Nb($,R));if(D){let{k1neg:N,k1:R,k2neg:C,k2:P}=T(_),{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(_);E=N,U=R}return Nb($,[E,U])[0]}multiplyUnsafe(_){let{endo:D}=e,E=this;if(!i.isValid(_))throw new Error("invalid scalar: out of range");if(_===fo||E.is0())return $.ZERO;if(_===ou)return E;if(Q.hasCache(this))return this.multiply(_);if(D){let{k1neg:U,k1:L,k2neg:N,k2:R}=T(_),{p1:C,p2:P}=EI($,E,L,R);return j(D.beta,C,P,U,N)}else return Q.unsafe(E,_)}toAffine(_){return M(this,_)}isTorsionFree(){let{isTorsionFree:_}=e;return s===ou?!0:_?_($,this):Q.unsafe(this,c).is0()}clearCofactor(){let{clearCofactor:_}=e;return s===ou?this:_?_($,this):this.multiplyUnsafe(s)}isSmallOrder(){return this.multiplyUnsafe(s).is0()}toBytes(_=!0){return Ju(_,"isCompressed"),this.assertValidity(),p($,this,_)}toHex(_=!0){return Cs(this.toBytes(_))}toString(){return`<Point ${this.is0()?"ZERO":this.toHex()}>`}}let Z=i.BITS,Q=new jp($,e.endo?Math.ceil(Z/2):Z);return $.BASE.precompute(8),$}function _I(t){return Uint8Array.of(t?2:3)}function II(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(II(t.Fp,r),{seed:Ub(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 Fp(_e(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(!Yu(p)||"_lengths"in r&&r._lengths||g===y)return;let S=_e(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=Wp(c,a);return Object.freeze({getPublicKey:a,getSharedSecret:d,keygen:h,Point:t,utils:f,lengths:i})}function BI(t,e,r={}){Dl(e),Qu(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)=>Cb(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*AI<o.ORDER;function x(D){let E=c>>ou;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 I(){if(y)throw new Error('"recovered" sig type is not supported for cofactor >2 curves')}function A(D,E){Pb(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(I(),![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}=ds.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(_I((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=g.format){if(Pb(E),E==="der")return Ls(ds.hexFromSig(this));let{r:U,s:L}=this,N=s.toBytes(U),R=s.toBytes(L);return E==="recovered"?(I(),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=No(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=Zu(a);function j(D){return Hv("num < 2^"+a,D,fo,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}=Lb(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(_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===fo)return;let Oe=s.create(ue*s.create(z+ce*P));if(Oe===fo)return;let Me=(ee.x===ce?0:2)|Number(ee.y&ou),Je=Oe;return L&&x(Oe)&&(Je=s.neg(Oe),Me^=1),new O(ce,Je,y?void 0:Me)}return{seed:J,k2sig:W}}function Q(D,E,U={}){let{seed:L,k2sig:N}=Z(D,E,U);return Vv(e.outputLen,s.BYTES,i)(L,N).toBytes(U.format)}function G(D,E,U,L={}){let{lowS:N,prehash:R,format:C}=Lb(L,g);if(U=_e(U,void 0,"publicKey"),E=$(E,R),!Yu(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 _(D,E,U={}){let{prehash:L}=Lb(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:_,Signature:O,hash:e})}var Xp={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),Kb=BigInt(2);function mL(t){let e=Xp.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=qr(d,r,e)*d%e,h=qr(f,r,e)*d%e,p=qr(h,Kb,e)*u%e,g=qr(p,i,e)*p%e,y=qr(g,o,e)*g%e,x=qr(y,c,e)*y%e,S=qr(x,a,e)*x%e,I=qr(S,c,e)*y%e,A=qr(I,r,e)*d%e,O=qr(A,s,e)*g%e,T=qr(O,n,e)*u%e,M=qr(T,Kb,e);if(!Yp.eql(Yp.sqr(M),t))throw new Error("Cannot find square root");return M}var Yp=nu(Xp.p,{sqrt:mL}),vc=TI(Xp,{Fp:Yp,endo:yL}),hn=BI(vc,Vp),RI={};function Jp(t,...e){let r=RI[t];if(r===void 0){let n=Vp($v(t));r=pr(n,n),RI[t]=r}return Vp(pr(r,...e))}var Hb=t=>t.toBytes(!0).slice(1),Vb=t=>t%Kb===gL;function $b(t){let{Fn:e,BASE:r}=vc,n=e.fromBytes(t),i=r.multiply(n);return{scalar:Vb(i.y)?n:e.neg(n),bytes:Hb(i)}}function OI(t){let e=Yp;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);Vb(i)||(i=e.neg(i));let o=vc.fromAffine({x:t,y:i});return o.assertValidity(),o}var pf=No;function DI(...t){return vc.Fn.create(pf(Jp("BIP0340/challenge",...t)))}function UI(t){return $b(t).bytes}function wL(t,e,r=Ps(32)){let{Fn:n}=vc,i=_e(t,void 0,"message"),{bytes:o,scalar:s}=$b(e),c=_e(r,32,"auxRand"),a=n.toBytes(s^pf(Jp("BIP0340/aux",c))),u=Jp("BIP0340/nonce",a,o,i),{bytes:d,scalar:f}=$b(u),h=DI(d,o,i),p=new Uint8Array(64);if(p.set(d,0),p.set(n.toBytes(n.create(f+h*s)),32),!kI(p,i,o))throw new Error("sign: Invalid signature produced");return p}function kI(t,e,r){let{Fp:n,Fn:i,BASE:o}=vc,s=_e(t,64,"signature"),c=_e(e,void 0,"message"),a=_e(r,32,"publicKey");try{let u=OI(pf(a)),d=pf(s.subarray(0,32));if(!n.isValidNot0(d))return!1;let f=pf(s.subarray(32,64));if(!i.isValidNot0(f))return!1;let h=DI(i.toBytes(d),Hb(u),c),p=o.multiplyUnsafe(f).add(u.multiplyUnsafe(i.neg(h))),{x:g,y}=p.toAffine();return!(p.is0()||!Vb(y)||g!==d)}catch{return!1}}var Zp=(()=>{let r=(n=Ps(48))=>Fp(n,Xp.n);return{keygen:Wp(r,UI),getPublicKey:UI,sign:wL,verify:kI,Point:vc,utils:{randomSecretKey:r,taggedHash:Jp,lift_x:OI,pointToBytes:Hb},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 CI(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 qb(t,e){if(typeof e!="string")throw new Error(`${t}: string expected`);return!0}function LI(t){if(!Number.isSafeInteger(t))throw new Error(`invalid integer: ${t}`)}function Fb(t){if(!Array.isArray(t))throw new Error("array expected")}function PI(t,e){if(!CI(!0,e))throw new Error(`${t}: array of strings expected`)}function xL(t,e){if(!CI(!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;PI("alphabet",e);let n=new Map(e.map((i,o)=>[i,o]));return{encode:i=>(Fb(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=>(Fb(i),i.map(o=>{qb("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 qb("join",t),{encode:e=>(PI("join.decode",e),e.join(t)),decode:e=>(qb("join.decode",e),e.split(t))}}function NI(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(Fb(t),!t.length)return[];let n=0,i=[],o=Array.from(t,c=>{if(LI(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){LI(t);let e=2**8;return{encode:r=>{if(!bL(r))throw new Error("radix.encode input should be Uint8Array");return NI(Array.from(r),e,t)},decode:r=>(xL("radix.decode",r),Uint8Array.from(NI(r,t,e)))}}var TL=t=>EL(AL(58),vL(t),SL("")),su=TL("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz");var MI=new Uint8Array([231,1]),ft=class t{#e;#t={prefix:MI,key:[],encoded:""};constructor(e){let r=e instanceof Uint8Array?e:Br(e);if(!r||r.length!==33)throw new Os("Invalid argument: byte length must be 33 (compressed)","CONSTRUCTOR_ERROR",{keyBytes:r});if(!hn.utils.isValidPublicKey(r))throw new Os("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 Os("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 Mt(this.compressed)}get point(){return{x:this.x,y:this.y}}bip340(){return this.xOnly}decode(){return su.decode(this.multibase.encoded.slice(1))}encode(){let e=Array.from(this.compressed),r=Array.from(MI);return r.push(...e),"z"+su.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 Zp.verify(e,r,this.x);throw new Os(`Invalid scheme: ${n.scheme}.`,"VERIFY_SIGNATURE_ERROR",n)}equals(e){return ra(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 KI=new Uint8Array([129,38]),_L=Mt(ke(KI)),Fr=class t{#e;#t;#n;constructor(e){let r=e instanceof Uint8Array,n=typeof e=="bigint";if(!r&&!n)throw new Gn("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 Gn("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 Gn("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 Mt(this.bytes)}get multibase(){return this.#n}encode(){let e=Array.from(this.bytes),r=Array.from(KI);return r.push(...e),"z"+su.encode(Uint8Array.from(r))}equals(e){return ra(this.bytes,e.bytes)}computePublicKey(){return new ft(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 Zp.sign(e,this.bytes);throw new Gn(`Invalid scheme: ${r.scheme}.`,"SIGN_ERROR",r)}static decode(e){let r=su.decode(e.slice(1));if(r.length!==34)throw new Gn("Invalid argument: must be 34 byte secretKeyMultibase","DECODE_MULTIBASE_ERROR");let n=r.slice(0,2);if(Mt(ke(n))!==_L)throw new Gn(`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 Gn("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=Rr(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 lo=class t{#e;#t;constructor(e={}){if(!e.publicKey&&!e.secretKey)throw new xn("Argument missing: must at least provide a publicKey","CONSTRUCTOR_ERROR");if(e.secretKey instanceof Uint8Array?this.#e=new Fr(e.secretKey):e.secretKey instanceof Fr&&(this.#e=e.secretKey),e.publicKey instanceof ft?this.#t=e.publicKey:e.publicKey instanceof Uint8Array?this.#t=new ft(e.publicKey):this.#t=this.#e.computePublicKey(),this.#e&&e.publicKey){let r=this.#e.computePublicKey();if(!this.#t.equals(r))throw new xn("Public key does not match secret key","CONSTRUCTOR_ERROR")}}get secretKey(){if(!this.#e)throw new xn("Secret key not available","SECRET_KEY_ERROR");if(!this.#e.isValid())throw new xn("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 xn("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 xn("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:Fr.fromJSON(e.secretKey),publicKey:ft.fromJSON(e.publicKey)})}static fromSecret(e){let r=typeof e=="string"?Br(e):e;if(r.length!==32)throw new xn("Invalid arg: must be 32 byte secret key","FROM_SECRET_KEY_ERROR");let n=new Fr(r),i=n.computePublicKey();return new t({secretKey:n,publicKey:i})}static fromBigInt(e){let r=Fr.fromBigInt(e),n=r.computePublicKey();return new t({secretKey:r,publicKey:n})}static toHex(e){return Mt(e)}static equals(e,r){return e.publicKey.equals(r.publicKey)}static generate(){let e=Fr.random(),r=new Fr(e),n=r.computePublicKey();return new t({secretKey:r,publicKey:n})}};l();l();l();l();var IL=["https://www.w3.org/ns/did/v1.1","https://btcr2.dev/context/v1"],cu="Multikey",au="zQ3s",dr="did:btcr2:_",ire="",BL=/did:btcr2:(x1[qpzry9x8gf2tvdw0s3jn54khce6mua7l]*)/g;function RL(t){if(!st.isDidVerificationMethod(t))return!1;let{type:e,publicKeyMultibase:r}=t;return e===cu&&typeof r=="string"&&r.startsWith(au)}var jb=class{id;type;controller;publicKeyMultibase;secretKeyMultibase;constructor({id:e,type:r,controller:n,publicKeyMultibase:i,secretKeyMultibase:o}){if(r!==cu)throw new Ve(`Invalid verification method: type must be "${cu}"`,qe,{id:e,type:r});if(typeof i!="string"||!i.startsWith(au))throw new Ve(`Invalid verification method: publicKeyMultibase must start with "${au}"`,qe,{id:e,publicKeyMultibase:i});this.id=e,this.type=r,this.controller=n,this.publicKeyMultibase=i,this.secretKeyMultibase=o,o||delete this.secretKeyMultibase}},pn=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 Ve("DID Document must have an id",qe,e);let r=e.id.includes("k1")?en.KEY:en.EXTERNAL,n=e.id===dr,{id:i,verificationMethod:o,service:s}=e;if(!n){if(!t.isValidId(i))throw new Ve(`Invalid id: ${i}`,qe,e);if(!t.isValidVerificationMethods(o))throw new Ve("Invalid verificationMethod: "+o,qe,e);if(!t.isValidServices(s))throw new Ve("Invalid service: "+s,qe,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 jb({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 Ve('Invalid "@context"',qe,e);if(!this.isValidId(e?.id))throw new Ve('Invalid "id"',qe,e);if(!this.isValidVerificationMethods(e?.verificationMethod))throw new Ve('Invalid "verificationMethod"',qe,e);if(!this.isValidServices(e?.service))throw new Ve('Invalid "service"',qe,e);if(!this.isValidVerificationRelationships(e))throw new Ve("Invalid verification relationships",qe,e);return!0}static isValidContext(e){return!Array.isArray(e)||e.length===0?!1:IL.every(r=>e.includes(r))}static isValidId(e){if(typeof e!="string")return!1;try{return Sr.decode(e),!0}catch{return!1}}static isValidVerificationMethods(e){return Array.isArray(e)&&e.every(RL)}static isValidServices(e){return Array.isArray(e)&&e.every(s_)}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"||st.isDidVerificationMethod(c))})}static validate(e){return e.id===dr?e.validateGenesis():t.isValid(e),e}validateGenesis(){if(this.id!==dr)throw new Ve("Invalid GenesisDocument ID",qe,this);if(!this.verificationMethod.every(e=>e.id.includes(dr)&&e.controller===dr))throw new Ve("Invalid GenesisDocument verificationMethod",qe,this);if(!this.service.every(e=>e.id.includes(dr)))throw new Ve("Invalid GenesisDocument service",qe,this);if(!t.isValidVerificationRelationships(this))throw new Ve("Invalid GenesisDocument assertionMethod",qe,this);return!0}toIntermediate(){if(this.id.includes("k1"))throw new Ve("Cannot convert a key identifier to an intermediate document",qe,this);return new yf(this)}},yf=class t extends pn{constructor(e){super(e)}toDidDocument(e){let r=JSON.stringify(this).replaceAll(dr,e),n=JSON.parse(r);return new pn(n)}static fromDidDocument(e){let r=ks.cloneReplace(e,BL,dr);return new t(r)}static create(e,r,n){return new t({id:dr,...r,verificationMethod:e,service:n})}static fromPublicKey(e,r){let n=new ft(e),i=dr,o=Ni(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 Uo(Kt(e))}};var $I="did:btcr2:",Sr=class t{static encode(e,r){let{idType:n,version:i=1,network:o="bitcoin"}=r;if(!(n in en))throw new ut('Expected "idType" to be "KEY" or "EXTERNAL"',pt,{idType:n});if(i!==1)throw new ut('Expected "version" to be 1',pt,{version:i});if(typeof o!="string")throw new ut('Expected "network" to be a known network name',pt,{network:o});let s=ea[o];if(typeof s!="number")throw new ut('Invalid "network" name',pt,{network:o});if(n==="KEY")try{new ft(e)}catch{throw new ut('Expected "genesisBytes" to be a valid compressed secp256k1 public key',pt,{genesisBytes:e})}else if(e.length!==32)throw new ut('Expected "genesisBytes" to be a 32-byte hash for EXTERNAL identifiers',pt,{genesisBytes:e});let c=n==="KEY"?"k":"x",a=i-1<<4|s,u=new Uint8Array([a,...e]);return`${$I}${As.encodeFromBytes(c,u)}`}static decode(e){let r=e.split(":");if(r.length!==3)throw new ut(`Invalid did: ${e}`,pt,{identifier:e});let[n,i,o]=r;if(n!=="did")throw new ut(`Invalid did: ${e}`,pt,{identifier:e});if(i!=="btcr2")throw new ut(`Invalid did method: ${i}`,wl,{identifier:e});if(!o)throw new ut(`Invalid method-specific id: ${e}`,pt,{identifier:e});if(o!==o.toLowerCase())throw new ut(`Invalid method-specific id (must be lowercase): ${e}`,pt,{identifier:e});let s,c;try{({prefix:s,bytes:c}=As.decodeToBytes(o))}catch(g){let y=g instanceof Error?g.message:String(g);throw new ut(`Invalid method-specific id (Bech32m decoding failed: ${y}): ${e}`,pt,{identifier:e,reason:y})}if(!["x","k"].includes(s))throw new ut(`Invalid hrp: ${s}`,pt,{identifier:e});if(!c||c.length<1)throw new ut(`Failed to decode id: ${o}`,pt,{identifier:e});let a=s==="k"?"KEY":"EXTERNAL",u=c[0]>>>4;if(u!==0)throw new ut(`Invalid btcr2_version (expected 0): ${u}`,pt,{identifier:e});let d=1,f=c[0]&15,h=ea[f];if(typeof h!="string"){let g=f>=12?"custom network not supported":"reserved";throw new ut(`Invalid network (${g}): ${f}`,pt,{identifier:e})}let p=c.slice(1);if(a==="KEY")try{new ft(p)}catch{throw new ut(`Invalid genesisBytes: ${p}`,pt,{identifier:e})}else if(p.length!==32)throw new ut(`Invalid genesisBytes: ${p}`,pt,{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,I={})=>(n.push({name:x,ok:!1,detail:S}),{did:e,valid:!1,...I,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 "${$I}" 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}=As.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=ea[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 ft(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(!bo(x,g))return o("genesisBytesMatch",`The supplied genesis bytes ${ve.encode(x)} do not equal the genesis bytes of the identifier ${ve.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!==dr)return o("genesisDocument",`The genesis document id must be "${dr}", got ${JSON.stringify(S)}.`,{idType:d,network:p});try{yf.fromJSON(x)}catch(A){return o("genesisDocument",`Invalid genesis document: ${A instanceof Error?A.message:String(A)}`,{idType:d,network:p})}let I=Oo(x);if(!bo(I,g))return o("genesisDocument",`The genesis document hash ${ve.encode(I)} does not equal the genesis bytes ${ve.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=lo.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 ut(`Cannot extract public key from EXTERNAL DID: ${e}. EXTERNAL DIDs encode a document hash, not a public key.`,pt,{did:e,idType:r});return new ft(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 be("Invalid Bitcoin URI format","BEACON_SERVICE_ERROR",{uri:e});return e.replace("bitcoin:","").split("?")[0]}static isBeaconService(e){return!(!st.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 nr("Failed to create beacon services: "+n.message,"BEACON_SERVICE_ERROR",{did:e,beaconType:r})}}static createBeaconService(e,r,n){try{let i=Sr.decode(e),o=Do(i.network),s=i.genesisBytes,c=`${e}#initial${r.toUpperCase()}`,u=`bitcoin:${r==="p2tr"?Is(s.slice(1,33),void 0,o).address:r==="p2wpkh"?_s(s,o).address:Ni(s,o).address}`;return{id:c,type:n,serviceEndpoint:u}}catch(i){throw new nr("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=Ni(r,n).address,s=_s(r,n).address,c=Is(r.slice(1,33),void 0,n).address;if(!o||!s||!c)throw new kt("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 nr("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 HI(t){if(!t)return null;let e=UL.exec(t.trim());return e?e[1].toLowerCase():null}var VI=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=HI(f.scriptpubkey);if(!h||!await t.spendsFromAddress(u,c,r))continue;let p=i-d.block_height+1,g=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:g}})}}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 le(`Block ${e} has no mediantime in the block record of the Bitcoin REST backend.`,bl,{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 le("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===O0)continue;let d=u.vout.slice(-1)[0];if(!d)continue;let f=HI(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]===U0||!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,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 uu=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 Wb(t,e=uu){return Array.isArray(t)&&t.length===e.length&&t.every((r,n)=>r===e[n])}var qI=Object.freeze({op:"add",path:"/deactivated",value:!0});l();l();l();l();l();l();var Rre=new Uint8Array(0);function FI(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(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,I=g.length;S!==I&&g[S]===0;)S++,y++;for(var A=(I-S)*d+1>>>0,O=new Uint8Array(A);S!==I;){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 I=(g.length-y)*u+1>>>0,A=new Uint8Array(I);g[y];){var O=r[g.charCodeAt(y)];if(O===255)return;for(var T=0,M=I-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=I-S;q!==I&&A[q]===0;)q++;for(var j=new Uint8Array(x+(I-q)),$=x;q!==I;)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 DL=OL,kL=DL,jI=kL;var Gb=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")}},zb=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 WI(this,e)}},Yb=class{decoders;constructor(e){this.decoders=e}or(e){return WI(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 WI(t,e){return new Yb({...t.decoders??{[t.prefix]:t},...e.decoders??{[e.prefix]:e}})}var Jb=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 Gb(e,r,n),this.decoder=new zb(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 Jb(t,e,r,n)}function Xb({name:t,prefix:e,alphabet:r}){let{encode:n,decode:i}=jI(r,t);return NL({prefix:e,name:t,encode:n,decode:o=>FI(i(o))})}var gf=Xb({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),Kre=Xb({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});l();function GI(t){return t===void 0?[]:Array.isArray(t)?t:[t]}var du=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 bn("Invalid proof: missing proof.type, proof.verificationMethod and/or proof.proofPurpose",Ro,{config:r,proof:n});if(r.domain&&n.domain!==r.domain)throw new bn("Domain mismatch: proof.domain !== config.domain",Ro,{config:r,proof:n});if(r.challenge&&n.challenge!==r.challenge)throw new bn("Challenge mismatch options and challenge passed",Ro,{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 bn("Invalid proof: missing proof.type, proof.verificationMethod and/or proof.proofPurpose",Ci,s);if(r&&r!==c.proofPurpose)throw new bn("Proof purpose mismatch: proof.proofPurpose !== expectedPurpose",Ci,{proof:c,expectedPurpose:r});if(o&&o!==c.challenge)throw new bn("Challenge mismatch: proof.challenge !== expectedChallenge","INVALID_CHALLENGE_ERROR",{proof:c,expectedChallenge:o});if(i){let u=GI(i),d=GI(c.domain);if(u.length!==d.length)throw new bn("Domain mismatch: expectedDomain length does not match proof.domain length",Ci,{proof:c,expectedDomain:i});if(!u.every(f=>d.includes(f))||!d.every(f=>u.includes(f)))throw new bn("Domain mismatch: expectedDomain and proof.domain do not match",Ci,{proof:c,expectedDomain:i})}let a=this.cryptosuite.verifyProof(s);return a.mediaType=n,a}};var fu=class{type="DataIntegrityProof";cryptosuite="bip340-jcs-2025";multikey;constructor(e){this.multikey=e}toDataIntegrityProof(){return new du(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=gf.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=gf.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 be("Type mismatch: config.type !== this.type",Ci,{config:r,suite:this.#e()});if(r.cryptosuite!==this.cryptosuite)throw new be("Cryptosuite mismatch: config.cryptosuite !== this.cryptosuite",Ci,{config:r,suite:this.#e()});return Kt(e)}generateHash(e,r){let n=ke(Es(e)),i=ke(Es(r)),o=ht(n,i);return ke(o)}proofConfiguration(e){if(e.type!==this.type)throw new Bo("Type mismatch: config.type !== this.type",Ro,{config:e,suite:this.#e()});if(e.cryptosuite!==this.cryptosuite)throw new Bo("Cryptosuite mismatch: config.cryptosuite !== this.cryptosuite",Ro,{config:e,suite:this.#e()});if(e.created&&!Li.isValidXsdDateTime(e.created))throw new Bo('Invalid config: "created" must be a valid XMLSchema DateTime string',Ro,e);return Kt(e)}proofSerialization(e,r){if(r.verificationMethod!==this.multikey.fullId())throw new Bo("Id mismatch: config.verificationMethod !== this.multikey.fullId()",pv,{config:r,suite:this.#e()});return this.multikey.sign(e)}proofVerification(e,r,n){if(n.verificationMethod!==this.multikey.fullId())throw new Bo("Id mismatch: config.verificationMethod !== this.multikey.fullId()",Ci,{config:n,suite:this.#e()});return this.multikey.verify(r,e)}};l();l();l();var ho=class t{static type="Multikey";id;controller;#e;#t;constructor({id:e,controller:r,keyPair:n,externalSigner:i}){if(!n)throw new En('Argument missing: "keyPair" required',"CONSTRUCTOR_ERROR");if(!n.publicKey)throw new En('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 En("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 En("Cannot get: no secretKey","PRIVATE_KEY_ERROR")}}toCryptosuite(){return new fu(this)}sign(e){if(this.#t)return this.#t.sign(e,"bip340");if(!this.signer)throw new En("Cannot sign: no secretKey","SIGN_ERROR");return Dr.sign(e,this.secretKey.bytes,Rr(32))}verify(e,r){return Dr.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 Fr(n),o=i.computePublicKey(),s=new lo({publicKey:o,secretKey:i});return new t({id:e,controller:r,keyPair:s})}static fromSigner(e,r,n){let i=new ft(n.publicKey),o=new lo({publicKey:i});return new t({id:e,controller:r,keyPair:o,externalSigner:n})}static fromPublicKey({id:e,controller:r,publicKeyBytes:n}){let i=new ft(n),o=new lo({publicKey:i});return new t({id:e,controller:r,keyPair:o})}static fromVerificationMethod({id:e,controller:r,publicKeyMultibase:n}){if(!n)throw new En("Invalid publicKeyMultibase: cannot be undefined",xl,{publicKeyMultibase:n});let i=gf.decode(n);if(i.length!==35)throw new En(`Invalid publicKeyMultibase length: ${i.length}`,xl,{publicKeyMultibase:n});if(i[0]!==231||i[1]!==1)throw new En(`Invalid publicKeyMultibase prefix: expected secp256k1 multicodec [0xe7, 0x01], got [0x${i[0]?.toString(16)??"??"}, 0x${i[1]?.toString(16)??"??"}]`,xl,{publicKeyMultibase:n});let o=i.slice(2),s=new lo({publicKey:o});return new t({id:e,controller:r,keyPair:s})}};l();l();l();function Ar(t){return t instanceof kt?{type:t.type,message:t.message}:t instanceof Error?{type:t.name,message:t.message}:{type:"unknown",message:String(t)}}var CL=6;function mf(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}function LL(t){return mf(t)&&Object.values(t).every(e=>typeof e=="string")}function PL(t){return mf(t)?Array.isArray(t.patch)&&typeof t.sourceHash=="string"&&typeof t.targetHash=="string"&&Number.isInteger(t.targetVersionId)&&t.targetVersionId>=2&&mf(t.proof):!1}function ML(t){return mf(t)?typeof t.id=="string"&&typeof t.collapsed=="string"&&Array.isArray(t.hashes):!1}function KL(t){if(t===void 0)return CL;if(typeof t=="number"&&Number.isInteger(t)&&t>=1)return t;throw new le(`Invalid resolution option minConf: expected a positive integer (minimum 1), got ${Zb(t)}.`,qu,{minConf:t})}function Zb(t){return typeof t=="string"?JSON.stringify(t):String(t)}var $L=/^-?[0-9]+$/;function HL(t){if(t!==void 0){if(typeof t=="string"&&$L.test(t)&&Number.isSafeInteger(Number(t)))return Number(t);throw new le(`Invalid resolution option versionId: expected an ASCII string of an integer, got ${Zb(t)}.`,qu,{versionId:t})}}var VL=/^-?\d{4,}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}Z$/,qL=/(Z|[+-]\d{2}:\d{2})$/;function FL(t){if(t!==void 0){if(typeof t=="string"&&VL.test(t)&&Li.isValidXsdDateTime(t)){let e=Date.parse(t);if(Number.isFinite(e))return e}throw new le(`Invalid resolution option versionTime: expected an XML Datetime in UTC without a fraction (for example "2026-07-01T00:00:00Z"), got ${Zb(t)}.`,qu,{versionTime:t})}}var fs=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 le("Invalid resolution options: versionId and versionTime are mutually exclusive. Pass one of them.",qu,{versionId:i.versionId,versionTime:i.versionTime});this.#t=HL(i?.versionId),this.#n=FL(i?.versionTime);let o=i?.maxDiscoveryRounds;this.#u=typeof o=="number"&&o>0?o:1/0,this.#w=KL(i?.minConf),i?.genesisDocument&&(this.#c=i.genesisDocument),this.#r=n?"BeaconDiscovery":"GenesisDocument"}static deterministic(e){let r=e.genesisBytes,n=Sr.encode(r,e),{multibase:i}=new ft(r),o=fr.generateBeaconServices({id:n,publicKey:r,network:Do(e.network),beaconType:"SingletonBeacon"});return new pn({id:n,verificationMethod:[{id:`${n}#initialKey`,type:"Multikey",controller:n,publicKeyMultibase:i.encoded}],service:o})}static external(e,r){let n=Oo(r);if(!bo(e.genesisBytes,n))throw new le("Initial document mismatch: genesisBytes !== genesisDocumentHash",pt,{genesisBytes:Qr(e.genesisBytes,"hex"),genesisDocumentHash:Qr(n,"hex")});let i=Sr.encode(e.genesisBytes,e),o=JSON.parse(JSON.stringify(r).replaceAll(dr,i));return new pn(o)}static sidecarData(e={}){let r=new Map;if(e.updates?.length)for(let o of e.updates)r.set(zn(o,{encoding:"hex"}),o);let n=new Map;if(e.casUpdates?.length)for(let o of e.casUpdates)n.set(zn(o,{encoding:"hex"}),o);let i=new Map;if(e.smtProofs?.length)for(let o of e.smtProofs)i.set(Qr(Xc(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 le("Invalid duplicate: targetVersionId must be an integer >= 2",fe,{targetVersionId:e.targetVersionId});let{proof:n,...i}=e,o=Oo(i),s=r[e.targetVersionId-2];if(s===void 0)throw new le("Invalid duplicate: no applied update in history for targetVersionId",El,{targetVersionId:e.targetVersionId,historyLength:r.length});if(!bo(s,o))throw new le("Invalid duplicate: unsigned update hash does not match historical hash",El,{unsignedUpdateHash:Qr(o,"hex"),historicalHash:Qr(s,"hex")})}static decodeUpdateHash(e,r){if(typeof e=="string")try{return Xc(e,"base64urlnopad")}catch(n){throw new le(`Invalid update: ${r} does not decode as base64url: ${Ar(n).message}`,fe,{[r]:e,cause:Ar(n)})}throw new le(`Invalid update: ${r} is not a string`,fe,{[r]:e})}static proofInstant(e,r){let n=e[r];if(n!==void 0){if(typeof n=="string"&&qL.test(n)&&Li.isValidXsdDateTime(n)){let i=Date.parse(n);if(Number.isFinite(i))return i}throw new le(`Invalid update: proof.${r} is not an XML Datetime with a timezone`,fe,{[r]:n})}}static checkProofWindow(e,r){let n=t.proofInstant(e,"created"),i=t.proofInstant(e,"expires");if(n!==void 0&&n>r.time*1e3)throw new le("Invalid update: proof.created is after the header time of the block that contains the Beacon Signal",fe,{created:e.created,blockTime:r.time});if(i!==void 0&&i<r.mediantime*1e3)throw new le("Invalid update: proof.expires is before the mediantime of the block that contains the Beacon Signal",fe,{expires:e.expires,mediantime:r.mediantime});if(n!==void 0&&i!==void 0&&i<n)throw new le("Invalid update: proof.expires is before proof.created",fe,{created:e.created,expires:e.expires})}static applyUpdate(e,r,n){let i=Oo(e),o=t.decodeUpdateHash(r.sourceHash,"sourceHash");if(!bo(o,i))throw new le("Hash mismatch: update.sourceHash !== currentDocumentHash",fe,{sourceHash:r.sourceHash,currentDocumentHash:Qr(i,"hex")});if(!Wb(r["@context"]))throw new le("Invalid update: @context is not the array the specification pins for a BTCR2 Update",fe,{context:r["@context"],expected:[...uu]});if(!Wb(r.proof?.["@context"],r["@context"]))throw new le("Invalid update: proof @context does not equal the update @context",fe,{proofContext:r.proof?.["@context"],context:r["@context"]});let s=r.proof,c=[["type","DataIntegrityProof"],["cryptosuite","bip340-jcs-2025"],["proofPurpose","capabilityInvocation"],["capabilityAction","Write"],["capability",`urn:zcap:root:${encodeURIComponent(e.id)}`]];for(let[y,x]of c){let S=s[y];if(S!==x)throw new le(`Invalid update: proof.${y} must equal "${x}"`,fe,{field:y,expected:x,actual:S})}let a=s.verificationMethod,u=st.capabilityInvocationEntry(e,a);if(u===void 0)throw new le("Invalid update: verificationMethod is not authorized for capabilityInvocation",fe,{verificationMethodId:a,capabilityInvocation:e.capabilityInvocation});let d=st.verificationMethodOfEntry(e,u);if(d===void 0)throw new le("Invalid update: verificationMethod is not found in the verificationMethod of the current document",fe,{verificationMethodId:a});t.checkProofWindow(s,n);let f;try{let y=ho.fromVerificationMethod({...d,id:st.absoluteDidUrl(d.id,e.id)??d.id});f=new du(new fu(y)).verifyProof(Kt(r),"capabilityInvocation").verified}catch(y){throw new le(`Invalid update: proof verification failed: ${Ar(y).message}`,fe,{verificationMethodId:a,cause:Ar(y)})}if(!f)throw new le("Invalid update: proof not verified",fe,{verificationMethodId:a});let h;try{h=Qc.apply(e,r.patch,{strict:!0})}catch(y){throw new le(`Invalid update: ${Ar(y).message}`,fe,{cause:Ar(y)})}if(h?.id!==e.id)throw new le(`Invalid update: the patch changes the document id (from "${e.id}" to "${String(h?.id)}")`,fe,{sourceId:e.id,targetId:h?.id});try{pn.validate(h)}catch(y){throw new le(`Invalid update: the patched document does not conform to DID Core: ${Ar(y).message}`,fe,{cause:Ar(y)})}let p=Oo(h),g=t.decodeUpdateHash(r.targetHash,"targetHash");if(!bo(g,p))throw new le("Invalid update: update.targetHash !== updatedDocumentHash",fe,{updateTargetHash:g,updatedDocumentHash:p});return h}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){let i=fr.parseBitcoinAddress(r.serviceEndpoint);if(this.#h.has(i)||!n.length)continue;let o=this.#x(n);if(!o.length)continue;let c=oa.establish(r,this.#i.id).processSignals(o,this.#o);c.needs.length>0?e.push(...c.needs):(this.#a.push(...c.updates.map(([a,u])=>[a,u,i])),this.#h.add(i))}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 le(`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}.`),hv,{versionId:this.#t,currentVersionId:this.#s});this.#r="Complete";continue}this.#a.sort(([c,a],[u,d])=>c.targetVersionId-u.targetVersionId||a.height-d.height);let[r,n,i]=this.#a.shift();if(!fr.getBeaconServices(e).some(c=>fr.parseBitcoinAddress(c.serviceEndpoint)===i))continue;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 le("Version Id Mismatch: targetVersionId cannot be > currentVersionId + 1",El,{targetVersionId:r.targetVersionId,currentVersionId:this.#s+1});this.#i=t.applyUpdate(e,r,n);let s=ks.deleteKeys(r,["proof"]);if(this.#y.push(Oo(s)),this.#s++,this.#g=n.confirmations,this.#f=Li.toISOStringNonFractional(Li.blocktimeToTimestamp(n.time)),this.#b()){if(++this.#m>this.#u)throw new le(`Exceeded the configured maximum of ${this.#u} beacon-discovery rounds. Raise or remove ResolutionOptions.maxDiscoveryRounds to resolve this DID.`,bl,{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 le(`Beacon signal ${n.signalBytes} has ${o} confirmations but no valid block height, block time, or block mediantime.`,fe,{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(!mf(r))throw new le("Provided data for NeedGenesisDocument must be a document object.",fe,{kind:e.kind});this.#c=r;break}case"NeedBeaconSignals":{if(!(r instanceof Map))throw new le("Provided data for NeedBeaconSignals must be a Map of beacon services to signals.",fe,{kind:e.kind});for(let[n,i]of r)this.#l.set(n,i);break}case"NeedCASAnnouncement":{if(!LL(r))throw new le("Provided data for NeedCASAnnouncement is not a CAS announcement.",fe,{kind:e.kind});let n=zn(r,{encoding:"hex"});if(n!==e.announcementHash)throw new le(`CAS announcement hash mismatch: expected ${e.announcementHash}, got ${n}.`,fe,{expected:e.announcementHash,actual:n});this.#o.casMap.set(n,r);break}case"NeedSignedUpdate":{if(!PL(r))throw new le("Provided data for NeedSignedUpdate is not a signed BTCR2 update.",fe,{kind:e.kind});let n=zn(r,{encoding:"hex"});if(n!==e.updateHash)throw new le(`Signed update hash mismatch: expected ${e.updateHash}, got ${n}.`,fe,{expected:e.updateHash,actual:n});this.#o.updateMap.set(n,r);break}case"NeedSMTProof":{if(!ML(r))throw new le("Provided data for NeedSMTProof is not an SMT proof.",fe,{kind:e.kind});let n=Qr(Xc(r.id,"base64urlnopad"),"hex");if(n!==e.smtRootHash)throw new le(`SMT proof root hash mismatch: expected ${e.smtRootHash}, got ${n}`,fe,{expected:e.smtRootHash,actual:n});this.#o.smtMap.set(e.smtRootHash,r);break}}}};function jL(t){let e=t.capabilityInvocation?.[0];if(e===void 0)throw new Ve("Cannot derive aggregation communication key: capabilityInvocation is absent",qe,{id:t.id});let r=st.absoluteDidUrl(e,t.id),n=typeof e=="string"?r===void 0?void 0:t.verificationMethod?.find(i=>st.absoluteDidUrl(i.id,t.id)===r):e;if(!n)throw new Ve(`Cannot derive aggregation communication key: capabilityInvocation[0] "${e}" does not resolve to a verification method`,qe,{id:t.id,invocation:e});return ho.fromVerificationMethod(n).publicKey}function $ne(t,e){try{let r=Sr.decode(t);if(r.idType==="KEY")return new ft(r.genesisBytes);if(e?.genesisDocument){let n=fs.external(r,e.genesisDocument);return jL(n)}}catch{}}l();l();l();var Qp=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":[...uu],patch:r,targetHash:"",targetVersionId:n+1,sourceHash:zn(e)},o;try{o=Qc.apply(e,r,{strict:!0})}catch(s){throw new nt(`Invalid patch: ${Ar(s).message}`,fe,{cause:Ar(s)})}if(o.id!==e.id)throw new nt(`Patches must not change the DID document id (source "${e.id}" to target "${o.id}").`,fe,{sourceId:e.id,targetId:o.id});try{pn.isValid(o)}catch(s){throw new nt("Error validating targetDocument: "+(s instanceof Error?s.message:String(s)),fe,o)}return i.targetHash=zn(o),i}static sign(e,r,n,i){if(!e.startsWith("did:btcr2:"))throw new nt(`Expected a did:btcr2 identifier for the root capability; got "${e}".`,fe,{did:e});let o=n.controller,s=n.id.indexOf("#");if(s<0)throw new nt(`Verification method id must contain a fragment (e.g. "${n.id}#initialKey"); got "${n.id}".`,fe,{verificationMethodId:n.id});let c=n.id.slice(s),a=ho.fromSigner(c,o,i),u=s===0?`${e}${c}`:n.id,d=a.publicKey.multibase.encoded;if(n.publicKeyMultibase&&d!==n.publicKeyMultibase)throw new nt(`Signing key does not match verification method "${n.id}": the signer's public key differs from the method's published publicKeyMultibase.`,fe,{verificationMethodId:n.id,expected:n.publicKeyMultibase,actual:d});let f={"@context":[...uu],cryptosuite:"bip340-jcs-2025",type:"DataIntegrityProof",verificationMethod:u,proofPurpose:"capabilityInvocation",capability:`urn:zcap:root:${encodeURIComponent(e)}`,capabilityAction:"Write"},p=a.toCryptosuite().toDataIntegrityProof().addProof(r,f),g;try{g=ho.fromVerificationMethod({...n,id:u}).toCryptosuite().toDataIntegrityProof().verifyProof(Kt(p),"capabilityInvocation").verified}catch(y){throw new nt(`Invalid update: the proof does not verify with the public key of "${n.id}": `+Ar(y).message,fe,{verificationMethodId:n.id,cause:Ar(y)})}if(!g)throw new nt(`Invalid update: the proof does not verify with the public key of "${n.id}".`,fe,{verificationMethodId:n.id});return p}static async announce(e,r,n,i,o,s){return oa.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 nt(`Cannot provide NeedSigningKey: updater phase is ${this.#e.phase}, expected Sign.`,fe,{phase:this.#e.phase});if(!r)throw new nt("NeedSigningKey requires a Signer.",fe);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 nt(`Cannot provide NeedFunding: updater phase is ${this.#e.phase}, expected Fund.`,fe,{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 nt(`NeedFunding proof must have utxoCount >= 1; got ${String(n.utxoCount)}.`,fe,{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 nt(`Cannot provide NeedBroadcast: updater phase is ${this.#e.phase}, expected Broadcast.`,fe,{phase:this.#e.phase});this.#e={phase:"Complete",signedUpdate:this.#e.signedUpdate};break}}}};l();var zI=class{document={};constructor(e){if(!e.id)throw new Ve('Missing required "id" property',qe,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 pn(this.document);for(let r of Object.keys(e))e[r]===void 0&&delete e[r];return e}};l();var YI=class{static methodName="btcr2";static create(e,r){let{idType:n,version:i=1,network:o="bitcoin"}=r||{};if(!n)throw new be("idType is required for creating a did:btcr2 identifier",qe,r);return Sr.encode(e,{idType:n,version:i,network:o})}static resolve(e,r={}){let n=Sr.decode(e),i=fs.sidecarData(r.sidecar),o=n.hrp===Rl.k?fs.deterministic(n):null;return new fs(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}){if(!Number.isInteger(n)||n<1)throw new nt(`Invalid sourceVersionId: expected an integer of at least 1, got ${String(n)}.`,fe,{sourceVersionId:n});let s=st.capabilityInvocationEntry(e,i);if(s===void 0)throw new nt("Invalid verificationMethodId: not authorized for capabilityInvocation",fe,{verificationMethodId:i,capabilityInvocation:e.capabilityInvocation});let c=st.verificationMethodOfEntry(e,s);if(!c)throw new nt("Invalid verificationMethodId: not found in source document",fe,{verificationMethodId:i});if(c.type!==cu)throw new nt(`Invalid verificationMethod: verificationMethod.type must be "${cu}"`,qe,c);if(!c.publicKeyMultibase?.startsWith(au))throw new nt(`Invalid verificationMethodId: publicKeyMultibase prefix must start with "${au}"`,qe,c);let a=st.absoluteDidUrl(o,e.id),u=e.service.filter(d=>a!==void 0&&st.absoluteDidUrl(d.id,e.id)===a).filter(d=>!!d).shift();if(!u)throw new nt("No beacon service found for provided beaconId",fe,{sourceDocument:e,beaconId:o});return new Qp({sourceDocument:e,patches:r,sourceVersionId:n,verificationMethod:c,beaconService:u})}static deactivate({sourceDocument:e,sourceVersionId:r,verificationMethodId:n,beaconId:i}){return this.update({sourceDocument:e,patches:[{...qI}],sourceVersionId:r,verificationMethodId:n,beaconId:i})}static getSigningMethod(e,r){r??="#initialKey";let n=xe.parse(e.id);if(n&&n.method!==this.methodName)throw new be(`Method not supported: ${n.method}`,wl,{identifier:e.id});let i=st.absoluteDidUrl(r,e.id)??st.relationshipMethodId(e.assertionMethod?.[0],e.id),o=i===void 0?void 0:st.getVerificationMethods(e).find(s=>st.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}};export{xv as AggregateBeaconError,st as Appendix,ire as BECH32M_CHARS,IL as BTCR2_DID_DOCUMENT_CONTEXT,uu as BTCR2_UPDATE_CONTEXT,nr as BeaconError,oa as BeaconFactory,VI as BeaconSignalDiscovery,fr as BeaconUtils,Ul as CASBeacon,Ev as CASBeaconError,Av as CHANGE_OUTPUT_VBYTES,qI as DEACTIVATION_PATCH,k0 as DEFAULT_FEE_ESTIMATOR,CL as DEFAULT_MIN_CONF,BL as DID_REGEX,Tv as DUST_LIMIT_SATS,YI as DidBtcr2,pn as DidDocument,zI as DidDocumentBuilder,jb as DidVerificationMethod,yf as GenesisDocument,dr as ID_PLACEHOLDER_VALUE,Sr as Identifier,au as MULTIKEY_PUBLIC_KEY_MULTIBASE_PREFIX,cu as MULTIKEY_VERIFICATION_METHOD_TYPE,t6 as P2PKH_BEACON_TX_VSIZE,QR as P2TR_BEACON_TX_VSIZE,e6 as P2WPKH_BEACON_TX_VSIZE,fs as Resolver,r6 as SINGLETON_BEACON_TX_VSIZE,$l as SMTBeacon,Gu as SMTBeaconError,N0 as SPENDABLE_DUST_LIMIT_SATS,ko as SinglePartyBeacon,Ol as SingletonBeacon,bv as SingletonBeaconError,zu as StaticFeeEstimator,Qp as Updater,_v as beaconTxVsize,Z9 as buildAggregationBeaconTx,n6 as deriveSingletonAddress,Iv as detectSingletonScriptKind,HI as extractOpReturnSignalHash,jL as getAggregationCommunicationKey,Wb as isBtcr2UpdateContext,RL as isMultikeyVerificationMethod,Uv as opReturnScript,$ne as resolveBtcr2SenderPk,Bv as resolveChangeAddress,s6 as selectSpendableUtxo};
1
+ var yB=Object.create;var uy=Object.defineProperty;var gB=Object.getOwnPropertyDescriptor;var mB=Object.getOwnPropertyNames;var wB=Object.getPrototypeOf,bB=Object.prototype.hasOwnProperty;var xB=(t,e)=>()=>(t&&(e=t(t=0)),e);var oe=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),Uf=(t,e)=>{for(var r in e)uy(t,r,{get:e[r],enumerable:!0})},EB=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of mB(e))!bB.call(t,i)&&i!==r&&uy(t,i,{get:()=>e[i],enumerable:!(n=gB(e,i))||n.enumerable});return t};var Kn=(t,e,r)=>(r=t!=null?yB(wB(t)):{},EB(e||!t||!t.__esModule?uy(r,"default",{value:t,enumerable:!0}):r,t));var hx=oe(Of=>{"use strict";l();Of.byteLength=SB;Of.toByteArray=TB;Of.fromByteArray=BB;var $n=[],Yr=[],vB=typeof Uint8Array<"u"?Uint8Array:Array,dy="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";for(ws=0,fx=dy.length;ws<fx;++ws)$n[ws]=dy[ws],Yr[dy.charCodeAt(ws)]=ws;var ws,fx;Yr[45]=62;Yr[95]=63;function lx(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 SB(t){var e=lx(t),r=e[0],n=e[1];return(r+n)*3/4-n}function AB(t,e,r){return(e+r)*3/4-r}function TB(t){var e,r=lx(t),n=r[0],i=r[1],o=new vB(AB(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 _B(t){return $n[t>>18&63]+$n[t>>12&63]+$n[t>>6&63]+$n[t&63]}function IB(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(_B(n));return i.join("")}function BB(t){for(var e,r=t.length,n=r%3,i=[],o=16383,s=0,c=r-n;s<c;s+=o)i.push(IB(t,s,s+o>c?c:s+o));return n===1?(e=t[r-1],i.push($n[e>>2]+$n[e<<4&63]+"==")):n===2&&(e=(t[r-2]<<8)+t[r-1],i.push($n[e>>10]+$n[e>>4&63]+$n[e<<2&63]+"=")),i.join("")}});var px=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,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 _r=oe(Cc=>{"use strict";l();var ly=hx(),Nc=px(),yx=typeof Symbol=="function"&&typeof Symbol.for=="function"?Symbol.for("nodejs.util.inspect.custom"):null;Cc.Buffer=F;Cc.SlowBuffer=NB;Cc.INSPECT_MAX_BYTES=50;var Df=2147483647;Cc.kMaxLength=Df;F.TYPED_ARRAY_SUPPORT=RB();!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 RB(){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 xi(t){if(t>Df)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 wx(t,e,r)}F.poolSize=8192;function wx(t,e,r){if(typeof t=="string")return OB(t,e);if(ArrayBuffer.isView(t))return DB(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(Hn(t,ArrayBuffer)||t&&Hn(t.buffer,ArrayBuffer)||typeof SharedArrayBuffer<"u"&&(Hn(t,SharedArrayBuffer)||t&&Hn(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=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 wx(t,e,r)};Object.setPrototypeOf(F.prototype,Uint8Array.prototype);Object.setPrototypeOf(F,Uint8Array);function bx(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 UB(t,e,r){return bx(t),t<=0?xi(t):e!==void 0?typeof r=="string"?xi(t).fill(e,r):xi(t).fill(e):xi(t)}F.alloc=function(t,e,r){return UB(t,e,r)};function gy(t){return bx(t),xi(t<0?0:my(t)|0)}F.allocUnsafe=function(t){return gy(t)};F.allocUnsafeSlow=function(t){return gy(t)};function OB(t,e){if((typeof e!="string"||e==="")&&(e="utf8"),!F.isEncoding(e))throw new TypeError("Unknown encoding: "+e);var r=xx(t,e)|0,n=xi(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=xi(e),n=0;n<e;n+=1)r[n]=t[n]&255;return r}function DB(t){if(Hn(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 kB(t){if(F.isBuffer(t)){var e=my(t.length)|0,r=xi(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)?xi(0):hy(t);if(t.type==="Buffer"&&Array.isArray(t.data))return hy(t.data)}function my(t){if(t>=Df)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+Df.toString(16)+" bytes");return t|0}function NB(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(Hn(e,Uint8Array)&&(e=F.from(e,e.offset,e.byteLength)),Hn(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(Hn(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 xx(t,e){if(F.isBuffer(t))return t.length;if(ArrayBuffer.isView(t)||Hn(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 _x(t).length;default:if(i)return n?-1:yy(t).length;e=(""+e).toLowerCase(),i=!0}}F.byteLength=xx;function CB(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 jB(this,e,r);case"utf8":case"utf-8":return vx(this,e,r);case"ascii":return qB(this,e,r);case"latin1":case"binary":return FB(this,e,r);case"base64":return HB(this,e,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return WB(this,e,r);default:if(n)throw new TypeError("Unknown encoding: "+t);t=(t+"").toLowerCase(),n=!0}}F.prototype._isBuffer=!0;function bs(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)bs(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)bs(this,r,r+3),bs(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)bs(this,r,r+7),bs(this,r+1,r+6),bs(this,r+2,r+5),bs(this,r+3,r+4);return this};F.prototype.toString=function(){var e=this.length;return e===0?"":arguments.length===0?vx(this,0,e):CB.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+">"};yx&&(F.prototype[yx]=F.prototype.inspect);F.prototype.compare=function(e,r,n,i,o){if(Hn(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 Ex(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:gx(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):gx(t,[e],r,n,i);throw new TypeError("val must be string, number or Buffer")}function gx(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 Ex(this,e,r,n,!0)};F.prototype.lastIndexOf=function(e,r,n){return Ex(this,e,r,n,!1)};function LB(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 PB(t,e,r,n){return kf(yy(e,t.length-r),t,r,n)}function MB(t,e,r,n){return kf(YB(e),t,r,n)}function KB(t,e,r,n){return kf(_x(e),t,r,n)}function $B(t,e,r,n){return kf(JB(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 LB(this,e,r,n);case"utf8":case"utf-8":return PB(this,e,r,n);case"ascii":case"latin1":case"binary":return MB(this,e,r,n);case"base64":return KB(this,e,r,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return $B(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 HB(t,e,r){return e===0&&r===t.length?ly.fromByteArray(t):ly.fromByteArray(t.slice(e,r))}function vx(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 VB(n)}var mx=4096;function VB(t){var e=t.length;if(e<=mx)return String.fromCharCode.apply(String,t);for(var r="",n=0;n<e;)r+=String.fromCharCode.apply(String,t.slice(n,n+=mx));return r}function qB(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 FB(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 jB(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+=XB[t[o]];return i}function WB(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 Ut(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||Ut(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||Ut(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||Ut(e,1,this.length),this[e]};F.prototype.readUint16LE=F.prototype.readUInt16LE=function(e,r){return e=e>>>0,r||Ut(e,2,this.length),this[e]|this[e+1]<<8};F.prototype.readUint16BE=F.prototype.readUInt16BE=function(e,r){return e=e>>>0,r||Ut(e,2,this.length),this[e]<<8|this[e+1]};F.prototype.readUint32LE=F.prototype.readUInt32LE=function(e,r){return e=e>>>0,r||Ut(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||Ut(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||Ut(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||Ut(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||Ut(e,1,this.length),this[e]&128?(255-this[e]+1)*-1:this[e]};F.prototype.readInt16LE=function(e,r){e=e>>>0,r||Ut(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||Ut(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||Ut(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||Ut(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||Ut(e,4,this.length),Nc.read(this,e,!0,23,4)};F.prototype.readFloatBE=function(e,r){return e=e>>>0,r||Ut(e,4,this.length),Nc.read(this,e,!1,23,4)};F.prototype.readDoubleLE=function(e,r){return e=e>>>0,r||Ut(e,8,this.length),Nc.read(this,e,!0,52,8)};F.prototype.readDoubleBE=function(e,r){return e=e>>>0,r||Ut(e,8,this.length),Nc.read(this,e,!1,52,8)};function fr(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;fr(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;fr(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||fr(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||fr(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||fr(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||fr(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||fr(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);fr(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);fr(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||fr(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||fr(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||fr(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||fr(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||fr(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 Sx(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 Ax(t,e,r,n,i){return e=+e,r=r>>>0,i||Sx(t,e,r,4,34028234663852886e22,-34028234663852886e22),Nc.write(t,e,r,n,23,4),r+4}F.prototype.writeFloatLE=function(e,r,n){return Ax(this,e,r,!0,n)};F.prototype.writeFloatBE=function(e,r,n){return Ax(this,e,r,!1,n)};function Tx(t,e,r,n,i){return e=+e,r=r>>>0,i||Sx(t,e,r,8,17976931348623157e292,-17976931348623157e292),Nc.write(t,e,r,n,52,8),r+8}F.prototype.writeDoubleLE=function(e,r,n){return Tx(this,e,r,!0,n)};F.prototype.writeDoubleBE=function(e,r,n){return Tx(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 GB=/[^+/0-9A-Za-z-_]/g;function zB(t){if(t=t.split("=")[0],t=t.trim().replace(GB,""),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 YB(t){for(var e=[],r=0;r<t.length;++r)e.push(t.charCodeAt(r)&255);return e}function JB(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 _x(t){return ly.toByteArray(zB(t))}function kf(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 Hn(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 XB=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 Si=oe((uP,Ux)=>{l();var lt=Ux.exports={},Vn,qn;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"?Vn=setTimeout:Vn=by}catch{Vn=by}try{typeof clearTimeout=="function"?qn=clearTimeout:qn=xy}catch{qn=xy}})();function Ix(t){if(Vn===setTimeout)return setTimeout(t,0);if((Vn===by||!Vn)&&setTimeout)return Vn=setTimeout,setTimeout(t,0);try{return Vn(t,0)}catch{try{return Vn.call(null,t,0)}catch{return Vn.call(this,t,0)}}}function ZB(t){if(qn===clearTimeout)return clearTimeout(t);if((qn===xy||!qn)&&clearTimeout)return qn=clearTimeout,clearTimeout(t);try{return qn(t)}catch{try{return qn.call(null,t)}catch{return qn.call(this,t)}}}var Ei=[],Lc=!1,xs,Nf=-1;function QB(){!Lc||!xs||(Lc=!1,xs.length?Ei=xs.concat(Ei):Nf=-1,Ei.length&&Bx())}function Bx(){if(!Lc){var t=Ix(QB);Lc=!0;for(var e=Ei.length;e;){for(xs=Ei,Ei=[];++Nf<e;)xs&&xs[Nf].run();Nf=-1,e=Ei.length}xs=null,Lc=!1,ZB(t)}}lt.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];Ei.push(new Rx(t,e)),Ei.length===1&&!Lc&&Ix(Bx)};function Rx(t,e){this.fun=t,this.array=e}Rx.prototype.run=function(){this.fun.apply(null,this.array)};lt.title="browser";lt.browser=!0;lt.env={};lt.argv=[];lt.version="";lt.versions={};function vi(){}lt.on=vi;lt.addListener=vi;lt.once=vi;lt.off=vi;lt.removeListener=vi;lt.removeAllListeners=vi;lt.emit=vi;lt.prependListener=vi;lt.prependOnceListener=vi;lt.listeners=function(t){return[]};lt.binding=function(t){throw new Error("process.binding is not supported")};lt.cwd=function(){return"/"};lt.chdir=function(t){throw new Error("process.chdir is not supported")};lt.umask=function(){return 0}});var b,w,fP,l=xB(()=>{b=Kn(_r()),w=Kn(Si()),fP=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 e1=oe((zH,Qv)=>{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),J0=t=>t===1/0||m6(t),X0=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&&!J0(r))throw new TypeError("ttl must be positive integer or Infinity if set");if(!J0(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(!J0(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()}};Qv.exports=X0});var m1=oe(g1=>{"use strict";l();g1.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 Sn=oe((wq,w1)=>{"use strict";l();w1.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 lg=oe((xq,b1)=>{"use strict";l();var fg=null;b1.exports=function(){return fg===null&&(fg={textEncoder:new TextEncoder,textDecoder:new TextDecoder}),fg}});var yg=oe(x1=>{"use strict";l();var hg=Sn(),J6=new Set(["buffer","view","utf8"]),pg=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 hg(`Encoding '${this.name}' cannot be transcoded to 'buffer'`,{code:"LEVEL_ENCODING_NOT_SUPPORTED"})}createViewTranscoder(){throw new hg(`Encoding '${this.name}' cannot be transcoded to 'view'`,{code:"LEVEL_ENCODING_NOT_SUPPORTED"})}createUTF8Transcoder(){throw new hg(`Encoding '${this.name}' cannot be transcoded to 'utf8'`,{code:"LEVEL_ENCODING_NOT_SUPPORTED"})}};x1.Encoding=pg});var bg=oe(Gl=>{"use strict";l();var{Buffer:mg}=_r()||{},{Encoding:wg}=yg(),X6=lg(),ud=class extends wg{constructor(e){super({...e,format:"buffer"})}createViewTranscoder(){return new dd({encode:this.encode,decode:e=>this.decode(mg.from(e.buffer,e.byteOffset,e.byteLength)),name:`${this.name}+view`})}createBufferTranscoder(){return this}},dd=class extends wg{constructor(e){super({...e,format:"view"})}createBufferTranscoder(){return new ud({encode:e=>{let r=this.encode(e);return mg.from(r.buffer,r.byteOffset,r.byteLength)},decode:this.decode,name:`${this.name}+buffer`})}createViewTranscoder(){return this}},gg=class extends wg{constructor(e){super({...e,format:"utf8"})}createBufferTranscoder(){return new ud({encode:e=>mg.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 dd({encode:n=>e.encode(this.encode(n)),decode:n=>this.decode(r.decode(n)),name:`${this.name}+view`})}createUTF8Transcoder(){return this}};Gl.BufferFormat=ud;Gl.ViewFormat=dd;Gl.UTF8Format=gg});var A1=oe(js=>{"use strict";l();var{Buffer:Yt}=_r()||{Buffer:{isBuffer:()=>!1}},{textEncoder:v1,textDecoder:E1}=lg()(),{BufferFormat:fd,ViewFormat:xg,UTF8Format:S1}=bg(),zl=t=>t;js.utf8=new S1({encode:function(t){return Yt.isBuffer(t)?t.toString("utf8"):ArrayBuffer.isView(t)?E1.decode(t):String(t)},decode:zl,name:"utf8",createViewTranscoder(){return new xg({encode:function(t){return ArrayBuffer.isView(t)?t:v1.encode(t)},decode:function(t){return E1.decode(t)},name:`${this.name}+view`})},createBufferTranscoder(){return new fd({encode:function(t){return Yt.isBuffer(t)?t:ArrayBuffer.isView(t)?Yt.from(t.buffer,t.byteOffset,t.byteLength):Yt.from(String(t),"utf8")},decode:function(t){return t.toString("utf8")},name:`${this.name}+buffer`})}});js.json=new S1({encode:JSON.stringify,decode:JSON.parse,name:"json"});js.buffer=new fd({encode:function(t){return Yt.isBuffer(t)?t:ArrayBuffer.isView(t)?Yt.from(t.buffer,t.byteOffset,t.byteLength):Yt.from(String(t),"utf8")},decode:zl,name:"buffer",createViewTranscoder(){return new xg({encode:function(t){return ArrayBuffer.isView(t)?t:Yt.from(String(t),"utf8")},decode:function(t){return Yt.from(t.buffer,t.byteOffset,t.byteLength)},name:`${this.name}+view`})}});js.view=new xg({encode:function(t){return ArrayBuffer.isView(t)?t:v1.encode(t)},decode:zl,name:"view",createBufferTranscoder(){return new fd({encode:function(t){return Yt.isBuffer(t)?t:ArrayBuffer.isView(t)?Yt.from(t.buffer,t.byteOffset,t.byteLength):Yt.from(String(t),"utf8")},decode:zl,name:`${this.name}+buffer`})}});js.hex=new fd({encode:function(t){return Yt.isBuffer(t)?t:Yt.from(String(t),"hex")},decode:function(t){return t.toString("hex")},name:"hex"});js.base64=new fd({encode:function(t){return Yt.isBuffer(t)?t:Yt.from(String(t),"base64")},decode:function(t){return t.toString("base64")},name:"base64"})});var I1=oe(_1=>{"use strict";l();var T1=Sn(),Jl=A1(),{Encoding:Z6}=yg(),{BufferFormat:Q6,ViewFormat:eU,UTF8Format:tU}=bg(),ld=Symbol("formats"),Yl=Symbol("encodings"),rU=new Set(["buffer","view","utf8"]),Eg=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[ld]=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 T1(`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[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 T1(`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}};_1.Transcoder=Eg;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 la=oe((Uq,vg)=>{"use strict";l();var fa=typeof Reflect=="object"?Reflect:null,B1=fa&&typeof fa.apply=="function"?fa.apply:function(e,r,n){return Function.prototype.apply.call(e,r,n)},Xl;fa&&typeof fa.ownKeys=="function"?Xl=fa.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 U1=Number.isNaN||function(e){return e!==e};function Le(){Le.init.call(this)}vg.exports=Le;vg.exports.once=lU;Le.EventEmitter=Le;Le.prototype._events=void 0;Le.prototype._eventsCount=0;Le.prototype._maxListeners=void 0;var R1=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(Le,"defaultMaxListeners",{enumerable:!0,get:function(){return R1},set:function(t){if(typeof t!="number"||t<0||U1(t))throw new RangeError('The value of "defaultMaxListeners" is out of range. It must be a non-negative number. Received '+t+".");R1=t}});Le.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};Le.prototype.setMaxListeners=function(e){if(typeof e!="number"||e<0||U1(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 O1(t){return t._maxListeners===void 0?Le.defaultMaxListeners:t._maxListeners}Le.prototype.getMaxListeners=function(){return O1(this)};Le.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")B1(a,this,r);else for(var u=a.length,d=L1(a,u),n=0;n<u;++n)B1(d[n],this,r);return!0};function D1(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=O1(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}Le.prototype.addListener=function(e,r){return D1(this,e,r,!1)};Le.prototype.on=Le.prototype.addListener;Le.prototype.prependListener=function(e,r){return D1(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 k1(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}Le.prototype.once=function(e,r){return Zl(r),this.on(e,k1(this,e,r)),this};Le.prototype.prependOnceListener=function(e,r){return Zl(r),this.prependListener(e,k1(this,e,r)),this};Le.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};Le.prototype.off=Le.prototype.removeListener;Le.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 N1(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):L1(i,i.length)}Le.prototype.listeners=function(e){return N1(this,e,!0)};Le.prototype.rawListeners=function(e){return N1(this,e,!1)};Le.listenerCount=function(t,e){return typeof t.listenerCount=="function"?t.listenerCount(e):C1.call(t,e)};Le.prototype.listenerCount=C1;function C1(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}Le.prototype.eventNames=function(){return this._eventsCount>0?Xl(this._events):[]};function L1(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))}P1(t,e,o,{once:!0}),e!=="error"&&hU(t,i,{once:!0})})}function hU(t,e,r){typeof t.on=="function"&&P1(t,"error",e,r)}function P1(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 K1=oe((Dq,M1)=>{l();M1.exports=typeof queueMicrotask=="function"?queueMicrotask:t=>Promise.resolve().then(t)});var hd=oe(Sg=>{"use strict";l();var $1=K1();Sg.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};Sg.fromPromise=function(t,e){if(e===void 0)return t;t.then(function(r){$1(()=>e(null,r))}).catch(function(r){$1(()=>e(r))})}});var Ql=oe(Ag=>{"use strict";l();Ag.getCallback=function(t,e){return typeof t=="function"?t:e};Ag.getOptions=function(t,e){return typeof t=="object"&&t!==null?t:e!==void 0?e:{}}});var qo=oe(nh=>{"use strict";l();var{fromCallback:Tg}=hd(),Cr=Sn(),{getOptions:_g,getCallback:H1}=Ql(),Ws=Symbol("promise"),ha=Symbol("callback"),ei=Symbol("working"),Gs=Symbol("handleOne"),qi=Symbol("handleMany"),Ig=Symbol("autoClose"),Ho=Symbol("finishWork"),ti=Symbol("returnMany"),Mo=Symbol("closing"),pd=Symbol("handleClose"),eh=Symbol("closed"),yd=Symbol("closeCallbacks"),$o=Symbol("keyEncoding"),zs=Symbol("valueEncoding"),Bg=Symbol("abortOnClose"),th=Symbol("legacy"),Rg=Symbol("keys"),Ug=Symbol("values"),Ko=Symbol("limit"),tn=Symbol("count"),rh=Object.freeze({}),pU=()=>{},V1=!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[eh]=!1,this[yd]=[],this[ei]=!1,this[Mo]=!1,this[Ig]=!1,this[ha]=null,this[Gs]=this[Gs].bind(this),this[qi]=this[qi].bind(this),this[pd]=this[pd].bind(this),this[$o]=r[$o],this[zs]=r[zs],this[th]=n,this[Ko]=Number.isInteger(r.limit)&&r.limit>=0?r.limit:1/0,this[tn]=0,this[Bg]=!!r.abortOnClose,this.db=e,this.db.attachResource(this),this.nextTick=e.nextTick}get count(){return this[tn]}get limit(){return this[Ko]}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[Mo]?this.nextTick(e,new Cr("Iterator is not open: cannot call next() after close()",{code:"LEVEL_ITERATOR_NOT_OPEN"})):this[ei]?this.nextTick(e,new Cr("Iterator is busy: cannot call next() until previous call has completed",{code:"LEVEL_ITERATOR_BUSY"})):(this[ei]=!0,this[ha]=e,this[tn]>=this[Ko]?this.nextTick(this[Gs],null):this._next(this[Gs])),r}_next(e){this.nextTick(e)}nextv(e,r,n){return n=H1(r,n),n=Tg(n,Ws),r=_g(r,rh),Number.isInteger(e)?(this[Mo]?this.nextTick(n,new Cr("Iterator is not open: cannot call nextv() after close()",{code:"LEVEL_ITERATOR_NOT_OPEN"})):this[ei]?this.nextTick(n,new Cr("Iterator is busy: cannot call nextv() until previous call has completed",{code:"LEVEL_ITERATOR_BUSY"})):(e<1&&(e=1),this[Ko]<1/0&&(e=Math.min(e,this[Ko]-this[tn])),this[ei]=!0,this[ha]=n,e<=0?this.nextTick(this[qi],null,[]):this._nextv(e,r,this[qi])),n[Ws]):(this.nextTick(n,new TypeError("The first argument 'size' must be an integer")),n[Ws])}_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=H1(e,r),r=Tg(r,Ws),e=_g(e,rh),this[Mo]?this.nextTick(r,new Cr("Iterator is not open: cannot call all() after close()",{code:"LEVEL_ITERATOR_NOT_OPEN"})):this[ei]?this.nextTick(r,new Cr("Iterator is busy: cannot call all() until previous call has completed",{code:"LEVEL_ITERATOR_BUSY"})):(this[ei]=!0,this[ha]=r,this[Ig]=!0,this[tn]>=this[Ko]?this.nextTick(this[qi],null,[]):this._all(e,this[qi])),r[Ws]}_all(e,r){let n=this[tn],i=[],o=()=>{let c=this[Ko]<1/0?Math.min(1e3,this[Ko]-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()}[Ho](){let e=this[ha];return this[Bg]&&e===null?pU:(this[ei]=!1,this[ha]=null,this[Mo]&&this._close(this[pd]),e)}[ti](e,r,n){this[Ig]?this.close(e.bind(null,r,n)):e(r,n)}seek(e,r){if(r=_g(r,rh),!this[Mo]){if(this[ei])throw new Cr("Iterator is busy: cannot call seek() until next() has completed",{code:"LEVEL_ITERATOR_BUSY"});{let n=this.db.keyEncoding(r.keyEncoding||this[$o]),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 Cr("Iterator does not support seek()",{code:"LEVEL_NOT_SUPPORTED"})}close(e){return e=Tg(e,Ws),this[eh]?this.nextTick(e):this[Mo]?this[yd].push(e):(this[Mo]=!0,this[yd].push(e),this[ei]?this[Bg]&&this[Ho]()(new Cr("Aborted on iterator close()",{code:"LEVEL_ITERATOR_NOT_OPEN"})):this._close(this[pd])),e[Ws]}_close(e){this.nextTick(e)}[pd](){this[eh]=!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[eh]||await this.close()}}},pa=class extends gd{constructor(e,r){super(e,r,!0),this[Rg]=r.keys!==!1,this[Ug]=r.values!==!1}[Gs](e,r,n){let i=this[Ho]();if(e)return i(e);try{r=this[Rg]&&r!==void 0?this[$o].decode(r):void 0,n=this[Ug]&&n!==void 0?this[zs].decode(n):void 0}catch(o){return i(new Vo("entry",o))}r===void 0&&n===void 0||this[tn]++,i(null,r,n)}[qi](e,r){let n=this[Ho]();if(e)return this[ti](n,e);try{for(let i of r){let o=i[0],s=i[1];i[0]=this[Rg]&&o!==void 0?this[$o].decode(o):void 0,i[1]=this[Ug]&&s!==void 0?this[zs].decode(s):void 0}}catch(i){return this[ti](n,new Vo("entries",i))}this[tn]+=r.length,this[ti](n,null,r)}end(e){return!V1&&typeof console<"u"&&(V1=!0,console.warn(new Cr("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)}},Og=class extends gd{constructor(e,r){super(e,r,!1)}[Gs](e,r){let n=this[Ho]();if(e)return n(e);try{r=r!==void 0?this[$o].decode(r):void 0}catch(i){return n(new Vo("key",i))}r!==void 0&&this[tn]++,n(null,r)}[qi](e,r){let n=this[Ho]();if(e)return this[ti](n,e);try{for(let i=0;i<r.length;i++){let o=r[i];r[i]=o!==void 0?this[$o].decode(o):void 0}}catch(i){return this[ti](n,new Vo("keys",i))}this[tn]+=r.length,this[ti](n,null,r)}},Dg=class extends gd{constructor(e,r){super(e,r,!1)}[Gs](e,r){let n=this[Ho]();if(e)return n(e);try{r=r!==void 0?this[zs].decode(r):void 0}catch(i){return n(new Vo("value",i))}r!==void 0&&this[tn]++,n(null,r)}[qi](e,r){let n=this[Ho]();if(e)return this[ti](n,e);try{for(let i=0;i<r.length;i++){let o=r[i];r[i]=o!==void 0?this[zs].decode(o):void 0}}catch(i){return this[ti](n,new Vo("values",i))}this[tn]+=r.length,this[ti](n,null,r)}},Vo=class extends Cr{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(pa.prototype,t.split(" ")[0],{get(){throw new Cr(`The ${t} has been removed`,{code:"LEVEL_LEGACY"})},set(){throw new Cr(`The ${t} has been removed`,{code:"LEVEL_LEGACY"})}});pa.keyEncoding=$o;pa.valueEncoding=zs;nh.AbstractIterator=pa;nh.AbstractKeyIterator=Og;nh.AbstractValueIterator=Dg});var q1=oe(kg=>{"use strict";l();var{AbstractKeyIterator:yU,AbstractValueIterator:gU}=qo(),Ys=Symbol("iterator"),md=Symbol("callback"),ya=Symbol("handleOne"),Js=Symbol("handleMany"),wd=class extends yU{constructor(e,r){super(e,r),this[Ys]=e.iterator({...r,keys:!0,values:!1}),this[ya]=this[ya].bind(this),this[Js]=this[Js].bind(this)}},ih=class extends gU{constructor(e,r){super(e,r),this[Ys]=e.iterator({...r,keys:!1,values:!0}),this[ya]=this[ya].bind(this),this[Js]=this[Js].bind(this)}};for(let t of[wd,ih]){let e=t===wd,r=e?n=>n[0]:n=>n[1];t.prototype._next=function(n){this[md]=n,this[Ys].next(this[ya])},t.prototype[ya]=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[Ys].nextv(n,i,this[Js])},t.prototype._all=function(n,i){this[md]=i,this[Ys].all(n,this[Js])},t.prototype[Js]=function(n,i){let o=this[md];n?o(n):o(null,i.map(r))},t.prototype._seek=function(n,i){this[Ys].seek(n,i)},t.prototype._close=function(n){this[Ys].close(n)}}kg.DefaultKeyIterator=wd;kg.DefaultValueIterator=ih});var F1=oe(dh=>{"use strict";l();var{AbstractIterator:mU,AbstractKeyIterator:wU,AbstractValueIterator:bU}=qo(),Ng=Sn(),yr=Symbol("nut"),ah=Symbol("undefer"),uh=Symbol("factory"),oh=class extends mU{constructor(e,r){super(e,r),this[yr]=null,this[uh]=()=>e.iterator(r),this.db.defer(()=>this[ah]())}},sh=class extends wU{constructor(e,r){super(e,r),this[yr]=null,this[uh]=()=>e.keys(r),this.db.defer(()=>this[ah]())}},ch=class extends bU{constructor(e,r){super(e,r),this[yr]=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[yr]=this[uh]())},t.prototype._next=function(e){this[yr]!==null?this[yr].next(e):this.db.status==="opening"?this.db.defer(()=>this._next(e)):this.nextTick(e,new Ng("Iterator is not open: cannot call next() after close()",{code:"LEVEL_ITERATOR_NOT_OPEN"}))},t.prototype._nextv=function(e,r,n){this[yr]!==null?this[yr].nextv(e,r,n):this.db.status==="opening"?this.db.defer(()=>this._nextv(e,r,n)):this.nextTick(n,new Ng("Iterator is not open: cannot call nextv() after close()",{code:"LEVEL_ITERATOR_NOT_OPEN"}))},t.prototype._all=function(e,r){this[yr]!==null?this[yr].all(r):this.db.status==="opening"?this.db.defer(()=>this._all(e,r)):this.nextTick(r,new Ng("Iterator is not open: cannot call all() after close()",{code:"LEVEL_ITERATOR_NOT_OPEN"}))},t.prototype._seek=function(e,r){this[yr]!==null?this[yr]._seek(e,r):this.db.status==="opening"&&this.db.defer(()=>this._seek(e,r))},t.prototype._close=function(e){this[yr]!==null?this[yr].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 Lg=oe(W1=>{"use strict";l();var{fromCallback:j1}=hd(),fh=Sn(),{getCallback:xU,getOptions:EU}=Ql(),lh=Symbol("promise"),rn=Symbol("status"),ga=Symbol("operations"),bd=Symbol("finishClose"),ma=Symbol("closeCallbacks"),Cg=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[ga]=[],this[ma]=[],this[rn]="open",this[bd]=this[bd].bind(this),this.db=e,this.db.attachResource(this),this.nextTick=e.nextTick}get length(){return this[ga].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[ga].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[ga].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[ga]=[],this}_clear(){}write(e,r){return r=xU(e,r),r=j1(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[ma].push(()=>r(n)),n||this.db.emit("batch",this[ga]),this._close(this[bd])})),r[lh]}_write(e,r){}close(e){return e=j1(e,lh),this[rn]==="closing"?this[ma].push(e):this[rn]==="closed"?this.nextTick(e):(this[ma].push(e),this[rn]!=="writing"&&(this[rn]="closing",this._close(this[bd]))),e[lh]}_close(e){this.nextTick(e)}[bd](){this[rn]="closed",this.db.detachResource(this);let e=this[ma];this[ma]=[];for(let r of e)r()}};W1.AbstractChainedBatch=Cg});var z1=oe(G1=>{"use strict";l();var{AbstractChainedBatch:vU}=Lg(),SU=Sn(),wa=Symbol("encoded"),Pg=class extends vU{constructor(e){super(e),this[wa]=[]}_put(e,r,n){this[wa].push({...n,type:"put",key:e,value:r})}_del(e,r){this[wa].push({...r,type:"del",key:e})}_clear(){this[wa]=[]}_write(e,r){this.db.status==="opening"?this.db.defer(()=>this._write(e,r)):this.db.status==="open"?this[wa].length===0?this.nextTick(r):this.db._batch(this[wa],e,r):this.nextTick(r,new SU("Batch is not open: cannot call write() after write() or close()",{code:"LEVEL_BATCH_NOT_OPEN"}))}};G1.DefaultChainedBatch=Pg});var X1=oe((zq,J1)=>{"use strict";l();var Y1=Sn(),AU=Object.prototype.hasOwnProperty,TU=new Set(["lt","lte","gt","gte"]);J1.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 Y1(`The legacy range option '${n}' has been removed`,{code:"LEVEL_LEGACY"});if(n==="encoding")throw new Y1("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 Mg=oe((Jq,Q1)=>{l();var Z1;Q1.exports=typeof queueMicrotask=="function"?queueMicrotask.bind(typeof window<"u"?window:globalThis):t=>(Z1||(Z1=Promise.resolve())).then(t).catch(e=>setTimeout(()=>{throw e},0))});var r2=oe((Zq,t2)=>{"use strict";l();var e2=Mg();t2.exports=function(t,...e){e.length===0?e2(t):e2(()=>t(...e))}});var n2=oe(hh=>{"use strict";l();var{AbstractIterator:_U,AbstractKeyIterator:IU,AbstractValueIterator:BU}=qo(),ba=Symbol("unfix"),An=Symbol("iterator"),Xs=Symbol("handleOne"),Fo=Symbol("handleMany"),Fi=Symbol("callback"),xd=class extends _U{constructor(e,r,n,i){super(e,r),this[An]=n,this[ba]=i,this[Xs]=this[Xs].bind(this),this[Fo]=this[Fo].bind(this),this[Fi]=null}[Xs](e,r,n){let i=this[Fi];if(e)return i(e);r!==void 0&&(r=this[ba](r)),i(e,r,n)}[Fo](e,r){let n=this[Fi];if(e)return n(e);for(let i of r){let o=i[0];o!==void 0&&(i[0]=this[ba](o))}n(e,r)}},Ed=class extends IU{constructor(e,r,n,i){super(e,r),this[An]=n,this[ba]=i,this[Xs]=this[Xs].bind(this),this[Fo]=this[Fo].bind(this),this[Fi]=null}[Xs](e,r){let n=this[Fi];if(e)return n(e);r!==void 0&&(r=this[ba](r)),n(e,r)}[Fo](e,r){let n=this[Fi];if(e)return n(e);for(let i=0;i<r.length;i++){let o=r[i];o!==void 0&&(r[i]=this[ba](o))}n(e,r)}},vd=class extends BU{constructor(e,r,n){super(e,r),this[An]=n}};for(let t of[xd,Ed])t.prototype._next=function(e){this[Fi]=e,this[An].next(this[Xs])},t.prototype._nextv=function(e,r,n){this[Fi]=n,this[An].nextv(e,r,this[Fo])},t.prototype._all=function(e,r){this[Fi]=r,this[An].all(e,this[Fo])};for(let t of[vd])t.prototype._next=function(e){this[An].next(e)},t.prototype._nextv=function(e,r,n){this[An].nextv(e,r,n)},t.prototype._all=function(e,r){this[An].all(e,r)};for(let t of[xd,Ed,vd])t.prototype._seek=function(e,r){this[An].seek(e,r)},t.prototype._close=function(e){this[An].close(e)};hh.AbstractSublevelIterator=xd;hh.AbstractSublevelKeyIterator=Ed;hh.AbstractSublevelValueIterator=vd});var c2=oe((rF,s2)=>{"use strict";l();var Kg=Sn(),{Buffer:Vg}=_r()||{},{AbstractSublevelIterator:RU,AbstractSublevelKeyIterator:UU,AbstractSublevelValueIterator:OU}=n2(),ji=Symbol("prefix"),i2=Symbol("upperBound"),Sd=Symbol("prefixRange"),Lr=Symbol("parent"),$g=Symbol("unfix"),o2=new TextEncoder,DU={separator:"!"};s2.exports=function({AbstractLevel:t}){class e extends t{static defaults(n){if(typeof n=="string")throw new Kg("The subleveldown string shorthand for { separator } has been removed",{code:"LEVEL_LEGACY"});if(n&&n.open)throw new Kg("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[Lr]||n;if(!o2.encode(i).every(p=>p>u&&p<127))throw new Kg(`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[Lr]=d,this[ji]=new ph(f),this[i2]=new ph(h),this[$g]=new qg,this.nextTick=d.nextTick}prefixKey(n,i){if(i==="utf8")return this[ji].utf8+n;if(n.byteLength===0)return this[ji][i];if(i==="view"){let o=this[ji].view,s=new Uint8Array(o.byteLength+n.byteLength);return s.set(o,0),s.set(n,o.byteLength),s}else{let o=this[ji].buffer;return Vg.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[ji][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[i2][i]}get prefix(){return this[ji].utf8}get db(){return this[Lr]}_open(n,i){this[Lr].open({passive:!0},i)}_put(n,i,o,s){this[Lr].put(n,i,o,s)}_get(n,i,o){this[Lr].get(n,i,o)}_getMany(n,i,o){this[Lr].getMany(n,i,o)}_del(n,i,o){this[Lr].del(n,i,o)}_batch(n,i,o){this[Lr].batch(n,i,o)}_clear(n,i){this[Sd](n,n.keyEncoding),this[Lr].clear(n,i)}_iterator(n){this[Sd](n,n.keyEncoding);let i=this[Lr].iterator(n),o=this[$g].get(this[ji].utf8.length,n.keyEncoding);return new RU(this,n,i,o)}_keys(n){this[Sd](n,n.keyEncoding);let i=this[Lr].keys(n),o=this[$g].get(this[ji].utf8.length,n.keyEncoding);return new UU(this,n,i,o)}_values(n){this[Sd](n,n.keyEncoding);let i=this[Lr].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:Hg(t,"utf8"),buffer:Hg(t,"buffer"),view:Hg(t,"view")}}},Hg=function(t,e){return t.supports.encodings[e]?t.keyEncoding(e).name===e:!1},ph=class{constructor(e){this.utf8=e,this.view=o2.encode(e),this.buffer=Vg?Vg.from(this.view.buffer,0,this.view.byteLength):{}}},qg=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 zg=oe(Gg=>{"use strict";l();var{supports:CU}=m1(),{Transcoder:LU}=I1(),{EventEmitter:PU}=la(),{fromCallback:jo}=hd(),Tn=Sn(),{AbstractIterator:Zs}=qo(),{DefaultKeyIterator:MU,DefaultValueIterator:KU}=q1(),{DeferredIterator:$U,DeferredKeyIterator:HU,DeferredValueIterator:VU}=F1(),{DefaultChainedBatch:a2}=z1(),{getCallback:Qs,getOptions:Wo}=Ql(),yh=X1(),ge=Symbol("promise"),Wi=Symbol("landed"),ec=Symbol("resources"),Fg=Symbol("closeResources"),Ad=Symbol("operations"),Td=Symbol("undefer"),gh=Symbol("deferOpen"),u2=Symbol("options"),Ee=Symbol("status"),tc=Symbol("defaultOptions"),xa=Symbol("transcoder"),mh=Symbol("keyEncoding"),jg=Symbol("valueEncoding"),qU=()=>{},_d=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=Wo(r);let{keyEncoding:n,valueEncoding:i,passive:o,...s}=r;this[ec]=new Set,this[Ad]=[],this[gh]=!0,this[u2]=s,this[Ee]="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[xa]=new LU(FU(this)),this[mh]=this[xa].encoding(n||"utf8"),this[jg]=this[xa].encoding(i||"utf8");for(let c of this[xa].encodings())this.supports.encodings[c.commonName]||(this.supports.encodings[c.commonName]=!0);this[tc]={empty:Object.freeze({}),entry:Object.freeze({keyEncoding:this[mh].commonName,valueEncoding:this[jg].commonName}),key:Object.freeze({keyEncoding:this[mh].commonName})},this.nextTick(()=>{this[gh]&&this.open({passive:!1},qU)})}get status(){return this[Ee]}keyEncoding(e){return this[xa].encoding(e??this[mh])}valueEncoding(e){return this[xa].encoding(e??this[jg])}open(e,r){r=Qs(e,r),r=jo(r,ge),e={...this[u2],...Wo(e)},e.createIfMissing=e.createIfMissing!==!1,e.errorIfExists=!!e.errorIfExists;let n=i=>{this[Ee]==="closing"||this[Ee]==="opening"?this.once(Wi,i?()=>n(i):n):this[Ee]!=="open"?r(new Tn("Database is not open",{code:"LEVEL_DATABASE_NOT_OPEN",cause:i})):r()};return e.passive?this[Ee]==="opening"?this.once(Wi,n):this.nextTick(n):this[Ee]==="closed"||this[gh]?(this[gh]=!1,this[Ee]="opening",this.emit("opening"),this._open(e,i=>{if(i){this[Ee]="closed",this[Fg](()=>{this.emit(Wi),n(i)}),this[Td]();return}this[Ee]="open",this[Td](),this.emit(Wi),this[Ee]==="open"&&this.emit("open"),this[Ee]==="open"&&this.emit("ready"),n()})):this[Ee]==="open"?this.nextTick(n):this.once(Wi,()=>this.open(e,r)),r[ge]}_open(e,r){this.nextTick(r)}close(e){e=jo(e,ge);let r=n=>{this[Ee]==="opening"||this[Ee]==="closing"?this.once(Wi,n?r(n):r):this[Ee]!=="closed"?e(new Tn("Database is not closed",{code:"LEVEL_DATABASE_NOT_CLOSED",cause:n})):e()};if(this[Ee]==="open"){this[Ee]="closing",this.emit("closing");let n=i=>{this[Ee]="open",this[Td](),this.emit(Wi),r(i)};this[Fg](()=>{this._close(i=>{if(i)return n(i);this[Ee]="closed",this[Td](),this.emit(Wi),this[Ee]==="closed"&&this.emit("closed"),r()})})}else this[Ee]==="closed"?this.nextTick(r):this.once(Wi,()=>this.close(e));return e[ge]}[Fg](e){if(this[ec].size===0)return this.nextTick(e);let r=this[ec].size,n=!0,i=()=>{--r===0&&(n?this.nextTick(e):e())};for(let o of this[ec])o.close(i);n=!1,this[ec].clear()}_close(e){this.nextTick(e)}get(e,r,n){if(n=Qs(r,n),n=jo(n,ge),r=Wo(r,this[tc].entry),this[Ee]==="opening")return this.defer(()=>this.get(e,r,n)),n[ge];if(Ea(this,n))return n[ge];let i=this._checkKey(e);if(i)return this.nextTick(n,i),n[ge];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 Tn("Could not decode value",{code:"LEVEL_DECODE_ERROR",cause:f}))}n(null,d)}),n[ge]}_get(e,r,n){this.nextTick(n,new Error("NotFound"))}getMany(e,r,n){if(n=Qs(r,n),n=jo(n,ge),r=Wo(r,this[tc].entry),this[Ee]==="opening")return this.defer(()=>this.getMany(e,r,n)),n[ge];if(Ea(this,n))return n[ge];if(!Array.isArray(e))return this.nextTick(n,new TypeError("The first argument 'keys' must be an array")),n[ge];if(e.length===0)return this.nextTick(n,null,[]),n[ge];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[ge];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 Tn(`Could not decode one or more of ${d.length} value(s)`,{code:"LEVEL_DECODE_ERROR",cause:f}))}n(null,d)}),n[ge]}_getMany(e,r,n){this.nextTick(n,null,new Array(e.length).fill(void 0))}put(e,r,n,i){if(i=Qs(n,i),i=jo(i,ge),n=Wo(n,this[tc].entry),this[Ee]==="opening")return this.defer(()=>this.put(e,r,n,i)),i[ge];if(Ea(this,i))return i[ge];let o=this._checkKey(e)||this._checkValue(r);if(o)return this.nextTick(i,o),i[ge];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[ge]}_put(e,r,n,i){this.nextTick(i)}del(e,r,n){if(n=Qs(r,n),n=jo(n,ge),r=Wo(r,this[tc].key),this[Ee]==="opening")return this.defer(()=>this.del(e,r,n)),n[ge];if(Ea(this,n))return n[ge];let i=this._checkKey(e);if(i)return this.nextTick(n,i),n[ge];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[ge]}_del(e,r,n){this.nextTick(n)}batch(e,r,n){if(!arguments.length){if(this[Ee]==="opening")return new a2(this);if(this[Ee]!=="open")throw new Tn("Database is not open",{code:"LEVEL_DATABASE_NOT_OPEN"});return this._chainedBatch()}if(typeof e=="function"?n=e:n=Qs(r,n),n=jo(n,ge),r=Wo(r,this[tc].empty),this[Ee]==="opening")return this.defer(()=>this.batch(e,r,n)),n[ge];if(Ea(this,n))return n[ge];if(!Array.isArray(e))return this.nextTick(n,new TypeError("The first argument 'operations' must be an array")),n[ge];if(e.length===0)return this.nextTick(n),n[ge];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[ge];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[ge];let d=this._checkKey(u.key);if(d)return this.nextTick(n,d),n[ge];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[ge];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[ge]}_batch(e,r,n){this.nextTick(n)}sublevel(e,r){return this._sublevel(e,Wg.defaults(r))}_sublevel(e,r){return new Wg(this,e,r)}prefixKey(e,r){return e}clear(e,r){if(r=Qs(e,r),r=jo(r,ge),e=Wo(e,this[tc].empty),this[Ee]==="opening")return this.defer(()=>this.clear(e,r)),r[ge];if(Ea(this,r))return r[ge];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[ge]}_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[Zs.keyEncoding]=r,e[Zs.valueEncoding]=n,e.keyEncoding=r.format,e.valueEncoding=n.format,this[Ee]==="opening")return new $U(this,e);if(this[Ee]!=="open")throw new Tn("Database is not open",{code:"LEVEL_DATABASE_NOT_OPEN"});return this._iterator(e)}_iterator(e){return new Zs(this,e)}keys(e){let r=this.keyEncoding(e&&e.keyEncoding),n=this.valueEncoding(e&&e.valueEncoding);if(e=yh(e,r),e[Zs.keyEncoding]=r,e[Zs.valueEncoding]=n,e.keyEncoding=r.format,e.valueEncoding=n.format,this[Ee]==="opening")return new HU(this,e);if(this[Ee]!=="open")throw new Tn("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[Zs.keyEncoding]=r,e[Zs.valueEncoding]=n,e.keyEncoding=r.format,e.valueEncoding=n.format,this[Ee]==="opening")return new VU(this,e);if(this[Ee]!=="open")throw new Tn("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[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[ec].add(e)}detachResource(e){this[ec].delete(e)}_chainedBatch(){return new a2(this)}_checkKey(e){if(e==null)return new Tn("Key cannot be null or undefined",{code:"LEVEL_INVALID_KEY"})}_checkValue(e){if(e==null)return new Tn("Value cannot be null or undefined",{code:"LEVEL_INVALID_VALUE"})}};_d.prototype.nextTick=r2();var{AbstractSublevel:Wg}=c2()({AbstractLevel:_d});Gg.AbstractLevel=_d;Gg.AbstractSublevel=Wg;var Ea=function(t,e){return t[Ee]!=="open"?(t.nextTick(e,new Tn("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 Yg=oe(rc=>{"use strict";l();rc.AbstractLevel=zg().AbstractLevel;rc.AbstractSublevel=zg().AbstractSublevel;rc.AbstractIterator=qo().AbstractIterator;rc.AbstractKeyIterator=qo().AbstractKeyIterator;rc.AbstractValueIterator=qo().AbstractValueIterator;rc.AbstractChainedBatch=Lg().AbstractChainedBatch});var f2=oe((aF,d2)=>{l();d2.exports=WU;var jU=Mg();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,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 Jg=oe((dF,l2)=>{"use strict";l();l2.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 Xg=oe((lF,h2)=>{"use strict";l();var GU=new TextEncoder;h2.exports=function(t){return t instanceof Uint8Array?t:t instanceof ArrayBuffer?new Uint8Array(t):GU.encode(t)}});var w2=oe(m2=>{"use strict";l();var{AbstractIterator:zU}=Yg(),p2=Jg(),wh=Xg(),ri=Symbol("cache"),Gi=Symbol("finished"),Pr=Symbol("options"),zi=Symbol("currentOptions"),nc=Symbol("position"),Zg=Symbol("location"),va=Symbol("first"),y2={},Qg=class extends zU{constructor(e,r,n){super(e,n),this[ri]=[],this[Gi]=this.limit===0,this[Pr]=n,this[zi]={...n},this[nc]=void 0,this[Zg]=r,this[va]=!0}_nextv(e,r,n){if(this[va]=!1,this[Gi])return this.nextTick(n,null,[]);if(this[ri].length>0)return e=Math.min(e,this[ri].length),this.nextTick(n,null,this[ri].splice(0,e));this[nc]!==void 0&&(this[Pr].reverse?(this[zi].lt=this[nc],this[zi].lte=void 0):(this[zi].gt=this[nc],this[zi].gte=void 0));let i;try{i=p2(this[zi])}catch{return this[Gi]=!0,this.nextTick(n,null,[])}let o=this.db.db.transaction([this[Zg]],"readonly"),s=o.objectStore(this[Zg]),c=[];if(this[Pr].reverse){let a=!this[Pr].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[nc]=f,c.push([this[Pr].keys&&f!==void 0?wh(f):void 0,this[Pr].values&&h!==void 0?wh(h):void 0]),c.length<e?d.continue():g2(o)}else this[Gi]=!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[Gi]=!0:this[nc]=a[f-1],c.length=f;for(let h=0;h<f;h++){let p=a[h],g=u[h];c[h]=[this[Pr].keys&&p!==void 0?wh(p):void 0,this[Pr].values&&g!==void 0?wh(g):void 0]}g2(o)};this[Pr].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[Pr].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[ri].length>0){let[r,n]=this[ri].shift();this.nextTick(e,null,r,n)}else if(this[Gi])this.nextTick(e);else{let r=Math.min(100,this.limit-this.count);this[va]&&(this[va]=!1,r=1),this._nextv(r,y2,(n,i)=>{if(n)return e(n);this[ri]=i,this._next(e)})}}_all(e,r){this[va]=!1;let n=this[ri].splice(0,this[ri].length),i=this.limit-this.count-n.length;if(i<=0)return this.nextTick(r,null,n);this._nextv(i,y2,(o,s)=>{if(o)return r(o);n.length>0&&(s=n.concat(s)),r(null,s)})}_seek(e,r){this[va]=!0,this[ri]=[],this[Gi]=!1,this[nc]=void 0,this[zi]={...this[Pr]};let n;try{n=p2(this[Pr])}catch{this[Gi]=!0;return}n!==null&&!n.includes(e)?this[Gi]=!0:this[Pr].reverse?this[zi].lte=e:this[zi].gte=e}};m2.Iterator=Qg;function g2(t){typeof t.commit=="function"&&t.commit()}});var x2=oe((gF,b2)=>{"use strict";l();b2.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 _2=oe(T2=>{"use strict";l();var{AbstractLevel:YU}=Yg(),E2=Sn(),JU=f2(),{fromCallback:XU}=hd(),{Iterator:ZU}=w2(),v2=Xg(),QU=x2(),eO=Jg(),A2="level-js-",Id=Symbol("idb"),em=Symbol("namePrefix"),Yi=Symbol("location"),tm=Symbol("version"),ic=Symbol("store"),Bd=Symbol("onComplete"),S2=Symbol("promise"),bh=class extends YU{constructor(e,r,n){if(typeof r=="function"||typeof n=="function")throw new E2("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[Yi]=e,this[em]=i??A2,this[tm]=parseInt(o||1,10),this[Id]=null}get location(){return this[Yi]}get namePrefix(){return this[em]}get version(){return this[tm]}get db(){return this[Id]}get type(){return"browser-level"}_open(e,r){let n=indexedDB.open(this[em]+this[Yi],this[tm]);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[Yi])||o.createObjectStore(this[Yi])}}[ic](e){return this[Id].transaction([this[Yi]],e).objectStore(this[Yi])}[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[ic]("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 E2("Entry not found",{code:"LEVEL_NOT_FOUND"}));n(null,v2(c))})}_getMany(e,r,n){let i=this[ic]("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:v2(u))},a.onerror=u=>{u.stopPropagation(),c(a.error)}});JU(o,16,n)}_del(e,r,n){let i=this[ic]("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[ic]("readwrite"),s;try{s=o.put(r,e)}catch(c){return this.nextTick(i,c)}this[Bd](s,i)}_iterator(e){return new ZU(this,this[Yi],e)}_batch(e,r,n){let i=this[ic]("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[Yi],n,e,r);try{let o=this[ic]("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)}};bh.destroy=function(t,e,r){typeof e=="function"&&(r=e,e=A2),r=XU(r,S2);let n=indexedDB.deleteDatabase(e+t);return n.onsuccess=function(){r()},n.onerror=function(i){r(i)},r[S2]};T2.BrowserLevel=bh});var rm=oe(I2=>{l();I2.Level=_2().BrowserLevel});var it=oe((IF,B2)=>{"use strict";l();B2.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 Sa=oe((RF,Eh)=>{"use strict";l();var{AbortController:R2,AbortSignal:rO}=typeof self<"u"?self:typeof window<"u"?window:void 0;Eh.exports=R2;Eh.exports.AbortSignal=rO;Eh.exports.default=R2});var Jt=oe((OF,im)=>{"use strict";l();var nO=_r(),{kResistStopPropagation:iO,SymbolDispose:oO}=it(),sO=globalThis.AbortSignal||Sa().AbortSignal,cO=globalThis.AbortController||Sa().AbortController,aO=Object.getPrototypeOf(async function(){}).constructor,U2=globalThis.Blob||nO.Blob,uO=typeof U2<"u"?function(e){return e instanceof U2}:function(e){return!1},O2=(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)},nm=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}};im.exports={AggregateError:nm,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:la().addAbortListener||function(e,r){if(e===void 0)throw new ERR_INVALID_ARG_TYPE("signal","AbortSignal",e);O2(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=>{O2(i,"signals"),i.addEventListener("abort",n,{once:!0})}),r.signal.addEventListener("abort",()=>{e.forEach(i=>i.removeEventListener("abort",n))},{once:!0}),r.signal}};im.exports.promisify.custom=Symbol.for("nodejs.util.promisify.custom")});var ir=oe((kF,N2)=>{"use strict";l();var{format:fO,inspect:vh,AggregateError:lO}=Jt(),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 sc(t,e){if(!t)throw new Sh.ERR_INTERNAL_ASSERTION(e)}function D2(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 sc(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 sc(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 k2(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 om=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)=>{sc(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)sc(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):(sc(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)=>{sc(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)=>{sc(e,'Missing "range" argument');let n;return Number.isInteger(r)&&Math.abs(r)>2**32?n=D2(String(r)):typeof r=="bigint"?(n=String(r),(r>2n**32n||r<-(2n**32n))&&(n=D2(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);N2.exports={AbortError:om,aggregateTwoErrors:k2(bO),hideStackFrames:k2,codes:Sh}});var Ta=oe((CF,F2)=>{"use strict";l();var{ArrayIsArray:cm,ArrayPrototypeIncludes:M2,ArrayPrototypeJoin:K2,ArrayPrototypeMap:xO,NumberIsInteger:am,NumberIsNaN:EO,NumberMAX_SAFE_INTEGER:vO,NumberMIN_SAFE_INTEGER:SO,NumberParseInt:AO,ObjectPrototypeHasOwnProperty:TO,RegExpPrototypeExec:$2,String:_O,StringPrototypeToUpperCase:IO,StringPrototypeTrim:BO}=it(),{hideStackFrames:nn,codes:{ERR_SOCKET_BAD_PORT:RO,ERR_INVALID_ARG_TYPE:Xt,ERR_INVALID_ARG_VALUE:Aa,ERR_OUT_OF_RANGE:cc,ERR_UNKNOWN_SIGNAL:C2}}=ir(),{normalizeEncoding:UO}=Jt(),{isAsyncFunction:OO,isArrayBufferView:DO}=Jt().types,L2={};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($2(CO,t)===null)throw new Aa(e,t,LO);t=AO(t,8)}return H2(t,e),t}var MO=nn((t,e,r=SO,n=vO)=>{if(typeof t!="number")throw new Xt(e,"number",t);if(!am(t))throw new cc(e,"an integer",t);if(t<r||t>n)throw new cc(e,`>= ${r} && <= ${n}`,t)}),KO=nn((t,e,r=-2147483648,n=2147483647)=>{if(typeof t!="number")throw new Xt(e,"number",t);if(!am(t))throw new cc(e,"an integer",t);if(t<r||t>n)throw new cc(e,`>= ${r} && <= ${n}`,t)}),H2=nn((t,e,r=!1)=>{if(typeof t!="number")throw new Xt(e,"number",t);if(!am(t))throw new cc(e,"an integer",t);let n=r?1:0,i=4294967295;if(t<n||t>i)throw new cc(e,`>= ${n} && <= ${i}`,t)});function um(t,e){if(typeof t!="string")throw new Xt(e,"string",t)}function $O(t,e,r=void 0,n){if(typeof t!="number")throw new Xt(e,"number",t);if(r!=null&&t<r||n!=null&&t>n||(r!=null||n!=null)&&EO(t))throw new cc(e,`${r!=null?`>= ${r}`:""}${r!=null&&n!=null?" && ":""}${n!=null?`<= ${n}`:""}`,t)}var HO=nn((t,e,r)=>{if(!M2(r,t)){let i="must be one of: "+K2(xO(r,o=>typeof o=="string"?`'${o}'`:_O(o)),", ");throw new Aa(e,t,i)}});function V2(t,e){if(typeof t!="boolean")throw new Xt(e,"boolean",t)}function sm(t,e,r){return t==null||!TO(t,e)?r:t[e]}var VO=nn((t,e,r=null)=>{let n=sm(r,"allowArray",!1),i=sm(r,"allowFunction",!1);if(!sm(r,"nullable",!1)&&t===null||!n&&cm(t)||typeof t!="object"&&(!i||typeof t!="function"))throw new Xt(e,"Object",t)}),qO=nn((t,e)=>{if(t!=null&&typeof t!="object"&&typeof t!="function")throw new Xt(e,"a dictionary",t)}),Ah=nn((t,e,r=0)=>{if(!cm(t))throw new Xt(e,"Array",t);if(t.length<r){let n=`must be longer than ${r}`;throw new Aa(e,t,n)}});function FO(t,e){Ah(t,e);for(let r=0;r<t.length;r++)um(t[r],`${e}[${r}]`)}function jO(t,e){Ah(t,e);for(let r=0;r<t.length;r++)V2(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 Xt(i,"AbortSignal",n);q2(n,i)}}function GO(t,e="signal"){if(um(t,e),L2[t]===void 0)throw L2[IO(t)]!==void 0?new C2(t+" (signals must use all capital letters)"):new C2(t)}var zO=nn((t,e="buffer")=>{if(!DO(t))throw new Xt(e,["Buffer","TypedArray","DataView"],t)});function YO(t,e){let r=UO(e),n=t.length;if(r==="hex"&&n%2!==0)throw new Aa("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 q2=nn((t,e)=>{if(t!==void 0&&(t===null||typeof t!="object"||!("aborted"in t)))throw new Xt(e,"AbortSignal",t)}),XO=nn((t,e)=>{if(typeof t!="function")throw new Xt(e,"Function",t)}),ZO=nn((t,e)=>{if(typeof t!="function"||OO(t))throw new Xt(e,"Function",t)}),QO=nn((t,e)=>{if(t!==void 0)throw new Xt(e,"undefined",t)});function e5(t,e,r){if(!M2(r,t))throw new Xt(e,`('${K2(r,"|")}')`,t)}var t5=/^(?:<[^>]*>)(?:\s*;\s*[^;"\s]+(?:=(")?[^;"\s]*\1)?)*$/;function P2(t,e){if(typeof t>"u"||!$2(t5,t))throw new Aa(e,t,'must be an array or string of format "</styles.css>; rel=preload; as=style"')}function r5(t){if(typeof t=="string")return P2(t,"hints"),t;if(cm(t)){let e=t.length,r="";if(e===0)return r;for(let n=0;n<e;n++){let i=t[n];P2(i,"hints"),r+=i,n!==e-1&&(r+=", ")}return r}throw new Aa("hints",t,'must be an array or string of format "</styles.css>; rel=preload; as=style"')}F2.exports={isInt32:kO,isUint32:NO,parseFileMode:PO,validateArray:Ah,validateStringArray:FO,validateBooleanArray:jO,validateAbortSignalArray:WO,validateBoolean:V2,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:um,validateUint32:H2,validateUndefined:QO,validateUnion:e5,validateAbortSignal:q2,validateLinkHeaderValue:r5}});var ii=oe((PF,oS)=>{"use strict";l();var{SymbolAsyncIterator:j2,SymbolIterator:W2,SymbolFor:ac}=it(),G2=ac("nodejs.stream.destroyed"),z2=ac("nodejs.stream.errored"),dm=ac("nodejs.stream.readable"),fm=ac("nodejs.stream.writable"),Y2=ac("nodejs.stream.disturbed"),n5=ac("nodejs.webstream.isClosedPromise"),i5=ac("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 ni(t){return t&&(t._readableState||t._writableState||typeof t.write=="function"&&typeof t.on=="function"||typeof t.pipe=="function"&&typeof t.on=="function")}function J2(t){return!!(t&&!ni(t)&&typeof t.pipeThrough=="function"&&typeof t.getReader=="function"&&typeof t.cancel=="function")}function X2(t){return!!(t&&!ni(t)&&typeof t.getWriter=="function"&&typeof t.abort=="function")}function Z2(t){return!!(t&&!ni(t)&&typeof t.readable=="object"&&typeof t.writable=="object")}function s5(t){return J2(t)||X2(t)||Z2(t)}function c5(t,e){return t==null?!1:e===!0?typeof t[j2]=="function":e===!1?typeof t[W2]=="function":typeof t[j2]=="function"||typeof t[W2]=="function"}function Ih(t){if(!ni(t))return null;let e=t._writableState,r=t._readableState,n=e||r;return!!(t.destroyed||t[G2]||n!=null&&n.destroyed)}function Q2(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 eS(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 tS(t){return t&&t[dm]!=null?t[dm]:typeof t?.readable!="boolean"?null:Ih(t)?!1:Th(t)&&t.readable&&!eS(t)}function rS(t){return t&&t[fm]!=null?t[fm]:typeof t?.writable!="boolean"?null:Ih(t)?!1:_h(t)&&t.writable&&!Q2(t)}function d5(t,e){return ni(t)?Ih(t)?!0:!(e?.readable!==!1&&tS(t)||e?.writable!==!1&&rS(t)):null}function f5(t){var e,r;return ni(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 ni(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(!ni(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"&&nS(t)?t._closed:null}function nS(t){return typeof t._closed=="boolean"&&typeof t._defaultKeepAlive=="boolean"&&typeof t._removedConnection=="boolean"&&typeof t._removedContLen=="boolean"}function iS(t){return typeof t._sent100=="boolean"&&nS(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(!ni(t))return null;let e=t._writableState,r=t._readableState,n=e||r;return!n&&iS(t)||!!(n&&n.autoDestroy&&n.emitClose&&n.closed===!1)}function g5(t){var e;return!!(t&&((e=t[Y2])!==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[z2])!==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))}oS.exports={isDestroyed:Ih,kIsDestroyed:G2,isDisturbed:g5,kIsDisturbed:Y2,isErrored:m5,kIsErrored:z2,isReadable:tS,kIsReadable:dm,kIsClosedPromise:n5,kControllerErrorFunction:i5,kIsWritable:fm,isClosed:h5,isDuplexNodeStream:o5,isFinished:d5,isIterable:c5,isReadableNodeStream:Th,isReadableStream:J2,isReadableEnded:u5,isReadableFinished:eS,isReadableErrored:l5,isNodeStream:ni,isWebStream:s5,isWritable:rS,isWritableNodeStream:_h,isWritableStream:X2,isWritableEnded:Q2,isWritableFinished:a5,isWritableErrored:f5,isServerRequest:p5,isServerResponse:iS,willEmitClose:y5,isTransformStream:Z2}});var Ji=oe((KF,gm)=>{l();var Go=Si(),{AbortError:pS,codes:w5}=ir(),{ERR_INVALID_ARG_TYPE:b5,ERR_STREAM_PREMATURE_CLOSE:sS}=w5,{kEmptyObject:hm,once:pm}=Jt(),{validateAbortSignal:x5,validateFunction:E5,validateObject:v5,validateBoolean:S5}=Ta(),{Promise:A5,PromisePrototypeThen:T5,SymbolDispose:yS}=it(),{isClosed:_5,isReadable:cS,isReadableNodeStream:lm,isReadableStream:I5,isReadableFinished:aS,isReadableErrored:uS,isWritable:dS,isWritableNodeStream:fS,isWritableStream:B5,isWritableFinished:lS,isWritableErrored:hS,isNodeStream:R5,willEmitClose:U5,kIsClosedPromise:O5}=ii(),_a;function D5(t){return t.setHeader&&typeof t.abort=="function"}var ym=()=>{};function gS(t,e,r){var n,i;if(arguments.length===2?(r=e,e=hm):e==null?e=hm:v5(e,"options"),E5(r,"callback"),x5(e.signal,"options.signal"),r=pm(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:lm(t),s=(i=e.writable)!==null&&i!==void 0?i:fS(t),c=t._writableState,a=t._readableState,u=()=>{t.writable||h()},d=U5(t)&&lm(t)===o&&fS(t)===s,f=lS(t,!1),h=()=>{f=!0,t.destroyed&&(d=!1),!(d&&(!t.readable||o))&&(!o||p)&&r.call(t)},p=aS(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=_5(t),S=()=>{x=!0;let T=hS(t)||uS(t);if(T&&typeof T!="boolean")return r.call(t,T);if(o&&!p&&lm(t,!0)&&!aS(t,!1))return r.call(t,new sS);if(s&&!f&&!lS(t,!1))return r.call(t,new sS);r.call(t)},I=()=>{x=!0;let T=hS(t)||uS(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",g),t.on("finish",h),e.error!==!1&&t.on("error",y),t.on("close",S),x?Go.nextTick(S):c!=null&&c.errorEmitted||a!=null&&a.errorEmitted?d||Go.nextTick(I):(!o&&(!d||cS(t))&&(f||dS(t)===!1)||!s&&(!d||dS(t))&&(p||cS(t)===!1)||a&&t.req&&t.aborted)&&Go.nextTick(I);let O=()=>{r=ym,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 pS(void 0,{cause:e.signal.reason}))};if(e.signal.aborted)Go.nextTick(T);else{_a=_a||Jt().addAbortListener;let M=_a(e.signal,T),q=r;r=pm((...j)=>{M[yS](),q.apply(t,j)})}}return O}function k5(t,e,r){let n=!1,i=ym;if(e.signal)if(i=()=>{n=!0,r.call(t,new pS(void 0,{cause:e.signal.reason}))},e.signal.aborted)Go.nextTick(i);else{_a=_a||Jt().addAbortListener;let s=_a(e.signal,i),c=r;r=pm((...a)=>{s[yS](),c.apply(t,a)})}let o=(...s)=>{n||Go.nextTick(()=>r.apply(t,s))};return T5(t[O5].promise,o,o),ym}function N5(t,e){var r;let n=!1;return e===null&&(e=hm),(r=e)!==null&&r!==void 0&&r.cleanup&&(S5(e.cleanup,"cleanup"),n=e.cleanup),new A5((i,o)=>{let s=gS(t,e,c=>{n&&s(),c?o(c):i()})})}gm.exports=gS;gm.exports.finished=N5});var uc=oe((HF,AS)=>{"use strict";l();var oi=Si(),{aggregateTwoErrors:C5,codes:{ERR_MULTIPLE_CALLBACK:L5},AbortError:P5}=ir(),{Symbol:bS}=it(),{kIsDestroyed:M5,isDestroyed:K5,isFinished:$5,isServerRequest:H5}=ii(),xS=bS("kDestroy"),mm=bS("kConstruct");function ES(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):(ES(t,n,r),n&&(n.destroyed=!0),r&&(r.destroyed=!0),i.constructed?mS(this,t,e):this.once(xS,function(o){mS(this,C5(o,t),e)}),this)}function mS(t,e,r){let n=!1;function i(o){if(n)return;n=!0;let s=t._readableState,c=t._writableState;ES(o,c,s),c&&(c.closed=!0),s&&(s.closed=!0),typeof r=="function"&&r(o),o?oi.nextTick(q5,t,o):oi.nextTick(vS,t)}try{t._destroy(e||null,i)}catch(o){i(o)}}function q5(t,e){wm(t,e),vS(t)}function vS(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 wm(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 bm(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?oi.nextTick(wm,t,e):wm(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(mm,e),!(t.listenerCount(mm)>1)&&oi.nextTick(W5,t)}function W5(t){let e=!1;function r(n){if(e){bm(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(xS,n):n?bm(t,n,!0):oi.nextTick(G5,t)}try{t._construct(n=>{oi.nextTick(r,n)})}catch(n){oi.nextTick(r,n)}}function G5(t){t.emit(mm)}function wS(t){return t?.setHeader&&typeof t.abort=="function"}function SS(t){t.emit("close")}function z5(t,e){t.emit("error",e),oi.nextTick(SS,t)}function Y5(t,e){!t||K5(t)||(!e&&!$5(t)&&(e=new P5),H5(t)?(t.socket=null,t.destroy(e)):wS(t)?t.abort():wS(t.req)?t.req.abort():typeof t.destroy=="function"?t.destroy(e):typeof t.close=="function"?t.close():e?oi.nextTick(z5,t,e):oi.nextTick(SS,t),t.destroyed||(t[M5]=!0))}AS.exports={construct:j5,destroyer:Y5,destroy:V5,undestroy:F5,errorOrDestroy:bm}});var Uh=oe((qF,_S)=>{"use strict";l();var{ArrayIsArray:J5,ObjectSetPrototypeOf:TS}=it(),{EventEmitter:Bh}=la();function Rh(t){Bh.call(this,t)}TS(Rh.prototype,Bh.prototype);TS(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)}xm(r,"error",a),xm(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 xm(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]]}_S.exports={Stream:Rh,prependListener:xm}});var Rd=oe((jF,Oh)=>{"use strict";l();var{SymbolDispose:X5}=it(),{AbortError:IS,codes:Z5}=ir(),{isNodeStream:BS,isWebStream:Q5,kControllerErrorFunction:e3}=ii(),t3=Ji(),{ERR_INVALID_ARG_TYPE:RS}=Z5,Em,r3=(t,e)=>{if(typeof t!="object"||!("aborted"in t))throw new RS(e,"AbortSignal",t)};Oh.exports.addAbortSignal=function(e,r){if(r3(e,"signal"),!BS(r)&&!Q5(r))throw new RS("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=BS(e)?()=>{e.destroy(new IS(void 0,{cause:t.reason}))}:()=>{e[e3](new IS(void 0,{cause:t.reason}))};if(t.aborted)r();else{Em=Em||Jt().addAbortListener;let n=Em(t,r);t3(e,n[X5])}return e}});var DS=oe((zF,OS)=>{"use strict";l();var{StringPrototypeSlice:US,SymbolIterator:n3,TypedArrayPrototypeSet:Dh,Uint8Array:i3}=it(),{Buffer:vm}=_r(),{inspect:o3}=Jt();OS.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 vm.alloc(0);let r=vm.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+=US(o,0,e),this.head=n,n.data=US(o,e));break}++i}while((n=n.next)!==null);return this.length-=i,r}_getBuffer(e){let r=vm.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 Ud=oe((JF,LS)=>{"use strict";l();var{MathFloor:s3,NumberIsInteger:c3}=it(),{validateInteger:a3}=Ta(),{ERR_INVALID_ARG_VALUE:u3}=ir().codes,kS=16*1024,NS=16;function d3(t,e,r){return t.highWaterMark!=null?t.highWaterMark:e?t[r]:null}function CS(t){return t?NS:kS}function f3(t,e){a3(e,"value",0),t?NS=e:kS=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 CS(t.objectMode)}LS.exports={getHighWaterMark:l3,getDefaultHighWaterMark:CS,setDefaultHighWaterMark:f3}});var KS=oe((Sm,MS)=>{l();var kh=_r(),si=kh.Buffer;function PS(t,e){for(var r in t)e[r]=t[r]}si.from&&si.alloc&&si.allocUnsafe&&si.allocUnsafeSlow?MS.exports=kh:(PS(kh,Sm),Sm.Buffer=dc);function dc(t,e,r){return si(t,e,r)}dc.prototype=Object.create(si.prototype);PS(si,dc);dc.from=function(t,e,r){if(typeof t=="number")throw new TypeError("Argument must not be a number");return si(t,e,r)};dc.alloc=function(t,e,r){if(typeof t!="number")throw new TypeError("Argument must be a number");var n=si(t);return e!==void 0?typeof r=="string"?n.fill(e,r):n.fill(e):n.fill(0),n};dc.allocUnsafe=function(t){if(typeof t!="number")throw new TypeError("Argument must be a number");return si(t)};dc.allocUnsafeSlow=function(t){if(typeof t!="number")throw new TypeError("Argument must be a number");return kh.SlowBuffer(t)}});var VS=oe(HS=>{"use strict";l();var Tm=KS().Buffer,$S=Tm.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"&&(Tm.isEncoding===$S||!$S(t)))throw new Error("Unknown encoding: "+t);return e||t}HS.StringDecoder=Od;function Od(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=Tm.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=b3;Od.prototype.text=w3;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 Am(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=Am(e[n]);return i>=0?(i>0&&(t.lastNeed=i-1),i):--n<r||i===-2?0:(i=Am(e[n]),i>=0?(i>0&&(t.lastNeed=i-2),i):--n<r||i===-2?0:(i=Am(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 _m=oe((tj,WS)=>{"use strict";l();var qS=Si(),{PromisePrototypeThen:_3,SymbolAsyncIterator:FS,SymbolIterator:jS}=it(),{Buffer:I3}=_r(),{ERR_INVALID_ARG_TYPE:B3,ERR_STREAM_NULL_VALUES:R3}=ir().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[FS])i=!0,n=e[FS]();else if(e&&e[jS])i=!1,n=e[jS]();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),()=>qS.nextTick(d,u),f=>qS.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}WS.exports=U3});var kd=oe((nj,dA)=>{l();var _n=Si(),{ArrayPrototypeIndexOf:O3,NumberIsInteger:D3,NumberIsNaN:k3,NumberParseInt:N3,ObjectDefineProperties:Nm,ObjectKeys:C3,ObjectSetPrototypeOf:YS,Promise:JS,SafeSet:L3,SymbolAsyncDispose:P3,SymbolAsyncIterator:M3,Symbol:K3}=it();dA.exports=me;me.ReadableState=Ph;var{EventEmitter:$3}=la(),{Stream:zo,prependListener:H3}=Uh(),{Buffer:Im}=_r(),{addAbortSignal:V3}=Rd(),XS=Ji(),Se=Jt().debuglog("stream",t=>{Se=t}),q3=DS(),Ra=uc(),{getHighWaterMark:F3,getDefaultHighWaterMark:j3}=Ud(),{aggregateTwoErrors:GS,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}=ir(),{validateObject:Z3}=Ta(),fc=K3("kPaused"),{StringDecoder:ZS}=VS(),Q3=_m();YS(me.prototype,zo.prototype);YS(me,zo);var Bm=()=>{},{errorOrDestroy:Ia}=Ra,Ba=1,eD=2,QS=4,Dd=8,eA=16,Nh=32,Ch=64,tA=128,tD=256,rD=512,nD=1024,Dm=2048,km=4096,iD=8192,oD=16384,sD=32768,rA=65536,cD=1<<17,aD=1<<18;function At(t){return{enumerable:!1,get(){return(this.state&t)!==0},set(e){e?this.state|=t:this.state&=~t}}}Nm(Ph.prototype,{objectMode:At(Ba),ended:At(eD),endEmitted:At(QS),reading:At(Dd),constructed:At(eA),sync:At(Nh),needReadable:At(Ch),emittedReadable:At(tA),readableListening:At(tD),resumeScheduled:At(rD),errorEmitted:At(nD),emitClose:At(Dm),autoDestroy:At(km),destroyed:At(iD),closed:At(oD),closeEmitted:At(sD),multiAwaitDrain:At(rA),readingMore:At(cD),dataEmitted:At(aD)});function Ph(t,e,r){typeof r!="boolean"&&(r=e instanceof ci()),this.state=Dm|km|eA|Nh,t&&t.objectMode&&(this.state|=Ba),r&&t&&t.readableObjectMode&&(this.state|=Ba),this.highWaterMark=t?F3(this,t,"readableHighWaterMark",r):j3(!1),this.buffer=new q3,this.length=0,this.pipes=[],this.flowing=null,this[fc]=null,t&&t.emitClose===!1&&(this.state&=~Dm),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 ZS(t.encoding),this.encoding=t.encoding)}function me(t){if(!(this instanceof me))return new me(t);let e=this instanceof ci();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)),zo.call(this,t),Ra.construct(this,()=>{this._readableState.needReadable&&Lh(this,this._readableState)})}me.prototype.destroy=Ra.destroy;me.prototype._undestroy=Ra.undestroy;me.prototype._destroy=function(t,e){e(t)};me.prototype[$3.captureRejectionSymbol]=function(t){this.destroy(t)};me.prototype[P3]=function(){let t;return this.destroyed||(t=this.readableEnded?null:new X3,this.destroy(t)),new JS((e,r)=>XS(this,n=>n&&n!==t?r(n):e(null)))};me.prototype.push=function(t,e){return nA(this,t,e,!1)};me.prototype.unshift=function(t,e){return nA(this,t,e,!0)};function nA(t,e,r,n){Se("readableAddChunk",e);let i=t._readableState,o;if(i.state&Ba||(typeof e=="string"?(r=r||i.defaultEncoding,i.encoding!==r&&(n&&i.encoding?e=Im.from(e,r).toString(i.encoding):(e=Im.from(e,r),r=""))):e instanceof Im?r="":zo._isUint8Array(e)?(e=zo._uint8ArrayToBuffer(e),r=""):e!=null&&(o=new W3("chunk",["string","Buffer","Uint8Array"],e))),o)Ia(t,o);else if(e===null)i.state&=~Dd,fD(t,i);else if(i.state&Ba||e&&e.length>0)if(n)if(i.state&QS)Ia(t,new J3);else{if(i.destroyed||i.errored)return!1;Rm(t,i,e,!0)}else if(i.ended)Ia(t,new Y3);else{if(i.destroyed||i.errored)return!1;i.state&=~Dd,i.decoder&&!r?(e=i.decoder.write(e),i.objectMode||e.length!==0?Rm(t,i,e,!1):Lh(t,i)):Rm(t,i,e,!1)}else n||(i.state&=~Dd,Lh(t,i));return!i.ended&&(i.length<i.highWaterMark||i.length===0)}function Rm(t,e,r,n){e.flowing&&e.length===0&&!e.sync&&t.listenerCount("data")>0?(e.state&rA?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)}me.prototype.isPaused=function(){let t=this._readableState;return t[fc]===!0||t.flowing===!1};me.prototype.setEncoding=function(t){let e=new ZS(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 zS(t,e){return t<=0||e.length===0&&e.ended?0:e.state&Ba?1:k3(t)?e.flowing&&e.length?e.buffer.first().length:e.length:t<=e.length?t:e.ended?e.length:0}me.prototype.read=function(t){Se("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&=~tA),t===0&&e.needReadable&&((e.highWaterMark!==0?e.length>=e.highWaterMark:e.length>0)||e.ended))return Se("read: emitReadable",e.length,e.ended),e.length===0&&e.ended?Um(this):Mh(this),null;if(t=zS(t,e),t===0&&e.ended)return e.length===0&&Um(this),null;let n=(e.state&Ch)!==0;if(Se("need readable",n),(e.length===0||e.length-t<e.highWaterMark)&&(n=!0,Se("length less than watermark",n)),e.ended||e.reading||e.destroyed||e.errored||!e.constructed)n=!1,Se("reading, ended or constructing",n);else if(n){Se("do read"),e.state|=Dd|Nh,e.length===0&&(e.state|=Ch);try{this._read(e.highWaterMark)}catch(o){Ia(this,o)}e.state&=~Nh,e.reading||(t=zS(r,e))}let i;return t>0?i=aA(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&&Um(this)),i!==null&&!e.errorEmitted&&!e.closeEmitted&&(e.dataEmitted=!0,this.emit("data",i)),i};function fD(t,e){if(Se("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,iA(t))}}function Mh(t){let e=t._readableState;Se("emitReadable",e.needReadable,e.emittedReadable),e.needReadable=!1,e.emittedReadable||(Se("emitReadable",e.flowing),e.emittedReadable=!0,_n.nextTick(iA,t))}function iA(t){let e=t._readableState;Se("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,sA(t)}function Lh(t,e){!e.readingMore&&e.constructed&&(e.readingMore=!0,_n.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(Se("maybeReadMore read 0"),t.read(0),r===e.length)break}e.readingMore=!1}me.prototype._read=function(t){throw new G3("_read()")};me.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),Se("pipe count=%d opts=%j",n.pipes.length,e);let o=(!e||e.end!==!1)&&t!==_n.stdout&&t!==_n.stderr?c:x;n.endEmitted?_n.nextTick(o):r.once("end",o),t.on("unpipe",s);function s(S,I){Se("onunpipe"),S===r&&I&&I.hasUnpiped===!1&&(I.hasUnpiped=!0,d())}function c(){Se("onend"),t.end()}let a,u=!1;function d(){Se("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?(Se("false write response, pause",0),n.awaitDrainWriters=t,n.multiAwaitDrain=!1):n.pipes.length>1&&n.pipes.includes(t)&&(Se("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){Se("ondata");let I=t.write(S);Se("dest.write",I),I===!1&&f()}function p(S){if(Se("onerror",S),x(),t.removeListener("error",p),t.listenerCount("error")===0){let I=t._writableState||t._readableState;I&&!I.errorEmitted?Ia(t,S):t.emit("error",S)}}H3(t,"error",p);function g(){t.removeListener("finish",y),x()}t.once("close",g);function y(){Se("onfinish"),t.removeListener("close",g),x()}t.once("finish",y);function x(){Se("unpipe"),r.unpipe(t)}return t.emit("pipe",r),t.writableNeedDrain===!0?f():n.flowing||(Se("pipe resume"),r.resume()),t};function hD(t,e){return function(){let n=t._readableState;n.awaitDrainWriters===e?(Se("pipeOnDrain",1),n.awaitDrainWriters=null):n.multiAwaitDrain&&(Se("pipeOnDrain",n.awaitDrainWriters.size),n.awaitDrainWriters.delete(e)),(!n.awaitDrainWriters||n.awaitDrainWriters.size===0)&&t.listenerCount("data")&&t.resume()}}me.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)};me.prototype.on=function(t,e){let r=zo.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,Se("on readable",n.length,n.reading),n.length?Mh(this):n.reading||_n.nextTick(pD,this)),r};me.prototype.addListener=me.prototype.on;me.prototype.removeListener=function(t,e){let r=zo.prototype.removeListener.call(this,t,e);return t==="readable"&&_n.nextTick(oA,this),r};me.prototype.off=me.prototype.removeListener;me.prototype.removeAllListeners=function(t){let e=zo.prototype.removeAllListeners.apply(this,arguments);return(t==="readable"||t===void 0)&&_n.nextTick(oA,this),e};function oA(t){let e=t._readableState;e.readableListening=t.listenerCount("readable")>0,e.resumeScheduled&&e[fc]===!1?e.flowing=!0:t.listenerCount("data")>0?t.resume():e.readableListening||(e.flowing=null)}function pD(t){Se("readable nexttick read 0"),t.read(0)}me.prototype.resume=function(){let t=this._readableState;return t.flowing||(Se("resume"),t.flowing=!t.readableListening,yD(this,t)),t[fc]=!1,this};function yD(t,e){e.resumeScheduled||(e.resumeScheduled=!0,_n.nextTick(gD,t,e))}function gD(t,e){Se("resume",e.reading),e.reading||t.read(0),e.resumeScheduled=!1,t.emit("resume"),sA(t),e.flowing&&!e.reading&&t.read(0)}me.prototype.pause=function(){return Se("call pause flowing=%j",this._readableState.flowing),this._readableState.flowing!==!1&&(Se("pause"),this._readableState.flowing=!1,this.emit("pause")),this._readableState[fc]=!0,this};function sA(t){let e=t._readableState;for(Se("flow",e.flowing);e.flowing&&t.read()!==null;);}me.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=>{Ia(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};me.prototype[M3]=function(){return cA(this)};me.prototype.iterator=function(t){return t!==void 0&&Z3(t,"options"),cA(this,t)};function cA(t,e){typeof t.read!="function"&&(t=me.wrap(t,{objectMode:!0}));let r=mD(t,e);return r.stream=t,r}async function*mD(t,e){let r=Bm;function n(s){this===t?(r(),r=Bm):r=s}t.on("readable",n);let i,o=XS(t,{writable:!1},s=>{i=s?GS(i,s):null,r(),r=Bm});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 JS(n)}}}catch(s){throw i=GS(i,s),i}finally{(i||e?.destroyOnReturn!==!1)&&(i===void 0||t._readableState.autoDestroy)?Ra.destroyer(t,null):(t.off("readable",n),o())}}Nm(me.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}}});Nm(Ph.prototype,{pipesCount:{__proto__:null,get(){return this.pipes.length}},paused:{__proto__:null,get(){return this[fc]!==!1},set(t){this[fc]=!!t}}});me._fromList=aA;function aA(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 Um(t){let e=t._readableState;Se("endReadable",e.endEmitted),e.endEmitted||(e.ended=!0,_n.nextTick(wD,e,t))}function wD(t,e){if(Se("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)_n.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()}me.from=function(t,e){return Q3(me,t,e)};var Om;function uA(){return Om===void 0&&(Om={}),Om}me.fromWeb=function(t,e){return uA().newStreamReadableFromReadableStream(t,e)};me.toWeb=function(t,e){return uA().newReadableStreamFromStreamReadable(t,e)};me.wrap=function(t,e){var r,n;return new me({objectMode:(r=(n=t.readableObjectMode)!==null&&n!==void 0?n:t.objectMode)!==null&&r!==void 0?r:!0,...e,destroy(i,o){Ra.destroyer(t,i),o(i)}}).wrap(t)}});var qh=oe((oj,vA)=>{l();var lc=Si(),{ArrayPrototypeSlice:hA,Error:xD,FunctionPrototypeSymbolHasInstance:pA,ObjectDefineProperty:yA,ObjectDefineProperties:ED,ObjectSetPrototypeOf:gA,StringPrototypeToLowerCase:vD,Symbol:SD,SymbolHasInstance:AD}=it();vA.exports=ot;ot.WritableState=Ld;var{EventEmitter:TD}=la(),Nd=Uh().Stream,{Buffer:Kh}=_r(),Vh=uc(),{addAbortSignal:_D}=Rd(),{getHighWaterMark:ID,getDefaultHighWaterMark:BD}=Ud(),{ERR_INVALID_ARG_TYPE:RD,ERR_METHOD_NOT_IMPLEMENTED:UD,ERR_MULTIPLE_CALLBACK:mA,ERR_STREAM_CANNOT_PIPE:OD,ERR_STREAM_DESTROYED:Cd,ERR_STREAM_ALREADY_FINISHED:DD,ERR_STREAM_NULL_VALUES:kD,ERR_STREAM_WRITE_AFTER_END:ND,ERR_UNKNOWN_ENCODING:wA}=ir().codes,{errorOrDestroy:Ua}=Vh;gA(ot.prototype,Nd.prototype);gA(ot,Nd);function Pm(){}var Oa=SD("kOnFinished");function Ld(t,e,r){typeof r!="boolean"&&(r=e instanceof ci()),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[Oa]=[]}function Hh(t){t.buffered=[],t.bufferedIndex=0,t.allBuffers=!0,t.allNoop=!0}Ld.prototype.getBuffer=function(){return hA(this.buffered,this.bufferedIndex)};yA(Ld.prototype,"bufferedRequestCount",{__proto__:null,get(){return this.buffered.length-this.bufferedIndex}});function ot(t){let e=this instanceof ci();if(!e&&!pA(ot,this))return new ot(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&&_D(t.signal,this)),Nd.call(this,t),Vh.construct(this,()=>{let r=this._writableState;r.writing||Km(this,r),$m(this,r)})}yA(ot,AD,{__proto__:null,value:function(t){return pA(this,t)?!0:this!==ot?!1:t&&t._writableState instanceof Ld}});ot.prototype.pipe=function(){Ua(this,new OD)};function bA(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 wA(r);typeof n!="function"&&(n=Pm)}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(Nd._isUint8Array(e))e=Nd._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 Cd("write")),o?(lc.nextTick(n,o),Ua(t,o,!0),o):(i.pendingcb++,CD(t,i,e,r,n))}ot.prototype.write=function(t,e,r){return bA(this,t,e,r)===!0};ot.prototype.cork=function(){this._writableState.corked++};ot.prototype.uncork=function(){let t=this._writableState;t.corked&&(t.corked--,t.writing||Km(this,t))};ot.prototype.setDefaultEncoding=function(e){if(typeof e=="string"&&(e=vD(e)),!Kh.isEncoding(e))throw new wA(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!==Pm&&(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 fA(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 lA(t,e,r,n){--e.pendingcb,n(r),Mm(e),Ua(t,r)}function LD(t,e){let r=t._writableState,n=r.sync,i=r.writecb;if(typeof i!="function"){Ua(t,new mA);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?lc.nextTick(lA,t,r,e,i):lA(t,r,e,i)):(r.buffered.length>r.bufferedIndex&&Km(t,r),n?r.afterWriteTickInfo!==null&&r.afterWriteTickInfo.cb===i?r.afterWriteTickInfo.count++:(r.afterWriteTickInfo={count:1,cb:i,stream:t,state:r},lc.nextTick(PD,r.afterWriteTickInfo)):xA(t,r,1,i))}function PD({stream:t,state:e,count:r,cb:n}){return e.afterWriteTickInfo=null,xA(t,e,r,n)}function xA(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&&Mm(e),$m(t,e)}function Mm(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[Oa].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"))}Hh(t)}function Km(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?Pm:u=>{for(let d=s;d<r.length;++d)r[d].callback(u)},a=e.allNoop&&s===0?r:hA(r,s);a.allBuffers=e.allBuffers,fA(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;fA(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}ot.prototype._write=function(t,e,r){if(this._writev)this._writev([{chunk:t,encoding:e}],r);else throw new UD("_write()")};ot.prototype._writev=null;ot.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=bA(this,t,e);o instanceof xD&&(i=o)}return n.corked&&(n.corked=1,this.uncork()),i||(!n.errored&&!n.ending?(n.ending=!0,$m(this,n,!0),n.ended=!0):n.finished?i=new DD("end"):n.destroyed&&(i=new Cd("end"))),typeof r=="function"&&(i||n.finished?lc.nextTick(r,i):n[Oa].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){Ua(t,i??mA());return}if(r=!0,e.pendingcb--,i){let o=e[Oa].splice(0);for(let s=0;s<o.length;s++)o[s](i);Ua(t,i,e.sync)}else $h(e)&&(e.prefinished=!0,t.emit("prefinish"),e.pendingcb++,lc.nextTick(Lm,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 $m(t,e,r){$h(e)&&(KD(t,e),e.pendingcb===0&&(r?(e.pendingcb++,lc.nextTick((n,i)=>{$h(i)?Lm(n,i):i.pendingcb--},t,e)):$h(e)&&(e.pendingcb++,Lm(t,e))))}function Lm(t,e){e.pendingcb--,e.finished=!0;let r=e[Oa].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(ot.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;ot.prototype.destroy=function(t,e){let r=this._writableState;return!r.destroyed&&(r.bufferedIndex<r.buffered.length||r[Oa].length)&&lc.nextTick(Mm,r),$D.call(this,t,e),this};ot.prototype._undestroy=Vh.undestroy;ot.prototype._destroy=function(t,e){e(t)};ot.prototype[TD.captureRejectionSymbol]=function(t){this.destroy(t)};var Cm;function EA(){return Cm===void 0&&(Cm={}),Cm}ot.fromWeb=function(t,e){return EA().newStreamWritableFromWritableStream(t,e)};ot.toWeb=function(t){return EA().newWritableStreamFromStreamWritable(t)}});var PA=oe((cj,LA)=>{l();var Hm=Si(),HD=_r(),{isReadable:VD,isWritable:qD,isIterable:SA,isNodeStream:FD,isReadableNodeStream:AA,isWritableNodeStream:TA,isDuplexNodeStream:jD,isReadableStream:_A,isWritableStream:IA}=ii(),BA=Ji(),{AbortError:NA,codes:{ERR_INVALID_ARG_TYPE:WD,ERR_INVALID_RETURN_VALUE:RA}}=ir(),{destroyer:ka}=uc(),GD=ci(),CA=kd(),zD=qh(),{createDeferredPromise:UA}=Jt(),OA=_m(),DA=globalThis.Blob||HD.Blob,YD=typeof DA<"u"?function(e){return e instanceof DA}:function(e){return!1},JD=globalThis.AbortController||Sa().AbortController,{FunctionPrototypeCall:kA}=it(),Yo=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)}};LA.exports=function t(e,r){if(jD(e))return e;if(AA(e))return Da({readable:e});if(TA(e))return Da({writable:e});if(FD(e))return Da({writable:!1,readable:!1});if(_A(e))return Da({readable:CA.fromWeb(e)});if(IA(e))return Da({writable:zD.fromWeb(e)});if(typeof e=="function"){let{value:i,write:o,final:s,destroy:c}=XD(e);if(SA(i))return OA(Yo,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 RA("nully","body",f)},f=>{ka(u,f)});return u=new Yo({objectMode:!0,readable:!1,write:o,final(f){s(async()=>{try{await d,Hm.nextTick(f,null)}catch(h){Hm.nextTick(f,h)}})},destroy:c})}throw new RA("Iterable, AsyncIterable or AsyncFunction",r,i)}if(YD(e))return t(e.arrayBuffer());if(SA(e))return OA(Yo,e,{objectMode:!0,writable:!1});if(_A(e?.readable)&&IA(e?.writable))return Yo.fromWeb(e);if(typeof e?.writable=="object"||typeof e?.readable=="object"){let i=e!=null&&e.readable?AA(e?.readable)?e?.readable:t(e.readable):void 0,o=e!=null&&e.writable?TA(e?.writable)?e?.writable:t(e.writable):void 0;return Da({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=>{ka(i,o)}),i=new Yo({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}=UA(),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(Hm.nextTick(u),a)return;if(i.aborted)throw new NA(void 0,{cause:i.reason});({promise:e,resolve:r}=UA()),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 Da(t){let e=t.readable&&typeof t.readable.read!="function"?CA.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 Yo({readableObjectMode:!!(e!=null&&e.readableObjectMode),writableObjectMode:!!(r!=null&&r.writableObjectMode),readable:n,writable:i}),i&&(BA(r,f=>{i=!1,f&&ka(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&&(BA(e,f=>{n=!1,f&&ka(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 NA),c=null,o=null,s=null,a===null?h(f):(a=h,ka(r,f),ka(e,f))},u}});var ci=oe((uj,$A)=>{"use strict";l();var{ObjectDefineProperties:ZD,ObjectGetOwnPropertyDescriptor:Xi,ObjectKeys:QD,ObjectSetPrototypeOf:MA}=it();$A.exports=In;var Fm=kd(),on=qh();MA(In.prototype,Fm.prototype);MA(In,Fm);{let t=QD(on.prototype);for(let e=0;e<t.length;e++){let r=t[e];In.prototype[r]||(In.prototype[r]=on.prototype[r])}}function In(t){if(!(this instanceof In))return new In(t);Fm.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(In.prototype,{writable:{__proto__:null,...Xi(on.prototype,"writable")},writableHighWaterMark:{__proto__:null,...Xi(on.prototype,"writableHighWaterMark")},writableObjectMode:{__proto__:null,...Xi(on.prototype,"writableObjectMode")},writableBuffer:{__proto__:null,...Xi(on.prototype,"writableBuffer")},writableLength:{__proto__:null,...Xi(on.prototype,"writableLength")},writableFinished:{__proto__:null,...Xi(on.prototype,"writableFinished")},writableCorked:{__proto__:null,...Xi(on.prototype,"writableCorked")},writableEnded:{__proto__:null,...Xi(on.prototype,"writableEnded")},writableNeedDrain:{__proto__:null,...Xi(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 Vm;function KA(){return Vm===void 0&&(Vm={}),Vm}In.fromWeb=function(t,e){return KA().newStreamDuplexFromReadableWritablePair(t,e)};In.toWeb=function(t){return KA().newReadableWritablePairFromDuplex(t)};var qm;In.from=function(t){return qm||(qm=PA()),qm(t,"body")}});var Gm=oe((fj,VA)=>{"use strict";l();var{ObjectSetPrototypeOf:HA,Symbol:ek}=it();VA.exports=Zi;var{ERR_METHOD_NOT_IMPLEMENTED:tk}=ir().codes,Wm=ci(),{getHighWaterMark:rk}=Ud();HA(Zi.prototype,Wm.prototype);HA(Zi,Wm);var Pd=ek("kCallback");function Zi(t){if(!(this instanceof Zi))return new Zi(t);let e=t?rk(this,t,"readableHighWaterMark",!0):null;e===0&&(t={...t,highWaterMark:null,readableHighWaterMark:e,writableHighWaterMark:t.writableHighWaterMark||0}),Wm.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",nk)}function jm(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!==jm&&jm.call(this)}Zi.prototype._final=jm;Zi.prototype._transform=function(t,e,r){throw new tk("_transform()")};Zi.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})};Zi.prototype._read=function(){if(this[Pd]){let t=this[Pd];this[Pd]=null,t()}}});var Ym=oe((hj,FA)=>{"use strict";l();var{ObjectSetPrototypeOf:qA}=it();FA.exports=Na;var zm=Gm();qA(Na.prototype,zm.prototype);qA(Na,zm);function Na(t){if(!(this instanceof Na))return new Na(t);zm.call(this,t)}Na.prototype._transform=function(t,e,r){r(null,t)}});var Gh=oe((yj,YA)=>{l();var Md=Si(),{ArrayIsArray:ik,Promise:ok,SymbolAsyncIterator:sk,SymbolDispose:ck}=it(),Wh=Ji(),{once:ak}=Jt(),uk=uc(),jA=ci(),{aggregateTwoErrors:dk,codes:{ERR_INVALID_ARG_TYPE:iw,ERR_INVALID_RETURN_VALUE:Jm,ERR_MISSING_ARGS:fk,ERR_STREAM_DESTROYED:lk,ERR_STREAM_PREMATURE_CLOSE:hk},AbortError:pk}=ir(),{validateFunction:yk,validateAbortSignal:gk}=Ta(),{isIterable:hc,isReadable:Xm,isReadableNodeStream:jh,isNodeStream:WA,isTransformStream:Ca,isWebStream:mk,isReadableStream:Zm,isReadableFinished:wk}=ii(),bk=globalThis.AbortController||Sa().AbortController,Qm,ew,tw;function GA(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 rw(t){if(hc(t))return t;if(jh(t))return Ek(t);throw new iw("val",["Readable","Iterable","AsyncIterable"],t)}async function*Ek(t){ew||(ew=kd()),yield*ew.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 nw(t,e,r,{end:n}){Ca(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 zA(t,ak(xk(t)))}function zA(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(){g(new pk)}tw=tw||Jt().addAbortListener;let a;o&&(a=tw(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[ck](),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(WA(O)){let $=function(Z){Z&&Z.name!=="AbortError"&&Z.code!=="ERR_STREAM_PREMATURE_CLOSE"&&p(Z)};var I=$;if(q){let{destroy:Z,cleanup:Q}=GA(O,T,M);f.push(Z),Xm(O)&&j&&s.push(Q)}O.on("error",$),Xm(O)&&j&&s.push(()=>{O.removeListener("error",$)})}if(A===0)if(typeof O=="function"){if(y=O({signal:i}),!hc(y))throw new Jm("Iterable, AsyncIterable or Stream","source",y)}else hc(O)||jh(O)||Ca(O)?y=O:y=jA.from(O);else if(typeof O=="function"){if(Ca(y)){var x;y=rw((x=y)===null||x===void 0?void 0:x.readable)}else y=rw(y);if(y=O(y,{signal:i}),T){if(!hc(y,!0))throw new Jm("AsyncIterable",`transform[${A-1}]`,y)}else{var S;Qm||(Qm=Ym());let $=new Qm({objectMode:!0}),Z=(S=y)===null||S===void 0?void 0:S.then;if(typeof Z=="function")h++,Z.call(y,_=>{d=_,_!=null&&$.write(_),q&&$.end(),Md.nextTick(p)},_=>{$.destroy(_),Md.nextTick(p,_)});else if(hc(y,!0))h++,Fh(y,$,p,{end:q});else if(Zm(y)||Ca(y)){let _=y.readable||y;h++,Fh(_,$,p,{end:q})}else throw new Jm("AsyncIterable or Promise","destination",y);y=$;let{destroy:Q,cleanup:G}=GA(y,!1,!0);f.push(Q),j&&s.push(G)}}else if(WA(O)){if(jh(y)){h+=2;let $=Sk(y,O,p,{end:q});Xm(O)&&j&&s.push($)}else if(Ca(y)||Zm(y)){let $=y.readable||y;h++,Fh($,O,p,{end:q})}else if(hc(y))h++,Fh(y,O,p,{end:q});else throw new iw("val",["Readable","Iterable","AsyncIterable","ReadableStream","TransformStream"],y);y=O}else if(mk(O)){if(jh(y))h++,nw(rw(y),O,p,{end:q});else if(Zm(y)||hc(y))h++,nw(y,O,p,{end:q});else if(Ca(y))h++,nw(y.readable,O,p,{end:q});else throw new iw("val",["Readable","Iterable","AsyncIterable","ReadableStream","TransformStream"],y);y=O}else y=jA.from(O)}return(i!=null&&i.aborted||o!=null&&o.aborted)&&Md.nextTick(c),y}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)?Md.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)}YA.exports={pipelineImpl:zA,pipeline:vk}});var sw=oe((mj,tT)=>{"use strict";l();var{pipeline:Ak}=Gh(),zh=ci(),{destroyer:Tk}=uc(),{isNodeStream:Yh,isReadable:JA,isWritable:XA,isWebStream:ow,isTransformStream:pc,isWritableStream:ZA,isReadableStream:QA}=ii(),{AbortError:_k,codes:{ERR_INVALID_ARG_VALUE:eT,ERR_MISSING_ARGS:Ik}}=ir(),Bk=Ji();tT.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])&&!ow(e[p]))){if(p<e.length-1&&!(JA(e[p])||QA(e[p])||pc(e[p])))throw new eT(`streams[${p}]`,r[p],"must be readable");if(p>0&&!(XA(e[p])||ZA(e[p])||pc(e[p])))throw new eT(`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=Ak(e,a),f=!!(XA(u)||ZA(u)||pc(u)),h=!!(JA(d)||QA(d)||pc(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(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(ow(u)){let y=(pc(u)?u.writable:u).getWriter();c._write=async function(x,S,I){try{await y.ready,y.write(x).catch(()=>{}),I()}catch(A){I(A)}},c._final=async function(x){try{await y.ready,y.close().catch(()=>{}),i=x}catch(S){x(S)}}}let p=pc(d)?d.readable:d;Bk(p,()=>{if(i){let g=i;i=null,g()}})}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(ow(d)){let g=(pc(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 _k),o=null,n=null,i=null,s===null?g(p):(s=g,Yh(d)&&Tk(d,p))},c}});var fT=oe((bj,uw)=>{"use strict";l();var Rk=globalThis.AbortController||Sa().AbortController,{codes:{ERR_INVALID_ARG_VALUE:Uk,ERR_INVALID_ARG_TYPE:Kd,ERR_MISSING_ARGS:Ok,ERR_OUT_OF_RANGE:Dk},AbortError:ai}=ir(),{validateAbortSignal:yc,validateInteger:rT,validateObject:gc}=Ta(),kk=it().Symbol("kWeak"),Nk=it().Symbol("kResistStopPropagation"),{finished:Ck}=Ji(),Lk=sw(),{addAbortSignalNoValidate:Pk}=Rd(),{isWritable:Mk,isNodeStream:Kk}=ii(),{deprecate:$k}=Jt(),{ArrayPrototypePush:Hk,Boolean:Vk,MathFloor:nT,Number:qk,NumberIsNaN:Fk,Promise:iT,PromiseReject:oT,PromiseResolve:jk,PromisePrototypeThen:sT,Symbol:aT}=it(),Jh=aT("kEmpty"),cT=aT("kEof");function Wk(t,e){if(e!=null&&gc(e,"options"),e?.signal!=null&&yc(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 Kd("fn",["Function","AsyncFunction"],t);e!=null&&gc(e,"options"),e?.signal!=null&&yc(e.signal,"options.signal");let r=1;e?.concurrency!=null&&(r=nT(e.concurrency));let n=r-1;return e?.highWaterMark!=null&&(n=nT(e.highWaterMark)),rT(r,"options.concurrency",1),rT(n,"options.highWaterMark",0),n+=r,(async function*(){let o=Jt().AbortSignalAny([e?.signal].filter(Vk)),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 ai;try{if(S=t(S,a),S===Jh)continue;S=jk(S)}catch(I){S=oT(I)}h+=1,sT(S,g,p),c.push(S),u&&(u(),u=null),!f&&(c.length>=n||h>=r)&&await new iT(I=>{d=I})}c.push(cT)}catch(S){let I=oT(S);sT(I,g,p),c.push(I)}finally{f=!0,u&&(u(),u=null)}}x();try{for(;;){for(;c.length>0;){let S=await c[0];if(S===cT)return;if(o.aborted)throw new ai;S!==Jh&&(yield S),c.shift(),y()}await new iT(S=>{u=S})}}finally{f=!0,d&&(d(),d=null)}}).call(this)}function Gk(t=void 0){return t!=null&&gc(t,"options"),t?.signal!=null&&yc(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 ai({cause:t.signal.reason});yield[r++,i]}}).call(this)}async function uT(t,e=void 0){for await(let r of aw.call(this,t,e))return!0;return!1}async function zk(t,e=void 0){if(typeof t!="function")throw new Kd("fn",["Function","AsyncFunction"],t);return!await uT.call(this,async(...r)=>!await t(...r),e)}async function Yk(t,e){for await(let r of aw.call(this,t,e))return r}async function Jk(t,e){if(typeof t!="function")throw new Kd("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 aw(t,e){if(typeof t!="function")throw new Kd("fn",["Function","AsyncFunction"],t);async function r(n,i){return await t(n,i)?n:Jh}return Xh.call(this,r,e)}var cw=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 Kd("reducer",["Function","AsyncFunction"],t);r!=null&&gc(r,"options"),r?.signal!=null&&yc(r.signal,"options.signal");let i=arguments.length>1;if(r!=null&&(n=r.signal)!==null&&n!==void 0&&n.aborted){let u=new ai(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 ai;i?e=await t(e,u,{signal:s}):(e=u,i=!0)}if(!c&&!i)throw new cw}finally{o.abort()}return e}async function Zk(t){t!=null&&gc(t,"options"),t?.signal!=null&&yc(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 ai(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 dT(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&&gc(e,"options"),e?.signal!=null&&yc(e.signal,"options.signal"),t=dT(t),(async function*(){var n;if(e!=null&&(n=e.signal)!==null&&n!==void 0&&n.aborted)throw new ai;for await(let o of this){var i;if(e!=null&&(i=e.signal)!==null&&i!==void 0&&i.aborted)throw new ai;t--<=0&&(yield o)}}).call(this)}function t4(t,e=void 0){return e!=null&&gc(e,"options"),e?.signal!=null&&yc(e.signal,"options.signal"),t=dT(t),(async function*(){var n;if(e!=null&&(n=e.signal)!==null&&n!==void 0&&n.aborted)throw new ai;for await(let o of this){var i;if(e!=null&&(i=e.signal)!==null&&i!==void 0&&i.aborted)throw new ai;if(t-- >0&&(yield o),t<=0)return}}).call(this)}uw.exports.streamReturningOperators={asIndexedPairs:$k(Gk,"readable.asIndexedPairs will be removed in a future version."),drop:e4,filter:aw,flatMap:Qk,map:Xh,take:t4,compose:Wk};uw.exports.promiseReturningOperators={every:zk,forEach:Jk,reduce:Xk,toArray:Zk,some:uT,find:Yk}});var dw=oe((Ej,lT)=>{"use strict";l();var{ArrayPrototypePop:r4,Promise:n4}=it(),{isIterable:i4,isNodeStream:o4,isWebStream:s4}=ii(),{pipelineImpl:c4}=Gh(),{finished:a4}=Ji();fw();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})})}lT.exports={finished:a4,pipeline:u4}});var fw=oe((Sj,ET)=>{l();var{Buffer:d4}=_r(),{ObjectDefineProperty:Qi,ObjectKeys:yT,ReflectApply:gT}=it(),{promisify:{custom:mT}}=Jt(),{streamReturningOperators:hT,promiseReturningOperators:pT}=fT(),{codes:{ERR_ILLEGAL_CONSTRUCTOR:wT}}=ir(),f4=sw(),{setDefaultHighWaterMark:l4,getDefaultHighWaterMark:h4}=Ud(),{pipeline:bT}=Gh(),{destroyer:p4}=uc(),xT=Ji(),lw=dw(),$d=ii(),We=ET.exports=Uh().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 yT(hT)){let r=function(...n){if(new.target)throw wT();return We.Readable.from(gT(e,this,n))};hw=r;let e=hT[t];Qi(r,"name",{__proto__:null,value:e.name}),Qi(r,"length",{__proto__:null,value:e.length}),Qi(We.Readable.prototype,t,{__proto__:null,value:r,enumerable:!1,configurable:!0,writable:!0})}var hw;for(let t of yT(pT)){let r=function(...i){if(new.target)throw wT();return gT(e,this,i)};hw=r;let e=pT[t];Qi(r,"name",{__proto__:null,value:e.name}),Qi(r,"length",{__proto__:null,value:e.length}),Qi(We.Readable.prototype,t,{__proto__:null,value:r,enumerable:!1,configurable:!0,writable:!0})}var hw;We.Writable=qh();We.Duplex=ci();We.Transform=Gm();We.PassThrough=Ym();We.pipeline=bT;var{addAbortSignal:y4}=Rd();We.addAbortSignal=y4;We.finished=xT;We.destroy=p4;We.compose=f4;We.setDefaultHighWaterMark=l4;We.getDefaultHighWaterMark=h4;Qi(We,"promises",{__proto__:null,configurable:!0,enumerable:!0,get(){return lw}});Qi(bT,mT,{__proto__:null,enumerable:!0,get(){return lw.pipeline}});Qi(xT,mT,{__proto__:null,enumerable:!0,get(){return lw.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 pw=oe((Tj,gt)=>{"use strict";l();var Tt=fw(),g4=dw(),m4=Tt.Readable.destroy;gt.exports=Tt.Readable;gt.exports._uint8ArrayToBuffer=Tt._uint8ArrayToBuffer;gt.exports._isUint8Array=Tt._isUint8Array;gt.exports.isDisturbed=Tt.isDisturbed;gt.exports.isErrored=Tt.isErrored;gt.exports.isReadable=Tt.isReadable;gt.exports.Readable=Tt.Readable;gt.exports.Writable=Tt.Writable;gt.exports.Duplex=Tt.Duplex;gt.exports.Transform=Tt.Transform;gt.exports.PassThrough=Tt.PassThrough;gt.exports.addAbortSignal=Tt.addAbortSignal;gt.exports.finished=Tt.finished;gt.exports.destroy=Tt.destroy;gt.exports.destroy=m4;gt.exports.pipeline=Tt.pipeline;gt.exports.compose=Tt.compose;Object.defineProperty(Tt,"promises",{configurable:!0,enumerable:!0,get(){return g4}});gt.exports.Stream=Tt.Stream;gt.exports.default=gt.exports});var q_=oe((Kp,V_)=>{l();(function(t,e){typeof Kp=="object"&&typeof V_<"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]"),he="[\\x0A]",Te="[\\x20]",De=r(r("%[EFef]"+te+"%"+te+te+"%"+te+te)+"|"+r("%[89A-Fa-f]"+te+"%"+te+te)+"|"+r("%"+te+te)),mt="[\\:\\/\\?\\#\\[\\]\\@]",Ae="[\\!\\$\\&\\'\\(\\)\\*\\+\\,\\;\\=]",tt=e(mt,Ae),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,Ae,"[\\:]"))+"*"),ys=r(r("25[0-5]")+"|"+r("2[0-4]"+K)+"|"+r("1"+K+K)+"|"+r("[1-9]"+K)+"|"+K),Ar=r(r("25[0-5]")+"|"+r("2[0-4]"+K)+"|"+r("1"+K+K)+"|"+r("0?[1-9]"+K)+"|0?0?"+K),Gr=r(Ar+"\\."+Ar+"\\."+Ar+"\\."+Ar),Ke=r(te+"{1,4}"),Tr=r(r(Ke+"\\:"+Ke)+"|"+Gr),zr=r(r(Ke+"\\:")+"{6}"+Tr),Mn=r("\\:\\:"+r(Ke+"\\:")+"{5}"+Tr),gs=r(r(Ke)+"?\\:\\:"+r(Ke+"\\:")+"{4}"+Tr),mi=r(r(r(Ke+"\\:")+"{0,1}"+Ke)+"?\\:\\:"+r(Ke+"\\:")+"{3}"+Tr),mu=r(r(r(Ke+"\\:")+"{0,2}"+Ke)+"?\\:\\:"+r(Ke+"\\:")+"{2}"+Tr),If=r(r(r(Ke+"\\:")+"{0,3}"+Ke)+"?\\:\\:"+Ke+"\\:"+Tr),Bf=r(r(r(Ke+"\\:")+"{0,4}"+Ke)+"?\\:\\:"+Tr),Bc=r(r(r(Ke+"\\:")+"{0,5}"+Ke)+"?\\:\\:"+Ke),Rc=r(r(r(Ke+"\\:")+"{0,6}"+Ke)+"?\\:\\:"),wi=r([zr,Mn,gs,mi,mu,If,Bf,Bc,Rc].join("|")),Uc=r(r(Ie+"|"+De)+"+"),cy=r(wi+"\\%25"+Uc),ms=r(wi+r("\\%25|\\%(?!"+te+"{2})")+Uc),aB=r("[vV]"+te+"+\\."+e(Ie,Ae,"[\\:]")+"+"),uB=r("\\["+r(ms+"|"+wi+"|"+aB)+"\\]"),cx=r(r(De+"|"+e(Ie,Ae))+"*"),wu=r(uB+"|"+Gr+"(?!"+cx+")|"+cx),bu=r(K+"*"),ax=r(r(Ne+"@")+"?"+wu+r("\\:"+bu)+"?"),xu=r(De+"|"+e(Ie,Ae,"[\\:\\@]")),dB=r(xu+"*"),ux=r(xu+"+"),fB=r(r(De+"|"+e(Ie,Ae,"[\\@]"))+"+"),bi=r(r("\\/"+dB)+"*"),Oc=r("\\/"+r(ux+bi)+"?"),ay=r(fB+bi),Rf=r(ux+bi),Dc="(?!"+xu+")",zL=r(bi+"|"+Oc+"|"+ay+"|"+Rf+"|"+Dc),kc=r(r(xu+"|"+e("[\\/\\?]",Xe))+"*"),Eu=r(r(xu+"|[\\/\\?]")+"*"),dx=r(r("\\/\\/"+ax+bi)+"|"+Oc+"|"+Rf+"|"+Dc),lB=r(rt+"\\:"+dx+r("\\?"+kc)+"?"+r("\\#"+Eu)+"?"),hB=r(r("\\/\\/"+ax+bi)+"|"+Oc+"|"+ay+"|"+Dc),pB=r(hB+r("\\?"+kc)+"?"+r("\\#"+Eu)+"?"),YL=r(lB+"|"+pB),JL=r(rt+"\\:"+dx+r("\\?"+kc)+"?"),XL="^("+rt+")\\:"+r(r("\\/\\/("+r("("+Ne+")@")+"?("+wu+")"+r("\\:("+bu+")")+"?)")+"?("+bi+"|"+Oc+"|"+Rf+"|"+Dc+")")+r("\\?("+kc+")")+"?"+r("\\#("+Eu+")")+"?$",ZL="^(){0}"+r(r("\\/\\/("+r("("+Ne+")@")+"?("+wu+")"+r("\\:("+bu+")")+"?)")+"?("+bi+"|"+Oc+"|"+ay+"|"+Dc+")")+r("\\?("+kc+")")+"?"+r("\\#("+Eu+")")+"?$",QL="^("+rt+")\\:"+r(r("\\/\\/("+r("("+Ne+")@")+"?("+wu+")"+r("\\:("+bu+")")+"?)")+"?("+bi+"|"+Oc+"|"+Rf+"|"+Dc+")")+r("\\?("+kc+")")+"?$",eP="^"+r("\\#("+Eu+")")+"?$",tP="^"+r("("+Ne+")@")+"?("+wu+")"+r("\\:("+bu+")")+"?$";return{NOT_SCHEME:new RegExp(e("[^]",v,K,"[\\+\\-\\.]"),"g"),NOT_USERINFO:new RegExp(e("[^\\%\\:]",Ie,Ae),"g"),NOT_HOST:new RegExp(e("[^\\%\\[\\]\\:]",Ie,Ae),"g"),NOT_PATH:new RegExp(e("[^\\%\\/\\:\\@]",Ie,Ae),"g"),NOT_PATH_NOSCHEME:new RegExp(e("[^\\%\\/\\@]",Ie,Ae),"g"),NOT_QUERY:new RegExp(e("[^\\%]",Ie,Ae,"[\\:\\@\\/\\?]",Xe),"g"),NOT_FRAGMENT:new RegExp(e("[^\\%]",Ie,Ae,"[\\:\\@\\/\\?]"),"g"),ESCAPE:new RegExp(e("[^]",Ie,Ae),"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("^\\[?("+wi+")"+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,he=void 0;try{for(var Te=v[Symbol.iterator](),De;!(H=(De=Te.next()).done)&&(K.push(De.value),!(k&&K.length===k));H=!0);}catch(mt){te=!0,he=mt}finally{try{!H&&Te.return&&Te.return()}finally{if(te)throw he}}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,I=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 _(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=_(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,he=I,Te=v.lastIndexOf(O);Te<0&&(Te=0);for(var De=0;De<Te;++De)v.charCodeAt(De)>=128&&G("not-basic"),k.push(v.charCodeAt(De));for(var mt=Te>0?Te+1:0;mt<K;){for(var Ae=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<=he?g:wt>=he+y?y:wt-he;if(Xe<Ie)break;var rt=p-Ie;tt>Z(h/rt)&&G("overflow"),tt*=rt}var Ne=k.length+1;he=R(H-Ae,Ne,Ae==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,he=I,Te=!0,De=!1,mt=void 0;try{for(var Ae=v[Symbol.iterator](),tt;!(Te=(tt=Ae.next()).done);Te=!0){var wt=tt.value;wt<128&&k.push(Q(wt))}}catch(ms){De=!0,mt=ms}finally{try{!Te&&Ae.return&&Ae.return()}finally{if(De)throw mt}}var Xe=k.length,Ie=Xe;for(Xe&&k.push(O);Ie<K;){var rt=h,Ne=!0,ys=!1,Ar=void 0;try{for(var Gr=v[Symbol.iterator](),Ke;!(Ne=(Ke=Gr.next()).done);Ne=!0){var Tr=Ke.value;Tr>=H&&Tr<rt&&(rt=Tr)}}catch(ms){ys=!0,Ar=ms}finally{try{!Ne&&Gr.return&&Gr.return()}finally{if(ys)throw Ar}}var zr=Ie+1;rt-H>Z((h-te)/zr)&&G("overflow"),te+=(rt-H)*zr,H=rt;var Mn=!0,gs=!1,mi=void 0;try{for(var mu=v[Symbol.iterator](),If;!(Mn=(If=mu.next()).done);Mn=!0){var Bf=If.value;if(Bf<H&&++te>h&&G("overflow"),Bf==H){for(var Bc=te,Rc=p;;Rc+=p){var wi=Rc<=he?g:Rc>=he+y?y:Rc-he;if(Bc<wi)break;var Uc=Bc-wi,cy=p-wi;k.push(Q(N(wi+Uc%cy,0))),Bc=Z(Uc/cy)}k.push(Q(N(Bc,0))),he=R(te,zr,Ie==Xe),te=0,++Ie}}}catch(ms){gs=!0,mi=ms}finally{try{!Mn&&mu.return&&mu.return()}finally{if(gs)throw mi}}++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 he=parseInt(B.substr(k+4,2),16),Te=parseInt(B.substr(k+7,2),16);v+=String.fromCharCode((H&15)<<12|(he&63)<<6|Te&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 he=H.toLowerCase().split("::").reverse(),Te=d(he,2),De=Te[0],mt=Te[1],Ae=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]=Ae[Ne]||tt[Ie+Ne]||"";wt&&(rt[Xe-1]=ce(rt[Xe-1],v));var ys=rt.reduce(function(zr,Mn,gs){if(!Mn||Mn==="0"){var mi=zr[zr.length-1];mi&&mi.index+mi.length===gs?mi.length++:zr.push({index:gs,length:1})}return zr},[]),Ar=ys.sort(function(zr,Mn){return Mn.length-zr.length})[0],Gr=void 0;if(Ar&&Ar.length>1){var Ke=rt.slice(0,Ar.index),Tr=rt.slice(Ar.index+Ar.length);Gr=Ke.join(":")+"::"+Tr.join(":")}else Gr=rt.join(":");return te&&(Gr+="%"+te),Gr}else return B}var Me=/^(?:([^:\/?#]+):)?(?:\/\/((?:([^\/?#@]*)@)?(\[[^\/?#\]]+\]|[^\/?#:]*)(?:\:(\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(Me);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(he){k.error=k.error||"Host's domain name can not be converted to ASCII via punycode: "+he}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 gi(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,he){return"["+te+(he?"%25"+he:"")+"]"})),(typeof B.port=="number"||typeof B.port=="string")&&(K.push(":"),K.push(String(B.port))),K.length?K.join(""):void 0}var go=/^\.\.?\//,hu=/^\/\.(\/|$)/,Ef=/^\/\.\.(\/|$)/,iy=/^\/?(?:.|\n)*?(?=\/|$)/;function mo(B){for(var v=[];B.length;)if(B.match(go))B=B.replace(go,"");else if(B.match(hu))B=B.replace(hu,"/");else if(B.match(Ef))B=B.replace(Ef,"/"),v.pop();else if(B==="."||B==="..")B="";else{var k=B.match(iy);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(Te){B.error=B.error||"Host's domain name can not be converted to "+(v.iri?"Unicode":"ASCII")+" via punycode: "+Te}}ue(B,k),v.reference!=="suffix"&&B.scheme&&(K.push(B.scheme),K.push(":"));var te=gi(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 he=B.path;!v.absolutePath&&(!H||!H.absolutePath)&&(he=mo(he)),te===void 0&&(he=he.replace(/^\/\//,"/%2F")),K.push(he)}return B.query!==void 0&&(K.push("?"),K.push(B.query)),B.fragment!==void 0&&(K.push("#"),K.push(B.fragment)),K.join("")}function pu(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=mo(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=mo(v.path||""),H.query=v.query):(v.path?(v.path.charAt(0)==="/"?H.path=mo(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=mo(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 vf(B,v,k){var K=s({scheme:"null"},k);return jr(pu(xt(B,K),xt(v,K),K,!0),K)}function yu(B,v){return typeof B=="string"?B=jr(xt(B,v),v):n(B)==="object"&&(B=xt(jr(B,v),v)),B}function Sf(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 Af(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 wo={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}},gu={scheme:"https",domainHost:wo.domainHost,parse:wo.parse,serialize:wo.serialize};function Tf(B){return typeof B.secure=="boolean"?B.secure:String(B.scheme).toLowerCase()==="wss"}var ps={scheme:"ws",domainHost:!0,parse:function(v,k){var K=v;return K.secure=Tf(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===(Tf(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],he=H[1];v.path=te&&te!=="/"?te:void 0,v.query=he,v.resourceName=void 0}return v.fragment=void 0,v}},_f={scheme:"wss",domainHost:ps.domainHost,parse:ps.parse,serialize:ps.serialize},oy={},XI=!0,rx="[A-Za-z0-9\\-\\.\\_\\~"+(XI?"\\xA0-\\u200D\\u2010-\\u2029\\u202F-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF":"")+"]",Pn="[0-9A-Fa-f]",ZI=r(r("%[EFef]"+Pn+"%"+Pn+Pn+"%"+Pn+Pn)+"|"+r("%[89A-Fa-f]"+Pn+"%"+Pn+Pn)+"|"+r("%"+Pn+Pn)),QI="[A-Za-z0-9\\!\\$\\%\\'\\*\\+\\-\\^\\_\\`\\{\\|\\}\\~]",eB="[\\!\\$\\%\\'\\(\\)\\*\\+\\,\\-\\.0-9\\<\\>A-Z\\x5E-\\x7E]",tB=e(eB,'[\\"\\\\]'),rB="[\\!\\$\\'\\(\\)\\*\\+\\,\\;\\:\\@]",nB=new RegExp(rx,"g"),Ic=new RegExp(ZI,"g"),iB=new RegExp(e("[^]",QI,"[\\.]",'[\\"]',tB),"g"),nx=new RegExp(e("[^]",rx,rB),"g"),oB=nx;function sy(B){var v=X(B);return v.match(nB)?v:B}var ix={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,he={},Te=K.query.split("&"),De=0,mt=Te.length;De<mt;++De){var Ae=Te[De].split("=");switch(Ae[0]){case"to":for(var tt=Ae[1].split(","),wt=0,Xe=tt.length;wt<Xe;++wt)H.push(tt[wt]);break;case"subject":K.subject=Wr(Ae[1],k);break;case"body":K.body=Wr(Ae[1],k);break;default:te=!0,he[Wr(Ae[0],k)]=Wr(Ae[1],k);break}}te&&(K.headers=he)}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(ys){K.error=K.error||"Email address's domain name can not be converted to ASCII via punycode: "+ys}H[Ie]=Ne.join("@")}return K},serialize:function(v,k){var K=v,H=o(v.to);if(H){for(var te=0,he=H.length;te<he;++te){var Te=String(H[te]),De=Te.lastIndexOf("@"),mt=Te.slice(0,De).replace(Ic,sy).replace(Ic,i).replace(iB,Y),Ae=Te.slice(De+1);try{Ae=k.iri?z.toUnicode(Ae):z.toASCII(Wr(Ae,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+"@"+Ae}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]!==oy[Xe]&&wt.push(Xe.replace(Ic,sy).replace(Ic,i).replace(nx,Y)+"="+tt[Xe].replace(Ic,sy).replace(Ic,i).replace(oB,Y));return wt.length&&(K.query=wt.join("&")),K}},sB=/^([^\:]+)\:(.*)/,ox={scheme:"urn",parse:function(v,k){var K=v.path&&v.path.match(sB),H=v;if(K){var te=k.scheme||H.scheme||"urn",he=K[1].toLowerCase(),Te=K[2],De=te+":"+(k.nid||he),mt=W[De];H.nid=he,H.nss=Te,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),he=W[te];he&&(v=he.serialize(v,k));var Te=v,De=v.nss;return Te.path=(H||k.nid)+":"+De,Te}},cB=/^[0-9A-Fa-f]{8}(?:\-[0-9A-Fa-f]{4}){3}\-[0-9A-Fa-f]{12}$/,sx={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(cB))&&(K.error=K.error||"UUID is not valid."),K},serialize:function(v,k){var K=v;return K.nss=(v.uuid||"").toLowerCase(),K}};W[wo.scheme]=wo,W[gu.scheme]=gu,W[ps.scheme]=ps,W[_f.scheme]=_f,W[ix.scheme]=ix,W[ox.scheme]=ox,W[sx.scheme]=sx,t.SCHEMES=W,t.pctEncChar=Y,t.pctDecChars=X,t.parse=xt,t.removeDotSegments=mo,t.serialize=jr,t.resolveComponents=pu,t.resolve=vf,t.normalize=yu,t.equal=Sf,t.escapeComponent=Af,t.unescapeComponent=Wr,Object.defineProperty(t,"__esModule",{value:!0})})});var j_=oe((XX,F_)=>{"use strict";l();F_.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 iI=oe((eee,nI)=>{l();var tu=1e3,ru=tu*60,nu=ru*60,Sc=nu*24,ZC=Sc*7,QC=Sc*365.25;nI.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*Sc;case"hours":case"hour":case"hrs":case"hr":case"h":return r*nu;case"minutes":case"minute":case"mins":case"min":case"m":return r*ru;case"seconds":case"second":case"secs":case"sec":case"s":return r*tu;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}function tL(t){var e=Math.abs(t);return e>=Sc?Math.round(t/Sc)+"d":e>=nu?Math.round(t/nu)+"h":e>=ru?Math.round(t/ru)+"m":e>=tu?Math.round(t/tu)+"s":t+"ms"}function rL(t){var e=Math.abs(t);return e>=Sc?Fp(t,e,Sc,"day"):e>=nu?Fp(t,e,nu,"hour"):e>=ru?Fp(t,e,ru,"minute"):e>=tu?Fp(t,e,tu,"second"):t+" ms"}function Fp(t,e,r,n){var i=e>=r*1.5;return Math.round(t/r)+" "+n+(i?"s":"")}});l();l();l();l();var Es=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;function vs(t){return t instanceof Uint8Array||ArrayBuffer.isView(t)&&t.constructor.name==="Uint8Array"}function vu(t){if(!Number.isSafeInteger(t)||t<0)throw new Error("positive integer expected, got "+t)}function yn(t,...e){if(!vs(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 Cf(t){if(typeof t!="function"||typeof t.create!="function")throw new Error("Hash should be wrapped by utils.createHasher");vu(t.outputLen),vu(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 Dx(t,e){yn(t);let r=e.outputLen;if(t.length<r)throw new Error("digestInto() expects output buffer of length at least "+r)}function Fn(...t){for(let e=0;e<t.length;e++)t[e].fill(0)}function Lf(t){return new DataView(t.buffer,t.byteOffset,t.byteLength)}function gn(t,e){return t<<32-e|t>>>e}function Su(t,e){return t<<e|t>>>32-e>>>0}var kx=typeof Uint8Array.from([]).toHex=="function"&&typeof Uint8Array.fromHex=="function",e8=Array.from({length:256},(t,e)=>e.toString(16).padStart(2,"0"));function Pt(t){if(yn(t),kx)return t.toHex();let e="";for(let r=0;r<t.length;r++)e+=e8[t[r]];return e}var Ai={_0:48,_9:57,A:65,F:70,a:97,f:102};function Ox(t){if(t>=Ai._0&&t<=Ai._9)return t-Ai._0;if(t>=Ai.A&&t<=Ai.F)return t-(Ai.A-10);if(t>=Ai.a&&t<=Ai.f)return t-(Ai.a-10)}function Ir(t){if(typeof t!="string")throw new Error("hex string expected, got "+typeof t);if(kx)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=Ox(t.charCodeAt(o)),c=Ox(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 Ss(t){if(typeof t!="string")throw new Error("string expected");return new Uint8Array(new TextEncoder().encode(t))}function Au(t){return typeof t=="string"&&(t=Ss(t)),yn(t),t}function ht(...t){let e=0;for(let n=0;n<t.length;n++){let i=t[n];yn(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 Pf(t){let e=n=>t().update(Au(n)).digest(),r=t();return e.outputLen=r.outputLen,e.blockLen=r.blockLen,e.create=()=>t(),e}function Br(t=32){if(Es&&typeof Es.getRandomValues=="function")return Es.getRandomValues(new Uint8Array(t));if(Es&&typeof Es.randomBytes=="function")return Uint8Array.from(Es.randomBytes(t));throw new Error("crypto.getRandomValues must be defined")}l();l();l();l();l();function t8(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=Lf(this.buffer)}update(e){Mc(this),e=Au(e),yn(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=Lf(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),Dx(e,this),this.finished=!0;let{buffer:r,view:n,blockLen:i,isLE:o}=this,{pos:s}=this;r[s++]=128,Fn(this.buffer.subarray(s)),this.padOffset>i-s&&(this.process(n,0),s=0);for(let f=s;f<i;f++)r[f]=0;t8(n,i-8,BigInt(this.length*8),o),this.process(n,0);let c=Lf(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()}},Ti=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]);var r8=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]),bo=new Uint32Array(64),Sy=class extends Kc{constructor(e=32){super(64,e,8,!1),this.A=Ti[0]|0,this.B=Ti[1]|0,this.C=Ti[2]|0,this.D=Ti[3]|0,this.E=Ti[4]|0,this.F=Ti[5]|0,this.G=Ti[6]|0,this.H=Ti[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)bo[f]=e.getUint32(r,!1);for(let f=16;f<64;f++){let h=bo[f-15],p=bo[f-2],g=gn(h,7)^gn(h,18)^h>>>3,y=gn(p,17)^gn(p,19)^p>>>10;bo[f]=y+bo[f-7]+g+bo[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=gn(c,6)^gn(c,11)^gn(c,25),p=d+h+Ey(c,a,u)+r8[f]+bo[f]|0,y=(gn(n,2)^gn(n,13)^gn(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+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(){Fn(bo)}destroy(){this.set(0,0,0,0,0,0,0,0),Fn(this.buffer)}};var ke=Pf(()=>new Sy);l();l();l();var Mf=class extends Pc{constructor(e,r){super(),this.finished=!1,this.destroyed=!1,Cf(e);let n=Au(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),Fn(o)}update(e){return Mc(this),this.iHash.update(e),this}digestInto(e){Mc(this),yn(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 Mf(t,e).update(r).digest();Ay.create=(t,e)=>new Mf(t,e);l();var Iy=BigInt(0),_y=BigInt(1);function Tu(t,e=""){if(typeof t!="boolean"){let r=e&&`"${e}"`;throw new Error(r+"expected boolean, got type="+typeof t)}return t}function xo(t,e,r=""){let n=vs(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 _u(t){let e=t.toString(16);return e.length&1?"0"+e:e}function Nx(t){if(typeof t!="string")throw new Error("hex string expected, got "+typeof t);return t===""?Iy:BigInt("0x"+t)}function _i(t){return Nx(Pt(t))}function By(t){return yn(t),Nx(Pt(Uint8Array.from(t).reverse()))}function $c(t,e){return Ir(t.toString(16).padStart(e*2,"0"))}function Ry(t,e){return $c(t,e).reverse()}function ct(t,e,r){let n;if(typeof e=="string")try{n=Ir(e)}catch(o){throw new Error(t+" must be hex string or Uint8Array, cause: "+o)}else if(vs(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 Eo(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 Iu(t,e,r){return Ty(t)&&Ty(e)&&Ty(r)&&e<=t&&t<r}function Cx(t,e,r,n){if(!Iu(e,r,n))throw new Error("expected valid "+t+": "+r+" <= n < "+n+", got "+e)}function Kf(t){let e;for(e=0;t>Iy;t>>=_y,e+=1);return e}var vo=t=>(_y<<BigInt(t))-_y;function Lx(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 ht(...g)};return(p,g)=>{a(),d(p);let y;for(;!(y=g(f()));)d();return a(),y}}function Bu(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 er=BigInt(0),Ft=BigInt(1),As=BigInt(2),Kx=BigInt(3),$x=BigInt(4),Hx=BigInt(5),n8=BigInt(7),Vx=BigInt(8),i8=BigInt(9),qx=BigInt(16);function Rr(t,e){let r=t%e;return r>=er?r:e+r}function Ur(t,e,r){let n=t;for(;e-- >er;)n*=n,n%=r;return n}function Px(t,e){if(t===er)throw new Error("invert: expected non-zero number");if(e<=er)throw new Error("invert: expected positive modulus, got "+e);let r=Rr(t,e),n=e,i=er,o=Ft,s=Ft,c=er;for(;r!==er;){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 Rr(i,e)}function Oy(t,e,r){if(!t.eql(t.sqr(e),r))throw new Error("Cannot find square root")}function Fx(t,e){let r=(t.ORDER+Ft)/$x,n=t.pow(e,r);return Oy(t,n,e),n}function o8(t,e){let r=(t.ORDER-Hx)/Vx,n=t.mul(e,As),i=t.pow(n,r),o=t.mul(e,i),s=t.mul(t.mul(o,As),i),c=t.mul(o,t.sub(s,t.ONE));return Oy(t,c,e),c}function s8(t){let e=So(t),r=jx(t),n=r(e,e.neg(e.ONE)),i=r(e,n),o=r(e,e.neg(n)),s=(t+n8)/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),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 Oy(c,x,a),x}}function jx(t){if(t<Kx)throw new Error("sqrt is not defined for small field");let e=t-Ft,r=0;for(;e%As===er;)e/=As,r++;let n=As,i=So(t);for(;Mx(i,n)===1;)if(n++>1e3)throw new Error("Cannot find square root: probably non-prime P");if(r===1)return Fx;let o=i.pow(n,e),s=(e+Ft)/As;return function(a,u){if(a.is0(u))return u;if(Mx(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 c8(t){return t%$x===Kx?Fx:t%Vx===Hx?o8:t%qx===i8?s8(t):jx(t)}var a8=["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=a8.reduce((n,i)=>(n[i]="function",n),e);return Bu(t,r),t}function u8(t,e,r){if(r<er)throw new Error("invalid exponent, negatives unsupported");if(r===er)return t.ONE;if(r===Ft)return e;let n=t.ONE,i=e;for(;r>er;)r&Ft&&(n=t.mul(n,i)),i=t.sqr(i),r>>=Ft;return n}function $f(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 Mx(t,e){let r=(t.ORDER-Ft)/As,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 Hf(t,e){e!==void 0&&vu(e);let r=e!==void 0?e:t.toString(2).length,n=Math.ceil(r/8);return{nBitLength:r,nByteLength:n}}function So(t,e,r=!1,n={}){if(t<=er)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}=Hf(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:vo(a),ZERO:er,ONE:Ft,allowedLengths:c,create:h=>Rr(h,t),isValid:h=>{if(typeof h!="bigint")throw new Error("invalid field element: expected bigint, got "+typeof h);return er<=h&&h<t},is0:h=>h===er,isValidNot0:h=>!f.is0(h)&&f.isValid(h),isOdd:h=>(h&Ft)===Ft,neg:h=>Rr(-h,t),eql:(h,p)=>h===p,sqr:h=>Rr(h*h,t),add:(h,p)=>Rr(h+p,t),sub:(h,p)=>Rr(h-p,t),mul:(h,p)=>Rr(h*p,t),pow:(h,p)=>u8(f,h,p),div:(h,p)=>Rr(h*Px(p,t),t),sqrN:h=>h*h,addN:(h,p)=>h+p,subN:(h,p)=>h-p,mulN:(h,p)=>h*p,inv:h=>Px(h,t),sqrt:o||(h=>(d||(d=c8(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 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?By(h):_i(h);if(s&&(g=Rr(g,t)),!p&&!f.isValid(g))throw new Error("invalid field element: outside of range 0..ORDER");return g},invertBatch:h=>$f(f,h),cmov:(h,p,g)=>g?p:h});return Object.freeze(f)}function Wx(t){if(typeof t!="bigint")throw new Error("field order must be bigint");let e=t.toString(2).length;return Math.ceil(e/8)}function ky(t){let e=Wx(t);return e+Math.ceil(e/2)}function Vf(t,e,r=!1){let n=t.length,i=Wx(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):_i(t),c=Rr(s,e-Ft)+Ft;return r?Ry(c,i):$c(c,i)}var Hc=BigInt(0),Ts=BigInt(1);function Ru(t,e){let r=e.negate();return t?r:e}function Ff(t,e){let r=$f(t.Fp,e.map(n=>n.Z));return e.map((n,i)=>t.fromAffine(n.toAffine(r[i])))}function Jx(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){Jx(t,e);let r=Math.ceil(e/t)+1,n=2**(t-1),i=2**t,o=vo(t),s=BigInt(t);return{windows:r,windowSize:n,mask:o,maxNumber:i,shiftBy:s}}function Gx(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+=Ts);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 d8(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 f8(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,Xx=new WeakMap;function Ly(t){return Xx.get(t)||1}function zx(t){if(t!==Hc)throw new Error("invalid wNAF")}var qf=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&Ts&&(n=n.add(i)),i=i.double(),r>>=Ts;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}=Gx(n,c,s);n=a,d?o=o.add(Ru(h,r[p])):i=i.add(Ru(f,r[u]))}return zx(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}=Gx(n,s,o);if(n=c,!u){let f=r[a];i=i.add(d?f.negate():f)}}return zx(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){Jx(r,this.bits),Xx.set(e,r),Cy.delete(e)}hasCache(e){return Ly(e)!==1}};function Zx(t,e,r,n){let i=e,o=t.ZERO,s=t.ZERO;for(;r>Hc||n>Hc;)r&Ts&&(o=o.add(i)),n&Ts&&(s=s.add(i)),i=i.double(),r>>=Ts,n>>=Ts;return{p1:o,p2:s}}function Qx(t,e,r,n){d8(r,t),f8(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=Kf(BigInt(i)),a=1;c>12?a=c-3:c>4?a=c-2:c>0&&(a=2);let u=vo(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 Yx(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 So(t,{isLE:r})}function eE(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=Yx(e.p,r.Fp,n),o=Yx(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 tE=(t,e)=>(t+(t>=0?e:-e)/rE)/e;function l8(t,e,r){let[[n,i],[o,s]]=e,c=tE(s*t,r),a=tE(-i*t,r),u=t-c*n-a*o,d=-c*i-a*s,f=u<Bi,h=d<Bi;f&&(u=-u),h&&(d=-d);let p=vo(Math.ceil(Kf(r)/2))+Vc;if(u<Bi||u>=p||d<Bi||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 Tu(r.lowS,"lowS"),Tu(r.prehash,"prehash"),r.format!==void 0&&My(r.format),r}var Ky=class extends Error{constructor(e=""){super(e)}},Ii={Err:Ky,_tlv:{encode:(t,e)=>{let{Err:r}=Ii;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=_u(n);if(i.length/2&128)throw new r("tlv.encode: long form length too big");let o=n>127?_u(i.length/2|128):"";return _u(t)+o+i+e},decode(t,e){let{Err:r}=Ii,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}=Ii;if(t<Bi)throw new e("integer: negative integers are not allowed");let r=_u(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}=Ii;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 _i(t)}},toSig(t){let{Err:e,_int:r,_tlv:n}=Ii,i=ct("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}=Ii,n=e.encode(2,r.encode(t.r)),i=e.encode(2,r.encode(t.s)),o=n+i;return e.encode(48,o)}},Bi=BigInt(0),Vc=BigInt(1),rE=BigInt(2),jf=BigInt(3),h8=BigInt(4);function Ao(t,e){let{BYTES:r}=t,n;if(typeof e=="bigint")n=e;else{let i=ct("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 p8(t,e={}){let r=eE("weierstrass",t,e),{Fp:n,Fn:i}=r,o=r.CURVE,{h:s,n:c}=o;Bu(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=iE(n,i);function d(){if(!n.isOdd)throw new Error("compression is not supported: Field does not have .isOdd()")}function f(G,_,D){let{x:E,y:U}=_.toAffine(),L=n.toBytes(E);if(Tu(D,"isCompressed"),D){d();let N=!n.isOdd(U);return ht(nE(N),L)}else return ht(Uint8Array.of(4),L,n.toBytes(U))}function h(G){xo(G,void 0,"Point");let{publicKey:_,publicKeyUncompressed:D}=u,E=G.length,U=G[0],L=G.subarray(1);if(E===_&&(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=${_} or uncompressed=${D}`)}let p=e.toBytes||f,g=e.fromBytes||h;function y(G){let _=n.sqr(G),D=n.mul(_,G);return n.add(n.add(D,n.mul(G,o.a)),o.b)}function x(G,_){let D=n.sqr(_),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,jf),h8),I=n.mul(n.sqr(o.b),BigInt(27));if(n.is0(n.add(S,I)))throw new Error("bad curve params: a or b");function A(G,_,D=!1){if(!n.isValid(_)||D&&n.is0(_))throw new Error(`bad point coordinate ${G}`);return _}function O(G){if(!(G instanceof $))throw new Error("ProjectivePoint expected")}function T(G){if(!a||!a.basises)throw new Error("no endo");return l8(G,a.basises,i.ORDER)}let M=Uy((G,_)=>{let{X:D,Y:E,Z:U}=G;if(n.eql(U,n.ONE))return{x:D,y:E};let L=G.is0();_==null&&(_=L?n.ONE:n.inv(U));let N=n.mul(D,_),R=n.mul(E,_),C=n.mul(U,_);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:_,y:D}=G.toAffine();if(!n.isValid(_)||!n.isValid(D))throw new Error("bad point: x or y not field elements");if(!x(_,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,_,D,E,U){return D=new $(n.mul(D.X,G),D.Y,D.Z),_=Ru(E,_),D=Ru(U,D),_.add(D)}class ${constructor(_,D,E){this.X=A("x",_),this.Y=A("y",D,!0),this.Z=A("z",E),Object.freeze(this)}static CURVE(){return o}static fromAffine(_){let{x:D,y:E}=_||{};if(!_||!n.isValid(D)||!n.isValid(E))throw new Error("invalid affine point");if(_ instanceof $)throw new Error("projective point not allowed");return n.is0(D)&&n.is0(E)?$.ZERO:new $(D,E,n.ONE)}static fromBytes(_){let D=$.fromAffine(g(xo(_,void 0,"point")));return D.assertValidity(),D}static fromHex(_){return $.fromBytes(ct("pointHex",_))}get x(){return this.toAffine().x}get y(){return this.toAffine().y}precompute(_=8,D=!0){return Q.createCache(this,_),D||this.multiply(jf),this}assertValidity(){q(this)}hasEvenY(){let{y:_}=this.toAffine();if(!n.isOdd)throw new Error("Field doesn't support isOdd");return!n.isOdd(_)}equals(_){O(_);let{X:D,Y:E,Z:U}=this,{X:L,Y:N,Z:R}=_,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:_,b:D}=o,E=n.mul(D,jf),{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(_,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(_,z),W=n.sub(V,z),W=n.mul(_,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(_){O(_);let{X:D,Y:E,Z:U}=this,{X:L,Y:N,Z:R}=_,C=n.ZERO,P=n.ZERO,V=n.ZERO,J=o.a,z=n.mul(o.b,jf),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(_){return this.add(_.negate())}is0(){return this.equals($.ZERO)}multiply(_){let{endo:D}=e;if(!i.isValidNot0(_))throw new Error("invalid scalar: out of range");let E,U,L=N=>Q.cached(this,N,R=>Ff($,R));if(D){let{k1neg:N,k1:R,k2neg:C,k2:P}=T(_),{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(_);E=N,U=R}return Ff($,[E,U])[0]}multiplyUnsafe(_){let{endo:D}=e,E=this;if(!i.isValid(_))throw new Error("invalid scalar: out of range");if(_===Bi||E.is0())return $.ZERO;if(_===Vc)return E;if(Q.hasCache(this))return this.multiply(_);if(D){let{k1neg:U,k1:L,k2neg:N,k2:R}=T(_),{p1:C,p2:P}=Zx($,E,L,R);return j(D.beta,C,P,U,N)}else return Q.unsafe(E,_)}multiplyAndAddUnsafe(_,D,E){let U=this.multiplyUnsafe(D).add(_.multiplyUnsafe(E));return U.is0()?void 0:U}toAffine(_){return M(this,_)}isTorsionFree(){let{isTorsionFree:_}=e;return s===Vc?!0:_?_($,this):Q.unsafe(this,c).is0()}clearCofactor(){let{clearCofactor:_}=e;return s===Vc?this:_?_($,this):this.multiplyUnsafe(s)}isSmallOrder(){return this.multiplyUnsafe(s).is0()}toBytes(_=!0){return Tu(_,"isCompressed"),this.assertValidity(),p($,this,_)}toHex(_=!0){return Pt(this.toBytes(_))}toString(){return`<Point ${this.is0()?"ZERO":this.toHex()}>`}get px(){return this.X}get py(){return this.X}get pz(){return this.Z}toRawBytes(_=!0){return this.toBytes(_)}_setWindowSize(_){this.precompute(_)}static normalizeZ(_){return Ff($,_)}static msm(_,D){return Qx($,i,_,D)}static fromPrivateKey(_){return $.BASE.multiply(Ao(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 qf($,e.endo?Math.ceil(Z/2):Z);return $.BASE.precompute(8),$}function nE(t){return Uint8Array.of(t?2:3)}function iE(t,e){return{secretKey:e.BYTES,publicKey:1+t.BYTES,publicKeyUncompressed:1+2*t.BYTES,publicKeyHasPrefix:!0,signature:2*e.BYTES}}function y8(t,e={}){let{Fn:r}=t,n=e.randomBytes||Br,i=Object.assign(iE(t.Fp,r),{seed:ky(r.ORDER)});function o(p){try{return!!Ao(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 Vf(xo(p,i.seed,"seed"),r.ORDER)}function a(p,g=!0){return t.BASE.multiply(Ao(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=ct("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=Ao(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=>Ao(r,p),precompute(p=8,g=t.BASE){return g.precompute(p,!1)}},lengths:i})}function g8(t,e,r={}){Cf(e),Bu(r,{},{hmac:"function",lowS:"boolean",randomBytes:"function",bits2int:"function",bits2int_modN:"function"});let n=r.randomBytes||Br,i=r.hmac||((D,...E)=>Ay(e,D,ht(...E))),{Fp:o,Fn:s}=t,{ORDER:c,BITS:a}=s,{keygen:u,getPublicKey:d,getSharedSecret:f,utils:h,lengths:p}=y8(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 I(D,E){My(E);let U=p.signature,L=E==="compact"?U:E==="recovered"?U+1:void 0;return xo(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){I(E,U);let L;if(U==="der"){let{r:P,s:V}=Ii.toSig(xo(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(Ir(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*rE<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(ht(nE((R&1)===0),V)),z=s.inv(P),W=T(ct("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(My(E),E==="der")return Ir(Ii.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 ht(Uint8Array.of(this.recovery),U,L)}return ht(U,L)}toHex(E){return Pt(this.toBytes(E))}assertValidity(){}static fromCompact(E){return A.fromBytes(ct("sig",E),"compact")}static fromDER(E){return A.fromBytes(ct("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=_i(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=vo(a);function q(D){return Cx("num < 2^"+a,D,Bi,M),s.toBytes(D)}function j(D,E){return xo(D,void 0,"message"),E?xo(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,g);D=j(D,N);let C=T(D),P=Ao(s,E),V=[q(P),q(C)];if(R!=null&&R!==!1){let Y=R===!0?n(p.secretKey):R;V.push(ct("extraEntropy",Y))}let J=ht(...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===Bi)return;let Oe=s.create(ue*s.create(z+ce*P));if(Oe===Bi)return;let Me=(ee.x===ce?0:2)|Number(ee.y&Vc),Je=Oe;return L&&x(Oe)&&(Je=s.neg(Oe),Me^=1),new A(ce,Je,Me)}return{seed:J,k2sig:W}}function Z(D,E,U={}){D=ct("message",D);let{seed:L,k2sig:N}=$(D,E,U);return Lx(e.outputLen,s.BYTES,i)(L,N)}function Q(D){let E,U=typeof D=="string"||vs(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(ct("sig",D),"der")}catch(N){if(!(N instanceof Ii.Err))throw N}if(!E)try{E=A.fromBytes(ct("sig",D),"compact")}catch{return!1}}return E||!1}function G(D,E,U,L={}){let{lowS:N,prehash:R,format:C}=Py(L,g);if(U=ct("publicKey",U),E=j(ct("message",E),R),"strict"in L)throw new Error("options.strict was renamed to lowS");let P=C===void 0?Q(D):A.fromBytes(ct("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 _(D,E,U={}){let{prehash:L}=Py(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:_,Signature:A,hash:e})}function m8(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=So(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 w8(t){let{CURVE:e,curveOpts:r}=m8(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 b8(t,e){let r=e.Point;return Object.assign({},e,{ProjectivePoint:r,CURVE:Object.assign({},t,Hf(r.Fn.ORDER,r.Fn.BITS))})}function oE(t){let{CURVE:e,curveOpts:r,hash:n,ecdsaOpts:i}=w8(t),o=p8(e,r),s=g8(o,n,i);return b8(t,s)}function sE(t,e){let r=n=>oE({...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")},x8={beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),basises:[[BigInt("0x3086d221a7d46bcde86c90e49284eb15"),-BigInt("0xe4437ed6010e88286f547fa90abfe4c3")],[BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),BigInt("0x3086d221a7d46bcde86c90e49284eb15")]]},E8=BigInt(0),cE=BigInt(1),$y=BigInt(2);function v8(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=Ur(d,r,e)*d%e,h=Ur(f,r,e)*d%e,p=Ur(h,$y,e)*u%e,g=Ur(p,i,e)*p%e,y=Ur(g,o,e)*g%e,x=Ur(y,c,e)*y%e,S=Ur(x,a,e)*x%e,I=Ur(S,c,e)*y%e,A=Ur(I,r,e)*d%e,O=Ur(A,s,e)*g%e,T=Ur(O,n,e)*u%e,M=Ur(T,$y,e);if(!Wf.eql(Wf.sqr(M),t))throw new Error("Cannot find square root");return M}var Wf=So(qc.p,{sqrt:v8}),To=sE({...qc,Fp:Wf,lowS:!0,endo:x8},ke),aE={};function Gf(t,...e){let r=aE[t];if(r===void 0){let n=ke(Ss(t));r=ht(n,n),aE[t]=r}return ke(ht(r,...e))}var Vy=t=>t.toBytes(!0).slice(1),Fc=To.Point,qy=t=>t%$y===E8;function Hy(t){let{Fn:e,BASE:r}=Fc,n=Ao(e,t),i=r.multiply(n);return{scalar:qy(i.y)?n:e.neg(n),bytes:Vy(i)}}function dE(t){let e=Wf;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 Uu=_i;function fE(...t){return Fc.Fn.create(Uu(Gf("BIP0340/challenge",...t)))}function uE(t){return Hy(t).bytes}function S8(t,e,r=Br(32)){let{Fn:n}=Fc,i=ct("message",t),{bytes:o,scalar:s}=Hy(e),c=ct("auxRand",r,32),a=n.toBytes(s^Uu(Gf("BIP0340/aux",c))),u=Gf("BIP0340/nonce",a,o,i),{bytes:d,scalar:f}=Hy(u),h=fE(d,o,i),p=new Uint8Array(64);if(p.set(d,0),p.set(n.toBytes(n.create(f+h*s)),32),!lE(p,i,o))throw new Error("sign: Invalid signature produced");return p}function lE(t,e,r){let{Fn:n,BASE:i}=Fc,o=ct("signature",t,64),s=ct("message",e),c=ct("publicKey",r,32);try{let a=dE(Uu(c)),u=Uu(o.subarray(0,32));if(!Iu(u,cE,qc.p))return!1;let d=Uu(o.subarray(32,64));if(!Iu(d,cE,qc.n))return!1;let f=fE(n.toBytes(u),Vy(a),s),h=i.multiplyUnsafe(d).add(a.multiplyUnsafe(n.neg(f))),{x:p,y:g}=h.toAffine();return!(h.is0()||!qy(g)||p!==u)}catch{return!1}}var Or=(()=>{let r=(i=Br(48))=>Vf(i,qc.n);To.utils.randomSecretKey;function n(i){let o=r(i);return{secretKey:o,publicKey:uE(o)}}return{keygen:n,getPublicKey:uE,sign:S8,verify:lE,Point:Fc,utils:{randomSecretKey:r,randomPrivateKey:r,taggedHash:Gf,lift_x:dE,pointToBytes:Vy,numberToBytesBE:$c,bytesToNumberBE:_i,mod:Rr},lengths:{secretKey:32,publicKey:32,publicKeyHasPrefix:!1,signature:32*2,seed:48}}})();l();var A8=Uint8Array.from([7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8]),pE=Uint8Array.from(new Array(16).fill(0).map((t,e)=>e)),T8=pE.map(t=>(9*t+5)%16),yE=(()=>{let r=[[pE],[T8]];for(let n=0;n<4;n++)for(let i of r)i.push(i[n].map(o=>A8[o]));return r})(),gE=yE[0],mE=yE[1],wE=[[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)),_8=gE.map((t,e)=>t.map(r=>wE[e][r])),I8=mE.map((t,e)=>t.map(r=>wE[e][r])),B8=Uint32Array.from([0,1518500249,1859775393,2400959708,2840853838]),R8=Uint32Array.from([1352829926,1548603684,1836072691,2053994217,0]);function hE(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 zf=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)zf[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=B8[p],x=R8[p],S=gE[p],I=mE[p],A=_8[p],O=I8[p];for(let T=0;T<16;T++){let M=Su(n+hE(p,o,c,u)+zf[S[T]]+y,A[T])+f|0;n=f,f=u,u=Su(c,10)|0,c=o,o=M}for(let T=0;T<16;T++){let M=Su(i+hE(g,s,a,d)+zf[I[T]]+x,O[T])+h|0;i=h,h=d,d=Su(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(){Fn(zf)}destroy(){this.destroyed=!0,Fn(this.buffer),this.set(0,0,0,0,0)}},bE=Pf(()=>new Fy);l();l();function jc(t){return t instanceof Uint8Array||ArrayBuffer.isView(t)&&t.constructor.name==="Uint8Array"}function U8(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 AE(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 Du(t){if(!Number.isSafeInteger(t))throw new Error(`invalid integer: ${t}`)}function Jf(t){if(!Array.isArray(t))throw new Error("array expected")}function TE(t,e){if(!AE(!0,e))throw new Error(`${t}: array of strings expected`)}function zy(t,e){if(!AE(!1,e))throw new Error(`${t}: array of numbers expected`)}function ku(...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 Zf(t){let e=typeof t=="string"?t.split(""):t,r=e.length;TE("alphabet",e);let n=new Map(e.map((i,o)=>[i,o]));return{encode:i=>(Jf(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=>(Jf(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 Qf(t=""){return Wc("join",t),{encode:e=>(TE("join.decode",e),e.join(t)),decode:e=>(Wc("join.decode",e),e.split(t))}}function O8(t){return Gy(t),{encode:e=>e,decode:e=>t(e)}}function xE(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(Jf(t),!t.length)return[];let n=0,i=[],o=Array.from(t,c=>{if(Du(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 _E=(t,e)=>e===0?t:_E(e,t%e),Xf=(t,e)=>t+(e-_E(t,e)),Yf=(()=>{let t=[];for(let e=0;e<40;e++)t.push(2**e);return t})();function jy(t,e,r,n){if(Jf(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(Xf(e,r)>32)throw new Error(`convertRadix2: carry overflow from=${e} to=${r} carryBits=${Xf(e,r)}`);let i=0,o=0,s=Yf[e],c=Yf[r]-1,a=[];for(let u of t){if(Du(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=Yf[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 D8(t){Du(t);let e=2**8;return{encode:r=>{if(!jc(r))throw new Error("radix.encode input should be Uint8Array");return xE(Array.from(r),e,t)},decode:r=>(zy("radix.decode",r),Uint8Array.from(xE(r,t,e)))}}function Yy(t,e=!1){if(Du(t),t<=0||t>32)throw new Error("radix2: bits should be in (0..32]");if(Xf(8,t)>32||Xf(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 EE(t){return Gy(t),function(...e){try{return t.apply(null,e)}catch{}}}function k8(t,e){return Du(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 Ri=ku(Yy(6),Zf("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_"),Qf("")),N8=t=>ku(D8(58),Zf(t),Qf("")),el=N8("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz");var IE=t=>ku(k8(4,e=>t(t(e))),el);var Wy=ku(Zf("qpzry9x8gf2tvdw0s3jn54khce6mua7l"),Qf("")),vE=[996825010,642813549,513874426,1027748829,705979059];function Ou(t){let e=t>>25,r=(t&33554431)<<5;for(let n=0;n<vE.length;n++)(e>>n&1)===1&&(r^=vE[n]);return r}function SE(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=Ou(i)^s>>5}i=Ou(i);for(let o=0;o<n;o++)i=Ou(i)^t.charCodeAt(o)&31;for(let o of e)i=Ou(i)^o;for(let o=0;o<6;o++)i=Ou(i);return i^=r,Wy.encode(jy([i%Yf[30]],30,5,!1))}function BE(t){let e=t==="bech32"?1:734539939,r=Yy(5),n=r.decode,i=r.encode,o=EE(n);function s(f,h,p=90){Wc("bech32.encode prefix",f),jc(h)&&(h=Array.from(h)),zy("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=SE(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 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 I=Wy.decode(S).slice(0,-6),A=SE(x,I,e);if(!S.endsWith(A))throw new Error(`Invalid checksum in ${f}: expected "${A}"`);return{prefix:x,words:I}}let a=EE(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 tl=BE("bech32"),_s=BE("bech32m"),RE={encode:t=>new TextDecoder().decode(t),decode:t=>new TextEncoder().encode(t)},C8=typeof Uint8Array.from([]).toHex=="function"&&typeof Uint8Array.fromHex=="function",L8={encode(t){return U8(t),t.toHex()},decode(t){return Wc("hex",t),Uint8Array.fromHex(t)}},ve=C8?L8:ku(Yy(4),Zf("0123456789abcdef"),Qf(""),O8(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 He=new Uint8Array,Qy=new Uint8Array([0]);function Gc(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 P8(...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 zc(t){return Object.prototype.toString.call(t)==="[object Object]"}function jn(t){return Number.isSafeInteger(t)}var rl={equalBytes:Gc,isBytes:Jr,isCoder:Dr,checkBounds:OE,concatBytes:P8,createView:e0,isPlainObject:zc},UE=t=>{if(t!==null&&typeof t!="string"&&!Dr(t)&&!Jr(t)&&!jn(t))throw new Error(`lengthCoder: expected null | number | Uint8Array | CoderType, got ${t} (${typeof t})`);return{encodeStream(e,r){if(t===null)return;if(Dr(t))return t.encodeStream(e,r);let n;if(typeof t=="number"?n=t:typeof t=="string"&&(n=Ui.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(Dr(t)?r=Number(t.decodeStream(e)):typeof t=="number"?r=t:typeof t=="string"&&(r=Ui.resolve(e.stack,t)),typeof r=="bigint"&&(r=Number(r)),typeof r!="number")throw e.err(`Wrong length: ${r}`);return r}}},Ot={BITS:32,FULL_MASK:-1>>>0,len:t=>Math.ceil(t/32),create:t=>new Uint32Array(Ot.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(Ot.len(e)!==t.length)throw new Error(`wrong length=${t.length}. Expected: ${Ot.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)=>{Ot.checkLen(t,e);let{FULL_MASK:n,BITS:i}=Ot,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)=>`[${Ot.range(Ot.indices(t,e,r)).map(n=>`(${n.pos}/${n.length})`).join(", ")}]`,setRange:(t,e,r,n,i=!0)=>{Ot.chunkLen(e,r,n);let{FULL_MASK:o,BITS:s}=Ot,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 Ot.set(t,c,o>>>s-n<<s-n-r,i);if(c!==void 0&&!Ot.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(!Ot.set(t,h,o,i))return!1;return!(u!==void 0&&c!==u&&!Ot.set(t,u,o<<s-a%s,i))}},Ui={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}(${Ui.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=Ot.create(this.data.length),Ot.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:Ot.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 Ui.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: ${ve.encode(this.data.slice(this.pos))}`);if(this.bs&&!this.parent){let e=Ot.indices(this.bs,this.data.length,!0);if(e.length){let r=Ot.range(e).map(({pos:n,length:i})=>`(${n}/${i})[${ve.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: ${ve.encode(this.data.slice(this.pos))}`)}}err(e){return Ui.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(Gc(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 Ui.pushObj(this.stack,e,r)}writeView(e,r){if(this.finished)throw this.err("buffer: finished");if(!jn(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 Ui.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 OE(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 DE(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(!Dr(t))throw new Error(`validate: invalid inner value ${t}`);if(typeof e!="function")throw new Error("validate: fn should be function");return DE({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=DE(t);return t.validate?jt(e,t.validate):e},nl=t=>zc(t)&&typeof t.decode=="function"&&typeof t.encode=="function";function Dr(t){return zc(t)&&nl(t)&&typeof t.encodeStream=="function"&&typeof t.decodeStream=="function"&&(t.size===void 0||jn(t.size))}function M8(){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(!zc(t))throw new Error(`expected plain object, got ${t}`);return Object.entries(t)}}}var K8={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(!jn(t))throw new Error("element is not a safe integer");return BigInt(t)}};function $8(t){if(!zc(t))throw new Error("plain object expected");return{encode:e=>{if(!jn(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 H8(t,e=!1){if(!jn(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 V8(t){if(!Array.isArray(t))throw new Error(`expected array, got ${typeof t}`);for(let e of t)if(!nl(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 kE=t=>{if(!nl(t))throw new Error("BaseCoder expected");return{encode:t.decode,decode:t.encode}},Oi={dict:M8,numberBigint:K8,tsEnum:$8,decimal:H8,match:V8,reverse:kE};var t0=(t,e=!1,r=!1,n=!0)=>{if(!jn(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 OE(s,8n*i,!!r),s}})};var NE=t0(32,!1);var Yc=t0(8,!0);var CE=t0(8,!0,!0);var q8=(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}}),Nu=(t,e,r)=>{let n=t*8,i=2**(n-1),o=a=>{if(!jn(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(!jn(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 q8(t,{write:r.write,read:r.read,validate:e?o:c})},Be=Nu(4,!1,{read:(t,e)=>t.getUint32(e,!0),write:(t,e)=>t.setUint32(0,e,!0)}),LE=Nu(4,!1,{read:(t,e)=>t.getUint32(e,!1),write:(t,e)=>t.setUint32(0,e,!1)}),_o=Nu(4,!0,{read:(t,e)=>t.getInt32(e,!0),write:(t,e)=>t.setInt32(0,e,!0)});var r0=Nu(2,!1,{read:(t,e)=>t.getUint16(e,!0),write:(t,e)=>t.setUint16(0,e,!0)});var wn=Nu(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=UE(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 PE(t,e){if(!Dr(e))throw new Error(`prefix: invalid inner value ${e}`);return mn(Fe(t),kE(e))}var il=(t,e=!1)=>jt(mn(Fe(t,e),RE),r=>{if(typeof r!="string")throw new Error(`expected string, got ${typeof r}`);return r});var ME=(t,e={isLE:!1,with0x:!1})=>{let r=mn(Fe(t,e.isLE),ve),n=e.with0x;if(typeof n!="boolean")throw new Error(`hex/with0x: expected boolean, got ${typeof n}`);return n&&(r=mn(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 mn(t,e){if(!Dr(t))throw new Error(`apply: invalid inner value ${t}`);if(!nl(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 KE=(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=Gc(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 $E(t,e,r){if(!Dr(e))throw new Error(`flagged: invalid inner value ${e}`);if(typeof t!="string"&&!Dr(e))throw new Error(`flagged: wrong path=${t}`);return Wt({encodeStream:(n,i)=>{typeof t=="string"?Ui.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=!!Ui.resolve(n.stack,t):i=t.decodeStream(n),i)return e.decodeStream(n);r&&e.decodeStream(n)}})}function ol(t,e,r=!0){if(!Dr(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)&&!Gc(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 HE(t){let e=0;for(let r of t){if(r.size===void 0)return;if(!jn(r.size))throw new Error(`sizeof: wrong element size=${e}`);e+=r.size}return e}function Et(t){if(!zc(t))throw new Error(`struct: expected plain object, got ${t}`);for(let e in t)if(!Dr(t[e]))throw new Error(`struct: field ${e} is not CoderType`);return Wt({size:HE(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 VE(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(!Dr(t[e]))throw new Error(`tuple: field ${e} is not CoderType`);return Wt({size:HE(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(!Dr(e))throw new Error(`array: invalid inner value ${e}`);let r=UE(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(Gc(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(Gc(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 al=To.ProjectivePoint,cl=To.CURVE.n,Ce=rl.isBytes,Wn=rl.concatBytes,at=rl.equalBytes;var Jc=t=>bE(ke(t)),Di=(...t)=>ke(ke(Wn(...t))),EM=Or.utils.randomPrivateKey,ul=Or.getPublicKey,n0=To.getPublicKey,qE=t=>t.r<cl/2n;function FE(t,e,r=!1){let n=To.sign(t,e);if(r&&!qE(n)){let i=new Uint8Array(32),o=0;for(;!qE(n);)if(i.set(Be.encode(o++)),n=To.sign(t,e,{extraEntropy:i}),o>4294967295)throw new Error("lowR counter overflow: report the error")}return n.toDERRawBytes()}var i0=Or.sign,Cu=Or.utils.taggedHash,vt;(function(t){t[t.ecdsa=0]="ecdsa",t[t.schnorr=1]="schnorr"})(vt||(vt={}));function Io(t,e){let r=t.length;if(e===vt.ecdsa){if(r===32)throw new Error("Expected non-Schnorr key");return al.fromHex(t),t}else if(e===vt.schnorr){if(r!==32)throw new Error("Expected 32-byte Schnorr key");return Or.utils.lift_x(Or.utils.bytesToNumberBE(t)),t}else throw new Error("Unknown key type")}function jE(t,e){let r=Or.utils,n=r.taggedHash("TapTweak",t,e),i=r.bytesToNumberBE(n);if(i>=cl)throw new Error("tweak higher than curve order");return i}function WE(t,e=Uint8Array.of()){let r=Or.utils,n=r.bytesToNumberBE(t),i=al.fromPrivateKey(n),o=i.hasEvenY()?n:r.mod(-n,cl),s=r.pointToBytes(i),c=jE(s,e);return r.numberToBytesBE(r.mod(o+c,cl),32)}function Lu(t,e){let r=Or.utils,n=jE(t,e),o=r.lift_x(r.bytesToNumberBE(t)).add(al.fromPrivateKey(n)),s=o.hasEvenY()?0:1;return[r.pointToBytes(o),s]}var dl=ke(al.BASE.toRawBytes(!1)),Xr={bech32:"bc",pubKeyHash:0,scriptHash:5,wif:128},o0={bech32:"tb",pubKeyHash:111,scriptHash:196,wif:239};function Pu(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 YE(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=wn.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}}),zE={253:[253,2,253n,65535n],254:[254,4,65536n,4294967295n],255:[255,8,4294967296n,18446744073709551615n]},Xc=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(zE))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]=zE[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}}),kr=mn(Xc,Oi.numberBigint),lr=Fe(Xc),Zc=Gt(kr,lr),fl=t=>Gt(Xc,t),JE=Et({txid:Fe(32,!0),index:Be,finalScriptSig:lr,sequence:Be}),ki=Et({amount:Yc,script:lr}),F8=Et({version:_o,segwitFlag:KE(new Uint8Array([0,1])),inputs:fl(JE),outputs:fl(ki),witnesses:$E("segwitFlag",Gt("inputs/length",Zc)),lockTime:Be});function j8(t){if(t.segwitFlag&&t.witnesses&&!t.witnesses.length)throw new Error("Segwit flag with empty witnesses array");return t}var Ni=jt(F8,j8),Is=Et({version:_o,inputs:fl(JE),outputs:fl(ki),lockTime:Be});var a0=jt(Fe(null),t=>Io(t,vt.ecdsa)),ll=jt(Fe(32),t=>Io(t,vt.schnorr)),XE=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}),hl=Et({fingerprint:LE,path:Gt(null,Be)}),ev=Et({hashes:Gt(kr,Fe(32)),der:hl}),W8=Fe(78),G8=Et({pubKey:ll,leafHash:Fe(32)}),z8=Et({version:wn,internalKey:Fe(32),merklePath:Gt(null,Fe(32))}),Ci=jt(z8,t=>{if(t.merklePath.length>128)throw new Error("TaprootControlBlock: merklePath should be of length 0..128 (inclusive)");return t}),Y8=Gt(null,Et({depth:wn,version:wn,script:lr})),St=Fe(null),ZE=Fe(20),Mu=Fe(32),pl={unsignedTx:[0,!1,Is,[0],[0],!1],xpub:[1,W8,hl,[],[0,2],!1],txVersion:[2,!1,Be,[2],[2],!1],fallbackLocktime:[3,!1,Be,[],[2],!1],inputCount:[4,!1,kr,[2],[2],!1],outputCount:[5,!1,kr,[2],[2],!1],txModifiable:[6,!1,wn,[],[2],!1],version:[251,!1,Be,[],[0,2],!1],proprietary:[252,St,St,[],[0,2],!1]},Ku={nonWitnessUtxo:[0,!1,Ni,[],[0,2],!1],witnessUtxo:[1,!1,ki,[],[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,hl,[],[0,2],!1],finalScriptSig:[7,!1,St,[],[0,2],!1],finalScriptWitness:[8,!1,Zc,[],[0,2],!1],porCommitment:[9,!1,St,[],[0,2],!1],ripemd160:[10,ZE,St,[],[0,2],!1],sha256:[11,Mu,St,[],[0,2],!1],hash160:[12,ZE,St,[],[0,2],!1],hash256:[13,Mu,St,[],[0,2],!1],txid:[14,!1,Mu,[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,XE,[],[0,2],!1],tapScriptSig:[20,G8,XE,[],[0,2],!1],tapLeafScript:[21,Ci,St,[],[0,2],!1],tapBip32Derivation:[22,Mu,ev,[],[0,2],!1],tapInternalKey:[23,!1,ll,[],[0,2],!1],tapMerkleRoot:[24,!1,Mu,[],[0,2],!1],proprietary:[252,St,St,[],[0,2],!1]},tv=["txid","sequence","index","witnessUtxo","nonWitnessUtxo","finalScriptSig","finalScriptWitness","unknown"],rv=["partialSig","finalScriptSig","finalScriptWitness","tapKeySig","tapScriptSig"],$u={redeemScript:[0,!1,St,[],[0,2],!1],witnessScript:[1,!1,St,[],[0,2],!1],bip32Derivation:[2,a0,hl,[],[0,2],!1],amount:[3,!1,CE,[2],[2],!0],script:[4,!1,St,[2],[2],!0],tapInternalKey:[5,!1,ll,[],[0,2],!1],tapTree:[6,!1,Y8,[],[0,2],!1],tapBip32Derivation:[7,ll,ev,[],[0,2],!1],proprietary:[252,St,St,[],[0,2],!1]},nv=[],QE=Gt(Qy,Et({key:PE(kr,Et({type:kr,key:Fe(null)})),value:Fe(kr)}));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 RM=Et({type:kr,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:He},value:u.encode(s)});else{let d=s.map(([f,h])=>[a.encode(f),u.encode(h)]);d.sort((f,h)=>Pu(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)=>Pu(o[0].key,s[0].key));for(let[o,s]of n.unknown)i.push({key:o,value:s})}QE.encodeStream(r,i)},decodeStream:r=>{let n=QE.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=${ve.encode(a)} value=${ve.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 yl=jt(d0(Ku),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)Io(e,vt.ecdsa);if(t.bip32Derivation)for(let[e]of t.bip32Derivation)Io(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}),gl=jt(d0($u),t=>{if(t.bip32Derivation)for(let[e]of t.bip32Derivation)Io(e,vt.ecdsa);return t}),iv=jt(d0(pl),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}),J8=Et({magic:ol(il(new Uint8Array([255])),"psbt"),global:iv,inputs:Gt("global/unsignedTx/inputs/length",yl),outputs:Gt(null,gl)}),X8=Et({magic:ol(il(new Uint8Array([255])),"psbt"),global:iv,inputs:Gt("global/inputCount",yl),outputs:Gt("global/outputCount",gl)}),UM=Et({magic:ol(il(new Uint8Array([255])),"psbt"),items:Gt(null,mn(Gt(Qy,VE([ME(kr),Fe(Xc)])),Oi.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 ov(t){let e=t&&t.global&&t.global.version||0;c0(e,pl,t.global);for(let s of t.inputs)c0(e,Ku,s);for(let s of t.outputs)c0(e,$u,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 ml(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(ve.decode(x[0])):x[0],typeof x[1]=="string"?d.decode(ve.decode(x[1])):x[1]]});let g={},y=(x,S,I)=>{if(g[x]===void 0){g[x]=[S,I];return}let A=ve.encode(d.encode(g[x][1])),O=ve.encode(d.encode(I));if(A!==O)throw new Error(`keyMap(${c}): same key=${x} oldVal=${A} newVal=${O}`)};for(let[x,S]of h){let I=ve.encode(u.encode(x));y(I,x,S)}for(let[x,S]of p){let I=ve.encode(u.encode(x));if(S===void 0){if(f)throw new Error(`Cannot remove signed field=${c}/${x}`);delete g[I]}else y(I,x,S)}o[c]=Object.values(g)}}else if(typeof o[s]=="string")o[s]=d.decode(ve.decode(o[s]));else if(f&&s in e&&r&&r[s]!==void 0&&!at(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(J8,ov),h0=jt(X8,ov);var Q8={encode(t){if(!(t.length!==2||t[0]!==1||!Ce(t[1])||ve.encode(t[1])!=="4e73"))return{type:"p2a",script:Ze.encode(t)}},decode:t=>{if(t.type==="p2a")return[1,ve.decode("4e73")]}};function Bo(t,e){try{return Io(t,e),!0}catch{return!1}}var eR={encode(t){if(!(t.length!==2||!Ce(t[0])||!Bo(t[0],vt.ecdsa)||t[1]!=="CHECKSIG"))return{type:"pk",pubkey:t[0]}},decode:t=>t.type==="pk"?[t.pubkey,"CHECKSIG"]:void 0},tR={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},rR={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},nR={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},iR={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},oR={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},sR={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},cR={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}},aR={encode(t){let e=t.length-1;if(t[e]!=="NUMEQUAL"||t[1]!=="CHECKSIG")return;let r=[],n=YE(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}},uR={encode(t){return{type:"unknown",script:Ze.encode(t)}},decode:t=>t.type==="unknown"?Ze.decode(t.script):void 0},dR=[Q8,eR,tR,rR,nR,iR,oR,sR,cR,aR,uR],fR=mn(Ze,Oi.match(dR)),Qe=jt(fR,t=>{if(t.type==="pk"&&!Bo(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)||!Bo(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(!Bo(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(!Bo(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 sv(t,e){if(!at(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(!at(n.hash,Jc(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&&sv(n,r)}if(e){let n=Qe.decode(e);n.type==="wsh"&&r&&sv(n,r)}}var Li=(t,e=Xr)=>{if(!Bo(t,vt.ecdsa))throw new Error("P2PKH: invalid publicKey");let r=Jc(t);return{type:"pkh",script:Qe.encode({type:"pkh",hash:r}),address:Zr(e).encode({type:"pkh",hash:r}),hash:r}};var Bs=(t,e=Xr)=>{if(!Bo(t,vt.ecdsa))throw new Error("P2WPKH: invalid publicKey");if(t.length===65)throw new Error("P2WPKH: uncompressed public key");let r=Jc(t);return{type:"wpkh",script:Qe.encode({type:"wpkh",hash:r}),address:Zr(e).encode({type:"wpkh",hash:r}),hash:r}};function lR(t,e,r=!1,n){let i=Qe.decode(t);if(i.type==="unknown"){if(n){let c=mn(Ze,Oi.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(at(s,dl))throw new Error("Unspendable taproot key in leaf script");if(at(s,e))throw new Error("Using P2TR with leaf script with same key as internal key is not supported")}}function av(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&&!at(t.tapMerkleRoot,He))throw new Error("P2TR: tapRoot leafScript cannot have tree");let d=typeof u=="string"?ve.decode(u):u;if(!Ce(d))throw new Error(`checkScript: wrong script type=${d}`);return lR(d,e,r,n),{type:"leaf",version:a,script:d,hash:Hu(d,a)}}if(t.length!==2&&(t=av(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 Pu(c,s)===-1&&([s,c]=[c,s]),{type:"branch",left:i,right:o,hash:Cu("TapBranch",s,c)}}var w0=192,Hu=(t,e=w0)=>Cu("TapLeaf",new Uint8Array([e]),lr.encode(t));function Rs(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"?ve.decode(t):t||dl;if(!Bo(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]=Lu(o,c),d=g0(s).map(f=>({...f,controlBlock:Ci.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=>[Ci.decode(f.controlBlock),Wn(f.script,new Uint8Array([f.version||w0]))]),tapMerkleRoot:c}}else{let s=Lu(o,He)[0];return{type:"tr",script:Qe.encode({type:"tr",pubkey:s}),address:Zr(r).encode({type:"tr",pubkey:s}),tweakedPubkey:s,tapInternalKey:o}}}var uv=IE(ke);function dv(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){dv(t,e);let n=t===0?tl:_s;return n.encode(r.bech32,[t].concat(n.toWords(e)))}function cv(t,e){return uv.encode(Wn(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 cv(e.hash,[t.pubKeyHash]);if(r==="sh")return cv(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=tl.decode(e),n.words[0]!==0)throw new Error(`bech32: wrong version=${n.words[0]}`)}catch{if(n=_s.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=tl.fromWords(o);if(dv(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=uv.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 wl=new Uint8Array(32),hR={amount:0xffffffffffffffffn,script:He},pR=t=>Math.ceil(t/4),yR=8,gR=2,Us=0,S0=4294967295,mR=Oi.decimal(yR),qu=(t,e)=>t===void 0?e:t;function xl(t){if(Array.isArray(t))return t.map(e=>xl(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,xl(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 Ro;(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"})(Ro||(Ro={}));function wR(t,e,r,n=He){return at(r,e)&&(t=WE(t,n),e=ul(t)),{privKey:t,pubKey:e}}function Os(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 Vu(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:qu(t.sequence,S0),finalScriptSig:qu(t.finalScriptSig,He)}}function x0(t){for(let e in t){let r=e;tv.includes(r)||delete t[r]}}var E0=Et({txid:Fe(32,!0),index:Be});function bR(t){if(typeof t!="number"||typeof Ro[t]!="string")throw new Error(`Invalid SigHash=${t}`);return t}function fv(t){let e=t&31;return{isAny:!!(t&je.ANYONECANPAY),isNone:e===je.NONE,isSingle:e===je.SINGLE}}function xR(t){if(t!==void 0&&{}.toString.call(t)!=="[object Object]")throw new Error(`Wrong object type for transaction options: ${t}`);let e={...t,version:qu(t.version,gR),lockTime:qu(t.lockTime,0),PSBTVersion:qu(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 lv(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&&(!at(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=Ds.fromRaw(Ni.encode(t.nonWitnessUtxo),{allowUnknownOutputs:!0,disableScriptCheck:!0,allowUnknownInputs:!0}),o=ve.encode(t.txid);if(i.isFinal&&i.id!==o)throw new Error(`nonWitnessUtxo: wrong txid, exp=${o} got=${i.id}`)}}return t}function bl(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 hv(t,e,r,n=!1,i=!1){let{nonWitnessUtxo:o,txid:s}=t;typeof o=="string"&&(o=ve.decode(o)),Ce(o)&&(o=Ni.decode(o)),!("nonWitnessUtxo"in t)&&o===void 0&&(o=e?.nonWitnessUtxo),typeof s=="string"&&(s=ve.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=ml(Ku,c,e,r,i),yl.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=bl(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 Ds=class t{constructor(e={}){this.global={},this.inputs=[],this.outputs=[];let r=this.opts=xR(e);r.lockTime!==Us&&(this.global.fallbackLocktime=r.lockTime),this.global.txVersion=r.version}static fromRaw(e,r={}){let n=Ni.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)=>lv({finalScriptSig:He,...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!==Us&&(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=>lv(f0(e,Ku,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,$u,o)),i={...this.global};return e===0?(i.unsignedTx=Is.decode(Is.encode({version:this.version,lockTime:this.lockTime,inputs:this.inputs.map(Vu).map(o=>({...o,finalScriptSig:He})),outputs:this.outputs.map(Os)})),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===Us&&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=Us,r=0,n=Us,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!==Us?n:this.global.fallbackLocktime||Us}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(Os);e+=4*kr.encode(this.outputs.length).length;for(let n of r)e+=32+4*lr.encode(n.script).length;this.hasWitnesses&&(e+=2),e+=4*kr.encode(this.inputs.length).length;for(let n of this.inputs)e+=160+4*lr.encode(n.finalScriptSig||He).length,this.hasWitnesses&&n.finalScriptWitness&&(e+=Zc.encode(n.finalScriptWitness).length);return e}get vsize(){return pR(this.weight)}toBytes(e=!1,r=!1){return Ni.encode({version:this.version,lockTime:this.lockTime,inputs:this.inputs.map(Vu).map(n=>({...n,finalScriptSig:e&&n.finalScriptSig||He})),outputs:this.outputs.map(Os),witnesses:this.inputs.map(n=>n.finalScriptWitness||[]),segwitFlag:r&&this.hasWitnesses})}get unsignedTx(){return this.toBytes(!1,!1)}get hex(){return ve.encode(this.toBytes(!0,this.hasWitnesses))}get hash(){if(!this.isFinal)throw new Error("Transaction is not finalized");return ve.encode(Di(this.toBytes(!0)))}get id(){if(!this.isFinal)throw new Error("Transaction is not finalized");return ve.encode(Di(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),xl(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(hv(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=rv)}this.inputs[e]=hv(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),xl(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=ve.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=ml($u,s,r,n,this.opts.allowUnknown),gl.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=nv)}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=bl(n);if(!i)throw new Error("Empty input amount");e+=i.amount}let r=this.outputs.map(Os);for(let n of r)e-=n.amount;return e}preimageLegacy(e,r,n){let{isAny:i,isNone:o,isSingle:s}=fv(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 NE.encode(1n);r=Ze.encode(Ze.decode(r).filter(d=>d!=="CODESEPARATOR"));let c=this.inputs.map(Vu).map((d,f)=>({...d,finalScriptSig:f===e?r:He}));i?c=[c[e]]:(o||s)&&(c=c.map((d,f)=>({...d,sequence:f===e?d.sequence:0})));let a=this.outputs.map(Os);o?a=[]:s&&(a=a.slice(0,e).fill(hR).concat([a[e]]));let u=Ni.encode({lockTime:this.lockTime,version:this.version,segwitFlag:!1,inputs:c,outputs:a});return Di(u,_o.encode(n))}preimageWitnessV0(e,r,n,i){let{isAny:o,isNone:s,isSingle:c}=fv(n),a=wl,u=wl,d=wl,f=this.inputs.map(Vu),h=this.outputs.map(Os);o||(a=Di(...f.map(E0.encode))),!o&&!c&&!s&&(u=Di(...f.map(g=>Be.encode(g.sequence)))),!c&&!s?d=Di(...h.map(ki.encode)):c&&e<h.length&&(d=Di(ki.encode(h[e])));let p=f[e];return Di(_o.encode(this.version),a,u,Fe(32,!0).encode(p.txid),Be.encode(p.index),lr.encode(r),Yc.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=[wn.encode(0),wn.encode(n),_o.encode(this.version),Be.encode(this.lockTime)],d=n===je.DEFAULT?je.ALL:n&3,f=n&je.ANYONECANPAY,h=this.inputs.map(Vu),p=this.outputs.map(Os);f!==je.ANYONECANPAY&&u.push(...[h.map(E0.encode),i.map(Yc.encode),r.map(lr.encode),h.map(y=>Be.encode(y.sequence))].map(y=>ke(Wn(...y)))),d===je.ALL&&u.push(ke(Wn(...p.map(ki.encode))));let g=(a?1:0)|(s?2:0);if(u.push(new Uint8Array([g])),f===je.ANYONECANPAY){let y=h[e];u.push(E0.encode(y),Yc.encode(i[e]),lr.encode(r[e]),Be.encode(y.sequence))}else u.push(Be.encode(e));return g&1&&u.push(ke(lr.encode(a||He))),d===je.SINGLE&&u.push(e<p.length?ke(ki.encode(p[e])):wl),s&&u.push(Hu(s,c),wn.encode(0),_o.encode(o)),Cu("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 g=e;for(let y of p)g=g.deriveChild(y);if(!at(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(bR):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=bl(o);if(s.txType==="taproot"){let d=this.inputs.map(bl),f=d.map(x=>x.script),h=d.map(x=>x.amount),p=!1,g=ul(e),y=o.tapMerkleRoot||He;if(o.tapInternalKey){let{pubKey:x,privKey:S}=wR(e,g,o.tapInternalKey,y),[I,A]=Lu(o.tapInternalKey,y);if(at(I,x)){let O=this.preimageWitnessV1(r,f,c,h),T=Wn(i0(O,S,i),c!==je.DEFAULT?new Uint8Array([c]):He);this.updateInput(r,{tapKeySig:T},!0),p=!0}}if(o.tapLeafScript){o.tapScriptSig=o.tapScriptSig||[];for(let[x,S]of o.tapLeafScript){let I=S.subarray(0,-1),A=Ze.decode(I),O=S[S.length-1],T=Hu(I,O);if(A.findIndex($=>Ce($)&&at($,g))===-1)continue;let q=this.preimageWitnessV1(r,f,c,h,void 0,I,O),j=Wn(i0(q,e,i),c!==je.DEFAULT?new Uint8Array([c]):He);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=n0(e),f=!1,h=Jc(d);for(let y of Ze.decode(s.lastScript))Ce(y)&&(at(y,d)||at(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=FE(p,e,this.opts.lowR);this.updateInput(r,{partialSig:[[d,Wn(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=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)=>Ci.encode(u[0]).length-Ci.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=Hu(f,h),y=r.tapScriptSig.filter(S=>at(S[0].leafHash,g)),x=[];if(p.type==="tr_ms"){let S=p.m,I=p.pubkeys,A=0;for(let O of I){let T=y.findIndex(M=>at(M[0].pubKey,O));if(A===S||T===-1){x.push(He);continue}x.push(y[T][1]),A++}if(A!==S)continue}else if(p.type==="tr_ns"){for(let S of p.pubkeys){let I=y.findIndex(A=>at(A[0].pubKey,S));I!==-1&&x.push(y[I][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:I},A])=>{let O=S.findIndex(T=>Ce(T)&&at(T,I));if(O===-1)throw new Error("finalize/taproot: cannot find position of pubkey in script");return{signature:A,pos:O}}).sort((I,A)=>I.pos-A.pos).map(I=>I.signature),!x.length)continue}else{let S=this.opts.customScripts;if(S)for(let I of S){if(!I.finalizeTaproot)continue;let A=Ze.decode(f),O=I.encode(A);if(O===void 0)continue;let T=I.finalizeTaproot(f,O,y);if(T){r.finalScriptWitness=T.concat(Ci.encode(u)),r.finalScriptSig=He,x0(r);return}}throw new Error("Finalize: Unknown tapLeafScript")}r.finalScriptWitness=x.reverse().concat([f,Ci.encode(u)]);break}if(!r.finalScriptWitness)throw new Error("finalize/taproot: empty witness")}else throw new Error("finalize/taproot: unknown input");r.finalScriptSig=He,x0(r);return}if(!r.partialSig||!r.partialSig.length)throw new Error("Not enough partial sign");let i=He,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=>at(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=He,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 He;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?Is.encode(this.global.unsignedTx):He,n=e.global.unsignedTx?Is.encode(e.global.unsignedTx):He;if(!at(r,n))throw new Error("Transaction/combine: different unsigned tx");this.global=ml(pl,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 pv(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,I){p&&(r+=","),p=!0,a&&S===void 0&&(S=null),u(S,f+"["+I+"]")}),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&&i.includes(I)||(g&&(r+=","),g=!0,r+=JSON.stringify(I),r+=":",u(d[I],f+"."+I))};if(f===""&&n)n.forEach(function(I){d.hasOwnProperty(I)&&y(I)});else{var x=Object.keys(d);c&&(x=x.filter(function(I){return d[I]!==void 0})),x.sort(),x.forEach(function(I){y(I)})}r+="}"}}}function yv(t,e){return pv(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_SIGNAL_DATA="INVALID_SIGNAL_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:pt,METHOD_NOT_SUPPORTED:El,INTERNAL_ERROR:vl,INVALID_DID_DOCUMENT:qe,INVALID_DID_UPDATE:le,INVALID_DID_URL:bK,INVALID_PREVIOUS_DID_PROOF:xK,INVALID_PUBLIC_KEY:EK,INVALID_PUBLIC_KEY_MULTIBASE:vK,INVALID_PUBLIC_KEY_LENGTH:SK,INVALID_PUBLIC_KEY_TYPE:AK,INVALID_SIGNATURE:TK,NOT_FOUND:gv,PROOF_VERIFICATION_ERROR:Pi,PROOF_GENERATION_ERROR:Oo,PROOF_SERIALIZATION_ERROR:mv,PROOF_PARSING_ERROR:_K,VERIFICATION_METHOD_ERROR:Sl,LATE_PUBLISHING_ERROR:Al,INVALID_SIDECAR_DATA:IK,MISSING_UPDATE_DATA:wv,INVALID_SIGNAL_DATA:Ns,MISSING_RESOLUTION_OPTIONS:BK,INVALID_OPTIONS:Fu}=A0,Dt=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)}},be=class extends Dt{constructor(e,r="MethodError",n){super(e,{type:r,name:r,data:n})}};var ut=class extends Dt{constructor(e,r="IdentifierError",n){super(e,{type:r,name:r,data:n})}},nt=class extends Dt{constructor(e,r="UpdateError",n){super(e,{type:r,name:r,data:n})}},fe=class extends Dt{constructor(e,r="ResolveError",n){super(e,{type:r,name:r,data:n})}};var Ve=class extends Dt{constructor(e,r="DidDocumentError",n){super(e,{type:r,name:r,data:n})}},Uo=class extends Dt{constructor(e,r="CryptosuiteError",n){super(e,{type:r,name:r,data:n})}},bn=class extends Dt{constructor(e,r="DataIntegrityProofError",n){super(e,{type:r,name:r,data:n})}},xn=class extends Dt{constructor(e,r="KeyPairError",n){super(e,{type:r,name:r,data:n})}},Gn=class extends Dt{constructor(e,r="SecretKeyError",n){super(e,{type:r,name:r,data:n})}},ks=class extends Dt{constructor(e,r="PublicKeyError",n){super(e,{type:r,name:r,data:n})}},En=class extends Dt{constructor(e,r="MultikeyError",n){super(e,{type:r,name:r,data:n})}};var Qc=class extends Dt{constructor(e,r="CanonicalizationError",n){super(e,{type:r,name:r,data:n})}};var ER=new Set(["jcs"]),vR=new Set(["hex","base58","base64urlnopad"]);function T0(t){let e=t.toLowerCase();if(!ER.has(e))throw new Qc(`Unsupported algorithm: ${t}`,"ALGORITHM_ERROR");return e}function _0(t){let e=t.toLowerCase();if(!vR.has(e))throw new Qc(`Unsupported encoding: ${t}`,"ENCODING_ERROR");return e}function tr(t,e="jcs"){switch(T0(e)){case"jcs":{let n=JSON.parse(JSON.stringify(t));return yv(n)}default:throw new Qc(`Unsupported algorithm: ${e}`,"ALGORITHM_ERROR")}}function Do(t){return ke(t)}function Qr(t,e="base64urlnopad"){switch(_0(e)){case"hex":return ve.encode(t);case"base58":return el.encode(t);case"base64urlnopad":return Ri.encode(t)}}function ea(t,e="base64urlnopad"){switch(_0(e)){case"hex":return ve.decode(t);case"base58":return el.decode(t);case"base64urlnopad":return Ri.decode(t)}}function zn(t,e="jcs"){return Do(tr(t,T0(e)))}function Yn(t,e){let r=T0(e?.algorithm??"jcs"),n=_0(e?.encoding??"base64urlnopad");return Qr(Do(tr(t,r)),n)}l();l();var I0={};Uf(I0,{JsonPatchError:()=>dt,_areEquals:()=>Gu,applyOperation:()=>Cs,applyPatch:()=>Ol,applyReducer:()=>IR,deepClone:()=>TR,getValueByPointer:()=>Rl,validate:()=>xv,validator:()=>Ul});l();l();var SR=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)}}(),AR=Object.prototype.hasOwnProperty;function _l(t,e){return AR.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 Jn(t){return t.indexOf("/")===-1&&t.indexOf("~")===-1?t:t.replace(/~/g,"~0").replace(/\//g,"~1")}function ju(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 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 Wu=function(t){SR(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 dt=Wu,TR=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=Cs(r,{op:"remove",path:this.from}).removed;return Cs(r,{op:"add",path:this.path,value:i}),{newDocument:r,removed:n}},copy:function(t,e,r){var n=Rl(r,this.from);return Cs(r,{op:"add",path:this.path,value:Mt(n)}),{newDocument:r}},test:function(t,e,r){return{newDocument:r,test:Gu(t[e],this.value)}},_get:function(t,e,r){return this.value=t[e],{newDocument:r}}},_R={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 Cs(t,r),r.value}function Cs(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=Gu(t,e.value),s.test===!1)throw new dt("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 dt("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=ju(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 dt("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 dt("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=_R[e.op].call(e,u,p,t);if(s.test===!1)throw new dt("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 dt("Test operation failed","TEST_OPERATION_FAILED",o,e,t);return s}if(u=u[p],r&&d<f&&(!u||typeof u!="object"))throw new dt("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 dt("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]=Cs(t,e[s],r,!0,i,s),t=o[s].newDocument;return o.newDocument=t,o}function IR(t,e,r){var n=Cs(t,e);if(n.test===!1)throw new dt("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 dt("Operation is not an object","OPERATION_NOT_AN_OBJECT",e,t,r);if(ta[t.op]){if(typeof t.path!="string")throw new dt("Operation `path` property is not a string","OPERATION_PATH_INVALID",e,t,r);if(t.path.indexOf("/")!==0&&t.path.length>0)throw new dt('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 dt("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 dt("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 dt("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 dt("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 dt("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=xv([s],r);if(c&&c.name==="OPERATION_PATH_UNRESOLVABLE")throw new dt("Cannot perform the operation from a path that does not exist","OPERATION_FROM_UNRESOLVABLE",e,t,r)}}}else throw new dt("Operation `op` property is not one of operations defined in RFC-6902","OPERATION_OP_INVALID",e,t,r)}function xv(t,e,r){try{if(!Array.isArray(t))throw new dt("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 dt)return i;throw i}}function Gu(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(!Gu(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],!Gu(t[s],e[s]))return!1;return!0}return t!==t&&e!==e}var O0={};Uf(O0,{compare:()=>CR,generate:()=>B0,observe:()=>NR,unobserve:()=>kR});l();var R0=new WeakMap,BR=function(){function t(e){this.observers=new Map,this.obj=e}return t}(),RR=function(){function t(e,r){this.callback=e,this.observer=r}return t}();function UR(t){return R0.get(t)}function OR(t,e){return t.observers.get(e)}function DR(t,e){t.observers.delete(e.callback)}function kR(t,e){e.unobserve()}function NR(t,e){var r=[],n,i=UR(t);if(!i)i=new BR(t),R0.set(t,i);else{var o=OR(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),DR(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 RR(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&&Ol(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=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)?U0(f,h,r,n+"/"+Jn(d),i):f!==h&&(c=!0,i&&r.push({op:"test",path:n+"/"+Jn(d),value:Mt(f)}),r.push({op:"replace",path:n+"/"+Jn(d),value:Mt(h)}))}else Array.isArray(t)===Array.isArray(e)?(i&&r.push({op:"test",path:n+"/"+Jn(d),value:Mt(f)}),r.push({op:"remove",path:n+"/"+Jn(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+"/"+Jn(d),value:Mt(e[d])})}}}function CR(t,e,r){r===void 0&&(r=!1);var n=[];return U0(t,e,n,"",r),n}var Ev=Object.assign({},I0,O0,{JsonPatchError:Wu,deepClone:Mt,escapePathComponent:Jn,unescapePathComponent:ju});var{applyPatch:LR,compare:PR,deepClone:MR}=Ev,KR=new Set(["__proto__","constructor","prototype"]);function vv(t){return t.split("/").map(e=>e.replace(/~1/g,"/").replace(/~0/g,"~")).find(e=>KR.has(e))}var $R=new Set(["add","remove","replace","move","copy","test"]),HR=new Set(["add","replace","test"]);function VR(t){if(!(t instanceof Error))return"";let{index:e,operation:r}=t;return`${typeof e=="number"&&r&&typeof r=="object"?` at operation ${e} (${String(r.op)} ${String(r.path)})`:""}: ${t.message}`}var ra=class{static apply(e,r,n={}){let i=n.mutate??!1,o=n.strict??!1,s=n.clone??MR,c=i?e:s(e),a=this.validateOperations(r,o);if(a)throw new be(`Invalid JSON Patch operations: ${a.message}`,"JSON_PATCH_APPLY_ERROR",{error:a});let u;try{u=LR(c,r,o,i)}catch(d){throw new be(`JSON Patch application failed${VR(d)}`,"JSON_PATCH_APPLY_ERROR",{error:d})}if(u.newDocument===void 0)throw new be("JSON Patch application failed: no document","JSON_PATCH_APPLY_ERROR",{result:u});return u.newDocument}static diff(e,r,n=""){let i=PR(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,r=!1){if(!Array.isArray(e))return new be("Operations must be an array","JSON_PATCH_VALIDATION_ERROR");for(let n of e){if(!n||typeof n!="object")return new be("Operation must be an object","JSON_PATCH_VALIDATION_ERROR");if(typeof n.op!="string")return new be("Operation.op must be a string","JSON_PATCH_VALIDATION_ERROR");if(typeof n.path!="string")return new be("Operation.path must be a string","JSON_PATCH_VALIDATION_ERROR");if(r&&!$R.has(n.op))return new be(`Operation.op is not an RFC 6902 operation: ${n.op}`,"JSON_PATCH_VALIDATION_ERROR");if(r&&HR.has(n.op)&&n.value===void 0)return new be(`Operation.value is required for op=${n.op}`,"JSON_PATCH_VALIDATION_ERROR");let i=vv(n.path);if(i)return new be(`Operation.path traverses prototype machinery: ${i}`,"JSON_PATCH_VALIDATION_ERROR");if((n.op==="move"||n.op==="copy")&&typeof n.from!="string")return new be(`Operation.from must be a string for op=${n.op}`,"JSON_PATCH_VALIDATION_ERROR");if(typeof n.from=="string"){let o=vv(n.from);if(o)return new be(`Operation.from traverses prototype machinery: ${o}`,"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 Mi=class{static toISOStringNonFractional(e=new Date){let r=e.getTime();if(Number.isNaN(r))throw new be(`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 be(`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],I=f%4===0&&f%100!==0||f%400===0,A=h===2&&I?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 D0(t,e,r){Object.defineProperty(t,e,{value:r,writable:!0,enumerable:!0,configurable:!0})}var Ls=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 be("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 be("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 be("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 rr=class extends be{constructor(e,r="BeaconError",n){super(e,r,n)}},Sv=class extends be{constructor(e,r="SingletonBeaconError",n){super(e,r,n)}},Av=class extends be{constructor(e,r="AggregateBeaconError",n){super(e,r,n)}},Tv=class extends be{constructor(e,r="CASBeaconError",n){super(e,r,n)}},zu=class extends be{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 XR={bech32:"bcrt",pubKeyHash:111,scriptHash:196,wif:239};function ko(t){switch(t){case"bitcoin":return Xr;case"testnet3":case"testnet4":case"signet":case"mutinynet":return o0;case"regtest":return XR;default:throw new Error(`Unknown network "${t}"`)}}l();var Yu=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 N0="0000000000000000000000000000000000000000000000000000000000000000",C0="4a5e1e4baab89f3a32518a88c31bc87f618f76673e2cc77ab2127b7afdeda33b";l();var L0;(function(t){t[t.hex=0]="hex",t[t.json=1]="json",t[t.jsonext=2]="jsonext",t[t.jsonextprev=3]="jsonextprev"})(L0||(L0={}));var P0=new Yu(5);var e6=160,t6=155,r6=240,n6={p2pkh:r6,p2wpkh:t6,p2tr:e6},Bv={p2pkh:34,p2wpkh:31,p2tr:43},Rv={p2pkh:546,p2wpkh:294,p2tr:330};function Uv(t,e){return n6[t]-Bv[t]+Bv[e]}function Ov(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 rr(`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 i6(t,e,r){return t==="p2pkh"?Li(e,r).address:t==="p2wpkh"?Bs(e,r).address:Rs(e.slice(1,33),void 0,r).address}function Dv(t,e,r){if(!r||r===t)return t;try{Zr(e).decode(r)}catch{throw new rr(`Invalid change address "${r}" for network "${e}".`,"INVALID_CHANGE_ADDRESS",{changeAddress:r,network:e})}return r}function kv(t,e){try{return Ov(t,e)}catch{return"p2tr"}}function Nv(t){return Ze.encode(["RETURN",t])}var M0=546;function o6(t){return t.status.confirmed===!0}function s6(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 c6(t,e){if(!t.length)throw new rr("No UTXOs found, please fund address!","UNFUNDED_BEACON_ADDRESS",{address:e});let r=t.filter(o6),n=r.filter(i=>i.value>M0);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 ${M0}-sat dust limit`;throw new rr(`No spendable UTXO at beacon address: ${i}.`,"NO_SPENDABLE_BEACON_UTXO",{address:e,total:t.length,confirmed:r.length,dustLimit:M0})}return[...n].sort(s6)[0]}async function Cv(t,e){let r=await e.rest.address.getUtxos(t),n=c6(r,t),i=await e.rest.transaction.getHex(n.txid);return{utxo:n,prevTxBytes:Ir(i)}}async function Q9(t){let e=t.feeEstimator??P0,{utxo:r,prevTxBytes:n}=await Cv(t.beaconAddress,t.bitcoin),i=Dv(t.beaconAddress,t.network,t.changeAddress),o=Qe.encode(Zr(t.network).decode(t.beaconAddress)),s=kv(i,t.network),c=await e.estimateFee(Uv("p2tr",s));if(BigInt(r.value)<=c)throw new rr(`UTXO value (${r.value}) insufficient to cover fee (${c}).`,"INSUFFICIENT_FUNDS",{address:t.beaconAddress,valueSats:r.value,feeSats:c});let a=new Ds({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(Rv[s])&&a.addOutputAddress(i,u,t.network),a.addOutput({script:Nv(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 a6(t,e,r,n,i,o){let s=n.publicKey;if(r==="p2pkh"){let u=Ro.ALL,d=t.preimageLegacy(e,i,u),f=n.sign(d,"ecdsa"),h=ht(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 rr(`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=Ro.ALL,h=t.preimageWitnessV0(e,d,f,o),p=n.sign(h,"ecdsa"),g=ht(p,new Uint8Array([f]));return t.updateInput(e,{partialSig:[[s,g]]},!0),t.finalize(),t.hex}let c=t.preimageWitnessV1(e,[i],Ro.DEFAULT,[o]),a=n.sign(c,"bip341");return t.updateInput(e,{tapKeySig:a}),t.finalize(),t.hex}var No=class{service;did;constructor(e,r){this.service=e,this.did=r}async buildSignAndBroadcast(e,r,n,i){let o=i?.feeEstimator??P0,s=this.service.serviceEndpoint.replace("bitcoin:",""),{utxo:c,prevTxBytes:a}=await Cv(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=Ov(e.beaconAddress,r),o=Dv(e.beaconAddress,r,e.changeAddress),s=i6(i,n,r);if(s!==e.beaconAddress)throw new rr(`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=kv(o,r),a=await e.feeEstimator.estimateFee(Uv(i,c)),u=BigInt(e.utxo.value);if(u<=a)throw new rr(`UTXO value (${e.utxo.value}) insufficient to cover fee (${a}).`,"INSUFFICIENT_FUNDS",{address:e.beaconAddress,valueSats:e.utxo.value,feeSats:a});let d=new Ds({allowUnknownOutputs:!0}),f;if(i==="p2pkh")f=Li(n,r).script,d.addInput({txid:e.utxo.txid,index:e.utxo.vout,nonWitnessUtxo:e.prevTxBytes});else if(i==="p2wpkh")f=Bs(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=Rs(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(Rv[c])&&d.addOutputAddress(o,h,r),d.addOutput({script:Nv(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 a6(e.tx,0,e.scriptKind,r,e.prevOutScripts[0],e.prevOutValues[0])}async broadcastRawTx(e,r){return e.rest.transaction.send(r)}};l();var kl=class extends No{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(ea(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=Yn(e),c={[o]:s},a=Do(tr(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 Nl=class extends No{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=Do(tr(e)),s=await this.buildSignAndBroadcast(o,r,n,i);return{signedUpdate:e,txid:s}}};l();l();l();var u6=new Uint8Array(32),K0=1n<<BigInt(256),Lv=(()=>{let t=new Array(257),e=K0>>1n;for(let r=0;r<256;r++)t[r]=e,e>>=1n;return t[256]=0n,t})();l();l();l();function Ju(t){return t instanceof Uint8Array||ArrayBuffer.isView(t)&&t.constructor.name==="Uint8Array"}function Xn(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=Ju(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");Xn(t.outputLen),Xn(t.blockLen)}function ia(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 Mv(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 Ps(...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 vn(t,e){return t<<32-e|t>>>e}var Kv=typeof Uint8Array.from([]).toHex=="function"&&typeof Uint8Array.fromHex=="function",d6=Array.from({length:256},(t,e)=>e.toString(16).padStart(2,"0"));function Ms(t){if(_e(t),Kv)return t.toHex();let e="";for(let r=0;r<t.length;r++)e+=d6[t[r]];return e}var Ki={_0:48,_9:57,A:65,F:70,a:97,f:102};function Pv(t){if(t>=Ki._0&&t<=Ki._9)return t-Ki._0;if(t>=Ki.A&&t<=Ki.F)return t-(Ki.A-10);if(t>=Ki.a&&t<=Ki.f)return t-(Ki.a-10)}function Ks(t){if(typeof t!="string")throw new Error("hex string expected, got "+typeof t);if(Kv)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=Pv(t.charCodeAt(o)),c=Pv(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 hr(...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 $v(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 $s(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 Hv=t=>({oid:Uint8Array.from([6,9,96,134,72,1,101,3,4,2,t])});var H0=BigInt(0),$0=BigInt(1);function Xu(t,e=""){if(typeof t!="boolean"){let r=e&&`"${e}" `;throw new Error(r+"expected boolean, got type="+typeof t)}return t}function Vv(t){if(typeof t=="bigint"){if(!Pl(t))throw new Error("positive bigint expected, got "+t)}else Xn(t);return t}function Zu(t){let e=Vv(t).toString(16);return e.length&1?"0"+e:e}function qv(t){if(typeof t!="string")throw new Error("hex string expected, got "+typeof t);return t===""?H0:BigInt("0x"+t)}function Co(t){return qv(Ms(t))}function V0(t){return qv(Ms(f6(_e(t)).reverse()))}function Ml(t,e){Xn(e),t=Vv(t);let r=Ks(t.toString(16).padStart(e*2,"0"));if(r.length!==e)throw new Error("number too large");return r}function q0(t,e){return Ml(t,e).reverse()}function oa(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 f6(t){return Uint8Array.from(t)}function Fv(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"&&H0<=t;function l6(t,e,r){return Pl(t)&&Pl(e)&&Pl(r)&&e<=t&&t<r}function jv(t,e,r,n){if(!l6(e,r,n))throw new Error("expected valid "+t+": "+r+" <= n < "+n+", got "+e)}function F0(t){let e;for(e=0;t>H0;t>>=$0,e+=1);return e}var Qu=t=>($0<<BigInt(t))-$0;function Wv(t,e,r){if(Xn(t,"hashLen"),Xn(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,hr(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 I=a.slice();S.push(I),x+=a.length}return hr(...S)};return(x,S)=>{f(),p(x);let I;for(;!(I=S(g()));)p();return f(),I}}function ed(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 W0(t){return t.length===32}function Lo(t){if(!W0(t))throw new RangeError(`Invalid hash: expected ${32} bytes, got ${t.length}`)}function Nr(...t){return ke(ht(...t))}function td(t){Lo(t);let e=0n;for(let r of t)e=e<<8n|BigInt(r);return e}function G0(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 Kl(t){Lo(t);let e="";for(let r of t)e+=r.toString(16).padStart(2,"0");return e}function z0(t,e){return!W0(t)||!W0(e)?!1:oa(t,e)}function rd(t){return Lo(t),Ri.encode(t)}function Po(t){let e=Ri.decode(t);if(e.length!==32)throw new RangeError(`Invalid base64url hash: expected ${32} decoded bytes, got ${e.length}`);return e}l();l();var Gv;(function(t){t[t.Pending=0]="Pending",t[t.Valid=1]="Valid",t[t.Invalid=2]="Invalid"})(Gv||(Gv={}));l();l();var Zn=256;function Hs(t,e){return Number(t>>BigInt(Zn-1-e)&1n)}var Hl=(()=>{let t=new Array(Zn+1),e=new Uint8Array(32);for(let r=0;r<=Zn;r++)e=Nr(e,e),t[r]=e;return t})();function $l(t,e){if(t.length===0)return Hl[e];if(e===0)return t[0].leaf;let r=Zn-e,n=[],i=[];for(let o of t)(Hs(o.index,r)===0?n:i).push(o);return Nr($l(n,e-1),$l(i,e-1))}function zv(t){return $l(t,Zn)}function Yv(t,e){let r=0n,n=[];for(let i=1;i<=Zn;i++){let o=Zn-i,s=[];for(let c of t){if(c.index===e)continue;let a=!0;for(let u=0;u<o;u++)if(Hs(c.index,u)!==Hs(e,u)){a=!1;break}a&&Hs(c.index,o)!==Hs(e,o)&&s.push(c)}s.length===0?r|=1n<<BigInt(Zn-1-o):n.push($l(s,i-1))}return{collapsed:r,hashes:n}}function Jv(t,e,r,n,i){let o=n,s=0;for(let c=0;c<Zn;c++){let a=Zn-1-c,u;if(Hs(t,a)===1)u=Hl[c];else{if(s>=e.length)return!1;u=e[s++]}o=Hs(r,a)===1?Nr(u,o):Nr(o,u)}return s===e.length&&z0(o,i)}l();var h6=new TextEncoder;function nd(t){return td(Nr(h6.encode(t)))}function Vl(t,e){return e!==void 0&&Lo(e),t!==void 0&&e!==void 0?Nr(Nr(t),e):t!==void 0?Nr(Nr(t)):e!==void 0?e:Hl[0]}l();function Xv(t,e,r){let n={id:rd(t),collapsed:rd(G0(e.collapsed)),hashes:e.hashes.map(i=>rd(i))};return r?.nonce!==void 0&&(n.nonce=Ri.encode(r.nonce)),r?.updateId!==void 0&&(n.updateId=rd(r.updateId)),n}function p6(t){let e={rootHash:Po(t.id),collapsed:td(Po(t.collapsed)),hashes:t.hashes.map(r=>Po(r))};return t.nonce!==void 0&&(e.nonce=Ri.decode(t.nonce)),t.updateId!==void 0&&(e.updateId=Po(t.updateId)),e}function Zv(t,e){let r;try{r=p6(t)}catch{return!1}let n=Vl(r.nonce,r.updateId);return Jv(r.collapsed,r.hashes,nd(e),n,r.rootHash)}l();var ql=class{#e=new Map;#t=null;#r=null;addEntries(e){for(let r of e){r.updateId!==void 0&&Lo(r.updateId);let n=nd(r.did);if(this.#e.has(n))throw new RangeError(`Duplicate DID index for: ${r.did}`);this.#e.set(n,r)}this.#t=null,this.#r=null}finalize(){let e=[];for(let[r,n]of this.#e)n.nonce===void 0&&n.updateId===void 0||e.push({index:r,leaf:Vl(n.nonce,n.updateId)});this.#t=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){if(this.#t===null||this.#r===null)throw new Error("Tree not finalized: call finalize() first");let r=nd(e),n=this.#e.get(r),i=Yv(this.#t,r);return Xv(this.#r,i,{nonce:n?.nonce,updateId:n?.updateId})}reset(){this.#t=null,this.#r=null}};function y6(t){try{return Kl(Po(t.id))}catch{return}}var Fl=class extends No{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(y6(c)!==s.signalBytes)throw new zu(`SMT proof id does not equal the signal root ${s.signalBytes}.`,Ns,{smtProof:c,did:o,smtRootHash:s.signalBytes});if(!Zv(c,o))throw new zu(`SMT proof verification failed for the signal root ${s.signalBytes}.`,Ns,{smtProof:c,did:o,smtRootHash:s.signalBytes});if(c.updateId===void 0)continue;let a=Kl(Po(c.updateId)),u=r.updateMap.get(a);if(!u){i.push({kind:"NeedSignedUpdate",updateHash:a,beaconServiceId:this.service.id});continue}n.push([u,s.blockMetadata])}return{updates:n,needs:i}}async broadcastSignal(e,r,n,i){let o=this.did,s=Br(32),c=new ql;c.addEntries([{did:o,nonce:s,updateId:zn(e)}]),c.finalize();let a=c.proof(o),u=await this.buildSignAndBroadcast(c.rootHash,r,n,i);return{signedUpdate:e,txid:u,proof:a}}};var sa=class{static establish(e,r){switch(e.type){case"SingletonBeacon":return new Nl(e,r);case"CASBeacon":return new kl(e,r);case"SMTBeacon":return new Fl(e,r);default:throw new be("Invalid Beacon Type","INVALID_BEACON_ERROR",e)}}};l();l();l();l();l();l();var Hi;(function(t){t.authentication="authentication",t.assertionMethod="assertionMethod",t.keyAgreement="keyAgreement",t.capabilityInvocation="capabilityInvocation",t.capabilityDelegation="capabilityDelegation"})(Hi||(Hi={}));l();var yt={"@context":"https://w3id.org/did-resolution/v1",didResolutionMetadata:{},didDocument:null,didDocumentMetadata:{}};l();var xe=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}};xe.METHOD_PATTERN="([a-z0-9]+)";xe.PCT_ENCODED_PATTERN="(?:%[0-9a-fA-F]{2})";xe.ID_CHAR_PATTERN=`(?:[a-zA-Z0-9._-]|${xe.PCT_ENCODED_PATTERN})`;xe.METHOD_ID_PATTERN=`((?:${xe.ID_CHAR_PATTERN}*:)*(${xe.ID_CHAR_PATTERN}+))`;xe.PATH_PATTERN="(/[^#?]*)?";xe.QUERY_PATTERN="([?][^#]*)?";xe.FRAGMENT_PATTERN="(#.*)?";xe.DID_URI_PATTERN=new RegExp(`^did:(?<method>${xe.METHOD_PATTERN}):(?<id>${xe.METHOD_ID_PATTERN})(?<path>${xe.PATH_PATTERN})(?<query>${xe.QUERY_PATTERN})(?<fragment>${xe.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=Kn(e1(),1);l();l();l();l();var ZH=new Uint8Array(0);function t1(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 ca(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(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,I=g.length;S!==I&&g[S]===0;)S++,y++;for(var A=(I-S)*d+1>>>0,O=new Uint8Array(A);S!==I;){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 I=(g.length-y)*u+1>>>0,A=new Uint8Array(I);g[y];){var O=r[g.charCodeAt(y)];if(O===255)return;for(var T=0,M=I-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=I-S;q!==I&&A[q]===0;)q++;for(var j=new Uint8Array(x+(I-q)),$=x;q!==I;)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 E6=x6,v6=E6,r1=v6;var Z0=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")}},Q0=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 n1(this,e)}},eg=class{decoders;constructor(e){this.decoders=e}or(e){return n1(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 n1(t,e){return new eg({...t.decoders??{[t.prefix]:t},...e.decoders??{[e.prefix]:e}})}var tg=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 Z0(e,r,n),this.decoder=new Q0(e,r,i)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}};function i1({name:t,prefix:e,encode:r,decode:n}){return new tg(t,e,r,n)}function rg({name:t,prefix:e,alphabet:r}){let{encode:n,decode:i}=r1(r,t);return i1({prefix:e,name:t,encode:n,decode:o=>ca(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 nr({name:t,prefix:e,bitsPerChar:r,alphabet:n}){return i1({prefix:e,name:t,encode(i){return A6(i,n,r)},decode(i){return S6(i,n,r,t)}})}var id=nr({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),cV=nr({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),aV=nr({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),uV=nr({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),dV=nr({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),fV=nr({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),lV=nr({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),hV=nr({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),ng=nr({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});l();var pr=rg({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),mV=rg({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});l();var EV=nr({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),vV=nr({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),Qn=nr({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),SV=nr({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});l();function o1(t){return t.byteOffset!==0||t.byteLength!==t.buffer.byteLength}function s1(t){return typeof t!="object"||t===null?!1:typeof t[Symbol.asyncIterator]=="function"}function aa(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())})},c1=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,Vs=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(!s1(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 pr.baseDecode(this.data).buffer;case"Base64Url":return Qn.baseDecode(this.data).buffer;case"BufferSource":{if(aa(this.data)==="ArrayBuffer")return this.data;if(ArrayBuffer.isView(this.data))return o1(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 ng.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 pr.baseEncode(e)}case"Multibase":return this.data.substring(1);case"Uint8Array":return pr.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 Qn.baseEncode(e)}case"BufferSource":{let e=this.toUint8Array();return Qn.baseEncode(e)}case"Object":{let e=JSON.stringify(this.data),r=Wl.encode(e);return Qn.baseEncode(r)}case"String":{let e=Wl.encode(this.data);return Qn.baseEncode(e)}case"Uint8Array":return Qn.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=c1(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=Qn.baseDecode(this.data),r=Vs.decode(e);return JSON.parse(r)}case"String":return JSON.parse(this.data);case"Uint8Array":{let e=Vs.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 Vs.decode(this.data);case"Base64Url":{let e=Qn.baseDecode(this.data);return Vs.decode(e)}case"Object":return JSON.stringify(this.data);case"Uint8Array":return Vs.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=c1(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+=Vs.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+=Vs.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 ng.baseDecode(this.data);case"Base58Btc":return pr.baseDecode(this.data);case"Base64Url":return Qn.baseDecode(this.data);case"BufferSource":{let e=aa(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 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 ig=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)}},T6=new ig;typeof window<"u"&&(window.web5logger=T6);l();l();l();l();var Vi={};Uf(Vi,{decode:()=>ua,encodeTo:()=>qs,encodingLength:()=>Fs});l();l();var _6=d1,a1=128,I6=127,B6=~I6,R6=Math.pow(2,31);function d1(t,e,r){e=e||[],r=r||0;for(var n=r;t>=R6;)e[r++]=t&255|a1,t/=128;for(;t&B6;)e[r++]=t&255|a1,t>>>=7;return e[r]=t|0,d1.bytes=r-n+1,e}var U6=og,O6=128,u1=127;function og(t,n){var r=0,n=n||0,i=0,o=n,s,c=t.length;do{if(o>=c)throw og.bytes=0,new RangeError("Could not decode varint");s=t[o++],r+=i<28?(s&u1)<<i:(s&u1)*Math.pow(2,i),i+=7}while(s>=O6);return og.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,cd=q6;function ua(t,e=0){return[cd.decode(t,e),cd.decode.bytes]}function qs(t,e,r=0){return cd.encode(t,e,r),e}function Fs(t){return cd.encodingLength(t)}function sg(t,e){let r=e.byteLength,n=Fs(t),i=n+Fs(r),o=new Uint8Array(i+r);return qs(t,o,0),qs(r,o,n),o.set(e,i),new da(t,r,e,o)}function f1(t){let e=ca(t),[r,n]=ua(e),[i,o]=ua(e.subarray(n)),s=e.subarray(n+o);if(s.byteLength!==i)throw new Error("Incorrect length");return new da(r,i,s,e)}function l1(t,e){if(t===e)return!0;{let r=e;return t.code===r.code&&t.size===r.size&&r.bytes instanceof Uint8Array&&t1(t.bytes,r.bytes)}}var da=class{code;size;digest;bytes;constructor(e,r,n,i){this.code=e,this.size=r,this.digest=n,this.bytes=i}};l();function h1(t,e){let{bytes:r,version:n}=t;switch(n){case 0:return j6(r,ag(t),e??pr.encoder);default:return W6(r,ag(t),e??id.encoder)}}var p1=new WeakMap;function ag(t){let e=p1.get(t);if(e==null){let r=new Map;return p1.set(t,r),r}return e}var ug=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!==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=sg(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&&l1(e.multihash,n.multihash)}toString(e){return h1(this,e)}toJSON(){return{"/":h1(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??y1(n,i,o.bytes))}else if(r[z6]===!0){let{version:n,multihash:i,code:o}=r,s=f1(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=y1(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=ca(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 da(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]=ua(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]=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 ag(o).set(n,e),o}};function F6(t,e){switch(t[0]){case"Q":{let r=e??pr;return[pr.prefix,r.decode(`${pr.prefix}${t}`)]}case pr.prefix:{let r=e??pr;return[pr.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 j6(t,e,r){let{prefix:n}=r;if(n!==pr.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 ad=112,G6=18;function y1(t,e,r){let n=Fs(t),i=n+Fs(e),o=new Uint8Array(i+r.byteLength);return qs(t,o,0),qs(e,o,n),o.set(r,i),o}var z6=Symbol.for("@ipld/js-cid/CID");l();l();l();l();l();l();var zt=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=Vi.encodingLength(n),c=new Uint8Array(s+i.byteLength);return c.set(i,s),Vi.encodeTo(n,c),c}static getCodeFromData(e){let{prefixedData:r}=e,[n,i]=Vi.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]=Vi.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}}};zt.codeToName=new Map;zt.nameToCode=new Map;zt.registerCodec({code:237,name:"ed25519-pub"});zt.registerCodec({code:4864,name:"ed25519-priv"});zt.registerCodec({code:236,name:"x25519-pub"});zt.registerCodec({code:4866,name:"x25519-priv"});zt.registerCodec({code:231,name:"secp256k1-pub"});zt.registerCodec({code:4865,name:"secp256k1-priv"});l();function dg(t){Object.keys(t).forEach(e=>{t[e]===void 0?delete t[e]:typeof t[e]=="object"&&dg(t[e])})}l();var tO=Kn(rm(),1),oc=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 oc(this,void 0,void 0,function*(){this.store.clear()})}close(){return oc(this,void 0,void 0,function*(){})}delete(e){return oc(this,void 0,void 0,function*(){return this.store.delete(e)})}get(e){return oc(this,void 0,void 0,function*(){return this.store.get(e)})}has(e){return oc(this,void 0,void 0,function*(){return this.store.has(e)})}list(){return oc(this,void 0,void 0,function*(){return Array.from(this.store.values())})}set(e,r){return oc(this,void 0,void 0,function*(){this.store.set(e,r)})}};l();l();var w4=Kn(pw(),1);var b4=Kn(pw(),1);l();l();l();l();l();function x4(t){return t instanceof Uint8Array||t!=null&&typeof t=="object"&&t.constructor.name==="Uint8Array"}function yw(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 gw(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 vT(t,e){yw(t);let r=e.outputLen;if(t.length<r)throw new Error(`digestInto() expects output buffer of length at least ${r}`)}l();l();var La=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;var Qh=t=>new DataView(t.buffer,t.byteOffset,t.byteLength),Bn=(t,e)=>t<<32-e|t>>>e;var Yj=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 mw(t){return typeof t=="string"&&(t=E4(t)),yw(t),t}var Zh=class{clone(){return this._cloneInto()}},Jj={}.toString;function ST(t){let e=n=>t().update(mw(n)).digest(),r=t();return e.outputLen=r.outputLen,e.blockLen=r.blockLen,e.create=()=>t(),e}function AT(t=32){if(La&&typeof La.getRandomValues=="function")return La.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 TT=(t,e,r)=>t&e^~t&r,_T=(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){gw(this);let{view:r,buffer:n,blockLen:i}=this;e=mw(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){gw(this),vT(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]),Jo=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),Xo=new Uint32Array(64),ww=class extends ep{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+TT(c,a,u)+S4[f]+Xo[f]|0,y=(Bn(n,2)^Bn(n,13)^Bn(n,22))+_T(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 Zo=ST(()=>new ww);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())})},Pa=class{static digest(e){return A4(this,arguments,void 0,function*({data:r}){return Zo(r)})}};l();var ui=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 ui{digest(e){return T4(this,arguments,void 0,function*({algorithm:r,data:n}){switch(r){case"SHA-256":return yield Pa.digest({data:n})}})}};l();l();l();l();l();l();function IT(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 bw(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 BT(t){if(typeof t!="function"||typeof t.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");IT(t.outputLen),IT(t.blockLen)}function Ma(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 RT(t,e){bw(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 UT(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),Rn=(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 xw(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=xw(t)),!UT(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(!UT(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 Ka=class{clone(){return this._cloneInto()}},EW={}.toString;function op(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(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 $a=class extends Ka{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){Ma(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=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){Ma(this),RT(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]),Qo=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),es=new Uint32Array(64),Ew=class extends $a{constructor(){super(64,32,8,!1),this.A=Qo[0]|0,this.B=Qo[1]|0,this.C=Qo[2]|0,this.D=Qo[3]|0,this.E=Qo[4]|0,this.F=Qo[5]|0,this.G=Qo[6]|0,this.H=Qo[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)es[f]=e.getUint32(r,!1);for(let f=16;f<64;f++){let h=es[f-15],p=es[f-2],g=Rn(h,7)^Rn(h,18)^h>>>3,y=Rn(p,17)^Rn(p,19)^p>>>10;es[f]=y+es[f-7]+g+es[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=Rn(c,6)^Rn(c,11)^Rn(c,25),p=d+h+R4(c,a,u)+O4[f]+es[f]|0,y=(Rn(n,2)^Rn(n,13)^Rn(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+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(){es.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}};var sp=op(()=>new Ew);l();var ap={};Uf(ap,{bitGet:()=>M4,bitLen:()=>P4,bitMask:()=>qd,bitSet:()=>K4,bytesToHex:()=>to,bytesToNumberBE:()=>ro,bytesToNumberLE:()=>On,concatBytes:()=>io,createHmacDrbg:()=>Aw,ensureBytes:()=>Ge,equalBytes:()=>C4,hexToBytes:()=>mc,hexToNumber:()=>Sw,isBytes:()=>Un,numberToBytesBE:()=>gr,numberToBytesLE:()=>no,numberToHexUnpadded:()=>NT,numberToVarBytesBE:()=>N4,utf8ToBytes:()=>L4,validateObject:()=>sn});l();var kT=BigInt(0),cp=BigInt(1),D4=BigInt(2);function Un(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 to(t){if(!Un(t))throw new Error("Uint8Array expected");let e="";for(let r=0;r<t.length;r++)e+=k4[t[r]];return e}function NT(t){let e=t.toString(16);return e.length&1?`0${e}`:e}function Sw(t){if(typeof t!="string")throw new Error("hex string expected, got "+typeof t);return BigInt(t===""?"0":`0x${t}`)}var eo={_0:48,_9:57,_A:65,_F:70,_a:97,_f:102};function OT(t){if(t>=eo._0&&t<=eo._9)return t-eo._0;if(t>=eo._A&&t<=eo._F)return t-(eo._A-10);if(t>=eo._a&&t<=eo._f)return t-(eo._a-10)}function mc(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=OT(t.charCodeAt(o)),c=OT(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 ro(t){return Sw(to(t))}function On(t){if(!Un(t))throw new Error("Uint8Array expected");return Sw(to(Uint8Array.from(t).reverse()))}function gr(t,e){return mc(t.toString(16).padStart(e*2,"0"))}function no(t,e){return gr(t,e).reverse()}function N4(t){return mc(NT(t))}function Ge(t,e,r){let n;if(typeof e=="string")try{n=mc(e)}catch(o){throw new Error(`${t} must be valid hex string, got "${e}". Cause: ${o}`)}else if(Un(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 io(...t){let e=0;for(let i=0;i<t.length;i++){let o=t[i];if(!Un(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>kT;t>>=cp,e+=1);return e}function M4(t,e){return t>>BigInt(e)&cp}var K4=(t,e,r)=>t|(r?cp:kT)<<BigInt(e),qd=t=>(D4<<BigInt(t-1))-cp,vw=t=>new Uint8Array(t),DT=t=>Uint8Array.from(t);function Aw(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=vw(t),i=vw(t),o=0,s=()=>{n.fill(1),i.fill(0),o=0},c=(...f)=>r(i,n,...f),a=(f=vw())=>{i=c(DT([0]),f),n=c(),f.length!==0&&(i=c(DT([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 io(...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"||Un(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 _t=BigInt(0),et=BigInt(1),wc=BigInt(2),H4=BigInt(3),Tw=BigInt(4),CT=BigInt(5),LT=BigInt(8),V4=BigInt(9),q4=BigInt(16);function Re(t,e){let r=t%e;return r>=_t?r:e+r}function _w(t,e,r){if(r<=_t||e<_t)throw new Error("Expected power/modulo > 0");if(r===et)return _t;let n=et;for(;e>_t;)e&et&&(n=n*t%r),t=t*t%r,e>>=et;return n}function ze(t,e,r){let n=t;for(;e-- >_t;)n*=n,n%=r;return n}function up(t,e){if(t===_t||e<=_t)throw new Error(`invert: expected positive integers, got n=${t} mod=${e}`);let r=Re(t,e),n=e,i=_t,o=et,s=et,c=_t;for(;r!==_t;){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)/wc,r,n,i;for(r=t-et,n=0;r%wc===_t;r/=wc,n++);for(i=wc;i<t&&_w(i,e,t)!==t-et;i++);if(n===1){let s=(t+et)/Tw;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)/wc;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 j4(t){if(t%Tw===H4){let e=(t+et)/Tw;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%LT===CT){let e=(t-CT)/LT;return function(n,i){let o=n.mul(i,wc),s=n.pow(o,e),c=n.mul(i,s),a=n.mul(n.mul(c,wc),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 PT=(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 Iw(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<_t)throw new Error("Expected power > 0");if(r===_t)return t.ONE;if(r===et)return e;let n=t.ONE,i=e;for(;r>_t;)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 Bw(t,e){let r=e!==void 0?e:t.toString(2).length,n=Math.ceil(r/8);return{nBitLength:r,nByteLength:n}}function Ha(t,e,r=!1,n={}){if(t<=_t)throw new Error(`Expected Field ORDER > 0, got ${t}`);let{nBitLength:i,nByteLength:o}=Bw(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:qd(i),ZERO:_t,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 _t<=a&&a<t},is0:a=>a===_t,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?no(a,o):gr(a,o),fromBytes:a=>{if(a.length!==o)throw new Error(`Fp.fromBytes: expected ${o}, got ${a.length}`);return r?On(a):ro(a)}});return Object.freeze(c)}function MT(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 KT(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 Rw(t){let e=KT(t);return e+Math.ceil(e/2)}function $T(t,e,r=!1){let n=t.length,i=KT(e),o=Rw(e);if(n<16||n<o||n>1024)throw new Error(`expected ${o}-1024 bytes of input, got ${n}`);let s=r?ro(t):On(t),c=Re(s,e-et)+et;return r?no(c,i):gr(c,i)}l();l();var J4=BigInt(0),Uw=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&Uw&&(s=s.add(c)),c=c.double(),o>>=Uw;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+=Uw);let S=y,I=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[I]))}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 Iw(t.Fp),sn(t,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...Bw(t.n,t.nBitLength),...t,p:t.Fp.ORDER})}function X4(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:Z4,hexToBytes:Q4}=ap,bc={Err:class extends Error{constructor(e=""){super(e)}},_parseInt(t){let{Err:e}=bc;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}=bc,r=typeof t=="string"?Q4(t):t;if(!Un(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}=bc._parseInt(r.subarray(2)),{d:s,l:c}=bc._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}`}},oo=BigInt(0),cn=BigInt(1),VW=BigInt(2),HT=BigInt(3),qW=BigInt(4);function eN(t){let e=X4(t),{Fp:r}=e,n=e.toBytes||((g,y,x)=>{let S=y.toAffine();return io(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),I=r.mul(S,g);return r.add(r.add(I,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"&&oo<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:I}=e;if(y&&typeof g!="bigint"){if(Un(g)&&(g=to(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:ro(Ge("private key",g,x))}catch{throw new Error(`private key must be ${x} bytes, hex or bigint, not ${typeof g}`)}return S&&(A=Re(A,I)),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 I=A=>r.eql(A,r.ZERO);return I(x)&&I(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,I)=>S.toAffine(x[I])).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),I=o(y);if(!r.eql(S,I))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:I}=this,{px:A,py:O,pz:T}=y,M=r.eql(r.mul(x,T),r.mul(A,I)),q=r.eql(r.mul(S,T),r.mul(O,I));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,HT),{px:I,py:A,pz:O}=this,T=r.ZERO,M=r.ZERO,q=r.ZERO,j=r.mul(I,I),$=r.mul(A,A),Z=r.mul(O,O),Q=r.mul(I,A);return Q=r.add(Q,Q),q=r.mul(I,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:I}=this,{px:A,py:O,pz:T}=y,M=r.ZERO,q=r.ZERO,j=r.ZERO,$=e.a,Z=r.mul(e.b,HT),Q=r.mul(x,A),G=r.mul(S,O),_=r.mul(I,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,I);let U=r.add(A,T);return E=r.mul(E,U),U=r.add(Q,_),E=r.sub(E,U),U=r.add(S,I),M=r.add(O,T),U=r.mul(U,M),M=r.add(G,_),U=r.sub(U,M),j=r.mul($,E),M=r.mul(Z,_),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),_=r.mul($,_),E=r.mul(Z,E),G=r.add(G,_),_=r.sub(Q,_),_=r.mul($,_),E=r.add(E,_),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(I=>I.pz));return x.map((I,A)=>I.toAffine(S[A])).map(f.fromAffine)})}multiplyUnsafe(y){let x=f.ZERO;if(y===oo)return x;if(c(y),y===cn)return this;let{endo:S}=e;if(!S)return p.unsafeLadder(this,y);let{k1neg:I,k1:A,k2neg:O,k2:T}=S.splitScalar(y),M=x,q=x,j=this;for(;A>oo||T>oo;)A&cn&&(M=M.add(j)),T&cn&&(q=q.add(j)),j=j.double(),A>>=cn,T>>=cn;return I&&(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,I,{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),I=$.add(Q)}else{let{p:O,f:T}=this.wNAF(x);S=O,I=T}return f.normalizeZ([S,I])[0]}multiplyAndAddUnsafe(y,x,S){let I=f.BASE,A=(T,M)=>M===oo||M===cn||!T.equals(I)?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:I}=this,A=this.is0();y==null&&(y=A?r.ONE:r.inv(I));let O=r.mul(x,y),T=r.mul(S,y),M=r.mul(I,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 to(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=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=Fd(t);return sn(e,{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze({lowS:!0,...e})}function VT(t){let e=tN(t),{Fp:r,n}=e,i=r.BYTES+1,o=2*r.BYTES+1;function s(E){return oo<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=io;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=ro(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=>to(gr(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)=>ro(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}=bc.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 mc(this.toDERHex())}toDERHex(){return bc.hexFromSig({r:this.r,s:this.s})}toCompactRawBytes(){return mc(this.toCompactHex())}toCompactHex(){return p(this.r)+p(this.s)}}let I={isValidPrivateKey(E){try{return d(E),!0}catch{return!1}},normPrivateKeyToScalar:d,randomPrivateKey:()=>{let E=Rw(e.n);return $T(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=Un(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=ro(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(!(oo<=E&&E<j))throw new Error(`bigint expected < 2^${e.nBitLength}`);return gr(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=io(...W),X=J;function ue(ee){let ce=M(ee);if(!h(ce))return;let Oe=a(ce),Me=u.BASE.multiply(ce).toAffine(),Je=c(Me.x);if(Je===oo)return;let xt=c(Oe*c(X+Je*z));if(xt===oo)return;let gi=(Me.x===Je?0:2)|Number(Me.y&cn),go=xt;return C&&g(xt)&&(go=y(xt),gi^=1),new S(Je,go,gi)}return{seed:Y,k2sig:ue}}let Q={lowS:e.lowS,prehash:!1},G={lowS:e.lowS,prehash:!1};function _(E,U,L=Q){let{seed:N,k2sig:R}=Z(E,U,L),C=e;return Aw(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"||Un(R))try{V=S.fromDER(R)}catch(Me){if(!(Me instanceof bc.Err))throw Me;V=S.fromCompact(R)}else if(typeof R=="object"&&typeof R.r=="bigint"&&typeof R.s=="bigint"){let{r:Me,s:Je}=R;V=new S(Me,Je)}else throw new Error("PARSE");J=u.fromHex(L)}catch(Me){if(Me.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:_,verify:D,ProjectivePoint:u,Signature:S,utils:I}}l();l();var fp=class extends Ka{constructor(e,r){super(),this.finished=!1,this.destroyed=!1,BT(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 Ma(this),this.iHash.update(e),this}digestInto(e){Ma(this),bw(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()}},Ow=(t,e,r)=>new fp(t,e).update(r).digest();Ow.create=(t,e)=>new fp(t,e);function rN(t){return{hash:t,hmac:(e,...r)=>Ow(t,e,ip(...r)),randomBytes:Vd}}function lp(t,e){let r=n=>VT({...t,...rN(n)});return Object.freeze({...r(e),create:r})}var jT=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),qT=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),nN=BigInt(1),Dw=BigInt(2),FT=(t,e)=>(t+e/Dw)/e;function iN(t){let e=jT,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,Dw,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,I=ze(S,c,e)*y%e,A=ze(I,r,e)*d%e,O=ze(A,s,e)*g%e,T=ze(O,n,e)*u%e,M=ze(T,Dw,e);if(!kw.eql(kw.sqr(M),t))throw new Error("Cannot find square root");return M}var kw=Ha(jT,void 0,void 0,{sqrt:iN}),mr=lp({a:BigInt(0),b:BigInt(7),Fp:kw,n:qT,Gx:BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),Gy:BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),h:BigInt(1),lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:t=>{let e=qT,r=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),n=-nN*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),i=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),o=r,s=BigInt("0x100000000000000000000000000000000"),c=FT(o*t,e),a=FT(-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),iG=BigInt(0);var oG=mr.ProjectivePoint;l();l();function WT(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())})},Nw="urn:jwk:";function we(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}`);dg(n);let i=WT(n),o=ne.string(i).toUint8Array(),s=yield Pa.digest({data:o});return ne.uint8Array(s).toBase64Url()})}function di(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 Va(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 fi(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 qa(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 GT(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=mr.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 we({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 we({jwk:i}),i})}static compressPublicKey(e){return $t(this,arguments,void 0,function*({publicKeyBytes:r}){return mr.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 we({jwk:o}),o})}static convertDerToCompactSignature(e){return $t(this,arguments,void 0,function*({derSignature:r}){return mr.Signature.fromDER(r).toCompactRawBytes()})}static decompressPublicKey(e){return $t(this,arguments,void 0,function*({publicKeyBytes:r}){return mr.ProjectivePoint.fromHex(r).toRawBytes(!1)})}static generateKey(){return $t(this,void 0,void 0,function*(){let e=mr.utils.randomPrivateKey(),r=yield t.bytesToPrivateKey({privateKeyBytes:e});return r.kid=yield we({jwk:r}),r})}static getPublicKey(e){return $t(this,arguments,void 0,function*({key:r}){var n;if(!(di(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 we({jwk:o})),o})}static privateKeyToBytes(e){return $t(this,arguments,void 0,function*({privateKey:r}){if(!di(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(!(Va(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 mr.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=Zo(r);return mr.sign(o,i).toCompactRawBytes()})}static validatePrivateKey(e){return $t(this,arguments,void 0,function*({privateKeyBytes:r}){return mr.utils.isValidPrivateKey(r)})}static validatePublicKey(e){return $t(this,arguments,void 0,function*({publicKeyBytes:r}){try{mr.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=Zo(i);return mr.verify(n,s,o,{lowS:!1})})}static getCurvePoint(e){return $t(this,arguments,void 0,function*({keyBytes:r}){r.byteLength===32&&(r=mr.getPublicKey(r));let n=mr.ProjectivePoint.fromHex(r),i=gr(n.x,32),o=gr(n.y,32);return{x:i,y:o}})}};l();l();var zT=Ha(BigInt("0xffffffff00000001000000000000000000000000ffffffffffffffffffffffff")),cN=zT.create(BigInt("-3")),aN=BigInt("0x5ac635d8aa3a93e7b3ebbd55769886bc651d06b0cc53b0f63bce3c3e27d2604b"),uN=lp({a:cN,b:aN,Fp:zT,n:BigInt("0xffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551"),Gx:BigInt("0x6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296"),Gy:BigInt("0x4fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5"),h:BigInt(1),lowS:!1},sp),Mr=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=Mr.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 we({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 we({jwk:i}),i})}static compressPublicKey(e){return Ht(this,arguments,void 0,function*({publicKeyBytes:r}){return Mr.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 we({jwk:o}),o})}static convertDerToCompactSignature(e){return Ht(this,arguments,void 0,function*({derSignature:r}){return Mr.Signature.fromDER(r).toCompactRawBytes()})}static decompressPublicKey(e){return Ht(this,arguments,void 0,function*({publicKeyBytes:r}){return Mr.ProjectivePoint.fromHex(r).toRawBytes(!1)})}static generateKey(){return Ht(this,void 0,void 0,function*(){let e=Mr.utils.randomPrivateKey(),r=yield t.bytesToPrivateKey({privateKeyBytes:e});return r.kid=yield we({jwk:r}),r})}static getPublicKey(e){return Ht(this,arguments,void 0,function*({key:r}){var n;if(!(di(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 we({jwk:o})),o})}static privateKeyToBytes(e){return Ht(this,arguments,void 0,function*({privateKey:r}){if(!di(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(!(Va(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 Mr.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=Zo(r);return Mr.sign(o,i).toCompactRawBytes()})}static validatePrivateKey(e){return Ht(this,arguments,void 0,function*({privateKeyBytes:r}){return Mr.utils.isValidPrivateKey(r)})}static validatePublicKey(e){return Ht(this,arguments,void 0,function*({publicKeyBytes:r}){try{Mr.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=Zo(i);return Mr.verify(n,s,o,{lowS:!1})})}static getCurvePoint(e){return Ht(this,arguments,void 0,function*({keyBytes:r}){r.byteLength===32&&(r=Mr.getPublicKey(r));let n=Mr.ProjectivePoint.fromHex(r),i=gr(n.x,32),o=gr(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 ui{computePublicKey(e){return jd(this,arguments,void 0,function*({key:r}){if(!di(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(!di(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(!di(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(!Va(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),Cw=BigInt(32);function YT(t,e=!1){return e?{h:Number(t&hp),l:Number(t>>Cw&hp)}:{h:Number(t>>Cw&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}=YT(t[i],e);[r[i],n[i]]=[o,s]}return[r,n]}var lN=(t,e)=>BigInt(t>>>0)<<Cw|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:YT,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},pe=DN;var[kN,NN]=pe.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))),ts=new Uint32Array(80),rs=new Uint32Array(80),Lw=class extends $a{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)ts[A]=e.getUint32(r),rs[A]=e.getUint32(r+=4);for(let A=16;A<80;A++){let O=ts[A-15]|0,T=rs[A-15]|0,M=pe.rotrSH(O,T,1)^pe.rotrSH(O,T,8)^pe.shrSH(O,T,7),q=pe.rotrSL(O,T,1)^pe.rotrSL(O,T,8)^pe.shrSL(O,T,7),j=ts[A-2]|0,$=rs[A-2]|0,Z=pe.rotrSH(j,$,19)^pe.rotrBH(j,$,61)^pe.shrSH(j,$,6),Q=pe.rotrSL(j,$,19)^pe.rotrBL(j,$,61)^pe.shrSL(j,$,6),G=pe.add4L(q,Q,rs[A-7],rs[A-16]),_=pe.add4H(G,M,Z,ts[A-7],ts[A-16]);ts[A]=_|0,rs[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:I}=this;for(let A=0;A<80;A++){let O=pe.rotrSH(f,h,14)^pe.rotrSH(f,h,18)^pe.rotrBH(f,h,41),T=pe.rotrSL(f,h,14)^pe.rotrSL(f,h,18)^pe.rotrBL(f,h,41),M=f&p^~f&y,q=h&g^~h&x,j=pe.add5L(I,T,q,NN[A],rs[A]),$=pe.add5H(j,S,O,M,kN[A],ts[A]),Z=j|0,Q=pe.rotrSH(n,i,28)^pe.rotrBH(n,i,34)^pe.rotrBH(n,i,39),G=pe.rotrSL(n,i,28)^pe.rotrBL(n,i,34)^pe.rotrBL(n,i,39),_=n&o^n&c^o&c,D=i&s^i&a^s&a;S=y|0,I=x|0,y=p|0,x=g|0,p=f|0,g=h|0,{h:f,l:h}=pe.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=pe.add3L(Z,G,D);n=pe.add3H(E,$,Q,_),i=E|0}({h:n,l:i}=pe.add(this.Ah|0,this.Al|0,n|0,i|0)),{h:o,l:s}=pe.add(this.Bh|0,this.Bl|0,o|0,s|0),{h:c,l:a}=pe.add(this.Ch|0,this.Cl|0,c|0,a|0),{h:u,l:d}=pe.add(this.Dh|0,this.Dl|0,u|0,d|0),{h:f,l:h}=pe.add(this.Eh|0,this.El|0,f|0,h|0),{h:p,l:g}=pe.add(this.Fh|0,this.Fl|0,p|0,g|0),{h:y,l:x}=pe.add(this.Gh|0,this.Gl|0,y|0,x|0),{h:S,l:I}=pe.add(this.Hh|0,this.Hl|0,S|0,I|0),this.set(n,i,o,s,c,a,u,d,f,h,p,g,y,x,S,I)}roundClean(){ts.fill(0),rs.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 Pw=op(()=>new Lw);l();var Dn=BigInt(0),Kr=BigInt(1),pp=BigInt(2),CN=BigInt(8),LN={zip215:!0};function PN(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 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)-Kr,d=r.create,f=e.uvRatio||((N,R)=>{try{return{isValid:!0,value:r.sqrt(N*r.inv(R))}}catch{return{isValid:!1,value:Dn}}}),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"&&Dn<N,y=(N,R)=>g(N)&&g(R)&&N<R,x=N=>N===Dn||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 I(N){return N===Dn?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,Kr,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 Me=d(P*V),Je=d(J*z);if(Me!==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,Me=d(ue*ce),Je=d(ee*Oe),xt=d(ue*Oe),gi=d(ce*ee);return new T(Me,Je,gi,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 pu=d((J-V)*(X+Y)),vf=d((J+V)*(X-Y)),yu=d(vf-pu);if(yu===Dn)return this.double();let Sf=d(z*pp*ee),Af=d(W*pp*ue),Wr=Af+Sf,wo=vf+pu,gu=Af-Sf,Tf=d(Wr*yu),ps=d(wo*gu),_f=d(Wr*gu),oy=d(yu*wo);return new T(Tf,ps,oy,_f)}let ce=d(V*Y),Oe=d(J*X),Me=d(W*P*ee),Je=d(z*ue),xt=d((V+J)*(Y+X)-ce-Oe),gi=Je-Me,go=Je+Me,hu=d(Oe-C*ce),Ef=d(xt*gi),iy=d(go*hu),mo=d(xt*hu),jr=d(gi*go);return new T(Ef,iy,jr,mo)}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=I(R);return C===Dn?q:this.equals(q)||C===Kr?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:Dn,y:Kr};if(Y!==Kr)throw new Error("invZ was invalid");return{x:z,y:W}}clearCofactor(){let{h:R}=e;return R===Kr?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=On(z);Y===Dn||(C?S(Y,u):S(Y,r.ORDER));let X=d(Y*Y),ue=d(X-Kr),ee=d(P*X-V),{isValid:ce,value:Oe}=f(ue,ee);if(!ce)throw new Error("Point.fromHex: invalid y coordinate");let Me=(Oe&Kr)===Kr,Je=(W&128)!==0;if(!C&&Oe===Dn&&Je)throw new Error("Point.fromHex: x=0 and x_0=1");return Je!==Me&&(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=no(C,r.BYTES);return P[P.length-1]|=R&Kr?128:0,P}toHex(){return to(this.toRawBytes())}}T.BASE=new T(e.Gx,e.Gy,Kr,d(e.Gx*e.Gy)),T.ZERO=new T(Dn,Kr,Kr,Dn);let{BASE:M,ZERO:q}=T,j=dp(T,c*8);function $(N){return Re(N,n)}function Z(N){return $(On(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 _(N=new Uint8Array,...R){let C=io(...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=_(C.context,P,N),W=M.multiply(z).toRawBytes(),Y=_(C.context,W,J,N),X=$(z+Y*V);I(X);let ue=io(W,no(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=On(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=_(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),Mw=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 JT(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=>_w(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=Mw,$=Gd,Z=T,Q=Mw,G=Gd,_;for(let E=BigInt(i-1);E>=Gd;E--){let U=M>>E&Mw;G^=U,_=u(G,j,Z),j=_[0],Z=_[1],_=u(G,$,Q),$=_[0],Q=_[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)))}_=u(G,j,Z),j=_[0],Z=_[1],_=u(G,$,Q),$=_[0],Q=_[1];let D=a($);return n(j*D)}function p(A){return no(n(A),o)}function g(A){let O=Ge("u coordinate",A,o);return s===32&&(O[31]&=127),On(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 On(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 I(A){return x(A,S)}return{scalarMult:x,scalarMultBase:I,getSharedSecret:(A,O)=>x(A,O),getPublicKey:A=>I(A),utils:{randomPrivateKey:()=>e.randomBytes(e.nByteLength)},GuBytes:S}}var zd=BigInt("57896044618658097711785492504343953926634992332820282019728792003956564819949"),XT=BigInt("19681161376707505956807079304988542015446066515923890162744021073123829784752"),cz=BigInt(0),KN=BigInt(1),Kw=BigInt(2),$N=BigInt(5),ZT=BigInt(10),HN=BigInt(20),VN=BigInt(40),QT=BigInt(80);function e_(t){let e=zd,n=t*t%e*t%e,i=ze(n,Kw,e)*n%e,o=ze(i,KN,e)*t%e,s=ze(o,$N,e)*o%e,c=ze(s,ZT,e)*s%e,a=ze(c,HN,e)*c%e,u=ze(a,VN,e)*a%e,d=ze(u,QT,e)*u%e,f=ze(d,QT,e)*u%e,h=ze(f,ZT,e)*s%e;return{pow_p_5_8:ze(h,Kw,e)*t%e,b2:n}}function t_(t){return t[0]&=248,t[31]&=127,t[31]|=64,t}function qN(t,e){let r=zd,n=Re(e*e*e,r),i=Re(n*n*e,r),o=e_(t*i).pow_p_5_8,s=Re(t*n*o,r),c=Re(e*s*s,r),a=s,u=Re(s*XT,r),d=c===t,f=c===Re(-t,r),h=c===Re(-t*XT,r);return d&&(s=a),(f||h)&&(s=u),PT(s,r)&&(s=Re(-s,r)),{isValid:d||f,value:s}}var an=Ha(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:Pw,randomBytes:Vd,adjustScalarBytes:t_,uvRatio:qN},ns=yp(Yd);function r_(t,e,r){if(e.length>255)throw new Error("Context is too big");return ip(xw("SigEd25519 no Ed25519 collisions"),new Uint8Array([r?1:0,e.length]),e,t)}var az=yp({...Yd,domain:r_}),uz=yp({...Yd,domain:r_,prehash:Pw}),xc=JT({P:zd,a:BigInt(486662),montgomeryBits:255,nByteLength:32,Gu:BigInt(9),powPminus2:t=>{let e=zd,{pow_p_5_8:r,b2:n}=e_(t);return Re(ze(r,BigInt(3),e)*n,e)},adjustScalarBytes:t_,randomBytes:Vd});function n_(t){let{y:e}=ns.ExtendedPoint.fromHex(t),r=BigInt(1);return an.toBytes(an.create((r+e)*an.inv(r-e)))}function i_(t){let e=Yd.hash(t.subarray(0,32));return Yd.adjustScalarBytes(e).subarray(0,32)}var FN=(an.ORDER+BigInt(3))/BigInt(8),dz=an.pow(Kw,FN),fz=an.sqrt(an.neg(an.ONE)),lz=(an.ORDER-BigInt(5))/BigInt(8),hz=BigInt(486662);var pz=MT(an,an.neg(BigInt(486664)));var yz=BigInt("25063068953384623474111414158702152701244531502492656460079210482610430750235"),gz=BigInt("54469307008909316920995813868745141605393597292927456921205312896311721017578"),mz=BigInt("1159843021668779879193775521855586647937357759715417654439879720876111806838"),wz=BigInt("40440834346308536858101042469323190826248399146238708352240133220865137265952");var bz=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},It=class t{static bytesToPrivateKey(e){return un(this,arguments,void 0,function*({privateKeyBytes:r}){let n=ns.getPublicKey(r),i={crv:"Ed25519",d:ne.uint8Array(r).toBase64Url(),kty:"OKP",x:ne.uint8Array(n).toBase64Url()};return i.kid=yield we({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 we({jwk:n}),n})}static computePublicKey(e){return un(this,arguments,void 0,function*({key:r}){let n=yield t.privateKeyToBytes({privateKey:r}),i=ns.getPublicKey(n),o={kty:"OKP",crv:"Ed25519",x:ne.uint8Array(i).toBase64Url()};return o.kid=yield we({jwk:o}),o})}static convertPrivateKeyToX25519(e){return un(this,arguments,void 0,function*({privateKey:r}){let n=yield t.privateKeyToBytes({privateKey:r}),i=i_(n),o=xc.getPublicKey(i),s={kty:"OKP",crv:"X25519",d:ne.uint8Array(i).toBase64Url(),x:ne.uint8Array(o).toBase64Url()};return s.kid=yield we({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=n_(n),s={kty:"OKP",crv:"X25519",x:ne.uint8Array(o).toBase64Url()};return s.kid=yield we({jwk:s}),s})}static generateKey(){return un(this,void 0,void 0,function*(){let e=ns.utils.randomPrivateKey(),r=yield t.bytesToPrivateKey({privateKeyBytes:e});return r.kid=yield we({jwk:r}),r})}static getPublicKey(e){return un(this,arguments,void 0,function*({key:r}){var n;if(!(fi(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 we({jwk:o})),o})}static privateKeyToBytes(e){return un(this,arguments,void 0,function*({privateKey:r}){if(!fi(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(!qa(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 ns.sign(n,i)})}static validatePublicKey(e){return un(this,arguments,void 0,function*({publicKeyBytes:r}){try{ns.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 ns.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())})},gp=class extends ui{computePublicKey(e){return Jd(this,arguments,void 0,function*({key:r}){if(!fi(r))throw new TypeError("Invalid key provided. Must be an octet key pair (OKP) private key.");switch(r.crv){case"Ed25519":{let n=yield It.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 It.generateKey();return n.alg="EdDSA",n}}})}getPublicKey(e){return Jd(this,arguments,void 0,function*({key:r}){if(!fi(r))throw new TypeError("Invalid key provided. Must be an octet key pair (OKP) private key.");switch(r.crv){case"Ed25519":{let n=yield It.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(!fi(r))throw new TypeError("Invalid key provided. Must be an octet key pair (OKP) private key.");switch(r.crv){case"Ed25519":return yield It.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(!qa(r))throw new TypeError("Invalid key provided. Must be an octet key pair (OKP) public key.");switch(r.crv){case"Ed25519":return yield It.verify({key:r,signature:n,data:i});default:throw new Error(`Unsupported curve: ${r.crv}`)}})}};var so=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={Ed25519:{implementation:gp,names:["Ed25519"]},secp256k1:{implementation:Wd,names:["ES256K","secp256k1"]},secp256r1:{implementation:Wd,names:["ES256","secp256r1"]},"SHA-256":{implementation:tp,names:["SHA-256"]}},Zt=class{constructor(e){var r;this._algorithmInstances=new Map,this._keyStore=(r=e?.keyStore)!==null&&r!==void 0?r:new xh}digest(e){return so(this,arguments,void 0,function*({algorithm:r,data:n}){return yield this.getAlgorithm({algorithm:r}).digest({algorithm:r,data:n})})}exportKey(e){return so(this,arguments,void 0,function*({keyUri:r}){return yield this.getPrivateKey({keyUri:r})})}generateKey(e){return so(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=`${Nw}${i.kid}`;return yield this._keyStore.set(o,i),o})}getKeyUri(e){return so(this,arguments,void 0,function*({key:r}){let n=yield we({jwk:r});return`${Nw}${n}`})}getPublicKey(e){return so(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 so(this,arguments,void 0,function*({key:r}){var n;if(!GT(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 we({jwk:i}));let o=yield this.getKeyUri({key:i});return yield this._keyStore.set(o,i),o})}sign(e){return so(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 so(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=$w[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 $w){let o=$w[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 so(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 AT(e)}static randomUuid(){return La.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 is=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},Fa=class t{static bytesToPrivateKey(e){return is(this,arguments,void 0,function*({privateKeyBytes:r}){let n=xc.getPublicKey(r),i={kty:"OKP",crv:"X25519",d:ne.uint8Array(r).toBase64Url(),x:ne.uint8Array(n).toBase64Url()};return i.kid=yield we({jwk:i}),i})}static bytesToPublicKey(e){return is(this,arguments,void 0,function*({publicKeyBytes:r}){let n={kty:"OKP",crv:"X25519",x:ne.uint8Array(r).toBase64Url()};return n.kid=yield we({jwk:n}),n})}static computePublicKey(e){return is(this,arguments,void 0,function*({key:r}){let n=yield t.privateKeyToBytes({privateKey:r}),i=xc.getPublicKey(n),o={kty:"OKP",crv:"X25519",x:ne.uint8Array(i).toBase64Url()};return o.kid=yield we({jwk:o}),o})}static generateKey(){return is(this,void 0,void 0,function*(){let e=xc.utils.randomPrivateKey(),r=yield t.bytesToPrivateKey({privateKeyBytes:e});return r.kid=yield we({jwk:r}),r})}static getPublicKey(e){return is(this,arguments,void 0,function*({key:r}){var n;if(!(fi(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 we({jwk:o})),o})}static privateKeyToBytes(e){return is(this,arguments,void 0,function*({privateKey:r}){if(!fi(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 is(this,arguments,void 0,function*({publicKey:r}){if(!qa(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 is(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 xc.getSharedSecret(i,o)})}};l();l();l();function $r(t){if(typeof t=="string"&&t.length!==0)return t.split("#").pop()}function qw({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(Vw))!==null&&r!==void 0?r:[]),Object.keys(Hi).forEach(i=>{var o,s;n.push(...(s=(o=t[i])===null||o===void 0?void 0:o.filter(Vw))!==null&&s!==void 0?s:[])}),n}function o_({didDocument:t}){let r=qw({didDocument:t}).map(n=>n.type);return[...new Set(r)]}function s_({didDocument:t,methodId:e}){let r=[];return Object.keys(Hi).forEach(n=>{if(Array.isArray(t[n])){let i=t[n],o=$r(e);i.some(c=>{let a=$r(c)===o,u=Vw(c)&&$r(c.id)===o;return a||u})&&r.push(n)}}),r}function c_(t){return!t||typeof t!="object"||t===null?!1:"id"in t&&"type"in t&&"serviceEndpoint"in t}function Vw(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 Fw({keyBytes:t,multicodecCode:e,multicodecName:r}){let n=zt.addPrefix({code:e,data:t,name:r}),i=ne.uint8Array(n).toBase58Btc();return ne.base58Btc(i).toMultibase()}function jw({multibaseKeyId:t}){try{let e=ne.multibase(t).toBase58Btc(),r=ne.base58Btc(e).toUint8Array(),{code:n,data:i,name:o}=zt.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())})},wr=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 $r(a.id)===((u=$r(e?.methodId))!==null&&u!==void 0?u:$r((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 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 Zt}){var i;let o=qw({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 Ww="0123456789abcdef",u_=[],a_=[];for(let t=0;t<256;t++)u_[t]=Ww[t>>4&15]+Ww[t&15],t<16&&(t<10?a_[48+t]=t:a_[87+t]=t);var Gw=t=>{let e=t.length,r="",n=0;for(;n<e;)r+=u_[t[n++]];return r};var d_=(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 f_="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",zN=typeof Uint8Array>"u"?[]:new Uint8Array(256);for(Zd=0;Zd<f_.length;Zd++)zN[f_.charCodeAt(Zd)]=Zd;var Zd;var YN=new TextDecoder,zw=(t,e)=>e?new TextDecoder(e).decode(t):YN.decode(t),JN=new TextEncoder,dn=t=>JN.encode(t);var l_=typeof window<"u"?window:self,h_=l_.crypto||l_.msCrypto||{},bJ=h_.subtle||h_.webkitSubtle;l();function ja(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=d_(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]),p_=new Uint8Array([100]),y_=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(p_);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(p_);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(y_);r<n;r++)e[r]!=null&&Ue._encode(t,e[r]);t.push(bp)};Ue.listSet=function(t,e){t.push(y_);for(let r of e)r!=null&&Ue._encode(t,r);t.push(bp)};var g_=Ue;l();var XN=105,ZN=58,QN=100,eC=108,Yw=101;function m_(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]!==Yw;){let e=de.buffer(),r=zw(e);r.includes("\uFFFD")&&(r=Gw(e)),t[r]=de.next()}return de.position++,t};de.list=function(){de.position++;let t=[];for(;de.data[de.position]!==Yw;)t.push(de.next());return de.position++,t};de.integer=function(){let t=de.find(Yw),e=m_(de.data,de.position+1,t);return de.position+=t+1-de.position,e};de.buffer=function(){let t=de.find(ZN),e=m_(de.data,de.position,t),r=++t+e;return de.position=r,de.encoding?zw(de.data.slice(t,r)):de.data.slice(t,r)};var w_=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+=ja(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+=ja(i)+1+i,e+=xp(t[r[n]])}return e}function iC(t){let e=dn(t).byteLength;return ja(e)+1+e}function oC(t){let e=t.byteLength-t.byteOffset;return ja(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+ja(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 Jw=xp;var sC=Jw,Xw={encode:g_,decode:w_,byteLength:Jw,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 kn={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]}`}},co={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 b_(t){if(kn.isFormat(t))return kn.size;if(co.isFormat(t))return co.size;throw Error(`Invalid ip address: ${t}`)}function x_(t){return b_(t)===kn.size?1:2}function E_(t,e,r){r=~~r;let n=b_(t);return typeof e=="function"&&(e=e(r+n)),n===kn.size?kn.encode(t,e,r):co.encode(t,e,r)}function v_(t,e,r){if(e=~~e,r=r||t.length-e,r===kn.size)return kn.decode(t,e,r);if(r===co.size)return co.decode(t,e,r);throw Error(`Invalid buffer size needs to be ${kn.size} for v4 or ${co.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 Wa(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 S_(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 A_(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 Zw(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 Qw(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 T_(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 eb(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 tb(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 Ga(t,e,r){let n=t.length;r==null&&(r=0),e===void 0&&(e=new Uint8Array(tb(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 Ga.bytes=i-r,e}Ga.bytes=0;function za(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 za.bytes=r-e,n}za.bytes=0;var os=t=>t instanceof Uint8Array;function ao(t){return typeof t=="string"?tb(t):t.byteLength}function Ep(t){return t instanceof Uint8Array?t:Array.isArray(t)?new Uint8Array(t):Ga(t)}function vp(t,e,r){if(typeof e!="string")throw new Error("unknown input type");return Ga(e,t,r),Ga.bytes}var ef={},__=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}`;__[s]=c,ef[c]=s,ef[`${r}${i}`]=s,ef[`${e}${o}`]=s,ef[`${r}${o}`]=s}}function I_(t,e,r){let n="";for(let i=e;i<r;){let o=t[i++];n+=__[o]}return n}function rb(t){return t.length>>>1}function B_(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 gC=Math.pow(2,24),mC=Math.pow(2,16),wC=Math.pow(2,8),li=(t,e)=>t[e]*gC+t[e+1]*mC+t[e+2]*wC+t[e+3],ye=(t,e)=>t[e]<<8|t[e+1],hi=(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 br(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,R_=32768,ib=32768,vC=~ib,O_=32768,SC=~O_;function $e({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=$e({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=ye(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(za(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:ao(t.replace(/^\.|\.$/gm,""))+2}}),Bt=$e({encode(t,e,r){e||(e=new Uint8Array(Bt.encodingLength(t))),r||(r=0);let n=vp(e,t,r+1);return e[r]=n,Bt.encode.bytes=n+1,e},decode(t,e){e||(e=0);let r=t[e],n=za(t,e+1,e+1+r);return Bt.decode.bytes=r+1,n},encodingLength(t){return ao(t)+1}}),Ya=$e({bytes:12,encode(t,e,r){e||(e=new Uint8Array(Ya.encodingLength(t))),r||(r=0);let n=(t.flags||0)&32767,i=t.type==="response"?R_: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=ye(t,e+2);return{id:ye(t,e),type:r&R_?"response":"query",flags:r&32767,flag_qr:(r>>15&1)===1,opcode:A_(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:S_(r&15),questions:new Array(ye(t,e+4)),answers:new Array(ye(t,e+6)),authorities:new Array(ye(t,e+8)),additionals:new Array(ye(t,e+10))}},encodingLength(){return 12}}),Ap=$e({encode(t,e,r){e||(e=new Uint8Array(Ap.encodingLength(t))),r||(r=0);let n=t.length;return ae(e,n,r),br(t,e,r+2,0,n),Ap.encode.bytes=n+2,e},decode(t,e){e||(e=0);let r=ye(t,e),n=t.slice(e+2,e+2+r);return Ap.decode.bytes=r+2,n},encodingLength(t){return t.length+2}}),Tp=$e({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=ye(t,e),n=se.decode(t,e+2);return Tp.decode.bytes=r+2,n},encodingLength(t){return se.encodingLength(t)+2}}),_p=$e({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,hi(e,t.serial||0,r),r+=4,hi(e,t.refresh||0,r),r+=4,hi(e,t.retry||0,r),r+=4,hi(e,t.expire||0,r),r+=4,hi(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=li(t,e),e+=4,n.refresh=li(t,e),e+=4,n.retry=li(t,e),e+=4,n.expire=li(t,e),e+=4,n.minimum=li(t,e),e+=4,_p.decode.bytes=e-r,n},encodingLength(t){return 22+se.encodingLength(t.mname)+se.encodingLength(t.rname)}}),Ip=$e({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])),!os(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,br(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=ye(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+=ao(r)+1:e+=r.length+1}),e}}),Bp=$e({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 br(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=ye(t,e);e+=2;let i=t.slice(e,e+n);return e+=n,Bp.decode.bytes=e-r,i},encodingLength(t){return t?(os(t)?t.length:ao(t))+2:2}}),Rp=$e({encode(t,e,r){e||(e=new Uint8Array(Rp.encodingLength(t))),r||(r=0);let n=r;return r+=2,Bt.encode(t.cpu,e,r),r+=Bt.encode.bytes,Bt.encode(t.os,e,r),r+=Bt.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=Bt.decode(t,e),e+=Bt.decode.bytes,n.os=Bt.decode(t,e),e+=Bt.decode.bytes,Rp.decode.bytes=e-r,n},encodingLength(t){return Bt.encodingLength(t.cpu)+Bt.encodingLength(t.os)+2}}),Za=$e({encode(t,e,r){return e||(e=new Uint8Array(Za.encodingLength(t))),r||(r=0),se.encode(t,e,r+2),ae(e,se.encode.bytes,r),Za.encode.bytes=se.encode.bytes+2,e},decode(t,e){e||(e=0);let r=se.decode(t,e+2);return Za.decode.bytes=se.decode.bytes+2,r},encodingLength(t){return se.encodingLength(t)+2}}),Up=$e({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=ye(t,e),n={};return n.priority=ye(t,e+2),n.weight=ye(t,e+4),n.port=ye(t,e+6),n.target=se.decode(t,e+8),Up.decode.bytes=r+2,n},encodingLength(t){return 8+se.encodingLength(t.target)}}),ss=$e({encode(t,e,r){let n=ss.encodingLength(t);return e||(e=new Uint8Array(ss.encodingLength(t))),r||(r=0),t.issuerCritical&&(t.flags=ss.ISSUER_CRITICAL),ae(e,n-2,r),r+=2,e[r]=t.flags||0,r+=1,Bt.encode(t.tag,e,r),r+=Bt.encode.bytes,vp(e,t.value,r),r+=ao(t.value),ss.encode.bytes=n,e},decode(t,e){e||(e=0);let r=ye(t,e);e+=2;let n=e,i={};return i.flags=t[e],e+=1,i.tag=Bt.decode(t,e),e+=Bt.decode.bytes,i.value=za(t,e,n+r),i.issuerCritical=!!(i.flags&ss.ISSUER_CRITICAL),ss.decode.bytes=r+2,i},encodingLength(t){return Bt.encodingLength(t.tag)+Bt.encodingLength(t.value)+2}});ss.ISSUER_CRITICAL=128;var Op=$e({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=ye(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)}}),D_=$e({encode(t,e,r){return e||(e=new Uint8Array(D_.encodingLength(t))),r||(r=0),ae(e,4,r),r+=2,kn.encode(t,e,r),e},decode(t,e){return e||(e=0),e+=2,kn.decode(t,e)},bytes:6}),Dp=$e({encode(t,e,r){return e||(e=new Uint8Array(Dp.encodingLength(t))),r||(r=0),ae(e,16,r),r+=2,co.encode(t,e,r),Dp.encode.bytes=18,e},decode(t,e){e||(e=0),e+=2;let r=co.decode(t,e);return Dp.decode.bytes=18,r},bytes:18}),U_=t=>new Uint8Array(t),uo=$e({encode(t,e,r){e||(e=new Uint8Array(uo.encodingLength(t))),r||(r=0);let n=r,i=eb(t.code);if(ae(e,i,r),r+=2,t.data)ae(e,t.data.length,r),r+=2,br(t.data,e,r),r+=t.data.length;else switch(i){case 8:{let o=t.sourcePrefixLength||0,s=t.family||x_(t.ip,U_),c=E_(t.ip,U_),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,br(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 uo.encode.bytes=r-n,e},decode(t,e){e||(e=0);let r={};r.code=ye(t,e),r.type=T_(r.code),e+=2;let n=ye(t,e);switch(e+=2,r.data=t.slice(e,e+n),r.code){case 8:r.family=ye(t,e),e+=2,r.sourcePrefixLength=t[e++],r.scopePrefixLength=t[e++];{let i=new Uint8Array(r.family===1?4:16);br(t,i,0,e,e+n-4),r.ip=v_(i)}break;case 11:n>0&&(r.timeout=ye(t,e),e+=2);break;case 14:r.tags=[];for(let i=0;i<n;i+=2)r.tags.push(ye(t,e)),e+=2}return uo.decode.bytes=n+4,r},encodingLength(t){if(t.data)return t.data.length+4;switch(eb(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}`)}}),cs=$e({encode(t,e,r){e||(e=new Uint8Array(cs.encodingLength(t))),r||(r=0);let n=r,i=Xa(t,uo);return ae(e,i,r),r=cf(t,uo,e,r+2),cs.encode.bytes=r-n,e},decode(t,e){e||(e=0);let r=e,n=[],i=ye(t,e);e+=2;let o=0;for(;i>0;)n[o++]=uo.decode(t,e),e+=uo.decode.bytes,i-=uo.decode.bytes;return cs.decode.bytes=e-r,n},encodingLength(t){return 2+Xa(t||[],uo)}}),pi=$e({encode(t,e,r){e||(e=new Uint8Array(pi.encodingLength(t))),r||(r=0);let n=r,i=t.key;if(!os(i))throw new Error("Key must be a Buffer");return r+=2,ae(e,t.flags,r),r+=2,e[r]=pi.PROTOCOL_DNSSEC,r+=1,e[r]=t.algorithm,r+=1,br(i,e,r,0,i.length),r+=i.length,pi.encode.bytes=r-n,ae(e,pi.encode.bytes-2,n),e},decode(t,e){e||(e=0);let r=e,n={},i=ye(t,e);if(e+=2,n.flags=ye(t,e),e+=2,t[e]!==pi.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,pi.decode.bytes=e-r,n},encodingLength(t){return 6+ao(t.key)}});pi.PROTOCOL_DNSSEC=3;pi.ZONE_KEY=128;pi.SECURE_ENTRYPOINT=32768;var tf=$e({encode(t,e,r){e||(e=new Uint8Array(tf.encodingLength(t))),r||(r=0);let n=r,i=t.signature;if(!os(i))throw new Error("Signature must be a Buffer");return r+=2,ae(e,Wa(t.typeCovered),r),r+=2,e[r]=t.algorithm,r+=1,e[r]=t.labels,r+=1,hi(e,t.originalTTL,r),r+=4,hi(e,t.expiration,r),r+=4,hi(e,t.inception,r),r+=4,ae(e,t.keyTag,r),r+=2,se.encode(t.signersName,e,r),r+=se.encode.bytes,br(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=ye(t,e);return e+=2,n.typeCovered=Qd(ye(t,e)),e+=2,n.algorithm=t[e],e+=1,n.labels=t[e],e+=1,n.originalTTL=li(t,e),e+=4,n.expiration=li(t,e),e+=4,n.inception=li(t,e),e+=4,n.keyTag=ye(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)+ao(t.signature)}}),rf=$e({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||".")}}),Hr=$e({encode(t,e,r){e||(e=new Uint8Array(Hr.encodingLength(t))),r||(r=0);let n=r,i=[];for(let o=0;o<t.length;o++){let s=Wa(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,br(s,e,r,0,s.length),r+=s.length}return Hr.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 Hr.decode.bytes=e-n,i},encodingLength(t){let e=[];for(let n=0;n<t.length;n++){let i=Wa(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=$e({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,Hr.encode(t.rrtypes,e,r),r+=Hr.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=ye(t,e);return e+=2,n.nextDomain=se.decode(t,e),e+=se.decode.bytes,n.rrtypes=Hr.decode(t,e,i-(e-r)),e+=Hr.decode.bytes,nf.decode.bytes=e-r,n},encodingLength(t){return 2+se.encodingLength(t.nextDomain)+Hr.encodingLength(t.rrtypes)}}),of=$e({encode(t,e,r){e||(e=new Uint8Array(of.encodingLength(t))),r||(r=0);let n=r,i=t.salt;if(!os(i))throw new Error("salt must be a Buffer");let o=t.nextDomain;if(!os(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,br(i,e,r,0,i.length),r+=i.length,e[r]=o.length,r+=1,br(o,e,r,0,o.length),r+=o.length,Hr.encode(t.rrtypes,e,r),r+=Hr.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=ye(t,e);e+=2,n.algorithm=t[e],e+=1,n.flags=t[e],e+=1,n.iterations=ye(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=Hr.decode(t,e,i-(e-r)),e+=Hr.decode.bytes,of.decode.bytes=e-r,n},encodingLength(t){return 8+t.salt.length+t.nextDomain.length+Hr.encodingLength(t.rrtypes)}}),sf=$e({encode(t,e,r){e||(e=new Uint8Array(sf.encodingLength(t))),r||(r=0);let n=r,i=t.digest;if(!os(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,br(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=ye(t,e);return e+=2,n.keyTag=ye(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+ao(t.digest)}}),Ja=$e({encode(t,e,r){e||(e=new Uint8Array(Ja.encodingLength(t))),r||(r=0);let n=r;r+=2,e[r]=t.algorithm,r+=1,e[r]=t.hash,r+=1;let i=rb(t.fingerprint),o=ob(t.hash);if(i!==o)throw new Error(`Invalid length of fingerprint "${t.fingerprint}" for hashType=${t.hash}: ${i} != ${o}`);return B_(e,t.fingerprint,r,r+=i),Ja.encode.bytes=r-n,ae(e,Ja.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=ob(n.hash);return n.fingerprint=I_(t,e,e+i),e+=i,Ja.decode.bytes=e-r,n},encodingLength(t){return 4+rb(t.fingerprint)}});function ob(t){if(t===1)return 20;if(t===2)return 32;throw new Error(`Invalid hashType=${t}, supported=1,2`)}Ja.getFingerprintLengthForHashType=ob;function nb(t){switch(t.toUpperCase()){case"A":return D_;case"PTR":return Za;case"CNAME":return Za;case"DNAME":return Za;case"TXT":return Ip;case"NULL":return Bp;case"AAAA":return Dp;case"SRV":return Up;case"HINFO":return Rp;case"CAA":return ss;case"NS":return Tp;case"SOA":return _p;case"MX":return Op;case"OPT":return cs;case"DNSKEY":return pi;case"RRSIG":return tf;case"RP":return rf;case"NSEC":return nf;case"NSEC3":return of;case"SSHFP":return Ja;case"DS":return sf}return Ap}var fn=$e({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,Wa(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,cs.encode(t.options||[],e,r),r+=cs.encode.bytes}else{let i=Qw(t.class===void 0?"IN":t.class);t.flush&&(i|=ib),ae(e,i,r+2),hi(e,t.ttl||0,r+4),r+=8;let o=nb(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(ye(t,e)),r.type==="OPT")r.udpPayloadSize=ye(t,e+2),r.extendedRcode=t[e+4],r.ednsVersion=t[e+5],r.flags=ye(t,e+6),r.flag_do=(r.flags>>15&1)===1,r.options=cs.decode(t,e+8),e+=8+cs.decode.bytes;else{let i=ye(t,e+2);r.ttl=li(t,e+4),r.class=Zw(i&vC),r.flush=!!(i&ib);let o=nb(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+nb(t.type).encodingLength(e)}}),Qa=$e({encode(t,e,r){e||(e=new Uint8Array(Qa.encodingLength(t))),r||(r=0);let n=r;return se.encode(t.name,e,r),r+=se.encode.bytes,ae(e,Wa(t.type),r),r+=2,ae(e,Qw(t.class===void 0?"IN":t.class),r),r+=2,Qa.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(ye(t,e)),e+=2,n.class=Zw(ye(t,e)),e+=2,!!(n.class&O_)&&(n.class&=SC),Qa.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(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=[]),Ya.encode(t,e,r),r+=Ya.encode.bytes,r=cf(t.questions,Qa,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=Ya.decode(t,e);return e+=Ya.decode.bytes,e=Sp(n.questions,Qa,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 Ya.encodingLength(t)+Xa(t.questions||[],Qa)+Xa(t.answers||[],fn)+Xa(t.authorities||[],fn)+Xa(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 af=qt.encode,Lp=qt.decode,AC=qt.encodingLength;function N_(t){let e=af(t),r=new Uint8Array(2+e.byteLength);return ae(r,e.byteLength),br(e,r,2,0,e.length),N_.bytes=r.byteLength,r}N_.bytes=0;function C_(t){let e=ye(t,0);if(t.byteLength<e+2)return null;let r=Lp(t.slice(2));return C_.bytes=Lp.bytes,r}C_.bytes=0;function Xa(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 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 L_=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 L_(this,void 0,void 0,function*(){throw new Error("Not implemented: Classes extending DidMethod must implement getSigningMethod()")})}static resolve(e,r){return L_(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())})},P_=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},M_="https://diddht.tbddev.org",TC=0,as=7200,Pp=";",or=",",sb;(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"})(sb||(sb={}));var sr;(function(t){t[t.Ed25519=0]="Ed25519",t[t.secp256k1=1]="secp256k1",t[t.secp256r1=2]="secp256r1",t[t.X25519=3]="X25519"})(sr||(sr={}));var cb;(function(t){t.authentication="auth",t.assertionMethod="asm",t.capabilityDelegation="del",t.capabilityInvocation="inv",t.keyAgreement="agm"})(cb||(cb={}));var $_={Ed25519:sr.Ed25519,ES256K:sr.secp256k1,ES256:sr.secp256r1,"P-256":sr.secp256r1,secp256k1:sr.secp256k1,secp256r1:sr.secp256r1,X25519:sr.X25519},K_={[sr.Ed25519]:"EdDSA",[sr.secp256k1]:"ES256K",[sr.secp256r1]:"ES256",[sr.X25519]:"ECDH-ES+A256KW"},uf=class t extends ln{static create(){return Ct(this,arguments,void 0,function*({keyManager:e=new Zt,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 $_)))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}),I=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 we({jwk:q});j=`${S}#${$r(j)}`,(u=I.verificationMethod)!==null&&u!==void 0||(I.verificationMethod=[]),I.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:[])I[$]||(I[$]=[]),I[$].push(j)}(h=r.services)===null||h===void 0||h.forEach(T=>{var M;(M=I.service)!==null&&M!==void 0||(I.service=[]),T.id=`${S}#${T.id.split("#").pop()}`,I.service.push(T)});let O=new wr({uri:S,document:I,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 Zt}){var i;let o=xe.parse(r.uri);if(o?.method!==t.methodName)throw new re(ie.MethodNotSupported,"Method not supported");let s=yield wr.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=xe.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 $r(c.id)===((a=$r(n))!==null&&a!==void 0?a:$r((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=M_}){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:M_;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})})}})}};uf.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(or);break}case f.startsWith("cnt"):{let h=Nt.parseTxtDataToString(d.data);c.controller=h.includes(or)?h.split(or):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(),I=sr[Number(p)],A=yield Nt.keyConverter(I).bytesToPublicKey({publicKeyBytes:S});A.alg=x||K_[Number(p)];let O=f==="k0"?"0":h!==void 0?h:yield we({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=P_(h,["id","t","se"]),S=y.includes(or)?y.split(or):[y],I=Object.fromEntries(Object.entries(x).map(([A,O])=>[A,O.includes(or)?O.split(or):O]));(s=c.service)!==null&&s!==void 0||(c.service=[]),c.service.push(Object.assign(Object.assign({},I),{id:`${r}#${p}`,type:g,serviceEndpoint:S}));break}case f.startsWith("typ"):{let{id:h}=Nt.parseTxtDataToObject(d.data);a.types=h.split(or).map(p=>Number(p));break}case f.startsWith("did"):{let h=I=>I.split(or).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:I,previousDid:A}=o;yield Nt.validatePreviousDidProof({newDid:r.id,previousDidProof:o}),f.push({type:"TXT",name:"_prv._did.",ttl:as,data:`id=${A};s=${I}`})}if(r.alsoKnownAs&&f.push({type:"TXT",name:"_aka._did.",ttl:as,data:r.alsoKnownAs.join(or)}),r.controller){let I=Array.isArray(r.controller)?r.controller.join(or):r.controller;f.push({type:"TXT",name:"_cnt._did.",ttl:as,data:I})}for(let[I,A]of(c=(s=r.verificationMethod)===null||s===void 0?void 0:s.entries())!==null&&c!==void 0?c:[]){let O=`k${I}`;y.push(O);let T=A.id.split("#").pop();p.set(T,O);let M=A.publicKeyJwk;if(!(M?.crv&&M.crv in $_))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=sr[M.crv],j=yield Nt.keyConverter(M.crv).publicKeyToBytes({publicKey:M}),$=ne.uint8Array(j).toBase64Url(),Z=[`t=${q}`,`k=${$}`];T!=="0"&&(yield we({jwk:M}))!==T&&Z.unshift(`id=${T}`),M.alg!==K_[q]&&Z.push(`a=${M.alg}`),A.controller!==r.id&&Z.push(`c=${A.controller}`),f.push({type:"TXT",name:`_${O}._did.`,ttl:as,data:Z.join(Pp)})}(u=r.service)===null||u===void 0||u.forEach((I,A)=>{let O=`s${A}`;g.push(O);let{id:T,type:M,serviceEndpoint:q}=I,j=P_(I,["id","type","serviceEndpoint"]);T=$r(T),q=Array.isArray(q)?q.join(","):q;let Z=Object.entries(Object.assign({id:T,t:M,se:q},j)).map(([G,_])=>`${G}=${_}`).join(Pp),Q=Nt.chunkDataIfNeeded(Z);f.push({type:"TXT",name:`_${O}._did.`,ttl:as,data:Q})});let x=[`v=${TC}`];if(y.length&&x.push(`vm=${y.join(or)}`),Object.keys(Hi).forEach(I=>{var A;let O=(A=r[I])===null||A===void 0?void 0:A.map(T=>p.get(T.split("#").pop()));if(O){let T=cb[I];x.push(`${T}=${O.join(or)}`)}}),g.length&&x.push(`svc=${g.join(or)}`),!((d=n.types)===null||d===void 0)&&d.length){let A=n.types.map(O=>typeof O=="string"?sb[O]:O);f.push({type:"TXT",name:"_typ._did.",ttl:as,data:`id=${A.join(or)}`})}f.push({type:"TXT",name:"_did."+t.getUniqueDidSuffix(r.id)+".",ttl:as,data:x.join(Pp)});for(let I of i||[])h.push({type:"NS",name:"_did."+t.getUniqueDidSuffix(r.id)+".",ttl:as,data:I+"."});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=Xw.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 It.bytesToPublicKey({publicKeyBytes:n})})}static identifierToIdentityKeyBytes({didUri:e}){let r=xe.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 It.publicKeyToBytes({publicKey:r}),i=ne.uint8Array(n).toBase32Z();return`did:${uf.methodName}:${i}`})}static keyConverter(e){let n={Ed25519:It,"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:Fa}[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 It.bytesToPublicKey({publicKeyBytes:r.k}),i=Xw.encode({seq:r.seq,v:r.v}).subarray(1,-1);if(!(yield It.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 It.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 Pe=class extends Error{constructor(e,r){super(`${e}: ${r}`),this.code=e,Object.setPrototypeOf(this,new.target.prototype)}};l();l();l();l();var bX=new Uint8Array(0);var ab=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 ub=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")}},db=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 H_(this,e)}},fb=class{constructor(e){this.decoders=e}or(e){return H_(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`)}},H_=(t,e)=>new fb({...t.decoders||{[t.prefix]:t},...e.decoders||{[e.prefix]:e}}),lb=class{constructor(e,r,n,i){this.name=e,this.prefix=r,this.baseEncode=n,this.baseDecode=i,this.encoder=new ub(e,r,n),this.decoder=new db(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 lb(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},df=({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 UX=df({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),OX=df({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),ff=df({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),DX=df({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var xr=class t{static encode(e){return ff.baseEncode(e)}static decodeAsBytes(e,r){if(!t.isBase64UrlString(e))throw new Pe(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 Z_=Kn(q_(),1);l();l();var hb;(function(t){t.Public="public",t.Private="private"})(hb||(hb={}));var Vr=hb;var Rt=class{static validateEs256kOperationKey(e,r){let n=new Set(["kty","crv","x","y"]);r===Vr.Private&&n.add("d");for(let i in e)if(!n.has(i))throw new Pe(Ye.PublicKeyJwkEs256kHasUnexpectedProperty,`SECP256K1 JWK key has unexpected property '${i}'.`);if(e.crv!=="secp256k1")throw new Pe(Ye.JwkEs256kMissingOrInvalidCrv,`SECP256K1 JWK 'crv' property must be 'secp256k1' but got '${e.crv}.'`);if(e.kty!=="EC")throw new Pe(Ye.JwkEs256kMissingOrInvalidKty,`SECP256K1 JWK 'kty' property must be 'EC' but got '${e.kty}.'`);if(e.x.length!==43)throw new Pe(Ye.JwkEs256kHasIncorrectLengthOfX,"SECP256K1 JWK 'x' property must be 43 bytes.");if(e.y.length!==43)throw new Pe(Ye.JwkEs256kHasIncorrectLengthOfY,"SECP256K1 JWK 'y' property must be 43 bytes.");if(r===Vr.Private&&(e.d===void 0||e.d.length!==43))throw new Pe(Ye.JwkEs256kHasIncorrectLengthOfD,"SECP256K1 JWK 'd' property must be 43 bytes.")}static validateId(e){if(e.length>50)throw new Pe(Ye.IdTooLong,`Key ID length ${e.length} exceed max allowed length of 50.`);if(!xr.isBase64UrlString(e))throw new Pe(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 Pe(Ye.PublicKeyPurposeDuplicated,`Public key purpose '${n}' already specified.`);r.add(n)}}};l();var lf=class{};lf.hashAlgorithmInMultihashCode=18;lf.maxCanonicalizedDeltaSizeInBytes=1e3;var cr=lf;l();var W_=Kn(j_(),1);var Nn=class t{static canonicalizeAsBytes(e){let r=t.removeAllUndefinedProperties(e),n=W_.default(r);return xr.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=Y_,G_=128,UC=127,OC=~UC,DC=Math.pow(2,31);function Y_(t,e,r){e=e||[],r=r||0;for(var n=r;t>=DC;)e[r++]=t&255|G_,t/=128;for(;t&OC;)e[r++]=t&255|G_,t>>>=7;return e[r]=t|0,Y_.bytes=r-n+1,e}var kC=pb,NC=128,z_=127;function pb(t,n){var r=0,n=n||0,i=0,o=n,s,c=t.length;do{if(o>=c)throw pb.bytes=0,new RangeError("Could not decode varint");s=t[o++],r+=i<28?(s&z_)<<i:(s&z_)*Math.pow(2,i),i+=7}while(s>=NC);return pb.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,hf=WC;var yb=(t,e=0)=>[hf.decode(t,e),hf.decode.bytes],gb=(t,e,r=0)=>(hf.encode(t,e,r),e),mb=t=>hf.encodingLength(t);var wb=(t,e)=>{let r=e.byteLength,n=mb(t),i=n+mb(r),o=new Uint8Array(i+r);return gb(t,o,0),gb(r,o,n),o.set(e,i),new $p(t,r,e,o)},J_=t=>{let e=ab(t),[r,n]=yb(e),[i,o]=yb(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 xb=({name:t,code:e,encode:r})=>new bb(t,e,r),bb=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?wb(this.code,r):r.then(n=>wb(this.code,n))}else throw Error("Unknown type, must be binary type")}};var X_=t=>async e=>new Uint8Array(await crypto.subtle.digest(t,e)),Hp=xb({name:"sha2-256",code:18,encode:X_("SHA-256")}),lZ=xb({name:"sha2-512",code:19,encode:X_("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 Hp.digest(e)).bytes;break;default:throw new Pe(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 Hp.encode(e);break;default:throw new Pe(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=Nn.canonicalizeAsBytes(e);return yield t.hashThenEncode(n,r)})}static canonicalizeThenDoubleHashThenEncode(e,r){return pf(this,void 0,void 0,function*(){let n=Nn.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 xr.encode(n)})}static validateEncodedHashComputedUsingSupportedHashAlgorithm(e,r){let n,i=xr.decodeAsBytes(e,r);try{n=J_(i)}catch{throw new Pe(Ye.MultihashStringNotAMultihash,`Given ${r} string '${e}' is not a multihash after decoding.`)}let o=cr.hashAlgorithmInMultihashCode;if(o!==n.code)throw new Pe(Ye.MultihashUnsupportedHashAlgorithm,`Given ${r} uses unsupported multihash algorithm with code ${n.code}, should use ${o} or change IonSdkConfig to desired hashing algorithm.`)}};l();var Eb;(function(t){t.Create="create",t.Update="update",t.Deactivate="deactivate",t.Recover="recover"})(Eb||(Eb={}));var yf=Eb;l();var vb;(function(t){t.Replace="replace",t.AddPublicKeys="add-public-keys",t.RemovePublicKeys="remove-public-keys",t.AddServices="add-services",t.RemoveServices="remove-services"})(vb||(vb={}));var Ec=vb;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())})},us=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;Rt.validateEs256kOperationKey(r,Vr.Public),Rt.validateEs256kOperationKey(n,Vr.Public),t.validateDidDocumentKeys(i),t.validateServices(o);let s=cr.hashAlgorithmInMultihashCode,c=[{action:Ec.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 Vp(this,void 0,void 0,function*(){t.validateDidSuffix(e.didSuffix),Rt.validateEs256kOperationKey(e.recoveryPublicKey,Vr.Public);let r=cr.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 Vp(this,void 0,void 0,function*(){t.validateDidSuffix(e.didSuffix),Rt.validateEs256kOperationKey(e.recoveryPublicKey,Vr.Public),Rt.validateEs256kOperationKey(e.nextRecoveryPublicKey,Vr.Public),Rt.validateEs256kOperationKey(e.nextUpdatePublicKey,Vr.Public),t.validateDidDocumentKeys(e.document.publicKeys),t.validateServices(e.document.services);let r=cr.hashAlgorithmInMultihashCode,n=yield Lt.canonicalizeThenHashThenEncode(e.recoveryPublicKey,r),i=[{action:Ec.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 Vp(this,void 0,void 0,function*(){if(t.validateDidSuffix(e.didSuffix),Rt.validateEs256kOperationKey(e.updatePublicKey,Vr.Public),Rt.validateEs256kOperationKey(e.nextUpdatePublicKey,Vr.Public),t.validateServices(e.servicesToAdd),t.validateDidDocumentKeys(e.publicKeysToAdd),e.idsOfServicesToRemove!==void 0)for(let g of e.idsOfServicesToRemove)Rt.validateId(g);if(e.idsOfPublicKeysToRemove!==void 0)for(let g of e.idsOfPublicKeysToRemove)Rt.validateId(g);let r=[],n=e.servicesToAdd;if(n!==void 0&&n.length>0){let g={action:Ec.AddServices,services:n};r.push(g)}let i=e.idsOfServicesToRemove;if(i!==void 0&&i.length>0){let g={action:Ec.RemoveServices,ids:i};r.push(g)}let o=e.publicKeysToAdd;if(o!==void 0&&o.length>0){let g={action:Ec.AddPublicKeys,publicKeys:o};r.push(g)}let s=e.idsOfPublicKeysToRemove;if(s!==void 0&&s.length>0){let g={action:Ec.RemovePublicKeys,ids:s};r.push(g)}let c=cr.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 Pe(Ye.DidDocumentPublicKeyMissingOrIncorrectType,"DID Document key 'publicKeyJwk' property is not a non-array object.");if(Rt.validateId(n.id),r.has(n.id))throw new Pe(Ye.DidDocumentPublicKeyIdDuplicated,`DID Document key with ID '${n.id}' already exists.`);r.add(n.id),Rt.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 Pe(Ye.DidDocumentServiceIdDuplicated,"Service id has to be unique");r.add(n.id)}}}static validateService(e){Rt.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 Pe(Ye.ServiceTypeTooLong,n)}if(Array.isArray(e.serviceEndpoint)){let n="Service endpoint value cannot be an array.";throw new Pe(Ye.ServiceEndpointCannotBeAnArray,n)}if(typeof e.serviceEndpoint=="string"&&Z_.parse(e.serviceEndpoint).error!==void 0)throw new Pe(Ye.ServiceEndpointStringNotValidUri,`Service endpoint string '${e.serviceEndpoint}' is not a URI.`)}static validateDeltaSize(e){let r=Nn.canonicalizeAsBytes(e);if(r.length>cr.maxCanonicalizedDeltaSizeInBytes){let n=`Delta of ${r.length} bytes exceeded limit of ${cr.maxCanonicalizedDeltaSizeInBytes} bytes.`;throw new Pe(Ye.DeltaExceedsMaximumSize,n)}}};var Q_=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())})},eu=class t{static createLongFormDid(e){return Q_(this,void 0,void 0,function*(){let r=yield us.createCreateRequest(e),n=yield t.computeDidUniqueSuffix(r.suffixData),i;cr.network===void 0||cr.network==="mainnet"?i=`did:ion:${n}`:i=`did:ion:${cr.network}:${n}`;let o={suffixData:r.suffixData,delta:r.delta},s=Nn.canonicalizeAsBytes(o),c=xr.encode(s);return`${i}:${c}`})}static computeDidUniqueSuffix(e){return Q_(this,void 0,void 0,function*(){let r=Nn.canonicalizeAsBytes(e),n=yield Lt.hash(r,cr.hashAlgorithmInMultihashCode);return xr.encode(n)})}};l();l();var eI;(function(t){t.Mainnet="mainnet",t.Testnet="test"})(eI||(eI={}));l();var tI;(function(t){t.Authentication="authentication",t.AssertionMethod="assertionMethod",t.CapabilityInvocation="capabilityInvocation",t.CapabilityDelegation="capabilityDelegation",t.KeyAgreement="keyAgreement"})(tI||(tI={}));l();var ds=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())})},yi;(function(t){t.Ed25519="Ed25519",t.secp256k1="secp256k1",t.secp256r1="secp256r1",t.X25519="X25519"})(yi||(yi={}));var YC={Ed25519:yi.Ed25519,ES256K:yi.secp256k1,ES256:yi.secp256r1,"P-256":yi.secp256r1,secp256k1:yi.secp256k1,secp256r1:yi.secp256r1},rI="https://ion.tbd.engineering",Sb=class t extends ln{static create(){return ds(this,arguments,void 0,function*({keyManager:e=new Zt,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:yi.secp256k1}),g=yield e.getPublicKey({keyUri:p}),y=yield e.generateKey({algorithm:yi.secp256k1}),x=yield e.getPublicKey({keyUri:y}),S=yield vc.computeLongFormDidUri({recoveryKey:g,updateKey:x,services:(a=r.services)!==null&&a!==void 0?a:[],verificationMethods:h}),{didDocument:I,didResolutionMetadata:A}=yield t.resolve(S,{gatewayUri:r.gatewayUri});if(I===null)throw new Error(`Unable to resolve DID during creation: ${A?.error}`);let O=new wr({uri:S,document:I,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 ds(this,arguments,void 0,function*({didDocument:r,methodId:n}){var i;let o=xe.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 ds(this,arguments,void 0,function*({portableDid:r,keyManager:n=new Zt}){let i=xe.parse(r.uri);if(i?.method!==t.methodName)throw new re(ie.MethodNotSupported,"Method not supported");return yield wr.import({portableDid:r,keyManager:n})})}static publish(e){return ds(this,arguments,void 0,function*({did:r,gatewayUri:n=rI}){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:s_({didDocument:r.document,methodId:d.id})})))!==null&&o!==void 0?o:[],a=yield vc.createIonDocument({services:(s=r.document.service)!==null&&s!==void 0?s:[],verificationMethods:c}),u=yield vc.constructCreateRequest({ionDocument:a,recoveryKey:r.metadata.recoveryKey,updateKey:r.metadata.updateKey});try{let d=vc.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 ds(this,arguments,void 0,function*(r,n={}){var i,o;let s=xe.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:rI;try{let a=vc.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})})}})}};Sb.methodName="ion";var vc=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 ds(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 eu.createLongFormDid({document:s,recoveryKey:c,updateKey:a})})}static constructCreateRequest(e){return ds(this,arguments,void 0,function*({ionDocument:r,recoveryKey:n,updateKey:i}){return yield us.createCreateRequest({document:r,recoveryKey:t.normalizeJwk(n),updateKey:t.normalizeJwk(i)})})}static createIonDocument(e){return ds(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 we({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())})},Ab=class t extends ln{static create(){return qp(this,arguments,void 0,function*({keyManager:e=new Zt,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 wr({uri:f,document:p,metadata:{},keyManager:e})})}static getSigningMethod(e){return qp(this,arguments,void 0,function*({didDocument:r}){var n;let i=xe.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 Zt}){let i=xe.parse(r.uri);if(i?.method!==t.methodName)throw new re(ie.MethodNotSupported,"Method not supported");let o=yield wr.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=xe.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})})}};Ab.methodName="jwk";l();var Cn=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())})},fo;(function(t){t.Ed25519="Ed25519",t.secp256k1="secp256k1",t.secp256r1="secp256r1",t.X25519="X25519"})(fo||(fo={}));var Tb={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:fo.Ed25519,ES256K:fo.secp256k1,ES256:fo.secp256r1,"P-256":fo.secp256r1,secp256k1:fo.secp256k1,secp256r1:fo.secp256r1,X25519:fo.X25519},_b=class t extends ln{static create(){return Cn(this,arguments,void 0,function*({keyManager:e=new Zt,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 Er.publicKeyToMultibaseId({publicKey:u}),f=`did:${t.methodName}:${d}`,p=(yield t.resolve(f,r)).didDocument;return new wr({uri:f,document:p,metadata:{},keyManager:e})})}static getSigningMethod(e){return Cn(this,arguments,void 0,function*({didDocument:r}){var n;let i=xe.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 Cn(this,arguments,void 0,function*({portableDid:r,keyManager:n=new Zt}){let i=xe.parse(r.uri);if(i?.method!==t.methodName)throw new re(ie.MethodNotSupported,"Method not supported");let o=yield wr.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 Cn(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 Cn(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=xe.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 o_({didDocument:a}).forEach(g=>{let y=Tb[g];h.push(y)}),a["@context"]=h,a})}static createEncryptionMethod(e){return Cn(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=Er.MULTICODEC_PUBLIC_KEY_LENGTH[u];if(d!==f)throw new re(ie.InvalidPublicKeyLength,`Expected ${d} bytes. Actual: ${f}`);let h=Fw({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 Tb))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 Er.multicodecToJwk({code:u});c.publicKeyJwk=yield Er.keyConverter(g).bytesToPublicKey({publicKeyBytes:a})}return c})}static createSignatureMethod(e){return Cn(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}=jw({multibaseKeyId:n}),f=a.byteLength,h=Er.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 It.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 Tb))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 Er.multicodecToJwk({code:u});c.publicKeyJwk=yield Er.keyConverter(y).bytesToPublicKey({publicKeyBytes:a})}return c})}static deriveEncryptionKey(e){return Cn(this,arguments,void 0,function*({multibaseValue:r}){let n={keyBytes:new Uint8Array,multicodecCode:0},{keyBytes:i,multicodecCode:o}=jw({multibaseKeyId:r});if(o===237){let s=yield Er.keyConverter("Ed25519").bytesToPublicKey({publicKeyBytes:i}),c=yield It.convertPublicKeyToX25519({publicKey:s});n={keyBytes:yield Er.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&&aa(n)==="String"&&n.startsWith("z")}};_b.methodName="key";var Er=class t{static jwkToMulticodec(e){return Cn(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:zt.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:It,"P-256":Vt,secp256k1:kt,X25519:Fa}[e];if(!n)throw new re(ie.InvalidPublicKeyType,`Unsupported curve: ${e}`);return n}static multicodecToJwk(e){return Cn(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?zt.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 Cn(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 Fw({keyBytes:i,multicodecName:o})})}};Er.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"};Er.MULTICODEC_PUBLIC_KEY_LENGTH={231:33,236:32,237:32};Er.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())})},Ib=class t extends ln{static resolve(e,r){return XC(this,void 0,void 0,function*(){let n=xe.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"}})}})}};Ib.methodName="web";l();var nL=Kn(iI(),1),iL=Kn(rm(),1);l();l();var st=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 capabilityInvocationEntry(e,r){let n=t.relationshipMethodId(r,e.id);if(n!==void 0)return e.capabilityInvocation?.find(i=>t.relationshipMethodId(i,e.id)===n)}static verificationMethodOfEntry(e,r){if(t.isDidVerificationMethod(r))return r;let n=t.absoluteDidUrl(r,e.id);if(n!==void 0)return e.verificationMethod?.find(i=>t.absoluteDidUrl(i?.id,e.id)===n)}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 Ve("Required parameter missing: 'didDocument'");let r=[];return r.push(...e.verificationMethod?.filter(t.isDidVerificationMethod)??[]),Object.keys(Hi).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=e.split(":");if(n.length!==4)throw new re(ie.InvalidDid,`Invalid capabilityId: ${e}`);let[i,o,s,c]=n;if(!i||i!=="urn")throw new re(ie.InvalidDid,`Invalid capabilityId: ${e}`);if(!o||o!=="zcap")throw new re(ie.InvalidDid,`Invalid capabilityId: ${e}`);if(!s||s!=="root")throw new re(ie.InvalidDid,`Invalid capabilityId: ${e}`);let u=decodeURIComponent(c);return r.id=e,r.controller=u,r.invocationTarget=u,r}};l();l();l();l();l();l();l();function oI(t,e,r){return t&e^~t&r}function sI(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=Ll(this.buffer)}update(e){ia(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=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){ia(this),Mv(e,this),this.finished=!0;let{buffer:r,view:n,blockLen:i,isLE:o}=this,{pos:s}=this;r[s++]=128,Ps(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()}},lo=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]),fs=new Uint32Array(64),Bb=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)fs[f]=e.getUint32(r,!1);for(let f=16;f<64;f++){let h=fs[f-15],p=fs[f-2],g=vn(h,7)^vn(h,18)^h>>>3,y=vn(p,17)^vn(p,19)^p>>>10;fs[f]=y+fs[f-7]+g+fs[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=vn(c,6)^vn(c,11)^vn(c,25),p=d+h+oI(c,a,u)+oL[f]+fs[f]|0,y=(vn(n,2)^vn(n,13)^vn(n,22))+sI(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(){Ps(fs)}destroy(){this.set(0,0,0,0,0,0,0,0),Ps(this.buffer)}},Rb=class extends Bb{A=lo[0]|0;B=lo[1]|0;C=lo[2]|0;D=lo[3]|0;E=lo[4]|0;F=lo[5]|0;G=lo[6]|0;H=lo[7]|0;constructor(){super(32)}};var Wp=$v(()=>new Rb,Hv(1));l();l();var ar=BigInt(0),Qt=BigInt(1),Ac=BigInt(2),uI=BigInt(3),dI=BigInt(4),fI=BigInt(5),sL=BigInt(7),lI=BigInt(8),cL=BigInt(9),hI=BigInt(16);function Ln(t,e){let r=t%e;return r>=ar?r:e+r}function qr(t,e,r){let n=t;for(;e-- >ar;)n*=n,n%=r;return n}function cI(t,e){if(t===ar)throw new Error("invert: expected non-zero number");if(e<=ar)throw new Error("invert: expected positive modulus, got "+e);let r=Ln(t,e),n=e,i=ar,o=Qt,s=Qt,c=ar;for(;r!==ar;){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!==Qt)throw new Error("invert: does not exist");return Ln(i,e)}function Ob(t,e,r){if(!t.eql(t.sqr(e),r))throw new Error("Cannot find square root")}function pI(t,e){let r=(t.ORDER+Qt)/dI,n=t.pow(e,r);return Ob(t,n,e),n}function aL(t,e){let r=(t.ORDER-fI)/lI,n=t.mul(e,Ac),i=t.pow(n,r),o=t.mul(e,i),s=t.mul(t.mul(o,Ac),i),c=t.mul(o,t.sub(s,t.ONE));return Ob(t,c,e),c}function uL(t){let e=iu(t),r=yI(t),n=r(e,e.neg(e.ONE)),i=r(e,n),o=r(e,e.neg(n)),s=(t+sL)/hI;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 Ob(c,x,a),x}}function yI(t){if(t<uI)throw new Error("sqrt is not defined for small field");let e=t-Qt,r=0;for(;e%Ac===ar;)e/=Ac,r++;let n=Ac,i=iu(t);for(;aI(i,n)===1;)if(n++>1e3)throw new Error("Cannot find square root: probably non-prime P");if(r===1)return pI;let o=i.pow(n,e),s=(e+Qt)/Ac;return function(a,u){if(a.is0(u))return u;if(aI(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=Qt<<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 dL(t){return t%dI===uI?pI:t%lI===fI?aL:t%hI===cL?uL(t):yI(t)}var fL=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function Db(t){let e={ORDER:"bigint",BYTES:"number",BITS:"number"},r=fL.reduce((n,i)=>(n[i]="function",n),e);return ed(t,r),t}function lL(t,e,r){if(r<ar)throw new Error("invalid exponent, negatives unsupported");if(r===ar)return t.ONE;if(r===Qt)return e;let n=t.ONE,i=e;for(;r>ar;)r&Qt&&(n=t.mul(n,i)),i=t.sqr(i),r>>=Qt;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 aI(t,e){let r=(t.ORDER-Qt)/Ac,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&&Xn(e);let r=e!==void 0?e:t.toString(2).length,n=Math.ceil(r/8);return{nBitLength:r,nByteLength:n}}var Ub=class{ORDER;BITS;BYTES;isLE;ZERO=ar;ONE=Qt;_lengths;_sqrt;_mod;constructor(e,r={}){if(e<=ar)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 Ln(e,this.ORDER)}isValid(e){if(typeof e!="bigint")throw new Error("invalid field element: expected bigint, got "+typeof e);return ar<=e&&e<this.ORDER}is0(e){return e===ar}isValidNot0(e){return!this.is0(e)&&this.isValid(e)}isOdd(e){return(e&Qt)===Qt}neg(e){return Ln(-e,this.ORDER)}eql(e,r){return e===r}sqr(e){return Ln(e*e,this.ORDER)}add(e,r){return Ln(e+r,this.ORDER)}sub(e,r){return Ln(e-r,this.ORDER)}mul(e,r){return Ln(e*r,this.ORDER)}pow(e,r){return lL(this,e,r)}div(e,r){return Ln(e*cI(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 cI(e,this.ORDER)}sqrt(e){return this._sqrt||(this._sqrt=dL(this.ORDER)),this._sqrt(this,e)}toBytes(e){return this.isLE?q0(e,this.BYTES):Ml(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?V0(e):Co(e);if(c&&(a=Ln(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 iu(t,e={}){return new Ub(t,e)}function gI(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=gI(t);return e+Math.ceil(e/2)}function zp(t,e,r=!1){_e(t);let n=t.length,i=gI(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?V0(t):Co(t),c=Ln(s,e-Qt)+Qt;return r?q0(c,i):Ml(c,i)}var ou=BigInt(0),Tc=BigInt(1);function gf(t,e){let r=e.negate();return t?r:e}function Pb(t,e){let r=Gp(t.Fp,e.map(n=>n.Z));return e.map((n,i)=>t.fromAffine(n.toAffine(r[i])))}function xI(t,e){if(!Number.isSafeInteger(t)||t<=0||t>e)throw new Error("invalid window size, expected [1.."+e+"], got W="+t)}function Nb(t,e){xI(t,e);let r=Math.ceil(e/t)+1,n=2**(t-1),i=2**t,o=Qu(t),s=BigInt(t);return{windows:r,windowSize:n,mask:o,maxNumber:i,shiftBy:s}}function mI(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+=Tc);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 Cb=new WeakMap,EI=new WeakMap;function Lb(t){return EI.get(t)||1}function wI(t){if(t!==ou)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>ou;)r&Tc&&(n=n.add(i)),i=i.double(),r>>=Tc;return n}precomputeWindow(e,r){let{windows:n,windowSize:i}=Nb(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=Nb(e,this.bits);for(let c=0;c<s.windows;c++){let{nextN:a,offset:u,isZero:d,isNeg:f,isNegF:h,offsetF:p}=mI(n,c,s);n=a,d?o=o.add(gf(h,r[p])):i=i.add(gf(f,r[u]))}return wI(n),{p:i,f:o}}wNAFUnsafe(e,r,n,i=this.ZERO){let o=Nb(e,this.bits);for(let s=0;s<o.windows&&n!==ou;s++){let{nextN:c,offset:a,isZero:u,isNeg:d}=mI(n,s,o);if(n=c,!u){let f=r[a];i=i.add(d?f.negate():f)}}return wI(n),i}getPrecomputes(e,r,n){let i=Cb.get(r);return i||(i=this.precomputeWindow(r,e),e!==1&&(typeof n=="function"&&(i=n(i)),Cb.set(r,i))),i}cached(e,r,n){let i=Lb(e);return this.wNAF(i,this.getPrecomputes(i,e,n),r)}unsafe(e,r,n,i){let o=Lb(e);return o===1?this._unsafeLadder(e,r,i):this.wNAFUnsafe(o,this.getPrecomputes(o,e,n),r,i)}createCache(e,r){xI(r,this.bits),EI.set(e,r),Cb.delete(e)}hasCache(e){return Lb(e)!==1}};function vI(t,e,r,n){let i=e,o=t.ZERO,s=t.ZERO;for(;r>ou||n>ou;)r&Tc&&(o=o.add(i)),n&Tc&&(s=s.add(i)),i=i.double(),r>>=Tc,n>>=Tc;return{p1:o,p2:s}}function bI(t,e,r){if(e){if(e.ORDER!==t)throw new Error("Field.ORDER must match order: Fp == p, Fn == n");return Db(e),e}else return iu(t,{isLE:r})}function SI(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>ou))throw new Error(`CURVE.${a} must be positive bigint`)}let i=bI(e.p,r.Fp,n),o=bI(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(Cl(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),Ps(i)}update(e){return ia(this),this.iHash.update(e),this}digestInto(e){ia(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()}},Mb=(t,e,r)=>new Xp(t,e).update(r).digest();Mb.create=(t,e)=>new Xp(t,e);var AI=(t,e)=>(t+(t>=0?e:-e)/TI)/e;function pL(t,e,r){let[[n,i],[o,s]]=e,c=AI(s*t,r),a=AI(-i*t,r),u=t-c*n-a*o,d=-c*i-a*s,f=u<ho,h=d<ho;f&&(u=-u),h&&(d=-d);let p=Qu(Math.ceil(F0(r)/2))+su;if(u<ho||u>=p||d<ho||d>=p)throw new Error("splitScalar (endomorphism): failed, k="+t);return{k1neg:f,k1:u,k2neg:h,k2:d}}function $b(t){if(!["compact","recovered","der"].includes(t))throw new Error('Signature format must be "compact", "recovered", or "der"');return t}function Kb(t,e){let r={};for(let n of Object.keys(e))r[n]=t[n]===void 0?e[n]:t[n];return Xu(r.lowS,"lowS"),Xu(r.prehash,"prehash"),r.format!==void 0&&$b(r.format),r}var Hb=class extends Error{constructor(e=""){super(e)}},ls={Err:Hb,_tlv:{encode:(t,e)=>{let{Err:r}=ls;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=Zu(n);if(i.length/2&128)throw new r("tlv.encode: long form length too big");let o=n>127?Zu(i.length/2|128):"";return Zu(t)+o+i+e},decode(t,e){let{Err:r}=ls,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}=ls;if(t<ho)throw new e("integer: negative integers are not allowed");let r=Zu(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}=ls;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 Co(t)}},toSig(t){let{Err:e,_int:r,_tlv:n}=ls,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}=ls,n=e.encode(2,r.encode(t.r)),i=e.encode(2,r.encode(t.s)),o=n+i;return e.encode(48,o)}},ho=BigInt(0),su=BigInt(1),TI=BigInt(2),Zp=BigInt(3),yL=BigInt(4);function _I(t,e={}){let r=SI("weierstrass",t,e),{Fp:n,Fn:i}=r,o=r.CURVE,{h:s,n:c}=o;ed(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=BI(n,i);function d(){if(!n.isOdd)throw new Error("compression is not supported: Field does not have .isOdd()")}function f(G,_,D){let{x:E,y:U}=_.toAffine(),L=n.toBytes(E);if(Xu(D,"isCompressed"),D){d();let N=!n.isOdd(U);return hr(II(N),L)}else return hr(Uint8Array.of(4),L,n.toBytes(U))}function h(G){_e(G,void 0,"Point");let{publicKey:_,publicKeyUncompressed:D}=u,E=G.length,U=G[0],L=G.subarray(1);if(E===_&&(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=${_} or uncompressed=${D}`)}let p=e.toBytes||f,g=e.fromBytes||h;function y(G){let _=n.sqr(G),D=n.mul(_,G);return n.add(n.add(D,n.mul(G,o.a)),o.b)}function x(G,_){let D=n.sqr(_),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,Zp),yL),I=n.mul(n.sqr(o.b),BigInt(27));if(n.is0(n.add(S,I)))throw new Error("bad curve params: a or b");function A(G,_,D=!1){if(!n.isValid(_)||D&&n.is0(_))throw new Error(`bad point coordinate ${G}`);return _}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=j0((G,_)=>{let{X:D,Y:E,Z:U}=G;if(n.eql(U,n.ONE))return{x:D,y:E};let L=G.is0();_==null&&(_=L?n.ONE:n.inv(U));let N=n.mul(D,_),R=n.mul(E,_),C=n.mul(U,_);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:_,y:D}=G.toAffine();if(!n.isValid(_)||!n.isValid(D))throw new Error("bad point: x or y not field elements");if(!x(_,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,_,D,E,U){return D=new $(n.mul(D.X,G),D.Y,D.Z),_=gf(E,_),D=gf(U,D),_.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(_,D,E){this.X=A("x",_),this.Y=A("y",D,!0),this.Z=A("z",E),Object.freeze(this)}static CURVE(){return o}static fromAffine(_){let{x:D,y:E}=_||{};if(!_||!n.isValid(D)||!n.isValid(E))throw new Error("invalid affine point");if(_ instanceof $)throw new Error("projective point not allowed");return n.is0(D)&&n.is0(E)?$.ZERO:new $(D,E,n.ONE)}static fromBytes(_){let D=$.fromAffine(g(_e(_,void 0,"point")));return D.assertValidity(),D}static fromHex(_){return $.fromBytes(Ks(_))}get x(){return this.toAffine().x}get y(){return this.toAffine().y}precompute(_=8,D=!0){return Q.createCache(this,_),D||this.multiply(Zp),this}assertValidity(){q(this)}hasEvenY(){let{y:_}=this.toAffine();if(!n.isOdd)throw new Error("Field doesn't support isOdd");return!n.isOdd(_)}equals(_){O(_);let{X:D,Y:E,Z:U}=this,{X:L,Y:N,Z:R}=_,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:_,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(_,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(_,z),W=n.sub(V,z),W=n.mul(_,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(_){O(_);let{X:D,Y:E,Z:U}=this,{X:L,Y:N,Z:R}=_,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(_){return this.add(_.negate())}is0(){return this.equals($.ZERO)}multiply(_){let{endo:D}=e;if(!i.isValidNot0(_))throw new Error("invalid scalar: out of range");let E,U,L=N=>Q.cached(this,N,R=>Pb($,R));if(D){let{k1neg:N,k1:R,k2neg:C,k2:P}=T(_),{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(_);E=N,U=R}return Pb($,[E,U])[0]}multiplyUnsafe(_){let{endo:D}=e,E=this;if(!i.isValid(_))throw new Error("invalid scalar: out of range");if(_===ho||E.is0())return $.ZERO;if(_===su)return E;if(Q.hasCache(this))return this.multiply(_);if(D){let{k1neg:U,k1:L,k2neg:N,k2:R}=T(_),{p1:C,p2:P}=vI($,E,L,R);return j(D.beta,C,P,U,N)}else return Q.unsafe(E,_)}toAffine(_){return M(this,_)}isTorsionFree(){let{isTorsionFree:_}=e;return s===su?!0:_?_($,this):Q.unsafe(this,c).is0()}clearCofactor(){let{clearCofactor:_}=e;return s===su?this:_?_($,this):this.multiplyUnsafe(s)}isSmallOrder(){return this.multiplyUnsafe(s).is0()}toBytes(_=!0){return Xu(_,"isCompressed"),this.assertValidity(),p($,this,_)}toHex(_=!0){return Ms(this.toBytes(_))}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 II(t){return Uint8Array.of(t?2:3)}function BI(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||$s,i=Object.assign(BI(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 zp(_e(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(!Ju(p)||"_lengths"in r&&r._lengths||g===y)return;let S=_e(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=Jp(c,a);return Object.freeze({getPublicKey:a,getSharedSecret:d,keygen:h,Point:t,utils:f,lengths:i})}function RI(t,e,r={}){Cl(e),ed(r,{},{hmac:"function",lowS:"boolean",randomBytes:"function",bits2int:"function",bits2int_modN:"function"}),r=Object.assign({},r);let n=r.randomBytes||$s,i=r.hmac||((D,E)=>Mb(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),g={prehash:!0,lowS:typeof r.lowS=="boolean"?r.lowS:!0,format:"compact",extraEntropy:!1},y=c*TI<o.ORDER;function x(D){let E=c>>su;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 I(){if(y)throw new Error('"recovered" sig type is not supported for cofactor >2 curves')}function A(D,E){$b(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(I(),![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}=ls.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(Ks(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(hr(II((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=g.format){if($b(E),E==="der")return Ks(ls.hexFromSig(this));let{r:U,s:L}=this,N=s.toBytes(U),R=s.toBytes(L);return E==="recovered"?(I(),hr(Uint8Array.of(this.assertRecovery()),N,R)):hr(N,R)}toHex(E){return Ms(this.toBytes(E))}}let T=r.bits2int||function(E){if(E.length>8192)throw new Error("input is too large");let U=Co(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=Qu(a);function j(D){return jv("num < 2^"+a,D,ho,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}=Kb(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(_e(Y,void 0,"extraEntropy"))}let J=hr(...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===ho)return;let Oe=s.create(ue*s.create(z+ce*P));if(Oe===ho)return;let Me=(ee.x===ce?0:2)|Number(ee.y&su),Je=Oe;return L&&x(Oe)&&(Je=s.neg(Oe),Me^=1),new O(ce,Je,y?void 0:Me)}return{seed:J,k2sig:W}}function Q(D,E,U={}){let{seed:L,k2sig:N}=Z(D,E,U);return Wv(e.outputLen,s.BYTES,i)(L,N).toBytes(U.format)}function G(D,E,U,L={}){let{lowS:N,prehash:R,format:C}=Kb(L,g);if(U=_e(U,void 0,"publicKey"),E=$(E,R),!Ju(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 _(D,E,U={}){let{prehash:L}=Kb(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:_,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),Vb=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=qr(d,r,e)*d%e,h=qr(f,r,e)*d%e,p=qr(h,Vb,e)*u%e,g=qr(p,i,e)*p%e,y=qr(g,o,e)*g%e,x=qr(y,c,e)*y%e,S=qr(x,a,e)*x%e,I=qr(S,c,e)*y%e,A=qr(I,r,e)*d%e,O=qr(A,s,e)*g%e,T=qr(O,n,e)*u%e,M=qr(T,Vb,e);if(!Qp.eql(Qp.sqr(M),t))throw new Error("Cannot find square root");return M}var Qp=iu(ty.p,{sqrt:bL}),_c=_I(ty,{Fp:Qp,endo:mL}),hn=RI(_c,Wp),UI={};function ey(t,...e){let r=UI[t];if(r===void 0){let n=Wp(Fv(t));r=hr(n,n),UI[t]=r}return Wp(hr(r,...e))}var Fb=t=>t.toBytes(!0).slice(1),jb=t=>t%Vb===wL;function qb(t){let{Fn:e,BASE:r}=_c,n=e.fromBytes(t),i=r.multiply(n);return{scalar:jb(i.y)?n:e.neg(n),bytes:Fb(i)}}function DI(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);jb(i)||(i=e.neg(i));let o=_c.fromAffine({x:t,y:i});return o.assertValidity(),o}var mf=Co;function kI(...t){return _c.Fn.create(mf(ey("BIP0340/challenge",...t)))}function OI(t){return qb(t).bytes}function xL(t,e,r=$s(32)){let{Fn:n}=_c,i=_e(t,void 0,"message"),{bytes:o,scalar:s}=qb(e),c=_e(r,32,"auxRand"),a=n.toBytes(s^mf(ey("BIP0340/aux",c))),u=ey("BIP0340/nonce",a,o,i),{bytes:d,scalar:f}=qb(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),!NI(p,i,o))throw new Error("sign: Invalid signature produced");return p}function NI(t,e,r){let{Fp:n,Fn:i,BASE:o}=_c,s=_e(t,64,"signature"),c=_e(e,void 0,"message"),a=_e(r,32,"publicKey");try{let u=DI(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),Fb(u),c),p=o.multiplyUnsafe(f).add(u.multiplyUnsafe(i.neg(h))),{x:g,y}=p.toAffine();return!(p.is0()||!jb(y)||g!==d)}catch{return!1}}var ry=(()=>{let r=(n=$s(48))=>zp(n,ty.n);return{keygen:Jp(r,OI),getPublicKey:OI,sign:xL,verify:NI,Point:_c,utils:{randomSecretKey:r,taggedHash:ey,lift_x:DI,pointToBytes:Fb},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 LI(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 Wb(t,e){if(typeof e!="string")throw new Error(`${t}: string expected`);return!0}function PI(t){if(!Number.isSafeInteger(t))throw new Error(`invalid integer: ${t}`)}function Gb(t){if(!Array.isArray(t))throw new Error("array expected")}function MI(t,e){if(!LI(!0,e))throw new Error(`${t}: array of strings expected`)}function vL(t,e){if(!LI(!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;MI("alphabet",e);let n=new Map(e.map((i,o)=>[i,o]));return{encode:i=>(Gb(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=>(Gb(i),i.map(o=>{Wb("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 Wb("join",t),{encode:e=>(MI("join.decode",e),e.join(t)),decode:e=>(Wb("join.decode",e),e.split(t))}}function CI(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(Gb(t),!t.length)return[];let n=0,i=[],o=Array.from(t,c=>{if(PI(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 _L(t){PI(t);let e=2**8;return{encode:r=>{if(!EL(r))throw new Error("radix.encode input should be Uint8Array");return CI(Array.from(r),e,t)},decode:r=>(vL("radix.decode",r),Uint8Array.from(CI(r,t,e)))}}var IL=t=>SL(_L(58),AL(t),TL("")),cu=IL("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz");var KI=new Uint8Array([231,1]),ft=class t{#e;#t={prefix:KI,key:[],encoded:""};constructor(e){let r=e instanceof Uint8Array?e:Ir(e);if(!r||r.length!==33)throw new ks("Invalid argument: byte length must be 33 (compressed)","CONSTRUCTOR_ERROR",{keyBytes:r});if(!hn.utils.isValidPublicKey(r))throw new ks("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 ks("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 cu.decode(this.multibase.encoded.slice(1))}encode(){let e=Array.from(this.compressed),r=Array.from(KI);return r.push(...e),"z"+cu.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 ks(`Invalid scheme: ${n.scheme}.`,"VERIFY_SIGNATURE_ERROR",n)}equals(e){return oa(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 $I=new Uint8Array([129,38]),BL=Pt(ke($I)),Fr=class t{#e;#t;#r;constructor(e){let r=e instanceof Uint8Array,n=typeof e=="bigint";if(!r&&!n)throw new Gn("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 Gn("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 Gn("Invalid seed: must be valid bigint","CONSTRUCTOR_ERROR");this.#r=this.encode()}destroy(){this.#e&&this.#e.fill(0),this.#t=void 0,this.#r=""}get bytes(){return new Uint8Array(this.#e)}get seed(){return BigInt(this.#t)}get hex(){return Pt(this.bytes)}get multibase(){return this.#r}encode(){let e=Array.from(this.bytes),r=Array.from($I);return r.push(...e),"z"+cu.encode(Uint8Array.from(r))}equals(e){return oa(this.bytes,e.bytes)}computePublicKey(){return new ft(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 Gn(`Invalid scheme: ${r.scheme}.`,"SIGN_ERROR",r)}static decode(e){let r=cu.decode(e.slice(1));if(r.length!==34)throw new Gn("Invalid argument: must be 34 byte secretKeyMultibase","DECODE_MULTIBASE_ERROR");let n=r.slice(0,2);if(Pt(ke(n))!==BL)throw new Gn(`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 Gn("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=Br(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 po=class t{#e;#t;constructor(e={}){if(!e.publicKey&&!e.secretKey)throw new xn("Argument missing: must at least provide a publicKey","CONSTRUCTOR_ERROR");if(e.secretKey instanceof Uint8Array?this.#e=new Fr(e.secretKey):e.secretKey instanceof Fr&&(this.#e=e.secretKey),e.publicKey instanceof ft?this.#t=e.publicKey:e.publicKey instanceof Uint8Array?this.#t=new ft(e.publicKey):this.#t=this.#e.computePublicKey(),this.#e&&e.publicKey){let r=this.#e.computePublicKey();if(!this.#t.equals(r))throw new xn("Public key does not match secret key","CONSTRUCTOR_ERROR")}}get secretKey(){if(!this.#e)throw new xn("Secret key not available","SECRET_KEY_ERROR");if(!this.#e.isValid())throw new xn("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 xn("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 xn("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:Fr.fromJSON(e.secretKey),publicKey:ft.fromJSON(e.publicKey)})}static fromSecret(e){let r=typeof e=="string"?Ir(e):e;if(r.length!==32)throw new xn("Invalid arg: must be 32 byte secret key","FROM_SECRET_KEY_ERROR");let n=new Fr(r),i=n.computePublicKey();return new t({secretKey:n,publicKey:i})}static fromBigInt(e){let r=Fr.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=Fr.random(),r=new Fr(e),n=r.computePublicKey();return new t({secretKey:r,publicKey:n})}};l();l();l();l();var RL=["https://www.w3.org/ns/did/v1.1","https://btcr2.dev/context/v1"],au="Multikey",uu="zQ3s",ur="did:btcr2:_",are="",UL=/did:btcr2:(x1[qpzry9x8gf2tvdw0s3jn54khce6mua7l]*)/g;function OL(t){if(!st.isDidVerificationMethod(t))return!1;let{type:e,publicKeyMultibase:r}=t;return e===au&&typeof r=="string"&&r.startsWith(uu)}var zb=class{id;type;controller;publicKeyMultibase;secretKeyMultibase;constructor({id:e,type:r,controller:n,publicKeyMultibase:i,secretKeyMultibase:o}){if(r!==au)throw new Ve(`Invalid verification method: type must be "${au}"`,qe,{id:e,type:r});if(typeof i!="string"||!i.startsWith(uu))throw new Ve(`Invalid verification method: publicKeyMultibase must start with "${uu}"`,qe,{id:e,publicKeyMultibase:i});this.id=e,this.type=r,this.controller=n,this.publicKeyMultibase=i,this.secretKeyMultibase=o,o||delete this.secretKeyMultibase}},pn=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 Ve("DID Document must have an id",qe,e);let r=e.id.includes("k1")?en.KEY:en.EXTERNAL,n=e.id===ur,{id:i,verificationMethod:o,service:s}=e;if(!n){if(!t.isValidId(i))throw new Ve(`Invalid id: ${i}`,qe,e);if(!t.isValidVerificationMethods(o))throw new Ve("Invalid verificationMethod: "+o,qe,e);if(!t.isValidServices(s))throw new Ve("Invalid service: "+s,qe,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 zb({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 Ve('Invalid "@context"',qe,e);if(!this.isValidId(e?.id))throw new Ve('Invalid "id"',qe,e);if(!this.isValidVerificationMethods(e?.verificationMethod))throw new Ve('Invalid "verificationMethod"',qe,e);if(!this.isValidServices(e?.service))throw new Ve('Invalid "service"',qe,e);if(!this.isValidVerificationRelationships(e))throw new Ve("Invalid verification relationships",qe,e);return!0}static isValidContext(e){return!Array.isArray(e)||e.length===0?!1:RL.every(r=>e.includes(r))}static isValidId(e){if(typeof e!="string")return!1;try{return vr.decode(e),!0}catch{return!1}}static isValidVerificationMethods(e){return Array.isArray(e)&&e.every(OL)}static isValidServices(e){return Array.isArray(e)&&e.every(c_)}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"||st.isDidVerificationMethod(c))})}static validate(e){return e.id===ur?e.validateGenesis():t.isValid(e),e}validateGenesis(){if(this.id!==ur)throw new Ve("Invalid GenesisDocument ID",qe,this);if(!this.verificationMethod.every(e=>e.id.includes(ur)&&e.controller===ur))throw new Ve("Invalid GenesisDocument verificationMethod",qe,this);if(!this.service.every(e=>e.id.includes(ur)))throw new Ve("Invalid GenesisDocument service",qe,this);if(!t.isValidVerificationRelationships(this))throw new Ve("Invalid GenesisDocument assertionMethod",qe,this);return!0}toIntermediate(){if(this.id.includes("k1"))throw new Ve("Cannot convert a key identifier to an intermediate document",qe,this);return new wf(this)}},wf=class t extends pn{constructor(e){super(e)}toDidDocument(e){let r=JSON.stringify(this).replaceAll(ur,e),n=JSON.parse(r);return new pn(n)}static fromDidDocument(e){let r=Ls.cloneReplace(e,UL,ur);return new t(r)}static create(e,r,n){return new t({id:ur,...r,verificationMethod:e,service:n})}static fromPublicKey(e,r){let n=new ft(e),i=ur,o=Li(n.compressed,ko(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 Do(tr(e))}};var HI="did:btcr2:",vr=class t{static encode(e,r){let{idType:n,version:i=1,network:o="bitcoin"}=r;if(!(n in en))throw new ut('Expected "idType" to be "KEY" or "EXTERNAL"',pt,{idType:n});if(i!==1)throw new ut('Expected "version" to be 1',pt,{version:i});if(typeof o!="string")throw new ut('Expected "network" to be a known network name',pt,{network:o});let s=na[o];if(typeof s!="number")throw new ut('Invalid "network" name',pt,{network:o});if(n==="KEY")try{new ft(e)}catch{throw new ut('Expected "genesisBytes" to be a valid compressed secp256k1 public key',pt,{genesisBytes:e})}else if(e.length!==32)throw new ut('Expected "genesisBytes" to be a 32-byte hash for EXTERNAL identifiers',pt,{genesisBytes:e});let c=n==="KEY"?"k":"x",a=i-1<<4|s,u=new Uint8Array([a,...e]);return`${HI}${_s.encodeFromBytes(c,u)}`}static decode(e){let r=e.split(":");if(r.length!==3)throw new ut(`Invalid did: ${e}`,pt,{identifier:e});let[n,i,o]=r;if(n!=="did")throw new ut(`Invalid did: ${e}`,pt,{identifier:e});if(i!=="btcr2")throw new ut(`Invalid did method: ${i}`,El,{identifier:e});if(!o)throw new ut(`Invalid method-specific id: ${e}`,pt,{identifier:e});if(o!==o.toLowerCase())throw new ut(`Invalid method-specific id (must be lowercase): ${e}`,pt,{identifier:e});let s,c;try{({prefix:s,bytes:c}=_s.decodeToBytes(o))}catch(g){let y=g instanceof Error?g.message:String(g);throw new ut(`Invalid method-specific id (Bech32m decoding failed: ${y}): ${e}`,pt,{identifier:e,reason:y})}if(!["x","k"].includes(s))throw new ut(`Invalid hrp: ${s}`,pt,{identifier:e});if(!c||c.length<1)throw new ut(`Failed to decode id: ${o}`,pt,{identifier:e});let a=s==="k"?"KEY":"EXTERNAL",u=c[0]>>>4;if(u!==0)throw new ut(`Invalid btcr2_version (expected 0): ${u}`,pt,{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 ut(`Invalid network (${g}): ${f}`,pt,{identifier:e})}let p=c.slice(1);if(a==="KEY")try{new ft(p)}catch{throw new ut(`Invalid genesisBytes: ${p}`,pt,{identifier:e})}else if(p.length!==32)throw new ut(`Invalid genesisBytes: ${p}`,pt,{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,I={})=>(n.push({name:x,ok:!1,detail:S}),{did:e,valid:!1,...I,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 "${HI}" 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}=_s.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 ft(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(!Eo(x,g))return o("genesisBytesMatch",`The supplied genesis bytes ${ve.encode(x)} do not equal the genesis bytes of the identifier ${ve.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!==ur)return o("genesisDocument",`The genesis document id must be "${ur}", got ${JSON.stringify(S)}.`,{idType:d,network:p});try{wf.fromJSON(x)}catch(A){return o("genesisDocument",`Invalid genesis document: ${A instanceof Error?A.message:String(A)}`,{idType:d,network:p})}let I=zn(x);if(!Eo(I,g))return o("genesisDocument",`The genesis document hash ${ve.encode(I)} does not equal the genesis bytes ${ve.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=po.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 ut(`Cannot extract public key from EXTERNAL DID: ${e}. EXTERNAL DIDs encode a document hash, not a public key.`,pt,{did:e,idType:r});return new ft(n)}static isValid(e){try{return this.decode(e),!0}catch{return!1}}};var dr=class{static parseBitcoinAddress(e){if(!e.startsWith("bitcoin:"))throw new be("Invalid Bitcoin URI format","BEACON_SERVICE_ERROR",{uri:e});return e.replace("bitcoin:","").split("?")[0]}static isBeaconService(e){return!(!st.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 rr("Failed to create beacon services: "+n.message,"BEACON_SERVICE_ERROR",{did:e,beaconType:r})}}static createBeaconService(e,r,n){try{let i=vr.decode(e),o=ko(i.network),s=i.genesisBytes,c=`${e}#initial${r.toUpperCase()}`,u=`bitcoin:${r==="p2tr"?Rs(s.slice(1,33),void 0,o).address:r==="p2wpkh"?Bs(s,o).address:Li(s,o).address}`;return{id:c,type:n,serviceEndpoint:u}}catch(i){throw new rr("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=Li(r,n).address,s=Bs(r,n).address,c=Rs(r.slice(1,33),void 0,n).address;if(!o||!s||!c)throw new Dt("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 rr("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 DL=/^6a20([0-9a-f]{64})$/i;function VI(t){if(!t)return null;let e=DL.exec(t.trim());return e?e[1].toLowerCase():null}var qI=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=dr.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=VI(f.scriptpubkey);if(!h||!await t.spendsFromAddress(u,c,r))continue;let p=i-d.block_height+1,g=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:g}})}}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 fe(`Block ${e} has no mediantime in the block record of the Bitcoin REST backend.`,vl,{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 fe("RPC connection is not available","RPC_CONNECTION_ERROR",r);let o=await i.getBlockCount(),s=new Map(e.map(u=>[dr.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===C0)continue;let d=u.vout.slice(-1)[0];if(!d)continue;let f=VI(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]===N0||!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,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 du=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 Yb(t,e=du){return Array.isArray(t)&&t.length===e.length&&t.every((r,n)=>r===e[n])}var FI=Object.freeze({op:"add",path:"/deactivated",value:!0});l();l();l();l();l();l();var kre=new Uint8Array(0);function jI(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 kL(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,I=g.length;S!==I&&g[S]===0;)S++,y++;for(var A=(I-S)*d+1>>>0,O=new Uint8Array(A);S!==I;){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 I=(g.length-y)*u+1>>>0,A=new Uint8Array(I);g[y];){var O=r[g.charCodeAt(y)];if(O===255)return;for(var T=0,M=I-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=I-S;q!==I&&A[q]===0;)q++;for(var j=new Uint8Array(x+(I-q)),$=x;q!==I;)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 NL=kL,CL=NL,WI=CL;var Jb=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")}},Xb=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 GI(this,e)}},Zb=class{decoders;constructor(e){this.decoders=e}or(e){return GI(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 GI(t,e){return new Zb({...t.decoders??{[t.prefix]:t},...e.decoders??{[e.prefix]:e}})}var Qb=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 Jb(e,r,n),this.decoder=new Xb(e,r,i)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}};function LL({name:t,prefix:e,encode:r,decode:n}){return new Qb(t,e,r,n)}function ex({name:t,prefix:e,alphabet:r}){let{encode:n,decode:i}=WI(r,t);return LL({prefix:e,name:t,encode:n,decode:o=>jI(i(o))})}var bf=ex({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),qre=ex({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});l();function zI(t){return t===void 0?[]:Array.isArray(t)?t:[t]}var fu=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 bn("Invalid proof: missing proof.type, proof.verificationMethod and/or proof.proofPurpose",Oo,{config:r,proof:n});if(r.domain&&n.domain!==r.domain)throw new bn("Domain mismatch: proof.domain !== config.domain",Oo,{config:r,proof:n});if(r.challenge&&n.challenge!==r.challenge)throw new bn("Challenge mismatch options and challenge passed",Oo,{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 bn("Invalid proof: missing proof.type, proof.verificationMethod and/or proof.proofPurpose",Pi,s);if(r&&r!==c.proofPurpose)throw new bn("Proof purpose mismatch: proof.proofPurpose !== expectedPurpose",Pi,{proof:c,expectedPurpose:r});if(o&&o!==c.challenge)throw new bn("Challenge mismatch: proof.challenge !== expectedChallenge","INVALID_CHALLENGE_ERROR",{proof:c,expectedChallenge:o});if(i){let u=zI(i),d=zI(c.domain);if(u.length!==d.length)throw new bn("Domain mismatch: expectedDomain length does not match proof.domain length",Pi,{proof:c,expectedDomain:i});if(!u.every(f=>d.includes(f))||!d.every(f=>u.includes(f)))throw new bn("Domain mismatch: expectedDomain and proof.domain do not match",Pi,{proof:c,expectedDomain:i})}let a=this.cryptosuite.verifyProof(s);return a.mediaType=n,a}};var lu=class{type="DataIntegrityProof";cryptosuite="bip340-jcs-2025";multikey;constructor(e){this.multikey=e}toDataIntegrityProof(){return new fu(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 be("Type mismatch: config.type !== this.type",Pi,{config:r,suite:this.#e()});if(r.cryptosuite!==this.cryptosuite)throw new be("Cryptosuite mismatch: config.cryptosuite !== this.cryptosuite",Pi,{config:r,suite:this.#e()});return tr(e)}generateHash(e,r){let n=ke(Ss(e)),i=ke(Ss(r)),o=ht(n,i);return ke(o)}proofConfiguration(e){if(e.type!==this.type)throw new Uo("Type mismatch: config.type !== this.type",Oo,{config:e,suite:this.#e()});if(e.cryptosuite!==this.cryptosuite)throw new Uo("Cryptosuite mismatch: config.cryptosuite !== this.cryptosuite",Oo,{config:e,suite:this.#e()});if(e.created&&!Mi.isValidXsdDateTime(e.created))throw new Uo('Invalid config: "created" must be a valid XMLSchema DateTime string',Oo,e);return tr(e)}proofSerialization(e,r){if(r.verificationMethod!==this.multikey.fullId())throw new Uo("Id mismatch: config.verificationMethod !== this.multikey.fullId()",mv,{config:r,suite:this.#e()});return this.multikey.sign(e)}proofVerification(e,r,n){if(n.verificationMethod!==this.multikey.fullId())throw new Uo("Id mismatch: config.verificationMethod !== this.multikey.fullId()",Pi,{config:n,suite:this.#e()});return this.multikey.verify(r,e)}};l();l();l();var yo=class t{static type="Multikey";id;controller;#e;#t;constructor({id:e,controller:r,keyPair:n,externalSigner:i}){if(!n)throw new En('Argument missing: "keyPair" required',"CONSTRUCTOR_ERROR");if(!n.publicKey)throw new En('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 En("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 En("Cannot get: no secretKey","PRIVATE_KEY_ERROR")}}toCryptosuite(){return new lu(this)}sign(e){if(this.#t)return this.#t.sign(e,"bip340");if(!this.signer)throw new En("Cannot sign: no secretKey","SIGN_ERROR");return Or.sign(e,this.secretKey.bytes,Br(32))}verify(e,r){return Or.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 Fr(n),o=i.computePublicKey(),s=new po({publicKey:o,secretKey:i});return new t({id:e,controller:r,keyPair:s})}static fromSigner(e,r,n){let i=new ft(n.publicKey),o=new po({publicKey:i});return new t({id:e,controller:r,keyPair:o,externalSigner:n})}static fromPublicKey({id:e,controller:r,publicKeyBytes:n}){let i=new ft(n),o=new po({publicKey:i});return new t({id:e,controller:r,keyPair:o})}static fromVerificationMethod({id:e,controller:r,publicKeyMultibase:n}){if(!n)throw new En("Invalid publicKeyMultibase: cannot be undefined",Sl,{publicKeyMultibase:n});let i=bf.decode(n);if(i.length!==35)throw new En(`Invalid publicKeyMultibase length: ${i.length}`,Sl,{publicKeyMultibase:n});if(i[0]!==231||i[1]!==1)throw new En(`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 po({publicKey:o});return new t({id:e,controller:r,keyPair:s})}};l();l();l();function Sr(t){return t instanceof Dt?{type:t.type,message:t.message}:t instanceof Error?{type:t.name,message:t.message}:{type:"unknown",message:String(t)}}var PL=6;function xf(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}function ML(t){return xf(t)&&Object.values(t).every(e=>typeof e=="string")}function KL(t){return xf(t)?Array.isArray(t.patch)&&typeof t.sourceHash=="string"&&typeof t.targetHash=="string"&&Number.isInteger(t.targetVersionId)&&t.targetVersionId>=2&&xf(t.proof):!1}function $L(t){return xf(t)?typeof t.id=="string"&&typeof t.collapsed=="string"&&Array.isArray(t.hashes)&&t.hashes.every(e=>typeof e=="string")&&(t.nonce===void 0||typeof t.nonce=="string")&&(t.updateId===void 0||typeof t.updateId=="string"):!1}function HL(t){if(t===void 0)return PL;if(typeof t=="number"&&Number.isInteger(t)&&t>=1)return t;throw new fe(`Invalid resolution option minConf: expected a positive integer (minimum 1), got ${tx(t)}.`,Fu,{minConf:t})}function tx(t){return typeof t=="string"?JSON.stringify(t):String(t)}var VL=/^-?[0-9]+$/;function qL(t){if(t!==void 0){if(typeof t=="string"&&VL.test(t)&&Number.isSafeInteger(Number(t)))return Number(t);throw new fe(`Invalid resolution option versionId: expected an ASCII string of an integer, got ${tx(t)}.`,Fu,{versionId:t})}}var FL=/^-?\d{4,}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}Z$/,jL=/(Z|[+-]\d{2}:\d{2})$/;function WL(t){if(t!==void 0){if(typeof t=="string"&&FL.test(t)&&Mi.isValidXsdDateTime(t)){let e=Date.parse(t);if(Number.isFinite(e))return e}throw new fe(`Invalid resolution option versionTime: expected an XML Datetime in UTC without a fraction (for example "2026-07-01T00:00:00Z"), got ${tx(t)}.`,Fu,{versionTime:t})}}var hs=class t{#e;#t;#r;#i;#o;#n;#c=null;#l=new Map;#h=new Set;#d=new Set;#a=[];#p=null;#s=1;#y=[];#g=0;#f;#m=0;#u;#w=0;#b;constructor(e,r,n,i){if(this.#e=e,this.#o=r,this.#n=n,i?.versionId!==void 0&&i?.versionTime!==void 0)throw new fe("Invalid resolution options: versionId and versionTime are mutually exclusive. Pass one of them.",Fu,{versionId:i.versionId,versionTime:i.versionTime});this.#t=qL(i?.versionId),this.#r=WL(i?.versionTime);let o=i?.maxDiscoveryRounds;this.#u=typeof o=="number"&&o>0?o:1/0,this.#b=HL(i?.minConf),i?.genesisDocument&&(this.#c=i.genesisDocument),this.#i=n?"BeaconDiscovery":"GenesisDocument"}static deterministic(e){let r=e.genesisBytes,n=vr.encode(r,e),{multibase:i}=new ft(r),o=dr.generateBeaconServices({id:n,publicKey:r,network:ko(e.network),beaconType:"SingletonBeacon"});return new pn({id:n,verificationMethod:[{id:`${n}#initialKey`,type:"Multikey",controller:n,publicKeyMultibase:i.encoded}],service:o})}static external(e,r){let n=zn(r);if(!Eo(e.genesisBytes,n))throw new fe("Initial document mismatch: genesisBytes !== genesisDocumentHash",pt,{genesisBytes:Qr(e.genesisBytes,"hex"),genesisDocumentHash:Qr(n,"hex")});let i=vr.encode(e.genesisBytes,e),o=JSON.parse(JSON.stringify(r).replaceAll(ur,i));return new pn(o)}static sidecarData(e={}){let r=new Map;if(e.updates?.length)for(let o of e.updates)r.set(Yn(o,{encoding:"hex"}),o);let n=new Map;if(e.casUpdates?.length)for(let o of e.casUpdates)n.set(Yn(o,{encoding:"hex"}),o);let i=new Map;if(e.smtProofs?.length)for(let o of e.smtProofs)i.set(Qr(ea(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 fe("Invalid duplicate: targetVersionId must be an integer >= 2",le,{targetVersionId:e.targetVersionId});let{proof:n,...i}=e,o=zn(i),s=r[e.targetVersionId-2];if(s===void 0)throw new fe("Invalid duplicate: no applied update in history for targetVersionId",Al,{targetVersionId:e.targetVersionId,historyLength:r.length});if(!Eo(s,o))throw new fe("Invalid duplicate: unsigned update hash does not match historical hash",Al,{unsignedUpdateHash:Qr(o,"hex"),historicalHash:Qr(s,"hex")})}static decodeUpdateHash(e,r){if(typeof e=="string")try{return ea(e,"base64urlnopad")}catch(n){throw new fe(`Invalid update: ${r} does not decode as base64url: ${Sr(n).message}`,le,{[r]:e,cause:Sr(n)})}throw new fe(`Invalid update: ${r} is not a string`,le,{[r]:e})}static proofInstant(e,r){let n=e[r];if(n!==void 0){if(typeof n=="string"&&jL.test(n)&&Mi.isValidXsdDateTime(n)){let i=Date.parse(n);if(Number.isFinite(i))return i}throw new fe(`Invalid update: proof.${r} is not an XML Datetime with a timezone`,le,{[r]:n})}}static checkProofWindow(e,r){let n=t.proofInstant(e,"created"),i=t.proofInstant(e,"expires");if(n!==void 0&&n>r.time*1e3)throw new fe("Invalid update: proof.created is after the header time of the block that contains the Beacon Signal",le,{created:e.created,blockTime:r.time});if(i!==void 0&&i<r.mediantime*1e3)throw new fe("Invalid update: proof.expires is before the mediantime of the block that contains the Beacon Signal",le,{expires:e.expires,mediantime:r.mediantime});if(n!==void 0&&i!==void 0&&i<n)throw new fe("Invalid update: proof.expires is before proof.created",le,{created:e.created,expires:e.expires})}static applyUpdate(e,r,n){let i=zn(e),o=t.decodeUpdateHash(r.sourceHash,"sourceHash");if(!Eo(o,i))throw new fe("Hash mismatch: update.sourceHash !== currentDocumentHash",le,{sourceHash:r.sourceHash,currentDocumentHash:Qr(i,"hex")});if(!Yb(r["@context"]))throw new fe("Invalid update: @context is not the array the specification pins for a BTCR2 Update",le,{context:r["@context"],expected:[...du]});if(!Yb(r.proof?.["@context"],r["@context"]))throw new fe("Invalid update: proof @context does not equal the update @context",le,{proofContext:r.proof?.["@context"],context:r["@context"]});let s=r.proof,c=[["type","DataIntegrityProof"],["cryptosuite","bip340-jcs-2025"],["proofPurpose","capabilityInvocation"],["capabilityAction","Write"],["capability",`urn:zcap:root:${encodeURIComponent(e.id)}`]];for(let[y,x]of c){let S=s[y];if(S!==x)throw new fe(`Invalid update: proof.${y} must equal "${x}"`,le,{field:y,expected:x,actual:S})}let a=s.verificationMethod,u=st.capabilityInvocationEntry(e,a);if(u===void 0)throw new fe("Invalid update: verificationMethod is not authorized for capabilityInvocation",le,{verificationMethodId:a,capabilityInvocation:e.capabilityInvocation});let d=st.verificationMethodOfEntry(e,u);if(d===void 0)throw new fe("Invalid update: verificationMethod is not found in the verificationMethod of the current document",le,{verificationMethodId:a});t.checkProofWindow(s,n);let f;try{let y=yo.fromVerificationMethod({...d,id:st.absoluteDidUrl(d.id,e.id)??d.id});f=new fu(new lu(y)).verifyProof(tr(r),"capabilityInvocation").verified}catch(y){throw new fe(`Invalid update: proof verification failed: ${Sr(y).message}`,le,{verificationMethodId:a,cause:Sr(y)})}if(!f)throw new fe("Invalid update: proof not verified",le,{verificationMethodId:a});let h;try{h=ra.apply(e,r.patch,{strict:!0})}catch(y){throw new fe(`Invalid update: ${Sr(y).message}`,le,{cause:Sr(y)})}if(h?.id!==e.id)throw new fe(`Invalid update: the patch changes the document id (from "${e.id}" to "${String(h?.id)}")`,le,{sourceId:e.id,targetId:h?.id});try{pn.validate(h)}catch(y){throw new fe(`Invalid update: the patched document does not conform to DID Core: ${Sr(y).message}`,le,{cause:Sr(y)})}let p=zn(h),g=t.decodeUpdateHash(r.targetHash,"targetHash");if(!Eo(g,p))throw new fe("Invalid update: update.targetHash !== updatedDocumentHash",le,{updateTargetHash:g,updatedDocumentHash:p});return h}resolve(){for(;;)switch(this.#i){case"GenesisDocument":{if(this.#c){this.#n=t.external(this.#e,this.#c),this.#c=null,this.#i="BeaconDiscovery";continue}return{status:"action-required",needs:[{kind:"NeedGenesisDocument",genesisHash:Qr(this.#e.genesisBytes,"hex")}]}}case"BeaconDiscovery":{let r=dr.getBeaconServices(this.#n).filter(n=>{let i=dr.parseBitcoinAddress(n.serviceEndpoint);return!this.#d.has(i)});if(r.length>0){for(let n of r){let i=dr.parseBitcoinAddress(n.serviceEndpoint);this.#d.add(i)}return{status:"action-required",needs:[{kind:"NeedBeaconSignals",beaconServices:r}]}}this.#i="BeaconProcess";continue}case"BeaconProcess":{let e=[];for(let[r,n]of this.#l){let i=dr.parseBitcoinAddress(r.serviceEndpoint);if(this.#h.has(i)||!n.length)continue;let o=this.#E(n);if(!o.length)continue;let c=sa.establish(r,this.#n.id).processSignals(o,this.#o);c.needs.length>0?e.push(...c.needs):(this.#a.push(...c.updates.map(([a,u])=>[a,u,i])),this.#h.add(i))}if(e.length>0)return{status:"action-required",needs:e};this.#i="ProcessUpdate";continue}case"ProcessUpdate":{let e=this.#n;if(this.#t!==void 0&&this.#s===this.#t){this.#i="Complete";continue}if(this.#a.length===0||e.deactivated){if(this.#t!==void 0)throw new fe(`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}.`),gv,{versionId:this.#t,currentVersionId:this.#s});this.#i="Complete";continue}this.#a.sort(([c,a],[u,d])=>c.targetVersionId-u.targetVersionId||a.height-d.height);let[r,n,i]=this.#a.shift();if(!dr.getBeaconServices(e).some(c=>dr.parseBitcoinAddress(c.serviceEndpoint)===i))continue;if(r.targetVersionId<=this.#s){t.confirmDuplicate(r,this.#y);continue}if(this.#r!==void 0&&n.mediantime*1e3>this.#r){this.#i="Complete";continue}if(r.targetVersionId!==this.#s+1)throw new fe("Version Id Mismatch: targetVersionId cannot be > currentVersionId + 1",Al,{targetVersionId:r.targetVersionId,currentVersionId:this.#s+1});this.#n=t.applyUpdate(e,r,n);let s=Ls.deleteKeys(r,["proof"]);if(this.#y.push(zn(s)),this.#s++,this.#g=n.confirmations,this.#m=n.height,this.#f=Mi.toISOStringNonFractional(Mi.blocktimeToTimestamp(n.time)),this.#x()){if(++this.#w>this.#u)throw new fe(`Exceeded the configured maximum of ${this.#u} beacon-discovery rounds. Raise or remove ResolutionOptions.maxDiscoveryRounds to resolve this DID.`,vl,{maxDiscoveryRounds:this.#u,discoveryRounds:this.#w});this.#i="BeaconDiscovery"}continue}case"Complete":return this.#p??={didDocument:this.#n,metadata:{versionId:`${this.#s}`,confirmations:this.#g,...this.#f!==void 0?{updated:this.#f}:{},deactivated:this.#n.deactivated||!1}},{status:"resolved",result:this.#p}}}#x(){return dr.getBeaconServices(this.#n).some(e=>!this.#d.has(dr.parseBitcoinAddress(e.serviceEndpoint)))}#E(e){let r=[];for(let n of e){let i=n.blockMetadata,o=i?.confirmations;if(!(!Number.isInteger(o)||o<this.#b)){if(!Number.isFinite(i?.height)||!Number.isFinite(i?.time)||!Number.isFinite(i?.mediantime))throw new fe(`Beacon signal ${n.signalBytes} has ${o} confirmations but no valid block height, block time, or block mediantime.`,le,{signalBytes:n.signalBytes,confirmations:o,height:i?.height,time:i?.time,mediantime:i?.mediantime});i.height<this.#m||r.push(n)}}return r}provide(e,r){switch(e.kind){case"NeedGenesisDocument":{if(!xf(r))throw new fe("Provided data for NeedGenesisDocument must be a document object.",le,{kind:e.kind});this.#c=r;break}case"NeedBeaconSignals":{if(!(r instanceof Map))throw new fe("Provided data for NeedBeaconSignals must be a Map of beacon services to signals.",le,{kind:e.kind});for(let[n,i]of r)this.#l.set(n,i);break}case"NeedCASAnnouncement":{if(!ML(r))throw new fe("Provided data for NeedCASAnnouncement is not a CAS announcement.",le,{kind:e.kind});let n=Yn(r,{encoding:"hex"});if(n!==e.announcementHash)throw new fe(`CAS announcement hash mismatch: expected ${e.announcementHash}, got ${n}.`,wv,{expected:e.announcementHash,actual:n});this.#o.casMap.set(n,r);break}case"NeedSignedUpdate":{if(!KL(r))throw new fe("Provided data for NeedSignedUpdate is not a signed BTCR2 update.",le,{kind:e.kind});let n=Yn(r,{encoding:"hex"});if(n!==e.updateHash)throw new fe(`Signed update hash mismatch: expected ${e.updateHash}, got ${n}.`,Ns,{expected:e.updateHash,actual:n});this.#o.updateMap.set(n,r);break}case"NeedSMTProof":{if(!$L(r))throw new fe("Provided data for NeedSMTProof is not an SMT proof.",Ns,{kind:e.kind});let n;try{n=Qr(ea(r.id,"base64urlnopad"),"hex")}catch{n=void 0}if(n!==e.smtRootHash)throw new fe(`SMT proof root hash mismatch: expected ${e.smtRootHash}, got ${n??"an id that does not decode"}.`,Ns,{expected:e.smtRootHash,actual:n});this.#o.smtMap.set(e.smtRootHash,r);break}}}};function GL(t){let e=t.capabilityInvocation?.[0];if(e===void 0)throw new Ve("Cannot derive aggregation communication key: capabilityInvocation is absent",qe,{id:t.id});let r=st.absoluteDidUrl(e,t.id),n=typeof e=="string"?r===void 0?void 0:t.verificationMethod?.find(i=>st.absoluteDidUrl(i.id,t.id)===r):e;if(!n)throw new Ve(`Cannot derive aggregation communication key: capabilityInvocation[0] "${e}" does not resolve to a verification method`,qe,{id:t.id,invocation:e});return yo.fromVerificationMethod(n).publicKey}function Fne(t,e){try{let r=vr.decode(t);if(r.idType==="KEY")return new ft(r.genesisBytes);if(e?.genesisDocument){let n=hs.external(r,e.genesisDocument);return GL(n)}}catch{}}l();l();l();var ny=class t{#e={phase:"Construct"};#t;#r;#i;#o;#n;constructor(e){this.#t=e.sourceDocument,this.#r=e.patches,this.#i=e.sourceVersionId,this.#o=e.verificationMethod,this.#n=e.beaconService}static construct(e,r,n){let i={"@context":[...du],patch:r,targetHash:"",targetVersionId:n+1,sourceHash:Yn(e)},o;try{o=ra.apply(e,r,{strict:!0})}catch(s){throw new nt(`Invalid patch: ${Sr(s).message}`,le,{cause:Sr(s)})}if(o.id!==e.id)throw new nt(`Patches must not change the DID document id (source "${e.id}" to target "${o.id}").`,le,{sourceId:e.id,targetId:o.id});try{pn.isValid(o)}catch(s){throw new nt("Error validating targetDocument: "+(s instanceof Error?s.message:String(s)),le,o)}return i.targetHash=Yn(o),i}static sign(e,r,n,i){if(!e.startsWith("did:btcr2:"))throw new nt(`Expected a did:btcr2 identifier for the root capability; got "${e}".`,le,{did:e});let o=n.controller,s=n.id.indexOf("#");if(s<0)throw new nt(`Verification method id must contain a fragment (e.g. "${n.id}#initialKey"); got "${n.id}".`,le,{verificationMethodId:n.id});let c=n.id.slice(s),a=yo.fromSigner(c,o,i),u=s===0?`${e}${c}`:n.id,d=a.publicKey.multibase.encoded;if(n.publicKeyMultibase&&d!==n.publicKeyMultibase)throw new nt(`Signing key does not match verification method "${n.id}": the signer's public key differs from the method's published publicKeyMultibase.`,le,{verificationMethodId:n.id,expected:n.publicKeyMultibase,actual:d});let f={"@context":[...du],cryptosuite:"bip340-jcs-2025",type:"DataIntegrityProof",verificationMethod:u,proofPurpose:"capabilityInvocation",capability:`urn:zcap:root:${encodeURIComponent(e)}`,capabilityAction:"Write"},p=a.toCryptosuite().toDataIntegrityProof().addProof(r,f),g;try{g=yo.fromVerificationMethod({...n,id:u}).toCryptosuite().toDataIntegrityProof().verifyProof(tr(p),"capabilityInvocation").verified}catch(y){throw new nt(`Invalid update: the proof does not verify with the public key of "${n.id}": `+Sr(y).message,le,{verificationMethodId:n.id,cause:Sr(y)})}if(!g)throw new nt(`Invalid update: the proof does not verify with the public key of "${n.id}".`,le,{verificationMethodId:n.id});return p}static async announce(e,r,n,i,o,s){return sa.establish(e,r).broadcastSignal(n,i,o,s)}#c(){return t.construct(this.#t,this.#r,this.#i)}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.#n.serviceEndpoint.replace("bitcoin:",""),beaconService:this.#n}]};case"Broadcast":return{status:"action-required",needs:[{kind:"NeedBroadcast",beaconService:this.#n,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 nt(`Cannot provide NeedSigningKey: updater phase is ${this.#e.phase}, expected Sign.`,le,{phase:this.#e.phase});if(!r)throw new nt("NeedSigningKey requires a Signer.",le);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 nt(`Cannot provide NeedFunding: updater phase is ${this.#e.phase}, expected Fund.`,le,{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 nt(`NeedFunding proof must have utxoCount >= 1; got ${String(n.utxoCount)}.`,le,{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 nt(`Cannot provide NeedBroadcast: updater phase is ${this.#e.phase}, expected Broadcast.`,le,{phase:this.#e.phase});this.#e={phase:"Complete",signedUpdate:this.#e.signedUpdate};break}}}};l();var YI=class{document={};constructor(e){if(!e.id)throw new Ve('Missing required "id" property',qe,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 pn(this.document);for(let r of Object.keys(e))e[r]===void 0&&delete e[r];return e}};l();var JI=class{static methodName="btcr2";static create(e,r){let{idType:n,version:i=1,network:o="bitcoin"}=r||{};if(!n)throw new be("idType is required for creating a did:btcr2 identifier",qe,r);return vr.encode(e,{idType:n,version:i,network:o})}static resolve(e,r={}){let n=vr.decode(e),i=hs.sidecarData(r.sidecar),o=n.hrp===Dl.k?hs.deterministic(n):null;return new hs(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}){if(!Number.isInteger(n)||n<1)throw new nt(`Invalid sourceVersionId: expected an integer of at least 1, got ${String(n)}.`,le,{sourceVersionId:n});let s=st.capabilityInvocationEntry(e,i);if(s===void 0)throw new nt("Invalid verificationMethodId: not authorized for capabilityInvocation",le,{verificationMethodId:i,capabilityInvocation:e.capabilityInvocation});let c=st.verificationMethodOfEntry(e,s);if(!c)throw new nt("Invalid verificationMethodId: not found in source document",le,{verificationMethodId:i});if(c.type!==au)throw new nt(`Invalid verificationMethod: verificationMethod.type must be "${au}"`,qe,c);if(!c.publicKeyMultibase?.startsWith(uu))throw new nt(`Invalid verificationMethodId: publicKeyMultibase prefix must start with "${uu}"`,qe,c);let a=st.absoluteDidUrl(o,e.id),u=e.service.filter(d=>a!==void 0&&st.absoluteDidUrl(d.id,e.id)===a).filter(d=>!!d).shift();if(!u)throw new nt("No beacon service found for provided beaconId",le,{sourceDocument:e,beaconId:o});return new ny({sourceDocument:e,patches:r,sourceVersionId:n,verificationMethod:c,beaconService:u})}static deactivate({sourceDocument:e,sourceVersionId:r,verificationMethodId:n,beaconId:i}){return this.update({sourceDocument:e,patches:[{...FI}],sourceVersionId:r,verificationMethodId:n,beaconId:i})}static getSigningMethod(e,r){r??="#initialKey";let n=xe.parse(e.id);if(n&&n.method!==this.methodName)throw new be(`Method not supported: ${n.method}`,El,{identifier:e.id});let i=st.absoluteDidUrl(r,e.id)??st.relationshipMethodId(e.assertionMethod?.[0],e.id),o=i===void 0?void 0:st.getVerificationMethods(e).find(s=>st.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}};export{Av as AggregateBeaconError,st as Appendix,are as BECH32M_CHARS,RL as BTCR2_DID_DOCUMENT_CONTEXT,du as BTCR2_UPDATE_CONTEXT,rr as BeaconError,sa as BeaconFactory,qI as BeaconSignalDiscovery,dr as BeaconUtils,kl as CASBeacon,Tv as CASBeaconError,Bv as CHANGE_OUTPUT_VBYTES,FI as DEACTIVATION_PATCH,P0 as DEFAULT_FEE_ESTIMATOR,PL as DEFAULT_MIN_CONF,UL as DID_REGEX,Rv as DUST_LIMIT_SATS,JI as DidBtcr2,pn as DidDocument,YI as DidDocumentBuilder,zb as DidVerificationMethod,wf as GenesisDocument,ur as ID_PLACEHOLDER_VALUE,vr as Identifier,uu as MULTIKEY_PUBLIC_KEY_MULTIBASE_PREFIX,au as MULTIKEY_VERIFICATION_METHOD_TYPE,r6 as P2PKH_BEACON_TX_VSIZE,e6 as P2TR_BEACON_TX_VSIZE,t6 as P2WPKH_BEACON_TX_VSIZE,hs as Resolver,n6 as SINGLETON_BEACON_TX_VSIZE,Fl as SMTBeacon,zu as SMTBeaconError,M0 as SPENDABLE_DUST_LIMIT_SATS,No as SinglePartyBeacon,Nl as SingletonBeacon,Sv as SingletonBeaconError,Yu as StaticFeeEstimator,ny as Updater,Uv as beaconTxVsize,Q9 as buildAggregationBeaconTx,i6 as deriveSingletonAddress,Ov as detectSingletonScriptKind,VI as extractOpReturnSignalHash,GL as getAggregationCommunicationKey,Yb as isBtcr2UpdateContext,OL as isMultikeyVerificationMethod,Nv as opReturnScript,Fne as resolveBtcr2SenderPk,Dv as resolveChangeAddress,c6 as selectSpendableUtxo};
4
4
  /*! Bundled license information:
5
5
 
6
6
  ieee754/index.js: