@rizom/ops 0.2.0-alpha.418 → 0.2.0-alpha.419
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/brains-ops.js
CHANGED
|
@@ -765,7 +765,7 @@ printf 'REMOTE_ARTIFACT_DIR=%s\\n' "$remote_dir"
|
|
|
765
765
|
`).replace(/\\n/g,`
|
|
766
766
|
`).trimEnd()}
|
|
767
767
|
`}var i7,Tke;var GO=x(async()=>{ze();e7();Hi();Zp();await XV();i7=f.object({HCLOUD_TOKEN:f.string().min(1),KAMAL_SSH_PRIVATE_KEY:f.string().min(1)}),Tke=f.object({servers:f.array(f.object({status:f.string(),public_net:f.object({ipv4:f.object({ip:f.string().min(1)})})}))})});import{parseArgs as Z7}from"util";function mt(e){return e}class Wp extends Error{constructor(e){super(e);this.name="CliUsageError"}}function H7(e,t){let r={...t};for(let i of e)for(let[n,o]of Object.entries(i.flags??{})){let s=r[n];if(s===void 0){r[n]=o;continue}if(s.type!==o.type||s.short!==o.short||s.default!==o.default)throw Error(`Conflicting definitions for flag --${n}: commands must agree on type, short, and default`)}return r}function J7(e){let t={};for(let[r,i]of Object.entries(e))t[r]={type:i.type,...i.short!==void 0?{short:i.short}:{},...i.default!==void 0?{default:i.default}:{}};return t}function K7(e){if(!(e instanceof Error)||!("code"in e))return!1;return e.code==="ERR_PARSE_ARGS_UNKNOWN_OPTION"||e.code==="ERR_PARSE_ARGS_INVALID_OPTION_VALUE"}function eR(e,t){let r=H7(t.commands,t.globalFlags??{}),i,n;try{({values:i,positionals:n}=Z7({args:e,options:J7(r),allowPositionals:!0,strict:t.strict??!0}))}catch(s){if(K7(s))throw new Wp(s.message.split(". ")[0]??s.message);throw s}if("help"in r&&i.help===!0)return{command:"help",args:[],flags:{help:!0}};if("version"in r&&i.version===!0)return{command:"version",args:[],flags:{version:!0}};let o={};for(let[s,a]of Object.entries(r)){let c=i[s];if(typeof c==="string"&&a.type==="string")o[s]=c;else if(typeof c==="boolean"&&a.type==="boolean")o[s]=c}return{command:n[0]??"help",args:n.slice(1),flags:o}}function tR(e){let t=e.reduce((r,i)=>Math.max(r,i.label.length),0);return e.map((r)=>` ${r.label.padEnd(t)} ${r.description}`)}function V7(e){return tR(e.map((t)=>({label:t.usage?`${t.name} ${t.usage}`:t.name,description:t.description})))}function W7(e,t){let r=t.type==="string"?` ${t.placeholder??"<value>"}`:"",i=t.short!==void 0?`, -${t.short}`:"";return`--${e}${r}${i}`}function rR(e){return tR(Object.entries(e).map(([t,r])=>({label:W7(t,r),description:r.description})))}function nR(e,t){return`Usage: ${e} ${t.name}${t.usage?` ${t.usage}`:""}`}function G7(e){return JSON.stringify(Object.entries(e).map(([t,r])=>[t,r.type,r.short??"",r.description,r.placeholder??"",r.default??""]).sort((t,r)=>String(t[0]).localeCompare(String(r[0]))))}function Q7(e){let t=[],r=new Map;for(let n of e){let o=n.flags??{};if(Object.keys(o).length===0)continue;let s=G7(o),a=r.get(s);if(a){a.names.push(n.name);continue}let c={names:[n.name],flags:o};r.set(s,c),t.push(c)}let i=[];for(let n of t)i.push("",`${n.names.join(" / ")} options:`),i.push(...rR(n.flags));return i}function iR(e){let t=[e.intro,"",`Usage: ${e.cliName} ${e.usage??"<command> [args]"}`,"","Commands:",...V7(e.commands)];if(e.globalFlags&&Object.keys(e.globalFlags).length>0)t.push("","Options:",...rR(e.globalFlags));return t.push(...Q7(e.commands)),t.join(`
|
|
768
|
-
`)}function oR(e){let t=new Map;for(let r of e){if(t.has(r.name))throw Error(`Duplicate command name: ${r.name}`);t.set(r.name,r)}return t}function ht(e,t){let r=e[t];return typeof r==="string"?r:void 0}function oc(e,t){let r=e[t];return typeof r==="boolean"?r:void 0}var Gp={name:"@rizom/ops",version:"0.2.0-alpha.418",description:"Operator CLI for managing private brain fleet registry repos",keywords:["brains","ops","cli","deploy","fleet","operator"],license:"AGPL-3.0-only",author:"Yeehaa <yeehaa@rizom.ai> (https://rizom.ai)",bin:{"brains-ops":"./dist/brains-ops.js"},bugs:"https://github.com/rizom-ai/brains/issues",dependencies:{"@libsql/client":"^0.17.4","age-encryption":"^0.3.0",yaml:"^2.9.0"},devDependencies:{"@brains/deploy-support":"workspace:*","@brains/eslint-config":"workspace:*","@brains/job-queue":"workspace:*","@brains/profile":"workspace:*","@brains/site-composition":"workspace:*","@brains/test-utils":"workspace:*","@brains/typescript-config":"workspace:*","@brains/utils":"workspace:*","@types/bun":"^1.4.0",typescript:"^7.0.2"},engines:{bun:">=1.3.3"},exports:{".":{types:"./dist/index.d.ts",import:"./dist/index.js"},"./deploy":{types:"./dist/deploy.d.ts",import:"./dist/deploy.js",bun:"./dist/deploy.js"}},files:["dist","templates"],homepage:"https://github.com/rizom-ai/brains/tree/main/packages/brains-ops#readme",main:"./dist/index.js",publishConfig:{access:"public"},repository:{type:"git",url:"https://github.com/rizom-ai/brains.git",directory:"packages/brains-ops"},scripts:{build:"bun scripts/build.ts",lint:"eslint . --max-warnings 0","lint:fix":"eslint . --max-warnings 0 --fix",prepublishOnly:"bun scripts/build.ts",test:"bun run build && bun test --timeout 20000","test:smoke":"bun run build && RUN_SMOKE_TESTS=1 bun test --timeout 60000",typecheck:"tsc --noEmit"},type:"module",types:"./dist/index.d.ts"};import{existsSync as IQ,mkdirSync as AQ,readFileSync as Ew,writeFileSync as Iw}from"fs";import{dirname as TQ,join as p2}from"path";function jx(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name==="Uint8Array"&&"BYTES_PER_ELEMENT"in e&&e.BYTES_PER_ELEMENT===1}function Ct(e,t=""){if(typeof e!=="number"){let r=t&&`"${t}" `;throw TypeError(`${r}expected number, got ${typeof e}`)}if(!Number.isSafeInteger(e)||e<0){let r=t&&`"${t}" `;throw RangeError(`${r}expected integer >= 0, got ${e}`)}}function rr(e,t,r=""){let i=jx(e),n=e?.length,o=t!==void 0;if(!i||o&&n!==t){let s=r&&`"${r}" `,a=o?` of length ${t}`:"",c=i?`length=${n}`:`type=${typeof e}`,l=s+"expected Uint8Array"+a+", got "+c;if(!i)throw TypeError(l);throw RangeError(l)}return e}function Ai(e){if(typeof e!=="function"||typeof e.create!=="function")throw TypeError("Hash must wrapped by utils.createHasher");if(Ct(e.outputLen),Ct(e.blockLen),e.outputLen<1)throw Error('"outputLen" must be >= 1');if(e.blockLen<1)throw Error('"blockLen" must be >= 1')}function sc(e,t=!0){if(e.destroyed)throw Error("Hash instance has been destroyed");if(t&&e.finished)throw Error("Hash#digest() has already been called")}function Qp(e,t){rr(e,void 0,"digestInto() output");let r=t.outputLen;if(e.length<r)throw RangeError('"digestInto() output" expected to be of length >='+r)}function Yp(e){return new Uint32Array(e.buffer,e.byteOffset,Math.floor(e.byteLength/4))}function Ar(...e){for(let t=0;t<e.length;t++)e[t].fill(0)}function ac(e){return new DataView(e.buffer,e.byteOffset,e.byteLength)}function Pn(e,t){return e<<32-t|e>>>t}function Ye(e,t){return e<<t|e>>>32-t>>>0}var X7=(()=>new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68)();function eW(e){return e<<24&4278190080|e<<8&16711680|e>>>8&65280|e>>>24&255}function tW(e){for(let t=0;t<e.length;t++)e[t]=eW(e[t]);return e}var qx=X7?(e)=>e:tW,aR=(()=>typeof Uint8Array.from([]).toHex==="function"&&typeof Uint8Array.fromHex==="function")(),rW=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,"0"));function Xp(e){if(rr(e),aR)return e.toHex();let t="";for(let r=0;r<e.length;r++)t+=rW[e[r]];return t}var Ii={_0:48,_9:57,A:65,F:70,a:97,f:102};function sR(e){if(e>=Ii._0&&e<=Ii._9)return e-Ii._0;if(e>=Ii.A&&e<=Ii.F)return e-(Ii.A-10);if(e>=Ii.a&&e<=Ii.f)return e-(Ii.a-10);return}function Ru(e){if(typeof e!=="string")throw TypeError("hex string expected, got "+typeof e);if(aR)try{return Uint8Array.fromHex(e)}catch(n){if(n instanceof SyntaxError)throw RangeError(n.message);throw n}let t=e.length,r=t/2;if(t%2)throw RangeError("hex string expected, got unpadded hex of length "+t);let i=new Uint8Array(r);for(let n=0,o=0;n<r;n++,o+=2){let s=sR(e.charCodeAt(o)),a=sR(e.charCodeAt(o+1));if(s===void 0||a===void 0){let c=e[o]+e[o+1];throw RangeError('hex string expected, got non-hex character "'+c+'" at index '+o)}i[n]=s*16+a}return i}function nW(e){if(typeof e!=="string")throw TypeError("string expected");return new Uint8Array(new TextEncoder().encode(e))}function Ux(e,t=""){if(typeof e==="string")return nW(e);return rr(e,void 0,t)}function Fx(...e){let t=0;for(let i=0;i<e.length;i++){let n=e[i];rr(n),t+=n.length}let r=new Uint8Array(t);for(let i=0,n=0;i<e.length;i++){let o=e[i];r.set(o,n),n+=o.length}return r}function em(e,t){if(t!==void 0&&{}.toString.call(t)!=="[object Object]")throw TypeError("options must be object or undefined");return Object.assign(e,t)}function Mx(e,t={}){let r=(n,o)=>e(o).update(n).digest(),i=e(void 0);return r.outputLen=i.outputLen,r.blockLen=i.blockLen,r.canXOF=i.canXOF,r.create=(n)=>e(n),Object.assign(r,t),Object.freeze(r)}function Ti(e=32){Ct(e,"bytesLength");let t=typeof globalThis==="object"?globalThis.crypto:null;if(typeof t?.getRandomValues!=="function")throw Error("crypto.getRandomValues must be defined");if(e>65536)throw RangeError(`"bytesLength" expected <= 65536, got ${e}`);return t.getRandomValues(new Uint8Array(e))}var Zx=(e)=>({oid:Uint8Array.from([6,9,96,134,72,1,101,3,4,2,e])});class Hx{oHash;iHash;blockLen;outputLen;canXOF=!1;finished=!1;destroyed=!1;constructor(e,t){if(Ai(e),rr(t,void 0,"key"),this.iHash=e.create(),typeof this.iHash.update!=="function")throw Error("Expected instance of class which extends utils.Hash");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;let r=this.blockLen,i=new Uint8Array(r);i.set(t.length>r?e.create().update(t).digest():t);for(let n=0;n<i.length;n++)i[n]^=54;this.iHash.update(i),this.oHash=e.create();for(let n=0;n<i.length;n++)i[n]^=106;this.oHash.update(i),Ar(i)}update(e){return sc(this),this.iHash.update(e),this}digestInto(e){sc(this),Qp(e,this),this.finished=!0;let t=e.subarray(0,this.outputLen);this.iHash.digestInto(t),this.oHash.update(t),this.oHash.digestInto(t),this.destroy()}digest(){let e=new Uint8Array(this.oHash.outputLen);return this.digestInto(e),e}_cloneInto(e){e||=Object.create(Object.getPrototypeOf(this),{});let{oHash:t,iHash:r,finished:i,destroyed:n,blockLen:o,outputLen:s}=this;return e=e,e.finished=i,e.destroyed=n,e.blockLen=o,e.outputLen=s,e.oHash=t._cloneInto(e.oHash),e.iHash=r._cloneInto(e.iHash),e}clone(){return this._cloneInto()}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}}var Xn=(()=>{let e=(t,r,i)=>new Hx(t,r).update(i).digest();return e.create=(t,r)=>new Hx(t,r),e})();function Pu(e,t,r){if(Ai(e),r===void 0)r=new Uint8Array(e.outputLen);return Xn(e,r,t)}var Jx=Uint8Array.of(0),cR=Uint8Array.of();function Kx(e,t,r,i=32){Ai(e),Ct(i,"length"),rr(t,void 0,"prk");let n=e.outputLen;if(t.length<n)throw Error('"prk" must be at least HashLen octets');if(i>255*n)throw Error("Length must be <= 255*HashLen");let o=Math.ceil(i/n);if(r===void 0)r=cR;else rr(r,void 0,"info");let s=new Uint8Array(o*n),a=Xn.create(e,t),c=a._cloneInto(),l=new Uint8Array(a.outputLen);for(let u=0;u<o;u++)Jx[0]=u+1,c.update(u===0?cR:l).update(r).update(Jx).digestInto(l),s.set(l,n*u),a._cloneInto(c);return a.destroy(),c.destroy(),Ar(l,Jx),s.slice(0,i)}var mo=(e,t,r,i,n)=>Kx(e,Pu(e,t,r),i,n);function lR(e,t,r){return e&t^~e&r}function uR(e,t,r){return e&t^e&r^t&r}class tm{blockLen;outputLen;canXOF=!1;padOffset;isLE;buffer;view;finished=!1;length=0;pos=0;destroyed=!1;constructor(e,t,r,i){this.blockLen=e,this.outputLen=t,this.padOffset=r,this.isLE=i,this.buffer=new Uint8Array(e),this.view=ac(this.buffer)}update(e){sc(this),rr(e);let{view:t,buffer:r,blockLen:i}=this,n=e.length;for(let o=0;o<n;){let s=Math.min(i-this.pos,n-o);if(s===i){let a=ac(e);for(;i<=n-o;o+=i)this.process(a,o);continue}if(r.set(e.subarray(o,o+s),this.pos),this.pos+=s,o+=s,this.pos===i)this.process(t,0),this.pos=0}return this.length+=e.length,this.roundClean(),this}digestInto(e){sc(this),Qp(e,this),this.finished=!0;let{buffer:t,view:r,blockLen:i,isLE:n}=this,{pos:o}=this;if(t[o++]=128,Ar(this.buffer.subarray(o)),this.padOffset>i-o)this.process(r,0),o=0;for(let u=o;u<i;u++)t[u]=0;r.setBigUint64(i-8,BigInt(this.length*8),n),this.process(r,0);let s=ac(e),a=this.outputLen;if(a%4)throw Error("_sha2: outputLen must be aligned to 32bit");let c=a/4,l=this.get();if(c>l.length)throw Error("_sha2: outputLen bigger than state");for(let u=0;u<c;u++)s.setUint32(4*u,l[u],n)}digest(){let{buffer:e,outputLen:t}=this;this.digestInto(e);let r=e.slice(0,t);return this.destroy(),r}_cloneInto(e){e||=new this.constructor,e.set(...this.get());let{blockLen:t,buffer:r,length:i,finished:n,destroyed:o,pos:s}=this;if(e.destroyed=o,e.finished=n,e.length=i,e.pos=s,i%t)e.buffer.set(r);return e}clone(){return this._cloneInto()}}var $i=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]);var nr=Uint32Array.from([1779033703,4089235720,3144134277,2227873595,1013904242,4271175723,2773480762,1595750129,1359893119,2917565137,2600822924,725511199,528734635,4215389547,1541459225,327033209]);var rm=BigInt(4294967295),dR=BigInt(32);function iW(e,t=!1){if(t)return{h:Number(e&rm),l:Number(e>>dR&rm)};return{h:Number(e>>dR&rm)|0,l:Number(e&rm)|0}}function fR(e,t=!1){let r=e.length,i=new Uint32Array(r),n=new Uint32Array(r);for(let o=0;o<r;o++){let{h:s,l:a}=iW(e[o],t);[i[o],n[o]]=[s,a]}return[i,n]}var Vx=(e,t,r)=>e>>>r,Wx=(e,t,r)=>e<<32-r|t>>>r,Ts=(e,t,r)=>e>>>r|t<<32-r,$s=(e,t,r)=>e<<32-r|t>>>r,zu=(e,t,r)=>e<<64-r|t>>>r-32,Nu=(e,t,r)=>e>>>r-32|t<<64-r;function ei(e,t,r,i){let n=(t>>>0)+(i>>>0);return{h:e+r+(n/4294967296|0)|0,l:n|0}}var pR=(e,t,r)=>(e>>>0)+(t>>>0)+(r>>>0),mR=(e,t,r,i)=>t+r+i+(e/4294967296|0)|0,hR=(e,t,r,i)=>(e>>>0)+(t>>>0)+(r>>>0)+(i>>>0),gR=(e,t,r,i,n)=>t+r+i+n+(e/4294967296|0)|0,yR=(e,t,r,i,n)=>(e>>>0)+(t>>>0)+(r>>>0)+(i>>>0)+(n>>>0),bR=(e,t,r,i,n,o)=>t+r+i+n+o+(e/4294967296|0)|0;var sW=Uint32Array.from([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),ho=new Uint32Array(64);class xR extends tm{constructor(e){super(64,e,8,!1)}get(){let{A:e,B:t,C:r,D:i,E:n,F:o,G:s,H:a}=this;return[e,t,r,i,n,o,s,a]}set(e,t,r,i,n,o,s,a){this.A=e|0,this.B=t|0,this.C=r|0,this.D=i|0,this.E=n|0,this.F=o|0,this.G=s|0,this.H=a|0}process(e,t){for(let u=0;u<16;u++,t+=4)ho[u]=e.getUint32(t,!1);for(let u=16;u<64;u++){let d=ho[u-15],p=ho[u-2],m=Pn(d,7)^Pn(d,18)^d>>>3,y=Pn(p,17)^Pn(p,19)^p>>>10;ho[u]=y+ho[u-7]+m+ho[u-16]|0}let{A:r,B:i,C:n,D:o,E:s,F:a,G:c,H:l}=this;for(let u=0;u<64;u++){let d=Pn(s,6)^Pn(s,11)^Pn(s,25),p=l+d+lR(s,a,c)+sW[u]+ho[u]|0,y=(Pn(r,2)^Pn(r,13)^Pn(r,22))+uR(r,i,n)|0;l=c,c=a,a=s,s=o+p|0,o=n,n=i,i=r,r=p+y|0}r=r+this.A|0,i=i+this.B|0,n=n+this.C|0,o=o+this.D|0,s=s+this.E|0,a=a+this.F|0,c=c+this.G|0,l=l+this.H|0,this.set(r,i,n,o,s,a,c,l)}roundClean(){Ar(ho)}destroy(){this.destroyed=!0,this.set(0,0,0,0,0,0,0,0),Ar(this.buffer)}}class SR extends xR{A=$i[0]|0;B=$i[1]|0;C=$i[2]|0;D=$i[3]|0;E=$i[4]|0;F=$i[5]|0;G=$i[6]|0;H=$i[7]|0;constructor(){super(32)}}var wR=(()=>fR(["0x428a2f98d728ae22","0x7137449123ef65cd","0xb5c0fbcfec4d3b2f","0xe9b5dba58189dbbc","0x3956c25bf348b538","0x59f111f1b605d019","0x923f82a4af194f9b","0xab1c5ed5da6d8118","0xd807aa98a3030242","0x12835b0145706fbe","0x243185be4ee4b28c","0x550c7dc3d5ffb4e2","0x72be5d74f27b896f","0x80deb1fe3b1696b1","0x9bdc06a725c71235","0xc19bf174cf692694","0xe49b69c19ef14ad2","0xefbe4786384f25e3","0x0fc19dc68b8cd5b5","0x240ca1cc77ac9c65","0x2de92c6f592b0275","0x4a7484aa6ea6e483","0x5cb0a9dcbd41fbd4","0x76f988da831153b5","0x983e5152ee66dfab","0xa831c66d2db43210","0xb00327c898fb213f","0xbf597fc7beef0ee4","0xc6e00bf33da88fc2","0xd5a79147930aa725","0x06ca6351e003826f","0x142929670a0e6e70","0x27b70a8546d22ffc","0x2e1b21385c26c926","0x4d2c6dfc5ac42aed","0x53380d139d95b3df","0x650a73548baf63de","0x766a0abb3c77b2a8","0x81c2c92e47edaee6","0x92722c851482353b","0xa2bfe8a14cf10364","0xa81a664bbc423001","0xc24b8b70d0f89791","0xc76c51a30654be30","0xd192e819d6ef5218","0xd69906245565a910","0xf40e35855771202a","0x106aa07032bbd1b8","0x19a4c116b8d2d0c8","0x1e376c085141ab53","0x2748774cdf8eeb99","0x34b0bcb5e19b48a8","0x391c0cb3c5c95a63","0x4ed8aa4ae3418acb","0x5b9cca4f7763e373","0x682e6ff3d6b2b8a3","0x748f82ee5defb2fc","0x78a5636f43172f60","0x84c87814a1f0ab72","0x8cc702081a6439ec","0x90befffa23631e28","0xa4506cebde82bde9","0xbef9a3f7b2c67915","0xc67178f2e372532b","0xca273eceea26619c","0xd186b8c721c0c207","0xeada7dd6cde0eb1e","0xf57d4f7fee6ed178","0x06f067aa72176fba","0x0a637dc5a2c898a6","0x113f9804bef90dae","0x1b710b35131c471b","0x28db77f523047d84","0x32caab7b40c72493","0x3c9ebe0a15c9bebc","0x431d67c49c100d4c","0x4cc5d4becb3e42b6","0x597f299cfc657e2a","0x5fcb6fab3ad6faec","0x6c44198c4a475817"].map((e)=>BigInt(e))))(),aW=(()=>wR[0])(),cW=(()=>wR[1])(),go=new Uint32Array(80),yo=new Uint32Array(80);class vR extends tm{constructor(e){super(128,e,16,!1)}get(){let{Ah:e,Al:t,Bh:r,Bl:i,Ch:n,Cl:o,Dh:s,Dl:a,Eh:c,El:l,Fh:u,Fl:d,Gh:p,Gl:m,Hh:y,Hl:g}=this;return[e,t,r,i,n,o,s,a,c,l,u,d,p,m,y,g]}set(e,t,r,i,n,o,s,a,c,l,u,d,p,m,y,g){this.Ah=e|0,this.Al=t|0,this.Bh=r|0,this.Bl=i|0,this.Ch=n|0,this.Cl=o|0,this.Dh=s|0,this.Dl=a|0,this.Eh=c|0,this.El=l|0,this.Fh=u|0,this.Fl=d|0,this.Gh=p|0,this.Gl=m|0,this.Hh=y|0,this.Hl=g|0}process(e,t){for(let A=0;A<16;A++,t+=4)go[A]=e.getUint32(t),yo[A]=e.getUint32(t+=4);for(let A=16;A<80;A++){let T=go[A-15]|0,z=yo[A-15]|0,j=Ts(T,z,1)^Ts(T,z,8)^Vx(T,z,7),E=$s(T,z,1)^$s(T,z,8)^Wx(T,z,7),Z=go[A-2]|0,D=yo[A-2]|0,H=Ts(Z,D,19)^zu(Z,D,61)^Vx(Z,D,6),X=$s(Z,D,19)^Nu(Z,D,61)^Wx(Z,D,6),F=hR(E,X,yo[A-7],yo[A-16]),P=gR(F,j,H,go[A-7],go[A-16]);go[A]=P|0,yo[A]=F|0}let{Ah:r,Al:i,Bh:n,Bl:o,Ch:s,Cl:a,Dh:c,Dl:l,Eh:u,El:d,Fh:p,Fl:m,Gh:y,Gl:g,Hh:b,Hl:v}=this;for(let A=0;A<80;A++){let T=Ts(u,d,14)^Ts(u,d,18)^zu(u,d,41),z=$s(u,d,14)^$s(u,d,18)^Nu(u,d,41),j=u&p^~u&y,E=d&m^~d&g,Z=yR(v,z,E,cW[A],yo[A]),D=bR(Z,b,T,j,aW[A],go[A]),H=Z|0,X=Ts(r,i,28)^zu(r,i,34)^zu(r,i,39),F=$s(r,i,28)^Nu(r,i,34)^Nu(r,i,39),P=r&n^r&s^n&s,N=i&o^i&a^o&a;b=y|0,v=g|0,y=p|0,g=m|0,p=u|0,m=d|0,{h:u,l:d}=ei(c|0,l|0,D|0,H|0),c=s|0,l=a|0,s=n|0,a=o|0,n=r|0,o=i|0;let I=pR(H,F,N);r=mR(I,D,X,P),i=I|0}({h:r,l:i}=ei(this.Ah|0,this.Al|0,r|0,i|0)),{h:n,l:o}=ei(this.Bh|0,this.Bl|0,n|0,o|0),{h:s,l:a}=ei(this.Ch|0,this.Cl|0,s|0,a|0),{h:c,l}=ei(this.Dh|0,this.Dl|0,c|0,l|0),{h:u,l:d}=ei(this.Eh|0,this.El|0,u|0,d|0),{h:p,l:m}=ei(this.Fh|0,this.Fl|0,p|0,m|0),{h:y,l:g}=ei(this.Gh|0,this.Gl|0,y|0,g|0),{h:b,l:v}=ei(this.Hh|0,this.Hl|0,b|0,v|0),this.set(r,i,n,o,s,a,c,l,u,d,p,m,y,g,b,v)}roundClean(){Ar(go,yo)}destroy(){this.destroyed=!0,Ar(this.buffer),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}}class _R extends vR{Ah=nr[0]|0;Al=nr[1]|0;Bh=nr[2]|0;Bl=nr[3]|0;Ch=nr[4]|0;Cl=nr[5]|0;Dh=nr[6]|0;Dl=nr[7]|0;Eh=nr[8]|0;El=nr[9]|0;Fh=nr[10]|0;Fl=nr[11]|0;Gh=nr[12]|0;Gl=nr[13]|0;Hh=nr[14]|0;Hl=nr[15]|0;constructor(){super(64)}}var Ot=Mx(()=>new SR,Zx(1));var nm=Mx(()=>new _R,Zx(3));/*! scure-base - MIT License (c) 2022 Paul Miller (paulmillr.com) */function cm(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name==="Uint8Array"&&"BYTES_PER_ELEMENT"in e&&e.BYTES_PER_ELEMENT===1}function Yx(e){if(!cm(e))throw TypeError("Uint8Array expected")}function TR(e,t){if(!Array.isArray(t))return!1;if(t.length===0)return!0;if(e)return t.every((r)=>typeof r==="string");else return t.every((r)=>Number.isSafeInteger(r))}function $R(e){if(typeof e!=="function")throw TypeError("function expected");return!0}function bo(e,t){if(typeof t!=="string")throw TypeError(`${e}: string expected`);return!0}function Lu(e){if(typeof e!=="number")throw TypeError(`number expected, got ${typeof e}`);if(!Number.isSafeInteger(e))throw RangeError(`invalid integer: ${e}`)}function om(e){if(!Array.isArray(e))throw TypeError("array expected")}function sm(e,t){if(!TR(!0,t))throw TypeError(`${e}: array of strings expected`)}function Xx(e,t){if(!TR(!1,t))throw TypeError(`${e}: array of numbers expected`)}function Xr(...e){let t=(o)=>o,r=(o,s)=>(a)=>o(s(a)),i=e.map((o)=>o.encode).reduceRight(r,t),n=e.map((o)=>o.decode).reduce(r,t);return{encode:i,decode:n}}function en(e){let t=typeof e==="string"?e.split(""):e,r=t.length;sm("alphabet",t);let i=new Map(t.map((n,o)=>[n,o]));return{encode:(n)=>(om(n),n.map((o)=>{if(!Number.isSafeInteger(o)||o<0||o>=r)throw Error(`alphabet.encode: digit index outside alphabet "${o}". Allowed: ${e}`);return t[o]})),decode:(n)=>(om(n),n.map((o)=>{bo("alphabet.decode",o);let s=i.get(o);if(s===void 0)throw Error(`Unknown letter: "${o}". Allowed: ${e}`);return s}))}}function tn(e=""){return bo("join",e),{encode:(t)=>(sm("join.decode",t),t.join(e)),decode:(t)=>(bo("join.decode",t),t.split(e))}}function lm(e,t="="){return Lu(e),bo("padding",t),{encode(r){sm("padding.encode",r);while(r.length*e%8)r.push(t);return r},decode(r){sm("padding.decode",r);let i=r.length;if(i*e%8)throw Error("padding: invalid, string should have whole number of bytes");for(;i>0&&r[i-1]===t;i--)if((i-1)*e%8===0)throw Error("padding: invalid, string has too much padding");return r.slice(0,i)}}}function CR(e){return $R(e),{encode:(t)=>t,decode:(t)=>e(t)}}function kR(e,t,r){if(t<2)throw RangeError(`convertRadix: invalid from=${t}, base cannot be less than 2`);if(r<2)throw RangeError(`convertRadix: invalid to=${r}, base cannot be less than 2`);if(om(e),!e.length)return[];let i=0,n=[],o=Array.from(e,(a)=>{if(Lu(a),a<0||a>=t)throw Error(`invalid integer: ${a}`);return a}),s=o.length;while(!0){let a=0,c=!0;for(let l=i;l<s;l++){let u=o[l],d=t*a,p=d+u;if(!Number.isSafeInteger(p)||d/t!==a||p-u!==d)throw Error("convertRadix: carry overflow");let m=p/r;a=p%r;let y=Math.floor(m);if(o[l]=y,!Number.isSafeInteger(y)||y*r+a!==p)throw Error("convertRadix: carry overflow");if(!c)continue;else if(!y)i=l;else c=!1}if(n.push(a),c)break}for(let a=0;a<e.length-1&&e[a]===0;a++)n.push(0);return n.reverse()}var OR=(e,t)=>t===0?e:OR(t,e%t),am=(e,t)=>e+(t-OR(e,t)),im=(()=>{let e=[];for(let t=0;t<40;t++)e.push(2**t);return e})();function Gx(e,t,r,i){if(om(e),t<=0||t>32)throw RangeError(`convertRadix2: wrong from=${t}`);if(r<=0||r>32)throw RangeError(`convertRadix2: wrong to=${r}`);if(am(t,r)>32)throw Error(`convertRadix2: carry overflow from=${t} to=${r} carryBits=${am(t,r)}`);let n=0,o=0,s=im[t],a=im[r]-1,c=[];for(let l of e){if(Lu(l),l>=s)throw Error(`convertRadix2: invalid data word=${l} from=${t}`);if(n=n<<t|l,o+t>32)throw Error(`convertRadix2: carry overflow pos=${o} from=${t}`);o+=t;for(;o>=r;o-=r)c.push((n>>o-r&a)>>>0);let u=im[o];if(u===void 0)throw Error("invalid carry");n&=u-1}if(n=n<<r-o&a,!i&&o>=t)throw Error("Excess padding");if(!i&&n>0)throw Error(`Non-zero padding: ${n}`);if(i&&o>0)c.push(n>>>0);return c}function lW(e){Lu(e);let t=256;return{encode:(r)=>{if(!cm(r))throw TypeError("radix.encode input should be Uint8Array");return kR(Array.from(r),t,e)},decode:(r)=>(Xx("radix.decode",r),Uint8Array.from(kR(r,e,t)))}}function gn(e,t=!1){if(Lu(e),e<=0||e>32)throw RangeError("radix2: bits should be in (0..32]");if(am(8,e)>32||am(e,8)>32)throw RangeError("radix2: carry overflow");return{encode:(r)=>{if(!cm(r))throw TypeError("radix2.encode input should be Uint8Array");return Gx(Array.from(r),8,e,!t)},decode:(r)=>(Xx("radix2.decode",r),Uint8Array.from(Gx(r,e,8,t)))}}function ER(e){return $R(e),function(...t){try{return e.apply(null,t)}catch(r){}}}var tEe=Object.freeze(Xr(gn(4),en("0123456789ABCDEF"),tn(""))),rEe=Object.freeze(Xr(gn(5),en("ABCDEFGHIJKLMNOPQRSTUVWXYZ234567"),lm(5),tn(""))),nEe=Object.freeze(Xr(gn(5),en("ABCDEFGHIJKLMNOPQRSTUVWXYZ234567"),tn(""))),iEe=Object.freeze(Xr(gn(5),en("0123456789ABCDEFGHIJKLMNOPQRSTUV"),lm(5),tn(""))),oEe=Object.freeze(Xr(gn(5),en("0123456789ABCDEFGHIJKLMNOPQRSTUV"),tn(""))),sEe=Object.freeze(Xr(gn(5),en("0123456789ABCDEFGHJKMNPQRSTVWXYZ"),tn(""),CR((e)=>e.toUpperCase().replace(/O/g,"0").replace(/[IL]/g,"1")))),RR=(()=>typeof Uint8Array.from([]).toBase64==="function"&&typeof Uint8Array.fromBase64==="function")(),uW=/[\t\n\f\r ]/,PR=(e,t)=>{bo("base64",e);let r=t?"base64url":"base64";if(e.length>0&&uW.test(e))throw Error("invalid base64");return Uint8Array.fromBase64(e,{alphabet:r,lastChunkHandling:"strict"})},eS=Object.freeze(RR?{encode(e){return Yx(e),e.toBase64()},decode(e){return PR(e,!1)}}:Xr(gn(6),en("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"),lm(6),tn(""))),gr=Object.freeze(Xr(gn(6),en("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"),tn(""))),aEe=Object.freeze(RR?{encode(e){return Yx(e),e.toBase64({alphabet:"base64url"})},decode(e){return PR(e,!0)}}:Xr(gn(6),en("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_"),lm(6),tn(""))),cEe=Object.freeze(Xr(gn(6),en("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_"),tn(""))),tS=(e)=>Xr(lW(58),en(e),tn("")),lEe=Object.freeze(tS("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz")),uEe=Object.freeze(tS("123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ")),dEe=Object.freeze(tS("rpshnaf39wBUDNEGHJKLM4PQRST7VWXYZ2bcdeCg65jkm8oFqi1tuvAxyz"));var Qx=Xr(en("qpzry9x8gf2tvdw0s3jn54khce6mua7l"),tn("")),IR=[996825010,642813549,513874426,1027748829,705979059];function Du(e){let t=e>>25,r=(e&33554431)<<5;for(let i=0;i<IR.length;i++)if((t>>i&1)===1)r^=IR[i];return r}function AR(e,t,r=1){let i=e.length,n=1;for(let o=0;o<i;o++){let s=e.charCodeAt(o);if(s<33||s>126)throw Error(`Invalid prefix (${e})`);n=Du(n)^s>>5}n=Du(n);for(let o=0;o<i;o++)n=Du(n)^e.charCodeAt(o)&31;for(let o of t)n=Du(n)^o;for(let o=0;o<6;o++)n=Du(n);return n^=r,Qx.encode(Gx([n%im[30]],30,5,!1))}function zR(e){let t=e==="bech32"?1:734539939,r=gn(5),i=r.decode,n=r.encode,o=ER(i);function s(d,p,m=90){if(bo("bech32.encode prefix",d),cm(p))p=Array.from(p);Xx("bech32.encode",p);let y=d.length;if(y===0)throw TypeError(`Invalid prefix length ${y}`);let g=y+7+p.length;if(m!==!1&&g>m)throw TypeError(`Length ${g} exceeds limit ${m}`);let b=d.toLowerCase(),v=AR(b,p,t);return`${b}1${Qx.encode(p)}${v}`}function a(d,p=90){bo("bech32.decode input",d);let m=d.length;if(m<8||p!==!1&&m>p)throw TypeError(`invalid string length: ${m} (${d}). Expected (8..${p})`);let y=d.toLowerCase();if(d!==y&&d!==d.toUpperCase())throw Error("String must be lowercase or uppercase");let g=y.lastIndexOf("1");if(g===0||g===-1)throw Error('Letter "1" must be present between prefix and data only');let b=y.slice(0,g),v=y.slice(g+1);if(v.length<6)throw Error("Data must be at least 6 characters long");let A=Qx.decode(v).slice(0,-6),T=AR(b,A,t);if(!v.endsWith(T))throw Error(`Invalid checksum in ${d}: expected "${T}"`);return{prefix:b,words:A}}let c=ER(a);function l(d){let{prefix:p,words:m}=a(d,!1);return{prefix:p,words:m,bytes:i(m)}}function u(d,p){return s(d,n(p))}return{encode:s,decode:a,encodeFromBytes:u,decodeToBytes:l,decodeUnsafe:c,fromWords:i,fromWordsUnsafe:o,toWords:n}}var rn=Object.freeze(zR("bech32")),fEe=Object.freeze(zR("bech32m"));var dW=(()=>typeof Uint8Array.from([]).toHex==="function"&&typeof Uint8Array.fromHex==="function")(),fW={encode(e){return Yx(e),e.toHex()},decode(e){return bo("hex",e),Uint8Array.fromHex(e)}},pEe=Object.freeze(dW?fW:Xr(gn(4),en("0123456789abcdef"),tn(""),CR((e)=>{if(typeof e!=="string"||e.length%2!==0)throw TypeError(`hex.decode: expected string, got ${typeof e} with length ${e.length}`);return e.toLowerCase()})));function mW(e,t,r,i){Ai(e);let n=em({dkLen:32,asyncTick:10},i),{c:o,dkLen:s,asyncTick:a}=n;if(Ct(o,"c"),Ct(s,"dkLen"),Ct(a,"asyncTick"),o<1)throw Error("iterations (c) must be >= 1");if(s<1)throw Error('"dkLen" must be >= 1');if(s>4294967295*e.outputLen)throw Error("derived key too long");let c=Ux(t,"password"),l=Ux(r,"salt"),u=new Uint8Array(s),d=Xn.create(e,c),p=d._cloneInto().update(l);return{c:o,dkLen:s,asyncTick:a,DK:u,PRF:d,PRFSalt:p}}function hW(e,t,r,i,n){if(e.destroy(),t.destroy(),i)i.destroy();return Ar(n),r}function rS(e,t,r,i){let{c:n,dkLen:o,DK:s,PRF:a,PRFSalt:c}=mW(e,t,r,i),l,u=new Uint8Array(4),d=ac(u),p=new Uint8Array(a.outputLen);for(let m=1,y=0;y<o;m++,y+=a.outputLen){let g=s.subarray(y,y+a.outputLen);d.setInt32(0,m,!1),(l=c._cloneInto(l)).update(u).digestInto(p),g.set(p.subarray(0,g.length));for(let b=1;b<n;b++){a._cloneInto(l).update(p).digestInto(p);for(let v=0;v<g.length;v++)g[v]^=p[v]}}return hW(a,c,s,l,p)}function NR(e,t,r,i,n,o){let s=e[t++]^r[i++],a=e[t++]^r[i++],c=e[t++]^r[i++],l=e[t++]^r[i++],u=e[t++]^r[i++],d=e[t++]^r[i++],p=e[t++]^r[i++],m=e[t++]^r[i++],y=e[t++]^r[i++],g=e[t++]^r[i++],b=e[t++]^r[i++],v=e[t++]^r[i++],A=e[t++]^r[i++],T=e[t++]^r[i++],z=e[t++]^r[i++],j=e[t++]^r[i++],E=s,Z=a,D=c,H=l,X=u,F=d,P=p,N=m,I=y,R=g,O=b,M=v,L=A,V=T,_=z,te=j;for(let ue=0;ue<8;ue+=2)X^=Ye(E+L|0,7),I^=Ye(X+E|0,9),L^=Ye(I+X|0,13),E^=Ye(L+I|0,18),R^=Ye(F+Z|0,7),V^=Ye(R+F|0,9),Z^=Ye(V+R|0,13),F^=Ye(Z+V|0,18),_^=Ye(O+P|0,7),D^=Ye(_+O|0,9),P^=Ye(D+_|0,13),O^=Ye(P+D|0,18),H^=Ye(te+M|0,7),N^=Ye(H+te|0,9),M^=Ye(N+H|0,13),te^=Ye(M+N|0,18),Z^=Ye(E+H|0,7),D^=Ye(Z+E|0,9),H^=Ye(D+Z|0,13),E^=Ye(H+D|0,18),P^=Ye(F+X|0,7),N^=Ye(P+F|0,9),X^=Ye(N+P|0,13),F^=Ye(X+N|0,18),M^=Ye(O+R|0,7),I^=Ye(M+O|0,9),R^=Ye(I+M|0,13),O^=Ye(R+I|0,18),L^=Ye(te+_|0,7),V^=Ye(L+te|0,9),_^=Ye(V+L|0,13),te^=Ye(_+V|0,18);n[o++]=s+E|0,n[o++]=a+Z|0,n[o++]=c+D|0,n[o++]=l+H|0,n[o++]=u+X|0,n[o++]=d+F|0,n[o++]=p+P|0,n[o++]=m+N|0,n[o++]=y+I|0,n[o++]=g+R|0,n[o++]=b+O|0,n[o++]=v+M|0,n[o++]=A+L|0,n[o++]=T+V|0,n[o++]=z+_|0,n[o++]=j+te|0}function nS(e,t,r,i,n){let o=i+0,s=i+16*n;for(let a=0;a<16;a++)r[s+a]=e[t+(2*n-1)*16+a];for(let a=0;a<n;a++,o+=16,t+=16){if(NR(r,s,e,t,r,o),a>0)s+=16;NR(r,o,e,t+=16,r,s)}}function gW(e,t,r){let i=em({dkLen:32,asyncTick:10,maxmem:1073742848},r),{N:n,r:o,p:s,dkLen:a,asyncTick:c,maxmem:l,onProgress:u}=i;if(Ct(n,"N"),Ct(o,"r"),Ct(s,"p"),Ct(a,"dkLen"),Ct(c,"asyncTick"),Ct(l,"maxmem"),u!==void 0&&typeof u!=="function")throw Error("progressCb must be a function");let d=128*o,p=d/4,m=Math.pow(2,32);if(n<=1||(n&n-1)!==0||n>m)throw Error('"N" expected a power of 2, and 2^1 <= N <= 2^32');if(s<1||s>(m-1)*32/d)throw Error('"p" expected integer 1..((2^32 - 1) * 32) / (128 * r)');if(a<1||a>(m-1)*32)throw Error('"dkLen" expected integer 1..(2^32 - 1) * 32');let y=d*(n+s+1);if(y>l)throw Error('"maxmem" limit was hit: memUsed(128*r*(N+p+1))='+y+", maxmem="+l);let g=rS(Ot,e,t,{c:1,dkLen:d*s}),b=Yp(g),v=Yp(new Uint8Array(d*n)),A=Yp(new Uint8Array(d)),T=()=>{};if(u){let z=2*n*s,j=Math.max(Math.floor(z/1e4),1),E=0;T=()=>{if(E++,u&&(!(E%j)||E===z))u(E/z)}}return{N:n,r:o,p:s,dkLen:a,blockSize32:p,V:v,B32:b,B:g,tmp:A,blockMixCb:T,asyncTick:c}}function yW(e,t,r,i,n){let o=rS(Ot,e,r,{c:1,dkLen:t});return Ar(r,i,n),o}function iS(e,t,r){let{N:i,r:n,p:o,dkLen:s,blockSize32:a,V:c,B32:l,B:u,tmp:d,blockMixCb:p}=gW(e,t,r);qx(l);for(let m=0;m<o;m++){let y=a*m;for(let g=0;g<a;g++)c[g]=l[y+g];for(let g=0,b=0;g<i-1;g++)nS(c,b,c,b+=a,n),p();nS(c,(i-1)*a,l,y,n),p();for(let g=0;g<i;g++){let b=(l[y+a-16]&i-1)>>>0;for(let v=0;v<a;v++)d[v]=l[y+v]^c[b*a+v];nS(d,0,l,y,n),p()}}return qx(l),yW(e,s,u,c,d)}/*! noble-ciphers - MIT License (c) 2023 Paul Miller (paulmillr.com) */function bW(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name==="Uint8Array"&&"BYTES_PER_ELEMENT"in e&&e.BYTES_PER_ELEMENT===1}function um(e){if(typeof e!=="boolean")throw TypeError(`boolean expected, not ${e}`)}function cc(e){if(typeof e!=="number")throw TypeError("number expected, got "+typeof e);if(!Number.isSafeInteger(e)||e<0)throw RangeError("positive integer expected, got "+e)}function Ft(e,t,r=""){let i=bW(e),n=e?.length,o=t!==void 0;if(!i||o&&n!==t){let s=r&&`"${r}" `,a=o?` of length ${t}`:"",c=i?`length=${n}`:`type=${typeof e}`,l=s+"expected Uint8Array"+a+", got "+c;if(!i)throw TypeError(l);throw RangeError(l)}return e}function oS(e,t=!0){if(e.destroyed)throw Error("Hash instance has been destroyed");if(t&&e.finished)throw Error("Hash#digest() has already been called")}function DR(e,t,r=!1){Ft(e,void 0,"output");let i=t.outputLen;if(e.length<i)throw RangeError("digestInto() expects output buffer of length at least "+i);if(r&&!lc(e))throw Error("invalid output, must be aligned")}function ti(e){return new Uint32Array(e.buffer,e.byteOffset,Math.floor(e.byteLength/4))}function zn(...e){for(let t=0;t<e.length;t++)e[t].fill(0)}function xW(e){return new DataView(e.buffer,e.byteOffset,e.byteLength)}var Cs=(()=>new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68)(),SW=(e)=>e<<24&4278190080|e<<8&16711680|e>>>8&65280|e>>>24&255;var wW=(e)=>{for(let t=0;t<e.length;t++)e[t]=SW(e[t]);return e},Ci=Cs?(e)=>e:wW;function LR(e,t){if(t==null||typeof t!=="object")throw Error("options must be defined");return Object.assign(e,t)}function BR(e,t){if(e.length!==t.length)return!1;let r=0;for(let i=0;i<e.length;i++)r|=e[i]^t[i];return r===0}function jR(e,t,r){let i=t,n=r||(()=>[]),o=(a,c)=>i(c,...n(a)).update(a).digest(),s=i(new Uint8Array(e),...n(new Uint8Array(0)));return o.outputLen=s.outputLen,o.blockLen=s.blockLen,o.create=(a,...c)=>i(a,...c),o}var qR=(e,t)=>{function r(i,...n){if(Ft(i,void 0,"key"),e.nonceLength!==void 0){let u=n[0];Ft(u,e.varSizeNonce?void 0:e.nonceLength,"nonce")}let o=e.tagLength;if(o&&n[1]!==void 0)Ft(n[1],void 0,"AAD");let s=t(i,...n),a=(u,d)=>{if(d!==void 0){if(u!==2)throw Error("cipher output not supported");Ft(d,void 0,"output")}},c=!1;return{encrypt(u,d){if(c)throw Error("cannot encrypt() twice with same key + nonce");return c=!0,Ft(u),a(s.encrypt.length,d),s.encrypt(u,d)},decrypt(u,d){if(Ft(u),o&&u.length<o)throw Error('"ciphertext" expected length bigger than tagLength='+o);return a(s.decrypt.length,d),s.decrypt(u,d)}}}return Object.assign(r,e),r};function Bu(e,t,r=!0){if(t===void 0)return new Uint8Array(e);if(Ft(t,void 0,"output"),t.length!==e)throw Error('"output" expected Uint8Array of length '+e+", got: "+t.length);if(r&&!lc(t))throw Error("invalid output, must be aligned");return t}function UR(e,t,r){cc(e),cc(t),um(r);let i=new Uint8Array(16),n=xW(i);return n.setBigUint64(0,BigInt(t),r),n.setBigUint64(8,BigInt(e),r),i}function lc(e){return e.byteOffset%4===0}function uc(e){return Uint8Array.from(Ft(e))}var MR=(e)=>Uint8Array.from(e.split(""),(t)=>t.charCodeAt(0)),vW=(()=>Ci(ti(MR("expand 16-byte k"))))(),_W=(()=>Ci(ti(MR("expand 32-byte k"))))();function Xe(e,t){return e<<t|e>>>32-t}var ju=64,kW=16,sS=(()=>4294967295)(),FR=Uint32Array.of();function EW(e,t,r,i,n,o,s,a){let c=n.length,l=new Uint8Array(ju),u=ti(l),d=Cs&&lc(n)&&lc(o),p=d?ti(n):FR,m=d?ti(o):FR;if(!Cs){for(let y=0;y<c;s++){if(e(t,r,i,u,s,a),Ci(u),s>=sS)throw Error("arx: counter overflow");let g=Math.min(ju,c-y);for(let b=0,v;b<g;b++)v=y+b,o[v]=n[v]^l[b];y+=g}return}for(let y=0;y<c;s++){if(e(t,r,i,u,s,a),s>=sS)throw Error("arx: counter overflow");let g=Math.min(ju,c-y);if(d&&g===ju){let b=y/4;if(y%4!==0)throw Error("arx: invalid block position");for(let v=0,A;v<kW;v++)A=b+v,m[A]=p[A]^u[v];y+=ju;continue}for(let b=0,v;b<g;b++)v=y+b,o[v]=n[v]^l[b];y+=g}}function ZR(e,t){let{allowShortKeys:r,extendNonceFn:i,counterLength:n,counterRight:o,rounds:s}=LR({allowShortKeys:!1,counterLength:8,counterRight:!1,rounds:20},t);if(typeof e!=="function")throw Error("core must be a function");return cc(n),cc(s),um(o),um(r),(a,c,l,u,d=0)=>{Ft(a,void 0,"key"),Ft(c,void 0,"nonce"),Ft(l,void 0,"data");let p=l.length;if(u=Bu(p,u,!1),cc(d),d<0||d>=sS)throw Error("arx: counter overflow");let m=[],y=a.length,g,b;if(y===32)m.push(g=uc(a)),b=_W;else if(y===16&&r)g=new Uint8Array(32),g.set(a),g.set(a,16),b=vW,m.push(g);else throw Ft(a,32,"arx key"),Error("invalid key size");if(!Cs||!lc(c))m.push(c=uc(c));let v=ti(g);if(i){if(c.length!==24)throw Error("arx: extended nonce must be 24 bytes");let z=c.subarray(0,16);if(Cs)i(b,v,ti(z),v);else{let j=Ci(Uint32Array.from(b));i(j,v,ti(z),v),zn(j),Ci(v)}c=c.subarray(16)}else if(!Cs)Ci(v);let A=16-n;if(A!==c.length)throw Error(`arx: nonce must be ${A} or 16 bytes`);if(A!==12){let z=new Uint8Array(12);z.set(c,o?0:12-c.length),c=z,m.push(c)}let T=Ci(ti(c));try{return EW(e,b,v,T,l,u,d,s),u}finally{zn(...m)}}}function ir(e,t){return e[t++]&255|(e[t++]&255)<<8}class HR{blockLen=16;outputLen=16;buffer=new Uint8Array(16);r=new Uint16Array(10);h=new Uint16Array(10);pad=new Uint16Array(8);pos=0;finished=!1;destroyed=!1;constructor(e){e=uc(Ft(e,32,"key"));let t=ir(e,0),r=ir(e,2),i=ir(e,4),n=ir(e,6),o=ir(e,8),s=ir(e,10),a=ir(e,12),c=ir(e,14);this.r[0]=t&8191,this.r[1]=(t>>>13|r<<3)&8191,this.r[2]=(r>>>10|i<<6)&7939,this.r[3]=(i>>>7|n<<9)&8191,this.r[4]=(n>>>4|o<<12)&255,this.r[5]=o>>>1&8190,this.r[6]=(o>>>14|s<<2)&8191,this.r[7]=(s>>>11|a<<5)&8065,this.r[8]=(a>>>8|c<<8)&8191,this.r[9]=c>>>5&127;for(let l=0;l<8;l++)this.pad[l]=ir(e,16+2*l)}process(e,t,r=!1){let i=r?0:2048,{h:n,r:o}=this,s=o[0],a=o[1],c=o[2],l=o[3],u=o[4],d=o[5],p=o[6],m=o[7],y=o[8],g=o[9],b=ir(e,t+0),v=ir(e,t+2),A=ir(e,t+4),T=ir(e,t+6),z=ir(e,t+8),j=ir(e,t+10),E=ir(e,t+12),Z=ir(e,t+14),D=n[0]+(b&8191),H=n[1]+((b>>>13|v<<3)&8191),X=n[2]+((v>>>10|A<<6)&8191),F=n[3]+((A>>>7|T<<9)&8191),P=n[4]+((T>>>4|z<<12)&8191),N=n[5]+(z>>>1&8191),I=n[6]+((z>>>14|j<<2)&8191),R=n[7]+((j>>>11|E<<5)&8191),O=n[8]+((E>>>8|Z<<8)&8191),M=n[9]+(Z>>>5|i),L=0,V=L+D*s+H*(5*g)+X*(5*y)+F*(5*m)+P*(5*p);L=V>>>13,V&=8191,V+=N*(5*d)+I*(5*u)+R*(5*l)+O*(5*c)+M*(5*a),L+=V>>>13,V&=8191;let _=L+D*a+H*s+X*(5*g)+F*(5*y)+P*(5*m);L=_>>>13,_&=8191,_+=N*(5*p)+I*(5*d)+R*(5*u)+O*(5*l)+M*(5*c),L+=_>>>13,_&=8191;let te=L+D*c+H*a+X*s+F*(5*g)+P*(5*y);L=te>>>13,te&=8191,te+=N*(5*m)+I*(5*p)+R*(5*d)+O*(5*u)+M*(5*l),L+=te>>>13,te&=8191;let ue=L+D*l+H*c+X*a+F*s+P*(5*g);L=ue>>>13,ue&=8191,ue+=N*(5*y)+I*(5*m)+R*(5*p)+O*(5*d)+M*(5*u),L+=ue>>>13,ue&=8191;let C=L+D*u+H*l+X*c+F*a+P*s;L=C>>>13,C&=8191,C+=N*(5*g)+I*(5*y)+R*(5*m)+O*(5*p)+M*(5*d),L+=C>>>13,C&=8191;let Se=L+D*d+H*u+X*l+F*c+P*a;L=Se>>>13,Se&=8191,Se+=N*s+I*(5*g)+R*(5*y)+O*(5*m)+M*(5*p),L+=Se>>>13,Se&=8191;let Ee=L+D*p+H*d+X*u+F*l+P*c;L=Ee>>>13,Ee&=8191,Ee+=N*a+I*s+R*(5*g)+O*(5*y)+M*(5*m),L+=Ee>>>13,Ee&=8191;let Ce=L+D*m+H*p+X*d+F*u+P*l;L=Ce>>>13,Ce&=8191,Ce+=N*c+I*a+R*s+O*(5*g)+M*(5*y),L+=Ce>>>13,Ce&=8191;let $e=L+D*y+H*m+X*p+F*d+P*u;L=$e>>>13,$e&=8191,$e+=N*l+I*c+R*a+O*s+M*(5*g),L+=$e>>>13,$e&=8191;let _e=L+D*g+H*y+X*m+F*p+P*d;L=_e>>>13,_e&=8191,_e+=N*u+I*l+R*c+O*a+M*s,L+=_e>>>13,_e&=8191,L=(L<<2)+L|0,L=L+V|0,V=L&8191,L=L>>>13,_+=L,n[0]=V,n[1]=_,n[2]=te,n[3]=ue,n[4]=C,n[5]=Se,n[6]=Ee,n[7]=Ce,n[8]=$e,n[9]=_e}finalize(){let{h:e,pad:t}=this,r=new Uint16Array(10),i=e[1]>>>13;e[1]&=8191;for(let s=2;s<10;s++)e[s]+=i,i=e[s]>>>13,e[s]&=8191;e[0]+=i*5,i=e[0]>>>13,e[0]&=8191,e[1]+=i,i=e[1]>>>13,e[1]&=8191,e[2]+=i,r[0]=e[0]+5,i=r[0]>>>13,r[0]&=8191;for(let s=1;s<10;s++)r[s]=e[s]+i,i=r[s]>>>13,r[s]&=8191;r[9]-=8192;let n=(i^1)-1;for(let s=0;s<10;s++)r[s]&=n;n=~n;for(let s=0;s<10;s++)e[s]=e[s]&n|r[s];e[0]=(e[0]|e[1]<<13)&65535,e[1]=(e[1]>>>3|e[2]<<10)&65535,e[2]=(e[2]>>>6|e[3]<<7)&65535,e[3]=(e[3]>>>9|e[4]<<4)&65535,e[4]=(e[4]>>>12|e[5]<<1|e[6]<<14)&65535,e[5]=(e[6]>>>2|e[7]<<11)&65535,e[6]=(e[7]>>>5|e[8]<<8)&65535,e[7]=(e[8]>>>8|e[9]<<5)&65535;let o=e[0]+t[0];e[0]=o&65535;for(let s=1;s<8;s++)o=(e[s]+t[s]|0)+(o>>>16)|0,e[s]=o&65535;zn(r)}update(e){oS(this),Ft(e),e=uc(e);let{buffer:t,blockLen:r}=this,i=e.length;for(let n=0;n<i;){let o=Math.min(r-this.pos,i-n);if(o===r){for(;r<=i-n;n+=r)this.process(e,n);continue}if(t.set(e.subarray(n,n+o),this.pos),this.pos+=o,n+=o,this.pos===r)this.process(t,0,!1),this.pos=0}return this}destroy(){this.destroyed=!0,zn(this.h,this.r,this.buffer,this.pad)}digestInto(e){oS(this),DR(e,this),this.finished=!0;let{buffer:t,h:r}=this,{pos:i}=this;if(i){t[i++]=1;for(;i<16;i++)t[i]=0;this.process(t,0,!0)}this.finalize();let n=0;for(let o=0;o<8;o++)e[n++]=r[o]>>>0,e[n++]=r[o]>>>8}digest(){let{buffer:e,outputLen:t}=this;this.digestInto(e);let r=e.slice(0,t);return this.destroy(),r}}var JR=jR(32,(e)=>new HR(e));function IW(e,t,r,i,n,o=20){let s=e[0],a=e[1],c=e[2],l=e[3],u=t[0],d=t[1],p=t[2],m=t[3],y=t[4],g=t[5],b=t[6],v=t[7],A=n,T=r[0],z=r[1],j=r[2],E=s,Z=a,D=c,H=l,X=u,F=d,P=p,N=m,I=y,R=g,O=b,M=v,L=A,V=T,_=z,te=j;for(let C=0;C<o;C+=2)E=E+X|0,L=Xe(L^E,16),I=I+L|0,X=Xe(X^I,12),E=E+X|0,L=Xe(L^E,8),I=I+L|0,X=Xe(X^I,7),Z=Z+F|0,V=Xe(V^Z,16),R=R+V|0,F=Xe(F^R,12),Z=Z+F|0,V=Xe(V^Z,8),R=R+V|0,F=Xe(F^R,7),D=D+P|0,_=Xe(_^D,16),O=O+_|0,P=Xe(P^O,12),D=D+P|0,_=Xe(_^D,8),O=O+_|0,P=Xe(P^O,7),H=H+N|0,te=Xe(te^H,16),M=M+te|0,N=Xe(N^M,12),H=H+N|0,te=Xe(te^H,8),M=M+te|0,N=Xe(N^M,7),E=E+F|0,te=Xe(te^E,16),O=O+te|0,F=Xe(F^O,12),E=E+F|0,te=Xe(te^E,8),O=O+te|0,F=Xe(F^O,7),Z=Z+P|0,L=Xe(L^Z,16),M=M+L|0,P=Xe(P^M,12),Z=Z+P|0,L=Xe(L^Z,8),M=M+L|0,P=Xe(P^M,7),D=D+N|0,V=Xe(V^D,16),I=I+V|0,N=Xe(N^I,12),D=D+N|0,V=Xe(V^D,8),I=I+V|0,N=Xe(N^I,7),H=H+X|0,_=Xe(_^H,16),R=R+_|0,X=Xe(X^R,12),H=H+X|0,_=Xe(_^H,8),R=R+_|0,X=Xe(X^R,7);let ue=0;i[ue++]=s+E|0,i[ue++]=a+Z|0,i[ue++]=c+D|0,i[ue++]=l+H|0,i[ue++]=u+X|0,i[ue++]=d+F|0,i[ue++]=p+P|0,i[ue++]=m+N|0,i[ue++]=y+I|0,i[ue++]=g+R|0,i[ue++]=b+O|0,i[ue++]=v+M|0,i[ue++]=A+L|0,i[ue++]=T+V|0,i[ue++]=z+_|0,i[ue++]=j+te|0}var AW=ZR(IW,{counterRight:!1,counterLength:4,allowShortKeys:!1});var TW=new Uint8Array(16),KR=(e,t)=>{e.update(t);let r=t.length%16;if(r)e.update(TW.subarray(r))},$W=new Uint8Array(32);function VR(e,t,r,i,n){if(n!==void 0)Ft(n,void 0,"AAD");let o=e(t,r,$W),s=UR(i.length,n?n.length:0,!0),a=JR.create(o);if(n)KR(a,n);KR(a,i),a.update(s);let c=a.digest();return zn(o,s),c}var CW=(e)=>(t,r,i)=>({encrypt(o,s){let a=o.length;s=Bu(a+16,s,!1),s.set(o);let c=s.subarray(0,-16);e(t,r,c,c,1);let l=VR(e,t,r,c,i);return s.set(l,a),zn(l),s},decrypt(o,s){s=Bu(o.length-16,s,!1);let a=o.subarray(0,-16),c=o.subarray(-16),l=VR(e,t,r,a,i);if(!BR(c,l))throw zn(l),Error("invalid tag");return s.set(o.subarray(0,-16)),e(t,r,s,s,1),zn(l),s}}),yn=qR({blockSize:64,nonceLength:12,tagLength:16},CW(AW));/*! noble-hashes - MIT License (c) 2022 Paul Miller (paulmillr.com) */function dc(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name==="Uint8Array"}function Vt(e,t=""){if(!Number.isSafeInteger(e)||e<0){let r=t&&`"${t}" `;throw Error(`${r}expected integer >= 0, got ${e}`)}}function Ne(e,t,r=""){let i=dc(e),n=e?.length,o=t!==void 0;if(!i||o&&n!==t){let s=r&&`"${r}" `,a=o?` of length ${t}`:"",c=i?`length=${n}`:`type=${typeof e}`;throw Error(s+"expected Uint8Array"+a+", got "+c)}return e}function bn(e){if(typeof e!=="function"||typeof e.create!=="function")throw Error("Hash must wrapped by utils.createHasher");Vt(e.outputLen),Vt(e.blockLen)}function Ri(e,t=!0){if(e.destroyed)throw Error("Hash instance has been destroyed");if(t&&e.finished)throw Error("Hash#digest() has already been called")}function dm(e,t){Ne(e,void 0,"digestInto() output");let r=t.outputLen;if(e.length<r)throw Error('"digestInto() output" expected to be of length >='+r)}function fm(e){return new Uint32Array(e.buffer,e.byteOffset,Math.floor(e.byteLength/4))}function Fr(...e){for(let t=0;t<e.length;t++)e[t].fill(0)}function pm(e){return new DataView(e.buffer,e.byteOffset,e.byteLength)}function Nn(e,t){return e<<32-t|e>>>t}var OW=(()=>new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68)();function RW(e){return e<<24&4278190080|e<<8&16711680|e>>>8&65280|e>>>24&255}function PW(e){for(let t=0;t<e.length;t++)e[t]=RW(e[t]);return e}var aS=OW?(e)=>e:PW,GR=(()=>typeof Uint8Array.from([]).toHex==="function"&&typeof Uint8Array.fromHex==="function")(),zW=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,"0"));function Os(e){if(Ne(e),GR)return e.toHex();let t="";for(let r=0;r<e.length;r++)t+=zW[e[r]];return t}var Oi={_0:48,_9:57,A:65,F:70,a:97,f:102};function WR(e){if(e>=Oi._0&&e<=Oi._9)return e-Oi._0;if(e>=Oi.A&&e<=Oi.F)return e-(Oi.A-10);if(e>=Oi.a&&e<=Oi.f)return e-(Oi.a-10);return}function Rs(e){if(typeof e!=="string")throw Error("hex string expected, got "+typeof e);if(GR)return Uint8Array.fromHex(e);let t=e.length,r=t/2;if(t%2)throw Error("hex string expected, got unpadded hex of length "+t);let i=new Uint8Array(r);for(let n=0,o=0;n<r;n++,o+=2){let s=WR(e.charCodeAt(o)),a=WR(e.charCodeAt(o+1));if(s===void 0||a===void 0){let c=e[o]+e[o+1];throw Error('hex string expected, got non-hex character "'+c+'" at index '+o)}i[n]=s*16+a}return i}function Lt(...e){let t=0;for(let i=0;i<e.length;i++){let n=e[i];Ne(n),t+=n.length}let r=new Uint8Array(t);for(let i=0,n=0;i<e.length;i++){let o=e[i];r.set(o,n),n+=o.length}return r}function fc(e,t={}){let r=(n,o)=>e(o).update(n).digest(),i=e(void 0);return r.outputLen=i.outputLen,r.blockLen=i.blockLen,r.create=(n)=>e(n),Object.assign(r,t),Object.freeze(r)}function xo(e=32){let t=typeof globalThis==="object"?globalThis.crypto:null;if(typeof t?.getRandomValues!=="function")throw Error("crypto.getRandomValues must be defined");return t.getRandomValues(new Uint8Array(e))}var So=(e)=>({oid:Uint8Array.from([6,9,96,134,72,1,101,3,4,2,e])});/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */var lS=BigInt(0),cS=BigInt(1);function qu(e,t=""){if(typeof e!=="boolean"){let r=t&&`"${t}" `;throw Error(r+"expected boolean, got type="+typeof e)}return e}function QR(e){if(typeof e==="bigint"){if(!mm(e))throw Error("positive bigint expected, got "+e)}else Vt(e);return e}function Uu(e){let t=QR(e).toString(16);return t.length&1?"0"+t:t}function YR(e){if(typeof e!=="string")throw Error("hex string expected, got "+typeof e);return e===""?lS:BigInt("0x"+e)}function wo(e){return YR(Os(e))}function vo(e){return YR(Os(hm(Ne(e)).reverse()))}function pc(e,t){Vt(t),e=QR(e);let r=Rs(e.toString(16).padStart(t*2,"0"));if(r.length!==t)throw Error("number too large");return r}function Fu(e,t){return pc(e,t).reverse()}function hm(e){return Uint8Array.from(e)}function _o(e){return Uint8Array.from(e,(t,r)=>{let i=t.charCodeAt(0);if(t.length!==1||i>127)throw Error(`string contains non-ASCII character "${e[r]}" with code ${i} at position ${r}`);return i})}var mm=(e)=>typeof e==="bigint"&&lS<=e;function NW(e,t,r){return mm(e)&&mm(t)&&mm(r)&&t<=e&&e<r}function Mu(e,t,r,i){if(!NW(t,r,i))throw Error("expected valid "+e+": "+r+" <= n < "+i+", got "+t)}function uS(e){let t;for(t=0;e>lS;e>>=cS,t+=1);return t}var Zu=(e)=>(cS<<BigInt(e))-cS;function XR(e,t,r){if(Vt(e,"hashLen"),Vt(t,"qByteLen"),typeof r!=="function")throw Error("hmacFn must be a function");let i=(b)=>new Uint8Array(b),n=Uint8Array.of(),o=Uint8Array.of(0),s=Uint8Array.of(1),a=1000,c=i(e),l=i(e),u=0,d=()=>{c.fill(1),l.fill(0),u=0},p=(...b)=>r(l,Lt(c,...b)),m=(b=n)=>{if(l=p(o,b),c=p(),b.length===0)return;l=p(s,b),c=p()},y=()=>{if(u++>=a)throw Error("drbg: tried max amount of iterations");let b=0,v=[];while(b<t){c=p();let A=c.slice();v.push(A),b+=c.length}return Lt(...v)};return(b,v)=>{d(),m(b);let A=void 0;while(!(A=v(y())))m();return d(),A}}function Ps(e,t={},r={}){if(!e||typeof e!=="object")throw Error("expected valid options object");function i(o,s,a){let c=e[o];if(a&&c===void 0)return;let l=typeof c;if(l!==s||c===null)throw Error(`param "${o}" is invalid: expected ${s}, got ${l}`)}let n=(o,s)=>Object.entries(o).forEach(([a,c])=>i(a,c,s));n(t,!1),n(r,!0)}function dS(e){let t=new WeakMap;return(r,...i)=>{let n=t.get(r);if(n!==void 0)return n;let o=e(r,...i);return t.set(r,o),o}}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */var $r=BigInt(0),yr=BigInt(1),zs=BigInt(2),rP=BigInt(3),nP=BigInt(4),iP=BigInt(5),DW=BigInt(7),oP=BigInt(8),LW=BigInt(9),sP=BigInt(16);function Tr(e,t){let r=e%t;return r>=$r?r:t+r}function xn(e,t,r){let i=e;while(t-- >$r)i*=i,i%=r;return i}function eP(e,t){if(e===$r)throw Error("invert: expected non-zero number");if(t<=$r)throw Error("invert: expected positive modulus, got "+t);let r=Tr(e,t),i=t,n=$r,o=yr,s=yr,a=$r;while(r!==$r){let l=i/r,u=i%r,d=n-s*l,p=o-a*l;i=r,r=u,n=s,o=a,s=d,a=p}if(i!==yr)throw Error("invert: does not exist");return Tr(n,t)}function fS(e,t,r){if(!e.eql(e.sqr(t),r))throw Error("Cannot find square root")}function aP(e,t){let r=(e.ORDER+yr)/nP,i=e.pow(t,r);return fS(e,i,t),i}function BW(e,t){let r=(e.ORDER-iP)/oP,i=e.mul(t,zs),n=e.pow(i,r),o=e.mul(t,n),s=e.mul(e.mul(o,zs),n),a=e.mul(o,e.sub(s,e.ONE));return fS(e,a,t),a}function jW(e){let t=gm(e),r=cP(e),i=r(t,t.neg(t.ONE)),n=r(t,i),o=r(t,t.neg(i)),s=(e+DW)/sP;return(a,c)=>{let l=a.pow(c,s),u=a.mul(l,i),d=a.mul(l,n),p=a.mul(l,o),m=a.eql(a.sqr(u),c),y=a.eql(a.sqr(d),c);l=a.cmov(l,u,m),u=a.cmov(p,d,y);let g=a.eql(a.sqr(u),c),b=a.cmov(l,u,g);return fS(a,b,c),b}}function cP(e){if(e<rP)throw Error("sqrt is not defined for small field");let t=e-yr,r=0;while(t%zs===$r)t/=zs,r++;let i=zs,n=gm(e);while(tP(n,i)===1)if(i++>1000)throw Error("Cannot find square root: probably non-prime P");if(r===1)return aP;let o=n.pow(i,t),s=(t+yr)/zs;return function(c,l){if(c.is0(l))return l;if(tP(c,l)!==1)throw Error("Cannot find square root");let u=r,d=c.mul(c.ONE,o),p=c.pow(l,t),m=c.pow(l,s);while(!c.eql(p,c.ONE)){if(c.is0(p))return c.ZERO;let y=1,g=c.sqr(p);while(!c.eql(g,c.ONE))if(y++,g=c.sqr(g),y===u)throw Error("Cannot find square root");let b=yr<<BigInt(u-y-1),v=c.pow(d,b);u=y,d=c.sqr(v),p=c.mul(p,d),m=c.mul(m,v)}return m}}function qW(e){if(e%nP===rP)return aP;if(e%oP===iP)return BW;if(e%sP===LW)return jW(e);return cP(e)}var UW=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function pS(e){let t={ORDER:"bigint",BYTES:"number",BITS:"number"},r=UW.reduce((i,n)=>(i[n]="function",i),t);return Ps(e,r),e}function FW(e,t,r){if(r<$r)throw Error("invalid exponent, negatives unsupported");if(r===$r)return e.ONE;if(r===yr)return t;let i=e.ONE,n=t;while(r>$r){if(r&yr)i=e.mul(i,n);n=e.sqr(n),r>>=yr}return i}function Hu(e,t,r=!1){let i=Array(t.length).fill(r?e.ZERO:void 0),n=t.reduce((s,a,c)=>{if(e.is0(a))return s;return i[c]=s,e.mul(s,a)},e.ONE),o=e.inv(n);return t.reduceRight((s,a,c)=>{if(e.is0(a))return s;return i[c]=e.mul(s,i[c]),e.mul(s,a)},o),i}function tP(e,t){let r=(e.ORDER-yr)/zs,i=e.pow(t,r),n=e.eql(i,e.ONE),o=e.eql(i,e.ZERO),s=e.eql(i,e.neg(e.ONE));if(!n&&!o&&!s)throw Error("invalid Legendre symbol result");return n?1:o?0:-1}function MW(e,t){if(t!==void 0)Vt(t);let r=t!==void 0?t:e.toString(2).length,i=Math.ceil(r/8);return{nBitLength:r,nByteLength:i}}class lP{ORDER;BITS;BYTES;isLE;ZERO=$r;ONE=yr;_lengths;_sqrt;_mod;constructor(e,t={}){if(e<=$r)throw Error("invalid field: expected ORDER > 0, got "+e);let r=void 0;if(this.isLE=!1,t!=null&&typeof t==="object"){if(typeof t.BITS==="number")r=t.BITS;if(typeof t.sqrt==="function")this.sqrt=t.sqrt;if(typeof t.isLE==="boolean")this.isLE=t.isLE;if(t.allowedLengths)this._lengths=t.allowedLengths?.slice();if(typeof t.modFromBytes==="boolean")this._mod=t.modFromBytes}let{nBitLength:i,nByteLength:n}=MW(e,r);if(n>2048)throw Error("invalid field: expected ORDER of <= 2048 bytes");this.ORDER=e,this.BITS=i,this.BYTES=n,this._sqrt=void 0,Object.preventExtensions(this)}create(e){return Tr(e,this.ORDER)}isValid(e){if(typeof e!=="bigint")throw Error("invalid field element: expected bigint, got "+typeof e);return $r<=e&&e<this.ORDER}is0(e){return e===$r}isValidNot0(e){return!this.is0(e)&&this.isValid(e)}isOdd(e){return(e&yr)===yr}neg(e){return Tr(-e,this.ORDER)}eql(e,t){return e===t}sqr(e){return Tr(e*e,this.ORDER)}add(e,t){return Tr(e+t,this.ORDER)}sub(e,t){return Tr(e-t,this.ORDER)}mul(e,t){return Tr(e*t,this.ORDER)}pow(e,t){return FW(this,e,t)}div(e,t){return Tr(e*eP(t,this.ORDER),this.ORDER)}sqrN(e){return e*e}addN(e,t){return e+t}subN(e,t){return e-t}mulN(e,t){return e*t}inv(e){return eP(e,this.ORDER)}sqrt(e){if(!this._sqrt)this._sqrt=qW(this.ORDER);return this._sqrt(this,e)}toBytes(e){return this.isLE?Fu(e,this.BYTES):pc(e,this.BYTES)}fromBytes(e,t=!1){Ne(e);let{_lengths:r,BYTES:i,isLE:n,ORDER:o,_mod:s}=this;if(r){if(!r.includes(e.length)||e.length>i)throw Error("Field.fromBytes: expected "+r+" bytes, got "+e.length);let c=new Uint8Array(i);c.set(e,n?0:c.length-e.length),e=c}if(e.length!==i)throw Error("Field.fromBytes: expected "+i+" bytes, got "+e.length);let a=n?vo(e):wo(e);if(s)a=Tr(a,o);if(!t){if(!this.isValid(a))throw Error("invalid field element: outside of range 0..ORDER")}return a}invertBatch(e){return Hu(this,e)}cmov(e,t,r){return r?t:e}}function gm(e,t={}){return new lP(e,t)}function uP(e){if(typeof e!=="bigint")throw Error("field order must be bigint");let t=e.toString(2).length;return Math.ceil(t/8)}function mS(e){let t=uP(e);return t+Math.ceil(t/2)}function dP(e,t,r=!1){Ne(e);let i=e.length,n=uP(t),o=mS(t);if(i<16||i<o||i>1024)throw Error("expected "+o+"-1024 bytes of input, got "+i);let s=r?vo(e):wo(e),a=Tr(s,t-yr)+yr;return r?Fu(a,n):pc(a,n)}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */var mc=BigInt(0),Ns=BigInt(1);function Ju(e,t){let r=t.negate();return e?r:t}function bS(e,t){let r=Hu(e.Fp,t.map((i)=>i.Z));return t.map((i,n)=>e.fromAffine(i.toAffine(r[n])))}function hP(e,t){if(!Number.isSafeInteger(e)||e<=0||e>t)throw Error("invalid window size, expected [1.."+t+"], got W="+e)}function hS(e,t){hP(e,t);let r=Math.ceil(t/e)+1,i=2**(e-1),n=2**e,o=Zu(e),s=BigInt(e);return{windows:r,windowSize:i,mask:o,maxNumber:n,shiftBy:s}}function fP(e,t,r){let{windowSize:i,mask:n,maxNumber:o,shiftBy:s}=r,a=Number(e&n),c=e>>s;if(a>i)a-=o,c+=Ns;let l=t*i,u=l+Math.abs(a)-1,d=a===0,p=a<0,m=t%2!==0;return{nextN:c,offset:u,isZero:d,isNeg:p,isNegF:m,offsetF:l}}var gS=new WeakMap,gP=new WeakMap;function yS(e){return gP.get(e)||1}function pP(e){if(e!==mc)throw Error("invalid wNAF")}class xS{BASE;ZERO;Fn;bits;constructor(e,t){this.BASE=e.BASE,this.ZERO=e.ZERO,this.Fn=e.Fn,this.bits=t}_unsafeLadder(e,t,r=this.ZERO){let i=e;while(t>mc){if(t&Ns)r=r.add(i);i=i.double(),t>>=Ns}return r}precomputeWindow(e,t){let{windows:r,windowSize:i}=hS(t,this.bits),n=[],o=e,s=o;for(let a=0;a<r;a++){s=o,n.push(s);for(let c=1;c<i;c++)s=s.add(o),n.push(s);o=s.double()}return n}wNAF(e,t,r){if(!this.Fn.isValid(r))throw Error("invalid scalar");let i=this.ZERO,n=this.BASE,o=hS(e,this.bits);for(let s=0;s<o.windows;s++){let{nextN:a,offset:c,isZero:l,isNeg:u,isNegF:d,offsetF:p}=fP(r,s,o);if(r=a,l)n=n.add(Ju(d,t[p]));else i=i.add(Ju(u,t[c]))}return pP(r),{p:i,f:n}}wNAFUnsafe(e,t,r,i=this.ZERO){let n=hS(e,this.bits);for(let o=0;o<n.windows;o++){if(r===mc)break;let{nextN:s,offset:a,isZero:c,isNeg:l}=fP(r,o,n);if(r=s,c)continue;else{let u=t[a];i=i.add(l?u.negate():u)}}return pP(r),i}getPrecomputes(e,t,r){let i=gS.get(t);if(!i){if(i=this.precomputeWindow(t,e),e!==1){if(typeof r==="function")i=r(i);gS.set(t,i)}}return i}cached(e,t,r){let i=yS(e);return this.wNAF(i,this.getPrecomputes(i,e,r),t)}unsafe(e,t,r,i){let n=yS(e);if(n===1)return this._unsafeLadder(e,t,i);return this.wNAFUnsafe(n,this.getPrecomputes(n,e,r),t,i)}createCache(e,t){hP(t,this.bits),gP.set(e,t),gS.delete(e)}hasCache(e){return yS(e)!==1}}function yP(e,t,r,i){let n=t,o=e.ZERO,s=e.ZERO;while(r>mc||i>mc){if(r&Ns)o=o.add(n);if(i&Ns)s=s.add(n);n=n.double(),r>>=Ns,i>>=Ns}return{p1:o,p2:s}}function mP(e,t,r){if(t){if(t.ORDER!==e)throw Error("Field.ORDER must match order: Fp == p, Fn == n");return pS(t),t}else return gm(e,{isLE:r})}function bP(e,t,r={},i){if(i===void 0)i=e==="edwards";if(!t||typeof t!=="object")throw Error(`expected valid ${e} CURVE object`);for(let c of["p","n","h"]){let l=t[c];if(!(typeof l==="bigint"&&l>mc))throw Error(`CURVE.${c} must be positive bigint`)}let n=mP(t.p,r.Fp,i),o=mP(t.n,r.Fn,i),a=["Gx","Gy","a",e==="weierstrass"?"b":"d"];for(let c of a)if(!n.isValid(t[c]))throw Error(`CURVE.${c} must be valid field element of CURVE.Fp`);return t=Object.freeze(Object.assign({},t)),{CURVE:t,Fp:n,Fn:o}}function ym(e,t){return function(i){let n=e(i);return{secretKey:n,publicKey:t(n)}}}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */var Ku=BigInt(0),hc=BigInt(1),bm=BigInt(2);function ZW(e){return Ps(e,{adjustScalarBytes:"function",powPminus2:"function"}),Object.freeze({...e})}function xP(e){let t=ZW(e),{P:r,type:i,adjustScalarBytes:n,powPminus2:o,randomBytes:s}=t,a=i==="x25519";if(!a&&i!=="x448")throw Error("invalid type");let c=s||xo,l=a?255:448,u=a?32:56,d=a?BigInt(9):BigInt(5),p=a?BigInt(121665):BigInt(39081),m=a?bm**BigInt(254):bm**BigInt(447),y=a?BigInt(8)*bm**BigInt(251)-hc:BigInt(4)*bm**BigInt(445)-hc,g=m+y+hc,b=(I)=>Tr(I,r),v=A(d);function A(I){return Fu(b(I),u)}function T(I){let R=hm(Ne(I,u,"uCoordinate"));if(a)R[31]&=127;return b(vo(R))}function z(I){return vo(n(hm(Ne(I,u,"scalar"))))}function j(I,R){let O=X(T(R),z(I));if(O===Ku)throw Error("invalid private or public key received");return A(O)}function E(I){return j(I,v)}let Z=E,D=j;function H(I,R,O){let M=b(I*(R-O));return R=b(R-M),O=b(O+M),{x_2:R,x_3:O}}function X(I,R){Mu("u",I,Ku,r),Mu("scalar",R,m,g);let O=R,M=I,L=hc,V=Ku,_=I,te=hc,ue=Ku;for(let Se=BigInt(l-1);Se>=Ku;Se--){let Ee=O>>Se&hc;ue^=Ee,{x_2:L,x_3:_}=H(ue,L,_),{x_2:V,x_3:te}=H(ue,V,te),ue=Ee;let Ce=L+V,$e=b(Ce*Ce),_e=L-V,Pe=b(_e*_e),Ve=$e-Pe,et=_+te,St=_-te,Dt=b(St*Ce),hr=b(et*_e),Qr=Dt+hr,Yr=Dt-hr;_=b(Qr*Qr),te=b(M*b(Yr*Yr)),L=b($e*Pe),V=b(Ve*($e+b(p*Ve)))}({x_2:L,x_3:_}=H(ue,L,_)),{x_2:V,x_3:te}=H(ue,V,te);let C=o(V);return b(L*C)}let F={secretKey:u,publicKey:u,seed:u},P=(I=c(u))=>(Ne(I,F.seed,"seed"),I),N={randomSecretKey:P};return Object.freeze({keygen:ym(P,Z),getSharedSecret:D,getPublicKey:Z,scalarMult:j,scalarMultBase:E,utils:N,GuBytes:v.slice(),lengths:F})}class SS{oHash;iHash;blockLen;outputLen;finished=!1;destroyed=!1;constructor(e,t){if(bn(e),Ne(t,void 0,"key"),this.iHash=e.create(),typeof this.iHash.update!=="function")throw Error("Expected instance of class which extends utils.Hash");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;let r=this.blockLen,i=new Uint8Array(r);i.set(t.length>r?e.create().update(t).digest():t);for(let n=0;n<i.length;n++)i[n]^=54;this.iHash.update(i),this.oHash=e.create();for(let n=0;n<i.length;n++)i[n]^=106;this.oHash.update(i),Fr(i)}update(e){return Ri(this),this.iHash.update(e),this}digestInto(e){Ri(this),Ne(e,this.outputLen,"output"),this.finished=!0,this.iHash.digestInto(e),this.oHash.update(e),this.oHash.digestInto(e),this.destroy()}digest(){let e=new Uint8Array(this.oHash.outputLen);return this.digestInto(e),e}_cloneInto(e){e||=Object.create(Object.getPrototypeOf(this),{});let{oHash:t,iHash:r,finished:i,destroyed:n,blockLen:o,outputLen:s}=this;return e=e,e.finished=i,e.destroyed=n,e.blockLen=o,e.outputLen=s,e.oHash=t._cloneInto(e.oHash),e.iHash=r._cloneInto(e.iHash),e}clone(){return this._cloneInto()}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}}var gc=(e,t,r)=>new SS(e,t).update(r).digest();gc.create=(e,t)=>new SS(e,t);/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */var SP=(e,t)=>(e+(e>=0?t:-t)/vP)/t;function HW(e,t,r){let[[i,n],[o,s]]=t,a=SP(s*e,r),c=SP(-n*e,r),l=e-a*i-c*o,u=-a*n-c*s,d=l<Pi,p=u<Pi;if(d)l=-l;if(p)u=-u;let m=Zu(Math.ceil(uS(r)/2))+yc;if(l<Pi||l>=m||u<Pi||u>=m)throw Error("splitScalar (endomorphism): failed, k="+e);return{k1neg:d,k1:l,k2neg:p,k2:u}}function vS(e){if(!["compact","recovered","der"].includes(e))throw Error('Signature format must be "compact", "recovered", or "der"');return e}function wS(e,t){let r={};for(let i of Object.keys(t))r[i]=e[i]===void 0?t[i]:e[i];if(qu(r.lowS,"lowS"),qu(r.prehash,"prehash"),r.format!==void 0)vS(r.format);return r}class wP extends Error{constructor(e=""){super(e)}}var ko={Err:wP,_tlv:{encode:(e,t)=>{let{Err:r}=ko;if(e<0||e>256)throw new r("tlv.encode: wrong tag");if(t.length&1)throw new r("tlv.encode: unpadded data");let i=t.length/2,n=Uu(i);if(n.length/2&128)throw new r("tlv.encode: long form length too big");let o=i>127?Uu(n.length/2|128):"";return Uu(e)+o+n+t},decode(e,t){let{Err:r}=ko,i=0;if(e<0||e>256)throw new r("tlv.encode: wrong tag");if(t.length<2||t[i++]!==e)throw new r("tlv.decode: wrong tlv");let n=t[i++],o=!!(n&128),s=0;if(!o)s=n;else{let c=n&127;if(!c)throw new r("tlv.decode(long): indefinite length not supported");if(c>4)throw new r("tlv.decode(long): byte length is too big");let l=t.subarray(i,i+c);if(l.length!==c)throw new r("tlv.decode: length bytes not complete");if(l[0]===0)throw new r("tlv.decode(long): zero leftmost byte");for(let u of l)s=s<<8|u;if(i+=c,s<128)throw new r("tlv.decode(long): not minimal encoding")}let a=t.subarray(i,i+s);if(a.length!==s)throw new r("tlv.decode: wrong value length");return{v:a,l:t.subarray(i+s)}}},_int:{encode(e){let{Err:t}=ko;if(e<Pi)throw new t("integer: negative integers are not allowed");let r=Uu(e);if(Number.parseInt(r[0],16)&8)r="00"+r;if(r.length&1)throw new t("unexpected DER parsing assertion: unpadded hex");return r},decode(e){let{Err:t}=ko;if(e[0]&128)throw new t("invalid signature integer: negative");if(e[0]===0&&!(e[1]&128))throw new t("invalid signature integer: unnecessary leading zero");return wo(e)}},toSig(e){let{Err:t,_int:r,_tlv:i}=ko,n=Ne(e,void 0,"signature"),{v:o,l:s}=i.decode(48,n);if(s.length)throw new t("invalid signature: left bytes after parsing");let{v:a,l:c}=i.decode(2,o),{v:l,l:u}=i.decode(2,c);if(u.length)throw new t("invalid signature: left bytes after parsing");return{r:r.decode(a),s:r.decode(l)}},hexFromSig(e){let{_tlv:t,_int:r}=ko,i=t.encode(2,r.encode(e.r)),n=t.encode(2,r.encode(e.s)),o=i+n;return t.encode(48,o)}},Pi=BigInt(0),yc=BigInt(1),vP=BigInt(2),xm=BigInt(3),JW=BigInt(4);function _S(e,t={}){let r=bP("weierstrass",e,t),{Fp:i,Fn:n}=r,o=r.CURVE,{h:s,n:a}=o;Ps(t,{},{allowInfinityPoint:"boolean",clearCofactor:"function",isTorsionFree:"function",fromBytes:"function",toBytes:"function",endo:"object"});let{endo:c}=t;if(c){if(!i.is0(o.a)||typeof c.beta!=="bigint"||!Array.isArray(c.basises))throw Error('invalid endo: expected "beta": bigint and "basises": array')}let l=kP(i,n);function u(){if(!i.isOdd)throw Error("compression is not supported: Field does not have .isOdd()")}function d(P,N,I){let{x:R,y:O}=N.toAffine(),M=i.toBytes(R);if(qu(I,"isCompressed"),I){u();let L=!i.isOdd(O);return Lt(_P(L),M)}else return Lt(Uint8Array.of(4),M,i.toBytes(O))}function p(P){Ne(P,void 0,"Point");let{publicKey:N,publicKeyUncompressed:I}=l,R=P.length,O=P[0],M=P.subarray(1);if(R===N&&(O===2||O===3)){let L=i.fromBytes(M);if(!i.isValid(L))throw Error("bad point: is not on curve, wrong x");let V=g(L),_;try{_=i.sqrt(V)}catch(C){let Se=C instanceof Error?": "+C.message:"";throw Error("bad point: is not on curve, sqrt error"+Se)}u();let te=i.isOdd(_);if((O&1)===1!==te)_=i.neg(_);return{x:L,y:_}}else if(R===I&&O===4){let L=i.BYTES,V=i.fromBytes(M.subarray(0,L)),_=i.fromBytes(M.subarray(L,L*2));if(!b(V,_))throw Error("bad point: is not on curve");return{x:V,y:_}}else throw Error(`bad point: got length ${R}, expected compressed=${N} or uncompressed=${I}`)}let m=t.toBytes||d,y=t.fromBytes||p;function g(P){let N=i.sqr(P),I=i.mul(N,P);return i.add(i.add(I,i.mul(P,o.a)),o.b)}function b(P,N){let I=i.sqr(N),R=g(P);return i.eql(I,R)}if(!b(o.Gx,o.Gy))throw Error("bad curve params: generator point");let v=i.mul(i.pow(o.a,xm),JW),A=i.mul(i.sqr(o.b),BigInt(27));if(i.is0(i.add(v,A)))throw Error("bad curve params: a or b");function T(P,N,I=!1){if(!i.isValid(N)||I&&i.is0(N))throw Error(`bad point coordinate ${P}`);return N}function z(P){if(!(P instanceof H))throw Error("Weierstrass Point expected")}function j(P){if(!c||!c.basises)throw Error("no endo");return HW(P,c.basises,n.ORDER)}let E=dS((P,N)=>{let{X:I,Y:R,Z:O}=P;if(i.eql(O,i.ONE))return{x:I,y:R};let M=P.is0();if(N==null)N=M?i.ONE:i.inv(O);let L=i.mul(I,N),V=i.mul(R,N),_=i.mul(O,N);if(M)return{x:i.ZERO,y:i.ZERO};if(!i.eql(_,i.ONE))throw Error("invZ was invalid");return{x:L,y:V}}),Z=dS((P)=>{if(P.is0()){if(t.allowInfinityPoint&&!i.is0(P.Y))return;throw Error("bad point: ZERO")}let{x:N,y:I}=P.toAffine();if(!i.isValid(N)||!i.isValid(I))throw Error("bad point: x or y not field elements");if(!b(N,I))throw Error("bad point: equation left != right");if(!P.isTorsionFree())throw Error("bad point: not in prime-order subgroup");return!0});function D(P,N,I,R,O){return I=new H(i.mul(I.X,P),I.Y,I.Z),N=Ju(R,N),I=Ju(O,I),N.add(I)}class H{static BASE=new H(o.Gx,o.Gy,i.ONE);static ZERO=new H(i.ZERO,i.ONE,i.ZERO);static Fp=i;static Fn=n;X;Y;Z;constructor(P,N,I){this.X=T("x",P),this.Y=T("y",N,!0),this.Z=T("z",I),Object.freeze(this)}static CURVE(){return o}static fromAffine(P){let{x:N,y:I}=P||{};if(!P||!i.isValid(N)||!i.isValid(I))throw Error("invalid affine point");if(P instanceof H)throw Error("projective point not allowed");if(i.is0(N)&&i.is0(I))return H.ZERO;return new H(N,I,i.ONE)}static fromBytes(P){let N=H.fromAffine(y(Ne(P,void 0,"point")));return N.assertValidity(),N}static fromHex(P){return H.fromBytes(Rs(P))}get x(){return this.toAffine().x}get y(){return this.toAffine().y}precompute(P=8,N=!0){if(F.createCache(this,P),!N)this.multiply(xm);return this}assertValidity(){Z(this)}hasEvenY(){let{y:P}=this.toAffine();if(!i.isOdd)throw Error("Field doesn't support isOdd");return!i.isOdd(P)}equals(P){z(P);let{X:N,Y:I,Z:R}=this,{X:O,Y:M,Z:L}=P,V=i.eql(i.mul(N,L),i.mul(O,R)),_=i.eql(i.mul(I,L),i.mul(M,R));return V&&_}negate(){return new H(this.X,i.neg(this.Y),this.Z)}double(){let{a:P,b:N}=o,I=i.mul(N,xm),{X:R,Y:O,Z:M}=this,L=i.ZERO,V=i.ZERO,_=i.ZERO,te=i.mul(R,R),ue=i.mul(O,O),C=i.mul(M,M),Se=i.mul(R,O);return Se=i.add(Se,Se),_=i.mul(R,M),_=i.add(_,_),L=i.mul(P,_),V=i.mul(I,C),V=i.add(L,V),L=i.sub(ue,V),V=i.add(ue,V),V=i.mul(L,V),L=i.mul(Se,L),_=i.mul(I,_),C=i.mul(P,C),Se=i.sub(te,C),Se=i.mul(P,Se),Se=i.add(Se,_),_=i.add(te,te),te=i.add(_,te),te=i.add(te,C),te=i.mul(te,Se),V=i.add(V,te),C=i.mul(O,M),C=i.add(C,C),te=i.mul(C,Se),L=i.sub(L,te),_=i.mul(C,ue),_=i.add(_,_),_=i.add(_,_),new H(L,V,_)}add(P){z(P);let{X:N,Y:I,Z:R}=this,{X:O,Y:M,Z:L}=P,V=i.ZERO,_=i.ZERO,te=i.ZERO,ue=o.a,C=i.mul(o.b,xm),Se=i.mul(N,O),Ee=i.mul(I,M),Ce=i.mul(R,L),$e=i.add(N,I),_e=i.add(O,M);$e=i.mul($e,_e),_e=i.add(Se,Ee),$e=i.sub($e,_e),_e=i.add(N,R);let Pe=i.add(O,L);return _e=i.mul(_e,Pe),Pe=i.add(Se,Ce),_e=i.sub(_e,Pe),Pe=i.add(I,R),V=i.add(M,L),Pe=i.mul(Pe,V),V=i.add(Ee,Ce),Pe=i.sub(Pe,V),te=i.mul(ue,_e),V=i.mul(C,Ce),te=i.add(V,te),V=i.sub(Ee,te),te=i.add(Ee,te),_=i.mul(V,te),Ee=i.add(Se,Se),Ee=i.add(Ee,Se),Ce=i.mul(ue,Ce),_e=i.mul(C,_e),Ee=i.add(Ee,Ce),Ce=i.sub(Se,Ce),Ce=i.mul(ue,Ce),_e=i.add(_e,Ce),Se=i.mul(Ee,_e),_=i.add(_,Se),Se=i.mul(Pe,_e),V=i.mul($e,V),V=i.sub(V,Se),Se=i.mul($e,Ee),te=i.mul(Pe,te),te=i.add(te,Se),new H(V,_,te)}subtract(P){return this.add(P.negate())}is0(){return this.equals(H.ZERO)}multiply(P){let{endo:N}=t;if(!n.isValidNot0(P))throw Error("invalid scalar: out of range");let I,R,O=(M)=>F.cached(this,M,(L)=>bS(H,L));if(N){let{k1neg:M,k1:L,k2neg:V,k2:_}=j(P),{p:te,f:ue}=O(L),{p:C,f:Se}=O(_);R=ue.add(Se),I=D(N.beta,te,C,M,V)}else{let{p:M,f:L}=O(P);I=M,R=L}return bS(H,[I,R])[0]}multiplyUnsafe(P){let{endo:N}=t,I=this;if(!n.isValid(P))throw Error("invalid scalar: out of range");if(P===Pi||I.is0())return H.ZERO;if(P===yc)return I;if(F.hasCache(this))return this.multiply(P);if(N){let{k1neg:R,k1:O,k2neg:M,k2:L}=j(P),{p1:V,p2:_}=yP(H,I,O,L);return D(N.beta,V,_,R,M)}else return F.unsafe(I,P)}toAffine(P){return E(this,P)}isTorsionFree(){let{isTorsionFree:P}=t;if(s===yc)return!0;if(P)return P(H,this);return F.unsafe(this,a).is0()}clearCofactor(){let{clearCofactor:P}=t;if(s===yc)return this;if(P)return P(H,this);return this.multiplyUnsafe(s)}isSmallOrder(){return this.multiplyUnsafe(s).is0()}toBytes(P=!0){return qu(P,"isCompressed"),this.assertValidity(),m(H,this,P)}toHex(P=!0){return Os(this.toBytes(P))}toString(){return`<Point ${this.is0()?"ZERO":this.toHex()}>`}}let X=n.BITS,F=new xS(H,t.endo?Math.ceil(X/2):X);return H.BASE.precompute(8),H}function _P(e){return Uint8Array.of(e?2:3)}function kP(e,t){return{secretKey:t.BYTES,publicKey:1+e.BYTES,publicKeyUncompressed:1+2*e.BYTES,publicKeyHasPrefix:!0,signature:2*t.BYTES}}function KW(e,t={}){let{Fn:r}=e,i=t.randomBytes||xo,n=Object.assign(kP(e.Fp,r),{seed:mS(r.ORDER)});function o(m){try{let y=r.fromBytes(m);return r.isValidNot0(y)}catch(y){return!1}}function s(m,y){let{publicKey:g,publicKeyUncompressed:b}=n;try{let v=m.length;if(y===!0&&v!==g)return!1;if(y===!1&&v!==b)return!1;return!!e.fromBytes(m)}catch(v){return!1}}function a(m=i(n.seed)){return dP(Ne(m,n.seed,"seed"),r.ORDER)}function c(m,y=!0){return e.BASE.multiply(r.fromBytes(m)).toBytes(y)}function l(m){let{secretKey:y,publicKey:g,publicKeyUncompressed:b}=n;if(!dc(m))return;if("_lengths"in r&&r._lengths||y===g)return;let v=Ne(m,void 0,"key").length;return v===g||v===b}function u(m,y,g=!0){if(l(m)===!0)throw Error("first arg must be private key");if(l(y)===!1)throw Error("second arg must be public key");let b=r.fromBytes(m);return e.fromBytes(y).multiply(b).toBytes(g)}let d={isValidSecretKey:o,isValidPublicKey:s,randomSecretKey:a},p=ym(a,c);return Object.freeze({getPublicKey:c,getSharedSecret:u,keygen:p,Point:e,utils:d,lengths:n})}function kS(e,t,r={}){bn(t),Ps(r,{},{hmac:"function",lowS:"boolean",randomBytes:"function",bits2int:"function",bits2int_modN:"function"}),r=Object.assign({},r);let i=r.randomBytes||xo,n=r.hmac||((I,R)=>gc(t,I,R)),{Fp:o,Fn:s}=e,{ORDER:a,BITS:c}=s,{keygen:l,getPublicKey:u,getSharedSecret:d,utils:p,lengths:m}=KW(e,r),y={prehash:!0,lowS:typeof r.lowS==="boolean"?r.lowS:!0,format:"compact",extraEntropy:!1},g=a*vP<o.ORDER;function b(I){let R=a>>yc;return I>R}function v(I,R){if(!s.isValidNot0(R))throw Error(`invalid signature ${I}: out of range 1..Point.Fn.ORDER`);return R}function A(){if(g)throw Error('"recovered" sig type is not supported for cofactor >2 curves')}function T(I,R){vS(R);let O=m.signature,M=R==="compact"?O:R==="recovered"?O+1:void 0;return Ne(I,M)}class z{r;s;recovery;constructor(I,R,O){if(this.r=v("r",I),this.s=v("s",R),O!=null){if(A(),![0,1,2,3].includes(O))throw Error("invalid recovery id");this.recovery=O}Object.freeze(this)}static fromBytes(I,R=y.format){T(I,R);let O;if(R==="der"){let{r:_,s:te}=ko.toSig(Ne(I));return new z(_,te)}if(R==="recovered")O=I[0],R="compact",I=I.subarray(1);let M=m.signature/2,L=I.subarray(0,M),V=I.subarray(M,M*2);return new z(s.fromBytes(L),s.fromBytes(V),O)}static fromHex(I,R){return this.fromBytes(Rs(I),R)}assertRecovery(){let{recovery:I}=this;if(I==null)throw Error("invalid recovery id: must be present");return I}addRecoveryBit(I){return new z(this.r,this.s,I)}recoverPublicKey(I){let{r:R,s:O}=this,M=this.assertRecovery(),L=M===2||M===3?R+a:R;if(!o.isValid(L))throw Error("invalid recovery id: sig.r+curve.n != R.x");let V=o.toBytes(L),_=e.fromBytes(Lt(_P((M&1)===0),V)),te=s.inv(L),ue=E(Ne(I,void 0,"msgHash")),C=s.create(-ue*te),Se=s.create(O*te),Ee=e.BASE.multiplyUnsafe(C).add(_.multiplyUnsafe(Se));if(Ee.is0())throw Error("invalid recovery: point at infinify");return Ee.assertValidity(),Ee}hasHighS(){return b(this.s)}toBytes(I=y.format){if(vS(I),I==="der")return Rs(ko.hexFromSig(this));let{r:R,s:O}=this,M=s.toBytes(R),L=s.toBytes(O);if(I==="recovered")return A(),Lt(Uint8Array.of(this.assertRecovery()),M,L);return Lt(M,L)}toHex(I){return Os(this.toBytes(I))}}let j=r.bits2int||function(R){if(R.length>8192)throw Error("input is too large");let O=wo(R),M=R.length*8-c;return M>0?O>>BigInt(M):O},E=r.bits2int_modN||function(R){return s.create(j(R))},Z=Zu(c);function D(I){return Mu("num < 2^"+c,I,Pi,Z),s.toBytes(I)}function H(I,R){return Ne(I,void 0,"message"),R?Ne(t(I),void 0,"prehashed message"):I}function X(I,R,O){let{lowS:M,prehash:L,extraEntropy:V}=wS(O,y);I=H(I,L);let _=E(I),te=s.fromBytes(R);if(!s.isValidNot0(te))throw Error("invalid private key");let ue=[D(te),D(_)];if(V!=null&&V!==!1){let Ce=V===!0?i(m.secretKey):V;ue.push(Ne(Ce,void 0,"extraEntropy"))}let C=Lt(...ue),Se=_;function Ee(Ce){let $e=j(Ce);if(!s.isValidNot0($e))return;let _e=s.inv($e),Pe=e.BASE.multiply($e).toAffine(),Ve=s.create(Pe.x);if(Ve===Pi)return;let et=s.create(_e*s.create(Se+Ve*te));if(et===Pi)return;let St=(Pe.x===Ve?0:2)|Number(Pe.y&yc),Dt=et;if(M&&b(et))Dt=s.neg(et),St^=1;return new z(Ve,Dt,g?void 0:St)}return{seed:C,k2sig:Ee}}function F(I,R,O={}){let{seed:M,k2sig:L}=X(I,R,O);return XR(t.outputLen,s.BYTES,n)(M,L).toBytes(O.format)}function P(I,R,O,M={}){let{lowS:L,prehash:V,format:_}=wS(M,y);if(O=Ne(O,void 0,"publicKey"),R=H(R,V),!dc(I)){let te=I instanceof z?", use sig.toBytes()":"";throw Error("verify expects Uint8Array signature"+te)}T(I,_);try{let te=z.fromBytes(I,_),ue=e.fromBytes(O);if(L&&te.hasHighS())return!1;let{r:C,s:Se}=te,Ee=E(R),Ce=s.inv(Se),$e=s.create(Ee*Ce),_e=s.create(C*Ce),Pe=e.BASE.multiplyUnsafe($e).add(ue.multiplyUnsafe(_e));if(Pe.is0())return!1;return s.create(Pe.x)===C}catch(te){return!1}}function N(I,R,O={}){let{prehash:M}=wS(O,y);return R=H(R,M),z.fromBytes(I,"recovered").recoverPublicKey(R).toBytes()}return Object.freeze({keygen:l,getPublicKey:u,getSharedSecret:d,utils:p,lengths:m,Point:e,sign:F,verify:P,recoverPublicKey:N,Signature:z,hash:t})}function EP(e,t,r){return e&t^~e&r}function IP(e,t,r){return e&t^e&r^t&r}class Sm{blockLen;outputLen;padOffset;isLE;buffer;view;finished=!1;length=0;pos=0;destroyed=!1;constructor(e,t,r,i){this.blockLen=e,this.outputLen=t,this.padOffset=r,this.isLE=i,this.buffer=new Uint8Array(e),this.view=pm(this.buffer)}update(e){Ri(this),Ne(e);let{view:t,buffer:r,blockLen:i}=this,n=e.length;for(let o=0;o<n;){let s=Math.min(i-this.pos,n-o);if(s===i){let a=pm(e);for(;i<=n-o;o+=i)this.process(a,o);continue}if(r.set(e.subarray(o,o+s),this.pos),this.pos+=s,o+=s,this.pos===i)this.process(t,0),this.pos=0}return this.length+=e.length,this.roundClean(),this}digestInto(e){Ri(this),dm(e,this),this.finished=!0;let{buffer:t,view:r,blockLen:i,isLE:n}=this,{pos:o}=this;if(t[o++]=128,Fr(this.buffer.subarray(o)),this.padOffset>i-o)this.process(r,0),o=0;for(let u=o;u<i;u++)t[u]=0;r.setBigUint64(i-8,BigInt(this.length*8),n),this.process(r,0);let s=pm(e),a=this.outputLen;if(a%4)throw Error("_sha2: outputLen must be aligned to 32bit");let c=a/4,l=this.get();if(c>l.length)throw Error("_sha2: outputLen bigger than state");for(let u=0;u<c;u++)s.setUint32(4*u,l[u],n)}digest(){let{buffer:e,outputLen:t}=this;this.digestInto(e);let r=e.slice(0,t);return this.destroy(),r}_cloneInto(e){e||=new this.constructor,e.set(...this.get());let{blockLen:t,buffer:r,length:i,finished:n,destroyed:o,pos:s}=this;if(e.destroyed=o,e.finished=n,e.length=i,e.pos=s,i%t)e.buffer.set(r);return e}clone(){return this._cloneInto()}}var zi=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]);var or=Uint32Array.from([3418070365,3238371032,1654270250,914150663,2438529370,812702999,355462360,4144912697,1731405415,4290775857,2394180231,1750603025,3675008525,1694076839,1203062813,3204075428]);var wm=BigInt(4294967295),AP=BigInt(32);function VW(e,t=!1){if(t)return{h:Number(e&wm),l:Number(e>>AP&wm)};return{h:Number(e>>AP&wm)|0,l:Number(e&wm)|0}}function vm(e,t=!1){let r=e.length,i=new Uint32Array(r),n=new Uint32Array(r);for(let o=0;o<r;o++){let{h:s,l:a}=VW(e[o],t);[i[o],n[o]]=[s,a]}return[i,n]}var ES=(e,t,r)=>e>>>r,IS=(e,t,r)=>e<<32-r|t>>>r,Ds=(e,t,r)=>e>>>r|t<<32-r,Ls=(e,t,r)=>e<<32-r|t>>>r,Vu=(e,t,r)=>e<<64-r|t>>>r-32,Wu=(e,t,r)=>e>>>r-32|t<<64-r;var TP=(e,t,r)=>e<<r|t>>>32-r,$P=(e,t,r)=>t<<r|e>>>32-r,CP=(e,t,r)=>t<<r-32|e>>>64-r,OP=(e,t,r)=>e<<r-32|t>>>64-r;function ri(e,t,r,i){let n=(t>>>0)+(i>>>0);return{h:e+r+(n/4294967296|0)|0,l:n|0}}var RP=(e,t,r)=>(e>>>0)+(t>>>0)+(r>>>0),PP=(e,t,r,i)=>t+r+i+(e/4294967296|0)|0,zP=(e,t,r,i)=>(e>>>0)+(t>>>0)+(r>>>0)+(i>>>0),NP=(e,t,r,i,n)=>t+r+i+n+(e/4294967296|0)|0,DP=(e,t,r,i,n)=>(e>>>0)+(t>>>0)+(r>>>0)+(i>>>0)+(n>>>0),LP=(e,t,r,i,n,o)=>t+r+i+n+o+(e/4294967296|0)|0;var GW=Uint32Array.from([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),Eo=new Uint32Array(64);class BP extends Sm{constructor(e){super(64,e,8,!1)}get(){let{A:e,B:t,C:r,D:i,E:n,F:o,G:s,H:a}=this;return[e,t,r,i,n,o,s,a]}set(e,t,r,i,n,o,s,a){this.A=e|0,this.B=t|0,this.C=r|0,this.D=i|0,this.E=n|0,this.F=o|0,this.G=s|0,this.H=a|0}process(e,t){for(let u=0;u<16;u++,t+=4)Eo[u]=e.getUint32(t,!1);for(let u=16;u<64;u++){let d=Eo[u-15],p=Eo[u-2],m=Nn(d,7)^Nn(d,18)^d>>>3,y=Nn(p,17)^Nn(p,19)^p>>>10;Eo[u]=y+Eo[u-7]+m+Eo[u-16]|0}let{A:r,B:i,C:n,D:o,E:s,F:a,G:c,H:l}=this;for(let u=0;u<64;u++){let d=Nn(s,6)^Nn(s,11)^Nn(s,25),p=l+d+EP(s,a,c)+GW[u]+Eo[u]|0,y=(Nn(r,2)^Nn(r,13)^Nn(r,22))+IP(r,i,n)|0;l=c,c=a,a=s,s=o+p|0,o=n,n=i,i=r,r=p+y|0}r=r+this.A|0,i=i+this.B|0,n=n+this.C|0,o=o+this.D|0,s=s+this.E|0,a=a+this.F|0,c=c+this.G|0,l=l+this.H|0,this.set(r,i,n,o,s,a,c,l)}roundClean(){Fr(Eo)}destroy(){this.set(0,0,0,0,0,0,0,0),Fr(this.buffer)}}class jP extends BP{A=zi[0]|0;B=zi[1]|0;C=zi[2]|0;D=zi[3]|0;E=zi[4]|0;F=zi[5]|0;G=zi[6]|0;H=zi[7]|0;constructor(){super(32)}}var qP=(()=>vm(["0x428a2f98d728ae22","0x7137449123ef65cd","0xb5c0fbcfec4d3b2f","0xe9b5dba58189dbbc","0x3956c25bf348b538","0x59f111f1b605d019","0x923f82a4af194f9b","0xab1c5ed5da6d8118","0xd807aa98a3030242","0x12835b0145706fbe","0x243185be4ee4b28c","0x550c7dc3d5ffb4e2","0x72be5d74f27b896f","0x80deb1fe3b1696b1","0x9bdc06a725c71235","0xc19bf174cf692694","0xe49b69c19ef14ad2","0xefbe4786384f25e3","0x0fc19dc68b8cd5b5","0x240ca1cc77ac9c65","0x2de92c6f592b0275","0x4a7484aa6ea6e483","0x5cb0a9dcbd41fbd4","0x76f988da831153b5","0x983e5152ee66dfab","0xa831c66d2db43210","0xb00327c898fb213f","0xbf597fc7beef0ee4","0xc6e00bf33da88fc2","0xd5a79147930aa725","0x06ca6351e003826f","0x142929670a0e6e70","0x27b70a8546d22ffc","0x2e1b21385c26c926","0x4d2c6dfc5ac42aed","0x53380d139d95b3df","0x650a73548baf63de","0x766a0abb3c77b2a8","0x81c2c92e47edaee6","0x92722c851482353b","0xa2bfe8a14cf10364","0xa81a664bbc423001","0xc24b8b70d0f89791","0xc76c51a30654be30","0xd192e819d6ef5218","0xd69906245565a910","0xf40e35855771202a","0x106aa07032bbd1b8","0x19a4c116b8d2d0c8","0x1e376c085141ab53","0x2748774cdf8eeb99","0x34b0bcb5e19b48a8","0x391c0cb3c5c95a63","0x4ed8aa4ae3418acb","0x5b9cca4f7763e373","0x682e6ff3d6b2b8a3","0x748f82ee5defb2fc","0x78a5636f43172f60","0x84c87814a1f0ab72","0x8cc702081a6439ec","0x90befffa23631e28","0xa4506cebde82bde9","0xbef9a3f7b2c67915","0xc67178f2e372532b","0xca273eceea26619c","0xd186b8c721c0c207","0xeada7dd6cde0eb1e","0xf57d4f7fee6ed178","0x06f067aa72176fba","0x0a637dc5a2c898a6","0x113f9804bef90dae","0x1b710b35131c471b","0x28db77f523047d84","0x32caab7b40c72493","0x3c9ebe0a15c9bebc","0x431d67c49c100d4c","0x4cc5d4becb3e42b6","0x597f299cfc657e2a","0x5fcb6fab3ad6faec","0x6c44198c4a475817"].map((e)=>BigInt(e))))(),QW=(()=>qP[0])(),YW=(()=>qP[1])(),Io=new Uint32Array(80),Ao=new Uint32Array(80);class UP extends Sm{constructor(e){super(128,e,16,!1)}get(){let{Ah:e,Al:t,Bh:r,Bl:i,Ch:n,Cl:o,Dh:s,Dl:a,Eh:c,El:l,Fh:u,Fl:d,Gh:p,Gl:m,Hh:y,Hl:g}=this;return[e,t,r,i,n,o,s,a,c,l,u,d,p,m,y,g]}set(e,t,r,i,n,o,s,a,c,l,u,d,p,m,y,g){this.Ah=e|0,this.Al=t|0,this.Bh=r|0,this.Bl=i|0,this.Ch=n|0,this.Cl=o|0,this.Dh=s|0,this.Dl=a|0,this.Eh=c|0,this.El=l|0,this.Fh=u|0,this.Fl=d|0,this.Gh=p|0,this.Gl=m|0,this.Hh=y|0,this.Hl=g|0}process(e,t){for(let A=0;A<16;A++,t+=4)Io[A]=e.getUint32(t),Ao[A]=e.getUint32(t+=4);for(let A=16;A<80;A++){let T=Io[A-15]|0,z=Ao[A-15]|0,j=Ds(T,z,1)^Ds(T,z,8)^ES(T,z,7),E=Ls(T,z,1)^Ls(T,z,8)^IS(T,z,7),Z=Io[A-2]|0,D=Ao[A-2]|0,H=Ds(Z,D,19)^Vu(Z,D,61)^ES(Z,D,6),X=Ls(Z,D,19)^Wu(Z,D,61)^IS(Z,D,6),F=zP(E,X,Ao[A-7],Ao[A-16]),P=NP(F,j,H,Io[A-7],Io[A-16]);Io[A]=P|0,Ao[A]=F|0}let{Ah:r,Al:i,Bh:n,Bl:o,Ch:s,Cl:a,Dh:c,Dl:l,Eh:u,El:d,Fh:p,Fl:m,Gh:y,Gl:g,Hh:b,Hl:v}=this;for(let A=0;A<80;A++){let T=Ds(u,d,14)^Ds(u,d,18)^Vu(u,d,41),z=Ls(u,d,14)^Ls(u,d,18)^Wu(u,d,41),j=u&p^~u&y,E=d&m^~d&g,Z=DP(v,z,E,YW[A],Ao[A]),D=LP(Z,b,T,j,QW[A],Io[A]),H=Z|0,X=Ds(r,i,28)^Vu(r,i,34)^Vu(r,i,39),F=Ls(r,i,28)^Wu(r,i,34)^Wu(r,i,39),P=r&n^r&s^n&s,N=i&o^i&a^o&a;b=y|0,v=g|0,y=p|0,g=m|0,p=u|0,m=d|0,{h:u,l:d}=ri(c|0,l|0,D|0,H|0),c=s|0,l=a|0,s=n|0,a=o|0,n=r|0,o=i|0;let I=RP(H,F,N);r=PP(I,D,X,P),i=I|0}({h:r,l:i}=ri(this.Ah|0,this.Al|0,r|0,i|0)),{h:n,l:o}=ri(this.Bh|0,this.Bl|0,n|0,o|0),{h:s,l:a}=ri(this.Ch|0,this.Cl|0,s|0,a|0),{h:c,l}=ri(this.Dh|0,this.Dl|0,c|0,l|0),{h:u,l:d}=ri(this.Eh|0,this.El|0,u|0,d|0),{h:p,l:m}=ri(this.Fh|0,this.Fl|0,p|0,m|0),{h:y,l:g}=ri(this.Gh|0,this.Gl|0,y|0,g|0),{h:b,l:v}=ri(this.Hh|0,this.Hl|0,b|0,v|0),this.set(r,i,n,o,s,a,c,l,u,d,p,m,y,g,b,v)}roundClean(){Fr(Io,Ao)}destroy(){Fr(this.buffer),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}}class FP extends UP{Ah=or[0]|0;Al=or[1]|0;Bh=or[2]|0;Bl=or[3]|0;Ch=or[4]|0;Cl=or[5]|0;Dh=or[6]|0;Dl=or[7]|0;Eh=or[8]|0;El=or[9]|0;Fh=or[10]|0;Fl=or[11]|0;Gh=or[12]|0;Gl=or[13]|0;Hh=or[14]|0;Hl=or[15]|0;constructor(){super(48)}}var _m=fc(()=>new jP,So(1));var MP=fc(()=>new FP,So(2));/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */var XW=BigInt(1),ZP=BigInt(2),eG=BigInt(3),tG=BigInt(5),g1e=BigInt(8),HP=BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed");function rG(e){let t=BigInt(10),r=BigInt(20),i=BigInt(40),n=BigInt(80),o=HP,a=e*e%o*e%o,c=xn(a,ZP,o)*a%o,l=xn(c,XW,o)*e%o,u=xn(l,tG,o)*l%o,d=xn(u,t,o)*u%o,p=xn(d,r,o)*d%o,m=xn(p,i,o)*p%o,y=xn(m,n,o)*m%o,g=xn(y,n,o)*m%o,b=xn(g,t,o)*u%o;return{pow_p_5_8:xn(b,ZP,o)*e%o,b2:a}}function nG(e){return e[0]&=248,e[31]&=127,e[31]|=64,e}var JP=(()=>{let e=HP;return xP({P:e,type:"x25519",powPminus2:(t)=>{let{pow_p_5_8:r,b2:i}=rG(t);return Tr(xn(r,eG,e)*i,e)},adjustScalarBytes:nG})})();/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */var iG=(()=>({p:BigInt("0xffffffff00000001000000000000000000000000ffffffffffffffffffffffff"),n:BigInt("0xffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551"),h:BigInt(1),a:BigInt("0xffffffff00000001000000000000000000000000fffffffffffffffffffffffc"),b:BigInt("0x5ac635d8aa3a93e7b3ebbd55769886bc651d06b0cc53b0f63bce3c3e27d2604b"),Gx:BigInt("0x6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296"),Gy:BigInt("0x4fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5")}))(),oG=(()=>({p:BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff"),n:BigInt("0xffffffffffffffffffffffffffffffffffffffffffffffffc7634d81f4372ddf581a0db248b0a77aecec196accc52973"),h:BigInt(1),a:BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000fffffffc"),b:BigInt("0xb3312fa7e23ee7e4988e056be3f82d19181d9c6efe8141120314088f5013875ac656398d8a2ed19d2a85c8edd3ec2aef"),Gx:BigInt("0xaa87ca22be8b05378eb1c71ef320ad746e1d3b628ba79b9859f741e082542a385502f25dbf55296c3a545e3872760ab7"),Gy:BigInt("0x3617de4a96262c6f5d9e98bf9292dc29f8f41dbd289a147ce9da3113b5f0b8c00a60b1ce1d7e819d7a431d7c90ea0e5f")}))();var sG=_S(iG),AS=kS(sG,_m);var aG=_S(oG),KP=kS(aG,MP);function WP(e,t,r){if(bn(e),r===void 0)r=new Uint8Array(e.outputLen);return gc(e,r,t)}var TS=Uint8Array.of(0),VP=Uint8Array.of();function GP(e,t,r,i=32){bn(e),Vt(i,"length");let n=e.outputLen;if(i>255*n)throw Error("Length must be <= 255*HashLen");let o=Math.ceil(i/n);if(r===void 0)r=VP;else Ne(r,void 0,"info");let s=new Uint8Array(o*n),a=gc.create(e,t),c=a._cloneInto(),l=new Uint8Array(a.outputLen);for(let u=0;u<o;u++)TS[0]=u+1,c.update(u===0?VP:l).update(r).update(TS).digestInto(l),s.set(l,n*u),a._cloneInto(c);return a.destroy(),c.destroy(),Fr(l,TS),s.slice(0,i)}var cG=BigInt(0),Gu=BigInt(1),lG=BigInt(2),uG=BigInt(7),dG=BigInt(256),fG=BigInt(113),XP=[],ez=[],tz=[];for(let e=0,t=Gu,r=1,i=0;e<24;e++){[r,i]=[i,(2*r+3*i)%5],XP.push(2*(5*i+r)),ez.push((e+1)*(e+2)/2%64);let n=cG;for(let o=0;o<7;o++)if(t=(t<<Gu^(t>>uG)*fG)%dG,t&lG)n^=Gu<<(Gu<<BigInt(o))-Gu;tz.push(n)}var rz=vm(tz,!0),pG=rz[0],mG=rz[1],QP=(e,t,r)=>r>32?CP(e,t,r):TP(e,t,r),YP=(e,t,r)=>r>32?OP(e,t,r):$P(e,t,r);function hG(e,t=24){let r=new Uint32Array(10);for(let i=24-t;i<24;i++){for(let s=0;s<10;s++)r[s]=e[s]^e[s+10]^e[s+20]^e[s+30]^e[s+40];for(let s=0;s<10;s+=2){let a=(s+8)%10,c=(s+2)%10,l=r[c],u=r[c+1],d=QP(l,u,1)^r[a],p=YP(l,u,1)^r[a+1];for(let m=0;m<50;m+=10)e[s+m]^=d,e[s+m+1]^=p}let n=e[2],o=e[3];for(let s=0;s<24;s++){let a=ez[s],c=QP(n,o,a),l=YP(n,o,a),u=XP[s];n=e[u],o=e[u+1],e[u]=c,e[u+1]=l}for(let s=0;s<50;s+=10){for(let a=0;a<10;a++)r[a]=e[s+a];for(let a=0;a<10;a++)e[s+a]^=~r[(a+2)%10]&r[(a+4)%10]}e[0]^=pG[i],e[1]^=mG[i]}Fr(r)}class km{state;pos=0;posOut=0;finished=!1;state32;destroyed=!1;blockLen;suffix;outputLen;enableXOF=!1;rounds;constructor(e,t,r,i=!1,n=24){if(this.blockLen=e,this.suffix=t,this.outputLen=r,this.enableXOF=i,this.rounds=n,Vt(r,"outputLen"),!(0<e&&e<200))throw Error("only keccak-f1600 function is supported");this.state=new Uint8Array(200),this.state32=fm(this.state)}clone(){return this._cloneInto()}keccak(){aS(this.state32),hG(this.state32,this.rounds),aS(this.state32),this.posOut=0,this.pos=0}update(e){Ri(this),Ne(e);let{blockLen:t,state:r}=this,i=e.length;for(let n=0;n<i;){let o=Math.min(t-this.pos,i-n);for(let s=0;s<o;s++)r[this.pos++]^=e[n++];if(this.pos===t)this.keccak()}return this}finish(){if(this.finished)return;this.finished=!0;let{state:e,suffix:t,pos:r,blockLen:i}=this;if(e[r]^=t,(t&128)!==0&&r===i-1)this.keccak();e[i-1]^=128,this.keccak()}writeInto(e){Ri(this,!1),Ne(e),this.finish();let t=this.state,{blockLen:r}=this;for(let i=0,n=e.length;i<n;){if(this.posOut>=r)this.keccak();let o=Math.min(r-this.posOut,n-i);e.set(t.subarray(this.posOut,this.posOut+o),i),this.posOut+=o,i+=o}return e}xofInto(e){if(!this.enableXOF)throw Error("XOF is not possible for this instance");return this.writeInto(e)}xof(e){return Vt(e),this.xofInto(new Uint8Array(e))}digestInto(e){if(dm(e,this),this.finished)throw Error("digest() was already called");return this.writeInto(e),this.destroy(),e}digest(){return this.digestInto(new Uint8Array(this.outputLen))}destroy(){this.destroyed=!0,Fr(this.state)}_cloneInto(e){let{blockLen:t,suffix:r,outputLen:i,rounds:n,enableXOF:o}=this;return e||=new km(t,r,i,o,n),e.state32.set(this.state32),e.pos=this.pos,e.posOut=this.posOut,e.finished=this.finished,e.rounds=n,e.suffix=r,e.outputLen=i,e.enableXOF=o,e.destroyed=this.destroyed,e}}var nz=(e,t,r,i={})=>fc(()=>new km(t,e,r),i);var Bs=nz(6,136,32,So(8));var iz=nz(6,72,64,So(10));var oz=(e,t,r,i={})=>fc((n={})=>new km(t,e,n.dkLen===void 0?r:n.dkLen,!0),i),sz=oz(31,168,16,So(11)),ni=oz(31,136,32,So(12));function $S(e){if(!Number.isSafeInteger(e)||e<0||e>4294967295)throw Error("wrong u32 integer:"+e);return e}function cz(e){return $S(e),(e&e-1)===0&&e!==0}function CS(e,t){$S(e);let r=0;for(let i=0;i<t;i++,e>>>=1)r=r<<1|e&1;return r}function lz(e){return $S(e),31-Math.clz32(e)}function az(e){let t=e.length;if(t<2||!cz(t))throw Error("n must be a power of 2 and greater than 1. Got "+t);let r=lz(t);for(let i=0;i<t;i++){let n=CS(i,r);if(i<n){let o=e[i];e[i]=e[n],e[n]=o}}return e}var OS=(e,t)=>{let{N:r,roots:i,dit:n,invertButterflies:o=!1,skipStages:s=0,brp:a=!0}=t,c=lz(r);if(!cz(r))throw Error("FFT: Polynomial size should be power of two");let l=n!==o;return(u)=>{if(u.length!==r)throw Error("FFT: wrong Polynomial length");if(n&&a)az(u);for(let d=0,p=1;d<c-s;d++){let m=n?d+1+s:c-d,y=1<<m,g=y>>1,b=r>>m;for(let v=0;v<r;v+=y)for(let A=0,T=p++;A<g;A++){let z=o?n?r-T:T:A*b,j=v+A,E=v+A+g,Z=i[z],D=u[E],H=u[j];if(l){let X=e.mul(D,Z);u[j]=e.add(H,X),u[E]=e.sub(H,X)}else if(o)u[j]=e.add(D,H),u[E]=e.mul(e.sub(D,H),Z);else u[j]=e.add(H,D),u[E]=e.mul(e.sub(H,D),Z)}}if(!n&&a)az(u);return u}};/*! noble-post-quantum - MIT License (c) 2024 Paul Miller (paulmillr.com) */var ii=xo;function Em(e,t){if(e.length!==t.length)return!1;let r=0;for(let i=0;i<e.length;i++)r|=e[i]^t[i];return r===0}function uz(e){return Uint8Array.from(e)}function js(e,...t){let r=(n)=>typeof n==="number"?n:n.bytesLen,i=t.reduce((n,o)=>n+r(o),0);return{bytesLen:i,encode:(n)=>{let o=new Uint8Array(i);for(let s=0,a=0;s<t.length;s++){let c=t[s],l=r(c),u=typeof c==="number"?n[s]:c.encode(n[s]);if(Ne(u,l,e),o.set(u,a),typeof c!=="number")u.fill(0);a+=l}return o},decode:(n)=>{Ne(n,i,e);let o=[];for(let s of t){let a=r(s),c=n.subarray(0,a);o.push(typeof s==="number"?c:s.decode(c)),n=n.subarray(a)}return o}}}function Im(e,t){let r=t*e.bytesLen;return{bytesLen:r,encode:(i)=>{if(i.length!==t)throw Error(`vecCoder.encode: wrong length=${i.length}. Expected: ${t}`);let n=new Uint8Array(r);for(let o=0,s=0;o<i.length;o++){let a=e.encode(i[o]);n.set(a,s),a.fill(0),s+=a.length}return n},decode:(i)=>{Ne(i,r);let n=[];for(let o=0;o<i.length;o+=e.bytesLen)n.push(e.decode(i.subarray(o,o+e.bytesLen)));return n}}}function Mt(...e){for(let t of e)if(Array.isArray(t))for(let r of t)r.fill(0);else t.fill(0)}function RS(e){return(1<<e)-1}var O1e=Uint8Array.of();/*! noble-post-quantum - MIT License (c) 2024 Paul Miller (paulmillr.com) */var dz=(e)=>{let{newPoly:t,N:r,Q:i,F:n,ROOT_OF_UNITY:o,brvBits:s,isKyber:a}=e,c=(A,T=i)=>{let z=A%T|0;return(z>=0?z|0:T+z|0)|0},l=(A,T=i)=>{let z=c(A,T)|0;return(z>T>>1?z-T|0:z)|0};function u(){let A=t(r);for(let T=0;T<r;T++){let z=CS(T,s),j=BigInt(o)**BigInt(z)%BigInt(i);A[T]=Number(j)|0}return A}let d=u(),p={add:(A,T)=>c((A|0)+(T|0))|0,sub:(A,T)=>c((A|0)-(T|0))|0,mul:(A,T)=>c((A|0)*(T|0))|0,inv:(A)=>{throw Error("not implemented")}},m={N:r,roots:d,invertButterflies:!0,skipStages:a?1:0,brp:!1},y=OS(p,{dit:!1,...m}),g=OS(p,{dit:!0,...m});return{mod:c,smod:l,nttZetas:d,NTT:{encode:(A)=>y(A),decode:(A)=>{g(A);for(let T=0;T<A.length;T++)A[T]=c(n*A[T]);return A}},bitsCoder:(A,T)=>{let z=RS(A),j=A*(r/8);return{bytesLen:j,encode:(E)=>{let Z=new Uint8Array(j);for(let D=0,H=0,X=0,F=0;D<E.length;D++){H|=(T.encode(E[D])&z)<<X,X+=A;for(;X>=8;X-=8,H>>=8)Z[F++]=H&RS(X)}return Z},decode:(E)=>{let Z=t(r);for(let D=0,H=0,X=0,F=0;D<E.length;D++){H|=E[D]<<X,X+=8;for(;X>=A;X-=A,H>>=A)Z[F++]=T.decode(H&z)}return Z}}}}},gG=(e)=>(t,r)=>{if(!r)r=e.blockLen;let i=new Uint8Array(t.length+2);i.set(t);let n=t.length,o=new Uint8Array(r),s=e.create({}),a=0,c=0;return{stats:()=>({calls:a,xofs:c}),get:(l,u)=>(i[n+0]=l,i[n+1]=u,s.destroy(),s=e.create({}).update(i),a++,()=>(c++,s.xofInto(o))),clean:()=>{s.destroy(),Mt(o,i)}}},fz=gG(sz);/*! noble-post-quantum - MIT License (c) 2024 Paul Miller (paulmillr.com) */var br=256,Ni=3329,yG=3303,bG=17,{mod:Xu,nttZetas:xG,NTT:qs,bitsCoder:SG}=dz({N:br,Q:Ni,F:yG,ROOT_OF_UNITY:bG,newPoly:(e)=>new Uint16Array(e),brvBits:7,isKyber:!0}),PS={512:{N:br,Q:Ni,K:2,ETA1:3,ETA2:2,du:10,dv:4,RBGstrength:128},768:{N:br,Q:Ni,K:3,ETA1:2,ETA2:2,du:10,dv:4,RBGstrength:192},1024:{N:br,Q:Ni,K:4,ETA1:2,ETA2:2,du:11,dv:5,RBGstrength:256}},wG=(e)=>{if(e>=12)return{encode:(r)=>r,decode:(r)=>r};let t=2**(e-1);return{encode:(r)=>((r<<e)+Ni/2)/Ni,decode:(r)=>r*Ni+t>>>e}},Qu=(e)=>SG(e,wG(e));function Us(e,t){for(let r=0;r<br;r++)e[r]=Xu(e[r]+t[r])}function vG(e,t){for(let r=0;r<br;r++)e[r]=Xu(e[r]-t[r])}function _G(e,t,r,i,n){let o=Xu(t*i*n+e*r),s=Xu(e*i+t*r);return{c0:o,c1:s}}function Am(e,t){for(let r=0;r<br/2;r++){let i=xG[64+(r>>1)];if(r&1)i=-i;let{c0:n,c1:o}=_G(e[2*r+0],e[2*r+1],t[2*r+0],t[2*r+1],i);e[2*r+0]=n,e[2*r+1]=o}return e}function pz(e){let t=new Uint16Array(br);for(let r=0;r<br;){let i=e();if(i.length%3)throw Error("SampleNTT: unaligned block");for(let n=0;r<br&&n+3<=i.length;n+=3){let o=(i[n+0]>>0|i[n+1]<<8)&4095,s=(i[n+1]>>4|i[n+2]<<4)&4095;if(o<Ni)t[r++]=o;if(r<br&&s<Ni)t[r++]=s}}return t}function Yu(e,t,r,i){let n=e(i*br/4,t,r),o=new Uint16Array(br),s=fm(n),a=0;for(let c=0,l=0,u=0,d=0;c<s.length;c++){let p=s[c];for(let m=0;m<32;m++)if(u+=p&1,p>>=1,a+=1,a===i)d=u,u=0;else if(a===2*i)o[l++]=Xu(d-u),u=0,a=0}if(a)throw Error(`sampleCBD: leftover bits: ${a}`);return o}var kG=(e)=>{let{K:t,PRF:r,XOF:i,HASH512:n,ETA1:o,ETA2:s,du:a,dv:c}=e,l=Qu(1),u=Qu(c),d=Qu(a),p=js("publicKey",Im(Qu(12),t),32),m=Im(Qu(12),t),y=js("ciphertext",Im(d,t),u),g=js("seed",32,32);return{secretCoder:m,lengths:{secretKey:m.bytesLen,publicKey:p.bytesLen,cipherText:y.bytesLen},keygen:(b)=>{Ne(b,32,"seed");let v=new Uint8Array(33);v.set(b),v[32]=t;let A=n(v),[T,z]=g.decode(A),j=[],E=[];for(let H=0;H<t;H++)j.push(qs.encode(Yu(r,z,H,o)));let Z=i(T);for(let H=0;H<t;H++){let X=qs.encode(Yu(r,z,t+H,o));for(let F=0;F<t;F++){let P=pz(Z.get(F,H));Us(X,Am(P,j[F]))}E.push(X)}Z.clean();let D={publicKey:p.encode([E,T]),secretKey:m.encode(j)};return Mt(T,z,j,E,v,A),D},encrypt:(b,v,A)=>{let[T,z]=p.decode(b),j=[];for(let F=0;F<t;F++)j.push(qs.encode(Yu(r,A,F,o)));let E=i(z),Z=new Uint16Array(br),D=[];for(let F=0;F<t;F++){let P=Yu(r,A,t+F,s),N=new Uint16Array(br);for(let I=0;I<t;I++){let R=pz(E.get(F,I));Us(N,Am(R,j[I]))}Us(P,qs.decode(N)),D.push(P),Us(Z,Am(T[F],j[F])),Mt(N)}E.clean();let H=Yu(r,A,2*t,s);Us(H,qs.decode(Z));let X=l.decode(v);return Us(X,H),Mt(T,j,Z,H),y.encode([D,X])},decrypt:(b,v)=>{let[A,T]=y.decode(b),z=m.decode(v),j=new Uint16Array(br);for(let E=0;E<t;E++)Us(j,Am(z[E],qs.encode(A[E])));return vG(T,qs.decode(j)),Mt(j,z,A),l.encode(T)}}};function zS(e){let t=kG(e),{HASH256:r,HASH512:i,KDF:n}=e,{secretCoder:o,lengths:s}=t,a=js("secretKey",s.secretKey,s.publicKey,32,32),c=32,l=64;return{info:{type:"ml-kem"},lengths:{...s,seed:64,msg:32,msgRand:32,secretKey:a.bytesLen},keygen:(u=ii(64))=>{Ne(u,64,"seed");let{publicKey:d,secretKey:p}=t.keygen(u.subarray(0,32)),m=r(d),y=a.encode([p,d,m,u.subarray(32)]);return Mt(p,m),{publicKey:d,secretKey:y}},getPublicKey:(u)=>{let[d,p,m,y]=a.decode(u);return Uint8Array.from(p)},encapsulate:(u,d=ii(32))=>{Ne(u,s.publicKey,"publicKey"),Ne(d,32,"message");let p=u.subarray(0,384*e.K),m=o.encode(o.decode(uz(p)));if(!Em(m,p))throw Mt(m),Error("ML-KEM.encapsulate: wrong publicKey modulus");Mt(m);let y=i.create().update(d).update(r(u)).digest(),g=t.encrypt(u,d,y.subarray(32,64));return Mt(y.subarray(32)),{cipherText:g,sharedSecret:y.subarray(0,32)}},decapsulate:(u,d)=>{Ne(d,a.bytesLen,"secretKey"),Ne(u,s.cipherText,"cipherText");let p=a.bytesLen-96,m=p+32,y=r(d.subarray(p/2,m));if(!Em(y,d.subarray(m,m+32)))throw Error("invalid secretKey: hash check failed");let[g,b,v,A]=a.decode(d),T=t.decrypt(u,g),z=i.create().update(T).update(v).digest(),j=z.subarray(0,32),E=t.encrypt(b,T,z.subarray(32,64)),Z=Em(u,E),D=n.create({dkLen:32}).update(A).update(u).digest();return Mt(T,E,!Z?j:D),Z?j:D}}}function EG(e,t,r){return ni.create({dkLen:e}).update(t).update(new Uint8Array([r])).digest()}var NS={HASH256:Bs,HASH512:iz,KDF:ni,XOF:fz,PRF:EG},F1e=zS({...NS,...PS[512]}),ed=zS({...NS,...PS[768]}),mz=zS({...NS,...PS[1024]});/*! noble-post-quantum - MIT License (c) 2024 Paul Miller (paulmillr.com) */function IG(e,t=!1){let{lengths:r,keygen:i}=e;if(t){let o=e.Point.Fn;if(!o)throw Error("No Point.Fn");i=(s=ii(r.seed))=>{Ne(s,r.seed,"seed");let a=o.isLE?vo(s):wo(s),c=o.toBytes(o.create(a));return{secretKey:c,publicKey:e.getPublicKey(c)}}}return{lengths:{secretKey:r.secretKey,publicKey:r.publicKey,seed:r.seed},keygen:i,getPublicKey:(n)=>e.getPublicKey(n)}}function DS(e,t=!1){let r=IG(e,t);if(!e.getSharedSecret)throw Error("wrong curve");return{lengths:{...r.lengths,msg:r.lengths.seed,cipherText:r.lengths.publicKey},keygen:r.keygen,getPublicKey:r.getPublicKey,encapsulate(i,n=ii(e.lengths.seed)){let o=this.keygen(n).secretKey,s=this.decapsulate(i,o),a=e.getPublicKey(o);return Mt(o),{sharedSecret:s,cipherText:a}},decapsulate(i,n){let o=e.getSharedSecret(n,i);return e.lengths.publicKeyHasPrefix?o.subarray(1):o}}}function td(e,t){return js(t,...e.map((r)=>{if(typeof r.lengths[t]!=="number")throw Error("wrong length: "+t);return r.lengths[t]}))}function LS(e){return(t,r)=>e(t,{dkLen:r})}function AG(e,t,...r){let i=td(r,"seed"),n=td(r,"publicKey");if(e===void 0)e=i.bytesLen;Vt(e);function o(s){Ne(s,e);let a=i.decode(t(s,i.bytesLen)),c=r.map((d,p)=>d.keygen(a[p])),l=c.map((d)=>d.secretKey),u=c.map((d)=>d.publicKey);return{secretKey:l,publicKey:u}}return{info:{lengths:{seed:e,publicKey:n.bytesLen,secretKey:e}},getPublicKey(s){return this.keygen(s).publicKey},keygen(s=ii(e)){let{publicKey:a,secretKey:c}=o(s),l=n.encode(a);return Mt(a),Mt(c),{secretKey:s,publicKey:l}},expandDecapsulationKey:o,realSeedLen:e}}function Tm(e,t,r,i,...n){let o=AG(e,r,...n),s=td(n,"cipherText"),a=td(n,"publicKey"),c=td(n,"msg");if(t===void 0)t=c.bytesLen;return Vt(t),{lengths:{...o.info.lengths,msg:t,msgRand:c.bytesLen,cipherText:s.bytesLen},getPublicKey:o.getPublicKey,keygen:o.keygen,encapsulate(l,u=ii(c.bytesLen)){let d=a.decode(l),p=c.decode(u),m=n.map((v,A)=>v.encapsulate(d[A],p[A])),y=m.map((v)=>v.sharedSecret),g=m.map((v)=>v.cipherText),b={sharedSecret:i(d,g,y),cipherText:s.encode(g)};return Mt(y,g),b},decapsulate(l,u){let d=s.decode(l),{publicKey:p,secretKey:m}=o.expandDecapsulationKey(u),y=n.map((g,b)=>g.decapsulate(d[b],m[b]));return i(p,d,y)}}}function hz(e,t,r,i,n){return bn(i),bn(n),Tm(32,32,LS(i),(o,s,a)=>n(Lt(a[0],a[1],s[1],o[1],_o(e))),t,r)}var X1e=hz("QSF-KEM(ML-KEM-768,P-256)-XOF(SHAKE256)-KDF(SHA3-256)",ed,DS(AS,!0),ni,Bs),eIe=hz("QSF-KEM(ML-KEM-1024,P-384)-XOF(SHAKE256)-KDF(SHA3-256)",mz,DS(KP,!0),ni,Bs);function TG(e,t,r,i,n){return bn(i),bn(n),Tm(32,32,LS(i),(o,s,a)=>{let c=Lt(a[0],a[1],s[0],o[0],s[1],o[1],_o(e)),l=32,u=Lt(_o("hybrid_prk"),c),d=WP(n,u),p=Lt(pc(32,2),_o("shared_secret"),_o("")),m=GP(n,d,p,32);return Mt(d,p,u,c),m},t,r)}var gz=DS(JP),tIe=TG("KitchenSink-KEM(ML-KEM-768,X25519)-XOF(SHAKE256)-KDF(HKDF-SHA-256)",ed,gz,ni,_m),$G=(()=>Tm(32,32,LS(ni),(e,t,r)=>Bs(Lt(r[0],r[1],t[1],e[1],_o("\\.//^\\"))),ed,gz))();function CG(e,t,r,i){let n=e.Point.Fn;if(!n)throw Error("no Point.Fn");function o(s){let a;for(let u=0,d=t;;u=d,d+=t){if(d>s.length)throw Error("rejection sampling failed");if(a=n.fromBytes(s.subarray(u,d),!0),n.isValidNot0(a))break}let c=n.toBytes(n.create(a)),l=e.getPublicKey(c,!1);return{secretKey:c,publicKey:l}}return{lengths:{secretKey:t,publicKey:r,seed:i,msg:i,cipherText:r},keygen(s=ii(i)){return Ne(s,i,"seed"),o(s)},getPublicKey(s){return e.getPublicKey(s,!1)},encapsulate(s,a=ii(i)){Ne(a,i,"rand");let{secretKey:c}=o(a),l=this.decapsulate(s,c),u=e.getPublicKey(c,!1);return Mt(c),{sharedSecret:l,cipherText:u}},decapsulate(s,a){return e.getSharedSecret(a,s).subarray(1)}}}function OG(e,t,r,i){let{secretKey:n,publicKeyUncompressed:o}=r.lengths;if(!n||!o)throw Error("wrong curve");let s=CG(r,n,o,i),a=64,c=a+i;return Tm(32,32,(l)=>{Ne(l,32);let u=ni(l,{dkLen:c}),d=u.subarray(0,a),p=u.subarray(a,c);return Lt(d,p)},(l,u,d)=>Bs(Lt(d[0],d[1],u[1],l[1],_o(e))),t,s)}var RG=(()=>OG("MLKEM768-P256",ed,AS,128))();var $m=$G,yz=RG;/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */var lt=(e,t,r)=>rr(e,t,r),jS=Ct,bc=Xp,sr=(...e)=>Fx(...e),xc=(e)=>Ru(e),Sc=jx,wc=(e)=>Ti(e),Om=BigInt(0),BS=BigInt(1);function Di(e,t=""){if(typeof e!=="boolean"){let r=t&&`"${t}" `;throw TypeError(r+"expected boolean, got type="+typeof e)}return e}function Rm(e){if(typeof e==="bigint"){if(!Cm(e))throw RangeError("positive bigint expected, got "+e)}else jS(e);return e}function oi(e,t=""){if(typeof e!=="number"){let r=t&&`"${t}" `;throw TypeError(r+"expected number, got type="+typeof e)}if(!Number.isSafeInteger(e)){let r=t&&`"${t}" `;throw RangeError(r+"expected safe integer, got "+e)}}function rd(e){let t=Rm(e).toString(16);return t.length&1?"0"+t:t}function bz(e){if(typeof e!=="string")throw TypeError("hex string expected, got "+typeof e);return e===""?Om:BigInt("0x"+e)}function Fs(e){return bz(Xp(e))}function Dn(e){return bz(Xp(To(rr(e)).reverse()))}function Pm(e,t){if(Ct(t),t===0)throw RangeError("zero length");e=Rm(e);let r=e.toString(16);if(r.length>t*2)throw RangeError("number too large");return Ru(r.padStart(t*2,"0"))}function nd(e,t){return Pm(e,t).reverse()}function xz(e,t){if(e=lt(e),t=lt(t),e.length!==t.length)return!1;let r=0;for(let i=0;i<e.length;i++)r|=e[i]^t[i];return r===0}function To(e){return Uint8Array.from(lt(e))}function zm(e){if(typeof e!=="string")throw TypeError("ascii string expected, got "+typeof e);return Uint8Array.from(e,(t,r)=>{let i=t.charCodeAt(0);if(t.length!==1||i>127)throw RangeError(`string contains non-ASCII character "${e[r]}" with code ${i} at position ${r}`);return i})}var Cm=(e)=>typeof e==="bigint"&&Om<=e;function PG(e,t,r){return Cm(e)&&Cm(t)&&Cm(r)&&t<=e&&e<r}function Li(e,t,r,i){if(!PG(t,r,i))throw RangeError("expected valid "+e+": "+r+" <= n < "+i+", got "+t)}function vc(e){if(e<Om)throw Error("expected non-negative bigint, got "+e);let t;for(t=0;e>Om;e>>=BS,t+=1);return t}var id=(e)=>(BS<<BigInt(e))-BS;function Sz(e,t,r){if(Ct(e,"hashLen"),Ct(t,"qByteLen"),typeof r!=="function")throw TypeError("hmacFn must be a function");let i=(b)=>new Uint8Array(b),n=Uint8Array.of(),o=Uint8Array.of(0),s=Uint8Array.of(1),a=1000,c=i(e),l=i(e),u=0,d=()=>{c.fill(1),l.fill(0),u=0},p=(...b)=>r(l,sr(c,...b)),m=(b=n)=>{if(l=p(o,b),c=p(),b.length===0)return;l=p(s,b),c=p()},y=()=>{if(u++>=a)throw Error("drbg: tried max amount of iterations");let b=0,v=[];while(b<t){c=p();let A=c.slice();v.push(A),b+=c.length}return sr(...v)};return(b,v)=>{d(),m(b);let A=void 0;while((A=v(y()))===void 0)m();return d(),A}}function Sn(e,t={},r={}){if(Object.prototype.toString.call(e)!=="[object Object]")throw TypeError("expected valid options object");function i(o,s,a){if(!a&&s!=="function"&&!Object.hasOwn(e,o))throw TypeError(`param "${o}" is invalid: expected own property`);let c=e[o];if(a&&c===void 0)return;let l=typeof c;if(l!==s||c===null)throw TypeError(`param "${o}" is invalid: expected ${s}, got ${l}`)}let n=(o,s)=>Object.entries(o).forEach(([a,c])=>i(a,c,s));n(t,!1),n(r,!0)}var qS=()=>{throw Error("not implemented")};/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */var ar=BigInt(0),Et=BigInt(1),Ms=BigInt(2),kz=BigInt(3),Ez=BigInt(4),Iz=BigInt(5),zG=BigInt(7),Az=BigInt(8),NG=BigInt(9),Tz=BigInt(16);function gt(e,t){if(t<=ar)throw Error("mod: expected positive modulus, got "+t);let r=e%t;return r>=ar?r:t+r}function wn(e,t,r){if(t<ar)throw Error("pow2: expected non-negative exponent, got "+t);let i=e;while(t-- >ar)i*=i,i%=r;return i}function wz(e,t){if(e===ar)throw Error("invert: expected non-zero number");if(t<=ar)throw Error("invert: expected positive modulus, got "+t);let r=gt(e,t),i=t,n=ar,o=Et,s=Et,a=ar;while(r!==ar){let l=i/r,u=i-r*l,d=n-s*l,p=o-a*l;i=r,r=u,n=s,o=a,s=d,a=p}if(i!==Et)throw Error("invert: does not exist");return gt(n,t)}function US(e,t,r){let i=e;if(!i.eql(i.sqr(t),r))throw Error("Cannot find square root")}function $z(e,t){let r=e,i=(r.ORDER+Et)/Ez,n=r.pow(t,i);return US(r,n,t),n}function DG(e,t){let r=e,i=(r.ORDER-Iz)/Az,n=r.mul(t,Ms),o=r.pow(n,i),s=r.mul(t,o),a=r.mul(r.mul(s,Ms),o),c=r.mul(s,r.sub(a,r.ONE));return US(r,c,t),c}function LG(e){let t=Nm(e),r=Cz(e),i=r(t,t.neg(t.ONE)),n=r(t,i),o=r(t,t.neg(i)),s=(e+zG)/Tz;return(a,c)=>{let l=a,u=l.pow(c,s),d=l.mul(u,i),p=l.mul(u,n),m=l.mul(u,o),y=l.eql(l.sqr(d),c),g=l.eql(l.sqr(p),c);u=l.cmov(u,d,y),d=l.cmov(m,p,g);let b=l.eql(l.sqr(d),c),v=l.cmov(u,d,b);return US(l,v,c),v}}function Cz(e){if(e<kz)throw Error("sqrt is not defined for small field");let t=e-Et,r=0;while(t%Ms===ar)t/=Ms,r++;let i=Ms,n=Nm(e);while(vz(n,i)===1)if(i++>1000)throw Error("Cannot find square root: probably non-prime P");if(r===1)return $z;let o=n.pow(i,t),s=(t+Et)/Ms;return function(c,l){let u=c;if(u.is0(l))return l;if(vz(u,l)!==1)throw Error("Cannot find square root");let d=r,p=u.mul(u.ONE,o),m=u.pow(l,t),y=u.pow(l,s);while(!u.eql(m,u.ONE)){if(u.is0(m))return u.ZERO;let g=1,b=u.sqr(m);while(!u.eql(b,u.ONE))if(g++,b=u.sqr(b),g===d)throw Error("Cannot find square root");let v=Et<<BigInt(d-g-1),A=u.pow(p,v);d=g,p=u.sqr(A),m=u.mul(m,p),y=u.mul(y,A)}return y}}function BG(e){if(e%Ez===kz)return $z;if(e%Az===Iz)return DG;if(e%Tz===NG)return LG(e);return Cz(e)}var Bi=(e,t)=>(gt(e,t)&Et)===Et,jG=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function FS(e){let t={ORDER:"bigint",BYTES:"number",BITS:"number"},r=jG.reduce((i,n)=>(i[n]="function",i),t);if(Sn(e,r),oi(e.BYTES,"BYTES"),oi(e.BITS,"BITS"),e.BYTES<1||e.BITS<1)throw Error("invalid field: expected BYTES/BITS > 0");if(e.ORDER<=Et)throw Error("invalid field: expected ORDER > 1, got "+e.ORDER);return e}function qG(e,t,r){let i=e;if(r<ar)throw Error("invalid exponent, negatives unsupported");if(r===ar)return i.ONE;if(r===Et)return t;let n=i.ONE,o=t;while(r>ar){if(r&Et)n=i.mul(n,o);o=i.sqr(o),r>>=Et}return n}function od(e,t,r=!1){let i=e,n=Array(t.length).fill(r?i.ZERO:void 0),o=t.reduce((a,c,l)=>{if(i.is0(c))return a;return n[l]=a,i.mul(a,c)},i.ONE),s=i.inv(o);return t.reduceRight((a,c,l)=>{if(i.is0(c))return a;return n[l]=i.mul(a,n[l]),i.mul(a,c)},s),n}function vz(e,t){let r=e,i=(r.ORDER-Et)/Ms,n=r.pow(t,i),o=r.eql(n,r.ONE),s=r.eql(n,r.ZERO),a=r.eql(n,r.neg(r.ONE));if(!o&&!s&&!a)throw Error("invalid Legendre symbol result");return o?1:s?0:-1}function UG(e,t){if(t!==void 0)jS(t);if(e<=ar)throw Error("invalid n length: expected positive n, got "+e);if(t!==void 0&&t<1)throw Error("invalid n length: expected positive bit length, got "+t);let r=vc(e);if(t!==void 0&&t<r)throw Error(`invalid n length: expected bit length (${r}) >= n.length (${t})`);let i=t!==void 0?t:r,n=Math.ceil(i/8);return{nBitLength:i,nByteLength:n}}var _z=new WeakMap;class MS{ORDER;BITS;BYTES;isLE;ZERO=ar;ONE=Et;_lengths;_mod;constructor(e,t={}){if(e<=Et)throw Error("invalid field: expected ORDER > 1, got "+e);let r=void 0;if(this.isLE=!1,t!=null&&typeof t==="object"){if(typeof t.BITS==="number")r=t.BITS;if(typeof t.sqrt==="function")Object.defineProperty(this,"sqrt",{value:t.sqrt,enumerable:!0});if(typeof t.isLE==="boolean")this.isLE=t.isLE;if(t.allowedLengths)this._lengths=Object.freeze(t.allowedLengths.slice());if(typeof t.modFromBytes==="boolean")this._mod=t.modFromBytes}let{nBitLength:i,nByteLength:n}=UG(e,r);if(n>2048)throw Error("invalid field: expected ORDER of <= 2048 bytes");this.ORDER=e,this.BITS=i,this.BYTES=n,Object.freeze(this)}create(e){return gt(e,this.ORDER)}isValid(e){if(typeof e!=="bigint")throw TypeError("invalid field element: expected bigint, got "+typeof e);return ar<=e&&e<this.ORDER}is0(e){return e===ar}isValidNot0(e){return!this.is0(e)&&this.isValid(e)}isOdd(e){return(e&Et)===Et}neg(e){return gt(-e,this.ORDER)}eql(e,t){return e===t}sqr(e){return gt(e*e,this.ORDER)}add(e,t){return gt(e+t,this.ORDER)}sub(e,t){return gt(e-t,this.ORDER)}mul(e,t){return gt(e*t,this.ORDER)}pow(e,t){return qG(this,e,t)}div(e,t){return gt(e*wz(t,this.ORDER),this.ORDER)}sqrN(e){return e*e}addN(e,t){return e+t}subN(e,t){return e-t}mulN(e,t){return e*t}inv(e){return wz(e,this.ORDER)}sqrt(e){let t=_z.get(this);if(!t)_z.set(this,t=BG(this.ORDER));return t(this,e)}toBytes(e){return this.isLE?nd(e,this.BYTES):Pm(e,this.BYTES)}fromBytes(e,t=!1){lt(e);let{_lengths:r,BYTES:i,isLE:n,ORDER:o,_mod:s}=this;if(r){if(e.length<1||!r.includes(e.length)||e.length>i)throw Error("Field.fromBytes: expected "+r+" bytes, got "+e.length);let c=new Uint8Array(i);c.set(e,n?0:c.length-e.length),e=c}if(e.length!==i)throw Error("Field.fromBytes: expected "+i+" bytes, got "+e.length);let a=n?Dn(e):Fs(e);if(s)a=gt(a,o);if(!t){if(!this.isValid(a))throw Error("invalid field element: outside of range 0..ORDER")}return a}invertBatch(e){return od(this,e)}cmov(e,t,r){return Di(r,"condition"),r?t:e}}Object.freeze(MS.prototype);function Nm(e,t={}){return new MS(e,t)}function Oz(e){if(typeof e!=="bigint")throw Error("field order must be bigint");if(e<=Et)throw Error("field order must be greater than 1");let t=vc(e-Et);return Math.ceil(t/8)}function ZS(e){let t=Oz(e);return t+Math.ceil(t/2)}function Rz(e,t,r=!1){lt(e);let i=e.length,n=Oz(t),o=Math.max(ZS(t),16);if(i<o||i>1024)throw Error("expected "+o+"-1024 bytes of input, got "+i);let s=r?Dn(e):Fs(e),a=gt(s,t-Et)+Et;return r?nd(a,n):Pm(a,n)}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */var _c=BigInt(0),Zs=BigInt(1);function sd(e,t){let r=t.negate();return e?r:t}function Hs(e,t){let r=od(e.Fp,t.map((i)=>i.Z));return t.map((i,n)=>e.fromAffine(i.toAffine(r[n])))}function Dz(e,t){if(!Number.isSafeInteger(e)||e<=0||e>t)throw Error("invalid window size, expected [1.."+t+"], got W="+e)}function HS(e,t){Dz(e,t);let r=Math.ceil(t/e)+1,i=2**(e-1),n=2**e,o=id(e),s=BigInt(e);return{windows:r,windowSize:i,mask:o,maxNumber:n,shiftBy:s}}function Pz(e,t,r){let{windowSize:i,mask:n,maxNumber:o,shiftBy:s}=r,a=Number(e&n),c=e>>s;if(a>i)a-=o,c+=Zs;let l=t*i,u=l+Math.abs(a)-1,d=a===0,p=a<0,m=t%2!==0;return{nextN:c,offset:u,isZero:d,isNeg:p,isNegF:m,offsetF:l}}var JS=new WeakMap,Lz=new WeakMap;function KS(e){return Lz.get(e)||1}function zz(e){if(e!==_c)throw Error("invalid wNAF")}class ad{BASE;ZERO;Fn;bits;constructor(e,t){this.BASE=e.BASE,this.ZERO=e.ZERO,this.Fn=e.Fn,this.bits=t}_unsafeLadder(e,t,r=this.ZERO){let i=e;while(t>_c){if(t&Zs)r=r.add(i);i=i.double(),t>>=Zs}return r}precomputeWindow(e,t){let{windows:r,windowSize:i}=HS(t,this.bits),n=[],o=e,s=o;for(let a=0;a<r;a++){s=o,n.push(s);for(let c=1;c<i;c++)s=s.add(o),n.push(s);o=s.double()}return n}wNAF(e,t,r){if(!this.Fn.isValid(r))throw Error("invalid scalar");let i=this.ZERO,n=this.BASE,o=HS(e,this.bits);for(let s=0;s<o.windows;s++){let{nextN:a,offset:c,isZero:l,isNeg:u,isNegF:d,offsetF:p}=Pz(r,s,o);if(r=a,l)n=n.add(sd(d,t[p]));else i=i.add(sd(u,t[c]))}return zz(r),{p:i,f:n}}wNAFUnsafe(e,t,r,i=this.ZERO){let n=HS(e,this.bits);for(let o=0;o<n.windows;o++){if(r===_c)break;let{nextN:s,offset:a,isZero:c,isNeg:l}=Pz(r,o,n);if(r=s,c)continue;else{let u=t[a];i=i.add(l?u.negate():u)}}return zz(r),i}getPrecomputes(e,t,r){let i=JS.get(t);if(!i){if(i=this.precomputeWindow(t,e),e!==1){if(typeof r==="function")i=r(i);JS.set(t,i)}}return i}cached(e,t,r){let i=KS(e);return this.wNAF(i,this.getPrecomputes(i,e,r),t)}unsafe(e,t,r,i){let n=KS(e);if(n===1)return this._unsafeLadder(e,t,i);return this.wNAFUnsafe(n,this.getPrecomputes(n,e,r),t,i)}createCache(e,t){Dz(t,this.bits),Lz.set(e,t),JS.delete(e)}hasCache(e){return KS(e)!==1}}function Bz(e,t,r,i){let n=t,o=e.ZERO,s=e.ZERO;while(r>_c||i>_c){if(r&Zs)o=o.add(n);if(i&Zs)s=s.add(n);n=n.double(),r>>=Zs,i>>=Zs}return{p1:o,p2:s}}function Nz(e,t,r){if(t){if(t.ORDER!==e)throw Error("Field.ORDER must match order: Fp == p, Fn == n");return FS(t),t}else return Nm(e,{isLE:r})}function Dm(e,t,r={},i){if(i===void 0)i=e==="edwards";if(!t||typeof t!=="object")throw Error(`expected valid ${e} CURVE object`);for(let c of["p","n","h"]){let l=t[c];if(!(typeof l==="bigint"&&l>_c))throw Error(`CURVE.${c} must be positive bigint`)}let n=Nz(t.p,r.Fp,i),o=Nz(t.n,r.Fn,i),a=["Gx","Gy","a",e==="weierstrass"?"b":"d"];for(let c of a)if(!n.isValid(t[c]))throw Error(`CURVE.${c} must be valid field element of CURVE.Fp`);return t=Object.freeze(Object.assign({},t)),{CURVE:t,Fp:n,Fn:o}}function cd(e,t){return function(i){let n=e(i);return{secretKey:n,publicKey:t(n)}}}function ld(e,t){if(oi(e),oi(t),t<0||t>4)throw Error("invalid I2OSP length: "+t);if(e<0||e>2**(8*t)-1)throw Error("invalid I2OSP input: "+e);let r=Array.from({length:t}).fill(0);for(let i=t-1;i>=0;i--)r[i]=e&255,e>>>=8;return new Uint8Array(r)}function FG(e,t){let r=new Uint8Array(e.length);for(let i=0;i<e.length;i++)r[i]=e[i]^t[i];return r}function MG(e){if(!Sc(e)&&typeof e!=="string")throw Error("DST must be Uint8Array or ascii string");let t=typeof e==="string"?zm(e):e;if(t.length===0)throw Error("DST must be non-empty");return t}function VS(e,t,r,i){if(lt(e),oi(r),t=MG(t),t.length>255)t=i(sr(zm("H2C-OVERSIZE-DST-"),t));let{outputLen:n,blockLen:o}=i,s=Math.ceil(r/n);if(r>65535||s>255)throw Error("expand_message_xmd: invalid lenInBytes");let a=sr(t,ld(t.length,1)),c=new Uint8Array(o),l=ld(r,2),u=Array(s),d=i(sr(c,e,l,ld(0,1),a));u[0]=i(sr(d,ld(1,1),a));for(let m=1;m<s;m++){let y=[FG(d,u[m-1]),ld(m+1,1),a];u[m]=i(sr(...y))}return sr(...u).slice(0,r)}var jz="HashToScalar-";/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */var qz=(e,t)=>(e+(e>=0?t:-t)/Fz)/t;function ZG(e,t,r){Li("scalar",e,si,r);let[[i,n],[o,s]]=t,a=qz(s*e,r),c=qz(-n*e,r),l=e-a*i-c*o,u=-a*n-c*s,d=l<si,p=u<si;if(d)l=-l;if(p)u=-u;let m=id(Math.ceil(vc(r)/2))+$o;if(l<si||l>=m||u<si||u>=m)throw Error("splitScalar (endomorphism): failed for k");return{k1neg:d,k1:l,k2neg:p,k2:u}}function GS(e){if(!["compact","recovered","der"].includes(e))throw Error('Signature format must be "compact", "recovered", or "der"');return e}function WS(e,t){Sn(e);let r={};for(let i of Object.keys(t))r[i]=e[i]===void 0?t[i]:e[i];if(Di(r.lowS,"lowS"),Di(r.prehash,"prehash"),r.format!==void 0)GS(r.format);return r}class Uz extends Error{constructor(e=""){super(e)}}var Ln={Err:Uz,_tlv:{encode:(e,t)=>{let{Err:r}=Ln;if(oi(e,"tag"),e<0||e>255)throw new r("tlv.encode: wrong tag");if(typeof t!=="string")throw TypeError('"data" expected string, got type='+typeof t);if(t.length&1)throw new r("tlv.encode: unpadded data");let i=t.length/2,n=rd(i);if(n.length/2&128)throw new r("tlv.encode: long form length too big");let o=i>127?rd(n.length/2|128):"";return rd(e)+o+n+t},decode(e,t){let{Err:r}=Ln;t=lt(t,void 0,"DER data");let i=0;if(e<0||e>255)throw new r("tlv.encode: wrong tag");if(t.length<2||t[i++]!==e)throw new r("tlv.decode: wrong tlv");let n=t[i++],o=!!(n&128),s=0;if(!o)s=n;else{let c=n&127;if(!c)throw new r("tlv.decode(long): indefinite length not supported");if(c>4)throw new r("tlv.decode(long): byte length is too big");let l=t.subarray(i,i+c);if(l.length!==c)throw new r("tlv.decode: length bytes not complete");if(l[0]===0)throw new r("tlv.decode(long): zero leftmost byte");for(let u of l)s=s<<8|u;if(i+=c,s<128)throw new r("tlv.decode(long): not minimal encoding")}let a=t.subarray(i,i+s);if(a.length!==s)throw new r("tlv.decode: wrong value length");return{v:a,l:t.subarray(i+s)}}},_int:{encode(e){let{Err:t}=Ln;if(Rm(e),e<si)throw new t("integer: negative integers are not allowed");let r=rd(e);if(Number.parseInt(r[0],16)&8)r="00"+r;if(r.length&1)throw new t("unexpected DER parsing assertion: unpadded hex");return r},decode(e){let{Err:t}=Ln;if(e.length<1)throw new t("invalid signature integer: empty");if(e[0]&128)throw new t("invalid signature integer: negative");if(e.length>1&&e[0]===0&&!(e[1]&128))throw new t("invalid signature integer: unnecessary leading zero");return Fs(e)}},toSig(e){let{Err:t,_int:r,_tlv:i}=Ln,n=lt(e,void 0,"signature"),{v:o,l:s}=i.decode(48,n);if(s.length)throw new t("invalid signature: left bytes after parsing");let{v:a,l:c}=i.decode(2,o),{v:l,l:u}=i.decode(2,c);if(u.length)throw new t("invalid signature: left bytes after parsing");return{r:r.decode(a),s:r.decode(l)}},hexFromSig(e){let{_tlv:t,_int:r}=Ln,i=t.encode(2,r.encode(e.r)),n=t.encode(2,r.encode(e.s)),o=i+n;return t.encode(48,o)}};Object.freeze(Ln._tlv);Object.freeze(Ln._int);Object.freeze(Ln);var si=BigInt(0),$o=BigInt(1),Fz=BigInt(2),Lm=BigInt(3),HG=BigInt(4);function Mz(e,t={}){let r=Dm("weierstrass",e,t),i=r.Fp,n=r.Fn,o=r.CURVE,{h:s,n:a}=o;Sn(t,{},{allowInfinityPoint:"boolean",clearCofactor:"function",isTorsionFree:"function",fromBytes:"function",toBytes:"function",endo:"object"});let{endo:c,allowInfinityPoint:l}=t;if(c){if(!i.is0(o.a)||typeof c.beta!=="bigint"||!Array.isArray(c.basises))throw Error('invalid endo: expected "beta": bigint and "basises": array')}let u=Hz(i,n);function d(){if(!i.isOdd)throw Error("compression is not supported: Field does not have .isOdd()")}function p(F,P,N){if(l&&P.is0())return Uint8Array.of(0);let{x:I,y:R}=P.toAffine(),O=i.toBytes(I);if(Di(N,"isCompressed"),N){d();let M=!i.isOdd(R);return sr(Zz(M),O)}else return sr(Uint8Array.of(4),O,i.toBytes(R))}function m(F){lt(F,void 0,"Point");let{publicKey:P,publicKeyUncompressed:N}=u,I=F.length,R=F[0],O=F.subarray(1);if(l&&I===1&&R===0)return{x:i.ZERO,y:i.ZERO};if(I===P&&(R===2||R===3)){let M=i.fromBytes(O);if(!i.isValid(M))throw Error("bad point: is not on curve, wrong x");let L=b(M),V;try{V=i.sqrt(L)}catch(ue){let C=ue instanceof Error?": "+ue.message:"";throw Error("bad point: is not on curve, sqrt error"+C)}d();let _=i.isOdd(V);if((R&1)===1!==_)V=i.neg(V);return{x:M,y:V}}else if(I===N&&R===4){let M=i.BYTES,L=i.fromBytes(O.subarray(0,M)),V=i.fromBytes(O.subarray(M,M*2));if(!v(L,V))throw Error("bad point: is not on curve");return{x:L,y:V}}else throw Error(`bad point: got length ${I}, expected compressed=${P} or uncompressed=${N}`)}let y=t.toBytes===void 0?p:t.toBytes,g=t.fromBytes===void 0?m:t.fromBytes;function b(F){let P=i.sqr(F),N=i.mul(P,F);return i.add(i.add(N,i.mul(F,o.a)),o.b)}function v(F,P){let N=i.sqr(P),I=b(F);return i.eql(N,I)}if(!v(o.Gx,o.Gy))throw Error("bad curve params: generator point");let A=i.mul(i.pow(o.a,Lm),HG),T=i.mul(i.sqr(o.b),BigInt(27));if(i.is0(i.add(A,T)))throw Error("bad curve params: a or b");function z(F,P,N=!1){if(!i.isValid(P)||N&&i.is0(P))throw Error(`bad point coordinate ${F}`);return P}function j(F){if(!(F instanceof D))throw Error("Weierstrass Point expected")}function E(F){if(!c||!c.basises)throw Error("no endo");return ZG(F,c.basises,n.ORDER)}function Z(F,P,N,I,R){return N=new D(i.mul(N.X,F),N.Y,N.Z),P=sd(I,P),N=sd(R,N),P.add(N)}class D{static BASE=new D(o.Gx,o.Gy,i.ONE);static ZERO=new D(i.ZERO,i.ONE,i.ZERO);static Fp=i;static Fn=n;X;Y;Z;constructor(F,P,N){this.X=z("x",F),this.Y=z("y",P,!0),this.Z=z("z",N),Object.freeze(this)}static CURVE(){return o}static fromAffine(F){let{x:P,y:N}=F||{};if(!F||!i.isValid(P)||!i.isValid(N))throw Error("invalid affine point");if(F instanceof D)throw Error("projective point not allowed");if(i.is0(P)&&i.is0(N))return D.ZERO;return new D(P,N,i.ONE)}static fromBytes(F){let P=D.fromAffine(g(lt(F,void 0,"point")));return P.assertValidity(),P}static fromHex(F){return D.fromBytes(xc(F))}get x(){return this.toAffine().x}get y(){return this.toAffine().y}precompute(F=8,P=!0){if(X.createCache(this,F),!P)this.multiply(Lm);return this}assertValidity(){let F=this;if(F.is0()){if(t.allowInfinityPoint&&i.is0(F.X)&&i.eql(F.Y,i.ONE)&&i.is0(F.Z))return;throw Error("bad point: ZERO")}let{x:P,y:N}=F.toAffine();if(!i.isValid(P)||!i.isValid(N))throw Error("bad point: x or y not field elements");if(!v(P,N))throw Error("bad point: equation left != right");if(!F.isTorsionFree())throw Error("bad point: not in prime-order subgroup")}hasEvenY(){let{y:F}=this.toAffine();if(!i.isOdd)throw Error("Field doesn't support isOdd");return!i.isOdd(F)}equals(F){j(F);let{X:P,Y:N,Z:I}=this,{X:R,Y:O,Z:M}=F,L=i.eql(i.mul(P,M),i.mul(R,I)),V=i.eql(i.mul(N,M),i.mul(O,I));return L&&V}negate(){return new D(this.X,i.neg(this.Y),this.Z)}double(){let{a:F,b:P}=o,N=i.mul(P,Lm),{X:I,Y:R,Z:O}=this,M=i.ZERO,L=i.ZERO,V=i.ZERO,_=i.mul(I,I),te=i.mul(R,R),ue=i.mul(O,O),C=i.mul(I,R);return C=i.add(C,C),V=i.mul(I,O),V=i.add(V,V),M=i.mul(F,V),L=i.mul(N,ue),L=i.add(M,L),M=i.sub(te,L),L=i.add(te,L),L=i.mul(M,L),M=i.mul(C,M),V=i.mul(N,V),ue=i.mul(F,ue),C=i.sub(_,ue),C=i.mul(F,C),C=i.add(C,V),V=i.add(_,_),_=i.add(V,_),_=i.add(_,ue),_=i.mul(_,C),L=i.add(L,_),ue=i.mul(R,O),ue=i.add(ue,ue),_=i.mul(ue,C),M=i.sub(M,_),V=i.mul(ue,te),V=i.add(V,V),V=i.add(V,V),new D(M,L,V)}add(F){j(F);let{X:P,Y:N,Z:I}=this,{X:R,Y:O,Z:M}=F,L=i.ZERO,V=i.ZERO,_=i.ZERO,te=o.a,ue=i.mul(o.b,Lm),C=i.mul(P,R),Se=i.mul(N,O),Ee=i.mul(I,M),Ce=i.add(P,N),$e=i.add(R,O);Ce=i.mul(Ce,$e),$e=i.add(C,Se),Ce=i.sub(Ce,$e),$e=i.add(P,I);let _e=i.add(R,M);return $e=i.mul($e,_e),_e=i.add(C,Ee),$e=i.sub($e,_e),_e=i.add(N,I),L=i.add(O,M),_e=i.mul(_e,L),L=i.add(Se,Ee),_e=i.sub(_e,L),_=i.mul(te,$e),L=i.mul(ue,Ee),_=i.add(L,_),L=i.sub(Se,_),_=i.add(Se,_),V=i.mul(L,_),Se=i.add(C,C),Se=i.add(Se,C),Ee=i.mul(te,Ee),$e=i.mul(ue,$e),Se=i.add(Se,Ee),Ee=i.sub(C,Ee),Ee=i.mul(te,Ee),$e=i.add($e,Ee),C=i.mul(Se,$e),V=i.add(V,C),C=i.mul(_e,$e),L=i.mul(Ce,L),L=i.sub(L,C),C=i.mul(Ce,Se),_=i.mul(_e,_),_=i.add(_,C),new D(L,V,_)}subtract(F){return j(F),this.add(F.negate())}is0(){return this.equals(D.ZERO)}multiply(F){let{endo:P}=t;if(!n.isValidNot0(F))throw RangeError("invalid scalar: out of range");let N,I,R=(O)=>X.cached(this,O,(M)=>Hs(D,M));if(P){let{k1neg:O,k1:M,k2neg:L,k2:V}=E(F),{p:_,f:te}=R(M),{p:ue,f:C}=R(V);I=te.add(C),N=Z(P.beta,_,ue,O,L)}else{let{p:O,f:M}=R(F);N=O,I=M}return Hs(D,[N,I])[0]}multiplyUnsafe(F){let{endo:P}=t,N=this,I=F;if(!n.isValid(I))throw RangeError("invalid scalar: out of range");if(I===si||N.is0())return D.ZERO;if(I===$o)return N;if(X.hasCache(this))return this.multiply(I);if(P){let{k1neg:R,k1:O,k2neg:M,k2:L}=E(I),{p1:V,p2:_}=Bz(D,N,O,L);return Z(P.beta,V,_,R,M)}else return X.unsafe(N,I)}toAffine(F){let P=this,N=F,{X:I,Y:R,Z:O}=P;if(i.eql(O,i.ONE))return{x:I,y:R};let M=P.is0();if(N==null)N=M?i.ONE:i.inv(O);let L=i.mul(I,N),V=i.mul(R,N),_=i.mul(O,N);if(M)return{x:i.ZERO,y:i.ZERO};if(!i.eql(_,i.ONE))throw Error("invZ was invalid");return{x:L,y:V}}isTorsionFree(){let{isTorsionFree:F}=t;if(s===$o)return!0;if(F)return F(D,this);return X.unsafe(this,a).is0()}clearCofactor(){let{clearCofactor:F}=t;if(s===$o)return this;if(F)return F(D,this);return this.multiplyUnsafe(s)}isSmallOrder(){if(s===$o)return this.is0();return this.clearCofactor().is0()}toBytes(F=!0){return Di(F,"isCompressed"),this.assertValidity(),y(D,this,F)}toHex(F=!0){return bc(this.toBytes(F))}toString(){return`<Point ${this.is0()?"ZERO":this.toHex()}>`}}let H=n.BITS,X=new ad(D,t.endo?Math.ceil(H/2):H);if(H>=8)D.BASE.precompute(8);return Object.freeze(D.prototype),Object.freeze(D),D}function Zz(e){return Uint8Array.of(e?2:3)}function Hz(e,t){return{secretKey:t.BYTES,publicKey:1+e.BYTES,publicKeyUncompressed:1+2*e.BYTES,publicKeyHasPrefix:!0,signature:2*t.BYTES}}function JG(e,t={}){let{Fn:r}=e,i=t.randomBytes===void 0?wc:t.randomBytes,n=Object.assign(Hz(e.Fp,r),{seed:Math.max(ZS(r.ORDER),16)});function o(m){try{let y=r.fromBytes(m);return r.isValidNot0(y)}catch(y){return!1}}function s(m,y){let{publicKey:g,publicKeyUncompressed:b}=n;try{let v=m.length;if(y===!0&&v!==g)return!1;if(y===!1&&v!==b)return!1;return!!e.fromBytes(m)}catch(v){return!1}}function a(m){return m=m===void 0?i(n.seed):m,Rz(lt(m,n.seed,"seed"),r.ORDER)}function c(m,y=!0){return e.BASE.multiply(r.fromBytes(m)).toBytes(y)}function l(m){let{secretKey:y,publicKey:g,publicKeyUncompressed:b}=n,v=r._lengths;if(!Sc(m))return;let A=lt(m,void 0,"key").length,T=A===g||A===b,z=A===y||!!v?.includes(A);if(T&&z)return;return T}function u(m,y,g=!0){if(l(m)===!0)throw Error("first arg must be private key");if(l(y)===!1)throw Error("second arg must be public key");let b=r.fromBytes(m);return e.fromBytes(y).multiply(b).toBytes(g)}let d={isValidSecretKey:o,isValidPublicKey:s,randomSecretKey:a},p=cd(a,c);return Object.freeze(d),Object.freeze(n),Object.freeze({getPublicKey:c,getSharedSecret:u,keygen:p,Point:e,utils:d,lengths:n})}function Jz(e,t,r={}){let i=t;Ai(i),Sn(r,{},{hmac:"function",lowS:"boolean",randomBytes:"function",bits2int:"function",bits2int_modN:"function"}),r=Object.assign({},r);let n=r.randomBytes===void 0?wc:r.randomBytes,o=r.hmac===void 0?(R,O)=>Xn(i,R,O):r.hmac,{Fp:s,Fn:a}=e,{ORDER:c,BITS:l}=a,{keygen:u,getPublicKey:d,getSharedSecret:p,utils:m,lengths:y}=JG(e,r),g={prehash:!0,lowS:typeof r.lowS==="boolean"?r.lowS:!0,format:"compact",extraEntropy:!1},b=c*Fz+$o<s.ORDER;function v(R){let O=c>>$o;return R>O}function A(R,O){if(!a.isValidNot0(O))throw Error(`invalid signature ${R}: out of range 1..Point.Fn.ORDER`);return O}function T(){if(b)throw Error('"recovered" sig type is not supported for cofactor >2 curves')}function z(R,O){GS(O);let M=y.signature,L=O==="compact"?M:O==="recovered"?M+1:void 0;return lt(R,L)}class j{r;s;recovery;constructor(R,O,M){if(this.r=A("r",R),this.s=A("s",O),M!=null){if(T(),![0,1,2,3].includes(M))throw Error("invalid recovery id");this.recovery=M}Object.freeze(this)}static fromBytes(R,O=g.format){z(R,O);let M;if(O==="der"){let{r:te,s:ue}=Ln.toSig(lt(R));return new j(te,ue)}if(O==="recovered")M=R[0],O="compact",R=R.subarray(1);let L=y.signature/2,V=R.subarray(0,L),_=R.subarray(L,L*2);return new j(a.fromBytes(V),a.fromBytes(_),M)}static fromHex(R,O){return this.fromBytes(xc(R),O)}assertRecovery(){let{recovery:R}=this;if(R==null)throw Error("invalid recovery id: must be present");return R}addRecoveryBit(R){return new j(this.r,this.s,R)}recoverPublicKey(R){let{r:O,s:M}=this,L=this.assertRecovery(),V=L===2||L===3?O+c:O;if(!s.isValid(V))throw Error("invalid recovery id: sig.r+curve.n != R.x");let _=s.toBytes(V),te=e.fromBytes(sr(Zz((L&1)===0),_)),ue=a.inv(V),C=Z(lt(R,void 0,"msgHash")),Se=a.create(-C*ue),Ee=a.create(M*ue),Ce=e.BASE.multiplyUnsafe(Se).add(te.multiplyUnsafe(Ee));if(Ce.is0())throw Error("invalid recovery: point at infinify");return Ce.assertValidity(),Ce}hasHighS(){return v(this.s)}toBytes(R=g.format){if(GS(R),R==="der")return xc(Ln.hexFromSig(this));let{r:O,s:M}=this,L=a.toBytes(O),V=a.toBytes(M);if(R==="recovered")return T(),sr(Uint8Array.of(this.assertRecovery()),L,V);return sr(L,V)}toHex(R){return bc(this.toBytes(R))}}Object.freeze(j.prototype),Object.freeze(j);let E=r.bits2int===void 0?function(O){if(O.length>8192)throw Error("input is too large");let M=Fs(O),L=O.length*8-l;return L>0?M>>BigInt(L):M}:r.bits2int,Z=r.bits2int_modN===void 0?function(O){return a.create(E(O))}:r.bits2int_modN,D=id(l);function H(R){return Li("num < 2^"+l,R,si,D),a.toBytes(R)}function X(R,O){return lt(R,void 0,"message"),O?lt(i(R),void 0,"prehashed message"):R}function F(R,O,M){let{lowS:L,prehash:V,extraEntropy:_}=WS(M,g);R=X(R,V);let te=Z(R),ue=a.fromBytes(O);if(!a.isValidNot0(ue))throw Error("invalid private key");let C=[H(ue),H(te)];if(_!=null&&_!==!1){let $e=_===!0?n(y.secretKey):_;C.push(lt($e,void 0,"extraEntropy"))}let Se=sr(...C),Ee=te;function Ce($e){let _e=E($e);if(!a.isValidNot0(_e))return;let Pe=a.inv(_e),Ve=e.BASE.multiply(_e).toAffine(),et=a.create(Ve.x);if(et===si)return;let St=a.create(Pe*a.create(Ee+et*ue));if(St===si)return;let Dt=(Ve.x===et?0:2)|Number(Ve.y&$o),hr=St;if(L&&v(St))hr=a.neg(St),Dt^=1;return new j(et,hr,b?void 0:Dt)}return{seed:Se,k2sig:Ce}}function P(R,O,M={}){let{seed:L,k2sig:V}=F(R,O,M);return Sz(i.outputLen,a.BYTES,o)(L,V).toBytes(M.format)}function N(R,O,M,L={}){let{lowS:V,prehash:_,format:te}=WS(L,g);if(M=lt(M,void 0,"publicKey"),O=X(O,_),!Sc(R)){let ue=R instanceof j?", use sig.toBytes()":"";throw Error("verify expects Uint8Array signature"+ue)}z(R,te);try{let ue=j.fromBytes(R,te),C=e.fromBytes(M);if(V&&ue.hasHighS())return!1;let{r:Se,s:Ee}=ue,Ce=Z(O),$e=a.inv(Ee),_e=a.create(Ce*$e),Pe=a.create(Se*$e),Ve=e.BASE.multiplyUnsafe(_e).add(C.multiplyUnsafe(Pe));if(Ve.is0())return!1;return a.create(Ve.x)===Se}catch(ue){return!1}}function I(R,O,M={}){let{prehash:L}=WS(M,g);return O=X(O,L),j.fromBytes(R,"recovered").recoverPublicKey(O).toBytes()}return Object.freeze({keygen:u,getPublicKey:d,getSharedSecret:p,utils:m,lengths:y,Point:e,sign:P,verify:N,recoverPublicKey:I,Signature:j,hash:i})}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */var KG=(()=>({p:BigInt("0xffffffff00000001000000000000000000000000ffffffffffffffffffffffff"),n:BigInt("0xffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551"),h:BigInt(1),a:BigInt("0xffffffff00000001000000000000000000000000fffffffffffffffffffffffc"),b:BigInt("0x5ac635d8aa3a93e7b3ebbd55769886bc651d06b0cc53b0f63bce3c3e27d2604b"),Gx:BigInt("0x6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296"),Gy:BigInt("0x4fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5")}))();var VG=Mz(KG),kc=Jz(VG,Ot);/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */var Co=BigInt(0),Mr=BigInt(1),QS=BigInt(2),WG=BigInt(8);function GG(e,t,r,i){let n=e.sqr(r),o=e.sqr(i),s=e.add(e.mul(t.a,n),o),a=e.add(e.ONE,e.mul(t.d,e.mul(n,o)));return e.eql(s,a)}function Kz(e,t={}){let r=t,i=Dm("edwards",e,r,r.FpFnLE),{Fp:n,Fn:o}=i,s=i.CURVE,{h:a}=s;Sn(r,{},{uvRatio:"function"});let c=QS<<BigInt(o.BYTES*8)-Mr,l=(g)=>n.create(g),u=r.uvRatio===void 0?(g,b)=>{try{return{isValid:!0,value:n.sqrt(n.div(g,b))}}catch(v){return{isValid:!1,value:Co}}}:r.uvRatio;if(!GG(n,s,s.Gx,s.Gy))throw Error("bad curve params: generator point");function d(g,b,v=!1){let A=v?Mr:Co;return Li("coordinate "+g,b,A,c),b}function p(g){if(!(g instanceof m))throw Error("EdwardsPoint expected")}class m{static BASE=new m(s.Gx,s.Gy,Mr,l(s.Gx*s.Gy));static ZERO=new m(Co,Mr,Mr,Co);static Fp=n;static Fn=o;X;Y;Z;T;constructor(g,b,v,A){this.X=d("x",g),this.Y=d("y",b),this.Z=d("z",v,!0),this.T=d("t",A),Object.freeze(this)}static CURVE(){return s}static fromAffine(g){if(g instanceof m)throw Error("extended point not allowed");let{x:b,y:v}=g||{};return d("x",b),d("y",v),new m(b,v,Mr,l(b*v))}static fromBytes(g,b=!1){let v=n.BYTES,{a:A,d:T}=s;g=To(lt(g,v,"point")),Di(b,"zip215");let z=To(g),j=g[v-1];z[v-1]=j&-129;let E=Dn(z),Z=b?c:n.ORDER;Li("point.y",E,Co,Z);let D=l(E*E),H=l(D-Mr),X=l(T*D-A),{isValid:F,value:P}=u(H,X);if(!F)throw Error("bad point: invalid y coordinate");let N=(P&Mr)===Mr,I=(j&128)!==0;if(!b&&P===Co&&I)throw Error("bad point: x=0 and x_0=1");if(I!==N)P=l(-P);return m.fromAffine({x:P,y:E})}static fromHex(g,b=!1){return m.fromBytes(xc(g),b)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}precompute(g=8,b=!0){if(y.createCache(this,g),!b)this.multiply(QS);return this}assertValidity(){let g=this,{a:b,d:v}=s;if(g.is0())throw Error("bad point: ZERO");let{X:A,Y:T,Z:z,T:j}=g,E=l(A*A),Z=l(T*T),D=l(z*z),H=l(D*D),X=l(E*b),F=l(D*l(X+Z)),P=l(H+l(v*l(E*Z)));if(F!==P)throw Error("bad point: equation left != right (1)");let N=l(A*T),I=l(z*j);if(N!==I)throw Error("bad point: equation left != right (2)")}equals(g){p(g);let{X:b,Y:v,Z:A}=this,{X:T,Y:z,Z:j}=g,E=l(b*j),Z=l(T*A),D=l(v*j),H=l(z*A);return E===Z&&D===H}is0(){return this.equals(m.ZERO)}negate(){return new m(l(-this.X),this.Y,this.Z,l(-this.T))}double(){let{a:g}=s,{X:b,Y:v,Z:A}=this,T=l(b*b),z=l(v*v),j=l(QS*l(A*A)),E=l(g*T),Z=b+v,D=l(l(Z*Z)-T-z),H=E+z,X=H-j,F=E-z,P=l(D*X),N=l(H*F),I=l(D*F),R=l(X*H);return new m(P,N,R,I)}add(g){p(g);let{a:b,d:v}=s,{X:A,Y:T,Z:z,T:j}=this,{X:E,Y:Z,Z:D,T:H}=g,X=l(A*E),F=l(T*Z),P=l(j*v*H),N=l(z*D),I=l((A+T)*(E+Z)-X-F),R=N-P,O=N+P,M=l(F-b*X),L=l(I*R),V=l(O*M),_=l(I*M),te=l(R*O);return new m(L,V,te,_)}subtract(g){return p(g),this.add(g.negate())}multiply(g){if(!o.isValidNot0(g))throw RangeError("invalid scalar: expected 1 <= sc < curve.n");let{p:b,f:v}=y.cached(this,g,(A)=>Hs(m,A));return Hs(m,[b,v])[0]}multiplyUnsafe(g){if(!o.isValid(g))throw RangeError("invalid scalar: expected 0 <= sc < curve.n");if(g===Co)return m.ZERO;if(this.is0()||g===Mr)return this;return y.unsafe(this,g,(b)=>Hs(m,b))}isSmallOrder(){return this.clearCofactor().is0()}isTorsionFree(){return y.unsafe(this,s.n).is0()}toAffine(g){let b=this,v=g,{X:A,Y:T,Z:z}=b,j=b.is0();if(v==null)v=j?WG:n.inv(z);let E=l(A*v),Z=l(T*v),D=n.mul(z,v);if(j)return{x:Co,y:Mr};if(D!==Mr)throw Error("invZ was invalid");return{x:E,y:Z}}clearCofactor(){if(a===Mr)return this;return this.multiplyUnsafe(a)}toBytes(){let{x:g,y:b}=this.toAffine(),v=n.toBytes(b);return v[v.length-1]|=g&Mr?128:0,v}toHex(){return bc(this.toBytes())}toString(){return`<Point ${this.is0()?"ZERO":this.toHex()}>`}}let y=new ad(m,o.BITS);if(o.BITS>=8)m.BASE.precompute(8);return Object.freeze(m.prototype),Object.freeze(m),m}class YS{static BASE;static ZERO;static Fp;static Fn;ep;constructor(e){this.ep=e}static fromBytes(e){qS()}static fromHex(e){qS()}get x(){return this.toAffine().x}get y(){return this.toAffine().y}clearCofactor(){return this}assertValidity(){this.ep.assertValidity()}toAffine(e){return this.ep.toAffine(e)}toHex(){return bc(this.toBytes())}toString(){return this.toHex()}isTorsionFree(){return!0}isSmallOrder(){return!1}add(e){return this.assertSame(e),this.init(this.ep.add(e.ep))}subtract(e){return this.assertSame(e),this.init(this.ep.subtract(e.ep))}multiply(e){return this.init(this.ep.multiply(e))}multiplyUnsafe(e){return this.init(this.ep.multiplyUnsafe(e))}double(){return this.init(this.ep.double())}negate(){return this.init(this.ep.negate())}precompute(e,t){return this.ep.precompute(e,t),this}}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */var ud=BigInt(0),Ec=BigInt(1),Bm=BigInt(2);function QG(e){return Sn(e,{P:"bigint",type:"string",adjustScalarBytes:"function",powPminus2:"function"},{randomBytes:"function"}),Object.freeze({...e})}function Vz(e){let t=QG(e),{P:r,type:i,adjustScalarBytes:n,powPminus2:o,randomBytes:s}=t,a=i==="x25519";if(!a&&i!=="x448")throw Error("invalid type");let c=s===void 0?wc:s,l=a?255:448,u=a?32:56,d=a?BigInt(9):BigInt(5),p=a?BigInt(121665):BigInt(39081),m=a?Bm**BigInt(254):Bm**BigInt(447),y=a?BigInt(8)*Bm**BigInt(251)-Ec:BigInt(4)*Bm**BigInt(445)-Ec,g=m+y+Ec,b=(I)=>gt(I,r),v=A(d);function A(I){return nd(b(I),u)}function T(I){let R=To(lt(I,u,"uCoordinate"));if(a)R[31]&=127;return b(Dn(R))}function z(I){return Dn(n(To(lt(I,u,"scalar"))))}function j(I,R){let O=X(T(R),z(I));if(O===ud)throw Error("invalid private or public key received");return A(O)}function E(I){return j(I,v)}let Z=E,D=j;function H(I,R,O){let M=b(I*(R-O));return R=b(R-M),O=b(O+M),{x_2:R,x_3:O}}function X(I,R){Li("u",I,ud,r),Li("scalar",R,m,g);let O=R,M=I,L=Ec,V=ud,_=I,te=Ec,ue=ud;for(let Se=BigInt(l-1);Se>=ud;Se--){let Ee=O>>Se&Ec;ue^=Ee,{x_2:L,x_3:_}=H(ue,L,_),{x_2:V,x_3:te}=H(ue,V,te),ue=Ee;let Ce=L+V,$e=b(Ce*Ce),_e=L-V,Pe=b(_e*_e),Ve=$e-Pe,et=_+te,St=_-te,Dt=b(St*Ce),hr=b(et*_e),Qr=Dt+hr,Yr=Dt-hr;_=b(Qr*Qr),te=b(M*b(Yr*Yr)),L=b($e*Pe),V=b(Ve*($e+b(p*Ve)))}({x_2:L,x_3:_}=H(ue,L,_)),{x_2:V,x_3:te}=H(ue,V,te);let C=o(V);return b(L*C)}let F={secretKey:u,publicKey:u,seed:u},P=(I)=>(I=I===void 0?c(u):I,lt(I,F.seed,"seed"),I),N={randomSecretKey:P};return Object.freeze(F),Object.freeze(N),Object.freeze({keygen:cd(P,Z),getSharedSecret:D,getPublicKey:Z,scalarMult:j,scalarMultBase:E,utils:N,GuBytes:v.slice(),lengths:F})}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */var YG=BigInt(0),ji=BigInt(1),Wz=BigInt(2),XG=BigInt(3),eQ=BigInt(5),tQ=BigInt(8),Ks=BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed"),rw=(()=>({p:Ks,n:BigInt("0x1000000000000000000000000000000014def9dea2f79cd65812631a5cf5d3ed"),h:tQ,a:BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec"),d:BigInt("0x52036cee2b6ffe738cc740797779e89800700a4d4141d8ab75eb4dca135978a3"),Gx:BigInt("0x216936d3cd6e53fec0a4e231fdd6dc5c692cc7609525a7b2c9562d608f25d51a"),Gy:BigInt("0x6666666666666666666666666666666666666666666666666666666666666658")}))();function Yz(e){let t=BigInt(10),r=BigInt(20),i=BigInt(40),n=BigInt(80),o=Ks,a=e*e%o*e%o,c=wn(a,Wz,o)*a%o,l=wn(c,ji,o)*e%o,u=wn(l,eQ,o)*l%o,d=wn(u,t,o)*u%o,p=wn(d,r,o)*d%o,m=wn(p,i,o)*p%o,y=wn(m,n,o)*m%o,g=wn(y,n,o)*m%o,b=wn(g,t,o)*u%o;return{pow_p_5_8:wn(b,Wz,o)*e%o,b2:a}}function rQ(e){return e[0]&=248,e[31]&=127,e[31]|=64,e}var XS=BigInt("19681161376707505956807079304988542015446066515923890162744021073123829784752");function nw(e,t){let r=Ks,i=gt(t*t*t,r),n=gt(i*i*t,r),o=Yz(e*n).pow_p_5_8,s=gt(e*i*o,r),a=gt(t*s*s,r),c=s,l=gt(s*XS,r),u=a===e,d=a===gt(-e,r),p=a===gt(-e*XS,r);if(u)s=c;if(d||p)s=l;if(Bi(s,r))s=gt(-s,r);return{isValid:u||d,value:s}}var Js=Kz(rw,{uvRatio:nw}),Oo=(()=>Js.Fp)(),Xz=(()=>Js.Fn)();var jm=(()=>{let e=Ks;return Vz({P:e,type:"x25519",powPminus2:(t)=>{let{pow_p_5_8:r,b2:i}=Yz(t);return gt(wn(r,XG,e)*i,e)},adjustScalarBytes:rQ})})();var ew=XS,nQ=BigInt("25063068953384623474111414158702152701244531502492656460079210482610430750235"),iQ=BigInt("54469307008909316920995813868745141605393597292927456921205312896311721017578"),oQ=BigInt("1159843021668779879193775521855586647937357759715417654439879720876111806838"),sQ=BigInt("40440834346308536858101042469323190826248399146238708352240133220865137265952"),Gz=(e)=>nw(ji,e),aQ=BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"),tw=(e)=>Oo.create(Dn(e)&aQ);function Qz(e){let{d:t}=rw,r=Ks,i=(v)=>Oo.create(v),n=i(ew*e*e),o=i((n+ji)*oQ),s=BigInt(-1),a=i((s-t*n)*i(n+t)),{isValid:c,value:l}=nw(o,a),u=i(l*e);if(!Bi(u,r))u=i(-u);if(!c)l=u;if(!c)s=n;let d=i(s*(n-ji)*sQ-a),p=l*l,m=i((l+l)*a),y=i(d*nQ),g=i(ji-p),b=i(ji+p);return new Js(i(m*b),i(g*y),i(y*b),i(m*g))}class Cr extends YS{static BASE=(()=>new Cr(Js.BASE))();static ZERO=(()=>new Cr(Js.ZERO))();static Fp=(()=>Oo)();static Fn=(()=>Xz)();constructor(e){super(e)}static fromAffine(e){return new Cr(Js.fromAffine(e))}assertSame(e){if(!(e instanceof Cr))throw Error("RistrettoPoint expected")}init(e){return new Cr(e)}static fromBytes(e){rr(e,32);let{a:t,d:r}=rw,i=Ks,n=(T)=>Oo.create(T),o=tw(e);if(!xz(Oo.toBytes(o),e)||Bi(o,i))throw Error("invalid ristretto255 encoding 1");let s=n(o*o),a=n(ji+t*s),c=n(ji-t*s),l=n(a*a),u=n(c*c),d=n(t*r*l-u),{isValid:p,value:m}=Gz(n(d*u)),y=n(m*c),g=n(m*y*d),b=n((o+o)*y);if(Bi(b,i))b=n(-b);let v=n(a*g),A=n(b*v);if(!p||Bi(A,i)||v===YG)throw Error("invalid ristretto255 encoding 2");return new Cr(new Js(b,v,ji,A))}static fromHex(e){return Cr.fromBytes(Ru(e))}toBytes(){let{X:e,Y:t,Z:r,T:i}=this.ep,n=Ks,o=(g)=>Oo.create(g),s=o(o(r+t)*o(r-t)),a=o(e*t),c=o(a*a),{value:l}=Gz(o(s*c)),u=o(l*s),d=o(l*a),p=o(u*d*i),m;if(Bi(i*p,n)){let g=o(t*ew),b=o(e*ew);e=g,t=b,m=o(u*iQ)}else m=d;if(Bi(e*p,n))t=o(-t);let y=o((r-t)*m);if(Bi(y,n))y=o(-y);return Oo.toBytes(y)}equals(e){this.assertSame(e);let{X:t,Y:r}=this.ep,{X:i,Y:n}=e.ep,o=(c)=>Oo.create(c),s=o(t*n)===o(r*i),a=o(r*n)===o(t*i);return s||a}is0(){return this.equals(Cr.ZERO)}}Object.freeze(Cr.BASE);Object.freeze(Cr.ZERO);Object.freeze(Cr.prototype);Object.freeze(Cr);var cQ=Object.freeze({Point:Cr,hashToCurve(e,t){let r=t?.DST===void 0?"ristretto255_XMD:SHA-512_R255MAP_RO_":t.DST,i=VS(e,r,64,nm);return cQ.deriveToCurve(i)},hashToScalar(e,t={DST:jz}){let r=VS(e,t.DST,64,nm);return Xz.create(Dn(r))},deriveToCurve(e){rr(e,64);let t=tw(e.subarray(0,32)),r=Qz(t),i=tw(e.subarray(32,64)),n=Qz(i);return new Cr(r.add(n))}});var e2=!1,lQ=!1;async function t2(e,t){if(lQ)return await t();try{return await e()}catch(r){if(r instanceof ReferenceError||r instanceof DOMException&&r.name==="NotSupportedError")return await t();else throw r}}async function qm(e,t){return await t2(async()=>{let r=iw(e)?e:await dQ(e),i=await crypto.subtle.importKey("raw",fQ(t),{name:"X25519"},e2,[]);return new Uint8Array(await crypto.subtle.deriveBits({name:"X25519",public:i},r,256))},()=>{if(iw(e))throw Error("CryptoKey provided but X25519 WebCrypto is not supported");return jm.scalarMult(e,t)})}async function dd(e){return await t2(async()=>qm(e,jm.GuBytes),()=>{if(iw(e))throw Error("CryptoKey provided but X25519 WebCrypto is not supported");return jm.scalarMultBase(e)})}var uQ=new Uint8Array([48,46,2,1,0,48,5,6,3,43,101,110,4,34,4,32]);async function dQ(e){if(e.length!==32)throw Error("X25519 private key must be 32 bytes");let t=new Uint8Array([...uQ,...e]);return crypto.subtle.importKey("pkcs8",t,{name:"X25519"},e2,["deriveBits"])}function iw(e){return typeof CryptoKey<"u"&&e instanceof CryptoKey}function fQ(e){return e}class ow{s;transcript=[];buf=new Uint8Array(0);constructor(e){this.s=e.getReader()}async readLine(){let e=[];while(!0){let t=this.buf.indexOf(10);if(t>=0)return e.push(this.buf.subarray(0,t)),this.transcript.push(this.buf.subarray(0,t+1)),this.buf=this.buf.subarray(t+1),mQ(Vs(e));if(this.buf.length>0)e.push(this.buf),this.transcript.push(this.buf);let r=await this.s.read();if(r.done)return this.buf=Vs(e),null;this.buf=r.value}}close(){return this.s.releaseLock(),{rest:this.buf,transcript:Vs(this.transcript)}}}function mQ(e){return e.forEach((t)=>{if(t<32||t>126)throw Error("invalid non-ASCII byte in header")}),new TextDecoder().decode(e)}function Vs(e){let t=e.reduce((n,o)=>n+o.length,0),r=new Uint8Array(t),i=0;for(let n of e)r.set(n,i),i+=n.length;return r}function Ic(e,...t){return e.pipeThrough(new TransformStream({start(r){for(let i of t)r.enqueue(i)}}))}function Um(e){return new ReadableStream({start(t){t.enqueue(e),t.close()}})}async function sw(e){if(!(e instanceof ReadableStream))throw Error("readAll expects a ReadableStream<Uint8Array>");return new Uint8Array(await new Response(e).arrayBuffer())}async function r2(e){if(!(e instanceof ReadableStream))throw Error("readAllString expects a ReadableStream<Uint8Array>");return await new Response(e).text()}async function n2(e,t){let r=e.getReader(),i=[],n=0;while(n<t){let{done:c,value:l}=await r.read();if(c)throw Error("stream ended before reading "+t.toString()+" bytes");i.push(l),n+=l.length}r.releaseLock();let o=Vs(i),s=o.subarray(0,t),a=Ic(e,o.subarray(t));return{data:s,rest:a}}class ai{args;body;constructor(e,t){this.args=e,this.body=t}}async function hQ(e){let t=await e.readLine();if(t===null)throw Error("invalid stanza");let r=t.split(" ");if(r.length<2||r.shift()!=="->")return{next:t};for(let o of r)if(o.length===0)throw Error("invalid stanza");let i=[];for(;;){let o=await e.readLine();if(o===null)throw Error("invalid stanza");let s=gr.decode(o);if(s.length>48)throw Error("invalid stanza");if(i.push(s),s.length<48)break}let n=Vs(i);return{s:new ai(r,n)}}async function i2(e){let t=new ow(e),r=await t.readLine();if(r!=="age-encryption.org/v1")throw Error("invalid version "+(r??"line"));let i=[];for(;;){let{s:n,next:o}=await hQ(t);if(n!==void 0){i.push(n);continue}if(!o.startsWith("--- "))throw Error("invalid header");let s=gr.decode(o.slice(4)),{rest:a,transcript:c}=t.close(),l=c.slice(0,c.length-1-o.length+3);return{stanzas:i,headerNoMAC:l,MAC:s,headerSize:c.length,rest:Ic(e,a)}}}function aw(e){let t=[];t.push(`age-encryption.org/v1
|
|
768
|
+
`)}function oR(e){let t=new Map;for(let r of e){if(t.has(r.name))throw Error(`Duplicate command name: ${r.name}`);t.set(r.name,r)}return t}function ht(e,t){let r=e[t];return typeof r==="string"?r:void 0}function oc(e,t){let r=e[t];return typeof r==="boolean"?r:void 0}var Gp={name:"@rizom/ops",version:"0.2.0-alpha.419",description:"Operator CLI for managing private brain fleet registry repos",keywords:["brains","ops","cli","deploy","fleet","operator"],license:"AGPL-3.0-only",author:"Yeehaa <yeehaa@rizom.ai> (https://rizom.ai)",bin:{"brains-ops":"./dist/brains-ops.js"},bugs:"https://github.com/rizom-ai/brains/issues",dependencies:{"@libsql/client":"^0.17.4","age-encryption":"^0.3.0",yaml:"^2.9.0"},devDependencies:{"@brains/deploy-support":"workspace:*","@brains/eslint-config":"workspace:*","@brains/job-queue":"workspace:*","@brains/profile":"workspace:*","@brains/site-composition":"workspace:*","@brains/test-utils":"workspace:*","@brains/typescript-config":"workspace:*","@brains/utils":"workspace:*","@types/bun":"^1.4.0",typescript:"^7.0.2"},engines:{bun:">=1.3.3"},exports:{".":{types:"./dist/index.d.ts",import:"./dist/index.js"},"./deploy":{types:"./dist/deploy.d.ts",import:"./dist/deploy.js",bun:"./dist/deploy.js"}},files:["dist","templates"],homepage:"https://github.com/rizom-ai/brains/tree/main/packages/brains-ops#readme",main:"./dist/index.js",publishConfig:{access:"public"},repository:{type:"git",url:"https://github.com/rizom-ai/brains.git",directory:"packages/brains-ops"},scripts:{build:"bun scripts/build.ts",lint:"eslint . --max-warnings 0","lint:fix":"eslint . --max-warnings 0 --fix",prepublishOnly:"bun scripts/build.ts",test:"bun run build && bun test --timeout 20000","test:smoke":"bun run build && RUN_SMOKE_TESTS=1 bun test --timeout 60000",typecheck:"tsc --noEmit"},type:"module",types:"./dist/index.d.ts"};import{existsSync as IQ,mkdirSync as AQ,readFileSync as Ew,writeFileSync as Iw}from"fs";import{dirname as TQ,join as p2}from"path";function jx(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name==="Uint8Array"&&"BYTES_PER_ELEMENT"in e&&e.BYTES_PER_ELEMENT===1}function Ct(e,t=""){if(typeof e!=="number"){let r=t&&`"${t}" `;throw TypeError(`${r}expected number, got ${typeof e}`)}if(!Number.isSafeInteger(e)||e<0){let r=t&&`"${t}" `;throw RangeError(`${r}expected integer >= 0, got ${e}`)}}function rr(e,t,r=""){let i=jx(e),n=e?.length,o=t!==void 0;if(!i||o&&n!==t){let s=r&&`"${r}" `,a=o?` of length ${t}`:"",c=i?`length=${n}`:`type=${typeof e}`,l=s+"expected Uint8Array"+a+", got "+c;if(!i)throw TypeError(l);throw RangeError(l)}return e}function Ai(e){if(typeof e!=="function"||typeof e.create!=="function")throw TypeError("Hash must wrapped by utils.createHasher");if(Ct(e.outputLen),Ct(e.blockLen),e.outputLen<1)throw Error('"outputLen" must be >= 1');if(e.blockLen<1)throw Error('"blockLen" must be >= 1')}function sc(e,t=!0){if(e.destroyed)throw Error("Hash instance has been destroyed");if(t&&e.finished)throw Error("Hash#digest() has already been called")}function Qp(e,t){rr(e,void 0,"digestInto() output");let r=t.outputLen;if(e.length<r)throw RangeError('"digestInto() output" expected to be of length >='+r)}function Yp(e){return new Uint32Array(e.buffer,e.byteOffset,Math.floor(e.byteLength/4))}function Ar(...e){for(let t=0;t<e.length;t++)e[t].fill(0)}function ac(e){return new DataView(e.buffer,e.byteOffset,e.byteLength)}function Pn(e,t){return e<<32-t|e>>>t}function Ye(e,t){return e<<t|e>>>32-t>>>0}var X7=(()=>new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68)();function eW(e){return e<<24&4278190080|e<<8&16711680|e>>>8&65280|e>>>24&255}function tW(e){for(let t=0;t<e.length;t++)e[t]=eW(e[t]);return e}var qx=X7?(e)=>e:tW,aR=(()=>typeof Uint8Array.from([]).toHex==="function"&&typeof Uint8Array.fromHex==="function")(),rW=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,"0"));function Xp(e){if(rr(e),aR)return e.toHex();let t="";for(let r=0;r<e.length;r++)t+=rW[e[r]];return t}var Ii={_0:48,_9:57,A:65,F:70,a:97,f:102};function sR(e){if(e>=Ii._0&&e<=Ii._9)return e-Ii._0;if(e>=Ii.A&&e<=Ii.F)return e-(Ii.A-10);if(e>=Ii.a&&e<=Ii.f)return e-(Ii.a-10);return}function Ru(e){if(typeof e!=="string")throw TypeError("hex string expected, got "+typeof e);if(aR)try{return Uint8Array.fromHex(e)}catch(n){if(n instanceof SyntaxError)throw RangeError(n.message);throw n}let t=e.length,r=t/2;if(t%2)throw RangeError("hex string expected, got unpadded hex of length "+t);let i=new Uint8Array(r);for(let n=0,o=0;n<r;n++,o+=2){let s=sR(e.charCodeAt(o)),a=sR(e.charCodeAt(o+1));if(s===void 0||a===void 0){let c=e[o]+e[o+1];throw RangeError('hex string expected, got non-hex character "'+c+'" at index '+o)}i[n]=s*16+a}return i}function nW(e){if(typeof e!=="string")throw TypeError("string expected");return new Uint8Array(new TextEncoder().encode(e))}function Ux(e,t=""){if(typeof e==="string")return nW(e);return rr(e,void 0,t)}function Fx(...e){let t=0;for(let i=0;i<e.length;i++){let n=e[i];rr(n),t+=n.length}let r=new Uint8Array(t);for(let i=0,n=0;i<e.length;i++){let o=e[i];r.set(o,n),n+=o.length}return r}function em(e,t){if(t!==void 0&&{}.toString.call(t)!=="[object Object]")throw TypeError("options must be object or undefined");return Object.assign(e,t)}function Mx(e,t={}){let r=(n,o)=>e(o).update(n).digest(),i=e(void 0);return r.outputLen=i.outputLen,r.blockLen=i.blockLen,r.canXOF=i.canXOF,r.create=(n)=>e(n),Object.assign(r,t),Object.freeze(r)}function Ti(e=32){Ct(e,"bytesLength");let t=typeof globalThis==="object"?globalThis.crypto:null;if(typeof t?.getRandomValues!=="function")throw Error("crypto.getRandomValues must be defined");if(e>65536)throw RangeError(`"bytesLength" expected <= 65536, got ${e}`);return t.getRandomValues(new Uint8Array(e))}var Zx=(e)=>({oid:Uint8Array.from([6,9,96,134,72,1,101,3,4,2,e])});class Hx{oHash;iHash;blockLen;outputLen;canXOF=!1;finished=!1;destroyed=!1;constructor(e,t){if(Ai(e),rr(t,void 0,"key"),this.iHash=e.create(),typeof this.iHash.update!=="function")throw Error("Expected instance of class which extends utils.Hash");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;let r=this.blockLen,i=new Uint8Array(r);i.set(t.length>r?e.create().update(t).digest():t);for(let n=0;n<i.length;n++)i[n]^=54;this.iHash.update(i),this.oHash=e.create();for(let n=0;n<i.length;n++)i[n]^=106;this.oHash.update(i),Ar(i)}update(e){return sc(this),this.iHash.update(e),this}digestInto(e){sc(this),Qp(e,this),this.finished=!0;let t=e.subarray(0,this.outputLen);this.iHash.digestInto(t),this.oHash.update(t),this.oHash.digestInto(t),this.destroy()}digest(){let e=new Uint8Array(this.oHash.outputLen);return this.digestInto(e),e}_cloneInto(e){e||=Object.create(Object.getPrototypeOf(this),{});let{oHash:t,iHash:r,finished:i,destroyed:n,blockLen:o,outputLen:s}=this;return e=e,e.finished=i,e.destroyed=n,e.blockLen=o,e.outputLen=s,e.oHash=t._cloneInto(e.oHash),e.iHash=r._cloneInto(e.iHash),e}clone(){return this._cloneInto()}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}}var Xn=(()=>{let e=(t,r,i)=>new Hx(t,r).update(i).digest();return e.create=(t,r)=>new Hx(t,r),e})();function Pu(e,t,r){if(Ai(e),r===void 0)r=new Uint8Array(e.outputLen);return Xn(e,r,t)}var Jx=Uint8Array.of(0),cR=Uint8Array.of();function Kx(e,t,r,i=32){Ai(e),Ct(i,"length"),rr(t,void 0,"prk");let n=e.outputLen;if(t.length<n)throw Error('"prk" must be at least HashLen octets');if(i>255*n)throw Error("Length must be <= 255*HashLen");let o=Math.ceil(i/n);if(r===void 0)r=cR;else rr(r,void 0,"info");let s=new Uint8Array(o*n),a=Xn.create(e,t),c=a._cloneInto(),l=new Uint8Array(a.outputLen);for(let u=0;u<o;u++)Jx[0]=u+1,c.update(u===0?cR:l).update(r).update(Jx).digestInto(l),s.set(l,n*u),a._cloneInto(c);return a.destroy(),c.destroy(),Ar(l,Jx),s.slice(0,i)}var mo=(e,t,r,i,n)=>Kx(e,Pu(e,t,r),i,n);function lR(e,t,r){return e&t^~e&r}function uR(e,t,r){return e&t^e&r^t&r}class tm{blockLen;outputLen;canXOF=!1;padOffset;isLE;buffer;view;finished=!1;length=0;pos=0;destroyed=!1;constructor(e,t,r,i){this.blockLen=e,this.outputLen=t,this.padOffset=r,this.isLE=i,this.buffer=new Uint8Array(e),this.view=ac(this.buffer)}update(e){sc(this),rr(e);let{view:t,buffer:r,blockLen:i}=this,n=e.length;for(let o=0;o<n;){let s=Math.min(i-this.pos,n-o);if(s===i){let a=ac(e);for(;i<=n-o;o+=i)this.process(a,o);continue}if(r.set(e.subarray(o,o+s),this.pos),this.pos+=s,o+=s,this.pos===i)this.process(t,0),this.pos=0}return this.length+=e.length,this.roundClean(),this}digestInto(e){sc(this),Qp(e,this),this.finished=!0;let{buffer:t,view:r,blockLen:i,isLE:n}=this,{pos:o}=this;if(t[o++]=128,Ar(this.buffer.subarray(o)),this.padOffset>i-o)this.process(r,0),o=0;for(let u=o;u<i;u++)t[u]=0;r.setBigUint64(i-8,BigInt(this.length*8),n),this.process(r,0);let s=ac(e),a=this.outputLen;if(a%4)throw Error("_sha2: outputLen must be aligned to 32bit");let c=a/4,l=this.get();if(c>l.length)throw Error("_sha2: outputLen bigger than state");for(let u=0;u<c;u++)s.setUint32(4*u,l[u],n)}digest(){let{buffer:e,outputLen:t}=this;this.digestInto(e);let r=e.slice(0,t);return this.destroy(),r}_cloneInto(e){e||=new this.constructor,e.set(...this.get());let{blockLen:t,buffer:r,length:i,finished:n,destroyed:o,pos:s}=this;if(e.destroyed=o,e.finished=n,e.length=i,e.pos=s,i%t)e.buffer.set(r);return e}clone(){return this._cloneInto()}}var $i=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]);var nr=Uint32Array.from([1779033703,4089235720,3144134277,2227873595,1013904242,4271175723,2773480762,1595750129,1359893119,2917565137,2600822924,725511199,528734635,4215389547,1541459225,327033209]);var rm=BigInt(4294967295),dR=BigInt(32);function iW(e,t=!1){if(t)return{h:Number(e&rm),l:Number(e>>dR&rm)};return{h:Number(e>>dR&rm)|0,l:Number(e&rm)|0}}function fR(e,t=!1){let r=e.length,i=new Uint32Array(r),n=new Uint32Array(r);for(let o=0;o<r;o++){let{h:s,l:a}=iW(e[o],t);[i[o],n[o]]=[s,a]}return[i,n]}var Vx=(e,t,r)=>e>>>r,Wx=(e,t,r)=>e<<32-r|t>>>r,Ts=(e,t,r)=>e>>>r|t<<32-r,$s=(e,t,r)=>e<<32-r|t>>>r,zu=(e,t,r)=>e<<64-r|t>>>r-32,Nu=(e,t,r)=>e>>>r-32|t<<64-r;function ei(e,t,r,i){let n=(t>>>0)+(i>>>0);return{h:e+r+(n/4294967296|0)|0,l:n|0}}var pR=(e,t,r)=>(e>>>0)+(t>>>0)+(r>>>0),mR=(e,t,r,i)=>t+r+i+(e/4294967296|0)|0,hR=(e,t,r,i)=>(e>>>0)+(t>>>0)+(r>>>0)+(i>>>0),gR=(e,t,r,i,n)=>t+r+i+n+(e/4294967296|0)|0,yR=(e,t,r,i,n)=>(e>>>0)+(t>>>0)+(r>>>0)+(i>>>0)+(n>>>0),bR=(e,t,r,i,n,o)=>t+r+i+n+o+(e/4294967296|0)|0;var sW=Uint32Array.from([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),ho=new Uint32Array(64);class xR extends tm{constructor(e){super(64,e,8,!1)}get(){let{A:e,B:t,C:r,D:i,E:n,F:o,G:s,H:a}=this;return[e,t,r,i,n,o,s,a]}set(e,t,r,i,n,o,s,a){this.A=e|0,this.B=t|0,this.C=r|0,this.D=i|0,this.E=n|0,this.F=o|0,this.G=s|0,this.H=a|0}process(e,t){for(let u=0;u<16;u++,t+=4)ho[u]=e.getUint32(t,!1);for(let u=16;u<64;u++){let d=ho[u-15],p=ho[u-2],m=Pn(d,7)^Pn(d,18)^d>>>3,y=Pn(p,17)^Pn(p,19)^p>>>10;ho[u]=y+ho[u-7]+m+ho[u-16]|0}let{A:r,B:i,C:n,D:o,E:s,F:a,G:c,H:l}=this;for(let u=0;u<64;u++){let d=Pn(s,6)^Pn(s,11)^Pn(s,25),p=l+d+lR(s,a,c)+sW[u]+ho[u]|0,y=(Pn(r,2)^Pn(r,13)^Pn(r,22))+uR(r,i,n)|0;l=c,c=a,a=s,s=o+p|0,o=n,n=i,i=r,r=p+y|0}r=r+this.A|0,i=i+this.B|0,n=n+this.C|0,o=o+this.D|0,s=s+this.E|0,a=a+this.F|0,c=c+this.G|0,l=l+this.H|0,this.set(r,i,n,o,s,a,c,l)}roundClean(){Ar(ho)}destroy(){this.destroyed=!0,this.set(0,0,0,0,0,0,0,0),Ar(this.buffer)}}class SR extends xR{A=$i[0]|0;B=$i[1]|0;C=$i[2]|0;D=$i[3]|0;E=$i[4]|0;F=$i[5]|0;G=$i[6]|0;H=$i[7]|0;constructor(){super(32)}}var wR=(()=>fR(["0x428a2f98d728ae22","0x7137449123ef65cd","0xb5c0fbcfec4d3b2f","0xe9b5dba58189dbbc","0x3956c25bf348b538","0x59f111f1b605d019","0x923f82a4af194f9b","0xab1c5ed5da6d8118","0xd807aa98a3030242","0x12835b0145706fbe","0x243185be4ee4b28c","0x550c7dc3d5ffb4e2","0x72be5d74f27b896f","0x80deb1fe3b1696b1","0x9bdc06a725c71235","0xc19bf174cf692694","0xe49b69c19ef14ad2","0xefbe4786384f25e3","0x0fc19dc68b8cd5b5","0x240ca1cc77ac9c65","0x2de92c6f592b0275","0x4a7484aa6ea6e483","0x5cb0a9dcbd41fbd4","0x76f988da831153b5","0x983e5152ee66dfab","0xa831c66d2db43210","0xb00327c898fb213f","0xbf597fc7beef0ee4","0xc6e00bf33da88fc2","0xd5a79147930aa725","0x06ca6351e003826f","0x142929670a0e6e70","0x27b70a8546d22ffc","0x2e1b21385c26c926","0x4d2c6dfc5ac42aed","0x53380d139d95b3df","0x650a73548baf63de","0x766a0abb3c77b2a8","0x81c2c92e47edaee6","0x92722c851482353b","0xa2bfe8a14cf10364","0xa81a664bbc423001","0xc24b8b70d0f89791","0xc76c51a30654be30","0xd192e819d6ef5218","0xd69906245565a910","0xf40e35855771202a","0x106aa07032bbd1b8","0x19a4c116b8d2d0c8","0x1e376c085141ab53","0x2748774cdf8eeb99","0x34b0bcb5e19b48a8","0x391c0cb3c5c95a63","0x4ed8aa4ae3418acb","0x5b9cca4f7763e373","0x682e6ff3d6b2b8a3","0x748f82ee5defb2fc","0x78a5636f43172f60","0x84c87814a1f0ab72","0x8cc702081a6439ec","0x90befffa23631e28","0xa4506cebde82bde9","0xbef9a3f7b2c67915","0xc67178f2e372532b","0xca273eceea26619c","0xd186b8c721c0c207","0xeada7dd6cde0eb1e","0xf57d4f7fee6ed178","0x06f067aa72176fba","0x0a637dc5a2c898a6","0x113f9804bef90dae","0x1b710b35131c471b","0x28db77f523047d84","0x32caab7b40c72493","0x3c9ebe0a15c9bebc","0x431d67c49c100d4c","0x4cc5d4becb3e42b6","0x597f299cfc657e2a","0x5fcb6fab3ad6faec","0x6c44198c4a475817"].map((e)=>BigInt(e))))(),aW=(()=>wR[0])(),cW=(()=>wR[1])(),go=new Uint32Array(80),yo=new Uint32Array(80);class vR extends tm{constructor(e){super(128,e,16,!1)}get(){let{Ah:e,Al:t,Bh:r,Bl:i,Ch:n,Cl:o,Dh:s,Dl:a,Eh:c,El:l,Fh:u,Fl:d,Gh:p,Gl:m,Hh:y,Hl:g}=this;return[e,t,r,i,n,o,s,a,c,l,u,d,p,m,y,g]}set(e,t,r,i,n,o,s,a,c,l,u,d,p,m,y,g){this.Ah=e|0,this.Al=t|0,this.Bh=r|0,this.Bl=i|0,this.Ch=n|0,this.Cl=o|0,this.Dh=s|0,this.Dl=a|0,this.Eh=c|0,this.El=l|0,this.Fh=u|0,this.Fl=d|0,this.Gh=p|0,this.Gl=m|0,this.Hh=y|0,this.Hl=g|0}process(e,t){for(let A=0;A<16;A++,t+=4)go[A]=e.getUint32(t),yo[A]=e.getUint32(t+=4);for(let A=16;A<80;A++){let T=go[A-15]|0,z=yo[A-15]|0,j=Ts(T,z,1)^Ts(T,z,8)^Vx(T,z,7),E=$s(T,z,1)^$s(T,z,8)^Wx(T,z,7),Z=go[A-2]|0,D=yo[A-2]|0,H=Ts(Z,D,19)^zu(Z,D,61)^Vx(Z,D,6),X=$s(Z,D,19)^Nu(Z,D,61)^Wx(Z,D,6),F=hR(E,X,yo[A-7],yo[A-16]),P=gR(F,j,H,go[A-7],go[A-16]);go[A]=P|0,yo[A]=F|0}let{Ah:r,Al:i,Bh:n,Bl:o,Ch:s,Cl:a,Dh:c,Dl:l,Eh:u,El:d,Fh:p,Fl:m,Gh:y,Gl:g,Hh:b,Hl:v}=this;for(let A=0;A<80;A++){let T=Ts(u,d,14)^Ts(u,d,18)^zu(u,d,41),z=$s(u,d,14)^$s(u,d,18)^Nu(u,d,41),j=u&p^~u&y,E=d&m^~d&g,Z=yR(v,z,E,cW[A],yo[A]),D=bR(Z,b,T,j,aW[A],go[A]),H=Z|0,X=Ts(r,i,28)^zu(r,i,34)^zu(r,i,39),F=$s(r,i,28)^Nu(r,i,34)^Nu(r,i,39),P=r&n^r&s^n&s,N=i&o^i&a^o&a;b=y|0,v=g|0,y=p|0,g=m|0,p=u|0,m=d|0,{h:u,l:d}=ei(c|0,l|0,D|0,H|0),c=s|0,l=a|0,s=n|0,a=o|0,n=r|0,o=i|0;let I=pR(H,F,N);r=mR(I,D,X,P),i=I|0}({h:r,l:i}=ei(this.Ah|0,this.Al|0,r|0,i|0)),{h:n,l:o}=ei(this.Bh|0,this.Bl|0,n|0,o|0),{h:s,l:a}=ei(this.Ch|0,this.Cl|0,s|0,a|0),{h:c,l}=ei(this.Dh|0,this.Dl|0,c|0,l|0),{h:u,l:d}=ei(this.Eh|0,this.El|0,u|0,d|0),{h:p,l:m}=ei(this.Fh|0,this.Fl|0,p|0,m|0),{h:y,l:g}=ei(this.Gh|0,this.Gl|0,y|0,g|0),{h:b,l:v}=ei(this.Hh|0,this.Hl|0,b|0,v|0),this.set(r,i,n,o,s,a,c,l,u,d,p,m,y,g,b,v)}roundClean(){Ar(go,yo)}destroy(){this.destroyed=!0,Ar(this.buffer),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}}class _R extends vR{Ah=nr[0]|0;Al=nr[1]|0;Bh=nr[2]|0;Bl=nr[3]|0;Ch=nr[4]|0;Cl=nr[5]|0;Dh=nr[6]|0;Dl=nr[7]|0;Eh=nr[8]|0;El=nr[9]|0;Fh=nr[10]|0;Fl=nr[11]|0;Gh=nr[12]|0;Gl=nr[13]|0;Hh=nr[14]|0;Hl=nr[15]|0;constructor(){super(64)}}var Ot=Mx(()=>new SR,Zx(1));var nm=Mx(()=>new _R,Zx(3));/*! scure-base - MIT License (c) 2022 Paul Miller (paulmillr.com) */function cm(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name==="Uint8Array"&&"BYTES_PER_ELEMENT"in e&&e.BYTES_PER_ELEMENT===1}function Yx(e){if(!cm(e))throw TypeError("Uint8Array expected")}function TR(e,t){if(!Array.isArray(t))return!1;if(t.length===0)return!0;if(e)return t.every((r)=>typeof r==="string");else return t.every((r)=>Number.isSafeInteger(r))}function $R(e){if(typeof e!=="function")throw TypeError("function expected");return!0}function bo(e,t){if(typeof t!=="string")throw TypeError(`${e}: string expected`);return!0}function Lu(e){if(typeof e!=="number")throw TypeError(`number expected, got ${typeof e}`);if(!Number.isSafeInteger(e))throw RangeError(`invalid integer: ${e}`)}function om(e){if(!Array.isArray(e))throw TypeError("array expected")}function sm(e,t){if(!TR(!0,t))throw TypeError(`${e}: array of strings expected`)}function Xx(e,t){if(!TR(!1,t))throw TypeError(`${e}: array of numbers expected`)}function Xr(...e){let t=(o)=>o,r=(o,s)=>(a)=>o(s(a)),i=e.map((o)=>o.encode).reduceRight(r,t),n=e.map((o)=>o.decode).reduce(r,t);return{encode:i,decode:n}}function en(e){let t=typeof e==="string"?e.split(""):e,r=t.length;sm("alphabet",t);let i=new Map(t.map((n,o)=>[n,o]));return{encode:(n)=>(om(n),n.map((o)=>{if(!Number.isSafeInteger(o)||o<0||o>=r)throw Error(`alphabet.encode: digit index outside alphabet "${o}". Allowed: ${e}`);return t[o]})),decode:(n)=>(om(n),n.map((o)=>{bo("alphabet.decode",o);let s=i.get(o);if(s===void 0)throw Error(`Unknown letter: "${o}". Allowed: ${e}`);return s}))}}function tn(e=""){return bo("join",e),{encode:(t)=>(sm("join.decode",t),t.join(e)),decode:(t)=>(bo("join.decode",t),t.split(e))}}function lm(e,t="="){return Lu(e),bo("padding",t),{encode(r){sm("padding.encode",r);while(r.length*e%8)r.push(t);return r},decode(r){sm("padding.decode",r);let i=r.length;if(i*e%8)throw Error("padding: invalid, string should have whole number of bytes");for(;i>0&&r[i-1]===t;i--)if((i-1)*e%8===0)throw Error("padding: invalid, string has too much padding");return r.slice(0,i)}}}function CR(e){return $R(e),{encode:(t)=>t,decode:(t)=>e(t)}}function kR(e,t,r){if(t<2)throw RangeError(`convertRadix: invalid from=${t}, base cannot be less than 2`);if(r<2)throw RangeError(`convertRadix: invalid to=${r}, base cannot be less than 2`);if(om(e),!e.length)return[];let i=0,n=[],o=Array.from(e,(a)=>{if(Lu(a),a<0||a>=t)throw Error(`invalid integer: ${a}`);return a}),s=o.length;while(!0){let a=0,c=!0;for(let l=i;l<s;l++){let u=o[l],d=t*a,p=d+u;if(!Number.isSafeInteger(p)||d/t!==a||p-u!==d)throw Error("convertRadix: carry overflow");let m=p/r;a=p%r;let y=Math.floor(m);if(o[l]=y,!Number.isSafeInteger(y)||y*r+a!==p)throw Error("convertRadix: carry overflow");if(!c)continue;else if(!y)i=l;else c=!1}if(n.push(a),c)break}for(let a=0;a<e.length-1&&e[a]===0;a++)n.push(0);return n.reverse()}var OR=(e,t)=>t===0?e:OR(t,e%t),am=(e,t)=>e+(t-OR(e,t)),im=(()=>{let e=[];for(let t=0;t<40;t++)e.push(2**t);return e})();function Gx(e,t,r,i){if(om(e),t<=0||t>32)throw RangeError(`convertRadix2: wrong from=${t}`);if(r<=0||r>32)throw RangeError(`convertRadix2: wrong to=${r}`);if(am(t,r)>32)throw Error(`convertRadix2: carry overflow from=${t} to=${r} carryBits=${am(t,r)}`);let n=0,o=0,s=im[t],a=im[r]-1,c=[];for(let l of e){if(Lu(l),l>=s)throw Error(`convertRadix2: invalid data word=${l} from=${t}`);if(n=n<<t|l,o+t>32)throw Error(`convertRadix2: carry overflow pos=${o} from=${t}`);o+=t;for(;o>=r;o-=r)c.push((n>>o-r&a)>>>0);let u=im[o];if(u===void 0)throw Error("invalid carry");n&=u-1}if(n=n<<r-o&a,!i&&o>=t)throw Error("Excess padding");if(!i&&n>0)throw Error(`Non-zero padding: ${n}`);if(i&&o>0)c.push(n>>>0);return c}function lW(e){Lu(e);let t=256;return{encode:(r)=>{if(!cm(r))throw TypeError("radix.encode input should be Uint8Array");return kR(Array.from(r),t,e)},decode:(r)=>(Xx("radix.decode",r),Uint8Array.from(kR(r,e,t)))}}function gn(e,t=!1){if(Lu(e),e<=0||e>32)throw RangeError("radix2: bits should be in (0..32]");if(am(8,e)>32||am(e,8)>32)throw RangeError("radix2: carry overflow");return{encode:(r)=>{if(!cm(r))throw TypeError("radix2.encode input should be Uint8Array");return Gx(Array.from(r),8,e,!t)},decode:(r)=>(Xx("radix2.decode",r),Uint8Array.from(Gx(r,e,8,t)))}}function ER(e){return $R(e),function(...t){try{return e.apply(null,t)}catch(r){}}}var tEe=Object.freeze(Xr(gn(4),en("0123456789ABCDEF"),tn(""))),rEe=Object.freeze(Xr(gn(5),en("ABCDEFGHIJKLMNOPQRSTUVWXYZ234567"),lm(5),tn(""))),nEe=Object.freeze(Xr(gn(5),en("ABCDEFGHIJKLMNOPQRSTUVWXYZ234567"),tn(""))),iEe=Object.freeze(Xr(gn(5),en("0123456789ABCDEFGHIJKLMNOPQRSTUV"),lm(5),tn(""))),oEe=Object.freeze(Xr(gn(5),en("0123456789ABCDEFGHIJKLMNOPQRSTUV"),tn(""))),sEe=Object.freeze(Xr(gn(5),en("0123456789ABCDEFGHJKMNPQRSTVWXYZ"),tn(""),CR((e)=>e.toUpperCase().replace(/O/g,"0").replace(/[IL]/g,"1")))),RR=(()=>typeof Uint8Array.from([]).toBase64==="function"&&typeof Uint8Array.fromBase64==="function")(),uW=/[\t\n\f\r ]/,PR=(e,t)=>{bo("base64",e);let r=t?"base64url":"base64";if(e.length>0&&uW.test(e))throw Error("invalid base64");return Uint8Array.fromBase64(e,{alphabet:r,lastChunkHandling:"strict"})},eS=Object.freeze(RR?{encode(e){return Yx(e),e.toBase64()},decode(e){return PR(e,!1)}}:Xr(gn(6),en("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"),lm(6),tn(""))),gr=Object.freeze(Xr(gn(6),en("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"),tn(""))),aEe=Object.freeze(RR?{encode(e){return Yx(e),e.toBase64({alphabet:"base64url"})},decode(e){return PR(e,!0)}}:Xr(gn(6),en("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_"),lm(6),tn(""))),cEe=Object.freeze(Xr(gn(6),en("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_"),tn(""))),tS=(e)=>Xr(lW(58),en(e),tn("")),lEe=Object.freeze(tS("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz")),uEe=Object.freeze(tS("123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ")),dEe=Object.freeze(tS("rpshnaf39wBUDNEGHJKLM4PQRST7VWXYZ2bcdeCg65jkm8oFqi1tuvAxyz"));var Qx=Xr(en("qpzry9x8gf2tvdw0s3jn54khce6mua7l"),tn("")),IR=[996825010,642813549,513874426,1027748829,705979059];function Du(e){let t=e>>25,r=(e&33554431)<<5;for(let i=0;i<IR.length;i++)if((t>>i&1)===1)r^=IR[i];return r}function AR(e,t,r=1){let i=e.length,n=1;for(let o=0;o<i;o++){let s=e.charCodeAt(o);if(s<33||s>126)throw Error(`Invalid prefix (${e})`);n=Du(n)^s>>5}n=Du(n);for(let o=0;o<i;o++)n=Du(n)^e.charCodeAt(o)&31;for(let o of t)n=Du(n)^o;for(let o=0;o<6;o++)n=Du(n);return n^=r,Qx.encode(Gx([n%im[30]],30,5,!1))}function zR(e){let t=e==="bech32"?1:734539939,r=gn(5),i=r.decode,n=r.encode,o=ER(i);function s(d,p,m=90){if(bo("bech32.encode prefix",d),cm(p))p=Array.from(p);Xx("bech32.encode",p);let y=d.length;if(y===0)throw TypeError(`Invalid prefix length ${y}`);let g=y+7+p.length;if(m!==!1&&g>m)throw TypeError(`Length ${g} exceeds limit ${m}`);let b=d.toLowerCase(),v=AR(b,p,t);return`${b}1${Qx.encode(p)}${v}`}function a(d,p=90){bo("bech32.decode input",d);let m=d.length;if(m<8||p!==!1&&m>p)throw TypeError(`invalid string length: ${m} (${d}). Expected (8..${p})`);let y=d.toLowerCase();if(d!==y&&d!==d.toUpperCase())throw Error("String must be lowercase or uppercase");let g=y.lastIndexOf("1");if(g===0||g===-1)throw Error('Letter "1" must be present between prefix and data only');let b=y.slice(0,g),v=y.slice(g+1);if(v.length<6)throw Error("Data must be at least 6 characters long");let A=Qx.decode(v).slice(0,-6),T=AR(b,A,t);if(!v.endsWith(T))throw Error(`Invalid checksum in ${d}: expected "${T}"`);return{prefix:b,words:A}}let c=ER(a);function l(d){let{prefix:p,words:m}=a(d,!1);return{prefix:p,words:m,bytes:i(m)}}function u(d,p){return s(d,n(p))}return{encode:s,decode:a,encodeFromBytes:u,decodeToBytes:l,decodeUnsafe:c,fromWords:i,fromWordsUnsafe:o,toWords:n}}var rn=Object.freeze(zR("bech32")),fEe=Object.freeze(zR("bech32m"));var dW=(()=>typeof Uint8Array.from([]).toHex==="function"&&typeof Uint8Array.fromHex==="function")(),fW={encode(e){return Yx(e),e.toHex()},decode(e){return bo("hex",e),Uint8Array.fromHex(e)}},pEe=Object.freeze(dW?fW:Xr(gn(4),en("0123456789abcdef"),tn(""),CR((e)=>{if(typeof e!=="string"||e.length%2!==0)throw TypeError(`hex.decode: expected string, got ${typeof e} with length ${e.length}`);return e.toLowerCase()})));function mW(e,t,r,i){Ai(e);let n=em({dkLen:32,asyncTick:10},i),{c:o,dkLen:s,asyncTick:a}=n;if(Ct(o,"c"),Ct(s,"dkLen"),Ct(a,"asyncTick"),o<1)throw Error("iterations (c) must be >= 1");if(s<1)throw Error('"dkLen" must be >= 1');if(s>4294967295*e.outputLen)throw Error("derived key too long");let c=Ux(t,"password"),l=Ux(r,"salt"),u=new Uint8Array(s),d=Xn.create(e,c),p=d._cloneInto().update(l);return{c:o,dkLen:s,asyncTick:a,DK:u,PRF:d,PRFSalt:p}}function hW(e,t,r,i,n){if(e.destroy(),t.destroy(),i)i.destroy();return Ar(n),r}function rS(e,t,r,i){let{c:n,dkLen:o,DK:s,PRF:a,PRFSalt:c}=mW(e,t,r,i),l,u=new Uint8Array(4),d=ac(u),p=new Uint8Array(a.outputLen);for(let m=1,y=0;y<o;m++,y+=a.outputLen){let g=s.subarray(y,y+a.outputLen);d.setInt32(0,m,!1),(l=c._cloneInto(l)).update(u).digestInto(p),g.set(p.subarray(0,g.length));for(let b=1;b<n;b++){a._cloneInto(l).update(p).digestInto(p);for(let v=0;v<g.length;v++)g[v]^=p[v]}}return hW(a,c,s,l,p)}function NR(e,t,r,i,n,o){let s=e[t++]^r[i++],a=e[t++]^r[i++],c=e[t++]^r[i++],l=e[t++]^r[i++],u=e[t++]^r[i++],d=e[t++]^r[i++],p=e[t++]^r[i++],m=e[t++]^r[i++],y=e[t++]^r[i++],g=e[t++]^r[i++],b=e[t++]^r[i++],v=e[t++]^r[i++],A=e[t++]^r[i++],T=e[t++]^r[i++],z=e[t++]^r[i++],j=e[t++]^r[i++],E=s,Z=a,D=c,H=l,X=u,F=d,P=p,N=m,I=y,R=g,O=b,M=v,L=A,V=T,_=z,te=j;for(let ue=0;ue<8;ue+=2)X^=Ye(E+L|0,7),I^=Ye(X+E|0,9),L^=Ye(I+X|0,13),E^=Ye(L+I|0,18),R^=Ye(F+Z|0,7),V^=Ye(R+F|0,9),Z^=Ye(V+R|0,13),F^=Ye(Z+V|0,18),_^=Ye(O+P|0,7),D^=Ye(_+O|0,9),P^=Ye(D+_|0,13),O^=Ye(P+D|0,18),H^=Ye(te+M|0,7),N^=Ye(H+te|0,9),M^=Ye(N+H|0,13),te^=Ye(M+N|0,18),Z^=Ye(E+H|0,7),D^=Ye(Z+E|0,9),H^=Ye(D+Z|0,13),E^=Ye(H+D|0,18),P^=Ye(F+X|0,7),N^=Ye(P+F|0,9),X^=Ye(N+P|0,13),F^=Ye(X+N|0,18),M^=Ye(O+R|0,7),I^=Ye(M+O|0,9),R^=Ye(I+M|0,13),O^=Ye(R+I|0,18),L^=Ye(te+_|0,7),V^=Ye(L+te|0,9),_^=Ye(V+L|0,13),te^=Ye(_+V|0,18);n[o++]=s+E|0,n[o++]=a+Z|0,n[o++]=c+D|0,n[o++]=l+H|0,n[o++]=u+X|0,n[o++]=d+F|0,n[o++]=p+P|0,n[o++]=m+N|0,n[o++]=y+I|0,n[o++]=g+R|0,n[o++]=b+O|0,n[o++]=v+M|0,n[o++]=A+L|0,n[o++]=T+V|0,n[o++]=z+_|0,n[o++]=j+te|0}function nS(e,t,r,i,n){let o=i+0,s=i+16*n;for(let a=0;a<16;a++)r[s+a]=e[t+(2*n-1)*16+a];for(let a=0;a<n;a++,o+=16,t+=16){if(NR(r,s,e,t,r,o),a>0)s+=16;NR(r,o,e,t+=16,r,s)}}function gW(e,t,r){let i=em({dkLen:32,asyncTick:10,maxmem:1073742848},r),{N:n,r:o,p:s,dkLen:a,asyncTick:c,maxmem:l,onProgress:u}=i;if(Ct(n,"N"),Ct(o,"r"),Ct(s,"p"),Ct(a,"dkLen"),Ct(c,"asyncTick"),Ct(l,"maxmem"),u!==void 0&&typeof u!=="function")throw Error("progressCb must be a function");let d=128*o,p=d/4,m=Math.pow(2,32);if(n<=1||(n&n-1)!==0||n>m)throw Error('"N" expected a power of 2, and 2^1 <= N <= 2^32');if(s<1||s>(m-1)*32/d)throw Error('"p" expected integer 1..((2^32 - 1) * 32) / (128 * r)');if(a<1||a>(m-1)*32)throw Error('"dkLen" expected integer 1..(2^32 - 1) * 32');let y=d*(n+s+1);if(y>l)throw Error('"maxmem" limit was hit: memUsed(128*r*(N+p+1))='+y+", maxmem="+l);let g=rS(Ot,e,t,{c:1,dkLen:d*s}),b=Yp(g),v=Yp(new Uint8Array(d*n)),A=Yp(new Uint8Array(d)),T=()=>{};if(u){let z=2*n*s,j=Math.max(Math.floor(z/1e4),1),E=0;T=()=>{if(E++,u&&(!(E%j)||E===z))u(E/z)}}return{N:n,r:o,p:s,dkLen:a,blockSize32:p,V:v,B32:b,B:g,tmp:A,blockMixCb:T,asyncTick:c}}function yW(e,t,r,i,n){let o=rS(Ot,e,r,{c:1,dkLen:t});return Ar(r,i,n),o}function iS(e,t,r){let{N:i,r:n,p:o,dkLen:s,blockSize32:a,V:c,B32:l,B:u,tmp:d,blockMixCb:p}=gW(e,t,r);qx(l);for(let m=0;m<o;m++){let y=a*m;for(let g=0;g<a;g++)c[g]=l[y+g];for(let g=0,b=0;g<i-1;g++)nS(c,b,c,b+=a,n),p();nS(c,(i-1)*a,l,y,n),p();for(let g=0;g<i;g++){let b=(l[y+a-16]&i-1)>>>0;for(let v=0;v<a;v++)d[v]=l[y+v]^c[b*a+v];nS(d,0,l,y,n),p()}}return qx(l),yW(e,s,u,c,d)}/*! noble-ciphers - MIT License (c) 2023 Paul Miller (paulmillr.com) */function bW(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name==="Uint8Array"&&"BYTES_PER_ELEMENT"in e&&e.BYTES_PER_ELEMENT===1}function um(e){if(typeof e!=="boolean")throw TypeError(`boolean expected, not ${e}`)}function cc(e){if(typeof e!=="number")throw TypeError("number expected, got "+typeof e);if(!Number.isSafeInteger(e)||e<0)throw RangeError("positive integer expected, got "+e)}function Ft(e,t,r=""){let i=bW(e),n=e?.length,o=t!==void 0;if(!i||o&&n!==t){let s=r&&`"${r}" `,a=o?` of length ${t}`:"",c=i?`length=${n}`:`type=${typeof e}`,l=s+"expected Uint8Array"+a+", got "+c;if(!i)throw TypeError(l);throw RangeError(l)}return e}function oS(e,t=!0){if(e.destroyed)throw Error("Hash instance has been destroyed");if(t&&e.finished)throw Error("Hash#digest() has already been called")}function DR(e,t,r=!1){Ft(e,void 0,"output");let i=t.outputLen;if(e.length<i)throw RangeError("digestInto() expects output buffer of length at least "+i);if(r&&!lc(e))throw Error("invalid output, must be aligned")}function ti(e){return new Uint32Array(e.buffer,e.byteOffset,Math.floor(e.byteLength/4))}function zn(...e){for(let t=0;t<e.length;t++)e[t].fill(0)}function xW(e){return new DataView(e.buffer,e.byteOffset,e.byteLength)}var Cs=(()=>new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68)(),SW=(e)=>e<<24&4278190080|e<<8&16711680|e>>>8&65280|e>>>24&255;var wW=(e)=>{for(let t=0;t<e.length;t++)e[t]=SW(e[t]);return e},Ci=Cs?(e)=>e:wW;function LR(e,t){if(t==null||typeof t!=="object")throw Error("options must be defined");return Object.assign(e,t)}function BR(e,t){if(e.length!==t.length)return!1;let r=0;for(let i=0;i<e.length;i++)r|=e[i]^t[i];return r===0}function jR(e,t,r){let i=t,n=r||(()=>[]),o=(a,c)=>i(c,...n(a)).update(a).digest(),s=i(new Uint8Array(e),...n(new Uint8Array(0)));return o.outputLen=s.outputLen,o.blockLen=s.blockLen,o.create=(a,...c)=>i(a,...c),o}var qR=(e,t)=>{function r(i,...n){if(Ft(i,void 0,"key"),e.nonceLength!==void 0){let u=n[0];Ft(u,e.varSizeNonce?void 0:e.nonceLength,"nonce")}let o=e.tagLength;if(o&&n[1]!==void 0)Ft(n[1],void 0,"AAD");let s=t(i,...n),a=(u,d)=>{if(d!==void 0){if(u!==2)throw Error("cipher output not supported");Ft(d,void 0,"output")}},c=!1;return{encrypt(u,d){if(c)throw Error("cannot encrypt() twice with same key + nonce");return c=!0,Ft(u),a(s.encrypt.length,d),s.encrypt(u,d)},decrypt(u,d){if(Ft(u),o&&u.length<o)throw Error('"ciphertext" expected length bigger than tagLength='+o);return a(s.decrypt.length,d),s.decrypt(u,d)}}}return Object.assign(r,e),r};function Bu(e,t,r=!0){if(t===void 0)return new Uint8Array(e);if(Ft(t,void 0,"output"),t.length!==e)throw Error('"output" expected Uint8Array of length '+e+", got: "+t.length);if(r&&!lc(t))throw Error("invalid output, must be aligned");return t}function UR(e,t,r){cc(e),cc(t),um(r);let i=new Uint8Array(16),n=xW(i);return n.setBigUint64(0,BigInt(t),r),n.setBigUint64(8,BigInt(e),r),i}function lc(e){return e.byteOffset%4===0}function uc(e){return Uint8Array.from(Ft(e))}var MR=(e)=>Uint8Array.from(e.split(""),(t)=>t.charCodeAt(0)),vW=(()=>Ci(ti(MR("expand 16-byte k"))))(),_W=(()=>Ci(ti(MR("expand 32-byte k"))))();function Xe(e,t){return e<<t|e>>>32-t}var ju=64,kW=16,sS=(()=>4294967295)(),FR=Uint32Array.of();function EW(e,t,r,i,n,o,s,a){let c=n.length,l=new Uint8Array(ju),u=ti(l),d=Cs&&lc(n)&&lc(o),p=d?ti(n):FR,m=d?ti(o):FR;if(!Cs){for(let y=0;y<c;s++){if(e(t,r,i,u,s,a),Ci(u),s>=sS)throw Error("arx: counter overflow");let g=Math.min(ju,c-y);for(let b=0,v;b<g;b++)v=y+b,o[v]=n[v]^l[b];y+=g}return}for(let y=0;y<c;s++){if(e(t,r,i,u,s,a),s>=sS)throw Error("arx: counter overflow");let g=Math.min(ju,c-y);if(d&&g===ju){let b=y/4;if(y%4!==0)throw Error("arx: invalid block position");for(let v=0,A;v<kW;v++)A=b+v,m[A]=p[A]^u[v];y+=ju;continue}for(let b=0,v;b<g;b++)v=y+b,o[v]=n[v]^l[b];y+=g}}function ZR(e,t){let{allowShortKeys:r,extendNonceFn:i,counterLength:n,counterRight:o,rounds:s}=LR({allowShortKeys:!1,counterLength:8,counterRight:!1,rounds:20},t);if(typeof e!=="function")throw Error("core must be a function");return cc(n),cc(s),um(o),um(r),(a,c,l,u,d=0)=>{Ft(a,void 0,"key"),Ft(c,void 0,"nonce"),Ft(l,void 0,"data");let p=l.length;if(u=Bu(p,u,!1),cc(d),d<0||d>=sS)throw Error("arx: counter overflow");let m=[],y=a.length,g,b;if(y===32)m.push(g=uc(a)),b=_W;else if(y===16&&r)g=new Uint8Array(32),g.set(a),g.set(a,16),b=vW,m.push(g);else throw Ft(a,32,"arx key"),Error("invalid key size");if(!Cs||!lc(c))m.push(c=uc(c));let v=ti(g);if(i){if(c.length!==24)throw Error("arx: extended nonce must be 24 bytes");let z=c.subarray(0,16);if(Cs)i(b,v,ti(z),v);else{let j=Ci(Uint32Array.from(b));i(j,v,ti(z),v),zn(j),Ci(v)}c=c.subarray(16)}else if(!Cs)Ci(v);let A=16-n;if(A!==c.length)throw Error(`arx: nonce must be ${A} or 16 bytes`);if(A!==12){let z=new Uint8Array(12);z.set(c,o?0:12-c.length),c=z,m.push(c)}let T=Ci(ti(c));try{return EW(e,b,v,T,l,u,d,s),u}finally{zn(...m)}}}function ir(e,t){return e[t++]&255|(e[t++]&255)<<8}class HR{blockLen=16;outputLen=16;buffer=new Uint8Array(16);r=new Uint16Array(10);h=new Uint16Array(10);pad=new Uint16Array(8);pos=0;finished=!1;destroyed=!1;constructor(e){e=uc(Ft(e,32,"key"));let t=ir(e,0),r=ir(e,2),i=ir(e,4),n=ir(e,6),o=ir(e,8),s=ir(e,10),a=ir(e,12),c=ir(e,14);this.r[0]=t&8191,this.r[1]=(t>>>13|r<<3)&8191,this.r[2]=(r>>>10|i<<6)&7939,this.r[3]=(i>>>7|n<<9)&8191,this.r[4]=(n>>>4|o<<12)&255,this.r[5]=o>>>1&8190,this.r[6]=(o>>>14|s<<2)&8191,this.r[7]=(s>>>11|a<<5)&8065,this.r[8]=(a>>>8|c<<8)&8191,this.r[9]=c>>>5&127;for(let l=0;l<8;l++)this.pad[l]=ir(e,16+2*l)}process(e,t,r=!1){let i=r?0:2048,{h:n,r:o}=this,s=o[0],a=o[1],c=o[2],l=o[3],u=o[4],d=o[5],p=o[6],m=o[7],y=o[8],g=o[9],b=ir(e,t+0),v=ir(e,t+2),A=ir(e,t+4),T=ir(e,t+6),z=ir(e,t+8),j=ir(e,t+10),E=ir(e,t+12),Z=ir(e,t+14),D=n[0]+(b&8191),H=n[1]+((b>>>13|v<<3)&8191),X=n[2]+((v>>>10|A<<6)&8191),F=n[3]+((A>>>7|T<<9)&8191),P=n[4]+((T>>>4|z<<12)&8191),N=n[5]+(z>>>1&8191),I=n[6]+((z>>>14|j<<2)&8191),R=n[7]+((j>>>11|E<<5)&8191),O=n[8]+((E>>>8|Z<<8)&8191),M=n[9]+(Z>>>5|i),L=0,V=L+D*s+H*(5*g)+X*(5*y)+F*(5*m)+P*(5*p);L=V>>>13,V&=8191,V+=N*(5*d)+I*(5*u)+R*(5*l)+O*(5*c)+M*(5*a),L+=V>>>13,V&=8191;let _=L+D*a+H*s+X*(5*g)+F*(5*y)+P*(5*m);L=_>>>13,_&=8191,_+=N*(5*p)+I*(5*d)+R*(5*u)+O*(5*l)+M*(5*c),L+=_>>>13,_&=8191;let te=L+D*c+H*a+X*s+F*(5*g)+P*(5*y);L=te>>>13,te&=8191,te+=N*(5*m)+I*(5*p)+R*(5*d)+O*(5*u)+M*(5*l),L+=te>>>13,te&=8191;let ue=L+D*l+H*c+X*a+F*s+P*(5*g);L=ue>>>13,ue&=8191,ue+=N*(5*y)+I*(5*m)+R*(5*p)+O*(5*d)+M*(5*u),L+=ue>>>13,ue&=8191;let C=L+D*u+H*l+X*c+F*a+P*s;L=C>>>13,C&=8191,C+=N*(5*g)+I*(5*y)+R*(5*m)+O*(5*p)+M*(5*d),L+=C>>>13,C&=8191;let Se=L+D*d+H*u+X*l+F*c+P*a;L=Se>>>13,Se&=8191,Se+=N*s+I*(5*g)+R*(5*y)+O*(5*m)+M*(5*p),L+=Se>>>13,Se&=8191;let Ee=L+D*p+H*d+X*u+F*l+P*c;L=Ee>>>13,Ee&=8191,Ee+=N*a+I*s+R*(5*g)+O*(5*y)+M*(5*m),L+=Ee>>>13,Ee&=8191;let Ce=L+D*m+H*p+X*d+F*u+P*l;L=Ce>>>13,Ce&=8191,Ce+=N*c+I*a+R*s+O*(5*g)+M*(5*y),L+=Ce>>>13,Ce&=8191;let $e=L+D*y+H*m+X*p+F*d+P*u;L=$e>>>13,$e&=8191,$e+=N*l+I*c+R*a+O*s+M*(5*g),L+=$e>>>13,$e&=8191;let _e=L+D*g+H*y+X*m+F*p+P*d;L=_e>>>13,_e&=8191,_e+=N*u+I*l+R*c+O*a+M*s,L+=_e>>>13,_e&=8191,L=(L<<2)+L|0,L=L+V|0,V=L&8191,L=L>>>13,_+=L,n[0]=V,n[1]=_,n[2]=te,n[3]=ue,n[4]=C,n[5]=Se,n[6]=Ee,n[7]=Ce,n[8]=$e,n[9]=_e}finalize(){let{h:e,pad:t}=this,r=new Uint16Array(10),i=e[1]>>>13;e[1]&=8191;for(let s=2;s<10;s++)e[s]+=i,i=e[s]>>>13,e[s]&=8191;e[0]+=i*5,i=e[0]>>>13,e[0]&=8191,e[1]+=i,i=e[1]>>>13,e[1]&=8191,e[2]+=i,r[0]=e[0]+5,i=r[0]>>>13,r[0]&=8191;for(let s=1;s<10;s++)r[s]=e[s]+i,i=r[s]>>>13,r[s]&=8191;r[9]-=8192;let n=(i^1)-1;for(let s=0;s<10;s++)r[s]&=n;n=~n;for(let s=0;s<10;s++)e[s]=e[s]&n|r[s];e[0]=(e[0]|e[1]<<13)&65535,e[1]=(e[1]>>>3|e[2]<<10)&65535,e[2]=(e[2]>>>6|e[3]<<7)&65535,e[3]=(e[3]>>>9|e[4]<<4)&65535,e[4]=(e[4]>>>12|e[5]<<1|e[6]<<14)&65535,e[5]=(e[6]>>>2|e[7]<<11)&65535,e[6]=(e[7]>>>5|e[8]<<8)&65535,e[7]=(e[8]>>>8|e[9]<<5)&65535;let o=e[0]+t[0];e[0]=o&65535;for(let s=1;s<8;s++)o=(e[s]+t[s]|0)+(o>>>16)|0,e[s]=o&65535;zn(r)}update(e){oS(this),Ft(e),e=uc(e);let{buffer:t,blockLen:r}=this,i=e.length;for(let n=0;n<i;){let o=Math.min(r-this.pos,i-n);if(o===r){for(;r<=i-n;n+=r)this.process(e,n);continue}if(t.set(e.subarray(n,n+o),this.pos),this.pos+=o,n+=o,this.pos===r)this.process(t,0,!1),this.pos=0}return this}destroy(){this.destroyed=!0,zn(this.h,this.r,this.buffer,this.pad)}digestInto(e){oS(this),DR(e,this),this.finished=!0;let{buffer:t,h:r}=this,{pos:i}=this;if(i){t[i++]=1;for(;i<16;i++)t[i]=0;this.process(t,0,!0)}this.finalize();let n=0;for(let o=0;o<8;o++)e[n++]=r[o]>>>0,e[n++]=r[o]>>>8}digest(){let{buffer:e,outputLen:t}=this;this.digestInto(e);let r=e.slice(0,t);return this.destroy(),r}}var JR=jR(32,(e)=>new HR(e));function IW(e,t,r,i,n,o=20){let s=e[0],a=e[1],c=e[2],l=e[3],u=t[0],d=t[1],p=t[2],m=t[3],y=t[4],g=t[5],b=t[6],v=t[7],A=n,T=r[0],z=r[1],j=r[2],E=s,Z=a,D=c,H=l,X=u,F=d,P=p,N=m,I=y,R=g,O=b,M=v,L=A,V=T,_=z,te=j;for(let C=0;C<o;C+=2)E=E+X|0,L=Xe(L^E,16),I=I+L|0,X=Xe(X^I,12),E=E+X|0,L=Xe(L^E,8),I=I+L|0,X=Xe(X^I,7),Z=Z+F|0,V=Xe(V^Z,16),R=R+V|0,F=Xe(F^R,12),Z=Z+F|0,V=Xe(V^Z,8),R=R+V|0,F=Xe(F^R,7),D=D+P|0,_=Xe(_^D,16),O=O+_|0,P=Xe(P^O,12),D=D+P|0,_=Xe(_^D,8),O=O+_|0,P=Xe(P^O,7),H=H+N|0,te=Xe(te^H,16),M=M+te|0,N=Xe(N^M,12),H=H+N|0,te=Xe(te^H,8),M=M+te|0,N=Xe(N^M,7),E=E+F|0,te=Xe(te^E,16),O=O+te|0,F=Xe(F^O,12),E=E+F|0,te=Xe(te^E,8),O=O+te|0,F=Xe(F^O,7),Z=Z+P|0,L=Xe(L^Z,16),M=M+L|0,P=Xe(P^M,12),Z=Z+P|0,L=Xe(L^Z,8),M=M+L|0,P=Xe(P^M,7),D=D+N|0,V=Xe(V^D,16),I=I+V|0,N=Xe(N^I,12),D=D+N|0,V=Xe(V^D,8),I=I+V|0,N=Xe(N^I,7),H=H+X|0,_=Xe(_^H,16),R=R+_|0,X=Xe(X^R,12),H=H+X|0,_=Xe(_^H,8),R=R+_|0,X=Xe(X^R,7);let ue=0;i[ue++]=s+E|0,i[ue++]=a+Z|0,i[ue++]=c+D|0,i[ue++]=l+H|0,i[ue++]=u+X|0,i[ue++]=d+F|0,i[ue++]=p+P|0,i[ue++]=m+N|0,i[ue++]=y+I|0,i[ue++]=g+R|0,i[ue++]=b+O|0,i[ue++]=v+M|0,i[ue++]=A+L|0,i[ue++]=T+V|0,i[ue++]=z+_|0,i[ue++]=j+te|0}var AW=ZR(IW,{counterRight:!1,counterLength:4,allowShortKeys:!1});var TW=new Uint8Array(16),KR=(e,t)=>{e.update(t);let r=t.length%16;if(r)e.update(TW.subarray(r))},$W=new Uint8Array(32);function VR(e,t,r,i,n){if(n!==void 0)Ft(n,void 0,"AAD");let o=e(t,r,$W),s=UR(i.length,n?n.length:0,!0),a=JR.create(o);if(n)KR(a,n);KR(a,i),a.update(s);let c=a.digest();return zn(o,s),c}var CW=(e)=>(t,r,i)=>({encrypt(o,s){let a=o.length;s=Bu(a+16,s,!1),s.set(o);let c=s.subarray(0,-16);e(t,r,c,c,1);let l=VR(e,t,r,c,i);return s.set(l,a),zn(l),s},decrypt(o,s){s=Bu(o.length-16,s,!1);let a=o.subarray(0,-16),c=o.subarray(-16),l=VR(e,t,r,a,i);if(!BR(c,l))throw zn(l),Error("invalid tag");return s.set(o.subarray(0,-16)),e(t,r,s,s,1),zn(l),s}}),yn=qR({blockSize:64,nonceLength:12,tagLength:16},CW(AW));/*! noble-hashes - MIT License (c) 2022 Paul Miller (paulmillr.com) */function dc(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name==="Uint8Array"}function Vt(e,t=""){if(!Number.isSafeInteger(e)||e<0){let r=t&&`"${t}" `;throw Error(`${r}expected integer >= 0, got ${e}`)}}function Ne(e,t,r=""){let i=dc(e),n=e?.length,o=t!==void 0;if(!i||o&&n!==t){let s=r&&`"${r}" `,a=o?` of length ${t}`:"",c=i?`length=${n}`:`type=${typeof e}`;throw Error(s+"expected Uint8Array"+a+", got "+c)}return e}function bn(e){if(typeof e!=="function"||typeof e.create!=="function")throw Error("Hash must wrapped by utils.createHasher");Vt(e.outputLen),Vt(e.blockLen)}function Ri(e,t=!0){if(e.destroyed)throw Error("Hash instance has been destroyed");if(t&&e.finished)throw Error("Hash#digest() has already been called")}function dm(e,t){Ne(e,void 0,"digestInto() output");let r=t.outputLen;if(e.length<r)throw Error('"digestInto() output" expected to be of length >='+r)}function fm(e){return new Uint32Array(e.buffer,e.byteOffset,Math.floor(e.byteLength/4))}function Fr(...e){for(let t=0;t<e.length;t++)e[t].fill(0)}function pm(e){return new DataView(e.buffer,e.byteOffset,e.byteLength)}function Nn(e,t){return e<<32-t|e>>>t}var OW=(()=>new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68)();function RW(e){return e<<24&4278190080|e<<8&16711680|e>>>8&65280|e>>>24&255}function PW(e){for(let t=0;t<e.length;t++)e[t]=RW(e[t]);return e}var aS=OW?(e)=>e:PW,GR=(()=>typeof Uint8Array.from([]).toHex==="function"&&typeof Uint8Array.fromHex==="function")(),zW=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,"0"));function Os(e){if(Ne(e),GR)return e.toHex();let t="";for(let r=0;r<e.length;r++)t+=zW[e[r]];return t}var Oi={_0:48,_9:57,A:65,F:70,a:97,f:102};function WR(e){if(e>=Oi._0&&e<=Oi._9)return e-Oi._0;if(e>=Oi.A&&e<=Oi.F)return e-(Oi.A-10);if(e>=Oi.a&&e<=Oi.f)return e-(Oi.a-10);return}function Rs(e){if(typeof e!=="string")throw Error("hex string expected, got "+typeof e);if(GR)return Uint8Array.fromHex(e);let t=e.length,r=t/2;if(t%2)throw Error("hex string expected, got unpadded hex of length "+t);let i=new Uint8Array(r);for(let n=0,o=0;n<r;n++,o+=2){let s=WR(e.charCodeAt(o)),a=WR(e.charCodeAt(o+1));if(s===void 0||a===void 0){let c=e[o]+e[o+1];throw Error('hex string expected, got non-hex character "'+c+'" at index '+o)}i[n]=s*16+a}return i}function Lt(...e){let t=0;for(let i=0;i<e.length;i++){let n=e[i];Ne(n),t+=n.length}let r=new Uint8Array(t);for(let i=0,n=0;i<e.length;i++){let o=e[i];r.set(o,n),n+=o.length}return r}function fc(e,t={}){let r=(n,o)=>e(o).update(n).digest(),i=e(void 0);return r.outputLen=i.outputLen,r.blockLen=i.blockLen,r.create=(n)=>e(n),Object.assign(r,t),Object.freeze(r)}function xo(e=32){let t=typeof globalThis==="object"?globalThis.crypto:null;if(typeof t?.getRandomValues!=="function")throw Error("crypto.getRandomValues must be defined");return t.getRandomValues(new Uint8Array(e))}var So=(e)=>({oid:Uint8Array.from([6,9,96,134,72,1,101,3,4,2,e])});/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */var lS=BigInt(0),cS=BigInt(1);function qu(e,t=""){if(typeof e!=="boolean"){let r=t&&`"${t}" `;throw Error(r+"expected boolean, got type="+typeof e)}return e}function QR(e){if(typeof e==="bigint"){if(!mm(e))throw Error("positive bigint expected, got "+e)}else Vt(e);return e}function Uu(e){let t=QR(e).toString(16);return t.length&1?"0"+t:t}function YR(e){if(typeof e!=="string")throw Error("hex string expected, got "+typeof e);return e===""?lS:BigInt("0x"+e)}function wo(e){return YR(Os(e))}function vo(e){return YR(Os(hm(Ne(e)).reverse()))}function pc(e,t){Vt(t),e=QR(e);let r=Rs(e.toString(16).padStart(t*2,"0"));if(r.length!==t)throw Error("number too large");return r}function Fu(e,t){return pc(e,t).reverse()}function hm(e){return Uint8Array.from(e)}function _o(e){return Uint8Array.from(e,(t,r)=>{let i=t.charCodeAt(0);if(t.length!==1||i>127)throw Error(`string contains non-ASCII character "${e[r]}" with code ${i} at position ${r}`);return i})}var mm=(e)=>typeof e==="bigint"&&lS<=e;function NW(e,t,r){return mm(e)&&mm(t)&&mm(r)&&t<=e&&e<r}function Mu(e,t,r,i){if(!NW(t,r,i))throw Error("expected valid "+e+": "+r+" <= n < "+i+", got "+t)}function uS(e){let t;for(t=0;e>lS;e>>=cS,t+=1);return t}var Zu=(e)=>(cS<<BigInt(e))-cS;function XR(e,t,r){if(Vt(e,"hashLen"),Vt(t,"qByteLen"),typeof r!=="function")throw Error("hmacFn must be a function");let i=(b)=>new Uint8Array(b),n=Uint8Array.of(),o=Uint8Array.of(0),s=Uint8Array.of(1),a=1000,c=i(e),l=i(e),u=0,d=()=>{c.fill(1),l.fill(0),u=0},p=(...b)=>r(l,Lt(c,...b)),m=(b=n)=>{if(l=p(o,b),c=p(),b.length===0)return;l=p(s,b),c=p()},y=()=>{if(u++>=a)throw Error("drbg: tried max amount of iterations");let b=0,v=[];while(b<t){c=p();let A=c.slice();v.push(A),b+=c.length}return Lt(...v)};return(b,v)=>{d(),m(b);let A=void 0;while(!(A=v(y())))m();return d(),A}}function Ps(e,t={},r={}){if(!e||typeof e!=="object")throw Error("expected valid options object");function i(o,s,a){let c=e[o];if(a&&c===void 0)return;let l=typeof c;if(l!==s||c===null)throw Error(`param "${o}" is invalid: expected ${s}, got ${l}`)}let n=(o,s)=>Object.entries(o).forEach(([a,c])=>i(a,c,s));n(t,!1),n(r,!0)}function dS(e){let t=new WeakMap;return(r,...i)=>{let n=t.get(r);if(n!==void 0)return n;let o=e(r,...i);return t.set(r,o),o}}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */var $r=BigInt(0),yr=BigInt(1),zs=BigInt(2),rP=BigInt(3),nP=BigInt(4),iP=BigInt(5),DW=BigInt(7),oP=BigInt(8),LW=BigInt(9),sP=BigInt(16);function Tr(e,t){let r=e%t;return r>=$r?r:t+r}function xn(e,t,r){let i=e;while(t-- >$r)i*=i,i%=r;return i}function eP(e,t){if(e===$r)throw Error("invert: expected non-zero number");if(t<=$r)throw Error("invert: expected positive modulus, got "+t);let r=Tr(e,t),i=t,n=$r,o=yr,s=yr,a=$r;while(r!==$r){let l=i/r,u=i%r,d=n-s*l,p=o-a*l;i=r,r=u,n=s,o=a,s=d,a=p}if(i!==yr)throw Error("invert: does not exist");return Tr(n,t)}function fS(e,t,r){if(!e.eql(e.sqr(t),r))throw Error("Cannot find square root")}function aP(e,t){let r=(e.ORDER+yr)/nP,i=e.pow(t,r);return fS(e,i,t),i}function BW(e,t){let r=(e.ORDER-iP)/oP,i=e.mul(t,zs),n=e.pow(i,r),o=e.mul(t,n),s=e.mul(e.mul(o,zs),n),a=e.mul(o,e.sub(s,e.ONE));return fS(e,a,t),a}function jW(e){let t=gm(e),r=cP(e),i=r(t,t.neg(t.ONE)),n=r(t,i),o=r(t,t.neg(i)),s=(e+DW)/sP;return(a,c)=>{let l=a.pow(c,s),u=a.mul(l,i),d=a.mul(l,n),p=a.mul(l,o),m=a.eql(a.sqr(u),c),y=a.eql(a.sqr(d),c);l=a.cmov(l,u,m),u=a.cmov(p,d,y);let g=a.eql(a.sqr(u),c),b=a.cmov(l,u,g);return fS(a,b,c),b}}function cP(e){if(e<rP)throw Error("sqrt is not defined for small field");let t=e-yr,r=0;while(t%zs===$r)t/=zs,r++;let i=zs,n=gm(e);while(tP(n,i)===1)if(i++>1000)throw Error("Cannot find square root: probably non-prime P");if(r===1)return aP;let o=n.pow(i,t),s=(t+yr)/zs;return function(c,l){if(c.is0(l))return l;if(tP(c,l)!==1)throw Error("Cannot find square root");let u=r,d=c.mul(c.ONE,o),p=c.pow(l,t),m=c.pow(l,s);while(!c.eql(p,c.ONE)){if(c.is0(p))return c.ZERO;let y=1,g=c.sqr(p);while(!c.eql(g,c.ONE))if(y++,g=c.sqr(g),y===u)throw Error("Cannot find square root");let b=yr<<BigInt(u-y-1),v=c.pow(d,b);u=y,d=c.sqr(v),p=c.mul(p,d),m=c.mul(m,v)}return m}}function qW(e){if(e%nP===rP)return aP;if(e%oP===iP)return BW;if(e%sP===LW)return jW(e);return cP(e)}var UW=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function pS(e){let t={ORDER:"bigint",BYTES:"number",BITS:"number"},r=UW.reduce((i,n)=>(i[n]="function",i),t);return Ps(e,r),e}function FW(e,t,r){if(r<$r)throw Error("invalid exponent, negatives unsupported");if(r===$r)return e.ONE;if(r===yr)return t;let i=e.ONE,n=t;while(r>$r){if(r&yr)i=e.mul(i,n);n=e.sqr(n),r>>=yr}return i}function Hu(e,t,r=!1){let i=Array(t.length).fill(r?e.ZERO:void 0),n=t.reduce((s,a,c)=>{if(e.is0(a))return s;return i[c]=s,e.mul(s,a)},e.ONE),o=e.inv(n);return t.reduceRight((s,a,c)=>{if(e.is0(a))return s;return i[c]=e.mul(s,i[c]),e.mul(s,a)},o),i}function tP(e,t){let r=(e.ORDER-yr)/zs,i=e.pow(t,r),n=e.eql(i,e.ONE),o=e.eql(i,e.ZERO),s=e.eql(i,e.neg(e.ONE));if(!n&&!o&&!s)throw Error("invalid Legendre symbol result");return n?1:o?0:-1}function MW(e,t){if(t!==void 0)Vt(t);let r=t!==void 0?t:e.toString(2).length,i=Math.ceil(r/8);return{nBitLength:r,nByteLength:i}}class lP{ORDER;BITS;BYTES;isLE;ZERO=$r;ONE=yr;_lengths;_sqrt;_mod;constructor(e,t={}){if(e<=$r)throw Error("invalid field: expected ORDER > 0, got "+e);let r=void 0;if(this.isLE=!1,t!=null&&typeof t==="object"){if(typeof t.BITS==="number")r=t.BITS;if(typeof t.sqrt==="function")this.sqrt=t.sqrt;if(typeof t.isLE==="boolean")this.isLE=t.isLE;if(t.allowedLengths)this._lengths=t.allowedLengths?.slice();if(typeof t.modFromBytes==="boolean")this._mod=t.modFromBytes}let{nBitLength:i,nByteLength:n}=MW(e,r);if(n>2048)throw Error("invalid field: expected ORDER of <= 2048 bytes");this.ORDER=e,this.BITS=i,this.BYTES=n,this._sqrt=void 0,Object.preventExtensions(this)}create(e){return Tr(e,this.ORDER)}isValid(e){if(typeof e!=="bigint")throw Error("invalid field element: expected bigint, got "+typeof e);return $r<=e&&e<this.ORDER}is0(e){return e===$r}isValidNot0(e){return!this.is0(e)&&this.isValid(e)}isOdd(e){return(e&yr)===yr}neg(e){return Tr(-e,this.ORDER)}eql(e,t){return e===t}sqr(e){return Tr(e*e,this.ORDER)}add(e,t){return Tr(e+t,this.ORDER)}sub(e,t){return Tr(e-t,this.ORDER)}mul(e,t){return Tr(e*t,this.ORDER)}pow(e,t){return FW(this,e,t)}div(e,t){return Tr(e*eP(t,this.ORDER),this.ORDER)}sqrN(e){return e*e}addN(e,t){return e+t}subN(e,t){return e-t}mulN(e,t){return e*t}inv(e){return eP(e,this.ORDER)}sqrt(e){if(!this._sqrt)this._sqrt=qW(this.ORDER);return this._sqrt(this,e)}toBytes(e){return this.isLE?Fu(e,this.BYTES):pc(e,this.BYTES)}fromBytes(e,t=!1){Ne(e);let{_lengths:r,BYTES:i,isLE:n,ORDER:o,_mod:s}=this;if(r){if(!r.includes(e.length)||e.length>i)throw Error("Field.fromBytes: expected "+r+" bytes, got "+e.length);let c=new Uint8Array(i);c.set(e,n?0:c.length-e.length),e=c}if(e.length!==i)throw Error("Field.fromBytes: expected "+i+" bytes, got "+e.length);let a=n?vo(e):wo(e);if(s)a=Tr(a,o);if(!t){if(!this.isValid(a))throw Error("invalid field element: outside of range 0..ORDER")}return a}invertBatch(e){return Hu(this,e)}cmov(e,t,r){return r?t:e}}function gm(e,t={}){return new lP(e,t)}function uP(e){if(typeof e!=="bigint")throw Error("field order must be bigint");let t=e.toString(2).length;return Math.ceil(t/8)}function mS(e){let t=uP(e);return t+Math.ceil(t/2)}function dP(e,t,r=!1){Ne(e);let i=e.length,n=uP(t),o=mS(t);if(i<16||i<o||i>1024)throw Error("expected "+o+"-1024 bytes of input, got "+i);let s=r?vo(e):wo(e),a=Tr(s,t-yr)+yr;return r?Fu(a,n):pc(a,n)}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */var mc=BigInt(0),Ns=BigInt(1);function Ju(e,t){let r=t.negate();return e?r:t}function bS(e,t){let r=Hu(e.Fp,t.map((i)=>i.Z));return t.map((i,n)=>e.fromAffine(i.toAffine(r[n])))}function hP(e,t){if(!Number.isSafeInteger(e)||e<=0||e>t)throw Error("invalid window size, expected [1.."+t+"], got W="+e)}function hS(e,t){hP(e,t);let r=Math.ceil(t/e)+1,i=2**(e-1),n=2**e,o=Zu(e),s=BigInt(e);return{windows:r,windowSize:i,mask:o,maxNumber:n,shiftBy:s}}function fP(e,t,r){let{windowSize:i,mask:n,maxNumber:o,shiftBy:s}=r,a=Number(e&n),c=e>>s;if(a>i)a-=o,c+=Ns;let l=t*i,u=l+Math.abs(a)-1,d=a===0,p=a<0,m=t%2!==0;return{nextN:c,offset:u,isZero:d,isNeg:p,isNegF:m,offsetF:l}}var gS=new WeakMap,gP=new WeakMap;function yS(e){return gP.get(e)||1}function pP(e){if(e!==mc)throw Error("invalid wNAF")}class xS{BASE;ZERO;Fn;bits;constructor(e,t){this.BASE=e.BASE,this.ZERO=e.ZERO,this.Fn=e.Fn,this.bits=t}_unsafeLadder(e,t,r=this.ZERO){let i=e;while(t>mc){if(t&Ns)r=r.add(i);i=i.double(),t>>=Ns}return r}precomputeWindow(e,t){let{windows:r,windowSize:i}=hS(t,this.bits),n=[],o=e,s=o;for(let a=0;a<r;a++){s=o,n.push(s);for(let c=1;c<i;c++)s=s.add(o),n.push(s);o=s.double()}return n}wNAF(e,t,r){if(!this.Fn.isValid(r))throw Error("invalid scalar");let i=this.ZERO,n=this.BASE,o=hS(e,this.bits);for(let s=0;s<o.windows;s++){let{nextN:a,offset:c,isZero:l,isNeg:u,isNegF:d,offsetF:p}=fP(r,s,o);if(r=a,l)n=n.add(Ju(d,t[p]));else i=i.add(Ju(u,t[c]))}return pP(r),{p:i,f:n}}wNAFUnsafe(e,t,r,i=this.ZERO){let n=hS(e,this.bits);for(let o=0;o<n.windows;o++){if(r===mc)break;let{nextN:s,offset:a,isZero:c,isNeg:l}=fP(r,o,n);if(r=s,c)continue;else{let u=t[a];i=i.add(l?u.negate():u)}}return pP(r),i}getPrecomputes(e,t,r){let i=gS.get(t);if(!i){if(i=this.precomputeWindow(t,e),e!==1){if(typeof r==="function")i=r(i);gS.set(t,i)}}return i}cached(e,t,r){let i=yS(e);return this.wNAF(i,this.getPrecomputes(i,e,r),t)}unsafe(e,t,r,i){let n=yS(e);if(n===1)return this._unsafeLadder(e,t,i);return this.wNAFUnsafe(n,this.getPrecomputes(n,e,r),t,i)}createCache(e,t){hP(t,this.bits),gP.set(e,t),gS.delete(e)}hasCache(e){return yS(e)!==1}}function yP(e,t,r,i){let n=t,o=e.ZERO,s=e.ZERO;while(r>mc||i>mc){if(r&Ns)o=o.add(n);if(i&Ns)s=s.add(n);n=n.double(),r>>=Ns,i>>=Ns}return{p1:o,p2:s}}function mP(e,t,r){if(t){if(t.ORDER!==e)throw Error("Field.ORDER must match order: Fp == p, Fn == n");return pS(t),t}else return gm(e,{isLE:r})}function bP(e,t,r={},i){if(i===void 0)i=e==="edwards";if(!t||typeof t!=="object")throw Error(`expected valid ${e} CURVE object`);for(let c of["p","n","h"]){let l=t[c];if(!(typeof l==="bigint"&&l>mc))throw Error(`CURVE.${c} must be positive bigint`)}let n=mP(t.p,r.Fp,i),o=mP(t.n,r.Fn,i),a=["Gx","Gy","a",e==="weierstrass"?"b":"d"];for(let c of a)if(!n.isValid(t[c]))throw Error(`CURVE.${c} must be valid field element of CURVE.Fp`);return t=Object.freeze(Object.assign({},t)),{CURVE:t,Fp:n,Fn:o}}function ym(e,t){return function(i){let n=e(i);return{secretKey:n,publicKey:t(n)}}}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */var Ku=BigInt(0),hc=BigInt(1),bm=BigInt(2);function ZW(e){return Ps(e,{adjustScalarBytes:"function",powPminus2:"function"}),Object.freeze({...e})}function xP(e){let t=ZW(e),{P:r,type:i,adjustScalarBytes:n,powPminus2:o,randomBytes:s}=t,a=i==="x25519";if(!a&&i!=="x448")throw Error("invalid type");let c=s||xo,l=a?255:448,u=a?32:56,d=a?BigInt(9):BigInt(5),p=a?BigInt(121665):BigInt(39081),m=a?bm**BigInt(254):bm**BigInt(447),y=a?BigInt(8)*bm**BigInt(251)-hc:BigInt(4)*bm**BigInt(445)-hc,g=m+y+hc,b=(I)=>Tr(I,r),v=A(d);function A(I){return Fu(b(I),u)}function T(I){let R=hm(Ne(I,u,"uCoordinate"));if(a)R[31]&=127;return b(vo(R))}function z(I){return vo(n(hm(Ne(I,u,"scalar"))))}function j(I,R){let O=X(T(R),z(I));if(O===Ku)throw Error("invalid private or public key received");return A(O)}function E(I){return j(I,v)}let Z=E,D=j;function H(I,R,O){let M=b(I*(R-O));return R=b(R-M),O=b(O+M),{x_2:R,x_3:O}}function X(I,R){Mu("u",I,Ku,r),Mu("scalar",R,m,g);let O=R,M=I,L=hc,V=Ku,_=I,te=hc,ue=Ku;for(let Se=BigInt(l-1);Se>=Ku;Se--){let Ee=O>>Se&hc;ue^=Ee,{x_2:L,x_3:_}=H(ue,L,_),{x_2:V,x_3:te}=H(ue,V,te),ue=Ee;let Ce=L+V,$e=b(Ce*Ce),_e=L-V,Pe=b(_e*_e),Ve=$e-Pe,et=_+te,St=_-te,Dt=b(St*Ce),hr=b(et*_e),Qr=Dt+hr,Yr=Dt-hr;_=b(Qr*Qr),te=b(M*b(Yr*Yr)),L=b($e*Pe),V=b(Ve*($e+b(p*Ve)))}({x_2:L,x_3:_}=H(ue,L,_)),{x_2:V,x_3:te}=H(ue,V,te);let C=o(V);return b(L*C)}let F={secretKey:u,publicKey:u,seed:u},P=(I=c(u))=>(Ne(I,F.seed,"seed"),I),N={randomSecretKey:P};return Object.freeze({keygen:ym(P,Z),getSharedSecret:D,getPublicKey:Z,scalarMult:j,scalarMultBase:E,utils:N,GuBytes:v.slice(),lengths:F})}class SS{oHash;iHash;blockLen;outputLen;finished=!1;destroyed=!1;constructor(e,t){if(bn(e),Ne(t,void 0,"key"),this.iHash=e.create(),typeof this.iHash.update!=="function")throw Error("Expected instance of class which extends utils.Hash");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;let r=this.blockLen,i=new Uint8Array(r);i.set(t.length>r?e.create().update(t).digest():t);for(let n=0;n<i.length;n++)i[n]^=54;this.iHash.update(i),this.oHash=e.create();for(let n=0;n<i.length;n++)i[n]^=106;this.oHash.update(i),Fr(i)}update(e){return Ri(this),this.iHash.update(e),this}digestInto(e){Ri(this),Ne(e,this.outputLen,"output"),this.finished=!0,this.iHash.digestInto(e),this.oHash.update(e),this.oHash.digestInto(e),this.destroy()}digest(){let e=new Uint8Array(this.oHash.outputLen);return this.digestInto(e),e}_cloneInto(e){e||=Object.create(Object.getPrototypeOf(this),{});let{oHash:t,iHash:r,finished:i,destroyed:n,blockLen:o,outputLen:s}=this;return e=e,e.finished=i,e.destroyed=n,e.blockLen=o,e.outputLen=s,e.oHash=t._cloneInto(e.oHash),e.iHash=r._cloneInto(e.iHash),e}clone(){return this._cloneInto()}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}}var gc=(e,t,r)=>new SS(e,t).update(r).digest();gc.create=(e,t)=>new SS(e,t);/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */var SP=(e,t)=>(e+(e>=0?t:-t)/vP)/t;function HW(e,t,r){let[[i,n],[o,s]]=t,a=SP(s*e,r),c=SP(-n*e,r),l=e-a*i-c*o,u=-a*n-c*s,d=l<Pi,p=u<Pi;if(d)l=-l;if(p)u=-u;let m=Zu(Math.ceil(uS(r)/2))+yc;if(l<Pi||l>=m||u<Pi||u>=m)throw Error("splitScalar (endomorphism): failed, k="+e);return{k1neg:d,k1:l,k2neg:p,k2:u}}function vS(e){if(!["compact","recovered","der"].includes(e))throw Error('Signature format must be "compact", "recovered", or "der"');return e}function wS(e,t){let r={};for(let i of Object.keys(t))r[i]=e[i]===void 0?t[i]:e[i];if(qu(r.lowS,"lowS"),qu(r.prehash,"prehash"),r.format!==void 0)vS(r.format);return r}class wP extends Error{constructor(e=""){super(e)}}var ko={Err:wP,_tlv:{encode:(e,t)=>{let{Err:r}=ko;if(e<0||e>256)throw new r("tlv.encode: wrong tag");if(t.length&1)throw new r("tlv.encode: unpadded data");let i=t.length/2,n=Uu(i);if(n.length/2&128)throw new r("tlv.encode: long form length too big");let o=i>127?Uu(n.length/2|128):"";return Uu(e)+o+n+t},decode(e,t){let{Err:r}=ko,i=0;if(e<0||e>256)throw new r("tlv.encode: wrong tag");if(t.length<2||t[i++]!==e)throw new r("tlv.decode: wrong tlv");let n=t[i++],o=!!(n&128),s=0;if(!o)s=n;else{let c=n&127;if(!c)throw new r("tlv.decode(long): indefinite length not supported");if(c>4)throw new r("tlv.decode(long): byte length is too big");let l=t.subarray(i,i+c);if(l.length!==c)throw new r("tlv.decode: length bytes not complete");if(l[0]===0)throw new r("tlv.decode(long): zero leftmost byte");for(let u of l)s=s<<8|u;if(i+=c,s<128)throw new r("tlv.decode(long): not minimal encoding")}let a=t.subarray(i,i+s);if(a.length!==s)throw new r("tlv.decode: wrong value length");return{v:a,l:t.subarray(i+s)}}},_int:{encode(e){let{Err:t}=ko;if(e<Pi)throw new t("integer: negative integers are not allowed");let r=Uu(e);if(Number.parseInt(r[0],16)&8)r="00"+r;if(r.length&1)throw new t("unexpected DER parsing assertion: unpadded hex");return r},decode(e){let{Err:t}=ko;if(e[0]&128)throw new t("invalid signature integer: negative");if(e[0]===0&&!(e[1]&128))throw new t("invalid signature integer: unnecessary leading zero");return wo(e)}},toSig(e){let{Err:t,_int:r,_tlv:i}=ko,n=Ne(e,void 0,"signature"),{v:o,l:s}=i.decode(48,n);if(s.length)throw new t("invalid signature: left bytes after parsing");let{v:a,l:c}=i.decode(2,o),{v:l,l:u}=i.decode(2,c);if(u.length)throw new t("invalid signature: left bytes after parsing");return{r:r.decode(a),s:r.decode(l)}},hexFromSig(e){let{_tlv:t,_int:r}=ko,i=t.encode(2,r.encode(e.r)),n=t.encode(2,r.encode(e.s)),o=i+n;return t.encode(48,o)}},Pi=BigInt(0),yc=BigInt(1),vP=BigInt(2),xm=BigInt(3),JW=BigInt(4);function _S(e,t={}){let r=bP("weierstrass",e,t),{Fp:i,Fn:n}=r,o=r.CURVE,{h:s,n:a}=o;Ps(t,{},{allowInfinityPoint:"boolean",clearCofactor:"function",isTorsionFree:"function",fromBytes:"function",toBytes:"function",endo:"object"});let{endo:c}=t;if(c){if(!i.is0(o.a)||typeof c.beta!=="bigint"||!Array.isArray(c.basises))throw Error('invalid endo: expected "beta": bigint and "basises": array')}let l=kP(i,n);function u(){if(!i.isOdd)throw Error("compression is not supported: Field does not have .isOdd()")}function d(P,N,I){let{x:R,y:O}=N.toAffine(),M=i.toBytes(R);if(qu(I,"isCompressed"),I){u();let L=!i.isOdd(O);return Lt(_P(L),M)}else return Lt(Uint8Array.of(4),M,i.toBytes(O))}function p(P){Ne(P,void 0,"Point");let{publicKey:N,publicKeyUncompressed:I}=l,R=P.length,O=P[0],M=P.subarray(1);if(R===N&&(O===2||O===3)){let L=i.fromBytes(M);if(!i.isValid(L))throw Error("bad point: is not on curve, wrong x");let V=g(L),_;try{_=i.sqrt(V)}catch(C){let Se=C instanceof Error?": "+C.message:"";throw Error("bad point: is not on curve, sqrt error"+Se)}u();let te=i.isOdd(_);if((O&1)===1!==te)_=i.neg(_);return{x:L,y:_}}else if(R===I&&O===4){let L=i.BYTES,V=i.fromBytes(M.subarray(0,L)),_=i.fromBytes(M.subarray(L,L*2));if(!b(V,_))throw Error("bad point: is not on curve");return{x:V,y:_}}else throw Error(`bad point: got length ${R}, expected compressed=${N} or uncompressed=${I}`)}let m=t.toBytes||d,y=t.fromBytes||p;function g(P){let N=i.sqr(P),I=i.mul(N,P);return i.add(i.add(I,i.mul(P,o.a)),o.b)}function b(P,N){let I=i.sqr(N),R=g(P);return i.eql(I,R)}if(!b(o.Gx,o.Gy))throw Error("bad curve params: generator point");let v=i.mul(i.pow(o.a,xm),JW),A=i.mul(i.sqr(o.b),BigInt(27));if(i.is0(i.add(v,A)))throw Error("bad curve params: a or b");function T(P,N,I=!1){if(!i.isValid(N)||I&&i.is0(N))throw Error(`bad point coordinate ${P}`);return N}function z(P){if(!(P instanceof H))throw Error("Weierstrass Point expected")}function j(P){if(!c||!c.basises)throw Error("no endo");return HW(P,c.basises,n.ORDER)}let E=dS((P,N)=>{let{X:I,Y:R,Z:O}=P;if(i.eql(O,i.ONE))return{x:I,y:R};let M=P.is0();if(N==null)N=M?i.ONE:i.inv(O);let L=i.mul(I,N),V=i.mul(R,N),_=i.mul(O,N);if(M)return{x:i.ZERO,y:i.ZERO};if(!i.eql(_,i.ONE))throw Error("invZ was invalid");return{x:L,y:V}}),Z=dS((P)=>{if(P.is0()){if(t.allowInfinityPoint&&!i.is0(P.Y))return;throw Error("bad point: ZERO")}let{x:N,y:I}=P.toAffine();if(!i.isValid(N)||!i.isValid(I))throw Error("bad point: x or y not field elements");if(!b(N,I))throw Error("bad point: equation left != right");if(!P.isTorsionFree())throw Error("bad point: not in prime-order subgroup");return!0});function D(P,N,I,R,O){return I=new H(i.mul(I.X,P),I.Y,I.Z),N=Ju(R,N),I=Ju(O,I),N.add(I)}class H{static BASE=new H(o.Gx,o.Gy,i.ONE);static ZERO=new H(i.ZERO,i.ONE,i.ZERO);static Fp=i;static Fn=n;X;Y;Z;constructor(P,N,I){this.X=T("x",P),this.Y=T("y",N,!0),this.Z=T("z",I),Object.freeze(this)}static CURVE(){return o}static fromAffine(P){let{x:N,y:I}=P||{};if(!P||!i.isValid(N)||!i.isValid(I))throw Error("invalid affine point");if(P instanceof H)throw Error("projective point not allowed");if(i.is0(N)&&i.is0(I))return H.ZERO;return new H(N,I,i.ONE)}static fromBytes(P){let N=H.fromAffine(y(Ne(P,void 0,"point")));return N.assertValidity(),N}static fromHex(P){return H.fromBytes(Rs(P))}get x(){return this.toAffine().x}get y(){return this.toAffine().y}precompute(P=8,N=!0){if(F.createCache(this,P),!N)this.multiply(xm);return this}assertValidity(){Z(this)}hasEvenY(){let{y:P}=this.toAffine();if(!i.isOdd)throw Error("Field doesn't support isOdd");return!i.isOdd(P)}equals(P){z(P);let{X:N,Y:I,Z:R}=this,{X:O,Y:M,Z:L}=P,V=i.eql(i.mul(N,L),i.mul(O,R)),_=i.eql(i.mul(I,L),i.mul(M,R));return V&&_}negate(){return new H(this.X,i.neg(this.Y),this.Z)}double(){let{a:P,b:N}=o,I=i.mul(N,xm),{X:R,Y:O,Z:M}=this,L=i.ZERO,V=i.ZERO,_=i.ZERO,te=i.mul(R,R),ue=i.mul(O,O),C=i.mul(M,M),Se=i.mul(R,O);return Se=i.add(Se,Se),_=i.mul(R,M),_=i.add(_,_),L=i.mul(P,_),V=i.mul(I,C),V=i.add(L,V),L=i.sub(ue,V),V=i.add(ue,V),V=i.mul(L,V),L=i.mul(Se,L),_=i.mul(I,_),C=i.mul(P,C),Se=i.sub(te,C),Se=i.mul(P,Se),Se=i.add(Se,_),_=i.add(te,te),te=i.add(_,te),te=i.add(te,C),te=i.mul(te,Se),V=i.add(V,te),C=i.mul(O,M),C=i.add(C,C),te=i.mul(C,Se),L=i.sub(L,te),_=i.mul(C,ue),_=i.add(_,_),_=i.add(_,_),new H(L,V,_)}add(P){z(P);let{X:N,Y:I,Z:R}=this,{X:O,Y:M,Z:L}=P,V=i.ZERO,_=i.ZERO,te=i.ZERO,ue=o.a,C=i.mul(o.b,xm),Se=i.mul(N,O),Ee=i.mul(I,M),Ce=i.mul(R,L),$e=i.add(N,I),_e=i.add(O,M);$e=i.mul($e,_e),_e=i.add(Se,Ee),$e=i.sub($e,_e),_e=i.add(N,R);let Pe=i.add(O,L);return _e=i.mul(_e,Pe),Pe=i.add(Se,Ce),_e=i.sub(_e,Pe),Pe=i.add(I,R),V=i.add(M,L),Pe=i.mul(Pe,V),V=i.add(Ee,Ce),Pe=i.sub(Pe,V),te=i.mul(ue,_e),V=i.mul(C,Ce),te=i.add(V,te),V=i.sub(Ee,te),te=i.add(Ee,te),_=i.mul(V,te),Ee=i.add(Se,Se),Ee=i.add(Ee,Se),Ce=i.mul(ue,Ce),_e=i.mul(C,_e),Ee=i.add(Ee,Ce),Ce=i.sub(Se,Ce),Ce=i.mul(ue,Ce),_e=i.add(_e,Ce),Se=i.mul(Ee,_e),_=i.add(_,Se),Se=i.mul(Pe,_e),V=i.mul($e,V),V=i.sub(V,Se),Se=i.mul($e,Ee),te=i.mul(Pe,te),te=i.add(te,Se),new H(V,_,te)}subtract(P){return this.add(P.negate())}is0(){return this.equals(H.ZERO)}multiply(P){let{endo:N}=t;if(!n.isValidNot0(P))throw Error("invalid scalar: out of range");let I,R,O=(M)=>F.cached(this,M,(L)=>bS(H,L));if(N){let{k1neg:M,k1:L,k2neg:V,k2:_}=j(P),{p:te,f:ue}=O(L),{p:C,f:Se}=O(_);R=ue.add(Se),I=D(N.beta,te,C,M,V)}else{let{p:M,f:L}=O(P);I=M,R=L}return bS(H,[I,R])[0]}multiplyUnsafe(P){let{endo:N}=t,I=this;if(!n.isValid(P))throw Error("invalid scalar: out of range");if(P===Pi||I.is0())return H.ZERO;if(P===yc)return I;if(F.hasCache(this))return this.multiply(P);if(N){let{k1neg:R,k1:O,k2neg:M,k2:L}=j(P),{p1:V,p2:_}=yP(H,I,O,L);return D(N.beta,V,_,R,M)}else return F.unsafe(I,P)}toAffine(P){return E(this,P)}isTorsionFree(){let{isTorsionFree:P}=t;if(s===yc)return!0;if(P)return P(H,this);return F.unsafe(this,a).is0()}clearCofactor(){let{clearCofactor:P}=t;if(s===yc)return this;if(P)return P(H,this);return this.multiplyUnsafe(s)}isSmallOrder(){return this.multiplyUnsafe(s).is0()}toBytes(P=!0){return qu(P,"isCompressed"),this.assertValidity(),m(H,this,P)}toHex(P=!0){return Os(this.toBytes(P))}toString(){return`<Point ${this.is0()?"ZERO":this.toHex()}>`}}let X=n.BITS,F=new xS(H,t.endo?Math.ceil(X/2):X);return H.BASE.precompute(8),H}function _P(e){return Uint8Array.of(e?2:3)}function kP(e,t){return{secretKey:t.BYTES,publicKey:1+e.BYTES,publicKeyUncompressed:1+2*e.BYTES,publicKeyHasPrefix:!0,signature:2*t.BYTES}}function KW(e,t={}){let{Fn:r}=e,i=t.randomBytes||xo,n=Object.assign(kP(e.Fp,r),{seed:mS(r.ORDER)});function o(m){try{let y=r.fromBytes(m);return r.isValidNot0(y)}catch(y){return!1}}function s(m,y){let{publicKey:g,publicKeyUncompressed:b}=n;try{let v=m.length;if(y===!0&&v!==g)return!1;if(y===!1&&v!==b)return!1;return!!e.fromBytes(m)}catch(v){return!1}}function a(m=i(n.seed)){return dP(Ne(m,n.seed,"seed"),r.ORDER)}function c(m,y=!0){return e.BASE.multiply(r.fromBytes(m)).toBytes(y)}function l(m){let{secretKey:y,publicKey:g,publicKeyUncompressed:b}=n;if(!dc(m))return;if("_lengths"in r&&r._lengths||y===g)return;let v=Ne(m,void 0,"key").length;return v===g||v===b}function u(m,y,g=!0){if(l(m)===!0)throw Error("first arg must be private key");if(l(y)===!1)throw Error("second arg must be public key");let b=r.fromBytes(m);return e.fromBytes(y).multiply(b).toBytes(g)}let d={isValidSecretKey:o,isValidPublicKey:s,randomSecretKey:a},p=ym(a,c);return Object.freeze({getPublicKey:c,getSharedSecret:u,keygen:p,Point:e,utils:d,lengths:n})}function kS(e,t,r={}){bn(t),Ps(r,{},{hmac:"function",lowS:"boolean",randomBytes:"function",bits2int:"function",bits2int_modN:"function"}),r=Object.assign({},r);let i=r.randomBytes||xo,n=r.hmac||((I,R)=>gc(t,I,R)),{Fp:o,Fn:s}=e,{ORDER:a,BITS:c}=s,{keygen:l,getPublicKey:u,getSharedSecret:d,utils:p,lengths:m}=KW(e,r),y={prehash:!0,lowS:typeof r.lowS==="boolean"?r.lowS:!0,format:"compact",extraEntropy:!1},g=a*vP<o.ORDER;function b(I){let R=a>>yc;return I>R}function v(I,R){if(!s.isValidNot0(R))throw Error(`invalid signature ${I}: out of range 1..Point.Fn.ORDER`);return R}function A(){if(g)throw Error('"recovered" sig type is not supported for cofactor >2 curves')}function T(I,R){vS(R);let O=m.signature,M=R==="compact"?O:R==="recovered"?O+1:void 0;return Ne(I,M)}class z{r;s;recovery;constructor(I,R,O){if(this.r=v("r",I),this.s=v("s",R),O!=null){if(A(),![0,1,2,3].includes(O))throw Error("invalid recovery id");this.recovery=O}Object.freeze(this)}static fromBytes(I,R=y.format){T(I,R);let O;if(R==="der"){let{r:_,s:te}=ko.toSig(Ne(I));return new z(_,te)}if(R==="recovered")O=I[0],R="compact",I=I.subarray(1);let M=m.signature/2,L=I.subarray(0,M),V=I.subarray(M,M*2);return new z(s.fromBytes(L),s.fromBytes(V),O)}static fromHex(I,R){return this.fromBytes(Rs(I),R)}assertRecovery(){let{recovery:I}=this;if(I==null)throw Error("invalid recovery id: must be present");return I}addRecoveryBit(I){return new z(this.r,this.s,I)}recoverPublicKey(I){let{r:R,s:O}=this,M=this.assertRecovery(),L=M===2||M===3?R+a:R;if(!o.isValid(L))throw Error("invalid recovery id: sig.r+curve.n != R.x");let V=o.toBytes(L),_=e.fromBytes(Lt(_P((M&1)===0),V)),te=s.inv(L),ue=E(Ne(I,void 0,"msgHash")),C=s.create(-ue*te),Se=s.create(O*te),Ee=e.BASE.multiplyUnsafe(C).add(_.multiplyUnsafe(Se));if(Ee.is0())throw Error("invalid recovery: point at infinify");return Ee.assertValidity(),Ee}hasHighS(){return b(this.s)}toBytes(I=y.format){if(vS(I),I==="der")return Rs(ko.hexFromSig(this));let{r:R,s:O}=this,M=s.toBytes(R),L=s.toBytes(O);if(I==="recovered")return A(),Lt(Uint8Array.of(this.assertRecovery()),M,L);return Lt(M,L)}toHex(I){return Os(this.toBytes(I))}}let j=r.bits2int||function(R){if(R.length>8192)throw Error("input is too large");let O=wo(R),M=R.length*8-c;return M>0?O>>BigInt(M):O},E=r.bits2int_modN||function(R){return s.create(j(R))},Z=Zu(c);function D(I){return Mu("num < 2^"+c,I,Pi,Z),s.toBytes(I)}function H(I,R){return Ne(I,void 0,"message"),R?Ne(t(I),void 0,"prehashed message"):I}function X(I,R,O){let{lowS:M,prehash:L,extraEntropy:V}=wS(O,y);I=H(I,L);let _=E(I),te=s.fromBytes(R);if(!s.isValidNot0(te))throw Error("invalid private key");let ue=[D(te),D(_)];if(V!=null&&V!==!1){let Ce=V===!0?i(m.secretKey):V;ue.push(Ne(Ce,void 0,"extraEntropy"))}let C=Lt(...ue),Se=_;function Ee(Ce){let $e=j(Ce);if(!s.isValidNot0($e))return;let _e=s.inv($e),Pe=e.BASE.multiply($e).toAffine(),Ve=s.create(Pe.x);if(Ve===Pi)return;let et=s.create(_e*s.create(Se+Ve*te));if(et===Pi)return;let St=(Pe.x===Ve?0:2)|Number(Pe.y&yc),Dt=et;if(M&&b(et))Dt=s.neg(et),St^=1;return new z(Ve,Dt,g?void 0:St)}return{seed:C,k2sig:Ee}}function F(I,R,O={}){let{seed:M,k2sig:L}=X(I,R,O);return XR(t.outputLen,s.BYTES,n)(M,L).toBytes(O.format)}function P(I,R,O,M={}){let{lowS:L,prehash:V,format:_}=wS(M,y);if(O=Ne(O,void 0,"publicKey"),R=H(R,V),!dc(I)){let te=I instanceof z?", use sig.toBytes()":"";throw Error("verify expects Uint8Array signature"+te)}T(I,_);try{let te=z.fromBytes(I,_),ue=e.fromBytes(O);if(L&&te.hasHighS())return!1;let{r:C,s:Se}=te,Ee=E(R),Ce=s.inv(Se),$e=s.create(Ee*Ce),_e=s.create(C*Ce),Pe=e.BASE.multiplyUnsafe($e).add(ue.multiplyUnsafe(_e));if(Pe.is0())return!1;return s.create(Pe.x)===C}catch(te){return!1}}function N(I,R,O={}){let{prehash:M}=wS(O,y);return R=H(R,M),z.fromBytes(I,"recovered").recoverPublicKey(R).toBytes()}return Object.freeze({keygen:l,getPublicKey:u,getSharedSecret:d,utils:p,lengths:m,Point:e,sign:F,verify:P,recoverPublicKey:N,Signature:z,hash:t})}function EP(e,t,r){return e&t^~e&r}function IP(e,t,r){return e&t^e&r^t&r}class Sm{blockLen;outputLen;padOffset;isLE;buffer;view;finished=!1;length=0;pos=0;destroyed=!1;constructor(e,t,r,i){this.blockLen=e,this.outputLen=t,this.padOffset=r,this.isLE=i,this.buffer=new Uint8Array(e),this.view=pm(this.buffer)}update(e){Ri(this),Ne(e);let{view:t,buffer:r,blockLen:i}=this,n=e.length;for(let o=0;o<n;){let s=Math.min(i-this.pos,n-o);if(s===i){let a=pm(e);for(;i<=n-o;o+=i)this.process(a,o);continue}if(r.set(e.subarray(o,o+s),this.pos),this.pos+=s,o+=s,this.pos===i)this.process(t,0),this.pos=0}return this.length+=e.length,this.roundClean(),this}digestInto(e){Ri(this),dm(e,this),this.finished=!0;let{buffer:t,view:r,blockLen:i,isLE:n}=this,{pos:o}=this;if(t[o++]=128,Fr(this.buffer.subarray(o)),this.padOffset>i-o)this.process(r,0),o=0;for(let u=o;u<i;u++)t[u]=0;r.setBigUint64(i-8,BigInt(this.length*8),n),this.process(r,0);let s=pm(e),a=this.outputLen;if(a%4)throw Error("_sha2: outputLen must be aligned to 32bit");let c=a/4,l=this.get();if(c>l.length)throw Error("_sha2: outputLen bigger than state");for(let u=0;u<c;u++)s.setUint32(4*u,l[u],n)}digest(){let{buffer:e,outputLen:t}=this;this.digestInto(e);let r=e.slice(0,t);return this.destroy(),r}_cloneInto(e){e||=new this.constructor,e.set(...this.get());let{blockLen:t,buffer:r,length:i,finished:n,destroyed:o,pos:s}=this;if(e.destroyed=o,e.finished=n,e.length=i,e.pos=s,i%t)e.buffer.set(r);return e}clone(){return this._cloneInto()}}var zi=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]);var or=Uint32Array.from([3418070365,3238371032,1654270250,914150663,2438529370,812702999,355462360,4144912697,1731405415,4290775857,2394180231,1750603025,3675008525,1694076839,1203062813,3204075428]);var wm=BigInt(4294967295),AP=BigInt(32);function VW(e,t=!1){if(t)return{h:Number(e&wm),l:Number(e>>AP&wm)};return{h:Number(e>>AP&wm)|0,l:Number(e&wm)|0}}function vm(e,t=!1){let r=e.length,i=new Uint32Array(r),n=new Uint32Array(r);for(let o=0;o<r;o++){let{h:s,l:a}=VW(e[o],t);[i[o],n[o]]=[s,a]}return[i,n]}var ES=(e,t,r)=>e>>>r,IS=(e,t,r)=>e<<32-r|t>>>r,Ds=(e,t,r)=>e>>>r|t<<32-r,Ls=(e,t,r)=>e<<32-r|t>>>r,Vu=(e,t,r)=>e<<64-r|t>>>r-32,Wu=(e,t,r)=>e>>>r-32|t<<64-r;var TP=(e,t,r)=>e<<r|t>>>32-r,$P=(e,t,r)=>t<<r|e>>>32-r,CP=(e,t,r)=>t<<r-32|e>>>64-r,OP=(e,t,r)=>e<<r-32|t>>>64-r;function ri(e,t,r,i){let n=(t>>>0)+(i>>>0);return{h:e+r+(n/4294967296|0)|0,l:n|0}}var RP=(e,t,r)=>(e>>>0)+(t>>>0)+(r>>>0),PP=(e,t,r,i)=>t+r+i+(e/4294967296|0)|0,zP=(e,t,r,i)=>(e>>>0)+(t>>>0)+(r>>>0)+(i>>>0),NP=(e,t,r,i,n)=>t+r+i+n+(e/4294967296|0)|0,DP=(e,t,r,i,n)=>(e>>>0)+(t>>>0)+(r>>>0)+(i>>>0)+(n>>>0),LP=(e,t,r,i,n,o)=>t+r+i+n+o+(e/4294967296|0)|0;var GW=Uint32Array.from([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),Eo=new Uint32Array(64);class BP extends Sm{constructor(e){super(64,e,8,!1)}get(){let{A:e,B:t,C:r,D:i,E:n,F:o,G:s,H:a}=this;return[e,t,r,i,n,o,s,a]}set(e,t,r,i,n,o,s,a){this.A=e|0,this.B=t|0,this.C=r|0,this.D=i|0,this.E=n|0,this.F=o|0,this.G=s|0,this.H=a|0}process(e,t){for(let u=0;u<16;u++,t+=4)Eo[u]=e.getUint32(t,!1);for(let u=16;u<64;u++){let d=Eo[u-15],p=Eo[u-2],m=Nn(d,7)^Nn(d,18)^d>>>3,y=Nn(p,17)^Nn(p,19)^p>>>10;Eo[u]=y+Eo[u-7]+m+Eo[u-16]|0}let{A:r,B:i,C:n,D:o,E:s,F:a,G:c,H:l}=this;for(let u=0;u<64;u++){let d=Nn(s,6)^Nn(s,11)^Nn(s,25),p=l+d+EP(s,a,c)+GW[u]+Eo[u]|0,y=(Nn(r,2)^Nn(r,13)^Nn(r,22))+IP(r,i,n)|0;l=c,c=a,a=s,s=o+p|0,o=n,n=i,i=r,r=p+y|0}r=r+this.A|0,i=i+this.B|0,n=n+this.C|0,o=o+this.D|0,s=s+this.E|0,a=a+this.F|0,c=c+this.G|0,l=l+this.H|0,this.set(r,i,n,o,s,a,c,l)}roundClean(){Fr(Eo)}destroy(){this.set(0,0,0,0,0,0,0,0),Fr(this.buffer)}}class jP extends BP{A=zi[0]|0;B=zi[1]|0;C=zi[2]|0;D=zi[3]|0;E=zi[4]|0;F=zi[5]|0;G=zi[6]|0;H=zi[7]|0;constructor(){super(32)}}var qP=(()=>vm(["0x428a2f98d728ae22","0x7137449123ef65cd","0xb5c0fbcfec4d3b2f","0xe9b5dba58189dbbc","0x3956c25bf348b538","0x59f111f1b605d019","0x923f82a4af194f9b","0xab1c5ed5da6d8118","0xd807aa98a3030242","0x12835b0145706fbe","0x243185be4ee4b28c","0x550c7dc3d5ffb4e2","0x72be5d74f27b896f","0x80deb1fe3b1696b1","0x9bdc06a725c71235","0xc19bf174cf692694","0xe49b69c19ef14ad2","0xefbe4786384f25e3","0x0fc19dc68b8cd5b5","0x240ca1cc77ac9c65","0x2de92c6f592b0275","0x4a7484aa6ea6e483","0x5cb0a9dcbd41fbd4","0x76f988da831153b5","0x983e5152ee66dfab","0xa831c66d2db43210","0xb00327c898fb213f","0xbf597fc7beef0ee4","0xc6e00bf33da88fc2","0xd5a79147930aa725","0x06ca6351e003826f","0x142929670a0e6e70","0x27b70a8546d22ffc","0x2e1b21385c26c926","0x4d2c6dfc5ac42aed","0x53380d139d95b3df","0x650a73548baf63de","0x766a0abb3c77b2a8","0x81c2c92e47edaee6","0x92722c851482353b","0xa2bfe8a14cf10364","0xa81a664bbc423001","0xc24b8b70d0f89791","0xc76c51a30654be30","0xd192e819d6ef5218","0xd69906245565a910","0xf40e35855771202a","0x106aa07032bbd1b8","0x19a4c116b8d2d0c8","0x1e376c085141ab53","0x2748774cdf8eeb99","0x34b0bcb5e19b48a8","0x391c0cb3c5c95a63","0x4ed8aa4ae3418acb","0x5b9cca4f7763e373","0x682e6ff3d6b2b8a3","0x748f82ee5defb2fc","0x78a5636f43172f60","0x84c87814a1f0ab72","0x8cc702081a6439ec","0x90befffa23631e28","0xa4506cebde82bde9","0xbef9a3f7b2c67915","0xc67178f2e372532b","0xca273eceea26619c","0xd186b8c721c0c207","0xeada7dd6cde0eb1e","0xf57d4f7fee6ed178","0x06f067aa72176fba","0x0a637dc5a2c898a6","0x113f9804bef90dae","0x1b710b35131c471b","0x28db77f523047d84","0x32caab7b40c72493","0x3c9ebe0a15c9bebc","0x431d67c49c100d4c","0x4cc5d4becb3e42b6","0x597f299cfc657e2a","0x5fcb6fab3ad6faec","0x6c44198c4a475817"].map((e)=>BigInt(e))))(),QW=(()=>qP[0])(),YW=(()=>qP[1])(),Io=new Uint32Array(80),Ao=new Uint32Array(80);class UP extends Sm{constructor(e){super(128,e,16,!1)}get(){let{Ah:e,Al:t,Bh:r,Bl:i,Ch:n,Cl:o,Dh:s,Dl:a,Eh:c,El:l,Fh:u,Fl:d,Gh:p,Gl:m,Hh:y,Hl:g}=this;return[e,t,r,i,n,o,s,a,c,l,u,d,p,m,y,g]}set(e,t,r,i,n,o,s,a,c,l,u,d,p,m,y,g){this.Ah=e|0,this.Al=t|0,this.Bh=r|0,this.Bl=i|0,this.Ch=n|0,this.Cl=o|0,this.Dh=s|0,this.Dl=a|0,this.Eh=c|0,this.El=l|0,this.Fh=u|0,this.Fl=d|0,this.Gh=p|0,this.Gl=m|0,this.Hh=y|0,this.Hl=g|0}process(e,t){for(let A=0;A<16;A++,t+=4)Io[A]=e.getUint32(t),Ao[A]=e.getUint32(t+=4);for(let A=16;A<80;A++){let T=Io[A-15]|0,z=Ao[A-15]|0,j=Ds(T,z,1)^Ds(T,z,8)^ES(T,z,7),E=Ls(T,z,1)^Ls(T,z,8)^IS(T,z,7),Z=Io[A-2]|0,D=Ao[A-2]|0,H=Ds(Z,D,19)^Vu(Z,D,61)^ES(Z,D,6),X=Ls(Z,D,19)^Wu(Z,D,61)^IS(Z,D,6),F=zP(E,X,Ao[A-7],Ao[A-16]),P=NP(F,j,H,Io[A-7],Io[A-16]);Io[A]=P|0,Ao[A]=F|0}let{Ah:r,Al:i,Bh:n,Bl:o,Ch:s,Cl:a,Dh:c,Dl:l,Eh:u,El:d,Fh:p,Fl:m,Gh:y,Gl:g,Hh:b,Hl:v}=this;for(let A=0;A<80;A++){let T=Ds(u,d,14)^Ds(u,d,18)^Vu(u,d,41),z=Ls(u,d,14)^Ls(u,d,18)^Wu(u,d,41),j=u&p^~u&y,E=d&m^~d&g,Z=DP(v,z,E,YW[A],Ao[A]),D=LP(Z,b,T,j,QW[A],Io[A]),H=Z|0,X=Ds(r,i,28)^Vu(r,i,34)^Vu(r,i,39),F=Ls(r,i,28)^Wu(r,i,34)^Wu(r,i,39),P=r&n^r&s^n&s,N=i&o^i&a^o&a;b=y|0,v=g|0,y=p|0,g=m|0,p=u|0,m=d|0,{h:u,l:d}=ri(c|0,l|0,D|0,H|0),c=s|0,l=a|0,s=n|0,a=o|0,n=r|0,o=i|0;let I=RP(H,F,N);r=PP(I,D,X,P),i=I|0}({h:r,l:i}=ri(this.Ah|0,this.Al|0,r|0,i|0)),{h:n,l:o}=ri(this.Bh|0,this.Bl|0,n|0,o|0),{h:s,l:a}=ri(this.Ch|0,this.Cl|0,s|0,a|0),{h:c,l}=ri(this.Dh|0,this.Dl|0,c|0,l|0),{h:u,l:d}=ri(this.Eh|0,this.El|0,u|0,d|0),{h:p,l:m}=ri(this.Fh|0,this.Fl|0,p|0,m|0),{h:y,l:g}=ri(this.Gh|0,this.Gl|0,y|0,g|0),{h:b,l:v}=ri(this.Hh|0,this.Hl|0,b|0,v|0),this.set(r,i,n,o,s,a,c,l,u,d,p,m,y,g,b,v)}roundClean(){Fr(Io,Ao)}destroy(){Fr(this.buffer),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}}class FP extends UP{Ah=or[0]|0;Al=or[1]|0;Bh=or[2]|0;Bl=or[3]|0;Ch=or[4]|0;Cl=or[5]|0;Dh=or[6]|0;Dl=or[7]|0;Eh=or[8]|0;El=or[9]|0;Fh=or[10]|0;Fl=or[11]|0;Gh=or[12]|0;Gl=or[13]|0;Hh=or[14]|0;Hl=or[15]|0;constructor(){super(48)}}var _m=fc(()=>new jP,So(1));var MP=fc(()=>new FP,So(2));/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */var XW=BigInt(1),ZP=BigInt(2),eG=BigInt(3),tG=BigInt(5),g1e=BigInt(8),HP=BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed");function rG(e){let t=BigInt(10),r=BigInt(20),i=BigInt(40),n=BigInt(80),o=HP,a=e*e%o*e%o,c=xn(a,ZP,o)*a%o,l=xn(c,XW,o)*e%o,u=xn(l,tG,o)*l%o,d=xn(u,t,o)*u%o,p=xn(d,r,o)*d%o,m=xn(p,i,o)*p%o,y=xn(m,n,o)*m%o,g=xn(y,n,o)*m%o,b=xn(g,t,o)*u%o;return{pow_p_5_8:xn(b,ZP,o)*e%o,b2:a}}function nG(e){return e[0]&=248,e[31]&=127,e[31]|=64,e}var JP=(()=>{let e=HP;return xP({P:e,type:"x25519",powPminus2:(t)=>{let{pow_p_5_8:r,b2:i}=rG(t);return Tr(xn(r,eG,e)*i,e)},adjustScalarBytes:nG})})();/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */var iG=(()=>({p:BigInt("0xffffffff00000001000000000000000000000000ffffffffffffffffffffffff"),n:BigInt("0xffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551"),h:BigInt(1),a:BigInt("0xffffffff00000001000000000000000000000000fffffffffffffffffffffffc"),b:BigInt("0x5ac635d8aa3a93e7b3ebbd55769886bc651d06b0cc53b0f63bce3c3e27d2604b"),Gx:BigInt("0x6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296"),Gy:BigInt("0x4fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5")}))(),oG=(()=>({p:BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff"),n:BigInt("0xffffffffffffffffffffffffffffffffffffffffffffffffc7634d81f4372ddf581a0db248b0a77aecec196accc52973"),h:BigInt(1),a:BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000fffffffc"),b:BigInt("0xb3312fa7e23ee7e4988e056be3f82d19181d9c6efe8141120314088f5013875ac656398d8a2ed19d2a85c8edd3ec2aef"),Gx:BigInt("0xaa87ca22be8b05378eb1c71ef320ad746e1d3b628ba79b9859f741e082542a385502f25dbf55296c3a545e3872760ab7"),Gy:BigInt("0x3617de4a96262c6f5d9e98bf9292dc29f8f41dbd289a147ce9da3113b5f0b8c00a60b1ce1d7e819d7a431d7c90ea0e5f")}))();var sG=_S(iG),AS=kS(sG,_m);var aG=_S(oG),KP=kS(aG,MP);function WP(e,t,r){if(bn(e),r===void 0)r=new Uint8Array(e.outputLen);return gc(e,r,t)}var TS=Uint8Array.of(0),VP=Uint8Array.of();function GP(e,t,r,i=32){bn(e),Vt(i,"length");let n=e.outputLen;if(i>255*n)throw Error("Length must be <= 255*HashLen");let o=Math.ceil(i/n);if(r===void 0)r=VP;else Ne(r,void 0,"info");let s=new Uint8Array(o*n),a=gc.create(e,t),c=a._cloneInto(),l=new Uint8Array(a.outputLen);for(let u=0;u<o;u++)TS[0]=u+1,c.update(u===0?VP:l).update(r).update(TS).digestInto(l),s.set(l,n*u),a._cloneInto(c);return a.destroy(),c.destroy(),Fr(l,TS),s.slice(0,i)}var cG=BigInt(0),Gu=BigInt(1),lG=BigInt(2),uG=BigInt(7),dG=BigInt(256),fG=BigInt(113),XP=[],ez=[],tz=[];for(let e=0,t=Gu,r=1,i=0;e<24;e++){[r,i]=[i,(2*r+3*i)%5],XP.push(2*(5*i+r)),ez.push((e+1)*(e+2)/2%64);let n=cG;for(let o=0;o<7;o++)if(t=(t<<Gu^(t>>uG)*fG)%dG,t&lG)n^=Gu<<(Gu<<BigInt(o))-Gu;tz.push(n)}var rz=vm(tz,!0),pG=rz[0],mG=rz[1],QP=(e,t,r)=>r>32?CP(e,t,r):TP(e,t,r),YP=(e,t,r)=>r>32?OP(e,t,r):$P(e,t,r);function hG(e,t=24){let r=new Uint32Array(10);for(let i=24-t;i<24;i++){for(let s=0;s<10;s++)r[s]=e[s]^e[s+10]^e[s+20]^e[s+30]^e[s+40];for(let s=0;s<10;s+=2){let a=(s+8)%10,c=(s+2)%10,l=r[c],u=r[c+1],d=QP(l,u,1)^r[a],p=YP(l,u,1)^r[a+1];for(let m=0;m<50;m+=10)e[s+m]^=d,e[s+m+1]^=p}let n=e[2],o=e[3];for(let s=0;s<24;s++){let a=ez[s],c=QP(n,o,a),l=YP(n,o,a),u=XP[s];n=e[u],o=e[u+1],e[u]=c,e[u+1]=l}for(let s=0;s<50;s+=10){for(let a=0;a<10;a++)r[a]=e[s+a];for(let a=0;a<10;a++)e[s+a]^=~r[(a+2)%10]&r[(a+4)%10]}e[0]^=pG[i],e[1]^=mG[i]}Fr(r)}class km{state;pos=0;posOut=0;finished=!1;state32;destroyed=!1;blockLen;suffix;outputLen;enableXOF=!1;rounds;constructor(e,t,r,i=!1,n=24){if(this.blockLen=e,this.suffix=t,this.outputLen=r,this.enableXOF=i,this.rounds=n,Vt(r,"outputLen"),!(0<e&&e<200))throw Error("only keccak-f1600 function is supported");this.state=new Uint8Array(200),this.state32=fm(this.state)}clone(){return this._cloneInto()}keccak(){aS(this.state32),hG(this.state32,this.rounds),aS(this.state32),this.posOut=0,this.pos=0}update(e){Ri(this),Ne(e);let{blockLen:t,state:r}=this,i=e.length;for(let n=0;n<i;){let o=Math.min(t-this.pos,i-n);for(let s=0;s<o;s++)r[this.pos++]^=e[n++];if(this.pos===t)this.keccak()}return this}finish(){if(this.finished)return;this.finished=!0;let{state:e,suffix:t,pos:r,blockLen:i}=this;if(e[r]^=t,(t&128)!==0&&r===i-1)this.keccak();e[i-1]^=128,this.keccak()}writeInto(e){Ri(this,!1),Ne(e),this.finish();let t=this.state,{blockLen:r}=this;for(let i=0,n=e.length;i<n;){if(this.posOut>=r)this.keccak();let o=Math.min(r-this.posOut,n-i);e.set(t.subarray(this.posOut,this.posOut+o),i),this.posOut+=o,i+=o}return e}xofInto(e){if(!this.enableXOF)throw Error("XOF is not possible for this instance");return this.writeInto(e)}xof(e){return Vt(e),this.xofInto(new Uint8Array(e))}digestInto(e){if(dm(e,this),this.finished)throw Error("digest() was already called");return this.writeInto(e),this.destroy(),e}digest(){return this.digestInto(new Uint8Array(this.outputLen))}destroy(){this.destroyed=!0,Fr(this.state)}_cloneInto(e){let{blockLen:t,suffix:r,outputLen:i,rounds:n,enableXOF:o}=this;return e||=new km(t,r,i,o,n),e.state32.set(this.state32),e.pos=this.pos,e.posOut=this.posOut,e.finished=this.finished,e.rounds=n,e.suffix=r,e.outputLen=i,e.enableXOF=o,e.destroyed=this.destroyed,e}}var nz=(e,t,r,i={})=>fc(()=>new km(t,e,r),i);var Bs=nz(6,136,32,So(8));var iz=nz(6,72,64,So(10));var oz=(e,t,r,i={})=>fc((n={})=>new km(t,e,n.dkLen===void 0?r:n.dkLen,!0),i),sz=oz(31,168,16,So(11)),ni=oz(31,136,32,So(12));function $S(e){if(!Number.isSafeInteger(e)||e<0||e>4294967295)throw Error("wrong u32 integer:"+e);return e}function cz(e){return $S(e),(e&e-1)===0&&e!==0}function CS(e,t){$S(e);let r=0;for(let i=0;i<t;i++,e>>>=1)r=r<<1|e&1;return r}function lz(e){return $S(e),31-Math.clz32(e)}function az(e){let t=e.length;if(t<2||!cz(t))throw Error("n must be a power of 2 and greater than 1. Got "+t);let r=lz(t);for(let i=0;i<t;i++){let n=CS(i,r);if(i<n){let o=e[i];e[i]=e[n],e[n]=o}}return e}var OS=(e,t)=>{let{N:r,roots:i,dit:n,invertButterflies:o=!1,skipStages:s=0,brp:a=!0}=t,c=lz(r);if(!cz(r))throw Error("FFT: Polynomial size should be power of two");let l=n!==o;return(u)=>{if(u.length!==r)throw Error("FFT: wrong Polynomial length");if(n&&a)az(u);for(let d=0,p=1;d<c-s;d++){let m=n?d+1+s:c-d,y=1<<m,g=y>>1,b=r>>m;for(let v=0;v<r;v+=y)for(let A=0,T=p++;A<g;A++){let z=o?n?r-T:T:A*b,j=v+A,E=v+A+g,Z=i[z],D=u[E],H=u[j];if(l){let X=e.mul(D,Z);u[j]=e.add(H,X),u[E]=e.sub(H,X)}else if(o)u[j]=e.add(D,H),u[E]=e.mul(e.sub(D,H),Z);else u[j]=e.add(H,D),u[E]=e.mul(e.sub(H,D),Z)}}if(!n&&a)az(u);return u}};/*! noble-post-quantum - MIT License (c) 2024 Paul Miller (paulmillr.com) */var ii=xo;function Em(e,t){if(e.length!==t.length)return!1;let r=0;for(let i=0;i<e.length;i++)r|=e[i]^t[i];return r===0}function uz(e){return Uint8Array.from(e)}function js(e,...t){let r=(n)=>typeof n==="number"?n:n.bytesLen,i=t.reduce((n,o)=>n+r(o),0);return{bytesLen:i,encode:(n)=>{let o=new Uint8Array(i);for(let s=0,a=0;s<t.length;s++){let c=t[s],l=r(c),u=typeof c==="number"?n[s]:c.encode(n[s]);if(Ne(u,l,e),o.set(u,a),typeof c!=="number")u.fill(0);a+=l}return o},decode:(n)=>{Ne(n,i,e);let o=[];for(let s of t){let a=r(s),c=n.subarray(0,a);o.push(typeof s==="number"?c:s.decode(c)),n=n.subarray(a)}return o}}}function Im(e,t){let r=t*e.bytesLen;return{bytesLen:r,encode:(i)=>{if(i.length!==t)throw Error(`vecCoder.encode: wrong length=${i.length}. Expected: ${t}`);let n=new Uint8Array(r);for(let o=0,s=0;o<i.length;o++){let a=e.encode(i[o]);n.set(a,s),a.fill(0),s+=a.length}return n},decode:(i)=>{Ne(i,r);let n=[];for(let o=0;o<i.length;o+=e.bytesLen)n.push(e.decode(i.subarray(o,o+e.bytesLen)));return n}}}function Mt(...e){for(let t of e)if(Array.isArray(t))for(let r of t)r.fill(0);else t.fill(0)}function RS(e){return(1<<e)-1}var O1e=Uint8Array.of();/*! noble-post-quantum - MIT License (c) 2024 Paul Miller (paulmillr.com) */var dz=(e)=>{let{newPoly:t,N:r,Q:i,F:n,ROOT_OF_UNITY:o,brvBits:s,isKyber:a}=e,c=(A,T=i)=>{let z=A%T|0;return(z>=0?z|0:T+z|0)|0},l=(A,T=i)=>{let z=c(A,T)|0;return(z>T>>1?z-T|0:z)|0};function u(){let A=t(r);for(let T=0;T<r;T++){let z=CS(T,s),j=BigInt(o)**BigInt(z)%BigInt(i);A[T]=Number(j)|0}return A}let d=u(),p={add:(A,T)=>c((A|0)+(T|0))|0,sub:(A,T)=>c((A|0)-(T|0))|0,mul:(A,T)=>c((A|0)*(T|0))|0,inv:(A)=>{throw Error("not implemented")}},m={N:r,roots:d,invertButterflies:!0,skipStages:a?1:0,brp:!1},y=OS(p,{dit:!1,...m}),g=OS(p,{dit:!0,...m});return{mod:c,smod:l,nttZetas:d,NTT:{encode:(A)=>y(A),decode:(A)=>{g(A);for(let T=0;T<A.length;T++)A[T]=c(n*A[T]);return A}},bitsCoder:(A,T)=>{let z=RS(A),j=A*(r/8);return{bytesLen:j,encode:(E)=>{let Z=new Uint8Array(j);for(let D=0,H=0,X=0,F=0;D<E.length;D++){H|=(T.encode(E[D])&z)<<X,X+=A;for(;X>=8;X-=8,H>>=8)Z[F++]=H&RS(X)}return Z},decode:(E)=>{let Z=t(r);for(let D=0,H=0,X=0,F=0;D<E.length;D++){H|=E[D]<<X,X+=8;for(;X>=A;X-=A,H>>=A)Z[F++]=T.decode(H&z)}return Z}}}}},gG=(e)=>(t,r)=>{if(!r)r=e.blockLen;let i=new Uint8Array(t.length+2);i.set(t);let n=t.length,o=new Uint8Array(r),s=e.create({}),a=0,c=0;return{stats:()=>({calls:a,xofs:c}),get:(l,u)=>(i[n+0]=l,i[n+1]=u,s.destroy(),s=e.create({}).update(i),a++,()=>(c++,s.xofInto(o))),clean:()=>{s.destroy(),Mt(o,i)}}},fz=gG(sz);/*! noble-post-quantum - MIT License (c) 2024 Paul Miller (paulmillr.com) */var br=256,Ni=3329,yG=3303,bG=17,{mod:Xu,nttZetas:xG,NTT:qs,bitsCoder:SG}=dz({N:br,Q:Ni,F:yG,ROOT_OF_UNITY:bG,newPoly:(e)=>new Uint16Array(e),brvBits:7,isKyber:!0}),PS={512:{N:br,Q:Ni,K:2,ETA1:3,ETA2:2,du:10,dv:4,RBGstrength:128},768:{N:br,Q:Ni,K:3,ETA1:2,ETA2:2,du:10,dv:4,RBGstrength:192},1024:{N:br,Q:Ni,K:4,ETA1:2,ETA2:2,du:11,dv:5,RBGstrength:256}},wG=(e)=>{if(e>=12)return{encode:(r)=>r,decode:(r)=>r};let t=2**(e-1);return{encode:(r)=>((r<<e)+Ni/2)/Ni,decode:(r)=>r*Ni+t>>>e}},Qu=(e)=>SG(e,wG(e));function Us(e,t){for(let r=0;r<br;r++)e[r]=Xu(e[r]+t[r])}function vG(e,t){for(let r=0;r<br;r++)e[r]=Xu(e[r]-t[r])}function _G(e,t,r,i,n){let o=Xu(t*i*n+e*r),s=Xu(e*i+t*r);return{c0:o,c1:s}}function Am(e,t){for(let r=0;r<br/2;r++){let i=xG[64+(r>>1)];if(r&1)i=-i;let{c0:n,c1:o}=_G(e[2*r+0],e[2*r+1],t[2*r+0],t[2*r+1],i);e[2*r+0]=n,e[2*r+1]=o}return e}function pz(e){let t=new Uint16Array(br);for(let r=0;r<br;){let i=e();if(i.length%3)throw Error("SampleNTT: unaligned block");for(let n=0;r<br&&n+3<=i.length;n+=3){let o=(i[n+0]>>0|i[n+1]<<8)&4095,s=(i[n+1]>>4|i[n+2]<<4)&4095;if(o<Ni)t[r++]=o;if(r<br&&s<Ni)t[r++]=s}}return t}function Yu(e,t,r,i){let n=e(i*br/4,t,r),o=new Uint16Array(br),s=fm(n),a=0;for(let c=0,l=0,u=0,d=0;c<s.length;c++){let p=s[c];for(let m=0;m<32;m++)if(u+=p&1,p>>=1,a+=1,a===i)d=u,u=0;else if(a===2*i)o[l++]=Xu(d-u),u=0,a=0}if(a)throw Error(`sampleCBD: leftover bits: ${a}`);return o}var kG=(e)=>{let{K:t,PRF:r,XOF:i,HASH512:n,ETA1:o,ETA2:s,du:a,dv:c}=e,l=Qu(1),u=Qu(c),d=Qu(a),p=js("publicKey",Im(Qu(12),t),32),m=Im(Qu(12),t),y=js("ciphertext",Im(d,t),u),g=js("seed",32,32);return{secretCoder:m,lengths:{secretKey:m.bytesLen,publicKey:p.bytesLen,cipherText:y.bytesLen},keygen:(b)=>{Ne(b,32,"seed");let v=new Uint8Array(33);v.set(b),v[32]=t;let A=n(v),[T,z]=g.decode(A),j=[],E=[];for(let H=0;H<t;H++)j.push(qs.encode(Yu(r,z,H,o)));let Z=i(T);for(let H=0;H<t;H++){let X=qs.encode(Yu(r,z,t+H,o));for(let F=0;F<t;F++){let P=pz(Z.get(F,H));Us(X,Am(P,j[F]))}E.push(X)}Z.clean();let D={publicKey:p.encode([E,T]),secretKey:m.encode(j)};return Mt(T,z,j,E,v,A),D},encrypt:(b,v,A)=>{let[T,z]=p.decode(b),j=[];for(let F=0;F<t;F++)j.push(qs.encode(Yu(r,A,F,o)));let E=i(z),Z=new Uint16Array(br),D=[];for(let F=0;F<t;F++){let P=Yu(r,A,t+F,s),N=new Uint16Array(br);for(let I=0;I<t;I++){let R=pz(E.get(F,I));Us(N,Am(R,j[I]))}Us(P,qs.decode(N)),D.push(P),Us(Z,Am(T[F],j[F])),Mt(N)}E.clean();let H=Yu(r,A,2*t,s);Us(H,qs.decode(Z));let X=l.decode(v);return Us(X,H),Mt(T,j,Z,H),y.encode([D,X])},decrypt:(b,v)=>{let[A,T]=y.decode(b),z=m.decode(v),j=new Uint16Array(br);for(let E=0;E<t;E++)Us(j,Am(z[E],qs.encode(A[E])));return vG(T,qs.decode(j)),Mt(j,z,A),l.encode(T)}}};function zS(e){let t=kG(e),{HASH256:r,HASH512:i,KDF:n}=e,{secretCoder:o,lengths:s}=t,a=js("secretKey",s.secretKey,s.publicKey,32,32),c=32,l=64;return{info:{type:"ml-kem"},lengths:{...s,seed:64,msg:32,msgRand:32,secretKey:a.bytesLen},keygen:(u=ii(64))=>{Ne(u,64,"seed");let{publicKey:d,secretKey:p}=t.keygen(u.subarray(0,32)),m=r(d),y=a.encode([p,d,m,u.subarray(32)]);return Mt(p,m),{publicKey:d,secretKey:y}},getPublicKey:(u)=>{let[d,p,m,y]=a.decode(u);return Uint8Array.from(p)},encapsulate:(u,d=ii(32))=>{Ne(u,s.publicKey,"publicKey"),Ne(d,32,"message");let p=u.subarray(0,384*e.K),m=o.encode(o.decode(uz(p)));if(!Em(m,p))throw Mt(m),Error("ML-KEM.encapsulate: wrong publicKey modulus");Mt(m);let y=i.create().update(d).update(r(u)).digest(),g=t.encrypt(u,d,y.subarray(32,64));return Mt(y.subarray(32)),{cipherText:g,sharedSecret:y.subarray(0,32)}},decapsulate:(u,d)=>{Ne(d,a.bytesLen,"secretKey"),Ne(u,s.cipherText,"cipherText");let p=a.bytesLen-96,m=p+32,y=r(d.subarray(p/2,m));if(!Em(y,d.subarray(m,m+32)))throw Error("invalid secretKey: hash check failed");let[g,b,v,A]=a.decode(d),T=t.decrypt(u,g),z=i.create().update(T).update(v).digest(),j=z.subarray(0,32),E=t.encrypt(b,T,z.subarray(32,64)),Z=Em(u,E),D=n.create({dkLen:32}).update(A).update(u).digest();return Mt(T,E,!Z?j:D),Z?j:D}}}function EG(e,t,r){return ni.create({dkLen:e}).update(t).update(new Uint8Array([r])).digest()}var NS={HASH256:Bs,HASH512:iz,KDF:ni,XOF:fz,PRF:EG},F1e=zS({...NS,...PS[512]}),ed=zS({...NS,...PS[768]}),mz=zS({...NS,...PS[1024]});/*! noble-post-quantum - MIT License (c) 2024 Paul Miller (paulmillr.com) */function IG(e,t=!1){let{lengths:r,keygen:i}=e;if(t){let o=e.Point.Fn;if(!o)throw Error("No Point.Fn");i=(s=ii(r.seed))=>{Ne(s,r.seed,"seed");let a=o.isLE?vo(s):wo(s),c=o.toBytes(o.create(a));return{secretKey:c,publicKey:e.getPublicKey(c)}}}return{lengths:{secretKey:r.secretKey,publicKey:r.publicKey,seed:r.seed},keygen:i,getPublicKey:(n)=>e.getPublicKey(n)}}function DS(e,t=!1){let r=IG(e,t);if(!e.getSharedSecret)throw Error("wrong curve");return{lengths:{...r.lengths,msg:r.lengths.seed,cipherText:r.lengths.publicKey},keygen:r.keygen,getPublicKey:r.getPublicKey,encapsulate(i,n=ii(e.lengths.seed)){let o=this.keygen(n).secretKey,s=this.decapsulate(i,o),a=e.getPublicKey(o);return Mt(o),{sharedSecret:s,cipherText:a}},decapsulate(i,n){let o=e.getSharedSecret(n,i);return e.lengths.publicKeyHasPrefix?o.subarray(1):o}}}function td(e,t){return js(t,...e.map((r)=>{if(typeof r.lengths[t]!=="number")throw Error("wrong length: "+t);return r.lengths[t]}))}function LS(e){return(t,r)=>e(t,{dkLen:r})}function AG(e,t,...r){let i=td(r,"seed"),n=td(r,"publicKey");if(e===void 0)e=i.bytesLen;Vt(e);function o(s){Ne(s,e);let a=i.decode(t(s,i.bytesLen)),c=r.map((d,p)=>d.keygen(a[p])),l=c.map((d)=>d.secretKey),u=c.map((d)=>d.publicKey);return{secretKey:l,publicKey:u}}return{info:{lengths:{seed:e,publicKey:n.bytesLen,secretKey:e}},getPublicKey(s){return this.keygen(s).publicKey},keygen(s=ii(e)){let{publicKey:a,secretKey:c}=o(s),l=n.encode(a);return Mt(a),Mt(c),{secretKey:s,publicKey:l}},expandDecapsulationKey:o,realSeedLen:e}}function Tm(e,t,r,i,...n){let o=AG(e,r,...n),s=td(n,"cipherText"),a=td(n,"publicKey"),c=td(n,"msg");if(t===void 0)t=c.bytesLen;return Vt(t),{lengths:{...o.info.lengths,msg:t,msgRand:c.bytesLen,cipherText:s.bytesLen},getPublicKey:o.getPublicKey,keygen:o.keygen,encapsulate(l,u=ii(c.bytesLen)){let d=a.decode(l),p=c.decode(u),m=n.map((v,A)=>v.encapsulate(d[A],p[A])),y=m.map((v)=>v.sharedSecret),g=m.map((v)=>v.cipherText),b={sharedSecret:i(d,g,y),cipherText:s.encode(g)};return Mt(y,g),b},decapsulate(l,u){let d=s.decode(l),{publicKey:p,secretKey:m}=o.expandDecapsulationKey(u),y=n.map((g,b)=>g.decapsulate(d[b],m[b]));return i(p,d,y)}}}function hz(e,t,r,i,n){return bn(i),bn(n),Tm(32,32,LS(i),(o,s,a)=>n(Lt(a[0],a[1],s[1],o[1],_o(e))),t,r)}var X1e=hz("QSF-KEM(ML-KEM-768,P-256)-XOF(SHAKE256)-KDF(SHA3-256)",ed,DS(AS,!0),ni,Bs),eIe=hz("QSF-KEM(ML-KEM-1024,P-384)-XOF(SHAKE256)-KDF(SHA3-256)",mz,DS(KP,!0),ni,Bs);function TG(e,t,r,i,n){return bn(i),bn(n),Tm(32,32,LS(i),(o,s,a)=>{let c=Lt(a[0],a[1],s[0],o[0],s[1],o[1],_o(e)),l=32,u=Lt(_o("hybrid_prk"),c),d=WP(n,u),p=Lt(pc(32,2),_o("shared_secret"),_o("")),m=GP(n,d,p,32);return Mt(d,p,u,c),m},t,r)}var gz=DS(JP),tIe=TG("KitchenSink-KEM(ML-KEM-768,X25519)-XOF(SHAKE256)-KDF(HKDF-SHA-256)",ed,gz,ni,_m),$G=(()=>Tm(32,32,LS(ni),(e,t,r)=>Bs(Lt(r[0],r[1],t[1],e[1],_o("\\.//^\\"))),ed,gz))();function CG(e,t,r,i){let n=e.Point.Fn;if(!n)throw Error("no Point.Fn");function o(s){let a;for(let u=0,d=t;;u=d,d+=t){if(d>s.length)throw Error("rejection sampling failed");if(a=n.fromBytes(s.subarray(u,d),!0),n.isValidNot0(a))break}let c=n.toBytes(n.create(a)),l=e.getPublicKey(c,!1);return{secretKey:c,publicKey:l}}return{lengths:{secretKey:t,publicKey:r,seed:i,msg:i,cipherText:r},keygen(s=ii(i)){return Ne(s,i,"seed"),o(s)},getPublicKey(s){return e.getPublicKey(s,!1)},encapsulate(s,a=ii(i)){Ne(a,i,"rand");let{secretKey:c}=o(a),l=this.decapsulate(s,c),u=e.getPublicKey(c,!1);return Mt(c),{sharedSecret:l,cipherText:u}},decapsulate(s,a){return e.getSharedSecret(a,s).subarray(1)}}}function OG(e,t,r,i){let{secretKey:n,publicKeyUncompressed:o}=r.lengths;if(!n||!o)throw Error("wrong curve");let s=CG(r,n,o,i),a=64,c=a+i;return Tm(32,32,(l)=>{Ne(l,32);let u=ni(l,{dkLen:c}),d=u.subarray(0,a),p=u.subarray(a,c);return Lt(d,p)},(l,u,d)=>Bs(Lt(d[0],d[1],u[1],l[1],_o(e))),t,s)}var RG=(()=>OG("MLKEM768-P256",ed,AS,128))();var $m=$G,yz=RG;/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */var lt=(e,t,r)=>rr(e,t,r),jS=Ct,bc=Xp,sr=(...e)=>Fx(...e),xc=(e)=>Ru(e),Sc=jx,wc=(e)=>Ti(e),Om=BigInt(0),BS=BigInt(1);function Di(e,t=""){if(typeof e!=="boolean"){let r=t&&`"${t}" `;throw TypeError(r+"expected boolean, got type="+typeof e)}return e}function Rm(e){if(typeof e==="bigint"){if(!Cm(e))throw RangeError("positive bigint expected, got "+e)}else jS(e);return e}function oi(e,t=""){if(typeof e!=="number"){let r=t&&`"${t}" `;throw TypeError(r+"expected number, got type="+typeof e)}if(!Number.isSafeInteger(e)){let r=t&&`"${t}" `;throw RangeError(r+"expected safe integer, got "+e)}}function rd(e){let t=Rm(e).toString(16);return t.length&1?"0"+t:t}function bz(e){if(typeof e!=="string")throw TypeError("hex string expected, got "+typeof e);return e===""?Om:BigInt("0x"+e)}function Fs(e){return bz(Xp(e))}function Dn(e){return bz(Xp(To(rr(e)).reverse()))}function Pm(e,t){if(Ct(t),t===0)throw RangeError("zero length");e=Rm(e);let r=e.toString(16);if(r.length>t*2)throw RangeError("number too large");return Ru(r.padStart(t*2,"0"))}function nd(e,t){return Pm(e,t).reverse()}function xz(e,t){if(e=lt(e),t=lt(t),e.length!==t.length)return!1;let r=0;for(let i=0;i<e.length;i++)r|=e[i]^t[i];return r===0}function To(e){return Uint8Array.from(lt(e))}function zm(e){if(typeof e!=="string")throw TypeError("ascii string expected, got "+typeof e);return Uint8Array.from(e,(t,r)=>{let i=t.charCodeAt(0);if(t.length!==1||i>127)throw RangeError(`string contains non-ASCII character "${e[r]}" with code ${i} at position ${r}`);return i})}var Cm=(e)=>typeof e==="bigint"&&Om<=e;function PG(e,t,r){return Cm(e)&&Cm(t)&&Cm(r)&&t<=e&&e<r}function Li(e,t,r,i){if(!PG(t,r,i))throw RangeError("expected valid "+e+": "+r+" <= n < "+i+", got "+t)}function vc(e){if(e<Om)throw Error("expected non-negative bigint, got "+e);let t;for(t=0;e>Om;e>>=BS,t+=1);return t}var id=(e)=>(BS<<BigInt(e))-BS;function Sz(e,t,r){if(Ct(e,"hashLen"),Ct(t,"qByteLen"),typeof r!=="function")throw TypeError("hmacFn must be a function");let i=(b)=>new Uint8Array(b),n=Uint8Array.of(),o=Uint8Array.of(0),s=Uint8Array.of(1),a=1000,c=i(e),l=i(e),u=0,d=()=>{c.fill(1),l.fill(0),u=0},p=(...b)=>r(l,sr(c,...b)),m=(b=n)=>{if(l=p(o,b),c=p(),b.length===0)return;l=p(s,b),c=p()},y=()=>{if(u++>=a)throw Error("drbg: tried max amount of iterations");let b=0,v=[];while(b<t){c=p();let A=c.slice();v.push(A),b+=c.length}return sr(...v)};return(b,v)=>{d(),m(b);let A=void 0;while((A=v(y()))===void 0)m();return d(),A}}function Sn(e,t={},r={}){if(Object.prototype.toString.call(e)!=="[object Object]")throw TypeError("expected valid options object");function i(o,s,a){if(!a&&s!=="function"&&!Object.hasOwn(e,o))throw TypeError(`param "${o}" is invalid: expected own property`);let c=e[o];if(a&&c===void 0)return;let l=typeof c;if(l!==s||c===null)throw TypeError(`param "${o}" is invalid: expected ${s}, got ${l}`)}let n=(o,s)=>Object.entries(o).forEach(([a,c])=>i(a,c,s));n(t,!1),n(r,!0)}var qS=()=>{throw Error("not implemented")};/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */var ar=BigInt(0),Et=BigInt(1),Ms=BigInt(2),kz=BigInt(3),Ez=BigInt(4),Iz=BigInt(5),zG=BigInt(7),Az=BigInt(8),NG=BigInt(9),Tz=BigInt(16);function gt(e,t){if(t<=ar)throw Error("mod: expected positive modulus, got "+t);let r=e%t;return r>=ar?r:t+r}function wn(e,t,r){if(t<ar)throw Error("pow2: expected non-negative exponent, got "+t);let i=e;while(t-- >ar)i*=i,i%=r;return i}function wz(e,t){if(e===ar)throw Error("invert: expected non-zero number");if(t<=ar)throw Error("invert: expected positive modulus, got "+t);let r=gt(e,t),i=t,n=ar,o=Et,s=Et,a=ar;while(r!==ar){let l=i/r,u=i-r*l,d=n-s*l,p=o-a*l;i=r,r=u,n=s,o=a,s=d,a=p}if(i!==Et)throw Error("invert: does not exist");return gt(n,t)}function US(e,t,r){let i=e;if(!i.eql(i.sqr(t),r))throw Error("Cannot find square root")}function $z(e,t){let r=e,i=(r.ORDER+Et)/Ez,n=r.pow(t,i);return US(r,n,t),n}function DG(e,t){let r=e,i=(r.ORDER-Iz)/Az,n=r.mul(t,Ms),o=r.pow(n,i),s=r.mul(t,o),a=r.mul(r.mul(s,Ms),o),c=r.mul(s,r.sub(a,r.ONE));return US(r,c,t),c}function LG(e){let t=Nm(e),r=Cz(e),i=r(t,t.neg(t.ONE)),n=r(t,i),o=r(t,t.neg(i)),s=(e+zG)/Tz;return(a,c)=>{let l=a,u=l.pow(c,s),d=l.mul(u,i),p=l.mul(u,n),m=l.mul(u,o),y=l.eql(l.sqr(d),c),g=l.eql(l.sqr(p),c);u=l.cmov(u,d,y),d=l.cmov(m,p,g);let b=l.eql(l.sqr(d),c),v=l.cmov(u,d,b);return US(l,v,c),v}}function Cz(e){if(e<kz)throw Error("sqrt is not defined for small field");let t=e-Et,r=0;while(t%Ms===ar)t/=Ms,r++;let i=Ms,n=Nm(e);while(vz(n,i)===1)if(i++>1000)throw Error("Cannot find square root: probably non-prime P");if(r===1)return $z;let o=n.pow(i,t),s=(t+Et)/Ms;return function(c,l){let u=c;if(u.is0(l))return l;if(vz(u,l)!==1)throw Error("Cannot find square root");let d=r,p=u.mul(u.ONE,o),m=u.pow(l,t),y=u.pow(l,s);while(!u.eql(m,u.ONE)){if(u.is0(m))return u.ZERO;let g=1,b=u.sqr(m);while(!u.eql(b,u.ONE))if(g++,b=u.sqr(b),g===d)throw Error("Cannot find square root");let v=Et<<BigInt(d-g-1),A=u.pow(p,v);d=g,p=u.sqr(A),m=u.mul(m,p),y=u.mul(y,A)}return y}}function BG(e){if(e%Ez===kz)return $z;if(e%Az===Iz)return DG;if(e%Tz===NG)return LG(e);return Cz(e)}var Bi=(e,t)=>(gt(e,t)&Et)===Et,jG=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function FS(e){let t={ORDER:"bigint",BYTES:"number",BITS:"number"},r=jG.reduce((i,n)=>(i[n]="function",i),t);if(Sn(e,r),oi(e.BYTES,"BYTES"),oi(e.BITS,"BITS"),e.BYTES<1||e.BITS<1)throw Error("invalid field: expected BYTES/BITS > 0");if(e.ORDER<=Et)throw Error("invalid field: expected ORDER > 1, got "+e.ORDER);return e}function qG(e,t,r){let i=e;if(r<ar)throw Error("invalid exponent, negatives unsupported");if(r===ar)return i.ONE;if(r===Et)return t;let n=i.ONE,o=t;while(r>ar){if(r&Et)n=i.mul(n,o);o=i.sqr(o),r>>=Et}return n}function od(e,t,r=!1){let i=e,n=Array(t.length).fill(r?i.ZERO:void 0),o=t.reduce((a,c,l)=>{if(i.is0(c))return a;return n[l]=a,i.mul(a,c)},i.ONE),s=i.inv(o);return t.reduceRight((a,c,l)=>{if(i.is0(c))return a;return n[l]=i.mul(a,n[l]),i.mul(a,c)},s),n}function vz(e,t){let r=e,i=(r.ORDER-Et)/Ms,n=r.pow(t,i),o=r.eql(n,r.ONE),s=r.eql(n,r.ZERO),a=r.eql(n,r.neg(r.ONE));if(!o&&!s&&!a)throw Error("invalid Legendre symbol result");return o?1:s?0:-1}function UG(e,t){if(t!==void 0)jS(t);if(e<=ar)throw Error("invalid n length: expected positive n, got "+e);if(t!==void 0&&t<1)throw Error("invalid n length: expected positive bit length, got "+t);let r=vc(e);if(t!==void 0&&t<r)throw Error(`invalid n length: expected bit length (${r}) >= n.length (${t})`);let i=t!==void 0?t:r,n=Math.ceil(i/8);return{nBitLength:i,nByteLength:n}}var _z=new WeakMap;class MS{ORDER;BITS;BYTES;isLE;ZERO=ar;ONE=Et;_lengths;_mod;constructor(e,t={}){if(e<=Et)throw Error("invalid field: expected ORDER > 1, got "+e);let r=void 0;if(this.isLE=!1,t!=null&&typeof t==="object"){if(typeof t.BITS==="number")r=t.BITS;if(typeof t.sqrt==="function")Object.defineProperty(this,"sqrt",{value:t.sqrt,enumerable:!0});if(typeof t.isLE==="boolean")this.isLE=t.isLE;if(t.allowedLengths)this._lengths=Object.freeze(t.allowedLengths.slice());if(typeof t.modFromBytes==="boolean")this._mod=t.modFromBytes}let{nBitLength:i,nByteLength:n}=UG(e,r);if(n>2048)throw Error("invalid field: expected ORDER of <= 2048 bytes");this.ORDER=e,this.BITS=i,this.BYTES=n,Object.freeze(this)}create(e){return gt(e,this.ORDER)}isValid(e){if(typeof e!=="bigint")throw TypeError("invalid field element: expected bigint, got "+typeof e);return ar<=e&&e<this.ORDER}is0(e){return e===ar}isValidNot0(e){return!this.is0(e)&&this.isValid(e)}isOdd(e){return(e&Et)===Et}neg(e){return gt(-e,this.ORDER)}eql(e,t){return e===t}sqr(e){return gt(e*e,this.ORDER)}add(e,t){return gt(e+t,this.ORDER)}sub(e,t){return gt(e-t,this.ORDER)}mul(e,t){return gt(e*t,this.ORDER)}pow(e,t){return qG(this,e,t)}div(e,t){return gt(e*wz(t,this.ORDER),this.ORDER)}sqrN(e){return e*e}addN(e,t){return e+t}subN(e,t){return e-t}mulN(e,t){return e*t}inv(e){return wz(e,this.ORDER)}sqrt(e){let t=_z.get(this);if(!t)_z.set(this,t=BG(this.ORDER));return t(this,e)}toBytes(e){return this.isLE?nd(e,this.BYTES):Pm(e,this.BYTES)}fromBytes(e,t=!1){lt(e);let{_lengths:r,BYTES:i,isLE:n,ORDER:o,_mod:s}=this;if(r){if(e.length<1||!r.includes(e.length)||e.length>i)throw Error("Field.fromBytes: expected "+r+" bytes, got "+e.length);let c=new Uint8Array(i);c.set(e,n?0:c.length-e.length),e=c}if(e.length!==i)throw Error("Field.fromBytes: expected "+i+" bytes, got "+e.length);let a=n?Dn(e):Fs(e);if(s)a=gt(a,o);if(!t){if(!this.isValid(a))throw Error("invalid field element: outside of range 0..ORDER")}return a}invertBatch(e){return od(this,e)}cmov(e,t,r){return Di(r,"condition"),r?t:e}}Object.freeze(MS.prototype);function Nm(e,t={}){return new MS(e,t)}function Oz(e){if(typeof e!=="bigint")throw Error("field order must be bigint");if(e<=Et)throw Error("field order must be greater than 1");let t=vc(e-Et);return Math.ceil(t/8)}function ZS(e){let t=Oz(e);return t+Math.ceil(t/2)}function Rz(e,t,r=!1){lt(e);let i=e.length,n=Oz(t),o=Math.max(ZS(t),16);if(i<o||i>1024)throw Error("expected "+o+"-1024 bytes of input, got "+i);let s=r?Dn(e):Fs(e),a=gt(s,t-Et)+Et;return r?nd(a,n):Pm(a,n)}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */var _c=BigInt(0),Zs=BigInt(1);function sd(e,t){let r=t.negate();return e?r:t}function Hs(e,t){let r=od(e.Fp,t.map((i)=>i.Z));return t.map((i,n)=>e.fromAffine(i.toAffine(r[n])))}function Dz(e,t){if(!Number.isSafeInteger(e)||e<=0||e>t)throw Error("invalid window size, expected [1.."+t+"], got W="+e)}function HS(e,t){Dz(e,t);let r=Math.ceil(t/e)+1,i=2**(e-1),n=2**e,o=id(e),s=BigInt(e);return{windows:r,windowSize:i,mask:o,maxNumber:n,shiftBy:s}}function Pz(e,t,r){let{windowSize:i,mask:n,maxNumber:o,shiftBy:s}=r,a=Number(e&n),c=e>>s;if(a>i)a-=o,c+=Zs;let l=t*i,u=l+Math.abs(a)-1,d=a===0,p=a<0,m=t%2!==0;return{nextN:c,offset:u,isZero:d,isNeg:p,isNegF:m,offsetF:l}}var JS=new WeakMap,Lz=new WeakMap;function KS(e){return Lz.get(e)||1}function zz(e){if(e!==_c)throw Error("invalid wNAF")}class ad{BASE;ZERO;Fn;bits;constructor(e,t){this.BASE=e.BASE,this.ZERO=e.ZERO,this.Fn=e.Fn,this.bits=t}_unsafeLadder(e,t,r=this.ZERO){let i=e;while(t>_c){if(t&Zs)r=r.add(i);i=i.double(),t>>=Zs}return r}precomputeWindow(e,t){let{windows:r,windowSize:i}=HS(t,this.bits),n=[],o=e,s=o;for(let a=0;a<r;a++){s=o,n.push(s);for(let c=1;c<i;c++)s=s.add(o),n.push(s);o=s.double()}return n}wNAF(e,t,r){if(!this.Fn.isValid(r))throw Error("invalid scalar");let i=this.ZERO,n=this.BASE,o=HS(e,this.bits);for(let s=0;s<o.windows;s++){let{nextN:a,offset:c,isZero:l,isNeg:u,isNegF:d,offsetF:p}=Pz(r,s,o);if(r=a,l)n=n.add(sd(d,t[p]));else i=i.add(sd(u,t[c]))}return zz(r),{p:i,f:n}}wNAFUnsafe(e,t,r,i=this.ZERO){let n=HS(e,this.bits);for(let o=0;o<n.windows;o++){if(r===_c)break;let{nextN:s,offset:a,isZero:c,isNeg:l}=Pz(r,o,n);if(r=s,c)continue;else{let u=t[a];i=i.add(l?u.negate():u)}}return zz(r),i}getPrecomputes(e,t,r){let i=JS.get(t);if(!i){if(i=this.precomputeWindow(t,e),e!==1){if(typeof r==="function")i=r(i);JS.set(t,i)}}return i}cached(e,t,r){let i=KS(e);return this.wNAF(i,this.getPrecomputes(i,e,r),t)}unsafe(e,t,r,i){let n=KS(e);if(n===1)return this._unsafeLadder(e,t,i);return this.wNAFUnsafe(n,this.getPrecomputes(n,e,r),t,i)}createCache(e,t){Dz(t,this.bits),Lz.set(e,t),JS.delete(e)}hasCache(e){return KS(e)!==1}}function Bz(e,t,r,i){let n=t,o=e.ZERO,s=e.ZERO;while(r>_c||i>_c){if(r&Zs)o=o.add(n);if(i&Zs)s=s.add(n);n=n.double(),r>>=Zs,i>>=Zs}return{p1:o,p2:s}}function Nz(e,t,r){if(t){if(t.ORDER!==e)throw Error("Field.ORDER must match order: Fp == p, Fn == n");return FS(t),t}else return Nm(e,{isLE:r})}function Dm(e,t,r={},i){if(i===void 0)i=e==="edwards";if(!t||typeof t!=="object")throw Error(`expected valid ${e} CURVE object`);for(let c of["p","n","h"]){let l=t[c];if(!(typeof l==="bigint"&&l>_c))throw Error(`CURVE.${c} must be positive bigint`)}let n=Nz(t.p,r.Fp,i),o=Nz(t.n,r.Fn,i),a=["Gx","Gy","a",e==="weierstrass"?"b":"d"];for(let c of a)if(!n.isValid(t[c]))throw Error(`CURVE.${c} must be valid field element of CURVE.Fp`);return t=Object.freeze(Object.assign({},t)),{CURVE:t,Fp:n,Fn:o}}function cd(e,t){return function(i){let n=e(i);return{secretKey:n,publicKey:t(n)}}}function ld(e,t){if(oi(e),oi(t),t<0||t>4)throw Error("invalid I2OSP length: "+t);if(e<0||e>2**(8*t)-1)throw Error("invalid I2OSP input: "+e);let r=Array.from({length:t}).fill(0);for(let i=t-1;i>=0;i--)r[i]=e&255,e>>>=8;return new Uint8Array(r)}function FG(e,t){let r=new Uint8Array(e.length);for(let i=0;i<e.length;i++)r[i]=e[i]^t[i];return r}function MG(e){if(!Sc(e)&&typeof e!=="string")throw Error("DST must be Uint8Array or ascii string");let t=typeof e==="string"?zm(e):e;if(t.length===0)throw Error("DST must be non-empty");return t}function VS(e,t,r,i){if(lt(e),oi(r),t=MG(t),t.length>255)t=i(sr(zm("H2C-OVERSIZE-DST-"),t));let{outputLen:n,blockLen:o}=i,s=Math.ceil(r/n);if(r>65535||s>255)throw Error("expand_message_xmd: invalid lenInBytes");let a=sr(t,ld(t.length,1)),c=new Uint8Array(o),l=ld(r,2),u=Array(s),d=i(sr(c,e,l,ld(0,1),a));u[0]=i(sr(d,ld(1,1),a));for(let m=1;m<s;m++){let y=[FG(d,u[m-1]),ld(m+1,1),a];u[m]=i(sr(...y))}return sr(...u).slice(0,r)}var jz="HashToScalar-";/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */var qz=(e,t)=>(e+(e>=0?t:-t)/Fz)/t;function ZG(e,t,r){Li("scalar",e,si,r);let[[i,n],[o,s]]=t,a=qz(s*e,r),c=qz(-n*e,r),l=e-a*i-c*o,u=-a*n-c*s,d=l<si,p=u<si;if(d)l=-l;if(p)u=-u;let m=id(Math.ceil(vc(r)/2))+$o;if(l<si||l>=m||u<si||u>=m)throw Error("splitScalar (endomorphism): failed for k");return{k1neg:d,k1:l,k2neg:p,k2:u}}function GS(e){if(!["compact","recovered","der"].includes(e))throw Error('Signature format must be "compact", "recovered", or "der"');return e}function WS(e,t){Sn(e);let r={};for(let i of Object.keys(t))r[i]=e[i]===void 0?t[i]:e[i];if(Di(r.lowS,"lowS"),Di(r.prehash,"prehash"),r.format!==void 0)GS(r.format);return r}class Uz extends Error{constructor(e=""){super(e)}}var Ln={Err:Uz,_tlv:{encode:(e,t)=>{let{Err:r}=Ln;if(oi(e,"tag"),e<0||e>255)throw new r("tlv.encode: wrong tag");if(typeof t!=="string")throw TypeError('"data" expected string, got type='+typeof t);if(t.length&1)throw new r("tlv.encode: unpadded data");let i=t.length/2,n=rd(i);if(n.length/2&128)throw new r("tlv.encode: long form length too big");let o=i>127?rd(n.length/2|128):"";return rd(e)+o+n+t},decode(e,t){let{Err:r}=Ln;t=lt(t,void 0,"DER data");let i=0;if(e<0||e>255)throw new r("tlv.encode: wrong tag");if(t.length<2||t[i++]!==e)throw new r("tlv.decode: wrong tlv");let n=t[i++],o=!!(n&128),s=0;if(!o)s=n;else{let c=n&127;if(!c)throw new r("tlv.decode(long): indefinite length not supported");if(c>4)throw new r("tlv.decode(long): byte length is too big");let l=t.subarray(i,i+c);if(l.length!==c)throw new r("tlv.decode: length bytes not complete");if(l[0]===0)throw new r("tlv.decode(long): zero leftmost byte");for(let u of l)s=s<<8|u;if(i+=c,s<128)throw new r("tlv.decode(long): not minimal encoding")}let a=t.subarray(i,i+s);if(a.length!==s)throw new r("tlv.decode: wrong value length");return{v:a,l:t.subarray(i+s)}}},_int:{encode(e){let{Err:t}=Ln;if(Rm(e),e<si)throw new t("integer: negative integers are not allowed");let r=rd(e);if(Number.parseInt(r[0],16)&8)r="00"+r;if(r.length&1)throw new t("unexpected DER parsing assertion: unpadded hex");return r},decode(e){let{Err:t}=Ln;if(e.length<1)throw new t("invalid signature integer: empty");if(e[0]&128)throw new t("invalid signature integer: negative");if(e.length>1&&e[0]===0&&!(e[1]&128))throw new t("invalid signature integer: unnecessary leading zero");return Fs(e)}},toSig(e){let{Err:t,_int:r,_tlv:i}=Ln,n=lt(e,void 0,"signature"),{v:o,l:s}=i.decode(48,n);if(s.length)throw new t("invalid signature: left bytes after parsing");let{v:a,l:c}=i.decode(2,o),{v:l,l:u}=i.decode(2,c);if(u.length)throw new t("invalid signature: left bytes after parsing");return{r:r.decode(a),s:r.decode(l)}},hexFromSig(e){let{_tlv:t,_int:r}=Ln,i=t.encode(2,r.encode(e.r)),n=t.encode(2,r.encode(e.s)),o=i+n;return t.encode(48,o)}};Object.freeze(Ln._tlv);Object.freeze(Ln._int);Object.freeze(Ln);var si=BigInt(0),$o=BigInt(1),Fz=BigInt(2),Lm=BigInt(3),HG=BigInt(4);function Mz(e,t={}){let r=Dm("weierstrass",e,t),i=r.Fp,n=r.Fn,o=r.CURVE,{h:s,n:a}=o;Sn(t,{},{allowInfinityPoint:"boolean",clearCofactor:"function",isTorsionFree:"function",fromBytes:"function",toBytes:"function",endo:"object"});let{endo:c,allowInfinityPoint:l}=t;if(c){if(!i.is0(o.a)||typeof c.beta!=="bigint"||!Array.isArray(c.basises))throw Error('invalid endo: expected "beta": bigint and "basises": array')}let u=Hz(i,n);function d(){if(!i.isOdd)throw Error("compression is not supported: Field does not have .isOdd()")}function p(F,P,N){if(l&&P.is0())return Uint8Array.of(0);let{x:I,y:R}=P.toAffine(),O=i.toBytes(I);if(Di(N,"isCompressed"),N){d();let M=!i.isOdd(R);return sr(Zz(M),O)}else return sr(Uint8Array.of(4),O,i.toBytes(R))}function m(F){lt(F,void 0,"Point");let{publicKey:P,publicKeyUncompressed:N}=u,I=F.length,R=F[0],O=F.subarray(1);if(l&&I===1&&R===0)return{x:i.ZERO,y:i.ZERO};if(I===P&&(R===2||R===3)){let M=i.fromBytes(O);if(!i.isValid(M))throw Error("bad point: is not on curve, wrong x");let L=b(M),V;try{V=i.sqrt(L)}catch(ue){let C=ue instanceof Error?": "+ue.message:"";throw Error("bad point: is not on curve, sqrt error"+C)}d();let _=i.isOdd(V);if((R&1)===1!==_)V=i.neg(V);return{x:M,y:V}}else if(I===N&&R===4){let M=i.BYTES,L=i.fromBytes(O.subarray(0,M)),V=i.fromBytes(O.subarray(M,M*2));if(!v(L,V))throw Error("bad point: is not on curve");return{x:L,y:V}}else throw Error(`bad point: got length ${I}, expected compressed=${P} or uncompressed=${N}`)}let y=t.toBytes===void 0?p:t.toBytes,g=t.fromBytes===void 0?m:t.fromBytes;function b(F){let P=i.sqr(F),N=i.mul(P,F);return i.add(i.add(N,i.mul(F,o.a)),o.b)}function v(F,P){let N=i.sqr(P),I=b(F);return i.eql(N,I)}if(!v(o.Gx,o.Gy))throw Error("bad curve params: generator point");let A=i.mul(i.pow(o.a,Lm),HG),T=i.mul(i.sqr(o.b),BigInt(27));if(i.is0(i.add(A,T)))throw Error("bad curve params: a or b");function z(F,P,N=!1){if(!i.isValid(P)||N&&i.is0(P))throw Error(`bad point coordinate ${F}`);return P}function j(F){if(!(F instanceof D))throw Error("Weierstrass Point expected")}function E(F){if(!c||!c.basises)throw Error("no endo");return ZG(F,c.basises,n.ORDER)}function Z(F,P,N,I,R){return N=new D(i.mul(N.X,F),N.Y,N.Z),P=sd(I,P),N=sd(R,N),P.add(N)}class D{static BASE=new D(o.Gx,o.Gy,i.ONE);static ZERO=new D(i.ZERO,i.ONE,i.ZERO);static Fp=i;static Fn=n;X;Y;Z;constructor(F,P,N){this.X=z("x",F),this.Y=z("y",P,!0),this.Z=z("z",N),Object.freeze(this)}static CURVE(){return o}static fromAffine(F){let{x:P,y:N}=F||{};if(!F||!i.isValid(P)||!i.isValid(N))throw Error("invalid affine point");if(F instanceof D)throw Error("projective point not allowed");if(i.is0(P)&&i.is0(N))return D.ZERO;return new D(P,N,i.ONE)}static fromBytes(F){let P=D.fromAffine(g(lt(F,void 0,"point")));return P.assertValidity(),P}static fromHex(F){return D.fromBytes(xc(F))}get x(){return this.toAffine().x}get y(){return this.toAffine().y}precompute(F=8,P=!0){if(X.createCache(this,F),!P)this.multiply(Lm);return this}assertValidity(){let F=this;if(F.is0()){if(t.allowInfinityPoint&&i.is0(F.X)&&i.eql(F.Y,i.ONE)&&i.is0(F.Z))return;throw Error("bad point: ZERO")}let{x:P,y:N}=F.toAffine();if(!i.isValid(P)||!i.isValid(N))throw Error("bad point: x or y not field elements");if(!v(P,N))throw Error("bad point: equation left != right");if(!F.isTorsionFree())throw Error("bad point: not in prime-order subgroup")}hasEvenY(){let{y:F}=this.toAffine();if(!i.isOdd)throw Error("Field doesn't support isOdd");return!i.isOdd(F)}equals(F){j(F);let{X:P,Y:N,Z:I}=this,{X:R,Y:O,Z:M}=F,L=i.eql(i.mul(P,M),i.mul(R,I)),V=i.eql(i.mul(N,M),i.mul(O,I));return L&&V}negate(){return new D(this.X,i.neg(this.Y),this.Z)}double(){let{a:F,b:P}=o,N=i.mul(P,Lm),{X:I,Y:R,Z:O}=this,M=i.ZERO,L=i.ZERO,V=i.ZERO,_=i.mul(I,I),te=i.mul(R,R),ue=i.mul(O,O),C=i.mul(I,R);return C=i.add(C,C),V=i.mul(I,O),V=i.add(V,V),M=i.mul(F,V),L=i.mul(N,ue),L=i.add(M,L),M=i.sub(te,L),L=i.add(te,L),L=i.mul(M,L),M=i.mul(C,M),V=i.mul(N,V),ue=i.mul(F,ue),C=i.sub(_,ue),C=i.mul(F,C),C=i.add(C,V),V=i.add(_,_),_=i.add(V,_),_=i.add(_,ue),_=i.mul(_,C),L=i.add(L,_),ue=i.mul(R,O),ue=i.add(ue,ue),_=i.mul(ue,C),M=i.sub(M,_),V=i.mul(ue,te),V=i.add(V,V),V=i.add(V,V),new D(M,L,V)}add(F){j(F);let{X:P,Y:N,Z:I}=this,{X:R,Y:O,Z:M}=F,L=i.ZERO,V=i.ZERO,_=i.ZERO,te=o.a,ue=i.mul(o.b,Lm),C=i.mul(P,R),Se=i.mul(N,O),Ee=i.mul(I,M),Ce=i.add(P,N),$e=i.add(R,O);Ce=i.mul(Ce,$e),$e=i.add(C,Se),Ce=i.sub(Ce,$e),$e=i.add(P,I);let _e=i.add(R,M);return $e=i.mul($e,_e),_e=i.add(C,Ee),$e=i.sub($e,_e),_e=i.add(N,I),L=i.add(O,M),_e=i.mul(_e,L),L=i.add(Se,Ee),_e=i.sub(_e,L),_=i.mul(te,$e),L=i.mul(ue,Ee),_=i.add(L,_),L=i.sub(Se,_),_=i.add(Se,_),V=i.mul(L,_),Se=i.add(C,C),Se=i.add(Se,C),Ee=i.mul(te,Ee),$e=i.mul(ue,$e),Se=i.add(Se,Ee),Ee=i.sub(C,Ee),Ee=i.mul(te,Ee),$e=i.add($e,Ee),C=i.mul(Se,$e),V=i.add(V,C),C=i.mul(_e,$e),L=i.mul(Ce,L),L=i.sub(L,C),C=i.mul(Ce,Se),_=i.mul(_e,_),_=i.add(_,C),new D(L,V,_)}subtract(F){return j(F),this.add(F.negate())}is0(){return this.equals(D.ZERO)}multiply(F){let{endo:P}=t;if(!n.isValidNot0(F))throw RangeError("invalid scalar: out of range");let N,I,R=(O)=>X.cached(this,O,(M)=>Hs(D,M));if(P){let{k1neg:O,k1:M,k2neg:L,k2:V}=E(F),{p:_,f:te}=R(M),{p:ue,f:C}=R(V);I=te.add(C),N=Z(P.beta,_,ue,O,L)}else{let{p:O,f:M}=R(F);N=O,I=M}return Hs(D,[N,I])[0]}multiplyUnsafe(F){let{endo:P}=t,N=this,I=F;if(!n.isValid(I))throw RangeError("invalid scalar: out of range");if(I===si||N.is0())return D.ZERO;if(I===$o)return N;if(X.hasCache(this))return this.multiply(I);if(P){let{k1neg:R,k1:O,k2neg:M,k2:L}=E(I),{p1:V,p2:_}=Bz(D,N,O,L);return Z(P.beta,V,_,R,M)}else return X.unsafe(N,I)}toAffine(F){let P=this,N=F,{X:I,Y:R,Z:O}=P;if(i.eql(O,i.ONE))return{x:I,y:R};let M=P.is0();if(N==null)N=M?i.ONE:i.inv(O);let L=i.mul(I,N),V=i.mul(R,N),_=i.mul(O,N);if(M)return{x:i.ZERO,y:i.ZERO};if(!i.eql(_,i.ONE))throw Error("invZ was invalid");return{x:L,y:V}}isTorsionFree(){let{isTorsionFree:F}=t;if(s===$o)return!0;if(F)return F(D,this);return X.unsafe(this,a).is0()}clearCofactor(){let{clearCofactor:F}=t;if(s===$o)return this;if(F)return F(D,this);return this.multiplyUnsafe(s)}isSmallOrder(){if(s===$o)return this.is0();return this.clearCofactor().is0()}toBytes(F=!0){return Di(F,"isCompressed"),this.assertValidity(),y(D,this,F)}toHex(F=!0){return bc(this.toBytes(F))}toString(){return`<Point ${this.is0()?"ZERO":this.toHex()}>`}}let H=n.BITS,X=new ad(D,t.endo?Math.ceil(H/2):H);if(H>=8)D.BASE.precompute(8);return Object.freeze(D.prototype),Object.freeze(D),D}function Zz(e){return Uint8Array.of(e?2:3)}function Hz(e,t){return{secretKey:t.BYTES,publicKey:1+e.BYTES,publicKeyUncompressed:1+2*e.BYTES,publicKeyHasPrefix:!0,signature:2*t.BYTES}}function JG(e,t={}){let{Fn:r}=e,i=t.randomBytes===void 0?wc:t.randomBytes,n=Object.assign(Hz(e.Fp,r),{seed:Math.max(ZS(r.ORDER),16)});function o(m){try{let y=r.fromBytes(m);return r.isValidNot0(y)}catch(y){return!1}}function s(m,y){let{publicKey:g,publicKeyUncompressed:b}=n;try{let v=m.length;if(y===!0&&v!==g)return!1;if(y===!1&&v!==b)return!1;return!!e.fromBytes(m)}catch(v){return!1}}function a(m){return m=m===void 0?i(n.seed):m,Rz(lt(m,n.seed,"seed"),r.ORDER)}function c(m,y=!0){return e.BASE.multiply(r.fromBytes(m)).toBytes(y)}function l(m){let{secretKey:y,publicKey:g,publicKeyUncompressed:b}=n,v=r._lengths;if(!Sc(m))return;let A=lt(m,void 0,"key").length,T=A===g||A===b,z=A===y||!!v?.includes(A);if(T&&z)return;return T}function u(m,y,g=!0){if(l(m)===!0)throw Error("first arg must be private key");if(l(y)===!1)throw Error("second arg must be public key");let b=r.fromBytes(m);return e.fromBytes(y).multiply(b).toBytes(g)}let d={isValidSecretKey:o,isValidPublicKey:s,randomSecretKey:a},p=cd(a,c);return Object.freeze(d),Object.freeze(n),Object.freeze({getPublicKey:c,getSharedSecret:u,keygen:p,Point:e,utils:d,lengths:n})}function Jz(e,t,r={}){let i=t;Ai(i),Sn(r,{},{hmac:"function",lowS:"boolean",randomBytes:"function",bits2int:"function",bits2int_modN:"function"}),r=Object.assign({},r);let n=r.randomBytes===void 0?wc:r.randomBytes,o=r.hmac===void 0?(R,O)=>Xn(i,R,O):r.hmac,{Fp:s,Fn:a}=e,{ORDER:c,BITS:l}=a,{keygen:u,getPublicKey:d,getSharedSecret:p,utils:m,lengths:y}=JG(e,r),g={prehash:!0,lowS:typeof r.lowS==="boolean"?r.lowS:!0,format:"compact",extraEntropy:!1},b=c*Fz+$o<s.ORDER;function v(R){let O=c>>$o;return R>O}function A(R,O){if(!a.isValidNot0(O))throw Error(`invalid signature ${R}: out of range 1..Point.Fn.ORDER`);return O}function T(){if(b)throw Error('"recovered" sig type is not supported for cofactor >2 curves')}function z(R,O){GS(O);let M=y.signature,L=O==="compact"?M:O==="recovered"?M+1:void 0;return lt(R,L)}class j{r;s;recovery;constructor(R,O,M){if(this.r=A("r",R),this.s=A("s",O),M!=null){if(T(),![0,1,2,3].includes(M))throw Error("invalid recovery id");this.recovery=M}Object.freeze(this)}static fromBytes(R,O=g.format){z(R,O);let M;if(O==="der"){let{r:te,s:ue}=Ln.toSig(lt(R));return new j(te,ue)}if(O==="recovered")M=R[0],O="compact",R=R.subarray(1);let L=y.signature/2,V=R.subarray(0,L),_=R.subarray(L,L*2);return new j(a.fromBytes(V),a.fromBytes(_),M)}static fromHex(R,O){return this.fromBytes(xc(R),O)}assertRecovery(){let{recovery:R}=this;if(R==null)throw Error("invalid recovery id: must be present");return R}addRecoveryBit(R){return new j(this.r,this.s,R)}recoverPublicKey(R){let{r:O,s:M}=this,L=this.assertRecovery(),V=L===2||L===3?O+c:O;if(!s.isValid(V))throw Error("invalid recovery id: sig.r+curve.n != R.x");let _=s.toBytes(V),te=e.fromBytes(sr(Zz((L&1)===0),_)),ue=a.inv(V),C=Z(lt(R,void 0,"msgHash")),Se=a.create(-C*ue),Ee=a.create(M*ue),Ce=e.BASE.multiplyUnsafe(Se).add(te.multiplyUnsafe(Ee));if(Ce.is0())throw Error("invalid recovery: point at infinify");return Ce.assertValidity(),Ce}hasHighS(){return v(this.s)}toBytes(R=g.format){if(GS(R),R==="der")return xc(Ln.hexFromSig(this));let{r:O,s:M}=this,L=a.toBytes(O),V=a.toBytes(M);if(R==="recovered")return T(),sr(Uint8Array.of(this.assertRecovery()),L,V);return sr(L,V)}toHex(R){return bc(this.toBytes(R))}}Object.freeze(j.prototype),Object.freeze(j);let E=r.bits2int===void 0?function(O){if(O.length>8192)throw Error("input is too large");let M=Fs(O),L=O.length*8-l;return L>0?M>>BigInt(L):M}:r.bits2int,Z=r.bits2int_modN===void 0?function(O){return a.create(E(O))}:r.bits2int_modN,D=id(l);function H(R){return Li("num < 2^"+l,R,si,D),a.toBytes(R)}function X(R,O){return lt(R,void 0,"message"),O?lt(i(R),void 0,"prehashed message"):R}function F(R,O,M){let{lowS:L,prehash:V,extraEntropy:_}=WS(M,g);R=X(R,V);let te=Z(R),ue=a.fromBytes(O);if(!a.isValidNot0(ue))throw Error("invalid private key");let C=[H(ue),H(te)];if(_!=null&&_!==!1){let $e=_===!0?n(y.secretKey):_;C.push(lt($e,void 0,"extraEntropy"))}let Se=sr(...C),Ee=te;function Ce($e){let _e=E($e);if(!a.isValidNot0(_e))return;let Pe=a.inv(_e),Ve=e.BASE.multiply(_e).toAffine(),et=a.create(Ve.x);if(et===si)return;let St=a.create(Pe*a.create(Ee+et*ue));if(St===si)return;let Dt=(Ve.x===et?0:2)|Number(Ve.y&$o),hr=St;if(L&&v(St))hr=a.neg(St),Dt^=1;return new j(et,hr,b?void 0:Dt)}return{seed:Se,k2sig:Ce}}function P(R,O,M={}){let{seed:L,k2sig:V}=F(R,O,M);return Sz(i.outputLen,a.BYTES,o)(L,V).toBytes(M.format)}function N(R,O,M,L={}){let{lowS:V,prehash:_,format:te}=WS(L,g);if(M=lt(M,void 0,"publicKey"),O=X(O,_),!Sc(R)){let ue=R instanceof j?", use sig.toBytes()":"";throw Error("verify expects Uint8Array signature"+ue)}z(R,te);try{let ue=j.fromBytes(R,te),C=e.fromBytes(M);if(V&&ue.hasHighS())return!1;let{r:Se,s:Ee}=ue,Ce=Z(O),$e=a.inv(Ee),_e=a.create(Ce*$e),Pe=a.create(Se*$e),Ve=e.BASE.multiplyUnsafe(_e).add(C.multiplyUnsafe(Pe));if(Ve.is0())return!1;return a.create(Ve.x)===Se}catch(ue){return!1}}function I(R,O,M={}){let{prehash:L}=WS(M,g);return O=X(O,L),j.fromBytes(R,"recovered").recoverPublicKey(O).toBytes()}return Object.freeze({keygen:u,getPublicKey:d,getSharedSecret:p,utils:m,lengths:y,Point:e,sign:P,verify:N,recoverPublicKey:I,Signature:j,hash:i})}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */var KG=(()=>({p:BigInt("0xffffffff00000001000000000000000000000000ffffffffffffffffffffffff"),n:BigInt("0xffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551"),h:BigInt(1),a:BigInt("0xffffffff00000001000000000000000000000000fffffffffffffffffffffffc"),b:BigInt("0x5ac635d8aa3a93e7b3ebbd55769886bc651d06b0cc53b0f63bce3c3e27d2604b"),Gx:BigInt("0x6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296"),Gy:BigInt("0x4fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5")}))();var VG=Mz(KG),kc=Jz(VG,Ot);/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */var Co=BigInt(0),Mr=BigInt(1),QS=BigInt(2),WG=BigInt(8);function GG(e,t,r,i){let n=e.sqr(r),o=e.sqr(i),s=e.add(e.mul(t.a,n),o),a=e.add(e.ONE,e.mul(t.d,e.mul(n,o)));return e.eql(s,a)}function Kz(e,t={}){let r=t,i=Dm("edwards",e,r,r.FpFnLE),{Fp:n,Fn:o}=i,s=i.CURVE,{h:a}=s;Sn(r,{},{uvRatio:"function"});let c=QS<<BigInt(o.BYTES*8)-Mr,l=(g)=>n.create(g),u=r.uvRatio===void 0?(g,b)=>{try{return{isValid:!0,value:n.sqrt(n.div(g,b))}}catch(v){return{isValid:!1,value:Co}}}:r.uvRatio;if(!GG(n,s,s.Gx,s.Gy))throw Error("bad curve params: generator point");function d(g,b,v=!1){let A=v?Mr:Co;return Li("coordinate "+g,b,A,c),b}function p(g){if(!(g instanceof m))throw Error("EdwardsPoint expected")}class m{static BASE=new m(s.Gx,s.Gy,Mr,l(s.Gx*s.Gy));static ZERO=new m(Co,Mr,Mr,Co);static Fp=n;static Fn=o;X;Y;Z;T;constructor(g,b,v,A){this.X=d("x",g),this.Y=d("y",b),this.Z=d("z",v,!0),this.T=d("t",A),Object.freeze(this)}static CURVE(){return s}static fromAffine(g){if(g instanceof m)throw Error("extended point not allowed");let{x:b,y:v}=g||{};return d("x",b),d("y",v),new m(b,v,Mr,l(b*v))}static fromBytes(g,b=!1){let v=n.BYTES,{a:A,d:T}=s;g=To(lt(g,v,"point")),Di(b,"zip215");let z=To(g),j=g[v-1];z[v-1]=j&-129;let E=Dn(z),Z=b?c:n.ORDER;Li("point.y",E,Co,Z);let D=l(E*E),H=l(D-Mr),X=l(T*D-A),{isValid:F,value:P}=u(H,X);if(!F)throw Error("bad point: invalid y coordinate");let N=(P&Mr)===Mr,I=(j&128)!==0;if(!b&&P===Co&&I)throw Error("bad point: x=0 and x_0=1");if(I!==N)P=l(-P);return m.fromAffine({x:P,y:E})}static fromHex(g,b=!1){return m.fromBytes(xc(g),b)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}precompute(g=8,b=!0){if(y.createCache(this,g),!b)this.multiply(QS);return this}assertValidity(){let g=this,{a:b,d:v}=s;if(g.is0())throw Error("bad point: ZERO");let{X:A,Y:T,Z:z,T:j}=g,E=l(A*A),Z=l(T*T),D=l(z*z),H=l(D*D),X=l(E*b),F=l(D*l(X+Z)),P=l(H+l(v*l(E*Z)));if(F!==P)throw Error("bad point: equation left != right (1)");let N=l(A*T),I=l(z*j);if(N!==I)throw Error("bad point: equation left != right (2)")}equals(g){p(g);let{X:b,Y:v,Z:A}=this,{X:T,Y:z,Z:j}=g,E=l(b*j),Z=l(T*A),D=l(v*j),H=l(z*A);return E===Z&&D===H}is0(){return this.equals(m.ZERO)}negate(){return new m(l(-this.X),this.Y,this.Z,l(-this.T))}double(){let{a:g}=s,{X:b,Y:v,Z:A}=this,T=l(b*b),z=l(v*v),j=l(QS*l(A*A)),E=l(g*T),Z=b+v,D=l(l(Z*Z)-T-z),H=E+z,X=H-j,F=E-z,P=l(D*X),N=l(H*F),I=l(D*F),R=l(X*H);return new m(P,N,R,I)}add(g){p(g);let{a:b,d:v}=s,{X:A,Y:T,Z:z,T:j}=this,{X:E,Y:Z,Z:D,T:H}=g,X=l(A*E),F=l(T*Z),P=l(j*v*H),N=l(z*D),I=l((A+T)*(E+Z)-X-F),R=N-P,O=N+P,M=l(F-b*X),L=l(I*R),V=l(O*M),_=l(I*M),te=l(R*O);return new m(L,V,te,_)}subtract(g){return p(g),this.add(g.negate())}multiply(g){if(!o.isValidNot0(g))throw RangeError("invalid scalar: expected 1 <= sc < curve.n");let{p:b,f:v}=y.cached(this,g,(A)=>Hs(m,A));return Hs(m,[b,v])[0]}multiplyUnsafe(g){if(!o.isValid(g))throw RangeError("invalid scalar: expected 0 <= sc < curve.n");if(g===Co)return m.ZERO;if(this.is0()||g===Mr)return this;return y.unsafe(this,g,(b)=>Hs(m,b))}isSmallOrder(){return this.clearCofactor().is0()}isTorsionFree(){return y.unsafe(this,s.n).is0()}toAffine(g){let b=this,v=g,{X:A,Y:T,Z:z}=b,j=b.is0();if(v==null)v=j?WG:n.inv(z);let E=l(A*v),Z=l(T*v),D=n.mul(z,v);if(j)return{x:Co,y:Mr};if(D!==Mr)throw Error("invZ was invalid");return{x:E,y:Z}}clearCofactor(){if(a===Mr)return this;return this.multiplyUnsafe(a)}toBytes(){let{x:g,y:b}=this.toAffine(),v=n.toBytes(b);return v[v.length-1]|=g&Mr?128:0,v}toHex(){return bc(this.toBytes())}toString(){return`<Point ${this.is0()?"ZERO":this.toHex()}>`}}let y=new ad(m,o.BITS);if(o.BITS>=8)m.BASE.precompute(8);return Object.freeze(m.prototype),Object.freeze(m),m}class YS{static BASE;static ZERO;static Fp;static Fn;ep;constructor(e){this.ep=e}static fromBytes(e){qS()}static fromHex(e){qS()}get x(){return this.toAffine().x}get y(){return this.toAffine().y}clearCofactor(){return this}assertValidity(){this.ep.assertValidity()}toAffine(e){return this.ep.toAffine(e)}toHex(){return bc(this.toBytes())}toString(){return this.toHex()}isTorsionFree(){return!0}isSmallOrder(){return!1}add(e){return this.assertSame(e),this.init(this.ep.add(e.ep))}subtract(e){return this.assertSame(e),this.init(this.ep.subtract(e.ep))}multiply(e){return this.init(this.ep.multiply(e))}multiplyUnsafe(e){return this.init(this.ep.multiplyUnsafe(e))}double(){return this.init(this.ep.double())}negate(){return this.init(this.ep.negate())}precompute(e,t){return this.ep.precompute(e,t),this}}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */var ud=BigInt(0),Ec=BigInt(1),Bm=BigInt(2);function QG(e){return Sn(e,{P:"bigint",type:"string",adjustScalarBytes:"function",powPminus2:"function"},{randomBytes:"function"}),Object.freeze({...e})}function Vz(e){let t=QG(e),{P:r,type:i,adjustScalarBytes:n,powPminus2:o,randomBytes:s}=t,a=i==="x25519";if(!a&&i!=="x448")throw Error("invalid type");let c=s===void 0?wc:s,l=a?255:448,u=a?32:56,d=a?BigInt(9):BigInt(5),p=a?BigInt(121665):BigInt(39081),m=a?Bm**BigInt(254):Bm**BigInt(447),y=a?BigInt(8)*Bm**BigInt(251)-Ec:BigInt(4)*Bm**BigInt(445)-Ec,g=m+y+Ec,b=(I)=>gt(I,r),v=A(d);function A(I){return nd(b(I),u)}function T(I){let R=To(lt(I,u,"uCoordinate"));if(a)R[31]&=127;return b(Dn(R))}function z(I){return Dn(n(To(lt(I,u,"scalar"))))}function j(I,R){let O=X(T(R),z(I));if(O===ud)throw Error("invalid private or public key received");return A(O)}function E(I){return j(I,v)}let Z=E,D=j;function H(I,R,O){let M=b(I*(R-O));return R=b(R-M),O=b(O+M),{x_2:R,x_3:O}}function X(I,R){Li("u",I,ud,r),Li("scalar",R,m,g);let O=R,M=I,L=Ec,V=ud,_=I,te=Ec,ue=ud;for(let Se=BigInt(l-1);Se>=ud;Se--){let Ee=O>>Se&Ec;ue^=Ee,{x_2:L,x_3:_}=H(ue,L,_),{x_2:V,x_3:te}=H(ue,V,te),ue=Ee;let Ce=L+V,$e=b(Ce*Ce),_e=L-V,Pe=b(_e*_e),Ve=$e-Pe,et=_+te,St=_-te,Dt=b(St*Ce),hr=b(et*_e),Qr=Dt+hr,Yr=Dt-hr;_=b(Qr*Qr),te=b(M*b(Yr*Yr)),L=b($e*Pe),V=b(Ve*($e+b(p*Ve)))}({x_2:L,x_3:_}=H(ue,L,_)),{x_2:V,x_3:te}=H(ue,V,te);let C=o(V);return b(L*C)}let F={secretKey:u,publicKey:u,seed:u},P=(I)=>(I=I===void 0?c(u):I,lt(I,F.seed,"seed"),I),N={randomSecretKey:P};return Object.freeze(F),Object.freeze(N),Object.freeze({keygen:cd(P,Z),getSharedSecret:D,getPublicKey:Z,scalarMult:j,scalarMultBase:E,utils:N,GuBytes:v.slice(),lengths:F})}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */var YG=BigInt(0),ji=BigInt(1),Wz=BigInt(2),XG=BigInt(3),eQ=BigInt(5),tQ=BigInt(8),Ks=BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed"),rw=(()=>({p:Ks,n:BigInt("0x1000000000000000000000000000000014def9dea2f79cd65812631a5cf5d3ed"),h:tQ,a:BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec"),d:BigInt("0x52036cee2b6ffe738cc740797779e89800700a4d4141d8ab75eb4dca135978a3"),Gx:BigInt("0x216936d3cd6e53fec0a4e231fdd6dc5c692cc7609525a7b2c9562d608f25d51a"),Gy:BigInt("0x6666666666666666666666666666666666666666666666666666666666666658")}))();function Yz(e){let t=BigInt(10),r=BigInt(20),i=BigInt(40),n=BigInt(80),o=Ks,a=e*e%o*e%o,c=wn(a,Wz,o)*a%o,l=wn(c,ji,o)*e%o,u=wn(l,eQ,o)*l%o,d=wn(u,t,o)*u%o,p=wn(d,r,o)*d%o,m=wn(p,i,o)*p%o,y=wn(m,n,o)*m%o,g=wn(y,n,o)*m%o,b=wn(g,t,o)*u%o;return{pow_p_5_8:wn(b,Wz,o)*e%o,b2:a}}function rQ(e){return e[0]&=248,e[31]&=127,e[31]|=64,e}var XS=BigInt("19681161376707505956807079304988542015446066515923890162744021073123829784752");function nw(e,t){let r=Ks,i=gt(t*t*t,r),n=gt(i*i*t,r),o=Yz(e*n).pow_p_5_8,s=gt(e*i*o,r),a=gt(t*s*s,r),c=s,l=gt(s*XS,r),u=a===e,d=a===gt(-e,r),p=a===gt(-e*XS,r);if(u)s=c;if(d||p)s=l;if(Bi(s,r))s=gt(-s,r);return{isValid:u||d,value:s}}var Js=Kz(rw,{uvRatio:nw}),Oo=(()=>Js.Fp)(),Xz=(()=>Js.Fn)();var jm=(()=>{let e=Ks;return Vz({P:e,type:"x25519",powPminus2:(t)=>{let{pow_p_5_8:r,b2:i}=Yz(t);return gt(wn(r,XG,e)*i,e)},adjustScalarBytes:rQ})})();var ew=XS,nQ=BigInt("25063068953384623474111414158702152701244531502492656460079210482610430750235"),iQ=BigInt("54469307008909316920995813868745141605393597292927456921205312896311721017578"),oQ=BigInt("1159843021668779879193775521855586647937357759715417654439879720876111806838"),sQ=BigInt("40440834346308536858101042469323190826248399146238708352240133220865137265952"),Gz=(e)=>nw(ji,e),aQ=BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"),tw=(e)=>Oo.create(Dn(e)&aQ);function Qz(e){let{d:t}=rw,r=Ks,i=(v)=>Oo.create(v),n=i(ew*e*e),o=i((n+ji)*oQ),s=BigInt(-1),a=i((s-t*n)*i(n+t)),{isValid:c,value:l}=nw(o,a),u=i(l*e);if(!Bi(u,r))u=i(-u);if(!c)l=u;if(!c)s=n;let d=i(s*(n-ji)*sQ-a),p=l*l,m=i((l+l)*a),y=i(d*nQ),g=i(ji-p),b=i(ji+p);return new Js(i(m*b),i(g*y),i(y*b),i(m*g))}class Cr extends YS{static BASE=(()=>new Cr(Js.BASE))();static ZERO=(()=>new Cr(Js.ZERO))();static Fp=(()=>Oo)();static Fn=(()=>Xz)();constructor(e){super(e)}static fromAffine(e){return new Cr(Js.fromAffine(e))}assertSame(e){if(!(e instanceof Cr))throw Error("RistrettoPoint expected")}init(e){return new Cr(e)}static fromBytes(e){rr(e,32);let{a:t,d:r}=rw,i=Ks,n=(T)=>Oo.create(T),o=tw(e);if(!xz(Oo.toBytes(o),e)||Bi(o,i))throw Error("invalid ristretto255 encoding 1");let s=n(o*o),a=n(ji+t*s),c=n(ji-t*s),l=n(a*a),u=n(c*c),d=n(t*r*l-u),{isValid:p,value:m}=Gz(n(d*u)),y=n(m*c),g=n(m*y*d),b=n((o+o)*y);if(Bi(b,i))b=n(-b);let v=n(a*g),A=n(b*v);if(!p||Bi(A,i)||v===YG)throw Error("invalid ristretto255 encoding 2");return new Cr(new Js(b,v,ji,A))}static fromHex(e){return Cr.fromBytes(Ru(e))}toBytes(){let{X:e,Y:t,Z:r,T:i}=this.ep,n=Ks,o=(g)=>Oo.create(g),s=o(o(r+t)*o(r-t)),a=o(e*t),c=o(a*a),{value:l}=Gz(o(s*c)),u=o(l*s),d=o(l*a),p=o(u*d*i),m;if(Bi(i*p,n)){let g=o(t*ew),b=o(e*ew);e=g,t=b,m=o(u*iQ)}else m=d;if(Bi(e*p,n))t=o(-t);let y=o((r-t)*m);if(Bi(y,n))y=o(-y);return Oo.toBytes(y)}equals(e){this.assertSame(e);let{X:t,Y:r}=this.ep,{X:i,Y:n}=e.ep,o=(c)=>Oo.create(c),s=o(t*n)===o(r*i),a=o(r*n)===o(t*i);return s||a}is0(){return this.equals(Cr.ZERO)}}Object.freeze(Cr.BASE);Object.freeze(Cr.ZERO);Object.freeze(Cr.prototype);Object.freeze(Cr);var cQ=Object.freeze({Point:Cr,hashToCurve(e,t){let r=t?.DST===void 0?"ristretto255_XMD:SHA-512_R255MAP_RO_":t.DST,i=VS(e,r,64,nm);return cQ.deriveToCurve(i)},hashToScalar(e,t={DST:jz}){let r=VS(e,t.DST,64,nm);return Xz.create(Dn(r))},deriveToCurve(e){rr(e,64);let t=tw(e.subarray(0,32)),r=Qz(t),i=tw(e.subarray(32,64)),n=Qz(i);return new Cr(r.add(n))}});var e2=!1,lQ=!1;async function t2(e,t){if(lQ)return await t();try{return await e()}catch(r){if(r instanceof ReferenceError||r instanceof DOMException&&r.name==="NotSupportedError")return await t();else throw r}}async function qm(e,t){return await t2(async()=>{let r=iw(e)?e:await dQ(e),i=await crypto.subtle.importKey("raw",fQ(t),{name:"X25519"},e2,[]);return new Uint8Array(await crypto.subtle.deriveBits({name:"X25519",public:i},r,256))},()=>{if(iw(e))throw Error("CryptoKey provided but X25519 WebCrypto is not supported");return jm.scalarMult(e,t)})}async function dd(e){return await t2(async()=>qm(e,jm.GuBytes),()=>{if(iw(e))throw Error("CryptoKey provided but X25519 WebCrypto is not supported");return jm.scalarMultBase(e)})}var uQ=new Uint8Array([48,46,2,1,0,48,5,6,3,43,101,110,4,34,4,32]);async function dQ(e){if(e.length!==32)throw Error("X25519 private key must be 32 bytes");let t=new Uint8Array([...uQ,...e]);return crypto.subtle.importKey("pkcs8",t,{name:"X25519"},e2,["deriveBits"])}function iw(e){return typeof CryptoKey<"u"&&e instanceof CryptoKey}function fQ(e){return e}class ow{s;transcript=[];buf=new Uint8Array(0);constructor(e){this.s=e.getReader()}async readLine(){let e=[];while(!0){let t=this.buf.indexOf(10);if(t>=0)return e.push(this.buf.subarray(0,t)),this.transcript.push(this.buf.subarray(0,t+1)),this.buf=this.buf.subarray(t+1),mQ(Vs(e));if(this.buf.length>0)e.push(this.buf),this.transcript.push(this.buf);let r=await this.s.read();if(r.done)return this.buf=Vs(e),null;this.buf=r.value}}close(){return this.s.releaseLock(),{rest:this.buf,transcript:Vs(this.transcript)}}}function mQ(e){return e.forEach((t)=>{if(t<32||t>126)throw Error("invalid non-ASCII byte in header")}),new TextDecoder().decode(e)}function Vs(e){let t=e.reduce((n,o)=>n+o.length,0),r=new Uint8Array(t),i=0;for(let n of e)r.set(n,i),i+=n.length;return r}function Ic(e,...t){return e.pipeThrough(new TransformStream({start(r){for(let i of t)r.enqueue(i)}}))}function Um(e){return new ReadableStream({start(t){t.enqueue(e),t.close()}})}async function sw(e){if(!(e instanceof ReadableStream))throw Error("readAll expects a ReadableStream<Uint8Array>");return new Uint8Array(await new Response(e).arrayBuffer())}async function r2(e){if(!(e instanceof ReadableStream))throw Error("readAllString expects a ReadableStream<Uint8Array>");return await new Response(e).text()}async function n2(e,t){let r=e.getReader(),i=[],n=0;while(n<t){let{done:c,value:l}=await r.read();if(c)throw Error("stream ended before reading "+t.toString()+" bytes");i.push(l),n+=l.length}r.releaseLock();let o=Vs(i),s=o.subarray(0,t),a=Ic(e,o.subarray(t));return{data:s,rest:a}}class ai{args;body;constructor(e,t){this.args=e,this.body=t}}async function hQ(e){let t=await e.readLine();if(t===null)throw Error("invalid stanza");let r=t.split(" ");if(r.length<2||r.shift()!=="->")return{next:t};for(let o of r)if(o.length===0)throw Error("invalid stanza");let i=[];for(;;){let o=await e.readLine();if(o===null)throw Error("invalid stanza");let s=gr.decode(o);if(s.length>48)throw Error("invalid stanza");if(i.push(s),s.length<48)break}let n=Vs(i);return{s:new ai(r,n)}}async function i2(e){let t=new ow(e),r=await t.readLine();if(r!=="age-encryption.org/v1")throw Error("invalid version "+(r??"line"));let i=[];for(;;){let{s:n,next:o}=await hQ(t);if(n!==void 0){i.push(n);continue}if(!o.startsWith("--- "))throw Error("invalid header");let s=gr.decode(o.slice(4)),{rest:a,transcript:c}=t.close(),l=c.slice(0,c.length-1-o.length+3);return{stanzas:i,headerNoMAC:l,MAC:s,headerSize:c.length,rest:Ic(e,a)}}}function aw(e){let t=[];t.push(`age-encryption.org/v1
|
|
769
769
|
`);for(let r of e){t.push("-> "+r.args.join(" ")+`
|
|
770
770
|
`);for(let i=0;i<r.body.length;i+=48){let n=i+48;if(n>r.body.length)n=r.body.length;t.push(gr.encode(r.body.subarray(i,n))+`
|
|
771
771
|
`)}if(r.body.length%48===0)t.push(`
|
package/dist/index.js
CHANGED
|
@@ -763,7 +763,7 @@ printf 'REMOTE_ARTIFACT_DIR=%s\\n' "$remote_dir"
|
|
|
763
763
|
`),o}async function v7(e,t){let r=await Ct(e),i=r.users.find((n)=>n.handle===t);if(!i)throw Error(`Unknown pilot user: ${t}`);return{pilot:r.pilot,user:i}}async function _7(e){let t=await Nke(Ii(Dke(),"brains-ops-watchdog-smoke-")),r=Ii(t,"id_ed25519"),i=Ii(t,"known_hosts");try{let n=encodeURIComponent(`brain=${e.target.pilot.contentRepoPrefix}${e.target.user.handle}`),o=await e.fetchImpl(`https://api.hetzner.cloud/v1/servers?label_selector=${n}`,{headers:{Authorization:`Bearer ${e.environment.HCLOUD_TOKEN}`}});if(!o.ok)throw Error(`Hetzner server lookup failed with ${o.status}`);let s=Lke.parse(await o.json());if(s.servers.length!==1)throw Error(`Expected one smoke server, found ${s.servers.length}`);let a=s.servers[0];if(a?.status!=="running")throw Error("Smoke server is not running");await $u(r,qke(e.environment.KAMAL_SSH_PRIVATE_KEY),{mode:384}),await zke(r,384);let c=await e.commandRunner("ssh-keyscan",["-T","10","-t","ed25519",a.public_net.ipv4.ip]);if(c.exitCode!==0||!c.stdout.trim())throw Error("Unable to resolve watchdog smoke SSH host key");return await $u(i,c.stdout,{mode:384}),{temporaryRoot:t,sshKeyPath:r,knownHostsPath:i,serverIp:a.public_net.ipv4.ip,commandRunner:e.commandRunner}}catch(n){throw await fR(t,{recursive:!0,force:!0}),n}}async function dR(e,t,r){return e.commandRunner("ssh",[...k7(e),`root@${e.serverIp}`,"bash","-s","--",t,r],{stdin:pR()})}async function Bke(e,t,r){return e.commandRunner("scp",[...k7(e),"-r",`root@${e.serverIp}:${t}/.`,r])}function k7(e){return["-i",e.sshKeyPath,"-o","BatchMode=yes","-o","IdentitiesOnly=yes","-o","ConnectTimeout=10","-o","StrictHostKeyChecking=yes","-o",`UserKnownHostsFile=${e.knownHostsPath}`]}async function jke(e){try{return await Pke(e),!0}catch{return!1}}async function Lx(e,t,r){await Promise.all([$u(Ii(e,`${t}.stdout.log`),r.stdout),$u(Ii(e,`${t}.stderr.log`),r.stderr)])}function qke(e){return`${e.replace(/\r\n/g,`
|
|
764
764
|
`).replace(/\\n/g,`
|
|
765
765
|
`).trimEnd()}
|
|
766
|
-
`}var x7,Lke;var jx=x(async()=>{ze();h7();Ln();Vp();await m7();x7=f.object({HCLOUD_TOKEN:f.string().min(1),KAMAL_SSH_PRIVATE_KEY:f.string().min(1)}),Lke=f.object({servers:f.array(f.object({status:f.string(),public_net:f.object({ipv4:f.object({ip:f.string().min(1)})})}))})});import{access as RN,chmod as RE,mkdir as Mh,readFile as zN,writeFile as PN}from"fs/promises";import{dirname as ZY,join as jc}from"path";import{fileURLToPath as HY}from"url";var Xp={name:"@rizom/ops",version:"0.2.0-alpha.
|
|
766
|
+
`}var x7,Lke;var jx=x(async()=>{ze();h7();Ln();Vp();await m7();x7=f.object({HCLOUD_TOKEN:f.string().min(1),KAMAL_SSH_PRIVATE_KEY:f.string().min(1)}),Lke=f.object({servers:f.array(f.object({status:f.string(),public_net:f.object({ipv4:f.object({ip:f.string().min(1)})})}))})});import{access as RN,chmod as RE,mkdir as Mh,readFile as zN,writeFile as PN}from"fs/promises";import{dirname as ZY,join as jc}from"path";import{fileURLToPath as HY}from"url";var Xp={name:"@rizom/ops",version:"0.2.0-alpha.419",description:"Operator CLI for managing private brain fleet registry repos",keywords:["brains","ops","cli","deploy","fleet","operator"],license:"AGPL-3.0-only",author:"Yeehaa <yeehaa@rizom.ai> (https://rizom.ai)",bin:{"brains-ops":"./dist/brains-ops.js"},bugs:"https://github.com/rizom-ai/brains/issues",dependencies:{"@libsql/client":"^0.17.4","age-encryption":"^0.3.0",yaml:"^2.9.0"},devDependencies:{"@brains/deploy-support":"workspace:*","@brains/eslint-config":"workspace:*","@brains/job-queue":"workspace:*","@brains/profile":"workspace:*","@brains/site-composition":"workspace:*","@brains/test-utils":"workspace:*","@brains/typescript-config":"workspace:*","@brains/utils":"workspace:*","@types/bun":"^1.4.0",typescript:"^7.0.2"},engines:{bun:">=1.3.3"},exports:{".":{types:"./dist/index.d.ts",import:"./dist/index.js"},"./deploy":{types:"./dist/deploy.d.ts",import:"./dist/deploy.js",bun:"./dist/deploy.js"}},files:["dist","templates"],homepage:"https://github.com/rizom-ai/brains/tree/main/packages/brains-ops#readme",main:"./dist/index.js",publishConfig:{access:"public"},repository:{type:"git",url:"https://github.com/rizom-ai/brains.git",directory:"packages/brains-ops"},scripts:{build:"bun scripts/build.ts",lint:"eslint . --max-warnings 0","lint:fix":"eslint . --max-warnings 0 --fix",prepublishOnly:"bun scripts/build.ts",test:"bun run build && bun test --timeout 20000","test:smoke":"bun run build && RUN_SMOKE_TESTS=1 bun test --timeout 60000",typecheck:"tsc --noEmit"},type:"module",types:"./dist/index.d.ts"};Os();Bc();var JY=["pilot.yaml","package.json",".env.schema",".gitignore","cohorts/cohort-1.yaml","users/alice.yaml",".github/actions/varlock-env/action.yml",".github/workflows/build.yml",".github/workflows/deploy.yml",".github/workflows/directory-sync-stress.yml",".github/workflows/health-watchdog-smoke.yml",".github/workflows/offboard.yml",".github/workflows/reconcile.yml",".github/workflows/upgrade.yml","deploy/Dockerfile","deploy/kamal/deploy.yml","deploy/scripts/helpers.ts","deploy/scripts/create-predeploy-backup.ts","deploy/scripts/install-health-watchdog.ts","deploy/scripts/provision-server.ts","deploy/scripts/update-dns.ts","deploy/scripts/write-ssh-key.ts","deploy/scripts/decrypt-user-secrets.ts","deploy/scripts/validate-secrets.ts","deploy/scripts/write-kamal-secrets.ts","deploy/scripts/resolve-user-config.ts","deploy/scripts/resolve-missing-images.ts","deploy/scripts/verify-runtime-image.ts","deploy/scripts/resolve-deploy-handles.ts","deploy/scripts/sync-content-repo.ts",".kamal/hooks/pre-deploy","docs/onboarding-checklist.md","docs/canonical-crossover-record.md","docs/operator-playbook.md","docs/user-onboarding.md","README.md"],PE=new Set([".kamal/hooks/pre-deploy"]),KY=new Set(["cohorts/cohort-1.yaml","users/alice.yaml","docs/canonical-crossover-record.md"]),VY=HY(new URL("../templates/rover-pilot/",import.meta.url)),WY=[`service: rover
|
|
767
767
|
image: <%= ENV['IMAGE_REPOSITORY'] %>
|
|
768
768
|
|
|
769
769
|
servers:
|
package/package.json
CHANGED
|
@@ -570,6 +570,33 @@ function shellSafe(value: string, name: string): string {
|
|
|
570
570
|
return value;
|
|
571
571
|
}
|
|
572
572
|
|
|
573
|
+
/**
|
|
574
|
+
* Run inside the current runtime before capture. The snapshot proves itself
|
|
575
|
+
* (transactional copies, quick_check, checksums), so it needs a serving
|
|
576
|
+
* runtime with no queued work, not a healthy one: a deploy is often the fix
|
|
577
|
+
* for whatever a plugin reports as degraded. Degradation is named, not refused.
|
|
578
|
+
*/
|
|
579
|
+
export function renderPredeployReadinessProgram(
|
|
580
|
+
healthUrl: string = "http://127.0.0.1:8080/health/ready",
|
|
581
|
+
): string {
|
|
582
|
+
return `const response = await fetch(${JSON.stringify(healthUrl)});
|
|
583
|
+
const health = await response.json();
|
|
584
|
+
const queue = health.resources?.queue;
|
|
585
|
+
if (response.status !== 200 || health.status !== "ready") {
|
|
586
|
+
console.error("pre-deploy snapshot: current runtime is not ready");
|
|
587
|
+
process.exit(1);
|
|
588
|
+
}
|
|
589
|
+
if (queue && (queue.totals?.pending !== 0 || queue.totals?.processing !== 0 || queue.staleLeaseCount !== 0)) {
|
|
590
|
+
console.error("pre-deploy snapshot: job queue is not idle");
|
|
591
|
+
process.exit(1);
|
|
592
|
+
}
|
|
593
|
+
if (health.operationalStatus !== "operational") {
|
|
594
|
+
const degraded = (health.checks ?? []).filter((check) => check.status !== "healthy").map((check) => check.name);
|
|
595
|
+
console.error("pre-deploy snapshot: runtime is degraded (" + degraded.join(", ") + "); backing it up anyway");
|
|
596
|
+
}
|
|
597
|
+
`;
|
|
598
|
+
}
|
|
599
|
+
|
|
573
600
|
export function renderPredeployBackupRemoteScript(options?: {
|
|
574
601
|
captureProgramBase64?: string;
|
|
575
602
|
}): string {
|
|
@@ -620,12 +647,7 @@ if [ "$status" != running ] || [ "$health" != healthy ]; then
|
|
|
620
647
|
fi
|
|
621
648
|
|
|
622
649
|
docker exec "$container" bun -e '
|
|
623
|
-
|
|
624
|
-
const health = await response.json();
|
|
625
|
-
const queue = health.resources?.queue;
|
|
626
|
-
if (response.status !== 200 || health.status !== "ready" || health.operationalStatus !== "operational") process.exit(1);
|
|
627
|
-
if (queue && (queue.totals?.pending !== 0 || queue.totals?.processing !== 0 || queue.staleLeaseCount !== 0)) process.exit(1);
|
|
628
|
-
'
|
|
650
|
+
${renderPredeployReadinessProgram()}'
|
|
629
651
|
|
|
630
652
|
required_databases=(
|
|
631
653
|
"$state_root/brain.db"
|
|
@@ -57,7 +57,7 @@ They are scaffolded from `@rizom/ops`, then versioned in this repo like any othe
|
|
|
57
57
|
|
|
58
58
|
## Verified pre-deploy rollback snapshots
|
|
59
59
|
|
|
60
|
-
Deploy creates and verifies one target-scoped rollback snapshot after SSH and image readiness, immediately before optional stale-lock release and `kamal setup`. A snapshot failure stops the workflow before container replacement. A genuinely new server with no runtime or persistent state reports `not applicable`; persistent state without an identifiable runtime fails closed.
|
|
60
|
+
Deploy creates and verifies one target-scoped rollback snapshot after SSH and image readiness, immediately before optional stale-lock release and `kamal setup`. A snapshot failure stops the workflow before container replacement. The current runtime must be ready with an idle job queue; degradation a plugin reports is named in the log and backed up, not refused, because a deploy is often its fix. A genuinely new server with no runtime or persistent state reports `not applicable`; persistent state without an identifiable runtime fails closed.
|
|
61
61
|
|
|
62
62
|
Each snapshot contains transaction-consistent online captures of the six canonical SQLite databases, database hashes and `quick_check` results, the deployed `brain.yaml`, sanitized container and mount metadata, and the Directory Sync checkout. Git capture includes all refs, an observed remote head, staged and unstaged binary patches, and mode-preserving archives of untracked and ignored files. Capture performs no checkout mutation or remote write.
|
|
63
63
|
|