var e="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function t(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}function r(e,t){return e(t={exports:{}},t.exports),t.exports}function o(e){return e&&e.default||e}var n=o(Object.freeze({default:{}})),i=r((function(t){!function(e,t){function r(e,t){if(!e)throw new Error(t||"Assertion failed")}function o(e,t){e.super_=t;var r=function(){};r.prototype=t.prototype,e.prototype=new r,e.prototype.constructor=e}function i(e,t,r){if(i.isBN(e))return e;this.negative=0,this.words=null,this.length=0,this.red=null,null!==e&&("le"!==t&&"be"!==t||(r=t,t=10),this._init(e||0,t||10,r||"be"))}var a;"object"==typeof e?e.exports=i:t.BN=i,i.BN=i,i.wordSize=26;try{a=n.Buffer}catch(e){}function s(e,t,r){for(var o=0,n=Math.min(e.length,r),i=t;i=49&&a<=54?a-49+10:a>=17&&a<=22?a-17+10:15&a}return o}function l(e,t,r,o){for(var n=0,i=Math.min(e.length,r),a=t;a=49?s-49+10:s>=17?s-17+10:s}return n}i.isBN=function(e){return e instanceof i||null!==e&&"object"==typeof e&&e.constructor.wordSize===i.wordSize&&Array.isArray(e.words)},i.max=function(e,t){return e.cmp(t)>0?e:t},i.min=function(e,t){return e.cmp(t)<0?e:t},i.prototype._init=function(e,t,o){if("number"==typeof e)return this._initNumber(e,t,o);if("object"==typeof e)return this._initArray(e,t,o);"hex"===t&&(t=16),r(t===(0|t)&&t>=2&&t<=36);var n=0;"-"===(e=e.toString().replace(/\s+/g,""))[0]&&n++,16===t?this._parseHex(e,n):this._parseBase(e,t,n),"-"===e[0]&&(this.negative=1),this.strip(),"le"===o&&this._initArray(this.toArray(),t,o)},i.prototype._initNumber=function(e,t,o){e<0&&(this.negative=1,e=-e),e<67108864?(this.words=[67108863&e],this.length=1):e<4503599627370496?(this.words=[67108863&e,e/67108864&67108863],this.length=2):(r(e<9007199254740992),this.words=[67108863&e,e/67108864&67108863,1],this.length=3),"le"===o&&this._initArray(this.toArray(),t,o)},i.prototype._initArray=function(e,t,o){if(r("number"==typeof e.length),e.length<=0)return this.words=[0],this.length=1,this;this.length=Math.ceil(e.length/3),this.words=new Array(this.length);for(var n=0;n=0;n-=3)a=e[n]|e[n-1]<<8|e[n-2]<<16,this.words[i]|=a<>>26-s&67108863,(s+=24)>=26&&(s-=26,i++);else if("le"===o)for(n=0,i=0;n>>26-s&67108863,(s+=24)>=26&&(s-=26,i++);return this.strip()},i.prototype._parseHex=function(e,t){this.length=Math.ceil((e.length-t)/6),this.words=new Array(this.length);for(var r=0;r=t;r-=6)n=s(e,r,r+6),this.words[o]|=n<>>26-i&4194303,(i+=24)>=26&&(i-=26,o++);r+6!==t&&(n=s(e,t,r+6),this.words[o]|=n<>>26-i&4194303),this.strip()},i.prototype._parseBase=function(e,t,r){this.words=[0],this.length=1;for(var o=0,n=1;n<=67108863;n*=t)o++;o--,n=n/t|0;for(var i=e.length-r,a=i%o,s=Math.min(i,i-a)+r,u=0,c=r;c1&&0===this.words[this.length-1];)this.length--;return this._normSign()},i.prototype._normSign=function(){return 1===this.length&&0===this.words[0]&&(this.negative=0),this},i.prototype.inspect=function(){return(this.red?""};var u=["","0","00","000","0000","00000","000000","0000000","00000000","000000000","0000000000","00000000000","000000000000","0000000000000","00000000000000","000000000000000","0000000000000000","00000000000000000","000000000000000000","0000000000000000000","00000000000000000000","000000000000000000000","0000000000000000000000","00000000000000000000000","000000000000000000000000","0000000000000000000000000"],c=[0,0,25,16,12,11,10,9,8,8,7,7,7,7,6,6,6,6,6,6,6,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5],h=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64e6,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,243e5,28629151,33554432,39135393,45435424,52521875,60466176];function d(e,t,r){r.negative=t.negative^e.negative;var o=e.length+t.length|0;r.length=o,o=o-1|0;var n=0|e.words[0],i=0|t.words[0],a=n*i,s=67108863&a,l=a/67108864|0;r.words[0]=s;for(var u=1;u>>26,h=67108863&l,d=Math.min(u,t.length-1),f=Math.max(0,u-e.length+1);f<=d;f++){var p=u-f|0;c+=(a=(n=0|e.words[p])*(i=0|t.words[f])+h)/67108864|0,h=67108863&a}r.words[u]=0|h,l=0|c}return 0!==l?r.words[u]=0|l:r.length--,r.strip()}i.prototype.toString=function(e,t){var o;if(t=0|t||1,16===(e=e||10)||"hex"===e){o="";for(var n=0,i=0,a=0;a>>24-n&16777215)||a!==this.length-1?u[6-l.length]+l+o:l+o,(n+=2)>=26&&(n-=26,a--)}for(0!==i&&(o=i.toString(16)+o);o.length%t!=0;)o="0"+o;return 0!==this.negative&&(o="-"+o),o}if(e===(0|e)&&e>=2&&e<=36){var d=c[e],f=h[e];o="";var p=this.clone();for(p.negative=0;!p.isZero();){var m=p.modn(f).toString(e);o=(p=p.idivn(f)).isZero()?m+o:u[d-m.length]+m+o}for(this.isZero()&&(o="0"+o);o.length%t!=0;)o="0"+o;return 0!==this.negative&&(o="-"+o),o}r(!1,"Base should be between 2 and 36")},i.prototype.toNumber=function(){var e=this.words[0];return 2===this.length?e+=67108864*this.words[1]:3===this.length&&1===this.words[2]?e+=4503599627370496+67108864*this.words[1]:this.length>2&&r(!1,"Number can only safely store up to 53 bits"),0!==this.negative?-e:e},i.prototype.toJSON=function(){return this.toString(16)},i.prototype.toBuffer=function(e,t){return r(void 0!==a),this.toArrayLike(a,e,t)},i.prototype.toArray=function(e,t){return this.toArrayLike(Array,e,t)},i.prototype.toArrayLike=function(e,t,o){var n=this.byteLength(),i=o||Math.max(1,n);r(n<=i,"byte array longer than desired length"),r(i>0,"Requested array length <= 0"),this.strip();var a,s,l="le"===t,u=new e(i),c=this.clone();if(l){for(s=0;!c.isZero();s++)a=c.andln(255),c.iushrn(8),u[s]=a;for(;s=4096&&(r+=13,t>>>=13),t>=64&&(r+=7,t>>>=7),t>=8&&(r+=4,t>>>=4),t>=2&&(r+=2,t>>>=2),r+t},i.prototype._zeroBits=function(e){if(0===e)return 26;var t=e,r=0;return 0==(8191&t)&&(r+=13,t>>>=13),0==(127&t)&&(r+=7,t>>>=7),0==(15&t)&&(r+=4,t>>>=4),0==(3&t)&&(r+=2,t>>>=2),0==(1&t)&&r++,r},i.prototype.bitLength=function(){var e=this.words[this.length-1],t=this._countBits(e);return 26*(this.length-1)+t},i.prototype.zeroBits=function(){if(this.isZero())return 0;for(var e=0,t=0;te.length?this.clone().ior(e):e.clone().ior(this)},i.prototype.uor=function(e){return this.length>e.length?this.clone().iuor(e):e.clone().iuor(this)},i.prototype.iuand=function(e){var t;t=this.length>e.length?e:this;for(var r=0;re.length?this.clone().iand(e):e.clone().iand(this)},i.prototype.uand=function(e){return this.length>e.length?this.clone().iuand(e):e.clone().iuand(this)},i.prototype.iuxor=function(e){var t,r;this.length>e.length?(t=this,r=e):(t=e,r=this);for(var o=0;oe.length?this.clone().ixor(e):e.clone().ixor(this)},i.prototype.uxor=function(e){return this.length>e.length?this.clone().iuxor(e):e.clone().iuxor(this)},i.prototype.inotn=function(e){r("number"==typeof e&&e>=0);var t=0|Math.ceil(e/26),o=e%26;this._expand(t),o>0&&t--;for(var n=0;n0&&(this.words[n]=~this.words[n]&67108863>>26-o),this.strip()},i.prototype.notn=function(e){return this.clone().inotn(e)},i.prototype.setn=function(e,t){r("number"==typeof e&&e>=0);var o=e/26|0,n=e%26;return this._expand(o+1),this.words[o]=t?this.words[o]|1<e.length?(r=this,o=e):(r=e,o=this);for(var n=0,i=0;i>>26;for(;0!==n&&i>>26;if(this.length=r.length,0!==n)this.words[this.length]=n,this.length++;else if(r!==this)for(;ie.length?this.clone().iadd(e):e.clone().iadd(this)},i.prototype.isub=function(e){if(0!==e.negative){e.negative=0;var t=this.iadd(e);return e.negative=1,t._normSign()}if(0!==this.negative)return this.negative=0,this.iadd(e),this.negative=1,this._normSign();var r,o,n=this.cmp(e);if(0===n)return this.negative=0,this.length=1,this.words[0]=0,this;n>0?(r=this,o=e):(r=e,o=this);for(var i=0,a=0;a>26,this.words[a]=67108863&t;for(;0!==i&&a>26,this.words[a]=67108863&t;if(0===i&&a>>13,f=0|a[1],p=8191&f,m=f>>>13,g=0|a[2],v=8191&g,b=g>>>13,y=0|a[3],A=8191&y,S=y>>>13,T=0|a[4],M=8191&T,w=T>>>13,E=0|a[5],F=8191&E,C=E>>>13,B=0|a[6],J=8191&B,L=B>>>13,P=0|a[7],k=8191&P,R=P>>>13,D=0|a[8],O=8191&D,N=D>>>13,I=0|a[9],X=8191&I,_=I>>>13,H=0|s[0],x=8191&H,G=H>>>13,U=0|s[1],z=8191&U,V=U>>>13,Z=0|s[2],j=8191&Z,K=Z>>>13,Q=0|s[3],q=8191&Q,Y=Q>>>13,W=0|s[4],$=8191&W,ee=W>>>13,te=0|s[5],re=8191&te,oe=te>>>13,ne=0|s[6],ie=8191&ne,ae=ne>>>13,se=0|s[7],le=8191&se,ue=se>>>13,ce=0|s[8],he=8191&ce,de=ce>>>13,fe=0|s[9],pe=8191&fe,me=fe>>>13;r.negative=e.negative^t.negative,r.length=19;var ge=(u+(o=Math.imul(h,x))|0)+((8191&(n=(n=Math.imul(h,G))+Math.imul(d,x)|0))<<13)|0;u=((i=Math.imul(d,G))+(n>>>13)|0)+(ge>>>26)|0,ge&=67108863,o=Math.imul(p,x),n=(n=Math.imul(p,G))+Math.imul(m,x)|0,i=Math.imul(m,G);var ve=(u+(o=o+Math.imul(h,z)|0)|0)+((8191&(n=(n=n+Math.imul(h,V)|0)+Math.imul(d,z)|0))<<13)|0;u=((i=i+Math.imul(d,V)|0)+(n>>>13)|0)+(ve>>>26)|0,ve&=67108863,o=Math.imul(v,x),n=(n=Math.imul(v,G))+Math.imul(b,x)|0,i=Math.imul(b,G),o=o+Math.imul(p,z)|0,n=(n=n+Math.imul(p,V)|0)+Math.imul(m,z)|0,i=i+Math.imul(m,V)|0;var be=(u+(o=o+Math.imul(h,j)|0)|0)+((8191&(n=(n=n+Math.imul(h,K)|0)+Math.imul(d,j)|0))<<13)|0;u=((i=i+Math.imul(d,K)|0)+(n>>>13)|0)+(be>>>26)|0,be&=67108863,o=Math.imul(A,x),n=(n=Math.imul(A,G))+Math.imul(S,x)|0,i=Math.imul(S,G),o=o+Math.imul(v,z)|0,n=(n=n+Math.imul(v,V)|0)+Math.imul(b,z)|0,i=i+Math.imul(b,V)|0,o=o+Math.imul(p,j)|0,n=(n=n+Math.imul(p,K)|0)+Math.imul(m,j)|0,i=i+Math.imul(m,K)|0;var ye=(u+(o=o+Math.imul(h,q)|0)|0)+((8191&(n=(n=n+Math.imul(h,Y)|0)+Math.imul(d,q)|0))<<13)|0;u=((i=i+Math.imul(d,Y)|0)+(n>>>13)|0)+(ye>>>26)|0,ye&=67108863,o=Math.imul(M,x),n=(n=Math.imul(M,G))+Math.imul(w,x)|0,i=Math.imul(w,G),o=o+Math.imul(A,z)|0,n=(n=n+Math.imul(A,V)|0)+Math.imul(S,z)|0,i=i+Math.imul(S,V)|0,o=o+Math.imul(v,j)|0,n=(n=n+Math.imul(v,K)|0)+Math.imul(b,j)|0,i=i+Math.imul(b,K)|0,o=o+Math.imul(p,q)|0,n=(n=n+Math.imul(p,Y)|0)+Math.imul(m,q)|0,i=i+Math.imul(m,Y)|0;var Ae=(u+(o=o+Math.imul(h,$)|0)|0)+((8191&(n=(n=n+Math.imul(h,ee)|0)+Math.imul(d,$)|0))<<13)|0;u=((i=i+Math.imul(d,ee)|0)+(n>>>13)|0)+(Ae>>>26)|0,Ae&=67108863,o=Math.imul(F,x),n=(n=Math.imul(F,G))+Math.imul(C,x)|0,i=Math.imul(C,G),o=o+Math.imul(M,z)|0,n=(n=n+Math.imul(M,V)|0)+Math.imul(w,z)|0,i=i+Math.imul(w,V)|0,o=o+Math.imul(A,j)|0,n=(n=n+Math.imul(A,K)|0)+Math.imul(S,j)|0,i=i+Math.imul(S,K)|0,o=o+Math.imul(v,q)|0,n=(n=n+Math.imul(v,Y)|0)+Math.imul(b,q)|0,i=i+Math.imul(b,Y)|0,o=o+Math.imul(p,$)|0,n=(n=n+Math.imul(p,ee)|0)+Math.imul(m,$)|0,i=i+Math.imul(m,ee)|0;var Se=(u+(o=o+Math.imul(h,re)|0)|0)+((8191&(n=(n=n+Math.imul(h,oe)|0)+Math.imul(d,re)|0))<<13)|0;u=((i=i+Math.imul(d,oe)|0)+(n>>>13)|0)+(Se>>>26)|0,Se&=67108863,o=Math.imul(J,x),n=(n=Math.imul(J,G))+Math.imul(L,x)|0,i=Math.imul(L,G),o=o+Math.imul(F,z)|0,n=(n=n+Math.imul(F,V)|0)+Math.imul(C,z)|0,i=i+Math.imul(C,V)|0,o=o+Math.imul(M,j)|0,n=(n=n+Math.imul(M,K)|0)+Math.imul(w,j)|0,i=i+Math.imul(w,K)|0,o=o+Math.imul(A,q)|0,n=(n=n+Math.imul(A,Y)|0)+Math.imul(S,q)|0,i=i+Math.imul(S,Y)|0,o=o+Math.imul(v,$)|0,n=(n=n+Math.imul(v,ee)|0)+Math.imul(b,$)|0,i=i+Math.imul(b,ee)|0,o=o+Math.imul(p,re)|0,n=(n=n+Math.imul(p,oe)|0)+Math.imul(m,re)|0,i=i+Math.imul(m,oe)|0;var Te=(u+(o=o+Math.imul(h,ie)|0)|0)+((8191&(n=(n=n+Math.imul(h,ae)|0)+Math.imul(d,ie)|0))<<13)|0;u=((i=i+Math.imul(d,ae)|0)+(n>>>13)|0)+(Te>>>26)|0,Te&=67108863,o=Math.imul(k,x),n=(n=Math.imul(k,G))+Math.imul(R,x)|0,i=Math.imul(R,G),o=o+Math.imul(J,z)|0,n=(n=n+Math.imul(J,V)|0)+Math.imul(L,z)|0,i=i+Math.imul(L,V)|0,o=o+Math.imul(F,j)|0,n=(n=n+Math.imul(F,K)|0)+Math.imul(C,j)|0,i=i+Math.imul(C,K)|0,o=o+Math.imul(M,q)|0,n=(n=n+Math.imul(M,Y)|0)+Math.imul(w,q)|0,i=i+Math.imul(w,Y)|0,o=o+Math.imul(A,$)|0,n=(n=n+Math.imul(A,ee)|0)+Math.imul(S,$)|0,i=i+Math.imul(S,ee)|0,o=o+Math.imul(v,re)|0,n=(n=n+Math.imul(v,oe)|0)+Math.imul(b,re)|0,i=i+Math.imul(b,oe)|0,o=o+Math.imul(p,ie)|0,n=(n=n+Math.imul(p,ae)|0)+Math.imul(m,ie)|0,i=i+Math.imul(m,ae)|0;var Me=(u+(o=o+Math.imul(h,le)|0)|0)+((8191&(n=(n=n+Math.imul(h,ue)|0)+Math.imul(d,le)|0))<<13)|0;u=((i=i+Math.imul(d,ue)|0)+(n>>>13)|0)+(Me>>>26)|0,Me&=67108863,o=Math.imul(O,x),n=(n=Math.imul(O,G))+Math.imul(N,x)|0,i=Math.imul(N,G),o=o+Math.imul(k,z)|0,n=(n=n+Math.imul(k,V)|0)+Math.imul(R,z)|0,i=i+Math.imul(R,V)|0,o=o+Math.imul(J,j)|0,n=(n=n+Math.imul(J,K)|0)+Math.imul(L,j)|0,i=i+Math.imul(L,K)|0,o=o+Math.imul(F,q)|0,n=(n=n+Math.imul(F,Y)|0)+Math.imul(C,q)|0,i=i+Math.imul(C,Y)|0,o=o+Math.imul(M,$)|0,n=(n=n+Math.imul(M,ee)|0)+Math.imul(w,$)|0,i=i+Math.imul(w,ee)|0,o=o+Math.imul(A,re)|0,n=(n=n+Math.imul(A,oe)|0)+Math.imul(S,re)|0,i=i+Math.imul(S,oe)|0,o=o+Math.imul(v,ie)|0,n=(n=n+Math.imul(v,ae)|0)+Math.imul(b,ie)|0,i=i+Math.imul(b,ae)|0,o=o+Math.imul(p,le)|0,n=(n=n+Math.imul(p,ue)|0)+Math.imul(m,le)|0,i=i+Math.imul(m,ue)|0;var we=(u+(o=o+Math.imul(h,he)|0)|0)+((8191&(n=(n=n+Math.imul(h,de)|0)+Math.imul(d,he)|0))<<13)|0;u=((i=i+Math.imul(d,de)|0)+(n>>>13)|0)+(we>>>26)|0,we&=67108863,o=Math.imul(X,x),n=(n=Math.imul(X,G))+Math.imul(_,x)|0,i=Math.imul(_,G),o=o+Math.imul(O,z)|0,n=(n=n+Math.imul(O,V)|0)+Math.imul(N,z)|0,i=i+Math.imul(N,V)|0,o=o+Math.imul(k,j)|0,n=(n=n+Math.imul(k,K)|0)+Math.imul(R,j)|0,i=i+Math.imul(R,K)|0,o=o+Math.imul(J,q)|0,n=(n=n+Math.imul(J,Y)|0)+Math.imul(L,q)|0,i=i+Math.imul(L,Y)|0,o=o+Math.imul(F,$)|0,n=(n=n+Math.imul(F,ee)|0)+Math.imul(C,$)|0,i=i+Math.imul(C,ee)|0,o=o+Math.imul(M,re)|0,n=(n=n+Math.imul(M,oe)|0)+Math.imul(w,re)|0,i=i+Math.imul(w,oe)|0,o=o+Math.imul(A,ie)|0,n=(n=n+Math.imul(A,ae)|0)+Math.imul(S,ie)|0,i=i+Math.imul(S,ae)|0,o=o+Math.imul(v,le)|0,n=(n=n+Math.imul(v,ue)|0)+Math.imul(b,le)|0,i=i+Math.imul(b,ue)|0,o=o+Math.imul(p,he)|0,n=(n=n+Math.imul(p,de)|0)+Math.imul(m,he)|0,i=i+Math.imul(m,de)|0;var Ee=(u+(o=o+Math.imul(h,pe)|0)|0)+((8191&(n=(n=n+Math.imul(h,me)|0)+Math.imul(d,pe)|0))<<13)|0;u=((i=i+Math.imul(d,me)|0)+(n>>>13)|0)+(Ee>>>26)|0,Ee&=67108863,o=Math.imul(X,z),n=(n=Math.imul(X,V))+Math.imul(_,z)|0,i=Math.imul(_,V),o=o+Math.imul(O,j)|0,n=(n=n+Math.imul(O,K)|0)+Math.imul(N,j)|0,i=i+Math.imul(N,K)|0,o=o+Math.imul(k,q)|0,n=(n=n+Math.imul(k,Y)|0)+Math.imul(R,q)|0,i=i+Math.imul(R,Y)|0,o=o+Math.imul(J,$)|0,n=(n=n+Math.imul(J,ee)|0)+Math.imul(L,$)|0,i=i+Math.imul(L,ee)|0,o=o+Math.imul(F,re)|0,n=(n=n+Math.imul(F,oe)|0)+Math.imul(C,re)|0,i=i+Math.imul(C,oe)|0,o=o+Math.imul(M,ie)|0,n=(n=n+Math.imul(M,ae)|0)+Math.imul(w,ie)|0,i=i+Math.imul(w,ae)|0,o=o+Math.imul(A,le)|0,n=(n=n+Math.imul(A,ue)|0)+Math.imul(S,le)|0,i=i+Math.imul(S,ue)|0,o=o+Math.imul(v,he)|0,n=(n=n+Math.imul(v,de)|0)+Math.imul(b,he)|0,i=i+Math.imul(b,de)|0;var Fe=(u+(o=o+Math.imul(p,pe)|0)|0)+((8191&(n=(n=n+Math.imul(p,me)|0)+Math.imul(m,pe)|0))<<13)|0;u=((i=i+Math.imul(m,me)|0)+(n>>>13)|0)+(Fe>>>26)|0,Fe&=67108863,o=Math.imul(X,j),n=(n=Math.imul(X,K))+Math.imul(_,j)|0,i=Math.imul(_,K),o=o+Math.imul(O,q)|0,n=(n=n+Math.imul(O,Y)|0)+Math.imul(N,q)|0,i=i+Math.imul(N,Y)|0,o=o+Math.imul(k,$)|0,n=(n=n+Math.imul(k,ee)|0)+Math.imul(R,$)|0,i=i+Math.imul(R,ee)|0,o=o+Math.imul(J,re)|0,n=(n=n+Math.imul(J,oe)|0)+Math.imul(L,re)|0,i=i+Math.imul(L,oe)|0,o=o+Math.imul(F,ie)|0,n=(n=n+Math.imul(F,ae)|0)+Math.imul(C,ie)|0,i=i+Math.imul(C,ae)|0,o=o+Math.imul(M,le)|0,n=(n=n+Math.imul(M,ue)|0)+Math.imul(w,le)|0,i=i+Math.imul(w,ue)|0,o=o+Math.imul(A,he)|0,n=(n=n+Math.imul(A,de)|0)+Math.imul(S,he)|0,i=i+Math.imul(S,de)|0;var Ce=(u+(o=o+Math.imul(v,pe)|0)|0)+((8191&(n=(n=n+Math.imul(v,me)|0)+Math.imul(b,pe)|0))<<13)|0;u=((i=i+Math.imul(b,me)|0)+(n>>>13)|0)+(Ce>>>26)|0,Ce&=67108863,o=Math.imul(X,q),n=(n=Math.imul(X,Y))+Math.imul(_,q)|0,i=Math.imul(_,Y),o=o+Math.imul(O,$)|0,n=(n=n+Math.imul(O,ee)|0)+Math.imul(N,$)|0,i=i+Math.imul(N,ee)|0,o=o+Math.imul(k,re)|0,n=(n=n+Math.imul(k,oe)|0)+Math.imul(R,re)|0,i=i+Math.imul(R,oe)|0,o=o+Math.imul(J,ie)|0,n=(n=n+Math.imul(J,ae)|0)+Math.imul(L,ie)|0,i=i+Math.imul(L,ae)|0,o=o+Math.imul(F,le)|0,n=(n=n+Math.imul(F,ue)|0)+Math.imul(C,le)|0,i=i+Math.imul(C,ue)|0,o=o+Math.imul(M,he)|0,n=(n=n+Math.imul(M,de)|0)+Math.imul(w,he)|0,i=i+Math.imul(w,de)|0;var Be=(u+(o=o+Math.imul(A,pe)|0)|0)+((8191&(n=(n=n+Math.imul(A,me)|0)+Math.imul(S,pe)|0))<<13)|0;u=((i=i+Math.imul(S,me)|0)+(n>>>13)|0)+(Be>>>26)|0,Be&=67108863,o=Math.imul(X,$),n=(n=Math.imul(X,ee))+Math.imul(_,$)|0,i=Math.imul(_,ee),o=o+Math.imul(O,re)|0,n=(n=n+Math.imul(O,oe)|0)+Math.imul(N,re)|0,i=i+Math.imul(N,oe)|0,o=o+Math.imul(k,ie)|0,n=(n=n+Math.imul(k,ae)|0)+Math.imul(R,ie)|0,i=i+Math.imul(R,ae)|0,o=o+Math.imul(J,le)|0,n=(n=n+Math.imul(J,ue)|0)+Math.imul(L,le)|0,i=i+Math.imul(L,ue)|0,o=o+Math.imul(F,he)|0,n=(n=n+Math.imul(F,de)|0)+Math.imul(C,he)|0,i=i+Math.imul(C,de)|0;var Je=(u+(o=o+Math.imul(M,pe)|0)|0)+((8191&(n=(n=n+Math.imul(M,me)|0)+Math.imul(w,pe)|0))<<13)|0;u=((i=i+Math.imul(w,me)|0)+(n>>>13)|0)+(Je>>>26)|0,Je&=67108863,o=Math.imul(X,re),n=(n=Math.imul(X,oe))+Math.imul(_,re)|0,i=Math.imul(_,oe),o=o+Math.imul(O,ie)|0,n=(n=n+Math.imul(O,ae)|0)+Math.imul(N,ie)|0,i=i+Math.imul(N,ae)|0,o=o+Math.imul(k,le)|0,n=(n=n+Math.imul(k,ue)|0)+Math.imul(R,le)|0,i=i+Math.imul(R,ue)|0,o=o+Math.imul(J,he)|0,n=(n=n+Math.imul(J,de)|0)+Math.imul(L,he)|0,i=i+Math.imul(L,de)|0;var Le=(u+(o=o+Math.imul(F,pe)|0)|0)+((8191&(n=(n=n+Math.imul(F,me)|0)+Math.imul(C,pe)|0))<<13)|0;u=((i=i+Math.imul(C,me)|0)+(n>>>13)|0)+(Le>>>26)|0,Le&=67108863,o=Math.imul(X,ie),n=(n=Math.imul(X,ae))+Math.imul(_,ie)|0,i=Math.imul(_,ae),o=o+Math.imul(O,le)|0,n=(n=n+Math.imul(O,ue)|0)+Math.imul(N,le)|0,i=i+Math.imul(N,ue)|0,o=o+Math.imul(k,he)|0,n=(n=n+Math.imul(k,de)|0)+Math.imul(R,he)|0,i=i+Math.imul(R,de)|0;var Pe=(u+(o=o+Math.imul(J,pe)|0)|0)+((8191&(n=(n=n+Math.imul(J,me)|0)+Math.imul(L,pe)|0))<<13)|0;u=((i=i+Math.imul(L,me)|0)+(n>>>13)|0)+(Pe>>>26)|0,Pe&=67108863,o=Math.imul(X,le),n=(n=Math.imul(X,ue))+Math.imul(_,le)|0,i=Math.imul(_,ue),o=o+Math.imul(O,he)|0,n=(n=n+Math.imul(O,de)|0)+Math.imul(N,he)|0,i=i+Math.imul(N,de)|0;var ke=(u+(o=o+Math.imul(k,pe)|0)|0)+((8191&(n=(n=n+Math.imul(k,me)|0)+Math.imul(R,pe)|0))<<13)|0;u=((i=i+Math.imul(R,me)|0)+(n>>>13)|0)+(ke>>>26)|0,ke&=67108863,o=Math.imul(X,he),n=(n=Math.imul(X,de))+Math.imul(_,he)|0,i=Math.imul(_,de);var Re=(u+(o=o+Math.imul(O,pe)|0)|0)+((8191&(n=(n=n+Math.imul(O,me)|0)+Math.imul(N,pe)|0))<<13)|0;u=((i=i+Math.imul(N,me)|0)+(n>>>13)|0)+(Re>>>26)|0,Re&=67108863;var De=(u+(o=Math.imul(X,pe))|0)+((8191&(n=(n=Math.imul(X,me))+Math.imul(_,pe)|0))<<13)|0;return u=((i=Math.imul(_,me))+(n>>>13)|0)+(De>>>26)|0,De&=67108863,l[0]=ge,l[1]=ve,l[2]=be,l[3]=ye,l[4]=Ae,l[5]=Se,l[6]=Te,l[7]=Me,l[8]=we,l[9]=Ee,l[10]=Fe,l[11]=Ce,l[12]=Be,l[13]=Je,l[14]=Le,l[15]=Pe,l[16]=ke,l[17]=Re,l[18]=De,0!==u&&(l[19]=u,r.length++),r};function p(e,t,r){return(new m).mulp(e,t,r)}function m(e,t){this.x=e,this.y=t}Math.imul||(f=d),i.prototype.mulTo=function(e,t){var r=this.length+e.length;return 10===this.length&&10===e.length?f(this,e,t):r<63?d(this,e,t):r<1024?function(e,t,r){r.negative=t.negative^e.negative,r.length=e.length+t.length;for(var o=0,n=0,i=0;i>>26)|0)>>>26,a&=67108863}r.words[i]=s,o=a,a=n}return 0!==o?r.words[i]=o:r.length--,r.strip()}(this,e,t):p(this,e,t)},m.prototype.makeRBT=function(e){for(var t=new Array(e),r=i.prototype._countBits(e)-1,o=0;o>=1;return o},m.prototype.permute=function(e,t,r,o,n,i){for(var a=0;a>>=1)n++;return 1<>>=13,o[2*a+1]=8191&i,i>>>=13;for(a=2*t;a>=26,t+=n/67108864|0,t+=i>>>26,this.words[o]=67108863&i}return 0!==t&&(this.words[o]=t,this.length++),this},i.prototype.muln=function(e){return this.clone().imuln(e)},i.prototype.sqr=function(){return this.mul(this)},i.prototype.isqr=function(){return this.imul(this.clone())},i.prototype.pow=function(e){var t=function(e){for(var t=new Array(e.bitLength()),r=0;r>>n}return t}(e);if(0===t.length)return new i(1);for(var r=this,o=0;o=0);var t,o=e%26,n=(e-o)/26,i=67108863>>>26-o<<26-o;if(0!==o){var a=0;for(t=0;t>>26-o}a&&(this.words[t]=a,this.length++)}if(0!==n){for(t=this.length-1;t>=0;t--)this.words[t+n]=this.words[t];for(t=0;t=0),n=t?(t-t%26)/26:0;var i=e%26,a=Math.min((e-i)/26,this.length),s=67108863^67108863>>>i<a)for(this.length-=a,u=0;u=0&&(0!==c||u>=n);u--){var h=0|this.words[u];this.words[u]=c<<26-i|h>>>i,c=h&s}return l&&0!==c&&(l.words[l.length++]=c),0===this.length&&(this.words[0]=0,this.length=1),this.strip()},i.prototype.ishrn=function(e,t,o){return r(0===this.negative),this.iushrn(e,t,o)},i.prototype.shln=function(e){return this.clone().ishln(e)},i.prototype.ushln=function(e){return this.clone().iushln(e)},i.prototype.shrn=function(e){return this.clone().ishrn(e)},i.prototype.ushrn=function(e){return this.clone().iushrn(e)},i.prototype.testn=function(e){r("number"==typeof e&&e>=0);var t=e%26,o=(e-t)/26,n=1<=0);var t=e%26,o=(e-t)/26;if(r(0===this.negative,"imaskn works only with positive numbers"),this.length<=o)return this;if(0!==t&&o++,this.length=Math.min(o,this.length),0!==t){var n=67108863^67108863>>>t<=67108864;t++)this.words[t]-=67108864,t===this.length-1?this.words[t+1]=1:this.words[t+1]++;return this.length=Math.max(this.length,t+1),this},i.prototype.isubn=function(e){if(r("number"==typeof e),r(e<67108864),e<0)return this.iaddn(-e);if(0!==this.negative)return this.negative=0,this.iaddn(e),this.negative=1,this;if(this.words[0]-=e,1===this.length&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var t=0;t>26)-(l/67108864|0),this.words[n+o]=67108863&i}for(;n>26,this.words[n+o]=67108863&i;if(0===s)return this.strip();for(r(-1===s),s=0,n=0;n>26,this.words[n]=67108863&i;return this.negative=1,this.strip()},i.prototype._wordDiv=function(e,t){var r=(this.length,e.length),o=this.clone(),n=e,a=0|n.words[n.length-1];0!==(r=26-this._countBits(a))&&(n=n.ushln(r),o.iushln(r),a=0|n.words[n.length-1]);var s,l=o.length-n.length;if("mod"!==t){(s=new i(null)).length=l+1,s.words=new Array(s.length);for(var u=0;u=0;h--){var d=67108864*(0|o.words[n.length+h])+(0|o.words[n.length+h-1]);for(d=Math.min(d/a|0,67108863),o._ishlnsubmul(n,d,h);0!==o.negative;)d--,o.negative=0,o._ishlnsubmul(n,1,h),o.isZero()||(o.negative^=1);s&&(s.words[h]=d)}return s&&s.strip(),o.strip(),"div"!==t&&0!==r&&o.iushrn(r),{div:s||null,mod:o}},i.prototype.divmod=function(e,t,o){return r(!e.isZero()),this.isZero()?{div:new i(0),mod:new i(0)}:0!==this.negative&&0===e.negative?(s=this.neg().divmod(e,t),"mod"!==t&&(n=s.div.neg()),"div"!==t&&(a=s.mod.neg(),o&&0!==a.negative&&a.iadd(e)),{div:n,mod:a}):0===this.negative&&0!==e.negative?(s=this.divmod(e.neg(),t),"mod"!==t&&(n=s.div.neg()),{div:n,mod:s.mod}):0!=(this.negative&e.negative)?(s=this.neg().divmod(e.neg(),t),"div"!==t&&(a=s.mod.neg(),o&&0!==a.negative&&a.isub(e)),{div:s.div,mod:a}):e.length>this.length||this.cmp(e)<0?{div:new i(0),mod:this}:1===e.length?"div"===t?{div:this.divn(e.words[0]),mod:null}:"mod"===t?{div:null,mod:new i(this.modn(e.words[0]))}:{div:this.divn(e.words[0]),mod:new i(this.modn(e.words[0]))}:this._wordDiv(e,t);var n,a,s},i.prototype.div=function(e){return this.divmod(e,"div",!1).div},i.prototype.mod=function(e){return this.divmod(e,"mod",!1).mod},i.prototype.umod=function(e){return this.divmod(e,"mod",!0).mod},i.prototype.divRound=function(e){var t=this.divmod(e);if(t.mod.isZero())return t.div;var r=0!==t.div.negative?t.mod.isub(e):t.mod,o=e.ushrn(1),n=e.andln(1),i=r.cmp(o);return i<0||1===n&&0===i?t.div:0!==t.div.negative?t.div.isubn(1):t.div.iaddn(1)},i.prototype.modn=function(e){r(e<=67108863);for(var t=(1<<26)%e,o=0,n=this.length-1;n>=0;n--)o=(t*o+(0|this.words[n]))%e;return o},i.prototype.idivn=function(e){r(e<=67108863);for(var t=0,o=this.length-1;o>=0;o--){var n=(0|this.words[o])+67108864*t;this.words[o]=n/e|0,t=n%e}return this.strip()},i.prototype.divn=function(e){return this.clone().idivn(e)},i.prototype.egcd=function(e){r(0===e.negative),r(!e.isZero());var t=this,o=e.clone();t=0!==t.negative?t.umod(e):t.clone();for(var n=new i(1),a=new i(0),s=new i(0),l=new i(1),u=0;t.isEven()&&o.isEven();)t.iushrn(1),o.iushrn(1),++u;for(var c=o.clone(),h=t.clone();!t.isZero();){for(var d=0,f=1;0==(t.words[0]&f)&&d<26;++d,f<<=1);if(d>0)for(t.iushrn(d);d-- >0;)(n.isOdd()||a.isOdd())&&(n.iadd(c),a.isub(h)),n.iushrn(1),a.iushrn(1);for(var p=0,m=1;0==(o.words[0]&m)&&p<26;++p,m<<=1);if(p>0)for(o.iushrn(p);p-- >0;)(s.isOdd()||l.isOdd())&&(s.iadd(c),l.isub(h)),s.iushrn(1),l.iushrn(1);t.cmp(o)>=0?(t.isub(o),n.isub(s),a.isub(l)):(o.isub(t),s.isub(n),l.isub(a))}return{a:s,b:l,gcd:o.iushln(u)}},i.prototype._invmp=function(e){r(0===e.negative),r(!e.isZero());var t=this,o=e.clone();t=0!==t.negative?t.umod(e):t.clone();for(var n,a=new i(1),s=new i(0),l=o.clone();t.cmpn(1)>0&&o.cmpn(1)>0;){for(var u=0,c=1;0==(t.words[0]&c)&&u<26;++u,c<<=1);if(u>0)for(t.iushrn(u);u-- >0;)a.isOdd()&&a.iadd(l),a.iushrn(1);for(var h=0,d=1;0==(o.words[0]&d)&&h<26;++h,d<<=1);if(h>0)for(o.iushrn(h);h-- >0;)s.isOdd()&&s.iadd(l),s.iushrn(1);t.cmp(o)>=0?(t.isub(o),a.isub(s)):(o.isub(t),s.isub(a))}return(n=0===t.cmpn(1)?a:s).cmpn(0)<0&&n.iadd(e),n},i.prototype.gcd=function(e){if(this.isZero())return e.abs();if(e.isZero())return this.abs();var t=this.clone(),r=e.clone();t.negative=0,r.negative=0;for(var o=0;t.isEven()&&r.isEven();o++)t.iushrn(1),r.iushrn(1);for(;;){for(;t.isEven();)t.iushrn(1);for(;r.isEven();)r.iushrn(1);var n=t.cmp(r);if(n<0){var i=t;t=r,r=i}else if(0===n||0===r.cmpn(1))break;t.isub(r)}return r.iushln(o)},i.prototype.invm=function(e){return this.egcd(e).a.umod(e)},i.prototype.isEven=function(){return 0==(1&this.words[0])},i.prototype.isOdd=function(){return 1==(1&this.words[0])},i.prototype.andln=function(e){return this.words[0]&e},i.prototype.bincn=function(e){r("number"==typeof e);var t=e%26,o=(e-t)/26,n=1<>>26,s&=67108863,this.words[a]=s}return 0!==i&&(this.words[a]=i,this.length++),this},i.prototype.isZero=function(){return 1===this.length&&0===this.words[0]},i.prototype.cmpn=function(e){var t,o=e<0;if(0!==this.negative&&!o)return-1;if(0===this.negative&&o)return 1;if(this.strip(),this.length>1)t=1;else{o&&(e=-e),r(e<=67108863,"Number is too big");var n=0|this.words[0];t=n===e?0:ne.length)return 1;if(this.length=0;r--){var o=0|this.words[r],n=0|e.words[r];if(o!==n){on&&(t=1);break}}return t},i.prototype.gtn=function(e){return 1===this.cmpn(e)},i.prototype.gt=function(e){return 1===this.cmp(e)},i.prototype.gten=function(e){return this.cmpn(e)>=0},i.prototype.gte=function(e){return this.cmp(e)>=0},i.prototype.ltn=function(e){return-1===this.cmpn(e)},i.prototype.lt=function(e){return-1===this.cmp(e)},i.prototype.lten=function(e){return this.cmpn(e)<=0},i.prototype.lte=function(e){return this.cmp(e)<=0},i.prototype.eqn=function(e){return 0===this.cmpn(e)},i.prototype.eq=function(e){return 0===this.cmp(e)},i.red=function(e){return new T(e)},i.prototype.toRed=function(e){return r(!this.red,"Already a number in reduction context"),r(0===this.negative,"red works only with positives"),e.convertTo(this)._forceRed(e)},i.prototype.fromRed=function(){return r(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},i.prototype._forceRed=function(e){return this.red=e,this},i.prototype.forceRed=function(e){return r(!this.red,"Already a number in reduction context"),this._forceRed(e)},i.prototype.redAdd=function(e){return r(this.red,"redAdd works only with red numbers"),this.red.add(this,e)},i.prototype.redIAdd=function(e){return r(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,e)},i.prototype.redSub=function(e){return r(this.red,"redSub works only with red numbers"),this.red.sub(this,e)},i.prototype.redISub=function(e){return r(this.red,"redISub works only with red numbers"),this.red.isub(this,e)},i.prototype.redShl=function(e){return r(this.red,"redShl works only with red numbers"),this.red.shl(this,e)},i.prototype.redMul=function(e){return r(this.red,"redMul works only with red numbers"),this.red._verify2(this,e),this.red.mul(this,e)},i.prototype.redIMul=function(e){return r(this.red,"redMul works only with red numbers"),this.red._verify2(this,e),this.red.imul(this,e)},i.prototype.redSqr=function(){return r(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},i.prototype.redISqr=function(){return r(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},i.prototype.redSqrt=function(){return r(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},i.prototype.redInvm=function(){return r(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},i.prototype.redNeg=function(){return r(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},i.prototype.redPow=function(e){return r(this.red&&!e.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,e)};var g={k256:null,p224:null,p192:null,p25519:null};function v(e,t){this.name=e,this.p=new i(t,16),this.n=this.p.bitLength(),this.k=new i(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}function b(){v.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}function y(){v.call(this,"p224","ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001")}function A(){v.call(this,"p192","ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff")}function S(){v.call(this,"25519","7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed")}function T(e){if("string"==typeof e){var t=i._prime(e);this.m=t.p,this.prime=t}else r(e.gtn(1),"modulus must be greater than 1"),this.m=e,this.prime=null}function M(e){T.call(this,e),this.shift=this.m.bitLength(),this.shift%26!=0&&(this.shift+=26-this.shift%26),this.r=new i(1).iushln(this.shift),this.r2=this.imod(this.r.sqr()),this.rinv=this.r._invmp(this.m),this.minv=this.rinv.mul(this.r).isubn(1).div(this.m),this.minv=this.minv.umod(this.r),this.minv=this.r.sub(this.minv)}v.prototype._tmp=function(){var e=new i(null);return e.words=new Array(Math.ceil(this.n/13)),e},v.prototype.ireduce=function(e){var t,r=e;do{this.split(r,this.tmp),t=(r=(r=this.imulK(r)).iadd(this.tmp)).bitLength()}while(t>this.n);var o=t0?r.isub(this.p):r.strip(),r},v.prototype.split=function(e,t){e.iushrn(this.n,0,t)},v.prototype.imulK=function(e){return e.imul(this.k)},o(b,v),b.prototype.split=function(e,t){for(var r=Math.min(e.length,9),o=0;o>>22,n=i}n>>>=22,e.words[o-10]=n,0===n&&e.length>10?e.length-=10:e.length-=9},b.prototype.imulK=function(e){e.words[e.length]=0,e.words[e.length+1]=0,e.length+=2;for(var t=0,r=0;r>>=26,e.words[r]=n,t=o}return 0!==t&&(e.words[e.length++]=t),e},i._prime=function(e){if(g[e])return g[e];var t;if("k256"===e)t=new b;else if("p224"===e)t=new y;else if("p192"===e)t=new A;else{if("p25519"!==e)throw new Error("Unknown prime "+e);t=new S}return g[e]=t,t},T.prototype._verify1=function(e){r(0===e.negative,"red works only with positives"),r(e.red,"red works only with red numbers")},T.prototype._verify2=function(e,t){r(0==(e.negative|t.negative),"red works only with positives"),r(e.red&&e.red===t.red,"red works only with red numbers")},T.prototype.imod=function(e){return this.prime?this.prime.ireduce(e)._forceRed(this):e.umod(this.m)._forceRed(this)},T.prototype.neg=function(e){return e.isZero()?e.clone():this.m.sub(e)._forceRed(this)},T.prototype.add=function(e,t){this._verify2(e,t);var r=e.add(t);return r.cmp(this.m)>=0&&r.isub(this.m),r._forceRed(this)},T.prototype.iadd=function(e,t){this._verify2(e,t);var r=e.iadd(t);return r.cmp(this.m)>=0&&r.isub(this.m),r},T.prototype.sub=function(e,t){this._verify2(e,t);var r=e.sub(t);return r.cmpn(0)<0&&r.iadd(this.m),r._forceRed(this)},T.prototype.isub=function(e,t){this._verify2(e,t);var r=e.isub(t);return r.cmpn(0)<0&&r.iadd(this.m),r},T.prototype.shl=function(e,t){return this._verify1(e),this.imod(e.ushln(t))},T.prototype.imul=function(e,t){return this._verify2(e,t),this.imod(e.imul(t))},T.prototype.mul=function(e,t){return this._verify2(e,t),this.imod(e.mul(t))},T.prototype.isqr=function(e){return this.imul(e,e.clone())},T.prototype.sqr=function(e){return this.mul(e,e)},T.prototype.sqrt=function(e){if(e.isZero())return e.clone();var t=this.m.andln(3);if(r(t%2==1),3===t){var o=this.m.add(new i(1)).iushrn(2);return this.pow(e,o)}for(var n=this.m.subn(1),a=0;!n.isZero()&&0===n.andln(1);)a++,n.iushrn(1);r(!n.isZero());var s=new i(1).toRed(this),l=s.redNeg(),u=this.m.subn(1).iushrn(1),c=this.m.bitLength();for(c=new i(2*c*c).toRed(this);0!==this.pow(c,u).cmp(l);)c.redIAdd(l);for(var h=this.pow(c,n),d=this.pow(e,n.addn(1).iushrn(1)),f=this.pow(e,n),p=a;0!==f.cmp(s);){for(var m=f,g=0;0!==m.cmp(s);g++)m=m.redSqr();r(g=0;o--){for(var u=t.words[o],c=l-1;c>=0;c--){var h=u>>c&1;n!==r[0]&&(n=this.sqr(n)),0!==h||0!==a?(a<<=1,a|=h,(4===++s||0===o&&0===c)&&(n=this.mul(n,r[a]),s=0,a=0)):s=0}l=26}return n},T.prototype.convertTo=function(e){var t=e.umod(this.m);return t===e?t.clone():t},T.prototype.convertFrom=function(e){var t=e.clone();return t.red=null,t},i.mont=function(e){return new M(e)},o(M,T),M.prototype.convertTo=function(e){return this.imod(e.ushln(this.shift))},M.prototype.convertFrom=function(e){var t=this.imod(e.mul(this.rinv));return t.red=null,t},M.prototype.imul=function(e,t){if(e.isZero()||t.isZero())return e.words[0]=0,e.length=1,e;var r=e.imul(t),o=r.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),n=r.isub(o).iushrn(this.shift),i=n;return n.cmp(this.m)>=0?i=n.isub(this.m):n.cmpn(0)<0&&(i=n.iadd(this.m)),i._forceRed(this)},M.prototype.mul=function(e,t){if(e.isZero()||t.isZero())return new i(0)._forceRed(this);var r=e.mul(t),o=r.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),n=r.isub(o).iushrn(this.shift),a=n;return n.cmp(this.m)>=0?a=n.isub(this.m):n.cmpn(0)<0&&(a=n.iadd(this.m)),a._forceRed(this)},M.prototype.invm=function(e){return this.imod(e._invmp(this.m).mul(this.r2))._forceRed(this)}}(t,e)})),a=i.BN;const s="logger/5.0.0-beta.133";let l=!1,u=!1;const c={debug:1,default:2,info:2,warn:3,error:4,off:5};let h=c.default,d=null;const f=function(){try{const e=[];if(["NFD","NFC","NFKD","NFKC"].forEach(t=>{try{if("test"!=="test".normalize(t))throw new Error("bad normalize")}catch(r){e.push(t)}}),e.length)throw new Error("missing "+e.join(", "));if(String.fromCharCode(233).normalize("NFD")!==String.fromCharCode(101,769))throw new Error("broken implementation")}catch(e){return e.message}return null}();class p{constructor(e){Object.defineProperty(this,"version",{enumerable:!0,value:e,writable:!1})}setLogLevel(e){const t=c[e];null!=t?h=t:this.warn("invalid log level - "+e)}_log(e,t){h>c[e]||console.log.apply(console,t)}debug(...e){this._log(p.levels.DEBUG,e)}info(...e){this._log(p.levels.INFO,e)}warn(...e){this._log(p.levels.WARNING,e)}makeError(e,t,r){if(u)return new Error("unknown error");t||(t=p.errors.UNKNOWN_ERROR),r||(r={});const o=[];Object.keys(r).forEach(e=>{try{o.push(e+"="+JSON.stringify(r[e]))}catch(t){o.push(e+"="+JSON.stringify(r[e].toString()))}}),o.push("version="+this.version);const n=e;o.length&&(e+=" ("+o.join(", ")+")");const i=new Error(e);return i.reason=n,i.code=t,Object.keys(r).forEach((function(e){i[e]=r[e]})),i}throwError(e,t,r){throw this.makeError(e,t,r)}throwArgumentError(e,t,r){return this.throwError(e,p.errors.INVALID_ARGUMENT,{argument:t,value:r})}checkNormalize(e){null==e&&(e="platform missing String.prototype.normalize"),f&&this.throwError("platform missing String.prototype.normalize",p.errors.UNSUPPORTED_OPERATION,{operation:"String.prototype.normalize",form:f})}checkSafeUint53(e,t){"number"==typeof e&&(null==t&&(t="value not safe"),(e<0||e>=9007199254740991)&&this.throwError(t,p.errors.NUMERIC_FAULT,{operation:"checkSafeInteger",fault:"out-of-safe-range",value:e}),e%1&&this.throwError(t,p.errors.NUMERIC_FAULT,{operation:"checkSafeInteger",fault:"non-integer",value:e}))}checkArgumentCount(e,t,r){r=r?": "+r:"",et&&this.throwError("too many arguments"+r,p.errors.UNEXPECTED_ARGUMENT,{count:e,expectedCount:t})}checkNew(e,t){e!==Object&&null!=e||this.throwError("missing new",p.errors.MISSING_NEW,{name:t.name})}checkAbstract(e,t){e===t?this.throwError("cannot instantiate abstract class "+JSON.stringify(t.name)+" directly; use a sub-class",p.errors.UNSUPPORTED_OPERATION,{name:e.name,operation:"new"}):e!==Object&&null!=e||this.throwError("missing new",p.errors.MISSING_NEW,{name:t.name})}static globalLogger(){return d||(d=new p(s)),d}static setCensorship(e,t){if(l){if(!e)return;this.globalLogger().throwError("error censorship permanent",p.errors.UNSUPPORTED_OPERATION,{operation:"setCensorship"})}u=!!e,l=!!t}}p.errors={UNKNOWN_ERROR:"UNKNOWN_ERROR",NOT_IMPLEMENTED:"NOT_IMPLEMENTED",UNSUPPORTED_OPERATION:"UNSUPPORTED_OPERATION",NETWORK_ERROR:"NETWORK_ERROR",SERVER_ERROR:"SERVER_ERROR",TIMEOUT:"TIMEOUT",BUFFER_OVERRUN:"BUFFER_OVERRUN",NUMERIC_FAULT:"NUMERIC_FAULT",MISSING_NEW:"MISSING_NEW",INVALID_ARGUMENT:"INVALID_ARGUMENT",MISSING_ARGUMENT:"MISSING_ARGUMENT",UNEXPECTED_ARGUMENT:"UNEXPECTED_ARGUMENT",CALL_EXCEPTION:"CALL_EXCEPTION",INSUFFICIENT_FUNDS:"INSUFFICIENT_FUNDS",NONCE_EXPIRED:"NONCE_EXPIRED",REPLACEMENT_UNDERPRICED:"REPLACEMENT_UNDERPRICED",UNPREDICTABLE_GAS_LIMIT:"UNPREDICTABLE_GAS_LIMIT"},p.levels={DEBUG:"DEBUG",INFO:"INFO",WARNING:"WARNING",ERROR:"ERROR",OFF:"OFF"};var m=Object.freeze({Logger:p});const g=new p("bytes/5.0.0-beta.134");function v(e){return!!e.toHexString}function b(e){return e.slice?e:(e.slice=function(){const t=Array.prototype.slice.call(arguments);return b(new Uint8Array(Array.prototype.slice.apply(e,t)))},e)}function y(e){return E(e)&&!(e.length%2)||A(e)}function A(e){if(null==e)return!1;if(e.constructor===Uint8Array)return!0;if("string"==typeof e)return!1;if(null==e.length)return!1;for(let t=0;t=256||r%1)return!1}return!0}function S(e,t){if(t||(t={}),"number"==typeof e){g.checkSafeUint53(e,"invalid arrayify value");const t=[];for(;e;)t.unshift(255&e),e/=256;return 0===t.length&&t.push(0),b(new Uint8Array(t))}if(t.allowMissingPrefix&&"string"==typeof e&&"0x"!==e.substring(0,2)&&(e="0x"+e),v(e)&&(e=e.toHexString()),E(e)){let r=e.substring(2);r.length%2&&("left"===t.hexPad?r="0x0"+r.substring(2):"right"===t.hexPad?r+="0":g.throwArgumentError("hex data is odd-length","value",e));const o=[];for(let e=0;eS(e)),r=t.reduce((e,t)=>e+t.length,0),o=new Uint8Array(r);return t.reduce((e,t)=>(o.set(t,e),e+t.length),0),b(o)}function M(e){let t=S(e);if(0===t.length)return t;let r=0;for(;rt&&g.throwArgumentError("value out of range","value",arguments[0]);const r=new Uint8Array(t);return r.set(e,t-e.length),b(r)}function E(e,t){return!("string"!=typeof e||!e.match(/^0x[0-9A-Fa-f]*$/))&&(!t||e.length===2+2*t)}const F="0123456789abcdef";function C(e,t){if(t||(t={}),"number"==typeof e){g.checkSafeUint53(e,"invalid hexlify value");let t="";for(;e;)t=F[15&e]+t,e=Math.floor(e/16);return t.length?(t.length%2&&(t="0"+t),"0x"+t):"0x00"}if(t.allowMissingPrefix&&"string"==typeof e&&"0x"!==e.substring(0,2)&&(e="0x"+e),v(e))return e.toHexString();if(E(e))return e.length%2&&("left"===t.hexPad?e="0x0"+e.substring(2):"right"===t.hexPad?e+="0":g.throwArgumentError("hex data is odd-length","value",e)),e.toLowerCase();if(A(e)){let t="0x";for(let r=0;r>4]+F[15&o]}return t}return g.throwArgumentError("invalid hexlify value","value",e)}function B(e){if("string"!=typeof e)e=C(e);else if(!E(e)||e.length%2)return null;return(e.length-2)/2}function J(e,t,r){return"string"!=typeof e?e=C(e):(!E(e)||e.length%2)&&g.throwArgumentError("invalid hexData","value",e),t=2+2*t,null!=r?"0x"+e.substring(t,2+2*r):"0x"+e.substring(t)}function L(e){const t=P(C(e,{hexPad:"left"}));return"0x"===t?"0x0":t}function P(e){"string"!=typeof e&&(e=C(e)),E(e)||g.throwArgumentError("invalid hex string","value",e),e=e.substring(2);let t=0;for(;t2*t+2&&g.throwArgumentError("value out of range","value",arguments[1]);e.length<2*t+2;)e="0x0"+e.substring(2);return e}function R(e){const t={r:"0x",s:"0x",_vs:"0x",recoveryParam:0,v:0};if(y(e)){const r=S(e);65!==r.length&&g.throwArgumentError("invalid signature string; must be 65 bytes","signature",e),t.r=C(r.slice(0,32)),t.s=C(r.slice(32,64)),t.v=r[64],27!==t.v&&28!==t.v&&(t.v=27+t.v%2),t.recoveryParam=t.v-27,t.recoveryParam&&(r[32]|=128),t._vs=C(r.slice(32,64))}else{if(t.r=e.r,t.s=e.s,t.v=e.v,t.recoveryParam=e.recoveryParam,t._vs=e._vs,null!=t.v&&27!=t.v&&28!=t.v&&(t.v=27+t.v%2),null==t.recoveryParam&&null!=t.v?t.recoveryParam=1-t.v%2:null!=t.recoveryParam&&null==t.v?t.v=27+t.recoveryParam:null!=t.recoveryParam&&null!=t.v&&t.v!==27+t.recoveryParam&&g.throwArgumentError("signature v mismatch recoveryParam","signature",e),null!=t.r&&(t.r=k(t.r,32)),null!=t.s&&(t.s=k(t.s,32)),null!=t._vs){t._vs=k(t._vs,32),t._vs.length>66&&g.throwArgumentError("signature _vs overflow","signature",e);const r=S(t._vs),o=r[0]>=128?1:0,n=27+t.recoveryParam;r[0]&=127;const i=C(r);null==t.s?t.s=i:t.s!==i&&g.throwArgumentError("signature v mismatch _vs","signature",e),null==t.v?t.v=n:t.v!==n&&g.throwArgumentError("signature v mismatch _vs","signature",e),null==o?t.recoveryParam=o:t.recoveryParam!==o&&g.throwArgumentError("signature recoveryParam mismatch _vs","signature",e)}if(null==t.v&&null==t.recoveryParam&&g.throwArgumentError("signature requires at least one of recoveryParam, v or _vs","signature",e),27!==t.v&&28!==t.v&&g.throwArgumentError("signature v not canonical","signature",e),(t.r.length>66||t.s.length>66)&&g.throwArgumentError("signature overflow r or s","signature",e),null==t._vs){const r=S(t.s);r[0]>=128&&g.throwArgumentError("signature s out of range","signature",e),t.recoveryParam&&(r[0]|=128),t._vs=C(r)}}return t}function D(e){return C(T([(e=R(e)).r,e.s,e.recoveryParam?"0x1c":"0x1b"]))}var O=Object.freeze({isBytesLike:y,isBytes:A,arrayify:S,concat:T,stripZeros:M,zeroPad:w,isHexString:E,hexlify:C,hexDataLength:B,hexDataSlice:J,hexConcat:function(e){let t="0x";return e.forEach(e=>{t+=C(e).substring(2)}),t},hexValue:L,hexStripZeros:P,hexZeroPad:k,splitSignature:R,joinSignature:D});const N=new p("bignumber/5.0.0-beta.135"),I={},X=9007199254740991;class _{constructor(e,t){N.checkNew(new.target,_),e!==I&&N.throwError("cannot call consturtor directly; use BigNumber.from",p.errors.UNSUPPORTED_OPERATION,{operation:"new (BigNumber)"}),this._hex=t,this._isBigNumber=!0,Object.freeze(this)}fromTwos(e){return x(G(this).fromTwos(e))}toTwos(e){return x(G(this).toTwos(e))}abs(){return"-"===this._hex[0]?_.from(this._hex.substring(1)):this}add(e){return x(G(this).add(G(e)))}sub(e){return x(G(this).sub(G(e)))}div(e){return _.from(e).isZero()&&U("division by zero","div"),x(G(this).div(G(e)))}mul(e){return x(G(this).mul(G(e)))}mod(e){return x(G(this).mod(G(e)))}pow(e){return x(G(this).pow(G(e)))}maskn(e){return x(G(this).maskn(e))}eq(e){return G(this).eq(G(e))}lt(e){return G(this).lt(G(e))}lte(e){return G(this).lte(G(e))}gt(e){return G(this).gt(G(e))}gte(e){return G(this).gte(G(e))}isZero(){return G(this).isZero()}toNumber(){try{return G(this).toNumber()}catch(e){U("overflow","toNumber",this.toString())}return null}toString(){return 0!==arguments.length&&N.throwError("bigNumber.toString does not accept parameters",p.errors.UNEXPECTED_ARGUMENT,{}),G(this).toString(10)}toHexString(){return this._hex}static from(e){return e instanceof _?e:"string"==typeof e?e.match(/-?0x[0-9a-f]+/i)?new _(I,H(e)):e.match(/^-?[0-9]+$/)?new _(I,H(new a(e))):N.throwArgumentError("invalid BigNumber string","value",e):"number"==typeof e?(e%1&&U("underflow","BigNumber.from",e),(e>=X||e<=-X)&&U("overflow","BigNumber.from",e),_.from(String(e))):"bigint"==typeof e?_.from(e.toString()):A(e)?_.from(C(e)):e._hex&&E(e._hex)?_.from(e._hex):e.toHexString&&"string"==typeof(e=e.toHexString())?_.from(e):N.throwArgumentError("invalid BigNumber value","value",e)}static isBigNumber(e){return!(!e||!e._isBigNumber)}}function H(e){if("string"!=typeof e)return H(e.toString(16));if("-"===e[0])return"-"===(e=e.substring(1))[0]&&N.throwArgumentError("invalid hex","value",e),"0x00"===(e=H(e))?e:"-"+e;if("0x"!==e.substring(0,2)&&(e="0x"+e),"0x"===e)return"0x00";for(e.length%2&&(e="0x0"+e.substring(2));e.length>4&&"0x00"===e.substring(0,4);)e="0x"+e.substring(4);return e}function x(e){return _.from(H(e))}function G(e){const t=_.from(e).toHexString();return"-"===t[0]?new a("-"+t.substring(3),16):new a(t.substring(2),16)}function U(e,t,r){const o={fault:e,operation:t};return null!=r&&(o.value=r),N.throwError(e,p.errors.NUMERIC_FAULT,o)}const z=new p("bignumber/5.0.0-beta.135"),V={},Z=_.from(0),j=_.from(-1);function K(e,t,r,o){const n={fault:t,operation:r};return void 0!==o&&(n.value=o),z.throwError(e,p.errors.NUMERIC_FAULT,n)}let Q="0";for(;Q.length<256;)Q+=Q;function q(e){if("number"!=typeof e)try{e=_.from(e).toNumber()}catch(e){}return"number"==typeof e&&e>=0&&e<=256&&!(e%1)?"1"+Q.substring(0,e):z.throwArgumentError("invalid decimal size","decimals",e)}function Y(e,t){null==t&&(t=0);const r=q(t),o=(e=_.from(e)).lt(Z);o&&(e=e.mul(j));let n=e.mod(r).toString();for(;n.length2&&z.throwArgumentError("too many decimal points","value",e);let i=n[0],a=n[1];for(i||(i="0"),a||(a="0"),a.length>r.length-1&&K("fractional component exceeds decimals","underflow","parseFixed");a.lengthnull==e[t]?o:(typeof e[t]!==r&&z.throwArgumentError("invalid fixed format ("+t+" not "+r+")","format."+t,e[t]),e[t]);t=n("signed","boolean",t),r=n("width","number",r),o=n("decimals","number",o)}return r%8&&z.throwArgumentError("invalid fixed format width (not byte aligned)","format.width",r),o>80&&z.throwArgumentError("invalid fixed format (decimals too large)","format.decimals",o),new $(V,t,r,o)}}class ee{constructor(e,t,r,o){z.checkNew(new.target,ee),this.format=o,this._hex=t,this._value=r,this._isFixedNumber=!0,Object.freeze(this)}_checkFormat(e){this.format.name!==e.format.name&&z.throwArgumentError("incompatible format; use fixedNumber.toFormat","other",e)}addUnsafe(e){this._checkFormat(e);const t=W(this._value,this.format.decimals),r=W(e._value,e.format.decimals);return ee.fromValue(t.add(r),this.format.decimals,this.format)}subUnsafe(e){this._checkFormat(e);const t=W(this._value,this.format.decimals),r=W(e._value,e.format.decimals);return ee.fromValue(t.sub(r),this.format.decimals,this.format)}mulUnsafe(e){this._checkFormat(e);const t=W(this._value,this.format.decimals),r=W(e._value,e.format.decimals);return ee.fromValue(t.mul(r).div(this.format._multiplier),this.format.decimals,this.format)}divUnsafe(e){this._checkFormat(e);const t=W(this._value,this.format.decimals),r=W(e._value,e.format.decimals);return ee.fromValue(t.mul(this.format._multiplier).div(r),this.format.decimals,this.format)}round(e){null==e&&(e=0),(e<0||e>80||e%1)&&z.throwArgumentError("invalid decimal cound","decimals",e);let t=this.toString().split(".");if(t[1].length<=e)return this;const r="0."+Q.substring(0,e)+"5";return t=this.addUnsafe(ee.fromString(r,this.format))._value.split("."),ee.fromString(t[0]+"."+t[1].substring(0,e))}toString(){return this._value}toHexString(e){if(null==e)return this._hex;return e%8&&z.throwArgumentError("invalid byte width","width",e),k(_.from(this._hex).fromTwos(this.format.width).toTwos(e).toHexString(),e/8)}toUnsafeFloat(){return parseFloat(this.toString())}toFormat(e){return ee.fromString(this._value,e)}static fromValue(e,t,r){return null!=r||null==t||function(e){return null!=e&&(_.isBigNumber(e)||"number"==typeof e&&e%1==0||"string"==typeof e&&!!e.match(/^-?[0-9]+$/)||E(e)||"bigint"==typeof e||A(e))}(t)||(r=t,t=null),null==t&&(t=0),null==r&&(r="fixed"),ee.fromString(Y(e,t),$.from(r))}static fromString(e,t){null==t&&(t="fixed");const r=$.from(t),o=W(e,r.decimals);!r.signed&&o.lt(Z)&&K("unsigned value cannot be negative","overflow","value",e);let n=null;r.signed?n=o.toTwos(r.width).toHexString():(n=o.toHexString(),n=k(n,r.width/8));const i=Y(o,r.decimals);return new ee(V,n,i,r)}static fromBytes(e,t){null==t&&(t="fixed");const r=$.from(t);if(S(e).length>r.width/8)throw new Error("overflow");let o=_.from(e);r.signed&&(o=o.fromTwos(r.width));const n=o.toTwos((r.signed?0:1)+r.width).toHexString(),i=Y(o,r.decimals);return new ee(V,n,i,r)}static from(e,t){if("string"==typeof e)return ee.fromString(e,t);if(A(e))return ee.fromBytes(e,t);try{return ee.fromValue(e,0,t)}catch(e){if(e.code!==p.errors.INVALID_ARGUMENT)throw e}return z.throwArgumentError("invalid FixedNumber value","value",e)}static isFixedNumber(e){return!(!e||!e._isFixedNumber)}}const te=new p("properties/5.0.0-beta.136");function re(e,t,r){Object.defineProperty(e,t,{enumerable:!0,value:r,writable:!1})}function oe(e,t){for(let r=0;r<32;r++){if(e[t])return e[t];if(!e.prototype||"object"!=typeof e.prototype)break;e=Object.getPrototypeOf(e.prototype).constructor}return null}function ne(e){const t=Object.keys(e).map(t=>{const r=e[t];return r instanceof Promise?r.then(e=>({key:t,value:e})):Promise.resolve({key:t,value:r})});return Promise.all(t).then(e=>{return e.reduce((e,t)=>(e[t.key]=t.value,e),{})})}function ie(e,t){e&&"object"==typeof e||te.throwArgumentError("invalid object","object",e),Object.keys(e).forEach(r=>{t[r]||te.throwArgumentError("invalid object key - "+r,"transaction:"+r,e)})}function ae(e){const t={};for(const r in e)t[r]=e[r];return t}const se={bigint:!0,boolean:!0,number:!0,string:!0};function le(e){if(null==e||se[typeof e])return e;if(Array.isArray(e))return Object.freeze(e.map(e=>le(e)));if("object"==typeof e){if(Object.isFrozen(e))return e;const t={};for(const r in e){const o=e[r];void 0!==o&&re(t,r,le(o))}return t}if("function"==typeof e)return e;throw new Error("Cannot deepCopy "+typeof e)}class ue{constructor(e){for(const t in e)this[t]=le(e[t])}}const ce="abi/5.0.0-beta.144",he=new p(ce),de={};let fe={calldata:!0,memory:!0,storage:!0};function pe(e,t){if("bytes"===e||"string"===e){if(fe[t])return!0}else if("address"===e&&"payable"===t)return!0;return(fe[t]||"payable"===t)&&he.throwArgumentError("invalid modifier","name",t),!1}function me(e,t){for(let r in t)re(e,r,t[r])}const ge=Object.freeze({sighash:"sighash",minimal:"minimal",full:"full",json:"json"}),ve=new RegExp(/^(.*)\[([0-9]*)\]$/);class be{constructor(e,t){if(e!==de)throw new Error("use fromString");me(this,t);let r=this.type.match(ve);me(this,r?{arrayLength:parseInt(r[2]||"-1"),arrayChildren:be.fromObject({type:r[1],components:this.components}),baseType:"array"}:{arrayLength:null,arrayChildren:null,baseType:null!=this.components?"tuple":this.type}),this._isParamType=!0,Object.freeze(this)}format(e){if(e||(e=ge.sighash),ge[e]||he.throwArgumentError("invalid format type","format",e),e===ge.json){let t={type:"tuple"===this.baseType?"tuple":this.type,name:this.name||void 0};return"boolean"==typeof this.indexed&&(t.indexed=this.indexed),this.components&&(t.components=this.components.map(t=>JSON.parse(t.format(e)))),JSON.stringify(t)}let t="";return"array"===this.baseType?(t+=this.arrayChildren.format(e),t+="["+(this.arrayLength<0?"":String(this.arrayLength))+"]"):"tuple"===this.baseType?(e!==ge.sighash&&(t+=this.type),t+="("+this.components.map(t=>t.format(e)).join(e===ge.full?", ":",")+")"):t+=this.type,e!==ge.sighash&&(!0===this.indexed&&(t+=" indexed"),e===ge.full&&this.name&&(t+=" "+this.name)),t}static from(e,t){return"string"==typeof e?be.fromString(e,t):be.fromObject(e)}static fromObject(e){return be.isParamType(e)?e:new be(de,{name:e.name||null,type:Ce(e.type),indexed:null==e.indexed?null:!!e.indexed,components:e.components?e.components.map(be.fromObject):null})}static fromString(e,t){return function(e){return be.fromObject({name:e.name,type:e.type,indexed:e.indexed,components:e.components})}(function(e,t){let r=e;function o(e){throw new Error("unexpected character '"+r[e]+"' at position "+e+" in '"+r+"'")}function n(e){let r={type:"",name:"",parent:e,state:{allowType:!0}};return t&&(r.indexed=!1),r}e=e.replace(/\s/g," ");let i={type:"",name:"",state:{allowType:!0}},a=i;for(let r=0;rbe.fromString(e,t))}class Ae{constructor(e,t){if(e!==de)throw new Error("use a static from method");me(this,t),this._isFragment=!0,Object.freeze(this)}static from(e){return Ae.isFragment(e)?e:"string"==typeof e?Ae.fromString(e):Ae.fromObject(e)}static fromObject(e){return Ae.isFragment(e)?e:"function"===e.type?Fe.fromObject(e):"event"===e.type?Se.fromObject(e):"constructor"===e.type?Ee.fromObject(e):"fallback"===e.type?null:he.throwArgumentError("invalid fragment object","value",e)}static fromString(e){if("event"===(e=(e=(e=e.replace(/\s/g," ")).replace(/\(/g," (").replace(/\)/g,") ").replace(/\s+/g," ")).trim()).split(" ")[0])return Se.fromString(e.substring(5).trim());if("function"===e.split(" ")[0])return Fe.fromString(e.substring(8).trim());if("constructor"===e.split("(")[0].trim())return Ee.fromString(e.trim());throw new Error("unknown fragment")}static isFragment(e){return!(!e||!e._isFragment)}}class Se extends Ae{format(e){if(e||(e=ge.sighash),ge[e]||he.throwArgumentError("invalid format type","format",e),e===ge.json)return JSON.stringify({type:"event",anonymous:this.anonymous,name:this.name,inputs:this.inputs.map(t=>JSON.parse(t.format(e)))});let t="";return e!==ge.sighash&&(t+="event "),t+=this.name+"("+this.inputs.map(t=>t.format(e)).join(e===ge.full?", ":",")+") ",e!==ge.sighash&&this.anonymous&&(t+="anonymous "),t.trim()}static from(e){return"string"==typeof e?Se.fromString(e):Se.fromObject(e)}static fromObject(e){if(Se.isEventFragment(e))return e;if("event"!==e.type)throw new Error("invalid event object - "+e.type);return new Se(de,{name:Je(e.name),anonymous:e.anonymous,inputs:e.inputs?e.inputs.map(be.fromObject):[],type:"event"})}static fromString(e){let t=e.match(Le);if(!t)throw new Error("invalid event: "+e);let r=!1;return t[3].split(" ").forEach(e=>{switch(e.trim()){case"anonymous":r=!0;break;case"":break;default:he.warn("unknown modifier: "+e)}}),Se.fromObject({name:t[1].trim(),anonymous:r,inputs:ye(t[2],!0),type:"event"})}static isEventFragment(e){return e&&e._isFragment&&"event"===e.type}}function Te(e,t){t.gas=null;let r=e.split("@");if(1!==r.length){if(r.length>2)throw new Error("invalid signature");if(!r[1].match(/^[0-9]+$/))throw new Error("invalid signature gas");return t.gas=_.from(r[1]),r[0]}return e}function Me(e,t){t.constant=!1,t.payable=!1,t.stateMutability="nonpayable",e.split(" ").forEach(e=>{switch(e.trim()){case"constant":t.constant=!0;break;case"payable":t.payable=!0,t.stateMutability="payable";break;case"pure":t.constant=!0,t.stateMutability="pure";break;case"view":t.constant=!0,t.stateMutability="view";break;case"external":case"public":case"":break;default:console.log("unknown modifier: "+e)}})}function we(e){let t={constant:!1,payable:!0,stateMutability:"payable"};if(null!=e.stateMutability){if(t.stateMutability=e.stateMutability,t.constant="view"===t.stateMutability||"pure"===t.stateMutability,null!=e.constant&&!!e.constant!==t.constant)throw new Error("cannot have constant function with mutability "+t.stateMutability);if(t.payable="payable"===t.stateMutability,null!=e.payable&&!!e.payable!==t.payable)throw new Error("cannot have payable function with mutability "+t.stateMutability)}else if(null!=e.payable){if(t.payable=!!e.payable,t.stateMutability=t.payable?"payable":"nonpayable",t.constant=!t.payable,null!=e.constant&&e.constant!==t.constant)throw new Error("cannot have constant payable function")}else null!=e.constant&&(t.constant=!!e.constant,t.payable=!t.constant,t.stateMutability=t.constant?"view":"payable");return t}class Ee extends Ae{format(e){if(e||(e=ge.sighash),ge[e]||he.throwArgumentError("invalid format type","format",e),e===ge.json)return JSON.stringify({type:"constructor",stateMutability:"nonpayable"!==this.stateMutability?this.stateMutability:void 0,payble:this.payable,gas:this.gas?this.gas.toNumber():void 0,inputs:this.inputs.map(t=>JSON.parse(t.format(e)))});e===ge.sighash&&he.throwError("cannot format a constructor for sighash",p.errors.UNSUPPORTED_OPERATION,{operation:"format(sighash)"});let t="constructor("+this.inputs.map(t=>t.format(e)).join(e===ge.full?", ":",")+") ";return this.stateMutability&&"nonpayable"!==this.stateMutability&&(t+=this.stateMutability+" "),t.trim()}static from(e){return"string"==typeof e?Ee.fromString(e):Ee.fromObject(e)}static fromObject(e){if(Ee.isConstructorFragment(e))return e;if("constructor"!==e.type)throw new Error("invalid constructor object - "+e.type);let t=we(e);if(t.constant)throw new Error("constructor cannot be constant");return new Ee(de,{name:null,type:e.type,inputs:e.inputs?e.inputs.map(be.fromObject):[],payable:t.payable,gas:e.gas?_.from(e.gas):null})}static fromString(e){let t={type:"constructor"},r=(e=Te(e,t)).match(Le);if(!r)throw new Error("invalid constructor: "+e);if("constructor"!==r[1].trim())throw new Error("invalid constructor");return t.inputs=ye(r[2].trim(),!1),Me(r[3].trim(),t),Ee.fromObject(t)}static isConstructorFragment(e){return e&&e._isFragment&&"constructor"===e.type}}class Fe extends Ee{format(e){if(e||(e=ge.sighash),ge[e]||he.throwArgumentError("invalid format type","format",e),e===ge.json)return JSON.stringify({type:"function",name:this.name,constant:this.constant,stateMutability:"nonpayable"!==this.stateMutability?this.stateMutability:void 0,payble:this.payable,gas:this.gas?this.gas.toNumber():void 0,inputs:this.inputs.map(t=>JSON.parse(t.format(e))),ouputs:this.outputs.map(t=>JSON.parse(t.format(e)))});let t="";return e!==ge.sighash&&(t+="function "),t+=this.name+"("+this.inputs.map(t=>t.format(e)).join(e===ge.full?", ":",")+") ",e!==ge.sighash&&(this.stateMutability?"nonpayable"!==this.stateMutability&&(t+=this.stateMutability+" "):this.constant&&(t+="view "),this.outputs&&this.outputs.length&&(t+="returns ("+this.outputs.map(t=>t.format(e)).join(", ")+") "),null!=this.gas&&(t+="@"+this.gas.toString()+" ")),t.trim()}static from(e){return"string"==typeof e?Fe.fromString(e):Fe.fromObject(e)}static fromObject(e){if(Fe.isFunctionFragment(e))return e;if("function"!==e.type)throw new Error("invalid function object - "+e.type);let t=we(e);return new Fe(de,{type:e.type,name:Je(e.name),constant:t.constant,inputs:e.inputs?e.inputs.map(be.fromObject):[],outputs:e.outputs?e.outputs.map(be.fromObject):[],payable:t.payable,stateMutability:t.stateMutability,gas:e.gas?_.from(e.gas):null})}static fromString(e){let t={type:"function"},r=(e=Te(e,t)).split(" returns ");if(r.length>2)throw new Error("invalid function");let o=r[0].match(Le);if(!o)throw new Error("invalid signature");if(t.name=o[1].trim(),!t.name.match(Be))throw new Error("invalid identifier: '"+t.name+"'");if(t.inputs=ye(o[2],!1),Me(o[3].trim(),t),r.length>1){let e=r[1].match(Le);if(""!=e[1].trim()||""!=e[3].trim())throw new Error("unexpected tokens");t.outputs=ye(e[2],!1)}else t.outputs=[];return Fe.fromObject(t)}static isFunctionFragment(e){return e&&e._isFragment&&"function"===e.type}}function Ce(e){return e.match(/^uint($|[^1-9])/)?e="uint256"+e.substring(4):e.match(/^int($|[^1-9])/)&&(e="int256"+e.substring(3)),e}const Be=new RegExp("^[A-Za-z_][A-Za-z0-9_]*$");function Je(e){if(!e||!e.match(Be))throw new Error("invalid identifier: '"+e+"'");return e}const Le=new RegExp("^([^)(]*)\\((.*)\\)([^)(]*)$");const Pe=new p(ce);class ke{constructor(e,t,r,o){this.name=e,this.type=t,this.localName=r,this.dynamic=o}_throwError(e,t){Pe.throwArgumentError(e,this.localName,t)}}class Re{constructor(e){re(this,"wordSize",e||32),this._data=S([]),this._padding=new Uint8Array(e)}get data(){return C(this._data)}get length(){return this._data.length}_writeData(e){return this._data=T([this._data,e]),e.length}writeBytes(e){let t=S(e);return t.length%this.wordSize&&(t=T([t,this._padding.slice(t.length%this.wordSize)])),this._writeData(t)}_getValue(e){let t=S(_.from(e));return t.length>this.wordSize&&Pe.throwError("value out-of-bounds",p.errors.BUFFER_OVERRUN,{length:this.wordSize,offset:t.length}),t.length%this.wordSize&&(t=T([this._padding.slice(t.length%this.wordSize),t])),t}writeValue(e){return this._writeData(this._getValue(e))}writeUpdatableValue(){let e=this.length;return this.writeValue(0),t=>{this._data.set(this._getValue(t),e)}}}class De{constructor(e,t,r){re(this,"_data",S(e)),re(this,"wordSize",t||32),re(this,"_coerceFunc",r),this._offset=0}get data(){return C(this._data)}get consumed(){return this._offset}static coerce(e,t){let r=e.match("^u?int([0-9]+)$");return r&&parseInt(r[1])<=48&&(t=t.toNumber()),t}coerce(e,t){return this._coerceFunc?this._coerceFunc(e,t):De.coerce(e,t)}_peekBytes(e,t){let r=Math.ceil(t/this.wordSize)*this.wordSize;return this._offset+r>this._data.length&&Pe.throwError("data out-of-bounds",p.errors.BUFFER_OVERRUN,{length:this._data.length,offset:this._offset+r}),this._data.slice(this._offset,this._offset+r)}subReader(e){return new De(this._data.slice(this._offset+e),this.wordSize,this._coerceFunc)}readBytes(e){let t=this._peekBytes(0,e);return this._offset+=t.length,t.slice(0,e)}readValue(){return _.from(this.readBytes(this.wordSize))}}var Oe=r((function(t){ /** * [js-sha3]{@link https://github.com/emn178/js-sha3} * * @version 0.5.7 * @author Chen, Yi-Cyuan [emn178@gmail.com] * @copyright Chen, Yi-Cyuan 2015-2016 * @license MIT */ !function(){var r="object"==typeof window?window:{};!r.JS_SHA3_NO_NODE_JS&&"object"==typeof process&&process.versions&&process.versions.node&&(r=e);for(var o=!r.JS_SHA3_NO_COMMON_JS&&t.exports,n="0123456789abcdef".split(""),i=[0,8,16,24],a=[1,0,32898,0,32906,2147483648,2147516416,2147483648,32907,0,2147483649,0,2147516545,2147483648,32777,2147483648,138,0,136,0,2147516425,0,2147483658,0,2147516555,0,139,2147483648,32905,2147483648,32771,2147483648,32770,2147483648,128,2147483648,32778,0,2147483658,2147483648,2147516545,2147483648,32896,2147483648,2147483649,0,2147516424,2147483648],s=[224,256,384,512],l=["hex","buffer","arrayBuffer","array"],u=function(e,t,r){return function(o){return new A(e,t,e).update(o)[r]()}},c=function(e,t,r){return function(o,n){return new A(e,t,n).update(o)[r]()}},h=function(e,t){var r=u(e,t,"hex");r.create=function(){return new A(e,t,e)},r.update=function(e){return r.create().update(e)};for(var o=0;o>5,this.byteCount=this.blockCount<<2,this.outputBlocks=r>>5,this.extraBytes=(31&r)>>3;for(var o=0;o<50;++o)this.s[o]=0}A.prototype.update=function(e){var t="string"!=typeof e;t&&e.constructor===ArrayBuffer&&(e=new Uint8Array(e));for(var r,o,n=e.length,a=this.blocks,s=this.byteCount,l=this.blockCount,u=0,c=this.s;u>2]|=e[u]<>2]|=o<>2]|=(192|o>>6)<>2]|=(128|63&o)<=57344?(a[r>>2]|=(224|o>>12)<>2]|=(128|o>>6&63)<>2]|=(128|63&o)<>2]|=(240|o>>18)<>2]|=(128|o>>12&63)<>2]|=(128|o>>6&63)<>2]|=(128|63&o)<=s){for(this.start=r-s,this.block=a[l],r=0;r>2]|=this.padding[3&t],this.lastByteIndex===this.byteCount)for(e[0]=e[r],t=1;t>4&15]+n[15&e]+n[e>>12&15]+n[e>>8&15]+n[e>>20&15]+n[e>>16&15]+n[e>>28&15]+n[e>>24&15];s%t==0&&(S(r),a=0)}return i&&(e=r[a],i>0&&(l+=n[e>>4&15]+n[15&e]),i>1&&(l+=n[e>>12&15]+n[e>>8&15]),i>2&&(l+=n[e>>20&15]+n[e>>16&15])),l},A.prototype.arrayBuffer=function(){this.finalize();var e,t=this.blockCount,r=this.s,o=this.outputBlocks,n=this.extraBytes,i=0,a=0,s=this.outputBits>>3;e=n?new ArrayBuffer(o+1<<2):new ArrayBuffer(s);for(var l=new Uint32Array(e);a>8&255,l[e+2]=t>>16&255,l[e+3]=t>>24&255;s%r==0&&S(o)}return i&&(e=s<<2,t=o[a],i>0&&(l[e]=255&t),i>1&&(l[e+1]=t>>8&255),i>2&&(l[e+2]=t>>16&255)),l};var S=function(e){var t,r,o,n,i,s,l,u,c,h,d,f,p,m,g,v,b,y,A,S,T,M,w,E,F,C,B,J,L,P,k,R,D,O,N,I,X,_,H,x,G,U,z,V,Z,j,K,Q,q,Y,W,$,ee,te,re,oe,ne,ie,ae,se,le,ue,ce;for(o=0;o<48;o+=2)n=e[0]^e[10]^e[20]^e[30]^e[40],i=e[1]^e[11]^e[21]^e[31]^e[41],s=e[2]^e[12]^e[22]^e[32]^e[42],l=e[3]^e[13]^e[23]^e[33]^e[43],u=e[4]^e[14]^e[24]^e[34]^e[44],c=e[5]^e[15]^e[25]^e[35]^e[45],h=e[6]^e[16]^e[26]^e[36]^e[46],d=e[7]^e[17]^e[27]^e[37]^e[47],t=(f=e[8]^e[18]^e[28]^e[38]^e[48])^(s<<1|l>>>31),r=(p=e[9]^e[19]^e[29]^e[39]^e[49])^(l<<1|s>>>31),e[0]^=t,e[1]^=r,e[10]^=t,e[11]^=r,e[20]^=t,e[21]^=r,e[30]^=t,e[31]^=r,e[40]^=t,e[41]^=r,t=n^(u<<1|c>>>31),r=i^(c<<1|u>>>31),e[2]^=t,e[3]^=r,e[12]^=t,e[13]^=r,e[22]^=t,e[23]^=r,e[32]^=t,e[33]^=r,e[42]^=t,e[43]^=r,t=s^(h<<1|d>>>31),r=l^(d<<1|h>>>31),e[4]^=t,e[5]^=r,e[14]^=t,e[15]^=r,e[24]^=t,e[25]^=r,e[34]^=t,e[35]^=r,e[44]^=t,e[45]^=r,t=u^(f<<1|p>>>31),r=c^(p<<1|f>>>31),e[6]^=t,e[7]^=r,e[16]^=t,e[17]^=r,e[26]^=t,e[27]^=r,e[36]^=t,e[37]^=r,e[46]^=t,e[47]^=r,t=h^(n<<1|i>>>31),r=d^(i<<1|n>>>31),e[8]^=t,e[9]^=r,e[18]^=t,e[19]^=r,e[28]^=t,e[29]^=r,e[38]^=t,e[39]^=r,e[48]^=t,e[49]^=r,m=e[0],g=e[1],j=e[11]<<4|e[10]>>>28,K=e[10]<<4|e[11]>>>28,J=e[20]<<3|e[21]>>>29,L=e[21]<<3|e[20]>>>29,se=e[31]<<9|e[30]>>>23,le=e[30]<<9|e[31]>>>23,U=e[40]<<18|e[41]>>>14,z=e[41]<<18|e[40]>>>14,O=e[2]<<1|e[3]>>>31,N=e[3]<<1|e[2]>>>31,v=e[13]<<12|e[12]>>>20,b=e[12]<<12|e[13]>>>20,Q=e[22]<<10|e[23]>>>22,q=e[23]<<10|e[22]>>>22,P=e[33]<<13|e[32]>>>19,k=e[32]<<13|e[33]>>>19,ue=e[42]<<2|e[43]>>>30,ce=e[43]<<2|e[42]>>>30,te=e[5]<<30|e[4]>>>2,re=e[4]<<30|e[5]>>>2,I=e[14]<<6|e[15]>>>26,X=e[15]<<6|e[14]>>>26,y=e[25]<<11|e[24]>>>21,A=e[24]<<11|e[25]>>>21,Y=e[34]<<15|e[35]>>>17,W=e[35]<<15|e[34]>>>17,R=e[45]<<29|e[44]>>>3,D=e[44]<<29|e[45]>>>3,E=e[6]<<28|e[7]>>>4,F=e[7]<<28|e[6]>>>4,oe=e[17]<<23|e[16]>>>9,ne=e[16]<<23|e[17]>>>9,_=e[26]<<25|e[27]>>>7,H=e[27]<<25|e[26]>>>7,S=e[36]<<21|e[37]>>>11,T=e[37]<<21|e[36]>>>11,$=e[47]<<24|e[46]>>>8,ee=e[46]<<24|e[47]>>>8,V=e[8]<<27|e[9]>>>5,Z=e[9]<<27|e[8]>>>5,C=e[18]<<20|e[19]>>>12,B=e[19]<<20|e[18]>>>12,ie=e[29]<<7|e[28]>>>25,ae=e[28]<<7|e[29]>>>25,x=e[38]<<8|e[39]>>>24,G=e[39]<<8|e[38]>>>24,M=e[48]<<14|e[49]>>>18,w=e[49]<<14|e[48]>>>18,e[0]=m^~v&y,e[1]=g^~b&A,e[10]=E^~C&J,e[11]=F^~B&L,e[20]=O^~I&_,e[21]=N^~X&H,e[30]=V^~j&Q,e[31]=Z^~K&q,e[40]=te^~oe&ie,e[41]=re^~ne&ae,e[2]=v^~y&S,e[3]=b^~A&T,e[12]=C^~J&P,e[13]=B^~L&k,e[22]=I^~_&x,e[23]=X^~H&G,e[32]=j^~Q&Y,e[33]=K^~q&W,e[42]=oe^~ie&se,e[43]=ne^~ae&le,e[4]=y^~S&M,e[5]=A^~T&w,e[14]=J^~P&R,e[15]=L^~k&D,e[24]=_^~x&U,e[25]=H^~G&z,e[34]=Q^~Y&$,e[35]=q^~W&ee,e[44]=ie^~se&ue,e[45]=ae^~le&ce,e[6]=S^~M&m,e[7]=T^~w&g,e[16]=P^~R&E,e[17]=k^~D&F,e[26]=x^~U&O,e[27]=G^~z&N,e[36]=Y^~$&V,e[37]=W^~ee&Z,e[46]=se^~ue&te,e[47]=le^~ce&re,e[8]=M^~m&v,e[9]=w^~g&b,e[18]=R^~E&C,e[19]=D^~F&B,e[28]=U^~O&I,e[29]=z^~N&X,e[38]=$^~V&j,e[39]=ee^~Z&K,e[48]=ue^~te&oe,e[49]=ce^~re&ne,e[0]^=a[o],e[1]^=a[o+1]};if(o)t.exports=f;else for(m=0;m>=8;return t}function Xe(e,t,r){let o=0;for(let n=0;nt+1+o)throw new Error("invalid rlp")}return{consumed:1+o,result:n}}function xe(e,t){if(0===e.length)throw new Error("invalid rlp data");if(e[t]>=248){const r=e[t]-247;if(t+1+r>e.length)throw new Error("too short");const o=Xe(e,t+1,r);if(t+1+r+o>e.length)throw new Error("to short");return He(e,t,t+1+r,r+o)}if(e[t]>=192){const r=e[t]-192;if(t+1+r>e.length)throw new Error("invalid rlp data");return He(e,t,t+1,r)}if(e[t]>=184){const r=e[t]-183;if(t+1+r>e.length)throw new Error("invalid rlp data");const o=Xe(e,t+1,r);if(t+1+r+o>e.length)throw new Error("invalid rlp data");return{consumed:1+r+o,result:C(e.slice(t+1+r,t+1+r+o))}}if(e[t]>=128){const r=e[t]-128;if(t+1+r>e.length)throw new Error("invalid rlp data");return{consumed:1+r,result:C(e.slice(t+1,t+1+r))}}return{consumed:1,result:C(e[t])}}function Ge(e){const t=S(e),r=xe(t,0);if(r.consumed!==t.length)throw new Error("invalid rlp data");return r.result}var Ue=Object.freeze({encode:_e,decode:Ge});const ze=new p("address/5.0.0-beta.134");function Ve(e){E(e,20)||ze.throwArgumentError("invalid address","address",e);const t=(e=e.toLowerCase()).substring(2).split(""),r=new Uint8Array(40);for(let e=0;e<40;e++)r[e]=t[e].charCodeAt(0);const o=S(Ne(r));for(let e=0;e<40;e+=2)o[e>>1]>>4>=8&&(t[e]=t[e].toUpperCase()),(15&o[e>>1])>=8&&(t[e+1]=t[e+1].toUpperCase());return"0x"+t.join("")}const Ze={};for(let e=0;e<10;e++)Ze[String(e)]=String(e);for(let e=0;e<26;e++)Ze[String.fromCharCode(65+e)]=String(10+e);const je=Math.floor((Ke=9007199254740991,Math.log10?Math.log10(Ke):Math.log(Ke)/Math.LN10));var Ke;function Qe(e){let t=(e=(e=e.toUpperCase()).substring(4)+e.substring(0,2)+"00").split("").map(e=>Ze[e]).join("");for(;t.length>=je;){let e=t.substring(0,je);t=parseInt(e,10)%97+t.substring(e.length)}let r=String(98-parseInt(t,10)%97);for(;r.length<2;)r="0"+r;return r}function qe(e){let t=null;if("string"!=typeof e&&ze.throwArgumentError("invalid address","address",e),e.match(/^(0x)?[0-9a-fA-F]{40}$/))"0x"!==e.substring(0,2)&&(e="0x"+e),t=Ve(e),e.match(/([A-F].*[a-f])|([a-f].*[A-F])/)&&t!==e&&ze.throwArgumentError("bad address checksum","address",e);else if(e.match(/^XE[0-9]{2}[0-9A-Za-z]{30,31}$/)){for(e.substring(2,4)!==Qe(e)&&ze.throwArgumentError("bad icap checksum","address",e),t=new a(e.substring(4),36).toString(16);t.length<40;)t="0"+t;t=Ve("0x"+t)}else ze.throwArgumentError("invalid address","address",e);return t}function Ye(e){let t=null;try{t=qe(e.from)}catch(t){ze.throwArgumentError("missing from address","transaction",e)}return qe(J(Ne(_e([t,M(S(_.from(e.nonce).toHexString()))])),12))}class We extends ke{constructor(e){super("address","address",e,!1)}encode(e,t){try{qe(t)}catch(e){this._throwError(e.message,t)}return e.writeValue(t)}decode(e){return qe(k(e.readValue().toHexString(),20))}}class $e extends ke{constructor(e){super(e.name,e.type,void 0,e.dynamic),this.coder=e}encode(e,t){return this.coder.encode(e,t)}decode(e){return this.coder.decode(e)}}const et=new p(ce);function tt(e,t,r){if(Array.isArray(r));else if(r&&"object"==typeof r){let e=[];t.forEach((function(t){e.push(r[t.localName])})),r=e}else et.throwArgumentError("invalid tuple value","tuple",r);t.length!==r.length&&et.throwArgumentError("types/value length mismatch","tuple",r);let o=new Re(e.wordSize),n=new Re(e.wordSize),i=[];t.forEach((e,t)=>{let a=r[t];if(e.dynamic){let t=n.length;e.encode(n,a);let r=o.writeUpdatableValue();i.push(e=>{r(e+t)})}else e.encode(o,a)}),i.forEach(e=>{e(o.length)});let a=e.writeBytes(o.data);return a+=e.writeBytes(n.data),a}function rt(e,t){let r=[],o=e.subReader(0),n=0;return t.forEach(t=>{let i=null;if(t.dynamic){let r=e.readValue(),a=o.subReader(r.toNumber());i=t.decode(a),n+=a.consumed}else i=t.decode(e);null!=i&&r.push(i)}),e.readBytes(n),t.forEach((e,t)=>{let o=e.localName;o&&("length"===o&&(o="_length"),null==r[o]&&(r[o]=r[t]))}),r}class ot extends ke{constructor(e,t,r){super("array",e.type+"["+(t>=0?t:"")+"]",r,-1===t||e.dynamic),this.coder=e,this.length=t}encode(e,t){Array.isArray(t)||this._throwError("expected array value",t);let r=this.length;-1===r&&(r=t.length,e.writeValue(t.length)),et.checkArgumentCount(r,t.length,"coder array"+(this.localName?" "+this.localName:""));let o=[];for(let e=0;e>7==0){r.push(n);continue}let i=null,a=null;if(192==(224&n))i=1,a=127;else if(224==(240&n))i=2,a=2047;else{if(240!=(248&n)){if(!t){if(128==(192&n))throw new Error("invalid utf8 byte sequence; unexpected continuation byte");throw new Error("invalid utf8 byte sequence; invalid prefix")}continue}i=3,a=65535}if(o+i>e.length){if(!t)throw new Error("invalid utf8 byte sequence; too short");for(;o>6==2;o++);continue}let s=n&(1<<8-i-1)-1;for(let t=0;t1114111){if(!t)throw new Error("invalid utf8 byte sequence; out-of-range")}else if(s>=55296&&s<=57343){if(!t)throw new Error("invalid utf8 byte sequence; utf-16 surrogate")}else r.push(s);else if(!t)throw new Error("invalid utf8 byte sequence; invalid continuation byte")}return r}function Tt(e,t=At.current){t!=At.current&&(yt.checkNormalize(),e=e.normalize(t));let r=[];for(let t=0;t>6|192),r.push(63&o|128);else if(55296==(64512&o)){t++;const n=e.charCodeAt(t);if(t>=e.length||56320!=(64512&n))throw new Error("invalid utf-8 string");const i=65536+((1023&o)<<10)+(1023&n);r.push(i>>18|240),r.push(i>>12&63|128),r.push(i>>6&63|128),r.push(63&i|128)}else r.push(o>>12|224),r.push(o>>6&63|128),r.push(63&o|128)}return S(r)}function Mt(e){const t="0000"+e.toString(16);return"\\u"+t.substring(t.length-4)}function wt(e){return e.map(e=>e<=65535?String.fromCharCode(e):(e-=65536,String.fromCharCode(55296+(e>>10&1023),56320+(1023&e)))).join("")}function Et(e,t){return wt(St(e,t))}function Ft(e,t=At.current){return St(Tt(e,t))}function Ct(e,t){t||(t=function(e){return[parseInt(e,16)]});let r=0,o={};return e.split(",").forEach(e=>{let n=e.split(":");r+=parseInt(n[0],16),o[r]=t(n[1])}),o}function Bt(e){let t=0;return e.split(",").map(e=>{let r=e.split("-");1===r.length?r[1]="0":""===r[1]&&(r[1]="1");let o=t+parseInt(r[0],16);return t=parseInt(r[1],16),{l:o,h:t}})}function Jt(e,t){let r=0;for(let o=0;o=r&&e<=r+n.h&&(e-r)%(n.d||1)==0){if(n.e&&-1!==n.e.indexOf(e-r))continue;return n}}return null}!function(e){e.current="",e.NFC="NFC",e.NFD="NFD",e.NFKC="NFKC",e.NFKD="NFKD"}(At||(At={}));const Lt=Bt("221,13-1b,5f-,40-10,51-f,11-3,3-3,2-2,2-4,8,2,15,2d,28-8,88,48,27-,3-5,11-20,27-,8,28,3-5,12,18,b-a,1c-4,6-16,2-d,2-2,2,1b-4,17-9,8f-,10,f,1f-2,1c-34,33-14e,4,36-,13-,6-2,1a-f,4,9-,3-,17,8,2-2,5-,2,8-,3-,4-8,2-3,3,6-,16-6,2-,7-3,3-,17,8,3,3,3-,2,6-3,3-,4-a,5,2-6,10-b,4,8,2,4,17,8,3,6-,b,4,4-,2-e,2-4,b-10,4,9-,3-,17,8,3-,5-,9-2,3-,4-7,3-3,3,4-3,c-10,3,7-2,4,5-2,3,2,3-2,3-2,4-2,9,4-3,6-2,4,5-8,2-e,d-d,4,9,4,18,b,6-3,8,4,5-6,3-8,3-3,b-11,3,9,4,18,b,6-3,8,4,5-6,3-6,2,3-3,b-11,3,9,4,18,11-3,7-,4,5-8,2-7,3-3,b-11,3,13-2,19,a,2-,8-2,2-3,7,2,9-11,4-b,3b-3,1e-24,3,2-,3,2-,2-5,5,8,4,2,2-,3,e,4-,6,2,7-,b-,3-21,49,23-5,1c-3,9,25,10-,2-2f,23,6,3,8-2,5-5,1b-45,27-9,2a-,2-3,5b-4,45-4,53-5,8,40,2,5-,8,2,5-,28,2,5-,20,2,5-,8,2,5-,8,8,18,20,2,5-,8,28,14-5,1d-22,56-b,277-8,1e-2,52-e,e,8-a,18-8,15-b,e,4,3-b,5e-2,b-15,10,b-5,59-7,2b-555,9d-3,5b-5,17-,7-,27-,7-,9,2,2,2,20-,36,10,f-,7,14-,4,a,54-3,2-6,6-5,9-,1c-10,13-1d,1c-14,3c-,10-6,32-b,240-30,28-18,c-14,a0,115-,3,66-,b-76,5,5-,1d,24,2,5-2,2,8-,35-2,19,f-10,1d-3,311-37f,1b,5a-b,d7-19,d-3,41,57-,68-4,29-3,5f,29-37,2e-2,25-c,2c-2,4e-3,30,78-3,64-,20,19b7-49,51a7-59,48e-2,38-738,2ba5-5b,222f-,3c-94,8-b,6-4,1b,6,2,3,3,6d-20,16e-f,41-,37-7,2e-2,11-f,5-b,18-,b,14,5-3,6,88-,2,bf-2,7-,7-,7-,4-2,8,8-9,8-2ff,20,5-b,1c-b4,27-,27-cbb1,f7-9,28-2,b5-221,56,48,3-,2-,3-,5,d,2,5,3,42,5-,9,8,1d,5,6,2-2,8,153-3,123-3,33-27fd,a6da-5128,21f-5df,3-fffd,3-fffd,3-fffd,3-fffd,3-fffd,3-fffd,3-fffd,3-fffd,3-fffd,3-fffd,3-fffd,3,2-1d,61-ff7d"),Pt="ad,34f,1806,180b,180c,180d,200b,200c,200d,2060,feff".split(",").map(e=>parseInt(e,16)),kt=[{h:25,s:32,l:65},{h:30,s:32,e:[23],l:127},{h:54,s:1,e:[48],l:64,d:2},{h:14,s:1,l:57,d:2},{h:44,s:1,l:17,d:2},{h:10,s:1,e:[2,6,8],l:61,d:2},{h:16,s:1,l:68,d:2},{h:84,s:1,e:[18,24,66],l:19,d:2},{h:26,s:32,e:[17],l:435},{h:22,s:1,l:71,d:2},{h:15,s:80,l:40},{h:31,s:32,l:16},{h:32,s:1,l:80,d:2},{h:52,s:1,l:42,d:2},{h:12,s:1,l:55,d:2},{h:40,s:1,e:[38],l:15,d:2},{h:14,s:1,l:48,d:2},{h:37,s:48,l:49},{h:148,s:1,l:6351,d:2},{h:88,s:1,l:160,d:2},{h:15,s:16,l:704},{h:25,s:26,l:854},{h:25,s:32,l:55915},{h:37,s:40,l:1247},{h:25,s:-119711,l:53248},{h:25,s:-119763,l:52},{h:25,s:-119815,l:52},{h:25,s:-119867,e:[1,4,5,7,8,11,12,17],l:52},{h:25,s:-119919,l:52},{h:24,s:-119971,e:[2,7,8,17],l:52},{h:24,s:-120023,e:[2,7,13,15,16,17],l:52},{h:25,s:-120075,l:52},{h:25,s:-120127,l:52},{h:25,s:-120179,l:52},{h:25,s:-120231,l:52},{h:25,s:-120283,l:52},{h:25,s:-120335,l:52},{h:24,s:-119543,e:[17],l:56},{h:24,s:-119601,e:[17],l:58},{h:24,s:-119659,e:[17],l:58},{h:24,s:-119717,e:[17],l:58},{h:24,s:-119775,e:[17],l:58}],Rt=Ct("b5:3bc,c3:ff,7:73,2:253,5:254,3:256,1:257,5:259,1:25b,3:260,1:263,2:269,1:268,5:26f,1:272,2:275,7:280,3:283,5:288,3:28a,1:28b,5:292,3f:195,1:1bf,29:19e,125:3b9,8b:3b2,1:3b8,1:3c5,3:3c6,1:3c0,1a:3ba,1:3c1,1:3c3,2:3b8,1:3b5,1bc9:3b9,1c:1f76,1:1f77,f:1f7a,1:1f7b,d:1f78,1:1f79,1:1f7c,1:1f7d,107:63,5:25b,4:68,1:68,1:68,3:69,1:69,1:6c,3:6e,4:70,1:71,1:72,1:72,1:72,7:7a,2:3c9,2:7a,2:6b,1:e5,1:62,1:63,3:65,1:66,2:6d,b:3b3,1:3c0,6:64,1b574:3b8,1a:3c3,20:3b8,1a:3c3,20:3b8,1a:3c3,20:3b8,1a:3c3,20:3b8,1a:3c3"),Dt=Ct("179:1,2:1,2:1,5:1,2:1,a:4f,a:1,8:1,2:1,2:1,3:1,5:1,3:1,4:1,2:1,3:1,4:1,8:2,1:1,2:2,1:1,2:2,27:2,195:26,2:25,1:25,1:25,2:40,2:3f,1:3f,33:1,11:-6,1:-9,1ac7:-3a,6d:-8,1:-8,1:-8,1:-8,1:-8,1:-8,1:-8,1:-8,9:-8,1:-8,1:-8,1:-8,1:-8,1:-8,b:-8,1:-8,1:-8,1:-8,1:-8,1:-8,1:-8,1:-8,9:-8,1:-8,1:-8,1:-8,1:-8,1:-8,1:-8,1:-8,9:-8,1:-8,1:-8,1:-8,1:-8,1:-8,c:-8,2:-8,2:-8,2:-8,9:-8,1:-8,1:-8,1:-8,1:-8,1:-8,1:-8,1:-8,49:-8,1:-8,1:-4a,1:-4a,d:-56,1:-56,1:-56,1:-56,d:-8,1:-8,f:-8,1:-8,3:-7"),Ot=Ct("df:00730073,51:00690307,19:02BC006E,a7:006A030C,18a:002003B9,16:03B903080301,20:03C503080301,1d7:05650582,190f:00680331,1:00740308,1:0077030A,1:0079030A,1:006102BE,b6:03C50313,2:03C503130300,2:03C503130301,2:03C503130342,2a:1F0003B9,1:1F0103B9,1:1F0203B9,1:1F0303B9,1:1F0403B9,1:1F0503B9,1:1F0603B9,1:1F0703B9,1:1F0003B9,1:1F0103B9,1:1F0203B9,1:1F0303B9,1:1F0403B9,1:1F0503B9,1:1F0603B9,1:1F0703B9,1:1F2003B9,1:1F2103B9,1:1F2203B9,1:1F2303B9,1:1F2403B9,1:1F2503B9,1:1F2603B9,1:1F2703B9,1:1F2003B9,1:1F2103B9,1:1F2203B9,1:1F2303B9,1:1F2403B9,1:1F2503B9,1:1F2603B9,1:1F2703B9,1:1F6003B9,1:1F6103B9,1:1F6203B9,1:1F6303B9,1:1F6403B9,1:1F6503B9,1:1F6603B9,1:1F6703B9,1:1F6003B9,1:1F6103B9,1:1F6203B9,1:1F6303B9,1:1F6403B9,1:1F6503B9,1:1F6603B9,1:1F6703B9,3:1F7003B9,1:03B103B9,1:03AC03B9,2:03B10342,1:03B1034203B9,5:03B103B9,6:1F7403B9,1:03B703B9,1:03AE03B9,2:03B70342,1:03B7034203B9,5:03B703B9,6:03B903080300,1:03B903080301,3:03B90342,1:03B903080342,b:03C503080300,1:03C503080301,1:03C10313,2:03C50342,1:03C503080342,b:1F7C03B9,1:03C903B9,1:03CE03B9,2:03C90342,1:03C9034203B9,5:03C903B9,ac:00720073,5b:00B00063,6:00B00066,d:006E006F,a:0073006D,1:00740065006C,1:0074006D,124f:006800700061,2:00610075,2:006F0076,b:00700061,1:006E0061,1:03BC0061,1:006D0061,1:006B0061,1:006B0062,1:006D0062,1:00670062,3:00700066,1:006E0066,1:03BC0066,4:0068007A,1:006B0068007A,1:006D0068007A,1:00670068007A,1:00740068007A,15:00700061,1:006B00700061,1:006D00700061,1:006700700061,8:00700076,1:006E0076,1:03BC0076,1:006D0076,1:006B0076,1:006D0076,1:00700077,1:006E0077,1:03BC0077,1:006D0077,1:006B0077,1:006D0077,1:006B03C9,1:006D03C9,2:00620071,3:00632215006B0067,1:0063006F002E,1:00640062,1:00670079,2:00680070,2:006B006B,1:006B006D,9:00700068,2:00700070006D,1:00700072,2:00730076,1:00770062,c723:00660066,1:00660069,1:0066006C,1:006600660069,1:00660066006C,1:00730074,1:00730074,d:05740576,1:05740565,1:0574056B,1:057E0576,1:0574056D",(function(e){if(e.length%4!=0)throw new Error("bad data");let t=[];for(let r=0;r{if(Pt.indexOf(e)>=0)return[];if(e>=65024&&e<=65039)return[];let t=function(e){let t=Jt(e,kt);if(t)return[e+t.s];let r=Rt[e];if(r)return r;let o=Dt[e];if(o)return[e+o[0]];let n=Ot[e];return n||null}(e);return t||[e]}),t=r.reduce((e,t)=>(t.forEach(t=>{e.push(t)}),e),[]),t=Ft(wt(t),At.NFKC),t.forEach(e=>{if(function(e){return!!Jt(e,Nt)}(e))throw new Error("STRINGPREP_CONTAINS_PROHIBITED")}),t.forEach(e=>{if(function(e){return!!Jt(e,Lt)}(e))throw new Error("STRINGPREP_CONTAINS_UNASSIGNED")});let o=wt(t);if("-"===o.substring(0,1)||"--"===o.substring(2,4)||"-"===o.substring(o.length-1))throw new Error("invalid hyphen");if(o.length>63)throw new Error("too long");return o}class Xt extends it{constructor(e){super("string",e)}encode(e,t){return super.encode(e,Tt(t))}decode(e){return Et(super.decode(e))}}class _t extends ke{constructor(e,t){let r=!1,o=[];e.forEach(e=>{e.dynamic&&(r=!0),o.push(e.type)}),super("tuple","tuple("+o.join(",")+")",t,r),this.coders=e}encode(e,t){return tt(e,this.coders,t)}decode(e){return e.coerce(this.name,rt(e,this.coders))}}const Ht=new p(ce),xt=new RegExp(/^bytes([0-9]*)$/),Gt=new RegExp(/^(u?int)([0-9]*)$/);class Ut{constructor(e){Ht.checkNew(new.target,Ut),re(this,"coerceFunc",e||null)}_getCoder(e){switch(e.baseType){case"address":return new We(e.name);case"bool":return new nt(e.name);case"string":return new Xt(e.name);case"bytes":return new at(e.name);case"array":return new ot(this._getCoder(e.arrayChildren),e.arrayLength,e.name);case"tuple":return new _t((e.components||[]).map(e=>this._getCoder(e)),e.name);case"":return new lt(e.name)}let t=e.type.match(Gt);if(t){let r=parseInt(t[2]||"256");return(0===r||r>256||r%8!=0)&&Ht.throwArgumentError("invalid "+t[1]+" bit length","param",e),new bt(r/8,"int"===t[1],e.name)}if(t=e.type.match(xt),t){let r=parseInt(t[1]);return(0===r||r>32)&&Ht.throwArgumentError("invalid bytes length","param",e),new st(r,e.name)}return Ht.throwError("invalid type","type",e.type)}_getWordSize(){return 32}_getReader(e){return new De(e,this._getWordSize(),this.coerceFunc)}_getWriter(){return new Re(this._getWordSize())}encode(e,t){e.length!==t.length&&Ht.throwError("types/values length mismatch",p.errors.INVALID_ARGUMENT,{count:{types:e.length,values:t.length},value:{types:e,values:t}});const r=e.map(e=>this._getCoder(be.from(e))),o=new _t(r,"_"),n=this._getWriter();return o.encode(n,t),n.data}decode(e,t){const r=e.map(e=>this._getCoder(be.from(e)));return new _t(r,"_").decode(this._getReader(S(t)))}}const zt=new Ut,Vt=new p("hash/5.0.0-beta.133"),Zt=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]),jt=new RegExp("^((.*)\\.)?([^.]+)$");function Kt(e){"string"!=typeof e&&Vt.throwArgumentError("invalid address - "+String(e),"name",e);let t=Zt;for(;e.length;){const r=e.match(jt);t=Ne(T([t,Ne(Tt(It(r[3])))])),e=r[2]||""}return C(t)}function Qt(e){return Ne(Tt(e))}const qt="Ethereum Signed Message:\n";function Yt(e){return"string"==typeof e&&(e=Tt(e)),Ne(T([Tt(qt),Tt(String(e.length)),e]))}const Wt=new p(ce);class $t extends ue{}class er extends ue{}class tr extends ue{static isIndexed(e){return!(!e||!e._isIndexed)}}class rr{constructor(e){Wt.checkNew(new.target,rr);let t=[];t="string"==typeof e?JSON.parse(e):e,re(this,"fragments",t.map(e=>Ae.from(e)).filter(e=>null!=e)),re(this,"_abiCoder",oe(new.target,"getAbiCoder")()),re(this,"functions",{}),re(this,"errors",{}),re(this,"events",{}),re(this,"structs",{}),this.fragments.forEach(e=>{let t=null;switch(e.type){case"constructor":return this.deploy?void Wt.warn("duplicate definition - constructor"):void re(this,"deploy",e);case"function":t=this.functions;break;case"event":t=this.events;break;default:return}let r=e.format();t[r]?Wt.warn("duplicate definition - "+r):t[r]=e}),this.deploy||re(this,"deploy",Ee.from({type:"constructor"})),re(this,"_isInterface",!0)}format(e){e||(e=ge.full),e===ge.sighash&&Wt.throwArgumentError("interface does not support formating sighash","format",e);const t=this.fragments.map(t=>t.format(e));return e===ge.json?JSON.stringify(t.map(e=>JSON.parse(e))):t}static getAbiCoder(){return zt}static getAddress(e){return qe(e)}static getSighash(e){return J(Qt(e.format()),0,4)}static getTopic(e){return Qt(e.format())}getFunction(e){if(E(e)){for(const t in this.functions)if(e===this.getSighash(t))return this.functions[t];Wt.throwArgumentError("no matching function","sighash",e)}if(-1===e.indexOf("(")){const t=e.trim(),r=Object.keys(this.functions).filter(e=>e.split("(")[0]===t);return 0===r.length?Wt.throwArgumentError("no matching function","name",t):r.length>1&&Wt.throwArgumentError("multiple matching functions","name",t),this.functions[r[0]]}const t=this.functions[Fe.fromString(e).format()];return t||Wt.throwArgumentError("no matching function","signature",e),t}getEvent(e){if(E(e)){const t=e.toLowerCase();for(const e in this.events)if(t===this.getEventTopic(e))return this.events[e];Wt.throwArgumentError("no matching event","topichash",t)}if(-1===e.indexOf("(")){const t=e.trim(),r=Object.keys(this.events).filter(e=>e.split("(")[0]===t);return 0===r.length?Wt.throwArgumentError("no matching event","name",t):r.length>1&&Wt.throwArgumentError("multiple matching events","name",t),this.events[r[0]]}const t=this.events[Se.fromString(e).format()];return t||Wt.throwArgumentError("no matching event","signature",e),t}getSighash(e){return"string"==typeof e&&(e=this.getFunction(e)),oe(this.constructor,"getSighash")(e)}getEventTopic(e){return"string"==typeof e&&(e=this.getEvent(e)),oe(this.constructor,"getTopic")(e)}_decodeParams(e,t){return this._abiCoder.decode(e,t)}_encodeParams(e,t){return this._abiCoder.encode(e,t)}encodeDeploy(e){return this._encodeParams(this.deploy.inputs,e||[])}decodeFunctionData(e,t){"string"==typeof e&&(e=this.getFunction(e));const r=S(t);return C(r.slice(0,4))!==this.getSighash(e)&&Wt.throwArgumentError(`data signature does not match function ${e.name}.`,"data",C(r)),this._decodeParams(e.inputs,r.slice(4))}encodeFunctionData(e,t){return"string"==typeof e&&(e=this.getFunction(e)),C(T([this.getSighash(e),this._encodeParams(e.inputs,t||[])]))}decodeFunctionResult(e,t){"string"==typeof e&&(e=this.getFunction(e));let r=S(t),o=null,n=null;switch(r.length%this._abiCoder._getWordSize()){case 0:try{return this._abiCoder.decode(e.outputs,r)}catch(e){}break;case 4:"0x08c379a0"===C(r.slice(0,4))&&(n="Error(string)",o=this._abiCoder.decode(["string"],r.slice(4))[0])}return Wt.throwError("call revert exception",p.errors.CALL_EXCEPTION,{method:e.format(),errorSignature:n,errorArgs:[o],reason:o})}encodeFunctionResult(e,t){return"string"==typeof e&&(e=this.getFunction(e)),C(this._abiCoder.encode(e.outputs,t||[]))}encodeFilterTopics(e,t){"string"==typeof e&&(e=this.getEvent(e)),t.length>e.inputs.length&&Wt.throwError("too many arguments for "+e.format(),p.errors.UNEXPECTED_ARGUMENT,{argument:"values",value:t});let r=[];for(e.anonymous||r.push(this.getEventTopic(e)),t.forEach((t,o)=>{let n=e.inputs[o];n.indexed?null==t?r.push(null):"string"===n.type?r.push(Qt(t)):"bytes"===n.type?r.push(Ne(C(t))):-1!==n.type.indexOf("[")||"tuple"===n.type.substring(0,5)?Wt.throwArgumentError("filtering with tuples or arrays not supported","contract."+n.name,t):("address"===n.type&&this._abiCoder.encode(["address"],[t]),r.push(k(C(t),32))):null!=t&&Wt.throwArgumentError("cannot filter non-indexed parameters; must be null","contract."+n.name,t)});r.length&&null===r[r.length-1];)r.pop();return r}decodeEventLog(e,t,r){if("string"==typeof e&&(e=this.getEvent(e)),null!=r&&!e.anonymous){let t=this.getEventTopic(e);E(r[0],32)&&r[0].toLowerCase()===t||Wt.throwError("fragment/topic mismatch",p.errors.INVALID_ARGUMENT,{argument:"topics[0]",expected:t,value:r[0]}),r=r.slice(1)}let o=[],n=[],i=[];e.inputs.forEach((e,t)=>{e.indexed?"string"===e.type||"bytes"===e.type||"tuple"===e.baseType||"array"===e.baseType?(o.push(be.fromObject({type:"bytes32",name:e.name})),i.push(!0)):(o.push(e),i.push(!1)):(n.push(e),i.push(!1))});let a=null!=r?this._abiCoder.decode(o,T(r)):null,s=this._abiCoder.decode(n,t),l=[],u=0,c=0;return e.inputs.forEach((e,t)=>{e.indexed?null==a?l[t]=new tr({_isIndexed:!0,hash:null}):i[t]?l[t]=new tr({_isIndexed:!0,hash:a[c++]}):l[t]=a[c++]:l[t]=s[u++],e.name&&null==l[e.name]&&(l[e.name]=l[t])}),l}parseTransaction(e){let t=this.getFunction(e.data.substring(0,10).toLowerCase());return t?new er({args:this._abiCoder.decode(t.inputs,"0x"+e.data.substring(10)),functionFragment:t,name:t.name,signature:t.format(),sighash:this.getSighash(t),value:_.from(e.value||"0")}):null}parseLog(e){let t=this.getEvent(e.topics[0]);return!t||t.anonymous?null:new $t({eventFragment:t,name:t.name,signature:t.format(),topic:this.getEventTopic(t),args:this.decodeEventLog(t,e.data,e.topics)})}static isInterface(e){return!(!e||!e._isInterface)}}const or=new p("abstract-provider/5.0.0-beta.136");class nr extends ue{static isForkEvent(e){return!(!e||!e._isForkEvent)}}class ir{constructor(){or.checkAbstract(new.target,ir),re(this,"_isProvider",!0)}addListener(e,t){return this.on(e,t)}removeListener(e,t){return this.off(e,t)}static isProvider(e){return!(!e||!e._isProvider)}}var ar=window&&window.__awaiter||function(e,t,r,o){return new(r||(r=Promise))((function(n,i){function a(e){try{l(o.next(e))}catch(e){i(e)}}function s(e){try{l(o.throw(e))}catch(e){i(e)}}function l(e){var t;e.done?n(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(a,s)}l((o=o.apply(e,t||[])).next())}))};const sr=new p("abstract-signer/5.0.0-beta.137"),lr=["chainId","data","from","gasLimit","gasPrice","nonce","to","value"];class ur{constructor(){sr.checkAbstract(new.target,ur),re(this,"_isSigner",!0)}getBalance(e){return this._checkProvider("getBalance"),this.provider.getBalance(this.getAddress(),e)}getTransactionCount(e){return this._checkProvider("getTransactionCount"),this.provider.getTransactionCount(this.getAddress(),e)}estimateGas(e){return this._checkProvider("estimateGas"),ne(this.checkTransaction(e)).then(e=>this.provider.estimateGas(e))}call(e,t){return this._checkProvider("call"),ne(this.checkTransaction(e)).then(e=>this.provider.call(e))}sendTransaction(e){return this._checkProvider("sendTransaction"),this.populateTransaction(e).then(e=>this.signTransaction(e).then(e=>this.provider.sendTransaction(e)))}getChainId(){return this._checkProvider("getChainId"),this.provider.getNetwork().then(e=>e.chainId)}getGasPrice(){return this._checkProvider("getGasPrice"),this.provider.getGasPrice()}resolveName(e){return this._checkProvider("resolveName"),this.provider.resolveName(e)}checkTransaction(e){for(const t in e)-1===lr.indexOf(t)&&sr.throwArgumentError("invalid transaction key: "+t,"transaction",e);const t=ae(e);return null==t.from&&(t.from=this.getAddress()),t}populateTransaction(e){return ar(this,void 0,void 0,(function*(){const t=yield ne(this.checkTransaction(e));return null!=t.to&&(t.to=Promise.resolve(t.to).then(e=>this.resolveName(e))),null==t.gasPrice&&(t.gasPrice=this.getGasPrice()),null==t.nonce&&(t.nonce=this.getTransactionCount("pending")),null==t.from?t.from=this.getAddress():t.from=Promise.all([this.getAddress(),this.provider.resolveName(t.from)]).then(t=>(t[0]!==t[1]&&sr.throwArgumentError("from address mismatch","transaction",e),t[0])),null==t.gasLimit&&(t.gasLimit=this.estimateGas(t).catch(e=>{sr.throwError("cannot estimate gas; transaction may fail or may require manual gas limit",p.errors.UNPREDICTABLE_GAS_LIMIT,{tx:t})})),null==t.chainId&&(t.chainId=this.getChainId()),yield ne(t)}))}_checkProvider(e){this.provider||sr.throwError("missing provider",p.errors.UNSUPPORTED_OPERATION,{operation:e||"_checkProvider"})}static isSigner(e){return!(!e||!e._isSigner)}}class cr extends ur{constructor(e,t){sr.checkNew(new.target,cr),super(),re(this,"address",e),re(this,"provider",t||null)}getAddress(){return Promise.resolve(this.address)}_fail(e,t){return Promise.resolve().then(()=>{sr.throwError(e,p.errors.UNSUPPORTED_OPERATION,{operation:t})})}signMessage(e){return this._fail("VoidSigner cannot sign messages","signMessage")}signTransaction(e){return this._fail("VoidSigner cannot sign transactions","signTransaction")}connect(e){return new cr(this.address,e)}}const hr=new p("contracts/5.0.0-beta.143"),dr={chainId:!0,data:!0,from:!0,gasLimit:!0,gasPrice:!0,nonce:!0,to:!0,value:!0};function fr(e,t,r){if(Array.isArray(r))return Promise.all(r.map((r,o)=>fr(e,Array.isArray(t)?t[o]:t[r.name],r)));if("address"===r.type)return e.resolveName(t);if("tuple"===r.type)return fr(e,t,r.components);if("array"===r.baseType){if(!Array.isArray(t))throw new Error("invalid value for array");return Promise.all(t.map(t=>fr(e,t,r.arrayChildren)))}return Promise.resolve(t)}function pr(e,t,r){const o=e.interface.functions[t];return function(...t){let n={},i=null;if(t.length===o.inputs.length+1&&"object"==typeof t[t.length-1]){n=ae(t.pop()),null!=n.blockTag&&(i=n.blockTag),delete n.blockTag;for(let e in n)dr[e]||hr.throwError("unknown transaxction override - "+e,"overrides",n)}return hr.checkArgumentCount(t.length,o.inputs.length,"passed to contract"),["data","to"].forEach((function(e){null!=n[e]&&hr.throwError("cannot override "+e,p.errors.UNSUPPORTED_OPERATION,{operation:e})})),null!=e.deployTransaction?n.to=e._deployed(i).then(()=>e.addressPromise):n.to=e.addressPromise,fr(e.signer||e.provider,t,o.inputs).then(t=>(n.data=e.interface.encodeFunctionData(o,t),o.constant||r.callStatic?r.estimate?Promise.resolve(dt):(e.provider||e.signer||hr.throwError("call (constant functions) require a provider or signer",p.errors.UNSUPPORTED_OPERATION,{operation:"call"}),["gasLimit","gasPrice","value"].forEach((function(e){if(null!=n[e])throw new Error("call cannot override "+e)})),r.transaction?ne(n):(e.signer||e.provider).call(n,i).then(r=>{try{let t=e.interface.decodeFunctionResult(o,r);return 1===o.outputs.length&&(t=t[0]),t}catch(r){throw r.code===p.errors.CALL_EXCEPTION&&(r.address=e.address,r.args=t,r.transaction=n),r}})):r.estimate?(e.provider||e.signer||hr.throwError("estimate require a provider or signer",p.errors.UNSUPPORTED_OPERATION,{operation:"estimateGas"}),(e.signer||e.provider).estimateGas(n)):(null==n.gasLimit&&null!=o.gas&&(n.gasLimit=_.from(o.gas).add(21e3)),null==n.value||o.payable||hr.throwArgumentError("contract method is not payable","sendTransaction:"+o.format(),n),r.transaction?ne(n):(e.signer||hr.throwError("sending a transaction requires a signer",p.errors.UNSUPPORTED_OPERATION,{operation:"sendTransaction"}),e.signer.sendTransaction(n).then(t=>{const r=t.wait.bind(t);return t.wait=t=>r(t).then(t=>(t.events=t.logs.map(r=>{let o=le(r),n=e.interface.parseLog(r);return n&&(o.args=n.args,o.decode=(e,t)=>this.interface.decodeEventLog(n.eventFragment,e,t),o.event=n.name,o.eventSignature=n.signature),o.removeListener=()=>e.provider,o.getBlock=()=>e.provider.getBlock(t.blockHash),o.getTransaction=()=>e.provider.getTransaction(t.transactionHash),o.getTransactionReceipt=()=>Promise.resolve(t),o}),t)),t})))))}}function mr(e){return!e.address||null!=e.topics&&0!==e.topics.length?(e.address||"*")+"@"+(e.topics?e.topics.join(":"):""):"*"}class gr{constructor(e,t){re(this,"tag",e),re(this,"filter",t),this._listeners=[]}addListener(e,t){this._listeners.push({listener:e,once:t})}removeListener(e){let t=!1;this._listeners=this._listeners.filter(r=>!(!t&&r.listener===e)||(t=!0,!1))}removeAllListeners(){this._listeners=[]}listeners(){return this._listeners.map(e=>e.listener)}listenerCount(){return this._listeners.length}run(e){const t=this.listenerCount();return this._listeners=this._listeners.filter(t=>{const r=e.slice();return setTimeout(()=>{t.listener.apply(this,r)},0),!t.once}),t}prepareEvent(e){}}class vr extends gr{constructor(){super("error",null)}}class br extends gr{constructor(e,t,r,o){const n={address:e};let i=t.getEventTopic(r);o?(i!==o[0]&&hr.throwArgumentError("topic mismatch","topics",o),n.topics=o.slice()):n.topics=[i],super(mr(n),n),re(this,"address",e),re(this,"interface",t),re(this,"fragment",r)}prepareEvent(e){super.prepareEvent(e),e.event=this.fragment.name,e.eventSignature=this.fragment.format(),e.decode=(e,t)=>this.interface.decodeEventLog(this.fragment,e,t),e.args=this.interface.decodeEventLog(this.fragment,e.data,e.topics)}}class yr extends gr{constructor(e,t){super("*",{address:e}),re(this,"address",e),re(this,"interface",t)}prepareEvent(e){super.prepareEvent(e);const t=this.interface.parseLog(e);t&&(e.event=t.name,e.eventSignature=t.signature,e.decode=(e,r)=>this.interface.decodeEventLog(t.eventFragment,e,r),e.args=t.args)}}class Ar{constructor(e,t,r){hr.checkNew(new.target,Ar),re(this,"interface",oe(new.target,"getInterface")(t)),ur.isSigner(r)?(re(this,"provider",r.provider||null),re(this,"signer",r)):ir.isProvider(r)?(re(this,"provider",r),re(this,"signer",null)):hr.throwArgumentError("invalid signer or provider","signerOrProvider",r),re(this,"callStatic",{}),re(this,"estimate",{}),re(this,"functions",{}),re(this,"populateTransaction",{}),re(this,"filters",{});{const e={};Object.keys(this.interface.events).forEach(t=>{const r=this.interface.events[t];re(this.filters,t,(...e)=>({address:this.address,topics:this.interface.encodeFilterTopics(r,e)})),e[r.name]||(e[r.name]=[]),e[r.name].push(t)}),Object.keys(e).forEach(t=>{const r=e[t];1===r.length?re(this.filters,t,this.filters[r[0]]):hr.warn(`Duplicate definition of ${t} (${r.join(", ")})`)})}if(re(this,"_runningEvents",{}),re(this,"_wrappedEmits",{}),re(this,"address",e),this.provider)re(this,"addressPromise",this.provider.resolveName(e).then(e=>{if(null==e)throw new Error("name not found");return e}).catch(t=>{throw console.log("ERROR: Cannot find Contract - "+e),t}));else try{re(this,"addressPromise",Promise.resolve(this.interface.constructor.getAddress(e)))}catch(t){hr.throwArgumentError("provider is required to use non-address contract address","addressOrName",e)}const o={};Object.keys(this.interface.functions).forEach(e=>{const t=this.interface.functions[e],r=pr(this,e,{});null==this[e]&&re(this,e,r),null==this.functions[e]&&re(this.functions,e,r),null==this.callStatic[e]&&re(this.callStatic,e,pr(this,e,{callStatic:!0})),null==this.populateTransaction[e]&&re(this.populateTransaction,e,pr(this,e,{transaction:!0})),null==this.estimate[e]&&re(this.estimate,e,pr(this,e,{estimate:!0})),o[t.name]||(o[t.name]=[]),o[t.name].push(e)}),Object.keys(o).forEach(e=>{const t=o[e];t.length>1?hr.warn(`Duplicate definition of ${e} (${t.join(", ")})`):(null==this[e]&&re(this,e,this[t[0]]),re(this.functions,e,this.functions[t[0]]),re(this.callStatic,e,this.callStatic[t[0]]),re(this.populateTransaction,e,this.populateTransaction[t[0]]),re(this.estimate,e,this.estimate[t[0]]))})}static getContractAddress(e){return Ye(e)}static getInterface(e){return rr.isInterface(e)?e:new rr(e)}deployed(){return this._deployed()}_deployed(e){return this._deployedPromise||(this.deployTransaction?this._deployedPromise=this.deployTransaction.wait().then(()=>this):this._deployedPromise=this.provider.getCode(this.address,e).then(e=>("0x"===e&&hr.throwError("contract not deployed",p.errors.UNSUPPORTED_OPERATION,{contractAddress:this.address,operation:"getDeployed"}),this))),this._deployedPromise}fallback(e){this.signer||hr.throwError("sending a transactions require a signer",p.errors.UNSUPPORTED_OPERATION,{operation:"sendTransaction(fallback)"});const t=ae(e||{});return["from","to"].forEach((function(e){null!=t[e]&&hr.throwError("cannot override "+e,p.errors.UNSUPPORTED_OPERATION,{operation:e})})),t.to=this.addressPromise,this.deployed().then(()=>this.signer.sendTransaction(t))}connect(e){"string"==typeof e&&(e=new cr(e,this.provider));const t=new this.constructor(this.address,this.interface,e);return this.deployTransaction&&re(t,"deployTransaction",this.deployTransaction),t}attach(e){return new this.constructor(e,this.interface,this.signer||this.provider)}static isIndexed(e){return tr.isIndexed(e)}_normalizeRunningEvent(e){return this._runningEvents[e.tag]?this._runningEvents[e.tag]:e}_getRunningEvent(e){if("string"==typeof e){if("error"===e)return this._normalizeRunningEvent(new vr);if("*"===e)return this._normalizeRunningEvent(new yr(this.address,this.interface));const t=this.interface.getEvent(e);return t||hr.throwArgumentError("unknown event - "+e,"eventName",e),this._normalizeRunningEvent(new br(this.address,this.interface,t))}const t={address:this.address};if(e.topics){if(e.topics[0]){const t=this.interface.getEvent(e.topics[0]);if(t)return this._normalizeRunningEvent(new br(this.address,this.interface,t,e.topics))}t.topics=e.topics}return this._normalizeRunningEvent(new gr(mr(t),t))}_checkRunningEvents(e){0===e.listenerCount()&&delete this._runningEvents[e.tag];const t=this._wrappedEmits[e.tag];t&&(this.provider.off(e.filter,t),delete this._wrappedEmits[e.tag])}_wrapEvent(e,t,r){const o=le(t);try{e.prepareEvent(o)}catch(e){throw this.emit("error",e),e}return o.removeListener=()=>{r&&(e.removeListener(r),this._checkRunningEvents(e))},o.getBlock=()=>this.provider.getBlock(t.blockHash),o.getTransaction=()=>this.provider.getTransaction(t.transactionHash),o.getTransactionReceipt=()=>this.provider.getTransactionReceipt(t.transactionHash),o}_addEventListener(e,t,r){if(this.provider||hr.throwError("events require a provider or a signer with a provider",p.errors.UNSUPPORTED_OPERATION,{operation:"once"}),e.addListener(t,r),this._runningEvents[e.tag]=e,!this._wrappedEmits[e.tag]){const r=r=>{const o=this._wrapEvent(e,r,t),n=o.args||[];n.push(o),this.emit(e.filter,...n)};this._wrappedEmits[e.tag]=r,null!=e.filter&&this.provider.on(e.filter,r)}}queryFilter(e,t,r){const o=this._getRunningEvent(e),n=ae(o.filter);return"string"==typeof t&&E(t,32)?(null!=r&&hr.throwArgumentError("cannot specify toBlock with blockhash","toBlock",r),n.blockhash=t):(n.fromBlock=null!=t?t:0,n.toBlock=null!=r?r:"latest"),this.provider.getLogs(n).then(e=>e.map(e=>this._wrapEvent(o,e,null)))}on(e,t){return this._addEventListener(this._getRunningEvent(e),t,!1),this}once(e,t){return this._addEventListener(this._getRunningEvent(e),t,!0),this}emit(e,...t){if(!this.provider)return!1;const r=this._getRunningEvent(e),o=r.run(t)>0;return this._checkRunningEvents(r),o}listenerCount(e){return this.provider?this._getRunningEvent(e).listenerCount():0}listeners(e){if(!this.provider)return[];if(null==e){const e=[];for(let t in this._runningEvents)this._runningEvents[t].listeners().forEach(t=>{e.push(t)});return e}return this._getRunningEvent(e).listeners()}removeAllListeners(e){if(!this.provider)return this;if(null==e){for(const e in this._runningEvents){const t=this._runningEvents[e];t.removeAllListeners(),this._checkRunningEvents(t)}return this}const t=this._getRunningEvent(e);return t.removeAllListeners(),this._checkRunningEvents(t),this}off(e,t){if(!this.provider)return this;const r=this._getRunningEvent(e);return r.removeListener(t),this._checkRunningEvents(r),this}removeListener(e,t){return this.off(e,t)}}class Sr{constructor(e,t,r){let o=null;o="string"==typeof t?t:A(t)?C(t):t&&"string"==typeof t.object?t.object:"!","0x"!==o.substring(0,2)&&(o="0x"+o),(!E(o)||o.length%2)&&hr.throwArgumentError("invalid bytecode","bytecode",t),r&&!ur.isSigner(r)&&hr.throwArgumentError("invalid signer","signer",r),re(this,"bytecode",o),re(this,"interface",oe(new.target,"getInterface")(e)),re(this,"signer",r||null)}getDeployTransaction(...e){let t={};if(e.length===this.interface.deploy.inputs.length+1){t=ae(e.pop());for(const e in t)if(!dr[e])throw new Error("unknown transaction override "+e)}return["data","from","to"].forEach(e=>{null!=t[e]&&hr.throwError("cannot override "+e,p.errors.UNSUPPORTED_OPERATION,{operation:e})}),hr.checkArgumentCount(e.length,this.interface.deploy.inputs.length," in Contract constructor"),t.data=C(T([this.bytecode,this.interface.encodeDeploy(e)])),t}deploy(...e){return fr(this.signer,e,this.interface.deploy.inputs).then(e=>{const t=this.getDeployTransaction(...e);return this.signer.sendTransaction(t).then(e=>{const t=this.constructor.getContractAddress(e),r=this.constructor.getContract(t,this.interface,this.signer);return re(r,"deployTransaction",e),r})})}attach(e){return this.constructor.getContract(e,this.interface,this.signer)}connect(e){return new this.constructor(this.interface,this.bytecode,e)}static fromSolidity(e,t){null==e&&hr.throwError("missing compiler output",p.errors.MISSING_ARGUMENT,{argument:"compilerOutput"}),"string"==typeof e&&(e=JSON.parse(e));const r=e.abi;let o=null;return e.bytecode?o=e.bytecode:e.evm&&e.evm.bytecode&&(o=e.evm.bytecode),new this(r,o,t)}static getInterface(e){return Ar.getInterface(e)}static getContractAddress(e){return Ye(e)}static getContract(e,t,r){return new Ar(e,t,r)}}class Tr{constructor(e){re(this,"alphabet",e),re(this,"base",e.length),re(this,"_alphabetMap",{}),re(this,"_leader",e.charAt(0));for(let t=0;t0;)r.push(o%this.base),o=o/this.base|0}let o="";for(let e=0;0===t[e]&&e=0;--e)o+=this.alphabet[r[e]];return o}decode(e){if("string"!=typeof e)throw new TypeError("Expected String");let t=[];if(0===e.length)return new Uint8Array(t);t.push(0);for(let r=0;r>=8;for(;n>0;)t.push(255&n),n>>=8}for(let r=0;e[r]===this._leader&&r>>24|e>>>8&65280|e<<8&16711680|(255&e)<<24)>>>0}function Br(e){return 1===e.length?"0"+e:e}function Jr(e){return 7===e.length?"0"+e:6===e.length?"00"+e:5===e.length?"000"+e:4===e.length?"0000"+e:3===e.length?"00000"+e:2===e.length?"000000"+e:1===e.length?"0000000"+e:e}var Lr={inherits:Fr,toArray:function(e,t){if(Array.isArray(e))return e.slice();if(!e)return[];var r=[];if("string"==typeof e)if(t){if("hex"===t)for((e=e.replace(/[^a-z0-9]+/gi,"")).length%2!=0&&(e="0"+e),o=0;o>8,a=255&n;i?r.push(i,a):r.push(a)}else for(o=0;o>>0}return i},split32:function(e,t){for(var r=new Array(4*e.length),o=0,n=0;o>>24,r[n+1]=i>>>16&255,r[n+2]=i>>>8&255,r[n+3]=255&i):(r[n+3]=i>>>24,r[n+2]=i>>>16&255,r[n+1]=i>>>8&255,r[n]=255&i)}return r},rotr32:function(e,t){return e>>>t|e<<32-t},rotl32:function(e,t){return e<>>32-t},sum32:function(e,t){return e+t>>>0},sum32_3:function(e,t,r){return e+t+r>>>0},sum32_4:function(e,t,r,o){return e+t+r+o>>>0},sum32_5:function(e,t,r,o,n){return e+t+r+o+n>>>0},sum64:function(e,t,r,o){var n=e[t],i=o+e[t+1]>>>0,a=(i>>0,e[t+1]=i},sum64_hi:function(e,t,r,o){return(t+o>>>0>>0},sum64_lo:function(e,t,r,o){return t+o>>>0},sum64_4_hi:function(e,t,r,o,n,i,a,s){var l=0,u=t;return l+=(u=u+o>>>0)>>0)>>0)>>0},sum64_4_lo:function(e,t,r,o,n,i,a,s){return t+o+i+s>>>0},sum64_5_hi:function(e,t,r,o,n,i,a,s,l,u){var c=0,h=t;return c+=(h=h+o>>>0)>>0)>>0)>>0)>>0},sum64_5_lo:function(e,t,r,o,n,i,a,s,l,u){return t+o+i+s+u>>>0},rotr64_hi:function(e,t,r){return(t<<32-r|e>>>r)>>>0},rotr64_lo:function(e,t,r){return(e<<32-r|t>>>r)>>>0},shr64_hi:function(e,t,r){return e>>>r},shr64_lo:function(e,t,r){return(e<<32-r|t>>>r)>>>0}};function Pr(){this.pending=null,this.pendingTotal=0,this.blockSize=this.constructor.blockSize,this.outSize=this.constructor.outSize,this.hmacStrength=this.constructor.hmacStrength,this.padLength=this.constructor.padLength/8,this.endian="big",this._delta8=this.blockSize/8,this._delta32=this.blockSize/32}var kr=Pr;Pr.prototype.update=function(e,t){if(e=Lr.toArray(e,t),this.pending?this.pending=this.pending.concat(e):this.pending=e,this.pendingTotal+=e.length,this.pending.length>=this._delta8){var r=(e=this.pending).length%this._delta8;this.pending=e.slice(e.length-r,e.length),0===this.pending.length&&(this.pending=null),e=Lr.join32(e,0,e.length-r,this.endian);for(var o=0;o>>24&255,o[n++]=e>>>16&255,o[n++]=e>>>8&255,o[n++]=255&e}else for(o[n++]=255&e,o[n++]=e>>>8&255,o[n++]=e>>>16&255,o[n++]=e>>>24&255,o[n++]=0,o[n++]=0,o[n++]=0,o[n++]=0,i=8;i>>3},g1_256:function(e){return Dr(e,17)^Dr(e,19)^e>>>10}},_r=Lr.sum32,Hr=Lr.sum32_4,xr=Lr.sum32_5,Gr=Xr.ch32,Ur=Xr.maj32,zr=Xr.s0_256,Vr=Xr.s1_256,Zr=Xr.g0_256,jr=Xr.g1_256,Kr=Rr.BlockHash,Qr=[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];function qr(){if(!(this instanceof qr))return new qr;Kr.call(this),this.h=[1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225],this.k=Qr,this.W=new Array(64)}Lr.inherits(qr,Kr);var Yr=qr;qr.blockSize=512,qr.outSize=256,qr.hmacStrength=192,qr.padLength=64,qr.prototype._update=function(e,t){for(var r=this.W,o=0;o<16;o++)r[o]=e[t+o];for(;othis.blockSize&&(e=(new this.Hash).update(e).digest()),wr(e.length<=this.blockSize);for(var t=e.length;t>24&255,c[t.length+1]=h>>16&255,c[t.length+2]=h>>8&255,c[t.length+3]=255&h;var d=O.arrayify(Zo.computeHmac(n,e,c));i||(i=d.length,s=new Uint8Array(i),a=o-((l=Math.ceil(o/i))-1)*i),s.set(d);for(var f=1;f>8,a=255&n;i?r.push(i,a):r.push(a)}return r},r.zero2=o,r.toHex=n,r.encode=function(e,t){return"hex"===t?n(e):e}})),rn=r((function(e,t){var r=t;r.assert=wr,r.toArray=tn.toArray,r.zero2=tn.zero2,r.toHex=tn.toHex,r.encode=tn.encode,r.getNAF=function(e,t,r){var o=new Array(Math.max(e.bitLength(),r)+1);o.fill(0);for(var n=1<(n>>1)-1?(n>>1)-l:l,i.isubn(s)):s=0,o[a]=s,i.iushrn(1)}return o},r.getJSF=function(e,t){var r=[[],[]];e=e.clone(),t=t.clone();for(var o=0,n=0;e.cmpn(-o)>0||t.cmpn(-n)>0;){var i,a,s,l=e.andln(3)+o&3,u=t.andln(3)+n&3;if(3===l&&(l=-1),3===u&&(u=-1),0==(1&l))i=0;else i=3!==(s=e.andln(7)+o&7)&&5!==s||2!==u?l:-l;if(r[0].push(i),0==(1&u))a=0;else a=3!==(s=t.andln(7)+n&7)&&5!==s||2!==l?u:-u;r[1].push(a),2*o===i+1&&(o=1-o),2*n===a+1&&(n=1-n),e.iushrn(1),t.iushrn(1)}return r},r.cachedProperty=function(e,t,r){var o="_"+t;e.prototype[t]=function(){return void 0!==this[o]?this[o]:this[o]=r.call(this)}},r.parseBytes=function(e){return"string"==typeof e?r.toArray(e,"hex"):e},r.intFromLE=function(e){return new i(e,"hex","le")}})),on=function(t){var r=new Uint8Array(t);return(e.crypto||e.msCrypto).getRandomValues(r),r},nn=rn.getNAF,an=rn.getJSF,sn=rn.assert;function ln(e,t){this.type=e,this.p=new i(t.p,16),this.red=t.prime?i.red(t.prime):i.mont(this.p),this.zero=new i(0).toRed(this.red),this.one=new i(1).toRed(this.red),this.two=new i(2).toRed(this.red),this.n=t.n&&new i(t.n,16),this.g=t.g&&this.pointFromJSON(t.g,t.gRed),this._wnafT1=new Array(4),this._wnafT2=new Array(4),this._wnafT3=new Array(4),this._wnafT4=new Array(4),this._bitLength=this.n?this.n.bitLength():0;var r=this.n&&this.p.div(this.n);!r||r.cmpn(100)>0?this.redN=null:(this._maxwellTrick=!0,this.redN=this.n.toRed(this.red))}var un=ln;function cn(e,t){this.curve=e,this.type=t,this.precomputed=null}ln.prototype.point=function(){throw new Error("Not implemented")},ln.prototype.validate=function(){throw new Error("Not implemented")},ln.prototype._fixedNafMul=function(e,t){sn(e.precomputed);var r=e._getDoubles(),o=nn(t,1,this._bitLength),n=(1<=a;t--)s=(s<<1)+o[t];i.push(s)}for(var l=this.jpoint(null,null,null),u=this.jpoint(null,null,null),c=n;c>0;c--){for(a=0;a=0;s--){for(t=0;s>=0&&0===i[s];s--)t++;if(s>=0&&t++,a=a.dblp(t),s<0)break;var l=i[s];sn(0!==l),a="affine"===e.type?l>0?a.mixedAdd(n[l-1>>1]):a.mixedAdd(n[-l-1>>1].neg()):l>0?a.add(n[l-1>>1]):a.add(n[-l-1>>1].neg())}return"affine"===e.type?a.toP():a},ln.prototype._wnafMulAdd=function(e,t,r,o,n){for(var i=this._wnafT1,a=this._wnafT2,s=this._wnafT3,l=0,u=0;u=1;u-=2){var h=u-1,d=u;if(1===i[h]&&1===i[d]){var f=[t[h],null,null,t[d]];0===t[h].y.cmp(t[d].y)?(f[1]=t[h].add(t[d]),f[2]=t[h].toJ().mixedAdd(t[d].neg())):0===t[h].y.cmp(t[d].y.redNeg())?(f[1]=t[h].toJ().mixedAdd(t[d]),f[2]=t[h].add(t[d].neg())):(f[1]=t[h].toJ().mixedAdd(t[d]),f[2]=t[h].toJ().mixedAdd(t[d].neg()));var p=[-3,-1,-5,-7,0,7,5,1,3],m=an(r[h],r[d]);l=Math.max(m[0].length,l),s[h]=new Array(l),s[d]=new Array(l);for(var g=0;g=0;u--){for(var S=0;u>=0;){var T=!0;for(g=0;g=0&&S++,y=y.dblp(S),u<0)break;for(g=0;g0?M=a[g][w-1>>1]:w<0&&(M=a[g][-w-1>>1].neg()),y="affine"===M.type?y.mixedAdd(M):y.add(M))}}for(u=0;u=Math.ceil((e.bitLength()+1)/t.step)},cn.prototype._getDoubles=function(e,t){if(this.precomputed&&this.precomputed.doubles)return this.precomputed.doubles;for(var r=[this],o=this,n=0;n=0&&(a=t,s=r),o.negative&&(o=o.neg(),n=n.neg()),a.negative&&(a=a.neg(),s=s.neg()),[{a:o,b:n},{a:a,b:s}]},dn.prototype._endoSplit=function(e){var t=this.endo.basis,r=t[0],o=t[1],n=o.b.mul(e).divRound(this.n),i=r.b.neg().mul(e).divRound(this.n),a=n.mul(r.a),s=i.mul(o.a),l=n.mul(r.b),u=i.mul(o.b);return{k1:e.sub(a).sub(s),k2:l.add(u).neg()}},dn.prototype.pointFromX=function(e,t){(e=new i(e,16)).red||(e=e.toRed(this.red));var r=e.redSqr().redMul(e).redIAdd(e.redMul(this.a)).redIAdd(this.b),o=r.redSqrt();if(0!==o.redSqr().redSub(r).cmp(this.zero))throw new Error("invalid point");var n=o.fromRed().isOdd();return(t&&!n||!t&&n)&&(o=o.redNeg()),this.point(e,o)},dn.prototype.validate=function(e){if(e.inf)return!0;var t=e.x,r=e.y,o=this.a.redMul(t),n=t.redSqr().redMul(t).redIAdd(o).redIAdd(this.b);return 0===r.redSqr().redISub(n).cmpn(0)},dn.prototype._endoWnafMulAdd=function(e,t,r){for(var o=this._endoWnafT1,n=this._endoWnafT2,i=0;i":""},pn.prototype.isInfinity=function(){return this.inf},pn.prototype.add=function(e){if(this.inf)return e;if(e.inf)return this;if(this.eq(e))return this.dbl();if(this.neg().eq(e))return this.curve.point(null,null);if(0===this.x.cmp(e.x))return this.curve.point(null,null);var t=this.y.redSub(e.y);0!==t.cmpn(0)&&(t=t.redMul(this.x.redSub(e.x).redInvm()));var r=t.redSqr().redISub(this.x).redISub(e.x),o=t.redMul(this.x.redSub(r)).redISub(this.y);return this.curve.point(r,o)},pn.prototype.dbl=function(){if(this.inf)return this;var e=this.y.redAdd(this.y);if(0===e.cmpn(0))return this.curve.point(null,null);var t=this.curve.a,r=this.x.redSqr(),o=e.redInvm(),n=r.redAdd(r).redIAdd(r).redIAdd(t).redMul(o),i=n.redSqr().redISub(this.x.redAdd(this.x)),a=n.redMul(this.x.redSub(i)).redISub(this.y);return this.curve.point(i,a)},pn.prototype.getX=function(){return this.x.fromRed()},pn.prototype.getY=function(){return this.y.fromRed()},pn.prototype.mul=function(e){return e=new i(e,16),this.isInfinity()?this:this._hasDoubles(e)?this.curve._fixedNafMul(this,e):this.curve.endo?this.curve._endoWnafMulAdd([this],[e]):this.curve._wnafMul(this,e)},pn.prototype.mulAdd=function(e,t,r){var o=[this,t],n=[e,r];return this.curve.endo?this.curve._endoWnafMulAdd(o,n):this.curve._wnafMulAdd(1,o,n,2)},pn.prototype.jmulAdd=function(e,t,r){var o=[this,t],n=[e,r];return this.curve.endo?this.curve._endoWnafMulAdd(o,n,!0):this.curve._wnafMulAdd(1,o,n,2,!0)},pn.prototype.eq=function(e){return this===e||this.inf===e.inf&&(this.inf||0===this.x.cmp(e.x)&&0===this.y.cmp(e.y))},pn.prototype.neg=function(e){if(this.inf)return this;var t=this.curve.point(this.x,this.y.redNeg());if(e&&this.precomputed){var r=this.precomputed,o=function(e){return e.neg()};t.precomputed={naf:r.naf&&{wnd:r.naf.wnd,points:r.naf.points.map(o)},doubles:r.doubles&&{step:r.doubles.step,points:r.doubles.points.map(o)}}}return t},pn.prototype.toJ=function(){return this.inf?this.curve.jpoint(null,null,null):this.curve.jpoint(this.x,this.y,this.curve.one)},Fr(mn,un.BasePoint),dn.prototype.jpoint=function(e,t,r){return new mn(this,e,t,r)},mn.prototype.toP=function(){if(this.isInfinity())return this.curve.point(null,null);var e=this.z.redInvm(),t=e.redSqr(),r=this.x.redMul(t),o=this.y.redMul(t).redMul(e);return this.curve.point(r,o)},mn.prototype.neg=function(){return this.curve.jpoint(this.x,this.y.redNeg(),this.z)},mn.prototype.add=function(e){if(this.isInfinity())return e;if(e.isInfinity())return this;var t=e.z.redSqr(),r=this.z.redSqr(),o=this.x.redMul(t),n=e.x.redMul(r),i=this.y.redMul(t.redMul(e.z)),a=e.y.redMul(r.redMul(this.z)),s=o.redSub(n),l=i.redSub(a);if(0===s.cmpn(0))return 0!==l.cmpn(0)?this.curve.jpoint(null,null,null):this.dbl();var u=s.redSqr(),c=u.redMul(s),h=o.redMul(u),d=l.redSqr().redIAdd(c).redISub(h).redISub(h),f=l.redMul(h.redISub(d)).redISub(i.redMul(c)),p=this.z.redMul(e.z).redMul(s);return this.curve.jpoint(d,f,p)},mn.prototype.mixedAdd=function(e){if(this.isInfinity())return e.toJ();if(e.isInfinity())return this;var t=this.z.redSqr(),r=this.x,o=e.x.redMul(t),n=this.y,i=e.y.redMul(t).redMul(this.z),a=r.redSub(o),s=n.redSub(i);if(0===a.cmpn(0))return 0!==s.cmpn(0)?this.curve.jpoint(null,null,null):this.dbl();var l=a.redSqr(),u=l.redMul(a),c=r.redMul(l),h=s.redSqr().redIAdd(u).redISub(c).redISub(c),d=s.redMul(c.redISub(h)).redISub(n.redMul(u)),f=this.z.redMul(a);return this.curve.jpoint(h,d,f)},mn.prototype.dblp=function(e){if(0===e)return this;if(this.isInfinity())return this;if(!e)return this.dbl();if(this.curve.zeroA||this.curve.threeA){for(var t=this,r=0;r=0)return!1;if(r.redIAdd(n),0===this.x.cmp(r))return!0}},mn.prototype.inspect=function(){return this.isInfinity()?"":""},mn.prototype.isInfinity=function(){return 0===this.z.cmpn(0)};var gn={},vn={},bn=r((function(e,t){var r=t;r.base=un,r.short=fn,r.mont=gn,r.edwards=vn})),yn=r((function(e,t){var r,o=t,n=rn.assert;function i(e){"short"===e.type?this.curve=new bn.short(e):"edwards"===e.type?this.curve=new bn.edwards(e):this.curve=new bn.mont(e),this.g=this.curve.g,this.n=this.curve.n,this.hash=e.hash,n(this.g.validate(),"Invalid curve"),n(this.g.mul(this.n).isInfinity(),"Invalid curve, G*N != O")}function a(e,t){Object.defineProperty(o,e,{configurable:!0,enumerable:!0,get:function(){var r=new i(t);return Object.defineProperty(o,e,{configurable:!0,enumerable:!0,value:r}),r}})}o.PresetCurve=i,a("p192",{type:"short",prime:"p192",p:"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff",a:"ffffffff ffffffff ffffffff fffffffe ffffffff fffffffc",b:"64210519 e59c80e7 0fa7e9ab 72243049 feb8deec c146b9b1",n:"ffffffff ffffffff ffffffff 99def836 146bc9b1 b4d22831",hash:zo.sha256,gRed:!1,g:["188da80e b03090f6 7cbf20eb 43a18800 f4ff0afd 82ff1012","07192b95 ffc8da78 631011ed 6b24cdd5 73f977a1 1e794811"]}),a("p224",{type:"short",prime:"p224",p:"ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001",a:"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff fffffffe",b:"b4050a85 0c04b3ab f5413256 5044b0b7 d7bfd8ba 270b3943 2355ffb4",n:"ffffffff ffffffff ffffffff ffff16a2 e0b8f03e 13dd2945 5c5c2a3d",hash:zo.sha256,gRed:!1,g:["b70e0cbd 6bb4bf7f 321390b9 4a03c1d3 56c21122 343280d6 115c1d21","bd376388 b5f723fb 4c22dfe6 cd4375a0 5a074764 44d58199 85007e34"]}),a("p256",{type:"short",prime:null,p:"ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff ffffffff",a:"ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff fffffffc",b:"5ac635d8 aa3a93e7 b3ebbd55 769886bc 651d06b0 cc53b0f6 3bce3c3e 27d2604b",n:"ffffffff 00000000 ffffffff ffffffff bce6faad a7179e84 f3b9cac2 fc632551",hash:zo.sha256,gRed:!1,g:["6b17d1f2 e12c4247 f8bce6e5 63a440f2 77037d81 2deb33a0 f4a13945 d898c296","4fe342e2 fe1a7f9b 8ee7eb4a 7c0f9e16 2bce3357 6b315ece cbb64068 37bf51f5"]}),a("p384",{type:"short",prime:null,p:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 ffffffff",a:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 fffffffc",b:"b3312fa7 e23ee7e4 988e056b e3f82d19 181d9c6e fe814112 0314088f 5013875a c656398d 8a2ed19d 2a85c8ed d3ec2aef",n:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff c7634d81 f4372ddf 581a0db2 48b0a77a ecec196a ccc52973",hash:zo.sha384,gRed:!1,g:["aa87ca22 be8b0537 8eb1c71e f320ad74 6e1d3b62 8ba79b98 59f741e0 82542a38 5502f25d bf55296c 3a545e38 72760ab7","3617de4a 96262c6f 5d9e98bf 9292dc29 f8f41dbd 289a147c e9da3113 b5f0b8c0 0a60b1ce 1d7e819d 7a431d7c 90ea0e5f"]}),a("p521",{type:"short",prime:null,p:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff",a:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffc",b:"00000051 953eb961 8e1c9a1f 929a21a0 b68540ee a2da725b 99b315f3 b8b48991 8ef109e1 56193951 ec7e937b 1652c0bd 3bb1bf07 3573df88 3d2c34f1 ef451fd4 6b503f00",n:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffa 51868783 bf2f966b 7fcc0148 f709a5d0 3bb5c9b8 899c47ae bb6fb71e 91386409",hash:zo.sha512,gRed:!1,g:["000000c6 858e06b7 0404e9cd 9e3ecb66 2395b442 9c648139 053fb521 f828af60 6b4d3dba a14b5e77 efe75928 fe1dc127 a2ffa8de 3348b3c1 856a429b f97e7e31 c2e5bd66","00000118 39296a78 9a3bc004 5c8a5fb4 2c7d1bd9 98f54449 579b4468 17afbd17 273e662c 97ee7299 5ef42640 c550b901 3fad0761 353c7086 a272c240 88be9476 9fd16650"]}),a("curve25519",{type:"mont",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"76d06",b:"1",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:zo.sha256,gRed:!1,g:["9"]}),a("ed25519",{type:"edwards",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"-1",c:"1",d:"52036cee2b6ffe73 8cc740797779e898 00700a4d4141d8ab 75eb4dca135978a3",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:zo.sha256,gRed:!1,g:["216936d3cd6e53fec0a4e231fdd6dc5c692cc7609525a7b2c9562d608f25d51a","6666666666666666666666666666666666666666666666666666666666666658"]});try{r=void 0}catch(e){r=void 0}a("secp256k1",{type:"short",prime:"k256",p:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f",a:"0",b:"7",n:"ffffffff ffffffff ffffffff fffffffe baaedce6 af48a03b bfd25e8c d0364141",h:"1",hash:zo.sha256,beta:"7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee",lambda:"5363ad4cc05c30e0a5261c028812645a122e22ea20816678df02967c1b23bd72",basis:[{a:"3086d221a7d46bcde86c90e49284eb15",b:"-e4437ed6010e88286f547fa90abfe4c3"},{a:"114ca50f7a8e2f3f657c1108d9d44cfd8",b:"3086d221a7d46bcde86c90e49284eb15"}],gRed:!1,g:["79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798","483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8",r]})}));function An(e){if(!(this instanceof An))return new An(e);this.hash=e.hash,this.predResist=!!e.predResist,this.outLen=this.hash.outSize,this.minEntropy=e.minEntropy||this.hash.hmacStrength,this._reseed=null,this.reseedInterval=null,this.K=null,this.V=null;var t=tn.toArray(e.entropy,e.entropyEnc||"hex"),r=tn.toArray(e.nonce,e.nonceEnc||"hex"),o=tn.toArray(e.pers,e.persEnc||"hex");wr(t.length>=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits"),this._init(t,r,o)}var Sn=An;An.prototype._init=function(e,t,r){var o=e.concat(t).concat(r);this.K=new Array(this.outLen/8),this.V=new Array(this.outLen/8);for(var n=0;n=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits"),this._update(e.concat(r||[])),this._reseed=1},An.prototype.generate=function(e,t,r,o){if(this._reseed>this.reseedInterval)throw new Error("Reseed is required");"string"!=typeof t&&(o=r,r=t,t=null),r&&(r=tn.toArray(r,o||"hex"),this._update(r));for(var n=[];n.length"};var En=rn.assert;function Fn(e,t){if(e instanceof Fn)return e;this._importDER(e,t)||(En(e.r&&e.s,"Signature without r or s"),this.r=new i(e.r,16),this.s=new i(e.s,16),void 0===e.recoveryParam?this.recoveryParam=null:this.recoveryParam=e.recoveryParam)}var Cn=Fn;function Bn(){this.place=0}function Jn(e,t){var r=e[t.place++];if(!(128&r))return r;for(var o=15&r,n=0,i=0,a=t.place;i>>3);for(e.push(128|r);--r;)e.push(t>>>(r<<3)&255);e.push(t)}}Fn.prototype._importDER=function(e,t){e=rn.toArray(e,t);var r=new Bn;if(48!==e[r.place++])return!1;if(Jn(e,r)+r.place!==e.length)return!1;if(2!==e[r.place++])return!1;var o=Jn(e,r),n=e.slice(r.place,o+r.place);if(r.place+=o,2!==e[r.place++])return!1;var a=Jn(e,r);if(e.length!==a+r.place)return!1;var s=e.slice(r.place,a+r.place);return 0===n[0]&&128&n[1]&&(n=n.slice(1)),0===s[0]&&128&s[1]&&(s=s.slice(1)),this.r=new i(n),this.s=new i(s),this.recoveryParam=null,!0},Fn.prototype.toDER=function(e){var t=this.r.toArray(),r=this.s.toArray();for(128&t[0]&&(t=[0].concat(t)),128&r[0]&&(r=[0].concat(r)),t=Ln(t),r=Ln(r);!(r[0]||128&r[1]);)r=r.slice(1);var o=[2];Pn(o,t.length),(o=o.concat(t)).push(2),Pn(o,r.length);var n=o.concat(r),i=[48];return Pn(i,n.length),i=i.concat(n),rn.encode(i,e)};var kn=rn.assert;function Rn(e){if(!(this instanceof Rn))return new Rn(e);"string"==typeof e&&(kn(yn.hasOwnProperty(e),"Unknown curve "+e),e=yn[e]),e instanceof yn.PresetCurve&&(e={curve:e}),this.curve=e.curve.curve,this.n=this.curve.n,this.nh=this.n.ushrn(1),this.g=this.curve.g,this.g=e.curve.g,this.g.precompute(e.curve.n.bitLength()+1),this.hash=e.hash||e.curve.hash}var Dn=Rn;Rn.prototype.keyPair=function(e){return new wn(this,e)},Rn.prototype.keyFromPrivate=function(e,t){return wn.fromPrivate(this,e,t)},Rn.prototype.keyFromPublic=function(e,t){return wn.fromPublic(this,e,t)},Rn.prototype.genKeyPair=function(e){e||(e={});for(var t=new Sn({hash:this.hash,pers:e.pers,persEnc:e.persEnc||"utf8",entropy:e.entropy||on(this.hash.hmacStrength),entropyEnc:e.entropy&&e.entropyEnc||"utf8",nonce:this.n.toArray()}),r=this.n.byteLength(),o=this.n.sub(new i(2));;){var n=new i(t.generate(r));if(!(n.cmp(o)>0))return n.iaddn(1),this.keyFromPrivate(n)}},Rn.prototype._truncateToN=function(e,t){var r=8*e.byteLength()-this.n.bitLength();return r>0&&(e=e.ushrn(r)),!t&&e.cmp(this.n)>=0?e.sub(this.n):e},Rn.prototype.sign=function(e,t,r,o){"object"==typeof r&&(o=r,r=null),o||(o={}),t=this.keyFromPrivate(t,r),e=this._truncateToN(new i(e,16));for(var n=this.n.byteLength(),a=t.getPrivate().toArray("be",n),s=e.toArray("be",n),l=new Sn({hash:this.hash,entropy:a,nonce:s,pers:o.pers,persEnc:o.persEnc||"utf8"}),u=this.n.sub(new i(1)),c=0;;c++){var h=o.k?o.k(c):new i(l.generate(this.n.byteLength()));if(!((h=this._truncateToN(h,!0)).cmpn(1)<=0||h.cmp(u)>=0)){var d=this.g.mul(h);if(!d.isInfinity()){var f=d.getX(),p=f.umod(this.n);if(0!==p.cmpn(0)){var m=h.invm(this.n).mul(p.mul(t.getPrivate()).iadd(e));if(0!==(m=m.umod(this.n)).cmpn(0)){var g=(d.getY().isOdd()?1:0)|(0!==f.cmp(p)?2:0);return o.canonical&&m.cmp(this.nh)>0&&(m=this.n.sub(m),g^=1),new Cn({r:p,s:m,recoveryParam:g})}}}}}},Rn.prototype.verify=function(e,t,r,o){e=this._truncateToN(new i(e,16)),r=this.keyFromPublic(r,o);var n=(t=new Cn(t,"hex")).r,a=t.s;if(n.cmpn(1)<0||n.cmp(this.n)>=0)return!1;if(a.cmpn(1)<0||a.cmp(this.n)>=0)return!1;var s,l=a.invm(this.n),u=l.mul(e).umod(this.n),c=l.mul(n).umod(this.n);return this.curve._maxwellTrick?!(s=this.g.jmulAdd(u,r.getPublic(),c)).isInfinity()&&s.eqXToP(n):!(s=this.g.mulAdd(u,r.getPublic(),c)).isInfinity()&&0===s.getX().umod(this.n).cmp(n)},Rn.prototype.recoverPubKey=function(e,t,r,o){kn((3&r)===r,"The recovery param is more than two bits"),t=new Cn(t,o);var n=this.n,a=new i(e),s=t.r,l=t.s,u=1&r,c=r>>1;if(s.cmp(this.curve.p.umod(this.curve.n))>=0&&c)throw new Error("Unable to find sencond key candinate");s=c?this.curve.pointFromX(s.add(this.curve.n),u):this.curve.pointFromX(s,u);var h=t.r.invm(n),d=n.sub(a).mul(h).umod(n),f=l.mul(h).umod(n);return this.g.mulAdd(d,s,f)},Rn.prototype.getKeyRecoveryParam=function(e,t,r,o){if(null!==(t=new Cn(t,o)).recoveryParam)return t.recoveryParam;for(var n=0;n<4;n++){var i;try{i=this.recoverPubKey(e,t,n)}catch(e){continue}if(i.eq(r))return n}throw new Error("Unable to find valid recovery factor")};var On={},Nn=o(en),In=r((function(e,t){var r=t;r.version=Nn.version,r.utils=rn,r.rand=on,r.curve=bn,r.curves=yn,r.ec=Dn,r.eddsa=On})).ec;const Xn=new p("signing-key/5.0.0-beta.135");let _n=null;function Hn(){return _n||(_n=new In("secp256k1")),_n}class xn{constructor(e){re(this,"curve","secp256k1"),re(this,"privateKey",C(e));const t=Hn().keyFromPrivate(S(this.privateKey));re(this,"publicKey","0x"+t.getPublic(!1,"hex")),re(this,"compressedPublicKey","0x"+t.getPublic(!0,"hex")),re(this,"_isSigningKey",!0)}_addPoint(e){const t=Hn().keyFromPublic(S(this.publicKey)),r=Hn().keyFromPublic(S(e));return"0x"+t.pub.add(r.pub).encodeCompressed("hex")}signDigest(e){const t=Hn().keyFromPrivate(S(this.privateKey)).sign(S(e),{canonical:!0});return R({recoveryParam:t.recoveryParam,r:k("0x"+t.r.toString(16),32),s:k("0x"+t.s.toString(16),32)})}computeSharedSecret(e){const t=Hn().keyFromPrivate(S(this.privateKey)),r=Hn().keyFromPublic(S(Un(e)));return k("0x"+t.derive(r.getPublic()).toString(16),32)}static isSigningKey(e){return!(!e||!e._isSigningKey)}}function Gn(e,t){const r=R(t),o={r:S(r.r),s:S(r.s)};return"0x"+Hn().recoverPubKey(S(e),o,r.recoveryParam).encode("hex",!1)}function Un(e,t){const r=S(e);if(32===r.length){const e=new xn(r);return t?"0x"+Hn().keyFromPrivate(r).getPublic(!0,"hex"):e.publicKey}return 33===r.length?t?C(r):"0x"+Hn().keyFromPublic(r).getPublic(!1,"hex"):65===r.length?t?"0x"+Hn().keyFromPublic(r).getPublic(!0,"hex"):C(r):Xn.throwArgumentError("invalid public or private key","key","[REDACTED]")}const zn=new p("transactions/5.0.0-beta.133");function Vn(e){return"0x"===e?dt:_.from(e)}const Zn=[{name:"nonce",maxLength:32,numeric:!0},{name:"gasPrice",maxLength:32,numeric:!0},{name:"gasLimit",maxLength:32,numeric:!0},{name:"to",length:20},{name:"value",maxLength:32,numeric:!0},{name:"data"}],jn={chainId:!0,data:!0,gasLimit:!0,gasPrice:!0,nonce:!0,to:!0,value:!0};function Kn(e){return qe(J(Ne(J(Un(e),1)),12))}function Qn(e,t){return Kn(Gn(S(e),t))}function qn(e,t){ie(e,jn);const r=[];Zn.forEach((function(t){let o=e[t.name]||[];const n={};t.numeric&&(n.hexPad="left"),o=S(C(o,n)),t.length&&o.length!==t.length&&o.length>0&&zn.throwArgumentError("invalid length for "+t.name,"transaction:"+t.name,o),t.maxLength&&(o=M(o),o.length>t.maxLength&&zn.throwArgumentError("invalid length for "+t.name,"transaction:"+t.name,o)),r.push(C(o))})),null!=e.chainId&&0!==e.chainId&&(r.push(C(e.chainId)),r.push("0x"),r.push("0x"));const o=_e(r);if(!t)return o;const n=R(t);let i=27+n.recoveryParam;return 9===r.length&&(r.pop(),r.pop(),r.pop(),i+=2*e.chainId+8),r.push(C(i)),r.push(M(S(n.r))),r.push(M(S(n.s))),_e(r)}function Yn(e){const t=Ge(e);9!==t.length&&6!==t.length&&zn.throwArgumentError("invalid raw transaction","rawTransactin",e);const r={nonce:Vn(t[0]).toNumber(),gasPrice:Vn(t[1]),gasLimit:Vn(t[2]),to:(o=t[3],"0x"===o?null:qe(o)),value:Vn(t[4]),data:t[5],chainId:0};var o;if(6===t.length)return r;try{r.v=_.from(t[6]).toNumber()}catch(e){return console.log(e),r}if(r.r=k(t[7],32),r.s=k(t[8],32),_.from(r.r).isZero()&&_.from(r.s).isZero())r.chainId=r.v,r.v=0;else{r.chainId=Math.floor((r.v-35)/2),r.chainId<0&&(r.chainId=0);let o=r.v-27;const n=t.slice(0,6);0!==r.chainId&&(n.push(C(r.chainId)),n.push("0x"),n.push("0x"),o-=2*r.chainId+8);const i=Ne(_e(n));try{r.from=Qn(i,{r:C(r.r),s:C(r.s),recoveryParam:o})}catch(e){console.log(e)}r.hash=Ne(e)}return r}const Wn=!1,$n=new p("wordlists/5.0.0-beta.135");class ei{constructor(e){$n.checkAbstract(new.target,ei),re(this,"locale",e)}split(e){return e.toLowerCase().split(/ +/g)}join(e){return e.join(" ")}static check(e){const t=[];for(let r=0;r<2048;r++){const o=e.getWord(r);if(r!==e.getWordIndex(o))return"0x";t.push(o)}return Qt(t.join("\n")+"\n")}static register(e,t){if(t||(t=e.locale),Wn)try{const r=window;r._ethers&&r._ethers.wordlists&&(r._ethers.wordlists[t]||re(r._ethers.wordlists,t,e))}catch(e){}}}const ti="AbdikaceAbecedaAdresaAgreseAkceAktovkaAlejAlkoholAmputaceAnanasAndulkaAnekdotaAnketaAntikaAnulovatArchaAroganceAsfaltAsistentAspiraceAstmaAstronomAtlasAtletikaAtolAutobusAzylBabkaBachorBacilBaculkaBadatelBagetaBagrBahnoBakterieBaladaBaletkaBalkonBalonekBalvanBalzaBambusBankomatBarbarBaretBarmanBarokoBarvaBaterkaBatohBavlnaBazalkaBazilikaBazukaBednaBeranBesedaBestieBetonBezinkaBezmocBeztakBicyklBidloBiftekBikinyBilanceBiografBiologBitvaBizonBlahobytBlatouchBlechaBleduleBleskBlikatBliznaBlokovatBlouditBludBobekBobrBodlinaBodnoutBohatostBojkotBojovatBokorysBolestBorecBoroviceBotaBoubelBouchatBoudaBouleBouratBoxerBradavkaBramboraBrankaBratrBreptaBriketaBrkoBrlohBronzBroskevBrunetkaBrusinkaBrzdaBrzyBublinaBubnovatBuchtaBuditelBudkaBudovaBufetBujarostBukviceBuldokBulvaBundaBunkrBurzaButikBuvolBuzolaBydletBylinaBytovkaBzukotCapartCarevnaCedrCeduleCejchCejnCelaCelerCelkemCelniceCeninaCennostCenovkaCentrumCenzorCestopisCetkaChalupaChapadloCharitaChataChechtatChemieChichotChirurgChladChlebaChlubitChmelChmuraChobotChocholChodbaCholeraChomoutChopitChorobaChovChrapotChrlitChrtChrupChtivostChudinaChutnatChvatChvilkaChvostChybaChystatChytitCibuleCigaretaCihelnaCihlaCinkotCirkusCisternaCitaceCitrusCizinecCizostClonaCokolivCouvatCtitelCtnostCudnostCuketaCukrCupotCvaknoutCvalCvikCvrkotCyklistaDalekoDarebaDatelDatumDceraDebataDechovkaDecibelDeficitDeflaceDeklDekretDemokratDepreseDerbyDeskaDetektivDikobrazDiktovatDiodaDiplomDiskDisplejDivadloDivochDlahaDlouhoDluhopisDnesDobroDobytekDocentDochutitDodnesDohledDohodaDohraDojemDojniceDokladDokolaDoktorDokumentDolarDolevaDolinaDomaDominantDomluvitDomovDonutitDopadDopisDoplnitDoposudDoprovodDopustitDorazitDorostDortDosahDoslovDostatekDosudDosytaDotazDotekDotknoutDoufatDoutnatDovozceDozaduDoznatDozorceDrahotaDrakDramatikDravecDrazeDrdolDrobnostDrogerieDrozdDrsnostDrtitDrzostDubenDuchovnoDudekDuhaDuhovkaDusitDusnoDutostDvojiceDvorecDynamitEkologEkonomieElektronElipsaEmailEmiseEmoceEmpatieEpizodaEpochaEpopejEposEsejEsenceEskortaEskymoEtiketaEuforieEvoluceExekuceExkurzeExpediceExplozeExportExtraktFackaFajfkaFakultaFanatikFantazieFarmacieFavoritFazoleFederaceFejetonFenkaFialkaFigurantFilozofFiltrFinanceFintaFixaceFjordFlanelFlirtFlotilaFondFosforFotbalFotkaFotonFrakceFreskaFrontaFukarFunkceFyzikaGalejeGarantGenetikaGeologGilotinaGlazuraGlejtGolemGolfistaGotikaGrafGramofonGranuleGrepGrilGrogGroteskaGumaHadiceHadrHalaHalenkaHanbaHanopisHarfaHarpunaHavranHebkostHejkalHejnoHejtmanHektarHelmaHematomHerecHernaHesloHezkyHistorikHladovkaHlasivkyHlavaHledatHlenHlodavecHlohHloupostHltatHlubinaHluchotaHmatHmotaHmyzHnisHnojivoHnoutHoblinaHobojHochHodinyHodlatHodnotaHodovatHojnostHokejHolinkaHolkaHolubHomoleHonitbaHonoraceHoralHordaHorizontHorkoHorlivecHormonHorninaHoroskopHorstvoHospodaHostinaHotovostHoubaHoufHoupatHouskaHovorHradbaHraniceHravostHrazdaHrbolekHrdinaHrdloHrdostHrnekHrobkaHromadaHrotHroudaHrozenHrstkaHrubostHryzatHubenostHubnoutHudbaHukotHumrHusitaHustotaHvozdHybnostHydrantHygienaHymnaHysterikIdylkaIhnedIkonaIluzeImunitaInfekceInflaceInkasoInovaceInspekceInternetInvalidaInvestorInzerceIronieJablkoJachtaJahodaJakmileJakostJalovecJantarJarmarkJaroJasanJasnoJatkaJavorJazykJedinecJedleJednatelJehlanJekotJelenJelitoJemnostJenomJepiceJeseterJevitJezdecJezeroJinakJindyJinochJiskraJistotaJitrniceJizvaJmenovatJogurtJurtaKabaretKabelKabinetKachnaKadetKadidloKahanKajakKajutaKakaoKaktusKalamitaKalhotyKalibrKalnostKameraKamkolivKamnaKanibalKanoeKantorKapalinaKapelaKapitolaKapkaKapleKapotaKaprKapustaKapybaraKaramelKarotkaKartonKasaKatalogKatedraKauceKauzaKavalecKazajkaKazetaKazivostKdekolivKdesiKedlubenKempKeramikaKinoKlacekKladivoKlamKlapotKlasikaKlaunKlecKlenbaKlepatKlesnoutKlidKlimaKlisnaKloboukKlokanKlopaKloubKlubovnaKlusatKluzkostKmenKmitatKmotrKnihaKnotKoaliceKoberecKobkaKoblihaKobylaKocourKohoutKojenecKokosKoktejlKolapsKoledaKolizeKoloKomandoKometaKomikKomnataKomoraKompasKomunitaKonatKonceptKondiceKonecKonfeseKongresKoninaKonkursKontaktKonzervaKopanecKopieKopnoutKoprovkaKorbelKorektorKormidloKoroptevKorpusKorunaKorytoKorzetKosatecKostkaKotelKotletaKotoulKoukatKoupelnaKousekKouzloKovbojKozaKozorohKrabiceKrachKrajinaKralovatKrasopisKravataKreditKrejcarKresbaKrevetaKriketKritikKrizeKrkavecKrmelecKrmivoKrocanKrokKronikaKropitKroupaKrovkaKrtekKruhadloKrupiceKrutostKrvinkaKrychleKryptaKrystalKrytKudlankaKufrKujnostKuklaKulajdaKulichKulkaKulometKulturaKunaKupodivuKurtKurzorKutilKvalitaKvasinkaKvestorKynologKyselinaKytaraKyticeKytkaKytovecKyvadloLabradorLachtanLadnostLaikLakomecLamelaLampaLanovkaLasiceLasoLasturaLatinkaLavinaLebkaLeckdyLedenLedniceLedovkaLedvinaLegendaLegieLegraceLehceLehkostLehnoutLektvarLenochodLentilkaLepenkaLepidloLetadloLetecLetmoLetokruhLevhartLevitaceLevobokLibraLichotkaLidojedLidskostLihovinaLijavecLilekLimetkaLinieLinkaLinoleumListopadLitinaLitovatLobistaLodivodLogikaLogopedLokalitaLoketLomcovatLopataLopuchLordLososLotrLoudalLouhLoukaLouskatLovecLstivostLucernaLuciferLumpLuskLustraceLviceLyraLyrikaLysinaMadamMadloMagistrMahagonMajetekMajitelMajoritaMakakMakoviceMakrelaMalbaMalinaMalovatMalviceMaminkaMandleMankoMarnostMasakrMaskotMasopustMaticeMatrikaMaturitaMazanecMazivoMazlitMazurkaMdlobaMechanikMeditaceMedovinaMelasaMelounMentolkaMetlaMetodaMetrMezeraMigraceMihnoutMihuleMikinaMikrofonMilenecMilimetrMilostMimikaMincovnaMinibarMinometMinulostMiskaMistrMixovatMladostMlhaMlhovinaMlokMlsatMluvitMnichMnohemMobilMocnostModelkaModlitbaMohylaMokroMolekulaMomentkaMonarchaMonoklMonstrumMontovatMonzunMosazMoskytMostMotivaceMotorkaMotykaMouchaMoudrostMozaikaMozekMozolMramorMravenecMrkevMrtvolaMrzetMrzutostMstitelMudrcMuflonMulatMumieMuniceMusetMutaceMuzeumMuzikantMyslivecMzdaNabouratNachytatNadaceNadbytekNadhozNadobroNadpisNahlasNahnatNahodileNahraditNaivitaNajednouNajistoNajmoutNaklonitNakonecNakrmitNalevoNamazatNamluvitNanometrNaokoNaopakNaostroNapadatNapevnoNaplnitNapnoutNaposledNaprostoNaroditNarubyNarychloNasaditNasekatNaslepoNastatNatolikNavenekNavrchNavzdoryNazvatNebeNechatNeckyNedalekoNedbatNeduhNegaceNehetNehodaNejenNejprveNeklidNelibostNemilostNemocNeochotaNeonkaNepokojNerostNervNesmyslNesouladNetvorNeuronNevinaNezvykleNicotaNijakNikamNikdyNiklNikterakNitroNoclehNohaviceNominaceNoraNorekNositelNosnostNouzeNovinyNovotaNozdraNudaNudleNugetNutitNutnostNutrieNymfaObalObarvitObavaObdivObecObehnatObejmoutObezitaObhajobaObilniceObjasnitObjektObklopitOblastOblekOblibaOblohaObludaObnosObohatitObojekOboutObrazecObrnaObrubaObrysObsahObsluhaObstaratObuvObvazObvinitObvodObvykleObyvatelObzorOcasOcelOcenitOchladitOchotaOchranaOcitnoutOdbojOdbytOdchodOdcizitOdebratOdeslatOdevzdatOdezvaOdhadceOdhoditOdjetOdjinudOdkazOdkoupitOdlivOdlukaOdmlkaOdolnostOdpadOdpisOdploutOdporOdpustitOdpykatOdrazkaOdsouditOdstupOdsunOdtokOdtudOdvahaOdvetaOdvolatOdvracetOdznakOfinaOfsajdOhlasOhniskoOhradaOhrozitOhryzekOkapOkeniceOklikaOknoOkouzlitOkovyOkrasaOkresOkrsekOkruhOkupantOkurkaOkusitOlejninaOlizovatOmakOmeletaOmezitOmladinaOmlouvatOmluvaOmylOnehdyOpakovatOpasekOperaceOpiceOpilostOpisovatOporaOpoziceOpravduOprotiOrbitalOrchestrOrgieOrliceOrlojOrtelOsadaOschnoutOsikaOsivoOslavaOslepitOslnitOslovitOsnovaOsobaOsolitOspalecOstenOstrahaOstudaOstychOsvojitOteplitOtiskOtopOtrhatOtrlostOtrokOtrubyOtvorOvanoutOvarOvesOvlivnitOvoceOxidOzdobaPachatelPacientPadouchPahorekPaktPalandaPalecPalivoPalubaPamfletPamlsekPanenkaPanikaPannaPanovatPanstvoPantoflePaprikaParketaParodiePartaParukaParybaPasekaPasivitaPastelkaPatentPatronaPavoukPaznehtPazourekPeckaPedagogPejsekPekloPelotonPenaltaPendrekPenzePeriskopPeroPestrostPetardaPeticePetrolejPevninaPexesoPianistaPihaPijavicePiklePiknikPilinaPilnostPilulkaPinzetaPipetaPisatelPistolePitevnaPivnicePivovarPlacentaPlakatPlamenPlanetaPlastikaPlatitPlavidloPlazPlechPlemenoPlentaPlesPletivoPlevelPlivatPlnitPlnoPlochaPlodinaPlombaPloutPlukPlynPobavitPobytPochodPocitPoctivecPodatPodcenitPodepsatPodhledPodivitPodkladPodmanitPodnikPodobaPodporaPodrazPodstataPodvodPodzimPoeziePohankaPohnutkaPohovorPohromaPohybPointaPojistkaPojmoutPokazitPoklesPokojPokrokPokutaPokynPolednePolibekPolknoutPolohaPolynomPomaluPominoutPomlkaPomocPomstaPomysletPonechatPonorkaPonurostPopadatPopelPopisekPoplachPoprositPopsatPopudPoradcePorcePorodPoruchaPoryvPosaditPosedPosilaPoskokPoslanecPosouditPospoluPostavaPosudekPosypPotahPotkanPotleskPotomekPotravaPotupaPotvoraPoukazPoutoPouzdroPovahaPovidlaPovlakPovozPovrchPovstatPovykPovzdechPozdravPozemekPoznatekPozorPozvatPracovatPrahoryPraktikaPralesPraotecPraporekPrasePravdaPrincipPrknoProbuditProcentoProdejProfeseProhraProjektProlomitPromilePronikatPropadProrokProsbaProtonProutekProvazPrskavkaPrstenPrudkostPrutPrvekPrvohoryPsanecPsovodPstruhPtactvoPubertaPuchPudlPukavecPuklinaPukrlePultPumpaPuncPupenPusaPusinkaPustinaPutovatPutykaPyramidaPyskPytelRacekRachotRadiaceRadniceRadonRaftRagbyRaketaRakovinaRamenoRampouchRandeRarachRaritaRasovnaRastrRatolestRazanceRazidloReagovatReakceReceptRedaktorReferentReflexRejnokReklamaRekordRekrutRektorReputaceRevizeRevmaRevolverRezervaRiskovatRizikoRobotikaRodokmenRohovkaRokleRokokoRomanetoRopovodRopuchaRorejsRosolRostlinaRotmistrRotopedRotundaRoubenkaRouchoRoupRouraRovinaRovniceRozborRozchodRozdatRozeznatRozhodceRozinkaRozjezdRozkazRozlohaRozmarRozpadRozruchRozsahRoztokRozumRozvodRubrikaRuchadloRukaviceRukopisRybaRybolovRychlostRydloRypadloRytinaRyzostSadistaSahatSakoSamecSamizdatSamotaSanitkaSardinkaSasankaSatelitSazbaSazeniceSborSchovatSebrankaSeceseSedadloSedimentSedloSehnatSejmoutSekeraSektaSekundaSekvojeSemenoSenoServisSesaditSeshoraSeskokSeslatSestraSesuvSesypatSetbaSetinaSetkatSetnoutSetrvatSeverSeznamShodaShrnoutSifonSilniceSirkaSirotekSirupSituaceSkafandrSkaliskoSkanzenSkautSkeptikSkicaSkladbaSkleniceSkloSkluzSkobaSkokanSkoroSkriptaSkrzSkupinaSkvostSkvrnaSlabikaSladidloSlaninaSlastSlavnostSledovatSlepecSlevaSlezinaSlibSlinaSlizniceSlonSloupekSlovoSluchSluhaSlunceSlupkaSlzaSmaragdSmetanaSmilstvoSmlouvaSmogSmradSmrkSmrtkaSmutekSmyslSnadSnahaSnobSobotaSochaSodovkaSokolSopkaSotvaSoubojSoucitSoudceSouhlasSouladSoumrakSoupravaSousedSoutokSouvisetSpalovnaSpasitelSpisSplavSpodekSpojenecSpoluSponzorSpornostSpoustaSprchaSpustitSrandaSrazSrdceSrnaSrnecSrovnatSrpenSrstSrubStaniceStarostaStatikaStavbaStehnoStezkaStodolaStolekStopaStornoStoupatStrachStresStrhnoutStromStrunaStudnaStupniceStvolStykSubjektSubtropySucharSudostSuknoSundatSunoutSurikataSurovinaSvahSvalstvoSvetrSvatbaSvazekSvisleSvitekSvobodaSvodidloSvorkaSvrabSykavkaSykotSynekSynovecSypatSypkostSyrovostSyselSytostTabletkaTabuleTahounTajemnoTajfunTajgaTajitTajnostTaktikaTamhleTamponTancovatTanecTankerTapetaTaveninaTazatelTechnikaTehdyTekutinaTelefonTemnotaTendenceTenistaTenorTeplotaTepnaTeprveTerapieTermoskaTextilTichoTiskopisTitulekTkadlecTkaninaTlapkaTleskatTlukotTlupaTmelToaletaTopinkaTopolTorzoTouhaToulecTradiceTraktorTrampTrasaTraverzaTrefitTrestTrezorTrhavinaTrhlinaTrochuTrojiceTroskaTroubaTrpceTrpitelTrpkostTrubecTruchlitTruhliceTrusTrvatTudyTuhnoutTuhostTundraTuristaTurnajTuzemskoTvarohTvorbaTvrdostTvrzTygrTykevUbohostUbozeUbratUbrousekUbrusUbytovnaUchoUctivostUdivitUhraditUjednatUjistitUjmoutUkazatelUklidnitUklonitUkotvitUkrojitUliceUlitaUlovitUmyvadloUnavitUniformaUniknoutUpadnoutUplatnitUplynoutUpoutatUpravitUranUrazitUsednoutUsilovatUsmrtitUsnadnitUsnoutUsouditUstlatUstrnoutUtahovatUtkatUtlumitUtonoutUtopenecUtrousitUvalitUvolnitUvozovkaUzdravitUzelUzeninaUzlinaUznatVagonValchaValounVanaVandalVanilkaVaranVarhanyVarovatVcelkuVchodVdovaVedroVegetaceVejceVelbloudVeletrhVelitelVelmocVelrybaVenkovVerandaVerzeVeselkaVeskrzeVesniceVespoduVestaVeterinaVeverkaVibraceVichrVideohraVidinaVidleVilaViniceVisetVitalitaVizeVizitkaVjezdVkladVkusVlajkaVlakVlasecVlevoVlhkostVlivVlnovkaVloupatVnucovatVnukVodaVodivostVodoznakVodstvoVojenskyVojnaVojskoVolantVolbaVolitVolnoVoskovkaVozidloVozovnaVpravoVrabecVracetVrahVrataVrbaVrcholekVrhatVrstvaVrtuleVsaditVstoupitVstupVtipVybavitVybratVychovatVydatVydraVyfotitVyhledatVyhnoutVyhoditVyhraditVyhubitVyjasnitVyjetVyjmoutVyklopitVykonatVylekatVymazatVymezitVymizetVymysletVynechatVynikatVynutitVypadatVyplatitVypravitVypustitVyrazitVyrovnatVyrvatVyslovitVysokoVystavitVysunoutVysypatVytasitVytesatVytratitVyvinoutVyvolatVyvrhelVyzdobitVyznatVzaduVzbuditVzchopitVzdorVzduchVzdychatVzestupVzhledemVzkazVzlykatVznikVzorekVzpouraVztahVztekXylofonZabratZabydletZachovatZadarmoZadusitZafoukatZahltitZahoditZahradaZahynoutZajatecZajetZajistitZaklepatZakoupitZalepitZamezitZamotatZamysletZanechatZanikatZaplatitZapojitZapsatZarazitZastavitZasunoutZatajitZatemnitZatknoutZaujmoutZavalitZaveletZavinitZavolatZavrtatZazvonitZbavitZbrusuZbudovatZbytekZdalekaZdarmaZdatnostZdivoZdobitZdrojZdvihZdymadloZeleninaZemanZeminaZeptatZezaduZezdolaZhatitZhltnoutZhlubokaZhotovitZhrubaZimaZimniceZjemnitZklamatZkoumatZkratkaZkumavkaZlatoZlehkaZlobaZlomZlostZlozvykZmapovatZmarZmatekZmijeZmizetZmocnitZmodratZmrzlinaZmutovatZnakZnalostZnamenatZnovuZobrazitZotavitZoubekZoufaleZploditZpomalitZpravaZprostitZprudkaZprvuZradaZranitZrcadloZrnitostZrnoZrovnaZrychlitZrzavostZtichaZtratitZubovinaZubrZvednoutZvenkuZveselaZvonZvratZvukovodZvyk";let ri=null;function oi(e){if(null==ri&&(ri=ti.replace(/([A-Z])/g," $1").toLowerCase().substring(1).split(" "),"0x25f44555f4af25b51a711136e1c7d6e50ce9f8917d39d6b1f076b2bb4d2fac1a"!==ei.check(e)))throw ri=null,new Error("BIP39 Wordlist for en (English) FAILED")}const ni=new class extends ei{constructor(){super("cz")}getWord(e){return oi(this),ri[e]}getWordIndex(e){return oi(this),ri.indexOf(e)}};ei.register(ni);const ii="AbandonAbilityAbleAboutAboveAbsentAbsorbAbstractAbsurdAbuseAccessAccidentAccountAccuseAchieveAcidAcousticAcquireAcrossActActionActorActressActualAdaptAddAddictAddressAdjustAdmitAdultAdvanceAdviceAerobicAffairAffordAfraidAgainAgeAgentAgreeAheadAimAirAirportAisleAlarmAlbumAlcoholAlertAlienAllAlleyAllowAlmostAloneAlphaAlreadyAlsoAlterAlwaysAmateurAmazingAmongAmountAmusedAnalystAnchorAncientAngerAngleAngryAnimalAnkleAnnounceAnnualAnotherAnswerAntennaAntiqueAnxietyAnyApartApologyAppearAppleApproveAprilArchArcticAreaArenaArgueArmArmedArmorArmyAroundArrangeArrestArriveArrowArtArtefactArtistArtworkAskAspectAssaultAssetAssistAssumeAsthmaAthleteAtomAttackAttendAttitudeAttractAuctionAuditAugustAuntAuthorAutoAutumnAverageAvocadoAvoidAwakeAwareAwayAwesomeAwfulAwkwardAxisBabyBachelorBaconBadgeBagBalanceBalconyBallBambooBananaBannerBarBarelyBargainBarrelBaseBasicBasketBattleBeachBeanBeautyBecauseBecomeBeefBeforeBeginBehaveBehindBelieveBelowBeltBenchBenefitBestBetrayBetterBetweenBeyondBicycleBidBikeBindBiologyBirdBirthBitterBlackBladeBlameBlanketBlastBleakBlessBlindBloodBlossomBlouseBlueBlurBlushBoardBoatBodyBoilBombBoneBonusBookBoostBorderBoringBorrowBossBottomBounceBoxBoyBracketBrainBrandBrassBraveBreadBreezeBrickBridgeBriefBrightBringBriskBroccoliBrokenBronzeBroomBrotherBrownBrushBubbleBuddyBudgetBuffaloBuildBulbBulkBulletBundleBunkerBurdenBurgerBurstBusBusinessBusyButterBuyerBuzzCabbageCabinCableCactusCageCakeCallCalmCameraCampCanCanalCancelCandyCannonCanoeCanvasCanyonCapableCapitalCaptainCarCarbonCardCargoCarpetCarryCartCaseCashCasinoCastleCasualCatCatalogCatchCategoryCattleCaughtCauseCautionCaveCeilingCeleryCementCensusCenturyCerealCertainChairChalkChampionChangeChaosChapterChargeChaseChatCheapCheckCheeseChefCherryChestChickenChiefChildChimneyChoiceChooseChronicChuckleChunkChurnCigarCinnamonCircleCitizenCityCivilClaimClapClarifyClawClayCleanClerkCleverClickClientCliffClimbClinicClipClockClogCloseClothCloudClownClubClumpClusterClutchCoachCoastCoconutCodeCoffeeCoilCoinCollectColorColumnCombineComeComfortComicCommonCompanyConcertConductConfirmCongressConnectConsiderControlConvinceCookCoolCopperCopyCoralCoreCornCorrectCostCottonCouchCountryCoupleCourseCousinCoverCoyoteCrackCradleCraftCramCraneCrashCraterCrawlCrazyCreamCreditCreekCrewCricketCrimeCrispCriticCropCrossCrouchCrowdCrucialCruelCruiseCrumbleCrunchCrushCryCrystalCubeCultureCupCupboardCuriousCurrentCurtainCurveCushionCustomCuteCycleDadDamageDampDanceDangerDaringDashDaughterDawnDayDealDebateDebrisDecadeDecemberDecideDeclineDecorateDecreaseDeerDefenseDefineDefyDegreeDelayDeliverDemandDemiseDenialDentistDenyDepartDependDepositDepthDeputyDeriveDescribeDesertDesignDeskDespairDestroyDetailDetectDevelopDeviceDevoteDiagramDialDiamondDiaryDiceDieselDietDifferDigitalDignityDilemmaDinnerDinosaurDirectDirtDisagreeDiscoverDiseaseDishDismissDisorderDisplayDistanceDivertDivideDivorceDizzyDoctorDocumentDogDollDolphinDomainDonateDonkeyDonorDoorDoseDoubleDoveDraftDragonDramaDrasticDrawDreamDressDriftDrillDrinkDripDriveDropDrumDryDuckDumbDuneDuringDustDutchDutyDwarfDynamicEagerEagleEarlyEarnEarthEasilyEastEasyEchoEcologyEconomyEdgeEditEducateEffortEggEightEitherElbowElderElectricElegantElementElephantElevatorEliteElseEmbarkEmbodyEmbraceEmergeEmotionEmployEmpowerEmptyEnableEnactEndEndlessEndorseEnemyEnergyEnforceEngageEngineEnhanceEnjoyEnlistEnoughEnrichEnrollEnsureEnterEntireEntryEnvelopeEpisodeEqualEquipEraEraseErodeErosionErrorEruptEscapeEssayEssenceEstateEternalEthicsEvidenceEvilEvokeEvolveExactExampleExcessExchangeExciteExcludeExcuseExecuteExerciseExhaustExhibitExileExistExitExoticExpandExpectExpireExplainExposeExpressExtendExtraEyeEyebrowFabricFaceFacultyFadeFaintFaithFallFalseFameFamilyFamousFanFancyFantasyFarmFashionFatFatalFatherFatigueFaultFavoriteFeatureFebruaryFederalFeeFeedFeelFemaleFenceFestivalFetchFeverFewFiberFictionFieldFigureFileFilmFilterFinalFindFineFingerFinishFireFirmFirstFiscalFishFitFitnessFixFlagFlameFlashFlatFlavorFleeFlightFlipFloatFlockFloorFlowerFluidFlushFlyFoamFocusFogFoilFoldFollowFoodFootForceForestForgetForkFortuneForumForwardFossilFosterFoundFoxFragileFrameFrequentFreshFriendFringeFrogFrontFrostFrownFrozenFruitFuelFunFunnyFurnaceFuryFutureGadgetGainGalaxyGalleryGameGapGarageGarbageGardenGarlicGarmentGasGaspGateGatherGaugeGazeGeneralGeniusGenreGentleGenuineGestureGhostGiantGiftGiggleGingerGiraffeGirlGiveGladGlanceGlareGlassGlideGlimpseGlobeGloomGloryGloveGlowGlueGoatGoddessGoldGoodGooseGorillaGospelGossipGovernGownGrabGraceGrainGrantGrapeGrassGravityGreatGreenGridGriefGritGroceryGroupGrowGruntGuardGuessGuideGuiltGuitarGunGymHabitHairHalfHammerHamsterHandHappyHarborHardHarshHarvestHatHaveHawkHazardHeadHealthHeartHeavyHedgehogHeightHelloHelmetHelpHenHeroHiddenHighHillHintHipHireHistoryHobbyHockeyHoldHoleHolidayHollowHomeHoneyHoodHopeHornHorrorHorseHospitalHostHotelHourHoverHubHugeHumanHumbleHumorHundredHungryHuntHurdleHurryHurtHusbandHybridIceIconIdeaIdentifyIdleIgnoreIllIllegalIllnessImageImitateImmenseImmuneImpactImposeImproveImpulseInchIncludeIncomeIncreaseIndexIndicateIndoorIndustryInfantInflictInformInhaleInheritInitialInjectInjuryInmateInnerInnocentInputInquiryInsaneInsectInsideInspireInstallIntactInterestIntoInvestInviteInvolveIronIslandIsolateIssueItemIvoryJacketJaguarJarJazzJealousJeansJellyJewelJobJoinJokeJourneyJoyJudgeJuiceJumpJungleJuniorJunkJustKangarooKeenKeepKetchupKeyKickKidKidneyKindKingdomKissKitKitchenKiteKittenKiwiKneeKnifeKnockKnowLabLabelLaborLadderLadyLakeLampLanguageLaptopLargeLaterLatinLaughLaundryLavaLawLawnLawsuitLayerLazyLeaderLeafLearnLeaveLectureLeftLegLegalLegendLeisureLemonLendLengthLensLeopardLessonLetterLevelLiarLibertyLibraryLicenseLifeLiftLightLikeLimbLimitLinkLionLiquidListLittleLiveLizardLoadLoanLobsterLocalLockLogicLonelyLongLoopLotteryLoudLoungeLoveLoyalLuckyLuggageLumberLunarLunchLuxuryLyricsMachineMadMagicMagnetMaidMailMainMajorMakeMammalManManageMandateMangoMansionManualMapleMarbleMarchMarginMarineMarketMarriageMaskMassMasterMatchMaterialMathMatrixMatterMaximumMazeMeadowMeanMeasureMeatMechanicMedalMediaMelodyMeltMemberMemoryMentionMenuMercyMergeMeritMerryMeshMessageMetalMethodMiddleMidnightMilkMillionMimicMindMinimumMinorMinuteMiracleMirrorMiseryMissMistakeMixMixedMixtureMobileModelModifyMomMomentMonitorMonkeyMonsterMonthMoonMoralMoreMorningMosquitoMotherMotionMotorMountainMouseMoveMovieMuchMuffinMuleMultiplyMuscleMuseumMushroomMusicMustMutualMyselfMysteryMythNaiveNameNapkinNarrowNastyNationNatureNearNeckNeedNegativeNeglectNeitherNephewNerveNestNetNetworkNeutralNeverNewsNextNiceNightNobleNoiseNomineeNoodleNormalNorthNoseNotableNoteNothingNoticeNovelNowNuclearNumberNurseNutOakObeyObjectObligeObscureObserveObtainObviousOccurOceanOctoberOdorOffOfferOfficeOftenOilOkayOldOliveOlympicOmitOnceOneOnionOnlineOnlyOpenOperaOpinionOpposeOptionOrangeOrbitOrchardOrderOrdinaryOrganOrientOriginalOrphanOstrichOtherOutdoorOuterOutputOutsideOvalOvenOverOwnOwnerOxygenOysterOzonePactPaddlePagePairPalacePalmPandaPanelPanicPantherPaperParadeParentParkParrotPartyPassPatchPathPatientPatrolPatternPausePavePaymentPeacePeanutPearPeasantPelicanPenPenaltyPencilPeoplePepperPerfectPermitPersonPetPhonePhotoPhrasePhysicalPianoPicnicPicturePiecePigPigeonPillPilotPinkPioneerPipePistolPitchPizzaPlacePlanetPlasticPlatePlayPleasePledgePluckPlugPlungePoemPoetPointPolarPolePolicePondPonyPoolPopularPortionPositionPossiblePostPotatoPotteryPovertyPowderPowerPracticePraisePredictPreferPreparePresentPrettyPreventPricePridePrimaryPrintPriorityPrisonPrivatePrizeProblemProcessProduceProfitProgramProjectPromoteProofPropertyProsperProtectProudProvidePublicPuddingPullPulpPulsePumpkinPunchPupilPuppyPurchasePurityPurposePursePushPutPuzzlePyramidQualityQuantumQuarterQuestionQuickQuitQuizQuoteRabbitRaccoonRaceRackRadarRadioRailRainRaiseRallyRampRanchRandomRangeRapidRareRateRatherRavenRawRazorReadyRealReasonRebelRebuildRecallReceiveRecipeRecordRecycleReduceReflectReformRefuseRegionRegretRegularRejectRelaxReleaseReliefRelyRemainRememberRemindRemoveRenderRenewRentReopenRepairRepeatReplaceReportRequireRescueResembleResistResourceResponseResultRetireRetreatReturnReunionRevealReviewRewardRhythmRibRibbonRiceRichRideRidgeRifleRightRigidRingRiotRippleRiskRitualRivalRiverRoadRoastRobotRobustRocketRomanceRoofRookieRoomRoseRotateRoughRoundRouteRoyalRubberRudeRugRuleRunRunwayRuralSadSaddleSadnessSafeSailSaladSalmonSalonSaltSaluteSameSampleSandSatisfySatoshiSauceSausageSaveSayScaleScanScareScatterSceneSchemeSchoolScienceScissorsScorpionScoutScrapScreenScriptScrubSeaSearchSeasonSeatSecondSecretSectionSecuritySeedSeekSegmentSelectSellSeminarSeniorSenseSentenceSeriesServiceSessionSettleSetupSevenShadowShaftShallowShareShedShellSheriffShieldShiftShineShipShiverShockShoeShootShopShortShoulderShoveShrimpShrugShuffleShySiblingSickSideSiegeSightSignSilentSilkSillySilverSimilarSimpleSinceSingSirenSisterSituateSixSizeSkateSketchSkiSkillSkinSkirtSkullSlabSlamSleepSlenderSliceSlideSlightSlimSloganSlotSlowSlushSmallSmartSmileSmokeSmoothSnackSnakeSnapSniffSnowSoapSoccerSocialSockSodaSoftSolarSoldierSolidSolutionSolveSomeoneSongSoonSorrySortSoulSoundSoupSourceSouthSpaceSpareSpatialSpawnSpeakSpecialSpeedSpellSpendSphereSpiceSpiderSpikeSpinSpiritSplitSpoilSponsorSpoonSportSpotSpraySpreadSpringSpySquareSqueezeSquirrelStableStadiumStaffStageStairsStampStandStartStateStaySteakSteelStemStepStereoStickStillStingStockStomachStoneStoolStoryStoveStrategyStreetStrikeStrongStruggleStudentStuffStumbleStyleSubjectSubmitSubwaySuccessSuchSuddenSufferSugarSuggestSuitSummerSunSunnySunsetSuperSupplySupremeSureSurfaceSurgeSurpriseSurroundSurveySuspectSustainSwallowSwampSwapSwarmSwearSweetSwiftSwimSwingSwitchSwordSymbolSymptomSyrupSystemTableTackleTagTailTalentTalkTankTapeTargetTaskTasteTattooTaxiTeachTeamTellTenTenantTennisTentTermTestTextThankThatThemeThenTheoryThereTheyThingThisThoughtThreeThriveThrowThumbThunderTicketTideTigerTiltTimberTimeTinyTipTiredTissueTitleToastTobaccoTodayToddlerToeTogetherToiletTokenTomatoTomorrowToneTongueTonightToolToothTopTopicToppleTorchTornadoTortoiseTossTotalTouristTowardTowerTownToyTrackTradeTrafficTragicTrainTransferTrapTrashTravelTrayTreatTreeTrendTrialTribeTrickTriggerTrimTripTrophyTroubleTruckTrueTrulyTrumpetTrustTruthTryTubeTuitionTumbleTunaTunnelTurkeyTurnTurtleTwelveTwentyTwiceTwinTwistTwoTypeTypicalUglyUmbrellaUnableUnawareUncleUncoverUnderUndoUnfairUnfoldUnhappyUniformUniqueUnitUniverseUnknownUnlockUntilUnusualUnveilUpdateUpgradeUpholdUponUpperUpsetUrbanUrgeUsageUseUsedUsefulUselessUsualUtilityVacantVacuumVagueValidValleyValveVanVanishVaporVariousVastVaultVehicleVelvetVendorVentureVenueVerbVerifyVersionVeryVesselVeteranViableVibrantViciousVictoryVideoViewVillageVintageViolinVirtualVirusVisaVisitVisualVitalVividVocalVoiceVoidVolcanoVolumeVoteVoyageWageWagonWaitWalkWallWalnutWantWarfareWarmWarriorWashWaspWasteWaterWaveWayWealthWeaponWearWeaselWeatherWebWeddingWeekendWeirdWelcomeWestWetWhaleWhatWheatWheelWhenWhereWhipWhisperWideWidthWifeWildWillWinWindowWineWingWinkWinnerWinterWireWisdomWiseWishWitnessWolfWomanWonderWoodWoolWordWorkWorldWorryWorthWrapWreckWrestleWristWriteWrongYardYearYellowYouYoungYouthZebraZeroZoneZoo";let ai=null;function si(e){if(null==ai&&(ai=ii.replace(/([A-Z])/g," $1").toLowerCase().substring(1).split(" "),"0x3c8acc1e7b08d8e76f9fda015ef48dc8c710a73cb7e0f77b2c18a9b5a7adde60"!==ei.check(e)))throw ai=null,new Error("BIP39 Wordlist for en (English) FAILED")}const li=new class extends ei{constructor(){super("en")}getWord(e){return si(this),ai[e]}getWordIndex(e){return si(this),ai.indexOf(e)}};ei.register(li);const ui="A/bacoAbdomenAbejaAbiertoAbogadoAbonoAbortoAbrazoAbrirAbueloAbusoAcabarAcademiaAccesoAccio/nAceiteAcelgaAcentoAceptarA/cidoAclararAcne/AcogerAcosoActivoActoActrizActuarAcudirAcuerdoAcusarAdictoAdmitirAdoptarAdornoAduanaAdultoAe/reoAfectarAficio/nAfinarAfirmarA/gilAgitarAgoni/aAgostoAgotarAgregarAgrioAguaAgudoA/guilaAgujaAhogoAhorroAireAislarAjedrezAjenoAjusteAlacra/nAlambreAlarmaAlbaA/lbumAlcaldeAldeaAlegreAlejarAlertaAletaAlfilerAlgaAlgodo/nAliadoAlientoAlivioAlmaAlmejaAlmi/barAltarAltezaAltivoAltoAlturaAlumnoAlzarAmableAmanteAmapolaAmargoAmasarA/mbarA/mbitoAmenoAmigoAmistadAmorAmparoAmplioAnchoAncianoAnclaAndarAnde/nAnemiaA/nguloAnilloA/nimoAni/sAnotarAntenaAntiguoAntojoAnualAnularAnuncioA~adirA~ejoA~oApagarAparatoApetitoApioAplicarApodoAporteApoyoAprenderAprobarApuestaApuroAradoAra~aArarA/rbitroA/rbolArbustoArchivoArcoArderArdillaArduoA/reaA/ridoAriesArmoni/aArne/sAromaArpaArpo/nArregloArrozArrugaArteArtistaAsaAsadoAsaltoAscensoAsegurarAseoAsesorAsientoAsiloAsistirAsnoAsombroA/speroAstillaAstroAstutoAsumirAsuntoAtajoAtaqueAtarAtentoAteoA/ticoAtletaA/tomoAtraerAtrozAtu/nAudazAudioAugeAulaAumentoAusenteAutorAvalAvanceAvaroAveAvellanaAvenaAvestruzAvio/nAvisoAyerAyudaAyunoAzafra/nAzarAzoteAzu/carAzufreAzulBabaBaborBacheBahi/aBaileBajarBalanzaBalco/nBaldeBambu/BancoBandaBa~oBarbaBarcoBarnizBarroBa/sculaBasto/nBasuraBatallaBateri/aBatirBatutaBau/lBazarBebe/BebidaBelloBesarBesoBestiaBichoBienBingoBlancoBloqueBlusaBoaBobinaBoboBocaBocinaBodaBodegaBoinaBolaBoleroBolsaBombaBondadBonitoBonoBonsa/iBordeBorrarBosqueBoteBoti/nBo/vedaBozalBravoBrazoBrechaBreveBrilloBrincoBrisaBrocaBromaBronceBroteBrujaBruscoBrutoBuceoBucleBuenoBueyBufandaBufo/nBu/hoBuitreBultoBurbujaBurlaBurroBuscarButacaBuzo/nCaballoCabezaCabinaCabraCacaoCada/verCadenaCaerCafe/Cai/daCaima/nCajaCajo/nCalCalamarCalcioCaldoCalidadCalleCalmaCalorCalvoCamaCambioCamelloCaminoCampoCa/ncerCandilCanelaCanguroCanicaCantoCa~aCa~o/nCaobaCaosCapazCapita/nCapoteCaptarCapuchaCaraCarbo/nCa/rcelCaretaCargaCari~oCarneCarpetaCarroCartaCasaCascoCaseroCaspaCastorCatorceCatreCaudalCausaCazoCebollaCederCedroCeldaCe/lebreCelosoCe/lulaCementoCenizaCentroCercaCerdoCerezaCeroCerrarCertezaCe/spedCetroChacalChalecoChampu/ChanclaChapaCharlaChicoChisteChivoChoqueChozaChuletaChuparCiclo/nCiegoCieloCienCiertoCifraCigarroCimaCincoCineCintaCipre/sCircoCiruelaCisneCitaCiudadClamorClanClaroClaseClaveClienteClimaCli/nicaCobreCoccio/nCochinoCocinaCocoCo/digoCodoCofreCogerCoheteCoji/nCojoColaColchaColegioColgarColinaCollarColmoColumnaCombateComerComidaCo/modoCompraCondeConejoCongaConocerConsejoContarCopaCopiaCorazo/nCorbataCorchoCordo/nCoronaCorrerCoserCosmosCostaCra/neoCra/terCrearCrecerCrei/doCremaCri/aCrimenCriptaCrisisCromoCro/nicaCroquetaCrudoCruzCuadroCuartoCuatroCuboCubrirCucharaCuelloCuentoCuerdaCuestaCuevaCuidarCulebraCulpaCultoCumbreCumplirCunaCunetaCuotaCupo/nCu/pulaCurarCuriosoCursoCurvaCutisDamaDanzaDarDardoDa/tilDeberDe/bilDe/cadaDecirDedoDefensaDefinirDejarDelfi/nDelgadoDelitoDemoraDensoDentalDeporteDerechoDerrotaDesayunoDeseoDesfileDesnudoDestinoDesvi/oDetalleDetenerDeudaDi/aDiabloDiademaDiamanteDianaDiarioDibujoDictarDienteDietaDiezDifi/cilDignoDilemaDiluirDineroDirectoDirigirDiscoDise~oDisfrazDivaDivinoDobleDoceDolorDomingoDonDonarDoradoDormirDorsoDosDosisDrago/nDrogaDuchaDudaDueloDue~oDulceDu/oDuqueDurarDurezaDuroE/banoEbrioEcharEcoEcuadorEdadEdicio/nEdificioEditorEducarEfectoEficazEjeEjemploElefanteElegirElementoElevarElipseE/liteElixirElogioEludirEmbudoEmitirEmocio/nEmpateEmpe~oEmpleoEmpresaEnanoEncargoEnchufeEnci/aEnemigoEneroEnfadoEnfermoEnga~oEnigmaEnlaceEnormeEnredoEnsayoEnse~arEnteroEntrarEnvaseEnvi/oE/pocaEquipoErizoEscalaEscenaEscolarEscribirEscudoEsenciaEsferaEsfuerzoEspadaEspejoEspi/aEsposaEspumaEsqui/EstarEsteEstiloEstufaEtapaEternoE/ticaEtniaEvadirEvaluarEventoEvitarExactoExamenExcesoExcusaExentoExigirExilioExistirE/xitoExpertoExplicarExponerExtremoFa/bricaFa/bulaFachadaFa/cilFactorFaenaFajaFaldaFalloFalsoFaltarFamaFamiliaFamosoFarao/nFarmaciaFarolFarsaFaseFatigaFaunaFavorFaxFebreroFechaFelizFeoFeriaFerozFe/rtilFervorFesti/nFiableFianzaFiarFibraFiccio/nFichaFideoFiebreFielFieraFiestaFiguraFijarFijoFilaFileteFilialFiltroFinFincaFingirFinitoFirmaFlacoFlautaFlechaFlorFlotaFluirFlujoFlu/orFobiaFocaFogataFogo/nFolioFolletoFondoFormaForroFortunaForzarFosaFotoFracasoFra/gilFranjaFraseFraudeFrei/rFrenoFresaFri/oFritoFrutaFuegoFuenteFuerzaFugaFumarFuncio/nFundaFurgo/nFuriaFusilFu/tbolFuturoGacelaGafasGaitaGajoGalaGaleri/aGalloGambaGanarGanchoGangaGansoGarajeGarzaGasolinaGastarGatoGavila/nGemeloGemirGenGe/neroGenioGenteGeranioGerenteGermenGestoGiganteGimnasioGirarGiroGlaciarGloboGloriaGolGolfoGolosoGolpeGomaGordoGorilaGorraGotaGoteoGozarGradaGra/ficoGranoGrasaGratisGraveGrietaGrilloGripeGrisGritoGrosorGru/aGruesoGrumoGrupoGuanteGuapoGuardiaGuerraGui/aGui~oGuionGuisoGuitarraGusanoGustarHaberHa/bilHablarHacerHachaHadaHallarHamacaHarinaHazHaza~aHebillaHebraHechoHeladoHelioHembraHerirHermanoHe/roeHervirHieloHierroHi/gadoHigieneHijoHimnoHistoriaHocicoHogarHogueraHojaHombreHongoHonorHonraHoraHormigaHornoHostilHoyoHuecoHuelgaHuertaHuesoHuevoHuidaHuirHumanoHu/medoHumildeHumoHundirHuraca/nHurtoIconoIdealIdiomaI/doloIglesiaIglu/IgualIlegalIlusio/nImagenIma/nImitarImparImperioImponerImpulsoIncapazI/ndiceInerteInfielInformeIngenioInicioInmensoInmuneInnatoInsectoInstanteIntere/sI/ntimoIntuirInu/tilInviernoIraIrisIroni/aIslaIsloteJabali/Jabo/nJamo/nJarabeJardi/nJarraJaulaJazmi/nJefeJeringaJineteJornadaJorobaJovenJoyaJuergaJuevesJuezJugadorJugoJugueteJuicioJuncoJunglaJunioJuntarJu/piterJurarJustoJuvenilJuzgarKiloKoalaLabioLacioLacraLadoLadro/nLagartoLa/grimaLagunaLaicoLamerLa/minaLa/mparaLanaLanchaLangostaLanzaLa/pizLargoLarvaLa/stimaLataLa/texLatirLaurelLavarLazoLealLeccio/nLecheLectorLeerLegio/nLegumbreLejanoLenguaLentoLe~aLeo/nLeopardoLesio/nLetalLetraLeveLeyendaLibertadLibroLicorLi/derLidiarLienzoLigaLigeroLimaLi/miteLimo/nLimpioLinceLindoLi/neaLingoteLinoLinternaLi/quidoLisoListaLiteraLitioLitroLlagaLlamaLlantoLlaveLlegarLlenarLlevarLlorarLloverLluviaLoboLocio/nLocoLocuraLo/gicaLogroLombrizLomoLonjaLoteLuchaLucirLugarLujoLunaLunesLupaLustroLutoLuzMacetaMachoMaderaMadreMaduroMaestroMafiaMagiaMagoMai/zMaldadMaletaMallaMaloMama/MamboMamutMancoMandoManejarMangaManiqui/ManjarManoMansoMantaMa~anaMapaMa/quinaMarMarcoMareaMarfilMargenMaridoMa/rmolMarro/nMartesMarzoMasaMa/scaraMasivoMatarMateriaMatizMatrizMa/ximoMayorMazorcaMechaMedallaMedioMe/dulaMejillaMejorMelenaMelo/nMemoriaMenorMensajeMenteMenu/MercadoMerengueMe/ritoMesMeso/nMetaMeterMe/todoMetroMezclaMiedoMielMiembroMigaMilMilagroMilitarMillo/nMimoMinaMineroMi/nimoMinutoMiopeMirarMisaMiseriaMisilMismoMitadMitoMochilaMocio/nModaModeloMohoMojarMoldeMolerMolinoMomentoMomiaMonarcaMonedaMonjaMontoMo~oMoradaMorderMorenoMorirMorroMorsaMortalMoscaMostrarMotivoMoverMo/vilMozoMuchoMudarMuebleMuelaMuerteMuestraMugreMujerMulaMuletaMultaMundoMu~ecaMuralMuroMu/sculoMuseoMusgoMu/sicaMusloNa/carNacio/nNadarNaipeNaranjaNarizNarrarNasalNatalNativoNaturalNa/useaNavalNaveNavidadNecioNe/ctarNegarNegocioNegroNeo/nNervioNetoNeutroNevarNeveraNichoNidoNieblaNietoNi~ezNi~oNi/tidoNivelNoblezaNocheNo/minaNoriaNormaNorteNotaNoticiaNovatoNovelaNovioNubeNucaNu/cleoNudilloNudoNueraNueveNuezNuloNu/meroNutriaOasisObesoObispoObjetoObraObreroObservarObtenerObvioOcaOcasoOce/anoOchentaOchoOcioOcreOctavoOctubreOcultoOcuparOcurrirOdiarOdioOdiseaOesteOfensaOfertaOficioOfrecerOgroOi/doOi/rOjoOlaOleadaOlfatoOlivoOllaOlmoOlorOlvidoOmbligoOndaOnzaOpacoOpcio/nO/peraOpinarOponerOptarO/pticaOpuestoOracio/nOradorOralO/rbitaOrcaOrdenOrejaO/rganoOrgi/aOrgulloOrienteOrigenOrillaOroOrquestaOrugaOsadi/aOscuroOseznoOsoOstraOto~oOtroOvejaO/vuloO/xidoOxi/genoOyenteOzonoPactoPadrePaellaPa/ginaPagoPai/sPa/jaroPalabraPalcoPaletaPa/lidoPalmaPalomaPalparPanPanalPa/nicoPanteraPa~ueloPapa/PapelPapillaPaquetePararParcelaParedParirParoPa/rpadoParquePa/rrafoPartePasarPaseoPasio/nPasoPastaPataPatioPatriaPausaPautaPavoPayasoPeato/nPecadoPeceraPechoPedalPedirPegarPeinePelarPelda~oPeleaPeligroPellejoPeloPelucaPenaPensarPe~o/nPeo/nPeorPepinoPeque~oPeraPerchaPerderPerezaPerfilPericoPerlaPermisoPerroPersonaPesaPescaPe/simoPesta~aPe/taloPetro/leoPezPezu~aPicarPicho/nPiePiedraPiernaPiezaPijamaPilarPilotoPimientaPinoPintorPinzaPi~aPiojoPipaPirataPisarPiscinaPisoPistaPito/nPizcaPlacaPlanPlataPlayaPlazaPleitoPlenoPlomoPlumaPluralPobrePocoPoderPodioPoemaPoesi/aPoetaPolenPolici/aPolloPolvoPomadaPomeloPomoPompaPonerPorcio/nPortalPosadaPoseerPosiblePostePotenciaPotroPozoPradoPrecozPreguntaPremioPrensaPresoPrevioPrimoPri/ncipePrisio/nPrivarProaProbarProcesoProductoProezaProfesorProgramaProlePromesaProntoPropioPro/ximoPruebaPu/blicoPucheroPudorPuebloPuertaPuestoPulgaPulirPulmo/nPulpoPulsoPumaPuntoPu~alPu~oPupaPupilaPure/QuedarQuejaQuemarQuererQuesoQuietoQui/micaQuinceQuitarRa/banoRabiaRaboRacio/nRadicalRai/zRamaRampaRanchoRangoRapazRa/pidoRaptoRasgoRaspaRatoRayoRazaRazo/nReaccio/nRealidadReba~oReboteRecaerRecetaRechazoRecogerRecreoRectoRecursoRedRedondoReducirReflejoReformaRefra/nRefugioRegaloRegirReglaRegresoRehe/nReinoRei/rRejaRelatoRelevoRelieveRellenoRelojRemarRemedioRemoRencorRendirRentaRepartoRepetirReposoReptilResRescateResinaRespetoRestoResumenRetiroRetornoRetratoReunirReve/sRevistaReyRezarRicoRiegoRiendaRiesgoRifaRi/gidoRigorRinco/nRi~o/nRi/oRiquezaRisaRitmoRitoRizoRobleRoceRociarRodarRodeoRodillaRoerRojizoRojoRomeroRomperRonRoncoRondaRopaRoperoRosaRoscaRostroRotarRubi/RuborRudoRuedaRugirRuidoRuinaRuletaRuloRumboRumorRupturaRutaRutinaSa/badoSaberSabioSableSacarSagazSagradoSalaSaldoSaleroSalirSalmo/nSalo/nSalsaSaltoSaludSalvarSambaSancio/nSandi/aSanearSangreSanidadSanoSantoSapoSaqueSardinaSarte/nSastreSata/nSaunaSaxofo/nSeccio/nSecoSecretoSectaSedSeguirSeisSelloSelvaSemanaSemillaSendaSensorSe~alSe~orSepararSepiaSequi/aSerSerieSermo/nServirSesentaSesio/nSetaSetentaSeveroSexoSextoSidraSiestaSieteSigloSignoSi/labaSilbarSilencioSillaSi/mboloSimioSirenaSistemaSitioSituarSobreSocioSodioSolSolapaSoldadoSoledadSo/lidoSoltarSolucio/nSombraSondeoSonidoSonoroSonrisaSopaSoplarSoporteSordoSorpresaSorteoSoste/nSo/tanoSuaveSubirSucesoSudorSuegraSueloSue~oSuerteSufrirSujetoSulta/nSumarSuperarSuplirSuponerSupremoSurSurcoSure~oSurgirSustoSutilTabacoTabiqueTablaTabu/TacoTactoTajoTalarTalcoTalentoTallaTalo/nTama~oTamborTangoTanqueTapaTapeteTapiaTapo/nTaquillaTardeTareaTarifaTarjetaTarotTarroTartaTatuajeTauroTazaTazo/nTeatroTechoTeclaTe/cnicaTejadoTejerTejidoTelaTele/fonoTemaTemorTemploTenazTenderTenerTenisTensoTeori/aTerapiaTercoTe/rminoTernuraTerrorTesisTesoroTestigoTeteraTextoTezTibioTiburo/nTiempoTiendaTierraTiesoTigreTijeraTildeTimbreTi/midoTimoTintaTi/oTi/picoTipoTiraTiro/nTita/nTi/tereTi/tuloTizaToallaTobilloTocarTocinoTodoTogaToldoTomarTonoTontoToparTopeToqueTo/raxToreroTormentaTorneoToroTorpedoTorreTorsoTortugaTosToscoToserTo/xicoTrabajoTractorTraerTra/ficoTragoTrajeTramoTranceTratoTraumaTrazarTre/bolTreguaTreintaTrenTreparTresTribuTrigoTripaTristeTriunfoTrofeoTrompaTroncoTropaTroteTrozoTrucoTruenoTrufaTuberi/aTuboTuertoTumbaTumorTu/nelTu/nicaTurbinaTurismoTurnoTutorUbicarU/lceraUmbralUnidadUnirUniversoUnoUntarU~aUrbanoUrbeUrgenteUrnaUsarUsuarioU/tilUtopi/aUvaVacaVaci/oVacunaVagarVagoVainaVajillaValeVa/lidoValleValorVa/lvulaVampiroVaraVariarVaro/nVasoVecinoVectorVehi/culoVeinteVejezVelaVeleroVelozVenaVencerVendaVenenoVengarVenirVentaVenusVerVeranoVerboVerdeVeredaVerjaVersoVerterVi/aViajeVibrarVicioVi/ctimaVidaVi/deoVidrioViejoViernesVigorVilVillaVinagreVinoVi~edoVioli/nViralVirgoVirtudVisorVi/speraVistaVitaminaViudoVivazViveroVivirVivoVolca/nVolumenVolverVorazVotarVotoVozVueloVulgarYacerYateYeguaYemaYernoYesoYodoYogaYogurZafiroZanjaZapatoZarzaZonaZorroZumoZurdo",ci={};let hi=null;function di(e){return $n.checkNormalize(),Et(Array.prototype.filter.call(Tt(e.normalize("NFD").toLowerCase()),e=>e>=65&&e<=90||e>=97&&e<=123))}function fi(e){if(null==hi&&(hi=ui.replace(/([A-Z])/g," $1").toLowerCase().substring(1).split(" ").map(e=>(function(e){const t=[];return Array.prototype.forEach.call(Tt(e),e=>{47===e?(t.push(204),t.push(129)):126===e?(t.push(110),t.push(204),t.push(131)):t.push(e)}),Et(t)})(e)),hi.forEach((e,t)=>{ci[di(e)]=t}),"0xf74fb7092aeacdfbf8959557de22098da512207fb9f109cb526994938cf40300"!==ei.check(e)))throw hi=null,new Error("BIP39 Wordlist for es (Spanish) FAILED")}const pi=new class extends ei{constructor(){super("es")}getWord(e){return fi(this),hi[e]}getWordIndex(e){fi(this);const t=ci[di(e)];return"number"!=typeof t?-1:t}};ei.register(pi);const mi="AbaisserAbandonAbdiquerAbeilleAbolirAborderAboutirAboyerAbrasifAbreuverAbriterAbrogerAbruptAbsenceAbsoluAbsurdeAbusifAbyssalAcade/mieAcajouAcarienAccablerAccepterAcclamerAccoladeAccrocheAccuserAcerbeAchatAcheterAcidulerAcierAcompteAcque/rirAcronymeActeurActifActuelAdepteAde/quatAdhe/sifAdjectifAdjugerAdmettreAdmirerAdopterAdorerAdoucirAdresseAdroitAdulteAdverbeAe/rerAe/ronefAffaireAffecterAfficheAffreuxAffublerAgacerAgencerAgileAgiterAgraferAgre/ableAgrumeAiderAiguilleAilierAimableAisanceAjouterAjusterAlarmerAlchimieAlerteAlge-breAlgueAlie/nerAlimentAlle/gerAlliageAllouerAllumerAlourdirAlpagaAltesseAlve/oleAmateurAmbiguAmbreAme/nagerAmertumeAmidonAmiralAmorcerAmourAmovibleAmphibieAmpleurAmusantAnalyseAnaphoreAnarchieAnatomieAncienAne/antirAngleAngoisseAnguleuxAnimalAnnexerAnnonceAnnuelAnodinAnomalieAnonymeAnormalAntenneAntidoteAnxieuxApaiserApe/ritifAplanirApologieAppareilAppelerApporterAppuyerAquariumAqueducArbitreArbusteArdeurArdoiseArgentArlequinArmatureArmementArmoireArmureArpenterArracherArriverArroserArsenicArte/rielArticleAspectAsphalteAspirerAssautAsservirAssietteAssocierAssurerAsticotAstreAstuceAtelierAtomeAtriumAtroceAttaqueAttentifAttirerAttraperAubaineAubergeAudaceAudibleAugurerAuroreAutomneAutrucheAvalerAvancerAvariceAvenirAverseAveugleAviateurAvideAvionAviserAvoineAvouerAvrilAxialAxiomeBadgeBafouerBagageBaguetteBaignadeBalancerBalconBaleineBalisageBambinBancaireBandageBanlieueBannie-reBanquierBarbierBarilBaronBarqueBarrageBassinBastionBatailleBateauBatterieBaudrierBavarderBeletteBe/lierBeloteBe/ne/ficeBerceauBergerBerlineBermudaBesaceBesogneBe/tailBeurreBiberonBicycleBiduleBijouBilanBilingueBillardBinaireBiologieBiopsieBiotypeBiscuitBisonBistouriBitumeBizarreBlafardBlagueBlanchirBlessantBlinderBlondBloquerBlousonBobardBobineBoireBoiserBolideBonbonBondirBonheurBonifierBonusBordureBorneBotteBoucleBoueuxBougieBoulonBouquinBourseBoussoleBoutiqueBoxeurBrancheBrasierBraveBrebisBre-cheBreuvageBricolerBrigadeBrillantBriocheBriqueBrochureBroderBronzerBrousseBroyeurBrumeBrusqueBrutalBruyantBuffleBuissonBulletinBureauBurinBustierButinerButoirBuvableBuvetteCabanonCabineCachetteCadeauCadreCafe/ineCaillouCaissonCalculerCalepinCalibreCalmerCalomnieCalvaireCamaradeCame/raCamionCampagneCanalCanetonCanonCantineCanularCapableCaporalCapriceCapsuleCapterCapucheCarabineCarboneCaresserCaribouCarnageCarotteCarreauCartonCascadeCasierCasqueCassureCauserCautionCavalierCaverneCaviarCe/dilleCeintureCe/lesteCelluleCendrierCensurerCentralCercleCe/re/bralCeriseCernerCerveauCesserChagrinChaiseChaleurChambreChanceChapitreCharbonChasseurChatonChaussonChavirerChemiseChenilleChe/quierChercherChevalChienChiffreChignonChime-reChiotChlorureChocolatChoisirChoseChouetteChromeChuteCigareCigogneCimenterCine/maCintrerCirculerCirerCirqueCiterneCitoyenCitronCivilClaironClameurClaquerClasseClavierClientClignerClimatClivageClocheClonageCloporteCobaltCobraCocasseCocotierCoderCodifierCoffreCognerCohe/sionCoifferCoincerCole-reColibriCollineColmaterColonelCombatCome/dieCommandeCompactConcertConduireConfierCongelerConnoterConsonneContactConvexeCopainCopieCorailCorbeauCordageCornicheCorpusCorrectCorte-geCosmiqueCostumeCotonCoudeCoupureCourageCouteauCouvrirCoyoteCrabeCrainteCravateCrayonCre/atureCre/diterCre/meuxCreuserCrevetteCriblerCrierCristalCrite-reCroireCroquerCrotaleCrucialCruelCrypterCubiqueCueillirCuille-reCuisineCuivreCulminerCultiverCumulerCupideCuratifCurseurCyanureCycleCylindreCyniqueDaignerDamierDangerDanseurDauphinDe/battreDe/biterDe/borderDe/briderDe/butantDe/calerDe/cembreDe/chirerDe/ciderDe/clarerDe/corerDe/crireDe/cuplerDe/daleDe/ductifDe/esseDe/fensifDe/filerDe/frayerDe/gagerDe/givrerDe/glutirDe/graferDe/jeunerDe/liceDe/logerDemanderDemeurerDe/molirDe/nicherDe/nouerDentelleDe/nuderDe/partDe/penserDe/phaserDe/placerDe/poserDe/rangerDe/roberDe/sastreDescenteDe/sertDe/signerDe/sobe/irDessinerDestrierDe/tacherDe/testerDe/tourerDe/tresseDevancerDevenirDevinerDevoirDiableDialogueDiamantDicterDiffe/rerDige/rerDigitalDigneDiluerDimancheDiminuerDioxydeDirectifDirigerDiscuterDisposerDissiperDistanceDivertirDiviserDocileDocteurDogmeDoigtDomaineDomicileDompterDonateurDonjonDonnerDopamineDortoirDorureDosageDoseurDossierDotationDouanierDoubleDouceurDouterDoyenDragonDraperDresserDribblerDroitureDuperieDuplexeDurableDurcirDynastieE/blouirE/carterE/charpeE/chelleE/clairerE/clipseE/cloreE/cluseE/coleE/conomieE/corceE/couterE/craserE/cre/merE/crivainE/crouE/cumeE/cureuilE/difierE/duquerEffacerEffectifEffigieEffortEffrayerEffusionE/galiserE/garerE/jecterE/laborerE/largirE/lectronE/le/gantE/le/phantE/le-veE/ligibleE/litismeE/logeE/luciderE/luderEmballerEmbellirEmbryonE/meraudeE/missionEmmenerE/motionE/mouvoirEmpereurEmployerEmporterEmpriseE/mulsionEncadrerEnche-reEnclaveEncocheEndiguerEndosserEndroitEnduireE/nergieEnfanceEnfermerEnfouirEngagerEnginEngloberE/nigmeEnjamberEnjeuEnleverEnnemiEnnuyeuxEnrichirEnrobageEnseigneEntasserEntendreEntierEntourerEntraverE/nume/rerEnvahirEnviableEnvoyerEnzymeE/olienE/paissirE/pargneE/patantE/pauleE/picerieE/pide/mieE/pierE/pilogueE/pineE/pisodeE/pitapheE/poqueE/preuveE/prouverE/puisantE/querreE/quipeE/rigerE/rosionErreurE/ruptionEscalierEspadonEspe-ceEspie-gleEspoirEspritEsquiverEssayerEssenceEssieuEssorerEstimeEstomacEstradeE/tage-reE/talerE/tancheE/tatiqueE/teindreE/tendoirE/ternelE/thanolE/thiqueEthnieE/tirerE/tofferE/toileE/tonnantE/tourdirE/trangeE/troitE/tudeEuphorieE/valuerE/vasionE/ventailE/videnceE/viterE/volutifE/voquerExactExage/rerExaucerExcellerExcitantExclusifExcuseExe/cuterExempleExercerExhalerExhorterExigenceExilerExisterExotiqueExpe/dierExplorerExposerExprimerExquisExtensifExtraireExulterFableFabuleuxFacetteFacileFactureFaiblirFalaiseFameuxFamilleFarceurFarfeluFarineFaroucheFascinerFatalFatigueFauconFautifFaveurFavoriFe/brileFe/conderFe/de/rerFe/linFemmeFe/murFendoirFe/odalFermerFe/roceFerveurFestivalFeuilleFeutreFe/vrierFiascoFicelerFictifFide-leFigureFilatureFiletageFilie-reFilleulFilmerFilouFiltrerFinancerFinirFioleFirmeFissureFixerFlairerFlammeFlasqueFlatteurFle/auFle-cheFleurFlexionFloconFloreFluctuerFluideFluvialFolieFonderieFongibleFontaineForcerForgeronFormulerFortuneFossileFoudreFouge-reFouillerFoulureFourmiFragileFraiseFranchirFrapperFrayeurFre/gateFreinerFrelonFre/mirFre/ne/sieFre-reFriableFrictionFrissonFrivoleFroidFromageFrontalFrotterFruitFugitifFuiteFureurFurieuxFurtifFusionFuturGagnerGalaxieGalerieGambaderGarantirGardienGarnirGarrigueGazelleGazonGe/antGe/latineGe/luleGendarmeGe/ne/ralGe/nieGenouGentilGe/ologieGe/ome-treGe/raniumGermeGestuelGeyserGibierGiclerGirafeGivreGlaceGlaiveGlisserGlobeGloireGlorieuxGolfeurGommeGonflerGorgeGorilleGoudronGouffreGoulotGoupilleGourmandGoutteGraduelGraffitiGraineGrandGrappinGratuitGravirGrenatGriffureGrillerGrimperGrognerGronderGrotteGroupeGrugerGrutierGruye-reGue/pardGuerrierGuideGuimauveGuitareGustatifGymnasteGyrostatHabitudeHachoirHalteHameauHangarHannetonHaricotHarmonieHarponHasardHe/liumHe/matomeHerbeHe/rissonHermineHe/ronHe/siterHeureuxHibernerHibouHilarantHistoireHiverHomardHommageHomoge-neHonneurHonorerHonteuxHordeHorizonHorlogeHormoneHorribleHouleuxHousseHublotHuileuxHumainHumbleHumideHumourHurlerHydromelHygie-neHymneHypnoseIdylleIgnorerIguaneIlliciteIllusionImageImbiberImiterImmenseImmobileImmuableImpactImpe/rialImplorerImposerImprimerImputerIncarnerIncendieIncidentInclinerIncoloreIndexerIndiceInductifIne/ditIneptieInexactInfiniInfligerInformerInfusionInge/rerInhalerInhiberInjecterInjureInnocentInoculerInonderInscrireInsecteInsigneInsoliteInspirerInstinctInsulterIntactIntenseIntimeIntrigueIntuitifInutileInvasionInventerInviterInvoquerIroniqueIrradierIrre/elIrriterIsolerIvoireIvresseJaguarJaillirJambeJanvierJardinJaugerJauneJavelotJetableJetonJeudiJeunesseJoindreJoncherJonglerJoueurJouissifJournalJovialJoyauJoyeuxJubilerJugementJuniorJuponJuristeJusticeJuteuxJuve/nileKayakKimonoKiosqueLabelLabialLabourerLace/rerLactoseLaguneLaineLaisserLaitierLambeauLamelleLampeLanceurLangageLanterneLapinLargeurLarmeLaurierLavaboLavoirLectureLe/galLe/gerLe/gumeLessiveLettreLevierLexiqueLe/zardLiasseLibe/rerLibreLicenceLicorneLie-geLie-vreLigatureLigoterLigueLimerLimiteLimonadeLimpideLine/aireLingotLionceauLiquideLisie-reListerLithiumLitigeLittoralLivreurLogiqueLointainLoisirLombricLoterieLouerLourdLoutreLouveLoyalLubieLucideLucratifLueurLugubreLuisantLumie-reLunaireLundiLuronLutterLuxueuxMachineMagasinMagentaMagiqueMaigreMaillonMaintienMairieMaisonMajorerMalaxerMale/ficeMalheurMaliceMalletteMammouthMandaterManiableManquantManteauManuelMarathonMarbreMarchandMardiMaritimeMarqueurMarronMartelerMascotteMassifMate/rielMatie-reMatraqueMaudireMaussadeMauveMaximalMe/chantMe/connuMe/dailleMe/decinMe/diterMe/duseMeilleurMe/langeMe/lodieMembreMe/moireMenacerMenerMenhirMensongeMentorMercrediMe/riteMerleMessagerMesureMe/talMe/te/oreMe/thodeMe/tierMeubleMiaulerMicrobeMietteMignonMigrerMilieuMillionMimiqueMinceMine/ralMinimalMinorerMinuteMiracleMiroiterMissileMixteMobileModerneMoelleuxMondialMoniteurMonnaieMonotoneMonstreMontagneMonumentMoqueurMorceauMorsureMortierMoteurMotifMoucheMoufleMoulinMoussonMoutonMouvantMultipleMunitionMurailleMure-neMurmureMuscleMuse/umMusicienMutationMuterMutuelMyriadeMyrtilleMyste-reMythiqueNageurNappeNarquoisNarrerNatationNationNatureNaufrageNautiqueNavireNe/buleuxNectarNe/fasteNe/gationNe/gligerNe/gocierNeigeNerveuxNettoyerNeuroneNeutronNeveuNicheNickelNitrateNiveauNobleNocifNocturneNoirceurNoisetteNomadeNombreuxNommerNormatifNotableNotifierNotoireNourrirNouveauNovateurNovembreNoviceNuageNuancerNuireNuisibleNume/roNuptialNuqueNutritifObe/irObjectifObligerObscurObserverObstacleObtenirObturerOccasionOccuperOce/anOctobreOctroyerOctuplerOculaireOdeurOdorantOffenserOfficierOffrirOgiveOiseauOisillonOlfactifOlivierOmbrageOmettreOnctueuxOndulerOne/reuxOniriqueOpaleOpaqueOpe/rerOpinionOpportunOpprimerOpterOptiqueOrageuxOrangeOrbiteOrdonnerOreilleOrganeOrgueilOrificeOrnementOrqueOrtieOscillerOsmoseOssatureOtarieOuraganOursonOutilOutragerOuvrageOvationOxydeOxyge-neOzonePaisiblePalacePalmare-sPalourdePalperPanachePandaPangolinPaniquerPanneauPanoramaPantalonPapayePapierPapoterPapyrusParadoxeParcelleParesseParfumerParlerParoleParrainParsemerPartagerParureParvenirPassionPaste-quePaternelPatiencePatronPavillonPavoiserPayerPaysagePeignePeintrePelagePe/licanPellePelousePeluchePendulePe/ne/trerPe/niblePensifPe/nuriePe/pitePe/plumPerdrixPerforerPe/riodePermuterPerplexePersilPertePeserPe/talePetitPe/trirPeuplePharaonPhobiePhoquePhotonPhrasePhysiquePianoPicturalPie-cePierrePieuvrePilotePinceauPipettePiquerPiroguePiscinePistonPivoterPixelPizzaPlacardPlafondPlaisirPlanerPlaquePlastronPlateauPleurerPlexusPliagePlombPlongerPluiePlumagePochettePoe/siePoe-tePointePoirierPoissonPoivrePolairePolicierPollenPolygonePommadePompierPonctuelPonde/rerPoneyPortiquePositionPosse/derPosturePotagerPoteauPotionPoucePoulainPoumonPourprePoussinPouvoirPrairiePratiquePre/cieuxPre/direPre/fixePre/ludePre/nomPre/sencePre/textePre/voirPrimitifPrincePrisonPriverProble-meProce/derProdigeProfondProgre-sProieProjeterProloguePromenerPropreProspe-reProte/gerProuesseProverbePrudencePruneauPsychosePublicPuceronPuiserPulpePulsarPunaisePunitifPupitrePurifierPuzzlePyramideQuasarQuerelleQuestionQuie/tudeQuitterQuotientRacineRaconterRadieuxRagondinRaideurRaisinRalentirRallongeRamasserRapideRasageRatisserRavagerRavinRayonnerRe/actifRe/agirRe/aliserRe/animerRecevoirRe/citerRe/clamerRe/colterRecruterReculerRecyclerRe/digerRedouterRefaireRe/flexeRe/formerRefrainRefugeRe/galienRe/gionRe/glageRe/gulierRe/ite/rerRejeterRejouerRelatifReleverReliefRemarqueReme-deRemiseRemonterRemplirRemuerRenardRenfortReniflerRenoncerRentrerRenvoiReplierReporterRepriseReptileRequinRe/serveRe/sineuxRe/soudreRespectResterRe/sultatRe/tablirRetenirRe/ticuleRetomberRetracerRe/unionRe/ussirRevancheRevivreRe/volteRe/vulsifRichesseRideauRieurRigideRigolerRincerRiposterRisibleRisqueRituelRivalRivie-reRocheuxRomanceRompreRonceRondinRoseauRosierRotatifRotorRotuleRougeRouilleRouleauRoutineRoyaumeRubanRubisRucheRuelleRugueuxRuinerRuisseauRuserRustiqueRythmeSablerSaboterSabreSacocheSafariSagesseSaisirSaladeSaliveSalonSaluerSamediSanctionSanglierSarcasmeSardineSaturerSaugrenuSaumonSauterSauvageSavantSavonnerScalpelScandaleSce/le/ratSce/narioSceptreSche/maScienceScinderScoreScrutinSculpterSe/anceSe/cableSe/cherSecouerSe/cre/terSe/datifSe/duireSeigneurSe/jourSe/lectifSemaineSemblerSemenceSe/minalSe/nateurSensibleSentenceSe/parerSe/quenceSereinSergentSe/rieuxSerrureSe/rumServiceSe/sameSe/virSevrageSextupleSide/ralSie-cleSie/gerSifflerSigleSignalSilenceSiliciumSimpleSince-reSinistreSiphonSiropSismiqueSituerSkierSocialSocleSodiumSoigneuxSoldatSoleilSolitudeSolubleSombreSommeilSomnolerSondeSongeurSonnetteSonoreSorcierSortirSosieSottiseSoucieuxSoudureSouffleSouleverSoupapeSourceSoutirerSouvenirSpacieuxSpatialSpe/cialSphe-reSpiralStableStationSternumStimulusStipulerStrictStudieuxStupeurStylisteSublimeSubstratSubtilSubvenirSucce-sSucreSuffixeSugge/rerSuiveurSulfateSuperbeSupplierSurfaceSuricateSurmenerSurpriseSursautSurvieSuspectSyllabeSymboleSyme/trieSynapseSyntaxeSyste-meTabacTablierTactileTaillerTalentTalismanTalonnerTambourTamiserTangibleTapisTaquinerTarderTarifTartineTasseTatamiTatouageTaupeTaureauTaxerTe/moinTemporelTenailleTendreTeneurTenirTensionTerminerTerneTerribleTe/tineTexteThe-meThe/orieThe/rapieThoraxTibiaTie-deTimideTirelireTiroirTissuTitaneTitreTituberTobogganTole/rantTomateToniqueTonneauToponymeTorcheTordreTornadeTorpilleTorrentTorseTortueTotemToucherTournageTousserToxineTractionTraficTragiqueTrahirTrainTrancherTravailTre-fleTremperTre/sorTreuilTriageTribunalTricoterTrilogieTriompheTriplerTriturerTrivialTromboneTroncTropicalTroupeauTuileTulipeTumulteTunnelTurbineTuteurTutoyerTuyauTympanTyphonTypiqueTyranUbuesqueUltimeUltrasonUnanimeUnifierUnionUniqueUnitaireUniversUraniumUrbainUrticantUsageUsineUsuelUsureUtileUtopieVacarmeVaccinVagabondVagueVaillantVaincreVaisseauValableValiseVallonValveVampireVanilleVapeurVarierVaseuxVassalVasteVecteurVedetteVe/ge/talVe/hiculeVeinardVe/loceVendrediVe/ne/rerVengerVenimeuxVentouseVerdureVe/rinVernirVerrouVerserVertuVestonVe/te/ranVe/tusteVexantVexerViaducViandeVictoireVidangeVide/oVignetteVigueurVilainVillageVinaigreViolonVipe-reVirementVirtuoseVirusVisageViseurVisionVisqueuxVisuelVitalVitesseViticoleVitrineVivaceVivipareVocationVoguerVoileVoisinVoitureVolailleVolcanVoltigerVolumeVoraceVortexVoterVouloirVoyageVoyelleWagonXe/nonYachtZe-breZe/nithZesteZoologie";let gi=null;const vi={};function bi(e){return $n.checkNormalize(),Et(Array.prototype.filter.call(Tt(e.normalize("NFD").toLowerCase()),e=>e>=65&&e<=90||e>=97&&e<=123))}function yi(e){if(null==gi&&(gi=mi.replace(/([A-Z])/g," $1").toLowerCase().substring(1).split(" ").map(e=>(function(e){const t=[];return Array.prototype.forEach.call(Tt(e),e=>{47===e?(t.push(204),t.push(129)):45===e?(t.push(204),t.push(128)):t.push(e)}),Et(t)})(e)),gi.forEach((e,t)=>{vi[bi(e)]=t}),"0x51deb7ae009149dc61a6bd18a918eb7ac78d2775726c68e598b92d002519b045"!==ei.check(e)))throw gi=null,new Error("BIP39 Wordlist for fr (French) FAILED")}const Ai=new class extends ei{constructor(){super("fr")}getWord(e){return yi(this),gi[e]}getWordIndex(e){yi(this);const t=vi[bi(e)];return"number"!=typeof t?-1:t}};ei.register(Ai);const Si=["AQRASRAGBAGUAIRAHBAghAURAdBAdcAnoAMEAFBAFCBKFBQRBSFBCXBCDBCHBGFBEQBpBBpQBIkBHNBeOBgFBVCBhBBhNBmOBmRBiHBiFBUFBZDBvFBsXBkFBlcBjYBwDBMBBTBBTRBWBBWXXaQXaRXQWXSRXCFXYBXpHXOQXHRXhRXuRXmXXbRXlXXwDXTRXrCXWQXWGaBWaKcaYgasFadQalmaMBacAKaRKKBKKXKKjKQRKDRKCYKCRKIDKeVKHcKlXKjHKrYNAHNBWNaRNKcNIBNIONmXNsXNdXNnBNMBNRBNrXNWDNWMNFOQABQAHQBrQXBQXFQaRQKXQKDQKOQKFQNBQNDQQgQCXQCDQGBQGDQGdQYXQpBQpQQpHQLXQHuQgBQhBQhCQuFQmXQiDQUFQZDQsFQdRQkHQbRQlOQlmQPDQjDQwXQMBQMDQcFQTBQTHQrDDXQDNFDGBDGQDGRDpFDhFDmXDZXDbRDMYDRdDTRDrXSAhSBCSBrSGQSEQSHBSVRShYShkSyQSuFSiBSdcSoESocSlmSMBSFBSFKSFNSFdSFcCByCaRCKcCSBCSRCCrCGbCEHCYXCpBCpQCIBCIHCeNCgBCgFCVECVcCmkCmwCZXCZFCdRClOClmClFCjDCjdCnXCwBCwXCcRCFQCFjGXhGNhGDEGDMGCDGCHGIFGgBGVXGVEGVRGmXGsXGdYGoSGbRGnXGwXGwDGWRGFNGFLGFOGFdGFkEABEBDEBFEXOEaBEKSENBENDEYXEIgEIkEgBEgQEgHEhFEudEuFEiBEiHEiFEZDEvBEsXEsFEdXEdREkFEbBEbRElFEPCEfkEFNYAEYAhYBNYQdYDXYSRYCEYYoYgQYgRYuRYmCYZTYdBYbEYlXYjQYRbYWRpKXpQopQnpSFpCXpIBpISphNpdBpdRpbRpcZpFBpFNpFDpFopFrLADLBuLXQLXcLaFLCXLEhLpBLpFLHXLeVLhILdHLdRLoDLbRLrXIABIBQIBCIBsIBoIBMIBRIXaIaRIKYIKRINBINuICDIGBIIDIIkIgRIxFIyQIiHIdRIbYIbRIlHIwRIMYIcRIRVITRIFBIFNIFQOABOAFOBQOaFONBONMOQFOSFOCDOGBOEQOpBOLXOIBOIFOgQOgFOyQOycOmXOsXOdIOkHOMEOMkOWWHBNHXNHXWHNXHDuHDRHSuHSRHHoHhkHmRHdRHkQHlcHlRHwBHWcgAEgAggAkgBNgBQgBEgXOgYcgLXgHjgyQgiBgsFgdagMYgWSgFQgFEVBTVXEVKBVKNVKDVKYVKRVNBVNYVDBVDxVSBVSRVCjVGNVLXVIFVhBVhcVsXVdRVbRVlRhBYhKYhDYhGShxWhmNhdahdkhbRhjohMXhTRxAXxXSxKBxNBxEQxeNxeQxhXxsFxdbxlHxjcxFBxFNxFQxFOxFoyNYyYoybcyMYuBQuBRuBruDMuCouHBudQukkuoBulVuMXuFEmCYmCRmpRmeDmiMmjdmTFmFQiADiBOiaRiKRiNBiNRiSFiGkiGFiERipRiLFiIFihYibHijBijEiMXiWBiFBiFCUBQUXFUaRUNDUNcUNRUNFUDBUSHUCDUGBUGFUEqULNULoUIRUeEUeYUgBUhFUuRUiFUsXUdFUkHUbBUjSUjYUwXUMDUcHURdUTBUrBUrXUrQZAFZXZZaRZKFZNBZQFZCXZGBZYdZpBZLDZIFZHXZHNZeQZVRZVFZmXZiBZvFZdFZkFZbHZbFZwXZcCZcRZRBvBQvBGvBLvBWvCovMYsAFsBDsaRsKFsNFsDrsSHsSFsCXsCRsEBsEHsEfspBsLBsLDsIgsIRseGsbRsFBsFQsFSdNBdSRdCVdGHdYDdHcdVbdySduDdsXdlRdwXdWYdWcdWRkBMkXOkaRkNIkNFkSFkCFkYBkpRkeNkgBkhVkmXksFklVkMBkWDkFNoBNoaQoaFoNBoNXoNaoNEoSRoEroYXoYCoYbopRopFomXojkowXorFbBEbEIbdBbjYlaRlDElMXlFDjKjjSRjGBjYBjYkjpRjLXjIBjOFjeVjbRjwBnXQnSHnpFnLXnINnMBnTRwXBwXNwXYwNFwQFwSBwGFwLXwLDweNwgBwuHwjDwnXMBXMpFMIBMeNMTHcaQcNBcDHcSFcCXcpBcLXcLDcgFcuFcnXcwXccDcTQcrFTQErXNrCHrpFrgFrbFrTHrFcWNYWNbWEHWMXWTR","ABGHABIJAEAVAYJQALZJAIaRAHNXAHdcAHbRAZJMAZJRAZTRAdVJAklmAbcNAjdRAMnRAMWYAWpRAWgRAFgBAFhBAFdcBNJBBNJDBQKBBQhcBQlmBDEJBYJkBYJTBpNBBpJFBIJBBIJDBIcABOKXBOEJBOVJBOiJBOZJBepBBeLXBeIFBegBBgGJBVJXBuocBiJRBUJQBlXVBlITBwNFBMYVBcqXBTlmBWNFBWiJBWnRBFGHBFwXXKGJXNJBXNZJXDTTXSHSXSVRXSlHXCJDXGQJXEhXXYQJXYbRXOfXXeNcXVJFXhQJXhEJXdTRXjdXXMhBXcQTXRGBXTEBXTnQXFCXXFOFXFgFaBaFaBNJaBCJaBpBaBwXaNJKaNJDaQIBaDpRaEPDaHMFamDJalEJaMZJaFaFaFNBaFQJaFLDaFVHKBCYKBEBKBHDKXaFKXGdKXEJKXpHKXIBKXZDKXwXKKwLKNacKNYJKNJoKNWcKDGdKDTRKChXKGaRKGhBKGbRKEBTKEaRKEPTKLMDKLWRKOHDKVJcKdBcKlIBKlOPKFSBKFEPKFpFNBNJNJBQNBGHNBEPNBHXNBgFNBVXNBZDNBsXNBwXNNaRNNJDNNJENNJkNDCJNDVDNGJRNJiDNZJNNsCJNJFNNFSBNFCXNFEPNFLXNFIFQJBFQCaRQJEQQLJDQLJFQIaRQOqXQHaFQHHQQVJXQVJDQhNJQmEIQZJFQsJXQJrFQWbRDJABDBYJDXNFDXCXDXLXDXZDDXsJDQqXDSJFDJCXDEPkDEqXDYmQDpSJDOCkDOGQDHEIDVJDDuDuDWEBDJFgSBNDSBSFSBGHSBIBSBTQSKVYSJQNSJQiSJCXSEqXSJYVSIiJSOMYSHAHSHaQSeCFSepQSegBSHdHSHrFShSJSJuHSJUFSkNRSrSrSWEBSFaHSJFQSFCXSFGDSFYXSFODSFgBSFVXSFhBSFxFSFkFSFbBSFMFCADdCJXBCXaFCXKFCXNFCXCXCXGBCXEJCXYBCXLDCXIBCXOPCXHXCXgBCXhBCXiBCXlDCXcHCJNBCJNFCDCJCDGBCDVXCDhBCDiDCDJdCCmNCpJFCIaRCOqXCHCHCHZJCViJCuCuCmddCJiFCdNBCdHhClEJCnUJCreSCWlgCWTRCFBFCFNBCFYBCFVFCFhFCFdSCFTBCFWDGBNBGBQFGJBCGBEqGBpBGBgQGNBEGNJYGNkOGNJRGDUFGJpQGHaBGJeNGJeEGVBlGVKjGiJDGvJHGsVJGkEBGMIJGWjNGFBFGFCXGFGBGFYXGFpBGFMFEASJEAWpEJNFECJVEIXSEIQJEOqXEOcFEeNcEHEJEHlFEJgFEhlmEmDJEmZJEiMBEUqXEoSREPBFEPXFEPKFEPSFEPEFEPpFEPLXEPIBEJPdEPcFEPTBEJnXEqlHEMpREFCXEFODEFcFYASJYJAFYBaBYBVXYXpFYDhBYCJBYJGFYYbRYeNcYJeVYiIJYZJcYvJgYvJRYJsXYsJFYMYMYreVpBNHpBEJpBwXpQxFpYEJpeNDpJeDpeSFpeCHpHUJpHbBpHcHpmUJpiiJpUJrpsJuplITpFaBpFQqpFGBpFEfpFYBpFpBpFLJpFIDpFgBpFVXpFyQpFuFpFlFpFjDpFnXpFwXpJFMpFTBLXCJLXEFLXhFLXUJLXbFLalmLNJBLSJQLCLCLGJBLLDJLHaFLeNFLeSHLeCXLepFLhaRLZsJLsJDLsJrLocaLlLlLMdbLFNBLFSBLFEHLFkFIBBFIBXFIBaQIBKXIBSFIBpHIBLXIBgBIBhBIBuHIBmXIBiFIBZXIBvFIBbFIBjQIBwXIBWFIKTRIQUJIDGFICjQIYSRIINXIJeCIVaRImEkIZJFIvJRIsJXIdCJIJoRIbBQIjYBIcqXITFVIreVIFKFIFSFIFCJIFGFIFLDIFIBIJFOIFgBIFVXIJFhIFxFIFmXIFdHIFbBIJFrIJFWOBGBOQfXOOKjOUqXOfXBOqXEOcqXORVJOFIBOFlDHBIOHXiFHNTRHCJXHIaRHHJDHHEJHVbRHZJYHbIBHRsJHRkDHWlmgBKFgBSBgBCDgBGHgBpBgBIBgBVJgBuBgBvFgKDTgQVXgDUJgGSJgOqXgmUMgZIJgTUJgWIEgFBFgFNBgFDJgFSFgFGBgFYXgJFOgFgQgFVXgFhBgFbHgJFWVJABVQKcVDgFVOfXVeDFVhaRVmGdViJYVMaRVFNHhBNDhBCXhBEqhBpFhBLXhNJBhSJRheVXhhKEhxlmhZIJhdBQhkIJhbMNhMUJhMZJxNJgxQUJxDEkxDdFxSJRxplmxeSBxeCXxeGFxeYXxepQxegBxWVcxFEQxFLXxFIBxFgBxFxDxFZtxFdcxFbBxFwXyDJXyDlcuASJuDJpuDIBuCpJuGSJuIJFueEFuZIJusJXudWEuoIBuWGJuFBcuFKEuFNFuFQFuFDJuFGJuFVJuFUtuFdHuFTBmBYJmNJYmQhkmLJDmLJomIdXmiJYmvJRmsJRmklmmMBymMuCmclmmcnQiJABiJBNiJBDiBSFiBCJiBEFiBYBiBpFiBLXiBTHiJNciDEfiCZJiECJiJEqiOkHiHKFieNDiHJQieQcieDHieSFieCXieGFieEFieIHiegFihUJixNoioNXiFaBiFKFiFNDiFEPiFYXitFOitFHiFgBiFVEiFmXiFitiFbBiFMFiFrFUCXQUIoQUIJcUHQJUeCEUHwXUUJDUUqXUdWcUcqXUrnQUFNDUFSHUFCFUFEfUFLXUtFOZBXOZXSBZXpFZXVXZEQJZEJkZpDJZOqXZeNHZeCDZUqXZFBQZFEHZFLXvBAFvBKFvBCXvBEPvBpHvBIDvBgFvBuHvQNJvFNFvFGBvFIBvJFcsXCDsXLXsXsXsXlFsXcHsQqXsJQFsEqXseIFsFEHsFjDdBxOdNpRdNJRdEJbdpJRdhZJdnSJdrjNdFNJdFQHdFhNkNJDkYaRkHNRkHSRkVbRkuMRkjSJkcqDoSJFoEiJoYZJoOfXohEBoMGQocqXbBAFbBXFbBaFbBNDbBGBbBLXbBTBbBWDbGJYbIJHbFQqbFpQlDgQlOrFlVJRjGEBjZJRnXvJnXbBnEfHnOPDngJRnxfXnUJWwXEJwNpJwDpBwEfXwrEBMDCJMDGHMDIJMLJDcQGDcQpHcqXccqNFcqCXcFCJRBSBRBGBRBEJRBpQTBNFTBQJTBpBTBVXTFABTFSBTFCFTFGBTFMDrXCJrXLDrDNJrEfHrFQJrFitWNjdWNTR","AKLJMANOPFASNJIAEJWXAYJNRAIIbRAIcdaAeEfDAgidRAdjNYAMYEJAMIbRAFNJBAFpJFBBIJYBDZJFBSiJhBGdEBBEJfXBEJqXBEJWRBpaUJBLXrXBIYJMBOcfXBeEfFBestXBjNJRBcDJOBFEqXXNvJRXDMBhXCJNYXOAWpXONJWXHDEBXeIaRXhYJDXZJSJXMDJOXcASJXFVJXaBQqXaBZJFasXdQaFSJQaFEfXaFpJHaFOqXKBNSRKXvJBKQJhXKEJQJKEJGFKINJBKIJjNKgJNSKVElmKVhEBKiJGFKlBgJKjnUJKwsJYKMFIJKFNJDKFIJFKFOfXNJBSFNJBCXNBpJFNJBvQNJBMBNJLJXNJOqXNJeCXNJeGFNdsJCNbTKFNwXUJQNFEPQDiJcQDMSJQSFpBQGMQJQJeOcQyCJEQUJEBQJFBrQFEJqDXDJFDJXpBDJXIMDGiJhDIJGRDJeYcDHrDJDVXgFDkAWpDkIgRDjDEqDMvJRDJFNFDJFIBSKclmSJQOFSJQVHSJQjDSJGJBSJGJFSECJoSHEJqSJHTBSJVJDSViJYSZJNBSJsJDSFSJFSFEfXSJFLXCBUJVCJXSBCJXpBCXVJXCJXsXCJXdFCJNJHCLIJgCHiJFCVNJMChCJhCUHEJCsJTRCJdYcCoQJCCFEfXCFIJgCFUJxCFstFGJBaQGJBIDGQJqXGYJNRGJHKFGeQqDGHEJFGJeLXGHIiJGHdBlGUJEBGkIJTGFQPDGJFEqEAGegEJIJBEJVJXEhQJTEiJNcEJZJFEJoEqEjDEqEPDsXEPGJBEPOqXEPeQFEfDiDEJfEFEfepQEfMiJEqXNBEqDIDEqeSFEqVJXEMvJRYXNJDYXEJHYKVJcYYJEBYJeEcYJUqXYFpJFYFstXpAZJMpBSJFpNBNFpeQPDpHLJDpHIJFpHgJFpeitFpHZJFpJFADpFSJFpJFCJpFOqXpFitBpJFZJLXIJFLIJgRLVNJWLVHJMLwNpJLFGJBLFLJDLFOqXLJFUJIBDJXIBGJBIJBYQIJBIBIBOqXIBcqDIEGJFILNJTIIJEBIOiJhIJeNBIJeIBIhiJIIWoTRIJFAHIJFpBIJFuHIFUtFIJFTHOSBYJOEcqXOHEJqOvBpFOkVJrObBVJOncqDOcNJkHhNJRHuHJuHdMhBgBUqXgBsJXgONJBgHNJDgHHJQgJeitgHsJXgJyNagyDJBgZJDrgsVJQgkEJNgkjSJgJFAHgFCJDgFZtMVJXNFVXQfXVJXDJVXoQJVQVJQVDEfXVDvJHVEqNFVeQfXVHpJFVHxfXVVJSRVVmaRVlIJOhCXVJhHjYkhxCJVhWVUJhWiJcxBNJIxeEqDxfXBFxcFEPxFSJFxFYJXyBDQJydaUJyFOPDuYCJYuLvJRuHLJXuZJLDuFOPDuFZJHuFcqXmKHJdmCQJcmOsVJiJAGFitLCFieOfXiestXiZJMEikNJQirXzFiFQqXiFIJFiFZJFiFvtFUHpJFUteIcUteOcUVCJkUhdHcUbEJEUJqXQUMNJhURjYkUFitFZDGJHZJIxDZJVJXZJFDJZJFpQvBNJBvBSJFvJxBrseQqDsVFVJdFLJDkEJNBkmNJYkFLJDoQJOPoGsJRoEAHBoEJfFbBQqDbBZJHbFVJXlFIJBjYIrXjeitcjjCEBjWMNBwXQfXwXOaFwDsJXwCJTRwrCZJMDNJQcDDJFcqDOPRYiJFTBsJXTQIJBTFEfXTFLJDrXEJFrEJXMrFZJFWEJdEWYTlm","ABCDEFACNJTRAMBDJdAcNJVXBLNJEBXSIdWRXErNJkXYDJMBXZJCJaXMNJaYKKVJKcKDEJqXKDcNJhKVJrNYKbgJVXKFVJSBNBYBwDNJeQfXNJeEqXNhGJWENJFiJRQlIJbEQJfXxDQqXcfXQFNDEJQFwXUJDYcnUJDJIBgQDIUJTRDJFEqDSJQSJFSJQIJFSOPeZtSJFZJHCJXQfXCTDEqFGJBSJFGJBOfXGJBcqXGJHNJDGJRLiJEJfXEqEJFEJPEFpBEJYJBZJFYBwXUJYiJMEBYJZJyTYTONJXpQMFXFpeGIDdpJFstXpJFcPDLBVSJRLHQJqXLJFZJFIJBNJDIJBUqXIBkFDJIJEJPTIYJGWRIJeQPDIJeEfHIJFsJXOqGDSFHXEJqXgJCsJCgGQJqXgdQYJEgFMFNBgJFcqDVJwXUJVJFZJchIgJCCxOEJqXxOwXUJyDJBVRuscisciJBiJBieUtqXiJFDJkiFsJXQUGEZJcUJFsJXZtXIrXZDZJDrZJFNJDZJFstXvJFQqXvJFCJEsJXQJqkhkNGBbDJdTRbYJMEBlDwXUJMEFiJFcfXNJDRcNJWMTBLJXC","BraFUtHBFSJFdbNBLJXVJQoYJNEBSJBEJfHSJHwXUJCJdAZJMGjaFVJXEJPNJBlEJfFiJFpFbFEJqIJBVJCrIBdHiJhOPFChvJVJZJNJWxGFNIFLueIBQJqUHEJfUFstOZJDrlXEASJRlXVJXSFwVJNJWD","QJEJNNJDQJEJIBSFQJEJxegBQJEJfHEPSJBmXEJFSJCDEJqXLXNJFQqXIcQsFNJFIFEJqXUJgFsJXIJBUJEJfHNFvJxEqXNJnXUJFQqD","IJBEJqXZJ"],Ti="~~AzB~X~a~KN~Q~D~S~C~G~E~Y~p~L~I~O~eH~g~V~hxyumi~~U~~Z~~v~~s~~dkoblPjfnqwMcRTr~W~~~F~~~~~Jt";let Mi=null;function wi(e){return C(Tt(e))}const Ei="0xe3818de38284e3818f",Fi="0xe3818de38283e3818f";function Ci(e){if(null!==Mi)return;Mi=[];const t={};function r(e){let r="";for(let o=0;ot?1:0})),wi(Mi[442])===Ei&&wi(Mi[443])===Fi){const e=Mi[442];Mi[442]=Mi[443],Mi[443]=e}if("0xcb36b09e6baa935787fd762ce65e80b0c6a8dabdfbc3a7f86ac0e2c4fd111600"!==ei.check(e))throw Mi=null,new Error("BIP39 Wordlist for ja (Japanese) FAILED")}const Bi=new class extends ei{constructor(){super("ja")}getWord(e){return Ci(this),Mi[e]}getWordIndex(e){return Ci(this),Mi.indexOf(e)}split(e){return $n.checkNormalize(),e.split(/(?:\u3000| )+/g)}join(e){return e.join(" ")}};ei.register(Bi);const Ji=["OYAa","ATAZoATBl3ATCTrATCl8ATDloATGg3ATHT8ATJT8ATJl3ATLlvATLn4ATMT8ATMX8ATMboATMgoAToLbAToMTATrHgATvHnAT3AnAT3JbAT3MTAT8DbAT8JTAT8LmAT8MYAT8MbAT#LnAUHT8AUHZvAUJXrAUJX8AULnrAXJnvAXLUoAXLgvAXMn6AXRg3AXrMbAX3JTAX3QbAYLn3AZLgvAZrSUAZvAcAZ8AaAZ8AbAZ8AnAZ8HnAZ8LgAZ8MYAZ8MgAZ8OnAaAboAaDTrAaFTrAaJTrAaJboAaLVoAaMXvAaOl8AaSeoAbAUoAbAg8AbAl4AbGnrAbMT8AbMXrAbMn4AbQb8AbSV8AbvRlAb8AUAb8AnAb8HgAb8JTAb8NTAb8RbAcGboAcLnvAcMT8AcMX8AcSToAcrAaAcrFnAc8AbAc8MgAfGgrAfHboAfJnvAfLV8AfLkoAfMT8AfMnoAfQb8AfScrAfSgrAgAZ8AgFl3AgGX8AgHZvAgHgrAgJXoAgJX8AgJboAgLZoAgLn4AgOX8AgoATAgoAnAgoCUAgoJgAgoLXAgoMYAgoSeAgrDUAgrJTAhrFnAhrLjAhrQgAjAgoAjJnrAkMX8AkOnoAlCTvAlCV8AlClvAlFg4AlFl6AlFn3AloSnAlrAXAlrAfAlrFUAlrFbAlrGgAlrOXAlvKnAlvMTAl3AbAl3MnAnATrAnAcrAnCZ3AnCl8AnDg8AnFboAnFl3AnHX4AnHbrAnHgrAnIl3AnJgvAnLXoAnLX4AnLbrAnLgrAnLhrAnMXoAnMgrAnOn3AnSbrAnSeoAnvLnAn3OnCTGgvCTSlvCTvAUCTvKnCTvNTCT3CZCT3GUCT3MTCT8HnCUCZrCULf8CULnvCU3HnCU3JUCY6NUCbDb8CbFZoCbLnrCboOTCboScCbrFnCbvLnCb8AgCb8HgCb$LnCkLfoClBn3CloDUDTHT8DTLl3DTSU8DTrAaDTrLXDTrLjDTrOYDTrOgDTvFXDTvFnDT3HUDT3LfDUCT9DUDT4DUFVoDUFV8DUFkoDUGgrDUJnrDULl8DUMT8DUMXrDUMX4DUMg8DUOUoDUOgvDUOg8DUSToDUSZ8DbDXoDbDgoDbGT8DbJn3DbLg3DbLn4DbMXrDbMg8DbOToDboJXGTClvGTDT8GTFZrGTLVoGTLlvGTLl3GTMg8GTOTvGTSlrGToCUGTrDgGTrJYGTrScGTtLnGTvAnGTvQgGUCZrGUDTvGUFZoGUHXrGULnvGUMT8GUoMgGXoLnGXrMXGXrMnGXvFnGYLnvGZOnvGZvOnGZ8LaGZ8LmGbAl3GbDYvGbDlrGbHX3GbJl4GbLV8GbLn3GbMn4GboJTGboRfGbvFUGb3GUGb4JnGgDX3GgFl$GgJlrGgLX6GgLZoGgLf8GgOXoGgrAgGgrJXGgrMYGgrScGgvATGgvOYGnAgoGnJgvGnLZoGnLg3GnLnrGnQn8GnSbrGnrMgHTClvHTDToHTFT3HTQT8HToJTHToJgHTrDUHTrMnHTvFYHTvRfHT8MnHT8SUHUAZ8HUBb4HUDTvHUoMYHXFl6HXJX6HXQlrHXrAUHXrMnHXrSbHXvFYHXvKXHX3LjHX3MeHYvQlHZrScHZvDbHbAcrHbFT3HbFl3HbJT8HbLTrHbMT8HbMXrHbMbrHbQb8HbSX3HboDbHboJTHbrFUHbrHgHbrJTHb8JTHb8MnHb8QgHgAlrHgDT3HgGgrHgHgrHgJTrHgJT8HgLX@HgLnrHgMT8HgMX8HgMboHgOnrHgQToHgRg3HgoHgHgrCbHgrFnHgrLVHgvAcHgvAfHnAloHnCTrHnCnvHnGTrHnGZ8HnGnvHnJT8HnLf8HnLkvHnMg8HnRTrITvFUITvFnJTAXrJTCV8JTFT3JTFT8JTFn4JTGgvJTHT8JTJT8JTJXvJTJl3JTJnvJTLX4JTLf8JTLhvJTMT8JTMXrJTMnrJTObrJTQT8JTSlvJT8DUJT8FkJT8MTJT8OXJT8OgJT8QUJT8RfJUHZoJXFT4JXFlrJXGZ8JXGnrJXLV8JXLgvJXMXoJXMX3JXNboJXPlvJXoJTJXoLkJXrAXJXrHUJXrJgJXvJTJXvOnJX4KnJYAl3JYJT8JYLhvJYQToJYrQXJY6NUJbAl3JbCZrJbDloJbGT8JbGgrJbJXvJbJboJbLf8JbLhrJbLl3JbMnvJbRg8JbSZ8JboDbJbrCZJbrSUJb3KnJb8LnJfRn8JgAXrJgCZrJgDTrJgGZrJgGZ8JgHToJgJT8JgJXoJgJgvJgLX4JgLZ3JgLZ8JgLn4JgMgrJgMn4JgOgvJgPX6JgRnvJgSToJgoCZJgoJbJgoMYJgrJXJgrJgJgrLjJg6MTJlCn3JlGgvJlJl8Jl4AnJl8FnJl8HgJnAToJnATrJnAbvJnDUoJnGnrJnJXrJnJXvJnLhvJnLnrJnLnvJnMToJnMT8JnMXvJnMX3JnMg8JnMlrJnMn4JnOX8JnST4JnSX3JnoAgJnoAnJnoJTJnoObJnrAbJnrAkJnrHnJnrJTJnrJYJnrOYJnrScJnvCUJnvFaJnvJgJnvJnJnvOYJnvQUJnvRUJn3FnJn3JTKnFl3KnLT6LTDlvLTMnoLTOn3LTRl3LTSb4LTSlrLToAnLToJgLTrAULTrAcLTrCULTrHgLTrMgLT3JnLULnrLUMX8LUoJgLVATrLVDTrLVLb8LVoJgLV8MgLV8RTLXDg3LXFlrLXrCnLXrLXLX3GTLX4GgLX4OYLZAXrLZAcrLZAgrLZAhrLZDXyLZDlrLZFbrLZFl3LZJX6LZJX8LZLc8LZLnrLZSU8LZoJTLZoJnLZrAgLZrAnLZrJYLZrLULZrMgLZrSkLZvAnLZvGULZvJeLZvOTLZ3FZLZ4JXLZ8STLZ8ScLaAT3LaAl3LaHT8LaJTrLaJT8LaJXrLaJgvLaJl4LaLVoLaMXrLaMXvLaMX8LbClvLbFToLbHlrLbJn4LbLZ3LbLhvLbMXrLbMnoLbvSULcLnrLc8HnLc8MTLdrMnLeAgoLeOgvLeOn3LfAl3LfLnvLfMl3LfOX8Lf8AnLf8JXLf8LXLgJTrLgJXrLgJl8LgMX8LgRZrLhCToLhrAbLhrFULhrJXLhvJYLjHTrLjHX4LjJX8LjLhrLjSX3LjSZ4LkFX4LkGZ8LkGgvLkJTrLkMXoLkSToLkSU8LkSZ8LkoOYLl3FfLl3MgLmAZrLmCbrLmGgrLmHboLmJnoLmJn3LmLfoLmLhrLmSToLnAX6LnAb6LnCZ3LnCb3LnDTvLnDb8LnFl3LnGnrLnHZvLnHgvLnITvLnJT8LnJX8LnJlvLnLf8LnLg6LnLhvLnLnoLnMXrLnMg8LnQlvLnSbrLnrAgLnrAnLnrDbLnrFkLnrJdLnrMULnrOYLnrSTLnvAnLnvDULnvHgLnvOYLnvOnLn3GgLn4DULn4JTLn4JnMTAZoMTAloMTDb8MTFT8MTJnoMTJnrMTLZrMTLhrMTLkvMTMX8MTRTrMToATMTrDnMTrOnMT3JnMT4MnMT8FUMT8FaMT8FlMT8GTMT8GbMT8GnMT8HnMT8JTMT8JbMT8OTMUCl8MUJTrMUJU8MUMX8MURTrMUSToMXAX6MXAb6MXCZoMXFXrMXHXrMXLgvMXOgoMXrAUMXrAnMXrHgMXrJYMXrJnMXrMTMXrMgMXrOYMXrSZMXrSgMXvDUMXvOTMX3JgMX3OTMX4JnMX8DbMX8FnMX8HbMX8HgMX8HnMX8LbMX8MnMX8OnMYAb8MYGboMYHTvMYHX4MYLTrMYLnvMYMToMYOgvMYRg3MYSTrMbAToMbAXrMbAl3MbAn8MbGZ8MbJT8MbJXrMbMXvMbMX8MbMnoMbrMUMb8AfMb8FbMb8FkMcJXoMeLnrMgFl3MgGTvMgGXoMgGgrMgGnrMgHT8MgHZrMgJnoMgLnrMgLnvMgMT8MgQUoMgrHnMgvAnMg8HgMg8JYMg8LfMloJnMl8ATMl8AXMl8JYMnAToMnAT4MnAZ8MnAl3MnAl4MnCl8MnHT8MnHg8MnJnoMnLZoMnLhrMnMXoMnMX3MnMnrMnOgvMnrFbMnrFfMnrFnMnrNTMnvJXNTMl8OTCT3OTFV8OTFn3OTHZvOTJXrOTOl3OT3ATOT3JUOT3LZOT3LeOT3MbOT8ATOT8AbOT8AgOT8MbOUCXvOUMX3OXHXvOXLl3OXrMUOXvDbOX6NUOX8JbOYFZoOYLbrOYLkoOYMg8OYSX3ObHTrObHT4ObJgrObLhrObMX3ObOX8Ob8FnOeAlrOeJT8OeJXrOeJnrOeLToOeMb8OgJXoOgLXoOgMnrOgOXrOgOloOgoAgOgoJbOgoMYOgoSTOg8AbOjLX4OjMnoOjSV8OnLVoOnrAgOn3DUPXQlrPXvFXPbvFTPdAT3PlFn3PnvFbQTLn4QToAgQToMTQULV8QURg8QUoJnQXCXvQbFbrQb8AaQb8AcQb8FbQb8MYQb8ScQeAlrQeLhrQjAn3QlFXoQloJgQloSnRTLnvRTrGURTrJTRUJZrRUoJlRUrQnRZrLmRZrMnRZrSnRZ8ATRZ8JbRZ8ScRbMT8RbST3RfGZrRfMX8RfMgrRfSZrRnAbrRnGT8RnvJgRnvLfRnvMTRn8AaSTClvSTJgrSTOXrSTRg3STRnvSToAcSToAfSToAnSToHnSToLjSToMTSTrAaSTrEUST3BYST8AgST8LmSUAZvSUAgrSUDT4SUDT8SUGgvSUJXoSUJXvSULTrSU8JTSU8LjSV8AnSV8JgSXFToSXLf8SYvAnSZrDUSZrMUSZrMnSZ8HgSZ8JTSZ8JgSZ8MYSZ8QUSaQUoSbCT3SbHToSbQYvSbSl4SboJnSbvFbSb8HbSb8JgSb8OTScGZrScHgrScJTvScMT8ScSToScoHbScrMTScvAnSeAZrSeAcrSeHboSeJUoSeLhrSeMT8SeMXrSe6JgSgHTrSkJnoSkLnvSk8CUSlFl3SlrSnSl8GnSmAboSmGT8SmJU8","ATLnDlATrAZoATrJX4ATrMT8ATrMX4ATrRTrATvDl8ATvJUoATvMl8AT3AToAT3MX8AT8CT3AT8DT8AT8HZrAT8HgoAUAgFnAUCTFnAXoMX8AXrAT8AXrGgvAXrJXvAXrOgoAXvLl3AZvAgoAZvFbrAZvJXoAZvJl8AZvJn3AZvMX8AZvSbrAZ8FZoAZ8LZ8AZ8MU8AZ8OTvAZ8SV8AZ8SX3AbAgFZAboJnoAbvGboAb8ATrAb8AZoAb8AgrAb8Al4Ab8Db8Ab8JnoAb8LX4Ab8LZrAb8LhrAb8MT8Ab8OUoAb8Qb8Ab8ST8AcrAUoAcrAc8AcrCZ3AcrFT3AcrFZrAcrJl4AcrJn3AcrMX3AcrOTvAc8AZ8Ac8MT8AfAcJXAgoFn4AgoGgvAgoGnrAgoLc8AgoMXoAgrLnrAkrSZ8AlFXCTAloHboAlrHbrAlrLhrAlrLkoAl3CZrAl3LUoAl3LZrAnrAl4AnrMT8An3HT4BT3IToBX4MnvBb!Ln$CTGXMnCToLZ4CTrHT8CT3JTrCT3RZrCT#GTvCU6GgvCU8Db8CU8GZrCU8HT8CboLl3CbrGgrCbrMU8Cb8DT3Cb8GnrCb8LX4Cb8MT8Cb8ObrCgrGgvCgrKX4Cl8FZoDTrAbvDTrDboDTrGT6DTrJgrDTrMX3DTrRZrDTrRg8DTvAVvDTvFZoDT3DT8DT3Ln3DT4HZrDT4MT8DT8AlrDT8MT8DUAkGbDUDbJnDYLnQlDbDUOYDbMTAnDbMXSnDboAT3DboFn4DboLnvDj6JTrGTCgFTGTGgFnGTJTMnGTLnPlGToJT8GTrCT3GTrLVoGTrLnvGTrMX3GTrMboGTvKl3GZClFnGZrDT3GZ8DTrGZ8FZ8GZ8MXvGZ8On8GZ8ST3GbCnQXGbMbFnGboFboGboJg3GboMXoGb3JTvGb3JboGb3Mn6Gb3Qb8GgDXLjGgMnAUGgrDloGgrHX4GgrSToGgvAXrGgvAZvGgvFbrGgvLl3GgvMnvGnDnLXGnrATrGnrMboGnuLl3HTATMnHTAgCnHTCTCTHTrGTvHTrHTvHTrJX8HTrLl8HTrMT8HTrMgoHTrOTrHTuOn3HTvAZrHTvDTvHTvGboHTvJU8HTvLl3HTvMXrHTvQb4HT4GT6HT4JT8HT4Jb#HT8Al3HT8GZrHT8GgrHT8HX4HT8Jb8HT8JnoHT8LTrHT8LgvHT8SToHT8SV8HUoJUoHUoJX8HUoLnrHXrLZoHXvAl3HX3LnrHX4FkvHX4LhrHX4MXoHX4OnoHZrAZ8HZrDb8HZrGZ8HZrJnrHZvGZ8HZvLnvHZ8JnvHZ8LhrHbCXJlHbMTAnHboJl4HbpLl3HbrJX8HbrLnrHbrMnvHbvRYrHgoSTrHgrFV8HgrGZ8HgrJXoHgrRnvHgvBb!HgvGTrHgvHX4HgvHn!HgvLTrHgvSU8HnDnLbHnFbJbHnvDn8Hn6GgvHn!BTvJTCTLnJTQgFnJTrAnvJTrLX4JTrOUoJTvFn3JTvLnrJTvNToJT3AgoJT3Jn4JT3LhvJT3ObrJT8AcrJT8Al3JT8JT8JT8JnoJT8LX4JT8LnrJT8MX3JT8Rg3JT8Sc8JUoBTvJU8AToJU8GZ8JU8GgvJU8JTrJU8JXrJU8JnrJU8LnvJU8ScvJXHnJlJXrGgvJXrJU8JXrLhrJXrMT8JXrMXrJXrQUoJXvCTvJXvGZ8JXvGgrJXvQT8JX8Ab8JX8DT8JX8GZ8JX8HZvJX8LnrJX8MT8JX8MXoJX8MnvJX8ST3JYGnCTJbAkGbJbCTAnJbLTAcJboDT3JboLb6JbrAnvJbrCn3JbrDl8JbrGboJbrIZoJbrJnvJbrMnvJbrQb4Jb8RZrJeAbAnJgJnFbJgScAnJgrATrJgvHZ8JgvMn4JlJlFbJlLiQXJlLjOnJlRbOlJlvNXoJlvRl3Jl4AcrJl8AUoJl8MnrJnFnMlJnHgGbJnoDT8JnoFV8JnoGgvJnoIT8JnoQToJnoRg3JnrCZ3JnrGgrJnrHTvJnrLf8JnrOX8JnvAT3JnvFZoJnvGT8JnvJl4JnvMT8JnvMX8JnvOXrJnvPX6JnvSX3JnvSZrJn3MT8Jn3MX8Jn3RTrLTATKnLTJnLTLTMXKnLTRTQlLToGb8LTrAZ8LTrCZ8LTrDb8LTrHT8LT3PX6LT4FZoLT$CTvLT$GgrLUvHX3LVoATrLVoAgoLVoJboLVoMX3LVoRg3LV8CZ3LV8FZoLV8GTvLXrDXoLXrFbrLXvAgvLXvFlrLXvLl3LXvRn6LX4Mb8LX8GT8LYCXMnLYrMnrLZoSTvLZrAZvLZrAloLZrFToLZrJXvLZrJboLZrJl4LZrLnrLZrMT8LZrOgvLZrRnvLZrST4LZvMX8LZvSlvLZ8AgoLZ8CT3LZ8JT8LZ8LV8LZ8LZoLZ8Lg8LZ8SV8LZ8SbrLZ$HT8LZ$Mn4La6CTvLbFbMnLbRYFTLbSnFZLboJT8LbrAT9LbrGb3LbrQb8LcrJX8LcrMXrLerHTvLerJbrLerNboLgrDb8LgrGZ8LgrHTrLgrMXrLgrSU8LgvJTrLgvLl3Lg6Ll3LhrLnrLhrMT8LhvAl4LiLnQXLkoAgrLkoJT8LkoJn4LlrSU8Ll3FZoLl3HTrLl3JX8Ll3JnoLl3LToLmLeFbLnDUFbLnLVAnLnrATrLnrAZoLnrAb8LnrAlrLnrGgvLnrJU8LnrLZrLnrLhrLnrMb8LnrOXrLnrSZ8LnvAb4LnvDTrLnvDl8LnvHTrLnvHbrLnvJT8LnvJU8LnvJbrLnvLhvLnvMX8LnvMb8LnvNnoLnvSU8Ln3Al3Ln4FZoLn4GT6Ln4JgvLn4LhrLn4MT8Ln4SToMToCZrMToJX8MToLX4MToLf8MToRg3MTrEloMTvGb6MT3BTrMT3Lb6MT8AcrMT8AgrMT8GZrMT8JnoMT8LnrMT8MX3MUOUAnMXAbFnMXoAloMXoJX8MXoLf8MXoLl8MXrAb8MXrDTvMXrGT8MXrGgrMXrHTrMXrLf8MXrMU8MXrOXvMXrQb8MXvGT8MXvHTrMXvLVoMX3AX3MX3Jn3MX3LhrMX3MX3MX4AlrMX4OboMX8GTvMX8GZrMX8GgrMX8JT8MX8JX8MX8LhrMX8MT8MYDUFbMYMgDbMbGnFfMbvLX4MbvLl3Mb8Mb8Mb8ST4MgGXCnMg8ATrMg8AgoMg8CZrMg8DTrMg8DboMg8HTrMg8JgrMg8LT8MloJXoMl8AhrMl8JT8MnLgAUMnoJXrMnoLX4MnoLhrMnoMT8MnrAl4MnrDb8MnrOTvMnrOgvMnrQb8MnrSU8MnvGgrMnvHZ8Mn3MToMn4DTrMn4LTrMn4Mg8NnBXAnOTFTFnOToAToOTrGgvOTrJX8OT3JXoOT6MTrOT8GgrOT8HTpOT8MToOUoHT8OUoJT8OUoLn3OXrAgoOXrDg8OXrMT8OXvSToOX6CTvOX8CZrOX8OgrOb6HgvOb8AToOb8MT8OcvLZ8OgvAlrOgvHTvOgvJTrOgvJnrOgvLZrOgvLn4OgvMT8OgvRTrOg8AZoOg8DbvOnrOXoOnvJn4OnvLhvOnvRTrOn3GgoOn3JnvOn6JbvOn8OTrPTGYFTPbBnFnPbGnDnPgDYQTPlrAnvPlrETvPlrLnvPlrMXvPlvFX4QTMTAnQTrJU8QYCnJlQYJlQlQbGTQbQb8JnrQb8LZoQb8LnvQb8MT8Qb8Ml8Qb8ST4QloAl4QloHZvQloJX8QloMn8QnJZOlRTrAZvRTrDTrRTvJn4RTvLhvRT4Jb8RZrAZrRZ8AkrRZ8JU8RZ8LV8RZ8LnvRbJlQXRg3GboRg3MnvRg8AZ8Rg8JboRg8Jl4RnLTCbRnvFl3RnvQb8SToAl4SToCZrSToFZoSToHXrSToJU8SToJgvSToJl4SToLhrSToMX3STrAlvSTrCT9STrCgrSTrGgrSTrHXrSTrHboSTrJnoSTrNboSTvLnrST4AZoST8Ab8ST8JT8SUoJn3SU6HZ#SU6JTvSU8Db8SU8HboSU8LgrSV8JT8SZrAcrSZrAl3SZrJT8SZrJnvSZrMT8SZvLUoSZ4FZoSZ8JnoSZ8RZrScoLnrScoMT8ScoMX8ScrAT4ScrAZ8ScrLZ8ScrLkvScvDb8ScvLf8ScvNToSgrFZrShvKnrSloHUoSloLnrSlrMXoSl8HgrSmrJUoSn3BX6","ATFlOn3ATLgrDYAT4MTAnAT8LTMnAYJnRTrAbGgJnrAbLV8LnAbvNTAnAeFbLg3AgOYMXoAlQbFboAnDboAfAnJgoJTBToDgAnBUJbAl3BboDUAnCTDlvLnCTFTrSnCYoQTLnDTwAbAnDUDTrSnDUHgHgrDX8LXFnDbJXAcrETvLTLnGTFTQbrGTMnGToGT3DUFbGUJlPX3GbQg8LnGboJbFnGb3GgAYGgAg8ScGgMbAXrGgvAbAnGnJTLnvGnvATFgHTDT6ATHTrDlJnHYLnMn8HZrSbJTHZ8LTFnHbFTJUoHgSeMT8HgrLjAnHgvAbAnHlFUrDlHnDgvAnHnHTFT3HnQTGnrJTAaMXvJTGbCn3JTOgrAnJXvAXMnJbMg8SnJbMnRg3Jb8LTMnJnAl3OnJnGYrQlJnJlQY3LTDlCn3LTJjLg3LTLgvFXLTMg3GTLV8HUOgLXFZLg3LXNXrMnLX8QXFnLX9AlMYLYLXPXrLZAbJU8LZDUJU8LZMXrSnLZ$AgFnLaPXrDULbFYrMnLbMn8LXLboJgJgLeFbLg3LgLZrSnLgOYAgoLhrRnJlLkCTrSnLkOnLhrLnFX%AYLnFZoJXLnHTvJbLnLloAbMTATLf8MTHgJn3MTMXrAXMT3MTFnMUITvFnMXFX%AYMXMXvFbMXrFTDbMYAcMX3MbLf8SnMb8JbFnMgMXrMTMgvAXFnMgvGgCmMnAloSnMnFnJTrOXvMXSnOX8HTMnObJT8ScObLZFl3ObMXCZoPTLgrQXPUFnoQXPU3RXJlPX3RkQXPbrJXQlPlrJbFnQUAhrDbQXGnCXvQYLnHlvQbLfLnvRTOgvJbRXJYrQlRYLnrQlRbLnrQlRlFT8JlRlFnrQXSTClCn3STHTrAnSTLZQlrSTMnGTrSToHgGbSTrGTDnSTvGXCnST3HgFbSU3HXAXSbAnJn3SbFT8LnScLfLnv","AT3JgJX8AT8FZoSnAT8JgFV8AT8LhrDbAZ8JT8DbAb8GgLhrAb8SkLnvAe8MT8SnAlMYJXLVAl3GYDTvAl3LfLnvBUDTvLl3CTOn3HTrCT3DUGgrCU8MT8AbCbFTrJUoCgrDb8MTDTLV8JX8DTLnLXQlDT8LZrSnDUQb8FZ8DUST4JnvDb8ScOUoDj6GbJl4GTLfCYMlGToAXvFnGboAXvLnGgAcrJn3GgvFnSToGnLf8JnvGn#HTDToHTLnFXJlHTvATFToHTvHTDToHTvMTAgoHT3STClvHT4AlFl6HT8HTDToHUoDgJTrHUoScMX3HbRZrMXoHboJg8LTHgDb8JTrHgMToLf8HgvLnLnoHnHn3HT4Hn6MgvAnJTJU8ScvJT3AaQT8JT8HTrAnJXrRg8AnJbAloMXoJbrATFToJbvMnoSnJgDb6GgvJgDb8MXoJgSX3JU8JguATFToJlPYLnQlJlQkDnLbJlQlFYJlJl8Lf8OTJnCTFnLbJnLTHXMnJnLXGXCnJnoFfRg3JnrMYRg3Jn3HgFl3KT8Dg8LnLTRlFnPTLTvPbLbvLVoSbrCZLXMY6HT3LXNU7DlrLXNXDTATLX8DX8LnLZDb8JU8LZMnoLhrLZSToJU8LZrLaLnrLZvJn3SnLZ8LhrSnLaJnoMT8LbFlrHTvLbrFTLnrLbvATLlvLb6OTFn3LcLnJZOlLeAT6Mn4LeJT3ObrLg6LXFlrLhrJg8LnLhvDlPX4LhvLfLnvLj6JTFT3LnFbrMXoLnQluCTvLnrQXCY6LnvLfLnvLnvMgLnvLnvSeLf8MTMbrJn3MT3JgST3MT8AnATrMT8LULnrMUMToCZrMUScvLf8MXoDT8SnMX6ATFToMX8AXMT8MX8FkMT8MX8HTrDUMX8ScoSnMYJT6CTvMgAcrMXoMg8SToAfMlvAXLg3MnFl3AnvOT3AnFl3OUoATHT8OU3RnLXrOXrOXrSnObPbvFn6Og8HgrSnOg8OX8DbPTvAgoJgPU3RYLnrPXrDnJZrPb8CTGgvPlrLTDlvPlvFUJnoQUvFXrQlQeMnoAl3QlrQlrSnRTFTrJUoSTDlLiLXSTFg6HT3STJgoMn4STrFTJTrSTrLZFl3ST4FnMXoSUrDlHUoScvHTvSnSfLkvMXo","AUoAcrMXoAZ8HboAg8AbOg6ATFgAg8AloMXoAl3AT8JTrAl8MX8MXoCT3SToJU8Cl8Db8MXoDT8HgrATrDboOT8MXoGTOTrATMnGT8LhrAZ8GnvFnGnQXHToGgvAcrHTvAXvLl3HbrAZoMXoHgBlFXLg3HgMnFXrSnHgrSb8JUoHn6HT8LgvITvATrJUoJUoLZrRnvJU8HT8Jb8JXvFX8QT8JXvLToJTrJYrQnGnQXJgrJnoATrJnoJU8ScvJnvMnvMXoLTCTLgrJXLTJlRTvQlLbRnJlQYvLbrMb8LnvLbvFn3RnoLdCVSTGZrLeSTvGXCnLg3MnoLn3MToLlrETvMT8SToAl3MbrDU6GTvMb8LX4LhrPlrLXGXCnSToLf8Rg3STrDb8LTrSTvLTHXMnSb3RYLnMnSgOg6ATFg","HUDlGnrQXrJTrHgLnrAcJYMb8DULc8LTvFgGnCk3Mg8JbAnLX4QYvFYHnMXrRUoJnGnvFnRlvFTJlQnoSTrBXHXrLYSUJgLfoMT8Se8DTrHbDb","AbDl8SToJU8An3RbAb8ST8DUSTrGnrAgoLbFU6Db8LTrMg8AaHT8Jb8ObDl8SToJU8Pb3RlvFYoJl"],Li="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789!@#$%^&*";function Pi(e){return e>=40?e=e+168-40:e>=19&&(e=e+97-19),Et([225,132+(e>>6),128+(63&e)])}let ki=null;function Ri(e){if(null==ki&&(ki=[],Ji.forEach((e,t)=>{t+=4;for(let r=0;r?";function Vi(e){if(null!==xi[e.locale])return;xi[e.locale]=[];let t=0;for(let r=0;r<2048;r++){const o=zi.indexOf(_i[3*r]),n=[228+(o>>2),128+Ui.indexOf(_i[3*r+1]),128+Ui.indexOf(_i[3*r+2])];if("zh_tw"===e.locale){for(let e=o%4;e<3;e++)n[e]=Ui.indexOf(Hi[t++])+(0==e?228:128)}xi[e.locale].push(Et(n))}if(ei.check(e)!==Gi[e.locale])throw xi[e.locale]=null,new Error("BIP39 Wordlist for "+e.locale+" (Chinese) FAILED")}class Zi extends ei{constructor(e){super("zh_"+e)}getWord(e){return Vi(this),xi[this.locale][e]}getWordIndex(e){return Vi(this),xi[this.locale].indexOf(e)}split(e){return(e=e.replace(/(?:\u3000| )+/g,"")).split("")}}const ji=new Zi("cn");ei.register(ji),ei.register(ji,"zh");const Ki=new Zi("tw");ei.register(Ki);const Qi={cz:ni,en:li,es:pi,fr:Ai,it:Xi,ja:Bi,ko:Di,zh:ji,zh_cn:ji,zh_tw:Ki},qi=new p("hdnode/5.0.0-beta.135"),Yi=_.from("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),Wi=Tt("Bitcoin seed"),$i=2147483648;function ea(e){return(1<=256)throw new Error("Depth too large!");return ra(T([null!=this.privateKey?"0x0488ADE4":"0x0488B21E",C(this.depth),this.parentFingerprint,k(C(this.index),4),this.chainCode,null!=this.privateKey?T(["0x00",this.privateKey]):this.publicKey]))}neuter(){return new ia(oa,null,this.publicKey,this.parentFingerprint,this.chainCode,this.index,this.depth,null,this.path)}_derive(e){if(e>4294967295)throw new Error("invalid index - "+String(e));let t=this.path;t&&(t+="/"+(e&~$i));const r=new Uint8Array(37);if(e&$i){if(!this.privateKey)throw new Error("cannot derive child of neutered node");r.set(S(this.privateKey),1),t&&(t+="'")}else r.set(S(this.publicKey));for(let t=24;t>=0;t-=8)r[33+(t>>3)]=e>>24-t&255;const o=S(qo(jo.sha512,this.chainCode,r)),n=o.slice(0,32),i=o.slice(32);let a=null,s=null;if(this.privateKey)a=ta(_.from(n).add(this.privateKey).mod(Yi));else{s=new xn(C(n))._addPoint(this.publicKey)}return new ia(oa,a,s,this.fingerprint,ta(i),e,this.depth+1,this.mnemonic,t)}derivePath(e){const t=e.split("/");if(0===t.length||"m"===t[0]&&0!==this.depth)throw new Error("invalid path - "+e);"m"===t[0]&&t.shift();let r=this;for(let e=0;e=$i)throw new Error("invalid path index - "+o);r=r._derive($i+e)}else{if(!o.match(/^[0-9]+$/))throw new Error("invalid path component - "+o);{const e=parseInt(o);if(e>=$i)throw new Error("invalid path index - "+o);r=r._derive(e)}}}return r}static _fromSeed(e,t){const r=S(e);if(r.length<16||r.length>64)throw new Error("invalid seed");const o=S(qo(jo.sha512,Wi,r));return new ia(oa,ta(o.slice(0,32)),null,"0x00000000",ta(o.slice(32)),0,0,t,"m")}static fromMnemonic(e,t,r){return e=la(sa(e,r),r),ia._fromSeed(aa(e,t),e)}static fromSeed(e){return ia._fromSeed(e,null)}static fromExtendedKey(e){const t=Mr.decode(e);82===t.length&&ra(t.slice(0,78))===e||qi.throwArgumentError("invalid extended key","extendedKey","[REDACTED]");const r=t[4],o=C(t.slice(5,9)),n=parseInt(C(t.slice(9,13)).substring(2),16),i=C(t.slice(13,45)),a=t.slice(45,78);switch(C(t.slice(0,4))){case"0x0488b21e":case"0x043587cf":return new ia(oa,null,C(a),o,i,n,r,null,null);case"0x0488ade4":case"0x04358394 ":if(0!==a[0])break;return new ia(oa,C(a.slice(1)),null,o,i,n,r,null,null)}return qi.throwError("invalid extended key","extendedKey","[REDACTED]")}}function aa(e,t){t||(t="");const r=Tt("mnemonic"+t,At.NFKD);return Wo(Tt(e,At.NFKD),r,2048,64,"sha512")}function sa(e,t){t||(t=Qi.en),qi.checkNormalize();const r=t.split(e);if(r.length%3!=0)throw new Error("invalid mnemonic");const o=S(new Uint8Array(Math.ceil(11*r.length/8)));let n=0;for(let e=0;e>3]|=1<<7-n%8),n++}const i=32*r.length/3,a=ea(r.length/3);if((S(Qo(o.slice(0,i/8)))[0]&a)!==(o[o.length-1]&a))throw new Error("invalid checksum");return C(o.slice(0,i/8))}function la(e,t){if((e=S(e)).length%4!=0||e.length<16||e.length>32)throw new Error("invalid entropy");const r=[0];let o=11;for(let t=0;t8?(r[r.length-1]<<=8,r[r.length-1]|=e[t],o-=8):(r[r.length-1]<<=o,r[r.length-1]|=e[t]>>8-o,r.push(e[t]&(1<<8-o)-1),o+=3);const n=e.length/4,i=S(Qo(e))[0]&ea(n);return r[r.length-1]<<=n,r[r.length-1]|=i>>8-n,t||(t=Qi.en),t.join(r.map(e=>t.getWord(e)))}var ua=r((function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.version="random/5.0.0-beta.133"})),ca=(t(ua),ua.version,r((function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.shuffled=function(e){for(var t=(e=e.slice()).length-1;t>0;t--){var r=Math.floor(Math.random()*(t+1)),o=e[t];e[t]=e[r],e[r]=o}return e}}))),ha=(t(ca),ca.shuffled,r((function(t,r){Object.defineProperty(r,"__esModule",{value:!0});var o=new m.Logger(ua.version);r.shuffled=ca.shuffled;var n=e.crypto||e.msCrypto;n&&n.getRandomValues||(o.warn("WARNING: Missing strong random number source"),n={getRandomValues:function(e){return o.throwError("no secure random source avaialble",m.Logger.errors.UNSUPPORTED_OPERATION,{operation:"crypto.getRandomValues"})}}),r.randomBytes=function(e){(e<=0||e>1024||parseInt(String(e))!=e)&&o.throwArgumentError("invalid length","length",e);var t=new Uint8Array(e);return n.getRandomValues(t),O.arrayify(t)}}))),da=(t(ha),ha.shuffled),fa=ha.randomBytes,pa=r((function(e,t){!function(t){function r(e){return parseInt(e)===e}function o(e){if(!r(e.length))return!1;for(var t=0;t255)return!1;return!0}function n(e,t){if(e.buffer&&ArrayBuffer.isView(e)&&"Uint8Array"===e.name)return t&&(e=e.slice?e.slice():Array.prototype.slice.call(e)),e;if(Array.isArray(e)){if(!o(e))throw new Error("Array contains invalid value: "+e);return new Uint8Array(e)}if(r(e.length)&&o(e))return new Uint8Array(e);throw new Error("unsupported array-like object")}function i(e){return new Uint8Array(e)}function a(e,t,r,o,n){null==o&&null==n||(e=e.slice?e.slice(o,n):Array.prototype.slice.call(e,o,n)),t.set(e,r)}var s,l={toBytes:function(e){var t=[],r=0;for(e=encodeURI(e);r191&&o<224?(t.push(String.fromCharCode((31&o)<<6|63&e[r+1])),r+=2):(t.push(String.fromCharCode((15&o)<<12|(63&e[r+1])<<6|63&e[r+2])),r+=3)}return t.join("")}},u=(s="0123456789abcdef",{toBytes:function(e){for(var t=[],r=0;r>4]+s[15&o])}return t.join("")}}),c={16:10,24:12,32:14},h=[1,2,4,8,16,32,64,128,27,54,108,216,171,77,154,47,94,188,99,198,151,53,106,212,179,125,250,239,197,145],d=[99,124,119,123,242,107,111,197,48,1,103,43,254,215,171,118,202,130,201,125,250,89,71,240,173,212,162,175,156,164,114,192,183,253,147,38,54,63,247,204,52,165,229,241,113,216,49,21,4,199,35,195,24,150,5,154,7,18,128,226,235,39,178,117,9,131,44,26,27,110,90,160,82,59,214,179,41,227,47,132,83,209,0,237,32,252,177,91,106,203,190,57,74,76,88,207,208,239,170,251,67,77,51,133,69,249,2,127,80,60,159,168,81,163,64,143,146,157,56,245,188,182,218,33,16,255,243,210,205,12,19,236,95,151,68,23,196,167,126,61,100,93,25,115,96,129,79,220,34,42,144,136,70,238,184,20,222,94,11,219,224,50,58,10,73,6,36,92,194,211,172,98,145,149,228,121,231,200,55,109,141,213,78,169,108,86,244,234,101,122,174,8,186,120,37,46,28,166,180,198,232,221,116,31,75,189,139,138,112,62,181,102,72,3,246,14,97,53,87,185,134,193,29,158,225,248,152,17,105,217,142,148,155,30,135,233,206,85,40,223,140,161,137,13,191,230,66,104,65,153,45,15,176,84,187,22],f=[82,9,106,213,48,54,165,56,191,64,163,158,129,243,215,251,124,227,57,130,155,47,255,135,52,142,67,68,196,222,233,203,84,123,148,50,166,194,35,61,238,76,149,11,66,250,195,78,8,46,161,102,40,217,36,178,118,91,162,73,109,139,209,37,114,248,246,100,134,104,152,22,212,164,92,204,93,101,182,146,108,112,72,80,253,237,185,218,94,21,70,87,167,141,157,132,144,216,171,0,140,188,211,10,247,228,88,5,184,179,69,6,208,44,30,143,202,63,15,2,193,175,189,3,1,19,138,107,58,145,17,65,79,103,220,234,151,242,207,206,240,180,230,115,150,172,116,34,231,173,53,133,226,249,55,232,28,117,223,110,71,241,26,113,29,41,197,137,111,183,98,14,170,24,190,27,252,86,62,75,198,210,121,32,154,219,192,254,120,205,90,244,31,221,168,51,136,7,199,49,177,18,16,89,39,128,236,95,96,81,127,169,25,181,74,13,45,229,122,159,147,201,156,239,160,224,59,77,174,42,245,176,200,235,187,60,131,83,153,97,23,43,4,126,186,119,214,38,225,105,20,99,85,33,12,125],p=[3328402341,4168907908,4000806809,4135287693,4294111757,3597364157,3731845041,2445657428,1613770832,33620227,3462883241,1445669757,3892248089,3050821474,1303096294,3967186586,2412431941,528646813,2311702848,4202528135,4026202645,2992200171,2387036105,4226871307,1101901292,3017069671,1604494077,1169141738,597466303,1403299063,3832705686,2613100635,1974974402,3791519004,1033081774,1277568618,1815492186,2118074177,4126668546,2211236943,1748251740,1369810420,3521504564,4193382664,3799085459,2883115123,1647391059,706024767,134480908,2512897874,1176707941,2646852446,806885416,932615841,168101135,798661301,235341577,605164086,461406363,3756188221,3454790438,1311188841,2142417613,3933566367,302582043,495158174,1479289972,874125870,907746093,3698224818,3025820398,1537253627,2756858614,1983593293,3084310113,2108928974,1378429307,3722699582,1580150641,327451799,2790478837,3117535592,0,3253595436,1075847264,3825007647,2041688520,3059440621,3563743934,2378943302,1740553945,1916352843,2487896798,2555137236,2958579944,2244988746,3151024235,3320835882,1336584933,3992714006,2252555205,2588757463,1714631509,293963156,2319795663,3925473552,67240454,4269768577,2689618160,2017213508,631218106,1269344483,2723238387,1571005438,2151694528,93294474,1066570413,563977660,1882732616,4059428100,1673313503,2008463041,2950355573,1109467491,537923632,3858759450,4260623118,3218264685,2177748300,403442708,638784309,3287084079,3193921505,899127202,2286175436,773265209,2479146071,1437050866,4236148354,2050833735,3362022572,3126681063,840505643,3866325909,3227541664,427917720,2655997905,2749160575,1143087718,1412049534,999329963,193497219,2353415882,3354324521,1807268051,672404540,2816401017,3160301282,369822493,2916866934,3688947771,1681011286,1949973070,336202270,2454276571,201721354,1210328172,3093060836,2680341085,3184776046,1135389935,3294782118,965841320,831886756,3554993207,4068047243,3588745010,2345191491,1849112409,3664604599,26054028,2983581028,2622377682,1235855840,3630984372,2891339514,4092916743,3488279077,3395642799,4101667470,1202630377,268961816,1874508501,4034427016,1243948399,1546530418,941366308,1470539505,1941222599,2546386513,3421038627,2715671932,3899946140,1042226977,2521517021,1639824860,227249030,260737669,3765465232,2084453954,1907733956,3429263018,2420656344,100860677,4160157185,470683154,3261161891,1781871967,2924959737,1773779408,394692241,2579611992,974986535,664706745,3655459128,3958962195,731420851,571543859,3530123707,2849626480,126783113,865375399,765172662,1008606754,361203602,3387549984,2278477385,2857719295,1344809080,2782912378,59542671,1503764984,160008576,437062935,1707065306,3622233649,2218934982,3496503480,2185314755,697932208,1512910199,504303377,2075177163,2824099068,1841019862,739644986],m=[2781242211,2230877308,2582542199,2381740923,234877682,3184946027,2984144751,1418839493,1348481072,50462977,2848876391,2102799147,434634494,1656084439,3863849899,2599188086,1167051466,2636087938,1082771913,2281340285,368048890,3954334041,3381544775,201060592,3963727277,1739838676,4250903202,3930435503,3206782108,4149453988,2531553906,1536934080,3262494647,484572669,2923271059,1783375398,1517041206,1098792767,49674231,1334037708,1550332980,4098991525,886171109,150598129,2481090929,1940642008,1398944049,1059722517,201851908,1385547719,1699095331,1587397571,674240536,2704774806,252314885,3039795866,151914247,908333586,2602270848,1038082786,651029483,1766729511,3447698098,2682942837,454166793,2652734339,1951935532,775166490,758520603,3000790638,4004797018,4217086112,4137964114,1299594043,1639438038,3464344499,2068982057,1054729187,1901997871,2534638724,4121318227,1757008337,0,750906861,1614815264,535035132,3363418545,3988151131,3201591914,1183697867,3647454910,1265776953,3734260298,3566750796,3903871064,1250283471,1807470800,717615087,3847203498,384695291,3313910595,3617213773,1432761139,2484176261,3481945413,283769337,100925954,2180939647,4037038160,1148730428,3123027871,3813386408,4087501137,4267549603,3229630528,2315620239,2906624658,3156319645,1215313976,82966005,3747855548,3245848246,1974459098,1665278241,807407632,451280895,251524083,1841287890,1283575245,337120268,891687699,801369324,3787349855,2721421207,3431482436,959321879,1469301956,4065699751,2197585534,1199193405,2898814052,3887750493,724703513,2514908019,2696962144,2551808385,3516813135,2141445340,1715741218,2119445034,2872807568,2198571144,3398190662,700968686,3547052216,1009259540,2041044702,3803995742,487983883,1991105499,1004265696,1449407026,1316239930,504629770,3683797321,168560134,1816667172,3837287516,1570751170,1857934291,4014189740,2797888098,2822345105,2754712981,936633572,2347923833,852879335,1133234376,1500395319,3084545389,2348912013,1689376213,3533459022,3762923945,3034082412,4205598294,133428468,634383082,2949277029,2398386810,3913789102,403703816,3580869306,2297460856,1867130149,1918643758,607656988,4049053350,3346248884,1368901318,600565992,2090982877,2632479860,557719327,3717614411,3697393085,2249034635,2232388234,2430627952,1115438654,3295786421,2865522278,3633334344,84280067,33027830,303828494,2747425121,1600795957,4188952407,3496589753,2434238086,1486471617,658119965,3106381470,953803233,334231800,3005978776,857870609,3151128937,1890179545,2298973838,2805175444,3056442267,574365214,2450884487,550103529,1233637070,4289353045,2018519080,2057691103,2399374476,4166623649,2148108681,387583245,3664101311,836232934,3330556482,3100665960,3280093505,2955516313,2002398509,287182607,3413881008,4238890068,3597515707,975967766],g=[1671808611,2089089148,2006576759,2072901243,4061003762,1807603307,1873927791,3310653893,810573872,16974337,1739181671,729634347,4263110654,3613570519,2883997099,1989864566,3393556426,2191335298,3376449993,2106063485,4195741690,1508618841,1204391495,4027317232,2917941677,3563566036,2734514082,2951366063,2629772188,2767672228,1922491506,3227229120,3082974647,4246528509,2477669779,644500518,911895606,1061256767,4144166391,3427763148,878471220,2784252325,3845444069,4043897329,1905517169,3631459288,827548209,356461077,67897348,3344078279,593839651,3277757891,405286936,2527147926,84871685,2595565466,118033927,305538066,2157648768,3795705826,3945188843,661212711,2999812018,1973414517,152769033,2208177539,745822252,439235610,455947803,1857215598,1525593178,2700827552,1391895634,994932283,3596728278,3016654259,695947817,3812548067,795958831,2224493444,1408607827,3513301457,0,3979133421,543178784,4229948412,2982705585,1542305371,1790891114,3410398667,3201918910,961245753,1256100938,1289001036,1491644504,3477767631,3496721360,4012557807,2867154858,4212583931,1137018435,1305975373,861234739,2241073541,1171229253,4178635257,33948674,2139225727,1357946960,1011120188,2679776671,2833468328,1374921297,2751356323,1086357568,2408187279,2460827538,2646352285,944271416,4110742005,3168756668,3066132406,3665145818,560153121,271589392,4279952895,4077846003,3530407890,3444343245,202643468,322250259,3962553324,1608629855,2543990167,1154254916,389623319,3294073796,2817676711,2122513534,1028094525,1689045092,1575467613,422261273,1939203699,1621147744,2174228865,1339137615,3699352540,577127458,712922154,2427141008,2290289544,1187679302,3995715566,3100863416,339486740,3732514782,1591917662,186455563,3681988059,3762019296,844522546,978220090,169743370,1239126601,101321734,611076132,1558493276,3260915650,3547250131,2901361580,1655096418,2443721105,2510565781,3828863972,2039214713,3878868455,3359869896,928607799,1840765549,2374762893,3580146133,1322425422,2850048425,1823791212,1459268694,4094161908,3928346602,1706019429,2056189050,2934523822,135794696,3134549946,2022240376,628050469,779246638,472135708,2800834470,3032970164,3327236038,3894660072,3715932637,1956440180,522272287,1272813131,3185336765,2340818315,2323976074,1888542832,1044544574,3049550261,1722469478,1222152264,50660867,4127324150,236067854,1638122081,895445557,1475980887,3117443513,2257655686,3243809217,489110045,2662934430,3778599393,4162055160,2561878936,288563729,1773916777,3648039385,2391345038,2493985684,2612407707,505560094,2274497927,3911240169,3460925390,1442818645,678973480,3749357023,2358182796,2717407649,2306869641,219617805,3218761151,3862026214,1120306242,1756942440,1103331905,2578459033,762796589,252780047,2966125488,1425844308,3151392187,372911126],v=[1667474886,2088535288,2004326894,2071694838,4075949567,1802223062,1869591006,3318043793,808472672,16843522,1734846926,724270422,4278065639,3621216949,2880169549,1987484396,3402253711,2189597983,3385409673,2105378810,4210693615,1499065266,1195886990,4042263547,2913856577,3570689971,2728590687,2947541573,2627518243,2762274643,1920112356,3233831835,3082273397,4261223649,2475929149,640051788,909531756,1061110142,4160160501,3435941763,875846760,2779116625,3857003729,4059105529,1903268834,3638064043,825316194,353713962,67374088,3351728789,589522246,3284360861,404236336,2526454071,84217610,2593830191,117901582,303183396,2155911963,3806477791,3958056653,656894286,2998062463,1970642922,151591698,2206440989,741110872,437923380,454765878,1852748508,1515908788,2694904667,1381168804,993742198,3604373943,3014905469,690584402,3823320797,791638366,2223281939,1398011302,3520161977,0,3991743681,538992704,4244381667,2981218425,1532751286,1785380564,3419096717,3200178535,960056178,1246420628,1280103576,1482221744,3486468741,3503319995,4025428677,2863326543,4227536621,1128514950,1296947098,859002214,2240123921,1162203018,4193849577,33687044,2139062782,1347481760,1010582648,2678045221,2829640523,1364325282,2745433693,1077985408,2408548869,2459086143,2644360225,943212656,4126475505,3166494563,3065430391,3671750063,555836226,269496352,4294908645,4092792573,3537006015,3452783745,202118168,320025894,3974901699,1600119230,2543297077,1145359496,387397934,3301201811,2812801621,2122220284,1027426170,1684319432,1566435258,421079858,1936954854,1616945344,2172753945,1330631070,3705438115,572679748,707427924,2425400123,2290647819,1179044492,4008585671,3099120491,336870440,3739122087,1583276732,185277718,3688593069,3772791771,842159716,976899700,168435220,1229577106,101059084,606366792,1549591736,3267517855,3553849021,2897014595,1650632388,2442242105,2509612081,3840161747,2038008818,3890688725,3368567691,926374254,1835907034,2374863873,3587531953,1313788572,2846482505,1819063512,1448540844,4109633523,3941213647,1701162954,2054852340,2930698567,134748176,3132806511,2021165296,623210314,774795868,471606328,2795958615,3031746419,3334885783,3907527627,3722280097,1953799400,522133822,1263263126,3183336545,2341176845,2324333839,1886425312,1044267644,3048588401,1718004428,1212733584,50529542,4143317495,235803164,1633788866,892690282,1465383342,3115962473,2256965911,3250673817,488449850,2661202215,3789633753,4177007595,2560144171,286339874,1768537042,3654906025,2391705863,2492770099,2610673197,505291324,2273808917,3924369609,3469625735,1431699370,673740880,3755965093,2358021891,2711746649,2307489801,218961690,3217021541,3873845719,1111672452,1751693520,1094828930,2576986153,757954394,252645662,2964376443,1414855848,3149649517,370555436],b=[1374988112,2118214995,437757123,975658646,1001089995,530400753,2902087851,1273168787,540080725,2910219766,2295101073,4110568485,1340463100,3307916247,641025152,3043140495,3736164937,632953703,1172967064,1576976609,3274667266,2169303058,2370213795,1809054150,59727847,361929877,3211623147,2505202138,3569255213,1484005843,1239443753,2395588676,1975683434,4102977912,2572697195,666464733,3202437046,4035489047,3374361702,2110667444,1675577880,3843699074,2538681184,1649639237,2976151520,3144396420,4269907996,4178062228,1883793496,2403728665,2497604743,1383856311,2876494627,1917518562,3810496343,1716890410,3001755655,800440835,2261089178,3543599269,807962610,599762354,33778362,3977675356,2328828971,2809771154,4077384432,1315562145,1708848333,101039829,3509871135,3299278474,875451293,2733856160,92987698,2767645557,193195065,1080094634,1584504582,3178106961,1042385657,2531067453,3711829422,1306967366,2438237621,1908694277,67556463,1615861247,429456164,3602770327,2302690252,1742315127,2968011453,126454664,3877198648,2043211483,2709260871,2084704233,4169408201,0,159417987,841739592,504459436,1817866830,4245618683,260388950,1034867998,908933415,168810852,1750902305,2606453969,607530554,202008497,2472011535,3035535058,463180190,2160117071,1641816226,1517767529,470948374,3801332234,3231722213,1008918595,303765277,235474187,4069246893,766945465,337553864,1475418501,2943682380,4003061179,2743034109,4144047775,1551037884,1147550661,1543208500,2336434550,3408119516,3069049960,3102011747,3610369226,1113818384,328671808,2227573024,2236228733,3535486456,2935566865,3341394285,496906059,3702665459,226906860,2009195472,733156972,2842737049,294930682,1206477858,2835123396,2700099354,1451044056,573804783,2269728455,3644379585,2362090238,2564033334,2801107407,2776292904,3669462566,1068351396,742039012,1350078989,1784663195,1417561698,4136440770,2430122216,775550814,2193862645,2673705150,1775276924,1876241833,3475313331,3366754619,270040487,3902563182,3678124923,3441850377,1851332852,3969562369,2203032232,3868552805,2868897406,566021896,4011190502,3135740889,1248802510,3936291284,699432150,832877231,708780849,3332740144,899835584,1951317047,4236429990,3767586992,866637845,4043610186,1106041591,2144161806,395441711,1984812685,1139781709,3433712980,3835036895,2664543715,1282050075,3240894392,1181045119,2640243204,25965917,4203181171,4211818798,3009879386,2463879762,3910161971,1842759443,2597806476,933301370,1509430414,3943906441,3467192302,3076639029,3776767469,2051518780,2631065433,1441952575,404016761,1942435775,1408749034,1610459739,3745345300,2017778566,3400528769,3110650942,941896748,3265478751,371049330,3168937228,675039627,4279080257,967311729,135050206,3635733660,1683407248,2076935265,3576870512,1215061108,3501741890],y=[1347548327,1400783205,3273267108,2520393566,3409685355,4045380933,2880240216,2471224067,1428173050,4138563181,2441661558,636813900,4233094615,3620022987,2149987652,2411029155,1239331162,1730525723,2554718734,3781033664,46346101,310463728,2743944855,3328955385,3875770207,2501218972,3955191162,3667219033,768917123,3545789473,692707433,1150208456,1786102409,2029293177,1805211710,3710368113,3065962831,401639597,1724457132,3028143674,409198410,2196052529,1620529459,1164071807,3769721975,2226875310,486441376,2499348523,1483753576,428819965,2274680428,3075636216,598438867,3799141122,1474502543,711349675,129166120,53458370,2592523643,2782082824,4063242375,2988687269,3120694122,1559041666,730517276,2460449204,4042459122,2706270690,3446004468,3573941694,533804130,2328143614,2637442643,2695033685,839224033,1973745387,957055980,2856345839,106852767,1371368976,4181598602,1033297158,2933734917,1179510461,3046200461,91341917,1862534868,4284502037,605657339,2547432937,3431546947,2003294622,3182487618,2282195339,954669403,3682191598,1201765386,3917234703,3388507166,0,2198438022,1211247597,2887651696,1315723890,4227665663,1443857720,507358933,657861945,1678381017,560487590,3516619604,975451694,2970356327,261314535,3535072918,2652609425,1333838021,2724322336,1767536459,370938394,182621114,3854606378,1128014560,487725847,185469197,2918353863,3106780840,3356761769,2237133081,1286567175,3152976349,4255350624,2683765030,3160175349,3309594171,878443390,1988838185,3704300486,1756818940,1673061617,3403100636,272786309,1075025698,545572369,2105887268,4174560061,296679730,1841768865,1260232239,4091327024,3960309330,3497509347,1814803222,2578018489,4195456072,575138148,3299409036,446754879,3629546796,4011996048,3347532110,3252238545,4270639778,915985419,3483825537,681933534,651868046,2755636671,3828103837,223377554,2607439820,1649704518,3270937875,3901806776,1580087799,4118987695,3198115200,2087309459,2842678573,3016697106,1003007129,2802849917,1860738147,2077965243,164439672,4100872472,32283319,2827177882,1709610350,2125135846,136428751,3874428392,3652904859,3460984630,3572145929,3593056380,2939266226,824852259,818324884,3224740454,930369212,2801566410,2967507152,355706840,1257309336,4148292826,243256656,790073846,2373340630,1296297904,1422699085,3756299780,3818836405,457992840,3099667487,2135319889,77422314,1560382517,1945798516,788204353,1521706781,1385356242,870912086,325965383,2358957921,2050466060,2388260884,2313884476,4006521127,901210569,3990953189,1014646705,1503449823,1062597235,2031621326,3212035895,3931371469,1533017514,350174575,2256028891,2177544179,1052338372,741876788,1606591296,1914052035,213705253,2334669897,1107234197,1899603969,3725069491,2631447780,2422494913,1635502980,1893020342,1950903388,1120974935],A=[2807058932,1699970625,2764249623,1586903591,1808481195,1173430173,1487645946,59984867,4199882800,1844882806,1989249228,1277555970,3623636965,3419915562,1149249077,2744104290,1514790577,459744698,244860394,3235995134,1963115311,4027744588,2544078150,4190530515,1608975247,2627016082,2062270317,1507497298,2200818878,567498868,1764313568,3359936201,2305455554,2037970062,1047239e3,1910319033,1337376481,2904027272,2892417312,984907214,1243112415,830661914,861968209,2135253587,2011214180,2927934315,2686254721,731183368,1750626376,4246310725,1820824798,4172763771,3542330227,48394827,2404901663,2871682645,671593195,3254988725,2073724613,145085239,2280796200,2779915199,1790575107,2187128086,472615631,3029510009,4075877127,3802222185,4107101658,3201631749,1646252340,4270507174,1402811438,1436590835,3778151818,3950355702,3963161475,4020912224,2667994737,273792366,2331590177,104699613,95345982,3175501286,2377486676,1560637892,3564045318,369057872,4213447064,3919042237,1137477952,2658625497,1119727848,2340947849,1530455833,4007360968,172466556,266959938,516552836,0,2256734592,3980931627,1890328081,1917742170,4294704398,945164165,3575528878,958871085,3647212047,2787207260,1423022939,775562294,1739656202,3876557655,2530391278,2443058075,3310321856,547512796,1265195639,437656594,3121275539,719700128,3762502690,387781147,218828297,3350065803,2830708150,2848461854,428169201,122466165,3720081049,1627235199,648017665,4122762354,1002783846,2117360635,695634755,3336358691,4234721005,4049844452,3704280881,2232435299,574624663,287343814,612205898,1039717051,840019705,2708326185,793451934,821288114,1391201670,3822090177,376187827,3113855344,1224348052,1679968233,2361698556,1058709744,752375421,2431590963,1321699145,3519142200,2734591178,188127444,2177869557,3727205754,2384911031,3215212461,2648976442,2450346104,3432737375,1180849278,331544205,3102249176,4150144569,2952102595,2159976285,2474404304,766078933,313773861,2570832044,2108100632,1668212892,3145456443,2013908262,418672217,3070356634,2594734927,1852171925,3867060991,3473416636,3907448597,2614737639,919489135,164948639,2094410160,2997825956,590424639,2486224549,1723872674,3157750862,3399941250,3501252752,3625268135,2555048196,3673637356,1343127501,4130281361,3599595085,2957853679,1297403050,81781910,3051593425,2283490410,532201772,1367295589,3926170974,895287692,1953757831,1093597963,492483431,3528626907,1446242576,1192455638,1636604631,209336225,344873464,1015671571,669961897,3375740769,3857572124,2973530695,3747192018,1933530610,3464042516,935293895,3454686199,2858115069,1863638845,3683022916,4085369519,3292445032,875313188,1080017571,3279033885,621591778,1233856572,2504130317,24197544,3017672716,3835484340,3247465558,2220981195,3060847922,1551124588,1463996600],S=[4104605777,1097159550,396673818,660510266,2875968315,2638606623,4200115116,3808662347,821712160,1986918061,3430322568,38544885,3856137295,718002117,893681702,1654886325,2975484382,3122358053,3926825029,4274053469,796197571,1290801793,1184342925,3556361835,2405426947,2459735317,1836772287,1381620373,3196267988,1948373848,3764988233,3385345166,3263785589,2390325492,1480485785,3111247143,3780097726,2293045232,548169417,3459953789,3746175075,439452389,1362321559,1400849762,1685577905,1806599355,2174754046,137073913,1214797936,1174215055,3731654548,2079897426,1943217067,1258480242,529487843,1437280870,3945269170,3049390895,3313212038,923313619,679998e3,3215307299,57326082,377642221,3474729866,2041877159,133361907,1776460110,3673476453,96392454,878845905,2801699524,777231668,4082475170,2330014213,4142626212,2213296395,1626319424,1906247262,1846563261,562755902,3708173718,1040559837,3871163981,1418573201,3294430577,114585348,1343618912,2566595609,3186202582,1078185097,3651041127,3896688048,2307622919,425408743,3371096953,2081048481,1108339068,2216610296,0,2156299017,736970802,292596766,1517440620,251657213,2235061775,2933202493,758720310,265905162,1554391400,1532285339,908999204,174567692,1474760595,4002861748,2610011675,3234156416,3693126241,2001430874,303699484,2478443234,2687165888,585122620,454499602,151849742,2345119218,3064510765,514443284,4044981591,1963412655,2581445614,2137062819,19308535,1928707164,1715193156,4219352155,1126790795,600235211,3992742070,3841024952,836553431,1669664834,2535604243,3323011204,1243905413,3141400786,4180808110,698445255,2653899549,2989552604,2253581325,3252932727,3004591147,1891211689,2487810577,3915653703,4237083816,4030667424,2100090966,865136418,1229899655,953270745,3399679628,3557504664,4118925222,2061379749,3079546586,2915017791,983426092,2022837584,1607244650,2118541908,2366882550,3635996816,972512814,3283088770,1568718495,3499326569,3576539503,621982671,2895723464,410887952,2623762152,1002142683,645401037,1494807662,2595684844,1335535747,2507040230,4293295786,3167684641,367585007,3885750714,1865862730,2668221674,2960971305,2763173681,1059270954,2777952454,2724642869,1320957812,2194319100,2429595872,2815956275,77089521,3973773121,3444575871,2448830231,1305906550,4021308739,2857194700,2516901860,3518358430,1787304780,740276417,1699839814,1592394909,2352307457,2272556026,188821243,1729977011,3687994002,274084841,3594982253,3613494426,2701949495,4162096729,322734571,2837966542,1640576439,484830689,1202797690,3537852828,4067639125,349075736,3342319475,4157467219,4255800159,1030690015,1155237496,2951971274,1757691577,607398968,2738905026,499347990,3794078908,1011452712,227885567,2818666809,213114376,3034881240,1455525988,3414450555,850817237,1817998408,3092726480],T=[0,235474187,470948374,303765277,941896748,908933415,607530554,708780849,1883793496,2118214995,1817866830,1649639237,1215061108,1181045119,1417561698,1517767529,3767586992,4003061179,4236429990,4069246893,3635733660,3602770327,3299278474,3400528769,2430122216,2664543715,2362090238,2193862645,2835123396,2801107407,3035535058,3135740889,3678124923,3576870512,3341394285,3374361702,3810496343,3977675356,4279080257,4043610186,2876494627,2776292904,3076639029,3110650942,2472011535,2640243204,2403728665,2169303058,1001089995,899835584,666464733,699432150,59727847,226906860,530400753,294930682,1273168787,1172967064,1475418501,1509430414,1942435775,2110667444,1876241833,1641816226,2910219766,2743034109,2976151520,3211623147,2505202138,2606453969,2302690252,2269728455,3711829422,3543599269,3240894392,3475313331,3843699074,3943906441,4178062228,4144047775,1306967366,1139781709,1374988112,1610459739,1975683434,2076935265,1775276924,1742315127,1034867998,866637845,566021896,800440835,92987698,193195065,429456164,395441711,1984812685,2017778566,1784663195,1683407248,1315562145,1080094634,1383856311,1551037884,101039829,135050206,437757123,337553864,1042385657,807962610,573804783,742039012,2531067453,2564033334,2328828971,2227573024,2935566865,2700099354,3001755655,3168937228,3868552805,3902563182,4203181171,4102977912,3736164937,3501741890,3265478751,3433712980,1106041591,1340463100,1576976609,1408749034,2043211483,2009195472,1708848333,1809054150,832877231,1068351396,766945465,599762354,159417987,126454664,361929877,463180190,2709260871,2943682380,3178106961,3009879386,2572697195,2538681184,2236228733,2336434550,3509871135,3745345300,3441850377,3274667266,3910161971,3877198648,4110568485,4211818798,2597806476,2497604743,2261089178,2295101073,2733856160,2902087851,3202437046,2968011453,3936291284,3835036895,4136440770,4169408201,3535486456,3702665459,3467192302,3231722213,2051518780,1951317047,1716890410,1750902305,1113818384,1282050075,1584504582,1350078989,168810852,67556463,371049330,404016761,841739592,1008918595,775550814,540080725,3969562369,3801332234,4035489047,4269907996,3569255213,3669462566,3366754619,3332740144,2631065433,2463879762,2160117071,2395588676,2767645557,2868897406,3102011747,3069049960,202008497,33778362,270040487,504459436,875451293,975658646,675039627,641025152,2084704233,1917518562,1615861247,1851332852,1147550661,1248802510,1484005843,1451044056,933301370,967311729,733156972,632953703,260388950,25965917,328671808,496906059,1206477858,1239443753,1543208500,1441952575,2144161806,1908694277,1675577880,1842759443,3610369226,3644379585,3408119516,3307916247,4011190502,3776767469,4077384432,4245618683,2809771154,2842737049,3144396420,3043140495,2673705150,2438237621,2203032232,2370213795],M=[0,185469197,370938394,487725847,741876788,657861945,975451694,824852259,1483753576,1400783205,1315723890,1164071807,1950903388,2135319889,1649704518,1767536459,2967507152,3152976349,2801566410,2918353863,2631447780,2547432937,2328143614,2177544179,3901806776,3818836405,4270639778,4118987695,3299409036,3483825537,3535072918,3652904859,2077965243,1893020342,1841768865,1724457132,1474502543,1559041666,1107234197,1257309336,598438867,681933534,901210569,1052338372,261314535,77422314,428819965,310463728,3409685355,3224740454,3710368113,3593056380,3875770207,3960309330,4045380933,4195456072,2471224067,2554718734,2237133081,2388260884,3212035895,3028143674,2842678573,2724322336,4138563181,4255350624,3769721975,3955191162,3667219033,3516619604,3431546947,3347532110,2933734917,2782082824,3099667487,3016697106,2196052529,2313884476,2499348523,2683765030,1179510461,1296297904,1347548327,1533017514,1786102409,1635502980,2087309459,2003294622,507358933,355706840,136428751,53458370,839224033,957055980,605657339,790073846,2373340630,2256028891,2607439820,2422494913,2706270690,2856345839,3075636216,3160175349,3573941694,3725069491,3273267108,3356761769,4181598602,4063242375,4011996048,3828103837,1033297158,915985419,730517276,545572369,296679730,446754879,129166120,213705253,1709610350,1860738147,1945798516,2029293177,1239331162,1120974935,1606591296,1422699085,4148292826,4233094615,3781033664,3931371469,3682191598,3497509347,3446004468,3328955385,2939266226,2755636671,3106780840,2988687269,2198438022,2282195339,2501218972,2652609425,1201765386,1286567175,1371368976,1521706781,1805211710,1620529459,2105887268,1988838185,533804130,350174575,164439672,46346101,870912086,954669403,636813900,788204353,2358957921,2274680428,2592523643,2441661558,2695033685,2880240216,3065962831,3182487618,3572145929,3756299780,3270937875,3388507166,4174560061,4091327024,4006521127,3854606378,1014646705,930369212,711349675,560487590,272786309,457992840,106852767,223377554,1678381017,1862534868,1914052035,2031621326,1211247597,1128014560,1580087799,1428173050,32283319,182621114,401639597,486441376,768917123,651868046,1003007129,818324884,1503449823,1385356242,1333838021,1150208456,1973745387,2125135846,1673061617,1756818940,2970356327,3120694122,2802849917,2887651696,2637442643,2520393566,2334669897,2149987652,3917234703,3799141122,4284502037,4100872472,3309594171,3460984630,3545789473,3629546796,2050466060,1899603969,1814803222,1730525723,1443857720,1560382517,1075025698,1260232239,575138148,692707433,878443390,1062597235,243256656,91341917,409198410,325965383,3403100636,3252238545,3704300486,3620022987,3874428392,3990953189,4042459122,4227665663,2460449204,2578018489,2226875310,2411029155,3198115200,3046200461,2827177882,2743944855],w=[0,218828297,437656594,387781147,875313188,958871085,775562294,590424639,1750626376,1699970625,1917742170,2135253587,1551124588,1367295589,1180849278,1265195639,3501252752,3720081049,3399941250,3350065803,3835484340,3919042237,4270507174,4085369519,3102249176,3051593425,2734591178,2952102595,2361698556,2177869557,2530391278,2614737639,3145456443,3060847922,2708326185,2892417312,2404901663,2187128086,2504130317,2555048196,3542330227,3727205754,3375740769,3292445032,3876557655,3926170974,4246310725,4027744588,1808481195,1723872674,1910319033,2094410160,1608975247,1391201670,1173430173,1224348052,59984867,244860394,428169201,344873464,935293895,984907214,766078933,547512796,1844882806,1627235199,2011214180,2062270317,1507497298,1423022939,1137477952,1321699145,95345982,145085239,532201772,313773861,830661914,1015671571,731183368,648017665,3175501286,2957853679,2807058932,2858115069,2305455554,2220981195,2474404304,2658625497,3575528878,3625268135,3473416636,3254988725,3778151818,3963161475,4213447064,4130281361,3599595085,3683022916,3432737375,3247465558,3802222185,4020912224,4172763771,4122762354,3201631749,3017672716,2764249623,2848461854,2331590177,2280796200,2431590963,2648976442,104699613,188127444,472615631,287343814,840019705,1058709744,671593195,621591778,1852171925,1668212892,1953757831,2037970062,1514790577,1463996600,1080017571,1297403050,3673637356,3623636965,3235995134,3454686199,4007360968,3822090177,4107101658,4190530515,2997825956,3215212461,2830708150,2779915199,2256734592,2340947849,2627016082,2443058075,172466556,122466165,273792366,492483431,1047239e3,861968209,612205898,695634755,1646252340,1863638845,2013908262,1963115311,1446242576,1530455833,1277555970,1093597963,1636604631,1820824798,2073724613,1989249228,1436590835,1487645946,1337376481,1119727848,164948639,81781910,331544205,516552836,1039717051,821288114,669961897,719700128,2973530695,3157750862,2871682645,2787207260,2232435299,2283490410,2667994737,2450346104,3647212047,3564045318,3279033885,3464042516,3980931627,3762502690,4150144569,4199882800,3070356634,3121275539,2904027272,2686254721,2200818878,2384911031,2570832044,2486224549,3747192018,3528626907,3310321856,3359936201,3950355702,3867060991,4049844452,4234721005,1739656202,1790575107,2108100632,1890328081,1402811438,1586903591,1233856572,1149249077,266959938,48394827,369057872,418672217,1002783846,919489135,567498868,752375421,209336225,24197544,376187827,459744698,945164165,895287692,574624663,793451934,1679968233,1764313568,2117360635,1933530610,1343127501,1560637892,1243112415,1192455638,3704280881,3519142200,3336358691,3419915562,3907448597,3857572124,4075877127,4294704398,3029510009,3113855344,2927934315,2744104290,2159976285,2377486676,2594734927,2544078150],E=[0,151849742,303699484,454499602,607398968,758720310,908999204,1059270954,1214797936,1097159550,1517440620,1400849762,1817998408,1699839814,2118541908,2001430874,2429595872,2581445614,2194319100,2345119218,3034881240,3186202582,2801699524,2951971274,3635996816,3518358430,3399679628,3283088770,4237083816,4118925222,4002861748,3885750714,1002142683,850817237,698445255,548169417,529487843,377642221,227885567,77089521,1943217067,2061379749,1640576439,1757691577,1474760595,1592394909,1174215055,1290801793,2875968315,2724642869,3111247143,2960971305,2405426947,2253581325,2638606623,2487810577,3808662347,3926825029,4044981591,4162096729,3342319475,3459953789,3576539503,3693126241,1986918061,2137062819,1685577905,1836772287,1381620373,1532285339,1078185097,1229899655,1040559837,923313619,740276417,621982671,439452389,322734571,137073913,19308535,3871163981,4021308739,4104605777,4255800159,3263785589,3414450555,3499326569,3651041127,2933202493,2815956275,3167684641,3049390895,2330014213,2213296395,2566595609,2448830231,1305906550,1155237496,1607244650,1455525988,1776460110,1626319424,2079897426,1928707164,96392454,213114376,396673818,514443284,562755902,679998e3,865136418,983426092,3708173718,3557504664,3474729866,3323011204,4180808110,4030667424,3945269170,3794078908,2507040230,2623762152,2272556026,2390325492,2975484382,3092726480,2738905026,2857194700,3973773121,3856137295,4274053469,4157467219,3371096953,3252932727,3673476453,3556361835,2763173681,2915017791,3064510765,3215307299,2156299017,2307622919,2459735317,2610011675,2081048481,1963412655,1846563261,1729977011,1480485785,1362321559,1243905413,1126790795,878845905,1030690015,645401037,796197571,274084841,425408743,38544885,188821243,3613494426,3731654548,3313212038,3430322568,4082475170,4200115116,3780097726,3896688048,2668221674,2516901860,2366882550,2216610296,3141400786,2989552604,2837966542,2687165888,1202797690,1320957812,1437280870,1554391400,1669664834,1787304780,1906247262,2022837584,265905162,114585348,499347990,349075736,736970802,585122620,972512814,821712160,2595684844,2478443234,2293045232,2174754046,3196267988,3079546586,2895723464,2777952454,3537852828,3687994002,3234156416,3385345166,4142626212,4293295786,3841024952,3992742070,174567692,57326082,410887952,292596766,777231668,660510266,1011452712,893681702,1108339068,1258480242,1343618912,1494807662,1715193156,1865862730,1948373848,2100090966,2701949495,2818666809,3004591147,3122358053,2235061775,2352307457,2535604243,2653899549,3915653703,3764988233,4219352155,4067639125,3444575871,3294430577,3746175075,3594982253,836553431,953270745,600235211,718002117,367585007,484830689,133361907,251657213,2041877159,1891211689,1806599355,1654886325,1568718495,1418573201,1335535747,1184342925];function F(e){for(var t=[],r=0;r>2,this._Ke[r][t%4]=i[t],this._Kd[e-r][t%4]=i[t];for(var a,s=0,l=n;l>16&255]<<24^d[a>>8&255]<<16^d[255&a]<<8^d[a>>24&255]^h[s]<<24,s+=1,8!=n)for(t=1;t>8&255]<<8^d[a>>16&255]<<16^d[a>>24&255]<<24;for(t=n/2+1;t>2,f=l%4,this._Ke[u][f]=i[t],this._Kd[e-u][f]=i[t++],l++}for(var u=1;u>24&255]^M[a>>16&255]^w[a>>8&255]^E[255&a]},C.prototype.encrypt=function(e){if(16!=e.length)throw new Error("invalid plaintext size (must be 16 bytes)");for(var t=this._Ke.length-1,r=[0,0,0,0],o=F(e),n=0;n<4;n++)o[n]^=this._Ke[0][n];for(var a=1;a>24&255]^m[o[(n+1)%4]>>16&255]^g[o[(n+2)%4]>>8&255]^v[255&o[(n+3)%4]]^this._Ke[a][n];o=r.slice()}var s,l=i(16);for(n=0;n<4;n++)s=this._Ke[t][n],l[4*n]=255&(d[o[n]>>24&255]^s>>24),l[4*n+1]=255&(d[o[(n+1)%4]>>16&255]^s>>16),l[4*n+2]=255&(d[o[(n+2)%4]>>8&255]^s>>8),l[4*n+3]=255&(d[255&o[(n+3)%4]]^s);return l},C.prototype.decrypt=function(e){if(16!=e.length)throw new Error("invalid ciphertext size (must be 16 bytes)");for(var t=this._Kd.length-1,r=[0,0,0,0],o=F(e),n=0;n<4;n++)o[n]^=this._Kd[0][n];for(var a=1;a>24&255]^y[o[(n+3)%4]>>16&255]^A[o[(n+2)%4]>>8&255]^S[255&o[(n+1)%4]]^this._Kd[a][n];o=r.slice()}var s,l=i(16);for(n=0;n<4;n++)s=this._Kd[t][n],l[4*n]=255&(f[o[n]>>24&255]^s>>24),l[4*n+1]=255&(f[o[(n+3)%4]>>16&255]^s>>16),l[4*n+2]=255&(f[o[(n+2)%4]>>8&255]^s>>8),l[4*n+3]=255&(f[255&o[(n+1)%4]]^s);return l};var B=function(e){if(!(this instanceof B))throw Error("AES must be instanitated with `new`");this.description="Electronic Code Block",this.name="ecb",this._aes=new C(e)};B.prototype.encrypt=function(e){if((e=n(e)).length%16!=0)throw new Error("invalid plaintext size (must be multiple of 16 bytes)");for(var t=i(e.length),r=i(16),o=0;o=0;--t)this._counter[t]=e%256,e>>=8},k.prototype.setBytes=function(e){if(16!=(e=n(e,!0)).length)throw new Error("invalid counter bytes size (must be 16 bytes)");this._counter=e},k.prototype.increment=function(){for(var e=15;e>=0;e--){if(255!==this._counter[e]){this._counter[e]++;break}this._counter[e]=0}};var R=function(e,t){if(!(this instanceof R))throw Error("AES must be instanitated with `new`");this.description="Counter",this.name="ctr",t instanceof k||(t=new k(t)),this._counter=t,this._remainingCounter=null,this._remainingCounterIndex=16,this._aes=new C(e)};R.prototype.encrypt=function(e){for(var t=n(e,!0),r=0;r16)throw new Error("PKCS#7 padding byte out of range");for(var r=e.length-t,o=0;o=64;){let f,p,m,g,v,b=r,y=o,A=n,S=i,T=a,M=s,w=l,E=u;for(p=0;p<16;p++)m=h+4*p,c[p]=(255&e[m])<<24|(255&e[m+1])<<16|(255&e[m+2])<<8|255&e[m+3];for(p=16;p<64;p++)f=c[p-2],g=(f>>>17|f<<15)^(f>>>19|f<<13)^f>>>10,f=c[p-15],v=(f>>>7|f<<25)^(f>>>18|f<<14)^f>>>3,c[p]=(g+c[p-7]|0)+(v+c[p-16]|0)|0;for(p=0;p<64;p++)g=(((T>>>6|T<<26)^(T>>>11|T<<21)^(T>>>25|T<<7))+(T&M^~T&w)|0)+(E+(t[p]+c[p]|0)|0)|0,v=((b>>>2|b<<30)^(b>>>13|b<<19)^(b>>>22|b<<10))+(b&y^b&A^y&A)|0,E=w,w=M,M=T,T=S+g|0,S=A,A=y,y=b,b=g+v|0;r=r+b|0,o=o+y|0,n=n+A|0,i=i+S|0,a=a+T|0,s=s+M|0,l=l+w|0,u=u+E|0,h+=64,d-=64}}h(e);let d,f=e.length%64,p=e.length/536870912|0,m=e.length<<3,g=f<56?56:120,v=e.slice(e.length-f,e.length);for(v.push(128),d=f+1;d>>24&255),v.push(p>>>16&255),v.push(p>>>8&255),v.push(p>>>0&255),v.push(m>>>24&255),v.push(m>>>16&255),v.push(m>>>8&255),v.push(m>>>0&255),h(v),[r>>>24&255,r>>>16&255,r>>>8&255,r>>>0&255,o>>>24&255,o>>>16&255,o>>>8&255,o>>>0&255,n>>>24&255,n>>>16&255,n>>>8&255,n>>>0&255,i>>>24&255,i>>>16&255,i>>>8&255,i>>>0&255,a>>>24&255,a>>>16&255,a>>>8&255,a>>>0&255,s>>>24&255,s>>>16&255,s>>>8&255,s>>>0&255,l>>>24&255,l>>>16&255,l>>>8&255,l>>>0&255,u>>>24&255,u>>>16&255,u>>>8&255,u>>>0&255]}function n(e,t,r){e=e.length<=64?e:o(e);const n=64+t.length+4,i=new Array(n),a=new Array(64);let s,l=[];for(s=0;s<64;s++)i[s]=54;for(s=0;s=n-4;e--){if(i[e]++,i[e]<=255)return;i[e]=0}}for(;r>=32;)u(),l=l.concat(o(a.concat(o(i)))),r-=32;return r>0&&(u(),l=l.concat(o(a.concat(o(i))).slice(0,r))),l}function i(e,t,r,o,n){let i;for(u(e,16*(2*r-1),n,0,16),i=0;i<2*r;i++)l(e,16*i,n,16),s(n,o),u(n,0,e,t+16*i,16);for(i=0;i>>32-t}function s(e,t){u(e,0,t,0,16);for(let e=8;e>0;e-=2)t[4]^=a(t[0]+t[12],7),t[8]^=a(t[4]+t[0],9),t[12]^=a(t[8]+t[4],13),t[0]^=a(t[12]+t[8],18),t[9]^=a(t[5]+t[1],7),t[13]^=a(t[9]+t[5],9),t[1]^=a(t[13]+t[9],13),t[5]^=a(t[1]+t[13],18),t[14]^=a(t[10]+t[6],7),t[2]^=a(t[14]+t[10],9),t[6]^=a(t[2]+t[14],13),t[10]^=a(t[6]+t[2],18),t[3]^=a(t[15]+t[11],7),t[7]^=a(t[3]+t[15],9),t[11]^=a(t[7]+t[3],13),t[15]^=a(t[11]+t[7],18),t[1]^=a(t[0]+t[3],7),t[2]^=a(t[1]+t[0],9),t[3]^=a(t[2]+t[1],13),t[0]^=a(t[3]+t[2],18),t[6]^=a(t[5]+t[4],7),t[7]^=a(t[6]+t[5],9),t[4]^=a(t[7]+t[6],13),t[5]^=a(t[4]+t[7],18),t[11]^=a(t[10]+t[9],7),t[8]^=a(t[11]+t[10],9),t[9]^=a(t[8]+t[11],13),t[10]^=a(t[9]+t[8],18),t[12]^=a(t[15]+t[14],7),t[13]^=a(t[12]+t[15],9),t[14]^=a(t[13]+t[12],13),t[15]^=a(t[14]+t[13],18);for(let r=0;r<16;++r)e[r]+=t[r]}function l(e,t,r,o){for(let n=0;n=256)return!1}return!0}function h(e,t){if("number"!=typeof e||e%1)throw new Error("invalid "+t);return e}function d(e,t,o,a,s,d,f){if(o=h(o,"N"),a=h(a,"r"),s=h(s,"p"),d=h(d,"dkLen"),0===o||0!=(o&o-1))throw new Error("N must be power of 2");if(o>r/128/a)throw new Error("N too large");if(a>r/128/s)throw new Error("r too large");if(!c(e))throw new Error("password must be an array or buffer");if(e=Array.prototype.slice.call(e),!c(t))throw new Error("salt must be an array or buffer");t=Array.prototype.slice.call(t);let p=n(e,t,128*s*a);const m=new Uint32Array(32*s*a);for(let e=0;eJ&&(t=J);for(let e=0;eJ&&(t=J);for(let e=0;e>0&255),p.push(m[e]>>8&255),p.push(m[e]>>16&255),p.push(m[e]>>24&255);const r=n(e,p,d);return f&&f(null,1,r),r}f&&L(P)};if(!f)for(;;){const e=P();if(null!=e)return e}P()}const f={scrypt:function(e,t,r,o,n,i,a){return new Promise((function(s,l){let u=0;a&&a(0),d(e,t,r,o,n,i,(function(e,t,r){if(e)l(e);else if(r)a&&1!==u&&a(1),s(new Uint8Array(r));else if(a&&t!==u)return u=t,a(t)}))}))},syncScrypt:function(e,t,r,o,n,i){return new Uint8Array(d(e,t,r,o,n,i))}};e.exports=f}()})).scrypt;if(e.crypto&&crypto.getRandomValues){var Ea=new Uint8Array(16);Ma=function(){return crypto.getRandomValues(Ea),Ea}}if(!Ma){var Fa=new Array(16);Ma=function(){for(var e,t=0;t<16;t++)0==(3&t)&&(e=4294967296*Math.random()),Fa[t]=e>>>((3&t)<<3)&255;return Fa}}for(var Ca=Ma,Ba=[],Ja={},La=0;La<256;La++)Ba[La]=(La+256).toString(16).substr(1),Ja[Ba[La]]=La;function Pa(e,t){var r=t||0,o=Ba;return o[e[r++]]+o[e[r++]]+o[e[r++]]+o[e[r++]]+"-"+o[e[r++]]+o[e[r++]]+"-"+o[e[r++]]+o[e[r++]]+"-"+o[e[r++]]+o[e[r++]]+"-"+o[e[r++]]+o[e[r++]]+o[e[r++]]+o[e[r++]]+o[e[r++]]+o[e[r++]]}var ka=Ca(),Ra=[1|ka[0],ka[1],ka[2],ka[3],ka[4],ka[5]],Da=16383&(ka[6]<<8|ka[7]),Oa=0,Na=0;function Ia(e,t,r){var o=t&&r||0;"string"==typeof e&&(t="binary"==e?new Array(16):null,e=null);var n=(e=e||{}).random||(e.rng||Ca)();if(n[6]=15&n[6]|64,n[8]=63&n[8]|128,t)for(var i=0;i<16;i++)t[o+i]=n[i];return t||Pa(n)}var Xa=Ia;Xa.v1=function(e,t,r){var o=t&&r||0,n=t||[],i=void 0!==(e=e||{}).clockseq?e.clockseq:Da,a=void 0!==e.msecs?e.msecs:(new Date).getTime(),s=void 0!==e.nsecs?e.nsecs:Na+1,l=a-Oa+(s-Na)/1e4;if(l<0&&void 0===e.clockseq&&(i=i+1&16383),(l<0||a>Oa)&&void 0===e.nsecs&&(s=0),s>=1e4)throw new Error("uuid.v1(): Can't create more than 10M uuids/sec");Oa=a,Na=s,Da=i;var u=(1e4*(268435455&(a+=122192928e5))+s)%4294967296;n[o++]=u>>>24&255,n[o++]=u>>>16&255,n[o++]=u>>>8&255,n[o++]=255&u;var c=a/4294967296*1e4&268435455;n[o++]=c>>>8&255,n[o++]=255&c,n[o++]=c>>>24&15|16,n[o++]=c>>>16&255,n[o++]=i>>>8|128,n[o++]=255&i;for(var h=e.node||Ra,d=0;d<6;d++)n[o+d]=h[d];return t||Pa(n)},Xa.v4=Ia,Xa.parse=function(e,t,r){var o=t&&r||0,n=0;for(t=t||[],e.toLowerCase().replace(/[0-9a-f]{2}/g,(function(e){n<16&&(t[o+n++]=Ja[e])}));n<16;)t[o+n++]=0;return t},Xa.unparse=Pa;var _a=Xa,Ha=window&&window.__awaiter||function(e,t,r,o){return new(r||(r=Promise))((function(n,i){function a(e){try{l(o.next(e))}catch(e){i(e)}}function s(e){try{l(o.throw(e))}catch(e){i(e)}}function l(e){var t;e.done?n(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(a,s)}l((o=o.apply(e,t||[])).next())}))};class xa extends ue{isKeystoreAccount(e){return!(!e||!e._isKeystoreAccount)}}function Ga(e,t,r){return Ha(this,void 0,void 0,(function*(){const o=JSON.parse(e),n=va(t),i=function(e){return Ha(this,void 0,void 0,(function*(){const t=ma(ba(o,"crypto/ciphertext"));if(C(function(e,t){return Ne(T([e,t]))}(e.slice(16,32),t)).substring(2)!==ba(o,"crypto/mac").toLowerCase())throw new Error("invalid password");const r=function(e,t){if("aes-128-ctr"===ba(o,"crypto/cipher")){const r=ma(ba(o,"crypto/cipherparams/iv")),n=new pa.Counter(r);return S(new pa.ModeOfOperation.ctr(e,n).decrypt(t))}return null}(e.slice(0,16),t),n=e.slice(32,64);if(!r)throw new Error("unsupported cipher");const i=Kn(r);if(o.address){let e=o.address.toLowerCase();if("0x"!==e.substring(0,2)&&(e="0x"+e),qe(e)!==i)throw new Error("address mismatch")}const a={_isKeystoreAccount:!0,address:i,privateKey:C(r)};if("0.1"===ba(o,"x-ethers/version")){const e=ma(ba(o,"x-ethers/mnemonicCiphertext")),t=ma(ba(o,"x-ethers/mnemonicCounter")),r=new pa.Counter(t),i=new pa.ModeOfOperation.ctr(n,r),s=ba(o,"x-ethers/path")||na,l=la(S(i.decrypt(e))),u=ia.fromMnemonic(l).derivePath(s);if(u.privateKey!=a.privateKey)throw new Error("mnemonic mismatch");a.mnemonic=u.mnemonic,a.path=u.path}return new xa(a)}))},a=ba(o,"crypto/kdf");if(a&&"string"==typeof a){if("scrypt"===a.toLowerCase()){const e=ma(ba(o,"crypto/kdfparams/salt")),t=parseInt(ba(o,"crypto/kdfparams/n")),a=parseInt(ba(o,"crypto/kdfparams/r")),s=parseInt(ba(o,"crypto/kdfparams/p"));if(!t||!a||!s)throw new Error("unsupported key-derivation function parameters");if(0!=(t&t-1))throw new Error("unsupported key-derivation function parameter value for N");if(32!==parseInt(ba(o,"crypto/kdfparams/dklen")))throw new Error("unsupported key-derivation derived-key length");return i(yield wa(n,e,t,a,s,64,r))}if("pbkdf2"===a.toLowerCase()){const e=ma(ba(o,"crypto/kdfparams/salt"));let t=null;const r=ba(o,"crypto/kdfparams/prf");if("hmac-sha256"===r)t="sha256";else{if("hmac-sha512"!==r)throw new Error("unsupported prf");t="sha512"}const a=parseInt(ba(o,"crypto/kdfparams/c")),s=parseInt(ba(o,"crypto/kdfparams/dklen"));if(32!==s)throw new Error("unsupported key-derivation derived-key length");return i(S(Wo(n,e,a,s,t)))}}throw new Error("unsupported key-derivation function")}))}function Ua(e,t,r){if(Sa(e)){r&&r(0);const o=function(e,t){const r=JSON.parse(e);t=va(t);const o=qe(ba(r,"ethaddr")),n=ma(ba(r,"encseed"));n&&n.length%16==0||ya.throwArgumentError("invalid encseed","json",e);const i=S(Wo(t,t,2e3,32,"sha256")).slice(0,16),a=n.slice(0,16),s=n.slice(16),l=new pa.ModeOfOperation.cbc(i,a),u=pa.padding.pkcs7.strip(S(l.decrypt(s)));let c="";for(let e=0;et),re(this,"address",Kn(this.publicKey)),this.address!==qe(e.address)&&za.throwArgumentError("privateKey/address mismatch","privateKey","[REDCACTED]"),null!=e.mnemonic){const t=e.mnemonic,r=e.path||na;re(this,"_mnemonic",()=>t),re(this,"path",e.path),Kn(ia.fromMnemonic(t).derivePath(r).privateKey)!==this.address&&za.throwArgumentError("mnemonic/address mismatch","privateKey","[REDCACTED]")}else re(this,"_mnemonic",()=>null),re(this,"path",null)}else{if(xn.isSigningKey(e))"secp256k1"!==e.curve&&za.throwArgumentError("unsupported curve; must be secp256k1","privateKey","[REDACTED]"),re(this,"_signingKey",()=>e);else{const t=new xn(e);re(this,"_signingKey",()=>t)}re(this,"_mnemonic",()=>null),re(this,"path",null),re(this,"address",Kn(this.publicKey))}var r;t&&!ir.isProvider(t)&&za.throwArgumentError("invalid provider","provider",t),re(this,"provider",t||null)}get mnemonic(){return this._mnemonic()}get privateKey(){return this._signingKey().privateKey}get publicKey(){return this._signingKey().publicKey}getAddress(){return Promise.resolve(this.address)}connect(e){return new Va(this,e)}signTransaction(e){return ne(e).then(e=>{if(null!=e.from){if(qe(e.from)!==this.address)throw new Error("transaction from address mismatch");delete e.from}const t=this._signingKey().signDigest(Ne(qn(e)));return qn(e,t)})}signMessage(e){return Promise.resolve(D(this._signingKey().signDigest(Yt(e))))}encrypt(e,t,r){if("function"!=typeof t||r||(r=t,t={}),r&&"function"!=typeof r)throw new Error("invalid callback");return t||(t={}),function(e,t,r,o){try{if(qe(e.address)!==Kn(e.privateKey))throw new Error("address/privateKey mismatch");if(null!=e.mnemonic){if(ia.fromMnemonic(e.mnemonic).derivePath(e.path||na).privateKey!=e.privateKey)throw new Error("mnemonic mismatch")}else if(null!=e.path)throw new Error("cannot specify path without mnemonic")}catch(e){return Promise.reject(e)}"function"!=typeof r||o||(o=r,r={}),r||(r={});const n=S(e.privateKey),i=va(t);let a=null,s=e.path;e.mnemonic&&(a=S(sa(e.mnemonic)),s||(s=na));let l=r.client;l||(l="ethers.js");let u=null;u=r.salt?S(r.salt):fa(32);let c=null;if(r.iv){if(c=S(r.iv),16!==c.length)throw new Error("invalid iv")}else c=fa(16);let h=null;if(r.uuid){if(h=S(r.uuid),16!==h.length)throw new Error("invalid uuid")}else h=fa(16);let d=1<<17,f=8,p=1;return r.scrypt&&(r.scrypt.N&&(d=r.scrypt.N),r.scrypt.r&&(f=r.scrypt.r),r.scrypt.p&&(p=r.scrypt.p)),wa(i,u,d,f,p,64,o).then(t=>{const r=(t=S(t)).slice(0,16),o=t.slice(16,32),i=t.slice(32,64),m=new pa.Counter(c),g=S(new pa.ModeOfOperation.ctr(r,m).encrypt(n)),v=Ne(T([o,g])),b={address:e.address.substring(2).toLowerCase(),id:_a.v4({random:h}),version:3,Crypto:{cipher:"aes-128-ctr",cipherparams:{iv:C(c).substring(2)},ciphertext:C(g).substring(2),kdf:"scrypt",kdfparams:{salt:C(u).substring(2),n:d,dklen:32,p:p,r:f},mac:v.substring(2)}};if(a){const e=fa(16),t=new pa.Counter(e),r=S(new pa.ModeOfOperation.ctr(i,t).encrypt(a)),o=new Date,n=o.getUTCFullYear()+"-"+ga(o.getUTCMonth()+1,2)+"-"+ga(o.getUTCDate(),2)+"T"+ga(o.getUTCHours(),2)+"-"+ga(o.getUTCMinutes(),2)+"-"+ga(o.getUTCSeconds(),2)+".0Z";b["x-ethers"]={client:l,gethFilename:"UTC--"+n+"--"+b.address,mnemonicCounter:C(e).substring(2),mnemonicCiphertext:C(r).substring(2),path:s,version:"0.1"}}return JSON.stringify(b)})}(this,e,t,r)}static createRandom(e){let t=fa(16);e||(e={}),e.extraEntropy&&(t=S(J(Ne(T([t,e.extraEntropy])),0,16)));const r=la(t,e.locale);return Va.fromMnemonic(r,e.path,e.locale)}static fromEncryptedJson(e,t,r){return Ua(e,t,r).then(e=>new Va(e))}static fromMnemonic(e,t,r){return t||(t=na),new Va(ia.fromMnemonic(e,null,r).derivePath(t))}}const Za=new p("networks/5.0.0-beta.134");function ja(e){return function(t,r){null==r&&(r={});const o=[];if(t.InfuraProvider)try{o.push(new t.InfuraProvider(e,r.infura))}catch(e){}if(t.EtherscanProvider)try{o.push(new t.EtherscanProvider(e,r.etherscan))}catch(e){}if(t.AlchemyProvider)try{o.push(new t.AlchemyProvider(e,r.alchemy))}catch(e){}if(t.CloudflareProvider)try{o.push(new t.CloudflareProvider(e))}catch(e){}if(0===o.length)return null;if(t.FallbackProvider){let e=o.length/2;return null!=r.quorum?e=r.quorum:e>2&&(e=2),new t.FallbackProvider(o,e)}return o[0]}}function Ka(e,t){return function(r,o){return r.JsonRpcProvider?new r.JsonRpcProvider(e,t):null}}const Qa={chainId:1,ensAddress:"0x314159265dd8dbb310642f98f50c066173c1259b",name:"homestead",_defaultProvider:ja("homestead")},qa={chainId:3,ensAddress:"0x112234455c3a32fd11230c42e7bccd4a84e02010",name:"ropsten",_defaultProvider:ja("ropsten")},Ya={chainId:63,name:"classicMordor",_defaultProvider:Ka("https://www.ethercluster.com/mordor","classicMordor")},Wa={unspecified:{chainId:0,name:"unspecified"},homestead:Qa,mainnet:Qa,morden:{chainId:2,name:"morden"},ropsten:qa,testnet:qa,rinkeby:{chainId:4,ensAddress:"0xe7410170f87102DF0055eB195163A03B7F2Bff4A",name:"rinkeby",_defaultProvider:ja("rinkeby")},kovan:{chainId:42,name:"kovan",_defaultProvider:ja("kovan")},goerli:{chainId:5,ensAddress:"0x112234455c3a32fd11230c42e7bccd4a84e02010",name:"goerli",_defaultProvider:ja("goerli")},classic:{chainId:61,name:"classic",_defaultProvider:Ka("https://www.ethercluster.com/etc","classic")},classicMorden:{chainId:62,name:"classicMorden"},classicMordor:Ya,classicTestnet:Ya,classicKotti:{chainId:6,name:"classicKotti",_defaultProvider:Ka("https://www.ethercluster.com/kotti","classicKotti")}};function $a(e){if(null==e)return null;if("number"==typeof e){for(const t in Wa){const r=Wa[t];if(r.chainId===e)return{name:r.name,chainId:r.chainId,ensAddress:r.ensAddress||null,_defaultProvider:r._defaultProvider||null}}return{chainId:e,name:"unknown"}}if("string"==typeof e){const t=Wa[e];return null==t?null:{name:t.name,chainId:t.chainId,ensAddress:t.ensAddress,_defaultProvider:t._defaultProvider||null}}const t=Wa[e.name];return t?(0!==e.chainId&&e.chainId!==t.chainId&&Za.throwArgumentError("network chainId mismatch","network",e),{name:e.name,chainId:t.chainId,ensAddress:e.ensAddress||t.ensAddress||null,_defaultProvider:e._defaultProvider||t._defaultProvider||null}):("number"!=typeof e.chainId&&Za.throwArgumentError("invalid network chainId","network",e),e)}var es=r((function(t,r){var o=function(e){function t(){this.fetch=!1,this.DOMException=e.DOMException}return t.prototype=e,new t}("undefined"!=typeof self?self:e);!function(e){!function(t){var r={searchParams:"URLSearchParams"in e,iterable:"Symbol"in e&&"iterator"in Symbol,blob:"FileReader"in e&&"Blob"in e&&function(){try{return new Blob,!0}catch(e){return!1}}(),formData:"FormData"in e,arrayBuffer:"ArrayBuffer"in e};if(r.arrayBuffer)var o=["[object Int8Array]","[object Uint8Array]","[object Uint8ClampedArray]","[object Int16Array]","[object Uint16Array]","[object Int32Array]","[object Uint32Array]","[object Float32Array]","[object Float64Array]"],n=ArrayBuffer.isView||function(e){return e&&o.indexOf(Object.prototype.toString.call(e))>-1};function i(e){if("string"!=typeof e&&(e=String(e)),/[^a-z0-9\-#$%&'*+.^_`|~]/i.test(e))throw new TypeError("Invalid character in header field name");return e.toLowerCase()}function a(e){return"string"!=typeof e&&(e=String(e)),e}function s(e){var t={next:function(){var t=e.shift();return{done:void 0===t,value:t}}};return r.iterable&&(t[Symbol.iterator]=function(){return t}),t}function l(e){this.map={},e instanceof l?e.forEach((function(e,t){this.append(t,e)}),this):Array.isArray(e)?e.forEach((function(e){this.append(e[0],e[1])}),this):e&&Object.getOwnPropertyNames(e).forEach((function(t){this.append(t,e[t])}),this)}function u(e){if(e.bodyUsed)return Promise.reject(new TypeError("Already read"));e.bodyUsed=!0}function c(e){return new Promise((function(t,r){e.onload=function(){t(e.result)},e.onerror=function(){r(e.error)}}))}function h(e){var t=new FileReader,r=c(t);return t.readAsArrayBuffer(e),r}function d(e){if(e.slice)return e.slice(0);var t=new Uint8Array(e.byteLength);return t.set(new Uint8Array(e)),t.buffer}function f(){return this.bodyUsed=!1,this._initBody=function(e){var t;this._bodyInit=e,e?"string"==typeof e?this._bodyText=e:r.blob&&Blob.prototype.isPrototypeOf(e)?this._bodyBlob=e:r.formData&&FormData.prototype.isPrototypeOf(e)?this._bodyFormData=e:r.searchParams&&URLSearchParams.prototype.isPrototypeOf(e)?this._bodyText=e.toString():r.arrayBuffer&&r.blob&&((t=e)&&DataView.prototype.isPrototypeOf(t))?(this._bodyArrayBuffer=d(e.buffer),this._bodyInit=new Blob([this._bodyArrayBuffer])):r.arrayBuffer&&(ArrayBuffer.prototype.isPrototypeOf(e)||n(e))?this._bodyArrayBuffer=d(e):this._bodyText=e=Object.prototype.toString.call(e):this._bodyText="",this.headers.get("content-type")||("string"==typeof e?this.headers.set("content-type","text/plain;charset=UTF-8"):this._bodyBlob&&this._bodyBlob.type?this.headers.set("content-type",this._bodyBlob.type):r.searchParams&&URLSearchParams.prototype.isPrototypeOf(e)&&this.headers.set("content-type","application/x-www-form-urlencoded;charset=UTF-8"))},r.blob&&(this.blob=function(){var e=u(this);if(e)return e;if(this._bodyBlob)return Promise.resolve(this._bodyBlob);if(this._bodyArrayBuffer)return Promise.resolve(new Blob([this._bodyArrayBuffer]));if(this._bodyFormData)throw new Error("could not read FormData body as blob");return Promise.resolve(new Blob([this._bodyText]))},this.arrayBuffer=function(){return this._bodyArrayBuffer?u(this)||Promise.resolve(this._bodyArrayBuffer):this.blob().then(h)}),this.text=function(){var e,t,r,o=u(this);if(o)return o;if(this._bodyBlob)return e=this._bodyBlob,t=new FileReader,r=c(t),t.readAsText(e),r;if(this._bodyArrayBuffer)return Promise.resolve(function(e){for(var t=new Uint8Array(e),r=new Array(t.length),o=0;o-1?o:r),this.mode=t.mode||this.mode||null,this.signal=t.signal||this.signal,this.referrer=null,("GET"===this.method||"HEAD"===this.method)&&n)throw new TypeError("Body not allowed for GET or HEAD requests");this._initBody(n)}function g(e){var t=new FormData;return e.trim().split("&").forEach((function(e){if(e){var r=e.split("="),o=r.shift().replace(/\+/g," "),n=r.join("=").replace(/\+/g," ");t.append(decodeURIComponent(o),decodeURIComponent(n))}})),t}function v(e,t){t||(t={}),this.type="default",this.status=void 0===t.status?200:t.status,this.ok=this.status>=200&&this.status<300,this.statusText="statusText"in t?t.statusText:"OK",this.headers=new l(t.headers),this.url=t.url||"",this._initBody(e)}m.prototype.clone=function(){return new m(this,{body:this._bodyInit})},f.call(m.prototype),f.call(v.prototype),v.prototype.clone=function(){return new v(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new l(this.headers),url:this.url})},v.error=function(){var e=new v(null,{status:0,statusText:""});return e.type="error",e};var b=[301,302,303,307,308];v.redirect=function(e,t){if(-1===b.indexOf(t))throw new RangeError("Invalid status code");return new v(null,{status:t,headers:{location:e}})},t.DOMException=e.DOMException;try{new t.DOMException}catch(e){t.DOMException=function(e,t){this.message=e,this.name=t;var r=Error(e);this.stack=r.stack},t.DOMException.prototype=Object.create(Error.prototype),t.DOMException.prototype.constructor=t.DOMException}function y(e,o){return new Promise((function(n,i){var a=new m(e,o);if(a.signal&&a.signal.aborted)return i(new t.DOMException("Aborted","AbortError"));var s=new XMLHttpRequest;function u(){s.abort()}s.onload=function(){var e,t,r={status:s.status,statusText:s.statusText,headers:(e=s.getAllResponseHeaders()||"",t=new l,e.replace(/\r?\n[\t ]+/g," ").split(/\r?\n/).forEach((function(e){var r=e.split(":"),o=r.shift().trim();if(o){var n=r.join(":").trim();t.append(o,n)}})),t)};r.url="responseURL"in s?s.responseURL:r.headers.get("X-Request-URL");var o="response"in s?s.response:s.responseText;n(new v(o,r))},s.onerror=function(){i(new TypeError("Network request failed"))},s.ontimeout=function(){i(new TypeError("Network request failed"))},s.onabort=function(){i(new t.DOMException("Aborted","AbortError"))},s.open(a.method,a.url,!0),"include"===a.credentials?s.withCredentials=!0:"omit"===a.credentials&&(s.withCredentials=!1),"responseType"in s&&r.blob&&(s.responseType="blob"),a.headers.forEach((function(e,t){s.setRequestHeader(t,e)})),a.signal&&(a.signal.addEventListener("abort",u),s.onreadystatechange=function(){4===s.readyState&&a.signal.removeEventListener("abort",u)}),s.send(void 0===a._bodyInit?null:a._bodyInit)}))}y.polyfill=!0,e.fetch||(e.fetch=y,e.Headers=l,e.Request=m,e.Response=v),t.Headers=l,t.Request=m,t.Response=v,t.fetch=y}({})}(o),delete o.fetch.polyfill,(r=o.fetch).default=o.fetch,r.fetch=o.fetch,r.Headers=o.Headers,r.Request=o.Request,r.Response=o.Response,t.exports=r})),ts=(es.fetch,es.Headers,es.Request,es.Response,r((function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.decode=function(e){e=atob(e);for(var t=[],r=0;r0&&(s=e.timeout),e.headers)for(const t in e.headers)o[t.toLowerCase()]={key:t,value:String(e.headers[t])},["if-none-match","if-modified-since"].indexOf(t.toLowerCase())>=0&&(a=!0);if(null!=e.user&&null!=e.password){"https:"!==n.substring(0,6)&&!0!==e.allowInsecureAuthentication&&ss.throwError("basic authentication requires a secure https url",p.errors.INVALID_ARGUMENT,{argument:"url",url:n,user:e.user,password:"[REDACTED]"});const t=e.user+":"+e.password;o.authorization={key:"Authorization",value:"Basic "+ns(Tt(t))}}}t&&(i.method="POST",i.body=t,o["content-type"]={key:"Content-Type",value:"application/json"});const u={};Object.keys(o).forEach(e=>{const t=o[e];u[t.key]=t.value}),i.headers=u;const c=function(){let e=null;return{promise:new Promise((function(t,r){s&&(e=setTimeout(()=>{null!=e&&(e=null,r(ss.makeError("timeout",p.errors.TIMEOUT,{timeout:s})))},s))})),cancel:function(){null!=e&&(clearTimeout(e),e=null)}}}();100==l&&console.log(l);const h=function(){return as(this,void 0,void 0,(function*(){let e=null,t=null;for(;;){try{e=yield es(n,i)}catch(e){console.log(e)}if(t=yield e.text(),a&&304===e.status)break;if(e.ok)break;c.cancel(),ss.throwError("bad response",p.errors.SERVER_ERROR,{status:e.status,body:t,type:e.type,url:e.url})}c.cancel();let o=null;if(null!=t)try{o=JSON.parse(t)}catch(e){ss.throwError("invalid JSON",p.errors.SERVER_ERROR,{body:t,error:e,url:n})}if(r)try{o=yield r(o,function(e){const t={};return e.headers.forEach?e.headers.forEach((e,r)=>{t[r.toLowerCase()]=e}):e.headers.keys().forEach(r=>{t[r.toLowerCase()]=e.headers.get(r)}),{statusCode:e.status,status:e.statusText,headers:t}}(e))}catch(e){ss.throwError("processing response error",p.errors.SERVER_ERROR,{body:o,error:e})}return o}))}();return Promise.race([c.promise,h])}function us(e,t){return t||(t={}),null==(t=ae(t)).floor&&(t.floor=0),null==t.ceiling&&(t.ceiling=1e4),null==t.interval&&(t.interval=250),new Promise((function(r,o){let n=null,i=!1;const a=()=>!i&&(i=!0,n&&clearTimeout(n),!0);t.timeout&&(n=setTimeout(()=>{a()&&o(new Error("timeout"))},t.timeout));const s=t.retryLimit;let l=0;!function n(){return e().then((function(e){if(void 0!==e)a()&&r(e);else if(t.onceBlock)t.onceBlock.once("block",n);else if(!i){if(l++,l>s)return void(a()&&o(new Error("retry limit reached")));let e=t.interval*parseInt(String(Math.random()*Math.pow(2,l)));et.ceiling&&(e=t.ceiling),setTimeout(n,e)}return null}),(function(e){a()&&o(e)}))}()}))}const cs="providers/5.0.0-beta.147",hs=new p(cs);class ds{constructor(){hs.checkNew(new.target,ds),this.formats=this.getDefaultFormats()}getDefaultFormats(){let e={},t=this.address.bind(this),r=this.bigNumber.bind(this),o=this.blockTag.bind(this),n=this.data.bind(this),i=this.hash.bind(this),a=this.hex.bind(this),s=this.number.bind(this);return e.transaction={hash:i,blockHash:ds.allowNull(i,null),blockNumber:ds.allowNull(s,null),transactionIndex:ds.allowNull(s,null),confirmations:ds.allowNull(s,null),from:t,gasPrice:r,gasLimit:r,to:ds.allowNull(t,null),value:r,nonce:s,data:n,r:ds.allowNull(this.uint256),s:ds.allowNull(this.uint256),v:ds.allowNull(s),creates:ds.allowNull(t,null),raw:ds.allowNull(n)},e.transactionRequest={from:ds.allowNull(t),nonce:ds.allowNull(s),gasLimit:ds.allowNull(r),gasPrice:ds.allowNull(r),to:ds.allowNull(t),value:ds.allowNull(r),data:ds.allowNull(e=>this.data(e,!0))},e.receiptLog={transactionLogIndex:ds.allowNull(s),transactionIndex:s,blockNumber:s,transactionHash:i,address:t,topics:ds.arrayOf(i),data:n,logIndex:s,blockHash:i},e.receipt={to:ds.allowNull(this.address,null),from:ds.allowNull(this.address,null),contractAddress:ds.allowNull(t,null),transactionIndex:s,root:ds.allowNull(i),gasUsed:r,logsBloom:ds.allowNull(n),blockHash:i,transactionHash:i,logs:ds.arrayOf(this.receiptLog.bind(this)),blockNumber:s,confirmations:ds.allowNull(s,null),cumulativeGasUsed:r,status:ds.allowNull(s)},e.block={hash:i,parentHash:i,number:s,timestamp:s,nonce:ds.allowNull(a),difficulty:this.difficulty.bind(this),gasLimit:r,gasUsed:r,miner:t,extraData:n,transactions:ds.allowNull(ds.arrayOf(i))},e.blockWithTransactions=ae(e.block),e.blockWithTransactions.transactions=ds.allowNull(ds.arrayOf(this.transactionResponse.bind(this))),e.filter={fromBlock:ds.allowNull(o,void 0),toBlock:ds.allowNull(o,void 0),blockHash:ds.allowNull(i,void 0),address:ds.allowNull(t,void 0),topics:ds.allowNull(this.topics.bind(this),void 0)},e.filterLog={blockNumber:ds.allowNull(s),blockHash:ds.allowNull(i),transactionIndex:s,removed:ds.allowNull(this.boolean.bind(this)),address:t,data:ds.allowFalsish(n,"0x"),topics:ds.arrayOf(i),transactionHash:i,logIndex:s},e}number(e){return _.from(e).toNumber()}bigNumber(e){return _.from(e)}boolean(e){if("boolean"==typeof e)return e;if("string"==typeof e){if("true"===(e=e.toLowerCase()))return!0;if("false"===e)return!1}throw new Error("invaid boolean - "+e)}hex(e,t){return"string"==typeof e&&(t||"0x"===e.substring(0,2)||(e="0x"+e),E(e))?e.toLowerCase():hs.throwArgumentError("invalid hash","value",e)}data(e,t){let r=this.hex(e,t);if(r.length%2!=0)throw new Error("invalid data; odd-length - "+e);return r}address(e){return qe(e)}callAddress(e){if(!E(e,32))return null;let t=qe(J(e,12));return t===ut?null:t}contractAddress(e){return Ye(e)}blockTag(e){if(null==e)return"latest";if("earliest"===e)return"0x0";if("latest"===e||"pending"===e)return e;if("number"==typeof e||E(e))return L(e);throw new Error("invalid blockTag")}hash(e,t){let r=this.hex(e,t);return 32!==B(r)?hs.throwArgumentError("invalid hash","value",e):r}difficulty(e){let t=_.from(e);try{return t.toNumber()}catch(e){}return null}uint256(e){if(!E(e))throw new Error("invalid uint256");return k(e,32)}_block(e,t){return null!=e.author&&null==e.miner&&(e.miner=e.author),ds.check(t,e)}block(e){return this._block(e,this.formats.block)}blockWithTransactions(e){return this._block(e,this.formats.blockWithTransactions)}transactionRequest(e){return ds.check(this.formats.transactionRequest,e)}transactionResponse(e){null!=e.gas&&null==e.gasLimit&&(e.gasLimit=e.gas),e.to&&_.from(e.to).isZero()&&(e.to="0x0000000000000000000000000000000000000000"),null!=e.input&&null==e.data&&(e.data=e.input),null==e.to&&null==e.creates&&(e.creates=this.contractAddress(e));let t=ds.check(this.formats.transaction,e),r=e.networkId;return null!=e.chainId&&null==r&&null==t.v&&(r=e.chainId),E(r)&&(r=_.from(r).toNumber()),"number"!=typeof r&&null!=t.v&&(r=(t.v-35)/2,r<0&&(r=0),r=parseInt(r)),"number"!=typeof r&&(r=0),t.networkId=r,t.blockHash&&"x"===t.blockHash.replace(/0/g,"")&&(t.blockHash=null),t}transaction(e){return Yn(e)}receiptLog(e){return ds.check(this.formats.receiptLog,e)}receipt(e){let t=ds.check(this.formats.receipt,e);return t.logs.forEach((e,t)=>{null==e.transactionLogIndex&&(e.transactionLogIndex=t)}),null!=e.status&&(t.byzantium=!0),t}topics(e){return Array.isArray(e)?e.map(e=>this.topics(e)):null!=e?this.hash(e,!0):null}filter(e){return ds.check(this.formats.filter,e)}filterLog(e){return ds.check(this.formats.filterLog,e)}static check(e,t){let r={};for(let o in e)try{let n=e[o](t[o]);void 0!==n&&(r[o]=n)}catch(e){throw e.checkKey=o,e.checkValue=t[o],e}return r}static allowNull(e,t){return function(r){return null==r?t:e(r)}}static allowFalsish(e,t){return function(r){return r?e(r):t}}static arrayOf(e){return function(t){if(!Array.isArray(t))throw new Error("not an array");let r=[];return t.forEach((function(t){r.push(e(t))})),r}}}var fs=window&&window.__awaiter||function(e,t,r,o){return new(r||(r=Promise))((function(n,i){function a(e){try{l(o.next(e))}catch(e){i(e)}}function s(e){try{l(o.throw(e))}catch(e){i(e)}}function l(e){var t;e.done?n(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(a,s)}l((o=o.apply(e,t||[])).next())}))};const ps=new p(cs);function ms(e){return null==e?"null":(32!==B(e)&&ps.throwArgumentError("invalid topic","topic",e),e.toLowerCase())}function gs(e){for(e=e.slice();null==e[e.length-1];)e.pop();return e.map(e=>{if(Array.isArray(e)){const t={};e.forEach(e=>{t[ms(e)]=!0});const r=Object.keys(t);return r.sort(),r.join("|")}return ms(e)}).join("&")}function vs(e){if("string"==typeof e){if(32===B(e=e.toLowerCase()))return"tx:"+e;if(-1===e.indexOf(":"))return e}else{if(Array.isArray(e))return"filter:*:"+gs(e);if(nr.isForkEvent(e))throw ps.warn("not implemented"),new Error("not implemented");if(e&&"object"==typeof e)return"filter:"+(e.address||"*")+":"+gs(e.topics||[])}throw new Error("invalid event - "+e)}function bs(){return(new Date).getTime()}class ys{constructor(e,t,r){re(this,"tag",e),re(this,"listener",t),re(this,"once",r)}pollable(){return this.tag.indexOf(":")>=0||"block"===this.tag||"pending"===this.tag}}let As=null,Ss=1;class Ts extends ir{constructor(e){if(ps.checkNew(new.target,ir),super(),this.formatter=new.target.getFormatter(),e instanceof Promise)re(this,"ready",e.then(e=>(re(this,"_network",e),e))),this.ready.catch(e=>{});else{const t=oe(new.target,"getNetwork")(e);t?(re(this,"_network",t),re(this,"ready",Promise.resolve(this._network))):ps.throwArgumentError("invalid network","network",e)}this._maxInternalBlockNumber=-1024,this._lastBlockNumber=-2,this._events=[],this._pollingInterval=4e3,this._emitted={block:-2},this._fastQueryDate=0}static getFormatter(){return null==As&&(As=new ds),As}static getNetwork(e){return $a(null==e?"homestead":e)}_getInternalBlockNumber(e){return fs(this,void 0,void 0,(function*(){yield this.ready;const t=this._internalBlockNumber;if(e>0&&this._internalBlockNumber){const r=yield t;if(bs()-r.respTime<=e)return r.blockNumber}const r=bs();return this._internalBlockNumber=this.perform("getBlockNumber",{}).then(e=>{const t=bs();return(e=_.from(e).toNumber()){if("block"===e)return;const t=this._emitted[e];"pending"!==t&&r-t>12&&delete this._emitted[e]})),-2===this._lastBlockNumber&&(this._lastBlockNumber=r-1),this._events.forEach(e=>{const o=e.tag.split(":");switch(o[0]){case"tx":{const e=o[1];let r=this.getTransactionReceipt(e).then(t=>t&&null!=t.blockNumber?(this._emitted["t:"+e]=t.blockNumber,this.emit(e,t),null):null).catch(e=>{this.emit("error",e)});t.push(r);break}case"filter":{const e=function(e){return e.split(/&/g).map(e=>e.split("|").map(e=>"null"===e?null:e))}(o[2]),n={address:o[1],fromBlock:this._lastBlockNumber+1,toBlock:r,topics:e};n.address||delete n.address;const i=this.getLogs(n).then(e=>{if(0!==e.length)return e.forEach(e=>{this._emitted["b:"+e.blockHash]=e.blockNumber,this._emitted["t:"+e.transactionHash]=e.blockNumber,this.emit(n,e)}),null}).catch(e=>{this.emit("error",e)});t.push(i);break}}}),this._lastBlockNumber=r,Promise.all(t).then(()=>{this.emit("didPoll",e)}),null}}))}resetEventsBlock(e){this._lastBlockNumber=e-1,this.polling&&this.poll()}get network(){return this._network}getNetwork(){return this.ready}get blockNumber(){return this._fastBlockNumber}get polling(){return null!=this._poller}set polling(e){setTimeout(()=>{e&&!this._poller?(this._poller=setInterval(this.poll.bind(this),this.pollingInterval),this.poll()):!e&&this._poller&&(clearInterval(this._poller),this._poller=null)},0)}get pollingInterval(){return this._pollingInterval}set pollingInterval(e){if("number"!=typeof e||e<=0||parseInt(String(e))!=e)throw new Error("invalid polling interval");this._pollingInterval=e,this._poller&&(clearInterval(this._poller),this._poller=setInterval(()=>{this.poll()},this._pollingInterval))}_getFastBlockNumber(){const e=bs();return e-this._fastQueryDate>2*this._pollingInterval&&(this._fastQueryDate=e,this._fastBlockNumberPromise=this.getBlockNumber().then(e=>((null==this._fastBlockNumber||e>this._fastBlockNumber)&&(this._fastBlockNumber=e),this._fastBlockNumber))),this._fastBlockNumberPromise}_setFastBlockNumber(e){null!=this._fastBlockNumber&&ethis._fastBlockNumber)&&(this._fastBlockNumber=e,this._fastBlockNumberPromise=Promise.resolve(e)))}waitForTransaction(e,t){return fs(this,void 0,void 0,(function*(){null==t&&(t=1);const r=yield this.getTransactionReceipt(e);return r.confirmations>=t?r:new Promise(r=>{const o=n=>{n.confirmationsL(e))});return C(yield this.perform("getStorageAt",o))}))}_wrapTransaction(e,t){if(null!=t&&32!==B(t))throw new Error("invalid response - sendTransaction");const r=e;return null!=t&&e.hash!==t&&ps.throwError("Transaction hash mismatch from Provider.sendTransaction.",p.errors.UNKNOWN_ERROR,{expectedHash:e.hash,returnedHash:t}),r.wait=t=>fs(this,void 0,void 0,(function*(){0!==t&&(this._emitted["t:"+e.hash]="pending");const r=yield this.waitForTransaction(e.hash,t);return null==r&&0===t?null:(this._emitted["t:"+e.hash]=r.blockNumber,0===r.status&&ps.throwError("transaction failed",p.errors.CALL_EXCEPTION,{transactionHash:e.hash,transaction:e,receipt:r}),r)})),r}sendTransaction(e){return fs(this,void 0,void 0,(function*(){yield this.ready;const t=yield Promise.resolve(e).then(e=>C(e)),r=this.formatter.transaction(e);try{const e=yield this.perform("sendTransaction",{signedTransaction:t});return this._wrapTransaction(r,e)}catch(e){throw e.transaction=r,e.transactionHash=r.hash,e}}))}_getTransactionRequest(e){return fs(this,void 0,void 0,(function*(){const t=yield e,r={};return["from","to"].forEach(e=>{null!=t[e]&&(r[e]=Promise.resolve(t[e]).then(e=>e?this._getAddress(e):null))}),["gasLimit","gasPrice","value"].forEach(e=>{null!=t[e]&&(r[e]=Promise.resolve(t[e]).then(e=>e?_.from(e):null))}),["data"].forEach(e=>{null!=t[e]&&(r[e]=Promise.resolve(t[e]).then(e=>e?C(e):null))}),this.formatter.transactionRequest(yield ne(r))}))}_getFilter(e){return fs(this,void 0,void 0,(function*(){e instanceof Promise&&(e=yield e);const t={};return null!=e.address&&(t.address=this._getAddress(e.address)),["blockHash","topics"].forEach(r=>{null!=e[r]&&(t[r]=e[r])}),["fromBlock","toBlock"].forEach(r=>{null!=e[r]&&(t[r]=this._getBlockTag(e[r]))}),this.formatter.filter(yield ne(e))}))}call(e,t){return fs(this,void 0,void 0,(function*(){yield this.ready;const r=yield ne({transaction:this._getTransactionRequest(e),blockTag:this._getBlockTag(t)});return C(yield this.perform("call",r))}))}estimateGas(e){return fs(this,void 0,void 0,(function*(){yield this.ready;const t=yield ne({transaction:this._getTransactionRequest(e)});return _.from(yield this.perform("estimateGas",t))}))}_getAddress(e){return fs(this,void 0,void 0,(function*(){const t=yield this.resolveName(e);return null==t&&ps.throwError("ENS name not configured",p.errors.UNSUPPORTED_OPERATION,{operation:`resolveName(${JSON.stringify(e)})`}),t}))}_getBlock(e,t){return fs(this,void 0,void 0,(function*(){yield this.ready,e instanceof Promise&&(e=yield e);let r=-128;const o={includeTransactions:!!t};if(E(e,32))o.blockHash=e;else try{o.blockTag=this.formatter.blockTag(yield this._getBlockTag(e)),E(o.blockTag)&&(r=parseInt(o.blockTag.substring(2),16))}catch(t){ps.throwArgumentError("invalid block hash or block tag","blockHashOrBlockTag",e)}return us(()=>fs(this,void 0,void 0,(function*(){const e=yield this.perform("getBlock",o);return null==e?null!=o.blockHash&&null==this._emitted["b:"+o.blockHash]?null:null!=o.blockTag&&r>this._emitted.block?null:void 0:t?this.formatter.blockWithTransactions(e):this.formatter.block(e)})),{onceBlock:this})}))}getBlock(e){return this._getBlock(e,!1)}getBlockWithTransactions(e){return this._getBlock(e,!0)}getTransaction(e){return fs(this,void 0,void 0,(function*(){yield this.ready,e instanceof Promise&&(e=yield e);const t={transactionHash:this.formatter.hash(e,!0)};return us(()=>fs(this,void 0,void 0,(function*(){const r=yield this.perform("getTransaction",t);if(null==r)return null==this._emitted["t:"+e]?null:void 0;const o=this.formatter.transactionResponse(r);if(null==o.blockNumber)o.confirmations=0;else if(null==o.confirmations){let e=(yield this._getInternalBlockNumber(100+2*this.pollingInterval))-o.blockNumber+1;e<=0&&(e=1),o.confirmations=e}return this._wrapTransaction(o)})),{onceBlock:this})}))}getTransactionReceipt(e){return fs(this,void 0,void 0,(function*(){yield this.ready,e instanceof Promise&&(e=yield e);const t={transactionHash:this.formatter.hash(e,!0)};return us(()=>fs(this,void 0,void 0,(function*(){const r=yield this.perform("getTransactionReceipt",t);if(null==r)return null==this._emitted["t:"+e]?null:void 0;if(null==r.blockHash)return;const o=this.formatter.receipt(r);if(null==o.blockNumber)o.confirmations=0;else if(null==o.confirmations){let e=(yield this._getInternalBlockNumber(100+2*this.pollingInterval))-o.blockNumber+1;e<=0&&(e=1),o.confirmations=e}return o})),{onceBlock:this})}))}getLogs(e){return fs(this,void 0,void 0,(function*(){yield this.ready;const t=yield ne({filter:this._getFilter(e)}),r=yield this.perform("getLogs",t);return ds.arrayOf(this.formatter.filterLog.bind(this.formatter))(r)}))}getEtherPrice(){return fs(this,void 0,void 0,(function*(){return yield this.ready,this.perform("getEtherPrice",{})}))}_getBlockTag(e){return fs(this,void 0,void 0,(function*(){if(e instanceof Promise&&(e=yield e),"number"==typeof e&&e<0){e%1&&ps.throwArgumentError("invalid BlockTag","blockTag",e);let t=yield this._getInternalBlockNumber(100+2*this.pollingInterval);return t+=e,t<0&&(t=0),this.formatter.blockTag(t)}return this.formatter.blockTag(e)}))}_getResolver(e){return fs(this,void 0,void 0,(function*(){const t=yield this.getNetwork();t.ensAddress||ps.throwError("network does not support ENS",p.errors.UNSUPPORTED_OPERATION,{operation:"ENS",network:t.name});const r={to:t.ensAddress,data:"0x0178b8bf"+Kt(e).substring(2)};return this.formatter.callAddress(yield this.call(r))}))}resolveName(e){return fs(this,void 0,void 0,(function*(){e instanceof Promise&&(e=yield e);try{return Promise.resolve(this.formatter.address(e))}catch(t){if(E(e))throw t}const t=yield this._getResolver(e);if(!t)return null;const r={to:t,data:"0x3b3b57de"+Kt(e).substring(2)};return this.formatter.callAddress(yield this.call(r))}))}lookupAddress(e){return fs(this,void 0,void 0,(function*(){e instanceof Promise&&(e=yield e);const t=(e=this.formatter.address(e)).substring(2).toLowerCase()+".addr.reverse",r=yield this._getResolver(t);if(!r)return null;let o=S(yield this.call({to:r,data:"0x691f3431"+Kt(t).substring(2)}));if(o.length<32||!_.from(o.slice(0,32)).eq(32))return null;if(o=o.slice(32),o.length<32)return null;const n=_.from(o.slice(0,32)).toNumber();if(o=o.slice(32),n>o.length)return null;const i=Et(o.slice(0,n));return(yield this.resolveName(i))!=e?null:i}))}perform(e,t){return ps.throwError(e+" not implemented",p.errors.NOT_IMPLEMENTED,{operation:e})}_startPending(){console.log("WARNING: this provider does not support pending events")}_stopPending(){}_checkPolling(){this.polling=this._events.filter(e=>e.pollable()).length>0}_addEventListener(e,t,r){return this._events.push(new ys(vs(e),t,r)),"pending"===e&&this._startPending(),this._checkPolling(),this}on(e,t){return this._addEventListener(e,t,!1)}once(e,t){return this._addEventListener(e,t,!0)}emit(e,...t){let r=!1,o=vs(e);return this._events=this._events.filter(e=>e.tag!==o||(setTimeout(()=>{e.listener.apply(this,t)},0),r=!0,!e.once)),this._checkPolling(),r}listenerCount(e){if(!e)return this._events.length;let t=vs(e);return this._events.filter(e=>e.tag===t).length}listeners(e){if(null==e)return this._events.map(e=>e.listener);let t=vs(e);return this._events.filter(e=>e.tag===t).map(e=>e.listener)}off(e,t){if(null==t)return this.removeAllListeners(e);let r=!1,o=vs(e);return this._events=this._events.filter(e=>e.tag!==o||e.listener!=t||(!!r||(r=!0,!1))),"pending"===e&&0===this.listenerCount("pending")&&this._stopPending(),this._checkPolling(),this}removeAllListeners(e){if(null==e)this._events=[],this._stopPending();else{let t=vs(e);this._events=this._events.filter(e=>e.tag!==t),"pending"===e&&this._stopPending()}return this._checkPolling(),this}}var Ms=window&&window.__awaiter||function(e,t,r,o){return new(r||(r=Promise))((function(n,i){function a(e){try{l(o.next(e))}catch(e){i(e)}}function s(e){try{l(o.throw(e))}catch(e){i(e)}}function l(e){var t;e.done?n(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(a,s)}l((o=o.apply(e,t||[])).next())}))};const ws=new p(cs);function Es(e){if(e.error){let t=new Error(e.error.message);throw t.code=e.error.code,t.data=e.error.data,t}return e.result}function Fs(e){return e?e.toLowerCase():e}const Cs={};class Bs extends ur{constructor(e,t,r){if(ws.checkNew(new.target,Bs),super(),e!==Cs)throw new Error("do not call the JsonRpcSigner constructor directly; use provider.getSigner");re(this,"provider",t),null==r&&(r=0),"string"==typeof r?(re(this,"_address",this.provider.formatter.address(r)),re(this,"_index",null)):"number"==typeof r?(re(this,"_index",r),re(this,"_address",null)):ws.throwArgumentError("invalid address or index","addressOrIndex",r)}connect(e){return ws.throwError("cannot alter JSON-RPC Signer connection",p.errors.UNSUPPORTED_OPERATION,{operation:"connect"})}connectUnchecked(){return new Js(Cs,this.provider,this._address||this._index)}getAddress(){return this._address?Promise.resolve(this._address):this.provider.send("eth_accounts",[]).then(e=>(e.length<=this._index&&ws.throwError("unknown account #"+this._index,p.errors.UNSUPPORTED_OPERATION,{operation:"getAddress"}),this.provider.formatter.address(e[this._index])))}sendUncheckedTransaction(e){e=ae(e);let t=this.getAddress().then(e=>(e&&(e=e.toLowerCase()),e));if(null==e.gasLimit){let r=ae(e);r.from=t,e.gasLimit=this.provider.estimateGas(r)}return Promise.all([ne(e),t]).then(e=>{let t=e[0],r=this.provider.constructor.hexlifyTransaction(t);return r.from=e[1],this.provider.send("eth_sendTransaction",[r]).then(e=>e,e=>{throw e.responseText&&(e.responseText.indexOf("insufficient funds")>=0&&ws.throwError("insufficient funds",p.errors.INSUFFICIENT_FUNDS,{transaction:t}),e.responseText.indexOf("nonce too low")>=0&&ws.throwError("nonce has already been used",p.errors.NONCE_EXPIRED,{transaction:t}),e.responseText.indexOf("replacement transaction underpriced")>=0&&ws.throwError("replacement fee too low",p.errors.REPLACEMENT_UNDERPRICED,{transaction:t})),e})})}signTransaction(e){return ws.throwError("signing transactions is unsupported",p.errors.UNSUPPORTED_OPERATION,{operation:"signTransaction"})}sendTransaction(e){return this.sendUncheckedTransaction(e).then(e=>us(()=>this.provider.getTransaction(e).then(t=>{if(null!==t)return this.provider._wrapTransaction(t,e)}),{onceBlock:this.provider}).catch(t=>{throw t.transactionHash=e,t}))}signMessage(e){let t="string"==typeof e?Tt(e):e;return this.getAddress().then(e=>this.provider.send("eth_sign",[e.toLowerCase(),C(t)]))}unlock(e){let t=this.provider;return this.getAddress().then((function(r){return t.send("personal_unlockAccount",[r.toLowerCase(),e,null])}))}}class Js extends Bs{sendTransaction(e){return this.sendUncheckedTransaction(e).then(e=>({hash:e,nonce:null,gasLimit:null,gasPrice:null,data:null,value:null,chainId:null,confirmations:0,from:null,wait:t=>this.provider.waitForTransaction(e,t)}))}}const Ls={chainId:!0,data:!0,gasLimit:!0,gasPrice:!0,nonce:!0,to:!0,value:!0};class Ps extends Ts{constructor(e,t){ws.checkNew(new.target,Ps);const r=oe(new.target,"getNetwork");if("string"==typeof e&&null===t){t=r(e),e=null}if(t)super(t);else{super(new Promise((e,t)=>{setTimeout(()=>Ms(this,void 0,void 0,(function*(){let o=null;try{o=yield this.send("eth_chainId",[])}catch(e){try{o=yield this.send("net_version",[])}catch(e){}}if(null!=o)try{return e(r(_.from(o).toNumber()))}catch(e){console.log("e3",e)}t(ws.makeError("could not detect network",p.errors.NETWORK_ERROR))})),0)}))}e||(e="http://localhost:8545"),this.connection="string"==typeof e?Object.freeze({url:e}):Object.freeze(ae(e)),this._nextId=42}getSigner(e){return new Bs(Cs,this,e)}getUncheckedSigner(e){return this.getSigner(e).connectUnchecked()}listAccounts(){return this.send("eth_accounts",[]).then(e=>e.map(e=>this.formatter.address(e)))}send(e,t){let r={method:e,params:t,id:this._nextId++,jsonrpc:"2.0"};return this.emit("debug",{action:"request",request:le(r),provider:this}),ls(this.connection,JSON.stringify(r),Es).then(e=>(this.emit("debug",{action:"response",request:r,response:e,provider:this}),e))}perform(e,t){switch(e){case"getBlockNumber":return this.send("eth_blockNumber",[]);case"getGasPrice":return this.send("eth_gasPrice",[]);case"getBalance":return this.send("eth_getBalance",[Fs(t.address),t.blockTag]);case"getTransactionCount":return this.send("eth_getTransactionCount",[Fs(t.address),t.blockTag]);case"getCode":return this.send("eth_getCode",[Fs(t.address),t.blockTag]);case"getStorageAt":return this.send("eth_getStorageAt",[Fs(t.address),t.position,t.blockTag]);case"sendTransaction":return this.send("eth_sendRawTransaction",[t.signedTransaction]).catch(e=>{throw e.responseText&&(e.responseText.indexOf("insufficient funds")>0&&ws.throwError("insufficient funds",p.errors.INSUFFICIENT_FUNDS,{}),e.responseText.indexOf("nonce too low")>0&&ws.throwError("nonce has already been used",p.errors.NONCE_EXPIRED,{}),e.responseText.indexOf("replacement transaction underpriced")>0&&ws.throwError("replacement fee too low",p.errors.REPLACEMENT_UNDERPRICED,{})),e});case"getBlock":return t.blockTag?this.send("eth_getBlockByNumber",[t.blockTag,!!t.includeTransactions]):t.blockHash?this.send("eth_getBlockByHash",[t.blockHash,!!t.includeTransactions]):ws.throwArgumentError("invalid block tag or block hash","params",t);case"getTransaction":return this.send("eth_getTransactionByHash",[t.transactionHash]);case"getTransactionReceipt":return this.send("eth_getTransactionReceipt",[t.transactionHash]);case"call":{const e=oe(this.constructor,"hexlifyTransaction");return this.send("eth_call",[e(t.transaction,{from:!0}),t.blockTag])}case"estimateGas":{const e=oe(this.constructor,"hexlifyTransaction");return this.send("eth_estimateGas",[e(t.transaction,{from:!0})])}case"getLogs":return t.filter&&null!=t.filter.address&&(t.filter.address=Fs(t.filter.address)),this.send("eth_getLogs",[t.filter])}return ws.throwError(e+" not implemented",p.errors.NOT_IMPLEMENTED,{operation:e})}_startPending(){if(null!=this._pendingFilter)return;let e=this,t=this.send("eth_newPendingTransactionFilter",[]);this._pendingFilter=t,t.then((function(r){return function o(){e.send("eth_getFilterChanges",[r]).then((function(r){if(e._pendingFilter!=t)return null;let o=Promise.resolve();return r.forEach((function(t){e._emitted["t:"+t.toLowerCase()]="pending",o=o.then((function(){return e.getTransaction(t).then((function(t){return e.emit("pending",t),null}))}))})),o.then((function(){return e=1e3,new Promise((function(t){setTimeout((function(){t()}),e)}));var e}))})).then((function(){if(e._pendingFilter==t)return setTimeout((function(){o()}),0),null;e.send("eth_uninstallFilter",[r])})).catch(e=>{})}(),r})).catch(e=>{})}_stopPending(){this._pendingFilter=null}static hexlifyTransaction(e,t){const r=ae(Ls);if(t)for(let e in t)t[e]&&(r[e]=!0);ie(e,r);const o={};return["gasLimit","gasPrice","nonce","value"].forEach((function(t){if(null==e[t])return;const r=L(e[t]);"gasLimit"===t&&(t="gas"),o[t]=r})),["from","to","data"].forEach((function(t){null!=e[t]&&(o[t]=C(e[t]))})),o}}const ks=new p(cs);class Rs extends Ps{constructor(e,t){ks.checkAbstract(new.target,Rs),e=oe(new.target,"getNetwork")(e),t=oe(new.target,"getApiKey")(t),super(oe(new.target,"getUrl")(e,t),e),"string"==typeof t?re(this,"apiKey",t):null!=t&&Object.keys(t).forEach(e=>{re(this,e,t[e])})}_startPending(){ks.warn("WARNING: API provider does not support pending filters")}getSigner(e){return ks.throwError("API provider does not support signing",p.errors.UNSUPPORTED_OPERATION,{operation:"getSigner"})}listAccounts(){return Promise.resolve([])}static getApiKey(e){return e}static getUrl(e,t){return ks.throwError("not implemented; sub-classes must override getUrl",p.errors.NOT_IMPLEMENTED,{operation:"getUrl"})}}const Ds=new p(cs),Os="_gg7wSSi0KMBsdKnGVfHDueq6xMB9EkC";class Ns extends Rs{static getApiKey(e){return null==e?Os:(e&&"string"!=typeof e&&Ds.throwArgumentError("invalid apiKey","apiKey",e),e)}static getUrl(e,t){let r=null;switch(e.name){case"homestead":r="eth-mainnet.alchemyapi.io/jsonrpc/";break;case"ropsten":r="eth-ropsten.alchemyapi.io/jsonrpc/";break;case"rinkeby":r="eth-rinkeby.alchemyapi.io/jsonrpc/";break;case"kovan":r="eth-kovan.alchemyapi.io/jsonrpc/";break;default:Ds.throwArgumentError("unsupported network","network",arguments[0])}return"https://"+r+t}}const Is=new p(cs);class Xs extends Rs{static getApiKey(e){return null!=e&&Is.throwArgumentError("apiKey not supported for cloudflare","apiKey",e),null}static getUrl(e,t){let r=null;switch(e.name){case"homestead":r="https://cloudflare-eth.com/";break;default:Is.throwArgumentError("unsupported network","network",arguments[0])}return r}}var _s=window&&window.__awaiter||function(e,t,r,o){return new(r||(r=Promise))((function(n,i){function a(e){try{l(o.next(e))}catch(e){i(e)}}function s(e){try{l(o.throw(e))}catch(e){i(e)}}function l(e){var t;e.done?n(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(a,s)}l((o=o.apply(e,t||[])).next())}))};const Hs=new p(cs);function xs(e){const t=[];for(let r in e){if(null==e[r])continue;let o=C(e[r]);({gasLimit:!0,gasPrice:!0,nonce:!0,value:!0})[r]&&(o=L(o)),t.push(r+"="+o)}return t.join("&")}function Gs(e){if(0==e.status&&("No records found"===e.message||"No transactions found"===e.message))return e.result;if(1!=e.status||"OK"!=e.message){const t=new Error("invalid response");throw t.result=JSON.stringify(e),t}return e.result}function Us(e){if("2.0"!=e.jsonrpc){const t=new Error("invalid response");throw t.result=JSON.stringify(e),t}if(e.error){const t=new Error(e.error.message||"unknown error");throw e.error.code&&(t.code=e.error.code),e.error.data&&(t.data=e.error.data),t}return e.result}function zs(e){if("pending"===e)throw new Error("pending not supported");return"latest"===e?e:parseInt(e.substring(2),16)}class Vs extends Ts{constructor(e,t){Hs.checkNew(new.target,Vs),super(e);let r="invalid";this.network&&(r=this.network.name);let o=null;switch(r){case"homestead":o="https://api.etherscan.io";break;case"ropsten":o="https://api-ropsten.etherscan.io";break;case"rinkeby":o="https://api-rinkeby.etherscan.io";break;case"kovan":o="https://api-kovan.etherscan.io";break;case"goerli":o="https://api-goerli.etherscan.io";break;default:throw new Error("unsupported network")}re(this,"baseUrl",o),re(this,"apiKey",t)}perform(e,t){const r=Object.create(null,{perform:{get:()=>super.perform}});return _s(this,void 0,void 0,(function*(){let o=this.baseUrl,n="";this.apiKey&&(n+="&apikey="+this.apiKey);const i=(e,t)=>_s(this,void 0,void 0,(function*(){this.emit("debug",{action:"request",request:e,provider:this});const r=yield ls(e,null,t||Us);return this.emit("debug",{action:"response",request:e,response:le(r),provider:this}),r}));switch(e){case"getBlockNumber":return o+="/api?module=proxy&action=eth_blockNumber"+n,i(o);case"getGasPrice":return o+="/api?module=proxy&action=eth_gasPrice"+n,i(o);case"getBalance":return o+="/api?module=account&action=balance&address="+t.address,o+="&tag="+t.blockTag+n,i(o,Gs);case"getTransactionCount":return o+="/api?module=proxy&action=eth_getTransactionCount&address="+t.address,o+="&tag="+t.blockTag+n,i(o);case"getCode":return o+="/api?module=proxy&action=eth_getCode&address="+t.address,o+="&tag="+t.blockTag+n,i(o,Us);case"getStorageAt":return o+="/api?module=proxy&action=eth_getStorageAt&address="+t.address,o+="&position="+t.position,o+="&tag="+t.blockTag+n,i(o,Us);case"sendTransaction":return o+="/api?module=proxy&action=eth_sendRawTransaction&hex="+t.signedTransaction,o+=n,i(o).catch(e=>{throw e.responseText&&(e.responseText.toLowerCase().indexOf("insufficient funds")>=0&&Hs.throwError("insufficient funds",p.errors.INSUFFICIENT_FUNDS,{}),e.responseText.indexOf("same hash was already imported")>=0&&Hs.throwError("nonce has already been used",p.errors.NONCE_EXPIRED,{}),e.responseText.indexOf("another transaction with same nonce")>=0&&Hs.throwError("replacement fee too low",p.errors.REPLACEMENT_UNDERPRICED,{})),e});case"getBlock":if(t.blockTag)return o+="/api?module=proxy&action=eth_getBlockByNumber&tag="+t.blockTag,t.includeTransactions?o+="&boolean=true":o+="&boolean=false",o+=n,i(o);throw new Error("getBlock by blockHash not implmeneted");case"getTransaction":return o+="/api?module=proxy&action=eth_getTransactionByHash&txhash="+t.transactionHash,o+=n,i(o);case"getTransactionReceipt":return o+="/api?module=proxy&action=eth_getTransactionReceipt&txhash="+t.transactionHash,o+=n,i(o);case"call":{let e=xs(t.transaction);if(e&&(e="&"+e),o+="/api?module=proxy&action=eth_call"+e,"latest"!==t.blockTag)throw new Error("EtherscanProvider does not support blockTag for call");return o+=n,i(o)}case"estimateGas":{let e=xs(t.transaction);return e&&(e="&"+e),o+="/api?module=proxy&action=eth_estimateGas&"+e,o+=n,i(o)}case"getLogs":{if(o+="/api?module=logs&action=getLogs",t.filter.fromBlock&&(o+="&fromBlock="+zs(t.filter.fromBlock)),t.filter.toBlock&&(o+="&toBlock="+zs(t.filter.toBlock)),t.filter.address&&(o+="&address="+t.filter.address),t.filter.topics&&t.filter.topics.length>0&&(t.filter.topics.length>1&&Hs.throwError("unsupported topic count",p.errors.UNSUPPORTED_OPERATION,{topics:t.filter.topics}),1===t.filter.topics.length)){const e=t.filter.topics[0];"string"==typeof e&&66===e.length||Hs.throwError("unsupported topic format",p.errors.UNSUPPORTED_OPERATION,{topic0:e}),o+="&topic0="+e}o+=n;const e=yield i(o,Gs);let r={};for(let t=0;t(o+="/api?module=account&action=txlist&address="+e,o+="&startblock="+t,o+="&endblock="+r,o+="&sort=asc"+n,this.emit("debug",{action:"request",request:o,provider:this}),ls(o,null,Gs).then(e=>{this.emit("debug",{action:"response",request:o,response:le(e),provider:this});let t=[];return e.forEach(e=>{["contractAddress","to"].forEach((function(t){""==e[t]&&delete e[t]})),null==e.creates&&null!=e.contractAddress&&(e.creates=e.contractAddress);let r=this.formatter.transactionResponse(e);e.timeStamp&&(r.timestamp=parseInt(e.timeStamp)),t.push(r)}),t})))}}const Zs=new p(cs);function js(){return(new Date).getTime()}function Ks(e){let t=!0,r=null;return e.forEach(o=>{null!=o?null!=r?r.name===o.name&&r.chainId===o.chainId&&(r.ensAddress===o.ensAddress||null==r.ensAddress&&null==o.ensAddress)||Zs.throwArgumentError("provider mismatch","networks",e):r=o:t=!1}),t}let Qs=1;class qs extends Ts{constructor(e,t,r){Zs.checkNew(new.target,qs),0===e.length&&Zs.throwArgumentError("missing providers","providers",e),null!=r&&r.length!==e.length?Zs.throwArgumentError("too many weights","weights",r):r?r.forEach(e=>{(e%1||e>512||e<1)&&Zs.throwArgumentError("invalid weight; must be integer in [1, 512]","weights",r)}):r=e.map(e=>1);let o=r.reduce((e,t)=>e+t);if(null==t?t=o/2:t>o&&Zs.throwArgumentError("quorum will always fail; larger than total weight","quorum",t),Ks(e.map(e=>e.network)))super(e[0].network);else{super(Promise.all(e.map(e=>e.getNetwork())).then(e=>(Ks(e)||Zs.throwError("getNetwork returned null",p.errors.UNKNOWN_ERROR),e[0])))}re(this,"providers",Object.freeze(e.slice())),re(this,"quorum",t),re(this,"weights",Object.freeze(r.slice()))}static doPerform(e,t,r){switch(t){case"getBlockNumber":case"getGasPrice":case"getEtherPrice":return e[t]();case"getBalance":case"getTransactionCount":case"getCode":return e[t](r.address,r.blockTag||"latest");case"getStorageAt":return e.getStorageAt(r.address,r.position,r.blockTag||"latest");case"sendTransaction":return e.sendTransaction(r.signedTransaction).then(e=>e.hash);case"getBlock":return e[r.includeTransactions?"getBlockWithTransactions":"getBlock"](r.blockTag||r.blockHash);case"call":case"estimateGas":return e[t](r.transaction);case"getTransaction":case"getTransactionReceipt":return e[t](r.transactionHash);case"getLogs":return e.getLogs(r.filter)}return Zs.throwError("unknown method error",p.errors.UNKNOWN_ERROR,{method:t,params:r})}perform(e,t){let r=js(),o=da(this.providers).map((o,n)=>{let i=this.weights[n],a=Qs++;return{run:()=>{let n=js(),s=n-r;return this.emit("debug",{action:"request",rid:a,backend:{weight:i,start:s,provider:o},request:{method:e,params:le(t)},provider:this}),qs.doPerform(o,e,t).then(r=>{let l=js()-n;return this.emit("debug",{action:"response",rid:a,backend:{weight:i,start:s,duration:l,provider:o},request:{method:e,params:le(t)},response:le(r)}),{weight:i,result:r}},r=>{let l=js()-n;return this.emit("debug",{action:"response",rid:a,backend:{weight:i,start:s,duration:l,provider:o},request:{method:e,params:le(t)},error:r}),{weight:i,error:r}})},weight:i}});return"sendTransaction"===e?Promise.all(o.map(e=>e.run())).then(e=>{for(let t=0;t{let i=null,a=0,s={},l=()=>{if(0===o.length)return;let u=o.shift();a+=u.weight,u.run().then(c=>{if(null!==s){if(a-=u.weight,c.error)null==i&&(i=c.error);else{let e=function e(t){if(Array.isArray(t))return JSON.stringify(t.map(t=>e(t)));if(null===t)return"null";if("object"==typeof t){let r=Object.keys(t);return r.sort(),"{"+r.map(r=>{let o=t[r];return o="function"==typeof o?"function{}":e(o),JSON.stringify(r)+"="+e(o)}).join(",")+"}"}return JSON.stringify(t)}(c.result);null==s[e]&&(s[e]=[]),s[e].push(c);for(let e in s){let t=s[e].reduce((e,t)=>e+t.weight,0);if(t>=this.quorum){let o=s[e][0].result;return this.emit("debug","quorum",-1,{weight:t,result:o}),r(o),void(s=null)}}}if(0===o.length&&0===a){if("getGasPrice"===e){const e=[];Object.keys(s).forEach(t=>{s[t].forEach(t=>{t.result&&e.push(t.result)})}),e.sort((e,t)=>e.lt(t)?-1:e.gt(t)?1:0);let t=parseInt(String(e.length/2));return e.length%2?void r(e[t]):void r(e[t-1].add(e[t]).div(2))}return null===i&&(i=Zs.makeError("failed to meet quorum",p.errors.SERVER_ERROR,{results:Object.keys(s).map(r=>({method:e,params:t,result:r,weight:s[r].reduce((e,t)=>e+t.weight,0)}))})),void n(i)}setTimeout(l,0)}}),a{let o=Buffer.alloc(0),n=Ys.connect(this.path);n.on("data",e=>{o=Buffer.concat([o,e])}),n.on("end",()=>{try{e(JSON.parse(o.toString()).result),n.destroy()}catch(e){t(e),n.destroy()}}),n.on("error",e=>{t(e),n.destroy()}),n.write(r),n.end()})}}const el=new p(cs),tl="84842078b09946638c03157f83405213";class rl extends Rs{static getApiKey(e){const t={apiKey:tl,projectId:tl,projectSecret:null};return null==e?t:("string"==typeof e?t.projectId=e:null!=e.projectSecret?("string"!=typeof e.projectId&&el.throwArgumentError("projectSecret requires a projectId","projectId",e.projectId),"string"!=typeof e.projectSecret&&el.throwArgumentError("invalid projectSecret","projectSecret","[REDACTED]"),t.projectId=e.projectId,t.projectSecret=e.projectSecret):e.projectId&&(t.projectId=e.projectId),t.apiKey=t.projectId,t)}static getUrl(e,t){let r=null;switch(e.name){case"homestead":r="mainnet.infura.io";break;case"ropsten":r="ropsten.infura.io";break;case"rinkeby":r="rinkeby.infura.io";break;case"kovan":r="kovan.infura.io";break;case"goerli":r="goerli.infura.io";break;default:el.throwError("unsupported network",p.errors.INVALID_ARGUMENT,{argument:"network",value:e})}const o={url:"https://"+r+"/v3/"+t.projectId};return null!=t.projectSecret&&(o.user="",o.password=t.projectSecret),o}}const ol=new p(cs),nl="ETHERS_JS_SHARED";class il extends Rs{static getApiKey(e){return e&&"string"!=typeof e&&ol.throwArgumentError("invalid apiKey","apiKey",e),e||nl}static getUrl(e,t){ol.warn("NodeSmith will be discontinued on 2019-12-20; please migrate to another platform.");let r=null;switch(e.name){case"homestead":r="https://ethereum.api.nodesmith.io/v1/mainnet/jsonrpc";break;case"ropsten":r="https://ethereum.api.nodesmith.io/v1/ropsten/jsonrpc";break;case"rinkeby":r="https://ethereum.api.nodesmith.io/v1/rinkeby/jsonrpc";break;case"goerli":r="https://ethereum.api.nodesmith.io/v1/goerli/jsonrpc";break;case"kovan":r="https://ethereum.api.nodesmith.io/v1/kovan/jsonrpc";break;default:ol.throwArgumentError("unsupported network","network",arguments[0])}return r+"?apiKey="+t}}const al=new p(cs);class sl extends Ps{constructor(e,t){al.checkNew(new.target,sl),super(e.host||e.path||"",t),e&&(e.sendAsync?this._sendAsync=e.sendAsync.bind(e):e.send&&(this._sendAsync=e.send.bind(e))),e&&this._sendAsync||al.throwArgumentError("invalid web3Provider","web3Provider",e),re(this,"provider",e)}send(e,t){return"eth_sign"==e&&this.provider.isMetaMask&&(e="personal_sign",t=[t[1],t[0]]),new Promise((r,o)=>{const n={method:e,params:t,id:42,jsonrpc:"2.0"};this._sendAsync(n,(function(e,t){if(e)o(e);else{if(t.error){const e=new Error(t.error.message);return e.code=t.error.code,e.data=t.error.data,void o(e)}r(t.result)}}))})}}const ll=new p(cs);function ul(e,t){null==e&&(e="homestead");const r=$a(e);return r&&r._defaultProvider||ll.throwError("unsupported getDefaultProvider network",p.errors.NETWORK_ERROR,{operation:"getDefaultProvider",network:e}),r._defaultProvider({FallbackProvider:qs,AlchemyProvider:Ns,CloudflareProvider:Xs,EtherscanProvider:Vs,InfuraProvider:rl,JsonRpcProvider:Ps,NodesmithProvider:il,Web3Provider:sl,IpcProvider:$s},t)}var cl=Object.freeze({Provider:ir,BaseProvider:Ts,FallbackProvider:qs,AlchemyProvider:Ns,CloudflareProvider:Xs,EtherscanProvider:Vs,InfuraProvider:rl,JsonRpcProvider:Ps,NodesmithProvider:il,Web3Provider:sl,IpcProvider:$s,JsonRpcSigner:Bs,getDefaultProvider:ul,getNetwork:$a,Formatter:ds});const hl=new RegExp("^bytes([0-9]+)$"),dl=new RegExp("^(u?int)([0-9]*)$"),fl=new RegExp("^(.*)\\[([0-9]*)\\]$"),pl="0000000000000000000000000000000000000000000000000000000000000000";function ml(e,t){if(e.length!=t.length)throw new Error("type/value count mismatch");const r=[];return e.forEach((function(e,o){r.push(function e(t,r,o){switch(t){case"address":return o?w(r,32):S(r);case"string":return Tt(r);case"bytes":return S(r);case"bool":return r=r?"0x01":"0x00",o?w(r,32):S(r)}let n=t.match(dl);if(n){let e=parseInt(n[2]||"256");if(e%8!=0||0===e||e>256)throw new Error("invalid number type - "+t);return o&&(e=256),w(r=_.from(r).toTwos(e),e/8)}if(n=t.match(hl),n){const e=parseInt(n[1]);if(String(e)!=n[1]||0===e||e>32)throw new Error("invalid number type - "+t);if(S(r).byteLength!==e)throw new Error("invalid value for "+t);return o?S((r+pl).substring(0,66)):r}if(n=t.match(fl),n&&Array.isArray(r)){const o=n[1];if(parseInt(n[2]||String(r.length))!=r.length)throw new Error("invalid value for "+t);const i=[];return r.forEach((function(t){i.push(e(o,t,!0))})),T(i)}throw new Error("unknown type - "+t)}(e,t[o]))})),C(T(r))}const gl=new p("units/5.0.0-beta.132"),vl=["wei","kwei","mwei","gwei","szabo","finney","ether"];function bl(e,t){if("string"==typeof t){const e=vl.indexOf(t);-1!==e&&(t=3*e)}return Y(e,null!=t?t:18)}function yl(e,t){if("string"==typeof t){const e=vl.indexOf(t);-1!==e&&(t=3*e)}return W(e,null!=t?t:18)}var Al=Object.freeze({AbiCoder:Ut,defaultAbiCoder:zt,Fragment:Ae,EventFragment:Se,FunctionFragment:Fe,ParamType:be,FormatTypes:ge,Logger:p,RLP:Ue,fetchJson:ls,poll:us,checkProperties:ie,deepCopy:le,defineReadOnly:re,getStatic:oe,resolveProperties:ne,shallowCopy:ae,arrayify:S,concat:T,stripZeros:M,zeroPad:w,defaultPath:na,HDNode:ia,SigningKey:xn,Interface:rr,base64:is,hexlify:C,isHexString:E,hexStripZeros:P,hexValue:L,hexZeroPad:k,hexDataLength:B,hexDataSlice:J,nameprep:It,_toEscapedUtf8String:function(e,t){return'"'+St(e,t).map(e=>{if(e<256){switch(e){case 8:return"\\b";case 9:return"\\t";case 10:return"\\n";case 13:return"\\r";case 34:return'\\"';case 92:return"\\\\"}if(e>=32&&e<127)return String.fromCharCode(e)}return e<=65535?Mt(e):Mt(55296+((e-=65536)>>10&1023))+Mt(56320+(1023&e))}).join("")+'"'},toUtf8Bytes:Tt,toUtf8CodePoints:Ft,toUtf8String:Et,formatBytes32String:function(e){const t=Tt(e);if(t.length>31)throw new Error("bytes32 string must be less than 32 bytes");return C(T([t,ct]).slice(0,32))},parseBytes32String:function(e){const t=S(e);if(32!==t.length)throw new Error("invalid bytes32 - not 32 bytes long");if(0!==t[31])throw new Error("invalid bytes32 string - no null terminator");let r=31;for(;0===t[r-1];)r--;return Et(t.slice(0,r))},hashMessage:Yt,namehash:Kt,isValidName:function(e){try{const t=e.split(".");for(let e=0;e2||!t[0].match(/^-?[0-9]*$/)||t[1]&&!t[1].match(/^[0-9]*$/)||"."===e||"-."===e)&&gl.throwArgumentError("invalid value","value",e);let r=t[0],o="";for("-"===r.substring(0,1)&&(o="-",r=r.substring(1));"0"===r.substring(0,1);)r=r.substring(1);""===r&&(r="0");let n="";2===t.length&&(n="."+(t[1]||"0"));const i=[];for(;r.length;){if(r.length<=3){i.unshift(r);break}{const e=r.length-3;i.unshift(r.substring(e)),r=r.substring(0,e)}}return o+i.join(",")+n},keccak256:Ne,sha256:Qo,randomBytes:fa,solidityPack:ml,solidityKeccak256:function(e,t){return Ne(ml(e,t))},soliditySha256:function(e,t){return Qo(ml(e,t))},splitSignature:R,joinSignature:D,parseTransaction:Yn,serializeTransaction:qn,getJsonWalletAddress:function(e){if(Sa(e))try{return qe(JSON.parse(e).ethaddr)}catch(e){return null}if(Ta(e))try{return qe(JSON.parse(e).address)}catch(e){return null}return null},computeAddress:Kn,recoverAddress:Qn,computePublicKey:Un,recoverPublicKey:Gn,verifyMessage:function(e,t){return Qn(Yt(e),t)},mnemonicToEntropy:sa,entropyToMnemonic:la,isValidMnemonic:function(e,t){try{return sa(e,t),!0}catch(e){}return!1},mnemonicToSeed:aa,SupportedAlgorithms:jo,get UnicodeNormalizationForm(){return At},Indexed:tr});const Sl="ethers/5.0.0-beta.165",Tl=p.errors,Ml=new p(Sl);var wl=Object.freeze({Signer:ur,Wallet:Va,VoidSigner:cr,getDefaultProvider:ul,providers:cl,Contract:Ar,ContractFactory:Sr,BigNumber:_,FixedNumber:ee,constants:vt,errors:Tl,logger:Ml,utils:Al,wordlists:Qi,version:Sl,Wordlist:ei});try{const e=window;null==e._ethers&&(e._ethers=wl)}catch(e){}export{_ as BigNumber,Ar as Contract,Sr as ContractFactory,ee as FixedNumber,ur as Signer,cr as VoidSigner,Va as Wallet,ei as Wordlist,vt as constants,Tl as errors,wl as ethers,ul as getDefaultProvider,Ml as logger,cl as providers,Al as utils,Sl as version,Qi as wordlists};