@smartledger/keys 1.5.10 → 3.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.
- package/LICENSE +23 -23
- package/README.md +548 -548
- package/dist/cjs/browser.d.ts +1 -7
- package/dist/cjs/browser.d.ts.map +1 -1
- package/dist/cjs/browser.js +4 -10
- package/dist/cjs/browser.js.map +1 -1
- package/dist/cjs/sdk.d.ts +4 -10
- package/dist/cjs/sdk.d.ts.map +1 -1
- package/dist/cjs/sdk.js +10 -13
- package/dist/cjs/sdk.js.map +1 -1
- package/dist/esm/browser.d.ts +1 -7
- package/dist/esm/browser.d.ts.map +1 -1
- package/dist/esm/browser.js +4 -10
- package/dist/esm/browser.js.map +1 -1
- package/dist/esm/sdk.d.ts +4 -10
- package/dist/esm/sdk.d.ts.map +1 -1
- package/dist/esm/sdk.js +11 -14
- package/dist/esm/sdk.js.map +1 -1
- package/dist/lumen-keys.js +5047 -4485
- package/dist/lumen-keys.js.map +4 -4
- package/dist/lumen-keys.min.js +13 -11
- package/dist/lumen-keys.min.js.map +4 -4
- package/dist/tsconfig.esm.tsbuildinfo +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +79 -76
package/dist/lumen-keys.min.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";var LumenKeys=(()=>{var vc=Object.create;var rn=Object.defineProperty;var Uc=Object.getOwnPropertyDescriptor;var Lc=Object.getOwnPropertyNames;var Nc=Object.getPrototypeOf,Fc=Object.prototype.hasOwnProperty;var Rc=(z,_,Z)=>_ in z?rn(z,_,{enumerable:!0,configurable:!0,writable:!0,value:Z}):z[_]=Z;var gr=(z,_)=>()=>(z&&(_=z(z=0)),_);var Yc=(z,_)=>()=>(_||z((_={exports:{}}).exports,_),_.exports),Vs=(z,_)=>{for(var Z in _)rn(z,Z,{get:_[Z],enumerable:!0})},Ws=(z,_,Z,X)=>{if(_&&typeof _=="object"||typeof _=="function")for(let ee of Lc(_))!Fc.call(z,ee)&&ee!==Z&&rn(z,ee,{get:()=>_[ee],enumerable:!(X=Uc(_,ee))||X.enumerable});return z};var Kc=(z,_,Z)=>(Z=z!=null?vc(Nc(z)):{},Ws(_||!z||!z.__esModule?rn(Z,"default",{value:z,enumerable:!0}):Z,z)),Mc=z=>Ws(rn({},"__esModule",{value:!0}),z);var he=(z,_,Z)=>Rc(z,typeof _!="symbol"?_+"":_,Z);var Buffer,process,be=gr(()=>{"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)});function gg(z){return z instanceof Uint8Array||ArrayBuffer.isView(z)&&z.constructor.name==="Uint8Array"}function zi(z,_=""){if(!Number.isSafeInteger(z)||z<0){let Z=_&&`"${_}" `;throw new Error(`${Z}expected integer >= 0, got ${z}`)}}function Jr(z,_,Z=""){let X=gg(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 Tr(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 ri(z,_){Jr(z,void 0,"digestInto() output");let Z=_.outputLen;if(z.length<Z)throw new Error('"digestInto() output" expected to be of length >='+Z)}function b0(z){return new Uint32Array(z.buffer,z.byteOffset,Math.floor(z.byteLength/4))}function sA(...z){for(let _=0;_<z.length;_++)z[_].fill(0)}function ni(z){return new DataView(z.buffer,z.byteOffset,z.byteLength)}function Pt(z,_){return z<<32-_|z>>>_}function ug(z){return z<<24&4278190080|z<<8&16711680|z>>>8&65280|z>>>24&255}function Ig(z){for(let _=0;_<z.length;_++)z[_]=ug(z[_]);return z}function In(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 fg,Zi,hn,ii=gr(()=>{be();fg=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;Zi=fg?z=>z:Ig;hn=z=>({oid:Uint8Array.from([6,9,96,134,72,1,101,3,4,2,z])})});function w0(z,_,Z){return z&_^~z&Z}function m0(z,_,Z){return z&_^z&Z^_&Z}var dn,DA,yt,D0=gr(()=>{be();ii();dn=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=ni(this.buffer)}update(_){Tr(this),Jr(_);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=ni(_);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(_){Tr(this),ri(_,this),this.finished=!0;let{buffer:Z,view:X,blockLen:ee,isLE:re}=this,{pos:ie}=this;Z[ie++]=128,sA(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=ni(_),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()}},DA=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),yt=Uint32Array.from([1779033703,4089235720,3144134277,2227873595,1013904242,4271175723,2773480762,1595750129,1359893119,2917565137,2600822924,725511199,528734635,4215389547,1541459225,327033209])});function hg(z,_=!1){return _?{h:Number(z&oi),l:Number(z>>S0&oi)}:{h:Number(z>>S0&oi)|0,l:Number(z&oi)|0}}function si(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}=hg(z[re],_);[X[re],ee[re]]=[ie,ae]}return[X,ee]}function aA(z,_,Z,X){let ee=(_>>>0)+(X>>>0);return{h:z+Z+(ee/2**32|0)|0,l:ee|0}}var oi,S0,Xi,$i,Er,yr,ln,Bn,H0,k0,G0,v0,U0,L0,N0,F0,R0,Y0,eo=gr(()=>{be();oi=BigInt(4294967295),S0=BigInt(32);Xi=(z,_,Z)=>z>>>Z,$i=(z,_,Z)=>z<<32-Z|_>>>Z,Er=(z,_,Z)=>z>>>Z|_<<32-Z,yr=(z,_,Z)=>z<<32-Z|_>>>Z,ln=(z,_,Z)=>z<<64-Z|_>>>Z-32,Bn=(z,_,Z)=>z>>>Z-32|_<<64-Z,H0=(z,_,Z)=>z<<Z|_>>>32-Z,k0=(z,_,Z)=>_<<Z|z>>>32-Z,G0=(z,_,Z)=>_<<Z-32|z>>>64-Z,v0=(z,_,Z)=>z<<Z-32|_>>>64-Z;U0=(z,_,Z)=>(z>>>0)+(_>>>0)+(Z>>>0),L0=(z,_,Z,X)=>_+Z+X+(z/2**32|0)|0,N0=(z,_,Z,X)=>(z>>>0)+(_>>>0)+(Z>>>0)+(X>>>0),F0=(z,_,Z,X,ee)=>_+Z+X+ee+(z/2**32|0)|0,R0=(z,_,Z,X,ee)=>(z>>>0)+(_>>>0)+(Z>>>0)+(X>>>0)+(ee>>>0),Y0=(z,_,Z,X,ee,re)=>_+Z+X+ee+re+(z/2**32|0)|0});var lg,OA,to,Ao,K0,Bg,Cg,JA,TA,ro,no,M0,q0,O0=gr(()=>{be();D0();eo();ii();lg=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),to=class extends dn{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)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+w0(ae,fe,le)+lg[ce]+OA[ce]|0,xe=(Pt(X,2)^Pt(X,13)^Pt(X,22))+m0(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(){sA(OA)}destroy(){this.set(0,0,0,0,0,0,0,0),sA(this.buffer)}},Ao=class extends to{constructor(){super(32);he(this,"A",DA[0]|0);he(this,"B",DA[1]|0);he(this,"C",DA[2]|0);he(this,"D",DA[3]|0);he(this,"E",DA[4]|0);he(this,"F",DA[5]|0);he(this,"G",DA[6]|0);he(this,"H",DA[7]|0)}},K0=si(["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))),Bg=K0[0],Cg=K0[1],JA=new Uint32Array(80),TA=new Uint32Array(80),ro=class extends dn{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)JA[we]=_.getUint32(Z),TA[we]=_.getUint32(Z+=4);for(let we=16;we<80;we++){let Me=JA[we-15]|0,Ve=TA[we-15]|0,Ge=Er(Me,Ve,1)^Er(Me,Ve,8)^Xi(Me,Ve,7),ke=yr(Me,Ve,1)^yr(Me,Ve,8)^$i(Me,Ve,7),Pe=JA[we-2]|0,qe=TA[we-2]|0,rt=Er(Pe,qe,19)^ln(Pe,qe,61)^Xi(Pe,qe,6),tt=yr(Pe,qe,19)^Bn(Pe,qe,61)^$i(Pe,qe,6),Je=N0(ke,tt,TA[we-7],TA[we-16]),Te=F0(Je,Ge,rt,JA[we-7],JA[we-16]);JA[we]=Te|0,TA[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=Er(ce,Ee,14)^Er(ce,Ee,18)^ln(ce,Ee,41),Ve=yr(ce,Ee,14)^yr(ce,Ee,18)^Bn(ce,Ee,41),Ge=ce&$^~ce&xe,ke=Ee&Be^~Ee&He,Pe=R0(Re,Ve,ke,Cg[we],TA[we]),qe=Y0(Pe,Se,Me,Ge,Bg[we],JA[we]),rt=Pe|0,tt=Er(X,ee,28)^ln(X,ee,34)^ln(X,ee,39),Je=yr(X,ee,28)^Bn(X,ee,34)^Bn(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}=aA(le|0,Ce|0,qe|0,rt|0),le=ae|0,Ce=fe|0,ae=re|0,fe=ie|0,re=X|0,ie=ee|0;let Qe=U0(rt,Je,pe);X=L0(Qe,qe,tt,Te),ee=Qe|0}({h:X,l:ee}=aA(this.Ah|0,this.Al|0,X|0,ee|0)),{h:re,l:ie}=aA(this.Bh|0,this.Bl|0,re|0,ie|0),{h:ae,l:fe}=aA(this.Ch|0,this.Cl|0,ae|0,fe|0),{h:le,l:Ce}=aA(this.Dh|0,this.Dl|0,le|0,Ce|0),{h:ce,l:Ee}=aA(this.Eh|0,this.El|0,ce|0,Ee|0),{h:$,l:Be}=aA(this.Fh|0,this.Fl|0,$|0,Be|0),{h:xe,l:He}=aA(this.Gh|0,this.Gl|0,xe|0,He|0),{h:Se,l:Re}=aA(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(){sA(JA,TA)}destroy(){sA(this.buffer),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}},no=class extends ro{constructor(){super(64);he(this,"Ah",yt[0]|0);he(this,"Al",yt[1]|0);he(this,"Bh",yt[2]|0);he(this,"Bl",yt[3]|0);he(this,"Ch",yt[4]|0);he(this,"Cl",yt[5]|0);he(this,"Dh",yt[6]|0);he(this,"Dl",yt[7]|0);he(this,"Eh",yt[8]|0);he(this,"El",yt[9]|0);he(this,"Fh",yt[10]|0);he(this,"Fl",yt[11]|0);he(this,"Gh",yt[12]|0);he(this,"Gl",yt[13]|0);he(this,"Hh",yt[14]|0);he(this,"Hl",yt[15]|0)}},M0=In(()=>new Ao,hn(1)),q0=In(()=>new no,hn(3))});function mg(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=J0(le,Ce,1)^Z[ae],Ee=T0(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=j0[ie],fe=J0(ee,re,ae),le=T0(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]^=bg[X],z[1]^=wg[X]}sA(Z)}var Eg,Cn,yg,Qg,pg,xg,_0,j0,P0,V0,bg,wg,J0,T0,io,Dg,W0,z0=gr(()=>{be();eo();ii();Eg=BigInt(0),Cn=BigInt(1),yg=BigInt(2),Qg=BigInt(7),pg=BigInt(256),xg=BigInt(113),_0=[],j0=[],P0=[];for(let z=0,_=Cn,Z=1,X=0;z<24;z++){[Z,X]=[X,(2*Z+3*X)%5],_0.push(2*(5*X+Z)),j0.push((z+1)*(z+2)/2%64);let ee=Eg;for(let re=0;re<7;re++)_=(_<<Cn^(_>>Qg)*xg)%pg,_&yg&&(ee^=Cn<<(Cn<<BigInt(re))-Cn);P0.push(ee)}V0=si(P0,!0),bg=V0[0],wg=V0[1],J0=(z,_,Z)=>Z>32?G0(z,_,Z):H0(z,_,Z),T0=(z,_,Z)=>Z>32?v0(z,_,Z):k0(z,_,Z);io=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,zi(X,"outputLen"),!(0<_&&_<200))throw new Error("only keccak-f1600 function is supported");this.state=new Uint8Array(200),this.state32=b0(this.state)}clone(){return this._cloneInto()}keccak(){Zi(this.state32),mg(this.state32,this.rounds),Zi(this.state32),this.posOut=0,this.pos=0}update(_){Tr(this),Jr(_);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(_){Tr(this,!1),Jr(_),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 zi(_),this.xofInto(new Uint8Array(_))}digestInto(_){if(ri(_,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,sA(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,_}},Dg=(z,_,Z,X={})=>In(()=>new io(_,z,Z),X),W0=Dg(6,136,32,hn(8))});var ai={};Vs(ai,{createHash:()=>Z0,default:()=>Sg});function Z0(z){let _=new Uint8Array(0),Z;switch(z.toLowerCase()){case"sha256":case"sha-256":Z=M0;break;case"sha512":case"sha-512":Z=q0;break;case"sha3-256":Z=W0;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 Sg,ci=gr(()=>{"use strict";be();O0();z0();Sg={createHash:Z0}});var kc=Yc((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]=tA(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=Ki(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=tA(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+(Ki(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+(Ki(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=Ur(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=Ur(Ie))))break l;break n}if((0|(Ae=Ur(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|Ur(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=Ur(ne)))==-1|(0|(te=Ur(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]&tA(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]&tA(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=tA(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]=tA(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,Xe=0,nt=0,ot=0,It=0,ht=0,ct=0,gt=0,ft=0,lt=0,Bt=0,Ct=0,Et=0,mt=0,Nt=0,Ft=0,Rt=0,Yt=0,Kt=0,kt=0,Mt=0,Gt=0,qt=0,Ot=0,Jt=0,Tt=0,_t=0,AA=0,hA=0,rr=0,dA=0,lA=0,BA=0,CA=0,NA=0,EA=0,yA=0,QA=0,pA=0,xA=0,FA=0,RA=0,YA=0,nr=0,ir=0,KA=0,or=0,sr=0,Nr=0,Fr=0,ar=0,cr=0,Rr=0,jn=0,Pn=0,Vn=0,ps=0,xs=0,bs=0,ws=0,ms=0,Ds=0,Ss=0,Hs=0,ks=0,Gs=0,Oi=0,vs=0,Us=0,Ls=0,Ns=0,Fs=0,Rs=0,Ys=0,Ks=0,Ms=0,qs=0,Os=0,Js=0,Ts=0,_s=0,js=0,Ps=0;for(dA=$[te+192>>2],lA=$[te+196>>2],Ft=$[te+184>>2],BA=$[te+188>>2],CA=$[te+176>>2],NA=$[te+180>>2],Rt=$[te+168>>2],EA=$[te+172>>2],It=$[te+160>>2],ir=$[te+164>>2],yA=$[te+152>>2],KA=$[te+156>>2],QA=$[te+144>>2],pA=$[te+148>>2],Yt=$[te+136>>2],Kt=$[te+140>>2],kt=$[te+128>>2],or=$[te+132>>2],xA=$[te+120>>2],sr=$[te+124>>2],Mt=$[te+112>>2],Gt=$[te+116>>2],Ze=$[te+104>>2],Ct=$[te+108>>2],qt=$[te+96>>2],Ot=$[te+100>>2],ye=$[te+88>>2],Et=$[te+92>>2],Ie=$[te+80>>2],Jt=$[te+84>>2],ue=$[te+72>>2],Tt=$[te+76>>2],Ke=$[te+64>>2],ot=$[te+68>>2],ht=$[te+56>>2],ze=$[te+60>>2],ne=$[te+48>>2],FA=$[te+52>>2],se=$[te+40>>2],Xe=$[te+44>>2],ct=$[te+32>>2],_t=$[te+36>>2],ve=$[te+24>>2],gt=$[te+28>>2],De=$[te+16>>2],mt=$[te+20>>2],Ae=$[te+8>>2],ft=$[te+12>>2],de=$[te>>2],lt=$[te+4>>2];Vn>>>0<=23;)oe=ve^Ke^Ze^Ft^QA,AA=me(nt=de^se^Ie^It^xA,Bt=lt^Xe^Jt^ir^sr,1)^oe,ge=me(ct^AA,_t^(hA=(Nr=gt^ot^Ct^BA^pA)^ke),27),Fr=ke,RA=Nt=mt^ze^Ot^Kt^NA,Nt=me(rr=De^ht^qt^Yt^CA,Nt,1)^nt,nt=me(ye^Nt,Et^(YA=ke^Bt),10),ar=ke,nr=Bt=ft^FA^Et^EA^or,cr=ct^ue^Mt^dA^yA,ct=me(jn=Ae^ne^ye^Rt^kt,Bt,1)^cr,Bt=me(Bt=se^ct,Xe^(Et=(se=_t^Tt^Gt^lA^KA)^ke),36),Rr=ke,ye=me(Ae^Nt,ft^YA,1),ft=ke,Xe=me(cr,se,1)^rr,Ze=me(Xe^Ze,(rr=Ct)^(Ct=ke^RA),25),RA=ke,_t=me(oe,Nr,1)^jn,Ae=me(_t^ht,(rr=ze)^(ze=ke^nr),6),Nr=ke,ht=me(ve^Xe,gt^Ct,28),gt=ke,Ie=me(Ie^ct,Et^Jt,3),Jt=ke,oe=me(ue^AA,Tt^hA,20),rr=ve=ke,ue=me(De^_t,ze^mt,62),Tt=ke,Mt=me(Mt^AA,Gt^hA,39),Gt=ke,se=me(Ke^Xe,ot^Ct,55),mt=De=ke,ot=$[(Ke=(jn=Vn<<3)+1120|0)>>2],Ke=$[Ke+4>>2],qt=me(qt^_t,ze^Ot,43),Ot=ke,ne=me(ne^Nt,FA^YA,44),Pn=De=(ps=(lt^=Et)^(-1^(FA=ke))&Ot^Ke)^(xs=(-1^De)&Gt^Tt)^(bs=(-1^ve)&Jt^gt)^(ws=(-1^Rr)&ar^Fr)^(ms=(-1^Nr)&RA^ft),Ke=me(ot=(Ds=(nr=de^ct)^(-1^ne)&qt^ot)^(Ss=(-1^se)&Mt^ue)^(Hs=(-1^oe)&Ie^ht)^(ks=(-1^Bt)&nt^ge)^(Gs=(-1^Ae)&Ze^ye),De,1),ve=ke,Yt=me(Yt^_t,ze^Kt,15),Kt=ke,Ft=me(Xe^Ft,Ct^BA,56),cr=ke,QA=me(Xe^QA,Ct^pA,21),BA=ke,dA=me(dA^AA,lA^hA,14),pA=ke,xA=me(ct^xA,Et^sr,41),lA=ke,De=me(Rt^Nt,EA^YA,2),de=ke,yA=me(yA^AA,hA^KA,8),EA=ke,Rt=me(It^ct,Et^ir,18),ct=ke,It=me(kt^Nt,YA^or,45),kt=ke,Oi=(-1^Ft)&ge^Yt,Xe=(-1^dA)&nr^QA,KA=(-1^De)&ue^xA,Et=(-1^Rt)&ye^yA,CA=me(_t^CA,ze^NA,61),ue=me((Ke^=or=Oi^Xe^KA^Et^(ir=(-1^CA)&ht^It))^(sr=(-1^ue)&se^De),(ve^=Ns=(vs=(-1^cr)&Fr^Kt)^(Us=(-1^pA)<^BA)^(Ct=(-1^de)&Tt^lA)^(ze=(-1^ct)&ft^EA)^(Ls=(-1^(NA=ke))>^kt))^(Tt=(-1^Tt)&mt^de),14),AA=ke,Ps=de=(Fs=RA^(-1^EA)&ct)^(Rs=Ot^(-1^BA)&pA)^(Ys=(-1^lA)&de^Gt)^(Ks=Jt^(-1^kt)&NA)^(Ms=(-1^Kt)&cr^ar),de=me(js=(qs=Ze^(-1^yA)&Rt)^(Os=qt^(-1^QA)&dA)^(Js=(-1^xA)&De^Mt)^(Ts=Ie^(-1^It)&CA)^(_s=(-1^Yt)&Ft^nt),de,1)^ot,Ie=me(de^(De=(-1^Ie)&It^oe),(ot=ke^Pn)^(It=(-1^Jt)&kt^rr),44),hA=ke,kt=mt^(-1^Gt)&lA,Gt=Nr^(-1^RA)&EA,ar=Rr^(-1^ar)&Kt,nt=(Ft=(RA=Ft^(-1^ge)&Bt)^(Pn=CA^(-1^ht)&oe)^(ge=Rt^(-1^ye)&Ae)^sr^(Kt=(-1^nr)&ne^dA))^me(Ae=(oe=se^(-1^Mt)&xA)^(Mt=Ae^(-1^Ze)&yA)^(nr=Bt^(-1^nt)&Yt)^(qt=(-1^qt)&QA^ne)^De,It^=kt^Gt^ar^(Ot=(-1^Ot)&BA^FA),1),YA=ne=(ht=(se=(Fr=cr^(-1^Fr)&Rr)^(Rr=NA^(-1^gt)&rr)^(Rt=ct^(-1^ft)&Nr)^Tt^(Yt=(-1^lt)&FA^pA))^ke)^ps,De=ue,Bt=Ie,ct=ue^Ie&(-1^(Nt=nt^Ds)),_t=(-1^ne)&hA^AA,oe=me(oe^de,ot^kt,2),ye=ke,gt=me(Ft,se,1)^js,se=me(ir^gt,Ls^(mt=Ps^ke),55),Ze=ke,ft=me(or,Ns,1)^Ae,Ae=me(ft^Os,(lt=It^ke)^Rs,62),Ie=ne=ke,dA=(-1^Ae)&se^oe,lA=(-1^ne)&Ze^ye,Ft=(ne=me(nt^ks,ht^ws,41))^(-1^oe)&Ae,BA=(ue=ke)^(-1^ye)&Ie,CA=(ge=me(ge^Ke,ve^Rt,39))^(-1^ne)&oe,NA=(oe=ke)^(-1^ue)&ye,Rt=se^(-1^ge)&ne,EA=Ze^(-1^oe)&ue,It=Ae^(-1^se)&ge,ir=Ie^(-1^Ze)&oe,oe=me(gt^KA,mt^Ct,56),ye=ke,se=me(nt^Hs,ht^bs,36),Ze=ke,Ae=me(Ke^Kt,ve^Yt,27),Ie=ne=ke,yA=(-1^Ae)&se^oe,KA=(-1^ne)&Ze^ye,QA=(ne=me(ft^_s,lt^Ms,15))^(-1^oe)&Ae,pA=(ue=ke)^(-1^ye)&Ie,Yt=(ge=me(de^Mt,ot^Gt,10))^(-1^ne)&oe,Kt=(oe=ke)^(-1^ue)&ye,kt=se^(-1^ge)&ne,or=Ze^(-1^oe)&ue,xA=(-1^se)&ge^Ae,sr=(-1^Ze)&oe^Ie,oe=me(nt^Ss,ht^xs,18),ye=ke,se=me(ft^Ts,lt^Ks,6),ue=ke,Ae=me(de^qt,ot^Ot,1),Jt=ne=ke,Mt=(-1^Ae)&se^oe,Gt=(-1^ne)&ue^ye,Ze=(ne=me(Ke^RA,ve^Fr,8))^(-1^oe)&Ae,Ct=(Ie=ke)^(-1^ye)&Jt,qt=(ge=me(gt^Et,ze^mt,25))^(-1^ne)&oe,Ot=(oe=ke)^(-1^Ie)&ye,ye=se^(-1^ge)&ne,Et=ue^(-1^oe)&Ie,Ie=(-1^se)&ge^Ae,Jt^=(-1^ue)&oe,oe=me(ft^Js,lt^Ys,61),ze=ke,se=me(Ke^Pn,ve^Rr,20),ve=ke,Ae=me(Xe^gt,mt^Us,28),Xe=ne=ke,ue=(-1^Ae)&se^oe,Tt=(-1^ne)&ve^ze,Ke=(ne=me(de^nr,ot^ar,45))^(-1^oe)&Ae,ot=(de=ke)^(-1^ze)&Xe,ht=(ge=me(nt^Gs,ht^ms,3))^(-1^ne)&oe,ze=(oe=ke)^(-1^de)&ze,ne=(-1^ge)&ne^se,FA=(-1^oe)&de^ve,se=Ae^(-1^se)&ge,Xe^=(-1^ve)&oe,ve=(Ae=me(gt^Oi,mt^vs,21))^(-1^De)&Nt,gt=(ge=ke)^(-1^AA)&YA,De=(oe=me(ft^qs,lt^Fs,43))^(-1^Ae)&De,mt=(nt=ke)^(-1^ge)&AA,Ae=(-1^oe)&Ae^Bt,ft=(-1^nt)&ge^hA,de=Nt^$[(ge=1120+(8|jn)|0)>>2]^(-1^Bt)&oe,lt=YA^$[ge+4>>2]^(-1^hA)&nt,Vn=Vn+2|0;$[te+192>>2]=dA,$[te+196>>2]=lA,$[te+184>>2]=Ft,$[te+188>>2]=BA,$[te+176>>2]=CA,$[te+180>>2]=NA,$[te+168>>2]=Rt,$[te+172>>2]=EA,$[te+160>>2]=It,$[te+164>>2]=ir,$[te+152>>2]=yA,$[te+156>>2]=KA,$[te+144>>2]=QA,$[te+148>>2]=pA,$[te+136>>2]=Yt,$[te+140>>2]=Kt,$[te+128>>2]=kt,$[te+132>>2]=or,$[te+120>>2]=xA,$[te+124>>2]=sr,$[te+112>>2]=Mt,$[te+116>>2]=Gt,$[te+104>>2]=Ze,$[te+108>>2]=Ct,$[te+96>>2]=qt,$[te+100>>2]=Ot,$[te+88>>2]=ye,$[te+92>>2]=Et,$[te+80>>2]=Ie,$[te+84>>2]=Jt,$[te+72>>2]=ue,$[te+76>>2]=Tt,$[te+64>>2]=Ke,$[te+68>>2]=ot,$[te+56>>2]=ht,$[te+60>>2]=ze,$[te+48>>2]=ne,$[te+52>>2]=FA,$[te+40>>2]=se,$[te+44>>2]=Xe,$[te+32>>2]=ct,$[te+36>>2]=_t,$[te+24>>2]=ve,$[te+28>>2]=gt,$[te+16>>2]=De,$[te+20>>2]=mt,$[te+8>>2]=Ae,$[te+12>>2]=ft,$[te>>2]=de,$[te+4>>2]=lt}function rt(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]&tA(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]&tA(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]&tA(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]&tA(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 tt(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]=ut(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]=ut(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}rt($[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,eA(ge=ne+12|0),Lt(ge,oe,32),Lr(ge),IA(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&&(IA(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}LA(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,eA(Ae=se+12|0),Qs(Ae,oe,32),Qs(Ae,ne+14|0,2),Oe($[Ae>>2],168),Ge=ne+16|0,ne=840,ys(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;ys((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}LA(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=it(oe=$[(se=(ue<<2)+te|0)>>2],oe>>31,41978,0),$[se>>2]=Tn(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]=Tn(it(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=Tn(it(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 at(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 $e(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),Ri(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 ut(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 it(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 xt(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 At(te,oe,ne){var Ae,se;for(Ge=Ae=Ge-160|0,ls(se=Ae+12|0,oe,ne),IA(oe=Ae+16|0,136,se),ne=at(te,256,oe);ne>>>0<=255;)IA(oe=Ae+16|0,136,Ae+12|0),ne=at((ne<<2)+te|0,256-ne|0,oe)+ne|0;LA(Ae+12|0),Ge=Ae+160|0}function dt(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 vr(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 eA(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=it(Ae=$[(ge=se<<2)+ne>>2],Ae>>31,Ae=$[oe+ge>>2],Ae>>31),$[te+ge>>2]=Tn(Ae,ke),se=se+1|0}function Ur(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 fs(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 us(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 Is(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 hs(te){for(var oe=0,ne=0;;){if((0|oe)==7)return 0;if(ne=oe<<10,oe=oe+1|0,fs(te+ne|0,524168))break}return 1}function ds(te,oe){for(var ne=0,Ae=0;;){if((0|ne)==8)return 0;if(Ae=ne<<10,ne=ne+1|0,fs(te+Ae|0,oe))break}return 1}function Ri(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 ls(te,oe,ne){var Ae;Ge=Ae=Ge-16|0,ce[Ae+14|0]=ne,ce[Ae+15|0]=ne>>>8,eA(te),Lt(te,oe,64),Lt(te,Ae+14|0,2),Lr(te),Ge=Ae+16|0}function Tn(te,oe){var ne=0;return it(te,oe,0,58728449),ne=it(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;)Ri((se=Ae<<10)+te|0,oe+se|0,ne+se|0),Ae=Ae+1|0}function Yi(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 Cs(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 Es(te,oe){for(var ne=0;(0|oe)!=(0|ne);)Ye((ne<<10)+te|0),ne=ne+1|0}function tn(te){for(var oe=0;(0|oe)!=8;)us((oe<<10)+te|0),oe=oe+1|0}function An(te){for(var oe=0;(0|oe)!=8;)Ue((oe<<10)+te|0),oe=oe+1|0}function tA(te){var oe;return(-1>>>(oe=31&te)&-2)<<oe|(-1<<(te=0-te&31)&-2)>>>te}function Ki(te){return te?31-Re(te-1^te)|0:32}function ys(te,oe,ne){Te(te,oe,$[ne>>2],168)}function Qs(te,oe,ne){Je($[te>>2],168,oe,ne)}function IA(te,oe,ne){Te(te,oe,$[ne>>2],136)}function Lt(te,oe,ne){Je($[te>>2],136,oe,ne)}function Lr(te){Oe($[te>>2],136)}function LA(te){rt($[te>>2])}function Mi(te){Es(te,8)}function _n(te){Es(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 qi,Gc=((qi=[]).set=function(te,oe){this[te]=oe},qi.get=function(te){return this[te]},qi);return{e:function(){},f:Gc,g:Pe,h:rt,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,Xe=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(tt(Ie,128,Ie,32),Qe(ue=ne+38912|0,Ie),ve=ne+31744|0,se=ne+96320|0;(0|Ae)!=7;)At(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;)At(Ke+(Ae<<10)|0,se,65535&ge),Ae=Ae+1|0,ge=ge+1|0;for(Cs(Ae=ne+24576|0,ve),_n(Ae),$e(ge=ne- -8192|0,ue,Ae),tn(ge),An(ge),Bs(ge,ge,Ke),vr(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(tt(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,Xe=4096-$[oe>>2]|0,ce[0|te]=Xe,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|Xe>>>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,Xe=0,nt=0,ot=0,It=0,ht=0,ct=0,gt=0,ft=0,lt=0,Bt=0,Ct=0,Et=0;for(ge=(te|=0)+2|0,Ge=se=(Ge=ue=Ge-16|0)-121072|0,de=It=se+120848|0,ye=ht=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(lt=Ae+1536|0,Ie=0;(0|Ie)!=8;){for(Bt=ve+(Ie<<10)|0,Ct=lt+Se(Ie,416)|0,ye=0;(0|ye)!=32;)Ae=Bt+(ye<<5)|0,de=Ct+Se(ye,13)|0,ct=Be[0|de],$[Ae>>2]=ct,ct|=Be[de+1|0]<<8&7936,$[Ae>>2]=ct,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,gt=Be[de+3|0]>>>2|0,$[Ae+8>>2]=gt,gt|=Be[de+4|0]<<6&8128,$[Ae+8>>2]=gt,Xe=Be[de+4|0]>>>7|0,$[Ae+12>>2]=Xe,Xe|=Be[de+5|0]<<1,$[Ae+12>>2]=Xe,Xe|=Be[de+6|0]<<9&7680,$[Ae+12>>2]=Xe,nt=Be[de+6|0]>>>4|0,$[Ae+16>>2]=nt,nt|=Be[de+7|0]<<4,$[Ae+16>>2]=nt,nt|=Be[de+8|0]<<12&4096,$[Ae+16>>2]=nt,ft=Be[de+8|0]>>>1|0,$[Ae+20>>2]=ft,ft|=Be[de+9|0]<<7&8064,$[Ae+20>>2]=ft,ot=Be[de+9|0]>>>6|0,$[Ae+24>>2]=ot,ot|=Be[de+10|0]<<2,$[Ae+24>>2]=ot,ot|=Be[de+11|0]<<10&7168,$[Ae+24>>2]=ot,Et=Be[de+11|0]>>>3|0,$[Ae+28>>2]=Et,de=Be[de+12|0],$[Ae+4>>2]=4096-Ze,$[Ae>>2]=4096-ct,$[Ae+8>>2]=4096-gt,$[Ae+12>>2]=4096-Xe,$[Ae+16>>2]=4096-nt,$[Ae+20>>2]=4096-ft,$[Ae+24>>2]=4096-ot,$[Ae+28>>2]=4096-(de<<5|Et),ye=ye+1|0;Ie=Ie+1|0}for(eA(Ae=se+12|0),Lt(Ae,ht,32),Lt(Ae,oe,ne),Lr(Ae),IA(ht=se+120944|0,64,Ae),LA(Ae),tt(lt=se+121008|0,64,De,96),Qe(se+63504|0,It),_n(Ke),Mi(ze),Mi(ve),Ie=0;;){for(de=se+49168|0,ye=Se(65535&Ie,7),oe=0;(0|oe)!=7;)Ge=ne=Ge-704|0,ls(Ae=ne+12|0,lt,oe+ye&65535),IA(De=ne+16|0,680,Ae),LA(Ae),We(de+(oe<<10)|0,De),Ge=ne+704|0,oe=oe+1|0;for(Cs(Ae=se+42e3|0,de),_n(Ae),$e(oe=se+17424|0,se+63504|0,Ae),tn(oe),An(oe),vr(oe),ve=se+9232|0,ne=0;(0|ne)!=8;){for(Ke=(ye=ne<<10)+oe|0,ze=ye+ve|0,It=oe+ye|0,ye=0;(0|ye)!=256;)$[(De=ye<<2)+Ke>>2]=Is(De+ze|0,$[De+It>>2]),ye=ye+1|0;ne=ne+1|0}for(dt(ge,oe),eA(oe=se+12|0),Lt(oe,ht,64),Lt(oe,ge,1024),Lr(oe),IA(ge,32,oe),LA(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;)Ri((ne=oe<<10)+Ae|0,ne+Ae|0,ne+de|0),oe=oe+1|0;for(ne=0;(0|ne)!=7;)us(Ae+(ne<<10)|0),ne=ne+1|0;if(!hs(Ae)&&(Yi(ne=se+1040|0,se+16|0,se+25616|0),An(ne),xt(oe=se+9232|0,oe,ne),tn(oe),!ds(oe,261768)&&(Yi(oe=se+1040|0,se+16|0,se+33808|0),An(oe),tn(oe),!ds(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(It=(Ae=oe<<10)+Ke|0,Bt=Ae+de|0,Ct=Ae+ze|0,Ae=0,ye=0;(0|Ae)!=256;)ve=(0|(ve=$[(De=Ae<<2)+Bt>>2]))==-261888&$[De+Ct>>2]!=0|ve-261889>>>0<4294443519,$[De+It>>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,Xe=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&&!hs(se+24592|0)){for(tt(ge=se+90192|0,32,Ae,2592),eA(te=se+12|0),Lt(te,ge,32),Lt(te,ye,ue),Lr(te),IA(ge,64,te),LA(te),pe(ue=se+89104|0,se+90160|0),Qe(oe=se+31760|0,se+90256|0),_n(Ae=se+24592|0),$e(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(Mi(Ae),Yi(Ae,ue,Ae),xt(ne,ne,Ae),tn(ne),An(ne),vr(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,Xe=$[ue+ve>>2],Ge=ye=Ge-16|0,ue=Ie=Is(ye+12|0,$[ue+De>>2]),Xe&&(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(dt(oe=se+90288|0,ne),eA(te),Lt(te,ge,64),Lt(te,oe,1024),Lr(te),IA(se+90128|0,32,te),LA(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 Uf={};Vs(Uf,{InMemoryKeyStorage:()=>Ar,createKeySDK:()=>gs,default:()=>vf});be();be();be();be();be();be();be();var qc={p:0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2fn,n:0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141n,h:1n,a:0n,b:7n,Gx:0x79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798n,Gy:0x483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8n},{p:ur,n:oA,Gx:Oc,Gy:Jc,b:t0}=qc,Dt=32,Ir=64,st=(z="")=>{throw new Error(z)},A0=z=>typeof z=="bigint",r0=z=>typeof z=="string",Tc=z=>z instanceof Uint8Array||ArrayBuffer.isView(z)&&z.constructor.name==="Uint8Array",dr=(z,_)=>!Tc(z)||typeof _=="number"&&_>0&&z.length!==_?st("Uint8Array expected"):z,hr=z=>new Uint8Array(z),_c=z=>Uint8Array.from(z),n0=(z,_)=>z.toString(16).padStart(_,"0"),Xn=z=>Array.from(dr(z)).map(_=>n0(_,2)).join(""),bA={_0:48,_9:57,A:65,F:70,a:97,f:102},zs=z=>{if(z>=bA._0&&z<=bA._9)return z-bA._0;if(z>=bA.A&&z<=bA.F)return z-(bA.A-10);if(z>=bA.a&&z<=bA.f)return z-(bA.a-10)},ji=z=>{let _="hex invalid";if(!r0(z))return st(_);let Z=z.length,X=Z/2;if(Z%2)return st(_);let ee=hr(X);for(let re=0,ie=0;re<X;re++,ie+=2){let ae=zs(z.charCodeAt(ie)),fe=zs(z.charCodeAt(ie+1));if(ae===void 0||fe===void 0)return st(_);ee[re]=ae*16+fe}return ee},nA=(z,_)=>dr(r0(z)?ji(z):_c(dr(z)),_),i0=()=>globalThis?.crypto,jc=()=>i0()?.subtle??st("crypto.subtle must be defined"),lr=(...z)=>{let _=hr(z.reduce((X,ee)=>X+dr(ee).length,0)),Z=0;return z.forEach(X=>{_.set(X,Z),Z+=X.length}),_},Pi=(z=Dt)=>i0().getRandomValues(hr(z)),Kr=BigInt,an=(z,_,Z,X="bad number: out of range")=>A0(z)&&_<=z&&z<Z?z:st(X),Ne=(z,_=ur)=>{let Z=z%_;return Z>=0n?Z:_+Z},vt=z=>Ne(z,oA),cn=(z,_)=>{(z===0n||_<=0n)&&st("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,_):st("no inverse")},Pc=z=>{let _=fn[z];return typeof _!="function"&&st("hashes."+z+" not set"),_},Zs=z=>z instanceof wA?z:st("Point expected"),o0=z=>Ne(Ne(z*z)*z+t0),Xs=z=>an(z,0n,ur),nn=z=>an(z,1n,ur),Ji=z=>an(z,1n,oA),Ti=z=>(z&1n)===0n,Yr=z=>Uint8Array.of(z),s0=z=>Yr(Ti(z)?2:3),Vc=z=>{let _=o0(nn(z)),Z=1n;for(let X=_,ee=(ur+1n)/4n;ee>0n;ee>>=1n)ee&1n&&(Z=Z*X%ur),X=X*X%ur;return Ne(Z*Z)===_?Z:st("sqrt invalid")},rA=class rA{constructor(_,Z,X){he(this,"px");he(this,"py");he(this,"pz");this.px=Xs(_),this.py=nn(Z),this.pz=Xs(X),Object.freeze(this)}static fromBytes(_){dr(_);let Z,X=_[0],ee=_.subarray(1),re=Wn(ee,0,Dt),ie=_.length;if(ie===Dt+1&&[2,3].includes(X)){let ae=Vc(re),fe=Ti(ae);Ti(Kr(X))!==fe&&(ae=Ne(-ae)),Z=new rA(re,ae,1n)}return ie===Ir+1&&X===4&&(Z=new rA(re,Wn(ee,Dt,Ir),1n)),Z?Z.assertValidity():st("bad point: not on curve")}equals(_){let{px:Z,py:X,pz:ee}=this,{px:re,py:ie,pz:ae}=Zs(_),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(fr)}negate(){return new rA(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}=Zs(_),fe=0n,le=t0,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 rA(Ce,ce,Ee)}multiply(_,Z=!0){if(!Z&&_===0n)return fr;if(Ji(_),_===1n)return this;if(this.equals(iA))return ng(_).p;let X=fr,ee=iA;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(fr))return{x:0n,y:0n};if(X===1n)return{x:_,y:Z};let ee=cn(X,ur);return Ne(X*ee)!==1n&&st("inverse invalid"),{x:Ne(_*ee),y:Ne(Z*ee)}}assertValidity(){let{x:_,y:Z}=this.toAffine();return nn(_),nn(Z),Ne(Z*Z)===o0(_)?this:st("bad point: not on curve")}toBytes(_=!0){let{x:Z,y:X}=this.assertValidity().toAffine(),ee=MA(Z);return _?lr(s0(X),ee):lr(Yr(4),ee,MA(X))}static fromAffine(_){let{x:Z,y:X}=_;return Z===0n&&X===0n?fr:new rA(Z,X,1n)}toHex(_){return Xn(this.toBytes(_))}static fromPrivateKey(_){return iA.multiply(on(_))}static fromHex(_){return rA.fromBytes(nA(_))}get x(){return this.toAffine().x}get y(){return this.toAffine().y}toRawBytes(_){return this.toBytes(_)}};he(rA,"BASE"),he(rA,"ZERO");var wA=rA,iA=new wA(Oc,Jc,1n),fr=new wA(0n,1n,0n);wA.BASE=iA;wA.ZERO=fr;var a0=(z,_,Z)=>iA.multiply(_,!1).add(z.multiply(Z,!1)).assertValidity(),gn=z=>Kr("0x"+(Xn(z)||"0")),Wn=(z,_,Z)=>gn(z.subarray(_,Z)),Wc=2n**256n,MA=z=>ji(n0(an(z,0n,Wc),Ir)),on=z=>{let _=A0(z)?z:gn(nA(z,Dt));return an(_,1n,oA,"private key invalid 3")},zn=z=>z>oA>>1n,c0=(z,_=!0)=>iA.multiply(on(z)).toBytes(_),sn=class z{constructor(_,Z,X){he(this,"r");he(this,"s");he(this,"recovery");this.r=Ji(_),this.s=Ji(Z),X!=null&&(this.recovery=X),Object.freeze(this)}static fromBytes(_){dr(_,Ir);let Z=Wn(_,0,Dt),X=Wn(_,Dt,Ir);return new z(Z,X)}toBytes(){let{r:_,s:Z}=this;return lr(MA(_),MA(Z))}addRecoveryBit(_){return new z(this.r,this.s,_)}hasHighS(){return zn(this.s)}toCompactRawBytes(){return this.toBytes()}toCompactHex(){return Xn(this.toBytes())}recoverPublicKey(_){return $c(this,_)}static fromCompact(_){return z.fromBytes(nA(_,Ir))}assertValidity(){return this}normalizeS(){let{r:_,s:Z,recovery:X}=this;return zn(Z)?new z(_,vt(-Z),X):this}},g0=z=>{let _=z.length*8-256;_>1024&&st("msg invalid");let Z=gn(z);return _>0?Z>>Kr(_):Z},Vi=z=>vt(g0(dr(z))),f0={lowS:!0},zc={lowS:!0},Zc=(z,_,Z=f0)=>{["der","recovered","canonical"].some(Ee=>Ee in Z)&&st("option not supported");let{lowS:X,extraEntropy:ee}=Z;X==null&&(X=!0);let re=MA,ie=Vi(nA(z)),ae=re(ie),fe=on(_),le=[re(fe),ae];ee&&le.push(ee===!0?Pi(Dt):nA(ee));let Ce=ie,ce=Ee=>{let $=g0(Ee);if(!(1n<=$&&$<oA))return;let Be=iA.multiply($).toAffine(),xe=vt(Be.x);if(xe===0n)return;let He=cn($,oA),Se=vt(He*vt(Ce+vt(fe*xe)));if(Se===0n)return;let Re=Se,we=(Be.x===xe?0:2)|Number(Be.y&1n);return X&&zn(Se)&&(Re=vt(-Se),we^=1),new sn(xe,Re,we)};return{seed:lr(...le),k2sig:ce}},Xc=z=>{let _=hr(Dt),Z=hr(Dt),X=0,ee=hr(0),re=()=>{_.fill(1),Z.fill(0),X=0},ie=1e3,ae="drbg: tried 1000 values";if(z){let fe=(...ce)=>fn.hmacSha256Async(Z,_,...ce),le=async(ce=ee)=>{Z=await fe(Yr(0),ce),_=await fe(),ce.length!==0&&(Z=await fe(Yr(1),ce),_=await fe())},Ce=async()=>(X++>=ie&&st(ae),_=await fe(),_);return async(ce,Ee)=>{re(),await le(ce);let $;for(;!($=Ee(await Ce()));)await le();return re(),$}}else{let fe=(...ce)=>Pc("hmacSha256Sync")(Z,_,...ce),le=(ce=ee)=>{Z=fe(Yr(0),ce),_=fe(),ce.length!==0&&(Z=fe(Yr(1),ce),_=fe())},Ce=()=>(X++>=ie&&st(ae),_=fe(),_);return(ce,Ee)=>{re(),le(ce);let $;for(;!($=Ee(Ce()));)le();return re(),$}}};var u0=(z,_,Z=f0)=>{let{seed:X,k2sig:ee}=Zc(z,_,Z);return Xc(!1)(X,ee)},I0=(z,_,Z,X=zc)=>{let{lowS:ee}=X;ee==null&&(ee=!0),"strict"in X&&st("option not supported");let re,ie=z&&typeof z=="object"&&"r"in z;!ie&&nA(z).length!==Ir&&st("signature must be 64 bytes");try{re=ie?new sn(z.r,z.s):sn.fromCompact(z);let ae=Vi(nA(_)),fe=wA.fromBytes(nA(Z)),{r:le,s:Ce}=re;if(ee&&zn(Ce))return!1;let ce=cn(Ce,oA),Ee=vt(ae*ce),$=vt(le*ce),Be=a0(fe,Ee,$).toAffine();return vt(Be.x)===le}catch{return!1}},$c=(z,_)=>{let{r:Z,s:X,recovery:ee}=z;[0,1,2,3].includes(ee)||st("recovery id invalid");let re=Vi(nA(_,Dt)),ie=ee===2||ee===3?Z+oA:Z;nn(ie);let ae=s0(Kr(ee)),fe=lr(ae,MA(ie)),le=wA.fromBytes(fe),Ce=cn(ie,oA),ce=vt(-re*Ce),Ee=vt(X*Ce);return a0(le,ce,Ee)};var h0=z=>{z=nA(z),(z.length<Dt+8||z.length>1024)&&st("expected 40-1024b");let _=Ne(gn(z),oA-1n);return MA(_+1n)},eg=()=>h0(Pi(Dt+16)),tg="SHA-256",fn={hexToBytes:ji,bytesToHex:Xn,concatBytes:lr,bytesToNumberBE:gn,numberToBytesBE:MA,mod:Ne,invert:cn,hmacSha256Async:async(z,..._)=>{let Z=jc(),X="HMAC",ee=await Z.importKey("raw",z,{name:X,hash:{name:tg}},!1,["sign"]);return hr(await Z.sign(X,ee,lr(..._)))},hmacSha256Sync:void 0,hashToPrivateKey:h0,randomBytes:Pi},d0={normPrivateKeyToScalar:on,isValidPrivateKey:z=>{try{return!!on(z)}catch{return!1}},randomPrivateKey:eg,precompute:(z=8,_=iA)=>(_.multiply(3n),_)},Zn=8,Ag=256,l0=Math.ceil(Ag/Zn)+1,_i=2**(Zn-1),rg=()=>{let z=[],_=iA,Z=_;for(let X=0;X<l0;X++){Z=_,z.push(Z);for(let ee=1;ee<_i;ee++)Z=Z.add(_),z.push(Z);_=Z.double()}return z},$s,e0=(z,_)=>{let Z=_.negate();return z?Z:_},ng=z=>{let _=$s||($s=rg()),Z=fr,X=iA,ee=2**Zn,re=ee,ie=Kr(ee-1),ae=Kr(Zn);for(let fe=0;fe<l0;fe++){let le=Number(z&ie);z>>=ae,le>_i&&(le-=re,z+=1n);let Ce=fe*_i,ce=Ce,Ee=Ce+Math.abs(le)-1,$=fe%2!==0,Be=le<0;le===0?X=X.add(e0($,_[ce])):Z=Z.add(e0(Be,_[Ee]))}return{p:Z,f:X}};be();be();function og(z){return z instanceof Uint8Array||ArrayBuffer.isView(z)&&z.constructor.name==="Uint8Array"}function B0(z){if(!Number.isSafeInteger(z)||z<0)throw new Error("positive integer expected, got "+z)}function qr(z,..._){if(!og(z))throw new Error("Uint8Array expected");if(_.length>0&&!_.includes(z.length))throw new Error("Uint8Array expected of length "+_+", got length="+z.length)}function C0(z){if(typeof z!="function"||typeof z.create!="function")throw new Error("Hash should be wrapped by utils.createHasher");B0(z.outputLen),B0(z.blockLen)}function Or(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 E0(z,_){qr(z);let Z=_.outputLen;if(z.length<Z)throw new Error("digestInto() expects output buffer of length at least "+Z)}function Br(...z){for(let _=0;_<z.length;_++)z[_].fill(0)}function $n(z){return new DataView(z.buffer,z.byteOffset,z.byteLength)}function jt(z,_){return z<<32-_|z>>>_}function sg(z){if(typeof z!="string")throw new Error("string expected");return new Uint8Array(new TextEncoder().encode(z))}function un(z){return typeof z=="string"&&(z=sg(z)),qr(z),z}var Mr=class{};function y0(z){let _=X=>z().update(un(X)).digest(),Z=z();return _.outputLen=Z.outputLen,_.blockLen=Z.blockLen,_.create=()=>z(),_}var ei=class extends Mr{constructor(_,Z){super(),this.finished=!1,this.destroyed=!1,C0(_);let X=un(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),Br(re)}update(_){return Or(this),this.iHash.update(_),this}digestInto(_){Or(this),qr(_,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()}},Wi=(z,_,Z)=>new ei(z,_).update(Z).digest();Wi.create=(z,_)=>new ei(z,_);be();be();be();function ag(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 Q0(z,_,Z){return z&_^~z&Z}function p0(z,_,Z){return z&_^z&Z^_&Z}var ti=class extends Mr{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=$n(this.buffer)}update(_){Or(this),_=un(_),qr(_);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=$n(_);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(_){Or(this),E0(_,this),this.finished=!0;let{buffer:Z,view:X,blockLen:ee,isLE:re}=this,{pos:ie}=this;Z[ie++]=128,Br(this.buffer.subarray(ie)),this.padOffset>ee-ie&&(this.process(X,0),ie=0);for(let ce=ie;ce<ee;ce++)Z[ce]=0;ag(X,ee-8,BigInt(this.length*8),re),this.process(X,0);let ae=$n(_),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()}},mA=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]);var cg=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]),qA=new Uint32Array(64),Ai=class extends ti{constructor(_=32){super(64,_,8,!1),this.A=mA[0]|0,this.B=mA[1]|0,this.C=mA[2]|0,this.D=mA[3]|0,this.E=mA[4]|0,this.F=mA[5]|0,this.G=mA[6]|0,this.H=mA[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)qA[ce]=_.getUint32(Z,!1);for(let ce=16;ce<64;ce++){let Ee=qA[ce-15],$=qA[ce-2],Be=jt(Ee,7)^jt(Ee,18)^Ee>>>3,xe=jt($,17)^jt($,19)^$>>>10;qA[ce]=xe+qA[ce-7]+Be+qA[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=jt(ae,6)^jt(ae,11)^jt(ae,25),$=Ce+Ee+Q0(ae,fe,le)+cg[ce]+qA[ce]|0,xe=(jt(X,2)^jt(X,13)^jt(X,22))+p0(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(){Br(qA)}destroy(){this.set(0,0,0,0,0,0,0,0),Br(this.buffer)}};var x0=y0(()=>new Ai);var Cr=x0;be();function En(z){return Array.from(z).map(_=>_.toString(16).padStart(2,"0")).join("")}function _r(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 gi(z,_){if(_==="sha256"){let Z=await Promise.resolve().then(()=>(ci(),ai));return new Uint8Array(Z.createHash("sha256").update(z).digest())}else if(_==="sha512"){let Z=await Promise.resolve().then(()=>(ci(),ai));return new Uint8Array(Z.createHash("sha512").update(z).digest())}else if(_==="sha3-256"){let Z=await Promise.resolve().then(()=>(ci(),ai));return new Uint8Array(Z.createHash("sha3-256").update(z).digest())}throw new Error(`Unsupported hash algorithm: ${_}`)}be();be();be();be();be();be();function yn(z){return z instanceof Uint8Array||ArrayBuffer.isView(z)&&z.constructor.name==="Uint8Array"}function cA(z,_=""){if(!Number.isSafeInteger(z)||z<0){let Z=_&&`"${_}" `;throw new Error(`${Z}expected integer >= 0, got ${z}`)}}function et(z,_,Z=""){let X=yn(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 fi(z){if(typeof z!="function"||typeof z.create!="function")throw new Error("Hash must wrapped by utils.createHasher");cA(z.outputLen),cA(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 $0(z,_){et(z,void 0,"digestInto() output");let Z=_.outputLen;if(z.length<Z)throw new Error('"digestInto() output" expected to be of length >='+Z)}function Qr(...z){for(let _=0;_<z.length;_++)z[_].fill(0)}function ui(z){return new DataView(z.buffer,z.byteOffset,z.byteLength)}function Vt(z,_){return z<<32-_|z>>>_}var ea=typeof Uint8Array.from([]).toHex=="function"&&typeof Uint8Array.fromHex=="function",Hg=Array.from({length:256},(z,_)=>_.toString(16).padStart(2,"0"));function pr(z){if(et(z),ea)return z.toHex();let _="";for(let Z=0;Z<z.length;Z++)_+=Hg[z[Z]];return _}var SA={_0:48,_9:57,A:65,F:70,a:97,f:102};function X0(z){if(z>=SA._0&&z<=SA._9)return z-SA._0;if(z>=SA.A&&z<=SA.F)return z-(SA.A-10);if(z>=SA.a&&z<=SA.f)return z-(SA.a-10)}function xr(z){if(typeof z!="string")throw new Error("hex string expected, got "+typeof z);if(ea)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=X0(z.charCodeAt(re)),ae=X0(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 Wt(...z){let _=0;for(let X=0;X<z.length;X++){let ee=z[X];et(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 ta(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 Ii(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=z=>({oid:Uint8Array.from([6,9,96,134,72,1,101,3,4,2,z])});function ra(z,_,Z){return z&_^~z&Z}function na(z,_,Z){return z&_^z&Z^_&Z}var hi=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=ui(this.buffer)}update(_){jr(this),et(_);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=ui(_);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),$0(_,this),this.finished=!0;let{buffer:Z,view:X,blockLen:ee,isLE:re}=this,{pos:ie}=this;Z[ie++]=128,Qr(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=ui(_),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()}},HA=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]);var kg=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),oo=class extends hi{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=Vt(Ee,7)^Vt(Ee,18)^Ee>>>3,xe=Vt($,17)^Vt($,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=Vt(ae,6)^Vt(ae,11)^Vt(ae,25),$=Ce+Ee+ra(ae,fe,le)+kg[ce]+_A[ce]|0,xe=(Vt(X,2)^Vt(X,13)^Vt(X,22))+na(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(){Qr(_A)}destroy(){this.set(0,0,0,0,0,0,0,0),Qr(this.buffer)}},so=class extends oo{constructor(){super(32);he(this,"A",HA[0]|0);he(this,"B",HA[1]|0);he(this,"C",HA[2]|0);he(this,"D",HA[3]|0);he(this,"E",HA[4]|0);he(this,"F",HA[5]|0);he(this,"G",HA[6]|0);he(this,"H",HA[7]|0)}};var ia=ta(()=>new so,Aa(1));be();be();var co=BigInt(0),ao=BigInt(1);function Qn(z,_=""){if(typeof z!="boolean"){let Z=_&&`"${_}" `;throw new Error(Z+"expected boolean, got type="+typeof z)}return z}function oa(z){if(typeof z=="bigint"){if(!di(z))throw new Error("positive bigint expected, got "+z)}else cA(z);return z}function pn(z){let _=oa(z).toString(16);return _.length&1?"0"+_:_}function sa(z){if(typeof z!="string")throw new Error("hex string expected, got "+typeof z);return z===""?co:BigInt("0x"+z)}function Pr(z){return sa(pr(z))}function go(z){return sa(pr(Gg(et(z)).reverse()))}function li(z,_){cA(_),z=oa(z);let Z=xr(z.toString(16).padStart(_*2,"0"));if(Z.length!==_)throw new Error("number too large");return Z}function fo(z,_){return li(z,_).reverse()}function Gg(z){return Uint8Array.from(z)}var di=z=>typeof z=="bigint"&&co<=z;function vg(z,_,Z){return di(z)&&di(_)&&di(Z)&&_<=z&&z<Z}function aa(z,_,Z,X){if(!vg(_,Z,X))throw new Error("expected valid "+z+": "+Z+" <= n < "+X+", got "+_)}function uo(z){let _;for(_=0;z>co;z>>=ao,_+=1);return _}var xn=z=>(ao<<BigInt(z))-ao;function ca(z,_,Z){if(cA(z,"hashLen"),cA(_,"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,Wt(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 Wt(...Se)};return(He,Se)=>{ce(),$(He);let Re;for(;!(Re=Se(Be()));)$();return ce(),Re}}function bn(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 Io(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}}be();var wt=BigInt(0),bt=BigInt(1),br=BigInt(2),ua=BigInt(3),Ia=BigInt(4),ha=BigInt(5),Ug=BigInt(7),da=BigInt(8),Lg=BigInt(9),la=BigInt(16);function zt(z,_){let Z=z%_;return Z>=wt?Z:_+Z}function St(z,_,Z){let X=z;for(;_-- >wt;)X*=X,X%=Z;return X}function ga(z,_){if(z===wt)throw new Error("invert: expected non-zero number");if(_<=wt)throw new Error("invert: expected positive modulus, got "+_);let Z=zt(z,_),X=_,ee=wt,re=bt,ie=bt,ae=wt;for(;Z!==wt;){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!==bt)throw new Error("invert: does not exist");return zt(ee,_)}function lo(z,_,Z){if(!z.eql(z.sqr(_),Z))throw new Error("Cannot find square root")}function Ba(z,_){let Z=(z.ORDER+bt)/Ia,X=z.pow(_,Z);return lo(z,X,_),X}function Ng(z,_){let Z=(z.ORDER-ha)/da,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 lo(z,ae,_),ae}function Fg(z){let _=Vr(z),Z=Ca(z),X=Z(_,_.neg(_.ONE)),ee=Z(_,X),re=Z(_,_.neg(X)),ie=(z+Ug)/la;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 lo(ae,He,fe),He}}function Ca(z){if(z<ua)throw new Error("sqrt is not defined for small field");let _=z-bt,Z=0;for(;_%br===wt;)_/=br,Z++;let X=br,ee=Vr(z);for(;fa(ee,X)===1;)if(X++>1e3)throw new Error("Cannot find square root: probably non-prime P");if(Z===1)return Ba;let re=ee.pow(X,_),ie=(_+bt)/br;return function(fe,le){if(fe.is0(le))return le;if(fa(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=bt<<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 Rg(z){return z%Ia===ua?Ba:z%da===ha?Ng:z%la===Lg?Fg(z):Ca(z)}var Yg=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function Bo(z){let _={ORDER:"bigint",BYTES:"number",BITS:"number"},Z=Yg.reduce((X,ee)=>(X[ee]="function",X),_);return bn(z,Z),z}function Kg(z,_,Z){if(Z<wt)throw new Error("invalid exponent, negatives unsupported");if(Z===wt)return z.ONE;if(Z===bt)return _;let X=z.ONE,ee=_;for(;Z>wt;)Z&bt&&(X=z.mul(X,ee)),ee=z.sqr(ee),Z>>=bt;return X}function Bi(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 fa(z,_){let Z=(z.ORDER-bt)/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 Mg(z,_){_!==void 0&&cA(_);let Z=_!==void 0?_:z.toString(2).length,X=Math.ceil(Z/8);return{nBitLength:Z,nByteLength:X}}var ho=class{constructor(_,Z={}){he(this,"ORDER");he(this,"BITS");he(this,"BYTES");he(this,"isLE");he(this,"ZERO",wt);he(this,"ONE",bt);he(this,"_lengths");he(this,"_sqrt");he(this,"_mod");if(_<=wt)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}=Mg(_,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 wt<=_&&_<this.ORDER}is0(_){return _===wt}isValidNot0(_){return!this.is0(_)&&this.isValid(_)}isOdd(_){return(_&bt)===bt}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 Kg(this,_,Z)}div(_,Z){return zt(_*ga(Z,this.ORDER),this.ORDER)}sqrN(_){return _*_}addN(_,Z){return _+Z}subN(_,Z){return _-Z}mulN(_,Z){return _*Z}inv(_){return ga(_,this.ORDER)}sqrt(_){return this._sqrt||(this._sqrt=Rg(this.ORDER)),this._sqrt(this,_)}toBytes(_){return this.isLE?fo(_,this.BYTES):li(_,this.BYTES)}fromBytes(_,Z=!1){et(_);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?go(_):Pr(_);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 Bi(this,_)}cmov(_,Z,X){return X?Z:_}};function Vr(z,_={}){return new ho(z,_)}function Ea(z){if(typeof z!="bigint")throw new Error("field order must be bigint");let _=z.toString(2).length;return Math.ceil(_/8)}function Co(z){let _=Ea(z);return _+Math.ceil(_/2)}function Eo(z,_,Z=!1){et(z);let X=z.length,ee=Ea(_),re=Co(_);if(X<16||X<re||X>1024)throw new Error("expected "+re+"-1024 bytes of input, got "+X);let ie=Z?go(z):Pr(z),ae=zt(ie,_-bt)+bt;return Z?fo(ae,ee):li(ae,ee)}var Wr=BigInt(0),wr=BigInt(1);function wn(z,_){let Z=_.negate();return z?Z:_}function xo(z,_){let Z=Bi(z.Fp,_.map(X=>X.Z));return _.map((X,ee)=>z.fromAffine(X.toAffine(Z[ee])))}function xa(z,_){if(!Number.isSafeInteger(z)||z<=0||z>_)throw new Error("invalid window size, expected [1.."+_+"], got W="+z)}function yo(z,_){xa(z,_);let Z=Math.ceil(_/z)+1,X=2**(z-1),ee=2**z,re=xn(z),ie=BigInt(z);return{windows:Z,windowSize:X,mask:re,maxNumber:ee,shiftBy:ie}}function ya(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}}var Qo=new WeakMap,ba=new WeakMap;function po(z){return ba.get(z)||1}function Qa(z){if(z!==Wr)throw new Error("invalid wNAF")}var Ci=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>Wr;)Z&wr&&(X=X.add(ee)),ee=ee.double(),Z>>=wr;return X}precomputeWindow(_,Z){let{windows:X,windowSize:ee}=yo(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=yo(_,this.bits);for(let ae=0;ae<ie.windows;ae++){let{nextN:fe,offset:le,isZero:Ce,isNeg:ce,isNegF:Ee,offsetF:$}=ya(X,ae,ie);X=fe,Ce?re=re.add(wn(Ee,Z[$])):ee=ee.add(wn(ce,Z[le]))}return Qa(X),{p:ee,f:re}}wNAFUnsafe(_,Z,X,ee=this.ZERO){let re=yo(_,this.bits);for(let ie=0;ie<re.windows&&X!==Wr;ie++){let{nextN:ae,offset:fe,isZero:le,isNeg:Ce}=ya(X,ie,re);if(X=ae,!le){let ce=Z[fe];ee=ee.add(Ce?ce.negate():ce)}}return Qa(X),ee}getPrecomputes(_,Z,X){let ee=Qo.get(Z);return ee||(ee=this.precomputeWindow(Z,_),_!==1&&(typeof X=="function"&&(ee=X(ee)),Qo.set(Z,ee))),ee}cached(_,Z,X){let ee=po(_);return this.wNAF(ee,this.getPrecomputes(ee,_,X),Z)}unsafe(_,Z,X,ee){let re=po(_);return re===1?this._unsafeLadder(_,Z,ee):this.wNAFUnsafe(re,this.getPrecomputes(re,_,X),Z,ee)}createCache(_,Z){xa(Z,this.bits),ba.set(_,Z),Qo.delete(_)}hasCache(_){return po(_)!==1}};function wa(z,_,Z,X){let ee=_,re=z.ZERO,ie=z.ZERO;for(;Z>Wr||X>Wr;)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 pa(z,_,Z){if(_){if(_.ORDER!==z)throw new Error("Field.ORDER must match order: Fp == p, Fn == n");return Bo(_),_}else return Vr(z,{isLE:Z})}function ma(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>Wr))throw new Error(`CURVE.${fe} must be positive bigint`)}let ee=pa(_.p,Z.Fp,X),re=pa(_.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 Da(z,_){return function(X){let ee=z(X);return{secretKey:ee,publicKey:_(ee)}}}be();be();var Ei=class{constructor(_,Z){he(this,"oHash");he(this,"iHash");he(this,"blockLen");he(this,"outputLen");he(this,"finished",!1);he(this,"destroyed",!1);if(fi(_),et(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),Qr(ee)}update(_){return jr(this),this.iHash.update(_),this}digestInto(_){jr(this),et(_,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()}},bo=(z,_,Z)=>new Ei(z,_).update(Z).digest();bo.create=(z,_)=>new Ei(z,_);var Sa=(z,_)=>(z+(z>=0?_:-_)/Ha)/_;function qg(z,_,Z){let[[X,ee],[re,ie]]=_,ae=Sa(ie*z,Z),fe=Sa(-ee*z,Z),le=z-ae*X-fe*re,Ce=-ae*ee-fe*ie,ce=le<kA,Ee=Ce<kA;ce&&(le=-le),Ee&&(Ce=-Ce);let $=xn(Math.ceil(uo(Z)/2))+zr;if(le<kA||le>=$||Ce<kA||Ce>=$)throw new Error("splitScalar (endomorphism): failed, k="+z);return{k1neg:ce,k1:le,k2neg:Ee,k2:Ce}}function mo(z){if(!["compact","recovered","der"].includes(z))throw new Error('Signature format must be "compact", "recovered", or "der"');return z}function wo(z,_){let Z={};for(let X of Object.keys(_))Z[X]=z[X]===void 0?_[X]:z[X];return Qn(Z.lowS,"lowS"),Qn(Z.prehash,"prehash"),Z.format!==void 0&&mo(Z.format),Z}var Do=class extends Error{constructor(_=""){super(_)}},jA={Err:Do,_tlv:{encode:(z,_)=>{let{Err:Z}=jA;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=pn(X);if(ee.length/2&128)throw new Z("tlv.encode: long form length too big");let re=X>127?pn(ee.length/2|128):"";return pn(z)+re+ee+_},decode(z,_){let{Err:Z}=jA,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:_}=jA;if(z<kA)throw new _("integer: negative integers are not allowed");let Z=pn(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:_}=jA;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 Pr(z)}},toSig(z){let{Err:_,_int:Z,_tlv:X}=jA,ee=et(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}=jA,X=_.encode(2,Z.encode(z.r)),ee=_.encode(2,Z.encode(z.s)),re=X+ee;return _.encode(48,re)}},kA=BigInt(0),zr=BigInt(1),Ha=BigInt(2),yi=BigInt(3),Og=BigInt(4);function ka(z,_={}){let Z=ma("weierstrass",z,_),{Fp:X,Fn:ee}=Z,re=Z.CURVE,{h:ie,n:ae}=re;bn(_,{},{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=va(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(Qn(Qe,"isCompressed"),Qe){Ce();let Ye=!X.isOdd(Fe);return Wt(Ga(Ye),me)}else return Wt(Uint8Array.of(4),me,X.toBytes(Fe))}function Ee(Te){et(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(at){let $e=at instanceof Error?": "+at.message:"";throw new Error("bad point: is not on curve, sqrt error"+$e)}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,yi),Og),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 qg(Te,fe.basises,ee.ORDER)}let Ge=Io((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=Io(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=wn(Ue,pe),Qe=wn(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(et(pe,void 0,"point")));return Qe.assertValidity(),Qe}static fromHex(pe){return Je.fromBytes(xr(pe))}get x(){return this.toAffine().x}get y(){return this.toAffine().y}precompute(pe=8,Qe=!0){return tt.createCache(this,pe),Qe||this.multiply(yi),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,yi),{X:Fe,Y:me,Z:Ye}=this,Oe=X.ZERO,Le=X.ZERO,_e=X.ZERO,We=X.mul(Fe,Fe),at=X.mul(me,me),$e=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,$e),Le=X.add(Oe,Le),Oe=X.sub(at,Le),Le=X.add(at,Le),Le=X.mul(Oe,Le),Oe=X.mul(je,Oe),_e=X.mul(Ue,_e),$e=X.mul(pe,$e),je=X.sub(We,$e),je=X.mul(pe,je),je=X.add(je,_e),_e=X.add(We,We),We=X.add(_e,We),We=X.add(We,$e),We=X.mul(We,je),Le=X.add(Le,We),$e=X.mul(me,Ye),$e=X.add($e,$e),We=X.mul($e,je),Oe=X.sub(Oe,We),_e=X.mul($e,at),_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,at=re.a,$e=X.mul(re.b,yi),je=X.mul(Qe,me),ut=X.mul(Ue,Ye),it=X.mul(Fe,Oe),xt=X.add(Qe,Ue),At=X.add(me,Ye);xt=X.mul(xt,At),At=X.add(je,ut),xt=X.sub(xt,At),At=X.add(Qe,Fe);let dt=X.add(me,Oe);return At=X.mul(At,dt),dt=X.add(je,it),At=X.sub(At,dt),dt=X.add(Ue,Fe),Le=X.add(Ye,Oe),dt=X.mul(dt,Le),Le=X.add(ut,it),dt=X.sub(dt,Le),We=X.mul(at,At),Le=X.mul($e,it),We=X.add(Le,We),Le=X.sub(ut,We),We=X.add(ut,We),_e=X.mul(Le,We),ut=X.add(je,je),ut=X.add(ut,je),it=X.mul(at,it),At=X.mul($e,At),ut=X.add(ut,it),it=X.sub(je,it),it=X.mul(at,it),At=X.add(At,it),je=X.mul(ut,At),_e=X.add(_e,je),je=X.mul(dt,At),Le=X.mul(xt,Le),Le=X.sub(Le,je),je=X.mul(xt,ut),We=X.mul(dt,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=>tt.cached(this,Ye,Oe=>xo(Je,Oe));if(Qe){let{k1neg:Ye,k1:Oe,k2neg:Le,k2:_e}=Ve(pe),{p:We,f:at}=me(Oe),{p:$e,f:je}=me(_e);Fe=at.add(je),Ue=Pe(Qe.beta,We,$e,Ye,Le)}else{let{p:Ye,f:Oe}=me(pe);Ue=Ye,Fe=Oe}return xo(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===kA||Ue.is0())return Je.ZERO;if(pe===zr)return Ue;if(tt.hasCache(this))return this.multiply(pe);if(Qe){let{k1neg:Fe,k1:me,k2neg:Ye,k2:Oe}=Ve(pe),{p1:Le,p2:_e}=wa(Je,Ue,me,Oe);return Pe(Qe.beta,Le,_e,Fe,Ye)}else return tt.unsafe(Ue,pe)}toAffine(pe){return Ge(this,pe)}isTorsionFree(){let{isTorsionFree:pe}=_;return ie===zr?!0:pe?pe(Je,this):tt.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 Qn(pe,"isCompressed"),this.assertValidity(),$(Je,this,pe)}toHex(pe=!0){return pr(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,rt=ee.BITS,tt=new Ci(qe,_.endo?Math.ceil(rt/2):rt);return qe.BASE.precompute(8),qe}function Ga(z){return Uint8Array.of(z?2:3)}function va(z,_){return{secretKey:_.BYTES,publicKey:1+z.BYTES,publicKeyUncompressed:1+2*z.BYTES,publicKeyHasPrefix:!0,signature:2*_.BYTES}}function Jg(z,_={}){let{Fn:Z}=z,X=_.randomBytes||Ii,ee=Object.assign(va(z.Fp,Z),{seed:Co(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 Eo(et($,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(!yn($)||"_lengths"in Z&&Z._lengths||Be===xe)return;let Se=et($,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=Da(ae,fe);return Object.freeze({getPublicKey:fe,getSharedSecret:Ce,keygen:Ee,Point:z,utils:ce,lengths:ee})}function Ua(z,_,Z={}){fi(_),bn(Z,{},{hmac:"function",lowS:"boolean",randomBytes:"function",bits2int:"function",bits2int_modN:"function"}),Z=Object.assign({},Z);let X=Z.randomBytes||Ii,ee=Z.hmac||((pe,Qe)=>bo(_,pe,Qe)),{Fp:re,Fn:ie}=z,{ORDER:ae,BITS:fe}=ie,{keygen:le,getPublicKey:Ce,getSharedSecret:ce,utils:Ee,lengths:$}=Jg(z,Z),Be={prehash:!0,lowS:typeof Z.lowS=="boolean"?Z.lowS:!0,format:"compact",extraEntropy:!1},xe=ae*Ha<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){mo(Qe);let Ue=$.signature,Fe=Qe==="compact"?Ue:Qe==="recovered"?Ue+1:void 0;return et(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}=jA.toSig(et(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(xr(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(Wt(Ga((me&1)===0),Oe)),_e=ie.inv(Ye),We=Ge(et(Qe,void 0,"msgHash")),at=ie.create(-We*_e),$e=ie.create(Fe*_e),je=z.BASE.multiplyUnsafe(at).add(Le.multiplyUnsafe($e));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(mo(Qe),Qe==="der")return xr(jA.hexFromSig(this));let{r:Ue,s:Fe}=this,me=ie.toBytes(Ue),Ye=ie.toBytes(Fe);return Qe==="recovered"?(Re(),Wt(Uint8Array.of(this.assertRecovery()),me,Ye)):Wt(me,Ye)}toHex(Qe){return pr(this.toBytes(Qe))}}let Ve=Z.bits2int||function(Qe){if(Qe.length>8192)throw new Error("input is too large");let Ue=Pr(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=xn(fe);function Pe(pe){return aa("num < 2^"+fe,pe,kA,ke),ie.toBytes(pe)}function qe(pe,Qe){return et(pe,void 0,"message"),Qe?et(_(pe),void 0,"prehashed message"):pe}function rt(pe,Qe,Ue){let{lowS:Fe,prehash:me,extraEntropy:Ye}=wo(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(et(je,void 0,"extraEntropy"))}let We=Wt(..._e),at=Oe;function $e(je){let ut=Ve(je);if(!ie.isValidNot0(ut))return;let it=ie.inv(ut),xt=z.BASE.multiply(ut).toAffine(),At=ie.create(xt.x);if(At===kA)return;let dt=ie.create(it*ie.create(at+At*Le));if(dt===kA)return;let vr=(xt.x===At?0:2)|Number(xt.y&zr),eA=dt;return Fe&&He(dt)&&(eA=ie.neg(dt),vr^=1),new Me(At,eA,xe?void 0:vr)}return{seed:We,k2sig:$e}}function tt(pe,Qe,Ue={}){let{seed:Fe,k2sig:me}=rt(pe,Qe,Ue);return ca(_.outputLen,ie.BYTES,ee)(Fe,me).toBytes(Ue.format)}function Je(pe,Qe,Ue,Fe={}){let{lowS:me,prehash:Ye,format:Oe}=wo(Fe,Be);if(Ue=et(Ue,void 0,"publicKey"),Qe=qe(Qe,Ye),!yn(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:at}=Le,$e=Ge(Qe),je=ie.inv(at),ut=ie.create($e*je),it=ie.create(We*je),xt=z.BASE.multiplyUnsafe(ut).add(_e.multiplyUnsafe(it));return xt.is0()?!1:ie.create(xt.x)===We}catch{return!1}}function Te(pe,Qe,Ue={}){let{prehash:Fe}=wo(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:tt,verify:Je,recoverPublicKey:Te,Signature:Me,hash:_})}var Ho={p:BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),n:BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),h:BigInt(1),a:BigInt(0),b:BigInt(7),Gx:BigInt("0x79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798"),Gy:BigInt("0x483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8")},Tg={beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),basises:[[BigInt("0x3086d221a7d46bcde86c90e49284eb15"),-BigInt("0xe4437ed6010e88286f547fa90abfe4c3")],[BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),BigInt("0x3086d221a7d46bcde86c90e49284eb15")]]};var La=BigInt(2);function _g(z){let _=Ho.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=St(Ce,Z,_)*Ce%_,Ee=St(ce,Z,_)*Ce%_,$=St(Ee,La,_)*le%_,Be=St($,ee,_)*$%_,xe=St(Be,re,_)*Be%_,He=St(xe,ae,_)*xe%_,Se=St(He,fe,_)*He%_,Re=St(Se,ae,_)*xe%_,we=St(Re,Z,_)*Ce%_,Me=St(we,ie,_)*Be%_,Ve=St(Me,X,_)*le%_,Ge=St(Ve,La,_);if(!So.eql(So.sqr(Ge),z))throw new Error("Cannot find square root");return Ge}var So=Vr(Ho.p,{sqrt:_g}),jg=ka(Ho,{Fp:So,endo:Tg}),mr=Ua(jg,ia);be();be();function Pg(z){return z instanceof Uint8Array||ArrayBuffer.isView(z)&&z.constructor.name==="Uint8Array"}function Na(z,_=""){if(!Number.isSafeInteger(z)||z<0){let Z=_&&`"${_}" `;throw new Error(`${Z}expected integer >= 0, got ${z}`)}}function Ht(z,_,Z=""){let X=Pg(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 Fa(z){if(typeof z!="function"||typeof z.create!="function")throw new Error("Hash must wrapped by utils.createHasher");Na(z.outputLen),Na(z.blockLen)}function Zr(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 Ra(z,_){Ht(z,void 0,"digestInto() output");let Z=_.outputLen;if(z.length<Z)throw new Error('"digestInto() output" expected to be of length >='+Z)}function Ut(...z){for(let _=0;_<z.length;_++)z[_].fill(0)}function PA(z){return new DataView(z.buffer,z.byteOffset,z.byteLength)}function Zt(z,_){return z<<32-_|z>>>_}function mn(z,_){return z<<_|z>>>32-_>>>0}function Dn(...z){let _=0;for(let X=0;X<z.length;X++){let ee=z[X];Ht(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 Sn(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 ko=z=>({oid:Uint8Array.from([6,9,96,134,72,1,101,3,4,2,z])});var Qi=class{constructor(_,Z){he(this,"oHash");he(this,"iHash");he(this,"blockLen");he(this,"outputLen");he(this,"finished",!1);he(this,"destroyed",!1);if(Fa(_),Ht(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),Ut(ee)}update(_){return Zr(this),this.iHash.update(_),this}digestInto(_){Zr(this),Ht(_,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()}},pi=(z,_,Z)=>new Qi(z,_).update(Z).digest();pi.create=(z,_)=>new Qi(z,_);be();be();function Go(z,_,Z){return z&_^~z&Z}function vo(z,_,Z){return z&_^z&Z^_&Z}var 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=PA(this.buffer)}update(_){Zr(this),Ht(_);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=PA(_);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(_){Zr(this),Ra(_,this),this.finished=!0;let{buffer:Z,view:X,blockLen:ee,isLE:re}=this,{pos:ie}=this;Z[ie++]=128,Ut(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=PA(_),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()}},GA=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]);var Qt=Uint32Array.from([1779033703,4089235720,3144134277,2227873595,1013904242,4271175723,2773480762,1595750129,1359893119,2917565137,2600822924,725511199,528734635,4215389547,1541459225,327033209]);var Vg=Uint8Array.from([7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8]),Ka=Uint8Array.from(new Array(16).fill(0).map((z,_)=>_)),Wg=Ka.map(z=>(9*z+5)%16),Ma=(()=>{let Z=[[Ka],[Wg]];for(let X=0;X<4;X++)for(let ee of Z)ee.push(ee[X].map(re=>Vg[re]));return Z})(),qa=Ma[0],Oa=Ma[1],Ja=[[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)),zg=qa.map((z,_)=>z.map(Z=>Ja[_][Z])),Zg=Oa.map((z,_)=>z.map(Z=>Ja[_][Z])),Xg=Uint32Array.from([0,1518500249,1859775393,2400959708,2840853838]),$g=Uint32Array.from([1352829926,1548603684,1836072691,2053994217,0]);function Ya(z,_,Z,X){return z===0?_^Z^X:z===1?_&Z|~_&X:z===2?(_|~Z)^X:z===3?_&X|Z&~X:_^(Z|~X)}var xi=new Uint32Array(16),Uo=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)xi[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=Xg[Be],Se=$g[Be],Re=qa[Be],we=Oa[Be],Me=zg[Be],Ve=Zg[Be];for(let Ge=0;Ge<16;Ge++){let ke=mn(ee+Ya(Be,ie,fe,Ce)+xi[Re[Ge]]+He,Me[Ge])+Ee|0;ee=Ee,Ee=Ce,Ce=mn(fe,10)|0,fe=ie,ie=ke}for(let Ge=0;Ge<16;Ge++){let ke=mn(re+Ya(xe,ae,le,ce)+xi[we[Ge]]+Se,Ve[Ge])+$|0;re=$,$=ce,ce=mn(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(){Ut(xi)}destroy(){this.destroyed=!0,Ut(this.buffer),this.set(0,0,0,0,0)}},Ta=Sn(()=>new Uo);be();be();var bi=BigInt(4294967295),_a=BigInt(32);function ef(z,_=!1){return _?{h:Number(z&bi),l:Number(z>>_a&bi)}:{h:Number(z>>_a&bi)|0,l:Number(z&bi)|0}}function ja(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}=ef(z[re],_);[X[re],ee[re]]=[ie,ae]}return[X,ee]}var Lo=(z,_,Z)=>z>>>Z,No=(z,_,Z)=>z<<32-Z|_>>>Z,Sr=(z,_,Z)=>z>>>Z|_<<32-Z,Hr=(z,_,Z)=>z<<32-Z|_>>>Z,Hn=(z,_,Z)=>z<<64-Z|_>>>Z-32,kn=(z,_,Z)=>z>>>Z-32|_<<64-Z;function gA(z,_,Z,X){let ee=(_>>>0)+(X>>>0);return{h:z+Z+(ee/2**32|0)|0,l:ee|0}}var Pa=(z,_,Z)=>(z>>>0)+(_>>>0)+(Z>>>0),Va=(z,_,Z,X)=>_+Z+X+(z/2**32|0)|0,Wa=(z,_,Z,X)=>(z>>>0)+(_>>>0)+(Z>>>0)+(X>>>0),za=(z,_,Z,X,ee)=>_+Z+X+ee+(z/2**32|0)|0,Za=(z,_,Z,X,ee)=>(z>>>0)+(_>>>0)+(Z>>>0)+(X>>>0)+(ee>>>0),Xa=(z,_,Z,X,ee,re)=>_+Z+X+ee+re+(z/2**32|0)|0;var 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]),VA=new Uint32Array(64),Fo=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)VA[ce]=_.getUint32(Z,!1);for(let ce=16;ce<64;ce++){let Ee=VA[ce-15],$=VA[ce-2],Be=Zt(Ee,7)^Zt(Ee,18)^Ee>>>3,xe=Zt($,17)^Zt($,19)^$>>>10;VA[ce]=xe+VA[ce-7]+Be+VA[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=Zt(ae,6)^Zt(ae,11)^Zt(ae,25),$=Ce+Ee+Go(ae,fe,le)+Af[ce]+VA[ce]|0,xe=(Zt(X,2)^Zt(X,13)^Zt(X,22))+vo(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(){Ut(VA)}destroy(){this.set(0,0,0,0,0,0,0,0),Ut(this.buffer)}},Ro=class extends Fo{constructor(){super(32);he(this,"A",GA[0]|0);he(this,"B",GA[1]|0);he(this,"C",GA[2]|0);he(this,"D",GA[3]|0);he(this,"E",GA[4]|0);he(this,"F",GA[5]|0);he(this,"G",GA[6]|0);he(this,"H",GA[7]|0)}};var $a=ja(["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))),rf=$a[0],nf=$a[1],WA=new Uint32Array(80),zA=new Uint32Array(80),Yo=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)WA[we]=_.getUint32(Z),zA[we]=_.getUint32(Z+=4);for(let we=16;we<80;we++){let Me=WA[we-15]|0,Ve=zA[we-15]|0,Ge=Sr(Me,Ve,1)^Sr(Me,Ve,8)^Lo(Me,Ve,7),ke=Hr(Me,Ve,1)^Hr(Me,Ve,8)^No(Me,Ve,7),Pe=WA[we-2]|0,qe=zA[we-2]|0,rt=Sr(Pe,qe,19)^Hn(Pe,qe,61)^Lo(Pe,qe,6),tt=Hr(Pe,qe,19)^kn(Pe,qe,61)^No(Pe,qe,6),Je=Wa(ke,tt,zA[we-7],zA[we-16]),Te=za(Je,Ge,rt,WA[we-7],WA[we-16]);WA[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)^Hn(ce,Ee,41),Ve=Hr(ce,Ee,14)^Hr(ce,Ee,18)^kn(ce,Ee,41),Ge=ce&$^~ce&xe,ke=Ee&Be^~Ee&He,Pe=Za(Re,Ve,ke,nf[we],zA[we]),qe=Xa(Pe,Se,Me,Ge,rf[we],WA[we]),rt=Pe|0,tt=Sr(X,ee,28)^Hn(X,ee,34)^Hn(X,ee,39),Je=Hr(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}=gA(le|0,Ce|0,qe|0,rt|0),le=ae|0,Ce=fe|0,ae=re|0,fe=ie|0,re=X|0,ie=ee|0;let Qe=Pa(rt,Je,pe);X=Va(Qe,qe,tt,Te),ee=Qe|0}({h:X,l:ee}=gA(this.Ah|0,this.Al|0,X|0,ee|0)),{h:re,l:ie}=gA(this.Bh|0,this.Bl|0,re|0,ie|0),{h:ae,l:fe}=gA(this.Ch|0,this.Cl|0,ae|0,fe|0),{h:le,l:Ce}=gA(this.Dh|0,this.Dl|0,le|0,Ce|0),{h:ce,l:Ee}=gA(this.Eh|0,this.El|0,ce|0,Ee|0),{h:$,l:Be}=gA(this.Fh|0,this.Fl|0,$|0,Be|0),{h:xe,l:He}=gA(this.Gh|0,this.Gl|0,xe|0,He|0),{h:Se,l:Re}=gA(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(){Ut(WA,zA)}destroy(){Ut(this.buffer),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}},Ko=class extends Yo{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)}};var Mo=Sn(()=>new Ro,ko(1));var qo=Sn(()=>new Ko,ko(3));be();function wi(z){return z instanceof Uint8Array||ArrayBuffer.isView(z)&&z.constructor.name==="Uint8Array"}function ec(z,_){return Array.isArray(_)?_.length===0?!0:z?_.every(Z=>typeof Z=="string"):_.every(Z=>Number.isSafeInteger(Z)):!1}function of(z){if(typeof z!="function")throw new Error("function expected");return!0}function mi(z,_){if(typeof _!="string")throw new Error(`${z}: string expected`);return!0}function Xr(z){if(!Number.isSafeInteger(z))throw new Error(`invalid integer: ${z}`)}function Di(z){if(!Array.isArray(z))throw new Error("array expected")}function Si(z,_){if(!ec(!0,_))throw new Error(`${z}: array of strings expected`)}function tc(z,_){if(!ec(!1,_))throw new Error(`${z}: array of numbers expected`)}function _o(...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 Ac(z){let _=typeof z=="string"?z.split(""):z,Z=_.length;Si("alphabet",_);let X=new Map(_.map((ee,re)=>[ee,re]));return{encode:ee=>(Di(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=>(Di(ee),ee.map(re=>{mi("alphabet.decode",re);let ie=X.get(re);if(ie===void 0)throw new Error(`Unknown letter: "${re}". Allowed: ${z}`);return ie}))}}function rc(z=""){return mi("join",z),{encode:_=>(Si("join.decode",_),_.join(z)),decode:_=>(mi("join.decode",_),_.split(z))}}function sf(z,_="="){return Xr(z),mi("padding",_),{encode(Z){for(Si("padding.encode",Z);Z.length*z%8;)Z.push(_);return Z},decode(Z){Si("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 Jo(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(Di(z),!z.length)return[];let X=0,ee=[],re=Array.from(z,ae=>{if(Xr(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()}var nc=(z,_)=>_===0?z:nc(_,z%_),Hi=(z,_)=>z+(_-nc(z,_)),Oo=(()=>{let z=[];for(let _=0;_<40;_++)z.push(2**_);return z})();function To(z,_,Z,X){if(Di(z),_<=0||_>32)throw new Error(`convertRadix2: wrong from=${_}`);if(Z<=0||Z>32)throw new Error(`convertRadix2: wrong to=${Z}`);if(Hi(_,Z)>32)throw new Error(`convertRadix2: carry overflow from=${_} to=${Z} carryBits=${Hi(_,Z)}`);let ee=0,re=0,ie=Oo[_],ae=Oo[Z]-1,fe=[];for(let le of z){if(Xr(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=Oo[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 ic(z){Xr(z);let _=2**8;return{encode:Z=>{if(!wi(Z))throw new Error("radix.encode input should be Uint8Array");return Jo(Array.from(Z),_,z)},decode:Z=>(tc("radix.decode",Z),Uint8Array.from(Jo(Z,z,_)))}}function af(z,_=!1){if(Xr(z),z<=0||z>32)throw new Error("radix2: bits should be in (0..32]");if(Hi(8,z)>32||Hi(z,8)>32)throw new Error("radix2: carry overflow");return{encode:Z=>{if(!wi(Z))throw new Error("radix2.encode input should be Uint8Array");return To(Array.from(Z),8,z,!_)},decode:Z=>(tc("radix2.decode",Z),Uint8Array.from(To(Z,z,8,_)))}}function oc(z,_){return Xr(z),of(_),{encode(Z){if(!wi(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(!wi(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 Gn={alphabet:Ac,chain:_o,checksum:oc,convertRadix:Jo,convertRadix2:To,radix:ic,radix2:af,join:rc,padding:sf};var cf=z=>_o(ic(58),Ac(z),rc("")),gf=cf("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz");var sc=z=>_o(oc(4,_=>z(z(_))),gf);var Un=mr.Point,{Fn:vn}=Un,jo=sc(Mo),ff=Uint8Array.from("Bitcoin seed".split(""),z=>z.charCodeAt(0)),Po={private:76066276,public:76067358},Vo=2147483648,uf=z=>Ta(Mo(z)),If=z=>PA(z).getUint32(0,!1),ki=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 PA(_).setUint32(0,z,!1),_},Gi=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||Po,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=Un.fromBytes(_.publicKey).toBytes(!0);else throw new Error("HDKey: no public or private key provided");this.pubHash=uf(this._publicKey)}get fingerprint(){if(!this.pubHash)throw new Error("No publicKey set!");return If(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 jo.encode(this.serialize(this.versions.private,Dn(Uint8Array.of(0),_)))}get publicExtendedKey(){if(!this._publicKey)throw new Error("No public key");return jo.encode(this.serialize(this.versions.public,this._publicKey))}static fromMasterSeed(_,Z=Po){if(Ht(_),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=pi(qo,ff,_),ee=X.slice(0,32),re=X.slice(32);return new z({versions:Z,chainCode:re,privateKey:ee})}static fromExtendedKey(_,Z=Po){let X=jo.decode(_),ee=PA(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>=Vo)throw new Error("Invalid index");re[2]==="'"&&(ae+=Vo),X=X.deriveChild(ae)}return X}deriveChild(_){if(!this._publicKey||!this.chainCode)throw new Error("No publicKey or chainCode set");let Z=ki(_);if(_>=Vo){let fe=this._privateKey;if(!fe)throw new Error("Could not derive hardened child key");Z=Dn(Uint8Array.of(0),fe,Z)}else Z=Dn(this._publicKey,Z);let X=pi(qo,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=vn.fromBytes(ee);try{if(this._privateKey){let fe=vn.create(vn.fromBytes(this._privateKey)+ae);if(!vn.isValidNot0(fe))throw new Error("The tweak was out of range or the resulted private key is invalid");ie.privateKey=vn.toBytes(fe)}else{let fe=Un.fromBytes(this._publicKey).add(Un.BASE.multiply(ae));if(fe.equals(Un.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 Ht(_,32),mr.sign(_,this._privateKey,{prehash:!1})}verify(_,Z){if(Ht(_,32),Ht(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 Ht(Z,33),Dn(ki(_),new Uint8Array([this.depth]),ki(this.parentFingerprint),ki(this.index),this.chainCode,Z)}};be();be();be();be();function hf(z){return z instanceof Uint8Array||ArrayBuffer.isView(z)&&z.constructor.name==="Uint8Array"}function ZA(z,_=""){if(!Number.isSafeInteger(z)||z<0){let Z=_&&`"${_}" `;throw new Error(`${Z}expected integer >= 0, got ${z}`)}}function vA(z,_,Z=""){let X=hf(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 vi(z){if(typeof z!="function"||typeof z.create!="function")throw new Error("Hash must wrapped by utils.createHasher");ZA(z.outputLen),ZA(z.blockLen)}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 ac(z,_){vA(z,void 0,"digestInto() output");let Z=_.outputLen;if(z.length<Z)throw new Error('"digestInto() output" expected to be of length >='+Z)}function Xt(...z){for(let _=0;_<z.length;_++)z[_].fill(0)}function en(z){return new DataView(z.buffer,z.byteOffset,z.byteLength)}function $t(z,_){return z<<32-_|z>>>_}function df(z){if(typeof z!="string")throw new Error("string expected");return new Uint8Array(new TextEncoder().encode(z))}function Wo(z,_=""){return typeof z=="string"?df(z):vA(z,void 0,_)}function cc(z,_){if(_!==void 0&&{}.toString.call(_)!=="[object Object]")throw new Error("options must be object or undefined");return Object.assign(z,_)}function zo(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 gc(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 Zo=z=>({oid:Uint8Array.from([6,9,96,134,72,1,101,3,4,2,z])});var Ui=class{constructor(_,Z){he(this,"oHash");he(this,"iHash");he(this,"blockLen");he(this,"outputLen");he(this,"finished",!1);he(this,"destroyed",!1);if(vi(_),vA(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),Xt(ee)}update(_){return $r(this),this.iHash.update(_),this}digestInto(_){$r(this),vA(_,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()}},Xo=(z,_,Z)=>new Ui(z,_).update(Z).digest();Xo.create=(z,_)=>new Ui(z,_);function lf(z,_,Z,X){vi(z);let ee=cc({dkLen:32,asyncTick:10},X),{c:re,dkLen:ie,asyncTick:ae}=ee;if(ZA(re,"c"),ZA(ie,"dkLen"),ZA(ae,"asyncTick"),re<1)throw new Error("iterations (c) must be >= 1");let fe=Wo(_,"password"),le=Wo(Z,"salt"),Ce=new Uint8Array(ie),ce=Xo.create(z,fe),Ee=ce._cloneInto().update(le);return{c:re,dkLen:ie,asyncTick:ae,DK:Ce,PRF:ce,PRFSalt:Ee}}function Bf(z,_,Z,X,ee){return z.destroy(),_.destroy(),X&&X.destroy(),Xt(ee),Z}function fc(z,_,Z,X){let{c:ee,dkLen:re,DK:ie,PRF:ae,PRFSalt:fe}=lf(z,_,Z,X),le,Ce=new Uint8Array(4),ce=en(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 Bf(ae,fe,ie,le,Ee)}be();be();function uc(z,_,Z){return z&_^~z&Z}function Ic(z,_,Z){return z&_^z&Z^_&Z}var Ln=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=en(this.buffer)}update(_){$r(this),vA(_);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=en(_);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),ac(_,this),this.finished=!0;let{buffer:Z,view:X,blockLen:ee,isLE:re}=this,{pos:ie}=this;Z[ie++]=128,Xt(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=en(_),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()}},UA=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]);var pt=Uint32Array.from([1779033703,4089235720,3144134277,2227873595,1013904242,4271175723,2773480762,1595750129,1359893119,2917565137,2600822924,725511199,528734635,4215389547,1541459225,327033209]);be();var Li=BigInt(4294967295),hc=BigInt(32);function Cf(z,_=!1){return _?{h:Number(z&Li),l:Number(z>>hc&Li)}:{h:Number(z>>hc&Li)|0,l:Number(z&Li)|0}}function dc(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}=Cf(z[re],_);[X[re],ee[re]]=[ie,ae]}return[X,ee]}var $o=(z,_,Z)=>z>>>Z,es=(z,_,Z)=>z<<32-Z|_>>>Z,kr=(z,_,Z)=>z>>>Z|_<<32-Z,Gr=(z,_,Z)=>z<<32-Z|_>>>Z,Nn=(z,_,Z)=>z<<64-Z|_>>>Z-32,Fn=(z,_,Z)=>z>>>Z-32|_<<64-Z;function fA(z,_,Z,X){let ee=(_>>>0)+(X>>>0);return{h:z+Z+(ee/2**32|0)|0,l:ee|0}}var lc=(z,_,Z)=>(z>>>0)+(_>>>0)+(Z>>>0),Bc=(z,_,Z,X)=>_+Z+X+(z/2**32|0)|0,Cc=(z,_,Z,X)=>(z>>>0)+(_>>>0)+(Z>>>0)+(X>>>0),Ec=(z,_,Z,X,ee)=>_+Z+X+ee+(z/2**32|0)|0,yc=(z,_,Z,X,ee)=>(z>>>0)+(_>>>0)+(Z>>>0)+(X>>>0)+(ee>>>0),Qc=(z,_,Z,X,ee,re)=>_+Z+X+ee+re+(z/2**32|0)|0;var yf=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]),XA=new Uint32Array(64),ts=class extends Ln{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)XA[ce]=_.getUint32(Z,!1);for(let ce=16;ce<64;ce++){let Ee=XA[ce-15],$=XA[ce-2],Be=$t(Ee,7)^$t(Ee,18)^Ee>>>3,xe=$t($,17)^$t($,19)^$>>>10;XA[ce]=xe+XA[ce-7]+Be+XA[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=$t(ae,6)^$t(ae,11)^$t(ae,25),$=Ce+Ee+uc(ae,fe,le)+yf[ce]+XA[ce]|0,xe=($t(X,2)^$t(X,13)^$t(X,22))+Ic(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(){Xt(XA)}destroy(){this.set(0,0,0,0,0,0,0,0),Xt(this.buffer)}},As=class extends ts{constructor(){super(32);he(this,"A",UA[0]|0);he(this,"B",UA[1]|0);he(this,"C",UA[2]|0);he(this,"D",UA[3]|0);he(this,"E",UA[4]|0);he(this,"F",UA[5]|0);he(this,"G",UA[6]|0);he(this,"H",UA[7]|0)}};var pc=dc(["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))),Qf=pc[0],pf=pc[1],$A=new Uint32Array(80),er=new Uint32Array(80),rs=class extends Ln{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)$A[we]=_.getUint32(Z),er[we]=_.getUint32(Z+=4);for(let we=16;we<80;we++){let Me=$A[we-15]|0,Ve=er[we-15]|0,Ge=kr(Me,Ve,1)^kr(Me,Ve,8)^$o(Me,Ve,7),ke=Gr(Me,Ve,1)^Gr(Me,Ve,8)^es(Me,Ve,7),Pe=$A[we-2]|0,qe=er[we-2]|0,rt=kr(Pe,qe,19)^Nn(Pe,qe,61)^$o(Pe,qe,6),tt=Gr(Pe,qe,19)^Fn(Pe,qe,61)^es(Pe,qe,6),Je=Cc(ke,tt,er[we-7],er[we-16]),Te=Ec(Je,Ge,rt,$A[we-7],$A[we-16]);$A[we]=Te|0,er[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)^Nn(ce,Ee,41),Ve=Gr(ce,Ee,14)^Gr(ce,Ee,18)^Fn(ce,Ee,41),Ge=ce&$^~ce&xe,ke=Ee&Be^~Ee&He,Pe=yc(Re,Ve,ke,pf[we],er[we]),qe=Qc(Pe,Se,Me,Ge,Qf[we],$A[we]),rt=Pe|0,tt=kr(X,ee,28)^Nn(X,ee,34)^Nn(X,ee,39),Je=Gr(X,ee,28)^Fn(X,ee,34)^Fn(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,rt|0),le=ae|0,Ce=fe|0,ae=re|0,fe=ie|0,re=X|0,ie=ee|0;let Qe=lc(rt,Je,pe);X=Bc(Qe,qe,tt,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(){Xt($A,er)}destroy(){Xt(this.buffer),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}},ns=class extends rs{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)}};var xc=zo(()=>new As,Zo(1));var bc=zo(()=>new ns,Zo(3));var xf=z=>z[0]==="\u3042\u3044\u3053\u304F\u3057\u3093";function wc(z){if(typeof z!="string")throw new TypeError("invalid mnemonic type: "+typeof z);return z.normalize("NFKD")}function bf(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 wf(z){if(vA(z),![16,20,24,28,32].includes(z.length))throw new Error("invalid entropy length")}function mc(z,_=128){if(ZA(_),_%32!==0||_>256)throw new TypeError("Invalid entropy");return Sf(gc(_/8),z)}var mf=z=>{let _=8-z.length/4;return new Uint8Array([xc(z)[0]>>_<<_])};function Df(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: "+_)}),Gn.chain(Gn.checksum(1,mf),Gn.radix2(11,!0),Gn.alphabet(z))}function Sf(z,_){return wf(z),Df(_).encode(z).join(xf(_)?"\u3000":" ")}var Hf=z=>wc("mnemonic"+z);function Dc(z,_=""){return fc(bc,bf(z).nfkd,Hf(_),{c:2048,dkLen:64})}be();var Sc=`abandon
|
|
1
|
+
"use strict";var LumenKeys=(()=>{var sn=Object.defineProperty;var Y0=Object.getOwnPropertyDescriptor;var X0=Object.getOwnPropertyNames;var Z0=Object.prototype.hasOwnProperty;var J0=(t,e,r)=>e in t?sn(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r;var ye=(t,e)=>()=>(t&&(e=t(t=0)),e);var yo=(t,e)=>{for(var r in e)sn(t,r,{get:e[r],enumerable:!0})},Q0=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of X0(e))!Z0.call(t,o)&&o!==r&&sn(t,o,{get:()=>e[o],enumerable:!(n=Y0(e,o))||n.enumerable});return t};var ef=t=>Q0(sn({},"__esModule",{value:!0}),t);var u=(t,e,r)=>J0(t,typeof e!="symbol"?e+"":e,r);var y=ye(()=>{"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 _f(t){return t instanceof Uint8Array||ArrayBuffer.isView(t)&&t.constructor.name==="Uint8Array"}function Lo(t,e=""){if(!Number.isSafeInteger(t)||t<0){let r=e&&`"${e}" `;throw new Error(`${r}expected integer >= 0, got ${t}`)}}function Zt(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 Jt(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 gn(t,e){Zt(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 rc(t){return new Uint32Array(t.buffer,t.byteOffset,Math.floor(t.byteLength/4))}function Me(...t){for(let e=0;e<t.length;e++)t[e].fill(0)}function mn(t){return new DataView(t.buffer,t.byteOffset,t.byteLength)}function Oe(t,e){return t<<32-e|t>>>e}function Uf(t){return t<<24&4278190080|t<<8&16711680|t>>>8&65280|t>>>24&255}function Of(t){for(let e=0;e<t.length;e++)t[e]=Uf(t[e]);return t}function vr(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 If,To,kr,wn=ye(()=>{y();If=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;To=If?t=>t:Of;kr=t=>({oid:Uint8Array.from([6,9,96,134,72,1,101,3,4,2,t])})});function nc(t,e,r){return t&e^~t&r}function oc(t,e,r){return t&e^t&r^e&r}var Hr,Je,be,sc=ye(()=>{y();wn();Hr=class{constructor(e,r,n,o){u(this,"blockLen");u(this,"outputLen");u(this,"padOffset");u(this,"isLE");u(this,"buffer");u(this,"view");u(this,"finished",!1);u(this,"length",0);u(this,"pos",0);u(this,"destroyed",!1);this.blockLen=e,this.outputLen=r,this.padOffset=n,this.isLE=o,this.buffer=new Uint8Array(e),this.view=mn(this.buffer)}update(e){Jt(this),Zt(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=mn(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){Jt(this),gn(e,this),this.finished=!0;let{buffer:r,view:n,blockLen:o,isLE:s}=this,{pos:i}=this;r[i++]=128,Me(this.buffer.subarray(i)),this.padOffset>o-i&&(this.process(n,0),i=0);for(let h=i;h<o;h++)r[h]=0;n.setBigUint64(o-8,BigInt(this.length*8),s),this.process(n,0);let c=mn(e),a=this.outputLen;if(a%4)throw new Error("_sha2: outputLen must be aligned to 32bit");let f=a/4,l=this.get();if(f>l.length)throw new Error("_sha2: outputLen bigger than state");for(let h=0;h<f;h++)c.setUint32(4*h,l[h],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()}},Je=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),be=Uint32Array.from([1779033703,4089235720,3144134277,2227873595,1013904242,4271175723,2773480762,1595750129,1359893119,2917565137,2600822924,725511199,528734635,4215389547,1541459225,327033209])});function Rf(t,e=!1){return e?{h:Number(t&En),l:Number(t>>ic&En)}:{h:Number(t>>ic&En)|0,l:Number(t&En)|0}}function An(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]}function Ne(t,e,r,n){let o=(e>>>0)+(n>>>0);return{h:t+r+(o/2**32|0)|0,l:o|0}}var En,ic,_o,Io,Rt,Kt,Lr,Tr,cc,ac,fc,uc,lc,dc,hc,pc,xc,yc,Uo=ye(()=>{y();En=BigInt(4294967295),ic=BigInt(32);_o=(t,e,r)=>t>>>r,Io=(t,e,r)=>t<<32-r|e>>>r,Rt=(t,e,r)=>t>>>r|e<<32-r,Kt=(t,e,r)=>t<<32-r|e>>>r,Lr=(t,e,r)=>t<<64-r|e>>>r-32,Tr=(t,e,r)=>t>>>r-32|e<<64-r,cc=(t,e,r)=>t<<r|e>>>32-r,ac=(t,e,r)=>e<<r|t>>>32-r,fc=(t,e,r)=>e<<r-32|t>>>64-r,uc=(t,e,r)=>t<<r-32|e>>>64-r;lc=(t,e,r)=>(t>>>0)+(e>>>0)+(r>>>0),dc=(t,e,r,n)=>e+r+n+(t/2**32|0)|0,hc=(t,e,r,n)=>(t>>>0)+(e>>>0)+(r>>>0)+(n>>>0),pc=(t,e,r,n,o)=>e+r+n+o+(t/2**32|0)|0,xc=(t,e,r,n,o)=>(t>>>0)+(e>>>0)+(r>>>0)+(n>>>0)+(o>>>0),yc=(t,e,r,n,o,s)=>e+r+n+o+s+(t/2**32|0)|0});var Cf,lt,Oo,Ro,bc,Ff,Df,dt,ht,Ko,Co,gc,mc,wc=ye(()=>{y();sc();Uo();wn();Cf=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]),lt=new Uint32Array(64),Oo=class extends Hr{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 h=0;h<16;h++,r+=4)lt[h]=e.getUint32(r,!1);for(let h=16;h<64;h++){let d=lt[h-15],p=lt[h-2],x=Oe(d,7)^Oe(d,18)^d>>>3,E=Oe(p,17)^Oe(p,19)^p>>>10;lt[h]=E+lt[h-7]+x+lt[h-16]|0}let{A:n,B:o,C:s,D:i,E:c,F:a,G:f,H:l}=this;for(let h=0;h<64;h++){let d=Oe(c,6)^Oe(c,11)^Oe(c,25),p=l+d+nc(c,a,f)+Cf[h]+lt[h]|0,E=(Oe(n,2)^Oe(n,13)^Oe(n,22))+oc(n,o,s)|0;l=f,f=a,a=c,c=i+p|0,i=s,s=o,o=n,n=p+E|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,f=f+this.G|0,l=l+this.H|0,this.set(n,o,s,i,c,a,f,l)}roundClean(){Me(lt)}destroy(){this.set(0,0,0,0,0,0,0,0),Me(this.buffer)}},Ro=class extends Oo{constructor(){super(32);u(this,"A",Je[0]|0);u(this,"B",Je[1]|0);u(this,"C",Je[2]|0);u(this,"D",Je[3]|0);u(this,"E",Je[4]|0);u(this,"F",Je[5]|0);u(this,"G",Je[6]|0);u(this,"H",Je[7]|0)}},bc=An(["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))),Ff=bc[0],Df=bc[1],dt=new Uint32Array(80),ht=new Uint32Array(80),Ko=class extends Hr{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:f,El:l,Fh:h,Fl:d,Gh:p,Gl:x,Hh:E,Hl:w}=this;return[e,r,n,o,s,i,c,a,f,l,h,d,p,x,E,w]}set(e,r,n,o,s,i,c,a,f,l,h,d,p,x,E,w){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=f|0,this.El=l|0,this.Fh=h|0,this.Fl=d|0,this.Gh=p|0,this.Gl=x|0,this.Hh=E|0,this.Hl=w|0}process(e,r){for(let g=0;g<16;g++,r+=4)dt[g]=e.getUint32(r),ht[g]=e.getUint32(r+=4);for(let g=16;g<80;g++){let m=dt[g-15]|0,U=ht[g-15]|0,P=Rt(m,U,1)^Rt(m,U,8)^_o(m,U,7),X=Kt(m,U,1)^Kt(m,U,8)^Io(m,U,7),q=dt[g-2]|0,z=ht[g-2]|0,D=Rt(q,z,19)^Lr(q,z,61)^_o(q,z,6),J=Kt(q,z,19)^Tr(q,z,61)^Io(q,z,6),Z=hc(X,J,ht[g-7],ht[g-16]),ae=pc(Z,P,D,dt[g-7],dt[g-16]);dt[g]=ae|0,ht[g]=Z|0}let{Ah:n,Al:o,Bh:s,Bl:i,Ch:c,Cl:a,Dh:f,Dl:l,Eh:h,El:d,Fh:p,Fl:x,Gh:E,Gl:w,Hh:H,Hl:L}=this;for(let g=0;g<80;g++){let m=Rt(h,d,14)^Rt(h,d,18)^Lr(h,d,41),U=Kt(h,d,14)^Kt(h,d,18)^Tr(h,d,41),P=h&p^~h&E,X=d&x^~d&w,q=xc(L,U,X,Df[g],ht[g]),z=yc(q,H,m,P,Ff[g],dt[g]),D=q|0,J=Rt(n,o,28)^Lr(n,o,34)^Lr(n,o,39),Z=Kt(n,o,28)^Tr(n,o,34)^Tr(n,o,39),ae=n&s^n&c^s&c,fe=o&i^o&a^i&a;H=E|0,L=w|0,E=p|0,w=x|0,p=h|0,x=d|0,{h,l:d}=Ne(f|0,l|0,z|0,D|0),f=c|0,l=a|0,c=s|0,a=i|0,s=n|0,i=o|0;let V=lc(D,Z,fe);n=dc(V,z,J,ae),o=V|0}({h:n,l:o}=Ne(this.Ah|0,this.Al|0,n|0,o|0)),{h:s,l:i}=Ne(this.Bh|0,this.Bl|0,s|0,i|0),{h:c,l:a}=Ne(this.Ch|0,this.Cl|0,c|0,a|0),{h:f,l}=Ne(this.Dh|0,this.Dl|0,f|0,l|0),{h,l:d}=Ne(this.Eh|0,this.El|0,h|0,d|0),{h:p,l:x}=Ne(this.Fh|0,this.Fl|0,p|0,x|0),{h:E,l:w}=Ne(this.Gh|0,this.Gl|0,E|0,w|0),{h:H,l:L}=Ne(this.Hh|0,this.Hl|0,H|0,L|0),this.set(n,o,s,i,c,a,f,l,h,d,p,x,E,w,H,L)}roundClean(){Me(dt,ht)}destroy(){Me(this.buffer),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}},Co=class extends Ko{constructor(){super(64);u(this,"Ah",be[0]|0);u(this,"Al",be[1]|0);u(this,"Bh",be[2]|0);u(this,"Bl",be[3]|0);u(this,"Ch",be[4]|0);u(this,"Cl",be[5]|0);u(this,"Dh",be[6]|0);u(this,"Dl",be[7]|0);u(this,"Eh",be[8]|0);u(this,"El",be[9]|0);u(this,"Fh",be[10]|0);u(this,"Fl",be[11]|0);u(this,"Gh",be[12]|0);u(this,"Gl",be[13]|0);u(this,"Hh",be[14]|0);u(this,"Hl",be[15]|0)}},gc=vr(()=>new Ro,kr(1)),mc=vr(()=>new Co,kr(3))});function qf(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,f=r[a],l=r[a+1],h=Ec(f,l,1)^r[c],d=Ac(f,l,1)^r[c+1];for(let p=0;p<50;p+=10)t[i+p]^=h,t[i+p+1]^=d}let o=t[2],s=t[3];for(let i=0;i<24;i++){let c=Sc[i],a=Ec(o,s,c),f=Ac(o,s,c),l=Bc[i];o=t[l],s=t[l+1],t[l]=a,t[l+1]=f}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]^=Gf[n],t[1]^=zf[n]}Me(r)}var Mf,_r,Nf,jf,Pf,$f,Bc,Sc,vc,kc,Gf,zf,Ec,Ac,Fo,Wf,Hc,Lc=ye(()=>{y();Uo();wn();Mf=BigInt(0),_r=BigInt(1),Nf=BigInt(2),jf=BigInt(7),Pf=BigInt(256),$f=BigInt(113),Bc=[],Sc=[],vc=[];for(let t=0,e=_r,r=1,n=0;t<24;t++){[r,n]=[n,(2*r+3*n)%5],Bc.push(2*(5*n+r)),Sc.push((t+1)*(t+2)/2%64);let o=Mf;for(let s=0;s<7;s++)e=(e<<_r^(e>>jf)*$f)%Pf,e&Nf&&(o^=_r<<(_r<<BigInt(s))-_r);vc.push(o)}kc=An(vc,!0),Gf=kc[0],zf=kc[1],Ec=(t,e,r)=>r>32?fc(t,e,r):cc(t,e,r),Ac=(t,e,r)=>r>32?uc(t,e,r):ac(t,e,r);Fo=class t{constructor(e,r,n,o=!1,s=24){u(this,"state");u(this,"pos",0);u(this,"posOut",0);u(this,"finished",!1);u(this,"state32");u(this,"destroyed",!1);u(this,"blockLen");u(this,"suffix");u(this,"outputLen");u(this,"enableXOF",!1);u(this,"rounds");if(this.blockLen=e,this.suffix=r,this.outputLen=n,this.enableXOF=o,this.rounds=s,Lo(n,"outputLen"),!(0<e&&e<200))throw new Error("only keccak-f1600 function is supported");this.state=new Uint8Array(200),this.state32=rc(this.state)}clone(){return this._cloneInto()}keccak(){To(this.state32),qf(this.state32,this.rounds),To(this.state32),this.posOut=0,this.pos=0}update(e){Jt(this),Zt(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)!==0&&n===o-1&&this.keccak(),e[o-1]^=128,this.keccak()}writeInto(e){Jt(this,!1),Zt(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 Lo(e),this.xofInto(new Uint8Array(e))}digestInto(e){if(gn(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,Me(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}},Wf=(t,e,r,n={})=>vr(()=>new Fo(e,t,r),n),Hc=Wf(6,136,32,kr(8))});var Bn={};yo(Bn,{createHash:()=>Tc,default:()=>Vf});function Tc(t){let e=new Uint8Array(0),r;switch(t.toLowerCase()){case"sha256":case"sha-256":r=gc;break;case"sha512":case"sha-512":r=mc;break;case"sha3-256":r=Hc;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 Vf,Sn=ye(()=>{"use strict";y();wc();Lc();Vf={createHash:Tc}});function kn(t){return t instanceof Uint8Array||ArrayBuffer.isView(t)&&t.constructor.name==="Uint8Array"&&"BYTES_PER_ELEMENT"in t&&t.BYTES_PER_ELEMENT===1}function Qe(t,e=""){if(typeof t!="number")throw new TypeError(Do(e)+"expected number, got "+typeof t);if(!Number.isSafeInteger(t)||t<0)throw new RangeError(Do(e)+"expected integer >= 0, got "+t);return t}function je(t,e,r=""){if(kn(t)&&(e===void 0||t.length===e))return t;e!==void 0&&Qe(e,"length");let n=kn(t),o=e!==void 0?` of length ${e}`:"",s=n?`length=${t.length}`:`type=${typeof t}`,i=Do(r)+"expected Uint8Array"+o+", got "+s;throw n?new RangeError(i):new TypeError(i)}function Hn(t){if(typeof t!="function"||typeof t.create!="function")throw new TypeError("expected hash wrapped by utils.createHasher");if(Qe(t.outputLen),Qe(t.blockLen),t.outputLen<1||t.blockLen<1)throw new Error("hash blockLen / outputLen must be >= 1")}function er(t,e=!0){if(t.destroyed)throw new Error("hash was destroyed");if(e&&t.finished)throw new Error("digest() was already called")}function Ln(t,e){je(t,void 0,"output");let r=e.outputLen;if(!(t.length>=r))throw new RangeError('"output" expected length >= '+r)}function Ur(...t){for(let e=0;e<t.length;e++)t[e].fill(0)}function Tn(t){return new DataView(t.buffer,t.byteOffset,t.byteLength)}function Re(t,e){return t<<32-e|t>>>e}function _n(t){if(je(t),Oc)return t.toHex();let e="";for(let r=0;r<t.length;r++)e+=Zf[t[r]];return e}function Uc(t){return t>=48&&t<=57?t-48:t>=65&&t<=70?t-55:t>=97&&t<=102?t-87:void 0}function Mo(t){if(typeof t!="string")throw new TypeError("hex string expected, got "+typeof t);if(Oc)try{return Uint8Array.fromHex(t)}catch(o){throw o instanceof SyntaxError?new RangeError(o.message):o}let e=t.length,r=e/2;if(e%2)throw new RangeError("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=Uc(t.charCodeAt(s)),c=Uc(t.charCodeAt(s+1));if(i===void 0||c===void 0){let a=t[s]+t[s+1];throw new RangeError('hex string expected, got non-hex character "'+a+'" at index '+s)}n[o]=i*16+c}return n}function Rc(...t){let e=0;for(let n=0;n<t.length;n++){let o=t[n];je(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 Jf(t,e,r="opts"){return Ic(t,"defaults"),e!==void 0&&Ic(e,r),Object.assign(t,e)}function Kc(t,e={}){if(typeof t!="function")throw new TypeError('"hashCons" expected function, got type='+typeof t);e=Jf({},e,"info");let r=(o,s)=>t(s).update(o).digest(),n=t(void 0);return r.outputLen=n.outputLen,r.blockLen=n.blockLen,r.canXOF=n.canXOF,r.create=o=>t(o),Object.assign(r,e),Object.freeze(r)}function Cc(t=32){Qe(t,"bytesLength");let e=typeof globalThis=="object"?globalThis.crypto:null;if(typeof e?.getRandomValues!="function")throw new Error("crypto.getRandomValues must be defined");if(t>65536)throw new RangeError(`"bytesLength" expected <= 65536, got ${t}`);return e.getRandomValues(new Uint8Array(t))}var Do,Ic,Oc,Zf,Fc,tr=ye(()=>{y();Do=t=>t?`"${t}" `:"";Ic=(t,e)=>{if(t===null||typeof t!="object"||Array.isArray(t))throw new TypeError((e==="object"?"":`"${e}" `)+"expected object, got type="+typeof t)};Oc=typeof Uint8Array.from([]).toHex=="function"&&typeof Uint8Array.fromHex=="function",Zf=Array.from({length:256},(t,e)=>e.toString(16).padStart(2,"0"));Fc=t=>({oid:Uint8Array.from([6,9,96,134,72,1,101,3,4,2,t])})});function Or(t,e,r=()=>{}){if(!Array.isArray(t))throw new TypeError(`"${e}" expected array, got type=${typeof t}`);for(let n=0;n<t.length;n++)r(t[n],`${e}[${n}]`);return t}function $c(t,e=""){if(typeof t!="string"){let r=e&&`"${e}" `;throw new TypeError(r+"expected string, got type="+typeof t)}return t}function xt(t,e="object"){if(t===null||typeof t!="object"||Array.isArray(t))throw new TypeError(e==="object"?"expected valid options object":`"${e}" expected object, got type=${typeof t}`);return t}function Ct(t,e){if(typeof t!="function")throw new TypeError(`"${e}" is invalid: expected function, got ${typeof t}`);return t}function _e(t,e=""){if(typeof t!="boolean")throw new TypeError(eu(e)+"expected boolean, got type="+typeof t);return t}function Kn(t){if(typeof t=="bigint"){if(!yt(t))throw new RangeError("positive bigint expected, got "+t)}else Po(t);return t}function nr(t,e=""){if(typeof t!="number"){let r=e&&`"${e}" `;throw new TypeError(r+"expected number, got type="+typeof t)}if(!Number.isSafeInteger(t)){let r=e&&`"${e}" `;throw new RangeError(r+"expected safe integer, got "+t)}}function Rr(t){let e=Kn(t).toString(16);return e.length&1?"0"+e:e}function Gc(t){if(typeof t!="string")throw new TypeError("hex string expected, got "+typeof t);return t===""?Un:BigInt("0x"+t)}function Pe(t){return Gc(_n(t))}function Go(t){return Gc(_n(tu(je(t)).reverse()))}function Cn(t,e){if(Qe(e),e===0)throw new Error("zero output length is invalid");t=Kn(t);let r=e*2,n=t.toString(16);if(n.length>r)throw new RangeError("number is too large");return Mo(n.padStart(r,"0"))}function zo(t,e){return Cn(t,e).reverse()}function tu(t){return Uint8Array.from(pe(t))}function yt(t){return typeof t=="bigint"&&Un<=t}function qo(t,e,r){return yt(t)&&yt(e)&&yt(r)&&e<=t&&t<r}function Wo(t,e,r,n){if(!qo(e,r,n))throw new RangeError("expected valid "+t+": "+r+" <= n < "+n+", got "+e)}function or(t){if(t<Un)throw new Error("expected non-negative bigint, got "+t);return t===Un?0:t.toString(2).length}function zc(t,e,r){if(Qe(t,"hashLen"),Qe(e,"qByteLen"),typeof r!="function")throw new TypeError("hmacFn must be a function");let n=w=>new Uint8Array(w),o=Uint8Array.of(),s=Uint8Array.of(0),i=Uint8Array.of(1),c=1e3,a=n(t),f=n(t),l=0,h=()=>{a.fill(1),f.fill(0),l=0},d=(...w)=>r(f,et(a,...w)),p=(w=o)=>{f=d(s,w),a=d(),w.length!==0&&(f=d(i,w),a=d())},x=()=>{if(l++>=c)throw new Error("drbg: tried max amount of iterations");let w=0,H=[];for(;w<e;){a=d();let L=a.slice();H.push(L),w+=a.length}return et(...H)};return(w,H)=>{h(),p(w);let L;for(;(L=H(x()))===void 0;)p();return h(),L}}function $e(t,e={},r={},n="object"){xt(t,n),xt(e,"fields"),xt(r,"optFields");function o(i,c,a){let f=n==="object"?`param "${String(i)}"`:`"${n}.${String(i)}"`,l=t[i];if(!Object.hasOwn(t,i)&&(a?l!==void 0:c!=="function"))throw new TypeError(`${f} is invalid: expected own property`);if(a&&l===void 0)return;let h=typeof l;if(h!==c||l===null)throw new TypeError(`${f} is invalid: expected ${c}, got ${h}`)}let s=(i,c)=>Object.entries(i).forEach(([a,f])=>o(a,f,c));s(e,!1),s(r,!0)}var pe,Po,$o,et,On,rr,Rn,Un,Pc,eu,Kr,Ft=ye(()=>{y();tr();pe=(t,e,r)=>je(t,e,r),Po=Qe;$o=_n,et=(...t)=>Rc(...t),On=t=>Mo(t),rr=kn,Rn=t=>Cc(t),Un=BigInt(0),Pc=BigInt(1),eu=t=>t?`"${t}" `:"";Kr=t=>(nr(t,"n"),(Pc<<BigInt(t))-Pc)});function ve(t,e){if(e<=xe)throw new Error("mod: expected positive modulus, got "+e);let r=t%e;return r>=xe?r:e+r}function Qc(t,e,r){if(r<=ee)throw new Error("pow: expected modulus > 1, got "+r);if(typeof e!="bigint")throw new TypeError("invalid exponent: expected bigint, got "+typeof e);if(e<xe)throw new Error("invalid exponent, negatives unsupported");if(e===xe)return ee;if(e===ee)return t;let n=t%r;if(n<xe&&(n+=r),e<su){let c=ee;for(;e>xe;)e&ee&&(c=c*n%r),n=n*n%r,e>>=ee;return c}let o=[];for(;e>xe;)o.push(Number(e&ou)),e>>=Vo;let s=new Array(16);s[0]=ee,s[1]=n;for(let c=2;c<16;c++)s[c]=s[c-1]*n%r;let i=s[o[o.length-1]];for(let c=o.length-2;c>=0;c--){i=i*i%r,i=i*i%r,i=i*i%r,i=i*i%r;let a=o[c];a!==0&&(i=i*s[a]%r)}return i}function ke(t,e,r){if(r<=ee)throw new Error("pow2: expected modulus > 1, got "+r);if(e<xe)throw new Error("pow2: expected non-negative exponent, got "+e);let n=t;for(;e-- >xe;)n*=n,n%=r;return n}function qc(t,e){if(t===xe)throw new Error("invert: expected non-zero number");if(e<=ee)throw new Error("invert: expected modulus > 1, got "+e);let r=ve(t,e),n=e,o=xe,s=ee;for(;r!==xe;){let c=n/r,a=n-r*c,f=o-s*c;n=r,r=a,o=s,s=f}if(n!==ee)throw new Error("invert: does not exist");return ve(o,e)}function ea(t,e){if(e<=ee)throw new Error("invertCt: expected prime modulus > 1, got "+e);let r=ve(t,e);if(r===xe)throw new Error("invertCt: expected non-zero number");let n=Qc(r,e-bt,e);if(ve(r*n,e)!==ee)throw new Error("invertCt: does not exist");return n}function Yo(t,e,r){let n=t;if(!n.eql(n.sqr(e),r))throw new Error("Cannot find square root")}function Xo(t,e){if((t&ee)===xe)throw new Error(e+": expected odd modulus, got "+t)}function ta(t,e){let r=t,n=(r.ORDER+ee)/Vo,o=r.pow(e,n);return Yo(r,o,e),o}function iu(t,e){let r=t,n=(r.ORDER-Xc)/Zc,o=r.mul(e,bt),s=r.pow(o,n),i=r.mul(e,s),c=r.mul(r.mul(i,bt),s),a=r.mul(i,r.sub(c,r.ONE));return Yo(r,a,e),a}function cu(t){let e=ir(t),r=ra(t),n=r(e,e.neg(e.ONE)),o=r(e,n),s=r(e,e.neg(n)),i=(t+ru)/Jc;return((c,a)=>{let f=c,l=f.pow(a,i),h=f.mul(l,n),d=f.mul(l,o),p=f.mul(l,s),x=f.eql(f.sqr(h),a),E=f.eql(f.sqr(d),a);l=f.cmov(l,h,x),h=f.cmov(p,d,E);let w=f.eql(f.sqr(h),a),H=f.cmov(l,h,w);return Yo(f,H,a),H})}function ra(t){if(t<Yc)throw new Error("sqrt is not defined for small field");Xo(t,"tonelliShanks");let e=t-ee,r=0;for(;e%bt===xe;)e/=bt,r++;let n=bt,o=ir(t);for(;Wc(o,n)===1;)if(n++>1e3)throw new Error("Cannot find square root: probably non-prime P");if(r===1)return ta;let s=o.pow(n,e),i=(e+ee)/bt;return function(a,f){let l=a;if(l.is0(f))return f;if(Wc(l,f)!==1)throw new Error("Cannot find square root");let h=r,d=l.mul(l.ONE,s),p=l.pow(f,e),x=l.pow(f,i);for(;!l.eql(p,l.ONE);){if(l.is0(p))throw new Error("Cannot find square root: probably non-prime P");let E=1,w=l.sqr(p);for(;!l.eql(w,l.ONE);)if(E++,w=l.sqr(w),E===h)throw new Error("Cannot find square root");let H=ee<<BigInt(h-E-1),L=l.pow(d,H);h=E,d=l.sqr(L),p=l.mul(p,d),x=l.mul(x,L)}return x}}function au(t){return Xo(t,"Fp.sqrt"),t%Vo===Yc?ta:t%Zc===Xc?iu:t%Jc===nu?cu(t):ra(t)}function sr(t){if(xt(t,"field"),typeof t.ORDER!="bigint")throw new TypeError('param "ORDER" is invalid: expected bigint, got '+typeof t.ORDER);nr(t.BYTES,"BYTES"),nr(t.BITS,"BITS");for(let e of fu)Ct(t[e],"field."+e);if(t.BYTES<1||t.BITS<1)throw new Error("invalid field: expected BYTES/BITS > 0");if(t.ORDER<=ee)throw new Error("invalid field: expected ORDER > 1, got "+t.ORDER);return t}function Zo(t,e,r=!1){sr(t),Or(e,"nums"),_e(r,"passZero");let n=t,o=new Array(e.length).fill(r?n.ZERO:void 0),s=e.reduce((c,a,f)=>n.is0(a)?c:(o[f]=c,n.mul(c,a)),n.ONE),i=n.inv(s);return e.reduceRight((c,a,f)=>n.is0(a)?c:(o[f]=n.mul(c,o[f]),n.mul(c,a)),i),o}function Wc(t,e){sr(t);let r=t;Xo(r.ORDER,"FpLegendre");let n=(r.ORDER-ee)/bt,o=r.pow(e,n),s=r.eql(o,r.ONE),i=r.eql(o,r.ZERO),c=r.eql(o,r.neg(r.ONE));if(!s&&!i&&!c)throw new Error("invalid Legendre symbol result");return s?1:i?0:-1}function uu(t,e){if(e!==void 0&&Po(e),t<=xe)throw new Error("invalid n length: expected positive n, got "+t);if(e!==void 0&&e<1)throw new Error("invalid n length: expected positive bit length, got "+e);let r=or(t);if(e!==void 0&&e<r)throw new Error(`invalid n length: expected nBitLength (${e}) >= bitLen(n) (${r})`);let n=e!==void 0?e:r,o=Math.ceil(n/8);return{nBitLength:n,nByteLength:o}}function ir(t,e={}){return Object.freeze(Fn.prototype),new Fn(t,e)}function na(t){if(typeof t!="bigint")throw new Error("field order must be bigint");if(t<=ee)throw new Error("field order must be greater than 1");let e=or(t-ee);return Math.ceil(e/8)}function Dn(t){let e=na(t);return e+Math.ceil(e/2)}function Mn(t,e,r=!1){pe(t);let n=t.length,o=na(e),s=Math.max(Dn(e),16);if(n<s||n>1024)throw new Error("expected "+s+"-1024 bytes of input, got "+n);let i=r?Go(t):Pe(t),c=ve(i,e-ee)+ee;return r?zo(c,o):Cn(c,o)}var xe,ee,bt,Yc,Vo,Xc,ru,Zc,nu,ou,Jc,su,fu,Vc,Fn,Nn=ye(()=>{y();Ft();xe=BigInt(0),ee=BigInt(1),bt=BigInt(2),Yc=BigInt(3),Vo=BigInt(4),Xc=BigInt(5),ru=BigInt(7),Zc=BigInt(8),nu=BigInt(9),ou=BigInt(15),Jc=BigInt(16),su=BigInt("0x10000000000000000");fu=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];Vc=new WeakMap,Fn=class{constructor(e,r={}){u(this,"ORDER");u(this,"BITS");u(this,"BYTES");u(this,"isLE");u(this,"ZERO",xe);u(this,"ONE",ee);u(this,"_lengths");u(this,"_mod");if(e<=ee)throw new Error("invalid field: expected ORDER > 1, got "+e);let n;this.isLE=!1,r!=null&&typeof r=="object"&&(typeof r.BITS=="number"&&(n=r.BITS),typeof r.sqrt=="function"&&Object.defineProperty(this,"sqrt",{value:r.sqrt,enumerable:!0}),typeof r.isLE=="boolean"&&(this.isLE=r.isLE),r.allowedLengths&&(this._lengths=Object.freeze(r.allowedLengths.slice())),typeof r.modFromBytes=="boolean"&&(this._mod=r.modFromBytes));let{nBitLength:o,nByteLength:s}=uu(e,n);if(s>2048)throw new Error("invalid field: expected ORDER of <= 2048 bytes");this.ORDER=e,this.BITS=o,this.BYTES=s,Object.freeze(this)}create(e){return ve(e,this.ORDER)}isValid(e){if(typeof e!="bigint")throw new TypeError("invalid field element: expected bigint, got "+typeof e);return xe<=e&&e<this.ORDER}is0(e){return e===xe}isValidNot0(e){return!this.is0(e)&&this.isValid(e)}isOdd(e){return(e&ee)===ee}neg(e){return ve(-e,this.ORDER)}eql(e,r){return e===r}sqr(e){return ve(e*e,this.ORDER)}add(e,r){return ve(e+r,this.ORDER)}sub(e,r){return ve(e-r,this.ORDER)}mul(e,r){return ve(e*r,this.ORDER)}pow(e,r){return Qc(e,r,this.ORDER)}div(e,r){return ve(e*qc(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 qc(e,this.ORDER)}sqrt(e){let r=Vc.get(this);return r||Vc.set(this,r=au(this.ORDER)),r(this,e)}toBytes(e){return this.isLE?zo(e,this.BYTES):Cn(e,this.BYTES)}fromBytes(e,r=!1){pe(e);let{_lengths:n,BYTES:o,isLE:s,ORDER:i,_mod:c}=this;if(n){if(e.length<1||!n.includes(e.length)||e.length>o)throw new Error("Field.fromBytes: expected "+n+" bytes, got "+e.length);let f=new Uint8Array(o);f.set(e,s?0:f.length-e.length),e=f}if(e.length!==o)throw new Error("Field.fromBytes: expected "+o+" bytes, got "+e.length);let a=s?Go(e):Pe(e);if(c&&(a=ve(a,i)),!r&&!this.isValid(a))throw new Error("invalid field element: outside of range 0..ORDER");return a}invertBatch(e){return Zo(this,e,!0)}cmov(e,r,n){return _e(n,"condition"),n?r:e}}});function Fr(t,e="n"){if(typeof t!="number")throw new TypeError(`wrong u32 integer "${e}": expected number, got type=${typeof t}`);if(!Number.isSafeInteger(t)||t<0||t>4294967295)throw new RangeError(`wrong u32 integer "${e}": expected 0..4294967295, got ${t}`);return t}function ha(t){return Fr(t,"x"),(t&t-1)===0&&t!==0}function rs(t,e){if(Fr(t),typeof e!="number")throw new TypeError('"bits" expected number, got type='+typeof e);if(!Number.isSafeInteger(e)||e<0||e>32)throw new Error(`expected integer 0 <= bits <= 32, got ${e}`);let r=0;for(let n=0;n<e;n++,t>>>=1)r=r<<1|t&1;return r>>>0}function pa(t){return Fr(t),31-Math.clz32(t)}function da(t){if(!t||typeof t!="object"||typeof t.length!="number")throw new TypeError('"values" expected array-like, got type='+typeof t);let e=t.length;if(!ha(e))throw new Error("expected positive power-of-two length, got "+e);let r=pa(e);for(let n=0;n<e;n++){let o=rs(n,r);if(n<o){let s=t[n];t[n]=t[o],t[o]=s}}return t}var ns,xa=ye(()=>{y();Ft();ns=(t,e)=>{$e(e,{N:"number",roots:"object",dit:"boolean"},{invertButterflies:"boolean",skipStages:"number",brp:"boolean"},"coreOpts");let{N:r,roots:n,dit:o,invertButterflies:s=!1,skipStages:i=0,brp:c=!0}=e;Fr(r,"coreOpts.N");let a=pa(r);if(!ha(r))throw new Error("FFT: Polynomial size should be power of two");Fr(i,"coreOpts.skipStages");let f=a===0?0:a-1;if(i>f)throw new Error(`FFT: wrong skipStages: expected 0 <= skipStages <= ${f}`);if(n.length!==r)throw new Error(`FFT: wrong roots length: expected ${r}, got ${n.length}`);let l=o!==s;return h=>{if(h.length!==r)throw new Error("FFT: wrong Polynomial length");o&&c&&da(h);for(let d=0,p=1;d<a-i;d++){let x=o?d+1+i:a-d,E=1<<x,w=E>>1,H=r>>x;for(let L=0;L<r;L+=E)for(let g=0,m=p++;g<w;g++){let U=s?o?r-m:m:g*H,P=L+g,X=L+g+w,q=n[U],z=h[X],D=h[P];if(l){let J=t.mul(z,q);h[P]=t.add(D,J),h[X]=t.sub(D,J)}else s?(h[P]=t.add(z,D),h[X]=t.mul(t.sub(z,D),q)):(h[P]=t.add(D,z),h[X]=t.mul(t.sub(D,z),q))}}return!o&&c&&da(h),h}}});function wl(t,e=!1){return e?{h:Number(t&eo),l:Number(t>>B0&eo)}:{h:Number(t>>B0&eo)|0,l:Number(t&eo)|0}}function S0(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}=wl(t[s],e);[n[s],o[s]]=[i,c]}return[n,o]}var eo,B0,v0=ye(()=>{y();eo=BigInt(4294967295),B0=BigInt(32)});function to(t){return t instanceof Uint8Array||ArrayBuffer.isView(t)&&t.constructor.name==="Uint8Array"&&"BYTES_PER_ELEMENT"in t&&t.BYTES_PER_ELEMENT===1}function we(t,e=""){if(typeof t!="number")throw new TypeError(ro(e)+"expected number, got "+typeof t);if(!Number.isSafeInteger(t)||t<0)throw new RangeError(ro(e)+"expected integer >= 0, got "+t);return t}function H0(t,e=""){if(typeof t!="boolean")throw new TypeError(ro(e)+"expected boolean, got type="+typeof t);return t}function he(t,e,r=""){if(to(t)&&(e===void 0||t.length===e))return t;e!==void 0&&we(e,"length");let n=to(t),o=e!==void 0?` of length ${e}`:"",s=n?`length=${t.length}`:`type=${typeof t}`,i=ro(r)+"expected Uint8Array"+o+", got "+s;throw n?new RangeError(i):new TypeError(i)}function L0(t){if(typeof t!="function"||typeof t.create!="function")throw new TypeError("expected hash wrapped by utils.createHasher");if(we(t.outputLen),we(t.blockLen),t.outputLen<1||t.blockLen<1)throw new Error("hash blockLen / outputLen must be >= 1")}function Gs(t,e=!0){if(t.destroyed)throw new Error("hash was destroyed");if(e&&t.finished)throw new Error("digest() was already called")}function T0(t,e){he(t,void 0,"output");let r=e.outputLen;if(!(t.length>=r))throw new RangeError('"output" expected length >= '+r)}function zs(t){return new Uint32Array(t.buffer,t.byteOffset,Math.floor(t.byteLength/4))}function qs(...t){for(let e=0;e<t.length;e++)t[e].fill(0)}function El(t){return t<<24&4278190080|t<<8&16711680|t>>>8&65280|t>>>24&255}function Al(t){for(let e=0;e<t.length;e++)t[e]=El(t[e]);return t}function Vs(...t){let e=0;for(let n=0;n<t.length;n++){let o=t[n];he(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 Ys(t,e,r="opts"){return k0(t,"defaults"),e!==void 0&&k0(e,r),Object.assign(t,e)}function I0(t,e={}){if(typeof t!="function")throw new TypeError('"hashCons" expected function, got type='+typeof t);e=Ys({},e,"info");let r=(o,s)=>t(s).update(o).digest(),n=t(void 0);return r.outputLen=n.outputLen,r.blockLen=n.blockLen,r.canXOF=n.canXOF,r.create=o=>t(o),Object.assign(r,e),Object.freeze(r)}function U0(t=32){we(t,"bytesLength");let e=typeof globalThis=="object"?globalThis.crypto:null;if(typeof e?.getRandomValues!="function")throw new Error("crypto.getRandomValues must be defined");if(t>65536)throw new RangeError(`"bytesLength" expected <= 65536, got ${t}`);return e.getRandomValues(new Uint8Array(t))}var ro,k0,_0,Ws,Xs,Zs=ye(()=>{y();ro=t=>t?`"${t}" `:"";k0=(t,e)=>{if(t===null||typeof t!="object"||Array.isArray(t))throw new TypeError((e==="object"?"":`"${e}" `)+"expected object, got type="+typeof t)};_0=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;Ws=_0?t=>t:Al;Xs=t=>({oid:Uint8Array.from([6,9,96,134,72,1,101,3,4,2,t])})});function Rl(t,e=24){if(!(t instanceof Uint32Array))throw new TypeError('"s" expected Uint32Array(50), got type='+typeof t);if(t.length!==50)throw new RangeError('"s" expected Uint32Array(50), got length='+t.length);if(we(e,"rounds"),e<1||e>24)throw new Error('"rounds" expected integer 1..24');for(let r=24-e;r<24;r++){for(let s=0;s<10;s++)pr[s]=t[s]^t[s+10]^t[s+20]^t[s+30]^t[s+40];for(let s=0;s<10;s+=2){let i=(s+8)%10,c=(s+2)%10,a=pr[c],f=pr[c+1],l=O0(a,f,1)^pr[i],h=R0(a,f,1)^pr[i+1];for(let d=0;d<50;d+=10)t[s+d]^=l,t[s+d+1]^=h}let n=t[2],o=t[3];for(let s=0;s<24;s++){let i=C0[s],c=O0(n,o,i),a=R0(n,o,i),f=K0[s];n=t[f],o=t[f+1],t[f]=c,t[f+1]=a}for(let s=0;s<50;s+=10){let i=t[s],c=t[s+1],a=t[s+2],f=t[s+3];t[s]^=~t[s+2]&t[s+4],t[s+1]^=~t[s+3]&t[s+5],t[s+2]^=~t[s+4]&t[s+6],t[s+3]^=~t[s+5]&t[s+7],t[s+4]^=~t[s+6]&t[s+8],t[s+5]^=~t[s+7]&t[s+9],t[s+6]^=~t[s+8]&i,t[s+7]^=~t[s+9]&c,t[s+8]^=~i&a,t[s+9]^=~c&f}t[0]^=Ll[r],t[1]^=Tl[r]}qs(pr)}var Bl,Vr,Sl,vl,kl,Hl,K0,C0,F0,D0,Ll,Tl,_l,Il,Ul,Ol,O0,R0,pr,Js,M0,N0,Ee,Qs=ye(()=>{y();v0();Zs();Bl=BigInt(0),Vr=BigInt(1),Sl=BigInt(2),vl=BigInt(7),kl=BigInt(256),Hl=BigInt(113),K0=[],C0=[],F0=[];for(let t=0,e=Vr,r=1,n=0;t<24;t++){[r,n]=[n,(2*r+3*n)%5],K0.push(2*(5*n+r)),C0.push((t+1)*(t+2)/2%64);let o=Bl;for(let s=0;s<7;s++)e=(e<<Vr^(e>>vl)*Hl)%kl,e&Sl&&(o^=Vr<<(Vr<<BigInt(s))-Vr);F0.push(o)}D0=S0(F0,!0),Ll=D0[0],Tl=D0[1],_l=(t,e,r)=>t<<r|e>>>32-r,Il=(t,e,r)=>e<<r|t>>>32-r,Ul=(t,e,r)=>e<<r-32|t>>>64-r,Ol=(t,e,r)=>t<<r-32|e>>>64-r,O0=(t,e,r)=>r>32?Ul(t,e,r):_l(t,e,r),R0=(t,e,r)=>r>32?Ol(t,e,r):Il(t,e,r),pr=new Uint32Array(10);Js=class t{constructor(e,r,n,o=!1,s=24){u(this,"state");u(this,"pos",0);u(this,"posOut",0);u(this,"finished",!1);u(this,"state32");u(this,"destroyed",!1);u(this,"blockLen");u(this,"suffix");u(this,"outputLen");u(this,"canXOF");u(this,"enableXOF",!1);u(this,"rounds");if(we(e,"blockLen"),we(r,"suffix"),we(s,"rounds"),H0(o,"enableXOF"),this.blockLen=e,this.suffix=r,this.outputLen=n,this.enableXOF=o,this.canXOF=o,this.rounds=s,we(n,"outputLen"),!(0<e&&e<200))throw new Error('"blockLen" must be 1..199');this.state=new Uint8Array(200),this.state32=zs(this.state)}clone(){return this._cloneInto()}keccak(){Ws(this.state32),Rl(this.state32,this.rounds),Ws(this.state32),this.posOut=0,this.pos=0}update(e){Gs(this),he(e);let{blockLen:r,state:n,state32:o}=this,s=e.length,i=r%4===0&&e.byteOffset%4===0,c=r/4,a=i&&s>=r?zs(e):void 0;for(let f=0;f<s;){if(a!==void 0&&this.pos===0&&f%4===0&&s-f>=r){for(let h=0,d=f/4;h<c;h++)o[h]^=a[d+h];f+=r,this.pos=r,this.keccak();continue}let l=Math.min(r-this.pos,s-f);for(let h=0;h<l;h++)n[this.pos++]^=e[f++];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)!==0&&n===o-1&&this.keccak(),e[o-1]^=128,this.keccak()}writeInto(e){Gs(this,!1),he(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 enabled");return this.writeInto(e)}xof(e){return we(e),this.xofInto(new Uint8Array(e))}digestInto(e){if(T0(e,this),this.finished)throw new Error("digest() was already called");this.writeInto(e.length===this.outputLen?e:e.subarray(0,this.outputLen)),this.destroy()}digest(){let e=new Uint8Array(this.outputLen);return this.digestInto(e),e}destroy(){this.destroyed=!0,qs(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.blockLen=r,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.canXOF=this.canXOF,e.destroyed=this.destroyed,e}},M0=(t,e,r,n={})=>I0((o={})=>(o=Ys({},o),new Js(e,t,o.dkLen===void 0?r:o.dkLen,!0)),n),N0=M0(31,168,16,Xs(11)),Ee=M0(31,136,32,Xs(12))});function Kl(t,e,r=()=>{}){if(!Array.isArray(t))throw new TypeError(`"${e}" expected array, got type=${typeof t}`);for(let n=0;n<t.length;n++)r(t[n],`${e}[${n}]`);return t}function Cl(t,e="object"){if(t===null||typeof t!="object"||Array.isArray(t))throw new TypeError(e==="object"?"expected valid options object":`"${e}" expected object, got type=${typeof t}`);return t}function ti(t,e){if(t=he(t),e=he(e),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 ri(t){if(to(t))throw new TypeError('"opts" expected object, got Uint8Array');Cl(t,"opts")}function no(t){ri(t),t.context!==void 0&&he(t.context,void 0,"opts.context")}function oo(t){no(t),t.extraEntropy!==!1&&t.extraEntropy!==void 0&&he(t.extraEntropy,void 0,"opts.extraEntropy")}function Yr(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],f=r(a),l=typeof a=="number"?o[i]:a.encode(o[i]);he(l,f,t),s.set(l,c),typeof a!="number"&&l.fill(0),c+=f}return s},decode:o=>{he(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 Gt(t,e){let r=t,n=e*r.bytesLen;return{bytesLen:n,encode:o=>{let s=Kl(o,"u");if(s.length!==e)throw new RangeError(`vecCoder.encode: wrong length=${s.length}. Expected: ${e}`);let i=new Uint8Array(n);for(let c=0,a=0;c<s.length;c++){let f=r.encode(s[c]);i.set(f,a),f.fill(0),a+=f.length}return i},decode:o=>{he(o,n);let s=[];for(let i=0;i<o.length;i+=r.bytesLen)s.push(r.decode(o.subarray(i,i+r.bytesLen)));return s}}}function Le(...t){for(let e of t)if(Array.isArray(e))for(let r of e)r.fill(0);else e.fill(0)}function ni(t){if(we(t,"bits"),t>32)throw new RangeError('"bits" expected <= 32, got '+t);return t===32?4294967295:~(-1<<t)>>>0}function oi(t,e=j0){if(he(t,void 0,"msg"),he(e,void 0,"ctx"),e.length>255)throw new RangeError("context should be 255 bytes or less");return Vs(new Uint8Array([0,e.length]),e,t)}function si(t,e=0){if(typeof t!="function"||typeof t.create!="function")throw new TypeError('"hash" expected hash function, got type='+typeof t);L0(t),we(e,"requiredStrength");let r=t.oid;if(he(r,void 0,"hash.oid"),!ti(r.subarray(0,10),Fl))throw new Error('"hash.oid" is invalid: expected NIST hash');let n=t.outputLen*8/2;if(e>n)throw new Error("Pre-hash security strength too low: "+n+", required: "+e)}function ii(t,e,r=j0){if(si(t),he(e,void 0,"msg"),he(r,void 0,"ctx"),r.length>255)throw new RangeError("context should be 255 bytes or less");let n=t(e);return Vs(new Uint8Array([1,r.length]),r,t.oid,n)}var kt,ei,j0,Fl,ci=ye(()=>{y();Zs();kt=he,ei=U0;j0=Uint8Array.of();Fl=Uint8Array.from([6,9,96,134,72,1,101,3,4,2])});var P0,$0,so,io,G0=ye(()=>{y();xa();Qs();ci();P0=t=>{let{newPoly:e,N:r,Q:n,F:o,ROOT_OF_UNITY:s,brvBits:i,isKyber:c}=t,a=(g,m=n)=>{let U=g%m|0;return(U>=0?U|0:m+U|0)|0},f=(g,m=n)=>{let U=a(g,m)|0;return(U>m>>1?U-m|0:U)|0};function l(){let g=e(r);for(let m=0;m<r;m++){let U=rs(m,i),P=BigInt(s)**BigInt(U)%BigInt(n);g[m]=Number(P)|0}return g}let h=l(),d=g=>{throw new Error("not implemented")},p=c?{add:(g,m)=>{let U=g+m|0;return U>=n?U-n|0:U},sub:(g,m)=>{let U=g-m|0;return U<0?U+n|0:U},mul:(g,m)=>a((g|0)*(m|0))|0,inv:d}:{add:(g,m)=>a((g|0)+(m|0))|0,sub:(g,m)=>a((g|0)-(m|0))|0,mul:(g,m)=>a((g|0)*(m|0))|0,inv:d},x={N:r,roots:h,invertButterflies:!0,skipStages:c?1:0,brp:!1},E=ns(p,{dit:!1,...x}),w=ns(p,{dit:!0,...x}),H={encode:g=>E(g),decode:g=>{w(g);for(let m=0;m<g.length;m++)g[m]=a(o*g[m]);return g}};return{mod:a,smod:f,nttZetas:h,NTT:{encode:g=>H.encode(g),decode:g=>H.decode(g)},bitsCoder:(g,m)=>{for(let X=0,q=0;X<r;X++)q+=g,q>32&&ni(q),q%=8;let U=ni(g),P=g*(r/8);return{bytesLen:P,encode:X=>{let q=X,z=new Uint8Array(P);for(let D=0,J=0,Z=0,ae=0;D<q.length;D++)for(J|=(m.encode(q[D])&U)<<Z,Z+=g;Z>=8;Z-=8,J>>=8)z[ae++]=J&255;return z},decode:X=>{let q=e(r);for(let z=0,D=0,J=0,Z=0;z<X.length;z++)for(D|=X[z]<<J,J+=8;J>=g;J-=g,D>>=g)q[Z++]=m.decode(D&U);return q}}}}},$0=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:(f,l)=>(n[o+0]=f,n[o+1]=l,i.destroy(),i=t.create({}).update(n),c++,()=>(a++,i.xofInto(s))),clean:()=>{i.destroy(),Le(s,n)}}},so=$0(N0),io=$0(Ee)});var fo={};yo(fo,{PARAMS:()=>ao,ml_dsa44:()=>jl,ml_dsa65:()=>Pl,ml_dsa87:()=>$l});function z0(t){ri(t),t.externalMu!==void 0&&_e(t.externalMu,"opts.externalMu")}function co(t){let e=t,r=Te(ce);for(let n=0;n<ce;){let o=e();if(o.length%3)throw new Error("RejNTTPoly: unaligned block");for(let s=0;n<ce&&s<=o.length-3;s+=3){let i=(o[s+0]|o[s+1]<<8|o[s+2]<<16)&8388607;i<Tt&&(r[n++]=i)}}return r}function ui(t){let e=t,{K:r,L:n,GAMMA1:o,GAMMA2:s,TAU:i,ETA:c,OMEGA:a}=e,{CRH_BYTES:f,TR_BYTES:l,C_TILDE_BYTES:h,XOF128:d,XOF256:p,securityLevel:x}=e;if(![2,4].includes(c))throw new Error("Wrong ETA");if(![1<<17,1<<19].includes(o))throw new Error("Wrong GAMMA1");if(![ai,fi].includes(s))throw new Error("Wrong GAMMA2");let E=i*c,w=b=>{let B=Q.mod(b),S=Q.smod(B,2*s)|0;return B-S===Tt-1?{r1:0,r0:S-1|0}:{r1:Math.floor((B-S)/(2*s))|0,r0:S}},H=b=>w(b).r1,L=b=>w(b).r0,g=(b,B)=>b<=s||b>Tt-s||b===Tt-s&&B===0?0:1,m=Math.floor((Tt-1)/(2*s)),U=(b,B)=>{let{r1:S,r0:v}=w(B);return b===1?v>0?Q.mod(S+1,m)|0:Q.mod(S-1,m)|0:S|0},P=b=>{let B=Q.mod(b),S=Q.smod(B,2**zt)|0;return{r1:Math.floor((B-S)/2**zt)|0,r0:S}},X={bytesLen:a+r,encode:b=>{let B=b;if(B===!1)throw new Error("hint.encode: hint is false");let S=new Uint8Array(a+r);for(let v=0,R=0;v<r;v++){for(let I=0;I<ce;I++)B[v][I]!==0&&(S[R++]=I);S[a+v]=R}return S},decode:b=>{let B=[],S=0;for(let v=0;v<r;v++){let R=Te(ce);if(b[a+v]<S||b[a+v]>a)return!1;for(let I=S;I<b[a+v];I++){if(I>S&&b[I]<=b[I-1])return!1;R[b[I]]=1}S=b[a+v],B.push(R)}for(let v=S;v<a;v++)if(b[v]!==0)return!1;return B}},q=Xr(c===2?3:4,b=>c-b,b=>{if(!(-c<=b&&b<=c))throw new Error(`malformed key s1/s3 ${b} outside of ETA range [${-c}, ${c}]`);return b}),z=Xr(13,b=>(1<<zt-1)-b),D=Xr(10),J=Xr(o===1<<17?18:20,b=>Q.smod(o-b)),Z=Xr(s===ai?6:4),ae=Gt(Z,r),fe=Yr("publicKey",32,Gt(D,r)),V=Yr("secretKey",32,32,l,Gt(q,n),Gt(q,r),Gt(z,r)),Y=Yr("signature",h,Gt(J,n),X),k=c===2?b=>b<15?2-b%5:!1:b=>b<9?4-b:!1;function O(b){let B=b,S=Te(ce);for(let v=0;v<ce;){let R=B();for(let I=0;v<ce&&I<R.length;I+=1){let G=k(R[I]&15),te=k(R[I]>>4&15);G!==!1&&(S[v++]=G),v<ce&&te!==!1&&(S[v++]=te)}}return S}let N=b=>{let B=Te(ce),S=Ee.create({}).update(b),v=new Uint8Array(Ee.blockLen);S.xofInto(v);let R=v.slice(0,8);for(let I=ce-i,G=8,te=0,le=0;I<ce;I++){let oe=I+1;for(;oe>I;)oe=v[G++],!(G<Ee.blockLen)&&(S.xofInto(v),G=0);B[I]=B[oe],B[oe]=1-((R[te]>>le++&1)<<1),le>=8&&(te++,le=0)}return B},_=b=>{let B=b,S=Te(ce),v=Te(ce);for(let R=0;R<B.length;R++){let{r0:I,r1:G}=P(B[R]);S[R]=I,v[R]=G}return{r0:S,r1:v}},A=(b,B)=>{let S=b,v=B;for(let R=0;R<ce;R++)S[R]=U(v[R],S[R]);return S},T=(b,B)=>{let S=b,v=B,R=Te(ce),I=0;for(let G=0;G<ce;G++){let te=g(S[G],v[G]);R[G]=te,I+=te}return{v:R,cnt:I}},M=32,j=Yr("seed",32,64,32),$=Object.freeze({info:Object.freeze({type:"internal-ml-dsa"}),lengths:Object.freeze({secretKey:V.bytesLen,publicKey:fe.bytesLen,seed:32,signature:Y.bytesLen,signRand:M}),keygen:b=>{let B=new Uint8Array(34),S=b===void 0;S&&(b=ei(32)),kt(b,32,"seed"),B.set(b),S&&Le(b),B[32]=r,B[33]=n;let[v,R,I]=j.decode(Ee(B,{dkLen:j.bytesLen})),G=p(R),te=[];for(let W=0;W<n;W++)te.push(O(G.get(W&255,W>>8&255)));let le=[];for(let W=n;W<n+r;W++)le.push(O(G.get(W&255,W>>8&255)));let oe=te.map(W=>Q.NTT.encode(W.slice())),re=[],de=[],Ae=d(v),ue=Te(ce);for(let W=0;W<r;W++){Le(ue);for(let ge=0;ge<n;ge++){let Se=co(Ae.get(ge,W));Ht(ue,Lt(Se,oe[ge]))}Q.NTT.decode(ue);let{r0:It,r1:se}=_(Ht(ue,le[W]));re.push(It),de.push(se)}let Be=fe.encode([v,de]),Fe=Ee(Be,{dkLen:l}),Ye=V.encode([v,I,Fe,te,le,re]);return Ae.clean(),G.clean(),Le(v,R,I,te,le,oe,ue,re,de,Fe,B),{publicKey:Be,secretKey:Ye}},getPublicKey:b=>{let[B,S,v,R,I,G]=V.decode(b),te=d(B),le=R.map(de=>Q.NTT.encode(de.slice())),oe=[],re=Te(ce);for(let de=0;de<r;de++){re.fill(0);for(let ue=0;ue<n;ue++){let Be=co(te.get(ue,de));Ht(re,Lt(Be,le[ue]))}Q.NTT.decode(re),Ht(re,I[de]);let{r1:Ae}=_(re);oe.push(Ae)}return te.clean(),Le(re,le,G,R,I),fe.encode([B,oe])},sign:(b,B,S={})=>{oo(S),z0(S);let{extraEntropy:v,externalMu:R=!1}=S;R&&kt(b,f,"mu");let I=v===!1||v===void 0,G=v===!1?new Uint8Array(32):v===void 0?ei(M):v;kt(G,32,"extraEntropy");let te=(()=>{try{return V.decode(B)}catch(se){throw I&&Le(G),se}})(),[le,oe,re,de,Ae,ue]=te,Be=[],Fe=d(le);for(let se=0;se<r;se++){let ge=[];for(let Se=0;Se<n;Se++)ge.push(co(Fe.get(Se,se)));Be.push(ge)}Fe.clean();for(let se=0;se<n;se++)Q.NTT.encode(de[se]);for(let se=0;se<r;se++)Q.NTT.encode(Ae[se]),Q.NTT.encode(ue[se]);let Ye=R?b:Ee.create({dkLen:f}).update(re).update(b).digest(),W=Ee.create({dkLen:f}).update(oe).update(G).update(Ye).digest();I&&Le(G),kt(W,f);let It=p(W,J.bytesLen);e:for(let se=0;;){let ge=[];for(let ie=0;ie<n;ie++,se++)ge.push(J.decode(It.get(se&255,se>>8)()));let Se=ge.map(ie=>Q.NTT.encode(ie.slice())),Wt=[];for(let ie=0;ie<r;ie++){let yr=Te(ce);for(let ot=0;ot<n;ot++)Ht(yr,Lt(Be[ie][ot],Se[ot]));Q.NTT.decode(yr),Wt.push(yr)}let ho=Wt.map(ie=>ie.map(H)),po=Ee.create({dkLen:h}).update(Ye).update(ae.encode(ho)).digest(),nn=Q.NTT.encode(N(po)),on=de.map(ie=>Lt(ie,nn));for(let ie=0;ie<n;ie++)if(Ht(Q.NTT.decode(on[ie]),ge[ie]),Zr(on[ie],o-E))continue e;let yi=0,xo=[];for(let ie=0;ie<r;ie++){let yr=Q.NTT.decode(Lt(Ae[ie],nn)),ot=W0(Wt[ie],yr).map(L);if(Zr(ot,s-E))continue e;let bi=Q.NTT.decode(Lt(ue[ie],nn));if(Zr(bi,s))continue e;Ht(ot,bi);let gi=T(ot,ho[ie]);xo.push(gi.v),yi+=gi.cnt}if(yi>a)continue;It.clean();let V0=Y.encode([po,on,xo]);return Le(po,on,xo,nn,ho,Wt,Se,ge,W,de,Ae,ue,...Be),R||Le(Ye),V0}throw new Error("Unreachable code path reached, report this error")},verify:(b,B,S,v={})=>{z0(v);let{externalMu:R=!1}=v;R&&kt(B,f,"mu");let[I,G]=fe.decode(S),te=Ee(S,{dkLen:l});if(b.length!==Y.bytesLen)return!1;let[le,oe,re]=Y.decode(b);if(re===!1)return!1;for(let W=0;W<n;W++)if(Zr(oe[W],o-E))return!1;let de=R?B:Ee.create({dkLen:f}).update(te).update(B).digest(),Ae=Q.NTT.encode(N(le)),ue=oe.map(W=>W.slice());for(let W=0;W<n;W++)Q.NTT.encode(ue[W]);let Be=[],Fe=d(I);for(let W=0;W<r;W++){let It=Lt(Q.NTT.encode(Nl(G[W])),Ae),se=Te(ce);for(let Se=0;Se<n;Se++){let Wt=co(Fe.get(Se,W));Ht(se,Lt(Wt,ue[Se]))}let ge=Q.NTT.decode(W0(se,It));Be.push(A(ge,re[W]))}Fe.clean();let Ye=Ee.create({dkLen:h}).update(de).update(ae.encode(Be)).digest();for(let W of re)if(!(W.reduce((se,ge)=>se+ge,0)<=a))return!1;for(let W of oe)if(Zr(W,o-E))return!1;return ti(le,Ye)}});return Object.freeze({info:Object.freeze({type:"ml-dsa"}),internal:$,securityLevel:x,keygen:$.keygen,lengths:$.lengths,getPublicKey:$.getPublicKey,sign:(b,B,S={})=>{oo(S);let v=oi(b,S.context),R=$.sign(v,B,S);return Le(v),R},verify:(b,B,S,v={})=>(no(v),kt(b,void 0,"signature"),$.verify(b,oi(B,v.context),S)),prehash:b=>{si(b,x);let B=b;return Object.freeze({info:Object.freeze({type:"hashml-dsa"}),securityLevel:x,lengths:$.lengths,keygen:$.keygen,getPublicKey:$.getPublicKey,sign:(S,v,R={})=>{oo(R);let I=ii(B,S,R.context),G=$.sign(I,v,R);return Le(I),G},verify:(S,v,R,I={})=>(no(I),kt(S,void 0,"signature"),$.verify(S,ii(B,v,I.context),R))})}})}var ce,Tt,Dl,Ml,zt,ai,fi,ao,Te,Q,q0,Xr,Ht,W0,Nl,Zr,Lt,jl,Pl,$l,uo=ye(()=>{y();Ft();Qs();G0();ci();ce=256,Tt=8380417,Dl=1753,Ml=8347681,zt=13,ai=Math.floor((Tt-1)/88)|0,fi=Math.floor((Tt-1)/32)|0,ao=Object.freeze({2:Object.freeze({K:4,L:4,D:zt,GAMMA1:2**17,GAMMA2:ai,TAU:39,ETA:2,OMEGA:80}),3:Object.freeze({K:6,L:5,D:zt,GAMMA1:2**19,GAMMA2:fi,TAU:49,ETA:4,OMEGA:55}),5:Object.freeze({K:8,L:7,D:zt,GAMMA1:2**19,GAMMA2:fi,TAU:60,ETA:2,OMEGA:75})}),Te=t=>new Int32Array(t),Q=P0({N:ce,Q:Tt,F:Ml,ROOT_OF_UNITY:Dl,newPoly:Te,isKyber:!1,brvBits:8}),q0=t=>t,Xr=(t,e=q0,r=q0)=>Q.bitsCoder(t,{encode:n=>e(r(n)),decode:n=>r(e(n))}),Ht=(t,e)=>{let r=t,n=e;for(let o=0;o<r.length;o++)r[o]=Q.mod(r[o]+n[o]);return r},W0=(t,e)=>{let r=t,n=e;for(let o=0;o<r.length;o++)r[o]=Q.mod(r[o]-n[o]);return r},Nl=t=>{let e=t;for(let r=0;r<ce;r++)e[r]<<=zt;return e},Zr=(t,e)=>{let r=t;for(let n=0;n<ce;n++)if(Math.abs(Q.smod(r[n]))>=e)return!0;return!1},Lt=(t,e)=>{let r=t,n=e,o=Te(ce);for(let s=0;s<r.length;s++)o[s]=Q.mod(r[s]*n[s]);return o};jl=ui({...ao[2],CRH_BYTES:64,TR_BYTES:64,C_TILDE_BYTES:32,XOF128:so,XOF256:io,securityLevel:128}),Pl=ui({...ao[3],CRH_BYTES:64,TR_BYTES:64,C_TILDE_BYTES:48,XOF128:so,XOF256:io,securityLevel:192}),$l=ui({...ao[5],CRH_BYTES:64,TR_BYTES:64,C_TILDE_BYTES:64,XOF128:so,XOF256:io,securityLevel:256})});var Vl={};yo(Vl,{InMemoryKeyStorage:()=>_t,createKeySDK:()=>xi,default:()=>Wl});y();y();y();y();y();y();y();var ki=Object.freeze({p:0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2fn,n:0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141n,h:1n,a:0n,b:7n,Gx:0x79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798n,Gy:0x483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8n}),{p:Ot,n:it,Gx:tf,Gy:rf,b:Hi}=ki,me=32,br=64,gr={publicKey:me+1,publicKeyUncompressed:br+1,signature:br,seed:me+me/2},ne=(t="",e=Error)=>{let r=new e(t),{captureStackTrace:n}=Error;throw typeof n=="function"&&n(r,ne),r},nf=t=>t instanceof Uint8Array||ArrayBuffer.isView(t)&&t.constructor.name==="Uint8Array"&&t.BYTES_PER_ELEMENT===1,Ie=(t,e,r="")=>{let n=nf(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}`,f=i+"expected Uint8Array"+c+", got "+a;return n?ne(f,RangeError):ne(f,TypeError)}return t},ct=t=>new Uint8Array(t),Li=(t,e)=>t.toString(16).padStart(e,"0"),Ti=t=>{let e="";for(let r of Ie(t))e+=Li(r,2);return e},Xe={_0:48,_9:57,A:65,F:70,a:97,f:102},mi=t=>t>=Xe._0&&t<=Xe._9?t-Xe._0:t>=Xe.A&&t<=Xe.F?t-(Xe.A-10):t>=Xe.a&&t<=Xe.f?t-(Xe.a-10):void 0,_i=t=>{let e="hex invalid";if(typeof t!="string")return ne(e);let r=t.length,n=r/2;if(r%2)return ne(e);let o=ct(n);for(let s=0,i=0;s<n;s++,i+=2){let c=mi(t.charCodeAt(i)),a=mi(t.charCodeAt(i+1));if(c===void 0||a===void 0)return ne(e);o[s]=c*16+a}return o},wi=()=>globalThis?.crypto?.subtle??ne("crypto.subtle must be defined, consider polyfill"),Vt=(...t)=>{let e=0;for(let o of t)e+=Ie(o).length;let r=ct(e),n=0;for(let o of t)r.set(o,n),n+=o.length;return r},Ii=(t=me)=>(globalThis?.crypto).getRandomValues(ct(t)),an=BigInt,Er=(t,e,r,n="bad number: out of range")=>typeof t!="bigint"?ne(n,TypeError):e<=t&&t<r?t:ne(n,RangeError),F=(t,e=Ot)=>{let r=t%e;return r>=0n?r:e+r},st=t=>F(t,it),wo=(t,e)=>{(t===0n||e<=0n)&&ne("no inverse n="+t+" mod="+e);let r=F(t,e),n=e,o=0n,s=1n,i=1n,c=0n;for(;r!==0n;){let a=n/r,f=n%r,l=o-i*a,h=s-c*a;n=r,r=f,o=i,s=c,i=l,c=h}return n===1n?F(o,e):ne("no inverse")},Ui=t=>{let e=hn[t];return typeof e!="function"&&ne("hashes."+t+" not set"),e},Oi=(t,e,r)=>Ie(Ui(t)(e,r),me,"digest"),of=(t,e,r)=>Promise.resolve(Ui(t)(e,r)).then(n=>Ie(n,me,"digest"));var bo=t=>t instanceof Ze?t:ne("Point expected"),Ri=t=>F(F(t*t)*t+Hi),Ei=t=>Er(t,0n,Ot),cn=t=>Er(t,1n,Ot),go=t=>Er(t,1n,it),Ki=t=>!(t&1n),Ar=t=>Uint8Array.of(t),sf=t=>Ar(Ki(t)?2:3),cf=t=>{let e=Ri(cn(t)),r=1n;for(let n=e,o=(Ot+1n)/4n;o>0n;o>>=1n)o&1n&&(r=r*n%Ot),n=n*n%Ot;return F(r*r)!==e&&ne("sqrt invalid"),Ki(r)?r:F(-r)};var De=class De{constructor(e,r,n){u(this,"X");u(this,"Y");u(this,"Z");this.X=Ei(e),this.Y=cn(r),this.Z=Ei(n),Object.freeze(this)}static CURVE(){return ki}static fromAffine(e){let{x:r,y:n}=e;return r===0n&&n===0n?Ut:new De(r,n,1n)}static fromBytes(e){Ie(e);let{publicKey:r,publicKeyUncompressed:n}=gr,o,s=e.length,i=e[0],c=e.subarray(1),a=fn(c,0,me);if(s===r&&(i===2||i===3)){let f=cf(a);i===3&&(f=F(-f)),o=new De(a,f,1n)}return s===n&&i===4&&(o=new De(a,fn(c,me,br),1n)),o?o.assertValidity():ne("bad point: not on curve")}static fromHex(e){return De.fromBytes(_i(e))}get x(){return this.toAffine().x}get y(){return this.toAffine().y}equals(e){let{X:r,Y:n,Z:o}=this,{X:s,Y:i,Z:c}=bo(e),a=F(r*c),f=F(s*o),l=F(n*c),h=F(i*o);return a===f&&l===h}is0(){return this.equals(Ut)}negate(){return new De(this.X,F(-this.Y),this.Z)}double(){return this.add(this)}add(e){let{X:r,Y:n,Z:o}=this,{X:s,Y:i,Z:c}=bo(e),a=0n,f=Hi,l=0n,h=0n,d=0n,p=F(f*3n),x=F(r*s),E=F(n*i),w=F(o*c),H=F(r+n),L=F(s+i);H=F(H*L),L=F(x+E),H=F(H-L),L=F(r+o);let g=F(s+c);return L=F(L*g),g=F(x+w),L=F(L-g),g=F(n+o),l=F(i+c),g=F(g*l),l=F(E+w),g=F(g-l),d=F(a*L),l=F(p*w),d=F(l+d),l=F(E-d),d=F(E+d),h=F(l*d),E=F(x+x),E=F(E+x),w=F(a*w),L=F(p*L),E=F(E+w),w=F(x-w),w=F(a*w),L=F(L+w),x=F(E*L),h=F(h+x),x=F(g*L),l=F(H*l),l=F(l-x),x=F(H*E),d=F(g*d),d=F(d+x),new De(l,h,d)}subtract(e){return this.add(bo(e).negate())}multiply(e,r=!0){if(!r&&e===0n)return Ut;if(go(e),e===1n)return this;if(this.equals(at))return Sf(e).p;let n=Ut,o=at;for(let s=this;e>0n;s=s.double(),e>>=1n)e&1n?n=n.add(s):r&&(o=o.add(s));return n}multiplyUnsafe(e){return this.multiply(e,!1)}toAffine(){let{X:e,Y:r,Z:n}=this;if(this.equals(Ut))return{x:0n,y:0n};if(n===1n)return{x:e,y:r};let o=wo(n,Ot);return F(n*o)!==1n&&ne("inverse invalid"),{x:F(e*o),y:F(r*o)}}assertValidity(){let{x:e,y:r}=this.toAffine();return cn(e),cn(r),F(r*r)===Ri(e)?this:ne("bad point: not on curve")}toBytes(e=!0){let{x:r,y:n}=this.assertValidity().toAffine(),o=Yt(r);return e?Vt(sf(n),o):Vt(Ar(4),o,Yt(n))}toHex(e){return Ti(this.toBytes(e))}};u(De,"BASE"),u(De,"ZERO");var Ze=De,at=new Ze(tf,rf,1n),Ut=new Ze(0n,1n,0n);Ze.BASE=at;Ze.ZERO=Ut;var af=(t,e,r)=>at.multiply(e,!1).add(t.multiply(r,!1)).assertValidity(),dn=t=>an("0x"+(Ti(t)||"0")),fn=(t,e,r)=>dn(t.subarray(e,r)),ff=2n**256n,Yt=t=>_i(Li(Er(t,0n,ff),br)),Eo=t=>{let e=dn(Ie(t,me,"secret key"));return Er(e,1n,it,"invalid secret key: outside of range")},Ao=t=>t>it>>1n,Ci=(t,e=!0)=>at.multiply(Eo(t)).toBytes(e),uf=t=>{try{return!!Eo(t)}catch{return!1}},lf=(t,e)=>{let{publicKey:r,publicKeyUncompressed:n}=gr;try{let o=t.length;return e===!0&&o!==r||e===!1&&o!==n?!1:!!Ze.fromBytes(t)}catch{return!1}},Ai=t=>[0,1,2,3].includes(t)?t:ne("invalid recovery id"),Bo=t=>{t===df&&ne('Signature format "der" is not supported: switch to noble-curves'),t!=null&&t!==wr&&t!==un&&ne("Signature format must be one of: compact, recovered, der")},Fi=(t,e=wr)=>{Bo(e);let r=gr.signature+ +(e===un);t.length!==r&&ne(`Signature format "${e}" expects Uint8Array with length ${r}`)},mr=class t{constructor(e,r,n){u(this,"r");u(this,"s");u(this,"recovery");this.r=go(e),this.s=go(r),n!=null&&(this.recovery=Ai(n)),Object.freeze(this)}static fromBytes(e,r=wr){Fi(e,r);let n;r===un&&(n=e[0],e=e.subarray(1));let o=fn(e,0,me),s=fn(e,me,br);return new t(o,s,n)}addRecoveryBit(e){return new t(this.r,this.s,e)}hasHighS(){return Ao(this.s)}toBytes(e=wr){Bo(e);let{r,s:n,recovery:o}=this,s=Vt(Yt(r),Yt(n));return e===un?Vt(Ar(Ai(o)),s):s}},Di=t=>{t.length>8192&&ne("input is too large");let e=t.length*8-256,r=dn(t);return e>0?r>>an(e):r},Mi=t=>st(Di(Ie(t))),wr="compact",un="recovered",df="der",Bi="SHA-256",hn={hmacSha256Async:async(t,e)=>{let r=wi(),n="HMAC",o=await r.importKey("raw",t,{name:n,hash:{name:Bi}},!1,["sign"]);return ct(await r.sign(n,o,e))},hmacSha256:void 0,sha256Async:async t=>ct(await wi().digest(Bi,t)),sha256:void 0},Ni=(t,e,r)=>{let n=Ie(t,void 0,"message");return e.prehash?r?of("sha256Async",n):Oi("sha256",n):n},hf=ct(0),pf=Ar(0),xf=Ar(1),yf=1e3,bf="drbg: tried max amount of iterations",gf=(t,e)=>{let r=ct(me),n=ct(me),o=0,s=()=>{r.fill(1),n.fill(0)},i=(...l)=>Oi("hmacSha256",n,Vt(r,...l)),c=(l=hf)=>{n=i(pf,l),r=i(),l.length!==0&&(n=i(xf,l),r=i())},a=()=>(o++>=yf&&ne(bf),r=i(),r);s(),c(t);let f;for(;!(f=e(a()));)c();return s(),f};var mf=(t,e,r,n)=>{let{lowS:o,extraEntropy:s}=r,i=Yt,c=Mi(t),a=i(c),f=Eo(e),l=[i(f),a];if(s!=null&&s!==!1){let x=s===!0?Ii(me):s;l.push(Ie(x,void 0,"extraEntropy"))}let h=Vt(...l),d=c;return n(h,x=>{let E=Di(x);if(!(1n<=E&&E<it))return;let w=wo(E,it),H=at.multiply(E).toAffine(),L=st(H.x);if(L===0n)return;let g=st(w*st(d+L*f));if(g===0n)return;let m=(H.x===L?0:2)|Number(H.y&1n),U=g;return o&&Ao(g)&&(U=st(-g),m^=1),new mr(L,U,m).toBytes(r.format)})},wf=(t,e,r,n={})=>{let{lowS:o,format:s}=n;t instanceof mr&&ne("Signature must be in Uint8Array, use .toBytes()"),Fi(t,s),Ie(r,void 0,"publicKey");try{let{r:i,s:c}=mr.fromBytes(t,s),a=Mi(e),f=Ze.fromBytes(r);if(o&&Ao(c))return!1;let l=wo(c,it),h=st(a*l),d=st(i*l),p=af(f,h,d).toAffine();return st(p.x)===i}catch{return!1}},ji=t=>({lowS:t.lowS??!0,prehash:t.prehash??!0,format:t.format??wr,extraEntropy:t.extraEntropy??!1}),Pi=(t,e,r={})=>{r=ji(r),Bo(r.format);let n=Ni(t,r,!1);return mf(n,e,r,gf)};var $i=(t,e,r,n={})=>{n=ji(n);let o=Ni(e,n,!1);return wf(t,o,r,n)};var Ef=t=>{if(t=t===void 0?Ii(gr.seed):t,Ie(t),t.length<gr.seed||t.length>1024)return ne("expected 48-1024b",RangeError);let e=F(dn(t),it-1n);return Yt(e+1n)};var Gi=Object.freeze({isValidSecretKey:uf,isValidPublicKey:lf,randomSecretKey:Ef});var ln=8,Af=256,zi=Math.ceil(Af/ln)+1,mo=2**(ln-1),Bf=()=>{let t=[],e=at,r=e;for(let n=0;n<zi;n++){r=e,t.push(r);for(let o=1;o<mo;o++)r=r.add(e),t.push(r);e=r.double()}return t},Si,vi=(t,e)=>{let r=e.negate();return t?r:e},Sf=t=>{let e=Si||(Si=Bf()),r=Ut,n=at,o=2**ln,s=o,i=an(o-1),c=an(ln);for(let a=0;a<zi;a++){let f=Number(t&i);t>>=c,f>mo&&(f-=s,t+=1n);let l=a*mo,h=l,d=l+Math.abs(f)-1,p=a%2!==0,x=f<0;f===0?n=n.add(vi(p,e[h])):r=r.add(vi(x,e[d]))}return t!==0n&&ne("invalid wnaf"),{p:r,f:n}};y();y();function qi(t){return t instanceof Uint8Array||ArrayBuffer.isView(t)&&t.constructor.name==="Uint8Array"&&"BYTES_PER_ELEMENT"in t&&t.BYTES_PER_ELEMENT===1}var So=t=>t?`"${t}" `:"";function vo(t,e=""){if(typeof t!="number")throw new TypeError(So(e)+"expected number, got "+typeof t);if(!Number.isSafeInteger(t)||t<0)throw new RangeError(So(e)+"expected integer >= 0, got "+t);return t}function Br(t,e,r=""){if(qi(t)&&(e===void 0||t.length===e))return t;e!==void 0&&vo(e,"length");let n=qi(t),o=e!==void 0?` of length ${e}`:"",s=n?`length=${t.length}`:`type=${typeof t}`,i=So(r)+"expected Uint8Array"+o+", got "+s;throw n?new RangeError(i):new TypeError(i)}function Vi(t){if(typeof t!="function"||typeof t.create!="function")throw new TypeError("expected hash wrapped by utils.createHasher");if(vo(t.outputLen),vo(t.blockLen),t.outputLen<1||t.blockLen<1)throw new Error("hash blockLen / outputLen must be >= 1")}var Wi=(t,e)=>{if(t===null||typeof t!="object"||Array.isArray(t))throw new TypeError((e==="object"?"":`"${e}" `)+"expected object, got type="+typeof t)};function Xt(t,e=!0){if(t.destroyed)throw new Error("hash was destroyed");if(e&&t.finished)throw new Error("digest() was already called")}function pn(t,e){Br(t,void 0,"output");let r=e.outputLen;if(!(t.length>=r))throw new RangeError('"output" expected length >= '+r)}function Sr(...t){for(let e=0;e<t.length;e++)t[e].fill(0)}function xn(t){return new DataView(t.buffer,t.byteOffset,t.byteLength)}function Ue(t,e){return t<<32-e|t>>>e}function kf(t,e,r="opts"){return Wi(t,"defaults"),e!==void 0&&Wi(e,r),Object.assign(t,e)}function Yi(t,e={}){if(typeof t!="function")throw new TypeError('"hashCons" expected function, got type='+typeof t);e=kf({},e,"info");let r=(o,s)=>t(s).update(o).digest(),n=t(void 0);return r.outputLen=n.outputLen,r.blockLen=n.blockLen,r.canXOF=n.canXOF,r.create=o=>t(o),Object.assign(r,e),Object.freeze(r)}var Xi=t=>({oid:Uint8Array.from([6,9,96,134,72,1,101,3,4,2,t])});var yn=class{constructor(e,r){u(this,"oHash");u(this,"iHash");u(this,"blockLen");u(this,"outputLen");u(this,"canXOF",!1);u(this,"finished",!1);u(this,"destroyed",!1);if(Vi(e),Br(r,void 0,"key"),this.iHash=e.create(),typeof this.iHash.update!="function")throw new Error("expected Hash instance");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),Sr(o)}update(e){return Xt(this),this.iHash.update(e),this}digestInto(e){Xt(this),pn(e,this),this.finished=!0;let r=e.subarray(0,this.outputLen);this.iHash.digestInto(r),this.oHash.update(r),this.oHash.digestInto(r),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,canXOF:a}=this;return e=e,e.finished=o,e.destroyed=s,e.blockLen=i,e.outputLen=c,e.canXOF=a,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()}},Zi=(()=>{let t=((e,r,n)=>new yn(e,r).update(n).digest());return t.create=(e,r)=>new yn(e,r),t})();y();y();y();var Hf=t=>t/2**32|0,Lf=t=>t>>>0;function Ji(t,e,r,n){let o=Hf(r),s=Lf(r);t.setUint32(e,n?s:o,n),t.setUint32(e+4,n?o:s,n)}function Qi(t,e,r){return t&e^~t&r}function ec(t,e,r){return t&e^t&r^e&r}var bn=class{constructor(e,r,n,o){u(this,"blockLen");u(this,"outputLen");u(this,"canXOF",!1);u(this,"padOffset");u(this,"isLE");u(this,"buffer");u(this,"view");u(this,"finished",!1);u(this,"length",0);u(this,"pos",0);u(this,"destroyed",!1);this.blockLen=e,this.outputLen=r,this.padOffset=n,this.isLE=o,this.buffer=new Uint8Array(e),this.view=xn(this.buffer)}update(e){Xt(this),Br(e);let{view:r,buffer:n,blockLen:o}=this,s=e.length,i=!1;for(let c=0;c<s;){let a=Math.min(o-this.pos,s-c);if(a===o){let f=xn(e);for(;o<=s-c;c+=o)this.process(f,c);i=!0;continue}n.set(c===0&&a===s?e:e.subarray(c,c+a),this.pos),this.pos+=a,c+=a,this.pos===o&&(this.process(r,0),this.pos=0,i=!0)}return this.length+=e.length,i&&this.roundClean(),this}digestInto(e){Xt(this),pn(e,this),this.finished=!0;let{buffer:r,view:n,blockLen:o,isLE:s}=this,{pos:i}=this;r[i++]=128,r.fill(0,i),this.padOffset>o-i&&(this.process(n,0),r.fill(0)),Ji(n,o-8,this.length*8,s),this.process(n,0),this.roundClean();let c=e===r?n:xn(e),a=this.outputLen,f=a/4,l=this.get();if(a%4||f>l.length)throw new Error("invalid outputLen");for(let h=0;h<f;h++)c.setUint32(4*h,l[h],s)}digest(){let{buffer:e,outputLen:r}=this;this.digestInto(e);let n=e.slice(0,r);return this.destroy(),n}_cloneIntoMeta(e){let{buffer:r,length:n,finished:o,destroyed:s,pos:i}=this;return e.destroyed=s,e.finished=o,e.length=n,e.pos=i,i&&e.buffer.set(r),e}clone(){return this._cloneInto()}},tc=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]);var Tf=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),ko=class extends bn{constructor(r,n){super(64,r,8,!1);u(this,"A",0);u(this,"B",0);u(this,"C",0);u(this,"D",0);u(this,"E",0);u(this,"F",0);u(this,"G",0);u(this,"H",0);this.A=n[0]|0,this.B=n[1]|0,this.C=n[2]|0,this.D=n[3]|0,this.E=n[4]|0,this.F=n[5]|0,this.G=n[6]|0,this.H=n[7]|0}get(){let{A:r,B:n,C:o,D:s,E:i,F:c,G:a,H:f}=this;return[r,n,o,s,i,c,a,f]}set(r,n,o,s,i,c,a,f){this.A=r|0,this.B=n|0,this.C=o|0,this.D=s|0,this.E=i|0,this.F=c|0,this.G=a|0,this.H=f|0}_cloneInto(r){return(r||(r=new this.constructor)).set(...this.get()),this._cloneIntoMeta(r)}process(r,n){for(let d=0;d<16;d++,n+=4)ft[d]=r.getUint32(n,!1);for(let d=16;d<64;d++){let p=ft[d-15],x=ft[d-2],E=Ue(p,7)^Ue(p,18)^p>>>3,w=Ue(x,17)^Ue(x,19)^x>>>10;ft[d]=w+ft[d-7]+E+ft[d-16]|0}let{A:o,B:s,C:i,D:c,E:a,F:f,G:l,H:h}=this;for(let d=0;d<64;d++){let p=Ue(a,6)^Ue(a,11)^Ue(a,25),x=h+p+Qi(a,f,l)+Tf[d]+ft[d]|0,w=(Ue(o,2)^Ue(o,13)^Ue(o,22))+ec(o,s,i)|0;h=l,l=f,f=a,a=c+x|0,c=i,i=s,s=o,o=x+w|0}o=o+this.A|0,s=s+this.B|0,i=i+this.C|0,c=c+this.D|0,a=a+this.E|0,f=f+this.F|0,l=l+this.G|0,h=h+this.H|0,this.set(o,s,i,c,a,f,l,h)}roundClean(){Sr(ft)}destroy(){this.destroyed=!0,this.set(0,0,0,0,0,0,0,0),Sr(this.buffer)}},Ho=class extends ko{constructor(){super(32,tc)}};var ut=Yi(()=>new Ho,Xi(1));y();function Ir(t){return Array.from(t).map(e=>e.toString(16).padStart(2,"0")).join("")}function Qt(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 vn(t,e){if(e==="sha256"){let r=await Promise.resolve().then(()=>(Sn(),Bn));return new Uint8Array(r.createHash("sha256").update(t).digest())}else if(e==="sha512"){let r=await Promise.resolve().then(()=>(Sn(),Bn));return new Uint8Array(r.createHash("sha512").update(t).digest())}else if(e==="sha3-256"){let r=await Promise.resolve().then(()=>(Sn(),Bn));return new Uint8Array(r.createHash("sha3-256").update(t).digest())}throw new Error(`Unsupported hash algorithm: ${e}`)}y();y();y();y();y();y();var Yf=t=>t/2**32|0,Xf=t=>t>>>0;function _c(t,e,r,n){let o=Yf(r),s=Xf(r);t.setUint32(e,n?s:o,n),t.setUint32(e+4,n?o:s,n)}tr();function Dc(t,e,r){return t&e^~t&r}function Mc(t,e,r){return t&e^t&r^e&r}var In=class{constructor(e,r,n,o){u(this,"blockLen");u(this,"outputLen");u(this,"canXOF",!1);u(this,"padOffset");u(this,"isLE");u(this,"buffer");u(this,"view");u(this,"finished",!1);u(this,"length",0);u(this,"pos",0);u(this,"destroyed",!1);this.blockLen=e,this.outputLen=r,this.padOffset=n,this.isLE=o,this.buffer=new Uint8Array(e),this.view=Tn(this.buffer)}update(e){er(this),je(e);let{view:r,buffer:n,blockLen:o}=this,s=e.length,i=!1;for(let c=0;c<s;){let a=Math.min(o-this.pos,s-c);if(a===o){let f=Tn(e);for(;o<=s-c;c+=o)this.process(f,c);i=!0;continue}n.set(c===0&&a===s?e:e.subarray(c,c+a),this.pos),this.pos+=a,c+=a,this.pos===o&&(this.process(r,0),this.pos=0,i=!0)}return this.length+=e.length,i&&this.roundClean(),this}digestInto(e){er(this),Ln(e,this),this.finished=!0;let{buffer:r,view:n,blockLen:o,isLE:s}=this,{pos:i}=this;r[i++]=128,r.fill(0,i),this.padOffset>o-i&&(this.process(n,0),r.fill(0)),_c(n,o-8,this.length*8,s),this.process(n,0),this.roundClean();let c=e===r?n:Tn(e),a=this.outputLen,f=a/4,l=this.get();if(a%4||f>l.length)throw new Error("invalid outputLen");for(let h=0;h<f;h++)c.setUint32(4*h,l[h],s)}digest(){let{buffer:e,outputLen:r}=this;this.digestInto(e);let n=e.slice(0,r);return this.destroy(),n}_cloneIntoMeta(e){let{buffer:r,length:n,finished:o,destroyed:s,pos:i}=this;return e.destroyed=s,e.finished=o,e.length=n,e.pos=i,i&&e.buffer.set(r),e}clone(){return this._cloneInto()}},Nc=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]);tr();var Qf=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]),pt=new Uint32Array(64),No=class extends In{constructor(r,n){super(64,r,8,!1);u(this,"A",0);u(this,"B",0);u(this,"C",0);u(this,"D",0);u(this,"E",0);u(this,"F",0);u(this,"G",0);u(this,"H",0);this.A=n[0]|0,this.B=n[1]|0,this.C=n[2]|0,this.D=n[3]|0,this.E=n[4]|0,this.F=n[5]|0,this.G=n[6]|0,this.H=n[7]|0}get(){let{A:r,B:n,C:o,D:s,E:i,F:c,G:a,H:f}=this;return[r,n,o,s,i,c,a,f]}set(r,n,o,s,i,c,a,f){this.A=r|0,this.B=n|0,this.C=o|0,this.D=s|0,this.E=i|0,this.F=c|0,this.G=a|0,this.H=f|0}_cloneInto(r){return(r||(r=new this.constructor)).set(...this.get()),this._cloneIntoMeta(r)}process(r,n){for(let d=0;d<16;d++,n+=4)pt[d]=r.getUint32(n,!1);for(let d=16;d<64;d++){let p=pt[d-15],x=pt[d-2],E=Re(p,7)^Re(p,18)^p>>>3,w=Re(x,17)^Re(x,19)^x>>>10;pt[d]=w+pt[d-7]+E+pt[d-16]|0}let{A:o,B:s,C:i,D:c,E:a,F:f,G:l,H:h}=this;for(let d=0;d<64;d++){let p=Re(a,6)^Re(a,11)^Re(a,25),x=h+p+Dc(a,f,l)+Qf[d]+pt[d]|0,w=(Re(o,2)^Re(o,13)^Re(o,22))+Mc(o,s,i)|0;h=l,l=f,f=a,a=c+x|0,c=i,i=s,s=o,o=x+w|0}o=o+this.A|0,s=s+this.B|0,i=i+this.C|0,c=c+this.D|0,a=a+this.E|0,f=f+this.F|0,l=l+this.G|0,h=h+this.H|0,this.set(o,s,i,c,a,f,l,h)}roundClean(){Ur(pt)}destroy(){this.destroyed=!0,this.set(0,0,0,0,0,0,0,0),Ur(this.buffer)}},jo=class extends No{constructor(){super(32,Nc)}};var jc=Kc(()=>new jo,Fc(1));y();Ft();Nn();var es=BigInt(0),Cr=BigInt(1),lu=BigInt(4),Jo=16,oa=128,du=5,sa=2**31;function cr(t){let e=t;if(typeof e!="function")throw new TypeError('"Point" expected constructor, got type='+typeof t);Ct(e.fromAffine,"Point.fromAffine"),Ct(e.fromBytes,"Point.fromBytes"),Ct(e.fromHex,"Point.fromHex"),xt(e.BASE,"Point.BASE"),xt(e.ZERO,"Point.ZERO"),sr(e.Fp),sr(e.Fn)}function ca(t,e){cr(t),aa(e,t);let r=Zo(t.Fp,e.map(n=>n.Z));return e.map((n,o)=>t.fromAffine(n.toAffine(r[o])))}function hu(t,e,r=1){if(!Number.isSafeInteger(t)||t<r||t>e)throw new Error("invalid window size, expected ["+r+".."+e+"], got W="+t)}function pu(t,e){let r=t*(4*e+128);if(r>sa)throw new Error("invalid window size: table would need ~"+Math.ceil(r/2**20)+" MiB, max "+sa/2**20+" MiB")}function ts(t,e){if(t!==void 0){Ct(t,"randomBytes");try{let r=t(e);if(!rr(r)||r.length!==e)return}catch{return}return t}}function aa(t,e){Or(t,"points"),t.forEach((r,n)=>{if(!(r instanceof e))throw new Error("invalid point at index "+n)})}function xu(t,e,r){if(!Array.isArray(t))throw new Error("array of scalars expected");t.forEach((n,o)=>{if(!(r===void 0?e.isValid(n):yt(n)&&n<r))throw new Error("invalid scalar at index "+o)})}var fa=new WeakMap;function Qo(t){return fa.get(t)||1}function yu(t,e){let r=t.double(),n=[t];for(let o=1;o<e;o++)n.push(n[o-1].add(r));return n}function bu(t,e){let r=2**e,n=r/2,o=BigInt(r-1),s=[];for(;t>es;){let i=0;t&Cr&&(i=Number(t&o),i>=n&&(i-=r),t-=BigInt(i)),s.push(i),t>>=Cr}return s}function gu(t,e,r){let n=2**e,o=n/2,s=BigInt(n-1),i=BigInt(e),c=[];for(let a=0;a<r;a++){let f=Number(t&s);t>>=i,f>o&&(f-=n,t+=Cr),c.push(f)}if(t!==es)throw new Error("invalid wnaf");return c}function mu(t,e,r){let n=0;for(let s of r)n=Math.max(n,s.length);let o=t;for(let s=n-1;s>=0;s--){s!==n-1&&(o=o.double());for(let i=0;i<r.length;i++){let c=r[i][s];if(c){let a=e[i][Math.abs(c)-1>>1];o=o.add(c<0?a.negate():a)}}}return o}var jn=class{constructor(e,r){u(this,"Point");u(this,"BASE");u(this,"ZERO");u(this,"randomBytes");u(this,"wnafPrecomputes",new WeakMap);u(this,"baseCanBeBlinded");u(this,"bits");cr(e),this.randomBytes=ts(r,Jo),this.Point=e,this.BASE=e.BASE,this.ZERO=e.ZERO,this.bits=e.Fn.BITS}buildWnafTable(e,r,n){let o=Math.ceil(n/r)+1,s=2**(r-1),i=[],c=e;for(let a=0;a<o;a++){let f=c;for(let l=0;l<s;l++)i.push(f),f=f.add(c);c=i[i.length-1].double()}return{W:r,bits:n,windows:o,comp:i}}wnafCachedCT(e,r){let{W:n,windows:o,comp:s}=e,i=2**(n-1),c=gu(r,n,o),a=this.ZERO,f=this.BASE;for(let l=0;l<o;l++){let h=c[l],d=l*i,p=Math.abs(h)-1,x=s[d];for(let w=1;w<i;w++)x=w===p?s[d+w]:x;let E=x.negate();h===0?f=f.add(s[d]):a=a.add(h<0?E:x)}return{p:a,f}}getWnafPrecomputes(e,r,n,o){let s=this.wnafPrecomputes.get(r),i=s?.find(c=>c.W===e&&c.bits===n);return i||(i=this.buildWnafTable(r,e,n),typeof o=="function"&&(i={...i,comp:o(i.comp)}),s||(s=[],this.wnafPrecomputes.set(r,s)),s.push(i)),i}assertPoint(e){if(!(e instanceof this.Point))throw new TypeError('"point" expected Point instance, got type='+typeof e)}validateMulInput(e,r){if(this.assertPoint(e),!qo(r,Cr,this.Point.Fn.ORDER))throw new Error("invalid scalar")}runCT(e,r,n,o){let s=Qo(e);return s===1?this.fixedWindowCT(e,r,n):this.wnafCachedCT(this.getWnafPrecomputes(s,e,n,o),r)}mulCT(e,r,n){return this.validateMulInput(e,r),this.runCT(e,r,this.bits,n)}mulCTBlinded(e,r,n){if(this.validateMulInput(e,r),this.randomBytes===void 0)throw new Error("randomBytes is required for scalar blinding");let o=this.Point.Fn.BITS+oa,s=this.randomBytes(Jo);if(!rr(s)||s.length!==Jo)throw new Error("randomBytes returned invalid byte array");s[0]=s[0]&63|128;let i=r+Pe(s)*this.Point.Fn.ORDER;return this.runCT(e,i,o,n)}fixedWindowCT(e,r,n){let o=du,s=1<<o,i=Kr(o),c=new Array(s);c[0]=this.ZERO;for(let l=1;l<s;l++)c[l]=c[l-1].add(e);let a=Math.ceil(n/o),f=this.ZERO;for(let l=a-1;l>=0;l--){if(l!==a-1)for(let p=0;p<o;p++)f=f.double();let h=Number(r>>BigInt(l*o)&i),d=c[0];for(let p=1;p<s;p++)d=p===h?c[p]:d;f=f.add(d)}return{p:f,f}}shouldBlind(e,r){return this.randomBytes===void 0?!1:r===Cr?!0:e!==this.BASE?!1:(this.baseCanBeBlinded===void 0&&(this.baseCanBeBlinded=this.mulUnsafe(this.BASE,this.Point.Fn.ORDER).is0()),this.baseCanBeBlinded)}mulSecret(e,r,n,o){return this.shouldBlind(e,n)?this.mulCTBlinded(e,r,o):this.mulCT(e,r,o)}mulUnsafe(e,r,n){if(this.assertPoint(e),!yt(r))throw new Error("invalid scalar");let o=Qo(e);if(o===1||r>=this.Point.Fn.ORDER)return Pn(this.Point,[e],[r],!0);let s=this.getWnafPrecomputes(o,e,this.bits,n);return this.wnafCachedCT(s,r).p}setWindowSize(e,r){this.assertPoint(e),hu(r,this.bits);let n=Math.ceil((this.bits+oa)/r)+1;pu(n*2**(r-1),this.Point.Fp.BYTES),fa.set(e,r),this.wnafPrecomputes.delete(e)}hasWindowSize(e){return Qo(e)!==1}};function Pn(t,e,r,n=!1){if(cr(t),aa(e,t),_e(n,"allowOversized"),xu(r,t.Fn,n?t.Fn.ORDER**lu:void 0),e.length!==r.length)throw new Error("arrays of points and scalars must have equal length");let o=e.map(i=>yu(i,4)),s=r.map(i=>bu(i,4));return mu(t.ZERO,o,s)}function ia(t,e,r){if(e){if(e.ORDER!==t)throw new Error("Field.ORDER must match order: Fp == p, Fn == n");return sr(e),e}else return ir(t,{isLE:r})}function ua(t,e,r={},n){if(t!=="weierstrass"&&t!=="edwards")throw new Error('expected curve type "weierstrass" or "edwards"');if(n===void 0&&(n=t==="edwards"),!e||typeof e!="object")throw new Error(`expected valid ${t} CURVE object`);$e(r);for(let a of["p","n","h"]){let f=e[a];if(!(yt(f)&&f!==es))throw new Error(`CURVE.${a} must be positive bigint`)}let o=ia(e.p,r.Fp,n),s=ia(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 la(t,e){return function(n){let o=t(n);return{secretKey:o,publicKey:e(o)}}}Nn();y();y();tr();var $n=class{constructor(e,r){u(this,"oHash");u(this,"iHash");u(this,"blockLen");u(this,"outputLen");u(this,"canXOF",!1);u(this,"finished",!1);u(this,"destroyed",!1);if(Hn(e),je(r,void 0,"key"),this.iHash=e.create(),typeof this.iHash.update!="function")throw new Error("expected Hash instance");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),Ur(o)}update(e){return er(this),this.iHash.update(e),this}digestInto(e){er(this),Ln(e,this),this.finished=!0;let r=e.subarray(0,this.outputLen);this.iHash.digestInto(r),this.oHash.update(r),this.oHash.digestInto(r),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,canXOF:a}=this;return e=e,e.finished=o,e.destroyed=s,e.blockLen=i,e.outputLen=c,e.canXOF=a,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()}},ya=(()=>{let t=((e,r,n)=>new $n(e,r).update(n).digest());return t.create=(e,r)=>new $n(e,r),t})();tr();Ft();y();Ft();var wu=BigInt(0),os=class extends Error{constructor(e=""){super(e)}},tt={Err:os,_tlv:{encode:(t,e)=>{let{Err:r}=tt;if(nr(t,"tag"),t<0||t>255)throw new r("tlv.encode: wrong tag");if($c(e,"data"),e.length&1)throw new r("tlv.encode: unpadded data");let n=e.length/2,o=Rr(n);if(o.length/2&128)throw new r("tlv.encode: long form length too big");let s=n>127?Rr(o.length/2|128):"";return Rr(t)+s+o+e},decode(t,e){let{Err:r}=tt;e=pe(e,void 0,"DER data");let n=0;if(t<0||t>255)throw new r("tlv.decode: 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 f=e.subarray(n,n+a);if(f.length!==a)throw new r("tlv.decode: length bytes not complete");if(f[0]===0)throw new r("tlv.decode(long): zero leftmost byte");for(let l of f)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}=tt;if(Kn(t),t<wu)throw new e("integer: negative integers are not allowed");let r=Rr(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}=tt;if(t.length<1)throw new e("invalid signature integer: empty");if(t[0]&128)throw new e("invalid signature integer: negative");if(t.length>1&&t[0]===0&&!(t[1]&128))throw new e("invalid signature integer: unnecessary leading zero");return Pe(t)}},toSig(t){let{Err:e,_int:r,_tlv:n}=tt,o=pe(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:f,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(f)}},hexFromSig(t){let{_tlv:e,_int:r}=tt;$e(t,{r:"bigint",s:"bigint"},{},"sig");let n=e.encode(2,r.encode(t.r)),o=e.encode(2,r.encode(t.s)),s=n+o;return e.encode(48,s)}},ss=(Object.freeze(tt._tlv),Object.freeze(tt._int),Object.freeze(tt));Nn();var ba=(t,e)=>(t+(t>=0?e:-e)/ga)/e;function Eu(t,e,r){Wo("scalar",t,rt,r);let[[n,o],[s,i]]=e,c=ba(i*t,r),a=ba(-o*t,r),f=t-c*n-a*s,l=-c*o-a*i,h=f<rt,d=l<rt;h&&(f=-f),d&&(l=-l);let p=Kr(Math.ceil(or(r)/2))+Dt;if(f<rt||f>=p||l<rt||l>=p)throw new Error("splitScalar (endomorphism): failed for k");return{k1neg:h,k1:f,k2neg:d,k2:l}}function as(t){if(!["compact","recovered","der"].includes(t))throw new Error('Signature format must be "compact", "recovered", or "der"');return t}function is(t,e){$e(t);let r={};for(let n of Object.keys(e))r[n]=t[n]===void 0?e[n]:t[n];return _e(r.lowS,"lowS"),_e(r.prehash,"prehash"),r.format!==void 0&&as(r.format),r}var rt=BigInt(0),Dt=BigInt(1),ga=BigInt(2),cs=BigInt(3),Au=BigInt(4);function ma(t,e={}){let r=ua("weierstrass",t,e),n=r.Fp,o=r.Fn,s=r.CURVE,{h:i,n:c}=s;$e(e,{},{allowInfinityPoint:"boolean",clearCofactor:"function",isTorsionFree:"function",fromBytes:"function",toBytes:"function",endo:"object",randomBytes:"function"});let{endo:a,allowInfinityPoint:f}=e,l=e.randomBytes===void 0?Rn:e.randomBytes;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 h=Ea(n,o);function d(){if(!n.isOdd)throw new Error("compression is not supported: Field does not have .isOdd()")}function p(Y,k,O){if(f&&k.is0())return Uint8Array.of(0);let{x:N,y:_}=k.toAffine(),A=n.toBytes(N);if(_e(O,"isCompressed"),O){d();let T=!n.isOdd(_);return et(wa(T),A)}else return et(Uint8Array.of(4),A,n.toBytes(_))}function x(Y){pe(Y,void 0,"Point");let{publicKey:k,publicKeyUncompressed:O}=h,N=Y.length,_=Y[0],A=Y.subarray(1);if(f&&N===1&&_===0)return{x:n.ZERO,y:n.ZERO};if(N===k&&(_===2||_===3)){let T=n.fromBytes(A);if(!n.isValid(T))throw new Error("bad point: is not on curve, wrong x");let M=g(T),j;try{j=n.sqrt(M)}catch(B){let S=B instanceof Error?": "+B.message:"";throw new Error("bad point: is not on curve, sqrt error"+S)}d();let $=n.isOdd(j);return(_&1)===1!==$&&(j=n.neg(j)),{x:T,y:j}}else if(N===O&&_===4){let T=n.BYTES,M=n.fromBytes(A.subarray(0,T)),j=n.fromBytes(A.subarray(T,T*2));if(!m(M,j))throw new Error("bad point: is not on curve");return{x:M,y:j}}else throw new Error(`bad point: got length ${N}, expected compressed=${k} or uncompressed=${O}`)}let E=e.toBytes===void 0?p:e.toBytes,w=e.fromBytes===void 0?x:e.fromBytes,H=n.mul(s.b,cs),L=n.is0(s.a)?Y=>n.ZERO:Y=>n.mul(s.a,Y);function g(Y){let k=n.sqr(Y),O=n.mul(k,Y);return n.add(n.add(O,n.mul(Y,s.a)),s.b)}function m(Y,k){let O=n.sqr(k),N=g(Y);return n.eql(O,N)}if(!m(s.Gx,s.Gy))throw new Error("bad curve params: generator point");let U=n.mul(n.pow(s.a,cs),Au),P=n.mul(n.sqr(s.b),BigInt(27));if(n.is0(n.add(U,P)))throw new Error("bad curve params: a or b");function X(Y,k,O=!1){if(!n.isValid(k)||O&&n.is0(k))throw new Error(`bad point coordinate ${Y}`);return k}function q(Y){if(!(Y instanceof Z))throw new Error("Weierstrass Point expected")}function z(Y){if(!a||!a.basises)throw new Error("no endo");return Eu(Y,a.basises,o.ORDER)}function D(Y,k,O,N){if(!o.isValid(N))throw new RangeError("invalid scalar: out of range");if(a){let{k1neg:_,k1:A,k2neg:T,k2:M}=z(N),j=new Z(n.mul(O.X,a.beta),O.Y,O.Z);Y.push(_?O.negate():O,T?j.negate():j),k.push(A,M)}else Y.push(O),k.push(N)}let J=new WeakSet,V=class V{constructor(k,O,N){u(this,"X");u(this,"Y");u(this,"Z");this.X=X("x",k),this.Y=X("y",O,!0),this.Z=X("z",N),Object.freeze(this)}static CURVE(){return s}static fromAffine(k){let{x:O,y:N}=k||{};if(!k||!n.isValid(O)||!n.isValid(N))throw new Error("invalid affine point");if(k instanceof V)throw new Error("projective point not allowed");return n.is0(O)&&n.is0(N)?V.ZERO:new V(O,N,n.ONE)}static fromBytes(k){let O=V.fromAffine(w(pe(k,void 0,"point")));return O.assertValidity(),O}static fromHex(k){return V.fromBytes(On(k))}get x(){return this.toAffine().x}get y(){return this.toAffine().y}precompute(k=6,O=!0){return fe.setWindowSize(this,k),O||this.multiply(cs),this}assertValidity(){let k=this;if(k.is0()){if(e.allowInfinityPoint&&n.is0(k.X)&&n.eql(k.Y,n.ONE)&&n.is0(k.Z))return;throw new Error("bad point: ZERO")}if(J.has(k))return;let{x:O,y:N}=k.toAffine();if(!n.isValid(O)||!n.isValid(N))throw new Error("bad point: x or y not field elements");if(!m(O,N))throw new Error("bad point: equation left != right");if(!k.isTorsionFree())throw new Error("bad point: not in prime-order subgroup");J.add(k)}hasEvenY(){let{y:k}=this.toAffine();if(!n.isOdd)throw new Error("Field doesn't support isOdd");return!n.isOdd(k)}equals(k){q(k);let{X:O,Y:N,Z:_}=this,{X:A,Y:T,Z:M}=k,j=n.eql(n.mul(O,M),n.mul(A,_)),$=n.eql(n.mul(N,M),n.mul(T,_));return j&&$}negate(){return new V(this.X,n.neg(this.Y),this.Z)}double(){let{X:k,Y:O,Z:N}=this,_=n.ZERO,A=n.ZERO,T=n.ZERO,M=n.mul(k,k),j=n.mul(O,O),$=n.mul(N,N),b=n.mul(k,O);return b=n.add(b,b),T=n.mul(k,N),T=n.add(T,T),_=L(T),A=n.mul(H,$),A=n.add(_,A),_=n.sub(j,A),A=n.add(j,A),A=n.mul(_,A),_=n.mul(b,_),T=n.mul(H,T),$=L($),b=n.sub(M,$),b=L(b),b=n.add(b,T),T=n.add(M,M),M=n.add(T,M),M=n.add(M,$),M=n.mul(M,b),A=n.add(A,M),$=n.mul(O,N),$=n.add($,$),M=n.mul($,b),_=n.sub(_,M),T=n.mul($,j),T=n.add(T,T),T=n.add(T,T),new V(_,A,T)}add(k){q(k);let{X:O,Y:N,Z:_}=this,{X:A,Y:T,Z:M}=k,j=n.ZERO,$=n.ZERO,b=n.ZERO,B=n.mul(O,A),S=n.mul(N,T),v=n.mul(_,M),R=n.add(O,N),I=n.add(A,T);R=n.mul(R,I),I=n.add(B,S),R=n.sub(R,I),I=n.add(O,_);let G=n.add(A,M);return I=n.mul(I,G),G=n.add(B,v),I=n.sub(I,G),G=n.add(N,_),j=n.add(T,M),G=n.mul(G,j),j=n.add(S,v),G=n.sub(G,j),b=L(I),j=n.mul(H,v),b=n.add(j,b),j=n.sub(S,b),b=n.add(S,b),$=n.mul(j,b),S=n.add(B,B),S=n.add(S,B),v=L(v),I=n.mul(H,I),S=n.add(S,v),v=n.sub(B,v),v=L(v),I=n.add(I,v),B=n.mul(S,I),$=n.add($,B),B=n.mul(G,I),j=n.mul(R,j),j=n.sub(j,B),B=n.mul(R,S),b=n.mul(G,b),b=n.add(b,B),new V(j,$,b)}subtract(k){return q(k),this.add(k.negate())}is0(){return this.equals(V.ZERO)}multiply(k){if(!o.isValidNot0(k))throw new RangeError("invalid scalar: out of range");let{p:O,f:N}=fe.mulSecret(this,k,i,ae);return ae([O,N])[0]}multiplyUnsafe(k){let O=this,N=k;if(!o.isValid(N))throw new RangeError("invalid scalar: out of range");if(N===rt||O.is0())return V.ZERO;if(N===Dt)return O;if(fe.hasWindowSize(this))return fe.mulUnsafe(O,N,ae);let _=[],A=[];return D(_,A,O,N),Pn(V,_,A)}mulAddUnsafe(k,O,N){q(O);let _=[],A=[];return D(_,A,this,k),D(_,A,O,N),Pn(V,_,A)}toAffine(k){let O=this,N=k;if(N!=null&&!n.isValid(N))throw new RangeError('"invertedZ" expected valid field element');let{X:_,Y:A,Z:T}=O;if(n.eql(T,n.ONE))return{x:_,y:A};let M=O.is0();N==null&&(N=M?n.ONE:n.inv(T));let j=n.mul(_,N),$=n.mul(A,N),b=n.mul(T,N);if(M)return{x:n.ZERO,y:n.ZERO};if(!n.eql(b,n.ONE))throw new Error("invZ was invalid");return{x:j,y:$}}isTorsionFree(){let{isTorsionFree:k}=e;return i===Dt?!0:k?k(V,this):fe.mulUnsafe(this,c).is0()}clearCofactor(){let{clearCofactor:k}=e;return i===Dt?this:k?k(V,this):this.multiplyUnsafe(i)}isSmallOrder(){return i===Dt?this.is0():this.clearCofactor().is0()}toBytes(k=!0){return _e(k,"isCompressed"),this.assertValidity(),E(V,this,k)}toHex(k=!0){return $o(this.toBytes(k))}toString(){return`<Point ${this.is0()?"ZERO":this.toHex()}>`}};u(V,"BASE",new V(s.Gx,s.Gy,n.ONE)),u(V,"ZERO",new V(n.ZERO,n.ONE,n.ZERO)),u(V,"Fp",n),u(V,"Fn",o);let Z=V,ae=Y=>ca(Z,Y),fe=new jn(Z,l);return fe.bits>=6&&Z.BASE.precompute(6),Object.freeze(Z.prototype),Object.freeze(Z),Z}function wa(t){return Uint8Array.of(t?2:3)}function Ea(t,e){return{secretKey:e.BYTES,publicKey:1+t.BYTES,publicKeyUncompressed:1+2*t.BYTES,publicKeyHasPrefix:!0,signature:2*e.BYTES}}function Bu(t,e={}){cr(t);let{Fn:r}=t,n=e.randomBytes===void 0?Rn:e.randomBytes,o=Object.assign(Ea(t.Fp,r),{seed:Math.max(Dn(r.ORDER),16)});function s(p){try{let x=r.fromBytes(p);return r.isValidNot0(x)}catch{return!1}}function i(p,x){let{publicKey:E,publicKeyUncompressed:w}=o;try{let H=p.length;return x===!0&&H!==E||x===!1&&H!==w?!1:!!t.fromBytes(p)}catch{return!1}}function c(p){return p=p===void 0?n(o.seed):p,Mn(pe(p,o.seed,"seed"),r.ORDER)}function a(p,x=!0){return t.BASE.multiply(r.fromBytes(p)).toBytes(x)}function f(p){let{secretKey:x,publicKey:E,publicKeyUncompressed:w}=o,H=r._lengths;if(!rr(p))return;let L=pe(p,void 0,"key").length,g=L===E||L===w,m=L===x||!!H?.includes(L);if(!(g&&m))return g}function l(p,x,E=!0){if(f(p)===!0)throw new Error("first arg must be private key");if(f(x)===!1)throw new Error("second arg must be public key");let w=r.fromBytes(p);return t.fromBytes(x).multiply(w).toBytes(E)}let h={isValidSecretKey:s,isValidPublicKey:i,randomSecretKey:c},d=la(c,a);return Object.freeze(h),Object.freeze(o),Object.freeze({getPublicKey:a,getSharedSecret:l,keygen:d,Point:t,utils:h,lengths:o})}function Aa(t,e,r={}){cr(t);let n=e;Hn(n),$e(r,{},{hmac:"function",lowS:"boolean",randomBytes:"function",bits2int:"function",bits2int_modN:"function"});let o=Object.assign({},r),s=o.randomBytes===void 0?Rn:o.randomBytes,i=o.hmac===void 0?(_,A)=>ya(n,_,A):o.hmac,{Fp:c,Fn:a}=t,{ORDER:f,BITS:l}=a,h=Dn(f),d=ts(s,h),{keygen:p,getPublicKey:x,getSharedSecret:E,utils:w,lengths:H}=Bu(t,o),L={prehash:!0,lowS:typeof o.lowS=="boolean"?o.lowS:!0,format:"compact",extraEntropy:!1},g=f*ga+Dt<c.ORDER;function m(_){let A=f>>Dt;return _>A}function U(_,A){if(!a.isValidNot0(A))throw new Error(`invalid signature ${_}: out of range 1..Point.Fn.ORDER`);return A}function P(){if(!c.isOdd)throw new Error("Field doesn't support isOdd")}function X(_,A,T){return P(),(_===T?0:2)|Number(c.isOdd(A))}function q(){if(g)throw new Error('"recovered" sig type is not supported for cofactor >2 curves')}function z(_,A){as(A);let T=H.signature,M=A==="compact"?T:A==="recovered"?T+1:void 0;return pe(_,M)}class D{constructor(A,T,M){u(this,"r");u(this,"s");u(this,"recovery");if(this.r=U("r",A),this.s=U("s",T),M!=null){if(q(),![0,1,2,3].includes(M))throw new Error("invalid recovery id");this.recovery=M}Object.freeze(this)}static fromBytes(A,T=L.format){z(A,T);let M;if(T==="der"){let{r:B,s:S}=ss.toSig(pe(A));return new D(B,S)}T==="recovered"&&(M=A[0],T="compact",A=A.subarray(1));let j=H.signature/2,$=A.subarray(0,j),b=A.subarray(j,j*2);return new D(a.fromBytes($),a.fromBytes(b),M)}static fromHex(A,T){return this.fromBytes(On(A),T)}assertRecovery(){let{recovery:A}=this;if(A==null)throw new Error("invalid recovery id: must be present");return A}addRecoveryBit(A){return new D(this.r,this.s,A)}recoverPublicKey(A){let{r:T,s:M}=this,j=this.assertRecovery(),$=j===2||j===3?T+f:T;if(!c.isValid($))throw new Error("invalid recovery id: sig.r+curve.n != R.x");let b=c.toBytes($),B=t.fromBytes(et(wa((j&1)===0),b)),S=a.inv($),v=Z(pe(A,void 0,"msgHash")),R=a.create(-v*S),I=a.create(M*S),G=t.BASE.mulAddUnsafe(R,B,I);if(G.is0())throw new Error("invalid recovery: point at infinify");return G.assertValidity(),G}hasHighS(){return m(this.s)}toBytes(A=L.format){if(as(A),A==="der")return On(ss.hexFromSig(this));let{r:T,s:M}=this,j=a.toBytes(T),$=a.toBytes(M);return A==="recovered"?(q(),et(Uint8Array.of(this.assertRecovery()),j,$)):et(j,$)}toHex(A){return $o(this.toBytes(A))}}Object.freeze(D.prototype),Object.freeze(D);let J=o.bits2int===void 0?function(A){if(A.length>8192)throw new Error("input is too large");let T=Pe(A),M=A.length*8-l;return M>0?T>>BigInt(M):T}:o.bits2int,Z=o.bits2int_modN===void 0?function(A){return a.create(J(A))}:o.bits2int_modN,ae=Kr(l);function fe(_){return Wo("num < 2^"+l,_,rt,ae),a.toBytes(_)}function V(_,A){return pe(_,void 0,"message"),A?pe(n(_),void 0,"prehashed message"):_}function Y(_,A,T){let{lowS:M,prehash:j,extraEntropy:$}=is(T,L);_=V(_,j);let b=Z(_),B=a.fromBytes(A);if(!a.isValidNot0(B))throw new Error("invalid private key");let S=[fe(B),fe(b)];if($!=null&&$!==!1){let G=$===!0?s(H.secretKey):$;S.push(pe(G,void 0,"extraEntropy"))}let v=et(...S),R=b;function I(G){let te=J(G);if(!a.isValidNot0(te))return;let le=t.BASE.multiply(te).toAffine(),oe=a.create(le.x);if(oe===rt)return;let re;if(d!==void 0){let ue=Pe(Mn(d(h),f)),Be=a.inv(a.mul(ue,te)),Fe=a.mul(ue,R),Ye=a.mul(ue,B);re=a.create(Be*a.create(Fe+Ye*oe))}else{let ue=ea(te,f);re=a.create(ue*a.create(R+oe*B))}if(re===rt)return;let de=X(le.x,le.y,oe),Ae=re;return M&&m(re)&&(Ae=a.neg(re),de^=1),new D(oe,Ae,g?void 0:de)}return{seed:v,k2sig:I}}function k(_,A,T={}){let{seed:M,k2sig:j}=Y(_,A,T);return zc(n.outputLen,a.BYTES,i)(M,j).toBytes(T.format)}function O(_,A,T,M={}){let{lowS:j,prehash:$,format:b}=is(M,L);if(T=pe(T,void 0,"publicKey"),A=V(A,$),!rr(_)){let B=_ instanceof D?", use sig.toBytes()":"";throw new Error("verify expects Uint8Array signature"+B)}z(_,b);try{let B=D.fromBytes(_,b),S=t.fromBytes(T);if(j&&B.hasHighS())return!1;let{r:v,s:R}=B,I=Z(A),G=a.inv(R),te=a.create(I*G),le=a.create(v*G),oe=t.BASE.mulAddUnsafe(te,S,le);if(oe.is0())return!1;let re=oe.toAffine();return!(a.create(re.x)!==v||b==="recovered"&&B.recovery!==X(re.x,re.y,v))}catch{return!1}}function N(_,A,T={}){let{prehash:M}=is(T,L);return A=V(A,M),D.fromBytes(_,"recovered").recoverPublicKey(A).toBytes()}return Object.freeze({keygen:p,getPublicKey:x,getSharedSecret:E,utils:w,lengths:H,Point:t,sign:k,verify:O,recoverPublicKey:N,Signature:D,hash:n})}var us={p:BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),n:BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),h:BigInt(1),a:BigInt(0),b:BigInt(7),Gx:BigInt("0x79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798"),Gy:BigInt("0x483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8")},Su={beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),basises:[[BigInt("0x3086d221a7d46bcde86c90e49284eb15"),-BigInt("0xe4437ed6010e88286f547fa90abfe4c3")],[BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),BigInt("0x3086d221a7d46bcde86c90e49284eb15")]]};var Ba=BigInt(2);function vu(t){let e=us.p,r=BigInt(3),n=BigInt(6),o=BigInt(11),s=BigInt(22),i=BigInt(23),c=BigInt(44),a=BigInt(88),f=t*t*t%e,l=f*f*t%e,h=ke(l,r,e)*l%e,d=ke(h,r,e)*l%e,p=ke(d,Ba,e)*f%e,x=ke(p,o,e)*p%e,E=ke(x,s,e)*x%e,w=ke(E,c,e)*E%e,H=ke(w,a,e)*w%e,L=ke(H,c,e)*E%e,g=ke(L,r,e)*l%e,m=ke(g,i,e)*x%e,U=ke(m,n,e)*f%e,P=ke(U,Ba,e);if(!fs.eql(fs.sqr(P),t))throw new Error("Cannot find square root");return P}var fs=ir(us.p,{sqrt:vu}),ku=ma(us,{Fp:fs,endo:Su}),ar=Aa(ku,jc);y();y();function Sa(t){return t instanceof Uint8Array||ArrayBuffer.isView(t)&&t.constructor.name==="Uint8Array"&&"BYTES_PER_ELEMENT"in t&&t.BYTES_PER_ELEMENT===1}var ls=t=>t?`"${t}" `:"";function ds(t,e=""){if(typeof t!="number")throw new TypeError(ls(e)+"expected number, got "+typeof t);if(!Number.isSafeInteger(t)||t<0)throw new RangeError(ls(e)+"expected integer >= 0, got "+t);return t}function He(t,e,r=""){if(Sa(t)&&(e===void 0||t.length===e))return t;e!==void 0&&ds(e,"length");let n=Sa(t),o=e!==void 0?` of length ${e}`:"",s=n?`length=${t.length}`:`type=${typeof t}`,i=ls(r)+"expected Uint8Array"+o+", got "+s;throw n?new RangeError(i):new TypeError(i)}function ka(t){if(typeof t!="function"||typeof t.create!="function")throw new TypeError("expected hash wrapped by utils.createHasher");if(ds(t.outputLen),ds(t.blockLen),t.outputLen<1||t.blockLen<1)throw new Error("hash blockLen / outputLen must be >= 1")}var va=(t,e)=>{if(t===null||typeof t!="object"||Array.isArray(t))throw new TypeError((e==="object"?"":`"${e}" `)+"expected object, got type="+typeof t)};function fr(t,e=!0){if(t.destroyed)throw new Error("hash was destroyed");if(e&&t.finished)throw new Error("digest() was already called")}function Gn(t,e){He(t,void 0,"output");let r=e.outputLen;if(!(t.length>=r))throw new RangeError('"output" expected length >= '+r)}function Ge(...t){for(let e=0;e<t.length;e++)t[e].fill(0)}function gt(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];He(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 Hu(t,e,r="opts"){return va(t,"defaults"),e!==void 0&&va(e,r),Object.assign(t,e)}function Nr(t,e={}){if(typeof t!="function")throw new TypeError('"hashCons" expected function, got type='+typeof t);e=Hu({},e,"info");let r=(o,s)=>t(s).update(o).digest(),n=t(void 0);return r.outputLen=n.outputLen,r.blockLen=n.blockLen,r.canXOF=n.canXOF,r.create=o=>t(o),Object.assign(r,e),Object.freeze(r)}var hs=t=>({oid:Uint8Array.from([6,9,96,134,72,1,101,3,4,2,t])});var zn=class{constructor(e,r){u(this,"oHash");u(this,"iHash");u(this,"blockLen");u(this,"outputLen");u(this,"canXOF",!1);u(this,"finished",!1);u(this,"destroyed",!1);if(ka(e),He(r,void 0,"key"),this.iHash=e.create(),typeof this.iHash.update!="function")throw new Error("expected Hash instance");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),Ge(o)}update(e){return fr(this),this.iHash.update(e),this}digestInto(e){fr(this),Gn(e,this),this.finished=!0;let r=e.subarray(0,this.outputLen);this.iHash.digestInto(r),this.oHash.update(r),this.oHash.digestInto(r),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,canXOF:a}=this;return e=e,e.finished=o,e.destroyed=s,e.blockLen=i,e.outputLen=c,e.canXOF=a,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()}},ps=(()=>{let t=((e,r,n)=>new zn(e,r).update(n).digest());return t.create=(e,r)=>new zn(e,r),t})();y();y();y();var qn=BigInt(4294967295),Ha=BigInt(32);function Lu(t,e=!1){return e?{h:Number(t&qn),l:Number(t>>Ha&qn)}:{h:Number(t>>Ha&qn)|0,l:Number(t&qn)|0}}function La(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}=Lu(t[s],e);[n[s],o[s]]=[i,c]}return[n,o]}var Tu=t=>t/2**32|0,_u=t=>t>>>0;function Ta(t,e,r,n){let o=Tu(r),s=_u(r);t.setUint32(e,n?s:o,n),t.setUint32(e+4,n?o:s,n)}var xs=(t,e,r)=>t>>>r,ys=(t,e,r)=>t<<32-r|e>>>r,Mt=(t,e,r)=>t>>>r|e<<32-r,Nt=(t,e,r)=>t<<32-r|e>>>r,jr=(t,e,r)=>t<<64-r|e>>>r-32,Pr=(t,e,r)=>t>>>r-32|e<<64-r;function ze(t,e,r,n){let o=(e>>>0)+(n>>>0);return{h:t+r+(o/2**32|0)|0,l:o|0}}var _a=(t,e,r)=>(t>>>0)+(e>>>0)+(r>>>0),Ia=(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),Oa=(t,e,r,n,o)=>e+r+n+o+(t/2**32|0)|0,Ra=(t,e,r,n,o)=>(t>>>0)+(e>>>0)+(r>>>0)+(n>>>0)+(o>>>0),Ka=(t,e,r,n,o,s)=>e+r+n+o+s+(t/2**32|0)|0;function bs(t,e,r){return t&e^~t&r}function gs(t,e,r){return t&e^t&r^e&r}var jt=class{constructor(e,r,n,o){u(this,"blockLen");u(this,"outputLen");u(this,"canXOF",!1);u(this,"padOffset");u(this,"isLE");u(this,"buffer");u(this,"view");u(this,"finished",!1);u(this,"length",0);u(this,"pos",0);u(this,"destroyed",!1);this.blockLen=e,this.outputLen=r,this.padOffset=n,this.isLE=o,this.buffer=new Uint8Array(e),this.view=gt(this.buffer)}update(e){fr(this),He(e);let{view:r,buffer:n,blockLen:o}=this,s=e.length,i=!1;for(let c=0;c<s;){let a=Math.min(o-this.pos,s-c);if(a===o){let f=gt(e);for(;o<=s-c;c+=o)this.process(f,c);i=!0;continue}n.set(c===0&&a===s?e:e.subarray(c,c+a),this.pos),this.pos+=a,c+=a,this.pos===o&&(this.process(r,0),this.pos=0,i=!0)}return this.length+=e.length,i&&this.roundClean(),this}digestInto(e){fr(this),Gn(e,this),this.finished=!0;let{buffer:r,view:n,blockLen:o,isLE:s}=this,{pos:i}=this;r[i++]=128,r.fill(0,i),this.padOffset>o-i&&(this.process(n,0),r.fill(0)),Ta(n,o-8,this.length*8,s),this.process(n,0),this.roundClean();let c=e===r?n:gt(e),a=this.outputLen,f=a/4,l=this.get();if(a%4||f>l.length)throw new Error("invalid outputLen");for(let h=0;h<f;h++)c.setUint32(4*h,l[h],s)}digest(){let{buffer:e,outputLen:r}=this;this.digestInto(e);let n=e.slice(0,r);return this.destroy(),n}_cloneIntoMeta(e){let{buffer:r,length:n,finished:o,destroyed:s,pos:i}=this;return e.destroyed=s,e.finished=o,e.length=n,e.pos=i,i&&e.buffer.set(r),e}clone(){return this._cloneInto()}},Ca=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]);var Fa=Uint32Array.from([1779033703,4089235720,3144134277,2227873595,1013904242,4271175723,2773480762,1595750129,1359893119,2917565137,2600822924,725511199,528734635,4215389547,1541459225,327033209]);var Uu=Uint8Array.from([7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8]),Ma=Uint8Array.from(new Array(16).fill(0).map((t,e)=>e)),Ou=Ma.map(t=>(9*t+5)%16),Na=(()=>{let r=[[Ma],[Ou]];for(let n=0;n<4;n++)for(let o of r)o.push(o[n].map(s=>Uu[s]));return r})(),ja=Na[0],Pa=Na[1],$a=[[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)),Ru=ja.map((t,e)=>t.map(r=>$a[e][r])),Ku=Pa.map((t,e)=>t.map(r=>$a[e][r])),Cu=Uint32Array.from([0,1518500249,1859775393,2400959708,2840853838]),Fu=Uint32Array.from([1352829926,1548603684,1836072691,2053994217,0]);function Da(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 Wn=new Uint32Array(16),ms=class extends jt{constructor(){super(64,20,8,!0);u(this,"h0",1732584193);u(this,"h1",-271733879);u(this,"h2",-1732584194);u(this,"h3",271733878);u(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}_cloneInto(r){return(r||(r=new this.constructor)).set(...this.get()),this._cloneIntoMeta(r)}process(r,n){for(let x=0;x<16;x++,n+=4)Wn[x]=r.getUint32(n,!0);let o=this.h0|0,s=o,i=this.h1|0,c=i,a=this.h2|0,f=a,l=this.h3|0,h=l,d=this.h4|0,p=d;for(let x=0;x<5;x++){let E=4-x,w=Cu[x],H=Fu[x],L=ja[x],g=Pa[x],m=Ru[x],U=Ku[x];for(let P=0;P<16;P++){let X=Dr(o+Da(x,i,a,l)+Wn[L[P]]+w,m[P])+d|0;o=d,d=l,l=Dr(a,10)|0,a=i,i=X}for(let P=0;P<16;P++){let X=Dr(s+Da(E,c,f,h)+Wn[g[P]]+H,U[P])+p|0;s=p,p=h,h=Dr(f,10)|0,f=c,c=X}}this.set(this.h1+a+h|0,this.h2+l+p|0,this.h3+d+s|0,this.h4+o+c|0,this.h0+i+f|0)}roundClean(){Ge(Wn)}destroy(){this.destroyed=!0,Ge(this.buffer),this.set(0,0,0,0,0)}},Ga=Nr(()=>new ms);y();var Du=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),ws=class extends jt{constructor(r,n){super(64,r,8,!1);u(this,"A",0);u(this,"B",0);u(this,"C",0);u(this,"D",0);u(this,"E",0);u(this,"F",0);u(this,"G",0);u(this,"H",0);this.A=n[0]|0,this.B=n[1]|0,this.C=n[2]|0,this.D=n[3]|0,this.E=n[4]|0,this.F=n[5]|0,this.G=n[6]|0,this.H=n[7]|0}get(){let{A:r,B:n,C:o,D:s,E:i,F:c,G:a,H:f}=this;return[r,n,o,s,i,c,a,f]}set(r,n,o,s,i,c,a,f){this.A=r|0,this.B=n|0,this.C=o|0,this.D=s|0,this.E=i|0,this.F=c|0,this.G=a|0,this.H=f|0}_cloneInto(r){return(r||(r=new this.constructor)).set(...this.get()),this._cloneIntoMeta(r)}process(r,n){for(let d=0;d<16;d++,n+=4)mt[d]=r.getUint32(n,!1);for(let d=16;d<64;d++){let p=mt[d-15],x=mt[d-2],E=Ke(p,7)^Ke(p,18)^p>>>3,w=Ke(x,17)^Ke(x,19)^x>>>10;mt[d]=w+mt[d-7]+E+mt[d-16]|0}let{A:o,B:s,C:i,D:c,E:a,F:f,G:l,H:h}=this;for(let d=0;d<64;d++){let p=Ke(a,6)^Ke(a,11)^Ke(a,25),x=h+p+bs(a,f,l)+Du[d]+mt[d]|0,w=(Ke(o,2)^Ke(o,13)^Ke(o,22))+gs(o,s,i)|0;h=l,l=f,f=a,a=c+x|0,c=i,i=s,s=o,o=x+w|0}o=o+this.A|0,s=s+this.B|0,i=i+this.C|0,c=c+this.D|0,a=a+this.E|0,f=f+this.F|0,l=l+this.G|0,h=h+this.H|0,this.set(o,s,i,c,a,f,l,h)}roundClean(){Ge(mt)}destroy(){this.destroyed=!0,this.set(0,0,0,0,0,0,0,0),Ge(this.buffer)}},Es=class extends ws{constructor(){super(32,Ca)}};var za=La(["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))),Mu=za[0],Nu=za[1],wt=new Uint32Array(80),Et=new Uint32Array(80),As=class extends jt{constructor(r,n){super(128,r,16,!1);u(this,"Ah",0);u(this,"Al",0);u(this,"Bh",0);u(this,"Bl",0);u(this,"Ch",0);u(this,"Cl",0);u(this,"Dh",0);u(this,"Dl",0);u(this,"Eh",0);u(this,"El",0);u(this,"Fh",0);u(this,"Fl",0);u(this,"Gh",0);u(this,"Gl",0);u(this,"Hh",0);u(this,"Hl",0);this.Ah=n[0]|0,this.Al=n[1]|0,this.Bh=n[2]|0,this.Bl=n[3]|0,this.Ch=n[4]|0,this.Cl=n[5]|0,this.Dh=n[6]|0,this.Dl=n[7]|0,this.Eh=n[8]|0,this.El=n[9]|0,this.Fh=n[10]|0,this.Fl=n[11]|0,this.Gh=n[12]|0,this.Gl=n[13]|0,this.Hh=n[14]|0,this.Hl=n[15]|0}get(){let{Ah:r,Al:n,Bh:o,Bl:s,Ch:i,Cl:c,Dh:a,Dl:f,Eh:l,El:h,Fh:d,Fl:p,Gh:x,Gl:E,Hh:w,Hl:H}=this;return[r,n,o,s,i,c,a,f,l,h,d,p,x,E,w,H]}set(r,n,o,s,i,c,a,f,l,h,d,p,x,E,w,H){this.Ah=r|0,this.Al=n|0,this.Bh=o|0,this.Bl=s|0,this.Ch=i|0,this.Cl=c|0,this.Dh=a|0,this.Dl=f|0,this.Eh=l|0,this.El=h|0,this.Fh=d|0,this.Fl=p|0,this.Gh=x|0,this.Gl=E|0,this.Hh=w|0,this.Hl=H|0}_cloneInto(r){return(r||(r=new this.constructor)).set(...this.get()),this._cloneIntoMeta(r)}process(r,n){for(let m=0;m<16;m++,n+=4)wt[m]=r.getUint32(n),Et[m]=r.getUint32(n+=4);for(let m=16;m<80;m++){let U=wt[m-15]|0,P=Et[m-15]|0,X=Mt(U,P,1)^Mt(U,P,8)^xs(U,P,7),q=Nt(U,P,1)^Nt(U,P,8)^ys(U,P,7),z=wt[m-2]|0,D=Et[m-2]|0,J=Mt(z,D,19)^jr(z,D,61)^xs(z,D,6),Z=Nt(z,D,19)^Pr(z,D,61)^ys(z,D,6),ae=Ua(q,Z,Et[m-7],Et[m-16]),fe=Oa(ae,X,J,wt[m-7],wt[m-16]);wt[m]=fe|0,Et[m]=ae|0}let{Ah:o,Al:s,Bh:i,Bl:c,Ch:a,Cl:f,Dh:l,Dl:h,Eh:d,El:p,Fh:x,Fl:E,Gh:w,Gl:H,Hh:L,Hl:g}=this;for(let m=0;m<80;m++){let U=Mt(d,p,14)^Mt(d,p,18)^jr(d,p,41),P=Nt(d,p,14)^Nt(d,p,18)^Pr(d,p,41),X=d&x^~d&w,q=p&E^~p&H,z=Ra(g,P,q,Nu[m],Et[m]),D=Ka(z,L,U,X,Mu[m],wt[m]),J=z|0,Z=Mt(o,s,28)^jr(o,s,34)^jr(o,s,39),ae=Nt(o,s,28)^Pr(o,s,34)^Pr(o,s,39),fe=o&i^o&a^i&a,V=s&c^s&f^c&f;L=w|0,g=H|0,w=x|0,H=E|0,x=d|0,E=p|0,{h:d,l:p}=ze(l|0,h|0,D|0,J|0),l=a|0,h=f|0,a=i|0,f=c|0,i=o|0,c=s|0;let Y=_a(J,ae,V);o=Ia(Y,D,Z,fe),s=Y|0}({h:o,l:s}=ze(this.Ah|0,this.Al|0,o|0,s|0)),{h:i,l:c}=ze(this.Bh|0,this.Bl|0,i|0,c|0),{h:a,l:f}=ze(this.Ch|0,this.Cl|0,a|0,f|0),{h:l,l:h}=ze(this.Dh|0,this.Dl|0,l|0,h|0),{h:d,l:p}=ze(this.Eh|0,this.El|0,d|0,p|0),{h:x,l:E}=ze(this.Fh|0,this.Fl|0,x|0,E|0),{h:w,l:H}=ze(this.Gh|0,this.Gl|0,w|0,H|0),{h:L,l:g}=ze(this.Hh|0,this.Hl|0,L|0,g|0),this.set(o,s,i,c,a,f,l,h,d,p,x,E,w,H,L,g)}roundClean(){Ge(wt,Et)}destroy(){this.destroyed=!0,Ge(this.buffer),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}},Bs=class extends As{constructor(){super(64,Fa)}};var Ss=Nr(()=>new Es,hs(1));var vs=Nr(()=>new Bs,hs(3));y();var ju=t=>Object.freeze(t());function Pu(t){return t instanceof Uint8Array||ArrayBuffer.isView(t)&&t.constructor.name==="Uint8Array"&&"BYTES_PER_ELEMENT"in t&&t.BYTES_PER_ELEMENT===1}function Vn(t){if(!Pu(t))throw new TypeError("Uint8Array expected")}function Va(t){if(typeof t!="function")throw new TypeError("function expected");return!0}function $u(t,e){if(typeof e!="string")throw new TypeError(`${t}: string expected`);return!0}function Gu(t,e="number"){if(typeof t!="number")throw new TypeError(`${e}: expected number, got ${typeof t}`);if(!Number.isSafeInteger(t))throw new RangeError(`${e}: expected safe integer, got ${t}`)}function Ya(...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}}var qa=(()=>{try{let t=new TextDecoder;return t.decode(Uint8Array.of(65,48,43,127))==="A0+\x7F"?t:void 0}catch{return}})(),ks=8192;function zu(t){let e=t.length;if(qa!==void 0&&e>=12)return qa.decode(t);if(e<=ks)return String.fromCharCode.apply(null,t);let r="";for(let n=0;n<e;n+=ks)r+=String.fromCharCode.apply(null,t.subarray(n,n+ks));return r}function qu(t,e){let r=t.length;if(r>128)throw new Error("alphabet: max 128 letters");let n=new Uint8Array(r),o=new Int8Array(128).fill(-1);for(let s=0;s<r;s++){let i=t.charCodeAt(s);if(t.codePointAt(s)!==i||i>127)throw new Error("alphabet: single-char ASCII letters only");n[s]=i,o[i]=s}if(e!==void 0)for(let s of Object.keys(e)){let i=s.charCodeAt(0),c=o[e[s].charCodeAt(0)];if(s.length!==1||i>127||c===void 0||c===-1)throw new Error(`alphabet: invalid alias ${s}`);o[i]=c}return{encode:s=>{let i=new Uint8Array(s.length);for(let c=0;c<s.length;c++){let a=s[c],f=n[a];if(f===void 0)throw new Error(`alphabet.encode: invalid digit ${a}`);i[c]=f}return zu(i)},decode:s=>{$u("decode",s);let i=s.length,c=new Uint8Array(i);for(let a=0;a<i;a++){let f=s.charCodeAt(a),l=f<128?o[f]:-1;if(l===-1)throw new Error(`Unknown letter "${s[a]}". Allowed: ${t}`);c[a]=l}return c}}}function Wu(t,e){if(Gu(t),t<=0)throw new RangeError(`checksum length must be positive: ${t}`);Va(e);let r=e;return{encode(n){Vn(n);let o=r(n).slice(0,t),s=new Uint8Array(n.length+t);return s.set(n),s.set(o,n.length),s},decode(n){Vn(n);let o=n.slice(0,-t),s=n.slice(-t),i=r(o).slice(0,t);for(let c=0;c<t;c++)if(i[c]!==s[c])throw new Error("Invalid checksum");return o}}}var Wa=656356768,Vu={encode:t=>{Vn(t);let e=t.length;if(e===0)return new Uint8Array(0);let r=0;for(;r<e-1&&t[r]===0;)r++;let n=Math.ceil(e/2),o=new Uint16Array(n),s=e&1;s&&(o[0]=t[0]);for(let d=s,p=s;d<e;d+=2,p++)o[p]=t[d]<<8|t[d+1];let i=[],c=0;for(;c<n;){let d=0;for(let p=c;p<n;p++){let x=d*65536+o[p],E=Math.floor(x/Wa);d=x-E*Wa,o[p]=E,E===0&&p===c&&c++}i.push(d)}let a=i.length-1,f=a*5;for(let d=i[a];f++,!(d<58);d=Math.floor(d/58));let l=new Uint8Array(r+f),h=l.length-1;for(let d=0;d<a;d++){let p=i[d];for(let x=0;x<5;x++)l[h--]=p%58,p=Math.floor(p/58)}for(let d=i[a];h>=r;d=Math.floor(d/58))l[h--]=d%58;return l},decode:t=>{Vn(t);let e=t.length;if(e===0)return new Uint8Array(0);if(e>=65536)throw new Error("invalid length");let r=0;for(;r<e-1&&t[r]===0;)r++;let n=new Uint16Array(Math.ceil(e*6/16)+1),o=0,s=0,i=e%5||5;for(;s<e;){let l=0,h=1;for(let p=s+i;s<p;s++){let x=t[s];if(x>=58)throw new Error(`invalid integer: ${x}`);l=l*58+x,h*=58}i=5;let d=l;for(let p=0;p<o;p++){let x=n[p]*h+d;d=Math.floor(x/65536),n[p]=x-d*65536}for(;d>0;d=Math.floor(d/65536))n[o++]=d%65536}let c=o===0?1:o*2-(n[o-1]<256?1:0),a=new Uint8Array(r+c),f=a.length-1;for(let l=0;l<o;l++){let h=n[l];a[f--]=h&255,f>=r&&(a[f--]=h>>8)}return a}},Yu=t=>Ya(Vu,qu(t)),Xu=ju(()=>Yu("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"));var Xa=t=>{Va(t);let e=t;return Ya(Wu(4,r=>e(e(r))),Xu)};var Gr=ar.Point,$r=Gr.Fn,Hs=Xa(Ss),Zu=Uint8Array.from("Bitcoin seed".split(""),t=>t.charCodeAt(0)),Ls={private:76066276,public:76067358},Ts=2147483648,Ju=t=>Ga(Ss(t)),Qu=t=>gt(t).getUint32(0,!1),ur=(t,e="number")=>{if(typeof t!="number")throw new TypeError(`"${e}" expected number, got type=${typeof t}`);if(!Number.isSafeInteger(t)||t<0||t>2**32-1)throw new RangeError(`"${e}" expected integer in range 0..2**32-1, got ${t}`);let r=new Uint8Array(4);return gt(r).setUint32(0,t,!1),r},_s=(t,e="versions")=>{if(!(typeof t=="object"&&t!==null))throw new Error("versions must be an object");return ur(t.private,`${e}.private`),ur(t.public,`${e}.public`),t},Yn=class t{constructor(e){u(this,"versions");u(this,"depth",0);u(this,"index",0);u(this,"chainCode",null);u(this,"parentFingerprint",0);u(this,"_privateKey");u(this,"_publicKey");u(this,"pubHash");if(!e||typeof e!="object")throw new Error("HDKey.constructor must not be called directly");if(this.versions=e.versions?_s(e.versions):Ls,this.depth=e.depth||0,this.chainCode=e.chainCode?Uint8Array.from(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(!ar.utils.isValidSecretKey(e.privateKey))throw new Error("Invalid private key");this._privateKey=Uint8Array.from(e.privateKey),this._publicKey=ar.getPublicKey(this._privateKey,!0)}else if(e.publicKey)this._publicKey=Gr.fromBytes(e.publicKey).toBytes(!0);else throw new Error("HDKey: no public or private key provided");this.pubHash=Ju(this._publicKey)}get fingerprint(){if(!this.pubHash)throw new Error("No publicKey set!");return Qu(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 Hs.encode(this.serialize(this.versions.private,Mr(Uint8Array.of(0),e)))}get publicExtendedKey(){if(!this._publicKey)throw new Error("No public key");return Hs.encode(this.serialize(this.versions.public,this._publicKey))}static fromMasterSeed(e,r=Ls){if(He(e),r=_s(r),8*e.length<128||8*e.length>512)throw new RangeError("HDKey: seed length must be between 128 and 512 bits; 256 bits is advised, got "+e.length);let n=ps(vs,Zu,e),o=n.slice(0,32),s=n.slice(32);return new t({versions:r,chainCode:s,privateKey:o})}static fromExtendedKey(e,r=Ls){r=_s(r);let n=Hs.decode(e),o=gt(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>=Ts)throw new Error("Invalid index");s[2]==="'"&&(c+=Ts),n=n.deriveChild(c)}return n}deriveChild(e,r){if(!this._publicKey||!this.chainCode)throw new Error("No publicKey or chainCode set");let n=ur(e,"index");if(e>=Ts){let a=this._privateKey;if(!a)throw new Error("Could not derive hardened child key");n=Mr(Uint8Array.of(0),a,n)}else n=Mr(this._publicKey,n);let o=r||ps(vs,this.chainCode,n);He(o,64);let s=o.slice(0,32),i=o.slice(32),c={versions:this.versions,chainCode:i,depth:this.depth+1,parentFingerprint:this.fingerprint,index:e};if(c.depth>255)throw new Error("HDKey: depth exceeds the serializable value 255");try{let a=$r.fromBytes(s);if(this._privateKey){let f=$r.create($r.fromBytes(this._privateKey)+a);if(!$r.isValidNot0(f))throw new Error("The tweak was out of range or the resulted private key is invalid");c.privateKey=$r.toBytes(f)}else{let f=Gr.fromBytes(this._publicKey),l=a===0n?f:f.add(Gr.BASE.multiply(a));if(l.equals(Gr.ZERO))throw new Error("The tweak was equal to negative P, which made the result key invalid");c.publicKey=l.toBytes(!0)}return new t(c)}catch{return this.deriveChild(e+1)}}sign(e){if(!this._privateKey)throw new Error("No privateKey set!");return He(e,32),ar.sign(e,this._privateKey,{prehash:!1})}verify(e,r){if(He(e,32),He(r,64),!this._publicKey)throw new Error("No publicKey set!");return ar.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 He(r,33),Mr(ur(e,"version"),new Uint8Array([this.depth]),ur(this.parentFingerprint,"parentFingerprint"),ur(this.index,"index"),this.chainCode,r)}};y();y();y();y();function Za(t){return t instanceof Uint8Array||ArrayBuffer.isView(t)&&t.constructor.name==="Uint8Array"&&"BYTES_PER_ELEMENT"in t&&t.BYTES_PER_ELEMENT===1}var Is=t=>t?`"${t}" `:"";function qe(t,e=""){if(typeof t!="number")throw new TypeError(Is(e)+"expected number, got "+typeof t);if(!Number.isSafeInteger(t)||t<0)throw new RangeError(Is(e)+"expected integer >= 0, got "+t);return t}function At(t,e,r=""){if(Za(t)&&(e===void 0||t.length===e))return t;e!==void 0&&qe(e,"length");let n=Za(t),o=e!==void 0?` of length ${e}`:"",s=n?`length=${t.length}`:`type=${typeof t}`,i=Is(r)+"expected Uint8Array"+o+", got "+s;throw n?new RangeError(i):new TypeError(i)}function Xn(t){if(typeof t!="function"||typeof t.create!="function")throw new TypeError("expected hash wrapped by utils.createHasher");if(qe(t.outputLen),qe(t.blockLen),t.outputLen<1||t.blockLen<1)throw new Error("hash blockLen / outputLen must be >= 1")}var Ja=(t,e)=>{if(t===null||typeof t!="object"||Array.isArray(t))throw new TypeError((e==="object"?"":`"${e}" `)+"expected object, got type="+typeof t)};function lr(t,e=!0){if(t.destroyed)throw new Error("hash was destroyed");if(e&&t.finished)throw new Error("digest() was already called")}function Zn(t,e){At(t,void 0,"output");let r=e.outputLen;if(!(t.length>=r))throw new RangeError('"output" expected length >= '+r)}function nt(...t){for(let e=0;e<t.length;e++)t[e].fill(0)}function dr(t){return new DataView(t.buffer,t.byteOffset,t.byteLength)}function Ce(t,e){return t<<32-e|t>>>e}function el(t){if(typeof t!="string")throw new TypeError("string expected");return new Uint8Array(new TextEncoder().encode(t))}function Us(t,e=""){return typeof t=="string"?el(t):At(t,void 0,e)}function Os(t,e,r="opts"){return Ja(t,"defaults"),e!==void 0&&Ja(e,r),Object.assign(t,e)}function Rs(t,e={}){if(typeof t!="function")throw new TypeError('"hashCons" expected function, got type='+typeof t);e=Os({},e,"info");let r=(o,s)=>t(s).update(o).digest(),n=t(void 0);return r.outputLen=n.outputLen,r.blockLen=n.blockLen,r.canXOF=n.canXOF,r.create=o=>t(o),Object.assign(r,e),Object.freeze(r)}function Qa(t=32){qe(t,"bytesLength");let e=typeof globalThis=="object"?globalThis.crypto:null;if(typeof e?.getRandomValues!="function")throw new Error("crypto.getRandomValues must be defined");if(t>65536)throw new RangeError(`"bytesLength" expected <= 65536, got ${t}`);return e.getRandomValues(new Uint8Array(t))}var Ks=t=>({oid:Uint8Array.from([6,9,96,134,72,1,101,3,4,2,t])});var Jn=class{constructor(e,r){u(this,"oHash");u(this,"iHash");u(this,"blockLen");u(this,"outputLen");u(this,"canXOF",!1);u(this,"finished",!1);u(this,"destroyed",!1);if(Xn(e),At(r,void 0,"key"),this.iHash=e.create(),typeof this.iHash.update!="function")throw new Error("expected Hash instance");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),nt(o)}update(e){return lr(this),this.iHash.update(e),this}digestInto(e){lr(this),Zn(e,this),this.finished=!0;let r=e.subarray(0,this.outputLen);this.iHash.digestInto(r),this.oHash.update(r),this.oHash.digestInto(r),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,canXOF:a}=this;return e=e,e.finished=o,e.destroyed=s,e.blockLen=i,e.outputLen=c,e.canXOF=a,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()}},e0=(()=>{let t=((e,r,n)=>new Jn(e,r).update(n).digest());return t.create=(e,r)=>new Jn(e,r),t})();function tl(t,e,r,n){Xn(t);let o=Os({dkLen:32,asyncTick:10},n),{c:s,dkLen:i,asyncTick:c}=o;if(qe(s,"c"),qe(i,"dkLen"),qe(c,"asyncTick"),s<1)throw new Error('"c" (iterations) must be >= 1');if(i<1)throw new Error('"dkLen" must be >= 1');if(i>(2**32-1)*t.outputLen)throw new Error("derived key too long");let a=Us(e,"password"),f=Us(r,"salt"),l=new Uint8Array(i),{iHash:h,oHash:d,outputLen:p}=e0.create(t,a),x=new Uint8Array(p),E=rl(h,d,f,x);return{c:s,dkLen:i,asyncTick:c,DK:l,outputLen:p,eng:E}}function rl(t,e,r,n){let o=new Uint8Array(4),s=dr(o),i=t._cloneInto().update(r),c=e._cloneInto(),a=t._cloneInto,f=e._cloneInto;return{u1:(l,h)=>{s.setInt32(0,l,!1),i._cloneInto(c).update(o).digestInto(n),e._cloneInto(c).update(n).digestInto(n),h.set(n.subarray(0,h.length))},rounds:(l,h)=>{for(let d=1;d<l;d++){a.call(t,c).update(n).digestInto(n),f.call(e,c).update(n).digestInto(n);for(let p=0;p<h.length;p++)h[p]^=n[p]}},output:l=>(t.destroy(),e.destroy(),i.destroy(),c.destroy(),nt(n),l)}}function t0(t,e,r,n){let{c:o,dkLen:s,DK:i,outputLen:c,eng:a}=tl(t,e,r,n);for(let f=1,l=0;l<s;f++,l+=c){let h=i.subarray(l,l+c);a.u1(f,h),a.rounds(o,h)}return a.output(i)}y();y();y();var Qn=BigInt(4294967295),r0=BigInt(32);function nl(t,e=!1){return e?{h:Number(t&Qn),l:Number(t>>r0&Qn)}:{h:Number(t>>r0&Qn)|0,l:Number(t&Qn)|0}}function n0(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}=nl(t[s],e);[n[s],o[s]]=[i,c]}return[n,o]}var ol=t=>t/2**32|0,sl=t=>t>>>0;function o0(t,e,r,n){let o=ol(r),s=sl(r);t.setUint32(e,n?s:o,n),t.setUint32(e+4,n?o:s,n)}var Cs=(t,e,r)=>t>>>r,Fs=(t,e,r)=>t<<32-r|e>>>r,Pt=(t,e,r)=>t>>>r|e<<32-r,$t=(t,e,r)=>t<<32-r|e>>>r,zr=(t,e,r)=>t<<64-r|e>>>r-32,qr=(t,e,r)=>t>>>r-32|e<<64-r;function We(t,e,r,n){let o=(e>>>0)+(n>>>0);return{h:t+r+(o/2**32|0)|0,l:o|0}}var s0=(t,e,r)=>(t>>>0)+(e>>>0)+(r>>>0),i0=(t,e,r,n)=>e+r+n+(t/2**32|0)|0,c0=(t,e,r,n)=>(t>>>0)+(e>>>0)+(r>>>0)+(n>>>0),a0=(t,e,r,n,o)=>e+r+n+o+(t/2**32|0)|0,f0=(t,e,r,n,o)=>(t>>>0)+(e>>>0)+(r>>>0)+(n>>>0)+(o>>>0),u0=(t,e,r,n,o,s)=>e+r+n+o+s+(t/2**32|0)|0;function l0(t,e,r){return t&e^~t&r}function d0(t,e,r){return t&e^t&r^e&r}var Wr=class{constructor(e,r,n,o){u(this,"blockLen");u(this,"outputLen");u(this,"canXOF",!1);u(this,"padOffset");u(this,"isLE");u(this,"buffer");u(this,"view");u(this,"finished",!1);u(this,"length",0);u(this,"pos",0);u(this,"destroyed",!1);this.blockLen=e,this.outputLen=r,this.padOffset=n,this.isLE=o,this.buffer=new Uint8Array(e),this.view=dr(this.buffer)}update(e){lr(this),At(e);let{view:r,buffer:n,blockLen:o}=this,s=e.length,i=!1;for(let c=0;c<s;){let a=Math.min(o-this.pos,s-c);if(a===o){let f=dr(e);for(;o<=s-c;c+=o)this.process(f,c);i=!0;continue}n.set(c===0&&a===s?e:e.subarray(c,c+a),this.pos),this.pos+=a,c+=a,this.pos===o&&(this.process(r,0),this.pos=0,i=!0)}return this.length+=e.length,i&&this.roundClean(),this}digestInto(e){lr(this),Zn(e,this),this.finished=!0;let{buffer:r,view:n,blockLen:o,isLE:s}=this,{pos:i}=this;r[i++]=128,r.fill(0,i),this.padOffset>o-i&&(this.process(n,0),r.fill(0)),o0(n,o-8,this.length*8,s),this.process(n,0),this.roundClean();let c=e===r?n:dr(e),a=this.outputLen,f=a/4,l=this.get();if(a%4||f>l.length)throw new Error("invalid outputLen");for(let h=0;h<f;h++)c.setUint32(4*h,l[h],s)}digest(){let{buffer:e,outputLen:r}=this;this.digestInto(e);let n=e.slice(0,r);return this.destroy(),n}_cloneIntoMeta(e){let{buffer:r,length:n,finished:o,destroyed:s,pos:i}=this;return e.destroyed=s,e.finished=o,e.length=n,e.pos=i,i&&e.buffer.set(r),e}clone(){return this._cloneInto()}},h0=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]);var p0=Uint32Array.from([1779033703,4089235720,3144134277,2227873595,1013904242,4271175723,2773480762,1595750129,1359893119,2917565137,2600822924,725511199,528734635,4215389547,1541459225,327033209]);var cl=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]),Bt=new Uint32Array(64),Ds=class extends Wr{constructor(r,n){super(64,r,8,!1);u(this,"A",0);u(this,"B",0);u(this,"C",0);u(this,"D",0);u(this,"E",0);u(this,"F",0);u(this,"G",0);u(this,"H",0);this.A=n[0]|0,this.B=n[1]|0,this.C=n[2]|0,this.D=n[3]|0,this.E=n[4]|0,this.F=n[5]|0,this.G=n[6]|0,this.H=n[7]|0}get(){let{A:r,B:n,C:o,D:s,E:i,F:c,G:a,H:f}=this;return[r,n,o,s,i,c,a,f]}set(r,n,o,s,i,c,a,f){this.A=r|0,this.B=n|0,this.C=o|0,this.D=s|0,this.E=i|0,this.F=c|0,this.G=a|0,this.H=f|0}_cloneInto(r){return(r||(r=new this.constructor)).set(...this.get()),this._cloneIntoMeta(r)}process(r,n){for(let d=0;d<16;d++,n+=4)Bt[d]=r.getUint32(n,!1);for(let d=16;d<64;d++){let p=Bt[d-15],x=Bt[d-2],E=Ce(p,7)^Ce(p,18)^p>>>3,w=Ce(x,17)^Ce(x,19)^x>>>10;Bt[d]=w+Bt[d-7]+E+Bt[d-16]|0}let{A:o,B:s,C:i,D:c,E:a,F:f,G:l,H:h}=this;for(let d=0;d<64;d++){let p=Ce(a,6)^Ce(a,11)^Ce(a,25),x=h+p+l0(a,f,l)+cl[d]+Bt[d]|0,w=(Ce(o,2)^Ce(o,13)^Ce(o,22))+d0(o,s,i)|0;h=l,l=f,f=a,a=c+x|0,c=i,i=s,s=o,o=x+w|0}o=o+this.A|0,s=s+this.B|0,i=i+this.C|0,c=c+this.D|0,a=a+this.E|0,f=f+this.F|0,l=l+this.G|0,h=h+this.H|0,this.set(o,s,i,c,a,f,l,h)}roundClean(){nt(Bt)}destroy(){this.destroyed=!0,this.set(0,0,0,0,0,0,0,0),nt(this.buffer)}},Ms=class extends Ds{constructor(){super(32,h0)}};var x0=n0(["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))),al=x0[0],fl=x0[1],St=new Uint32Array(80),vt=new Uint32Array(80),Ns=class extends Wr{constructor(r,n){super(128,r,16,!1);u(this,"Ah",0);u(this,"Al",0);u(this,"Bh",0);u(this,"Bl",0);u(this,"Ch",0);u(this,"Cl",0);u(this,"Dh",0);u(this,"Dl",0);u(this,"Eh",0);u(this,"El",0);u(this,"Fh",0);u(this,"Fl",0);u(this,"Gh",0);u(this,"Gl",0);u(this,"Hh",0);u(this,"Hl",0);this.Ah=n[0]|0,this.Al=n[1]|0,this.Bh=n[2]|0,this.Bl=n[3]|0,this.Ch=n[4]|0,this.Cl=n[5]|0,this.Dh=n[6]|0,this.Dl=n[7]|0,this.Eh=n[8]|0,this.El=n[9]|0,this.Fh=n[10]|0,this.Fl=n[11]|0,this.Gh=n[12]|0,this.Gl=n[13]|0,this.Hh=n[14]|0,this.Hl=n[15]|0}get(){let{Ah:r,Al:n,Bh:o,Bl:s,Ch:i,Cl:c,Dh:a,Dl:f,Eh:l,El:h,Fh:d,Fl:p,Gh:x,Gl:E,Hh:w,Hl:H}=this;return[r,n,o,s,i,c,a,f,l,h,d,p,x,E,w,H]}set(r,n,o,s,i,c,a,f,l,h,d,p,x,E,w,H){this.Ah=r|0,this.Al=n|0,this.Bh=o|0,this.Bl=s|0,this.Ch=i|0,this.Cl=c|0,this.Dh=a|0,this.Dl=f|0,this.Eh=l|0,this.El=h|0,this.Fh=d|0,this.Fl=p|0,this.Gh=x|0,this.Gl=E|0,this.Hh=w|0,this.Hl=H|0}_cloneInto(r){return(r||(r=new this.constructor)).set(...this.get()),this._cloneIntoMeta(r)}process(r,n){for(let m=0;m<16;m++,n+=4)St[m]=r.getUint32(n),vt[m]=r.getUint32(n+=4);for(let m=16;m<80;m++){let U=St[m-15]|0,P=vt[m-15]|0,X=Pt(U,P,1)^Pt(U,P,8)^Cs(U,P,7),q=$t(U,P,1)^$t(U,P,8)^Fs(U,P,7),z=St[m-2]|0,D=vt[m-2]|0,J=Pt(z,D,19)^zr(z,D,61)^Cs(z,D,6),Z=$t(z,D,19)^qr(z,D,61)^Fs(z,D,6),ae=c0(q,Z,vt[m-7],vt[m-16]),fe=a0(ae,X,J,St[m-7],St[m-16]);St[m]=fe|0,vt[m]=ae|0}let{Ah:o,Al:s,Bh:i,Bl:c,Ch:a,Cl:f,Dh:l,Dl:h,Eh:d,El:p,Fh:x,Fl:E,Gh:w,Gl:H,Hh:L,Hl:g}=this;for(let m=0;m<80;m++){let U=Pt(d,p,14)^Pt(d,p,18)^zr(d,p,41),P=$t(d,p,14)^$t(d,p,18)^qr(d,p,41),X=d&x^~d&w,q=p&E^~p&H,z=f0(g,P,q,fl[m],vt[m]),D=u0(z,L,U,X,al[m],St[m]),J=z|0,Z=Pt(o,s,28)^zr(o,s,34)^zr(o,s,39),ae=$t(o,s,28)^qr(o,s,34)^qr(o,s,39),fe=o&i^o&a^i&a,V=s&c^s&f^c&f;L=w|0,g=H|0,w=x|0,H=E|0,x=d|0,E=p|0,{h:d,l:p}=We(l|0,h|0,D|0,J|0),l=a|0,h=f|0,a=i|0,f=c|0,i=o|0,c=s|0;let Y=s0(J,ae,V);o=i0(Y,D,Z,fe),s=Y|0}({h:o,l:s}=We(this.Ah|0,this.Al|0,o|0,s|0)),{h:i,l:c}=We(this.Bh|0,this.Bl|0,i|0,c|0),{h:a,l:f}=We(this.Ch|0,this.Cl|0,a|0,f|0),{h:l,l:h}=We(this.Dh|0,this.Dl|0,l|0,h|0),{h:d,l:p}=We(this.Eh|0,this.El|0,d|0,p|0),{h:x,l:E}=We(this.Fh|0,this.Fl|0,x|0,E|0),{h:w,l:H}=We(this.Gh|0,this.Gl|0,w|0,H|0),{h:L,l:g}=We(this.Hh|0,this.Hl|0,L|0,g|0),this.set(o,s,i,c,a,f,l,h,d,p,x,E,w,H,L,g)}roundClean(){nt(St,vt)}destroy(){this.destroyed=!0,nt(this.buffer),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}},js=class extends Ns{constructor(){super(64,p0)}};var y0=Rs(()=>new Ms,Ks(1));var b0=Rs(()=>new js,Ks(3));var ul=t=>t[0]==="\u3042\u3044\u3053\u304F\u3057\u3093";function g0(t){if(typeof t!="string")throw new TypeError("invalid mnemonic type: "+typeof t);return t.normalize("NFKD")}function ll(t){let e=g0(t),r=e.split(" ");if(![12,15,18,21,24].includes(r.length))throw new Error("Invalid mnemonic");return{nfkd:e,words:r}}function dl(t){if(At(t),![16,20,24,28,32].includes(t.length))throw new RangeError("invalid entropy length")}function m0(t,e=128){if(qe(e),e%32!==0||e>256)throw new RangeError("Invalid entropy");return yl(Qa(e/8),t)}var hl=t=>{let e=8-t.length/4;return y0(t)[0]>>e<<e};function pl(t){if(!Array.isArray(t)||t.length!==2048||typeof t[0]!="string")throw new TypeError("Wordlist: expected array of 2048 strings");t.forEach(e=>{if(typeof e!="string")throw new TypeError("wordlist: non-string element: "+e)})}function xl(t,e){pl(e);let r=new Uint8Array(t.length+1);r.set(t),r[t.length]=hl(t);let n=[],o=0,s=0;for(let i of r)o=o<<8|i,s+=8,s>=11&&(s-=11,n.push(e[o>>>s&2047]),o&=(1<<s)-1);return n}function yl(t,e){return dl(t),xl(t,e).join(ul(e)?"\u3000":" ")}var bl=t=>{if(typeof t!="string")throw new TypeError("invalid passphrase type: "+typeof t);return g0("mnemonic"+t)};function w0(t,e=""){return t0(b0,ll(t).nfkd,bl(e),{c:2048,dkLen:64})}y();var E0=Object.freeze(`abandon
|
|
2
2
|
ability
|
|
3
3
|
able
|
|
4
4
|
about
|
|
@@ -2046,28 +2046,30 @@ zebra
|
|
|
2046
2046
|
zero
|
|
2047
2047
|
zone
|
|
2048
2048
|
zoo`.split(`
|
|
2049
|
-
`);var
|
|
2050
|
-
`+(
|
|
2051
|
-
Consider using one of these suites or remove the derivationContext option.`:"No suites currently support derivation. Remove the derivationContext option."))}
|
|
2049
|
+
`));var Ve=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=Yn.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 w0(e,r)}generateMnemonic(e=256){return m0(E0,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}`}};y();var A0="123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz";function gl(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=A0[n]+r,e=e/58n}for(let n of t){if(n!==0)break;r="1"+r}return r}function ml(t){let e=0n;for(let n of t){let o=A0.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 Ps(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=ut(o),c=ut(s).slice(0,4),a=new Uint8Array(o.length+4);return a.set(o),a.set(c,o.length),gl(a)}function $s(t){let e=ml(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=ut(r),i=ut(o).slice(0,4);if(!n.every((h,d)=>h===i[d]))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 f=r.length===34&&r[33]===1;return{privateKey:r.slice(1,33),compressed:f,network:a}}hn.sha256=t=>ut(t);hn.hmacSha256=(t,e)=>Zi(ut,t,e);var hr=class{constructor(){u(this,"suiteId","bsv-ecdsa-secp256k1");u(this,"version","1.0.0");u(this,"capabilities",{derivation:new Ve})}async generateKeypair(){let e=Gi.randomSecretKey(),r=Ci(e,!0);return{privateKey:e,publicKey:r}}async sign(e,r){try{return Pi(r,e,{prehash:!1})}catch(n){throw new Error(`BsvEcdsaSuite signing failed: ${n instanceof Error?n.message:String(n)}`)}}async verify(e,r,n){try{return $i(n,r,e,{prehash:!1})}catch{return!1}}exportPublicKey(e){return Ir(e)}importPublicKey(e){return Qt(e)}exportPrivateKey(e){return Ps(e,!0,"mainnet")}importPrivateKey(e){if(e.length===64){let r=Qt(e);if(r.length!==32)throw new Error("Private key must be 32 bytes");return r}else try{let{privateKey:r}=$s(e);return r}catch(r){throw new Error(`Invalid private key format: ${r instanceof Error?r.message:String(r)}`)}}};y();var li=null,di=null,hi=null;async function Gl(){return li||(li=(await Promise.resolve().then(()=>(uo(),fo))).ml_dsa44),li}async function zl(){return di||(di=(await Promise.resolve().then(()=>(uo(),fo))).ml_dsa65),di}async function ql(){return hi||(hi=(await Promise.resolve().then(()=>(uo(),fo))).ml_dsa87),hi}var pi={"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(){u(this,"version","2.0.0");u(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 Ir(e)}importPublicKey(e){let r=Qt(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 Ir(e)}importPrivateKey(e){let r=Qt(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);u(this,"suiteId","ml-dsa-44")}get sizes(){return pi["ml-dsa-44"]}async getLib(){return Gl()}},en=class extends Jr{constructor(){super(...arguments);u(this,"suiteId","ml-dsa-65")}get sizes(){return pi["ml-dsa-65"]}async getLib(){return zl()}},xr=class extends Jr{constructor(){super(...arguments);u(this,"suiteId","ml-dsa-87")}get sizes(){return pi["ml-dsa-87"]}async getLib(){return ql()}};var tn=class{constructor(){u(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()}},qt=new tn;qt.register(new hr);qt.register(new Qr);qt.register(new en);qt.register(new xr);y();y();var _t=class{constructor(){u(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 _t){u(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}};y();y();var lo=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 vn(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 vn(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],f=`${e}:pk-${a}-${c}`,l=await this.keyRegistry.rotateKey(o.meta.keyId,f,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 f=await this.signWithKey(a.meta.keyId,r);i.push({suiteId:c,keyId:a.meta.keyId,signature:f})}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 Ve().generateMnemonic(e)}async createKeyFromMnemonic(e,r,n,o=Ve.bitcoinPath(0,0,0),s,i={}){let a=new Ve().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=Ve.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,f)=>{if(!f.keyId.startsWith(`${e}:pk-`))return a;let l=f.keyId.match(/:pk-[^-]+-(\d+)$/);if(!l)return a;let h=parseInt(l[1],10);return Number.isFinite(h)?Math.max(a,h):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}};y();async function xi(){let t=new _t,e=new rn(t);return new lo({keyRegistry:e,suiteRegistry:qt})}var Wl={createKeySDK:xi};typeof window<"u"&&(window.LumenKeys={createKeySDK:xi});return ef(Vl);})();
|
|
2052
2052
|
/*! Bundled license information:
|
|
2053
2053
|
|
|
2054
|
-
@noble/hashes/utils.js:
|
|
2055
|
-
@noble/hashes/esm/utils.js:
|
|
2056
|
-
@noble/hashes/utils.js:
|
|
2057
|
-
@noble/hashes/utils.js:
|
|
2058
2054
|
@noble/hashes/utils.js:
|
|
2059
2055
|
(*! noble-hashes - MIT License (c) 2022 Paul Miller (paulmillr.com) *)
|
|
2060
2056
|
|
|
2061
|
-
@noble/secp256k1/index.js:
|
|
2062
|
-
(*! noble-secp256k1 - MIT License (c) 2019 Paul Miller (paulmillr.com) *)
|
|
2063
|
-
|
|
2064
2057
|
@noble/curves/utils.js:
|
|
2065
2058
|
@noble/curves/abstract/modular.js:
|
|
2066
2059
|
@noble/curves/abstract/curve.js:
|
|
2060
|
+
@noble/curves/abstract/der.js:
|
|
2067
2061
|
@noble/curves/abstract/weierstrass.js:
|
|
2068
2062
|
@noble/curves/secp256k1.js:
|
|
2069
2063
|
(*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) *)
|
|
2070
2064
|
|
|
2065
|
+
@noble/post-quantum/utils.js:
|
|
2066
|
+
@noble/post-quantum/_crystals.js:
|
|
2067
|
+
@noble/post-quantum/ml-dsa.js:
|
|
2068
|
+
(*! noble-post-quantum - MIT License (c) 2024 Paul Miller (paulmillr.com) *)
|
|
2069
|
+
|
|
2070
|
+
@noble/secp256k1/index.js:
|
|
2071
|
+
(*! noble-secp256k1 - MIT License (c) 2019 Paul Miller (paulmillr.com) *)
|
|
2072
|
+
|
|
2071
2073
|
@scure/base/index.js:
|
|
2072
2074
|
(*! scure-base - MIT License (c) 2022 Paul Miller (paulmillr.com) *)
|
|
2073
2075
|
|