@libp2p/circuit-relay-v2 2.0.1-34455b5f2 → 2.0.1-4fd7eb2e1
Sign up to get free protection for your applications and to get access to all the features.
- package/dist/index.min.js +1 -1
- package/package.json +8 -8
package/dist/index.min.js
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
(function (root, factory) {(typeof module === 'object' && module.exports) ? module.exports = factory() : root.Libp2PCircuitRelayV2 = factory()}(typeof self !== 'undefined' ? self : this, function () {
|
2
|
-
"use strict";var Libp2PCircuitRelayV2=(()=>{var sf=Object.create;var bn=Object.defineProperty;var of=Object.getOwnPropertyDescriptor;var af=Object.getOwnPropertyNames;var cf=Object.getPrototypeOf,lf=Object.prototype.hasOwnProperty;var wo=(r,t)=>()=>(t||r((t={exports:{}}).exports,t),t.exports),_t=(r,t)=>{for(var e in t)bn(r,e,{get:t[e],enumerable:!0})},Ua=(r,t,e,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let s of af(t))!lf.call(r,s)&&s!==e&&bn(r,s,{get:()=>t[s],enumerable:!(n=of(t,s))||n.enumerable});return r};var xo=(r,t,e)=>(e=r!=null?sf(cf(r)):{},Ua(t||!r||!r.__esModule?bn(e,"default",{value:r,enumerable:!0}):e,r)),uf=r=>Ua(bn({},"__esModule",{value:!0}),r);var Vc=wo(xr=>{"use strict";var Ud="[object ArrayBuffer]",ge=class r{static isArrayBuffer(t){return Object.prototype.toString.call(t)===Ud}static toArrayBuffer(t){return this.isArrayBuffer(t)?t:t.byteLength===t.buffer.byteLength||t.byteOffset===0&&t.byteLength===t.buffer.byteLength?t.buffer:this.toUint8Array(t.buffer).slice(t.byteOffset,t.byteOffset+t.byteLength).buffer}static toUint8Array(t){return this.toView(t,Uint8Array)}static toView(t,e){if(t.constructor===e)return t;if(this.isArrayBuffer(t))return new e(t);if(this.isArrayBufferView(t))return new e(t.buffer,t.byteOffset,t.byteLength);throw new TypeError("The provided value is not of type '(ArrayBuffer or ArrayBufferView)'")}static isBufferSource(t){return this.isArrayBufferView(t)||this.isArrayBuffer(t)}static isArrayBufferView(t){return ArrayBuffer.isView(t)||t&&this.isArrayBuffer(t.buffer)}static isEqual(t,e){let n=r.toUint8Array(t),s=r.toUint8Array(e);if(n.length!==s.byteLength)return!1;for(let o=0;o<n.length;o++)if(n[o]!==s[o])return!1;return!0}static concat(...t){let e;Array.isArray(t[0])&&!(t[1]instanceof Function)||Array.isArray(t[0])&&t[1]instanceof Function?e=t[0]:t[t.length-1]instanceof Function?e=t.slice(0,t.length-1):e=t;let n=0;for(let i of e)n+=i.byteLength;let s=new Uint8Array(n),o=0;for(let i of e){let a=this.toUint8Array(i);s.set(a,o),o+=a.length}return t[t.length-1]instanceof Function?this.toView(s,t[t.length-1]):s.buffer}},Ii="string",Dd=/^[0-9a-f]+$/i,Od=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/,Md=/^[a-zA-Z0-9-_]+$/,Vn=class{static fromString(t){let e=unescape(encodeURIComponent(t)),n=new Uint8Array(e.length);for(let s=0;s<e.length;s++)n[s]=e.charCodeAt(s);return n.buffer}static toString(t){let e=ge.toUint8Array(t),n="";for(let o=0;o<e.length;o++)n+=String.fromCharCode(e[o]);return decodeURIComponent(escape(n))}},$t=class{static toString(t,e=!1){let n=ge.toArrayBuffer(t),s=new DataView(n),o="";for(let i=0;i<n.byteLength;i+=2){let a=s.getUint16(i,e);o+=String.fromCharCode(a)}return o}static fromString(t,e=!1){let n=new ArrayBuffer(t.length*2),s=new DataView(n);for(let o=0;o<t.length;o++)s.setUint16(o*2,t.charCodeAt(o),e);return n}},Hn=class r{static isHex(t){return typeof t===Ii&&Dd.test(t)}static isBase64(t){return typeof t===Ii&&Od.test(t)}static isBase64Url(t){return typeof t===Ii&&Md.test(t)}static ToString(t,e="utf8"){let n=ge.toUint8Array(t);switch(e.toLowerCase()){case"utf8":return this.ToUtf8String(n);case"binary":return this.ToBinary(n);case"hex":return this.ToHex(n);case"base64":return this.ToBase64(n);case"base64url":return this.ToBase64Url(n);case"utf16le":return $t.toString(n,!0);case"utf16":case"utf16be":return $t.toString(n);default:throw new Error(`Unknown type of encoding '${e}'`)}}static FromString(t,e="utf8"){if(!t)return new ArrayBuffer(0);switch(e.toLowerCase()){case"utf8":return this.FromUtf8String(t);case"binary":return this.FromBinary(t);case"hex":return this.FromHex(t);case"base64":return this.FromBase64(t);case"base64url":return this.FromBase64Url(t);case"utf16le":return $t.fromString(t,!0);case"utf16":case"utf16be":return $t.fromString(t);default:throw new Error(`Unknown type of encoding '${e}'`)}}static ToBase64(t){let e=ge.toUint8Array(t);if(typeof btoa<"u"){let n=this.ToString(e,"binary");return btoa(n)}else return Buffer.from(e).toString("base64")}static FromBase64(t){let e=this.formatString(t);if(!e)return new ArrayBuffer(0);if(!r.isBase64(e))throw new TypeError("Argument 'base64Text' is not Base64 encoded");return typeof atob<"u"?this.FromBinary(atob(e)):new Uint8Array(Buffer.from(e,"base64")).buffer}static FromBase64Url(t){let e=this.formatString(t);if(!e)return new ArrayBuffer(0);if(!r.isBase64Url(e))throw new TypeError("Argument 'base64url' is not Base64Url encoded");return this.FromBase64(this.Base64Padding(e.replace(/\-/g,"+").replace(/\_/g,"/")))}static ToBase64Url(t){return this.ToBase64(t).replace(/\+/g,"-").replace(/\//g,"_").replace(/\=/g,"")}static FromUtf8String(t,e=r.DEFAULT_UTF8_ENCODING){switch(e){case"ascii":return this.FromBinary(t);case"utf8":return Vn.fromString(t);case"utf16":case"utf16be":return $t.fromString(t);case"utf16le":case"usc2":return $t.fromString(t,!0);default:throw new Error(`Unknown type of encoding '${e}'`)}}static ToUtf8String(t,e=r.DEFAULT_UTF8_ENCODING){switch(e){case"ascii":return this.ToBinary(t);case"utf8":return Vn.toString(t);case"utf16":case"utf16be":return $t.toString(t);case"utf16le":case"usc2":return $t.toString(t,!0);default:throw new Error(`Unknown type of encoding '${e}'`)}}static FromBinary(t){let e=t.length,n=new Uint8Array(e);for(let s=0;s<e;s++)n[s]=t.charCodeAt(s);return n.buffer}static ToBinary(t){let e=ge.toUint8Array(t),n="";for(let s=0;s<e.length;s++)n+=String.fromCharCode(e[s]);return n}static ToHex(t){let e=ge.toUint8Array(t),n="",s=e.length;for(let o=0;o<s;o++){let i=e[o];i<16&&(n+="0"),n+=i.toString(16)}return n}static FromHex(t){let e=this.formatString(t);if(!e)return new ArrayBuffer(0);if(!r.isHex(e))throw new TypeError("Argument 'hexString' is not HEX encoded");e.length%2&&(e=`0${e}`);let n=new Uint8Array(e.length/2);for(let s=0;s<e.length;s=s+2){let o=e.slice(s,s+2);n[s/2]=parseInt(o,16)}return n.buffer}static ToUtf16String(t,e=!1){return $t.toString(t,e)}static FromUtf16String(t,e=!1){return $t.fromString(t,e)}static Base64Padding(t){let e=4-t.length%4;if(e<4)for(let n=0;n<e;n++)t+="=";return t}static formatString(t){return t?.replace(/[\n\r\t ]/g,"")||""}};Hn.DEFAULT_UTF8_ENCODING="utf8";function Pd(r,...t){let e=arguments[0];for(let n=1;n<arguments.length;n++){let s=arguments[n];for(let o in s)e[o]=s[o]}return e}function Vd(...r){let t=r.map(s=>s.byteLength).reduce((s,o)=>s+o),e=new Uint8Array(t),n=0;return r.map(s=>new Uint8Array(s)).forEach(s=>{for(let o of s)e[n++]=o}),e.buffer}function Hd(r,t){if(!(r&&t)||r.byteLength!==t.byteLength)return!1;let e=new Uint8Array(r),n=new Uint8Array(t);for(let s=0;s<r.byteLength;s++)if(e[s]!==n[s])return!1;return!0}xr.BufferSourceConverter=ge;xr.Convert=Hn;xr.assign=Pd;xr.combine=Vd;xr.isEqual=Hd});var Bu=wo((mn,Qs)=>{(function(r,t){"use strict";var e={version:"3.0.0",x86:{},x64:{},inputValidation:!0};function n(l){if(!Array.isArray(l)&&!ArrayBuffer.isView(l))return!1;for(var d=0;d<l.length;d++)if(!Number.isInteger(l[d])||l[d]<0||l[d]>255)return!1;return!0}function s(l,d){return(l&65535)*d+(((l>>>16)*d&65535)<<16)}function o(l,d){return l<<d|l>>>32-d}function i(l){return l^=l>>>16,l=s(l,2246822507),l^=l>>>13,l=s(l,3266489909),l^=l>>>16,l}function a(l,d){l=[l[0]>>>16,l[0]&65535,l[1]>>>16,l[1]&65535],d=[d[0]>>>16,d[0]&65535,d[1]>>>16,d[1]&65535];var g=[0,0,0,0];return g[3]+=l[3]+d[3],g[2]+=g[3]>>>16,g[3]&=65535,g[2]+=l[2]+d[2],g[1]+=g[2]>>>16,g[2]&=65535,g[1]+=l[1]+d[1],g[0]+=g[1]>>>16,g[1]&=65535,g[0]+=l[0]+d[0],g[0]&=65535,[g[0]<<16|g[1],g[2]<<16|g[3]]}function c(l,d){l=[l[0]>>>16,l[0]&65535,l[1]>>>16,l[1]&65535],d=[d[0]>>>16,d[0]&65535,d[1]>>>16,d[1]&65535];var g=[0,0,0,0];return g[3]+=l[3]*d[3],g[2]+=g[3]>>>16,g[3]&=65535,g[2]+=l[2]*d[3],g[1]+=g[2]>>>16,g[2]&=65535,g[2]+=l[3]*d[2],g[1]+=g[2]>>>16,g[2]&=65535,g[1]+=l[1]*d[3],g[0]+=g[1]>>>16,g[1]&=65535,g[1]+=l[2]*d[2],g[0]+=g[1]>>>16,g[1]&=65535,g[1]+=l[3]*d[1],g[0]+=g[1]>>>16,g[1]&=65535,g[0]+=l[0]*d[3]+l[1]*d[2]+l[2]*d[1]+l[3]*d[0],g[0]&=65535,[g[0]<<16|g[1],g[2]<<16|g[3]]}function h(l,d){return d%=64,d===32?[l[1],l[0]]:d<32?[l[0]<<d|l[1]>>>32-d,l[1]<<d|l[0]>>>32-d]:(d-=32,[l[1]<<d|l[0]>>>32-d,l[0]<<d|l[1]>>>32-d])}function f(l,d){return d%=64,d===0?l:d<32?[l[0]<<d|l[1]>>>32-d,l[1]<<d]:[l[1]<<d-32,0]}function u(l,d){return[l[0]^d[0],l[1]^d[1]]}function p(l){return l=u(l,[0,l[0]>>>1]),l=c(l,[4283543511,3981806797]),l=u(l,[0,l[0]>>>1]),l=c(l,[3301882366,444984403]),l=u(l,[0,l[0]>>>1]),l}e.x86.hash32=function(l,d){if(e.inputValidation&&!n(l))return t;d=d||0;for(var g=l.length%4,y=l.length-g,b=d,w=0,m=3432918353,v=461845907,A=0;A<y;A=A+4)w=l[A]|l[A+1]<<8|l[A+2]<<16|l[A+3]<<24,w=s(w,m),w=o(w,15),w=s(w,v),b^=w,b=o(b,13),b=s(b,5)+3864292196;switch(w=0,g){case 3:w^=l[A+2]<<16;case 2:w^=l[A+1]<<8;case 1:w^=l[A],w=s(w,m),w=o(w,15),w=s(w,v),b^=w}return b^=l.length,b=i(b),b>>>0},e.x86.hash128=function(l,d){if(e.inputValidation&&!n(l))return t;d=d||0;for(var g=l.length%16,y=l.length-g,b=d,w=d,m=d,v=d,A=0,_=0,x=0,B=0,C=597399067,et=2869860233,H=951274213,V=2716044179,U=0;U<y;U=U+16)A=l[U]|l[U+1]<<8|l[U+2]<<16|l[U+3]<<24,_=l[U+4]|l[U+5]<<8|l[U+6]<<16|l[U+7]<<24,x=l[U+8]|l[U+9]<<8|l[U+10]<<16|l[U+11]<<24,B=l[U+12]|l[U+13]<<8|l[U+14]<<16|l[U+15]<<24,A=s(A,C),A=o(A,15),A=s(A,et),b^=A,b=o(b,19),b+=w,b=s(b,5)+1444728091,_=s(_,et),_=o(_,16),_=s(_,H),w^=_,w=o(w,17),w+=m,w=s(w,5)+197830471,x=s(x,H),x=o(x,17),x=s(x,V),m^=x,m=o(m,15),m+=v,m=s(m,5)+2530024501,B=s(B,V),B=o(B,18),B=s(B,C),v^=B,v=o(v,13),v+=b,v=s(v,5)+850148119;switch(A=0,_=0,x=0,B=0,g){case 15:B^=l[U+14]<<16;case 14:B^=l[U+13]<<8;case 13:B^=l[U+12],B=s(B,V),B=o(B,18),B=s(B,C),v^=B;case 12:x^=l[U+11]<<24;case 11:x^=l[U+10]<<16;case 10:x^=l[U+9]<<8;case 9:x^=l[U+8],x=s(x,H),x=o(x,17),x=s(x,V),m^=x;case 8:_^=l[U+7]<<24;case 7:_^=l[U+6]<<16;case 6:_^=l[U+5]<<8;case 5:_^=l[U+4],_=s(_,et),_=o(_,16),_=s(_,H),w^=_;case 4:A^=l[U+3]<<24;case 3:A^=l[U+2]<<16;case 2:A^=l[U+1]<<8;case 1:A^=l[U],A=s(A,C),A=o(A,15),A=s(A,et),b^=A}return b^=l.length,w^=l.length,m^=l.length,v^=l.length,b+=w,b+=m,b+=v,w+=b,m+=b,v+=b,b=i(b),w=i(w),m=i(m),v=i(v),b+=w,b+=m,b+=v,w+=b,m+=b,v+=b,("00000000"+(b>>>0).toString(16)).slice(-8)+("00000000"+(w>>>0).toString(16)).slice(-8)+("00000000"+(m>>>0).toString(16)).slice(-8)+("00000000"+(v>>>0).toString(16)).slice(-8)},e.x64.hash128=function(l,d){if(e.inputValidation&&!n(l))return t;d=d||0;for(var g=l.length%16,y=l.length-g,b=[0,d],w=[0,d],m=[0,0],v=[0,0],A=[2277735313,289559509],_=[1291169091,658871167],x=0;x<y;x=x+16)m=[l[x+4]|l[x+5]<<8|l[x+6]<<16|l[x+7]<<24,l[x]|l[x+1]<<8|l[x+2]<<16|l[x+3]<<24],v=[l[x+12]|l[x+13]<<8|l[x+14]<<16|l[x+15]<<24,l[x+8]|l[x+9]<<8|l[x+10]<<16|l[x+11]<<24],m=c(m,A),m=h(m,31),m=c(m,_),b=u(b,m),b=h(b,27),b=a(b,w),b=a(c(b,[0,5]),[0,1390208809]),v=c(v,_),v=h(v,33),v=c(v,A),w=u(w,v),w=h(w,31),w=a(w,b),w=a(c(w,[0,5]),[0,944331445]);switch(m=[0,0],v=[0,0],g){case 15:v=u(v,f([0,l[x+14]],48));case 14:v=u(v,f([0,l[x+13]],40));case 13:v=u(v,f([0,l[x+12]],32));case 12:v=u(v,f([0,l[x+11]],24));case 11:v=u(v,f([0,l[x+10]],16));case 10:v=u(v,f([0,l[x+9]],8));case 9:v=u(v,[0,l[x+8]]),v=c(v,_),v=h(v,33),v=c(v,A),w=u(w,v);case 8:m=u(m,f([0,l[x+7]],56));case 7:m=u(m,f([0,l[x+6]],48));case 6:m=u(m,f([0,l[x+5]],40));case 5:m=u(m,f([0,l[x+4]],32));case 4:m=u(m,f([0,l[x+3]],24));case 3:m=u(m,f([0,l[x+2]],16));case 2:m=u(m,f([0,l[x+1]],8));case 1:m=u(m,[0,l[x]]),m=c(m,A),m=h(m,31),m=c(m,_),b=u(b,m)}return b=u(b,[0,l.length]),w=u(w,[0,l.length]),b=a(b,w),w=a(w,b),b=p(b),w=p(w),b=a(b,w),w=a(w,b),("00000000"+(b[0]>>>0).toString(16)).slice(-8)+("00000000"+(b[1]>>>0).toString(16)).slice(-8)+("00000000"+(w[0]>>>0).toString(16)).slice(-8)+("00000000"+(w[1]>>>0).toString(16)).slice(-8)},typeof mn<"u"?(typeof Qs<"u"&&Qs.exports&&(mn=Qs.exports=e),mn.murmurHash3=e):typeof define=="function"&&define.amd?define([],function(){return e}):(e._murmurHash3=r.murmurHash3,e.noConflict=function(){return r.murmurHash3=e._murmurHash3,e._murmurHash3=t,e.noConflict=t,e},r.murmurHash3=e)})(mn)});var aa=wo((k1,_u)=>{_u.exports=Bu()});var f0={};_t(f0,{RELAY_V2_HOP_CODEC:()=>Gt,RELAY_V2_STOP_CODEC:()=>Qe,circuitRelayServer:()=>Cu,circuitRelayTransport:()=>Zu});var vo=Symbol.for("@libp2p/peer-id");var Oa=Symbol.for("@libp2p/transport");var Da;(function(r){r[r.FATAL_ALL=0]="FATAL_ALL",r[r.NO_FATAL=1]="NO_FATAL"})(Da||(Da={}));var ae=class extends Error{static name="AbortError";constructor(t="The operation was aborted"){super(t),this.name="AbortError"}};var pt=class extends Error{static name="InvalidParametersError";constructor(t="Invalid parameters"){super(t),this.name="InvalidParametersError"}},sr=class extends Error{static name="InvalidPublicKeyError";constructor(t="Invalid public key"){super(t),this.name="InvalidPublicKeyError"}};var wn=class extends Error{static name="InvalidMultihashError";constructor(t="Invalid Multihash"){super(t),this.name="InvalidMultihashError"}};var xn=class extends Error{static name="InvalidMessageError";constructor(t="Invalid message"){super(t),this.name="InvalidMessageError"}};var Mr=class extends Error{static name="DialError";constructor(t="Dial error"){super(t),this.name="DialError"}},vn=class extends Error{static name="ListenError";constructor(t="Listen error"){super(t),this.name="ListenError"}};var or=class extends Error{static name="UnsupportedKeyTypeError";constructor(t="Unsupported key type"){super(t),this.name="UnsupportedKeyTypeError"}};var Ft=(r,...t)=>{try{[...t]}catch{}};var qt=class extends EventTarget{#t=new Map;constructor(){super(),Ft(1/0,this)}listenerCount(t){let e=this.#t.get(t);return e==null?0:e.length}addEventListener(t,e,n){super.addEventListener(t,e,n);let s=this.#t.get(t);s==null&&(s=[],this.#t.set(t,s)),s.push({callback:e,once:(n!==!0&&n!==!1&&n?.once)??!1})}removeEventListener(t,e,n){super.removeEventListener(t.toString(),e??null,n);let s=this.#t.get(t);s!=null&&(s=s.filter(({callback:o})=>o!==e),this.#t.set(t,s))}dispatchEvent(t){let e=super.dispatchEvent(t),n=this.#t.get(t.type);return n==null||(n=n.filter(({once:s})=>!s),this.#t.set(t.type,n)),e}safeDispatchEvent(t,e={}){return this.dispatchEvent(new CustomEvent(t,e))}};function Ma(r){return r!=null&&typeof r.start=="function"&&typeof r.stop=="function"}async function Pa(...r){let t=[];for(let e of r)Ma(e)&&t.push(e);await Promise.all(t.map(async e=>{e.beforeStart!=null&&await e.beforeStart()})),await Promise.all(t.map(async e=>{await e.start()})),await Promise.all(t.map(async e=>{e.afterStart!=null&&await e.afterStart()}))}async function Va(...r){let t=[];for(let e of r)Ma(e)&&t.push(e);await Promise.all(t.map(async e=>{e.beforeStop!=null&&await e.beforeStop()})),await Promise.all(t.map(async e=>{await e.stop()})),await Promise.all(t.map(async e=>{e.afterStop!=null&&await e.afterStop()}))}var Ha=Symbol.for("@libp2p/service-capabilities"),Fa=Symbol.for("@libp2p/service-dependencies");var _o={};_t(_o,{base58btc:()=>tt,base58flickr:()=>gf});var K0=new Uint8Array(0);function qa(r,t){if(r===t)return!0;if(r.byteLength!==t.byteLength)return!1;for(let e=0;e<r.byteLength;e++)if(r[e]!==t[e])return!1;return!0}function ce(r){if(r instanceof Uint8Array&&r.constructor.name==="Uint8Array")return r;if(r instanceof ArrayBuffer)return new Uint8Array(r);if(ArrayBuffer.isView(r))return new Uint8Array(r.buffer,r.byteOffset,r.byteLength);throw new Error("Unknown type, must be binary type")}function Ka(r){return new TextEncoder().encode(r)}function za(r){return new TextDecoder().decode(r)}function ff(r,t){if(r.length>=255)throw new TypeError("Alphabet too long");for(var e=new Uint8Array(256),n=0;n<e.length;n++)e[n]=255;for(var s=0;s<r.length;s++){var o=r.charAt(s),i=o.charCodeAt(0);if(e[i]!==255)throw new TypeError(o+" is ambiguous");e[i]=s}var a=r.length,c=r.charAt(0),h=Math.log(a)/Math.log(256),f=Math.log(256)/Math.log(a);function u(d){if(d instanceof Uint8Array||(ArrayBuffer.isView(d)?d=new Uint8Array(d.buffer,d.byteOffset,d.byteLength):Array.isArray(d)&&(d=Uint8Array.from(d))),!(d instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(d.length===0)return"";for(var g=0,y=0,b=0,w=d.length;b!==w&&d[b]===0;)b++,g++;for(var m=(w-b)*f+1>>>0,v=new Uint8Array(m);b!==w;){for(var A=d[b],_=0,x=m-1;(A!==0||_<y)&&x!==-1;x--,_++)A+=256*v[x]>>>0,v[x]=A%a>>>0,A=A/a>>>0;if(A!==0)throw new Error("Non-zero carry");y=_,b++}for(var B=m-y;B!==m&&v[B]===0;)B++;for(var C=c.repeat(g);B<m;++B)C+=r.charAt(v[B]);return C}function p(d){if(typeof d!="string")throw new TypeError("Expected String");if(d.length===0)return new Uint8Array;var g=0;if(d[g]!==" "){for(var y=0,b=0;d[g]===c;)y++,g++;for(var w=(d.length-g)*h+1>>>0,m=new Uint8Array(w);d[g];){var v=e[d.charCodeAt(g)];if(v===255)return;for(var A=0,_=w-1;(v!==0||A<b)&&_!==-1;_--,A++)v+=a*m[_]>>>0,m[_]=v%256>>>0,v=v/256>>>0;if(v!==0)throw new Error("Non-zero carry");b=A,g++}if(d[g]!==" "){for(var x=w-b;x!==w&&m[x]===0;)x++;for(var B=new Uint8Array(y+(w-x)),C=y;x!==w;)B[C++]=m[x++];return B}}}function l(d){var g=p(d);if(g)return g;throw new Error(`Non-${t} character`)}return{encode:u,decodeUnsafe:p,decode:l}}var hf=ff,df=hf,Ga=df;var Eo=class{name;prefix;baseEncode;constructor(t,e,n){this.name=t,this.prefix=e,this.baseEncode=n}encode(t){if(t instanceof Uint8Array)return`${this.prefix}${this.baseEncode(t)}`;throw Error("Unknown type, must be binary type")}},So=class{name;prefix;baseDecode;prefixCodePoint;constructor(t,e,n){if(this.name=t,this.prefix=e,e.codePointAt(0)===void 0)throw new Error("Invalid prefix character");this.prefixCodePoint=e.codePointAt(0),this.baseDecode=n}decode(t){if(typeof t=="string"){if(t.codePointAt(0)!==this.prefixCodePoint)throw Error(`Unable to decode multibase string ${JSON.stringify(t)}, ${this.name} decoder only supports inputs prefixed with ${this.prefix}`);return this.baseDecode(t.slice(this.prefix.length))}else throw Error("Can only multibase decode strings")}or(t){return Wa(this,t)}},Ao=class{decoders;constructor(t){this.decoders=t}or(t){return Wa(this,t)}decode(t){let e=t[0],n=this.decoders[e];if(n!=null)return n.decode(t);throw RangeError(`Unable to decode multibase string ${JSON.stringify(t)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`)}};function Wa(r,t){return new Ao({...r.decoders??{[r.prefix]:r},...t.decoders??{[t.prefix]:t}})}var Bo=class{name;prefix;baseEncode;baseDecode;encoder;decoder;constructor(t,e,n,s){this.name=t,this.prefix=e,this.baseEncode=n,this.baseDecode=s,this.encoder=new Eo(t,e,n),this.decoder=new So(t,e,s)}encode(t){return this.encoder.encode(t)}decode(t){return this.decoder.decode(t)}};function ir({name:r,prefix:t,encode:e,decode:n}){return new Bo(r,t,e,n)}function _e({name:r,prefix:t,alphabet:e}){let{encode:n,decode:s}=Ga(e,r);return ir({prefix:t,name:r,encode:n,decode:o=>ce(s(o))})}function pf(r,t,e,n){let s={};for(let f=0;f<t.length;++f)s[t[f]]=f;let o=r.length;for(;r[o-1]==="=";)--o;let i=new Uint8Array(o*e/8|0),a=0,c=0,h=0;for(let f=0;f<o;++f){let u=s[r[f]];if(u===void 0)throw new SyntaxError(`Non-${n} character`);c=c<<e|u,a+=e,a>=8&&(a-=8,i[h++]=255&c>>a)}if(a>=e||255&c<<8-a)throw new SyntaxError("Unexpected end of data");return i}function mf(r,t,e){let n=t[t.length-1]==="=",s=(1<<e)-1,o="",i=0,a=0;for(let c=0;c<r.length;++c)for(a=a<<8|r[c],i+=8;i>e;)i-=e,o+=t[s&a>>i];if(i!==0&&(o+=t[s&a<<e-i]),n)for(;o.length*e&7;)o+="=";return o}function st({name:r,prefix:t,bitsPerChar:e,alphabet:n}){return ir({prefix:t,name:r,encode(s){return mf(s,n,e)},decode(s){return pf(s,n,e,r)}})}var tt=_e({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),gf=_e({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var Io={};_t(Io,{base32:()=>le,base32hex:()=>xf,base32hexpad:()=>Ef,base32hexpadupper:()=>Sf,base32hexupper:()=>vf,base32pad:()=>bf,base32padupper:()=>wf,base32upper:()=>yf,base32z:()=>Af});var le=st({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),yf=st({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),bf=st({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),wf=st({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),xf=st({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),vf=st({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),Ef=st({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),Sf=st({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),Af=st({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var To={};_t(To,{base36:()=>Pr,base36upper:()=>Bf});var Pr=_e({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),Bf=_e({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var _f=Xa,ja=128,If=127,Tf=~If,kf=Math.pow(2,31);function Xa(r,t,e){t=t||[],e=e||0;for(var n=e;r>=kf;)t[e++]=r&255|ja,r/=128;for(;r&Tf;)t[e++]=r&255|ja,r>>>=7;return t[e]=r|0,Xa.bytes=e-n+1,t}var Nf=ko,Cf=128,Za=127;function ko(r,n){var e=0,n=n||0,s=0,o=n,i,a=r.length;do{if(o>=a)throw ko.bytes=0,new RangeError("Could not decode varint");i=r[o++],e+=s<28?(i&Za)<<s:(i&Za)*Math.pow(2,s),s+=7}while(i>=Cf);return ko.bytes=o-n,e}var Rf=Math.pow(2,7),Lf=Math.pow(2,14),Uf=Math.pow(2,21),Df=Math.pow(2,28),Of=Math.pow(2,35),Mf=Math.pow(2,42),Pf=Math.pow(2,49),Vf=Math.pow(2,56),Hf=Math.pow(2,63),Ff=function(r){return r<Rf?1:r<Lf?2:r<Uf?3:r<Df?4:r<Of?5:r<Mf?6:r<Pf?7:r<Vf?8:r<Hf?9:10},qf={encode:_f,decode:Nf,encodingLength:Ff},Kf=qf,Vr=Kf;function Hr(r,t=0){return[Vr.decode(r,t),Vr.decode.bytes]}function ar(r,t,e=0){return Vr.encode(r,t,e),t}function cr(r){return Vr.encodingLength(r)}function Wt(r,t){let e=t.byteLength,n=cr(r),s=n+cr(e),o=new Uint8Array(s+e);return ar(r,o,0),ar(e,o,n),o.set(t,s),new lr(r,e,t,o)}function Kt(r){let t=ce(r),[e,n]=Hr(t),[s,o]=Hr(t.subarray(n)),i=t.subarray(n+o);if(i.byteLength!==s)throw new Error("Incorrect length");return new lr(e,s,i,t)}function Ya(r,t){if(r===t)return!0;{let e=t;return r.code===e.code&&r.size===e.size&&e.bytes instanceof Uint8Array&&qa(r.bytes,e.bytes)}}var lr=class{code;size;digest;bytes;constructor(t,e,n,s){this.code=t,this.size=e,this.digest=n,this.bytes=s}};function Ja(r,t){let{bytes:e,version:n}=r;switch(n){case 0:return $f(e,No(r),t??tt.encoder);default:return Gf(e,No(r),t??le.encoder)}}var Qa=new WeakMap;function No(r){let t=Qa.get(r);if(t==null){let e=new Map;return Qa.set(r,e),e}return t}var mt=class r{code;version;multihash;bytes;"/";constructor(t,e,n,s){this.code=e,this.version=t,this.multihash=n,this.bytes=s,this["/"]=s}get asCID(){return this}get byteOffset(){return this.bytes.byteOffset}get byteLength(){return this.bytes.byteLength}toV0(){switch(this.version){case 0:return this;case 1:{let{code:t,multihash:e}=this;if(t!==Fr)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(e.code!==Wf)throw new Error("Cannot convert non sha2-256 multihash CID to CIDv0");return r.createV0(e)}default:throw Error(`Can not convert CID version ${this.version} to version 0. This is a bug please report`)}}toV1(){switch(this.version){case 0:{let{code:t,digest:e}=this.multihash,n=Wt(t,e);return r.createV1(this.code,n)}case 1:return this;default:throw Error(`Can not convert CID version ${this.version} to version 1. This is a bug please report`)}}equals(t){return r.equals(this,t)}static equals(t,e){let n=e;return n!=null&&t.code===n.code&&t.version===n.version&&Ya(t.multihash,n.multihash)}toString(t){return Ja(this,t)}toJSON(){return{"/":Ja(this)}}link(){return this}[Symbol.toStringTag]="CID";[Symbol.for("nodejs.util.inspect.custom")](){return`CID(${this.toString()})`}static asCID(t){if(t==null)return null;let e=t;if(e instanceof r)return e;if(e["/"]!=null&&e["/"]===e.bytes||e.asCID===e){let{version:n,code:s,multihash:o,bytes:i}=e;return new r(n,s,o,i??tc(n,s,o.bytes))}else if(e[jf]===!0){let{version:n,multihash:s,code:o}=e,i=Kt(s);return r.create(n,o,i)}else return null}static create(t,e,n){if(typeof e!="number")throw new Error("String codecs are no longer supported");if(!(n.bytes instanceof Uint8Array))throw new Error("Invalid digest");switch(t){case 0:{if(e!==Fr)throw new Error(`Version 0 CID must use dag-pb (code: ${Fr}) block encoding`);return new r(t,e,n,n.bytes)}case 1:{let s=tc(t,e,n.bytes);return new r(t,e,n,s)}default:throw new Error("Invalid version")}}static createV0(t){return r.create(0,Fr,t)}static createV1(t,e){return r.create(1,t,e)}static decode(t){let[e,n]=r.decodeFirst(t);if(n.length!==0)throw new Error("Incorrect length");return e}static decodeFirst(t){let e=r.inspectBytes(t),n=e.size-e.multihashSize,s=ce(t.subarray(n,n+e.multihashSize));if(s.byteLength!==e.multihashSize)throw new Error("Incorrect length");let o=s.subarray(e.multihashSize-e.digestSize),i=new lr(e.multihashCode,e.digestSize,o,s);return[e.version===0?r.createV0(i):r.createV1(e.codec,i),t.subarray(e.size)]}static inspectBytes(t){let e=0,n=()=>{let[u,p]=Hr(t.subarray(e));return e+=p,u},s=n(),o=Fr;if(s===18?(s=0,e=0):o=n(),s!==0&&s!==1)throw new RangeError(`Invalid CID version ${s}`);let i=e,a=n(),c=n(),h=e+c,f=h-i;return{version:s,codec:o,multihashCode:a,digestSize:c,multihashSize:f,size:h}}static parse(t,e){let[n,s]=zf(t,e),o=r.decode(s);if(o.version===0&&t[0]!=="Q")throw Error("Version 0 CID string must not include multibase prefix");return No(o).set(n,t),o}};function zf(r,t){switch(r[0]){case"Q":{let e=t??tt;return[tt.prefix,e.decode(`${tt.prefix}${r}`)]}case tt.prefix:{let e=t??tt;return[tt.prefix,e.decode(r)]}case le.prefix:{let e=t??le;return[le.prefix,e.decode(r)]}case Pr.prefix:{let e=t??Pr;return[Pr.prefix,e.decode(r)]}default:{if(t==null)throw Error("To parse non base32, base36 or base58btc encoded CID multibase decoder must be provided");return[r[0],t.decode(r)]}}}function $f(r,t,e){let{prefix:n}=e;if(n!==tt.prefix)throw Error(`Cannot string encode V0 in ${e.name} encoding`);let s=t.get(n);if(s==null){let o=e.encode(r).slice(1);return t.set(n,o),o}else return s}function Gf(r,t,e){let{prefix:n}=e,s=t.get(n);if(s==null){let o=e.encode(r);return t.set(n,o),o}else return s}var Fr=112,Wf=18;function tc(r,t,e){let n=cr(r),s=n+cr(t),o=new Uint8Array(s+e.byteLength);return ar(r,o,0),ar(t,o,n),o.set(e,s),o}var jf=Symbol.for("@ipld/js-cid/CID");var Co={};_t(Co,{identity:()=>ue});var ec=0,Zf="identity",rc=ce;function Xf(r){return Wt(ec,rc(r))}var ue={code:ec,name:Zf,encode:rc,digest:Xf};function ct(r,t){if(r===t)return!0;if(r.byteLength!==t.byteLength)return!1;for(let e=0;e<r.byteLength;e++)if(r[e]!==t[e])return!1;return!0}function nc(r){if(!Number.isSafeInteger(r)||r<0)throw new Error(`positive integer expected, not ${r}`)}function Yf(r){return r instanceof Uint8Array||r!=null&&typeof r=="object"&&r.constructor.name==="Uint8Array"}function ur(r,...t){if(!Yf(r))throw new Error("Uint8Array expected");if(t.length>0&&!t.includes(r.length))throw new Error(`Uint8Array expected of length ${t}, not of length=${r.length}`)}function sc(r){if(typeof r!="function"||typeof r.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");nc(r.outputLen),nc(r.blockLen)}function fr(r,t=!0){if(r.destroyed)throw new Error("Hash instance has been destroyed");if(t&&r.finished)throw new Error("Hash#digest() has already been called")}function oc(r,t){ur(r);let e=t.outputLen;if(r.length<e)throw new Error(`digestInto() expects output buffer of length at least ${e}`)}var qe=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;var Sn=r=>new DataView(r.buffer,r.byteOffset,r.byteLength),jt=(r,t)=>r<<32-t|r>>>t;var hm=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;function ic(r){if(typeof r!="string")throw new Error(`utf8ToBytes expected string, got ${typeof r}`);return new Uint8Array(new TextEncoder().encode(r))}function qr(r){return typeof r=="string"&&(r=ic(r)),ur(r),r}function Ro(...r){let t=0;for(let n=0;n<r.length;n++){let s=r[n];ur(s),t+=s.length}let e=new Uint8Array(t);for(let n=0,s=0;n<r.length;n++){let o=r[n];e.set(o,s),s+=o.length}return e}var hr=class{clone(){return this._cloneInto()}},dm={}.toString;function An(r){let t=n=>r().update(qr(n)).digest(),e=r();return t.outputLen=e.outputLen,t.blockLen=e.blockLen,t.create=()=>r(),t}function dr(r=32){if(qe&&typeof qe.getRandomValues=="function")return qe.getRandomValues(new Uint8Array(r));if(qe&&typeof qe.randomBytes=="function")return qe.randomBytes(r);throw new Error("crypto.getRandomValues must be defined")}function Jf(r,t,e,n){if(typeof r.setBigUint64=="function")return r.setBigUint64(t,e,n);let s=BigInt(32),o=BigInt(4294967295),i=Number(e>>s&o),a=Number(e&o),c=n?4:0,h=n?0:4;r.setUint32(t+c,i,n),r.setUint32(t+h,a,n)}var ac=(r,t,e)=>r&t^~r&e,cc=(r,t,e)=>r&t^r&e^t&e,pr=class extends hr{constructor(t,e,n,s){super(),this.blockLen=t,this.outputLen=e,this.padOffset=n,this.isLE=s,this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.buffer=new Uint8Array(t),this.view=Sn(this.buffer)}update(t){fr(this);let{view:e,buffer:n,blockLen:s}=this;t=qr(t);let o=t.length;for(let i=0;i<o;){let a=Math.min(s-this.pos,o-i);if(a===s){let c=Sn(t);for(;s<=o-i;i+=s)this.process(c,i);continue}n.set(t.subarray(i,i+a),this.pos),this.pos+=a,i+=a,this.pos===s&&(this.process(e,0),this.pos=0)}return this.length+=t.length,this.roundClean(),this}digestInto(t){fr(this),oc(t,this),this.finished=!0;let{buffer:e,view:n,blockLen:s,isLE:o}=this,{pos:i}=this;e[i++]=128,this.buffer.subarray(i).fill(0),this.padOffset>s-i&&(this.process(n,0),i=0);for(let u=i;u<s;u++)e[u]=0;Jf(n,s-8,BigInt(this.length*8),o),this.process(n,0);let a=Sn(t),c=this.outputLen;if(c%4)throw new Error("_sha2: outputLen should be aligned to 32bit");let h=c/4,f=this.get();if(h>f.length)throw new Error("_sha2: outputLen bigger than state");for(let u=0;u<h;u++)a.setUint32(4*u,f[u],o)}digest(){let{buffer:t,outputLen:e}=this;this.digestInto(t);let n=t.slice(0,e);return this.destroy(),n}_cloneInto(t){t||(t=new this.constructor),t.set(...this.get());let{blockLen:e,buffer:n,length:s,finished:o,destroyed:i,pos:a}=this;return t.length=s,t.pos=a,t.finished=o,t.destroyed=i,s%e&&t.buffer.set(n),t}};var Bn=BigInt(4294967295),Lo=BigInt(32);function lc(r,t=!1){return t?{h:Number(r&Bn),l:Number(r>>Lo&Bn)}:{h:Number(r>>Lo&Bn)|0,l:Number(r&Bn)|0}}function Qf(r,t=!1){let e=new Uint32Array(r.length),n=new Uint32Array(r.length);for(let s=0;s<r.length;s++){let{h:o,l:i}=lc(r[s],t);[e[s],n[s]]=[o,i]}return[e,n]}var th=(r,t)=>BigInt(r>>>0)<<Lo|BigInt(t>>>0),eh=(r,t,e)=>r>>>e,rh=(r,t,e)=>r<<32-e|t>>>e,nh=(r,t,e)=>r>>>e|t<<32-e,sh=(r,t,e)=>r<<32-e|t>>>e,oh=(r,t,e)=>r<<64-e|t>>>e-32,ih=(r,t,e)=>r>>>e-32|t<<64-e,ah=(r,t)=>t,ch=(r,t)=>r,lh=(r,t,e)=>r<<e|t>>>32-e,uh=(r,t,e)=>t<<e|r>>>32-e,fh=(r,t,e)=>t<<e-32|r>>>64-e,hh=(r,t,e)=>r<<e-32|t>>>64-e;function dh(r,t,e,n){let s=(t>>>0)+(n>>>0);return{h:r+e+(s/2**32|0)|0,l:s|0}}var ph=(r,t,e)=>(r>>>0)+(t>>>0)+(e>>>0),mh=(r,t,e,n)=>t+e+n+(r/2**32|0)|0,gh=(r,t,e,n)=>(r>>>0)+(t>>>0)+(e>>>0)+(n>>>0),yh=(r,t,e,n,s)=>t+e+n+s+(r/2**32|0)|0,bh=(r,t,e,n,s)=>(r>>>0)+(t>>>0)+(e>>>0)+(n>>>0)+(s>>>0),wh=(r,t,e,n,s,o)=>t+e+n+s+o+(r/2**32|0)|0;var xh={fromBig:lc,split:Qf,toBig:th,shrSH:eh,shrSL:rh,rotrSH:nh,rotrSL:sh,rotrBH:oh,rotrBL:ih,rotr32H:ah,rotr32L:ch,rotlSH:lh,rotlSL:uh,rotlBH:fh,rotlBL:hh,add:dh,add3L:ph,add3H:mh,add4L:gh,add4H:yh,add5H:wh,add5L:bh},P=xh;var[vh,Eh]=P.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(r=>BigInt(r))),Ie=new Uint32Array(80),Te=new Uint32Array(80),Uo=class extends pr{constructor(){super(128,64,16,!1),this.Ah=1779033703,this.Al=-205731576,this.Bh=-1150833019,this.Bl=-2067093701,this.Ch=1013904242,this.Cl=-23791573,this.Dh=-1521486534,this.Dl=1595750129,this.Eh=1359893119,this.El=-1377402159,this.Fh=-1694144372,this.Fl=725511199,this.Gh=528734635,this.Gl=-79577749,this.Hh=1541459225,this.Hl=327033209}get(){let{Ah:t,Al:e,Bh:n,Bl:s,Ch:o,Cl:i,Dh:a,Dl:c,Eh:h,El:f,Fh:u,Fl:p,Gh:l,Gl:d,Hh:g,Hl:y}=this;return[t,e,n,s,o,i,a,c,h,f,u,p,l,d,g,y]}set(t,e,n,s,o,i,a,c,h,f,u,p,l,d,g,y){this.Ah=t|0,this.Al=e|0,this.Bh=n|0,this.Bl=s|0,this.Ch=o|0,this.Cl=i|0,this.Dh=a|0,this.Dl=c|0,this.Eh=h|0,this.El=f|0,this.Fh=u|0,this.Fl=p|0,this.Gh=l|0,this.Gl=d|0,this.Hh=g|0,this.Hl=y|0}process(t,e){for(let m=0;m<16;m++,e+=4)Ie[m]=t.getUint32(e),Te[m]=t.getUint32(e+=4);for(let m=16;m<80;m++){let v=Ie[m-15]|0,A=Te[m-15]|0,_=P.rotrSH(v,A,1)^P.rotrSH(v,A,8)^P.shrSH(v,A,7),x=P.rotrSL(v,A,1)^P.rotrSL(v,A,8)^P.shrSL(v,A,7),B=Ie[m-2]|0,C=Te[m-2]|0,et=P.rotrSH(B,C,19)^P.rotrBH(B,C,61)^P.shrSH(B,C,6),H=P.rotrSL(B,C,19)^P.rotrBL(B,C,61)^P.shrSL(B,C,6),V=P.add4L(x,H,Te[m-7],Te[m-16]),U=P.add4H(V,_,et,Ie[m-7],Ie[m-16]);Ie[m]=U|0,Te[m]=V|0}let{Ah:n,Al:s,Bh:o,Bl:i,Ch:a,Cl:c,Dh:h,Dl:f,Eh:u,El:p,Fh:l,Fl:d,Gh:g,Gl:y,Hh:b,Hl:w}=this;for(let m=0;m<80;m++){let v=P.rotrSH(u,p,14)^P.rotrSH(u,p,18)^P.rotrBH(u,p,41),A=P.rotrSL(u,p,14)^P.rotrSL(u,p,18)^P.rotrBL(u,p,41),_=u&l^~u&g,x=p&d^~p&y,B=P.add5L(w,A,x,Eh[m],Te[m]),C=P.add5H(B,b,v,_,vh[m],Ie[m]),et=B|0,H=P.rotrSH(n,s,28)^P.rotrBH(n,s,34)^P.rotrBH(n,s,39),V=P.rotrSL(n,s,28)^P.rotrBL(n,s,34)^P.rotrBL(n,s,39),U=n&o^n&a^o&a,k=s&i^s&c^i&c;b=g|0,w=y|0,g=l|0,y=d|0,l=u|0,d=p|0,{h:u,l:p}=P.add(h|0,f|0,C|0,et|0),h=a|0,f=c|0,a=o|0,c=i|0,o=n|0,i=s|0;let R=P.add3L(et,V,k);n=P.add3H(R,C,H,U),s=R|0}({h:n,l:s}=P.add(this.Ah|0,this.Al|0,n|0,s|0)),{h:o,l:i}=P.add(this.Bh|0,this.Bl|0,o|0,i|0),{h:a,l:c}=P.add(this.Ch|0,this.Cl|0,a|0,c|0),{h,l:f}=P.add(this.Dh|0,this.Dl|0,h|0,f|0),{h:u,l:p}=P.add(this.Eh|0,this.El|0,u|0,p|0),{h:l,l:d}=P.add(this.Fh|0,this.Fl|0,l|0,d|0),{h:g,l:y}=P.add(this.Gh|0,this.Gl|0,g|0,y|0),{h:b,l:w}=P.add(this.Hh|0,this.Hl|0,b|0,w|0),this.set(n,s,o,i,a,c,h,f,u,p,l,d,g,y,b,w)}roundClean(){Ie.fill(0),Te.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 uc=An(()=>new Uo);var In={};_t(In,{aInRange:()=>kt,abool:()=>Zt,abytes:()=>mr,bitGet:()=>Th,bitLen:()=>Vo,bitMask:()=>zr,bitSet:()=>kh,bytesToHex:()=>he,bytesToNumberBE:()=>de,bytesToNumberLE:()=>Ne,concatBytes:()=>pe,createHmacDrbg:()=>Ho,ensureBytes:()=>ot,equalBytes:()=>_h,hexToBytes:()=>ze,hexToNumber:()=>Po,inRange:()=>Kr,isBytes:()=>ke,memoized:()=>Ge,notImplemented:()=>Ch,numberToBytesBE:()=>Ce,numberToBytesLE:()=>$e,numberToHexUnpadded:()=>Ke,numberToVarBytesBE:()=>Bh,utf8ToBytes:()=>Ih,validateObject:()=>ee});var Mo=BigInt(0),_n=BigInt(1),Sh=BigInt(2);function ke(r){return r instanceof Uint8Array||r!=null&&typeof r=="object"&&r.constructor.name==="Uint8Array"}function mr(r){if(!ke(r))throw new Error("Uint8Array expected")}function Zt(r,t){if(typeof t!="boolean")throw new Error(`${r} must be valid boolean, got "${t}".`)}var Ah=Array.from({length:256},(r,t)=>t.toString(16).padStart(2,"0"));function he(r){mr(r);let t="";for(let e=0;e<r.length;e++)t+=Ah[r[e]];return t}function Ke(r){let t=r.toString(16);return t.length&1?`0${t}`:t}function Po(r){if(typeof r!="string")throw new Error("hex string expected, got "+typeof r);return BigInt(r===""?"0":`0x${r}`)}var fe={_0:48,_9:57,_A:65,_F:70,_a:97,_f:102};function fc(r){if(r>=fe._0&&r<=fe._9)return r-fe._0;if(r>=fe._A&&r<=fe._F)return r-(fe._A-10);if(r>=fe._a&&r<=fe._f)return r-(fe._a-10)}function ze(r){if(typeof r!="string")throw new Error("hex string expected, got "+typeof r);let t=r.length,e=t/2;if(t%2)throw new Error("padded hex string expected, got unpadded hex of length "+t);let n=new Uint8Array(e);for(let s=0,o=0;s<e;s++,o+=2){let i=fc(r.charCodeAt(o)),a=fc(r.charCodeAt(o+1));if(i===void 0||a===void 0){let c=r[o]+r[o+1];throw new Error('hex string expected, got non-hex character "'+c+'" at index '+o)}n[s]=i*16+a}return n}function de(r){return Po(he(r))}function Ne(r){return mr(r),Po(he(Uint8Array.from(r).reverse()))}function Ce(r,t){return ze(r.toString(16).padStart(t*2,"0"))}function $e(r,t){return Ce(r,t).reverse()}function Bh(r){return ze(Ke(r))}function ot(r,t,e){let n;if(typeof t=="string")try{n=ze(t)}catch(o){throw new Error(`${r} must be valid hex string, got "${t}". Cause: ${o}`)}else if(ke(t))n=Uint8Array.from(t);else throw new Error(`${r} must be hex string or Uint8Array`);let s=n.length;if(typeof e=="number"&&s!==e)throw new Error(`${r} expected ${e} bytes, got ${s}`);return n}function pe(...r){let t=0;for(let n=0;n<r.length;n++){let s=r[n];mr(s),t+=s.length}let e=new Uint8Array(t);for(let n=0,s=0;n<r.length;n++){let o=r[n];e.set(o,s),s+=o.length}return e}function _h(r,t){if(r.length!==t.length)return!1;let e=0;for(let n=0;n<r.length;n++)e|=r[n]^t[n];return e===0}function Ih(r){if(typeof r!="string")throw new Error(`utf8ToBytes expected string, got ${typeof r}`);return new Uint8Array(new TextEncoder().encode(r))}var Do=r=>typeof r=="bigint"&&Mo<=r;function Kr(r,t,e){return Do(r)&&Do(t)&&Do(e)&&t<=r&&r<e}function kt(r,t,e,n){if(!Kr(t,e,n))throw new Error(`expected valid ${r}: ${e} <= n < ${n}, got ${typeof t} ${t}`)}function Vo(r){let t;for(t=0;r>Mo;r>>=_n,t+=1);return t}function Th(r,t){return r>>BigInt(t)&_n}function kh(r,t,e){return r|(e?_n:Mo)<<BigInt(t)}var zr=r=>(Sh<<BigInt(r-1))-_n,Oo=r=>new Uint8Array(r),hc=r=>Uint8Array.from(r);function Ho(r,t,e){if(typeof r!="number"||r<2)throw new Error("hashLen must be a number");if(typeof t!="number"||t<2)throw new Error("qByteLen must be a number");if(typeof e!="function")throw new Error("hmacFn must be a function");let n=Oo(r),s=Oo(r),o=0,i=()=>{n.fill(1),s.fill(0),o=0},a=(...u)=>e(s,n,...u),c=(u=Oo())=>{s=a(hc([0]),u),n=a(),u.length!==0&&(s=a(hc([1]),u),n=a())},h=()=>{if(o++>=1e3)throw new Error("drbg: tried 1000 values");let u=0,p=[];for(;u<t;){n=a();let l=n.slice();p.push(l),u+=n.length}return pe(...p)};return(u,p)=>{i(),c(u);let l;for(;!(l=p(h()));)c();return i(),l}}var Nh={bigint:r=>typeof r=="bigint",function:r=>typeof r=="function",boolean:r=>typeof r=="boolean",string:r=>typeof r=="string",stringOrUint8Array:r=>typeof r=="string"||ke(r),isSafeInteger:r=>Number.isSafeInteger(r),array:r=>Array.isArray(r),field:(r,t)=>t.Fp.isValid(r),hash:r=>typeof r=="function"&&Number.isSafeInteger(r.outputLen)};function ee(r,t,e={}){let n=(s,o,i)=>{let a=Nh[o];if(typeof a!="function")throw new Error(`Invalid validator "${o}", expected function`);let c=r[s];if(!(i&&c===void 0)&&!a(c,r))throw new Error(`Invalid param ${String(s)}=${c} (${typeof c}), expected ${o}`)};for(let[s,o]of Object.entries(t))n(s,o,!1);for(let[s,o]of Object.entries(e))n(s,o,!0);return r}var Ch=()=>{throw new Error("not implemented")};function Ge(r){let t=new WeakMap;return(e,...n)=>{let s=t.get(e);if(s!==void 0)return s;let o=r(e,...n);return t.set(e,o),o}}var ut=BigInt(0),rt=BigInt(1),We=BigInt(2),Rh=BigInt(3),Fo=BigInt(4),dc=BigInt(5),pc=BigInt(8),Lh=BigInt(9),Uh=BigInt(16);function Y(r,t){let e=r%t;return e>=ut?e:t+e}function Dh(r,t,e){if(e<=ut||t<ut)throw new Error("Expected power/modulo > 0");if(e===rt)return ut;let n=rt;for(;t>ut;)t&rt&&(n=n*r%e),r=r*r%e,t>>=rt;return n}function nt(r,t,e){let n=r;for(;t-- >ut;)n*=n,n%=e;return n}function Tn(r,t){if(r===ut||t<=ut)throw new Error(`invert: expected positive integers, got n=${r} mod=${t}`);let e=Y(r,t),n=t,s=ut,o=rt,i=rt,a=ut;for(;e!==ut;){let h=n/e,f=n%e,u=s-i*h,p=o-a*h;n=e,e=f,s=i,o=a,i=u,a=p}if(n!==rt)throw new Error("invert: does not exist");return Y(s,t)}function Oh(r){let t=(r-rt)/We,e,n,s;for(e=r-rt,n=0;e%We===ut;e/=We,n++);for(s=We;s<r&&Dh(s,t,r)!==r-rt;s++);if(n===1){let i=(r+rt)/Fo;return function(c,h){let f=c.pow(h,i);if(!c.eql(c.sqr(f),h))throw new Error("Cannot find square root");return f}}let o=(e+rt)/We;return function(a,c){if(a.pow(c,t)===a.neg(a.ONE))throw new Error("Cannot find square root");let h=n,f=a.pow(a.mul(a.ONE,s),e),u=a.pow(c,o),p=a.pow(c,e);for(;!a.eql(p,a.ONE);){if(a.eql(p,a.ZERO))return a.ZERO;let l=1;for(let g=a.sqr(p);l<h&&!a.eql(g,a.ONE);l++)g=a.sqr(g);let d=a.pow(f,rt<<BigInt(h-l-1));f=a.sqr(d),u=a.mul(u,d),p=a.mul(p,f),h=l}return u}}function Mh(r){if(r%Fo===Rh){let t=(r+rt)/Fo;return function(n,s){let o=n.pow(s,t);if(!n.eql(n.sqr(o),s))throw new Error("Cannot find square root");return o}}if(r%pc===dc){let t=(r-dc)/pc;return function(n,s){let o=n.mul(s,We),i=n.pow(o,t),a=n.mul(s,i),c=n.mul(n.mul(a,We),i),h=n.mul(a,n.sub(c,n.ONE));if(!n.eql(n.sqr(h),s))throw new Error("Cannot find square root");return h}}return r%Uh,Oh(r)}var mc=(r,t)=>(Y(r,t)&rt)===rt,Ph=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function qo(r){let t={ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"},e=Ph.reduce((n,s)=>(n[s]="function",n),t);return ee(r,e)}function Vh(r,t,e){if(e<ut)throw new Error("Expected power > 0");if(e===ut)return r.ONE;if(e===rt)return t;let n=r.ONE,s=t;for(;e>ut;)e&rt&&(n=r.mul(n,s)),s=r.sqr(s),e>>=rt;return n}function Hh(r,t){let e=new Array(t.length),n=t.reduce((o,i,a)=>r.is0(i)?o:(e[a]=o,r.mul(o,i)),r.ONE),s=r.inv(n);return t.reduceRight((o,i,a)=>r.is0(i)?o:(e[a]=r.mul(o,e[a]),r.mul(o,i)),s),e}function Ko(r,t){let e=t!==void 0?t:r.toString(2).length,n=Math.ceil(e/8);return{nBitLength:e,nByteLength:n}}function Re(r,t,e=!1,n={}){if(r<=ut)throw new Error(`Expected Field ORDER > 0, got ${r}`);let{nBitLength:s,nByteLength:o}=Ko(r,t);if(o>2048)throw new Error("Field lengths over 2048 bytes are not supported");let i=Mh(r),a=Object.freeze({ORDER:r,BITS:s,BYTES:o,MASK:zr(s),ZERO:ut,ONE:rt,create:c=>Y(c,r),isValid:c=>{if(typeof c!="bigint")throw new Error(`Invalid field element: expected bigint, got ${typeof c}`);return ut<=c&&c<r},is0:c=>c===ut,isOdd:c=>(c&rt)===rt,neg:c=>Y(-c,r),eql:(c,h)=>c===h,sqr:c=>Y(c*c,r),add:(c,h)=>Y(c+h,r),sub:(c,h)=>Y(c-h,r),mul:(c,h)=>Y(c*h,r),pow:(c,h)=>Vh(a,c,h),div:(c,h)=>Y(c*Tn(h,r),r),sqrN:c=>c*c,addN:(c,h)=>c+h,subN:(c,h)=>c-h,mulN:(c,h)=>c*h,inv:c=>Tn(c,r),sqrt:n.sqrt||(c=>i(a,c)),invertBatch:c=>Hh(a,c),cmov:(c,h,f)=>f?h:c,toBytes:c=>e?$e(c,o):Ce(c,o),fromBytes:c=>{if(c.length!==o)throw new Error(`Fp.fromBytes: expected ${o}, got ${c.length}`);return e?Ne(c):de(c)}});return Object.freeze(a)}function gc(r){if(typeof r!="bigint")throw new Error("field order must be bigint");let t=r.toString(2).length;return Math.ceil(t/8)}function zo(r){let t=gc(r);return t+Math.ceil(t/2)}function yc(r,t,e=!1){let n=r.length,s=gc(t),o=zo(t);if(n<16||n<o||n>1024)throw new Error(`expected ${o}-1024 bytes of input, got ${n}`);let i=e?de(r):Ne(r),a=Y(i,t-rt)+rt;return e?$e(a,s):Ce(a,s)}var qh=BigInt(0),$o=BigInt(1),Go=new WeakMap,bc=new WeakMap;function kn(r,t){let e=(o,i)=>{let a=i.negate();return o?a:i},n=o=>{if(!Number.isSafeInteger(o)||o<=0||o>t)throw new Error(`Wrong window size=${o}, should be [1..${t}]`)},s=o=>{n(o);let i=Math.ceil(t/o)+1,a=2**(o-1);return{windows:i,windowSize:a}};return{constTimeNegate:e,unsafeLadder(o,i){let a=r.ZERO,c=o;for(;i>qh;)i&$o&&(a=a.add(c)),c=c.double(),i>>=$o;return a},precomputeWindow(o,i){let{windows:a,windowSize:c}=s(i),h=[],f=o,u=f;for(let p=0;p<a;p++){u=f,h.push(u);for(let l=1;l<c;l++)u=u.add(f),h.push(u);f=u.double()}return h},wNAF(o,i,a){let{windows:c,windowSize:h}=s(o),f=r.ZERO,u=r.BASE,p=BigInt(2**o-1),l=2**o,d=BigInt(o);for(let g=0;g<c;g++){let y=g*h,b=Number(a&p);a>>=d,b>h&&(b-=l,a+=$o);let w=y,m=y+Math.abs(b)-1,v=g%2!==0,A=b<0;b===0?u=u.add(e(v,i[w])):f=f.add(e(A,i[m]))}return{p:f,f:u}},wNAFCached(o,i,a){let c=bc.get(o)||1,h=Go.get(o);return h||(h=this.precomputeWindow(o,c),c!==1&&Go.set(o,a(h))),this.wNAF(c,h,i)},setWindowSize(o,i){n(i),bc.set(o,i),Go.delete(o)}}}function Nn(r,t,e,n){if(!Array.isArray(e)||!Array.isArray(n)||n.length!==e.length)throw new Error("arrays of points and scalars must have equal length");n.forEach((f,u)=>{if(!t.isValid(f))throw new Error(`wrong scalar at index ${u}`)}),e.forEach((f,u)=>{if(!(f instanceof r))throw new Error(`wrong point at index ${u}`)});let s=Vo(BigInt(e.length)),o=s>12?s-3:s>4?s-2:s?2:1,i=(1<<o)-1,a=new Array(i+1).fill(r.ZERO),c=Math.floor((t.BITS-1)/o)*o,h=r.ZERO;for(let f=c;f>=0;f-=o){a.fill(r.ZERO);for(let p=0;p<n.length;p++){let l=n[p],d=Number(l>>BigInt(f)&BigInt(i));a[d]=a[d].add(e[p])}let u=r.ZERO;for(let p=a.length-1,l=r.ZERO;p>0;p--)l=l.add(a[p]),u=u.add(l);if(h=h.add(u),f!==0)for(let p=0;p<o;p++)h=h.double()}return h}function $r(r){return qo(r.Fp),ee(r,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...Ko(r.n,r.nBitLength),...r,p:r.Fp.ORDER})}var Xt=BigInt(0),Nt=BigInt(1),Cn=BigInt(2),Kh=BigInt(8),zh={zip215:!0};function $h(r){let t=$r(r);return ee(r,{hash:"function",a:"bigint",d:"bigint",randomBytes:"function"},{adjustScalarBytes:"function",domain:"function",uvRatio:"function",mapToCurve:"function"}),Object.freeze({...t})}function wc(r){let t=$h(r),{Fp:e,n,prehash:s,hash:o,randomBytes:i,nByteLength:a,h:c}=t,h=Cn<<BigInt(a*8)-Nt,f=e.create,u=Re(t.n,t.nBitLength),p=t.uvRatio||((S,E)=>{try{return{isValid:!0,value:e.sqrt(S*e.inv(E))}}catch{return{isValid:!1,value:Xt}}}),l=t.adjustScalarBytes||(S=>S),d=t.domain||((S,E,I)=>{if(Zt("phflag",I),E.length||I)throw new Error("Contexts/pre-hash are not supported");return S});function g(S,E){kt("coordinate "+S,E,Xt,h)}function y(S){if(!(S instanceof m))throw new Error("ExtendedPoint expected")}let b=Ge((S,E)=>{let{ex:I,ey:L,ez:O}=S,M=S.is0();E==null&&(E=M?Kh:e.inv(O));let K=f(I*E),G=f(L*E),z=f(O*E);if(M)return{x:Xt,y:Nt};if(z!==Nt)throw new Error("invZ was invalid");return{x:K,y:G}}),w=Ge(S=>{let{a:E,d:I}=t;if(S.is0())throw new Error("bad point: ZERO");let{ex:L,ey:O,ez:M,et:K}=S,G=f(L*L),z=f(O*O),X=f(M*M),Q=f(X*X),ht=f(G*E),dt=f(X*f(ht+z)),yt=f(Q+f(I*f(G*z)));if(dt!==yt)throw new Error("bad point: equation left != right (1)");let Bt=f(L*O),lt=f(M*K);if(Bt!==lt)throw new Error("bad point: equation left != right (2)");return!0});class m{constructor(E,I,L,O){this.ex=E,this.ey=I,this.ez=L,this.et=O,g("x",E),g("y",I),g("z",L),g("t",O),Object.freeze(this)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static fromAffine(E){if(E instanceof m)throw new Error("extended point not allowed");let{x:I,y:L}=E||{};return g("x",I),g("y",L),new m(I,L,Nt,f(I*L))}static normalizeZ(E){let I=e.invertBatch(E.map(L=>L.ez));return E.map((L,O)=>L.toAffine(I[O])).map(m.fromAffine)}static msm(E,I){return Nn(m,u,E,I)}_setWindowSize(E){_.setWindowSize(this,E)}assertValidity(){w(this)}equals(E){y(E);let{ex:I,ey:L,ez:O}=this,{ex:M,ey:K,ez:G}=E,z=f(I*G),X=f(M*O),Q=f(L*G),ht=f(K*O);return z===X&&Q===ht}is0(){return this.equals(m.ZERO)}negate(){return new m(f(-this.ex),this.ey,this.ez,f(-this.et))}double(){let{a:E}=t,{ex:I,ey:L,ez:O}=this,M=f(I*I),K=f(L*L),G=f(Cn*f(O*O)),z=f(E*M),X=I+L,Q=f(f(X*X)-M-K),ht=z+K,dt=ht-G,yt=z-K,Bt=f(Q*dt),lt=f(ht*yt),Tt=f(Q*yt),ie=f(dt*ht);return new m(Bt,lt,ie,Tt)}add(E){y(E);let{a:I,d:L}=t,{ex:O,ey:M,ez:K,et:G}=this,{ex:z,ey:X,ez:Q,et:ht}=E;if(I===BigInt(-1)){let Ia=f((M-O)*(X+z)),Ta=f((M+O)*(X-z)),bo=f(Ta-Ia);if(bo===Xt)return this.double();let ka=f(K*Cn*ht),Na=f(G*Cn*Q),Ca=Na+ka,Ra=Ta+Ia,La=Na-ka,tf=f(Ca*bo),ef=f(Ra*La),rf=f(Ca*La),nf=f(bo*Ra);return new m(tf,ef,nf,rf)}let dt=f(O*z),yt=f(M*X),Bt=f(G*L*ht),lt=f(K*Q),Tt=f((O+M)*(z+X)-dt-yt),ie=lt-Bt,Dr=lt+Bt,Or=f(yt-I*dt),Xu=f(Tt*ie),Yu=f(Dr*Or),Ju=f(Tt*Or),Qu=f(ie*Dr);return new m(Xu,Yu,Qu,Ju)}subtract(E){return this.add(E.negate())}wNAF(E){return _.wNAFCached(this,E,m.normalizeZ)}multiply(E){let I=E;kt("scalar",I,Nt,n);let{p:L,f:O}=this.wNAF(I);return m.normalizeZ([L,O])[0]}multiplyUnsafe(E){let I=E;return kt("scalar",I,Xt,n),I===Xt?A:this.equals(A)||I===Nt?this:this.equals(v)?this.wNAF(I).p:_.unsafeLadder(this,I)}isSmallOrder(){return this.multiplyUnsafe(c).is0()}isTorsionFree(){return _.unsafeLadder(this,n).is0()}toAffine(E){return b(this,E)}clearCofactor(){let{h:E}=t;return E===Nt?this:this.multiplyUnsafe(E)}static fromHex(E,I=!1){let{d:L,a:O}=t,M=e.BYTES;E=ot("pointHex",E,M),Zt("zip215",I);let K=E.slice(),G=E[M-1];K[M-1]=G&-129;let z=Ne(K),X=I?h:e.ORDER;kt("pointHex.y",z,Xt,X);let Q=f(z*z),ht=f(Q-Nt),dt=f(L*Q-O),{isValid:yt,value:Bt}=p(ht,dt);if(!yt)throw new Error("Point.fromHex: invalid y coordinate");let lt=(Bt&Nt)===Nt,Tt=(G&128)!==0;if(!I&&Bt===Xt&&Tt)throw new Error("Point.fromHex: x=0 and x_0=1");return Tt!==lt&&(Bt=f(-Bt)),m.fromAffine({x:Bt,y:z})}static fromPrivateKey(E){return C(E).point}toRawBytes(){let{x:E,y:I}=this.toAffine(),L=$e(I,e.BYTES);return L[L.length-1]|=E&Nt?128:0,L}toHex(){return he(this.toRawBytes())}}m.BASE=new m(t.Gx,t.Gy,Nt,f(t.Gx*t.Gy)),m.ZERO=new m(Xt,Nt,Nt,Xt);let{BASE:v,ZERO:A}=m,_=kn(m,a*8);function x(S){return Y(S,n)}function B(S){return x(Ne(S))}function C(S){let E=a;S=ot("private key",S,E);let I=ot("hashed private key",o(S),2*E),L=l(I.slice(0,E)),O=I.slice(E,2*E),M=B(L),K=v.multiply(M),G=K.toRawBytes();return{head:L,prefix:O,scalar:M,point:K,pointBytes:G}}function et(S){return C(S).pointBytes}function H(S=new Uint8Array,...E){let I=pe(...E);return B(o(d(I,ot("context",S),!!s)))}function V(S,E,I={}){S=ot("message",S),s&&(S=s(S));let{prefix:L,scalar:O,pointBytes:M}=C(E),K=H(I.context,L,S),G=v.multiply(K).toRawBytes(),z=H(I.context,G,M,S),X=x(K+z*O);kt("signature.s",X,Xt,n);let Q=pe(G,$e(X,e.BYTES));return ot("result",Q,a*2)}let U=zh;function k(S,E,I,L=U){let{context:O,zip215:M}=L,K=e.BYTES;S=ot("signature",S,2*K),E=ot("message",E),M!==void 0&&Zt("zip215",M),s&&(E=s(E));let G=Ne(S.slice(K,2*K)),z,X,Q;try{z=m.fromHex(I,M),X=m.fromHex(S.slice(0,K),M),Q=v.multiplyUnsafe(G)}catch{return!1}if(!M&&z.isSmallOrder())return!1;let ht=H(O,X.toRawBytes(),z.toRawBytes(),E);return X.add(z.multiplyUnsafe(ht)).subtract(Q).clearCofactor().equals(m.ZERO)}return v._setWindowSize(8),{CURVE:t,getPublicKey:et,sign:V,verify:k,ExtendedPoint:m,utils:{getExtendedPublicKey:C,randomPrivateKey:()=>i(e.BYTES),precompute(S=8,E=m.BASE){return E._setWindowSize(S),E.multiply(BigInt(3)),E}}}}var Wo=BigInt("57896044618658097711785492504343953926634992332820282019728792003956564819949"),xc=BigInt("19681161376707505956807079304988542015446066515923890162744021073123829784752"),Om=BigInt(0),Gh=BigInt(1),vc=BigInt(2),Mm=BigInt(3),Wh=BigInt(5),jh=BigInt(8);function Zh(r){let t=BigInt(10),e=BigInt(20),n=BigInt(40),s=BigInt(80),o=Wo,a=r*r%o*r%o,c=nt(a,vc,o)*a%o,h=nt(c,Gh,o)*r%o,f=nt(h,Wh,o)*h%o,u=nt(f,t,o)*f%o,p=nt(u,e,o)*u%o,l=nt(p,n,o)*p%o,d=nt(l,s,o)*l%o,g=nt(d,s,o)*l%o,y=nt(g,t,o)*f%o;return{pow_p_5_8:nt(y,vc,o)*r%o,b2:a}}function Xh(r){return r[0]&=248,r[31]&=127,r[31]|=64,r}function Yh(r,t){let e=Wo,n=Y(t*t*t,e),s=Y(n*n*t,e),o=Zh(r*s).pow_p_5_8,i=Y(r*n*o,e),a=Y(t*i*i,e),c=i,h=Y(i*xc,e),f=a===r,u=a===Y(-r,e),p=a===Y(-r*xc,e);return f&&(i=c),(u||p)&&(i=h),mc(i,e)&&(i=Y(-i,e)),{isValid:f||u,value:i}}var Jh=Re(Wo,void 0,!0),Qh={a:BigInt(-1),d:BigInt("37095705934669439343138083508754565189542113879843219016388785533085940283555"),Fp:Jh,n:BigInt("7237005577332262213973186563042994240857116359379907606001950938285454250989"),h:jh,Gx:BigInt("15112221349535400772501151409588531511454012693041857206046113283949847762202"),Gy:BigInt("46316835694926478169428394003475163141307993866256225615783033603165251855960"),hash:uc,randomBytes:dr,adjustScalarBytes:Xh,uvRatio:Yh},Ec=wc(Qh);var Rn=32;function Sc(r,t,e){return Ec.verify(t,e instanceof Uint8Array?e:e.subarray(),r)}var Ln=class{type="Ed25519";raw;constructor(t){this.raw=jo(t,Rn)}toMultihash(){return ue.digest(gr(this))}toCID(){return mt.createV1(114,this.toMultihash())}toString(){return tt.encode(this.toMultihash().bytes).substring(1)}equals(t){return t==null||!(t.raw instanceof Uint8Array)?!1:ct(this.raw,t.raw)}verify(t,e){return Sc(this.raw,e,t)}};function Zo(r){return r=jo(r,Rn),new Ln(r)}function jo(r,t){if(r=Uint8Array.from(r??[]),r.length!==t)throw new pt(`Key must be a Uint8Array of length ${t}, got ${r.length}`);return r}function it(r=0){return new Uint8Array(r)}function Ct(r=0){return new Uint8Array(r)}var ed=Math.pow(2,7),rd=Math.pow(2,14),nd=Math.pow(2,21),Xo=Math.pow(2,28),Yo=Math.pow(2,35),Jo=Math.pow(2,42),Qo=Math.pow(2,49),W=128,vt=127;function Et(r){if(r<ed)return 1;if(r<rd)return 2;if(r<nd)return 3;if(r<Xo)return 4;if(r<Yo)return 5;if(r<Jo)return 6;if(r<Qo)return 7;if(Number.MAX_SAFE_INTEGER!=null&&r>Number.MAX_SAFE_INTEGER)throw new RangeError("Could not encode varint");return 8}function ti(r,t,e=0){switch(Et(r)){case 8:t[e++]=r&255|W,r/=128;case 7:t[e++]=r&255|W,r/=128;case 6:t[e++]=r&255|W,r/=128;case 5:t[e++]=r&255|W,r/=128;case 4:t[e++]=r&255|W,r>>>=7;case 3:t[e++]=r&255|W,r>>>=7;case 2:t[e++]=r&255|W,r>>>=7;case 1:{t[e++]=r&255,r>>>=7;break}default:throw new Error("unreachable")}return t}function sd(r,t,e=0){switch(Et(r)){case 8:t.set(e++,r&255|W),r/=128;case 7:t.set(e++,r&255|W),r/=128;case 6:t.set(e++,r&255|W),r/=128;case 5:t.set(e++,r&255|W),r/=128;case 4:t.set(e++,r&255|W),r>>>=7;case 3:t.set(e++,r&255|W),r>>>=7;case 2:t.set(e++,r&255|W),r>>>=7;case 1:{t.set(e++,r&255),r>>>=7;break}default:throw new Error("unreachable")}return t}function ei(r,t){let e=r[t],n=0;if(n+=e&vt,e<W||(e=r[t+1],n+=(e&vt)<<7,e<W)||(e=r[t+2],n+=(e&vt)<<14,e<W)||(e=r[t+3],n+=(e&vt)<<21,e<W)||(e=r[t+4],n+=(e&vt)*Xo,e<W)||(e=r[t+5],n+=(e&vt)*Yo,e<W)||(e=r[t+6],n+=(e&vt)*Jo,e<W)||(e=r[t+7],n+=(e&vt)*Qo,e<W))return n;throw new RangeError("Could not decode varint")}function od(r,t){let e=r.get(t),n=0;if(n+=e&vt,e<W||(e=r.get(t+1),n+=(e&vt)<<7,e<W)||(e=r.get(t+2),n+=(e&vt)<<14,e<W)||(e=r.get(t+3),n+=(e&vt)<<21,e<W)||(e=r.get(t+4),n+=(e&vt)*Xo,e<W)||(e=r.get(t+5),n+=(e&vt)*Yo,e<W)||(e=r.get(t+6),n+=(e&vt)*Jo,e<W)||(e=r.get(t+7),n+=(e&vt)*Qo,e<W))return n;throw new RangeError("Could not decode varint")}function zt(r,t,e=0){return t==null&&(t=Ct(Et(r))),t instanceof Uint8Array?ti(r,t,e):sd(r,t,e)}function me(r,t=0){return r instanceof Uint8Array?ei(r,t):od(r,t)}var ri=new Float32Array([-0]),Le=new Uint8Array(ri.buffer);function Bc(r,t,e){ri[0]=r,t[e]=Le[0],t[e+1]=Le[1],t[e+2]=Le[2],t[e+3]=Le[3]}function _c(r,t){return Le[0]=r[t],Le[1]=r[t+1],Le[2]=r[t+2],Le[3]=r[t+3],ri[0]}var ni=new Float64Array([-0]),St=new Uint8Array(ni.buffer);function Ic(r,t,e){ni[0]=r,t[e]=St[0],t[e+1]=St[1],t[e+2]=St[2],t[e+3]=St[3],t[e+4]=St[4],t[e+5]=St[5],t[e+6]=St[6],t[e+7]=St[7]}function Tc(r,t){return St[0]=r[t],St[1]=r[t+1],St[2]=r[t+2],St[3]=r[t+3],St[4]=r[t+4],St[5]=r[t+5],St[6]=r[t+6],St[7]=r[t+7],ni[0]}var id=BigInt(Number.MAX_SAFE_INTEGER),ad=BigInt(Number.MIN_SAFE_INTEGER),Lt=class r{lo;hi;constructor(t,e){this.lo=t|0,this.hi=e|0}toNumber(t=!1){if(!t&&this.hi>>>31>0){let e=~this.lo+1>>>0,n=~this.hi>>>0;return e===0&&(n=n+1>>>0),-(e+n*4294967296)}return this.lo+this.hi*4294967296}toBigInt(t=!1){if(t)return BigInt(this.lo>>>0)+(BigInt(this.hi>>>0)<<32n);if(this.hi>>>31){let e=~this.lo+1>>>0,n=~this.hi>>>0;return e===0&&(n=n+1>>>0),-(BigInt(e)+(BigInt(n)<<32n))}return BigInt(this.lo>>>0)+(BigInt(this.hi>>>0)<<32n)}toString(t=!1){return this.toBigInt(t).toString()}zzEncode(){let t=this.hi>>31;return this.hi=((this.hi<<1|this.lo>>>31)^t)>>>0,this.lo=(this.lo<<1^t)>>>0,this}zzDecode(){let t=-(this.lo&1);return this.lo=((this.lo>>>1|this.hi<<31)^t)>>>0,this.hi=(this.hi>>>1^t)>>>0,this}length(){let t=this.lo,e=(this.lo>>>28|this.hi<<4)>>>0,n=this.hi>>>24;return n===0?e===0?t<16384?t<128?1:2:t<2097152?3:4:e<16384?e<128?5:6:e<2097152?7:8:n<128?9:10}static fromBigInt(t){if(t===0n)return je;if(t<id&&t>ad)return this.fromNumber(Number(t));let e=t<0n;e&&(t=-t);let n=t>>32n,s=t-(n<<32n);return e&&(n=~n|0n,s=~s|0n,++s>kc&&(s=0n,++n>kc&&(n=0n))),new r(Number(s),Number(n))}static fromNumber(t){if(t===0)return je;let e=t<0;e&&(t=-t);let n=t>>>0,s=(t-n)/4294967296>>>0;return e&&(s=~s>>>0,n=~n>>>0,++n>4294967295&&(n=0,++s>4294967295&&(s=0))),new r(n,s)}static from(t){return typeof t=="number"?r.fromNumber(t):typeof t=="bigint"?r.fromBigInt(t):typeof t=="string"?r.fromBigInt(BigInt(t)):t.low!=null||t.high!=null?new r(t.low>>>0,t.high>>>0):je}},je=new Lt(0,0);je.toBigInt=function(){return 0n};je.zzEncode=je.zzDecode=function(){return this};je.length=function(){return 1};var kc=4294967296n;function Nc(r){let t=0,e=0;for(let n=0;n<r.length;++n)e=r.charCodeAt(n),e<128?t+=1:e<2048?t+=2:(e&64512)===55296&&(r.charCodeAt(n+1)&64512)===56320?(++n,t+=4):t+=3;return t}function Cc(r,t,e){if(e-t<1)return"";let s,o=[],i=0,a;for(;t<e;)a=r[t++],a<128?o[i++]=a:a>191&&a<224?o[i++]=(a&31)<<6|r[t++]&63:a>239&&a<365?(a=((a&7)<<18|(r[t++]&63)<<12|(r[t++]&63)<<6|r[t++]&63)-65536,o[i++]=55296+(a>>10),o[i++]=56320+(a&1023)):o[i++]=(a&15)<<12|(r[t++]&63)<<6|r[t++]&63,i>8191&&((s??(s=[])).push(String.fromCharCode.apply(String,o)),i=0);return s!=null?(i>0&&s.push(String.fromCharCode.apply(String,o.slice(0,i))),s.join("")):String.fromCharCode.apply(String,o.slice(0,i))}function si(r,t,e){let n=e,s,o;for(let i=0;i<r.length;++i)s=r.charCodeAt(i),s<128?t[e++]=s:s<2048?(t[e++]=s>>6|192,t[e++]=s&63|128):(s&64512)===55296&&((o=r.charCodeAt(i+1))&64512)===56320?(s=65536+((s&1023)<<10)+(o&1023),++i,t[e++]=s>>18|240,t[e++]=s>>12&63|128,t[e++]=s>>6&63|128,t[e++]=s&63|128):(t[e++]=s>>12|224,t[e++]=s>>6&63|128,t[e++]=s&63|128);return e-n}function Yt(r,t){return RangeError(`index out of range: ${r.pos} + ${t??1} > ${r.len}`)}function Dn(r,t){return(r[t-4]|r[t-3]<<8|r[t-2]<<16|r[t-1]<<24)>>>0}var oi=class{buf;pos;len;_slice=Uint8Array.prototype.subarray;constructor(t){this.buf=t,this.pos=0,this.len=t.length}uint32(){let t=4294967295;if(t=(this.buf[this.pos]&127)>>>0,this.buf[this.pos++]<128||(t=(t|(this.buf[this.pos]&127)<<7)>>>0,this.buf[this.pos++]<128)||(t=(t|(this.buf[this.pos]&127)<<14)>>>0,this.buf[this.pos++]<128)||(t=(t|(this.buf[this.pos]&127)<<21)>>>0,this.buf[this.pos++]<128)||(t=(t|(this.buf[this.pos]&15)<<28)>>>0,this.buf[this.pos++]<128))return t;if((this.pos+=5)>this.len)throw this.pos=this.len,Yt(this,10);return t}int32(){return this.uint32()|0}sint32(){let t=this.uint32();return t>>>1^-(t&1)|0}bool(){return this.uint32()!==0}fixed32(){if(this.pos+4>this.len)throw Yt(this,4);return Dn(this.buf,this.pos+=4)}sfixed32(){if(this.pos+4>this.len)throw Yt(this,4);return Dn(this.buf,this.pos+=4)|0}float(){if(this.pos+4>this.len)throw Yt(this,4);let t=_c(this.buf,this.pos);return this.pos+=4,t}double(){if(this.pos+8>this.len)throw Yt(this,4);let t=Tc(this.buf,this.pos);return this.pos+=8,t}bytes(){let t=this.uint32(),e=this.pos,n=this.pos+t;if(n>this.len)throw Yt(this,t);return this.pos+=t,e===n?new Uint8Array(0):this.buf.subarray(e,n)}string(){let t=this.bytes();return Cc(t,0,t.length)}skip(t){if(typeof t=="number"){if(this.pos+t>this.len)throw Yt(this,t);this.pos+=t}else do if(this.pos>=this.len)throw Yt(this);while(this.buf[this.pos++]&128);return this}skipType(t){switch(t){case 0:this.skip();break;case 1:this.skip(8);break;case 2:this.skip(this.uint32());break;case 3:for(;(t=this.uint32()&7)!==4;)this.skipType(t);break;case 5:this.skip(4);break;default:throw Error(`invalid wire type ${t} at offset ${this.pos}`)}return this}readLongVarint(){let t=new Lt(0,0),e=0;if(this.len-this.pos>4){for(;e<4;++e)if(t.lo=(t.lo|(this.buf[this.pos]&127)<<e*7)>>>0,this.buf[this.pos++]<128)return t;if(t.lo=(t.lo|(this.buf[this.pos]&127)<<28)>>>0,t.hi=(t.hi|(this.buf[this.pos]&127)>>4)>>>0,this.buf[this.pos++]<128)return t;e=0}else{for(;e<3;++e){if(this.pos>=this.len)throw Yt(this);if(t.lo=(t.lo|(this.buf[this.pos]&127)<<e*7)>>>0,this.buf[this.pos++]<128)return t}return t.lo=(t.lo|(this.buf[this.pos++]&127)<<e*7)>>>0,t}if(this.len-this.pos>4){for(;e<5;++e)if(t.hi=(t.hi|(this.buf[this.pos]&127)<<e*7+3)>>>0,this.buf[this.pos++]<128)return t}else for(;e<5;++e){if(this.pos>=this.len)throw Yt(this);if(t.hi=(t.hi|(this.buf[this.pos]&127)<<e*7+3)>>>0,this.buf[this.pos++]<128)return t}throw Error("invalid varint encoding")}readFixed64(){if(this.pos+8>this.len)throw Yt(this,8);let t=Dn(this.buf,this.pos+=4),e=Dn(this.buf,this.pos+=4);return new Lt(t,e)}int64(){return this.readLongVarint().toBigInt()}int64Number(){return this.readLongVarint().toNumber()}int64String(){return this.readLongVarint().toString()}uint64(){return this.readLongVarint().toBigInt(!0)}uint64Number(){let t=ei(this.buf,this.pos);return this.pos+=Et(t),t}uint64String(){return this.readLongVarint().toString(!0)}sint64(){return this.readLongVarint().zzDecode().toBigInt()}sint64Number(){return this.readLongVarint().zzDecode().toNumber()}sint64String(){return this.readLongVarint().zzDecode().toString()}fixed64(){return this.readFixed64().toBigInt()}fixed64Number(){return this.readFixed64().toNumber()}fixed64String(){return this.readFixed64().toString()}sfixed64(){return this.readFixed64().toBigInt()}sfixed64Number(){return this.readFixed64().toNumber()}sfixed64String(){return this.readFixed64().toString()}};function ii(r){return new oi(r instanceof Uint8Array?r:r.subarray())}function Ut(r,t,e){let n=ii(r);return t.decode(n,void 0,e)}var ai={};_t(ai,{base10:()=>cd});var cd=_e({prefix:"9",name:"base10",alphabet:"0123456789"});var ci={};_t(ci,{base16:()=>ld,base16upper:()=>ud});var ld=st({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),ud=st({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var li={};_t(li,{base2:()=>fd});var fd=st({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var ui={};_t(ui,{base256emoji:()=>gd});var Lc=Array.from("\u{1F680}\u{1FA90}\u2604\u{1F6F0}\u{1F30C}\u{1F311}\u{1F312}\u{1F313}\u{1F314}\u{1F315}\u{1F316}\u{1F317}\u{1F318}\u{1F30D}\u{1F30F}\u{1F30E}\u{1F409}\u2600\u{1F4BB}\u{1F5A5}\u{1F4BE}\u{1F4BF}\u{1F602}\u2764\u{1F60D}\u{1F923}\u{1F60A}\u{1F64F}\u{1F495}\u{1F62D}\u{1F618}\u{1F44D}\u{1F605}\u{1F44F}\u{1F601}\u{1F525}\u{1F970}\u{1F494}\u{1F496}\u{1F499}\u{1F622}\u{1F914}\u{1F606}\u{1F644}\u{1F4AA}\u{1F609}\u263A\u{1F44C}\u{1F917}\u{1F49C}\u{1F614}\u{1F60E}\u{1F607}\u{1F339}\u{1F926}\u{1F389}\u{1F49E}\u270C\u2728\u{1F937}\u{1F631}\u{1F60C}\u{1F338}\u{1F64C}\u{1F60B}\u{1F497}\u{1F49A}\u{1F60F}\u{1F49B}\u{1F642}\u{1F493}\u{1F929}\u{1F604}\u{1F600}\u{1F5A4}\u{1F603}\u{1F4AF}\u{1F648}\u{1F447}\u{1F3B6}\u{1F612}\u{1F92D}\u2763\u{1F61C}\u{1F48B}\u{1F440}\u{1F62A}\u{1F611}\u{1F4A5}\u{1F64B}\u{1F61E}\u{1F629}\u{1F621}\u{1F92A}\u{1F44A}\u{1F973}\u{1F625}\u{1F924}\u{1F449}\u{1F483}\u{1F633}\u270B\u{1F61A}\u{1F61D}\u{1F634}\u{1F31F}\u{1F62C}\u{1F643}\u{1F340}\u{1F337}\u{1F63B}\u{1F613}\u2B50\u2705\u{1F97A}\u{1F308}\u{1F608}\u{1F918}\u{1F4A6}\u2714\u{1F623}\u{1F3C3}\u{1F490}\u2639\u{1F38A}\u{1F498}\u{1F620}\u261D\u{1F615}\u{1F33A}\u{1F382}\u{1F33B}\u{1F610}\u{1F595}\u{1F49D}\u{1F64A}\u{1F639}\u{1F5E3}\u{1F4AB}\u{1F480}\u{1F451}\u{1F3B5}\u{1F91E}\u{1F61B}\u{1F534}\u{1F624}\u{1F33C}\u{1F62B}\u26BD\u{1F919}\u2615\u{1F3C6}\u{1F92B}\u{1F448}\u{1F62E}\u{1F646}\u{1F37B}\u{1F343}\u{1F436}\u{1F481}\u{1F632}\u{1F33F}\u{1F9E1}\u{1F381}\u26A1\u{1F31E}\u{1F388}\u274C\u270A\u{1F44B}\u{1F630}\u{1F928}\u{1F636}\u{1F91D}\u{1F6B6}\u{1F4B0}\u{1F353}\u{1F4A2}\u{1F91F}\u{1F641}\u{1F6A8}\u{1F4A8}\u{1F92C}\u2708\u{1F380}\u{1F37A}\u{1F913}\u{1F619}\u{1F49F}\u{1F331}\u{1F616}\u{1F476}\u{1F974}\u25B6\u27A1\u2753\u{1F48E}\u{1F4B8}\u2B07\u{1F628}\u{1F31A}\u{1F98B}\u{1F637}\u{1F57A}\u26A0\u{1F645}\u{1F61F}\u{1F635}\u{1F44E}\u{1F932}\u{1F920}\u{1F927}\u{1F4CC}\u{1F535}\u{1F485}\u{1F9D0}\u{1F43E}\u{1F352}\u{1F617}\u{1F911}\u{1F30A}\u{1F92F}\u{1F437}\u260E\u{1F4A7}\u{1F62F}\u{1F486}\u{1F446}\u{1F3A4}\u{1F647}\u{1F351}\u2744\u{1F334}\u{1F4A3}\u{1F438}\u{1F48C}\u{1F4CD}\u{1F940}\u{1F922}\u{1F445}\u{1F4A1}\u{1F4A9}\u{1F450}\u{1F4F8}\u{1F47B}\u{1F910}\u{1F92E}\u{1F3BC}\u{1F975}\u{1F6A9}\u{1F34E}\u{1F34A}\u{1F47C}\u{1F48D}\u{1F4E3}\u{1F942}"),hd=Lc.reduce((r,t,e)=>(r[e]=t,r),[]),dd=Lc.reduce((r,t,e)=>(r[t.codePointAt(0)]=e,r),[]);function pd(r){return r.reduce((t,e)=>(t+=hd[e],t),"")}function md(r){let t=[];for(let e of r){let n=dd[e.codePointAt(0)];if(n===void 0)throw new Error(`Non-base256emoji character: ${e}`);t.push(n)}return new Uint8Array(t)}var gd=ir({prefix:"\u{1F680}",name:"base256emoji",encode:pd,decode:md});var fi={};_t(fi,{base64:()=>yd,base64pad:()=>bd,base64url:()=>wd,base64urlpad:()=>xd});var yd=st({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),bd=st({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),wd=st({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),xd=st({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var hi={};_t(hi,{base8:()=>vd});var vd=st({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var di={};_t(di,{identity:()=>Ed});var Ed=ir({prefix:"\0",name:"identity",encode:r=>za(r),decode:r=>Ka(r)});var wg=new TextEncoder,xg=new TextDecoder;var gi={};_t(gi,{sha256:()=>yr,sha512:()=>Bd});function mi({name:r,code:t,encode:e}){return new pi(r,t,e)}var pi=class{name;code;encode;constructor(t,e,n){this.name=t,this.code=e,this.encode=n}digest(t){if(t instanceof Uint8Array){let e=this.encode(t);return e instanceof Uint8Array?Wt(this.code,e):e.then(n=>Wt(this.code,n))}else throw Error("Unknown type, must be binary type")}};function Dc(r){return async t=>new Uint8Array(await crypto.subtle.digest(r,t))}var yr=mi({name:"sha2-256",code:18,encode:Dc("SHA-256")}),Bd=mi({name:"sha2-512",code:19,encode:Dc("SHA-512")});var Gr={...di,...li,...hi,...ai,...ci,...Io,...To,..._o,...fi,...ui},Rg={...gi,...Co};function Mc(r,t,e,n){return{name:r,prefix:t,encoder:{name:r,prefix:t,encode:e},decoder:{decode:n}}}var Oc=Mc("utf8","u",r=>"u"+new TextDecoder("utf8").decode(r),r=>new TextEncoder().encode(r.substring(1))),yi=Mc("ascii","a",r=>{let t="a";for(let e=0;e<r.length;e++)t+=String.fromCharCode(r[e]);return t},r=>{r=r.substring(1);let t=Ct(r.length);for(let e=0;e<r.length;e++)t[e]=r.charCodeAt(e);return t}),_d={utf8:Oc,"utf-8":Oc,hex:Gr.base16,latin1:yi,ascii:yi,binary:yi,...Gr},On=_d;function F(r,t="utf8"){let e=On[t];if(e==null)throw new Error(`Unsupported encoding "${t}"`);return e.decoder.decode(`${e.prefix}${r}`)}function bi(r){let t=r??8192,e=t>>>1,n,s=t;return function(i){if(i<1||i>e)return Ct(i);s+i>t&&(n=Ct(t),s=0);let a=n.subarray(s,s+=i);return s&7&&(s=(s|7)+1),a}}var Ze=class{fn;len;next;val;constructor(t,e,n){this.fn=t,this.len=e,this.next=void 0,this.val=n}};function wi(){}var vi=class{head;tail;len;next;constructor(t){this.head=t.head,this.tail=t.tail,this.len=t.len,this.next=t.states}},Id=bi();function Td(r){return globalThis.Buffer!=null?Ct(r):Id(r)}var jr=class{len;head;tail;states;constructor(){this.len=0,this.head=new Ze(wi,0,0),this.tail=this.head,this.states=null}_push(t,e,n){return this.tail=this.tail.next=new Ze(t,e,n),this.len+=e,this}uint32(t){return this.len+=(this.tail=this.tail.next=new Ei((t=t>>>0)<128?1:t<16384?2:t<2097152?3:t<268435456?4:5,t)).len,this}int32(t){return t<0?this._push(Mn,10,Lt.fromNumber(t)):this.uint32(t)}sint32(t){return this.uint32((t<<1^t>>31)>>>0)}uint64(t){let e=Lt.fromBigInt(t);return this._push(Mn,e.length(),e)}uint64Number(t){return this._push(ti,Et(t),t)}uint64String(t){return this.uint64(BigInt(t))}int64(t){return this.uint64(t)}int64Number(t){return this.uint64Number(t)}int64String(t){return this.uint64String(t)}sint64(t){let e=Lt.fromBigInt(t).zzEncode();return this._push(Mn,e.length(),e)}sint64Number(t){let e=Lt.fromNumber(t).zzEncode();return this._push(Mn,e.length(),e)}sint64String(t){return this.sint64(BigInt(t))}bool(t){return this._push(xi,1,t?1:0)}fixed32(t){return this._push(Wr,4,t>>>0)}sfixed32(t){return this.fixed32(t)}fixed64(t){let e=Lt.fromBigInt(t);return this._push(Wr,4,e.lo)._push(Wr,4,e.hi)}fixed64Number(t){let e=Lt.fromNumber(t);return this._push(Wr,4,e.lo)._push(Wr,4,e.hi)}fixed64String(t){return this.fixed64(BigInt(t))}sfixed64(t){return this.fixed64(t)}sfixed64Number(t){return this.fixed64Number(t)}sfixed64String(t){return this.fixed64String(t)}float(t){return this._push(Bc,4,t)}double(t){return this._push(Ic,8,t)}bytes(t){let e=t.length>>>0;return e===0?this._push(xi,1,0):this.uint32(e)._push(Nd,e,t)}string(t){let e=Nc(t);return e!==0?this.uint32(e)._push(si,e,t):this._push(xi,1,0)}fork(){return this.states=new vi(this),this.head=this.tail=new Ze(wi,0,0),this.len=0,this}reset(){return this.states!=null?(this.head=this.states.head,this.tail=this.states.tail,this.len=this.states.len,this.states=this.states.next):(this.head=this.tail=new Ze(wi,0,0),this.len=0),this}ldelim(){let t=this.head,e=this.tail,n=this.len;return this.reset().uint32(n),n!==0&&(this.tail.next=t.next,this.tail=e,this.len+=n),this}finish(){let t=this.head.next,e=Td(this.len),n=0;for(;t!=null;)t.fn(t.val,e,n),n+=t.len,t=t.next;return e}};function xi(r,t,e){t[e]=r&255}function kd(r,t,e){for(;r>127;)t[e++]=r&127|128,r>>>=7;t[e]=r}var Ei=class extends Ze{next;constructor(t,e){super(kd,t,e),this.next=void 0}};function Mn(r,t,e){for(;r.hi!==0;)t[e++]=r.lo&127|128,r.lo=(r.lo>>>7|r.hi<<25)>>>0,r.hi>>>=7;for(;r.lo>127;)t[e++]=r.lo&127|128,r.lo=r.lo>>>7;t[e++]=r.lo}function Wr(r,t,e){t[e]=r&255,t[e+1]=r>>>8&255,t[e+2]=r>>>16&255,t[e+3]=r>>>24}function Nd(r,t,e){t.set(r,e)}globalThis.Buffer!=null&&(jr.prototype.bytes=function(r){let t=r.length>>>0;return this.uint32(t),t>0&&this._push(Cd,t,r),this},jr.prototype.string=function(r){let t=globalThis.Buffer.byteLength(r);return this.uint32(t),t>0&&this._push(Rd,t,r),this});function Cd(r,t,e){t.set(r,e)}function Rd(r,t,e){r.length<40?si(r,t,e):t.utf8Write!=null?t.utf8Write(r,e):t.set(F(r),e)}function Si(){return new jr}function Dt(r,t){let e=Si();return t.encode(r,e,{lengthDelimited:!1}),e.finish()}var br;(function(r){r[r.VARINT=0]="VARINT",r[r.BIT64=1]="BIT64",r[r.LENGTH_DELIMITED=2]="LENGTH_DELIMITED",r[r.START_GROUP=3]="START_GROUP",r[r.END_GROUP=4]="END_GROUP",r[r.BIT32=5]="BIT32"})(br||(br={}));function Pn(r,t,e,n){return{name:r,type:t,encode:e,decode:n}}function Xe(r){function t(s){if(r[s.toString()]==null)throw new Error("Invalid enum value");return r[s]}let e=function(o,i){let a=t(o);i.int32(a)},n=function(o){let i=o.int32();return t(i)};return Pn("enum",br.VARINT,e,n)}function Ot(r,t){return Pn("message",br.LENGTH_DELIMITED,r,t)}var Zr=class extends Error{code="ERR_MAX_LENGTH";name="MaxLengthError"};var ft;(function(r){r.RSA="RSA",r.Ed25519="Ed25519",r.secp256k1="secp256k1"})(ft||(ft={}));var Ai;(function(r){r[r.RSA=0]="RSA",r[r.Ed25519=1]="Ed25519",r[r.secp256k1=2]="secp256k1"})(Ai||(Ai={}));(function(r){r.codec=()=>Xe(Ai)})(ft||(ft={}));var re;(function(r){let t;r.codec=()=>(t==null&&(t=Ot((e,n,s={})=>{s.lengthDelimited!==!1&&n.fork(),e.Type!=null&&(n.uint32(8),ft.codec().encode(e.Type,n)),e.Data!=null&&(n.uint32(18),n.bytes(e.Data)),s.lengthDelimited!==!1&&n.ldelim()},(e,n,s={})=>{let o={},i=n==null?e.len:e.pos+n;for(;e.pos<i;){let a=e.uint32();switch(a>>>3){case 1:{o.Type=ft.codec().decode(e);break}case 2:{o.Data=e.bytes();break}default:{e.skipType(a&7);break}}}return o})),t),r.encode=e=>Dt(e,r.codec()),r.decode=(e,n)=>Ut(e,r.codec(),n)})(re||(re={}));var Bi;(function(r){let t;r.codec=()=>(t==null&&(t=Ot((e,n,s={})=>{s.lengthDelimited!==!1&&n.fork(),e.Type!=null&&(n.uint32(8),ft.codec().encode(e.Type,n)),e.Data!=null&&(n.uint32(18),n.bytes(e.Data)),s.lengthDelimited!==!1&&n.ldelim()},(e,n,s={})=>{let o={},i=n==null?e.len:e.pos+n;for(;e.pos<i;){let a=e.uint32();switch(a>>>3){case 1:{o.Type=ft.codec().decode(e);break}case 2:{o.Data=e.bytes();break}default:{e.skipType(a&7);break}}}return o})),t),r.encode=e=>Dt(e,r.codec()),r.decode=(e,n)=>Ut(e,r.codec(),n)})(Bi||(Bi={}));var on={};_t(on,{MAX_RSA_KEY_SIZE:()=>Ns,generateRSAKeyPair:()=>Ul,jwkToJWKKeyPair:()=>Dl,jwkToPkcs1:()=>jd,jwkToPkix:()=>Ui,jwkToRSAPrivateKey:()=>Ll,pkcs1ToJwk:()=>Nl,pkcs1ToRSAPrivateKey:()=>Rl,pkixToJwk:()=>Cl,pkixToRSAPublicKey:()=>Di});var Ld=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]),Ue=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),De=new Uint32Array(64),_i=class extends pr{constructor(){super(64,32,8,!1),this.A=Ue[0]|0,this.B=Ue[1]|0,this.C=Ue[2]|0,this.D=Ue[3]|0,this.E=Ue[4]|0,this.F=Ue[5]|0,this.G=Ue[6]|0,this.H=Ue[7]|0}get(){let{A:t,B:e,C:n,D:s,E:o,F:i,G:a,H:c}=this;return[t,e,n,s,o,i,a,c]}set(t,e,n,s,o,i,a,c){this.A=t|0,this.B=e|0,this.C=n|0,this.D=s|0,this.E=o|0,this.F=i|0,this.G=a|0,this.H=c|0}process(t,e){for(let u=0;u<16;u++,e+=4)De[u]=t.getUint32(e,!1);for(let u=16;u<64;u++){let p=De[u-15],l=De[u-2],d=jt(p,7)^jt(p,18)^p>>>3,g=jt(l,17)^jt(l,19)^l>>>10;De[u]=g+De[u-7]+d+De[u-16]|0}let{A:n,B:s,C:o,D:i,E:a,F:c,G:h,H:f}=this;for(let u=0;u<64;u++){let p=jt(a,6)^jt(a,11)^jt(a,25),l=f+p+ac(a,c,h)+Ld[u]+De[u]|0,g=(jt(n,2)^jt(n,13)^jt(n,22))+cc(n,s,o)|0;f=h,h=c,c=a,a=i+l|0,i=o,o=s,s=n,n=l+g|0}n=n+this.A|0,s=s+this.B|0,o=o+this.C|0,i=i+this.D|0,a=a+this.E|0,c=c+this.F|0,h=h+this.G|0,f=f+this.H|0,this.set(n,s,o,i,a,c,h,f)}roundClean(){De.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}};var wr=An(()=>new _i);var $=xo(Vc());function Ye(r,t){let e=0;if(r.length===1)return r[0];for(let n=r.length-1;n>=0;n--)e+=r[r.length-1-n]*Math.pow(2,t*n);return e}function Oe(r,t,e=-1){let n=e,s=r,o=0,i=Math.pow(2,t);for(let a=1;a<8;a++){if(r<i){let c;if(n<0)c=new ArrayBuffer(a),o=a;else{if(n<a)return new ArrayBuffer(0);c=new ArrayBuffer(n),o=n}let h=new Uint8Array(c);for(let f=a-1;f>=0;f--){let u=Math.pow(2,f*t);h[o-f-1]=Math.floor(s/u),s-=h[o-f-1]*u}return c}i*=Math.pow(2,t)}return new ArrayBuffer(0)}function Fn(...r){let t=0,e=0;for(let o of r)t+=o.length;let n=new ArrayBuffer(t),s=new Uint8Array(n);for(let o of r)s.set(o,e),e+=o.length;return s}function Ti(){let r=new Uint8Array(this.valueHex);if(this.valueHex.byteLength>=2){let a=r[0]===255&&r[1]&128,c=r[0]===0&&(r[1]&128)===0;(a||c)&&this.warnings.push("Needlessly long format")}let t=new ArrayBuffer(this.valueHex.byteLength),e=new Uint8Array(t);for(let a=0;a<this.valueHex.byteLength;a++)e[a]=0;e[0]=r[0]&128;let n=Ye(e,8),s=new ArrayBuffer(this.valueHex.byteLength),o=new Uint8Array(s);for(let a=0;a<this.valueHex.byteLength;a++)o[a]=r[a];return o[0]&=127,Ye(o,8)-n}function Hc(r){let t=r<0?r*-1:r,e=128;for(let n=1;n<8;n++){if(t<=e){if(r<0){let i=e-t,a=Oe(i,8,n),c=new Uint8Array(a);return c[0]|=128,a}let s=Oe(t,8,n),o=new Uint8Array(s);if(o[0]&128){let i=s.slice(0),a=new Uint8Array(i);s=new ArrayBuffer(s.byteLength+1),o=new Uint8Array(s);for(let c=0;c<i.byteLength;c++)o[c+1]=a[c];o[0]=0}return s}e*=Math.pow(2,8)}return new ArrayBuffer(0)}function Fc(r,t){if(r.byteLength!==t.byteLength)return!1;let e=new Uint8Array(r),n=new Uint8Array(t);for(let s=0;s<e.length;s++)if(e[s]!==n[s])return!1;return!0}function Rt(r,t){let e=r.toString(10);if(t<e.length)return"";let n=t-e.length,s=new Array(n);for(let i=0;i<n;i++)s[i]="0";return s.join("").concat(e)}var dy=Math.log(2);function qn(){if(typeof BigInt>"u")throw new Error("BigInt is not defined. Your environment doesn't implement BigInt.")}function ki(r){let t=0,e=0;for(let s=0;s<r.length;s++){let o=r[s];t+=o.byteLength}let n=new Uint8Array(t);for(let s=0;s<r.length;s++){let o=r[s];n.set(new Uint8Array(o),e),e+=o.byteLength}return n.buffer}function xe(r,t,e,n){return t instanceof Uint8Array?t.byteLength?e<0?(r.error="Wrong parameter: inputOffset less than zero",!1):n<0?(r.error="Wrong parameter: inputLength less than zero",!1):t.byteLength-e-n<0?(r.error="End of input reached before message was fully decoded (inconsistent offset and length values)",!1):!0:(r.error="Wrong parameter: inputBuffer has zero length",!1):(r.error="Wrong parameter: inputBuffer must be 'Uint8Array'",!1)}var Yr=class{constructor(){this.items=[]}write(t){this.items.push(t)}final(){return ki(this.items)}},Xr=[new Uint8Array([1])],qc="0123456789";var Ar="",Jt=new ArrayBuffer(0),Ni=new Uint8Array(0),Jr="EndOfContent",zc="OCTET STRING",$c="BIT STRING";function ve(r){var t;return t=class extends r{constructor(...n){var s;super(...n);let o=n[0]||{};this.isHexOnly=(s=o.isHexOnly)!==null&&s!==void 0?s:!1,this.valueHexView=o.valueHex?$.BufferSourceConverter.toUint8Array(o.valueHex):Ni}get valueHex(){return this.valueHexView.slice().buffer}set valueHex(n){this.valueHexView=new Uint8Array(n)}fromBER(n,s,o){let i=n instanceof ArrayBuffer?new Uint8Array(n):n;if(!xe(this,i,s,o))return-1;let a=s+o;return this.valueHexView=i.subarray(s,a),this.valueHexView.length?(this.blockLength=o,a):(this.warnings.push("Zero buffer length"),s)}toBER(n=!1){return this.isHexOnly?n?new ArrayBuffer(this.valueHexView.byteLength):this.valueHexView.byteLength===this.valueHexView.buffer.byteLength?this.valueHexView.buffer:this.valueHexView.slice().buffer:(this.error="Flag 'isHexOnly' is not set, abort",Jt)}toJSON(){return{...super.toJSON(),isHexOnly:this.isHexOnly,valueHex:$.Convert.ToHex(this.valueHexView)}}},t.NAME="hexBlock",t}var ye=class{constructor({blockLength:t=0,error:e=Ar,warnings:n=[],valueBeforeDecode:s=Ni}={}){this.blockLength=t,this.error=e,this.warnings=n,this.valueBeforeDecodeView=$.BufferSourceConverter.toUint8Array(s)}static blockName(){return this.NAME}get valueBeforeDecode(){return this.valueBeforeDecodeView.slice().buffer}set valueBeforeDecode(t){this.valueBeforeDecodeView=new Uint8Array(t)}toJSON(){return{blockName:this.constructor.NAME,blockLength:this.blockLength,error:this.error,warnings:this.warnings,valueBeforeDecode:$.Convert.ToHex(this.valueBeforeDecodeView)}}};ye.NAME="baseBlock";var At=class extends ye{fromBER(t,e,n){throw TypeError("User need to make a specific function in a class which extends 'ValueBlock'")}toBER(t,e){throw TypeError("User need to make a specific function in a class which extends 'ValueBlock'")}};At.NAME="valueBlock";var Kn=class extends ve(ye){constructor({idBlock:t={}}={}){var e,n,s,o;super(),t?(this.isHexOnly=(e=t.isHexOnly)!==null&&e!==void 0?e:!1,this.valueHexView=t.valueHex?$.BufferSourceConverter.toUint8Array(t.valueHex):Ni,this.tagClass=(n=t.tagClass)!==null&&n!==void 0?n:-1,this.tagNumber=(s=t.tagNumber)!==null&&s!==void 0?s:-1,this.isConstructed=(o=t.isConstructed)!==null&&o!==void 0?o:!1):(this.tagClass=-1,this.tagNumber=-1,this.isConstructed=!1)}toBER(t=!1){let e=0;switch(this.tagClass){case 1:e|=0;break;case 2:e|=64;break;case 3:e|=128;break;case 4:e|=192;break;default:return this.error="Unknown tag class",Jt}if(this.isConstructed&&(e|=32),this.tagNumber<31&&!this.isHexOnly){let s=new Uint8Array(1);if(!t){let o=this.tagNumber;o&=31,e|=o,s[0]=e}return s.buffer}if(!this.isHexOnly){let s=Oe(this.tagNumber,7),o=new Uint8Array(s),i=s.byteLength,a=new Uint8Array(i+1);if(a[0]=e|31,!t){for(let c=0;c<i-1;c++)a[c+1]=o[c]|128;a[i]=o[i-1]}return a.buffer}let n=new Uint8Array(this.valueHexView.byteLength+1);if(n[0]=e|31,!t){let s=this.valueHexView;for(let o=0;o<s.length-1;o++)n[o+1]=s[o]|128;n[this.valueHexView.byteLength]=s[s.length-1]}return n.buffer}fromBER(t,e,n){let s=$.BufferSourceConverter.toUint8Array(t);if(!xe(this,s,e,n))return-1;let o=s.subarray(e,e+n);if(o.length===0)return this.error="Zero buffer length",-1;switch(o[0]&192){case 0:this.tagClass=1;break;case 64:this.tagClass=2;break;case 128:this.tagClass=3;break;case 192:this.tagClass=4;break;default:return this.error="Unknown tag class",-1}this.isConstructed=(o[0]&32)===32,this.isHexOnly=!1;let a=o[0]&31;if(a!==31)this.tagNumber=a,this.blockLength=1;else{let c=1,h=this.valueHexView=new Uint8Array(255),f=255;for(;o[c]&128;){if(h[c-1]=o[c]&127,c++,c>=o.length)return this.error="End of input reached before message was fully decoded",-1;if(c===f){f+=255;let p=new Uint8Array(f);for(let l=0;l<h.length;l++)p[l]=h[l];h=this.valueHexView=new Uint8Array(f)}}this.blockLength=c+1,h[c-1]=o[c]&127;let u=new Uint8Array(c);for(let p=0;p<c;p++)u[p]=h[p];h=this.valueHexView=new Uint8Array(c),h.set(u),this.blockLength<=9?this.tagNumber=Ye(h,7):(this.isHexOnly=!0,this.warnings.push("Tag too long, represented as hex-coded"))}if(this.tagClass===1&&this.isConstructed)switch(this.tagNumber){case 1:case 2:case 5:case 6:case 9:case 13:case 14:case 23:case 24:case 31:case 32:case 33:case 34:return this.error="Constructed encoding used for primitive type",-1}return e+this.blockLength}toJSON(){return{...super.toJSON(),tagClass:this.tagClass,tagNumber:this.tagNumber,isConstructed:this.isConstructed}}};Kn.NAME="identificationBlock";var zn=class extends ye{constructor({lenBlock:t={}}={}){var e,n,s;super(),this.isIndefiniteForm=(e=t.isIndefiniteForm)!==null&&e!==void 0?e:!1,this.longFormUsed=(n=t.longFormUsed)!==null&&n!==void 0?n:!1,this.length=(s=t.length)!==null&&s!==void 0?s:0}fromBER(t,e,n){let s=$.BufferSourceConverter.toUint8Array(t);if(!xe(this,s,e,n))return-1;let o=s.subarray(e,e+n);if(o.length===0)return this.error="Zero buffer length",-1;if(o[0]===255)return this.error="Length block 0xFF is reserved by standard",-1;if(this.isIndefiniteForm=o[0]===128,this.isIndefiniteForm)return this.blockLength=1,e+this.blockLength;if(this.longFormUsed=!!(o[0]&128),this.longFormUsed===!1)return this.length=o[0],this.blockLength=1,e+this.blockLength;let i=o[0]&127;if(i>8)return this.error="Too big integer",-1;if(i+1>o.length)return this.error="End of input reached before message was fully decoded",-1;let a=e+1,c=s.subarray(a,a+i);return c[i-1]===0&&this.warnings.push("Needlessly long encoded length"),this.length=Ye(c,8),this.longFormUsed&&this.length<=127&&this.warnings.push("Unnecessary usage of long length form"),this.blockLength=i+1,e+this.blockLength}toBER(t=!1){let e,n;if(this.length>127&&(this.longFormUsed=!0),this.isIndefiniteForm)return e=new ArrayBuffer(1),t===!1&&(n=new Uint8Array(e),n[0]=128),e;if(this.longFormUsed){let s=Oe(this.length,8);if(s.byteLength>127)return this.error="Too big length",Jt;if(e=new ArrayBuffer(s.byteLength+1),t)return e;let o=new Uint8Array(s);n=new Uint8Array(e),n[0]=s.byteLength|128;for(let i=0;i<s.byteLength;i++)n[i+1]=o[i];return e}return e=new ArrayBuffer(1),t===!1&&(n=new Uint8Array(e),n[0]=this.length),e}toJSON(){return{...super.toJSON(),isIndefiniteForm:this.isIndefiniteForm,longFormUsed:this.longFormUsed,length:this.length}}};zn.NAME="lengthBlock";var N={},bt=class extends ye{constructor({name:t=Ar,optional:e=!1,primitiveSchema:n,...s}={},o){super(s),this.name=t,this.optional=e,n&&(this.primitiveSchema=n),this.idBlock=new Kn(s),this.lenBlock=new zn(s),this.valueBlock=o?new o(s):new At(s)}fromBER(t,e,n){let s=this.valueBlock.fromBER(t,e,this.lenBlock.isIndefiniteForm?n:this.lenBlock.length);return s===-1?(this.error=this.valueBlock.error,s):(this.idBlock.error.length||(this.blockLength+=this.idBlock.blockLength),this.lenBlock.error.length||(this.blockLength+=this.lenBlock.blockLength),this.valueBlock.error.length||(this.blockLength+=this.valueBlock.blockLength),s)}toBER(t,e){let n=e||new Yr;e||Gc(this);let s=this.idBlock.toBER(t);if(n.write(s),this.lenBlock.isIndefiniteForm)n.write(new Uint8Array([128]).buffer),this.valueBlock.toBER(t,n),n.write(new ArrayBuffer(2));else{let o=this.valueBlock.toBER(t);this.lenBlock.length=o.byteLength;let i=this.lenBlock.toBER(t);n.write(i),n.write(o)}return e?Jt:n.final()}toJSON(){let t={...super.toJSON(),idBlock:this.idBlock.toJSON(),lenBlock:this.lenBlock.toJSON(),valueBlock:this.valueBlock.toJSON(),name:this.name,optional:this.optional};return this.primitiveSchema&&(t.primitiveSchema=this.primitiveSchema.toJSON()),t}toString(t="ascii"){return t==="ascii"?this.onAsciiEncoding():$.Convert.ToHex(this.toBER())}onAsciiEncoding(){return`${this.constructor.NAME} : ${$.Convert.ToHex(this.valueBlock.valueBeforeDecodeView)}`}isEqual(t){if(this===t)return!0;if(!(t instanceof this.constructor))return!1;let e=this.toBER(),n=t.toBER();return Fc(e,n)}};bt.NAME="BaseBlock";function Gc(r){if(r instanceof N.Constructed)for(let t of r.valueBlock.value)Gc(t)&&(r.lenBlock.isIndefiniteForm=!0);return!!r.lenBlock.isIndefiniteForm}var $n=class extends bt{constructor({value:t=Ar,...e}={},n){super(e,n),t&&this.fromString(t)}getValue(){return this.valueBlock.value}setValue(t){this.valueBlock.value=t}fromBER(t,e,n){let s=this.valueBlock.fromBER(t,e,this.lenBlock.isIndefiniteForm?n:this.lenBlock.length);return s===-1?(this.error=this.valueBlock.error,s):(this.fromBuffer(this.valueBlock.valueHexView),this.idBlock.error.length||(this.blockLength+=this.idBlock.blockLength),this.lenBlock.error.length||(this.blockLength+=this.lenBlock.blockLength),this.valueBlock.error.length||(this.blockLength+=this.valueBlock.blockLength),s)}onAsciiEncoding(){return`${this.constructor.NAME} : '${this.valueBlock.value}'`}};$n.NAME="BaseStringBlock";var Gn=class extends ve(At){constructor({isHexOnly:t=!0,...e}={}){super(e),this.isHexOnly=t}};Gn.NAME="PrimitiveValueBlock";var Wc,Wn=class extends bt{constructor(t={}){super(t,Gn),this.idBlock.isConstructed=!1}};Wc=Wn;N.Primitive=Wc;Wn.NAME="PRIMITIVE";function qd(r,t){if(r instanceof t)return r;let e=new t;return e.idBlock=r.idBlock,e.lenBlock=r.lenBlock,e.warnings=r.warnings,e.valueBeforeDecodeView=r.valueBeforeDecodeView,e}function Is(r,t=0,e=r.length){let n=t,s=new bt({},At),o=new ye;if(!xe(o,r,t,e))return s.error=o.error,{offset:-1,result:s};if(!r.subarray(t,t+e).length)return s.error="Zero buffer length",{offset:-1,result:s};let a=s.idBlock.fromBER(r,t,e);if(s.idBlock.warnings.length&&s.warnings.concat(s.idBlock.warnings),a===-1)return s.error=s.idBlock.error,{offset:-1,result:s};if(t=a,e-=s.idBlock.blockLength,a=s.lenBlock.fromBER(r,t,e),s.lenBlock.warnings.length&&s.warnings.concat(s.lenBlock.warnings),a===-1)return s.error=s.lenBlock.error,{offset:-1,result:s};if(t=a,e-=s.lenBlock.blockLength,!s.idBlock.isConstructed&&s.lenBlock.isIndefiniteForm)return s.error="Indefinite length form used for primitive encoding form",{offset:-1,result:s};let c=bt;switch(s.idBlock.tagClass){case 1:if(s.idBlock.tagNumber>=37&&s.idBlock.isHexOnly===!1)return s.error="UNIVERSAL 37 and upper tags are reserved by ASN.1 standard",{offset:-1,result:s};switch(s.idBlock.tagNumber){case 0:if(s.idBlock.isConstructed&&s.lenBlock.length>0)return s.error="Type [UNIVERSAL 0] is reserved",{offset:-1,result:s};c=N.EndOfContent;break;case 1:c=N.Boolean;break;case 2:c=N.Integer;break;case 3:c=N.BitString;break;case 4:c=N.OctetString;break;case 5:c=N.Null;break;case 6:c=N.ObjectIdentifier;break;case 10:c=N.Enumerated;break;case 12:c=N.Utf8String;break;case 13:c=N.RelativeObjectIdentifier;break;case 14:c=N.TIME;break;case 15:return s.error="[UNIVERSAL 15] is reserved by ASN.1 standard",{offset:-1,result:s};case 16:c=N.Sequence;break;case 17:c=N.Set;break;case 18:c=N.NumericString;break;case 19:c=N.PrintableString;break;case 20:c=N.TeletexString;break;case 21:c=N.VideotexString;break;case 22:c=N.IA5String;break;case 23:c=N.UTCTime;break;case 24:c=N.GeneralizedTime;break;case 25:c=N.GraphicString;break;case 26:c=N.VisibleString;break;case 27:c=N.GeneralString;break;case 28:c=N.UniversalString;break;case 29:c=N.CharacterString;break;case 30:c=N.BmpString;break;case 31:c=N.DATE;break;case 32:c=N.TimeOfDay;break;case 33:c=N.DateTime;break;case 34:c=N.Duration;break;default:{let h=s.idBlock.isConstructed?new N.Constructed:new N.Primitive;h.idBlock=s.idBlock,h.lenBlock=s.lenBlock,h.warnings=s.warnings,s=h}}break;case 2:case 3:case 4:default:c=s.idBlock.isConstructed?N.Constructed:N.Primitive}return s=qd(s,c),a=s.fromBER(r,t,s.lenBlock.isIndefiniteForm?e:s.lenBlock.length),s.valueBeforeDecodeView=r.subarray(n,n+s.blockLength),{offset:a,result:s}}function Ci(r){if(!r.byteLength){let t=new bt({},At);return t.error="Input buffer has zero length",{offset:-1,result:t}}return Is($.BufferSourceConverter.toUint8Array(r).slice(),0,r.byteLength)}function Kd(r,t){return r?1:t}var ne=class extends At{constructor({value:t=[],isIndefiniteForm:e=!1,...n}={}){super(n),this.value=t,this.isIndefiniteForm=e}fromBER(t,e,n){let s=$.BufferSourceConverter.toUint8Array(t);if(!xe(this,s,e,n))return-1;if(this.valueBeforeDecodeView=s.subarray(e,e+n),this.valueBeforeDecodeView.length===0)return this.warnings.push("Zero buffer length"),e;let o=e;for(;Kd(this.isIndefiniteForm,n)>0;){let i=Is(s,o,n);if(i.offset===-1)return this.error=i.result.error,this.warnings.concat(i.result.warnings),-1;if(o=i.offset,this.blockLength+=i.result.blockLength,n-=i.result.blockLength,this.value.push(i.result),this.isIndefiniteForm&&i.result.constructor.NAME===Jr)break}return this.isIndefiniteForm&&(this.value[this.value.length-1].constructor.NAME===Jr?this.value.pop():this.warnings.push("No EndOfContent block encoded")),o}toBER(t,e){let n=e||new Yr;for(let s=0;s<this.value.length;s++)this.value[s].toBER(t,n);return e?Jt:n.final()}toJSON(){let t={...super.toJSON(),isIndefiniteForm:this.isIndefiniteForm,value:[]};for(let e of this.value)t.value.push(e.toJSON());return t}};ne.NAME="ConstructedValueBlock";var jc,Me=class extends bt{constructor(t={}){super(t,ne),this.idBlock.isConstructed=!0}fromBER(t,e,n){this.valueBlock.isIndefiniteForm=this.lenBlock.isIndefiniteForm;let s=this.valueBlock.fromBER(t,e,this.lenBlock.isIndefiniteForm?n:this.lenBlock.length);return s===-1?(this.error=this.valueBlock.error,s):(this.idBlock.error.length||(this.blockLength+=this.idBlock.blockLength),this.lenBlock.error.length||(this.blockLength+=this.lenBlock.blockLength),this.valueBlock.error.length||(this.blockLength+=this.valueBlock.blockLength),s)}onAsciiEncoding(){let t=[];for(let n of this.valueBlock.value)t.push(n.toString("ascii").split(`
|
2
|
+
"use strict";var Libp2PCircuitRelayV2=(()=>{var sf=Object.create;var bn=Object.defineProperty;var of=Object.getOwnPropertyDescriptor;var af=Object.getOwnPropertyNames;var cf=Object.getPrototypeOf,lf=Object.prototype.hasOwnProperty;var wo=(r,t)=>()=>(t||r((t={exports:{}}).exports,t),t.exports),_t=(r,t)=>{for(var e in t)bn(r,e,{get:t[e],enumerable:!0})},Ua=(r,t,e,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let s of af(t))!lf.call(r,s)&&s!==e&&bn(r,s,{get:()=>t[s],enumerable:!(n=of(t,s))||n.enumerable});return r};var xo=(r,t,e)=>(e=r!=null?sf(cf(r)):{},Ua(t||!r||!r.__esModule?bn(e,"default",{value:r,enumerable:!0}):e,r)),uf=r=>Ua(bn({},"__esModule",{value:!0}),r);var Vc=wo(xr=>{"use strict";var Ud="[object ArrayBuffer]",ge=class r{static isArrayBuffer(t){return Object.prototype.toString.call(t)===Ud}static toArrayBuffer(t){return this.isArrayBuffer(t)?t:t.byteLength===t.buffer.byteLength||t.byteOffset===0&&t.byteLength===t.buffer.byteLength?t.buffer:this.toUint8Array(t.buffer).slice(t.byteOffset,t.byteOffset+t.byteLength).buffer}static toUint8Array(t){return this.toView(t,Uint8Array)}static toView(t,e){if(t.constructor===e)return t;if(this.isArrayBuffer(t))return new e(t);if(this.isArrayBufferView(t))return new e(t.buffer,t.byteOffset,t.byteLength);throw new TypeError("The provided value is not of type '(ArrayBuffer or ArrayBufferView)'")}static isBufferSource(t){return this.isArrayBufferView(t)||this.isArrayBuffer(t)}static isArrayBufferView(t){return ArrayBuffer.isView(t)||t&&this.isArrayBuffer(t.buffer)}static isEqual(t,e){let n=r.toUint8Array(t),s=r.toUint8Array(e);if(n.length!==s.byteLength)return!1;for(let o=0;o<n.length;o++)if(n[o]!==s[o])return!1;return!0}static concat(...t){let e;Array.isArray(t[0])&&!(t[1]instanceof Function)||Array.isArray(t[0])&&t[1]instanceof Function?e=t[0]:t[t.length-1]instanceof Function?e=t.slice(0,t.length-1):e=t;let n=0;for(let i of e)n+=i.byteLength;let s=new Uint8Array(n),o=0;for(let i of e){let a=this.toUint8Array(i);s.set(a,o),o+=a.length}return t[t.length-1]instanceof Function?this.toView(s,t[t.length-1]):s.buffer}},Ii="string",Dd=/^[0-9a-f]+$/i,Od=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/,Md=/^[a-zA-Z0-9-_]+$/,Vn=class{static fromString(t){let e=unescape(encodeURIComponent(t)),n=new Uint8Array(e.length);for(let s=0;s<e.length;s++)n[s]=e.charCodeAt(s);return n.buffer}static toString(t){let e=ge.toUint8Array(t),n="";for(let o=0;o<e.length;o++)n+=String.fromCharCode(e[o]);return decodeURIComponent(escape(n))}},$t=class{static toString(t,e=!1){let n=ge.toArrayBuffer(t),s=new DataView(n),o="";for(let i=0;i<n.byteLength;i+=2){let a=s.getUint16(i,e);o+=String.fromCharCode(a)}return o}static fromString(t,e=!1){let n=new ArrayBuffer(t.length*2),s=new DataView(n);for(let o=0;o<t.length;o++)s.setUint16(o*2,t.charCodeAt(o),e);return n}},Hn=class r{static isHex(t){return typeof t===Ii&&Dd.test(t)}static isBase64(t){return typeof t===Ii&&Od.test(t)}static isBase64Url(t){return typeof t===Ii&&Md.test(t)}static ToString(t,e="utf8"){let n=ge.toUint8Array(t);switch(e.toLowerCase()){case"utf8":return this.ToUtf8String(n);case"binary":return this.ToBinary(n);case"hex":return this.ToHex(n);case"base64":return this.ToBase64(n);case"base64url":return this.ToBase64Url(n);case"utf16le":return $t.toString(n,!0);case"utf16":case"utf16be":return $t.toString(n);default:throw new Error(`Unknown type of encoding '${e}'`)}}static FromString(t,e="utf8"){if(!t)return new ArrayBuffer(0);switch(e.toLowerCase()){case"utf8":return this.FromUtf8String(t);case"binary":return this.FromBinary(t);case"hex":return this.FromHex(t);case"base64":return this.FromBase64(t);case"base64url":return this.FromBase64Url(t);case"utf16le":return $t.fromString(t,!0);case"utf16":case"utf16be":return $t.fromString(t);default:throw new Error(`Unknown type of encoding '${e}'`)}}static ToBase64(t){let e=ge.toUint8Array(t);if(typeof btoa<"u"){let n=this.ToString(e,"binary");return btoa(n)}else return Buffer.from(e).toString("base64")}static FromBase64(t){let e=this.formatString(t);if(!e)return new ArrayBuffer(0);if(!r.isBase64(e))throw new TypeError("Argument 'base64Text' is not Base64 encoded");return typeof atob<"u"?this.FromBinary(atob(e)):new Uint8Array(Buffer.from(e,"base64")).buffer}static FromBase64Url(t){let e=this.formatString(t);if(!e)return new ArrayBuffer(0);if(!r.isBase64Url(e))throw new TypeError("Argument 'base64url' is not Base64Url encoded");return this.FromBase64(this.Base64Padding(e.replace(/\-/g,"+").replace(/\_/g,"/")))}static ToBase64Url(t){return this.ToBase64(t).replace(/\+/g,"-").replace(/\//g,"_").replace(/\=/g,"")}static FromUtf8String(t,e=r.DEFAULT_UTF8_ENCODING){switch(e){case"ascii":return this.FromBinary(t);case"utf8":return Vn.fromString(t);case"utf16":case"utf16be":return $t.fromString(t);case"utf16le":case"usc2":return $t.fromString(t,!0);default:throw new Error(`Unknown type of encoding '${e}'`)}}static ToUtf8String(t,e=r.DEFAULT_UTF8_ENCODING){switch(e){case"ascii":return this.ToBinary(t);case"utf8":return Vn.toString(t);case"utf16":case"utf16be":return $t.toString(t);case"utf16le":case"usc2":return $t.toString(t,!0);default:throw new Error(`Unknown type of encoding '${e}'`)}}static FromBinary(t){let e=t.length,n=new Uint8Array(e);for(let s=0;s<e;s++)n[s]=t.charCodeAt(s);return n.buffer}static ToBinary(t){let e=ge.toUint8Array(t),n="";for(let s=0;s<e.length;s++)n+=String.fromCharCode(e[s]);return n}static ToHex(t){let e=ge.toUint8Array(t),n="",s=e.length;for(let o=0;o<s;o++){let i=e[o];i<16&&(n+="0"),n+=i.toString(16)}return n}static FromHex(t){let e=this.formatString(t);if(!e)return new ArrayBuffer(0);if(!r.isHex(e))throw new TypeError("Argument 'hexString' is not HEX encoded");e.length%2&&(e=`0${e}`);let n=new Uint8Array(e.length/2);for(let s=0;s<e.length;s=s+2){let o=e.slice(s,s+2);n[s/2]=parseInt(o,16)}return n.buffer}static ToUtf16String(t,e=!1){return $t.toString(t,e)}static FromUtf16String(t,e=!1){return $t.fromString(t,e)}static Base64Padding(t){let e=4-t.length%4;if(e<4)for(let n=0;n<e;n++)t+="=";return t}static formatString(t){return t?.replace(/[\n\r\t ]/g,"")||""}};Hn.DEFAULT_UTF8_ENCODING="utf8";function Pd(r,...t){let e=arguments[0];for(let n=1;n<arguments.length;n++){let s=arguments[n];for(let o in s)e[o]=s[o]}return e}function Vd(...r){let t=r.map(s=>s.byteLength).reduce((s,o)=>s+o),e=new Uint8Array(t),n=0;return r.map(s=>new Uint8Array(s)).forEach(s=>{for(let o of s)e[n++]=o}),e.buffer}function Hd(r,t){if(!(r&&t)||r.byteLength!==t.byteLength)return!1;let e=new Uint8Array(r),n=new Uint8Array(t);for(let s=0;s<r.byteLength;s++)if(e[s]!==n[s])return!1;return!0}xr.BufferSourceConverter=ge;xr.Convert=Hn;xr.assign=Pd;xr.combine=Vd;xr.isEqual=Hd});var Bu=wo((mn,Qs)=>{(function(r,t){"use strict";var e={version:"3.0.0",x86:{},x64:{},inputValidation:!0};function n(l){if(!Array.isArray(l)&&!ArrayBuffer.isView(l))return!1;for(var d=0;d<l.length;d++)if(!Number.isInteger(l[d])||l[d]<0||l[d]>255)return!1;return!0}function s(l,d){return(l&65535)*d+(((l>>>16)*d&65535)<<16)}function o(l,d){return l<<d|l>>>32-d}function i(l){return l^=l>>>16,l=s(l,2246822507),l^=l>>>13,l=s(l,3266489909),l^=l>>>16,l}function a(l,d){l=[l[0]>>>16,l[0]&65535,l[1]>>>16,l[1]&65535],d=[d[0]>>>16,d[0]&65535,d[1]>>>16,d[1]&65535];var g=[0,0,0,0];return g[3]+=l[3]+d[3],g[2]+=g[3]>>>16,g[3]&=65535,g[2]+=l[2]+d[2],g[1]+=g[2]>>>16,g[2]&=65535,g[1]+=l[1]+d[1],g[0]+=g[1]>>>16,g[1]&=65535,g[0]+=l[0]+d[0],g[0]&=65535,[g[0]<<16|g[1],g[2]<<16|g[3]]}function c(l,d){l=[l[0]>>>16,l[0]&65535,l[1]>>>16,l[1]&65535],d=[d[0]>>>16,d[0]&65535,d[1]>>>16,d[1]&65535];var g=[0,0,0,0];return g[3]+=l[3]*d[3],g[2]+=g[3]>>>16,g[3]&=65535,g[2]+=l[2]*d[3],g[1]+=g[2]>>>16,g[2]&=65535,g[2]+=l[3]*d[2],g[1]+=g[2]>>>16,g[2]&=65535,g[1]+=l[1]*d[3],g[0]+=g[1]>>>16,g[1]&=65535,g[1]+=l[2]*d[2],g[0]+=g[1]>>>16,g[1]&=65535,g[1]+=l[3]*d[1],g[0]+=g[1]>>>16,g[1]&=65535,g[0]+=l[0]*d[3]+l[1]*d[2]+l[2]*d[1]+l[3]*d[0],g[0]&=65535,[g[0]<<16|g[1],g[2]<<16|g[3]]}function h(l,d){return d%=64,d===32?[l[1],l[0]]:d<32?[l[0]<<d|l[1]>>>32-d,l[1]<<d|l[0]>>>32-d]:(d-=32,[l[1]<<d|l[0]>>>32-d,l[0]<<d|l[1]>>>32-d])}function f(l,d){return d%=64,d===0?l:d<32?[l[0]<<d|l[1]>>>32-d,l[1]<<d]:[l[1]<<d-32,0]}function u(l,d){return[l[0]^d[0],l[1]^d[1]]}function p(l){return l=u(l,[0,l[0]>>>1]),l=c(l,[4283543511,3981806797]),l=u(l,[0,l[0]>>>1]),l=c(l,[3301882366,444984403]),l=u(l,[0,l[0]>>>1]),l}e.x86.hash32=function(l,d){if(e.inputValidation&&!n(l))return t;d=d||0;for(var g=l.length%4,y=l.length-g,b=d,w=0,m=3432918353,v=461845907,A=0;A<y;A=A+4)w=l[A]|l[A+1]<<8|l[A+2]<<16|l[A+3]<<24,w=s(w,m),w=o(w,15),w=s(w,v),b^=w,b=o(b,13),b=s(b,5)+3864292196;switch(w=0,g){case 3:w^=l[A+2]<<16;case 2:w^=l[A+1]<<8;case 1:w^=l[A],w=s(w,m),w=o(w,15),w=s(w,v),b^=w}return b^=l.length,b=i(b),b>>>0},e.x86.hash128=function(l,d){if(e.inputValidation&&!n(l))return t;d=d||0;for(var g=l.length%16,y=l.length-g,b=d,w=d,m=d,v=d,A=0,_=0,x=0,B=0,C=597399067,et=2869860233,H=951274213,V=2716044179,U=0;U<y;U=U+16)A=l[U]|l[U+1]<<8|l[U+2]<<16|l[U+3]<<24,_=l[U+4]|l[U+5]<<8|l[U+6]<<16|l[U+7]<<24,x=l[U+8]|l[U+9]<<8|l[U+10]<<16|l[U+11]<<24,B=l[U+12]|l[U+13]<<8|l[U+14]<<16|l[U+15]<<24,A=s(A,C),A=o(A,15),A=s(A,et),b^=A,b=o(b,19),b+=w,b=s(b,5)+1444728091,_=s(_,et),_=o(_,16),_=s(_,H),w^=_,w=o(w,17),w+=m,w=s(w,5)+197830471,x=s(x,H),x=o(x,17),x=s(x,V),m^=x,m=o(m,15),m+=v,m=s(m,5)+2530024501,B=s(B,V),B=o(B,18),B=s(B,C),v^=B,v=o(v,13),v+=b,v=s(v,5)+850148119;switch(A=0,_=0,x=0,B=0,g){case 15:B^=l[U+14]<<16;case 14:B^=l[U+13]<<8;case 13:B^=l[U+12],B=s(B,V),B=o(B,18),B=s(B,C),v^=B;case 12:x^=l[U+11]<<24;case 11:x^=l[U+10]<<16;case 10:x^=l[U+9]<<8;case 9:x^=l[U+8],x=s(x,H),x=o(x,17),x=s(x,V),m^=x;case 8:_^=l[U+7]<<24;case 7:_^=l[U+6]<<16;case 6:_^=l[U+5]<<8;case 5:_^=l[U+4],_=s(_,et),_=o(_,16),_=s(_,H),w^=_;case 4:A^=l[U+3]<<24;case 3:A^=l[U+2]<<16;case 2:A^=l[U+1]<<8;case 1:A^=l[U],A=s(A,C),A=o(A,15),A=s(A,et),b^=A}return b^=l.length,w^=l.length,m^=l.length,v^=l.length,b+=w,b+=m,b+=v,w+=b,m+=b,v+=b,b=i(b),w=i(w),m=i(m),v=i(v),b+=w,b+=m,b+=v,w+=b,m+=b,v+=b,("00000000"+(b>>>0).toString(16)).slice(-8)+("00000000"+(w>>>0).toString(16)).slice(-8)+("00000000"+(m>>>0).toString(16)).slice(-8)+("00000000"+(v>>>0).toString(16)).slice(-8)},e.x64.hash128=function(l,d){if(e.inputValidation&&!n(l))return t;d=d||0;for(var g=l.length%16,y=l.length-g,b=[0,d],w=[0,d],m=[0,0],v=[0,0],A=[2277735313,289559509],_=[1291169091,658871167],x=0;x<y;x=x+16)m=[l[x+4]|l[x+5]<<8|l[x+6]<<16|l[x+7]<<24,l[x]|l[x+1]<<8|l[x+2]<<16|l[x+3]<<24],v=[l[x+12]|l[x+13]<<8|l[x+14]<<16|l[x+15]<<24,l[x+8]|l[x+9]<<8|l[x+10]<<16|l[x+11]<<24],m=c(m,A),m=h(m,31),m=c(m,_),b=u(b,m),b=h(b,27),b=a(b,w),b=a(c(b,[0,5]),[0,1390208809]),v=c(v,_),v=h(v,33),v=c(v,A),w=u(w,v),w=h(w,31),w=a(w,b),w=a(c(w,[0,5]),[0,944331445]);switch(m=[0,0],v=[0,0],g){case 15:v=u(v,f([0,l[x+14]],48));case 14:v=u(v,f([0,l[x+13]],40));case 13:v=u(v,f([0,l[x+12]],32));case 12:v=u(v,f([0,l[x+11]],24));case 11:v=u(v,f([0,l[x+10]],16));case 10:v=u(v,f([0,l[x+9]],8));case 9:v=u(v,[0,l[x+8]]),v=c(v,_),v=h(v,33),v=c(v,A),w=u(w,v);case 8:m=u(m,f([0,l[x+7]],56));case 7:m=u(m,f([0,l[x+6]],48));case 6:m=u(m,f([0,l[x+5]],40));case 5:m=u(m,f([0,l[x+4]],32));case 4:m=u(m,f([0,l[x+3]],24));case 3:m=u(m,f([0,l[x+2]],16));case 2:m=u(m,f([0,l[x+1]],8));case 1:m=u(m,[0,l[x]]),m=c(m,A),m=h(m,31),m=c(m,_),b=u(b,m)}return b=u(b,[0,l.length]),w=u(w,[0,l.length]),b=a(b,w),w=a(w,b),b=p(b),w=p(w),b=a(b,w),w=a(w,b),("00000000"+(b[0]>>>0).toString(16)).slice(-8)+("00000000"+(b[1]>>>0).toString(16)).slice(-8)+("00000000"+(w[0]>>>0).toString(16)).slice(-8)+("00000000"+(w[1]>>>0).toString(16)).slice(-8)},typeof mn<"u"?(typeof Qs<"u"&&Qs.exports&&(mn=Qs.exports=e),mn.murmurHash3=e):typeof define=="function"&&define.amd?define([],function(){return e}):(e._murmurHash3=r.murmurHash3,e.noConflict=function(){return r.murmurHash3=e._murmurHash3,e._murmurHash3=t,e.noConflict=t,e},r.murmurHash3=e)})(mn)});var aa=wo((k1,_u)=>{_u.exports=Bu()});var f0={};_t(f0,{RELAY_V2_HOP_CODEC:()=>Gt,RELAY_V2_STOP_CODEC:()=>Qe,circuitRelayServer:()=>Cu,circuitRelayTransport:()=>Zu});var vo=Symbol.for("@libp2p/peer-id");var Oa=Symbol.for("@libp2p/transport");var Da;(function(r){r[r.FATAL_ALL=0]="FATAL_ALL",r[r.NO_FATAL=1]="NO_FATAL"})(Da||(Da={}));var ae=class extends Error{static name="AbortError";constructor(t="The operation was aborted"){super(t),this.name="AbortError"}};var pt=class extends Error{static name="InvalidParametersError";constructor(t="Invalid parameters"){super(t),this.name="InvalidParametersError"}},sr=class extends Error{static name="InvalidPublicKeyError";constructor(t="Invalid public key"){super(t),this.name="InvalidPublicKeyError"}};var wn=class extends Error{static name="InvalidMultihashError";constructor(t="Invalid Multihash"){super(t),this.name="InvalidMultihashError"}};var xn=class extends Error{static name="InvalidMessageError";constructor(t="Invalid message"){super(t),this.name="InvalidMessageError"}};var Mr=class extends Error{static name="DialError";constructor(t="Dial error"){super(t),this.name="DialError"}},vn=class extends Error{static name="ListenError";constructor(t="Listen error"){super(t),this.name="ListenError"}};var or=class extends Error{static name="UnsupportedKeyTypeError";constructor(t="Unsupported key type"){super(t),this.name="UnsupportedKeyTypeError"}};var Ft=(r,...t)=>{try{[...t]}catch{}};var qt=class extends EventTarget{#t=new Map;constructor(){super(),Ft(1/0,this)}listenerCount(t){let e=this.#t.get(t);return e==null?0:e.length}addEventListener(t,e,n){super.addEventListener(t,e,n);let s=this.#t.get(t);s==null&&(s=[],this.#t.set(t,s)),s.push({callback:e,once:(n!==!0&&n!==!1&&n?.once)??!1})}removeEventListener(t,e,n){super.removeEventListener(t.toString(),e??null,n);let s=this.#t.get(t);s!=null&&(s=s.filter(({callback:o})=>o!==e),this.#t.set(t,s))}dispatchEvent(t){let e=super.dispatchEvent(t),n=this.#t.get(t.type);return n==null||(n=n.filter(({once:s})=>!s),this.#t.set(t.type,n)),e}safeDispatchEvent(t,e={}){return this.dispatchEvent(new CustomEvent(t,e))}};function Ma(r){return r!=null&&typeof r.start=="function"&&typeof r.stop=="function"}async function Pa(...r){let t=[];for(let e of r)Ma(e)&&t.push(e);await Promise.all(t.map(async e=>{e.beforeStart!=null&&await e.beforeStart()})),await Promise.all(t.map(async e=>{await e.start()})),await Promise.all(t.map(async e=>{e.afterStart!=null&&await e.afterStart()}))}async function Va(...r){let t=[];for(let e of r)Ma(e)&&t.push(e);await Promise.all(t.map(async e=>{e.beforeStop!=null&&await e.beforeStop()})),await Promise.all(t.map(async e=>{await e.stop()})),await Promise.all(t.map(async e=>{e.afterStop!=null&&await e.afterStop()}))}var Ha=Symbol.for("@libp2p/service-capabilities"),Fa=Symbol.for("@libp2p/service-dependencies");var _o={};_t(_o,{base58btc:()=>tt,base58flickr:()=>gf});var K0=new Uint8Array(0);function qa(r,t){if(r===t)return!0;if(r.byteLength!==t.byteLength)return!1;for(let e=0;e<r.byteLength;e++)if(r[e]!==t[e])return!1;return!0}function ce(r){if(r instanceof Uint8Array&&r.constructor.name==="Uint8Array")return r;if(r instanceof ArrayBuffer)return new Uint8Array(r);if(ArrayBuffer.isView(r))return new Uint8Array(r.buffer,r.byteOffset,r.byteLength);throw new Error("Unknown type, must be binary type")}function Ka(r){return new TextEncoder().encode(r)}function za(r){return new TextDecoder().decode(r)}function ff(r,t){if(r.length>=255)throw new TypeError("Alphabet too long");for(var e=new Uint8Array(256),n=0;n<e.length;n++)e[n]=255;for(var s=0;s<r.length;s++){var o=r.charAt(s),i=o.charCodeAt(0);if(e[i]!==255)throw new TypeError(o+" is ambiguous");e[i]=s}var a=r.length,c=r.charAt(0),h=Math.log(a)/Math.log(256),f=Math.log(256)/Math.log(a);function u(d){if(d instanceof Uint8Array||(ArrayBuffer.isView(d)?d=new Uint8Array(d.buffer,d.byteOffset,d.byteLength):Array.isArray(d)&&(d=Uint8Array.from(d))),!(d instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(d.length===0)return"";for(var g=0,y=0,b=0,w=d.length;b!==w&&d[b]===0;)b++,g++;for(var m=(w-b)*f+1>>>0,v=new Uint8Array(m);b!==w;){for(var A=d[b],_=0,x=m-1;(A!==0||_<y)&&x!==-1;x--,_++)A+=256*v[x]>>>0,v[x]=A%a>>>0,A=A/a>>>0;if(A!==0)throw new Error("Non-zero carry");y=_,b++}for(var B=m-y;B!==m&&v[B]===0;)B++;for(var C=c.repeat(g);B<m;++B)C+=r.charAt(v[B]);return C}function p(d){if(typeof d!="string")throw new TypeError("Expected String");if(d.length===0)return new Uint8Array;var g=0;if(d[g]!==" "){for(var y=0,b=0;d[g]===c;)y++,g++;for(var w=(d.length-g)*h+1>>>0,m=new Uint8Array(w);d[g];){var v=e[d.charCodeAt(g)];if(v===255)return;for(var A=0,_=w-1;(v!==0||A<b)&&_!==-1;_--,A++)v+=a*m[_]>>>0,m[_]=v%256>>>0,v=v/256>>>0;if(v!==0)throw new Error("Non-zero carry");b=A,g++}if(d[g]!==" "){for(var x=w-b;x!==w&&m[x]===0;)x++;for(var B=new Uint8Array(y+(w-x)),C=y;x!==w;)B[C++]=m[x++];return B}}}function l(d){var g=p(d);if(g)return g;throw new Error(`Non-${t} character`)}return{encode:u,decodeUnsafe:p,decode:l}}var hf=ff,df=hf,Ga=df;var Eo=class{name;prefix;baseEncode;constructor(t,e,n){this.name=t,this.prefix=e,this.baseEncode=n}encode(t){if(t instanceof Uint8Array)return`${this.prefix}${this.baseEncode(t)}`;throw Error("Unknown type, must be binary type")}},So=class{name;prefix;baseDecode;prefixCodePoint;constructor(t,e,n){this.name=t,this.prefix=e;let s=e.codePointAt(0);if(s===void 0)throw new Error("Invalid prefix character");this.prefixCodePoint=s,this.baseDecode=n}decode(t){if(typeof t=="string"){if(t.codePointAt(0)!==this.prefixCodePoint)throw Error(`Unable to decode multibase string ${JSON.stringify(t)}, ${this.name} decoder only supports inputs prefixed with ${this.prefix}`);return this.baseDecode(t.slice(this.prefix.length))}else throw Error("Can only multibase decode strings")}or(t){return Wa(this,t)}},Ao=class{decoders;constructor(t){this.decoders=t}or(t){return Wa(this,t)}decode(t){let e=t[0],n=this.decoders[e];if(n!=null)return n.decode(t);throw RangeError(`Unable to decode multibase string ${JSON.stringify(t)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`)}};function Wa(r,t){return new Ao({...r.decoders??{[r.prefix]:r},...t.decoders??{[t.prefix]:t}})}var Bo=class{name;prefix;baseEncode;baseDecode;encoder;decoder;constructor(t,e,n,s){this.name=t,this.prefix=e,this.baseEncode=n,this.baseDecode=s,this.encoder=new Eo(t,e,n),this.decoder=new So(t,e,s)}encode(t){return this.encoder.encode(t)}decode(t){return this.decoder.decode(t)}};function ir({name:r,prefix:t,encode:e,decode:n}){return new Bo(r,t,e,n)}function _e({name:r,prefix:t,alphabet:e}){let{encode:n,decode:s}=Ga(e,r);return ir({prefix:t,name:r,encode:n,decode:o=>ce(s(o))})}function pf(r,t,e,n){let s={};for(let f=0;f<t.length;++f)s[t[f]]=f;let o=r.length;for(;r[o-1]==="=";)--o;let i=new Uint8Array(o*e/8|0),a=0,c=0,h=0;for(let f=0;f<o;++f){let u=s[r[f]];if(u===void 0)throw new SyntaxError(`Non-${n} character`);c=c<<e|u,a+=e,a>=8&&(a-=8,i[h++]=255&c>>a)}if(a>=e||255&c<<8-a)throw new SyntaxError("Unexpected end of data");return i}function mf(r,t,e){let n=t[t.length-1]==="=",s=(1<<e)-1,o="",i=0,a=0;for(let c=0;c<r.length;++c)for(a=a<<8|r[c],i+=8;i>e;)i-=e,o+=t[s&a>>i];if(i!==0&&(o+=t[s&a<<e-i]),n)for(;o.length*e&7;)o+="=";return o}function st({name:r,prefix:t,bitsPerChar:e,alphabet:n}){return ir({prefix:t,name:r,encode(s){return mf(s,n,e)},decode(s){return pf(s,n,e,r)}})}var tt=_e({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),gf=_e({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var Io={};_t(Io,{base32:()=>le,base32hex:()=>xf,base32hexpad:()=>Ef,base32hexpadupper:()=>Sf,base32hexupper:()=>vf,base32pad:()=>bf,base32padupper:()=>wf,base32upper:()=>yf,base32z:()=>Af});var le=st({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),yf=st({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),bf=st({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),wf=st({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),xf=st({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),vf=st({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),Ef=st({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),Sf=st({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),Af=st({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var To={};_t(To,{base36:()=>Pr,base36upper:()=>Bf});var Pr=_e({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),Bf=_e({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var _f=Xa,ja=128,If=127,Tf=~If,kf=Math.pow(2,31);function Xa(r,t,e){t=t||[],e=e||0;for(var n=e;r>=kf;)t[e++]=r&255|ja,r/=128;for(;r&Tf;)t[e++]=r&255|ja,r>>>=7;return t[e]=r|0,Xa.bytes=e-n+1,t}var Nf=ko,Cf=128,Za=127;function ko(r,n){var e=0,n=n||0,s=0,o=n,i,a=r.length;do{if(o>=a)throw ko.bytes=0,new RangeError("Could not decode varint");i=r[o++],e+=s<28?(i&Za)<<s:(i&Za)*Math.pow(2,s),s+=7}while(i>=Cf);return ko.bytes=o-n,e}var Rf=Math.pow(2,7),Lf=Math.pow(2,14),Uf=Math.pow(2,21),Df=Math.pow(2,28),Of=Math.pow(2,35),Mf=Math.pow(2,42),Pf=Math.pow(2,49),Vf=Math.pow(2,56),Hf=Math.pow(2,63),Ff=function(r){return r<Rf?1:r<Lf?2:r<Uf?3:r<Df?4:r<Of?5:r<Mf?6:r<Pf?7:r<Vf?8:r<Hf?9:10},qf={encode:_f,decode:Nf,encodingLength:Ff},Kf=qf,Vr=Kf;function Hr(r,t=0){return[Vr.decode(r,t),Vr.decode.bytes]}function ar(r,t,e=0){return Vr.encode(r,t,e),t}function cr(r){return Vr.encodingLength(r)}function Wt(r,t){let e=t.byteLength,n=cr(r),s=n+cr(e),o=new Uint8Array(s+e);return ar(r,o,0),ar(e,o,n),o.set(t,s),new lr(r,e,t,o)}function Kt(r){let t=ce(r),[e,n]=Hr(t),[s,o]=Hr(t.subarray(n)),i=t.subarray(n+o);if(i.byteLength!==s)throw new Error("Incorrect length");return new lr(e,s,i,t)}function Ya(r,t){if(r===t)return!0;{let e=t;return r.code===e.code&&r.size===e.size&&e.bytes instanceof Uint8Array&&qa(r.bytes,e.bytes)}}var lr=class{code;size;digest;bytes;constructor(t,e,n,s){this.code=t,this.size=e,this.digest=n,this.bytes=s}};function Ja(r,t){let{bytes:e,version:n}=r;switch(n){case 0:return $f(e,No(r),t??tt.encoder);default:return Gf(e,No(r),t??le.encoder)}}var Qa=new WeakMap;function No(r){let t=Qa.get(r);if(t==null){let e=new Map;return Qa.set(r,e),e}return t}var mt=class r{code;version;multihash;bytes;"/";constructor(t,e,n,s){this.code=e,this.version=t,this.multihash=n,this.bytes=s,this["/"]=s}get asCID(){return this}get byteOffset(){return this.bytes.byteOffset}get byteLength(){return this.bytes.byteLength}toV0(){switch(this.version){case 0:return this;case 1:{let{code:t,multihash:e}=this;if(t!==Fr)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(e.code!==Wf)throw new Error("Cannot convert non sha2-256 multihash CID to CIDv0");return r.createV0(e)}default:throw Error(`Can not convert CID version ${this.version} to version 0. This is a bug please report`)}}toV1(){switch(this.version){case 0:{let{code:t,digest:e}=this.multihash,n=Wt(t,e);return r.createV1(this.code,n)}case 1:return this;default:throw Error(`Can not convert CID version ${this.version} to version 1. This is a bug please report`)}}equals(t){return r.equals(this,t)}static equals(t,e){let n=e;return n!=null&&t.code===n.code&&t.version===n.version&&Ya(t.multihash,n.multihash)}toString(t){return Ja(this,t)}toJSON(){return{"/":Ja(this)}}link(){return this}[Symbol.toStringTag]="CID";[Symbol.for("nodejs.util.inspect.custom")](){return`CID(${this.toString()})`}static asCID(t){if(t==null)return null;let e=t;if(e instanceof r)return e;if(e["/"]!=null&&e["/"]===e.bytes||e.asCID===e){let{version:n,code:s,multihash:o,bytes:i}=e;return new r(n,s,o,i??tc(n,s,o.bytes))}else if(e[jf]===!0){let{version:n,multihash:s,code:o}=e,i=Kt(s);return r.create(n,o,i)}else return null}static create(t,e,n){if(typeof e!="number")throw new Error("String codecs are no longer supported");if(!(n.bytes instanceof Uint8Array))throw new Error("Invalid digest");switch(t){case 0:{if(e!==Fr)throw new Error(`Version 0 CID must use dag-pb (code: ${Fr}) block encoding`);return new r(t,e,n,n.bytes)}case 1:{let s=tc(t,e,n.bytes);return new r(t,e,n,s)}default:throw new Error("Invalid version")}}static createV0(t){return r.create(0,Fr,t)}static createV1(t,e){return r.create(1,t,e)}static decode(t){let[e,n]=r.decodeFirst(t);if(n.length!==0)throw new Error("Incorrect length");return e}static decodeFirst(t){let e=r.inspectBytes(t),n=e.size-e.multihashSize,s=ce(t.subarray(n,n+e.multihashSize));if(s.byteLength!==e.multihashSize)throw new Error("Incorrect length");let o=s.subarray(e.multihashSize-e.digestSize),i=new lr(e.multihashCode,e.digestSize,o,s);return[e.version===0?r.createV0(i):r.createV1(e.codec,i),t.subarray(e.size)]}static inspectBytes(t){let e=0,n=()=>{let[u,p]=Hr(t.subarray(e));return e+=p,u},s=n(),o=Fr;if(s===18?(s=0,e=0):o=n(),s!==0&&s!==1)throw new RangeError(`Invalid CID version ${s}`);let i=e,a=n(),c=n(),h=e+c,f=h-i;return{version:s,codec:o,multihashCode:a,digestSize:c,multihashSize:f,size:h}}static parse(t,e){let[n,s]=zf(t,e),o=r.decode(s);if(o.version===0&&t[0]!=="Q")throw Error("Version 0 CID string must not include multibase prefix");return No(o).set(n,t),o}};function zf(r,t){switch(r[0]){case"Q":{let e=t??tt;return[tt.prefix,e.decode(`${tt.prefix}${r}`)]}case tt.prefix:{let e=t??tt;return[tt.prefix,e.decode(r)]}case le.prefix:{let e=t??le;return[le.prefix,e.decode(r)]}case Pr.prefix:{let e=t??Pr;return[Pr.prefix,e.decode(r)]}default:{if(t==null)throw Error("To parse non base32, base36 or base58btc encoded CID multibase decoder must be provided");return[r[0],t.decode(r)]}}}function $f(r,t,e){let{prefix:n}=e;if(n!==tt.prefix)throw Error(`Cannot string encode V0 in ${e.name} encoding`);let s=t.get(n);if(s==null){let o=e.encode(r).slice(1);return t.set(n,o),o}else return s}function Gf(r,t,e){let{prefix:n}=e,s=t.get(n);if(s==null){let o=e.encode(r);return t.set(n,o),o}else return s}var Fr=112,Wf=18;function tc(r,t,e){let n=cr(r),s=n+cr(t),o=new Uint8Array(s+e.byteLength);return ar(r,o,0),ar(t,o,n),o.set(e,s),o}var jf=Symbol.for("@ipld/js-cid/CID");var Co={};_t(Co,{identity:()=>ue});var ec=0,Zf="identity",rc=ce;function Xf(r){return Wt(ec,rc(r))}var ue={code:ec,name:Zf,encode:rc,digest:Xf};function ct(r,t){if(r===t)return!0;if(r.byteLength!==t.byteLength)return!1;for(let e=0;e<r.byteLength;e++)if(r[e]!==t[e])return!1;return!0}function nc(r){if(!Number.isSafeInteger(r)||r<0)throw new Error(`positive integer expected, not ${r}`)}function Yf(r){return r instanceof Uint8Array||r!=null&&typeof r=="object"&&r.constructor.name==="Uint8Array"}function ur(r,...t){if(!Yf(r))throw new Error("Uint8Array expected");if(t.length>0&&!t.includes(r.length))throw new Error(`Uint8Array expected of length ${t}, not of length=${r.length}`)}function sc(r){if(typeof r!="function"||typeof r.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");nc(r.outputLen),nc(r.blockLen)}function fr(r,t=!0){if(r.destroyed)throw new Error("Hash instance has been destroyed");if(t&&r.finished)throw new Error("Hash#digest() has already been called")}function oc(r,t){ur(r);let e=t.outputLen;if(r.length<e)throw new Error(`digestInto() expects output buffer of length at least ${e}`)}var qe=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;var Sn=r=>new DataView(r.buffer,r.byteOffset,r.byteLength),jt=(r,t)=>r<<32-t|r>>>t;var hm=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;function ic(r){if(typeof r!="string")throw new Error(`utf8ToBytes expected string, got ${typeof r}`);return new Uint8Array(new TextEncoder().encode(r))}function qr(r){return typeof r=="string"&&(r=ic(r)),ur(r),r}function Ro(...r){let t=0;for(let n=0;n<r.length;n++){let s=r[n];ur(s),t+=s.length}let e=new Uint8Array(t);for(let n=0,s=0;n<r.length;n++){let o=r[n];e.set(o,s),s+=o.length}return e}var hr=class{clone(){return this._cloneInto()}},dm={}.toString;function An(r){let t=n=>r().update(qr(n)).digest(),e=r();return t.outputLen=e.outputLen,t.blockLen=e.blockLen,t.create=()=>r(),t}function dr(r=32){if(qe&&typeof qe.getRandomValues=="function")return qe.getRandomValues(new Uint8Array(r));if(qe&&typeof qe.randomBytes=="function")return qe.randomBytes(r);throw new Error("crypto.getRandomValues must be defined")}function Jf(r,t,e,n){if(typeof r.setBigUint64=="function")return r.setBigUint64(t,e,n);let s=BigInt(32),o=BigInt(4294967295),i=Number(e>>s&o),a=Number(e&o),c=n?4:0,h=n?0:4;r.setUint32(t+c,i,n),r.setUint32(t+h,a,n)}var ac=(r,t,e)=>r&t^~r&e,cc=(r,t,e)=>r&t^r&e^t&e,pr=class extends hr{constructor(t,e,n,s){super(),this.blockLen=t,this.outputLen=e,this.padOffset=n,this.isLE=s,this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.buffer=new Uint8Array(t),this.view=Sn(this.buffer)}update(t){fr(this);let{view:e,buffer:n,blockLen:s}=this;t=qr(t);let o=t.length;for(let i=0;i<o;){let a=Math.min(s-this.pos,o-i);if(a===s){let c=Sn(t);for(;s<=o-i;i+=s)this.process(c,i);continue}n.set(t.subarray(i,i+a),this.pos),this.pos+=a,i+=a,this.pos===s&&(this.process(e,0),this.pos=0)}return this.length+=t.length,this.roundClean(),this}digestInto(t){fr(this),oc(t,this),this.finished=!0;let{buffer:e,view:n,blockLen:s,isLE:o}=this,{pos:i}=this;e[i++]=128,this.buffer.subarray(i).fill(0),this.padOffset>s-i&&(this.process(n,0),i=0);for(let u=i;u<s;u++)e[u]=0;Jf(n,s-8,BigInt(this.length*8),o),this.process(n,0);let a=Sn(t),c=this.outputLen;if(c%4)throw new Error("_sha2: outputLen should be aligned to 32bit");let h=c/4,f=this.get();if(h>f.length)throw new Error("_sha2: outputLen bigger than state");for(let u=0;u<h;u++)a.setUint32(4*u,f[u],o)}digest(){let{buffer:t,outputLen:e}=this;this.digestInto(t);let n=t.slice(0,e);return this.destroy(),n}_cloneInto(t){t||(t=new this.constructor),t.set(...this.get());let{blockLen:e,buffer:n,length:s,finished:o,destroyed:i,pos:a}=this;return t.length=s,t.pos=a,t.finished=o,t.destroyed=i,s%e&&t.buffer.set(n),t}};var Bn=BigInt(4294967295),Lo=BigInt(32);function lc(r,t=!1){return t?{h:Number(r&Bn),l:Number(r>>Lo&Bn)}:{h:Number(r>>Lo&Bn)|0,l:Number(r&Bn)|0}}function Qf(r,t=!1){let e=new Uint32Array(r.length),n=new Uint32Array(r.length);for(let s=0;s<r.length;s++){let{h:o,l:i}=lc(r[s],t);[e[s],n[s]]=[o,i]}return[e,n]}var th=(r,t)=>BigInt(r>>>0)<<Lo|BigInt(t>>>0),eh=(r,t,e)=>r>>>e,rh=(r,t,e)=>r<<32-e|t>>>e,nh=(r,t,e)=>r>>>e|t<<32-e,sh=(r,t,e)=>r<<32-e|t>>>e,oh=(r,t,e)=>r<<64-e|t>>>e-32,ih=(r,t,e)=>r>>>e-32|t<<64-e,ah=(r,t)=>t,ch=(r,t)=>r,lh=(r,t,e)=>r<<e|t>>>32-e,uh=(r,t,e)=>t<<e|r>>>32-e,fh=(r,t,e)=>t<<e-32|r>>>64-e,hh=(r,t,e)=>r<<e-32|t>>>64-e;function dh(r,t,e,n){let s=(t>>>0)+(n>>>0);return{h:r+e+(s/2**32|0)|0,l:s|0}}var ph=(r,t,e)=>(r>>>0)+(t>>>0)+(e>>>0),mh=(r,t,e,n)=>t+e+n+(r/2**32|0)|0,gh=(r,t,e,n)=>(r>>>0)+(t>>>0)+(e>>>0)+(n>>>0),yh=(r,t,e,n,s)=>t+e+n+s+(r/2**32|0)|0,bh=(r,t,e,n,s)=>(r>>>0)+(t>>>0)+(e>>>0)+(n>>>0)+(s>>>0),wh=(r,t,e,n,s,o)=>t+e+n+s+o+(r/2**32|0)|0;var xh={fromBig:lc,split:Qf,toBig:th,shrSH:eh,shrSL:rh,rotrSH:nh,rotrSL:sh,rotrBH:oh,rotrBL:ih,rotr32H:ah,rotr32L:ch,rotlSH:lh,rotlSL:uh,rotlBH:fh,rotlBL:hh,add:dh,add3L:ph,add3H:mh,add4L:gh,add4H:yh,add5H:wh,add5L:bh},P=xh;var[vh,Eh]=P.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(r=>BigInt(r))),Ie=new Uint32Array(80),Te=new Uint32Array(80),Uo=class extends pr{constructor(){super(128,64,16,!1),this.Ah=1779033703,this.Al=-205731576,this.Bh=-1150833019,this.Bl=-2067093701,this.Ch=1013904242,this.Cl=-23791573,this.Dh=-1521486534,this.Dl=1595750129,this.Eh=1359893119,this.El=-1377402159,this.Fh=-1694144372,this.Fl=725511199,this.Gh=528734635,this.Gl=-79577749,this.Hh=1541459225,this.Hl=327033209}get(){let{Ah:t,Al:e,Bh:n,Bl:s,Ch:o,Cl:i,Dh:a,Dl:c,Eh:h,El:f,Fh:u,Fl:p,Gh:l,Gl:d,Hh:g,Hl:y}=this;return[t,e,n,s,o,i,a,c,h,f,u,p,l,d,g,y]}set(t,e,n,s,o,i,a,c,h,f,u,p,l,d,g,y){this.Ah=t|0,this.Al=e|0,this.Bh=n|0,this.Bl=s|0,this.Ch=o|0,this.Cl=i|0,this.Dh=a|0,this.Dl=c|0,this.Eh=h|0,this.El=f|0,this.Fh=u|0,this.Fl=p|0,this.Gh=l|0,this.Gl=d|0,this.Hh=g|0,this.Hl=y|0}process(t,e){for(let m=0;m<16;m++,e+=4)Ie[m]=t.getUint32(e),Te[m]=t.getUint32(e+=4);for(let m=16;m<80;m++){let v=Ie[m-15]|0,A=Te[m-15]|0,_=P.rotrSH(v,A,1)^P.rotrSH(v,A,8)^P.shrSH(v,A,7),x=P.rotrSL(v,A,1)^P.rotrSL(v,A,8)^P.shrSL(v,A,7),B=Ie[m-2]|0,C=Te[m-2]|0,et=P.rotrSH(B,C,19)^P.rotrBH(B,C,61)^P.shrSH(B,C,6),H=P.rotrSL(B,C,19)^P.rotrBL(B,C,61)^P.shrSL(B,C,6),V=P.add4L(x,H,Te[m-7],Te[m-16]),U=P.add4H(V,_,et,Ie[m-7],Ie[m-16]);Ie[m]=U|0,Te[m]=V|0}let{Ah:n,Al:s,Bh:o,Bl:i,Ch:a,Cl:c,Dh:h,Dl:f,Eh:u,El:p,Fh:l,Fl:d,Gh:g,Gl:y,Hh:b,Hl:w}=this;for(let m=0;m<80;m++){let v=P.rotrSH(u,p,14)^P.rotrSH(u,p,18)^P.rotrBH(u,p,41),A=P.rotrSL(u,p,14)^P.rotrSL(u,p,18)^P.rotrBL(u,p,41),_=u&l^~u&g,x=p&d^~p&y,B=P.add5L(w,A,x,Eh[m],Te[m]),C=P.add5H(B,b,v,_,vh[m],Ie[m]),et=B|0,H=P.rotrSH(n,s,28)^P.rotrBH(n,s,34)^P.rotrBH(n,s,39),V=P.rotrSL(n,s,28)^P.rotrBL(n,s,34)^P.rotrBL(n,s,39),U=n&o^n&a^o&a,k=s&i^s&c^i&c;b=g|0,w=y|0,g=l|0,y=d|0,l=u|0,d=p|0,{h:u,l:p}=P.add(h|0,f|0,C|0,et|0),h=a|0,f=c|0,a=o|0,c=i|0,o=n|0,i=s|0;let R=P.add3L(et,V,k);n=P.add3H(R,C,H,U),s=R|0}({h:n,l:s}=P.add(this.Ah|0,this.Al|0,n|0,s|0)),{h:o,l:i}=P.add(this.Bh|0,this.Bl|0,o|0,i|0),{h:a,l:c}=P.add(this.Ch|0,this.Cl|0,a|0,c|0),{h,l:f}=P.add(this.Dh|0,this.Dl|0,h|0,f|0),{h:u,l:p}=P.add(this.Eh|0,this.El|0,u|0,p|0),{h:l,l:d}=P.add(this.Fh|0,this.Fl|0,l|0,d|0),{h:g,l:y}=P.add(this.Gh|0,this.Gl|0,g|0,y|0),{h:b,l:w}=P.add(this.Hh|0,this.Hl|0,b|0,w|0),this.set(n,s,o,i,a,c,h,f,u,p,l,d,g,y,b,w)}roundClean(){Ie.fill(0),Te.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 uc=An(()=>new Uo);var In={};_t(In,{aInRange:()=>kt,abool:()=>Zt,abytes:()=>mr,bitGet:()=>Th,bitLen:()=>Vo,bitMask:()=>zr,bitSet:()=>kh,bytesToHex:()=>he,bytesToNumberBE:()=>de,bytesToNumberLE:()=>Ne,concatBytes:()=>pe,createHmacDrbg:()=>Ho,ensureBytes:()=>ot,equalBytes:()=>_h,hexToBytes:()=>ze,hexToNumber:()=>Po,inRange:()=>Kr,isBytes:()=>ke,memoized:()=>Ge,notImplemented:()=>Ch,numberToBytesBE:()=>Ce,numberToBytesLE:()=>$e,numberToHexUnpadded:()=>Ke,numberToVarBytesBE:()=>Bh,utf8ToBytes:()=>Ih,validateObject:()=>ee});var Mo=BigInt(0),_n=BigInt(1),Sh=BigInt(2);function ke(r){return r instanceof Uint8Array||r!=null&&typeof r=="object"&&r.constructor.name==="Uint8Array"}function mr(r){if(!ke(r))throw new Error("Uint8Array expected")}function Zt(r,t){if(typeof t!="boolean")throw new Error(`${r} must be valid boolean, got "${t}".`)}var Ah=Array.from({length:256},(r,t)=>t.toString(16).padStart(2,"0"));function he(r){mr(r);let t="";for(let e=0;e<r.length;e++)t+=Ah[r[e]];return t}function Ke(r){let t=r.toString(16);return t.length&1?`0${t}`:t}function Po(r){if(typeof r!="string")throw new Error("hex string expected, got "+typeof r);return BigInt(r===""?"0":`0x${r}`)}var fe={_0:48,_9:57,_A:65,_F:70,_a:97,_f:102};function fc(r){if(r>=fe._0&&r<=fe._9)return r-fe._0;if(r>=fe._A&&r<=fe._F)return r-(fe._A-10);if(r>=fe._a&&r<=fe._f)return r-(fe._a-10)}function ze(r){if(typeof r!="string")throw new Error("hex string expected, got "+typeof r);let t=r.length,e=t/2;if(t%2)throw new Error("padded hex string expected, got unpadded hex of length "+t);let n=new Uint8Array(e);for(let s=0,o=0;s<e;s++,o+=2){let i=fc(r.charCodeAt(o)),a=fc(r.charCodeAt(o+1));if(i===void 0||a===void 0){let c=r[o]+r[o+1];throw new Error('hex string expected, got non-hex character "'+c+'" at index '+o)}n[s]=i*16+a}return n}function de(r){return Po(he(r))}function Ne(r){return mr(r),Po(he(Uint8Array.from(r).reverse()))}function Ce(r,t){return ze(r.toString(16).padStart(t*2,"0"))}function $e(r,t){return Ce(r,t).reverse()}function Bh(r){return ze(Ke(r))}function ot(r,t,e){let n;if(typeof t=="string")try{n=ze(t)}catch(o){throw new Error(`${r} must be valid hex string, got "${t}". Cause: ${o}`)}else if(ke(t))n=Uint8Array.from(t);else throw new Error(`${r} must be hex string or Uint8Array`);let s=n.length;if(typeof e=="number"&&s!==e)throw new Error(`${r} expected ${e} bytes, got ${s}`);return n}function pe(...r){let t=0;for(let n=0;n<r.length;n++){let s=r[n];mr(s),t+=s.length}let e=new Uint8Array(t);for(let n=0,s=0;n<r.length;n++){let o=r[n];e.set(o,s),s+=o.length}return e}function _h(r,t){if(r.length!==t.length)return!1;let e=0;for(let n=0;n<r.length;n++)e|=r[n]^t[n];return e===0}function Ih(r){if(typeof r!="string")throw new Error(`utf8ToBytes expected string, got ${typeof r}`);return new Uint8Array(new TextEncoder().encode(r))}var Do=r=>typeof r=="bigint"&&Mo<=r;function Kr(r,t,e){return Do(r)&&Do(t)&&Do(e)&&t<=r&&r<e}function kt(r,t,e,n){if(!Kr(t,e,n))throw new Error(`expected valid ${r}: ${e} <= n < ${n}, got ${typeof t} ${t}`)}function Vo(r){let t;for(t=0;r>Mo;r>>=_n,t+=1);return t}function Th(r,t){return r>>BigInt(t)&_n}function kh(r,t,e){return r|(e?_n:Mo)<<BigInt(t)}var zr=r=>(Sh<<BigInt(r-1))-_n,Oo=r=>new Uint8Array(r),hc=r=>Uint8Array.from(r);function Ho(r,t,e){if(typeof r!="number"||r<2)throw new Error("hashLen must be a number");if(typeof t!="number"||t<2)throw new Error("qByteLen must be a number");if(typeof e!="function")throw new Error("hmacFn must be a function");let n=Oo(r),s=Oo(r),o=0,i=()=>{n.fill(1),s.fill(0),o=0},a=(...u)=>e(s,n,...u),c=(u=Oo())=>{s=a(hc([0]),u),n=a(),u.length!==0&&(s=a(hc([1]),u),n=a())},h=()=>{if(o++>=1e3)throw new Error("drbg: tried 1000 values");let u=0,p=[];for(;u<t;){n=a();let l=n.slice();p.push(l),u+=n.length}return pe(...p)};return(u,p)=>{i(),c(u);let l;for(;!(l=p(h()));)c();return i(),l}}var Nh={bigint:r=>typeof r=="bigint",function:r=>typeof r=="function",boolean:r=>typeof r=="boolean",string:r=>typeof r=="string",stringOrUint8Array:r=>typeof r=="string"||ke(r),isSafeInteger:r=>Number.isSafeInteger(r),array:r=>Array.isArray(r),field:(r,t)=>t.Fp.isValid(r),hash:r=>typeof r=="function"&&Number.isSafeInteger(r.outputLen)};function ee(r,t,e={}){let n=(s,o,i)=>{let a=Nh[o];if(typeof a!="function")throw new Error(`Invalid validator "${o}", expected function`);let c=r[s];if(!(i&&c===void 0)&&!a(c,r))throw new Error(`Invalid param ${String(s)}=${c} (${typeof c}), expected ${o}`)};for(let[s,o]of Object.entries(t))n(s,o,!1);for(let[s,o]of Object.entries(e))n(s,o,!0);return r}var Ch=()=>{throw new Error("not implemented")};function Ge(r){let t=new WeakMap;return(e,...n)=>{let s=t.get(e);if(s!==void 0)return s;let o=r(e,...n);return t.set(e,o),o}}var ut=BigInt(0),rt=BigInt(1),We=BigInt(2),Rh=BigInt(3),Fo=BigInt(4),dc=BigInt(5),pc=BigInt(8),Lh=BigInt(9),Uh=BigInt(16);function Y(r,t){let e=r%t;return e>=ut?e:t+e}function Dh(r,t,e){if(e<=ut||t<ut)throw new Error("Expected power/modulo > 0");if(e===rt)return ut;let n=rt;for(;t>ut;)t&rt&&(n=n*r%e),r=r*r%e,t>>=rt;return n}function nt(r,t,e){let n=r;for(;t-- >ut;)n*=n,n%=e;return n}function Tn(r,t){if(r===ut||t<=ut)throw new Error(`invert: expected positive integers, got n=${r} mod=${t}`);let e=Y(r,t),n=t,s=ut,o=rt,i=rt,a=ut;for(;e!==ut;){let h=n/e,f=n%e,u=s-i*h,p=o-a*h;n=e,e=f,s=i,o=a,i=u,a=p}if(n!==rt)throw new Error("invert: does not exist");return Y(s,t)}function Oh(r){let t=(r-rt)/We,e,n,s;for(e=r-rt,n=0;e%We===ut;e/=We,n++);for(s=We;s<r&&Dh(s,t,r)!==r-rt;s++);if(n===1){let i=(r+rt)/Fo;return function(c,h){let f=c.pow(h,i);if(!c.eql(c.sqr(f),h))throw new Error("Cannot find square root");return f}}let o=(e+rt)/We;return function(a,c){if(a.pow(c,t)===a.neg(a.ONE))throw new Error("Cannot find square root");let h=n,f=a.pow(a.mul(a.ONE,s),e),u=a.pow(c,o),p=a.pow(c,e);for(;!a.eql(p,a.ONE);){if(a.eql(p,a.ZERO))return a.ZERO;let l=1;for(let g=a.sqr(p);l<h&&!a.eql(g,a.ONE);l++)g=a.sqr(g);let d=a.pow(f,rt<<BigInt(h-l-1));f=a.sqr(d),u=a.mul(u,d),p=a.mul(p,f),h=l}return u}}function Mh(r){if(r%Fo===Rh){let t=(r+rt)/Fo;return function(n,s){let o=n.pow(s,t);if(!n.eql(n.sqr(o),s))throw new Error("Cannot find square root");return o}}if(r%pc===dc){let t=(r-dc)/pc;return function(n,s){let o=n.mul(s,We),i=n.pow(o,t),a=n.mul(s,i),c=n.mul(n.mul(a,We),i),h=n.mul(a,n.sub(c,n.ONE));if(!n.eql(n.sqr(h),s))throw new Error("Cannot find square root");return h}}return r%Uh,Oh(r)}var mc=(r,t)=>(Y(r,t)&rt)===rt,Ph=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function qo(r){let t={ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"},e=Ph.reduce((n,s)=>(n[s]="function",n),t);return ee(r,e)}function Vh(r,t,e){if(e<ut)throw new Error("Expected power > 0");if(e===ut)return r.ONE;if(e===rt)return t;let n=r.ONE,s=t;for(;e>ut;)e&rt&&(n=r.mul(n,s)),s=r.sqr(s),e>>=rt;return n}function Hh(r,t){let e=new Array(t.length),n=t.reduce((o,i,a)=>r.is0(i)?o:(e[a]=o,r.mul(o,i)),r.ONE),s=r.inv(n);return t.reduceRight((o,i,a)=>r.is0(i)?o:(e[a]=r.mul(o,e[a]),r.mul(o,i)),s),e}function Ko(r,t){let e=t!==void 0?t:r.toString(2).length,n=Math.ceil(e/8);return{nBitLength:e,nByteLength:n}}function Re(r,t,e=!1,n={}){if(r<=ut)throw new Error(`Expected Field ORDER > 0, got ${r}`);let{nBitLength:s,nByteLength:o}=Ko(r,t);if(o>2048)throw new Error("Field lengths over 2048 bytes are not supported");let i=Mh(r),a=Object.freeze({ORDER:r,BITS:s,BYTES:o,MASK:zr(s),ZERO:ut,ONE:rt,create:c=>Y(c,r),isValid:c=>{if(typeof c!="bigint")throw new Error(`Invalid field element: expected bigint, got ${typeof c}`);return ut<=c&&c<r},is0:c=>c===ut,isOdd:c=>(c&rt)===rt,neg:c=>Y(-c,r),eql:(c,h)=>c===h,sqr:c=>Y(c*c,r),add:(c,h)=>Y(c+h,r),sub:(c,h)=>Y(c-h,r),mul:(c,h)=>Y(c*h,r),pow:(c,h)=>Vh(a,c,h),div:(c,h)=>Y(c*Tn(h,r),r),sqrN:c=>c*c,addN:(c,h)=>c+h,subN:(c,h)=>c-h,mulN:(c,h)=>c*h,inv:c=>Tn(c,r),sqrt:n.sqrt||(c=>i(a,c)),invertBatch:c=>Hh(a,c),cmov:(c,h,f)=>f?h:c,toBytes:c=>e?$e(c,o):Ce(c,o),fromBytes:c=>{if(c.length!==o)throw new Error(`Fp.fromBytes: expected ${o}, got ${c.length}`);return e?Ne(c):de(c)}});return Object.freeze(a)}function gc(r){if(typeof r!="bigint")throw new Error("field order must be bigint");let t=r.toString(2).length;return Math.ceil(t/8)}function zo(r){let t=gc(r);return t+Math.ceil(t/2)}function yc(r,t,e=!1){let n=r.length,s=gc(t),o=zo(t);if(n<16||n<o||n>1024)throw new Error(`expected ${o}-1024 bytes of input, got ${n}`);let i=e?de(r):Ne(r),a=Y(i,t-rt)+rt;return e?$e(a,s):Ce(a,s)}var qh=BigInt(0),$o=BigInt(1),Go=new WeakMap,bc=new WeakMap;function kn(r,t){let e=(o,i)=>{let a=i.negate();return o?a:i},n=o=>{if(!Number.isSafeInteger(o)||o<=0||o>t)throw new Error(`Wrong window size=${o}, should be [1..${t}]`)},s=o=>{n(o);let i=Math.ceil(t/o)+1,a=2**(o-1);return{windows:i,windowSize:a}};return{constTimeNegate:e,unsafeLadder(o,i){let a=r.ZERO,c=o;for(;i>qh;)i&$o&&(a=a.add(c)),c=c.double(),i>>=$o;return a},precomputeWindow(o,i){let{windows:a,windowSize:c}=s(i),h=[],f=o,u=f;for(let p=0;p<a;p++){u=f,h.push(u);for(let l=1;l<c;l++)u=u.add(f),h.push(u);f=u.double()}return h},wNAF(o,i,a){let{windows:c,windowSize:h}=s(o),f=r.ZERO,u=r.BASE,p=BigInt(2**o-1),l=2**o,d=BigInt(o);for(let g=0;g<c;g++){let y=g*h,b=Number(a&p);a>>=d,b>h&&(b-=l,a+=$o);let w=y,m=y+Math.abs(b)-1,v=g%2!==0,A=b<0;b===0?u=u.add(e(v,i[w])):f=f.add(e(A,i[m]))}return{p:f,f:u}},wNAFCached(o,i,a){let c=bc.get(o)||1,h=Go.get(o);return h||(h=this.precomputeWindow(o,c),c!==1&&Go.set(o,a(h))),this.wNAF(c,h,i)},setWindowSize(o,i){n(i),bc.set(o,i),Go.delete(o)}}}function Nn(r,t,e,n){if(!Array.isArray(e)||!Array.isArray(n)||n.length!==e.length)throw new Error("arrays of points and scalars must have equal length");n.forEach((f,u)=>{if(!t.isValid(f))throw new Error(`wrong scalar at index ${u}`)}),e.forEach((f,u)=>{if(!(f instanceof r))throw new Error(`wrong point at index ${u}`)});let s=Vo(BigInt(e.length)),o=s>12?s-3:s>4?s-2:s?2:1,i=(1<<o)-1,a=new Array(i+1).fill(r.ZERO),c=Math.floor((t.BITS-1)/o)*o,h=r.ZERO;for(let f=c;f>=0;f-=o){a.fill(r.ZERO);for(let p=0;p<n.length;p++){let l=n[p],d=Number(l>>BigInt(f)&BigInt(i));a[d]=a[d].add(e[p])}let u=r.ZERO;for(let p=a.length-1,l=r.ZERO;p>0;p--)l=l.add(a[p]),u=u.add(l);if(h=h.add(u),f!==0)for(let p=0;p<o;p++)h=h.double()}return h}function $r(r){return qo(r.Fp),ee(r,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...Ko(r.n,r.nBitLength),...r,p:r.Fp.ORDER})}var Xt=BigInt(0),Nt=BigInt(1),Cn=BigInt(2),Kh=BigInt(8),zh={zip215:!0};function $h(r){let t=$r(r);return ee(r,{hash:"function",a:"bigint",d:"bigint",randomBytes:"function"},{adjustScalarBytes:"function",domain:"function",uvRatio:"function",mapToCurve:"function"}),Object.freeze({...t})}function wc(r){let t=$h(r),{Fp:e,n,prehash:s,hash:o,randomBytes:i,nByteLength:a,h:c}=t,h=Cn<<BigInt(a*8)-Nt,f=e.create,u=Re(t.n,t.nBitLength),p=t.uvRatio||((S,E)=>{try{return{isValid:!0,value:e.sqrt(S*e.inv(E))}}catch{return{isValid:!1,value:Xt}}}),l=t.adjustScalarBytes||(S=>S),d=t.domain||((S,E,I)=>{if(Zt("phflag",I),E.length||I)throw new Error("Contexts/pre-hash are not supported");return S});function g(S,E){kt("coordinate "+S,E,Xt,h)}function y(S){if(!(S instanceof m))throw new Error("ExtendedPoint expected")}let b=Ge((S,E)=>{let{ex:I,ey:L,ez:O}=S,M=S.is0();E==null&&(E=M?Kh:e.inv(O));let K=f(I*E),G=f(L*E),z=f(O*E);if(M)return{x:Xt,y:Nt};if(z!==Nt)throw new Error("invZ was invalid");return{x:K,y:G}}),w=Ge(S=>{let{a:E,d:I}=t;if(S.is0())throw new Error("bad point: ZERO");let{ex:L,ey:O,ez:M,et:K}=S,G=f(L*L),z=f(O*O),X=f(M*M),Q=f(X*X),ht=f(G*E),dt=f(X*f(ht+z)),yt=f(Q+f(I*f(G*z)));if(dt!==yt)throw new Error("bad point: equation left != right (1)");let Bt=f(L*O),lt=f(M*K);if(Bt!==lt)throw new Error("bad point: equation left != right (2)");return!0});class m{constructor(E,I,L,O){this.ex=E,this.ey=I,this.ez=L,this.et=O,g("x",E),g("y",I),g("z",L),g("t",O),Object.freeze(this)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static fromAffine(E){if(E instanceof m)throw new Error("extended point not allowed");let{x:I,y:L}=E||{};return g("x",I),g("y",L),new m(I,L,Nt,f(I*L))}static normalizeZ(E){let I=e.invertBatch(E.map(L=>L.ez));return E.map((L,O)=>L.toAffine(I[O])).map(m.fromAffine)}static msm(E,I){return Nn(m,u,E,I)}_setWindowSize(E){_.setWindowSize(this,E)}assertValidity(){w(this)}equals(E){y(E);let{ex:I,ey:L,ez:O}=this,{ex:M,ey:K,ez:G}=E,z=f(I*G),X=f(M*O),Q=f(L*G),ht=f(K*O);return z===X&&Q===ht}is0(){return this.equals(m.ZERO)}negate(){return new m(f(-this.ex),this.ey,this.ez,f(-this.et))}double(){let{a:E}=t,{ex:I,ey:L,ez:O}=this,M=f(I*I),K=f(L*L),G=f(Cn*f(O*O)),z=f(E*M),X=I+L,Q=f(f(X*X)-M-K),ht=z+K,dt=ht-G,yt=z-K,Bt=f(Q*dt),lt=f(ht*yt),Tt=f(Q*yt),ie=f(dt*ht);return new m(Bt,lt,ie,Tt)}add(E){y(E);let{a:I,d:L}=t,{ex:O,ey:M,ez:K,et:G}=this,{ex:z,ey:X,ez:Q,et:ht}=E;if(I===BigInt(-1)){let Ia=f((M-O)*(X+z)),Ta=f((M+O)*(X-z)),bo=f(Ta-Ia);if(bo===Xt)return this.double();let ka=f(K*Cn*ht),Na=f(G*Cn*Q),Ca=Na+ka,Ra=Ta+Ia,La=Na-ka,tf=f(Ca*bo),ef=f(Ra*La),rf=f(Ca*La),nf=f(bo*Ra);return new m(tf,ef,nf,rf)}let dt=f(O*z),yt=f(M*X),Bt=f(G*L*ht),lt=f(K*Q),Tt=f((O+M)*(z+X)-dt-yt),ie=lt-Bt,Dr=lt+Bt,Or=f(yt-I*dt),Xu=f(Tt*ie),Yu=f(Dr*Or),Ju=f(Tt*Or),Qu=f(ie*Dr);return new m(Xu,Yu,Qu,Ju)}subtract(E){return this.add(E.negate())}wNAF(E){return _.wNAFCached(this,E,m.normalizeZ)}multiply(E){let I=E;kt("scalar",I,Nt,n);let{p:L,f:O}=this.wNAF(I);return m.normalizeZ([L,O])[0]}multiplyUnsafe(E){let I=E;return kt("scalar",I,Xt,n),I===Xt?A:this.equals(A)||I===Nt?this:this.equals(v)?this.wNAF(I).p:_.unsafeLadder(this,I)}isSmallOrder(){return this.multiplyUnsafe(c).is0()}isTorsionFree(){return _.unsafeLadder(this,n).is0()}toAffine(E){return b(this,E)}clearCofactor(){let{h:E}=t;return E===Nt?this:this.multiplyUnsafe(E)}static fromHex(E,I=!1){let{d:L,a:O}=t,M=e.BYTES;E=ot("pointHex",E,M),Zt("zip215",I);let K=E.slice(),G=E[M-1];K[M-1]=G&-129;let z=Ne(K),X=I?h:e.ORDER;kt("pointHex.y",z,Xt,X);let Q=f(z*z),ht=f(Q-Nt),dt=f(L*Q-O),{isValid:yt,value:Bt}=p(ht,dt);if(!yt)throw new Error("Point.fromHex: invalid y coordinate");let lt=(Bt&Nt)===Nt,Tt=(G&128)!==0;if(!I&&Bt===Xt&&Tt)throw new Error("Point.fromHex: x=0 and x_0=1");return Tt!==lt&&(Bt=f(-Bt)),m.fromAffine({x:Bt,y:z})}static fromPrivateKey(E){return C(E).point}toRawBytes(){let{x:E,y:I}=this.toAffine(),L=$e(I,e.BYTES);return L[L.length-1]|=E&Nt?128:0,L}toHex(){return he(this.toRawBytes())}}m.BASE=new m(t.Gx,t.Gy,Nt,f(t.Gx*t.Gy)),m.ZERO=new m(Xt,Nt,Nt,Xt);let{BASE:v,ZERO:A}=m,_=kn(m,a*8);function x(S){return Y(S,n)}function B(S){return x(Ne(S))}function C(S){let E=a;S=ot("private key",S,E);let I=ot("hashed private key",o(S),2*E),L=l(I.slice(0,E)),O=I.slice(E,2*E),M=B(L),K=v.multiply(M),G=K.toRawBytes();return{head:L,prefix:O,scalar:M,point:K,pointBytes:G}}function et(S){return C(S).pointBytes}function H(S=new Uint8Array,...E){let I=pe(...E);return B(o(d(I,ot("context",S),!!s)))}function V(S,E,I={}){S=ot("message",S),s&&(S=s(S));let{prefix:L,scalar:O,pointBytes:M}=C(E),K=H(I.context,L,S),G=v.multiply(K).toRawBytes(),z=H(I.context,G,M,S),X=x(K+z*O);kt("signature.s",X,Xt,n);let Q=pe(G,$e(X,e.BYTES));return ot("result",Q,a*2)}let U=zh;function k(S,E,I,L=U){let{context:O,zip215:M}=L,K=e.BYTES;S=ot("signature",S,2*K),E=ot("message",E),M!==void 0&&Zt("zip215",M),s&&(E=s(E));let G=Ne(S.slice(K,2*K)),z,X,Q;try{z=m.fromHex(I,M),X=m.fromHex(S.slice(0,K),M),Q=v.multiplyUnsafe(G)}catch{return!1}if(!M&&z.isSmallOrder())return!1;let ht=H(O,X.toRawBytes(),z.toRawBytes(),E);return X.add(z.multiplyUnsafe(ht)).subtract(Q).clearCofactor().equals(m.ZERO)}return v._setWindowSize(8),{CURVE:t,getPublicKey:et,sign:V,verify:k,ExtendedPoint:m,utils:{getExtendedPublicKey:C,randomPrivateKey:()=>i(e.BYTES),precompute(S=8,E=m.BASE){return E._setWindowSize(S),E.multiply(BigInt(3)),E}}}}var Wo=BigInt("57896044618658097711785492504343953926634992332820282019728792003956564819949"),xc=BigInt("19681161376707505956807079304988542015446066515923890162744021073123829784752"),Om=BigInt(0),Gh=BigInt(1),vc=BigInt(2),Mm=BigInt(3),Wh=BigInt(5),jh=BigInt(8);function Zh(r){let t=BigInt(10),e=BigInt(20),n=BigInt(40),s=BigInt(80),o=Wo,a=r*r%o*r%o,c=nt(a,vc,o)*a%o,h=nt(c,Gh,o)*r%o,f=nt(h,Wh,o)*h%o,u=nt(f,t,o)*f%o,p=nt(u,e,o)*u%o,l=nt(p,n,o)*p%o,d=nt(l,s,o)*l%o,g=nt(d,s,o)*l%o,y=nt(g,t,o)*f%o;return{pow_p_5_8:nt(y,vc,o)*r%o,b2:a}}function Xh(r){return r[0]&=248,r[31]&=127,r[31]|=64,r}function Yh(r,t){let e=Wo,n=Y(t*t*t,e),s=Y(n*n*t,e),o=Zh(r*s).pow_p_5_8,i=Y(r*n*o,e),a=Y(t*i*i,e),c=i,h=Y(i*xc,e),f=a===r,u=a===Y(-r,e),p=a===Y(-r*xc,e);return f&&(i=c),(u||p)&&(i=h),mc(i,e)&&(i=Y(-i,e)),{isValid:f||u,value:i}}var Jh=Re(Wo,void 0,!0),Qh={a:BigInt(-1),d:BigInt("37095705934669439343138083508754565189542113879843219016388785533085940283555"),Fp:Jh,n:BigInt("7237005577332262213973186563042994240857116359379907606001950938285454250989"),h:jh,Gx:BigInt("15112221349535400772501151409588531511454012693041857206046113283949847762202"),Gy:BigInt("46316835694926478169428394003475163141307993866256225615783033603165251855960"),hash:uc,randomBytes:dr,adjustScalarBytes:Xh,uvRatio:Yh},Ec=wc(Qh);var Rn=32;function Sc(r,t,e){return Ec.verify(t,e instanceof Uint8Array?e:e.subarray(),r)}var Ln=class{type="Ed25519";raw;constructor(t){this.raw=jo(t,Rn)}toMultihash(){return ue.digest(gr(this))}toCID(){return mt.createV1(114,this.toMultihash())}toString(){return tt.encode(this.toMultihash().bytes).substring(1)}equals(t){return t==null||!(t.raw instanceof Uint8Array)?!1:ct(this.raw,t.raw)}verify(t,e){return Sc(this.raw,e,t)}};function Zo(r){return r=jo(r,Rn),new Ln(r)}function jo(r,t){if(r=Uint8Array.from(r??[]),r.length!==t)throw new pt(`Key must be a Uint8Array of length ${t}, got ${r.length}`);return r}function it(r=0){return new Uint8Array(r)}function Ct(r=0){return new Uint8Array(r)}var ed=Math.pow(2,7),rd=Math.pow(2,14),nd=Math.pow(2,21),Xo=Math.pow(2,28),Yo=Math.pow(2,35),Jo=Math.pow(2,42),Qo=Math.pow(2,49),W=128,vt=127;function Et(r){if(r<ed)return 1;if(r<rd)return 2;if(r<nd)return 3;if(r<Xo)return 4;if(r<Yo)return 5;if(r<Jo)return 6;if(r<Qo)return 7;if(Number.MAX_SAFE_INTEGER!=null&&r>Number.MAX_SAFE_INTEGER)throw new RangeError("Could not encode varint");return 8}function ti(r,t,e=0){switch(Et(r)){case 8:t[e++]=r&255|W,r/=128;case 7:t[e++]=r&255|W,r/=128;case 6:t[e++]=r&255|W,r/=128;case 5:t[e++]=r&255|W,r/=128;case 4:t[e++]=r&255|W,r>>>=7;case 3:t[e++]=r&255|W,r>>>=7;case 2:t[e++]=r&255|W,r>>>=7;case 1:{t[e++]=r&255,r>>>=7;break}default:throw new Error("unreachable")}return t}function sd(r,t,e=0){switch(Et(r)){case 8:t.set(e++,r&255|W),r/=128;case 7:t.set(e++,r&255|W),r/=128;case 6:t.set(e++,r&255|W),r/=128;case 5:t.set(e++,r&255|W),r/=128;case 4:t.set(e++,r&255|W),r>>>=7;case 3:t.set(e++,r&255|W),r>>>=7;case 2:t.set(e++,r&255|W),r>>>=7;case 1:{t.set(e++,r&255),r>>>=7;break}default:throw new Error("unreachable")}return t}function ei(r,t){let e=r[t],n=0;if(n+=e&vt,e<W||(e=r[t+1],n+=(e&vt)<<7,e<W)||(e=r[t+2],n+=(e&vt)<<14,e<W)||(e=r[t+3],n+=(e&vt)<<21,e<W)||(e=r[t+4],n+=(e&vt)*Xo,e<W)||(e=r[t+5],n+=(e&vt)*Yo,e<W)||(e=r[t+6],n+=(e&vt)*Jo,e<W)||(e=r[t+7],n+=(e&vt)*Qo,e<W))return n;throw new RangeError("Could not decode varint")}function od(r,t){let e=r.get(t),n=0;if(n+=e&vt,e<W||(e=r.get(t+1),n+=(e&vt)<<7,e<W)||(e=r.get(t+2),n+=(e&vt)<<14,e<W)||(e=r.get(t+3),n+=(e&vt)<<21,e<W)||(e=r.get(t+4),n+=(e&vt)*Xo,e<W)||(e=r.get(t+5),n+=(e&vt)*Yo,e<W)||(e=r.get(t+6),n+=(e&vt)*Jo,e<W)||(e=r.get(t+7),n+=(e&vt)*Qo,e<W))return n;throw new RangeError("Could not decode varint")}function zt(r,t,e=0){return t==null&&(t=Ct(Et(r))),t instanceof Uint8Array?ti(r,t,e):sd(r,t,e)}function me(r,t=0){return r instanceof Uint8Array?ei(r,t):od(r,t)}var ri=new Float32Array([-0]),Le=new Uint8Array(ri.buffer);function Bc(r,t,e){ri[0]=r,t[e]=Le[0],t[e+1]=Le[1],t[e+2]=Le[2],t[e+3]=Le[3]}function _c(r,t){return Le[0]=r[t],Le[1]=r[t+1],Le[2]=r[t+2],Le[3]=r[t+3],ri[0]}var ni=new Float64Array([-0]),St=new Uint8Array(ni.buffer);function Ic(r,t,e){ni[0]=r,t[e]=St[0],t[e+1]=St[1],t[e+2]=St[2],t[e+3]=St[3],t[e+4]=St[4],t[e+5]=St[5],t[e+6]=St[6],t[e+7]=St[7]}function Tc(r,t){return St[0]=r[t],St[1]=r[t+1],St[2]=r[t+2],St[3]=r[t+3],St[4]=r[t+4],St[5]=r[t+5],St[6]=r[t+6],St[7]=r[t+7],ni[0]}var id=BigInt(Number.MAX_SAFE_INTEGER),ad=BigInt(Number.MIN_SAFE_INTEGER),Lt=class r{lo;hi;constructor(t,e){this.lo=t|0,this.hi=e|0}toNumber(t=!1){if(!t&&this.hi>>>31>0){let e=~this.lo+1>>>0,n=~this.hi>>>0;return e===0&&(n=n+1>>>0),-(e+n*4294967296)}return this.lo+this.hi*4294967296}toBigInt(t=!1){if(t)return BigInt(this.lo>>>0)+(BigInt(this.hi>>>0)<<32n);if(this.hi>>>31){let e=~this.lo+1>>>0,n=~this.hi>>>0;return e===0&&(n=n+1>>>0),-(BigInt(e)+(BigInt(n)<<32n))}return BigInt(this.lo>>>0)+(BigInt(this.hi>>>0)<<32n)}toString(t=!1){return this.toBigInt(t).toString()}zzEncode(){let t=this.hi>>31;return this.hi=((this.hi<<1|this.lo>>>31)^t)>>>0,this.lo=(this.lo<<1^t)>>>0,this}zzDecode(){let t=-(this.lo&1);return this.lo=((this.lo>>>1|this.hi<<31)^t)>>>0,this.hi=(this.hi>>>1^t)>>>0,this}length(){let t=this.lo,e=(this.lo>>>28|this.hi<<4)>>>0,n=this.hi>>>24;return n===0?e===0?t<16384?t<128?1:2:t<2097152?3:4:e<16384?e<128?5:6:e<2097152?7:8:n<128?9:10}static fromBigInt(t){if(t===0n)return je;if(t<id&&t>ad)return this.fromNumber(Number(t));let e=t<0n;e&&(t=-t);let n=t>>32n,s=t-(n<<32n);return e&&(n=~n|0n,s=~s|0n,++s>kc&&(s=0n,++n>kc&&(n=0n))),new r(Number(s),Number(n))}static fromNumber(t){if(t===0)return je;let e=t<0;e&&(t=-t);let n=t>>>0,s=(t-n)/4294967296>>>0;return e&&(s=~s>>>0,n=~n>>>0,++n>4294967295&&(n=0,++s>4294967295&&(s=0))),new r(n,s)}static from(t){return typeof t=="number"?r.fromNumber(t):typeof t=="bigint"?r.fromBigInt(t):typeof t=="string"?r.fromBigInt(BigInt(t)):t.low!=null||t.high!=null?new r(t.low>>>0,t.high>>>0):je}},je=new Lt(0,0);je.toBigInt=function(){return 0n};je.zzEncode=je.zzDecode=function(){return this};je.length=function(){return 1};var kc=4294967296n;function Nc(r){let t=0,e=0;for(let n=0;n<r.length;++n)e=r.charCodeAt(n),e<128?t+=1:e<2048?t+=2:(e&64512)===55296&&(r.charCodeAt(n+1)&64512)===56320?(++n,t+=4):t+=3;return t}function Cc(r,t,e){if(e-t<1)return"";let s,o=[],i=0,a;for(;t<e;)a=r[t++],a<128?o[i++]=a:a>191&&a<224?o[i++]=(a&31)<<6|r[t++]&63:a>239&&a<365?(a=((a&7)<<18|(r[t++]&63)<<12|(r[t++]&63)<<6|r[t++]&63)-65536,o[i++]=55296+(a>>10),o[i++]=56320+(a&1023)):o[i++]=(a&15)<<12|(r[t++]&63)<<6|r[t++]&63,i>8191&&((s??(s=[])).push(String.fromCharCode.apply(String,o)),i=0);return s!=null?(i>0&&s.push(String.fromCharCode.apply(String,o.slice(0,i))),s.join("")):String.fromCharCode.apply(String,o.slice(0,i))}function si(r,t,e){let n=e,s,o;for(let i=0;i<r.length;++i)s=r.charCodeAt(i),s<128?t[e++]=s:s<2048?(t[e++]=s>>6|192,t[e++]=s&63|128):(s&64512)===55296&&((o=r.charCodeAt(i+1))&64512)===56320?(s=65536+((s&1023)<<10)+(o&1023),++i,t[e++]=s>>18|240,t[e++]=s>>12&63|128,t[e++]=s>>6&63|128,t[e++]=s&63|128):(t[e++]=s>>12|224,t[e++]=s>>6&63|128,t[e++]=s&63|128);return e-n}function Yt(r,t){return RangeError(`index out of range: ${r.pos} + ${t??1} > ${r.len}`)}function Dn(r,t){return(r[t-4]|r[t-3]<<8|r[t-2]<<16|r[t-1]<<24)>>>0}var oi=class{buf;pos;len;_slice=Uint8Array.prototype.subarray;constructor(t){this.buf=t,this.pos=0,this.len=t.length}uint32(){let t=4294967295;if(t=(this.buf[this.pos]&127)>>>0,this.buf[this.pos++]<128||(t=(t|(this.buf[this.pos]&127)<<7)>>>0,this.buf[this.pos++]<128)||(t=(t|(this.buf[this.pos]&127)<<14)>>>0,this.buf[this.pos++]<128)||(t=(t|(this.buf[this.pos]&127)<<21)>>>0,this.buf[this.pos++]<128)||(t=(t|(this.buf[this.pos]&15)<<28)>>>0,this.buf[this.pos++]<128))return t;if((this.pos+=5)>this.len)throw this.pos=this.len,Yt(this,10);return t}int32(){return this.uint32()|0}sint32(){let t=this.uint32();return t>>>1^-(t&1)|0}bool(){return this.uint32()!==0}fixed32(){if(this.pos+4>this.len)throw Yt(this,4);return Dn(this.buf,this.pos+=4)}sfixed32(){if(this.pos+4>this.len)throw Yt(this,4);return Dn(this.buf,this.pos+=4)|0}float(){if(this.pos+4>this.len)throw Yt(this,4);let t=_c(this.buf,this.pos);return this.pos+=4,t}double(){if(this.pos+8>this.len)throw Yt(this,4);let t=Tc(this.buf,this.pos);return this.pos+=8,t}bytes(){let t=this.uint32(),e=this.pos,n=this.pos+t;if(n>this.len)throw Yt(this,t);return this.pos+=t,e===n?new Uint8Array(0):this.buf.subarray(e,n)}string(){let t=this.bytes();return Cc(t,0,t.length)}skip(t){if(typeof t=="number"){if(this.pos+t>this.len)throw Yt(this,t);this.pos+=t}else do if(this.pos>=this.len)throw Yt(this);while(this.buf[this.pos++]&128);return this}skipType(t){switch(t){case 0:this.skip();break;case 1:this.skip(8);break;case 2:this.skip(this.uint32());break;case 3:for(;(t=this.uint32()&7)!==4;)this.skipType(t);break;case 5:this.skip(4);break;default:throw Error(`invalid wire type ${t} at offset ${this.pos}`)}return this}readLongVarint(){let t=new Lt(0,0),e=0;if(this.len-this.pos>4){for(;e<4;++e)if(t.lo=(t.lo|(this.buf[this.pos]&127)<<e*7)>>>0,this.buf[this.pos++]<128)return t;if(t.lo=(t.lo|(this.buf[this.pos]&127)<<28)>>>0,t.hi=(t.hi|(this.buf[this.pos]&127)>>4)>>>0,this.buf[this.pos++]<128)return t;e=0}else{for(;e<3;++e){if(this.pos>=this.len)throw Yt(this);if(t.lo=(t.lo|(this.buf[this.pos]&127)<<e*7)>>>0,this.buf[this.pos++]<128)return t}return t.lo=(t.lo|(this.buf[this.pos++]&127)<<e*7)>>>0,t}if(this.len-this.pos>4){for(;e<5;++e)if(t.hi=(t.hi|(this.buf[this.pos]&127)<<e*7+3)>>>0,this.buf[this.pos++]<128)return t}else for(;e<5;++e){if(this.pos>=this.len)throw Yt(this);if(t.hi=(t.hi|(this.buf[this.pos]&127)<<e*7+3)>>>0,this.buf[this.pos++]<128)return t}throw Error("invalid varint encoding")}readFixed64(){if(this.pos+8>this.len)throw Yt(this,8);let t=Dn(this.buf,this.pos+=4),e=Dn(this.buf,this.pos+=4);return new Lt(t,e)}int64(){return this.readLongVarint().toBigInt()}int64Number(){return this.readLongVarint().toNumber()}int64String(){return this.readLongVarint().toString()}uint64(){return this.readLongVarint().toBigInt(!0)}uint64Number(){let t=ei(this.buf,this.pos);return this.pos+=Et(t),t}uint64String(){return this.readLongVarint().toString(!0)}sint64(){return this.readLongVarint().zzDecode().toBigInt()}sint64Number(){return this.readLongVarint().zzDecode().toNumber()}sint64String(){return this.readLongVarint().zzDecode().toString()}fixed64(){return this.readFixed64().toBigInt()}fixed64Number(){return this.readFixed64().toNumber()}fixed64String(){return this.readFixed64().toString()}sfixed64(){return this.readFixed64().toBigInt()}sfixed64Number(){return this.readFixed64().toNumber()}sfixed64String(){return this.readFixed64().toString()}};function ii(r){return new oi(r instanceof Uint8Array?r:r.subarray())}function Ut(r,t,e){let n=ii(r);return t.decode(n,void 0,e)}var ai={};_t(ai,{base10:()=>cd});var cd=_e({prefix:"9",name:"base10",alphabet:"0123456789"});var ci={};_t(ci,{base16:()=>ld,base16upper:()=>ud});var ld=st({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),ud=st({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var li={};_t(li,{base2:()=>fd});var fd=st({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var ui={};_t(ui,{base256emoji:()=>gd});var Lc=Array.from("\u{1F680}\u{1FA90}\u2604\u{1F6F0}\u{1F30C}\u{1F311}\u{1F312}\u{1F313}\u{1F314}\u{1F315}\u{1F316}\u{1F317}\u{1F318}\u{1F30D}\u{1F30F}\u{1F30E}\u{1F409}\u2600\u{1F4BB}\u{1F5A5}\u{1F4BE}\u{1F4BF}\u{1F602}\u2764\u{1F60D}\u{1F923}\u{1F60A}\u{1F64F}\u{1F495}\u{1F62D}\u{1F618}\u{1F44D}\u{1F605}\u{1F44F}\u{1F601}\u{1F525}\u{1F970}\u{1F494}\u{1F496}\u{1F499}\u{1F622}\u{1F914}\u{1F606}\u{1F644}\u{1F4AA}\u{1F609}\u263A\u{1F44C}\u{1F917}\u{1F49C}\u{1F614}\u{1F60E}\u{1F607}\u{1F339}\u{1F926}\u{1F389}\u{1F49E}\u270C\u2728\u{1F937}\u{1F631}\u{1F60C}\u{1F338}\u{1F64C}\u{1F60B}\u{1F497}\u{1F49A}\u{1F60F}\u{1F49B}\u{1F642}\u{1F493}\u{1F929}\u{1F604}\u{1F600}\u{1F5A4}\u{1F603}\u{1F4AF}\u{1F648}\u{1F447}\u{1F3B6}\u{1F612}\u{1F92D}\u2763\u{1F61C}\u{1F48B}\u{1F440}\u{1F62A}\u{1F611}\u{1F4A5}\u{1F64B}\u{1F61E}\u{1F629}\u{1F621}\u{1F92A}\u{1F44A}\u{1F973}\u{1F625}\u{1F924}\u{1F449}\u{1F483}\u{1F633}\u270B\u{1F61A}\u{1F61D}\u{1F634}\u{1F31F}\u{1F62C}\u{1F643}\u{1F340}\u{1F337}\u{1F63B}\u{1F613}\u2B50\u2705\u{1F97A}\u{1F308}\u{1F608}\u{1F918}\u{1F4A6}\u2714\u{1F623}\u{1F3C3}\u{1F490}\u2639\u{1F38A}\u{1F498}\u{1F620}\u261D\u{1F615}\u{1F33A}\u{1F382}\u{1F33B}\u{1F610}\u{1F595}\u{1F49D}\u{1F64A}\u{1F639}\u{1F5E3}\u{1F4AB}\u{1F480}\u{1F451}\u{1F3B5}\u{1F91E}\u{1F61B}\u{1F534}\u{1F624}\u{1F33C}\u{1F62B}\u26BD\u{1F919}\u2615\u{1F3C6}\u{1F92B}\u{1F448}\u{1F62E}\u{1F646}\u{1F37B}\u{1F343}\u{1F436}\u{1F481}\u{1F632}\u{1F33F}\u{1F9E1}\u{1F381}\u26A1\u{1F31E}\u{1F388}\u274C\u270A\u{1F44B}\u{1F630}\u{1F928}\u{1F636}\u{1F91D}\u{1F6B6}\u{1F4B0}\u{1F353}\u{1F4A2}\u{1F91F}\u{1F641}\u{1F6A8}\u{1F4A8}\u{1F92C}\u2708\u{1F380}\u{1F37A}\u{1F913}\u{1F619}\u{1F49F}\u{1F331}\u{1F616}\u{1F476}\u{1F974}\u25B6\u27A1\u2753\u{1F48E}\u{1F4B8}\u2B07\u{1F628}\u{1F31A}\u{1F98B}\u{1F637}\u{1F57A}\u26A0\u{1F645}\u{1F61F}\u{1F635}\u{1F44E}\u{1F932}\u{1F920}\u{1F927}\u{1F4CC}\u{1F535}\u{1F485}\u{1F9D0}\u{1F43E}\u{1F352}\u{1F617}\u{1F911}\u{1F30A}\u{1F92F}\u{1F437}\u260E\u{1F4A7}\u{1F62F}\u{1F486}\u{1F446}\u{1F3A4}\u{1F647}\u{1F351}\u2744\u{1F334}\u{1F4A3}\u{1F438}\u{1F48C}\u{1F4CD}\u{1F940}\u{1F922}\u{1F445}\u{1F4A1}\u{1F4A9}\u{1F450}\u{1F4F8}\u{1F47B}\u{1F910}\u{1F92E}\u{1F3BC}\u{1F975}\u{1F6A9}\u{1F34E}\u{1F34A}\u{1F47C}\u{1F48D}\u{1F4E3}\u{1F942}"),hd=Lc.reduce((r,t,e)=>(r[e]=t,r),[]),dd=Lc.reduce((r,t,e)=>{let n=t.codePointAt(0);if(n==null)throw new Error(`Invalid character: ${t}`);return r[n]=e,r},[]);function pd(r){return r.reduce((t,e)=>(t+=hd[e],t),"")}function md(r){let t=[];for(let e of r){let n=e.codePointAt(0);if(n==null)throw new Error(`Invalid character: ${e}`);let s=dd[n];if(s==null)throw new Error(`Non-base256emoji character: ${e}`);t.push(s)}return new Uint8Array(t)}var gd=ir({prefix:"\u{1F680}",name:"base256emoji",encode:pd,decode:md});var fi={};_t(fi,{base64:()=>yd,base64pad:()=>bd,base64url:()=>wd,base64urlpad:()=>xd});var yd=st({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),bd=st({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),wd=st({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),xd=st({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var hi={};_t(hi,{base8:()=>vd});var vd=st({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var di={};_t(di,{identity:()=>Ed});var Ed=ir({prefix:"\0",name:"identity",encode:r=>za(r),decode:r=>Ka(r)});var wg=new TextEncoder,xg=new TextDecoder;var gi={};_t(gi,{sha256:()=>yr,sha512:()=>Bd});function mi({name:r,code:t,encode:e}){return new pi(r,t,e)}var pi=class{name;code;encode;constructor(t,e,n){this.name=t,this.code=e,this.encode=n}digest(t){if(t instanceof Uint8Array){let e=this.encode(t);return e instanceof Uint8Array?Wt(this.code,e):e.then(n=>Wt(this.code,n))}else throw Error("Unknown type, must be binary type")}};function Dc(r){return async t=>new Uint8Array(await crypto.subtle.digest(r,t))}var yr=mi({name:"sha2-256",code:18,encode:Dc("SHA-256")}),Bd=mi({name:"sha2-512",code:19,encode:Dc("SHA-512")});var Gr={...di,...li,...hi,...ai,...ci,...Io,...To,..._o,...fi,...ui},Rg={...gi,...Co};function Mc(r,t,e,n){return{name:r,prefix:t,encoder:{name:r,prefix:t,encode:e},decoder:{decode:n}}}var Oc=Mc("utf8","u",r=>"u"+new TextDecoder("utf8").decode(r),r=>new TextEncoder().encode(r.substring(1))),yi=Mc("ascii","a",r=>{let t="a";for(let e=0;e<r.length;e++)t+=String.fromCharCode(r[e]);return t},r=>{r=r.substring(1);let t=Ct(r.length);for(let e=0;e<r.length;e++)t[e]=r.charCodeAt(e);return t}),_d={utf8:Oc,"utf-8":Oc,hex:Gr.base16,latin1:yi,ascii:yi,binary:yi,...Gr},On=_d;function F(r,t="utf8"){let e=On[t];if(e==null)throw new Error(`Unsupported encoding "${t}"`);return e.decoder.decode(`${e.prefix}${r}`)}function bi(r){let t=r??8192,e=t>>>1,n,s=t;return function(i){if(i<1||i>e)return Ct(i);s+i>t&&(n=Ct(t),s=0);let a=n.subarray(s,s+=i);return s&7&&(s=(s|7)+1),a}}var Ze=class{fn;len;next;val;constructor(t,e,n){this.fn=t,this.len=e,this.next=void 0,this.val=n}};function wi(){}var vi=class{head;tail;len;next;constructor(t){this.head=t.head,this.tail=t.tail,this.len=t.len,this.next=t.states}},Id=bi();function Td(r){return globalThis.Buffer!=null?Ct(r):Id(r)}var jr=class{len;head;tail;states;constructor(){this.len=0,this.head=new Ze(wi,0,0),this.tail=this.head,this.states=null}_push(t,e,n){return this.tail=this.tail.next=new Ze(t,e,n),this.len+=e,this}uint32(t){return this.len+=(this.tail=this.tail.next=new Ei((t=t>>>0)<128?1:t<16384?2:t<2097152?3:t<268435456?4:5,t)).len,this}int32(t){return t<0?this._push(Mn,10,Lt.fromNumber(t)):this.uint32(t)}sint32(t){return this.uint32((t<<1^t>>31)>>>0)}uint64(t){let e=Lt.fromBigInt(t);return this._push(Mn,e.length(),e)}uint64Number(t){return this._push(ti,Et(t),t)}uint64String(t){return this.uint64(BigInt(t))}int64(t){return this.uint64(t)}int64Number(t){return this.uint64Number(t)}int64String(t){return this.uint64String(t)}sint64(t){let e=Lt.fromBigInt(t).zzEncode();return this._push(Mn,e.length(),e)}sint64Number(t){let e=Lt.fromNumber(t).zzEncode();return this._push(Mn,e.length(),e)}sint64String(t){return this.sint64(BigInt(t))}bool(t){return this._push(xi,1,t?1:0)}fixed32(t){return this._push(Wr,4,t>>>0)}sfixed32(t){return this.fixed32(t)}fixed64(t){let e=Lt.fromBigInt(t);return this._push(Wr,4,e.lo)._push(Wr,4,e.hi)}fixed64Number(t){let e=Lt.fromNumber(t);return this._push(Wr,4,e.lo)._push(Wr,4,e.hi)}fixed64String(t){return this.fixed64(BigInt(t))}sfixed64(t){return this.fixed64(t)}sfixed64Number(t){return this.fixed64Number(t)}sfixed64String(t){return this.fixed64String(t)}float(t){return this._push(Bc,4,t)}double(t){return this._push(Ic,8,t)}bytes(t){let e=t.length>>>0;return e===0?this._push(xi,1,0):this.uint32(e)._push(Nd,e,t)}string(t){let e=Nc(t);return e!==0?this.uint32(e)._push(si,e,t):this._push(xi,1,0)}fork(){return this.states=new vi(this),this.head=this.tail=new Ze(wi,0,0),this.len=0,this}reset(){return this.states!=null?(this.head=this.states.head,this.tail=this.states.tail,this.len=this.states.len,this.states=this.states.next):(this.head=this.tail=new Ze(wi,0,0),this.len=0),this}ldelim(){let t=this.head,e=this.tail,n=this.len;return this.reset().uint32(n),n!==0&&(this.tail.next=t.next,this.tail=e,this.len+=n),this}finish(){let t=this.head.next,e=Td(this.len),n=0;for(;t!=null;)t.fn(t.val,e,n),n+=t.len,t=t.next;return e}};function xi(r,t,e){t[e]=r&255}function kd(r,t,e){for(;r>127;)t[e++]=r&127|128,r>>>=7;t[e]=r}var Ei=class extends Ze{next;constructor(t,e){super(kd,t,e),this.next=void 0}};function Mn(r,t,e){for(;r.hi!==0;)t[e++]=r.lo&127|128,r.lo=(r.lo>>>7|r.hi<<25)>>>0,r.hi>>>=7;for(;r.lo>127;)t[e++]=r.lo&127|128,r.lo=r.lo>>>7;t[e++]=r.lo}function Wr(r,t,e){t[e]=r&255,t[e+1]=r>>>8&255,t[e+2]=r>>>16&255,t[e+3]=r>>>24}function Nd(r,t,e){t.set(r,e)}globalThis.Buffer!=null&&(jr.prototype.bytes=function(r){let t=r.length>>>0;return this.uint32(t),t>0&&this._push(Cd,t,r),this},jr.prototype.string=function(r){let t=globalThis.Buffer.byteLength(r);return this.uint32(t),t>0&&this._push(Rd,t,r),this});function Cd(r,t,e){t.set(r,e)}function Rd(r,t,e){r.length<40?si(r,t,e):t.utf8Write!=null?t.utf8Write(r,e):t.set(F(r),e)}function Si(){return new jr}function Dt(r,t){let e=Si();return t.encode(r,e,{lengthDelimited:!1}),e.finish()}var br;(function(r){r[r.VARINT=0]="VARINT",r[r.BIT64=1]="BIT64",r[r.LENGTH_DELIMITED=2]="LENGTH_DELIMITED",r[r.START_GROUP=3]="START_GROUP",r[r.END_GROUP=4]="END_GROUP",r[r.BIT32=5]="BIT32"})(br||(br={}));function Pn(r,t,e,n){return{name:r,type:t,encode:e,decode:n}}function Xe(r){function t(s){if(r[s.toString()]==null)throw new Error("Invalid enum value");return r[s]}let e=function(o,i){let a=t(o);i.int32(a)},n=function(o){let i=o.int32();return t(i)};return Pn("enum",br.VARINT,e,n)}function Ot(r,t){return Pn("message",br.LENGTH_DELIMITED,r,t)}var Zr=class extends Error{code="ERR_MAX_LENGTH";name="MaxLengthError"};var ft;(function(r){r.RSA="RSA",r.Ed25519="Ed25519",r.secp256k1="secp256k1"})(ft||(ft={}));var Ai;(function(r){r[r.RSA=0]="RSA",r[r.Ed25519=1]="Ed25519",r[r.secp256k1=2]="secp256k1"})(Ai||(Ai={}));(function(r){r.codec=()=>Xe(Ai)})(ft||(ft={}));var re;(function(r){let t;r.codec=()=>(t==null&&(t=Ot((e,n,s={})=>{s.lengthDelimited!==!1&&n.fork(),e.Type!=null&&(n.uint32(8),ft.codec().encode(e.Type,n)),e.Data!=null&&(n.uint32(18),n.bytes(e.Data)),s.lengthDelimited!==!1&&n.ldelim()},(e,n,s={})=>{let o={},i=n==null?e.len:e.pos+n;for(;e.pos<i;){let a=e.uint32();switch(a>>>3){case 1:{o.Type=ft.codec().decode(e);break}case 2:{o.Data=e.bytes();break}default:{e.skipType(a&7);break}}}return o})),t),r.encode=e=>Dt(e,r.codec()),r.decode=(e,n)=>Ut(e,r.codec(),n)})(re||(re={}));var Bi;(function(r){let t;r.codec=()=>(t==null&&(t=Ot((e,n,s={})=>{s.lengthDelimited!==!1&&n.fork(),e.Type!=null&&(n.uint32(8),ft.codec().encode(e.Type,n)),e.Data!=null&&(n.uint32(18),n.bytes(e.Data)),s.lengthDelimited!==!1&&n.ldelim()},(e,n,s={})=>{let o={},i=n==null?e.len:e.pos+n;for(;e.pos<i;){let a=e.uint32();switch(a>>>3){case 1:{o.Type=ft.codec().decode(e);break}case 2:{o.Data=e.bytes();break}default:{e.skipType(a&7);break}}}return o})),t),r.encode=e=>Dt(e,r.codec()),r.decode=(e,n)=>Ut(e,r.codec(),n)})(Bi||(Bi={}));var on={};_t(on,{MAX_RSA_KEY_SIZE:()=>Ns,generateRSAKeyPair:()=>Ul,jwkToJWKKeyPair:()=>Dl,jwkToPkcs1:()=>jd,jwkToPkix:()=>Ui,jwkToRSAPrivateKey:()=>Ll,pkcs1ToJwk:()=>Nl,pkcs1ToRSAPrivateKey:()=>Rl,pkixToJwk:()=>Cl,pkixToRSAPublicKey:()=>Di});var Ld=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]),Ue=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),De=new Uint32Array(64),_i=class extends pr{constructor(){super(64,32,8,!1),this.A=Ue[0]|0,this.B=Ue[1]|0,this.C=Ue[2]|0,this.D=Ue[3]|0,this.E=Ue[4]|0,this.F=Ue[5]|0,this.G=Ue[6]|0,this.H=Ue[7]|0}get(){let{A:t,B:e,C:n,D:s,E:o,F:i,G:a,H:c}=this;return[t,e,n,s,o,i,a,c]}set(t,e,n,s,o,i,a,c){this.A=t|0,this.B=e|0,this.C=n|0,this.D=s|0,this.E=o|0,this.F=i|0,this.G=a|0,this.H=c|0}process(t,e){for(let u=0;u<16;u++,e+=4)De[u]=t.getUint32(e,!1);for(let u=16;u<64;u++){let p=De[u-15],l=De[u-2],d=jt(p,7)^jt(p,18)^p>>>3,g=jt(l,17)^jt(l,19)^l>>>10;De[u]=g+De[u-7]+d+De[u-16]|0}let{A:n,B:s,C:o,D:i,E:a,F:c,G:h,H:f}=this;for(let u=0;u<64;u++){let p=jt(a,6)^jt(a,11)^jt(a,25),l=f+p+ac(a,c,h)+Ld[u]+De[u]|0,g=(jt(n,2)^jt(n,13)^jt(n,22))+cc(n,s,o)|0;f=h,h=c,c=a,a=i+l|0,i=o,o=s,s=n,n=l+g|0}n=n+this.A|0,s=s+this.B|0,o=o+this.C|0,i=i+this.D|0,a=a+this.E|0,c=c+this.F|0,h=h+this.G|0,f=f+this.H|0,this.set(n,s,o,i,a,c,h,f)}roundClean(){De.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}};var wr=An(()=>new _i);var $=xo(Vc());function Ye(r,t){let e=0;if(r.length===1)return r[0];for(let n=r.length-1;n>=0;n--)e+=r[r.length-1-n]*Math.pow(2,t*n);return e}function Oe(r,t,e=-1){let n=e,s=r,o=0,i=Math.pow(2,t);for(let a=1;a<8;a++){if(r<i){let c;if(n<0)c=new ArrayBuffer(a),o=a;else{if(n<a)return new ArrayBuffer(0);c=new ArrayBuffer(n),o=n}let h=new Uint8Array(c);for(let f=a-1;f>=0;f--){let u=Math.pow(2,f*t);h[o-f-1]=Math.floor(s/u),s-=h[o-f-1]*u}return c}i*=Math.pow(2,t)}return new ArrayBuffer(0)}function Fn(...r){let t=0,e=0;for(let o of r)t+=o.length;let n=new ArrayBuffer(t),s=new Uint8Array(n);for(let o of r)s.set(o,e),e+=o.length;return s}function Ti(){let r=new Uint8Array(this.valueHex);if(this.valueHex.byteLength>=2){let a=r[0]===255&&r[1]&128,c=r[0]===0&&(r[1]&128)===0;(a||c)&&this.warnings.push("Needlessly long format")}let t=new ArrayBuffer(this.valueHex.byteLength),e=new Uint8Array(t);for(let a=0;a<this.valueHex.byteLength;a++)e[a]=0;e[0]=r[0]&128;let n=Ye(e,8),s=new ArrayBuffer(this.valueHex.byteLength),o=new Uint8Array(s);for(let a=0;a<this.valueHex.byteLength;a++)o[a]=r[a];return o[0]&=127,Ye(o,8)-n}function Hc(r){let t=r<0?r*-1:r,e=128;for(let n=1;n<8;n++){if(t<=e){if(r<0){let i=e-t,a=Oe(i,8,n),c=new Uint8Array(a);return c[0]|=128,a}let s=Oe(t,8,n),o=new Uint8Array(s);if(o[0]&128){let i=s.slice(0),a=new Uint8Array(i);s=new ArrayBuffer(s.byteLength+1),o=new Uint8Array(s);for(let c=0;c<i.byteLength;c++)o[c+1]=a[c];o[0]=0}return s}e*=Math.pow(2,8)}return new ArrayBuffer(0)}function Fc(r,t){if(r.byteLength!==t.byteLength)return!1;let e=new Uint8Array(r),n=new Uint8Array(t);for(let s=0;s<e.length;s++)if(e[s]!==n[s])return!1;return!0}function Rt(r,t){let e=r.toString(10);if(t<e.length)return"";let n=t-e.length,s=new Array(n);for(let i=0;i<n;i++)s[i]="0";return s.join("").concat(e)}var dy=Math.log(2);function qn(){if(typeof BigInt>"u")throw new Error("BigInt is not defined. Your environment doesn't implement BigInt.")}function ki(r){let t=0,e=0;for(let s=0;s<r.length;s++){let o=r[s];t+=o.byteLength}let n=new Uint8Array(t);for(let s=0;s<r.length;s++){let o=r[s];n.set(new Uint8Array(o),e),e+=o.byteLength}return n.buffer}function xe(r,t,e,n){return t instanceof Uint8Array?t.byteLength?e<0?(r.error="Wrong parameter: inputOffset less than zero",!1):n<0?(r.error="Wrong parameter: inputLength less than zero",!1):t.byteLength-e-n<0?(r.error="End of input reached before message was fully decoded (inconsistent offset and length values)",!1):!0:(r.error="Wrong parameter: inputBuffer has zero length",!1):(r.error="Wrong parameter: inputBuffer must be 'Uint8Array'",!1)}var Yr=class{constructor(){this.items=[]}write(t){this.items.push(t)}final(){return ki(this.items)}},Xr=[new Uint8Array([1])],qc="0123456789";var Ar="",Jt=new ArrayBuffer(0),Ni=new Uint8Array(0),Jr="EndOfContent",zc="OCTET STRING",$c="BIT STRING";function ve(r){var t;return t=class extends r{constructor(...n){var s;super(...n);let o=n[0]||{};this.isHexOnly=(s=o.isHexOnly)!==null&&s!==void 0?s:!1,this.valueHexView=o.valueHex?$.BufferSourceConverter.toUint8Array(o.valueHex):Ni}get valueHex(){return this.valueHexView.slice().buffer}set valueHex(n){this.valueHexView=new Uint8Array(n)}fromBER(n,s,o){let i=n instanceof ArrayBuffer?new Uint8Array(n):n;if(!xe(this,i,s,o))return-1;let a=s+o;return this.valueHexView=i.subarray(s,a),this.valueHexView.length?(this.blockLength=o,a):(this.warnings.push("Zero buffer length"),s)}toBER(n=!1){return this.isHexOnly?n?new ArrayBuffer(this.valueHexView.byteLength):this.valueHexView.byteLength===this.valueHexView.buffer.byteLength?this.valueHexView.buffer:this.valueHexView.slice().buffer:(this.error="Flag 'isHexOnly' is not set, abort",Jt)}toJSON(){return{...super.toJSON(),isHexOnly:this.isHexOnly,valueHex:$.Convert.ToHex(this.valueHexView)}}},t.NAME="hexBlock",t}var ye=class{constructor({blockLength:t=0,error:e=Ar,warnings:n=[],valueBeforeDecode:s=Ni}={}){this.blockLength=t,this.error=e,this.warnings=n,this.valueBeforeDecodeView=$.BufferSourceConverter.toUint8Array(s)}static blockName(){return this.NAME}get valueBeforeDecode(){return this.valueBeforeDecodeView.slice().buffer}set valueBeforeDecode(t){this.valueBeforeDecodeView=new Uint8Array(t)}toJSON(){return{blockName:this.constructor.NAME,blockLength:this.blockLength,error:this.error,warnings:this.warnings,valueBeforeDecode:$.Convert.ToHex(this.valueBeforeDecodeView)}}};ye.NAME="baseBlock";var At=class extends ye{fromBER(t,e,n){throw TypeError("User need to make a specific function in a class which extends 'ValueBlock'")}toBER(t,e){throw TypeError("User need to make a specific function in a class which extends 'ValueBlock'")}};At.NAME="valueBlock";var Kn=class extends ve(ye){constructor({idBlock:t={}}={}){var e,n,s,o;super(),t?(this.isHexOnly=(e=t.isHexOnly)!==null&&e!==void 0?e:!1,this.valueHexView=t.valueHex?$.BufferSourceConverter.toUint8Array(t.valueHex):Ni,this.tagClass=(n=t.tagClass)!==null&&n!==void 0?n:-1,this.tagNumber=(s=t.tagNumber)!==null&&s!==void 0?s:-1,this.isConstructed=(o=t.isConstructed)!==null&&o!==void 0?o:!1):(this.tagClass=-1,this.tagNumber=-1,this.isConstructed=!1)}toBER(t=!1){let e=0;switch(this.tagClass){case 1:e|=0;break;case 2:e|=64;break;case 3:e|=128;break;case 4:e|=192;break;default:return this.error="Unknown tag class",Jt}if(this.isConstructed&&(e|=32),this.tagNumber<31&&!this.isHexOnly){let s=new Uint8Array(1);if(!t){let o=this.tagNumber;o&=31,e|=o,s[0]=e}return s.buffer}if(!this.isHexOnly){let s=Oe(this.tagNumber,7),o=new Uint8Array(s),i=s.byteLength,a=new Uint8Array(i+1);if(a[0]=e|31,!t){for(let c=0;c<i-1;c++)a[c+1]=o[c]|128;a[i]=o[i-1]}return a.buffer}let n=new Uint8Array(this.valueHexView.byteLength+1);if(n[0]=e|31,!t){let s=this.valueHexView;for(let o=0;o<s.length-1;o++)n[o+1]=s[o]|128;n[this.valueHexView.byteLength]=s[s.length-1]}return n.buffer}fromBER(t,e,n){let s=$.BufferSourceConverter.toUint8Array(t);if(!xe(this,s,e,n))return-1;let o=s.subarray(e,e+n);if(o.length===0)return this.error="Zero buffer length",-1;switch(o[0]&192){case 0:this.tagClass=1;break;case 64:this.tagClass=2;break;case 128:this.tagClass=3;break;case 192:this.tagClass=4;break;default:return this.error="Unknown tag class",-1}this.isConstructed=(o[0]&32)===32,this.isHexOnly=!1;let a=o[0]&31;if(a!==31)this.tagNumber=a,this.blockLength=1;else{let c=1,h=this.valueHexView=new Uint8Array(255),f=255;for(;o[c]&128;){if(h[c-1]=o[c]&127,c++,c>=o.length)return this.error="End of input reached before message was fully decoded",-1;if(c===f){f+=255;let p=new Uint8Array(f);for(let l=0;l<h.length;l++)p[l]=h[l];h=this.valueHexView=new Uint8Array(f)}}this.blockLength=c+1,h[c-1]=o[c]&127;let u=new Uint8Array(c);for(let p=0;p<c;p++)u[p]=h[p];h=this.valueHexView=new Uint8Array(c),h.set(u),this.blockLength<=9?this.tagNumber=Ye(h,7):(this.isHexOnly=!0,this.warnings.push("Tag too long, represented as hex-coded"))}if(this.tagClass===1&&this.isConstructed)switch(this.tagNumber){case 1:case 2:case 5:case 6:case 9:case 13:case 14:case 23:case 24:case 31:case 32:case 33:case 34:return this.error="Constructed encoding used for primitive type",-1}return e+this.blockLength}toJSON(){return{...super.toJSON(),tagClass:this.tagClass,tagNumber:this.tagNumber,isConstructed:this.isConstructed}}};Kn.NAME="identificationBlock";var zn=class extends ye{constructor({lenBlock:t={}}={}){var e,n,s;super(),this.isIndefiniteForm=(e=t.isIndefiniteForm)!==null&&e!==void 0?e:!1,this.longFormUsed=(n=t.longFormUsed)!==null&&n!==void 0?n:!1,this.length=(s=t.length)!==null&&s!==void 0?s:0}fromBER(t,e,n){let s=$.BufferSourceConverter.toUint8Array(t);if(!xe(this,s,e,n))return-1;let o=s.subarray(e,e+n);if(o.length===0)return this.error="Zero buffer length",-1;if(o[0]===255)return this.error="Length block 0xFF is reserved by standard",-1;if(this.isIndefiniteForm=o[0]===128,this.isIndefiniteForm)return this.blockLength=1,e+this.blockLength;if(this.longFormUsed=!!(o[0]&128),this.longFormUsed===!1)return this.length=o[0],this.blockLength=1,e+this.blockLength;let i=o[0]&127;if(i>8)return this.error="Too big integer",-1;if(i+1>o.length)return this.error="End of input reached before message was fully decoded",-1;let a=e+1,c=s.subarray(a,a+i);return c[i-1]===0&&this.warnings.push("Needlessly long encoded length"),this.length=Ye(c,8),this.longFormUsed&&this.length<=127&&this.warnings.push("Unnecessary usage of long length form"),this.blockLength=i+1,e+this.blockLength}toBER(t=!1){let e,n;if(this.length>127&&(this.longFormUsed=!0),this.isIndefiniteForm)return e=new ArrayBuffer(1),t===!1&&(n=new Uint8Array(e),n[0]=128),e;if(this.longFormUsed){let s=Oe(this.length,8);if(s.byteLength>127)return this.error="Too big length",Jt;if(e=new ArrayBuffer(s.byteLength+1),t)return e;let o=new Uint8Array(s);n=new Uint8Array(e),n[0]=s.byteLength|128;for(let i=0;i<s.byteLength;i++)n[i+1]=o[i];return e}return e=new ArrayBuffer(1),t===!1&&(n=new Uint8Array(e),n[0]=this.length),e}toJSON(){return{...super.toJSON(),isIndefiniteForm:this.isIndefiniteForm,longFormUsed:this.longFormUsed,length:this.length}}};zn.NAME="lengthBlock";var N={},bt=class extends ye{constructor({name:t=Ar,optional:e=!1,primitiveSchema:n,...s}={},o){super(s),this.name=t,this.optional=e,n&&(this.primitiveSchema=n),this.idBlock=new Kn(s),this.lenBlock=new zn(s),this.valueBlock=o?new o(s):new At(s)}fromBER(t,e,n){let s=this.valueBlock.fromBER(t,e,this.lenBlock.isIndefiniteForm?n:this.lenBlock.length);return s===-1?(this.error=this.valueBlock.error,s):(this.idBlock.error.length||(this.blockLength+=this.idBlock.blockLength),this.lenBlock.error.length||(this.blockLength+=this.lenBlock.blockLength),this.valueBlock.error.length||(this.blockLength+=this.valueBlock.blockLength),s)}toBER(t,e){let n=e||new Yr;e||Gc(this);let s=this.idBlock.toBER(t);if(n.write(s),this.lenBlock.isIndefiniteForm)n.write(new Uint8Array([128]).buffer),this.valueBlock.toBER(t,n),n.write(new ArrayBuffer(2));else{let o=this.valueBlock.toBER(t);this.lenBlock.length=o.byteLength;let i=this.lenBlock.toBER(t);n.write(i),n.write(o)}return e?Jt:n.final()}toJSON(){let t={...super.toJSON(),idBlock:this.idBlock.toJSON(),lenBlock:this.lenBlock.toJSON(),valueBlock:this.valueBlock.toJSON(),name:this.name,optional:this.optional};return this.primitiveSchema&&(t.primitiveSchema=this.primitiveSchema.toJSON()),t}toString(t="ascii"){return t==="ascii"?this.onAsciiEncoding():$.Convert.ToHex(this.toBER())}onAsciiEncoding(){return`${this.constructor.NAME} : ${$.Convert.ToHex(this.valueBlock.valueBeforeDecodeView)}`}isEqual(t){if(this===t)return!0;if(!(t instanceof this.constructor))return!1;let e=this.toBER(),n=t.toBER();return Fc(e,n)}};bt.NAME="BaseBlock";function Gc(r){if(r instanceof N.Constructed)for(let t of r.valueBlock.value)Gc(t)&&(r.lenBlock.isIndefiniteForm=!0);return!!r.lenBlock.isIndefiniteForm}var $n=class extends bt{constructor({value:t=Ar,...e}={},n){super(e,n),t&&this.fromString(t)}getValue(){return this.valueBlock.value}setValue(t){this.valueBlock.value=t}fromBER(t,e,n){let s=this.valueBlock.fromBER(t,e,this.lenBlock.isIndefiniteForm?n:this.lenBlock.length);return s===-1?(this.error=this.valueBlock.error,s):(this.fromBuffer(this.valueBlock.valueHexView),this.idBlock.error.length||(this.blockLength+=this.idBlock.blockLength),this.lenBlock.error.length||(this.blockLength+=this.lenBlock.blockLength),this.valueBlock.error.length||(this.blockLength+=this.valueBlock.blockLength),s)}onAsciiEncoding(){return`${this.constructor.NAME} : '${this.valueBlock.value}'`}};$n.NAME="BaseStringBlock";var Gn=class extends ve(At){constructor({isHexOnly:t=!0,...e}={}){super(e),this.isHexOnly=t}};Gn.NAME="PrimitiveValueBlock";var Wc,Wn=class extends bt{constructor(t={}){super(t,Gn),this.idBlock.isConstructed=!1}};Wc=Wn;N.Primitive=Wc;Wn.NAME="PRIMITIVE";function qd(r,t){if(r instanceof t)return r;let e=new t;return e.idBlock=r.idBlock,e.lenBlock=r.lenBlock,e.warnings=r.warnings,e.valueBeforeDecodeView=r.valueBeforeDecodeView,e}function Is(r,t=0,e=r.length){let n=t,s=new bt({},At),o=new ye;if(!xe(o,r,t,e))return s.error=o.error,{offset:-1,result:s};if(!r.subarray(t,t+e).length)return s.error="Zero buffer length",{offset:-1,result:s};let a=s.idBlock.fromBER(r,t,e);if(s.idBlock.warnings.length&&s.warnings.concat(s.idBlock.warnings),a===-1)return s.error=s.idBlock.error,{offset:-1,result:s};if(t=a,e-=s.idBlock.blockLength,a=s.lenBlock.fromBER(r,t,e),s.lenBlock.warnings.length&&s.warnings.concat(s.lenBlock.warnings),a===-1)return s.error=s.lenBlock.error,{offset:-1,result:s};if(t=a,e-=s.lenBlock.blockLength,!s.idBlock.isConstructed&&s.lenBlock.isIndefiniteForm)return s.error="Indefinite length form used for primitive encoding form",{offset:-1,result:s};let c=bt;switch(s.idBlock.tagClass){case 1:if(s.idBlock.tagNumber>=37&&s.idBlock.isHexOnly===!1)return s.error="UNIVERSAL 37 and upper tags are reserved by ASN.1 standard",{offset:-1,result:s};switch(s.idBlock.tagNumber){case 0:if(s.idBlock.isConstructed&&s.lenBlock.length>0)return s.error="Type [UNIVERSAL 0] is reserved",{offset:-1,result:s};c=N.EndOfContent;break;case 1:c=N.Boolean;break;case 2:c=N.Integer;break;case 3:c=N.BitString;break;case 4:c=N.OctetString;break;case 5:c=N.Null;break;case 6:c=N.ObjectIdentifier;break;case 10:c=N.Enumerated;break;case 12:c=N.Utf8String;break;case 13:c=N.RelativeObjectIdentifier;break;case 14:c=N.TIME;break;case 15:return s.error="[UNIVERSAL 15] is reserved by ASN.1 standard",{offset:-1,result:s};case 16:c=N.Sequence;break;case 17:c=N.Set;break;case 18:c=N.NumericString;break;case 19:c=N.PrintableString;break;case 20:c=N.TeletexString;break;case 21:c=N.VideotexString;break;case 22:c=N.IA5String;break;case 23:c=N.UTCTime;break;case 24:c=N.GeneralizedTime;break;case 25:c=N.GraphicString;break;case 26:c=N.VisibleString;break;case 27:c=N.GeneralString;break;case 28:c=N.UniversalString;break;case 29:c=N.CharacterString;break;case 30:c=N.BmpString;break;case 31:c=N.DATE;break;case 32:c=N.TimeOfDay;break;case 33:c=N.DateTime;break;case 34:c=N.Duration;break;default:{let h=s.idBlock.isConstructed?new N.Constructed:new N.Primitive;h.idBlock=s.idBlock,h.lenBlock=s.lenBlock,h.warnings=s.warnings,s=h}}break;case 2:case 3:case 4:default:c=s.idBlock.isConstructed?N.Constructed:N.Primitive}return s=qd(s,c),a=s.fromBER(r,t,s.lenBlock.isIndefiniteForm?e:s.lenBlock.length),s.valueBeforeDecodeView=r.subarray(n,n+s.blockLength),{offset:a,result:s}}function Ci(r){if(!r.byteLength){let t=new bt({},At);return t.error="Input buffer has zero length",{offset:-1,result:t}}return Is($.BufferSourceConverter.toUint8Array(r).slice(),0,r.byteLength)}function Kd(r,t){return r?1:t}var ne=class extends At{constructor({value:t=[],isIndefiniteForm:e=!1,...n}={}){super(n),this.value=t,this.isIndefiniteForm=e}fromBER(t,e,n){let s=$.BufferSourceConverter.toUint8Array(t);if(!xe(this,s,e,n))return-1;if(this.valueBeforeDecodeView=s.subarray(e,e+n),this.valueBeforeDecodeView.length===0)return this.warnings.push("Zero buffer length"),e;let o=e;for(;Kd(this.isIndefiniteForm,n)>0;){let i=Is(s,o,n);if(i.offset===-1)return this.error=i.result.error,this.warnings.concat(i.result.warnings),-1;if(o=i.offset,this.blockLength+=i.result.blockLength,n-=i.result.blockLength,this.value.push(i.result),this.isIndefiniteForm&&i.result.constructor.NAME===Jr)break}return this.isIndefiniteForm&&(this.value[this.value.length-1].constructor.NAME===Jr?this.value.pop():this.warnings.push("No EndOfContent block encoded")),o}toBER(t,e){let n=e||new Yr;for(let s=0;s<this.value.length;s++)this.value[s].toBER(t,n);return e?Jt:n.final()}toJSON(){let t={...super.toJSON(),isIndefiniteForm:this.isIndefiniteForm,value:[]};for(let e of this.value)t.value.push(e.toJSON());return t}};ne.NAME="ConstructedValueBlock";var jc,Me=class extends bt{constructor(t={}){super(t,ne),this.idBlock.isConstructed=!0}fromBER(t,e,n){this.valueBlock.isIndefiniteForm=this.lenBlock.isIndefiniteForm;let s=this.valueBlock.fromBER(t,e,this.lenBlock.isIndefiniteForm?n:this.lenBlock.length);return s===-1?(this.error=this.valueBlock.error,s):(this.idBlock.error.length||(this.blockLength+=this.idBlock.blockLength),this.lenBlock.error.length||(this.blockLength+=this.lenBlock.blockLength),this.valueBlock.error.length||(this.blockLength+=this.valueBlock.blockLength),s)}onAsciiEncoding(){let t=[];for(let n of this.valueBlock.value)t.push(n.toString("ascii").split(`
|
3
3
|
`).map(s=>` ${s}`).join(`
|
4
4
|
`));let e=this.idBlock.tagClass===3?`[${this.idBlock.tagNumber}]`:this.constructor.NAME;return t.length?`${e} :
|
5
5
|
${t.join(`
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@libp2p/circuit-relay-v2",
|
3
|
-
"version": "2.0.1-
|
3
|
+
"version": "2.0.1-4fd7eb2e1",
|
4
4
|
"description": "Implementation of Circuit Relay v2",
|
5
5
|
"license": "Apache-2.0 OR MIT",
|
6
6
|
"homepage": "https://github.com/libp2p/js-libp2p/tree/main/packages/transport-circuit-relay-v2#readme",
|
@@ -52,12 +52,12 @@
|
|
52
52
|
"doc-check": "aegir doc-check"
|
53
53
|
},
|
54
54
|
"dependencies": {
|
55
|
-
"@libp2p/interface": "2.0.1-
|
56
|
-
"@libp2p/interface-internal": "2.0.1-
|
57
|
-
"@libp2p/peer-collections": "6.0.1-
|
58
|
-
"@libp2p/peer-id": "5.0.1-
|
59
|
-
"@libp2p/peer-record": "8.0.1-
|
60
|
-
"@libp2p/utils": "6.0.1-
|
55
|
+
"@libp2p/interface": "2.0.1-4fd7eb2e1",
|
56
|
+
"@libp2p/interface-internal": "2.0.1-4fd7eb2e1",
|
57
|
+
"@libp2p/peer-collections": "6.0.1-4fd7eb2e1",
|
58
|
+
"@libp2p/peer-id": "5.0.1-4fd7eb2e1",
|
59
|
+
"@libp2p/peer-record": "8.0.1-4fd7eb2e1",
|
60
|
+
"@libp2p/utils": "6.0.1-4fd7eb2e1",
|
61
61
|
"@multiformats/mafmt": "^12.1.6",
|
62
62
|
"@multiformats/multiaddr": "^12.2.3",
|
63
63
|
"any-signal": "^4.1.1",
|
@@ -72,7 +72,7 @@
|
|
72
72
|
"uint8arrays": "^5.1.0"
|
73
73
|
},
|
74
74
|
"devDependencies": {
|
75
|
-
"@libp2p/interface-compliance-tests": "6.0.1-
|
75
|
+
"@libp2p/interface-compliance-tests": "6.0.1-4fd7eb2e1",
|
76
76
|
"aegir": "^44.0.1",
|
77
77
|
"delay": "^6.0.0",
|
78
78
|
"it-drain": "^3.0.7",
|