@rizom/ops 0.2.0-alpha.126 → 0.2.0-alpha.128
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/brains-ops.js +7 -7
- package/dist/index.js +2 -2
- package/package.json +1 -1
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$((cv,yX)=>{if(typeof process>"u"||process.type==="renderer"||!1||process.__nwjs)yX.exports=uM();else yX.exports=aM()});var oz=X$((Ay,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 vI,chmod as _U,mkdir as DD,readFile as HD,writeFile as KD}from"fs/promises";import{dirname as bI,join as bU}from"path";import{fileURLToPath as kI}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.
|
|
56
|
+
`).map((q)=>q.trim()).join(" ")};cM.O=function($){return this.inspectOpts.colors=this.useColors,TY.inspect($,this.inspectOpts)}});var sM=X$((cv,yX)=>{if(typeof process>"u"||process.type==="renderer"||!1||process.__nwjs)yX.exports=uM();else yX.exports=aM()});var oz=X$((Ay,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 vI,chmod as _U,mkdir as DD,readFile as HD,writeFile as KD}from"fs/promises";import{dirname as bI,join as bU}from"path";import{fileURLToPath as kI}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.128",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 H2(N2(Q),{recursive:!0}),await O2(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 w2,mkdir as SD,readFile as j2,writeFile as CD}from"fs/promises";import{basename as A2,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,T2(G,J.anchorId)),R=await C2(V)?!1:await ID(W,S2(G)),{addedToCohort:N}=await Z2(M,G);return{handle:G,cohort:Q,userPath:U,secretsTemplatePath:W,cohortPath:M,createdUser:z,createdSecretsTemplate:R,addedToCohort:N}}async function Z2($,q){let J=await B2($);if(J.members.includes(q))return{addedToCohort:!1};let G={...J,members:[...J.members,q].sort()};return await CD($,I2(G)),{addedToCohort:!0}}async function B2($){try{let q=await j2($,"utf8"),J=JQ(q,oY);if(!J.ok)throw Error(`${A2($)}: ${J.error}`);return J.data}catch(q){if(L2(q))return{members:[]};throw q}}function T2($,q){return[`handle: ${$}`,"anchorProfile:",` name: ${P2($)}`,"discord:"," enabled: true",...q?[` anchorUserId: ${JSON.stringify(q)}`]:[],""].join(`
|
|
279
279
|
`)}function S2($){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 I2($){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(E2(J))return!1;throw J}}async function C2($){try{return await w2($),!0}catch{return!1}}function E2($){return ED($,"EEXIST")}function L2($){return ED($,"ENOENT")}function ED($,q){return typeof $==="object"&&$!==null&&"code"in $&&$.code===q}function P2($){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 F2}from"util";var g2={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 _2($){let{values:q,positionals:J}=F2({args:$,options:g2,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 RL,mkdirSync as DL,readFileSync as g7,writeFileSync as _7}from"fs";import{dirname as KL,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 v2=(()=>new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68)();function b2($){return $<<24&4278190080|$<<8&16711680|$>>>8&65280|$>>>24&255}function k2($){for(let q=0;q<$.length;q++)$[q]=b2($[q]);return $}var iU=v2?($)=>$:k2,PD=(()=>typeof Uint8Array.from([]).toHex==="function"&&typeof Uint8Array.fromHex==="function")(),m2=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+=m2[$[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 y2($){if(typeof $!=="string")throw TypeError("string expected");return new Uint8Array(new TextEncoder().encode($))}function dU($,q=""){if(typeof $==="string")return y2($);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 f2($,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}=f2($[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 h2=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)+h2[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 u2 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($))))(),p2=(()=>pD[0])(),l2=(()=>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,l2[S],VJ[S]),m=hD(f,j,_,p,p2[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 r2 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 i2 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 d2 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 c2($){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 Ju=P0(k0(4),F0("0123456789ABCDEF"),g0("")),Gu=P0(k0(5),F0("ABCDEFGHIJKLMNOPQRSTUVWXYZ234567"),V9(5),g0("")),Qu=P0(k0(5),F0("ABCDEFGHIJKLMNOPQRSTUVWXYZ234567"),g0("")),Yu=P0(k0(5),F0("0123456789ABCDEFGHIJKLMNOPQRSTUV"),V9(5),g0("")),Xu=P0(k0(5),F0("0123456789ABCDEFGHIJKLMNOPQRSTUV"),g0("")),Uu=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("")),Wu=tD?{encode($){return QW($),$.toBase64({alphabet:"base64url"})},decode($){return eD($,!0)}}:P0(k0(6),F0("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_"),V9(6),g0("")),Vu=P0(k0(6),F0("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_"),g0("")),UW=($)=>P0(c2(58),F0($),g0("")),Mu=UW("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"),zu=UW("123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"),Ru=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"),Du=$K("bech32m");var n2=(()=>typeof Uint8Array.from([]).toHex==="function"&&typeof Uint8Array.fromHex==="function")(),o2={encode($){return QW($),$.toHex()},decode($){return MJ("hex",$),Uint8Array.fromHex($)}},Ku=n2?o2: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 s2($,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 t2($,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}=s2($,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 t2(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 e2($,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 $C($,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}=e2($,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),$C($,X,M,W,z)}/*! noble-ciphers - MIT License (c) 2023 Paul Miller (paulmillr.com) */function qC($){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=qC($),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 JC($){return new DataView($.buffer,$.byteOffset,$.byteLength)}var eJ=(()=>new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68)(),GC=($)=>$<<24&4278190080|$<<8&16711680|$>>>8&65280|$>>>24&255;var QC=($)=>{for(let q=0;q<$.length;q++)$[q]=GC($[q]);return $},Fq=eJ?($)=>$:QC;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=JC(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)),YC=(()=>Fq(Vq(VK("expand 16-byte k"))))(),XC=(()=>Fq(Vq(VK("expand 32-byte k"))))();function w$($,q){return $<<q|$>>>32-q}var AQ=64,UC=16,RW=(()=>4294967295)(),WK=Uint32Array.of();function WC($,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<UC;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=XC;else if(N===16&&J)w=new Uint8Array(32),w.set(U),w.set(U,16),j=YC,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 WC($,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 VC($,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 MC=MK(VC,{counterRight:!1,counterLength:4,allowShortKeys:!1});var zC=new Uint8Array(16),DK=($,q)=>{$.update(q);let J=q.length%16;if(J)$.update(zC.subarray(J))},RC=new Uint8Array(32);function KK($,q,J,G,Q){if(Q!==void 0)k$(Q,void 0,"AAD");let Y=$(q,J,RC),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 DC=($)=>(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},DC(MC));/*! 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 KC=(()=>new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68)();function HC($){return $<<24&4278190080|$<<8&16711680|$>>>8&65280|$>>>24&255}function OC($){for(let q=0;q<$.length;q++)$[q]=HC($[q]);return $}var DW=KC?($)=>$:OC,OK=(()=>typeof Uint8Array.from([]).toHex==="function"&&typeof Uint8Array.fromHex==="function")(),NC=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+=NC[$[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 wC($,q,J){return K9($)&&K9(q)&&K9(J)&&q<=$&&$<J}function SQ($,q,J,G){if(!wC(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),jC=BigInt(7),IK=BigInt(8),AC=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 ZC($,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 BC($){let q=O9($),J=LK($),G=J(q,q.neg(q.ONE)),Q=J(q,G),Y=J(q,q.neg(G)),X=($+jC)/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 TC($){if($%TK===BK)return EK;if($%IK===SK)return ZC;if($%CK===AC)return BC($);return LK($)}var SC=["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=SC.reduce((G,Q)=>{return G[Q]="function",G},q);return J8($,J),$}function IC($,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 CC($,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}=CC($,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 IC(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=TC(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 EC($){return J8($,{adjustScalarBytes:"function",powPminus2:"function"}),Object.freeze({...$})}function xK($){let q=EC($),{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 LC($,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),PC=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),PC),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 LC(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 FC($,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}=FC($,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 gC($,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}=gC($[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 vC=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)+vC[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 bC 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($))))(),kC=(()=>Y1[0])(),mC=(()=>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,mC[S],jJ[S]),m=G1(f,j,_,p,kC[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 yC 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 fC 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 xC 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 hC=BigInt(1),W1=BigInt(2),uC=BigInt(3),pC=BigInt(5),Hp=BigInt(8),V1=BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed");function lC($){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,hC,Y)*$%Y,M=f0(V,pC,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 rC($){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}=lC(q);return O0(f0(J,uC,$)*G,$)},adjustScalarBytes:rC})})();/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */var iC=(()=>({p:BigInt("0xffffffff00000001000000000000000000000000ffffffffffffffffffffffff"),n:BigInt("0xffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551"),h:BigInt(1),a:BigInt("0xffffffff00000001000000000000000000000000fffffffffffffffffffffffc"),b:BigInt("0x5ac635d8aa3a93e7b3ebbd55769886bc651d06b0cc53b0f63bce3c3e27d2604b"),Gx:BigInt("0x6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296"),Gy:BigInt("0x4fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5")}))(),dC=(()=>({p:BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff"),n:BigInt("0xffffffffffffffffffffffffffffffffffffffffffffffffc7634d81f4372ddf581a0db248b0a77aecec196accc52973"),h:BigInt(1),a:BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000fffffffc"),b:BigInt("0xb3312fa7e23ee7e4988e056be3f82d19181d9c6efe8141120314088f5013875ac656398d8a2ed19d2a85c8edd3ec2aef"),Gx:BigInt("0xaa87ca22be8b05378eb1c71ef320ad746e1d3b628ba79b9859f741e082542a385502f25dbf55296c3a545e3872760ab7"),Gy:BigInt("0x3617de4a96262c6f5d9e98bf9292dc29f8f41dbd289a147ce9da3113b5f0b8c00a60b1ce1d7e819d7a431d7c90ea0e5f")}))();var cC=PW(iC),bW=FW(cC,T9);var nC=PW(dC),z1=FW(nC,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 oC=BigInt(0),_Q=BigInt(1),aC=BigInt(2),sC=BigInt(7),tC=BigInt(256),eC=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=oC;for(let Y=0;Y<7;Y++)if(q=(q<<_Q^(q>>sC)*eC)%tC,q&aC)Q^=_Q<<(_Q<<BigInt(Y))-_Q;j1.push(Q)}var A1=B9(j1,!0),$E=A1[0],qE=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 JE($,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]^=$E[G],$[1]^=qE[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),JE(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 Fp=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}}}}},GE=($)=>(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=GE(S1);/*! noble-post-quantum - MIT License (c) 2024 Paul Miller (paulmillr.com) */var M0=256,mq=3329,QE=3303,YE=17,{mod:kQ,nttZetas:XE,NTT:V8,bitsCoder:UE}=P1({N:M0,Q:mq,F:QE,ROOT_OF_UNITY:YE,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}},WE=($)=>{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=($)=>UE($,WE($));function M8($,q){for(let J=0;J<M0;J++)$[J]=kQ($[J]+q[J])}function VE($,q){for(let J=0;J<M0;J++)$[J]=kQ($[J]-q[J])}function ME($,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=XE[64+(J>>1)];if(J&1)G=-G;let{c0:Q,c1:Y}=ME($[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 zE=($)=>{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 VE(_,V8.decode(p)),m$(p,y,S),V.encode(_)}}};function uW($){let q=zE($),{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 RE($,q,J){return zq.create({dkLen:$}).update(q).update(new Uint8Array([J])).digest()}var pW={HASH256:U8,HASH512:B1,KDF:zq,XOF:F1,PRF:RE},up=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 DE($,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=DE($,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 KE($,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=KE($,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 tp=v1("QSF-KEM(ML-KEM-768,P-256)-XOF(SHAKE256)-KDF(SHA3-256)",mQ,lW(bW,!0),zq,U8),ep=v1("QSF-KEM(ML-KEM-1024,P-384)-XOF(SHAKE256)-KDF(SHA3-256)",_1,lW(z1,!0),zq,U8);function HE($,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),$l=HE("KitchenSink-KEM(ML-KEM-768,X25519)-XOF(SHAKE256)-KDF(HKDF-SHA-256)",mQ,b1,zq,T9),OE=(()=>L9(32,32,rW(zq),($,q,J)=>U8(_$(J[0],J[1],q[1],$[1],HJ("\\.//^\\"))),mQ,b1))();function NE($,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 wE($,q,J,G){let{secretKey:Q,publicKeyUncompressed:Y}=J.lengths;if(!Q||!Y)throw Error("wrong curve");let X=NE(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 jE=(()=>wE("MLKEM768-P256",mQ,bW,128))();var P9=OE,k1=jE;/*! 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 AE($,q,J){return F9($)&&F9(q)&&F9(J)&&q<=$&&$<J}function fq($,q,J,G){if(!AE(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),ZE=BigInt(7),i1=BigInt(8),BE=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 TE($,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 SE($){let q=k9($),J=n1($),G=J(q,q.neg(q.ONE)),Q=J(q,G),Y=J(q,q.neg(G)),X=($+ZE)/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 IE($){if($%l1===p1)return c1;if($%i1===r1)return TE;if($%d1===BE)return SE($);return n1($)}var xq=($,q)=>(B$($,q)&C$)===C$,CE=["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=CE.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 EE($,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 LE($,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}=LE($,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 EE(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=IE(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 PE($,q){let J=new Uint8Array($.length);for(let G=0;G<$.length;G++)J[G]=$[G]^q[G];return J}function FE($){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=FE(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=[PE(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 gE($,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),_E=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),_E),_=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 gE(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 vE($,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}=vE($,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 bE=(()=>({p:BigInt("0xffffffff00000001000000000000000000000000ffffffffffffffffffffffff"),n:BigInt("0xffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551"),h:BigInt(1),a:BigInt("0xffffffff00000001000000000000000000000000fffffffffffffffffffffffc"),b:BigInt("0x5ac635d8aa3a93e7b3ebbd55769886bc651d06b0cc53b0f63bce3c3e27d2604b"),Gx:BigInt("0x6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296"),Gy:BigInt("0x4fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5")}))();var kE=UH(bE),IG=MH(kE,P$);/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */var BJ=BigInt(0),S0=BigInt(1),Q7=BigInt(2),mE=BigInt(8);function yE($,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(!yE(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?mE: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 fE($){return x0($,{P:"bigint",type:"string",adjustScalarBytes:"function",powPminus2:"function"},{randomBytes:"function"}),Object.freeze({...$})}function RH($){let q=fE($),{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 xE=BigInt(0),hq=BigInt(1),DH=BigInt(2),hE=BigInt(3),uE=BigInt(5),pE=BigInt(8),O8=BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed"),V7=(()=>({p:O8,n:BigInt("0x1000000000000000000000000000000014def9dea2f79cd65812631a5cf5d3ed"),h:pE,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,uE,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 lE($){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,hE,$)*G,$)},adjustScalarBytes:lE})})();var U7=X7,rE=BigInt("25063068953384623474111414158702152701244531502492656460079210482610430750235"),iE=BigInt("54469307008909316920995813868745141605393597292927456921205312896311721017578"),dE=BigInt("1159843021668779879193775521855586647937357759715417654439879720876111806838"),cE=BigInt("40440834346308536858101042469323190826248399146238708352240133220865137265952"),KH=($)=>M7(hq,$),nE=BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"),W7=($)=>TJ.create(e0($)&nE);function HH($){let{d:q}=V7,J=O8,G=(B)=>TJ.create(B),Q=G(U7*$*$),Y=G((Q+hq)*dE),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)*cE-U),D=V*V,R=G((V+V)*U),N=G(z*rE),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===xE)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*iE)}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 oE=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 oE.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,aE=!1;async function jH($,q){if(aE)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 tE($),G=await crypto.subtle.importKey("raw",eE(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 sE=new Uint8Array([48,46,2,1,0,48,5,6,3,43,101,110,4,34,4,32]);async function tE($){if($.length!==32)throw Error("X25519 private key must be 32 bytes");let q=new Uint8Array([...sE,...$]);return crypto.subtle.importKey("pkcs8",q,{name:"X25519"},wH,["deriveBits"])}function z7($){return typeof CryptoKey<"u"&&$ instanceof CryptoKey}function eE($){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),qL(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 qL($){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 JL($){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 JL(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(E2(J))return!1;throw J}}async function C2($){try{return await w2($),!0}catch{return!1}}function E2($){return ED($,"EEXIST")}function L2($){return ED($,"ENOENT")}function ED($,q){return typeof $==="object"&&$!==null&&"code"in $&&$.code===q}function P2($){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 F2}from"util";var g2={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 _2($){let{values:q,positionals:J}=F2({args:$,options:g2,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 RL,mkdirSync as DL,readFileSync as g7,writeFileSync as _7}from"fs";import{dirname as KL,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 v2=(()=>new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68)();function b2($){return $<<24&4278190080|$<<8&16711680|$>>>8&65280|$>>>24&255}function k2($){for(let q=0;q<$.length;q++)$[q]=b2($[q]);return $}var iU=v2?($)=>$:k2,PD=(()=>typeof Uint8Array.from([]).toHex==="function"&&typeof Uint8Array.fromHex==="function")(),m2=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+=m2[$[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 y2($){if(typeof $!=="string")throw TypeError("string expected");return new Uint8Array(new TextEncoder().encode($))}function dU($,q=""){if(typeof $==="string")return y2($);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 f2($,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}=f2($[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 h2=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)+h2[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 u2 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($))))(),p2=(()=>pD[0])(),l2=(()=>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,l2[S],VJ[S]),m=hD(f,j,_,p,p2[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 r2 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 i2 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 d2 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 c2($){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 Yu=P0(k0(4),F0("0123456789ABCDEF"),g0("")),Xu=P0(k0(5),F0("ABCDEFGHIJKLMNOPQRSTUVWXYZ234567"),V9(5),g0("")),Uu=P0(k0(5),F0("ABCDEFGHIJKLMNOPQRSTUVWXYZ234567"),g0("")),Wu=P0(k0(5),F0("0123456789ABCDEFGHIJKLMNOPQRSTUV"),V9(5),g0("")),Vu=P0(k0(5),F0("0123456789ABCDEFGHIJKLMNOPQRSTUV"),g0("")),Mu=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("")),zu=tD?{encode($){return QW($),$.toBase64({alphabet:"base64url"})},decode($){return eD($,!0)}}:P0(k0(6),F0("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_"),V9(6),g0("")),Ru=P0(k0(6),F0("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_"),g0("")),UW=($)=>P0(c2(58),F0($),g0("")),Du=UW("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"),Ku=UW("123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"),Hu=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"),Ou=$K("bech32m");var n2=(()=>typeof Uint8Array.from([]).toHex==="function"&&typeof Uint8Array.fromHex==="function")(),o2={encode($){return QW($),$.toHex()},decode($){return MJ("hex",$),Uint8Array.fromHex($)}},Nu=n2?o2: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 s2($,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 t2($,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}=s2($,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 t2(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 e2($,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 $C($,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}=e2($,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),$C($,X,M,W,z)}/*! noble-ciphers - MIT License (c) 2023 Paul Miller (paulmillr.com) */function qC($){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=qC($),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 JC($){return new DataView($.buffer,$.byteOffset,$.byteLength)}var eJ=(()=>new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68)(),GC=($)=>$<<24&4278190080|$<<8&16711680|$>>>8&65280|$>>>24&255;var QC=($)=>{for(let q=0;q<$.length;q++)$[q]=GC($[q]);return $},Fq=eJ?($)=>$:QC;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=JC(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)),YC=(()=>Fq(Vq(VK("expand 16-byte k"))))(),XC=(()=>Fq(Vq(VK("expand 32-byte k"))))();function w$($,q){return $<<q|$>>>32-q}var AQ=64,UC=16,RW=(()=>4294967295)(),WK=Uint32Array.of();function WC($,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<UC;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=XC;else if(N===16&&J)w=new Uint8Array(32),w.set(U),w.set(U,16),j=YC,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 WC($,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 VC($,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 MC=MK(VC,{counterRight:!1,counterLength:4,allowShortKeys:!1});var zC=new Uint8Array(16),DK=($,q)=>{$.update(q);let J=q.length%16;if(J)$.update(zC.subarray(J))},RC=new Uint8Array(32);function KK($,q,J,G,Q){if(Q!==void 0)k$(Q,void 0,"AAD");let Y=$(q,J,RC),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 DC=($)=>(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},DC(MC));/*! 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 KC=(()=>new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68)();function HC($){return $<<24&4278190080|$<<8&16711680|$>>>8&65280|$>>>24&255}function OC($){for(let q=0;q<$.length;q++)$[q]=HC($[q]);return $}var DW=KC?($)=>$:OC,OK=(()=>typeof Uint8Array.from([]).toHex==="function"&&typeof Uint8Array.fromHex==="function")(),NC=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+=NC[$[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 wC($,q,J){return K9($)&&K9(q)&&K9(J)&&q<=$&&$<J}function SQ($,q,J,G){if(!wC(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),jC=BigInt(7),IK=BigInt(8),AC=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 ZC($,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 BC($){let q=O9($),J=LK($),G=J(q,q.neg(q.ONE)),Q=J(q,G),Y=J(q,q.neg(G)),X=($+jC)/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 TC($){if($%TK===BK)return EK;if($%IK===SK)return ZC;if($%CK===AC)return BC($);return LK($)}var SC=["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=SC.reduce((G,Q)=>{return G[Q]="function",G},q);return J8($,J),$}function IC($,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 CC($,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}=CC($,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 IC(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=TC(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 EC($){return J8($,{adjustScalarBytes:"function",powPminus2:"function"}),Object.freeze({...$})}function xK($){let q=EC($),{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 LC($,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),PC=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),PC),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 LC(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 FC($,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}=FC($,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 gC($,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}=gC($[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 vC=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)+vC[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 bC 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($))))(),kC=(()=>Y1[0])(),mC=(()=>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,mC[S],jJ[S]),m=G1(f,j,_,p,kC[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 yC 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 fC 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 xC 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 hC=BigInt(1),W1=BigInt(2),uC=BigInt(3),pC=BigInt(5),wp=BigInt(8),V1=BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed");function lC($){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,hC,Y)*$%Y,M=f0(V,pC,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 rC($){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}=lC(q);return O0(f0(J,uC,$)*G,$)},adjustScalarBytes:rC})})();/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */var iC=(()=>({p:BigInt("0xffffffff00000001000000000000000000000000ffffffffffffffffffffffff"),n:BigInt("0xffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551"),h:BigInt(1),a:BigInt("0xffffffff00000001000000000000000000000000fffffffffffffffffffffffc"),b:BigInt("0x5ac635d8aa3a93e7b3ebbd55769886bc651d06b0cc53b0f63bce3c3e27d2604b"),Gx:BigInt("0x6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296"),Gy:BigInt("0x4fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5")}))(),dC=(()=>({p:BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff"),n:BigInt("0xffffffffffffffffffffffffffffffffffffffffffffffffc7634d81f4372ddf581a0db248b0a77aecec196accc52973"),h:BigInt(1),a:BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000fffffffc"),b:BigInt("0xb3312fa7e23ee7e4988e056be3f82d19181d9c6efe8141120314088f5013875ac656398d8a2ed19d2a85c8edd3ec2aef"),Gx:BigInt("0xaa87ca22be8b05378eb1c71ef320ad746e1d3b628ba79b9859f741e082542a385502f25dbf55296c3a545e3872760ab7"),Gy:BigInt("0x3617de4a96262c6f5d9e98bf9292dc29f8f41dbd289a147ce9da3113b5f0b8c00a60b1ce1d7e819d7a431d7c90ea0e5f")}))();var cC=PW(iC),bW=FW(cC,T9);var nC=PW(dC),z1=FW(nC,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 oC=BigInt(0),_Q=BigInt(1),aC=BigInt(2),sC=BigInt(7),tC=BigInt(256),eC=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=oC;for(let Y=0;Y<7;Y++)if(q=(q<<_Q^(q>>sC)*eC)%tC,q&aC)Q^=_Q<<(_Q<<BigInt(Y))-_Q;j1.push(Q)}var A1=B9(j1,!0),$E=A1[0],qE=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 JE($,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]^=$E[G],$[1]^=qE[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),JE(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 vp=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}}}}},GE=($)=>(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=GE(S1);/*! noble-post-quantum - MIT License (c) 2024 Paul Miller (paulmillr.com) */var M0=256,mq=3329,QE=3303,YE=17,{mod:kQ,nttZetas:XE,NTT:V8,bitsCoder:UE}=P1({N:M0,Q:mq,F:QE,ROOT_OF_UNITY:YE,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}},WE=($)=>{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=($)=>UE($,WE($));function M8($,q){for(let J=0;J<M0;J++)$[J]=kQ($[J]+q[J])}function VE($,q){for(let J=0;J<M0;J++)$[J]=kQ($[J]-q[J])}function ME($,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=XE[64+(J>>1)];if(J&1)G=-G;let{c0:Q,c1:Y}=ME($[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 zE=($)=>{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 VE(_,V8.decode(p)),m$(p,y,S),V.encode(_)}}};function uW($){let q=zE($),{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 RE($,q,J){return zq.create({dkLen:$}).update(q).update(new Uint8Array([J])).digest()}var pW={HASH256:U8,HASH512:B1,KDF:zq,XOF:F1,PRF:RE},rp=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 DE($,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=DE($,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 KE($,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=KE($,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 ql=v1("QSF-KEM(ML-KEM-768,P-256)-XOF(SHAKE256)-KDF(SHA3-256)",mQ,lW(bW,!0),zq,U8),Jl=v1("QSF-KEM(ML-KEM-1024,P-384)-XOF(SHAKE256)-KDF(SHA3-256)",_1,lW(z1,!0),zq,U8);function HE($,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),Gl=HE("KitchenSink-KEM(ML-KEM-768,X25519)-XOF(SHAKE256)-KDF(HKDF-SHA-256)",mQ,b1,zq,T9),OE=(()=>L9(32,32,rW(zq),($,q,J)=>U8(_$(J[0],J[1],q[1],$[1],HJ("\\.//^\\"))),mQ,b1))();function NE($,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 wE($,q,J,G){let{secretKey:Q,publicKeyUncompressed:Y}=J.lengths;if(!Q||!Y)throw Error("wrong curve");let X=NE(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 jE=(()=>wE("MLKEM768-P256",mQ,bW,128))();var P9=OE,k1=jE;/*! 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 AE($,q,J){return F9($)&&F9(q)&&F9(J)&&q<=$&&$<J}function fq($,q,J,G){if(!AE(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),ZE=BigInt(7),i1=BigInt(8),BE=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 TE($,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 SE($){let q=k9($),J=n1($),G=J(q,q.neg(q.ONE)),Q=J(q,G),Y=J(q,q.neg(G)),X=($+ZE)/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 IE($){if($%l1===p1)return c1;if($%i1===r1)return TE;if($%d1===BE)return SE($);return n1($)}var xq=($,q)=>(B$($,q)&C$)===C$,CE=["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=CE.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 EE($,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 LE($,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}=LE($,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 EE(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=IE(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 PE($,q){let J=new Uint8Array($.length);for(let G=0;G<$.length;G++)J[G]=$[G]^q[G];return J}function FE($){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=FE(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=[PE(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 gE($,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),_E=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),_E),_=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 gE(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 vE($,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}=vE($,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 bE=(()=>({p:BigInt("0xffffffff00000001000000000000000000000000ffffffffffffffffffffffff"),n:BigInt("0xffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551"),h:BigInt(1),a:BigInt("0xffffffff00000001000000000000000000000000fffffffffffffffffffffffc"),b:BigInt("0x5ac635d8aa3a93e7b3ebbd55769886bc651d06b0cc53b0f63bce3c3e27d2604b"),Gx:BigInt("0x6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296"),Gy:BigInt("0x4fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5")}))();var kE=UH(bE),IG=MH(kE,P$);/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */var BJ=BigInt(0),S0=BigInt(1),Q7=BigInt(2),mE=BigInt(8);function yE($,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(!yE(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?mE: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 fE($){return x0($,{P:"bigint",type:"string",adjustScalarBytes:"function",powPminus2:"function"},{randomBytes:"function"}),Object.freeze({...$})}function RH($){let q=fE($),{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 xE=BigInt(0),hq=BigInt(1),DH=BigInt(2),hE=BigInt(3),uE=BigInt(5),pE=BigInt(8),O8=BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed"),V7=(()=>({p:O8,n:BigInt("0x1000000000000000000000000000000014def9dea2f79cd65812631a5cf5d3ed"),h:pE,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,uE,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 lE($){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,hE,$)*G,$)},adjustScalarBytes:lE})})();var U7=X7,rE=BigInt("25063068953384623474111414158702152701244531502492656460079210482610430750235"),iE=BigInt("54469307008909316920995813868745141605393597292927456921205312896311721017578"),dE=BigInt("1159843021668779879193775521855586647937357759715417654439879720876111806838"),cE=BigInt("40440834346308536858101042469323190826248399146238708352240133220865137265952"),KH=($)=>M7(hq,$),nE=BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"),W7=($)=>TJ.create(e0($)&nE);function HH($){let{d:q}=V7,J=O8,G=(B)=>TJ.create(B),Q=G(U7*$*$),Y=G((Q+hq)*dE),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)*cE-U),D=V*V,R=G((V+V)*U),N=G(z*rE),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===xE)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*iE)}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 oE=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 oE.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,aE=!1;async function jH($,q){if(aE)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 tE($),G=await crypto.subtle.importKey("raw",eE(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 sE=new Uint8Array([48,46,2,1,0,48,5,6,3,43,101,110,4,34,4,32]);async function tE($){if($.length!==32)throw Error("X25519 private key must be 32 bytes");let q=new Uint8Array([...sE,...$]);return crypto.subtle.importKey("pkcs8",q,{name:"X25519"},wH,["deriveBits"])}function z7($){return typeof CryptoKey<"u"&&$ instanceof CryptoKey}function eE($){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),qL(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 qL($){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 JL($){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 JL(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(`
|