@smartledger/keys 1.5.9 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,4 +1,4 @@
1
- "use strict";var LumenKeys=(()=>{var ng=Object.create;var sn=Object.defineProperty;var ig=Object.getOwnPropertyDescriptor;var og=Object.getOwnPropertyNames;var sg=Object.getPrototypeOf,ag=Object.prototype.hasOwnProperty;var cg=(z,_,Z)=>_ in z?sn(z,_,{enumerable:!0,configurable:!0,writable:!0,value:Z}):z[_]=Z;var Xe=(z,_)=>()=>(z&&(_=z(z=0)),_);var gg=(z,_)=>()=>(_||z((_={exports:{}}).exports,_),_.exports),t0=(z,_)=>{for(var Z in _)sn(z,Z,{get:_[Z],enumerable:!0})},A0=(z,_,Z,X)=>{if(_&&typeof _=="object"||typeof _=="function")for(let ee of og(_))!ag.call(z,ee)&&ee!==Z&&sn(z,ee,{get:()=>_[ee],enumerable:!(X=ig(_,ee))||X.enumerable});return z};var fg=(z,_,Z)=>(Z=z!=null?ng(sg(z)):{},A0(_||!z||!z.__esModule?sn(Z,"default",{value:z,enumerable:!0}):Z,z)),ug=z=>A0(sn({},"__esModule",{value:!0}),z);var he=(z,_,Z)=>cg(z,typeof _!="symbol"?_+"":_,Z);var Buffer,process,be=Xe(()=>{"use strict";Buffer={from:function(z,_){if(typeof z=="string"){if(_==="base64"){let X=atob(z),ee=new Uint8Array(X.length);for(let re=0;re<X.length;re++)ee[re]=X.charCodeAt(re);return ee}return new TextEncoder().encode(z)}return new Uint8Array(z)}};if(typeof Uint8Array.prototype.toString!="function"||!Uint8Array.prototype.toString.toString().includes("[native code]")){let z=Uint8Array.prototype.toString;Uint8Array.prototype.toString=function(_){if(_==="base64"){let Z="",X=new Uint8Array(this);for(let ee=0;ee<X.byteLength;ee++)Z+=String.fromCharCode(X[ee]);return btoa(Z)}return z.call(this)}}process={env:{NODE_ENV:"production"}};typeof window>"u"&&(window.global=window)});var Ig,fr,sA,hg,dg,a0,St,ur,at,c0,g0,lg,hr,Ir,Bg,f0,ti,wA,r0,Zi,iA,u0,Cg,dr,Xi,Mr,fn,Ne,Ut,un,Eg,n0,I0,i0,an,Vi,Wi,Kr,h0,yg,nA,mA,oA,gr,d0,In,Xn,Qg,qA,cn,$n,l0,gn,B0,$i,C0,pg,xg,bg,E0,y0,wg,Q0,mg,Dg,hn,p0,ei,Sg,x0,zi,Hg,o0,s0,kg,b0=Xe(()=>{be();Ig={p:0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2fn,n:0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141n,h:1n,a:0n,b:7n,Gx:0x79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798n,Gy:0x483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8n},{p:fr,n:sA,Gx:hg,Gy:dg,b:a0}=Ig,St=32,ur=64,at=(z="")=>{throw new Error(z)},c0=z=>typeof z=="bigint",g0=z=>typeof z=="string",lg=z=>z instanceof Uint8Array||ArrayBuffer.isView(z)&&z.constructor.name==="Uint8Array",hr=(z,_)=>!lg(z)||typeof _=="number"&&_>0&&z.length!==_?at("Uint8Array expected"):z,Ir=z=>new Uint8Array(z),Bg=z=>Uint8Array.from(z),f0=(z,_)=>z.toString(16).padStart(_,"0"),ti=z=>Array.from(hr(z)).map(_=>f0(_,2)).join(""),wA={_0:48,_9:57,A:65,F:70,a:97,f:102},r0=z=>{if(z>=wA._0&&z<=wA._9)return z-wA._0;if(z>=wA.A&&z<=wA.F)return z-(wA.A-10);if(z>=wA.a&&z<=wA.f)return z-(wA.a-10)},Zi=z=>{let _="hex invalid";if(!g0(z))return at(_);let Z=z.length,X=Z/2;if(Z%2)return at(_);let ee=Ir(X);for(let re=0,ie=0;re<X;re++,ie+=2){let ae=r0(z.charCodeAt(ie)),fe=r0(z.charCodeAt(ie+1));if(ae===void 0||fe===void 0)return at(_);ee[re]=ae*16+fe}return ee},iA=(z,_)=>hr(g0(z)?Zi(z):Bg(hr(z)),_),u0=()=>globalThis?.crypto,Cg=()=>u0()?.subtle??at("crypto.subtle must be defined"),dr=(...z)=>{let _=Ir(z.reduce((X,ee)=>X+hr(ee).length,0)),Z=0;return z.forEach(X=>{_.set(X,Z),Z+=X.length}),_},Xi=(z=St)=>u0().getRandomValues(Ir(z)),Mr=BigInt,fn=(z,_,Z,X="bad number: out of range")=>c0(z)&&_<=z&&z<Z?z:at(X),Ne=(z,_=fr)=>{let Z=z%_;return Z>=0n?Z:_+Z},Ut=z=>Ne(z,sA),un=(z,_)=>{(z===0n||_<=0n)&&at("no inverse n="+z+" mod="+_);let Z=Ne(z,_),X=_,ee=0n,re=1n,ie=1n,ae=0n;for(;Z!==0n;){let fe=X/Z,le=X%Z,Ce=ee-ie*fe,ce=re-ae*fe;X=Z,Z=le,ee=ie,re=ae,ie=Ce,ae=ce}return X===1n?Ne(ee,_):at("no inverse")},Eg=z=>{let _=hn[z];return typeof _!="function"&&at("hashes."+z+" not set"),_},n0=z=>z instanceof mA?z:at("Point expected"),I0=z=>Ne(Ne(z*z)*z+a0),i0=z=>fn(z,0n,fr),an=z=>fn(z,1n,fr),Vi=z=>fn(z,1n,sA),Wi=z=>(z&1n)===0n,Kr=z=>Uint8Array.of(z),h0=z=>Kr(Wi(z)?2:3),yg=z=>{let _=I0(an(z)),Z=1n;for(let X=_,ee=(fr+1n)/4n;ee>0n;ee>>=1n)ee&1n&&(Z=Z*X%fr),X=X*X%fr;return Ne(Z*Z)===_?Z:at("sqrt invalid")},nA=class nA{constructor(_,Z,X){he(this,"px");he(this,"py");he(this,"pz");this.px=i0(_),this.py=an(Z),this.pz=i0(X),Object.freeze(this)}static fromBytes(_){hr(_);let Z,X=_[0],ee=_.subarray(1),re=Xn(ee,0,St),ie=_.length;if(ie===St+1&&[2,3].includes(X)){let ae=yg(re),fe=Wi(ae);Wi(Mr(X))!==fe&&(ae=Ne(-ae)),Z=new nA(re,ae,1n)}return ie===ur+1&&X===4&&(Z=new nA(re,Xn(ee,St,ur),1n)),Z?Z.assertValidity():at("bad point: not on curve")}equals(_){let{px:Z,py:X,pz:ee}=this,{px:re,py:ie,pz:ae}=n0(_),fe=Ne(Z*ae),le=Ne(re*ee),Ce=Ne(X*ae),ce=Ne(ie*ee);return fe===le&&Ce===ce}is0(){return this.equals(gr)}negate(){return new nA(this.px,Ne(-this.py),this.pz)}double(){return this.add(this)}add(_){let{px:Z,py:X,pz:ee}=this,{px:re,py:ie,pz:ae}=n0(_),fe=0n,le=a0,Ce=0n,ce=0n,Ee=0n,$=Ne(le*3n),Be=Ne(Z*re),xe=Ne(X*ie),He=Ne(ee*ae),Se=Ne(Z+X),Re=Ne(re+ie);Se=Ne(Se*Re),Re=Ne(Be+xe),Se=Ne(Se-Re),Re=Ne(Z+ee);let we=Ne(re+ae);return Re=Ne(Re*we),we=Ne(Be+He),Re=Ne(Re-we),we=Ne(X+ee),Ce=Ne(ie+ae),we=Ne(we*Ce),Ce=Ne(xe+He),we=Ne(we-Ce),Ee=Ne(fe*Re),Ce=Ne($*He),Ee=Ne(Ce+Ee),Ce=Ne(xe-Ee),Ee=Ne(xe+Ee),ce=Ne(Ce*Ee),xe=Ne(Be+Be),xe=Ne(xe+Be),He=Ne(fe*He),Re=Ne($*Re),xe=Ne(xe+He),He=Ne(Be-He),He=Ne(fe*He),Re=Ne(Re+He),Be=Ne(xe*Re),ce=Ne(ce+Be),Be=Ne(we*Re),Ce=Ne(Se*Ce),Ce=Ne(Ce-Be),Be=Ne(Se*xe),Ee=Ne(we*Ee),Ee=Ne(Ee+Be),new nA(Ce,ce,Ee)}multiply(_,Z=!0){if(!Z&&_===0n)return gr;if(Vi(_),_===1n)return this;if(this.equals(oA))return kg(_).p;let X=gr,ee=oA;for(let re=this;_>0n;re=re.double(),_>>=1n)_&1n?X=X.add(re):Z&&(ee=ee.add(re));return X}toAffine(){let{px:_,py:Z,pz:X}=this;if(this.equals(gr))return{x:0n,y:0n};if(X===1n)return{x:_,y:Z};let ee=un(X,fr);return Ne(X*ee)!==1n&&at("inverse invalid"),{x:Ne(_*ee),y:Ne(Z*ee)}}assertValidity(){let{x:_,y:Z}=this.toAffine();return an(_),an(Z),Ne(Z*Z)===I0(_)?this:at("bad point: not on curve")}toBytes(_=!0){let{x:Z,y:X}=this.assertValidity().toAffine(),ee=qA(Z);return _?dr(h0(X),ee):dr(Kr(4),ee,qA(X))}static fromAffine(_){let{x:Z,y:X}=_;return Z===0n&&X===0n?gr:new nA(Z,X,1n)}toHex(_){return ti(this.toBytes(_))}static fromPrivateKey(_){return oA.multiply(cn(_))}static fromHex(_){return nA.fromBytes(iA(_))}get x(){return this.toAffine().x}get y(){return this.toAffine().y}toRawBytes(_){return this.toBytes(_)}};he(nA,"BASE"),he(nA,"ZERO");mA=nA,oA=new mA(hg,dg,1n),gr=new mA(0n,1n,0n);mA.BASE=oA;mA.ZERO=gr;d0=(z,_,Z)=>oA.multiply(_,!1).add(z.multiply(Z,!1)).assertValidity(),In=z=>Mr("0x"+(ti(z)||"0")),Xn=(z,_,Z)=>In(z.subarray(_,Z)),Qg=2n**256n,qA=z=>Zi(f0(fn(z,0n,Qg),ur)),cn=z=>{let _=c0(z)?z:In(iA(z,St));return fn(_,1n,sA,"private key invalid 3")},$n=z=>z>sA>>1n,l0=(z,_=!0)=>oA.multiply(cn(z)).toBytes(_),gn=class z{constructor(_,Z,X){he(this,"r");he(this,"s");he(this,"recovery");this.r=Vi(_),this.s=Vi(Z),X!=null&&(this.recovery=X),Object.freeze(this)}static fromBytes(_){hr(_,ur);let Z=Xn(_,0,St),X=Xn(_,St,ur);return new z(Z,X)}toBytes(){let{r:_,s:Z}=this;return dr(qA(_),qA(Z))}addRecoveryBit(_){return new z(this.r,this.s,_)}hasHighS(){return $n(this.s)}toCompactRawBytes(){return this.toBytes()}toCompactHex(){return ti(this.toBytes())}recoverPublicKey(_){return wg(this,_)}static fromCompact(_){return z.fromBytes(iA(_,ur))}assertValidity(){return this}normalizeS(){let{r:_,s:Z,recovery:X}=this;return $n(Z)?new z(_,Ut(-Z),X):this}},B0=z=>{let _=z.length*8-256;_>1024&&at("msg invalid");let Z=In(z);return _>0?Z>>Mr(_):Z},$i=z=>Ut(B0(hr(z))),C0={lowS:!0},pg={lowS:!0},xg=(z,_,Z=C0)=>{["der","recovered","canonical"].some(Ee=>Ee in Z)&&at("option not supported");let{lowS:X,extraEntropy:ee}=Z;X==null&&(X=!0);let re=qA,ie=$i(iA(z)),ae=re(ie),fe=cn(_),le=[re(fe),ae];ee&&le.push(ee===!0?Xi(St):iA(ee));let Ce=ie,ce=Ee=>{let $=B0(Ee);if(!(1n<=$&&$<sA))return;let Be=oA.multiply($).toAffine(),xe=Ut(Be.x);if(xe===0n)return;let He=un($,sA),Se=Ut(He*Ut(Ce+Ut(fe*xe)));if(Se===0n)return;let Re=Se,we=(Be.x===xe?0:2)|Number(Be.y&1n);return X&&$n(Se)&&(Re=Ut(-Se),we^=1),new gn(xe,Re,we)};return{seed:dr(...le),k2sig:ce}},bg=z=>{let _=Ir(St),Z=Ir(St),X=0,ee=Ir(0),re=()=>{_.fill(1),Z.fill(0),X=0},ie=1e3,ae="drbg: tried 1000 values";if(z){let fe=(...ce)=>hn.hmacSha256Async(Z,_,...ce),le=async(ce=ee)=>{Z=await fe(Kr(0),ce),_=await fe(),ce.length!==0&&(Z=await fe(Kr(1),ce),_=await fe())},Ce=async()=>(X++>=ie&&at(ae),_=await fe(),_);return async(ce,Ee)=>{re(),await le(ce);let $;for(;!($=Ee(await Ce()));)await le();return re(),$}}else{let fe=(...ce)=>Eg("hmacSha256Sync")(Z,_,...ce),le=(ce=ee)=>{Z=fe(Kr(0),ce),_=fe(),ce.length!==0&&(Z=fe(Kr(1),ce),_=fe())},Ce=()=>(X++>=ie&&at(ae),_=fe(),_);return(ce,Ee)=>{re(),le(ce);let $;for(;!($=Ee(Ce()));)le();return re(),$}}},E0=(z,_,Z=C0)=>{let{seed:X,k2sig:ee}=xg(z,_,Z);return bg(!1)(X,ee)},y0=(z,_,Z,X=pg)=>{let{lowS:ee}=X;ee==null&&(ee=!0),"strict"in X&&at("option not supported");let re,ie=z&&typeof z=="object"&&"r"in z;!ie&&iA(z).length!==ur&&at("signature must be 64 bytes");try{re=ie?new gn(z.r,z.s):gn.fromCompact(z);let ae=$i(iA(_)),fe=mA.fromBytes(iA(Z)),{r:le,s:Ce}=re;if(ee&&$n(Ce))return!1;let ce=un(Ce,sA),Ee=Ut(ae*ce),$=Ut(le*ce),Be=d0(fe,Ee,$).toAffine();return Ut(Be.x)===le}catch{return!1}},wg=(z,_)=>{let{r:Z,s:X,recovery:ee}=z;[0,1,2,3].includes(ee)||at("recovery id invalid");let re=$i(iA(_,St)),ie=ee===2||ee===3?Z+sA:Z;an(ie);let ae=h0(Mr(ee)),fe=dr(ae,qA(ie)),le=mA.fromBytes(fe),Ce=un(ie,sA),ce=Ut(-re*Ce),Ee=Ut(X*Ce);return d0(le,ce,Ee)},Q0=z=>{z=iA(z),(z.length<St+8||z.length>1024)&&at("expected 40-1024b");let _=Ne(In(z),sA-1n);return qA(_+1n)},mg=()=>Q0(Xi(St+16)),Dg="SHA-256",hn={hexToBytes:Zi,bytesToHex:ti,concatBytes:dr,bytesToNumberBE:In,numberToBytesBE:qA,mod:Ne,invert:un,hmacSha256Async:async(z,..._)=>{let Z=Cg(),X="HMAC",ee=await Z.importKey("raw",z,{name:X,hash:{name:Dg}},!1,["sign"]);return Ir(await Z.sign(X,ee,dr(..._)))},hmacSha256Sync:void 0,hashToPrivateKey:Q0,randomBytes:Xi},p0={normPrivateKeyToScalar:cn,isValidPrivateKey:z=>{try{return!!cn(z)}catch{return!1}},randomPrivateKey:mg,precompute:(z=8,_=oA)=>(_.multiply(3n),_)},ei=8,Sg=256,x0=Math.ceil(Sg/ei)+1,zi=2**(ei-1),Hg=()=>{let z=[],_=oA,Z=_;for(let X=0;X<x0;X++){Z=_,z.push(Z);for(let ee=1;ee<zi;ee++)Z=Z.add(_),z.push(Z);_=Z.double()}return z},s0=(z,_)=>{let Z=_.negate();return z?Z:_},kg=z=>{let _=o0||(o0=Hg()),Z=gr,X=oA,ee=2**ei,re=ee,ie=Mr(ee-1),ae=Mr(ei);for(let fe=0;fe<x0;fe++){let le=Number(z&ie);z>>=ae,le>zi&&(le-=re,z+=1n);let Ce=fe*zi,ce=Ce,Ee=Ce+Math.abs(le)-1,$=fe%2!==0,Be=le<0;le===0?X=X.add(s0($,_[ce])):Z=Z.add(s0(Be,_[Ee]))}return{p:Z,f:X}}});function Fg(z){return z instanceof Uint8Array||ArrayBuffer.isView(z)&&z.constructor.name==="Uint8Array"}function to(z,_=""){if(!Number.isSafeInteger(z)||z<0){let Z=_&&`"${_}" `;throw new Error(`${Z}expected integer >= 0, got ${z}`)}}function Tr(z,_,Z=""){let X=Fg(z),ee=z?.length,re=_!==void 0;if(!X||re&&ee!==_){let ie=Z&&`"${Z}" `,ae=re?` of length ${_}`:"",fe=X?`length=${ee}`:`type=${typeof z}`;throw new Error(ie+"expected Uint8Array"+ae+", got "+fe)}return z}function _r(z,_=!0){if(z.destroyed)throw new Error("Hash instance has been destroyed");if(_&&z.finished)throw new Error("Hash#digest() has already been called")}function oi(z,_){Tr(z,void 0,"digestInto() output");let Z=_.outputLen;if(z.length<Z)throw new Error('"digestInto() output" expected to be of length >='+Z)}function v0(z){return new Uint32Array(z.buffer,z.byteOffset,Math.floor(z.byteLength/4))}function aA(...z){for(let _=0;_<z.length;_++)z[_].fill(0)}function si(z){return new DataView(z.buffer,z.byteOffset,z.byteLength)}function Vt(z,_){return z<<32-_|z>>>_}function Yg(z){return z<<24&4278190080|z<<8&16711680|z>>>8&65280|z>>>24&255}function Kg(z){for(let _=0;_<z.length;_++)z[_]=Yg(z[_]);return z}function ln(z,_={}){let Z=(ee,re)=>z(re).update(ee).digest(),X=z(void 0);return Z.outputLen=X.outputLen,Z.blockLen=X.blockLen,Z.create=ee=>z(ee),Object.assign(Z,_),Object.freeze(Z)}var Rg,Ao,Bn,ai=Xe(()=>{be();Rg=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;Ao=Rg?z=>z:Kg;Bn=z=>({oid:Uint8Array.from([6,9,96,134,72,1,101,3,4,2,z])})});function U0(z,_,Z){return z&_^~z&Z}function L0(z,_,Z){return z&_^z&Z^_&Z}var Cn,SA,Qt,N0=Xe(()=>{be();ai();Cn=class{constructor(_,Z,X,ee){he(this,"blockLen");he(this,"outputLen");he(this,"padOffset");he(this,"isLE");he(this,"buffer");he(this,"view");he(this,"finished",!1);he(this,"length",0);he(this,"pos",0);he(this,"destroyed",!1);this.blockLen=_,this.outputLen=Z,this.padOffset=X,this.isLE=ee,this.buffer=new Uint8Array(_),this.view=si(this.buffer)}update(_){_r(this),Tr(_);let{view:Z,buffer:X,blockLen:ee}=this,re=_.length;for(let ie=0;ie<re;){let ae=Math.min(ee-this.pos,re-ie);if(ae===ee){let fe=si(_);for(;ee<=re-ie;ie+=ee)this.process(fe,ie);continue}X.set(_.subarray(ie,ie+ae),this.pos),this.pos+=ae,ie+=ae,this.pos===ee&&(this.process(Z,0),this.pos=0)}return this.length+=_.length,this.roundClean(),this}digestInto(_){_r(this),oi(_,this),this.finished=!0;let{buffer:Z,view:X,blockLen:ee,isLE:re}=this,{pos:ie}=this;Z[ie++]=128,aA(this.buffer.subarray(ie)),this.padOffset>ee-ie&&(this.process(X,0),ie=0);for(let ce=ie;ce<ee;ce++)Z[ce]=0;X.setBigUint64(ee-8,BigInt(this.length*8),re),this.process(X,0);let ae=si(_),fe=this.outputLen;if(fe%4)throw new Error("_sha2: outputLen must be aligned to 32bit");let le=fe/4,Ce=this.get();if(le>Ce.length)throw new Error("_sha2: outputLen bigger than state");for(let ce=0;ce<le;ce++)ae.setUint32(4*ce,Ce[ce],re)}digest(){let{buffer:_,outputLen:Z}=this;this.digestInto(_);let X=_.slice(0,Z);return this.destroy(),X}_cloneInto(_){_||(_=new this.constructor),_.set(...this.get());let{blockLen:Z,buffer:X,length:ee,finished:re,destroyed:ie,pos:ae}=this;return _.destroyed=ie,_.finished=re,_.length=ee,_.pos=ae,ee%Z&&_.buffer.set(X),_}clone(){return this._cloneInto()}},SA=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),Qt=Uint32Array.from([1779033703,4089235720,3144134277,2227873595,1013904242,4271175723,2773480762,1595750129,1359893119,2917565137,2600822924,725511199,528734635,4215389547,1541459225,327033209])});function Mg(z,_=!1){return _?{h:Number(z&ci),l:Number(z>>F0&ci)}:{h:Number(z>>F0&ci)|0,l:Number(z&ci)|0}}function gi(z,_=!1){let Z=z.length,X=new Uint32Array(Z),ee=new Uint32Array(Z);for(let re=0;re<Z;re++){let{h:ie,l:ae}=Mg(z[re],_);[X[re],ee[re]]=[ie,ae]}return[X,ee]}function cA(z,_,Z,X){let ee=(_>>>0)+(X>>>0);return{h:z+Z+(ee/2**32|0)|0,l:ee|0}}var ci,F0,ro,no,Cr,Er,En,yn,R0,Y0,K0,M0,q0,O0,J0,T0,_0,j0,io=Xe(()=>{be();ci=BigInt(4294967295),F0=BigInt(32);ro=(z,_,Z)=>z>>>Z,no=(z,_,Z)=>z<<32-Z|_>>>Z,Cr=(z,_,Z)=>z>>>Z|_<<32-Z,Er=(z,_,Z)=>z<<32-Z|_>>>Z,En=(z,_,Z)=>z<<64-Z|_>>>Z-32,yn=(z,_,Z)=>z>>>Z-32|_<<64-Z,R0=(z,_,Z)=>z<<Z|_>>>32-Z,Y0=(z,_,Z)=>_<<Z|z>>>32-Z,K0=(z,_,Z)=>_<<Z-32|z>>>64-Z,M0=(z,_,Z)=>z<<Z-32|_>>>64-Z;q0=(z,_,Z)=>(z>>>0)+(_>>>0)+(Z>>>0),O0=(z,_,Z,X)=>_+Z+X+(z/2**32|0)|0,J0=(z,_,Z,X)=>(z>>>0)+(_>>>0)+(Z>>>0)+(X>>>0),T0=(z,_,Z,X,ee)=>_+Z+X+ee+(z/2**32|0)|0,_0=(z,_,Z,X,ee)=>(z>>>0)+(_>>>0)+(Z>>>0)+(X>>>0)+(ee>>>0),j0=(z,_,Z,X,ee,re)=>_+Z+X+ee+re+(z/2**32|0)|0});var Og,JA,oo,so,P0,Jg,Tg,TA,_A,ao,co,V0,W0,z0=Xe(()=>{be();N0();io();ai();Og=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]),JA=new Uint32Array(64),oo=class extends Cn{constructor(_){super(64,_,8,!1)}get(){let{A:_,B:Z,C:X,D:ee,E:re,F:ie,G:ae,H:fe}=this;return[_,Z,X,ee,re,ie,ae,fe]}set(_,Z,X,ee,re,ie,ae,fe){this.A=_|0,this.B=Z|0,this.C=X|0,this.D=ee|0,this.E=re|0,this.F=ie|0,this.G=ae|0,this.H=fe|0}process(_,Z){for(let ce=0;ce<16;ce++,Z+=4)JA[ce]=_.getUint32(Z,!1);for(let ce=16;ce<64;ce++){let Ee=JA[ce-15],$=JA[ce-2],Be=Vt(Ee,7)^Vt(Ee,18)^Ee>>>3,xe=Vt($,17)^Vt($,19)^$>>>10;JA[ce]=xe+JA[ce-7]+Be+JA[ce-16]|0}let{A:X,B:ee,C:re,D:ie,E:ae,F:fe,G:le,H:Ce}=this;for(let ce=0;ce<64;ce++){let Ee=Vt(ae,6)^Vt(ae,11)^Vt(ae,25),$=Ce+Ee+U0(ae,fe,le)+Og[ce]+JA[ce]|0,xe=(Vt(X,2)^Vt(X,13)^Vt(X,22))+L0(X,ee,re)|0;Ce=le,le=fe,fe=ae,ae=ie+$|0,ie=re,re=ee,ee=X,X=$+xe|0}X=X+this.A|0,ee=ee+this.B|0,re=re+this.C|0,ie=ie+this.D|0,ae=ae+this.E|0,fe=fe+this.F|0,le=le+this.G|0,Ce=Ce+this.H|0,this.set(X,ee,re,ie,ae,fe,le,Ce)}roundClean(){aA(JA)}destroy(){this.set(0,0,0,0,0,0,0,0),aA(this.buffer)}},so=class extends oo{constructor(){super(32);he(this,"A",SA[0]|0);he(this,"B",SA[1]|0);he(this,"C",SA[2]|0);he(this,"D",SA[3]|0);he(this,"E",SA[4]|0);he(this,"F",SA[5]|0);he(this,"G",SA[6]|0);he(this,"H",SA[7]|0)}},P0=gi(["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(z=>BigInt(z))),Jg=P0[0],Tg=P0[1],TA=new Uint32Array(80),_A=new Uint32Array(80),ao=class extends Cn{constructor(_){super(128,_,16,!1)}get(){let{Ah:_,Al:Z,Bh:X,Bl:ee,Ch:re,Cl:ie,Dh:ae,Dl:fe,Eh:le,El:Ce,Fh:ce,Fl:Ee,Gh:$,Gl:Be,Hh:xe,Hl:He}=this;return[_,Z,X,ee,re,ie,ae,fe,le,Ce,ce,Ee,$,Be,xe,He]}set(_,Z,X,ee,re,ie,ae,fe,le,Ce,ce,Ee,$,Be,xe,He){this.Ah=_|0,this.Al=Z|0,this.Bh=X|0,this.Bl=ee|0,this.Ch=re|0,this.Cl=ie|0,this.Dh=ae|0,this.Dl=fe|0,this.Eh=le|0,this.El=Ce|0,this.Fh=ce|0,this.Fl=Ee|0,this.Gh=$|0,this.Gl=Be|0,this.Hh=xe|0,this.Hl=He|0}process(_,Z){for(let we=0;we<16;we++,Z+=4)TA[we]=_.getUint32(Z),_A[we]=_.getUint32(Z+=4);for(let we=16;we<80;we++){let Me=TA[we-15]|0,Ve=_A[we-15]|0,Ge=Cr(Me,Ve,1)^Cr(Me,Ve,8)^ro(Me,Ve,7),ke=Er(Me,Ve,1)^Er(Me,Ve,8)^no(Me,Ve,7),Pe=TA[we-2]|0,qe=_A[we-2]|0,nt=Cr(Pe,qe,19)^En(Pe,qe,61)^ro(Pe,qe,6),At=Er(Pe,qe,19)^yn(Pe,qe,61)^no(Pe,qe,6),Je=J0(ke,At,_A[we-7],_A[we-16]),Te=T0(Je,Ge,nt,TA[we-7],TA[we-16]);TA[we]=Te|0,_A[we]=Je|0}let{Ah:X,Al:ee,Bh:re,Bl:ie,Ch:ae,Cl:fe,Dh:le,Dl:Ce,Eh:ce,El:Ee,Fh:$,Fl:Be,Gh:xe,Gl:He,Hh:Se,Hl:Re}=this;for(let we=0;we<80;we++){let Me=Cr(ce,Ee,14)^Cr(ce,Ee,18)^En(ce,Ee,41),Ve=Er(ce,Ee,14)^Er(ce,Ee,18)^yn(ce,Ee,41),Ge=ce&$^~ce&xe,ke=Ee&Be^~Ee&He,Pe=_0(Re,Ve,ke,Tg[we],_A[we]),qe=j0(Pe,Se,Me,Ge,Jg[we],TA[we]),nt=Pe|0,At=Cr(X,ee,28)^En(X,ee,34)^En(X,ee,39),Je=Er(X,ee,28)^yn(X,ee,34)^yn(X,ee,39),Te=X&re^X&ae^re&ae,pe=ee&ie^ee&fe^ie&fe;Se=xe|0,Re=He|0,xe=$|0,He=Be|0,$=ce|0,Be=Ee|0,{h:ce,l:Ee}=cA(le|0,Ce|0,qe|0,nt|0),le=ae|0,Ce=fe|0,ae=re|0,fe=ie|0,re=X|0,ie=ee|0;let Qe=q0(nt,Je,pe);X=O0(Qe,qe,At,Te),ee=Qe|0}({h:X,l:ee}=cA(this.Ah|0,this.Al|0,X|0,ee|0)),{h:re,l:ie}=cA(this.Bh|0,this.Bl|0,re|0,ie|0),{h:ae,l:fe}=cA(this.Ch|0,this.Cl|0,ae|0,fe|0),{h:le,l:Ce}=cA(this.Dh|0,this.Dl|0,le|0,Ce|0),{h:ce,l:Ee}=cA(this.Eh|0,this.El|0,ce|0,Ee|0),{h:$,l:Be}=cA(this.Fh|0,this.Fl|0,$|0,Be|0),{h:xe,l:He}=cA(this.Gh|0,this.Gl|0,xe|0,He|0),{h:Se,l:Re}=cA(this.Hh|0,this.Hl|0,Se|0,Re|0),this.set(X,ee,re,ie,ae,fe,le,Ce,ce,Ee,$,Be,xe,He,Se,Re)}roundClean(){aA(TA,_A)}destroy(){aA(this.buffer),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}},co=class extends ao{constructor(){super(64);he(this,"Ah",Qt[0]|0);he(this,"Al",Qt[1]|0);he(this,"Bh",Qt[2]|0);he(this,"Bl",Qt[3]|0);he(this,"Ch",Qt[4]|0);he(this,"Cl",Qt[5]|0);he(this,"Dh",Qt[6]|0);he(this,"Dl",Qt[7]|0);he(this,"Eh",Qt[8]|0);he(this,"El",Qt[9]|0);he(this,"Fh",Qt[10]|0);he(this,"Fl",Qt[11]|0);he(this,"Gh",Qt[12]|0);he(this,"Gl",Qt[13]|0);he(this,"Hh",Qt[14]|0);he(this,"Hl",Qt[15]|0)}},V0=ln(()=>new so,Bn(1)),W0=ln(()=>new co,Bn(3))});function Xg(z,_=24){let Z=new Uint32Array(10);for(let X=24-_;X<24;X++){for(let ie=0;ie<10;ie++)Z[ie]=z[ie]^z[ie+10]^z[ie+20]^z[ie+30]^z[ie+40];for(let ie=0;ie<10;ie+=2){let ae=(ie+8)%10,fe=(ie+2)%10,le=Z[fe],Ce=Z[fe+1],ce=Z0(le,Ce,1)^Z[ae],Ee=X0(le,Ce,1)^Z[ae+1];for(let $=0;$<50;$+=10)z[ie+$]^=ce,z[ie+$+1]^=Ee}let ee=z[2],re=z[3];for(let ie=0;ie<24;ie++){let ae=ea[ie],fe=Z0(ee,re,ae),le=X0(ee,re,ae),Ce=$0[ie];ee=z[Ce],re=z[Ce+1],z[Ce]=fe,z[Ce+1]=le}for(let ie=0;ie<50;ie+=10){for(let ae=0;ae<10;ae++)Z[ae]=z[ie+ae];for(let ae=0;ae<10;ae++)z[ie+ae]^=~Z[(ae+2)%10]&Z[(ae+4)%10]}z[0]^=zg[X],z[1]^=Zg[X]}aA(Z)}var _g,Qn,jg,Pg,Vg,Wg,$0,ea,ta,Aa,zg,Zg,Z0,X0,go,$g,ra,na=Xe(()=>{be();io();ai();_g=BigInt(0),Qn=BigInt(1),jg=BigInt(2),Pg=BigInt(7),Vg=BigInt(256),Wg=BigInt(113),$0=[],ea=[],ta=[];for(let z=0,_=Qn,Z=1,X=0;z<24;z++){[Z,X]=[X,(2*Z+3*X)%5],$0.push(2*(5*X+Z)),ea.push((z+1)*(z+2)/2%64);let ee=_g;for(let re=0;re<7;re++)_=(_<<Qn^(_>>Pg)*Wg)%Vg,_&jg&&(ee^=Qn<<(Qn<<BigInt(re))-Qn);ta.push(ee)}Aa=gi(ta,!0),zg=Aa[0],Zg=Aa[1],Z0=(z,_,Z)=>Z>32?K0(z,_,Z):R0(z,_,Z),X0=(z,_,Z)=>Z>32?M0(z,_,Z):Y0(z,_,Z);go=class z{constructor(_,Z,X,ee=!1,re=24){he(this,"state");he(this,"pos",0);he(this,"posOut",0);he(this,"finished",!1);he(this,"state32");he(this,"destroyed",!1);he(this,"blockLen");he(this,"suffix");he(this,"outputLen");he(this,"enableXOF",!1);he(this,"rounds");if(this.blockLen=_,this.suffix=Z,this.outputLen=X,this.enableXOF=ee,this.rounds=re,to(X,"outputLen"),!(0<_&&_<200))throw new Error("only keccak-f1600 function is supported");this.state=new Uint8Array(200),this.state32=v0(this.state)}clone(){return this._cloneInto()}keccak(){Ao(this.state32),Xg(this.state32,this.rounds),Ao(this.state32),this.posOut=0,this.pos=0}update(_){_r(this),Tr(_);let{blockLen:Z,state:X}=this,ee=_.length;for(let re=0;re<ee;){let ie=Math.min(Z-this.pos,ee-re);for(let ae=0;ae<ie;ae++)X[this.pos++]^=_[re++];this.pos===Z&&this.keccak()}return this}finish(){if(this.finished)return;this.finished=!0;let{state:_,suffix:Z,pos:X,blockLen:ee}=this;_[X]^=Z,(Z&128)!==0&&X===ee-1&&this.keccak(),_[ee-1]^=128,this.keccak()}writeInto(_){_r(this,!1),Tr(_),this.finish();let Z=this.state,{blockLen:X}=this;for(let ee=0,re=_.length;ee<re;){this.posOut>=X&&this.keccak();let ie=Math.min(X-this.posOut,re-ee);_.set(Z.subarray(this.posOut,this.posOut+ie),ee),this.posOut+=ie,ee+=ie}return _}xofInto(_){if(!this.enableXOF)throw new Error("XOF is not possible for this instance");return this.writeInto(_)}xof(_){return to(_),this.xofInto(new Uint8Array(_))}digestInto(_){if(oi(_,this),this.finished)throw new Error("digest() was already called");return this.writeInto(_),this.destroy(),_}digest(){return this.digestInto(new Uint8Array(this.outputLen))}destroy(){this.destroyed=!0,aA(this.state)}_cloneInto(_){let{blockLen:Z,suffix:X,outputLen:ee,rounds:re,enableXOF:ie}=this;return _||(_=new z(Z,X,ee,ie,re)),_.state32.set(this.state32),_.pos=this.pos,_.posOut=this.posOut,_.finished=this.finished,_.rounds=re,_.suffix=X,_.outputLen=ee,_.enableXOF=ie,_.destroyed=this.destroyed,_}},$g=(z,_,Z,X={})=>ln(()=>new go(_,z,Z),X),ra=$g(6,136,32,Bn(8))});var fi={};t0(fi,{createHash:()=>ia,default:()=>ef});function ia(z){let _=new Uint8Array(0),Z;switch(z.toLowerCase()){case"sha256":case"sha-256":Z=V0;break;case"sha512":case"sha-512":Z=W0;break;case"sha3-256":Z=ra;break;default:throw new Error(`Unsupported hash algorithm: ${z}`)}return{update(X){let ee=X instanceof Uint8Array?X:new Uint8Array(X),re=new Uint8Array(_.length+ee.length);return re.set(_),re.set(ee,_.length),_=re,this},digest(){return Z(_)}}}var ef,ui=Xe(()=>{"use strict";be();z0();na();ef={createHash:ia}});function xn(z){return z instanceof Uint8Array||ArrayBuffer.isView(z)&&z.constructor.name==="Uint8Array"}function gA(z,_=""){if(!Number.isSafeInteger(z)||z<0){let Z=_&&`"${_}" `;throw new Error(`${Z}expected integer >= 0, got ${z}`)}}function tt(z,_,Z=""){let X=xn(z),ee=z?.length,re=_!==void 0;if(!X||re&&ee!==_){let ie=Z&&`"${Z}" `,ae=re?` of length ${_}`:"",fe=X?`length=${ee}`:`type=${typeof z}`;throw new Error(ie+"expected Uint8Array"+ae+", got "+fe)}return z}function hi(z){if(typeof z!="function"||typeof z.create!="function")throw new Error("Hash must wrapped by utils.createHasher");gA(z.outputLen),gA(z.blockLen)}function Pr(z,_=!0){if(z.destroyed)throw new Error("Hash instance has been destroyed");if(_&&z.finished)throw new Error("Hash#digest() has already been called")}function sa(z,_){tt(z,void 0,"digestInto() output");let Z=_.outputLen;if(z.length<Z)throw new Error('"digestInto() output" expected to be of length >='+Z)}function yr(...z){for(let _=0;_<z.length;_++)z[_].fill(0)}function di(z){return new DataView(z.buffer,z.byteOffset,z.byteLength)}function Wt(z,_){return z<<32-_|z>>>_}function Qr(z){if(tt(z),aa)return z.toHex();let _="";for(let Z=0;Z<z.length;Z++)_+=tf[z[Z]];return _}function oa(z){if(z>=HA._0&&z<=HA._9)return z-HA._0;if(z>=HA.A&&z<=HA.F)return z-(HA.A-10);if(z>=HA.a&&z<=HA.f)return z-(HA.a-10)}function pr(z){if(typeof z!="string")throw new Error("hex string expected, got "+typeof z);if(aa)return Uint8Array.fromHex(z);let _=z.length,Z=_/2;if(_%2)throw new Error("hex string expected, got unpadded hex of length "+_);let X=new Uint8Array(Z);for(let ee=0,re=0;ee<Z;ee++,re+=2){let ie=oa(z.charCodeAt(re)),ae=oa(z.charCodeAt(re+1));if(ie===void 0||ae===void 0){let fe=z[re]+z[re+1];throw new Error('hex string expected, got non-hex character "'+fe+'" at index '+re)}X[ee]=ie*16+ae}return X}function zt(...z){let _=0;for(let X=0;X<z.length;X++){let ee=z[X];tt(ee),_+=ee.length}let Z=new Uint8Array(_);for(let X=0,ee=0;X<z.length;X++){let re=z[X];Z.set(re,ee),ee+=re.length}return Z}function ca(z,_={}){let Z=(ee,re)=>z(re).update(ee).digest(),X=z(void 0);return Z.outputLen=X.outputLen,Z.blockLen=X.blockLen,Z.create=ee=>z(ee),Object.assign(Z,_),Object.freeze(Z)}function li(z=32){let _=typeof globalThis=="object"?globalThis.crypto:null;if(typeof _?.getRandomValues!="function")throw new Error("crypto.getRandomValues must be defined");return _.getRandomValues(new Uint8Array(z))}var aa,tf,HA,ga,xr=Xe(()=>{be();aa=typeof Uint8Array.from([]).toHex=="function"&&typeof Uint8Array.fromHex=="function",tf=Array.from({length:256},(z,_)=>_.toString(16).padStart(2,"0"));HA={_0:48,_9:57,A:65,F:70,a:97,f:102};ga=z=>({oid:Uint8Array.from([6,9,96,134,72,1,101,3,4,2,z])})});function fa(z,_,Z){return z&_^~z&Z}function ua(z,_,Z){return z&_^z&Z^_&Z}var Bi,kA,Ia=Xe(()=>{be();xr();Bi=class{constructor(_,Z,X,ee){he(this,"blockLen");he(this,"outputLen");he(this,"padOffset");he(this,"isLE");he(this,"buffer");he(this,"view");he(this,"finished",!1);he(this,"length",0);he(this,"pos",0);he(this,"destroyed",!1);this.blockLen=_,this.outputLen=Z,this.padOffset=X,this.isLE=ee,this.buffer=new Uint8Array(_),this.view=di(this.buffer)}update(_){Pr(this),tt(_);let{view:Z,buffer:X,blockLen:ee}=this,re=_.length;for(let ie=0;ie<re;){let ae=Math.min(ee-this.pos,re-ie);if(ae===ee){let fe=di(_);for(;ee<=re-ie;ie+=ee)this.process(fe,ie);continue}X.set(_.subarray(ie,ie+ae),this.pos),this.pos+=ae,ie+=ae,this.pos===ee&&(this.process(Z,0),this.pos=0)}return this.length+=_.length,this.roundClean(),this}digestInto(_){Pr(this),sa(_,this),this.finished=!0;let{buffer:Z,view:X,blockLen:ee,isLE:re}=this,{pos:ie}=this;Z[ie++]=128,yr(this.buffer.subarray(ie)),this.padOffset>ee-ie&&(this.process(X,0),ie=0);for(let ce=ie;ce<ee;ce++)Z[ce]=0;X.setBigUint64(ee-8,BigInt(this.length*8),re),this.process(X,0);let ae=di(_),fe=this.outputLen;if(fe%4)throw new Error("_sha2: outputLen must be aligned to 32bit");let le=fe/4,Ce=this.get();if(le>Ce.length)throw new Error("_sha2: outputLen bigger than state");for(let ce=0;ce<le;ce++)ae.setUint32(4*ce,Ce[ce],re)}digest(){let{buffer:_,outputLen:Z}=this;this.digestInto(_);let X=_.slice(0,Z);return this.destroy(),X}_cloneInto(_){_||(_=new this.constructor),_.set(...this.get());let{blockLen:Z,buffer:X,length:ee,finished:re,destroyed:ie,pos:ae}=this;return _.destroyed=ie,_.finished=re,_.length=ee,_.pos=ae,ee%Z&&_.buffer.set(X),_}clone(){return this._cloneInto()}},kA=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225])});var Af,jA,fo,uo,ha,da=Xe(()=>{be();Ia();xr();Af=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]),jA=new Uint32Array(64),fo=class extends Bi{constructor(_){super(64,_,8,!1)}get(){let{A:_,B:Z,C:X,D:ee,E:re,F:ie,G:ae,H:fe}=this;return[_,Z,X,ee,re,ie,ae,fe]}set(_,Z,X,ee,re,ie,ae,fe){this.A=_|0,this.B=Z|0,this.C=X|0,this.D=ee|0,this.E=re|0,this.F=ie|0,this.G=ae|0,this.H=fe|0}process(_,Z){for(let ce=0;ce<16;ce++,Z+=4)jA[ce]=_.getUint32(Z,!1);for(let ce=16;ce<64;ce++){let Ee=jA[ce-15],$=jA[ce-2],Be=Wt(Ee,7)^Wt(Ee,18)^Ee>>>3,xe=Wt($,17)^Wt($,19)^$>>>10;jA[ce]=xe+jA[ce-7]+Be+jA[ce-16]|0}let{A:X,B:ee,C:re,D:ie,E:ae,F:fe,G:le,H:Ce}=this;for(let ce=0;ce<64;ce++){let Ee=Wt(ae,6)^Wt(ae,11)^Wt(ae,25),$=Ce+Ee+fa(ae,fe,le)+Af[ce]+jA[ce]|0,xe=(Wt(X,2)^Wt(X,13)^Wt(X,22))+ua(X,ee,re)|0;Ce=le,le=fe,fe=ae,ae=ie+$|0,ie=re,re=ee,ee=X,X=$+xe|0}X=X+this.A|0,ee=ee+this.B|0,re=re+this.C|0,ie=ie+this.D|0,ae=ae+this.E|0,fe=fe+this.F|0,le=le+this.G|0,Ce=Ce+this.H|0,this.set(X,ee,re,ie,ae,fe,le,Ce)}roundClean(){yr(jA)}destroy(){this.set(0,0,0,0,0,0,0,0),yr(this.buffer)}},uo=class extends fo{constructor(){super(32);he(this,"A",kA[0]|0);he(this,"B",kA[1]|0);he(this,"C",kA[2]|0);he(this,"D",kA[3]|0);he(this,"E",kA[4]|0);he(this,"F",kA[5]|0);he(this,"G",kA[6]|0);he(this,"H",kA[7]|0)}},ha=ca(()=>new uo,ga(1))});function bn(z,_=""){if(typeof z!="boolean"){let Z=_&&`"${_}" `;throw new Error(Z+"expected boolean, got type="+typeof z)}return z}function la(z){if(typeof z=="bigint"){if(!Ci(z))throw new Error("positive bigint expected, got "+z)}else gA(z);return z}function wn(z){let _=la(z).toString(16);return _.length&1?"0"+_:_}function Ba(z){if(typeof z!="string")throw new Error("hex string expected, got "+typeof z);return z===""?ho:BigInt("0x"+z)}function Vr(z){return Ba(Qr(z))}function lo(z){return Ba(Qr(rf(tt(z)).reverse()))}function Ei(z,_){gA(_),z=la(z);let Z=pr(z.toString(16).padStart(_*2,"0"));if(Z.length!==_)throw new Error("number too large");return Z}function Bo(z,_){return Ei(z,_).reverse()}function rf(z){return Uint8Array.from(z)}function nf(z,_,Z){return Ci(z)&&Ci(_)&&Ci(Z)&&_<=z&&z<Z}function Ca(z,_,Z,X){if(!nf(_,Z,X))throw new Error("expected valid "+z+": "+Z+" <= n < "+X+", got "+_)}function Co(z){let _;for(_=0;z>ho;z>>=Io,_+=1);return _}function Ea(z,_,Z){if(gA(z,"hashLen"),gA(_,"qByteLen"),typeof Z!="function")throw new Error("hmacFn must be a function");let X=He=>new Uint8Array(He),ee=Uint8Array.of(),re=Uint8Array.of(0),ie=Uint8Array.of(1),ae=1e3,fe=X(z),le=X(z),Ce=0,ce=()=>{fe.fill(1),le.fill(0),Ce=0},Ee=(...He)=>Z(le,zt(fe,...He)),$=(He=ee)=>{le=Ee(re,He),fe=Ee(),He.length!==0&&(le=Ee(ie,He),fe=Ee())},Be=()=>{if(Ce++>=ae)throw new Error("drbg: tried max amount of iterations");let He=0,Se=[];for(;He<_;){fe=Ee();let Re=fe.slice();Se.push(Re),He+=fe.length}return zt(...Se)};return(He,Se)=>{ce(),$(He);let Re;for(;!(Re=Se(Be()));)$();return ce(),Re}}function Dn(z,_={},Z={}){if(!z||typeof z!="object")throw new Error("expected valid options object");function X(re,ie,ae){let fe=z[re];if(ae&&fe===void 0)return;let le=typeof fe;if(le!==ie||fe===null)throw new Error(`param "${re}" is invalid: expected ${ie}, got ${le}`)}let ee=(re,ie)=>Object.entries(re).forEach(([ae,fe])=>X(ae,fe,ie));ee(_,!1),ee(Z,!0)}function Eo(z){let _=new WeakMap;return(Z,...X)=>{let ee=_.get(Z);if(ee!==void 0)return ee;let re=z(Z,...X);return _.set(Z,re),re}}var ho,Io,Ci,mn,yi=Xe(()=>{be();xr();xr();ho=BigInt(0),Io=BigInt(1);Ci=z=>typeof z=="bigint"&&ho<=z;mn=z=>(Io<<BigInt(z))-Io});function Zt(z,_){let Z=z%_;return Z>=mt?Z:_+Z}function Ht(z,_,Z){let X=z;for(;_-- >mt;)X*=X,X%=Z;return X}function ya(z,_){if(z===mt)throw new Error("invert: expected non-zero number");if(_<=mt)throw new Error("invert: expected positive modulus, got "+_);let Z=Zt(z,_),X=_,ee=mt,re=wt,ie=wt,ae=mt;for(;Z!==mt;){let le=X/Z,Ce=X%Z,ce=ee-ie*le,Ee=re-ae*le;X=Z,Z=Ce,ee=ie,re=ae,ie=ce,ae=Ee}if(X!==wt)throw new Error("invert: does not exist");return Zt(ee,_)}function Qo(z,_,Z){if(!z.eql(z.sqr(_),Z))throw new Error("Cannot find square root")}function Da(z,_){let Z=(z.ORDER+wt)/xa,X=z.pow(_,Z);return Qo(z,X,_),X}function af(z,_){let Z=(z.ORDER-ba)/wa,X=z.mul(_,br),ee=z.pow(X,Z),re=z.mul(_,ee),ie=z.mul(z.mul(re,br),ee),ae=z.mul(re,z.sub(ie,z.ONE));return Qo(z,ae,_),ae}function cf(z){let _=Wr(z),Z=Sa(z),X=Z(_,_.neg(_.ONE)),ee=Z(_,X),re=Z(_,_.neg(X)),ie=(z+of)/ma;return(ae,fe)=>{let le=ae.pow(fe,ie),Ce=ae.mul(le,X),ce=ae.mul(le,ee),Ee=ae.mul(le,re),$=ae.eql(ae.sqr(Ce),fe),Be=ae.eql(ae.sqr(ce),fe);le=ae.cmov(le,Ce,$),Ce=ae.cmov(Ee,ce,Be);let xe=ae.eql(ae.sqr(Ce),fe),He=ae.cmov(le,Ce,xe);return Qo(ae,He,fe),He}}function Sa(z){if(z<pa)throw new Error("sqrt is not defined for small field");let _=z-wt,Z=0;for(;_%br===mt;)_/=br,Z++;let X=br,ee=Wr(z);for(;Qa(ee,X)===1;)if(X++>1e3)throw new Error("Cannot find square root: probably non-prime P");if(Z===1)return Da;let re=ee.pow(X,_),ie=(_+wt)/br;return function(fe,le){if(fe.is0(le))return le;if(Qa(fe,le)!==1)throw new Error("Cannot find square root");let Ce=Z,ce=fe.mul(fe.ONE,re),Ee=fe.pow(le,_),$=fe.pow(le,ie);for(;!fe.eql(Ee,fe.ONE);){if(fe.is0(Ee))return fe.ZERO;let Be=1,xe=fe.sqr(Ee);for(;!fe.eql(xe,fe.ONE);)if(Be++,xe=fe.sqr(xe),Be===Ce)throw new Error("Cannot find square root");let He=wt<<BigInt(Ce-Be-1),Se=fe.pow(ce,He);Ce=Be,ce=fe.sqr(Se),Ee=fe.mul(Ee,ce),$=fe.mul($,Se)}return $}}function gf(z){return z%xa===pa?Da:z%wa===ba?af:z%ma===sf?cf(z):Sa(z)}function po(z){let _={ORDER:"bigint",BYTES:"number",BITS:"number"},Z=ff.reduce((X,ee)=>(X[ee]="function",X),_);return Dn(z,Z),z}function uf(z,_,Z){if(Z<mt)throw new Error("invalid exponent, negatives unsupported");if(Z===mt)return z.ONE;if(Z===wt)return _;let X=z.ONE,ee=_;for(;Z>mt;)Z&wt&&(X=z.mul(X,ee)),ee=z.sqr(ee),Z>>=wt;return X}function Qi(z,_,Z=!1){let X=new Array(_.length).fill(Z?z.ZERO:void 0),ee=_.reduce((ie,ae,fe)=>z.is0(ae)?ie:(X[fe]=ie,z.mul(ie,ae)),z.ONE),re=z.inv(ee);return _.reduceRight((ie,ae,fe)=>z.is0(ae)?ie:(X[fe]=z.mul(ie,X[fe]),z.mul(ie,ae)),re),X}function Qa(z,_){let Z=(z.ORDER-wt)/br,X=z.pow(_,Z),ee=z.eql(X,z.ONE),re=z.eql(X,z.ZERO),ie=z.eql(X,z.neg(z.ONE));if(!ee&&!re&&!ie)throw new Error("invalid Legendre symbol result");return ee?1:re?0:-1}function If(z,_){_!==void 0&&gA(_);let Z=_!==void 0?_:z.toString(2).length,X=Math.ceil(Z/8);return{nBitLength:Z,nByteLength:X}}function Wr(z,_={}){return new yo(z,_)}function Ha(z){if(typeof z!="bigint")throw new Error("field order must be bigint");let _=z.toString(2).length;return Math.ceil(_/8)}function xo(z){let _=Ha(z);return _+Math.ceil(_/2)}function bo(z,_,Z=!1){tt(z);let X=z.length,ee=Ha(_),re=xo(_);if(X<16||X<re||X>1024)throw new Error("expected "+re+"-1024 bytes of input, got "+X);let ie=Z?lo(z):Vr(z),ae=Zt(ie,_-wt)+wt;return Z?Bo(ae,ee):Ei(ae,ee)}var mt,wt,br,pa,xa,ba,of,wa,sf,ma,ff,yo,pi=Xe(()=>{be();yi();mt=BigInt(0),wt=BigInt(1),br=BigInt(2),pa=BigInt(3),xa=BigInt(4),ba=BigInt(5),of=BigInt(7),wa=BigInt(8),sf=BigInt(9),ma=BigInt(16);ff=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];yo=class{constructor(_,Z={}){he(this,"ORDER");he(this,"BITS");he(this,"BYTES");he(this,"isLE");he(this,"ZERO",mt);he(this,"ONE",wt);he(this,"_lengths");he(this,"_sqrt");he(this,"_mod");if(_<=mt)throw new Error("invalid field: expected ORDER > 0, got "+_);let X;this.isLE=!1,Z!=null&&typeof Z=="object"&&(typeof Z.BITS=="number"&&(X=Z.BITS),typeof Z.sqrt=="function"&&(this.sqrt=Z.sqrt),typeof Z.isLE=="boolean"&&(this.isLE=Z.isLE),Z.allowedLengths&&(this._lengths=Z.allowedLengths?.slice()),typeof Z.modFromBytes=="boolean"&&(this._mod=Z.modFromBytes));let{nBitLength:ee,nByteLength:re}=If(_,X);if(re>2048)throw new Error("invalid field: expected ORDER of <= 2048 bytes");this.ORDER=_,this.BITS=ee,this.BYTES=re,this._sqrt=void 0,Object.preventExtensions(this)}create(_){return Zt(_,this.ORDER)}isValid(_){if(typeof _!="bigint")throw new Error("invalid field element: expected bigint, got "+typeof _);return mt<=_&&_<this.ORDER}is0(_){return _===mt}isValidNot0(_){return!this.is0(_)&&this.isValid(_)}isOdd(_){return(_&wt)===wt}neg(_){return Zt(-_,this.ORDER)}eql(_,Z){return _===Z}sqr(_){return Zt(_*_,this.ORDER)}add(_,Z){return Zt(_+Z,this.ORDER)}sub(_,Z){return Zt(_-Z,this.ORDER)}mul(_,Z){return Zt(_*Z,this.ORDER)}pow(_,Z){return uf(this,_,Z)}div(_,Z){return Zt(_*ya(Z,this.ORDER),this.ORDER)}sqrN(_){return _*_}addN(_,Z){return _+Z}subN(_,Z){return _-Z}mulN(_,Z){return _*Z}inv(_){return ya(_,this.ORDER)}sqrt(_){return this._sqrt||(this._sqrt=gf(this.ORDER)),this._sqrt(this,_)}toBytes(_){return this.isLE?Bo(_,this.BYTES):Ei(_,this.BYTES)}fromBytes(_,Z=!1){tt(_);let{_lengths:X,BYTES:ee,isLE:re,ORDER:ie,_mod:ae}=this;if(X){if(!X.includes(_.length)||_.length>ee)throw new Error("Field.fromBytes: expected "+X+" bytes, got "+_.length);let le=new Uint8Array(ee);le.set(_,re?0:le.length-_.length),_=le}if(_.length!==ee)throw new Error("Field.fromBytes: expected "+ee+" bytes, got "+_.length);let fe=re?lo(_):Vr(_);if(ae&&(fe=Zt(fe,ie)),!Z&&!this.isValid(fe))throw new Error("invalid field element: outside of range 0..ORDER");return fe}invertBatch(_){return Qi(this,_)}cmov(_,Z,X){return X?Z:_}}});function Sn(z,_){let Z=_.negate();return z?Z:_}function So(z,_){let Z=Qi(z.Fp,_.map(X=>X.Z));return _.map((X,ee)=>z.fromAffine(X.toAffine(Z[ee])))}function Ua(z,_){if(!Number.isSafeInteger(z)||z<=0||z>_)throw new Error("invalid window size, expected [1.."+_+"], got W="+z)}function wo(z,_){Ua(z,_);let Z=Math.ceil(_/z)+1,X=2**(z-1),ee=2**z,re=mn(z),ie=BigInt(z);return{windows:Z,windowSize:X,mask:re,maxNumber:ee,shiftBy:ie}}function ka(z,_,Z){let{windowSize:X,mask:ee,maxNumber:re,shiftBy:ie}=Z,ae=Number(z&ee),fe=z>>ie;ae>X&&(ae-=re,fe+=wr);let le=_*X,Ce=le+Math.abs(ae)-1,ce=ae===0,Ee=ae<0,$=_%2!==0;return{nextN:fe,offset:Ce,isZero:ce,isNeg:Ee,isNegF:$,offsetF:le}}function Do(z){return La.get(z)||1}function Ga(z){if(z!==zr)throw new Error("invalid wNAF")}function Na(z,_,Z,X){let ee=_,re=z.ZERO,ie=z.ZERO;for(;Z>zr||X>zr;)Z&wr&&(re=re.add(ee)),X&wr&&(ie=ie.add(ee)),ee=ee.double(),Z>>=wr,X>>=wr;return{p1:re,p2:ie}}function va(z,_,Z){if(_){if(_.ORDER!==z)throw new Error("Field.ORDER must match order: Fp == p, Fn == n");return po(_),_}else return Wr(z,{isLE:Z})}function Fa(z,_,Z={},X){if(X===void 0&&(X=z==="edwards"),!_||typeof _!="object")throw new Error(`expected valid ${z} CURVE object`);for(let fe of["p","n","h"]){let le=_[fe];if(!(typeof le=="bigint"&&le>zr))throw new Error(`CURVE.${fe} must be positive bigint`)}let ee=va(_.p,Z.Fp,X),re=va(_.n,Z.Fn,X),ae=["Gx","Gy","a",z==="weierstrass"?"b":"d"];for(let fe of ae)if(!ee.isValid(_[fe]))throw new Error(`CURVE.${fe} must be valid field element of CURVE.Fp`);return _=Object.freeze(Object.assign({},_)),{CURVE:_,Fp:ee,Fn:re}}function Ra(z,_){return function(X){let ee=z(X);return{secretKey:ee,publicKey:_(ee)}}}var zr,wr,mo,La,xi,Ya=Xe(()=>{be();yi();pi();zr=BigInt(0),wr=BigInt(1);mo=new WeakMap,La=new WeakMap;xi=class{constructor(_,Z){he(this,"BASE");he(this,"ZERO");he(this,"Fn");he(this,"bits");this.BASE=_.BASE,this.ZERO=_.ZERO,this.Fn=_.Fn,this.bits=Z}_unsafeLadder(_,Z,X=this.ZERO){let ee=_;for(;Z>zr;)Z&wr&&(X=X.add(ee)),ee=ee.double(),Z>>=wr;return X}precomputeWindow(_,Z){let{windows:X,windowSize:ee}=wo(Z,this.bits),re=[],ie=_,ae=ie;for(let fe=0;fe<X;fe++){ae=ie,re.push(ae);for(let le=1;le<ee;le++)ae=ae.add(ie),re.push(ae);ie=ae.double()}return re}wNAF(_,Z,X){if(!this.Fn.isValid(X))throw new Error("invalid scalar");let ee=this.ZERO,re=this.BASE,ie=wo(_,this.bits);for(let ae=0;ae<ie.windows;ae++){let{nextN:fe,offset:le,isZero:Ce,isNeg:ce,isNegF:Ee,offsetF:$}=ka(X,ae,ie);X=fe,Ce?re=re.add(Sn(Ee,Z[$])):ee=ee.add(Sn(ce,Z[le]))}return Ga(X),{p:ee,f:re}}wNAFUnsafe(_,Z,X,ee=this.ZERO){let re=wo(_,this.bits);for(let ie=0;ie<re.windows&&X!==zr;ie++){let{nextN:ae,offset:fe,isZero:le,isNeg:Ce}=ka(X,ie,re);if(X=ae,!le){let ce=Z[fe];ee=ee.add(Ce?ce.negate():ce)}}return Ga(X),ee}getPrecomputes(_,Z,X){let ee=mo.get(Z);return ee||(ee=this.precomputeWindow(Z,_),_!==1&&(typeof X=="function"&&(ee=X(ee)),mo.set(Z,ee))),ee}cached(_,Z,X){let ee=Do(_);return this.wNAF(ee,this.getPrecomputes(ee,_,X),Z)}unsafe(_,Z,X,ee){let re=Do(_);return re===1?this._unsafeLadder(_,Z,ee):this.wNAFUnsafe(re,this.getPrecomputes(re,_,X),Z,ee)}createCache(_,Z){Ua(Z,this.bits),La.set(_,Z),mo.delete(_)}hasCache(_){return Do(_)!==1}}});var bi,Ho,Ka=Xe(()=>{be();xr();bi=class{constructor(_,Z){he(this,"oHash");he(this,"iHash");he(this,"blockLen");he(this,"outputLen");he(this,"finished",!1);he(this,"destroyed",!1);if(hi(_),tt(Z,void 0,"key"),this.iHash=_.create(),typeof this.iHash.update!="function")throw new Error("Expected instance of class which extends utils.Hash");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;let X=this.blockLen,ee=new Uint8Array(X);ee.set(Z.length>X?_.create().update(Z).digest():Z);for(let re=0;re<ee.length;re++)ee[re]^=54;this.iHash.update(ee),this.oHash=_.create();for(let re=0;re<ee.length;re++)ee[re]^=106;this.oHash.update(ee),yr(ee)}update(_){return Pr(this),this.iHash.update(_),this}digestInto(_){Pr(this),tt(_,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:Z,iHash:X,finished:ee,destroyed:re,blockLen:ie,outputLen:ae}=this;return _=_,_.finished=ee,_.destroyed=re,_.blockLen=ie,_.outputLen=ae,_.oHash=Z._cloneInto(_.oHash),_.iHash=X._cloneInto(_.iHash),_}clone(){return this._cloneInto()}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}},Ho=(z,_,Z)=>new bi(z,_).update(Z).digest();Ho.create=(z,_)=>new bi(z,_)});function hf(z,_,Z){let[[X,ee],[re,ie]]=_,ae=Ma(ie*z,Z),fe=Ma(-ee*z,Z),le=z-ae*X-fe*re,Ce=-ae*ee-fe*ie,ce=le<GA,Ee=Ce<GA;ce&&(le=-le),Ee&&(Ce=-Ce);let $=mn(Math.ceil(Co(Z)/2))+Zr;if(le<GA||le>=$||Ce<GA||Ce>=$)throw new Error("splitScalar (endomorphism): failed, k="+z);return{k1neg:ce,k1:le,k2neg:Ee,k2:Ce}}function Go(z){if(!["compact","recovered","der"].includes(z))throw new Error('Signature format must be "compact", "recovered", or "der"');return z}function ko(z,_){let Z={};for(let X of Object.keys(_))Z[X]=z[X]===void 0?_[X]:z[X];return bn(Z.lowS,"lowS"),bn(Z.prehash,"prehash"),Z.format!==void 0&&Go(Z.format),Z}function Oa(z,_={}){let Z=Fa("weierstrass",z,_),{Fp:X,Fn:ee}=Z,re=Z.CURVE,{h:ie,n:ae}=re;Dn(_,{},{allowInfinityPoint:"boolean",clearCofactor:"function",isTorsionFree:"function",fromBytes:"function",toBytes:"function",endo:"object"});let{endo:fe}=_;if(fe&&(!X.is0(re.a)||typeof fe.beta!="bigint"||!Array.isArray(fe.basises)))throw new Error('invalid endo: expected "beta": bigint and "basises": array');let le=Ta(X,ee);function Ce(){if(!X.isOdd)throw new Error("compression is not supported: Field does not have .isOdd()")}function ce(Te,pe,Qe){let{x:Ue,y:Fe}=pe.toAffine(),me=X.toBytes(Ue);if(bn(Qe,"isCompressed"),Qe){Ce();let Ye=!X.isOdd(Fe);return zt(Ja(Ye),me)}else return zt(Uint8Array.of(4),me,X.toBytes(Fe))}function Ee(Te){tt(Te,void 0,"Point");let{publicKey:pe,publicKeyUncompressed:Qe}=le,Ue=Te.length,Fe=Te[0],me=Te.subarray(1);if(Ue===pe&&(Fe===2||Fe===3)){let Ye=X.fromBytes(me);if(!X.isValid(Ye))throw new Error("bad point: is not on curve, wrong x");let Oe=xe(Ye),Le;try{Le=X.sqrt(Oe)}catch(ct){let et=ct instanceof Error?": "+ct.message:"";throw new Error("bad point: is not on curve, sqrt error"+et)}Ce();let _e=X.isOdd(Le);return(Fe&1)===1!==_e&&(Le=X.neg(Le)),{x:Ye,y:Le}}else if(Ue===Qe&&Fe===4){let Ye=X.BYTES,Oe=X.fromBytes(me.subarray(0,Ye)),Le=X.fromBytes(me.subarray(Ye,Ye*2));if(!He(Oe,Le))throw new Error("bad point: is not on curve");return{x:Oe,y:Le}}else throw new Error(`bad point: got length ${Ue}, expected compressed=${pe} or uncompressed=${Qe}`)}let $=_.toBytes||ce,Be=_.fromBytes||Ee;function xe(Te){let pe=X.sqr(Te),Qe=X.mul(pe,Te);return X.add(X.add(Qe,X.mul(Te,re.a)),re.b)}function He(Te,pe){let Qe=X.sqr(pe),Ue=xe(Te);return X.eql(Qe,Ue)}if(!He(re.Gx,re.Gy))throw new Error("bad curve params: generator point");let Se=X.mul(X.pow(re.a,wi),df),Re=X.mul(X.sqr(re.b),BigInt(27));if(X.is0(X.add(Se,Re)))throw new Error("bad curve params: a or b");function we(Te,pe,Qe=!1){if(!X.isValid(pe)||Qe&&X.is0(pe))throw new Error(`bad point coordinate ${Te}`);return pe}function Me(Te){if(!(Te instanceof qe))throw new Error("Weierstrass Point expected")}function Ve(Te){if(!fe||!fe.basises)throw new Error("no endo");return hf(Te,fe.basises,ee.ORDER)}let Ge=Eo((Te,pe)=>{let{X:Qe,Y:Ue,Z:Fe}=Te;if(X.eql(Fe,X.ONE))return{x:Qe,y:Ue};let me=Te.is0();pe==null&&(pe=me?X.ONE:X.inv(Fe));let Ye=X.mul(Qe,pe),Oe=X.mul(Ue,pe),Le=X.mul(Fe,pe);if(me)return{x:X.ZERO,y:X.ZERO};if(!X.eql(Le,X.ONE))throw new Error("invZ was invalid");return{x:Ye,y:Oe}}),ke=Eo(Te=>{if(Te.is0()){if(_.allowInfinityPoint&&!X.is0(Te.Y))return;throw new Error("bad point: ZERO")}let{x:pe,y:Qe}=Te.toAffine();if(!X.isValid(pe)||!X.isValid(Qe))throw new Error("bad point: x or y not field elements");if(!He(pe,Qe))throw new Error("bad point: equation left != right");if(!Te.isTorsionFree())throw new Error("bad point: not in prime-order subgroup");return!0});function Pe(Te,pe,Qe,Ue,Fe){return Qe=new qe(X.mul(Qe.X,Te),Qe.Y,Qe.Z),pe=Sn(Ue,pe),Qe=Sn(Fe,Qe),pe.add(Qe)}let Je=class Je{constructor(pe,Qe,Ue){he(this,"X");he(this,"Y");he(this,"Z");this.X=we("x",pe),this.Y=we("y",Qe,!0),this.Z=we("z",Ue),Object.freeze(this)}static CURVE(){return re}static fromAffine(pe){let{x:Qe,y:Ue}=pe||{};if(!pe||!X.isValid(Qe)||!X.isValid(Ue))throw new Error("invalid affine point");if(pe instanceof Je)throw new Error("projective point not allowed");return X.is0(Qe)&&X.is0(Ue)?Je.ZERO:new Je(Qe,Ue,X.ONE)}static fromBytes(pe){let Qe=Je.fromAffine(Be(tt(pe,void 0,"point")));return Qe.assertValidity(),Qe}static fromHex(pe){return Je.fromBytes(pr(pe))}get x(){return this.toAffine().x}get y(){return this.toAffine().y}precompute(pe=8,Qe=!0){return At.createCache(this,pe),Qe||this.multiply(wi),this}assertValidity(){ke(this)}hasEvenY(){let{y:pe}=this.toAffine();if(!X.isOdd)throw new Error("Field doesn't support isOdd");return!X.isOdd(pe)}equals(pe){Me(pe);let{X:Qe,Y:Ue,Z:Fe}=this,{X:me,Y:Ye,Z:Oe}=pe,Le=X.eql(X.mul(Qe,Oe),X.mul(me,Fe)),_e=X.eql(X.mul(Ue,Oe),X.mul(Ye,Fe));return Le&&_e}negate(){return new Je(this.X,X.neg(this.Y),this.Z)}double(){let{a:pe,b:Qe}=re,Ue=X.mul(Qe,wi),{X:Fe,Y:me,Z:Ye}=this,Oe=X.ZERO,Le=X.ZERO,_e=X.ZERO,We=X.mul(Fe,Fe),ct=X.mul(me,me),et=X.mul(Ye,Ye),je=X.mul(Fe,me);return je=X.add(je,je),_e=X.mul(Fe,Ye),_e=X.add(_e,_e),Oe=X.mul(pe,_e),Le=X.mul(Ue,et),Le=X.add(Oe,Le),Oe=X.sub(ct,Le),Le=X.add(ct,Le),Le=X.mul(Oe,Le),Oe=X.mul(je,Oe),_e=X.mul(Ue,_e),et=X.mul(pe,et),je=X.sub(We,et),je=X.mul(pe,je),je=X.add(je,_e),_e=X.add(We,We),We=X.add(_e,We),We=X.add(We,et),We=X.mul(We,je),Le=X.add(Le,We),et=X.mul(me,Ye),et=X.add(et,et),We=X.mul(et,je),Oe=X.sub(Oe,We),_e=X.mul(et,ct),_e=X.add(_e,_e),_e=X.add(_e,_e),new Je(Oe,Le,_e)}add(pe){Me(pe);let{X:Qe,Y:Ue,Z:Fe}=this,{X:me,Y:Ye,Z:Oe}=pe,Le=X.ZERO,_e=X.ZERO,We=X.ZERO,ct=re.a,et=X.mul(re.b,wi),je=X.mul(Qe,me),It=X.mul(Ue,Ye),ot=X.mul(Fe,Oe),bt=X.add(Qe,Ue),rt=X.add(me,Ye);bt=X.mul(bt,rt),rt=X.add(je,It),bt=X.sub(bt,rt),rt=X.add(Qe,Fe);let lt=X.add(me,Oe);return rt=X.mul(rt,lt),lt=X.add(je,ot),rt=X.sub(rt,lt),lt=X.add(Ue,Fe),Le=X.add(Ye,Oe),lt=X.mul(lt,Le),Le=X.add(It,ot),lt=X.sub(lt,Le),We=X.mul(ct,rt),Le=X.mul(et,ot),We=X.add(Le,We),Le=X.sub(It,We),We=X.add(It,We),_e=X.mul(Le,We),It=X.add(je,je),It=X.add(It,je),ot=X.mul(ct,ot),rt=X.mul(et,rt),It=X.add(It,ot),ot=X.sub(je,ot),ot=X.mul(ct,ot),rt=X.add(rt,ot),je=X.mul(It,rt),_e=X.add(_e,je),je=X.mul(lt,rt),Le=X.mul(bt,Le),Le=X.sub(Le,je),je=X.mul(bt,It),We=X.mul(lt,We),We=X.add(We,je),new Je(Le,_e,We)}subtract(pe){return this.add(pe.negate())}is0(){return this.equals(Je.ZERO)}multiply(pe){let{endo:Qe}=_;if(!ee.isValidNot0(pe))throw new Error("invalid scalar: out of range");let Ue,Fe,me=Ye=>At.cached(this,Ye,Oe=>So(Je,Oe));if(Qe){let{k1neg:Ye,k1:Oe,k2neg:Le,k2:_e}=Ve(pe),{p:We,f:ct}=me(Oe),{p:et,f:je}=me(_e);Fe=ct.add(je),Ue=Pe(Qe.beta,We,et,Ye,Le)}else{let{p:Ye,f:Oe}=me(pe);Ue=Ye,Fe=Oe}return So(Je,[Ue,Fe])[0]}multiplyUnsafe(pe){let{endo:Qe}=_,Ue=this;if(!ee.isValid(pe))throw new Error("invalid scalar: out of range");if(pe===GA||Ue.is0())return Je.ZERO;if(pe===Zr)return Ue;if(At.hasCache(this))return this.multiply(pe);if(Qe){let{k1neg:Fe,k1:me,k2neg:Ye,k2:Oe}=Ve(pe),{p1:Le,p2:_e}=Na(Je,Ue,me,Oe);return Pe(Qe.beta,Le,_e,Fe,Ye)}else return At.unsafe(Ue,pe)}toAffine(pe){return Ge(this,pe)}isTorsionFree(){let{isTorsionFree:pe}=_;return ie===Zr?!0:pe?pe(Je,this):At.unsafe(this,ae).is0()}clearCofactor(){let{clearCofactor:pe}=_;return ie===Zr?this:pe?pe(Je,this):this.multiplyUnsafe(ie)}isSmallOrder(){return this.multiplyUnsafe(ie).is0()}toBytes(pe=!0){return bn(pe,"isCompressed"),this.assertValidity(),$(Je,this,pe)}toHex(pe=!0){return Qr(this.toBytes(pe))}toString(){return`<Point ${this.is0()?"ZERO":this.toHex()}>`}};he(Je,"BASE",new Je(re.Gx,re.Gy,X.ONE)),he(Je,"ZERO",new Je(X.ZERO,X.ONE,X.ZERO)),he(Je,"Fp",X),he(Je,"Fn",ee);let qe=Je,nt=ee.BITS,At=new xi(qe,_.endo?Math.ceil(nt/2):nt);return qe.BASE.precompute(8),qe}function Ja(z){return Uint8Array.of(z?2:3)}function Ta(z,_){return{secretKey:_.BYTES,publicKey:1+z.BYTES,publicKeyUncompressed:1+2*z.BYTES,publicKeyHasPrefix:!0,signature:2*_.BYTES}}function lf(z,_={}){let{Fn:Z}=z,X=_.randomBytes||li,ee=Object.assign(Ta(z.Fp,Z),{seed:xo(Z.ORDER)});function re($){try{let Be=Z.fromBytes($);return Z.isValidNot0(Be)}catch{return!1}}function ie($,Be){let{publicKey:xe,publicKeyUncompressed:He}=ee;try{let Se=$.length;return Be===!0&&Se!==xe||Be===!1&&Se!==He?!1:!!z.fromBytes($)}catch{return!1}}function ae($=X(ee.seed)){return bo(tt($,ee.seed,"seed"),Z.ORDER)}function fe($,Be=!0){return z.BASE.multiply(Z.fromBytes($)).toBytes(Be)}function le($){let{secretKey:Be,publicKey:xe,publicKeyUncompressed:He}=ee;if(!xn($)||"_lengths"in Z&&Z._lengths||Be===xe)return;let Se=tt($,void 0,"key").length;return Se===xe||Se===He}function Ce($,Be,xe=!0){if(le($)===!0)throw new Error("first arg must be private key");if(le(Be)===!1)throw new Error("second arg must be public key");let He=Z.fromBytes($);return z.fromBytes(Be).multiply(He).toBytes(xe)}let ce={isValidSecretKey:re,isValidPublicKey:ie,randomSecretKey:ae},Ee=Ra(ae,fe);return Object.freeze({getPublicKey:fe,getSharedSecret:Ce,keygen:Ee,Point:z,utils:ce,lengths:ee})}function _a(z,_,Z={}){hi(_),Dn(Z,{},{hmac:"function",lowS:"boolean",randomBytes:"function",bits2int:"function",bits2int_modN:"function"}),Z=Object.assign({},Z);let X=Z.randomBytes||li,ee=Z.hmac||((pe,Qe)=>Ho(_,pe,Qe)),{Fp:re,Fn:ie}=z,{ORDER:ae,BITS:fe}=ie,{keygen:le,getPublicKey:Ce,getSharedSecret:ce,utils:Ee,lengths:$}=lf(z,Z),Be={prehash:!0,lowS:typeof Z.lowS=="boolean"?Z.lowS:!0,format:"compact",extraEntropy:!1},xe=ae*qa<re.ORDER;function He(pe){let Qe=ae>>Zr;return pe>Qe}function Se(pe,Qe){if(!ie.isValidNot0(Qe))throw new Error(`invalid signature ${pe}: out of range 1..Point.Fn.ORDER`);return Qe}function Re(){if(xe)throw new Error('"recovered" sig type is not supported for cofactor >2 curves')}function we(pe,Qe){Go(Qe);let Ue=$.signature,Fe=Qe==="compact"?Ue:Qe==="recovered"?Ue+1:void 0;return tt(pe,Fe)}class Me{constructor(Qe,Ue,Fe){he(this,"r");he(this,"s");he(this,"recovery");if(this.r=Se("r",Qe),this.s=Se("s",Ue),Fe!=null){if(Re(),![0,1,2,3].includes(Fe))throw new Error("invalid recovery id");this.recovery=Fe}Object.freeze(this)}static fromBytes(Qe,Ue=Be.format){we(Qe,Ue);let Fe;if(Ue==="der"){let{r:Le,s:_e}=PA.toSig(tt(Qe));return new Me(Le,_e)}Ue==="recovered"&&(Fe=Qe[0],Ue="compact",Qe=Qe.subarray(1));let me=$.signature/2,Ye=Qe.subarray(0,me),Oe=Qe.subarray(me,me*2);return new Me(ie.fromBytes(Ye),ie.fromBytes(Oe),Fe)}static fromHex(Qe,Ue){return this.fromBytes(pr(Qe),Ue)}assertRecovery(){let{recovery:Qe}=this;if(Qe==null)throw new Error("invalid recovery id: must be present");return Qe}addRecoveryBit(Qe){return new Me(this.r,this.s,Qe)}recoverPublicKey(Qe){let{r:Ue,s:Fe}=this,me=this.assertRecovery(),Ye=me===2||me===3?Ue+ae:Ue;if(!re.isValid(Ye))throw new Error("invalid recovery id: sig.r+curve.n != R.x");let Oe=re.toBytes(Ye),Le=z.fromBytes(zt(Ja((me&1)===0),Oe)),_e=ie.inv(Ye),We=Ge(tt(Qe,void 0,"msgHash")),ct=ie.create(-We*_e),et=ie.create(Fe*_e),je=z.BASE.multiplyUnsafe(ct).add(Le.multiplyUnsafe(et));if(je.is0())throw new Error("invalid recovery: point at infinify");return je.assertValidity(),je}hasHighS(){return He(this.s)}toBytes(Qe=Be.format){if(Go(Qe),Qe==="der")return pr(PA.hexFromSig(this));let{r:Ue,s:Fe}=this,me=ie.toBytes(Ue),Ye=ie.toBytes(Fe);return Qe==="recovered"?(Re(),zt(Uint8Array.of(this.assertRecovery()),me,Ye)):zt(me,Ye)}toHex(Qe){return Qr(this.toBytes(Qe))}}let Ve=Z.bits2int||function(Qe){if(Qe.length>8192)throw new Error("input is too large");let Ue=Vr(Qe),Fe=Qe.length*8-fe;return Fe>0?Ue>>BigInt(Fe):Ue},Ge=Z.bits2int_modN||function(Qe){return ie.create(Ve(Qe))},ke=mn(fe);function Pe(pe){return Ca("num < 2^"+fe,pe,GA,ke),ie.toBytes(pe)}function qe(pe,Qe){return tt(pe,void 0,"message"),Qe?tt(_(pe),void 0,"prehashed message"):pe}function nt(pe,Qe,Ue){let{lowS:Fe,prehash:me,extraEntropy:Ye}=ko(Ue,Be);pe=qe(pe,me);let Oe=Ge(pe),Le=ie.fromBytes(Qe);if(!ie.isValidNot0(Le))throw new Error("invalid private key");let _e=[Pe(Le),Pe(Oe)];if(Ye!=null&&Ye!==!1){let je=Ye===!0?X($.secretKey):Ye;_e.push(tt(je,void 0,"extraEntropy"))}let We=zt(..._e),ct=Oe;function et(je){let It=Ve(je);if(!ie.isValidNot0(It))return;let ot=ie.inv(It),bt=z.BASE.multiply(It).toAffine(),rt=ie.create(bt.x);if(rt===GA)return;let lt=ie.create(ot*ie.create(ct+rt*Le));if(lt===GA)return;let Ur=(bt.x===rt?0:2)|Number(bt.y&Zr),tA=lt;return Fe&&He(lt)&&(tA=ie.neg(lt),Ur^=1),new Me(rt,tA,xe?void 0:Ur)}return{seed:We,k2sig:et}}function At(pe,Qe,Ue={}){let{seed:Fe,k2sig:me}=nt(pe,Qe,Ue);return Ea(_.outputLen,ie.BYTES,ee)(Fe,me).toBytes(Ue.format)}function Je(pe,Qe,Ue,Fe={}){let{lowS:me,prehash:Ye,format:Oe}=ko(Fe,Be);if(Ue=tt(Ue,void 0,"publicKey"),Qe=qe(Qe,Ye),!xn(pe)){let Le=pe instanceof Me?", use sig.toBytes()":"";throw new Error("verify expects Uint8Array signature"+Le)}we(pe,Oe);try{let Le=Me.fromBytes(pe,Oe),_e=z.fromBytes(Ue);if(me&&Le.hasHighS())return!1;let{r:We,s:ct}=Le,et=Ge(Qe),je=ie.inv(ct),It=ie.create(et*je),ot=ie.create(We*je),bt=z.BASE.multiplyUnsafe(It).add(_e.multiplyUnsafe(ot));return bt.is0()?!1:ie.create(bt.x)===We}catch{return!1}}function Te(pe,Qe,Ue={}){let{prehash:Fe}=ko(Ue,Be);return Qe=qe(Qe,Fe),Me.fromBytes(pe,"recovered").recoverPublicKey(Qe).toBytes()}return Object.freeze({keygen:le,getPublicKey:Ce,getSharedSecret:ce,utils:Ee,lengths:$,Point:z,sign:At,verify:Je,recoverPublicKey:Te,Signature:Me,hash:_})}var Ma,vo,PA,GA,Zr,qa,wi,df,ja=Xe(()=>{be();Ka();xr();yi();Ya();pi();Ma=(z,_)=>(z+(z>=0?_:-_)/qa)/_;vo=class extends Error{constructor(_=""){super(_)}},PA={Err:vo,_tlv:{encode:(z,_)=>{let{Err:Z}=PA;if(z<0||z>256)throw new Z("tlv.encode: wrong tag");if(_.length&1)throw new Z("tlv.encode: unpadded data");let X=_.length/2,ee=wn(X);if(ee.length/2&128)throw new Z("tlv.encode: long form length too big");let re=X>127?wn(ee.length/2|128):"";return wn(z)+re+ee+_},decode(z,_){let{Err:Z}=PA,X=0;if(z<0||z>256)throw new Z("tlv.encode: wrong tag");if(_.length<2||_[X++]!==z)throw new Z("tlv.decode: wrong tlv");let ee=_[X++],re=!!(ee&128),ie=0;if(!re)ie=ee;else{let fe=ee&127;if(!fe)throw new Z("tlv.decode(long): indefinite length not supported");if(fe>4)throw new Z("tlv.decode(long): byte length is too big");let le=_.subarray(X,X+fe);if(le.length!==fe)throw new Z("tlv.decode: length bytes not complete");if(le[0]===0)throw new Z("tlv.decode(long): zero leftmost byte");for(let Ce of le)ie=ie<<8|Ce;if(X+=fe,ie<128)throw new Z("tlv.decode(long): not minimal encoding")}let ae=_.subarray(X,X+ie);if(ae.length!==ie)throw new Z("tlv.decode: wrong value length");return{v:ae,l:_.subarray(X+ie)}}},_int:{encode(z){let{Err:_}=PA;if(z<GA)throw new _("integer: negative integers are not allowed");let Z=wn(z);if(Number.parseInt(Z[0],16)&8&&(Z="00"+Z),Z.length&1)throw new _("unexpected DER parsing assertion: unpadded hex");return Z},decode(z){let{Err:_}=PA;if(z[0]&128)throw new _("invalid signature integer: negative");if(z[0]===0&&!(z[1]&128))throw new _("invalid signature integer: unnecessary leading zero");return Vr(z)}},toSig(z){let{Err:_,_int:Z,_tlv:X}=PA,ee=tt(z,void 0,"signature"),{v:re,l:ie}=X.decode(48,ee);if(ie.length)throw new _("invalid signature: left bytes after parsing");let{v:ae,l:fe}=X.decode(2,re),{v:le,l:Ce}=X.decode(2,fe);if(Ce.length)throw new _("invalid signature: left bytes after parsing");return{r:Z.decode(ae),s:Z.decode(le)}},hexFromSig(z){let{_tlv:_,_int:Z}=PA,X=_.encode(2,Z.encode(z.r)),ee=_.encode(2,Z.encode(z.s)),re=X+ee;return _.encode(48,re)}},GA=BigInt(0),Zr=BigInt(1),qa=BigInt(2),wi=BigInt(3),df=BigInt(4)});function Cf(z){let _=Lo.p,Z=BigInt(3),X=BigInt(6),ee=BigInt(11),re=BigInt(22),ie=BigInt(23),ae=BigInt(44),fe=BigInt(88),le=z*z*z%_,Ce=le*le*z%_,ce=Ht(Ce,Z,_)*Ce%_,Ee=Ht(ce,Z,_)*Ce%_,$=Ht(Ee,Pa,_)*le%_,Be=Ht($,ee,_)*$%_,xe=Ht(Be,re,_)*Be%_,He=Ht(xe,ae,_)*xe%_,Se=Ht(He,fe,_)*He%_,Re=Ht(Se,ae,_)*xe%_,we=Ht(Re,Z,_)*Ce%_,Me=Ht(we,ie,_)*Be%_,Ve=Ht(Me,X,_)*le%_,Ge=Ht(Ve,Pa,_);if(!Uo.eql(Uo.sqr(Ge),z))throw new Error("Cannot find square root");return Ge}var Lo,Bf,Pa,Uo,Ef,mr,Va=Xe(()=>{be();da();pi();ja();Lo={p:BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),n:BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),h:BigInt(1),a:BigInt(0),b:BigInt(7),Gx:BigInt("0x79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798"),Gy:BigInt("0x483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8")},Bf={beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),basises:[[BigInt("0x3086d221a7d46bcde86c90e49284eb15"),-BigInt("0xe4437ed6010e88286f547fa90abfe4c3")],[BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),BigInt("0x3086d221a7d46bcde86c90e49284eb15")]]},Pa=BigInt(2);Uo=Wr(Lo.p,{sqrt:Cf}),Ef=Oa(Lo,{Fp:Uo,endo:Bf}),mr=_a(Ef,ha)});function yf(z){return z instanceof Uint8Array||ArrayBuffer.isView(z)&&z.constructor.name==="Uint8Array"}function Wa(z,_=""){if(!Number.isSafeInteger(z)||z<0){let Z=_&&`"${_}" `;throw new Error(`${Z}expected integer >= 0, got ${z}`)}}function kt(z,_,Z=""){let X=yf(z),ee=z?.length,re=_!==void 0;if(!X||re&&ee!==_){let ie=Z&&`"${Z}" `,ae=re?` of length ${_}`:"",fe=X?`length=${ee}`:`type=${typeof z}`;throw new Error(ie+"expected Uint8Array"+ae+", got "+fe)}return z}function za(z){if(typeof z!="function"||typeof z.create!="function")throw new Error("Hash must wrapped by utils.createHasher");Wa(z.outputLen),Wa(z.blockLen)}function Xr(z,_=!0){if(z.destroyed)throw new Error("Hash instance has been destroyed");if(_&&z.finished)throw new Error("Hash#digest() has already been called")}function Za(z,_){kt(z,void 0,"digestInto() output");let Z=_.outputLen;if(z.length<Z)throw new Error('"digestInto() output" expected to be of length >='+Z)}function Lt(...z){for(let _=0;_<z.length;_++)z[_].fill(0)}function VA(z){return new DataView(z.buffer,z.byteOffset,z.byteLength)}function Xt(z,_){return z<<32-_|z>>>_}function Hn(z,_){return z<<_|z>>>32-_>>>0}function kn(...z){let _=0;for(let X=0;X<z.length;X++){let ee=z[X];kt(ee),_+=ee.length}let Z=new Uint8Array(_);for(let X=0,ee=0;X<z.length;X++){let re=z[X];Z.set(re,ee),ee+=re.length}return Z}function Gn(z,_={}){let Z=(ee,re)=>z(re).update(ee).digest(),X=z(void 0);return Z.outputLen=X.outputLen,Z.blockLen=X.blockLen,Z.create=ee=>z(ee),Object.assign(Z,_),Object.freeze(Z)}var No,$r=Xe(()=>{be();No=z=>({oid:Uint8Array.from([6,9,96,134,72,1,101,3,4,2,z])})});var mi,Di,Xa=Xe(()=>{be();$r();mi=class{constructor(_,Z){he(this,"oHash");he(this,"iHash");he(this,"blockLen");he(this,"outputLen");he(this,"finished",!1);he(this,"destroyed",!1);if(za(_),kt(Z,void 0,"key"),this.iHash=_.create(),typeof this.iHash.update!="function")throw new Error("Expected instance of class which extends utils.Hash");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;let X=this.blockLen,ee=new Uint8Array(X);ee.set(Z.length>X?_.create().update(Z).digest():Z);for(let re=0;re<ee.length;re++)ee[re]^=54;this.iHash.update(ee),this.oHash=_.create();for(let re=0;re<ee.length;re++)ee[re]^=106;this.oHash.update(ee),Lt(ee)}update(_){return Xr(this),this.iHash.update(_),this}digestInto(_){Xr(this),kt(_,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:Z,iHash:X,finished:ee,destroyed:re,blockLen:ie,outputLen:ae}=this;return _=_,_.finished=ee,_.destroyed=re,_.blockLen=ie,_.outputLen=ae,_.oHash=Z._cloneInto(_.oHash),_.iHash=X._cloneInto(_.iHash),_}clone(){return this._cloneInto()}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}},Di=(z,_,Z)=>new mi(z,_).update(Z).digest();Di.create=(z,_)=>new mi(z,_)});function Fo(z,_,Z){return z&_^~z&Z}function Ro(z,_,Z){return z&_^z&Z^_&Z}var Dr,vA,pt,Yo=Xe(()=>{be();$r();Dr=class{constructor(_,Z,X,ee){he(this,"blockLen");he(this,"outputLen");he(this,"padOffset");he(this,"isLE");he(this,"buffer");he(this,"view");he(this,"finished",!1);he(this,"length",0);he(this,"pos",0);he(this,"destroyed",!1);this.blockLen=_,this.outputLen=Z,this.padOffset=X,this.isLE=ee,this.buffer=new Uint8Array(_),this.view=VA(this.buffer)}update(_){Xr(this),kt(_);let{view:Z,buffer:X,blockLen:ee}=this,re=_.length;for(let ie=0;ie<re;){let ae=Math.min(ee-this.pos,re-ie);if(ae===ee){let fe=VA(_);for(;ee<=re-ie;ie+=ee)this.process(fe,ie);continue}X.set(_.subarray(ie,ie+ae),this.pos),this.pos+=ae,ie+=ae,this.pos===ee&&(this.process(Z,0),this.pos=0)}return this.length+=_.length,this.roundClean(),this}digestInto(_){Xr(this),Za(_,this),this.finished=!0;let{buffer:Z,view:X,blockLen:ee,isLE:re}=this,{pos:ie}=this;Z[ie++]=128,Lt(this.buffer.subarray(ie)),this.padOffset>ee-ie&&(this.process(X,0),ie=0);for(let ce=ie;ce<ee;ce++)Z[ce]=0;X.setBigUint64(ee-8,BigInt(this.length*8),re),this.process(X,0);let ae=VA(_),fe=this.outputLen;if(fe%4)throw new Error("_sha2: outputLen must be aligned to 32bit");let le=fe/4,Ce=this.get();if(le>Ce.length)throw new Error("_sha2: outputLen bigger than state");for(let ce=0;ce<le;ce++)ae.setUint32(4*ce,Ce[ce],re)}digest(){let{buffer:_,outputLen:Z}=this;this.digestInto(_);let X=_.slice(0,Z);return this.destroy(),X}_cloneInto(_){_||(_=new this.constructor),_.set(...this.get());let{blockLen:Z,buffer:X,length:ee,finished:re,destroyed:ie,pos:ae}=this;return _.destroyed=ie,_.finished=re,_.length=ee,_.pos=ae,ee%Z&&_.buffer.set(X),_}clone(){return this._cloneInto()}},vA=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),pt=Uint32Array.from([1779033703,4089235720,3144134277,2227873595,1013904242,4271175723,2773480762,1595750129,1359893119,2917565137,2600822924,725511199,528734635,4215389547,1541459225,327033209])});function $a(z,_,Z,X){return z===0?_^Z^X:z===1?_&Z|~_&X:z===2?(_|~Z)^X:z===3?_&X|Z&~X:_^(Z|~X)}var Qf,ec,pf,tc,Ac,rc,nc,xf,bf,wf,mf,Si,Ko,ic,oc=Xe(()=>{be();Yo();$r();Qf=Uint8Array.from([7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8]),ec=Uint8Array.from(new Array(16).fill(0).map((z,_)=>_)),pf=ec.map(z=>(9*z+5)%16),tc=(()=>{let Z=[[ec],[pf]];for(let X=0;X<4;X++)for(let ee of Z)ee.push(ee[X].map(re=>Qf[re]));return Z})(),Ac=tc[0],rc=tc[1],nc=[[11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8],[12,13,11,15,6,9,9,7,12,15,11,13,7,8,7,7],[13,15,14,11,7,7,6,8,13,14,13,12,5,5,6,9],[14,11,12,14,8,6,5,5,15,12,15,14,9,9,8,6],[15,12,13,13,9,5,8,6,14,11,12,11,8,6,5,5]].map(z=>Uint8Array.from(z)),xf=Ac.map((z,_)=>z.map(Z=>nc[_][Z])),bf=rc.map((z,_)=>z.map(Z=>nc[_][Z])),wf=Uint32Array.from([0,1518500249,1859775393,2400959708,2840853838]),mf=Uint32Array.from([1352829926,1548603684,1836072691,2053994217,0]);Si=new Uint32Array(16),Ko=class extends Dr{constructor(){super(64,20,8,!0);he(this,"h0",1732584193);he(this,"h1",-271733879);he(this,"h2",-1732584194);he(this,"h3",271733878);he(this,"h4",-1009589776)}get(){let{h0:Z,h1:X,h2:ee,h3:re,h4:ie}=this;return[Z,X,ee,re,ie]}set(Z,X,ee,re,ie){this.h0=Z|0,this.h1=X|0,this.h2=ee|0,this.h3=re|0,this.h4=ie|0}process(Z,X){for(let Be=0;Be<16;Be++,X+=4)Si[Be]=Z.getUint32(X,!0);let ee=this.h0|0,re=ee,ie=this.h1|0,ae=ie,fe=this.h2|0,le=fe,Ce=this.h3|0,ce=Ce,Ee=this.h4|0,$=Ee;for(let Be=0;Be<5;Be++){let xe=4-Be,He=wf[Be],Se=mf[Be],Re=Ac[Be],we=rc[Be],Me=xf[Be],Ve=bf[Be];for(let Ge=0;Ge<16;Ge++){let ke=Hn(ee+$a(Be,ie,fe,Ce)+Si[Re[Ge]]+He,Me[Ge])+Ee|0;ee=Ee,Ee=Ce,Ce=Hn(fe,10)|0,fe=ie,ie=ke}for(let Ge=0;Ge<16;Ge++){let ke=Hn(re+$a(xe,ae,le,ce)+Si[we[Ge]]+Se,Ve[Ge])+$|0;re=$,$=ce,ce=Hn(le,10)|0,le=ae,ae=ke}}this.set(this.h1+fe+ce|0,this.h2+Ce+$|0,this.h3+Ee+re|0,this.h4+ee+ae|0,this.h0+ie+le|0)}roundClean(){Lt(Si)}destroy(){this.destroyed=!0,Lt(this.buffer),this.set(0,0,0,0,0)}},ic=Gn(()=>new Ko)});function Df(z,_=!1){return _?{h:Number(z&Hi),l:Number(z>>sc&Hi)}:{h:Number(z>>sc&Hi)|0,l:Number(z&Hi)|0}}function ac(z,_=!1){let Z=z.length,X=new Uint32Array(Z),ee=new Uint32Array(Z);for(let re=0;re<Z;re++){let{h:ie,l:ae}=Df(z[re],_);[X[re],ee[re]]=[ie,ae]}return[X,ee]}function fA(z,_,Z,X){let ee=(_>>>0)+(X>>>0);return{h:z+Z+(ee/2**32|0)|0,l:ee|0}}var Hi,sc,Mo,qo,Sr,Hr,vn,Un,cc,gc,fc,uc,Ic,hc,dc=Xe(()=>{be();Hi=BigInt(4294967295),sc=BigInt(32);Mo=(z,_,Z)=>z>>>Z,qo=(z,_,Z)=>z<<32-Z|_>>>Z,Sr=(z,_,Z)=>z>>>Z|_<<32-Z,Hr=(z,_,Z)=>z<<32-Z|_>>>Z,vn=(z,_,Z)=>z<<64-Z|_>>>Z-32,Un=(z,_,Z)=>z>>>Z-32|_<<64-Z;cc=(z,_,Z)=>(z>>>0)+(_>>>0)+(Z>>>0),gc=(z,_,Z,X)=>_+Z+X+(z/2**32|0)|0,fc=(z,_,Z,X)=>(z>>>0)+(_>>>0)+(Z>>>0)+(X>>>0),uc=(z,_,Z,X,ee)=>_+Z+X+ee+(z/2**32|0)|0,Ic=(z,_,Z,X,ee)=>(z>>>0)+(_>>>0)+(Z>>>0)+(X>>>0)+(ee>>>0),hc=(z,_,Z,X,ee,re)=>_+Z+X+ee+re+(z/2**32|0)|0});var Hf,WA,Oo,Jo,lc,kf,Gf,zA,ZA,To,_o,jo,Po,Bc=Xe(()=>{be();Yo();dc();$r();Hf=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]),WA=new Uint32Array(64),Oo=class extends Dr{constructor(_){super(64,_,8,!1)}get(){let{A:_,B:Z,C:X,D:ee,E:re,F:ie,G:ae,H:fe}=this;return[_,Z,X,ee,re,ie,ae,fe]}set(_,Z,X,ee,re,ie,ae,fe){this.A=_|0,this.B=Z|0,this.C=X|0,this.D=ee|0,this.E=re|0,this.F=ie|0,this.G=ae|0,this.H=fe|0}process(_,Z){for(let ce=0;ce<16;ce++,Z+=4)WA[ce]=_.getUint32(Z,!1);for(let ce=16;ce<64;ce++){let Ee=WA[ce-15],$=WA[ce-2],Be=Xt(Ee,7)^Xt(Ee,18)^Ee>>>3,xe=Xt($,17)^Xt($,19)^$>>>10;WA[ce]=xe+WA[ce-7]+Be+WA[ce-16]|0}let{A:X,B:ee,C:re,D:ie,E:ae,F:fe,G:le,H:Ce}=this;for(let ce=0;ce<64;ce++){let Ee=Xt(ae,6)^Xt(ae,11)^Xt(ae,25),$=Ce+Ee+Fo(ae,fe,le)+Hf[ce]+WA[ce]|0,xe=(Xt(X,2)^Xt(X,13)^Xt(X,22))+Ro(X,ee,re)|0;Ce=le,le=fe,fe=ae,ae=ie+$|0,ie=re,re=ee,ee=X,X=$+xe|0}X=X+this.A|0,ee=ee+this.B|0,re=re+this.C|0,ie=ie+this.D|0,ae=ae+this.E|0,fe=fe+this.F|0,le=le+this.G|0,Ce=Ce+this.H|0,this.set(X,ee,re,ie,ae,fe,le,Ce)}roundClean(){Lt(WA)}destroy(){this.set(0,0,0,0,0,0,0,0),Lt(this.buffer)}},Jo=class extends Oo{constructor(){super(32);he(this,"A",vA[0]|0);he(this,"B",vA[1]|0);he(this,"C",vA[2]|0);he(this,"D",vA[3]|0);he(this,"E",vA[4]|0);he(this,"F",vA[5]|0);he(this,"G",vA[6]|0);he(this,"H",vA[7]|0)}},lc=ac(["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(z=>BigInt(z))),kf=lc[0],Gf=lc[1],zA=new Uint32Array(80),ZA=new Uint32Array(80),To=class extends Dr{constructor(_){super(128,_,16,!1)}get(){let{Ah:_,Al:Z,Bh:X,Bl:ee,Ch:re,Cl:ie,Dh:ae,Dl:fe,Eh:le,El:Ce,Fh:ce,Fl:Ee,Gh:$,Gl:Be,Hh:xe,Hl:He}=this;return[_,Z,X,ee,re,ie,ae,fe,le,Ce,ce,Ee,$,Be,xe,He]}set(_,Z,X,ee,re,ie,ae,fe,le,Ce,ce,Ee,$,Be,xe,He){this.Ah=_|0,this.Al=Z|0,this.Bh=X|0,this.Bl=ee|0,this.Ch=re|0,this.Cl=ie|0,this.Dh=ae|0,this.Dl=fe|0,this.Eh=le|0,this.El=Ce|0,this.Fh=ce|0,this.Fl=Ee|0,this.Gh=$|0,this.Gl=Be|0,this.Hh=xe|0,this.Hl=He|0}process(_,Z){for(let we=0;we<16;we++,Z+=4)zA[we]=_.getUint32(Z),ZA[we]=_.getUint32(Z+=4);for(let we=16;we<80;we++){let Me=zA[we-15]|0,Ve=ZA[we-15]|0,Ge=Sr(Me,Ve,1)^Sr(Me,Ve,8)^Mo(Me,Ve,7),ke=Hr(Me,Ve,1)^Hr(Me,Ve,8)^qo(Me,Ve,7),Pe=zA[we-2]|0,qe=ZA[we-2]|0,nt=Sr(Pe,qe,19)^vn(Pe,qe,61)^Mo(Pe,qe,6),At=Hr(Pe,qe,19)^Un(Pe,qe,61)^qo(Pe,qe,6),Je=fc(ke,At,ZA[we-7],ZA[we-16]),Te=uc(Je,Ge,nt,zA[we-7],zA[we-16]);zA[we]=Te|0,ZA[we]=Je|0}let{Ah:X,Al:ee,Bh:re,Bl:ie,Ch:ae,Cl:fe,Dh:le,Dl:Ce,Eh:ce,El:Ee,Fh:$,Fl:Be,Gh:xe,Gl:He,Hh:Se,Hl:Re}=this;for(let we=0;we<80;we++){let Me=Sr(ce,Ee,14)^Sr(ce,Ee,18)^vn(ce,Ee,41),Ve=Hr(ce,Ee,14)^Hr(ce,Ee,18)^Un(ce,Ee,41),Ge=ce&$^~ce&xe,ke=Ee&Be^~Ee&He,Pe=Ic(Re,Ve,ke,Gf[we],ZA[we]),qe=hc(Pe,Se,Me,Ge,kf[we],zA[we]),nt=Pe|0,At=Sr(X,ee,28)^vn(X,ee,34)^vn(X,ee,39),Je=Hr(X,ee,28)^Un(X,ee,34)^Un(X,ee,39),Te=X&re^X&ae^re&ae,pe=ee&ie^ee&fe^ie&fe;Se=xe|0,Re=He|0,xe=$|0,He=Be|0,$=ce|0,Be=Ee|0,{h:ce,l:Ee}=fA(le|0,Ce|0,qe|0,nt|0),le=ae|0,Ce=fe|0,ae=re|0,fe=ie|0,re=X|0,ie=ee|0;let Qe=cc(nt,Je,pe);X=gc(Qe,qe,At,Te),ee=Qe|0}({h:X,l:ee}=fA(this.Ah|0,this.Al|0,X|0,ee|0)),{h:re,l:ie}=fA(this.Bh|0,this.Bl|0,re|0,ie|0),{h:ae,l:fe}=fA(this.Ch|0,this.Cl|0,ae|0,fe|0),{h:le,l:Ce}=fA(this.Dh|0,this.Dl|0,le|0,Ce|0),{h:ce,l:Ee}=fA(this.Eh|0,this.El|0,ce|0,Ee|0),{h:$,l:Be}=fA(this.Fh|0,this.Fl|0,$|0,Be|0),{h:xe,l:He}=fA(this.Gh|0,this.Gl|0,xe|0,He|0),{h:Se,l:Re}=fA(this.Hh|0,this.Hl|0,Se|0,Re|0),this.set(X,ee,re,ie,ae,fe,le,Ce,ce,Ee,$,Be,xe,He,Se,Re)}roundClean(){Lt(zA,ZA)}destroy(){Lt(this.buffer),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}},_o=class extends To{constructor(){super(64);he(this,"Ah",pt[0]|0);he(this,"Al",pt[1]|0);he(this,"Bh",pt[2]|0);he(this,"Bl",pt[3]|0);he(this,"Ch",pt[4]|0);he(this,"Cl",pt[5]|0);he(this,"Dh",pt[6]|0);he(this,"Dl",pt[7]|0);he(this,"Eh",pt[8]|0);he(this,"El",pt[9]|0);he(this,"Fh",pt[10]|0);he(this,"Fl",pt[11]|0);he(this,"Gh",pt[12]|0);he(this,"Gl",pt[13]|0);he(this,"Hh",pt[14]|0);he(this,"Hl",pt[15]|0)}},jo=Gn(()=>new Jo,No(1)),Po=Gn(()=>new _o,No(3))});function ki(z){return z instanceof Uint8Array||ArrayBuffer.isView(z)&&z.constructor.name==="Uint8Array"}function Cc(z,_){return Array.isArray(_)?_.length===0?!0:z?_.every(Z=>typeof Z=="string"):_.every(Z=>Number.isSafeInteger(Z)):!1}function vf(z){if(typeof z!="function")throw new Error("function expected");return!0}function Gi(z,_){if(typeof _!="string")throw new Error(`${z}: string expected`);return!0}function en(z){if(!Number.isSafeInteger(z))throw new Error(`invalid integer: ${z}`)}function vi(z){if(!Array.isArray(z))throw new Error("array expected")}function Ui(z,_){if(!Cc(!0,_))throw new Error(`${z}: array of strings expected`)}function Ec(z,_){if(!Cc(!1,_))throw new Error(`${z}: array of numbers expected`)}function Zo(...z){let _=re=>re,Z=(re,ie)=>ae=>re(ie(ae)),X=z.map(re=>re.encode).reduceRight(Z,_),ee=z.map(re=>re.decode).reduce(Z,_);return{encode:X,decode:ee}}function yc(z){let _=typeof z=="string"?z.split(""):z,Z=_.length;Ui("alphabet",_);let X=new Map(_.map((ee,re)=>[ee,re]));return{encode:ee=>(vi(ee),ee.map(re=>{if(!Number.isSafeInteger(re)||re<0||re>=Z)throw new Error(`alphabet.encode: digit index outside alphabet "${re}". Allowed: ${z}`);return _[re]})),decode:ee=>(vi(ee),ee.map(re=>{Gi("alphabet.decode",re);let ie=X.get(re);if(ie===void 0)throw new Error(`Unknown letter: "${re}". Allowed: ${z}`);return ie}))}}function Qc(z=""){return Gi("join",z),{encode:_=>(Ui("join.decode",_),_.join(z)),decode:_=>(Gi("join.decode",_),_.split(z))}}function Uf(z,_="="){return en(z),Gi("padding",_),{encode(Z){for(Ui("padding.encode",Z);Z.length*z%8;)Z.push(_);return Z},decode(Z){Ui("padding.decode",Z);let X=Z.length;if(X*z%8)throw new Error("padding: invalid, string should have whole number of bytes");for(;X>0&&Z[X-1]===_;X--)if((X-1)*z%8===0)throw new Error("padding: invalid, string has too much padding");return Z.slice(0,X)}}}function Wo(z,_,Z){if(_<2)throw new Error(`convertRadix: invalid from=${_}, base cannot be less than 2`);if(Z<2)throw new Error(`convertRadix: invalid to=${Z}, base cannot be less than 2`);if(vi(z),!z.length)return[];let X=0,ee=[],re=Array.from(z,ae=>{if(en(ae),ae<0||ae>=_)throw new Error(`invalid integer: ${ae}`);return ae}),ie=re.length;for(;;){let ae=0,fe=!0;for(let le=X;le<ie;le++){let Ce=re[le],ce=_*ae,Ee=ce+Ce;if(!Number.isSafeInteger(Ee)||ce/_!==ae||Ee-Ce!==ce)throw new Error("convertRadix: carry overflow");let $=Ee/Z;ae=Ee%Z;let Be=Math.floor($);if(re[le]=Be,!Number.isSafeInteger(Be)||Be*Z+ae!==Ee)throw new Error("convertRadix: carry overflow");if(fe)Be?fe=!1:X=le;else continue}if(ee.push(ae),fe)break}for(let ae=0;ae<z.length-1&&z[ae]===0;ae++)ee.push(0);return ee.reverse()}function zo(z,_,Z,X){if(vi(z),_<=0||_>32)throw new Error(`convertRadix2: wrong from=${_}`);if(Z<=0||Z>32)throw new Error(`convertRadix2: wrong to=${Z}`);if(Li(_,Z)>32)throw new Error(`convertRadix2: carry overflow from=${_} to=${Z} carryBits=${Li(_,Z)}`);let ee=0,re=0,ie=Vo[_],ae=Vo[Z]-1,fe=[];for(let le of z){if(en(le),le>=ie)throw new Error(`convertRadix2: invalid data word=${le} from=${_}`);if(ee=ee<<_|le,re+_>32)throw new Error(`convertRadix2: carry overflow pos=${re} from=${_}`);for(re+=_;re>=Z;re-=Z)fe.push((ee>>re-Z&ae)>>>0);let Ce=Vo[re];if(Ce===void 0)throw new Error("invalid carry");ee&=Ce-1}if(ee=ee<<Z-re&ae,!X&&re>=_)throw new Error("Excess padding");if(!X&&ee>0)throw new Error(`Non-zero padding: ${ee}`);return X&&re>0&&fe.push(ee>>>0),fe}function xc(z){en(z);let _=2**8;return{encode:Z=>{if(!ki(Z))throw new Error("radix.encode input should be Uint8Array");return Wo(Array.from(Z),_,z)},decode:Z=>(Ec("radix.decode",Z),Uint8Array.from(Wo(Z,z,_)))}}function Lf(z,_=!1){if(en(z),z<=0||z>32)throw new Error("radix2: bits should be in (0..32]");if(Li(8,z)>32||Li(z,8)>32)throw new Error("radix2: carry overflow");return{encode:Z=>{if(!ki(Z))throw new Error("radix2.encode input should be Uint8Array");return zo(Array.from(Z),8,z,!_)},decode:Z=>(Ec("radix2.decode",Z),Uint8Array.from(zo(Z,z,8,_)))}}function bc(z,_){return en(z),vf(_),{encode(Z){if(!ki(Z))throw new Error("checksum.encode: input should be Uint8Array");let X=_(Z).slice(0,z),ee=new Uint8Array(Z.length+z);return ee.set(Z),ee.set(X,Z.length),ee},decode(Z){if(!ki(Z))throw new Error("checksum.decode: input should be Uint8Array");let X=Z.slice(0,-z),ee=Z.slice(-z),re=_(X).slice(0,z);for(let ie=0;ie<z;ie++)if(re[ie]!==ee[ie])throw new Error("Invalid checksum");return X}}}var pc,Li,Vo,Ln,Nf,Ff,wc,Xo=Xe(()=>{be();pc=(z,_)=>_===0?z:pc(_,z%_),Li=(z,_)=>z+(_-pc(z,_)),Vo=(()=>{let z=[];for(let _=0;_<40;_++)z.push(2**_);return z})();Ln={alphabet:yc,chain:Zo,checksum:bc,convertRadix:Wo,convertRadix2:zo,radix:xc,radix2:Lf,join:Qc,padding:Uf},Nf=z=>Zo(xc(58),yc(z),Qc("")),Ff=Nf("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"),wc=z=>Zo(bc(4,_=>z(z(_))),Ff)});var Fn,Nn,$o,Rf,es,ts,Yf,Kf,Ni,Fi,mc=Xe(()=>{be();Va();Xa();oc();Bc();$r();Xo();Fn=mr.Point,{Fn:Nn}=Fn,$o=wc(jo),Rf=Uint8Array.from("Bitcoin seed".split(""),z=>z.charCodeAt(0)),es={private:76066276,public:76067358},ts=2147483648,Yf=z=>ic(jo(z)),Kf=z=>VA(z).getUint32(0,!1),Ni=z=>{if(!Number.isSafeInteger(z)||z<0||z>2**32-1)throw new Error("invalid number, should be from 0 to 2**32-1, got "+z);let _=new Uint8Array(4);return VA(_).setUint32(0,z,!1),_},Fi=class z{constructor(_){he(this,"versions");he(this,"depth",0);he(this,"index",0);he(this,"chainCode",null);he(this,"parentFingerprint",0);he(this,"_privateKey");he(this,"_publicKey");he(this,"pubHash");if(!_||typeof _!="object")throw new Error("HDKey.constructor must not be called directly");if(this.versions=_.versions||es,this.depth=_.depth||0,this.chainCode=_.chainCode||null,this.index=_.index||0,this.parentFingerprint=_.parentFingerprint||0,!this.depth&&(this.parentFingerprint||this.index))throw new Error("HDKey: zero depth with non-zero index/parent fingerprint");if(this.depth>255)throw new Error("HDKey: depth exceeds the serializable value 255");if(_.publicKey&&_.privateKey)throw new Error("HDKey: publicKey and privateKey at same time.");if(_.privateKey){if(!mr.utils.isValidSecretKey(_.privateKey))throw new Error("Invalid private key");this._privateKey=_.privateKey,this._publicKey=mr.getPublicKey(_.privateKey,!0)}else if(_.publicKey)this._publicKey=Fn.fromBytes(_.publicKey).toBytes(!0);else throw new Error("HDKey: no public or private key provided");this.pubHash=Yf(this._publicKey)}get fingerprint(){if(!this.pubHash)throw new Error("No publicKey set!");return Kf(this.pubHash)}get identifier(){return this.pubHash}get pubKeyHash(){return this.pubHash}get privateKey(){return this._privateKey||null}get publicKey(){return this._publicKey||null}get privateExtendedKey(){let _=this._privateKey;if(!_)throw new Error("No private key");return $o.encode(this.serialize(this.versions.private,kn(Uint8Array.of(0),_)))}get publicExtendedKey(){if(!this._publicKey)throw new Error("No public key");return $o.encode(this.serialize(this.versions.public,this._publicKey))}static fromMasterSeed(_,Z=es){if(kt(_),8*_.length<128||8*_.length>512)throw new Error("HDKey: seed length must be between 128 and 512 bits; 256 bits is advised, got "+_.length);let X=Di(Po,Rf,_),ee=X.slice(0,32),re=X.slice(32);return new z({versions:Z,chainCode:re,privateKey:ee})}static fromExtendedKey(_,Z=es){let X=$o.decode(_),ee=VA(X),re=ee.getUint32(0,!1),ie={versions:Z,depth:X[4],parentFingerprint:ee.getUint32(5,!1),index:ee.getUint32(9,!1),chainCode:X.slice(13,45)},ae=X.slice(45),fe=ae[0]===0;if(re!==Z[fe?"private":"public"])throw new Error("Version mismatch");return fe?new z({...ie,privateKey:ae.slice(1)}):new z({...ie,publicKey:ae})}static fromJSON(_){return z.fromExtendedKey(_.xpriv)}derive(_){if(!/^[mM]'?/.test(_))throw new Error('Path must start with "m" or "M"');if(/^[mM]'?$/.test(_))return this;let Z=_.replace(/^[mM]'?\//,"").split("/"),X=this;for(let ee of Z){let re=/^(\d+)('?)$/.exec(ee),ie=re&&re[1];if(!re||re.length!==3||typeof ie!="string")throw new Error("invalid child index: "+ee);let ae=+ie;if(!Number.isSafeInteger(ae)||ae>=ts)throw new Error("Invalid index");re[2]==="'"&&(ae+=ts),X=X.deriveChild(ae)}return X}deriveChild(_){if(!this._publicKey||!this.chainCode)throw new Error("No publicKey or chainCode set");let Z=Ni(_);if(_>=ts){let fe=this._privateKey;if(!fe)throw new Error("Could not derive hardened child key");Z=kn(Uint8Array.of(0),fe,Z)}else Z=kn(this._publicKey,Z);let X=Di(Po,this.chainCode,Z),ee=X.slice(0,32),re=X.slice(32);if(!mr.utils.isValidSecretKey(ee))throw new Error("Tweak bigger than curve order");let ie={versions:this.versions,chainCode:re,depth:this.depth+1,parentFingerprint:this.fingerprint,index:_},ae=Nn.fromBytes(ee);try{if(this._privateKey){let fe=Nn.create(Nn.fromBytes(this._privateKey)+ae);if(!Nn.isValidNot0(fe))throw new Error("The tweak was out of range or the resulted private key is invalid");ie.privateKey=Nn.toBytes(fe)}else{let fe=Fn.fromBytes(this._publicKey).add(Fn.BASE.multiply(ae));if(fe.equals(Fn.ZERO))throw new Error("The tweak was equal to negative P, which made the result key invalid");ie.publicKey=fe.toBytes(!0)}return new z(ie)}catch{return this.deriveChild(_+1)}}sign(_){if(!this._privateKey)throw new Error("No privateKey set!");return kt(_,32),mr.sign(_,this._privateKey,{prehash:!1})}verify(_,Z){if(kt(_,32),kt(Z,64),!this._publicKey)throw new Error("No publicKey set!");return mr.verify(Z,_,this._publicKey,{prehash:!1})}wipePrivateData(){return this._privateKey&&(this._privateKey.fill(0),this._privateKey=void 0),this}toJSON(){return{xpriv:this.privateExtendedKey,xpub:this.publicExtendedKey}}serialize(_,Z){if(!this.chainCode)throw new Error("No chainCode set");return kt(Z,33),kn(Ni(_),new Uint8Array([this.depth]),Ni(this.parentFingerprint),Ni(this.index),this.chainCode,Z)}}});function Mf(z){return z instanceof Uint8Array||ArrayBuffer.isView(z)&&z.constructor.name==="Uint8Array"}function XA(z,_=""){if(!Number.isSafeInteger(z)||z<0){let Z=_&&`"${_}" `;throw new Error(`${Z}expected integer >= 0, got ${z}`)}}function UA(z,_,Z=""){let X=Mf(z),ee=z?.length,re=_!==void 0;if(!X||re&&ee!==_){let ie=Z&&`"${Z}" `,ae=re?` of length ${_}`:"",fe=X?`length=${ee}`:`type=${typeof z}`;throw new Error(ie+"expected Uint8Array"+ae+", got "+fe)}return z}function Ri(z){if(typeof z!="function"||typeof z.create!="function")throw new Error("Hash must wrapped by utils.createHasher");XA(z.outputLen),XA(z.blockLen)}function tn(z,_=!0){if(z.destroyed)throw new Error("Hash instance has been destroyed");if(_&&z.finished)throw new Error("Hash#digest() has already been called")}function Dc(z,_){UA(z,void 0,"digestInto() output");let Z=_.outputLen;if(z.length<Z)throw new Error('"digestInto() output" expected to be of length >='+Z)}function $t(...z){for(let _=0;_<z.length;_++)z[_].fill(0)}function An(z){return new DataView(z.buffer,z.byteOffset,z.byteLength)}function eA(z,_){return z<<32-_|z>>>_}function qf(z){if(typeof z!="string")throw new Error("string expected");return new Uint8Array(new TextEncoder().encode(z))}function As(z,_=""){return typeof z=="string"?qf(z):UA(z,void 0,_)}function Sc(z,_){if(_!==void 0&&{}.toString.call(_)!=="[object Object]")throw new Error("options must be object or undefined");return Object.assign(z,_)}function rs(z,_={}){let Z=(ee,re)=>z(re).update(ee).digest(),X=z(void 0);return Z.outputLen=X.outputLen,Z.blockLen=X.blockLen,Z.create=ee=>z(ee),Object.assign(Z,_),Object.freeze(Z)}function Hc(z=32){let _=typeof globalThis=="object"?globalThis.crypto:null;if(typeof _?.getRandomValues!="function")throw new Error("crypto.getRandomValues must be defined");return _.getRandomValues(new Uint8Array(z))}var ns,rn=Xe(()=>{be();ns=z=>({oid:Uint8Array.from([6,9,96,134,72,1,101,3,4,2,z])})});var Yi,is,kc=Xe(()=>{be();rn();Yi=class{constructor(_,Z){he(this,"oHash");he(this,"iHash");he(this,"blockLen");he(this,"outputLen");he(this,"finished",!1);he(this,"destroyed",!1);if(Ri(_),UA(Z,void 0,"key"),this.iHash=_.create(),typeof this.iHash.update!="function")throw new Error("Expected instance of class which extends utils.Hash");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;let X=this.blockLen,ee=new Uint8Array(X);ee.set(Z.length>X?_.create().update(Z).digest():Z);for(let re=0;re<ee.length;re++)ee[re]^=54;this.iHash.update(ee),this.oHash=_.create();for(let re=0;re<ee.length;re++)ee[re]^=106;this.oHash.update(ee),$t(ee)}update(_){return tn(this),this.iHash.update(_),this}digestInto(_){tn(this),UA(_,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:Z,iHash:X,finished:ee,destroyed:re,blockLen:ie,outputLen:ae}=this;return _=_,_.finished=ee,_.destroyed=re,_.blockLen=ie,_.outputLen=ae,_.oHash=Z._cloneInto(_.oHash),_.iHash=X._cloneInto(_.iHash),_}clone(){return this._cloneInto()}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}},is=(z,_,Z)=>new Yi(z,_).update(Z).digest();is.create=(z,_)=>new Yi(z,_)});function Of(z,_,Z,X){Ri(z);let ee=Sc({dkLen:32,asyncTick:10},X),{c:re,dkLen:ie,asyncTick:ae}=ee;if(XA(re,"c"),XA(ie,"dkLen"),XA(ae,"asyncTick"),re<1)throw new Error("iterations (c) must be >= 1");let fe=As(_,"password"),le=As(Z,"salt"),Ce=new Uint8Array(ie),ce=is.create(z,fe),Ee=ce._cloneInto().update(le);return{c:re,dkLen:ie,asyncTick:ae,DK:Ce,PRF:ce,PRFSalt:Ee}}function Jf(z,_,Z,X,ee){return z.destroy(),_.destroy(),X&&X.destroy(),$t(ee),Z}function Gc(z,_,Z,X){let{c:ee,dkLen:re,DK:ie,PRF:ae,PRFSalt:fe}=Of(z,_,Z,X),le,Ce=new Uint8Array(4),ce=An(Ce),Ee=new Uint8Array(ae.outputLen);for(let $=1,Be=0;Be<re;$++,Be+=ae.outputLen){let xe=ie.subarray(Be,Be+ae.outputLen);ce.setInt32(0,$,!1),(le=fe._cloneInto(le)).update(Ce).digestInto(Ee),xe.set(Ee.subarray(0,xe.length));for(let He=1;He<ee;He++){ae._cloneInto(le).update(Ee).digestInto(Ee);for(let Se=0;Se<xe.length;Se++)xe[Se]^=Ee[Se]}}return Jf(ae,fe,ie,le,Ee)}var vc=Xe(()=>{be();kc();rn()});function Uc(z,_,Z){return z&_^~z&Z}function Lc(z,_,Z){return z&_^z&Z^_&Z}var Rn,LA,xt,Nc=Xe(()=>{be();rn();Rn=class{constructor(_,Z,X,ee){he(this,"blockLen");he(this,"outputLen");he(this,"padOffset");he(this,"isLE");he(this,"buffer");he(this,"view");he(this,"finished",!1);he(this,"length",0);he(this,"pos",0);he(this,"destroyed",!1);this.blockLen=_,this.outputLen=Z,this.padOffset=X,this.isLE=ee,this.buffer=new Uint8Array(_),this.view=An(this.buffer)}update(_){tn(this),UA(_);let{view:Z,buffer:X,blockLen:ee}=this,re=_.length;for(let ie=0;ie<re;){let ae=Math.min(ee-this.pos,re-ie);if(ae===ee){let fe=An(_);for(;ee<=re-ie;ie+=ee)this.process(fe,ie);continue}X.set(_.subarray(ie,ie+ae),this.pos),this.pos+=ae,ie+=ae,this.pos===ee&&(this.process(Z,0),this.pos=0)}return this.length+=_.length,this.roundClean(),this}digestInto(_){tn(this),Dc(_,this),this.finished=!0;let{buffer:Z,view:X,blockLen:ee,isLE:re}=this,{pos:ie}=this;Z[ie++]=128,$t(this.buffer.subarray(ie)),this.padOffset>ee-ie&&(this.process(X,0),ie=0);for(let ce=ie;ce<ee;ce++)Z[ce]=0;X.setBigUint64(ee-8,BigInt(this.length*8),re),this.process(X,0);let ae=An(_),fe=this.outputLen;if(fe%4)throw new Error("_sha2: outputLen must be aligned to 32bit");let le=fe/4,Ce=this.get();if(le>Ce.length)throw new Error("_sha2: outputLen bigger than state");for(let ce=0;ce<le;ce++)ae.setUint32(4*ce,Ce[ce],re)}digest(){let{buffer:_,outputLen:Z}=this;this.digestInto(_);let X=_.slice(0,Z);return this.destroy(),X}_cloneInto(_){_||(_=new this.constructor),_.set(...this.get());let{blockLen:Z,buffer:X,length:ee,finished:re,destroyed:ie,pos:ae}=this;return _.destroyed=ie,_.finished=re,_.length=ee,_.pos=ae,ee%Z&&_.buffer.set(X),_}clone(){return this._cloneInto()}},LA=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),xt=Uint32Array.from([1779033703,4089235720,3144134277,2227873595,1013904242,4271175723,2773480762,1595750129,1359893119,2917565137,2600822924,725511199,528734635,4215389547,1541459225,327033209])});function Tf(z,_=!1){return _?{h:Number(z&Ki),l:Number(z>>Fc&Ki)}:{h:Number(z>>Fc&Ki)|0,l:Number(z&Ki)|0}}function Rc(z,_=!1){let Z=z.length,X=new Uint32Array(Z),ee=new Uint32Array(Z);for(let re=0;re<Z;re++){let{h:ie,l:ae}=Tf(z[re],_);[X[re],ee[re]]=[ie,ae]}return[X,ee]}function uA(z,_,Z,X){let ee=(_>>>0)+(X>>>0);return{h:z+Z+(ee/2**32|0)|0,l:ee|0}}var Ki,Fc,os,ss,kr,Gr,Yn,Kn,Yc,Kc,Mc,qc,Oc,Jc,Tc=Xe(()=>{be();Ki=BigInt(4294967295),Fc=BigInt(32);os=(z,_,Z)=>z>>>Z,ss=(z,_,Z)=>z<<32-Z|_>>>Z,kr=(z,_,Z)=>z>>>Z|_<<32-Z,Gr=(z,_,Z)=>z<<32-Z|_>>>Z,Yn=(z,_,Z)=>z<<64-Z|_>>>Z-32,Kn=(z,_,Z)=>z>>>Z-32|_<<64-Z;Yc=(z,_,Z)=>(z>>>0)+(_>>>0)+(Z>>>0),Kc=(z,_,Z,X)=>_+Z+X+(z/2**32|0)|0,Mc=(z,_,Z,X)=>(z>>>0)+(_>>>0)+(Z>>>0)+(X>>>0),qc=(z,_,Z,X,ee)=>_+Z+X+ee+(z/2**32|0)|0,Oc=(z,_,Z,X,ee)=>(z>>>0)+(_>>>0)+(Z>>>0)+(X>>>0)+(ee>>>0),Jc=(z,_,Z,X,ee,re)=>_+Z+X+ee+re+(z/2**32|0)|0});var jf,$A,as,cs,_c,Pf,Vf,er,tr,gs,fs,jc,Pc,Vc=Xe(()=>{be();Nc();Tc();rn();jf=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]),$A=new Uint32Array(64),as=class extends Rn{constructor(_){super(64,_,8,!1)}get(){let{A:_,B:Z,C:X,D:ee,E:re,F:ie,G:ae,H:fe}=this;return[_,Z,X,ee,re,ie,ae,fe]}set(_,Z,X,ee,re,ie,ae,fe){this.A=_|0,this.B=Z|0,this.C=X|0,this.D=ee|0,this.E=re|0,this.F=ie|0,this.G=ae|0,this.H=fe|0}process(_,Z){for(let ce=0;ce<16;ce++,Z+=4)$A[ce]=_.getUint32(Z,!1);for(let ce=16;ce<64;ce++){let Ee=$A[ce-15],$=$A[ce-2],Be=eA(Ee,7)^eA(Ee,18)^Ee>>>3,xe=eA($,17)^eA($,19)^$>>>10;$A[ce]=xe+$A[ce-7]+Be+$A[ce-16]|0}let{A:X,B:ee,C:re,D:ie,E:ae,F:fe,G:le,H:Ce}=this;for(let ce=0;ce<64;ce++){let Ee=eA(ae,6)^eA(ae,11)^eA(ae,25),$=Ce+Ee+Uc(ae,fe,le)+jf[ce]+$A[ce]|0,xe=(eA(X,2)^eA(X,13)^eA(X,22))+Lc(X,ee,re)|0;Ce=le,le=fe,fe=ae,ae=ie+$|0,ie=re,re=ee,ee=X,X=$+xe|0}X=X+this.A|0,ee=ee+this.B|0,re=re+this.C|0,ie=ie+this.D|0,ae=ae+this.E|0,fe=fe+this.F|0,le=le+this.G|0,Ce=Ce+this.H|0,this.set(X,ee,re,ie,ae,fe,le,Ce)}roundClean(){$t($A)}destroy(){this.set(0,0,0,0,0,0,0,0),$t(this.buffer)}},cs=class extends as{constructor(){super(32);he(this,"A",LA[0]|0);he(this,"B",LA[1]|0);he(this,"C",LA[2]|0);he(this,"D",LA[3]|0);he(this,"E",LA[4]|0);he(this,"F",LA[5]|0);he(this,"G",LA[6]|0);he(this,"H",LA[7]|0)}},_c=Rc(["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(z=>BigInt(z))),Pf=_c[0],Vf=_c[1],er=new Uint32Array(80),tr=new Uint32Array(80),gs=class extends Rn{constructor(_){super(128,_,16,!1)}get(){let{Ah:_,Al:Z,Bh:X,Bl:ee,Ch:re,Cl:ie,Dh:ae,Dl:fe,Eh:le,El:Ce,Fh:ce,Fl:Ee,Gh:$,Gl:Be,Hh:xe,Hl:He}=this;return[_,Z,X,ee,re,ie,ae,fe,le,Ce,ce,Ee,$,Be,xe,He]}set(_,Z,X,ee,re,ie,ae,fe,le,Ce,ce,Ee,$,Be,xe,He){this.Ah=_|0,this.Al=Z|0,this.Bh=X|0,this.Bl=ee|0,this.Ch=re|0,this.Cl=ie|0,this.Dh=ae|0,this.Dl=fe|0,this.Eh=le|0,this.El=Ce|0,this.Fh=ce|0,this.Fl=Ee|0,this.Gh=$|0,this.Gl=Be|0,this.Hh=xe|0,this.Hl=He|0}process(_,Z){for(let we=0;we<16;we++,Z+=4)er[we]=_.getUint32(Z),tr[we]=_.getUint32(Z+=4);for(let we=16;we<80;we++){let Me=er[we-15]|0,Ve=tr[we-15]|0,Ge=kr(Me,Ve,1)^kr(Me,Ve,8)^os(Me,Ve,7),ke=Gr(Me,Ve,1)^Gr(Me,Ve,8)^ss(Me,Ve,7),Pe=er[we-2]|0,qe=tr[we-2]|0,nt=kr(Pe,qe,19)^Yn(Pe,qe,61)^os(Pe,qe,6),At=Gr(Pe,qe,19)^Kn(Pe,qe,61)^ss(Pe,qe,6),Je=Mc(ke,At,tr[we-7],tr[we-16]),Te=qc(Je,Ge,nt,er[we-7],er[we-16]);er[we]=Te|0,tr[we]=Je|0}let{Ah:X,Al:ee,Bh:re,Bl:ie,Ch:ae,Cl:fe,Dh:le,Dl:Ce,Eh:ce,El:Ee,Fh:$,Fl:Be,Gh:xe,Gl:He,Hh:Se,Hl:Re}=this;for(let we=0;we<80;we++){let Me=kr(ce,Ee,14)^kr(ce,Ee,18)^Yn(ce,Ee,41),Ve=Gr(ce,Ee,14)^Gr(ce,Ee,18)^Kn(ce,Ee,41),Ge=ce&$^~ce&xe,ke=Ee&Be^~Ee&He,Pe=Oc(Re,Ve,ke,Vf[we],tr[we]),qe=Jc(Pe,Se,Me,Ge,Pf[we],er[we]),nt=Pe|0,At=kr(X,ee,28)^Yn(X,ee,34)^Yn(X,ee,39),Je=Gr(X,ee,28)^Kn(X,ee,34)^Kn(X,ee,39),Te=X&re^X&ae^re&ae,pe=ee&ie^ee&fe^ie&fe;Se=xe|0,Re=He|0,xe=$|0,He=Be|0,$=ce|0,Be=Ee|0,{h:ce,l:Ee}=uA(le|0,Ce|0,qe|0,nt|0),le=ae|0,Ce=fe|0,ae=re|0,fe=ie|0,re=X|0,ie=ee|0;let Qe=Yc(nt,Je,pe);X=Kc(Qe,qe,At,Te),ee=Qe|0}({h:X,l:ee}=uA(this.Ah|0,this.Al|0,X|0,ee|0)),{h:re,l:ie}=uA(this.Bh|0,this.Bl|0,re|0,ie|0),{h:ae,l:fe}=uA(this.Ch|0,this.Cl|0,ae|0,fe|0),{h:le,l:Ce}=uA(this.Dh|0,this.Dl|0,le|0,Ce|0),{h:ce,l:Ee}=uA(this.Eh|0,this.El|0,ce|0,Ee|0),{h:$,l:Be}=uA(this.Fh|0,this.Fl|0,$|0,Be|0),{h:xe,l:He}=uA(this.Gh|0,this.Gl|0,xe|0,He|0),{h:Se,l:Re}=uA(this.Hh|0,this.Hl|0,Se|0,Re|0),this.set(X,ee,re,ie,ae,fe,le,Ce,ce,Ee,$,Be,xe,He,Se,Re)}roundClean(){$t(er,tr)}destroy(){$t(this.buffer),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}},fs=class extends gs{constructor(){super(64);he(this,"Ah",xt[0]|0);he(this,"Al",xt[1]|0);he(this,"Bh",xt[2]|0);he(this,"Bl",xt[3]|0);he(this,"Ch",xt[4]|0);he(this,"Cl",xt[5]|0);he(this,"Dh",xt[6]|0);he(this,"Dl",xt[7]|0);he(this,"Eh",xt[8]|0);he(this,"El",xt[9]|0);he(this,"Fh",xt[10]|0);he(this,"Fl",xt[11]|0);he(this,"Gh",xt[12]|0);he(this,"Gl",xt[13]|0);he(this,"Hh",xt[14]|0);he(this,"Hl",xt[15]|0)}},jc=rs(()=>new cs,ns(1)),Pc=rs(()=>new fs,ns(3))});function Wc(z){if(typeof z!="string")throw new TypeError("invalid mnemonic type: "+typeof z);return z.normalize("NFKD")}function zf(z){let _=Wc(z),Z=_.split(" ");if(![12,15,18,21,24].includes(Z.length))throw new Error("Invalid mnemonic");return{nfkd:_,words:Z}}function Zf(z){if(UA(z),![16,20,24,28,32].includes(z.length))throw new Error("invalid entropy length")}function zc(z,_=128){if(XA(_),_%32!==0||_>256)throw new TypeError("Invalid entropy");return eu(Hc(_/8),z)}function $f(z){if(!Array.isArray(z)||z.length!==2048||typeof z[0]!="string")throw new Error("Wordlist: expected array of 2048 strings");return z.forEach(_=>{if(typeof _!="string")throw new Error("wordlist: non-string element: "+_)}),Ln.chain(Ln.checksum(1,Xf),Ln.radix2(11,!0),Ln.alphabet(z))}function eu(z,_){return Zf(z),$f(_).encode(z).join(Wf(_)?"\u3000":" ")}function Zc(z,_=""){return Gc(Pc,zf(z).nfkd,tu(_),{c:2048,dkLen:64})}var Wf,Xf,tu,Xc=Xe(()=>{be();vc();Vc();rn();Xo();Wf=z=>z[0]==="\u3042\u3044\u3053\u304F\u3057\u3093";Xf=z=>{let _=8-z.length/4;return new Uint8Array([jc(z)[0]>>_<<_])};tu=z=>Wc("mnemonic"+z)});var $c,eg=Xe(()=>{be();$c=`abandon
1
+ "use strict";var LumenKeys=(()=>{var sn=Object.defineProperty;var e0=Object.getOwnPropertyDescriptor;var t0=Object.getOwnPropertyNames;var r0=Object.prototype.hasOwnProperty;var n0=(t,e,r)=>e in t?sn(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r;var pe=(t,e)=>()=>(t&&(e=t(t=0)),e);var oo=(t,e)=>{for(var r in e)sn(t,r,{get:e[r],enumerable:!0})},o0=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of t0(e))!r0.call(t,o)&&o!==r&&sn(t,o,{get:()=>e[o],enumerable:!(n=e0(e,o))||n.enumerable});return t};var s0=t=>o0(sn({},"__esModule",{value:!0}),t);var d=(t,e,r)=>n0(t,typeof e!="symbol"?e+"":e,r);var m=pe(()=>{"use strict";if(typeof Uint8Array.prototype.toString!="function"||!Uint8Array.prototype.toString.toString().includes("[native code]")){let t=Uint8Array.prototype.toString;Uint8Array.prototype.toString=function(e){if(e==="base64"){let r="",n=new Uint8Array(this);for(let o=0;o<n.byteLength;o++)r+=String.fromCharCode(n[o]);return btoa(r)}return t.call(this)}}typeof window>"u"&&(window.global=window)});function S0(t){return t instanceof Uint8Array||ArrayBuffer.isView(t)&&t.constructor.name==="Uint8Array"}function vr(t){if(!Number.isSafeInteger(t)||t<0)throw new Error("positive integer expected, got "+t)}function Xe(t,...e){if(!S0(t))throw new Error("Uint8Array expected");if(e.length>0&&!e.includes(t.length))throw new Error("Uint8Array expected of length "+e+", got length="+t.length)}function bi(t){if(typeof t!="function"||typeof t.create!="function")throw new Error("Hash should be wrapped by utils.createHasher");vr(t.outputLen),vr(t.blockLen)}function Je(t,e=!0){if(t.destroyed)throw new Error("Hash instance has been destroyed");if(e&&t.finished)throw new Error("Hash#digest() has already been called")}function ln(t,e){Xe(t);let r=e.outputLen;if(t.length<r)throw new Error("digestInto() expects output buffer of length at least "+r)}function gi(t){return new Uint32Array(t.buffer,t.byteOffset,Math.floor(t.byteLength/4))}function ke(...t){for(let e=0;e<t.length;e++)t[e].fill(0)}function dn(t){return new DataView(t.buffer,t.byteOffset,t.byteLength)}function Ie(t,e){return t<<32-e|t>>>e}function H0(t){return t<<24&4278190080|t<<8&16711680|t>>>8&65280|t>>>24&255}function I0(t){for(let e=0;e<t.length;e++)t[e]=H0(t[e]);return t}function L0(t){if(typeof t!="string")throw new Error("string expected");return new Uint8Array(new TextEncoder().encode(t))}function Kt(t){return typeof t=="string"&&(t=L0(t)),Xe(t),t}function Br(t){let e=n=>t().update(Kt(n)).digest(),r=t();return e.outputLen=r.outputLen,e.blockLen=r.blockLen,e.create=()=>t(),e}var k0,lo,at,Sr=pe(()=>{m();k0=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;lo=k0?t=>t:I0;at=class{}});function U0(t,e,r,n){if(typeof t.setBigUint64=="function")return t.setBigUint64(e,r,n);let o=BigInt(32),s=BigInt(4294967295),i=Number(r>>o&s),c=Number(r&s),a=n?4:0,u=n?0:4;t.setUint32(e+a,i,n),t.setUint32(e+u,c,n)}function mi(t,e,r){return t&e^~t&r}function wi(t,e,r){return t&e^t&r^e&r}var kr,Qe,fe,Ei=pe(()=>{m();Sr();kr=class extends at{constructor(e,r,n,o){super(),this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.blockLen=e,this.outputLen=r,this.padOffset=n,this.isLE=o,this.buffer=new Uint8Array(e),this.view=dn(this.buffer)}update(e){Je(this),e=Kt(e),Xe(e);let{view:r,buffer:n,blockLen:o}=this,s=e.length;for(let i=0;i<s;){let c=Math.min(o-this.pos,s-i);if(c===o){let a=dn(e);for(;o<=s-i;i+=o)this.process(a,i);continue}n.set(e.subarray(i,i+c),this.pos),this.pos+=c,i+=c,this.pos===o&&(this.process(r,0),this.pos=0)}return this.length+=e.length,this.roundClean(),this}digestInto(e){Je(this),ln(e,this),this.finished=!0;let{buffer:r,view:n,blockLen:o,isLE:s}=this,{pos:i}=this;r[i++]=128,ke(this.buffer.subarray(i)),this.padOffset>o-i&&(this.process(n,0),i=0);for(let f=i;f<o;f++)r[f]=0;U0(n,o-8,BigInt(this.length*8),s),this.process(n,0);let c=dn(e),a=this.outputLen;if(a%4)throw new Error("_sha2: outputLen should be aligned to 32bit");let u=a/4,l=this.get();if(u>l.length)throw new Error("_sha2: outputLen bigger than state");for(let f=0;f<u;f++)c.setUint32(4*f,l[f],s)}digest(){let{buffer:e,outputLen:r}=this;this.digestInto(e);let n=e.slice(0,r);return this.destroy(),n}_cloneInto(e){e||(e=new this.constructor),e.set(...this.get());let{blockLen:r,buffer:n,length:o,finished:s,destroyed:i,pos:c}=this;return e.destroyed=i,e.finished=s,e.length=o,e.pos=c,o%r&&e.buffer.set(n),e}clone(){return this._cloneInto()}},Qe=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),fe=Uint32Array.from([1779033703,4089235720,3144134277,2227873595,1013904242,4271175723,2773480762,1595750129,1359893119,2917565137,2600822924,725511199,528734635,4215389547,1541459225,327033209])});function _0(t,e=!1){return e?{h:Number(t&pn),l:Number(t>>Ai&pn)}:{h:Number(t>>Ai&pn)|0,l:Number(t&pn)|0}}function xn(t,e=!1){let r=t.length,n=new Uint32Array(r),o=new Uint32Array(r);for(let s=0;s<r;s++){let{h:i,l:c}=_0(t[s],e);[n[s],o[s]]=[i,c]}return[n,o]}function Ve(t,e,r,n){let o=(e>>>0)+(n>>>0);return{h:t+r+(o/2**32|0)|0,l:o|0}}var pn,Ai,po,xo,Ct,Ot,Hr,Ir,vi,Bi,Si,ki,Hi,Ii,Li,Ui,_i,Ki,yo=pe(()=>{m();pn=BigInt(4294967295),Ai=BigInt(32);po=(t,e,r)=>t>>>r,xo=(t,e,r)=>t<<32-r|e>>>r,Ct=(t,e,r)=>t>>>r|e<<32-r,Ot=(t,e,r)=>t<<32-r|e>>>r,Hr=(t,e,r)=>t<<64-r|e>>>r-32,Ir=(t,e,r)=>t>>>r-32|e<<64-r,vi=(t,e,r)=>t<<r|e>>>32-r,Bi=(t,e,r)=>e<<r|t>>>32-r,Si=(t,e,r)=>e<<r-32|t>>>64-r,ki=(t,e,r)=>t<<r-32|e>>>64-r;Hi=(t,e,r)=>(t>>>0)+(e>>>0)+(r>>>0),Ii=(t,e,r,n)=>e+r+n+(t/2**32|0)|0,Li=(t,e,r,n)=>(t>>>0)+(e>>>0)+(r>>>0)+(n>>>0),Ui=(t,e,r,n,o)=>e+r+n+o+(t/2**32|0)|0,_i=(t,e,r,n,o)=>(t>>>0)+(e>>>0)+(r>>>0)+(n>>>0)+(o>>>0),Ki=(t,e,r,n,o,s)=>e+r+n+o+s+(t/2**32|0)|0});var C0,ft,yn,Ci,O0,R0,ut,lt,bo,bn,Oi,go=pe(()=>{m();Ei();yo();Sr();C0=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]),ft=new Uint32Array(64),yn=class extends kr{constructor(e=32){super(64,e,8,!1),this.A=Qe[0]|0,this.B=Qe[1]|0,this.C=Qe[2]|0,this.D=Qe[3]|0,this.E=Qe[4]|0,this.F=Qe[5]|0,this.G=Qe[6]|0,this.H=Qe[7]|0}get(){let{A:e,B:r,C:n,D:o,E:s,F:i,G:c,H:a}=this;return[e,r,n,o,s,i,c,a]}set(e,r,n,o,s,i,c,a){this.A=e|0,this.B=r|0,this.C=n|0,this.D=o|0,this.E=s|0,this.F=i|0,this.G=c|0,this.H=a|0}process(e,r){for(let f=0;f<16;f++,r+=4)ft[f]=e.getUint32(r,!1);for(let f=16;f<64;f++){let h=ft[f-15],p=ft[f-2],x=Ie(h,7)^Ie(h,18)^h>>>3,w=Ie(p,17)^Ie(p,19)^p>>>10;ft[f]=w+ft[f-7]+x+ft[f-16]|0}let{A:n,B:o,C:s,D:i,E:c,F:a,G:u,H:l}=this;for(let f=0;f<64;f++){let h=Ie(c,6)^Ie(c,11)^Ie(c,25),p=l+h+mi(c,a,u)+C0[f]+ft[f]|0,w=(Ie(n,2)^Ie(n,13)^Ie(n,22))+wi(n,o,s)|0;l=u,u=a,a=c,c=i+p|0,i=s,s=o,o=n,n=p+w|0}n=n+this.A|0,o=o+this.B|0,s=s+this.C|0,i=i+this.D|0,c=c+this.E|0,a=a+this.F|0,u=u+this.G|0,l=l+this.H|0,this.set(n,o,s,i,c,a,u,l)}roundClean(){ke(ft)}destroy(){this.set(0,0,0,0,0,0,0,0),ke(this.buffer)}},Ci=xn(["0x428a2f98d728ae22","0x7137449123ef65cd","0xb5c0fbcfec4d3b2f","0xe9b5dba58189dbbc","0x3956c25bf348b538","0x59f111f1b605d019","0x923f82a4af194f9b","0xab1c5ed5da6d8118","0xd807aa98a3030242","0x12835b0145706fbe","0x243185be4ee4b28c","0x550c7dc3d5ffb4e2","0x72be5d74f27b896f","0x80deb1fe3b1696b1","0x9bdc06a725c71235","0xc19bf174cf692694","0xe49b69c19ef14ad2","0xefbe4786384f25e3","0x0fc19dc68b8cd5b5","0x240ca1cc77ac9c65","0x2de92c6f592b0275","0x4a7484aa6ea6e483","0x5cb0a9dcbd41fbd4","0x76f988da831153b5","0x983e5152ee66dfab","0xa831c66d2db43210","0xb00327c898fb213f","0xbf597fc7beef0ee4","0xc6e00bf33da88fc2","0xd5a79147930aa725","0x06ca6351e003826f","0x142929670a0e6e70","0x27b70a8546d22ffc","0x2e1b21385c26c926","0x4d2c6dfc5ac42aed","0x53380d139d95b3df","0x650a73548baf63de","0x766a0abb3c77b2a8","0x81c2c92e47edaee6","0x92722c851482353b","0xa2bfe8a14cf10364","0xa81a664bbc423001","0xc24b8b70d0f89791","0xc76c51a30654be30","0xd192e819d6ef5218","0xd69906245565a910","0xf40e35855771202a","0x106aa07032bbd1b8","0x19a4c116b8d2d0c8","0x1e376c085141ab53","0x2748774cdf8eeb99","0x34b0bcb5e19b48a8","0x391c0cb3c5c95a63","0x4ed8aa4ae3418acb","0x5b9cca4f7763e373","0x682e6ff3d6b2b8a3","0x748f82ee5defb2fc","0x78a5636f43172f60","0x84c87814a1f0ab72","0x8cc702081a6439ec","0x90befffa23631e28","0xa4506cebde82bde9","0xbef9a3f7b2c67915","0xc67178f2e372532b","0xca273eceea26619c","0xd186b8c721c0c207","0xeada7dd6cde0eb1e","0xf57d4f7fee6ed178","0x06f067aa72176fba","0x0a637dc5a2c898a6","0x113f9804bef90dae","0x1b710b35131c471b","0x28db77f523047d84","0x32caab7b40c72493","0x3c9ebe0a15c9bebc","0x431d67c49c100d4c","0x4cc5d4becb3e42b6","0x597f299cfc657e2a","0x5fcb6fab3ad6faec","0x6c44198c4a475817"].map(t=>BigInt(t))),O0=Ci[0],R0=Ci[1],ut=new Uint32Array(80),lt=new Uint32Array(80),bo=class extends kr{constructor(e=64){super(128,e,16,!1),this.Ah=fe[0]|0,this.Al=fe[1]|0,this.Bh=fe[2]|0,this.Bl=fe[3]|0,this.Ch=fe[4]|0,this.Cl=fe[5]|0,this.Dh=fe[6]|0,this.Dl=fe[7]|0,this.Eh=fe[8]|0,this.El=fe[9]|0,this.Fh=fe[10]|0,this.Fl=fe[11]|0,this.Gh=fe[12]|0,this.Gl=fe[13]|0,this.Hh=fe[14]|0,this.Hl=fe[15]|0}get(){let{Ah:e,Al:r,Bh:n,Bl:o,Ch:s,Cl:i,Dh:c,Dl:a,Eh:u,El:l,Fh:f,Fl:h,Gh:p,Gl:x,Hh:w,Hl:v}=this;return[e,r,n,o,s,i,c,a,u,l,f,h,p,x,w,v]}set(e,r,n,o,s,i,c,a,u,l,f,h,p,x,w,v){this.Ah=e|0,this.Al=r|0,this.Bh=n|0,this.Bl=o|0,this.Ch=s|0,this.Cl=i|0,this.Dh=c|0,this.Dl=a|0,this.Eh=u|0,this.El=l|0,this.Fh=f|0,this.Fl=h|0,this.Gh=p|0,this.Gl=x|0,this.Hh=w|0,this.Hl=v|0}process(e,r){for(let y=0;y<16;y++,r+=4)ut[y]=e.getUint32(r),lt[y]=e.getUint32(r+=4);for(let y=16;y<80;y++){let L=ut[y-15]|0,P=lt[y-15]|0,F=Ct(L,P,1)^Ct(L,P,8)^po(L,P,7),X=Ot(L,P,1)^Ot(L,P,8)^xo(L,P,7),M=ut[y-2]|0,U=lt[y-2]|0,Y=Ct(M,U,19)^Hr(M,U,61)^po(M,U,6),ee=Ot(M,U,19)^Ir(M,U,61)^xo(M,U,6),$=Li(X,ee,lt[y-7],lt[y-16]),j=Ui($,F,Y,ut[y-7],ut[y-16]);ut[y]=j|0,lt[y]=$|0}let{Ah:n,Al:o,Bh:s,Bl:i,Ch:c,Cl:a,Dh:u,Dl:l,Eh:f,El:h,Fh:p,Fl:x,Gh:w,Gl:v,Hh:I,Hl:B}=this;for(let y=0;y<80;y++){let L=Ct(f,h,14)^Ct(f,h,18)^Hr(f,h,41),P=Ot(f,h,14)^Ot(f,h,18)^Ir(f,h,41),F=f&p^~f&w,X=h&x^~h&v,M=_i(B,P,X,R0[y],lt[y]),U=Ki(M,I,L,F,O0[y],ut[y]),Y=M|0,ee=Ct(n,o,28)^Hr(n,o,34)^Hr(n,o,39),$=Ot(n,o,28)^Ir(n,o,34)^Ir(n,o,39),j=n&s^n&c^s&c,g=o&i^o&a^i&a;I=w|0,B=v|0,w=p|0,v=x|0,p=f|0,x=h|0,{h:f,l:h}=Ve(u|0,l|0,U|0,Y|0),u=c|0,l=a|0,c=s|0,a=i|0,s=n|0,i=o|0;let b=Hi(Y,$,g);n=Ii(b,U,ee,j),o=b|0}({h:n,l:o}=Ve(this.Ah|0,this.Al|0,n|0,o|0)),{h:s,l:i}=Ve(this.Bh|0,this.Bl|0,s|0,i|0),{h:c,l:a}=Ve(this.Ch|0,this.Cl|0,c|0,a|0),{h:u,l}=Ve(this.Dh|0,this.Dl|0,u|0,l|0),{h:f,l:h}=Ve(this.Eh|0,this.El|0,f|0,h|0),{h:p,l:x}=Ve(this.Fh|0,this.Fl|0,p|0,x|0),{h:w,l:v}=Ve(this.Gh|0,this.Gl|0,w|0,v|0),{h:I,l:B}=Ve(this.Hh|0,this.Hl|0,I|0,B|0),this.set(n,o,s,i,c,a,u,l,f,h,p,x,w,v,I,B)}roundClean(){ke(ut,lt)}destroy(){ke(this.buffer),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}},bn=Br(()=>new yn),Oi=Br(()=>new bo)});function j0(t,e=24){let r=new Uint32Array(10);for(let n=24-e;n<24;n++){for(let i=0;i<10;i++)r[i]=t[i]^t[i+10]^t[i+20]^t[i+30]^t[i+40];for(let i=0;i<10;i+=2){let c=(i+8)%10,a=(i+2)%10,u=r[a],l=r[a+1],f=Ri(u,l,1)^r[c],h=Ti(u,l,1)^r[c+1];for(let p=0;p<50;p+=10)t[i+p]^=f,t[i+p+1]^=h}let o=t[2],s=t[3];for(let i=0;i<24;i++){let c=Mi[i],a=Ri(o,s,c),u=Ti(o,s,c),l=Di[i];o=t[l],s=t[l+1],t[l]=a,t[l+1]=u}for(let i=0;i<50;i+=10){for(let c=0;c<10;c++)r[c]=t[i+c];for(let c=0;c<10;c++)t[i+c]^=~r[(c+2)%10]&r[(c+4)%10]}t[0]^=V0[n],t[1]^=$0[n]}ke(r)}var T0,Lr,D0,M0,N0,P0,Di,Mi,Ni,Pi,V0,$0,Ri,Ti,mo,q0,Vi,$i=pe(()=>{m();yo();Sr();T0=BigInt(0),Lr=BigInt(1),D0=BigInt(2),M0=BigInt(7),N0=BigInt(256),P0=BigInt(113),Di=[],Mi=[],Ni=[];for(let t=0,e=Lr,r=1,n=0;t<24;t++){[r,n]=[n,(2*r+3*n)%5],Di.push(2*(5*n+r)),Mi.push((t+1)*(t+2)/2%64);let o=T0;for(let s=0;s<7;s++)e=(e<<Lr^(e>>M0)*P0)%N0,e&D0&&(o^=Lr<<(Lr<<BigInt(s))-Lr);Ni.push(o)}Pi=xn(Ni,!0),V0=Pi[0],$0=Pi[1],Ri=(t,e,r)=>r>32?Si(t,e,r):vi(t,e,r),Ti=(t,e,r)=>r>32?ki(t,e,r):Bi(t,e,r);mo=class t extends at{constructor(e,r,n,o=!1,s=24){if(super(),this.pos=0,this.posOut=0,this.finished=!1,this.destroyed=!1,this.enableXOF=!1,this.blockLen=e,this.suffix=r,this.outputLen=n,this.enableXOF=o,this.rounds=s,vr(n),!(0<e&&e<200))throw new Error("only keccak-f1600 function is supported");this.state=new Uint8Array(200),this.state32=gi(this.state)}clone(){return this._cloneInto()}keccak(){lo(this.state32),j0(this.state32,this.rounds),lo(this.state32),this.posOut=0,this.pos=0}update(e){Je(this),e=Kt(e),Xe(e);let{blockLen:r,state:n}=this,o=e.length;for(let s=0;s<o;){let i=Math.min(r-this.pos,o-s);for(let c=0;c<i;c++)n[this.pos++]^=e[s++];this.pos===r&&this.keccak()}return this}finish(){if(this.finished)return;this.finished=!0;let{state:e,suffix:r,pos:n,blockLen:o}=this;e[n]^=r,r&128&&n===o-1&&this.keccak(),e[o-1]^=128,this.keccak()}writeInto(e){Je(this,!1),Xe(e),this.finish();let r=this.state,{blockLen:n}=this;for(let o=0,s=e.length;o<s;){this.posOut>=n&&this.keccak();let i=Math.min(n-this.posOut,s-o);e.set(r.subarray(this.posOut,this.posOut+i),o),this.posOut+=i,o+=i}return e}xofInto(e){if(!this.enableXOF)throw new Error("XOF is not possible for this instance");return this.writeInto(e)}xof(e){return vr(e),this.xofInto(new Uint8Array(e))}digestInto(e){if(ln(e,this),this.finished)throw new Error("digest() was already called");return this.writeInto(e),this.destroy(),e}digest(){return this.digestInto(new Uint8Array(this.outputLen))}destroy(){this.destroyed=!0,ke(this.state)}_cloneInto(e){let{blockLen:r,suffix:n,outputLen:o,rounds:s,enableXOF:i}=this;return e||(e=new t(r,n,o,i,s)),e.state32.set(this.state32),e.pos=this.pos,e.posOut=this.posOut,e.finished=this.finished,e.rounds=s,e.suffix=n,e.outputLen=o,e.enableXOF=i,e.destroyed=this.destroyed,e}},q0=(t,e,r)=>Br(()=>new mo(e,t,r)),Vi=q0(6,136,256/8)});var gn={};oo(gn,{createHash:()=>ji,default:()=>G0});function ji(t){let e=new Uint8Array(0),r;switch(t.toLowerCase()){case"sha256":case"sha-256":r=bn;break;case"sha512":case"sha-512":r=Oi;break;case"sha3-256":r=Vi;break;default:throw new Error(`Unsupported hash algorithm: ${t}`)}return{update(n){let o=n instanceof Uint8Array?n:new Uint8Array(n),s=new Uint8Array(e.length+o.length);return s.set(e),s.set(o,e.length),e=s,this},digest(){return r(e)}}}var G0,mn=pe(()=>{"use strict";m();go();$i();G0={createHash:ji}});function _r(t){return t instanceof Uint8Array||ArrayBuffer.isView(t)&&t.constructor.name==="Uint8Array"}function $e(t,e=""){if(!Number.isSafeInteger(t)||t<0){let r=e&&`"${e}" `;throw new Error(`${r}expected integer >= 0, got ${t}`)}}function Q(t,e,r=""){let n=_r(t),o=t?.length,s=e!==void 0;if(!n||s&&o!==e){let i=r&&`"${r}" `,c=s?` of length ${e}`:"",a=n?`length=${o}`:`type=${typeof t}`;throw new Error(i+"expected Uint8Array"+c+", got "+a)}return t}function En(t){if(typeof t!="function"||typeof t.create!="function")throw new Error("Hash must wrapped by utils.createHasher");$e(t.outputLen),$e(t.blockLen)}function nr(t,e=!0){if(t.destroyed)throw new Error("Hash instance has been destroyed");if(e&&t.finished)throw new Error("Hash#digest() has already been called")}function Gi(t,e){Q(t,void 0,"digestInto() output");let r=e.outputLen;if(t.length<r)throw new Error('"digestInto() output" expected to be of length >='+r)}function Tt(...t){for(let e=0;e<t.length;e++)t[e].fill(0)}function An(t){return new DataView(t.buffer,t.byteOffset,t.byteLength)}function Le(t,e){return t<<32-e|t>>>e}function Dt(t){if(Q(t),Fi)return t.toHex();let e="";for(let r=0;r<t.length;r++)e+=F0[t[r]];return e}function qi(t){if(t>=et._0&&t<=et._9)return t-et._0;if(t>=et.A&&t<=et.F)return t-(et.A-10);if(t>=et.a&&t<=et.f)return t-(et.a-10)}function Mt(t){if(typeof t!="string")throw new Error("hex string expected, got "+typeof t);if(Fi)return Uint8Array.fromHex(t);let e=t.length,r=e/2;if(e%2)throw new Error("hex string expected, got unpadded hex of length "+e);let n=new Uint8Array(r);for(let o=0,s=0;o<r;o++,s+=2){let i=qi(t.charCodeAt(s)),c=qi(t.charCodeAt(s+1));if(i===void 0||c===void 0){let a=t[s]+t[s+1];throw new Error('hex string expected, got non-hex character "'+a+'" at index '+s)}n[o]=i*16+c}return n}function Ue(...t){let e=0;for(let n=0;n<t.length;n++){let o=t[n];Q(o),e+=o.length}let r=new Uint8Array(e);for(let n=0,o=0;n<t.length;n++){let s=t[n];r.set(s,o),o+=s.length}return r}function Wi(t,e={}){let r=(o,s)=>t(s).update(o).digest(),n=t(void 0);return r.outputLen=n.outputLen,r.blockLen=n.blockLen,r.create=o=>t(o),Object.assign(r,e),Object.freeze(r)}function vn(t=32){let e=typeof globalThis=="object"?globalThis.crypto:null;if(typeof e?.getRandomValues!="function")throw new Error("crypto.getRandomValues must be defined");return e.getRandomValues(new Uint8Array(t))}var Fi,F0,et,zi,Nt=pe(()=>{m();Fi=typeof Uint8Array.from([]).toHex=="function"&&typeof Uint8Array.fromHex=="function",F0=Array.from({length:256},(t,e)=>e.toString(16).padStart(2,"0"));et={_0:48,_9:57,A:65,F:70,a:97,f:102};zi=t=>({oid:Uint8Array.from([6,9,96,134,72,1,101,3,4,2,t])})});function Pt(t,e=""){if(typeof t!="boolean"){let r=e&&`"${e}" `;throw new Error(r+"expected boolean, got type="+typeof t)}return t}function Ji(t){if(typeof t=="bigint"){if(!Sn(t))throw new Error("positive bigint expected, got "+t)}else $e(t);return t}function Kr(t){let e=Ji(t).toString(16);return e.length&1?"0"+e:e}function Qi(t){if(typeof t!="string")throw new Error("hex string expected, got "+typeof t);return t===""?vo:BigInt("0x"+t)}function or(t){return Qi(Dt(t))}function Bo(t){return Qi(Dt(z0(Q(t)).reverse()))}function kn(t,e){$e(e),t=Ji(t);let r=Mt(t.toString(16).padStart(e*2,"0"));if(r.length!==e)throw new Error("number too large");return r}function So(t,e){return kn(t,e).reverse()}function z0(t){return Uint8Array.from(t)}function Z0(t,e,r){return Sn(t)&&Sn(e)&&Sn(r)&&e<=t&&t<r}function ec(t,e,r,n){if(!Z0(e,r,n))throw new Error("expected valid "+t+": "+r+" <= n < "+n+", got "+e)}function ko(t){let e;for(e=0;t>vo;t>>=Ao,e+=1);return e}function tc(t,e,r){if($e(t,"hashLen"),$e(e,"qByteLen"),typeof r!="function")throw new Error("hmacFn must be a function");let n=v=>new Uint8Array(v),o=Uint8Array.of(),s=Uint8Array.of(0),i=Uint8Array.of(1),c=1e3,a=n(t),u=n(t),l=0,f=()=>{a.fill(1),u.fill(0),l=0},h=(...v)=>r(u,Ue(a,...v)),p=(v=o)=>{u=h(s,v),a=h(),v.length!==0&&(u=h(i,v),a=h())},x=()=>{if(l++>=c)throw new Error("drbg: tried max amount of iterations");let v=0,I=[];for(;v<e;){a=h();let B=a.slice();I.push(B),v+=a.length}return Ue(...I)};return(v,I)=>{f(),p(v);let B;for(;!(B=I(x()));)p();return f(),B}}function Or(t,e={},r={}){if(!t||typeof t!="object")throw new Error("expected valid options object");function n(s,i,c){let a=t[s];if(c&&a===void 0)return;let u=typeof a;if(u!==i||a===null)throw new Error(`param "${s}" is invalid: expected ${i}, got ${u}`)}let o=(s,i)=>Object.entries(s).forEach(([c,a])=>n(c,a,i));o(e,!1),o(r,!0)}function Ho(t){let e=new WeakMap;return(r,...n)=>{let o=e.get(r);if(o!==void 0)return o;let s=t(r,...n);return e.set(r,s),s}}var vo,Ao,Sn,Cr,Rr=pe(()=>{m();Nt();Nt();vo=BigInt(0),Ao=BigInt(1);Sn=t=>typeof t=="bigint"&&vo<=t;Cr=t=>(Ao<<BigInt(t))-Ao});function Zf(t,e=!1){return e?{h:Number(t&Gn),l:Number(t>>Aa&Gn)}:{h:Number(t>>Aa&Gn)|0,l:Number(t&Gn)|0}}function va(t,e=!1){let r=t.length,n=new Uint32Array(r),o=new Uint32Array(r);for(let s=0;s<r;s++){let{h:i,l:c}=Zf(t[s],e);[n[s],o[s]]=[i,c]}return[n,o]}var Gn,Aa,Ba,Sa,ka,Ha,Ia=pe(()=>{m();Gn=BigInt(4294967295),Aa=BigInt(32);Ba=(t,e,r)=>t<<r|e>>>32-r,Sa=(t,e,r)=>e<<r|t>>>32-r,ka=(t,e,r)=>e<<r-32|t>>>64-r,Ha=(t,e,r)=>t<<r-32|e>>>64-r});function ws(t){return t instanceof Uint8Array||ArrayBuffer.isView(t)&&t.constructor.name==="Uint8Array"}function Es(t,e=""){if(!Number.isSafeInteger(t)||t<0){let r=e&&`"${e}" `;throw new Error(`${r}expected integer >= 0, got ${t}`)}}function ie(t,e,r=""){let n=ws(t),o=t?.length,s=e!==void 0;if(!n||s&&o!==e){let i=r&&`"${r}" `,c=s?` of length ${e}`:"",a=n?`length=${o}`:`type=${typeof t}`;throw new Error(i+"expected Uint8Array"+c+", got "+a)}return t}function As(t,e=!0){if(t.destroyed)throw new Error("Hash instance has been destroyed");if(e&&t.finished)throw new Error("Hash#digest() has already been called")}function La(t,e){ie(t,void 0,"digestInto() output");let r=e.outputLen;if(t.length<r)throw new Error('"digestInto() output" expected to be of length >='+r)}function Ua(t){return new Uint32Array(t.buffer,t.byteOffset,Math.floor(t.byteLength/4))}function vs(...t){for(let e=0;e<t.length;e++)t[e].fill(0)}function Xf(t){return t<<24&4278190080|t<<8&16711680|t>>>8&65280|t>>>24&255}function Jf(t){for(let e=0;e<t.length;e++)t[e]=Xf(t[e]);return t}function Ss(...t){let e=0;for(let n=0;n<t.length;n++){let o=t[n];ie(o),e+=o.length}let r=new Uint8Array(e);for(let n=0,o=0;n<t.length;n++){let s=t[n];r.set(s,o),o+=s.length}return r}function _a(t,e={}){let r=(o,s)=>t(s).update(o).digest(),n=t(void 0);return r.outputLen=n.outputLen,r.blockLen=n.blockLen,r.create=o=>t(o),Object.assign(r,e),Object.freeze(r)}function Ka(t=32){let e=typeof globalThis=="object"?globalThis.crypto:null;if(typeof e?.getRandomValues!="function")throw new Error("crypto.getRandomValues must be defined");return e.getRandomValues(new Uint8Array(t))}var Yf,Bs,ks,Fn=pe(()=>{m();Yf=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;Bs=Yf?t=>t:Jf;ks=t=>({oid:Uint8Array.from([6,9,96,134,72,1,101,3,4,2,t])})});function iu(t,e=24){let r=new Uint32Array(10);for(let n=24-e;n<24;n++){for(let i=0;i<10;i++)r[i]=t[i]^t[i+10]^t[i+20]^t[i+30]^t[i+40];for(let i=0;i<10;i+=2){let c=(i+8)%10,a=(i+2)%10,u=r[a],l=r[a+1],f=Ca(u,l,1)^r[c],h=Oa(u,l,1)^r[c+1];for(let p=0;p<50;p+=10)t[i+p]^=f,t[i+p+1]^=h}let o=t[2],s=t[3];for(let i=0;i<24;i++){let c=Ta[i],a=Ca(o,s,c),u=Oa(o,s,c),l=Ra[i];o=t[l],s=t[l+1],t[l]=a,t[l+1]=u}for(let i=0;i<50;i+=10){for(let c=0;c<10;c++)r[c]=t[i+c];for(let c=0;c<10;c++)t[i+c]^=~r[(c+2)%10]&r[(c+4)%10]}t[0]^=ou[n],t[1]^=su[n]}vs(r)}var Qf,zr,eu,tu,ru,nu,Ra,Ta,Da,Ma,ou,su,Ca,Oa,Hs,Na,Pa,be,Is=pe(()=>{m();Ia();Fn();Qf=BigInt(0),zr=BigInt(1),eu=BigInt(2),tu=BigInt(7),ru=BigInt(256),nu=BigInt(113),Ra=[],Ta=[],Da=[];for(let t=0,e=zr,r=1,n=0;t<24;t++){[r,n]=[n,(2*r+3*n)%5],Ra.push(2*(5*n+r)),Ta.push((t+1)*(t+2)/2%64);let o=Qf;for(let s=0;s<7;s++)e=(e<<zr^(e>>tu)*nu)%ru,e&eu&&(o^=zr<<(zr<<BigInt(s))-zr);Da.push(o)}Ma=va(Da,!0),ou=Ma[0],su=Ma[1],Ca=(t,e,r)=>r>32?ka(t,e,r):Ba(t,e,r),Oa=(t,e,r)=>r>32?Ha(t,e,r):Sa(t,e,r);Hs=class t{constructor(e,r,n,o=!1,s=24){d(this,"state");d(this,"pos",0);d(this,"posOut",0);d(this,"finished",!1);d(this,"state32");d(this,"destroyed",!1);d(this,"blockLen");d(this,"suffix");d(this,"outputLen");d(this,"enableXOF",!1);d(this,"rounds");if(this.blockLen=e,this.suffix=r,this.outputLen=n,this.enableXOF=o,this.rounds=s,Es(n,"outputLen"),!(0<e&&e<200))throw new Error("only keccak-f1600 function is supported");this.state=new Uint8Array(200),this.state32=Ua(this.state)}clone(){return this._cloneInto()}keccak(){Bs(this.state32),iu(this.state32,this.rounds),Bs(this.state32),this.posOut=0,this.pos=0}update(e){As(this),ie(e);let{blockLen:r,state:n}=this,o=e.length;for(let s=0;s<o;){let i=Math.min(r-this.pos,o-s);for(let c=0;c<i;c++)n[this.pos++]^=e[s++];this.pos===r&&this.keccak()}return this}finish(){if(this.finished)return;this.finished=!0;let{state:e,suffix:r,pos:n,blockLen:o}=this;e[n]^=r,r&128&&n===o-1&&this.keccak(),e[o-1]^=128,this.keccak()}writeInto(e){As(this,!1),ie(e),this.finish();let r=this.state,{blockLen:n}=this;for(let o=0,s=e.length;o<s;){this.posOut>=n&&this.keccak();let i=Math.min(n-this.posOut,s-o);e.set(r.subarray(this.posOut,this.posOut+i),o),this.posOut+=i,o+=i}return e}xofInto(e){if(!this.enableXOF)throw new Error("XOF is not possible for this instance");return this.writeInto(e)}xof(e){return Es(e),this.xofInto(new Uint8Array(e))}digestInto(e){if(La(e,this),this.finished)throw new Error("digest() was already called");return this.writeInto(e),this.destroy(),e}digest(){return this.digestInto(new Uint8Array(this.outputLen))}destroy(){this.destroyed=!0,vs(this.state)}_cloneInto(e){let{blockLen:r,suffix:n,outputLen:o,rounds:s,enableXOF:i}=this;return e||(e=new t(r,n,o,i,s)),e.state32.set(this.state32),e.pos=this.pos,e.posOut=this.posOut,e.finished=this.finished,e.rounds=s,e.suffix=n,e.outputLen=o,e.enableXOF=i,e.destroyed=this.destroyed,e}},Na=(t,e,r,n={})=>_a((o={})=>new Hs(e,t,o.dkLen===void 0?r:o.dkLen,!0),n),Pa=Na(31,168,16,ks(11)),be=Na(31,136,32,ks(12))});function Ls(t){if(!Number.isSafeInteger(t)||t<0||t>4294967295)throw new Error("wrong u32 integer:"+t);return t}function $a(t){return Ls(t),(t&t-1)===0&&t!==0}function Us(t,e){Ls(t);let r=0;for(let n=0;n<e;n++,t>>>=1)r=r<<1|t&1;return r}function ja(t){return Ls(t),31-Math.clz32(t)}function Va(t){let e=t.length;if(e<2||!$a(e))throw new Error("n must be a power of 2 and greater than 1. Got "+e);let r=ja(e);for(let n=0;n<e;n++){let o=Us(n,r);if(n<o){let s=t[n];t[n]=t[o],t[o]=s}}return t}var _s,qa=pe(()=>{m();_s=(t,e)=>{let{N:r,roots:n,dit:o,invertButterflies:s=!1,skipStages:i=0,brp:c=!0}=e,a=ja(r);if(!$a(r))throw new Error("FFT: Polynomial size should be power of two");let u=o!==s;return l=>{if(l.length!==r)throw new Error("FFT: wrong Polynomial length");o&&c&&Va(l);for(let f=0,h=1;f<a-i;f++){let p=o?f+1+i:a-f,x=1<<p,w=x>>1,v=r>>p;for(let I=0;I<r;I+=x)for(let B=0,y=h++;B<w;B++){let L=s?o?r-y:y:B*v,P=I+B,F=I+B+w,X=n[L],M=l[F],U=l[P];if(u){let Y=t.mul(M,X);l[P]=t.add(U,Y),l[F]=t.sub(U,Y)}else s?(l[P]=t.add(M,U),l[F]=t.mul(t.sub(M,U),X)):(l[P]=t.add(U,M),l[F]=t.mul(t.sub(U,M),X))}}return!o&&c&&Va(l),l}}});function Cs(t,e){if(t.length!==e.length)return!1;let r=0;for(let n=0;n<t.length;n++)r|=t[n]^e[n];return r===0}function Os(t){if(typeof t!="object"||t===null||ws(t))throw new Error("expected opts to be an object")}function Wn(t){Os(t),t.context!==void 0&&ie(t.context,void 0,"opts.context")}function zn(t){Wn(t),t.extraEntropy!==!1&&t.extraEntropy!==void 0&&ie(t.extraEntropy,void 0,"opts.extraEntropy")}function Zr(t,...e){let r=o=>typeof o=="number"?o:o.bytesLen,n=e.reduce((o,s)=>o+r(s),0);return{bytesLen:n,encode:o=>{let s=new Uint8Array(n);for(let i=0,c=0;i<e.length;i++){let a=e[i],u=r(a),l=typeof a=="number"?o[i]:a.encode(o[i]);ie(l,u,t),s.set(l,c),typeof a!="number"&&l.fill(0),c+=u}return s},decode:o=>{ie(o,n,t);let s=[];for(let i of e){let c=r(i),a=o.subarray(0,c);s.push(typeof i=="number"?a:i.decode(a)),o=o.subarray(c)}return s}}}function Zt(t,e){let r=e*t.bytesLen;return{bytesLen:r,encode:n=>{if(n.length!==e)throw new Error(`vecCoder.encode: wrong length=${n.length}. Expected: ${e}`);let o=new Uint8Array(r);for(let s=0,i=0;s<n.length;s++){let c=t.encode(n[s]);o.set(c,i),c.fill(0),i+=c.length}return o},decode:n=>{ie(n,r);let o=[];for(let s=0;s<n.length;s+=t.bytesLen)o.push(t.decode(n.subarray(s,s+t.bytesLen)));return o}}}function Fe(...t){for(let e of t)if(Array.isArray(e))for(let r of e)r.fill(0);else e.fill(0)}function Rs(t){return(1<<t)-1}function Ts(t,e=Ga){if(ie(t),ie(e),e.length>255)throw new Error("context should be less than 255 bytes");return Ss(new Uint8Array([0,e.length]),e,t)}function Fa(t,e=0){if(!t.oid||!Cs(t.oid.subarray(0,10),cu))throw new Error("hash.oid is invalid: expected NIST hash");let r=t.outputLen*8/2;if(e>r)throw new Error("Pre-hash security strength too low: "+r+", required: "+e)}function Ds(t,e,r=Ga){if(ie(e),ie(r),r.length>255)throw new Error("context should be less than 255 bytes");let n=t(e);return Ss(new Uint8Array([1,r.length]),r,t.oid,n)}var Ks,Ga,cu,Ms=pe(()=>{m();Fn();Fn();Ks=Ka;Ga=Uint8Array.of();cu=Uint8Array.from([6,9,96,134,72,1,101,3,4,2])});var Wa,za,Zn,Yn,Za=pe(()=>{m();qa();Is();Ms();Wa=t=>{let{newPoly:e,N:r,Q:n,F:o,ROOT_OF_UNITY:s,brvBits:i,isKyber:c}=t,a=(B,y=n)=>{let L=B%y|0;return(L>=0?L|0:y+L|0)|0},u=(B,y=n)=>{let L=a(B,y)|0;return(L>y>>1?L-y|0:L)|0};function l(){let B=e(r);for(let y=0;y<r;y++){let L=Us(y,i),P=BigInt(s)**BigInt(L)%BigInt(n);B[y]=Number(P)|0}return B}let f=l(),h={add:(B,y)=>a((B|0)+(y|0))|0,sub:(B,y)=>a((B|0)-(y|0))|0,mul:(B,y)=>a((B|0)*(y|0))|0,inv:B=>{throw new Error("not implemented")}},p={N:r,roots:f,invertButterflies:!0,skipStages:c?1:0,brp:!1},x=_s(h,{dit:!1,...p}),w=_s(h,{dit:!0,...p});return{mod:a,smod:u,nttZetas:f,NTT:{encode:B=>x(B),decode:B=>{w(B);for(let y=0;y<B.length;y++)B[y]=a(o*B[y]);return B}},bitsCoder:(B,y)=>{let L=Rs(B),P=B*(r/8);return{bytesLen:P,encode:F=>{let X=new Uint8Array(P);for(let M=0,U=0,Y=0,ee=0;M<F.length;M++)for(U|=(y.encode(F[M])&L)<<Y,Y+=B;Y>=8;Y-=8,U>>=8)X[ee++]=U&Rs(Y);return X},decode:F=>{let X=e(r);for(let M=0,U=0,Y=0,ee=0;M<F.length;M++)for(U|=F[M]<<Y,Y+=8;Y>=B;Y-=B,U>>=B)X[ee++]=y.decode(U&L);return X}}}}},za=t=>(e,r)=>{r||(r=t.blockLen);let n=new Uint8Array(e.length+2);n.set(e);let o=e.length,s=new Uint8Array(r),i=t.create({}),c=0,a=0;return{stats:()=>({calls:c,xofs:a}),get:(u,l)=>(n[o+0]=u,n[o+1]=l,i.destroy(),i=t.create({}).update(n),c++,()=>(a++,i.xofInto(s))),clean:()=>{i.destroy(),Fe(s,n)}}},Zn=za(Pa),Yn=za(be)});var eo={};oo(eo,{PARAMS:()=>Qn,ml_dsa44:()=>du,ml_dsa65:()=>hu,ml_dsa87:()=>pu});function Ya(t){Os(t),t.externalMu!==void 0&&Pt(t.externalMu,"opts.externalMu")}function Xn(t){let e=ve(re);for(let r=0;r<re;){let n=t();if(n.length%3)throw new Error("RejNTTPoly: unaligned block");for(let o=0;r<re&&o<=n.length-3;o+=3){let s=(n[o+0]|n[o+1]<<8|n[o+2]<<16)&8388607;s<Bt&&(e[r++]=s)}}return e}function Vs(t){let{K:e,L:r,GAMMA1:n,GAMMA2:o,TAU:s,ETA:i,OMEGA:c}=t,{CRH_BYTES:a,TR_BYTES:u,C_TILDE_BYTES:l,XOF128:f,XOF256:h,securityLevel:p}=t;if(![2,4].includes(i))throw new Error("Wrong ETA");if(![1<<17,1<<19].includes(n))throw new Error("Wrong GAMMA1");if(![Ns,Ps].includes(o))throw new Error("Wrong GAMMA2");let x=s*i,w=A=>{let S=Yt(A),E=Jn(S,2*o)|0;return S-E===Bt-1?{r1:0,r0:E-1|0}:{r1:Math.floor((S-E)/(2*o))|0,r0:E}},v=A=>w(A).r1,I=A=>w(A).r0,B=(A,S)=>A<=o||A>Bt-o||A===Bt-o&&S===0?0:1,y=(A,S)=>{let E=Math.floor((Bt-1)/(2*o)),{r1:k,r0:O}=w(S);return A===1?O>0?Yt(k+1,E)|0:Yt(k-1,E)|0:k|0},L=A=>{let S=Yt(A),E=Jn(S,2**Xt)|0;return{r1:Math.floor((S-E)/2**Xt)|0,r0:E}},P={bytesLen:c+e,encode:A=>{if(A===!1)throw new Error("hint.encode: hint is false");let S=new Uint8Array(c+e);for(let E=0,k=0;E<e;E++){for(let O=0;O<re;O++)A[E][O]!==0&&(S[k++]=O);S[c+E]=k}return S},decode:A=>{let S=[],E=0;for(let k=0;k<e;k++){let O=ve(re);if(A[c+k]<E||A[c+k]>c)return!1;for(let G=E;G<A[c+k];G++){if(G>E&&A[G]<=A[G-1])return!1;O[A[G]]=1}E=A[c+k],S.push(O)}for(let k=E;k<c;k++)if(A[k]!==0)return!1;return S}},F=Yr(i===2?3:4,A=>i-A,A=>{if(!(-i<=A&&A<=i))throw new Error(`malformed key s1/s3 ${A} outside of ETA range [${-i}, ${i}]`);return A}),X=Yr(13,A=>(1<<Xt-1)-A),M=Yr(10),U=Yr(n===1<<17?18:20,A=>Jn(n-A)),Y=Yr(o===Ns?6:4),ee=Zt(Y,e),$=Zr("publicKey",32,Zt(M,e)),j=Zr("secretKey",32,32,u,Zt(F,r),Zt(F,e),Zt(X,e)),g=Zr("signature",l,Zt(U,r),P),b=i===2?A=>A<15?2-A%5:!1:A=>A<9?4-A:!1;function H(A){let S=ve(re);for(let E=0;E<re;){let k=A();for(let O=0;E<re&&O<k.length;O+=1){let G=b(k[O]&15),Z=b(k[O]>>4&15);G!==!1&&(S[E++]=G),E<re&&Z!==!1&&(S[E++]=Z)}}return S}let C=A=>{let S=ve(re),E=be.create({}).update(A),k=new Uint8Array(be.blockLen);E.xofInto(k);let O=k.slice(0,8);for(let G=re-s,Z=8,J=0,oe=0;G<re;G++){let se=G+1;for(;se>G;)se=k[Z++],!(Z<be.blockLen)&&(E.xofInto(k),Z=0);S[G]=S[se],S[se]=1-((O[J]>>oe++&1)<<1),oe>=8&&(J++,oe=0)}return S},q=A=>{let S=ve(re),E=ve(re);for(let k=0;k<A.length;k++){let{r0:O,r1:G}=L(A[k]);S[k]=O,E[k]=G}return{r0:S,r1:E}},N=(A,S)=>{for(let E=0;E<re;E++)A[E]=y(S[E],A[E]);return A},W=(A,S)=>{let E=ve(re),k=0;for(let O=0;O<re;O++){let G=B(A[O],S[O]);E[O]=G,k+=G}return{v:E,cnt:k}},_=32,z=Zr("seed",32,64,32),V={info:{type:"internal-ml-dsa"},lengths:{secretKey:j.bytesLen,publicKey:$.bytesLen,seed:32,signature:g.bytesLen,signRand:_},keygen:A=>{let S=new Uint8Array(34),E=A===void 0;E&&(A=Ks(32)),ie(A,32,"seed"),S.set(A),E&&Fe(A),S[32]=e,S[33]=r;let[k,O,G]=z.decode(be(S,{dkLen:z.bytesLen})),Z=h(O),J=[];for(let D=0;D<r;D++)J.push(H(Z.get(D&255,D>>8&255)));let oe=[];for(let D=r;D<r+e;D++)oe.push(H(Z.get(D&255,D>>8&255)));let se=J.map(D=>de.encode(D.slice())),ce=[],he=[],We=f(k),ae=ve(re);for(let D=0;D<e;D++){Fe(ae);for(let me=0;me<r;me++){let Te=Xn(We.get(me,D));At(ae,vt(Te,se[me]))}de.decode(ae);let{r0:Be,r1:ge}=q(At(ae,oe[D]));ce.push(Be),he.push(ge)}let Re=$.encode([k,he]),ze=be(Re,{dkLen:u}),Qt=j.encode([k,G,ze,J,oe,ce]);return We.clean(),Z.clean(),Fe(k,O,G,J,oe,se,ae,ce,he,ze,S),{publicKey:Re,secretKey:Qt}},getPublicKey:A=>{let[S,E,k,O,G,Z]=j.decode(A),J=f(S),oe=O.map(he=>de.encode(he.slice())),se=[],ce=ve(re);for(let he=0;he<e;he++){ce.fill(0);for(let ae=0;ae<r;ae++){let Re=Xn(J.get(ae,he));At(ce,vt(Re,oe[ae]))}de.decode(ce),At(ce,G[he]);let{r1:We}=q(ce);se.push(We)}return J.clean(),Fe(ce,oe,Z,O,G),$.encode([S,se])},sign:(A,S,E={})=>{zn(E),Ya(E);let{extraEntropy:k,externalMu:O=!1}=E,[G,Z,J,oe,se,ce]=j.decode(S),he=[],We=f(G);for(let D=0;D<e;D++){let Be=[];for(let ge=0;ge<r;ge++)Be.push(Xn(We.get(ge,D)));he.push(Be)}We.clean();for(let D=0;D<r;D++)de.encode(oe[D]);for(let D=0;D<e;D++)de.encode(se[D]),de.encode(ce[D]);let ae=O?A:be.create({dkLen:a}).update(J).update(A).digest(),Re=k===!1?new Uint8Array(32):k===void 0?Ks(_):k;ie(Re,32,"extraEntropy");let ze=be.create({dkLen:a}).update(Z).update(Re).update(ae).digest();ie(ze,a);let Qt=h(ze,U.bytesLen);e:for(let D=0;;){let Be=[];for(let te=0;te<r;te++,D++)Be.push(U.decode(Qt.get(D&255,D>>8)()));let ge=Be.map(te=>de.encode(te.slice())),me=[];for(let te=0;te<e;te++){let xr=ve(re);for(let it=0;it<r;it++)At(xr,vt(he[te][it],ge[it]));de.decode(xr),me.push(xr)}let Te=me.map(te=>te.map(v)),pr=be.create({dkLen:l}).update(ae).update(ee.encode(Te)).digest(),nn=de.encode(C(pr)),on=oe.map(te=>vt(te,nn));for(let te=0;te<r;te++)if(At(de.decode(on[te]),Be[te]),Xr(on[te],n-x))continue e;let Ws=0,no=[];for(let te=0;te<e;te++){let xr=de.decode(vt(se[te],nn)),it=Ja(me[te],xr).map(I);if(Xr(it,o-x))continue e;let zs=de.decode(vt(ce[te],nn));if(Xr(zs,o))continue e;At(it,zs);let Zs=W(it,Te[te]);no.push(Zs.v),Ws+=Zs.cnt}if(Ws>c)continue;Qt.clean();let Qa=g.encode([pr,on,no]);return Fe(pr,on,no,nn,Te,me,ge,Be,ze,ae,oe,se,ce,...he),Qa}throw new Error("Unreachable code path reached, report this error")},verify:(A,S,E,k={})=>{Ya(k);let{externalMu:O=!1}=k,[G,Z]=$.decode(E),J=be(E,{dkLen:u});if(A.length!==g.bytesLen)return!1;let[oe,se,ce]=g.decode(A);if(ce===!1)return!1;for(let D=0;D<r;D++)if(Xr(se[D],n-x))return!1;let he=O?S:be.create({dkLen:a}).update(J).update(S).digest(),We=de.encode(C(oe)),ae=se.map(D=>D.slice());for(let D=0;D<r;D++)de.encode(ae[D]);let Re=[],ze=f(G);for(let D=0;D<e;D++){let Be=vt(de.encode(lu(Z[D])),We),ge=ve(re);for(let Te=0;Te<r;Te++){let pr=Xn(ze.get(Te,D));At(ge,vt(pr,ae[Te]))}let me=de.decode(Ja(ge,Be));Re.push(N(me,ce[D]))}ze.clean();let Qt=be.create({dkLen:l}).update(he).update(ee.encode(Re)).digest();for(let D of ce)if(!(D.reduce((ge,me)=>ge+me,0)<=c))return!1;for(let D of se)if(Xr(D,n-x))return!1;return Cs(oe,Qt)}};return{info:{type:"ml-dsa"},internal:V,securityLevel:p,keygen:V.keygen,lengths:V.lengths,getPublicKey:V.getPublicKey,sign:(A,S,E={})=>{zn(E);let k=Ts(A,E.context),O=V.sign(k,S,E);return Fe(k),O},verify:(A,S,E,k={})=>(Wn(k),V.verify(A,Ts(S,k.context),E)),prehash:A=>(Fa(A,p),{info:{type:"hashml-dsa"},securityLevel:p,lengths:V.lengths,keygen:V.keygen,getPublicKey:V.getPublicKey,sign:(S,E,k={})=>{zn(k);let O=Ds(A,S,k.context),G=V.sign(O,E,k);return Fe(O),G},verify:(S,E,k,O={})=>(Wn(O),V.verify(S,Ds(A,E,O.context),k))})}}var re,Bt,au,fu,Xt,Ns,Ps,Qn,ve,Yt,Jn,de,uu,Xa,Yr,At,Ja,lu,Xr,vt,du,hu,pu,to=pe(()=>{m();Rr();Is();Za();Ms();re=256,Bt=8380417,au=1753,fu=8347681,Xt=13,Ns=Math.floor((Bt-1)/88)|0,Ps=Math.floor((Bt-1)/32)|0,Qn={2:{K:4,L:4,D:Xt,GAMMA1:2**17,GAMMA2:Ns,TAU:39,ETA:2,OMEGA:80},3:{K:6,L:5,D:Xt,GAMMA1:2**19,GAMMA2:Ps,TAU:49,ETA:4,OMEGA:55},5:{K:8,L:7,D:Xt,GAMMA1:2**19,GAMMA2:Ps,TAU:60,ETA:2,OMEGA:75}},ve=t=>new Int32Array(t),{mod:Yt,smod:Jn,NTT:de,bitsCoder:uu}=Wa({N:re,Q:Bt,F:fu,ROOT_OF_UNITY:au,newPoly:ve,isKyber:!1,brvBits:8}),Xa=t=>t,Yr=(t,e=Xa,r=Xa)=>uu(t,{encode:n=>e(r(n)),decode:n=>r(e(n))}),At=(t,e)=>{for(let r=0;r<t.length;r++)t[r]=Yt(t[r]+e[r]);return t},Ja=(t,e)=>{for(let r=0;r<t.length;r++)t[r]=Yt(t[r]-e[r]);return t},lu=t=>{for(let e=0;e<re;e++)t[e]<<=Xt;return t},Xr=(t,e)=>{for(let r=0;r<re;r++)if(Math.abs(Jn(t[r]))>=e)return!0;return!1},vt=(t,e)=>{let r=ve(re);for(let n=0;n<t.length;n++)r[n]=Yt(t[n]*e[n]);return r};du=Vs({...Qn[2],CRH_BYTES:64,TR_BYTES:64,C_TILDE_BYTES:32,XOF128:Zn,XOF256:Yn,securityLevel:128}),hu=Vs({...Qn[3],CRH_BYTES:64,TR_BYTES:64,C_TILDE_BYTES:48,XOF128:Zn,XOF256:Yn,securityLevel:192}),pu=Vs({...Qn[5],CRH_BYTES:64,TR_BYTES:64,C_TILDE_BYTES:64,XOF128:Zn,XOF256:Yn,securityLevel:256})});var mu={};oo(mu,{InMemoryKeyStorage:()=>St,createKeySDK:()=>Fs,default:()=>gu});m();m();m();m();m();m();m();var i0={p:0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2fn,n:0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141n,h:1n,a:0n,b:7n,Gx:0x79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798n,Gy:0x483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8n},{p:Ht,n:Pe,Gx:c0,Gy:a0,b:ti}=i0,we=32,It=64,ne=(t="")=>{throw new Error(t)},ri=t=>typeof t=="bigint",ni=t=>typeof t=="string",f0=t=>t instanceof Uint8Array||ArrayBuffer.isView(t)&&t.constructor.name==="Uint8Array",Ut=(t,e)=>!f0(t)||typeof e=="number"&&e>0&&t.length!==e?ne("Uint8Array expected"):t,Lt=t=>new Uint8Array(t),u0=t=>Uint8Array.from(t),oi=(t,e)=>t.toString(16).padStart(e,"0"),un=t=>Array.from(Ut(t)).map(e=>oi(e,2)).join(""),Ze={_0:48,_9:57,A:65,F:70,a:97,f:102},Ys=t=>{if(t>=Ze._0&&t<=Ze._9)return t-Ze._0;if(t>=Ze.A&&t<=Ze.F)return t-(Ze.A-10);if(t>=Ze.a&&t<=Ze.f)return t-(Ze.a-10)},ao=t=>{let e="hex invalid";if(!ni(t))return ne(e);let r=t.length,n=r/2;if(r%2)return ne(e);let o=Lt(n);for(let s=0,i=0;s<n;s++,i+=2){let c=Ys(t.charCodeAt(i)),a=Ys(t.charCodeAt(i+1));if(c===void 0||a===void 0)return ne(e);o[s]=c*16+a}return o},Me=(t,e)=>Ut(ni(t)?ao(t):u0(Ut(t)),e),si=()=>globalThis?.crypto,l0=()=>si()?.subtle??ne("crypto.subtle must be defined"),_t=(...t)=>{let e=Lt(t.reduce((n,o)=>n+Ut(o).length,0)),r=0;return t.forEach(n=>{e.set(n,r),r+=n.length}),e},fo=(t=we)=>si().getRandomValues(Lt(t)),tr=BigInt,mr=(t,e,r,n="bad number: out of range")=>ri(t)&&e<=t&&t<r?t:ne(n),K=(t,e=Ht)=>{let r=t%e;return r>=0n?r:e+r},Se=t=>K(t,Pe),wr=(t,e)=>{(t===0n||e<=0n)&&ne("no inverse n="+t+" mod="+e);let r=K(t,e),n=e,o=0n,s=1n,i=1n,c=0n;for(;r!==0n;){let a=n/r,u=n%r,l=o-i*a,f=s-c*a;n=r,r=u,o=i,s=c,i=l,c=f}return n===1n?K(o,e):ne("no inverse")},d0=t=>{let e=Ar[t];return typeof e!="function"&&ne("hashes."+t+" not set"),e},Xs=t=>t instanceof Ye?t:ne("Point expected"),ii=t=>K(K(t*t)*t+ti),Js=t=>mr(t,0n,Ht),yr=t=>mr(t,1n,Ht),so=t=>mr(t,1n,Pe),io=t=>(t&1n)===0n,er=t=>Uint8Array.of(t),ci=t=>er(io(t)?2:3),h0=t=>{let e=ii(yr(t)),r=1n;for(let n=e,o=(Ht+1n)/4n;o>0n;o>>=1n)o&1n&&(r=r*n%Ht),n=n*n%Ht;return K(r*r)===e?r:ne("sqrt invalid")},De=class De{constructor(e,r,n){d(this,"px");d(this,"py");d(this,"pz");this.px=Js(e),this.py=yr(r),this.pz=Js(n),Object.freeze(this)}static fromBytes(e){Ut(e);let r,n=e[0],o=e.subarray(1),s=cn(o,0,we),i=e.length;if(i===we+1&&[2,3].includes(n)){let c=h0(s),a=io(c);io(tr(n))!==a&&(c=K(-c)),r=new De(s,c,1n)}return i===It+1&&n===4&&(r=new De(s,cn(o,we,It),1n)),r?r.assertValidity():ne("bad point: not on curve")}equals(e){let{px:r,py:n,pz:o}=this,{px:s,py:i,pz:c}=Xs(e),a=K(r*c),u=K(s*o),l=K(n*c),f=K(i*o);return a===u&&l===f}is0(){return this.equals(kt)}negate(){return new De(this.px,K(-this.py),this.pz)}double(){return this.add(this)}add(e){let{px:r,py:n,pz:o}=this,{px:s,py:i,pz:c}=Xs(e),a=0n,u=ti,l=0n,f=0n,h=0n,p=K(u*3n),x=K(r*s),w=K(n*i),v=K(o*c),I=K(r+n),B=K(s+i);I=K(I*B),B=K(x+w),I=K(I-B),B=K(r+o);let y=K(s+c);return B=K(B*y),y=K(x+v),B=K(B-y),y=K(n+o),l=K(i+c),y=K(y*l),l=K(w+v),y=K(y-l),h=K(a*B),l=K(p*v),h=K(l+h),l=K(w-h),h=K(w+h),f=K(l*h),w=K(x+x),w=K(w+x),v=K(a*v),B=K(p*B),w=K(w+v),v=K(x-v),v=K(a*v),B=K(B+v),x=K(w*B),f=K(f+x),x=K(y*B),l=K(I*l),l=K(l-x),x=K(I*w),h=K(y*h),h=K(h+x),new De(l,f,h)}multiply(e,r=!0){if(!r&&e===0n)return kt;if(so(e),e===1n)return this;if(this.equals(Ne))return v0(e).p;let n=kt,o=Ne;for(let s=this;e>0n;s=s.double(),e>>=1n)e&1n?n=n.add(s):r&&(o=o.add(s));return n}toAffine(){let{px:e,py:r,pz:n}=this;if(this.equals(kt))return{x:0n,y:0n};if(n===1n)return{x:e,y:r};let o=wr(n,Ht);return K(n*o)!==1n&&ne("inverse invalid"),{x:K(e*o),y:K(r*o)}}assertValidity(){let{x:e,y:r}=this.toAffine();return yr(e),yr(r),K(r*r)===ii(e)?this:ne("bad point: not on curve")}toBytes(e=!0){let{x:r,y:n}=this.assertValidity().toAffine(),o=ct(r);return e?_t(ci(n),o):_t(er(4),o,ct(n))}static fromAffine(e){let{x:r,y:n}=e;return r===0n&&n===0n?kt:new De(r,n,1n)}toHex(e){return un(this.toBytes(e))}static fromPrivateKey(e){return Ne.multiply(br(e))}static fromHex(e){return De.fromBytes(Me(e))}get x(){return this.toAffine().x}get y(){return this.toAffine().y}toRawBytes(e){return this.toBytes(e)}};d(De,"BASE"),d(De,"ZERO");var Ye=De,Ne=new Ye(c0,a0,1n),kt=new Ye(0n,1n,0n);Ye.BASE=Ne;Ye.ZERO=kt;var ai=(t,e,r)=>Ne.multiply(e,!1).add(t.multiply(r,!1)).assertValidity(),Er=t=>tr("0x"+(un(t)||"0")),cn=(t,e,r)=>Er(t.subarray(e,r)),p0=2n**256n,ct=t=>ao(oi(mr(t,0n,p0),It)),br=t=>{let e=ri(t)?t:Er(Me(t,we));return mr(e,1n,Pe,"private key invalid 3")},an=t=>t>Pe>>1n,fi=(t,e=!0)=>Ne.multiply(br(t)).toBytes(e),gr=class t{constructor(e,r,n){d(this,"r");d(this,"s");d(this,"recovery");this.r=so(e),this.s=so(r),n!=null&&(this.recovery=n),Object.freeze(this)}static fromBytes(e){Ut(e,It);let r=cn(e,0,we),n=cn(e,we,It);return new t(r,n)}toBytes(){let{r:e,s:r}=this;return _t(ct(e),ct(r))}addRecoveryBit(e){return new t(this.r,this.s,e)}hasHighS(){return an(this.s)}toCompactRawBytes(){return this.toBytes()}toCompactHex(){return un(this.toBytes())}recoverPublicKey(e){return g0(this,e)}static fromCompact(e){return t.fromBytes(Me(e,It))}assertValidity(){return this}normalizeS(){let{r:e,s:r,recovery:n}=this;return an(r)?new t(e,Se(-r),n):this}},ui=t=>{let e=t.length*8-256;e>1024&&ne("msg invalid");let r=Er(t);return e>0?r>>tr(e):r},uo=t=>Se(ui(Ut(t))),li={lowS:!0},x0={lowS:!0},y0=(t,e,r=li)=>{["der","recovered","canonical"].some(h=>h in r)&&ne("option not supported");let{lowS:n,extraEntropy:o}=r;n==null&&(n=!0);let s=ct,i=uo(Me(t)),c=s(i),a=br(e),u=[s(a),c];o&&u.push(o===!0?fo(we):Me(o));let l=i,f=h=>{let p=ui(h);if(!(1n<=p&&p<Pe))return;let x=Ne.multiply(p).toAffine(),w=Se(x.x);if(w===0n)return;let v=wr(p,Pe),I=Se(v*Se(l+Se(a*w)));if(I===0n)return;let B=I,y=(x.x===w?0:2)|Number(x.y&1n);return n&&an(I)&&(B=Se(-I),y^=1),new gr(w,B,y)};return{seed:_t(...u),k2sig:f}},b0=t=>{let e=Lt(we),r=Lt(we),n=0,o=Lt(0),s=()=>{e.fill(1),r.fill(0),n=0},i=1e3,c="drbg: tried 1000 values";if(t){let a=(...f)=>Ar.hmacSha256Async(r,e,...f),u=async(f=o)=>{r=await a(er(0),f),e=await a(),f.length!==0&&(r=await a(er(1),f),e=await a())},l=async()=>(n++>=i&&ne(c),e=await a(),e);return async(f,h)=>{s(),await u(f);let p;for(;!(p=h(await l()));)await u();return s(),p}}else{let a=(...f)=>d0("hmacSha256Sync")(r,e,...f),u=(f=o)=>{r=a(er(0),f),e=a(),f.length!==0&&(r=a(er(1),f),e=a())},l=()=>(n++>=i&&ne(c),e=a(),e);return(f,h)=>{s(),u(f);let p;for(;!(p=h(l()));)u();return s(),p}}};var di=(t,e,r=li)=>{let{seed:n,k2sig:o}=y0(t,e,r);return b0(!1)(n,o)},hi=(t,e,r,n=x0)=>{let{lowS:o}=n;o==null&&(o=!0),"strict"in n&&ne("option not supported");let s,i=t&&typeof t=="object"&&"r"in t;!i&&Me(t).length!==It&&ne("signature must be 64 bytes");try{s=i?new gr(t.r,t.s):gr.fromCompact(t);let c=uo(Me(e)),a=Ye.fromBytes(Me(r)),{r:u,s:l}=s;if(o&&an(l))return!1;let f=wr(l,Pe),h=Se(c*f),p=Se(u*f),x=ai(a,h,p).toAffine();return Se(x.x)===u}catch{return!1}},g0=(t,e)=>{let{r,s:n,recovery:o}=t;[0,1,2,3].includes(o)||ne("recovery id invalid");let s=uo(Me(e,we)),i=o===2||o===3?r+Pe:r;yr(i);let c=ci(tr(o)),a=_t(c,ct(i)),u=Ye.fromBytes(a),l=wr(i,Pe),f=Se(-s*l),h=Se(n*l);return ai(u,f,h)};var pi=t=>{t=Me(t),(t.length<we+8||t.length>1024)&&ne("expected 40-1024b");let e=K(Er(t),Pe-1n);return ct(e+1n)},m0=()=>pi(fo(we+16)),w0="SHA-256",Ar={hexToBytes:ao,bytesToHex:un,concatBytes:_t,bytesToNumberBE:Er,numberToBytesBE:ct,mod:K,invert:wr,hmacSha256Async:async(t,...e)=>{let r=l0(),n="HMAC",o=await r.importKey("raw",t,{name:n,hash:{name:w0}},!1,["sign"]);return Lt(await r.sign(n,o,_t(...e)))},hmacSha256Sync:void 0,hashToPrivateKey:pi,randomBytes:fo},xi={normPrivateKeyToScalar:br,isValidPrivateKey:t=>{try{return!!br(t)}catch{return!1}},randomPrivateKey:m0,precompute:(t=8,e=Ne)=>(e.multiply(3n),e)},fn=8,E0=256,yi=Math.ceil(E0/fn)+1,co=2**(fn-1),A0=()=>{let t=[],e=Ne,r=e;for(let n=0;n<yi;n++){r=e,t.push(r);for(let o=1;o<co;o++)r=r.add(e),t.push(r);e=r.double()}return t},Qs,ei=(t,e)=>{let r=e.negate();return t?r:e},v0=t=>{let e=Qs||(Qs=A0()),r=kt,n=Ne,o=2**fn,s=o,i=tr(o-1),c=tr(fn);for(let a=0;a<yi;a++){let u=Number(t&i);t>>=c,u>co&&(u-=s,t+=1n);let l=a*co,f=l,h=l+Math.abs(u)-1,p=a%2!==0,x=u<0;u===0?n=n.add(ei(p,e[f])):r=r.add(ei(x,e[h]))}return{p:r,f:n}};m();Sr();var hn=class extends at{constructor(e,r){super(),this.finished=!1,this.destroyed=!1,bi(e);let n=Kt(r);if(this.iHash=e.create(),typeof this.iHash.update!="function")throw new Error("Expected instance of class which extends utils.Hash");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;let o=this.blockLen,s=new Uint8Array(o);s.set(n.length>o?e.create().update(n).digest():n);for(let i=0;i<s.length;i++)s[i]^=54;this.iHash.update(s),this.oHash=e.create();for(let i=0;i<s.length;i++)s[i]^=106;this.oHash.update(s),ke(s)}update(e){return Je(this),this.iHash.update(e),this}digestInto(e){Je(this),Xe(e,this.outputLen),this.finished=!0,this.iHash.digestInto(e),this.oHash.update(e),this.oHash.digestInto(e),this.destroy()}digest(){let e=new Uint8Array(this.oHash.outputLen);return this.digestInto(e),e}_cloneInto(e){e||(e=Object.create(Object.getPrototypeOf(this),{}));let{oHash:r,iHash:n,finished:o,destroyed:s,blockLen:i,outputLen:c}=this;return e=e,e.finished=o,e.destroyed=s,e.blockLen=i,e.outputLen=c,e.oHash=r._cloneInto(e.oHash),e.iHash=n._cloneInto(e.iHash),e}clone(){return this._cloneInto()}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}},ho=(t,e,r)=>new hn(t,e).update(r).digest();ho.create=(t,e)=>new hn(t,e);m();go();var Rt=bn;m();function Ur(t){return Array.from(t).map(e=>e.toString(16).padStart(2,"0")).join("")}function rr(t){if(t.length%2!==0)throw new Error("Hex string must have even length");let e=new Uint8Array(t.length/2);for(let r=0;r<t.length;r+=2)e[r/2]=parseInt(t.slice(r,r+2),16);return e}async function wn(t,e){if(e==="sha256"){let r=await Promise.resolve().then(()=>(mn(),gn));return new Uint8Array(r.createHash("sha256").update(t).digest())}else if(e==="sha512"){let r=await Promise.resolve().then(()=>(mn(),gn));return new Uint8Array(r.createHash("sha512").update(t).digest())}else if(e==="sha3-256"){let r=await Promise.resolve().then(()=>(mn(),gn));return new Uint8Array(r.createHash("sha3-256").update(t).digest())}throw new Error(`Unsupported hash algorithm: ${e}`)}m();m();m();m();m();Nt();function Zi(t,e,r){return t&e^~t&r}function Yi(t,e,r){return t&e^t&r^e&r}var Bn=class{constructor(e,r,n,o){d(this,"blockLen");d(this,"outputLen");d(this,"padOffset");d(this,"isLE");d(this,"buffer");d(this,"view");d(this,"finished",!1);d(this,"length",0);d(this,"pos",0);d(this,"destroyed",!1);this.blockLen=e,this.outputLen=r,this.padOffset=n,this.isLE=o,this.buffer=new Uint8Array(e),this.view=An(this.buffer)}update(e){nr(this),Q(e);let{view:r,buffer:n,blockLen:o}=this,s=e.length;for(let i=0;i<s;){let c=Math.min(o-this.pos,s-i);if(c===o){let a=An(e);for(;o<=s-i;i+=o)this.process(a,i);continue}n.set(e.subarray(i,i+c),this.pos),this.pos+=c,i+=c,this.pos===o&&(this.process(r,0),this.pos=0)}return this.length+=e.length,this.roundClean(),this}digestInto(e){nr(this),Gi(e,this),this.finished=!0;let{buffer:r,view:n,blockLen:o,isLE:s}=this,{pos:i}=this;r[i++]=128,Tt(this.buffer.subarray(i)),this.padOffset>o-i&&(this.process(n,0),i=0);for(let f=i;f<o;f++)r[f]=0;n.setBigUint64(o-8,BigInt(this.length*8),s),this.process(n,0);let c=An(e),a=this.outputLen;if(a%4)throw new Error("_sha2: outputLen must be aligned to 32bit");let u=a/4,l=this.get();if(u>l.length)throw new Error("_sha2: outputLen bigger than state");for(let f=0;f<u;f++)c.setUint32(4*f,l[f],s)}digest(){let{buffer:e,outputLen:r}=this;this.digestInto(e);let n=e.slice(0,r);return this.destroy(),n}_cloneInto(e){e||(e=new this.constructor),e.set(...this.get());let{blockLen:r,buffer:n,length:o,finished:s,destroyed:i,pos:c}=this;return e.destroyed=i,e.finished=s,e.length=o,e.pos=c,o%r&&e.buffer.set(n),e}clone(){return this._cloneInto()}},tt=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]);Nt();var W0=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]),dt=new Uint32Array(64),wo=class extends Bn{constructor(e){super(64,e,8,!1)}get(){let{A:e,B:r,C:n,D:o,E:s,F:i,G:c,H:a}=this;return[e,r,n,o,s,i,c,a]}set(e,r,n,o,s,i,c,a){this.A=e|0,this.B=r|0,this.C=n|0,this.D=o|0,this.E=s|0,this.F=i|0,this.G=c|0,this.H=a|0}process(e,r){for(let f=0;f<16;f++,r+=4)dt[f]=e.getUint32(r,!1);for(let f=16;f<64;f++){let h=dt[f-15],p=dt[f-2],x=Le(h,7)^Le(h,18)^h>>>3,w=Le(p,17)^Le(p,19)^p>>>10;dt[f]=w+dt[f-7]+x+dt[f-16]|0}let{A:n,B:o,C:s,D:i,E:c,F:a,G:u,H:l}=this;for(let f=0;f<64;f++){let h=Le(c,6)^Le(c,11)^Le(c,25),p=l+h+Zi(c,a,u)+W0[f]+dt[f]|0,w=(Le(n,2)^Le(n,13)^Le(n,22))+Yi(n,o,s)|0;l=u,u=a,a=c,c=i+p|0,i=s,s=o,o=n,n=p+w|0}n=n+this.A|0,o=o+this.B|0,s=s+this.C|0,i=i+this.D|0,c=c+this.E|0,a=a+this.F|0,u=u+this.G|0,l=l+this.H|0,this.set(n,o,s,i,c,a,u,l)}roundClean(){Tt(dt)}destroy(){this.set(0,0,0,0,0,0,0,0),Tt(this.buffer)}},Eo=class extends wo{constructor(){super(32);d(this,"A",tt[0]|0);d(this,"B",tt[1]|0);d(this,"C",tt[2]|0);d(this,"D",tt[3]|0);d(this,"E",tt[4]|0);d(this,"F",tt[5]|0);d(this,"G",tt[6]|0);d(this,"H",tt[7]|0)}};var Xi=Wi(()=>new Eo,zi(1));m();Rr();m();Rr();var ye=BigInt(0),xe=BigInt(1),Vt=BigInt(2),oc=BigInt(3),sc=BigInt(4),ic=BigInt(5),Y0=BigInt(7),cc=BigInt(8),X0=BigInt(9),ac=BigInt(16);function _e(t,e){let r=t%e;return r>=ye?r:e+r}function Ee(t,e,r){let n=t;for(;e-- >ye;)n*=n,n%=r;return n}function rc(t,e){if(t===ye)throw new Error("invert: expected non-zero number");if(e<=ye)throw new Error("invert: expected positive modulus, got "+e);let r=_e(t,e),n=e,o=ye,s=xe,i=xe,c=ye;for(;r!==ye;){let u=n/r,l=n%r,f=o-i*u,h=s-c*u;n=r,r=l,o=i,s=c,i=f,c=h}if(n!==xe)throw new Error("invert: does not exist");return _e(o,e)}function Lo(t,e,r){if(!t.eql(t.sqr(e),r))throw new Error("Cannot find square root")}function fc(t,e){let r=(t.ORDER+xe)/sc,n=t.pow(e,r);return Lo(t,n,e),n}function J0(t,e){let r=(t.ORDER-ic)/cc,n=t.mul(e,Vt),o=t.pow(n,r),s=t.mul(e,o),i=t.mul(t.mul(s,Vt),o),c=t.mul(s,t.sub(i,t.ONE));return Lo(t,c,e),c}function Q0(t){let e=sr(t),r=uc(t),n=r(e,e.neg(e.ONE)),o=r(e,n),s=r(e,e.neg(n)),i=(t+Y0)/ac;return(c,a)=>{let u=c.pow(a,i),l=c.mul(u,n),f=c.mul(u,o),h=c.mul(u,s),p=c.eql(c.sqr(l),a),x=c.eql(c.sqr(f),a);u=c.cmov(u,l,p),l=c.cmov(h,f,x);let w=c.eql(c.sqr(l),a),v=c.cmov(u,l,w);return Lo(c,v,a),v}}function uc(t){if(t<oc)throw new Error("sqrt is not defined for small field");let e=t-xe,r=0;for(;e%Vt===ye;)e/=Vt,r++;let n=Vt,o=sr(t);for(;nc(o,n)===1;)if(n++>1e3)throw new Error("Cannot find square root: probably non-prime P");if(r===1)return fc;let s=o.pow(n,e),i=(e+xe)/Vt;return function(a,u){if(a.is0(u))return u;if(nc(a,u)!==1)throw new Error("Cannot find square root");let l=r,f=a.mul(a.ONE,s),h=a.pow(u,e),p=a.pow(u,i);for(;!a.eql(h,a.ONE);){if(a.is0(h))return a.ZERO;let x=1,w=a.sqr(h);for(;!a.eql(w,a.ONE);)if(x++,w=a.sqr(w),x===l)throw new Error("Cannot find square root");let v=xe<<BigInt(l-x-1),I=a.pow(f,v);l=x,f=a.sqr(I),h=a.mul(h,f),p=a.mul(p,I)}return p}}function ef(t){return t%sc===oc?fc:t%cc===ic?J0:t%ac===X0?Q0(t):uc(t)}var tf=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function Uo(t){let e={ORDER:"bigint",BYTES:"number",BITS:"number"},r=tf.reduce((n,o)=>(n[o]="function",n),e);return Or(t,r),t}function rf(t,e,r){if(r<ye)throw new Error("invalid exponent, negatives unsupported");if(r===ye)return t.ONE;if(r===xe)return e;let n=t.ONE,o=e;for(;r>ye;)r&xe&&(n=t.mul(n,o)),o=t.sqr(o),r>>=xe;return n}function Hn(t,e,r=!1){let n=new Array(e.length).fill(r?t.ZERO:void 0),o=e.reduce((i,c,a)=>t.is0(c)?i:(n[a]=i,t.mul(i,c)),t.ONE),s=t.inv(o);return e.reduceRight((i,c,a)=>t.is0(c)?i:(n[a]=t.mul(i,n[a]),t.mul(i,c)),s),n}function nc(t,e){let r=(t.ORDER-xe)/Vt,n=t.pow(e,r),o=t.eql(n,t.ONE),s=t.eql(n,t.ZERO),i=t.eql(n,t.neg(t.ONE));if(!o&&!s&&!i)throw new Error("invalid Legendre symbol result");return o?1:s?0:-1}function nf(t,e){e!==void 0&&$e(e);let r=e!==void 0?e:t.toString(2).length,n=Math.ceil(r/8);return{nBitLength:r,nByteLength:n}}var Io=class{constructor(e,r={}){d(this,"ORDER");d(this,"BITS");d(this,"BYTES");d(this,"isLE");d(this,"ZERO",ye);d(this,"ONE",xe);d(this,"_lengths");d(this,"_sqrt");d(this,"_mod");if(e<=ye)throw new Error("invalid field: expected ORDER > 0, got "+e);let n;this.isLE=!1,r!=null&&typeof r=="object"&&(typeof r.BITS=="number"&&(n=r.BITS),typeof r.sqrt=="function"&&(this.sqrt=r.sqrt),typeof r.isLE=="boolean"&&(this.isLE=r.isLE),r.allowedLengths&&(this._lengths=r.allowedLengths?.slice()),typeof r.modFromBytes=="boolean"&&(this._mod=r.modFromBytes));let{nBitLength:o,nByteLength:s}=nf(e,n);if(s>2048)throw new Error("invalid field: expected ORDER of <= 2048 bytes");this.ORDER=e,this.BITS=o,this.BYTES=s,this._sqrt=void 0,Object.preventExtensions(this)}create(e){return _e(e,this.ORDER)}isValid(e){if(typeof e!="bigint")throw new Error("invalid field element: expected bigint, got "+typeof e);return ye<=e&&e<this.ORDER}is0(e){return e===ye}isValidNot0(e){return!this.is0(e)&&this.isValid(e)}isOdd(e){return(e&xe)===xe}neg(e){return _e(-e,this.ORDER)}eql(e,r){return e===r}sqr(e){return _e(e*e,this.ORDER)}add(e,r){return _e(e+r,this.ORDER)}sub(e,r){return _e(e-r,this.ORDER)}mul(e,r){return _e(e*r,this.ORDER)}pow(e,r){return rf(this,e,r)}div(e,r){return _e(e*rc(r,this.ORDER),this.ORDER)}sqrN(e){return e*e}addN(e,r){return e+r}subN(e,r){return e-r}mulN(e,r){return e*r}inv(e){return rc(e,this.ORDER)}sqrt(e){return this._sqrt||(this._sqrt=ef(this.ORDER)),this._sqrt(this,e)}toBytes(e){return this.isLE?So(e,this.BYTES):kn(e,this.BYTES)}fromBytes(e,r=!1){Q(e);let{_lengths:n,BYTES:o,isLE:s,ORDER:i,_mod:c}=this;if(n){if(!n.includes(e.length)||e.length>o)throw new Error("Field.fromBytes: expected "+n+" bytes, got "+e.length);let u=new Uint8Array(o);u.set(e,s?0:u.length-e.length),e=u}if(e.length!==o)throw new Error("Field.fromBytes: expected "+o+" bytes, got "+e.length);let a=s?Bo(e):or(e);if(c&&(a=_e(a,i)),!r&&!this.isValid(a))throw new Error("invalid field element: outside of range 0..ORDER");return a}invertBatch(e){return Hn(this,e)}cmov(e,r,n){return n?r:e}};function sr(t,e={}){return new Io(t,e)}function lc(t){if(typeof t!="bigint")throw new Error("field order must be bigint");let e=t.toString(2).length;return Math.ceil(e/8)}function _o(t){let e=lc(t);return e+Math.ceil(e/2)}function Ko(t,e,r=!1){Q(t);let n=t.length,o=lc(e),s=_o(e);if(n<16||n<s||n>1024)throw new Error("expected "+s+"-1024 bytes of input, got "+n);let i=r?Bo(t):or(t),c=_e(i,e-xe)+xe;return r?So(c,o):kn(c,o)}var ir=BigInt(0),$t=BigInt(1);function Tr(t,e){let r=e.negate();return t?r:e}function To(t,e){let r=Hn(t.Fp,e.map(n=>n.Z));return e.map((n,o)=>t.fromAffine(n.toAffine(r[o])))}function xc(t,e){if(!Number.isSafeInteger(t)||t<=0||t>e)throw new Error("invalid window size, expected [1.."+e+"], got W="+t)}function Co(t,e){xc(t,e);let r=Math.ceil(e/t)+1,n=2**(t-1),o=2**t,s=Cr(t),i=BigInt(t);return{windows:r,windowSize:n,mask:s,maxNumber:o,shiftBy:i}}function dc(t,e,r){let{windowSize:n,mask:o,maxNumber:s,shiftBy:i}=r,c=Number(t&o),a=t>>i;c>n&&(c-=s,a+=$t);let u=e*n,l=u+Math.abs(c)-1,f=c===0,h=c<0,p=e%2!==0;return{nextN:a,offset:l,isZero:f,isNeg:h,isNegF:p,offsetF:u}}var Oo=new WeakMap,yc=new WeakMap;function Ro(t){return yc.get(t)||1}function hc(t){if(t!==ir)throw new Error("invalid wNAF")}var In=class{constructor(e,r){d(this,"BASE");d(this,"ZERO");d(this,"Fn");d(this,"bits");this.BASE=e.BASE,this.ZERO=e.ZERO,this.Fn=e.Fn,this.bits=r}_unsafeLadder(e,r,n=this.ZERO){let o=e;for(;r>ir;)r&$t&&(n=n.add(o)),o=o.double(),r>>=$t;return n}precomputeWindow(e,r){let{windows:n,windowSize:o}=Co(r,this.bits),s=[],i=e,c=i;for(let a=0;a<n;a++){c=i,s.push(c);for(let u=1;u<o;u++)c=c.add(i),s.push(c);i=c.double()}return s}wNAF(e,r,n){if(!this.Fn.isValid(n))throw new Error("invalid scalar");let o=this.ZERO,s=this.BASE,i=Co(e,this.bits);for(let c=0;c<i.windows;c++){let{nextN:a,offset:u,isZero:l,isNeg:f,isNegF:h,offsetF:p}=dc(n,c,i);n=a,l?s=s.add(Tr(h,r[p])):o=o.add(Tr(f,r[u]))}return hc(n),{p:o,f:s}}wNAFUnsafe(e,r,n,o=this.ZERO){let s=Co(e,this.bits);for(let i=0;i<s.windows&&n!==ir;i++){let{nextN:c,offset:a,isZero:u,isNeg:l}=dc(n,i,s);if(n=c,!u){let f=r[a];o=o.add(l?f.negate():f)}}return hc(n),o}getPrecomputes(e,r,n){let o=Oo.get(r);return o||(o=this.precomputeWindow(r,e),e!==1&&(typeof n=="function"&&(o=n(o)),Oo.set(r,o))),o}cached(e,r,n){let o=Ro(e);return this.wNAF(o,this.getPrecomputes(o,e,n),r)}unsafe(e,r,n,o){let s=Ro(e);return s===1?this._unsafeLadder(e,r,o):this.wNAFUnsafe(s,this.getPrecomputes(s,e,n),r,o)}createCache(e,r){xc(r,this.bits),yc.set(e,r),Oo.delete(e)}hasCache(e){return Ro(e)!==1}};function bc(t,e,r,n){let o=e,s=t.ZERO,i=t.ZERO;for(;r>ir||n>ir;)r&$t&&(s=s.add(o)),n&$t&&(i=i.add(o)),o=o.double(),r>>=$t,n>>=$t;return{p1:s,p2:i}}function pc(t,e,r){if(e){if(e.ORDER!==t)throw new Error("Field.ORDER must match order: Fp == p, Fn == n");return Uo(e),e}else return sr(t,{isLE:r})}function gc(t,e,r={},n){if(n===void 0&&(n=t==="edwards"),!e||typeof e!="object")throw new Error(`expected valid ${t} CURVE object`);for(let a of["p","n","h"]){let u=e[a];if(!(typeof u=="bigint"&&u>ir))throw new Error(`CURVE.${a} must be positive bigint`)}let o=pc(e.p,r.Fp,n),s=pc(e.n,r.Fn,n),c=["Gx","Gy","a",t==="weierstrass"?"b":"d"];for(let a of c)if(!o.isValid(e[a]))throw new Error(`CURVE.${a} must be valid field element of CURVE.Fp`);return e=Object.freeze(Object.assign({},e)),{CURVE:e,Fp:o,Fn:s}}function mc(t,e){return function(n){let o=t(n);return{secretKey:o,publicKey:e(o)}}}m();m();Nt();var Ln=class{constructor(e,r){d(this,"oHash");d(this,"iHash");d(this,"blockLen");d(this,"outputLen");d(this,"finished",!1);d(this,"destroyed",!1);if(En(e),Q(r,void 0,"key"),this.iHash=e.create(),typeof this.iHash.update!="function")throw new Error("Expected instance of class which extends utils.Hash");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;let n=this.blockLen,o=new Uint8Array(n);o.set(r.length>n?e.create().update(r).digest():r);for(let s=0;s<o.length;s++)o[s]^=54;this.iHash.update(o),this.oHash=e.create();for(let s=0;s<o.length;s++)o[s]^=106;this.oHash.update(o),Tt(o)}update(e){return nr(this),this.iHash.update(e),this}digestInto(e){nr(this),Q(e,this.outputLen,"output"),this.finished=!0,this.iHash.digestInto(e),this.oHash.update(e),this.oHash.digestInto(e),this.destroy()}digest(){let e=new Uint8Array(this.oHash.outputLen);return this.digestInto(e),e}_cloneInto(e){e||(e=Object.create(Object.getPrototypeOf(this),{}));let{oHash:r,iHash:n,finished:o,destroyed:s,blockLen:i,outputLen:c}=this;return e=e,e.finished=o,e.destroyed=s,e.blockLen=i,e.outputLen=c,e.oHash=r._cloneInto(e.oHash),e.iHash=n._cloneInto(e.iHash),e}clone(){return this._cloneInto()}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}},Do=(t,e,r)=>new Ln(t,e).update(r).digest();Do.create=(t,e)=>new Ln(t,e);Nt();Rr();var wc=(t,e)=>(t+(t>=0?e:-e)/Ec)/e;function of(t,e,r){let[[n,o],[s,i]]=e,c=wc(i*t,r),a=wc(-o*t,r),u=t-c*n-a*s,l=-c*o-a*i,f=u<rt,h=l<rt;f&&(u=-u),h&&(l=-l);let p=Cr(Math.ceil(ko(r)/2))+cr;if(u<rt||u>=p||l<rt||l>=p)throw new Error("splitScalar (endomorphism): failed, k="+t);return{k1neg:f,k1:u,k2neg:h,k2:l}}function No(t){if(!["compact","recovered","der"].includes(t))throw new Error('Signature format must be "compact", "recovered", or "der"');return t}function Mo(t,e){let r={};for(let n of Object.keys(e))r[n]=t[n]===void 0?e[n]:t[n];return Pt(r.lowS,"lowS"),Pt(r.prehash,"prehash"),r.format!==void 0&&No(r.format),r}var Po=class extends Error{constructor(e=""){super(e)}},ht={Err:Po,_tlv:{encode:(t,e)=>{let{Err:r}=ht;if(t<0||t>256)throw new r("tlv.encode: wrong tag");if(e.length&1)throw new r("tlv.encode: unpadded data");let n=e.length/2,o=Kr(n);if(o.length/2&128)throw new r("tlv.encode: long form length too big");let s=n>127?Kr(o.length/2|128):"";return Kr(t)+s+o+e},decode(t,e){let{Err:r}=ht,n=0;if(t<0||t>256)throw new r("tlv.encode: wrong tag");if(e.length<2||e[n++]!==t)throw new r("tlv.decode: wrong tlv");let o=e[n++],s=!!(o&128),i=0;if(!s)i=o;else{let a=o&127;if(!a)throw new r("tlv.decode(long): indefinite length not supported");if(a>4)throw new r("tlv.decode(long): byte length is too big");let u=e.subarray(n,n+a);if(u.length!==a)throw new r("tlv.decode: length bytes not complete");if(u[0]===0)throw new r("tlv.decode(long): zero leftmost byte");for(let l of u)i=i<<8|l;if(n+=a,i<128)throw new r("tlv.decode(long): not minimal encoding")}let c=e.subarray(n,n+i);if(c.length!==i)throw new r("tlv.decode: wrong value length");return{v:c,l:e.subarray(n+i)}}},_int:{encode(t){let{Err:e}=ht;if(t<rt)throw new e("integer: negative integers are not allowed");let r=Kr(t);if(Number.parseInt(r[0],16)&8&&(r="00"+r),r.length&1)throw new e("unexpected DER parsing assertion: unpadded hex");return r},decode(t){let{Err:e}=ht;if(t[0]&128)throw new e("invalid signature integer: negative");if(t[0]===0&&!(t[1]&128))throw new e("invalid signature integer: unnecessary leading zero");return or(t)}},toSig(t){let{Err:e,_int:r,_tlv:n}=ht,o=Q(t,void 0,"signature"),{v:s,l:i}=n.decode(48,o);if(i.length)throw new e("invalid signature: left bytes after parsing");let{v:c,l:a}=n.decode(2,s),{v:u,l}=n.decode(2,a);if(l.length)throw new e("invalid signature: left bytes after parsing");return{r:r.decode(c),s:r.decode(u)}},hexFromSig(t){let{_tlv:e,_int:r}=ht,n=e.encode(2,r.encode(t.r)),o=e.encode(2,r.encode(t.s)),s=n+o;return e.encode(48,s)}},rt=BigInt(0),cr=BigInt(1),Ec=BigInt(2),Un=BigInt(3),sf=BigInt(4);function Ac(t,e={}){let r=gc("weierstrass",t,e),{Fp:n,Fn:o}=r,s=r.CURVE,{h:i,n:c}=s;Or(e,{},{allowInfinityPoint:"boolean",clearCofactor:"function",isTorsionFree:"function",fromBytes:"function",toBytes:"function",endo:"object"});let{endo:a}=e;if(a&&(!n.is0(s.a)||typeof a.beta!="bigint"||!Array.isArray(a.basises)))throw new Error('invalid endo: expected "beta": bigint and "basises": array');let u=Bc(n,o);function l(){if(!n.isOdd)throw new Error("compression is not supported: Field does not have .isOdd()")}function f(j,g,b){let{x:H,y:C}=g.toAffine(),q=n.toBytes(H);if(Pt(b,"isCompressed"),b){l();let N=!n.isOdd(C);return Ue(vc(N),q)}else return Ue(Uint8Array.of(4),q,n.toBytes(C))}function h(j){Q(j,void 0,"Point");let{publicKey:g,publicKeyUncompressed:b}=u,H=j.length,C=j[0],q=j.subarray(1);if(H===g&&(C===2||C===3)){let N=n.fromBytes(q);if(!n.isValid(N))throw new Error("bad point: is not on curve, wrong x");let W=w(N),_;try{_=n.sqrt(W)}catch(A){let S=A instanceof Error?": "+A.message:"";throw new Error("bad point: is not on curve, sqrt error"+S)}l();let z=n.isOdd(_);return(C&1)===1!==z&&(_=n.neg(_)),{x:N,y:_}}else if(H===b&&C===4){let N=n.BYTES,W=n.fromBytes(q.subarray(0,N)),_=n.fromBytes(q.subarray(N,N*2));if(!v(W,_))throw new Error("bad point: is not on curve");return{x:W,y:_}}else throw new Error(`bad point: got length ${H}, expected compressed=${g} or uncompressed=${b}`)}let p=e.toBytes||f,x=e.fromBytes||h;function w(j){let g=n.sqr(j),b=n.mul(g,j);return n.add(n.add(b,n.mul(j,s.a)),s.b)}function v(j,g){let b=n.sqr(g),H=w(j);return n.eql(b,H)}if(!v(s.Gx,s.Gy))throw new Error("bad curve params: generator point");let I=n.mul(n.pow(s.a,Un),sf),B=n.mul(n.sqr(s.b),BigInt(27));if(n.is0(n.add(I,B)))throw new Error("bad curve params: a or b");function y(j,g,b=!1){if(!n.isValid(g)||b&&n.is0(g))throw new Error(`bad point coordinate ${j}`);return g}function L(j){if(!(j instanceof U))throw new Error("Weierstrass Point expected")}function P(j){if(!a||!a.basises)throw new Error("no endo");return of(j,a.basises,o.ORDER)}let F=Ho((j,g)=>{let{X:b,Y:H,Z:C}=j;if(n.eql(C,n.ONE))return{x:b,y:H};let q=j.is0();g==null&&(g=q?n.ONE:n.inv(C));let N=n.mul(b,g),W=n.mul(H,g),_=n.mul(C,g);if(q)return{x:n.ZERO,y:n.ZERO};if(!n.eql(_,n.ONE))throw new Error("invZ was invalid");return{x:N,y:W}}),X=Ho(j=>{if(j.is0()){if(e.allowInfinityPoint&&!n.is0(j.Y))return;throw new Error("bad point: ZERO")}let{x:g,y:b}=j.toAffine();if(!n.isValid(g)||!n.isValid(b))throw new Error("bad point: x or y not field elements");if(!v(g,b))throw new Error("bad point: equation left != right");if(!j.isTorsionFree())throw new Error("bad point: not in prime-order subgroup");return!0});function M(j,g,b,H,C){return b=new U(n.mul(b.X,j),b.Y,b.Z),g=Tr(H,g),b=Tr(C,b),g.add(b)}let $=class ${constructor(g,b,H){d(this,"X");d(this,"Y");d(this,"Z");this.X=y("x",g),this.Y=y("y",b,!0),this.Z=y("z",H),Object.freeze(this)}static CURVE(){return s}static fromAffine(g){let{x:b,y:H}=g||{};if(!g||!n.isValid(b)||!n.isValid(H))throw new Error("invalid affine point");if(g instanceof $)throw new Error("projective point not allowed");return n.is0(b)&&n.is0(H)?$.ZERO:new $(b,H,n.ONE)}static fromBytes(g){let b=$.fromAffine(x(Q(g,void 0,"point")));return b.assertValidity(),b}static fromHex(g){return $.fromBytes(Mt(g))}get x(){return this.toAffine().x}get y(){return this.toAffine().y}precompute(g=8,b=!0){return ee.createCache(this,g),b||this.multiply(Un),this}assertValidity(){X(this)}hasEvenY(){let{y:g}=this.toAffine();if(!n.isOdd)throw new Error("Field doesn't support isOdd");return!n.isOdd(g)}equals(g){L(g);let{X:b,Y:H,Z:C}=this,{X:q,Y:N,Z:W}=g,_=n.eql(n.mul(b,W),n.mul(q,C)),z=n.eql(n.mul(H,W),n.mul(N,C));return _&&z}negate(){return new $(this.X,n.neg(this.Y),this.Z)}double(){let{a:g,b}=s,H=n.mul(b,Un),{X:C,Y:q,Z:N}=this,W=n.ZERO,_=n.ZERO,z=n.ZERO,V=n.mul(C,C),A=n.mul(q,q),S=n.mul(N,N),E=n.mul(C,q);return E=n.add(E,E),z=n.mul(C,N),z=n.add(z,z),W=n.mul(g,z),_=n.mul(H,S),_=n.add(W,_),W=n.sub(A,_),_=n.add(A,_),_=n.mul(W,_),W=n.mul(E,W),z=n.mul(H,z),S=n.mul(g,S),E=n.sub(V,S),E=n.mul(g,E),E=n.add(E,z),z=n.add(V,V),V=n.add(z,V),V=n.add(V,S),V=n.mul(V,E),_=n.add(_,V),S=n.mul(q,N),S=n.add(S,S),V=n.mul(S,E),W=n.sub(W,V),z=n.mul(S,A),z=n.add(z,z),z=n.add(z,z),new $(W,_,z)}add(g){L(g);let{X:b,Y:H,Z:C}=this,{X:q,Y:N,Z:W}=g,_=n.ZERO,z=n.ZERO,V=n.ZERO,A=s.a,S=n.mul(s.b,Un),E=n.mul(b,q),k=n.mul(H,N),O=n.mul(C,W),G=n.add(b,H),Z=n.add(q,N);G=n.mul(G,Z),Z=n.add(E,k),G=n.sub(G,Z),Z=n.add(b,C);let J=n.add(q,W);return Z=n.mul(Z,J),J=n.add(E,O),Z=n.sub(Z,J),J=n.add(H,C),_=n.add(N,W),J=n.mul(J,_),_=n.add(k,O),J=n.sub(J,_),V=n.mul(A,Z),_=n.mul(S,O),V=n.add(_,V),_=n.sub(k,V),V=n.add(k,V),z=n.mul(_,V),k=n.add(E,E),k=n.add(k,E),O=n.mul(A,O),Z=n.mul(S,Z),k=n.add(k,O),O=n.sub(E,O),O=n.mul(A,O),Z=n.add(Z,O),E=n.mul(k,Z),z=n.add(z,E),E=n.mul(J,Z),_=n.mul(G,_),_=n.sub(_,E),E=n.mul(G,k),V=n.mul(J,V),V=n.add(V,E),new $(_,z,V)}subtract(g){return this.add(g.negate())}is0(){return this.equals($.ZERO)}multiply(g){let{endo:b}=e;if(!o.isValidNot0(g))throw new Error("invalid scalar: out of range");let H,C,q=N=>ee.cached(this,N,W=>To($,W));if(b){let{k1neg:N,k1:W,k2neg:_,k2:z}=P(g),{p:V,f:A}=q(W),{p:S,f:E}=q(z);C=A.add(E),H=M(b.beta,V,S,N,_)}else{let{p:N,f:W}=q(g);H=N,C=W}return To($,[H,C])[0]}multiplyUnsafe(g){let{endo:b}=e,H=this;if(!o.isValid(g))throw new Error("invalid scalar: out of range");if(g===rt||H.is0())return $.ZERO;if(g===cr)return H;if(ee.hasCache(this))return this.multiply(g);if(b){let{k1neg:C,k1:q,k2neg:N,k2:W}=P(g),{p1:_,p2:z}=bc($,H,q,W);return M(b.beta,_,z,C,N)}else return ee.unsafe(H,g)}toAffine(g){return F(this,g)}isTorsionFree(){let{isTorsionFree:g}=e;return i===cr?!0:g?g($,this):ee.unsafe(this,c).is0()}clearCofactor(){let{clearCofactor:g}=e;return i===cr?this:g?g($,this):this.multiplyUnsafe(i)}isSmallOrder(){return this.multiplyUnsafe(i).is0()}toBytes(g=!0){return Pt(g,"isCompressed"),this.assertValidity(),p($,this,g)}toHex(g=!0){return Dt(this.toBytes(g))}toString(){return`<Point ${this.is0()?"ZERO":this.toHex()}>`}};d($,"BASE",new $(s.Gx,s.Gy,n.ONE)),d($,"ZERO",new $(n.ZERO,n.ONE,n.ZERO)),d($,"Fp",n),d($,"Fn",o);let U=$,Y=o.BITS,ee=new In(U,e.endo?Math.ceil(Y/2):Y);return U.BASE.precompute(8),U}function vc(t){return Uint8Array.of(t?2:3)}function Bc(t,e){return{secretKey:e.BYTES,publicKey:1+t.BYTES,publicKeyUncompressed:1+2*t.BYTES,publicKeyHasPrefix:!0,signature:2*e.BYTES}}function cf(t,e={}){let{Fn:r}=t,n=e.randomBytes||vn,o=Object.assign(Bc(t.Fp,r),{seed:_o(r.ORDER)});function s(p){try{let x=r.fromBytes(p);return r.isValidNot0(x)}catch{return!1}}function i(p,x){let{publicKey:w,publicKeyUncompressed:v}=o;try{let I=p.length;return x===!0&&I!==w||x===!1&&I!==v?!1:!!t.fromBytes(p)}catch{return!1}}function c(p=n(o.seed)){return Ko(Q(p,o.seed,"seed"),r.ORDER)}function a(p,x=!0){return t.BASE.multiply(r.fromBytes(p)).toBytes(x)}function u(p){let{secretKey:x,publicKey:w,publicKeyUncompressed:v}=o;if(!_r(p)||"_lengths"in r&&r._lengths||x===w)return;let I=Q(p,void 0,"key").length;return I===w||I===v}function l(p,x,w=!0){if(u(p)===!0)throw new Error("first arg must be private key");if(u(x)===!1)throw new Error("second arg must be public key");let v=r.fromBytes(p);return t.fromBytes(x).multiply(v).toBytes(w)}let f={isValidSecretKey:s,isValidPublicKey:i,randomSecretKey:c},h=mc(c,a);return Object.freeze({getPublicKey:a,getSharedSecret:l,keygen:h,Point:t,utils:f,lengths:o})}function Sc(t,e,r={}){En(e),Or(r,{},{hmac:"function",lowS:"boolean",randomBytes:"function",bits2int:"function",bits2int_modN:"function"}),r=Object.assign({},r);let n=r.randomBytes||vn,o=r.hmac||((g,b)=>Do(e,g,b)),{Fp:s,Fn:i}=t,{ORDER:c,BITS:a}=i,{keygen:u,getPublicKey:l,getSharedSecret:f,utils:h,lengths:p}=cf(t,r),x={prehash:!0,lowS:typeof r.lowS=="boolean"?r.lowS:!0,format:"compact",extraEntropy:!1},w=c*Ec<s.ORDER;function v(g){let b=c>>cr;return g>b}function I(g,b){if(!i.isValidNot0(b))throw new Error(`invalid signature ${g}: out of range 1..Point.Fn.ORDER`);return b}function B(){if(w)throw new Error('"recovered" sig type is not supported for cofactor >2 curves')}function y(g,b){No(b);let H=p.signature,C=b==="compact"?H:b==="recovered"?H+1:void 0;return Q(g,C)}class L{constructor(b,H,C){d(this,"r");d(this,"s");d(this,"recovery");if(this.r=I("r",b),this.s=I("s",H),C!=null){if(B(),![0,1,2,3].includes(C))throw new Error("invalid recovery id");this.recovery=C}Object.freeze(this)}static fromBytes(b,H=x.format){y(b,H);let C;if(H==="der"){let{r:_,s:z}=ht.toSig(Q(b));return new L(_,z)}H==="recovered"&&(C=b[0],H="compact",b=b.subarray(1));let q=p.signature/2,N=b.subarray(0,q),W=b.subarray(q,q*2);return new L(i.fromBytes(N),i.fromBytes(W),C)}static fromHex(b,H){return this.fromBytes(Mt(b),H)}assertRecovery(){let{recovery:b}=this;if(b==null)throw new Error("invalid recovery id: must be present");return b}addRecoveryBit(b){return new L(this.r,this.s,b)}recoverPublicKey(b){let{r:H,s:C}=this,q=this.assertRecovery(),N=q===2||q===3?H+c:H;if(!s.isValid(N))throw new Error("invalid recovery id: sig.r+curve.n != R.x");let W=s.toBytes(N),_=t.fromBytes(Ue(vc((q&1)===0),W)),z=i.inv(N),V=F(Q(b,void 0,"msgHash")),A=i.create(-V*z),S=i.create(C*z),E=t.BASE.multiplyUnsafe(A).add(_.multiplyUnsafe(S));if(E.is0())throw new Error("invalid recovery: point at infinify");return E.assertValidity(),E}hasHighS(){return v(this.s)}toBytes(b=x.format){if(No(b),b==="der")return Mt(ht.hexFromSig(this));let{r:H,s:C}=this,q=i.toBytes(H),N=i.toBytes(C);return b==="recovered"?(B(),Ue(Uint8Array.of(this.assertRecovery()),q,N)):Ue(q,N)}toHex(b){return Dt(this.toBytes(b))}}let P=r.bits2int||function(b){if(b.length>8192)throw new Error("input is too large");let H=or(b),C=b.length*8-a;return C>0?H>>BigInt(C):H},F=r.bits2int_modN||function(b){return i.create(P(b))},X=Cr(a);function M(g){return ec("num < 2^"+a,g,rt,X),i.toBytes(g)}function U(g,b){return Q(g,void 0,"message"),b?Q(e(g),void 0,"prehashed message"):g}function Y(g,b,H){let{lowS:C,prehash:q,extraEntropy:N}=Mo(H,x);g=U(g,q);let W=F(g),_=i.fromBytes(b);if(!i.isValidNot0(_))throw new Error("invalid private key");let z=[M(_),M(W)];if(N!=null&&N!==!1){let E=N===!0?n(p.secretKey):N;z.push(Q(E,void 0,"extraEntropy"))}let V=Ue(...z),A=W;function S(E){let k=P(E);if(!i.isValidNot0(k))return;let O=i.inv(k),G=t.BASE.multiply(k).toAffine(),Z=i.create(G.x);if(Z===rt)return;let J=i.create(O*i.create(A+Z*_));if(J===rt)return;let oe=(G.x===Z?0:2)|Number(G.y&cr),se=J;return C&&v(J)&&(se=i.neg(J),oe^=1),new L(Z,se,w?void 0:oe)}return{seed:V,k2sig:S}}function ee(g,b,H={}){let{seed:C,k2sig:q}=Y(g,b,H);return tc(e.outputLen,i.BYTES,o)(C,q).toBytes(H.format)}function $(g,b,H,C={}){let{lowS:q,prehash:N,format:W}=Mo(C,x);if(H=Q(H,void 0,"publicKey"),b=U(b,N),!_r(g)){let _=g instanceof L?", use sig.toBytes()":"";throw new Error("verify expects Uint8Array signature"+_)}y(g,W);try{let _=L.fromBytes(g,W),z=t.fromBytes(H);if(q&&_.hasHighS())return!1;let{r:V,s:A}=_,S=F(b),E=i.inv(A),k=i.create(S*E),O=i.create(V*E),G=t.BASE.multiplyUnsafe(k).add(z.multiplyUnsafe(O));return G.is0()?!1:i.create(G.x)===V}catch{return!1}}function j(g,b,H={}){let{prehash:C}=Mo(H,x);return b=U(b,C),L.fromBytes(g,"recovered").recoverPublicKey(b).toBytes()}return Object.freeze({keygen:u,getPublicKey:l,getSharedSecret:f,utils:h,lengths:p,Point:t,sign:ee,verify:$,recoverPublicKey:j,Signature:L,hash:e})}var $o={p:BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),n:BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),h:BigInt(1),a:BigInt(0),b:BigInt(7),Gx:BigInt("0x79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798"),Gy:BigInt("0x483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8")},af={beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),basises:[[BigInt("0x3086d221a7d46bcde86c90e49284eb15"),-BigInt("0xe4437ed6010e88286f547fa90abfe4c3")],[BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),BigInt("0x3086d221a7d46bcde86c90e49284eb15")]]};var kc=BigInt(2);function ff(t){let e=$o.p,r=BigInt(3),n=BigInt(6),o=BigInt(11),s=BigInt(22),i=BigInt(23),c=BigInt(44),a=BigInt(88),u=t*t*t%e,l=u*u*t%e,f=Ee(l,r,e)*l%e,h=Ee(f,r,e)*l%e,p=Ee(h,kc,e)*u%e,x=Ee(p,o,e)*p%e,w=Ee(x,s,e)*x%e,v=Ee(w,c,e)*w%e,I=Ee(v,a,e)*v%e,B=Ee(I,c,e)*w%e,y=Ee(B,r,e)*l%e,L=Ee(y,i,e)*x%e,P=Ee(L,n,e)*u%e,F=Ee(P,kc,e);if(!Vo.eql(Vo.sqr(F),t))throw new Error("Cannot find square root");return F}var Vo=sr($o.p,{sqrt:ff}),uf=Ac($o,{Fp:Vo,endo:af}),jt=Sc(uf,Xi);m();m();function lf(t){return t instanceof Uint8Array||ArrayBuffer.isView(t)&&t.constructor.name==="Uint8Array"}function Hc(t,e=""){if(!Number.isSafeInteger(t)||t<0){let r=e&&`"${e}" `;throw new Error(`${r}expected integer >= 0, got ${t}`)}}function Ae(t,e,r=""){let n=lf(t),o=t?.length,s=e!==void 0;if(!n||s&&o!==e){let i=r&&`"${r}" `,c=s?` of length ${e}`:"",a=n?`length=${o}`:`type=${typeof t}`;throw new Error(i+"expected Uint8Array"+c+", got "+a)}return t}function Ic(t){if(typeof t!="function"||typeof t.create!="function")throw new Error("Hash must wrapped by utils.createHasher");Hc(t.outputLen),Hc(t.blockLen)}function ar(t,e=!0){if(t.destroyed)throw new Error("Hash instance has been destroyed");if(e&&t.finished)throw new Error("Hash#digest() has already been called")}function Lc(t,e){Ae(t,void 0,"digestInto() output");let r=e.outputLen;if(t.length<r)throw new Error('"digestInto() output" expected to be of length >='+r)}function He(...t){for(let e=0;e<t.length;e++)t[e].fill(0)}function pt(t){return new DataView(t.buffer,t.byteOffset,t.byteLength)}function Ke(t,e){return t<<32-e|t>>>e}function Dr(t,e){return t<<e|t>>>32-e>>>0}function Mr(...t){let e=0;for(let n=0;n<t.length;n++){let o=t[n];Ae(o),e+=o.length}let r=new Uint8Array(e);for(let n=0,o=0;n<t.length;n++){let s=t[n];r.set(s,o),o+=s.length}return r}function Nr(t,e={}){let r=(o,s)=>t(s).update(o).digest(),n=t(void 0);return r.outputLen=n.outputLen,r.blockLen=n.blockLen,r.create=o=>t(o),Object.assign(r,e),Object.freeze(r)}var jo=t=>({oid:Uint8Array.from([6,9,96,134,72,1,101,3,4,2,t])});var _n=class{constructor(e,r){d(this,"oHash");d(this,"iHash");d(this,"blockLen");d(this,"outputLen");d(this,"finished",!1);d(this,"destroyed",!1);if(Ic(e),Ae(r,void 0,"key"),this.iHash=e.create(),typeof this.iHash.update!="function")throw new Error("Expected instance of class which extends utils.Hash");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;let n=this.blockLen,o=new Uint8Array(n);o.set(r.length>n?e.create().update(r).digest():r);for(let s=0;s<o.length;s++)o[s]^=54;this.iHash.update(o),this.oHash=e.create();for(let s=0;s<o.length;s++)o[s]^=106;this.oHash.update(o),He(o)}update(e){return ar(this),this.iHash.update(e),this}digestInto(e){ar(this),Ae(e,this.outputLen,"output"),this.finished=!0,this.iHash.digestInto(e),this.oHash.update(e),this.oHash.digestInto(e),this.destroy()}digest(){let e=new Uint8Array(this.oHash.outputLen);return this.digestInto(e),e}_cloneInto(e){e||(e=Object.create(Object.getPrototypeOf(this),{}));let{oHash:r,iHash:n,finished:o,destroyed:s,blockLen:i,outputLen:c}=this;return e=e,e.finished=o,e.destroyed=s,e.blockLen=i,e.outputLen=c,e.oHash=r._cloneInto(e.oHash),e.iHash=n._cloneInto(e.iHash),e}clone(){return this._cloneInto()}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}},Kn=(t,e,r)=>new _n(t,e).update(r).digest();Kn.create=(t,e)=>new _n(t,e);m();m();function qo(t,e,r){return t&e^~t&r}function Go(t,e,r){return t&e^t&r^e&r}var qt=class{constructor(e,r,n,o){d(this,"blockLen");d(this,"outputLen");d(this,"padOffset");d(this,"isLE");d(this,"buffer");d(this,"view");d(this,"finished",!1);d(this,"length",0);d(this,"pos",0);d(this,"destroyed",!1);this.blockLen=e,this.outputLen=r,this.padOffset=n,this.isLE=o,this.buffer=new Uint8Array(e),this.view=pt(this.buffer)}update(e){ar(this),Ae(e);let{view:r,buffer:n,blockLen:o}=this,s=e.length;for(let i=0;i<s;){let c=Math.min(o-this.pos,s-i);if(c===o){let a=pt(e);for(;o<=s-i;i+=o)this.process(a,i);continue}n.set(e.subarray(i,i+c),this.pos),this.pos+=c,i+=c,this.pos===o&&(this.process(r,0),this.pos=0)}return this.length+=e.length,this.roundClean(),this}digestInto(e){ar(this),Lc(e,this),this.finished=!0;let{buffer:r,view:n,blockLen:o,isLE:s}=this,{pos:i}=this;r[i++]=128,He(this.buffer.subarray(i)),this.padOffset>o-i&&(this.process(n,0),i=0);for(let f=i;f<o;f++)r[f]=0;n.setBigUint64(o-8,BigInt(this.length*8),s),this.process(n,0);let c=pt(e),a=this.outputLen;if(a%4)throw new Error("_sha2: outputLen must be aligned to 32bit");let u=a/4,l=this.get();if(u>l.length)throw new Error("_sha2: outputLen bigger than state");for(let f=0;f<u;f++)c.setUint32(4*f,l[f],s)}digest(){let{buffer:e,outputLen:r}=this;this.digestInto(e);let n=e.slice(0,r);return this.destroy(),n}_cloneInto(e){e||(e=new this.constructor),e.set(...this.get());let{blockLen:r,buffer:n,length:o,finished:s,destroyed:i,pos:c}=this;return e.destroyed=i,e.finished=s,e.length=o,e.pos=c,o%r&&e.buffer.set(n),e}clone(){return this._cloneInto()}},nt=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]);var ue=Uint32Array.from([1779033703,4089235720,3144134277,2227873595,1013904242,4271175723,2773480762,1595750129,1359893119,2917565137,2600822924,725511199,528734635,4215389547,1541459225,327033209]);var df=Uint8Array.from([7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8]),_c=Uint8Array.from(new Array(16).fill(0).map((t,e)=>e)),hf=_c.map(t=>(9*t+5)%16),Kc=(()=>{let r=[[_c],[hf]];for(let n=0;n<4;n++)for(let o of r)o.push(o[n].map(s=>df[s]));return r})(),Cc=Kc[0],Oc=Kc[1],Rc=[[11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8],[12,13,11,15,6,9,9,7,12,15,11,13,7,8,7,7],[13,15,14,11,7,7,6,8,13,14,13,12,5,5,6,9],[14,11,12,14,8,6,5,5,15,12,15,14,9,9,8,6],[15,12,13,13,9,5,8,6,14,11,12,11,8,6,5,5]].map(t=>Uint8Array.from(t)),pf=Cc.map((t,e)=>t.map(r=>Rc[e][r])),xf=Oc.map((t,e)=>t.map(r=>Rc[e][r])),yf=Uint32Array.from([0,1518500249,1859775393,2400959708,2840853838]),bf=Uint32Array.from([1352829926,1548603684,1836072691,2053994217,0]);function Uc(t,e,r,n){return t===0?e^r^n:t===1?e&r|~e&n:t===2?(e|~r)^n:t===3?e&n|r&~n:e^(r|~n)}var Cn=new Uint32Array(16),Fo=class extends qt{constructor(){super(64,20,8,!0);d(this,"h0",1732584193);d(this,"h1",-271733879);d(this,"h2",-1732584194);d(this,"h3",271733878);d(this,"h4",-1009589776)}get(){let{h0:r,h1:n,h2:o,h3:s,h4:i}=this;return[r,n,o,s,i]}set(r,n,o,s,i){this.h0=r|0,this.h1=n|0,this.h2=o|0,this.h3=s|0,this.h4=i|0}process(r,n){for(let x=0;x<16;x++,n+=4)Cn[x]=r.getUint32(n,!0);let o=this.h0|0,s=o,i=this.h1|0,c=i,a=this.h2|0,u=a,l=this.h3|0,f=l,h=this.h4|0,p=h;for(let x=0;x<5;x++){let w=4-x,v=yf[x],I=bf[x],B=Cc[x],y=Oc[x],L=pf[x],P=xf[x];for(let F=0;F<16;F++){let X=Dr(o+Uc(x,i,a,l)+Cn[B[F]]+v,L[F])+h|0;o=h,h=l,l=Dr(a,10)|0,a=i,i=X}for(let F=0;F<16;F++){let X=Dr(s+Uc(w,c,u,f)+Cn[y[F]]+I,P[F])+p|0;s=p,p=f,f=Dr(u,10)|0,u=c,c=X}}this.set(this.h1+a+f|0,this.h2+l+p|0,this.h3+h+s|0,this.h4+o+c|0,this.h0+i+u|0)}roundClean(){He(Cn)}destroy(){this.destroyed=!0,He(this.buffer),this.set(0,0,0,0,0)}},Tc=Nr(()=>new Fo);m();m();var On=BigInt(4294967295),Dc=BigInt(32);function gf(t,e=!1){return e?{h:Number(t&On),l:Number(t>>Dc&On)}:{h:Number(t>>Dc&On)|0,l:Number(t&On)|0}}function Mc(t,e=!1){let r=t.length,n=new Uint32Array(r),o=new Uint32Array(r);for(let s=0;s<r;s++){let{h:i,l:c}=gf(t[s],e);[n[s],o[s]]=[i,c]}return[n,o]}var Wo=(t,e,r)=>t>>>r,zo=(t,e,r)=>t<<32-r|e>>>r,Gt=(t,e,r)=>t>>>r|e<<32-r,Ft=(t,e,r)=>t<<32-r|e>>>r,Pr=(t,e,r)=>t<<64-r|e>>>r-32,Vr=(t,e,r)=>t>>>r-32|e<<64-r;function je(t,e,r,n){let o=(e>>>0)+(n>>>0);return{h:t+r+(o/2**32|0)|0,l:o|0}}var Nc=(t,e,r)=>(t>>>0)+(e>>>0)+(r>>>0),Pc=(t,e,r,n)=>e+r+n+(t/2**32|0)|0,Vc=(t,e,r,n)=>(t>>>0)+(e>>>0)+(r>>>0)+(n>>>0),$c=(t,e,r,n,o)=>e+r+n+o+(t/2**32|0)|0,jc=(t,e,r,n,o)=>(t>>>0)+(e>>>0)+(r>>>0)+(n>>>0)+(o>>>0),qc=(t,e,r,n,o,s)=>e+r+n+o+s+(t/2**32|0)|0;var wf=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]),xt=new Uint32Array(64),Zo=class extends qt{constructor(e){super(64,e,8,!1)}get(){let{A:e,B:r,C:n,D:o,E:s,F:i,G:c,H:a}=this;return[e,r,n,o,s,i,c,a]}set(e,r,n,o,s,i,c,a){this.A=e|0,this.B=r|0,this.C=n|0,this.D=o|0,this.E=s|0,this.F=i|0,this.G=c|0,this.H=a|0}process(e,r){for(let f=0;f<16;f++,r+=4)xt[f]=e.getUint32(r,!1);for(let f=16;f<64;f++){let h=xt[f-15],p=xt[f-2],x=Ke(h,7)^Ke(h,18)^h>>>3,w=Ke(p,17)^Ke(p,19)^p>>>10;xt[f]=w+xt[f-7]+x+xt[f-16]|0}let{A:n,B:o,C:s,D:i,E:c,F:a,G:u,H:l}=this;for(let f=0;f<64;f++){let h=Ke(c,6)^Ke(c,11)^Ke(c,25),p=l+h+qo(c,a,u)+wf[f]+xt[f]|0,w=(Ke(n,2)^Ke(n,13)^Ke(n,22))+Go(n,o,s)|0;l=u,u=a,a=c,c=i+p|0,i=s,s=o,o=n,n=p+w|0}n=n+this.A|0,o=o+this.B|0,s=s+this.C|0,i=i+this.D|0,c=c+this.E|0,a=a+this.F|0,u=u+this.G|0,l=l+this.H|0,this.set(n,o,s,i,c,a,u,l)}roundClean(){He(xt)}destroy(){this.set(0,0,0,0,0,0,0,0),He(this.buffer)}},Yo=class extends Zo{constructor(){super(32);d(this,"A",nt[0]|0);d(this,"B",nt[1]|0);d(this,"C",nt[2]|0);d(this,"D",nt[3]|0);d(this,"E",nt[4]|0);d(this,"F",nt[5]|0);d(this,"G",nt[6]|0);d(this,"H",nt[7]|0)}};var Gc=Mc(["0x428a2f98d728ae22","0x7137449123ef65cd","0xb5c0fbcfec4d3b2f","0xe9b5dba58189dbbc","0x3956c25bf348b538","0x59f111f1b605d019","0x923f82a4af194f9b","0xab1c5ed5da6d8118","0xd807aa98a3030242","0x12835b0145706fbe","0x243185be4ee4b28c","0x550c7dc3d5ffb4e2","0x72be5d74f27b896f","0x80deb1fe3b1696b1","0x9bdc06a725c71235","0xc19bf174cf692694","0xe49b69c19ef14ad2","0xefbe4786384f25e3","0x0fc19dc68b8cd5b5","0x240ca1cc77ac9c65","0x2de92c6f592b0275","0x4a7484aa6ea6e483","0x5cb0a9dcbd41fbd4","0x76f988da831153b5","0x983e5152ee66dfab","0xa831c66d2db43210","0xb00327c898fb213f","0xbf597fc7beef0ee4","0xc6e00bf33da88fc2","0xd5a79147930aa725","0x06ca6351e003826f","0x142929670a0e6e70","0x27b70a8546d22ffc","0x2e1b21385c26c926","0x4d2c6dfc5ac42aed","0x53380d139d95b3df","0x650a73548baf63de","0x766a0abb3c77b2a8","0x81c2c92e47edaee6","0x92722c851482353b","0xa2bfe8a14cf10364","0xa81a664bbc423001","0xc24b8b70d0f89791","0xc76c51a30654be30","0xd192e819d6ef5218","0xd69906245565a910","0xf40e35855771202a","0x106aa07032bbd1b8","0x19a4c116b8d2d0c8","0x1e376c085141ab53","0x2748774cdf8eeb99","0x34b0bcb5e19b48a8","0x391c0cb3c5c95a63","0x4ed8aa4ae3418acb","0x5b9cca4f7763e373","0x682e6ff3d6b2b8a3","0x748f82ee5defb2fc","0x78a5636f43172f60","0x84c87814a1f0ab72","0x8cc702081a6439ec","0x90befffa23631e28","0xa4506cebde82bde9","0xbef9a3f7b2c67915","0xc67178f2e372532b","0xca273eceea26619c","0xd186b8c721c0c207","0xeada7dd6cde0eb1e","0xf57d4f7fee6ed178","0x06f067aa72176fba","0x0a637dc5a2c898a6","0x113f9804bef90dae","0x1b710b35131c471b","0x28db77f523047d84","0x32caab7b40c72493","0x3c9ebe0a15c9bebc","0x431d67c49c100d4c","0x4cc5d4becb3e42b6","0x597f299cfc657e2a","0x5fcb6fab3ad6faec","0x6c44198c4a475817"].map(t=>BigInt(t))),Ef=Gc[0],Af=Gc[1],yt=new Uint32Array(80),bt=new Uint32Array(80),Xo=class extends qt{constructor(e){super(128,e,16,!1)}get(){let{Ah:e,Al:r,Bh:n,Bl:o,Ch:s,Cl:i,Dh:c,Dl:a,Eh:u,El:l,Fh:f,Fl:h,Gh:p,Gl:x,Hh:w,Hl:v}=this;return[e,r,n,o,s,i,c,a,u,l,f,h,p,x,w,v]}set(e,r,n,o,s,i,c,a,u,l,f,h,p,x,w,v){this.Ah=e|0,this.Al=r|0,this.Bh=n|0,this.Bl=o|0,this.Ch=s|0,this.Cl=i|0,this.Dh=c|0,this.Dl=a|0,this.Eh=u|0,this.El=l|0,this.Fh=f|0,this.Fl=h|0,this.Gh=p|0,this.Gl=x|0,this.Hh=w|0,this.Hl=v|0}process(e,r){for(let y=0;y<16;y++,r+=4)yt[y]=e.getUint32(r),bt[y]=e.getUint32(r+=4);for(let y=16;y<80;y++){let L=yt[y-15]|0,P=bt[y-15]|0,F=Gt(L,P,1)^Gt(L,P,8)^Wo(L,P,7),X=Ft(L,P,1)^Ft(L,P,8)^zo(L,P,7),M=yt[y-2]|0,U=bt[y-2]|0,Y=Gt(M,U,19)^Pr(M,U,61)^Wo(M,U,6),ee=Ft(M,U,19)^Vr(M,U,61)^zo(M,U,6),$=Vc(X,ee,bt[y-7],bt[y-16]),j=$c($,F,Y,yt[y-7],yt[y-16]);yt[y]=j|0,bt[y]=$|0}let{Ah:n,Al:o,Bh:s,Bl:i,Ch:c,Cl:a,Dh:u,Dl:l,Eh:f,El:h,Fh:p,Fl:x,Gh:w,Gl:v,Hh:I,Hl:B}=this;for(let y=0;y<80;y++){let L=Gt(f,h,14)^Gt(f,h,18)^Pr(f,h,41),P=Ft(f,h,14)^Ft(f,h,18)^Vr(f,h,41),F=f&p^~f&w,X=h&x^~h&v,M=jc(B,P,X,Af[y],bt[y]),U=qc(M,I,L,F,Ef[y],yt[y]),Y=M|0,ee=Gt(n,o,28)^Pr(n,o,34)^Pr(n,o,39),$=Ft(n,o,28)^Vr(n,o,34)^Vr(n,o,39),j=n&s^n&c^s&c,g=o&i^o&a^i&a;I=w|0,B=v|0,w=p|0,v=x|0,p=f|0,x=h|0,{h:f,l:h}=je(u|0,l|0,U|0,Y|0),u=c|0,l=a|0,c=s|0,a=i|0,s=n|0,i=o|0;let b=Nc(Y,$,g);n=Pc(b,U,ee,j),o=b|0}({h:n,l:o}=je(this.Ah|0,this.Al|0,n|0,o|0)),{h:s,l:i}=je(this.Bh|0,this.Bl|0,s|0,i|0),{h:c,l:a}=je(this.Ch|0,this.Cl|0,c|0,a|0),{h:u,l}=je(this.Dh|0,this.Dl|0,u|0,l|0),{h:f,l:h}=je(this.Eh|0,this.El|0,f|0,h|0),{h:p,l:x}=je(this.Fh|0,this.Fl|0,p|0,x|0),{h:w,l:v}=je(this.Gh|0,this.Gl|0,w|0,v|0),{h:I,l:B}=je(this.Hh|0,this.Hl|0,I|0,B|0),this.set(n,o,s,i,c,a,u,l,f,h,p,x,w,v,I,B)}roundClean(){He(yt,bt)}destroy(){He(this.buffer),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}},Jo=class extends Xo{constructor(){super(64);d(this,"Ah",ue[0]|0);d(this,"Al",ue[1]|0);d(this,"Bh",ue[2]|0);d(this,"Bl",ue[3]|0);d(this,"Ch",ue[4]|0);d(this,"Cl",ue[5]|0);d(this,"Dh",ue[6]|0);d(this,"Dl",ue[7]|0);d(this,"Eh",ue[8]|0);d(this,"El",ue[9]|0);d(this,"Fh",ue[10]|0);d(this,"Fl",ue[11]|0);d(this,"Gh",ue[12]|0);d(this,"Gl",ue[13]|0);d(this,"Hh",ue[14]|0);d(this,"Hl",ue[15]|0)}};var Qo=Nr(()=>new Yo,jo(1));var es=Nr(()=>new Jo,jo(3));m();function Rn(t){return t instanceof Uint8Array||ArrayBuffer.isView(t)&&t.constructor.name==="Uint8Array"}function Fc(t,e){return Array.isArray(e)?e.length===0?!0:t?e.every(r=>typeof r=="string"):e.every(r=>Number.isSafeInteger(r)):!1}function vf(t){if(typeof t!="function")throw new Error("function expected");return!0}function Tn(t,e){if(typeof e!="string")throw new Error(`${t}: string expected`);return!0}function fr(t){if(!Number.isSafeInteger(t))throw new Error(`invalid integer: ${t}`)}function Dn(t){if(!Array.isArray(t))throw new Error("array expected")}function Mn(t,e){if(!Fc(!0,e))throw new Error(`${t}: array of strings expected`)}function Wc(t,e){if(!Fc(!1,e))throw new Error(`${t}: array of numbers expected`)}function os(...t){let e=s=>s,r=(s,i)=>c=>s(i(c)),n=t.map(s=>s.encode).reduceRight(r,e),o=t.map(s=>s.decode).reduce(r,e);return{encode:n,decode:o}}function zc(t){let e=typeof t=="string"?t.split(""):t,r=e.length;Mn("alphabet",e);let n=new Map(e.map((o,s)=>[o,s]));return{encode:o=>(Dn(o),o.map(s=>{if(!Number.isSafeInteger(s)||s<0||s>=r)throw new Error(`alphabet.encode: digit index outside alphabet "${s}". Allowed: ${t}`);return e[s]})),decode:o=>(Dn(o),o.map(s=>{Tn("alphabet.decode",s);let i=n.get(s);if(i===void 0)throw new Error(`Unknown letter: "${s}". Allowed: ${t}`);return i}))}}function Zc(t=""){return Tn("join",t),{encode:e=>(Mn("join.decode",e),e.join(t)),decode:e=>(Tn("join.decode",e),e.split(t))}}function Bf(t,e="="){return fr(t),Tn("padding",e),{encode(r){for(Mn("padding.encode",r);r.length*t%8;)r.push(e);return r},decode(r){Mn("padding.decode",r);let n=r.length;if(n*t%8)throw new Error("padding: invalid, string should have whole number of bytes");for(;n>0&&r[n-1]===e;n--)if((n-1)*t%8===0)throw new Error("padding: invalid, string has too much padding");return r.slice(0,n)}}}function rs(t,e,r){if(e<2)throw new Error(`convertRadix: invalid from=${e}, base cannot be less than 2`);if(r<2)throw new Error(`convertRadix: invalid to=${r}, base cannot be less than 2`);if(Dn(t),!t.length)return[];let n=0,o=[],s=Array.from(t,c=>{if(fr(c),c<0||c>=e)throw new Error(`invalid integer: ${c}`);return c}),i=s.length;for(;;){let c=0,a=!0;for(let u=n;u<i;u++){let l=s[u],f=e*c,h=f+l;if(!Number.isSafeInteger(h)||f/e!==c||h-l!==f)throw new Error("convertRadix: carry overflow");let p=h/r;c=h%r;let x=Math.floor(p);if(s[u]=x,!Number.isSafeInteger(x)||x*r+c!==h)throw new Error("convertRadix: carry overflow");if(a)x?a=!1:n=u;else continue}if(o.push(c),a)break}for(let c=0;c<t.length-1&&t[c]===0;c++)o.push(0);return o.reverse()}var Yc=(t,e)=>e===0?t:Yc(e,t%e),Nn=(t,e)=>t+(e-Yc(t,e)),ts=(()=>{let t=[];for(let e=0;e<40;e++)t.push(2**e);return t})();function ns(t,e,r,n){if(Dn(t),e<=0||e>32)throw new Error(`convertRadix2: wrong from=${e}`);if(r<=0||r>32)throw new Error(`convertRadix2: wrong to=${r}`);if(Nn(e,r)>32)throw new Error(`convertRadix2: carry overflow from=${e} to=${r} carryBits=${Nn(e,r)}`);let o=0,s=0,i=ts[e],c=ts[r]-1,a=[];for(let u of t){if(fr(u),u>=i)throw new Error(`convertRadix2: invalid data word=${u} from=${e}`);if(o=o<<e|u,s+e>32)throw new Error(`convertRadix2: carry overflow pos=${s} from=${e}`);for(s+=e;s>=r;s-=r)a.push((o>>s-r&c)>>>0);let l=ts[s];if(l===void 0)throw new Error("invalid carry");o&=l-1}if(o=o<<r-s&c,!n&&s>=e)throw new Error("Excess padding");if(!n&&o>0)throw new Error(`Non-zero padding: ${o}`);return n&&s>0&&a.push(o>>>0),a}function Xc(t){fr(t);let e=2**8;return{encode:r=>{if(!Rn(r))throw new Error("radix.encode input should be Uint8Array");return rs(Array.from(r),e,t)},decode:r=>(Wc("radix.decode",r),Uint8Array.from(rs(r,t,e)))}}function Sf(t,e=!1){if(fr(t),t<=0||t>32)throw new Error("radix2: bits should be in (0..32]");if(Nn(8,t)>32||Nn(t,8)>32)throw new Error("radix2: carry overflow");return{encode:r=>{if(!Rn(r))throw new Error("radix2.encode input should be Uint8Array");return ns(Array.from(r),8,t,!e)},decode:r=>(Wc("radix2.decode",r),Uint8Array.from(ns(r,t,8,e)))}}function Jc(t,e){return fr(t),vf(e),{encode(r){if(!Rn(r))throw new Error("checksum.encode: input should be Uint8Array");let n=e(r).slice(0,t),o=new Uint8Array(r.length+t);return o.set(r),o.set(n,r.length),o},decode(r){if(!Rn(r))throw new Error("checksum.decode: input should be Uint8Array");let n=r.slice(0,-t),o=r.slice(-t),s=e(n).slice(0,t);for(let i=0;i<t;i++)if(s[i]!==o[i])throw new Error("Invalid checksum");return n}}}var $r={alphabet:zc,chain:os,checksum:Jc,convertRadix:rs,convertRadix2:ns,radix:Xc,radix2:Sf,join:Zc,padding:Bf};var kf=t=>os(Xc(58),zc(t),Zc("")),Hf=kf("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz");var Qc=t=>os(Jc(4,e=>t(t(e))),Hf);var qr=jt.Point,{Fn:jr}=qr,ss=Qc(Qo),If=Uint8Array.from("Bitcoin seed".split(""),t=>t.charCodeAt(0)),is={private:76066276,public:76067358},cs=2147483648,Lf=t=>Tc(Qo(t)),Uf=t=>pt(t).getUint32(0,!1),Pn=t=>{if(!Number.isSafeInteger(t)||t<0||t>2**32-1)throw new Error("invalid number, should be from 0 to 2**32-1, got "+t);let e=new Uint8Array(4);return pt(e).setUint32(0,t,!1),e},Vn=class t{constructor(e){d(this,"versions");d(this,"depth",0);d(this,"index",0);d(this,"chainCode",null);d(this,"parentFingerprint",0);d(this,"_privateKey");d(this,"_publicKey");d(this,"pubHash");if(!e||typeof e!="object")throw new Error("HDKey.constructor must not be called directly");if(this.versions=e.versions||is,this.depth=e.depth||0,this.chainCode=e.chainCode||null,this.index=e.index||0,this.parentFingerprint=e.parentFingerprint||0,!this.depth&&(this.parentFingerprint||this.index))throw new Error("HDKey: zero depth with non-zero index/parent fingerprint");if(this.depth>255)throw new Error("HDKey: depth exceeds the serializable value 255");if(e.publicKey&&e.privateKey)throw new Error("HDKey: publicKey and privateKey at same time.");if(e.privateKey){if(!jt.utils.isValidSecretKey(e.privateKey))throw new Error("Invalid private key");this._privateKey=e.privateKey,this._publicKey=jt.getPublicKey(e.privateKey,!0)}else if(e.publicKey)this._publicKey=qr.fromBytes(e.publicKey).toBytes(!0);else throw new Error("HDKey: no public or private key provided");this.pubHash=Lf(this._publicKey)}get fingerprint(){if(!this.pubHash)throw new Error("No publicKey set!");return Uf(this.pubHash)}get identifier(){return this.pubHash}get pubKeyHash(){return this.pubHash}get privateKey(){return this._privateKey||null}get publicKey(){return this._publicKey||null}get privateExtendedKey(){let e=this._privateKey;if(!e)throw new Error("No private key");return ss.encode(this.serialize(this.versions.private,Mr(Uint8Array.of(0),e)))}get publicExtendedKey(){if(!this._publicKey)throw new Error("No public key");return ss.encode(this.serialize(this.versions.public,this._publicKey))}static fromMasterSeed(e,r=is){if(Ae(e),8*e.length<128||8*e.length>512)throw new Error("HDKey: seed length must be between 128 and 512 bits; 256 bits is advised, got "+e.length);let n=Kn(es,If,e),o=n.slice(0,32),s=n.slice(32);return new t({versions:r,chainCode:s,privateKey:o})}static fromExtendedKey(e,r=is){let n=ss.decode(e),o=pt(n),s=o.getUint32(0,!1),i={versions:r,depth:n[4],parentFingerprint:o.getUint32(5,!1),index:o.getUint32(9,!1),chainCode:n.slice(13,45)},c=n.slice(45),a=c[0]===0;if(s!==r[a?"private":"public"])throw new Error("Version mismatch");return a?new t({...i,privateKey:c.slice(1)}):new t({...i,publicKey:c})}static fromJSON(e){return t.fromExtendedKey(e.xpriv)}derive(e){if(!/^[mM]'?/.test(e))throw new Error('Path must start with "m" or "M"');if(/^[mM]'?$/.test(e))return this;let r=e.replace(/^[mM]'?\//,"").split("/"),n=this;for(let o of r){let s=/^(\d+)('?)$/.exec(o),i=s&&s[1];if(!s||s.length!==3||typeof i!="string")throw new Error("invalid child index: "+o);let c=+i;if(!Number.isSafeInteger(c)||c>=cs)throw new Error("Invalid index");s[2]==="'"&&(c+=cs),n=n.deriveChild(c)}return n}deriveChild(e){if(!this._publicKey||!this.chainCode)throw new Error("No publicKey or chainCode set");let r=Pn(e);if(e>=cs){let a=this._privateKey;if(!a)throw new Error("Could not derive hardened child key");r=Mr(Uint8Array.of(0),a,r)}else r=Mr(this._publicKey,r);let n=Kn(es,this.chainCode,r),o=n.slice(0,32),s=n.slice(32);if(!jt.utils.isValidSecretKey(o))throw new Error("Tweak bigger than curve order");let i={versions:this.versions,chainCode:s,depth:this.depth+1,parentFingerprint:this.fingerprint,index:e},c=jr.fromBytes(o);try{if(this._privateKey){let a=jr.create(jr.fromBytes(this._privateKey)+c);if(!jr.isValidNot0(a))throw new Error("The tweak was out of range or the resulted private key is invalid");i.privateKey=jr.toBytes(a)}else{let a=qr.fromBytes(this._publicKey).add(qr.BASE.multiply(c));if(a.equals(qr.ZERO))throw new Error("The tweak was equal to negative P, which made the result key invalid");i.publicKey=a.toBytes(!0)}return new t(i)}catch{return this.deriveChild(e+1)}}sign(e){if(!this._privateKey)throw new Error("No privateKey set!");return Ae(e,32),jt.sign(e,this._privateKey,{prehash:!1})}verify(e,r){if(Ae(e,32),Ae(r,64),!this._publicKey)throw new Error("No publicKey set!");return jt.verify(r,e,this._publicKey,{prehash:!1})}wipePrivateData(){return this._privateKey&&(this._privateKey.fill(0),this._privateKey=void 0),this}toJSON(){return{xpriv:this.privateExtendedKey,xpub:this.publicExtendedKey}}serialize(e,r){if(!this.chainCode)throw new Error("No chainCode set");return Ae(r,33),Mr(Pn(e),new Uint8Array([this.depth]),Pn(this.parentFingerprint),Pn(this.index),this.chainCode,r)}};m();m();m();m();function _f(t){return t instanceof Uint8Array||ArrayBuffer.isView(t)&&t.constructor.name==="Uint8Array"}function gt(t,e=""){if(!Number.isSafeInteger(t)||t<0){let r=e&&`"${e}" `;throw new Error(`${r}expected integer >= 0, got ${t}`)}}function ot(t,e,r=""){let n=_f(t),o=t?.length,s=e!==void 0;if(!n||s&&o!==e){let i=r&&`"${r}" `,c=s?` of length ${e}`:"",a=n?`length=${o}`:`type=${typeof t}`;throw new Error(i+"expected Uint8Array"+c+", got "+a)}return t}function $n(t){if(typeof t!="function"||typeof t.create!="function")throw new Error("Hash must wrapped by utils.createHasher");gt(t.outputLen),gt(t.blockLen)}function ur(t,e=!0){if(t.destroyed)throw new Error("Hash instance has been destroyed");if(e&&t.finished)throw new Error("Hash#digest() has already been called")}function ea(t,e){ot(t,void 0,"digestInto() output");let r=e.outputLen;if(t.length<r)throw new Error('"digestInto() output" expected to be of length >='+r)}function Ce(...t){for(let e=0;e<t.length;e++)t[e].fill(0)}function lr(t){return new DataView(t.buffer,t.byteOffset,t.byteLength)}function Oe(t,e){return t<<32-e|t>>>e}function Kf(t){if(typeof t!="string")throw new Error("string expected");return new Uint8Array(new TextEncoder().encode(t))}function as(t,e=""){return typeof t=="string"?Kf(t):ot(t,void 0,e)}function ta(t,e){if(e!==void 0&&{}.toString.call(e)!=="[object Object]")throw new Error("options must be object or undefined");return Object.assign(t,e)}function fs(t,e={}){let r=(o,s)=>t(s).update(o).digest(),n=t(void 0);return r.outputLen=n.outputLen,r.blockLen=n.blockLen,r.create=o=>t(o),Object.assign(r,e),Object.freeze(r)}function ra(t=32){let e=typeof globalThis=="object"?globalThis.crypto:null;if(typeof e?.getRandomValues!="function")throw new Error("crypto.getRandomValues must be defined");return e.getRandomValues(new Uint8Array(t))}var us=t=>({oid:Uint8Array.from([6,9,96,134,72,1,101,3,4,2,t])});var jn=class{constructor(e,r){d(this,"oHash");d(this,"iHash");d(this,"blockLen");d(this,"outputLen");d(this,"finished",!1);d(this,"destroyed",!1);if($n(e),ot(r,void 0,"key"),this.iHash=e.create(),typeof this.iHash.update!="function")throw new Error("Expected instance of class which extends utils.Hash");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;let n=this.blockLen,o=new Uint8Array(n);o.set(r.length>n?e.create().update(r).digest():r);for(let s=0;s<o.length;s++)o[s]^=54;this.iHash.update(o),this.oHash=e.create();for(let s=0;s<o.length;s++)o[s]^=106;this.oHash.update(o),Ce(o)}update(e){return ur(this),this.iHash.update(e),this}digestInto(e){ur(this),ot(e,this.outputLen,"output"),this.finished=!0,this.iHash.digestInto(e),this.oHash.update(e),this.oHash.digestInto(e),this.destroy()}digest(){let e=new Uint8Array(this.oHash.outputLen);return this.digestInto(e),e}_cloneInto(e){e||(e=Object.create(Object.getPrototypeOf(this),{}));let{oHash:r,iHash:n,finished:o,destroyed:s,blockLen:i,outputLen:c}=this;return e=e,e.finished=o,e.destroyed=s,e.blockLen=i,e.outputLen=c,e.oHash=r._cloneInto(e.oHash),e.iHash=n._cloneInto(e.iHash),e}clone(){return this._cloneInto()}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}},ls=(t,e,r)=>new jn(t,e).update(r).digest();ls.create=(t,e)=>new jn(t,e);function Cf(t,e,r,n){$n(t);let o=ta({dkLen:32,asyncTick:10},n),{c:s,dkLen:i,asyncTick:c}=o;if(gt(s,"c"),gt(i,"dkLen"),gt(c,"asyncTick"),s<1)throw new Error("iterations (c) must be >= 1");let a=as(e,"password"),u=as(r,"salt"),l=new Uint8Array(i),f=ls.create(t,a),h=f._cloneInto().update(u);return{c:s,dkLen:i,asyncTick:c,DK:l,PRF:f,PRFSalt:h}}function Of(t,e,r,n,o){return t.destroy(),e.destroy(),n&&n.destroy(),Ce(o),r}function na(t,e,r,n){let{c:o,dkLen:s,DK:i,PRF:c,PRFSalt:a}=Cf(t,e,r,n),u,l=new Uint8Array(4),f=lr(l),h=new Uint8Array(c.outputLen);for(let p=1,x=0;x<s;p++,x+=c.outputLen){let w=i.subarray(x,x+c.outputLen);f.setInt32(0,p,!1),(u=a._cloneInto(u)).update(l).digestInto(h),w.set(h.subarray(0,w.length));for(let v=1;v<o;v++){c._cloneInto(u).update(h).digestInto(h);for(let I=0;I<w.length;I++)w[I]^=h[I]}}return Of(c,a,i,u,h)}m();m();function oa(t,e,r){return t&e^~t&r}function sa(t,e,r){return t&e^t&r^e&r}var Gr=class{constructor(e,r,n,o){d(this,"blockLen");d(this,"outputLen");d(this,"padOffset");d(this,"isLE");d(this,"buffer");d(this,"view");d(this,"finished",!1);d(this,"length",0);d(this,"pos",0);d(this,"destroyed",!1);this.blockLen=e,this.outputLen=r,this.padOffset=n,this.isLE=o,this.buffer=new Uint8Array(e),this.view=lr(this.buffer)}update(e){ur(this),ot(e);let{view:r,buffer:n,blockLen:o}=this,s=e.length;for(let i=0;i<s;){let c=Math.min(o-this.pos,s-i);if(c===o){let a=lr(e);for(;o<=s-i;i+=o)this.process(a,i);continue}n.set(e.subarray(i,i+c),this.pos),this.pos+=c,i+=c,this.pos===o&&(this.process(r,0),this.pos=0)}return this.length+=e.length,this.roundClean(),this}digestInto(e){ur(this),ea(e,this),this.finished=!0;let{buffer:r,view:n,blockLen:o,isLE:s}=this,{pos:i}=this;r[i++]=128,Ce(this.buffer.subarray(i)),this.padOffset>o-i&&(this.process(n,0),i=0);for(let f=i;f<o;f++)r[f]=0;n.setBigUint64(o-8,BigInt(this.length*8),s),this.process(n,0);let c=lr(e),a=this.outputLen;if(a%4)throw new Error("_sha2: outputLen must be aligned to 32bit");let u=a/4,l=this.get();if(u>l.length)throw new Error("_sha2: outputLen bigger than state");for(let f=0;f<u;f++)c.setUint32(4*f,l[f],s)}digest(){let{buffer:e,outputLen:r}=this;this.digestInto(e);let n=e.slice(0,r);return this.destroy(),n}_cloneInto(e){e||(e=new this.constructor),e.set(...this.get());let{blockLen:r,buffer:n,length:o,finished:s,destroyed:i,pos:c}=this;return e.destroyed=i,e.finished=s,e.length=o,e.pos=c,o%r&&e.buffer.set(n),e}clone(){return this._cloneInto()}},st=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]);var le=Uint32Array.from([1779033703,4089235720,3144134277,2227873595,1013904242,4271175723,2773480762,1595750129,1359893119,2917565137,2600822924,725511199,528734635,4215389547,1541459225,327033209]);m();var qn=BigInt(4294967295),ia=BigInt(32);function Rf(t,e=!1){return e?{h:Number(t&qn),l:Number(t>>ia&qn)}:{h:Number(t>>ia&qn)|0,l:Number(t&qn)|0}}function ca(t,e=!1){let r=t.length,n=new Uint32Array(r),o=new Uint32Array(r);for(let s=0;s<r;s++){let{h:i,l:c}=Rf(t[s],e);[n[s],o[s]]=[i,c]}return[n,o]}var ds=(t,e,r)=>t>>>r,hs=(t,e,r)=>t<<32-r|e>>>r,Wt=(t,e,r)=>t>>>r|e<<32-r,zt=(t,e,r)=>t<<32-r|e>>>r,Fr=(t,e,r)=>t<<64-r|e>>>r-32,Wr=(t,e,r)=>t>>>r-32|e<<64-r;function qe(t,e,r,n){let o=(e>>>0)+(n>>>0);return{h:t+r+(o/2**32|0)|0,l:o|0}}var aa=(t,e,r)=>(t>>>0)+(e>>>0)+(r>>>0),fa=(t,e,r,n)=>e+r+n+(t/2**32|0)|0,ua=(t,e,r,n)=>(t>>>0)+(e>>>0)+(r>>>0)+(n>>>0),la=(t,e,r,n,o)=>e+r+n+o+(t/2**32|0)|0,da=(t,e,r,n,o)=>(t>>>0)+(e>>>0)+(r>>>0)+(n>>>0)+(o>>>0),ha=(t,e,r,n,o,s)=>e+r+n+o+s+(t/2**32|0)|0;var Df=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]),mt=new Uint32Array(64),ps=class extends Gr{constructor(e){super(64,e,8,!1)}get(){let{A:e,B:r,C:n,D:o,E:s,F:i,G:c,H:a}=this;return[e,r,n,o,s,i,c,a]}set(e,r,n,o,s,i,c,a){this.A=e|0,this.B=r|0,this.C=n|0,this.D=o|0,this.E=s|0,this.F=i|0,this.G=c|0,this.H=a|0}process(e,r){for(let f=0;f<16;f++,r+=4)mt[f]=e.getUint32(r,!1);for(let f=16;f<64;f++){let h=mt[f-15],p=mt[f-2],x=Oe(h,7)^Oe(h,18)^h>>>3,w=Oe(p,17)^Oe(p,19)^p>>>10;mt[f]=w+mt[f-7]+x+mt[f-16]|0}let{A:n,B:o,C:s,D:i,E:c,F:a,G:u,H:l}=this;for(let f=0;f<64;f++){let h=Oe(c,6)^Oe(c,11)^Oe(c,25),p=l+h+oa(c,a,u)+Df[f]+mt[f]|0,w=(Oe(n,2)^Oe(n,13)^Oe(n,22))+sa(n,o,s)|0;l=u,u=a,a=c,c=i+p|0,i=s,s=o,o=n,n=p+w|0}n=n+this.A|0,o=o+this.B|0,s=s+this.C|0,i=i+this.D|0,c=c+this.E|0,a=a+this.F|0,u=u+this.G|0,l=l+this.H|0,this.set(n,o,s,i,c,a,u,l)}roundClean(){Ce(mt)}destroy(){this.set(0,0,0,0,0,0,0,0),Ce(this.buffer)}},xs=class extends ps{constructor(){super(32);d(this,"A",st[0]|0);d(this,"B",st[1]|0);d(this,"C",st[2]|0);d(this,"D",st[3]|0);d(this,"E",st[4]|0);d(this,"F",st[5]|0);d(this,"G",st[6]|0);d(this,"H",st[7]|0)}};var pa=ca(["0x428a2f98d728ae22","0x7137449123ef65cd","0xb5c0fbcfec4d3b2f","0xe9b5dba58189dbbc","0x3956c25bf348b538","0x59f111f1b605d019","0x923f82a4af194f9b","0xab1c5ed5da6d8118","0xd807aa98a3030242","0x12835b0145706fbe","0x243185be4ee4b28c","0x550c7dc3d5ffb4e2","0x72be5d74f27b896f","0x80deb1fe3b1696b1","0x9bdc06a725c71235","0xc19bf174cf692694","0xe49b69c19ef14ad2","0xefbe4786384f25e3","0x0fc19dc68b8cd5b5","0x240ca1cc77ac9c65","0x2de92c6f592b0275","0x4a7484aa6ea6e483","0x5cb0a9dcbd41fbd4","0x76f988da831153b5","0x983e5152ee66dfab","0xa831c66d2db43210","0xb00327c898fb213f","0xbf597fc7beef0ee4","0xc6e00bf33da88fc2","0xd5a79147930aa725","0x06ca6351e003826f","0x142929670a0e6e70","0x27b70a8546d22ffc","0x2e1b21385c26c926","0x4d2c6dfc5ac42aed","0x53380d139d95b3df","0x650a73548baf63de","0x766a0abb3c77b2a8","0x81c2c92e47edaee6","0x92722c851482353b","0xa2bfe8a14cf10364","0xa81a664bbc423001","0xc24b8b70d0f89791","0xc76c51a30654be30","0xd192e819d6ef5218","0xd69906245565a910","0xf40e35855771202a","0x106aa07032bbd1b8","0x19a4c116b8d2d0c8","0x1e376c085141ab53","0x2748774cdf8eeb99","0x34b0bcb5e19b48a8","0x391c0cb3c5c95a63","0x4ed8aa4ae3418acb","0x5b9cca4f7763e373","0x682e6ff3d6b2b8a3","0x748f82ee5defb2fc","0x78a5636f43172f60","0x84c87814a1f0ab72","0x8cc702081a6439ec","0x90befffa23631e28","0xa4506cebde82bde9","0xbef9a3f7b2c67915","0xc67178f2e372532b","0xca273eceea26619c","0xd186b8c721c0c207","0xeada7dd6cde0eb1e","0xf57d4f7fee6ed178","0x06f067aa72176fba","0x0a637dc5a2c898a6","0x113f9804bef90dae","0x1b710b35131c471b","0x28db77f523047d84","0x32caab7b40c72493","0x3c9ebe0a15c9bebc","0x431d67c49c100d4c","0x4cc5d4becb3e42b6","0x597f299cfc657e2a","0x5fcb6fab3ad6faec","0x6c44198c4a475817"].map(t=>BigInt(t))),Mf=pa[0],Nf=pa[1],wt=new Uint32Array(80),Et=new Uint32Array(80),ys=class extends Gr{constructor(e){super(128,e,16,!1)}get(){let{Ah:e,Al:r,Bh:n,Bl:o,Ch:s,Cl:i,Dh:c,Dl:a,Eh:u,El:l,Fh:f,Fl:h,Gh:p,Gl:x,Hh:w,Hl:v}=this;return[e,r,n,o,s,i,c,a,u,l,f,h,p,x,w,v]}set(e,r,n,o,s,i,c,a,u,l,f,h,p,x,w,v){this.Ah=e|0,this.Al=r|0,this.Bh=n|0,this.Bl=o|0,this.Ch=s|0,this.Cl=i|0,this.Dh=c|0,this.Dl=a|0,this.Eh=u|0,this.El=l|0,this.Fh=f|0,this.Fl=h|0,this.Gh=p|0,this.Gl=x|0,this.Hh=w|0,this.Hl=v|0}process(e,r){for(let y=0;y<16;y++,r+=4)wt[y]=e.getUint32(r),Et[y]=e.getUint32(r+=4);for(let y=16;y<80;y++){let L=wt[y-15]|0,P=Et[y-15]|0,F=Wt(L,P,1)^Wt(L,P,8)^ds(L,P,7),X=zt(L,P,1)^zt(L,P,8)^hs(L,P,7),M=wt[y-2]|0,U=Et[y-2]|0,Y=Wt(M,U,19)^Fr(M,U,61)^ds(M,U,6),ee=zt(M,U,19)^Wr(M,U,61)^hs(M,U,6),$=ua(X,ee,Et[y-7],Et[y-16]),j=la($,F,Y,wt[y-7],wt[y-16]);wt[y]=j|0,Et[y]=$|0}let{Ah:n,Al:o,Bh:s,Bl:i,Ch:c,Cl:a,Dh:u,Dl:l,Eh:f,El:h,Fh:p,Fl:x,Gh:w,Gl:v,Hh:I,Hl:B}=this;for(let y=0;y<80;y++){let L=Wt(f,h,14)^Wt(f,h,18)^Fr(f,h,41),P=zt(f,h,14)^zt(f,h,18)^Wr(f,h,41),F=f&p^~f&w,X=h&x^~h&v,M=da(B,P,X,Nf[y],Et[y]),U=ha(M,I,L,F,Mf[y],wt[y]),Y=M|0,ee=Wt(n,o,28)^Fr(n,o,34)^Fr(n,o,39),$=zt(n,o,28)^Wr(n,o,34)^Wr(n,o,39),j=n&s^n&c^s&c,g=o&i^o&a^i&a;I=w|0,B=v|0,w=p|0,v=x|0,p=f|0,x=h|0,{h:f,l:h}=qe(u|0,l|0,U|0,Y|0),u=c|0,l=a|0,c=s|0,a=i|0,s=n|0,i=o|0;let b=aa(Y,$,g);n=fa(b,U,ee,j),o=b|0}({h:n,l:o}=qe(this.Ah|0,this.Al|0,n|0,o|0)),{h:s,l:i}=qe(this.Bh|0,this.Bl|0,s|0,i|0),{h:c,l:a}=qe(this.Ch|0,this.Cl|0,c|0,a|0),{h:u,l}=qe(this.Dh|0,this.Dl|0,u|0,l|0),{h:f,l:h}=qe(this.Eh|0,this.El|0,f|0,h|0),{h:p,l:x}=qe(this.Fh|0,this.Fl|0,p|0,x|0),{h:w,l:v}=qe(this.Gh|0,this.Gl|0,w|0,v|0),{h:I,l:B}=qe(this.Hh|0,this.Hl|0,I|0,B|0),this.set(n,o,s,i,c,a,u,l,f,h,p,x,w,v,I,B)}roundClean(){Ce(wt,Et)}destroy(){Ce(this.buffer),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}},bs=class extends ys{constructor(){super(64);d(this,"Ah",le[0]|0);d(this,"Al",le[1]|0);d(this,"Bh",le[2]|0);d(this,"Bl",le[3]|0);d(this,"Ch",le[4]|0);d(this,"Cl",le[5]|0);d(this,"Dh",le[6]|0);d(this,"Dl",le[7]|0);d(this,"Eh",le[8]|0);d(this,"El",le[9]|0);d(this,"Fh",le[10]|0);d(this,"Fl",le[11]|0);d(this,"Gh",le[12]|0);d(this,"Gl",le[13]|0);d(this,"Hh",le[14]|0);d(this,"Hl",le[15]|0)}};var xa=fs(()=>new xs,us(1));var ya=fs(()=>new bs,us(3));var Pf=t=>t[0]==="\u3042\u3044\u3053\u304F\u3057\u3093";function ba(t){if(typeof t!="string")throw new TypeError("invalid mnemonic type: "+typeof t);return t.normalize("NFKD")}function Vf(t){let e=ba(t),r=e.split(" ");if(![12,15,18,21,24].includes(r.length))throw new Error("Invalid mnemonic");return{nfkd:e,words:r}}function $f(t){if(ot(t),![16,20,24,28,32].includes(t.length))throw new Error("invalid entropy length")}function ga(t,e=128){if(gt(e),e%32!==0||e>256)throw new TypeError("Invalid entropy");return Gf(ra(e/8),t)}var jf=t=>{let e=8-t.length/4;return new Uint8Array([xa(t)[0]>>e<<e])};function qf(t){if(!Array.isArray(t)||t.length!==2048||typeof t[0]!="string")throw new Error("Wordlist: expected array of 2048 strings");return t.forEach(e=>{if(typeof e!="string")throw new Error("wordlist: non-string element: "+e)}),$r.chain($r.checksum(1,jf),$r.radix2(11,!0),$r.alphabet(t))}function Gf(t,e){return $f(t),qf(e).encode(t).join(Pf(e)?"\u3000":" ")}var Ff=t=>ba("mnemonic"+t);function ma(t,e=""){return na(ya,Vf(t).nfkd,Ff(e),{c:2048,dkLen:64})}m();var wa=`abandon
2
2
  ability
3
3
  able
4
4
  about
@@ -2046,34 +2046,59 @@ zebra
2046
2046
  zero
2047
2047
  zone
2048
2048
  zoo`.split(`
2049
- `)});var Ag=gg((exports,module)=>{be();var dilithium=(function(){var A,I,g,C={};function B(z,_){if(z===0)return _;throw new Error("Dilithium error: "+z)}function Q(z,_){return new Uint8Array(new Uint8Array(C.HEAPU8.buffer,z,_))}function i(z){try{C._free(z)}catch(_){setTimeout((function(){throw _}),0)}}C.ready=new Promise((function(A,I){function g(z){return g=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(_){return typeof _}:function(_){return _&&typeof Symbol=="function"&&_.constructor===Symbol&&_!==Symbol.prototype?"symbol":typeof _},g(z)}(Q={}).onAbort=I,Q.onRuntimeInitialized=function(){try{Q._dilithiumjs_public_key_bytes(),A(Q)}catch(z){I(z)}};var C,B,Q=Q!==void 0?Q:{},i=Object.assign({},Q),E=function(z,_){throw _},o=(typeof window>"u"?"undefined":g(window))=="object",n=typeof importScripts=="function",r=(typeof process>"u"?"undefined":g(process))=="object"&&g(process.versions)=="object"&&typeof process.versions.node=="string",t="";if(r){var a=eval("require")("fs"),e=eval("require")("path");t=n?e.dirname(t)+"/":__dirname+"/",C=function(z,_){var Z=x(z);return Z?_?Z:Z.toString():(z=q(z)?new URL(z):e.normalize(z),a.readFileSync(z,_?void 0:"utf8"))},B=function(z){var _=C(z,!0);return _.buffer||(_=new Uint8Array(_)),_},!Q.thisProgram&&process.argv.length>1&&process.argv[1].replace(/\\/g,"/"),process.argv.slice(2),typeof module<"u"&&(module.exports=Q),process.on("uncaughtException",(function(z){if(!(z==="unwind"||z instanceof p||z.context instanceof p))throw z})),E=function(z,_){throw process.exitCode=z,_},Q.inspect=function(){return"[Emscripten Module object]"}}else(o||n)&&(n?t=self.location.href:typeof document<"u"&&document.currentScript&&(t=document.currentScript.src),t=t.indexOf("blob:")!==0?t.substr(0,t.replace(/[?#].*/,"").lastIndexOf("/")+1):"",C=function(z){try{var _=new XMLHttpRequest;return _.open("GET",z,!1),_.send(null),_.responseText}catch(X){var Z=x(z);if(Z)return(function(ee){for(var re=[],ie=0;ie<ee.length;ie++){var ae=ee[ie];ae>255&&(ae&=255),re.push(String.fromCharCode(ae))}return re.join("")})(Z);throw X}},n&&(B=function(z){try{var _=new XMLHttpRequest;return _.open("GET",z,!1),_.responseType="arraybuffer",_.send(null),new Uint8Array(_.response)}catch(X){var Z=x(z);if(Z)return Z;throw X}}));Q.print||console.log.bind(console);var f,D=Q.printErr||console.error.bind(console);Object.assign(Q,i),i=null,Q.arguments&&Q.arguments,Q.thisProgram&&Q.thisProgram,Q.quit&&(E=Q.quit),Q.wasmBinary&&(f=Q.wasmBinary);var c,G=Q.noExitRuntime||!0;(typeof WebAssembly>"u"?"undefined":g(WebAssembly))!="object"&&U("no native wasm support detected");var h,y,u,s,F=!1,Y=[],N=[],w=[],S=0,k=null,H=null;function U(z){throw Q.onAbort&&Q.onAbort(z),D(z="Aborted("+z+")"),F=!0,z+=". Build with -sASSERTIONS for more info.",new WebAssembly.RuntimeError(z)}var R,d,M="data:application/octet-stream;base64,";function J(z){return z.startsWith(M)}function q(z){return z.startsWith("file://")}function l(z){return Promise.resolve().then((function(){return(function(_){if(_==R&&f)return new Uint8Array(f);var Z=x(_);if(Z)return Z;if(B)return B(_);throw"both async and sync fetching of the wasm failed"})(z)}))}function m(z,_,Z,X){return(function(ee,re,ie){return l(ee).then((function(ae){return WebAssembly.instantiate(ae,re)})).then((function(ae){return ae})).then(ie,(function(ae){D("failed to asynchronously prepare wasm: "+ae),U(ae)}))})(_,Z,X)}J(R="data:application/octet-stream;base64,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aiIBKAIAIgQgAms2AgAgASACIARqNgIAIAcgACADQcQAcmoiATQCAH4iCCAIQoCAgICQgIjAA35CIIdC/7+AfH58QiCIpyECIAEgACADQQRyaiIBKAIAIgQgAms2AgAgASACIARqNgIAIAcgACADQcgAcmoiATQCAH4iCCAIQoCAgICQgIjAA35CIIdC/7+AfH58QiCIpyECIAEgACADQQhyaiIBKAIAIgQgAms2AgAgASACIARqNgIAIAcgACADQcwAcmoiATQCAH4iCCAIQoCAgICQgIjAA35CIIdC/7+AfH58QiCIpyECIAEgACADQQxyaiIBKAIAIgQgAms2AgAgASACIARqNgIAIAcgACADQdAAcmoiATQCAH4iCCAIQoCAgICQgIjAA35CIIdC/7+AfH58QiCIpyECIAEgACADQRByaiIBKAIAIgQgAms2AgAgASACIARqNgIAIAcgACADQdQAcmoiATQCAH4iCCAIQoCAgICQgIjAA35CIIdC/7+AfH58QiCIpyECIAEgACADQRRyaiIBKAIAIgQgAms2AgAgASACIARqNgIAIAcgACADQdgAcmoiATQCAH4iCCAIQoCAgICQgIjAA35CIIdC/7+AfH58QiCIpyECIAEgACADQRhyaiIBKAIAIgQgAms2AgAgASACIARqNgIAIAcgACADQdwAcmoiATQCAH4iCCAIQoCAgICQgIjAA35CIIdC/7+AfH58QiCIpyECIAEgACADQRxyaiIBKAIAIgQgAms2AgAgASACIARqNgIAIAcgACADQeAAcmoiATQCAH4iCCAIQoCAgICQgIjAA35CIIdC/7+AfH58QiCIpyECIAEgACADQSByaiIBKAIAIgQgAms2AgAgASACIARqNgIAIAcgACADQeQAcmoiATQCAH4iCCAIQoCAgICQgIjAA35CIIdC/7+AfH58QiCIpyECIAEgACADQSRyaiIBKAIAIgQgAms2AgAgASACIARqNgIAIAcgACADQegAcmoiATQCAH4iCCAIQoCAgICQgIjAA35CIIdC/7+AfH58QiCIpyECIAEgACADQShyaiIBKAIAIgQgAms2AgAgASACIARqNgIAIAcgACADQewAcmoiATQCAH4iCCAIQoCAgICQgIjAA35CIIdC/7+AfH58QiCIpyECIAEgACADQSxyaiIBKAIAIgQgAms2AgAgASACIARqNgIAIAcgACADQfAAcmoiATQCAH4iCCAIQoCAgICQgIjAA35CIIdC/7+AfH58QiCIpyECIAEgACADQTByaiIBKAIAIgQgAms2AgAgASACIARqNgIAIAcgACADQfQAcmoiATQCAH4iCCAIQoCAgICQgIjAA35CIIdC/7+AfH58QiCIpyECIAEgACADQTRyaiIBKAIAIgQgAms2AgAgASACIARqNgIAIAcgACADQfgAcmoiATQCAH4iCCAIQoCAgICQgIjAA35CIIdC/7+AfH58QiCIpyECIAEgACADQThyaiIBKAIAIgQgAms2AgAgASACIARqNgIAIAcgACADQfwAcmoiATQCAH4iByAHQoCAgICQgIjAA35CIIdC/7+AfH58QiCIpyECIAEgACADQTxyaiIDKAIAIgEgAms2AgAgAyABIAJqNgIAIAVB4AFJIQMgBUEgaiEFIAMNAAtBACEFA0AgBkEBaiIGQQJ0QaAKajQCACIHIAAgBUECdCIDQSByaiIBNAIAfiIIIAhCgICAgJCAiMADfkIgh0L/v4B8fnxCIIinIQIgASAAIANqIgEoAgAiBCACazYCACABIAIgBGo2AgAgByAAIANBJHJqIgE0AgB+IgggCEKAgICAkICIwAN+QiCHQv+/gHx+fEIgiKchAiABIAAgA0EEcmoiASgCACIEIAJrNgIAIAEgAiAEajYCACAHIAAgA0EocmoiATQCAH4iCCAIQoCAgICQgIjAA35CIIdC/7+AfH58QiCIpyECIAEgACADQQhyaiIBKAIAIgQgAms2AgAgASACIARqNgIAIAcgACADQSxyaiIBNAIAfiIIIAhCgICAgJCAiMADfkIgh0L/v4B8fnxCIIinIQIgASAAIANBDHJqIgEoAgAiBCACazYCACABIAIgBGo2AgAgByAAIANBMHJqIgE0AgB+IgggCEKAgICAkICIwAN+QiCHQv+/gHx+fEIgiKchAiABIAAgA0EQcmoiASgCACIEIAJrNgIAIAEgAiAEajYCACAHIAAgA0E0cmoiATQCAH4iCCAIQoCAgICQgIjAA35CIIdC/7+AfH58QiCIpyECIAEgACADQRRyaiIBKAIAIgQgAms2AgAgASACIARqNgIAIAcgACADQThyaiIBNAIAfiIIIAhCgICAgJCAiMADfkIgh0L/v4B8fnxCIIinIQIgASAAIANBGHJqIgEoAgAiBCACazYCACABIAIgBGo2AgAgByAAIANBPHJqIgE0AgB+IgcgB0KAgICAkICIwAN+QiCHQv+/gHx+fEIgiKchAiABIAAgA0EccmoiAygCACIBIAJrNgIAIAMgASACajYCACAFQfABSSEDIAVBEGohBSADDQALQQAhBQNAIAZBAWoiBkECdEGgCmo0AgAiByAAIAVBAnQiA0EQcmoiATQCAH4iCCAIQoCAgICQgIjAA35CIIdC/7+AfH58QiCIpyECIAEgACADaiIBKAIAIgQgAms2AgAgASACIARqNgIAIAcgACADQRRyaiIBNAIAfiIIIAhCgICAgJCAiMADfkIgh0L/v4B8fnxCIIinIQIgASAAIANBBHJqIgEoAgAiBCACazYCACABIAIgBGo2AgAgByAAIANBGHJqIgE0AgB+IgggCEKAgICAkICIwAN+QiCHQv+/gHx+fEIgiKchAiABIAAgA0EIcmoiASgCACIEIAJrNgIAIAEgAiAEajYCACAHIAAgA0EccmoiATQCAH4iByAHQoCAgICQgIjAA35CIIdC/7+AfH58QiCIpyECIAEgACADQQxyaiIDKAIAIgEgAms2AgAgAyABIAJqNgIAIAVB+AFJIQMgBUEIaiEFIAMNAAtBACEDA0AgBkEBaiIGQQJ0QaAKajQCACIHIAAgA0ECdCIFQQhyaiIBNAIAfiIIIAhCgICAgJCAiMADfkIgh0L/v4B8fnxCIIinIQIgASAAIAVqIgEoAgAiBCACazYCACABIAIgBGo2AgAgByAAIAVBDHJqIgE0AgB+IgcgB0KAgICAkICIwAN+QiCHQv+/gHx+fEIgiKchAiABIAAgBUEEcmoiBSgCACIBIAJrNgIAIAUgASACajYCACADQfwBSSEFIANBBGohAyAFDQALQQAhAwNAIAAgA0ECdCICQQRyaiIBNAIAIAZBAWoiBkECdEGgCmo0AgB+IgcgB0KAgICAkICIwAN+QiCHQv+/gHx+fEIgiKchBSABIAAgAmoiAigCACIBIAVrNgIAIAIgASAFajYCACADQf4BSSEFIANBAmohAyAFDQALC4oCAQp/A0AgACAEQQV0aiICIAEgBEEDbGoiAy0AAEEHcSIFNgIAIAIgAy0AAEEDdkEHcSIGNgIEIAIgAy0A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IgEgACADQcgAcmoiAigCACIHIAEoAgAiAWo2AgAgAiABIAdrIgE2AgAgAiABrCAJfiIIIAhCgICAgJCAiMADfkIgh0L/v4B8fnxCIIg+AgAgACADQQxyaiIBIAAgA0HMAHJqIgIoAgAiByABKAIAIgFqNgIAIAIgASAHayIBNgIAIAIgAawgCX4iCCAIQoCAgICQgIjAA35CIIdC/7+AfH58QiCIPgIAIAAgA0EQcmoiASAAIANB0AByaiICKAIAIgcgASgCACIBajYCACACIAEgB2siATYCACACIAGsIAl+IgggCEKAgICAkICIwAN+QiCHQv+/gHx+fEIgiD4CACAAIANBFHJqIgEgACADQdQAcmoiAigCACIHIAEoAgAiAWo2AgAgAiABIAdrIgE2AgAgAiABrCAJfiIIIAhCgICAgJCAiMADfkIgh0L/v4B8fnxCIIg+AgAgACADQRhyaiIBIAAgA0HYAHJqIgIoAgAiByABKAIAIgFqNgIAIAIgASAHayIBNgIAIAIgAawgCX4iCCAIQoCAgICQgIjAA35CIIdC/7+AfH58QiCIPgIAIAAgA0EccmoiASAAIANB3AByaiICKAIAIgcgASgCACIBajYCACACIAEgB2siATYCACACIAGsIAl+IgggCEKAgICAkICIwAN+QiCHQv+/gHx+fEIgiD4CACAAIANBIHJqIgEgACADQeAAcmoiAigCACIHIAEoAgAiAWo2AgAgAiABIAdrIgE2AgAgAiABrCAJfiIIIAhCgICAgJCAiMADfkIgh0L/v4B8fnxCIIg+AgAgACADQSRyaiIBIAAgA0HkAHJqIgIoAgAiByABKAIAIgFqNgIAIAIgASAHayIBNgIAIAIgAawgCX4iCCAIQoCAgICQgIjAA35CIIdC/7+AfH58QiCIPgIAIAAgA0EocmoiASAAIANB6AByaiICKAIAIgcgASgCACIBajYCACACIAEgB2siATYCACACIAGsIAl+IgggCEKAgICAkICIwAN+QiCHQv+/gHx+fEIgiD4CACAAIANBLHJqIgEgACADQewAcmoiAigCACIHIAEoAgAiAWo2AgAgAiABIAdrIgE2AgAgAiABrCAJfiIIIAhCgICAgJCAiMADfkIgh0L/v4B8fnxCIIg+AgAgACADQTByaiIBIAAgA0HwAHJqIgIoAgAiByABKAIAIgFqNgIAIAIgASAHayIBNgIAIAIgAawgCX4iCCAIQoCAgICQgIjAA35CIIdC/7+AfH58QiCIPgIAIAAgA0E0cmoiASAAIANB9AByaiICKAIAIgcgASgCACIBajYCACACIAEgB2siATYCACACIAGsIAl+IgggCEKAgICAkICIwAN+QiCHQv+/gHx+fEIgiD4CACAAIANBOHJqIgEgACADQfgAcmoiAigCACIHIAEoAgAiAWo2AgAgAiABIAdrIgE2AgAgAiABrCAJfiIIIAhCgICAgJCAiMADfkIgh0L/v4B8fnxCIIg+AgAgACADQTxyaiICIAAgA0H8AHJqIgMoAgAiASACKAIAIgJqNgIAIAMgAiABayICNgIAIAMgAqwgCX4iCSAJQoCAgICQgIjAA35CIIdC/7+AfH58QiCIPgIAIAVB4AFJIQMgBUEgaiEFIAMNAAtBACEDQQAgBEECdEGYCmooAgBrrCEJA0AgACADQQJ0aiIGIAYoAoABIgUgBigCACICajYCACAGIAIgBWsiBTYCgAEgBiAFrCAJfiIIIAhCgICAgJCAiMADfkIgh0L/v4B8fnxCIIg+AoABIANBAWoiA0EgRw0AC0EAIARBAnRBlApqKAIAa6whCUHAACEDA0AgACADQQJ0aiIGIAYoAoABIgUgBigCACICajYCACAGIAIgBWsiBTYCgAEgBiAFrCAJfiIIIAhCgICAgJCAiMADfkIgh0L/v4B8fnxCIIg+AoABIANBAWoiA0HgAEcNAAtBACAEQQJ0QZAKaigCAGusIQlBgAEhAwNAIAAgA0ECdGoiBiAGKAKAASIFIAYoAgAiAmo2AgAgBiACIAVrIgU2AoABIAYgBawgCX4iCCAIQoCAgICQgIjAA35CIIdC/7+AfH58QiCIPgKAASADQQFqIgNBoAFHDQALQQAgBEECdEGMCmooAgBrrCEJQcABIQMDQCAAIANBAnRqIgYgBigCgAEiBSAGKAIAIgJqNgIAIAYgAiAFayIFNgKAASAGIAWsIAl+IgggCEKAgICAkICIwAN+QiCHQv+/gHx+fEIgiD4CgAEgA0EBaiIDQeABRw0AC0EAIQNBACAEQQJ0QYgKaigCAGusIQkDQCAAIANBAnRqIgYgBigCgAIiBSAGKAIAIgJqNgIAIAYgAiAFayIFNgKAAiAGIAWsIAl+IgggCEKAgICAkICIwAN+QiCHQv+/gHx+fEIgiD4CgAIgA0EBaiIDQcAARw0AC0EAIARBAnRBhApqKAIAa6whCUGAASEDA0AgACADQQJ0aiIGIAYoAoACIgUgBigCACICajYCACAGIAIgBWsiBTYCgAIgBiAFrCAJfiIIIAhCgICAgJCAiMADfkIgh0L/v4B8fnxCIIg+AoACIANBAWoiA0HAAUcNAAtBACEDQQAgBEECdEGACmooAgBrrCEJQQAhBgNAIAAgBkECdGoiBCAEKAKABCIFIAQoAgAiAmo2AgAgBCACIAVrIgU2AoAEIAQgBawgCX4iCCAIQoCAgICQgIjAA35CIIdC/7+AfH58QiCIPgKABCAGQQFqIgZBgAFHDQALA0AgACADQQJ0aiIGIAY0AgBC+scCfiIJIAlCgICAgJCAiMADfkIgh0L/v4B8fnxCIIg+AgAgA0EBaiIDQYACRw0ACwsQACAAKAIAQYgBIAEgAhA6C8kCAgd/A34gAigCACEDAn9BACABRQ0AGiABrSEMA0AgCqciAiAKIAMpA8gBIgtaDQEaIAAgAmogAyAKIAt9IgunQYgBakF4cWopAwAgC0IDhog8AAAgCkIBfCIKIAxSDQALIAELIQIgAyADKQPIASACrX03A8gBIAEgAmsiBQRAIAAgAmohAANAIAMQJUGIASAFIAVBiAFPGyIEQQFxIQZBACECIARBAUcEQCAEQf4BcSEHQQAhAQNAIAAgAmogAyACQXhxaiIIKQMAIAJBA3RBMHGtiDwAACAAIAJBAXIiCWogCCkDACAJQQN0QThxrYg8AAAgAkECaiECIAFBAmoiASAHRw0ACwsgBgRAIAAgAmogAyACQXhxaikDACACQQN0QThxrYg8AAALIANBiAEgBGutNwPIASAAIARqIQAgBSAEayIFDQALCwsJACAAKAIAECoLrgEBAX8jAEGACGsiAyQAIAAgASACEAUgAyABQYAIaiACQYAIahAFIAAgACADEAYgAyABQYAQaiACQYAQahAFIAAgACADEAYgAyABQYAYaiACQYAYahAFIAAgACADEAYgAyABQYAgaiACQYAgahAFIAAgACADEAYgAyABQYAoaiACQYAoahAFIAAgACADEAYgAyABQYAwaiACQYAwahAFIAAgACADEAYgA0GACGokAAtVAQJ/A0Ag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CwsgBgRAIAAgAmogAyACQXhxaikDACACQQN0QThxrYg8AAALIANBqAEgBGutNwPIASAAIARqIQAgBSAEayIFDQALCwtsAQF/QQEhAgJAIAAgARALDQAgAEGACGogARALDQAgAEGAEGogARALDQAgAEGAGGogARALDQAgAEGAIGogARALDQAgAEGAKGogARALDQAgAEGAMGogARALDQAgAEGAOGogARALQQBHIQILIAILlgEAIAAgASACEBwgAEGACGogAUGACGogAkGACGoQHCAAQYAQaiABQYAQaiACQYAQahAcIABBgBhqIAFBgBhqIAJBgBhqEBwgAEGAIGogAUGAIGogAkGAIGoQHCAAQYAoaiABQYAoaiACQYAoahAcIABBgDBqIAFBgDBqIAJBgDBqEBwgAEGAOGogAUGAOGogAkGAOGoQHAuWAQAgACABIAIQBiAAQYAIaiABQYAIaiACQYAIahAGIABBgBBqIAFBgBBqIAJBgBBqEAYgAEGAGGogAUGAGGogAkGAGGoQBiAAQYAgaiABQYAgaiACQYAgahAGIABBgChqIAFBgChqIAJBgChqEAYgAEGAMGogAUGAMGogAkGAMGoQBiAAQYA4aiABQYA4aiACQYA4ahAGC24BAX9BASEBAkAgAEGI/x8QCw0AIABBgAhqQYj/HxALDQAgAEGAEGpBiP8fEAsNACAAQYAYakGI/x8QCw0AIABBgCBqQYj/HxALDQAgAEGAKGpBiP8fEAsNACAAQYAwakGI/x8QC0EARyEBCyABC4EDAgd+AX8gAa0iBiAAKQPIASIEIAOtIgh8WARAA0BBACELQgAhBSABIASnRwRAA0AgACAEIAV8IgSnQXhxaiILIAspAwAgAiAFp2oxAAAgBEIDhoaFNwMAIAVCAXwiBSABIAApA8gBIgSnayILrVQNAAsLIABCADcDyAEgABAlIAIgC2ohAiAAKQPIASIEIAMgC2siA60iCHwgBloNAAsLIAAgAwR+IAOtIgRCAYMhBkIAIQUgA0EBRwRAIARC/v///w+DIQlCACEEA0AgACAAKQPIASAFfCIHp0F4cWoiASABKQMAIAIgBadqMQAAIAdCA4aGhTcDACAAIAVCAYQiByAAKQPIAXwiCqdBeHFqIgEgASkDACACIAenajEAACAKQgOGhoU3AwAgBUICfCEFIARC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ACABQQFqIQELIAJBAmoiAkGAAkcNAAsgBSABOgDrIyAEQYAIaiEIQQAhAgNAIAggAkECdGooAgAEQCABIANqIAI6AAAgAUEBaiEBCyAIIAJBAXIiBkECdGooAgAEQCABIANqIAY6AAAgAUEBaiEBCyACQQJqIgJBgAJHDQALIAUgAToA7CMgBEGAEGohCEEAIQIDQCAIIAJBAnRqKAIABEAgASADaiACOgAAIAFBAWohAQsgCCACQQFyIgZBAnRqKAIABEAgASADaiAGOgAAIAFBAWohAQsgAkECaiICQYACRw0ACyAFIAE6AO0jIARBgBhqIQhBACECA0AgCCACQQJ0aigCAARAIAEgA2ogAjoAACABQQFqIQELIAggAkEBciIGQQJ0aigCAARAIAEgA2ogBjoAACABQQFqIQELIAJBAmoiAkGAAkcNAAsgBSABOgDuIyAEQYAgaiEIQQAhAgNAIAggAkECdGooAgAEQCABIANqIAI6AAAgAUEBaiEBCyAIIAJBAXIiBkECdGooAgAEQCABIANqIAY6AAAgAUEBaiEBCyACQQJqIgJBgAJHDQALIAUgAToA7yMgBEGAKGohCEEAIQIDQCAIIAJBAnRqKAIABEAgASADaiACOgAAIAFBAWohAQsgCCACQQFyIgZBAnRqKAIABEAgASADaiAGOgAAIAFBAWohAQsgAkECaiICQYACRw0ACyAFIAE6APAjIARBgDBqIQhBACECA0AgCCACQQJ0aigCAARAIAEgA2ogAjoAACABQQFqIQELIAggAkEBciIGQQJ0aigCAARAIAEgA2ogBjoAACABQQFqIQELIAJBAmoiAkGAAkcNAAsgBSABOgDxIyAEQYA4aiEEQQAhAgNAIAQgAkECdGooAgAEQCABIANqIAI6AAAgAUEBaiEBCyAEIAJBAXIiCEECdGooAgAEQCABIANqIAg6AAAgAUEBaiEBCyACQQJqIgJBgAJHDQALIAUgAToA8iMgDkHzIzYCDCAHQfCxB2okACAAIA4oAgw7AQAgDkEQaiQAQQALghEBFH8jAEGg8QVrIgUkACAFQaDwBWohAiMAQRBrIgQkAANAIARBADoADyACIANqQaQSIARBD2pBABABOgAAIANBAWoiA0EgRw0ACyAEQRBqJAAgAkGAASACQSAQKSAFQYCwAmoiCCACEDEgBUGA+AFqIgYiBCAFQcDwBWoiA0EAEAogBEGACGogA0EBEAogBEGAEGogA0ECEAogBEGAGGogA0EDEAogBEGAIGogA0EEEAogBEGAKGogA0EFEAogBEGAMGogA0EGEAogBUGAgAFqIgQgA0EHEAogBEGACGogA0EIEAogBEGAEGogA0EJEAogBEGAGGogA0EKEAogBEGAIGogA0ELEAogBEGAKGogA0EMEAogBEGAMGogA0ENEAogBEGAOGoiDiADQQ4QCiAFQYDAAWoiByAGQYA4ECwgBxAoIAVBgEBrIgMgCCAHEDAgAxAnIAMQJiADIAMgBBA4IAMQLyADIAUgAxAaIANBgAhqIgcgBUGACGoiDyAHEBogA0GAEGoiCCAFQYAQaiIQIAgQGiADQYAYaiIJIAVBgBhqIhEgCRAaIANBgCBqIgogBUGAIGoiEiAKEBogA0GAKGoiCyAFQYAoaiITIAsQGiADQYAwaiIMIAVBgDBqIhQgDBAaIANBgDhqIg0gBUGAOGoiFSANEBogACACLQAAOgAAIAAgAi0AAToAASAAIAItAAI6AAIgACACLQADOgADIAAgAi0ABDoABCAAIAItAAU6AAUgACACLQAGOgAGIAAgAi0ABzoAByAAIAItAAg6AAggACACLQAJOgAJIAAgAi0ACjoACiAAIAItAAs6AAsgACACLQAMOgAMIAAgAi0ADToADSAAIAItAA46AA4gACACLQAPOgAPIAAgAi0AEDoAECAAIAItABE6ABEgACACLQASOgASIAAgAi0AEzoAEyAAIAItABQ6ABQgACACLQAVOgAVIAAgAi0AFjoAFiAAIAItABc6ABcgACACLQAYOgAYIAAgAi0AGToAGSAAIAItABo6ABogACACLQAbOgAbIAAgAi0AHDoAHCAAIAItAB06AB0gACACLQAeOgAeIAAgAi0AHzoAHyAAQSBqIAMQFiAAQeACaiAHEBYgAEGgBWogCBAWIABB4AdqIAkQFiAAQaAKaiAKEBYgAEHgDGogCxAWIABBoA9qIAwQFiAAQeARaiANEBYgBUGA8AVqIgNBICAAQaAUECkgASACLQAAOgAAIAEgAi0AAToAASABIAItAAI6AAIgASACLQADOgADIAEgAi0ABDoABCABIAItAAU6AAUgASACLQAGOgAGIAEgAi0ABzoAByABIAItAAg6AAggASACLQAJOgAJIAEgAi0ACjoACiABIAItAAs6AAsgASACLQAMOgAMIAEgAi0ADToADSABIAItAA46AA4gASACLQAPOgAPIAEgAi0AEDoAECABIAItABE6ABEgASACLQASOgASIAEgAi0AEzoAEyABIAItABQ6ABQgASACLQAVOgAVIAEgAi0AFjoAFiABIAItABc6ABcgASACLQAYOgAYIAEgAi0AGToAGSABIAItABo6ABogASACLQAbOgAbIAEgAi0AHDoAHCABIAItAB06AB0gASACLQAeOgAeIAEgAi0AHzoAHyABIAVBgPEFaiIALQAAOgAgIAEgAC0AAToAISABIAAtAAI6ACIgASAALQADOgAjIAEgAC0ABDoAJCABIAAtAAU6ACUgASAALQAGOgAmIAEgAC0ABzoAJyABIAAtAAg6ACggASAALQAJOgApIAEgAC0ACjoAKiABIAAtAAs6ACsgASAALQAMOgAsIAEgAC0ADToALSABIAAtAA46AC4gASAALQAPOgAvIAEgAC0AEDoAMCABIAAtABE6ADEgASAALQASOgAyIAEgAC0AEzoAMyABIAAtABQ6ADQgASAALQAVOgA1IAEgAC0AFjoANiABIAAtABc6ADcgASAALQAYOgA4IAEgAC0AGToAOSABIAAtABo6ADogASAALQAbOgA7IAEgAC0AHDoAPCABIAAtAB06AD0gASAALQAeOgA+IAEgAC0AHzoAPyABIAMtAAA6AEAgASADLQABOgBBIAEgAy0AAjoAQiABIAMtAAM6AEMgASADLQAEOgBEIAEgAy0ABToARSABIAMtAAY6AEYgASADLQAHOgBHIAEgAy0ACDoASCABIAMtAAk6AEkgASADLQAKOgBKIAEgAy0ACzoASyABIAMtAAw6AEwgASADLQANOgBNIAEgAy0ADjoATiABIAMtAA86AE8gASADLQAQOgBQIAEgAy0AEToAUSABIAMtABI6AFIgASADLQATOgBTIAEgAy0AFDoAVCABIAMtABU6AFUgASADLQAWOgBWIAEgAy0AFzoAVyABIAMtABg6AFggASADLQAZOgBZIAEgAy0AGjoAWiABIAMtABs6AFsgASADLQAcOgBcIAEgAy0AHToAXSABIAMtAB46AF4gASADLQAfOgBfIAFB4ABqIAYQCSABQcABaiAGQYAI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")||(d=R,R=Q.locateFile?Q.locateFile(d,t):t+d);var L={2340:function(){return Q.getRandomValue()},2376:function(){if(Q.getRandomValue===void 0)try{var A=(typeof window>"u"?"undefined":g(window))==="object"?window:self,I=A.crypto!==void 0?A.crypto:A.msCrypto,C=function(){var z=new Uint32Array(1);return I.getRandomValues(z),z[0]>>>0};C(),Q.getRandomValue=C}catch(A){try{var B=eval("require")("crypto"),i=function(){var z=B.randomBytes(4);return(z[0]<<24|z[1]<<16|z[2]<<8|z[3])>>>0};i(),Q.getRandomValue=i}catch(z){throw"No secure random number generator found"}}}};function p(z){this.name="ExitStatus",this.message="Program terminated with exit(".concat(z,")"),this.status=z}var K=function(z){for(;z.length>0;)z.shift()(Q)};typeof TextDecoder<"u"&&new TextDecoder("utf8");var b,v=[],j=function(z,_,Z){var X=(function(ee,re){var ie;for(v.length=0,re>>=2;ie=y[ee++];)re+=ie!=105&re,v.push(ie==105?u[re]:s[re++>>1]),++re;return v})(_,Z);return L[z].apply(null,X)},O=function(z){G||(Q.onExit&&Q.onExit(z),F=!0),E(z,new p(z))},T={b:function(z,_,Z){return j(z,_,Z)},d:function(z,_,Z){return y.copyWithin(z,_,_+Z)},c:function(z){y.length,U("OOM")},a:function(z,_){O(z)}};(function(){var z={a:T};function _(Z,X){var ee,re,ie=Z.exports;return Q.asm=ie,c=Q.asm.e,ee=c.buffer,Q.HEAP8=h=new Int8Array(ee),Q.HEAP16=new Int16Array(ee),Q.HEAP32=u=new Int32Array(ee),Q.HEAPU8=y=new Uint8Array(ee),Q.HEAPU16=new Uint16Array(ee),Q.HEAPU32=new Uint32Array(ee),Q.HEAPF32=new Float32Array(ee),Q.HEAPF64=s=new Float64Array(ee),Q.asm.g,re=Q.asm.f,N.unshift(re),(function(ae){if(S--,Q.monitorRunDependencies&&Q.monitorRunDependencies(S),S==0&&(k!==null&&(clearInterval(k),k=null),H)){var fe=H;H=null,fe()}})(),ie}if(S++,Q.monitorRunDependencies&&Q.monitorRunDependencies(S),Q.instantiateWasm)try{return Q.instantiateWasm(z,_)}catch(Z){return D("Module.instantiateWasm callback failed with error: "+Z),!1}m(0,R,z,(function(Z){_(Z.instance)}))})(),Q._malloc=function(){return(Q._malloc=Q.asm.h).apply(null,arguments)},Q._free=function(){return(Q._free=Q.asm.i).apply(null,arguments)},Q._dilithiumjs_init=function(){return(Q._dilithiumjs_init=Q.asm.j).apply(null,arguments)},Q._dilithiumjs_public_key_bytes=function(){return(Q._dilithiumjs_public_key_bytes=Q.asm.k).apply(null,arguments)},Q._dilithiumjs_secret_key_bytes=function(){return(Q._dilithiumjs_secret_key_bytes=Q.asm.l).apply(null,arguments)},Q._dilithiumjs_signature_bytes=function(){return(Q._dilithiumjs_signature_bytes=Q.asm.m).apply(null,arguments)},Q._dilithiumjs_keypair=function(){return(Q._dilithiumjs_keypair=Q.asm.n).apply(null,arguments)},Q._dilithiumjs_sign=function(){return(Q._dilithiumjs_sign=Q.asm.o).apply(null,arguments)},Q._dilithiumjs_verify=function(){return(Q._dilithiumjs_verify=Q.asm.p).apply(null,arguments)};function x(z){if(J(z))return(function(_){if(r!==void 0&&r){var Z=Buffer.from(_,"base64");return new Uint8Array(Z.buffer,Z.byteOffset,Z.byteLength)}try{for(var X=atob(_),ee=new Uint8Array(X.length),re=0;re<X.length;++re)ee[re]=X.charCodeAt(re);return ee}catch{throw new Error("Converting base64 string to bytes failed.")}})(z.slice(M.length))}function W(){function z(){b||(b=!0,Q.calledRun=!0,F||(K(N),Q.onRuntimeInitialized&&Q.onRuntimeInitialized(),(function(){if(Q.postRun)for(typeof Q.postRun=="function"&&(Q.postRun=[Q.postRun]);Q.postRun.length;)_=Q.postRun.shift(),w.unshift(_);var _;K(w)})()))}S>0||((function(){if(Q.preRun)for(typeof Q.preRun=="function"&&(Q.preRun=[Q.preRun]);Q.preRun.length;)_=Q.preRun.shift(),Y.unshift(_);var _;K(Y)})(),S>0||(Q.setStatus?(Q.setStatus("Running..."),setTimeout((function(){setTimeout((function(){Q.setStatus("")}),1),z()}),1)):z()))}if(Q.writeArrayToMemory=function(z,_){h.set(z,_)},H=function z(){b||W(),b||(H=z)},Q.preInit)for(typeof Q.preInit=="function"&&(Q.preInit=[Q.preInit]);Q.preInit.length>0;)Q.preInit.pop()();W()})).catch((function(){function A(z){return A=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(_){return typeof _}:function(_){return _&&typeof Symbol=="function"&&_.constructor===Symbol&&_!==Symbol.prototype?"symbol":typeof _},A(z)}var I,g,C=(C={})!==void 0?C:{},B=Object.assign({},C),Q=function(z,_){throw _},i=(typeof window>"u"?"undefined":A(window))=="object",E=typeof importScripts=="function",o=(typeof process>"u"?"undefined":A(process))=="object"&&A(process.versions)=="object"&&typeof process.versions.node=="string",n="";if(o){var r=eval("require")("fs"),t=eval("require")("path");n=E?t.dirname(n)+"/":__dirname+"/",I=function(z,_){var Z=P(z);return Z?_?Z:Z.toString():(z=m(z)?new URL(z):t.normalize(z),r.readFileSync(z,_?void 0:"utf8"))},g=function(z){var _=I(z,!0);return _.buffer||(_=new Uint8Array(_)),_},!C.thisProgram&&process.argv.length>1&&process.argv[1].replace(/\\/g,"/"),process.argv.slice(2),typeof module<"u"&&(module.exports=C),process.on("uncaughtException",(function(z){if(!(z==="unwind"||z instanceof b||z.context instanceof b))throw z})),Q=function(z,_){throw process.exitCode=z,_},C.inspect=function(){return"[Emscripten Module object]"}}else(i||E)&&(E?n=self.location.href:typeof document<"u"&&document.currentScript&&(n=document.currentScript.src),n=n.indexOf("blob:")!==0?n.substr(0,n.replace(/[?#].*/,"").lastIndexOf("/")+1):"",I=function(z){try{var _=new XMLHttpRequest;return _.open("GET",z,!1),_.send(null),_.responseText}catch(X){var Z=P(z);if(Z)return(function(ee){for(var re=[],ie=0;ie<ee.length;ie++){var ae=ee[ie];ae>255&&(ae&=255),re.push(String.fromCharCode(ae))}return re.join("")})(Z);throw X}},E&&(g=function(z){try{var _=new XMLHttpRequest;return _.open("GET",z,!1),_.responseType="arraybuffer",_.send(null),new Uint8Array(_.response)}catch(X){var Z=P(z);if(Z)return Z;throw X}}));C.print||console.log.bind(console);var a,e=C.printErr||console.error.bind(console);Object.assign(C,B),B=null,C.arguments&&C.arguments,C.thisProgram&&C.thisProgram,C.quit&&(Q=C.quit),C.wasmBinary&&(a=C.wasmBinary);var f,D=C.noExitRuntime||!0,c={Memory:function(z){this.buffer=new ArrayBuffer(65536*z.initial)},Module:function(z){},Instance:function(z,_){this.exports=(function(Z){for(var X,ee=new Uint8Array(123),re=25;re>=0;--re)ee[48+re]=52+re,ee[65+re]=re,ee[97+re]=26+re;function ie(fe,le,Ce){for(var ce,Ee,$=0,Be=le,xe=Ce.length,He=le+(3*xe>>2)-(Ce[xe-2]=="=")-(Ce[xe-1]=="=");$<xe;$+=4)ce=ee[Ce.charCodeAt($+1)],Ee=ee[Ce.charCodeAt($+2)],fe[Be++]=ee[Ce.charCodeAt($)]<<2|ce>>4,Be<He&&(fe[Be++]=ce<<4|Ee>>2),Be<He&&(fe[Be++]=Ee<<6|ee[Ce.charCodeAt($+3)])}function ae(){throw new Error("abort")}return ee[43]=62,ee[47]=63,(function(fe){var le=fe.a,Ce=le.a.buffer,ce=new Int8Array(Ce),Ee=new Int16Array(Ce),$=new Int32Array(Ce),Be=new Uint8Array(Ce),xe=new Uint16Array(Ce),He=new Uint32Array(Ce),Se=(new Float32Array(Ce),new Float64Array(Ce),Math.imul),Re=Math.clz32,we=le.b,Me=le.c,Ve=le.d,Ge=8392208,ke=0;function Pe(te){var oe,ne=0,Ae=0,se=0,ge=0,ue=0,Ie=0,de=0,ye=0,De=0,ve=0;Ge=oe=Ge-16|0;e:{A:{t:{r:{a:{o:{c:{d:{f:{g:{s:{u:{I:{n:{if((te|=0)>>>0<=244){if(3&(ne=(Ie=$[776])>>>(Ae=(de=te>>>0<11?16:te+11&-8)>>>3|0)|0)){ne=(te=(Ae=Ae+(1&(-1^ne))|0)<<3)+3144|0,se=$[te+3152>>2],(0|ne)!=(0|(te=$[se+8>>2]))?($[te+12>>2]=ne,$[ne+8>>2]=te):$[776]=AA(Ae)&Ie,te=se+8|0,ne=Ae<<3,$[se+4>>2]=3|ne,$[(ne=ne+se|0)+4>>2]=1|$[ne+4>>2];break e}if((ve=$[778])>>>0>=de>>>0)break n;if(ne){ne=(te=(se=Ti(0-(te=(0-(te=2<<Ae)|te)&ne<<Ae)&te))<<3)+3144|0,ge=$[te+3152>>2],(0|ne)!=(0|(te=$[ge+8>>2]))?($[te+12>>2]=ne,$[ne+8>>2]=te):(Ie=AA(se)&Ie,$[776]=Ie),$[ge+4>>2]=3|de,se=(te=se<<3)-de|0,$[(Ae=ge+de|0)+4>>2]=1|se,$[te+ge>>2]=se,ve&&(ne=3144+(-8&ve)|0,ue=$[781],(te=1<<(ve>>>3))&Ie?te=$[ne+8>>2]:($[776]=te|Ie,te=ne),$[ne+8>>2]=ue,$[te+12>>2]=ue,$[ue+12>>2]=ne,$[ue+8>>2]=te),te=ge+8|0,$[781]=Ae,$[778]=se;break e}if(!(De=$[777]))break n;for(Ae=$[3408+(Ti(0-De&De)<<2)>>2],ue=(-8&$[Ae+4>>2])-de|0,ne=Ae;(te=$[ne+16>>2])||(te=$[ne+20>>2]);)ue=(se=(ne=(-8&$[te+4>>2])-de|0)>>>0<ue>>>0)?ne:ue,Ae=se?te:Ae,ne=te;if(ye=$[Ae+24>>2],(0|(se=$[Ae+12>>2]))!=(0|Ae)){te=$[Ae+8>>2],$[te+12>>2]=se,$[se+8>>2]=te;break A}if(!(te=$[(ne=Ae+20|0)>>2])){if(!(te=$[Ae+16>>2]))break I;ne=Ae+16|0}for(;ge=ne,se=te,(te=$[(ne=te+20|0)>>2])||(ne=se+16|0,te=$[se+16>>2]););$[ge>>2]=0;break A}if(de=-1,!(te>>>0>4294967231)&&(de=-8&(te=te+11|0),De=$[777])){ue=0-de|0,Ie=0,de>>>0<256||(Ie=31,de>>>0>16777215||(Ie=62+((de>>>38-(te=Re(te>>>8|0))&1)-(te<<1)|0)|0));i:{h:{if(ne=$[3408+(Ie<<2)>>2])for(te=0,Ae=de<<((0|Ie)!=31?25-(Ie>>>1|0)|0:0);;){if(!((ge=(-8&$[ne+4>>2])-de|0)>>>0>=ue>>>0||(se=ne,ue=ge,ge))){ue=0,te=ne;break h}if(ge=$[ne+20>>2],ne=$[16+((Ae>>>29&4)+ne|0)>>2],te=ge?(0|ge)==(0|ne)?te:ge:te,Ae<<=1,!ne)break}else te=0;if(!(te|se)){if(se=0,!(te=(0-(te=2<<Ie)|te)&De))break n;te=$[3408+(Ti(te&0-te)<<2)>>2]}if(!te)break i}for(;ue=(Ae=(ne=(-8&$[te+4>>2])-de|0)>>>0<ue>>>0)?ne:ue,se=Ae?te:se,te=(ne=$[te+16>>2])||$[te+20>>2];);}if(!(!se|$[778]-de>>>0<=ue>>>0)){if(Ie=$[se+24>>2],(0|se)!=(0|(Ae=$[se+12>>2]))){te=$[se+8>>2],$[te+12>>2]=Ae,$[Ae+8>>2]=te;break t}if(!(te=$[(ne=se+20|0)>>2])){if(!(te=$[se+16>>2]))break u;ne=se+16|0}for(;ge=ne,Ae=te,(te=$[(ne=te+20|0)>>2])||(ne=Ae+16|0,te=$[Ae+16>>2]););$[ge>>2]=0;break t}}}if((te=$[778])>>>0>=de>>>0){se=$[781],(ne=te-de|0)>>>0>=16?($[(Ae=se+de|0)+4>>2]=1|ne,$[te+se>>2]=ne,$[se+4>>2]=3|de):($[se+4>>2]=3|te,$[(te=te+se|0)+4>>2]=1|$[te+4>>2],Ae=0,ne=0),$[778]=ne,$[781]=Ae,te=se+8|0;break e}if((ye=$[779])>>>0>de>>>0){ne=ye-de|0,$[779]=ne,te=(Ae=$[782])+de|0,$[782]=te,$[te+4>>2]=1|ne,$[Ae+4>>2]=3|de,te=Ae+8|0;break e}if(te=0,De=de+47|0,$[894]?Ae=$[896]:($[897]=-1,$[898]=-1,$[895]=4096,$[896]=4096,$[894]=oe+12&-16^1431655768,$[899]=0,$[887]=0,Ae=4096),(ne=(ge=De+Ae|0)&(ue=0-Ae|0))>>>0<=de>>>0||(se=$[886])&&se>>>0<(Ie=(Ae=$[884])+ne|0)>>>0|Ae>>>0>=Ie>>>0)break e;n:{if(!(4&Be[3548])){i:{h:{l:{B:{if(se=$[782])for(te=3552;;){if((Ae=$[te>>2])>>>0<=se>>>0&se>>>0<Ae+$[te+4>>2]>>>0)break B;if(!(te=$[te+8>>2]))break}if((0|(Ae=Lr(0)))==-1||(Ie=ne,(te=(se=$[895])-1|0)&Ae&&(Ie=(ne-Ae|0)+(te+Ae&0-se)|0),Ie>>>0<=de>>>0)||(se=$[886])&&se>>>0<(ue=(te=$[884])+Ie|0)>>>0|te>>>0>=ue>>>0)break i;if((0|Ae)!=(0|(te=Lr(Ie))))break l;break n}if((0|(Ae=Lr(Ie=ue&ge-ye)))==($[te>>2]+$[te+4>>2]|0))break h;te=Ae}if((0|te)==-1)break i;if(de+48>>>0<=Ie>>>0){Ae=te;break n}if((0|Lr(Ae=(Ae=$[896])+(De-Ie|0)&0-Ae))==-1)break i;Ie=Ae+Ie|0,Ae=te;break n}if((0|Ae)!=-1)break n}$[887]=4|$[887]}if((0|(Ae=Lr(ne)))==-1|(0|(te=Lr(0)))==-1|te>>>0<=Ae>>>0||(Ie=te-Ae|0)>>>0<=de+40>>>0)break f}te=$[884]+Ie|0,$[884]=te,te>>>0>He[885]&&($[885]=te);n:{if(ge=$[782]){for(te=3552;;){if(((se=$[te>>2])+(ne=$[te+4>>2])|0)==(0|Ae))break n;if(!(te=$[te+8>>2]))break}break s}for((te=$[780])>>>0<=Ae>>>0&&te||($[780]=Ae),te=0,$[889]=Ie,$[888]=Ae,$[784]=-1,$[785]=$[894],$[891]=0;ne=(se=te<<3)+3144|0,$[se+3152>>2]=ne,$[se+3156>>2]=ne,(0|(te=te+1|0))!=32;);ne=(se=Ie-40|0)-(te=Ae+8&7?-8-Ae&7:0)|0,$[779]=ne,te=te+Ae|0,$[782]=te,$[te+4>>2]=1|ne,$[4+(Ae+se|0)>>2]=40,$[783]=$[898];break g}if(8&$[te+12>>2]|Ae>>>0<=ge>>>0|se>>>0>ge>>>0)break s;$[te+4>>2]=ne+Ie,Ae=(te=ge+8&7?-8-ge&7:0)+ge|0,$[782]=Ae,te=(ne=$[779]+Ie|0)-te|0,$[779]=te,$[Ae+4>>2]=1|te,$[4+(ne+ge|0)>>2]=40,$[783]=$[898];break g}se=0;break A}Ae=0;break t}He[780]>Ae>>>0&&($[780]=Ae),ne=Ae+Ie|0,te=3552;s:{u:{I:{for(;;){if((0|ne)!=$[te>>2]){if(te=$[te+8>>2])continue;break I}break}if(!(8&Be[te+12|0]))break u}for(te=3552;;){if((ne=$[te>>2])>>>0<=ge>>>0&&(ue=ne+$[te+4>>2]|0)>>>0>ge>>>0)break s;te=$[te+8>>2]}}if($[te>>2]=Ae,$[te+4>>2]=$[te+4>>2]+Ie,$[(De=(Ae+8&7?-8-Ae&7:0)+Ae|0)+4>>2]=3|de,te=(Ie=ne+(ne+8&7?-8-ne&7:0)|0)-(ye=de+De|0)|0,(0|ge)==(0|Ie)){$[782]=ye,te=$[779]+te|0,$[779]=te,$[ye+4>>2]=1|te;break r}if($[781]==(0|Ie)){$[781]=ye,te=$[778]+te|0,$[778]=te,$[ye+4>>2]=1|te,$[te+ye>>2]=te;break r}if((3&(ue=$[Ie+4>>2]))!=1)break a;if(ge=-8&ue,ue>>>0<=255){if((0|(Ae=$[Ie+12>>2]))==(0|(ne=$[Ie+8>>2]))){$[776]=$[776]&AA(ue>>>3|0);break o}$[ne+12>>2]=Ae,$[Ae+8>>2]=ne;break o}if(de=$[Ie+24>>2],(0|Ie)!=(0|(Ae=$[Ie+12>>2]))){ne=$[Ie+8>>2],$[ne+12>>2]=Ae,$[Ae+8>>2]=ne;break c}if(!(ue=$[(ne=Ie+20|0)>>2])){if(!(ue=$[Ie+16>>2]))break d;ne=Ie+16|0}for(;se=ne,(ue=$[(ne=(Ae=ue)+20|0)>>2])||(ne=Ae+16|0,ue=$[Ae+16>>2]););$[se>>2]=0;break c}for(ne=(se=Ie-40|0)-(te=Ae+8&7?-8-Ae&7:0)|0,$[779]=ne,te=te+Ae|0,$[782]=te,$[te+4>>2]=1|ne,$[4+(Ae+se|0)>>2]=40,$[783]=$[898],$[(se=(te=(ue+(ue-39&7?39-ue&7:0)|0)-47|0)>>>0<ge+16>>>0?ge:te)+4>>2]=27,te=$[891],$[se+16>>2]=$[890],$[se+20>>2]=te,te=$[889],$[se+8>>2]=$[888],$[se+12>>2]=te,$[890]=se+8,$[889]=Ie,$[888]=Ae,$[891]=0,te=se+24|0;$[te+4>>2]=7,ne=te+8|0,te=te+4|0,ne>>>0<ue>>>0;);if((0|se)!=(0|ge))if($[se+4>>2]=-2&$[se+4>>2],ue=se-ge|0,$[ge+4>>2]=1|ue,$[se>>2]=ue,ue>>>0<=255)ne=3144+(-8&ue)|0,(Ae=$[776])&(te=1<<(ue>>>3))?te=$[ne+8>>2]:($[776]=te|Ae,te=ne),$[ne+8>>2]=ge,$[te+12>>2]=ge,$[ge+12>>2]=ne,$[ge+8>>2]=te;else{te=31,ue>>>0<=16777215&&(te=62+((ue>>>38-(te=Re(ue>>>8|0))&1)-(te<<1)|0)|0),$[ge+28>>2]=te,$[ge+16>>2]=0,$[ge+20>>2]=0,ne=3408+(te<<2)|0;s:{if((se=$[777])&(Ae=1<<te)){for(te=ue<<((0|te)!=31?25-(te>>>1|0)|0:0),se=$[ne>>2];;){if((0|ue)==(-8&$[(ne=se)+4>>2]))break s;if(Ae=te>>>29|0,te<<=1,!(se=$[(Ae=(4&Ae)+ne|0)+16>>2]))break}$[Ae+16>>2]=ge}else $[777]=Ae|se,$[ne>>2]=ge;$[ge+24>>2]=ne,$[ge+12>>2]=ge,$[ge+8>>2]=ge;break g}te=$[ne+8>>2],$[te+12>>2]=ge,$[ne+8>>2]=ge,$[ge+24>>2]=0,$[ge+12>>2]=ne,$[ge+8>>2]=te}}if(!((te=$[779])>>>0<=de>>>0)){ne=te-de|0,$[779]=ne,te=(Ae=$[782])+de|0,$[782]=te,$[te+4>>2]=1|ne,$[Ae+4>>2]=3|de,te=Ae+8|0;break e}}$[775]=48,te=0;break e}Ae=0}if(de){se=$[Ie+28>>2];c:{if($[(ne=3408+(se<<2)|0)>>2]==(0|Ie)){if($[ne>>2]=Ae,Ae)break c;$[777]=$[777]&AA(se);break o}if($[de+($[de+16>>2]==(0|Ie)?16:20)>>2]=Ae,!Ae)break o}$[Ae+24>>2]=de,(ne=$[Ie+16>>2])&&($[Ae+16>>2]=ne,$[ne+24>>2]=Ae),(ne=$[Ie+20>>2])&&($[Ae+20>>2]=ne,$[ne+24>>2]=Ae)}}te=te+ge|0,ue=$[(Ie=ge+Ie|0)+4>>2]}if($[Ie+4>>2]=-2&ue,$[ye+4>>2]=1|te,$[te+ye>>2]=te,te>>>0<=255)ne=3144+(-8&te)|0,(Ae=$[776])&(te=1<<(te>>>3))?te=$[ne+8>>2]:($[776]=te|Ae,te=ne),$[ne+8>>2]=ye,$[te+12>>2]=ye,$[ye+12>>2]=ne,$[ye+8>>2]=te;else{ue=31,te>>>0<=16777215&&(ue=62+((te>>>38-(ne=Re(te>>>8|0))&1)-(ne<<1)|0)|0),$[ye+28>>2]=ue,$[ye+16>>2]=0,$[ye+20>>2]=0,ne=3408+(ue<<2)|0;a:{if((se=$[777])&(Ae=1<<ue)){for(ue=te<<((0|ue)!=31?25-(ue>>>1|0)|0:0),Ae=$[ne>>2];;){if(ne=Ae,(-8&$[Ae+4>>2])==(0|te))break a;if(Ae=ue>>>29|0,ue<<=1,!(Ae=$[(se=(4&Ae)+ne|0)+16>>2]))break}$[se+16>>2]=ye}else $[777]=Ae|se,$[ne>>2]=ye;$[ye+24>>2]=ne,$[ye+12>>2]=ye,$[ye+8>>2]=ye;break r}te=$[ne+8>>2],$[te+12>>2]=ye,$[ne+8>>2]=ye,$[ye+24>>2]=0,$[ye+12>>2]=ne,$[ye+8>>2]=te}}te=De+8|0;break e}t:if(Ie){ne=$[se+28>>2];r:{if($[(te=3408+(ne<<2)|0)>>2]==(0|se)){if($[te>>2]=Ae,Ae)break r;De=AA(ne)&De,$[777]=De;break t}if($[Ie+($[Ie+16>>2]==(0|se)?16:20)>>2]=Ae,!Ae)break t}$[Ae+24>>2]=Ie,(te=$[se+16>>2])&&($[Ae+16>>2]=te,$[te+24>>2]=Ae),(te=$[se+20>>2])&&($[Ae+20>>2]=te,$[te+24>>2]=Ae)}t:if(ue>>>0<=15)te=ue+de|0,$[se+4>>2]=3|te,$[(te=te+se|0)+4>>2]=1|$[te+4>>2];else if($[se+4>>2]=3|de,$[(ge=se+de|0)+4>>2]=1|ue,$[ge+ue>>2]=ue,ue>>>0<=255)ne=3144+(-8&ue)|0,(Ae=$[776])&(te=1<<(ue>>>3))?te=$[ne+8>>2]:($[776]=te|Ae,te=ne),$[ne+8>>2]=ge,$[te+12>>2]=ge,$[ge+12>>2]=ne,$[ge+8>>2]=te;else{te=31,ue>>>0<=16777215&&(te=62+((ue>>>38-(te=Re(ue>>>8|0))&1)-(te<<1)|0)|0),$[ge+28>>2]=te,$[ge+16>>2]=0,$[ge+20>>2]=0,ne=3408+(te<<2)|0;r:{if((Ae=1<<te)&De){for(te=ue<<((0|te)!=31?25-(te>>>1|0)|0:0),de=$[ne>>2];;){if((-8&$[(ne=de)+4>>2])==(0|ue))break r;if(Ae=te>>>29|0,te<<=1,!(de=$[(Ae=(4&Ae)+ne|0)+16>>2]))break}$[Ae+16>>2]=ge}else $[777]=Ae|De,$[ne>>2]=ge;$[ge+24>>2]=ne,$[ge+12>>2]=ge,$[ge+8>>2]=ge;break t}te=$[ne+8>>2],$[te+12>>2]=ge,$[ne+8>>2]=ge,$[ge+24>>2]=0,$[ge+12>>2]=ne,$[ge+8>>2]=te}te=se+8|0;break e}A:if(ye){ne=$[Ae+28>>2];t:{if($[(te=3408+(ne<<2)|0)>>2]==(0|Ae)){if($[te>>2]=se,se)break t;$[777]=AA(ne)&De;break A}if($[ye+($[ye+16>>2]==(0|Ae)?16:20)>>2]=se,!se)break A}$[se+24>>2]=ye,(te=$[Ae+16>>2])&&($[se+16>>2]=te,$[te+24>>2]=se),(te=$[Ae+20>>2])&&($[se+20>>2]=te,$[te+24>>2]=se)}ue>>>0<=15?(te=ue+de|0,$[Ae+4>>2]=3|te,$[(te=te+Ae|0)+4>>2]=1|$[te+4>>2]):($[Ae+4>>2]=3|de,$[(se=Ae+de|0)+4>>2]=1|ue,$[se+ue>>2]=ue,ve&&(ne=3144+(-8&ve)|0,ge=$[781],(te=1<<(ve>>>3))&Ie?te=$[ne+8>>2]:($[776]=te|Ie,te=ne),$[ne+8>>2]=ge,$[te+12>>2]=ge,$[ge+12>>2]=ne,$[ge+8>>2]=te),$[781]=se,$[778]=ue),te=Ae+8|0}return Ge=oe+16|0,0|te}function qe(te){var oe=0,ne=0,Ae=0,se=0,ge=0,ue=0,Ie=0,de=0,ye=0,De=0,ve=0,Ke=0,ze=0,Ze=0,$e=0,it=0,st=0,ht=0,dt=0,gt=0,ft=0,ut=0,Bt=0,Ct=0,Et=0,yt=0,Dt=0,Ft=0,Rt=0,Yt=0,Kt=0,Mt=0,Gt=0,qt=0,vt=0,Ot=0,Jt=0,Tt=0,_t=0,jt=0,rA=0,dA=0,rr=0,lA=0,BA=0,CA=0,EA=0,FA=0,yA=0,QA=0,pA=0,xA=0,bA=0,RA=0,YA=0,KA=0,nr=0,ir=0,MA=0,or=0,sr=0,Fr=0,Rr=0,ar=0,cr=0,Yr=0,Wn=0,zn=0,Zn=0,Hs=0,ks=0,Gs=0,vs=0,Us=0,Ls=0,Ns=0,Fs=0,Rs=0,Ys=0,Pi=0,Ks=0,Ms=0,qs=0,Os=0,Js=0,Ts=0,_s=0,js=0,Ps=0,Vs=0,Ws=0,zs=0,Zs=0,Xs=0,$s=0,e0=0;for(lA=$[te+192>>2],BA=$[te+196>>2],Rt=$[te+184>>2],CA=$[te+188>>2],EA=$[te+176>>2],FA=$[te+180>>2],Yt=$[te+168>>2],yA=$[te+172>>2],ht=$[te+160>>2],ir=$[te+164>>2],QA=$[te+152>>2],MA=$[te+156>>2],pA=$[te+144>>2],xA=$[te+148>>2],Kt=$[te+136>>2],Mt=$[te+140>>2],Gt=$[te+128>>2],or=$[te+132>>2],bA=$[te+120>>2],sr=$[te+124>>2],qt=$[te+112>>2],vt=$[te+116>>2],Ze=$[te+104>>2],Et=$[te+108>>2],Ot=$[te+96>>2],Jt=$[te+100>>2],ye=$[te+88>>2],yt=$[te+92>>2],Ie=$[te+80>>2],Tt=$[te+84>>2],ue=$[te+72>>2],_t=$[te+76>>2],Ke=$[te+64>>2],st=$[te+68>>2],dt=$[te+56>>2],ze=$[te+60>>2],ne=$[te+48>>2],RA=$[te+52>>2],se=$[te+40>>2],$e=$[te+44>>2],gt=$[te+32>>2],jt=$[te+36>>2],ve=$[te+24>>2],ft=$[te+28>>2],De=$[te+16>>2],Dt=$[te+20>>2],Ae=$[te+8>>2],ut=$[te+12>>2],de=$[te>>2],Bt=$[te+4>>2];Zn>>>0<=23;)oe=ve^Ke^Ze^Rt^pA,rA=me(it=de^se^Ie^ht^bA,Ct=Bt^$e^Tt^ir^sr,1)^oe,ge=me(gt^rA,jt^(dA=(Fr=ft^st^Et^CA^xA)^ke),27),Rr=ke,YA=Ft=Dt^ze^Jt^Mt^FA,Ft=me(rr=De^dt^Ot^Kt^EA,Ft,1)^it,it=me(ye^Ft,yt^(KA=ke^Ct),10),ar=ke,nr=Ct=ut^RA^yt^yA^or,cr=gt^ue^qt^lA^QA,gt=me(Wn=Ae^ne^ye^Yt^Gt,Ct,1)^cr,Ct=me(Ct=se^gt,$e^(yt=(se=jt^_t^vt^BA^MA)^ke),36),Yr=ke,ye=me(Ae^Ft,ut^KA,1),ut=ke,$e=me(cr,se,1)^rr,Ze=me($e^Ze,(rr=Et)^(Et=ke^YA),25),YA=ke,jt=me(oe,Fr,1)^Wn,Ae=me(jt^dt,(rr=ze)^(ze=ke^nr),6),Fr=ke,dt=me(ve^$e,ft^Et,28),ft=ke,Ie=me(Ie^gt,yt^Tt,3),Tt=ke,oe=me(ue^rA,_t^dA,20),rr=ve=ke,ue=me(De^jt,ze^Dt,62),_t=ke,qt=me(qt^rA,vt^dA,39),vt=ke,se=me(Ke^$e,st^Et,55),Dt=De=ke,st=$[(Ke=(Wn=Zn<<3)+1120|0)>>2],Ke=$[Ke+4>>2],Ot=me(Ot^jt,ze^Jt,43),Jt=ke,ne=me(ne^Ft,RA^KA,44),zn=De=(Hs=(Bt^=yt)^(-1^(RA=ke))&Jt^Ke)^(ks=(-1^De)&vt^_t)^(Gs=(-1^ve)&Tt^ft)^(vs=(-1^Yr)&ar^Rr)^(Us=(-1^Fr)&YA^ut),Ke=me(st=(Ls=(nr=de^gt)^(-1^ne)&Ot^st)^(Ns=(-1^se)&qt^ue)^(Fs=(-1^oe)&Ie^dt)^(Rs=(-1^Ct)&it^ge)^(Ys=(-1^Ae)&Ze^ye),De,1),ve=ke,Kt=me(Kt^jt,ze^Mt,15),Mt=ke,Rt=me($e^Rt,Et^CA,56),cr=ke,pA=me($e^pA,Et^xA,21),CA=ke,lA=me(lA^rA,BA^dA,14),xA=ke,bA=me(gt^bA,yt^sr,41),BA=ke,De=me(Yt^Ft,yA^KA,2),de=ke,QA=me(QA^rA,dA^MA,8),yA=ke,Yt=me(ht^gt,yt^ir,18),gt=ke,ht=me(Gt^Ft,KA^or,45),Gt=ke,Pi=(-1^Rt)&ge^Kt,$e=(-1^lA)&nr^pA,MA=(-1^De)&ue^bA,yt=(-1^Yt)&ye^QA,EA=me(jt^EA,ze^FA,61),ue=me((Ke^=or=Pi^$e^MA^yt^(ir=(-1^EA)&dt^ht))^(sr=(-1^ue)&se^De),(ve^=Os=(Ks=(-1^cr)&Rr^Mt)^(Ms=(-1^xA)&Bt^CA)^(Et=(-1^de)&_t^BA)^(ze=(-1^gt)&ut^yA)^(qs=(-1^(FA=ke))&ft^Gt))^(_t=(-1^_t)&Dt^de),14),rA=ke,e0=de=(Js=YA^(-1^yA)&gt)^(Ts=Jt^(-1^CA)&xA)^(_s=(-1^BA)&de^vt)^(js=Tt^(-1^Gt)&FA)^(Ps=(-1^Mt)&cr^ar),de=me($s=(Vs=Ze^(-1^QA)&Yt)^(Ws=Ot^(-1^pA)&lA)^(zs=(-1^bA)&De^qt)^(Zs=Ie^(-1^ht)&EA)^(Xs=(-1^Kt)&Rt^it),de,1)^st,Ie=me(de^(De=(-1^Ie)&ht^oe),(st=ke^zn)^(ht=(-1^Tt)&Gt^rr),44),dA=ke,Gt=Dt^(-1^vt)&BA,vt=Fr^(-1^YA)&yA,ar=Yr^(-1^ar)&Mt,it=(Rt=(YA=Rt^(-1^ge)&Ct)^(zn=EA^(-1^dt)&oe)^(ge=Yt^(-1^ye)&Ae)^sr^(Mt=(-1^nr)&ne^lA))^me(Ae=(oe=se^(-1^qt)&bA)^(qt=Ae^(-1^Ze)&QA)^(nr=Ct^(-1^it)&Kt)^(Ot=(-1^Ot)&pA^ne)^De,ht^=Gt^vt^ar^(Jt=(-1^Jt)&CA^RA),1),KA=ne=(dt=(se=(Rr=cr^(-1^Rr)&Yr)^(Yr=FA^(-1^ft)&rr)^(Yt=gt^(-1^ut)&Fr)^_t^(Kt=(-1^Bt)&RA^xA))^ke)^Hs,De=ue,Ct=Ie,gt=ue^Ie&(-1^(Ft=it^Ls)),jt=(-1^ne)&dA^rA,oe=me(oe^de,st^Gt,2),ye=ke,ft=me(Rt,se,1)^$s,se=me(ir^ft,qs^(Dt=e0^ke),55),Ze=ke,ut=me(or,Os,1)^Ae,Ae=me(ut^Ws,(Bt=ht^ke)^Ts,62),Ie=ne=ke,lA=(-1^Ae)&se^oe,BA=(-1^ne)&Ze^ye,Rt=(ne=me(it^Rs,dt^vs,41))^(-1^oe)&Ae,CA=(ue=ke)^(-1^ye)&Ie,EA=(ge=me(ge^Ke,ve^Yt,39))^(-1^ne)&oe,FA=(oe=ke)^(-1^ue)&ye,Yt=se^(-1^ge)&ne,yA=Ze^(-1^oe)&ue,ht=Ae^(-1^se)&ge,ir=Ie^(-1^Ze)&oe,oe=me(ft^MA,Dt^Et,56),ye=ke,se=me(it^Fs,dt^Gs,36),Ze=ke,Ae=me(Ke^Mt,ve^Kt,27),Ie=ne=ke,QA=(-1^Ae)&se^oe,MA=(-1^ne)&Ze^ye,pA=(ne=me(ut^Xs,Bt^Ps,15))^(-1^oe)&Ae,xA=(ue=ke)^(-1^ye)&Ie,Kt=(ge=me(de^qt,st^vt,10))^(-1^ne)&oe,Mt=(oe=ke)^(-1^ue)&ye,Gt=se^(-1^ge)&ne,or=Ze^(-1^oe)&ue,bA=(-1^se)&ge^Ae,sr=(-1^Ze)&oe^Ie,oe=me(it^Ns,dt^ks,18),ye=ke,se=me(ut^Zs,Bt^js,6),ue=ke,Ae=me(de^Ot,st^Jt,1),Tt=ne=ke,qt=(-1^Ae)&se^oe,vt=(-1^ne)&ue^ye,Ze=(ne=me(Ke^YA,ve^Rr,8))^(-1^oe)&Ae,Et=(Ie=ke)^(-1^ye)&Tt,Ot=(ge=me(ft^yt,ze^Dt,25))^(-1^ne)&oe,Jt=(oe=ke)^(-1^Ie)&ye,ye=se^(-1^ge)&ne,yt=ue^(-1^oe)&Ie,Ie=(-1^se)&ge^Ae,Tt^=(-1^ue)&oe,oe=me(ut^zs,Bt^_s,61),ze=ke,se=me(Ke^zn,ve^Yr,20),ve=ke,Ae=me($e^ft,Dt^Ms,28),$e=ne=ke,ue=(-1^Ae)&se^oe,_t=(-1^ne)&ve^ze,Ke=(ne=me(de^nr,st^ar,45))^(-1^oe)&Ae,st=(de=ke)^(-1^ze)&$e,dt=(ge=me(it^Ys,dt^Us,3))^(-1^ne)&oe,ze=(oe=ke)^(-1^de)&ze,ne=(-1^ge)&ne^se,RA=(-1^oe)&de^ve,se=Ae^(-1^se)&ge,$e^=(-1^ve)&oe,ve=(Ae=me(ft^Pi,Dt^Ks,21))^(-1^De)&Ft,ft=(ge=ke)^(-1^rA)&KA,De=(oe=me(ut^Vs,Bt^Js,43))^(-1^Ae)&De,Dt=(it=ke)^(-1^ge)&rA,Ae=(-1^oe)&Ae^Ct,ut=(-1^it)&ge^dA,de=Ft^$[(ge=1120+(8|Wn)|0)>>2]^(-1^Ct)&oe,Bt=KA^$[ge+4>>2]^(-1^dA)&it,Zn=Zn+2|0;$[te+192>>2]=lA,$[te+196>>2]=BA,$[te+184>>2]=Rt,$[te+188>>2]=CA,$[te+176>>2]=EA,$[te+180>>2]=FA,$[te+168>>2]=Yt,$[te+172>>2]=yA,$[te+160>>2]=ht,$[te+164>>2]=ir,$[te+152>>2]=QA,$[te+156>>2]=MA,$[te+144>>2]=pA,$[te+148>>2]=xA,$[te+136>>2]=Kt,$[te+140>>2]=Mt,$[te+128>>2]=Gt,$[te+132>>2]=or,$[te+120>>2]=bA,$[te+124>>2]=sr,$[te+112>>2]=qt,$[te+116>>2]=vt,$[te+104>>2]=Ze,$[te+108>>2]=Et,$[te+96>>2]=Ot,$[te+100>>2]=Jt,$[te+88>>2]=ye,$[te+92>>2]=yt,$[te+80>>2]=Ie,$[te+84>>2]=Tt,$[te+72>>2]=ue,$[te+76>>2]=_t,$[te+64>>2]=Ke,$[te+68>>2]=st,$[te+56>>2]=dt,$[te+60>>2]=ze,$[te+48>>2]=ne,$[te+52>>2]=RA,$[te+40>>2]=se,$[te+44>>2]=$e,$[te+32>>2]=gt,$[te+36>>2]=jt,$[te+24>>2]=ve,$[te+28>>2]=ft,$[te+16>>2]=De,$[te+20>>2]=Dt,$[te+8>>2]=Ae,$[te+12>>2]=ut,$[te>>2]=de,$[te+4>>2]=Bt}function nt(te){var oe=0,ne=0,Ae=0,se=0,ge=0,ue=0,Ie=0;e:if(te|=0){ge=(Ae=te-8|0)+(te=-8&(oe=$[te-4>>2]))|0;A:if(!(1&oe)){if(!(3&oe)||(Ae=Ae-(oe=$[Ae>>2])|0)>>>0<He[780])break e;te=te+oe|0;t:{r:{if($[781]!=(0|Ae)){if(oe>>>0<=255){if(se=oe>>>3|0,(0|(oe=$[Ae+12>>2]))==(0|(ne=$[Ae+8>>2]))){$[776]=$[776]&AA(se);break A}$[ne+12>>2]=oe,$[oe+8>>2]=ne;break A}if(ue=$[Ae+24>>2],(0|Ae)!=(0|(oe=$[Ae+12>>2]))){ne=$[Ae+8>>2],$[ne+12>>2]=oe,$[oe+8>>2]=ne;break t}if(!(ne=$[(se=Ae+20|0)>>2])){if(!(ne=$[Ae+16>>2]))break r;se=Ae+16|0}for(;Ie=se,(ne=$[(se=(oe=ne)+20|0)>>2])||(se=oe+16|0,ne=$[oe+16>>2]););$[Ie>>2]=0;break t}if((3&(oe=$[ge+4>>2]))!=3)break A;return $[778]=te,$[ge+4>>2]=-2&oe,$[Ae+4>>2]=1|te,void($[ge>>2]=te)}oe=0}if(ue){ne=$[Ae+28>>2];t:{if($[(se=3408+(ne<<2)|0)>>2]==(0|Ae)){if($[se>>2]=oe,oe)break t;$[777]=$[777]&AA(ne);break A}if($[ue+($[ue+16>>2]==(0|Ae)?16:20)>>2]=oe,!oe)break A}$[oe+24>>2]=ue,(ne=$[Ae+16>>2])&&($[oe+16>>2]=ne,$[ne+24>>2]=oe),(ne=$[Ae+20>>2])&&($[oe+20>>2]=ne,$[ne+24>>2]=oe)}}if(!(Ae>>>0>=ge>>>0)&&1&(oe=$[ge+4>>2])){A:{t:{r:{a:{if(!(2&oe)){if($[782]==(0|ge)){if($[782]=Ae,te=$[779]+te|0,$[779]=te,$[Ae+4>>2]=1|te,$[781]!=(0|Ae))break e;return $[778]=0,void($[781]=0)}if($[781]==(0|ge))return $[781]=Ae,te=$[778]+te|0,$[778]=te,$[Ae+4>>2]=1|te,void($[te+Ae>>2]=te);if(te=(-8&oe)+te|0,oe>>>0<=255){if(se=oe>>>3|0,(0|(oe=$[ge+12>>2]))==(0|(ne=$[ge+8>>2]))){$[776]=$[776]&AA(se);break t}$[ne+12>>2]=oe,$[oe+8>>2]=ne;break t}if(ue=$[ge+24>>2],(0|ge)!=(0|(oe=$[ge+12>>2]))){ne=$[ge+8>>2],$[ne+12>>2]=oe,$[oe+8>>2]=ne;break r}if(!(ne=$[(se=ge+20|0)>>2])){if(!(ne=$[ge+16>>2]))break a;se=ge+16|0}for(;Ie=se,(ne=$[(se=(oe=ne)+20|0)>>2])||(se=oe+16|0,ne=$[oe+16>>2]););$[Ie>>2]=0;break r}$[ge+4>>2]=-2&oe,$[Ae+4>>2]=1|te,$[te+Ae>>2]=te;break A}oe=0}if(ue){ne=$[ge+28>>2];r:{if($[(se=3408+(ne<<2)|0)>>2]==(0|ge)){if($[se>>2]=oe,oe)break r;$[777]=$[777]&AA(ne);break t}if($[ue+($[ue+16>>2]==(0|ge)?16:20)>>2]=oe,!oe)break t}$[oe+24>>2]=ue,(ne=$[ge+16>>2])&&($[oe+16>>2]=ne,$[ne+24>>2]=oe),(ne=$[ge+20>>2])&&($[oe+20>>2]=ne,$[ne+24>>2]=oe)}}if($[Ae+4>>2]=1|te,$[te+Ae>>2]=te,$[781]==(0|Ae))return void($[778]=te)}if(te>>>0<=255)return oe=3144+(-8&te)|0,(ne=$[776])&(te=1<<(te>>>3))?te=$[oe+8>>2]:($[776]=te|ne,te=oe),$[oe+8>>2]=Ae,$[te+12>>2]=Ae,$[Ae+12>>2]=oe,void($[Ae+8>>2]=te);ne=31,te>>>0<=16777215&&(ne=62+((te>>>38-(oe=Re(te>>>8|0))&1)-(oe<<1)|0)|0),$[Ae+28>>2]=ne,$[Ae+16>>2]=0,$[Ae+20>>2]=0,oe=3408+(ne<<2)|0;A:{t:{if((se=$[777])&(Ie=1<<ne)){for(ne=te<<((0|ne)!=31?25-(ne>>>1|0)|0:0),oe=$[oe>>2];;){if(se=oe,(-8&$[oe+4>>2])==(0|te))break t;if(oe=ne>>>29|0,ne<<=1,!(oe=$[(Ie=se+(4&oe)|0)+16>>2]))break}$[Ie+16>>2]=Ae,$[Ae+24>>2]=se}else $[777]=se|Ie,$[oe>>2]=Ae,$[Ae+24>>2]=oe;$[Ae+12>>2]=Ae,$[Ae+8>>2]=Ae;break A}te=$[se+8>>2],$[te+12>>2]=Ae,$[se+8>>2]=Ae,$[Ae+24>>2]=0,$[Ae+12>>2]=se,$[Ae+8>>2]=te}te=$[784]-1|0,$[784]=te||-1}}}function At(te,oe,ne,Ae){var se,ge,ue,Ie,de=0,ye=0,De=0,ve=0,Ke=0;for(Ge=ge=Ge-160|0,Ie=ge+12|0,ue=Pe(200),$[Ie>>2]=ue,ue||(we(111),ae()),Ge=se=Ge-208|0;;){if((0|de)==25){for(;;){if(de=0,Ae>>>0<136){for(ye=0;;){if((0|de)==136){for(;(0|Ae)!=(0|ye);)ce[ye+se|0]=Be[ne+ye|0],ye=ye+1|0;break}ce[de+se|0]=0,de=de+1|0}for(ce[Ae+se|0]=31,ce[se+135|0]=128|Be[se+135|0],de=0;(0|de)!=17;)ye=$[(ne=(Ae=de<<3)+ue|0)>>2],De=$[ne+4>>2],$[ne>>2]=It(Ae+se|0)^ye,$[ne+4>>2]=ke^De,de=de+1|0;Ge=se+208|0;break}for(;(0|de)!=17;)ve=$[(ye=(De=de<<3)+ue|0)>>2],Ke=$[ye+4>>2],$[ye>>2]=It(ne+De|0)^ve,$[ye+4>>2]=ke^Ke,de=de+1|0;qe(ue),ne=ne+136|0,Ae=Ae-136|0}break}$[(ye=(de<<3)+ue|0)>>2]=0,$[ye+4>>2]=0,de=de+1|0}_e(te,ne=(oe>>>0)/136|0,Ie);e:if((0|(ne=Se(ne,136)))!=(0|oe))for(Ae=oe-ne|0,te=te+ne|0,_e(ge+16|0,1,ge+12|0),oe=0;;){if((0|oe)==(0|Ae))break e;ce[te+oe|0]=Be[(ge+16|0)+oe|0],oe=oe+1|0}nt($[ge+12>>2]),Ge=ge+160|0}function Je(te,oe,ne,Ae){for(var se=0,ge=0,ue=0,Ie=0,de=0,ye=0,De=0,ve=0,Ke=0;;){e:{if(Ie=0,ue=0,de=De=$[te+204>>2],!(!((ye=Ae+(se=$[te+200>>2])|0)>>>0<Ae>>>0?de+1|0:de)&oe>>>0>ye>>>0)){for(;!(!ue&(ge=oe-se|0)>>>0<=Ie>>>0|(0|ue)!=0);)De=$[(de=(-8&(se=se+Ie|0))+te|0)+4>>2],ye=Be[ne+Ie|0],ge=31&(se<<=3),(63&se)>>>0>=32?(se=ye<<ge,ge=0):(se=(1<<ge)-1&ye>>>32-ge,ge=ye<<ge),$[de>>2]=ge^$[de>>2],$[de+4>>2]=se^De,ue=(Ie=Ie+1|0)?ue:ue+1|0,se=$[te+200>>2],De=$[te+204>>2];$[te+200>>2]=0,$[te+204>>2]=0,qe(te),ne=ne+ge|0,Ae=Ae-ge|0;continue}for(;;){if(!Ke&(0|Ae)==(0|ve))break e;oe=ve+$[te+200>>2]|0,ge=$[(ue=(-8&oe)+te|0)+4>>2],Ie=Be[ne+ve|0],oe=31&(se=oe<<3),(63&se)>>>0>=32?(se=Ie<<oe,oe=0):(se=(1<<oe)-1&Ie>>>32-oe,oe=Ie<<oe),$[ue>>2]=oe^$[ue>>2],$[ue+4>>2]=se^ge,oe=Ke,Ke=(ve=ve+1|0)?oe:oe+1|0}}break}oe=$[te+204>>2],oe=(ne=Ae+$[te+200>>2]|0)>>>0<Ae>>>0?oe+1|0:oe,$[te+200>>2]=ne,$[te+204>>2]=oe}function Te(te,oe,ne,Ae){var se=0,ge=0,ue=0,Ie=0,de=0,ye=0,De=0,ve=0;for(ye=oe;;){ue=$[ne+200>>2],Ie=$[ne+204>>2];e:{if(!de&(0|se)==(0|ye))ge=oe;else{if(ge=se,(0|de)==(0|Ie)&ue>>>0>se>>>0|de>>>0<Ie>>>0)break e;ye=se}for(se=ue-ye|0,de=Ie-((ue>>>0<ye>>>0)+0|0)|0,ye=oe-ge|0,oe=te+ge|0;$[ne+200>>2]=se,$[ne+204>>2]=de,ye;){for(qe(ne),te=Ae>>>0>ye>>>0?ye:Ae,ge=0;(0|te)!=(0|ge);)Ie=$[(se=(-8&ge)+ne|0)>>2],ue=$[se+4>>2],se=31&(de=ge<<3&56),ce[oe+ge|0]=(63&de)>>>0>=32?ue>>>se|0:((1<<se)-1&ue)<<32-se|Ie>>>se,ge=ge+1|0;ye=ye-te|0,oe=te+oe|0,se=Ae-te|0,de=0}return}ve=De=te+ge|0,De=$[(Ie=(-8&(ue=se+(Ae-ue|0)|0))+ne|0)>>2],Ie=$[Ie+4>>2],ge=31&(ue<<=3),ce[0|ve]=(63&ue)>>>0>=32?Ie>>>ge|0:((1<<ge)-1&Ie)<<32-ge|De>>>ge,de=(se=se+1|0)?de:de+1|0}}function pe(te,oe){var ne,Ae=0,se=0,ge=0,ue=0,Ie=0,de=0;for(Ge=ne=Ge-160|0,tA(ge=ne+12|0),Nt(ge,oe,32),Nr(ge),hA(ne+16|0,136,ge);;){if(!Ae&(0|se)==8){for(oe=0;;){if((0|oe)==256){for(oe=8,se=196;(0|se)!=256;){for(;oe>>>0>=136&&(hA(ne+16|0,136,ne+12|0),oe=0),Ae=(ne+16|0)+oe|0,oe=oe+1|0,(Ae=Be[0|Ae])>>>0>se>>>0;);Ae=(Ae<<2)+te|0,$[(se<<2)+te>>2]=$[Ae>>2],$[Ae>>2]=1-(Ie<<1&2),se=se+1|0,Ie=(1&de)<<31|Ie>>>1,de=de>>>1|0}NA(ne+12|0),Ge=ne+160|0;break}$[(oe<<2)+te>>2]=0,oe=oe+1|0}break}ge=Be[(ne+16|0)+se|0],oe=31&(ue=se<<3),(63&ue)>>>0>=32?(ue=ge<<oe,oe=0):(ue=(1<<oe)-1&ge>>>32-oe,oe=ge<<oe),Ie|=oe,de|=ue,Ae=(se=se+1|0)?Ae:Ae+1|0}}function Qe(te,oe){for(var ne=0,Ae=0,se=0,ge=0,ue=0,Ie=0,de=0,ye=0,De=0,ve=0,Ke=0;(0|Ie)!=8;){for(ve=Ie<<8,Ke=Se(Ie,7168)+te|0,ue=0;(0|ue)!=7;){for(Ge=ne=(Ge=se=Ge-864|0)-16|0,Ae=ue+ve|0,ce[ne+14|0]=Ae,ce[ne+15|0]=Ae>>>8,tA(Ae=se+12|0),Ss(Ae,oe,32),Ss(Ae,ne+14|0,2),Oe($[Ae>>2],168),Ge=ne+16|0,ne=840,Ds(ge=se+16|0,840,Ae),Ae=je(ye=(ue<<10)+Ke|0,256,ge,840);Ae>>>0<=255;){for(de=ne-(ge=(ne>>>0)%3|0)|0,ne=0;(0|ne)!=(0|ge);)ce[(De=se+16|0)+ne|0]=Be[(ne+de|0)+De|0],ne=ne+1|0;Ds((ne=se+16|0)|ge,168,se+12|0),Ae=je((Ae<<2)+ye|0,256-Ae|0,de=ne,ne=168|ge)+Ae|0}NA(se+12|0),Ge=se+864|0,ue=ue+1|0}Ie=Ie+1|0}}function Ue(te){var oe=0,ne=0,Ae=0,se=0,ge=0,ue=0,Ie=0,de=0,ye=0,De=0,ve=0;ge=256,Ae=1;e:for(;;){A:{if(ne=0,Ae>>>0>255)for(;;){if((0|ue)==256)break A;oe=ot(oe=$[(se=(ue<<2)+te|0)>>2],oe>>31,41978,0),$[se>>2]=Pn(oe,ke),ue=ue+1|0}for(;;){t:{if(ne>>>0<=255)for(de=ne+Ae|0,De=(se=0-$[1312+((ge=ge-1|0)<<2)>>2]|0)>>31;;){if((0|ne)==(0|de))break t;ye=$[(oe=(ne<<2)+te|0)>>2],ve=oe,oe=$[(Ie=(ne+Ae<<2)+te|0)>>2],$[ve>>2]=ye+oe,oe=ye-oe|0,$[Ie>>2]=oe,$[Ie>>2]=Pn(ot(oe,oe>>31,se,De),ke),ne=ne+1|0}Ae<<=1;continue e}ne=Ae+de|0}}break}}function Fe(te,oe){for(var ne=0,Ae=0,se=0,ge=0,ue=0,Ie=0,de=0,ye=0,De=0,ve=0;(0|se)!=32;)ne=(se<<5)+te|0,Ae=Se(se,3)+oe|0,ge=7&Be[0|Ae],$[ne>>2]=ge,ue=Be[0|Ae]>>>3&7,$[ne+4>>2]=ue,Ie=Be[Ae+1|0]<<2&4|Be[0|Ae]>>>6,$[ne+8>>2]=Ie,de=Be[Ae+1|0]>>>1&7,$[ne+12>>2]=de,ye=Be[Ae+1|0]>>>4&7,$[ne+16>>2]=ye,De=Be[Ae+2|0]<<1&6|Be[Ae+1|0]>>>7,$[ne+20>>2]=De,ve=Be[Ae+2|0]>>>2&7,$[ne+24>>2]=ve,Ae=Be[Ae+2|0],$[ne+4>>2]=2-ue,$[ne>>2]=2-ge,$[ne+8>>2]=2-Ie,$[ne+12>>2]=2-de,$[ne+16>>2]=2-ye,$[ne+20>>2]=2-De,$[ne+24>>2]=2-ve,$[ne+28>>2]=2-(Ae>>>5|0),se=se+1|0}function me(te,oe,ne){var Ae=0,se=0,ge=0,ue=0;return se=31&(ge=ue=63&ne),ge=ge>>>0>=32?-1>>>se|0:(Ae=-1>>>se|0)|(1<<se)-1<<32-se,ge&=te,Ae&=oe,se=31&ue,ue>>>0>=32?(Ae=ge<<se,ue=0):(Ae=(1<<se)-1&ge>>>32-se|Ae<<se,ue=ge<<se),ge=Ae,Ae=31&(se=0-ne&63),se>>>0>=32?(Ae=-1<<Ae,ne=0):Ae=(ne=-1<<Ae)|(1<<Ae)-1&-1>>>32-Ae,te&=ne,oe&=Ae,Ae=31&se,se>>>0>=32?(ne=0,te=oe>>>Ae|0):(ne=oe>>>Ae|0,te=((1<<Ae)-1&oe)<<32-Ae|te>>>Ae),ke=ne|ge,te|=ue}function Ye(te){var oe=0,ne=0,Ae=0,se=0,ge=0,ue=0,Ie=0,de=0,ye=0,De=0;for(ne=128;oe=0,ne;){for(;oe>>>0<=255;){for(ue=oe>>>0>(Ae=oe+ne|0)>>>0?oe:Ae,ye=(Ae=$[1312+((Ie=Ie+1|0)<<2)>>2])>>31;(0|oe)!=(0|ue);)ge=Pn(ot(ge=$[(se=(oe+ne<<2)+te|0)>>2],ge>>31,Ae,ye),ke),De=se,de=$[(se=(oe<<2)+te|0)>>2],$[De>>2]=de-ge,$[se>>2]=ge+de,oe=oe+1|0;oe=ne+ue|0}ne=ne>>>1|0}}function Oe(te,oe){var ne,Ae=0,se=0,ge=0;Ae=$[te+200>>2],ne=$[(se=te+(-8&Ae)|0)+4>>2],Ae=31&(ge=Ae<<3),(63&ge)>>>0>=32?(ge=31<<Ae,Ae=0):(ge=(1<<Ae)-1&31>>>32-Ae,Ae=31<<Ae),$[se>>2]=Ae^$[se>>2],$[se+4>>2]=ge^ne,ge=$[(oe=(-8&(Ae=oe-1|0))+te|0)+4>>2],Ae=31&(se=Ae<<3&56),(63&se)>>>0>=32?(se=128<<Ae,Ae=0):(se=(1<<Ae)-1&128>>>32-Ae,Ae=128<<Ae),$[oe>>2]=Ae^$[oe>>2],$[oe+4>>2]=se^ge,$[te+200>>2]=0,$[te+204>>2]=0}function Le(te,oe){for(var ne=0,Ae=0,se=0,ge=0,ue=0,Ie=0,de=0,ye=0,De=0;(0|Ae)!=32;)Ie=$[(ne=(Ae<<5)+oe|0)+16>>2],de=$[ne+12>>2],se=$[ne+28>>2],ye=$[ne+20>>2],De=$[ne+24>>2],ge=Se(Ae,3)+te|0,ue=16-($[ne+4>>2]<<3)|2-$[ne>>2],ne=2-$[ne+8>>2]|0,ce[0|ge]=ue|ne<<6,ue=64-(se<<5)|0,se=2-ye|0,ce[ge+2|0]=ue|8-(De<<2)|(254&se)>>>1,ce[ge+1|0]=32-(Ie<<4)|4-(de<<1)|(252&ne)>>>2|se<<7,Ae=Ae+1|0}function _e(te,oe,ne){var Ae,se=0,ge=0,ue=0,Ie=0,de=0,ye=0,De=0;Ae=$[ne>>2];e:for(;;){if(oe)for(qe(Ae),ne=0;;){if((0|ne)==17){oe=oe-1|0,te=te+136|0;continue e}for(ye=(se=ne<<3)+te|0,De=$[(se=se+Ae|0)>>2],Ie=$[se+4>>2],ge=0,se=0;(0|ge)!=8|se;)ue=31&(de=ge<<3),ce[ge+ye|0]=(63&de)>>>0>=32?Ie>>>ue|0:((1<<ue)-1&Ie)<<32-ue|De>>>ue,se=(ge=ge+1|0)?se:se+1|0;ne=ne+1|0}break}}function We(te,oe){for(var ne=0,Ae=0,se=0,ge=0,ue=0;(0|ue)!=128;)se=(ue<<3)+te|0,ne=Se(ue,5)+oe|0,Ae=Be[0|ne],$[se>>2]=Ae,Ae|=Be[ne+1|0]<<8,$[se>>2]=Ae,Ae|=Be[ne+2|0]<<16&983040,$[se>>2]=Ae,ge=Be[ne+2|0]>>>4|0,$[se+4>>2]=ge,ge|=Be[ne+3|0]<<4,$[se+4>>2]=ge,ne=Be[ne+4|0],$[se>>2]=524288-Ae,$[se+4>>2]=524288-(ge|ne<<12),ue=ue+1|0}function ct(te,oe,ne){for(var Ae=0,se=0,ge=0,ue=0;!(oe>>>0<=Ae>>>0|ge>>>0>135);)ue=(se=Be[ne+ge|0])>>>4|0,ge=ge+1|0,(0|(se&=15))!=15&&($[(Ae<<2)+te>>2]=2+(Se(Se(se,205)>>>10|0,5)-se|0),Ae=Ae+1|0),(0|ue)==15|oe>>>0<=Ae>>>0||($[(Ae<<2)+te>>2]=2+(Se(Se(ue,205)>>>10|0,5)-ue|0),Ae=Ae+1|0);return Ae}function et(te,oe,ne){for(var Ae=0,se=0,ge=0,ue=0,Ie=0,de=0;(0|Ae)!=8;){for(Ge=se=Ge-1024|0,jn(ue=(Ae<<10)+te|0,Ie=Se(Ae,7168)+oe|0,ne),ge=1;(0|ge)!=7;)jn(se,(de=ge<<10)+Ie|0,ne+de|0),Oi(ue,ue,se),ge=ge+1|0;Ge=se+1024|0,Ae=Ae+1|0}}function je(te,oe,ne,Ae){for(var se=0,ge=0,ue=0,Ie=0;!(oe>>>0<=ge>>>0||(se=Ie+3|0)>>>0>Ae>>>0);)ue=ne+Ie|0,Ie=se,(se=Be[ue+2|0]<<16&8323072|Be[0|ue]|Be[ue+1|0]<<8)>>>0>8380416||($[(ge<<2)+te>>2]=se,ge=ge+1|0);return ge}function It(te){for(var oe=0,ne=0,Ae=0,se=0,ge=0,ue=0,Ie=0;!(!se&(0|ne)==8);)ge=Be[te+ne|0],oe=31&(Ae=ne<<3),(63&Ae)>>>0>=32?(Ae=ge<<oe,oe=0):(Ae=(1<<oe)-1&ge>>>32-oe,oe=ge<<oe),ue|=oe,Ie|=Ae,se=(ne=ne+1|0)?se:se+1|0;return ke=Ie,ue}function ot(te,oe,ne,Ae){var se,ge,ue,Ie,de=0,ye=0;return Ie=Se(de=ne>>>16|0,ye=te>>>16|0),de=(65535&(ye=((ue=Se(se=65535&ne,ge=65535&te))>>>16|0)+Se(ye,se)|0))+Se(de,ge)|0,ke=(Se(oe,ne)+Ie|0)+Se(te,Ae)+(ye>>>16)+(de>>>16)|0,65535&ue|de<<16}function bt(te,oe,ne){for(var Ae=0,se=0,ge=0,ue=0,Ie=0,de=0;(0|se)!=8;){for(ue=(Ae=se<<10)+te|0,Ie=oe+Ae|0,de=ne+Ae|0,Ae=0;(0|Ae)!=256;)$[ue+(ge=Ae<<2)>>2]=$[ge+Ie>>2]-$[ge+de>>2],Ae=Ae+1|0;se=se+1|0}}function rt(te,oe,ne){var Ae,se;for(Ge=Ae=Ge-160|0,xs(se=Ae+12|0,oe,ne),hA(oe=Ae+16|0,136,se),ne=ct(te,256,oe);ne>>>0<=255;)hA(oe=Ae+16|0,136,Ae+12|0),ne=ct((ne<<2)+te|0,256-ne|0,oe)+ne|0;NA(Ae+12|0),Ge=Ae+160|0}function lt(te,oe){for(var ne=0,Ae=0,se=0,ge=0,ue=0;(0|Ae)!=8;){for(ge=(Ae<<7)+te|0,ue=(Ae<<10)+oe|0,ne=0;(0|ne)!=128;)se=(ne<<3)+ue|0,ce[ne+ge|0]=$[se+4>>2]<<4|$[se>>2],ne=ne+1|0;Ae=Ae+1|0}}function Ur(te){for(var oe=0,ne=0,Ae=0,se=0,ge=0;(0|ne)!=8;){for(ge=(ne<<10)+te|0,oe=0;(0|oe)!=256;)se=$[(Ae=(oe<<2)+ge|0)>>2],$[Ae>>2]=se+(se>>31&8380417),oe=oe+1|0;ne=ne+1|0}}function tA(te){var oe=0,ne=0;for(oe=te,te=Pe(208),$[oe>>2]=te,te||(we(111),ae());(0|ne)!=25;)$[(oe=te+(ne<<3)|0)>>2]=0,$[oe+4>>2]=0,ne=ne+1|0;$[te+200>>2]=0,$[te+204>>2]=0}function jn(te,oe,ne){for(var Ae=0,se=0,ge=0;(0|se)!=256;)Ae=ot(Ae=$[(ge=se<<2)+ne>>2],Ae>>31,Ae=$[oe+ge>>2],Ae>>31),$[te+ge>>2]=Pn(Ae,ke),se=se+1|0}function Lr(te){var oe,ne;return(te=(oe=$[584])+(ne=te+7&-8)|0)>>>0<=oe>>>0&&ne||te>>>0>(Ce.byteLength/65536|0)<<16>>>0&&!(0|Ve(0|te))?($[775]=48,-1):($[584]=te,oe)}function Cs(te,oe){var ne=0,Ae=0;if((0|oe)<=1047552)for(;;){if((0|Ae)==256)return 0;if(ne=Ae<<2,Ae=Ae+1|0,!(((ne=$[te+ne>>2])-(ne<<1&ne>>31)|0)<(0|oe)))break}return 1}function Es(te){for(var oe=0,ne=0,Ae=0;(0|oe)!=256;)Ae=$[(ne=(oe<<2)+te|0)>>2],$[ne>>2]=Ae+Se(Ae+4194304>>23,-8380417),oe=oe+1|0}function ys(te,oe){var ne;return ne=te,te=Se(oe+127>>7,1025)+2097152>>>22&15,oe=Se(te,-523776)+oe|0,$[ne>>2]=((0|oe)>4190208?-8380417:0)+oe,te}function Qs(te){for(var oe=0,ne=0;;){if((0|oe)==7)return 0;if(ne=oe<<10,oe=oe+1|0,Cs(te+ne|0,524168))break}return 1}function ps(te,oe){for(var ne=0,Ae=0;;){if((0|ne)==8)return 0;if(Ae=ne<<10,ne=ne+1|0,Cs(te+Ae|0,oe))break}return 1}function Oi(te,oe,ne){for(var Ae=0,se=0;(0|Ae)!=256;)$[(se=Ae<<2)+te>>2]=$[ne+se>>2]+$[oe+se>>2],Ae=Ae+1|0}function xs(te,oe,ne){var Ae;Ge=Ae=Ge-16|0,ce[Ae+14|0]=ne,ce[Ae+15|0]=ne>>>8,tA(te),Nt(te,oe,64),Nt(te,Ae+14|0,2),Nr(te),Ge=Ae+16|0}function Pn(te,oe){var ne=0;return ot(te,oe,0,58728449),ne=ot(ne=ke,ne>>31,-8380417,-1),oe=oe+ke|0,te+ne>>>0<te>>>0?oe+1|0:oe}function bs(te,oe,ne){for(var Ae=0,se=0;(0|Ae)!=8;)Oi((se=Ae<<10)+te|0,oe+se|0,ne+se|0),Ae=Ae+1|0}function Ji(te,oe,ne){for(var Ae=0,se=0;(0|Ae)!=8;)jn((se=Ae<<10)+te|0,oe,ne+se|0),Ae=Ae+1|0}function ws(te,oe){var ne=0;for(ne=7168;ce[0|te]=Be[0|oe],te=te+1|0,oe=oe+1|0,ne=ne-1|0;);}function ms(te,oe){for(var ne=0;(0|oe)!=(0|ne);)Ye((ne<<10)+te|0),ne=ne+1|0}function nn(te){for(var oe=0;(0|oe)!=8;)Es((oe<<10)+te|0),oe=oe+1|0}function on(te){for(var oe=0;(0|oe)!=8;)Ue((oe<<10)+te|0),oe=oe+1|0}function AA(te){var oe;return(-1>>>(oe=31&te)&-2)<<oe|(-1<<(te=0-te&31)&-2)>>>te}function Ti(te){return te?31-Re(te-1^te)|0:32}function Ds(te,oe,ne){Te(te,oe,$[ne>>2],168)}function Ss(te,oe,ne){Je($[te>>2],168,oe,ne)}function hA(te,oe,ne){Te(te,oe,$[ne>>2],136)}function Nt(te,oe,ne){Je($[te>>2],136,oe,ne)}function Nr(te){Oe($[te>>2],136)}function NA(te){nt($[te>>2])}function _i(te){ms(te,8)}function Vn(te){ms(te,7)}ie(X=Be,1024,"cmFuZG9tYnl0ZXMAbGlic29kaXVtL3NyYy9saWJzb2RpdW0vcmFuZG9tYnl0ZXMvcmFuZG9tYnl0ZXMuYwBidWZfbGVuIDw9IFNJWkVfTUFY"),ie(X,1120,"AQAAAAAAAACCgAAAAAAAAIqAAAAAAACAAIAAgAAAAICLgAAAAAAAAAEAAIAAAAAAgYAAgAAAAIAJgAAAAAAAgIoAAAAAAAAAiAAAAAAAAAAJgACAAAAAAAoAAIAAAAAAi4AAgAAAAACLAAAAAAAAgImAAAAAAACAA4AAAAAAAIACgAAAAAAAgIAAAAAAAACACoAAAAAAAAAKAACAAAAAgIGAAIAAAACAgIAAAAAAAIABAACAAAAAAAiAAIAAAACAAAAAAPdkAAACMdj/AxX4/0SeAwAYIfT/KKHy/yQeBwAr3hsAK+kjAK2E+v9/FOD/dZovAAn70/9Jei8AJ+UoAFiWKQBwoA8ApIXv/4i3NgCQnff/oOru/2j5JwB709//1q3f/+caxf/3pOr/mPzN/zXQGgAitP//ATI9AMVFBABnSikAIHYBAM30LgDF3jUAA6Xm/ywwyf/UR9n/r747AIUVxf98jtH/loo2AEE+1P8ABDYATWr7/5zWIwBdxff/PRLm/9bq5v8efjUAWa/F/z+ENQAXVt//XJTn/4xzOACoYwwAmhsIAHaPDgBTODsANIU7ADD82P9UnR8ALU/V/+UGxP+BrOj/z+HH/xmY0f9d1un/7gk1AMc1IQC7z+f/dc/s/3KXHQBysMH/9rzw/4BSz/+u0s//4JDI/8rvAQDyEDQAhf7w/zjGIACfbikAo7fS/0ukx/9tuvn/CTTa/4LC9f8TQe3/O6b///cJ7P/dK/r/1JUUAGNFHABiLOr/6fvM//AKBAAXxAcAiEUvAACtAAC+Nu//RM0NAFpnPADKK8f/ft7//0g5GQDAac7/bHUkAN/H/P+hmAsACOjr/2zkAgAIyMn/wjYwAPa/4/+TPNv/4Er9/wUTFACSdxQAJZ4TAODQ5/9EmfP/Agjq/6Lu0f+cx8T/V6DI/9mXOgCT6h8AWv8zANRYIwD4QToAcv/M//s9IgCfq9r/IqTJ//USBACHJSUA8CTt/12bNQCgSMr//KLG/1a77f/eRc//Xr4NABpeHADm4A0AWn8MAIOPBwCKYuf/BFf///wG+P8hAPb/9lrQ/4QAHwCG7zAAfbnJ/9b89/+SRfT/wiHJ/xk5BQAMYQQAQc3a/xuwPgDncjQAOwDN/8d8GgAkGQMA5V4rAJkRKQA6etj/cU0TABzhPQCECRMAUfAlAEZaGAAYhcb/vhQTAJE4KACQ28n/iVDS/z+FHABLCx0Apvbv/76o6/8b4RIAPl7N/y8t6v/kHfn/xwYUAINyMgBuDeL/U3ns/5lAHQB4Jdn/rQXr/wXkFgDn2wsA6B0iAM/4MwA0uff/DMrU//h/5v9X0eP/G5HY/xIsx//YEAkAH17G/1hG4f+LHSUAt3MlAI98/f+Y3R0AmGgzALvUAgCnk+3/vmzP/xx8AgAIqhgAcf0tAKVcDACaNxkAZ6HH/z2M5P88odH/OcU1ABUBOwDAHQQA98QhAPQb8f/nNRoADjQHAEV9+f/QTBoArnzk/2gmHQCYjub/Mybv/9oF/P/bf8X/ZCfT/6/h3f/dk/n/CR3d/5PMAgAFGPH/KpwYAKnlyf9Qivf/LM87AE5D///fNuv/yhU8AGheFQC2FvP/zike"),ie(X,2336,"EA6A");var ji,rg=((ji=[]).set=function(te,oe){this[te]=oe},ji.get=function(te){return this[te]},ji);return{e:function(){},f:rg,g:Pe,h:nt,i:function(){var te;Ge=te=Ge-16|0,ce[te+15|0]=0,Me(2376,te+15|0,0),Ge=te+16|0},j:function(){return 2592},k:function(){return 4864},l:function(){return 4597},m:function(te,oe){te|=0,oe|=0;var ne,Ae=0,se=0,ge=0,ue=0,Ie=0,de=0,ye=0,De=0,ve=0,Ke=0,ze=0,Ze=0,$e=0;for(Ge=ne=Ge-96416|0,Ie=ne+96288|0;(0|se)!=32;)Ge=ue=Ge-16|0,ce[ue+15|0]=0,de=0|Me(2340,ue+15|0,0),Ge=ue+16|0,ce[se+Ie|0]=de,se=se+1|0;for(At(Ie,128,Ie,32),Qe(ue=ne+38912|0,Ie),ve=ne+31744|0,se=ne+96320|0;(0|Ae)!=7;)rt(ve+(Ae<<10)|0,se,65535&ge),Ae=Ae+1|0,ge=ge+1|0;for(Ke=ne+16384|0,Ae=0,ge=7;(0|Ae)!=8;)rt(Ke+(Ae<<10)|0,se,65535&ge),Ae=Ae+1|0,ge=ge+1|0;for(ws(Ae=ne+24576|0,ve),Vn(Ae),et(ge=ne- -8192|0,ue,Ae),nn(ge),on(ge),bs(ge,ge,Ke),Ur(ge),Ae=0;(0|Ae)!=8;){for(ze=(se=Ae<<10)+ge|0,ye=se+ne|0,De=se+ge|0,se=0;(0|se)!=256;)de=(Ze=$[(ue=se<<2)+De>>2])+4095|0,$[ue+ye>>2]=Ze-(-8192&de),$[ue+ze>>2]=de>>13,se=se+1|0;Ae=Ae+1|0}for(Ae=0;(0|Ae)!=32;)ce[te+Ae|0]=Be[Ae+Ie|0],Ae=Ae+1|0;for(ze=te+32|0,Ae=0;(0|Ae)!=8;){for(ye=ze+Se(Ae,320)|0,De=ge+(Ae<<10)|0,ue=0;(0|ue)!=64;)de=ye+Se(ue,5)|0,se=De+(ue<<4)|0,ce[0|de]=$[se>>2],ce[de+1|0]=$[se+4>>2]<<2|$[se>>2]>>>8,ce[de+2|0]=$[se+8>>2]<<4|$[se+4>>2]>>>6,ce[de+3|0]=$[se+12>>2]<<6|$[se+8>>2]>>>4,ce[de+4|0]=$[se+12>>2]>>>2,ue=ue+1|0;Ae=Ae+1|0}for(At(ge=ne+96256|0,32,te,2592),te=ne+96384|0,Ae=0;(0|Ae)!=32;)ce[oe+Ae|0]=Be[Ae+Ie|0],Ae=Ae+1|0;for(se=oe+32|0,Ae=0;(0|Ae)!=32;)ce[Ae+se|0]=Be[te+Ae|0],Ae=Ae+1|0;for(te=oe- -64|0,Ae=0;(0|Ae)!=32;)ce[te+Ae|0]=Be[Ae+ge|0],Ae=Ae+1|0;for(te=oe+96|0,Ae=0;(0|Ae)!=7;)Le(te+Se(Ae,96)|0,ve+(Ae<<10)|0),Ae=Ae+1|0;for(te=oe+768|0,Ae=0;(0|Ae)!=8;)Le(te+Se(Ae,96)|0,Ke+(Ae<<10)|0),Ae=Ae+1|0;for(de=oe+1536|0,Ae=0;(0|Ae)!=8;){for(ve=de+Se(Ae,416)|0,Ke=(Ae<<10)+ne|0,ge=0;(0|ge)!=32;)ze=$[(oe=Ke+(ge<<5)|0)+20>>2],ye=$[oe+8>>2],De=$[oe+28>>2],ue=$[oe+24>>2],Ie=$[oe+16>>2],se=$[oe+12>>2],Ze=$[oe+4>>2],te=ve+Se(ge,13)|0,$e=4096-$[oe>>2]|0,ce[0|te]=$e,oe=4096-Ze|0,ce[te+2|0]=oe>>>3,se=4096-se|0,ce[te+5|0]=se>>>1,Ie=4096-Ie|0,ce[te+7|0]=Ie>>>4,ue=4096-ue|0,ce[te+10|0]=ue>>>2,De=4096-De|0,ce[te+12|0]=De>>>5,ce[te+1|0]=oe<<5|$e>>>8,ye=4096-ye|0,ce[te+3|0]=ye<<2|oe>>>11,ce[te+4|0]=se<<7|ye>>>6,ce[te+6|0]=Ie<<4|se>>>9,oe=4096-ze|0,ce[te+8|0]=oe<<1|Ie>>>12,ce[te+9|0]=ue<<6|oe>>>7,ce[te+11|0]=De<<3|ue>>>10,ge=ge+1|0;Ae=Ae+1|0}return Ge=ne+96416|0,0},n:function(te,oe,ne,Ae){oe|=0,ne|=0,Ae|=0;var se,ge,ue,Ie=0,de=0,ye=0,De=0,ve=0,Ke=0,ze=0,Ze=0,$e=0,it=0,st=0,ht=0,dt=0,gt=0,ft=0,ut=0,Bt=0,Ct=0,Et=0,yt=0;for(ge=(te|=0)+2|0,Ge=se=(Ge=ue=Ge-16|0)-121072|0,de=ht=se+120848|0,ye=dt=se+120880|0,De=se+120912|0,ve=se+33808|0,Ke=se+56336|0,ze=se+25616|0;(0|Ie)!=32;)ce[Ie+de|0]=Be[Ae+Ie|0],Ie=Ie+1|0;for(de=Ae+32|0,Ie=0;(0|Ie)!=32;)ce[Ie+De|0]=Be[Ie+de|0],Ie=Ie+1|0;for(de=Ae- -64|0,Ie=0;(0|Ie)!=32;)ce[Ie+ye|0]=Be[Ie+de|0],Ie=Ie+1|0;for(de=Ae+96|0,Ie=0;(0|Ie)!=7;)Fe(Ke+(Ie<<10)|0,de+Se(Ie,96)|0),Ie=Ie+1|0;for(de=Ae+768|0,Ie=0;(0|Ie)!=8;)Fe(ze+(Ie<<10)|0,de+Se(Ie,96)|0),Ie=Ie+1|0;for(Bt=Ae+1536|0,Ie=0;(0|Ie)!=8;){for(Ct=ve+(Ie<<10)|0,Et=Bt+Se(Ie,416)|0,ye=0;(0|ye)!=32;)Ae=Ct+(ye<<5)|0,de=Et+Se(ye,13)|0,gt=Be[0|de],$[Ae>>2]=gt,gt|=Be[de+1|0]<<8&7936,$[Ae>>2]=gt,Ze=Be[de+1|0]>>>5|0,$[Ae+4>>2]=Ze,Ze|=Be[de+2|0]<<3,$[Ae+4>>2]=Ze,Ze|=Be[de+3|0]<<11&6144,$[Ae+4>>2]=Ze,ft=Be[de+3|0]>>>2|0,$[Ae+8>>2]=ft,ft|=Be[de+4|0]<<6&8128,$[Ae+8>>2]=ft,$e=Be[de+4|0]>>>7|0,$[Ae+12>>2]=$e,$e|=Be[de+5|0]<<1,$[Ae+12>>2]=$e,$e|=Be[de+6|0]<<9&7680,$[Ae+12>>2]=$e,it=Be[de+6|0]>>>4|0,$[Ae+16>>2]=it,it|=Be[de+7|0]<<4,$[Ae+16>>2]=it,it|=Be[de+8|0]<<12&4096,$[Ae+16>>2]=it,ut=Be[de+8|0]>>>1|0,$[Ae+20>>2]=ut,ut|=Be[de+9|0]<<7&8064,$[Ae+20>>2]=ut,st=Be[de+9|0]>>>6|0,$[Ae+24>>2]=st,st|=Be[de+10|0]<<2,$[Ae+24>>2]=st,st|=Be[de+11|0]<<10&7168,$[Ae+24>>2]=st,yt=Be[de+11|0]>>>3|0,$[Ae+28>>2]=yt,de=Be[de+12|0],$[Ae+4>>2]=4096-Ze,$[Ae>>2]=4096-gt,$[Ae+8>>2]=4096-ft,$[Ae+12>>2]=4096-$e,$[Ae+16>>2]=4096-it,$[Ae+20>>2]=4096-ut,$[Ae+24>>2]=4096-st,$[Ae+28>>2]=4096-(de<<5|yt),ye=ye+1|0;Ie=Ie+1|0}for(tA(Ae=se+12|0),Nt(Ae,dt,32),Nt(Ae,oe,ne),Nr(Ae),hA(dt=se+120944|0,64,Ae),NA(Ae),At(Bt=se+121008|0,64,De,96),Qe(se+63504|0,ht),Vn(Ke),_i(ze),_i(ve),Ie=0;;){for(de=se+49168|0,ye=Se(65535&Ie,7),oe=0;(0|oe)!=7;)Ge=ne=Ge-704|0,xs(Ae=ne+12|0,Bt,oe+ye&65535),hA(De=ne+16|0,680,Ae),NA(Ae),We(de+(oe<<10)|0,De),Ge=ne+704|0,oe=oe+1|0;for(ws(Ae=se+42e3|0,de),Vn(Ae),et(oe=se+17424|0,se+63504|0,Ae),nn(oe),on(oe),Ur(oe),ve=se+9232|0,ne=0;(0|ne)!=8;){for(Ke=(ye=ne<<10)+oe|0,ze=ye+ve|0,ht=oe+ye|0,ye=0;(0|ye)!=256;)$[(De=ye<<2)+Ke>>2]=ys(De+ze|0,$[De+ht>>2]),ye=ye+1|0;ne=ne+1|0}for(lt(ge,oe),tA(oe=se+12|0),Nt(oe,dt,64),Nt(oe,ge,1024),Nr(oe),hA(ge,32,oe),NA(oe),pe(oe=se+16|0,ge),Ie=Ie+1|0,Ye(oe),ye=se+56336|0,ne=0;(0|ne)!=7;)jn((De=ne<<10)+Ae|0,oe,ye+De|0),ne=ne+1|0;for(oe=0;(0|oe)!=7;)Ue(Ae+(oe<<10)|0),oe=oe+1|0;for(oe=0;(0|oe)!=7;)Oi((ne=oe<<10)+Ae|0,ne+Ae|0,ne+de|0),oe=oe+1|0;for(ne=0;(0|ne)!=7;)Es(Ae+(ne<<10)|0),ne=ne+1|0;if(!Qs(Ae)&&(Ji(ne=se+1040|0,se+16|0,se+25616|0),on(ne),bt(oe=se+9232|0,oe,ne),nn(oe),!ps(oe,261768)&&(Ji(oe=se+1040|0,se+16|0,se+33808|0),on(oe),nn(oe),!ps(oe,261888)))){for(bs(de=se+9232|0,de,Ke=se+1040|0),ze=se+17424|0,oe=0,ne=0;(0|oe)!=8;){for(ht=(Ae=oe<<10)+Ke|0,Ct=Ae+de|0,Et=Ae+ze|0,Ae=0,ye=0;(0|Ae)!=256;)ve=(0|(ve=$[(De=Ae<<2)+Ct>>2]))==-261888&$[De+Et>>2]!=0|ve-261889>>>0<4294443519,$[De+ht>>2]=ve,ye=ye+ve|0,Ae=Ae+1|0;ne=ne+ye|0,oe=oe+1|0}if(!(ne>>>0>75))break}}for(ye=se+42e3|0,De=se+1040|0,oe=0;(0|oe)!=32;)ce[0|(ne=oe+ge|0)]=Be[0|ne],oe=oe+1|0;for(ve=ge+32|0,oe=0;(0|oe)!=7;){for(Ke=ve+Se(oe,640)|0,ze=ye+(oe<<10)|0,ne=0;(0|ne)!=128;)de=$[(Ie=ze+(ne<<3)|0)+4>>2],Ae=Ke+Se(ne,5)|0,Ie=524288-$[Ie>>2]|0,ce[0|Ae]=Ie,ce[Ae+1|0]=Ie>>>8,de=524288-de|0,ce[Ae+3|0]=de>>>4,ce[Ae+4|0]=de>>>12,ce[Ae+2|0]=de<<4|Ie>>>16,ne=ne+1|0;oe=oe+1|0}for(Ie=ge+4512|0,ne=0,oe=0;;){if((0|oe)==83){for(Ae=0;(0|ne)!=8;){for(de=De+(ne<<10)|0,oe=0;(0|oe)!=256;)$[de+(oe<<2)>>2]&&(ce[Ae+Ie|0]=oe,Ae=Ae+1|0),oe=oe+1|0;ce[75+(ne+Ie|0)|0]=Ae,ne=ne+1|0}break}ce[oe+Ie|0]=0,oe=oe+1|0}return $[ue+12>>2]=4595,Ge=se+121072|0,Ee[te>>1]=$[ue+12>>2],Ge=ue+16|0,0},o:function(te,oe,ne,Ae){te|=0,oe|=0,Ae|=0;var se,ge=0,ue=0,Ie=0,de=0,ye=0,De=0,ve=0,Ke=0,ze=0,Ze=0,$e=0;Ie=(ne|=0)+2|0,ge=xe[ne>>1],ye=te,ue=oe,ne=0,Ge=se=Ge-91312|0,Ze=-1;e:if((0|ge)==4595){for(te=se+90256|0,Ke=se+16400|0,oe=0;(0|oe)!=32;)ce[te+oe|0]=Be[oe+Ae|0],oe=oe+1|0;for(De=Ae+32|0,oe=0;(0|oe)!=8;){for(ve=Ke+(oe<<10)|0,ze=De+Se(oe,320)|0,ge=0;(0|ge)!=64;)de=ve+(ge<<4)|0,te=Se(ge,5)+ze|0,$[de>>2]=Be[te+1|0]<<8&768|Be[0|te],$[de+4>>2]=Be[te+2|0]<<6&960|Be[te+1|0]>>>2,$[de+8>>2]=Be[te+3|0]<<4&1008|Be[te+2|0]>>>4,$[de+12>>2]=Be[te+4|0]<<2|Be[te+3|0]>>>6,ge=ge+1|0;oe=oe+1|0}for(te=se+90160|0,oe=se+24592|0,Ke=se+16|0;(0|ne)!=32;)ce[te+ne|0]=Be[ne+Ie|0],ne=ne+1|0;for(te=Ie+32|0,ne=0;(0|ne)!=7;)We(oe+(ne<<10)|0,te+Se(ne,640)|0),ne=ne+1|0;Ie=Ie+4512|0,ge=0,te=0;A:{for(;;){t:if((0|ge)!=8){for(de=Ke+(ge<<10)|0,ne=0;(0|ne)!=256;)$[de+(ne<<2)>>2]=0,ne=ne+1|0;if(!((oe=Be[(De=ge+Ie|0)+75|0])>>>0>75||(ne=te,oe>>>0<te>>>0))){for(;oe>>>0>ne>>>0;){if(te>>>0<ne>>>0&(oe=Be[0|(ve=ne+Ie|0)])>>>0<=Be[ve-1|0])break t;$[de+(oe<<2)>>2]=1,ne=ne+1|0,oe=Be[De+75|0]}ge=ge+1|0,te=oe;continue}}else for(ne=te>>>0<=75?75:te;;){if(oe=0,(0|te)==(0|ne))break A;if(oe=te+Ie|0,te=te+1|0,Be[0|oe])break}break}oe=1}if(!oe&&!Qs(se+24592|0)){for(At(ge=se+90192|0,32,Ae,2592),tA(te=se+12|0),Nt(te,ge,32),Nt(te,ye,ue),Nr(te),hA(ge,64,te),NA(te),pe(ue=se+89104|0,se+90160|0),Qe(oe=se+31760|0,se+90256|0),Vn(Ae=se+24592|0),et(ne=se+8208|0,oe,Ae),Ye(ue),Ae=se+16400|0,oe=0;(0|oe)!=8;){for(Ie=Ae+(oe<<10)|0,ye=0;(0|ye)!=256;)$[(de=Ie+(ye<<2)|0)>>2]=$[de>>2]<<13,ye=ye+1|0;oe=oe+1|0}for(_i(Ae),Ji(Ae,ue,Ae),bt(ne,ne,Ae),nn(ne),on(ne),Ur(ne),de=se+16|0,Ae=0;(0|Ae)!=8;){for(Ke=(oe=Ae<<10)+ne|0,De=oe+ne|0,ve=oe+de|0,oe=0;(0|oe)!=256;)ze=(ue=oe<<2)+Ke|0,$e=$[ue+ve>>2],Ge=ye=Ge-16|0,ue=Ie=ys(ye+12|0,$[ue+De>>2]),$e&&(ue=Ie+1&15,$[ye+12>>2]>0||(ue=Ie-1&15)),Ge=ye+16|0,$[ze>>2]=ue,oe=oe+1|0;Ae=Ae+1|0}for(lt(oe=se+90288|0,ne),tA(te),Nt(te,ge,64),Nt(te,oe,1024),Nr(te),hA(se+90128|0,32,te),NA(te),oe=0;;){if((0|oe)==32){Ze=0;break e}if(te=(se+90128|0)+oe|0,ne=(se+90160|0)+oe|0,oe=oe+1|0,Be[0|ne]!=Be[0|te])break}}}return Ge=se+91312|0,0|Ze}}})(Z)})(_)},instantiate:function(z,_){return{then:function(Z){var X=new c.Module(z);Z({instance:new c.Instance(X,_)})}}},RuntimeError:Error};a=[],A(c)!="object"&&d("no native wasm support detected");var G,h,y,u,s=!1,F,Y,N=C.INITIAL_MEMORY||16777216;F="INITIAL_MEMORY should be larger than STACK_SIZE, was "+N+"! (STACK_SIZE=8388608)",N>=8388608||d(F),f=C.wasmMemory?C.wasmMemory:new c.Memory({initial:N/65536,maximum:N/65536}),Y=f.buffer,C.HEAP8=G=new Int8Array(Y),C.HEAP16=new Int16Array(Y),C.HEAP32=y=new Int32Array(Y),C.HEAPU8=h=new Uint8Array(Y),C.HEAPU16=new Uint16Array(Y),C.HEAPU32=new Uint32Array(Y),C.HEAPF32=new Float32Array(Y),C.HEAPF64=u=new Float64Array(Y),N=f.buffer.byteLength;var w=[],S=[],k=[],H=0,U=null,R=null;function d(z){throw C.onAbort&&C.onAbort(z),e(z="Aborted("+z+")"),s=!0,z+=". Build with -sASSERTIONS for more info.",new c.RuntimeError(z)}var M,J,q="data:application/octet-stream;base64,";function l(z){return z.startsWith(q)}function m(z){return z.startsWith("file://")}function L(z){return Promise.resolve().then((function(){return(function(_){if(_==M&&a)return new Uint8Array(a);var Z=P(_);if(Z)return Z;if(g)return g(_);throw"both async and sync fetching of the wasm failed"})(z)}))}function p(z,_,Z,X){return(function(ee,re,ie){return L(ee).then((function(ae){return c.instantiate(ae,re)})).then((function(ae){return ae})).then(ie,(function(ae){e("failed to asynchronously prepare wasm: "+ae),d(ae)}))})(_,Z,X)}l(M="<<< WASM_BINARY_FILE >>>")||(J=M,M=C.locateFile?C.locateFile(J,n):n+J);var K={2340:function(){return C.getRandomValue()},2376:function(){if(C.getRandomValue===void 0)try{var I=(typeof window>"u"?"undefined":A(window))==="object"?window:self,g=I.crypto!==void 0?I.crypto:I.msCrypto,B=function(){var z=new Uint32Array(1);return g.getRandomValues(z),z[0]>>>0};B(),C.getRandomValue=B}catch(A){try{var Q=eval("require")("crypto"),i=function(){var z=Q.randomBytes(4);return(z[0]<<24|z[1]<<16|z[2]<<8|z[3])>>>0};i(),C.getRandomValue=i}catch(z){throw"No secure random number generator found"}}}};function b(z){this.name="ExitStatus",this.message="Program terminated with exit(".concat(z,")"),this.status=z}var v=function(z){for(;z.length>0;)z.shift()(C)};typeof TextDecoder<"u"&&new TextDecoder("utf8");var j,O=[],T=function(z,_,Z){var X=(function(ee,re){var ie;for(O.length=0,re>>=2;ie=h[ee++];)re+=ie!=105&re,O.push(ie==105?y[re]:u[re++>>1]),++re;return O})(_,Z);return K[z].apply(null,X)},x=function(z){D||(C.onExit&&C.onExit(z),s=!0),Q(z,new b(z))},W={c:function(z,_,Z){return T(z,_,Z)},d:function(z){h.length,d("OOM")},b:function(z,_){x(z)},a:f};(function(){var z={a:W};function _(Z,X){var ee,re=Z.exports;return C.asm=re,C.asm.f,ee=C.asm.e,S.unshift(ee),(function(ie){if(H--,C.monitorRunDependencies&&C.monitorRunDependencies(H),H==0&&(U!==null&&(clearInterval(U),U=null),R)){var ae=R;R=null,ae()}})(),re}if(H++,C.monitorRunDependencies&&C.monitorRunDependencies(H),C.instantiateWasm)try{return C.instantiateWasm(z,_)}catch(Z){return e("Module.instantiateWasm callback failed with error: "+Z),!1}p(0,M,z,(function(Z){_(Z.instance)}))})(),C._malloc=function(){return(C._malloc=C.asm.g).apply(null,arguments)},C._free=function(){return(C._free=C.asm.h).apply(null,arguments)},C._dilithiumjs_init=function(){return(C._dilithiumjs_init=C.asm.i).apply(null,arguments)},C._dilithiumjs_public_key_bytes=function(){return(C._dilithiumjs_public_key_bytes=C.asm.j).apply(null,arguments)},C._dilithiumjs_secret_key_bytes=function(){return(C._dilithiumjs_secret_key_bytes=C.asm.k).apply(null,arguments)},C._dilithiumjs_signature_bytes=function(){return(C._dilithiumjs_signature_bytes=C.asm.l).apply(null,arguments)},C._dilithiumjs_keypair=function(){return(C._dilithiumjs_keypair=C.asm.m).apply(null,arguments)},C._dilithiumjs_sign=function(){return(C._dilithiumjs_sign=C.asm.n).apply(null,arguments)},C._dilithiumjs_verify=function(){return(C._dilithiumjs_verify=C.asm.o).apply(null,arguments)};function P(z){if(l(z))return(function(_){if(o!==void 0&&o){var Z=Buffer.from(_,"base64");return new Uint8Array(Z.buffer,Z.byteOffset,Z.byteLength)}try{for(var X=atob(_),ee=new Uint8Array(X.length),re=0;re<X.length;++re)ee[re]=X.charCodeAt(re);return ee}catch{throw new Error("Converting base64 string to bytes failed.")}})(z.slice(q.length))}function V(){function z(){j||(j=!0,C.calledRun=!0,s||(v(S),C.onRuntimeInitialized&&C.onRuntimeInitialized(),(function(){if(C.postRun)for(typeof C.postRun=="function"&&(C.postRun=[C.postRun]);C.postRun.length;)_=C.postRun.shift(),k.unshift(_);var _;v(k)})()))}H>0||((function(){if(C.preRun)for(typeof C.preRun=="function"&&(C.preRun=[C.preRun]);C.preRun.length;)_=C.preRun.shift(),w.unshift(_);var _;v(w)})(),H>0||(C.setStatus?(C.setStatus("Running..."),setTimeout((function(){setTimeout((function(){C.setStatus("")}),1),z()}),1)):z()))}if(C.writeArrayToMemory=function(z,_){G.set(z,_)},R=function z(){j||V(),j||(R=z)},C.preInit)for(typeof C.preInit=="function"&&(C.preInit=[C.preInit]);C.preInit.length>0;)C.preInit.pop()();return V(),new Promise((function(z,_){C.onAbort=_,C.onRuntimeInitialized=function(){z(C)}}))})).then((function(z){Object.keys(z).forEach((function(_){C[_]=z[_]}))}));var E=C.ready.then((function(){C._dilithiumjs_init(),A=C._dilithiumjs_public_key_bytes(),I=C._dilithiumjs_secret_key_bytes(),g=C._dilithiumjs_signature_bytes()})),o={publicKeyBytes:E.then((function(){return A})),privateKeyBytes:E.then((function(){return I})),bytes:E.then((function(){return g})),keyPair:function(){return E.then((function(){var z=C._malloc(A),_=C._malloc(I);try{return B(C._dilithiumjs_keypair(z,_),{publicKey:Q(z,A),privateKey:Q(_,I)})}finally{i(z),i(_)}}))},sign:function(z,_){return o.signDetached(z,_).then((function(Z){var X=new Uint8Array(g+z.length);return X.set(Z),X.set(z,g),X}))},signDetached:function(z,_){return E.then((function(){var Z=C._malloc(g),X=C._malloc(z.length),ee=C._malloc(I);C.writeArrayToMemory(new Uint8Array(g),Z),C.writeArrayToMemory(z,X),C.writeArrayToMemory(_,ee);try{return B(C._dilithiumjs_sign(Z,X,z.length,ee),Q(Z,g))}finally{i(Z),i(X),i(ee)}}))},open:function(z,_){return E.then((function(){var Z=new Uint8Array(z.buffer,z.byteOffset,g),X=new Uint8Array(z.buffer,z.byteOffset+g,z.length-g);return o.verifyDetached(Z,X,_).then((function(ee){if(ee)return X;throw new Error("Failed to open Dilithium signed message.")}))}))},verifyDetached:function(z,_,Z){return E.then((function(){var X=C._malloc(g),ee=C._malloc(_.length),re=C._malloc(A);C.writeArrayToMemory(z,X),C.writeArrayToMemory(_,ee),C.writeArrayToMemory(Z,re);try{return C._dilithiumjs_verify(ee,_.length,X,re)===0}finally{i(X),i(ee),i(re)}}))}};return o})();typeof module<"u"&&module.exports?(dilithium.dilithium=dilithium,module.exports=dilithium):self.dilithium=dilithium});var iu={};t0(iu,{InMemoryKeyStorage:()=>Ar,createKeySDK:()=>Bs,default:()=>nu});be();be();be();be();be();be();b0();be();be();function vg(z){return z instanceof Uint8Array||ArrayBuffer.isView(z)&&z.constructor.name==="Uint8Array"}function w0(z){if(!Number.isSafeInteger(z)||z<0)throw new Error("positive integer expected, got "+z)}function Or(z,..._){if(!vg(z))throw new Error("Uint8Array expected");if(_.length>0&&!_.includes(z.length))throw new Error("Uint8Array expected of length "+_+", got length="+z.length)}function m0(z){if(typeof z!="function"||typeof z.create!="function")throw new Error("Hash should be wrapped by utils.createHasher");w0(z.outputLen),w0(z.blockLen)}function Jr(z,_=!0){if(z.destroyed)throw new Error("Hash instance has been destroyed");if(_&&z.finished)throw new Error("Hash#digest() has already been called")}function D0(z,_){Or(z);let Z=_.outputLen;if(z.length<Z)throw new Error("digestInto() expects output buffer of length at least "+Z)}function lr(...z){for(let _=0;_<z.length;_++)z[_].fill(0)}function Ai(z){return new DataView(z.buffer,z.byteOffset,z.byteLength)}function Pt(z,_){return z<<32-_|z>>>_}function Ug(z){if(typeof z!="string")throw new Error("string expected");return new Uint8Array(new TextEncoder().encode(z))}function dn(z){return typeof z=="string"&&(z=Ug(z)),Or(z),z}var qr=class{};function S0(z){let _=X=>z().update(dn(X)).digest(),Z=z();return _.outputLen=Z.outputLen,_.blockLen=Z.blockLen,_.create=()=>z(),_}var ri=class extends qr{constructor(_,Z){super(),this.finished=!1,this.destroyed=!1,m0(_);let X=dn(Z);if(this.iHash=_.create(),typeof this.iHash.update!="function")throw new Error("Expected instance of class which extends utils.Hash");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;let ee=this.blockLen,re=new Uint8Array(ee);re.set(X.length>ee?_.create().update(X).digest():X);for(let ie=0;ie<re.length;ie++)re[ie]^=54;this.iHash.update(re),this.oHash=_.create();for(let ie=0;ie<re.length;ie++)re[ie]^=106;this.oHash.update(re),lr(re)}update(_){return Jr(this),this.iHash.update(_),this}digestInto(_){Jr(this),Or(_,this.outputLen),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:Z,iHash:X,finished:ee,destroyed:re,blockLen:ie,outputLen:ae}=this;return _=_,_.finished=ee,_.destroyed=re,_.blockLen=ie,_.outputLen=ae,_.oHash=Z._cloneInto(_.oHash),_.iHash=X._cloneInto(_.iHash),_}clone(){return this._cloneInto()}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}},eo=(z,_,Z)=>new ri(z,_).update(Z).digest();eo.create=(z,_)=>new ri(z,_);be();be();be();function Lg(z,_,Z,X){if(typeof z.setBigUint64=="function")return z.setBigUint64(_,Z,X);let ee=BigInt(32),re=BigInt(4294967295),ie=Number(Z>>ee&re),ae=Number(Z&re),fe=X?4:0,le=X?0:4;z.setUint32(_+fe,ie,X),z.setUint32(_+le,ae,X)}function H0(z,_,Z){return z&_^~z&Z}function k0(z,_,Z){return z&_^z&Z^_&Z}var ni=class extends qr{constructor(_,Z,X,ee){super(),this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.blockLen=_,this.outputLen=Z,this.padOffset=X,this.isLE=ee,this.buffer=new Uint8Array(_),this.view=Ai(this.buffer)}update(_){Jr(this),_=dn(_),Or(_);let{view:Z,buffer:X,blockLen:ee}=this,re=_.length;for(let ie=0;ie<re;){let ae=Math.min(ee-this.pos,re-ie);if(ae===ee){let fe=Ai(_);for(;ee<=re-ie;ie+=ee)this.process(fe,ie);continue}X.set(_.subarray(ie,ie+ae),this.pos),this.pos+=ae,ie+=ae,this.pos===ee&&(this.process(Z,0),this.pos=0)}return this.length+=_.length,this.roundClean(),this}digestInto(_){Jr(this),D0(_,this),this.finished=!0;let{buffer:Z,view:X,blockLen:ee,isLE:re}=this,{pos:ie}=this;Z[ie++]=128,lr(this.buffer.subarray(ie)),this.padOffset>ee-ie&&(this.process(X,0),ie=0);for(let ce=ie;ce<ee;ce++)Z[ce]=0;Lg(X,ee-8,BigInt(this.length*8),re),this.process(X,0);let ae=Ai(_),fe=this.outputLen;if(fe%4)throw new Error("_sha2: outputLen should be aligned to 32bit");let le=fe/4,Ce=this.get();if(le>Ce.length)throw new Error("_sha2: outputLen bigger than state");for(let ce=0;ce<le;ce++)ae.setUint32(4*ce,Ce[ce],re)}digest(){let{buffer:_,outputLen:Z}=this;this.digestInto(_);let X=_.slice(0,Z);return this.destroy(),X}_cloneInto(_){_||(_=new this.constructor),_.set(...this.get());let{blockLen:Z,buffer:X,length:ee,finished:re,destroyed:ie,pos:ae}=this;return _.destroyed=ie,_.finished=re,_.length=ee,_.pos=ae,ee%Z&&_.buffer.set(X),_}clone(){return this._cloneInto()}},DA=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]);var Ng=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]),OA=new Uint32Array(64),ii=class extends ni{constructor(_=32){super(64,_,8,!1),this.A=DA[0]|0,this.B=DA[1]|0,this.C=DA[2]|0,this.D=DA[3]|0,this.E=DA[4]|0,this.F=DA[5]|0,this.G=DA[6]|0,this.H=DA[7]|0}get(){let{A:_,B:Z,C:X,D:ee,E:re,F:ie,G:ae,H:fe}=this;return[_,Z,X,ee,re,ie,ae,fe]}set(_,Z,X,ee,re,ie,ae,fe){this.A=_|0,this.B=Z|0,this.C=X|0,this.D=ee|0,this.E=re|0,this.F=ie|0,this.G=ae|0,this.H=fe|0}process(_,Z){for(let ce=0;ce<16;ce++,Z+=4)OA[ce]=_.getUint32(Z,!1);for(let ce=16;ce<64;ce++){let Ee=OA[ce-15],$=OA[ce-2],Be=Pt(Ee,7)^Pt(Ee,18)^Ee>>>3,xe=Pt($,17)^Pt($,19)^$>>>10;OA[ce]=xe+OA[ce-7]+Be+OA[ce-16]|0}let{A:X,B:ee,C:re,D:ie,E:ae,F:fe,G:le,H:Ce}=this;for(let ce=0;ce<64;ce++){let Ee=Pt(ae,6)^Pt(ae,11)^Pt(ae,25),$=Ce+Ee+H0(ae,fe,le)+Ng[ce]+OA[ce]|0,xe=(Pt(X,2)^Pt(X,13)^Pt(X,22))+k0(X,ee,re)|0;Ce=le,le=fe,fe=ae,ae=ie+$|0,ie=re,re=ee,ee=X,X=$+xe|0}X=X+this.A|0,ee=ee+this.B|0,re=re+this.C|0,ie=ie+this.D|0,ae=ae+this.E|0,fe=fe+this.F|0,le=le+this.G|0,Ce=Ce+this.H|0,this.set(X,ee,re,ie,ae,fe,le,Ce)}roundClean(){lr(OA)}destroy(){this.set(0,0,0,0,0,0,0,0),lr(this.buffer)}};var G0=S0(()=>new ii);var Br=G0;be();function pn(z){return Array.from(z).map(_=>_.toString(16).padStart(2,"0")).join("")}function jr(z){if(z.length%2!==0)throw new Error("Hex string must have even length");let _=new Uint8Array(z.length/2);for(let Z=0;Z<z.length;Z+=2)_[Z/2]=parseInt(z.slice(Z,Z+2),16);return _}async function Ii(z,_){if(_==="sha256"){let Z=await Promise.resolve().then(()=>(ui(),fi));return new Uint8Array(Z.createHash("sha256").update(z).digest())}else if(_==="sha512"){let Z=await Promise.resolve().then(()=>(ui(),fi));return new Uint8Array(Z.createHash("sha512").update(z).digest())}else if(_==="sha3-256"){let Z=await Promise.resolve().then(()=>(ui(),fi));return new Uint8Array(Z.createHash("sha3-256").update(z).digest())}throw new Error(`Unsupported hash algorithm: ${_}`)}be();mc();Xc();eg();var IA=class{async deriveKeypair(_){if(!_.seed)throw new Error("BIP32 derivation requires a seed");if(!_.path)throw new Error(`BIP32 derivation requires a path (e.g., "m/44'/0'/0'/0/0")`);try{let X=Fi.fromMasterSeed(_.seed).derive(_.path);if(!X.privateKey)throw new Error(`Failed to derive private key at path ${_.path}`);if(!X.publicKey)throw new Error(`Failed to derive public key at path ${_.path}`);return{privateKey:X.privateKey,publicKey:X.publicKey}}catch(Z){throw new Error(`BIP32 derivation failed at path ${_.path}: ${Z instanceof Error?Z.message:String(Z)}`)}}mnemonicToSeed(_,Z){return Zc(_,Z)}generateMnemonic(_=256){return zc($c,_)}static bitcoinPath(_=0,Z=0,X=0){return`m/44'/0'/${_}'/${Z}/${X}`}static bitcoinSegWitPath(_=0,Z=0,X=0){return`m/84'/0'/${_}'/${Z}/${X}`}};be();var tg="123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz";function Au(z){let _=0n;for(let X of z)_=_*256n+BigInt(X);let Z="";for(;_>0n;){let X=Number(_%58n);Z=tg[X]+Z,_=_/58n}for(let X of z){if(X!==0)break;Z="1"+Z}return Z}function ru(z){let _=0n;for(let X of z){let ee=tg.indexOf(X);if(ee===-1)throw new Error(`Invalid Base58 character: ${X}`);_=_*58n+BigInt(ee)}let Z=[];for(;_>0n;)Z.unshift(Number(_%256n)),_=_/256n;for(let X of z){if(X!=="1")break;Z.unshift(0)}return new Uint8Array(Z)}function us(z,_=!0,Z="mainnet"){if(z.length!==32)throw new Error("Private key must be 32 bytes");let X=Z==="mainnet"?128:239,ee=new Uint8Array(_?34:33);ee[0]=X,ee.set(z,1),_&&(ee[33]=1);let re=Br(ee),ae=Br(re).slice(0,4),fe=new Uint8Array(ee.length+4);return fe.set(ee),fe.set(ae,ee.length),Au(fe)}function Is(z){let _=ru(z);if(_.length!==37&&_.length!==38)throw new Error("Invalid WIF length");let Z=_.slice(0,-4),X=_.slice(-4),ee=Br(Z),ie=Br(ee).slice(0,4);if(!X.every((ce,Ee)=>ce===ie[Ee]))throw new Error("Invalid WIF checksum");let ae=Z[0],fe=ae===128?"mainnet":ae===239?"testnet":null;if(!fe)throw new Error(`Invalid WIF version byte: 0x${ae.toString(16)}`);let le=Z.length===34&&Z[33]===1;return{privateKey:Z.slice(1,33),compressed:le,network:fe}}hn.hmacSha256Sync=(z,..._)=>eo(Br,z,hn.concatBytes(..._));var Mn=class{constructor(){he(this,"suiteId","bsv-ecdsa-secp256k1");he(this,"version","1.0.0");he(this,"capabilities",{derivation:new IA})}async generateKeypair(){let _=p0.randomPrivateKey(),Z=l0(_,!0);return{privateKey:_,publicKey:Z}}async sign(_,Z){try{return(await E0(Z,_)).toCompactRawBytes()}catch(X){throw new Error(`BsvEcdsaSuite signing failed: ${X instanceof Error?X.message:String(X)}`)}}async verify(_,Z,X){try{return y0(X,Z,_)}catch{return!1}}exportPublicKey(_){return pn(_)}importPublicKey(_){return jr(_)}exportPrivateKey(_){return us(_,!0,"mainnet")}importPrivateKey(_){if(_.length===64){let Z=jr(_);if(Z.length!==32)throw new Error("Private key must be 32 bytes");return Z}else try{let{privateKey:Z}=Is(_);return Z}catch(Z){throw new Error(`Invalid private key format: ${Z instanceof Error?Z.message:String(Z)}`)}}};be();var hs=null;async function ds(){if(!hs){let z=await Promise.resolve().then(()=>fg(Ag(),1));hs=z.default||z}return hs}var ls={"ml-dsa-44":{publicKey:1312,privateKey:2560,signature:2420},"ml-dsa-65":{publicKey:1952,privateKey:4032,signature:3309},"ml-dsa-87":{publicKey:2592,privateKey:4864,signature:4627}},qn=class{constructor(){he(this,"version","1.0.0");he(this,"capabilities",{})}async generateKeypair(){try{let Z=await(await ds()).keyPair();return{publicKey:new Uint8Array(Z.publicKey),privateKey:new Uint8Array(Z.privateKey)}}catch(_){throw new Error(`${this.suiteId} key generation failed: ${_ instanceof Error?_.message:String(_)}`)}}async sign(_,Z){try{let ee=await(await ds()).signDetached(Buffer.from(Z),Buffer.from(_));return new Uint8Array(ee)}catch(X){throw new Error(`${this.suiteId} signing failed: ${X instanceof Error?X.message:String(X)}`)}}async verify(_,Z,X){try{return await(await ds()).verifyDetached(Buffer.from(X),Buffer.from(Z),Buffer.from(_))}catch{return!1}}exportPublicKey(_){return pn(_)}importPublicKey(_){let Z=jr(_);if(Z.length!==this.sizes.publicKey)throw new Error(`${this.suiteId} public key must be ${this.sizes.publicKey} bytes, got ${Z.length}`);return Z}exportPrivateKey(_){return pn(_)}importPrivateKey(_){let Z=jr(_);if(Z.length!==this.sizes.privateKey)throw new Error(`${this.suiteId} private key must be ${this.sizes.privateKey} bytes, got ${Z.length}`);return Z}},On=class extends qn{constructor(){super(...arguments);he(this,"suiteId","ml-dsa-44")}get sizes(){return ls["ml-dsa-44"]}},Jn=class extends qn{constructor(){super(...arguments);he(this,"suiteId","ml-dsa-65")}get sizes(){return ls["ml-dsa-65"]}},Tn=class extends qn{constructor(){super(...arguments);he(this,"suiteId","ml-dsa-87")}get sizes(){return ls["ml-dsa-87"]}};var Mi=class{constructor(){he(this,"suites",new Map)}register(_){if(this.suites.has(_.suiteId))throw new Error(`Signature suite already registered: ${_.suiteId}`);this.suites.set(_.suiteId,_)}getSuite(_){let Z=this.suites.get(_);if(!Z)throw new Error(`Unknown signature suite: ${_}. Available: ${this.listSuites().join(", ")}`);return Z}hasSuite(_){return this.suites.has(_)}listSuites(){return[...this.suites.keys()]}getAllSuites(){return[...this.suites.values()]}unregister(_){return this.suites.delete(_)}clear(){this.suites.clear()}},vr=new Mi;vr.register(new Mn);vr.register(new On);vr.register(new Jn);vr.register(new Tn);be();be();var Ar=class{constructor(){he(this,"keys",new Map)}async store(_,Z,X){this.keys.set(_,{keypair:Z,meta:X})}async load(_){return this.keys.get(_)||null}async list(_){let Z=Array.from(this.keys.values()).map(X=>X.meta);return _?Z.filter(X=>Object.entries(_).every(([ee,re])=>ee==="usage"&&Array.isArray(re)?re.some(ie=>X.usage.includes(ie)):X[ee]===re)):Z}async delete(_){this.keys.delete(_)}async updateMeta(_,Z){let X=this.keys.get(_);if(!X)throw new Error(`Key not found: ${_}`);this.keys.set(_,{keypair:X.keypair,meta:{...X.meta,...Z}})}clear(){this.keys.clear()}},_n=class{constructor(_=new Ar){he(this,"storage");this.storage=_}async registerKey(_,Z,X,ee={}){let re={keyId:_,suiteId:X,createdAt:new Date().toISOString(),expiresAt:ee.expiresAt,usage:ee.usage||["signing"],cryptoProfileVersion:ee.cryptoProfileVersion||"1.0.0",status:ee.status||"active"};return await this.storage.store(_,Z,re),re}async getKey(_){return await this.storage.load(_)}async getPublicKey(_){let Z=await this.storage.load(_);return Z?{publicKey:Z.keypair.publicKey,meta:Z.meta}:null}async listKeys(_){return await this.storage.list(_)}async listActiveKeys(_){let Z=await this.storage.list(_),X=new Date;return Z.filter(ee=>!(ee.status&&ee.status!=="active"||ee.expiresAt&&new Date(ee.expiresAt)<X))}async rotateKey(_,Z,X){let ee=await this.storage.load(_);if(!ee)throw new Error(`Cannot rotate: key not found: ${_}`);return await this.storage.updateMeta(_,{status:"rotated"}),await this.registerKey(Z,X,ee.meta.suiteId,{usage:ee.meta.usage,cryptoProfileVersion:ee.meta.cryptoProfileVersion,expiresAt:ee.meta.expiresAt,status:"active"}),await this.storage.updateMeta(Z,{rotatedFrom:_}),(await this.storage.load(Z)).meta}async revokeKey(_,Z){await this.storage.updateMeta(_,{status:"revoked",revokedAt:new Date().toISOString()})}async deleteKey(_){await this.storage.delete(_)}async markExpiredKeys(){let _=await this.storage.list(),Z=new Date,X=0;for(let ee of _)ee.expiresAt&&new Date(ee.expiresAt)<Z&&ee.status==="active"&&(await this.storage.updateMeta(ee.keyId,{status:"expired"}),X++);return X}async pruneOldKeys(_=90){let Z=await this.storage.list(),X=new Date;X.setDate(X.getDate()-_);let ee=0;for(let re of Z)(re.status==="revoked"&&re.revokedAt&&new Date(re.revokedAt)<X||re.status==="expired"&&re.expiresAt&&new Date(re.expiresAt)<X)&&(await this.storage.delete(re.keyId),ee++);return ee}};be();be();var qi=class{constructor(_){this.keyCounter=new Map;this.counterInitialized=new Set;this.counterInitPromises=new Map;this.keyRegistry=_.keyRegistry,this.suiteRegistry=_.suiteRegistry}async createKey(_,Z,X={}){let ee=this.suiteRegistry.getSuite(Z.primarySignatureSuite),re;if(X.derivationContext){if(!ee.capabilities?.derivation){let Ce=this.getSuitesWithCapability("derivation");throw new Error(`Suite '${ee.suiteId}' does not support key derivation.
2050
- `+(Ce.length>0?`Suites with derivation capability: ${Ce.join(", ")}
2051
- Consider using one of these suites or remove the derivationContext option.`:"No suites currently support derivation. Remove the derivationContext option."))}re=await ee.capabilities.derivation.deriveKeypair(X.derivationContext)}else re=await ee.generateKeypair();let ie=await this.getNextCounter(_),ae=Z.primarySignatureSuite.split("-")[0],fe=`${_}:pk-${ae}-${ie}`;return{meta:await this.keyRegistry.registerKey(fe,re,Z.primarySignatureSuite,{expiresAt:X.expiresAt,usage:X.usage||["signing"],cryptoProfileVersion:X.cryptoProfileVersion||"1.0.0"}),publicKey:re.publicKey}}async getKey(_){let Z=await this.keyRegistry.getPublicKey(_);return Z?{meta:Z.meta,publicKey:Z.publicKey}:null}async signWithKey(_,Z){let X=await this.keyRegistry.getKey(_);if(!X)throw new Error(`Key not found: ${_}`);if(X.meta.status!=="active")throw new Error(`Key is not active: ${_} (status: ${X.meta.status})`);let ee=this.suiteRegistry.getSuite(X.meta.suiteId),re=this.getHashAlgorithm(X.meta.suiteId),ie=await Ii(Z,re);return await ee.sign(X.keypair.privateKey,ie)}async verifySignature(_,Z,X){let ee=await this.keyRegistry.getPublicKey(_);if(!ee)return!1;let re=this.suiteRegistry.getSuite(ee.meta.suiteId),ie=this.getHashAlgorithm(ee.meta.suiteId),ae=await Ii(Z,ie);try{return await re.verify(ee.publicKey,ae,X)}catch{return!1}}async listKeysForAgent(_,Z=!0){let ee=(Z?await this.keyRegistry.listActiveKeys():await this.keyRegistry.listKeys()).filter(ie=>ie.keyId.startsWith(`${_}:`)),re=[];for(let ie of ee){let ae=await this.keyRegistry.getPublicKey(ie.keyId);ae&&re.push({meta:ae.meta,publicKey:ae.publicKey})}return re}async getActiveCryptoProfile(_){let Z=await this.listKeysForAgent(_,!0);if(Z.length===0)return null;let X=this.sortKeysByCreatedAt(Z),ee=new Set(X.map(ie=>ie.meta.suiteId)),re=Array.from(ee);return{primarySignatureSuite:re[0],secondarySignatureSuite:re[1]}}async rotateAgentKeys(_){let Z=await this.listKeysForAgent(_,!0),X=[];for(let ee of Z){let ie=await this.suiteRegistry.getSuite(ee.meta.suiteId).generateKeypair(),ae=await this.getNextCounter(_),fe=ee.meta.suiteId.split("-")[0],le=`${_}:pk-${fe}-${ae}`,Ce=await this.keyRegistry.rotateKey(ee.meta.keyId,le,ie);X.push({meta:Ce,publicKey:ie.publicKey})}return X}async getOrCreateKey(_,Z,X={}){let re=(await this.listKeysForAgent(_,!0)).find(ie=>ie.meta.suiteId===Z.primarySignatureSuite);return re||await this.createKey(_,Z,X)}async createDualSignatureKeys(_,Z,X={}){if(!Z.secondarySignatureSuite)throw new Error("secondarySignatureSuite is required to create dual signature keys");let ee=await this.createKey(_,{primarySignatureSuite:Z.primarySignatureSuite},X),re=await this.createKey(_,{primarySignatureSuite:Z.secondarySignatureSuite},X);return{primaryKey:ee,secondaryKey:re}}async getOrCreateDualSignatureKeys(_,Z,X={}){if(!Z.secondarySignatureSuite)throw new Error("secondarySignatureSuite is required to create dual signature keys");let ee=await this.getOrCreateKey(_,{primarySignatureSuite:Z.primarySignatureSuite},X),re=await this.getOrCreateKey(_,{primarySignatureSuite:Z.secondarySignatureSuite},X);return{primaryKey:ee,secondaryKey:re}}async signWithSuites(_,Z,X){let ee=this.sortKeysByCreatedAt(await this.listKeysForAgent(_,!0));if(ee.length===0)throw new Error(`No active keys found for agent: ${_}`);let re=X?.length?X:Array.from(new Set(ee.map(ae=>ae.meta.suiteId))),ie=[];for(let ae of re){let fe=ee.find(Ce=>Ce.meta.suiteId===ae);if(!fe)throw new Error(`No active key for suite '${ae}' and agent '${_}'`);let le=await this.signWithKey(fe.meta.keyId,Z);ie.push({suiteId:ae,keyId:fe.meta.keyId,signature:le})}return{signatures:ie}}async verifyWithSuites(_,Z,X){let ee=[];for(let re of X)try{let ie=await this.verifySignature(re.keyId,Z,re.signature);ee.push({suiteId:re.suiteId,keyId:re.keyId,valid:ie})}catch(ie){ee.push({suiteId:re.suiteId,keyId:re.keyId,valid:!1,error:ie.message})}return{results:ee,allValid:ee.every(re=>re.valid)}}generateMnemonic(_=256){return new IA().generateMnemonic(_)}async createKeyFromMnemonic(_,Z,X,ee=IA.bitcoinPath(0,0,0),re,ie={}){let fe=new IA().mnemonicToSeed(X,re);return await this.createKey(_,Z,{...ie,derivationContext:{seed:fe,path:ee}})}getCapabilities(_){let Z=this.suiteRegistry.getSuite(_),X=[];return Z.capabilities?.derivation&&X.push("derivation"),Z.capabilities?.encryption&&X.push("encryption"),Z.capabilities?.threshold&&X.push("threshold"),X}getSuitesWithCapability(_){return this.suiteRegistry.getAllSuites().filter(X=>!!X.capabilities?.[_]).map(X=>X.suiteId)}async createBitcoinWalletKey(_,Z,X=0,ee=0,re=!1,ie={}){let ae=IA.bitcoinPath(X,re?1:0,ee);return this.createKeyFromMnemonic(_,{primarySignatureSuite:"bsv-ecdsa-secp256k1"},Z,ae,void 0,ie)}getHashAlgorithm(_){return _.startsWith("ml-dsa")?"sha3-256":"sha256"}async getNextCounter(_){if(!this.counterInitialized.has(_)){if(!this.counterInitPromises.has(_)){let re=(async()=>{let ae=(await this.keyRegistry.listKeys()).reduce((fe,le)=>{if(!le.keyId.startsWith(`${_}:pk-`))return fe;let Ce=le.keyId.match(/:pk-[^-]+-(\d+)$/);if(!Ce)return fe;let ce=parseInt(Ce[1],10);return Number.isFinite(ce)?Math.max(fe,ce):fe},0);this.keyCounter.set(_,ae),this.counterInitialized.add(_),this.counterInitPromises.delete(_)})();this.counterInitPromises.set(_,re)}let ee=this.counterInitPromises.get(_);ee&&await ee}let X=(this.keyCounter.get(_)||0)+1;return this.keyCounter.set(_,X),X}sortKeysByCreatedAt(_){return[..._].sort((Z,X)=>{let ee=new Date(Z.meta.createdAt).getTime(),re=new Date(X.meta.createdAt).getTime();if(ee!==re)return ee-re;let ie=this.getSuitePriority(Z.meta.suiteId)-this.getSuitePriority(X.meta.suiteId);return ie!==0?ie:Z.meta.keyId.localeCompare(X.meta.keyId)})}getSuitePriority(_){return _.startsWith("ml-dsa")?0:_.includes("ecdsa")?1:2}};be();async function Bs(z){let _=new Ar,Z=new _n(_);return new qi({keyRegistry:Z,suiteRegistry:z||vr})}var nu={createKeySDK:Bs};typeof window<"u"&&(window.LumenKeys={createKeySDK:Bs});return ug(iu);})();
2049
+ `);var Ge=class{async deriveKeypair(e){if(!e.seed)throw new Error("BIP32 derivation requires a seed");if(!e.path)throw new Error(`BIP32 derivation requires a path (e.g., "m/44'/0'/0'/0/0")`);try{let n=Vn.fromMasterSeed(e.seed).derive(e.path);if(!n.privateKey)throw new Error(`Failed to derive private key at path ${e.path}`);if(!n.publicKey)throw new Error(`Failed to derive public key at path ${e.path}`);return{privateKey:n.privateKey,publicKey:n.publicKey}}catch(r){throw new Error(`BIP32 derivation failed at path ${e.path}: ${r instanceof Error?r.message:String(r)}`)}}mnemonicToSeed(e,r){return ma(e,r)}generateMnemonic(e=256){return ga(wa,e)}static bitcoinPath(e=0,r=0,n=0){return`m/44'/0'/${e}'/${r}/${n}`}static bitcoinSegWitPath(e=0,r=0,n=0){return`m/84'/0'/${e}'/${r}/${n}`}};m();var Ea="123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz";function Wf(t){let e=0n;for(let n of t)e=e*256n+BigInt(n);let r="";for(;e>0n;){let n=Number(e%58n);r=Ea[n]+r,e=e/58n}for(let n of t){if(n!==0)break;r="1"+r}return r}function zf(t){let e=0n;for(let n of t){let o=Ea.indexOf(n);if(o===-1)throw new Error(`Invalid Base58 character: ${n}`);e=e*58n+BigInt(o)}let r=[];for(;e>0n;)r.unshift(Number(e%256n)),e=e/256n;for(let n of t){if(n!=="1")break;r.unshift(0)}return new Uint8Array(r)}function gs(t,e=!0,r="mainnet"){if(t.length!==32)throw new Error("Private key must be 32 bytes");let n=r==="mainnet"?128:239,o=new Uint8Array(e?34:33);o[0]=n,o.set(t,1),e&&(o[33]=1);let s=Rt(o),c=Rt(s).slice(0,4),a=new Uint8Array(o.length+4);return a.set(o),a.set(c,o.length),Wf(a)}function ms(t){let e=zf(t);if(e.length!==37&&e.length!==38)throw new Error("Invalid WIF length");let r=e.slice(0,-4),n=e.slice(-4),o=Rt(r),i=Rt(o).slice(0,4);if(!n.every((f,h)=>f===i[h]))throw new Error("Invalid WIF checksum");let c=r[0],a=c===128?"mainnet":c===239?"testnet":null;if(!a)throw new Error(`Invalid WIF version byte: 0x${c.toString(16)}`);let u=r.length===34&&r[33]===1;return{privateKey:r.slice(1,33),compressed:u,network:a}}Ar.hmacSha256Sync=(t,...e)=>ho(Rt,t,Ar.concatBytes(...e));var dr=class{constructor(){d(this,"suiteId","bsv-ecdsa-secp256k1");d(this,"version","1.0.0");d(this,"capabilities",{derivation:new Ge})}async generateKeypair(){let e=xi.randomPrivateKey(),r=fi(e,!0);return{privateKey:e,publicKey:r}}async sign(e,r){try{return(await di(r,e)).toCompactRawBytes()}catch(n){throw new Error(`BsvEcdsaSuite signing failed: ${n instanceof Error?n.message:String(n)}`)}}async verify(e,r,n){try{return hi(n,r,e)}catch{return!1}}exportPublicKey(e){return Ur(e)}importPublicKey(e){return rr(e)}exportPrivateKey(e){return gs(e,!0,"mainnet")}importPrivateKey(e){if(e.length===64){let r=rr(e);if(r.length!==32)throw new Error("Private key must be 32 bytes");return r}else try{let{privateKey:r}=ms(e);return r}catch(r){throw new Error(`Invalid private key format: ${r instanceof Error?r.message:String(r)}`)}}};m();var $s=null,js=null,qs=null;async function xu(){return $s||($s=(await Promise.resolve().then(()=>(to(),eo))).ml_dsa44),$s}async function yu(){return js||(js=(await Promise.resolve().then(()=>(to(),eo))).ml_dsa65),js}async function bu(){return qs||(qs=(await Promise.resolve().then(()=>(to(),eo))).ml_dsa87),qs}var Gs={"ml-dsa-44":{publicKey:1312,privateKey:2560,signature:2420},"ml-dsa-65":{publicKey:1952,privateKey:4032,signature:3309},"ml-dsa-87":{publicKey:2592,privateKey:4896,signature:4627}},Jr=class{constructor(){d(this,"version","2.0.0");d(this,"capabilities",{})}async generateKeypair(){try{let r=(await this.getLib()).keygen();return{publicKey:r.publicKey,privateKey:r.secretKey}}catch(e){throw new Error(`${this.suiteId} key generation failed: ${e instanceof Error?e.message:String(e)}`)}}async sign(e,r){try{return(await this.getLib()).sign(r,e)}catch(n){throw new Error(`${this.suiteId} signing failed: ${n instanceof Error?n.message:String(n)}`)}}async verify(e,r,n){try{return(await this.getLib()).verify(n,r,e)}catch{return!1}}exportPublicKey(e){return Ur(e)}importPublicKey(e){let r=rr(e);if(r.length!==this.sizes.publicKey)throw new Error(`${this.suiteId} public key must be ${this.sizes.publicKey} bytes, got ${r.length}`);return r}exportPrivateKey(e){return Ur(e)}importPrivateKey(e){let r=rr(e);if(r.length!==this.sizes.privateKey)throw new Error(`${this.suiteId} private key must be ${this.sizes.privateKey} bytes, got ${r.length}`);return r}},Qr=class extends Jr{constructor(){super(...arguments);d(this,"suiteId","ml-dsa-44")}get sizes(){return Gs["ml-dsa-44"]}async getLib(){return xu()}},en=class extends Jr{constructor(){super(...arguments);d(this,"suiteId","ml-dsa-65")}get sizes(){return Gs["ml-dsa-65"]}async getLib(){return yu()}},hr=class extends Jr{constructor(){super(...arguments);d(this,"suiteId","ml-dsa-87")}get sizes(){return Gs["ml-dsa-87"]}async getLib(){return bu()}};var tn=class{constructor(){d(this,"suites",new Map)}register(e){if(this.suites.has(e.suiteId))throw new Error(`Signature suite already registered: ${e.suiteId}`);this.suites.set(e.suiteId,e)}getSuite(e){let r=this.suites.get(e);if(!r)throw new Error(`Unknown signature suite: ${e}. Available: ${this.listSuites().join(", ")}`);return r}hasSuite(e){return this.suites.has(e)}listSuites(){return[...this.suites.keys()]}getAllSuites(){return[...this.suites.values()]}unregister(e){return this.suites.delete(e)}clear(){this.suites.clear()}},Jt=new tn;Jt.register(new dr);Jt.register(new Qr);Jt.register(new en);Jt.register(new hr);m();m();var St=class{constructor(){d(this,"keys",new Map)}async store(e,r,n){this.keys.set(e,{keypair:r,meta:n})}async load(e){return this.keys.get(e)||null}async list(e){let r=Array.from(this.keys.values()).map(n=>n.meta);return e?r.filter(n=>Object.entries(e).every(([o,s])=>o==="usage"&&Array.isArray(s)?s.some(i=>n.usage.includes(i)):n[o]===s)):r}async delete(e){this.keys.delete(e)}async updateMeta(e,r){let n=this.keys.get(e);if(!n)throw new Error(`Key not found: ${e}`);this.keys.set(e,{keypair:n.keypair,meta:{...n.meta,...r}})}clear(){this.keys.clear()}},rn=class{constructor(e=new St){d(this,"storage");this.storage=e}async registerKey(e,r,n,o={}){let s={keyId:e,suiteId:n,createdAt:new Date().toISOString(),expiresAt:o.expiresAt,usage:o.usage||["signing"],cryptoProfileVersion:o.cryptoProfileVersion||"1.0.0",status:o.status||"active"};return await this.storage.store(e,r,s),s}async getKey(e){return await this.storage.load(e)}async getPublicKey(e){let r=await this.storage.load(e);return r?{publicKey:r.keypair.publicKey,meta:r.meta}:null}async listKeys(e){return await this.storage.list(e)}async listActiveKeys(e){let r=await this.storage.list(e),n=new Date;return r.filter(o=>!(o.status&&o.status!=="active"||o.expiresAt&&new Date(o.expiresAt)<n))}async rotateKey(e,r,n){let o=await this.storage.load(e);if(!o)throw new Error(`Cannot rotate: key not found: ${e}`);return await this.storage.updateMeta(e,{status:"rotated"}),await this.registerKey(r,n,o.meta.suiteId,{usage:o.meta.usage,cryptoProfileVersion:o.meta.cryptoProfileVersion,expiresAt:o.meta.expiresAt,status:"active"}),await this.storage.updateMeta(r,{rotatedFrom:e}),(await this.storage.load(r)).meta}async revokeKey(e,r){await this.storage.updateMeta(e,{status:"revoked",revokedAt:new Date().toISOString()})}async deleteKey(e){await this.storage.delete(e)}async markExpiredKeys(){let e=await this.storage.list(),r=new Date,n=0;for(let o of e)o.expiresAt&&new Date(o.expiresAt)<r&&o.status==="active"&&(await this.storage.updateMeta(o.keyId,{status:"expired"}),n++);return n}async pruneOldKeys(e=90){let r=await this.storage.list(),n=new Date;n.setDate(n.getDate()-e);let o=0;for(let s of r)(s.status==="revoked"&&s.revokedAt&&new Date(s.revokedAt)<n||s.status==="expired"&&s.expiresAt&&new Date(s.expiresAt)<n)&&(await this.storage.delete(s.keyId),o++);return o}};m();m();var ro=class{constructor(e){this.keyCounter=new Map;this.counterInitialized=new Set;this.counterInitPromises=new Map;this.keyRegistry=e.keyRegistry,this.suiteRegistry=e.suiteRegistry}async createKey(e,r,n={}){let o=this.suiteRegistry.getSuite(r.primarySignatureSuite),s;if(n.derivationContext){if(!o.capabilities?.derivation){let l=this.getSuitesWithCapability("derivation");throw new Error(`Suite '${o.suiteId}' does not support key derivation.
2050
+ `+(l.length>0?`Suites with derivation capability: ${l.join(", ")}
2051
+ Consider using one of these suites or remove the derivationContext option.`:"No suites currently support derivation. Remove the derivationContext option."))}s=await o.capabilities.derivation.deriveKeypair(n.derivationContext)}else s=await o.generateKeypair();let i=await this.getNextCounter(e),c=r.primarySignatureSuite.split("-")[0],a=`${e}:pk-${c}-${i}`;return{meta:await this.keyRegistry.registerKey(a,s,r.primarySignatureSuite,{expiresAt:n.expiresAt,usage:n.usage||["signing"],cryptoProfileVersion:n.cryptoProfileVersion||"1.0.0"}),publicKey:s.publicKey}}async getKey(e){let r=await this.keyRegistry.getPublicKey(e);return r?{meta:r.meta,publicKey:r.publicKey}:null}async signWithKey(e,r){let n=await this.keyRegistry.getKey(e);if(!n)throw new Error(`Key not found: ${e}`);if(n.meta.status!=="active")throw new Error(`Key is not active: ${e} (status: ${n.meta.status})`);let o=this.suiteRegistry.getSuite(n.meta.suiteId),s=this.getHashAlgorithm(n.meta.suiteId),i=await wn(r,s);return await o.sign(n.keypair.privateKey,i)}async verifySignature(e,r,n){let o=await this.keyRegistry.getPublicKey(e);if(!o)return!1;let s=this.suiteRegistry.getSuite(o.meta.suiteId),i=this.getHashAlgorithm(o.meta.suiteId),c=await wn(r,i);try{return await s.verify(o.publicKey,c,n)}catch{return!1}}async listKeysForAgent(e,r=!0){let o=(r?await this.keyRegistry.listActiveKeys():await this.keyRegistry.listKeys()).filter(i=>i.keyId.startsWith(`${e}:`)),s=[];for(let i of o){let c=await this.keyRegistry.getPublicKey(i.keyId);c&&s.push({meta:c.meta,publicKey:c.publicKey})}return s}async getActiveCryptoProfile(e){let r=await this.listKeysForAgent(e,!0);if(r.length===0)return null;let n=this.sortKeysByCreatedAt(r),o=new Set(n.map(i=>i.meta.suiteId)),s=Array.from(o);return{primarySignatureSuite:s[0],secondarySignatureSuite:s[1]}}async rotateAgentKeys(e){let r=await this.listKeysForAgent(e,!0),n=[];for(let o of r){let i=await this.suiteRegistry.getSuite(o.meta.suiteId).generateKeypair(),c=await this.getNextCounter(e),a=o.meta.suiteId.split("-")[0],u=`${e}:pk-${a}-${c}`,l=await this.keyRegistry.rotateKey(o.meta.keyId,u,i);n.push({meta:l,publicKey:i.publicKey})}return n}async getOrCreateKey(e,r,n={}){let s=(await this.listKeysForAgent(e,!0)).find(i=>i.meta.suiteId===r.primarySignatureSuite);return s||await this.createKey(e,r,n)}async createDualSignatureKeys(e,r,n={}){if(!r.secondarySignatureSuite)throw new Error("secondarySignatureSuite is required to create dual signature keys");let o=await this.createKey(e,{primarySignatureSuite:r.primarySignatureSuite},n),s=await this.createKey(e,{primarySignatureSuite:r.secondarySignatureSuite},n);return{primaryKey:o,secondaryKey:s}}async getOrCreateDualSignatureKeys(e,r,n={}){if(!r.secondarySignatureSuite)throw new Error("secondarySignatureSuite is required to create dual signature keys");let o=await this.getOrCreateKey(e,{primarySignatureSuite:r.primarySignatureSuite},n),s=await this.getOrCreateKey(e,{primarySignatureSuite:r.secondarySignatureSuite},n);return{primaryKey:o,secondaryKey:s}}async signWithSuites(e,r,n){let o=this.sortKeysByCreatedAt(await this.listKeysForAgent(e,!0));if(o.length===0)throw new Error(`No active keys found for agent: ${e}`);let s=n?.length?n:Array.from(new Set(o.map(c=>c.meta.suiteId))),i=[];for(let c of s){let a=o.find(l=>l.meta.suiteId===c);if(!a)throw new Error(`No active key for suite '${c}' and agent '${e}'`);let u=await this.signWithKey(a.meta.keyId,r);i.push({suiteId:c,keyId:a.meta.keyId,signature:u})}return{signatures:i}}async verifyWithSuites(e,r,n){let o=[];for(let s of n)try{let i=await this.verifySignature(s.keyId,r,s.signature);o.push({suiteId:s.suiteId,keyId:s.keyId,valid:i})}catch(i){o.push({suiteId:s.suiteId,keyId:s.keyId,valid:!1,error:i.message})}return{results:o,allValid:o.every(s=>s.valid)}}generateMnemonic(e=256){return new Ge().generateMnemonic(e)}async createKeyFromMnemonic(e,r,n,o=Ge.bitcoinPath(0,0,0),s,i={}){let a=new Ge().mnemonicToSeed(n,s);return await this.createKey(e,r,{...i,derivationContext:{seed:a,path:o}})}getCapabilities(e){let r=this.suiteRegistry.getSuite(e),n=[];return r.capabilities?.derivation&&n.push("derivation"),r.capabilities?.encryption&&n.push("encryption"),r.capabilities?.threshold&&n.push("threshold"),n}getSuitesWithCapability(e){return this.suiteRegistry.getAllSuites().filter(n=>!!n.capabilities?.[e]).map(n=>n.suiteId)}async createBitcoinWalletKey(e,r,n=0,o=0,s=!1,i={}){let c=Ge.bitcoinPath(n,s?1:0,o);return this.createKeyFromMnemonic(e,{primarySignatureSuite:"bsv-ecdsa-secp256k1"},r,c,void 0,i)}getHashAlgorithm(e){return e.startsWith("ml-dsa")?"sha3-256":"sha256"}async getNextCounter(e){if(!this.counterInitialized.has(e)){if(!this.counterInitPromises.has(e)){let s=(async()=>{let c=(await this.keyRegistry.listKeys()).reduce((a,u)=>{if(!u.keyId.startsWith(`${e}:pk-`))return a;let l=u.keyId.match(/:pk-[^-]+-(\d+)$/);if(!l)return a;let f=parseInt(l[1],10);return Number.isFinite(f)?Math.max(a,f):a},0);this.keyCounter.set(e,c),this.counterInitialized.add(e),this.counterInitPromises.delete(e)})();this.counterInitPromises.set(e,s)}let o=this.counterInitPromises.get(e);o&&await o}let n=(this.keyCounter.get(e)||0)+1;return this.keyCounter.set(e,n),n}sortKeysByCreatedAt(e){return[...e].sort((r,n)=>{let o=new Date(r.meta.createdAt).getTime(),s=new Date(n.meta.createdAt).getTime();if(o!==s)return o-s;let i=this.getSuitePriority(r.meta.suiteId)-this.getSuitePriority(n.meta.suiteId);return i!==0?i:r.meta.keyId.localeCompare(n.meta.keyId)})}getSuitePriority(e){return e.startsWith("ml-dsa")?0:e.includes("ecdsa")?1:2}};m();async function Fs(){let t=new St,e=new rn(t);return new ro({keyRegistry:e,suiteRegistry:Jt})}var gu={createKeySDK:Fs};typeof window<"u"&&(window.LumenKeys={createKeySDK:Fs});return s0(mu);})();
2052
2052
  /*! Bundled license information:
2053
2053
 
2054
- @noble/secp256k1/index.js:
2055
- (*! noble-secp256k1 - MIT License (c) 2019 Paul Miller (paulmillr.com) *)
2054
+ @noble/hashes/esm/utils.js:
2055
+ (*! noble-hashes - MIT License (c) 2022 Paul Miller (paulmillr.com) *)
2056
2056
 
2057
2057
  @noble/hashes/utils.js:
2058
- @noble/hashes/utils.js:
2059
- @noble/hashes/utils.js:
2060
- @noble/hashes/utils.js:
2061
- @noble/hashes/esm/utils.js:
2062
2058
  (*! noble-hashes - MIT License (c) 2022 Paul Miller (paulmillr.com) *)
2063
2059
 
2064
2060
  @noble/curves/utils.js:
2061
+ (*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) *)
2062
+
2063
+ @noble/hashes/utils.js:
2064
+ (*! noble-hashes - MIT License (c) 2022 Paul Miller (paulmillr.com) *)
2065
+
2066
+ @noble/post-quantum/utils.js:
2067
+ (*! noble-post-quantum - MIT License (c) 2024 Paul Miller (paulmillr.com) *)
2068
+
2069
+ @noble/post-quantum/_crystals.js:
2070
+ (*! noble-post-quantum - MIT License (c) 2024 Paul Miller (paulmillr.com) *)
2071
+
2072
+ @noble/post-quantum/ml-dsa.js:
2073
+ (*! noble-post-quantum - MIT License (c) 2024 Paul Miller (paulmillr.com) *)
2074
+
2075
+ @noble/secp256k1/index.js:
2076
+ (*! noble-secp256k1 - MIT License (c) 2019 Paul Miller (paulmillr.com) *)
2077
+
2065
2078
  @noble/curves/abstract/modular.js:
2079
+ (*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) *)
2080
+
2066
2081
  @noble/curves/abstract/curve.js:
2082
+ (*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) *)
2083
+
2067
2084
  @noble/curves/abstract/weierstrass.js:
2085
+ (*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) *)
2086
+
2068
2087
  @noble/curves/secp256k1.js:
2069
2088
  (*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) *)
2070
2089
 
2090
+ @noble/hashes/utils.js:
2091
+ (*! noble-hashes - MIT License (c) 2022 Paul Miller (paulmillr.com) *)
2092
+
2071
2093
  @scure/base/index.js:
2072
2094
  (*! scure-base - MIT License (c) 2022 Paul Miller (paulmillr.com) *)
2073
2095
 
2074
2096
  @scure/bip32/index.js:
2075
2097
  (*! scure-bip32 - MIT License (c) 2022 Patricio Palladino, Paul Miller (paulmillr.com) *)
2076
2098
 
2099
+ @noble/hashes/utils.js:
2100
+ (*! noble-hashes - MIT License (c) 2022 Paul Miller (paulmillr.com) *)
2101
+
2077
2102
  @scure/bip39/index.js:
2078
2103
  (*! scure-bip39 - MIT License (c) 2022 Patricio Palladino, Paul Miller (paulmillr.com) *)
2079
2104
  */