!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports):"function"==typeof define&&define.amd?define(["exports"],e):e((t=t||self).ethers={})}(this,(function(t){"use strict";var e="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function r(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}function n(t,e){return t(e={exports:{}},e.exports),e.exports}function i(t){return t&&t.default||t}var o=Object.freeze({default:{}}),s=i(o),a=n((function(t){!function(t,e){function r(t,e){if(!t)throw new Error(e||"Assertion failed")}function n(t,e){t.super_=e;var r=function(){};r.prototype=e.prototype,t.prototype=new r,t.prototype.constructor=t}function i(t,e,r){if(i.isBN(t))return t;this.negative=0,this.words=null,this.length=0,this.red=null,null!==t&&("le"!==e&&"be"!==e||(r=e,e=10),this._init(t||0,e||10,r||"be"))}var o;"object"==typeof t?t.exports=i:e.BN=i,i.BN=i,i.wordSize=26;try{o=s.Buffer}catch(t){}function a(t,e,r){for(var n=0,i=Math.min(t.length,r),o=e;o=49&&s<=54?s-49+10:s>=17&&s<=22?s-17+10:15&s}return n}function u(t,e,r,n){for(var i=0,o=Math.min(t.length,r),s=e;s=49?a-49+10:a>=17?a-17+10:a}return i}i.isBN=function(t){return t instanceof i||null!==t&&"object"==typeof t&&t.constructor.wordSize===i.wordSize&&Array.isArray(t.words)},i.max=function(t,e){return t.cmp(e)>0?t:e},i.min=function(t,e){return t.cmp(e)<0?t:e},i.prototype._init=function(t,e,n){if("number"==typeof t)return this._initNumber(t,e,n);if("object"==typeof t)return this._initArray(t,e,n);"hex"===e&&(e=16),r(e===(0|e)&&e>=2&&e<=36);var i=0;"-"===(t=t.toString().replace(/\s+/g,""))[0]&&i++,16===e?this._parseHex(t,i):this._parseBase(t,e,i),"-"===t[0]&&(this.negative=1),this.strip(),"le"===n&&this._initArray(this.toArray(),e,n)},i.prototype._initNumber=function(t,e,n){t<0&&(this.negative=1,t=-t),t<67108864?(this.words=[67108863&t],this.length=1):t<4503599627370496?(this.words=[67108863&t,t/67108864&67108863],this.length=2):(r(t<9007199254740992),this.words=[67108863&t,t/67108864&67108863,1],this.length=3),"le"===n&&this._initArray(this.toArray(),e,n)},i.prototype._initArray=function(t,e,n){if(r("number"==typeof t.length),t.length<=0)return this.words=[0],this.length=1,this;this.length=Math.ceil(t.length/3),this.words=new Array(this.length);for(var i=0;i=0;i-=3)s=t[i]|t[i-1]<<8|t[i-2]<<16,this.words[o]|=s<>>26-a&67108863,(a+=24)>=26&&(a-=26,o++);else if("le"===n)for(i=0,o=0;i>>26-a&67108863,(a+=24)>=26&&(a-=26,o++);return this.strip()},i.prototype._parseHex=function(t,e){this.length=Math.ceil((t.length-e)/6),this.words=new Array(this.length);for(var r=0;r=e;r-=6)i=a(t,r,r+6),this.words[n]|=i<>>26-o&4194303,(o+=24)>=26&&(o-=26,n++);r+6!==e&&(i=a(t,e,r+6),this.words[n]|=i<>>26-o&4194303),this.strip()},i.prototype._parseBase=function(t,e,r){this.words=[0],this.length=1;for(var n=0,i=1;i<=67108863;i*=e)n++;n--,i=i/e|0;for(var o=t.length-r,s=o%n,a=Math.min(o,o-s)+r,l=0,h=r;h1&&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 l=["","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"],h=[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],c=[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 f(t,e,r){r.negative=e.negative^t.negative;var n=t.length+e.length|0;r.length=n,n=n-1|0;var i=0|t.words[0],o=0|e.words[0],s=i*o,a=67108863&s,u=s/67108864|0;r.words[0]=a;for(var l=1;l>>26,c=67108863&u,f=Math.min(l,e.length-1),d=Math.max(0,l-t.length+1);d<=f;d++){var p=l-d|0;h+=(s=(i=0|t.words[p])*(o=0|e.words[d])+c)/67108864|0,c=67108863&s}r.words[l]=0|c,u=0|h}return 0!==u?r.words[l]=0|u:r.length--,r.strip()}i.prototype.toString=function(t,e){var n;if(e=0|e||1,16===(t=t||10)||"hex"===t){n="";for(var i=0,o=0,s=0;s>>24-i&16777215)||s!==this.length-1?l[6-u.length]+u+n:u+n,(i+=2)>=26&&(i-=26,s--)}for(0!==o&&(n=o.toString(16)+n);n.length%e!=0;)n="0"+n;return 0!==this.negative&&(n="-"+n),n}if(t===(0|t)&&t>=2&&t<=36){var f=h[t],d=c[t];n="";var p=this.clone();for(p.negative=0;!p.isZero();){var m=p.modn(d).toString(t);n=(p=p.idivn(d)).isZero()?m+n:l[f-m.length]+m+n}for(this.isZero()&&(n="0"+n);n.length%e!=0;)n="0"+n;return 0!==this.negative&&(n="-"+n),n}r(!1,"Base should be between 2 and 36")},i.prototype.toNumber=function(){var t=this.words[0];return 2===this.length?t+=67108864*this.words[1]:3===this.length&&1===this.words[2]?t+=4503599627370496+67108864*this.words[1]:this.length>2&&r(!1,"Number can only safely store up to 53 bits"),0!==this.negative?-t:t},i.prototype.toJSON=function(){return this.toString(16)},i.prototype.toBuffer=function(t,e){return r(void 0!==o),this.toArrayLike(o,t,e)},i.prototype.toArray=function(t,e){return this.toArrayLike(Array,t,e)},i.prototype.toArrayLike=function(t,e,n){var i=this.byteLength(),o=n||Math.max(1,i);r(i<=o,"byte array longer than desired length"),r(o>0,"Requested array length <= 0"),this.strip();var s,a,u="le"===e,l=new t(o),h=this.clone();if(u){for(a=0;!h.isZero();a++)s=h.andln(255),h.iushrn(8),l[a]=s;for(;a=4096&&(r+=13,e>>>=13),e>=64&&(r+=7,e>>>=7),e>=8&&(r+=4,e>>>=4),e>=2&&(r+=2,e>>>=2),r+e},i.prototype._zeroBits=function(t){if(0===t)return 26;var e=t,r=0;return 0==(8191&e)&&(r+=13,e>>>=13),0==(127&e)&&(r+=7,e>>>=7),0==(15&e)&&(r+=4,e>>>=4),0==(3&e)&&(r+=2,e>>>=2),0==(1&e)&&r++,r},i.prototype.bitLength=function(){var t=this.words[this.length-1],e=this._countBits(t);return 26*(this.length-1)+e},i.prototype.zeroBits=function(){if(this.isZero())return 0;for(var t=0,e=0;et.length?this.clone().ior(t):t.clone().ior(this)},i.prototype.uor=function(t){return this.length>t.length?this.clone().iuor(t):t.clone().iuor(this)},i.prototype.iuand=function(t){var e;e=this.length>t.length?t:this;for(var r=0;rt.length?this.clone().iand(t):t.clone().iand(this)},i.prototype.uand=function(t){return this.length>t.length?this.clone().iuand(t):t.clone().iuand(this)},i.prototype.iuxor=function(t){var e,r;this.length>t.length?(e=this,r=t):(e=t,r=this);for(var n=0;nt.length?this.clone().ixor(t):t.clone().ixor(this)},i.prototype.uxor=function(t){return this.length>t.length?this.clone().iuxor(t):t.clone().iuxor(this)},i.prototype.inotn=function(t){r("number"==typeof t&&t>=0);var e=0|Math.ceil(t/26),n=t%26;this._expand(e),n>0&&e--;for(var i=0;i0&&(this.words[i]=~this.words[i]&67108863>>26-n),this.strip()},i.prototype.notn=function(t){return this.clone().inotn(t)},i.prototype.setn=function(t,e){r("number"==typeof t&&t>=0);var n=t/26|0,i=t%26;return this._expand(n+1),this.words[n]=e?this.words[n]|1<t.length?(r=this,n=t):(r=t,n=this);for(var i=0,o=0;o>>26;for(;0!==i&&o>>26;if(this.length=r.length,0!==i)this.words[this.length]=i,this.length++;else if(r!==this)for(;ot.length?this.clone().iadd(t):t.clone().iadd(this)},i.prototype.isub=function(t){if(0!==t.negative){t.negative=0;var e=this.iadd(t);return t.negative=1,e._normSign()}if(0!==this.negative)return this.negative=0,this.iadd(t),this.negative=1,this._normSign();var r,n,i=this.cmp(t);if(0===i)return this.negative=0,this.length=1,this.words[0]=0,this;i>0?(r=this,n=t):(r=t,n=this);for(var o=0,s=0;s>26,this.words[s]=67108863&e;for(;0!==o&&s>26,this.words[s]=67108863&e;if(0===o&&s>>13,d=0|s[1],p=8191&d,m=d>>>13,g=0|s[2],v=8191&g,y=g>>>13,b=0|s[3],w=8191&b,_=b>>>13,M=0|s[4],E=8191&M,k=M>>>13,S=0|s[5],P=8191&S,A=S>>>13,x=0|s[6],N=8191&x,O=x>>>13,R=0|s[7],T=8191&R,C=R>>>13,B=0|s[8],I=8191&B,F=B>>>13,L=0|s[9],U=8191&L,j=L>>>13,D=0|a[0],z=8191&D,K=D>>>13,H=0|a[1],W=8191&H,q=H>>>13,G=0|a[2],V=8191&G,J=G>>>13,Z=0|a[3],X=8191&Z,$=Z>>>13,Q=0|a[4],Y=8191&Q,tt=Q>>>13,et=0|a[5],rt=8191&et,nt=et>>>13,it=0|a[6],ot=8191&it,st=it>>>13,at=0|a[7],ut=8191&at,lt=at>>>13,ht=0|a[8],ct=8191&ht,ft=ht>>>13,dt=0|a[9],pt=8191&dt,mt=dt>>>13;r.negative=t.negative^e.negative,r.length=19;var gt=(l+(n=Math.imul(c,z))|0)+((8191&(i=(i=Math.imul(c,K))+Math.imul(f,z)|0))<<13)|0;l=((o=Math.imul(f,K))+(i>>>13)|0)+(gt>>>26)|0,gt&=67108863,n=Math.imul(p,z),i=(i=Math.imul(p,K))+Math.imul(m,z)|0,o=Math.imul(m,K);var vt=(l+(n=n+Math.imul(c,W)|0)|0)+((8191&(i=(i=i+Math.imul(c,q)|0)+Math.imul(f,W)|0))<<13)|0;l=((o=o+Math.imul(f,q)|0)+(i>>>13)|0)+(vt>>>26)|0,vt&=67108863,n=Math.imul(v,z),i=(i=Math.imul(v,K))+Math.imul(y,z)|0,o=Math.imul(y,K),n=n+Math.imul(p,W)|0,i=(i=i+Math.imul(p,q)|0)+Math.imul(m,W)|0,o=o+Math.imul(m,q)|0;var yt=(l+(n=n+Math.imul(c,V)|0)|0)+((8191&(i=(i=i+Math.imul(c,J)|0)+Math.imul(f,V)|0))<<13)|0;l=((o=o+Math.imul(f,J)|0)+(i>>>13)|0)+(yt>>>26)|0,yt&=67108863,n=Math.imul(w,z),i=(i=Math.imul(w,K))+Math.imul(_,z)|0,o=Math.imul(_,K),n=n+Math.imul(v,W)|0,i=(i=i+Math.imul(v,q)|0)+Math.imul(y,W)|0,o=o+Math.imul(y,q)|0,n=n+Math.imul(p,V)|0,i=(i=i+Math.imul(p,J)|0)+Math.imul(m,V)|0,o=o+Math.imul(m,J)|0;var bt=(l+(n=n+Math.imul(c,X)|0)|0)+((8191&(i=(i=i+Math.imul(c,$)|0)+Math.imul(f,X)|0))<<13)|0;l=((o=o+Math.imul(f,$)|0)+(i>>>13)|0)+(bt>>>26)|0,bt&=67108863,n=Math.imul(E,z),i=(i=Math.imul(E,K))+Math.imul(k,z)|0,o=Math.imul(k,K),n=n+Math.imul(w,W)|0,i=(i=i+Math.imul(w,q)|0)+Math.imul(_,W)|0,o=o+Math.imul(_,q)|0,n=n+Math.imul(v,V)|0,i=(i=i+Math.imul(v,J)|0)+Math.imul(y,V)|0,o=o+Math.imul(y,J)|0,n=n+Math.imul(p,X)|0,i=(i=i+Math.imul(p,$)|0)+Math.imul(m,X)|0,o=o+Math.imul(m,$)|0;var wt=(l+(n=n+Math.imul(c,Y)|0)|0)+((8191&(i=(i=i+Math.imul(c,tt)|0)+Math.imul(f,Y)|0))<<13)|0;l=((o=o+Math.imul(f,tt)|0)+(i>>>13)|0)+(wt>>>26)|0,wt&=67108863,n=Math.imul(P,z),i=(i=Math.imul(P,K))+Math.imul(A,z)|0,o=Math.imul(A,K),n=n+Math.imul(E,W)|0,i=(i=i+Math.imul(E,q)|0)+Math.imul(k,W)|0,o=o+Math.imul(k,q)|0,n=n+Math.imul(w,V)|0,i=(i=i+Math.imul(w,J)|0)+Math.imul(_,V)|0,o=o+Math.imul(_,J)|0,n=n+Math.imul(v,X)|0,i=(i=i+Math.imul(v,$)|0)+Math.imul(y,X)|0,o=o+Math.imul(y,$)|0,n=n+Math.imul(p,Y)|0,i=(i=i+Math.imul(p,tt)|0)+Math.imul(m,Y)|0,o=o+Math.imul(m,tt)|0;var _t=(l+(n=n+Math.imul(c,rt)|0)|0)+((8191&(i=(i=i+Math.imul(c,nt)|0)+Math.imul(f,rt)|0))<<13)|0;l=((o=o+Math.imul(f,nt)|0)+(i>>>13)|0)+(_t>>>26)|0,_t&=67108863,n=Math.imul(N,z),i=(i=Math.imul(N,K))+Math.imul(O,z)|0,o=Math.imul(O,K),n=n+Math.imul(P,W)|0,i=(i=i+Math.imul(P,q)|0)+Math.imul(A,W)|0,o=o+Math.imul(A,q)|0,n=n+Math.imul(E,V)|0,i=(i=i+Math.imul(E,J)|0)+Math.imul(k,V)|0,o=o+Math.imul(k,J)|0,n=n+Math.imul(w,X)|0,i=(i=i+Math.imul(w,$)|0)+Math.imul(_,X)|0,o=o+Math.imul(_,$)|0,n=n+Math.imul(v,Y)|0,i=(i=i+Math.imul(v,tt)|0)+Math.imul(y,Y)|0,o=o+Math.imul(y,tt)|0,n=n+Math.imul(p,rt)|0,i=(i=i+Math.imul(p,nt)|0)+Math.imul(m,rt)|0,o=o+Math.imul(m,nt)|0;var Mt=(l+(n=n+Math.imul(c,ot)|0)|0)+((8191&(i=(i=i+Math.imul(c,st)|0)+Math.imul(f,ot)|0))<<13)|0;l=((o=o+Math.imul(f,st)|0)+(i>>>13)|0)+(Mt>>>26)|0,Mt&=67108863,n=Math.imul(T,z),i=(i=Math.imul(T,K))+Math.imul(C,z)|0,o=Math.imul(C,K),n=n+Math.imul(N,W)|0,i=(i=i+Math.imul(N,q)|0)+Math.imul(O,W)|0,o=o+Math.imul(O,q)|0,n=n+Math.imul(P,V)|0,i=(i=i+Math.imul(P,J)|0)+Math.imul(A,V)|0,o=o+Math.imul(A,J)|0,n=n+Math.imul(E,X)|0,i=(i=i+Math.imul(E,$)|0)+Math.imul(k,X)|0,o=o+Math.imul(k,$)|0,n=n+Math.imul(w,Y)|0,i=(i=i+Math.imul(w,tt)|0)+Math.imul(_,Y)|0,o=o+Math.imul(_,tt)|0,n=n+Math.imul(v,rt)|0,i=(i=i+Math.imul(v,nt)|0)+Math.imul(y,rt)|0,o=o+Math.imul(y,nt)|0,n=n+Math.imul(p,ot)|0,i=(i=i+Math.imul(p,st)|0)+Math.imul(m,ot)|0,o=o+Math.imul(m,st)|0;var Et=(l+(n=n+Math.imul(c,ut)|0)|0)+((8191&(i=(i=i+Math.imul(c,lt)|0)+Math.imul(f,ut)|0))<<13)|0;l=((o=o+Math.imul(f,lt)|0)+(i>>>13)|0)+(Et>>>26)|0,Et&=67108863,n=Math.imul(I,z),i=(i=Math.imul(I,K))+Math.imul(F,z)|0,o=Math.imul(F,K),n=n+Math.imul(T,W)|0,i=(i=i+Math.imul(T,q)|0)+Math.imul(C,W)|0,o=o+Math.imul(C,q)|0,n=n+Math.imul(N,V)|0,i=(i=i+Math.imul(N,J)|0)+Math.imul(O,V)|0,o=o+Math.imul(O,J)|0,n=n+Math.imul(P,X)|0,i=(i=i+Math.imul(P,$)|0)+Math.imul(A,X)|0,o=o+Math.imul(A,$)|0,n=n+Math.imul(E,Y)|0,i=(i=i+Math.imul(E,tt)|0)+Math.imul(k,Y)|0,o=o+Math.imul(k,tt)|0,n=n+Math.imul(w,rt)|0,i=(i=i+Math.imul(w,nt)|0)+Math.imul(_,rt)|0,o=o+Math.imul(_,nt)|0,n=n+Math.imul(v,ot)|0,i=(i=i+Math.imul(v,st)|0)+Math.imul(y,ot)|0,o=o+Math.imul(y,st)|0,n=n+Math.imul(p,ut)|0,i=(i=i+Math.imul(p,lt)|0)+Math.imul(m,ut)|0,o=o+Math.imul(m,lt)|0;var kt=(l+(n=n+Math.imul(c,ct)|0)|0)+((8191&(i=(i=i+Math.imul(c,ft)|0)+Math.imul(f,ct)|0))<<13)|0;l=((o=o+Math.imul(f,ft)|0)+(i>>>13)|0)+(kt>>>26)|0,kt&=67108863,n=Math.imul(U,z),i=(i=Math.imul(U,K))+Math.imul(j,z)|0,o=Math.imul(j,K),n=n+Math.imul(I,W)|0,i=(i=i+Math.imul(I,q)|0)+Math.imul(F,W)|0,o=o+Math.imul(F,q)|0,n=n+Math.imul(T,V)|0,i=(i=i+Math.imul(T,J)|0)+Math.imul(C,V)|0,o=o+Math.imul(C,J)|0,n=n+Math.imul(N,X)|0,i=(i=i+Math.imul(N,$)|0)+Math.imul(O,X)|0,o=o+Math.imul(O,$)|0,n=n+Math.imul(P,Y)|0,i=(i=i+Math.imul(P,tt)|0)+Math.imul(A,Y)|0,o=o+Math.imul(A,tt)|0,n=n+Math.imul(E,rt)|0,i=(i=i+Math.imul(E,nt)|0)+Math.imul(k,rt)|0,o=o+Math.imul(k,nt)|0,n=n+Math.imul(w,ot)|0,i=(i=i+Math.imul(w,st)|0)+Math.imul(_,ot)|0,o=o+Math.imul(_,st)|0,n=n+Math.imul(v,ut)|0,i=(i=i+Math.imul(v,lt)|0)+Math.imul(y,ut)|0,o=o+Math.imul(y,lt)|0,n=n+Math.imul(p,ct)|0,i=(i=i+Math.imul(p,ft)|0)+Math.imul(m,ct)|0,o=o+Math.imul(m,ft)|0;var St=(l+(n=n+Math.imul(c,pt)|0)|0)+((8191&(i=(i=i+Math.imul(c,mt)|0)+Math.imul(f,pt)|0))<<13)|0;l=((o=o+Math.imul(f,mt)|0)+(i>>>13)|0)+(St>>>26)|0,St&=67108863,n=Math.imul(U,W),i=(i=Math.imul(U,q))+Math.imul(j,W)|0,o=Math.imul(j,q),n=n+Math.imul(I,V)|0,i=(i=i+Math.imul(I,J)|0)+Math.imul(F,V)|0,o=o+Math.imul(F,J)|0,n=n+Math.imul(T,X)|0,i=(i=i+Math.imul(T,$)|0)+Math.imul(C,X)|0,o=o+Math.imul(C,$)|0,n=n+Math.imul(N,Y)|0,i=(i=i+Math.imul(N,tt)|0)+Math.imul(O,Y)|0,o=o+Math.imul(O,tt)|0,n=n+Math.imul(P,rt)|0,i=(i=i+Math.imul(P,nt)|0)+Math.imul(A,rt)|0,o=o+Math.imul(A,nt)|0,n=n+Math.imul(E,ot)|0,i=(i=i+Math.imul(E,st)|0)+Math.imul(k,ot)|0,o=o+Math.imul(k,st)|0,n=n+Math.imul(w,ut)|0,i=(i=i+Math.imul(w,lt)|0)+Math.imul(_,ut)|0,o=o+Math.imul(_,lt)|0,n=n+Math.imul(v,ct)|0,i=(i=i+Math.imul(v,ft)|0)+Math.imul(y,ct)|0,o=o+Math.imul(y,ft)|0;var Pt=(l+(n=n+Math.imul(p,pt)|0)|0)+((8191&(i=(i=i+Math.imul(p,mt)|0)+Math.imul(m,pt)|0))<<13)|0;l=((o=o+Math.imul(m,mt)|0)+(i>>>13)|0)+(Pt>>>26)|0,Pt&=67108863,n=Math.imul(U,V),i=(i=Math.imul(U,J))+Math.imul(j,V)|0,o=Math.imul(j,J),n=n+Math.imul(I,X)|0,i=(i=i+Math.imul(I,$)|0)+Math.imul(F,X)|0,o=o+Math.imul(F,$)|0,n=n+Math.imul(T,Y)|0,i=(i=i+Math.imul(T,tt)|0)+Math.imul(C,Y)|0,o=o+Math.imul(C,tt)|0,n=n+Math.imul(N,rt)|0,i=(i=i+Math.imul(N,nt)|0)+Math.imul(O,rt)|0,o=o+Math.imul(O,nt)|0,n=n+Math.imul(P,ot)|0,i=(i=i+Math.imul(P,st)|0)+Math.imul(A,ot)|0,o=o+Math.imul(A,st)|0,n=n+Math.imul(E,ut)|0,i=(i=i+Math.imul(E,lt)|0)+Math.imul(k,ut)|0,o=o+Math.imul(k,lt)|0,n=n+Math.imul(w,ct)|0,i=(i=i+Math.imul(w,ft)|0)+Math.imul(_,ct)|0,o=o+Math.imul(_,ft)|0;var At=(l+(n=n+Math.imul(v,pt)|0)|0)+((8191&(i=(i=i+Math.imul(v,mt)|0)+Math.imul(y,pt)|0))<<13)|0;l=((o=o+Math.imul(y,mt)|0)+(i>>>13)|0)+(At>>>26)|0,At&=67108863,n=Math.imul(U,X),i=(i=Math.imul(U,$))+Math.imul(j,X)|0,o=Math.imul(j,$),n=n+Math.imul(I,Y)|0,i=(i=i+Math.imul(I,tt)|0)+Math.imul(F,Y)|0,o=o+Math.imul(F,tt)|0,n=n+Math.imul(T,rt)|0,i=(i=i+Math.imul(T,nt)|0)+Math.imul(C,rt)|0,o=o+Math.imul(C,nt)|0,n=n+Math.imul(N,ot)|0,i=(i=i+Math.imul(N,st)|0)+Math.imul(O,ot)|0,o=o+Math.imul(O,st)|0,n=n+Math.imul(P,ut)|0,i=(i=i+Math.imul(P,lt)|0)+Math.imul(A,ut)|0,o=o+Math.imul(A,lt)|0,n=n+Math.imul(E,ct)|0,i=(i=i+Math.imul(E,ft)|0)+Math.imul(k,ct)|0,o=o+Math.imul(k,ft)|0;var xt=(l+(n=n+Math.imul(w,pt)|0)|0)+((8191&(i=(i=i+Math.imul(w,mt)|0)+Math.imul(_,pt)|0))<<13)|0;l=((o=o+Math.imul(_,mt)|0)+(i>>>13)|0)+(xt>>>26)|0,xt&=67108863,n=Math.imul(U,Y),i=(i=Math.imul(U,tt))+Math.imul(j,Y)|0,o=Math.imul(j,tt),n=n+Math.imul(I,rt)|0,i=(i=i+Math.imul(I,nt)|0)+Math.imul(F,rt)|0,o=o+Math.imul(F,nt)|0,n=n+Math.imul(T,ot)|0,i=(i=i+Math.imul(T,st)|0)+Math.imul(C,ot)|0,o=o+Math.imul(C,st)|0,n=n+Math.imul(N,ut)|0,i=(i=i+Math.imul(N,lt)|0)+Math.imul(O,ut)|0,o=o+Math.imul(O,lt)|0,n=n+Math.imul(P,ct)|0,i=(i=i+Math.imul(P,ft)|0)+Math.imul(A,ct)|0,o=o+Math.imul(A,ft)|0;var Nt=(l+(n=n+Math.imul(E,pt)|0)|0)+((8191&(i=(i=i+Math.imul(E,mt)|0)+Math.imul(k,pt)|0))<<13)|0;l=((o=o+Math.imul(k,mt)|0)+(i>>>13)|0)+(Nt>>>26)|0,Nt&=67108863,n=Math.imul(U,rt),i=(i=Math.imul(U,nt))+Math.imul(j,rt)|0,o=Math.imul(j,nt),n=n+Math.imul(I,ot)|0,i=(i=i+Math.imul(I,st)|0)+Math.imul(F,ot)|0,o=o+Math.imul(F,st)|0,n=n+Math.imul(T,ut)|0,i=(i=i+Math.imul(T,lt)|0)+Math.imul(C,ut)|0,o=o+Math.imul(C,lt)|0,n=n+Math.imul(N,ct)|0,i=(i=i+Math.imul(N,ft)|0)+Math.imul(O,ct)|0,o=o+Math.imul(O,ft)|0;var Ot=(l+(n=n+Math.imul(P,pt)|0)|0)+((8191&(i=(i=i+Math.imul(P,mt)|0)+Math.imul(A,pt)|0))<<13)|0;l=((o=o+Math.imul(A,mt)|0)+(i>>>13)|0)+(Ot>>>26)|0,Ot&=67108863,n=Math.imul(U,ot),i=(i=Math.imul(U,st))+Math.imul(j,ot)|0,o=Math.imul(j,st),n=n+Math.imul(I,ut)|0,i=(i=i+Math.imul(I,lt)|0)+Math.imul(F,ut)|0,o=o+Math.imul(F,lt)|0,n=n+Math.imul(T,ct)|0,i=(i=i+Math.imul(T,ft)|0)+Math.imul(C,ct)|0,o=o+Math.imul(C,ft)|0;var Rt=(l+(n=n+Math.imul(N,pt)|0)|0)+((8191&(i=(i=i+Math.imul(N,mt)|0)+Math.imul(O,pt)|0))<<13)|0;l=((o=o+Math.imul(O,mt)|0)+(i>>>13)|0)+(Rt>>>26)|0,Rt&=67108863,n=Math.imul(U,ut),i=(i=Math.imul(U,lt))+Math.imul(j,ut)|0,o=Math.imul(j,lt),n=n+Math.imul(I,ct)|0,i=(i=i+Math.imul(I,ft)|0)+Math.imul(F,ct)|0,o=o+Math.imul(F,ft)|0;var Tt=(l+(n=n+Math.imul(T,pt)|0)|0)+((8191&(i=(i=i+Math.imul(T,mt)|0)+Math.imul(C,pt)|0))<<13)|0;l=((o=o+Math.imul(C,mt)|0)+(i>>>13)|0)+(Tt>>>26)|0,Tt&=67108863,n=Math.imul(U,ct),i=(i=Math.imul(U,ft))+Math.imul(j,ct)|0,o=Math.imul(j,ft);var Ct=(l+(n=n+Math.imul(I,pt)|0)|0)+((8191&(i=(i=i+Math.imul(I,mt)|0)+Math.imul(F,pt)|0))<<13)|0;l=((o=o+Math.imul(F,mt)|0)+(i>>>13)|0)+(Ct>>>26)|0,Ct&=67108863;var Bt=(l+(n=Math.imul(U,pt))|0)+((8191&(i=(i=Math.imul(U,mt))+Math.imul(j,pt)|0))<<13)|0;return l=((o=Math.imul(j,mt))+(i>>>13)|0)+(Bt>>>26)|0,Bt&=67108863,u[0]=gt,u[1]=vt,u[2]=yt,u[3]=bt,u[4]=wt,u[5]=_t,u[6]=Mt,u[7]=Et,u[8]=kt,u[9]=St,u[10]=Pt,u[11]=At,u[12]=xt,u[13]=Nt,u[14]=Ot,u[15]=Rt,u[16]=Tt,u[17]=Ct,u[18]=Bt,0!==l&&(u[19]=l,r.length++),r};function p(t,e,r){return(new m).mulp(t,e,r)}function m(t,e){this.x=t,this.y=e}Math.imul||(d=f),i.prototype.mulTo=function(t,e){var r=this.length+t.length;return 10===this.length&&10===t.length?d(this,t,e):r<63?f(this,t,e):r<1024?function(t,e,r){r.negative=e.negative^t.negative,r.length=t.length+e.length;for(var n=0,i=0,o=0;o>>26)|0)>>>26,s&=67108863}r.words[o]=a,n=s,s=i}return 0!==n?r.words[o]=n:r.length--,r.strip()}(this,t,e):p(this,t,e)},m.prototype.makeRBT=function(t){for(var e=new Array(t),r=i.prototype._countBits(t)-1,n=0;n>=1;return n},m.prototype.permute=function(t,e,r,n,i,o){for(var s=0;s>>=1)i++;return 1<>>=13,n[2*s+1]=8191&o,o>>>=13;for(s=2*e;s>=26,e+=i/67108864|0,e+=o>>>26,this.words[n]=67108863&o}return 0!==e&&(this.words[n]=e,this.length++),this},i.prototype.muln=function(t){return this.clone().imuln(t)},i.prototype.sqr=function(){return this.mul(this)},i.prototype.isqr=function(){return this.imul(this.clone())},i.prototype.pow=function(t){var e=function(t){for(var e=new Array(t.bitLength()),r=0;r>>i}return e}(t);if(0===e.length)return new i(1);for(var r=this,n=0;n=0);var e,n=t%26,i=(t-n)/26,o=67108863>>>26-n<<26-n;if(0!==n){var s=0;for(e=0;e>>26-n}s&&(this.words[e]=s,this.length++)}if(0!==i){for(e=this.length-1;e>=0;e--)this.words[e+i]=this.words[e];for(e=0;e=0),i=e?(e-e%26)/26:0;var o=t%26,s=Math.min((t-o)/26,this.length),a=67108863^67108863>>>o<s)for(this.length-=s,l=0;l=0&&(0!==h||l>=i);l--){var c=0|this.words[l];this.words[l]=h<<26-o|c>>>o,h=c&a}return u&&0!==h&&(u.words[u.length++]=h),0===this.length&&(this.words[0]=0,this.length=1),this.strip()},i.prototype.ishrn=function(t,e,n){return r(0===this.negative),this.iushrn(t,e,n)},i.prototype.shln=function(t){return this.clone().ishln(t)},i.prototype.ushln=function(t){return this.clone().iushln(t)},i.prototype.shrn=function(t){return this.clone().ishrn(t)},i.prototype.ushrn=function(t){return this.clone().iushrn(t)},i.prototype.testn=function(t){r("number"==typeof t&&t>=0);var e=t%26,n=(t-e)/26,i=1<=0);var e=t%26,n=(t-e)/26;if(r(0===this.negative,"imaskn works only with positive numbers"),this.length<=n)return this;if(0!==e&&n++,this.length=Math.min(n,this.length),0!==e){var i=67108863^67108863>>>e<=67108864;e++)this.words[e]-=67108864,e===this.length-1?this.words[e+1]=1:this.words[e+1]++;return this.length=Math.max(this.length,e+1),this},i.prototype.isubn=function(t){if(r("number"==typeof t),r(t<67108864),t<0)return this.iaddn(-t);if(0!==this.negative)return this.negative=0,this.iaddn(t),this.negative=1,this;if(this.words[0]-=t,1===this.length&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var e=0;e>26)-(u/67108864|0),this.words[i+n]=67108863&o}for(;i>26,this.words[i+n]=67108863&o;if(0===a)return this.strip();for(r(-1===a),a=0,i=0;i>26,this.words[i]=67108863&o;return this.negative=1,this.strip()},i.prototype._wordDiv=function(t,e){var r=(this.length,t.length),n=this.clone(),o=t,s=0|o.words[o.length-1];0!==(r=26-this._countBits(s))&&(o=o.ushln(r),n.iushln(r),s=0|o.words[o.length-1]);var a,u=n.length-o.length;if("mod"!==e){(a=new i(null)).length=u+1,a.words=new Array(a.length);for(var l=0;l=0;c--){var f=67108864*(0|n.words[o.length+c])+(0|n.words[o.length+c-1]);for(f=Math.min(f/s|0,67108863),n._ishlnsubmul(o,f,c);0!==n.negative;)f--,n.negative=0,n._ishlnsubmul(o,1,c),n.isZero()||(n.negative^=1);a&&(a.words[c]=f)}return a&&a.strip(),n.strip(),"div"!==e&&0!==r&&n.iushrn(r),{div:a||null,mod:n}},i.prototype.divmod=function(t,e,n){return r(!t.isZero()),this.isZero()?{div:new i(0),mod:new i(0)}:0!==this.negative&&0===t.negative?(a=this.neg().divmod(t,e),"mod"!==e&&(o=a.div.neg()),"div"!==e&&(s=a.mod.neg(),n&&0!==s.negative&&s.iadd(t)),{div:o,mod:s}):0===this.negative&&0!==t.negative?(a=this.divmod(t.neg(),e),"mod"!==e&&(o=a.div.neg()),{div:o,mod:a.mod}):0!=(this.negative&t.negative)?(a=this.neg().divmod(t.neg(),e),"div"!==e&&(s=a.mod.neg(),n&&0!==s.negative&&s.isub(t)),{div:a.div,mod:s}):t.length>this.length||this.cmp(t)<0?{div:new i(0),mod:this}:1===t.length?"div"===e?{div:this.divn(t.words[0]),mod:null}:"mod"===e?{div:null,mod:new i(this.modn(t.words[0]))}:{div:this.divn(t.words[0]),mod:new i(this.modn(t.words[0]))}:this._wordDiv(t,e);var o,s,a},i.prototype.div=function(t){return this.divmod(t,"div",!1).div},i.prototype.mod=function(t){return this.divmod(t,"mod",!1).mod},i.prototype.umod=function(t){return this.divmod(t,"mod",!0).mod},i.prototype.divRound=function(t){var e=this.divmod(t);if(e.mod.isZero())return e.div;var r=0!==e.div.negative?e.mod.isub(t):e.mod,n=t.ushrn(1),i=t.andln(1),o=r.cmp(n);return o<0||1===i&&0===o?e.div:0!==e.div.negative?e.div.isubn(1):e.div.iaddn(1)},i.prototype.modn=function(t){r(t<=67108863);for(var e=(1<<26)%t,n=0,i=this.length-1;i>=0;i--)n=(e*n+(0|this.words[i]))%t;return n},i.prototype.idivn=function(t){r(t<=67108863);for(var e=0,n=this.length-1;n>=0;n--){var i=(0|this.words[n])+67108864*e;this.words[n]=i/t|0,e=i%t}return this.strip()},i.prototype.divn=function(t){return this.clone().idivn(t)},i.prototype.egcd=function(t){r(0===t.negative),r(!t.isZero());var e=this,n=t.clone();e=0!==e.negative?e.umod(t):e.clone();for(var o=new i(1),s=new i(0),a=new i(0),u=new i(1),l=0;e.isEven()&&n.isEven();)e.iushrn(1),n.iushrn(1),++l;for(var h=n.clone(),c=e.clone();!e.isZero();){for(var f=0,d=1;0==(e.words[0]&d)&&f<26;++f,d<<=1);if(f>0)for(e.iushrn(f);f-- >0;)(o.isOdd()||s.isOdd())&&(o.iadd(h),s.isub(c)),o.iushrn(1),s.iushrn(1);for(var p=0,m=1;0==(n.words[0]&m)&&p<26;++p,m<<=1);if(p>0)for(n.iushrn(p);p-- >0;)(a.isOdd()||u.isOdd())&&(a.iadd(h),u.isub(c)),a.iushrn(1),u.iushrn(1);e.cmp(n)>=0?(e.isub(n),o.isub(a),s.isub(u)):(n.isub(e),a.isub(o),u.isub(s))}return{a:a,b:u,gcd:n.iushln(l)}},i.prototype._invmp=function(t){r(0===t.negative),r(!t.isZero());var e=this,n=t.clone();e=0!==e.negative?e.umod(t):e.clone();for(var o,s=new i(1),a=new i(0),u=n.clone();e.cmpn(1)>0&&n.cmpn(1)>0;){for(var l=0,h=1;0==(e.words[0]&h)&&l<26;++l,h<<=1);if(l>0)for(e.iushrn(l);l-- >0;)s.isOdd()&&s.iadd(u),s.iushrn(1);for(var c=0,f=1;0==(n.words[0]&f)&&c<26;++c,f<<=1);if(c>0)for(n.iushrn(c);c-- >0;)a.isOdd()&&a.iadd(u),a.iushrn(1);e.cmp(n)>=0?(e.isub(n),s.isub(a)):(n.isub(e),a.isub(s))}return(o=0===e.cmpn(1)?s:a).cmpn(0)<0&&o.iadd(t),o},i.prototype.gcd=function(t){if(this.isZero())return t.abs();if(t.isZero())return this.abs();var e=this.clone(),r=t.clone();e.negative=0,r.negative=0;for(var n=0;e.isEven()&&r.isEven();n++)e.iushrn(1),r.iushrn(1);for(;;){for(;e.isEven();)e.iushrn(1);for(;r.isEven();)r.iushrn(1);var i=e.cmp(r);if(i<0){var o=e;e=r,r=o}else if(0===i||0===r.cmpn(1))break;e.isub(r)}return r.iushln(n)},i.prototype.invm=function(t){return this.egcd(t).a.umod(t)},i.prototype.isEven=function(){return 0==(1&this.words[0])},i.prototype.isOdd=function(){return 1==(1&this.words[0])},i.prototype.andln=function(t){return this.words[0]&t},i.prototype.bincn=function(t){r("number"==typeof t);var e=t%26,n=(t-e)/26,i=1<>>26,a&=67108863,this.words[s]=a}return 0!==o&&(this.words[s]=o,this.length++),this},i.prototype.isZero=function(){return 1===this.length&&0===this.words[0]},i.prototype.cmpn=function(t){var e,n=t<0;if(0!==this.negative&&!n)return-1;if(0===this.negative&&n)return 1;if(this.strip(),this.length>1)e=1;else{n&&(t=-t),r(t<=67108863,"Number is too big");var i=0|this.words[0];e=i===t?0:it.length)return 1;if(this.length=0;r--){var n=0|this.words[r],i=0|t.words[r];if(n!==i){ni&&(e=1);break}}return e},i.prototype.gtn=function(t){return 1===this.cmpn(t)},i.prototype.gt=function(t){return 1===this.cmp(t)},i.prototype.gten=function(t){return this.cmpn(t)>=0},i.prototype.gte=function(t){return this.cmp(t)>=0},i.prototype.ltn=function(t){return-1===this.cmpn(t)},i.prototype.lt=function(t){return-1===this.cmp(t)},i.prototype.lten=function(t){return this.cmpn(t)<=0},i.prototype.lte=function(t){return this.cmp(t)<=0},i.prototype.eqn=function(t){return 0===this.cmpn(t)},i.prototype.eq=function(t){return 0===this.cmp(t)},i.red=function(t){return new M(t)},i.prototype.toRed=function(t){return r(!this.red,"Already a number in reduction context"),r(0===this.negative,"red works only with positives"),t.convertTo(this)._forceRed(t)},i.prototype.fromRed=function(){return r(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},i.prototype._forceRed=function(t){return this.red=t,this},i.prototype.forceRed=function(t){return r(!this.red,"Already a number in reduction context"),this._forceRed(t)},i.prototype.redAdd=function(t){return r(this.red,"redAdd works only with red numbers"),this.red.add(this,t)},i.prototype.redIAdd=function(t){return r(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,t)},i.prototype.redSub=function(t){return r(this.red,"redSub works only with red numbers"),this.red.sub(this,t)},i.prototype.redISub=function(t){return r(this.red,"redISub works only with red numbers"),this.red.isub(this,t)},i.prototype.redShl=function(t){return r(this.red,"redShl works only with red numbers"),this.red.shl(this,t)},i.prototype.redMul=function(t){return r(this.red,"redMul works only with red numbers"),this.red._verify2(this,t),this.red.mul(this,t)},i.prototype.redIMul=function(t){return r(this.red,"redMul works only with red numbers"),this.red._verify2(this,t),this.red.imul(this,t)},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(t){return r(this.red&&!t.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,t)};var g={k256:null,p224:null,p192:null,p25519:null};function v(t,e){this.name=t,this.p=new i(e,16),this.n=this.p.bitLength(),this.k=new i(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}function y(){v.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}function b(){v.call(this,"p224","ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001")}function w(){v.call(this,"p192","ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff")}function _(){v.call(this,"25519","7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed")}function M(t){if("string"==typeof t){var e=i._prime(t);this.m=e.p,this.prime=e}else r(t.gtn(1),"modulus must be greater than 1"),this.m=t,this.prime=null}function E(t){M.call(this,t),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 t=new i(null);return t.words=new Array(Math.ceil(this.n/13)),t},v.prototype.ireduce=function(t){var e,r=t;do{this.split(r,this.tmp),e=(r=(r=this.imulK(r)).iadd(this.tmp)).bitLength()}while(e>this.n);var n=e0?r.isub(this.p):void 0!==r.strip?r.strip():r._strip(),r},v.prototype.split=function(t,e){t.iushrn(this.n,0,e)},v.prototype.imulK=function(t){return t.imul(this.k)},n(y,v),y.prototype.split=function(t,e){for(var r=Math.min(t.length,9),n=0;n>>22,i=o}i>>>=22,t.words[n-10]=i,0===i&&t.length>10?t.length-=10:t.length-=9},y.prototype.imulK=function(t){t.words[t.length]=0,t.words[t.length+1]=0,t.length+=2;for(var e=0,r=0;r>>=26,t.words[r]=i,e=n}return 0!==e&&(t.words[t.length++]=e),t},i._prime=function(t){if(g[t])return g[t];var e;if("k256"===t)e=new y;else if("p224"===t)e=new b;else if("p192"===t)e=new w;else{if("p25519"!==t)throw new Error("Unknown prime "+t);e=new _}return g[t]=e,e},M.prototype._verify1=function(t){r(0===t.negative,"red works only with positives"),r(t.red,"red works only with red numbers")},M.prototype._verify2=function(t,e){r(0==(t.negative|e.negative),"red works only with positives"),r(t.red&&t.red===e.red,"red works only with red numbers")},M.prototype.imod=function(t){return this.prime?this.prime.ireduce(t)._forceRed(this):t.umod(this.m)._forceRed(this)},M.prototype.neg=function(t){return t.isZero()?t.clone():this.m.sub(t)._forceRed(this)},M.prototype.add=function(t,e){this._verify2(t,e);var r=t.add(e);return r.cmp(this.m)>=0&&r.isub(this.m),r._forceRed(this)},M.prototype.iadd=function(t,e){this._verify2(t,e);var r=t.iadd(e);return r.cmp(this.m)>=0&&r.isub(this.m),r},M.prototype.sub=function(t,e){this._verify2(t,e);var r=t.sub(e);return r.cmpn(0)<0&&r.iadd(this.m),r._forceRed(this)},M.prototype.isub=function(t,e){this._verify2(t,e);var r=t.isub(e);return r.cmpn(0)<0&&r.iadd(this.m),r},M.prototype.shl=function(t,e){return this._verify1(t),this.imod(t.ushln(e))},M.prototype.imul=function(t,e){return this._verify2(t,e),this.imod(t.imul(e))},M.prototype.mul=function(t,e){return this._verify2(t,e),this.imod(t.mul(e))},M.prototype.isqr=function(t){return this.imul(t,t.clone())},M.prototype.sqr=function(t){return this.mul(t,t)},M.prototype.sqrt=function(t){if(t.isZero())return t.clone();var e=this.m.andln(3);if(r(e%2==1),3===e){var n=this.m.add(new i(1)).iushrn(2);return this.pow(t,n)}for(var o=this.m.subn(1),s=0;!o.isZero()&&0===o.andln(1);)s++,o.iushrn(1);r(!o.isZero());var a=new i(1).toRed(this),u=a.redNeg(),l=this.m.subn(1).iushrn(1),h=this.m.bitLength();for(h=new i(2*h*h).toRed(this);0!==this.pow(h,l).cmp(u);)h.redIAdd(u);for(var c=this.pow(h,o),f=this.pow(t,o.addn(1).iushrn(1)),d=this.pow(t,o),p=s;0!==d.cmp(a);){for(var m=d,g=0;0!==m.cmp(a);g++)m=m.redSqr();r(g=0;n--){for(var l=e.words[n],h=u-1;h>=0;h--){var c=l>>h&1;o!==r[0]&&(o=this.sqr(o)),0!==c||0!==s?(s<<=1,s|=c,(4===++a||0===n&&0===h)&&(o=this.mul(o,r[s]),a=0,s=0)):a=0}u=26}return o},M.prototype.convertTo=function(t){var e=t.umod(this.m);return e===t?e.clone():e},M.prototype.convertFrom=function(t){var e=t.clone();return e.red=null,e},i.mont=function(t){return new E(t)},n(E,M),E.prototype.convertTo=function(t){return this.imod(t.ushln(this.shift))},E.prototype.convertFrom=function(t){var e=this.imod(t.mul(this.rinv));return e.red=null,e},E.prototype.imul=function(t,e){if(t.isZero()||e.isZero())return t.words[0]=0,t.length=1,t;var r=t.imul(e),n=r.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),i=r.isub(n).iushrn(this.shift),o=i;return i.cmp(this.m)>=0?o=i.isub(this.m):i.cmpn(0)<0&&(o=i.iadd(this.m)),o._forceRed(this)},E.prototype.mul=function(t,e){if(t.isZero()||e.isZero())return new i(0)._forceRed(this);var r=t.mul(e),n=r.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),o=r.isub(n).iushrn(this.shift),s=o;return o.cmp(this.m)>=0?s=o.isub(this.m):o.cmpn(0)<0&&(s=o.iadd(this.m)),s._forceRed(this)},E.prototype.invm=function(t){return this.imod(t._invmp(this.m).mul(this.r2))._forceRed(this)}}(t,e)})),u=(a.BN,n((function(t,e){Object.defineProperty(e,"__esModule",{value:!0}),e.version="logger/5.0.3"}))),l=(r(u),u.version,n((function(t,e){Object.defineProperty(e,"__esModule",{value:!0});var r=!1,n=!1,i={debug:1,default:2,info:2,warning:3,error:4,off:5},o=i.default,s=null;var a,l,h=function(){try{var t=[];if(["NFD","NFC","NFKD","NFKC"].forEach((function(e){try{if("test"!=="test".normalize(e))throw new Error("bad normalize")}catch(r){t.push(e)}})),t.length)throw new Error("missing "+t.join(", "));if(String.fromCharCode(233).normalize("NFD")!==String.fromCharCode(101,769))throw new Error("broken implementation")}catch(t){return t.message}return null}();!function(t){t.DEBUG="DEBUG",t.INFO="INFO",t.WARNING="WARNING",t.ERROR="ERROR",t.OFF="OFF"}(a=e.LogLevel||(e.LogLevel={})),function(t){t.UNKNOWN_ERROR="UNKNOWN_ERROR",t.NOT_IMPLEMENTED="NOT_IMPLEMENTED",t.UNSUPPORTED_OPERATION="UNSUPPORTED_OPERATION",t.NETWORK_ERROR="NETWORK_ERROR",t.SERVER_ERROR="SERVER_ERROR",t.TIMEOUT="TIMEOUT",t.BUFFER_OVERRUN="BUFFER_OVERRUN",t.NUMERIC_FAULT="NUMERIC_FAULT",t.MISSING_NEW="MISSING_NEW",t.INVALID_ARGUMENT="INVALID_ARGUMENT",t.MISSING_ARGUMENT="MISSING_ARGUMENT",t.UNEXPECTED_ARGUMENT="UNEXPECTED_ARGUMENT",t.CALL_EXCEPTION="CALL_EXCEPTION",t.INSUFFICIENT_FUNDS="INSUFFICIENT_FUNDS",t.NONCE_EXPIRED="NONCE_EXPIRED",t.REPLACEMENT_UNDERPRICED="REPLACEMENT_UNDERPRICED",t.UNPREDICTABLE_GAS_LIMIT="UNPREDICTABLE_GAS_LIMIT"}(l=e.ErrorCode||(e.ErrorCode={}));var c=function(){function t(t){Object.defineProperty(this,"version",{enumerable:!0,value:t,writable:!1})}return t.prototype._log=function(t,e){var r=t.toLowerCase();null==i[r]&&this.throwArgumentError("invalid log level name","logLevel",t),o>i[r]||console.log.apply(console,e)},t.prototype.debug=function(){for(var e=[],r=0;r=9007199254740991)&&this.throwError(r,t.errors.NUMERIC_FAULT,{operation:"checkSafeInteger",fault:"out-of-safe-range",value:e}),e%1&&this.throwError(r,t.errors.NUMERIC_FAULT,{operation:"checkSafeInteger",fault:"non-integer",value:e}))},t.prototype.checkArgumentCount=function(e,r,n){n=n?": "+n:"",er&&this.throwError("too many arguments"+n,t.errors.UNEXPECTED_ARGUMENT,{count:e,expectedCount:r})},t.prototype.checkNew=function(e,r){e!==Object&&null!=e||this.throwError("missing new",t.errors.MISSING_NEW,{name:r.name})},t.prototype.checkAbstract=function(e,r){e===r?this.throwError("cannot instantiate abstract class "+JSON.stringify(r.name)+" directly; use a sub-class",t.errors.UNSUPPORTED_OPERATION,{name:e.name,operation:"new"}):e!==Object&&null!=e||this.throwError("missing new",t.errors.MISSING_NEW,{name:r.name})},t.globalLogger=function(){return s||(s=new t(u.version)),s},t.setCensorship=function(e,i){if(!e&&i&&this.globalLogger().throwError("cannot permanently disable censorship",t.errors.UNSUPPORTED_OPERATION,{operation:"setCensorship"}),r){if(!e)return;this.globalLogger().throwError("error censorship permanent",t.errors.UNSUPPORTED_OPERATION,{operation:"setCensorship"})}n=!!e,r=!!i},t.setLogLevel=function(e){var r=i[e];null!=r?o=r:t.globalLogger().warn("invalid log level - "+e)},t.errors=l,t.levels=a,t}();e.Logger=c}))),h=(r(l),l.LogLevel,l.ErrorCode,l.Logger,n((function(t,e){Object.defineProperty(e,"__esModule",{value:!0}),e.version="bytes/5.0.3"}))),c=(r(h),h.version,n((function(t,e){Object.defineProperty(e,"__esModule",{value:!0});var r=new l.Logger(h.version);function n(t){return!!t.toHexString}function i(t){return t.slice||(t.slice=function(){var e=Array.prototype.slice.call(arguments);return i(new Uint8Array(Array.prototype.slice.apply(t,e)))}),t}function o(t){return f(t)&&!(t.length%2)||s(t)}function s(t){if(null==t)return!1;if(t.constructor===Uint8Array)return!0;if("string"==typeof t)return!1;if(null==t.length)return!1;for(var e=0;e=256||r%1)return!1}return!0}function a(t,e){if(e||(e={}),"number"==typeof t){r.checkSafeUint53(t,"invalid arrayify value");for(var o=[];t;)o.unshift(255&t),t=parseInt(String(t/256));return 0===o.length&&o.push(0),i(new Uint8Array(o))}if(e.allowMissingPrefix&&"string"==typeof t&&"0x"!==t.substring(0,2)&&(t="0x"+t),n(t)&&(t=t.toHexString()),f(t)){var a=t.substring(2);a.length%2&&("left"===e.hexPad?a="0x0"+a.substring(2):"right"===e.hexPad?a+="0":r.throwArgumentError("hex data is odd-length","value",t));o=[];for(var u=0;ue&&r.throwArgumentError("value out of range","value",arguments[0]);var n=new Uint8Array(e);return n.set(t,e-t.length),i(n)}function f(t,e){return!("string"!=typeof t||!t.match(/^0x[0-9A-Fa-f]*$/))&&(!e||t.length===2+2*e)}e.isBytesLike=o,e.isBytes=s,e.arrayify=a,e.concat=u,e.stripZeros=function(t){var e=a(t);if(0===e.length)return e;for(var r=0;r>4]+"0123456789abcdef"[15&u]}return o}return r.throwArgumentError("invalid hexlify value","value",t)}function p(t){"string"!=typeof t&&(t=d(t)),f(t)||r.throwArgumentError("invalid hex string","value",t),t=t.substring(2);for(var e=0;e2*e+2&&r.throwArgumentError("value out of range","value",arguments[1]);t.length<2*e+2;)t="0x0"+t.substring(2);return t}function g(t){var e={r:"0x",s:"0x",_vs:"0x",recoveryParam:0,v:0};if(o(t)){var n=a(t);65!==n.length&&r.throwArgumentError("invalid signature string; must be 65 bytes","signature",t),e.r=d(n.slice(0,32)),e.s=d(n.slice(32,64)),e.v=n[64],e.v<27&&(0===e.v||1===e.v?e.v+=27:r.throwArgumentError("signature invalid v byte","signature",t)),e.recoveryParam=1-e.v%2,e.recoveryParam&&(n[32]|=128),e._vs=d(n.slice(32,64))}else{if(e.r=t.r,e.s=t.s,e.v=t.v,e.recoveryParam=t.recoveryParam,e._vs=t._vs,null!=e._vs){var i=c(a(e._vs),32);e._vs=d(i);var s=i[0]>=128?1:0;null==e.recoveryParam?e.recoveryParam=s:e.recoveryParam!==s&&r.throwArgumentError("signature recoveryParam mismatch _vs","signature",t),i[0]&=127;var u=d(i);null==e.s?e.s=u:e.s!==u&&r.throwArgumentError("signature v mismatch _vs","signature",t)}null==e.recoveryParam?null==e.v?r.throwArgumentError("signature missing v and recoveryParam","signature",t):e.recoveryParam=1-e.v%2:null==e.v?e.v=27+e.recoveryParam:e.recoveryParam!==1-e.v%2&&r.throwArgumentError("signature recoveryParam mismatch v","signature",t),null!=e.r&&f(e.r)?e.r=m(e.r,32):r.throwArgumentError("signature missing or invalid r","signature",t),null!=e.s&&f(e.s)?e.s=m(e.s,32):r.throwArgumentError("signature missing or invalid s","signature",t);var l=a(e.s);l[0]>=128&&r.throwArgumentError("signature s out of range","signature",t),e.recoveryParam&&(l[0]|=128);var h=d(l);e._vs&&(f(e._vs)||r.throwArgumentError("signature invalid _vs","signature",t),e._vs=m(e._vs,32)),null==e._vs?e._vs=h:e._vs!==h&&r.throwArgumentError("signature _vs mismatch v and s","signature",t)}return e}e.hexlify=d,e.hexDataLength=function(t){if("string"!=typeof t)t=d(t);else if(!f(t)||t.length%2)return null;return(t.length-2)/2},e.hexDataSlice=function(t,e,n){return"string"!=typeof t?t=d(t):(!f(t)||t.length%2)&&r.throwArgumentError("invalid hexData","value",t),e=2+2*e,null!=n?"0x"+t.substring(e,2+2*n):"0x"+t.substring(e)},e.hexConcat=function(t){var e="0x";return t.forEach((function(t){e+=d(t).substring(2)})),e},e.hexValue=function(t){var e=p(d(t,{hexPad:"left"}));return"0x"===e?"0x0":e},e.hexStripZeros=p,e.hexZeroPad=m,e.splitSignature=g,e.joinSignature=function(t){return d(u([(t=g(t)).r,t.s,t.recoveryParam?"0x1c":"0x1b"]))}}))),f=(r(c),c.isBytesLike,c.isBytes,c.arrayify,c.concat,c.stripZeros,c.zeroPad,c.isHexString,c.hexlify,c.hexDataLength,c.hexDataSlice,c.hexConcat,c.hexValue,c.hexStripZeros,c.hexZeroPad,c.splitSignature,c.joinSignature,n((function(t,e){Object.defineProperty(e,"__esModule",{value:!0}),e.version="bignumber/5.0.5"}))),d=(r(f),f.version,n((function(t,e){Object.defineProperty(e,"__esModule",{value:!0});var r=new l.Logger(f.version),n={};e.isBigNumberish=function(t){return null!=t&&(i.isBigNumber(t)||"number"==typeof t&&t%1==0||"string"==typeof t&&!!t.match(/^-?[0-9]+$/)||c.isHexString(t)||"bigint"==typeof t||c.isBytes(t))};var i=function(){function t(e,i){var o=this.constructor;r.checkNew(o,t),e!==n&&r.throwError("cannot call constructor directly; use BigNumber.from",l.Logger.errors.UNSUPPORTED_OPERATION,{operation:"new (BigNumber)"}),this._hex=i,this._isBigNumber=!0,Object.freeze(this)}return t.prototype.fromTwos=function(t){return s(u(this).fromTwos(t))},t.prototype.toTwos=function(t){return s(u(this).toTwos(t))},t.prototype.abs=function(){return"-"===this._hex[0]?t.from(this._hex.substring(1)):this},t.prototype.add=function(t){return s(u(this).add(u(t)))},t.prototype.sub=function(t){return s(u(this).sub(u(t)))},t.prototype.div=function(e){return t.from(e).isZero()&&h("division by zero","div"),s(u(this).div(u(e)))},t.prototype.mul=function(t){return s(u(this).mul(u(t)))},t.prototype.mod=function(t){var e=u(t);return e.isNeg()&&h("cannot modulo negative values","mod"),s(u(this).umod(e))},t.prototype.pow=function(t){var e=u(t);return e.isNeg()&&h("cannot raise to negative values","pow"),s(u(this).pow(e))},t.prototype.and=function(t){var e=u(t);return(this.isNegative()||e.isNeg())&&h("cannot 'and' negative values","and"),s(u(this).and(e))},t.prototype.or=function(t){var e=u(t);return(this.isNegative()||e.isNeg())&&h("cannot 'or' negative values","or"),s(u(this).or(e))},t.prototype.xor=function(t){var e=u(t);return(this.isNegative()||e.isNeg())&&h("cannot 'xor' negative values","xor"),s(u(this).xor(e))},t.prototype.mask=function(t){return(this.isNegative()||t<0)&&h("cannot mask negative values","mask"),s(u(this).maskn(t))},t.prototype.shl=function(t){return(this.isNegative()||t<0)&&h("cannot shift negative values","shl"),s(u(this).shln(t))},t.prototype.shr=function(t){return(this.isNegative()||t<0)&&h("cannot shift negative values","shr"),s(u(this).shrn(t))},t.prototype.eq=function(t){return u(this).eq(u(t))},t.prototype.lt=function(t){return u(this).lt(u(t))},t.prototype.lte=function(t){return u(this).lte(u(t))},t.prototype.gt=function(t){return u(this).gt(u(t))},t.prototype.gte=function(t){return u(this).gte(u(t))},t.prototype.isNegative=function(){return"-"===this._hex[0]},t.prototype.isZero=function(){return u(this).isZero()},t.prototype.toNumber=function(){try{return u(this).toNumber()}catch(t){h("overflow","toNumber",this.toString())}return null},t.prototype.toString=function(){return 0!==arguments.length&&r.throwError("bigNumber.toString does not accept parameters",l.Logger.errors.UNEXPECTED_ARGUMENT,{}),u(this).toString(10)},t.prototype.toHexString=function(){return this._hex},t.from=function(e){return e instanceof t?e:"string"==typeof e?e.match(/^-?0x[0-9a-f]+$/i)?new t(n,o(e)):e.match(/^-?[0-9]+$/)?new t(n,o(new a.BN(e))):r.throwArgumentError("invalid BigNumber string","value",e):"number"==typeof e?(e%1&&h("underflow","BigNumber.from",e),(e>=9007199254740991||e<=-9007199254740991)&&h("overflow","BigNumber.from",e),t.from(String(e))):"bigint"==typeof e?t.from(e.toString()):c.isBytes(e)?t.from(c.hexlify(e)):e._hex&&c.isHexString(e._hex)?t.from(e._hex):e.toHexString&&"string"==typeof(e=e.toHexString())?t.from(e):r.throwArgumentError("invalid BigNumber value","value",e)},t.isBigNumber=function(t){return!(!t||!t._isBigNumber)},t}();function o(t){if("string"!=typeof t)return o(t.toString(16));if("-"===t[0])return"-"===(t=t.substring(1))[0]&&r.throwArgumentError("invalid hex","value",t),"0x00"===(t=o(t))?t:"-"+t;if("0x"!==t.substring(0,2)&&(t="0x"+t),"0x"===t)return"0x00";for(t.length%2&&(t="0x0"+t.substring(2));t.length>4&&"0x00"===t.substring(0,4);)t="0x"+t.substring(4);return t}function s(t){return i.from(o(t))}function u(t){var e=i.from(t).toHexString();return"-"===e[0]?new a.BN("-"+e.substring(3),16):new a.BN(e.substring(2),16)}function h(t,e,n){var i={fault:t,operation:e};return null!=n&&(i.value=n),r.throwError(t,l.Logger.errors.NUMERIC_FAULT,i)}e.BigNumber=i}))),p=(r(d),d.isBigNumberish,d.BigNumber,n((function(t,e){Object.defineProperty(e,"__esModule",{value:!0});var r=new l.Logger(f.version),n={},i=d.BigNumber.from(0),o=d.BigNumber.from(-1);function s(t,e,n,i){var o={fault:e,operation:n};return void 0!==i&&(o.value=i),r.throwError(t,l.Logger.errors.NUMERIC_FAULT,o)}for(var a="0";a.length<256;)a+=a;function u(t){if("number"!=typeof t)try{t=d.BigNumber.from(t).toNumber()}catch(t){}return"number"==typeof t&&t>=0&&t<=256&&!(t%1)?"1"+a.substring(0,t):r.throwArgumentError("invalid decimal size","decimals",t)}function h(t,e){null==e&&(e=0);var r=u(e),n=(t=d.BigNumber.from(t)).lt(i);n&&(t=t.mul(o));for(var s=t.mod(r).toString();s.length2&&r.throwArgumentError("too many decimal points","value",t);var l=a[0],h=a[1];for(l||(l="0"),h||(h="0"),h.length>n.length-1&&s("fractional component exceeds decimals","underflow","parseFixed");h.length80&&r.throwArgumentError("invalid fixed format (decimals too large)","format.decimals",s),new t(n,i,o,s)},t}();e.FixedFormat=m;var g=function(){function t(e,i,o,s){var a=this.constructor;r.checkNew(a,t),e!==n&&r.throwError("cannot use FixedNumber constructor; use FixedNumber.from",l.Logger.errors.UNSUPPORTED_OPERATION,{operation:"new FixedFormat"}),this.format=s,this._hex=i,this._value=o,this._isFixedNumber=!0,Object.freeze(this)}return t.prototype._checkFormat=function(t){this.format.name!==t.format.name&&r.throwArgumentError("incompatible format; use fixedNumber.toFormat","other",t)},t.prototype.addUnsafe=function(e){this._checkFormat(e);var r=p(this._value,this.format.decimals),n=p(e._value,e.format.decimals);return t.fromValue(r.add(n),this.format.decimals,this.format)},t.prototype.subUnsafe=function(e){this._checkFormat(e);var r=p(this._value,this.format.decimals),n=p(e._value,e.format.decimals);return t.fromValue(r.sub(n),this.format.decimals,this.format)},t.prototype.mulUnsafe=function(e){this._checkFormat(e);var r=p(this._value,this.format.decimals),n=p(e._value,e.format.decimals);return t.fromValue(r.mul(n).div(this.format._multiplier),this.format.decimals,this.format)},t.prototype.divUnsafe=function(e){this._checkFormat(e);var r=p(this._value,this.format.decimals),n=p(e._value,e.format.decimals);return t.fromValue(r.mul(this.format._multiplier).div(n),this.format.decimals,this.format)},t.prototype.round=function(e){null==e&&(e=0),(e<0||e>80||e%1)&&r.throwArgumentError("invalid decimal count","decimals",e);var n=this.toString().split(".");if(n[1].length<=e)return this;var i="0."+a.substring(0,e)+"5";return n=this.addUnsafe(t.fromString(i,this.format))._value.split("."),t.fromString(n[0]+"."+n[1].substring(0,e))},t.prototype.isZero=function(){return"0.0"===this._value},t.prototype.toString=function(){return this._value},t.prototype.toHexString=function(t){if(null==t)return this._hex;t%8&&r.throwArgumentError("invalid byte width","width",t);var e=d.BigNumber.from(this._hex).fromTwos(this.format.width).toTwos(t).toHexString();return c.hexZeroPad(e,t/8)},t.prototype.toUnsafeFloat=function(){return parseFloat(this.toString())},t.prototype.toFormat=function(e){return t.fromString(this._value,e)},t.fromValue=function(e,r,n){return null!=n||null==r||d.isBigNumberish(r)||(n=r,r=null),null==r&&(r=0),null==n&&(n="fixed"),t.fromString(h(e,r),m.from(n))},t.fromString=function(e,r){null==r&&(r="fixed");var o=m.from(r),a=p(e,o.decimals);!o.signed&&a.lt(i)&&s("unsigned value cannot be negative","overflow","value",e);var u=null;o.signed?u=a.toTwos(o.width).toHexString():(u=a.toHexString(),u=c.hexZeroPad(u,o.width/8));var l=h(a,o.decimals);return new t(n,u,l,o)},t.fromBytes=function(e,r){null==r&&(r="fixed");var i=m.from(r);if(c.arrayify(e).length>i.width/8)throw new Error("overflow");var o=d.BigNumber.from(e);i.signed&&(o=o.fromTwos(i.width));var s=o.toTwos((i.signed?0:1)+i.width).toHexString(),a=h(o,i.decimals);return new t(n,s,a,i)},t.from=function(e,n){if("string"==typeof e)return t.fromString(e,n);if(c.isBytes(e))return t.fromBytes(e,n);try{return t.fromValue(e,0,n)}catch(t){if(t.code!==l.Logger.errors.INVALID_ARGUMENT)throw t}return r.throwArgumentError("invalid FixedNumber value","value",e)},t.isFixedNumber=function(t){return!(!t||!t._isFixedNumber)},t}();e.FixedNumber=g}))),m=(r(p),p.formatFixed,p.parseFixed,p.FixedFormat,p.FixedNumber,n((function(t,e){Object.defineProperty(e,"__esModule",{value:!0}),e.BigNumber=d.BigNumber,e.formatFixed=p.formatFixed,e.FixedFormat=p.FixedFormat,e.FixedNumber=p.FixedNumber,e.parseFixed=p.parseFixed}))),g=(r(m),m.BigNumber,m.formatFixed,m.FixedFormat,m.FixedNumber,m.parseFixed,n((function(t,e){Object.defineProperty(e,"__esModule",{value:!0}),e.version="properties/5.0.2"}))),v=(r(g),g.version,n((function(t,r){var n=e&&e.__awaiter||function(t,e,r,n){return new(r||(r=Promise))((function(i,o){function s(t){try{u(n.next(t))}catch(t){o(t)}}function a(t){try{u(n.throw(t))}catch(t){o(t)}}function u(t){var e;t.done?i(t.value):(e=t.value,e instanceof r?e:new r((function(t){t(e)}))).then(s,a)}u((n=n.apply(t,e||[])).next())}))},i=e&&e.__generator||function(t,e){var r,n,i,o,s={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return o={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function a(o){return function(a){return function(o){if(r)throw new TypeError("Generator is already executing.");for(;s;)try{if(r=1,n&&(i=2&o[0]?n.return:o[0]?n.throw||((i=n.return)&&i.call(n),0):n.next)&&!(i=i.call(n,o[1])).done)return i;switch(n=0,i&&(o=[2&o[0],i.value]),o[0]){case 0:case 1:i=o;break;case 4:return s.label++,{value:o[1],done:!1};case 5:s.label++,n=o[1],o=[0];continue;case 7:o=s.ops.pop(),s.trys.pop();continue;default:if(!(i=s.trys,(i=i.length>0&&i[i.length-1])||6!==o[0]&&2!==o[0])){s=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]=0||"tuple"===t)&&u[e])return!0;return(a[e]||"payable"===e)&&o.throwArgumentError("invalid modifier","name",e),!1}function c(t,e){for(var r in e)v.defineReadOnly(t,r,e[r])}r.FormatTypes=Object.freeze({sighash:"sighash",minimal:"minimal",full:"full",json:"json"});var f=new RegExp(/^(.*)\[([0-9]*)\]$/),d=function(){function t(e,r){e!==s&&o.throwError("use fromString",l.Logger.errors.UNSUPPORTED_OPERATION,{operation:"new ParamType()"}),c(this,r);var n=this.type.match(f);c(this,n?{arrayLength:parseInt(n[2]||"-1"),arrayChildren:t.fromObject({type:n[1],components:this.components}),baseType:"array"}:{arrayLength:null,arrayChildren:null,baseType:null!=this.components?"tuple":this.type}),this._isParamType=!0,Object.freeze(this)}return t.prototype.format=function(t){if(t||(t=r.FormatTypes.sighash),r.FormatTypes[t]||o.throwArgumentError("invalid format type","format",t),t===r.FormatTypes.json){var e={type:"tuple"===this.baseType?"tuple":this.type,name:this.name||void 0};return"boolean"==typeof this.indexed&&(e.indexed=this.indexed),this.components&&(e.components=this.components.map((function(e){return JSON.parse(e.format(t))}))),JSON.stringify(e)}var n="";return"array"===this.baseType?(n+=this.arrayChildren.format(t),n+="["+(this.arrayLength<0?"":String(this.arrayLength))+"]"):"tuple"===this.baseType?(t!==r.FormatTypes.sighash&&(n+=this.type),n+="("+this.components.map((function(e){return e.format(t)})).join(t===r.FormatTypes.full?", ":",")+")"):n+=this.type,t!==r.FormatTypes.sighash&&(!0===this.indexed&&(n+=" indexed"),t===r.FormatTypes.full&&this.name&&(n+=" "+this.name)),n},t.from=function(e,r){return"string"==typeof e?t.fromString(e,r):t.fromObject(e)},t.fromObject=function(e){return t.isParamType(e)?e:new t(s,{name:e.name||null,type:S(e.type),indexed:null==e.indexed?null:!!e.indexed,components:e.components?e.components.map(t.fromObject):null})},t.fromString=function(e,r){return function(e){return t.fromObject({name:e.name,type:e.type,indexed:e.indexed,components:e.components})}(function(t,e){var r=t;function n(e){o.throwArgumentError("unexpected character at position "+e,"param",t)}function i(t){var r={type:"",name:"",parent:t,state:{allowType:!0}};return e&&(r.indexed=!1),r}t=t.replace(/\s/g," ");for(var s={type:"",name:"",state:{allowType:!0}},a=s,u=0;u2&&o.throwArgumentError("invalid human-readable ABI signature","value",t),r[1].match(/^[0-9]+$/)||o.throwArgumentError("invalid human-readable ABI signature gas","value",t),e.gas=m.BigNumber.from(r[1]),r[0]):t}function _(t,e){e.constant=!1,e.payable=!1,e.stateMutability="nonpayable",t.split(" ").forEach((function(t){switch(t.trim()){case"constant":e.constant=!0;break;case"payable":e.payable=!0,e.stateMutability="payable";break;case"nonpayable":e.payable=!1,e.stateMutability="nonpayable";break;case"pure":e.constant=!0,e.stateMutability="pure";break;case"view":e.constant=!0,e.stateMutability="view";break;case"external":case"public":case"":break;default:console.log("unknown modifier: "+t)}}))}function M(t){var e={constant:!1,payable:!0,stateMutability:"payable"};return null!=t.stateMutability?(e.stateMutability=t.stateMutability,e.constant="view"===e.stateMutability||"pure"===e.stateMutability,null!=t.constant&&!!t.constant!==e.constant&&o.throwArgumentError("cannot have constant function with mutability "+e.stateMutability,"value",t),e.payable="payable"===e.stateMutability,null!=t.payable&&!!t.payable!==e.payable&&o.throwArgumentError("cannot have payable function with mutability "+e.stateMutability,"value",t)):null!=t.payable?(e.payable=!!t.payable,null!=t.constant||e.payable||"constructor"===t.type||o.throwArgumentError("unable to determine stateMutability","value",t),e.constant=!!t.constant,e.constant?e.stateMutability="view":e.stateMutability=e.payable?"payable":"nonpayable",e.payable&&e.constant&&o.throwArgumentError("cannot have constant payable function","value",t)):null!=t.constant?(e.constant=!!t.constant,e.payable=!e.constant,e.stateMutability=e.constant?"view":"payable"):"constructor"!==t.type&&o.throwArgumentError("unable to determine stateMutability","value",t),e}r.EventFragment=b;var E=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i(e,t),e.prototype.format=function(t){if(t||(t=r.FormatTypes.sighash),r.FormatTypes[t]||o.throwArgumentError("invalid format type","format",t),t===r.FormatTypes.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((function(e){return JSON.parse(e.format(t))}))});t===r.FormatTypes.sighash&&o.throwError("cannot format a constructor for sighash",l.Logger.errors.UNSUPPORTED_OPERATION,{operation:"format(sighash)"});var e="constructor("+this.inputs.map((function(e){return e.format(t)})).join(t===r.FormatTypes.full?", ":",")+") ";return this.stateMutability&&"nonpayable"!==this.stateMutability&&(e+=this.stateMutability+" "),e.trim()},e.from=function(t){return"string"==typeof t?e.fromString(t):e.fromObject(t)},e.fromObject=function(t){if(e.isConstructorFragment(t))return t;"constructor"!==t.type&&o.throwArgumentError("invalid constructor object","value",t);var r=M(t);r.constant&&o.throwArgumentError("constructor cannot be constant","value",t);var n={name:null,type:t.type,inputs:t.inputs?t.inputs.map(d.fromObject):[],payable:r.payable,stateMutability:r.stateMutability,gas:t.gas?m.BigNumber.from(t.gas):null};return new e(s,n)},e.fromString=function(t){var r={type:"constructor"},n=(t=w(t,r)).match(x);return n&&"constructor"===n[1].trim()||o.throwArgumentError("invalid constructor string","value",t),r.inputs=p(n[2].trim(),!1),_(n[3].trim(),r),e.fromObject(r)},e.isConstructorFragment=function(t){return t&&t._isFragment&&"constructor"===t.type},e}(g);r.ConstructorFragment=E;var k=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i(e,t),e.prototype.format=function(t){if(t||(t=r.FormatTypes.sighash),r.FormatTypes[t]||o.throwArgumentError("invalid format type","format",t),t===r.FormatTypes.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((function(e){return JSON.parse(e.format(t))})),ouputs:this.outputs.map((function(e){return JSON.parse(e.format(t))}))});var e="";return t!==r.FormatTypes.sighash&&(e+="function "),e+=this.name+"("+this.inputs.map((function(e){return e.format(t)})).join(t===r.FormatTypes.full?", ":",")+") ",t!==r.FormatTypes.sighash&&(this.stateMutability?"nonpayable"!==this.stateMutability&&(e+=this.stateMutability+" "):this.constant&&(e+="view "),this.outputs&&this.outputs.length&&(e+="returns ("+this.outputs.map((function(e){return e.format(t)})).join(", ")+") "),null!=this.gas&&(e+="@"+this.gas.toString()+" ")),e.trim()},e.from=function(t){return"string"==typeof t?e.fromString(t):e.fromObject(t)},e.fromObject=function(t){if(e.isFunctionFragment(t))return t;"function"!==t.type&&o.throwArgumentError("invalid function object","value",t);var r=M(t),n={type:t.type,name:A(t.name),constant:r.constant,inputs:t.inputs?t.inputs.map(d.fromObject):[],outputs:t.outputs?t.outputs.map(d.fromObject):[],payable:r.payable,stateMutability:r.stateMutability,gas:t.gas?m.BigNumber.from(t.gas):null};return new e(s,n)},e.fromString=function(t){var r={type:"function"},n=(t=w(t,r)).split(" returns ");n.length>2&&o.throwArgumentError("invalid function string","value",t);var i=n[0].match(x);if(i||o.throwArgumentError("invalid function signature","value",t),r.name=i[1].trim(),r.name&&A(r.name),r.inputs=p(i[2],!1),_(i[3].trim(),r),n.length>1){var s=n[1].match(x);""==s[1].trim()&&""==s[3].trim()||o.throwArgumentError("unexpected tokens","value",t),r.outputs=p(s[2],!1)}else r.outputs=[];return e.fromObject(r)},e.isFunctionFragment=function(t){return t&&t._isFragment&&"function"===t.type},e}(E);function S(t){return t.match(/^uint($|[^1-9])/)?t="uint256"+t.substring(4):t.match(/^int($|[^1-9])/)&&(t="int256"+t.substring(3)),t}r.FunctionFragment=k;var P=new RegExp("^[A-Za-z_][A-Za-z0-9_]*$");function A(t){return t&&t.match(P)||o.throwArgumentError('invalid identifier "'+t+'"',"value",t),t}var x=new RegExp("^([^)(]*)\\((.*)\\)([^)(]*)$")}))),w=(r(b),b.FormatTypes,b.ParamType,b.Fragment,b.EventFragment,b.ConstructorFragment,b.FunctionFragment,n((function(t,e){Object.defineProperty(e,"__esModule",{value:!0});var r=new l.Logger(y.version);e.checkResultErrors=function(t){var e=[],r=function(t,n){if(Array.isArray(n))for(var i in n){var o=t.slice();o.push(i);try{r(o,n[i])}catch(t){e.push({path:o,error:t})}}};return r([],t),e};var n=function(){function t(t,e,r,n){this.name=t,this.type=e,this.localName=r,this.dynamic=n}return t.prototype._throwError=function(t,e){r.throwArgumentError(t,this.localName,e)},t}();e.Coder=n;var i=function(){function t(t){v.defineReadOnly(this,"wordSize",t||32),this._data=c.arrayify([]),this._padding=new Uint8Array(t)}return Object.defineProperty(t.prototype,"data",{get:function(){return c.hexlify(this._data)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"length",{get:function(){return this._data.length},enumerable:!0,configurable:!0}),t.prototype._writeData=function(t){return this._data=c.concat([this._data,t]),t.length},t.prototype.writeBytes=function(t){var e=c.arrayify(t);return e.length%this.wordSize&&(e=c.concat([e,this._padding.slice(e.length%this.wordSize)])),this._writeData(e)},t.prototype._getValue=function(t){var e=c.arrayify(m.BigNumber.from(t));return e.length>this.wordSize&&r.throwError("value out-of-bounds",l.Logger.errors.BUFFER_OVERRUN,{length:this.wordSize,offset:e.length}),e.length%this.wordSize&&(e=c.concat([this._padding.slice(e.length%this.wordSize),e])),e},t.prototype.writeValue=function(t){return this._writeData(this._getValue(t))},t.prototype.writeUpdatableValue=function(){var t=this,e=this.length;return this.writeValue(0),function(r){t._data.set(t._getValue(r),e)}},t}();e.Writer=i;var o=function(){function t(t,e,r){v.defineReadOnly(this,"_data",c.arrayify(t)),v.defineReadOnly(this,"wordSize",e||32),v.defineReadOnly(this,"_coerceFunc",r),this._offset=0}return Object.defineProperty(t.prototype,"data",{get:function(){return c.hexlify(this._data)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"consumed",{get:function(){return this._offset},enumerable:!0,configurable:!0}),t.coerce=function(t,e){var r=t.match("^u?int([0-9]+)$");return r&&parseInt(r[1])<=48&&(e=e.toNumber()),e},t.prototype.coerce=function(e,r){return this._coerceFunc?this._coerceFunc(e,r):t.coerce(e,r)},t.prototype._peekBytes=function(t,e){var n=Math.ceil(e/this.wordSize)*this.wordSize;return this._offset+n>this._data.length&&r.throwError("data out-of-bounds",l.Logger.errors.BUFFER_OVERRUN,{length:this._data.length,offset:this._offset+n}),this._data.slice(this._offset,this._offset+n)},t.prototype.subReader=function(e){return new t(this._data.slice(this._offset+e),this.wordSize,this._coerceFunc)},t.prototype.readBytes=function(t){var e=this._peekBytes(0,t);return this._offset+=e.length,e.slice(0,t)},t.prototype.readValue=function(){return m.BigNumber.from(this.readBytes(this.wordSize))},t}();e.Reader=o}))),_=(r(w),w.checkResultErrors,w.Coder,w.Writer,w.Reader,n((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 n=!r.JS_SHA3_NO_COMMON_JS&&t.exports,i="0123456789abcdef".split(""),o=[0,8,16,24],s=[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],a=[224,256,384,512],u=["hex","buffer","arrayBuffer","array"],l=function(t,e,r){return function(n){return new w(t,e,t).update(n)[r]()}},h=function(t,e,r){return function(n,i){return new w(t,e,i).update(n)[r]()}},c=function(t,e){var r=l(t,e,"hex");r.create=function(){return new w(t,e,t)},r.update=function(t){return r.create().update(t)};for(var n=0;n>5,this.byteCount=this.blockCount<<2,this.outputBlocks=r>>5,this.extraBytes=(31&r)>>3;for(var n=0;n<50;++n)this.s[n]=0}w.prototype.update=function(t){var e="string"!=typeof t;e&&t.constructor===ArrayBuffer&&(t=new Uint8Array(t));for(var r,n,i=t.length,s=this.blocks,a=this.byteCount,u=this.blockCount,l=0,h=this.s;l>2]|=t[l]<>2]|=n<>2]|=(192|n>>6)<>2]|=(128|63&n)<=57344?(s[r>>2]|=(224|n>>12)<>2]|=(128|n>>6&63)<>2]|=(128|63&n)<>2]|=(240|n>>18)<>2]|=(128|n>>12&63)<>2]|=(128|n>>6&63)<>2]|=(128|63&n)<=a){for(this.start=r-a,this.block=s[u],r=0;r>2]|=this.padding[3&e],this.lastByteIndex===this.byteCount)for(t[0]=t[r],e=1;e>4&15]+i[15&t]+i[t>>12&15]+i[t>>8&15]+i[t>>20&15]+i[t>>16&15]+i[t>>28&15]+i[t>>24&15];a%e==0&&(_(r),s=0)}return o&&(t=r[s],o>0&&(u+=i[t>>4&15]+i[15&t]),o>1&&(u+=i[t>>12&15]+i[t>>8&15]),o>2&&(u+=i[t>>20&15]+i[t>>16&15])),u},w.prototype.arrayBuffer=function(){this.finalize();var t,e=this.blockCount,r=this.s,n=this.outputBlocks,i=this.extraBytes,o=0,s=0,a=this.outputBits>>3;t=i?new ArrayBuffer(n+1<<2):new ArrayBuffer(a);for(var u=new Uint32Array(t);s>8&255,u[t+2]=e>>16&255,u[t+3]=e>>24&255;a%r==0&&_(n)}return o&&(t=a<<2,e=n[s],o>0&&(u[t]=255&e),o>1&&(u[t+1]=e>>8&255),o>2&&(u[t+2]=e>>16&255)),u};var _=function(t){var e,r,n,i,o,a,u,l,h,c,f,d,p,m,g,v,y,b,w,_,M,E,k,S,P,A,x,N,O,R,T,C,B,I,F,L,U,j,D,z,K,H,W,q,G,V,J,Z,X,$,Q,Y,tt,et,rt,nt,it,ot,st,at,ut,lt,ht;for(n=0;n<48;n+=2)i=t[0]^t[10]^t[20]^t[30]^t[40],o=t[1]^t[11]^t[21]^t[31]^t[41],a=t[2]^t[12]^t[22]^t[32]^t[42],u=t[3]^t[13]^t[23]^t[33]^t[43],l=t[4]^t[14]^t[24]^t[34]^t[44],h=t[5]^t[15]^t[25]^t[35]^t[45],c=t[6]^t[16]^t[26]^t[36]^t[46],f=t[7]^t[17]^t[27]^t[37]^t[47],e=(d=t[8]^t[18]^t[28]^t[38]^t[48])^(a<<1|u>>>31),r=(p=t[9]^t[19]^t[29]^t[39]^t[49])^(u<<1|a>>>31),t[0]^=e,t[1]^=r,t[10]^=e,t[11]^=r,t[20]^=e,t[21]^=r,t[30]^=e,t[31]^=r,t[40]^=e,t[41]^=r,e=i^(l<<1|h>>>31),r=o^(h<<1|l>>>31),t[2]^=e,t[3]^=r,t[12]^=e,t[13]^=r,t[22]^=e,t[23]^=r,t[32]^=e,t[33]^=r,t[42]^=e,t[43]^=r,e=a^(c<<1|f>>>31),r=u^(f<<1|c>>>31),t[4]^=e,t[5]^=r,t[14]^=e,t[15]^=r,t[24]^=e,t[25]^=r,t[34]^=e,t[35]^=r,t[44]^=e,t[45]^=r,e=l^(d<<1|p>>>31),r=h^(p<<1|d>>>31),t[6]^=e,t[7]^=r,t[16]^=e,t[17]^=r,t[26]^=e,t[27]^=r,t[36]^=e,t[37]^=r,t[46]^=e,t[47]^=r,e=c^(i<<1|o>>>31),r=f^(o<<1|i>>>31),t[8]^=e,t[9]^=r,t[18]^=e,t[19]^=r,t[28]^=e,t[29]^=r,t[38]^=e,t[39]^=r,t[48]^=e,t[49]^=r,m=t[0],g=t[1],V=t[11]<<4|t[10]>>>28,J=t[10]<<4|t[11]>>>28,N=t[20]<<3|t[21]>>>29,O=t[21]<<3|t[20]>>>29,at=t[31]<<9|t[30]>>>23,ut=t[30]<<9|t[31]>>>23,H=t[40]<<18|t[41]>>>14,W=t[41]<<18|t[40]>>>14,I=t[2]<<1|t[3]>>>31,F=t[3]<<1|t[2]>>>31,v=t[13]<<12|t[12]>>>20,y=t[12]<<12|t[13]>>>20,Z=t[22]<<10|t[23]>>>22,X=t[23]<<10|t[22]>>>22,R=t[33]<<13|t[32]>>>19,T=t[32]<<13|t[33]>>>19,lt=t[42]<<2|t[43]>>>30,ht=t[43]<<2|t[42]>>>30,et=t[5]<<30|t[4]>>>2,rt=t[4]<<30|t[5]>>>2,L=t[14]<<6|t[15]>>>26,U=t[15]<<6|t[14]>>>26,b=t[25]<<11|t[24]>>>21,w=t[24]<<11|t[25]>>>21,$=t[34]<<15|t[35]>>>17,Q=t[35]<<15|t[34]>>>17,C=t[45]<<29|t[44]>>>3,B=t[44]<<29|t[45]>>>3,S=t[6]<<28|t[7]>>>4,P=t[7]<<28|t[6]>>>4,nt=t[17]<<23|t[16]>>>9,it=t[16]<<23|t[17]>>>9,j=t[26]<<25|t[27]>>>7,D=t[27]<<25|t[26]>>>7,_=t[36]<<21|t[37]>>>11,M=t[37]<<21|t[36]>>>11,Y=t[47]<<24|t[46]>>>8,tt=t[46]<<24|t[47]>>>8,q=t[8]<<27|t[9]>>>5,G=t[9]<<27|t[8]>>>5,A=t[18]<<20|t[19]>>>12,x=t[19]<<20|t[18]>>>12,ot=t[29]<<7|t[28]>>>25,st=t[28]<<7|t[29]>>>25,z=t[38]<<8|t[39]>>>24,K=t[39]<<8|t[38]>>>24,E=t[48]<<14|t[49]>>>18,k=t[49]<<14|t[48]>>>18,t[0]=m^~v&b,t[1]=g^~y&w,t[10]=S^~A&N,t[11]=P^~x&O,t[20]=I^~L&j,t[21]=F^~U&D,t[30]=q^~V&Z,t[31]=G^~J&X,t[40]=et^~nt&ot,t[41]=rt^~it&st,t[2]=v^~b&_,t[3]=y^~w&M,t[12]=A^~N&R,t[13]=x^~O&T,t[22]=L^~j&z,t[23]=U^~D&K,t[32]=V^~Z&$,t[33]=J^~X&Q,t[42]=nt^~ot&at,t[43]=it^~st&ut,t[4]=b^~_&E,t[5]=w^~M&k,t[14]=N^~R&C,t[15]=O^~T&B,t[24]=j^~z&H,t[25]=D^~K&W,t[34]=Z^~$&Y,t[35]=X^~Q&tt,t[44]=ot^~at<,t[45]=st^~ut&ht,t[6]=_^~E&m,t[7]=M^~k&g,t[16]=R^~C&S,t[17]=T^~B&P,t[26]=z^~H&I,t[27]=K^~W&F,t[36]=$^~Y&q,t[37]=Q^~tt&G,t[46]=at^~lt&et,t[47]=ut^~ht&rt,t[8]=E^~m&v,t[9]=k^~g&y,t[18]=C^~S&A,t[19]=B^~P&x,t[28]=H^~I&L,t[29]=W^~F&U,t[38]=Y^~q&V,t[39]=tt^~G&J,t[48]=lt^~et&nt,t[49]=ht^~rt&it,t[0]^=s[n],t[1]^=s[n+1]};if(n)t.exports=d;else for(m=0;m>=8;return e}function i(t,e,r){for(var n=0,i=0;ie+1+i&&r.throwError("child data too short",l.Logger.errors.BUFFER_OVERRUN,{})}return{consumed:1+i,result:o}}function s(t,e){if(0===t.length&&r.throwError("data too short",l.Logger.errors.BUFFER_OVERRUN,{}),t[e]>=248){e+1+(a=t[e]-247)>t.length&&r.throwError("data short segment too short",l.Logger.errors.BUFFER_OVERRUN,{});var n=i(t,e+1,a);return e+1+a+n>t.length&&r.throwError("data long segment too short",l.Logger.errors.BUFFER_OVERRUN,{}),o(t,e,e+1+a,a+n)}if(t[e]>=192){var s=t[e]-192;return e+1+s>t.length&&r.throwError("data array too short",l.Logger.errors.BUFFER_OVERRUN,{}),o(t,e,e+1,s)}if(t[e]>=184){var a;e+1+(a=t[e]-183)>t.length&&r.throwError("data array too short",l.Logger.errors.BUFFER_OVERRUN,{});var u=i(t,e+1,a);return e+1+a+u>t.length&&r.throwError("data array too short",l.Logger.errors.BUFFER_OVERRUN,{}),{consumed:1+a+u,result:c.hexlify(t.slice(e+1+a,e+1+a+u))}}if(t[e]>=128){var h=t[e]-128;return e+1+h>t.length&&r.throwError("data too short",l.Logger.errors.BUFFER_OVERRUN,{}),{consumed:1+h,result:c.hexlify(t.slice(e+1,e+1+h))}}return{consumed:1,result:c.hexlify(t[e])}}e.encode=function(t){return c.hexlify(function t(e){if(Array.isArray(e)){var i=[];if(e.forEach((function(e){i=i.concat(t(e))})),i.length<=55)return i.unshift(192+i.length),i;var o=n(i.length);return o.unshift(247+o.length),o.concat(i)}c.isBytesLike(e)||r.throwArgumentError("RLP object must be BytesLike","object",e);var s=Array.prototype.slice.call(c.arrayify(e));if(1===s.length&&s[0]<=127)return s;if(s.length<=55)return s.unshift(128+s.length),s;var a=n(s.length);return a.unshift(183+a.length),a.concat(s)}(t))},e.decode=function(t){var e=c.arrayify(t),n=s(e,0);return n.consumed!==e.length&&r.throwArgumentError("invalid rlp data","data",t),n.result}}))),S=(r(k),k.encode,k.decode,n((function(t,e){Object.defineProperty(e,"__esModule",{value:!0}),e.version="address/5.0.2"}))),P=(r(S),S.version,n((function(t,e){Object.defineProperty(e,"__esModule",{value:!0});var r=new l.Logger(S.version);function n(t){c.isHexString(t,20)||r.throwArgumentError("invalid address","address",t);for(var e=(t=t.toLowerCase()).substring(2).split(""),n=new Uint8Array(40),i=0;i<40;i++)n[i]=e[i].charCodeAt(0);var o=c.arrayify(M.keccak256(n));for(i=0;i<40;i+=2)o[i>>1]>>4>=8&&(e[i]=e[i].toUpperCase()),(15&o[i>>1])>=8&&(e[i+1]=e[i+1].toUpperCase());return"0x"+e.join("")}for(var i={},o=0;o<10;o++)i[String(o)]=String(o);for(o=0;o<26;o++)i[String.fromCharCode(65+o)]=String(10+o);var s,u=Math.floor((s=9007199254740991,Math.log10?Math.log10(s):Math.log(s)/Math.LN10));function h(t){for(var e=(t=(t=t.toUpperCase()).substring(4)+t.substring(0,2)+"00").split("").map((function(t){return i[t]})).join("");e.length>=u;){var r=e.substring(0,u);e=parseInt(r,10)%97+e.substring(r.length)}for(var n=String(98-parseInt(e,10)%97);n.length<2;)n="0"+n;return n}function f(t){var e=null;if("string"!=typeof t&&r.throwArgumentError("invalid address","address",t),t.match(/^(0x)?[0-9a-fA-F]{40}$/))"0x"!==t.substring(0,2)&&(t="0x"+t),e=n(t),t.match(/([A-F].*[a-f])|([a-f].*[A-F])/)&&e!==t&&r.throwArgumentError("bad address checksum","address",t);else if(t.match(/^XE[0-9]{2}[0-9A-Za-z]{30,31}$/)){for(t.substring(2,4)!==h(t)&&r.throwArgumentError("bad icap checksum","address",t),e=new a.BN(t.substring(4),36).toString(16);e.length<40;)e="0"+e;e=n("0x"+e)}else r.throwArgumentError("invalid address","address",t);return e}e.getAddress=f,e.isAddress=function(t){try{return f(t),!0}catch(t){}return!1},e.getIcapAddress=function(t){for(var e=new a.BN(f(t).substring(2),16).toString(36).toUpperCase();e.length<30;)e="0"+e;return"XE"+h("XE00"+e)+e},e.getContractAddress=function(t){var e=null;try{e=f(t.from)}catch(e){r.throwArgumentError("missing from address","transaction",t)}var n=c.stripZeros(c.arrayify(m.BigNumber.from(t.nonce).toHexString()));return f(c.hexDataSlice(M.keccak256(k.encode([e,n])),12))},e.getCreate2Address=function(t,e,n){return 32!==c.hexDataLength(e)&&r.throwArgumentError("salt must be 32 bytes","salt",e),32!==c.hexDataLength(n)&&r.throwArgumentError("initCodeHash must be 32 bytes","initCodeHash",n),f(c.hexDataSlice(M.keccak256(c.concat(["0xff",f(t),e,n])),12))}}))),A=(r(P),P.getAddress,P.isAddress,P.getIcapAddress,P.getContractAddress,P.getCreate2Address,n((function(t,r){var n,i=e&&e.__extends||(n=function(t,e){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(t,e)},function(t,e){function r(){this.constructor=t}n(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)});Object.defineProperty(r,"__esModule",{value:!0});var o=function(t){function e(e){return t.call(this,"address","address",e,!1)||this}return i(e,t),e.prototype.encode=function(t,e){try{P.getAddress(e)}catch(t){this._throwError(t.message,e)}return t.writeValue(e)},e.prototype.decode=function(t){return P.getAddress(c.hexZeroPad(t.readValue().toHexString(),20))},e}(w.Coder);r.AddressCoder=o}))),x=(r(A),A.AddressCoder,n((function(t,r){var n,i=e&&e.__extends||(n=function(t,e){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(t,e)},function(t,e){function r(){this.constructor=t}n(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)});Object.defineProperty(r,"__esModule",{value:!0});var o=function(t){function e(e){var r=t.call(this,e.name,e.type,void 0,e.dynamic)||this;return r.coder=e,r}return i(e,t),e.prototype.encode=function(t,e){return this.coder.encode(t,e)},e.prototype.decode=function(t){return this.coder.decode(t)},e}(w.Coder);r.AnonymousCoder=o}))),N=(r(x),x.AnonymousCoder,n((function(t,r){var n,i=e&&e.__extends||(n=function(t,e){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(t,e)},function(t,e){function r(){this.constructor=t}n(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)});Object.defineProperty(r,"__esModule",{value:!0});var o=new l.Logger(y.version);function s(t,e,r){var n=null;if(Array.isArray(r))n=r;else if(r&&"object"==typeof r){var i={};n=e.map((function(t){var e=t.localName;return e||o.throwError("cannot encode object for signature with missing names",l.Logger.errors.INVALID_ARGUMENT,{argument:"values",coder:t,value:r}),i[e]&&o.throwError("cannot encode object for signature with duplicate names",l.Logger.errors.INVALID_ARGUMENT,{argument:"values",coder:t,value:r}),i[e]=!0,r[e]}))}else o.throwArgumentError("invalid tuple value","tuple",r);e.length!==n.length&&o.throwArgumentError("types/value length mismatch","tuple",r);var s=new w.Writer(t.wordSize),a=new w.Writer(t.wordSize),u=[];e.forEach((function(t,e){var r=n[e];if(t.dynamic){var i=a.length;t.encode(a,r);var o=s.writeUpdatableValue();u.push((function(t){o(t+i)}))}else t.encode(s,r)})),u.forEach((function(t){t(s.length)}));var h=t.writeBytes(s.data);return h+=t.writeBytes(a.data)}function a(t,e){var r=[],n=t.subReader(0),i=0;e.forEach((function(e){var o=null;if(e.dynamic){var s=t.readValue(),a=n.subReader(s.toNumber());try{o=e.decode(a)}catch(t){if(t.code===l.Logger.errors.BUFFER_OVERRUN)throw t;(o=t).baseType=e.name,o.name=e.localName,o.type=e.type}i+=a.consumed}else try{o=e.decode(t)}catch(t){if(t.code===l.Logger.errors.BUFFER_OVERRUN)throw t;(o=t).baseType=e.name,o.name=e.localName,o.type=e.type}null!=o&&r.push(o)})),t.readBytes(i);var o=e.reduce((function(t,e){var r=e.localName;return r&&(t[r]||(t[r]=0),t[r]++),t}),{});e.forEach((function(t,e){var n=t.localName;if(n&&1===o[n]&&("length"===n&&(n="_length"),null==r[n])){var i=r[e];i instanceof Error?Object.defineProperty(r,n,{get:function(){throw i}}):r[n]=i}}));for(var s=function(t){var e=r[t];e instanceof Error&&Object.defineProperty(r,t,{get:function(){throw e}})},a=0;a=0?r:"")+"]",s=-1===r||e.dynamic;return(i=t.call(this,"array",o,n,s)||this).coder=e,i.length=r,i}return i(e,t),e.prototype.encode=function(t,e){Array.isArray(e)||this._throwError("expected array value",e);var r=this.length;-1===r&&(r=e.length,t.writeValue(e.length)),o.checkArgumentCount(r,e.length,"coder array"+(this.localName?" "+this.localName:""));for(var n=[],i=0;i>6==2;a++)s++;return s}return t===n.OVERRUN?r.length-e-1:0}function s(t,r){null==r&&(r=e.Utf8ErrorFuncs.error),t=c.arrayify(t);for(var i=[],o=0;o>7!=0){var a=null,u=null;if(192==(224&s))a=1,u=127;else if(224==(240&s))a=2,u=2047;else{if(240!=(248&s)){o+=r(128==(192&s)?n.UNEXPECTED_CONTINUE:n.BAD_PREFIX,o-1,t,i);continue}a=3,u=65535}if(o-1+a>=t.length)o+=r(n.OVERRUN,o-1,t,i);else{for(var l=s&(1<<8-a-1)-1,h=0;h1114111?o+=r(n.OUT_OF_RANGE,o-1-a,t,i,l):l>=55296&&l<=57343?o+=r(n.UTF16_SURROGATE,o-1-a,t,i,l):l<=u?o+=r(n.OVERLONG,o-1-a,t,i,l):i.push(l))}}else i.push(s)}return i}function a(t,e){void 0===e&&(e=r.current),e!=r.current&&(i.checkNormalize(),t=t.normalize(e));for(var n=[],o=0;o>6|192),n.push(63&s|128);else if(55296==(64512&s)){o++;var a=t.charCodeAt(o);if(o>=t.length||56320!=(64512&a))throw new Error("invalid utf-8 string");var u=65536+((1023&s)<<10)+(1023&a);n.push(u>>18|240),n.push(u>>12&63|128),n.push(u>>6&63|128),n.push(63&u|128)}else n.push(s>>12|224),n.push(s>>6&63|128),n.push(63&s|128)}return c.arrayify(n)}function u(t){var e="0000"+t.toString(16);return"\\u"+e.substring(e.length-4)}function h(t){return t.map((function(t){return t<=65535?String.fromCharCode(t):(t-=65536,String.fromCharCode(55296+(t>>10&1023),56320+(1023&t)))})).join("")}!function(t){t.current="",t.NFC="NFC",t.NFD="NFD",t.NFKC="NFKC",t.NFKD="NFKD"}(r=e.UnicodeNormalizationForm||(e.UnicodeNormalizationForm={})),function(t){t.UNEXPECTED_CONTINUE="unexpected continuation byte",t.BAD_PREFIX="bad codepoint prefix",t.OVERRUN="string overrun",t.MISSING_CONTINUE="missing continuation byte",t.OUT_OF_RANGE="out of UTF-8 range",t.UTF16_SURROGATE="UTF-16 surrogate",t.OVERLONG="overlong representation"}(n=e.Utf8ErrorReason||(e.Utf8ErrorReason={})),e.Utf8ErrorFuncs=Object.freeze({error:function(t,e,r,n,o){return i.throwArgumentError("invalid codepoint at offset "+e+"; "+t,"bytes",r)},ignore:o,replace:function(t,e,r,i,s){return t===n.OVERLONG?(i.push(s),0):(i.push(65533),o(t,e,r))}}),e.toUtf8Bytes=a,e._toEscapedUtf8String=function(t,e){return'"'+s(t,e).map((function(t){if(t<256){switch(t){case 8:return"\\b";case 9:return"\\t";case 10:return"\\n";case 13:return"\\r";case 34:return'\\"';case 92:return"\\\\"}if(t>=32&&t<127)return String.fromCharCode(t)}return t<=65535?u(t):u(55296+((t-=65536)>>10&1023))+u(56320+(1023&t))})).join("")+'"'},e._toUtf8String=h,e.toUtf8String=function(t,e){return h(s(t,e))},e.toUtf8CodePoints=function(t,e){return void 0===e&&(e=r.current),s(a(t,e))}}))),U=(r(L),L.UnicodeNormalizationForm,L.Utf8ErrorReason,L.Utf8ErrorFuncs,L.toUtf8Bytes,L._toEscapedUtf8String,L._toUtf8String,L.toUtf8String,L.toUtf8CodePoints,n((function(t,e){Object.defineProperty(e,"__esModule",{value:!0}),e.formatBytes32String=function(t){var e=L.toUtf8Bytes(t);if(e.length>31)throw new Error("bytes32 string must be less than 32 bytes");return c.hexlify(c.concat([e,B.HashZero]).slice(0,32))},e.parseBytes32String=function(t){var e=c.arrayify(t);if(32!==e.length)throw new Error("invalid bytes32 - not 32 bytes long");if(0!==e[31])throw new Error("invalid bytes32 string - no null terminator");for(var r=31;0===e[r-1];)r--;return L.toUtf8String(e.slice(0,r))}}))),j=(r(U),U.formatBytes32String,U.parseBytes32String,n((function(t,e){function r(t,e){e||(e=function(t){return[parseInt(t,16)]});var r=0,n={};return t.split(",").forEach((function(t){var i=t.split(":");r+=parseInt(i[0],16),n[r]=e(i[1])})),n}function n(t){var e=0;return t.split(",").map((function(t){var r=t.split("-");return 1===r.length?r[1]="0":""===r[1]&&(r[1]="1"),{l:e+parseInt(r[0],16),h:e=parseInt(r[1],16)}}))}function i(t,e){for(var r=0,n=0;n=(r+=i.l)&&t<=r+i.h&&(t-r)%(i.d||1)==0){if(i.e&&-1!==i.e.indexOf(t-r))continue;return i}}return null}Object.defineProperty(e,"__esModule",{value:!0});var o=n("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"),s="ad,34f,1806,180b,180c,180d,200b,200c,200d,2060,feff".split(",").map((function(t){return parseInt(t,16)})),a=[{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}],u=r("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"),l=r("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"),h=r("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(t){if(t.length%4!=0)throw new Error("bad data");for(var e=[],r=0;r=0)return[];if(t>=65024&&t<=65039)return[];var e=d(t);return e||[t]})),r=e.reduce((function(t,e){return e.forEach((function(e){t.push(e)})),t}),[]),(r=L.toUtf8CodePoints(L._toUtf8String(r),L.UnicodeNormalizationForm.NFKC)).forEach((function(t){if(p(t))throw new Error("STRINGPREP_CONTAINS_PROHIBITED")})),r.forEach((function(t){if(f(t))throw new Error("STRINGPREP_CONTAINS_UNASSIGNED")}));var n=L._toUtf8String(r);if("-"===n.substring(0,1)||"--"===n.substring(2,4)||"-"===n.substring(n.length-1))throw new Error("invalid hyphen");if(n.length>63)throw new Error("too long");return n}}))),D=(r(j),j._nameprepTableA1,j._nameprepTableB2,j._nameprepTableC,j.nameprep,n((function(t,e){Object.defineProperty(e,"__esModule",{value:!0}),e.formatBytes32String=U.formatBytes32String,e.parseBytes32String=U.parseBytes32String,e.nameprep=j.nameprep,e._toEscapedUtf8String=L._toEscapedUtf8String,e.toUtf8Bytes=L.toUtf8Bytes,e.toUtf8CodePoints=L.toUtf8CodePoints,e.toUtf8String=L.toUtf8String,e.UnicodeNormalizationForm=L.UnicodeNormalizationForm,e.Utf8ErrorFuncs=L.Utf8ErrorFuncs,e.Utf8ErrorReason=L.Utf8ErrorReason}))),z=(r(D),D.formatBytes32String,D.parseBytes32String,D.nameprep,D._toEscapedUtf8String,D.toUtf8Bytes,D.toUtf8CodePoints,D.toUtf8String,D.UnicodeNormalizationForm,D.Utf8ErrorFuncs,D.Utf8ErrorReason,n((function(t,r){var n,i=e&&e.__extends||(n=function(t,e){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(t,e)},function(t,e){function r(){this.constructor=t}n(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)});Object.defineProperty(r,"__esModule",{value:!0});var o=function(t){function e(e){return t.call(this,"string",e)||this}return i(e,t),e.prototype.encode=function(e,r){return t.prototype.encode.call(this,e,D.toUtf8Bytes(r))},e.prototype.decode=function(e){return D.toUtf8String(t.prototype.decode.call(this,e))},e}(R.DynamicBytesCoder);r.StringCoder=o}))),K=(r(z),z.StringCoder,n((function(t,r){var n,i=e&&e.__extends||(n=function(t,e){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(t,e)},function(t,e){function r(){this.constructor=t}n(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)});Object.defineProperty(r,"__esModule",{value:!0});var o=function(t){function e(e,r){var n=this,i=!1,o=[];e.forEach((function(t){t.dynamic&&(i=!0),o.push(t.type)}));var s="tuple("+o.join(",")+")";return(n=t.call(this,"tuple",s,r,i)||this).coders=e,n}return i(e,t),e.prototype.encode=function(t,e){return N.pack(t,this.coders,e)},e.prototype.decode=function(t){return t.coerce(this.name,N.unpack(t,this.coders))},e}(w.Coder);r.TupleCoder=o}))),H=(r(K),K.TupleCoder,n((function(t,e){Object.defineProperty(e,"__esModule",{value:!0});var r=new l.Logger(y.version),n=new RegExp(/^bytes([0-9]*)$/),i=new RegExp(/^(u?int)([0-9]*)$/),o=function(){function t(e){var n=this.constructor;r.checkNew(n,t),v.defineReadOnly(this,"coerceFunc",e||null)}return t.prototype._getCoder=function(t){var e=this;switch(t.baseType){case"address":return new A.AddressCoder(t.name);case"bool":return new O.BooleanCoder(t.name);case"string":return new z.StringCoder(t.name);case"bytes":return new R.BytesCoder(t.name);case"array":return new N.ArrayCoder(this._getCoder(t.arrayChildren),t.arrayLength,t.name);case"tuple":return new K.TupleCoder((t.components||[]).map((function(t){return e._getCoder(t)})),t.name);case"":return new C.NullCoder(t.name)}var o,s=t.type.match(i);return s?((0===(o=parseInt(s[2]||"256"))||o>256||o%8!=0)&&r.throwArgumentError("invalid "+s[1]+" bit length","param",t),new I.NumberCoder(o/8,"int"===s[1],t.name)):(s=t.type.match(n))?((0===(o=parseInt(s[1]))||o>32)&&r.throwArgumentError("invalid bytes length","param",t),new T.FixedBytesCoder(o,t.name)):r.throwArgumentError("invalid type","type",t.type)},t.prototype._getWordSize=function(){return 32},t.prototype._getReader=function(t){return new w.Reader(t,this._getWordSize(),this.coerceFunc)},t.prototype._getWriter=function(){return new w.Writer(this._getWordSize())},t.prototype.encode=function(t,e){var n=this;t.length!==e.length&&r.throwError("types/values length mismatch",l.Logger.errors.INVALID_ARGUMENT,{count:{types:t.length,values:e.length},value:{types:t,values:e}});var i=t.map((function(t){return n._getCoder(b.ParamType.from(t))})),o=new K.TupleCoder(i,"_"),s=this._getWriter();return o.encode(s,e),s.data},t.prototype.decode=function(t,e){var r=this,n=t.map((function(t){return r._getCoder(b.ParamType.from(t))}));return new K.TupleCoder(n,"_").decode(this._getReader(c.arrayify(e)))},t}();e.AbiCoder=o,e.defaultAbiCoder=new o}))),W=(r(H),H.AbiCoder,H.defaultAbiCoder,n((function(t,e){Object.defineProperty(e,"__esModule",{value:!0}),e.version="hash/5.0.2"}))),q=(r(W),W.version,n((function(t,e){Object.defineProperty(e,"__esModule",{value:!0});var r=new l.Logger(W.version),n=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]),i=new RegExp("^((.*)\\.)?([^.]+)$");e.isValidName=function(t){try{for(var e=t.split("."),r=0;r1&&o.throwArgumentError("multiple matching functions","name",r),this.functions[n[0]]}var i=this.functions[b.FunctionFragment.fromString(t).format()];return i||o.throwArgumentError("no matching function","signature",t),i},t.prototype.getEvent=function(t){if(c.isHexString(t)){var e=t.toLowerCase();for(var r in this.events)if(e===this.getEventTopic(r))return this.events[r];o.throwArgumentError("no matching event","topichash",e)}if(-1===t.indexOf("(")){var n=t.trim(),i=Object.keys(this.events).filter((function(t){return t.split("(")[0]===n}));return 0===i.length?o.throwArgumentError("no matching event","name",n):i.length>1&&o.throwArgumentError("multiple matching events","name",n),this.events[i[0]]}var s=this.events[b.EventFragment.fromString(t).format()];return s||o.throwArgumentError("no matching event","signature",t),s},t.prototype.getSighash=function(t){return"string"==typeof t&&(t=this.getFunction(t)),v.getStatic(this.constructor,"getSighash")(t)},t.prototype.getEventTopic=function(t){return"string"==typeof t&&(t=this.getEvent(t)),v.getStatic(this.constructor,"getEventTopic")(t)},t.prototype._decodeParams=function(t,e){return this._abiCoder.decode(t,e)},t.prototype._encodeParams=function(t,e){return this._abiCoder.encode(t,e)},t.prototype.encodeDeploy=function(t){return this._encodeParams(this.deploy.inputs,t||[])},t.prototype.decodeFunctionData=function(t,e){"string"==typeof t&&(t=this.getFunction(t));var r=c.arrayify(e);return c.hexlify(r.slice(0,4))!==this.getSighash(t)&&o.throwArgumentError("data signature does not match function "+t.name+".","data",c.hexlify(r)),this._decodeParams(t.inputs,r.slice(4))},t.prototype.encodeFunctionData=function(t,e){return"string"==typeof t&&(t=this.getFunction(t)),c.hexlify(c.concat([this.getSighash(t),this._encodeParams(t.inputs,e||[])]))},t.prototype.decodeFunctionResult=function(t,e){"string"==typeof t&&(t=this.getFunction(t));var r=c.arrayify(e),n=null,i=null;switch(r.length%this._abiCoder._getWordSize()){case 0:try{return this._abiCoder.decode(t.outputs,r)}catch(t){}break;case 4:"0x08c379a0"===c.hexlify(r.slice(0,4))&&(i="Error(string)",n=this._abiCoder.decode(["string"],r.slice(4))[0])}return o.throwError("call revert exception",l.Logger.errors.CALL_EXCEPTION,{method:t.format(),errorSignature:i,errorArgs:[n],reason:n})},t.prototype.encodeFunctionResult=function(t,e){return"string"==typeof t&&(t=this.getFunction(t)),c.hexlify(this._abiCoder.encode(t.outputs,e||[]))},t.prototype.encodeFilterTopics=function(t,e){var r=this;"string"==typeof t&&(t=this.getEvent(t)),e.length>t.inputs.length&&o.throwError("too many arguments for "+t.format(),l.Logger.errors.UNEXPECTED_ARGUMENT,{argument:"values",value:e});var n=[];t.anonymous||n.push(this.getEventTopic(t));var i=function(t,e){return"string"===t.type?q.id(e):"bytes"===t.type?M.keccak256(c.hexlify(e)):("address"===t.type&&r._abiCoder.encode(["address"],[e]),c.hexZeroPad(c.hexlify(e),32))};for(e.forEach((function(e,r){var s=t.inputs[r];s.indexed?null==e?n.push(null):"array"===s.baseType||"tuple"===s.baseType?o.throwArgumentError("filtering with tuples or arrays not supported","contract."+s.name,e):Array.isArray(e)?n.push(e.map((function(t){return i(s,t)}))):n.push(i(s,e)):null!=e&&o.throwArgumentError("cannot filter non-indexed parameters; must be null","contract."+s.name,e)}));n.length&&null===n[n.length-1];)n.pop();return n},t.prototype.encodeEventLog=function(t,e){var r=this;"string"==typeof t&&(t=this.getEvent(t));var n=[],i=[],s=[];return t.anonymous||n.push(this.getEventTopic(t)),e.length!==t.inputs.length&&o.throwArgumentError("event arguments/values mismatch","values",e),t.inputs.forEach((function(t,o){var a=e[o];if(t.indexed)if("string"===t.type)n.push(q.id(a));else if("bytes"===t.type)n.push(M.keccak256(a));else{if("tuple"===t.baseType||"array"===t.baseType)throw new Error("not implemented");n.push(r._abiCoder.encode([t.type],[a]))}else i.push(t),s.push(a)})),{data:this._abiCoder.encode(i,s),topics:n}},t.prototype.decodeEventLog=function(t,e,r){if("string"==typeof t&&(t=this.getEvent(t)),null!=r&&!t.anonymous){var n=this.getEventTopic(t);c.isHexString(r[0],32)&&r[0].toLowerCase()===n||o.throwError("fragment/topic mismatch",l.Logger.errors.INVALID_ARGUMENT,{argument:"topics[0]",expected:n,value:r[0]}),r=r.slice(1)}var i=[],s=[],a=[];t.inputs.forEach((function(t,e){t.indexed?"string"===t.type||"bytes"===t.type||"tuple"===t.baseType||"array"===t.baseType?(i.push(b.ParamType.fromObject({type:"bytes32",name:t.name})),a.push(!0)):(i.push(t),a.push(!1)):(s.push(t),a.push(!1))}));var f=null!=r?this._abiCoder.decode(i,c.concat(r)):null,d=this._abiCoder.decode(s,e),p=[],m=0,g=0;t.inputs.forEach((function(t,e){if(t.indexed)if(null==f)p[e]=new u({_isIndexed:!0,hash:null});else if(a[e])p[e]=new u({_isIndexed:!0,hash:f[g++]});else try{p[e]=f[g++]}catch(t){p[e]=t}else try{p[e]=d[m++]}catch(t){p[e]=t}if(t.name&&null==p[t.name]){var r=p[e];r instanceof Error?Object.defineProperty(p,t.name,{get:function(){throw h("property "+JSON.stringify(t.name),r)}}):p[t.name]=r}}));for(var v=function(t){var e=p[t];e instanceof Error&&Object.defineProperty(p,t,{get:function(){throw h("index "+t,e)}})},y=0;y0&&i[i.length-1])||6!==o[0]&&2!==o[0])){s=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]0&&i[i.length-1])||6!==o[0]&&2!==o[0])){s=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]1)){var r=e[0];null==a[t]&&v.defineReadOnly(a,t,a[r]),null==a.functions[t]&&v.defineReadOnly(a.functions,t,a.functions[r]),null==a.callStatic[t]&&v.defineReadOnly(a.callStatic,t,a.callStatic[r]),null==a.populateTransaction[t]&&v.defineReadOnly(a.populateTransaction,t,a.populateTransaction[r]),null==a.estimateGas[t]&&v.defineReadOnly(a.estimateGas,t,a.estimateGas[r])}}))}return t.getContractAddress=function(t){return P.getContractAddress(t)},t.getInterface=function(t){return V.Interface.isInterface(t)?t:new V.Interface(t)},t.prototype.deployed=function(){return this._deployed()},t.prototype._deployed=function(t){var e=this;return this._deployedPromise||(this.deployTransaction?this._deployedPromise=this.deployTransaction.wait().then((function(){return e})):this._deployedPromise=this.provider.getCode(this.address,t).then((function(t){return"0x"===t&&u.throwError("contract not deployed",l.Logger.errors.UNSUPPORTED_OPERATION,{contractAddress:e.address,operation:"getDeployed"}),e}))),this._deployedPromise},t.prototype.fallback=function(t){var e=this;this.signer||u.throwError("sending a transactions require a signer",l.Logger.errors.UNSUPPORTED_OPERATION,{operation:"sendTransaction(fallback)"});var r=v.shallowCopy(t||{});return["from","to"].forEach((function(t){null!=r[t]&&u.throwError("cannot override "+t,l.Logger.errors.UNSUPPORTED_OPERATION,{operation:t})})),r.to=this.resolvedAddress,this.deployed().then((function(){return e.signer.sendTransaction(r)}))},t.prototype.connect=function(t){"string"==typeof t&&(t=new $.VoidSigner(t,this.provider));var e=new this.constructor(this.address,this.interface,t);return this.deployTransaction&&v.defineReadOnly(e,"deployTransaction",this.deployTransaction),e},t.prototype.attach=function(t){return new this.constructor(t,this.interface,this.signer||this.provider)},t.isIndexed=function(t){return V.Indexed.isIndexed(t)},t.prototype._normalizeRunningEvent=function(t){return this._runningEvents[t.tag]?this._runningEvents[t.tag]:t},t.prototype._getRunningEvent=function(t){if("string"==typeof t){if("error"===t)return this._normalizeRunningEvent(new _);if("event"===t)return this._normalizeRunningEvent(new w("event",null));if("*"===t)return this._normalizeRunningEvent(new E(this.address,this.interface));var e=this.interface.getEvent(t);return this._normalizeRunningEvent(new M(this.address,this.interface,e))}if(t.topics&&t.topics.length>0){try{var r=t.topics[0];if("string"!=typeof r)throw new Error("invalid topic");e=this.interface.getEvent(r);return this._normalizeRunningEvent(new M(this.address,this.interface,e,t.topics))}catch(t){}var n={address:this.address,topics:t.topics};return this._normalizeRunningEvent(new w(b(n),n))}return this._normalizeRunningEvent(new E(this.address,this.interface))},t.prototype._checkRunningEvents=function(t){if(0===t.listenerCount()){delete this._runningEvents[t.tag];var e=this._wrappedEmits[t.tag];e&&(this.provider.off(t.filter,e),delete this._wrappedEmits[t.tag])}},t.prototype._wrapEvent=function(t,e,r){var n=this,i=v.deepCopy(e);return i.removeListener=function(){r&&(t.removeListener(r),n._checkRunningEvents(t))},i.getBlock=function(){return n.provider.getBlock(e.blockHash)},i.getTransaction=function(){return n.provider.getTransaction(e.transactionHash)},i.getTransactionReceipt=function(){return n.provider.getTransactionReceipt(e.transactionHash)},t.prepareEvent(i),i},t.prototype._addEventListener=function(t,e,r){var n=this;if(this.provider||u.throwError("events require a provider or a signer with a provider",l.Logger.errors.UNSUPPORTED_OPERATION,{operation:"once"}),t.addListener(e,r),this._runningEvents[t.tag]=t,!this._wrappedEmits[t.tag]){var i=function(r){var i=n._wrapEvent(t,r,e);if(null==i.decodeError)try{var o=t.getEmit(i);n.emit.apply(n,a([t.filter],o))}catch(t){i.decodeError=t.error}null!=t.filter&&n.emit("event",i),null!=i.decodeError&&n.emit("error",i.decodeError,i)};this._wrappedEmits[t.tag]=i,null!=t.filter&&this.provider.on(t.filter,i)}},t.prototype.queryFilter=function(t,e,r){var n=this,i=this._getRunningEvent(t),o=v.shallowCopy(i.filter);return"string"==typeof e&&c.isHexString(e,32)?(null!=r&&u.throwArgumentError("cannot specify toBlock with blockhash","toBlock",r),o.blockHash=e):(o.fromBlock=null!=e?e:0,o.toBlock=null!=r?r:"latest"),this.provider.getLogs(o).then((function(t){return t.map((function(t){return n._wrapEvent(i,t,null)}))}))},t.prototype.on=function(t,e){return this._addEventListener(this._getRunningEvent(t),e,!1),this},t.prototype.once=function(t,e){return this._addEventListener(this._getRunningEvent(t),e,!0),this},t.prototype.emit=function(t){for(var e=[],r=1;r0;return this._checkRunningEvents(n),i},t.prototype.listenerCount=function(t){return this.provider?this._getRunningEvent(t).listenerCount():0},t.prototype.listeners=function(t){if(!this.provider)return[];if(null==t){var e=[];for(var r in this._runningEvents)this._runningEvents[r].listeners().forEach((function(t){e.push(t)}));return e}return this._getRunningEvent(t).listeners()},t.prototype.removeAllListeners=function(t){if(!this.provider)return this;if(null==t){for(var e in this._runningEvents){var r=this._runningEvents[e];r.removeAllListeners(),this._checkRunningEvents(r)}return this}var n=this._getRunningEvent(t);return n.removeAllListeners(),this._checkRunningEvents(n),this},t.prototype.off=function(t,e){if(!this.provider)return this;var r=this._getRunningEvent(t);return r.removeListener(e),this._checkRunningEvents(r),this},t.prototype.removeListener=function(t,e){return this.off(t,e)},t}();r.Contract=k;var S=function(){function t(t,e,r){var n=this.constructor,i=null;"0x"!==(i="string"==typeof e?e:c.isBytes(e)?c.hexlify(e):e&&"string"==typeof e.object?e.object:"!").substring(0,2)&&(i="0x"+i),(!c.isHexString(i)||i.length%2)&&u.throwArgumentError("invalid bytecode","bytecode",e),r&&!$.Signer.isSigner(r)&&u.throwArgumentError("invalid signer","signer",r),v.defineReadOnly(this,"bytecode",i),v.defineReadOnly(this,"interface",v.getStatic(n,"getInterface")(t)),v.defineReadOnly(this,"signer",r||null)}return t.prototype.getDeployTransaction=function(){for(var t=[],e=0;e0;)r.push(i%this.base),i=i/this.base|0}for(var s="",a=0;0===e[a]&&a=0;--u)s+=this.alphabet[r[u]];return s},t.prototype.decode=function(t){if("string"!=typeof t)throw new TypeError("Expected String");var e=[];if(0===t.length)return new Uint8Array(e);e.push(0);for(var r=0;r>=8;for(;i>0;)e.push(255&i),i>>=8}for(var s=0;t[s]===this._leader&&s>>24|t>>>8&65280|t<<8&16711680|(255&t)<<24)>>>0}function ot(t){return 1===t.length?"0"+t:t}function st(t){return 7===t.length?"0"+t:6===t.length?"00"+t:5===t.length?"000"+t:4===t.length?"0000"+t:3===t.length?"00000"+t:2===t.length?"000000"+t:1===t.length?"0000000"+t:t}var at={inherits:nt,toArray:function(t,e){if(Array.isArray(t))return t.slice();if(!t)return[];var r=[];if("string"==typeof t)if(e){if("hex"===e)for((t=t.replace(/[^a-z0-9]+/gi,"")).length%2!=0&&(t="0"+t),n=0;n>8,s=255&i;o?r.push(o,s):r.push(s)}else for(n=0;n>>0}return o},split32:function(t,e){for(var r=new Array(4*t.length),n=0,i=0;n>>24,r[i+1]=o>>>16&255,r[i+2]=o>>>8&255,r[i+3]=255&o):(r[i+3]=o>>>24,r[i+2]=o>>>16&255,r[i+1]=o>>>8&255,r[i]=255&o)}return r},rotr32:function(t,e){return t>>>e|t<<32-e},rotl32:function(t,e){return t<>>32-e},sum32:function(t,e){return t+e>>>0},sum32_3:function(t,e,r){return t+e+r>>>0},sum32_4:function(t,e,r,n){return t+e+r+n>>>0},sum32_5:function(t,e,r,n,i){return t+e+r+n+i>>>0},sum64:function(t,e,r,n){var i=t[e],o=n+t[e+1]>>>0,s=(o>>0,t[e+1]=o},sum64_hi:function(t,e,r,n){return(e+n>>>0>>0},sum64_lo:function(t,e,r,n){return e+n>>>0},sum64_4_hi:function(t,e,r,n,i,o,s,a){var u=0,l=e;return u+=(l=l+n>>>0)>>0)>>0)>>0},sum64_4_lo:function(t,e,r,n,i,o,s,a){return e+n+o+a>>>0},sum64_5_hi:function(t,e,r,n,i,o,s,a,u,l){var h=0,c=e;return h+=(c=c+n>>>0)>>0)>>0)>>0)>>0},sum64_5_lo:function(t,e,r,n,i,o,s,a,u,l){return e+n+o+a+l>>>0},rotr64_hi:function(t,e,r){return(e<<32-r|t>>>r)>>>0},rotr64_lo:function(t,e,r){return(t<<32-r|e>>>r)>>>0},shr64_hi:function(t,e,r){return t>>>r},shr64_lo:function(t,e,r){return(t<<32-r|e>>>r)>>>0}};function ut(){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 lt=ut;ut.prototype.update=function(t,e){if(t=at.toArray(t,e),this.pending?this.pending=this.pending.concat(t):this.pending=t,this.pendingTotal+=t.length,this.pending.length>=this._delta8){var r=(t=this.pending).length%this._delta8;this.pending=t.slice(t.length-r,t.length),0===this.pending.length&&(this.pending=null),t=at.join32(t,0,t.length-r,this.endian);for(var n=0;n>>24&255,n[i++]=t>>>16&255,n[i++]=t>>>8&255,n[i++]=255&t}else for(n[i++]=255&t,n[i++]=t>>>8&255,n[i++]=t>>>16&255,n[i++]=t>>>24&255,n[i++]=0,n[i++]=0,n[i++]=0,n[i++]=0,o=8;o>>3},g1_256:function(t){return ct(t,17)^ct(t,19)^t>>>10}},gt=at.sum32,vt=at.sum32_4,yt=at.sum32_5,bt=mt.ch32,wt=mt.maj32,_t=mt.s0_256,Mt=mt.s1_256,Et=mt.g0_256,kt=mt.g1_256,St=ht.BlockHash,Pt=[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 At(){if(!(this instanceof At))return new At;St.call(this),this.h=[1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225],this.k=Pt,this.W=new Array(64)}at.inherits(At,St);var xt=At;At.blockSize=512,At.outSize=256,At.hmacStrength=192,At.padLength=64,At.prototype._update=function(t,e){for(var r=this.W,n=0;n<16;n++)r[n]=t[e+n];for(;nthis.blockSize&&(t=(new this.Hash).update(t).digest()),et(t.length<=this.blockSize);for(var e=t.length;e>24&255,h[e.length+1]=f>>16&255,h[e.length+2]=f>>8&255,h[e.length+3]=255&f;var d=c.arrayify(Me.computeHmac(i,t,h));o||(o=d.length,a=new Uint8Array(o),s=n-((u=Math.ceil(n/o))-1)*o),a.set(d);for(var p=1;p=49&&s<=54?s-49+10:s>=17&&s<=22?s-17+10:15&s}return n}function u(t,e,r,n){for(var i=0,o=Math.min(t.length,r),s=e;s=49?a-49+10:a>=17?a-17+10:a}return i}i.isBN=function(t){return t instanceof i||null!==t&&"object"==typeof t&&t.constructor.wordSize===i.wordSize&&Array.isArray(t.words)},i.max=function(t,e){return t.cmp(e)>0?t:e},i.min=function(t,e){return t.cmp(e)<0?t:e},i.prototype._init=function(t,e,n){if("number"==typeof t)return this._initNumber(t,e,n);if("object"==typeof t)return this._initArray(t,e,n);"hex"===e&&(e=16),r(e===(0|e)&&e>=2&&e<=36);var i=0;"-"===(t=t.toString().replace(/\s+/g,""))[0]&&i++,16===e?this._parseHex(t,i):this._parseBase(t,e,i),"-"===t[0]&&(this.negative=1),this.strip(),"le"===n&&this._initArray(this.toArray(),e,n)},i.prototype._initNumber=function(t,e,n){t<0&&(this.negative=1,t=-t),t<67108864?(this.words=[67108863&t],this.length=1):t<4503599627370496?(this.words=[67108863&t,t/67108864&67108863],this.length=2):(r(t<9007199254740992),this.words=[67108863&t,t/67108864&67108863,1],this.length=3),"le"===n&&this._initArray(this.toArray(),e,n)},i.prototype._initArray=function(t,e,n){if(r("number"==typeof t.length),t.length<=0)return this.words=[0],this.length=1,this;this.length=Math.ceil(t.length/3),this.words=new Array(this.length);for(var i=0;i=0;i-=3)s=t[i]|t[i-1]<<8|t[i-2]<<16,this.words[o]|=s<>>26-a&67108863,(a+=24)>=26&&(a-=26,o++);else if("le"===n)for(i=0,o=0;i>>26-a&67108863,(a+=24)>=26&&(a-=26,o++);return this.strip()},i.prototype._parseHex=function(t,e){this.length=Math.ceil((t.length-e)/6),this.words=new Array(this.length);for(var r=0;r=e;r-=6)i=a(t,r,r+6),this.words[n]|=i<>>26-o&4194303,(o+=24)>=26&&(o-=26,n++);r+6!==e&&(i=a(t,e,r+6),this.words[n]|=i<>>26-o&4194303),this.strip()},i.prototype._parseBase=function(t,e,r){this.words=[0],this.length=1;for(var n=0,i=1;i<=67108863;i*=e)n++;n--,i=i/e|0;for(var o=t.length-r,s=o%n,a=Math.min(o,o-s)+r,l=0,h=r;h1&&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 l=["","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"],h=[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],c=[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 f(t,e,r){r.negative=e.negative^t.negative;var n=t.length+e.length|0;r.length=n,n=n-1|0;var i=0|t.words[0],o=0|e.words[0],s=i*o,a=67108863&s,u=s/67108864|0;r.words[0]=a;for(var l=1;l>>26,c=67108863&u,f=Math.min(l,e.length-1),d=Math.max(0,l-t.length+1);d<=f;d++){var p=l-d|0;h+=(s=(i=0|t.words[p])*(o=0|e.words[d])+c)/67108864|0,c=67108863&s}r.words[l]=0|c,u=0|h}return 0!==u?r.words[l]=0|u:r.length--,r.strip()}i.prototype.toString=function(t,e){var n;if(e=0|e||1,16===(t=t||10)||"hex"===t){n="";for(var i=0,o=0,s=0;s>>24-i&16777215)||s!==this.length-1?l[6-u.length]+u+n:u+n,(i+=2)>=26&&(i-=26,s--)}for(0!==o&&(n=o.toString(16)+n);n.length%e!=0;)n="0"+n;return 0!==this.negative&&(n="-"+n),n}if(t===(0|t)&&t>=2&&t<=36){var f=h[t],d=c[t];n="";var p=this.clone();for(p.negative=0;!p.isZero();){var m=p.modn(d).toString(t);n=(p=p.idivn(d)).isZero()?m+n:l[f-m.length]+m+n}for(this.isZero()&&(n="0"+n);n.length%e!=0;)n="0"+n;return 0!==this.negative&&(n="-"+n),n}r(!1,"Base should be between 2 and 36")},i.prototype.toNumber=function(){var t=this.words[0];return 2===this.length?t+=67108864*this.words[1]:3===this.length&&1===this.words[2]?t+=4503599627370496+67108864*this.words[1]:this.length>2&&r(!1,"Number can only safely store up to 53 bits"),0!==this.negative?-t:t},i.prototype.toJSON=function(){return this.toString(16)},i.prototype.toBuffer=function(t,e){return r(void 0!==o),this.toArrayLike(o,t,e)},i.prototype.toArray=function(t,e){return this.toArrayLike(Array,t,e)},i.prototype.toArrayLike=function(t,e,n){var i=this.byteLength(),o=n||Math.max(1,i);r(i<=o,"byte array longer than desired length"),r(o>0,"Requested array length <= 0"),this.strip();var s,a,u="le"===e,l=new t(o),h=this.clone();if(u){for(a=0;!h.isZero();a++)s=h.andln(255),h.iushrn(8),l[a]=s;for(;a=4096&&(r+=13,e>>>=13),e>=64&&(r+=7,e>>>=7),e>=8&&(r+=4,e>>>=4),e>=2&&(r+=2,e>>>=2),r+e},i.prototype._zeroBits=function(t){if(0===t)return 26;var e=t,r=0;return 0==(8191&e)&&(r+=13,e>>>=13),0==(127&e)&&(r+=7,e>>>=7),0==(15&e)&&(r+=4,e>>>=4),0==(3&e)&&(r+=2,e>>>=2),0==(1&e)&&r++,r},i.prototype.bitLength=function(){var t=this.words[this.length-1],e=this._countBits(t);return 26*(this.length-1)+e},i.prototype.zeroBits=function(){if(this.isZero())return 0;for(var t=0,e=0;et.length?this.clone().ior(t):t.clone().ior(this)},i.prototype.uor=function(t){return this.length>t.length?this.clone().iuor(t):t.clone().iuor(this)},i.prototype.iuand=function(t){var e;e=this.length>t.length?t:this;for(var r=0;rt.length?this.clone().iand(t):t.clone().iand(this)},i.prototype.uand=function(t){return this.length>t.length?this.clone().iuand(t):t.clone().iuand(this)},i.prototype.iuxor=function(t){var e,r;this.length>t.length?(e=this,r=t):(e=t,r=this);for(var n=0;nt.length?this.clone().ixor(t):t.clone().ixor(this)},i.prototype.uxor=function(t){return this.length>t.length?this.clone().iuxor(t):t.clone().iuxor(this)},i.prototype.inotn=function(t){r("number"==typeof t&&t>=0);var e=0|Math.ceil(t/26),n=t%26;this._expand(e),n>0&&e--;for(var i=0;i0&&(this.words[i]=~this.words[i]&67108863>>26-n),this.strip()},i.prototype.notn=function(t){return this.clone().inotn(t)},i.prototype.setn=function(t,e){r("number"==typeof t&&t>=0);var n=t/26|0,i=t%26;return this._expand(n+1),this.words[n]=e?this.words[n]|1<t.length?(r=this,n=t):(r=t,n=this);for(var i=0,o=0;o>>26;for(;0!==i&&o>>26;if(this.length=r.length,0!==i)this.words[this.length]=i,this.length++;else if(r!==this)for(;ot.length?this.clone().iadd(t):t.clone().iadd(this)},i.prototype.isub=function(t){if(0!==t.negative){t.negative=0;var e=this.iadd(t);return t.negative=1,e._normSign()}if(0!==this.negative)return this.negative=0,this.iadd(t),this.negative=1,this._normSign();var r,n,i=this.cmp(t);if(0===i)return this.negative=0,this.length=1,this.words[0]=0,this;i>0?(r=this,n=t):(r=t,n=this);for(var o=0,s=0;s>26,this.words[s]=67108863&e;for(;0!==o&&s>26,this.words[s]=67108863&e;if(0===o&&s>>13,d=0|s[1],p=8191&d,m=d>>>13,g=0|s[2],v=8191&g,y=g>>>13,b=0|s[3],w=8191&b,_=b>>>13,M=0|s[4],E=8191&M,k=M>>>13,S=0|s[5],P=8191&S,A=S>>>13,x=0|s[6],N=8191&x,O=x>>>13,R=0|s[7],T=8191&R,C=R>>>13,B=0|s[8],I=8191&B,F=B>>>13,L=0|s[9],U=8191&L,j=L>>>13,D=0|a[0],z=8191&D,K=D>>>13,H=0|a[1],W=8191&H,q=H>>>13,G=0|a[2],V=8191&G,J=G>>>13,Z=0|a[3],X=8191&Z,$=Z>>>13,Q=0|a[4],Y=8191&Q,tt=Q>>>13,et=0|a[5],rt=8191&et,nt=et>>>13,it=0|a[6],ot=8191&it,st=it>>>13,at=0|a[7],ut=8191&at,lt=at>>>13,ht=0|a[8],ct=8191&ht,ft=ht>>>13,dt=0|a[9],pt=8191&dt,mt=dt>>>13;r.negative=t.negative^e.negative,r.length=19;var gt=(l+(n=Math.imul(c,z))|0)+((8191&(i=(i=Math.imul(c,K))+Math.imul(f,z)|0))<<13)|0;l=((o=Math.imul(f,K))+(i>>>13)|0)+(gt>>>26)|0,gt&=67108863,n=Math.imul(p,z),i=(i=Math.imul(p,K))+Math.imul(m,z)|0,o=Math.imul(m,K);var vt=(l+(n=n+Math.imul(c,W)|0)|0)+((8191&(i=(i=i+Math.imul(c,q)|0)+Math.imul(f,W)|0))<<13)|0;l=((o=o+Math.imul(f,q)|0)+(i>>>13)|0)+(vt>>>26)|0,vt&=67108863,n=Math.imul(v,z),i=(i=Math.imul(v,K))+Math.imul(y,z)|0,o=Math.imul(y,K),n=n+Math.imul(p,W)|0,i=(i=i+Math.imul(p,q)|0)+Math.imul(m,W)|0,o=o+Math.imul(m,q)|0;var yt=(l+(n=n+Math.imul(c,V)|0)|0)+((8191&(i=(i=i+Math.imul(c,J)|0)+Math.imul(f,V)|0))<<13)|0;l=((o=o+Math.imul(f,J)|0)+(i>>>13)|0)+(yt>>>26)|0,yt&=67108863,n=Math.imul(w,z),i=(i=Math.imul(w,K))+Math.imul(_,z)|0,o=Math.imul(_,K),n=n+Math.imul(v,W)|0,i=(i=i+Math.imul(v,q)|0)+Math.imul(y,W)|0,o=o+Math.imul(y,q)|0,n=n+Math.imul(p,V)|0,i=(i=i+Math.imul(p,J)|0)+Math.imul(m,V)|0,o=o+Math.imul(m,J)|0;var bt=(l+(n=n+Math.imul(c,X)|0)|0)+((8191&(i=(i=i+Math.imul(c,$)|0)+Math.imul(f,X)|0))<<13)|0;l=((o=o+Math.imul(f,$)|0)+(i>>>13)|0)+(bt>>>26)|0,bt&=67108863,n=Math.imul(E,z),i=(i=Math.imul(E,K))+Math.imul(k,z)|0,o=Math.imul(k,K),n=n+Math.imul(w,W)|0,i=(i=i+Math.imul(w,q)|0)+Math.imul(_,W)|0,o=o+Math.imul(_,q)|0,n=n+Math.imul(v,V)|0,i=(i=i+Math.imul(v,J)|0)+Math.imul(y,V)|0,o=o+Math.imul(y,J)|0,n=n+Math.imul(p,X)|0,i=(i=i+Math.imul(p,$)|0)+Math.imul(m,X)|0,o=o+Math.imul(m,$)|0;var wt=(l+(n=n+Math.imul(c,Y)|0)|0)+((8191&(i=(i=i+Math.imul(c,tt)|0)+Math.imul(f,Y)|0))<<13)|0;l=((o=o+Math.imul(f,tt)|0)+(i>>>13)|0)+(wt>>>26)|0,wt&=67108863,n=Math.imul(P,z),i=(i=Math.imul(P,K))+Math.imul(A,z)|0,o=Math.imul(A,K),n=n+Math.imul(E,W)|0,i=(i=i+Math.imul(E,q)|0)+Math.imul(k,W)|0,o=o+Math.imul(k,q)|0,n=n+Math.imul(w,V)|0,i=(i=i+Math.imul(w,J)|0)+Math.imul(_,V)|0,o=o+Math.imul(_,J)|0,n=n+Math.imul(v,X)|0,i=(i=i+Math.imul(v,$)|0)+Math.imul(y,X)|0,o=o+Math.imul(y,$)|0,n=n+Math.imul(p,Y)|0,i=(i=i+Math.imul(p,tt)|0)+Math.imul(m,Y)|0,o=o+Math.imul(m,tt)|0;var _t=(l+(n=n+Math.imul(c,rt)|0)|0)+((8191&(i=(i=i+Math.imul(c,nt)|0)+Math.imul(f,rt)|0))<<13)|0;l=((o=o+Math.imul(f,nt)|0)+(i>>>13)|0)+(_t>>>26)|0,_t&=67108863,n=Math.imul(N,z),i=(i=Math.imul(N,K))+Math.imul(O,z)|0,o=Math.imul(O,K),n=n+Math.imul(P,W)|0,i=(i=i+Math.imul(P,q)|0)+Math.imul(A,W)|0,o=o+Math.imul(A,q)|0,n=n+Math.imul(E,V)|0,i=(i=i+Math.imul(E,J)|0)+Math.imul(k,V)|0,o=o+Math.imul(k,J)|0,n=n+Math.imul(w,X)|0,i=(i=i+Math.imul(w,$)|0)+Math.imul(_,X)|0,o=o+Math.imul(_,$)|0,n=n+Math.imul(v,Y)|0,i=(i=i+Math.imul(v,tt)|0)+Math.imul(y,Y)|0,o=o+Math.imul(y,tt)|0,n=n+Math.imul(p,rt)|0,i=(i=i+Math.imul(p,nt)|0)+Math.imul(m,rt)|0,o=o+Math.imul(m,nt)|0;var Mt=(l+(n=n+Math.imul(c,ot)|0)|0)+((8191&(i=(i=i+Math.imul(c,st)|0)+Math.imul(f,ot)|0))<<13)|0;l=((o=o+Math.imul(f,st)|0)+(i>>>13)|0)+(Mt>>>26)|0,Mt&=67108863,n=Math.imul(T,z),i=(i=Math.imul(T,K))+Math.imul(C,z)|0,o=Math.imul(C,K),n=n+Math.imul(N,W)|0,i=(i=i+Math.imul(N,q)|0)+Math.imul(O,W)|0,o=o+Math.imul(O,q)|0,n=n+Math.imul(P,V)|0,i=(i=i+Math.imul(P,J)|0)+Math.imul(A,V)|0,o=o+Math.imul(A,J)|0,n=n+Math.imul(E,X)|0,i=(i=i+Math.imul(E,$)|0)+Math.imul(k,X)|0,o=o+Math.imul(k,$)|0,n=n+Math.imul(w,Y)|0,i=(i=i+Math.imul(w,tt)|0)+Math.imul(_,Y)|0,o=o+Math.imul(_,tt)|0,n=n+Math.imul(v,rt)|0,i=(i=i+Math.imul(v,nt)|0)+Math.imul(y,rt)|0,o=o+Math.imul(y,nt)|0,n=n+Math.imul(p,ot)|0,i=(i=i+Math.imul(p,st)|0)+Math.imul(m,ot)|0,o=o+Math.imul(m,st)|0;var Et=(l+(n=n+Math.imul(c,ut)|0)|0)+((8191&(i=(i=i+Math.imul(c,lt)|0)+Math.imul(f,ut)|0))<<13)|0;l=((o=o+Math.imul(f,lt)|0)+(i>>>13)|0)+(Et>>>26)|0,Et&=67108863,n=Math.imul(I,z),i=(i=Math.imul(I,K))+Math.imul(F,z)|0,o=Math.imul(F,K),n=n+Math.imul(T,W)|0,i=(i=i+Math.imul(T,q)|0)+Math.imul(C,W)|0,o=o+Math.imul(C,q)|0,n=n+Math.imul(N,V)|0,i=(i=i+Math.imul(N,J)|0)+Math.imul(O,V)|0,o=o+Math.imul(O,J)|0,n=n+Math.imul(P,X)|0,i=(i=i+Math.imul(P,$)|0)+Math.imul(A,X)|0,o=o+Math.imul(A,$)|0,n=n+Math.imul(E,Y)|0,i=(i=i+Math.imul(E,tt)|0)+Math.imul(k,Y)|0,o=o+Math.imul(k,tt)|0,n=n+Math.imul(w,rt)|0,i=(i=i+Math.imul(w,nt)|0)+Math.imul(_,rt)|0,o=o+Math.imul(_,nt)|0,n=n+Math.imul(v,ot)|0,i=(i=i+Math.imul(v,st)|0)+Math.imul(y,ot)|0,o=o+Math.imul(y,st)|0,n=n+Math.imul(p,ut)|0,i=(i=i+Math.imul(p,lt)|0)+Math.imul(m,ut)|0,o=o+Math.imul(m,lt)|0;var kt=(l+(n=n+Math.imul(c,ct)|0)|0)+((8191&(i=(i=i+Math.imul(c,ft)|0)+Math.imul(f,ct)|0))<<13)|0;l=((o=o+Math.imul(f,ft)|0)+(i>>>13)|0)+(kt>>>26)|0,kt&=67108863,n=Math.imul(U,z),i=(i=Math.imul(U,K))+Math.imul(j,z)|0,o=Math.imul(j,K),n=n+Math.imul(I,W)|0,i=(i=i+Math.imul(I,q)|0)+Math.imul(F,W)|0,o=o+Math.imul(F,q)|0,n=n+Math.imul(T,V)|0,i=(i=i+Math.imul(T,J)|0)+Math.imul(C,V)|0,o=o+Math.imul(C,J)|0,n=n+Math.imul(N,X)|0,i=(i=i+Math.imul(N,$)|0)+Math.imul(O,X)|0,o=o+Math.imul(O,$)|0,n=n+Math.imul(P,Y)|0,i=(i=i+Math.imul(P,tt)|0)+Math.imul(A,Y)|0,o=o+Math.imul(A,tt)|0,n=n+Math.imul(E,rt)|0,i=(i=i+Math.imul(E,nt)|0)+Math.imul(k,rt)|0,o=o+Math.imul(k,nt)|0,n=n+Math.imul(w,ot)|0,i=(i=i+Math.imul(w,st)|0)+Math.imul(_,ot)|0,o=o+Math.imul(_,st)|0,n=n+Math.imul(v,ut)|0,i=(i=i+Math.imul(v,lt)|0)+Math.imul(y,ut)|0,o=o+Math.imul(y,lt)|0,n=n+Math.imul(p,ct)|0,i=(i=i+Math.imul(p,ft)|0)+Math.imul(m,ct)|0,o=o+Math.imul(m,ft)|0;var St=(l+(n=n+Math.imul(c,pt)|0)|0)+((8191&(i=(i=i+Math.imul(c,mt)|0)+Math.imul(f,pt)|0))<<13)|0;l=((o=o+Math.imul(f,mt)|0)+(i>>>13)|0)+(St>>>26)|0,St&=67108863,n=Math.imul(U,W),i=(i=Math.imul(U,q))+Math.imul(j,W)|0,o=Math.imul(j,q),n=n+Math.imul(I,V)|0,i=(i=i+Math.imul(I,J)|0)+Math.imul(F,V)|0,o=o+Math.imul(F,J)|0,n=n+Math.imul(T,X)|0,i=(i=i+Math.imul(T,$)|0)+Math.imul(C,X)|0,o=o+Math.imul(C,$)|0,n=n+Math.imul(N,Y)|0,i=(i=i+Math.imul(N,tt)|0)+Math.imul(O,Y)|0,o=o+Math.imul(O,tt)|0,n=n+Math.imul(P,rt)|0,i=(i=i+Math.imul(P,nt)|0)+Math.imul(A,rt)|0,o=o+Math.imul(A,nt)|0,n=n+Math.imul(E,ot)|0,i=(i=i+Math.imul(E,st)|0)+Math.imul(k,ot)|0,o=o+Math.imul(k,st)|0,n=n+Math.imul(w,ut)|0,i=(i=i+Math.imul(w,lt)|0)+Math.imul(_,ut)|0,o=o+Math.imul(_,lt)|0,n=n+Math.imul(v,ct)|0,i=(i=i+Math.imul(v,ft)|0)+Math.imul(y,ct)|0,o=o+Math.imul(y,ft)|0;var Pt=(l+(n=n+Math.imul(p,pt)|0)|0)+((8191&(i=(i=i+Math.imul(p,mt)|0)+Math.imul(m,pt)|0))<<13)|0;l=((o=o+Math.imul(m,mt)|0)+(i>>>13)|0)+(Pt>>>26)|0,Pt&=67108863,n=Math.imul(U,V),i=(i=Math.imul(U,J))+Math.imul(j,V)|0,o=Math.imul(j,J),n=n+Math.imul(I,X)|0,i=(i=i+Math.imul(I,$)|0)+Math.imul(F,X)|0,o=o+Math.imul(F,$)|0,n=n+Math.imul(T,Y)|0,i=(i=i+Math.imul(T,tt)|0)+Math.imul(C,Y)|0,o=o+Math.imul(C,tt)|0,n=n+Math.imul(N,rt)|0,i=(i=i+Math.imul(N,nt)|0)+Math.imul(O,rt)|0,o=o+Math.imul(O,nt)|0,n=n+Math.imul(P,ot)|0,i=(i=i+Math.imul(P,st)|0)+Math.imul(A,ot)|0,o=o+Math.imul(A,st)|0,n=n+Math.imul(E,ut)|0,i=(i=i+Math.imul(E,lt)|0)+Math.imul(k,ut)|0,o=o+Math.imul(k,lt)|0,n=n+Math.imul(w,ct)|0,i=(i=i+Math.imul(w,ft)|0)+Math.imul(_,ct)|0,o=o+Math.imul(_,ft)|0;var At=(l+(n=n+Math.imul(v,pt)|0)|0)+((8191&(i=(i=i+Math.imul(v,mt)|0)+Math.imul(y,pt)|0))<<13)|0;l=((o=o+Math.imul(y,mt)|0)+(i>>>13)|0)+(At>>>26)|0,At&=67108863,n=Math.imul(U,X),i=(i=Math.imul(U,$))+Math.imul(j,X)|0,o=Math.imul(j,$),n=n+Math.imul(I,Y)|0,i=(i=i+Math.imul(I,tt)|0)+Math.imul(F,Y)|0,o=o+Math.imul(F,tt)|0,n=n+Math.imul(T,rt)|0,i=(i=i+Math.imul(T,nt)|0)+Math.imul(C,rt)|0,o=o+Math.imul(C,nt)|0,n=n+Math.imul(N,ot)|0,i=(i=i+Math.imul(N,st)|0)+Math.imul(O,ot)|0,o=o+Math.imul(O,st)|0,n=n+Math.imul(P,ut)|0,i=(i=i+Math.imul(P,lt)|0)+Math.imul(A,ut)|0,o=o+Math.imul(A,lt)|0,n=n+Math.imul(E,ct)|0,i=(i=i+Math.imul(E,ft)|0)+Math.imul(k,ct)|0,o=o+Math.imul(k,ft)|0;var xt=(l+(n=n+Math.imul(w,pt)|0)|0)+((8191&(i=(i=i+Math.imul(w,mt)|0)+Math.imul(_,pt)|0))<<13)|0;l=((o=o+Math.imul(_,mt)|0)+(i>>>13)|0)+(xt>>>26)|0,xt&=67108863,n=Math.imul(U,Y),i=(i=Math.imul(U,tt))+Math.imul(j,Y)|0,o=Math.imul(j,tt),n=n+Math.imul(I,rt)|0,i=(i=i+Math.imul(I,nt)|0)+Math.imul(F,rt)|0,o=o+Math.imul(F,nt)|0,n=n+Math.imul(T,ot)|0,i=(i=i+Math.imul(T,st)|0)+Math.imul(C,ot)|0,o=o+Math.imul(C,st)|0,n=n+Math.imul(N,ut)|0,i=(i=i+Math.imul(N,lt)|0)+Math.imul(O,ut)|0,o=o+Math.imul(O,lt)|0,n=n+Math.imul(P,ct)|0,i=(i=i+Math.imul(P,ft)|0)+Math.imul(A,ct)|0,o=o+Math.imul(A,ft)|0;var Nt=(l+(n=n+Math.imul(E,pt)|0)|0)+((8191&(i=(i=i+Math.imul(E,mt)|0)+Math.imul(k,pt)|0))<<13)|0;l=((o=o+Math.imul(k,mt)|0)+(i>>>13)|0)+(Nt>>>26)|0,Nt&=67108863,n=Math.imul(U,rt),i=(i=Math.imul(U,nt))+Math.imul(j,rt)|0,o=Math.imul(j,nt),n=n+Math.imul(I,ot)|0,i=(i=i+Math.imul(I,st)|0)+Math.imul(F,ot)|0,o=o+Math.imul(F,st)|0,n=n+Math.imul(T,ut)|0,i=(i=i+Math.imul(T,lt)|0)+Math.imul(C,ut)|0,o=o+Math.imul(C,lt)|0,n=n+Math.imul(N,ct)|0,i=(i=i+Math.imul(N,ft)|0)+Math.imul(O,ct)|0,o=o+Math.imul(O,ft)|0;var Ot=(l+(n=n+Math.imul(P,pt)|0)|0)+((8191&(i=(i=i+Math.imul(P,mt)|0)+Math.imul(A,pt)|0))<<13)|0;l=((o=o+Math.imul(A,mt)|0)+(i>>>13)|0)+(Ot>>>26)|0,Ot&=67108863,n=Math.imul(U,ot),i=(i=Math.imul(U,st))+Math.imul(j,ot)|0,o=Math.imul(j,st),n=n+Math.imul(I,ut)|0,i=(i=i+Math.imul(I,lt)|0)+Math.imul(F,ut)|0,o=o+Math.imul(F,lt)|0,n=n+Math.imul(T,ct)|0,i=(i=i+Math.imul(T,ft)|0)+Math.imul(C,ct)|0,o=o+Math.imul(C,ft)|0;var Rt=(l+(n=n+Math.imul(N,pt)|0)|0)+((8191&(i=(i=i+Math.imul(N,mt)|0)+Math.imul(O,pt)|0))<<13)|0;l=((o=o+Math.imul(O,mt)|0)+(i>>>13)|0)+(Rt>>>26)|0,Rt&=67108863,n=Math.imul(U,ut),i=(i=Math.imul(U,lt))+Math.imul(j,ut)|0,o=Math.imul(j,lt),n=n+Math.imul(I,ct)|0,i=(i=i+Math.imul(I,ft)|0)+Math.imul(F,ct)|0,o=o+Math.imul(F,ft)|0;var Tt=(l+(n=n+Math.imul(T,pt)|0)|0)+((8191&(i=(i=i+Math.imul(T,mt)|0)+Math.imul(C,pt)|0))<<13)|0;l=((o=o+Math.imul(C,mt)|0)+(i>>>13)|0)+(Tt>>>26)|0,Tt&=67108863,n=Math.imul(U,ct),i=(i=Math.imul(U,ft))+Math.imul(j,ct)|0,o=Math.imul(j,ft);var Ct=(l+(n=n+Math.imul(I,pt)|0)|0)+((8191&(i=(i=i+Math.imul(I,mt)|0)+Math.imul(F,pt)|0))<<13)|0;l=((o=o+Math.imul(F,mt)|0)+(i>>>13)|0)+(Ct>>>26)|0,Ct&=67108863;var Bt=(l+(n=Math.imul(U,pt))|0)+((8191&(i=(i=Math.imul(U,mt))+Math.imul(j,pt)|0))<<13)|0;return l=((o=Math.imul(j,mt))+(i>>>13)|0)+(Bt>>>26)|0,Bt&=67108863,u[0]=gt,u[1]=vt,u[2]=yt,u[3]=bt,u[4]=wt,u[5]=_t,u[6]=Mt,u[7]=Et,u[8]=kt,u[9]=St,u[10]=Pt,u[11]=At,u[12]=xt,u[13]=Nt,u[14]=Ot,u[15]=Rt,u[16]=Tt,u[17]=Ct,u[18]=Bt,0!==l&&(u[19]=l,r.length++),r};function p(t,e,r){return(new m).mulp(t,e,r)}function m(t,e){this.x=t,this.y=e}Math.imul||(d=f),i.prototype.mulTo=function(t,e){var r=this.length+t.length;return 10===this.length&&10===t.length?d(this,t,e):r<63?f(this,t,e):r<1024?function(t,e,r){r.negative=e.negative^t.negative,r.length=t.length+e.length;for(var n=0,i=0,o=0;o>>26)|0)>>>26,s&=67108863}r.words[o]=a,n=s,s=i}return 0!==n?r.words[o]=n:r.length--,r.strip()}(this,t,e):p(this,t,e)},m.prototype.makeRBT=function(t){for(var e=new Array(t),r=i.prototype._countBits(t)-1,n=0;n>=1;return n},m.prototype.permute=function(t,e,r,n,i,o){for(var s=0;s>>=1)i++;return 1<>>=13,n[2*s+1]=8191&o,o>>>=13;for(s=2*e;s>=26,e+=i/67108864|0,e+=o>>>26,this.words[n]=67108863&o}return 0!==e&&(this.words[n]=e,this.length++),this},i.prototype.muln=function(t){return this.clone().imuln(t)},i.prototype.sqr=function(){return this.mul(this)},i.prototype.isqr=function(){return this.imul(this.clone())},i.prototype.pow=function(t){var e=function(t){for(var e=new Array(t.bitLength()),r=0;r>>i}return e}(t);if(0===e.length)return new i(1);for(var r=this,n=0;n=0);var e,n=t%26,i=(t-n)/26,o=67108863>>>26-n<<26-n;if(0!==n){var s=0;for(e=0;e>>26-n}s&&(this.words[e]=s,this.length++)}if(0!==i){for(e=this.length-1;e>=0;e--)this.words[e+i]=this.words[e];for(e=0;e=0),i=e?(e-e%26)/26:0;var o=t%26,s=Math.min((t-o)/26,this.length),a=67108863^67108863>>>o<s)for(this.length-=s,l=0;l=0&&(0!==h||l>=i);l--){var c=0|this.words[l];this.words[l]=h<<26-o|c>>>o,h=c&a}return u&&0!==h&&(u.words[u.length++]=h),0===this.length&&(this.words[0]=0,this.length=1),this.strip()},i.prototype.ishrn=function(t,e,n){return r(0===this.negative),this.iushrn(t,e,n)},i.prototype.shln=function(t){return this.clone().ishln(t)},i.prototype.ushln=function(t){return this.clone().iushln(t)},i.prototype.shrn=function(t){return this.clone().ishrn(t)},i.prototype.ushrn=function(t){return this.clone().iushrn(t)},i.prototype.testn=function(t){r("number"==typeof t&&t>=0);var e=t%26,n=(t-e)/26,i=1<=0);var e=t%26,n=(t-e)/26;if(r(0===this.negative,"imaskn works only with positive numbers"),this.length<=n)return this;if(0!==e&&n++,this.length=Math.min(n,this.length),0!==e){var i=67108863^67108863>>>e<=67108864;e++)this.words[e]-=67108864,e===this.length-1?this.words[e+1]=1:this.words[e+1]++;return this.length=Math.max(this.length,e+1),this},i.prototype.isubn=function(t){if(r("number"==typeof t),r(t<67108864),t<0)return this.iaddn(-t);if(0!==this.negative)return this.negative=0,this.iaddn(t),this.negative=1,this;if(this.words[0]-=t,1===this.length&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var e=0;e>26)-(u/67108864|0),this.words[i+n]=67108863&o}for(;i>26,this.words[i+n]=67108863&o;if(0===a)return this.strip();for(r(-1===a),a=0,i=0;i>26,this.words[i]=67108863&o;return this.negative=1,this.strip()},i.prototype._wordDiv=function(t,e){var r=(this.length,t.length),n=this.clone(),o=t,s=0|o.words[o.length-1];0!==(r=26-this._countBits(s))&&(o=o.ushln(r),n.iushln(r),s=0|o.words[o.length-1]);var a,u=n.length-o.length;if("mod"!==e){(a=new i(null)).length=u+1,a.words=new Array(a.length);for(var l=0;l=0;c--){var f=67108864*(0|n.words[o.length+c])+(0|n.words[o.length+c-1]);for(f=Math.min(f/s|0,67108863),n._ishlnsubmul(o,f,c);0!==n.negative;)f--,n.negative=0,n._ishlnsubmul(o,1,c),n.isZero()||(n.negative^=1);a&&(a.words[c]=f)}return a&&a.strip(),n.strip(),"div"!==e&&0!==r&&n.iushrn(r),{div:a||null,mod:n}},i.prototype.divmod=function(t,e,n){return r(!t.isZero()),this.isZero()?{div:new i(0),mod:new i(0)}:0!==this.negative&&0===t.negative?(a=this.neg().divmod(t,e),"mod"!==e&&(o=a.div.neg()),"div"!==e&&(s=a.mod.neg(),n&&0!==s.negative&&s.iadd(t)),{div:o,mod:s}):0===this.negative&&0!==t.negative?(a=this.divmod(t.neg(),e),"mod"!==e&&(o=a.div.neg()),{div:o,mod:a.mod}):0!=(this.negative&t.negative)?(a=this.neg().divmod(t.neg(),e),"div"!==e&&(s=a.mod.neg(),n&&0!==s.negative&&s.isub(t)),{div:a.div,mod:s}):t.length>this.length||this.cmp(t)<0?{div:new i(0),mod:this}:1===t.length?"div"===e?{div:this.divn(t.words[0]),mod:null}:"mod"===e?{div:null,mod:new i(this.modn(t.words[0]))}:{div:this.divn(t.words[0]),mod:new i(this.modn(t.words[0]))}:this._wordDiv(t,e);var o,s,a},i.prototype.div=function(t){return this.divmod(t,"div",!1).div},i.prototype.mod=function(t){return this.divmod(t,"mod",!1).mod},i.prototype.umod=function(t){return this.divmod(t,"mod",!0).mod},i.prototype.divRound=function(t){var e=this.divmod(t);if(e.mod.isZero())return e.div;var r=0!==e.div.negative?e.mod.isub(t):e.mod,n=t.ushrn(1),i=t.andln(1),o=r.cmp(n);return o<0||1===i&&0===o?e.div:0!==e.div.negative?e.div.isubn(1):e.div.iaddn(1)},i.prototype.modn=function(t){r(t<=67108863);for(var e=(1<<26)%t,n=0,i=this.length-1;i>=0;i--)n=(e*n+(0|this.words[i]))%t;return n},i.prototype.idivn=function(t){r(t<=67108863);for(var e=0,n=this.length-1;n>=0;n--){var i=(0|this.words[n])+67108864*e;this.words[n]=i/t|0,e=i%t}return this.strip()},i.prototype.divn=function(t){return this.clone().idivn(t)},i.prototype.egcd=function(t){r(0===t.negative),r(!t.isZero());var e=this,n=t.clone();e=0!==e.negative?e.umod(t):e.clone();for(var o=new i(1),s=new i(0),a=new i(0),u=new i(1),l=0;e.isEven()&&n.isEven();)e.iushrn(1),n.iushrn(1),++l;for(var h=n.clone(),c=e.clone();!e.isZero();){for(var f=0,d=1;0==(e.words[0]&d)&&f<26;++f,d<<=1);if(f>0)for(e.iushrn(f);f-- >0;)(o.isOdd()||s.isOdd())&&(o.iadd(h),s.isub(c)),o.iushrn(1),s.iushrn(1);for(var p=0,m=1;0==(n.words[0]&m)&&p<26;++p,m<<=1);if(p>0)for(n.iushrn(p);p-- >0;)(a.isOdd()||u.isOdd())&&(a.iadd(h),u.isub(c)),a.iushrn(1),u.iushrn(1);e.cmp(n)>=0?(e.isub(n),o.isub(a),s.isub(u)):(n.isub(e),a.isub(o),u.isub(s))}return{a:a,b:u,gcd:n.iushln(l)}},i.prototype._invmp=function(t){r(0===t.negative),r(!t.isZero());var e=this,n=t.clone();e=0!==e.negative?e.umod(t):e.clone();for(var o,s=new i(1),a=new i(0),u=n.clone();e.cmpn(1)>0&&n.cmpn(1)>0;){for(var l=0,h=1;0==(e.words[0]&h)&&l<26;++l,h<<=1);if(l>0)for(e.iushrn(l);l-- >0;)s.isOdd()&&s.iadd(u),s.iushrn(1);for(var c=0,f=1;0==(n.words[0]&f)&&c<26;++c,f<<=1);if(c>0)for(n.iushrn(c);c-- >0;)a.isOdd()&&a.iadd(u),a.iushrn(1);e.cmp(n)>=0?(e.isub(n),s.isub(a)):(n.isub(e),a.isub(s))}return(o=0===e.cmpn(1)?s:a).cmpn(0)<0&&o.iadd(t),o},i.prototype.gcd=function(t){if(this.isZero())return t.abs();if(t.isZero())return this.abs();var e=this.clone(),r=t.clone();e.negative=0,r.negative=0;for(var n=0;e.isEven()&&r.isEven();n++)e.iushrn(1),r.iushrn(1);for(;;){for(;e.isEven();)e.iushrn(1);for(;r.isEven();)r.iushrn(1);var i=e.cmp(r);if(i<0){var o=e;e=r,r=o}else if(0===i||0===r.cmpn(1))break;e.isub(r)}return r.iushln(n)},i.prototype.invm=function(t){return this.egcd(t).a.umod(t)},i.prototype.isEven=function(){return 0==(1&this.words[0])},i.prototype.isOdd=function(){return 1==(1&this.words[0])},i.prototype.andln=function(t){return this.words[0]&t},i.prototype.bincn=function(t){r("number"==typeof t);var e=t%26,n=(t-e)/26,i=1<>>26,a&=67108863,this.words[s]=a}return 0!==o&&(this.words[s]=o,this.length++),this},i.prototype.isZero=function(){return 1===this.length&&0===this.words[0]},i.prototype.cmpn=function(t){var e,n=t<0;if(0!==this.negative&&!n)return-1;if(0===this.negative&&n)return 1;if(this.strip(),this.length>1)e=1;else{n&&(t=-t),r(t<=67108863,"Number is too big");var i=0|this.words[0];e=i===t?0:it.length)return 1;if(this.length=0;r--){var n=0|this.words[r],i=0|t.words[r];if(n!==i){ni&&(e=1);break}}return e},i.prototype.gtn=function(t){return 1===this.cmpn(t)},i.prototype.gt=function(t){return 1===this.cmp(t)},i.prototype.gten=function(t){return this.cmpn(t)>=0},i.prototype.gte=function(t){return this.cmp(t)>=0},i.prototype.ltn=function(t){return-1===this.cmpn(t)},i.prototype.lt=function(t){return-1===this.cmp(t)},i.prototype.lten=function(t){return this.cmpn(t)<=0},i.prototype.lte=function(t){return this.cmp(t)<=0},i.prototype.eqn=function(t){return 0===this.cmpn(t)},i.prototype.eq=function(t){return 0===this.cmp(t)},i.red=function(t){return new M(t)},i.prototype.toRed=function(t){return r(!this.red,"Already a number in reduction context"),r(0===this.negative,"red works only with positives"),t.convertTo(this)._forceRed(t)},i.prototype.fromRed=function(){return r(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},i.prototype._forceRed=function(t){return this.red=t,this},i.prototype.forceRed=function(t){return r(!this.red,"Already a number in reduction context"),this._forceRed(t)},i.prototype.redAdd=function(t){return r(this.red,"redAdd works only with red numbers"),this.red.add(this,t)},i.prototype.redIAdd=function(t){return r(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,t)},i.prototype.redSub=function(t){return r(this.red,"redSub works only with red numbers"),this.red.sub(this,t)},i.prototype.redISub=function(t){return r(this.red,"redISub works only with red numbers"),this.red.isub(this,t)},i.prototype.redShl=function(t){return r(this.red,"redShl works only with red numbers"),this.red.shl(this,t)},i.prototype.redMul=function(t){return r(this.red,"redMul works only with red numbers"),this.red._verify2(this,t),this.red.mul(this,t)},i.prototype.redIMul=function(t){return r(this.red,"redMul works only with red numbers"),this.red._verify2(this,t),this.red.imul(this,t)},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(t){return r(this.red&&!t.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,t)};var g={k256:null,p224:null,p192:null,p25519:null};function v(t,e){this.name=t,this.p=new i(e,16),this.n=this.p.bitLength(),this.k=new i(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}function y(){v.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}function b(){v.call(this,"p224","ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001")}function w(){v.call(this,"p192","ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff")}function _(){v.call(this,"25519","7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed")}function M(t){if("string"==typeof t){var e=i._prime(t);this.m=e.p,this.prime=e}else r(t.gtn(1),"modulus must be greater than 1"),this.m=t,this.prime=null}function E(t){M.call(this,t),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 t=new i(null);return t.words=new Array(Math.ceil(this.n/13)),t},v.prototype.ireduce=function(t){var e,r=t;do{this.split(r,this.tmp),e=(r=(r=this.imulK(r)).iadd(this.tmp)).bitLength()}while(e>this.n);var n=e0?r.isub(this.p):void 0!==r.strip?r.strip():r._strip(),r},v.prototype.split=function(t,e){t.iushrn(this.n,0,e)},v.prototype.imulK=function(t){return t.imul(this.k)},n(y,v),y.prototype.split=function(t,e){for(var r=Math.min(t.length,9),n=0;n>>22,i=o}i>>>=22,t.words[n-10]=i,0===i&&t.length>10?t.length-=10:t.length-=9},y.prototype.imulK=function(t){t.words[t.length]=0,t.words[t.length+1]=0,t.length+=2;for(var e=0,r=0;r>>=26,t.words[r]=i,e=n}return 0!==e&&(t.words[t.length++]=e),t},i._prime=function(t){if(g[t])return g[t];var e;if("k256"===t)e=new y;else if("p224"===t)e=new b;else if("p192"===t)e=new w;else{if("p25519"!==t)throw new Error("Unknown prime "+t);e=new _}return g[t]=e,e},M.prototype._verify1=function(t){r(0===t.negative,"red works only with positives"),r(t.red,"red works only with red numbers")},M.prototype._verify2=function(t,e){r(0==(t.negative|e.negative),"red works only with positives"),r(t.red&&t.red===e.red,"red works only with red numbers")},M.prototype.imod=function(t){return this.prime?this.prime.ireduce(t)._forceRed(this):t.umod(this.m)._forceRed(this)},M.prototype.neg=function(t){return t.isZero()?t.clone():this.m.sub(t)._forceRed(this)},M.prototype.add=function(t,e){this._verify2(t,e);var r=t.add(e);return r.cmp(this.m)>=0&&r.isub(this.m),r._forceRed(this)},M.prototype.iadd=function(t,e){this._verify2(t,e);var r=t.iadd(e);return r.cmp(this.m)>=0&&r.isub(this.m),r},M.prototype.sub=function(t,e){this._verify2(t,e);var r=t.sub(e);return r.cmpn(0)<0&&r.iadd(this.m),r._forceRed(this)},M.prototype.isub=function(t,e){this._verify2(t,e);var r=t.isub(e);return r.cmpn(0)<0&&r.iadd(this.m),r},M.prototype.shl=function(t,e){return this._verify1(t),this.imod(t.ushln(e))},M.prototype.imul=function(t,e){return this._verify2(t,e),this.imod(t.imul(e))},M.prototype.mul=function(t,e){return this._verify2(t,e),this.imod(t.mul(e))},M.prototype.isqr=function(t){return this.imul(t,t.clone())},M.prototype.sqr=function(t){return this.mul(t,t)},M.prototype.sqrt=function(t){if(t.isZero())return t.clone();var e=this.m.andln(3);if(r(e%2==1),3===e){var n=this.m.add(new i(1)).iushrn(2);return this.pow(t,n)}for(var o=this.m.subn(1),s=0;!o.isZero()&&0===o.andln(1);)s++,o.iushrn(1);r(!o.isZero());var a=new i(1).toRed(this),u=a.redNeg(),l=this.m.subn(1).iushrn(1),h=this.m.bitLength();for(h=new i(2*h*h).toRed(this);0!==this.pow(h,l).cmp(u);)h.redIAdd(u);for(var c=this.pow(h,o),f=this.pow(t,o.addn(1).iushrn(1)),d=this.pow(t,o),p=s;0!==d.cmp(a);){for(var m=d,g=0;0!==m.cmp(a);g++)m=m.redSqr();r(g=0;n--){for(var l=e.words[n],h=u-1;h>=0;h--){var c=l>>h&1;o!==r[0]&&(o=this.sqr(o)),0!==c||0!==s?(s<<=1,s|=c,(4===++a||0===n&&0===h)&&(o=this.mul(o,r[s]),a=0,s=0)):a=0}u=26}return o},M.prototype.convertTo=function(t){var e=t.umod(this.m);return e===t?e.clone():e},M.prototype.convertFrom=function(t){var e=t.clone();return e.red=null,e},i.mont=function(t){return new E(t)},n(E,M),E.prototype.convertTo=function(t){return this.imod(t.ushln(this.shift))},E.prototype.convertFrom=function(t){var e=this.imod(t.mul(this.rinv));return e.red=null,e},E.prototype.imul=function(t,e){if(t.isZero()||e.isZero())return t.words[0]=0,t.length=1,t;var r=t.imul(e),n=r.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),i=r.isub(n).iushrn(this.shift),o=i;return i.cmp(this.m)>=0?o=i.isub(this.m):i.cmpn(0)<0&&(o=i.iadd(this.m)),o._forceRed(this)},E.prototype.mul=function(t,e){if(t.isZero()||e.isZero())return new i(0)._forceRed(this);var r=t.mul(e),n=r.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),o=r.isub(n).iushrn(this.shift),s=o;return o.cmp(this.m)>=0?s=o.isub(this.m):o.cmpn(0)<0&&(s=o.iadd(this.m)),s._forceRed(this)},E.prototype.invm=function(t){return this.imod(t._invmp(this.m).mul(this.r2))._forceRed(this)}}(t,e)})),Ae=n((function(t,e){var r=e;function n(t){return 1===t.length?"0"+t:t}function i(t){for(var e="",r=0;r>8,s=255&i;o?r.push(o,s):r.push(s)}return r},r.zero2=n,r.toHex=i,r.encode=function(t,e){return"hex"===e?i(t):t}})),xe=n((function(t,e){var r=e;r.assert=et,r.toArray=Ae.toArray,r.zero2=Ae.zero2,r.toHex=Ae.toHex,r.encode=Ae.encode,r.getNAF=function(t,e,r){var n=new Array(Math.max(t.bitLength(),r)+1);n.fill(0);for(var i=1<(i>>1)-1?(i>>1)-u:u,o.isubn(a)):a=0,n[s]=a,o.iushrn(1)}return n},r.getJSF=function(t,e){var r=[[],[]];t=t.clone(),e=e.clone();for(var n=0,i=0;t.cmpn(-n)>0||e.cmpn(-i)>0;){var o,s,a,u=t.andln(3)+n&3,l=e.andln(3)+i&3;if(3===u&&(u=-1),3===l&&(l=-1),0==(1&u))o=0;else o=3!==(a=t.andln(7)+n&7)&&5!==a||2!==l?u:-u;if(r[0].push(o),0==(1&l))s=0;else s=3!==(a=e.andln(7)+i&7)&&5!==a||2!==u?l:-l;r[1].push(s),2*n===o+1&&(n=1-n),2*i===s+1&&(i=1-i),t.iushrn(1),e.iushrn(1)}return r},r.cachedProperty=function(t,e,r){var n="_"+e;t.prototype[e]=function(){return void 0!==this[n]?this[n]:this[n]=r.call(this)}},r.parseBytes=function(t){return"string"==typeof t?r.toArray(t,"hex"):t},r.intFromLE=function(t){return new Pe(t,"hex","le")}})),Ne=function(t){var r=new Uint8Array(t);return(e.crypto||e.msCrypto).getRandomValues(r),r},Oe=xe.getNAF,Re=xe.getJSF,Te=xe.assert;function Ce(t,e){this.type=t,this.p=new Pe(e.p,16),this.red=e.prime?Pe.red(e.prime):Pe.mont(this.p),this.zero=new Pe(0).toRed(this.red),this.one=new Pe(1).toRed(this.red),this.two=new Pe(2).toRed(this.red),this.n=e.n&&new Pe(e.n,16),this.g=e.g&&this.pointFromJSON(e.g,e.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 Be=Ce;function Ie(t,e){this.curve=t,this.type=e,this.precomputed=null}Ce.prototype.point=function(){throw new Error("Not implemented")},Ce.prototype.validate=function(){throw new Error("Not implemented")},Ce.prototype._fixedNafMul=function(t,e){Te(t.precomputed);var r=t._getDoubles(),n=Oe(e,1,this._bitLength),i=(1<=s;e--)a=(a<<1)+n[e];o.push(a)}for(var u=this.jpoint(null,null,null),l=this.jpoint(null,null,null),h=i;h>0;h--){for(s=0;s=0;a--){for(e=0;a>=0&&0===o[a];a--)e++;if(a>=0&&e++,s=s.dblp(e),a<0)break;var u=o[a];Te(0!==u),s="affine"===t.type?u>0?s.mixedAdd(i[u-1>>1]):s.mixedAdd(i[-u-1>>1].neg()):u>0?s.add(i[u-1>>1]):s.add(i[-u-1>>1].neg())}return"affine"===t.type?s.toP():s},Ce.prototype._wnafMulAdd=function(t,e,r,n,i){for(var o=this._wnafT1,s=this._wnafT2,a=this._wnafT3,u=0,l=0;l=1;l-=2){var c=l-1,f=l;if(1===o[c]&&1===o[f]){var d=[e[c],null,null,e[f]];0===e[c].y.cmp(e[f].y)?(d[1]=e[c].add(e[f]),d[2]=e[c].toJ().mixedAdd(e[f].neg())):0===e[c].y.cmp(e[f].y.redNeg())?(d[1]=e[c].toJ().mixedAdd(e[f]),d[2]=e[c].add(e[f].neg())):(d[1]=e[c].toJ().mixedAdd(e[f]),d[2]=e[c].toJ().mixedAdd(e[f].neg()));var p=[-3,-1,-5,-7,0,7,5,1,3],m=Re(r[c],r[f]);u=Math.max(m[0].length,u),a[c]=new Array(u),a[f]=new Array(u);for(var g=0;g=0;l--){for(var _=0;l>=0;){var M=!0;for(g=0;g=0&&_++,b=b.dblp(_),l<0)break;for(g=0;g0?E=s[g][k-1>>1]:k<0&&(E=s[g][-k-1>>1].neg()),b="affine"===E.type?b.mixedAdd(E):b.add(E))}}for(l=0;l=Math.ceil((t.bitLength()+1)/e.step)},Ie.prototype._getDoubles=function(t,e){if(this.precomputed&&this.precomputed.doubles)return this.precomputed.doubles;for(var r=[this],n=this,i=0;i=0&&(o=e,s=r),n.negative&&(n=n.neg(),i=i.neg()),o.negative&&(o=o.neg(),s=s.neg()),[{a:n,b:i},{a:o,b:s}]},Le.prototype._endoSplit=function(t){var e=this.endo.basis,r=e[0],n=e[1],i=n.b.mul(t).divRound(this.n),o=r.b.neg().mul(t).divRound(this.n),s=i.mul(r.a),a=o.mul(n.a),u=i.mul(r.b),l=o.mul(n.b);return{k1:t.sub(s).sub(a),k2:u.add(l).neg()}},Le.prototype.pointFromX=function(t,e){(t=new Pe(t,16)).red||(t=t.toRed(this.red));var r=t.redSqr().redMul(t).redIAdd(t.redMul(this.a)).redIAdd(this.b),n=r.redSqrt();if(0!==n.redSqr().redSub(r).cmp(this.zero))throw new Error("invalid point");var i=n.fromRed().isOdd();return(e&&!i||!e&&i)&&(n=n.redNeg()),this.point(t,n)},Le.prototype.validate=function(t){if(t.inf)return!0;var e=t.x,r=t.y,n=this.a.redMul(e),i=e.redSqr().redMul(e).redIAdd(n).redIAdd(this.b);return 0===r.redSqr().redISub(i).cmpn(0)},Le.prototype._endoWnafMulAdd=function(t,e,r){for(var n=this._endoWnafT1,i=this._endoWnafT2,o=0;o":""},je.prototype.isInfinity=function(){return this.inf},je.prototype.add=function(t){if(this.inf)return t;if(t.inf)return this;if(this.eq(t))return this.dbl();if(this.neg().eq(t))return this.curve.point(null,null);if(0===this.x.cmp(t.x))return this.curve.point(null,null);var e=this.y.redSub(t.y);0!==e.cmpn(0)&&(e=e.redMul(this.x.redSub(t.x).redInvm()));var r=e.redSqr().redISub(this.x).redISub(t.x),n=e.redMul(this.x.redSub(r)).redISub(this.y);return this.curve.point(r,n)},je.prototype.dbl=function(){if(this.inf)return this;var t=this.y.redAdd(this.y);if(0===t.cmpn(0))return this.curve.point(null,null);var e=this.curve.a,r=this.x.redSqr(),n=t.redInvm(),i=r.redAdd(r).redIAdd(r).redIAdd(e).redMul(n),o=i.redSqr().redISub(this.x.redAdd(this.x)),s=i.redMul(this.x.redSub(o)).redISub(this.y);return this.curve.point(o,s)},je.prototype.getX=function(){return this.x.fromRed()},je.prototype.getY=function(){return this.y.fromRed()},je.prototype.mul=function(t){return t=new Pe(t,16),this.isInfinity()?this:this._hasDoubles(t)?this.curve._fixedNafMul(this,t):this.curve.endo?this.curve._endoWnafMulAdd([this],[t]):this.curve._wnafMul(this,t)},je.prototype.mulAdd=function(t,e,r){var n=[this,e],i=[t,r];return this.curve.endo?this.curve._endoWnafMulAdd(n,i):this.curve._wnafMulAdd(1,n,i,2)},je.prototype.jmulAdd=function(t,e,r){var n=[this,e],i=[t,r];return this.curve.endo?this.curve._endoWnafMulAdd(n,i,!0):this.curve._wnafMulAdd(1,n,i,2,!0)},je.prototype.eq=function(t){return this===t||this.inf===t.inf&&(this.inf||0===this.x.cmp(t.x)&&0===this.y.cmp(t.y))},je.prototype.neg=function(t){if(this.inf)return this;var e=this.curve.point(this.x,this.y.redNeg());if(t&&this.precomputed){var r=this.precomputed,n=function(t){return t.neg()};e.precomputed={naf:r.naf&&{wnd:r.naf.wnd,points:r.naf.points.map(n)},doubles:r.doubles&&{step:r.doubles.step,points:r.doubles.points.map(n)}}}return e},je.prototype.toJ=function(){return this.inf?this.curve.jpoint(null,null,null):this.curve.jpoint(this.x,this.y,this.curve.one)},nt(De,Be.BasePoint),Le.prototype.jpoint=function(t,e,r){return new De(this,t,e,r)},De.prototype.toP=function(){if(this.isInfinity())return this.curve.point(null,null);var t=this.z.redInvm(),e=t.redSqr(),r=this.x.redMul(e),n=this.y.redMul(e).redMul(t);return this.curve.point(r,n)},De.prototype.neg=function(){return this.curve.jpoint(this.x,this.y.redNeg(),this.z)},De.prototype.add=function(t){if(this.isInfinity())return t;if(t.isInfinity())return this;var e=t.z.redSqr(),r=this.z.redSqr(),n=this.x.redMul(e),i=t.x.redMul(r),o=this.y.redMul(e.redMul(t.z)),s=t.y.redMul(r.redMul(this.z)),a=n.redSub(i),u=o.redSub(s);if(0===a.cmpn(0))return 0!==u.cmpn(0)?this.curve.jpoint(null,null,null):this.dbl();var l=a.redSqr(),h=l.redMul(a),c=n.redMul(l),f=u.redSqr().redIAdd(h).redISub(c).redISub(c),d=u.redMul(c.redISub(f)).redISub(o.redMul(h)),p=this.z.redMul(t.z).redMul(a);return this.curve.jpoint(f,d,p)},De.prototype.mixedAdd=function(t){if(this.isInfinity())return t.toJ();if(t.isInfinity())return this;var e=this.z.redSqr(),r=this.x,n=t.x.redMul(e),i=this.y,o=t.y.redMul(e).redMul(this.z),s=r.redSub(n),a=i.redSub(o);if(0===s.cmpn(0))return 0!==a.cmpn(0)?this.curve.jpoint(null,null,null):this.dbl();var u=s.redSqr(),l=u.redMul(s),h=r.redMul(u),c=a.redSqr().redIAdd(l).redISub(h).redISub(h),f=a.redMul(h.redISub(c)).redISub(i.redMul(l)),d=this.z.redMul(s);return this.curve.jpoint(c,f,d)},De.prototype.dblp=function(t){if(0===t)return this;if(this.isInfinity())return this;if(!t)return this.dbl();if(this.curve.zeroA||this.curve.threeA){for(var e=this,r=0;r=0)return!1;if(r.redIAdd(i),0===this.x.cmp(r))return!0}},De.prototype.inspect=function(){return this.isInfinity()?"":""},De.prototype.isInfinity=function(){return 0===this.z.cmpn(0)};var ze={},Ke={},He=n((function(t,e){var r=e;r.base=Be,r.short=Ue,r.mont=ze,r.edwards=Ke})),We=n((function(t,e){var r,n=e,i=xe.assert;function o(t){"short"===t.type?this.curve=new He.short(t):"edwards"===t.type?this.curve=new He.edwards(t):this.curve=new He.mont(t),this.g=this.curve.g,this.n=this.curve.n,this.hash=t.hash,i(this.g.validate(),"Invalid curve"),i(this.g.mul(this.n).isInfinity(),"Invalid curve, G*N != O")}function s(t,e){Object.defineProperty(n,t,{configurable:!0,enumerable:!0,get:function(){var r=new o(e);return Object.defineProperty(n,t,{configurable:!0,enumerable:!0,value:r}),r}})}n.PresetCurve=o,s("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:we.sha256,gRed:!1,g:["188da80e b03090f6 7cbf20eb 43a18800 f4ff0afd 82ff1012","07192b95 ffc8da78 631011ed 6b24cdd5 73f977a1 1e794811"]}),s("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:we.sha256,gRed:!1,g:["b70e0cbd 6bb4bf7f 321390b9 4a03c1d3 56c21122 343280d6 115c1d21","bd376388 b5f723fb 4c22dfe6 cd4375a0 5a074764 44d58199 85007e34"]}),s("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:we.sha256,gRed:!1,g:["6b17d1f2 e12c4247 f8bce6e5 63a440f2 77037d81 2deb33a0 f4a13945 d898c296","4fe342e2 fe1a7f9b 8ee7eb4a 7c0f9e16 2bce3357 6b315ece cbb64068 37bf51f5"]}),s("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:we.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"]}),s("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:we.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"]}),s("curve25519",{type:"mont",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"76d06",b:"1",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:we.sha256,gRed:!1,g:["9"]}),s("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:we.sha256,gRed:!1,g:["216936d3cd6e53fec0a4e231fdd6dc5c692cc7609525a7b2c9562d608f25d51a","6666666666666666666666666666666666666666666666666666666666666658"]});try{r=void 0}catch(t){r=void 0}s("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:we.sha256,beta:"7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee",lambda:"5363ad4cc05c30e0a5261c028812645a122e22ea20816678df02967c1b23bd72",basis:[{a:"3086d221a7d46bcde86c90e49284eb15",b:"-e4437ed6010e88286f547fa90abfe4c3"},{a:"114ca50f7a8e2f3f657c1108d9d44cfd8",b:"3086d221a7d46bcde86c90e49284eb15"}],gRed:!1,g:["79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798","483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8",r]})}));function qe(t){if(!(this instanceof qe))return new qe(t);this.hash=t.hash,this.predResist=!!t.predResist,this.outLen=this.hash.outSize,this.minEntropy=t.minEntropy||this.hash.hmacStrength,this._reseed=null,this.reseedInterval=null,this.K=null,this.V=null;var e=Ae.toArray(t.entropy,t.entropyEnc||"hex"),r=Ae.toArray(t.nonce,t.nonceEnc||"hex"),n=Ae.toArray(t.pers,t.persEnc||"hex");et(e.length>=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits"),this._init(e,r,n)}var Ge=qe;qe.prototype._init=function(t,e,r){var n=t.concat(e).concat(r);this.K=new Array(this.outLen/8),this.V=new Array(this.outLen/8);for(var i=0;i=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits"),this._update(t.concat(r||[])),this._reseed=1},qe.prototype.generate=function(t,e,r,n){if(this._reseed>this.reseedInterval)throw new Error("Reseed is required");"string"!=typeof e&&(n=r,r=e,e=null),r&&(r=Ae.toArray(r,n||"hex"),this._update(r));for(var i=[];i.length"};var Xe=xe.assert;function $e(t,e){if(t instanceof $e)return t;this._importDER(t,e)||(Xe(t.r&&t.s,"Signature without r or s"),this.r=new Pe(t.r,16),this.s=new Pe(t.s,16),void 0===t.recoveryParam?this.recoveryParam=null:this.recoveryParam=t.recoveryParam)}var Qe=$e;function Ye(){this.place=0}function tr(t,e){var r=t[e.place++];if(!(128&r))return r;var n=15&r;if(0===n||n>4)return!1;for(var i=0,o=0,s=e.place;o>>=0;return!(i<=127)&&(e.place=s,i)}function er(t){for(var e=0,r=t.length-1;!t[e]&&!(128&t[e+1])&&e>>3);for(t.push(128|r);--r;)t.push(e>>>(r<<3)&255);t.push(e)}}$e.prototype._importDER=function(t,e){t=xe.toArray(t,e);var r=new Ye;if(48!==t[r.place++])return!1;var n=tr(t,r);if(!1===n)return!1;if(n+r.place!==t.length)return!1;if(2!==t[r.place++])return!1;var i=tr(t,r);if(!1===i)return!1;var o=t.slice(r.place,i+r.place);if(r.place+=i,2!==t[r.place++])return!1;var s=tr(t,r);if(!1===s)return!1;if(t.length!==s+r.place)return!1;var a=t.slice(r.place,s+r.place);if(0===o[0]){if(!(128&o[1]))return!1;o=o.slice(1)}if(0===a[0]){if(!(128&a[1]))return!1;a=a.slice(1)}return this.r=new Pe(o),this.s=new Pe(a),this.recoveryParam=null,!0},$e.prototype.toDER=function(t){var e=this.r.toArray(),r=this.s.toArray();for(128&e[0]&&(e=[0].concat(e)),128&r[0]&&(r=[0].concat(r)),e=er(e),r=er(r);!(r[0]||128&r[1]);)r=r.slice(1);var n=[2];rr(n,e.length),(n=n.concat(e)).push(2),rr(n,r.length);var i=n.concat(r),o=[48];return rr(o,i.length),o=o.concat(i),xe.encode(o,t)};var nr=xe.assert;function ir(t){if(!(this instanceof ir))return new ir(t);"string"==typeof t&&(nr(We.hasOwnProperty(t),"Unknown curve "+t),t=We[t]),t instanceof We.PresetCurve&&(t={curve:t}),this.curve=t.curve.curve,this.n=this.curve.n,this.nh=this.n.ushrn(1),this.g=this.curve.g,this.g=t.curve.g,this.g.precompute(t.curve.n.bitLength()+1),this.hash=t.hash||t.curve.hash}var or=ir;ir.prototype.keyPair=function(t){return new Ze(this,t)},ir.prototype.keyFromPrivate=function(t,e){return Ze.fromPrivate(this,t,e)},ir.prototype.keyFromPublic=function(t,e){return Ze.fromPublic(this,t,e)},ir.prototype.genKeyPair=function(t){t||(t={});for(var e=new Ge({hash:this.hash,pers:t.pers,persEnc:t.persEnc||"utf8",entropy:t.entropy||Ne(this.hash.hmacStrength),entropyEnc:t.entropy&&t.entropyEnc||"utf8",nonce:this.n.toArray()}),r=this.n.byteLength(),n=this.n.sub(new Pe(2));;){var i=new Pe(e.generate(r));if(!(i.cmp(n)>0))return i.iaddn(1),this.keyFromPrivate(i)}},ir.prototype._truncateToN=function(t,e){var r=8*t.byteLength()-this.n.bitLength();return r>0&&(t=t.ushrn(r)),!e&&t.cmp(this.n)>=0?t.sub(this.n):t},ir.prototype.sign=function(t,e,r,n){"object"==typeof r&&(n=r,r=null),n||(n={}),e=this.keyFromPrivate(e,r),t=this._truncateToN(new Pe(t,16));for(var i=this.n.byteLength(),o=e.getPrivate().toArray("be",i),s=t.toArray("be",i),a=new Ge({hash:this.hash,entropy:o,nonce:s,pers:n.pers,persEnc:n.persEnc||"utf8"}),u=this.n.sub(new Pe(1)),l=0;;l++){var h=n.k?n.k(l):new Pe(a.generate(this.n.byteLength()));if(!((h=this._truncateToN(h,!0)).cmpn(1)<=0||h.cmp(u)>=0)){var c=this.g.mul(h);if(!c.isInfinity()){var f=c.getX(),d=f.umod(this.n);if(0!==d.cmpn(0)){var p=h.invm(this.n).mul(d.mul(e.getPrivate()).iadd(t));if(0!==(p=p.umod(this.n)).cmpn(0)){var m=(c.getY().isOdd()?1:0)|(0!==f.cmp(d)?2:0);return n.canonical&&p.cmp(this.nh)>0&&(p=this.n.sub(p),m^=1),new Qe({r:d,s:p,recoveryParam:m})}}}}}},ir.prototype.verify=function(t,e,r,n){t=this._truncateToN(new Pe(t,16)),r=this.keyFromPublic(r,n);var i=(e=new Qe(e,"hex")).r,o=e.s;if(i.cmpn(1)<0||i.cmp(this.n)>=0)return!1;if(o.cmpn(1)<0||o.cmp(this.n)>=0)return!1;var s,a=o.invm(this.n),u=a.mul(t).umod(this.n),l=a.mul(i).umod(this.n);return this.curve._maxwellTrick?!(s=this.g.jmulAdd(u,r.getPublic(),l)).isInfinity()&&s.eqXToP(i):!(s=this.g.mulAdd(u,r.getPublic(),l)).isInfinity()&&0===s.getX().umod(this.n).cmp(i)},ir.prototype.recoverPubKey=function(t,e,r,n){nr((3&r)===r,"The recovery param is more than two bits"),e=new Qe(e,n);var i=this.n,o=new Pe(t),s=e.r,a=e.s,u=1&r,l=r>>1;if(s.cmp(this.curve.p.umod(this.curve.n))>=0&&l)throw new Error("Unable to find sencond key candinate");s=l?this.curve.pointFromX(s.add(this.curve.n),u):this.curve.pointFromX(s,u);var h=e.r.invm(i),c=i.sub(o).mul(h).umod(i),f=a.mul(h).umod(i);return this.g.mulAdd(c,s,f)},ir.prototype.getKeyRecoveryParam=function(t,e,r,n){if(null!==(e=new Qe(e,n)).recoveryParam)return e.recoveryParam;for(var i=0;i<4;i++){var o;try{o=this.recoverPubKey(t,e,i)}catch(t){continue}if(o.eq(r))return i}throw new Error("Unable to find valid recovery factor")};var sr,ar={},ur=i(Se),lr=n((function(t,e){var r=e;r.version=ur.version,r.utils=xe,r.rand=Ne,r.curve=He,r.curves=We,r.ec=or,r.eddsa=ar})),hr=(lr.ec,n((function(t,e){Object.defineProperty(e,"__esModule",{value:!0}),e.version="signing-key/5.0.3"}))),cr=(r(hr),hr.version,n((function(t,e){Object.defineProperty(e,"__esModule",{value:!0});var r=new l.Logger(hr.version),n=null;function i(){return n||(n=new lr.ec("secp256k1")),n}var o=function(){function t(t){v.defineReadOnly(this,"curve","secp256k1"),v.defineReadOnly(this,"privateKey",c.hexlify(t));var e=i().keyFromPrivate(c.arrayify(this.privateKey));v.defineReadOnly(this,"publicKey","0x"+e.getPublic(!1,"hex")),v.defineReadOnly(this,"compressedPublicKey","0x"+e.getPublic(!0,"hex")),v.defineReadOnly(this,"_isSigningKey",!0)}return t.prototype._addPoint=function(t){var e=i().keyFromPublic(c.arrayify(this.publicKey)),r=i().keyFromPublic(c.arrayify(t));return"0x"+e.pub.add(r.pub).encodeCompressed("hex")},t.prototype.signDigest=function(t){var e=i().keyFromPrivate(c.arrayify(this.privateKey)).sign(c.arrayify(t),{canonical:!0});return c.splitSignature({recoveryParam:e.recoveryParam,r:c.hexZeroPad("0x"+e.r.toString(16),32),s:c.hexZeroPad("0x"+e.s.toString(16),32)})},t.prototype.computeSharedSecret=function(t){var e=i().keyFromPrivate(c.arrayify(this.privateKey)),r=i().keyFromPublic(c.arrayify(s(t)));return c.hexZeroPad("0x"+e.derive(r.getPublic()).toString(16),32)},t.isSigningKey=function(t){return!(!t||!t._isSigningKey)},t}();function s(t,e){var n=c.arrayify(t);if(32===n.length){var s=new o(n);return e?"0x"+i().keyFromPrivate(n).getPublic(!0,"hex"):s.publicKey}return 33===n.length?e?c.hexlify(n):"0x"+i().keyFromPublic(n).getPublic(!1,"hex"):65===n.length?e?"0x"+i().keyFromPublic(n).getPublic(!0,"hex"):c.hexlify(n):r.throwArgumentError("invalid public or private key","key","[REDACTED]")}e.SigningKey=o,e.recoverPublicKey=function(t,e){var r=c.splitSignature(e),n={r:c.arrayify(r.r),s:c.arrayify(r.s)};return"0x"+i().recoverPubKey(c.arrayify(t),n,r.recoveryParam).encode("hex",!1)},e.computePublicKey=s}))),fr=(r(cr),cr.SigningKey,cr.recoverPublicKey,cr.computePublicKey,n((function(t,e){Object.defineProperty(e,"__esModule",{value:!0}),e.version="transactions/5.0.2"}))),dr=(r(fr),fr.version,n((function(t,r){var n=e&&e.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(null!=t)for(var r in t)Object.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e.default=t,e};Object.defineProperty(r,"__esModule",{value:!0});var i=n(k),o=new l.Logger(fr.version);function s(t){return"0x"===t?B.Zero:m.BigNumber.from(t)}var a=[{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"}],u={chainId:!0,data:!0,gasLimit:!0,gasPrice:!0,nonce:!0,to:!0,value:!0};function h(t){var e=cr.computePublicKey(t);return P.getAddress(c.hexDataSlice(M.keccak256(c.hexDataSlice(e,1)),12))}function f(t,e){return h(cr.recoverPublicKey(c.arrayify(t),e))}r.computeAddress=h,r.recoverAddress=f,r.serialize=function(t,e){v.checkProperties(t,u);var r=[];a.forEach((function(e){var n=t[e.name]||[],i={};e.numeric&&(i.hexPad="left"),n=c.arrayify(c.hexlify(n,i)),e.length&&n.length!==e.length&&n.length>0&&o.throwArgumentError("invalid length for "+e.name,"transaction:"+e.name,n),e.maxLength&&(n=c.stripZeros(n)).length>e.maxLength&&o.throwArgumentError("invalid length for "+e.name,"transaction:"+e.name,n),r.push(c.hexlify(n))}));var n=0;if(null!=t.chainId?"number"!=typeof(n=t.chainId)&&o.throwArgumentError("invalid transaction.chainId","transaction",t):e&&!c.isBytesLike(e)&&e.v>28&&(n=Math.floor((e.v-35)/2)),0!==n&&(r.push(c.hexlify(n)),r.push("0x"),r.push("0x")),!e)return i.encode(r);var s=c.splitSignature(e),l=27+s.recoveryParam;return 0!==n?(r.pop(),r.pop(),r.pop(),l+=2*n+8,s.v>28&&s.v!==l&&o.throwArgumentError("transaction.chainId/signature.v mismatch","signature",e)):s.v!==l&&o.throwArgumentError("transaction.chainId/signature.v mismatch","signature",e),r.push(c.hexlify(l)),r.push(c.stripZeros(c.arrayify(s.r))),r.push(c.stripZeros(c.arrayify(s.s))),i.encode(r)},r.parse=function(t){var e=i.decode(t);9!==e.length&&6!==e.length&&o.throwArgumentError("invalid raw transaction","rawTransaction",t);var r,n={nonce:s(e[0]).toNumber(),gasPrice:s(e[1]),gasLimit:s(e[2]),to:(r=e[3],"0x"===r?null:P.getAddress(r)),value:s(e[4]),data:e[5],chainId:0};if(6===e.length)return n;try{n.v=m.BigNumber.from(e[6]).toNumber()}catch(t){return console.log(t),n}if(n.r=c.hexZeroPad(e[7],32),n.s=c.hexZeroPad(e[8],32),m.BigNumber.from(n.r).isZero()&&m.BigNumber.from(n.s).isZero())n.chainId=n.v,n.v=0;else{n.chainId=Math.floor((n.v-35)/2),n.chainId<0&&(n.chainId=0);var a=n.v-27,u=e.slice(0,6);0!==n.chainId&&(u.push(c.hexlify(n.chainId)),u.push("0x"),u.push("0x"),a-=2*n.chainId+8);var l=M.keccak256(i.encode(u));try{n.from=f(l,{r:c.hexlify(n.r),s:c.hexlify(n.s),recoveryParam:a})}catch(t){console.log(t)}n.hash=M.keccak256(t)}return n}}))),pr=(r(dr),dr.computeAddress,dr.recoverAddress,dr.serialize,dr.parse,n((function(t,e){Object.defineProperty(e,"__esModule",{value:!0}),e.version="wordlists/5.0.2"}))),mr=(r(pr),pr.version,n((function(t,e){Object.defineProperty(e,"__esModule",{value:!0});e.logger=new l.Logger(pr.version);var r=function(){function t(r){var n=this.constructor;e.logger.checkAbstract(n,t),v.defineReadOnly(this,"locale",r)}return t.prototype.split=function(t){return t.toLowerCase().split(/ +/g)},t.prototype.join=function(t){return t.join(" ")},t.check=function(t){for(var e=[],r=0;r<2048;r++){var n=t.getWord(r);if(r!==t.getWordIndex(n))return"0x";e.push(n)}return q.id(e.join("\n")+"\n")},t.register=function(t,e){e||(e=t.locale)},t}();e.Wordlist=r}))),gr=(r(mr),mr.logger,mr.Wordlist,n((function(t,r){var n,i=e&&e.__extends||(n=function(t,e){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(t,e)},function(t,e){function r(){this.constructor=t}n(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)});Object.defineProperty(r,"__esModule",{value:!0});var o=null;function s(t){if(null==o&&(o="AbandonAbilityAbleAboutAboveAbsentAbsorbAbstractAbsurdAbuseAccessAccidentAccountAccuseAchieveAcidAcousticAcquireAcrossActActionActorActressActualAdaptAddAddictAddressAdjustAdmitAdultAdvanceAdviceAerobicAffairAffordAfraidAgainAgeAgentAgreeAheadAimAirAirportAisleAlarmAlbumAlcoholAlertAlienAllAlleyAllowAlmostAloneAlphaAlreadyAlsoAlterAlwaysAmateurAmazingAmongAmountAmusedAnalystAnchorAncientAngerAngleAngryAnimalAnkleAnnounceAnnualAnotherAnswerAntennaAntiqueAnxietyAnyApartApologyAppearAppleApproveAprilArchArcticAreaArenaArgueArmArmedArmorArmyAroundArrangeArrestArriveArrowArtArtefactArtistArtworkAskAspectAssaultAssetAssistAssumeAsthmaAthleteAtomAttackAttendAttitudeAttractAuctionAuditAugustAuntAuthorAutoAutumnAverageAvocadoAvoidAwakeAwareAwayAwesomeAwfulAwkwardAxisBabyBachelorBaconBadgeBagBalanceBalconyBallBambooBananaBannerBarBarelyBargainBarrelBaseBasicBasketBattleBeachBeanBeautyBecauseBecomeBeefBeforeBeginBehaveBehindBelieveBelowBeltBenchBenefitBestBetrayBetterBetweenBeyondBicycleBidBikeBindBiologyBirdBirthBitterBlackBladeBlameBlanketBlastBleakBlessBlindBloodBlossomBlouseBlueBlurBlushBoardBoatBodyBoilBombBoneBonusBookBoostBorderBoringBorrowBossBottomBounceBoxBoyBracketBrainBrandBrassBraveBreadBreezeBrickBridgeBriefBrightBringBriskBroccoliBrokenBronzeBroomBrotherBrownBrushBubbleBuddyBudgetBuffaloBuildBulbBulkBulletBundleBunkerBurdenBurgerBurstBusBusinessBusyButterBuyerBuzzCabbageCabinCableCactusCageCakeCallCalmCameraCampCanCanalCancelCandyCannonCanoeCanvasCanyonCapableCapitalCaptainCarCarbonCardCargoCarpetCarryCartCaseCashCasinoCastleCasualCatCatalogCatchCategoryCattleCaughtCauseCautionCaveCeilingCeleryCementCensusCenturyCerealCertainChairChalkChampionChangeChaosChapterChargeChaseChatCheapCheckCheeseChefCherryChestChickenChiefChildChimneyChoiceChooseChronicChuckleChunkChurnCigarCinnamonCircleCitizenCityCivilClaimClapClarifyClawClayCleanClerkCleverClickClientCliffClimbClinicClipClockClogCloseClothCloudClownClubClumpClusterClutchCoachCoastCoconutCodeCoffeeCoilCoinCollectColorColumnCombineComeComfortComicCommonCompanyConcertConductConfirmCongressConnectConsiderControlConvinceCookCoolCopperCopyCoralCoreCornCorrectCostCottonCouchCountryCoupleCourseCousinCoverCoyoteCrackCradleCraftCramCraneCrashCraterCrawlCrazyCreamCreditCreekCrewCricketCrimeCrispCriticCropCrossCrouchCrowdCrucialCruelCruiseCrumbleCrunchCrushCryCrystalCubeCultureCupCupboardCuriousCurrentCurtainCurveCushionCustomCuteCycleDadDamageDampDanceDangerDaringDashDaughterDawnDayDealDebateDebrisDecadeDecemberDecideDeclineDecorateDecreaseDeerDefenseDefineDefyDegreeDelayDeliverDemandDemiseDenialDentistDenyDepartDependDepositDepthDeputyDeriveDescribeDesertDesignDeskDespairDestroyDetailDetectDevelopDeviceDevoteDiagramDialDiamondDiaryDiceDieselDietDifferDigitalDignityDilemmaDinnerDinosaurDirectDirtDisagreeDiscoverDiseaseDishDismissDisorderDisplayDistanceDivertDivideDivorceDizzyDoctorDocumentDogDollDolphinDomainDonateDonkeyDonorDoorDoseDoubleDoveDraftDragonDramaDrasticDrawDreamDressDriftDrillDrinkDripDriveDropDrumDryDuckDumbDuneDuringDustDutchDutyDwarfDynamicEagerEagleEarlyEarnEarthEasilyEastEasyEchoEcologyEconomyEdgeEditEducateEffortEggEightEitherElbowElderElectricElegantElementElephantElevatorEliteElseEmbarkEmbodyEmbraceEmergeEmotionEmployEmpowerEmptyEnableEnactEndEndlessEndorseEnemyEnergyEnforceEngageEngineEnhanceEnjoyEnlistEnoughEnrichEnrollEnsureEnterEntireEntryEnvelopeEpisodeEqualEquipEraEraseErodeErosionErrorEruptEscapeEssayEssenceEstateEternalEthicsEvidenceEvilEvokeEvolveExactExampleExcessExchangeExciteExcludeExcuseExecuteExerciseExhaustExhibitExileExistExitExoticExpandExpectExpireExplainExposeExpressExtendExtraEyeEyebrowFabricFaceFacultyFadeFaintFaithFallFalseFameFamilyFamousFanFancyFantasyFarmFashionFatFatalFatherFatigueFaultFavoriteFeatureFebruaryFederalFeeFeedFeelFemaleFenceFestivalFetchFeverFewFiberFictionFieldFigureFileFilmFilterFinalFindFineFingerFinishFireFirmFirstFiscalFishFitFitnessFixFlagFlameFlashFlatFlavorFleeFlightFlipFloatFlockFloorFlowerFluidFlushFlyFoamFocusFogFoilFoldFollowFoodFootForceForestForgetForkFortuneForumForwardFossilFosterFoundFoxFragileFrameFrequentFreshFriendFringeFrogFrontFrostFrownFrozenFruitFuelFunFunnyFurnaceFuryFutureGadgetGainGalaxyGalleryGameGapGarageGarbageGardenGarlicGarmentGasGaspGateGatherGaugeGazeGeneralGeniusGenreGentleGenuineGestureGhostGiantGiftGiggleGingerGiraffeGirlGiveGladGlanceGlareGlassGlideGlimpseGlobeGloomGloryGloveGlowGlueGoatGoddessGoldGoodGooseGorillaGospelGossipGovernGownGrabGraceGrainGrantGrapeGrassGravityGreatGreenGridGriefGritGroceryGroupGrowGruntGuardGuessGuideGuiltGuitarGunGymHabitHairHalfHammerHamsterHandHappyHarborHardHarshHarvestHatHaveHawkHazardHeadHealthHeartHeavyHedgehogHeightHelloHelmetHelpHenHeroHiddenHighHillHintHipHireHistoryHobbyHockeyHoldHoleHolidayHollowHomeHoneyHoodHopeHornHorrorHorseHospitalHostHotelHourHoverHubHugeHumanHumbleHumorHundredHungryHuntHurdleHurryHurtHusbandHybridIceIconIdeaIdentifyIdleIgnoreIllIllegalIllnessImageImitateImmenseImmuneImpactImposeImproveImpulseInchIncludeIncomeIncreaseIndexIndicateIndoorIndustryInfantInflictInformInhaleInheritInitialInjectInjuryInmateInnerInnocentInputInquiryInsaneInsectInsideInspireInstallIntactInterestIntoInvestInviteInvolveIronIslandIsolateIssueItemIvoryJacketJaguarJarJazzJealousJeansJellyJewelJobJoinJokeJourneyJoyJudgeJuiceJumpJungleJuniorJunkJustKangarooKeenKeepKetchupKeyKickKidKidneyKindKingdomKissKitKitchenKiteKittenKiwiKneeKnifeKnockKnowLabLabelLaborLadderLadyLakeLampLanguageLaptopLargeLaterLatinLaughLaundryLavaLawLawnLawsuitLayerLazyLeaderLeafLearnLeaveLectureLeftLegLegalLegendLeisureLemonLendLengthLensLeopardLessonLetterLevelLiarLibertyLibraryLicenseLifeLiftLightLikeLimbLimitLinkLionLiquidListLittleLiveLizardLoadLoanLobsterLocalLockLogicLonelyLongLoopLotteryLoudLoungeLoveLoyalLuckyLuggageLumberLunarLunchLuxuryLyricsMachineMadMagicMagnetMaidMailMainMajorMakeMammalManManageMandateMangoMansionManualMapleMarbleMarchMarginMarineMarketMarriageMaskMassMasterMatchMaterialMathMatrixMatterMaximumMazeMeadowMeanMeasureMeatMechanicMedalMediaMelodyMeltMemberMemoryMentionMenuMercyMergeMeritMerryMeshMessageMetalMethodMiddleMidnightMilkMillionMimicMindMinimumMinorMinuteMiracleMirrorMiseryMissMistakeMixMixedMixtureMobileModelModifyMomMomentMonitorMonkeyMonsterMonthMoonMoralMoreMorningMosquitoMotherMotionMotorMountainMouseMoveMovieMuchMuffinMuleMultiplyMuscleMuseumMushroomMusicMustMutualMyselfMysteryMythNaiveNameNapkinNarrowNastyNationNatureNearNeckNeedNegativeNeglectNeitherNephewNerveNestNetNetworkNeutralNeverNewsNextNiceNightNobleNoiseNomineeNoodleNormalNorthNoseNotableNoteNothingNoticeNovelNowNuclearNumberNurseNutOakObeyObjectObligeObscureObserveObtainObviousOccurOceanOctoberOdorOffOfferOfficeOftenOilOkayOldOliveOlympicOmitOnceOneOnionOnlineOnlyOpenOperaOpinionOpposeOptionOrangeOrbitOrchardOrderOrdinaryOrganOrientOriginalOrphanOstrichOtherOutdoorOuterOutputOutsideOvalOvenOverOwnOwnerOxygenOysterOzonePactPaddlePagePairPalacePalmPandaPanelPanicPantherPaperParadeParentParkParrotPartyPassPatchPathPatientPatrolPatternPausePavePaymentPeacePeanutPearPeasantPelicanPenPenaltyPencilPeoplePepperPerfectPermitPersonPetPhonePhotoPhrasePhysicalPianoPicnicPicturePiecePigPigeonPillPilotPinkPioneerPipePistolPitchPizzaPlacePlanetPlasticPlatePlayPleasePledgePluckPlugPlungePoemPoetPointPolarPolePolicePondPonyPoolPopularPortionPositionPossiblePostPotatoPotteryPovertyPowderPowerPracticePraisePredictPreferPreparePresentPrettyPreventPricePridePrimaryPrintPriorityPrisonPrivatePrizeProblemProcessProduceProfitProgramProjectPromoteProofPropertyProsperProtectProudProvidePublicPuddingPullPulpPulsePumpkinPunchPupilPuppyPurchasePurityPurposePursePushPutPuzzlePyramidQualityQuantumQuarterQuestionQuickQuitQuizQuoteRabbitRaccoonRaceRackRadarRadioRailRainRaiseRallyRampRanchRandomRangeRapidRareRateRatherRavenRawRazorReadyRealReasonRebelRebuildRecallReceiveRecipeRecordRecycleReduceReflectReformRefuseRegionRegretRegularRejectRelaxReleaseReliefRelyRemainRememberRemindRemoveRenderRenewRentReopenRepairRepeatReplaceReportRequireRescueResembleResistResourceResponseResultRetireRetreatReturnReunionRevealReviewRewardRhythmRibRibbonRiceRichRideRidgeRifleRightRigidRingRiotRippleRiskRitualRivalRiverRoadRoastRobotRobustRocketRomanceRoofRookieRoomRoseRotateRoughRoundRouteRoyalRubberRudeRugRuleRunRunwayRuralSadSaddleSadnessSafeSailSaladSalmonSalonSaltSaluteSameSampleSandSatisfySatoshiSauceSausageSaveSayScaleScanScareScatterSceneSchemeSchoolScienceScissorsScorpionScoutScrapScreenScriptScrubSeaSearchSeasonSeatSecondSecretSectionSecuritySeedSeekSegmentSelectSellSeminarSeniorSenseSentenceSeriesServiceSessionSettleSetupSevenShadowShaftShallowShareShedShellSheriffShieldShiftShineShipShiverShockShoeShootShopShortShoulderShoveShrimpShrugShuffleShySiblingSickSideSiegeSightSignSilentSilkSillySilverSimilarSimpleSinceSingSirenSisterSituateSixSizeSkateSketchSkiSkillSkinSkirtSkullSlabSlamSleepSlenderSliceSlideSlightSlimSloganSlotSlowSlushSmallSmartSmileSmokeSmoothSnackSnakeSnapSniffSnowSoapSoccerSocialSockSodaSoftSolarSoldierSolidSolutionSolveSomeoneSongSoonSorrySortSoulSoundSoupSourceSouthSpaceSpareSpatialSpawnSpeakSpecialSpeedSpellSpendSphereSpiceSpiderSpikeSpinSpiritSplitSpoilSponsorSpoonSportSpotSpraySpreadSpringSpySquareSqueezeSquirrelStableStadiumStaffStageStairsStampStandStartStateStaySteakSteelStemStepStereoStickStillStingStockStomachStoneStoolStoryStoveStrategyStreetStrikeStrongStruggleStudentStuffStumbleStyleSubjectSubmitSubwaySuccessSuchSuddenSufferSugarSuggestSuitSummerSunSunnySunsetSuperSupplySupremeSureSurfaceSurgeSurpriseSurroundSurveySuspectSustainSwallowSwampSwapSwarmSwearSweetSwiftSwimSwingSwitchSwordSymbolSymptomSyrupSystemTableTackleTagTailTalentTalkTankTapeTargetTaskTasteTattooTaxiTeachTeamTellTenTenantTennisTentTermTestTextThankThatThemeThenTheoryThereTheyThingThisThoughtThreeThriveThrowThumbThunderTicketTideTigerTiltTimberTimeTinyTipTiredTissueTitleToastTobaccoTodayToddlerToeTogetherToiletTokenTomatoTomorrowToneTongueTonightToolToothTopTopicToppleTorchTornadoTortoiseTossTotalTouristTowardTowerTownToyTrackTradeTrafficTragicTrainTransferTrapTrashTravelTrayTreatTreeTrendTrialTribeTrickTriggerTrimTripTrophyTroubleTruckTrueTrulyTrumpetTrustTruthTryTubeTuitionTumbleTunaTunnelTurkeyTurnTurtleTwelveTwentyTwiceTwinTwistTwoTypeTypicalUglyUmbrellaUnableUnawareUncleUncoverUnderUndoUnfairUnfoldUnhappyUniformUniqueUnitUniverseUnknownUnlockUntilUnusualUnveilUpdateUpgradeUpholdUponUpperUpsetUrbanUrgeUsageUseUsedUsefulUselessUsualUtilityVacantVacuumVagueValidValleyValveVanVanishVaporVariousVastVaultVehicleVelvetVendorVentureVenueVerbVerifyVersionVeryVesselVeteranViableVibrantViciousVictoryVideoViewVillageVintageViolinVirtualVirusVisaVisitVisualVitalVividVocalVoiceVoidVolcanoVolumeVoteVoyageWageWagonWaitWalkWallWalnutWantWarfareWarmWarriorWashWaspWasteWaterWaveWayWealthWeaponWearWeaselWeatherWebWeddingWeekendWeirdWelcomeWestWetWhaleWhatWheatWheelWhenWhereWhipWhisperWideWidthWifeWildWillWinWindowWineWingWinkWinnerWinterWireWisdomWiseWishWitnessWolfWomanWonderWoodWoolWordWorkWorldWorryWorthWrapWreckWrestleWristWriteWrongYardYearYellowYouYoungYouthZebraZeroZoneZoo".replace(/([A-Z])/g," $1").toLowerCase().substring(1).split(" "),"0x3c8acc1e7b08d8e76f9fda015ef48dc8c710a73cb7e0f77b2c18a9b5a7adde60"!==mr.Wordlist.check(t)))throw o=null,new Error("BIP39 Wordlist for en (English) FAILED")}var a=new(function(t){function e(){return t.call(this,"en")||this}return i(e,t),e.prototype.getWord=function(t){return s(this),o[t]},e.prototype.getWordIndex=function(t){return s(this),o.indexOf(t)},e}(mr.Wordlist));r.langEn=a,mr.Wordlist.register(a)}))),vr=(r(gr),gr.langEn,n((function(t,e){Object.defineProperty(e,"__esModule",{value:!0}),e.Wordlist=mr.Wordlist;var r={en:gr.langEn};e.wordlists=r}))),yr=(r(vr),vr.Wordlist,vr.wordlists,n((function(t,e){Object.defineProperty(e,"__esModule",{value:!0}),e.version="hdnode/5.0.2"}))),br=(r(yr),yr.version,n((function(t,e){Object.defineProperty(e,"__esModule",{value:!0});var r=new l.Logger(yr.version),n=m.BigNumber.from("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),i=D.toUtf8Bytes("Bitcoin seed");function o(t){return(1<=256)throw new Error("Depth too large!");return a(c.concat([null!=this.privateKey?"0x0488ADE4":"0x0488B21E",c.hexlify(this.depth),this.parentFingerprint,c.hexZeroPad(c.hexlify(this.index),4),this.chainCode,null!=this.privateKey?c.concat(["0x00",this.privateKey]):this.publicKey]))},enumerable:!0,configurable:!0}),t.prototype.neuter=function(){return new t(h,null,this.publicKey,this.parentFingerprint,this.chainCode,this.index,this.depth,this.path)},t.prototype._derive=function(e){if(e>4294967295)throw new Error("invalid index - "+String(e));var r=this.path;r&&(r+="/"+(2147483647&e));var i=new Uint8Array(37);if(2147483648&e){if(!this.privateKey)throw new Error("cannot derive child of neutered node");i.set(c.arrayify(this.privateKey),1),r&&(r+="'")}else i.set(c.arrayify(this.publicKey));for(var o=24;o>=0;o-=8)i[33+(o>>3)]=e>>24-o&255;var a=c.arrayify(Me.computeHmac(Me.SupportedAlgorithm.sha512,this.chainCode,i)),u=a.slice(0,32),l=a.slice(32),f=null,d=null;this.privateKey?f=s(m.BigNumber.from(u).add(this.privateKey).mod(n)):d=new cr.SigningKey(c.hexlify(u))._addPoint(this.publicKey);var p=r,g=this.mnemonic;return g&&(p=Object.freeze({phrase:g.phrase,path:r,locale:g.locale||"en"})),new t(h,f,d,this.fingerprint,s(l),e,this.depth+1,p)},t.prototype.derivePath=function(t){var e=t.split("/");if(0===e.length||"m"===e[0]&&0!==this.depth)throw new Error("invalid path - "+t);"m"===e[0]&&e.shift();for(var r=this,n=0;n=2147483648)throw new Error("invalid path index - "+i);r=r._derive(2147483648+o)}else{if(!i.match(/^[0-9]+$/))throw new Error("invalid path component - "+i);var o;if((o=parseInt(i))>=2147483648)throw new Error("invalid path index - "+i);r=r._derive(o)}}return r},t._fromSeed=function(e,r){var n=c.arrayify(e);if(n.length<16||n.length>64)throw new Error("invalid seed");var o=c.arrayify(Me.computeHmac(Me.SupportedAlgorithm.sha512,i,n));return new t(h,s(o.slice(0,32)),null,"0x00000000",s(o.slice(32)),0,0,r)},t.fromMnemonic=function(e,r,n){return e=g(p(e,n=u(n)),n),t._fromSeed(d(e,r),{phrase:e,path:"m",locale:n.locale})},t.fromSeed=function(e){return t._fromSeed(e,null)},t.fromExtendedKey=function(e){var n=tt.Base58.decode(e);82===n.length&&a(n.slice(0,78))===e||r.throwArgumentError("invalid extended key","extendedKey","[REDACTED]");var i=n[4],o=c.hexlify(n.slice(5,9)),s=parseInt(c.hexlify(n.slice(9,13)).substring(2),16),u=c.hexlify(n.slice(13,45)),l=n.slice(45,78);switch(c.hexlify(n.slice(0,4))){case"0x0488b21e":case"0x043587cf":return new t(h,null,c.hexlify(l),o,u,s,i,null);case"0x0488ade4":case"0x04358394 ":if(0!==l[0])break;return new t(h,c.hexlify(l.slice(1)),null,o,u,s,i,null)}return r.throwArgumentError("invalid extended key","extendedKey","[REDACTED]")},t}();function d(t,e){e||(e="");var r=D.toUtf8Bytes("mnemonic"+e,D.UnicodeNormalizationForm.NFKD);return Ee.pbkdf2(D.toUtf8Bytes(t,D.UnicodeNormalizationForm.NFKD),r,2048,64,"sha512")}function p(t,e){e=u(e),r.checkNormalize();var n=e.split(t);if(n.length%3!=0)throw new Error("invalid mnemonic");for(var i=c.arrayify(new Uint8Array(Math.ceil(11*n.length/8))),s=0,a=0;a>3]|=1<<7-s%8),s++}var f=32*n.length/3,d=o(n.length/3);if((c.arrayify(Me.sha256(i.slice(0,f/8)))[0]&d)!==(i[i.length-1]&d))throw new Error("invalid checksum");return c.hexlify(i.slice(0,f/8))}function g(t,e){if(e=u(e),(t=c.arrayify(t)).length%4!=0||t.length<16||t.length>32)throw new Error("invalid entropy");for(var r=[0],n=11,i=0;i8?(r[r.length-1]<<=8,r[r.length-1]|=t[i],n-=8):(r[r.length-1]<<=n,r[r.length-1]|=t[i]>>8-n,r.push(t[i]&(1<<8-n)-1),n+=3);var s=t.length/4,a=c.arrayify(Me.sha256(t))[0]&o(s);return r[r.length-1]<<=s,r[r.length-1]|=a>>8-s,e.join(r.map((function(t){return e.getWord(t)})))}e.HDNode=f,e.mnemonicToSeed=d,e.mnemonicToEntropy=p,e.entropyToMnemonic=g,e.isValidMnemonic=function(t,e){try{return p(t,e),!0}catch(t){}return!1}}))),wr=(r(br),br.defaultPath,br.HDNode,br.mnemonicToSeed,br.mnemonicToEntropy,br.entropyToMnemonic,br.isValidMnemonic,n((function(t,e){Object.defineProperty(e,"__esModule",{value:!0}),e.version="random/5.0.2"}))),_r=(r(wr),wr.version,n((function(t,e){Object.defineProperty(e,"__esModule",{value:!0}),e.shuffled=function(t){for(var e=(t=t.slice()).length-1;e>0;e--){var r=Math.floor(Math.random()*(e+1)),n=t[e];t[e]=t[r],t[r]=n}return t}}))),Mr=(r(_r),_r.shuffled,n((function(t,r){Object.defineProperty(r,"__esModule",{value:!0});var n=new l.Logger(wr.version);r.shuffled=_r.shuffled;var i=null;try{if(null==(i=window))throw new Error("try next")}catch(t){try{if(null==(i=e))throw new Error("try next")}catch(t){i={}}}var o=i.crypto||i.msCrypto;o&&o.getRandomValues||(n.warn("WARNING: Missing strong random number source"),o={getRandomValues:function(t){return n.throwError("no secure random source avaialble",l.Logger.errors.UNSUPPORTED_OPERATION,{operation:"crypto.getRandomValues"})}}),r.randomBytes=function(t){(t<=0||t>1024||t%1)&&n.throwArgumentError("invalid length","length",t);var e=new Uint8Array(t);return o.getRandomValues(e),c.arrayify(e)}}))),Er=(r(Mr),Mr.shuffled,Mr.randomBytes,n((function(t,e){!function(e){function r(t){return parseInt(t)===t}function n(t){if(!r(t.length))return!1;for(var e=0;e255)return!1;return!0}function i(t,e){if(t.buffer&&ArrayBuffer.isView(t)&&"Uint8Array"===t.name)return e&&(t=t.slice?t.slice():Array.prototype.slice.call(t)),t;if(Array.isArray(t)){if(!n(t))throw new Error("Array contains invalid value: "+t);return new Uint8Array(t)}if(r(t.length)&&n(t))return new Uint8Array(t);throw new Error("unsupported array-like object")}function o(t){return new Uint8Array(t)}function s(t,e,r,n,i){null==n&&null==i||(t=t.slice?t.slice(n,i):Array.prototype.slice.call(t,n,i)),e.set(t,r)}var a,u={toBytes:function(t){var e=[],r=0;for(t=encodeURI(t);r191&&n<224?(e.push(String.fromCharCode((31&n)<<6|63&t[r+1])),r+=2):(e.push(String.fromCharCode((15&n)<<12|(63&t[r+1])<<6|63&t[r+2])),r+=3)}return e.join("")}},l=(a="0123456789abcdef",{toBytes:function(t){for(var e=[],r=0;r>4]+a[15&n])}return e.join("")}}),h={16:10,24:12,32:14},c=[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],f=[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],d=[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],y=[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],b=[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],w=[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],_=[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],M=[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],E=[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],k=[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],S=[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 P(t){for(var e=[],r=0;r>2,this._Ke[r][e%4]=o[e],this._Kd[t-r][e%4]=o[e];for(var s,a=0,u=i;u>16&255]<<24^f[s>>8&255]<<16^f[255&s]<<8^f[s>>24&255]^c[a]<<24,a+=1,8!=i)for(e=1;e>8&255]<<8^f[s>>16&255]<<16^f[s>>24&255]<<24;for(e=i/2+1;e>2,d=u%4,this._Ke[l][d]=o[e],this._Kd[t-l][d]=o[e++],u++}for(var l=1;l>24&255]^E[s>>16&255]^k[s>>8&255]^S[255&s]},A.prototype.encrypt=function(t){if(16!=t.length)throw new Error("invalid plaintext size (must be 16 bytes)");for(var e=this._Ke.length-1,r=[0,0,0,0],n=P(t),i=0;i<4;i++)n[i]^=this._Ke[0][i];for(var s=1;s>24&255]^m[n[(i+1)%4]>>16&255]^g[n[(i+2)%4]>>8&255]^v[255&n[(i+3)%4]]^this._Ke[s][i];n=r.slice()}var a,u=o(16);for(i=0;i<4;i++)a=this._Ke[e][i],u[4*i]=255&(f[n[i]>>24&255]^a>>24),u[4*i+1]=255&(f[n[(i+1)%4]>>16&255]^a>>16),u[4*i+2]=255&(f[n[(i+2)%4]>>8&255]^a>>8),u[4*i+3]=255&(f[255&n[(i+3)%4]]^a);return u},A.prototype.decrypt=function(t){if(16!=t.length)throw new Error("invalid ciphertext size (must be 16 bytes)");for(var e=this._Kd.length-1,r=[0,0,0,0],n=P(t),i=0;i<4;i++)n[i]^=this._Kd[0][i];for(var s=1;s>24&255]^b[n[(i+3)%4]>>16&255]^w[n[(i+2)%4]>>8&255]^_[255&n[(i+1)%4]]^this._Kd[s][i];n=r.slice()}var a,u=o(16);for(i=0;i<4;i++)a=this._Kd[e][i],u[4*i]=255&(d[n[i]>>24&255]^a>>24),u[4*i+1]=255&(d[n[(i+3)%4]>>16&255]^a>>16),u[4*i+2]=255&(d[n[(i+2)%4]>>8&255]^a>>8),u[4*i+3]=255&(d[255&n[(i+1)%4]]^a);return u};var x=function(t){if(!(this instanceof x))throw Error("AES must be instanitated with `new`");this.description="Electronic Code Block",this.name="ecb",this._aes=new A(t)};x.prototype.encrypt=function(t){if((t=i(t)).length%16!=0)throw new Error("invalid plaintext size (must be multiple of 16 bytes)");for(var e=o(t.length),r=o(16),n=0;n=0;--e)this._counter[e]=t%256,t>>=8},T.prototype.setBytes=function(t){if(16!=(t=i(t,!0)).length)throw new Error("invalid counter bytes size (must be 16 bytes)");this._counter=t},T.prototype.increment=function(){for(var t=15;t>=0;t--){if(255!==this._counter[t]){this._counter[t]++;break}this._counter[t]=0}};var C=function(t,e){if(!(this instanceof C))throw Error("AES must be instanitated with `new`");this.description="Counter",this.name="ctr",e instanceof T||(e=new T(e)),this._counter=e,this._remainingCounter=null,this._remainingCounterIndex=16,this._aes=new A(t)};C.prototype.encrypt=function(t){for(var e=i(t,!0),r=0;r16)throw new Error("PKCS#7 padding byte out of range");for(var r=t.length-e,n=0;n=64;){let d,p,m,g,v,y=r,b=n,w=i,_=o,M=s,E=a,k=u,S=l;for(p=0;p<16;p++)m=c+4*p,h[p]=(255&t[m])<<24|(255&t[m+1])<<16|(255&t[m+2])<<8|255&t[m+3];for(p=16;p<64;p++)d=h[p-2],g=(d>>>17|d<<15)^(d>>>19|d<<13)^d>>>10,d=h[p-15],v=(d>>>7|d<<25)^(d>>>18|d<<14)^d>>>3,h[p]=(g+h[p-7]|0)+(v+h[p-16]|0)|0;for(p=0;p<64;p++)g=(((M>>>6|M<<26)^(M>>>11|M<<21)^(M>>>25|M<<7))+(M&E^~M&k)|0)+(S+(e[p]+h[p]|0)|0)|0,v=((y>>>2|y<<30)^(y>>>13|y<<19)^(y>>>22|y<<10))+(y&b^y&w^b&w)|0,S=k,k=E,E=M,M=_+g|0,_=w,w=b,b=y,y=g+v|0;r=r+y|0,n=n+b|0,i=i+w|0,o=o+_|0,s=s+M|0,a=a+E|0,u=u+k|0,l=l+S|0,c+=64,f-=64}}c(t);let f,d=t.length%64,p=t.length/536870912|0,m=t.length<<3,g=d<56?56:120,v=t.slice(t.length-d,t.length);for(v.push(128),f=d+1;f>>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),c(v),[r>>>24&255,r>>>16&255,r>>>8&255,r>>>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,o>>>24&255,o>>>16&255,o>>>8&255,o>>>0&255,s>>>24&255,s>>>16&255,s>>>8&255,s>>>0&255,a>>>24&255,a>>>16&255,a>>>8&255,a>>>0&255,u>>>24&255,u>>>16&255,u>>>8&255,u>>>0&255,l>>>24&255,l>>>16&255,l>>>8&255,l>>>0&255]}function n(t,e,n){t=t.length<=64?t:r(t);const i=64+e.length+4,o=new Array(i),s=new Array(64);let a,u=[];for(a=0;a<64;a++)o[a]=54;for(a=0;a=i-4;t--){if(o[t]++,o[t]<=255)return;o[t]=0}}for(;n>=32;)l(),u=u.concat(r(s.concat(r(o)))),n-=32;return n>0&&(l(),u=u.concat(r(s.concat(r(o))).slice(0,n))),u}function i(t,e,r,n,i){let o;for(u(t,16*(2*r-1),i,0,16),o=0;o<2*r;o++)a(t,16*o,i,16),s(i,n),u(i,0,t,e+16*o,16);for(o=0;o>>32-e}function s(t,e){u(t,0,e,0,16);for(let t=8;t>0;t-=2)e[4]^=o(e[0]+e[12],7),e[8]^=o(e[4]+e[0],9),e[12]^=o(e[8]+e[4],13),e[0]^=o(e[12]+e[8],18),e[9]^=o(e[5]+e[1],7),e[13]^=o(e[9]+e[5],9),e[1]^=o(e[13]+e[9],13),e[5]^=o(e[1]+e[13],18),e[14]^=o(e[10]+e[6],7),e[2]^=o(e[14]+e[10],9),e[6]^=o(e[2]+e[14],13),e[10]^=o(e[6]+e[2],18),e[3]^=o(e[15]+e[11],7),e[7]^=o(e[3]+e[15],9),e[11]^=o(e[7]+e[3],13),e[15]^=o(e[11]+e[7],18),e[1]^=o(e[0]+e[3],7),e[2]^=o(e[1]+e[0],9),e[3]^=o(e[2]+e[1],13),e[0]^=o(e[3]+e[2],18),e[6]^=o(e[5]+e[4],7),e[7]^=o(e[6]+e[5],9),e[4]^=o(e[7]+e[6],13),e[5]^=o(e[4]+e[7],18),e[11]^=o(e[10]+e[9],7),e[8]^=o(e[11]+e[10],9),e[9]^=o(e[8]+e[11],13),e[10]^=o(e[9]+e[8],18),e[12]^=o(e[15]+e[14],7),e[13]^=o(e[12]+e[15],9),e[14]^=o(e[13]+e[12],13),e[15]^=o(e[14]+e[13],18);for(let r=0;r<16;++r)t[r]+=e[r]}function a(t,e,r,n){for(let i=0;i=256)return!1}return!0}function h(t,e){if("number"!=typeof t||t%1)throw new Error("invalid "+e);return t}function c(t,e,r,o,s,c,f){if(r=h(r,"N"),o=h(o,"r"),s=h(s,"p"),c=h(c,"dkLen"),0===r||0!=(r&r-1))throw new Error("N must be power of 2");if(r>2147483647/128/o)throw new Error("N too large");if(o>2147483647/128/s)throw new Error("r too large");if(!l(t))throw new Error("password must be an array or buffer");if(t=Array.prototype.slice.call(t),!l(e))throw new Error("salt must be an array or buffer");e=Array.prototype.slice.call(e);let d=n(t,e,128*s*o);const p=new Uint32Array(32*s*o);for(let t=0;tx&&(e=x);for(let t=0;tx&&(e=x);for(let t=0;t>0&255),d.push(p[t]>>8&255),d.push(p[t]>>16&255),d.push(p[t]>>24&255);const l=n(t,d,c);return f&&f(null,1,l),l}f&&N(O)};if(!f)for(;;){const t=O();if(null!=t)return t}O()}const f={scrypt:function(t,e,r,n,i,o,s){return new Promise((function(a,u){let l=0;s&&s(0),c(t,e,r,n,i,o,(function(t,e,r){if(t)u(t);else if(r)s&&1!==l&&s(1),a(new Uint8Array(r));else if(s&&e!==l)return l=e,s(e)}))}))},syncScrypt:function(t,e,r,n,i,o){return new Uint8Array(c(t,e,r,n,i,o))}};t.exports=f}()})));xr.scrypt,xr.syncScrypt;if(e.crypto&&crypto.getRandomValues){var Nr=new Uint8Array(16);sr=function(){return crypto.getRandomValues(Nr),Nr}}if(!sr){var Or=new Array(16);sr=function(){for(var t,e=0;e<16;e++)0==(3&e)&&(t=4294967296*Math.random()),Or[e]=t>>>((3&e)<<3)&255;return Or}}for(var Rr=sr,Tr=[],Cr={},Br=0;Br<256;Br++)Tr[Br]=(Br+256).toString(16).substr(1),Cr[Tr[Br]]=Br;function Ir(t,e){var r=e||0,n=Tr;return n[t[r++]]+n[t[r++]]+n[t[r++]]+n[t[r++]]+"-"+n[t[r++]]+n[t[r++]]+"-"+n[t[r++]]+n[t[r++]]+"-"+n[t[r++]]+n[t[r++]]+"-"+n[t[r++]]+n[t[r++]]+n[t[r++]]+n[t[r++]]+n[t[r++]]+n[t[r++]]}var Fr=Rr(),Lr=[1|Fr[0],Fr[1],Fr[2],Fr[3],Fr[4],Fr[5]],Ur=16383&(Fr[6]<<8|Fr[7]),jr=0,Dr=0;function zr(t,e,r){var n=e&&r||0;"string"==typeof t&&(e="binary"==t?new Array(16):null,t=null);var i=(t=t||{}).random||(t.rng||Rr)();if(i[6]=15&i[6]|64,i[8]=63&i[8]|128,e)for(var o=0;o<16;o++)e[n+o]=i[o];return e||Ir(i)}var Kr=zr;Kr.v1=function(t,e,r){var n=e&&r||0,i=e||[],o=void 0!==(t=t||{}).clockseq?t.clockseq:Ur,s=void 0!==t.msecs?t.msecs:(new Date).getTime(),a=void 0!==t.nsecs?t.nsecs:Dr+1,u=s-jr+(a-Dr)/1e4;if(u<0&&void 0===t.clockseq&&(o=o+1&16383),(u<0||s>jr)&&void 0===t.nsecs&&(a=0),a>=1e4)throw new Error("uuid.v1(): Can't create more than 10M uuids/sec");jr=s,Dr=a,Ur=o;var l=(1e4*(268435455&(s+=122192928e5))+a)%4294967296;i[n++]=l>>>24&255,i[n++]=l>>>16&255,i[n++]=l>>>8&255,i[n++]=255&l;var h=s/4294967296*1e4&268435455;i[n++]=h>>>8&255,i[n++]=255&h,i[n++]=h>>>24&15|16,i[n++]=h>>>16&255,i[n++]=o>>>8|128,i[n++]=255&o;for(var c=t.node||Lr,f=0;f<6;f++)i[n+f]=c[f];return e||Ir(i)},Kr.v4=zr,Kr.parse=function(t,e,r){var n=e&&r||0,i=0;for(e=e||[],t.toLowerCase().replace(/[0-9a-f]{2}/g,(function(t){i<16&&(e[n+i++]=Cr[t])}));i<16;)e[n+i++]=0;return e},Kr.unparse=Ir;var Hr=Kr,Wr=n((function(t,r){var n,i=e&&e.__extends||(n=function(t,e){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(t,e)},function(t,e){function r(){this.constructor=t}n(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)}),o=e&&e.__awaiter||function(t,e,r,n){return new(r||(r=Promise))((function(i,o){function s(t){try{u(n.next(t))}catch(t){o(t)}}function a(t){try{u(n.throw(t))}catch(t){o(t)}}function u(t){var e;t.done?i(t.value):(e=t.value,e instanceof r?e:new r((function(t){t(e)}))).then(s,a)}u((n=n.apply(t,e||[])).next())}))},s=e&&e.__generator||function(t,e){var r,n,i,o,s={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return o={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function a(o){return function(a){return function(o){if(r)throw new TypeError("Generator is already executing.");for(;s;)try{if(r=1,n&&(i=2&o[0]?n.return:o[0]?n.throw||((i=n.return)&&i.call(n),0):n.next)&&!(i=i.call(n,o[1])).done)return i;switch(n=0,i&&(o=[2&o[0],i.value]),o[0]){case 0:case 1:i=o;break;case 4:return s.label++,{value:o[1],done:!1};case 5:s.label++,n=o[1],o=[0];continue;case 7:o=s.ops.pop(),s.trys.pop();continue;default:if(!(i=s.trys,(i=i.length>0&&i[i.length-1])||6!==o[0]&&2!==o[0])){s=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]0&&i[i.length-1])||6!==o[0]&&2!==o[0])){s=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]0&&i[i.length-1])||6!==o[0]&&2!==o[0])){s=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]0&&a%1==0,"invalid connection throttle limit","connection.throttleLimit",a);var u="object"==typeof t?t.throttleCallback:null,h="object"==typeof t&&"number"==typeof t.throttleSlotInterval?t.throttleSlotInterval:100;o.assertArgument(h>0&&h%1==0,"invalid connection throttle slot interval","connection.throttleSlotInterval",h);var c={},f=null,d={method:"GET"},p=!1,m=12e4;if("string"==typeof t)f=t;else if("object"==typeof t){if(null!=t&&null!=t.url||o.throwArgumentError("missing URL","connection.url",t),f=t.url,"number"==typeof t.timeout&&t.timeout>0&&(m=t.timeout),t.headers)for(var g in t.headers)c[g.toLowerCase()]={key:g,value:String(t.headers[g])},["if-none-match","if-modified-since"].indexOf(g.toLowerCase())>=0&&(p=!0);if(null!=t.user&&null!=t.password){"https:"!==f.substring(0,6)&&!0!==t.allowInsecureAuthentication&&o.throwError("basic authentication requires a secure https url",l.Logger.errors.INVALID_ARGUMENT,{argument:"url",url:f,user:t.user,password:"[REDACTED]"});var v=t.user+":"+t.password;c.authorization={key:"Authorization",value:"Basic "+Xr.encode(D.toUtf8Bytes(v))}}}e&&(d.method="POST",d.body=e,c["content-type"]={key:"Content-Type",value:"application/json"});var y={};Object.keys(c).forEach((function(t){var e=c[t];y[e.key]=e.value})),d.headers=y;var b,w=(b=null,{promise:new Promise((function(t,e){m&&(b=setTimeout((function(){null!=b&&(b=null,e(o.makeError("timeout",l.Logger.errors.TIMEOUT,{requestBody:d.body||null,requestMethod:d.method,timeout:m,url:f})))}),m))})),cancel:function(){null!=b&&(clearTimeout(b),b=null)}}),_=function(){return n(this,void 0,void 0,(function(){var t,e,n,c,m,g,v,y;return i(this,(function(i){switch(i.label){case 0:t=0,i.label=1;case 1:if(!(t=300)&&(w.cancel(),o.throwError("bad response",l.Logger.errors.SERVER_ERROR,{status:e.statusCode,headers:e.headers,body:m,requestBody:d.body||null,requestMethod:d.method,url:f})),g=null,null!=m)try{g=JSON.parse(m)}catch(t){w.cancel(),o.throwError("invalid JSON",l.Logger.errors.SERVER_ERROR,{body:m,error:t,requestBody:d.body||null,requestMethod:d.method,url:f})}if(!r)return[3,17];i.label=10;case 10:return i.trys.push([10,12,,17]),[4,r(g,e)];case 11:return g=i.sent(),[3,17];case 12:return(v=i.sent()).throttleRetry&&ta)return void(s()&&n(new Error("retry limit reached")));var l=e.interval*parseInt(String(Math.random()*Math.pow(2,u)));le.ceiling&&(l=e.ceiling),setTimeout(i,l)}return null}),(function(t){s()&&n(t)}))}()}))}}))),tn=(r(Yr),Yr.fetchJson,Yr.poll,n((function(t,e){Object.defineProperty(e,"__esModule",{value:!0}),e.version="providers/5.0.5"}))),en=(r(tn),tn.version,n((function(t,e){Object.defineProperty(e,"__esModule",{value:!0});var r=new l.Logger(tn.version),n=function(){function t(){var e=this.constructor;r.checkNew(e,t),this.formats=this.getDefaultFormats()}return t.prototype.getDefaultFormats=function(){var e=this,r={},n=this.address.bind(this),i=this.bigNumber.bind(this),o=this.blockTag.bind(this),s=this.data.bind(this),a=this.hash.bind(this),u=this.hex.bind(this),l=this.number.bind(this);return r.transaction={hash:a,blockHash:t.allowNull(a,null),blockNumber:t.allowNull(l,null),transactionIndex:t.allowNull(l,null),confirmations:t.allowNull(l,null),from:n,gasPrice:i,gasLimit:i,to:t.allowNull(n,null),value:i,nonce:l,data:s,r:t.allowNull(this.uint256),s:t.allowNull(this.uint256),v:t.allowNull(l),creates:t.allowNull(n,null),raw:t.allowNull(s)},r.transactionRequest={from:t.allowNull(n),nonce:t.allowNull(l),gasLimit:t.allowNull(i),gasPrice:t.allowNull(i),to:t.allowNull(n),value:t.allowNull(i),data:t.allowNull((function(t){return e.data(t,!0)}))},r.receiptLog={transactionIndex:l,blockNumber:l,transactionHash:a,address:n,topics:t.arrayOf(a),data:s,logIndex:l,blockHash:a},r.receipt={to:t.allowNull(this.address,null),from:t.allowNull(this.address,null),contractAddress:t.allowNull(n,null),transactionIndex:l,root:t.allowNull(a),gasUsed:i,logsBloom:t.allowNull(s),blockHash:a,transactionHash:a,logs:t.arrayOf(this.receiptLog.bind(this)),blockNumber:l,confirmations:t.allowNull(l,null),cumulativeGasUsed:i,status:t.allowNull(l)},r.block={hash:a,parentHash:a,number:l,timestamp:l,nonce:t.allowNull(u),difficulty:this.difficulty.bind(this),gasLimit:i,gasUsed:i,miner:n,extraData:s,transactions:t.allowNull(t.arrayOf(a))},r.blockWithTransactions=v.shallowCopy(r.block),r.blockWithTransactions.transactions=t.allowNull(t.arrayOf(this.transactionResponse.bind(this))),r.filter={fromBlock:t.allowNull(o,void 0),toBlock:t.allowNull(o,void 0),blockHash:t.allowNull(a,void 0),address:t.allowNull(n,void 0),topics:t.allowNull(this.topics.bind(this),void 0)},r.filterLog={blockNumber:t.allowNull(l),blockHash:t.allowNull(a),transactionIndex:l,removed:t.allowNull(this.boolean.bind(this)),address:n,data:t.allowFalsish(s,"0x"),topics:t.arrayOf(a),transactionHash:a,logIndex:l},r},t.prototype.number=function(t){return m.BigNumber.from(t).toNumber()},t.prototype.bigNumber=function(t){return m.BigNumber.from(t)},t.prototype.boolean=function(t){if("boolean"==typeof t)return t;if("string"==typeof t){if("true"===(t=t.toLowerCase()))return!0;if("false"===t)return!1}throw new Error("invalid boolean - "+t)},t.prototype.hex=function(t,e){return"string"==typeof t&&(e||"0x"===t.substring(0,2)||(t="0x"+t),c.isHexString(t))?t.toLowerCase():r.throwArgumentError("invalid hash","value",t)},t.prototype.data=function(t,e){var r=this.hex(t,e);if(r.length%2!=0)throw new Error("invalid data; odd-length - "+t);return r},t.prototype.address=function(t){return P.getAddress(t)},t.prototype.callAddress=function(t){if(!c.isHexString(t,32))return null;var e=P.getAddress(c.hexDataSlice(t,12));return e===B.AddressZero?null:e},t.prototype.contractAddress=function(t){return P.getContractAddress(t)},t.prototype.blockTag=function(t){if(null==t)return"latest";if("earliest"===t)return"0x0";if("latest"===t||"pending"===t)return t;if("number"==typeof t||c.isHexString(t))return c.hexValue(t);throw new Error("invalid blockTag")},t.prototype.hash=function(t,e){var n=this.hex(t,e);return 32!==c.hexDataLength(n)?r.throwArgumentError("invalid hash","value",t):n},t.prototype.difficulty=function(t){if(null==t)return null;var e=m.BigNumber.from(t);try{return e.toNumber()}catch(t){}return null},t.prototype.uint256=function(t){if(!c.isHexString(t))throw new Error("invalid uint256");return c.hexZeroPad(t,32)},t.prototype._block=function(e,r){return null!=e.author&&null==e.miner&&(e.miner=e.author),t.check(r,e)},t.prototype.block=function(t){return this._block(t,this.formats.block)},t.prototype.blockWithTransactions=function(t){return this._block(t,this.formats.blockWithTransactions)},t.prototype.transactionRequest=function(e){return t.check(this.formats.transactionRequest,e)},t.prototype.transactionResponse=function(e){null!=e.gas&&null==e.gasLimit&&(e.gasLimit=e.gas),e.to&&m.BigNumber.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));var r=t.check(this.formats.transaction,e);if(null!=e.chainId){var n=e.chainId;c.isHexString(n)&&(n=m.BigNumber.from(n).toNumber()),r.chainId=n}else{null==(n=e.networkId)&&null==r.v&&(n=e.chainId),c.isHexString(n)&&(n=m.BigNumber.from(n).toNumber()),"number"!=typeof n&&null!=r.v&&((n=(r.v-35)/2)<0&&(n=0),n=parseInt(n)),"number"!=typeof n&&(n=0),r.chainId=n}return r.blockHash&&"x"===r.blockHash.replace(/0/g,"")&&(r.blockHash=null),r},t.prototype.transaction=function(t){return dr.parse(t)},t.prototype.receiptLog=function(e){return t.check(this.formats.receiptLog,e)},t.prototype.receipt=function(e){var r=t.check(this.formats.receipt,e);return null!=e.status&&(r.byzantium=!0),r},t.prototype.topics=function(t){var e=this;return Array.isArray(t)?t.map((function(t){return e.topics(t)})):null!=t?this.hash(t,!0):null},t.prototype.filter=function(e){return t.check(this.formats.filter,e)},t.prototype.filterLog=function(e){return t.check(this.formats.filterLog,e)},t.check=function(t,e){var r={};for(var n in t)try{var i=t[n](e[n]);void 0!==i&&(r[n]=i)}catch(t){throw t.checkKey=n,t.checkValue=e[n],t}return r},t.allowNull=function(t,e){return function(r){return null==r?e:t(r)}},t.allowFalsish=function(t,e){return function(r){return r?t(r):e}},t.arrayOf=function(t){return function(e){if(!Array.isArray(e))throw new Error("not an array");var r=[];return e.forEach((function(e){r.push(t(e))})),r}},t}();e.Formatter=n;var i=!1;e.showThrottleMessage=function(){i||(i=!0,console.log("========= NOTICE ========="),console.log("Request-Rate Exceeded (this message will not be repeated)"),console.log(""),console.log("The default API keys for each service are provided as a highly-throttled,"),console.log("community resource for low-traffic projects and early prototyping."),console.log(""),console.log("While your application will continue to function, we highly recommended"),console.log("signing up for your own API keys to improve performance, increase your"),console.log("request rate/limit and enable other perks, such as metrics and advanced APIs."),console.log(""),console.log("For more details: https://docs.ethers.io/api-keys/"),console.log("=========================="))}}))),rn=(r(en),en.Formatter,en.showThrottleMessage,n((function(t,r){var n,i=e&&e.__extends||(n=function(t,e){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(t,e)},function(t,e){function r(){this.constructor=t}n(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)}),o=e&&e.__awaiter||function(t,e,r,n){return new(r||(r=Promise))((function(i,o){function s(t){try{u(n.next(t))}catch(t){o(t)}}function a(t){try{u(n.throw(t))}catch(t){o(t)}}function u(t){var e;t.done?i(t.value):(e=t.value,e instanceof r?e:new r((function(t){t(e)}))).then(s,a)}u((n=n.apply(t,e||[])).next())}))},s=e&&e.__generator||function(t,e){var r,n,i,o,s={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return o={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function a(o){return function(a){return function(o){if(r)throw new TypeError("Generator is already executing.");for(;s;)try{if(r=1,n&&(i=2&o[0]?n.return:o[0]?n.throw||((i=n.return)&&i.call(n),0):n.next)&&!(i=i.call(n,o[1])).done)return i;switch(n=0,i&&(o=[2&o[0],i.value]),o[0]){case 0:case 1:i=o;break;case 4:return s.label++,{value:o[1],done:!1};case 5:s.label++,n=o[1],o=[0];continue;case 7:o=s.ops.pop(),s.trys.pop();continue;default:if(!(i=s.trys,(i=i.length>0&&i[i.length-1])||6!==o[0]&&2!==o[0])){s=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]0&&null==t[t.length-1];)t.pop();return t.map((function(t){if(Array.isArray(t)){var e={};t.forEach((function(t){e[u(t)]=!0}));var r=Object.keys(e);return r.sort(),r.join("|")}return u(t)})).join("&")}function f(t){if("string"==typeof t){if(t=t.toLowerCase(),32===c.hexDataLength(t))return"tx:"+t;if(-1===t.indexOf(":"))return t}else{if(Array.isArray(t))return"filter:*:"+h(t);if(Z.ForkEvent.isForkEvent(t))throw a.warn("not implemented"),new Error("not implemented");if(t&&"object"==typeof t)return"filter:"+(t.address||"*")+":"+h(t.topics||[])}throw new Error("invalid event - "+t)}function d(){return(new Date).getTime()}var p=["block","network","pending","poll"],g=function(){function t(t,e,r){v.defineReadOnly(this,"tag",t),v.defineReadOnly(this,"listener",e),v.defineReadOnly(this,"once",r)}return Object.defineProperty(t.prototype,"event",{get:function(){switch(this.type){case"tx":return this.hash;case"filter":return this.filter}return this.tag},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"type",{get:function(){return this.tag.split(":")[0]},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"hash",{get:function(){var t=this.tag.split(":");return"tx"!==t[0]?null:t[1]},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"filter",{get:function(){var t=this.tag.split(":");if("filter"!==t[0])return null;var e,r=t[1],n=""===(e=t[2])?[]:e.split(/&/g).map((function(t){if(""===t)return[];var e=t.split("|").map((function(t){return"null"===t?null:t}));return 1===e.length?e[0]:e})),i={};return n.length>0&&(i.topics=n),r&&"*"!==r&&(i.address=r),i},enumerable:!0,configurable:!0}),t.prototype.pollable=function(){return this.tag.indexOf(":")>=0||p.indexOf(this.tag)>=0},t}();r.Event=g;var y=null,b=1,w=function(t){function e(e){var r=this.constructor,n=this;if(a.checkNew(r,Z.Provider),(n=t.call(this)||this)._events=[],n._emitted={block:-2},n.formatter=r.getFormatter(),v.defineReadOnly(n,"anyNetwork","any"===e),n.anyNetwork&&(e=n.detectNetwork()),e instanceof Promise)n._networkPromise=e,e.catch((function(t){})),n._ready().catch((function(t){}));else{var i=v.getStatic(r,"getNetwork")(e);i?(v.defineReadOnly(n,"_network",i),n.emit("network",i,null)):a.throwArgumentError("invalid network","network",e)}return n._maxInternalBlockNumber=-1024,n._lastBlockNumber=-2,n._pollingInterval=4e3,n._fastQueryDate=0,n}return i(e,t),e.prototype._ready=function(){return o(this,void 0,void 0,(function(){var t;return s(this,(function(e){switch(e.label){case 0:if(null!=this._network)return[3,7];if(t=null,!this._networkPromise)return[3,4];e.label=1;case 1:return e.trys.push([1,3,,4]),[4,this._networkPromise];case 2:return t=e.sent(),[3,4];case 3:return e.sent(),[3,4];case 4:return null!=t?[3,6]:[4,this.detectNetwork()];case 5:t=e.sent(),e.label=6;case 6:t||a.throwError("no network detected",l.Logger.errors.UNKNOWN_ERROR,{}),null==this._network&&(this.anyNetwork?this._network=t:v.defineReadOnly(this,"_network",t),this.emit("network",t,null)),e.label=7;case 7:return[2,this._network]}}))}))},Object.defineProperty(e.prototype,"ready",{get:function(){var t=this;return Yr.poll((function(){return t._ready().then((function(t){return t}),(function(t){if(t.code!==l.Logger.errors.NETWORK_ERROR||"noNetwork"!==t.event)throw t}))}))},enumerable:!0,configurable:!0}),e.getFormatter=function(){return null==y&&(y=new en.Formatter),y},e.getNetwork=function(t){return Zr.getNetwork(null==t?"homestead":t)},e.prototype._getInternalBlockNumber=function(t){return o(this,void 0,void 0,(function(){var e,r,n,i,o=this;return s(this,(function(s){switch(s.label){case 0:return[4,this._ready()];case 1:return s.sent(),e=this._internalBlockNumber,t>0&&this._internalBlockNumber?[4,e]:[3,3];case 2:if(r=s.sent(),d()-r.respTime<=t)return[2,r.blockNumber];s.label=3;case 3:return n=d(),i=v.resolveProperties({blockNumber:this.perform("getBlockNumber",{}),networkError:this.getNetwork().then((function(t){return null}),(function(t){return t}))}).then((function(t){var e=t.blockNumber,r=t.networkError;if(r)throw o._internalBlockNumber===i&&(o._internalBlockNumber=null),r;var s=d();return(e=m.BigNumber.from(e).toNumber())1e3)a.warn("network block skew detected; skipping block events"),this.emit("error",a.makeError("network block skew detected",l.Logger.errors.NETWORK_ERROR,{blockNumber:r,event:"blockSkew",previousBlockNumber:this._emitted.block})),this.emit("block",r);else for(n=this._emitted.block+1;n<=r;n++)this.emit("block",n);return this._emitted.block!==r&&(this._emitted.block=r,Object.keys(this._emitted).forEach((function(t){if("block"!==t){var e=i._emitted[t];"pending"!==e&&r-e>12&&delete i._emitted[t]}}))),-2===this._lastBlockNumber&&(this._lastBlockNumber=r-1),this._events.forEach((function(t){switch(t.type){case"tx":var n=t.hash,o=i.getTransactionReceipt(n).then((function(t){return t&&null!=t.blockNumber?(i._emitted["t:"+n]=t.blockNumber,i.emit(n,t),null):null})).catch((function(t){i.emit("error",t)}));e.push(o);break;case"filter":var s=t.filter;s.fromBlock=i._lastBlockNumber+1,s.toBlock=r;o=i.getLogs(s).then((function(t){0!==t.length&&t.forEach((function(t){i._emitted["b:"+t.blockHash]=t.blockNumber,i._emitted["t:"+t.transactionHash]=t.blockNumber,i.emit(s,t)}))})).catch((function(t){i.emit("error",t)}));e.push(o)}})),this._lastBlockNumber=r,Promise.all(e).then((function(){i.emit("didPoll",t)})),[2,null]}}))}))},e.prototype.resetEventsBlock=function(t){this._lastBlockNumber=t-1,this.polling&&this.poll()},Object.defineProperty(e.prototype,"network",{get:function(){return this._network},enumerable:!0,configurable:!0}),e.prototype.detectNetwork=function(){return o(this,void 0,void 0,(function(){return s(this,(function(t){return[2,a.throwError("provider does not support network detection",l.Logger.errors.UNSUPPORTED_OPERATION,{operation:"provider.detectNetwork"})]}))}))},e.prototype.getNetwork=function(){return o(this,void 0,void 0,(function(){var t,e,r;return s(this,(function(n){switch(n.label){case 0:return[4,this._ready()];case 1:return t=n.sent(),[4,this.detectNetwork()];case 2:return e=n.sent(),t.chainId===e.chainId?[3,5]:this.anyNetwork?(this._network=e,this._lastBlockNumber=-2,this._fastBlockNumber=null,this._fastBlockNumberPromise=null,this._fastQueryDate=0,this._emitted.block=-2,this._maxInternalBlockNumber=-1024,this._internalBlockNumber=null,this.emit("network",e,t),[4,(i=0,new Promise((function(t){setTimeout(t,i)})))]):[3,4];case 3:return n.sent(),[2,this._network];case 4:throw r=a.makeError("underlying network changed",l.Logger.errors.NETWORK_ERROR,{event:"changed",network:t,detectedNetwork:e}),this.emit("error",r),r;case 5:return[2,t]}var i}))}))},Object.defineProperty(e.prototype,"blockNumber",{get:function(){var t=this;return this._getInternalBlockNumber(100+this.pollingInterval/2).then((function(e){t._setFastBlockNumber(e)})),null!=this._fastBlockNumber?this._fastBlockNumber:-1},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"polling",{get:function(){return null!=this._poller},set:function(t){var e=this;t&&!this._poller?(this._poller=setInterval(this.poll.bind(this),this.pollingInterval),this._bootstrapPoll||(this._bootstrapPoll=setTimeout((function(){e.poll(),e._bootstrapPoll=setTimeout((function(){e._poller||e.poll(),e._bootstrapPoll=null}),e.pollingInterval)}),0))):!t&&this._poller&&(clearInterval(this._poller),this._poller=null)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"pollingInterval",{get:function(){return this._pollingInterval},set:function(t){var e=this;if("number"!=typeof t||t<=0||parseInt(String(t))!=t)throw new Error("invalid polling interval");this._pollingInterval=t,this._poller&&(clearInterval(this._poller),this._poller=setInterval((function(){e.poll()}),this._pollingInterval))},enumerable:!0,configurable:!0}),e.prototype._getFastBlockNumber=function(){var t=this,e=d();return e-this._fastQueryDate>2*this._pollingInterval&&(this._fastQueryDate=e,this._fastBlockNumberPromise=this.getBlockNumber().then((function(e){return(null==t._fastBlockNumber||e>t._fastBlockNumber)&&(t._fastBlockNumber=e),t._fastBlockNumber}))),this._fastBlockNumberPromise},e.prototype._setFastBlockNumber=function(t){null!=this._fastBlockNumber&&tthis._fastBlockNumber)&&(this._fastBlockNumber=t,this._fastBlockNumberPromise=Promise.resolve(t)))},e.prototype.waitForTransaction=function(t,e,r){return o(this,void 0,void 0,(function(){var n,i=this;return s(this,(function(o){switch(o.label){case 0:return null==e&&(e=1),[4,this.getTransactionReceipt(t)];case 1:return((n=o.sent())?n.confirmations:0)>=e?[2,n]:[2,new Promise((function(n,o){var s=null,u=!1,h=function(r){r.confirmations0&&(s=setTimeout((function(){u||(s=null,u=!0,i.removeListener(t,h),o(a.makeError("timeout exceeded",l.Logger.errors.TIMEOUT,{timeout:r})))}),r)).unref&&s.unref()}))]}}))}))},e.prototype.getBlockNumber=function(){return o(this,void 0,void 0,(function(){return s(this,(function(t){return[2,this._getInternalBlockNumber(0)]}))}))},e.prototype.getGasPrice=function(){return o(this,void 0,void 0,(function(){var t,e;return s(this,(function(r){switch(r.label){case 0:return[4,this.getNetwork()];case 1:return r.sent(),e=(t=m.BigNumber).from,[4,this.perform("getGasPrice",{})];case 2:return[2,e.apply(t,[r.sent()])]}}))}))},e.prototype.getBalance=function(t,e){return o(this,void 0,void 0,(function(){var r,n,i;return s(this,(function(o){switch(o.label){case 0:return[4,this.getNetwork()];case 1:return o.sent(),[4,v.resolveProperties({address:this._getAddress(t),blockTag:this._getBlockTag(e)})];case 2:return r=o.sent(),i=(n=m.BigNumber).from,[4,this.perform("getBalance",r)];case 3:return[2,i.apply(n,[o.sent()])]}}))}))},e.prototype.getTransactionCount=function(t,e){return o(this,void 0,void 0,(function(){var r,n,i;return s(this,(function(o){switch(o.label){case 0:return[4,this.getNetwork()];case 1:return o.sent(),[4,v.resolveProperties({address:this._getAddress(t),blockTag:this._getBlockTag(e)})];case 2:return r=o.sent(),i=(n=m.BigNumber).from,[4,this.perform("getTransactionCount",r)];case 3:return[2,i.apply(n,[o.sent()]).toNumber()]}}))}))},e.prototype.getCode=function(t,e){return o(this,void 0,void 0,(function(){var r,n;return s(this,(function(i){switch(i.label){case 0:return[4,this.getNetwork()];case 1:return i.sent(),[4,v.resolveProperties({address:this._getAddress(t),blockTag:this._getBlockTag(e)})];case 2:return r=i.sent(),n=c.hexlify,[4,this.perform("getCode",r)];case 3:return[2,n.apply(void 0,[i.sent()])]}}))}))},e.prototype.getStorageAt=function(t,e,r){return o(this,void 0,void 0,(function(){var n,i;return s(this,(function(o){switch(o.label){case 0:return[4,this.getNetwork()];case 1:return o.sent(),[4,v.resolveProperties({address:this._getAddress(t),blockTag:this._getBlockTag(r),position:Promise.resolve(e).then((function(t){return c.hexValue(t)}))})];case 2:return n=o.sent(),i=c.hexlify,[4,this.perform("getStorageAt",n)];case 3:return[2,i.apply(void 0,[o.sent()])]}}))}))},e.prototype._wrapTransaction=function(t,e){var r=this;if(null!=e&&32!==c.hexDataLength(e))throw new Error("invalid response - sendTransaction");var n=t;return null!=e&&t.hash!==e&&a.throwError("Transaction hash mismatch from Provider.sendTransaction.",l.Logger.errors.UNKNOWN_ERROR,{expectedHash:t.hash,returnedHash:e}),n.wait=function(e){return o(r,void 0,void 0,(function(){var r;return s(this,(function(n){switch(n.label){case 0:return 0!==e&&(this._emitted["t:"+t.hash]="pending"),[4,this.waitForTransaction(t.hash,e)];case 1:return null==(r=n.sent())&&0===e?[2,null]:(this._emitted["t:"+t.hash]=r.blockNumber,0===r.status&&a.throwError("transaction failed",l.Logger.errors.CALL_EXCEPTION,{transactionHash:t.hash,transaction:t,receipt:r}),[2,r])}}))}))},n},e.prototype.sendTransaction=function(t){return o(this,void 0,void 0,(function(){var e,r,n,i;return s(this,(function(o){switch(o.label){case 0:return[4,this.getNetwork()];case 1:return o.sent(),[4,Promise.resolve(t).then((function(t){return c.hexlify(t)}))];case 2:e=o.sent(),r=this.formatter.transaction(t),o.label=3;case 3:return o.trys.push([3,5,,6]),[4,this.perform("sendTransaction",{signedTransaction:e})];case 4:return n=o.sent(),[2,this._wrapTransaction(r,n)];case 5:throw(i=o.sent()).transaction=r,i.transactionHash=r.hash,i;case 6:return[2]}}))}))},e.prototype._getTransactionRequest=function(t){return o(this,void 0,void 0,(function(){var e,r,n,i,o=this;return s(this,(function(s){switch(s.label){case 0:return[4,t];case 1:return e=s.sent(),r={},["from","to"].forEach((function(t){null!=e[t]&&(r[t]=Promise.resolve(e[t]).then((function(t){return t?o._getAddress(t):null})))})),["gasLimit","gasPrice","value"].forEach((function(t){null!=e[t]&&(r[t]=Promise.resolve(e[t]).then((function(t){return t?m.BigNumber.from(t):null})))})),["data"].forEach((function(t){null!=e[t]&&(r[t]=Promise.resolve(e[t]).then((function(t){return t?c.hexlify(t):null})))})),i=(n=this.formatter).transactionRequest,[4,v.resolveProperties(r)];case 2:return[2,i.apply(n,[s.sent()])]}}))}))},e.prototype._getFilter=function(t){return o(this,void 0,void 0,(function(){var e,r,n,i=this;return s(this,(function(o){switch(o.label){case 0:return[4,t];case 1:return t=o.sent(),e={},null!=t.address&&(e.address=this._getAddress(t.address)),["blockHash","topics"].forEach((function(r){null!=t[r]&&(e[r]=t[r])})),["fromBlock","toBlock"].forEach((function(r){null!=t[r]&&(e[r]=i._getBlockTag(t[r]))})),n=(r=this.formatter).filter,[4,v.resolveProperties(e)];case 2:return[2,n.apply(r,[o.sent()])]}}))}))},e.prototype.call=function(t,e){return o(this,void 0,void 0,(function(){var r,n;return s(this,(function(i){switch(i.label){case 0:return[4,this.getNetwork()];case 1:return i.sent(),[4,v.resolveProperties({transaction:this._getTransactionRequest(t),blockTag:this._getBlockTag(e)})];case 2:return r=i.sent(),n=c.hexlify,[4,this.perform("call",r)];case 3:return[2,n.apply(void 0,[i.sent()])]}}))}))},e.prototype.estimateGas=function(t){return o(this,void 0,void 0,(function(){var e,r,n;return s(this,(function(i){switch(i.label){case 0:return[4,this.getNetwork()];case 1:return i.sent(),[4,v.resolveProperties({transaction:this._getTransactionRequest(t)})];case 2:return e=i.sent(),n=(r=m.BigNumber).from,[4,this.perform("estimateGas",e)];case 3:return[2,n.apply(r,[i.sent()])]}}))}))},e.prototype._getAddress=function(t){return o(this,void 0,void 0,(function(){var e;return s(this,(function(r){switch(r.label){case 0:return[4,this.resolveName(t)];case 1:return null==(e=r.sent())&&a.throwError("ENS name not configured",l.Logger.errors.UNSUPPORTED_OPERATION,{operation:"resolveName("+JSON.stringify(t)+")"}),[2,e]}}))}))},e.prototype._getBlock=function(t,e){return o(this,void 0,void 0,(function(){var r,n,i,u,l,h=this;return s(this,(function(f){switch(f.label){case 0:return[4,this.getNetwork()];case 1:return f.sent(),[4,t];case 2:return t=f.sent(),r=-128,n={includeTransactions:!!e},c.isHexString(t,32)?(n.blockHash=t,[3,6]):[3,3];case 3:return f.trys.push([3,5,,6]),i=n,l=(u=this.formatter).blockTag,[4,this._getBlockTag(t)];case 4:return i.blockTag=l.apply(u,[f.sent()]),c.isHexString(n.blockTag)&&(r=parseInt(n.blockTag.substring(2),16)),[3,6];case 5:return f.sent(),a.throwArgumentError("invalid block hash or block tag","blockHashOrBlockTag",t),[3,6];case 6:return[2,Yr.poll((function(){return o(h,void 0,void 0,(function(){var t,i,o,a,u;return s(this,(function(s){switch(s.label){case 0:return[4,this.perform("getBlock",n)];case 1:if(null==(t=s.sent()))return null!=n.blockHash&&null==this._emitted["b:"+n.blockHash]||null!=n.blockTag&&r>this._emitted.block?[2,null]:[2,void 0];if(!e)return[3,8];i=null,o=0,s.label=2;case 2:return on.length?[2,null]:(a=D.toUtf8String(n.slice(0,o)),[4,this.resolveName(a)]));case 4:return s.sent()!=t?[2,null]:[2,a]}}))}))},e.prototype.perform=function(t,e){return a.throwError(t+" not implemented",l.Logger.errors.NOT_IMPLEMENTED,{operation:t})},e.prototype._startEvent=function(t){this.polling=this._events.filter((function(t){return t.pollable()})).length>0},e.prototype._stopEvent=function(t){this.polling=this._events.filter((function(t){return t.pollable()})).length>0},e.prototype._addEventListener=function(t,e,r){var n=new g(f(t),e,r);return this._events.push(n),this._startEvent(n),this},e.prototype.on=function(t,e){return this._addEventListener(t,e,!1)},e.prototype.once=function(t,e){return this._addEventListener(t,e,!0)},e.prototype.emit=function(t){for(var e=this,r=[],n=1;n0&&i[i.length-1])||6!==o[0]&&2!==o[0])){s=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]=0&&a.throwError("insufficient funds",l.Logger.errors.INSUFFICIENT_FUNDS,{transaction:n}),t.responseText.indexOf("nonce too low")>=0&&a.throwError("nonce has already been used",l.Logger.errors.NONCE_EXPIRED,{transaction:n}),t.responseText.indexOf("replacement transaction underpriced")>=0&&a.throwError("replacement fee too low",l.Logger.errors.REPLACEMENT_UNDERPRICED,{transaction:n})),t}))}))},e.prototype.signTransaction=function(t){return a.throwError("signing transactions is unsupported",l.Logger.errors.UNSUPPORTED_OPERATION,{operation:"signTransaction"})},e.prototype.sendTransaction=function(t){var e=this;return this.sendUncheckedTransaction(t).then((function(t){return Yr.poll((function(){return e.provider.getTransaction(t).then((function(r){if(null!==r)return e.provider._wrapTransaction(r,t)}))}),{onceBlock:e.provider}).catch((function(e){throw e.transactionHash=t,e}))}))},e.prototype.signMessage=function(t){var e=this,r="string"==typeof t?D.toUtf8Bytes(t):t;return this.getAddress().then((function(t){return e.provider.send("eth_sign",[t.toLowerCase(),c.hexlify(r)])}))},e.prototype.unlock=function(t){var e=this.provider;return this.getAddress().then((function(r){return e.send("personal_unlockAccount",[r.toLowerCase(),t,null])}))},e}($.Signer);r.JsonRpcSigner=p;var g=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i(e,t),e.prototype.sendTransaction=function(t){var e=this;return this.sendUncheckedTransaction(t).then((function(t){return{hash:t,nonce:null,gasLimit:null,gasPrice:null,data:null,value:null,chainId:null,confirmations:0,from:null,wait:function(r){return e.provider.waitForTransaction(t,r)}}}))},e}(p),y={chainId:!0,data:!0,gasLimit:!0,gasPrice:!0,nonce:!0,to:!0,value:!0},b=function(t){function e(r,n){var i=this.constructor,o=this;a.checkNew(i,e);var s=n;return null==s&&(s=new Promise((function(t,e){setTimeout((function(){o.detectNetwork().then((function(e){t(e)}),(function(t){e(t)}))}),0)}))),o=t.call(this,s)||this,r||(r=v.getStatic(o.constructor,"defaultUrl")()),"string"==typeof r?v.defineReadOnly(o,"connection",Object.freeze({url:r})):v.defineReadOnly(o,"connection",Object.freeze(v.shallowCopy(r))),o._nextId=42,o}return i(e,t),e.defaultUrl=function(){return"http://localhost:8545"},e.prototype.detectNetwork=function(){return o(this,void 0,void 0,(function(){var t,e;return s(this,(function(r){switch(r.label){case 0:return[4,u(0)];case 1:r.sent(),t=null,r.label=2;case 2:return r.trys.push([2,4,,9]),[4,this.send("eth_chainId",[])];case 3:return t=r.sent(),[3,9];case 4:r.sent(),r.label=5;case 5:return r.trys.push([5,7,,8]),[4,this.send("net_version",[])];case 6:return t=r.sent(),[3,8];case 7:return r.sent(),[3,8];case 8:return[3,9];case 9:if(null!=t){e=v.getStatic(this.constructor,"getNetwork");try{return[2,e(m.BigNumber.from(t).toNumber())]}catch(e){return[2,a.throwError("could not detect network",l.Logger.errors.NETWORK_ERROR,{chainId:t,event:"invalidNetwork",serverError:e})]}}return[2,a.throwError("could not detect network",l.Logger.errors.NETWORK_ERROR,{event:"noNetwork"})]}}))}))},e.prototype.getSigner=function(t){return new p(d,this,t)},e.prototype.getUncheckedSigner=function(t){return this.getSigner(t).connectUnchecked()},e.prototype.listAccounts=function(){var t=this;return this.send("eth_accounts",[]).then((function(e){return e.map((function(e){return t.formatter.address(e)}))}))},e.prototype.send=function(t,e){var r=this,n={method:t,params:e,id:this._nextId++,jsonrpc:"2.0"};return this.emit("debug",{action:"request",request:v.deepCopy(n),provider:this}),Yr.fetchJson(this.connection,JSON.stringify(n),h).then((function(t){return r.emit("debug",{action:"response",request:n,response:t,provider:r}),t}),(function(t){throw r.emit("debug",{action:"response",error:t,request:n,provider:r}),t}))},e.prototype.prepareRequest=function(t,e){switch(t){case"getBlockNumber":return["eth_blockNumber",[]];case"getGasPrice":return["eth_gasPrice",[]];case"getBalance":return["eth_getBalance",[f(e.address),e.blockTag]];case"getTransactionCount":return["eth_getTransactionCount",[f(e.address),e.blockTag]];case"getCode":return["eth_getCode",[f(e.address),e.blockTag]];case"getStorageAt":return["eth_getStorageAt",[f(e.address),e.position,e.blockTag]];case"sendTransaction":return["eth_sendRawTransaction",[e.signedTransaction]];case"getBlock":return e.blockTag?["eth_getBlockByNumber",[e.blockTag,!!e.includeTransactions]]:e.blockHash?["eth_getBlockByHash",[e.blockHash,!!e.includeTransactions]]:null;case"getTransaction":return["eth_getTransactionByHash",[e.transactionHash]];case"getTransactionReceipt":return["eth_getTransactionReceipt",[e.transactionHash]];case"call":return["eth_call",[v.getStatic(this.constructor,"hexlifyTransaction")(e.transaction,{from:!0}),e.blockTag]];case"estimateGas":return["eth_estimateGas",[v.getStatic(this.constructor,"hexlifyTransaction")(e.transaction,{from:!0})]];case"getLogs":return e.filter&&null!=e.filter.address&&(e.filter.address=f(e.filter.address)),["eth_getLogs",[e.filter]]}return null},e.prototype.perform=function(t,e){var r=this.prepareRequest(t,e);return null==r&&a.throwError(t+" not implemented",l.Logger.errors.NOT_IMPLEMENTED,{operation:t}),"sendTransaction"===t?this.send(r[0],r[1]).catch((function(t){throw t.responseText&&(t.responseText.indexOf("insufficient funds")>0&&a.throwError("insufficient funds",l.Logger.errors.INSUFFICIENT_FUNDS,{}),t.responseText.indexOf("nonce too low")>0&&a.throwError("nonce has already been used",l.Logger.errors.NONCE_EXPIRED,{}),t.responseText.indexOf("replacement transaction underpriced")>0&&a.throwError("replacement fee too low",l.Logger.errors.REPLACEMENT_UNDERPRICED,{})),t})):this.send(r[0],r[1])},e.prototype._startEvent=function(e){"pending"===e.tag&&this._startPending(),t.prototype._startEvent.call(this,e)},e.prototype._startPending=function(){if(null==this._pendingFilter){var t=this,e=this.send("eth_newPendingTransactionFilter",[]);this._pendingFilter=e,e.then((function(r){return function n(){t.send("eth_getFilterChanges",[r]).then((function(r){if(t._pendingFilter!=e)return null;var n=Promise.resolve();return r.forEach((function(e){t._emitted["t:"+e.toLowerCase()]="pending",n=n.then((function(){return t.getTransaction(e).then((function(e){return t.emit("pending",e),null}))}))})),n.then((function(){return u(1e3)}))})).then((function(){if(t._pendingFilter==e)return setTimeout((function(){n()}),0),null;t.send("eth_uninstallFilter",[r])})).catch((function(t){}))}(),r})).catch((function(t){}))}},e.prototype._stopEvent=function(e){"pending"===e.tag&&0===this.listenerCount("pending")&&(this._pendingFilter=null),t.prototype._stopEvent.call(this,e)},e.hexlifyTransaction=function(t,e){var r=v.shallowCopy(y);if(e)for(var n in e)e[n]&&(r[n]=!0);v.checkProperties(t,r);var i={};return["gasLimit","gasPrice","nonce","value"].forEach((function(e){if(null!=t[e]){var r=c.hexValue(t[e]);"gasLimit"===e&&(e="gas"),i[e]=r}})),["from","to","data"].forEach((function(e){null!=t[e]&&(i[e]=c.hexlify(t[e]))})),i},e}(rn.BaseProvider);r.JsonRpcProvider=b}))),sn=(r(on),on.JsonRpcSigner,on.JsonRpcProvider,n((function(t,r){var n,i=e&&e.__extends||(n=function(t,e){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(t,e)},function(t,e){function r(){this.constructor=t}n(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)}),o=e&&e.__awaiter||function(t,e,r,n){return new(r||(r=Promise))((function(i,o){function s(t){try{u(n.next(t))}catch(t){o(t)}}function a(t){try{u(n.throw(t))}catch(t){o(t)}}function u(t){var e;t.done?i(t.value):(e=t.value,e instanceof r?e:new r((function(t){t(e)}))).then(s,a)}u((n=n.apply(t,e||[])).next())}))},s=e&&e.__generator||function(t,e){var r,n,i,o,s={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return o={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function a(o){return function(a){return function(o){if(r)throw new TypeError("Generator is already executing.");for(;s;)try{if(r=1,n&&(i=2&o[0]?n.return:o[0]?n.throw||((i=n.return)&&i.call(n),0):n.next)&&!(i=i.call(n,o[1])).done)return i;switch(n=0,i&&(o=[2&o[0],i.value]),o[0]){case 0:case 1:i=o;break;case 4:return s.label++,{value:o[1],done:!1};case 5:s.label++,n=o[1],o=[0];continue;case 7:o=s.ops.pop(),s.trys.pop();continue;default:if(!(i=s.trys,(i=i.length>0&&i[i.length-1])||6!==o[0]&&2!==o[0])){s=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]0&&i[i.length-1])||6!==o[0]&&2!==o[0])){s=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]0&&i[i.length-1])||6!==o[0]&&2!==o[0])){s=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]0&&i[i.length-1])||6!==o[0]&&2!==o[0])){s=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]=0&&(e.throttleRetry=!0),e}return t.result}function f(t){if(t&&0==t.status&&"NOTOK"==t.message&&(t.result||"").toLowerCase().indexOf("rate limit")>=0)throw(e=new Error("throttled response")).result=JSON.stringify(t),e.throttleRetry=!0,e;if("2.0"!=t.jsonrpc)throw(e=new Error("invalid response")).result=JSON.stringify(t),e;if(t.error){var e=new Error(t.error.message||"unknown error");throw t.error.code&&(e.code=t.error.code),t.error.data&&(e.data=t.error.data),e}return t.result}function d(t){if("pending"===t)throw new Error("pending not supported");return"latest"===t?t:parseInt(t.substring(2),16)}var p="9D13ZE7XSBTJ94N9BNJ2MA33VMAY2YPIRB",m=function(t){function e(r,n){var i,o=this.constructor;a.checkNew(o,e);var s="invalid";(i=t.call(this,r)||this).network&&(s=i.network.name);var u=null;switch(s){case"homestead":u="https://api.etherscan.io";break;case"ropsten":u="https://api-ropsten.etherscan.io";break;case"rinkeby":u="https://api-rinkeby.etherscan.io";break;case"kovan":u="https://api-kovan.etherscan.io";break;case"goerli":u="https://api-goerli.etherscan.io";break;default:throw new Error("unsupported network")}return v.defineReadOnly(i,"baseUrl",u),v.defineReadOnly(i,"apiKey",n||p),i}return i(e,t),e.prototype.detectNetwork=function(){return o(this,void 0,void 0,(function(){return s(this,(function(t){return[2,this.network]}))}))},e.prototype.perform=function(e,r){return o(this,void 0,void 0,(function(){var n,i,c,m,g,y,b,w,_,M,E,k=this;return s(this,(function(S){switch(S.label){case 0:switch(n=this.baseUrl,i="",this.apiKey&&(i+="&apikey="+this.apiKey),c=function(t,e){return o(k,void 0,void 0,(function(){var r,n,i=this;return s(this,(function(o){switch(o.label){case 0:return this.emit("debug",{action:"request",request:t,provider:this}),r={url:t,throttleCallback:function(t,e){return i.apiKey===p&&en.showThrottleMessage(),Promise.resolve(!0)}},[4,Yr.fetchJson(r,null,e||f)];case 1:return n=o.sent(),this.emit("debug",{action:"response",request:t,response:v.deepCopy(n),provider:this}),[2,n]}}))}))},e){case"getBlockNumber":return[3,1];case"getGasPrice":return[3,2];case"getBalance":return[3,3];case"getTransactionCount":return[3,4];case"getCode":return[3,5];case"getStorageAt":return[3,6];case"sendTransaction":return[3,7];case"getBlock":return[3,8];case"getTransaction":return[3,9];case"getTransactionReceipt":return[3,10];case"call":return[3,11];case"estimateGas":return[3,12];case"getLogs":return[3,13];case"getEtherPrice":return[3,20]}return[3,22];case 1:return[2,c(n+="/api?module=proxy&action=eth_blockNumber"+i)];case 2:return[2,c(n+="/api?module=proxy&action=eth_gasPrice"+i)];case 3:return n+="/api?module=account&action=balance&address="+r.address,n+="&tag="+r.blockTag+i,[2,c(n,h)];case 4:return n+="/api?module=proxy&action=eth_getTransactionCount&address="+r.address,n+="&tag="+r.blockTag+i,[2,c(n)];case 5:return n+="/api?module=proxy&action=eth_getCode&address="+r.address,n+="&tag="+r.blockTag+i,[2,c(n)];case 6:return n+="/api?module=proxy&action=eth_getStorageAt&address="+r.address,n+="&position="+r.position,n+="&tag="+r.blockTag+i,[2,c(n)];case 7:return n+="/api?module=proxy&action=eth_sendRawTransaction&hex="+r.signedTransaction,[2,c(n+=i).catch((function(t){throw t.responseText&&(t.responseText.toLowerCase().indexOf("insufficient funds")>=0&&a.throwError("insufficient funds",l.Logger.errors.INSUFFICIENT_FUNDS,{}),t.responseText.indexOf("same hash was already imported")>=0&&a.throwError("nonce has already been used",l.Logger.errors.NONCE_EXPIRED,{}),t.responseText.indexOf("another transaction with same nonce")>=0&&a.throwError("replacement fee too low",l.Logger.errors.REPLACEMENT_UNDERPRICED,{})),t}))];case 8:if(r.blockTag)return n+="/api?module=proxy&action=eth_getBlockByNumber&tag="+r.blockTag,r.includeTransactions?n+="&boolean=true":n+="&boolean=false",[2,c(n+=i)];throw new Error("getBlock by blockHash not implemented");case 9:return n+="/api?module=proxy&action=eth_getTransactionByHash&txhash="+r.transactionHash,[2,c(n+=i)];case 10:return n+="/api?module=proxy&action=eth_getTransactionReceipt&txhash="+r.transactionHash,[2,c(n+=i)];case 11:if((m=u(r.transaction))&&(m="&"+m),n+="/api?module=proxy&action=eth_call"+m,"latest"!==r.blockTag)throw new Error("EtherscanProvider does not support blockTag for call");return[2,c(n+=i)];case 12:return(m=u(r.transaction))&&(m="&"+m),n+="/api?module=proxy&action=eth_estimateGas&"+m,[2,c(n+=i)];case 13:return n+="/api?module=logs&action=getLogs",r.filter.fromBlock&&(n+="&fromBlock="+d(r.filter.fromBlock)),r.filter.toBlock&&(n+="&toBlock="+d(r.filter.toBlock)),r.filter.address&&(n+="&address="+r.filter.address),r.filter.topics&&r.filter.topics.length>0&&(r.filter.topics.length>1&&a.throwError("unsupported topic count",l.Logger.errors.UNSUPPORTED_OPERATION,{topics:r.filter.topics}),1===r.filter.topics.length&&("string"==typeof(g=r.filter.topics[0])&&66===g.length||a.throwError("unsupported topic format",l.Logger.errors.UNSUPPORTED_OPERATION,{topic0:g}),n+="&topic0="+g)),[4,c(n+=i,h)];case 14:y=S.sent(),b={},w=0,S.label=15;case 15:return w0&&i[i.length-1])||6!==o[0]&&2!==o[0])){s=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]e?null:(n+i)/2}function d(t){if(null===t)return"null";if("number"==typeof t||"boolean"==typeof t)return JSON.stringify(t);if("string"==typeof t)return t;if(m.BigNumber.isBigNumber(t))return t.toString();if(Array.isArray(t))return JSON.stringify(t.map((function(t){return d(t)})));if("object"==typeof t){var e=Object.keys(t);return e.sort(),"{"+e.map((function(e){var r=t[e];return r="function"==typeof r?"[function]":d(r),JSON.stringify(e)+":"+r})).join(",")+"}"}throw new Error("unknown value type: "+typeof t)}var p=1;function g(t){var e=null,r=null,n=new Promise((function(n){e=function(){r&&(clearTimeout(r),r=null),n()},r=setTimeout(e,t)}));return{cancel:e,getPromise:function(){return n},wait:function(t){return n=n.then(t)}}}function y(t,e){var r={provider:t.provider,weight:t.weight};return t.start&&(r.start=t.start),e&&(r.duration=e-t.start),t.done&&(t.error?r.error=t.error:r.result=t.result||null),r}function b(t,e,r){var n=d;switch(e){case"getBlockNumber":return function(e){var r=e.map((function(t){return t.result})),n=f(e.map((function(t){return t.result})),2);if(null!=n)return n=Math.ceil(n),r.indexOf(n+1)>=0&&n++,n>=t._highestBlockNumber&&(t._highestBlockNumber=n),t._highestBlockNumber};case"getGasPrice":return function(t){var e=t.map((function(t){return t.result}));return e.sort(),e[Math.floor(e.length/2)]};case"getEtherPrice":return function(t){return f(t.map((function(t){return t.result})))};case"getBalance":case"getTransactionCount":case"getCode":case"getStorageAt":case"call":case"estimateGas":case"getLogs":break;case"getTransaction":case"getTransactionReceipt":n=function(t){return null==t?null:((t=v.shallowCopy(t)).confirmations=-1,d(t))};break;case"getBlock":n=r.includeTransactions?function(t){return null==t?null:((t=v.shallowCopy(t)).transactions=t.transactions.map((function(t){return(t=v.shallowCopy(t)).confirmations=-1,t})),d(t))}:function(t){return null==t?null:d(t)};break;default:throw new Error("unknown method: "+e)}return function(t,e){return function(r){var n={};r.forEach((function(e){var r=t(e.result);n[r]||(n[r]={count:0,result:e.result}),n[r].count++}));for(var i=Object.keys(n),o=0;o=e)return s.result}}}(n,t.quorum)}function w(t,e){return o(this,void 0,void 0,(function(){var r;return s(this,(function(n){return null!=(r=t.provider).blockNumber&&r.blockNumber>=e||-1===e?[2,r]:[2,Yr.poll((function(){return new Promise((function(n,i){setTimeout((function(){return r.blockNumber>=e?n(r):t.cancelled?n(null):n(void 0)}),0)}))}),{oncePoll:r})]}))}))}var _=function(t){function e(r,n){var i=this.constructor,o=this;a.checkNew(i,e),0===r.length&&a.throwArgumentError("missing providers","providers",r);var s=r.map((function(t,e){if(Z.Provider.isProvider(t))return Object.freeze({provider:t,weight:1,stallTimeout:750,priority:1});var r=v.shallowCopy(t);null==r.priority&&(r.priority=1),null==r.stallTimeout&&(r.stallTimeout=750),null==r.weight&&(r.weight=1);var n=r.weight;return(n%1||n>512||n<1)&&a.throwArgumentError("invalid weight; must be integer in [1, 512]","providers["+e+"].weight",n),Object.freeze(r)})),u=s.reduce((function(t,e){return t+e.weight}),0);null==n?n=u/2:n>u&&a.throwArgumentError("quorum will always fail; larger than total weight","quorum",n);var l=h(s.map((function(t){return t.provider.network})));return null==l&&(l=new Promise((function(t,e){setTimeout((function(){o.detectNetwork().then(t,e)}),0)}))),o=t.call(this,l)||this,v.defineReadOnly(o,"providerConfigs",Object.freeze(s)),v.defineReadOnly(o,"quorum",n),o._highestBlockNumber=-1,o}return i(e,t),e.prototype.detectNetwork=function(){return o(this,void 0,void 0,(function(){return s(this,(function(t){switch(t.label){case 0:return[4,Promise.all(this.providerConfigs.map((function(t){return t.provider.getNetwork()})))];case 1:return[2,h(t.sent())]}}))}))},e.prototype.perform=function(t,e){return o(this,void 0,void 0,(function(){var r,n,i,h,f,d,m,_,M,E,k,S=this;return s(this,(function(P){switch(P.label){case 0:return"sendTransaction"!==t?[3,2]:[4,Promise.all(this.providerConfigs.map((function(t){return t.provider.sendTransaction(e.signedTransaction).then((function(t){return t.hash}),(function(t){return t}))})))];case 1:for(r=P.sent(),n=0;n=E.quorum?void 0!==(k=h(M))?(f.forEach((function(t){t.staller&&t.staller.cancel(),t.cancelled=!0})),[2,{value:k}]):_?[3,4]:[4,g(100).getPromise()]:[3,5];case 3:P.sent(),P.label=4;case 4:_=!1,P.label=5;case 5:return 0===f.filter((function(t){return!t.done})).length?[2,"break"]:[2]}}))},E=this,P.label=5;case 5:return[5,M()];case 6:return"object"==typeof(k=P.sent())?[2,k.value]:"break"===k?[3,7]:[3,5];case 7:return f.forEach((function(t){t.staller&&t.staller.cancel(),t.cancelled=!0})),[2,a.throwError("failed to meet quorum",l.Logger.errors.SERVER_ERROR,{method:t,params:e,results:f.map((function(t){return y(t)})),provider:this})]}}))}))},e}(rn.BaseProvider);r.FallbackProvider=_}))),fn=(r(cn),cn.FallbackProvider,null),dn=n((function(t,r){var n,i=e&&e.__extends||(n=function(t,e){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(t,e)},function(t,e){function r(){this.constructor=t}n(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)});Object.defineProperty(r,"__esModule",{value:!0});var o=new l.Logger(tn.version),s="84842078b09946638c03157f83405213",a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i(e,t),e.getWebSocketProvider=function(t,r){var n=new e(t,r).connection;n.password&&o.throwError("INFURA WebSocket project secrets unsupported",l.Logger.errors.UNSUPPORTED_OPERATION,{operation:"InfuraProvider.getWebSocketProvider()"});var i=n.url.replace(/^http/i,"ws").replace("/v3/","/ws/v3/");return new sn.WebSocketProvider(i,t)},e.getApiKey=function(t){var e={apiKey:s,projectId:s,projectSecret:null};return null==t||("string"==typeof t?e.projectId=t:null!=t.projectSecret?(o.assertArgument("string"==typeof t.projectId,"projectSecret requires a projectId","projectId",t.projectId),o.assertArgument("string"==typeof t.projectSecret,"invalid projectSecret","projectSecret","[REDACTED]"),e.projectId=t.projectId,e.projectSecret=t.projectSecret):t.projectId&&(e.projectId=t.projectId),e.apiKey=e.projectId),e},e.getUrl=function(t,e){var r=null;switch(t?t.name:"unknown"){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:o.throwError("unsupported network",l.Logger.errors.INVALID_ARGUMENT,{argument:"network",value:t})}var n={url:"https://"+r+"/v3/"+e.projectId,throttleCallback:function(t,r){return e.projectId===s&&en.showThrottleMessage(),Promise.resolve(!0)}};return null!=e.projectSecret&&(n.user="",n.password=e.projectSecret),n},e}(an.UrlJsonRpcProvider);r.InfuraProvider=a})),pn=(r(dn),dn.InfuraProvider,n((function(t,r){var n,i=e&&e.__extends||(n=function(t,e){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(t,e)},function(t,e){function r(){this.constructor=t}n(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)});Object.defineProperty(r,"__esModule",{value:!0});var o=new l.Logger(tn.version),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i(e,t),e.getApiKey=function(t){return t&&"string"!=typeof t&&o.throwArgumentError("invalid apiKey","apiKey",t),t||"ETHERS_JS_SHARED"},e.getUrl=function(t,e){o.warn("NodeSmith will be discontinued on 2019-12-20; please migrate to another platform.");var r=null;switch(t.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:o.throwArgumentError("unsupported network","network",arguments[0])}return r+"?apiKey="+e},e}(an.UrlJsonRpcProvider);r.NodesmithProvider=s}))),mn=(r(pn),pn.NodesmithProvider,n((function(t,r){var n,i=e&&e.__extends||(n=function(t,e){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(t,e)},function(t,e){function r(){this.constructor=t}n(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)});Object.defineProperty(r,"__esModule",{value:!0});var o=new l.Logger(tn.version),s=1;function a(t,e){return function(r,n){"eth_sign"==r&&t.isMetaMask&&(r="personal_sign",n=[n[1],n[0]]);var i={method:r,params:n,id:s++,jsonrpc:"2.0"};return new Promise((function(t,r){e(i,(function(e,n){if(e)return r(e);if(n.error){var i=new Error(n.error.message);return i.code=n.error.code,i.data=n.error.data,r(i)}t(n.result)}))}))}}var u=function(t){function e(r,n){var i,s=this.constructor;o.checkNew(s,e),null==r&&o.throwArgumentError("missing provider","provider",r);var u=null,l=null,h=null;return"function"==typeof r?(u="unknown:",l=r):(!(u=r.host||r.path||"")&&r.isMetaMask&&(u="metamask"),h=r,r.request?(""===u&&(u="eip-1193:"),l=function(t){return function(e,r){return null==r&&(r=[]),"eth_sign"==e&&t.isMetaMask&&(e="personal_sign",r=[r[1],r[0]]),t.request({method:e,params:r})}}(r)):r.sendAsync?l=a(r,r.sendAsync.bind(r)):r.send?l=a(r,r.send.bind(r)):o.throwArgumentError("unsupported provider","provider",r),u||(u="unknown:")),i=t.call(this,u,n)||this,v.defineReadOnly(i,"jsonRpcFetchFunc",l),v.defineReadOnly(i,"provider",h),i}return i(e,t),e.prototype.send=function(t,e){return this.jsonRpcFetchFunc(t,e)},e}(on.JsonRpcProvider);r.Web3Provider=u}))),gn=(r(mn),mn.Web3Provider,n((function(t,e){Object.defineProperty(e,"__esModule",{value:!0}),e.Provider=Z.Provider,e.getNetwork=Zr.getNetwork,e.BaseProvider=rn.BaseProvider,e.AlchemyProvider=un.AlchemyProvider,e.CloudflareProvider=ln.CloudflareProvider,e.EtherscanProvider=hn.EtherscanProvider,e.FallbackProvider=cn.FallbackProvider,e.IpcProvider=fn,e.InfuraProvider=dn.InfuraProvider,e.JsonRpcProvider=on.JsonRpcProvider,e.JsonRpcSigner=on.JsonRpcSigner,e.NodesmithProvider=pn.NodesmithProvider,e.StaticJsonRpcProvider=an.StaticJsonRpcProvider,e.UrlJsonRpcProvider=an.UrlJsonRpcProvider,e.Web3Provider=mn.Web3Provider,e.WebSocketProvider=sn.WebSocketProvider,e.Formatter=en.Formatter;var r=new l.Logger(tn.version);e.getDefaultProvider=function(t,e){if(null==t&&(t="homestead"),"string"==typeof t){var n=t.match(/^(ws|http)s?:/i);if(n)switch(n[1]){case"http":return new on.JsonRpcProvider(t);case"ws":return new sn.WebSocketProvider(t);default:r.throwArgumentError("unsupported URL scheme","network",t)}}var i=Zr.getNetwork(t);return i&&i._defaultProvider||r.throwError("unsupported getDefaultProvider network",l.Logger.errors.NETWORK_ERROR,{operation:"getDefaultProvider",network:t}),i._defaultProvider({FallbackProvider:cn.FallbackProvider,AlchemyProvider:un.AlchemyProvider,CloudflareProvider:ln.CloudflareProvider,EtherscanProvider:hn.EtherscanProvider,InfuraProvider:dn.InfuraProvider,JsonRpcProvider:on.JsonRpcProvider,NodesmithProvider:pn.NodesmithProvider,Web3Provider:mn.Web3Provider,IpcProvider:fn},e)}}))),vn=(r(gn),gn.Provider,gn.getNetwork,gn.BaseProvider,gn.AlchemyProvider,gn.CloudflareProvider,gn.EtherscanProvider,gn.FallbackProvider,gn.IpcProvider,gn.InfuraProvider,gn.JsonRpcProvider,gn.JsonRpcSigner,gn.NodesmithProvider,gn.StaticJsonRpcProvider,gn.UrlJsonRpcProvider,gn.Web3Provider,gn.WebSocketProvider,gn.Formatter,gn.getDefaultProvider,n((function(t,e){Object.defineProperty(e,"__esModule",{value:!0});var r=new RegExp("^bytes([0-9]+)$"),n=new RegExp("^(u?int)([0-9]*)$"),i=new RegExp("^(.*)\\[([0-9]*)\\]$");function o(t,e){if(t.length!=e.length)throw new Error("type/value count mismatch");var o=[];return t.forEach((function(t,s){o.push(function t(e,o,s){switch(e){case"address":return s?c.zeroPad(o,32):c.arrayify(o);case"string":return D.toUtf8Bytes(o);case"bytes":return c.arrayify(o);case"bool":return o=o?"0x01":"0x00",s?c.zeroPad(o,32):c.arrayify(o)}var a=e.match(n);if(a){var u=parseInt(a[2]||"256");if(a[2]&&String(u)!==a[2]||u%8!=0||0===u||u>256)throw new Error("invalid number type - "+e);return s&&(u=256),o=m.BigNumber.from(o).toTwos(u),c.zeroPad(o,u/8)}if(a=e.match(r)){u=parseInt(a[1]);if(String(u)!==a[1]||0===u||u>32)throw new Error("invalid bytes type - "+e);if(c.arrayify(o).byteLength!==u)throw new Error("invalid value for "+e);return s?c.arrayify((o+"0000000000000000000000000000000000000000000000000000000000000000").substring(0,66)):o}if((a=e.match(i))&&Array.isArray(o)){var l=a[1];if(parseInt(a[2]||String(o.length))!=o.length)throw new Error("invalid value for "+e);var h=[];return o.forEach((function(e){h.push(t(l,e,!0))})),c.concat(h)}throw new Error("invalid type - "+e)}(t,e[s]))})),c.hexlify(c.concat(o))}e.pack=o,e.keccak256=function(t,e){return M.keccak256(o(t,e))},e.sha256=function(t,e){return Me.sha256(o(t,e))}}))),yn=(r(vn),vn.pack,vn.keccak256,vn.sha256,n((function(t,e){Object.defineProperty(e,"__esModule",{value:!0}),e.version="units/5.0.2"}))),bn=(r(yn),yn.version,n((function(t,e){Object.defineProperty(e,"__esModule",{value:!0});var r=new l.Logger(yn.version),n=["wei","kwei","mwei","gwei","szabo","finney","ether"];function i(t,e){if("string"==typeof e){var r=n.indexOf(e);-1!==r&&(e=3*r)}return m.formatFixed(t,null!=e?e:18)}function o(t,e){if("string"==typeof e){var r=n.indexOf(e);-1!==r&&(e=3*r)}return m.parseFixed(t,null!=e?e:18)}e.commify=function(t){var e=String(t).split(".");(e.length>2||!e[0].match(/^-?[0-9]*$/)||e[1]&&!e[1].match(/^[0-9]*$/)||"."===t||"-."===t)&&r.throwArgumentError("invalid value","value",t);var n=e[0],i="";for("-"===n.substring(0,1)&&(i="-",n=n.substring(1));"0"===n.substring(0,1);)n=n.substring(1);""===n&&(n="0");var o="";for(2===e.length&&(o="."+(e[1]||"0"));o.length>2&&"0"===o[o.length-1];)o=o.substring(0,o.length-1);for(var s=[];n.length;){if(n.length<=3){s.unshift(n);break}var a=n.length-3;s.unshift(n.substring(a)),n=n.substring(0,a)}return i+s.join(",")+o},e.formatUnits=i,e.parseUnits=o,e.formatEther=function(t){return i(t,18)},e.parseEther=function(t){return o(t,18)}}))),wn=(r(bn),bn.commify,bn.formatUnits,bn.parseUnits,bn.formatEther,bn.parseEther,n((function(t,r){var n=e&&e.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(null!=t)for(var r in t)Object.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e.default=t,e};Object.defineProperty(r,"__esModule",{value:!0}),r.AbiCoder=V.AbiCoder,r.checkResultErrors=V.checkResultErrors,r.defaultAbiCoder=V.defaultAbiCoder,r.EventFragment=V.EventFragment,r.FormatTypes=V.FormatTypes,r.Fragment=V.Fragment,r.FunctionFragment=V.FunctionFragment,r.Indexed=V.Indexed,r.Interface=V.Interface,r.LogDescription=V.LogDescription,r.ParamType=V.ParamType,r.TransactionDescription=V.TransactionDescription,r.getAddress=P.getAddress,r.getCreate2Address=P.getCreate2Address,r.getContractAddress=P.getContractAddress,r.getIcapAddress=P.getIcapAddress,r.isAddress=P.isAddress;var i=n(Xr);r.base64=i,r.arrayify=c.arrayify,r.concat=c.concat,r.hexDataSlice=c.hexDataSlice,r.hexDataLength=c.hexDataLength,r.hexlify=c.hexlify,r.hexStripZeros=c.hexStripZeros,r.hexValue=c.hexValue,r.hexZeroPad=c.hexZeroPad,r.isBytes=c.isBytes,r.isBytesLike=c.isBytesLike,r.isHexString=c.isHexString,r.joinSignature=c.joinSignature,r.zeroPad=c.zeroPad,r.splitSignature=c.splitSignature,r.stripZeros=c.stripZeros,r.hashMessage=q.hashMessage,r.id=q.id,r.isValidName=q.isValidName,r.namehash=q.namehash,r.defaultPath=br.defaultPath,r.entropyToMnemonic=br.entropyToMnemonic,r.HDNode=br.HDNode,r.isValidMnemonic=br.isValidMnemonic,r.mnemonicToEntropy=br.mnemonicToEntropy,r.mnemonicToSeed=br.mnemonicToSeed,r.getJsonWalletAddress=qr.getJsonWalletAddress,r.keccak256=M.keccak256,r.Logger=l.Logger,r.computeHmac=Me.computeHmac,r.ripemd160=Me.ripemd160,r.sha256=Me.sha256,r.sha512=Me.sha512,r.solidityKeccak256=vn.keccak256,r.solidityPack=vn.pack,r.soliditySha256=vn.sha256,r.randomBytes=Mr.randomBytes,r.shuffled=Mr.shuffled,r.checkProperties=v.checkProperties,r.deepCopy=v.deepCopy,r.defineReadOnly=v.defineReadOnly,r.getStatic=v.getStatic,r.resolveProperties=v.resolveProperties,r.shallowCopy=v.shallowCopy;var o=n(k);r.RLP=o,r.computePublicKey=cr.computePublicKey,r.recoverPublicKey=cr.recoverPublicKey,r.SigningKey=cr.SigningKey,r.formatBytes32String=D.formatBytes32String,r.nameprep=D.nameprep,r.parseBytes32String=D.parseBytes32String,r._toEscapedUtf8String=D._toEscapedUtf8String,r.toUtf8Bytes=D.toUtf8Bytes,r.toUtf8CodePoints=D.toUtf8CodePoints,r.toUtf8String=D.toUtf8String,r.Utf8ErrorFuncs=D.Utf8ErrorFuncs,r.computeAddress=dr.computeAddress,r.parseTransaction=dr.parse,r.recoverAddress=dr.recoverAddress,r.serializeTransaction=dr.serialize,r.commify=bn.commify,r.formatEther=bn.formatEther,r.parseEther=bn.parseEther,r.formatUnits=bn.formatUnits,r.parseUnits=bn.parseUnits,r.verifyMessage=Vr.verifyMessage,r.fetchJson=Yr.fetchJson,r.poll=Yr.poll;var s=Me;r.SupportedAlgorithm=s.SupportedAlgorithm;var a=D;r.UnicodeNormalizationForm=a.UnicodeNormalizationForm,r.Utf8ErrorReason=a.Utf8ErrorReason}))),_n=(r(wn),wn.AbiCoder,wn.checkResultErrors,wn.defaultAbiCoder,wn.EventFragment,wn.FormatTypes,wn.Fragment,wn.FunctionFragment,wn.Indexed,wn.Interface,wn.LogDescription,wn.ParamType,wn.TransactionDescription,wn.getAddress,wn.getCreate2Address,wn.getContractAddress,wn.getIcapAddress,wn.isAddress,wn.base64,wn.arrayify,wn.concat,wn.hexDataSlice,wn.hexDataLength,wn.hexlify,wn.hexStripZeros,wn.hexValue,wn.hexZeroPad,wn.isBytes,wn.isBytesLike,wn.isHexString,wn.joinSignature,wn.zeroPad,wn.splitSignature,wn.stripZeros,wn.hashMessage,wn.id,wn.isValidName,wn.namehash,wn.defaultPath,wn.entropyToMnemonic,wn.HDNode,wn.isValidMnemonic,wn.mnemonicToEntropy,wn.mnemonicToSeed,wn.getJsonWalletAddress,wn.keccak256,wn.Logger,wn.computeHmac,wn.ripemd160,wn.sha256,wn.sha512,wn.solidityKeccak256,wn.solidityPack,wn.soliditySha256,wn.randomBytes,wn.shuffled,wn.checkProperties,wn.deepCopy,wn.defineReadOnly,wn.getStatic,wn.resolveProperties,wn.shallowCopy,wn.RLP,wn.computePublicKey,wn.recoverPublicKey,wn.SigningKey,wn.formatBytes32String,wn.nameprep,wn.parseBytes32String,wn._toEscapedUtf8String,wn.toUtf8Bytes,wn.toUtf8CodePoints,wn.toUtf8String,wn.Utf8ErrorFuncs,wn.computeAddress,wn.parseTransaction,wn.recoverAddress,wn.serializeTransaction,wn.commify,wn.formatEther,wn.parseEther,wn.formatUnits,wn.parseUnits,wn.verifyMessage,wn.fetchJson,wn.poll,wn.SupportedAlgorithm,wn.UnicodeNormalizationForm,wn.Utf8ErrorReason,n((function(t,e){Object.defineProperty(e,"__esModule",{value:!0}),e.version="ethers/5.0.6"}))),Mn=(r(_n),_n.version,n((function(t,r){var n=e&&e.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(null!=t)for(var r in t)Object.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e.default=t,e};Object.defineProperty(r,"__esModule",{value:!0}),r.Contract=Y.Contract,r.ContractFactory=Y.ContractFactory,r.BigNumber=m.BigNumber,r.FixedNumber=m.FixedNumber,r.Signer=$.Signer,r.VoidSigner=$.VoidSigner,r.Wallet=Vr.Wallet;var i=n(B);r.constants=i;var o=n(gn);r.providers=o;var s=gn;r.getDefaultProvider=s.getDefaultProvider,r.Wordlist=vr.Wordlist,r.wordlists=vr.wordlists;var a=n(wn);r.utils=a,r.errors=l.ErrorCode,r.version=_n.version;var u=new l.Logger(_n.version);r.logger=u}))),En=(r(Mn),Mn.Contract,Mn.ContractFactory,Mn.BigNumber,Mn.FixedNumber,Mn.Signer,Mn.VoidSigner,Mn.Wallet,Mn.constants,Mn.providers,Mn.getDefaultProvider,Mn.Wordlist,Mn.wordlists,Mn.utils,Mn.errors,Mn.version,Mn.logger,n((function(t,r){var n=e&&e.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(null!=t)for(var r in t)Object.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e.default=t,e};Object.defineProperty(r,"__esModule",{value:!0});var i=n(Mn);r.ethers=i;try{var o=window;null==o._ethers&&(o._ethers=i)}catch(t){}var s=Mn;r.Signer=s.Signer,r.Wallet=s.Wallet,r.VoidSigner=s.VoidSigner,r.getDefaultProvider=s.getDefaultProvider,r.providers=s.providers,r.Contract=s.Contract,r.ContractFactory=s.ContractFactory,r.BigNumber=s.BigNumber,r.FixedNumber=s.FixedNumber,r.constants=s.constants,r.errors=s.errors,r.logger=s.logger,r.utils=s.utils,r.wordlists=s.wordlists,r.version=s.version,r.Wordlist=s.Wordlist}))),kn=r(En),Sn=En.ethers,Pn=En.Signer,An=En.Wallet,xn=En.VoidSigner,Nn=En.getDefaultProvider,On=En.providers,Rn=En.Contract,Tn=En.ContractFactory,Cn=En.BigNumber,Bn=En.FixedNumber,In=En.constants,Fn=En.errors,Ln=En.logger,Un=En.utils,jn=En.wordlists,Dn=En.version,zn=En.Wordlist;t.BigNumber=Cn,t.Contract=Rn,t.ContractFactory=Tn,t.FixedNumber=Bn,t.Signer=Pn,t.VoidSigner=xn,t.Wallet=An,t.Wordlist=zn,t.constants=In,t.default=kn,t.errors=Fn,t.ethers=Sn,t.getDefaultProvider=Nn,t.logger=Ln,t.providers=On,t.utils=Un,t.version=Dn,t.wordlists=jn,Object.defineProperty(t,"__esModule",{value:!0})}));