@rizom/ops 0.2.0-alpha.136 → 0.2.0-alpha.138

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -53,7 +53,7 @@ return `+str.trim()+`;
53
53
  `).join(`
54
54
  `+Y),$.push(Q+"m+"+SY.exports.humanize(this.diff)+"\x1B[0m")}else $[0]=bA()+q+" "+$[0]}function bA(){if(nM.inspectOpts.hideDate)return"";return new Date().toISOString()+" "}function kA(...$){return process.stderr.write(TY.formatWithOptions(nM.inspectOpts,...$)+`
55
55
  `)}function mA($){if($)process.env.DEBUG=$;else delete process.env.DEBUG}function yA(){return process.env.DEBUG}function fA($){$.inspectOpts={};let q=Object.keys(nM.inspectOpts);for(let J=0;J<q.length;J++)$.inspectOpts[q[J]]=nM.inspectOpts[q[J]]}SY.exports=bX()(nM);var{formatters:cM}=SY.exports;cM.o=function($){return this.inspectOpts.colors=this.useColors,TY.inspect($,this.inspectOpts).split(`
56
- `).map((q)=>q.trim()).join(" ")};cM.O=function($){return this.inspectOpts.colors=this.useColors,TY.inspect($,this.inspectOpts)}});var sM=X$((nv,yX)=>{if(typeof process>"u"||process.type==="renderer"||!1||process.__nwjs)yX.exports=uM();else yX.exports=aM()});var oz=X$((Zy,nz)=>{var bY=Object.prototype.hasOwnProperty,cz=Object.prototype.toString,uz=Object.defineProperty,pz=Object.getOwnPropertyDescriptor,lz=function(q){if(typeof Array.isArray==="function")return Array.isArray(q);return cz.call(q)==="[object Array]"},rz=function(q){if(!q||cz.call(q)!=="[object Object]")return!1;var J=bY.call(q,"constructor"),G=q.constructor&&q.constructor.prototype&&bY.call(q.constructor.prototype,"isPrototypeOf");if(q.constructor&&!J&&!G)return!1;var Q;for(Q in q);return typeof Q>"u"||bY.call(q,Q)},iz=function(q,J){if(uz&&J.name==="__proto__")uz(q,J.name,{enumerable:!0,configurable:!0,value:J.newValue,writable:!0});else q[J.name]=J.newValue},dz=function(q,J){if(J==="__proto__"){if(!bY.call(q,J))return;else if(pz)return pz(q,J).value}return q[J]};nz.exports=function $(){var q,J,G,Q,Y,X,U=arguments[0],W=1,V=arguments.length,M=!1;if(typeof U==="boolean")M=U,U=arguments[1]||{},W=2;if(U==null||typeof U!=="object"&&typeof U!=="function")U={};for(;W<V;++W)if(q=arguments[W],q!=null){for(J in q)if(G=dz(U,J),Q=dz(q,J),U!==Q){if(M&&Q&&(rz(Q)||(Y=lz(Q)))){if(Y)Y=!1,X=G&&lz(G)?G:[];else X=G&&rz(G)?G:{};iz(U,{name:J,newValue:$(M,X,Q)})}else if(typeof Q<"u")iz(U,{name:J,newValue:Q})}}return U}});import{access as bI,chmod as _U,mkdir as DD,readFile as HD,writeFile as KD}from"fs/promises";import{dirname as kI,join as bU}from"path";import{fileURLToPath as mI}from"url";var sQ={name:"@rizom/ops",description:"Operator CLI for managing private brain fleet registry repos",publishConfig:{access:"public"},version:"0.2.0-alpha.136",type:"module",exports:{".":{types:"./dist/index.d.ts",import:"./dist/index.js"},"./deploy":{bun:"./dist/deploy.js",types:"./dist/deploy.d.ts",import:"./dist/deploy.js"}},main:"./dist/index.js",types:"./dist/index.d.ts",bin:{"brains-ops":"./dist/brains-ops.js"},files:["dist","templates"],scripts:{build:"bun scripts/build.ts",prepublishOnly:"bun scripts/build.ts",typecheck:"tsc --noEmit",lint:"eslint . --ext .ts","lint:fix":"eslint . --ext .ts --fix",test:"bun run build && bun test --timeout 20000","test:smoke":"bun run build && RUN_SMOKE_TESTS=1 bun test --timeout 60000"},dependencies:{"age-encryption":"^0.3.0"},devDependencies:{"@brains/deploy-support":"workspace:*","@brains/eslint-config":"workspace:*","@brains/typescript-config":"workspace:*","@brains/utils":"workspace:*","@types/bun":"latest",typescript:"^5.3.3"},repository:{type:"git",url:"https://github.com/rizom-ai/brains.git",directory:"packages/brains-ops"},license:"Apache-2.0",author:"Yeehaa <yeehaa@rizom.ai> (https://rizom.ai)",homepage:"https://github.com/rizom-ai/brains/tree/main/packages/brains-ops#readme",bugs:"https://github.com/rizom-ai/brains/issues",engines:{bun:">=1.3.3"},keywords:["brains","ops","cli","deploy","fleet","operator"]};var r7=`ARG BUN_VERSION=1.3.10
56
+ `).map((q)=>q.trim()).join(" ")};cM.O=function($){return this.inspectOpts.colors=this.useColors,TY.inspect($,this.inspectOpts)}});var sM=X$((nv,yX)=>{if(typeof process>"u"||process.type==="renderer"||!1||process.__nwjs)yX.exports=uM();else yX.exports=aM()});var oz=X$((Zy,nz)=>{var bY=Object.prototype.hasOwnProperty,cz=Object.prototype.toString,uz=Object.defineProperty,pz=Object.getOwnPropertyDescriptor,lz=function(q){if(typeof Array.isArray==="function")return Array.isArray(q);return cz.call(q)==="[object Array]"},rz=function(q){if(!q||cz.call(q)!=="[object Object]")return!1;var J=bY.call(q,"constructor"),G=q.constructor&&q.constructor.prototype&&bY.call(q.constructor.prototype,"isPrototypeOf");if(q.constructor&&!J&&!G)return!1;var Q;for(Q in q);return typeof Q>"u"||bY.call(q,Q)},iz=function(q,J){if(uz&&J.name==="__proto__")uz(q,J.name,{enumerable:!0,configurable:!0,value:J.newValue,writable:!0});else q[J.name]=J.newValue},dz=function(q,J){if(J==="__proto__"){if(!bY.call(q,J))return;else if(pz)return pz(q,J).value}return q[J]};nz.exports=function $(){var q,J,G,Q,Y,X,U=arguments[0],W=1,V=arguments.length,M=!1;if(typeof U==="boolean")M=U,U=arguments[1]||{},W=2;if(U==null||typeof U!=="object"&&typeof U!=="function")U={};for(;W<V;++W)if(q=arguments[W],q!=null){for(J in q)if(G=dz(U,J),Q=dz(q,J),U!==Q){if(M&&Q&&(rz(Q)||(Y=lz(Q)))){if(Y)Y=!1,X=G&&lz(G)?G:[];else X=G&&rz(G)?G:{};iz(U,{name:J,newValue:$(M,X,Q)})}else if(typeof Q<"u")iz(U,{name:J,newValue:Q})}}return U}});import{access as bI,chmod as _U,mkdir as DD,readFile as HD,writeFile as KD}from"fs/promises";import{dirname as kI,join as bU}from"path";import{fileURLToPath as mI}from"url";var sQ={name:"@rizom/ops",description:"Operator CLI for managing private brain fleet registry repos",publishConfig:{access:"public"},version:"0.2.0-alpha.138",type:"module",exports:{".":{types:"./dist/index.d.ts",import:"./dist/index.js"},"./deploy":{bun:"./dist/deploy.js",types:"./dist/deploy.d.ts",import:"./dist/deploy.js"}},main:"./dist/index.js",types:"./dist/index.d.ts",bin:{"brains-ops":"./dist/brains-ops.js"},files:["dist","templates"],scripts:{build:"bun scripts/build.ts",prepublishOnly:"bun scripts/build.ts",typecheck:"tsc --noEmit",lint:"eslint . --ext .ts","lint:fix":"eslint . --ext .ts --fix",test:"bun run build && bun test --timeout 20000","test:smoke":"bun run build && RUN_SMOKE_TESTS=1 bun test --timeout 60000"},dependencies:{"age-encryption":"^0.3.0"},devDependencies:{"@brains/deploy-support":"workspace:*","@brains/eslint-config":"workspace:*","@brains/typescript-config":"workspace:*","@brains/utils":"workspace:*","@types/bun":"latest",typescript:"^5.3.3"},repository:{type:"git",url:"https://github.com/rizom-ai/brains.git",directory:"packages/brains-ops"},license:"Apache-2.0",author:"Yeehaa <yeehaa@rizom.ai> (https://rizom.ai)",homepage:"https://github.com/rizom-ai/brains/tree/main/packages/brains-ops#readme",bugs:"https://github.com/rizom-ai/brains/issues",engines:{bun:">=1.3.3"},keywords:["brains","ops","cli","deploy","fleet","operator"]};var r7=`ARG BUN_VERSION=1.3.10
57
57
  FROM oven/bun:\${BUN_VERSION}-slim AS runtime
58
58
 
59
59
  WORKDIR /app
@@ -278,7 +278,7 @@ ${J}
278
278
  `)}async function YG($,q,J,G,Q={}){let Y=new Set,X=AD(q.pilot.githubOrg);for(let W of J){let V={};if(G){let N=await G(W);if(N!==void 0)V=N}let M=await X(W),z=V.brainYaml??M.brainYaml,D=V.envFile??M.envFile,R=V.contentRepoFiles??M.contentRepoFiles??[];if(D)await yU($,W.handle,".env",D);if(z)await yU($,W.handle,"brain.yaml",z),Y.add(W.handle);await jD($,q.pilot.githubOrg,W,R,{contentRepoAdminTokenSelector:q.pilot.contentRepoAdminToken,...Q});for(let N of R)await yU($,W.handle,ZD("content",N.path),N.content)}let U=Y.size===0?q:{...q,users:q.users.map((W)=>Y.has(W.handle)?{...W,snapshotStatus:"present"}:W)};await aJ($,{registry:U})}async function yU($,q,J,G){let Q=ZD($,"users",q,J);await O2(w2(Q),{recursive:!0}),await N2(Q,G)}async function aY($,q){let J=await o0($),G=J.users.find((Q)=>Q.handle===q);if(!G)throw Error(`Unknown user handle: ${q}`);return{registry:J,user:G}}async function BD($,q){let J=await o0($),G=J.cohorts.find((Q)=>Q.id===q);if(!G)throw Error(`Unknown cohort: ${q}`);return{registry:J,users:J.users.filter((Q)=>Q.cohort===G.id)}}async function TD($){let q=await o0($);return{registry:q,users:q.users}}async function fU($,q,J,G={}){let{registry:Q,user:Y}=await aY($,q);await YG($,Q,[Y],J,G)}import{access as j2,mkdir as SD,readFile as A2,writeFile as CD}from"fs/promises";import{basename as Z2,join as XG}from"path";async function xU($,q,J){let G=MQ.parse(q),Q=MQ.parse(J.cohort),Y=XG($,"users"),X=XG($,"cohorts"),U=XG(Y,`${G}.yaml`),W=XG(Y,`${G}.secrets.yaml`),V=XG(Y,`${G}.secrets.yaml.age`),M=XG(X,`${Q}.yaml`);await Promise.all([SD(Y,{recursive:!0}),SD(X,{recursive:!0})]);let z=await ID(U,S2(G,J.anchorId)),R=await E2(V)?!1:await ID(W,I2(G)),{addedToCohort:N}=await B2(M,G);return{handle:G,cohort:Q,userPath:U,secretsTemplatePath:W,cohortPath:M,createdUser:z,createdSecretsTemplate:R,addedToCohort:N}}async function B2($,q){let J=await T2($);if(J.members.includes(q))return{addedToCohort:!1};let G={...J,members:[...J.members,q].sort()};return await CD($,C2(G)),{addedToCohort:!0}}async function T2($){try{let q=await A2($,"utf8"),J=JQ(q,oY);if(!J.ok)throw Error(`${Z2($)}: ${J.error}`);return J.data}catch(q){if(P2(q))return{members:[]};throw q}}function S2($,q){return[`handle: ${$}`,"anchorProfile:",` name: ${F2($)}`,"discord:"," enabled: true",...q?[` anchorUserId: ${JSON.stringify(q)}`]:[],""].join(`
279
279
  `)}function I2($){return["# local per-user secret staging file",`# fill values, run \`bunx brains-ops secrets:encrypt . ${$}\`, then the plaintext file will be removed`,"discordBotToken: ",""].join(`
280
280
  `)}function C2($){return["members:",...$.members.map((q)=>` - ${q}`),...$.brainVersionOverride?[`brainVersionOverride: ${$.brainVersionOverride}`]:[],...$.presetOverride?[`presetOverride: ${$.presetOverride}`]:[],...$.aiApiKeyOverride?[`aiApiKeyOverride: ${$.aiApiKeyOverride}`]:[],...$.gitSyncTokenOverride?[`gitSyncTokenOverride: ${$.gitSyncTokenOverride}`]:[],""].join(`
281
- `)}async function ID($,q){try{return await CD($,q,{flag:"wx"}),!0}catch(J){if(L2(J))return!1;throw J}}async function E2($){try{return await j2($),!0}catch{return!1}}function L2($){return ED($,"EEXIST")}function P2($){return ED($,"ENOENT")}function ED($,q){return typeof $==="object"&&$!==null&&"code"in $&&$.code===q}function F2($){return $.split("-").filter((q)=>q.length>0).map((q)=>`${q[0]?.toUpperCase()??""}${q.slice(1)}`).join(" ")}async function hU($,q,J,G={}){let{registry:Q,users:Y}=await BD($,q);await YG($,Q,Y,J,G)}async function uU($,q,J={}){let{registry:G,users:Q}=await TD($);await YG($,G,Q,q,J)}import{parseArgs as g2}from"util";var _2={help:{type:"boolean",short:"h"},version:{type:"boolean",short:"v"},"dry-run":{type:"boolean"},"push-to":{type:"string"},cohort:{type:"string"},"anchor-id":{type:"string"}};function pU($,q){let J=$[q];return typeof J==="boolean"?J:void 0}function lU($,q){let J=$[q];return typeof J==="string"?J:void 0}function v2($){let{values:q,positionals:J}=g2({args:$,options:_2,allowPositionals:!0});if(q.help)return{command:"help",args:[],flags:{help:!0}};if(q.version)return{command:"version",args:[],flags:{version:!0}};return{command:J[0]??"help",args:J.slice(1),flags:{help:pU(q,"help"),version:pU(q,"version"),dryRun:pU(q,"dry-run"),pushTo:lU(q,"push-to"),cohort:lU(q,"cohort"),anchorId:lU(q,"anchor-id")}}}import{existsSync as DL,mkdirSync as KL,readFileSync as g7,writeFileSync as _7}from"fs";import{dirname as HL,join as gH}from"path";function rU($){return $ instanceof Uint8Array||ArrayBuffer.isView($)&&$.constructor.name==="Uint8Array"&&"BYTES_PER_ELEMENT"in $&&$.BYTES_PER_ELEMENT===1}function L$($,q=""){if(typeof $!=="number"){let J=q&&`"${q}" `;throw TypeError(`${J}expected number, got ${typeof $}`)}if(!Number.isSafeInteger($)||$<0){let J=q&&`"${q}" `;throw RangeError(`${J}expected integer >= 0, got ${$}`)}}function r$($,q,J=""){let G=rU($),Q=$?.length,Y=q!==void 0;if(!G||Y&&Q!==q){let X=J&&`"${J}" `,U=Y?` of length ${q}`:"",W=G?`length=${Q}`:`type=${typeof $}`,V=X+"expected Uint8Array"+U+", got "+W;if(!G)throw TypeError(V);throw RangeError(V)}return $}function Cq($){if(typeof $!=="function"||typeof $.create!=="function")throw TypeError("Hash must wrapped by utils.createHasher");if(L$($.outputLen),L$($.blockLen),$.outputLen<1)throw Error('"outputLen" must be >= 1');if($.blockLen<1)throw Error('"blockLen" must be >= 1')}function UG($,q=!0){if($.destroyed)throw Error("Hash instance has been destroyed");if(q&&$.finished)throw Error("Hash#digest() has already been called")}function sY($,q){r$($,void 0,"digestInto() output");let J=q.outputLen;if($.length<J)throw RangeError('"digestInto() output" expected to be of length >='+J)}function tY($){return new Uint32Array($.buffer,$.byteOffset,Math.floor($.byteLength/4))}function H0(...$){for(let q=0;q<$.length;q++)$[q].fill(0)}function WG($){return new DataView($.buffer,$.byteOffset,$.byteLength)}function a0($,q){return $<<32-q|$>>>q}function N$($,q){return $<<q|$>>>32-q>>>0}var b2=(()=>new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68)();function k2($){return $<<24&4278190080|$<<8&16711680|$>>>8&65280|$>>>24&255}function m2($){for(let q=0;q<$.length;q++)$[q]=k2($[q]);return $}var iU=b2?($)=>$:m2,PD=(()=>typeof Uint8Array.from([]).toHex==="function"&&typeof Uint8Array.fromHex==="function")(),y2=Array.from({length:256},($,q)=>q.toString(16).padStart(2,"0"));function eY($){if(r$($),PD)return $.toHex();let q="";for(let J=0;J<$.length;J++)q+=y2[$[J]];return q}var Iq={_0:48,_9:57,A:65,F:70,a:97,f:102};function LD($){if($>=Iq._0&&$<=Iq._9)return $-Iq._0;if($>=Iq.A&&$<=Iq.F)return $-(Iq.A-10);if($>=Iq.a&&$<=Iq.f)return $-(Iq.a-10);return}function RQ($){if(typeof $!=="string")throw TypeError("hex string expected, got "+typeof $);if(PD)try{return Uint8Array.fromHex($)}catch(Q){if(Q instanceof SyntaxError)throw RangeError(Q.message);throw Q}let q=$.length,J=q/2;if(q%2)throw RangeError("hex string expected, got unpadded hex of length "+q);let G=new Uint8Array(J);for(let Q=0,Y=0;Q<J;Q++,Y+=2){let X=LD($.charCodeAt(Y)),U=LD($.charCodeAt(Y+1));if(X===void 0||U===void 0){let W=$[Y]+$[Y+1];throw RangeError('hex string expected, got non-hex character "'+W+'" at index '+Y)}G[Q]=X*16+U}return G}function f2($){if(typeof $!=="string")throw TypeError("string expected");return new Uint8Array(new TextEncoder().encode($))}function dU($,q=""){if(typeof $==="string")return f2($);return r$($,void 0,q)}function cU(...$){let q=0;for(let G=0;G<$.length;G++){let Q=$[G];r$(Q),q+=Q.length}let J=new Uint8Array(q);for(let G=0,Q=0;G<$.length;G++){let Y=$[G];J.set(Y,Q),Q+=Y.length}return J}function $9($,q){if(q!==void 0&&{}.toString.call(q)!=="[object Object]")throw TypeError("options must be object or undefined");return Object.assign($,q)}function nU($,q={}){let J=(Q,Y)=>$(Y).update(Q).digest(),G=$(void 0);return J.outputLen=G.outputLen,J.blockLen=G.blockLen,J.canXOF=G.canXOF,J.create=(Q)=>$(Q),Object.assign(J,q),Object.freeze(J)}function Eq($=32){L$($,"bytesLength");let q=typeof globalThis==="object"?globalThis.crypto:null;if(typeof q?.getRandomValues!=="function")throw Error("crypto.getRandomValues must be defined");if($>65536)throw RangeError(`"bytesLength" expected <= 65536, got ${$}`);return q.getRandomValues(new Uint8Array($))}var oU=($)=>({oid:Uint8Array.from([6,9,96,134,72,1,101,3,4,2,$])});class aU{oHash;iHash;blockLen;outputLen;canXOF=!1;finished=!1;destroyed=!1;constructor($,q){if(Cq($),r$(q,void 0,"key"),this.iHash=$.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 J=this.blockLen,G=new Uint8Array(J);G.set(q.length>J?$.create().update(q).digest():q);for(let Q=0;Q<G.length;Q++)G[Q]^=54;this.iHash.update(G),this.oHash=$.create();for(let Q=0;Q<G.length;Q++)G[Q]^=106;this.oHash.update(G),H0(G)}update($){return UG(this),this.iHash.update($),this}digestInto($){UG(this),sY($,this),this.finished=!0;let q=$.subarray(0,this.outputLen);this.iHash.digestInto(q),this.oHash.update(q),this.oHash.digestInto(q),this.destroy()}digest(){let $=new Uint8Array(this.oHash.outputLen);return this.digestInto($),$}_cloneInto($){$||=Object.create(Object.getPrototypeOf(this),{});let{oHash:q,iHash:J,finished:G,destroyed:Q,blockLen:Y,outputLen:X}=this;return $=$,$.finished=G,$.destroyed=Q,$.blockLen=Y,$.outputLen=X,$.oHash=q._cloneInto($.oHash),$.iHash=J._cloneInto($.iHash),$}clone(){return this._cloneInto()}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}}var Uq=(()=>{let $=(q,J,G)=>new aU(q,J).update(G).digest();return $.create=(q,J)=>new aU(q,J),$})();function DQ($,q,J){if(Cq($),J===void 0)J=new Uint8Array($.outputLen);return Uq($,J,q)}var sU=Uint8Array.of(0),FD=Uint8Array.of();function tU($,q,J,G=32){Cq($),L$(G,"length"),r$(q,void 0,"prk");let Q=$.outputLen;if(q.length<Q)throw Error('"prk" must be at least HashLen octets');if(G>255*Q)throw Error("Length must be <= 255*HashLen");let Y=Math.ceil(G/Q);if(J===void 0)J=FD;else r$(J,void 0,"info");let X=new Uint8Array(Y*Q),U=Uq.create($,q),W=U._cloneInto(),V=new Uint8Array(U.outputLen);for(let M=0;M<Y;M++)sU[0]=M+1,W.update(M===0?FD:V).update(J).update(sU).digestInto(V),X.set(V,Q*M),U._cloneInto(W);return U.destroy(),W.destroy(),H0(V,sU),X.slice(0,G)}var XJ=($,q,J,G,Q)=>tU($,DQ($,q,J),G,Q);function gD($,q,J){return $&q^~$&J}function _D($,q,J){return $&q^$&J^q&J}class q9{blockLen;outputLen;canXOF=!1;padOffset;isLE;buffer;view;finished=!1;length=0;pos=0;destroyed=!1;constructor($,q,J,G){this.blockLen=$,this.outputLen=q,this.padOffset=J,this.isLE=G,this.buffer=new Uint8Array($),this.view=WG(this.buffer)}update($){UG(this),r$($);let{view:q,buffer:J,blockLen:G}=this,Q=$.length;for(let Y=0;Y<Q;){let X=Math.min(G-this.pos,Q-Y);if(X===G){let U=WG($);for(;G<=Q-Y;Y+=G)this.process(U,Y);continue}if(J.set($.subarray(Y,Y+X),this.pos),this.pos+=X,Y+=X,this.pos===G)this.process(q,0),this.pos=0}return this.length+=$.length,this.roundClean(),this}digestInto($){UG(this),sY($,this),this.finished=!0;let{buffer:q,view:J,blockLen:G,isLE:Q}=this,{pos:Y}=this;if(q[Y++]=128,H0(this.buffer.subarray(Y)),this.padOffset>G-Y)this.process(J,0),Y=0;for(let M=Y;M<G;M++)q[M]=0;J.setBigUint64(G-8,BigInt(this.length*8),Q),this.process(J,0);let X=WG($),U=this.outputLen;if(U%4)throw Error("_sha2: outputLen must be aligned to 32bit");let W=U/4,V=this.get();if(W>V.length)throw Error("_sha2: outputLen bigger than state");for(let M=0;M<W;M++)X.setUint32(4*M,V[M],Q)}digest(){let{buffer:$,outputLen:q}=this;this.digestInto($);let J=$.slice(0,q);return this.destroy(),J}_cloneInto($){$||=new this.constructor,$.set(...this.get());let{blockLen:q,buffer:J,length:G,finished:Q,destroyed:Y,pos:X}=this;if($.destroyed=Y,$.finished=Q,$.length=G,$.pos=X,G%q)$.buffer.set(J);return $}clone(){return this._cloneInto()}}var Lq=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),Pq=Uint32Array.from([3238371032,914150663,812702999,4144912697,4290775857,1750603025,1694076839,3204075428]),i$=Uint32Array.from([3418070365,3238371032,1654270250,914150663,2438529370,812702999,355462360,4144912697,1731405415,4290775857,2394180231,1750603025,3675008525,1694076839,1203062813,3204075428]),d$=Uint32Array.from([1779033703,4089235720,3144134277,2227873595,1013904242,4271175723,2773480762,1595750129,1359893119,2917565137,2600822924,725511199,528734635,4215389547,1541459225,327033209]);var J9=BigInt(4294967295),vD=BigInt(32);function x2($,q=!1){if(q)return{h:Number($&J9),l:Number($>>vD&J9)};return{h:Number($>>vD&J9)|0,l:Number($&J9)|0}}function bD($,q=!1){let J=$.length,G=new Uint32Array(J),Q=new Uint32Array(J);for(let Y=0;Y<J;Y++){let{h:X,l:U}=x2($[Y],q);[G[Y],Q[Y]]=[X,U]}return[G,Q]}var eU=($,q,J)=>$>>>J,$W=($,q,J)=>$<<32-J|q>>>J,sJ=($,q,J)=>$>>>J|q<<32-J,tJ=($,q,J)=>$<<32-J|q>>>J,KQ=($,q,J)=>$<<64-J|q>>>J-32,HQ=($,q,J)=>$>>>J-32|q<<64-J;function Wq($,q,J,G){let Q=(q>>>0)+(G>>>0);return{h:$+J+(Q/4294967296|0)|0,l:Q|0}}var kD=($,q,J)=>($>>>0)+(q>>>0)+(J>>>0),mD=($,q,J,G)=>q+J+G+($/4294967296|0)|0,yD=($,q,J,G)=>($>>>0)+(q>>>0)+(J>>>0)+(G>>>0),fD=($,q,J,G,Q)=>q+J+G+Q+($/4294967296|0)|0,xD=($,q,J,G,Q)=>($>>>0)+(q>>>0)+(J>>>0)+(G>>>0)+(Q>>>0),hD=($,q,J,G,Q,Y)=>q+J+G+Q+Y+($/4294967296|0)|0;var u2=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]),UJ=new Uint32Array(64);class qW extends q9{constructor($){super(64,$,8,!1)}get(){let{A:$,B:q,C:J,D:G,E:Q,F:Y,G:X,H:U}=this;return[$,q,J,G,Q,Y,X,U]}set($,q,J,G,Q,Y,X,U){this.A=$|0,this.B=q|0,this.C=J|0,this.D=G|0,this.E=Q|0,this.F=Y|0,this.G=X|0,this.H=U|0}process($,q){for(let M=0;M<16;M++,q+=4)UJ[M]=$.getUint32(q,!1);for(let M=16;M<64;M++){let z=UJ[M-15],D=UJ[M-2],R=a0(z,7)^a0(z,18)^z>>>3,N=a0(D,17)^a0(D,19)^D>>>10;UJ[M]=N+UJ[M-7]+R+UJ[M-16]|0}let{A:J,B:G,C:Q,D:Y,E:X,F:U,G:W,H:V}=this;for(let M=0;M<64;M++){let z=a0(X,6)^a0(X,11)^a0(X,25),D=V+z+gD(X,U,W)+u2[M]+UJ[M]|0,N=(a0(J,2)^a0(J,13)^a0(J,22))+_D(J,G,Q)|0;V=W,W=U,U=X,X=Y+D|0,Y=Q,Q=G,G=J,J=D+N|0}J=J+this.A|0,G=G+this.B|0,Q=Q+this.C|0,Y=Y+this.D|0,X=X+this.E|0,U=U+this.F|0,W=W+this.G|0,V=V+this.H|0,this.set(J,G,Q,Y,X,U,W,V)}roundClean(){H0(UJ)}destroy(){this.destroyed=!0,this.set(0,0,0,0,0,0,0,0),H0(this.buffer)}}class uD extends qW{A=Lq[0]|0;B=Lq[1]|0;C=Lq[2]|0;D=Lq[3]|0;E=Lq[4]|0;F=Lq[5]|0;G=Lq[6]|0;H=Lq[7]|0;constructor(){super(32)}}class p2 extends qW{A=Pq[0]|0;B=Pq[1]|0;C=Pq[2]|0;D=Pq[3]|0;E=Pq[4]|0;F=Pq[5]|0;G=Pq[6]|0;H=Pq[7]|0;constructor(){super(28)}}var pD=(()=>bD(["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(($)=>BigInt($))))(),l2=(()=>pD[0])(),r2=(()=>pD[1])(),WJ=new Uint32Array(80),VJ=new Uint32Array(80);class OQ extends q9{constructor($){super(128,$,16,!1)}get(){let{Ah:$,Al:q,Bh:J,Bl:G,Ch:Q,Cl:Y,Dh:X,Dl:U,Eh:W,El:V,Fh:M,Fl:z,Gh:D,Gl:R,Hh:N,Hl:w}=this;return[$,q,J,G,Q,Y,X,U,W,V,M,z,D,R,N,w]}set($,q,J,G,Q,Y,X,U,W,V,M,z,D,R,N,w){this.Ah=$|0,this.Al=q|0,this.Bh=J|0,this.Bl=G|0,this.Ch=Q|0,this.Cl=Y|0,this.Dh=X|0,this.Dl=U|0,this.Eh=W|0,this.El=V|0,this.Fh=M|0,this.Fl=z|0,this.Gh=D|0,this.Gl=R|0,this.Hh=N|0,this.Hl=w|0}process($,q){for(let S=0;S<16;S++,q+=4)WJ[S]=$.getUint32(q),VJ[S]=$.getUint32(q+=4);for(let S=16;S<80;S++){let _=WJ[S-15]|0,y=VJ[S-15]|0,p=sJ(_,y,1)^sJ(_,y,8)^eU(_,y,7),F=tJ(_,y,1)^tJ(_,y,8)^$W(_,y,7),f=WJ[S-2]|0,m=VJ[S-2]|0,k=sJ(f,m,19)^KQ(f,m,61)^eU(f,m,6),l=tJ(f,m,19)^HQ(f,m,61)^$W(f,m,6),v=yD(F,l,VJ[S-7],VJ[S-16]),C=fD(v,p,k,WJ[S-7],WJ[S-16]);WJ[S]=C|0,VJ[S]=v|0}let{Ah:J,Al:G,Bh:Q,Bl:Y,Ch:X,Cl:U,Dh:W,Dl:V,Eh:M,El:z,Fh:D,Fl:R,Gh:N,Gl:w,Hh:j,Hl:B}=this;for(let S=0;S<80;S++){let _=sJ(M,z,14)^sJ(M,z,18)^KQ(M,z,41),y=tJ(M,z,14)^tJ(M,z,18)^HQ(M,z,41),p=M&D^~M&N,F=z&R^~z&w,f=xD(B,y,F,r2[S],VJ[S]),m=hD(f,j,_,p,l2[S],WJ[S]),k=f|0,l=sJ(J,G,28)^KQ(J,G,34)^KQ(J,G,39),v=tJ(J,G,28)^HQ(J,G,34)^HQ(J,G,39),C=J&Q^J&X^Q&X,I=G&Y^G&U^Y&U;j=N|0,B=w|0,N=D|0,w=R|0,D=M|0,R=z|0,{h:M,l:z}=Wq(W|0,V|0,m|0,k|0),W=X|0,V=U|0,X=Q|0,U=Y|0,Q=J|0,Y=G|0;let A=kD(k,v,I);J=mD(A,m,l,C),G=A|0}({h:J,l:G}=Wq(this.Ah|0,this.Al|0,J|0,G|0)),{h:Q,l:Y}=Wq(this.Bh|0,this.Bl|0,Q|0,Y|0),{h:X,l:U}=Wq(this.Ch|0,this.Cl|0,X|0,U|0),{h:W,l:V}=Wq(this.Dh|0,this.Dl|0,W|0,V|0),{h:M,l:z}=Wq(this.Eh|0,this.El|0,M|0,z|0),{h:D,l:R}=Wq(this.Fh|0,this.Fl|0,D|0,R|0),{h:N,l:w}=Wq(this.Gh|0,this.Gl|0,N|0,w|0),{h:j,l:B}=Wq(this.Hh|0,this.Hl|0,j|0,B|0),this.set(J,G,Q,Y,X,U,W,V,M,z,D,R,N,w,j,B)}roundClean(){H0(WJ,VJ)}destroy(){this.destroyed=!0,H0(this.buffer),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}}class lD extends OQ{Ah=d$[0]|0;Al=d$[1]|0;Bh=d$[2]|0;Bl=d$[3]|0;Ch=d$[4]|0;Cl=d$[5]|0;Dh=d$[6]|0;Dl=d$[7]|0;Eh=d$[8]|0;El=d$[9]|0;Fh=d$[10]|0;Fl=d$[11]|0;Gh=d$[12]|0;Gl=d$[13]|0;Hh=d$[14]|0;Hl=d$[15]|0;constructor(){super(64)}}class i2 extends OQ{Ah=i$[0]|0;Al=i$[1]|0;Bh=i$[2]|0;Bl=i$[3]|0;Ch=i$[4]|0;Cl=i$[5]|0;Dh=i$[6]|0;Dl=i$[7]|0;Eh=i$[8]|0;El=i$[9]|0;Fh=i$[10]|0;Fl=i$[11]|0;Gh=i$[12]|0;Gl=i$[13]|0;Hh=i$[14]|0;Hl=i$[15]|0;constructor(){super(48)}}var Q0=Uint32Array.from([2352822216,424955298,1944164710,2312950998,502970286,855612546,1738396948,1479516111,258812777,2077511080,2011393907,79989058,1067287976,1780299464,286451373,2446758561]),Y0=Uint32Array.from([573645204,4230739756,2673172387,3360449730,596883563,1867755857,2520282905,1497426621,2519219938,2827943907,3193839141,1401305490,721525244,746961066,246885852,2177182882]);class d2 extends OQ{Ah=Q0[0]|0;Al=Q0[1]|0;Bh=Q0[2]|0;Bl=Q0[3]|0;Ch=Q0[4]|0;Cl=Q0[5]|0;Dh=Q0[6]|0;Dl=Q0[7]|0;Eh=Q0[8]|0;El=Q0[9]|0;Fh=Q0[10]|0;Fl=Q0[11]|0;Gh=Q0[12]|0;Gl=Q0[13]|0;Hh=Q0[14]|0;Hl=Q0[15]|0;constructor(){super(28)}}class c2 extends OQ{Ah=Y0[0]|0;Al=Y0[1]|0;Bh=Y0[2]|0;Bl=Y0[3]|0;Ch=Y0[4]|0;Cl=Y0[5]|0;Dh=Y0[6]|0;Dl=Y0[7]|0;Eh=Y0[8]|0;El=Y0[9]|0;Fh=Y0[10]|0;Fl=Y0[11]|0;Gh=Y0[12]|0;Gl=Y0[13]|0;Hh=Y0[14]|0;Hl=Y0[15]|0;constructor(){super(32)}}var P$=nU(()=>new uD,oU(1));var G9=nU(()=>new lD,oU(3));/*! scure-base - MIT License (c) 2022 Paul Miller (paulmillr.com) */function W9($){return $ instanceof Uint8Array||ArrayBuffer.isView($)&&$.constructor.name==="Uint8Array"}function QW($){if(!W9($))throw Error("Uint8Array expected")}function nD($,q){if(!Array.isArray(q))return!1;if(q.length===0)return!0;if($)return q.every((J)=>typeof J==="string");else return q.every((J)=>Number.isSafeInteger(J))}function oD($){if(typeof $!=="function")throw Error("function expected");return!0}function MJ($,q){if(typeof q!=="string")throw Error(`${$}: string expected`);return!0}function wQ($){if(!Number.isSafeInteger($))throw Error(`invalid integer: ${$}`)}function Y9($){if(!Array.isArray($))throw Error("array expected")}function X9($,q){if(!nD(!0,q))throw Error(`${$}: array of strings expected`)}function YW($,q){if(!nD(!1,q))throw Error(`${$}: array of numbers expected`)}function P0(...$){let q=(Y)=>Y,J=(Y,X)=>(U)=>Y(X(U)),G=$.map((Y)=>Y.encode).reduceRight(J,q),Q=$.map((Y)=>Y.decode).reduce(J,q);return{encode:G,decode:Q}}function F0($){let q=typeof $==="string"?$.split(""):$,J=q.length;X9("alphabet",q);let G=new Map(q.map((Q,Y)=>[Q,Y]));return{encode:(Q)=>{return Y9(Q),Q.map((Y)=>{if(!Number.isSafeInteger(Y)||Y<0||Y>=J)throw Error(`alphabet.encode: digit index outside alphabet "${Y}". Allowed: ${$}`);return q[Y]})},decode:(Q)=>{return Y9(Q),Q.map((Y)=>{MJ("alphabet.decode",Y);let X=G.get(Y);if(X===void 0)throw Error(`Unknown letter: "${Y}". Allowed: ${$}`);return X})}}}function g0($=""){return MJ("join",$),{encode:(q)=>{return X9("join.decode",q),q.join($)},decode:(q)=>{return MJ("join.decode",q),q.split($)}}}function V9($,q="="){return wQ($),MJ("padding",q),{encode(J){X9("padding.encode",J);while(J.length*$%8)J.push(q);return J},decode(J){X9("padding.decode",J);let G=J.length;if(G*$%8)throw Error("padding: invalid, string should have whole number of bytes");for(;G>0&&J[G-1]===q;G--)if((G-1)*$%8===0)throw Error("padding: invalid, string has too much padding");return J.slice(0,G)}}}function aD($){return oD($),{encode:(q)=>q,decode:(q)=>$(q)}}function rD($,q,J){if(q<2)throw Error(`convertRadix: invalid from=${q}, base cannot be less than 2`);if(J<2)throw Error(`convertRadix: invalid to=${J}, base cannot be less than 2`);if(Y9($),!$.length)return[];let G=0,Q=[],Y=Array.from($,(U)=>{if(wQ(U),U<0||U>=q)throw Error(`invalid integer: ${U}`);return U}),X=Y.length;while(!0){let U=0,W=!0;for(let V=G;V<X;V++){let M=Y[V],z=q*U,D=z+M;if(!Number.isSafeInteger(D)||z/q!==U||D-M!==z)throw Error("convertRadix: carry overflow");let R=D/J;U=D%J;let N=Math.floor(R);if(Y[V]=N,!Number.isSafeInteger(N)||N*J+U!==D)throw Error("convertRadix: carry overflow");if(!W)continue;else if(!N)G=V;else W=!1}if(Q.push(U),W)break}for(let U=0;U<$.length-1&&$[U]===0;U++)Q.push(0);return Q.reverse()}var sD=($,q)=>q===0?$:sD(q,$%q),U9=($,q)=>$+(q-sD($,q)),Q9=(()=>{let $=[];for(let q=0;q<40;q++)$.push(2**q);return $})();function JW($,q,J,G){if(Y9($),q<=0||q>32)throw Error(`convertRadix2: wrong from=${q}`);if(J<=0||J>32)throw Error(`convertRadix2: wrong to=${J}`);if(U9(q,J)>32)throw Error(`convertRadix2: carry overflow from=${q} to=${J} carryBits=${U9(q,J)}`);let Q=0,Y=0,X=Q9[q],U=Q9[J]-1,W=[];for(let V of $){if(wQ(V),V>=X)throw Error(`convertRadix2: invalid data word=${V} from=${q}`);if(Q=Q<<q|V,Y+q>32)throw Error(`convertRadix2: carry overflow pos=${Y} from=${q}`);Y+=q;for(;Y>=J;Y-=J)W.push((Q>>Y-J&U)>>>0);let M=Q9[Y];if(M===void 0)throw Error("invalid carry");Q&=M-1}if(Q=Q<<J-Y&U,!G&&Y>=q)throw Error("Excess padding");if(!G&&Q>0)throw Error(`Non-zero padding: ${Q}`);if(G&&Y>0)W.push(Q>>>0);return W}function n2($){wQ($);let q=256;return{encode:(J)=>{if(!W9(J))throw Error("radix.encode input should be Uint8Array");return rD(Array.from(J),q,$)},decode:(J)=>{return YW("radix.decode",J),Uint8Array.from(rD(J,$,q))}}}function k0($,q=!1){if(wQ($),$<=0||$>32)throw Error("radix2: bits should be in (0..32]");if(U9(8,$)>32||U9($,8)>32)throw Error("radix2: carry overflow");return{encode:(J)=>{if(!W9(J))throw Error("radix2.encode input should be Uint8Array");return JW(Array.from(J),8,$,!q)},decode:(J)=>{return YW("radix2.decode",J),Uint8Array.from(JW(J,$,8,q))}}}function iD($){return oD($),function(...q){try{return $.apply(null,q)}catch(J){}}}var Xu=P0(k0(4),F0("0123456789ABCDEF"),g0("")),Uu=P0(k0(5),F0("ABCDEFGHIJKLMNOPQRSTUVWXYZ234567"),V9(5),g0("")),Wu=P0(k0(5),F0("ABCDEFGHIJKLMNOPQRSTUVWXYZ234567"),g0("")),Vu=P0(k0(5),F0("0123456789ABCDEFGHIJKLMNOPQRSTUV"),V9(5),g0("")),Mu=P0(k0(5),F0("0123456789ABCDEFGHIJKLMNOPQRSTUV"),g0("")),zu=P0(k0(5),F0("0123456789ABCDEFGHJKMNPQRSTVWXYZ"),g0(""),aD(($)=>$.toUpperCase().replace(/O/g,"0").replace(/[IL]/g,"1"))),tD=(()=>typeof Uint8Array.from([]).toBase64==="function"&&typeof Uint8Array.fromBase64==="function")(),eD=($,q)=>{MJ("base64",$);let J=q?/^[A-Za-z0-9=_-]+$/:/^[A-Za-z0-9=+/]+$/,G=q?"base64url":"base64";if($.length>0&&!J.test($))throw Error("invalid base64");return Uint8Array.fromBase64($,{alphabet:G,lastChunkHandling:"strict"})},XW=tD?{encode($){return QW($),$.toBase64()},decode($){return eD($,!1)}}:P0(k0(6),F0("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"),V9(6),g0("")),X0=P0(k0(6),F0("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"),g0("")),Ru=tD?{encode($){return QW($),$.toBase64({alphabet:"base64url"})},decode($){return eD($,!0)}}:P0(k0(6),F0("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_"),V9(6),g0("")),Du=P0(k0(6),F0("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_"),g0("")),UW=($)=>P0(n2(58),F0($),g0("")),Ku=UW("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"),Hu=UW("123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"),Ou=UW("rpshnaf39wBUDNEGHJKLM4PQRST7VWXYZ2bcdeCg65jkm8oFqi1tuvAxyz");var GW=P0(F0("qpzry9x8gf2tvdw0s3jn54khce6mua7l"),g0("")),dD=[996825010,642813549,513874426,1027748829,705979059];function NQ($){let q=$>>25,J=($&33554431)<<5;for(let G=0;G<dD.length;G++)if((q>>G&1)===1)J^=dD[G];return J}function cD($,q,J=1){let G=$.length,Q=1;for(let Y=0;Y<G;Y++){let X=$.charCodeAt(Y);if(X<33||X>126)throw Error(`Invalid prefix (${$})`);Q=NQ(Q)^X>>5}Q=NQ(Q);for(let Y=0;Y<G;Y++)Q=NQ(Q)^$.charCodeAt(Y)&31;for(let Y of q)Q=NQ(Q)^Y;for(let Y=0;Y<6;Y++)Q=NQ(Q);return Q^=J,GW.encode(JW([Q%Q9[30]],30,5,!1))}function $K($){let q=$==="bech32"?1:734539939,J=k0(5),G=J.decode,Q=J.encode,Y=iD(G);function X(z,D,R=90){if(MJ("bech32.encode prefix",z),W9(D))D=Array.from(D);YW("bech32.encode",D);let N=z.length;if(N===0)throw TypeError(`Invalid prefix length ${N}`);let w=N+7+D.length;if(R!==!1&&w>R)throw TypeError(`Length ${w} exceeds limit ${R}`);let j=z.toLowerCase(),B=cD(j,D,q);return`${j}1${GW.encode(D)}${B}`}function U(z,D=90){MJ("bech32.decode input",z);let R=z.length;if(R<8||D!==!1&&R>D)throw TypeError(`invalid string length: ${R} (${z}). Expected (8..${D})`);let N=z.toLowerCase();if(z!==N&&z!==z.toUpperCase())throw Error("String must be lowercase or uppercase");let w=N.lastIndexOf("1");if(w===0||w===-1)throw Error('Letter "1" must be present between prefix and data only');let j=N.slice(0,w),B=N.slice(w+1);if(B.length<6)throw Error("Data must be at least 6 characters long");let S=GW.decode(B).slice(0,-6),_=cD(j,S,q);if(!B.endsWith(_))throw Error(`Invalid checksum in ${z}: expected "${_}"`);return{prefix:j,words:S}}let W=iD(U);function V(z){let{prefix:D,words:R}=U(z,!1);return{prefix:D,words:R,bytes:G(R)}}function M(z,D){return X(z,Q(D))}return{encode:X,decode:U,encodeFromBytes:M,decodeToBytes:V,decodeUnsafe:W,fromWords:G,fromWordsUnsafe:Y,toWords:Q}}var _0=$K("bech32"),Nu=$K("bech32m");var o2=(()=>typeof Uint8Array.from([]).toHex==="function"&&typeof Uint8Array.fromHex==="function")(),a2={encode($){return QW($),$.toHex()},decode($){return MJ("hex",$),Uint8Array.fromHex($)}},wu=o2?a2:P0(k0(4),F0("0123456789abcdef"),g0(""),aD(($)=>{if(typeof $!=="string"||$.length%2!==0)throw TypeError(`hex.decode: expected string, got ${typeof $} with length ${$.length}`);return $.toLowerCase()}));function t2($,q,J,G){Cq($);let Q=$9({dkLen:32,asyncTick:10},G),{c:Y,dkLen:X,asyncTick:U}=Q;if(L$(Y,"c"),L$(X,"dkLen"),L$(U,"asyncTick"),Y<1)throw Error("iterations (c) must be >= 1");if(X<1)throw Error('"dkLen" must be >= 1');if(X>4294967295*$.outputLen)throw Error("derived key too long");let W=dU(q,"password"),V=dU(J,"salt"),M=new Uint8Array(X),z=Uq.create($,W),D=z._cloneInto().update(V);return{c:Y,dkLen:X,asyncTick:U,DK:M,PRF:z,PRFSalt:D}}function e2($,q,J,G,Q){if($.destroy(),q.destroy(),G)G.destroy();return H0(Q),J}function WW($,q,J,G){let{c:Q,dkLen:Y,DK:X,PRF:U,PRFSalt:W}=t2($,q,J,G),V,M=new Uint8Array(4),z=WG(M),D=new Uint8Array(U.outputLen);for(let R=1,N=0;N<Y;R++,N+=U.outputLen){let w=X.subarray(N,N+U.outputLen);z.setInt32(0,R,!1),(V=W._cloneInto(V)).update(M).digestInto(D),w.set(D.subarray(0,w.length));for(let j=1;j<Q;j++){U._cloneInto(V).update(D).digestInto(D);for(let B=0;B<w.length;B++)w[B]^=D[B]}}return e2(U,W,X,V,D)}function qK($,q,J,G,Q,Y){let X=$[q++]^J[G++],U=$[q++]^J[G++],W=$[q++]^J[G++],V=$[q++]^J[G++],M=$[q++]^J[G++],z=$[q++]^J[G++],D=$[q++]^J[G++],R=$[q++]^J[G++],N=$[q++]^J[G++],w=$[q++]^J[G++],j=$[q++]^J[G++],B=$[q++]^J[G++],S=$[q++]^J[G++],_=$[q++]^J[G++],y=$[q++]^J[G++],p=$[q++]^J[G++],F=X,f=U,m=W,k=V,l=M,v=z,C=D,I=R,A=N,T=w,L=j,g=B,P=S,b=_,O=y,x=p;for(let r=0;r<8;r+=2)l^=N$(F+P|0,7),A^=N$(l+F|0,9),P^=N$(A+l|0,13),F^=N$(P+A|0,18),T^=N$(v+f|0,7),b^=N$(T+v|0,9),f^=N$(b+T|0,13),v^=N$(f+b|0,18),O^=N$(L+C|0,7),m^=N$(O+L|0,9),C^=N$(m+O|0,13),L^=N$(C+m|0,18),k^=N$(x+g|0,7),I^=N$(k+x|0,9),g^=N$(I+k|0,13),x^=N$(g+I|0,18),f^=N$(F+k|0,7),m^=N$(f+F|0,9),k^=N$(m+f|0,13),F^=N$(k+m|0,18),C^=N$(v+l|0,7),I^=N$(C+v|0,9),l^=N$(I+C|0,13),v^=N$(l+I|0,18),g^=N$(L+T|0,7),A^=N$(g+L|0,9),T^=N$(A+g|0,13),L^=N$(T+A|0,18),P^=N$(x+O|0,7),b^=N$(P+x|0,9),O^=N$(b+P|0,13),x^=N$(O+b|0,18);Q[Y++]=X+F|0,Q[Y++]=U+f|0,Q[Y++]=W+m|0,Q[Y++]=V+k|0,Q[Y++]=M+l|0,Q[Y++]=z+v|0,Q[Y++]=D+C|0,Q[Y++]=R+I|0,Q[Y++]=N+A|0,Q[Y++]=w+T|0,Q[Y++]=j+L|0,Q[Y++]=B+g|0,Q[Y++]=S+P|0,Q[Y++]=_+b|0,Q[Y++]=y+O|0,Q[Y++]=p+x|0}function VW($,q,J,G,Q){let Y=G+0,X=G+16*Q;for(let U=0;U<16;U++)J[X+U]=$[q+(2*Q-1)*16+U];for(let U=0;U<Q;U++,Y+=16,q+=16){if(qK(J,X,$,q,J,Y),U>0)X+=16;qK(J,Y,$,q+=16,J,X)}}function $C($,q,J){let G=$9({dkLen:32,asyncTick:10,maxmem:1073742848},J),{N:Q,r:Y,p:X,dkLen:U,asyncTick:W,maxmem:V,onProgress:M}=G;if(L$(Q,"N"),L$(Y,"r"),L$(X,"p"),L$(U,"dkLen"),L$(W,"asyncTick"),L$(V,"maxmem"),M!==void 0&&typeof M!=="function")throw Error("progressCb must be a function");let z=128*Y,D=z/4,R=Math.pow(2,32);if(Q<=1||(Q&Q-1)!==0||Q>R)throw Error('"N" expected a power of 2, and 2^1 <= N <= 2^32');if(X<1||X>(R-1)*32/z)throw Error('"p" expected integer 1..((2^32 - 1) * 32) / (128 * r)');if(U<1||U>(R-1)*32)throw Error('"dkLen" expected integer 1..(2^32 - 1) * 32');let N=z*(Q+X+1);if(N>V)throw Error('"maxmem" limit was hit: memUsed(128*r*(N+p+1))='+N+", maxmem="+V);let w=WW(P$,$,q,{c:1,dkLen:z*X}),j=tY(w),B=tY(new Uint8Array(z*Q)),S=tY(new Uint8Array(z)),_=()=>{};if(M){let y=2*Q*X,p=Math.max(Math.floor(y/1e4),1),F=0;_=()=>{if(F++,M&&(!(F%p)||F===y))M(F/y)}}return{N:Q,r:Y,p:X,dkLen:U,blockSize32:D,V:B,B32:j,B:w,tmp:S,blockMixCb:_,asyncTick:W}}function qC($,q,J,G,Q){let Y=WW(P$,$,J,{c:1,dkLen:q});return H0(J,G,Q),Y}function MW($,q,J){let{N:G,r:Q,p:Y,dkLen:X,blockSize32:U,V:W,B32:V,B:M,tmp:z,blockMixCb:D}=$C($,q,J);iU(V);for(let R=0;R<Y;R++){let N=U*R;for(let w=0;w<U;w++)W[w]=V[N+w];for(let w=0,j=0;w<G-1;w++)VW(W,j,W,j+=U,Q),D();VW(W,(G-1)*U,V,N,Q),D();for(let w=0;w<G;w++){let j=(V[N+U-16]&G-1)>>>0;for(let B=0;B<U;B++)z[B]=V[N+B]^W[j*U+B];VW(z,0,V,N,Q),D()}}return iU(V),qC($,X,M,W,z)}/*! noble-ciphers - MIT License (c) 2023 Paul Miller (paulmillr.com) */function JC($){return $ instanceof Uint8Array||ArrayBuffer.isView($)&&$.constructor.name==="Uint8Array"&&"BYTES_PER_ELEMENT"in $&&$.BYTES_PER_ELEMENT===1}function M9($){if(typeof $!=="boolean")throw TypeError(`boolean expected, not ${$}`)}function VG($){if(typeof $!=="number")throw TypeError("number expected, got "+typeof $);if(!Number.isSafeInteger($)||$<0)throw RangeError("positive integer expected, got "+$)}function k$($,q,J=""){let G=JC($),Q=$?.length,Y=q!==void 0;if(!G||Y&&Q!==q){let X=J&&`"${J}" `,U=Y?` of length ${q}`:"",W=G?`length=${Q}`:`type=${typeof $}`,V=X+"expected Uint8Array"+U+", got "+W;if(!G)throw TypeError(V);throw RangeError(V)}return $}function zW($,q=!0){if($.destroyed)throw Error("Hash instance has been destroyed");if(q&&$.finished)throw Error("Hash#digest() has already been called")}function JK($,q,J=!1){k$($,void 0,"output");let G=q.outputLen;if($.length<G)throw RangeError("digestInto() expects output buffer of length at least "+G);if(J&&!MG($))throw Error("invalid output, must be aligned")}function Vq($){return new Uint32Array($.buffer,$.byteOffset,Math.floor($.byteLength/4))}function s0(...$){for(let q=0;q<$.length;q++)$[q].fill(0)}function GC($){return new DataView($.buffer,$.byteOffset,$.byteLength)}var eJ=(()=>new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68)(),QC=($)=>$<<24&4278190080|$<<8&16711680|$>>>8&65280|$>>>24&255;var YC=($)=>{for(let q=0;q<$.length;q++)$[q]=QC($[q]);return $},Fq=eJ?($)=>$:YC;function GK($,q){if(q==null||typeof q!=="object")throw Error("options must be defined");return Object.assign($,q)}function QK($,q){if($.length!==q.length)return!1;let J=0;for(let G=0;G<$.length;G++)J|=$[G]^q[G];return J===0}function YK($,q,J){let G=q,Q=J||(()=>[]),Y=(U,W)=>G(W,...Q(U)).update(U).digest(),X=G(new Uint8Array($),...Q(new Uint8Array(0)));return Y.outputLen=X.outputLen,Y.blockLen=X.blockLen,Y.create=(U,...W)=>G(U,...W),Y}var XK=($,q)=>{function J(G,...Q){if(k$(G,void 0,"key"),$.nonceLength!==void 0){let M=Q[0];k$(M,$.varSizeNonce?void 0:$.nonceLength,"nonce")}let Y=$.tagLength;if(Y&&Q[1]!==void 0)k$(Q[1],void 0,"AAD");let X=q(G,...Q),U=(M,z)=>{if(z!==void 0){if(M!==2)throw Error("cipher output not supported");k$(z,void 0,"output")}},W=!1;return{encrypt(M,z){if(W)throw Error("cannot encrypt() twice with same key + nonce");return W=!0,k$(M),U(X.encrypt.length,z),X.encrypt(M,z)},decrypt(M,z){if(k$(M),Y&&M.length<Y)throw Error('"ciphertext" expected length bigger than tagLength='+Y);return U(X.decrypt.length,z),X.decrypt(M,z)}}}return Object.assign(J,$),J};function jQ($,q,J=!0){if(q===void 0)return new Uint8Array($);if(k$(q,void 0,"output"),q.length!==$)throw Error('"output" expected Uint8Array of length '+$+", got: "+q.length);if(J&&!MG(q))throw Error("invalid output, must be aligned");return q}function UK($,q,J){VG($),VG(q),M9(J);let G=new Uint8Array(16),Q=GC(G);return Q.setBigUint64(0,BigInt(q),J),Q.setBigUint64(8,BigInt($),J),G}function MG($){return $.byteOffset%4===0}function zG($){return Uint8Array.from(k$($))}var VK=($)=>Uint8Array.from($.split(""),(q)=>q.charCodeAt(0)),XC=(()=>Fq(Vq(VK("expand 16-byte k"))))(),UC=(()=>Fq(Vq(VK("expand 32-byte k"))))();function w$($,q){return $<<q|$>>>32-q}var AQ=64,WC=16,RW=(()=>4294967295)(),WK=Uint32Array.of();function VC($,q,J,G,Q,Y,X,U){let W=Q.length,V=new Uint8Array(AQ),M=Vq(V),z=eJ&&MG(Q)&&MG(Y),D=z?Vq(Q):WK,R=z?Vq(Y):WK;if(!eJ){for(let N=0;N<W;X++){if($(q,J,G,M,X,U),Fq(M),X>=RW)throw Error("arx: counter overflow");let w=Math.min(AQ,W-N);for(let j=0,B;j<w;j++)B=N+j,Y[B]=Q[B]^V[j];N+=w}return}for(let N=0;N<W;X++){if($(q,J,G,M,X,U),X>=RW)throw Error("arx: counter overflow");let w=Math.min(AQ,W-N);if(z&&w===AQ){let j=N/4;if(N%4!==0)throw Error("arx: invalid block position");for(let B=0,S;B<WC;B++)S=j+B,R[S]=D[S]^M[B];N+=AQ;continue}for(let j=0,B;j<w;j++)B=N+j,Y[B]=Q[B]^V[j];N+=w}}function MK($,q){let{allowShortKeys:J,extendNonceFn:G,counterLength:Q,counterRight:Y,rounds:X}=GK({allowShortKeys:!1,counterLength:8,counterRight:!1,rounds:20},q);if(typeof $!=="function")throw Error("core must be a function");return VG(Q),VG(X),M9(Y),M9(J),(U,W,V,M,z=0)=>{k$(U,void 0,"key"),k$(W,void 0,"nonce"),k$(V,void 0,"data");let D=V.length;if(M=jQ(D,M,!1),VG(z),z<0||z>=RW)throw Error("arx: counter overflow");let R=[],N=U.length,w,j;if(N===32)R.push(w=zG(U)),j=UC;else if(N===16&&J)w=new Uint8Array(32),w.set(U),w.set(U,16),j=XC,R.push(w);else throw k$(U,32,"arx key"),Error("invalid key size");if(!eJ||!MG(W))R.push(W=zG(W));let B=Vq(w);if(G){if(W.length!==24)throw Error("arx: extended nonce must be 24 bytes");let y=W.subarray(0,16);if(eJ)G(j,B,Vq(y),B);else{let p=Fq(Uint32Array.from(j));G(p,B,Vq(y),B),s0(p),Fq(B)}W=W.subarray(16)}else if(!eJ)Fq(B);let S=16-Q;if(S!==W.length)throw Error(`arx: nonce must be ${S} or 16 bytes`);if(S!==12){let y=new Uint8Array(12);y.set(W,Y?0:12-W.length),W=y,R.push(W)}let _=Fq(Vq(W));try{return VC($,j,B,_,V,M,z,X),M}finally{s0(...R)}}}function c$($,q){return $[q++]&255|($[q++]&255)<<8}class zK{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($){$=zG(k$($,32,"key"));let q=c$($,0),J=c$($,2),G=c$($,4),Q=c$($,6),Y=c$($,8),X=c$($,10),U=c$($,12),W=c$($,14);this.r[0]=q&8191,this.r[1]=(q>>>13|J<<3)&8191,this.r[2]=(J>>>10|G<<6)&7939,this.r[3]=(G>>>7|Q<<9)&8191,this.r[4]=(Q>>>4|Y<<12)&255,this.r[5]=Y>>>1&8190,this.r[6]=(Y>>>14|X<<2)&8191,this.r[7]=(X>>>11|U<<5)&8065,this.r[8]=(U>>>8|W<<8)&8191,this.r[9]=W>>>5&127;for(let V=0;V<8;V++)this.pad[V]=c$($,16+2*V)}process($,q,J=!1){let G=J?0:2048,{h:Q,r:Y}=this,X=Y[0],U=Y[1],W=Y[2],V=Y[3],M=Y[4],z=Y[5],D=Y[6],R=Y[7],N=Y[8],w=Y[9],j=c$($,q+0),B=c$($,q+2),S=c$($,q+4),_=c$($,q+6),y=c$($,q+8),p=c$($,q+10),F=c$($,q+12),f=c$($,q+14),m=Q[0]+(j&8191),k=Q[1]+((j>>>13|B<<3)&8191),l=Q[2]+((B>>>10|S<<6)&8191),v=Q[3]+((S>>>7|_<<9)&8191),C=Q[4]+((_>>>4|y<<12)&8191),I=Q[5]+(y>>>1&8191),A=Q[6]+((y>>>14|p<<2)&8191),T=Q[7]+((p>>>11|F<<5)&8191),L=Q[8]+((F>>>8|f<<8)&8191),g=Q[9]+(f>>>5|G),P=0,b=P+m*X+k*(5*w)+l*(5*N)+v*(5*R)+C*(5*D);P=b>>>13,b&=8191,b+=I*(5*z)+A*(5*M)+T*(5*V)+L*(5*W)+g*(5*U),P+=b>>>13,b&=8191;let O=P+m*U+k*X+l*(5*w)+v*(5*N)+C*(5*R);P=O>>>13,O&=8191,O+=I*(5*D)+A*(5*z)+T*(5*M)+L*(5*V)+g*(5*W),P+=O>>>13,O&=8191;let x=P+m*W+k*U+l*X+v*(5*w)+C*(5*N);P=x>>>13,x&=8191,x+=I*(5*R)+A*(5*D)+T*(5*z)+L*(5*M)+g*(5*V),P+=x>>>13,x&=8191;let r=P+m*V+k*W+l*U+v*X+C*(5*w);P=r>>>13,r&=8191,r+=I*(5*N)+A*(5*R)+T*(5*D)+L*(5*z)+g*(5*M),P+=r>>>13,r&=8191;let Z=P+m*M+k*V+l*W+v*U+C*X;P=Z>>>13,Z&=8191,Z+=I*(5*w)+A*(5*N)+T*(5*R)+L*(5*D)+g*(5*z),P+=Z>>>13,Z&=8191;let o=P+m*z+k*M+l*V+v*W+C*U;P=o>>>13,o&=8191,o+=I*X+A*(5*w)+T*(5*N)+L*(5*R)+g*(5*D),P+=o>>>13,o&=8191;let q$=P+m*D+k*z+l*M+v*V+C*W;P=q$>>>13,q$&=8191,q$+=I*U+A*X+T*(5*w)+L*(5*N)+g*(5*R),P+=q$>>>13,q$&=8191;let Y$=P+m*R+k*D+l*z+v*M+C*V;P=Y$>>>13,Y$&=8191,Y$+=I*W+A*U+T*X+L*(5*w)+g*(5*N),P+=Y$>>>13,Y$&=8191;let G$=P+m*N+k*R+l*D+v*z+C*M;P=G$>>>13,G$&=8191,G$+=I*V+A*W+T*U+L*X+g*(5*w),P+=G$>>>13,G$&=8191;let t=P+m*w+k*N+l*R+v*D+C*z;P=t>>>13,t&=8191,t+=I*M+A*V+T*W+L*U+g*X,P+=t>>>13,t&=8191,P=(P<<2)+P|0,P=P+b|0,b=P&8191,P=P>>>13,O+=P,Q[0]=b,Q[1]=O,Q[2]=x,Q[3]=r,Q[4]=Z,Q[5]=o,Q[6]=q$,Q[7]=Y$,Q[8]=G$,Q[9]=t}finalize(){let{h:$,pad:q}=this,J=new Uint16Array(10),G=$[1]>>>13;$[1]&=8191;for(let X=2;X<10;X++)$[X]+=G,G=$[X]>>>13,$[X]&=8191;$[0]+=G*5,G=$[0]>>>13,$[0]&=8191,$[1]+=G,G=$[1]>>>13,$[1]&=8191,$[2]+=G,J[0]=$[0]+5,G=J[0]>>>13,J[0]&=8191;for(let X=1;X<10;X++)J[X]=$[X]+G,G=J[X]>>>13,J[X]&=8191;J[9]-=8192;let Q=(G^1)-1;for(let X=0;X<10;X++)J[X]&=Q;Q=~Q;for(let X=0;X<10;X++)$[X]=$[X]&Q|J[X];$[0]=($[0]|$[1]<<13)&65535,$[1]=($[1]>>>3|$[2]<<10)&65535,$[2]=($[2]>>>6|$[3]<<7)&65535,$[3]=($[3]>>>9|$[4]<<4)&65535,$[4]=($[4]>>>12|$[5]<<1|$[6]<<14)&65535,$[5]=($[6]>>>2|$[7]<<11)&65535,$[6]=($[7]>>>5|$[8]<<8)&65535,$[7]=($[8]>>>8|$[9]<<5)&65535;let Y=$[0]+q[0];$[0]=Y&65535;for(let X=1;X<8;X++)Y=($[X]+q[X]|0)+(Y>>>16)|0,$[X]=Y&65535;s0(J)}update($){zW(this),k$($),$=zG($);let{buffer:q,blockLen:J}=this,G=$.length;for(let Q=0;Q<G;){let Y=Math.min(J-this.pos,G-Q);if(Y===J){for(;J<=G-Q;Q+=J)this.process($,Q);continue}if(q.set($.subarray(Q,Q+Y),this.pos),this.pos+=Y,Q+=Y,this.pos===J)this.process(q,0,!1),this.pos=0}return this}destroy(){this.destroyed=!0,s0(this.h,this.r,this.buffer,this.pad)}digestInto($){zW(this),JK($,this),this.finished=!0;let{buffer:q,h:J}=this,{pos:G}=this;if(G){q[G++]=1;for(;G<16;G++)q[G]=0;this.process(q,0,!0)}this.finalize();let Q=0;for(let Y=0;Y<8;Y++)$[Q++]=J[Y]>>>0,$[Q++]=J[Y]>>>8}digest(){let{buffer:$,outputLen:q}=this;this.digestInto($);let J=$.slice(0,q);return this.destroy(),J}}var RK=YK(32,($)=>new zK($));function MC($,q,J,G,Q,Y=20){let X=$[0],U=$[1],W=$[2],V=$[3],M=q[0],z=q[1],D=q[2],R=q[3],N=q[4],w=q[5],j=q[6],B=q[7],S=Q,_=J[0],y=J[1],p=J[2],F=X,f=U,m=W,k=V,l=M,v=z,C=D,I=R,A=N,T=w,L=j,g=B,P=S,b=_,O=y,x=p;for(let Z=0;Z<Y;Z+=2)F=F+l|0,P=w$(P^F,16),A=A+P|0,l=w$(l^A,12),F=F+l|0,P=w$(P^F,8),A=A+P|0,l=w$(l^A,7),f=f+v|0,b=w$(b^f,16),T=T+b|0,v=w$(v^T,12),f=f+v|0,b=w$(b^f,8),T=T+b|0,v=w$(v^T,7),m=m+C|0,O=w$(O^m,16),L=L+O|0,C=w$(C^L,12),m=m+C|0,O=w$(O^m,8),L=L+O|0,C=w$(C^L,7),k=k+I|0,x=w$(x^k,16),g=g+x|0,I=w$(I^g,12),k=k+I|0,x=w$(x^k,8),g=g+x|0,I=w$(I^g,7),F=F+v|0,x=w$(x^F,16),L=L+x|0,v=w$(v^L,12),F=F+v|0,x=w$(x^F,8),L=L+x|0,v=w$(v^L,7),f=f+C|0,P=w$(P^f,16),g=g+P|0,C=w$(C^g,12),f=f+C|0,P=w$(P^f,8),g=g+P|0,C=w$(C^g,7),m=m+I|0,b=w$(b^m,16),A=A+b|0,I=w$(I^A,12),m=m+I|0,b=w$(b^m,8),A=A+b|0,I=w$(I^A,7),k=k+l|0,O=w$(O^k,16),T=T+O|0,l=w$(l^T,12),k=k+l|0,O=w$(O^k,8),T=T+O|0,l=w$(l^T,7);let r=0;G[r++]=X+F|0,G[r++]=U+f|0,G[r++]=W+m|0,G[r++]=V+k|0,G[r++]=M+l|0,G[r++]=z+v|0,G[r++]=D+C|0,G[r++]=R+I|0,G[r++]=N+A|0,G[r++]=w+T|0,G[r++]=j+L|0,G[r++]=B+g|0,G[r++]=S+P|0,G[r++]=_+b|0,G[r++]=y+O|0,G[r++]=p+x|0}var zC=MK(MC,{counterRight:!1,counterLength:4,allowShortKeys:!1});var RC=new Uint8Array(16),DK=($,q)=>{$.update(q);let J=q.length%16;if(J)$.update(RC.subarray(J))},DC=new Uint8Array(32);function KK($,q,J,G,Q){if(Q!==void 0)k$(Q,void 0,"AAD");let Y=$(q,J,DC),X=UK(G.length,Q?Q.length:0,!0),U=RK.create(Y);if(Q)DK(U,Q);DK(U,G),U.update(X);let W=U.digest();return s0(Y,X),W}var KC=($)=>(q,J,G)=>{return{encrypt(Y,X){let U=Y.length;X=jQ(U+16,X,!1),X.set(Y);let W=X.subarray(0,-16);$(q,J,W,W,1);let V=KK($,q,J,W,G);return X.set(V,U),s0(V),X},decrypt(Y,X){X=jQ(Y.length-16,X,!1);let U=Y.subarray(0,-16),W=Y.subarray(-16),V=KK($,q,J,U,G);if(!QK(W,V))throw s0(V),Error("invalid tag");return X.set(Y.subarray(0,-16)),$(q,J,X,X,1),s0(V),X}}},m0=XK({blockSize:64,nonceLength:12,tagLength:16},KC(zC));/*! noble-hashes - MIT License (c) 2022 Paul Miller (paulmillr.com) */function RG($){return $ instanceof Uint8Array||ArrayBuffer.isView($)&&$.constructor.name==="Uint8Array"}function h$($,q=""){if(!Number.isSafeInteger($)||$<0){let J=q&&`"${q}" `;throw Error(`${J}expected integer >= 0, got ${$}`)}}function Q$($,q,J=""){let G=RG($),Q=$?.length,Y=q!==void 0;if(!G||Y&&Q!==q){let X=J&&`"${J}" `,U=Y?` of length ${q}`:"",W=G?`length=${Q}`:`type=${typeof $}`;throw Error(X+"expected Uint8Array"+U+", got "+W)}return $}function y0($){if(typeof $!=="function"||typeof $.create!=="function")throw Error("Hash must wrapped by utils.createHasher");h$($.outputLen),h$($.blockLen)}function _q($,q=!0){if($.destroyed)throw Error("Hash instance has been destroyed");if(q&&$.finished)throw Error("Hash#digest() has already been called")}function z9($,q){Q$($,void 0,"digestInto() output");let J=q.outputLen;if($.length<J)throw Error('"digestInto() output" expected to be of length >='+J)}function R9($){return new Uint32Array($.buffer,$.byteOffset,Math.floor($.byteLength/4))}function T0(...$){for(let q=0;q<$.length;q++)$[q].fill(0)}function D9($){return new DataView($.buffer,$.byteOffset,$.byteLength)}function t0($,q){return $<<32-q|$>>>q}var HC=(()=>new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68)();function OC($){return $<<24&4278190080|$<<8&16711680|$>>>8&65280|$>>>24&255}function NC($){for(let q=0;q<$.length;q++)$[q]=OC($[q]);return $}var DW=HC?($)=>$:NC,OK=(()=>typeof Uint8Array.from([]).toHex==="function"&&typeof Uint8Array.fromHex==="function")(),wC=Array.from({length:256},($,q)=>q.toString(16).padStart(2,"0"));function $8($){if(Q$($),OK)return $.toHex();let q="";for(let J=0;J<$.length;J++)q+=wC[$[J]];return q}var gq={_0:48,_9:57,A:65,F:70,a:97,f:102};function HK($){if($>=gq._0&&$<=gq._9)return $-gq._0;if($>=gq.A&&$<=gq.F)return $-(gq.A-10);if($>=gq.a&&$<=gq.f)return $-(gq.a-10);return}function q8($){if(typeof $!=="string")throw Error("hex string expected, got "+typeof $);if(OK)return Uint8Array.fromHex($);let q=$.length,J=q/2;if(q%2)throw Error("hex string expected, got unpadded hex of length "+q);let G=new Uint8Array(J);for(let Q=0,Y=0;Q<J;Q++,Y+=2){let X=HK($.charCodeAt(Y)),U=HK($.charCodeAt(Y+1));if(X===void 0||U===void 0){let W=$[Y]+$[Y+1];throw Error('hex string expected, got non-hex character "'+W+'" at index '+Y)}G[Q]=X*16+U}return G}function _$(...$){let q=0;for(let G=0;G<$.length;G++){let Q=$[G];Q$(Q),q+=Q.length}let J=new Uint8Array(q);for(let G=0,Q=0;G<$.length;G++){let Y=$[G];J.set(Y,Q),Q+=Y.length}return J}function DG($,q={}){let J=(Q,Y)=>$(Y).update(Q).digest(),G=$(void 0);return J.outputLen=G.outputLen,J.blockLen=G.blockLen,J.create=(Q)=>$(Q),Object.assign(J,q),Object.freeze(J)}function zJ($=32){let q=typeof globalThis==="object"?globalThis.crypto:null;if(typeof q?.getRandomValues!=="function")throw Error("crypto.getRandomValues must be defined");return q.getRandomValues(new Uint8Array($))}var RJ=($)=>({oid:Uint8Array.from([6,9,96,134,72,1,101,3,4,2,$])});/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */var HW=BigInt(0),KW=BigInt(1);function ZQ($,q=""){if(typeof $!=="boolean"){let J=q&&`"${q}" `;throw Error(J+"expected boolean, got type="+typeof $)}return $}function NK($){if(typeof $==="bigint"){if(!K9($))throw Error("positive bigint expected, got "+$)}else h$($);return $}function BQ($){let q=NK($).toString(16);return q.length&1?"0"+q:q}function wK($){if(typeof $!=="string")throw Error("hex string expected, got "+typeof $);return $===""?HW:BigInt("0x"+$)}function DJ($){return wK($8($))}function KJ($){return wK($8(H9(Q$($)).reverse()))}function KG($,q){h$(q),$=NK($);let J=q8($.toString(16).padStart(q*2,"0"));if(J.length!==q)throw Error("number too large");return J}function TQ($,q){return KG($,q).reverse()}function H9($){return Uint8Array.from($)}function HJ($){return Uint8Array.from($,(q,J)=>{let G=q.charCodeAt(0);if(q.length!==1||G>127)throw Error(`string contains non-ASCII character "${$[J]}" with code ${G} at position ${J}`);return G})}var K9=($)=>typeof $==="bigint"&&HW<=$;function jC($,q,J){return K9($)&&K9(q)&&K9(J)&&q<=$&&$<J}function SQ($,q,J,G){if(!jC(q,J,G))throw Error("expected valid "+$+": "+J+" <= n < "+G+", got "+q)}function OW($){let q;for(q=0;$>HW;$>>=KW,q+=1);return q}var IQ=($)=>(KW<<BigInt($))-KW;function jK($,q,J){if(h$($,"hashLen"),h$(q,"qByteLen"),typeof J!=="function")throw Error("hmacFn must be a function");let G=(j)=>new Uint8Array(j),Q=Uint8Array.of(),Y=Uint8Array.of(0),X=Uint8Array.of(1),U=1000,W=G($),V=G($),M=0,z=()=>{W.fill(1),V.fill(0),M=0},D=(...j)=>J(V,_$(W,...j)),R=(j=Q)=>{if(V=D(Y,j),W=D(),j.length===0)return;V=D(X,j),W=D()},N=()=>{if(M++>=U)throw Error("drbg: tried max amount of iterations");let j=0,B=[];while(j<q){W=D();let S=W.slice();B.push(S),j+=W.length}return _$(...B)};return(j,B)=>{z(),R(j);let S=void 0;while(!(S=B(N())))R();return z(),S}}function J8($,q={},J={}){if(!$||typeof $!=="object")throw Error("expected valid options object");function G(Y,X,U){let W=$[Y];if(U&&W===void 0)return;let V=typeof W;if(V!==X||W===null)throw Error(`param "${Y}" is invalid: expected ${X}, got ${V}`)}let Q=(Y,X)=>Object.entries(Y).forEach(([U,W])=>G(U,W,X));Q(q,!1),Q(J,!0)}function NW($){let q=new WeakMap;return(J,...G)=>{let Q=q.get(J);if(Q!==void 0)return Q;let Y=$(J,...G);return q.set(J,Y),Y}}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */var N0=BigInt(0),U0=BigInt(1),G8=BigInt(2),BK=BigInt(3),TK=BigInt(4),SK=BigInt(5),AC=BigInt(7),IK=BigInt(8),ZC=BigInt(9),CK=BigInt(16);function O0($,q){let J=$%q;return J>=N0?J:q+J}function f0($,q,J){let G=$;while(q-- >N0)G*=G,G%=J;return G}function AK($,q){if($===N0)throw Error("invert: expected non-zero number");if(q<=N0)throw Error("invert: expected positive modulus, got "+q);let J=O0($,q),G=q,Q=N0,Y=U0,X=U0,U=N0;while(J!==N0){let V=G/J,M=G%J,z=Q-X*V,D=Y-U*V;G=J,J=M,Q=X,Y=U,X=z,U=D}if(G!==U0)throw Error("invert: does not exist");return O0(Q,q)}function wW($,q,J){if(!$.eql($.sqr(q),J))throw Error("Cannot find square root")}function EK($,q){let J=($.ORDER+U0)/TK,G=$.pow(q,J);return wW($,G,q),G}function BC($,q){let J=($.ORDER-SK)/IK,G=$.mul(q,G8),Q=$.pow(G,J),Y=$.mul(q,Q),X=$.mul($.mul(Y,G8),Q),U=$.mul(Y,$.sub(X,$.ONE));return wW($,U,q),U}function TC($){let q=O9($),J=LK($),G=J(q,q.neg(q.ONE)),Q=J(q,G),Y=J(q,q.neg(G)),X=($+AC)/CK;return(U,W)=>{let V=U.pow(W,X),M=U.mul(V,G),z=U.mul(V,Q),D=U.mul(V,Y),R=U.eql(U.sqr(M),W),N=U.eql(U.sqr(z),W);V=U.cmov(V,M,R),M=U.cmov(D,z,N);let w=U.eql(U.sqr(M),W),j=U.cmov(V,M,w);return wW(U,j,W),j}}function LK($){if($<BK)throw Error("sqrt is not defined for small field");let q=$-U0,J=0;while(q%G8===N0)q/=G8,J++;let G=G8,Q=O9($);while(ZK(Q,G)===1)if(G++>1000)throw Error("Cannot find square root: probably non-prime P");if(J===1)return EK;let Y=Q.pow(G,q),X=(q+U0)/G8;return function(W,V){if(W.is0(V))return V;if(ZK(W,V)!==1)throw Error("Cannot find square root");let M=J,z=W.mul(W.ONE,Y),D=W.pow(V,q),R=W.pow(V,X);while(!W.eql(D,W.ONE)){if(W.is0(D))return W.ZERO;let N=1,w=W.sqr(D);while(!W.eql(w,W.ONE))if(N++,w=W.sqr(w),N===M)throw Error("Cannot find square root");let j=U0<<BigInt(M-N-1),B=W.pow(z,j);M=N,z=W.sqr(B),D=W.mul(D,z),R=W.mul(R,B)}return R}}function SC($){if($%TK===BK)return EK;if($%IK===SK)return BC;if($%CK===ZC)return TC($);return LK($)}var IC=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function jW($){let q={ORDER:"bigint",BYTES:"number",BITS:"number"},J=IC.reduce((G,Q)=>{return G[Q]="function",G},q);return J8($,J),$}function CC($,q,J){if(J<N0)throw Error("invalid exponent, negatives unsupported");if(J===N0)return $.ONE;if(J===U0)return q;let G=$.ONE,Q=q;while(J>N0){if(J&U0)G=$.mul(G,Q);Q=$.sqr(Q),J>>=U0}return G}function CQ($,q,J=!1){let G=Array(q.length).fill(J?$.ZERO:void 0),Q=q.reduce((X,U,W)=>{if($.is0(U))return X;return G[W]=X,$.mul(X,U)},$.ONE),Y=$.inv(Q);return q.reduceRight((X,U,W)=>{if($.is0(U))return X;return G[W]=$.mul(X,G[W]),$.mul(X,U)},Y),G}function ZK($,q){let J=($.ORDER-U0)/G8,G=$.pow(q,J),Q=$.eql(G,$.ONE),Y=$.eql(G,$.ZERO),X=$.eql(G,$.neg($.ONE));if(!Q&&!Y&&!X)throw Error("invalid Legendre symbol result");return Q?1:Y?0:-1}function EC($,q){if(q!==void 0)h$(q);let J=q!==void 0?q:$.toString(2).length,G=Math.ceil(J/8);return{nBitLength:J,nByteLength:G}}class PK{ORDER;BITS;BYTES;isLE;ZERO=N0;ONE=U0;_lengths;_sqrt;_mod;constructor($,q={}){if($<=N0)throw Error("invalid field: expected ORDER > 0, got "+$);let J=void 0;if(this.isLE=!1,q!=null&&typeof q==="object"){if(typeof q.BITS==="number")J=q.BITS;if(typeof q.sqrt==="function")this.sqrt=q.sqrt;if(typeof q.isLE==="boolean")this.isLE=q.isLE;if(q.allowedLengths)this._lengths=q.allowedLengths?.slice();if(typeof q.modFromBytes==="boolean")this._mod=q.modFromBytes}let{nBitLength:G,nByteLength:Q}=EC($,J);if(Q>2048)throw Error("invalid field: expected ORDER of <= 2048 bytes");this.ORDER=$,this.BITS=G,this.BYTES=Q,this._sqrt=void 0,Object.preventExtensions(this)}create($){return O0($,this.ORDER)}isValid($){if(typeof $!=="bigint")throw Error("invalid field element: expected bigint, got "+typeof $);return N0<=$&&$<this.ORDER}is0($){return $===N0}isValidNot0($){return!this.is0($)&&this.isValid($)}isOdd($){return($&U0)===U0}neg($){return O0(-$,this.ORDER)}eql($,q){return $===q}sqr($){return O0($*$,this.ORDER)}add($,q){return O0($+q,this.ORDER)}sub($,q){return O0($-q,this.ORDER)}mul($,q){return O0($*q,this.ORDER)}pow($,q){return CC(this,$,q)}div($,q){return O0($*AK(q,this.ORDER),this.ORDER)}sqrN($){return $*$}addN($,q){return $+q}subN($,q){return $-q}mulN($,q){return $*q}inv($){return AK($,this.ORDER)}sqrt($){if(!this._sqrt)this._sqrt=SC(this.ORDER);return this._sqrt(this,$)}toBytes($){return this.isLE?TQ($,this.BYTES):KG($,this.BYTES)}fromBytes($,q=!1){Q$($);let{_lengths:J,BYTES:G,isLE:Q,ORDER:Y,_mod:X}=this;if(J){if(!J.includes($.length)||$.length>G)throw Error("Field.fromBytes: expected "+J+" bytes, got "+$.length);let W=new Uint8Array(G);W.set($,Q?0:W.length-$.length),$=W}if($.length!==G)throw Error("Field.fromBytes: expected "+G+" bytes, got "+$.length);let U=Q?KJ($):DJ($);if(X)U=O0(U,Y);if(!q){if(!this.isValid(U))throw Error("invalid field element: outside of range 0..ORDER")}return U}invertBatch($){return CQ(this,$)}cmov($,q,J){return J?q:$}}function O9($,q={}){return new PK($,q)}function FK($){if(typeof $!=="bigint")throw Error("field order must be bigint");let q=$.toString(2).length;return Math.ceil(q/8)}function AW($){let q=FK($);return q+Math.ceil(q/2)}function gK($,q,J=!1){Q$($);let G=$.length,Q=FK(q),Y=AW(q);if(G<16||G<Y||G>1024)throw Error("expected "+Y+"-1024 bytes of input, got "+G);let X=J?KJ($):DJ($),U=O0(X,q-U0)+U0;return J?TQ(U,Q):KG(U,Q)}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */var HG=BigInt(0),Q8=BigInt(1);function EQ($,q){let J=q.negate();return $?J:q}function SW($,q){let J=CQ($.Fp,q.map((G)=>G.Z));return q.map((G,Q)=>$.fromAffine(G.toAffine(J[Q])))}function kK($,q){if(!Number.isSafeInteger($)||$<=0||$>q)throw Error("invalid window size, expected [1.."+q+"], got W="+$)}function ZW($,q){kK($,q);let J=Math.ceil(q/$)+1,G=2**($-1),Q=2**$,Y=IQ($),X=BigInt($);return{windows:J,windowSize:G,mask:Y,maxNumber:Q,shiftBy:X}}function _K($,q,J){let{windowSize:G,mask:Q,maxNumber:Y,shiftBy:X}=J,U=Number($&Q),W=$>>X;if(U>G)U-=Y,W+=Q8;let V=q*G,M=V+Math.abs(U)-1,z=U===0,D=U<0,R=q%2!==0;return{nextN:W,offset:M,isZero:z,isNeg:D,isNegF:R,offsetF:V}}var BW=new WeakMap,mK=new WeakMap;function TW($){return mK.get($)||1}function vK($){if($!==HG)throw Error("invalid wNAF")}class IW{BASE;ZERO;Fn;bits;constructor($,q){this.BASE=$.BASE,this.ZERO=$.ZERO,this.Fn=$.Fn,this.bits=q}_unsafeLadder($,q,J=this.ZERO){let G=$;while(q>HG){if(q&Q8)J=J.add(G);G=G.double(),q>>=Q8}return J}precomputeWindow($,q){let{windows:J,windowSize:G}=ZW(q,this.bits),Q=[],Y=$,X=Y;for(let U=0;U<J;U++){X=Y,Q.push(X);for(let W=1;W<G;W++)X=X.add(Y),Q.push(X);Y=X.double()}return Q}wNAF($,q,J){if(!this.Fn.isValid(J))throw Error("invalid scalar");let G=this.ZERO,Q=this.BASE,Y=ZW($,this.bits);for(let X=0;X<Y.windows;X++){let{nextN:U,offset:W,isZero:V,isNeg:M,isNegF:z,offsetF:D}=_K(J,X,Y);if(J=U,V)Q=Q.add(EQ(z,q[D]));else G=G.add(EQ(M,q[W]))}return vK(J),{p:G,f:Q}}wNAFUnsafe($,q,J,G=this.ZERO){let Q=ZW($,this.bits);for(let Y=0;Y<Q.windows;Y++){if(J===HG)break;let{nextN:X,offset:U,isZero:W,isNeg:V}=_K(J,Y,Q);if(J=X,W)continue;else{let M=q[U];G=G.add(V?M.negate():M)}}return vK(J),G}getPrecomputes($,q,J){let G=BW.get(q);if(!G){if(G=this.precomputeWindow(q,$),$!==1){if(typeof J==="function")G=J(G);BW.set(q,G)}}return G}cached($,q,J){let G=TW($);return this.wNAF(G,this.getPrecomputes(G,$,J),q)}unsafe($,q,J,G){let Q=TW($);if(Q===1)return this._unsafeLadder($,q,G);return this.wNAFUnsafe(Q,this.getPrecomputes(Q,$,J),q,G)}createCache($,q){kK(q,this.bits),mK.set($,q),BW.delete($)}hasCache($){return TW($)!==1}}function yK($,q,J,G){let Q=q,Y=$.ZERO,X=$.ZERO;while(J>HG||G>HG){if(J&Q8)Y=Y.add(Q);if(G&Q8)X=X.add(Q);Q=Q.double(),J>>=Q8,G>>=Q8}return{p1:Y,p2:X}}function bK($,q,J){if(q){if(q.ORDER!==$)throw Error("Field.ORDER must match order: Fp == p, Fn == n");return jW(q),q}else return O9($,{isLE:J})}function fK($,q,J={},G){if(G===void 0)G=$==="edwards";if(!q||typeof q!=="object")throw Error(`expected valid ${$} CURVE object`);for(let W of["p","n","h"]){let V=q[W];if(!(typeof V==="bigint"&&V>HG))throw Error(`CURVE.${W} must be positive bigint`)}let Q=bK(q.p,J.Fp,G),Y=bK(q.n,J.Fn,G),U=["Gx","Gy","a",$==="weierstrass"?"b":"d"];for(let W of U)if(!Q.isValid(q[W]))throw Error(`CURVE.${W} must be valid field element of CURVE.Fp`);return q=Object.freeze(Object.assign({},q)),{CURVE:q,Fp:Q,Fn:Y}}function N9($,q){return function(G){let Q=$(G);return{secretKey:Q,publicKey:q(Q)}}}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */var LQ=BigInt(0),OG=BigInt(1),w9=BigInt(2);function LC($){return J8($,{adjustScalarBytes:"function",powPminus2:"function"}),Object.freeze({...$})}function xK($){let q=LC($),{P:J,type:G,adjustScalarBytes:Q,powPminus2:Y,randomBytes:X}=q,U=G==="x25519";if(!U&&G!=="x448")throw Error("invalid type");let W=X||zJ,V=U?255:448,M=U?32:56,z=U?BigInt(9):BigInt(5),D=U?BigInt(121665):BigInt(39081),R=U?w9**BigInt(254):w9**BigInt(447),N=U?BigInt(8)*w9**BigInt(251)-OG:BigInt(4)*w9**BigInt(445)-OG,w=R+N+OG,j=(A)=>O0(A,J),B=S(z);function S(A){return TQ(j(A),M)}function _(A){let T=H9(Q$(A,M,"uCoordinate"));if(U)T[31]&=127;return j(KJ(T))}function y(A){return KJ(Q(H9(Q$(A,M,"scalar"))))}function p(A,T){let L=l(_(T),y(A));if(L===LQ)throw Error("invalid private or public key received");return S(L)}function F(A){return p(A,B)}let f=F,m=p;function k(A,T,L){let g=j(A*(T-L));return T=j(T-g),L=j(L+g),{x_2:T,x_3:L}}function l(A,T){SQ("u",A,LQ,J),SQ("scalar",T,R,w);let L=T,g=A,P=OG,b=LQ,O=A,x=OG,r=LQ;for(let o=BigInt(V-1);o>=LQ;o--){let q$=L>>o&OG;r^=q$,{x_2:P,x_3:O}=k(r,P,O),{x_2:b,x_3:x}=k(r,b,x),r=q$;let Y$=P+b,G$=j(Y$*Y$),t=P-b,O$=j(t*t),A$=G$-O$,S$=O+x,y$=O-x,z0=j(y$*Y$),qq=j(S$*t),uq=z0+qq,pq=z0-qq;O=j(uq*uq),x=j(g*j(pq*pq)),P=j(G$*O$),b=j(A$*(G$+j(D*A$)))}({x_2:P,x_3:O}=k(r,P,O)),{x_2:b,x_3:x}=k(r,b,x);let Z=Y(b);return j(P*Z)}let v={secretKey:M,publicKey:M,seed:M},C=(A=W(M))=>{return Q$(A,v.seed,"seed"),A},I={randomSecretKey:C};return Object.freeze({keygen:N9(C,f),getSharedSecret:m,getPublicKey:f,scalarMult:p,scalarMultBase:F,utils:I,GuBytes:B.slice(),lengths:v})}class CW{oHash;iHash;blockLen;outputLen;finished=!1;destroyed=!1;constructor($,q){if(y0($),Q$(q,void 0,"key"),this.iHash=$.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 J=this.blockLen,G=new Uint8Array(J);G.set(q.length>J?$.create().update(q).digest():q);for(let Q=0;Q<G.length;Q++)G[Q]^=54;this.iHash.update(G),this.oHash=$.create();for(let Q=0;Q<G.length;Q++)G[Q]^=106;this.oHash.update(G),T0(G)}update($){return _q(this),this.iHash.update($),this}digestInto($){_q(this),Q$($,this.outputLen,"output"),this.finished=!0,this.iHash.digestInto($),this.oHash.update($),this.oHash.digestInto($),this.destroy()}digest(){let $=new Uint8Array(this.oHash.outputLen);return this.digestInto($),$}_cloneInto($){$||=Object.create(Object.getPrototypeOf(this),{});let{oHash:q,iHash:J,finished:G,destroyed:Q,blockLen:Y,outputLen:X}=this;return $=$,$.finished=G,$.destroyed=Q,$.blockLen=Y,$.outputLen=X,$.oHash=q._cloneInto($.oHash),$.iHash=J._cloneInto($.iHash),$}clone(){return this._cloneInto()}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}}var NG=($,q,J)=>new CW($,q).update(J).digest();NG.create=($,q)=>new CW($,q);/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */var hK=($,q)=>($+($>=0?q:-q)/pK)/q;function PC($,q,J){let[[G,Q],[Y,X]]=q,U=hK(X*$,J),W=hK(-Q*$,J),V=$-U*G-W*Y,M=-U*Q-W*X,z=V<vq,D=M<vq;if(z)V=-V;if(D)M=-M;let R=IQ(Math.ceil(OW(J)/2))+wG;if(V<vq||V>=R||M<vq||M>=R)throw Error("splitScalar (endomorphism): failed, k="+$);return{k1neg:z,k1:V,k2neg:D,k2:M}}function LW($){if(!["compact","recovered","der"].includes($))throw Error('Signature format must be "compact", "recovered", or "der"');return $}function EW($,q){let J={};for(let G of Object.keys(q))J[G]=$[G]===void 0?q[G]:$[G];if(ZQ(J.lowS,"lowS"),ZQ(J.prehash,"prehash"),J.format!==void 0)LW(J.format);return J}class uK extends Error{constructor($=""){super($)}}var OJ={Err:uK,_tlv:{encode:($,q)=>{let{Err:J}=OJ;if($<0||$>256)throw new J("tlv.encode: wrong tag");if(q.length&1)throw new J("tlv.encode: unpadded data");let G=q.length/2,Q=BQ(G);if(Q.length/2&128)throw new J("tlv.encode: long form length too big");let Y=G>127?BQ(Q.length/2|128):"";return BQ($)+Y+Q+q},decode($,q){let{Err:J}=OJ,G=0;if($<0||$>256)throw new J("tlv.encode: wrong tag");if(q.length<2||q[G++]!==$)throw new J("tlv.decode: wrong tlv");let Q=q[G++],Y=!!(Q&128),X=0;if(!Y)X=Q;else{let W=Q&127;if(!W)throw new J("tlv.decode(long): indefinite length not supported");if(W>4)throw new J("tlv.decode(long): byte length is too big");let V=q.subarray(G,G+W);if(V.length!==W)throw new J("tlv.decode: length bytes not complete");if(V[0]===0)throw new J("tlv.decode(long): zero leftmost byte");for(let M of V)X=X<<8|M;if(G+=W,X<128)throw new J("tlv.decode(long): not minimal encoding")}let U=q.subarray(G,G+X);if(U.length!==X)throw new J("tlv.decode: wrong value length");return{v:U,l:q.subarray(G+X)}}},_int:{encode($){let{Err:q}=OJ;if($<vq)throw new q("integer: negative integers are not allowed");let J=BQ($);if(Number.parseInt(J[0],16)&8)J="00"+J;if(J.length&1)throw new q("unexpected DER parsing assertion: unpadded hex");return J},decode($){let{Err:q}=OJ;if($[0]&128)throw new q("invalid signature integer: negative");if($[0]===0&&!($[1]&128))throw new q("invalid signature integer: unnecessary leading zero");return DJ($)}},toSig($){let{Err:q,_int:J,_tlv:G}=OJ,Q=Q$($,void 0,"signature"),{v:Y,l:X}=G.decode(48,Q);if(X.length)throw new q("invalid signature: left bytes after parsing");let{v:U,l:W}=G.decode(2,Y),{v:V,l:M}=G.decode(2,W);if(M.length)throw new q("invalid signature: left bytes after parsing");return{r:J.decode(U),s:J.decode(V)}},hexFromSig($){let{_tlv:q,_int:J}=OJ,G=q.encode(2,J.encode($.r)),Q=q.encode(2,J.encode($.s)),Y=G+Q;return q.encode(48,Y)}},vq=BigInt(0),wG=BigInt(1),pK=BigInt(2),j9=BigInt(3),FC=BigInt(4);function PW($,q={}){let J=fK("weierstrass",$,q),{Fp:G,Fn:Q}=J,Y=J.CURVE,{h:X,n:U}=Y;J8(q,{},{allowInfinityPoint:"boolean",clearCofactor:"function",isTorsionFree:"function",fromBytes:"function",toBytes:"function",endo:"object"});let{endo:W}=q;if(W){if(!G.is0(Y.a)||typeof W.beta!=="bigint"||!Array.isArray(W.basises))throw Error('invalid endo: expected "beta": bigint and "basises": array')}let V=rK(G,Q);function M(){if(!G.isOdd)throw Error("compression is not supported: Field does not have .isOdd()")}function z(C,I,A){let{x:T,y:L}=I.toAffine(),g=G.toBytes(T);if(ZQ(A,"isCompressed"),A){M();let P=!G.isOdd(L);return _$(lK(P),g)}else return _$(Uint8Array.of(4),g,G.toBytes(L))}function D(C){Q$(C,void 0,"Point");let{publicKey:I,publicKeyUncompressed:A}=V,T=C.length,L=C[0],g=C.subarray(1);if(T===I&&(L===2||L===3)){let P=G.fromBytes(g);if(!G.isValid(P))throw Error("bad point: is not on curve, wrong x");let b=w(P),O;try{O=G.sqrt(b)}catch(Z){let o=Z instanceof Error?": "+Z.message:"";throw Error("bad point: is not on curve, sqrt error"+o)}M();let x=G.isOdd(O);if((L&1)===1!==x)O=G.neg(O);return{x:P,y:O}}else if(T===A&&L===4){let P=G.BYTES,b=G.fromBytes(g.subarray(0,P)),O=G.fromBytes(g.subarray(P,P*2));if(!j(b,O))throw Error("bad point: is not on curve");return{x:b,y:O}}else throw Error(`bad point: got length ${T}, expected compressed=${I} or uncompressed=${A}`)}let R=q.toBytes||z,N=q.fromBytes||D;function w(C){let I=G.sqr(C),A=G.mul(I,C);return G.add(G.add(A,G.mul(C,Y.a)),Y.b)}function j(C,I){let A=G.sqr(I),T=w(C);return G.eql(A,T)}if(!j(Y.Gx,Y.Gy))throw Error("bad curve params: generator point");let B=G.mul(G.pow(Y.a,j9),FC),S=G.mul(G.sqr(Y.b),BigInt(27));if(G.is0(G.add(B,S)))throw Error("bad curve params: a or b");function _(C,I,A=!1){if(!G.isValid(I)||A&&G.is0(I))throw Error(`bad point coordinate ${C}`);return I}function y(C){if(!(C instanceof k))throw Error("Weierstrass Point expected")}function p(C){if(!W||!W.basises)throw Error("no endo");return PC(C,W.basises,Q.ORDER)}let F=NW((C,I)=>{let{X:A,Y:T,Z:L}=C;if(G.eql(L,G.ONE))return{x:A,y:T};let g=C.is0();if(I==null)I=g?G.ONE:G.inv(L);let P=G.mul(A,I),b=G.mul(T,I),O=G.mul(L,I);if(g)return{x:G.ZERO,y:G.ZERO};if(!G.eql(O,G.ONE))throw Error("invZ was invalid");return{x:P,y:b}}),f=NW((C)=>{if(C.is0()){if(q.allowInfinityPoint&&!G.is0(C.Y))return;throw Error("bad point: ZERO")}let{x:I,y:A}=C.toAffine();if(!G.isValid(I)||!G.isValid(A))throw Error("bad point: x or y not field elements");if(!j(I,A))throw Error("bad point: equation left != right");if(!C.isTorsionFree())throw Error("bad point: not in prime-order subgroup");return!0});function m(C,I,A,T,L){return A=new k(G.mul(A.X,C),A.Y,A.Z),I=EQ(T,I),A=EQ(L,A),I.add(A)}class k{static BASE=new k(Y.Gx,Y.Gy,G.ONE);static ZERO=new k(G.ZERO,G.ONE,G.ZERO);static Fp=G;static Fn=Q;X;Y;Z;constructor(C,I,A){this.X=_("x",C),this.Y=_("y",I,!0),this.Z=_("z",A),Object.freeze(this)}static CURVE(){return Y}static fromAffine(C){let{x:I,y:A}=C||{};if(!C||!G.isValid(I)||!G.isValid(A))throw Error("invalid affine point");if(C instanceof k)throw Error("projective point not allowed");if(G.is0(I)&&G.is0(A))return k.ZERO;return new k(I,A,G.ONE)}static fromBytes(C){let I=k.fromAffine(N(Q$(C,void 0,"point")));return I.assertValidity(),I}static fromHex(C){return k.fromBytes(q8(C))}get x(){return this.toAffine().x}get y(){return this.toAffine().y}precompute(C=8,I=!0){if(v.createCache(this,C),!I)this.multiply(j9);return this}assertValidity(){f(this)}hasEvenY(){let{y:C}=this.toAffine();if(!G.isOdd)throw Error("Field doesn't support isOdd");return!G.isOdd(C)}equals(C){y(C);let{X:I,Y:A,Z:T}=this,{X:L,Y:g,Z:P}=C,b=G.eql(G.mul(I,P),G.mul(L,T)),O=G.eql(G.mul(A,P),G.mul(g,T));return b&&O}negate(){return new k(this.X,G.neg(this.Y),this.Z)}double(){let{a:C,b:I}=Y,A=G.mul(I,j9),{X:T,Y:L,Z:g}=this,P=G.ZERO,b=G.ZERO,O=G.ZERO,x=G.mul(T,T),r=G.mul(L,L),Z=G.mul(g,g),o=G.mul(T,L);return o=G.add(o,o),O=G.mul(T,g),O=G.add(O,O),P=G.mul(C,O),b=G.mul(A,Z),b=G.add(P,b),P=G.sub(r,b),b=G.add(r,b),b=G.mul(P,b),P=G.mul(o,P),O=G.mul(A,O),Z=G.mul(C,Z),o=G.sub(x,Z),o=G.mul(C,o),o=G.add(o,O),O=G.add(x,x),x=G.add(O,x),x=G.add(x,Z),x=G.mul(x,o),b=G.add(b,x),Z=G.mul(L,g),Z=G.add(Z,Z),x=G.mul(Z,o),P=G.sub(P,x),O=G.mul(Z,r),O=G.add(O,O),O=G.add(O,O),new k(P,b,O)}add(C){y(C);let{X:I,Y:A,Z:T}=this,{X:L,Y:g,Z:P}=C,b=G.ZERO,O=G.ZERO,x=G.ZERO,r=Y.a,Z=G.mul(Y.b,j9),o=G.mul(I,L),q$=G.mul(A,g),Y$=G.mul(T,P),G$=G.add(I,A),t=G.add(L,g);G$=G.mul(G$,t),t=G.add(o,q$),G$=G.sub(G$,t),t=G.add(I,T);let O$=G.add(L,P);return t=G.mul(t,O$),O$=G.add(o,Y$),t=G.sub(t,O$),O$=G.add(A,T),b=G.add(g,P),O$=G.mul(O$,b),b=G.add(q$,Y$),O$=G.sub(O$,b),x=G.mul(r,t),b=G.mul(Z,Y$),x=G.add(b,x),b=G.sub(q$,x),x=G.add(q$,x),O=G.mul(b,x),q$=G.add(o,o),q$=G.add(q$,o),Y$=G.mul(r,Y$),t=G.mul(Z,t),q$=G.add(q$,Y$),Y$=G.sub(o,Y$),Y$=G.mul(r,Y$),t=G.add(t,Y$),o=G.mul(q$,t),O=G.add(O,o),o=G.mul(O$,t),b=G.mul(G$,b),b=G.sub(b,o),o=G.mul(G$,q$),x=G.mul(O$,x),x=G.add(x,o),new k(b,O,x)}subtract(C){return this.add(C.negate())}is0(){return this.equals(k.ZERO)}multiply(C){let{endo:I}=q;if(!Q.isValidNot0(C))throw Error("invalid scalar: out of range");let A,T,L=(g)=>v.cached(this,g,(P)=>SW(k,P));if(I){let{k1neg:g,k1:P,k2neg:b,k2:O}=p(C),{p:x,f:r}=L(P),{p:Z,f:o}=L(O);T=r.add(o),A=m(I.beta,x,Z,g,b)}else{let{p:g,f:P}=L(C);A=g,T=P}return SW(k,[A,T])[0]}multiplyUnsafe(C){let{endo:I}=q,A=this;if(!Q.isValid(C))throw Error("invalid scalar: out of range");if(C===vq||A.is0())return k.ZERO;if(C===wG)return A;if(v.hasCache(this))return this.multiply(C);if(I){let{k1neg:T,k1:L,k2neg:g,k2:P}=p(C),{p1:b,p2:O}=yK(k,A,L,P);return m(I.beta,b,O,T,g)}else return v.unsafe(A,C)}toAffine(C){return F(this,C)}isTorsionFree(){let{isTorsionFree:C}=q;if(X===wG)return!0;if(C)return C(k,this);return v.unsafe(this,U).is0()}clearCofactor(){let{clearCofactor:C}=q;if(X===wG)return this;if(C)return C(k,this);return this.multiplyUnsafe(X)}isSmallOrder(){return this.multiplyUnsafe(X).is0()}toBytes(C=!0){return ZQ(C,"isCompressed"),this.assertValidity(),R(k,this,C)}toHex(C=!0){return $8(this.toBytes(C))}toString(){return`<Point ${this.is0()?"ZERO":this.toHex()}>`}}let l=Q.BITS,v=new IW(k,q.endo?Math.ceil(l/2):l);return k.BASE.precompute(8),k}function lK($){return Uint8Array.of($?2:3)}function rK($,q){return{secretKey:q.BYTES,publicKey:1+$.BYTES,publicKeyUncompressed:1+2*$.BYTES,publicKeyHasPrefix:!0,signature:2*q.BYTES}}function gC($,q={}){let{Fn:J}=$,G=q.randomBytes||zJ,Q=Object.assign(rK($.Fp,J),{seed:AW(J.ORDER)});function Y(R){try{let N=J.fromBytes(R);return J.isValidNot0(N)}catch(N){return!1}}function X(R,N){let{publicKey:w,publicKeyUncompressed:j}=Q;try{let B=R.length;if(N===!0&&B!==w)return!1;if(N===!1&&B!==j)return!1;return!!$.fromBytes(R)}catch(B){return!1}}function U(R=G(Q.seed)){return gK(Q$(R,Q.seed,"seed"),J.ORDER)}function W(R,N=!0){return $.BASE.multiply(J.fromBytes(R)).toBytes(N)}function V(R){let{secretKey:N,publicKey:w,publicKeyUncompressed:j}=Q;if(!RG(R))return;if("_lengths"in J&&J._lengths||N===w)return;let B=Q$(R,void 0,"key").length;return B===w||B===j}function M(R,N,w=!0){if(V(R)===!0)throw Error("first arg must be private key");if(V(N)===!1)throw Error("second arg must be public key");let j=J.fromBytes(R);return $.fromBytes(N).multiply(j).toBytes(w)}let z={isValidSecretKey:Y,isValidPublicKey:X,randomSecretKey:U},D=N9(U,W);return Object.freeze({getPublicKey:W,getSharedSecret:M,keygen:D,Point:$,utils:z,lengths:Q})}function FW($,q,J={}){y0(q),J8(J,{},{hmac:"function",lowS:"boolean",randomBytes:"function",bits2int:"function",bits2int_modN:"function"}),J=Object.assign({},J);let G=J.randomBytes||zJ,Q=J.hmac||((A,T)=>NG(q,A,T)),{Fp:Y,Fn:X}=$,{ORDER:U,BITS:W}=X,{keygen:V,getPublicKey:M,getSharedSecret:z,utils:D,lengths:R}=gC($,J),N={prehash:!0,lowS:typeof J.lowS==="boolean"?J.lowS:!0,format:"compact",extraEntropy:!1},w=U*pK<Y.ORDER;function j(A){let T=U>>wG;return A>T}function B(A,T){if(!X.isValidNot0(T))throw Error(`invalid signature ${A}: out of range 1..Point.Fn.ORDER`);return T}function S(){if(w)throw Error('"recovered" sig type is not supported for cofactor >2 curves')}function _(A,T){LW(T);let L=R.signature,g=T==="compact"?L:T==="recovered"?L+1:void 0;return Q$(A,g)}class y{r;s;recovery;constructor(A,T,L){if(this.r=B("r",A),this.s=B("s",T),L!=null){if(S(),![0,1,2,3].includes(L))throw Error("invalid recovery id");this.recovery=L}Object.freeze(this)}static fromBytes(A,T=N.format){_(A,T);let L;if(T==="der"){let{r:O,s:x}=OJ.toSig(Q$(A));return new y(O,x)}if(T==="recovered")L=A[0],T="compact",A=A.subarray(1);let g=R.signature/2,P=A.subarray(0,g),b=A.subarray(g,g*2);return new y(X.fromBytes(P),X.fromBytes(b),L)}static fromHex(A,T){return this.fromBytes(q8(A),T)}assertRecovery(){let{recovery:A}=this;if(A==null)throw Error("invalid recovery id: must be present");return A}addRecoveryBit(A){return new y(this.r,this.s,A)}recoverPublicKey(A){let{r:T,s:L}=this,g=this.assertRecovery(),P=g===2||g===3?T+U:T;if(!Y.isValid(P))throw Error("invalid recovery id: sig.r+curve.n != R.x");let b=Y.toBytes(P),O=$.fromBytes(_$(lK((g&1)===0),b)),x=X.inv(P),r=F(Q$(A,void 0,"msgHash")),Z=X.create(-r*x),o=X.create(L*x),q$=$.BASE.multiplyUnsafe(Z).add(O.multiplyUnsafe(o));if(q$.is0())throw Error("invalid recovery: point at infinify");return q$.assertValidity(),q$}hasHighS(){return j(this.s)}toBytes(A=N.format){if(LW(A),A==="der")return q8(OJ.hexFromSig(this));let{r:T,s:L}=this,g=X.toBytes(T),P=X.toBytes(L);if(A==="recovered")return S(),_$(Uint8Array.of(this.assertRecovery()),g,P);return _$(g,P)}toHex(A){return $8(this.toBytes(A))}}let p=J.bits2int||function(T){if(T.length>8192)throw Error("input is too large");let L=DJ(T),g=T.length*8-W;return g>0?L>>BigInt(g):L},F=J.bits2int_modN||function(T){return X.create(p(T))},f=IQ(W);function m(A){return SQ("num < 2^"+W,A,vq,f),X.toBytes(A)}function k(A,T){return Q$(A,void 0,"message"),T?Q$(q(A),void 0,"prehashed message"):A}function l(A,T,L){let{lowS:g,prehash:P,extraEntropy:b}=EW(L,N);A=k(A,P);let O=F(A),x=X.fromBytes(T);if(!X.isValidNot0(x))throw Error("invalid private key");let r=[m(x),m(O)];if(b!=null&&b!==!1){let Y$=b===!0?G(R.secretKey):b;r.push(Q$(Y$,void 0,"extraEntropy"))}let Z=_$(...r),o=O;function q$(Y$){let G$=p(Y$);if(!X.isValidNot0(G$))return;let t=X.inv(G$),O$=$.BASE.multiply(G$).toAffine(),A$=X.create(O$.x);if(A$===vq)return;let S$=X.create(t*X.create(o+A$*x));if(S$===vq)return;let y$=(O$.x===A$?0:2)|Number(O$.y&wG),z0=S$;if(g&&j(S$))z0=X.neg(S$),y$^=1;return new y(A$,z0,w?void 0:y$)}return{seed:Z,k2sig:q$}}function v(A,T,L={}){let{seed:g,k2sig:P}=l(A,T,L);return jK(q.outputLen,X.BYTES,Q)(g,P).toBytes(L.format)}function C(A,T,L,g={}){let{lowS:P,prehash:b,format:O}=EW(g,N);if(L=Q$(L,void 0,"publicKey"),T=k(T,b),!RG(A)){let x=A instanceof y?", use sig.toBytes()":"";throw Error("verify expects Uint8Array signature"+x)}_(A,O);try{let x=y.fromBytes(A,O),r=$.fromBytes(L);if(P&&x.hasHighS())return!1;let{r:Z,s:o}=x,q$=F(T),Y$=X.inv(o),G$=X.create(q$*Y$),t=X.create(Z*Y$),O$=$.BASE.multiplyUnsafe(G$).add(r.multiplyUnsafe(t));if(O$.is0())return!1;return X.create(O$.x)===Z}catch(x){return!1}}function I(A,T,L={}){let{prehash:g}=EW(L,N);return T=k(T,g),y.fromBytes(A,"recovered").recoverPublicKey(T).toBytes()}return Object.freeze({keygen:V,getPublicKey:M,getSharedSecret:z,utils:D,lengths:R,Point:$,sign:v,verify:C,recoverPublicKey:I,Signature:y,hash:q})}function iK($,q,J){return $&q^~$&J}function dK($,q,J){return $&q^$&J^q&J}class A9{blockLen;outputLen;padOffset;isLE;buffer;view;finished=!1;length=0;pos=0;destroyed=!1;constructor($,q,J,G){this.blockLen=$,this.outputLen=q,this.padOffset=J,this.isLE=G,this.buffer=new Uint8Array($),this.view=D9(this.buffer)}update($){_q(this),Q$($);let{view:q,buffer:J,blockLen:G}=this,Q=$.length;for(let Y=0;Y<Q;){let X=Math.min(G-this.pos,Q-Y);if(X===G){let U=D9($);for(;G<=Q-Y;Y+=G)this.process(U,Y);continue}if(J.set($.subarray(Y,Y+X),this.pos),this.pos+=X,Y+=X,this.pos===G)this.process(q,0),this.pos=0}return this.length+=$.length,this.roundClean(),this}digestInto($){_q(this),z9($,this),this.finished=!0;let{buffer:q,view:J,blockLen:G,isLE:Q}=this,{pos:Y}=this;if(q[Y++]=128,T0(this.buffer.subarray(Y)),this.padOffset>G-Y)this.process(J,0),Y=0;for(let M=Y;M<G;M++)q[M]=0;J.setBigUint64(G-8,BigInt(this.length*8),Q),this.process(J,0);let X=D9($),U=this.outputLen;if(U%4)throw Error("_sha2: outputLen must be aligned to 32bit");let W=U/4,V=this.get();if(W>V.length)throw Error("_sha2: outputLen bigger than state");for(let M=0;M<W;M++)X.setUint32(4*M,V[M],Q)}digest(){let{buffer:$,outputLen:q}=this;this.digestInto($);let J=$.slice(0,q);return this.destroy(),J}_cloneInto($){$||=new this.constructor,$.set(...this.get());let{blockLen:q,buffer:J,length:G,finished:Q,destroyed:Y,pos:X}=this;if($.destroyed=Y,$.finished=Q,$.length=G,$.pos=X,G%q)$.buffer.set(J);return $}clone(){return this._cloneInto()}}var bq=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),kq=Uint32Array.from([3238371032,914150663,812702999,4144912697,4290775857,1750603025,1694076839,3204075428]),n$=Uint32Array.from([3418070365,3238371032,1654270250,914150663,2438529370,812702999,355462360,4144912697,1731405415,4290775857,2394180231,1750603025,3675008525,1694076839,1203062813,3204075428]),o$=Uint32Array.from([1779033703,4089235720,3144134277,2227873595,1013904242,4271175723,2773480762,1595750129,1359893119,2917565137,2600822924,725511199,528734635,4215389547,1541459225,327033209]);var Z9=BigInt(4294967295),cK=BigInt(32);function _C($,q=!1){if(q)return{h:Number($&Z9),l:Number($>>cK&Z9)};return{h:Number($>>cK&Z9)|0,l:Number($&Z9)|0}}function B9($,q=!1){let J=$.length,G=new Uint32Array(J),Q=new Uint32Array(J);for(let Y=0;Y<J;Y++){let{h:X,l:U}=_C($[Y],q);[G[Y],Q[Y]]=[X,U]}return[G,Q]}var gW=($,q,J)=>$>>>J,_W=($,q,J)=>$<<32-J|q>>>J,Y8=($,q,J)=>$>>>J|q<<32-J,X8=($,q,J)=>$<<32-J|q>>>J,PQ=($,q,J)=>$<<64-J|q>>>J-32,FQ=($,q,J)=>$>>>J-32|q<<64-J;var nK=($,q,J)=>$<<J|q>>>32-J,oK=($,q,J)=>q<<J|$>>>32-J,aK=($,q,J)=>q<<J-32|$>>>64-J,sK=($,q,J)=>$<<J-32|q>>>64-J;function Mq($,q,J,G){let Q=(q>>>0)+(G>>>0);return{h:$+J+(Q/4294967296|0)|0,l:Q|0}}var tK=($,q,J)=>($>>>0)+(q>>>0)+(J>>>0),eK=($,q,J,G)=>q+J+G+($/4294967296|0)|0,$1=($,q,J,G)=>($>>>0)+(q>>>0)+(J>>>0)+(G>>>0),q1=($,q,J,G,Q)=>q+J+G+Q+($/4294967296|0)|0,J1=($,q,J,G,Q)=>($>>>0)+(q>>>0)+(J>>>0)+(G>>>0)+(Q>>>0),G1=($,q,J,G,Q,Y)=>q+J+G+Q+Y+($/4294967296|0)|0;var bC=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]),NJ=new Uint32Array(64);class vW extends A9{constructor($){super(64,$,8,!1)}get(){let{A:$,B:q,C:J,D:G,E:Q,F:Y,G:X,H:U}=this;return[$,q,J,G,Q,Y,X,U]}set($,q,J,G,Q,Y,X,U){this.A=$|0,this.B=q|0,this.C=J|0,this.D=G|0,this.E=Q|0,this.F=Y|0,this.G=X|0,this.H=U|0}process($,q){for(let M=0;M<16;M++,q+=4)NJ[M]=$.getUint32(q,!1);for(let M=16;M<64;M++){let z=NJ[M-15],D=NJ[M-2],R=t0(z,7)^t0(z,18)^z>>>3,N=t0(D,17)^t0(D,19)^D>>>10;NJ[M]=N+NJ[M-7]+R+NJ[M-16]|0}let{A:J,B:G,C:Q,D:Y,E:X,F:U,G:W,H:V}=this;for(let M=0;M<64;M++){let z=t0(X,6)^t0(X,11)^t0(X,25),D=V+z+iK(X,U,W)+bC[M]+NJ[M]|0,N=(t0(J,2)^t0(J,13)^t0(J,22))+dK(J,G,Q)|0;V=W,W=U,U=X,X=Y+D|0,Y=Q,Q=G,G=J,J=D+N|0}J=J+this.A|0,G=G+this.B|0,Q=Q+this.C|0,Y=Y+this.D|0,X=X+this.E|0,U=U+this.F|0,W=W+this.G|0,V=V+this.H|0,this.set(J,G,Q,Y,X,U,W,V)}roundClean(){T0(NJ)}destroy(){this.set(0,0,0,0,0,0,0,0),T0(this.buffer)}}class Q1 extends vW{A=bq[0]|0;B=bq[1]|0;C=bq[2]|0;D=bq[3]|0;E=bq[4]|0;F=bq[5]|0;G=bq[6]|0;H=bq[7]|0;constructor(){super(32)}}class kC extends vW{A=kq[0]|0;B=kq[1]|0;C=kq[2]|0;D=kq[3]|0;E=kq[4]|0;F=kq[5]|0;G=kq[6]|0;H=kq[7]|0;constructor(){super(28)}}var Y1=(()=>B9(["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(($)=>BigInt($))))(),mC=(()=>Y1[0])(),yC=(()=>Y1[1])(),wJ=new Uint32Array(80),jJ=new Uint32Array(80);class gQ extends A9{constructor($){super(128,$,16,!1)}get(){let{Ah:$,Al:q,Bh:J,Bl:G,Ch:Q,Cl:Y,Dh:X,Dl:U,Eh:W,El:V,Fh:M,Fl:z,Gh:D,Gl:R,Hh:N,Hl:w}=this;return[$,q,J,G,Q,Y,X,U,W,V,M,z,D,R,N,w]}set($,q,J,G,Q,Y,X,U,W,V,M,z,D,R,N,w){this.Ah=$|0,this.Al=q|0,this.Bh=J|0,this.Bl=G|0,this.Ch=Q|0,this.Cl=Y|0,this.Dh=X|0,this.Dl=U|0,this.Eh=W|0,this.El=V|0,this.Fh=M|0,this.Fl=z|0,this.Gh=D|0,this.Gl=R|0,this.Hh=N|0,this.Hl=w|0}process($,q){for(let S=0;S<16;S++,q+=4)wJ[S]=$.getUint32(q),jJ[S]=$.getUint32(q+=4);for(let S=16;S<80;S++){let _=wJ[S-15]|0,y=jJ[S-15]|0,p=Y8(_,y,1)^Y8(_,y,8)^gW(_,y,7),F=X8(_,y,1)^X8(_,y,8)^_W(_,y,7),f=wJ[S-2]|0,m=jJ[S-2]|0,k=Y8(f,m,19)^PQ(f,m,61)^gW(f,m,6),l=X8(f,m,19)^FQ(f,m,61)^_W(f,m,6),v=$1(F,l,jJ[S-7],jJ[S-16]),C=q1(v,p,k,wJ[S-7],wJ[S-16]);wJ[S]=C|0,jJ[S]=v|0}let{Ah:J,Al:G,Bh:Q,Bl:Y,Ch:X,Cl:U,Dh:W,Dl:V,Eh:M,El:z,Fh:D,Fl:R,Gh:N,Gl:w,Hh:j,Hl:B}=this;for(let S=0;S<80;S++){let _=Y8(M,z,14)^Y8(M,z,18)^PQ(M,z,41),y=X8(M,z,14)^X8(M,z,18)^FQ(M,z,41),p=M&D^~M&N,F=z&R^~z&w,f=J1(B,y,F,yC[S],jJ[S]),m=G1(f,j,_,p,mC[S],wJ[S]),k=f|0,l=Y8(J,G,28)^PQ(J,G,34)^PQ(J,G,39),v=X8(J,G,28)^FQ(J,G,34)^FQ(J,G,39),C=J&Q^J&X^Q&X,I=G&Y^G&U^Y&U;j=N|0,B=w|0,N=D|0,w=R|0,D=M|0,R=z|0,{h:M,l:z}=Mq(W|0,V|0,m|0,k|0),W=X|0,V=U|0,X=Q|0,U=Y|0,Q=J|0,Y=G|0;let A=tK(k,v,I);J=eK(A,m,l,C),G=A|0}({h:J,l:G}=Mq(this.Ah|0,this.Al|0,J|0,G|0)),{h:Q,l:Y}=Mq(this.Bh|0,this.Bl|0,Q|0,Y|0),{h:X,l:U}=Mq(this.Ch|0,this.Cl|0,X|0,U|0),{h:W,l:V}=Mq(this.Dh|0,this.Dl|0,W|0,V|0),{h:M,l:z}=Mq(this.Eh|0,this.El|0,M|0,z|0),{h:D,l:R}=Mq(this.Fh|0,this.Fl|0,D|0,R|0),{h:N,l:w}=Mq(this.Gh|0,this.Gl|0,N|0,w|0),{h:j,l:B}=Mq(this.Hh|0,this.Hl|0,j|0,B|0),this.set(J,G,Q,Y,X,U,W,V,M,z,D,R,N,w,j,B)}roundClean(){T0(wJ,jJ)}destroy(){T0(this.buffer),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}}class fC extends gQ{Ah=o$[0]|0;Al=o$[1]|0;Bh=o$[2]|0;Bl=o$[3]|0;Ch=o$[4]|0;Cl=o$[5]|0;Dh=o$[6]|0;Dl=o$[7]|0;Eh=o$[8]|0;El=o$[9]|0;Fh=o$[10]|0;Fl=o$[11]|0;Gh=o$[12]|0;Gl=o$[13]|0;Hh=o$[14]|0;Hl=o$[15]|0;constructor(){super(64)}}class X1 extends gQ{Ah=n$[0]|0;Al=n$[1]|0;Bh=n$[2]|0;Bl=n$[3]|0;Ch=n$[4]|0;Cl=n$[5]|0;Dh=n$[6]|0;Dl=n$[7]|0;Eh=n$[8]|0;El=n$[9]|0;Fh=n$[10]|0;Fl=n$[11]|0;Gh=n$[12]|0;Gl=n$[13]|0;Hh=n$[14]|0;Hl=n$[15]|0;constructor(){super(48)}}var W0=Uint32Array.from([2352822216,424955298,1944164710,2312950998,502970286,855612546,1738396948,1479516111,258812777,2077511080,2011393907,79989058,1067287976,1780299464,286451373,2446758561]),V0=Uint32Array.from([573645204,4230739756,2673172387,3360449730,596883563,1867755857,2520282905,1497426621,2519219938,2827943907,3193839141,1401305490,721525244,746961066,246885852,2177182882]);class xC extends gQ{Ah=W0[0]|0;Al=W0[1]|0;Bh=W0[2]|0;Bl=W0[3]|0;Ch=W0[4]|0;Cl=W0[5]|0;Dh=W0[6]|0;Dl=W0[7]|0;Eh=W0[8]|0;El=W0[9]|0;Fh=W0[10]|0;Fl=W0[11]|0;Gh=W0[12]|0;Gl=W0[13]|0;Hh=W0[14]|0;Hl=W0[15]|0;constructor(){super(28)}}class hC extends gQ{Ah=V0[0]|0;Al=V0[1]|0;Bh=V0[2]|0;Bl=V0[3]|0;Ch=V0[4]|0;Cl=V0[5]|0;Dh=V0[6]|0;Dl=V0[7]|0;Eh=V0[8]|0;El=V0[9]|0;Fh=V0[10]|0;Fl=V0[11]|0;Gh=V0[12]|0;Gl=V0[13]|0;Hh=V0[14]|0;Hl=V0[15]|0;constructor(){super(32)}}var T9=DG(()=>new Q1,RJ(1));var U1=DG(()=>new X1,RJ(2));/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */var uC=BigInt(1),W1=BigInt(2),pC=BigInt(3),lC=BigInt(5),jp=BigInt(8),V1=BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed");function rC($){let q=BigInt(10),J=BigInt(20),G=BigInt(40),Q=BigInt(80),Y=V1,U=$*$%Y*$%Y,W=f0(U,W1,Y)*U%Y,V=f0(W,uC,Y)*$%Y,M=f0(V,lC,Y)*V%Y,z=f0(M,q,Y)*M%Y,D=f0(z,J,Y)*z%Y,R=f0(D,G,Y)*D%Y,N=f0(R,Q,Y)*R%Y,w=f0(N,Q,Y)*R%Y,j=f0(w,q,Y)*M%Y;return{pow_p_5_8:f0(j,W1,Y)*$%Y,b2:U}}function iC($){return $[0]&=248,$[31]&=127,$[31]|=64,$}var M1=(()=>{let $=V1;return xK({P:$,type:"x25519",powPminus2:(q)=>{let{pow_p_5_8:J,b2:G}=rC(q);return O0(f0(J,pC,$)*G,$)},adjustScalarBytes:iC})})();/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */var dC=(()=>({p:BigInt("0xffffffff00000001000000000000000000000000ffffffffffffffffffffffff"),n:BigInt("0xffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551"),h:BigInt(1),a:BigInt("0xffffffff00000001000000000000000000000000fffffffffffffffffffffffc"),b:BigInt("0x5ac635d8aa3a93e7b3ebbd55769886bc651d06b0cc53b0f63bce3c3e27d2604b"),Gx:BigInt("0x6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296"),Gy:BigInt("0x4fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5")}))(),cC=(()=>({p:BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff"),n:BigInt("0xffffffffffffffffffffffffffffffffffffffffffffffffc7634d81f4372ddf581a0db248b0a77aecec196accc52973"),h:BigInt(1),a:BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000fffffffc"),b:BigInt("0xb3312fa7e23ee7e4988e056be3f82d19181d9c6efe8141120314088f5013875ac656398d8a2ed19d2a85c8edd3ec2aef"),Gx:BigInt("0xaa87ca22be8b05378eb1c71ef320ad746e1d3b628ba79b9859f741e082542a385502f25dbf55296c3a545e3872760ab7"),Gy:BigInt("0x3617de4a96262c6f5d9e98bf9292dc29f8f41dbd289a147ce9da3113b5f0b8c00a60b1ce1d7e819d7a431d7c90ea0e5f")}))();var nC=PW(dC),bW=FW(nC,T9);var oC=PW(cC),z1=FW(oC,U1);function D1($,q,J){if(y0($),J===void 0)J=new Uint8Array($.outputLen);return NG($,J,q)}var kW=Uint8Array.of(0),R1=Uint8Array.of();function K1($,q,J,G=32){y0($),h$(G,"length");let Q=$.outputLen;if(G>255*Q)throw Error("Length must be <= 255*HashLen");let Y=Math.ceil(G/Q);if(J===void 0)J=R1;else Q$(J,void 0,"info");let X=new Uint8Array(Y*Q),U=NG.create($,q),W=U._cloneInto(),V=new Uint8Array(U.outputLen);for(let M=0;M<Y;M++)kW[0]=M+1,W.update(M===0?R1:V).update(J).update(kW).digestInto(V),X.set(V,Q*M),U._cloneInto(W);return U.destroy(),W.destroy(),T0(V,kW),X.slice(0,G)}var aC=BigInt(0),_Q=BigInt(1),sC=BigInt(2),tC=BigInt(7),eC=BigInt(256),$E=BigInt(113),N1=[],w1=[],j1=[];for(let $=0,q=_Q,J=1,G=0;$<24;$++){[J,G]=[G,(2*J+3*G)%5],N1.push(2*(5*G+J)),w1.push(($+1)*($+2)/2%64);let Q=aC;for(let Y=0;Y<7;Y++)if(q=(q<<_Q^(q>>tC)*$E)%eC,q&sC)Q^=_Q<<(_Q<<BigInt(Y))-_Q;j1.push(Q)}var A1=B9(j1,!0),qE=A1[0],JE=A1[1],H1=($,q,J)=>J>32?aK($,q,J):nK($,q,J),O1=($,q,J)=>J>32?sK($,q,J):oK($,q,J);function GE($,q=24){let J=new Uint32Array(10);for(let G=24-q;G<24;G++){for(let X=0;X<10;X++)J[X]=$[X]^$[X+10]^$[X+20]^$[X+30]^$[X+40];for(let X=0;X<10;X+=2){let U=(X+8)%10,W=(X+2)%10,V=J[W],M=J[W+1],z=H1(V,M,1)^J[U],D=O1(V,M,1)^J[U+1];for(let R=0;R<50;R+=10)$[X+R]^=z,$[X+R+1]^=D}let Q=$[2],Y=$[3];for(let X=0;X<24;X++){let U=w1[X],W=H1(Q,Y,U),V=O1(Q,Y,U),M=N1[X];Q=$[M],Y=$[M+1],$[M]=W,$[M+1]=V}for(let X=0;X<50;X+=10){for(let U=0;U<10;U++)J[U]=$[X+U];for(let U=0;U<10;U++)$[X+U]^=~J[(U+2)%10]&J[(U+4)%10]}$[0]^=qE[G],$[1]^=JE[G]}T0(J)}class S9{state;pos=0;posOut=0;finished=!1;state32;destroyed=!1;blockLen;suffix;outputLen;enableXOF=!1;rounds;constructor($,q,J,G=!1,Q=24){if(this.blockLen=$,this.suffix=q,this.outputLen=J,this.enableXOF=G,this.rounds=Q,h$(J,"outputLen"),!(0<$&&$<200))throw Error("only keccak-f1600 function is supported");this.state=new Uint8Array(200),this.state32=R9(this.state)}clone(){return this._cloneInto()}keccak(){DW(this.state32),GE(this.state32,this.rounds),DW(this.state32),this.posOut=0,this.pos=0}update($){_q(this),Q$($);let{blockLen:q,state:J}=this,G=$.length;for(let Q=0;Q<G;){let Y=Math.min(q-this.pos,G-Q);for(let X=0;X<Y;X++)J[this.pos++]^=$[Q++];if(this.pos===q)this.keccak()}return this}finish(){if(this.finished)return;this.finished=!0;let{state:$,suffix:q,pos:J,blockLen:G}=this;if($[J]^=q,(q&128)!==0&&J===G-1)this.keccak();$[G-1]^=128,this.keccak()}writeInto($){_q(this,!1),Q$($),this.finish();let q=this.state,{blockLen:J}=this;for(let G=0,Q=$.length;G<Q;){if(this.posOut>=J)this.keccak();let Y=Math.min(J-this.posOut,Q-G);$.set(q.subarray(this.posOut,this.posOut+Y),G),this.posOut+=Y,G+=Y}return $}xofInto($){if(!this.enableXOF)throw Error("XOF is not possible for this instance");return this.writeInto($)}xof($){return h$($),this.xofInto(new Uint8Array($))}digestInto($){if(z9($,this),this.finished)throw Error("digest() was already called");return this.writeInto($),this.destroy(),$}digest(){return this.digestInto(new Uint8Array(this.outputLen))}destroy(){this.destroyed=!0,T0(this.state)}_cloneInto($){let{blockLen:q,suffix:J,outputLen:G,rounds:Q,enableXOF:Y}=this;return $||=new S9(q,J,G,Y,Q),$.state32.set(this.state32),$.pos=this.pos,$.posOut=this.posOut,$.finished=this.finished,$.rounds=Q,$.suffix=J,$.outputLen=G,$.enableXOF=Y,$.destroyed=this.destroyed,$}}var Z1=($,q,J,G={})=>DG(()=>new S9(q,$,J),G);var U8=Z1(6,136,32,RJ(8));var B1=Z1(6,72,64,RJ(10));var T1=($,q,J,G={})=>DG((Q={})=>new S9(q,$,Q.dkLen===void 0?J:Q.dkLen,!0),G),S1=T1(31,168,16,RJ(11)),zq=T1(31,136,32,RJ(12));function mW($){if(!Number.isSafeInteger($)||$<0||$>4294967295)throw Error("wrong u32 integer:"+$);return $}function C1($){return mW($),($&$-1)===0&&$!==0}function yW($,q){mW($);let J=0;for(let G=0;G<q;G++,$>>>=1)J=J<<1|$&1;return J}function E1($){return mW($),31-Math.clz32($)}function I1($){let q=$.length;if(q<2||!C1(q))throw Error("n must be a power of 2 and greater than 1. Got "+q);let J=E1(q);for(let G=0;G<q;G++){let Q=yW(G,J);if(G<Q){let Y=$[G];$[G]=$[Q],$[Q]=Y}}return $}var fW=($,q)=>{let{N:J,roots:G,dit:Q,invertButterflies:Y=!1,skipStages:X=0,brp:U=!0}=q,W=E1(J);if(!C1(J))throw Error("FFT: Polynomial size should be power of two");let V=Q!==Y;return(M)=>{if(M.length!==J)throw Error("FFT: wrong Polynomial length");if(Q&&U)I1(M);for(let z=0,D=1;z<W-X;z++){let R=Q?z+1+X:W-z,N=1<<R,w=N>>1,j=J>>R;for(let B=0;B<J;B+=N)for(let S=0,_=D++;S<w;S++){let y=Y?Q?J-_:_:S*j,p=B+S,F=B+S+w,f=G[y],m=M[F],k=M[p];if(V){let l=$.mul(m,f);M[p]=$.add(k,l),M[F]=$.sub(k,l)}else if(Y)M[p]=$.add(m,k),M[F]=$.mul($.sub(m,k),f);else M[p]=$.add(k,m),M[F]=$.mul($.sub(k,m),f)}}if(!Q&&U)I1(M);return M}};/*! noble-post-quantum - MIT License (c) 2024 Paul Miller (paulmillr.com) */var Rq=zJ;function I9($,q){if($.length!==q.length)return!1;let J=0;for(let G=0;G<$.length;G++)J|=$[G]^q[G];return J===0}function L1($){return Uint8Array.from($)}function W8($,...q){let J=(Q)=>typeof Q==="number"?Q:Q.bytesLen,G=q.reduce((Q,Y)=>Q+J(Y),0);return{bytesLen:G,encode:(Q)=>{let Y=new Uint8Array(G);for(let X=0,U=0;X<q.length;X++){let W=q[X],V=J(W),M=typeof W==="number"?Q[X]:W.encode(Q[X]);if(Q$(M,V,$),Y.set(M,U),typeof W!=="number")M.fill(0);U+=V}return Y},decode:(Q)=>{Q$(Q,G,$);let Y=[];for(let X of q){let U=J(X),W=Q.subarray(0,U);Y.push(typeof X==="number"?W:X.decode(W)),Q=Q.subarray(U)}return Y}}}function C9($,q){let J=q*$.bytesLen;return{bytesLen:J,encode:(G)=>{if(G.length!==q)throw Error(`vecCoder.encode: wrong length=${G.length}. Expected: ${q}`);let Q=new Uint8Array(J);for(let Y=0,X=0;Y<G.length;Y++){let U=$.encode(G[Y]);Q.set(U,X),U.fill(0),X+=U.length}return Q},decode:(G)=>{Q$(G,J);let Q=[];for(let Y=0;Y<G.length;Y+=$.bytesLen)Q.push($.decode(G.subarray(Y,Y+$.bytesLen)));return Q}}}function m$(...$){for(let q of $)if(Array.isArray(q))for(let J of q)J.fill(0);else q.fill(0)}function xW($){return(1<<$)-1}var bp=Uint8Array.of();/*! noble-post-quantum - MIT License (c) 2024 Paul Miller (paulmillr.com) */var P1=($)=>{let{newPoly:q,N:J,Q:G,F:Q,ROOT_OF_UNITY:Y,brvBits:X,isKyber:U}=$,W=(S,_=G)=>{let y=S%_|0;return(y>=0?y|0:_+y|0)|0},V=(S,_=G)=>{let y=W(S,_)|0;return(y>_>>1?y-_|0:y)|0};function M(){let S=q(J);for(let _=0;_<J;_++){let y=yW(_,X),p=BigInt(Y)**BigInt(y)%BigInt(G);S[_]=Number(p)|0}return S}let z=M(),D={add:(S,_)=>W((S|0)+(_|0))|0,sub:(S,_)=>W((S|0)-(_|0))|0,mul:(S,_)=>W((S|0)*(_|0))|0,inv:(S)=>{throw Error("not implemented")}},R={N:J,roots:z,invertButterflies:!0,skipStages:U?1:0,brp:!1},N=fW(D,{dit:!1,...R}),w=fW(D,{dit:!0,...R});return{mod:W,smod:V,nttZetas:z,NTT:{encode:(S)=>{return N(S)},decode:(S)=>{w(S);for(let _=0;_<S.length;_++)S[_]=W(Q*S[_]);return S}},bitsCoder:(S,_)=>{let y=xW(S),p=S*(J/8);return{bytesLen:p,encode:(F)=>{let f=new Uint8Array(p);for(let m=0,k=0,l=0,v=0;m<F.length;m++){k|=(_.encode(F[m])&y)<<l,l+=S;for(;l>=8;l-=8,k>>=8)f[v++]=k&xW(l)}return f},decode:(F)=>{let f=q(J);for(let m=0,k=0,l=0,v=0;m<F.length;m++){k|=F[m]<<l,l+=8;for(;l>=S;l-=S,k>>=S)f[v++]=_.decode(k&y)}return f}}}}},QE=($)=>(q,J)=>{if(!J)J=$.blockLen;let G=new Uint8Array(q.length+2);G.set(q);let Q=q.length,Y=new Uint8Array(J),X=$.create({}),U=0,W=0;return{stats:()=>({calls:U,xofs:W}),get:(V,M)=>{return G[Q+0]=V,G[Q+1]=M,X.destroy(),X=$.create({}).update(G),U++,()=>{return W++,X.xofInto(Y)}},clean:()=>{X.destroy(),m$(Y,G)}}},F1=QE(S1);/*! noble-post-quantum - MIT License (c) 2024 Paul Miller (paulmillr.com) */var M0=256,mq=3329,YE=3303,XE=17,{mod:kQ,nttZetas:UE,NTT:V8,bitsCoder:WE}=P1({N:M0,Q:mq,F:YE,ROOT_OF_UNITY:XE,newPoly:($)=>new Uint16Array($),brvBits:7,isKyber:!0}),hW={512:{N:M0,Q:mq,K:2,ETA1:3,ETA2:2,du:10,dv:4,RBGstrength:128},768:{N:M0,Q:mq,K:3,ETA1:2,ETA2:2,du:10,dv:4,RBGstrength:192},1024:{N:M0,Q:mq,K:4,ETA1:2,ETA2:2,du:11,dv:5,RBGstrength:256}},VE=($)=>{if($>=12)return{encode:(J)=>J,decode:(J)=>J};let q=2**($-1);return{encode:(J)=>((J<<$)+mq/2)/mq,decode:(J)=>J*mq+q>>>$}},vQ=($)=>WE($,VE($));function M8($,q){for(let J=0;J<M0;J++)$[J]=kQ($[J]+q[J])}function ME($,q){for(let J=0;J<M0;J++)$[J]=kQ($[J]-q[J])}function zE($,q,J,G,Q){let Y=kQ(q*G*Q+$*J),X=kQ($*G+q*J);return{c0:Y,c1:X}}function E9($,q){for(let J=0;J<M0/2;J++){let G=UE[64+(J>>1)];if(J&1)G=-G;let{c0:Q,c1:Y}=zE($[2*J+0],$[2*J+1],q[2*J+0],q[2*J+1],G);$[2*J+0]=Q,$[2*J+1]=Y}return $}function g1($){let q=new Uint16Array(M0);for(let J=0;J<M0;){let G=$();if(G.length%3)throw Error("SampleNTT: unaligned block");for(let Q=0;J<M0&&Q+3<=G.length;Q+=3){let Y=(G[Q+0]>>0|G[Q+1]<<8)&4095,X=(G[Q+1]>>4|G[Q+2]<<4)&4095;if(Y<mq)q[J++]=Y;if(J<M0&&X<mq)q[J++]=X}}return q}function bQ($,q,J,G){let Q=$(G*M0/4,q,J),Y=new Uint16Array(M0),X=R9(Q),U=0;for(let W=0,V=0,M=0,z=0;W<X.length;W++){let D=X[W];for(let R=0;R<32;R++)if(M+=D&1,D>>=1,U+=1,U===G)z=M,M=0;else if(U===2*G)Y[V++]=kQ(z-M),M=0,U=0}if(U)throw Error(`sampleCBD: leftover bits: ${U}`);return Y}var RE=($)=>{let{K:q,PRF:J,XOF:G,HASH512:Q,ETA1:Y,ETA2:X,du:U,dv:W}=$,V=vQ(1),M=vQ(W),z=vQ(U),D=W8("publicKey",C9(vQ(12),q),32),R=C9(vQ(12),q),N=W8("ciphertext",C9(z,q),M),w=W8("seed",32,32);return{secretCoder:R,lengths:{secretKey:R.bytesLen,publicKey:D.bytesLen,cipherText:N.bytesLen},keygen:(j)=>{Q$(j,32,"seed");let B=new Uint8Array(33);B.set(j),B[32]=q;let S=Q(B),[_,y]=w.decode(S),p=[],F=[];for(let k=0;k<q;k++)p.push(V8.encode(bQ(J,y,k,Y)));let f=G(_);for(let k=0;k<q;k++){let l=V8.encode(bQ(J,y,q+k,Y));for(let v=0;v<q;v++){let C=g1(f.get(v,k));M8(l,E9(C,p[v]))}F.push(l)}f.clean();let m={publicKey:D.encode([F,_]),secretKey:R.encode(p)};return m$(_,y,p,F,B,S),m},encrypt:(j,B,S)=>{let[_,y]=D.decode(j),p=[];for(let v=0;v<q;v++)p.push(V8.encode(bQ(J,S,v,Y)));let F=G(y),f=new Uint16Array(M0),m=[];for(let v=0;v<q;v++){let C=bQ(J,S,q+v,X),I=new Uint16Array(M0);for(let A=0;A<q;A++){let T=g1(F.get(v,A));M8(I,E9(T,p[A]))}M8(C,V8.decode(I)),m.push(C),M8(f,E9(_[v],p[v])),m$(I)}F.clean();let k=bQ(J,S,2*q,X);M8(k,V8.decode(f));let l=V.decode(B);return M8(l,k),m$(_,p,f,k),N.encode([m,l])},decrypt:(j,B)=>{let[S,_]=N.decode(j),y=R.decode(B),p=new Uint16Array(M0);for(let F=0;F<q;F++)M8(p,E9(y[F],V8.encode(S[F])));return ME(_,V8.decode(p)),m$(p,y,S),V.encode(_)}}};function uW($){let q=RE($),{HASH256:J,HASH512:G,KDF:Q}=$,{secretCoder:Y,lengths:X}=q,U=W8("secretKey",X.secretKey,X.publicKey,32,32),W=32,V=64;return{info:{type:"ml-kem"},lengths:{...X,seed:64,msg:32,msgRand:32,secretKey:U.bytesLen},keygen:(M=Rq(64))=>{Q$(M,64,"seed");let{publicKey:z,secretKey:D}=q.keygen(M.subarray(0,32)),R=J(z),N=U.encode([D,z,R,M.subarray(32)]);return m$(D,R),{publicKey:z,secretKey:N}},getPublicKey:(M)=>{let[z,D,R,N]=U.decode(M);return Uint8Array.from(D)},encapsulate:(M,z=Rq(32))=>{Q$(M,X.publicKey,"publicKey"),Q$(z,32,"message");let D=M.subarray(0,384*$.K),R=Y.encode(Y.decode(L1(D)));if(!I9(R,D))throw m$(R),Error("ML-KEM.encapsulate: wrong publicKey modulus");m$(R);let N=G.create().update(z).update(J(M)).digest(),w=q.encrypt(M,z,N.subarray(32,64));return m$(N.subarray(32)),{cipherText:w,sharedSecret:N.subarray(0,32)}},decapsulate:(M,z)=>{Q$(z,U.bytesLen,"secretKey"),Q$(M,X.cipherText,"cipherText");let D=U.bytesLen-96,R=D+32,N=J(z.subarray(D/2,R));if(!I9(N,z.subarray(R,R+32)))throw Error("invalid secretKey: hash check failed");let[w,j,B,S]=U.decode(z),_=q.decrypt(M,w),y=G.create().update(_).update(B).digest(),p=y.subarray(0,32),F=q.encrypt(j,_,y.subarray(32,64)),f=I9(M,F),m=Q.create({dkLen:32}).update(S).update(M).digest();return m$(_,F,!f?p:m),f?p:m}}}function DE($,q,J){return zq.create({dkLen:$}).update(q).update(new Uint8Array([J])).digest()}var pW={HASH256:U8,HASH512:B1,KDF:zq,XOF:F1,PRF:DE},ip=uW({...pW,...hW[512]}),mQ=uW({...pW,...hW[768]}),_1=uW({...pW,...hW[1024]});/*! noble-post-quantum - MIT License (c) 2024 Paul Miller (paulmillr.com) */function KE($,q=!1){let{lengths:J,keygen:G}=$;if(q){let Y=$.Point.Fn;if(!Y)throw Error("No Point.Fn");G=(X=Rq(J.seed))=>{Q$(X,J.seed,"seed");let U=Y.isLE?KJ(X):DJ(X),W=Y.toBytes(Y.create(U));return{secretKey:W,publicKey:$.getPublicKey(W)}}}return{lengths:{secretKey:J.secretKey,publicKey:J.publicKey,seed:J.seed},keygen:G,getPublicKey:(Q)=>$.getPublicKey(Q)}}function lW($,q=!1){let J=KE($,q);if(!$.getSharedSecret)throw Error("wrong curve");return{lengths:{...J.lengths,msg:J.lengths.seed,cipherText:J.lengths.publicKey},keygen:J.keygen,getPublicKey:J.getPublicKey,encapsulate(G,Q=Rq($.lengths.seed)){let Y=this.keygen(Q).secretKey,X=this.decapsulate(G,Y),U=$.getPublicKey(Y);return m$(Y),{sharedSecret:X,cipherText:U}},decapsulate(G,Q){let Y=$.getSharedSecret(Q,G);return $.lengths.publicKeyHasPrefix?Y.subarray(1):Y}}}function yQ($,q){return W8(q,...$.map((J)=>{if(typeof J.lengths[q]!=="number")throw Error("wrong length: "+q);return J.lengths[q]}))}function rW($){return(q,J)=>$(q,{dkLen:J})}function HE($,q,...J){let G=yQ(J,"seed"),Q=yQ(J,"publicKey");if($===void 0)$=G.bytesLen;h$($);function Y(X){Q$(X,$);let U=G.decode(q(X,G.bytesLen)),W=J.map((z,D)=>z.keygen(U[D])),V=W.map((z)=>z.secretKey),M=W.map((z)=>z.publicKey);return{secretKey:V,publicKey:M}}return{info:{lengths:{seed:$,publicKey:Q.bytesLen,secretKey:$}},getPublicKey(X){return this.keygen(X).publicKey},keygen(X=Rq($)){let{publicKey:U,secretKey:W}=Y(X),V=Q.encode(U);return m$(U),m$(W),{secretKey:X,publicKey:V}},expandDecapsulationKey:Y,realSeedLen:$}}function L9($,q,J,G,...Q){let Y=HE($,J,...Q),X=yQ(Q,"cipherText"),U=yQ(Q,"publicKey"),W=yQ(Q,"msg");if(q===void 0)q=W.bytesLen;return h$(q),{lengths:{...Y.info.lengths,msg:q,msgRand:W.bytesLen,cipherText:X.bytesLen},getPublicKey:Y.getPublicKey,keygen:Y.keygen,encapsulate(V,M=Rq(W.bytesLen)){let z=U.decode(V),D=W.decode(M),R=Q.map((B,S)=>B.encapsulate(z[S],D[S])),N=R.map((B)=>B.sharedSecret),w=R.map((B)=>B.cipherText),j={sharedSecret:G(z,w,N),cipherText:X.encode(w)};return m$(N,w),j},decapsulate(V,M){let z=X.decode(V),{publicKey:D,secretKey:R}=Y.expandDecapsulationKey(M),N=Q.map((w,j)=>w.decapsulate(z[j],R[j]));return G(D,z,N)}}}function v1($,q,J,G,Q){return y0(G),y0(Q),L9(32,32,rW(G),(Y,X,U)=>Q(_$(U[0],U[1],X[1],Y[1],HJ($))),q,J)}var Jl=v1("QSF-KEM(ML-KEM-768,P-256)-XOF(SHAKE256)-KDF(SHA3-256)",mQ,lW(bW,!0),zq,U8),Gl=v1("QSF-KEM(ML-KEM-1024,P-384)-XOF(SHAKE256)-KDF(SHA3-256)",_1,lW(z1,!0),zq,U8);function OE($,q,J,G,Q){return y0(G),y0(Q),L9(32,32,rW(G),(Y,X,U)=>{let W=_$(U[0],U[1],X[0],Y[0],X[1],Y[1],HJ($)),V=32,M=_$(HJ("hybrid_prk"),W),z=D1(Q,M),D=_$(KG(32,2),HJ("shared_secret"),HJ("")),R=K1(Q,z,D,32);return m$(z,D,M,W),R},q,J)}var b1=lW(M1),Ql=OE("KitchenSink-KEM(ML-KEM-768,X25519)-XOF(SHAKE256)-KDF(HKDF-SHA-256)",mQ,b1,zq,T9),NE=(()=>L9(32,32,rW(zq),($,q,J)=>U8(_$(J[0],J[1],q[1],$[1],HJ("\\.//^\\"))),mQ,b1))();function wE($,q,J,G){let Q=$.Point.Fn;if(!Q)throw Error("no Point.Fn");function Y(X){let U;for(let M=0,z=q;;M=z,z+=q){if(z>X.length)throw Error("rejection sampling failed");if(U=Q.fromBytes(X.subarray(M,z),!0),Q.isValidNot0(U))break}let W=Q.toBytes(Q.create(U)),V=$.getPublicKey(W,!1);return{secretKey:W,publicKey:V}}return{lengths:{secretKey:q,publicKey:J,seed:G,msg:G,cipherText:J},keygen(X=Rq(G)){return Q$(X,G,"seed"),Y(X)},getPublicKey(X){return $.getPublicKey(X,!1)},encapsulate(X,U=Rq(G)){Q$(U,G,"rand");let{secretKey:W}=Y(U),V=this.decapsulate(X,W),M=$.getPublicKey(W,!1);return m$(W),{sharedSecret:V,cipherText:M}},decapsulate(X,U){return $.getSharedSecret(U,X).subarray(1)}}}function jE($,q,J,G){let{secretKey:Q,publicKeyUncompressed:Y}=J.lengths;if(!Q||!Y)throw Error("wrong curve");let X=wE(J,Q,Y,G),U=64,W=U+G;return L9(32,32,(V)=>{Q$(V,32);let M=zq(V,{dkLen:W}),z=M.subarray(0,U),D=M.subarray(U,W);return _$(z,D)},(V,M,z)=>U8(_$(z[0],z[1],M[1],V[1],HJ($))),q,X)}var AE=(()=>jE("MLKEM768-P256",mQ,bW,128))();var P9=NE,k1=AE;/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */var Z$=($,q,J)=>r$($,q,J),dW=L$,jG=eY,a$=(...$)=>cU(...$),AG=($)=>RQ($),ZG=rU,BG=($)=>Eq($),g9=BigInt(0),iW=BigInt(1);function yq($,q=""){if(typeof $!=="boolean"){let J=q&&`"${q}" `;throw TypeError(J+"expected boolean, got type="+typeof $)}return $}function _9($){if(typeof $==="bigint"){if(!F9($))throw RangeError("positive bigint expected, got "+$)}else dW($);return $}function Dq($,q=""){if(typeof $!=="number"){let J=q&&`"${q}" `;throw TypeError(J+"expected number, got type="+typeof $)}if(!Number.isSafeInteger($)){let J=q&&`"${q}" `;throw RangeError(J+"expected safe integer, got "+$)}}function fQ($){let q=_9($).toString(16);return q.length&1?"0"+q:q}function m1($){if(typeof $!=="string")throw TypeError("hex string expected, got "+typeof $);return $===""?g9:BigInt("0x"+$)}function z8($){return m1(eY($))}function e0($){return m1(eY(AJ(r$($)).reverse()))}function v9($,q){if(L$(q),q===0)throw RangeError("zero length");$=_9($);let J=$.toString(16);if(J.length>q*2)throw RangeError("number too large");return RQ(J.padStart(q*2,"0"))}function xQ($,q){return v9($,q).reverse()}function y1($,q){if($=Z$($),q=Z$(q),$.length!==q.length)return!1;let J=0;for(let G=0;G<$.length;G++)J|=$[G]^q[G];return J===0}function AJ($){return Uint8Array.from(Z$($))}function b9($){if(typeof $!=="string")throw TypeError("ascii string expected, got "+typeof $);return Uint8Array.from($,(q,J)=>{let G=q.charCodeAt(0);if(q.length!==1||G>127)throw RangeError(`string contains non-ASCII character "${$[J]}" with code ${G} at position ${J}`);return G})}var F9=($)=>typeof $==="bigint"&&g9<=$;function ZE($,q,J){return F9($)&&F9(q)&&F9(J)&&q<=$&&$<J}function fq($,q,J,G){if(!ZE(q,J,G))throw RangeError("expected valid "+$+": "+J+" <= n < "+G+", got "+q)}function TG($){if($<g9)throw Error("expected non-negative bigint, got "+$);let q;for(q=0;$>g9;$>>=iW,q+=1);return q}var hQ=($)=>(iW<<BigInt($))-iW;function f1($,q,J){if(L$($,"hashLen"),L$(q,"qByteLen"),typeof J!=="function")throw TypeError("hmacFn must be a function");let G=(j)=>new Uint8Array(j),Q=Uint8Array.of(),Y=Uint8Array.of(0),X=Uint8Array.of(1),U=1000,W=G($),V=G($),M=0,z=()=>{W.fill(1),V.fill(0),M=0},D=(...j)=>J(V,a$(W,...j)),R=(j=Q)=>{if(V=D(Y,j),W=D(),j.length===0)return;V=D(X,j),W=D()},N=()=>{if(M++>=U)throw Error("drbg: tried max amount of iterations");let j=0,B=[];while(j<q){W=D();let S=W.slice();B.push(S),j+=W.length}return a$(...B)};return(j,B)=>{z(),R(j);let S=void 0;while((S=B(N()))===void 0)R();return z(),S}}function x0($,q={},J={}){if(Object.prototype.toString.call($)!=="[object Object]")throw TypeError("expected valid options object");function G(Y,X,U){if(!U&&X!=="function"&&!Object.hasOwn($,Y))throw TypeError(`param "${Y}" is invalid: expected own property`);let W=$[Y];if(U&&W===void 0)return;let V=typeof W;if(V!==X||W===null)throw TypeError(`param "${Y}" is invalid: expected ${X}, got ${V}`)}let Q=(Y,X)=>Object.entries(Y).forEach(([U,W])=>G(U,W,X));Q(q,!1),Q(J,!0)}var cW=()=>{throw Error("not implemented")};/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */var s$=BigInt(0),C$=BigInt(1),R8=BigInt(2),p1=BigInt(3),l1=BigInt(4),r1=BigInt(5),BE=BigInt(7),i1=BigInt(8),TE=BigInt(9),d1=BigInt(16);function B$($,q){if(q<=s$)throw Error("mod: expected positive modulus, got "+q);let J=$%q;return J>=s$?J:q+J}function h0($,q,J){if(q<s$)throw Error("pow2: expected non-negative exponent, got "+q);let G=$;while(q-- >s$)G*=G,G%=J;return G}function x1($,q){if($===s$)throw Error("invert: expected non-zero number");if(q<=s$)throw Error("invert: expected positive modulus, got "+q);let J=B$($,q),G=q,Q=s$,Y=C$,X=C$,U=s$;while(J!==s$){let V=G/J,M=G-J*V,z=Q-X*V,D=Y-U*V;G=J,J=M,Q=X,Y=U,X=z,U=D}if(G!==C$)throw Error("invert: does not exist");return B$(Q,q)}function nW($,q,J){let G=$;if(!G.eql(G.sqr(q),J))throw Error("Cannot find square root")}function c1($,q){let J=$,G=(J.ORDER+C$)/l1,Q=J.pow(q,G);return nW(J,Q,q),Q}function SE($,q){let J=$,G=(J.ORDER-r1)/i1,Q=J.mul(q,R8),Y=J.pow(Q,G),X=J.mul(q,Y),U=J.mul(J.mul(X,R8),Y),W=J.mul(X,J.sub(U,J.ONE));return nW(J,W,q),W}function IE($){let q=k9($),J=n1($),G=J(q,q.neg(q.ONE)),Q=J(q,G),Y=J(q,q.neg(G)),X=($+BE)/d1;return(U,W)=>{let V=U,M=V.pow(W,X),z=V.mul(M,G),D=V.mul(M,Q),R=V.mul(M,Y),N=V.eql(V.sqr(z),W),w=V.eql(V.sqr(D),W);M=V.cmov(M,z,N),z=V.cmov(R,D,w);let j=V.eql(V.sqr(z),W),B=V.cmov(M,z,j);return nW(V,B,W),B}}function n1($){if($<p1)throw Error("sqrt is not defined for small field");let q=$-C$,J=0;while(q%R8===s$)q/=R8,J++;let G=R8,Q=k9($);while(h1(Q,G)===1)if(G++>1000)throw Error("Cannot find square root: probably non-prime P");if(J===1)return c1;let Y=Q.pow(G,q),X=(q+C$)/R8;return function(W,V){let M=W;if(M.is0(V))return V;if(h1(M,V)!==1)throw Error("Cannot find square root");let z=J,D=M.mul(M.ONE,Y),R=M.pow(V,q),N=M.pow(V,X);while(!M.eql(R,M.ONE)){if(M.is0(R))return M.ZERO;let w=1,j=M.sqr(R);while(!M.eql(j,M.ONE))if(w++,j=M.sqr(j),w===z)throw Error("Cannot find square root");let B=C$<<BigInt(z-w-1),S=M.pow(D,B);z=w,D=M.sqr(S),R=M.mul(R,D),N=M.mul(N,S)}return N}}function CE($){if($%l1===p1)return c1;if($%i1===r1)return SE;if($%d1===TE)return IE($);return n1($)}var xq=($,q)=>(B$($,q)&C$)===C$,EE=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function oW($){let q={ORDER:"bigint",BYTES:"number",BITS:"number"},J=EE.reduce((G,Q)=>{return G[Q]="function",G},q);if(x0($,J),Dq($.BYTES,"BYTES"),Dq($.BITS,"BITS"),$.BYTES<1||$.BITS<1)throw Error("invalid field: expected BYTES/BITS > 0");if($.ORDER<=C$)throw Error("invalid field: expected ORDER > 1, got "+$.ORDER);return $}function LE($,q,J){let G=$;if(J<s$)throw Error("invalid exponent, negatives unsupported");if(J===s$)return G.ONE;if(J===C$)return q;let Q=G.ONE,Y=q;while(J>s$){if(J&C$)Q=G.mul(Q,Y);Y=G.sqr(Y),J>>=C$}return Q}function uQ($,q,J=!1){let G=$,Q=Array(q.length).fill(J?G.ZERO:void 0),Y=q.reduce((U,W,V)=>{if(G.is0(W))return U;return Q[V]=U,G.mul(U,W)},G.ONE),X=G.inv(Y);return q.reduceRight((U,W,V)=>{if(G.is0(W))return U;return Q[V]=G.mul(U,Q[V]),G.mul(U,W)},X),Q}function h1($,q){let J=$,G=(J.ORDER-C$)/R8,Q=J.pow(q,G),Y=J.eql(Q,J.ONE),X=J.eql(Q,J.ZERO),U=J.eql(Q,J.neg(J.ONE));if(!Y&&!X&&!U)throw Error("invalid Legendre symbol result");return Y?1:X?0:-1}function PE($,q){if(q!==void 0)dW(q);if($<=s$)throw Error("invalid n length: expected positive n, got "+$);if(q!==void 0&&q<1)throw Error("invalid n length: expected positive bit length, got "+q);let J=TG($);if(q!==void 0&&q<J)throw Error(`invalid n length: expected bit length (${J}) >= n.length (${q})`);let G=q!==void 0?q:J,Q=Math.ceil(G/8);return{nBitLength:G,nByteLength:Q}}var u1=new WeakMap;class aW{ORDER;BITS;BYTES;isLE;ZERO=s$;ONE=C$;_lengths;_mod;constructor($,q={}){if($<=C$)throw Error("invalid field: expected ORDER > 1, got "+$);let J=void 0;if(this.isLE=!1,q!=null&&typeof q==="object"){if(typeof q.BITS==="number")J=q.BITS;if(typeof q.sqrt==="function")Object.defineProperty(this,"sqrt",{value:q.sqrt,enumerable:!0});if(typeof q.isLE==="boolean")this.isLE=q.isLE;if(q.allowedLengths)this._lengths=Object.freeze(q.allowedLengths.slice());if(typeof q.modFromBytes==="boolean")this._mod=q.modFromBytes}let{nBitLength:G,nByteLength:Q}=PE($,J);if(Q>2048)throw Error("invalid field: expected ORDER of <= 2048 bytes");this.ORDER=$,this.BITS=G,this.BYTES=Q,Object.freeze(this)}create($){return B$($,this.ORDER)}isValid($){if(typeof $!=="bigint")throw TypeError("invalid field element: expected bigint, got "+typeof $);return s$<=$&&$<this.ORDER}is0($){return $===s$}isValidNot0($){return!this.is0($)&&this.isValid($)}isOdd($){return($&C$)===C$}neg($){return B$(-$,this.ORDER)}eql($,q){return $===q}sqr($){return B$($*$,this.ORDER)}add($,q){return B$($+q,this.ORDER)}sub($,q){return B$($-q,this.ORDER)}mul($,q){return B$($*q,this.ORDER)}pow($,q){return LE(this,$,q)}div($,q){return B$($*x1(q,this.ORDER),this.ORDER)}sqrN($){return $*$}addN($,q){return $+q}subN($,q){return $-q}mulN($,q){return $*q}inv($){return x1($,this.ORDER)}sqrt($){let q=u1.get(this);if(!q)u1.set(this,q=CE(this.ORDER));return q(this,$)}toBytes($){return this.isLE?xQ($,this.BYTES):v9($,this.BYTES)}fromBytes($,q=!1){Z$($);let{_lengths:J,BYTES:G,isLE:Q,ORDER:Y,_mod:X}=this;if(J){if($.length<1||!J.includes($.length)||$.length>G)throw Error("Field.fromBytes: expected "+J+" bytes, got "+$.length);let W=new Uint8Array(G);W.set($,Q?0:W.length-$.length),$=W}if($.length!==G)throw Error("Field.fromBytes: expected "+G+" bytes, got "+$.length);let U=Q?e0($):z8($);if(X)U=B$(U,Y);if(!q){if(!this.isValid(U))throw Error("invalid field element: outside of range 0..ORDER")}return U}invertBatch($){return uQ(this,$)}cmov($,q,J){return yq(J,"condition"),J?q:$}}Object.freeze(aW.prototype);function k9($,q={}){return new aW($,q)}function o1($){if(typeof $!=="bigint")throw Error("field order must be bigint");if($<=C$)throw Error("field order must be greater than 1");let q=TG($-C$);return Math.ceil(q/8)}function sW($){let q=o1($);return q+Math.ceil(q/2)}function a1($,q,J=!1){Z$($);let G=$.length,Q=o1(q),Y=Math.max(sW(q),16);if(G<Y||G>1024)throw Error("expected "+Y+"-1024 bytes of input, got "+G);let X=J?e0($):z8($),U=B$(X,q-C$)+C$;return J?xQ(U,Q):v9(U,Q)}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */var SG=BigInt(0),D8=BigInt(1);function pQ($,q){let J=q.negate();return $?J:q}function K8($,q){let J=uQ($.Fp,q.map((G)=>G.Z));return q.map((G,Q)=>$.fromAffine(G.toAffine(J[Q])))}function $H($,q){if(!Number.isSafeInteger($)||$<=0||$>q)throw Error("invalid window size, expected [1.."+q+"], got W="+$)}function tW($,q){$H($,q);let J=Math.ceil(q/$)+1,G=2**($-1),Q=2**$,Y=hQ($),X=BigInt($);return{windows:J,windowSize:G,mask:Y,maxNumber:Q,shiftBy:X}}function s1($,q,J){let{windowSize:G,mask:Q,maxNumber:Y,shiftBy:X}=J,U=Number($&Q),W=$>>X;if(U>G)U-=Y,W+=D8;let V=q*G,M=V+Math.abs(U)-1,z=U===0,D=U<0,R=q%2!==0;return{nextN:W,offset:M,isZero:z,isNeg:D,isNegF:R,offsetF:V}}var eW=new WeakMap,qH=new WeakMap;function $7($){return qH.get($)||1}function t1($){if($!==SG)throw Error("invalid wNAF")}class lQ{BASE;ZERO;Fn;bits;constructor($,q){this.BASE=$.BASE,this.ZERO=$.ZERO,this.Fn=$.Fn,this.bits=q}_unsafeLadder($,q,J=this.ZERO){let G=$;while(q>SG){if(q&D8)J=J.add(G);G=G.double(),q>>=D8}return J}precomputeWindow($,q){let{windows:J,windowSize:G}=tW(q,this.bits),Q=[],Y=$,X=Y;for(let U=0;U<J;U++){X=Y,Q.push(X);for(let W=1;W<G;W++)X=X.add(Y),Q.push(X);Y=X.double()}return Q}wNAF($,q,J){if(!this.Fn.isValid(J))throw Error("invalid scalar");let G=this.ZERO,Q=this.BASE,Y=tW($,this.bits);for(let X=0;X<Y.windows;X++){let{nextN:U,offset:W,isZero:V,isNeg:M,isNegF:z,offsetF:D}=s1(J,X,Y);if(J=U,V)Q=Q.add(pQ(z,q[D]));else G=G.add(pQ(M,q[W]))}return t1(J),{p:G,f:Q}}wNAFUnsafe($,q,J,G=this.ZERO){let Q=tW($,this.bits);for(let Y=0;Y<Q.windows;Y++){if(J===SG)break;let{nextN:X,offset:U,isZero:W,isNeg:V}=s1(J,Y,Q);if(J=X,W)continue;else{let M=q[U];G=G.add(V?M.negate():M)}}return t1(J),G}getPrecomputes($,q,J){let G=eW.get(q);if(!G){if(G=this.precomputeWindow(q,$),$!==1){if(typeof J==="function")G=J(G);eW.set(q,G)}}return G}cached($,q,J){let G=$7($);return this.wNAF(G,this.getPrecomputes(G,$,J),q)}unsafe($,q,J,G){let Q=$7($);if(Q===1)return this._unsafeLadder($,q,G);return this.wNAFUnsafe(Q,this.getPrecomputes(Q,$,J),q,G)}createCache($,q){$H(q,this.bits),qH.set($,q),eW.delete($)}hasCache($){return $7($)!==1}}function JH($,q,J,G){let Q=q,Y=$.ZERO,X=$.ZERO;while(J>SG||G>SG){if(J&D8)Y=Y.add(Q);if(G&D8)X=X.add(Q);Q=Q.double(),J>>=D8,G>>=D8}return{p1:Y,p2:X}}function e1($,q,J){if(q){if(q.ORDER!==$)throw Error("Field.ORDER must match order: Fp == p, Fn == n");return oW(q),q}else return k9($,{isLE:J})}function m9($,q,J={},G){if(G===void 0)G=$==="edwards";if(!q||typeof q!=="object")throw Error(`expected valid ${$} CURVE object`);for(let W of["p","n","h"]){let V=q[W];if(!(typeof V==="bigint"&&V>SG))throw Error(`CURVE.${W} must be positive bigint`)}let Q=e1(q.p,J.Fp,G),Y=e1(q.n,J.Fn,G),U=["Gx","Gy","a",$==="weierstrass"?"b":"d"];for(let W of U)if(!Q.isValid(q[W]))throw Error(`CURVE.${W} must be valid field element of CURVE.Fp`);return q=Object.freeze(Object.assign({},q)),{CURVE:q,Fp:Q,Fn:Y}}function rQ($,q){return function(G){let Q=$(G);return{secretKey:Q,publicKey:q(Q)}}}function iQ($,q){if(Dq($),Dq(q),q<0||q>4)throw Error("invalid I2OSP length: "+q);if($<0||$>2**(8*q)-1)throw Error("invalid I2OSP input: "+$);let J=Array.from({length:q}).fill(0);for(let G=q-1;G>=0;G--)J[G]=$&255,$>>>=8;return new Uint8Array(J)}function FE($,q){let J=new Uint8Array($.length);for(let G=0;G<$.length;G++)J[G]=$[G]^q[G];return J}function gE($){if(!ZG($)&&typeof $!=="string")throw Error("DST must be Uint8Array or ascii string");let q=typeof $==="string"?b9($):$;if(q.length===0)throw Error("DST must be non-empty");return q}function q7($,q,J,G){if(Z$($),Dq(J),q=gE(q),q.length>255)q=G(a$(b9("H2C-OVERSIZE-DST-"),q));let{outputLen:Q,blockLen:Y}=G,X=Math.ceil(J/Q);if(J>65535||X>255)throw Error("expand_message_xmd: invalid lenInBytes");let U=a$(q,iQ(q.length,1)),W=new Uint8Array(Y),V=iQ(J,2),M=Array(X),z=G(a$(W,$,V,iQ(0,1),U));M[0]=G(a$(z,iQ(1,1),U));for(let R=1;R<X;R++){let N=[FE(z,M[R-1]),iQ(R+1,1),U];M[R]=G(a$(...N))}return a$(...M).slice(0,J)}var GH="HashToScalar-";/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */var QH=($,q)=>($+($>=0?q:-q)/XH)/q;function _E($,q,J){fq("scalar",$,Kq,J);let[[G,Q],[Y,X]]=q,U=QH(X*$,J),W=QH(-Q*$,J),V=$-U*G-W*Y,M=-U*Q-W*X,z=V<Kq,D=M<Kq;if(z)V=-V;if(D)M=-M;let R=hQ(Math.ceil(TG(J)/2))+ZJ;if(V<Kq||V>=R||M<Kq||M>=R)throw Error("splitScalar (endomorphism): failed for k");return{k1neg:z,k1:V,k2neg:D,k2:M}}function G7($){if(!["compact","recovered","der"].includes($))throw Error('Signature format must be "compact", "recovered", or "der"');return $}function J7($,q){x0($);let J={};for(let G of Object.keys(q))J[G]=$[G]===void 0?q[G]:$[G];if(yq(J.lowS,"lowS"),yq(J.prehash,"prehash"),J.format!==void 0)G7(J.format);return J}class YH extends Error{constructor($=""){super($)}}var $q={Err:YH,_tlv:{encode:($,q)=>{let{Err:J}=$q;if(Dq($,"tag"),$<0||$>255)throw new J("tlv.encode: wrong tag");if(typeof q!=="string")throw TypeError('"data" expected string, got type='+typeof q);if(q.length&1)throw new J("tlv.encode: unpadded data");let G=q.length/2,Q=fQ(G);if(Q.length/2&128)throw new J("tlv.encode: long form length too big");let Y=G>127?fQ(Q.length/2|128):"";return fQ($)+Y+Q+q},decode($,q){let{Err:J}=$q;q=Z$(q,void 0,"DER data");let G=0;if($<0||$>255)throw new J("tlv.encode: wrong tag");if(q.length<2||q[G++]!==$)throw new J("tlv.decode: wrong tlv");let Q=q[G++],Y=!!(Q&128),X=0;if(!Y)X=Q;else{let W=Q&127;if(!W)throw new J("tlv.decode(long): indefinite length not supported");if(W>4)throw new J("tlv.decode(long): byte length is too big");let V=q.subarray(G,G+W);if(V.length!==W)throw new J("tlv.decode: length bytes not complete");if(V[0]===0)throw new J("tlv.decode(long): zero leftmost byte");for(let M of V)X=X<<8|M;if(G+=W,X<128)throw new J("tlv.decode(long): not minimal encoding")}let U=q.subarray(G,G+X);if(U.length!==X)throw new J("tlv.decode: wrong value length");return{v:U,l:q.subarray(G+X)}}},_int:{encode($){let{Err:q}=$q;if(_9($),$<Kq)throw new q("integer: negative integers are not allowed");let J=fQ($);if(Number.parseInt(J[0],16)&8)J="00"+J;if(J.length&1)throw new q("unexpected DER parsing assertion: unpadded hex");return J},decode($){let{Err:q}=$q;if($.length<1)throw new q("invalid signature integer: empty");if($[0]&128)throw new q("invalid signature integer: negative");if($.length>1&&$[0]===0&&!($[1]&128))throw new q("invalid signature integer: unnecessary leading zero");return z8($)}},toSig($){let{Err:q,_int:J,_tlv:G}=$q,Q=Z$($,void 0,"signature"),{v:Y,l:X}=G.decode(48,Q);if(X.length)throw new q("invalid signature: left bytes after parsing");let{v:U,l:W}=G.decode(2,Y),{v:V,l:M}=G.decode(2,W);if(M.length)throw new q("invalid signature: left bytes after parsing");return{r:J.decode(U),s:J.decode(V)}},hexFromSig($){let{_tlv:q,_int:J}=$q,G=q.encode(2,J.encode($.r)),Q=q.encode(2,J.encode($.s)),Y=G+Q;return q.encode(48,Y)}};Object.freeze($q._tlv);Object.freeze($q._int);Object.freeze($q);var Kq=BigInt(0),ZJ=BigInt(1),XH=BigInt(2),y9=BigInt(3),vE=BigInt(4);function UH($,q={}){let J=m9("weierstrass",$,q),G=J.Fp,Q=J.Fn,Y=J.CURVE,{h:X,n:U}=Y;x0(q,{},{allowInfinityPoint:"boolean",clearCofactor:"function",isTorsionFree:"function",fromBytes:"function",toBytes:"function",endo:"object"});let{endo:W,allowInfinityPoint:V}=q;if(W){if(!G.is0(Y.a)||typeof W.beta!=="bigint"||!Array.isArray(W.basises))throw Error('invalid endo: expected "beta": bigint and "basises": array')}let M=VH(G,Q);function z(){if(!G.isOdd)throw Error("compression is not supported: Field does not have .isOdd()")}function D(v,C,I){if(V&&C.is0())return Uint8Array.of(0);let{x:A,y:T}=C.toAffine(),L=G.toBytes(A);if(yq(I,"isCompressed"),I){z();let g=!G.isOdd(T);return a$(WH(g),L)}else return a$(Uint8Array.of(4),L,G.toBytes(T))}function R(v){Z$(v,void 0,"Point");let{publicKey:C,publicKeyUncompressed:I}=M,A=v.length,T=v[0],L=v.subarray(1);if(V&&A===1&&T===0)return{x:G.ZERO,y:G.ZERO};if(A===C&&(T===2||T===3)){let g=G.fromBytes(L);if(!G.isValid(g))throw Error("bad point: is not on curve, wrong x");let P=j(g),b;try{b=G.sqrt(P)}catch(r){let Z=r instanceof Error?": "+r.message:"";throw Error("bad point: is not on curve, sqrt error"+Z)}z();let O=G.isOdd(b);if((T&1)===1!==O)b=G.neg(b);return{x:g,y:b}}else if(A===I&&T===4){let g=G.BYTES,P=G.fromBytes(L.subarray(0,g)),b=G.fromBytes(L.subarray(g,g*2));if(!B(P,b))throw Error("bad point: is not on curve");return{x:P,y:b}}else throw Error(`bad point: got length ${A}, expected compressed=${C} or uncompressed=${I}`)}let N=q.toBytes===void 0?D:q.toBytes,w=q.fromBytes===void 0?R:q.fromBytes;function j(v){let C=G.sqr(v),I=G.mul(C,v);return G.add(G.add(I,G.mul(v,Y.a)),Y.b)}function B(v,C){let I=G.sqr(C),A=j(v);return G.eql(I,A)}if(!B(Y.Gx,Y.Gy))throw Error("bad curve params: generator point");let S=G.mul(G.pow(Y.a,y9),vE),_=G.mul(G.sqr(Y.b),BigInt(27));if(G.is0(G.add(S,_)))throw Error("bad curve params: a or b");function y(v,C,I=!1){if(!G.isValid(C)||I&&G.is0(C))throw Error(`bad point coordinate ${v}`);return C}function p(v){if(!(v instanceof m))throw Error("Weierstrass Point expected")}function F(v){if(!W||!W.basises)throw Error("no endo");return _E(v,W.basises,Q.ORDER)}function f(v,C,I,A,T){return I=new m(G.mul(I.X,v),I.Y,I.Z),C=pQ(A,C),I=pQ(T,I),C.add(I)}class m{static BASE=new m(Y.Gx,Y.Gy,G.ONE);static ZERO=new m(G.ZERO,G.ONE,G.ZERO);static Fp=G;static Fn=Q;X;Y;Z;constructor(v,C,I){this.X=y("x",v),this.Y=y("y",C,!0),this.Z=y("z",I),Object.freeze(this)}static CURVE(){return Y}static fromAffine(v){let{x:C,y:I}=v||{};if(!v||!G.isValid(C)||!G.isValid(I))throw Error("invalid affine point");if(v instanceof m)throw Error("projective point not allowed");if(G.is0(C)&&G.is0(I))return m.ZERO;return new m(C,I,G.ONE)}static fromBytes(v){let C=m.fromAffine(w(Z$(v,void 0,"point")));return C.assertValidity(),C}static fromHex(v){return m.fromBytes(AG(v))}get x(){return this.toAffine().x}get y(){return this.toAffine().y}precompute(v=8,C=!0){if(l.createCache(this,v),!C)this.multiply(y9);return this}assertValidity(){let v=this;if(v.is0()){if(q.allowInfinityPoint&&G.is0(v.X)&&G.eql(v.Y,G.ONE)&&G.is0(v.Z))return;throw Error("bad point: ZERO")}let{x:C,y:I}=v.toAffine();if(!G.isValid(C)||!G.isValid(I))throw Error("bad point: x or y not field elements");if(!B(C,I))throw Error("bad point: equation left != right");if(!v.isTorsionFree())throw Error("bad point: not in prime-order subgroup")}hasEvenY(){let{y:v}=this.toAffine();if(!G.isOdd)throw Error("Field doesn't support isOdd");return!G.isOdd(v)}equals(v){p(v);let{X:C,Y:I,Z:A}=this,{X:T,Y:L,Z:g}=v,P=G.eql(G.mul(C,g),G.mul(T,A)),b=G.eql(G.mul(I,g),G.mul(L,A));return P&&b}negate(){return new m(this.X,G.neg(this.Y),this.Z)}double(){let{a:v,b:C}=Y,I=G.mul(C,y9),{X:A,Y:T,Z:L}=this,g=G.ZERO,P=G.ZERO,b=G.ZERO,O=G.mul(A,A),x=G.mul(T,T),r=G.mul(L,L),Z=G.mul(A,T);return Z=G.add(Z,Z),b=G.mul(A,L),b=G.add(b,b),g=G.mul(v,b),P=G.mul(I,r),P=G.add(g,P),g=G.sub(x,P),P=G.add(x,P),P=G.mul(g,P),g=G.mul(Z,g),b=G.mul(I,b),r=G.mul(v,r),Z=G.sub(O,r),Z=G.mul(v,Z),Z=G.add(Z,b),b=G.add(O,O),O=G.add(b,O),O=G.add(O,r),O=G.mul(O,Z),P=G.add(P,O),r=G.mul(T,L),r=G.add(r,r),O=G.mul(r,Z),g=G.sub(g,O),b=G.mul(r,x),b=G.add(b,b),b=G.add(b,b),new m(g,P,b)}add(v){p(v);let{X:C,Y:I,Z:A}=this,{X:T,Y:L,Z:g}=v,P=G.ZERO,b=G.ZERO,O=G.ZERO,x=Y.a,r=G.mul(Y.b,y9),Z=G.mul(C,T),o=G.mul(I,L),q$=G.mul(A,g),Y$=G.add(C,I),G$=G.add(T,L);Y$=G.mul(Y$,G$),G$=G.add(Z,o),Y$=G.sub(Y$,G$),G$=G.add(C,A);let t=G.add(T,g);return G$=G.mul(G$,t),t=G.add(Z,q$),G$=G.sub(G$,t),t=G.add(I,A),P=G.add(L,g),t=G.mul(t,P),P=G.add(o,q$),t=G.sub(t,P),O=G.mul(x,G$),P=G.mul(r,q$),O=G.add(P,O),P=G.sub(o,O),O=G.add(o,O),b=G.mul(P,O),o=G.add(Z,Z),o=G.add(o,Z),q$=G.mul(x,q$),G$=G.mul(r,G$),o=G.add(o,q$),q$=G.sub(Z,q$),q$=G.mul(x,q$),G$=G.add(G$,q$),Z=G.mul(o,G$),b=G.add(b,Z),Z=G.mul(t,G$),P=G.mul(Y$,P),P=G.sub(P,Z),Z=G.mul(Y$,o),O=G.mul(t,O),O=G.add(O,Z),new m(P,b,O)}subtract(v){return p(v),this.add(v.negate())}is0(){return this.equals(m.ZERO)}multiply(v){let{endo:C}=q;if(!Q.isValidNot0(v))throw RangeError("invalid scalar: out of range");let I,A,T=(L)=>l.cached(this,L,(g)=>K8(m,g));if(C){let{k1neg:L,k1:g,k2neg:P,k2:b}=F(v),{p:O,f:x}=T(g),{p:r,f:Z}=T(b);A=x.add(Z),I=f(C.beta,O,r,L,P)}else{let{p:L,f:g}=T(v);I=L,A=g}return K8(m,[I,A])[0]}multiplyUnsafe(v){let{endo:C}=q,I=this,A=v;if(!Q.isValid(A))throw RangeError("invalid scalar: out of range");if(A===Kq||I.is0())return m.ZERO;if(A===ZJ)return I;if(l.hasCache(this))return this.multiply(A);if(C){let{k1neg:T,k1:L,k2neg:g,k2:P}=F(A),{p1:b,p2:O}=JH(m,I,L,P);return f(C.beta,b,O,T,g)}else return l.unsafe(I,A)}toAffine(v){let C=this,I=v,{X:A,Y:T,Z:L}=C;if(G.eql(L,G.ONE))return{x:A,y:T};let g=C.is0();if(I==null)I=g?G.ONE:G.inv(L);let P=G.mul(A,I),b=G.mul(T,I),O=G.mul(L,I);if(g)return{x:G.ZERO,y:G.ZERO};if(!G.eql(O,G.ONE))throw Error("invZ was invalid");return{x:P,y:b}}isTorsionFree(){let{isTorsionFree:v}=q;if(X===ZJ)return!0;if(v)return v(m,this);return l.unsafe(this,U).is0()}clearCofactor(){let{clearCofactor:v}=q;if(X===ZJ)return this;if(v)return v(m,this);return this.multiplyUnsafe(X)}isSmallOrder(){if(X===ZJ)return this.is0();return this.clearCofactor().is0()}toBytes(v=!0){return yq(v,"isCompressed"),this.assertValidity(),N(m,this,v)}toHex(v=!0){return jG(this.toBytes(v))}toString(){return`<Point ${this.is0()?"ZERO":this.toHex()}>`}}let k=Q.BITS,l=new lQ(m,q.endo?Math.ceil(k/2):k);if(k>=8)m.BASE.precompute(8);return Object.freeze(m.prototype),Object.freeze(m),m}function WH($){return Uint8Array.of($?2:3)}function VH($,q){return{secretKey:q.BYTES,publicKey:1+$.BYTES,publicKeyUncompressed:1+2*$.BYTES,publicKeyHasPrefix:!0,signature:2*q.BYTES}}function bE($,q={}){let{Fn:J}=$,G=q.randomBytes===void 0?BG:q.randomBytes,Q=Object.assign(VH($.Fp,J),{seed:Math.max(sW(J.ORDER),16)});function Y(R){try{let N=J.fromBytes(R);return J.isValidNot0(N)}catch(N){return!1}}function X(R,N){let{publicKey:w,publicKeyUncompressed:j}=Q;try{let B=R.length;if(N===!0&&B!==w)return!1;if(N===!1&&B!==j)return!1;return!!$.fromBytes(R)}catch(B){return!1}}function U(R){return R=R===void 0?G(Q.seed):R,a1(Z$(R,Q.seed,"seed"),J.ORDER)}function W(R,N=!0){return $.BASE.multiply(J.fromBytes(R)).toBytes(N)}function V(R){let{secretKey:N,publicKey:w,publicKeyUncompressed:j}=Q,B=J._lengths;if(!ZG(R))return;let S=Z$(R,void 0,"key").length,_=S===w||S===j,y=S===N||!!B?.includes(S);if(_&&y)return;return _}function M(R,N,w=!0){if(V(R)===!0)throw Error("first arg must be private key");if(V(N)===!1)throw Error("second arg must be public key");let j=J.fromBytes(R);return $.fromBytes(N).multiply(j).toBytes(w)}let z={isValidSecretKey:Y,isValidPublicKey:X,randomSecretKey:U},D=rQ(U,W);return Object.freeze(z),Object.freeze(Q),Object.freeze({getPublicKey:W,getSharedSecret:M,keygen:D,Point:$,utils:z,lengths:Q})}function MH($,q,J={}){let G=q;Cq(G),x0(J,{},{hmac:"function",lowS:"boolean",randomBytes:"function",bits2int:"function",bits2int_modN:"function"}),J=Object.assign({},J);let Q=J.randomBytes===void 0?BG:J.randomBytes,Y=J.hmac===void 0?(T,L)=>Uq(G,T,L):J.hmac,{Fp:X,Fn:U}=$,{ORDER:W,BITS:V}=U,{keygen:M,getPublicKey:z,getSharedSecret:D,utils:R,lengths:N}=bE($,J),w={prehash:!0,lowS:typeof J.lowS==="boolean"?J.lowS:!0,format:"compact",extraEntropy:!1},j=W*XH+ZJ<X.ORDER;function B(T){let L=W>>ZJ;return T>L}function S(T,L){if(!U.isValidNot0(L))throw Error(`invalid signature ${T}: out of range 1..Point.Fn.ORDER`);return L}function _(){if(j)throw Error('"recovered" sig type is not supported for cofactor >2 curves')}function y(T,L){G7(L);let g=N.signature,P=L==="compact"?g:L==="recovered"?g+1:void 0;return Z$(T,P)}class p{r;s;recovery;constructor(T,L,g){if(this.r=S("r",T),this.s=S("s",L),g!=null){if(_(),![0,1,2,3].includes(g))throw Error("invalid recovery id");this.recovery=g}Object.freeze(this)}static fromBytes(T,L=w.format){y(T,L);let g;if(L==="der"){let{r:x,s:r}=$q.toSig(Z$(T));return new p(x,r)}if(L==="recovered")g=T[0],L="compact",T=T.subarray(1);let P=N.signature/2,b=T.subarray(0,P),O=T.subarray(P,P*2);return new p(U.fromBytes(b),U.fromBytes(O),g)}static fromHex(T,L){return this.fromBytes(AG(T),L)}assertRecovery(){let{recovery:T}=this;if(T==null)throw Error("invalid recovery id: must be present");return T}addRecoveryBit(T){return new p(this.r,this.s,T)}recoverPublicKey(T){let{r:L,s:g}=this,P=this.assertRecovery(),b=P===2||P===3?L+W:L;if(!X.isValid(b))throw Error("invalid recovery id: sig.r+curve.n != R.x");let O=X.toBytes(b),x=$.fromBytes(a$(WH((P&1)===0),O)),r=U.inv(b),Z=f(Z$(T,void 0,"msgHash")),o=U.create(-Z*r),q$=U.create(g*r),Y$=$.BASE.multiplyUnsafe(o).add(x.multiplyUnsafe(q$));if(Y$.is0())throw Error("invalid recovery: point at infinify");return Y$.assertValidity(),Y$}hasHighS(){return B(this.s)}toBytes(T=w.format){if(G7(T),T==="der")return AG($q.hexFromSig(this));let{r:L,s:g}=this,P=U.toBytes(L),b=U.toBytes(g);if(T==="recovered")return _(),a$(Uint8Array.of(this.assertRecovery()),P,b);return a$(P,b)}toHex(T){return jG(this.toBytes(T))}}Object.freeze(p.prototype),Object.freeze(p);let F=J.bits2int===void 0?function(L){if(L.length>8192)throw Error("input is too large");let g=z8(L),P=L.length*8-V;return P>0?g>>BigInt(P):g}:J.bits2int,f=J.bits2int_modN===void 0?function(L){return U.create(F(L))}:J.bits2int_modN,m=hQ(V);function k(T){return fq("num < 2^"+V,T,Kq,m),U.toBytes(T)}function l(T,L){return Z$(T,void 0,"message"),L?Z$(G(T),void 0,"prehashed message"):T}function v(T,L,g){let{lowS:P,prehash:b,extraEntropy:O}=J7(g,w);T=l(T,b);let x=f(T),r=U.fromBytes(L);if(!U.isValidNot0(r))throw Error("invalid private key");let Z=[k(r),k(x)];if(O!=null&&O!==!1){let G$=O===!0?Q(N.secretKey):O;Z.push(Z$(G$,void 0,"extraEntropy"))}let o=a$(...Z),q$=x;function Y$(G$){let t=F(G$);if(!U.isValidNot0(t))return;let O$=U.inv(t),A$=$.BASE.multiply(t).toAffine(),S$=U.create(A$.x);if(S$===Kq)return;let y$=U.create(O$*U.create(q$+S$*r));if(y$===Kq)return;let z0=(A$.x===S$?0:2)|Number(A$.y&ZJ),qq=y$;if(P&&B(y$))qq=U.neg(y$),z0^=1;return new p(S$,qq,j?void 0:z0)}return{seed:o,k2sig:Y$}}function C(T,L,g={}){let{seed:P,k2sig:b}=v(T,L,g);return f1(G.outputLen,U.BYTES,Y)(P,b).toBytes(g.format)}function I(T,L,g,P={}){let{lowS:b,prehash:O,format:x}=J7(P,w);if(g=Z$(g,void 0,"publicKey"),L=l(L,O),!ZG(T)){let r=T instanceof p?", use sig.toBytes()":"";throw Error("verify expects Uint8Array signature"+r)}y(T,x);try{let r=p.fromBytes(T,x),Z=$.fromBytes(g);if(b&&r.hasHighS())return!1;let{r:o,s:q$}=r,Y$=f(L),G$=U.inv(q$),t=U.create(Y$*G$),O$=U.create(o*G$),A$=$.BASE.multiplyUnsafe(t).add(Z.multiplyUnsafe(O$));if(A$.is0())return!1;return U.create(A$.x)===o}catch(r){return!1}}function A(T,L,g={}){let{prehash:P}=J7(g,w);return L=l(L,P),p.fromBytes(T,"recovered").recoverPublicKey(L).toBytes()}return Object.freeze({keygen:M,getPublicKey:z,getSharedSecret:D,utils:R,lengths:N,Point:$,sign:C,verify:I,recoverPublicKey:A,Signature:p,hash:G})}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */var kE=(()=>({p:BigInt("0xffffffff00000001000000000000000000000000ffffffffffffffffffffffff"),n:BigInt("0xffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551"),h:BigInt(1),a:BigInt("0xffffffff00000001000000000000000000000000fffffffffffffffffffffffc"),b:BigInt("0x5ac635d8aa3a93e7b3ebbd55769886bc651d06b0cc53b0f63bce3c3e27d2604b"),Gx:BigInt("0x6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296"),Gy:BigInt("0x4fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5")}))();var mE=UH(kE),IG=MH(mE,P$);/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */var BJ=BigInt(0),S0=BigInt(1),Q7=BigInt(2),yE=BigInt(8);function fE($,q,J,G){let Q=$.sqr(J),Y=$.sqr(G),X=$.add($.mul(q.a,Q),Y),U=$.add($.ONE,$.mul(q.d,$.mul(Q,Y)));return $.eql(X,U)}function zH($,q={}){let J=q,G=m9("edwards",$,J,J.FpFnLE),{Fp:Q,Fn:Y}=G,X=G.CURVE,{h:U}=X;x0(J,{},{uvRatio:"function"});let W=Q7<<BigInt(Y.BYTES*8)-S0,V=(w)=>Q.create(w),M=J.uvRatio===void 0?(w,j)=>{try{return{isValid:!0,value:Q.sqrt(Q.div(w,j))}}catch(B){return{isValid:!1,value:BJ}}}:J.uvRatio;if(!fE(Q,X,X.Gx,X.Gy))throw Error("bad curve params: generator point");function z(w,j,B=!1){let S=B?S0:BJ;return fq("coordinate "+w,j,S,W),j}function D(w){if(!(w instanceof R))throw Error("EdwardsPoint expected")}class R{static BASE=new R(X.Gx,X.Gy,S0,V(X.Gx*X.Gy));static ZERO=new R(BJ,S0,S0,BJ);static Fp=Q;static Fn=Y;X;Y;Z;T;constructor(w,j,B,S){this.X=z("x",w),this.Y=z("y",j),this.Z=z("z",B,!0),this.T=z("t",S),Object.freeze(this)}static CURVE(){return X}static fromAffine(w){if(w instanceof R)throw Error("extended point not allowed");let{x:j,y:B}=w||{};return z("x",j),z("y",B),new R(j,B,S0,V(j*B))}static fromBytes(w,j=!1){let B=Q.BYTES,{a:S,d:_}=X;w=AJ(Z$(w,B,"point")),yq(j,"zip215");let y=AJ(w),p=w[B-1];y[B-1]=p&-129;let F=e0(y),f=j?W:Q.ORDER;fq("point.y",F,BJ,f);let m=V(F*F),k=V(m-S0),l=V(_*m-S),{isValid:v,value:C}=M(k,l);if(!v)throw Error("bad point: invalid y coordinate");let I=(C&S0)===S0,A=(p&128)!==0;if(!j&&C===BJ&&A)throw Error("bad point: x=0 and x_0=1");if(A!==I)C=V(-C);return R.fromAffine({x:C,y:F})}static fromHex(w,j=!1){return R.fromBytes(AG(w),j)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}precompute(w=8,j=!0){if(N.createCache(this,w),!j)this.multiply(Q7);return this}assertValidity(){let w=this,{a:j,d:B}=X;if(w.is0())throw Error("bad point: ZERO");let{X:S,Y:_,Z:y,T:p}=w,F=V(S*S),f=V(_*_),m=V(y*y),k=V(m*m),l=V(F*j),v=V(m*V(l+f)),C=V(k+V(B*V(F*f)));if(v!==C)throw Error("bad point: equation left != right (1)");let I=V(S*_),A=V(y*p);if(I!==A)throw Error("bad point: equation left != right (2)")}equals(w){D(w);let{X:j,Y:B,Z:S}=this,{X:_,Y:y,Z:p}=w,F=V(j*p),f=V(_*S),m=V(B*p),k=V(y*S);return F===f&&m===k}is0(){return this.equals(R.ZERO)}negate(){return new R(V(-this.X),this.Y,this.Z,V(-this.T))}double(){let{a:w}=X,{X:j,Y:B,Z:S}=this,_=V(j*j),y=V(B*B),p=V(Q7*V(S*S)),F=V(w*_),f=j+B,m=V(V(f*f)-_-y),k=F+y,l=k-p,v=F-y,C=V(m*l),I=V(k*v),A=V(m*v),T=V(l*k);return new R(C,I,T,A)}add(w){D(w);let{a:j,d:B}=X,{X:S,Y:_,Z:y,T:p}=this,{X:F,Y:f,Z:m,T:k}=w,l=V(S*F),v=V(_*f),C=V(p*B*k),I=V(y*m),A=V((S+_)*(F+f)-l-v),T=I-C,L=I+C,g=V(v-j*l),P=V(A*T),b=V(L*g),O=V(A*g),x=V(T*L);return new R(P,b,x,O)}subtract(w){return D(w),this.add(w.negate())}multiply(w){if(!Y.isValidNot0(w))throw RangeError("invalid scalar: expected 1 <= sc < curve.n");let{p:j,f:B}=N.cached(this,w,(S)=>K8(R,S));return K8(R,[j,B])[0]}multiplyUnsafe(w){if(!Y.isValid(w))throw RangeError("invalid scalar: expected 0 <= sc < curve.n");if(w===BJ)return R.ZERO;if(this.is0()||w===S0)return this;return N.unsafe(this,w,(j)=>K8(R,j))}isSmallOrder(){return this.clearCofactor().is0()}isTorsionFree(){return N.unsafe(this,X.n).is0()}toAffine(w){let j=this,B=w,{X:S,Y:_,Z:y}=j,p=j.is0();if(B==null)B=p?yE:Q.inv(y);let F=V(S*B),f=V(_*B),m=Q.mul(y,B);if(p)return{x:BJ,y:S0};if(m!==S0)throw Error("invZ was invalid");return{x:F,y:f}}clearCofactor(){if(U===S0)return this;return this.multiplyUnsafe(U)}toBytes(){let{x:w,y:j}=this.toAffine(),B=Q.toBytes(j);return B[B.length-1]|=w&S0?128:0,B}toHex(){return jG(this.toBytes())}toString(){return`<Point ${this.is0()?"ZERO":this.toHex()}>`}}let N=new lQ(R,Y.BITS);if(Y.BITS>=8)R.BASE.precompute(8);return Object.freeze(R.prototype),Object.freeze(R),R}class Y7{static BASE;static ZERO;static Fp;static Fn;ep;constructor($){this.ep=$}static fromBytes($){cW()}static fromHex($){cW()}get x(){return this.toAffine().x}get y(){return this.toAffine().y}clearCofactor(){return this}assertValidity(){this.ep.assertValidity()}toAffine($){return this.ep.toAffine($)}toHex(){return jG(this.toBytes())}toString(){return this.toHex()}isTorsionFree(){return!0}isSmallOrder(){return!1}add($){return this.assertSame($),this.init(this.ep.add($.ep))}subtract($){return this.assertSame($),this.init(this.ep.subtract($.ep))}multiply($){return this.init(this.ep.multiply($))}multiplyUnsafe($){return this.init(this.ep.multiplyUnsafe($))}double(){return this.init(this.ep.double())}negate(){return this.init(this.ep.negate())}precompute($,q){return this.ep.precompute($,q),this}}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */var dQ=BigInt(0),CG=BigInt(1),f9=BigInt(2);function xE($){return x0($,{P:"bigint",type:"string",adjustScalarBytes:"function",powPminus2:"function"},{randomBytes:"function"}),Object.freeze({...$})}function RH($){let q=xE($),{P:J,type:G,adjustScalarBytes:Q,powPminus2:Y,randomBytes:X}=q,U=G==="x25519";if(!U&&G!=="x448")throw Error("invalid type");let W=X===void 0?BG:X,V=U?255:448,M=U?32:56,z=U?BigInt(9):BigInt(5),D=U?BigInt(121665):BigInt(39081),R=U?f9**BigInt(254):f9**BigInt(447),N=U?BigInt(8)*f9**BigInt(251)-CG:BigInt(4)*f9**BigInt(445)-CG,w=R+N+CG,j=(A)=>B$(A,J),B=S(z);function S(A){return xQ(j(A),M)}function _(A){let T=AJ(Z$(A,M,"uCoordinate"));if(U)T[31]&=127;return j(e0(T))}function y(A){return e0(Q(AJ(Z$(A,M,"scalar"))))}function p(A,T){let L=l(_(T),y(A));if(L===dQ)throw Error("invalid private or public key received");return S(L)}function F(A){return p(A,B)}let f=F,m=p;function k(A,T,L){let g=j(A*(T-L));return T=j(T-g),L=j(L+g),{x_2:T,x_3:L}}function l(A,T){fq("u",A,dQ,J),fq("scalar",T,R,w);let L=T,g=A,P=CG,b=dQ,O=A,x=CG,r=dQ;for(let o=BigInt(V-1);o>=dQ;o--){let q$=L>>o&CG;r^=q$,{x_2:P,x_3:O}=k(r,P,O),{x_2:b,x_3:x}=k(r,b,x),r=q$;let Y$=P+b,G$=j(Y$*Y$),t=P-b,O$=j(t*t),A$=G$-O$,S$=O+x,y$=O-x,z0=j(y$*Y$),qq=j(S$*t),uq=z0+qq,pq=z0-qq;O=j(uq*uq),x=j(g*j(pq*pq)),P=j(G$*O$),b=j(A$*(G$+j(D*A$)))}({x_2:P,x_3:O}=k(r,P,O)),{x_2:b,x_3:x}=k(r,b,x);let Z=Y(b);return j(P*Z)}let v={secretKey:M,publicKey:M,seed:M},C=(A)=>{return A=A===void 0?W(M):A,Z$(A,v.seed,"seed"),A},I={randomSecretKey:C};return Object.freeze(v),Object.freeze(I),Object.freeze({keygen:rQ(C,f),getSharedSecret:m,getPublicKey:f,scalarMult:p,scalarMultBase:F,utils:I,GuBytes:B.slice(),lengths:v})}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */var hE=BigInt(0),hq=BigInt(1),DH=BigInt(2),uE=BigInt(3),pE=BigInt(5),lE=BigInt(8),O8=BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed"),V7=(()=>({p:O8,n:BigInt("0x1000000000000000000000000000000014def9dea2f79cd65812631a5cf5d3ed"),h:lE,a:BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec"),d:BigInt("0x52036cee2b6ffe738cc740797779e89800700a4d4141d8ab75eb4dca135978a3"),Gx:BigInt("0x216936d3cd6e53fec0a4e231fdd6dc5c692cc7609525a7b2c9562d608f25d51a"),Gy:BigInt("0x6666666666666666666666666666666666666666666666666666666666666658")}))();function OH($){let q=BigInt(10),J=BigInt(20),G=BigInt(40),Q=BigInt(80),Y=O8,U=$*$%Y*$%Y,W=h0(U,DH,Y)*U%Y,V=h0(W,hq,Y)*$%Y,M=h0(V,pE,Y)*V%Y,z=h0(M,q,Y)*M%Y,D=h0(z,J,Y)*z%Y,R=h0(D,G,Y)*D%Y,N=h0(R,Q,Y)*R%Y,w=h0(N,Q,Y)*R%Y,j=h0(w,q,Y)*M%Y;return{pow_p_5_8:h0(j,DH,Y)*$%Y,b2:U}}function rE($){return $[0]&=248,$[31]&=127,$[31]|=64,$}var X7=BigInt("19681161376707505956807079304988542015446066515923890162744021073123829784752");function M7($,q){let J=O8,G=B$(q*q*q,J),Q=B$(G*G*q,J),Y=OH($*Q).pow_p_5_8,X=B$($*G*Y,J),U=B$(q*X*X,J),W=X,V=B$(X*X7,J),M=U===$,z=U===B$(-$,J),D=U===B$(-$*X7,J);if(M)X=W;if(z||D)X=V;if(xq(X,J))X=B$(-X,J);return{isValid:M||z,value:X}}var H8=zH(V7,{uvRatio:M7}),TJ=(()=>H8.Fp)(),NH=(()=>H8.Fn)();var x9=(()=>{let $=O8;return RH({P:$,type:"x25519",powPminus2:(q)=>{let{pow_p_5_8:J,b2:G}=OH(q);return B$(h0(J,uE,$)*G,$)},adjustScalarBytes:rE})})();var U7=X7,iE=BigInt("25063068953384623474111414158702152701244531502492656460079210482610430750235"),dE=BigInt("54469307008909316920995813868745141605393597292927456921205312896311721017578"),cE=BigInt("1159843021668779879193775521855586647937357759715417654439879720876111806838"),nE=BigInt("40440834346308536858101042469323190826248399146238708352240133220865137265952"),KH=($)=>M7(hq,$),oE=BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"),W7=($)=>TJ.create(e0($)&oE);function HH($){let{d:q}=V7,J=O8,G=(B)=>TJ.create(B),Q=G(U7*$*$),Y=G((Q+hq)*cE),X=BigInt(-1),U=G((X-q*Q)*G(Q+q)),{isValid:W,value:V}=M7(Y,U),M=G(V*$);if(!xq(M,J))M=G(-M);if(!W)V=M;if(!W)X=Q;let z=G(X*(Q-hq)*nE-U),D=V*V,R=G((V+V)*U),N=G(z*iE),w=G(hq-D),j=G(hq+D);return new H8(G(R*j),G(w*N),G(N*j),G(R*w))}class w0 extends Y7{static BASE=(()=>new w0(H8.BASE))();static ZERO=(()=>new w0(H8.ZERO))();static Fp=(()=>TJ)();static Fn=(()=>NH)();constructor($){super($)}static fromAffine($){return new w0(H8.fromAffine($))}assertSame($){if(!($ instanceof w0))throw Error("RistrettoPoint expected")}init($){return new w0($)}static fromBytes($){r$($,32);let{a:q,d:J}=V7,G=O8,Q=(_)=>TJ.create(_),Y=W7($);if(!y1(TJ.toBytes(Y),$)||xq(Y,G))throw Error("invalid ristretto255 encoding 1");let X=Q(Y*Y),U=Q(hq+q*X),W=Q(hq-q*X),V=Q(U*U),M=Q(W*W),z=Q(q*J*V-M),{isValid:D,value:R}=KH(Q(z*M)),N=Q(R*W),w=Q(R*N*z),j=Q((Y+Y)*N);if(xq(j,G))j=Q(-j);let B=Q(U*w),S=Q(j*B);if(!D||xq(S,G)||B===hE)throw Error("invalid ristretto255 encoding 2");return new w0(new H8(j,B,hq,S))}static fromHex($){return w0.fromBytes(RQ($))}toBytes(){let{X:$,Y:q,Z:J,T:G}=this.ep,Q=O8,Y=(w)=>TJ.create(w),X=Y(Y(J+q)*Y(J-q)),U=Y($*q),W=Y(U*U),{value:V}=KH(Y(X*W)),M=Y(V*X),z=Y(V*U),D=Y(M*z*G),R;if(xq(G*D,Q)){let w=Y(q*U7),j=Y($*U7);$=w,q=j,R=Y(M*dE)}else R=z;if(xq($*D,Q))q=Y(-q);let N=Y((J-q)*R);if(xq(N,Q))N=Y(-N);return TJ.toBytes(N)}equals($){this.assertSame($);let{X:q,Y:J}=this.ep,{X:G,Y:Q}=$.ep,Y=(W)=>TJ.create(W),X=Y(q*Q)===Y(J*G),U=Y(J*Q)===Y(q*G);return X||U}is0(){return this.equals(w0.ZERO)}}Object.freeze(w0.BASE);Object.freeze(w0.ZERO);Object.freeze(w0.prototype);Object.freeze(w0);var aE=Object.freeze({Point:w0,hashToCurve($,q){let J=q?.DST===void 0?"ristretto255_XMD:SHA-512_R255MAP_RO_":q.DST,G=q7($,J,64,G9);return aE.deriveToCurve(G)},hashToScalar($,q={DST:GH}){let J=q7($,q.DST,64,G9);return NH.create(e0(J))},deriveToCurve($){r$($,64);let q=W7($.subarray(0,32)),J=HH(q),G=W7($.subarray(32,64)),Q=HH(G);return new w0(J.add(Q))}});var wH=!1,sE=!1;async function jH($,q){if(sE)return await q();try{return await $()}catch(J){if(J instanceof ReferenceError||J instanceof DOMException&&J.name==="NotSupportedError")return await q();else throw J}}async function h9($,q){return await jH(async()=>{let J=z7($)?$:await eE($),G=await crypto.subtle.importKey("raw",$L(q),{name:"X25519"},wH,[]);return new Uint8Array(await crypto.subtle.deriveBits({name:"X25519",public:G},J,256))},()=>{if(z7($))throw Error("CryptoKey provided but X25519 WebCrypto is not supported");return x9.scalarMult($,q)})}async function cQ($){return await jH(async()=>{return h9($,x9.GuBytes)},()=>{if(z7($))throw Error("CryptoKey provided but X25519 WebCrypto is not supported");return x9.scalarMultBase($)})}var tE=new Uint8Array([48,46,2,1,0,48,5,6,3,43,101,110,4,34,4,32]);async function eE($){if($.length!==32)throw Error("X25519 private key must be 32 bytes");let q=new Uint8Array([...tE,...$]);return crypto.subtle.importKey("pkcs8",q,{name:"X25519"},wH,["deriveBits"])}function z7($){return typeof CryptoKey<"u"&&$ instanceof CryptoKey}function $L($){return $}class R7{s;transcript=[];buf=new Uint8Array(0);constructor($){this.s=$.getReader()}async readLine(){let $=[];while(!0){let q=this.buf.indexOf(10);if(q>=0)return $.push(this.buf.subarray(0,q)),this.transcript.push(this.buf.subarray(0,q+1)),this.buf=this.buf.subarray(q+1),JL(N8($));if(this.buf.length>0)$.push(this.buf),this.transcript.push(this.buf);let J=await this.s.read();if(J.done)return this.buf=N8($),null;this.buf=J.value}}close(){return this.s.releaseLock(),{rest:this.buf,transcript:N8(this.transcript)}}}function JL($){return $.forEach((q)=>{if(q<32||q>126)throw Error("invalid non-ASCII byte in header")}),new TextDecoder().decode($)}function N8($){let q=$.reduce((Q,Y)=>Q+Y.length,0),J=new Uint8Array(q),G=0;for(let Q of $)J.set(Q,G),G+=Q.length;return J}function EG($,...q){return $.pipeThrough(new TransformStream({start(J){for(let G of q)J.enqueue(G)}}))}function u9($){return new ReadableStream({start(q){q.enqueue($),q.close()}})}async function D7($){if(!($ instanceof ReadableStream))throw Error("readAll expects a ReadableStream<Uint8Array>");return new Uint8Array(await new Response($).arrayBuffer())}async function AH($){if(!($ instanceof ReadableStream))throw Error("readAllString expects a ReadableStream<Uint8Array>");return await new Response($).text()}async function ZH($,q){let J=$.getReader(),G=[],Q=0;while(Q<q){let{done:W,value:V}=await J.read();if(W)throw Error("stream ended before reading "+q.toString()+" bytes");G.push(V),Q+=V.length}J.releaseLock();let Y=N8(G),X=Y.subarray(0,q),U=EG($,Y.subarray(q));return{data:X,rest:U}}class Hq{args;body;constructor($,q){this.args=$,this.body=q}}async function GL($){let q=await $.readLine();if(q===null)throw Error("invalid stanza");let J=q.split(" ");if(J.length<2||J.shift()!=="->")return{next:q};for(let Y of J)if(Y.length===0)throw Error("invalid stanza");let G=[];for(;;){let Y=await $.readLine();if(Y===null)throw Error("invalid stanza");let X=X0.decode(Y);if(X.length>48)throw Error("invalid stanza");if(G.push(X),X.length<48)break}let Q=N8(G);return{s:new Hq(J,Q)}}async function BH($){let q=new R7($),J=await q.readLine();if(J!=="age-encryption.org/v1")throw Error("invalid version "+(J??"line"));let G=[];for(;;){let{s:Q,next:Y}=await GL(q);if(Q!==void 0){G.push(Q);continue}if(!Y.startsWith("--- "))throw Error("invalid header");let X=X0.decode(Y.slice(4)),{rest:U,transcript:W}=q.close(),V=W.slice(0,W.length-1-Y.length+3);return{stanzas:G,headerNoMAC:V,MAC:X,headerSize:W.length,rest:EG($,U)}}}function K7($){let q=[];q.push(`age-encryption.org/v1
281
+ `)}async function ID($,q){try{return await CD($,q,{flag:"wx"}),!0}catch(J){if(L2(J))return!1;throw J}}async function E2($){try{return await j2($),!0}catch{return!1}}function L2($){return ED($,"EEXIST")}function P2($){return ED($,"ENOENT")}function ED($,q){return typeof $==="object"&&$!==null&&"code"in $&&$.code===q}function F2($){return $.split("-").filter((q)=>q.length>0).map((q)=>`${q[0]?.toUpperCase()??""}${q.slice(1)}`).join(" ")}async function hU($,q,J,G={}){let{registry:Q,users:Y}=await BD($,q);await YG($,Q,Y,J,G)}async function uU($,q,J={}){let{registry:G,users:Q}=await TD($);await YG($,G,Q,q,J)}import{parseArgs as g2}from"util";var _2={help:{type:"boolean",short:"h"},version:{type:"boolean",short:"v"},"dry-run":{type:"boolean"},"push-to":{type:"string"},cohort:{type:"string"},"anchor-id":{type:"string"}};function pU($,q){let J=$[q];return typeof J==="boolean"?J:void 0}function lU($,q){let J=$[q];return typeof J==="string"?J:void 0}function v2($){let{values:q,positionals:J}=g2({args:$,options:_2,allowPositionals:!0});if(q.help)return{command:"help",args:[],flags:{help:!0}};if(q.version)return{command:"version",args:[],flags:{version:!0}};return{command:J[0]??"help",args:J.slice(1),flags:{help:pU(q,"help"),version:pU(q,"version"),dryRun:pU(q,"dry-run"),pushTo:lU(q,"push-to"),cohort:lU(q,"cohort"),anchorId:lU(q,"anchor-id")}}}import{existsSync as DL,mkdirSync as KL,readFileSync as g7,writeFileSync as _7}from"fs";import{dirname as HL,join as gH}from"path";function rU($){return $ instanceof Uint8Array||ArrayBuffer.isView($)&&$.constructor.name==="Uint8Array"&&"BYTES_PER_ELEMENT"in $&&$.BYTES_PER_ELEMENT===1}function L$($,q=""){if(typeof $!=="number"){let J=q&&`"${q}" `;throw TypeError(`${J}expected number, got ${typeof $}`)}if(!Number.isSafeInteger($)||$<0){let J=q&&`"${q}" `;throw RangeError(`${J}expected integer >= 0, got ${$}`)}}function r$($,q,J=""){let G=rU($),Q=$?.length,Y=q!==void 0;if(!G||Y&&Q!==q){let X=J&&`"${J}" `,U=Y?` of length ${q}`:"",W=G?`length=${Q}`:`type=${typeof $}`,V=X+"expected Uint8Array"+U+", got "+W;if(!G)throw TypeError(V);throw RangeError(V)}return $}function Cq($){if(typeof $!=="function"||typeof $.create!=="function")throw TypeError("Hash must wrapped by utils.createHasher");if(L$($.outputLen),L$($.blockLen),$.outputLen<1)throw Error('"outputLen" must be >= 1');if($.blockLen<1)throw Error('"blockLen" must be >= 1')}function UG($,q=!0){if($.destroyed)throw Error("Hash instance has been destroyed");if(q&&$.finished)throw Error("Hash#digest() has already been called")}function sY($,q){r$($,void 0,"digestInto() output");let J=q.outputLen;if($.length<J)throw RangeError('"digestInto() output" expected to be of length >='+J)}function tY($){return new Uint32Array($.buffer,$.byteOffset,Math.floor($.byteLength/4))}function H0(...$){for(let q=0;q<$.length;q++)$[q].fill(0)}function WG($){return new DataView($.buffer,$.byteOffset,$.byteLength)}function a0($,q){return $<<32-q|$>>>q}function N$($,q){return $<<q|$>>>32-q>>>0}var b2=(()=>new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68)();function k2($){return $<<24&4278190080|$<<8&16711680|$>>>8&65280|$>>>24&255}function m2($){for(let q=0;q<$.length;q++)$[q]=k2($[q]);return $}var iU=b2?($)=>$:m2,PD=(()=>typeof Uint8Array.from([]).toHex==="function"&&typeof Uint8Array.fromHex==="function")(),y2=Array.from({length:256},($,q)=>q.toString(16).padStart(2,"0"));function eY($){if(r$($),PD)return $.toHex();let q="";for(let J=0;J<$.length;J++)q+=y2[$[J]];return q}var Iq={_0:48,_9:57,A:65,F:70,a:97,f:102};function LD($){if($>=Iq._0&&$<=Iq._9)return $-Iq._0;if($>=Iq.A&&$<=Iq.F)return $-(Iq.A-10);if($>=Iq.a&&$<=Iq.f)return $-(Iq.a-10);return}function RQ($){if(typeof $!=="string")throw TypeError("hex string expected, got "+typeof $);if(PD)try{return Uint8Array.fromHex($)}catch(Q){if(Q instanceof SyntaxError)throw RangeError(Q.message);throw Q}let q=$.length,J=q/2;if(q%2)throw RangeError("hex string expected, got unpadded hex of length "+q);let G=new Uint8Array(J);for(let Q=0,Y=0;Q<J;Q++,Y+=2){let X=LD($.charCodeAt(Y)),U=LD($.charCodeAt(Y+1));if(X===void 0||U===void 0){let W=$[Y]+$[Y+1];throw RangeError('hex string expected, got non-hex character "'+W+'" at index '+Y)}G[Q]=X*16+U}return G}function f2($){if(typeof $!=="string")throw TypeError("string expected");return new Uint8Array(new TextEncoder().encode($))}function dU($,q=""){if(typeof $==="string")return f2($);return r$($,void 0,q)}function cU(...$){let q=0;for(let G=0;G<$.length;G++){let Q=$[G];r$(Q),q+=Q.length}let J=new Uint8Array(q);for(let G=0,Q=0;G<$.length;G++){let Y=$[G];J.set(Y,Q),Q+=Y.length}return J}function $9($,q){if(q!==void 0&&{}.toString.call(q)!=="[object Object]")throw TypeError("options must be object or undefined");return Object.assign($,q)}function nU($,q={}){let J=(Q,Y)=>$(Y).update(Q).digest(),G=$(void 0);return J.outputLen=G.outputLen,J.blockLen=G.blockLen,J.canXOF=G.canXOF,J.create=(Q)=>$(Q),Object.assign(J,q),Object.freeze(J)}function Eq($=32){L$($,"bytesLength");let q=typeof globalThis==="object"?globalThis.crypto:null;if(typeof q?.getRandomValues!=="function")throw Error("crypto.getRandomValues must be defined");if($>65536)throw RangeError(`"bytesLength" expected <= 65536, got ${$}`);return q.getRandomValues(new Uint8Array($))}var oU=($)=>({oid:Uint8Array.from([6,9,96,134,72,1,101,3,4,2,$])});class aU{oHash;iHash;blockLen;outputLen;canXOF=!1;finished=!1;destroyed=!1;constructor($,q){if(Cq($),r$(q,void 0,"key"),this.iHash=$.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 J=this.blockLen,G=new Uint8Array(J);G.set(q.length>J?$.create().update(q).digest():q);for(let Q=0;Q<G.length;Q++)G[Q]^=54;this.iHash.update(G),this.oHash=$.create();for(let Q=0;Q<G.length;Q++)G[Q]^=106;this.oHash.update(G),H0(G)}update($){return UG(this),this.iHash.update($),this}digestInto($){UG(this),sY($,this),this.finished=!0;let q=$.subarray(0,this.outputLen);this.iHash.digestInto(q),this.oHash.update(q),this.oHash.digestInto(q),this.destroy()}digest(){let $=new Uint8Array(this.oHash.outputLen);return this.digestInto($),$}_cloneInto($){$||=Object.create(Object.getPrototypeOf(this),{});let{oHash:q,iHash:J,finished:G,destroyed:Q,blockLen:Y,outputLen:X}=this;return $=$,$.finished=G,$.destroyed=Q,$.blockLen=Y,$.outputLen=X,$.oHash=q._cloneInto($.oHash),$.iHash=J._cloneInto($.iHash),$}clone(){return this._cloneInto()}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}}var Uq=(()=>{let $=(q,J,G)=>new aU(q,J).update(G).digest();return $.create=(q,J)=>new aU(q,J),$})();function DQ($,q,J){if(Cq($),J===void 0)J=new Uint8Array($.outputLen);return Uq($,J,q)}var sU=Uint8Array.of(0),FD=Uint8Array.of();function tU($,q,J,G=32){Cq($),L$(G,"length"),r$(q,void 0,"prk");let Q=$.outputLen;if(q.length<Q)throw Error('"prk" must be at least HashLen octets');if(G>255*Q)throw Error("Length must be <= 255*HashLen");let Y=Math.ceil(G/Q);if(J===void 0)J=FD;else r$(J,void 0,"info");let X=new Uint8Array(Y*Q),U=Uq.create($,q),W=U._cloneInto(),V=new Uint8Array(U.outputLen);for(let M=0;M<Y;M++)sU[0]=M+1,W.update(M===0?FD:V).update(J).update(sU).digestInto(V),X.set(V,Q*M),U._cloneInto(W);return U.destroy(),W.destroy(),H0(V,sU),X.slice(0,G)}var XJ=($,q,J,G,Q)=>tU($,DQ($,q,J),G,Q);function gD($,q,J){return $&q^~$&J}function _D($,q,J){return $&q^$&J^q&J}class q9{blockLen;outputLen;canXOF=!1;padOffset;isLE;buffer;view;finished=!1;length=0;pos=0;destroyed=!1;constructor($,q,J,G){this.blockLen=$,this.outputLen=q,this.padOffset=J,this.isLE=G,this.buffer=new Uint8Array($),this.view=WG(this.buffer)}update($){UG(this),r$($);let{view:q,buffer:J,blockLen:G}=this,Q=$.length;for(let Y=0;Y<Q;){let X=Math.min(G-this.pos,Q-Y);if(X===G){let U=WG($);for(;G<=Q-Y;Y+=G)this.process(U,Y);continue}if(J.set($.subarray(Y,Y+X),this.pos),this.pos+=X,Y+=X,this.pos===G)this.process(q,0),this.pos=0}return this.length+=$.length,this.roundClean(),this}digestInto($){UG(this),sY($,this),this.finished=!0;let{buffer:q,view:J,blockLen:G,isLE:Q}=this,{pos:Y}=this;if(q[Y++]=128,H0(this.buffer.subarray(Y)),this.padOffset>G-Y)this.process(J,0),Y=0;for(let M=Y;M<G;M++)q[M]=0;J.setBigUint64(G-8,BigInt(this.length*8),Q),this.process(J,0);let X=WG($),U=this.outputLen;if(U%4)throw Error("_sha2: outputLen must be aligned to 32bit");let W=U/4,V=this.get();if(W>V.length)throw Error("_sha2: outputLen bigger than state");for(let M=0;M<W;M++)X.setUint32(4*M,V[M],Q)}digest(){let{buffer:$,outputLen:q}=this;this.digestInto($);let J=$.slice(0,q);return this.destroy(),J}_cloneInto($){$||=new this.constructor,$.set(...this.get());let{blockLen:q,buffer:J,length:G,finished:Q,destroyed:Y,pos:X}=this;if($.destroyed=Y,$.finished=Q,$.length=G,$.pos=X,G%q)$.buffer.set(J);return $}clone(){return this._cloneInto()}}var Lq=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),Pq=Uint32Array.from([3238371032,914150663,812702999,4144912697,4290775857,1750603025,1694076839,3204075428]),i$=Uint32Array.from([3418070365,3238371032,1654270250,914150663,2438529370,812702999,355462360,4144912697,1731405415,4290775857,2394180231,1750603025,3675008525,1694076839,1203062813,3204075428]),d$=Uint32Array.from([1779033703,4089235720,3144134277,2227873595,1013904242,4271175723,2773480762,1595750129,1359893119,2917565137,2600822924,725511199,528734635,4215389547,1541459225,327033209]);var J9=BigInt(4294967295),vD=BigInt(32);function x2($,q=!1){if(q)return{h:Number($&J9),l:Number($>>vD&J9)};return{h:Number($>>vD&J9)|0,l:Number($&J9)|0}}function bD($,q=!1){let J=$.length,G=new Uint32Array(J),Q=new Uint32Array(J);for(let Y=0;Y<J;Y++){let{h:X,l:U}=x2($[Y],q);[G[Y],Q[Y]]=[X,U]}return[G,Q]}var eU=($,q,J)=>$>>>J,$W=($,q,J)=>$<<32-J|q>>>J,sJ=($,q,J)=>$>>>J|q<<32-J,tJ=($,q,J)=>$<<32-J|q>>>J,KQ=($,q,J)=>$<<64-J|q>>>J-32,HQ=($,q,J)=>$>>>J-32|q<<64-J;function Wq($,q,J,G){let Q=(q>>>0)+(G>>>0);return{h:$+J+(Q/4294967296|0)|0,l:Q|0}}var kD=($,q,J)=>($>>>0)+(q>>>0)+(J>>>0),mD=($,q,J,G)=>q+J+G+($/4294967296|0)|0,yD=($,q,J,G)=>($>>>0)+(q>>>0)+(J>>>0)+(G>>>0),fD=($,q,J,G,Q)=>q+J+G+Q+($/4294967296|0)|0,xD=($,q,J,G,Q)=>($>>>0)+(q>>>0)+(J>>>0)+(G>>>0)+(Q>>>0),hD=($,q,J,G,Q,Y)=>q+J+G+Q+Y+($/4294967296|0)|0;var u2=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]),UJ=new Uint32Array(64);class qW extends q9{constructor($){super(64,$,8,!1)}get(){let{A:$,B:q,C:J,D:G,E:Q,F:Y,G:X,H:U}=this;return[$,q,J,G,Q,Y,X,U]}set($,q,J,G,Q,Y,X,U){this.A=$|0,this.B=q|0,this.C=J|0,this.D=G|0,this.E=Q|0,this.F=Y|0,this.G=X|0,this.H=U|0}process($,q){for(let M=0;M<16;M++,q+=4)UJ[M]=$.getUint32(q,!1);for(let M=16;M<64;M++){let z=UJ[M-15],D=UJ[M-2],R=a0(z,7)^a0(z,18)^z>>>3,N=a0(D,17)^a0(D,19)^D>>>10;UJ[M]=N+UJ[M-7]+R+UJ[M-16]|0}let{A:J,B:G,C:Q,D:Y,E:X,F:U,G:W,H:V}=this;for(let M=0;M<64;M++){let z=a0(X,6)^a0(X,11)^a0(X,25),D=V+z+gD(X,U,W)+u2[M]+UJ[M]|0,N=(a0(J,2)^a0(J,13)^a0(J,22))+_D(J,G,Q)|0;V=W,W=U,U=X,X=Y+D|0,Y=Q,Q=G,G=J,J=D+N|0}J=J+this.A|0,G=G+this.B|0,Q=Q+this.C|0,Y=Y+this.D|0,X=X+this.E|0,U=U+this.F|0,W=W+this.G|0,V=V+this.H|0,this.set(J,G,Q,Y,X,U,W,V)}roundClean(){H0(UJ)}destroy(){this.destroyed=!0,this.set(0,0,0,0,0,0,0,0),H0(this.buffer)}}class uD extends qW{A=Lq[0]|0;B=Lq[1]|0;C=Lq[2]|0;D=Lq[3]|0;E=Lq[4]|0;F=Lq[5]|0;G=Lq[6]|0;H=Lq[7]|0;constructor(){super(32)}}class p2 extends qW{A=Pq[0]|0;B=Pq[1]|0;C=Pq[2]|0;D=Pq[3]|0;E=Pq[4]|0;F=Pq[5]|0;G=Pq[6]|0;H=Pq[7]|0;constructor(){super(28)}}var pD=(()=>bD(["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(($)=>BigInt($))))(),l2=(()=>pD[0])(),r2=(()=>pD[1])(),WJ=new Uint32Array(80),VJ=new Uint32Array(80);class OQ extends q9{constructor($){super(128,$,16,!1)}get(){let{Ah:$,Al:q,Bh:J,Bl:G,Ch:Q,Cl:Y,Dh:X,Dl:U,Eh:W,El:V,Fh:M,Fl:z,Gh:D,Gl:R,Hh:N,Hl:w}=this;return[$,q,J,G,Q,Y,X,U,W,V,M,z,D,R,N,w]}set($,q,J,G,Q,Y,X,U,W,V,M,z,D,R,N,w){this.Ah=$|0,this.Al=q|0,this.Bh=J|0,this.Bl=G|0,this.Ch=Q|0,this.Cl=Y|0,this.Dh=X|0,this.Dl=U|0,this.Eh=W|0,this.El=V|0,this.Fh=M|0,this.Fl=z|0,this.Gh=D|0,this.Gl=R|0,this.Hh=N|0,this.Hl=w|0}process($,q){for(let S=0;S<16;S++,q+=4)WJ[S]=$.getUint32(q),VJ[S]=$.getUint32(q+=4);for(let S=16;S<80;S++){let _=WJ[S-15]|0,y=VJ[S-15]|0,p=sJ(_,y,1)^sJ(_,y,8)^eU(_,y,7),F=tJ(_,y,1)^tJ(_,y,8)^$W(_,y,7),f=WJ[S-2]|0,m=VJ[S-2]|0,k=sJ(f,m,19)^KQ(f,m,61)^eU(f,m,6),l=tJ(f,m,19)^HQ(f,m,61)^$W(f,m,6),v=yD(F,l,VJ[S-7],VJ[S-16]),C=fD(v,p,k,WJ[S-7],WJ[S-16]);WJ[S]=C|0,VJ[S]=v|0}let{Ah:J,Al:G,Bh:Q,Bl:Y,Ch:X,Cl:U,Dh:W,Dl:V,Eh:M,El:z,Fh:D,Fl:R,Gh:N,Gl:w,Hh:j,Hl:B}=this;for(let S=0;S<80;S++){let _=sJ(M,z,14)^sJ(M,z,18)^KQ(M,z,41),y=tJ(M,z,14)^tJ(M,z,18)^HQ(M,z,41),p=M&D^~M&N,F=z&R^~z&w,f=xD(B,y,F,r2[S],VJ[S]),m=hD(f,j,_,p,l2[S],WJ[S]),k=f|0,l=sJ(J,G,28)^KQ(J,G,34)^KQ(J,G,39),v=tJ(J,G,28)^HQ(J,G,34)^HQ(J,G,39),C=J&Q^J&X^Q&X,I=G&Y^G&U^Y&U;j=N|0,B=w|0,N=D|0,w=R|0,D=M|0,R=z|0,{h:M,l:z}=Wq(W|0,V|0,m|0,k|0),W=X|0,V=U|0,X=Q|0,U=Y|0,Q=J|0,Y=G|0;let A=kD(k,v,I);J=mD(A,m,l,C),G=A|0}({h:J,l:G}=Wq(this.Ah|0,this.Al|0,J|0,G|0)),{h:Q,l:Y}=Wq(this.Bh|0,this.Bl|0,Q|0,Y|0),{h:X,l:U}=Wq(this.Ch|0,this.Cl|0,X|0,U|0),{h:W,l:V}=Wq(this.Dh|0,this.Dl|0,W|0,V|0),{h:M,l:z}=Wq(this.Eh|0,this.El|0,M|0,z|0),{h:D,l:R}=Wq(this.Fh|0,this.Fl|0,D|0,R|0),{h:N,l:w}=Wq(this.Gh|0,this.Gl|0,N|0,w|0),{h:j,l:B}=Wq(this.Hh|0,this.Hl|0,j|0,B|0),this.set(J,G,Q,Y,X,U,W,V,M,z,D,R,N,w,j,B)}roundClean(){H0(WJ,VJ)}destroy(){this.destroyed=!0,H0(this.buffer),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}}class lD extends OQ{Ah=d$[0]|0;Al=d$[1]|0;Bh=d$[2]|0;Bl=d$[3]|0;Ch=d$[4]|0;Cl=d$[5]|0;Dh=d$[6]|0;Dl=d$[7]|0;Eh=d$[8]|0;El=d$[9]|0;Fh=d$[10]|0;Fl=d$[11]|0;Gh=d$[12]|0;Gl=d$[13]|0;Hh=d$[14]|0;Hl=d$[15]|0;constructor(){super(64)}}class i2 extends OQ{Ah=i$[0]|0;Al=i$[1]|0;Bh=i$[2]|0;Bl=i$[3]|0;Ch=i$[4]|0;Cl=i$[5]|0;Dh=i$[6]|0;Dl=i$[7]|0;Eh=i$[8]|0;El=i$[9]|0;Fh=i$[10]|0;Fl=i$[11]|0;Gh=i$[12]|0;Gl=i$[13]|0;Hh=i$[14]|0;Hl=i$[15]|0;constructor(){super(48)}}var Q0=Uint32Array.from([2352822216,424955298,1944164710,2312950998,502970286,855612546,1738396948,1479516111,258812777,2077511080,2011393907,79989058,1067287976,1780299464,286451373,2446758561]),Y0=Uint32Array.from([573645204,4230739756,2673172387,3360449730,596883563,1867755857,2520282905,1497426621,2519219938,2827943907,3193839141,1401305490,721525244,746961066,246885852,2177182882]);class d2 extends OQ{Ah=Q0[0]|0;Al=Q0[1]|0;Bh=Q0[2]|0;Bl=Q0[3]|0;Ch=Q0[4]|0;Cl=Q0[5]|0;Dh=Q0[6]|0;Dl=Q0[7]|0;Eh=Q0[8]|0;El=Q0[9]|0;Fh=Q0[10]|0;Fl=Q0[11]|0;Gh=Q0[12]|0;Gl=Q0[13]|0;Hh=Q0[14]|0;Hl=Q0[15]|0;constructor(){super(28)}}class c2 extends OQ{Ah=Y0[0]|0;Al=Y0[1]|0;Bh=Y0[2]|0;Bl=Y0[3]|0;Ch=Y0[4]|0;Cl=Y0[5]|0;Dh=Y0[6]|0;Dl=Y0[7]|0;Eh=Y0[8]|0;El=Y0[9]|0;Fh=Y0[10]|0;Fl=Y0[11]|0;Gh=Y0[12]|0;Gl=Y0[13]|0;Hh=Y0[14]|0;Hl=Y0[15]|0;constructor(){super(32)}}var P$=nU(()=>new uD,oU(1));var G9=nU(()=>new lD,oU(3));/*! scure-base - MIT License (c) 2022 Paul Miller (paulmillr.com) */function W9($){return $ instanceof Uint8Array||ArrayBuffer.isView($)&&$.constructor.name==="Uint8Array"}function QW($){if(!W9($))throw Error("Uint8Array expected")}function nD($,q){if(!Array.isArray(q))return!1;if(q.length===0)return!0;if($)return q.every((J)=>typeof J==="string");else return q.every((J)=>Number.isSafeInteger(J))}function oD($){if(typeof $!=="function")throw Error("function expected");return!0}function MJ($,q){if(typeof q!=="string")throw Error(`${$}: string expected`);return!0}function wQ($){if(!Number.isSafeInteger($))throw Error(`invalid integer: ${$}`)}function Y9($){if(!Array.isArray($))throw Error("array expected")}function X9($,q){if(!nD(!0,q))throw Error(`${$}: array of strings expected`)}function YW($,q){if(!nD(!1,q))throw Error(`${$}: array of numbers expected`)}function P0(...$){let q=(Y)=>Y,J=(Y,X)=>(U)=>Y(X(U)),G=$.map((Y)=>Y.encode).reduceRight(J,q),Q=$.map((Y)=>Y.decode).reduce(J,q);return{encode:G,decode:Q}}function F0($){let q=typeof $==="string"?$.split(""):$,J=q.length;X9("alphabet",q);let G=new Map(q.map((Q,Y)=>[Q,Y]));return{encode:(Q)=>{return Y9(Q),Q.map((Y)=>{if(!Number.isSafeInteger(Y)||Y<0||Y>=J)throw Error(`alphabet.encode: digit index outside alphabet "${Y}". Allowed: ${$}`);return q[Y]})},decode:(Q)=>{return Y9(Q),Q.map((Y)=>{MJ("alphabet.decode",Y);let X=G.get(Y);if(X===void 0)throw Error(`Unknown letter: "${Y}". Allowed: ${$}`);return X})}}}function g0($=""){return MJ("join",$),{encode:(q)=>{return X9("join.decode",q),q.join($)},decode:(q)=>{return MJ("join.decode",q),q.split($)}}}function V9($,q="="){return wQ($),MJ("padding",q),{encode(J){X9("padding.encode",J);while(J.length*$%8)J.push(q);return J},decode(J){X9("padding.decode",J);let G=J.length;if(G*$%8)throw Error("padding: invalid, string should have whole number of bytes");for(;G>0&&J[G-1]===q;G--)if((G-1)*$%8===0)throw Error("padding: invalid, string has too much padding");return J.slice(0,G)}}}function aD($){return oD($),{encode:(q)=>q,decode:(q)=>$(q)}}function rD($,q,J){if(q<2)throw Error(`convertRadix: invalid from=${q}, base cannot be less than 2`);if(J<2)throw Error(`convertRadix: invalid to=${J}, base cannot be less than 2`);if(Y9($),!$.length)return[];let G=0,Q=[],Y=Array.from($,(U)=>{if(wQ(U),U<0||U>=q)throw Error(`invalid integer: ${U}`);return U}),X=Y.length;while(!0){let U=0,W=!0;for(let V=G;V<X;V++){let M=Y[V],z=q*U,D=z+M;if(!Number.isSafeInteger(D)||z/q!==U||D-M!==z)throw Error("convertRadix: carry overflow");let R=D/J;U=D%J;let N=Math.floor(R);if(Y[V]=N,!Number.isSafeInteger(N)||N*J+U!==D)throw Error("convertRadix: carry overflow");if(!W)continue;else if(!N)G=V;else W=!1}if(Q.push(U),W)break}for(let U=0;U<$.length-1&&$[U]===0;U++)Q.push(0);return Q.reverse()}var sD=($,q)=>q===0?$:sD(q,$%q),U9=($,q)=>$+(q-sD($,q)),Q9=(()=>{let $=[];for(let q=0;q<40;q++)$.push(2**q);return $})();function JW($,q,J,G){if(Y9($),q<=0||q>32)throw Error(`convertRadix2: wrong from=${q}`);if(J<=0||J>32)throw Error(`convertRadix2: wrong to=${J}`);if(U9(q,J)>32)throw Error(`convertRadix2: carry overflow from=${q} to=${J} carryBits=${U9(q,J)}`);let Q=0,Y=0,X=Q9[q],U=Q9[J]-1,W=[];for(let V of $){if(wQ(V),V>=X)throw Error(`convertRadix2: invalid data word=${V} from=${q}`);if(Q=Q<<q|V,Y+q>32)throw Error(`convertRadix2: carry overflow pos=${Y} from=${q}`);Y+=q;for(;Y>=J;Y-=J)W.push((Q>>Y-J&U)>>>0);let M=Q9[Y];if(M===void 0)throw Error("invalid carry");Q&=M-1}if(Q=Q<<J-Y&U,!G&&Y>=q)throw Error("Excess padding");if(!G&&Q>0)throw Error(`Non-zero padding: ${Q}`);if(G&&Y>0)W.push(Q>>>0);return W}function n2($){wQ($);let q=256;return{encode:(J)=>{if(!W9(J))throw Error("radix.encode input should be Uint8Array");return rD(Array.from(J),q,$)},decode:(J)=>{return YW("radix.decode",J),Uint8Array.from(rD(J,$,q))}}}function k0($,q=!1){if(wQ($),$<=0||$>32)throw Error("radix2: bits should be in (0..32]");if(U9(8,$)>32||U9($,8)>32)throw Error("radix2: carry overflow");return{encode:(J)=>{if(!W9(J))throw Error("radix2.encode input should be Uint8Array");return JW(Array.from(J),8,$,!q)},decode:(J)=>{return YW("radix2.decode",J),Uint8Array.from(JW(J,$,8,q))}}}function iD($){return oD($),function(...q){try{return $.apply(null,q)}catch(J){}}}var Vu=P0(k0(4),F0("0123456789ABCDEF"),g0("")),Mu=P0(k0(5),F0("ABCDEFGHIJKLMNOPQRSTUVWXYZ234567"),V9(5),g0("")),zu=P0(k0(5),F0("ABCDEFGHIJKLMNOPQRSTUVWXYZ234567"),g0("")),Ru=P0(k0(5),F0("0123456789ABCDEFGHIJKLMNOPQRSTUV"),V9(5),g0("")),Du=P0(k0(5),F0("0123456789ABCDEFGHIJKLMNOPQRSTUV"),g0("")),Ku=P0(k0(5),F0("0123456789ABCDEFGHJKMNPQRSTVWXYZ"),g0(""),aD(($)=>$.toUpperCase().replace(/O/g,"0").replace(/[IL]/g,"1"))),tD=(()=>typeof Uint8Array.from([]).toBase64==="function"&&typeof Uint8Array.fromBase64==="function")(),eD=($,q)=>{MJ("base64",$);let J=q?/^[A-Za-z0-9=_-]+$/:/^[A-Za-z0-9=+/]+$/,G=q?"base64url":"base64";if($.length>0&&!J.test($))throw Error("invalid base64");return Uint8Array.fromBase64($,{alphabet:G,lastChunkHandling:"strict"})},XW=tD?{encode($){return QW($),$.toBase64()},decode($){return eD($,!1)}}:P0(k0(6),F0("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"),V9(6),g0("")),X0=P0(k0(6),F0("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"),g0("")),Hu=tD?{encode($){return QW($),$.toBase64({alphabet:"base64url"})},decode($){return eD($,!0)}}:P0(k0(6),F0("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_"),V9(6),g0("")),Ou=P0(k0(6),F0("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_"),g0("")),UW=($)=>P0(n2(58),F0($),g0("")),Nu=UW("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"),wu=UW("123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"),ju=UW("rpshnaf39wBUDNEGHJKLM4PQRST7VWXYZ2bcdeCg65jkm8oFqi1tuvAxyz");var GW=P0(F0("qpzry9x8gf2tvdw0s3jn54khce6mua7l"),g0("")),dD=[996825010,642813549,513874426,1027748829,705979059];function NQ($){let q=$>>25,J=($&33554431)<<5;for(let G=0;G<dD.length;G++)if((q>>G&1)===1)J^=dD[G];return J}function cD($,q,J=1){let G=$.length,Q=1;for(let Y=0;Y<G;Y++){let X=$.charCodeAt(Y);if(X<33||X>126)throw Error(`Invalid prefix (${$})`);Q=NQ(Q)^X>>5}Q=NQ(Q);for(let Y=0;Y<G;Y++)Q=NQ(Q)^$.charCodeAt(Y)&31;for(let Y of q)Q=NQ(Q)^Y;for(let Y=0;Y<6;Y++)Q=NQ(Q);return Q^=J,GW.encode(JW([Q%Q9[30]],30,5,!1))}function $K($){let q=$==="bech32"?1:734539939,J=k0(5),G=J.decode,Q=J.encode,Y=iD(G);function X(z,D,R=90){if(MJ("bech32.encode prefix",z),W9(D))D=Array.from(D);YW("bech32.encode",D);let N=z.length;if(N===0)throw TypeError(`Invalid prefix length ${N}`);let w=N+7+D.length;if(R!==!1&&w>R)throw TypeError(`Length ${w} exceeds limit ${R}`);let j=z.toLowerCase(),B=cD(j,D,q);return`${j}1${GW.encode(D)}${B}`}function U(z,D=90){MJ("bech32.decode input",z);let R=z.length;if(R<8||D!==!1&&R>D)throw TypeError(`invalid string length: ${R} (${z}). Expected (8..${D})`);let N=z.toLowerCase();if(z!==N&&z!==z.toUpperCase())throw Error("String must be lowercase or uppercase");let w=N.lastIndexOf("1");if(w===0||w===-1)throw Error('Letter "1" must be present between prefix and data only');let j=N.slice(0,w),B=N.slice(w+1);if(B.length<6)throw Error("Data must be at least 6 characters long");let S=GW.decode(B).slice(0,-6),_=cD(j,S,q);if(!B.endsWith(_))throw Error(`Invalid checksum in ${z}: expected "${_}"`);return{prefix:j,words:S}}let W=iD(U);function V(z){let{prefix:D,words:R}=U(z,!1);return{prefix:D,words:R,bytes:G(R)}}function M(z,D){return X(z,Q(D))}return{encode:X,decode:U,encodeFromBytes:M,decodeToBytes:V,decodeUnsafe:W,fromWords:G,fromWordsUnsafe:Y,toWords:Q}}var _0=$K("bech32"),Au=$K("bech32m");var o2=(()=>typeof Uint8Array.from([]).toHex==="function"&&typeof Uint8Array.fromHex==="function")(),a2={encode($){return QW($),$.toHex()},decode($){return MJ("hex",$),Uint8Array.fromHex($)}},Zu=o2?a2:P0(k0(4),F0("0123456789abcdef"),g0(""),aD(($)=>{if(typeof $!=="string"||$.length%2!==0)throw TypeError(`hex.decode: expected string, got ${typeof $} with length ${$.length}`);return $.toLowerCase()}));function t2($,q,J,G){Cq($);let Q=$9({dkLen:32,asyncTick:10},G),{c:Y,dkLen:X,asyncTick:U}=Q;if(L$(Y,"c"),L$(X,"dkLen"),L$(U,"asyncTick"),Y<1)throw Error("iterations (c) must be >= 1");if(X<1)throw Error('"dkLen" must be >= 1');if(X>4294967295*$.outputLen)throw Error("derived key too long");let W=dU(q,"password"),V=dU(J,"salt"),M=new Uint8Array(X),z=Uq.create($,W),D=z._cloneInto().update(V);return{c:Y,dkLen:X,asyncTick:U,DK:M,PRF:z,PRFSalt:D}}function e2($,q,J,G,Q){if($.destroy(),q.destroy(),G)G.destroy();return H0(Q),J}function WW($,q,J,G){let{c:Q,dkLen:Y,DK:X,PRF:U,PRFSalt:W}=t2($,q,J,G),V,M=new Uint8Array(4),z=WG(M),D=new Uint8Array(U.outputLen);for(let R=1,N=0;N<Y;R++,N+=U.outputLen){let w=X.subarray(N,N+U.outputLen);z.setInt32(0,R,!1),(V=W._cloneInto(V)).update(M).digestInto(D),w.set(D.subarray(0,w.length));for(let j=1;j<Q;j++){U._cloneInto(V).update(D).digestInto(D);for(let B=0;B<w.length;B++)w[B]^=D[B]}}return e2(U,W,X,V,D)}function qK($,q,J,G,Q,Y){let X=$[q++]^J[G++],U=$[q++]^J[G++],W=$[q++]^J[G++],V=$[q++]^J[G++],M=$[q++]^J[G++],z=$[q++]^J[G++],D=$[q++]^J[G++],R=$[q++]^J[G++],N=$[q++]^J[G++],w=$[q++]^J[G++],j=$[q++]^J[G++],B=$[q++]^J[G++],S=$[q++]^J[G++],_=$[q++]^J[G++],y=$[q++]^J[G++],p=$[q++]^J[G++],F=X,f=U,m=W,k=V,l=M,v=z,C=D,I=R,A=N,T=w,L=j,g=B,P=S,b=_,O=y,x=p;for(let r=0;r<8;r+=2)l^=N$(F+P|0,7),A^=N$(l+F|0,9),P^=N$(A+l|0,13),F^=N$(P+A|0,18),T^=N$(v+f|0,7),b^=N$(T+v|0,9),f^=N$(b+T|0,13),v^=N$(f+b|0,18),O^=N$(L+C|0,7),m^=N$(O+L|0,9),C^=N$(m+O|0,13),L^=N$(C+m|0,18),k^=N$(x+g|0,7),I^=N$(k+x|0,9),g^=N$(I+k|0,13),x^=N$(g+I|0,18),f^=N$(F+k|0,7),m^=N$(f+F|0,9),k^=N$(m+f|0,13),F^=N$(k+m|0,18),C^=N$(v+l|0,7),I^=N$(C+v|0,9),l^=N$(I+C|0,13),v^=N$(l+I|0,18),g^=N$(L+T|0,7),A^=N$(g+L|0,9),T^=N$(A+g|0,13),L^=N$(T+A|0,18),P^=N$(x+O|0,7),b^=N$(P+x|0,9),O^=N$(b+P|0,13),x^=N$(O+b|0,18);Q[Y++]=X+F|0,Q[Y++]=U+f|0,Q[Y++]=W+m|0,Q[Y++]=V+k|0,Q[Y++]=M+l|0,Q[Y++]=z+v|0,Q[Y++]=D+C|0,Q[Y++]=R+I|0,Q[Y++]=N+A|0,Q[Y++]=w+T|0,Q[Y++]=j+L|0,Q[Y++]=B+g|0,Q[Y++]=S+P|0,Q[Y++]=_+b|0,Q[Y++]=y+O|0,Q[Y++]=p+x|0}function VW($,q,J,G,Q){let Y=G+0,X=G+16*Q;for(let U=0;U<16;U++)J[X+U]=$[q+(2*Q-1)*16+U];for(let U=0;U<Q;U++,Y+=16,q+=16){if(qK(J,X,$,q,J,Y),U>0)X+=16;qK(J,Y,$,q+=16,J,X)}}function $C($,q,J){let G=$9({dkLen:32,asyncTick:10,maxmem:1073742848},J),{N:Q,r:Y,p:X,dkLen:U,asyncTick:W,maxmem:V,onProgress:M}=G;if(L$(Q,"N"),L$(Y,"r"),L$(X,"p"),L$(U,"dkLen"),L$(W,"asyncTick"),L$(V,"maxmem"),M!==void 0&&typeof M!=="function")throw Error("progressCb must be a function");let z=128*Y,D=z/4,R=Math.pow(2,32);if(Q<=1||(Q&Q-1)!==0||Q>R)throw Error('"N" expected a power of 2, and 2^1 <= N <= 2^32');if(X<1||X>(R-1)*32/z)throw Error('"p" expected integer 1..((2^32 - 1) * 32) / (128 * r)');if(U<1||U>(R-1)*32)throw Error('"dkLen" expected integer 1..(2^32 - 1) * 32');let N=z*(Q+X+1);if(N>V)throw Error('"maxmem" limit was hit: memUsed(128*r*(N+p+1))='+N+", maxmem="+V);let w=WW(P$,$,q,{c:1,dkLen:z*X}),j=tY(w),B=tY(new Uint8Array(z*Q)),S=tY(new Uint8Array(z)),_=()=>{};if(M){let y=2*Q*X,p=Math.max(Math.floor(y/1e4),1),F=0;_=()=>{if(F++,M&&(!(F%p)||F===y))M(F/y)}}return{N:Q,r:Y,p:X,dkLen:U,blockSize32:D,V:B,B32:j,B:w,tmp:S,blockMixCb:_,asyncTick:W}}function qC($,q,J,G,Q){let Y=WW(P$,$,J,{c:1,dkLen:q});return H0(J,G,Q),Y}function MW($,q,J){let{N:G,r:Q,p:Y,dkLen:X,blockSize32:U,V:W,B32:V,B:M,tmp:z,blockMixCb:D}=$C($,q,J);iU(V);for(let R=0;R<Y;R++){let N=U*R;for(let w=0;w<U;w++)W[w]=V[N+w];for(let w=0,j=0;w<G-1;w++)VW(W,j,W,j+=U,Q),D();VW(W,(G-1)*U,V,N,Q),D();for(let w=0;w<G;w++){let j=(V[N+U-16]&G-1)>>>0;for(let B=0;B<U;B++)z[B]=V[N+B]^W[j*U+B];VW(z,0,V,N,Q),D()}}return iU(V),qC($,X,M,W,z)}/*! noble-ciphers - MIT License (c) 2023 Paul Miller (paulmillr.com) */function JC($){return $ instanceof Uint8Array||ArrayBuffer.isView($)&&$.constructor.name==="Uint8Array"&&"BYTES_PER_ELEMENT"in $&&$.BYTES_PER_ELEMENT===1}function M9($){if(typeof $!=="boolean")throw TypeError(`boolean expected, not ${$}`)}function VG($){if(typeof $!=="number")throw TypeError("number expected, got "+typeof $);if(!Number.isSafeInteger($)||$<0)throw RangeError("positive integer expected, got "+$)}function k$($,q,J=""){let G=JC($),Q=$?.length,Y=q!==void 0;if(!G||Y&&Q!==q){let X=J&&`"${J}" `,U=Y?` of length ${q}`:"",W=G?`length=${Q}`:`type=${typeof $}`,V=X+"expected Uint8Array"+U+", got "+W;if(!G)throw TypeError(V);throw RangeError(V)}return $}function zW($,q=!0){if($.destroyed)throw Error("Hash instance has been destroyed");if(q&&$.finished)throw Error("Hash#digest() has already been called")}function JK($,q,J=!1){k$($,void 0,"output");let G=q.outputLen;if($.length<G)throw RangeError("digestInto() expects output buffer of length at least "+G);if(J&&!MG($))throw Error("invalid output, must be aligned")}function Vq($){return new Uint32Array($.buffer,$.byteOffset,Math.floor($.byteLength/4))}function s0(...$){for(let q=0;q<$.length;q++)$[q].fill(0)}function GC($){return new DataView($.buffer,$.byteOffset,$.byteLength)}var eJ=(()=>new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68)(),QC=($)=>$<<24&4278190080|$<<8&16711680|$>>>8&65280|$>>>24&255;var YC=($)=>{for(let q=0;q<$.length;q++)$[q]=QC($[q]);return $},Fq=eJ?($)=>$:YC;function GK($,q){if(q==null||typeof q!=="object")throw Error("options must be defined");return Object.assign($,q)}function QK($,q){if($.length!==q.length)return!1;let J=0;for(let G=0;G<$.length;G++)J|=$[G]^q[G];return J===0}function YK($,q,J){let G=q,Q=J||(()=>[]),Y=(U,W)=>G(W,...Q(U)).update(U).digest(),X=G(new Uint8Array($),...Q(new Uint8Array(0)));return Y.outputLen=X.outputLen,Y.blockLen=X.blockLen,Y.create=(U,...W)=>G(U,...W),Y}var XK=($,q)=>{function J(G,...Q){if(k$(G,void 0,"key"),$.nonceLength!==void 0){let M=Q[0];k$(M,$.varSizeNonce?void 0:$.nonceLength,"nonce")}let Y=$.tagLength;if(Y&&Q[1]!==void 0)k$(Q[1],void 0,"AAD");let X=q(G,...Q),U=(M,z)=>{if(z!==void 0){if(M!==2)throw Error("cipher output not supported");k$(z,void 0,"output")}},W=!1;return{encrypt(M,z){if(W)throw Error("cannot encrypt() twice with same key + nonce");return W=!0,k$(M),U(X.encrypt.length,z),X.encrypt(M,z)},decrypt(M,z){if(k$(M),Y&&M.length<Y)throw Error('"ciphertext" expected length bigger than tagLength='+Y);return U(X.decrypt.length,z),X.decrypt(M,z)}}}return Object.assign(J,$),J};function jQ($,q,J=!0){if(q===void 0)return new Uint8Array($);if(k$(q,void 0,"output"),q.length!==$)throw Error('"output" expected Uint8Array of length '+$+", got: "+q.length);if(J&&!MG(q))throw Error("invalid output, must be aligned");return q}function UK($,q,J){VG($),VG(q),M9(J);let G=new Uint8Array(16),Q=GC(G);return Q.setBigUint64(0,BigInt(q),J),Q.setBigUint64(8,BigInt($),J),G}function MG($){return $.byteOffset%4===0}function zG($){return Uint8Array.from(k$($))}var VK=($)=>Uint8Array.from($.split(""),(q)=>q.charCodeAt(0)),XC=(()=>Fq(Vq(VK("expand 16-byte k"))))(),UC=(()=>Fq(Vq(VK("expand 32-byte k"))))();function w$($,q){return $<<q|$>>>32-q}var AQ=64,WC=16,RW=(()=>4294967295)(),WK=Uint32Array.of();function VC($,q,J,G,Q,Y,X,U){let W=Q.length,V=new Uint8Array(AQ),M=Vq(V),z=eJ&&MG(Q)&&MG(Y),D=z?Vq(Q):WK,R=z?Vq(Y):WK;if(!eJ){for(let N=0;N<W;X++){if($(q,J,G,M,X,U),Fq(M),X>=RW)throw Error("arx: counter overflow");let w=Math.min(AQ,W-N);for(let j=0,B;j<w;j++)B=N+j,Y[B]=Q[B]^V[j];N+=w}return}for(let N=0;N<W;X++){if($(q,J,G,M,X,U),X>=RW)throw Error("arx: counter overflow");let w=Math.min(AQ,W-N);if(z&&w===AQ){let j=N/4;if(N%4!==0)throw Error("arx: invalid block position");for(let B=0,S;B<WC;B++)S=j+B,R[S]=D[S]^M[B];N+=AQ;continue}for(let j=0,B;j<w;j++)B=N+j,Y[B]=Q[B]^V[j];N+=w}}function MK($,q){let{allowShortKeys:J,extendNonceFn:G,counterLength:Q,counterRight:Y,rounds:X}=GK({allowShortKeys:!1,counterLength:8,counterRight:!1,rounds:20},q);if(typeof $!=="function")throw Error("core must be a function");return VG(Q),VG(X),M9(Y),M9(J),(U,W,V,M,z=0)=>{k$(U,void 0,"key"),k$(W,void 0,"nonce"),k$(V,void 0,"data");let D=V.length;if(M=jQ(D,M,!1),VG(z),z<0||z>=RW)throw Error("arx: counter overflow");let R=[],N=U.length,w,j;if(N===32)R.push(w=zG(U)),j=UC;else if(N===16&&J)w=new Uint8Array(32),w.set(U),w.set(U,16),j=XC,R.push(w);else throw k$(U,32,"arx key"),Error("invalid key size");if(!eJ||!MG(W))R.push(W=zG(W));let B=Vq(w);if(G){if(W.length!==24)throw Error("arx: extended nonce must be 24 bytes");let y=W.subarray(0,16);if(eJ)G(j,B,Vq(y),B);else{let p=Fq(Uint32Array.from(j));G(p,B,Vq(y),B),s0(p),Fq(B)}W=W.subarray(16)}else if(!eJ)Fq(B);let S=16-Q;if(S!==W.length)throw Error(`arx: nonce must be ${S} or 16 bytes`);if(S!==12){let y=new Uint8Array(12);y.set(W,Y?0:12-W.length),W=y,R.push(W)}let _=Fq(Vq(W));try{return VC($,j,B,_,V,M,z,X),M}finally{s0(...R)}}}function c$($,q){return $[q++]&255|($[q++]&255)<<8}class zK{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($){$=zG(k$($,32,"key"));let q=c$($,0),J=c$($,2),G=c$($,4),Q=c$($,6),Y=c$($,8),X=c$($,10),U=c$($,12),W=c$($,14);this.r[0]=q&8191,this.r[1]=(q>>>13|J<<3)&8191,this.r[2]=(J>>>10|G<<6)&7939,this.r[3]=(G>>>7|Q<<9)&8191,this.r[4]=(Q>>>4|Y<<12)&255,this.r[5]=Y>>>1&8190,this.r[6]=(Y>>>14|X<<2)&8191,this.r[7]=(X>>>11|U<<5)&8065,this.r[8]=(U>>>8|W<<8)&8191,this.r[9]=W>>>5&127;for(let V=0;V<8;V++)this.pad[V]=c$($,16+2*V)}process($,q,J=!1){let G=J?0:2048,{h:Q,r:Y}=this,X=Y[0],U=Y[1],W=Y[2],V=Y[3],M=Y[4],z=Y[5],D=Y[6],R=Y[7],N=Y[8],w=Y[9],j=c$($,q+0),B=c$($,q+2),S=c$($,q+4),_=c$($,q+6),y=c$($,q+8),p=c$($,q+10),F=c$($,q+12),f=c$($,q+14),m=Q[0]+(j&8191),k=Q[1]+((j>>>13|B<<3)&8191),l=Q[2]+((B>>>10|S<<6)&8191),v=Q[3]+((S>>>7|_<<9)&8191),C=Q[4]+((_>>>4|y<<12)&8191),I=Q[5]+(y>>>1&8191),A=Q[6]+((y>>>14|p<<2)&8191),T=Q[7]+((p>>>11|F<<5)&8191),L=Q[8]+((F>>>8|f<<8)&8191),g=Q[9]+(f>>>5|G),P=0,b=P+m*X+k*(5*w)+l*(5*N)+v*(5*R)+C*(5*D);P=b>>>13,b&=8191,b+=I*(5*z)+A*(5*M)+T*(5*V)+L*(5*W)+g*(5*U),P+=b>>>13,b&=8191;let O=P+m*U+k*X+l*(5*w)+v*(5*N)+C*(5*R);P=O>>>13,O&=8191,O+=I*(5*D)+A*(5*z)+T*(5*M)+L*(5*V)+g*(5*W),P+=O>>>13,O&=8191;let x=P+m*W+k*U+l*X+v*(5*w)+C*(5*N);P=x>>>13,x&=8191,x+=I*(5*R)+A*(5*D)+T*(5*z)+L*(5*M)+g*(5*V),P+=x>>>13,x&=8191;let r=P+m*V+k*W+l*U+v*X+C*(5*w);P=r>>>13,r&=8191,r+=I*(5*N)+A*(5*R)+T*(5*D)+L*(5*z)+g*(5*M),P+=r>>>13,r&=8191;let Z=P+m*M+k*V+l*W+v*U+C*X;P=Z>>>13,Z&=8191,Z+=I*(5*w)+A*(5*N)+T*(5*R)+L*(5*D)+g*(5*z),P+=Z>>>13,Z&=8191;let o=P+m*z+k*M+l*V+v*W+C*U;P=o>>>13,o&=8191,o+=I*X+A*(5*w)+T*(5*N)+L*(5*R)+g*(5*D),P+=o>>>13,o&=8191;let q$=P+m*D+k*z+l*M+v*V+C*W;P=q$>>>13,q$&=8191,q$+=I*U+A*X+T*(5*w)+L*(5*N)+g*(5*R),P+=q$>>>13,q$&=8191;let Y$=P+m*R+k*D+l*z+v*M+C*V;P=Y$>>>13,Y$&=8191,Y$+=I*W+A*U+T*X+L*(5*w)+g*(5*N),P+=Y$>>>13,Y$&=8191;let G$=P+m*N+k*R+l*D+v*z+C*M;P=G$>>>13,G$&=8191,G$+=I*V+A*W+T*U+L*X+g*(5*w),P+=G$>>>13,G$&=8191;let t=P+m*w+k*N+l*R+v*D+C*z;P=t>>>13,t&=8191,t+=I*M+A*V+T*W+L*U+g*X,P+=t>>>13,t&=8191,P=(P<<2)+P|0,P=P+b|0,b=P&8191,P=P>>>13,O+=P,Q[0]=b,Q[1]=O,Q[2]=x,Q[3]=r,Q[4]=Z,Q[5]=o,Q[6]=q$,Q[7]=Y$,Q[8]=G$,Q[9]=t}finalize(){let{h:$,pad:q}=this,J=new Uint16Array(10),G=$[1]>>>13;$[1]&=8191;for(let X=2;X<10;X++)$[X]+=G,G=$[X]>>>13,$[X]&=8191;$[0]+=G*5,G=$[0]>>>13,$[0]&=8191,$[1]+=G,G=$[1]>>>13,$[1]&=8191,$[2]+=G,J[0]=$[0]+5,G=J[0]>>>13,J[0]&=8191;for(let X=1;X<10;X++)J[X]=$[X]+G,G=J[X]>>>13,J[X]&=8191;J[9]-=8192;let Q=(G^1)-1;for(let X=0;X<10;X++)J[X]&=Q;Q=~Q;for(let X=0;X<10;X++)$[X]=$[X]&Q|J[X];$[0]=($[0]|$[1]<<13)&65535,$[1]=($[1]>>>3|$[2]<<10)&65535,$[2]=($[2]>>>6|$[3]<<7)&65535,$[3]=($[3]>>>9|$[4]<<4)&65535,$[4]=($[4]>>>12|$[5]<<1|$[6]<<14)&65535,$[5]=($[6]>>>2|$[7]<<11)&65535,$[6]=($[7]>>>5|$[8]<<8)&65535,$[7]=($[8]>>>8|$[9]<<5)&65535;let Y=$[0]+q[0];$[0]=Y&65535;for(let X=1;X<8;X++)Y=($[X]+q[X]|0)+(Y>>>16)|0,$[X]=Y&65535;s0(J)}update($){zW(this),k$($),$=zG($);let{buffer:q,blockLen:J}=this,G=$.length;for(let Q=0;Q<G;){let Y=Math.min(J-this.pos,G-Q);if(Y===J){for(;J<=G-Q;Q+=J)this.process($,Q);continue}if(q.set($.subarray(Q,Q+Y),this.pos),this.pos+=Y,Q+=Y,this.pos===J)this.process(q,0,!1),this.pos=0}return this}destroy(){this.destroyed=!0,s0(this.h,this.r,this.buffer,this.pad)}digestInto($){zW(this),JK($,this),this.finished=!0;let{buffer:q,h:J}=this,{pos:G}=this;if(G){q[G++]=1;for(;G<16;G++)q[G]=0;this.process(q,0,!0)}this.finalize();let Q=0;for(let Y=0;Y<8;Y++)$[Q++]=J[Y]>>>0,$[Q++]=J[Y]>>>8}digest(){let{buffer:$,outputLen:q}=this;this.digestInto($);let J=$.slice(0,q);return this.destroy(),J}}var RK=YK(32,($)=>new zK($));function MC($,q,J,G,Q,Y=20){let X=$[0],U=$[1],W=$[2],V=$[3],M=q[0],z=q[1],D=q[2],R=q[3],N=q[4],w=q[5],j=q[6],B=q[7],S=Q,_=J[0],y=J[1],p=J[2],F=X,f=U,m=W,k=V,l=M,v=z,C=D,I=R,A=N,T=w,L=j,g=B,P=S,b=_,O=y,x=p;for(let Z=0;Z<Y;Z+=2)F=F+l|0,P=w$(P^F,16),A=A+P|0,l=w$(l^A,12),F=F+l|0,P=w$(P^F,8),A=A+P|0,l=w$(l^A,7),f=f+v|0,b=w$(b^f,16),T=T+b|0,v=w$(v^T,12),f=f+v|0,b=w$(b^f,8),T=T+b|0,v=w$(v^T,7),m=m+C|0,O=w$(O^m,16),L=L+O|0,C=w$(C^L,12),m=m+C|0,O=w$(O^m,8),L=L+O|0,C=w$(C^L,7),k=k+I|0,x=w$(x^k,16),g=g+x|0,I=w$(I^g,12),k=k+I|0,x=w$(x^k,8),g=g+x|0,I=w$(I^g,7),F=F+v|0,x=w$(x^F,16),L=L+x|0,v=w$(v^L,12),F=F+v|0,x=w$(x^F,8),L=L+x|0,v=w$(v^L,7),f=f+C|0,P=w$(P^f,16),g=g+P|0,C=w$(C^g,12),f=f+C|0,P=w$(P^f,8),g=g+P|0,C=w$(C^g,7),m=m+I|0,b=w$(b^m,16),A=A+b|0,I=w$(I^A,12),m=m+I|0,b=w$(b^m,8),A=A+b|0,I=w$(I^A,7),k=k+l|0,O=w$(O^k,16),T=T+O|0,l=w$(l^T,12),k=k+l|0,O=w$(O^k,8),T=T+O|0,l=w$(l^T,7);let r=0;G[r++]=X+F|0,G[r++]=U+f|0,G[r++]=W+m|0,G[r++]=V+k|0,G[r++]=M+l|0,G[r++]=z+v|0,G[r++]=D+C|0,G[r++]=R+I|0,G[r++]=N+A|0,G[r++]=w+T|0,G[r++]=j+L|0,G[r++]=B+g|0,G[r++]=S+P|0,G[r++]=_+b|0,G[r++]=y+O|0,G[r++]=p+x|0}var zC=MK(MC,{counterRight:!1,counterLength:4,allowShortKeys:!1});var RC=new Uint8Array(16),DK=($,q)=>{$.update(q);let J=q.length%16;if(J)$.update(RC.subarray(J))},DC=new Uint8Array(32);function KK($,q,J,G,Q){if(Q!==void 0)k$(Q,void 0,"AAD");let Y=$(q,J,DC),X=UK(G.length,Q?Q.length:0,!0),U=RK.create(Y);if(Q)DK(U,Q);DK(U,G),U.update(X);let W=U.digest();return s0(Y,X),W}var KC=($)=>(q,J,G)=>{return{encrypt(Y,X){let U=Y.length;X=jQ(U+16,X,!1),X.set(Y);let W=X.subarray(0,-16);$(q,J,W,W,1);let V=KK($,q,J,W,G);return X.set(V,U),s0(V),X},decrypt(Y,X){X=jQ(Y.length-16,X,!1);let U=Y.subarray(0,-16),W=Y.subarray(-16),V=KK($,q,J,U,G);if(!QK(W,V))throw s0(V),Error("invalid tag");return X.set(Y.subarray(0,-16)),$(q,J,X,X,1),s0(V),X}}},m0=XK({blockSize:64,nonceLength:12,tagLength:16},KC(zC));/*! noble-hashes - MIT License (c) 2022 Paul Miller (paulmillr.com) */function RG($){return $ instanceof Uint8Array||ArrayBuffer.isView($)&&$.constructor.name==="Uint8Array"}function h$($,q=""){if(!Number.isSafeInteger($)||$<0){let J=q&&`"${q}" `;throw Error(`${J}expected integer >= 0, got ${$}`)}}function Q$($,q,J=""){let G=RG($),Q=$?.length,Y=q!==void 0;if(!G||Y&&Q!==q){let X=J&&`"${J}" `,U=Y?` of length ${q}`:"",W=G?`length=${Q}`:`type=${typeof $}`;throw Error(X+"expected Uint8Array"+U+", got "+W)}return $}function y0($){if(typeof $!=="function"||typeof $.create!=="function")throw Error("Hash must wrapped by utils.createHasher");h$($.outputLen),h$($.blockLen)}function _q($,q=!0){if($.destroyed)throw Error("Hash instance has been destroyed");if(q&&$.finished)throw Error("Hash#digest() has already been called")}function z9($,q){Q$($,void 0,"digestInto() output");let J=q.outputLen;if($.length<J)throw Error('"digestInto() output" expected to be of length >='+J)}function R9($){return new Uint32Array($.buffer,$.byteOffset,Math.floor($.byteLength/4))}function T0(...$){for(let q=0;q<$.length;q++)$[q].fill(0)}function D9($){return new DataView($.buffer,$.byteOffset,$.byteLength)}function t0($,q){return $<<32-q|$>>>q}var HC=(()=>new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68)();function OC($){return $<<24&4278190080|$<<8&16711680|$>>>8&65280|$>>>24&255}function NC($){for(let q=0;q<$.length;q++)$[q]=OC($[q]);return $}var DW=HC?($)=>$:NC,OK=(()=>typeof Uint8Array.from([]).toHex==="function"&&typeof Uint8Array.fromHex==="function")(),wC=Array.from({length:256},($,q)=>q.toString(16).padStart(2,"0"));function $8($){if(Q$($),OK)return $.toHex();let q="";for(let J=0;J<$.length;J++)q+=wC[$[J]];return q}var gq={_0:48,_9:57,A:65,F:70,a:97,f:102};function HK($){if($>=gq._0&&$<=gq._9)return $-gq._0;if($>=gq.A&&$<=gq.F)return $-(gq.A-10);if($>=gq.a&&$<=gq.f)return $-(gq.a-10);return}function q8($){if(typeof $!=="string")throw Error("hex string expected, got "+typeof $);if(OK)return Uint8Array.fromHex($);let q=$.length,J=q/2;if(q%2)throw Error("hex string expected, got unpadded hex of length "+q);let G=new Uint8Array(J);for(let Q=0,Y=0;Q<J;Q++,Y+=2){let X=HK($.charCodeAt(Y)),U=HK($.charCodeAt(Y+1));if(X===void 0||U===void 0){let W=$[Y]+$[Y+1];throw Error('hex string expected, got non-hex character "'+W+'" at index '+Y)}G[Q]=X*16+U}return G}function _$(...$){let q=0;for(let G=0;G<$.length;G++){let Q=$[G];Q$(Q),q+=Q.length}let J=new Uint8Array(q);for(let G=0,Q=0;G<$.length;G++){let Y=$[G];J.set(Y,Q),Q+=Y.length}return J}function DG($,q={}){let J=(Q,Y)=>$(Y).update(Q).digest(),G=$(void 0);return J.outputLen=G.outputLen,J.blockLen=G.blockLen,J.create=(Q)=>$(Q),Object.assign(J,q),Object.freeze(J)}function zJ($=32){let q=typeof globalThis==="object"?globalThis.crypto:null;if(typeof q?.getRandomValues!=="function")throw Error("crypto.getRandomValues must be defined");return q.getRandomValues(new Uint8Array($))}var RJ=($)=>({oid:Uint8Array.from([6,9,96,134,72,1,101,3,4,2,$])});/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */var HW=BigInt(0),KW=BigInt(1);function ZQ($,q=""){if(typeof $!=="boolean"){let J=q&&`"${q}" `;throw Error(J+"expected boolean, got type="+typeof $)}return $}function NK($){if(typeof $==="bigint"){if(!K9($))throw Error("positive bigint expected, got "+$)}else h$($);return $}function BQ($){let q=NK($).toString(16);return q.length&1?"0"+q:q}function wK($){if(typeof $!=="string")throw Error("hex string expected, got "+typeof $);return $===""?HW:BigInt("0x"+$)}function DJ($){return wK($8($))}function KJ($){return wK($8(H9(Q$($)).reverse()))}function KG($,q){h$(q),$=NK($);let J=q8($.toString(16).padStart(q*2,"0"));if(J.length!==q)throw Error("number too large");return J}function TQ($,q){return KG($,q).reverse()}function H9($){return Uint8Array.from($)}function HJ($){return Uint8Array.from($,(q,J)=>{let G=q.charCodeAt(0);if(q.length!==1||G>127)throw Error(`string contains non-ASCII character "${$[J]}" with code ${G} at position ${J}`);return G})}var K9=($)=>typeof $==="bigint"&&HW<=$;function jC($,q,J){return K9($)&&K9(q)&&K9(J)&&q<=$&&$<J}function SQ($,q,J,G){if(!jC(q,J,G))throw Error("expected valid "+$+": "+J+" <= n < "+G+", got "+q)}function OW($){let q;for(q=0;$>HW;$>>=KW,q+=1);return q}var IQ=($)=>(KW<<BigInt($))-KW;function jK($,q,J){if(h$($,"hashLen"),h$(q,"qByteLen"),typeof J!=="function")throw Error("hmacFn must be a function");let G=(j)=>new Uint8Array(j),Q=Uint8Array.of(),Y=Uint8Array.of(0),X=Uint8Array.of(1),U=1000,W=G($),V=G($),M=0,z=()=>{W.fill(1),V.fill(0),M=0},D=(...j)=>J(V,_$(W,...j)),R=(j=Q)=>{if(V=D(Y,j),W=D(),j.length===0)return;V=D(X,j),W=D()},N=()=>{if(M++>=U)throw Error("drbg: tried max amount of iterations");let j=0,B=[];while(j<q){W=D();let S=W.slice();B.push(S),j+=W.length}return _$(...B)};return(j,B)=>{z(),R(j);let S=void 0;while(!(S=B(N())))R();return z(),S}}function J8($,q={},J={}){if(!$||typeof $!=="object")throw Error("expected valid options object");function G(Y,X,U){let W=$[Y];if(U&&W===void 0)return;let V=typeof W;if(V!==X||W===null)throw Error(`param "${Y}" is invalid: expected ${X}, got ${V}`)}let Q=(Y,X)=>Object.entries(Y).forEach(([U,W])=>G(U,W,X));Q(q,!1),Q(J,!0)}function NW($){let q=new WeakMap;return(J,...G)=>{let Q=q.get(J);if(Q!==void 0)return Q;let Y=$(J,...G);return q.set(J,Y),Y}}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */var N0=BigInt(0),U0=BigInt(1),G8=BigInt(2),BK=BigInt(3),TK=BigInt(4),SK=BigInt(5),AC=BigInt(7),IK=BigInt(8),ZC=BigInt(9),CK=BigInt(16);function O0($,q){let J=$%q;return J>=N0?J:q+J}function f0($,q,J){let G=$;while(q-- >N0)G*=G,G%=J;return G}function AK($,q){if($===N0)throw Error("invert: expected non-zero number");if(q<=N0)throw Error("invert: expected positive modulus, got "+q);let J=O0($,q),G=q,Q=N0,Y=U0,X=U0,U=N0;while(J!==N0){let V=G/J,M=G%J,z=Q-X*V,D=Y-U*V;G=J,J=M,Q=X,Y=U,X=z,U=D}if(G!==U0)throw Error("invert: does not exist");return O0(Q,q)}function wW($,q,J){if(!$.eql($.sqr(q),J))throw Error("Cannot find square root")}function EK($,q){let J=($.ORDER+U0)/TK,G=$.pow(q,J);return wW($,G,q),G}function BC($,q){let J=($.ORDER-SK)/IK,G=$.mul(q,G8),Q=$.pow(G,J),Y=$.mul(q,Q),X=$.mul($.mul(Y,G8),Q),U=$.mul(Y,$.sub(X,$.ONE));return wW($,U,q),U}function TC($){let q=O9($),J=LK($),G=J(q,q.neg(q.ONE)),Q=J(q,G),Y=J(q,q.neg(G)),X=($+AC)/CK;return(U,W)=>{let V=U.pow(W,X),M=U.mul(V,G),z=U.mul(V,Q),D=U.mul(V,Y),R=U.eql(U.sqr(M),W),N=U.eql(U.sqr(z),W);V=U.cmov(V,M,R),M=U.cmov(D,z,N);let w=U.eql(U.sqr(M),W),j=U.cmov(V,M,w);return wW(U,j,W),j}}function LK($){if($<BK)throw Error("sqrt is not defined for small field");let q=$-U0,J=0;while(q%G8===N0)q/=G8,J++;let G=G8,Q=O9($);while(ZK(Q,G)===1)if(G++>1000)throw Error("Cannot find square root: probably non-prime P");if(J===1)return EK;let Y=Q.pow(G,q),X=(q+U0)/G8;return function(W,V){if(W.is0(V))return V;if(ZK(W,V)!==1)throw Error("Cannot find square root");let M=J,z=W.mul(W.ONE,Y),D=W.pow(V,q),R=W.pow(V,X);while(!W.eql(D,W.ONE)){if(W.is0(D))return W.ZERO;let N=1,w=W.sqr(D);while(!W.eql(w,W.ONE))if(N++,w=W.sqr(w),N===M)throw Error("Cannot find square root");let j=U0<<BigInt(M-N-1),B=W.pow(z,j);M=N,z=W.sqr(B),D=W.mul(D,z),R=W.mul(R,B)}return R}}function SC($){if($%TK===BK)return EK;if($%IK===SK)return BC;if($%CK===ZC)return TC($);return LK($)}var IC=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function jW($){let q={ORDER:"bigint",BYTES:"number",BITS:"number"},J=IC.reduce((G,Q)=>{return G[Q]="function",G},q);return J8($,J),$}function CC($,q,J){if(J<N0)throw Error("invalid exponent, negatives unsupported");if(J===N0)return $.ONE;if(J===U0)return q;let G=$.ONE,Q=q;while(J>N0){if(J&U0)G=$.mul(G,Q);Q=$.sqr(Q),J>>=U0}return G}function CQ($,q,J=!1){let G=Array(q.length).fill(J?$.ZERO:void 0),Q=q.reduce((X,U,W)=>{if($.is0(U))return X;return G[W]=X,$.mul(X,U)},$.ONE),Y=$.inv(Q);return q.reduceRight((X,U,W)=>{if($.is0(U))return X;return G[W]=$.mul(X,G[W]),$.mul(X,U)},Y),G}function ZK($,q){let J=($.ORDER-U0)/G8,G=$.pow(q,J),Q=$.eql(G,$.ONE),Y=$.eql(G,$.ZERO),X=$.eql(G,$.neg($.ONE));if(!Q&&!Y&&!X)throw Error("invalid Legendre symbol result");return Q?1:Y?0:-1}function EC($,q){if(q!==void 0)h$(q);let J=q!==void 0?q:$.toString(2).length,G=Math.ceil(J/8);return{nBitLength:J,nByteLength:G}}class PK{ORDER;BITS;BYTES;isLE;ZERO=N0;ONE=U0;_lengths;_sqrt;_mod;constructor($,q={}){if($<=N0)throw Error("invalid field: expected ORDER > 0, got "+$);let J=void 0;if(this.isLE=!1,q!=null&&typeof q==="object"){if(typeof q.BITS==="number")J=q.BITS;if(typeof q.sqrt==="function")this.sqrt=q.sqrt;if(typeof q.isLE==="boolean")this.isLE=q.isLE;if(q.allowedLengths)this._lengths=q.allowedLengths?.slice();if(typeof q.modFromBytes==="boolean")this._mod=q.modFromBytes}let{nBitLength:G,nByteLength:Q}=EC($,J);if(Q>2048)throw Error("invalid field: expected ORDER of <= 2048 bytes");this.ORDER=$,this.BITS=G,this.BYTES=Q,this._sqrt=void 0,Object.preventExtensions(this)}create($){return O0($,this.ORDER)}isValid($){if(typeof $!=="bigint")throw Error("invalid field element: expected bigint, got "+typeof $);return N0<=$&&$<this.ORDER}is0($){return $===N0}isValidNot0($){return!this.is0($)&&this.isValid($)}isOdd($){return($&U0)===U0}neg($){return O0(-$,this.ORDER)}eql($,q){return $===q}sqr($){return O0($*$,this.ORDER)}add($,q){return O0($+q,this.ORDER)}sub($,q){return O0($-q,this.ORDER)}mul($,q){return O0($*q,this.ORDER)}pow($,q){return CC(this,$,q)}div($,q){return O0($*AK(q,this.ORDER),this.ORDER)}sqrN($){return $*$}addN($,q){return $+q}subN($,q){return $-q}mulN($,q){return $*q}inv($){return AK($,this.ORDER)}sqrt($){if(!this._sqrt)this._sqrt=SC(this.ORDER);return this._sqrt(this,$)}toBytes($){return this.isLE?TQ($,this.BYTES):KG($,this.BYTES)}fromBytes($,q=!1){Q$($);let{_lengths:J,BYTES:G,isLE:Q,ORDER:Y,_mod:X}=this;if(J){if(!J.includes($.length)||$.length>G)throw Error("Field.fromBytes: expected "+J+" bytes, got "+$.length);let W=new Uint8Array(G);W.set($,Q?0:W.length-$.length),$=W}if($.length!==G)throw Error("Field.fromBytes: expected "+G+" bytes, got "+$.length);let U=Q?KJ($):DJ($);if(X)U=O0(U,Y);if(!q){if(!this.isValid(U))throw Error("invalid field element: outside of range 0..ORDER")}return U}invertBatch($){return CQ(this,$)}cmov($,q,J){return J?q:$}}function O9($,q={}){return new PK($,q)}function FK($){if(typeof $!=="bigint")throw Error("field order must be bigint");let q=$.toString(2).length;return Math.ceil(q/8)}function AW($){let q=FK($);return q+Math.ceil(q/2)}function gK($,q,J=!1){Q$($);let G=$.length,Q=FK(q),Y=AW(q);if(G<16||G<Y||G>1024)throw Error("expected "+Y+"-1024 bytes of input, got "+G);let X=J?KJ($):DJ($),U=O0(X,q-U0)+U0;return J?TQ(U,Q):KG(U,Q)}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */var HG=BigInt(0),Q8=BigInt(1);function EQ($,q){let J=q.negate();return $?J:q}function SW($,q){let J=CQ($.Fp,q.map((G)=>G.Z));return q.map((G,Q)=>$.fromAffine(G.toAffine(J[Q])))}function kK($,q){if(!Number.isSafeInteger($)||$<=0||$>q)throw Error("invalid window size, expected [1.."+q+"], got W="+$)}function ZW($,q){kK($,q);let J=Math.ceil(q/$)+1,G=2**($-1),Q=2**$,Y=IQ($),X=BigInt($);return{windows:J,windowSize:G,mask:Y,maxNumber:Q,shiftBy:X}}function _K($,q,J){let{windowSize:G,mask:Q,maxNumber:Y,shiftBy:X}=J,U=Number($&Q),W=$>>X;if(U>G)U-=Y,W+=Q8;let V=q*G,M=V+Math.abs(U)-1,z=U===0,D=U<0,R=q%2!==0;return{nextN:W,offset:M,isZero:z,isNeg:D,isNegF:R,offsetF:V}}var BW=new WeakMap,mK=new WeakMap;function TW($){return mK.get($)||1}function vK($){if($!==HG)throw Error("invalid wNAF")}class IW{BASE;ZERO;Fn;bits;constructor($,q){this.BASE=$.BASE,this.ZERO=$.ZERO,this.Fn=$.Fn,this.bits=q}_unsafeLadder($,q,J=this.ZERO){let G=$;while(q>HG){if(q&Q8)J=J.add(G);G=G.double(),q>>=Q8}return J}precomputeWindow($,q){let{windows:J,windowSize:G}=ZW(q,this.bits),Q=[],Y=$,X=Y;for(let U=0;U<J;U++){X=Y,Q.push(X);for(let W=1;W<G;W++)X=X.add(Y),Q.push(X);Y=X.double()}return Q}wNAF($,q,J){if(!this.Fn.isValid(J))throw Error("invalid scalar");let G=this.ZERO,Q=this.BASE,Y=ZW($,this.bits);for(let X=0;X<Y.windows;X++){let{nextN:U,offset:W,isZero:V,isNeg:M,isNegF:z,offsetF:D}=_K(J,X,Y);if(J=U,V)Q=Q.add(EQ(z,q[D]));else G=G.add(EQ(M,q[W]))}return vK(J),{p:G,f:Q}}wNAFUnsafe($,q,J,G=this.ZERO){let Q=ZW($,this.bits);for(let Y=0;Y<Q.windows;Y++){if(J===HG)break;let{nextN:X,offset:U,isZero:W,isNeg:V}=_K(J,Y,Q);if(J=X,W)continue;else{let M=q[U];G=G.add(V?M.negate():M)}}return vK(J),G}getPrecomputes($,q,J){let G=BW.get(q);if(!G){if(G=this.precomputeWindow(q,$),$!==1){if(typeof J==="function")G=J(G);BW.set(q,G)}}return G}cached($,q,J){let G=TW($);return this.wNAF(G,this.getPrecomputes(G,$,J),q)}unsafe($,q,J,G){let Q=TW($);if(Q===1)return this._unsafeLadder($,q,G);return this.wNAFUnsafe(Q,this.getPrecomputes(Q,$,J),q,G)}createCache($,q){kK(q,this.bits),mK.set($,q),BW.delete($)}hasCache($){return TW($)!==1}}function yK($,q,J,G){let Q=q,Y=$.ZERO,X=$.ZERO;while(J>HG||G>HG){if(J&Q8)Y=Y.add(Q);if(G&Q8)X=X.add(Q);Q=Q.double(),J>>=Q8,G>>=Q8}return{p1:Y,p2:X}}function bK($,q,J){if(q){if(q.ORDER!==$)throw Error("Field.ORDER must match order: Fp == p, Fn == n");return jW(q),q}else return O9($,{isLE:J})}function fK($,q,J={},G){if(G===void 0)G=$==="edwards";if(!q||typeof q!=="object")throw Error(`expected valid ${$} CURVE object`);for(let W of["p","n","h"]){let V=q[W];if(!(typeof V==="bigint"&&V>HG))throw Error(`CURVE.${W} must be positive bigint`)}let Q=bK(q.p,J.Fp,G),Y=bK(q.n,J.Fn,G),U=["Gx","Gy","a",$==="weierstrass"?"b":"d"];for(let W of U)if(!Q.isValid(q[W]))throw Error(`CURVE.${W} must be valid field element of CURVE.Fp`);return q=Object.freeze(Object.assign({},q)),{CURVE:q,Fp:Q,Fn:Y}}function N9($,q){return function(G){let Q=$(G);return{secretKey:Q,publicKey:q(Q)}}}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */var LQ=BigInt(0),OG=BigInt(1),w9=BigInt(2);function LC($){return J8($,{adjustScalarBytes:"function",powPminus2:"function"}),Object.freeze({...$})}function xK($){let q=LC($),{P:J,type:G,adjustScalarBytes:Q,powPminus2:Y,randomBytes:X}=q,U=G==="x25519";if(!U&&G!=="x448")throw Error("invalid type");let W=X||zJ,V=U?255:448,M=U?32:56,z=U?BigInt(9):BigInt(5),D=U?BigInt(121665):BigInt(39081),R=U?w9**BigInt(254):w9**BigInt(447),N=U?BigInt(8)*w9**BigInt(251)-OG:BigInt(4)*w9**BigInt(445)-OG,w=R+N+OG,j=(A)=>O0(A,J),B=S(z);function S(A){return TQ(j(A),M)}function _(A){let T=H9(Q$(A,M,"uCoordinate"));if(U)T[31]&=127;return j(KJ(T))}function y(A){return KJ(Q(H9(Q$(A,M,"scalar"))))}function p(A,T){let L=l(_(T),y(A));if(L===LQ)throw Error("invalid private or public key received");return S(L)}function F(A){return p(A,B)}let f=F,m=p;function k(A,T,L){let g=j(A*(T-L));return T=j(T-g),L=j(L+g),{x_2:T,x_3:L}}function l(A,T){SQ("u",A,LQ,J),SQ("scalar",T,R,w);let L=T,g=A,P=OG,b=LQ,O=A,x=OG,r=LQ;for(let o=BigInt(V-1);o>=LQ;o--){let q$=L>>o&OG;r^=q$,{x_2:P,x_3:O}=k(r,P,O),{x_2:b,x_3:x}=k(r,b,x),r=q$;let Y$=P+b,G$=j(Y$*Y$),t=P-b,O$=j(t*t),A$=G$-O$,S$=O+x,y$=O-x,z0=j(y$*Y$),qq=j(S$*t),uq=z0+qq,pq=z0-qq;O=j(uq*uq),x=j(g*j(pq*pq)),P=j(G$*O$),b=j(A$*(G$+j(D*A$)))}({x_2:P,x_3:O}=k(r,P,O)),{x_2:b,x_3:x}=k(r,b,x);let Z=Y(b);return j(P*Z)}let v={secretKey:M,publicKey:M,seed:M},C=(A=W(M))=>{return Q$(A,v.seed,"seed"),A},I={randomSecretKey:C};return Object.freeze({keygen:N9(C,f),getSharedSecret:m,getPublicKey:f,scalarMult:p,scalarMultBase:F,utils:I,GuBytes:B.slice(),lengths:v})}class CW{oHash;iHash;blockLen;outputLen;finished=!1;destroyed=!1;constructor($,q){if(y0($),Q$(q,void 0,"key"),this.iHash=$.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 J=this.blockLen,G=new Uint8Array(J);G.set(q.length>J?$.create().update(q).digest():q);for(let Q=0;Q<G.length;Q++)G[Q]^=54;this.iHash.update(G),this.oHash=$.create();for(let Q=0;Q<G.length;Q++)G[Q]^=106;this.oHash.update(G),T0(G)}update($){return _q(this),this.iHash.update($),this}digestInto($){_q(this),Q$($,this.outputLen,"output"),this.finished=!0,this.iHash.digestInto($),this.oHash.update($),this.oHash.digestInto($),this.destroy()}digest(){let $=new Uint8Array(this.oHash.outputLen);return this.digestInto($),$}_cloneInto($){$||=Object.create(Object.getPrototypeOf(this),{});let{oHash:q,iHash:J,finished:G,destroyed:Q,blockLen:Y,outputLen:X}=this;return $=$,$.finished=G,$.destroyed=Q,$.blockLen=Y,$.outputLen=X,$.oHash=q._cloneInto($.oHash),$.iHash=J._cloneInto($.iHash),$}clone(){return this._cloneInto()}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}}var NG=($,q,J)=>new CW($,q).update(J).digest();NG.create=($,q)=>new CW($,q);/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */var hK=($,q)=>($+($>=0?q:-q)/pK)/q;function PC($,q,J){let[[G,Q],[Y,X]]=q,U=hK(X*$,J),W=hK(-Q*$,J),V=$-U*G-W*Y,M=-U*Q-W*X,z=V<vq,D=M<vq;if(z)V=-V;if(D)M=-M;let R=IQ(Math.ceil(OW(J)/2))+wG;if(V<vq||V>=R||M<vq||M>=R)throw Error("splitScalar (endomorphism): failed, k="+$);return{k1neg:z,k1:V,k2neg:D,k2:M}}function LW($){if(!["compact","recovered","der"].includes($))throw Error('Signature format must be "compact", "recovered", or "der"');return $}function EW($,q){let J={};for(let G of Object.keys(q))J[G]=$[G]===void 0?q[G]:$[G];if(ZQ(J.lowS,"lowS"),ZQ(J.prehash,"prehash"),J.format!==void 0)LW(J.format);return J}class uK extends Error{constructor($=""){super($)}}var OJ={Err:uK,_tlv:{encode:($,q)=>{let{Err:J}=OJ;if($<0||$>256)throw new J("tlv.encode: wrong tag");if(q.length&1)throw new J("tlv.encode: unpadded data");let G=q.length/2,Q=BQ(G);if(Q.length/2&128)throw new J("tlv.encode: long form length too big");let Y=G>127?BQ(Q.length/2|128):"";return BQ($)+Y+Q+q},decode($,q){let{Err:J}=OJ,G=0;if($<0||$>256)throw new J("tlv.encode: wrong tag");if(q.length<2||q[G++]!==$)throw new J("tlv.decode: wrong tlv");let Q=q[G++],Y=!!(Q&128),X=0;if(!Y)X=Q;else{let W=Q&127;if(!W)throw new J("tlv.decode(long): indefinite length not supported");if(W>4)throw new J("tlv.decode(long): byte length is too big");let V=q.subarray(G,G+W);if(V.length!==W)throw new J("tlv.decode: length bytes not complete");if(V[0]===0)throw new J("tlv.decode(long): zero leftmost byte");for(let M of V)X=X<<8|M;if(G+=W,X<128)throw new J("tlv.decode(long): not minimal encoding")}let U=q.subarray(G,G+X);if(U.length!==X)throw new J("tlv.decode: wrong value length");return{v:U,l:q.subarray(G+X)}}},_int:{encode($){let{Err:q}=OJ;if($<vq)throw new q("integer: negative integers are not allowed");let J=BQ($);if(Number.parseInt(J[0],16)&8)J="00"+J;if(J.length&1)throw new q("unexpected DER parsing assertion: unpadded hex");return J},decode($){let{Err:q}=OJ;if($[0]&128)throw new q("invalid signature integer: negative");if($[0]===0&&!($[1]&128))throw new q("invalid signature integer: unnecessary leading zero");return DJ($)}},toSig($){let{Err:q,_int:J,_tlv:G}=OJ,Q=Q$($,void 0,"signature"),{v:Y,l:X}=G.decode(48,Q);if(X.length)throw new q("invalid signature: left bytes after parsing");let{v:U,l:W}=G.decode(2,Y),{v:V,l:M}=G.decode(2,W);if(M.length)throw new q("invalid signature: left bytes after parsing");return{r:J.decode(U),s:J.decode(V)}},hexFromSig($){let{_tlv:q,_int:J}=OJ,G=q.encode(2,J.encode($.r)),Q=q.encode(2,J.encode($.s)),Y=G+Q;return q.encode(48,Y)}},vq=BigInt(0),wG=BigInt(1),pK=BigInt(2),j9=BigInt(3),FC=BigInt(4);function PW($,q={}){let J=fK("weierstrass",$,q),{Fp:G,Fn:Q}=J,Y=J.CURVE,{h:X,n:U}=Y;J8(q,{},{allowInfinityPoint:"boolean",clearCofactor:"function",isTorsionFree:"function",fromBytes:"function",toBytes:"function",endo:"object"});let{endo:W}=q;if(W){if(!G.is0(Y.a)||typeof W.beta!=="bigint"||!Array.isArray(W.basises))throw Error('invalid endo: expected "beta": bigint and "basises": array')}let V=rK(G,Q);function M(){if(!G.isOdd)throw Error("compression is not supported: Field does not have .isOdd()")}function z(C,I,A){let{x:T,y:L}=I.toAffine(),g=G.toBytes(T);if(ZQ(A,"isCompressed"),A){M();let P=!G.isOdd(L);return _$(lK(P),g)}else return _$(Uint8Array.of(4),g,G.toBytes(L))}function D(C){Q$(C,void 0,"Point");let{publicKey:I,publicKeyUncompressed:A}=V,T=C.length,L=C[0],g=C.subarray(1);if(T===I&&(L===2||L===3)){let P=G.fromBytes(g);if(!G.isValid(P))throw Error("bad point: is not on curve, wrong x");let b=w(P),O;try{O=G.sqrt(b)}catch(Z){let o=Z instanceof Error?": "+Z.message:"";throw Error("bad point: is not on curve, sqrt error"+o)}M();let x=G.isOdd(O);if((L&1)===1!==x)O=G.neg(O);return{x:P,y:O}}else if(T===A&&L===4){let P=G.BYTES,b=G.fromBytes(g.subarray(0,P)),O=G.fromBytes(g.subarray(P,P*2));if(!j(b,O))throw Error("bad point: is not on curve");return{x:b,y:O}}else throw Error(`bad point: got length ${T}, expected compressed=${I} or uncompressed=${A}`)}let R=q.toBytes||z,N=q.fromBytes||D;function w(C){let I=G.sqr(C),A=G.mul(I,C);return G.add(G.add(A,G.mul(C,Y.a)),Y.b)}function j(C,I){let A=G.sqr(I),T=w(C);return G.eql(A,T)}if(!j(Y.Gx,Y.Gy))throw Error("bad curve params: generator point");let B=G.mul(G.pow(Y.a,j9),FC),S=G.mul(G.sqr(Y.b),BigInt(27));if(G.is0(G.add(B,S)))throw Error("bad curve params: a or b");function _(C,I,A=!1){if(!G.isValid(I)||A&&G.is0(I))throw Error(`bad point coordinate ${C}`);return I}function y(C){if(!(C instanceof k))throw Error("Weierstrass Point expected")}function p(C){if(!W||!W.basises)throw Error("no endo");return PC(C,W.basises,Q.ORDER)}let F=NW((C,I)=>{let{X:A,Y:T,Z:L}=C;if(G.eql(L,G.ONE))return{x:A,y:T};let g=C.is0();if(I==null)I=g?G.ONE:G.inv(L);let P=G.mul(A,I),b=G.mul(T,I),O=G.mul(L,I);if(g)return{x:G.ZERO,y:G.ZERO};if(!G.eql(O,G.ONE))throw Error("invZ was invalid");return{x:P,y:b}}),f=NW((C)=>{if(C.is0()){if(q.allowInfinityPoint&&!G.is0(C.Y))return;throw Error("bad point: ZERO")}let{x:I,y:A}=C.toAffine();if(!G.isValid(I)||!G.isValid(A))throw Error("bad point: x or y not field elements");if(!j(I,A))throw Error("bad point: equation left != right");if(!C.isTorsionFree())throw Error("bad point: not in prime-order subgroup");return!0});function m(C,I,A,T,L){return A=new k(G.mul(A.X,C),A.Y,A.Z),I=EQ(T,I),A=EQ(L,A),I.add(A)}class k{static BASE=new k(Y.Gx,Y.Gy,G.ONE);static ZERO=new k(G.ZERO,G.ONE,G.ZERO);static Fp=G;static Fn=Q;X;Y;Z;constructor(C,I,A){this.X=_("x",C),this.Y=_("y",I,!0),this.Z=_("z",A),Object.freeze(this)}static CURVE(){return Y}static fromAffine(C){let{x:I,y:A}=C||{};if(!C||!G.isValid(I)||!G.isValid(A))throw Error("invalid affine point");if(C instanceof k)throw Error("projective point not allowed");if(G.is0(I)&&G.is0(A))return k.ZERO;return new k(I,A,G.ONE)}static fromBytes(C){let I=k.fromAffine(N(Q$(C,void 0,"point")));return I.assertValidity(),I}static fromHex(C){return k.fromBytes(q8(C))}get x(){return this.toAffine().x}get y(){return this.toAffine().y}precompute(C=8,I=!0){if(v.createCache(this,C),!I)this.multiply(j9);return this}assertValidity(){f(this)}hasEvenY(){let{y:C}=this.toAffine();if(!G.isOdd)throw Error("Field doesn't support isOdd");return!G.isOdd(C)}equals(C){y(C);let{X:I,Y:A,Z:T}=this,{X:L,Y:g,Z:P}=C,b=G.eql(G.mul(I,P),G.mul(L,T)),O=G.eql(G.mul(A,P),G.mul(g,T));return b&&O}negate(){return new k(this.X,G.neg(this.Y),this.Z)}double(){let{a:C,b:I}=Y,A=G.mul(I,j9),{X:T,Y:L,Z:g}=this,P=G.ZERO,b=G.ZERO,O=G.ZERO,x=G.mul(T,T),r=G.mul(L,L),Z=G.mul(g,g),o=G.mul(T,L);return o=G.add(o,o),O=G.mul(T,g),O=G.add(O,O),P=G.mul(C,O),b=G.mul(A,Z),b=G.add(P,b),P=G.sub(r,b),b=G.add(r,b),b=G.mul(P,b),P=G.mul(o,P),O=G.mul(A,O),Z=G.mul(C,Z),o=G.sub(x,Z),o=G.mul(C,o),o=G.add(o,O),O=G.add(x,x),x=G.add(O,x),x=G.add(x,Z),x=G.mul(x,o),b=G.add(b,x),Z=G.mul(L,g),Z=G.add(Z,Z),x=G.mul(Z,o),P=G.sub(P,x),O=G.mul(Z,r),O=G.add(O,O),O=G.add(O,O),new k(P,b,O)}add(C){y(C);let{X:I,Y:A,Z:T}=this,{X:L,Y:g,Z:P}=C,b=G.ZERO,O=G.ZERO,x=G.ZERO,r=Y.a,Z=G.mul(Y.b,j9),o=G.mul(I,L),q$=G.mul(A,g),Y$=G.mul(T,P),G$=G.add(I,A),t=G.add(L,g);G$=G.mul(G$,t),t=G.add(o,q$),G$=G.sub(G$,t),t=G.add(I,T);let O$=G.add(L,P);return t=G.mul(t,O$),O$=G.add(o,Y$),t=G.sub(t,O$),O$=G.add(A,T),b=G.add(g,P),O$=G.mul(O$,b),b=G.add(q$,Y$),O$=G.sub(O$,b),x=G.mul(r,t),b=G.mul(Z,Y$),x=G.add(b,x),b=G.sub(q$,x),x=G.add(q$,x),O=G.mul(b,x),q$=G.add(o,o),q$=G.add(q$,o),Y$=G.mul(r,Y$),t=G.mul(Z,t),q$=G.add(q$,Y$),Y$=G.sub(o,Y$),Y$=G.mul(r,Y$),t=G.add(t,Y$),o=G.mul(q$,t),O=G.add(O,o),o=G.mul(O$,t),b=G.mul(G$,b),b=G.sub(b,o),o=G.mul(G$,q$),x=G.mul(O$,x),x=G.add(x,o),new k(b,O,x)}subtract(C){return this.add(C.negate())}is0(){return this.equals(k.ZERO)}multiply(C){let{endo:I}=q;if(!Q.isValidNot0(C))throw Error("invalid scalar: out of range");let A,T,L=(g)=>v.cached(this,g,(P)=>SW(k,P));if(I){let{k1neg:g,k1:P,k2neg:b,k2:O}=p(C),{p:x,f:r}=L(P),{p:Z,f:o}=L(O);T=r.add(o),A=m(I.beta,x,Z,g,b)}else{let{p:g,f:P}=L(C);A=g,T=P}return SW(k,[A,T])[0]}multiplyUnsafe(C){let{endo:I}=q,A=this;if(!Q.isValid(C))throw Error("invalid scalar: out of range");if(C===vq||A.is0())return k.ZERO;if(C===wG)return A;if(v.hasCache(this))return this.multiply(C);if(I){let{k1neg:T,k1:L,k2neg:g,k2:P}=p(C),{p1:b,p2:O}=yK(k,A,L,P);return m(I.beta,b,O,T,g)}else return v.unsafe(A,C)}toAffine(C){return F(this,C)}isTorsionFree(){let{isTorsionFree:C}=q;if(X===wG)return!0;if(C)return C(k,this);return v.unsafe(this,U).is0()}clearCofactor(){let{clearCofactor:C}=q;if(X===wG)return this;if(C)return C(k,this);return this.multiplyUnsafe(X)}isSmallOrder(){return this.multiplyUnsafe(X).is0()}toBytes(C=!0){return ZQ(C,"isCompressed"),this.assertValidity(),R(k,this,C)}toHex(C=!0){return $8(this.toBytes(C))}toString(){return`<Point ${this.is0()?"ZERO":this.toHex()}>`}}let l=Q.BITS,v=new IW(k,q.endo?Math.ceil(l/2):l);return k.BASE.precompute(8),k}function lK($){return Uint8Array.of($?2:3)}function rK($,q){return{secretKey:q.BYTES,publicKey:1+$.BYTES,publicKeyUncompressed:1+2*$.BYTES,publicKeyHasPrefix:!0,signature:2*q.BYTES}}function gC($,q={}){let{Fn:J}=$,G=q.randomBytes||zJ,Q=Object.assign(rK($.Fp,J),{seed:AW(J.ORDER)});function Y(R){try{let N=J.fromBytes(R);return J.isValidNot0(N)}catch(N){return!1}}function X(R,N){let{publicKey:w,publicKeyUncompressed:j}=Q;try{let B=R.length;if(N===!0&&B!==w)return!1;if(N===!1&&B!==j)return!1;return!!$.fromBytes(R)}catch(B){return!1}}function U(R=G(Q.seed)){return gK(Q$(R,Q.seed,"seed"),J.ORDER)}function W(R,N=!0){return $.BASE.multiply(J.fromBytes(R)).toBytes(N)}function V(R){let{secretKey:N,publicKey:w,publicKeyUncompressed:j}=Q;if(!RG(R))return;if("_lengths"in J&&J._lengths||N===w)return;let B=Q$(R,void 0,"key").length;return B===w||B===j}function M(R,N,w=!0){if(V(R)===!0)throw Error("first arg must be private key");if(V(N)===!1)throw Error("second arg must be public key");let j=J.fromBytes(R);return $.fromBytes(N).multiply(j).toBytes(w)}let z={isValidSecretKey:Y,isValidPublicKey:X,randomSecretKey:U},D=N9(U,W);return Object.freeze({getPublicKey:W,getSharedSecret:M,keygen:D,Point:$,utils:z,lengths:Q})}function FW($,q,J={}){y0(q),J8(J,{},{hmac:"function",lowS:"boolean",randomBytes:"function",bits2int:"function",bits2int_modN:"function"}),J=Object.assign({},J);let G=J.randomBytes||zJ,Q=J.hmac||((A,T)=>NG(q,A,T)),{Fp:Y,Fn:X}=$,{ORDER:U,BITS:W}=X,{keygen:V,getPublicKey:M,getSharedSecret:z,utils:D,lengths:R}=gC($,J),N={prehash:!0,lowS:typeof J.lowS==="boolean"?J.lowS:!0,format:"compact",extraEntropy:!1},w=U*pK<Y.ORDER;function j(A){let T=U>>wG;return A>T}function B(A,T){if(!X.isValidNot0(T))throw Error(`invalid signature ${A}: out of range 1..Point.Fn.ORDER`);return T}function S(){if(w)throw Error('"recovered" sig type is not supported for cofactor >2 curves')}function _(A,T){LW(T);let L=R.signature,g=T==="compact"?L:T==="recovered"?L+1:void 0;return Q$(A,g)}class y{r;s;recovery;constructor(A,T,L){if(this.r=B("r",A),this.s=B("s",T),L!=null){if(S(),![0,1,2,3].includes(L))throw Error("invalid recovery id");this.recovery=L}Object.freeze(this)}static fromBytes(A,T=N.format){_(A,T);let L;if(T==="der"){let{r:O,s:x}=OJ.toSig(Q$(A));return new y(O,x)}if(T==="recovered")L=A[0],T="compact",A=A.subarray(1);let g=R.signature/2,P=A.subarray(0,g),b=A.subarray(g,g*2);return new y(X.fromBytes(P),X.fromBytes(b),L)}static fromHex(A,T){return this.fromBytes(q8(A),T)}assertRecovery(){let{recovery:A}=this;if(A==null)throw Error("invalid recovery id: must be present");return A}addRecoveryBit(A){return new y(this.r,this.s,A)}recoverPublicKey(A){let{r:T,s:L}=this,g=this.assertRecovery(),P=g===2||g===3?T+U:T;if(!Y.isValid(P))throw Error("invalid recovery id: sig.r+curve.n != R.x");let b=Y.toBytes(P),O=$.fromBytes(_$(lK((g&1)===0),b)),x=X.inv(P),r=F(Q$(A,void 0,"msgHash")),Z=X.create(-r*x),o=X.create(L*x),q$=$.BASE.multiplyUnsafe(Z).add(O.multiplyUnsafe(o));if(q$.is0())throw Error("invalid recovery: point at infinify");return q$.assertValidity(),q$}hasHighS(){return j(this.s)}toBytes(A=N.format){if(LW(A),A==="der")return q8(OJ.hexFromSig(this));let{r:T,s:L}=this,g=X.toBytes(T),P=X.toBytes(L);if(A==="recovered")return S(),_$(Uint8Array.of(this.assertRecovery()),g,P);return _$(g,P)}toHex(A){return $8(this.toBytes(A))}}let p=J.bits2int||function(T){if(T.length>8192)throw Error("input is too large");let L=DJ(T),g=T.length*8-W;return g>0?L>>BigInt(g):L},F=J.bits2int_modN||function(T){return X.create(p(T))},f=IQ(W);function m(A){return SQ("num < 2^"+W,A,vq,f),X.toBytes(A)}function k(A,T){return Q$(A,void 0,"message"),T?Q$(q(A),void 0,"prehashed message"):A}function l(A,T,L){let{lowS:g,prehash:P,extraEntropy:b}=EW(L,N);A=k(A,P);let O=F(A),x=X.fromBytes(T);if(!X.isValidNot0(x))throw Error("invalid private key");let r=[m(x),m(O)];if(b!=null&&b!==!1){let Y$=b===!0?G(R.secretKey):b;r.push(Q$(Y$,void 0,"extraEntropy"))}let Z=_$(...r),o=O;function q$(Y$){let G$=p(Y$);if(!X.isValidNot0(G$))return;let t=X.inv(G$),O$=$.BASE.multiply(G$).toAffine(),A$=X.create(O$.x);if(A$===vq)return;let S$=X.create(t*X.create(o+A$*x));if(S$===vq)return;let y$=(O$.x===A$?0:2)|Number(O$.y&wG),z0=S$;if(g&&j(S$))z0=X.neg(S$),y$^=1;return new y(A$,z0,w?void 0:y$)}return{seed:Z,k2sig:q$}}function v(A,T,L={}){let{seed:g,k2sig:P}=l(A,T,L);return jK(q.outputLen,X.BYTES,Q)(g,P).toBytes(L.format)}function C(A,T,L,g={}){let{lowS:P,prehash:b,format:O}=EW(g,N);if(L=Q$(L,void 0,"publicKey"),T=k(T,b),!RG(A)){let x=A instanceof y?", use sig.toBytes()":"";throw Error("verify expects Uint8Array signature"+x)}_(A,O);try{let x=y.fromBytes(A,O),r=$.fromBytes(L);if(P&&x.hasHighS())return!1;let{r:Z,s:o}=x,q$=F(T),Y$=X.inv(o),G$=X.create(q$*Y$),t=X.create(Z*Y$),O$=$.BASE.multiplyUnsafe(G$).add(r.multiplyUnsafe(t));if(O$.is0())return!1;return X.create(O$.x)===Z}catch(x){return!1}}function I(A,T,L={}){let{prehash:g}=EW(L,N);return T=k(T,g),y.fromBytes(A,"recovered").recoverPublicKey(T).toBytes()}return Object.freeze({keygen:V,getPublicKey:M,getSharedSecret:z,utils:D,lengths:R,Point:$,sign:v,verify:C,recoverPublicKey:I,Signature:y,hash:q})}function iK($,q,J){return $&q^~$&J}function dK($,q,J){return $&q^$&J^q&J}class A9{blockLen;outputLen;padOffset;isLE;buffer;view;finished=!1;length=0;pos=0;destroyed=!1;constructor($,q,J,G){this.blockLen=$,this.outputLen=q,this.padOffset=J,this.isLE=G,this.buffer=new Uint8Array($),this.view=D9(this.buffer)}update($){_q(this),Q$($);let{view:q,buffer:J,blockLen:G}=this,Q=$.length;for(let Y=0;Y<Q;){let X=Math.min(G-this.pos,Q-Y);if(X===G){let U=D9($);for(;G<=Q-Y;Y+=G)this.process(U,Y);continue}if(J.set($.subarray(Y,Y+X),this.pos),this.pos+=X,Y+=X,this.pos===G)this.process(q,0),this.pos=0}return this.length+=$.length,this.roundClean(),this}digestInto($){_q(this),z9($,this),this.finished=!0;let{buffer:q,view:J,blockLen:G,isLE:Q}=this,{pos:Y}=this;if(q[Y++]=128,T0(this.buffer.subarray(Y)),this.padOffset>G-Y)this.process(J,0),Y=0;for(let M=Y;M<G;M++)q[M]=0;J.setBigUint64(G-8,BigInt(this.length*8),Q),this.process(J,0);let X=D9($),U=this.outputLen;if(U%4)throw Error("_sha2: outputLen must be aligned to 32bit");let W=U/4,V=this.get();if(W>V.length)throw Error("_sha2: outputLen bigger than state");for(let M=0;M<W;M++)X.setUint32(4*M,V[M],Q)}digest(){let{buffer:$,outputLen:q}=this;this.digestInto($);let J=$.slice(0,q);return this.destroy(),J}_cloneInto($){$||=new this.constructor,$.set(...this.get());let{blockLen:q,buffer:J,length:G,finished:Q,destroyed:Y,pos:X}=this;if($.destroyed=Y,$.finished=Q,$.length=G,$.pos=X,G%q)$.buffer.set(J);return $}clone(){return this._cloneInto()}}var bq=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),kq=Uint32Array.from([3238371032,914150663,812702999,4144912697,4290775857,1750603025,1694076839,3204075428]),n$=Uint32Array.from([3418070365,3238371032,1654270250,914150663,2438529370,812702999,355462360,4144912697,1731405415,4290775857,2394180231,1750603025,3675008525,1694076839,1203062813,3204075428]),o$=Uint32Array.from([1779033703,4089235720,3144134277,2227873595,1013904242,4271175723,2773480762,1595750129,1359893119,2917565137,2600822924,725511199,528734635,4215389547,1541459225,327033209]);var Z9=BigInt(4294967295),cK=BigInt(32);function _C($,q=!1){if(q)return{h:Number($&Z9),l:Number($>>cK&Z9)};return{h:Number($>>cK&Z9)|0,l:Number($&Z9)|0}}function B9($,q=!1){let J=$.length,G=new Uint32Array(J),Q=new Uint32Array(J);for(let Y=0;Y<J;Y++){let{h:X,l:U}=_C($[Y],q);[G[Y],Q[Y]]=[X,U]}return[G,Q]}var gW=($,q,J)=>$>>>J,_W=($,q,J)=>$<<32-J|q>>>J,Y8=($,q,J)=>$>>>J|q<<32-J,X8=($,q,J)=>$<<32-J|q>>>J,PQ=($,q,J)=>$<<64-J|q>>>J-32,FQ=($,q,J)=>$>>>J-32|q<<64-J;var nK=($,q,J)=>$<<J|q>>>32-J,oK=($,q,J)=>q<<J|$>>>32-J,aK=($,q,J)=>q<<J-32|$>>>64-J,sK=($,q,J)=>$<<J-32|q>>>64-J;function Mq($,q,J,G){let Q=(q>>>0)+(G>>>0);return{h:$+J+(Q/4294967296|0)|0,l:Q|0}}var tK=($,q,J)=>($>>>0)+(q>>>0)+(J>>>0),eK=($,q,J,G)=>q+J+G+($/4294967296|0)|0,$1=($,q,J,G)=>($>>>0)+(q>>>0)+(J>>>0)+(G>>>0),q1=($,q,J,G,Q)=>q+J+G+Q+($/4294967296|0)|0,J1=($,q,J,G,Q)=>($>>>0)+(q>>>0)+(J>>>0)+(G>>>0)+(Q>>>0),G1=($,q,J,G,Q,Y)=>q+J+G+Q+Y+($/4294967296|0)|0;var bC=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]),NJ=new Uint32Array(64);class vW extends A9{constructor($){super(64,$,8,!1)}get(){let{A:$,B:q,C:J,D:G,E:Q,F:Y,G:X,H:U}=this;return[$,q,J,G,Q,Y,X,U]}set($,q,J,G,Q,Y,X,U){this.A=$|0,this.B=q|0,this.C=J|0,this.D=G|0,this.E=Q|0,this.F=Y|0,this.G=X|0,this.H=U|0}process($,q){for(let M=0;M<16;M++,q+=4)NJ[M]=$.getUint32(q,!1);for(let M=16;M<64;M++){let z=NJ[M-15],D=NJ[M-2],R=t0(z,7)^t0(z,18)^z>>>3,N=t0(D,17)^t0(D,19)^D>>>10;NJ[M]=N+NJ[M-7]+R+NJ[M-16]|0}let{A:J,B:G,C:Q,D:Y,E:X,F:U,G:W,H:V}=this;for(let M=0;M<64;M++){let z=t0(X,6)^t0(X,11)^t0(X,25),D=V+z+iK(X,U,W)+bC[M]+NJ[M]|0,N=(t0(J,2)^t0(J,13)^t0(J,22))+dK(J,G,Q)|0;V=W,W=U,U=X,X=Y+D|0,Y=Q,Q=G,G=J,J=D+N|0}J=J+this.A|0,G=G+this.B|0,Q=Q+this.C|0,Y=Y+this.D|0,X=X+this.E|0,U=U+this.F|0,W=W+this.G|0,V=V+this.H|0,this.set(J,G,Q,Y,X,U,W,V)}roundClean(){T0(NJ)}destroy(){this.set(0,0,0,0,0,0,0,0),T0(this.buffer)}}class Q1 extends vW{A=bq[0]|0;B=bq[1]|0;C=bq[2]|0;D=bq[3]|0;E=bq[4]|0;F=bq[5]|0;G=bq[6]|0;H=bq[7]|0;constructor(){super(32)}}class kC extends vW{A=kq[0]|0;B=kq[1]|0;C=kq[2]|0;D=kq[3]|0;E=kq[4]|0;F=kq[5]|0;G=kq[6]|0;H=kq[7]|0;constructor(){super(28)}}var Y1=(()=>B9(["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(($)=>BigInt($))))(),mC=(()=>Y1[0])(),yC=(()=>Y1[1])(),wJ=new Uint32Array(80),jJ=new Uint32Array(80);class gQ extends A9{constructor($){super(128,$,16,!1)}get(){let{Ah:$,Al:q,Bh:J,Bl:G,Ch:Q,Cl:Y,Dh:X,Dl:U,Eh:W,El:V,Fh:M,Fl:z,Gh:D,Gl:R,Hh:N,Hl:w}=this;return[$,q,J,G,Q,Y,X,U,W,V,M,z,D,R,N,w]}set($,q,J,G,Q,Y,X,U,W,V,M,z,D,R,N,w){this.Ah=$|0,this.Al=q|0,this.Bh=J|0,this.Bl=G|0,this.Ch=Q|0,this.Cl=Y|0,this.Dh=X|0,this.Dl=U|0,this.Eh=W|0,this.El=V|0,this.Fh=M|0,this.Fl=z|0,this.Gh=D|0,this.Gl=R|0,this.Hh=N|0,this.Hl=w|0}process($,q){for(let S=0;S<16;S++,q+=4)wJ[S]=$.getUint32(q),jJ[S]=$.getUint32(q+=4);for(let S=16;S<80;S++){let _=wJ[S-15]|0,y=jJ[S-15]|0,p=Y8(_,y,1)^Y8(_,y,8)^gW(_,y,7),F=X8(_,y,1)^X8(_,y,8)^_W(_,y,7),f=wJ[S-2]|0,m=jJ[S-2]|0,k=Y8(f,m,19)^PQ(f,m,61)^gW(f,m,6),l=X8(f,m,19)^FQ(f,m,61)^_W(f,m,6),v=$1(F,l,jJ[S-7],jJ[S-16]),C=q1(v,p,k,wJ[S-7],wJ[S-16]);wJ[S]=C|0,jJ[S]=v|0}let{Ah:J,Al:G,Bh:Q,Bl:Y,Ch:X,Cl:U,Dh:W,Dl:V,Eh:M,El:z,Fh:D,Fl:R,Gh:N,Gl:w,Hh:j,Hl:B}=this;for(let S=0;S<80;S++){let _=Y8(M,z,14)^Y8(M,z,18)^PQ(M,z,41),y=X8(M,z,14)^X8(M,z,18)^FQ(M,z,41),p=M&D^~M&N,F=z&R^~z&w,f=J1(B,y,F,yC[S],jJ[S]),m=G1(f,j,_,p,mC[S],wJ[S]),k=f|0,l=Y8(J,G,28)^PQ(J,G,34)^PQ(J,G,39),v=X8(J,G,28)^FQ(J,G,34)^FQ(J,G,39),C=J&Q^J&X^Q&X,I=G&Y^G&U^Y&U;j=N|0,B=w|0,N=D|0,w=R|0,D=M|0,R=z|0,{h:M,l:z}=Mq(W|0,V|0,m|0,k|0),W=X|0,V=U|0,X=Q|0,U=Y|0,Q=J|0,Y=G|0;let A=tK(k,v,I);J=eK(A,m,l,C),G=A|0}({h:J,l:G}=Mq(this.Ah|0,this.Al|0,J|0,G|0)),{h:Q,l:Y}=Mq(this.Bh|0,this.Bl|0,Q|0,Y|0),{h:X,l:U}=Mq(this.Ch|0,this.Cl|0,X|0,U|0),{h:W,l:V}=Mq(this.Dh|0,this.Dl|0,W|0,V|0),{h:M,l:z}=Mq(this.Eh|0,this.El|0,M|0,z|0),{h:D,l:R}=Mq(this.Fh|0,this.Fl|0,D|0,R|0),{h:N,l:w}=Mq(this.Gh|0,this.Gl|0,N|0,w|0),{h:j,l:B}=Mq(this.Hh|0,this.Hl|0,j|0,B|0),this.set(J,G,Q,Y,X,U,W,V,M,z,D,R,N,w,j,B)}roundClean(){T0(wJ,jJ)}destroy(){T0(this.buffer),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}}class fC extends gQ{Ah=o$[0]|0;Al=o$[1]|0;Bh=o$[2]|0;Bl=o$[3]|0;Ch=o$[4]|0;Cl=o$[5]|0;Dh=o$[6]|0;Dl=o$[7]|0;Eh=o$[8]|0;El=o$[9]|0;Fh=o$[10]|0;Fl=o$[11]|0;Gh=o$[12]|0;Gl=o$[13]|0;Hh=o$[14]|0;Hl=o$[15]|0;constructor(){super(64)}}class X1 extends gQ{Ah=n$[0]|0;Al=n$[1]|0;Bh=n$[2]|0;Bl=n$[3]|0;Ch=n$[4]|0;Cl=n$[5]|0;Dh=n$[6]|0;Dl=n$[7]|0;Eh=n$[8]|0;El=n$[9]|0;Fh=n$[10]|0;Fl=n$[11]|0;Gh=n$[12]|0;Gl=n$[13]|0;Hh=n$[14]|0;Hl=n$[15]|0;constructor(){super(48)}}var W0=Uint32Array.from([2352822216,424955298,1944164710,2312950998,502970286,855612546,1738396948,1479516111,258812777,2077511080,2011393907,79989058,1067287976,1780299464,286451373,2446758561]),V0=Uint32Array.from([573645204,4230739756,2673172387,3360449730,596883563,1867755857,2520282905,1497426621,2519219938,2827943907,3193839141,1401305490,721525244,746961066,246885852,2177182882]);class xC extends gQ{Ah=W0[0]|0;Al=W0[1]|0;Bh=W0[2]|0;Bl=W0[3]|0;Ch=W0[4]|0;Cl=W0[5]|0;Dh=W0[6]|0;Dl=W0[7]|0;Eh=W0[8]|0;El=W0[9]|0;Fh=W0[10]|0;Fl=W0[11]|0;Gh=W0[12]|0;Gl=W0[13]|0;Hh=W0[14]|0;Hl=W0[15]|0;constructor(){super(28)}}class hC extends gQ{Ah=V0[0]|0;Al=V0[1]|0;Bh=V0[2]|0;Bl=V0[3]|0;Ch=V0[4]|0;Cl=V0[5]|0;Dh=V0[6]|0;Dl=V0[7]|0;Eh=V0[8]|0;El=V0[9]|0;Fh=V0[10]|0;Fl=V0[11]|0;Gh=V0[12]|0;Gl=V0[13]|0;Hh=V0[14]|0;Hl=V0[15]|0;constructor(){super(32)}}var T9=DG(()=>new Q1,RJ(1));var U1=DG(()=>new X1,RJ(2));/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */var uC=BigInt(1),W1=BigInt(2),pC=BigInt(3),lC=BigInt(5),Bp=BigInt(8),V1=BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed");function rC($){let q=BigInt(10),J=BigInt(20),G=BigInt(40),Q=BigInt(80),Y=V1,U=$*$%Y*$%Y,W=f0(U,W1,Y)*U%Y,V=f0(W,uC,Y)*$%Y,M=f0(V,lC,Y)*V%Y,z=f0(M,q,Y)*M%Y,D=f0(z,J,Y)*z%Y,R=f0(D,G,Y)*D%Y,N=f0(R,Q,Y)*R%Y,w=f0(N,Q,Y)*R%Y,j=f0(w,q,Y)*M%Y;return{pow_p_5_8:f0(j,W1,Y)*$%Y,b2:U}}function iC($){return $[0]&=248,$[31]&=127,$[31]|=64,$}var M1=(()=>{let $=V1;return xK({P:$,type:"x25519",powPminus2:(q)=>{let{pow_p_5_8:J,b2:G}=rC(q);return O0(f0(J,pC,$)*G,$)},adjustScalarBytes:iC})})();/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */var dC=(()=>({p:BigInt("0xffffffff00000001000000000000000000000000ffffffffffffffffffffffff"),n:BigInt("0xffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551"),h:BigInt(1),a:BigInt("0xffffffff00000001000000000000000000000000fffffffffffffffffffffffc"),b:BigInt("0x5ac635d8aa3a93e7b3ebbd55769886bc651d06b0cc53b0f63bce3c3e27d2604b"),Gx:BigInt("0x6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296"),Gy:BigInt("0x4fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5")}))(),cC=(()=>({p:BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff"),n:BigInt("0xffffffffffffffffffffffffffffffffffffffffffffffffc7634d81f4372ddf581a0db248b0a77aecec196accc52973"),h:BigInt(1),a:BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000fffffffc"),b:BigInt("0xb3312fa7e23ee7e4988e056be3f82d19181d9c6efe8141120314088f5013875ac656398d8a2ed19d2a85c8edd3ec2aef"),Gx:BigInt("0xaa87ca22be8b05378eb1c71ef320ad746e1d3b628ba79b9859f741e082542a385502f25dbf55296c3a545e3872760ab7"),Gy:BigInt("0x3617de4a96262c6f5d9e98bf9292dc29f8f41dbd289a147ce9da3113b5f0b8c00a60b1ce1d7e819d7a431d7c90ea0e5f")}))();var nC=PW(dC),bW=FW(nC,T9);var oC=PW(cC),z1=FW(oC,U1);function D1($,q,J){if(y0($),J===void 0)J=new Uint8Array($.outputLen);return NG($,J,q)}var kW=Uint8Array.of(0),R1=Uint8Array.of();function K1($,q,J,G=32){y0($),h$(G,"length");let Q=$.outputLen;if(G>255*Q)throw Error("Length must be <= 255*HashLen");let Y=Math.ceil(G/Q);if(J===void 0)J=R1;else Q$(J,void 0,"info");let X=new Uint8Array(Y*Q),U=NG.create($,q),W=U._cloneInto(),V=new Uint8Array(U.outputLen);for(let M=0;M<Y;M++)kW[0]=M+1,W.update(M===0?R1:V).update(J).update(kW).digestInto(V),X.set(V,Q*M),U._cloneInto(W);return U.destroy(),W.destroy(),T0(V,kW),X.slice(0,G)}var aC=BigInt(0),_Q=BigInt(1),sC=BigInt(2),tC=BigInt(7),eC=BigInt(256),$E=BigInt(113),N1=[],w1=[],j1=[];for(let $=0,q=_Q,J=1,G=0;$<24;$++){[J,G]=[G,(2*J+3*G)%5],N1.push(2*(5*G+J)),w1.push(($+1)*($+2)/2%64);let Q=aC;for(let Y=0;Y<7;Y++)if(q=(q<<_Q^(q>>tC)*$E)%eC,q&sC)Q^=_Q<<(_Q<<BigInt(Y))-_Q;j1.push(Q)}var A1=B9(j1,!0),qE=A1[0],JE=A1[1],H1=($,q,J)=>J>32?aK($,q,J):nK($,q,J),O1=($,q,J)=>J>32?sK($,q,J):oK($,q,J);function GE($,q=24){let J=new Uint32Array(10);for(let G=24-q;G<24;G++){for(let X=0;X<10;X++)J[X]=$[X]^$[X+10]^$[X+20]^$[X+30]^$[X+40];for(let X=0;X<10;X+=2){let U=(X+8)%10,W=(X+2)%10,V=J[W],M=J[W+1],z=H1(V,M,1)^J[U],D=O1(V,M,1)^J[U+1];for(let R=0;R<50;R+=10)$[X+R]^=z,$[X+R+1]^=D}let Q=$[2],Y=$[3];for(let X=0;X<24;X++){let U=w1[X],W=H1(Q,Y,U),V=O1(Q,Y,U),M=N1[X];Q=$[M],Y=$[M+1],$[M]=W,$[M+1]=V}for(let X=0;X<50;X+=10){for(let U=0;U<10;U++)J[U]=$[X+U];for(let U=0;U<10;U++)$[X+U]^=~J[(U+2)%10]&J[(U+4)%10]}$[0]^=qE[G],$[1]^=JE[G]}T0(J)}class S9{state;pos=0;posOut=0;finished=!1;state32;destroyed=!1;blockLen;suffix;outputLen;enableXOF=!1;rounds;constructor($,q,J,G=!1,Q=24){if(this.blockLen=$,this.suffix=q,this.outputLen=J,this.enableXOF=G,this.rounds=Q,h$(J,"outputLen"),!(0<$&&$<200))throw Error("only keccak-f1600 function is supported");this.state=new Uint8Array(200),this.state32=R9(this.state)}clone(){return this._cloneInto()}keccak(){DW(this.state32),GE(this.state32,this.rounds),DW(this.state32),this.posOut=0,this.pos=0}update($){_q(this),Q$($);let{blockLen:q,state:J}=this,G=$.length;for(let Q=0;Q<G;){let Y=Math.min(q-this.pos,G-Q);for(let X=0;X<Y;X++)J[this.pos++]^=$[Q++];if(this.pos===q)this.keccak()}return this}finish(){if(this.finished)return;this.finished=!0;let{state:$,suffix:q,pos:J,blockLen:G}=this;if($[J]^=q,(q&128)!==0&&J===G-1)this.keccak();$[G-1]^=128,this.keccak()}writeInto($){_q(this,!1),Q$($),this.finish();let q=this.state,{blockLen:J}=this;for(let G=0,Q=$.length;G<Q;){if(this.posOut>=J)this.keccak();let Y=Math.min(J-this.posOut,Q-G);$.set(q.subarray(this.posOut,this.posOut+Y),G),this.posOut+=Y,G+=Y}return $}xofInto($){if(!this.enableXOF)throw Error("XOF is not possible for this instance");return this.writeInto($)}xof($){return h$($),this.xofInto(new Uint8Array($))}digestInto($){if(z9($,this),this.finished)throw Error("digest() was already called");return this.writeInto($),this.destroy(),$}digest(){return this.digestInto(new Uint8Array(this.outputLen))}destroy(){this.destroyed=!0,T0(this.state)}_cloneInto($){let{blockLen:q,suffix:J,outputLen:G,rounds:Q,enableXOF:Y}=this;return $||=new S9(q,J,G,Y,Q),$.state32.set(this.state32),$.pos=this.pos,$.posOut=this.posOut,$.finished=this.finished,$.rounds=Q,$.suffix=J,$.outputLen=G,$.enableXOF=Y,$.destroyed=this.destroyed,$}}var Z1=($,q,J,G={})=>DG(()=>new S9(q,$,J),G);var U8=Z1(6,136,32,RJ(8));var B1=Z1(6,72,64,RJ(10));var T1=($,q,J,G={})=>DG((Q={})=>new S9(q,$,Q.dkLen===void 0?J:Q.dkLen,!0),G),S1=T1(31,168,16,RJ(11)),zq=T1(31,136,32,RJ(12));function mW($){if(!Number.isSafeInteger($)||$<0||$>4294967295)throw Error("wrong u32 integer:"+$);return $}function C1($){return mW($),($&$-1)===0&&$!==0}function yW($,q){mW($);let J=0;for(let G=0;G<q;G++,$>>>=1)J=J<<1|$&1;return J}function E1($){return mW($),31-Math.clz32($)}function I1($){let q=$.length;if(q<2||!C1(q))throw Error("n must be a power of 2 and greater than 1. Got "+q);let J=E1(q);for(let G=0;G<q;G++){let Q=yW(G,J);if(G<Q){let Y=$[G];$[G]=$[Q],$[Q]=Y}}return $}var fW=($,q)=>{let{N:J,roots:G,dit:Q,invertButterflies:Y=!1,skipStages:X=0,brp:U=!0}=q,W=E1(J);if(!C1(J))throw Error("FFT: Polynomial size should be power of two");let V=Q!==Y;return(M)=>{if(M.length!==J)throw Error("FFT: wrong Polynomial length");if(Q&&U)I1(M);for(let z=0,D=1;z<W-X;z++){let R=Q?z+1+X:W-z,N=1<<R,w=N>>1,j=J>>R;for(let B=0;B<J;B+=N)for(let S=0,_=D++;S<w;S++){let y=Y?Q?J-_:_:S*j,p=B+S,F=B+S+w,f=G[y],m=M[F],k=M[p];if(V){let l=$.mul(m,f);M[p]=$.add(k,l),M[F]=$.sub(k,l)}else if(Y)M[p]=$.add(m,k),M[F]=$.mul($.sub(m,k),f);else M[p]=$.add(k,m),M[F]=$.mul($.sub(k,m),f)}}if(!Q&&U)I1(M);return M}};/*! noble-post-quantum - MIT License (c) 2024 Paul Miller (paulmillr.com) */var Rq=zJ;function I9($,q){if($.length!==q.length)return!1;let J=0;for(let G=0;G<$.length;G++)J|=$[G]^q[G];return J===0}function L1($){return Uint8Array.from($)}function W8($,...q){let J=(Q)=>typeof Q==="number"?Q:Q.bytesLen,G=q.reduce((Q,Y)=>Q+J(Y),0);return{bytesLen:G,encode:(Q)=>{let Y=new Uint8Array(G);for(let X=0,U=0;X<q.length;X++){let W=q[X],V=J(W),M=typeof W==="number"?Q[X]:W.encode(Q[X]);if(Q$(M,V,$),Y.set(M,U),typeof W!=="number")M.fill(0);U+=V}return Y},decode:(Q)=>{Q$(Q,G,$);let Y=[];for(let X of q){let U=J(X),W=Q.subarray(0,U);Y.push(typeof X==="number"?W:X.decode(W)),Q=Q.subarray(U)}return Y}}}function C9($,q){let J=q*$.bytesLen;return{bytesLen:J,encode:(G)=>{if(G.length!==q)throw Error(`vecCoder.encode: wrong length=${G.length}. Expected: ${q}`);let Q=new Uint8Array(J);for(let Y=0,X=0;Y<G.length;Y++){let U=$.encode(G[Y]);Q.set(U,X),U.fill(0),X+=U.length}return Q},decode:(G)=>{Q$(G,J);let Q=[];for(let Y=0;Y<G.length;Y+=$.bytesLen)Q.push($.decode(G.subarray(Y,Y+$.bytesLen)));return Q}}}function m$(...$){for(let q of $)if(Array.isArray(q))for(let J of q)J.fill(0);else q.fill(0)}function xW($){return(1<<$)-1}var yp=Uint8Array.of();/*! noble-post-quantum - MIT License (c) 2024 Paul Miller (paulmillr.com) */var P1=($)=>{let{newPoly:q,N:J,Q:G,F:Q,ROOT_OF_UNITY:Y,brvBits:X,isKyber:U}=$,W=(S,_=G)=>{let y=S%_|0;return(y>=0?y|0:_+y|0)|0},V=(S,_=G)=>{let y=W(S,_)|0;return(y>_>>1?y-_|0:y)|0};function M(){let S=q(J);for(let _=0;_<J;_++){let y=yW(_,X),p=BigInt(Y)**BigInt(y)%BigInt(G);S[_]=Number(p)|0}return S}let z=M(),D={add:(S,_)=>W((S|0)+(_|0))|0,sub:(S,_)=>W((S|0)-(_|0))|0,mul:(S,_)=>W((S|0)*(_|0))|0,inv:(S)=>{throw Error("not implemented")}},R={N:J,roots:z,invertButterflies:!0,skipStages:U?1:0,brp:!1},N=fW(D,{dit:!1,...R}),w=fW(D,{dit:!0,...R});return{mod:W,smod:V,nttZetas:z,NTT:{encode:(S)=>{return N(S)},decode:(S)=>{w(S);for(let _=0;_<S.length;_++)S[_]=W(Q*S[_]);return S}},bitsCoder:(S,_)=>{let y=xW(S),p=S*(J/8);return{bytesLen:p,encode:(F)=>{let f=new Uint8Array(p);for(let m=0,k=0,l=0,v=0;m<F.length;m++){k|=(_.encode(F[m])&y)<<l,l+=S;for(;l>=8;l-=8,k>>=8)f[v++]=k&xW(l)}return f},decode:(F)=>{let f=q(J);for(let m=0,k=0,l=0,v=0;m<F.length;m++){k|=F[m]<<l,l+=8;for(;l>=S;l-=S,k>>=S)f[v++]=_.decode(k&y)}return f}}}}},QE=($)=>(q,J)=>{if(!J)J=$.blockLen;let G=new Uint8Array(q.length+2);G.set(q);let Q=q.length,Y=new Uint8Array(J),X=$.create({}),U=0,W=0;return{stats:()=>({calls:U,xofs:W}),get:(V,M)=>{return G[Q+0]=V,G[Q+1]=M,X.destroy(),X=$.create({}).update(G),U++,()=>{return W++,X.xofInto(Y)}},clean:()=>{X.destroy(),m$(Y,G)}}},F1=QE(S1);/*! noble-post-quantum - MIT License (c) 2024 Paul Miller (paulmillr.com) */var M0=256,mq=3329,YE=3303,XE=17,{mod:kQ,nttZetas:UE,NTT:V8,bitsCoder:WE}=P1({N:M0,Q:mq,F:YE,ROOT_OF_UNITY:XE,newPoly:($)=>new Uint16Array($),brvBits:7,isKyber:!0}),hW={512:{N:M0,Q:mq,K:2,ETA1:3,ETA2:2,du:10,dv:4,RBGstrength:128},768:{N:M0,Q:mq,K:3,ETA1:2,ETA2:2,du:10,dv:4,RBGstrength:192},1024:{N:M0,Q:mq,K:4,ETA1:2,ETA2:2,du:11,dv:5,RBGstrength:256}},VE=($)=>{if($>=12)return{encode:(J)=>J,decode:(J)=>J};let q=2**($-1);return{encode:(J)=>((J<<$)+mq/2)/mq,decode:(J)=>J*mq+q>>>$}},vQ=($)=>WE($,VE($));function M8($,q){for(let J=0;J<M0;J++)$[J]=kQ($[J]+q[J])}function ME($,q){for(let J=0;J<M0;J++)$[J]=kQ($[J]-q[J])}function zE($,q,J,G,Q){let Y=kQ(q*G*Q+$*J),X=kQ($*G+q*J);return{c0:Y,c1:X}}function E9($,q){for(let J=0;J<M0/2;J++){let G=UE[64+(J>>1)];if(J&1)G=-G;let{c0:Q,c1:Y}=zE($[2*J+0],$[2*J+1],q[2*J+0],q[2*J+1],G);$[2*J+0]=Q,$[2*J+1]=Y}return $}function g1($){let q=new Uint16Array(M0);for(let J=0;J<M0;){let G=$();if(G.length%3)throw Error("SampleNTT: unaligned block");for(let Q=0;J<M0&&Q+3<=G.length;Q+=3){let Y=(G[Q+0]>>0|G[Q+1]<<8)&4095,X=(G[Q+1]>>4|G[Q+2]<<4)&4095;if(Y<mq)q[J++]=Y;if(J<M0&&X<mq)q[J++]=X}}return q}function bQ($,q,J,G){let Q=$(G*M0/4,q,J),Y=new Uint16Array(M0),X=R9(Q),U=0;for(let W=0,V=0,M=0,z=0;W<X.length;W++){let D=X[W];for(let R=0;R<32;R++)if(M+=D&1,D>>=1,U+=1,U===G)z=M,M=0;else if(U===2*G)Y[V++]=kQ(z-M),M=0,U=0}if(U)throw Error(`sampleCBD: leftover bits: ${U}`);return Y}var RE=($)=>{let{K:q,PRF:J,XOF:G,HASH512:Q,ETA1:Y,ETA2:X,du:U,dv:W}=$,V=vQ(1),M=vQ(W),z=vQ(U),D=W8("publicKey",C9(vQ(12),q),32),R=C9(vQ(12),q),N=W8("ciphertext",C9(z,q),M),w=W8("seed",32,32);return{secretCoder:R,lengths:{secretKey:R.bytesLen,publicKey:D.bytesLen,cipherText:N.bytesLen},keygen:(j)=>{Q$(j,32,"seed");let B=new Uint8Array(33);B.set(j),B[32]=q;let S=Q(B),[_,y]=w.decode(S),p=[],F=[];for(let k=0;k<q;k++)p.push(V8.encode(bQ(J,y,k,Y)));let f=G(_);for(let k=0;k<q;k++){let l=V8.encode(bQ(J,y,q+k,Y));for(let v=0;v<q;v++){let C=g1(f.get(v,k));M8(l,E9(C,p[v]))}F.push(l)}f.clean();let m={publicKey:D.encode([F,_]),secretKey:R.encode(p)};return m$(_,y,p,F,B,S),m},encrypt:(j,B,S)=>{let[_,y]=D.decode(j),p=[];for(let v=0;v<q;v++)p.push(V8.encode(bQ(J,S,v,Y)));let F=G(y),f=new Uint16Array(M0),m=[];for(let v=0;v<q;v++){let C=bQ(J,S,q+v,X),I=new Uint16Array(M0);for(let A=0;A<q;A++){let T=g1(F.get(v,A));M8(I,E9(T,p[A]))}M8(C,V8.decode(I)),m.push(C),M8(f,E9(_[v],p[v])),m$(I)}F.clean();let k=bQ(J,S,2*q,X);M8(k,V8.decode(f));let l=V.decode(B);return M8(l,k),m$(_,p,f,k),N.encode([m,l])},decrypt:(j,B)=>{let[S,_]=N.decode(j),y=R.decode(B),p=new Uint16Array(M0);for(let F=0;F<q;F++)M8(p,E9(y[F],V8.encode(S[F])));return ME(_,V8.decode(p)),m$(p,y,S),V.encode(_)}}};function uW($){let q=RE($),{HASH256:J,HASH512:G,KDF:Q}=$,{secretCoder:Y,lengths:X}=q,U=W8("secretKey",X.secretKey,X.publicKey,32,32),W=32,V=64;return{info:{type:"ml-kem"},lengths:{...X,seed:64,msg:32,msgRand:32,secretKey:U.bytesLen},keygen:(M=Rq(64))=>{Q$(M,64,"seed");let{publicKey:z,secretKey:D}=q.keygen(M.subarray(0,32)),R=J(z),N=U.encode([D,z,R,M.subarray(32)]);return m$(D,R),{publicKey:z,secretKey:N}},getPublicKey:(M)=>{let[z,D,R,N]=U.decode(M);return Uint8Array.from(D)},encapsulate:(M,z=Rq(32))=>{Q$(M,X.publicKey,"publicKey"),Q$(z,32,"message");let D=M.subarray(0,384*$.K),R=Y.encode(Y.decode(L1(D)));if(!I9(R,D))throw m$(R),Error("ML-KEM.encapsulate: wrong publicKey modulus");m$(R);let N=G.create().update(z).update(J(M)).digest(),w=q.encrypt(M,z,N.subarray(32,64));return m$(N.subarray(32)),{cipherText:w,sharedSecret:N.subarray(0,32)}},decapsulate:(M,z)=>{Q$(z,U.bytesLen,"secretKey"),Q$(M,X.cipherText,"cipherText");let D=U.bytesLen-96,R=D+32,N=J(z.subarray(D/2,R));if(!I9(N,z.subarray(R,R+32)))throw Error("invalid secretKey: hash check failed");let[w,j,B,S]=U.decode(z),_=q.decrypt(M,w),y=G.create().update(_).update(B).digest(),p=y.subarray(0,32),F=q.encrypt(j,_,y.subarray(32,64)),f=I9(M,F),m=Q.create({dkLen:32}).update(S).update(M).digest();return m$(_,F,!f?p:m),f?p:m}}}function DE($,q,J){return zq.create({dkLen:$}).update(q).update(new Uint8Array([J])).digest()}var pW={HASH256:U8,HASH512:B1,KDF:zq,XOF:F1,PRF:DE},np=uW({...pW,...hW[512]}),mQ=uW({...pW,...hW[768]}),_1=uW({...pW,...hW[1024]});/*! noble-post-quantum - MIT License (c) 2024 Paul Miller (paulmillr.com) */function KE($,q=!1){let{lengths:J,keygen:G}=$;if(q){let Y=$.Point.Fn;if(!Y)throw Error("No Point.Fn");G=(X=Rq(J.seed))=>{Q$(X,J.seed,"seed");let U=Y.isLE?KJ(X):DJ(X),W=Y.toBytes(Y.create(U));return{secretKey:W,publicKey:$.getPublicKey(W)}}}return{lengths:{secretKey:J.secretKey,publicKey:J.publicKey,seed:J.seed},keygen:G,getPublicKey:(Q)=>$.getPublicKey(Q)}}function lW($,q=!1){let J=KE($,q);if(!$.getSharedSecret)throw Error("wrong curve");return{lengths:{...J.lengths,msg:J.lengths.seed,cipherText:J.lengths.publicKey},keygen:J.keygen,getPublicKey:J.getPublicKey,encapsulate(G,Q=Rq($.lengths.seed)){let Y=this.keygen(Q).secretKey,X=this.decapsulate(G,Y),U=$.getPublicKey(Y);return m$(Y),{sharedSecret:X,cipherText:U}},decapsulate(G,Q){let Y=$.getSharedSecret(Q,G);return $.lengths.publicKeyHasPrefix?Y.subarray(1):Y}}}function yQ($,q){return W8(q,...$.map((J)=>{if(typeof J.lengths[q]!=="number")throw Error("wrong length: "+q);return J.lengths[q]}))}function rW($){return(q,J)=>$(q,{dkLen:J})}function HE($,q,...J){let G=yQ(J,"seed"),Q=yQ(J,"publicKey");if($===void 0)$=G.bytesLen;h$($);function Y(X){Q$(X,$);let U=G.decode(q(X,G.bytesLen)),W=J.map((z,D)=>z.keygen(U[D])),V=W.map((z)=>z.secretKey),M=W.map((z)=>z.publicKey);return{secretKey:V,publicKey:M}}return{info:{lengths:{seed:$,publicKey:Q.bytesLen,secretKey:$}},getPublicKey(X){return this.keygen(X).publicKey},keygen(X=Rq($)){let{publicKey:U,secretKey:W}=Y(X),V=Q.encode(U);return m$(U),m$(W),{secretKey:X,publicKey:V}},expandDecapsulationKey:Y,realSeedLen:$}}function L9($,q,J,G,...Q){let Y=HE($,J,...Q),X=yQ(Q,"cipherText"),U=yQ(Q,"publicKey"),W=yQ(Q,"msg");if(q===void 0)q=W.bytesLen;return h$(q),{lengths:{...Y.info.lengths,msg:q,msgRand:W.bytesLen,cipherText:X.bytesLen},getPublicKey:Y.getPublicKey,keygen:Y.keygen,encapsulate(V,M=Rq(W.bytesLen)){let z=U.decode(V),D=W.decode(M),R=Q.map((B,S)=>B.encapsulate(z[S],D[S])),N=R.map((B)=>B.sharedSecret),w=R.map((B)=>B.cipherText),j={sharedSecret:G(z,w,N),cipherText:X.encode(w)};return m$(N,w),j},decapsulate(V,M){let z=X.decode(V),{publicKey:D,secretKey:R}=Y.expandDecapsulationKey(M),N=Q.map((w,j)=>w.decapsulate(z[j],R[j]));return G(D,z,N)}}}function v1($,q,J,G,Q){return y0(G),y0(Q),L9(32,32,rW(G),(Y,X,U)=>Q(_$(U[0],U[1],X[1],Y[1],HJ($))),q,J)}var Yl=v1("QSF-KEM(ML-KEM-768,P-256)-XOF(SHAKE256)-KDF(SHA3-256)",mQ,lW(bW,!0),zq,U8),Xl=v1("QSF-KEM(ML-KEM-1024,P-384)-XOF(SHAKE256)-KDF(SHA3-256)",_1,lW(z1,!0),zq,U8);function OE($,q,J,G,Q){return y0(G),y0(Q),L9(32,32,rW(G),(Y,X,U)=>{let W=_$(U[0],U[1],X[0],Y[0],X[1],Y[1],HJ($)),V=32,M=_$(HJ("hybrid_prk"),W),z=D1(Q,M),D=_$(KG(32,2),HJ("shared_secret"),HJ("")),R=K1(Q,z,D,32);return m$(z,D,M,W),R},q,J)}var b1=lW(M1),Ul=OE("KitchenSink-KEM(ML-KEM-768,X25519)-XOF(SHAKE256)-KDF(HKDF-SHA-256)",mQ,b1,zq,T9),NE=(()=>L9(32,32,rW(zq),($,q,J)=>U8(_$(J[0],J[1],q[1],$[1],HJ("\\.//^\\"))),mQ,b1))();function wE($,q,J,G){let Q=$.Point.Fn;if(!Q)throw Error("no Point.Fn");function Y(X){let U;for(let M=0,z=q;;M=z,z+=q){if(z>X.length)throw Error("rejection sampling failed");if(U=Q.fromBytes(X.subarray(M,z),!0),Q.isValidNot0(U))break}let W=Q.toBytes(Q.create(U)),V=$.getPublicKey(W,!1);return{secretKey:W,publicKey:V}}return{lengths:{secretKey:q,publicKey:J,seed:G,msg:G,cipherText:J},keygen(X=Rq(G)){return Q$(X,G,"seed"),Y(X)},getPublicKey(X){return $.getPublicKey(X,!1)},encapsulate(X,U=Rq(G)){Q$(U,G,"rand");let{secretKey:W}=Y(U),V=this.decapsulate(X,W),M=$.getPublicKey(W,!1);return m$(W),{sharedSecret:V,cipherText:M}},decapsulate(X,U){return $.getSharedSecret(U,X).subarray(1)}}}function jE($,q,J,G){let{secretKey:Q,publicKeyUncompressed:Y}=J.lengths;if(!Q||!Y)throw Error("wrong curve");let X=wE(J,Q,Y,G),U=64,W=U+G;return L9(32,32,(V)=>{Q$(V,32);let M=zq(V,{dkLen:W}),z=M.subarray(0,U),D=M.subarray(U,W);return _$(z,D)},(V,M,z)=>U8(_$(z[0],z[1],M[1],V[1],HJ($))),q,X)}var AE=(()=>jE("MLKEM768-P256",mQ,bW,128))();var P9=NE,k1=AE;/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */var Z$=($,q,J)=>r$($,q,J),dW=L$,jG=eY,a$=(...$)=>cU(...$),AG=($)=>RQ($),ZG=rU,BG=($)=>Eq($),g9=BigInt(0),iW=BigInt(1);function yq($,q=""){if(typeof $!=="boolean"){let J=q&&`"${q}" `;throw TypeError(J+"expected boolean, got type="+typeof $)}return $}function _9($){if(typeof $==="bigint"){if(!F9($))throw RangeError("positive bigint expected, got "+$)}else dW($);return $}function Dq($,q=""){if(typeof $!=="number"){let J=q&&`"${q}" `;throw TypeError(J+"expected number, got type="+typeof $)}if(!Number.isSafeInteger($)){let J=q&&`"${q}" `;throw RangeError(J+"expected safe integer, got "+$)}}function fQ($){let q=_9($).toString(16);return q.length&1?"0"+q:q}function m1($){if(typeof $!=="string")throw TypeError("hex string expected, got "+typeof $);return $===""?g9:BigInt("0x"+$)}function z8($){return m1(eY($))}function e0($){return m1(eY(AJ(r$($)).reverse()))}function v9($,q){if(L$(q),q===0)throw RangeError("zero length");$=_9($);let J=$.toString(16);if(J.length>q*2)throw RangeError("number too large");return RQ(J.padStart(q*2,"0"))}function xQ($,q){return v9($,q).reverse()}function y1($,q){if($=Z$($),q=Z$(q),$.length!==q.length)return!1;let J=0;for(let G=0;G<$.length;G++)J|=$[G]^q[G];return J===0}function AJ($){return Uint8Array.from(Z$($))}function b9($){if(typeof $!=="string")throw TypeError("ascii string expected, got "+typeof $);return Uint8Array.from($,(q,J)=>{let G=q.charCodeAt(0);if(q.length!==1||G>127)throw RangeError(`string contains non-ASCII character "${$[J]}" with code ${G} at position ${J}`);return G})}var F9=($)=>typeof $==="bigint"&&g9<=$;function ZE($,q,J){return F9($)&&F9(q)&&F9(J)&&q<=$&&$<J}function fq($,q,J,G){if(!ZE(q,J,G))throw RangeError("expected valid "+$+": "+J+" <= n < "+G+", got "+q)}function TG($){if($<g9)throw Error("expected non-negative bigint, got "+$);let q;for(q=0;$>g9;$>>=iW,q+=1);return q}var hQ=($)=>(iW<<BigInt($))-iW;function f1($,q,J){if(L$($,"hashLen"),L$(q,"qByteLen"),typeof J!=="function")throw TypeError("hmacFn must be a function");let G=(j)=>new Uint8Array(j),Q=Uint8Array.of(),Y=Uint8Array.of(0),X=Uint8Array.of(1),U=1000,W=G($),V=G($),M=0,z=()=>{W.fill(1),V.fill(0),M=0},D=(...j)=>J(V,a$(W,...j)),R=(j=Q)=>{if(V=D(Y,j),W=D(),j.length===0)return;V=D(X,j),W=D()},N=()=>{if(M++>=U)throw Error("drbg: tried max amount of iterations");let j=0,B=[];while(j<q){W=D();let S=W.slice();B.push(S),j+=W.length}return a$(...B)};return(j,B)=>{z(),R(j);let S=void 0;while((S=B(N()))===void 0)R();return z(),S}}function x0($,q={},J={}){if(Object.prototype.toString.call($)!=="[object Object]")throw TypeError("expected valid options object");function G(Y,X,U){if(!U&&X!=="function"&&!Object.hasOwn($,Y))throw TypeError(`param "${Y}" is invalid: expected own property`);let W=$[Y];if(U&&W===void 0)return;let V=typeof W;if(V!==X||W===null)throw TypeError(`param "${Y}" is invalid: expected ${X}, got ${V}`)}let Q=(Y,X)=>Object.entries(Y).forEach(([U,W])=>G(U,W,X));Q(q,!1),Q(J,!0)}var cW=()=>{throw Error("not implemented")};/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */var s$=BigInt(0),C$=BigInt(1),R8=BigInt(2),p1=BigInt(3),l1=BigInt(4),r1=BigInt(5),BE=BigInt(7),i1=BigInt(8),TE=BigInt(9),d1=BigInt(16);function B$($,q){if(q<=s$)throw Error("mod: expected positive modulus, got "+q);let J=$%q;return J>=s$?J:q+J}function h0($,q,J){if(q<s$)throw Error("pow2: expected non-negative exponent, got "+q);let G=$;while(q-- >s$)G*=G,G%=J;return G}function x1($,q){if($===s$)throw Error("invert: expected non-zero number");if(q<=s$)throw Error("invert: expected positive modulus, got "+q);let J=B$($,q),G=q,Q=s$,Y=C$,X=C$,U=s$;while(J!==s$){let V=G/J,M=G-J*V,z=Q-X*V,D=Y-U*V;G=J,J=M,Q=X,Y=U,X=z,U=D}if(G!==C$)throw Error("invert: does not exist");return B$(Q,q)}function nW($,q,J){let G=$;if(!G.eql(G.sqr(q),J))throw Error("Cannot find square root")}function c1($,q){let J=$,G=(J.ORDER+C$)/l1,Q=J.pow(q,G);return nW(J,Q,q),Q}function SE($,q){let J=$,G=(J.ORDER-r1)/i1,Q=J.mul(q,R8),Y=J.pow(Q,G),X=J.mul(q,Y),U=J.mul(J.mul(X,R8),Y),W=J.mul(X,J.sub(U,J.ONE));return nW(J,W,q),W}function IE($){let q=k9($),J=n1($),G=J(q,q.neg(q.ONE)),Q=J(q,G),Y=J(q,q.neg(G)),X=($+BE)/d1;return(U,W)=>{let V=U,M=V.pow(W,X),z=V.mul(M,G),D=V.mul(M,Q),R=V.mul(M,Y),N=V.eql(V.sqr(z),W),w=V.eql(V.sqr(D),W);M=V.cmov(M,z,N),z=V.cmov(R,D,w);let j=V.eql(V.sqr(z),W),B=V.cmov(M,z,j);return nW(V,B,W),B}}function n1($){if($<p1)throw Error("sqrt is not defined for small field");let q=$-C$,J=0;while(q%R8===s$)q/=R8,J++;let G=R8,Q=k9($);while(h1(Q,G)===1)if(G++>1000)throw Error("Cannot find square root: probably non-prime P");if(J===1)return c1;let Y=Q.pow(G,q),X=(q+C$)/R8;return function(W,V){let M=W;if(M.is0(V))return V;if(h1(M,V)!==1)throw Error("Cannot find square root");let z=J,D=M.mul(M.ONE,Y),R=M.pow(V,q),N=M.pow(V,X);while(!M.eql(R,M.ONE)){if(M.is0(R))return M.ZERO;let w=1,j=M.sqr(R);while(!M.eql(j,M.ONE))if(w++,j=M.sqr(j),w===z)throw Error("Cannot find square root");let B=C$<<BigInt(z-w-1),S=M.pow(D,B);z=w,D=M.sqr(S),R=M.mul(R,D),N=M.mul(N,S)}return N}}function CE($){if($%l1===p1)return c1;if($%i1===r1)return SE;if($%d1===TE)return IE($);return n1($)}var xq=($,q)=>(B$($,q)&C$)===C$,EE=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function oW($){let q={ORDER:"bigint",BYTES:"number",BITS:"number"},J=EE.reduce((G,Q)=>{return G[Q]="function",G},q);if(x0($,J),Dq($.BYTES,"BYTES"),Dq($.BITS,"BITS"),$.BYTES<1||$.BITS<1)throw Error("invalid field: expected BYTES/BITS > 0");if($.ORDER<=C$)throw Error("invalid field: expected ORDER > 1, got "+$.ORDER);return $}function LE($,q,J){let G=$;if(J<s$)throw Error("invalid exponent, negatives unsupported");if(J===s$)return G.ONE;if(J===C$)return q;let Q=G.ONE,Y=q;while(J>s$){if(J&C$)Q=G.mul(Q,Y);Y=G.sqr(Y),J>>=C$}return Q}function uQ($,q,J=!1){let G=$,Q=Array(q.length).fill(J?G.ZERO:void 0),Y=q.reduce((U,W,V)=>{if(G.is0(W))return U;return Q[V]=U,G.mul(U,W)},G.ONE),X=G.inv(Y);return q.reduceRight((U,W,V)=>{if(G.is0(W))return U;return Q[V]=G.mul(U,Q[V]),G.mul(U,W)},X),Q}function h1($,q){let J=$,G=(J.ORDER-C$)/R8,Q=J.pow(q,G),Y=J.eql(Q,J.ONE),X=J.eql(Q,J.ZERO),U=J.eql(Q,J.neg(J.ONE));if(!Y&&!X&&!U)throw Error("invalid Legendre symbol result");return Y?1:X?0:-1}function PE($,q){if(q!==void 0)dW(q);if($<=s$)throw Error("invalid n length: expected positive n, got "+$);if(q!==void 0&&q<1)throw Error("invalid n length: expected positive bit length, got "+q);let J=TG($);if(q!==void 0&&q<J)throw Error(`invalid n length: expected bit length (${J}) >= n.length (${q})`);let G=q!==void 0?q:J,Q=Math.ceil(G/8);return{nBitLength:G,nByteLength:Q}}var u1=new WeakMap;class aW{ORDER;BITS;BYTES;isLE;ZERO=s$;ONE=C$;_lengths;_mod;constructor($,q={}){if($<=C$)throw Error("invalid field: expected ORDER > 1, got "+$);let J=void 0;if(this.isLE=!1,q!=null&&typeof q==="object"){if(typeof q.BITS==="number")J=q.BITS;if(typeof q.sqrt==="function")Object.defineProperty(this,"sqrt",{value:q.sqrt,enumerable:!0});if(typeof q.isLE==="boolean")this.isLE=q.isLE;if(q.allowedLengths)this._lengths=Object.freeze(q.allowedLengths.slice());if(typeof q.modFromBytes==="boolean")this._mod=q.modFromBytes}let{nBitLength:G,nByteLength:Q}=PE($,J);if(Q>2048)throw Error("invalid field: expected ORDER of <= 2048 bytes");this.ORDER=$,this.BITS=G,this.BYTES=Q,Object.freeze(this)}create($){return B$($,this.ORDER)}isValid($){if(typeof $!=="bigint")throw TypeError("invalid field element: expected bigint, got "+typeof $);return s$<=$&&$<this.ORDER}is0($){return $===s$}isValidNot0($){return!this.is0($)&&this.isValid($)}isOdd($){return($&C$)===C$}neg($){return B$(-$,this.ORDER)}eql($,q){return $===q}sqr($){return B$($*$,this.ORDER)}add($,q){return B$($+q,this.ORDER)}sub($,q){return B$($-q,this.ORDER)}mul($,q){return B$($*q,this.ORDER)}pow($,q){return LE(this,$,q)}div($,q){return B$($*x1(q,this.ORDER),this.ORDER)}sqrN($){return $*$}addN($,q){return $+q}subN($,q){return $-q}mulN($,q){return $*q}inv($){return x1($,this.ORDER)}sqrt($){let q=u1.get(this);if(!q)u1.set(this,q=CE(this.ORDER));return q(this,$)}toBytes($){return this.isLE?xQ($,this.BYTES):v9($,this.BYTES)}fromBytes($,q=!1){Z$($);let{_lengths:J,BYTES:G,isLE:Q,ORDER:Y,_mod:X}=this;if(J){if($.length<1||!J.includes($.length)||$.length>G)throw Error("Field.fromBytes: expected "+J+" bytes, got "+$.length);let W=new Uint8Array(G);W.set($,Q?0:W.length-$.length),$=W}if($.length!==G)throw Error("Field.fromBytes: expected "+G+" bytes, got "+$.length);let U=Q?e0($):z8($);if(X)U=B$(U,Y);if(!q){if(!this.isValid(U))throw Error("invalid field element: outside of range 0..ORDER")}return U}invertBatch($){return uQ(this,$)}cmov($,q,J){return yq(J,"condition"),J?q:$}}Object.freeze(aW.prototype);function k9($,q={}){return new aW($,q)}function o1($){if(typeof $!=="bigint")throw Error("field order must be bigint");if($<=C$)throw Error("field order must be greater than 1");let q=TG($-C$);return Math.ceil(q/8)}function sW($){let q=o1($);return q+Math.ceil(q/2)}function a1($,q,J=!1){Z$($);let G=$.length,Q=o1(q),Y=Math.max(sW(q),16);if(G<Y||G>1024)throw Error("expected "+Y+"-1024 bytes of input, got "+G);let X=J?e0($):z8($),U=B$(X,q-C$)+C$;return J?xQ(U,Q):v9(U,Q)}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */var SG=BigInt(0),D8=BigInt(1);function pQ($,q){let J=q.negate();return $?J:q}function K8($,q){let J=uQ($.Fp,q.map((G)=>G.Z));return q.map((G,Q)=>$.fromAffine(G.toAffine(J[Q])))}function $H($,q){if(!Number.isSafeInteger($)||$<=0||$>q)throw Error("invalid window size, expected [1.."+q+"], got W="+$)}function tW($,q){$H($,q);let J=Math.ceil(q/$)+1,G=2**($-1),Q=2**$,Y=hQ($),X=BigInt($);return{windows:J,windowSize:G,mask:Y,maxNumber:Q,shiftBy:X}}function s1($,q,J){let{windowSize:G,mask:Q,maxNumber:Y,shiftBy:X}=J,U=Number($&Q),W=$>>X;if(U>G)U-=Y,W+=D8;let V=q*G,M=V+Math.abs(U)-1,z=U===0,D=U<0,R=q%2!==0;return{nextN:W,offset:M,isZero:z,isNeg:D,isNegF:R,offsetF:V}}var eW=new WeakMap,qH=new WeakMap;function $7($){return qH.get($)||1}function t1($){if($!==SG)throw Error("invalid wNAF")}class lQ{BASE;ZERO;Fn;bits;constructor($,q){this.BASE=$.BASE,this.ZERO=$.ZERO,this.Fn=$.Fn,this.bits=q}_unsafeLadder($,q,J=this.ZERO){let G=$;while(q>SG){if(q&D8)J=J.add(G);G=G.double(),q>>=D8}return J}precomputeWindow($,q){let{windows:J,windowSize:G}=tW(q,this.bits),Q=[],Y=$,X=Y;for(let U=0;U<J;U++){X=Y,Q.push(X);for(let W=1;W<G;W++)X=X.add(Y),Q.push(X);Y=X.double()}return Q}wNAF($,q,J){if(!this.Fn.isValid(J))throw Error("invalid scalar");let G=this.ZERO,Q=this.BASE,Y=tW($,this.bits);for(let X=0;X<Y.windows;X++){let{nextN:U,offset:W,isZero:V,isNeg:M,isNegF:z,offsetF:D}=s1(J,X,Y);if(J=U,V)Q=Q.add(pQ(z,q[D]));else G=G.add(pQ(M,q[W]))}return t1(J),{p:G,f:Q}}wNAFUnsafe($,q,J,G=this.ZERO){let Q=tW($,this.bits);for(let Y=0;Y<Q.windows;Y++){if(J===SG)break;let{nextN:X,offset:U,isZero:W,isNeg:V}=s1(J,Y,Q);if(J=X,W)continue;else{let M=q[U];G=G.add(V?M.negate():M)}}return t1(J),G}getPrecomputes($,q,J){let G=eW.get(q);if(!G){if(G=this.precomputeWindow(q,$),$!==1){if(typeof J==="function")G=J(G);eW.set(q,G)}}return G}cached($,q,J){let G=$7($);return this.wNAF(G,this.getPrecomputes(G,$,J),q)}unsafe($,q,J,G){let Q=$7($);if(Q===1)return this._unsafeLadder($,q,G);return this.wNAFUnsafe(Q,this.getPrecomputes(Q,$,J),q,G)}createCache($,q){$H(q,this.bits),qH.set($,q),eW.delete($)}hasCache($){return $7($)!==1}}function JH($,q,J,G){let Q=q,Y=$.ZERO,X=$.ZERO;while(J>SG||G>SG){if(J&D8)Y=Y.add(Q);if(G&D8)X=X.add(Q);Q=Q.double(),J>>=D8,G>>=D8}return{p1:Y,p2:X}}function e1($,q,J){if(q){if(q.ORDER!==$)throw Error("Field.ORDER must match order: Fp == p, Fn == n");return oW(q),q}else return k9($,{isLE:J})}function m9($,q,J={},G){if(G===void 0)G=$==="edwards";if(!q||typeof q!=="object")throw Error(`expected valid ${$} CURVE object`);for(let W of["p","n","h"]){let V=q[W];if(!(typeof V==="bigint"&&V>SG))throw Error(`CURVE.${W} must be positive bigint`)}let Q=e1(q.p,J.Fp,G),Y=e1(q.n,J.Fn,G),U=["Gx","Gy","a",$==="weierstrass"?"b":"d"];for(let W of U)if(!Q.isValid(q[W]))throw Error(`CURVE.${W} must be valid field element of CURVE.Fp`);return q=Object.freeze(Object.assign({},q)),{CURVE:q,Fp:Q,Fn:Y}}function rQ($,q){return function(G){let Q=$(G);return{secretKey:Q,publicKey:q(Q)}}}function iQ($,q){if(Dq($),Dq(q),q<0||q>4)throw Error("invalid I2OSP length: "+q);if($<0||$>2**(8*q)-1)throw Error("invalid I2OSP input: "+$);let J=Array.from({length:q}).fill(0);for(let G=q-1;G>=0;G--)J[G]=$&255,$>>>=8;return new Uint8Array(J)}function FE($,q){let J=new Uint8Array($.length);for(let G=0;G<$.length;G++)J[G]=$[G]^q[G];return J}function gE($){if(!ZG($)&&typeof $!=="string")throw Error("DST must be Uint8Array or ascii string");let q=typeof $==="string"?b9($):$;if(q.length===0)throw Error("DST must be non-empty");return q}function q7($,q,J,G){if(Z$($),Dq(J),q=gE(q),q.length>255)q=G(a$(b9("H2C-OVERSIZE-DST-"),q));let{outputLen:Q,blockLen:Y}=G,X=Math.ceil(J/Q);if(J>65535||X>255)throw Error("expand_message_xmd: invalid lenInBytes");let U=a$(q,iQ(q.length,1)),W=new Uint8Array(Y),V=iQ(J,2),M=Array(X),z=G(a$(W,$,V,iQ(0,1),U));M[0]=G(a$(z,iQ(1,1),U));for(let R=1;R<X;R++){let N=[FE(z,M[R-1]),iQ(R+1,1),U];M[R]=G(a$(...N))}return a$(...M).slice(0,J)}var GH="HashToScalar-";/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */var QH=($,q)=>($+($>=0?q:-q)/XH)/q;function _E($,q,J){fq("scalar",$,Kq,J);let[[G,Q],[Y,X]]=q,U=QH(X*$,J),W=QH(-Q*$,J),V=$-U*G-W*Y,M=-U*Q-W*X,z=V<Kq,D=M<Kq;if(z)V=-V;if(D)M=-M;let R=hQ(Math.ceil(TG(J)/2))+ZJ;if(V<Kq||V>=R||M<Kq||M>=R)throw Error("splitScalar (endomorphism): failed for k");return{k1neg:z,k1:V,k2neg:D,k2:M}}function G7($){if(!["compact","recovered","der"].includes($))throw Error('Signature format must be "compact", "recovered", or "der"');return $}function J7($,q){x0($);let J={};for(let G of Object.keys(q))J[G]=$[G]===void 0?q[G]:$[G];if(yq(J.lowS,"lowS"),yq(J.prehash,"prehash"),J.format!==void 0)G7(J.format);return J}class YH extends Error{constructor($=""){super($)}}var $q={Err:YH,_tlv:{encode:($,q)=>{let{Err:J}=$q;if(Dq($,"tag"),$<0||$>255)throw new J("tlv.encode: wrong tag");if(typeof q!=="string")throw TypeError('"data" expected string, got type='+typeof q);if(q.length&1)throw new J("tlv.encode: unpadded data");let G=q.length/2,Q=fQ(G);if(Q.length/2&128)throw new J("tlv.encode: long form length too big");let Y=G>127?fQ(Q.length/2|128):"";return fQ($)+Y+Q+q},decode($,q){let{Err:J}=$q;q=Z$(q,void 0,"DER data");let G=0;if($<0||$>255)throw new J("tlv.encode: wrong tag");if(q.length<2||q[G++]!==$)throw new J("tlv.decode: wrong tlv");let Q=q[G++],Y=!!(Q&128),X=0;if(!Y)X=Q;else{let W=Q&127;if(!W)throw new J("tlv.decode(long): indefinite length not supported");if(W>4)throw new J("tlv.decode(long): byte length is too big");let V=q.subarray(G,G+W);if(V.length!==W)throw new J("tlv.decode: length bytes not complete");if(V[0]===0)throw new J("tlv.decode(long): zero leftmost byte");for(let M of V)X=X<<8|M;if(G+=W,X<128)throw new J("tlv.decode(long): not minimal encoding")}let U=q.subarray(G,G+X);if(U.length!==X)throw new J("tlv.decode: wrong value length");return{v:U,l:q.subarray(G+X)}}},_int:{encode($){let{Err:q}=$q;if(_9($),$<Kq)throw new q("integer: negative integers are not allowed");let J=fQ($);if(Number.parseInt(J[0],16)&8)J="00"+J;if(J.length&1)throw new q("unexpected DER parsing assertion: unpadded hex");return J},decode($){let{Err:q}=$q;if($.length<1)throw new q("invalid signature integer: empty");if($[0]&128)throw new q("invalid signature integer: negative");if($.length>1&&$[0]===0&&!($[1]&128))throw new q("invalid signature integer: unnecessary leading zero");return z8($)}},toSig($){let{Err:q,_int:J,_tlv:G}=$q,Q=Z$($,void 0,"signature"),{v:Y,l:X}=G.decode(48,Q);if(X.length)throw new q("invalid signature: left bytes after parsing");let{v:U,l:W}=G.decode(2,Y),{v:V,l:M}=G.decode(2,W);if(M.length)throw new q("invalid signature: left bytes after parsing");return{r:J.decode(U),s:J.decode(V)}},hexFromSig($){let{_tlv:q,_int:J}=$q,G=q.encode(2,J.encode($.r)),Q=q.encode(2,J.encode($.s)),Y=G+Q;return q.encode(48,Y)}};Object.freeze($q._tlv);Object.freeze($q._int);Object.freeze($q);var Kq=BigInt(0),ZJ=BigInt(1),XH=BigInt(2),y9=BigInt(3),vE=BigInt(4);function UH($,q={}){let J=m9("weierstrass",$,q),G=J.Fp,Q=J.Fn,Y=J.CURVE,{h:X,n:U}=Y;x0(q,{},{allowInfinityPoint:"boolean",clearCofactor:"function",isTorsionFree:"function",fromBytes:"function",toBytes:"function",endo:"object"});let{endo:W,allowInfinityPoint:V}=q;if(W){if(!G.is0(Y.a)||typeof W.beta!=="bigint"||!Array.isArray(W.basises))throw Error('invalid endo: expected "beta": bigint and "basises": array')}let M=VH(G,Q);function z(){if(!G.isOdd)throw Error("compression is not supported: Field does not have .isOdd()")}function D(v,C,I){if(V&&C.is0())return Uint8Array.of(0);let{x:A,y:T}=C.toAffine(),L=G.toBytes(A);if(yq(I,"isCompressed"),I){z();let g=!G.isOdd(T);return a$(WH(g),L)}else return a$(Uint8Array.of(4),L,G.toBytes(T))}function R(v){Z$(v,void 0,"Point");let{publicKey:C,publicKeyUncompressed:I}=M,A=v.length,T=v[0],L=v.subarray(1);if(V&&A===1&&T===0)return{x:G.ZERO,y:G.ZERO};if(A===C&&(T===2||T===3)){let g=G.fromBytes(L);if(!G.isValid(g))throw Error("bad point: is not on curve, wrong x");let P=j(g),b;try{b=G.sqrt(P)}catch(r){let Z=r instanceof Error?": "+r.message:"";throw Error("bad point: is not on curve, sqrt error"+Z)}z();let O=G.isOdd(b);if((T&1)===1!==O)b=G.neg(b);return{x:g,y:b}}else if(A===I&&T===4){let g=G.BYTES,P=G.fromBytes(L.subarray(0,g)),b=G.fromBytes(L.subarray(g,g*2));if(!B(P,b))throw Error("bad point: is not on curve");return{x:P,y:b}}else throw Error(`bad point: got length ${A}, expected compressed=${C} or uncompressed=${I}`)}let N=q.toBytes===void 0?D:q.toBytes,w=q.fromBytes===void 0?R:q.fromBytes;function j(v){let C=G.sqr(v),I=G.mul(C,v);return G.add(G.add(I,G.mul(v,Y.a)),Y.b)}function B(v,C){let I=G.sqr(C),A=j(v);return G.eql(I,A)}if(!B(Y.Gx,Y.Gy))throw Error("bad curve params: generator point");let S=G.mul(G.pow(Y.a,y9),vE),_=G.mul(G.sqr(Y.b),BigInt(27));if(G.is0(G.add(S,_)))throw Error("bad curve params: a or b");function y(v,C,I=!1){if(!G.isValid(C)||I&&G.is0(C))throw Error(`bad point coordinate ${v}`);return C}function p(v){if(!(v instanceof m))throw Error("Weierstrass Point expected")}function F(v){if(!W||!W.basises)throw Error("no endo");return _E(v,W.basises,Q.ORDER)}function f(v,C,I,A,T){return I=new m(G.mul(I.X,v),I.Y,I.Z),C=pQ(A,C),I=pQ(T,I),C.add(I)}class m{static BASE=new m(Y.Gx,Y.Gy,G.ONE);static ZERO=new m(G.ZERO,G.ONE,G.ZERO);static Fp=G;static Fn=Q;X;Y;Z;constructor(v,C,I){this.X=y("x",v),this.Y=y("y",C,!0),this.Z=y("z",I),Object.freeze(this)}static CURVE(){return Y}static fromAffine(v){let{x:C,y:I}=v||{};if(!v||!G.isValid(C)||!G.isValid(I))throw Error("invalid affine point");if(v instanceof m)throw Error("projective point not allowed");if(G.is0(C)&&G.is0(I))return m.ZERO;return new m(C,I,G.ONE)}static fromBytes(v){let C=m.fromAffine(w(Z$(v,void 0,"point")));return C.assertValidity(),C}static fromHex(v){return m.fromBytes(AG(v))}get x(){return this.toAffine().x}get y(){return this.toAffine().y}precompute(v=8,C=!0){if(l.createCache(this,v),!C)this.multiply(y9);return this}assertValidity(){let v=this;if(v.is0()){if(q.allowInfinityPoint&&G.is0(v.X)&&G.eql(v.Y,G.ONE)&&G.is0(v.Z))return;throw Error("bad point: ZERO")}let{x:C,y:I}=v.toAffine();if(!G.isValid(C)||!G.isValid(I))throw Error("bad point: x or y not field elements");if(!B(C,I))throw Error("bad point: equation left != right");if(!v.isTorsionFree())throw Error("bad point: not in prime-order subgroup")}hasEvenY(){let{y:v}=this.toAffine();if(!G.isOdd)throw Error("Field doesn't support isOdd");return!G.isOdd(v)}equals(v){p(v);let{X:C,Y:I,Z:A}=this,{X:T,Y:L,Z:g}=v,P=G.eql(G.mul(C,g),G.mul(T,A)),b=G.eql(G.mul(I,g),G.mul(L,A));return P&&b}negate(){return new m(this.X,G.neg(this.Y),this.Z)}double(){let{a:v,b:C}=Y,I=G.mul(C,y9),{X:A,Y:T,Z:L}=this,g=G.ZERO,P=G.ZERO,b=G.ZERO,O=G.mul(A,A),x=G.mul(T,T),r=G.mul(L,L),Z=G.mul(A,T);return Z=G.add(Z,Z),b=G.mul(A,L),b=G.add(b,b),g=G.mul(v,b),P=G.mul(I,r),P=G.add(g,P),g=G.sub(x,P),P=G.add(x,P),P=G.mul(g,P),g=G.mul(Z,g),b=G.mul(I,b),r=G.mul(v,r),Z=G.sub(O,r),Z=G.mul(v,Z),Z=G.add(Z,b),b=G.add(O,O),O=G.add(b,O),O=G.add(O,r),O=G.mul(O,Z),P=G.add(P,O),r=G.mul(T,L),r=G.add(r,r),O=G.mul(r,Z),g=G.sub(g,O),b=G.mul(r,x),b=G.add(b,b),b=G.add(b,b),new m(g,P,b)}add(v){p(v);let{X:C,Y:I,Z:A}=this,{X:T,Y:L,Z:g}=v,P=G.ZERO,b=G.ZERO,O=G.ZERO,x=Y.a,r=G.mul(Y.b,y9),Z=G.mul(C,T),o=G.mul(I,L),q$=G.mul(A,g),Y$=G.add(C,I),G$=G.add(T,L);Y$=G.mul(Y$,G$),G$=G.add(Z,o),Y$=G.sub(Y$,G$),G$=G.add(C,A);let t=G.add(T,g);return G$=G.mul(G$,t),t=G.add(Z,q$),G$=G.sub(G$,t),t=G.add(I,A),P=G.add(L,g),t=G.mul(t,P),P=G.add(o,q$),t=G.sub(t,P),O=G.mul(x,G$),P=G.mul(r,q$),O=G.add(P,O),P=G.sub(o,O),O=G.add(o,O),b=G.mul(P,O),o=G.add(Z,Z),o=G.add(o,Z),q$=G.mul(x,q$),G$=G.mul(r,G$),o=G.add(o,q$),q$=G.sub(Z,q$),q$=G.mul(x,q$),G$=G.add(G$,q$),Z=G.mul(o,G$),b=G.add(b,Z),Z=G.mul(t,G$),P=G.mul(Y$,P),P=G.sub(P,Z),Z=G.mul(Y$,o),O=G.mul(t,O),O=G.add(O,Z),new m(P,b,O)}subtract(v){return p(v),this.add(v.negate())}is0(){return this.equals(m.ZERO)}multiply(v){let{endo:C}=q;if(!Q.isValidNot0(v))throw RangeError("invalid scalar: out of range");let I,A,T=(L)=>l.cached(this,L,(g)=>K8(m,g));if(C){let{k1neg:L,k1:g,k2neg:P,k2:b}=F(v),{p:O,f:x}=T(g),{p:r,f:Z}=T(b);A=x.add(Z),I=f(C.beta,O,r,L,P)}else{let{p:L,f:g}=T(v);I=L,A=g}return K8(m,[I,A])[0]}multiplyUnsafe(v){let{endo:C}=q,I=this,A=v;if(!Q.isValid(A))throw RangeError("invalid scalar: out of range");if(A===Kq||I.is0())return m.ZERO;if(A===ZJ)return I;if(l.hasCache(this))return this.multiply(A);if(C){let{k1neg:T,k1:L,k2neg:g,k2:P}=F(A),{p1:b,p2:O}=JH(m,I,L,P);return f(C.beta,b,O,T,g)}else return l.unsafe(I,A)}toAffine(v){let C=this,I=v,{X:A,Y:T,Z:L}=C;if(G.eql(L,G.ONE))return{x:A,y:T};let g=C.is0();if(I==null)I=g?G.ONE:G.inv(L);let P=G.mul(A,I),b=G.mul(T,I),O=G.mul(L,I);if(g)return{x:G.ZERO,y:G.ZERO};if(!G.eql(O,G.ONE))throw Error("invZ was invalid");return{x:P,y:b}}isTorsionFree(){let{isTorsionFree:v}=q;if(X===ZJ)return!0;if(v)return v(m,this);return l.unsafe(this,U).is0()}clearCofactor(){let{clearCofactor:v}=q;if(X===ZJ)return this;if(v)return v(m,this);return this.multiplyUnsafe(X)}isSmallOrder(){if(X===ZJ)return this.is0();return this.clearCofactor().is0()}toBytes(v=!0){return yq(v,"isCompressed"),this.assertValidity(),N(m,this,v)}toHex(v=!0){return jG(this.toBytes(v))}toString(){return`<Point ${this.is0()?"ZERO":this.toHex()}>`}}let k=Q.BITS,l=new lQ(m,q.endo?Math.ceil(k/2):k);if(k>=8)m.BASE.precompute(8);return Object.freeze(m.prototype),Object.freeze(m),m}function WH($){return Uint8Array.of($?2:3)}function VH($,q){return{secretKey:q.BYTES,publicKey:1+$.BYTES,publicKeyUncompressed:1+2*$.BYTES,publicKeyHasPrefix:!0,signature:2*q.BYTES}}function bE($,q={}){let{Fn:J}=$,G=q.randomBytes===void 0?BG:q.randomBytes,Q=Object.assign(VH($.Fp,J),{seed:Math.max(sW(J.ORDER),16)});function Y(R){try{let N=J.fromBytes(R);return J.isValidNot0(N)}catch(N){return!1}}function X(R,N){let{publicKey:w,publicKeyUncompressed:j}=Q;try{let B=R.length;if(N===!0&&B!==w)return!1;if(N===!1&&B!==j)return!1;return!!$.fromBytes(R)}catch(B){return!1}}function U(R){return R=R===void 0?G(Q.seed):R,a1(Z$(R,Q.seed,"seed"),J.ORDER)}function W(R,N=!0){return $.BASE.multiply(J.fromBytes(R)).toBytes(N)}function V(R){let{secretKey:N,publicKey:w,publicKeyUncompressed:j}=Q,B=J._lengths;if(!ZG(R))return;let S=Z$(R,void 0,"key").length,_=S===w||S===j,y=S===N||!!B?.includes(S);if(_&&y)return;return _}function M(R,N,w=!0){if(V(R)===!0)throw Error("first arg must be private key");if(V(N)===!1)throw Error("second arg must be public key");let j=J.fromBytes(R);return $.fromBytes(N).multiply(j).toBytes(w)}let z={isValidSecretKey:Y,isValidPublicKey:X,randomSecretKey:U},D=rQ(U,W);return Object.freeze(z),Object.freeze(Q),Object.freeze({getPublicKey:W,getSharedSecret:M,keygen:D,Point:$,utils:z,lengths:Q})}function MH($,q,J={}){let G=q;Cq(G),x0(J,{},{hmac:"function",lowS:"boolean",randomBytes:"function",bits2int:"function",bits2int_modN:"function"}),J=Object.assign({},J);let Q=J.randomBytes===void 0?BG:J.randomBytes,Y=J.hmac===void 0?(T,L)=>Uq(G,T,L):J.hmac,{Fp:X,Fn:U}=$,{ORDER:W,BITS:V}=U,{keygen:M,getPublicKey:z,getSharedSecret:D,utils:R,lengths:N}=bE($,J),w={prehash:!0,lowS:typeof J.lowS==="boolean"?J.lowS:!0,format:"compact",extraEntropy:!1},j=W*XH+ZJ<X.ORDER;function B(T){let L=W>>ZJ;return T>L}function S(T,L){if(!U.isValidNot0(L))throw Error(`invalid signature ${T}: out of range 1..Point.Fn.ORDER`);return L}function _(){if(j)throw Error('"recovered" sig type is not supported for cofactor >2 curves')}function y(T,L){G7(L);let g=N.signature,P=L==="compact"?g:L==="recovered"?g+1:void 0;return Z$(T,P)}class p{r;s;recovery;constructor(T,L,g){if(this.r=S("r",T),this.s=S("s",L),g!=null){if(_(),![0,1,2,3].includes(g))throw Error("invalid recovery id");this.recovery=g}Object.freeze(this)}static fromBytes(T,L=w.format){y(T,L);let g;if(L==="der"){let{r:x,s:r}=$q.toSig(Z$(T));return new p(x,r)}if(L==="recovered")g=T[0],L="compact",T=T.subarray(1);let P=N.signature/2,b=T.subarray(0,P),O=T.subarray(P,P*2);return new p(U.fromBytes(b),U.fromBytes(O),g)}static fromHex(T,L){return this.fromBytes(AG(T),L)}assertRecovery(){let{recovery:T}=this;if(T==null)throw Error("invalid recovery id: must be present");return T}addRecoveryBit(T){return new p(this.r,this.s,T)}recoverPublicKey(T){let{r:L,s:g}=this,P=this.assertRecovery(),b=P===2||P===3?L+W:L;if(!X.isValid(b))throw Error("invalid recovery id: sig.r+curve.n != R.x");let O=X.toBytes(b),x=$.fromBytes(a$(WH((P&1)===0),O)),r=U.inv(b),Z=f(Z$(T,void 0,"msgHash")),o=U.create(-Z*r),q$=U.create(g*r),Y$=$.BASE.multiplyUnsafe(o).add(x.multiplyUnsafe(q$));if(Y$.is0())throw Error("invalid recovery: point at infinify");return Y$.assertValidity(),Y$}hasHighS(){return B(this.s)}toBytes(T=w.format){if(G7(T),T==="der")return AG($q.hexFromSig(this));let{r:L,s:g}=this,P=U.toBytes(L),b=U.toBytes(g);if(T==="recovered")return _(),a$(Uint8Array.of(this.assertRecovery()),P,b);return a$(P,b)}toHex(T){return jG(this.toBytes(T))}}Object.freeze(p.prototype),Object.freeze(p);let F=J.bits2int===void 0?function(L){if(L.length>8192)throw Error("input is too large");let g=z8(L),P=L.length*8-V;return P>0?g>>BigInt(P):g}:J.bits2int,f=J.bits2int_modN===void 0?function(L){return U.create(F(L))}:J.bits2int_modN,m=hQ(V);function k(T){return fq("num < 2^"+V,T,Kq,m),U.toBytes(T)}function l(T,L){return Z$(T,void 0,"message"),L?Z$(G(T),void 0,"prehashed message"):T}function v(T,L,g){let{lowS:P,prehash:b,extraEntropy:O}=J7(g,w);T=l(T,b);let x=f(T),r=U.fromBytes(L);if(!U.isValidNot0(r))throw Error("invalid private key");let Z=[k(r),k(x)];if(O!=null&&O!==!1){let G$=O===!0?Q(N.secretKey):O;Z.push(Z$(G$,void 0,"extraEntropy"))}let o=a$(...Z),q$=x;function Y$(G$){let t=F(G$);if(!U.isValidNot0(t))return;let O$=U.inv(t),A$=$.BASE.multiply(t).toAffine(),S$=U.create(A$.x);if(S$===Kq)return;let y$=U.create(O$*U.create(q$+S$*r));if(y$===Kq)return;let z0=(A$.x===S$?0:2)|Number(A$.y&ZJ),qq=y$;if(P&&B(y$))qq=U.neg(y$),z0^=1;return new p(S$,qq,j?void 0:z0)}return{seed:o,k2sig:Y$}}function C(T,L,g={}){let{seed:P,k2sig:b}=v(T,L,g);return f1(G.outputLen,U.BYTES,Y)(P,b).toBytes(g.format)}function I(T,L,g,P={}){let{lowS:b,prehash:O,format:x}=J7(P,w);if(g=Z$(g,void 0,"publicKey"),L=l(L,O),!ZG(T)){let r=T instanceof p?", use sig.toBytes()":"";throw Error("verify expects Uint8Array signature"+r)}y(T,x);try{let r=p.fromBytes(T,x),Z=$.fromBytes(g);if(b&&r.hasHighS())return!1;let{r:o,s:q$}=r,Y$=f(L),G$=U.inv(q$),t=U.create(Y$*G$),O$=U.create(o*G$),A$=$.BASE.multiplyUnsafe(t).add(Z.multiplyUnsafe(O$));if(A$.is0())return!1;return U.create(A$.x)===o}catch(r){return!1}}function A(T,L,g={}){let{prehash:P}=J7(g,w);return L=l(L,P),p.fromBytes(T,"recovered").recoverPublicKey(L).toBytes()}return Object.freeze({keygen:M,getPublicKey:z,getSharedSecret:D,utils:R,lengths:N,Point:$,sign:C,verify:I,recoverPublicKey:A,Signature:p,hash:G})}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */var kE=(()=>({p:BigInt("0xffffffff00000001000000000000000000000000ffffffffffffffffffffffff"),n:BigInt("0xffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551"),h:BigInt(1),a:BigInt("0xffffffff00000001000000000000000000000000fffffffffffffffffffffffc"),b:BigInt("0x5ac635d8aa3a93e7b3ebbd55769886bc651d06b0cc53b0f63bce3c3e27d2604b"),Gx:BigInt("0x6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296"),Gy:BigInt("0x4fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5")}))();var mE=UH(kE),IG=MH(mE,P$);/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */var BJ=BigInt(0),S0=BigInt(1),Q7=BigInt(2),yE=BigInt(8);function fE($,q,J,G){let Q=$.sqr(J),Y=$.sqr(G),X=$.add($.mul(q.a,Q),Y),U=$.add($.ONE,$.mul(q.d,$.mul(Q,Y)));return $.eql(X,U)}function zH($,q={}){let J=q,G=m9("edwards",$,J,J.FpFnLE),{Fp:Q,Fn:Y}=G,X=G.CURVE,{h:U}=X;x0(J,{},{uvRatio:"function"});let W=Q7<<BigInt(Y.BYTES*8)-S0,V=(w)=>Q.create(w),M=J.uvRatio===void 0?(w,j)=>{try{return{isValid:!0,value:Q.sqrt(Q.div(w,j))}}catch(B){return{isValid:!1,value:BJ}}}:J.uvRatio;if(!fE(Q,X,X.Gx,X.Gy))throw Error("bad curve params: generator point");function z(w,j,B=!1){let S=B?S0:BJ;return fq("coordinate "+w,j,S,W),j}function D(w){if(!(w instanceof R))throw Error("EdwardsPoint expected")}class R{static BASE=new R(X.Gx,X.Gy,S0,V(X.Gx*X.Gy));static ZERO=new R(BJ,S0,S0,BJ);static Fp=Q;static Fn=Y;X;Y;Z;T;constructor(w,j,B,S){this.X=z("x",w),this.Y=z("y",j),this.Z=z("z",B,!0),this.T=z("t",S),Object.freeze(this)}static CURVE(){return X}static fromAffine(w){if(w instanceof R)throw Error("extended point not allowed");let{x:j,y:B}=w||{};return z("x",j),z("y",B),new R(j,B,S0,V(j*B))}static fromBytes(w,j=!1){let B=Q.BYTES,{a:S,d:_}=X;w=AJ(Z$(w,B,"point")),yq(j,"zip215");let y=AJ(w),p=w[B-1];y[B-1]=p&-129;let F=e0(y),f=j?W:Q.ORDER;fq("point.y",F,BJ,f);let m=V(F*F),k=V(m-S0),l=V(_*m-S),{isValid:v,value:C}=M(k,l);if(!v)throw Error("bad point: invalid y coordinate");let I=(C&S0)===S0,A=(p&128)!==0;if(!j&&C===BJ&&A)throw Error("bad point: x=0 and x_0=1");if(A!==I)C=V(-C);return R.fromAffine({x:C,y:F})}static fromHex(w,j=!1){return R.fromBytes(AG(w),j)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}precompute(w=8,j=!0){if(N.createCache(this,w),!j)this.multiply(Q7);return this}assertValidity(){let w=this,{a:j,d:B}=X;if(w.is0())throw Error("bad point: ZERO");let{X:S,Y:_,Z:y,T:p}=w,F=V(S*S),f=V(_*_),m=V(y*y),k=V(m*m),l=V(F*j),v=V(m*V(l+f)),C=V(k+V(B*V(F*f)));if(v!==C)throw Error("bad point: equation left != right (1)");let I=V(S*_),A=V(y*p);if(I!==A)throw Error("bad point: equation left != right (2)")}equals(w){D(w);let{X:j,Y:B,Z:S}=this,{X:_,Y:y,Z:p}=w,F=V(j*p),f=V(_*S),m=V(B*p),k=V(y*S);return F===f&&m===k}is0(){return this.equals(R.ZERO)}negate(){return new R(V(-this.X),this.Y,this.Z,V(-this.T))}double(){let{a:w}=X,{X:j,Y:B,Z:S}=this,_=V(j*j),y=V(B*B),p=V(Q7*V(S*S)),F=V(w*_),f=j+B,m=V(V(f*f)-_-y),k=F+y,l=k-p,v=F-y,C=V(m*l),I=V(k*v),A=V(m*v),T=V(l*k);return new R(C,I,T,A)}add(w){D(w);let{a:j,d:B}=X,{X:S,Y:_,Z:y,T:p}=this,{X:F,Y:f,Z:m,T:k}=w,l=V(S*F),v=V(_*f),C=V(p*B*k),I=V(y*m),A=V((S+_)*(F+f)-l-v),T=I-C,L=I+C,g=V(v-j*l),P=V(A*T),b=V(L*g),O=V(A*g),x=V(T*L);return new R(P,b,x,O)}subtract(w){return D(w),this.add(w.negate())}multiply(w){if(!Y.isValidNot0(w))throw RangeError("invalid scalar: expected 1 <= sc < curve.n");let{p:j,f:B}=N.cached(this,w,(S)=>K8(R,S));return K8(R,[j,B])[0]}multiplyUnsafe(w){if(!Y.isValid(w))throw RangeError("invalid scalar: expected 0 <= sc < curve.n");if(w===BJ)return R.ZERO;if(this.is0()||w===S0)return this;return N.unsafe(this,w,(j)=>K8(R,j))}isSmallOrder(){return this.clearCofactor().is0()}isTorsionFree(){return N.unsafe(this,X.n).is0()}toAffine(w){let j=this,B=w,{X:S,Y:_,Z:y}=j,p=j.is0();if(B==null)B=p?yE:Q.inv(y);let F=V(S*B),f=V(_*B),m=Q.mul(y,B);if(p)return{x:BJ,y:S0};if(m!==S0)throw Error("invZ was invalid");return{x:F,y:f}}clearCofactor(){if(U===S0)return this;return this.multiplyUnsafe(U)}toBytes(){let{x:w,y:j}=this.toAffine(),B=Q.toBytes(j);return B[B.length-1]|=w&S0?128:0,B}toHex(){return jG(this.toBytes())}toString(){return`<Point ${this.is0()?"ZERO":this.toHex()}>`}}let N=new lQ(R,Y.BITS);if(Y.BITS>=8)R.BASE.precompute(8);return Object.freeze(R.prototype),Object.freeze(R),R}class Y7{static BASE;static ZERO;static Fp;static Fn;ep;constructor($){this.ep=$}static fromBytes($){cW()}static fromHex($){cW()}get x(){return this.toAffine().x}get y(){return this.toAffine().y}clearCofactor(){return this}assertValidity(){this.ep.assertValidity()}toAffine($){return this.ep.toAffine($)}toHex(){return jG(this.toBytes())}toString(){return this.toHex()}isTorsionFree(){return!0}isSmallOrder(){return!1}add($){return this.assertSame($),this.init(this.ep.add($.ep))}subtract($){return this.assertSame($),this.init(this.ep.subtract($.ep))}multiply($){return this.init(this.ep.multiply($))}multiplyUnsafe($){return this.init(this.ep.multiplyUnsafe($))}double(){return this.init(this.ep.double())}negate(){return this.init(this.ep.negate())}precompute($,q){return this.ep.precompute($,q),this}}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */var dQ=BigInt(0),CG=BigInt(1),f9=BigInt(2);function xE($){return x0($,{P:"bigint",type:"string",adjustScalarBytes:"function",powPminus2:"function"},{randomBytes:"function"}),Object.freeze({...$})}function RH($){let q=xE($),{P:J,type:G,adjustScalarBytes:Q,powPminus2:Y,randomBytes:X}=q,U=G==="x25519";if(!U&&G!=="x448")throw Error("invalid type");let W=X===void 0?BG:X,V=U?255:448,M=U?32:56,z=U?BigInt(9):BigInt(5),D=U?BigInt(121665):BigInt(39081),R=U?f9**BigInt(254):f9**BigInt(447),N=U?BigInt(8)*f9**BigInt(251)-CG:BigInt(4)*f9**BigInt(445)-CG,w=R+N+CG,j=(A)=>B$(A,J),B=S(z);function S(A){return xQ(j(A),M)}function _(A){let T=AJ(Z$(A,M,"uCoordinate"));if(U)T[31]&=127;return j(e0(T))}function y(A){return e0(Q(AJ(Z$(A,M,"scalar"))))}function p(A,T){let L=l(_(T),y(A));if(L===dQ)throw Error("invalid private or public key received");return S(L)}function F(A){return p(A,B)}let f=F,m=p;function k(A,T,L){let g=j(A*(T-L));return T=j(T-g),L=j(L+g),{x_2:T,x_3:L}}function l(A,T){fq("u",A,dQ,J),fq("scalar",T,R,w);let L=T,g=A,P=CG,b=dQ,O=A,x=CG,r=dQ;for(let o=BigInt(V-1);o>=dQ;o--){let q$=L>>o&CG;r^=q$,{x_2:P,x_3:O}=k(r,P,O),{x_2:b,x_3:x}=k(r,b,x),r=q$;let Y$=P+b,G$=j(Y$*Y$),t=P-b,O$=j(t*t),A$=G$-O$,S$=O+x,y$=O-x,z0=j(y$*Y$),qq=j(S$*t),uq=z0+qq,pq=z0-qq;O=j(uq*uq),x=j(g*j(pq*pq)),P=j(G$*O$),b=j(A$*(G$+j(D*A$)))}({x_2:P,x_3:O}=k(r,P,O)),{x_2:b,x_3:x}=k(r,b,x);let Z=Y(b);return j(P*Z)}let v={secretKey:M,publicKey:M,seed:M},C=(A)=>{return A=A===void 0?W(M):A,Z$(A,v.seed,"seed"),A},I={randomSecretKey:C};return Object.freeze(v),Object.freeze(I),Object.freeze({keygen:rQ(C,f),getSharedSecret:m,getPublicKey:f,scalarMult:p,scalarMultBase:F,utils:I,GuBytes:B.slice(),lengths:v})}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */var hE=BigInt(0),hq=BigInt(1),DH=BigInt(2),uE=BigInt(3),pE=BigInt(5),lE=BigInt(8),O8=BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed"),V7=(()=>({p:O8,n:BigInt("0x1000000000000000000000000000000014def9dea2f79cd65812631a5cf5d3ed"),h:lE,a:BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec"),d:BigInt("0x52036cee2b6ffe738cc740797779e89800700a4d4141d8ab75eb4dca135978a3"),Gx:BigInt("0x216936d3cd6e53fec0a4e231fdd6dc5c692cc7609525a7b2c9562d608f25d51a"),Gy:BigInt("0x6666666666666666666666666666666666666666666666666666666666666658")}))();function OH($){let q=BigInt(10),J=BigInt(20),G=BigInt(40),Q=BigInt(80),Y=O8,U=$*$%Y*$%Y,W=h0(U,DH,Y)*U%Y,V=h0(W,hq,Y)*$%Y,M=h0(V,pE,Y)*V%Y,z=h0(M,q,Y)*M%Y,D=h0(z,J,Y)*z%Y,R=h0(D,G,Y)*D%Y,N=h0(R,Q,Y)*R%Y,w=h0(N,Q,Y)*R%Y,j=h0(w,q,Y)*M%Y;return{pow_p_5_8:h0(j,DH,Y)*$%Y,b2:U}}function rE($){return $[0]&=248,$[31]&=127,$[31]|=64,$}var X7=BigInt("19681161376707505956807079304988542015446066515923890162744021073123829784752");function M7($,q){let J=O8,G=B$(q*q*q,J),Q=B$(G*G*q,J),Y=OH($*Q).pow_p_5_8,X=B$($*G*Y,J),U=B$(q*X*X,J),W=X,V=B$(X*X7,J),M=U===$,z=U===B$(-$,J),D=U===B$(-$*X7,J);if(M)X=W;if(z||D)X=V;if(xq(X,J))X=B$(-X,J);return{isValid:M||z,value:X}}var H8=zH(V7,{uvRatio:M7}),TJ=(()=>H8.Fp)(),NH=(()=>H8.Fn)();var x9=(()=>{let $=O8;return RH({P:$,type:"x25519",powPminus2:(q)=>{let{pow_p_5_8:J,b2:G}=OH(q);return B$(h0(J,uE,$)*G,$)},adjustScalarBytes:rE})})();var U7=X7,iE=BigInt("25063068953384623474111414158702152701244531502492656460079210482610430750235"),dE=BigInt("54469307008909316920995813868745141605393597292927456921205312896311721017578"),cE=BigInt("1159843021668779879193775521855586647937357759715417654439879720876111806838"),nE=BigInt("40440834346308536858101042469323190826248399146238708352240133220865137265952"),KH=($)=>M7(hq,$),oE=BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"),W7=($)=>TJ.create(e0($)&oE);function HH($){let{d:q}=V7,J=O8,G=(B)=>TJ.create(B),Q=G(U7*$*$),Y=G((Q+hq)*cE),X=BigInt(-1),U=G((X-q*Q)*G(Q+q)),{isValid:W,value:V}=M7(Y,U),M=G(V*$);if(!xq(M,J))M=G(-M);if(!W)V=M;if(!W)X=Q;let z=G(X*(Q-hq)*nE-U),D=V*V,R=G((V+V)*U),N=G(z*iE),w=G(hq-D),j=G(hq+D);return new H8(G(R*j),G(w*N),G(N*j),G(R*w))}class w0 extends Y7{static BASE=(()=>new w0(H8.BASE))();static ZERO=(()=>new w0(H8.ZERO))();static Fp=(()=>TJ)();static Fn=(()=>NH)();constructor($){super($)}static fromAffine($){return new w0(H8.fromAffine($))}assertSame($){if(!($ instanceof w0))throw Error("RistrettoPoint expected")}init($){return new w0($)}static fromBytes($){r$($,32);let{a:q,d:J}=V7,G=O8,Q=(_)=>TJ.create(_),Y=W7($);if(!y1(TJ.toBytes(Y),$)||xq(Y,G))throw Error("invalid ristretto255 encoding 1");let X=Q(Y*Y),U=Q(hq+q*X),W=Q(hq-q*X),V=Q(U*U),M=Q(W*W),z=Q(q*J*V-M),{isValid:D,value:R}=KH(Q(z*M)),N=Q(R*W),w=Q(R*N*z),j=Q((Y+Y)*N);if(xq(j,G))j=Q(-j);let B=Q(U*w),S=Q(j*B);if(!D||xq(S,G)||B===hE)throw Error("invalid ristretto255 encoding 2");return new w0(new H8(j,B,hq,S))}static fromHex($){return w0.fromBytes(RQ($))}toBytes(){let{X:$,Y:q,Z:J,T:G}=this.ep,Q=O8,Y=(w)=>TJ.create(w),X=Y(Y(J+q)*Y(J-q)),U=Y($*q),W=Y(U*U),{value:V}=KH(Y(X*W)),M=Y(V*X),z=Y(V*U),D=Y(M*z*G),R;if(xq(G*D,Q)){let w=Y(q*U7),j=Y($*U7);$=w,q=j,R=Y(M*dE)}else R=z;if(xq($*D,Q))q=Y(-q);let N=Y((J-q)*R);if(xq(N,Q))N=Y(-N);return TJ.toBytes(N)}equals($){this.assertSame($);let{X:q,Y:J}=this.ep,{X:G,Y:Q}=$.ep,Y=(W)=>TJ.create(W),X=Y(q*Q)===Y(J*G),U=Y(J*Q)===Y(q*G);return X||U}is0(){return this.equals(w0.ZERO)}}Object.freeze(w0.BASE);Object.freeze(w0.ZERO);Object.freeze(w0.prototype);Object.freeze(w0);var aE=Object.freeze({Point:w0,hashToCurve($,q){let J=q?.DST===void 0?"ristretto255_XMD:SHA-512_R255MAP_RO_":q.DST,G=q7($,J,64,G9);return aE.deriveToCurve(G)},hashToScalar($,q={DST:GH}){let J=q7($,q.DST,64,G9);return NH.create(e0(J))},deriveToCurve($){r$($,64);let q=W7($.subarray(0,32)),J=HH(q),G=W7($.subarray(32,64)),Q=HH(G);return new w0(J.add(Q))}});var wH=!1,sE=!1;async function jH($,q){if(sE)return await q();try{return await $()}catch(J){if(J instanceof ReferenceError||J instanceof DOMException&&J.name==="NotSupportedError")return await q();else throw J}}async function h9($,q){return await jH(async()=>{let J=z7($)?$:await eE($),G=await crypto.subtle.importKey("raw",$L(q),{name:"X25519"},wH,[]);return new Uint8Array(await crypto.subtle.deriveBits({name:"X25519",public:G},J,256))},()=>{if(z7($))throw Error("CryptoKey provided but X25519 WebCrypto is not supported");return x9.scalarMult($,q)})}async function cQ($){return await jH(async()=>{return h9($,x9.GuBytes)},()=>{if(z7($))throw Error("CryptoKey provided but X25519 WebCrypto is not supported");return x9.scalarMultBase($)})}var tE=new Uint8Array([48,46,2,1,0,48,5,6,3,43,101,110,4,34,4,32]);async function eE($){if($.length!==32)throw Error("X25519 private key must be 32 bytes");let q=new Uint8Array([...tE,...$]);return crypto.subtle.importKey("pkcs8",q,{name:"X25519"},wH,["deriveBits"])}function z7($){return typeof CryptoKey<"u"&&$ instanceof CryptoKey}function $L($){return $}class R7{s;transcript=[];buf=new Uint8Array(0);constructor($){this.s=$.getReader()}async readLine(){let $=[];while(!0){let q=this.buf.indexOf(10);if(q>=0)return $.push(this.buf.subarray(0,q)),this.transcript.push(this.buf.subarray(0,q+1)),this.buf=this.buf.subarray(q+1),JL(N8($));if(this.buf.length>0)$.push(this.buf),this.transcript.push(this.buf);let J=await this.s.read();if(J.done)return this.buf=N8($),null;this.buf=J.value}}close(){return this.s.releaseLock(),{rest:this.buf,transcript:N8(this.transcript)}}}function JL($){return $.forEach((q)=>{if(q<32||q>126)throw Error("invalid non-ASCII byte in header")}),new TextDecoder().decode($)}function N8($){let q=$.reduce((Q,Y)=>Q+Y.length,0),J=new Uint8Array(q),G=0;for(let Q of $)J.set(Q,G),G+=Q.length;return J}function EG($,...q){return $.pipeThrough(new TransformStream({start(J){for(let G of q)J.enqueue(G)}}))}function u9($){return new ReadableStream({start(q){q.enqueue($),q.close()}})}async function D7($){if(!($ instanceof ReadableStream))throw Error("readAll expects a ReadableStream<Uint8Array>");return new Uint8Array(await new Response($).arrayBuffer())}async function AH($){if(!($ instanceof ReadableStream))throw Error("readAllString expects a ReadableStream<Uint8Array>");return await new Response($).text()}async function ZH($,q){let J=$.getReader(),G=[],Q=0;while(Q<q){let{done:W,value:V}=await J.read();if(W)throw Error("stream ended before reading "+q.toString()+" bytes");G.push(V),Q+=V.length}J.releaseLock();let Y=N8(G),X=Y.subarray(0,q),U=EG($,Y.subarray(q));return{data:X,rest:U}}class Hq{args;body;constructor($,q){this.args=$,this.body=q}}async function GL($){let q=await $.readLine();if(q===null)throw Error("invalid stanza");let J=q.split(" ");if(J.length<2||J.shift()!=="->")return{next:q};for(let Y of J)if(Y.length===0)throw Error("invalid stanza");let G=[];for(;;){let Y=await $.readLine();if(Y===null)throw Error("invalid stanza");let X=X0.decode(Y);if(X.length>48)throw Error("invalid stanza");if(G.push(X),X.length<48)break}let Q=N8(G);return{s:new Hq(J,Q)}}async function BH($){let q=new R7($),J=await q.readLine();if(J!=="age-encryption.org/v1")throw Error("invalid version "+(J??"line"));let G=[];for(;;){let{s:Q,next:Y}=await GL(q);if(Q!==void 0){G.push(Q);continue}if(!Y.startsWith("--- "))throw Error("invalid header");let X=X0.decode(Y.slice(4)),{rest:U,transcript:W}=q.close(),V=W.slice(0,W.length-1-Y.length+3);return{stanzas:G,headerNoMAC:V,MAC:X,headerSize:W.length,rest:EG($,U)}}}function K7($){let q=[];q.push(`age-encryption.org/v1
282
282
  `);for(let J of $){q.push("-> "+J.args.join(" ")+`
283
283
  `);for(let G=0;G<J.body.length;G+=48){let Q=G+48;if(Q>J.body.length)Q=J.body.length;q.push(X0.encode(J.body.subarray(G,Q))+`
284
284
  `)}if(J.body.length%48===0)q.push(`