!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e=e||self).ethers={})}(this,(function(e){"use strict";var t="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function r(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}function n(e,t){return e(t={exports:{}},t.exports),t.exports}function o(e){return e&&e.default||e}var i=Object.freeze({default:{}}),a=o(i),s=n((function(e){!function(e,t){function r(e,t){if(!e)throw new Error(t||"Assertion failed")}function n(e,t){e.super_=t;var r=function(){};r.prototype=t.prototype,e.prototype=new r,e.prototype.constructor=e}function o(e,t,r){if(o.isBN(e))return e;this.negative=0,this.words=null,this.length=0,this.red=null,null!==e&&("le"!==t&&"be"!==t||(r=t,t=10),this._init(e||0,t||10,r||"be"))}var i;"object"==typeof e?e.exports=o:t.BN=o,o.BN=o,o.wordSize=26;try{i=a.Buffer}catch(e){}function s(e,t,r){for(var n=0,o=Math.min(e.length,r),i=t;i=49&&a<=54?a-49+10:a>=17&&a<=22?a-17+10:15&a}return n}function u(e,t,r,n){for(var o=0,i=Math.min(e.length,r),a=t;a=49?s-49+10:s>=17?s-17+10:s}return o}o.isBN=function(e){return e instanceof o||null!==e&&"object"==typeof e&&e.constructor.wordSize===o.wordSize&&Array.isArray(e.words)},o.max=function(e,t){return e.cmp(t)>0?e:t},o.min=function(e,t){return e.cmp(t)<0?e:t},o.prototype._init=function(e,t,n){if("number"==typeof e)return this._initNumber(e,t,n);if("object"==typeof e)return this._initArray(e,t,n);"hex"===t&&(t=16),r(t===(0|t)&&t>=2&&t<=36);var o=0;"-"===(e=e.toString().replace(/\s+/g,""))[0]&&o++,16===t?this._parseHex(e,o):this._parseBase(e,t,o),"-"===e[0]&&(this.negative=1),this.strip(),"le"===n&&this._initArray(this.toArray(),t,n)},o.prototype._initNumber=function(e,t,n){e<0&&(this.negative=1,e=-e),e<67108864?(this.words=[67108863&e],this.length=1):e<4503599627370496?(this.words=[67108863&e,e/67108864&67108863],this.length=2):(r(e<9007199254740992),this.words=[67108863&e,e/67108864&67108863,1],this.length=3),"le"===n&&this._initArray(this.toArray(),t,n)},o.prototype._initArray=function(e,t,n){if(r("number"==typeof e.length),e.length<=0)return this.words=[0],this.length=1,this;this.length=Math.ceil(e.length/3),this.words=new Array(this.length);for(var o=0;o=0;o-=3)a=e[o]|e[o-1]<<8|e[o-2]<<16,this.words[i]|=a<>>26-s&67108863,(s+=24)>=26&&(s-=26,i++);else if("le"===n)for(o=0,i=0;o>>26-s&67108863,(s+=24)>=26&&(s-=26,i++);return this.strip()},o.prototype._parseHex=function(e,t){this.length=Math.ceil((e.length-t)/6),this.words=new Array(this.length);for(var r=0;r=t;r-=6)o=s(e,r,r+6),this.words[n]|=o<>>26-i&4194303,(i+=24)>=26&&(i-=26,n++);r+6!==t&&(o=s(e,t,r+6),this.words[n]|=o<>>26-i&4194303),this.strip()},o.prototype._parseBase=function(e,t,r){this.words=[0],this.length=1;for(var n=0,o=1;o<=67108863;o*=t)n++;n--,o=o/t|0;for(var i=e.length-r,a=i%n,s=Math.min(i,i-a)+r,c=0,l=r;l1&&0===this.words[this.length-1];)this.length--;return this._normSign()},o.prototype._normSign=function(){return 1===this.length&&0===this.words[0]&&(this.negative=0),this},o.prototype.inspect=function(){return(this.red?""};var c=["","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"],l=[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],f=[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 h(e,t,r){r.negative=t.negative^e.negative;var n=e.length+t.length|0;r.length=n,n=n-1|0;var o=0|e.words[0],i=0|t.words[0],a=o*i,s=67108863&a,u=a/67108864|0;r.words[0]=s;for(var c=1;c>>26,f=67108863&u,h=Math.min(c,t.length-1),d=Math.max(0,c-e.length+1);d<=h;d++){var p=c-d|0;l+=(a=(o=0|e.words[p])*(i=0|t.words[d])+f)/67108864|0,f=67108863&a}r.words[c]=0|f,u=0|l}return 0!==u?r.words[c]=0|u:r.length--,r.strip()}o.prototype.toString=function(e,t){var n;if(t=0|t||1,16===(e=e||10)||"hex"===e){n="";for(var o=0,i=0,a=0;a>>24-o&16777215)||a!==this.length-1?c[6-u.length]+u+n:u+n,(o+=2)>=26&&(o-=26,a--)}for(0!==i&&(n=i.toString(16)+n);n.length%t!=0;)n="0"+n;return 0!==this.negative&&(n="-"+n),n}if(e===(0|e)&&e>=2&&e<=36){var h=l[e],d=f[e];n="";var p=this.clone();for(p.negative=0;!p.isZero();){var g=p.modn(d).toString(e);n=(p=p.idivn(d)).isZero()?g+n:c[h-g.length]+g+n}for(this.isZero()&&(n="0"+n);n.length%t!=0;)n="0"+n;return 0!==this.negative&&(n="-"+n),n}r(!1,"Base should be between 2 and 36")},o.prototype.toNumber=function(){var e=this.words[0];return 2===this.length?e+=67108864*this.words[1]:3===this.length&&1===this.words[2]?e+=4503599627370496+67108864*this.words[1]:this.length>2&&r(!1,"Number can only safely store up to 53 bits"),0!==this.negative?-e:e},o.prototype.toJSON=function(){return this.toString(16)},o.prototype.toBuffer=function(e,t){return r(void 0!==i),this.toArrayLike(i,e,t)},o.prototype.toArray=function(e,t){return this.toArrayLike(Array,e,t)},o.prototype.toArrayLike=function(e,t,n){var o=this.byteLength(),i=n||Math.max(1,o);r(o<=i,"byte array longer than desired length"),r(i>0,"Requested array length <= 0"),this.strip();var a,s,u="le"===t,c=new e(i),l=this.clone();if(u){for(s=0;!l.isZero();s++)a=l.andln(255),l.iushrn(8),c[s]=a;for(;s=4096&&(r+=13,t>>>=13),t>=64&&(r+=7,t>>>=7),t>=8&&(r+=4,t>>>=4),t>=2&&(r+=2,t>>>=2),r+t},o.prototype._zeroBits=function(e){if(0===e)return 26;var t=e,r=0;return 0==(8191&t)&&(r+=13,t>>>=13),0==(127&t)&&(r+=7,t>>>=7),0==(15&t)&&(r+=4,t>>>=4),0==(3&t)&&(r+=2,t>>>=2),0==(1&t)&&r++,r},o.prototype.bitLength=function(){var e=this.words[this.length-1],t=this._countBits(e);return 26*(this.length-1)+t},o.prototype.zeroBits=function(){if(this.isZero())return 0;for(var e=0,t=0;te.length?this.clone().ior(e):e.clone().ior(this)},o.prototype.uor=function(e){return this.length>e.length?this.clone().iuor(e):e.clone().iuor(this)},o.prototype.iuand=function(e){var t;t=this.length>e.length?e:this;for(var r=0;re.length?this.clone().iand(e):e.clone().iand(this)},o.prototype.uand=function(e){return this.length>e.length?this.clone().iuand(e):e.clone().iuand(this)},o.prototype.iuxor=function(e){var t,r;this.length>e.length?(t=this,r=e):(t=e,r=this);for(var n=0;ne.length?this.clone().ixor(e):e.clone().ixor(this)},o.prototype.uxor=function(e){return this.length>e.length?this.clone().iuxor(e):e.clone().iuxor(this)},o.prototype.inotn=function(e){r("number"==typeof e&&e>=0);var t=0|Math.ceil(e/26),n=e%26;this._expand(t),n>0&&t--;for(var o=0;o0&&(this.words[o]=~this.words[o]&67108863>>26-n),this.strip()},o.prototype.notn=function(e){return this.clone().inotn(e)},o.prototype.setn=function(e,t){r("number"==typeof e&&e>=0);var n=e/26|0,o=e%26;return this._expand(n+1),this.words[n]=t?this.words[n]|1<e.length?(r=this,n=e):(r=e,n=this);for(var o=0,i=0;i>>26;for(;0!==o&&i>>26;if(this.length=r.length,0!==o)this.words[this.length]=o,this.length++;else if(r!==this)for(;ie.length?this.clone().iadd(e):e.clone().iadd(this)},o.prototype.isub=function(e){if(0!==e.negative){e.negative=0;var t=this.iadd(e);return e.negative=1,t._normSign()}if(0!==this.negative)return this.negative=0,this.iadd(e),this.negative=1,this._normSign();var r,n,o=this.cmp(e);if(0===o)return this.negative=0,this.length=1,this.words[0]=0,this;o>0?(r=this,n=e):(r=e,n=this);for(var i=0,a=0;a>26,this.words[a]=67108863&t;for(;0!==i&&a>26,this.words[a]=67108863&t;if(0===i&&a>>13,d=0|a[1],p=8191&d,g=d>>>13,m=0|a[2],y=8191&m,v=m>>>13,b=0|a[3],w=8191&b,_=b>>>13,E=0|a[4],k=8191&E,P=E>>>13,S=0|a[5],A=8191&S,M=S>>>13,x=0|a[6],N=8191&x,O=x>>>13,R=0|a[7],T=8191&R,C=R>>>13,B=0|a[8],I=8191&B,F=B>>>13,L=0|a[9],U=8191&L,j=L>>>13,D=0|s[0],z=8191&D,H=D>>>13,K=0|s[1],W=8191&K,q=K>>>13,G=0|s[2],V=8191&G,J=G>>>13,Z=0|s[3],X=8191&Z,$=Z>>>13,Q=0|s[4],Y=8191&Q,ee=Q>>>13,te=0|s[5],re=8191&te,ne=te>>>13,oe=0|s[6],ie=8191&oe,ae=oe>>>13,se=0|s[7],ue=8191&se,ce=se>>>13,le=0|s[8],fe=8191&le,he=le>>>13,de=0|s[9],pe=8191&de,ge=de>>>13;r.negative=e.negative^t.negative,r.length=19;var me=(c+(n=Math.imul(f,z))|0)+((8191&(o=(o=Math.imul(f,H))+Math.imul(h,z)|0))<<13)|0;c=((i=Math.imul(h,H))+(o>>>13)|0)+(me>>>26)|0,me&=67108863,n=Math.imul(p,z),o=(o=Math.imul(p,H))+Math.imul(g,z)|0,i=Math.imul(g,H);var ye=(c+(n=n+Math.imul(f,W)|0)|0)+((8191&(o=(o=o+Math.imul(f,q)|0)+Math.imul(h,W)|0))<<13)|0;c=((i=i+Math.imul(h,q)|0)+(o>>>13)|0)+(ye>>>26)|0,ye&=67108863,n=Math.imul(y,z),o=(o=Math.imul(y,H))+Math.imul(v,z)|0,i=Math.imul(v,H),n=n+Math.imul(p,W)|0,o=(o=o+Math.imul(p,q)|0)+Math.imul(g,W)|0,i=i+Math.imul(g,q)|0;var ve=(c+(n=n+Math.imul(f,V)|0)|0)+((8191&(o=(o=o+Math.imul(f,J)|0)+Math.imul(h,V)|0))<<13)|0;c=((i=i+Math.imul(h,J)|0)+(o>>>13)|0)+(ve>>>26)|0,ve&=67108863,n=Math.imul(w,z),o=(o=Math.imul(w,H))+Math.imul(_,z)|0,i=Math.imul(_,H),n=n+Math.imul(y,W)|0,o=(o=o+Math.imul(y,q)|0)+Math.imul(v,W)|0,i=i+Math.imul(v,q)|0,n=n+Math.imul(p,V)|0,o=(o=o+Math.imul(p,J)|0)+Math.imul(g,V)|0,i=i+Math.imul(g,J)|0;var be=(c+(n=n+Math.imul(f,X)|0)|0)+((8191&(o=(o=o+Math.imul(f,$)|0)+Math.imul(h,X)|0))<<13)|0;c=((i=i+Math.imul(h,$)|0)+(o>>>13)|0)+(be>>>26)|0,be&=67108863,n=Math.imul(k,z),o=(o=Math.imul(k,H))+Math.imul(P,z)|0,i=Math.imul(P,H),n=n+Math.imul(w,W)|0,o=(o=o+Math.imul(w,q)|0)+Math.imul(_,W)|0,i=i+Math.imul(_,q)|0,n=n+Math.imul(y,V)|0,o=(o=o+Math.imul(y,J)|0)+Math.imul(v,V)|0,i=i+Math.imul(v,J)|0,n=n+Math.imul(p,X)|0,o=(o=o+Math.imul(p,$)|0)+Math.imul(g,X)|0,i=i+Math.imul(g,$)|0;var we=(c+(n=n+Math.imul(f,Y)|0)|0)+((8191&(o=(o=o+Math.imul(f,ee)|0)+Math.imul(h,Y)|0))<<13)|0;c=((i=i+Math.imul(h,ee)|0)+(o>>>13)|0)+(we>>>26)|0,we&=67108863,n=Math.imul(A,z),o=(o=Math.imul(A,H))+Math.imul(M,z)|0,i=Math.imul(M,H),n=n+Math.imul(k,W)|0,o=(o=o+Math.imul(k,q)|0)+Math.imul(P,W)|0,i=i+Math.imul(P,q)|0,n=n+Math.imul(w,V)|0,o=(o=o+Math.imul(w,J)|0)+Math.imul(_,V)|0,i=i+Math.imul(_,J)|0,n=n+Math.imul(y,X)|0,o=(o=o+Math.imul(y,$)|0)+Math.imul(v,X)|0,i=i+Math.imul(v,$)|0,n=n+Math.imul(p,Y)|0,o=(o=o+Math.imul(p,ee)|0)+Math.imul(g,Y)|0,i=i+Math.imul(g,ee)|0;var _e=(c+(n=n+Math.imul(f,re)|0)|0)+((8191&(o=(o=o+Math.imul(f,ne)|0)+Math.imul(h,re)|0))<<13)|0;c=((i=i+Math.imul(h,ne)|0)+(o>>>13)|0)+(_e>>>26)|0,_e&=67108863,n=Math.imul(N,z),o=(o=Math.imul(N,H))+Math.imul(O,z)|0,i=Math.imul(O,H),n=n+Math.imul(A,W)|0,o=(o=o+Math.imul(A,q)|0)+Math.imul(M,W)|0,i=i+Math.imul(M,q)|0,n=n+Math.imul(k,V)|0,o=(o=o+Math.imul(k,J)|0)+Math.imul(P,V)|0,i=i+Math.imul(P,J)|0,n=n+Math.imul(w,X)|0,o=(o=o+Math.imul(w,$)|0)+Math.imul(_,X)|0,i=i+Math.imul(_,$)|0,n=n+Math.imul(y,Y)|0,o=(o=o+Math.imul(y,ee)|0)+Math.imul(v,Y)|0,i=i+Math.imul(v,ee)|0,n=n+Math.imul(p,re)|0,o=(o=o+Math.imul(p,ne)|0)+Math.imul(g,re)|0,i=i+Math.imul(g,ne)|0;var Ee=(c+(n=n+Math.imul(f,ie)|0)|0)+((8191&(o=(o=o+Math.imul(f,ae)|0)+Math.imul(h,ie)|0))<<13)|0;c=((i=i+Math.imul(h,ae)|0)+(o>>>13)|0)+(Ee>>>26)|0,Ee&=67108863,n=Math.imul(T,z),o=(o=Math.imul(T,H))+Math.imul(C,z)|0,i=Math.imul(C,H),n=n+Math.imul(N,W)|0,o=(o=o+Math.imul(N,q)|0)+Math.imul(O,W)|0,i=i+Math.imul(O,q)|0,n=n+Math.imul(A,V)|0,o=(o=o+Math.imul(A,J)|0)+Math.imul(M,V)|0,i=i+Math.imul(M,J)|0,n=n+Math.imul(k,X)|0,o=(o=o+Math.imul(k,$)|0)+Math.imul(P,X)|0,i=i+Math.imul(P,$)|0,n=n+Math.imul(w,Y)|0,o=(o=o+Math.imul(w,ee)|0)+Math.imul(_,Y)|0,i=i+Math.imul(_,ee)|0,n=n+Math.imul(y,re)|0,o=(o=o+Math.imul(y,ne)|0)+Math.imul(v,re)|0,i=i+Math.imul(v,ne)|0,n=n+Math.imul(p,ie)|0,o=(o=o+Math.imul(p,ae)|0)+Math.imul(g,ie)|0,i=i+Math.imul(g,ae)|0;var ke=(c+(n=n+Math.imul(f,ue)|0)|0)+((8191&(o=(o=o+Math.imul(f,ce)|0)+Math.imul(h,ue)|0))<<13)|0;c=((i=i+Math.imul(h,ce)|0)+(o>>>13)|0)+(ke>>>26)|0,ke&=67108863,n=Math.imul(I,z),o=(o=Math.imul(I,H))+Math.imul(F,z)|0,i=Math.imul(F,H),n=n+Math.imul(T,W)|0,o=(o=o+Math.imul(T,q)|0)+Math.imul(C,W)|0,i=i+Math.imul(C,q)|0,n=n+Math.imul(N,V)|0,o=(o=o+Math.imul(N,J)|0)+Math.imul(O,V)|0,i=i+Math.imul(O,J)|0,n=n+Math.imul(A,X)|0,o=(o=o+Math.imul(A,$)|0)+Math.imul(M,X)|0,i=i+Math.imul(M,$)|0,n=n+Math.imul(k,Y)|0,o=(o=o+Math.imul(k,ee)|0)+Math.imul(P,Y)|0,i=i+Math.imul(P,ee)|0,n=n+Math.imul(w,re)|0,o=(o=o+Math.imul(w,ne)|0)+Math.imul(_,re)|0,i=i+Math.imul(_,ne)|0,n=n+Math.imul(y,ie)|0,o=(o=o+Math.imul(y,ae)|0)+Math.imul(v,ie)|0,i=i+Math.imul(v,ae)|0,n=n+Math.imul(p,ue)|0,o=(o=o+Math.imul(p,ce)|0)+Math.imul(g,ue)|0,i=i+Math.imul(g,ce)|0;var Pe=(c+(n=n+Math.imul(f,fe)|0)|0)+((8191&(o=(o=o+Math.imul(f,he)|0)+Math.imul(h,fe)|0))<<13)|0;c=((i=i+Math.imul(h,he)|0)+(o>>>13)|0)+(Pe>>>26)|0,Pe&=67108863,n=Math.imul(U,z),o=(o=Math.imul(U,H))+Math.imul(j,z)|0,i=Math.imul(j,H),n=n+Math.imul(I,W)|0,o=(o=o+Math.imul(I,q)|0)+Math.imul(F,W)|0,i=i+Math.imul(F,q)|0,n=n+Math.imul(T,V)|0,o=(o=o+Math.imul(T,J)|0)+Math.imul(C,V)|0,i=i+Math.imul(C,J)|0,n=n+Math.imul(N,X)|0,o=(o=o+Math.imul(N,$)|0)+Math.imul(O,X)|0,i=i+Math.imul(O,$)|0,n=n+Math.imul(A,Y)|0,o=(o=o+Math.imul(A,ee)|0)+Math.imul(M,Y)|0,i=i+Math.imul(M,ee)|0,n=n+Math.imul(k,re)|0,o=(o=o+Math.imul(k,ne)|0)+Math.imul(P,re)|0,i=i+Math.imul(P,ne)|0,n=n+Math.imul(w,ie)|0,o=(o=o+Math.imul(w,ae)|0)+Math.imul(_,ie)|0,i=i+Math.imul(_,ae)|0,n=n+Math.imul(y,ue)|0,o=(o=o+Math.imul(y,ce)|0)+Math.imul(v,ue)|0,i=i+Math.imul(v,ce)|0,n=n+Math.imul(p,fe)|0,o=(o=o+Math.imul(p,he)|0)+Math.imul(g,fe)|0,i=i+Math.imul(g,he)|0;var Se=(c+(n=n+Math.imul(f,pe)|0)|0)+((8191&(o=(o=o+Math.imul(f,ge)|0)+Math.imul(h,pe)|0))<<13)|0;c=((i=i+Math.imul(h,ge)|0)+(o>>>13)|0)+(Se>>>26)|0,Se&=67108863,n=Math.imul(U,W),o=(o=Math.imul(U,q))+Math.imul(j,W)|0,i=Math.imul(j,q),n=n+Math.imul(I,V)|0,o=(o=o+Math.imul(I,J)|0)+Math.imul(F,V)|0,i=i+Math.imul(F,J)|0,n=n+Math.imul(T,X)|0,o=(o=o+Math.imul(T,$)|0)+Math.imul(C,X)|0,i=i+Math.imul(C,$)|0,n=n+Math.imul(N,Y)|0,o=(o=o+Math.imul(N,ee)|0)+Math.imul(O,Y)|0,i=i+Math.imul(O,ee)|0,n=n+Math.imul(A,re)|0,o=(o=o+Math.imul(A,ne)|0)+Math.imul(M,re)|0,i=i+Math.imul(M,ne)|0,n=n+Math.imul(k,ie)|0,o=(o=o+Math.imul(k,ae)|0)+Math.imul(P,ie)|0,i=i+Math.imul(P,ae)|0,n=n+Math.imul(w,ue)|0,o=(o=o+Math.imul(w,ce)|0)+Math.imul(_,ue)|0,i=i+Math.imul(_,ce)|0,n=n+Math.imul(y,fe)|0,o=(o=o+Math.imul(y,he)|0)+Math.imul(v,fe)|0,i=i+Math.imul(v,he)|0;var Ae=(c+(n=n+Math.imul(p,pe)|0)|0)+((8191&(o=(o=o+Math.imul(p,ge)|0)+Math.imul(g,pe)|0))<<13)|0;c=((i=i+Math.imul(g,ge)|0)+(o>>>13)|0)+(Ae>>>26)|0,Ae&=67108863,n=Math.imul(U,V),o=(o=Math.imul(U,J))+Math.imul(j,V)|0,i=Math.imul(j,J),n=n+Math.imul(I,X)|0,o=(o=o+Math.imul(I,$)|0)+Math.imul(F,X)|0,i=i+Math.imul(F,$)|0,n=n+Math.imul(T,Y)|0,o=(o=o+Math.imul(T,ee)|0)+Math.imul(C,Y)|0,i=i+Math.imul(C,ee)|0,n=n+Math.imul(N,re)|0,o=(o=o+Math.imul(N,ne)|0)+Math.imul(O,re)|0,i=i+Math.imul(O,ne)|0,n=n+Math.imul(A,ie)|0,o=(o=o+Math.imul(A,ae)|0)+Math.imul(M,ie)|0,i=i+Math.imul(M,ae)|0,n=n+Math.imul(k,ue)|0,o=(o=o+Math.imul(k,ce)|0)+Math.imul(P,ue)|0,i=i+Math.imul(P,ce)|0,n=n+Math.imul(w,fe)|0,o=(o=o+Math.imul(w,he)|0)+Math.imul(_,fe)|0,i=i+Math.imul(_,he)|0;var Me=(c+(n=n+Math.imul(y,pe)|0)|0)+((8191&(o=(o=o+Math.imul(y,ge)|0)+Math.imul(v,pe)|0))<<13)|0;c=((i=i+Math.imul(v,ge)|0)+(o>>>13)|0)+(Me>>>26)|0,Me&=67108863,n=Math.imul(U,X),o=(o=Math.imul(U,$))+Math.imul(j,X)|0,i=Math.imul(j,$),n=n+Math.imul(I,Y)|0,o=(o=o+Math.imul(I,ee)|0)+Math.imul(F,Y)|0,i=i+Math.imul(F,ee)|0,n=n+Math.imul(T,re)|0,o=(o=o+Math.imul(T,ne)|0)+Math.imul(C,re)|0,i=i+Math.imul(C,ne)|0,n=n+Math.imul(N,ie)|0,o=(o=o+Math.imul(N,ae)|0)+Math.imul(O,ie)|0,i=i+Math.imul(O,ae)|0,n=n+Math.imul(A,ue)|0,o=(o=o+Math.imul(A,ce)|0)+Math.imul(M,ue)|0,i=i+Math.imul(M,ce)|0,n=n+Math.imul(k,fe)|0,o=(o=o+Math.imul(k,he)|0)+Math.imul(P,fe)|0,i=i+Math.imul(P,he)|0;var xe=(c+(n=n+Math.imul(w,pe)|0)|0)+((8191&(o=(o=o+Math.imul(w,ge)|0)+Math.imul(_,pe)|0))<<13)|0;c=((i=i+Math.imul(_,ge)|0)+(o>>>13)|0)+(xe>>>26)|0,xe&=67108863,n=Math.imul(U,Y),o=(o=Math.imul(U,ee))+Math.imul(j,Y)|0,i=Math.imul(j,ee),n=n+Math.imul(I,re)|0,o=(o=o+Math.imul(I,ne)|0)+Math.imul(F,re)|0,i=i+Math.imul(F,ne)|0,n=n+Math.imul(T,ie)|0,o=(o=o+Math.imul(T,ae)|0)+Math.imul(C,ie)|0,i=i+Math.imul(C,ae)|0,n=n+Math.imul(N,ue)|0,o=(o=o+Math.imul(N,ce)|0)+Math.imul(O,ue)|0,i=i+Math.imul(O,ce)|0,n=n+Math.imul(A,fe)|0,o=(o=o+Math.imul(A,he)|0)+Math.imul(M,fe)|0,i=i+Math.imul(M,he)|0;var Ne=(c+(n=n+Math.imul(k,pe)|0)|0)+((8191&(o=(o=o+Math.imul(k,ge)|0)+Math.imul(P,pe)|0))<<13)|0;c=((i=i+Math.imul(P,ge)|0)+(o>>>13)|0)+(Ne>>>26)|0,Ne&=67108863,n=Math.imul(U,re),o=(o=Math.imul(U,ne))+Math.imul(j,re)|0,i=Math.imul(j,ne),n=n+Math.imul(I,ie)|0,o=(o=o+Math.imul(I,ae)|0)+Math.imul(F,ie)|0,i=i+Math.imul(F,ae)|0,n=n+Math.imul(T,ue)|0,o=(o=o+Math.imul(T,ce)|0)+Math.imul(C,ue)|0,i=i+Math.imul(C,ce)|0,n=n+Math.imul(N,fe)|0,o=(o=o+Math.imul(N,he)|0)+Math.imul(O,fe)|0,i=i+Math.imul(O,he)|0;var Oe=(c+(n=n+Math.imul(A,pe)|0)|0)+((8191&(o=(o=o+Math.imul(A,ge)|0)+Math.imul(M,pe)|0))<<13)|0;c=((i=i+Math.imul(M,ge)|0)+(o>>>13)|0)+(Oe>>>26)|0,Oe&=67108863,n=Math.imul(U,ie),o=(o=Math.imul(U,ae))+Math.imul(j,ie)|0,i=Math.imul(j,ae),n=n+Math.imul(I,ue)|0,o=(o=o+Math.imul(I,ce)|0)+Math.imul(F,ue)|0,i=i+Math.imul(F,ce)|0,n=n+Math.imul(T,fe)|0,o=(o=o+Math.imul(T,he)|0)+Math.imul(C,fe)|0,i=i+Math.imul(C,he)|0;var Re=(c+(n=n+Math.imul(N,pe)|0)|0)+((8191&(o=(o=o+Math.imul(N,ge)|0)+Math.imul(O,pe)|0))<<13)|0;c=((i=i+Math.imul(O,ge)|0)+(o>>>13)|0)+(Re>>>26)|0,Re&=67108863,n=Math.imul(U,ue),o=(o=Math.imul(U,ce))+Math.imul(j,ue)|0,i=Math.imul(j,ce),n=n+Math.imul(I,fe)|0,o=(o=o+Math.imul(I,he)|0)+Math.imul(F,fe)|0,i=i+Math.imul(F,he)|0;var Te=(c+(n=n+Math.imul(T,pe)|0)|0)+((8191&(o=(o=o+Math.imul(T,ge)|0)+Math.imul(C,pe)|0))<<13)|0;c=((i=i+Math.imul(C,ge)|0)+(o>>>13)|0)+(Te>>>26)|0,Te&=67108863,n=Math.imul(U,fe),o=(o=Math.imul(U,he))+Math.imul(j,fe)|0,i=Math.imul(j,he);var Ce=(c+(n=n+Math.imul(I,pe)|0)|0)+((8191&(o=(o=o+Math.imul(I,ge)|0)+Math.imul(F,pe)|0))<<13)|0;c=((i=i+Math.imul(F,ge)|0)+(o>>>13)|0)+(Ce>>>26)|0,Ce&=67108863;var Be=(c+(n=Math.imul(U,pe))|0)+((8191&(o=(o=Math.imul(U,ge))+Math.imul(j,pe)|0))<<13)|0;return c=((i=Math.imul(j,ge))+(o>>>13)|0)+(Be>>>26)|0,Be&=67108863,u[0]=me,u[1]=ye,u[2]=ve,u[3]=be,u[4]=we,u[5]=_e,u[6]=Ee,u[7]=ke,u[8]=Pe,u[9]=Se,u[10]=Ae,u[11]=Me,u[12]=xe,u[13]=Ne,u[14]=Oe,u[15]=Re,u[16]=Te,u[17]=Ce,u[18]=Be,0!==c&&(u[19]=c,r.length++),r};function p(e,t,r){return(new g).mulp(e,t,r)}function g(e,t){this.x=e,this.y=t}Math.imul||(d=h),o.prototype.mulTo=function(e,t){var r=this.length+e.length;return 10===this.length&&10===e.length?d(this,e,t):r<63?h(this,e,t):r<1024?function(e,t,r){r.negative=t.negative^e.negative,r.length=e.length+t.length;for(var n=0,o=0,i=0;i>>26)|0)>>>26,a&=67108863}r.words[i]=s,n=a,a=o}return 0!==n?r.words[i]=n:r.length--,r.strip()}(this,e,t):p(this,e,t)},g.prototype.makeRBT=function(e){for(var t=new Array(e),r=o.prototype._countBits(e)-1,n=0;n>=1;return n},g.prototype.permute=function(e,t,r,n,o,i){for(var a=0;a>>=1)o++;return 1<>>=13,n[2*a+1]=8191&i,i>>>=13;for(a=2*t;a>=26,t+=o/67108864|0,t+=i>>>26,this.words[n]=67108863&i}return 0!==t&&(this.words[n]=t,this.length++),this},o.prototype.muln=function(e){return this.clone().imuln(e)},o.prototype.sqr=function(){return this.mul(this)},o.prototype.isqr=function(){return this.imul(this.clone())},o.prototype.pow=function(e){var t=function(e){for(var t=new Array(e.bitLength()),r=0;r>>o}return t}(e);if(0===t.length)return new o(1);for(var r=this,n=0;n=0);var t,n=e%26,o=(e-n)/26,i=67108863>>>26-n<<26-n;if(0!==n){var a=0;for(t=0;t>>26-n}a&&(this.words[t]=a,this.length++)}if(0!==o){for(t=this.length-1;t>=0;t--)this.words[t+o]=this.words[t];for(t=0;t=0),o=t?(t-t%26)/26:0;var i=e%26,a=Math.min((e-i)/26,this.length),s=67108863^67108863>>>i<a)for(this.length-=a,c=0;c=0&&(0!==l||c>=o);c--){var f=0|this.words[c];this.words[c]=l<<26-i|f>>>i,l=f&s}return u&&0!==l&&(u.words[u.length++]=l),0===this.length&&(this.words[0]=0,this.length=1),this.strip()},o.prototype.ishrn=function(e,t,n){return r(0===this.negative),this.iushrn(e,t,n)},o.prototype.shln=function(e){return this.clone().ishln(e)},o.prototype.ushln=function(e){return this.clone().iushln(e)},o.prototype.shrn=function(e){return this.clone().ishrn(e)},o.prototype.ushrn=function(e){return this.clone().iushrn(e)},o.prototype.testn=function(e){r("number"==typeof e&&e>=0);var t=e%26,n=(e-t)/26,o=1<=0);var t=e%26,n=(e-t)/26;if(r(0===this.negative,"imaskn works only with positive numbers"),this.length<=n)return this;if(0!==t&&n++,this.length=Math.min(n,this.length),0!==t){var o=67108863^67108863>>>t<=67108864;t++)this.words[t]-=67108864,t===this.length-1?this.words[t+1]=1:this.words[t+1]++;return this.length=Math.max(this.length,t+1),this},o.prototype.isubn=function(e){if(r("number"==typeof e),r(e<67108864),e<0)return this.iaddn(-e);if(0!==this.negative)return this.negative=0,this.iaddn(e),this.negative=1,this;if(this.words[0]-=e,1===this.length&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var t=0;t>26)-(u/67108864|0),this.words[o+n]=67108863&i}for(;o>26,this.words[o+n]=67108863&i;if(0===s)return this.strip();for(r(-1===s),s=0,o=0;o>26,this.words[o]=67108863&i;return this.negative=1,this.strip()},o.prototype._wordDiv=function(e,t){var r=(this.length,e.length),n=this.clone(),i=e,a=0|i.words[i.length-1];0!==(r=26-this._countBits(a))&&(i=i.ushln(r),n.iushln(r),a=0|i.words[i.length-1]);var s,u=n.length-i.length;if("mod"!==t){(s=new o(null)).length=u+1,s.words=new Array(s.length);for(var c=0;c=0;f--){var h=67108864*(0|n.words[i.length+f])+(0|n.words[i.length+f-1]);for(h=Math.min(h/a|0,67108863),n._ishlnsubmul(i,h,f);0!==n.negative;)h--,n.negative=0,n._ishlnsubmul(i,1,f),n.isZero()||(n.negative^=1);s&&(s.words[f]=h)}return s&&s.strip(),n.strip(),"div"!==t&&0!==r&&n.iushrn(r),{div:s||null,mod:n}},o.prototype.divmod=function(e,t,n){return r(!e.isZero()),this.isZero()?{div:new o(0),mod:new o(0)}:0!==this.negative&&0===e.negative?(s=this.neg().divmod(e,t),"mod"!==t&&(i=s.div.neg()),"div"!==t&&(a=s.mod.neg(),n&&0!==a.negative&&a.iadd(e)),{div:i,mod:a}):0===this.negative&&0!==e.negative?(s=this.divmod(e.neg(),t),"mod"!==t&&(i=s.div.neg()),{div:i,mod:s.mod}):0!=(this.negative&e.negative)?(s=this.neg().divmod(e.neg(),t),"div"!==t&&(a=s.mod.neg(),n&&0!==a.negative&&a.isub(e)),{div:s.div,mod:a}):e.length>this.length||this.cmp(e)<0?{div:new o(0),mod:this}:1===e.length?"div"===t?{div:this.divn(e.words[0]),mod:null}:"mod"===t?{div:null,mod:new o(this.modn(e.words[0]))}:{div:this.divn(e.words[0]),mod:new o(this.modn(e.words[0]))}:this._wordDiv(e,t);var i,a,s},o.prototype.div=function(e){return this.divmod(e,"div",!1).div},o.prototype.mod=function(e){return this.divmod(e,"mod",!1).mod},o.prototype.umod=function(e){return this.divmod(e,"mod",!0).mod},o.prototype.divRound=function(e){var t=this.divmod(e);if(t.mod.isZero())return t.div;var r=0!==t.div.negative?t.mod.isub(e):t.mod,n=e.ushrn(1),o=e.andln(1),i=r.cmp(n);return i<0||1===o&&0===i?t.div:0!==t.div.negative?t.div.isubn(1):t.div.iaddn(1)},o.prototype.modn=function(e){r(e<=67108863);for(var t=(1<<26)%e,n=0,o=this.length-1;o>=0;o--)n=(t*n+(0|this.words[o]))%e;return n},o.prototype.idivn=function(e){r(e<=67108863);for(var t=0,n=this.length-1;n>=0;n--){var o=(0|this.words[n])+67108864*t;this.words[n]=o/e|0,t=o%e}return this.strip()},o.prototype.divn=function(e){return this.clone().idivn(e)},o.prototype.egcd=function(e){r(0===e.negative),r(!e.isZero());var t=this,n=e.clone();t=0!==t.negative?t.umod(e):t.clone();for(var i=new o(1),a=new o(0),s=new o(0),u=new o(1),c=0;t.isEven()&&n.isEven();)t.iushrn(1),n.iushrn(1),++c;for(var l=n.clone(),f=t.clone();!t.isZero();){for(var h=0,d=1;0==(t.words[0]&d)&&h<26;++h,d<<=1);if(h>0)for(t.iushrn(h);h-- >0;)(i.isOdd()||a.isOdd())&&(i.iadd(l),a.isub(f)),i.iushrn(1),a.iushrn(1);for(var p=0,g=1;0==(n.words[0]&g)&&p<26;++p,g<<=1);if(p>0)for(n.iushrn(p);p-- >0;)(s.isOdd()||u.isOdd())&&(s.iadd(l),u.isub(f)),s.iushrn(1),u.iushrn(1);t.cmp(n)>=0?(t.isub(n),i.isub(s),a.isub(u)):(n.isub(t),s.isub(i),u.isub(a))}return{a:s,b:u,gcd:n.iushln(c)}},o.prototype._invmp=function(e){r(0===e.negative),r(!e.isZero());var t=this,n=e.clone();t=0!==t.negative?t.umod(e):t.clone();for(var i,a=new o(1),s=new o(0),u=n.clone();t.cmpn(1)>0&&n.cmpn(1)>0;){for(var c=0,l=1;0==(t.words[0]&l)&&c<26;++c,l<<=1);if(c>0)for(t.iushrn(c);c-- >0;)a.isOdd()&&a.iadd(u),a.iushrn(1);for(var f=0,h=1;0==(n.words[0]&h)&&f<26;++f,h<<=1);if(f>0)for(n.iushrn(f);f-- >0;)s.isOdd()&&s.iadd(u),s.iushrn(1);t.cmp(n)>=0?(t.isub(n),a.isub(s)):(n.isub(t),s.isub(a))}return(i=0===t.cmpn(1)?a:s).cmpn(0)<0&&i.iadd(e),i},o.prototype.gcd=function(e){if(this.isZero())return e.abs();if(e.isZero())return this.abs();var t=this.clone(),r=e.clone();t.negative=0,r.negative=0;for(var n=0;t.isEven()&&r.isEven();n++)t.iushrn(1),r.iushrn(1);for(;;){for(;t.isEven();)t.iushrn(1);for(;r.isEven();)r.iushrn(1);var o=t.cmp(r);if(o<0){var i=t;t=r,r=i}else if(0===o||0===r.cmpn(1))break;t.isub(r)}return r.iushln(n)},o.prototype.invm=function(e){return this.egcd(e).a.umod(e)},o.prototype.isEven=function(){return 0==(1&this.words[0])},o.prototype.isOdd=function(){return 1==(1&this.words[0])},o.prototype.andln=function(e){return this.words[0]&e},o.prototype.bincn=function(e){r("number"==typeof e);var t=e%26,n=(e-t)/26,o=1<>>26,s&=67108863,this.words[a]=s}return 0!==i&&(this.words[a]=i,this.length++),this},o.prototype.isZero=function(){return 1===this.length&&0===this.words[0]},o.prototype.cmpn=function(e){var t,n=e<0;if(0!==this.negative&&!n)return-1;if(0===this.negative&&n)return 1;if(this.strip(),this.length>1)t=1;else{n&&(e=-e),r(e<=67108863,"Number is too big");var o=0|this.words[0];t=o===e?0:oe.length)return 1;if(this.length=0;r--){var n=0|this.words[r],o=0|e.words[r];if(n!==o){no&&(t=1);break}}return t},o.prototype.gtn=function(e){return 1===this.cmpn(e)},o.prototype.gt=function(e){return 1===this.cmp(e)},o.prototype.gten=function(e){return this.cmpn(e)>=0},o.prototype.gte=function(e){return this.cmp(e)>=0},o.prototype.ltn=function(e){return-1===this.cmpn(e)},o.prototype.lt=function(e){return-1===this.cmp(e)},o.prototype.lten=function(e){return this.cmpn(e)<=0},o.prototype.lte=function(e){return this.cmp(e)<=0},o.prototype.eqn=function(e){return 0===this.cmpn(e)},o.prototype.eq=function(e){return 0===this.cmp(e)},o.red=function(e){return new E(e)},o.prototype.toRed=function(e){return r(!this.red,"Already a number in reduction context"),r(0===this.negative,"red works only with positives"),e.convertTo(this)._forceRed(e)},o.prototype.fromRed=function(){return r(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},o.prototype._forceRed=function(e){return this.red=e,this},o.prototype.forceRed=function(e){return r(!this.red,"Already a number in reduction context"),this._forceRed(e)},o.prototype.redAdd=function(e){return r(this.red,"redAdd works only with red numbers"),this.red.add(this,e)},o.prototype.redIAdd=function(e){return r(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,e)},o.prototype.redSub=function(e){return r(this.red,"redSub works only with red numbers"),this.red.sub(this,e)},o.prototype.redISub=function(e){return r(this.red,"redISub works only with red numbers"),this.red.isub(this,e)},o.prototype.redShl=function(e){return r(this.red,"redShl works only with red numbers"),this.red.shl(this,e)},o.prototype.redMul=function(e){return r(this.red,"redMul works only with red numbers"),this.red._verify2(this,e),this.red.mul(this,e)},o.prototype.redIMul=function(e){return r(this.red,"redMul works only with red numbers"),this.red._verify2(this,e),this.red.imul(this,e)},o.prototype.redSqr=function(){return r(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},o.prototype.redISqr=function(){return r(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},o.prototype.redSqrt=function(){return r(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},o.prototype.redInvm=function(){return r(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},o.prototype.redNeg=function(){return r(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},o.prototype.redPow=function(e){return r(this.red&&!e.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,e)};var m={k256:null,p224:null,p192:null,p25519:null};function y(e,t){this.name=e,this.p=new o(t,16),this.n=this.p.bitLength(),this.k=new o(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}function v(){y.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}function b(){y.call(this,"p224","ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001")}function w(){y.call(this,"p192","ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff")}function _(){y.call(this,"25519","7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed")}function E(e){if("string"==typeof e){var t=o._prime(e);this.m=t.p,this.prime=t}else r(e.gtn(1),"modulus must be greater than 1"),this.m=e,this.prime=null}function k(e){E.call(this,e),this.shift=this.m.bitLength(),this.shift%26!=0&&(this.shift+=26-this.shift%26),this.r=new o(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)}y.prototype._tmp=function(){var e=new o(null);return e.words=new Array(Math.ceil(this.n/13)),e},y.prototype.ireduce=function(e){var t,r=e;do{this.split(r,this.tmp),t=(r=(r=this.imulK(r)).iadd(this.tmp)).bitLength()}while(t>this.n);var n=t0?r.isub(this.p):void 0!==r.strip?r.strip():r._strip(),r},y.prototype.split=function(e,t){e.iushrn(this.n,0,t)},y.prototype.imulK=function(e){return e.imul(this.k)},n(v,y),v.prototype.split=function(e,t){for(var r=4194303,n=Math.min(e.length,9),o=0;o>>22,i=a}i>>>=22,e.words[o-10]=i,0===i&&e.length>10?e.length-=10:e.length-=9},v.prototype.imulK=function(e){e.words[e.length]=0,e.words[e.length+1]=0,e.length+=2;for(var t=0,r=0;r>>=26,e.words[r]=o,t=n}return 0!==t&&(e.words[e.length++]=t),e},o._prime=function(e){if(m[e])return m[e];var t;if("k256"===e)t=new v;else if("p224"===e)t=new b;else if("p192"===e)t=new w;else{if("p25519"!==e)throw new Error("Unknown prime "+e);t=new _}return m[e]=t,t},E.prototype._verify1=function(e){r(0===e.negative,"red works only with positives"),r(e.red,"red works only with red numbers")},E.prototype._verify2=function(e,t){r(0==(e.negative|t.negative),"red works only with positives"),r(e.red&&e.red===t.red,"red works only with red numbers")},E.prototype.imod=function(e){return this.prime?this.prime.ireduce(e)._forceRed(this):e.umod(this.m)._forceRed(this)},E.prototype.neg=function(e){return e.isZero()?e.clone():this.m.sub(e)._forceRed(this)},E.prototype.add=function(e,t){this._verify2(e,t);var r=e.add(t);return r.cmp(this.m)>=0&&r.isub(this.m),r._forceRed(this)},E.prototype.iadd=function(e,t){this._verify2(e,t);var r=e.iadd(t);return r.cmp(this.m)>=0&&r.isub(this.m),r},E.prototype.sub=function(e,t){this._verify2(e,t);var r=e.sub(t);return r.cmpn(0)<0&&r.iadd(this.m),r._forceRed(this)},E.prototype.isub=function(e,t){this._verify2(e,t);var r=e.isub(t);return r.cmpn(0)<0&&r.iadd(this.m),r},E.prototype.shl=function(e,t){return this._verify1(e),this.imod(e.ushln(t))},E.prototype.imul=function(e,t){return this._verify2(e,t),this.imod(e.imul(t))},E.prototype.mul=function(e,t){return this._verify2(e,t),this.imod(e.mul(t))},E.prototype.isqr=function(e){return this.imul(e,e.clone())},E.prototype.sqr=function(e){return this.mul(e,e)},E.prototype.sqrt=function(e){if(e.isZero())return e.clone();var t=this.m.andln(3);if(r(t%2==1),3===t){var n=this.m.add(new o(1)).iushrn(2);return this.pow(e,n)}for(var i=this.m.subn(1),a=0;!i.isZero()&&0===i.andln(1);)a++,i.iushrn(1);r(!i.isZero());var s=new o(1).toRed(this),u=s.redNeg(),c=this.m.subn(1).iushrn(1),l=this.m.bitLength();for(l=new o(2*l*l).toRed(this);0!==this.pow(l,c).cmp(u);)l.redIAdd(u);for(var f=this.pow(l,i),h=this.pow(e,i.addn(1).iushrn(1)),d=this.pow(e,i),p=a;0!==d.cmp(s);){for(var g=d,m=0;0!==g.cmp(s);m++)g=g.redSqr();r(m=0;n--){for(var c=t.words[n],l=u-1;l>=0;l--){var f=c>>l&1;i!==r[0]&&(i=this.sqr(i)),0!==f||0!==a?(a<<=1,a|=f,(4===++s||0===n&&0===l)&&(i=this.mul(i,r[a]),s=0,a=0)):s=0}u=26}return i},E.prototype.convertTo=function(e){var t=e.umod(this.m);return t===e?t.clone():t},E.prototype.convertFrom=function(e){var t=e.clone();return t.red=null,t},o.mont=function(e){return new k(e)},n(k,E),k.prototype.convertTo=function(e){return this.imod(e.ushln(this.shift))},k.prototype.convertFrom=function(e){var t=this.imod(e.mul(this.rinv));return t.red=null,t},k.prototype.imul=function(e,t){if(e.isZero()||t.isZero())return e.words[0]=0,e.length=1,e;var r=e.imul(t),n=r.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),o=r.isub(n).iushrn(this.shift),i=o;return o.cmp(this.m)>=0?i=o.isub(this.m):o.cmpn(0)<0&&(i=o.iadd(this.m)),i._forceRed(this)},k.prototype.mul=function(e,t){if(e.isZero()||t.isZero())return new o(0)._forceRed(this);var r=e.mul(t),n=r.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),i=r.isub(n).iushrn(this.shift),a=i;return i.cmp(this.m)>=0?a=i.isub(this.m):i.cmpn(0)<0&&(a=i.iadd(this.m)),a._forceRed(this)},k.prototype.invm=function(e){return this.imod(e._invmp(this.m).mul(this.r2))._forceRed(this)}}(e,t)})),u=(s.BN,n((function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.version="logger/5.0.6"}))),c=(r(u),u.version,n((function(e,t){Object.defineProperty(t,"__esModule",{value:!0});var r=!1,n=!1,o={debug:1,default:2,info:2,warning:3,error:4,off:5},i=o.default,a=null;var s,c,l=function(){try{var e=[];if(["NFD","NFC","NFKD","NFKC"].forEach((function(t){try{if("test"!=="test".normalize(t))throw new Error("bad normalize")}catch(r){e.push(t)}})),e.length)throw new Error("missing "+e.join(", "));if(String.fromCharCode(233).normalize("NFD")!==String.fromCharCode(101,769))throw new Error("broken implementation")}catch(e){return e.message}return null}();!function(e){e.DEBUG="DEBUG",e.INFO="INFO",e.WARNING="WARNING",e.ERROR="ERROR",e.OFF="OFF"}(s=t.LogLevel||(t.LogLevel={})),function(e){e.UNKNOWN_ERROR="UNKNOWN_ERROR",e.NOT_IMPLEMENTED="NOT_IMPLEMENTED",e.UNSUPPORTED_OPERATION="UNSUPPORTED_OPERATION",e.NETWORK_ERROR="NETWORK_ERROR",e.SERVER_ERROR="SERVER_ERROR",e.TIMEOUT="TIMEOUT",e.BUFFER_OVERRUN="BUFFER_OVERRUN",e.NUMERIC_FAULT="NUMERIC_FAULT",e.MISSING_NEW="MISSING_NEW",e.INVALID_ARGUMENT="INVALID_ARGUMENT",e.MISSING_ARGUMENT="MISSING_ARGUMENT",e.UNEXPECTED_ARGUMENT="UNEXPECTED_ARGUMENT",e.CALL_EXCEPTION="CALL_EXCEPTION",e.INSUFFICIENT_FUNDS="INSUFFICIENT_FUNDS",e.NONCE_EXPIRED="NONCE_EXPIRED",e.REPLACEMENT_UNDERPRICED="REPLACEMENT_UNDERPRICED",e.UNPREDICTABLE_GAS_LIMIT="UNPREDICTABLE_GAS_LIMIT"}(c=t.ErrorCode||(t.ErrorCode={}));var f=function(){function e(e){Object.defineProperty(this,"version",{enumerable:!0,value:e,writable:!1})}return e.prototype._log=function(e,t){var r=e.toLowerCase();null==o[r]&&this.throwArgumentError("invalid log level name","logLevel",e),i>o[r]||console.log.apply(console,t)},e.prototype.debug=function(){for(var t=[],r=0;r=9007199254740991)&&this.throwError(r,e.errors.NUMERIC_FAULT,{operation:"checkSafeInteger",fault:"out-of-safe-range",value:t}),t%1&&this.throwError(r,e.errors.NUMERIC_FAULT,{operation:"checkSafeInteger",fault:"non-integer",value:t}))},e.prototype.checkArgumentCount=function(t,r,n){n=n?": "+n:"",tr&&this.throwError("too many arguments"+n,e.errors.UNEXPECTED_ARGUMENT,{count:t,expectedCount:r})},e.prototype.checkNew=function(t,r){t!==Object&&null!=t||this.throwError("missing new",e.errors.MISSING_NEW,{name:r.name})},e.prototype.checkAbstract=function(t,r){t===r?this.throwError("cannot instantiate abstract class "+JSON.stringify(r.name)+" directly; use a sub-class",e.errors.UNSUPPORTED_OPERATION,{name:t.name,operation:"new"}):t!==Object&&null!=t||this.throwError("missing new",e.errors.MISSING_NEW,{name:r.name})},e.globalLogger=function(){return a||(a=new e(u.version)),a},e.setCensorship=function(t,o){if(!t&&o&&this.globalLogger().throwError("cannot permanently disable censorship",e.errors.UNSUPPORTED_OPERATION,{operation:"setCensorship"}),r){if(!t)return;this.globalLogger().throwError("error censorship permanent",e.errors.UNSUPPORTED_OPERATION,{operation:"setCensorship"})}n=!!t,r=!!o},e.setLogLevel=function(t){var r=o[t.toLowerCase()];null!=r?i=r:e.globalLogger().warn("invalid log level - "+t)},e.errors=c,e.levels=s,e}();t.Logger=f}))),l=(r(c),c.LogLevel,c.ErrorCode,c.Logger,n((function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.version="bytes/5.0.5"}))),f=(r(l),l.version,n((function(e,t){Object.defineProperty(t,"__esModule",{value:!0});var r=new c.Logger(l.version);function n(e){return!!e.toHexString}function o(e){return e.slice||(e.slice=function(){var t=Array.prototype.slice.call(arguments);return o(new Uint8Array(Array.prototype.slice.apply(e,t)))}),e}function i(e){return h(e)&&!(e.length%2)||a(e)}function a(e){if(null==e)return!1;if(e.constructor===Uint8Array)return!0;if("string"==typeof e)return!1;if(null==e.length)return!1;for(var t=0;t=256||r%1)return!1}return!0}function s(e,t){if(t||(t={}),"number"==typeof e){r.checkSafeUint53(e,"invalid arrayify value");for(var i=[];e;)i.unshift(255&e),e=parseInt(String(e/256));return 0===i.length&&i.push(0),o(new Uint8Array(i))}if(t.allowMissingPrefix&&"string"==typeof e&&"0x"!==e.substring(0,2)&&(e="0x"+e),n(e)&&(e=e.toHexString()),h(e)){var s=e.substring(2);s.length%2&&("left"===t.hexPad?s="0x0"+s.substring(2):"right"===t.hexPad?s+="0":r.throwArgumentError("hex data is odd-length","value",e));i=[];for(var u=0;ut&&r.throwArgumentError("value out of range","value",arguments[0]);var n=new Uint8Array(t);return n.set(e,t-e.length),o(n)}function h(e,t){return!("string"!=typeof e||!e.match(/^0x[0-9A-Fa-f]*$/))&&(!t||e.length===2+2*t)}t.isBytesLike=i,t.isBytes=a,t.arrayify=s,t.concat=u,t.stripZeros=function(e){var t=s(e);if(0===t.length)return t;for(var r=0;r>4]+d[15&u]}return i}return r.throwArgumentError("invalid hexlify value","value",e)}function g(e){"string"!=typeof e&&(e=p(e)),h(e)||r.throwArgumentError("invalid hex string","value",e),e=e.substring(2);for(var t=0;t2*t+2&&r.throwArgumentError("value out of range","value",arguments[1]);e.length<2*t+2;)e="0x0"+e.substring(2);return e}function y(e){var t={r:"0x",s:"0x",_vs:"0x",recoveryParam:0,v:0};if(i(e)){var n=s(e);65!==n.length&&r.throwArgumentError("invalid signature string; must be 65 bytes","signature",e),t.r=p(n.slice(0,32)),t.s=p(n.slice(32,64)),t.v=n[64],t.v<27&&(0===t.v||1===t.v?t.v+=27:r.throwArgumentError("signature invalid v byte","signature",e)),t.recoveryParam=1-t.v%2,t.recoveryParam&&(n[32]|=128),t._vs=p(n.slice(32,64))}else{if(t.r=e.r,t.s=e.s,t.v=e.v,t.recoveryParam=e.recoveryParam,t._vs=e._vs,null!=t._vs){var o=f(s(t._vs),32);t._vs=p(o);var a=o[0]>=128?1:0;null==t.recoveryParam?t.recoveryParam=a:t.recoveryParam!==a&&r.throwArgumentError("signature recoveryParam mismatch _vs","signature",e),o[0]&=127;var u=p(o);null==t.s?t.s=u:t.s!==u&&r.throwArgumentError("signature v mismatch _vs","signature",e)}null==t.recoveryParam?null==t.v?r.throwArgumentError("signature missing v and recoveryParam","signature",e):t.recoveryParam=1-t.v%2:null==t.v?t.v=27+t.recoveryParam:t.recoveryParam!==1-t.v%2&&r.throwArgumentError("signature recoveryParam mismatch v","signature",e),null!=t.r&&h(t.r)?t.r=m(t.r,32):r.throwArgumentError("signature missing or invalid r","signature",e),null!=t.s&&h(t.s)?t.s=m(t.s,32):r.throwArgumentError("signature missing or invalid s","signature",e);var c=s(t.s);c[0]>=128&&r.throwArgumentError("signature s out of range","signature",e),t.recoveryParam&&(c[0]|=128);var l=p(c);t._vs&&(h(t._vs)||r.throwArgumentError("signature invalid _vs","signature",e),t._vs=m(t._vs,32)),null==t._vs?t._vs=l:t._vs!==l&&r.throwArgumentError("signature _vs mismatch v and s","signature",e)}return t}t.hexlify=p,t.hexDataLength=function(e){if("string"!=typeof e)e=p(e);else if(!h(e)||e.length%2)return null;return(e.length-2)/2},t.hexDataSlice=function(e,t,n){return"string"!=typeof e?e=p(e):(!h(e)||e.length%2)&&r.throwArgumentError("invalid hexData","value",e),t=2+2*t,null!=n?"0x"+e.substring(t,2+2*n):"0x"+e.substring(t)},t.hexConcat=function(e){var t="0x";return e.forEach((function(e){t+=p(e).substring(2)})),t},t.hexValue=function(e){var t=g(p(e,{hexPad:"left"}));return"0x"===t?"0x0":t},t.hexStripZeros=g,t.hexZeroPad=m,t.splitSignature=y,t.joinSignature=function(e){return p(u([(e=y(e)).r,e.s,e.recoveryParam?"0x1c":"0x1b"]))}}))),h=(r(f),f.isBytesLike,f.isBytes,f.arrayify,f.concat,f.stripZeros,f.zeroPad,f.isHexString,f.hexlify,f.hexDataLength,f.hexDataSlice,f.hexConcat,f.hexValue,f.hexStripZeros,f.hexZeroPad,f.splitSignature,f.joinSignature,n((function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.version="bignumber/5.0.8"}))),d=(r(h),h.version,n((function(e,t){Object.defineProperty(t,"__esModule",{value:!0});var r=new c.Logger(h.version),n={},o=9007199254740991;t.isBigNumberish=function(e){return null!=e&&(i.isBigNumber(e)||"number"==typeof e&&e%1==0||"string"==typeof e&&!!e.match(/^-?[0-9]+$/)||f.isHexString(e)||"bigint"==typeof e||f.isBytes(e))};var i=function(){function e(t,o){var i=this.constructor;r.checkNew(i,e),t!==n&&r.throwError("cannot call constructor directly; use BigNumber.from",c.Logger.errors.UNSUPPORTED_OPERATION,{operation:"new (BigNumber)"}),this._hex=o,this._isBigNumber=!0,Object.freeze(this)}return e.prototype.fromTwos=function(e){return u(l(this).fromTwos(e))},e.prototype.toTwos=function(e){return u(l(this).toTwos(e))},e.prototype.abs=function(){return"-"===this._hex[0]?e.from(this._hex.substring(1)):this},e.prototype.add=function(e){return u(l(this).add(l(e)))},e.prototype.sub=function(e){return u(l(this).sub(l(e)))},e.prototype.div=function(t){return e.from(t).isZero()&&d("division by zero","div"),u(l(this).div(l(t)))},e.prototype.mul=function(e){return u(l(this).mul(l(e)))},e.prototype.mod=function(e){var t=l(e);return t.isNeg()&&d("cannot modulo negative values","mod"),u(l(this).umod(t))},e.prototype.pow=function(e){var t=l(e);return t.isNeg()&&d("cannot raise to negative values","pow"),u(l(this).pow(t))},e.prototype.and=function(e){var t=l(e);return(this.isNegative()||t.isNeg())&&d("cannot 'and' negative values","and"),u(l(this).and(t))},e.prototype.or=function(e){var t=l(e);return(this.isNegative()||t.isNeg())&&d("cannot 'or' negative values","or"),u(l(this).or(t))},e.prototype.xor=function(e){var t=l(e);return(this.isNegative()||t.isNeg())&&d("cannot 'xor' negative values","xor"),u(l(this).xor(t))},e.prototype.mask=function(e){return(this.isNegative()||e<0)&&d("cannot mask negative values","mask"),u(l(this).maskn(e))},e.prototype.shl=function(e){return(this.isNegative()||e<0)&&d("cannot shift negative values","shl"),u(l(this).shln(e))},e.prototype.shr=function(e){return(this.isNegative()||e<0)&&d("cannot shift negative values","shr"),u(l(this).shrn(e))},e.prototype.eq=function(e){return l(this).eq(l(e))},e.prototype.lt=function(e){return l(this).lt(l(e))},e.prototype.lte=function(e){return l(this).lte(l(e))},e.prototype.gt=function(e){return l(this).gt(l(e))},e.prototype.gte=function(e){return l(this).gte(l(e))},e.prototype.isNegative=function(){return"-"===this._hex[0]},e.prototype.isZero=function(){return l(this).isZero()},e.prototype.toNumber=function(){try{return l(this).toNumber()}catch(e){d("overflow","toNumber",this.toString())}return null},e.prototype.toString=function(){return 0!==arguments.length&&r.throwError("bigNumber.toString does not accept parameters",c.Logger.errors.UNEXPECTED_ARGUMENT,{}),l(this).toString(10)},e.prototype.toHexString=function(){return this._hex},e.prototype.toJSON=function(e){return{type:"BigNumber",hex:this.toHexString()}},e.from=function(t){if(t instanceof e)return t;if("string"==typeof t)return t.match(/^-?0x[0-9a-f]+$/i)?new e(n,a(t)):t.match(/^-?[0-9]+$/)?new e(n,a(new s.BN(t))):r.throwArgumentError("invalid BigNumber string","value",t);if("number"==typeof t)return t%1&&d("underflow","BigNumber.from",t),(t>=o||t<=-o)&&d("overflow","BigNumber.from",t),e.from(String(t));var i,u=t;if("bigint"==typeof u)return e.from(u.toString());if(f.isBytes(u))return e.from(f.hexlify(u));if(u)if(u.toHexString){if("string"==typeof(i=u.toHexString()))return e.from(i)}else if(null==(i=u._hex)&&"BigNumber"===u.type&&(i=u.hex),"string"==typeof i&&(f.isHexString(i)||"-"===i[0]&&f.isHexString(i.substring(1))))return e.from(i);return r.throwArgumentError("invalid BigNumber value","value",t)},e.isBigNumber=function(e){return!(!e||!e._isBigNumber)},e}();function a(e){if("string"!=typeof e)return a(e.toString(16));if("-"===e[0])return"-"===(e=e.substring(1))[0]&&r.throwArgumentError("invalid hex","value",e),"0x00"===(e=a(e))?e:"-"+e;if("0x"!==e.substring(0,2)&&(e="0x"+e),"0x"===e)return"0x00";for(e.length%2&&(e="0x0"+e.substring(2));e.length>4&&"0x00"===e.substring(0,4);)e="0x"+e.substring(4);return e}function u(e){return i.from(a(e))}function l(e){var t=i.from(e).toHexString();return"-"===t[0]?new s.BN("-"+t.substring(3),16):new s.BN(t.substring(2),16)}function d(e,t,n){var o={fault:e,operation:t};return null!=n&&(o.value=n),r.throwError(e,c.Logger.errors.NUMERIC_FAULT,o)}t.BigNumber=i}))),p=(r(d),d.isBigNumberish,d.BigNumber,n((function(e,t){Object.defineProperty(t,"__esModule",{value:!0});var r=new c.Logger(h.version),n={},o=d.BigNumber.from(0),i=d.BigNumber.from(-1);function a(e,t,n,o){var i={fault:t,operation:n};return void 0!==o&&(i.value=o),r.throwError(e,c.Logger.errors.NUMERIC_FAULT,i)}for(var s="0";s.length<256;)s+=s;function u(e){if("number"!=typeof e)try{e=d.BigNumber.from(e).toNumber()}catch(e){}return"number"==typeof e&&e>=0&&e<=256&&!(e%1)?"1"+s.substring(0,e):r.throwArgumentError("invalid decimal size","decimals",e)}function l(e,t){null==t&&(t=0);var r=u(t),n=(e=d.BigNumber.from(e)).lt(o);n&&(e=e.mul(i));for(var a=e.mod(r).toString();a.length2&&r.throwArgumentError("too many decimal points","value",e);var c=s[0],l=s[1];for(c||(c="0"),l||(l="0"),l.length>n.length-1&&a("fractional component exceeds decimals","underflow","parseFixed");l.length80&&r.throwArgumentError("invalid fixed format (decimals too large)","format.decimals",a),new e(n,o,i,a)},e}();t.FixedFormat=g;var m=function(){function e(t,o,i,a){var s=this.constructor;r.checkNew(s,e),t!==n&&r.throwError("cannot use FixedNumber constructor; use FixedNumber.from",c.Logger.errors.UNSUPPORTED_OPERATION,{operation:"new FixedFormat"}),this.format=a,this._hex=o,this._value=i,this._isFixedNumber=!0,Object.freeze(this)}return e.prototype._checkFormat=function(e){this.format.name!==e.format.name&&r.throwArgumentError("incompatible format; use fixedNumber.toFormat","other",e)},e.prototype.addUnsafe=function(t){this._checkFormat(t);var r=p(this._value,this.format.decimals),n=p(t._value,t.format.decimals);return e.fromValue(r.add(n),this.format.decimals,this.format)},e.prototype.subUnsafe=function(t){this._checkFormat(t);var r=p(this._value,this.format.decimals),n=p(t._value,t.format.decimals);return e.fromValue(r.sub(n),this.format.decimals,this.format)},e.prototype.mulUnsafe=function(t){this._checkFormat(t);var r=p(this._value,this.format.decimals),n=p(t._value,t.format.decimals);return e.fromValue(r.mul(n).div(this.format._multiplier),this.format.decimals,this.format)},e.prototype.divUnsafe=function(t){this._checkFormat(t);var r=p(this._value,this.format.decimals),n=p(t._value,t.format.decimals);return e.fromValue(r.mul(this.format._multiplier).div(n),this.format.decimals,this.format)},e.prototype.floor=function(){var t=this.toString().split("."),r=e.from(t[0],this.format),n=!t[1].match(/^(0*)$/);return this.isNegative()&&n&&(r=r.subUnsafe(y)),r},e.prototype.ceiling=function(){var t=this.toString().split("."),r=e.from(t[0],this.format),n=!t[1].match(/^(0*)$/);return!this.isNegative()&&n&&(r=r.addUnsafe(y)),r},e.prototype.round=function(t){null==t&&(t=0);var n=this.toString().split(".");if((t<0||t>80||t%1)&&r.throwArgumentError("invalid decimal count","decimals",t),n[1].length<=t)return this;var o=e.from("1"+s.substring(0,t));return this.mulUnsafe(o).addUnsafe(v).floor().divUnsafe(o)},e.prototype.isZero=function(){return"0.0"===this._value},e.prototype.isNegative=function(){return"-"===this._value[0]},e.prototype.toString=function(){return this._value},e.prototype.toHexString=function(e){if(null==e)return this._hex;e%8&&r.throwArgumentError("invalid byte width","width",e);var t=d.BigNumber.from(this._hex).fromTwos(this.format.width).toTwos(e).toHexString();return f.hexZeroPad(t,e/8)},e.prototype.toUnsafeFloat=function(){return parseFloat(this.toString())},e.prototype.toFormat=function(t){return e.fromString(this._value,t)},e.fromValue=function(t,r,n){return null!=n||null==r||d.isBigNumberish(r)||(n=r,r=null),null==r&&(r=0),null==n&&(n="fixed"),e.fromString(l(t,r),g.from(n))},e.fromString=function(t,r){null==r&&(r="fixed");var i=g.from(r),s=p(t,i.decimals);!i.signed&&s.lt(o)&&a("unsigned value cannot be negative","overflow","value",t);var u=null;i.signed?u=s.toTwos(i.width).toHexString():(u=s.toHexString(),u=f.hexZeroPad(u,i.width/8));var c=l(s,i.decimals);return new e(n,u,c,i)},e.fromBytes=function(t,r){null==r&&(r="fixed");var o=g.from(r);if(f.arrayify(t).length>o.width/8)throw new Error("overflow");var i=d.BigNumber.from(t);o.signed&&(i=i.fromTwos(o.width));var a=i.toTwos((o.signed?0:1)+o.width).toHexString(),s=l(i,o.decimals);return new e(n,a,s,o)},e.from=function(t,n){if("string"==typeof t)return e.fromString(t,n);if(f.isBytes(t))return e.fromBytes(t,n);try{return e.fromValue(t,0,n)}catch(e){if(e.code!==c.Logger.errors.INVALID_ARGUMENT)throw e}return r.throwArgumentError("invalid FixedNumber value","value",t)},e.isFixedNumber=function(e){return!(!e||!e._isFixedNumber)},e}();t.FixedNumber=m;var y=m.from(1),v=m.from("0.5")}))),g=(r(p),p.formatFixed,p.parseFixed,p.FixedFormat,p.FixedNumber,n((function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.BigNumber=d.BigNumber,t.formatFixed=p.formatFixed,t.FixedFormat=p.FixedFormat,t.FixedNumber=p.FixedNumber,t.parseFixed=p.parseFixed}))),m=(r(g),g.BigNumber,g.formatFixed,g.FixedFormat,g.FixedNumber,g.parseFixed,n((function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.version="properties/5.0.4"}))),y=(r(m),m.version,n((function(e,r){var n=t&&t.__awaiter||function(e,t,r,n){return new(r||(r=Promise))((function(o,i){function a(e){try{u(n.next(e))}catch(e){i(e)}}function s(e){try{u(n.throw(e))}catch(e){i(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(a,s)}u((n=n.apply(e,t||[])).next())}))},o=t&&t.__generator||function(e,t){var r,n,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(i){return function(s){return function(i){if(r)throw new TypeError("Generator is already executing.");for(;a;)try{if(r=1,n&&(o=2&i[0]?n.return:i[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,i[1])).done)return o;switch(n=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return a.label++,{value:i[1],done:!1};case 5:a.label++,n=i[1],i=[0];continue;case 7:i=a.ops.pop(),a.trys.pop();continue;default:if(!(o=a.trys,(o=o.length>0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]=0||"tuple"===e)&&u[t])return!0;return(s[t]||"payable"===t)&&i.throwArgumentError("invalid modifier","name",t),!1}function f(e,t){for(var r in t)y.defineReadOnly(e,r,t[r])}r.FormatTypes=Object.freeze({sighash:"sighash",minimal:"minimal",full:"full",json:"json"});var h=new RegExp(/^(.*)\[([0-9]*)\]$/),d=function(){function e(t,r){t!==a&&i.throwError("use fromString",c.Logger.errors.UNSUPPORTED_OPERATION,{operation:"new ParamType()"}),f(this,r);var n=this.type.match(h);f(this,n?{arrayLength:parseInt(n[2]||"-1"),arrayChildren:e.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 e.prototype.format=function(e){if(e||(e=r.FormatTypes.sighash),r.FormatTypes[e]||i.throwArgumentError("invalid format type","format",e),e===r.FormatTypes.json){var t={type:"tuple"===this.baseType?"tuple":this.type,name:this.name||void 0};return"boolean"==typeof this.indexed&&(t.indexed=this.indexed),this.components&&(t.components=this.components.map((function(t){return JSON.parse(t.format(e))}))),JSON.stringify(t)}var n="";return"array"===this.baseType?(n+=this.arrayChildren.format(e),n+="["+(this.arrayLength<0?"":String(this.arrayLength))+"]"):"tuple"===this.baseType?(e!==r.FormatTypes.sighash&&(n+=this.type),n+="("+this.components.map((function(t){return t.format(e)})).join(e===r.FormatTypes.full?", ":",")+")"):n+=this.type,e!==r.FormatTypes.sighash&&(!0===this.indexed&&(n+=" indexed"),e===r.FormatTypes.full&&this.name&&(n+=" "+this.name)),n},e.from=function(t,r){return"string"==typeof t?e.fromString(t,r):e.fromObject(t)},e.fromObject=function(t){return e.isParamType(t)?t:new e(a,{name:t.name||null,type:S(t.type),indexed:null==t.indexed?null:!!t.indexed,components:t.components?t.components.map(e.fromObject):null})},e.fromString=function(t,r){return n=function(e,t){var r=e;function n(t){i.throwArgumentError("unexpected character at position "+t,"param",e)}function o(e){var r={type:"",name:"",parent:e,state:{allowType:!0}};return t&&(r.indexed=!1),r}e=e.replace(/\s/g," ");for(var a={type:"",name:"",state:{allowType:!0}},s=a,u=0;u2&&i.throwArgumentError("invalid human-readable ABI signature","value",e),r[1].match(/^[0-9]+$/)||i.throwArgumentError("invalid human-readable ABI signature gas","value",e),t.gas=g.BigNumber.from(r[1]),r[0]):e}function _(e,t){t.constant=!1,t.payable=!1,t.stateMutability="nonpayable",e.split(" ").forEach((function(e){switch(e.trim()){case"constant":t.constant=!0;break;case"payable":t.payable=!0,t.stateMutability="payable";break;case"nonpayable":t.payable=!1,t.stateMutability="nonpayable";break;case"pure":t.constant=!0,t.stateMutability="pure";break;case"view":t.constant=!0,t.stateMutability="view";break;case"external":case"public":case"":break;default:console.log("unknown modifier: "+e)}}))}function E(e){var t={constant:!1,payable:!0,stateMutability:"payable"};return null!=e.stateMutability?(t.stateMutability=e.stateMutability,t.constant="view"===t.stateMutability||"pure"===t.stateMutability,null!=e.constant&&!!e.constant!==t.constant&&i.throwArgumentError("cannot have constant function with mutability "+t.stateMutability,"value",e),t.payable="payable"===t.stateMutability,null!=e.payable&&!!e.payable!==t.payable&&i.throwArgumentError("cannot have payable function with mutability "+t.stateMutability,"value",e)):null!=e.payable?(t.payable=!!e.payable,null!=e.constant||t.payable||"constructor"===e.type||i.throwArgumentError("unable to determine stateMutability","value",e),t.constant=!!e.constant,t.constant?t.stateMutability="view":t.stateMutability=t.payable?"payable":"nonpayable",t.payable&&t.constant&&i.throwArgumentError("cannot have constant payable function","value",e)):null!=e.constant?(t.constant=!!e.constant,t.payable=!t.constant,t.stateMutability=t.constant?"view":"payable"):"constructor"!==e.type&&i.throwArgumentError("unable to determine stateMutability","value",e),t}r.EventFragment=b;var k=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o(t,e),t.prototype.format=function(e){if(e||(e=r.FormatTypes.sighash),r.FormatTypes[e]||i.throwArgumentError("invalid format type","format",e),e===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(t){return JSON.parse(t.format(e))}))});e===r.FormatTypes.sighash&&i.throwError("cannot format a constructor for sighash",c.Logger.errors.UNSUPPORTED_OPERATION,{operation:"format(sighash)"});var t="constructor("+this.inputs.map((function(t){return t.format(e)})).join(e===r.FormatTypes.full?", ":",")+") ";return this.stateMutability&&"nonpayable"!==this.stateMutability&&(t+=this.stateMutability+" "),t.trim()},t.from=function(e){return"string"==typeof e?t.fromString(e):t.fromObject(e)},t.fromObject=function(e){if(t.isConstructorFragment(e))return e;"constructor"!==e.type&&i.throwArgumentError("invalid constructor object","value",e);var r=E(e);r.constant&&i.throwArgumentError("constructor cannot be constant","value",e);var n={name:null,type:e.type,inputs:e.inputs?e.inputs.map(d.fromObject):[],payable:r.payable,stateMutability:r.stateMutability,gas:e.gas?g.BigNumber.from(e.gas):null};return new t(a,n)},t.fromString=function(e){var r={type:"constructor"},n=(e=w(e,r)).match(x);return n&&"constructor"===n[1].trim()||i.throwArgumentError("invalid constructor string","value",e),r.inputs=p(n[2].trim(),!1),_(n[3].trim(),r),t.fromObject(r)},t.isConstructorFragment=function(e){return e&&e._isFragment&&"constructor"===e.type},t}(m);r.ConstructorFragment=k;var P=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o(t,e),t.prototype.format=function(e){if(e||(e=r.FormatTypes.sighash),r.FormatTypes[e]||i.throwArgumentError("invalid format type","format",e),e===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(t){return JSON.parse(t.format(e))})),ouputs:this.outputs.map((function(t){return JSON.parse(t.format(e))}))});var t="";return e!==r.FormatTypes.sighash&&(t+="function "),t+=this.name+"("+this.inputs.map((function(t){return t.format(e)})).join(e===r.FormatTypes.full?", ":",")+") ",e!==r.FormatTypes.sighash&&(this.stateMutability?"nonpayable"!==this.stateMutability&&(t+=this.stateMutability+" "):this.constant&&(t+="view "),this.outputs&&this.outputs.length&&(t+="returns ("+this.outputs.map((function(t){return t.format(e)})).join(", ")+") "),null!=this.gas&&(t+="@"+this.gas.toString()+" ")),t.trim()},t.from=function(e){return"string"==typeof e?t.fromString(e):t.fromObject(e)},t.fromObject=function(e){if(t.isFunctionFragment(e))return e;"function"!==e.type&&i.throwArgumentError("invalid function object","value",e);var r=E(e),n={type:e.type,name:M(e.name),constant:r.constant,inputs:e.inputs?e.inputs.map(d.fromObject):[],outputs:e.outputs?e.outputs.map(d.fromObject):[],payable:r.payable,stateMutability:r.stateMutability,gas:e.gas?g.BigNumber.from(e.gas):null};return new t(a,n)},t.fromString=function(e){var r={type:"function"},n=(e=w(e,r)).split(" returns ");n.length>2&&i.throwArgumentError("invalid function string","value",e);var o=n[0].match(x);if(o||i.throwArgumentError("invalid function signature","value",e),r.name=o[1].trim(),r.name&&M(r.name),r.inputs=p(o[2],!1),_(o[3].trim(),r),n.length>1){var a=n[1].match(x);""==a[1].trim()&&""==a[3].trim()||i.throwArgumentError("unexpected tokens","value",e),r.outputs=p(a[2],!1)}else r.outputs=[];return t.fromObject(r)},t.isFunctionFragment=function(e){return e&&e._isFragment&&"function"===e.type},t}(k);function S(e){return e.match(/^uint($|[^1-9])/)?e="uint256"+e.substring(4):e.match(/^int($|[^1-9])/)&&(e="int256"+e.substring(3)),e}r.FunctionFragment=P;var A=new RegExp("^[A-Za-z_][A-Za-z0-9_]*$");function M(e){return e&&e.match(A)||i.throwArgumentError('invalid identifier "'+e+'"',"value",e),e}var x=new RegExp("^([^)(]*)\\((.*)\\)([^)(]*)$")}))),w=(r(b),b.FormatTypes,b.ParamType,b.Fragment,b.EventFragment,b.ConstructorFragment,b.FunctionFragment,n((function(e,t){Object.defineProperty(t,"__esModule",{value:!0});var r=new c.Logger(v.version);t.checkResultErrors=function(e){var t=[],r=function(e,n){if(Array.isArray(n))for(var o in n){var i=e.slice();i.push(o);try{r(i,n[o])}catch(e){t.push({path:i,error:e})}}};return r([],e),t};var n=function(){function e(e,t,r,n){this.name=e,this.type=t,this.localName=r,this.dynamic=n}return e.prototype._throwError=function(e,t){r.throwArgumentError(e,this.localName,t)},e}();t.Coder=n;var o=function(){function e(e){y.defineReadOnly(this,"wordSize",e||32),this._data=f.arrayify([]),this._padding=new Uint8Array(e)}return Object.defineProperty(e.prototype,"data",{get:function(){return f.hexlify(this._data)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"length",{get:function(){return this._data.length},enumerable:!0,configurable:!0}),e.prototype._writeData=function(e){return this._data=f.concat([this._data,e]),e.length},e.prototype.writeBytes=function(e){var t=f.arrayify(e);return t.length%this.wordSize&&(t=f.concat([t,this._padding.slice(t.length%this.wordSize)])),this._writeData(t)},e.prototype._getValue=function(e){var t=f.arrayify(g.BigNumber.from(e));return t.length>this.wordSize&&r.throwError("value out-of-bounds",c.Logger.errors.BUFFER_OVERRUN,{length:this.wordSize,offset:t.length}),t.length%this.wordSize&&(t=f.concat([this._padding.slice(t.length%this.wordSize),t])),t},e.prototype.writeValue=function(e){return this._writeData(this._getValue(e))},e.prototype.writeUpdatableValue=function(){var e=this,t=this.length;return this.writeValue(0),function(r){e._data.set(e._getValue(r),t)}},e}();t.Writer=o;var i=function(){function e(e,t,r,n){y.defineReadOnly(this,"_data",f.arrayify(e)),y.defineReadOnly(this,"wordSize",t||32),y.defineReadOnly(this,"_coerceFunc",r),y.defineReadOnly(this,"allowLoose",n),this._offset=0}return Object.defineProperty(e.prototype,"data",{get:function(){return f.hexlify(this._data)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"consumed",{get:function(){return this._offset},enumerable:!0,configurable:!0}),e.coerce=function(e,t){var r=e.match("^u?int([0-9]+)$");return r&&parseInt(r[1])<=48&&(t=t.toNumber()),t},e.prototype.coerce=function(t,r){return this._coerceFunc?this._coerceFunc(t,r):e.coerce(t,r)},e.prototype._peekBytes=function(e,t,n){var o=Math.ceil(t/this.wordSize)*this.wordSize;return this._offset+o>this._data.length&&(this.allowLoose&&n&&this._offset+t<=this._data.length?o=t:r.throwError("data out-of-bounds",c.Logger.errors.BUFFER_OVERRUN,{length:this._data.length,offset:this._offset+o})),this._data.slice(this._offset,this._offset+o)},e.prototype.subReader=function(t){return new e(this._data.slice(this._offset+t),this.wordSize,this._coerceFunc,this.allowLoose)},e.prototype.readBytes=function(e,t){var r=this._peekBytes(0,e,!!t);return this._offset+=r.length,r.slice(0,e)},e.prototype.readValue=function(){return g.BigNumber.from(this.readBytes(this.wordSize))},e}();t.Reader=i}))),_=(r(w),w.checkResultErrors,w.Coder,w.Writer,w.Reader,n((function(e){ /** * [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=t);for(var n=!r.JS_SHA3_NO_COMMON_JS&&e.exports,o="0123456789abcdef".split(""),i=[0,8,16,24],a=[1,0,32898,0,32906,2147483648,2147516416,2147483648,32907,0,2147483649,0,2147516545,2147483648,32777,2147483648,138,0,136,0,2147516425,0,2147483658,0,2147516555,0,139,2147483648,32905,2147483648,32771,2147483648,32770,2147483648,128,2147483648,32778,0,2147483658,2147483648,2147516545,2147483648,32896,2147483648,2147483649,0,2147516424,2147483648],s=[224,256,384,512],u=["hex","buffer","arrayBuffer","array"],c=function(e,t,r){return function(n){return new w(e,t,e).update(n)[r]()}},l=function(e,t,r){return function(n,o){return new w(e,t,o).update(n)[r]()}},f=function(e,t){var r=c(e,t,"hex");r.create=function(){return new w(e,t,e)},r.update=function(e){return r.create().update(e)};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(e){var t="string"!=typeof e;t&&e.constructor===ArrayBuffer&&(e=new Uint8Array(e));for(var r,n,o=e.length,a=this.blocks,s=this.byteCount,u=this.blockCount,c=0,l=this.s;c>2]|=e[c]<>2]|=n<>2]|=(192|n>>6)<>2]|=(128|63&n)<=57344?(a[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)<=s){for(this.start=r-s,this.block=a[u],r=0;r>2]|=this.padding[3&t],this.lastByteIndex===this.byteCount)for(e[0]=e[r],t=1;t>4&15]+o[15&e]+o[e>>12&15]+o[e>>8&15]+o[e>>20&15]+o[e>>16&15]+o[e>>28&15]+o[e>>24&15];s%t==0&&(_(r),a=0)}return i&&(e=r[a],i>0&&(u+=o[e>>4&15]+o[15&e]),i>1&&(u+=o[e>>12&15]+o[e>>8&15]),i>2&&(u+=o[e>>20&15]+o[e>>16&15])),u},w.prototype.arrayBuffer=function(){this.finalize();var e,t=this.blockCount,r=this.s,n=this.outputBlocks,o=this.extraBytes,i=0,a=0,s=this.outputBits>>3;e=o?new ArrayBuffer(n+1<<2):new ArrayBuffer(s);for(var u=new Uint32Array(e);a>8&255,u[e+2]=t>>16&255,u[e+3]=t>>24&255;s%r==0&&_(n)}return i&&(e=s<<2,t=n[a],i>0&&(u[e]=255&t),i>1&&(u[e+1]=t>>8&255),i>2&&(u[e+2]=t>>16&255)),u};var _=function(e){var t,r,n,o,i,s,u,c,l,f,h,d,p,g,m,y,v,b,w,_,E,k,P,S,A,M,x,N,O,R,T,C,B,I,F,L,U,j,D,z,H,K,W,q,G,V,J,Z,X,$,Q,Y,ee,te,re,ne,oe,ie,ae,se,ue,ce,le;for(n=0;n<48;n+=2)o=e[0]^e[10]^e[20]^e[30]^e[40],i=e[1]^e[11]^e[21]^e[31]^e[41],s=e[2]^e[12]^e[22]^e[32]^e[42],u=e[3]^e[13]^e[23]^e[33]^e[43],c=e[4]^e[14]^e[24]^e[34]^e[44],l=e[5]^e[15]^e[25]^e[35]^e[45],f=e[6]^e[16]^e[26]^e[36]^e[46],h=e[7]^e[17]^e[27]^e[37]^e[47],t=(d=e[8]^e[18]^e[28]^e[38]^e[48])^(s<<1|u>>>31),r=(p=e[9]^e[19]^e[29]^e[39]^e[49])^(u<<1|s>>>31),e[0]^=t,e[1]^=r,e[10]^=t,e[11]^=r,e[20]^=t,e[21]^=r,e[30]^=t,e[31]^=r,e[40]^=t,e[41]^=r,t=o^(c<<1|l>>>31),r=i^(l<<1|c>>>31),e[2]^=t,e[3]^=r,e[12]^=t,e[13]^=r,e[22]^=t,e[23]^=r,e[32]^=t,e[33]^=r,e[42]^=t,e[43]^=r,t=s^(f<<1|h>>>31),r=u^(h<<1|f>>>31),e[4]^=t,e[5]^=r,e[14]^=t,e[15]^=r,e[24]^=t,e[25]^=r,e[34]^=t,e[35]^=r,e[44]^=t,e[45]^=r,t=c^(d<<1|p>>>31),r=l^(p<<1|d>>>31),e[6]^=t,e[7]^=r,e[16]^=t,e[17]^=r,e[26]^=t,e[27]^=r,e[36]^=t,e[37]^=r,e[46]^=t,e[47]^=r,t=f^(o<<1|i>>>31),r=h^(i<<1|o>>>31),e[8]^=t,e[9]^=r,e[18]^=t,e[19]^=r,e[28]^=t,e[29]^=r,e[38]^=t,e[39]^=r,e[48]^=t,e[49]^=r,g=e[0],m=e[1],V=e[11]<<4|e[10]>>>28,J=e[10]<<4|e[11]>>>28,N=e[20]<<3|e[21]>>>29,O=e[21]<<3|e[20]>>>29,se=e[31]<<9|e[30]>>>23,ue=e[30]<<9|e[31]>>>23,K=e[40]<<18|e[41]>>>14,W=e[41]<<18|e[40]>>>14,I=e[2]<<1|e[3]>>>31,F=e[3]<<1|e[2]>>>31,y=e[13]<<12|e[12]>>>20,v=e[12]<<12|e[13]>>>20,Z=e[22]<<10|e[23]>>>22,X=e[23]<<10|e[22]>>>22,R=e[33]<<13|e[32]>>>19,T=e[32]<<13|e[33]>>>19,ce=e[42]<<2|e[43]>>>30,le=e[43]<<2|e[42]>>>30,te=e[5]<<30|e[4]>>>2,re=e[4]<<30|e[5]>>>2,L=e[14]<<6|e[15]>>>26,U=e[15]<<6|e[14]>>>26,b=e[25]<<11|e[24]>>>21,w=e[24]<<11|e[25]>>>21,$=e[34]<<15|e[35]>>>17,Q=e[35]<<15|e[34]>>>17,C=e[45]<<29|e[44]>>>3,B=e[44]<<29|e[45]>>>3,S=e[6]<<28|e[7]>>>4,A=e[7]<<28|e[6]>>>4,ne=e[17]<<23|e[16]>>>9,oe=e[16]<<23|e[17]>>>9,j=e[26]<<25|e[27]>>>7,D=e[27]<<25|e[26]>>>7,_=e[36]<<21|e[37]>>>11,E=e[37]<<21|e[36]>>>11,Y=e[47]<<24|e[46]>>>8,ee=e[46]<<24|e[47]>>>8,q=e[8]<<27|e[9]>>>5,G=e[9]<<27|e[8]>>>5,M=e[18]<<20|e[19]>>>12,x=e[19]<<20|e[18]>>>12,ie=e[29]<<7|e[28]>>>25,ae=e[28]<<7|e[29]>>>25,z=e[38]<<8|e[39]>>>24,H=e[39]<<8|e[38]>>>24,k=e[48]<<14|e[49]>>>18,P=e[49]<<14|e[48]>>>18,e[0]=g^~y&b,e[1]=m^~v&w,e[10]=S^~M&N,e[11]=A^~x&O,e[20]=I^~L&j,e[21]=F^~U&D,e[30]=q^~V&Z,e[31]=G^~J&X,e[40]=te^~ne&ie,e[41]=re^~oe&ae,e[2]=y^~b&_,e[3]=v^~w&E,e[12]=M^~N&R,e[13]=x^~O&T,e[22]=L^~j&z,e[23]=U^~D&H,e[32]=V^~Z&$,e[33]=J^~X&Q,e[42]=ne^~ie&se,e[43]=oe^~ae&ue,e[4]=b^~_&k,e[5]=w^~E&P,e[14]=N^~R&C,e[15]=O^~T&B,e[24]=j^~z&K,e[25]=D^~H&W,e[34]=Z^~$&Y,e[35]=X^~Q&ee,e[44]=ie^~se&ce,e[45]=ae^~ue&le,e[6]=_^~k&g,e[7]=E^~P&m,e[16]=R^~C&S,e[17]=T^~B&A,e[26]=z^~K&I,e[27]=H^~W&F,e[36]=$^~Y&q,e[37]=Q^~ee&G,e[46]=se^~ce&te,e[47]=ue^~le&re,e[8]=k^~g&y,e[9]=P^~m&v,e[18]=C^~S&M,e[19]=B^~A&x,e[28]=K^~I&L,e[29]=W^~F&U,e[38]=Y^~q&V,e[39]=ee^~G&J,e[48]=ce^~te&ne,e[49]=le^~re&oe,e[0]^=a[n],e[1]^=a[n+1]};if(n)e.exports=d;else for(g=0;g>=8;return t}function o(e,t,r){for(var n=0,o=0;ot+1+o&&r.throwError("child data too short",c.Logger.errors.BUFFER_OVERRUN,{})}return{consumed:1+o,result:i}}function s(e,t){if(0===e.length&&r.throwError("data too short",c.Logger.errors.BUFFER_OVERRUN,{}),e[t]>=248){t+1+(s=e[t]-247)>e.length&&r.throwError("data short segment too short",c.Logger.errors.BUFFER_OVERRUN,{});var n=o(e,t+1,s);return t+1+s+n>e.length&&r.throwError("data long segment too short",c.Logger.errors.BUFFER_OVERRUN,{}),a(e,t,t+1+s,s+n)}if(e[t]>=192){var i=e[t]-192;return t+1+i>e.length&&r.throwError("data array too short",c.Logger.errors.BUFFER_OVERRUN,{}),a(e,t,t+1,i)}if(e[t]>=184){var s;t+1+(s=e[t]-183)>e.length&&r.throwError("data array too short",c.Logger.errors.BUFFER_OVERRUN,{});var u=o(e,t+1,s);return t+1+s+u>e.length&&r.throwError("data array too short",c.Logger.errors.BUFFER_OVERRUN,{}),{consumed:1+s+u,result:f.hexlify(e.slice(t+1+s,t+1+s+u))}}if(e[t]>=128){var l=e[t]-128;return t+1+l>e.length&&r.throwError("data too short",c.Logger.errors.BUFFER_OVERRUN,{}),{consumed:1+l,result:f.hexlify(e.slice(t+1,t+1+l))}}return{consumed:1,result:f.hexlify(e[t])}}t.encode=function(e){return f.hexlify(i(e))},t.decode=function(e){var t=f.arrayify(e),n=s(t,0);return n.consumed!==t.length&&r.throwArgumentError("invalid rlp data","data",e),n.result}}))),S=(r(P),P.encode,P.decode,n((function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.version="address/5.0.5"}))),A=(r(S),S.version,n((function(e,t){Object.defineProperty(t,"__esModule",{value:!0});var r=new c.Logger(S.version);function n(e){f.isHexString(e,20)||r.throwArgumentError("invalid address","address",e);for(var t=(e=e.toLowerCase()).substring(2).split(""),n=new Uint8Array(40),o=0;o<40;o++)n[o]=t[o].charCodeAt(0);var i=f.arrayify(E.keccak256(n));for(o=0;o<40;o+=2)i[o>>1]>>4>=8&&(t[o]=t[o].toUpperCase()),(15&i[o>>1])>=8&&(t[o+1]=t[o+1].toUpperCase());return"0x"+t.join("")}for(var o={},i=0;i<10;i++)o[String(i)]=String(i);for(i=0;i<26;i++)o[String.fromCharCode(65+i)]=String(10+i);var a=Math.floor(function(e){return Math.log10?Math.log10(e):Math.log(e)/Math.LN10}(9007199254740991));function u(e){for(var t=(e=(e=e.toUpperCase()).substring(4)+e.substring(0,2)+"00").split("").map((function(e){return o[e]})).join("");t.length>=a;){var r=t.substring(0,a);t=parseInt(r,10)%97+t.substring(r.length)}for(var n=String(98-parseInt(t,10)%97);n.length<2;)n="0"+n;return n}function l(e){var t=null;if("string"!=typeof e&&r.throwArgumentError("invalid address","address",e),e.match(/^(0x)?[0-9a-fA-F]{40}$/))"0x"!==e.substring(0,2)&&(e="0x"+e),t=n(e),e.match(/([A-F].*[a-f])|([a-f].*[A-F])/)&&t!==e&&r.throwArgumentError("bad address checksum","address",e);else if(e.match(/^XE[0-9]{2}[0-9A-Za-z]{30,31}$/)){for(e.substring(2,4)!==u(e)&&r.throwArgumentError("bad icap checksum","address",e),t=new s.BN(e.substring(4),36).toString(16);t.length<40;)t="0"+t;t=n("0x"+t)}else r.throwArgumentError("invalid address","address",e);return t}t.getAddress=l,t.isAddress=function(e){try{return l(e),!0}catch(e){}return!1},t.getIcapAddress=function(e){for(var t=new s.BN(l(e).substring(2),16).toString(36).toUpperCase();t.length<30;)t="0"+t;return"XE"+u("XE00"+t)+t},t.getContractAddress=function(e){var t=null;try{t=l(e.from)}catch(t){r.throwArgumentError("missing from address","transaction",e)}var n=f.stripZeros(f.arrayify(g.BigNumber.from(e.nonce).toHexString()));return l(f.hexDataSlice(E.keccak256(P.encode([t,n])),12))},t.getCreate2Address=function(e,t,n){return 32!==f.hexDataLength(t)&&r.throwArgumentError("salt must be 32 bytes","salt",t),32!==f.hexDataLength(n)&&r.throwArgumentError("initCodeHash must be 32 bytes","initCodeHash",n),l(f.hexDataSlice(E.keccak256(f.concat(["0xff",l(e),t,n])),12))}}))),M=(r(A),A.getAddress,A.isAddress,A.getIcapAddress,A.getContractAddress,A.getCreate2Address,n((function(e,r){var n,o=t&&t.__extends||(n=function(e,t){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)t.hasOwnProperty(r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}n(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(r,"__esModule",{value:!0});var i=function(e){function t(t){return e.call(this,"address","address",t,!1)||this}return o(t,e),t.prototype.encode=function(e,t){try{A.getAddress(t)}catch(e){this._throwError(e.message,t)}return e.writeValue(t)},t.prototype.decode=function(e){return A.getAddress(f.hexZeroPad(e.readValue().toHexString(),20))},t}(w.Coder);r.AddressCoder=i}))),x=(r(M),M.AddressCoder,n((function(e,r){var n,o=t&&t.__extends||(n=function(e,t){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)t.hasOwnProperty(r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}n(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(r,"__esModule",{value:!0});var i=function(e){function t(t){var r=e.call(this,t.name,t.type,void 0,t.dynamic)||this;return r.coder=t,r}return o(t,e),t.prototype.encode=function(e,t){return this.coder.encode(e,t)},t.prototype.decode=function(e){return this.coder.decode(e)},t}(w.Coder);r.AnonymousCoder=i}))),N=(r(x),x.AnonymousCoder,n((function(e,r){var n,o=t&&t.__extends||(n=function(e,t){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)t.hasOwnProperty(r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}n(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(r,"__esModule",{value:!0});var i=new c.Logger(v.version);function a(e,t,r){var n=null;if(Array.isArray(r))n=r;else if(r&&"object"==typeof r){var o={};n=t.map((function(e){var t=e.localName;return t||i.throwError("cannot encode object for signature with missing names",c.Logger.errors.INVALID_ARGUMENT,{argument:"values",coder:e,value:r}),o[t]&&i.throwError("cannot encode object for signature with duplicate names",c.Logger.errors.INVALID_ARGUMENT,{argument:"values",coder:e,value:r}),o[t]=!0,r[t]}))}else i.throwArgumentError("invalid tuple value","tuple",r);t.length!==n.length&&i.throwArgumentError("types/value length mismatch","tuple",r);var a=new w.Writer(e.wordSize),s=new w.Writer(e.wordSize),u=[];t.forEach((function(e,t){var r=n[t];if(e.dynamic){var o=s.length;e.encode(s,r);var i=a.writeUpdatableValue();u.push((function(e){i(e+o)}))}else e.encode(a,r)})),u.forEach((function(e){e(a.length)}));var l=e.writeBytes(a.data);return l+=e.writeBytes(s.data)}function s(e,t){var r=[],n=e.subReader(0);t.forEach((function(t){var o=null;if(t.dynamic){var i=e.readValue(),a=n.subReader(i.toNumber());try{o=t.decode(a)}catch(e){if(e.code===c.Logger.errors.BUFFER_OVERRUN)throw e;(o=e).baseType=t.name,o.name=t.localName,o.type=t.type}}else try{o=t.decode(e)}catch(e){if(e.code===c.Logger.errors.BUFFER_OVERRUN)throw e;(o=e).baseType=t.name,o.name=t.localName,o.type=t.type}null!=o&&r.push(o)}));var o=t.reduce((function(e,t){var r=t.localName;return r&&(e[r]||(e[r]=0),e[r]++),e}),{});t.forEach((function(e,t){var n=e.localName;if(n&&1===o[n]&&("length"===n&&(n="_length"),null==r[n])){var i=r[t];i instanceof Error?Object.defineProperty(r,n,{get:function(){throw i}}):r[n]=i}}));for(var i=function(e){var t=r[e];t instanceof Error&&Object.defineProperty(r,e,{get:function(){throw t}})},a=0;a=0?r:"")+"]",a=-1===r||t.dynamic;return(o=e.call(this,"array",i,n,a)||this).coder=t,o.length=r,o}return o(t,e),t.prototype.encode=function(e,t){Array.isArray(t)||this._throwError("expected array value",t);var r=this.length;-1===r&&(r=t.length,e.writeValue(t.length)),i.checkArgumentCount(t.length,r,"coder array"+(this.localName?" "+this.localName:""));for(var n=[],o=0;o>6==2;s++)a++;return a}return e===n.OVERRUN?r.length-t-1:0}function a(e,r){null==r&&(r=t.Utf8ErrorFuncs.error),e=f.arrayify(e);for(var o=[],i=0;i>7!=0){var s=null,u=null;if(192==(224&a))s=1,u=127;else if(224==(240&a))s=2,u=2047;else{if(240!=(248&a)){i+=r(128==(192&a)?n.UNEXPECTED_CONTINUE:n.BAD_PREFIX,i-1,e,o);continue}s=3,u=65535}if(i-1+s>=e.length)i+=r(n.OVERRUN,i-1,e,o);else{for(var c=a&(1<<8-s-1)-1,l=0;l1114111?i+=r(n.OUT_OF_RANGE,i-1-s,e,o,c):c>=55296&&c<=57343?i+=r(n.UTF16_SURROGATE,i-1-s,e,o,c):c<=u?i+=r(n.OVERLONG,i-1-s,e,o,c):o.push(c))}}else o.push(a)}return o}function s(e,t){void 0===t&&(t=r.current),t!=r.current&&(o.checkNormalize(),e=e.normalize(t));for(var n=[],i=0;i>6|192),n.push(63&a|128);else if(55296==(64512&a)){i++;var s=e.charCodeAt(i);if(i>=e.length||56320!=(64512&s))throw new Error("invalid utf-8 string");var u=65536+((1023&a)<<10)+(1023&s);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(a>>12|224),n.push(a>>6&63|128),n.push(63&a|128)}return f.arrayify(n)}function u(e){var t="0000"+e.toString(16);return"\\u"+t.substring(t.length-4)}function l(e){return e.map((function(e){return e<=65535?String.fromCharCode(e):(e-=65536,String.fromCharCode(55296+(e>>10&1023),56320+(1023&e)))})).join("")}!function(e){e.current="",e.NFC="NFC",e.NFD="NFD",e.NFKC="NFKC",e.NFKD="NFKD"}(r=t.UnicodeNormalizationForm||(t.UnicodeNormalizationForm={})),function(e){e.UNEXPECTED_CONTINUE="unexpected continuation byte",e.BAD_PREFIX="bad codepoint prefix",e.OVERRUN="string overrun",e.MISSING_CONTINUE="missing continuation byte",e.OUT_OF_RANGE="out of UTF-8 range",e.UTF16_SURROGATE="UTF-16 surrogate",e.OVERLONG="overlong representation"}(n=t.Utf8ErrorReason||(t.Utf8ErrorReason={})),t.Utf8ErrorFuncs=Object.freeze({error:function(e,t,r,n,i){return o.throwArgumentError("invalid codepoint at offset "+t+"; "+e,"bytes",r)},ignore:i,replace:function(e,t,r,o,a){return e===n.OVERLONG?(o.push(a),0):(o.push(65533),i(e,t,r))}}),t.toUtf8Bytes=s,t._toEscapedUtf8String=function(e,t){return'"'+a(e,t).map((function(e){if(e<256){switch(e){case 8:return"\\b";case 9:return"\\t";case 10:return"\\n";case 13:return"\\r";case 34:return'\\"';case 92:return"\\\\"}if(e>=32&&e<127)return String.fromCharCode(e)}return e<=65535?u(e):u(55296+((e-=65536)>>10&1023))+u(56320+(1023&e))})).join("")+'"'},t._toUtf8String=l,t.toUtf8String=function(e,t){return l(a(e,t))},t.toUtf8CodePoints=function(e,t){return void 0===t&&(t=r.current),a(s(e,t))}}))),U=(r(L),L.UnicodeNormalizationForm,L.Utf8ErrorReason,L.Utf8ErrorFuncs,L.toUtf8Bytes,L._toEscapedUtf8String,L._toUtf8String,L.toUtf8String,L.toUtf8CodePoints,n((function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.formatBytes32String=function(e){var t=L.toUtf8Bytes(e);if(t.length>31)throw new Error("bytes32 string must be less than 32 bytes");return f.hexlify(f.concat([t,B.HashZero]).slice(0,32))},t.parseBytes32String=function(e){var t=f.arrayify(e);if(32!==t.length)throw new Error("invalid bytes32 - not 32 bytes long");if(0!==t[31])throw new Error("invalid bytes32 string - no null terminator");for(var r=31;0===t[r-1];)r--;return L.toUtf8String(t.slice(0,r))}}))),j=(r(U),U.formatBytes32String,U.parseBytes32String,n((function(e,t){function r(e,t){t||(t=function(e){return[parseInt(e,16)]});var r=0,n={};return e.split(",").forEach((function(e){var o=e.split(":");r+=parseInt(o[0],16),n[r]=t(o[1])})),n}function n(e){var t=0;return e.split(",").map((function(e){var r=e.split("-");return 1===r.length?r[1]="0":""===r[1]&&(r[1]="1"),{l:t+parseInt(r[0],16),h:t=parseInt(r[1],16)}}))}function o(e,t){for(var r=0,n=0;n=(r+=o.l)&&e<=r+o.h&&(e-r)%(o.d||1)==0){if(o.e&&-1!==o.e.indexOf(e-r))continue;return o}}return null}Object.defineProperty(t,"__esModule",{value:!0});var i=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"),a="ad,34f,1806,180b,180c,180d,200b,200c,200d,2060,feff".split(",").map((function(e){return parseInt(e,16)})),s=[{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"),c=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"),l=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(e){if(e.length%4!=0)throw new Error("bad data");for(var t=[],r=0;r=0)return[];if(e>=65024&&e<=65039)return[];var t=d(e);return t||[e]})),r=t.reduce((function(e,t){return t.forEach((function(t){e.push(t)})),e}),[]),(r=L.toUtf8CodePoints(L._toUtf8String(r),L.UnicodeNormalizationForm.NFKC)).forEach((function(e){if(p(e))throw new Error("STRINGPREP_CONTAINS_PROHIBITED")})),r.forEach((function(e){if(h(e))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(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.formatBytes32String=U.formatBytes32String,t.parseBytes32String=U.parseBytes32String,t.nameprep=j.nameprep,t._toEscapedUtf8String=L._toEscapedUtf8String,t.toUtf8Bytes=L.toUtf8Bytes,t.toUtf8CodePoints=L.toUtf8CodePoints,t.toUtf8String=L.toUtf8String,t.UnicodeNormalizationForm=L.UnicodeNormalizationForm,t.Utf8ErrorFuncs=L.Utf8ErrorFuncs,t.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(e,r){var n,o=t&&t.__extends||(n=function(e,t){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)t.hasOwnProperty(r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}n(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(r,"__esModule",{value:!0});var i=function(e){function t(t){return e.call(this,"string",t)||this}return o(t,e),t.prototype.encode=function(t,r){return e.prototype.encode.call(this,t,D.toUtf8Bytes(r))},t.prototype.decode=function(t){return D.toUtf8String(e.prototype.decode.call(this,t))},t}(R.DynamicBytesCoder);r.StringCoder=i}))),H=(r(z),z.StringCoder,n((function(e,r){var n,o=t&&t.__extends||(n=function(e,t){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)t.hasOwnProperty(r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}n(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(r,"__esModule",{value:!0});var i=function(e){function t(t,r){var n=this,o=!1,i=[];t.forEach((function(e){e.dynamic&&(o=!0),i.push(e.type)}));var a="tuple("+i.join(",")+")";return(n=e.call(this,"tuple",a,r,o)||this).coders=t,n}return o(t,e),t.prototype.encode=function(e,t){return N.pack(e,this.coders,t)},t.prototype.decode=function(e){return e.coerce(this.name,N.unpack(e,this.coders))},t}(w.Coder);r.TupleCoder=i}))),K=(r(H),H.TupleCoder,n((function(e,t){Object.defineProperty(t,"__esModule",{value:!0});var r=new c.Logger(v.version),n=new RegExp(/^bytes([0-9]*)$/),o=new RegExp(/^(u?int)([0-9]*)$/),i=function(){function e(t){var n=this.constructor;r.checkNew(n,e),y.defineReadOnly(this,"coerceFunc",t||null)}return e.prototype._getCoder=function(e){var t=this;switch(e.baseType){case"address":return new M.AddressCoder(e.name);case"bool":return new O.BooleanCoder(e.name);case"string":return new z.StringCoder(e.name);case"bytes":return new R.BytesCoder(e.name);case"array":return new N.ArrayCoder(this._getCoder(e.arrayChildren),e.arrayLength,e.name);case"tuple":return new H.TupleCoder((e.components||[]).map((function(e){return t._getCoder(e)})),e.name);case"":return new C.NullCoder(e.name)}var i,a=e.type.match(o);return a?((0===(i=parseInt(a[2]||"256"))||i>256||i%8!=0)&&r.throwArgumentError("invalid "+a[1]+" bit length","param",e),new I.NumberCoder(i/8,"int"===a[1],e.name)):(a=e.type.match(n))?((0===(i=parseInt(a[1]))||i>32)&&r.throwArgumentError("invalid bytes length","param",e),new T.FixedBytesCoder(i,e.name)):r.throwArgumentError("invalid type","type",e.type)},e.prototype._getWordSize=function(){return 32},e.prototype._getReader=function(e,t){return new w.Reader(e,this._getWordSize(),this.coerceFunc,t)},e.prototype._getWriter=function(){return new w.Writer(this._getWordSize())},e.prototype.encode=function(e,t){var n=this;e.length!==t.length&&r.throwError("types/values length mismatch",c.Logger.errors.INVALID_ARGUMENT,{count:{types:e.length,values:t.length},value:{types:e,values:t}});var o=e.map((function(e){return n._getCoder(b.ParamType.from(e))})),i=new H.TupleCoder(o,"_"),a=this._getWriter();return i.encode(a,t),a.data},e.prototype.decode=function(e,t,r){var n=this,o=e.map((function(e){return n._getCoder(b.ParamType.from(e))}));return new H.TupleCoder(o,"_").decode(this._getReader(f.arrayify(t),r))},e}();t.AbiCoder=i,t.defaultAbiCoder=new i}))),W=(r(K),K.AbiCoder,K.defaultAbiCoder,n((function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.version="hash/5.0.5"}))),q=(r(W),W.version,n((function(e,t){Object.defineProperty(t,"__esModule",{value:!0});var r=new c.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]),o=new RegExp("^((.*)\\.)?([^.]+)$");t.isValidName=function(e){try{for(var t=e.split("."),r=0;r1&&i.throwArgumentError("multiple matching functions","name",r),this.functions[n[0]]}var o=this.functions[b.FunctionFragment.fromString(e).format()];return o||i.throwArgumentError("no matching function","signature",e),o},e.prototype.getEvent=function(e){if(f.isHexString(e)){var t=e.toLowerCase();for(var r in this.events)if(t===this.getEventTopic(r))return this.events[r];i.throwArgumentError("no matching event","topichash",t)}if(-1===e.indexOf("(")){var n=e.trim(),o=Object.keys(this.events).filter((function(e){return e.split("(")[0]===n}));return 0===o.length?i.throwArgumentError("no matching event","name",n):o.length>1&&i.throwArgumentError("multiple matching events","name",n),this.events[o[0]]}var a=this.events[b.EventFragment.fromString(e).format()];return a||i.throwArgumentError("no matching event","signature",e),a},e.prototype.getSighash=function(e){return"string"==typeof e&&(e=this.getFunction(e)),y.getStatic(this.constructor,"getSighash")(e)},e.prototype.getEventTopic=function(e){return"string"==typeof e&&(e=this.getEvent(e)),y.getStatic(this.constructor,"getEventTopic")(e)},e.prototype._decodeParams=function(e,t){return this._abiCoder.decode(e,t)},e.prototype._encodeParams=function(e,t){return this._abiCoder.encode(e,t)},e.prototype.encodeDeploy=function(e){return this._encodeParams(this.deploy.inputs,e||[])},e.prototype.decodeFunctionData=function(e,t){"string"==typeof e&&(e=this.getFunction(e));var r=f.arrayify(t);return f.hexlify(r.slice(0,4))!==this.getSighash(e)&&i.throwArgumentError("data signature does not match function "+e.name+".","data",f.hexlify(r)),this._decodeParams(e.inputs,r.slice(4))},e.prototype.encodeFunctionData=function(e,t){return"string"==typeof e&&(e=this.getFunction(e)),f.hexlify(f.concat([this.getSighash(e),this._encodeParams(e.inputs,t||[])]))},e.prototype.decodeFunctionResult=function(e,t){"string"==typeof e&&(e=this.getFunction(e));var r=f.arrayify(t),n=null,o=null;switch(r.length%this._abiCoder._getWordSize()){case 0:try{return this._abiCoder.decode(e.outputs,r)}catch(e){}break;case 4:"0x08c379a0"===f.hexlify(r.slice(0,4))&&(o="Error(string)",n=this._abiCoder.decode(["string"],r.slice(4))[0])}return i.throwError("call revert exception",c.Logger.errors.CALL_EXCEPTION,{method:e.format(),errorSignature:o,errorArgs:[n],reason:n})},e.prototype.encodeFunctionResult=function(e,t){return"string"==typeof e&&(e=this.getFunction(e)),f.hexlify(this._abiCoder.encode(e.outputs,t||[]))},e.prototype.encodeFilterTopics=function(e,t){var r=this;"string"==typeof e&&(e=this.getEvent(e)),t.length>e.inputs.length&&i.throwError("too many arguments for "+e.format(),c.Logger.errors.UNEXPECTED_ARGUMENT,{argument:"values",value:t});var n=[];e.anonymous||n.push(this.getEventTopic(e));var o=function(e,t){return"string"===e.type?q.id(t):"bytes"===e.type?E.keccak256(f.hexlify(t)):("address"===e.type&&r._abiCoder.encode(["address"],[t]),f.hexZeroPad(f.hexlify(t),32))};for(t.forEach((function(t,r){var a=e.inputs[r];a.indexed?null==t?n.push(null):"array"===a.baseType||"tuple"===a.baseType?i.throwArgumentError("filtering with tuples or arrays not supported","contract."+a.name,t):Array.isArray(t)?n.push(t.map((function(e){return o(a,e)}))):n.push(o(a,t)):null!=t&&i.throwArgumentError("cannot filter non-indexed parameters; must be null","contract."+a.name,t)}));n.length&&null===n[n.length-1];)n.pop();return n},e.prototype.encodeEventLog=function(e,t){var r=this;"string"==typeof e&&(e=this.getEvent(e));var n=[],o=[],a=[];return e.anonymous||n.push(this.getEventTopic(e)),t.length!==e.inputs.length&&i.throwArgumentError("event arguments/values mismatch","values",t),e.inputs.forEach((function(e,i){var s=t[i];if(e.indexed)if("string"===e.type)n.push(q.id(s));else if("bytes"===e.type)n.push(E.keccak256(s));else{if("tuple"===e.baseType||"array"===e.baseType)throw new Error("not implemented");n.push(r._abiCoder.encode([e.type],[s]))}else o.push(e),a.push(s)})),{data:this._abiCoder.encode(o,a),topics:n}},e.prototype.decodeEventLog=function(e,t,r){if("string"==typeof e&&(e=this.getEvent(e)),null!=r&&!e.anonymous){var n=this.getEventTopic(e);f.isHexString(r[0],32)&&r[0].toLowerCase()===n||i.throwError("fragment/topic mismatch",c.Logger.errors.INVALID_ARGUMENT,{argument:"topics[0]",expected:n,value:r[0]}),r=r.slice(1)}var o=[],a=[],s=[];e.inputs.forEach((function(e,t){e.indexed?"string"===e.type||"bytes"===e.type||"tuple"===e.baseType||"array"===e.baseType?(o.push(b.ParamType.fromObject({type:"bytes32",name:e.name})),s.push(!0)):(o.push(e),s.push(!1)):(a.push(e),s.push(!1))}));var h=null!=r?this._abiCoder.decode(o,f.concat(r)):null,d=this._abiCoder.decode(a,t,!0),p=[],g=0,m=0;e.inputs.forEach((function(e,t){if(e.indexed)if(null==h)p[t]=new u({_isIndexed:!0,hash:null});else if(s[t])p[t]=new u({_isIndexed:!0,hash:h[m++]});else try{p[t]=h[m++]}catch(e){p[t]=e}else try{p[t]=d[g++]}catch(e){p[t]=e}if(e.name&&null==p[e.name]){var r=p[t];r instanceof Error?Object.defineProperty(p,e.name,{get:function(){throw l("property "+JSON.stringify(e.name),r)}}):p[e.name]=r}}));for(var y=function(e){var t=p[e];t instanceof Error&&Object.defineProperty(p,e,{get:function(){throw l("index "+e,t)}})},v=0;v0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]=0)throw e;return s.throwError("cannot estimate gas; transaction may fail or may require manual gas limit",c.Logger.errors.UNPREDICTABLE_GAS_LIMIT,{error:e,tx:t})}))),null==t.chainId?t.chainId=this.getChainId():t.chainId=Promise.all([Promise.resolve(t.chainId),this.getChainId()]).then((function(t){return 0!==t[1]&&t[0]!==t[1]&&s.throwArgumentError("chainId address mismatch","transaction",e),t[0]})),[4,y.resolveProperties(t)];case 2:return[2,n.sent()]}}))}))},e.prototype._checkProvider=function(e){this.provider||s.throwError("missing provider",c.Logger.errors.UNSUPPORTED_OPERATION,{operation:e||"_checkProvider"})},e.isSigner=function(e){return!(!e||!e._isSigner)},e}();r.Signer=f;var h=function(e){function t(r,n){var o,i=this.constructor;return s.checkNew(i,t),o=e.call(this)||this,y.defineReadOnly(o,"address",r),y.defineReadOnly(o,"provider",n||null),o}return o(t,e),t.prototype.getAddress=function(){return Promise.resolve(this.address)},t.prototype._fail=function(e,t){return Promise.resolve().then((function(){s.throwError(e,c.Logger.errors.UNSUPPORTED_OPERATION,{operation:t})}))},t.prototype.signMessage=function(e){return this._fail("VoidSigner cannot sign messages","signMessage")},t.prototype.signTransaction=function(e){return this._fail("VoidSigner cannot sign transactions","signTransaction")},t.prototype.connect=function(e){return new t(this.address,e)},t}(f);r.VoidSigner=h}))),Q=(r($),$.Signer,$.VoidSigner,n((function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.version="contracts/5.0.5"}))),Y=(r(Q),Q.version,n((function(e,r){var n,o=t&&t.__extends||(n=function(e,t){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)t.hasOwnProperty(r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}n(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),i=t&&t.__awaiter||function(e,t,r,n){return new(r||(r=Promise))((function(o,i){function a(e){try{u(n.next(e))}catch(e){i(e)}}function s(e){try{u(n.throw(e))}catch(e){i(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(a,s)}u((n=n.apply(e,t||[])).next())}))},a=t&&t.__generator||function(e,t){var r,n,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(i){return function(s){return function(i){if(r)throw new TypeError("Generator is already executing.");for(;a;)try{if(r=1,n&&(o=2&i[0]?n.return:i[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,i[1])).done)return o;switch(n=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return a.label++,{value:i[1],done:!1};case 5:a.label++,n=i[1],i=[0];continue;case 7:i=a.ops.pop(),a.trys.pop();continue;default:if(!(o=a.trys,(o=o.length>0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]1)){var r=t[0];null==s[e]&&y.defineReadOnly(s,e,s[r]),null==s.functions[e]&&y.defineReadOnly(s.functions,e,s.functions[r]),null==s.callStatic[e]&&y.defineReadOnly(s.callStatic,e,s.callStatic[r]),null==s.populateTransaction[e]&&y.defineReadOnly(s.populateTransaction,e,s.populateTransaction[r]),null==s.estimateGas[e]&&y.defineReadOnly(s.estimateGas,e,s.estimateGas[r])}}))}return e.getContractAddress=function(e){return A.getContractAddress(e)},e.getInterface=function(e){return V.Interface.isInterface(e)?e:new V.Interface(e)},e.prototype.deployed=function(){return this._deployed()},e.prototype._deployed=function(e){var t=this;return this._deployedPromise||(this.deployTransaction?this._deployedPromise=this.deployTransaction.wait().then((function(){return t})):this._deployedPromise=this.provider.getCode(this.address,e).then((function(e){return"0x"===e&&u.throwError("contract not deployed",c.Logger.errors.UNSUPPORTED_OPERATION,{contractAddress:t.address,operation:"getDeployed"}),t}))),this._deployedPromise},e.prototype.fallback=function(e){var t=this;this.signer||u.throwError("sending a transactions require a signer",c.Logger.errors.UNSUPPORTED_OPERATION,{operation:"sendTransaction(fallback)"});var r=y.shallowCopy(e||{});return["from","to"].forEach((function(e){null!=r[e]&&u.throwError("cannot override "+e,c.Logger.errors.UNSUPPORTED_OPERATION,{operation:e})})),r.to=this.resolvedAddress,this.deployed().then((function(){return t.signer.sendTransaction(r)}))},e.prototype.connect=function(e){"string"==typeof e&&(e=new $.VoidSigner(e,this.provider));var t=new this.constructor(this.address,this.interface,e);return this.deployTransaction&&y.defineReadOnly(t,"deployTransaction",this.deployTransaction),t},e.prototype.attach=function(e){return new this.constructor(e,this.interface,this.signer||this.provider)},e.isIndexed=function(e){return V.Indexed.isIndexed(e)},e.prototype._normalizeRunningEvent=function(e){return this._runningEvents[e.tag]?this._runningEvents[e.tag]:e},e.prototype._getRunningEvent=function(e){if("string"==typeof e){if("error"===e)return this._normalizeRunningEvent(new _);if("event"===e)return this._normalizeRunningEvent(new w("event",null));if("*"===e)return this._normalizeRunningEvent(new k(this.address,this.interface));var t=this.interface.getEvent(e);return this._normalizeRunningEvent(new E(this.address,this.interface,t))}if(e.topics&&e.topics.length>0){try{var r=e.topics[0];if("string"!=typeof r)throw new Error("invalid topic");t=this.interface.getEvent(r);return this._normalizeRunningEvent(new E(this.address,this.interface,t,e.topics))}catch(e){}var n={address:this.address,topics:e.topics};return this._normalizeRunningEvent(new w(b(n),n))}return this._normalizeRunningEvent(new k(this.address,this.interface))},e.prototype._checkRunningEvents=function(e){if(0===e.listenerCount()){delete this._runningEvents[e.tag];var t=this._wrappedEmits[e.tag];t&&(this.provider.off(e.filter,t),delete this._wrappedEmits[e.tag])}},e.prototype._wrapEvent=function(e,t,r){var n=this,o=y.deepCopy(t);return o.removeListener=function(){r&&(e.removeListener(r),n._checkRunningEvents(e))},o.getBlock=function(){return n.provider.getBlock(t.blockHash)},o.getTransaction=function(){return n.provider.getTransaction(t.transactionHash)},o.getTransactionReceipt=function(){return n.provider.getTransactionReceipt(t.transactionHash)},e.prepareEvent(o),o},e.prototype._addEventListener=function(e,t,r){var n=this;if(this.provider||u.throwError("events require a provider or a signer with a provider",c.Logger.errors.UNSUPPORTED_OPERATION,{operation:"once"}),e.addListener(t,r),this._runningEvents[e.tag]=e,!this._wrappedEmits[e.tag]){var o=function(r){var o=n._wrapEvent(e,r,t);if(null==o.decodeError)try{var i=e.getEmit(o);n.emit.apply(n,s([e.filter],i))}catch(e){o.decodeError=e.error}null!=e.filter&&n.emit("event",o),null!=o.decodeError&&n.emit("error",o.decodeError,o)};this._wrappedEmits[e.tag]=o,null!=e.filter&&this.provider.on(e.filter,o)}},e.prototype.queryFilter=function(e,t,r){var n=this,o=this._getRunningEvent(e),i=y.shallowCopy(o.filter);return"string"==typeof t&&f.isHexString(t,32)?(null!=r&&u.throwArgumentError("cannot specify toBlock with blockhash","toBlock",r),i.blockHash=t):(i.fromBlock=null!=t?t:0,i.toBlock=null!=r?r:"latest"),this.provider.getLogs(i).then((function(e){return e.map((function(e){return n._wrapEvent(o,e,null)}))}))},e.prototype.on=function(e,t){return this._addEventListener(this._getRunningEvent(e),t,!1),this},e.prototype.once=function(e,t){return this._addEventListener(this._getRunningEvent(e),t,!0),this},e.prototype.emit=function(e){for(var t=[],r=1;r0;return this._checkRunningEvents(n),o},e.prototype.listenerCount=function(e){return this.provider?this._getRunningEvent(e).listenerCount():0},e.prototype.listeners=function(e){if(!this.provider)return[];if(null==e){var t=[];for(var r in this._runningEvents)this._runningEvents[r].listeners().forEach((function(e){t.push(e)}));return t}return this._getRunningEvent(e).listeners()},e.prototype.removeAllListeners=function(e){if(!this.provider)return this;if(null==e){for(var t in this._runningEvents){var r=this._runningEvents[t];r.removeAllListeners(),this._checkRunningEvents(r)}return this}var n=this._getRunningEvent(e);return n.removeAllListeners(),this._checkRunningEvents(n),this},e.prototype.off=function(e,t){if(!this.provider)return this;var r=this._getRunningEvent(e);return r.removeListener(t),this._checkRunningEvents(r),this},e.prototype.removeListener=function(e,t){return this.off(e,t)},e}();r.Contract=P;var S=function(){function e(e,t,r){var n=this.constructor,o=null;"0x"!==(o="string"==typeof t?t:f.isBytes(t)?f.hexlify(t):t&&"string"==typeof t.object?t.object:"!").substring(0,2)&&(o="0x"+o),(!f.isHexString(o)||o.length%2)&&u.throwArgumentError("invalid bytecode","bytecode",t),r&&!$.Signer.isSigner(r)&&u.throwArgumentError("invalid signer","signer",r),y.defineReadOnly(this,"bytecode",o),y.defineReadOnly(this,"interface",y.getStatic(n,"getInterface")(e)),y.defineReadOnly(this,"signer",r||null)}return e.prototype.getDeployTransaction=function(){for(var e=[],t=0;t0;)r.push(o%this.base),o=o/this.base|0}for(var a="",s=0;0===t[s]&&s=0;--u)a+=this.alphabet[r[u]];return a},e.prototype.decode=function(e){if("string"!=typeof e)throw new TypeError("Expected String");var t=[];if(0===e.length)return new Uint8Array(t);t.push(0);for(var r=0;r>=8;for(;o>0;)t.push(255&o),o>>=8}for(var a=0;e[a]===this._leader&&a>>24|e>>>8&65280|e<<8&16711680|(255&e)<<24)>>>0}function ie(e){return 1===e.length?"0"+e:e}function ae(e){return 7===e.length?"0"+e:6===e.length?"00"+e:5===e.length?"000"+e:4===e.length?"0000"+e:3===e.length?"00000"+e:2===e.length?"000000"+e:1===e.length?"0000000"+e:e}var se={inherits:ne,toArray:function(e,t){if(Array.isArray(e))return e.slice();if(!e)return[];var r=[];if("string"==typeof e)if(t){if("hex"===t)for((e=e.replace(/[^a-z0-9]+/gi,"")).length%2!=0&&(e="0"+e),n=0;n>8,a=255&o;i?r.push(i,a):r.push(a)}else for(n=0;n>>0}return i},split32:function(e,t){for(var r=new Array(4*e.length),n=0,o=0;n>>24,r[o+1]=i>>>16&255,r[o+2]=i>>>8&255,r[o+3]=255&i):(r[o+3]=i>>>24,r[o+2]=i>>>16&255,r[o+1]=i>>>8&255,r[o]=255&i)}return r},rotr32:function(e,t){return e>>>t|e<<32-t},rotl32:function(e,t){return e<>>32-t},sum32:function(e,t){return e+t>>>0},sum32_3:function(e,t,r){return e+t+r>>>0},sum32_4:function(e,t,r,n){return e+t+r+n>>>0},sum32_5:function(e,t,r,n,o){return e+t+r+n+o>>>0},sum64:function(e,t,r,n){var o=e[t],i=n+e[t+1]>>>0,a=(i>>0,e[t+1]=i},sum64_hi:function(e,t,r,n){return(t+n>>>0>>0},sum64_lo:function(e,t,r,n){return t+n>>>0},sum64_4_hi:function(e,t,r,n,o,i,a,s){var u=0,c=t;return u+=(c=c+n>>>0)>>0)>>0)>>0},sum64_4_lo:function(e,t,r,n,o,i,a,s){return t+n+i+s>>>0},sum64_5_hi:function(e,t,r,n,o,i,a,s,u,c){var l=0,f=t;return l+=(f=f+n>>>0)>>0)>>0)>>0)>>0},sum64_5_lo:function(e,t,r,n,o,i,a,s,u,c){return t+n+i+s+c>>>0},rotr64_hi:function(e,t,r){return(t<<32-r|e>>>r)>>>0},rotr64_lo:function(e,t,r){return(e<<32-r|t>>>r)>>>0},shr64_hi:function(e,t,r){return e>>>r},shr64_lo:function(e,t,r){return(e<<32-r|t>>>r)>>>0}};function ue(){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 ce=ue;ue.prototype.update=function(e,t){if(e=se.toArray(e,t),this.pending?this.pending=this.pending.concat(e):this.pending=e,this.pendingTotal+=e.length,this.pending.length>=this._delta8){var r=(e=this.pending).length%this._delta8;this.pending=e.slice(e.length-r,e.length),0===this.pending.length&&(this.pending=null),e=se.join32(e,0,e.length-r,this.endian);for(var n=0;n>>24&255,n[o++]=e>>>16&255,n[o++]=e>>>8&255,n[o++]=255&e}else for(n[o++]=255&e,n[o++]=e>>>8&255,n[o++]=e>>>16&255,n[o++]=e>>>24&255,n[o++]=0,n[o++]=0,n[o++]=0,n[o++]=0,i=8;i>>3},g1_256:function(e){return fe(e,17)^fe(e,19)^e>>>10}},me=se.sum32,ye=se.sum32_4,ve=se.sum32_5,be=ge.ch32,we=ge.maj32,_e=ge.s0_256,Ee=ge.s1_256,ke=ge.g0_256,Pe=ge.g1_256,Se=le.BlockHash,Ae=[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 Me(){if(!(this instanceof Me))return new Me;Se.call(this),this.h=[1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225],this.k=Ae,this.W=new Array(64)}se.inherits(Me,Se);var xe=Me;Me.blockSize=512,Me.outSize=256,Me.hmacStrength=192,Me.padLength=64,Me.prototype._update=function(e,t){for(var r=this.W,n=0;n<16;n++)r[n]=e[t+n];for(;nthis.blockSize&&(e=(new this.Hash).update(e).digest()),te(e.length<=this.blockSize);for(var t=e.length;t>24&255,l[t.length+1]=h>>16&255,l[t.length+2]=h>>8&255,l[t.length+3]=255&h;var d=f.arrayify(Et.computeHmac(o,e,l));i||(i=d.length,s=new Uint8Array(i),a=n-((u=Math.ceil(n/i))-1)*i),s.set(d);for(var p=1;p>8,a=255&o;i?r.push(i,a):r.push(a)}return r},r.zero2=n,r.toHex=o,r.encode=function(e,t){return"hex"===t?o(e):e}})),xt=n((function(e,t){var r=t;r.assert=te,r.toArray=Mt.toArray,r.zero2=Mt.zero2,r.toHex=Mt.toHex,r.encode=Mt.encode,r.getNAF=function(e,t,r){var n=new Array(Math.max(e.bitLength(),r)+1);n.fill(0);for(var o=1<(o>>1)-1?(o>>1)-u:u,i.isubn(s)):s=0,n[a]=s,i.iushrn(1)}return n},r.getJSF=function(e,t){var r=[[],[]];e=e.clone(),t=t.clone();for(var n=0,o=0;e.cmpn(-n)>0||t.cmpn(-o)>0;){var i,a,s,u=e.andln(3)+n&3,c=t.andln(3)+o&3;if(3===u&&(u=-1),3===c&&(c=-1),0==(1&u))i=0;else i=3!==(s=e.andln(7)+n&7)&&5!==s||2!==c?u:-u;if(r[0].push(i),0==(1&c))a=0;else a=3!==(s=t.andln(7)+o&7)&&5!==s||2!==u?c:-c;r[1].push(a),2*n===i+1&&(n=1-n),2*o===a+1&&(o=1-o),e.iushrn(1),t.iushrn(1)}return r},r.cachedProperty=function(e,t,r){var n="_"+t;e.prototype[t]=function(){return void 0!==this[n]?this[n]:this[n]=r.call(this)}},r.parseBytes=function(e){return"string"==typeof e?r.toArray(e,"hex"):e},r.intFromLE=function(e){return new s(e,"hex","le")}})),Nt=function(e){var r=new Uint8Array(e);return(t.crypto||t.msCrypto).getRandomValues(r),r},Ot=xt.getNAF,Rt=xt.getJSF,Tt=xt.assert;function Ct(e,t){this.type=e,this.p=new s(t.p,16),this.red=t.prime?s.red(t.prime):s.mont(this.p),this.zero=new s(0).toRed(this.red),this.one=new s(1).toRed(this.red),this.two=new s(2).toRed(this.red),this.n=t.n&&new s(t.n,16),this.g=t.g&&this.pointFromJSON(t.g,t.gRed),this._wnafT1=new Array(4),this._wnafT2=new Array(4),this._wnafT3=new Array(4),this._wnafT4=new Array(4),this._bitLength=this.n?this.n.bitLength():0;var r=this.n&&this.p.div(this.n);!r||r.cmpn(100)>0?this.redN=null:(this._maxwellTrick=!0,this.redN=this.n.toRed(this.red))}var Bt=Ct;function It(e,t){this.curve=e,this.type=t,this.precomputed=null}Ct.prototype.point=function(){throw new Error("Not implemented")},Ct.prototype.validate=function(){throw new Error("Not implemented")},Ct.prototype._fixedNafMul=function(e,t){Tt(e.precomputed);var r=e._getDoubles(),n=Ot(t,1,this._bitLength),o=(1<=a;t--)s=(s<<1)+n[t];i.push(s)}for(var u=this.jpoint(null,null,null),c=this.jpoint(null,null,null),l=o;l>0;l--){for(a=0;a=0;s--){for(t=0;s>=0&&0===i[s];s--)t++;if(s>=0&&t++,a=a.dblp(t),s<0)break;var u=i[s];Tt(0!==u),a="affine"===e.type?u>0?a.mixedAdd(o[u-1>>1]):a.mixedAdd(o[-u-1>>1].neg()):u>0?a.add(o[u-1>>1]):a.add(o[-u-1>>1].neg())}return"affine"===e.type?a.toP():a},Ct.prototype._wnafMulAdd=function(e,t,r,n,o){for(var i=this._wnafT1,a=this._wnafT2,s=this._wnafT3,u=0,c=0;c=1;c-=2){var f=c-1,h=c;if(1===i[f]&&1===i[h]){var d=[t[f],null,null,t[h]];0===t[f].y.cmp(t[h].y)?(d[1]=t[f].add(t[h]),d[2]=t[f].toJ().mixedAdd(t[h].neg())):0===t[f].y.cmp(t[h].y.redNeg())?(d[1]=t[f].toJ().mixedAdd(t[h]),d[2]=t[f].add(t[h].neg())):(d[1]=t[f].toJ().mixedAdd(t[h]),d[2]=t[f].toJ().mixedAdd(t[h].neg()));var p=[-3,-1,-5,-7,0,7,5,1,3],g=Rt(r[f],r[h]);u=Math.max(g[0].length,u),s[f]=new Array(u),s[h]=new Array(u);for(var m=0;m=0;c--){for(var _=0;c>=0;){var E=!0;for(m=0;m=0&&_++,b=b.dblp(_),c<0)break;for(m=0;m0?k=a[m][P-1>>1]:P<0&&(k=a[m][-P-1>>1].neg()),b="affine"===k.type?b.mixedAdd(k):b.add(k))}}for(c=0;c=Math.ceil((e.bitLength()+1)/t.step)},It.prototype._getDoubles=function(e,t){if(this.precomputed&&this.precomputed.doubles)return this.precomputed.doubles;for(var r=[this],n=this,o=0;o=0&&(i=t,a=r),n.negative&&(n=n.neg(),o=o.neg()),i.negative&&(i=i.neg(),a=a.neg()),[{a:n,b:o},{a:i,b:a}]},Lt.prototype._endoSplit=function(e){var t=this.endo.basis,r=t[0],n=t[1],o=n.b.mul(e).divRound(this.n),i=r.b.neg().mul(e).divRound(this.n),a=o.mul(r.a),s=i.mul(n.a),u=o.mul(r.b),c=i.mul(n.b);return{k1:e.sub(a).sub(s),k2:u.add(c).neg()}},Lt.prototype.pointFromX=function(e,t){(e=new s(e,16)).red||(e=e.toRed(this.red));var r=e.redSqr().redMul(e).redIAdd(e.redMul(this.a)).redIAdd(this.b),n=r.redSqrt();if(0!==n.redSqr().redSub(r).cmp(this.zero))throw new Error("invalid point");var o=n.fromRed().isOdd();return(t&&!o||!t&&o)&&(n=n.redNeg()),this.point(e,n)},Lt.prototype.validate=function(e){if(e.inf)return!0;var t=e.x,r=e.y,n=this.a.redMul(t),o=t.redSqr().redMul(t).redIAdd(n).redIAdd(this.b);return 0===r.redSqr().redISub(o).cmpn(0)},Lt.prototype._endoWnafMulAdd=function(e,t,r){for(var n=this._endoWnafT1,o=this._endoWnafT2,i=0;i":""},jt.prototype.isInfinity=function(){return this.inf},jt.prototype.add=function(e){if(this.inf)return e;if(e.inf)return this;if(this.eq(e))return this.dbl();if(this.neg().eq(e))return this.curve.point(null,null);if(0===this.x.cmp(e.x))return this.curve.point(null,null);var t=this.y.redSub(e.y);0!==t.cmpn(0)&&(t=t.redMul(this.x.redSub(e.x).redInvm()));var r=t.redSqr().redISub(this.x).redISub(e.x),n=t.redMul(this.x.redSub(r)).redISub(this.y);return this.curve.point(r,n)},jt.prototype.dbl=function(){if(this.inf)return this;var e=this.y.redAdd(this.y);if(0===e.cmpn(0))return this.curve.point(null,null);var t=this.curve.a,r=this.x.redSqr(),n=e.redInvm(),o=r.redAdd(r).redIAdd(r).redIAdd(t).redMul(n),i=o.redSqr().redISub(this.x.redAdd(this.x)),a=o.redMul(this.x.redSub(i)).redISub(this.y);return this.curve.point(i,a)},jt.prototype.getX=function(){return this.x.fromRed()},jt.prototype.getY=function(){return this.y.fromRed()},jt.prototype.mul=function(e){return e=new s(e,16),this.isInfinity()?this:this._hasDoubles(e)?this.curve._fixedNafMul(this,e):this.curve.endo?this.curve._endoWnafMulAdd([this],[e]):this.curve._wnafMul(this,e)},jt.prototype.mulAdd=function(e,t,r){var n=[this,t],o=[e,r];return this.curve.endo?this.curve._endoWnafMulAdd(n,o):this.curve._wnafMulAdd(1,n,o,2)},jt.prototype.jmulAdd=function(e,t,r){var n=[this,t],o=[e,r];return this.curve.endo?this.curve._endoWnafMulAdd(n,o,!0):this.curve._wnafMulAdd(1,n,o,2,!0)},jt.prototype.eq=function(e){return this===e||this.inf===e.inf&&(this.inf||0===this.x.cmp(e.x)&&0===this.y.cmp(e.y))},jt.prototype.neg=function(e){if(this.inf)return this;var t=this.curve.point(this.x,this.y.redNeg());if(e&&this.precomputed){var r=this.precomputed,n=function(e){return e.neg()};t.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 t},jt.prototype.toJ=function(){return this.inf?this.curve.jpoint(null,null,null):this.curve.jpoint(this.x,this.y,this.curve.one)},ne(Dt,Bt.BasePoint),Lt.prototype.jpoint=function(e,t,r){return new Dt(this,e,t,r)},Dt.prototype.toP=function(){if(this.isInfinity())return this.curve.point(null,null);var e=this.z.redInvm(),t=e.redSqr(),r=this.x.redMul(t),n=this.y.redMul(t).redMul(e);return this.curve.point(r,n)},Dt.prototype.neg=function(){return this.curve.jpoint(this.x,this.y.redNeg(),this.z)},Dt.prototype.add=function(e){if(this.isInfinity())return e;if(e.isInfinity())return this;var t=e.z.redSqr(),r=this.z.redSqr(),n=this.x.redMul(t),o=e.x.redMul(r),i=this.y.redMul(t.redMul(e.z)),a=e.y.redMul(r.redMul(this.z)),s=n.redSub(o),u=i.redSub(a);if(0===s.cmpn(0))return 0!==u.cmpn(0)?this.curve.jpoint(null,null,null):this.dbl();var c=s.redSqr(),l=c.redMul(s),f=n.redMul(c),h=u.redSqr().redIAdd(l).redISub(f).redISub(f),d=u.redMul(f.redISub(h)).redISub(i.redMul(l)),p=this.z.redMul(e.z).redMul(s);return this.curve.jpoint(h,d,p)},Dt.prototype.mixedAdd=function(e){if(this.isInfinity())return e.toJ();if(e.isInfinity())return this;var t=this.z.redSqr(),r=this.x,n=e.x.redMul(t),o=this.y,i=e.y.redMul(t).redMul(this.z),a=r.redSub(n),s=o.redSub(i);if(0===a.cmpn(0))return 0!==s.cmpn(0)?this.curve.jpoint(null,null,null):this.dbl();var u=a.redSqr(),c=u.redMul(a),l=r.redMul(u),f=s.redSqr().redIAdd(c).redISub(l).redISub(l),h=s.redMul(l.redISub(f)).redISub(o.redMul(c)),d=this.z.redMul(a);return this.curve.jpoint(f,h,d)},Dt.prototype.dblp=function(e){if(0===e)return this;if(this.isInfinity())return this;if(!e)return this.dbl();if(this.curve.zeroA||this.curve.threeA){for(var t=this,r=0;r=0)return!1;if(r.redIAdd(o),0===this.x.cmp(r))return!0}},Dt.prototype.inspect=function(){return this.isInfinity()?"":""},Dt.prototype.isInfinity=function(){return 0===this.z.cmpn(0)};var zt={},Ht={},Kt=n((function(e,t){var r=t;r.base=Bt,r.short=Ut,r.mont=zt,r.edwards=Ht})),Wt=n((function(e,t){var r,n=t,o=xt.assert;function i(e){"short"===e.type?this.curve=new Kt.short(e):"edwards"===e.type?this.curve=new Kt.edwards(e):this.curve=new Kt.mont(e),this.g=this.curve.g,this.n=this.curve.n,this.hash=e.hash,o(this.g.validate(),"Invalid curve"),o(this.g.mul(this.n).isInfinity(),"Invalid curve, G*N != O")}function a(e,t){Object.defineProperty(n,e,{configurable:!0,enumerable:!0,get:function(){var r=new i(t);return Object.defineProperty(n,e,{configurable:!0,enumerable:!0,value:r}),r}})}n.PresetCurve=i,a("p192",{type:"short",prime:"p192",p:"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff",a:"ffffffff ffffffff ffffffff fffffffe ffffffff fffffffc",b:"64210519 e59c80e7 0fa7e9ab 72243049 feb8deec c146b9b1",n:"ffffffff ffffffff ffffffff 99def836 146bc9b1 b4d22831",hash:wt.sha256,gRed:!1,g:["188da80e b03090f6 7cbf20eb 43a18800 f4ff0afd 82ff1012","07192b95 ffc8da78 631011ed 6b24cdd5 73f977a1 1e794811"]}),a("p224",{type:"short",prime:"p224",p:"ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001",a:"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff fffffffe",b:"b4050a85 0c04b3ab f5413256 5044b0b7 d7bfd8ba 270b3943 2355ffb4",n:"ffffffff ffffffff ffffffff ffff16a2 e0b8f03e 13dd2945 5c5c2a3d",hash:wt.sha256,gRed:!1,g:["b70e0cbd 6bb4bf7f 321390b9 4a03c1d3 56c21122 343280d6 115c1d21","bd376388 b5f723fb 4c22dfe6 cd4375a0 5a074764 44d58199 85007e34"]}),a("p256",{type:"short",prime:null,p:"ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff ffffffff",a:"ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff fffffffc",b:"5ac635d8 aa3a93e7 b3ebbd55 769886bc 651d06b0 cc53b0f6 3bce3c3e 27d2604b",n:"ffffffff 00000000 ffffffff ffffffff bce6faad a7179e84 f3b9cac2 fc632551",hash:wt.sha256,gRed:!1,g:["6b17d1f2 e12c4247 f8bce6e5 63a440f2 77037d81 2deb33a0 f4a13945 d898c296","4fe342e2 fe1a7f9b 8ee7eb4a 7c0f9e16 2bce3357 6b315ece cbb64068 37bf51f5"]}),a("p384",{type:"short",prime:null,p:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 ffffffff",a:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 fffffffc",b:"b3312fa7 e23ee7e4 988e056b e3f82d19 181d9c6e fe814112 0314088f 5013875a c656398d 8a2ed19d 2a85c8ed d3ec2aef",n:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff c7634d81 f4372ddf 581a0db2 48b0a77a ecec196a ccc52973",hash:wt.sha384,gRed:!1,g:["aa87ca22 be8b0537 8eb1c71e f320ad74 6e1d3b62 8ba79b98 59f741e0 82542a38 5502f25d bf55296c 3a545e38 72760ab7","3617de4a 96262c6f 5d9e98bf 9292dc29 f8f41dbd 289a147c e9da3113 b5f0b8c0 0a60b1ce 1d7e819d 7a431d7c 90ea0e5f"]}),a("p521",{type:"short",prime:null,p:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff",a:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffc",b:"00000051 953eb961 8e1c9a1f 929a21a0 b68540ee a2da725b 99b315f3 b8b48991 8ef109e1 56193951 ec7e937b 1652c0bd 3bb1bf07 3573df88 3d2c34f1 ef451fd4 6b503f00",n:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffa 51868783 bf2f966b 7fcc0148 f709a5d0 3bb5c9b8 899c47ae bb6fb71e 91386409",hash:wt.sha512,gRed:!1,g:["000000c6 858e06b7 0404e9cd 9e3ecb66 2395b442 9c648139 053fb521 f828af60 6b4d3dba a14b5e77 efe75928 fe1dc127 a2ffa8de 3348b3c1 856a429b f97e7e31 c2e5bd66","00000118 39296a78 9a3bc004 5c8a5fb4 2c7d1bd9 98f54449 579b4468 17afbd17 273e662c 97ee7299 5ef42640 c550b901 3fad0761 353c7086 a272c240 88be9476 9fd16650"]}),a("curve25519",{type:"mont",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"76d06",b:"1",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:wt.sha256,gRed:!1,g:["9"]}),a("ed25519",{type:"edwards",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"-1",c:"1",d:"52036cee2b6ffe73 8cc740797779e898 00700a4d4141d8ab 75eb4dca135978a3",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:wt.sha256,gRed:!1,g:["216936d3cd6e53fec0a4e231fdd6dc5c692cc7609525a7b2c9562d608f25d51a","6666666666666666666666666666666666666666666666666666666666666658"]});try{r=undefined}catch(e){r=void 0}a("secp256k1",{type:"short",prime:"k256",p:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f",a:"0",b:"7",n:"ffffffff ffffffff ffffffff fffffffe baaedce6 af48a03b bfd25e8c d0364141",h:"1",hash:wt.sha256,beta:"7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee",lambda:"5363ad4cc05c30e0a5261c028812645a122e22ea20816678df02967c1b23bd72",basis:[{a:"3086d221a7d46bcde86c90e49284eb15",b:"-e4437ed6010e88286f547fa90abfe4c3"},{a:"114ca50f7a8e2f3f657c1108d9d44cfd8",b:"3086d221a7d46bcde86c90e49284eb15"}],gRed:!1,g:["79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798","483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8",r]})}));function qt(e){if(!(this instanceof qt))return new qt(e);this.hash=e.hash,this.predResist=!!e.predResist,this.outLen=this.hash.outSize,this.minEntropy=e.minEntropy||this.hash.hmacStrength,this._reseed=null,this.reseedInterval=null,this.K=null,this.V=null;var t=Mt.toArray(e.entropy,e.entropyEnc||"hex"),r=Mt.toArray(e.nonce,e.nonceEnc||"hex"),n=Mt.toArray(e.pers,e.persEnc||"hex");te(t.length>=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits"),this._init(t,r,n)}var Gt=qt;qt.prototype._init=function(e,t,r){var n=e.concat(t).concat(r);this.K=new Array(this.outLen/8),this.V=new Array(this.outLen/8);for(var o=0;o=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits"),this._update(e.concat(r||[])),this._reseed=1},qt.prototype.generate=function(e,t,r,n){if(this._reseed>this.reseedInterval)throw new Error("Reseed is required");"string"!=typeof t&&(n=r,r=t,t=null),r&&(r=Mt.toArray(r,n||"hex"),this._update(r));for(var o=[];o.length"};var Xt=xt.assert;function $t(e,t){if(e instanceof $t)return e;this._importDER(e,t)||(Xt(e.r&&e.s,"Signature without r or s"),this.r=new s(e.r,16),this.s=new s(e.s,16),void 0===e.recoveryParam?this.recoveryParam=null:this.recoveryParam=e.recoveryParam)}var Qt=$t;function Yt(){this.place=0}function er(e,t){var r=e[t.place++];if(!(128&r))return r;var n=15&r;if(0===n||n>4)return!1;for(var o=0,i=0,a=t.place;i>>=0;return!(o<=127)&&(t.place=a,o)}function tr(e){for(var t=0,r=e.length-1;!e[t]&&!(128&e[t+1])&&t>>3);for(e.push(128|r);--r;)e.push(t>>>(r<<3)&255);e.push(t)}}$t.prototype._importDER=function(e,t){e=xt.toArray(e,t);var r=new Yt;if(48!==e[r.place++])return!1;var n=er(e,r);if(!1===n)return!1;if(n+r.place!==e.length)return!1;if(2!==e[r.place++])return!1;var o=er(e,r);if(!1===o)return!1;var i=e.slice(r.place,o+r.place);if(r.place+=o,2!==e[r.place++])return!1;var a=er(e,r);if(!1===a)return!1;if(e.length!==a+r.place)return!1;var u=e.slice(r.place,a+r.place);if(0===i[0]){if(!(128&i[1]))return!1;i=i.slice(1)}if(0===u[0]){if(!(128&u[1]))return!1;u=u.slice(1)}return this.r=new s(i),this.s=new s(u),this.recoveryParam=null,!0},$t.prototype.toDER=function(e){var t=this.r.toArray(),r=this.s.toArray();for(128&t[0]&&(t=[0].concat(t)),128&r[0]&&(r=[0].concat(r)),t=tr(t),r=tr(r);!(r[0]||128&r[1]);)r=r.slice(1);var n=[2];rr(n,t.length),(n=n.concat(t)).push(2),rr(n,r.length);var o=n.concat(r),i=[48];return rr(i,o.length),i=i.concat(o),xt.encode(i,e)};var nr=xt.assert;function or(e){if(!(this instanceof or))return new or(e);"string"==typeof e&&(nr(Wt.hasOwnProperty(e),"Unknown curve "+e),e=Wt[e]),e instanceof Wt.PresetCurve&&(e={curve:e}),this.curve=e.curve.curve,this.n=this.curve.n,this.nh=this.n.ushrn(1),this.g=this.curve.g,this.g=e.curve.g,this.g.precompute(e.curve.n.bitLength()+1),this.hash=e.hash||e.curve.hash}var ir=or;or.prototype.keyPair=function(e){return new Zt(this,e)},or.prototype.keyFromPrivate=function(e,t){return Zt.fromPrivate(this,e,t)},or.prototype.keyFromPublic=function(e,t){return Zt.fromPublic(this,e,t)},or.prototype.genKeyPair=function(e){e||(e={});for(var t=new Gt({hash:this.hash,pers:e.pers,persEnc:e.persEnc||"utf8",entropy:e.entropy||Nt(this.hash.hmacStrength),entropyEnc:e.entropy&&e.entropyEnc||"utf8",nonce:this.n.toArray()}),r=this.n.byteLength(),n=this.n.sub(new s(2));;){var o=new s(t.generate(r));if(!(o.cmp(n)>0))return o.iaddn(1),this.keyFromPrivate(o)}},or.prototype._truncateToN=function(e,t){var r=8*e.byteLength()-this.n.bitLength();return r>0&&(e=e.ushrn(r)),!t&&e.cmp(this.n)>=0?e.sub(this.n):e},or.prototype.sign=function(e,t,r,n){"object"==typeof r&&(n=r,r=null),n||(n={}),t=this.keyFromPrivate(t,r),e=this._truncateToN(new s(e,16));for(var o=this.n.byteLength(),i=t.getPrivate().toArray("be",o),a=e.toArray("be",o),u=new Gt({hash:this.hash,entropy:i,nonce:a,pers:n.pers,persEnc:n.persEnc||"utf8"}),c=this.n.sub(new s(1)),l=0;;l++){var f=n.k?n.k(l):new s(u.generate(this.n.byteLength()));if(!((f=this._truncateToN(f,!0)).cmpn(1)<=0||f.cmp(c)>=0)){var h=this.g.mul(f);if(!h.isInfinity()){var d=h.getX(),p=d.umod(this.n);if(0!==p.cmpn(0)){var g=f.invm(this.n).mul(p.mul(t.getPrivate()).iadd(e));if(0!==(g=g.umod(this.n)).cmpn(0)){var m=(h.getY().isOdd()?1:0)|(0!==d.cmp(p)?2:0);return n.canonical&&g.cmp(this.nh)>0&&(g=this.n.sub(g),m^=1),new Qt({r:p,s:g,recoveryParam:m})}}}}}},or.prototype.verify=function(e,t,r,n){e=this._truncateToN(new s(e,16)),r=this.keyFromPublic(r,n);var o=(t=new Qt(t,"hex")).r,i=t.s;if(o.cmpn(1)<0||o.cmp(this.n)>=0)return!1;if(i.cmpn(1)<0||i.cmp(this.n)>=0)return!1;var a,u=i.invm(this.n),c=u.mul(e).umod(this.n),l=u.mul(o).umod(this.n);return this.curve._maxwellTrick?!(a=this.g.jmulAdd(c,r.getPublic(),l)).isInfinity()&&a.eqXToP(o):!(a=this.g.mulAdd(c,r.getPublic(),l)).isInfinity()&&0===a.getX().umod(this.n).cmp(o)},or.prototype.recoverPubKey=function(e,t,r,n){nr((3&r)===r,"The recovery param is more than two bits"),t=new Qt(t,n);var o=this.n,i=new s(e),a=t.r,u=t.s,c=1&r,l=r>>1;if(a.cmp(this.curve.p.umod(this.curve.n))>=0&&l)throw new Error("Unable to find sencond key candinate");a=l?this.curve.pointFromX(a.add(this.curve.n),c):this.curve.pointFromX(a,c);var f=t.r.invm(o),h=o.sub(i).mul(f).umod(o),d=u.mul(f).umod(o);return this.g.mulAdd(h,a,d)},or.prototype.getKeyRecoveryParam=function(e,t,r,n){if(null!==(t=new Qt(t,n)).recoveryParam)return t.recoveryParam;for(var o=0;o<4;o++){var i;try{i=this.recoverPubKey(e,t,o)}catch(e){continue}if(i.eq(r))return o}throw new Error("Unable to find valid recovery factor")};for(var ar={},sr=o(At),ur=n((function(e,t){var r=t;r.version=sr.version,r.utils=xt,r.rand=Nt,r.curve=Kt,r.curves=Wt,r.ec=ir,r.eddsa=ar})),cr=(ur.ec,n((function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.version="signing-key/5.0.5"}))),lr=(r(cr),cr.version,n((function(e,t){Object.defineProperty(t,"__esModule",{value:!0});var r=new c.Logger(cr.version),n=null;function o(){return n||(n=new ur.ec("secp256k1")),n}var i=function(){function e(e){y.defineReadOnly(this,"curve","secp256k1"),y.defineReadOnly(this,"privateKey",f.hexlify(e));var t=o().keyFromPrivate(f.arrayify(this.privateKey));y.defineReadOnly(this,"publicKey","0x"+t.getPublic(!1,"hex")),y.defineReadOnly(this,"compressedPublicKey","0x"+t.getPublic(!0,"hex")),y.defineReadOnly(this,"_isSigningKey",!0)}return e.prototype._addPoint=function(e){var t=o().keyFromPublic(f.arrayify(this.publicKey)),r=o().keyFromPublic(f.arrayify(e));return"0x"+t.pub.add(r.pub).encodeCompressed("hex")},e.prototype.signDigest=function(e){var t=o().keyFromPrivate(f.arrayify(this.privateKey)).sign(f.arrayify(e),{canonical:!0});return f.splitSignature({recoveryParam:t.recoveryParam,r:f.hexZeroPad("0x"+t.r.toString(16),32),s:f.hexZeroPad("0x"+t.s.toString(16),32)})},e.prototype.computeSharedSecret=function(e){var t=o().keyFromPrivate(f.arrayify(this.privateKey)),r=o().keyFromPublic(f.arrayify(a(e)));return f.hexZeroPad("0x"+t.derive(r.getPublic()).toString(16),32)},e.isSigningKey=function(e){return!(!e||!e._isSigningKey)},e}();function a(e,t){var n=f.arrayify(e);if(32===n.length){var a=new i(n);return t?"0x"+o().keyFromPrivate(n).getPublic(!0,"hex"):a.publicKey}return 33===n.length?t?f.hexlify(n):"0x"+o().keyFromPublic(n).getPublic(!1,"hex"):65===n.length?t?"0x"+o().keyFromPublic(n).getPublic(!0,"hex"):f.hexlify(n):r.throwArgumentError("invalid public or private key","key","[REDACTED]")}t.SigningKey=i,t.recoverPublicKey=function(e,t){var r=f.splitSignature(t),n={r:f.arrayify(r.r),s:f.arrayify(r.s)};return"0x"+o().recoverPubKey(f.arrayify(e),n,r.recoveryParam).encode("hex",!1)},t.computePublicKey=a}))),fr=(r(lr),lr.SigningKey,lr.recoverPublicKey,lr.computePublicKey,n((function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.version="transactions/5.0.6"}))),hr=(r(fr),fr.version,n((function(e,r){var n=t&&t.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(r,"__esModule",{value:!0});var o=n(P),i=new c.Logger(fr.version);function a(e){return"0x"===e?B.Zero:g.BigNumber.from(e)}var s=[{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 l(e){var t=lr.computePublicKey(e);return A.getAddress(f.hexDataSlice(E.keccak256(f.hexDataSlice(t,1)),12))}function h(e,t){return l(lr.recoverPublicKey(f.arrayify(e),t))}r.computeAddress=l,r.recoverAddress=h,r.serialize=function(e,t){y.checkProperties(e,u);var r=[];s.forEach((function(t){var n=e[t.name]||[],o={};t.numeric&&(o.hexPad="left"),n=f.arrayify(f.hexlify(n,o)),t.length&&n.length!==t.length&&n.length>0&&i.throwArgumentError("invalid length for "+t.name,"transaction:"+t.name,n),t.maxLength&&(n=f.stripZeros(n)).length>t.maxLength&&i.throwArgumentError("invalid length for "+t.name,"transaction:"+t.name,n),r.push(f.hexlify(n))}));var n=0;if(null!=e.chainId?"number"!=typeof(n=e.chainId)&&i.throwArgumentError("invalid transaction.chainId","transaction",e):t&&!f.isBytesLike(t)&&t.v>28&&(n=Math.floor((t.v-35)/2)),0!==n&&(r.push(f.hexlify(n)),r.push("0x"),r.push("0x")),!t)return o.encode(r);var a=f.splitSignature(t),c=27+a.recoveryParam;return 0!==n?(r.pop(),r.pop(),r.pop(),c+=2*n+8,a.v>28&&a.v!==c&&i.throwArgumentError("transaction.chainId/signature.v mismatch","signature",t)):a.v!==c&&i.throwArgumentError("transaction.chainId/signature.v mismatch","signature",t),r.push(f.hexlify(c)),r.push(f.stripZeros(f.arrayify(a.r))),r.push(f.stripZeros(f.arrayify(a.s))),o.encode(r)},r.parse=function(e){var t=o.decode(e);9!==t.length&&6!==t.length&&i.throwArgumentError("invalid raw transaction","rawTransaction",e);var r,n={nonce:a(t[0]).toNumber(),gasPrice:a(t[1]),gasLimit:a(t[2]),to:(r=t[3],"0x"===r?null:A.getAddress(r)),value:a(t[4]),data:t[5],chainId:0};if(6===t.length)return n;try{n.v=g.BigNumber.from(t[6]).toNumber()}catch(e){return console.log(e),n}if(n.r=f.hexZeroPad(t[7],32),n.s=f.hexZeroPad(t[8],32),g.BigNumber.from(n.r).isZero()&&g.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 s=n.v-27,u=t.slice(0,6);0!==n.chainId&&(u.push(f.hexlify(n.chainId)),u.push("0x"),u.push("0x"),s-=2*n.chainId+8);var c=E.keccak256(o.encode(u));try{n.from=h(c,{r:f.hexlify(n.r),s:f.hexlify(n.s),recoveryParam:s})}catch(e){console.log(e)}n.hash=E.keccak256(e)}return n}}))),dr=(r(hr),hr.computeAddress,hr.recoverAddress,hr.serialize,hr.parse,n((function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.version="wordlists/5.0.5"}))),pr=(r(dr),dr.version,n((function(e,t){Object.defineProperty(t,"__esModule",{value:!0});t.logger=new c.Logger(dr.version);var r=function(){function e(r){var n=this.constructor;t.logger.checkAbstract(n,e),y.defineReadOnly(this,"locale",r)}return e.prototype.split=function(e){return e.toLowerCase().split(/ +/g)},e.prototype.join=function(e){return e.join(" ")},e.check=function(e){for(var t=[],r=0;r<2048;r++){var n=e.getWord(r);if(r!==e.getWordIndex(n))return"0x";t.push(n)}return q.id(t.join("\n")+"\n")},e.register=function(e,t){t||(t=e.locale)},e}();t.Wordlist=r}))),gr=(r(pr),pr.logger,pr.Wordlist,n((function(e,r){var n,o=t&&t.__extends||(n=function(e,t){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)t.hasOwnProperty(r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}n(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(r,"__esModule",{value:!0});var i=null;function a(e){if(null==i&&(i="AbandonAbilityAbleAboutAboveAbsentAbsorbAbstractAbsurdAbuseAccessAccidentAccountAccuseAchieveAcidAcousticAcquireAcrossActActionActorActressActualAdaptAddAddictAddressAdjustAdmitAdultAdvanceAdviceAerobicAffairAffordAfraidAgainAgeAgentAgreeAheadAimAirAirportAisleAlarmAlbumAlcoholAlertAlienAllAlleyAllowAlmostAloneAlphaAlreadyAlsoAlterAlwaysAmateurAmazingAmongAmountAmusedAnalystAnchorAncientAngerAngleAngryAnimalAnkleAnnounceAnnualAnotherAnswerAntennaAntiqueAnxietyAnyApartApologyAppearAppleApproveAprilArchArcticAreaArenaArgueArmArmedArmorArmyAroundArrangeArrestArriveArrowArtArtefactArtistArtworkAskAspectAssaultAssetAssistAssumeAsthmaAthleteAtomAttackAttendAttitudeAttractAuctionAuditAugustAuntAuthorAutoAutumnAverageAvocadoAvoidAwakeAwareAwayAwesomeAwfulAwkwardAxisBabyBachelorBaconBadgeBagBalanceBalconyBallBambooBananaBannerBarBarelyBargainBarrelBaseBasicBasketBattleBeachBeanBeautyBecauseBecomeBeefBeforeBeginBehaveBehindBelieveBelowBeltBenchBenefitBestBetrayBetterBetweenBeyondBicycleBidBikeBindBiologyBirdBirthBitterBlackBladeBlameBlanketBlastBleakBlessBlindBloodBlossomBlouseBlueBlurBlushBoardBoatBodyBoilBombBoneBonusBookBoostBorderBoringBorrowBossBottomBounceBoxBoyBracketBrainBrandBrassBraveBreadBreezeBrickBridgeBriefBrightBringBriskBroccoliBrokenBronzeBroomBrotherBrownBrushBubbleBuddyBudgetBuffaloBuildBulbBulkBulletBundleBunkerBurdenBurgerBurstBusBusinessBusyButterBuyerBuzzCabbageCabinCableCactusCageCakeCallCalmCameraCampCanCanalCancelCandyCannonCanoeCanvasCanyonCapableCapitalCaptainCarCarbonCardCargoCarpetCarryCartCaseCashCasinoCastleCasualCatCatalogCatchCategoryCattleCaughtCauseCautionCaveCeilingCeleryCementCensusCenturyCerealCertainChairChalkChampionChangeChaosChapterChargeChaseChatCheapCheckCheeseChefCherryChestChickenChiefChildChimneyChoiceChooseChronicChuckleChunkChurnCigarCinnamonCircleCitizenCityCivilClaimClapClarifyClawClayCleanClerkCleverClickClientCliffClimbClinicClipClockClogCloseClothCloudClownClubClumpClusterClutchCoachCoastCoconutCodeCoffeeCoilCoinCollectColorColumnCombineComeComfortComicCommonCompanyConcertConductConfirmCongressConnectConsiderControlConvinceCookCoolCopperCopyCoralCoreCornCorrectCostCottonCouchCountryCoupleCourseCousinCoverCoyoteCrackCradleCraftCramCraneCrashCraterCrawlCrazyCreamCreditCreekCrewCricketCrimeCrispCriticCropCrossCrouchCrowdCrucialCruelCruiseCrumbleCrunchCrushCryCrystalCubeCultureCupCupboardCuriousCurrentCurtainCurveCushionCustomCuteCycleDadDamageDampDanceDangerDaringDashDaughterDawnDayDealDebateDebrisDecadeDecemberDecideDeclineDecorateDecreaseDeerDefenseDefineDefyDegreeDelayDeliverDemandDemiseDenialDentistDenyDepartDependDepositDepthDeputyDeriveDescribeDesertDesignDeskDespairDestroyDetailDetectDevelopDeviceDevoteDiagramDialDiamondDiaryDiceDieselDietDifferDigitalDignityDilemmaDinnerDinosaurDirectDirtDisagreeDiscoverDiseaseDishDismissDisorderDisplayDistanceDivertDivideDivorceDizzyDoctorDocumentDogDollDolphinDomainDonateDonkeyDonorDoorDoseDoubleDoveDraftDragonDramaDrasticDrawDreamDressDriftDrillDrinkDripDriveDropDrumDryDuckDumbDuneDuringDustDutchDutyDwarfDynamicEagerEagleEarlyEarnEarthEasilyEastEasyEchoEcologyEconomyEdgeEditEducateEffortEggEightEitherElbowElderElectricElegantElementElephantElevatorEliteElseEmbarkEmbodyEmbraceEmergeEmotionEmployEmpowerEmptyEnableEnactEndEndlessEndorseEnemyEnergyEnforceEngageEngineEnhanceEnjoyEnlistEnoughEnrichEnrollEnsureEnterEntireEntryEnvelopeEpisodeEqualEquipEraEraseErodeErosionErrorEruptEscapeEssayEssenceEstateEternalEthicsEvidenceEvilEvokeEvolveExactExampleExcessExchangeExciteExcludeExcuseExecuteExerciseExhaustExhibitExileExistExitExoticExpandExpectExpireExplainExposeExpressExtendExtraEyeEyebrowFabricFaceFacultyFadeFaintFaithFallFalseFameFamilyFamousFanFancyFantasyFarmFashionFatFatalFatherFatigueFaultFavoriteFeatureFebruaryFederalFeeFeedFeelFemaleFenceFestivalFetchFeverFewFiberFictionFieldFigureFileFilmFilterFinalFindFineFingerFinishFireFirmFirstFiscalFishFitFitnessFixFlagFlameFlashFlatFlavorFleeFlightFlipFloatFlockFloorFlowerFluidFlushFlyFoamFocusFogFoilFoldFollowFoodFootForceForestForgetForkFortuneForumForwardFossilFosterFoundFoxFragileFrameFrequentFreshFriendFringeFrogFrontFrostFrownFrozenFruitFuelFunFunnyFurnaceFuryFutureGadgetGainGalaxyGalleryGameGapGarageGarbageGardenGarlicGarmentGasGaspGateGatherGaugeGazeGeneralGeniusGenreGentleGenuineGestureGhostGiantGiftGiggleGingerGiraffeGirlGiveGladGlanceGlareGlassGlideGlimpseGlobeGloomGloryGloveGlowGlueGoatGoddessGoldGoodGooseGorillaGospelGossipGovernGownGrabGraceGrainGrantGrapeGrassGravityGreatGreenGridGriefGritGroceryGroupGrowGruntGuardGuessGuideGuiltGuitarGunGymHabitHairHalfHammerHamsterHandHappyHarborHardHarshHarvestHatHaveHawkHazardHeadHealthHeartHeavyHedgehogHeightHelloHelmetHelpHenHeroHiddenHighHillHintHipHireHistoryHobbyHockeyHoldHoleHolidayHollowHomeHoneyHoodHopeHornHorrorHorseHospitalHostHotelHourHoverHubHugeHumanHumbleHumorHundredHungryHuntHurdleHurryHurtHusbandHybridIceIconIdeaIdentifyIdleIgnoreIllIllegalIllnessImageImitateImmenseImmuneImpactImposeImproveImpulseInchIncludeIncomeIncreaseIndexIndicateIndoorIndustryInfantInflictInformInhaleInheritInitialInjectInjuryInmateInnerInnocentInputInquiryInsaneInsectInsideInspireInstallIntactInterestIntoInvestInviteInvolveIronIslandIsolateIssueItemIvoryJacketJaguarJarJazzJealousJeansJellyJewelJobJoinJokeJourneyJoyJudgeJuiceJumpJungleJuniorJunkJustKangarooKeenKeepKetchupKeyKickKidKidneyKindKingdomKissKitKitchenKiteKittenKiwiKneeKnifeKnockKnowLabLabelLaborLadderLadyLakeLampLanguageLaptopLargeLaterLatinLaughLaundryLavaLawLawnLawsuitLayerLazyLeaderLeafLearnLeaveLectureLeftLegLegalLegendLeisureLemonLendLengthLensLeopardLessonLetterLevelLiarLibertyLibraryLicenseLifeLiftLightLikeLimbLimitLinkLionLiquidListLittleLiveLizardLoadLoanLobsterLocalLockLogicLonelyLongLoopLotteryLoudLoungeLoveLoyalLuckyLuggageLumberLunarLunchLuxuryLyricsMachineMadMagicMagnetMaidMailMainMajorMakeMammalManManageMandateMangoMansionManualMapleMarbleMarchMarginMarineMarketMarriageMaskMassMasterMatchMaterialMathMatrixMatterMaximumMazeMeadowMeanMeasureMeatMechanicMedalMediaMelodyMeltMemberMemoryMentionMenuMercyMergeMeritMerryMeshMessageMetalMethodMiddleMidnightMilkMillionMimicMindMinimumMinorMinuteMiracleMirrorMiseryMissMistakeMixMixedMixtureMobileModelModifyMomMomentMonitorMonkeyMonsterMonthMoonMoralMoreMorningMosquitoMotherMotionMotorMountainMouseMoveMovieMuchMuffinMuleMultiplyMuscleMuseumMushroomMusicMustMutualMyselfMysteryMythNaiveNameNapkinNarrowNastyNationNatureNearNeckNeedNegativeNeglectNeitherNephewNerveNestNetNetworkNeutralNeverNewsNextNiceNightNobleNoiseNomineeNoodleNormalNorthNoseNotableNoteNothingNoticeNovelNowNuclearNumberNurseNutOakObeyObjectObligeObscureObserveObtainObviousOccurOceanOctoberOdorOffOfferOfficeOftenOilOkayOldOliveOlympicOmitOnceOneOnionOnlineOnlyOpenOperaOpinionOpposeOptionOrangeOrbitOrchardOrderOrdinaryOrganOrientOriginalOrphanOstrichOtherOutdoorOuterOutputOutsideOvalOvenOverOwnOwnerOxygenOysterOzonePactPaddlePagePairPalacePalmPandaPanelPanicPantherPaperParadeParentParkParrotPartyPassPatchPathPatientPatrolPatternPausePavePaymentPeacePeanutPearPeasantPelicanPenPenaltyPencilPeoplePepperPerfectPermitPersonPetPhonePhotoPhrasePhysicalPianoPicnicPicturePiecePigPigeonPillPilotPinkPioneerPipePistolPitchPizzaPlacePlanetPlasticPlatePlayPleasePledgePluckPlugPlungePoemPoetPointPolarPolePolicePondPonyPoolPopularPortionPositionPossiblePostPotatoPotteryPovertyPowderPowerPracticePraisePredictPreferPreparePresentPrettyPreventPricePridePrimaryPrintPriorityPrisonPrivatePrizeProblemProcessProduceProfitProgramProjectPromoteProofPropertyProsperProtectProudProvidePublicPuddingPullPulpPulsePumpkinPunchPupilPuppyPurchasePurityPurposePursePushPutPuzzlePyramidQualityQuantumQuarterQuestionQuickQuitQuizQuoteRabbitRaccoonRaceRackRadarRadioRailRainRaiseRallyRampRanchRandomRangeRapidRareRateRatherRavenRawRazorReadyRealReasonRebelRebuildRecallReceiveRecipeRecordRecycleReduceReflectReformRefuseRegionRegretRegularRejectRelaxReleaseReliefRelyRemainRememberRemindRemoveRenderRenewRentReopenRepairRepeatReplaceReportRequireRescueResembleResistResourceResponseResultRetireRetreatReturnReunionRevealReviewRewardRhythmRibRibbonRiceRichRideRidgeRifleRightRigidRingRiotRippleRiskRitualRivalRiverRoadRoastRobotRobustRocketRomanceRoofRookieRoomRoseRotateRoughRoundRouteRoyalRubberRudeRugRuleRunRunwayRuralSadSaddleSadnessSafeSailSaladSalmonSalonSaltSaluteSameSampleSandSatisfySatoshiSauceSausageSaveSayScaleScanScareScatterSceneSchemeSchoolScienceScissorsScorpionScoutScrapScreenScriptScrubSeaSearchSeasonSeatSecondSecretSectionSecuritySeedSeekSegmentSelectSellSeminarSeniorSenseSentenceSeriesServiceSessionSettleSetupSevenShadowShaftShallowShareShedShellSheriffShieldShiftShineShipShiverShockShoeShootShopShortShoulderShoveShrimpShrugShuffleShySiblingSickSideSiegeSightSignSilentSilkSillySilverSimilarSimpleSinceSingSirenSisterSituateSixSizeSkateSketchSkiSkillSkinSkirtSkullSlabSlamSleepSlenderSliceSlideSlightSlimSloganSlotSlowSlushSmallSmartSmileSmokeSmoothSnackSnakeSnapSniffSnowSoapSoccerSocialSockSodaSoftSolarSoldierSolidSolutionSolveSomeoneSongSoonSorrySortSoulSoundSoupSourceSouthSpaceSpareSpatialSpawnSpeakSpecialSpeedSpellSpendSphereSpiceSpiderSpikeSpinSpiritSplitSpoilSponsorSpoonSportSpotSpraySpreadSpringSpySquareSqueezeSquirrelStableStadiumStaffStageStairsStampStandStartStateStaySteakSteelStemStepStereoStickStillStingStockStomachStoneStoolStoryStoveStrategyStreetStrikeStrongStruggleStudentStuffStumbleStyleSubjectSubmitSubwaySuccessSuchSuddenSufferSugarSuggestSuitSummerSunSunnySunsetSuperSupplySupremeSureSurfaceSurgeSurpriseSurroundSurveySuspectSustainSwallowSwampSwapSwarmSwearSweetSwiftSwimSwingSwitchSwordSymbolSymptomSyrupSystemTableTackleTagTailTalentTalkTankTapeTargetTaskTasteTattooTaxiTeachTeamTellTenTenantTennisTentTermTestTextThankThatThemeThenTheoryThereTheyThingThisThoughtThreeThriveThrowThumbThunderTicketTideTigerTiltTimberTimeTinyTipTiredTissueTitleToastTobaccoTodayToddlerToeTogetherToiletTokenTomatoTomorrowToneTongueTonightToolToothTopTopicToppleTorchTornadoTortoiseTossTotalTouristTowardTowerTownToyTrackTradeTrafficTragicTrainTransferTrapTrashTravelTrayTreatTreeTrendTrialTribeTrickTriggerTrimTripTrophyTroubleTruckTrueTrulyTrumpetTrustTruthTryTubeTuitionTumbleTunaTunnelTurkeyTurnTurtleTwelveTwentyTwiceTwinTwistTwoTypeTypicalUglyUmbrellaUnableUnawareUncleUncoverUnderUndoUnfairUnfoldUnhappyUniformUniqueUnitUniverseUnknownUnlockUntilUnusualUnveilUpdateUpgradeUpholdUponUpperUpsetUrbanUrgeUsageUseUsedUsefulUselessUsualUtilityVacantVacuumVagueValidValleyValveVanVanishVaporVariousVastVaultVehicleVelvetVendorVentureVenueVerbVerifyVersionVeryVesselVeteranViableVibrantViciousVictoryVideoViewVillageVintageViolinVirtualVirusVisaVisitVisualVitalVividVocalVoiceVoidVolcanoVolumeVoteVoyageWageWagonWaitWalkWallWalnutWantWarfareWarmWarriorWashWaspWasteWaterWaveWayWealthWeaponWearWeaselWeatherWebWeddingWeekendWeirdWelcomeWestWetWhaleWhatWheatWheelWhenWhereWhipWhisperWideWidthWifeWildWillWinWindowWineWingWinkWinnerWinterWireWisdomWiseWishWitnessWolfWomanWonderWoodWoolWordWorkWorldWorryWorthWrapWreckWrestleWristWriteWrongYardYearYellowYouYoungYouthZebraZeroZoneZoo".replace(/([A-Z])/g," $1").toLowerCase().substring(1).split(" "),"0x3c8acc1e7b08d8e76f9fda015ef48dc8c710a73cb7e0f77b2c18a9b5a7adde60"!==pr.Wordlist.check(e)))throw i=null,new Error("BIP39 Wordlist for en (English) FAILED")}var s=new(function(e){function t(){return e.call(this,"en")||this}return o(t,e),t.prototype.getWord=function(e){return a(this),i[e]},t.prototype.getWordIndex=function(e){return a(this),i.indexOf(e)},t}(pr.Wordlist));r.langEn=s,pr.Wordlist.register(s)}))),mr=(r(gr),gr.langEn,n((function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.Wordlist=pr.Wordlist;var r={en:gr.langEn};t.wordlists=r}))),yr=(r(mr),mr.Wordlist,mr.wordlists,n((function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.version="hdnode/5.0.5"}))),vr=(r(yr),yr.version,n((function(e,t){Object.defineProperty(t,"__esModule",{value:!0});var r=new c.Logger(yr.version),n=g.BigNumber.from("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),o=D.toUtf8Bytes("Bitcoin seed"),i=2147483648;function a(e){return(1<=256)throw new Error("Depth too large!");return u(f.concat([null!=this.privateKey?"0x0488ADE4":"0x0488B21E",f.hexlify(this.depth),this.parentFingerprint,f.hexZeroPad(f.hexlify(this.index),4),this.chainCode,null!=this.privateKey?f.concat(["0x00",this.privateKey]):this.publicKey]))},enumerable:!0,configurable:!0}),e.prototype.neuter=function(){return new e(h,null,this.publicKey,this.parentFingerprint,this.chainCode,this.index,this.depth,this.path)},e.prototype._derive=function(t){if(t>4294967295)throw new Error("invalid index - "+String(t));var r=this.path;r&&(r+="/"+(2147483647&t));var o=new Uint8Array(37);if(t&i){if(!this.privateKey)throw new Error("cannot derive child of neutered node");o.set(f.arrayify(this.privateKey),1),r&&(r+="'")}else o.set(f.arrayify(this.publicKey));for(var a=24;a>=0;a-=8)o[33+(a>>3)]=t>>24-a&255;var u=f.arrayify(Et.computeHmac(Et.SupportedAlgorithm.sha512,this.chainCode,o)),c=u.slice(0,32),l=u.slice(32),d=null,p=null;this.privateKey?d=s(g.BigNumber.from(c).add(this.privateKey).mod(n)):p=new lr.SigningKey(f.hexlify(c))._addPoint(this.publicKey);var m=r,y=this.mnemonic;return y&&(m=Object.freeze({phrase:y.phrase,path:r,locale:y.locale||"en"})),new e(h,d,p,this.fingerprint,s(l),t,this.depth+1,m)},e.prototype.derivePath=function(e){var t=e.split("/");if(0===t.length||"m"===t[0]&&0!==this.depth)throw new Error("invalid path - "+e);"m"===t[0]&&t.shift();for(var r=this,n=0;n=i)throw new Error("invalid path index - "+o);r=r._derive(i+a)}else{if(!o.match(/^[0-9]+$/))throw new Error("invalid path component - "+o);var a;if((a=parseInt(o))>=i)throw new Error("invalid path index - "+o);r=r._derive(a)}}return r},e._fromSeed=function(t,r){var n=f.arrayify(t);if(n.length<16||n.length>64)throw new Error("invalid seed");var i=f.arrayify(Et.computeHmac(Et.SupportedAlgorithm.sha512,o,n));return new e(h,s(i.slice(0,32)),null,"0x00000000",s(i.slice(32)),0,0,r)},e.fromMnemonic=function(t,r,n){return t=v(m(t,n=l(n)),n),e._fromSeed(p(t,r),{phrase:t,path:"m",locale:n.locale})},e.fromSeed=function(t){return e._fromSeed(t,null)},e.fromExtendedKey=function(t){var n=ee.Base58.decode(t);82===n.length&&u(n.slice(0,78))===t||r.throwArgumentError("invalid extended key","extendedKey","[REDACTED]");var o=n[4],i=f.hexlify(n.slice(5,9)),a=parseInt(f.hexlify(n.slice(9,13)).substring(2),16),s=f.hexlify(n.slice(13,45)),c=n.slice(45,78);switch(f.hexlify(n.slice(0,4))){case"0x0488b21e":case"0x043587cf":return new e(h,null,f.hexlify(c),i,s,a,o,null);case"0x0488ade4":case"0x04358394 ":if(0!==c[0])break;return new e(h,f.hexlify(c.slice(1)),null,i,s,a,o,null)}return r.throwArgumentError("invalid extended key","extendedKey","[REDACTED]")},e}();function p(e,t){t||(t="");var r=D.toUtf8Bytes("mnemonic"+t,D.UnicodeNormalizationForm.NFKD);return kt.pbkdf2(D.toUtf8Bytes(e,D.UnicodeNormalizationForm.NFKD),r,2048,64,"sha512")}function m(e,t){t=l(t),r.checkNormalize();var n=t.split(e);if(n.length%3!=0)throw new Error("invalid mnemonic");for(var o=f.arrayify(new Uint8Array(Math.ceil(11*n.length/8))),i=0,s=0;s>3]|=1<<7-i%8),i++}var h=32*n.length/3,d=a(n.length/3);if((f.arrayify(Et.sha256(o.slice(0,h/8)))[0]&d)!==(o[o.length-1]&d))throw new Error("invalid checksum");return f.hexlify(o.slice(0,h/8))}function v(e,t){if(t=l(t),(e=f.arrayify(e)).length%4!=0||e.length<16||e.length>32)throw new Error("invalid entropy");for(var r=[0],n=11,o=0;o8?(r[r.length-1]<<=8,r[r.length-1]|=e[o],n-=8):(r[r.length-1]<<=n,r[r.length-1]|=e[o]>>8-n,r.push(e[o]&(1<<8-n)-1),n+=3);var i=e.length/4,s=f.arrayify(Et.sha256(e))[0]&a(i);return r[r.length-1]<<=i,r[r.length-1]|=s>>8-i,t.join(r.map((function(e){return t.getWord(e)})))}t.HDNode=d,t.mnemonicToSeed=p,t.mnemonicToEntropy=m,t.entropyToMnemonic=v,t.isValidMnemonic=function(e,t){try{return m(e,t),!0}catch(e){}return!1}}))),br=(r(vr),vr.defaultPath,vr.HDNode,vr.mnemonicToSeed,vr.mnemonicToEntropy,vr.entropyToMnemonic,vr.isValidMnemonic,n((function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.version="random/5.0.4"}))),wr=(r(br),br.version,n((function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.shuffled=function(e){for(var t=(e=e.slice()).length-1;t>0;t--){var r=Math.floor(Math.random()*(t+1)),n=e[t];e[t]=e[r],e[r]=n}return e}}))),_r=(r(wr),wr.shuffled,n((function(e,r){Object.defineProperty(r,"__esModule",{value:!0});var n=new c.Logger(br.version);r.shuffled=wr.shuffled;var o=null;try{if(null==(o=window))throw new Error("try next")}catch(e){try{if(null==(o=t))throw new Error("try next")}catch(e){o={}}}var i=o.crypto||o.msCrypto;i&&i.getRandomValues||(n.warn("WARNING: Missing strong random number source"),i={getRandomValues:function(e){return n.throwError("no secure random source avaialble",c.Logger.errors.UNSUPPORTED_OPERATION,{operation:"crypto.getRandomValues"})}}),r.randomBytes=function(e){(e<=0||e>1024||e%1)&&n.throwArgumentError("invalid length","length",e);var t=new Uint8Array(e);return i.getRandomValues(t),f.arrayify(t)}}))),Er=(r(_r),_r.shuffled,_r.randomBytes,n((function(e,t){!function(t){function r(e){return parseInt(e)===e}function n(e){if(!r(e.length))return!1;for(var t=0;t255)return!1;return!0}function o(e,t){if(e.buffer&&ArrayBuffer.isView(e)&&"Uint8Array"===e.name)return t&&(e=e.slice?e.slice():Array.prototype.slice.call(e)),e;if(Array.isArray(e)){if(!n(e))throw new Error("Array contains invalid value: "+e);return new Uint8Array(e)}if(r(e.length)&&n(e))return new Uint8Array(e);throw new Error("unsupported array-like object")}function i(e){return new Uint8Array(e)}function a(e,t,r,n,o){null==n&&null==o||(e=e.slice?e.slice(n,o):Array.prototype.slice.call(e,n,o)),t.set(e,r)}var s,u={toBytes:function(e){var t=[],r=0;for(e=encodeURI(e);r191&&n<224?(t.push(String.fromCharCode((31&n)<<6|63&e[r+1])),r+=2):(t.push(String.fromCharCode((15&n)<<12|(63&e[r+1])<<6|63&e[r+2])),r+=3)}return t.join("")}},c=(s="0123456789abcdef",{toBytes:function(e){for(var t=[],r=0;r>4]+s[15&n])}return t.join("")}}),l={16:10,24:12,32:14},f=[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],h=[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],g=[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],m=[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],y=[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],v=[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],E=[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],k=[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],P=[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 A(e){for(var t=[],r=0;r>2,this._Ke[r][t%4]=i[t],this._Kd[e-r][t%4]=i[t];for(var a,s=0,u=o;u>16&255]<<24^h[a>>8&255]<<16^h[255&a]<<8^h[a>>24&255]^f[s]<<24,s+=1,8!=o)for(t=1;t>8&255]<<8^h[a>>16&255]<<16^h[a>>24&255]<<24;for(t=o/2+1;t>2,d=u%4,this._Ke[c][d]=i[t],this._Kd[e-c][d]=i[t++],u++}for(var c=1;c>24&255]^k[a>>16&255]^P[a>>8&255]^S[255&a]},M.prototype.encrypt=function(e){if(16!=e.length)throw new Error("invalid plaintext size (must be 16 bytes)");for(var t=this._Ke.length-1,r=[0,0,0,0],n=A(e),o=0;o<4;o++)n[o]^=this._Ke[0][o];for(var a=1;a>24&255]^g[n[(o+1)%4]>>16&255]^m[n[(o+2)%4]>>8&255]^y[255&n[(o+3)%4]]^this._Ke[a][o];n=r.slice()}var s,u=i(16);for(o=0;o<4;o++)s=this._Ke[t][o],u[4*o]=255&(h[n[o]>>24&255]^s>>24),u[4*o+1]=255&(h[n[(o+1)%4]>>16&255]^s>>16),u[4*o+2]=255&(h[n[(o+2)%4]>>8&255]^s>>8),u[4*o+3]=255&(h[255&n[(o+3)%4]]^s);return u},M.prototype.decrypt=function(e){if(16!=e.length)throw new Error("invalid ciphertext size (must be 16 bytes)");for(var t=this._Kd.length-1,r=[0,0,0,0],n=A(e),o=0;o<4;o++)n[o]^=this._Kd[0][o];for(var a=1;a>24&255]^b[n[(o+3)%4]>>16&255]^w[n[(o+2)%4]>>8&255]^_[255&n[(o+1)%4]]^this._Kd[a][o];n=r.slice()}var s,u=i(16);for(o=0;o<4;o++)s=this._Kd[t][o],u[4*o]=255&(d[n[o]>>24&255]^s>>24),u[4*o+1]=255&(d[n[(o+3)%4]>>16&255]^s>>16),u[4*o+2]=255&(d[n[(o+2)%4]>>8&255]^s>>8),u[4*o+3]=255&(d[255&n[(o+1)%4]]^s);return u};var x=function(e){if(!(this instanceof x))throw Error("AES must be instanitated with `new`");this.description="Electronic Code Block",this.name="ecb",this._aes=new M(e)};x.prototype.encrypt=function(e){if((e=o(e)).length%16!=0)throw new Error("invalid plaintext size (must be multiple of 16 bytes)");for(var t=i(e.length),r=i(16),n=0;n=0;--t)this._counter[t]=e%256,e>>=8},T.prototype.setBytes=function(e){if(16!=(e=o(e,!0)).length)throw new Error("invalid counter bytes size (must be 16 bytes)");this._counter=e},T.prototype.increment=function(){for(var e=15;e>=0;e--){if(255!==this._counter[e]){this._counter[e]++;break}this._counter[e]=0}};var C=function(e,t){if(!(this instanceof C))throw Error("AES must be instanitated with `new`");this.description="Counter",this.name="ctr",t instanceof T||(t=new T(t)),this._counter=t,this._remainingCounter=null,this._remainingCounterIndex=16,this._aes=new M(e)};C.prototype.encrypt=function(e){for(var t=o(e,!0),r=0;r16)throw new Error("PKCS#7 padding byte out of range");for(var r=e.length-t,n=0;n=64;){let d,p,g,m,y,v=r,b=n,w=o,_=i,E=a,k=s,P=u,S=c;for(p=0;p<16;p++)g=f+4*p,l[p]=(255&e[g])<<24|(255&e[g+1])<<16|(255&e[g+2])<<8|255&e[g+3];for(p=16;p<64;p++)d=l[p-2],m=(d>>>17|d<<15)^(d>>>19|d<<13)^d>>>10,d=l[p-15],y=(d>>>7|d<<25)^(d>>>18|d<<14)^d>>>3,l[p]=(m+l[p-7]|0)+(y+l[p-16]|0)|0;for(p=0;p<64;p++)m=(((E>>>6|E<<26)^(E>>>11|E<<21)^(E>>>25|E<<7))+(E&k^~E&P)|0)+(S+(t[p]+l[p]|0)|0)|0,y=((v>>>2|v<<30)^(v>>>13|v<<19)^(v>>>22|v<<10))+(v&b^v&w^b&w)|0,S=P,P=k,k=E,E=_+m|0,_=w,w=b,b=v,v=m+y|0;r=r+v|0,n=n+b|0,o=o+w|0,i=i+_|0,a=a+E|0,s=s+k|0,u=u+P|0,c=c+S|0,f+=64,h-=64}}f(e);let h,d=e.length%64,p=e.length/536870912|0,g=e.length<<3,m=d<56?56:120,y=e.slice(e.length-d,e.length);for(y.push(128),h=d+1;h>>24&255),y.push(p>>>16&255),y.push(p>>>8&255),y.push(p>>>0&255),y.push(g>>>24&255),y.push(g>>>16&255),y.push(g>>>8&255),y.push(g>>>0&255),f(y),[r>>>24&255,r>>>16&255,r>>>8&255,r>>>0&255,n>>>24&255,n>>>16&255,n>>>8&255,n>>>0&255,o>>>24&255,o>>>16&255,o>>>8&255,o>>>0&255,i>>>24&255,i>>>16&255,i>>>8&255,i>>>0&255,a>>>24&255,a>>>16&255,a>>>8&255,a>>>0&255,s>>>24&255,s>>>16&255,s>>>8&255,s>>>0&255,u>>>24&255,u>>>16&255,u>>>8&255,u>>>0&255,c>>>24&255,c>>>16&255,c>>>8&255,c>>>0&255]}function o(e,t,r){e=e.length<=64?e:n(e);const o=64+t.length+4,i=new Array(o),a=new Array(64);let s,u=[];for(s=0;s<64;s++)i[s]=54;for(s=0;s=o-4;e--){if(i[e]++,i[e]<=255)return;i[e]=0}}for(;r>=32;)c(),u=u.concat(n(a.concat(n(i)))),r-=32;return r>0&&(c(),u=u.concat(n(a.concat(n(i))).slice(0,r))),u}function i(e,t,r,n,o){let i;for(c(e,16*(2*r-1),o,0,16),i=0;i<2*r;i++)u(e,16*i,o,16),s(o,n),c(o,0,e,t+16*i,16);for(i=0;i>>32-t}function s(e,t){c(e,0,t,0,16);for(let e=8;e>0;e-=2)t[4]^=a(t[0]+t[12],7),t[8]^=a(t[4]+t[0],9),t[12]^=a(t[8]+t[4],13),t[0]^=a(t[12]+t[8],18),t[9]^=a(t[5]+t[1],7),t[13]^=a(t[9]+t[5],9),t[1]^=a(t[13]+t[9],13),t[5]^=a(t[1]+t[13],18),t[14]^=a(t[10]+t[6],7),t[2]^=a(t[14]+t[10],9),t[6]^=a(t[2]+t[14],13),t[10]^=a(t[6]+t[2],18),t[3]^=a(t[15]+t[11],7),t[7]^=a(t[3]+t[15],9),t[11]^=a(t[7]+t[3],13),t[15]^=a(t[11]+t[7],18),t[1]^=a(t[0]+t[3],7),t[2]^=a(t[1]+t[0],9),t[3]^=a(t[2]+t[1],13),t[0]^=a(t[3]+t[2],18),t[6]^=a(t[5]+t[4],7),t[7]^=a(t[6]+t[5],9),t[4]^=a(t[7]+t[6],13),t[5]^=a(t[4]+t[7],18),t[11]^=a(t[10]+t[9],7),t[8]^=a(t[11]+t[10],9),t[9]^=a(t[8]+t[11],13),t[10]^=a(t[9]+t[8],18),t[12]^=a(t[15]+t[14],7),t[13]^=a(t[12]+t[15],9),t[14]^=a(t[13]+t[12],13),t[15]^=a(t[14]+t[13],18);for(let r=0;r<16;++r)e[r]+=t[r]}function u(e,t,r,n){for(let o=0;o=256)return!1}return!0}function f(e,t){if("number"!=typeof e||e%1)throw new Error("invalid "+t);return e}function h(e,t,n,a,s,h,d){if(n=f(n,"N"),a=f(a,"r"),s=f(s,"p"),h=f(h,"dkLen"),0===n||0!=(n&n-1))throw new Error("N must be power of 2");if(n>r/128/a)throw new Error("N too large");if(a>r/128/s)throw new Error("r too large");if(!l(e))throw new Error("password must be an array or buffer");if(e=Array.prototype.slice.call(e),!l(t))throw new Error("salt must be an array or buffer");t=Array.prototype.slice.call(t);let p=o(e,t,128*s*a);const g=new Uint32Array(32*s*a);for(let e=0;eN&&(t=N);for(let e=0;eN&&(t=N);for(let e=0;e>0&255),p.push(g[e]>>8&255),p.push(g[e]>>16&255),p.push(g[e]>>24&255);const r=o(e,p,h);return d&&d(null,1,r),r}d&&O(R)};if(!d)for(;;){const e=R();if(null!=e)return e}R()}const d={scrypt:function(e,t,r,n,o,i,a){return new Promise((function(s,u){let c=0;a&&a(0),h(e,t,r,n,o,i,(function(e,t,r){if(e)u(e);else if(r)a&&1!==c&&a(1),s(new Uint8Array(r));else if(a&&t!==c)return c=t,a(t)}))}))},syncScrypt:function(e,t,r,n,o,i){return new Uint8Array(h(e,t,r,n,o,i))}};e.exports=d}()}))),xr=(Mr.scrypt,Mr.syncScrypt,n((function(e,r){var n,o=t&&t.__extends||(n=function(e,t){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)t.hasOwnProperty(r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}n(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),i=t&&t.__awaiter||function(e,t,r,n){return new(r||(r=Promise))((function(o,i){function a(e){try{u(n.next(e))}catch(e){i(e)}}function s(e){try{u(n.throw(e))}catch(e){i(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(a,s)}u((n=n.apply(e,t||[])).next())}))},a=t&&t.__generator||function(e,t){var r,n,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(i){return function(s){return function(i){if(r)throw new TypeError("Generator is already executing.");for(;a;)try{if(r=1,n&&(o=2&i[0]?n.return:i[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,i[1])).done)return o;switch(n=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return a.label++,{value:i[1],done:!1};case 5:a.label++,n=i[1],i=[0];continue;case 7:i=a.ops.pop(),a.trys.pop();continue;default:if(!(o=a.trys,(o=o.length>0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]0&&u%1==0,"invalid connection throttle limit","connection.throttleLimit",u);var l="object"==typeof e?e.throttleCallback:null,f="object"==typeof e&&"number"==typeof e.throttleSlotInterval?e.throttleSlotInterval:100;i.assertArgument(f>0&&f%1==0,"invalid connection throttle slot interval","connection.throttleSlotInterval",f);var h={},d=null,p={method:"GET"},g=!1,m=12e4;if("string"==typeof e)d=e;else if("object"==typeof e){if(null!=e&&null!=e.url||i.throwArgumentError("missing URL","connection.url",e),d=e.url,"number"==typeof e.timeout&&e.timeout>0&&(m=e.timeout),e.headers)for(var y in e.headers)h[y.toLowerCase()]={key:y,value:String(e.headers[y])},["if-none-match","if-modified-since"].indexOf(y.toLowerCase())>=0&&(g=!0);if(null!=e.user&&null!=e.password){"https:"!==d.substring(0,6)&&!0!==e.allowInsecureAuthentication&&i.throwError("basic authentication requires a secure https url",c.Logger.errors.INVALID_ARGUMENT,{argument:"url",url:d,user:e.user,password:"[REDACTED]"});var v=e.user+":"+e.password;h.authorization={key:"Authorization",value:"Basic "+Br.encode(D.toUtf8Bytes(v))}}}t&&(p.method="POST",p.body=t,null==h["content-type"]&&(h["content-type"]={key:"Content-Type",value:"application/octet-stream"}),null==h["content-length"]&&(h["content-length"]={key:"Content-Length",value:String(t.length)}));var b={};Object.keys(h).forEach((function(e){var t=h[e];b[t.key]=t.value})),p.headers=b;var w,_=(w=null,{promise:new Promise((function(e,t){m&&(w=setTimeout((function(){null!=w&&(w=null,t(i.makeError("timeout",c.Logger.errors.TIMEOUT,{requestBody:s(p.body,b["content-type"]),requestMethod:p.method,timeout:m,url:d})))}),m))})),cancel:function(){null!=w&&(clearTimeout(w),w=null)}}),E=function(){return n(this,void 0,void 0,(function(){var e,t,n,h,m,y,v,w;return o(this,(function(o){switch(o.label){case 0:e=0,o.label=1;case 1:if(!(e=300)&&(_.cancel(),i.throwError("bad response",c.Logger.errors.SERVER_ERROR,{status:t.statusCode,headers:t.headers,body:s(m,t.headers?t.headers["content-type"]:null),requestBody:s(p.body,b["content-type"]),requestMethod:p.method,url:d})),!r)return[3,17];o.label=10;case 10:return o.trys.push([10,12,,17]),[4,r(m,t)];case 11:return y=o.sent(),_.cancel(),[2,y];case 12:return(v=o.sent()).throttleRetry&&es)return void(a()&&n(new Error("retry limit reached")));var c=t.interval*parseInt(String(Math.random()*Math.pow(2,u)));ct.ceiling&&(c=t.ceiling),setTimeout(o,c)}return null}),(function(e){a()&&n(e)}))}()}))}}))),Ur=(r(Lr),Lr._fetchData,Lr.fetchJson,Lr.poll,"qpzry9x8gf2tvdw0s3jn54khce6mua7l"),jr={},Dr=0;Dr>25;return(33554431&e)<<5^996825010&-(t>>0&1)^642813549&-(t>>1&1)^513874426&-(t>>2&1)^1027748829&-(t>>3&1)^705979059&-(t>>4&1)}function Kr(e){for(var t=1,r=0;r126)return"Invalid prefix ("+e+")";t=Hr(t)^n>>5}for(t=Hr(t),r=0;rt)return"Exceeds length limit";var r=e.toLowerCase(),n=e.toUpperCase();if(e!==r&&e!==n)return"Mixed-case string "+e;var o=(e=r).lastIndexOf("1");if(-1===o)return"No separator character for "+e;if(0===o)return"Missing prefix for "+e;var i=e.slice(0,o),a=e.slice(o+1);if(a.length<6)return"Data too short";var s=Kr(i);if("string"==typeof s)return s;for(var u=[],c=0;c=a.length||u.push(f)}return 1!==s?"Invalid checksum for "+e:{prefix:i,words:u}}function qr(e,t,r,n){for(var o=0,i=0,a=(1<=r;)i-=r,s.push(o>>i&a);if(n)i>0&&s.push(o<=t)return"Excess padding";if(o<r)throw new TypeError("Exceeds length limit");var n=Kr(e=e.toLowerCase());if("string"==typeof n)throw new Error(n);for(var o=e+"1",i=0;i>5!=0)throw new Error("Non 5-bit word");n=Hr(n)^a,o+=Ur.charAt(a)}for(i=0;i<6;++i)n=Hr(n);for(n^=1,i=0;i<6;++i){o+=Ur.charAt(n>>5*(5-i)&31)}return o},toWordsUnsafe:function(e){var t=qr(e,8,5,!0);if(Array.isArray(t))return t},toWords:function(e){var t=qr(e,8,5,!0);if(Array.isArray(t))return t;throw new Error(t)},fromWordsUnsafe:function(e){var t=qr(e,5,8,!1);if(Array.isArray(t))return t},fromWords:function(e){var t=qr(e,5,8,!1);if(Array.isArray(t))return t;throw new Error(t)}},Vr=(Gr.decodeUnsafe,Gr.decode,Gr.encode,Gr.toWordsUnsafe,Gr.toWords,Gr.fromWordsUnsafe,Gr.fromWords,n((function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.version="providers/5.0.10"}))),Jr=(r(Vr),Vr.version,n((function(e,t){Object.defineProperty(t,"__esModule",{value:!0});var r=new c.Logger(Vr.version),n=function(){function e(){var t=this.constructor;r.checkNew(t,e),this.formats=this.getDefaultFormats()}return e.prototype.getDefaultFormats=function(){var t=this,r={},n=this.address.bind(this),o=this.bigNumber.bind(this),i=this.blockTag.bind(this),a=this.data.bind(this),s=this.hash.bind(this),u=this.hex.bind(this),c=this.number.bind(this);return r.transaction={hash:s,blockHash:e.allowNull(s,null),blockNumber:e.allowNull(c,null),transactionIndex:e.allowNull(c,null),confirmations:e.allowNull(c,null),from:n,gasPrice:o,gasLimit:o,to:e.allowNull(n,null),value:o,nonce:c,data:a,r:e.allowNull(this.uint256),s:e.allowNull(this.uint256),v:e.allowNull(c),creates:e.allowNull(n,null),raw:e.allowNull(a)},r.transactionRequest={from:e.allowNull(n),nonce:e.allowNull(c),gasLimit:e.allowNull(o),gasPrice:e.allowNull(o),to:e.allowNull(n),value:e.allowNull(o),data:e.allowNull((function(e){return t.data(e,!0)}))},r.receiptLog={transactionIndex:c,blockNumber:c,transactionHash:s,address:n,topics:e.arrayOf(s),data:a,logIndex:c,blockHash:s},r.receipt={to:e.allowNull(this.address,null),from:e.allowNull(this.address,null),contractAddress:e.allowNull(n,null),transactionIndex:c,root:e.allowNull(s),gasUsed:o,logsBloom:e.allowNull(a),blockHash:s,transactionHash:s,logs:e.arrayOf(this.receiptLog.bind(this)),blockNumber:c,confirmations:e.allowNull(c,null),cumulativeGasUsed:o,status:e.allowNull(c)},r.block={hash:s,parentHash:s,number:c,timestamp:c,nonce:e.allowNull(u),difficulty:this.difficulty.bind(this),gasLimit:o,gasUsed:o,miner:n,extraData:a,transactions:e.allowNull(e.arrayOf(s))},r.blockWithTransactions=y.shallowCopy(r.block),r.blockWithTransactions.transactions=e.allowNull(e.arrayOf(this.transactionResponse.bind(this))),r.filter={fromBlock:e.allowNull(i,void 0),toBlock:e.allowNull(i,void 0),blockHash:e.allowNull(s,void 0),address:e.allowNull(n,void 0),topics:e.allowNull(this.topics.bind(this),void 0)},r.filterLog={blockNumber:e.allowNull(c),blockHash:e.allowNull(s),transactionIndex:c,removed:e.allowNull(this.boolean.bind(this)),address:n,data:e.allowFalsish(a,"0x"),topics:e.arrayOf(s),transactionHash:s,logIndex:c},r},e.prototype.number=function(e){return g.BigNumber.from(e).toNumber()},e.prototype.bigNumber=function(e){return g.BigNumber.from(e)},e.prototype.boolean=function(e){if("boolean"==typeof e)return e;if("string"==typeof e){if("true"===(e=e.toLowerCase()))return!0;if("false"===e)return!1}throw new Error("invalid boolean - "+e)},e.prototype.hex=function(e,t){return"string"==typeof e&&(t||"0x"===e.substring(0,2)||(e="0x"+e),f.isHexString(e))?e.toLowerCase():r.throwArgumentError("invalid hash","value",e)},e.prototype.data=function(e,t){var r=this.hex(e,t);if(r.length%2!=0)throw new Error("invalid data; odd-length - "+e);return r},e.prototype.address=function(e){return A.getAddress(e)},e.prototype.callAddress=function(e){if(!f.isHexString(e,32))return null;var t=A.getAddress(f.hexDataSlice(e,12));return t===B.AddressZero?null:t},e.prototype.contractAddress=function(e){return A.getContractAddress(e)},e.prototype.blockTag=function(e){if(null==e)return"latest";if("earliest"===e)return"0x0";if("latest"===e||"pending"===e)return e;if("number"==typeof e||f.isHexString(e))return f.hexValue(e);throw new Error("invalid blockTag")},e.prototype.hash=function(e,t){var n=this.hex(e,t);return 32!==f.hexDataLength(n)?r.throwArgumentError("invalid hash","value",e):n},e.prototype.difficulty=function(e){if(null==e)return null;var t=g.BigNumber.from(e);try{return t.toNumber()}catch(e){}return null},e.prototype.uint256=function(e){if(!f.isHexString(e))throw new Error("invalid uint256");return f.hexZeroPad(e,32)},e.prototype._block=function(t,r){return null!=t.author&&null==t.miner&&(t.miner=t.author),e.check(r,t)},e.prototype.block=function(e){return this._block(e,this.formats.block)},e.prototype.blockWithTransactions=function(e){return this._block(e,this.formats.blockWithTransactions)},e.prototype.transactionRequest=function(t){return e.check(this.formats.transactionRequest,t)},e.prototype.transactionResponse=function(t){null!=t.gas&&null==t.gasLimit&&(t.gasLimit=t.gas),t.to&&g.BigNumber.from(t.to).isZero()&&(t.to="0x0000000000000000000000000000000000000000"),null!=t.input&&null==t.data&&(t.data=t.input),null==t.to&&null==t.creates&&(t.creates=this.contractAddress(t));var r=e.check(this.formats.transaction,t);if(null!=t.chainId){var n=t.chainId;f.isHexString(n)&&(n=g.BigNumber.from(n).toNumber()),r.chainId=n}else{null==(n=t.networkId)&&null==r.v&&(n=t.chainId),f.isHexString(n)&&(n=g.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},e.prototype.transaction=function(e){return hr.parse(e)},e.prototype.receiptLog=function(t){return e.check(this.formats.receiptLog,t)},e.prototype.receipt=function(t){var r=e.check(this.formats.receipt,t);return null!=t.status&&(r.byzantium=!0),r},e.prototype.topics=function(e){var t=this;return Array.isArray(e)?e.map((function(e){return t.topics(e)})):null!=e?this.hash(e,!0):null},e.prototype.filter=function(t){return e.check(this.formats.filter,t)},e.prototype.filterLog=function(t){return e.check(this.formats.filterLog,t)},e.check=function(e,t){var r={};for(var n in e)try{var o=e[n](t[n]);void 0!==o&&(r[n]=o)}catch(e){throw e.checkKey=n,e.checkValue=t[n],e}return r},e.allowNull=function(e,t){return function(r){return null==r?t:e(r)}},e.allowFalsish=function(e,t){return function(r){return r?e(r):t}},e.arrayOf=function(e){return function(t){if(!Array.isArray(t))throw new Error("not an array");var r=[];return t.forEach((function(t){r.push(e(t))})),r}},e}();t.Formatter=n;var o=!1;t.showThrottleMessage=function(){o||(o=!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("=========================="))}}))),Zr=(r(Jr),Jr.Formatter,Jr.showThrottleMessage,n((function(e,r){var n,o=t&&t.__extends||(n=function(e,t){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)t.hasOwnProperty(r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}n(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),i=t&&t.__awaiter||function(e,t,r,n){return new(r||(r=Promise))((function(o,i){function a(e){try{u(n.next(e))}catch(e){i(e)}}function s(e){try{u(n.throw(e))}catch(e){i(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(a,s)}u((n=n.apply(e,t||[])).next())}))},a=t&&t.__generator||function(e,t){var r,n,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(i){return function(s){return function(i){if(r)throw new TypeError("Generator is already executing.");for(;a;)try{if(r=1,n&&(o=2&i[0]?n.return:i[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,i[1])).done)return o;switch(n=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return a.label++,{value:i[1],done:!1};case 5:a.label++,n=i[1],i=[0];continue;case 7:i=a.ops.pop(),a.trys.pop();continue;default:if(!(o=a.trys,(o=o.length>0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]0&&null==e[e.length-1];)e.pop();return e.map((function(e){if(Array.isArray(e)){var t={};e.forEach((function(e){t[u(e)]=!0}));var r=Object.keys(t);return r.sort(),r.join("|")}return u(e)})).join("&")}function h(e){if("string"==typeof e){if(e=e.toLowerCase(),32===f.hexDataLength(e))return"tx:"+e;if(-1===e.indexOf(":"))return e}else{if(Array.isArray(e))return"filter:*:"+l(e);if(Z.ForkEvent.isForkEvent(e))throw s.warn("not implemented"),new Error("not implemented");if(e&&"object"==typeof e)return"filter:"+(e.address||"*")+":"+l(e.topics||[])}throw new Error("invalid event - "+e)}function d(){return(new Date).getTime()}var p=["block","network","pending","poll"],m=function(){function e(e,t,r){y.defineReadOnly(this,"tag",e),y.defineReadOnly(this,"listener",t),y.defineReadOnly(this,"once",r)}return Object.defineProperty(e.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(e.prototype,"type",{get:function(){return this.tag.split(":")[0]},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"hash",{get:function(){var e=this.tag.split(":");return"tx"!==e[0]?null:e[1]},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"filter",{get:function(){var e=this.tag.split(":");if("filter"!==e[0])return null;var t,r=e[1],n=""===(t=e[2])?[]:t.split(/&/g).map((function(e){if(""===e)return[];var t=e.split("|").map((function(e){return"null"===e?null:e}));return 1===t.length?t[0]:t})),o={};return n.length>0&&(o.topics=n),r&&"*"!==r&&(o.address=r),o},enumerable:!0,configurable:!0}),e.prototype.pollable=function(){return this.tag.indexOf(":")>=0||p.indexOf(this.tag)>=0},e}();r.Event=m;var v={0:{symbol:"btc",p2pkh:0,p2sh:5,prefix:"bc"},2:{symbol:"ltc",p2pkh:48,p2sh:50,prefix:"ltc"},3:{symbol:"doge",p2pkh:30,p2sh:22},60:{symbol:"eth",ilk:"eth"},61:{symbol:"etc",ilk:"eth"},700:{symbol:"xdai",ilk:"eth"}};function b(e){return f.hexZeroPad(g.BigNumber.from(e).toHexString(),32)}function w(e){return ee.Base58.encode(f.concat([e,f.hexDataSlice(Et.sha256(Et.sha256(e)),0,4)]))}var _=function(){function e(e,t,r){y.defineReadOnly(this,"provider",e),y.defineReadOnly(this,"name",r),y.defineReadOnly(this,"address",e.formatter.address(t))}return e.prototype._fetchBytes=function(e,t){return i(this,void 0,void 0,(function(){var r,n,o,i;return a(this,(function(a){switch(a.label){case 0:return r={to:this.address,data:f.hexConcat([e,q.namehash(this.name),t||"0x"])},[4,this.provider.call(r)];case 1:return"0x"===(n=a.sent())?[2,null]:(o=g.BigNumber.from(f.hexDataSlice(n,0,32)).toNumber(),i=g.BigNumber.from(f.hexDataSlice(n,o,o+32)).toNumber(),[2,f.hexDataSlice(n,o+32,o+32+i)])}}))}))},e.prototype._getAddress=function(e,t){var r=v[String(e)];if(null==r&&s.throwError("unsupported coin type: "+e,c.Logger.errors.UNSUPPORTED_OPERATION,{operation:"getAddress("+e+")"}),"eth"===r.ilk)return this.provider.formatter.address(t);var n=f.arrayify(t);if(null!=r.p2pkh){var o=t.match(/^0x76a9([0-9a-f][0-9a-f])([0-9a-f]*)88ac$/);if(o){var i=parseInt(o[1],16);if(o[2].length===2*i&&i>=1&&i<=75)return w(f.concat([[r.p2pkh],"0x"+o[2]]))}}if(null!=r.p2sh){var a=t.match(/^0xa9([0-9a-f][0-9a-f])([0-9a-f]*)87$/);if(a){var u=parseInt(a[1],16);if(a[2].length===2*u&&u>=1&&u<=75)return w(f.concat([[r.p2sh],"0x"+a[2]]))}}if(null!=r.prefix){var l=n[1],h=n[0];if(0===h?20!==l&&32!==l&&(h=-1):h=-1,h>=0&&n.length===2+l&&l>=1&&l<=75){var d=Gr.toWords(n.slice(2));return d.unshift(h),Gr.encode(r.prefix,d)}}return null},e.prototype.getAddress=function(e){return i(this,void 0,void 0,(function(){var t,r,n,o;return a(this,(function(i){switch(i.label){case 0:return null==e&&(e=60),60!==e?[3,2]:(t={to:this.address,data:"0x3b3b57de"+q.namehash(this.name).substring(2)},[4,this.provider.call(t)]);case 1:return"0x"===(r=i.sent())||r===B.HashZero?[2,null]:[2,this.provider.formatter.callAddress(r)];case 2:return[4,this._fetchBytes("0xf1cb7e06",b(e))];case 3:return null==(n=i.sent())||"0x"===n?[2,null]:(null==(o=this._getAddress(e,n))&&s.throwError("invalid or unsupported coin data",c.Logger.errors.UNSUPPORTED_OPERATION,{operation:"getAddress("+e+")",coinType:e,data:n}),[2,o])}}))}))},e.prototype.getContentHash=function(){return i(this,void 0,void 0,(function(){var e,t,r,n;return a(this,(function(o){switch(o.label){case 0:return[4,this._fetchBytes("0xbc1c58d1")];case 1:return null==(e=o.sent())||"0x"===e?[2,null]:(t=e.match(/^0xe3010170(([0-9a-f][0-9a-f])([0-9a-f][0-9a-f])([0-9a-f]*))$/))&&(r=parseInt(t[3],16),t[4].length===2*r)?[2,"ipfs://"+ee.Base58.encode("0x"+t[1])]:(n=e.match(/^0xe40101fa011b20([0-9a-f]*)$/))&&64===n[1].length?[2,"bzz://"+n[1]]:[2,s.throwError("invalid or unsupported content hash data",c.Logger.errors.UNSUPPORTED_OPERATION,{operation:"getContentHash()",data:e})]}}))}))},e.prototype.getText=function(e){return i(this,void 0,void 0,(function(){var t,r;return a(this,(function(n){switch(n.label){case 0:return t=D.toUtf8Bytes(e),(t=f.concat([b(64),b(t.length),t])).length%32!=0&&(t=f.concat([t,f.hexZeroPad("0x",32-e.length%32)])),[4,this._fetchBytes("0x59d1d43c",f.hexlify(t))];case 1:return null==(r=n.sent())||"0x"===r?[2,null]:[2,D.toUtf8String(r)]}}))}))},e}();r.Resolver=_;var E=null,k=1,P=function(e){function t(t){var r=this.constructor,n=this;if(s.checkNew(r,Z.Provider),(n=e.call(this)||this)._events=[],n._emitted={block:-2},n.formatter=r.getFormatter(),y.defineReadOnly(n,"anyNetwork","any"===t),n.anyNetwork&&(t=n.detectNetwork()),t instanceof Promise)n._networkPromise=t,t.catch((function(e){})),n._ready().catch((function(e){}));else{var o=y.getStatic(r,"getNetwork")(t);o?(y.defineReadOnly(n,"_network",o),n.emit("network",o,null)):s.throwArgumentError("invalid network","network",t)}return n._maxInternalBlockNumber=-1024,n._lastBlockNumber=-2,n._pollingInterval=4e3,n._fastQueryDate=0,n}return o(t,e),t.prototype._ready=function(){return i(this,void 0,void 0,(function(){var e;return a(this,(function(t){switch(t.label){case 0:if(null!=this._network)return[3,7];if(e=null,!this._networkPromise)return[3,4];t.label=1;case 1:return t.trys.push([1,3,,4]),[4,this._networkPromise];case 2:return e=t.sent(),[3,4];case 3:return t.sent(),[3,4];case 4:return null!=e?[3,6]:[4,this.detectNetwork()];case 5:e=t.sent(),t.label=6;case 6:e||s.throwError("no network detected",c.Logger.errors.UNKNOWN_ERROR,{}),null==this._network&&(this.anyNetwork?this._network=e:y.defineReadOnly(this,"_network",e),this.emit("network",e,null)),t.label=7;case 7:return[2,this._network]}}))}))},Object.defineProperty(t.prototype,"ready",{get:function(){var e=this;return Lr.poll((function(){return e._ready().then((function(e){return e}),(function(e){if(e.code!==c.Logger.errors.NETWORK_ERROR||"noNetwork"!==e.event)throw e}))}))},enumerable:!0,configurable:!0}),t.getFormatter=function(){return null==E&&(E=new Jr.Formatter),E},t.getNetwork=function(e){return Cr.getNetwork(null==e?"homestead":e)},t.prototype._getInternalBlockNumber=function(e){return i(this,void 0,void 0,(function(){var t,r,n,o,i=this;return a(this,(function(a){switch(a.label){case 0:return[4,this._ready()];case 1:return a.sent(),t=this._internalBlockNumber,e>0&&this._internalBlockNumber?[4,t]:[3,3];case 2:if(r=a.sent(),d()-r.respTime<=e)return[2,r.blockNumber];a.label=3;case 3:return n=d(),o=y.resolveProperties({blockNumber:this.perform("getBlockNumber",{}),networkError:this.getNetwork().then((function(e){return null}),(function(e){return e}))}).then((function(e){var t=e.blockNumber,r=e.networkError;if(r)throw i._internalBlockNumber===o&&(i._internalBlockNumber=null),r;var a=d();return(t=g.BigNumber.from(t).toNumber())1e3)s.warn("network block skew detected; skipping block events"),this.emit("error",s.makeError("network block skew detected",c.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(e){if("block"!==e){var t=o._emitted[e];"pending"!==t&&r-t>12&&delete o._emitted[e]}}))),-2===this._lastBlockNumber&&(this._lastBlockNumber=r-1),this._events.forEach((function(e){switch(e.type){case"tx":var n=e.hash,i=o.getTransactionReceipt(n).then((function(e){return e&&null!=e.blockNumber?(o._emitted["t:"+n]=e.blockNumber,o.emit(n,e),null):null})).catch((function(e){o.emit("error",e)}));t.push(i);break;case"filter":var a=e.filter;a.fromBlock=o._lastBlockNumber+1,a.toBlock=r;i=o.getLogs(a).then((function(e){0!==e.length&&e.forEach((function(e){o._emitted["b:"+e.blockHash]=e.blockNumber,o._emitted["t:"+e.transactionHash]=e.blockNumber,o.emit(a,e)}))})).catch((function(e){o.emit("error",e)}));t.push(i)}})),this._lastBlockNumber=r,Promise.all(t).then((function(){o.emit("didPoll",e)})),[2,null]}}))}))},t.prototype.resetEventsBlock=function(e){this._lastBlockNumber=e-1,this.polling&&this.poll()},Object.defineProperty(t.prototype,"network",{get:function(){return this._network},enumerable:!0,configurable:!0}),t.prototype.detectNetwork=function(){return i(this,void 0,void 0,(function(){return a(this,(function(e){return[2,s.throwError("provider does not support network detection",c.Logger.errors.UNSUPPORTED_OPERATION,{operation:"provider.detectNetwork"})]}))}))},t.prototype.getNetwork=function(){return i(this,void 0,void 0,(function(){var e,t,r;return a(this,(function(n){switch(n.label){case 0:return[4,this._ready()];case 1:return e=n.sent(),[4,this.detectNetwork()];case 2:return t=n.sent(),e.chainId===t.chainId?[3,5]:this.anyNetwork?(this._network=t,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",t,e),[4,(o=0,new Promise((function(e){setTimeout(e,o)})))]):[3,4];case 3:return n.sent(),[2,this._network];case 4:throw r=s.makeError("underlying network changed",c.Logger.errors.NETWORK_ERROR,{event:"changed",network:e,detectedNetwork:t}),this.emit("error",r),r;case 5:return[2,e]}var o}))}))},Object.defineProperty(t.prototype,"blockNumber",{get:function(){var e=this;return this._getInternalBlockNumber(100+this.pollingInterval/2).then((function(t){e._setFastBlockNumber(t)})),null!=this._fastBlockNumber?this._fastBlockNumber:-1},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"polling",{get:function(){return null!=this._poller},set:function(e){var t=this;e&&!this._poller?(this._poller=setInterval(this.poll.bind(this),this.pollingInterval),this._bootstrapPoll||(this._bootstrapPoll=setTimeout((function(){t.poll(),t._bootstrapPoll=setTimeout((function(){t._poller||t.poll(),t._bootstrapPoll=null}),t.pollingInterval)}),0))):!e&&this._poller&&(clearInterval(this._poller),this._poller=null)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"pollingInterval",{get:function(){return this._pollingInterval},set:function(e){var t=this;if("number"!=typeof e||e<=0||parseInt(String(e))!=e)throw new Error("invalid polling interval");this._pollingInterval=e,this._poller&&(clearInterval(this._poller),this._poller=setInterval((function(){t.poll()}),this._pollingInterval))},enumerable:!0,configurable:!0}),t.prototype._getFastBlockNumber=function(){var e=this,t=d();return t-this._fastQueryDate>2*this._pollingInterval&&(this._fastQueryDate=t,this._fastBlockNumberPromise=this.getBlockNumber().then((function(t){return(null==e._fastBlockNumber||t>e._fastBlockNumber)&&(e._fastBlockNumber=t),e._fastBlockNumber}))),this._fastBlockNumberPromise},t.prototype._setFastBlockNumber=function(e){null!=this._fastBlockNumber&&ethis._fastBlockNumber)&&(this._fastBlockNumber=e,this._fastBlockNumberPromise=Promise.resolve(e)))},t.prototype.waitForTransaction=function(e,t,r){return i(this,void 0,void 0,(function(){var n,o=this;return a(this,(function(i){switch(i.label){case 0:return null==t&&(t=1),[4,this.getTransactionReceipt(e)];case 1:return((n=i.sent())?n.confirmations:0)>=t?[2,n]:[2,new Promise((function(n,i){var a=null,u=!1,l=function(r){r.confirmations0&&(a=setTimeout((function(){u||(a=null,u=!0,o.removeListener(e,l),i(s.makeError("timeout exceeded",c.Logger.errors.TIMEOUT,{timeout:r})))}),r)).unref&&a.unref()}))]}}))}))},t.prototype.getBlockNumber=function(){return i(this,void 0,void 0,(function(){return a(this,(function(e){return[2,this._getInternalBlockNumber(0)]}))}))},t.prototype.getGasPrice=function(){return i(this,void 0,void 0,(function(){var e,t;return a(this,(function(r){switch(r.label){case 0:return[4,this.getNetwork()];case 1:return r.sent(),t=(e=g.BigNumber).from,[4,this.perform("getGasPrice",{})];case 2:return[2,t.apply(e,[r.sent()])]}}))}))},t.prototype.getBalance=function(e,t){return i(this,void 0,void 0,(function(){var r,n,o;return a(this,(function(i){switch(i.label){case 0:return[4,this.getNetwork()];case 1:return i.sent(),[4,y.resolveProperties({address:this._getAddress(e),blockTag:this._getBlockTag(t)})];case 2:return r=i.sent(),o=(n=g.BigNumber).from,[4,this.perform("getBalance",r)];case 3:return[2,o.apply(n,[i.sent()])]}}))}))},t.prototype.getTransactionCount=function(e,t){return i(this,void 0,void 0,(function(){var r,n,o;return a(this,(function(i){switch(i.label){case 0:return[4,this.getNetwork()];case 1:return i.sent(),[4,y.resolveProperties({address:this._getAddress(e),blockTag:this._getBlockTag(t)})];case 2:return r=i.sent(),o=(n=g.BigNumber).from,[4,this.perform("getTransactionCount",r)];case 3:return[2,o.apply(n,[i.sent()]).toNumber()]}}))}))},t.prototype.getCode=function(e,t){return i(this,void 0,void 0,(function(){var r,n;return a(this,(function(o){switch(o.label){case 0:return[4,this.getNetwork()];case 1:return o.sent(),[4,y.resolveProperties({address:this._getAddress(e),blockTag:this._getBlockTag(t)})];case 2:return r=o.sent(),n=f.hexlify,[4,this.perform("getCode",r)];case 3:return[2,n.apply(void 0,[o.sent()])]}}))}))},t.prototype.getStorageAt=function(e,t,r){return i(this,void 0,void 0,(function(){var n,o;return a(this,(function(i){switch(i.label){case 0:return[4,this.getNetwork()];case 1:return i.sent(),[4,y.resolveProperties({address:this._getAddress(e),blockTag:this._getBlockTag(r),position:Promise.resolve(t).then((function(e){return f.hexValue(e)}))})];case 2:return n=i.sent(),o=f.hexlify,[4,this.perform("getStorageAt",n)];case 3:return[2,o.apply(void 0,[i.sent()])]}}))}))},t.prototype._wrapTransaction=function(e,t){var r=this;if(null!=t&&32!==f.hexDataLength(t))throw new Error("invalid response - sendTransaction");var n=e;return null!=t&&e.hash!==t&&s.throwError("Transaction hash mismatch from Provider.sendTransaction.",c.Logger.errors.UNKNOWN_ERROR,{expectedHash:e.hash,returnedHash:t}),n.wait=function(t){return i(r,void 0,void 0,(function(){var r;return a(this,(function(n){switch(n.label){case 0:return 0!==t&&(this._emitted["t:"+e.hash]="pending"),[4,this.waitForTransaction(e.hash,t)];case 1:return null==(r=n.sent())&&0===t?[2,null]:(this._emitted["t:"+e.hash]=r.blockNumber,0===r.status&&s.throwError("transaction failed",c.Logger.errors.CALL_EXCEPTION,{transactionHash:e.hash,transaction:e,receipt:r}),[2,r])}}))}))},n},t.prototype.sendTransaction=function(e){return i(this,void 0,void 0,(function(){var t,r,n,o;return a(this,(function(i){switch(i.label){case 0:return[4,this.getNetwork()];case 1:return i.sent(),[4,Promise.resolve(e).then((function(e){return f.hexlify(e)}))];case 2:t=i.sent(),r=this.formatter.transaction(e),i.label=3;case 3:return i.trys.push([3,5,,6]),[4,this.perform("sendTransaction",{signedTransaction:t})];case 4:return n=i.sent(),[2,this._wrapTransaction(r,n)];case 5:throw(o=i.sent()).transaction=r,o.transactionHash=r.hash,o;case 6:return[2]}}))}))},t.prototype._getTransactionRequest=function(e){return i(this,void 0,void 0,(function(){var t,r,n,o,i=this;return a(this,(function(a){switch(a.label){case 0:return[4,e];case 1:return t=a.sent(),r={},["from","to"].forEach((function(e){null!=t[e]&&(r[e]=Promise.resolve(t[e]).then((function(e){return e?i._getAddress(e):null})))})),["gasLimit","gasPrice","value"].forEach((function(e){null!=t[e]&&(r[e]=Promise.resolve(t[e]).then((function(e){return e?g.BigNumber.from(e):null})))})),["data"].forEach((function(e){null!=t[e]&&(r[e]=Promise.resolve(t[e]).then((function(e){return e?f.hexlify(e):null})))})),o=(n=this.formatter).transactionRequest,[4,y.resolveProperties(r)];case 2:return[2,o.apply(n,[a.sent()])]}}))}))},t.prototype._getFilter=function(e){return i(this,void 0,void 0,(function(){var t,r,n,o=this;return a(this,(function(i){switch(i.label){case 0:return[4,e];case 1:return e=i.sent(),t={},null!=e.address&&(t.address=this._getAddress(e.address)),["blockHash","topics"].forEach((function(r){null!=e[r]&&(t[r]=e[r])})),["fromBlock","toBlock"].forEach((function(r){null!=e[r]&&(t[r]=o._getBlockTag(e[r]))})),n=(r=this.formatter).filter,[4,y.resolveProperties(t)];case 2:return[2,n.apply(r,[i.sent()])]}}))}))},t.prototype.call=function(e,t){return i(this,void 0,void 0,(function(){var r,n;return a(this,(function(o){switch(o.label){case 0:return[4,this.getNetwork()];case 1:return o.sent(),[4,y.resolveProperties({transaction:this._getTransactionRequest(e),blockTag:this._getBlockTag(t)})];case 2:return r=o.sent(),n=f.hexlify,[4,this.perform("call",r)];case 3:return[2,n.apply(void 0,[o.sent()])]}}))}))},t.prototype.estimateGas=function(e){return i(this,void 0,void 0,(function(){var t,r,n;return a(this,(function(o){switch(o.label){case 0:return[4,this.getNetwork()];case 1:return o.sent(),[4,y.resolveProperties({transaction:this._getTransactionRequest(e)})];case 2:return t=o.sent(),n=(r=g.BigNumber).from,[4,this.perform("estimateGas",t)];case 3:return[2,n.apply(r,[o.sent()])]}}))}))},t.prototype._getAddress=function(e){return i(this,void 0,void 0,(function(){var t;return a(this,(function(r){switch(r.label){case 0:return[4,this.resolveName(e)];case 1:return null==(t=r.sent())&&s.throwError("ENS name not configured",c.Logger.errors.UNSUPPORTED_OPERATION,{operation:"resolveName("+JSON.stringify(e)+")"}),[2,t]}}))}))},t.prototype._getBlock=function(e,t){return i(this,void 0,void 0,(function(){var r,n,o,u,c,l=this;return a(this,(function(h){switch(h.label){case 0:return[4,this.getNetwork()];case 1:return h.sent(),[4,e];case 2:return e=h.sent(),r=-128,n={includeTransactions:!!t},f.isHexString(e,32)?(n.blockHash=e,[3,6]):[3,3];case 3:return h.trys.push([3,5,,6]),o=n,c=(u=this.formatter).blockTag,[4,this._getBlockTag(e)];case 4:return o.blockTag=c.apply(u,[h.sent()]),f.isHexString(n.blockTag)&&(r=parseInt(n.blockTag.substring(2),16)),[3,6];case 5:return h.sent(),s.throwArgumentError("invalid block hash or block tag","blockHashOrBlockTag",e),[3,6];case 6:return[2,Lr.poll((function(){return i(l,void 0,void 0,(function(){var e,o,i,s,u;return a(this,(function(a){switch(a.label){case 0:return[4,this.perform("getBlock",n)];case 1:if(null==(e=a.sent()))return null!=n.blockHash&&null==this._emitted["b:"+n.blockHash]||null!=n.blockTag&&r>this._emitted.block?[2,null]:[2,void 0];if(!t)return[3,8];o=null,i=0,a.label=2;case 2:return in.length?[2,null]:(s=D.toUtf8String(n.slice(0,i)),[4,this.resolveName(s)]));case 4:return a.sent()!=e?[2,null]:[2,s]}}))}))},t.prototype.perform=function(e,t){return s.throwError(e+" not implemented",c.Logger.errors.NOT_IMPLEMENTED,{operation:e})},t.prototype._startEvent=function(e){this.polling=this._events.filter((function(e){return e.pollable()})).length>0},t.prototype._stopEvent=function(e){this.polling=this._events.filter((function(e){return e.pollable()})).length>0},t.prototype._addEventListener=function(e,t,r){var n=new m(h(e),t,r);return this._events.push(n),this._startEvent(n),this},t.prototype.on=function(e,t){return this._addEventListener(e,t,!1)},t.prototype.once=function(e,t){return this._addEventListener(e,t,!0)},t.prototype.emit=function(e){for(var t=this,r=[],n=1;n0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]=0&&n.match(/gas required exceeds allowance|always failing transaction|execution reverted/)&&s.throwError("cannot estimate gas; transaction may fail or may require manual gas limit",c.Logger.errors.UNPREDICTABLE_GAS_LIMIT,{error:t,method:e,transaction:o}),t}function h(e){return new Promise((function(t){setTimeout(t,e)}))}function d(e){if(e.error){var t=new Error(e.error.message);throw t.code=e.error.code,t.data=e.error.data,t}return e.result}function p(e){return e?e.toLowerCase():e}var m={},v=function(e){function t(r,n,o){var i=this.constructor,a=this;if(s.checkNew(i,t),a=e.call(this)||this,r!==m)throw new Error("do not call the JsonRpcSigner constructor directly; use provider.getSigner");return y.defineReadOnly(a,"provider",n),null==o&&(o=0),"string"==typeof o?(y.defineReadOnly(a,"_address",a.provider.formatter.address(o)),y.defineReadOnly(a,"_index",null)):"number"==typeof o?(y.defineReadOnly(a,"_index",o),y.defineReadOnly(a,"_address",null)):s.throwArgumentError("invalid address or index","addressOrIndex",o),a}return o(t,e),t.prototype.connect=function(e){return s.throwError("cannot alter JSON-RPC Signer connection",c.Logger.errors.UNSUPPORTED_OPERATION,{operation:"connect"})},t.prototype.connectUnchecked=function(){return new b(m,this.provider,this._address||this._index)},t.prototype.getAddress=function(){var e=this;return this._address?Promise.resolve(this._address):this.provider.send("eth_accounts",[]).then((function(t){return t.length<=e._index&&s.throwError("unknown account #"+e._index,c.Logger.errors.UNSUPPORTED_OPERATION,{operation:"getAddress"}),e.provider.formatter.address(t[e._index])}))},t.prototype.sendUncheckedTransaction=function(e){var t=this;e=y.shallowCopy(e);var r=this.getAddress().then((function(e){return e&&(e=e.toLowerCase()),e}));if(null==e.gasLimit){var n=y.shallowCopy(e);n.from=r,e.gasLimit=this.provider.estimateGas(n)}return y.resolveProperties({tx:y.resolveProperties(e),sender:r}).then((function(r){var n=r.tx,o=r.sender;null!=n.from?n.from.toLowerCase()!==o&&s.throwArgumentError("from address mismatch","transaction",e):n.from=o;var i=t.provider.constructor.hexlifyTransaction(n,{from:!0});return t.provider.send("eth_sendTransaction",[i]).then((function(e){return e}),(function(e){return l("sendTransaction",e,i)}))}))},t.prototype.signTransaction=function(e){return s.throwError("signing transactions is unsupported",c.Logger.errors.UNSUPPORTED_OPERATION,{operation:"signTransaction"})},t.prototype.sendTransaction=function(e){var t=this;return this.sendUncheckedTransaction(e).then((function(e){return Lr.poll((function(){return t.provider.getTransaction(e).then((function(r){if(null!==r)return t.provider._wrapTransaction(r,e)}))}),{onceBlock:t.provider}).catch((function(t){throw t.transactionHash=e,t}))}))},t.prototype.signMessage=function(e){var t=this,r="string"==typeof e?D.toUtf8Bytes(e):e;return this.getAddress().then((function(e){return t.provider.send("eth_sign",[e.toLowerCase(),f.hexlify(r)])}))},t.prototype.unlock=function(e){var t=this.provider;return this.getAddress().then((function(r){return t.send("personal_unlockAccount",[r.toLowerCase(),e,null])}))},t}($.Signer);r.JsonRpcSigner=v;var b=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o(t,e),t.prototype.sendTransaction=function(e){var t=this;return this.sendUncheckedTransaction(e).then((function(e){return{hash:e,nonce:null,gasLimit:null,gasPrice:null,data:null,value:null,chainId:null,confirmations:0,from:null,wait:function(r){return t.provider.waitForTransaction(e,r)}}}))},t}(v),w={chainId:!0,data:!0,gasLimit:!0,gasPrice:!0,nonce:!0,to:!0,value:!0},_=function(e){function t(r,n){var o=this.constructor,i=this;s.checkNew(o,t);var a=n;return null==a&&(a=new Promise((function(e,t){setTimeout((function(){i.detectNetwork().then((function(t){e(t)}),(function(e){t(e)}))}),0)}))),i=e.call(this,a)||this,r||(r=y.getStatic(i.constructor,"defaultUrl")()),"string"==typeof r?y.defineReadOnly(i,"connection",Object.freeze({url:r})):y.defineReadOnly(i,"connection",Object.freeze(y.shallowCopy(r))),i._nextId=42,i}return o(t,e),t.defaultUrl=function(){return"http://localhost:8545"},t.prototype.detectNetwork=function(){return i(this,void 0,void 0,(function(){var e,t;return a(this,(function(r){switch(r.label){case 0:return[4,h(0)];case 1:r.sent(),e=null,r.label=2;case 2:return r.trys.push([2,4,,9]),[4,this.send("eth_chainId",[])];case 3:return e=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 e=r.sent(),[3,8];case 7:return r.sent(),[3,8];case 8:return[3,9];case 9:if(null!=e){t=y.getStatic(this.constructor,"getNetwork");try{return[2,t(g.BigNumber.from(e).toNumber())]}catch(t){return[2,s.throwError("could not detect network",c.Logger.errors.NETWORK_ERROR,{chainId:e,event:"invalidNetwork",serverError:t})]}}return[2,s.throwError("could not detect network",c.Logger.errors.NETWORK_ERROR,{event:"noNetwork"})]}}))}))},t.prototype.getSigner=function(e){return new v(m,this,e)},t.prototype.getUncheckedSigner=function(e){return this.getSigner(e).connectUnchecked()},t.prototype.listAccounts=function(){var e=this;return this.send("eth_accounts",[]).then((function(t){return t.map((function(t){return e.formatter.address(t)}))}))},t.prototype.send=function(e,t){var r=this,n={method:e,params:t,id:this._nextId++,jsonrpc:"2.0"};return this.emit("debug",{action:"request",request:y.deepCopy(n),provider:this}),Lr.fetchJson(this.connection,JSON.stringify(n),d).then((function(e){return r.emit("debug",{action:"response",request:n,response:e,provider:r}),e}),(function(e){throw r.emit("debug",{action:"response",error:e,request:n,provider:r}),e}))},t.prototype.prepareRequest=function(e,t){switch(e){case"getBlockNumber":return["eth_blockNumber",[]];case"getGasPrice":return["eth_gasPrice",[]];case"getBalance":return["eth_getBalance",[p(t.address),t.blockTag]];case"getTransactionCount":return["eth_getTransactionCount",[p(t.address),t.blockTag]];case"getCode":return["eth_getCode",[p(t.address),t.blockTag]];case"getStorageAt":return["eth_getStorageAt",[p(t.address),t.position,t.blockTag]];case"sendTransaction":return["eth_sendRawTransaction",[t.signedTransaction]];case"getBlock":return t.blockTag?["eth_getBlockByNumber",[t.blockTag,!!t.includeTransactions]]:t.blockHash?["eth_getBlockByHash",[t.blockHash,!!t.includeTransactions]]:null;case"getTransaction":return["eth_getTransactionByHash",[t.transactionHash]];case"getTransactionReceipt":return["eth_getTransactionReceipt",[t.transactionHash]];case"call":return["eth_call",[y.getStatic(this.constructor,"hexlifyTransaction")(t.transaction,{from:!0}),t.blockTag]];case"estimateGas":return["eth_estimateGas",[y.getStatic(this.constructor,"hexlifyTransaction")(t.transaction,{from:!0})]];case"getLogs":return t.filter&&null!=t.filter.address&&(t.filter.address=p(t.filter.address)),["eth_getLogs",[t.filter]]}return null},t.prototype.perform=function(e,t){return i(this,void 0,void 0,(function(){var r,n;return a(this,(function(o){switch(o.label){case 0:null==(r=this.prepareRequest(e,t))&&s.throwError(e+" not implemented",c.Logger.errors.NOT_IMPLEMENTED,{operation:e}),o.label=1;case 1:return o.trys.push([1,3,,4]),[4,this.send(r[0],r[1])];case 2:return[2,o.sent()];case 3:return n=o.sent(),[2,l(e,n,t)];case 4:return[2]}}))}))},t.prototype._startEvent=function(t){"pending"===t.tag&&this._startPending(),e.prototype._startEvent.call(this,t)},t.prototype._startPending=function(){if(null==this._pendingFilter){var e=this,t=this.send("eth_newPendingTransactionFilter",[]);this._pendingFilter=t,t.then((function(r){return function n(){e.send("eth_getFilterChanges",[r]).then((function(r){if(e._pendingFilter!=t)return null;var n=Promise.resolve();return r.forEach((function(t){e._emitted["t:"+t.toLowerCase()]="pending",n=n.then((function(){return e.getTransaction(t).then((function(t){return e.emit("pending",t),null}))}))})),n.then((function(){return h(1e3)}))})).then((function(){if(e._pendingFilter==t)return setTimeout((function(){n()}),0),null;e.send("eth_uninstallFilter",[r])})).catch((function(e){}))}(),r})).catch((function(e){}))}},t.prototype._stopEvent=function(t){"pending"===t.tag&&0===this.listenerCount("pending")&&(this._pendingFilter=null),e.prototype._stopEvent.call(this,t)},t.hexlifyTransaction=function(e,t){var r=y.shallowCopy(w);if(t)for(var n in t)t[n]&&(r[n]=!0);y.checkProperties(e,r);var o={};return["gasLimit","gasPrice","nonce","value"].forEach((function(t){if(null!=e[t]){var r=f.hexValue(e[t]);"gasLimit"===t&&(t="gas"),o[t]=r}})),["from","to","data"].forEach((function(t){null!=e[t]&&(o[t]=f.hexlify(e[t]))})),o},t}(Zr.BaseProvider);r.JsonRpcProvider=_}))),Qr=(r($r),$r.JsonRpcSigner,$r.JsonRpcProvider,n((function(e,r){var n,o=t&&t.__extends||(n=function(e,t){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)t.hasOwnProperty(r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}n(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),i=t&&t.__awaiter||function(e,t,r,n){return new(r||(r=Promise))((function(o,i){function a(e){try{u(n.next(e))}catch(e){i(e)}}function s(e){try{u(n.throw(e))}catch(e){i(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(a,s)}u((n=n.apply(e,t||[])).next())}))},a=t&&t.__generator||function(e,t){var r,n,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(i){return function(s){return function(i){if(r)throw new TypeError("Generator is already executing.");for(;a;)try{if(r=1,n&&(o=2&i[0]?n.return:i[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,i[1])).done)return o;switch(n=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return a.label++,{value:i[1],done:!1};case 5:a.label++,n=i[1],i=[0];continue;case 7:i=a.ops.pop(),a.trys.pop();continue;default:if(!(o=a.trys,(o=o.length>0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]=0&&(t.throttleRetry=!0),t}return e.result}function h(e){if(e&&0==e.status&&"NOTOK"==e.message&&(e.result||"").toLowerCase().indexOf("rate limit")>=0)throw(t=new Error("throttled response")).result=JSON.stringify(e),t.throttleRetry=!0,t;if("2.0"!=e.jsonrpc)throw(t=new Error("invalid response")).result=JSON.stringify(e),t;if(e.error){var t=new Error(e.error.message||"unknown error");throw e.error.code&&(t.code=e.error.code),e.error.data&&(t.data=e.error.data),t}return e.result}function d(e){if("pending"===e)throw new Error("pending not supported");return"latest"===e?e:parseInt(e.substring(2),16)}var p="9D13ZE7XSBTJ94N9BNJ2MA33VMAY2YPIRB";function g(e,t,r){var n=t.message;throw t.code===c.Logger.errors.SERVER_ERROR&&(t.error&&"string"==typeof t.error.message?n=t.error.message:"string"==typeof t.body?n=t.body:"string"==typeof t.responseText&&(n=t.responseText)),(n=(n||"").toLowerCase()).match(/insufficient funds/)&&s.throwError("insufficient funds for intrinsic transaction cost",c.Logger.errors.INSUFFICIENT_FUNDS,{error:t,method:e,transaction:r}),n.match(/same hash was already imported|transaction nonce is too low/)&&s.throwError("nonce has already been used",c.Logger.errors.NONCE_EXPIRED,{error:t,method:e,transaction:r}),n.match(/another transaction with same nonce/)&&s.throwError("replacement fee too low",c.Logger.errors.REPLACEMENT_UNDERPRICED,{error:t,method:e,transaction:r}),n.match(/execution failed due to an exception/)&&s.throwError("cannot estimate gas; transaction may fail or may require manual gas limit",c.Logger.errors.UNPREDICTABLE_GAS_LIMIT,{error:t,method:e,transaction:r}),t}var m=function(e){function t(r,n){var o,i=this.constructor;s.checkNew(i,t);var a="invalid";(o=e.call(this,r)||this).network&&(a=o.network.name);var u=null;switch(a){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 y.defineReadOnly(o,"baseUrl",u),y.defineReadOnly(o,"apiKey",n||p),o}return o(t,e),t.prototype.detectNetwork=function(){return i(this,void 0,void 0,(function(){return a(this,(function(e){return[2,this.network]}))}))},t.prototype.perform=function(t,r){return i(this,void 0,void 0,(function(){var n,o,f,m,v,b,w,_,E,k,P,S=this;return a(this,(function(A){switch(A.label){case 0:switch(n=this.baseUrl,o="",this.apiKey&&(o+="&apikey="+this.apiKey),f=function(e,t){return i(S,void 0,void 0,(function(){var r,n,o=this;return a(this,(function(i){switch(i.label){case 0:return this.emit("debug",{action:"request",request:e,provider:this}),r={url:e,throttleSlotInterval:1e3,throttleCallback:function(e,t){return o.apiKey===p&&Jr.showThrottleMessage(),Promise.resolve(!0)}},[4,Lr.fetchJson(r,null,t||h)];case 1:return n=i.sent(),this.emit("debug",{action:"response",request:e,response:y.deepCopy(n),provider:this}),[2,n]}}))}))},t){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,15];case"getLogs":return[3,19];case"getEtherPrice":return[3,26]}return[3,28];case 1:return[2,f(n+="/api?module=proxy&action=eth_blockNumber"+o)];case 2:return[2,f(n+="/api?module=proxy&action=eth_gasPrice"+o)];case 3:return n+="/api?module=account&action=balance&address="+r.address,n+="&tag="+r.blockTag+o,[2,f(n,l)];case 4:return n+="/api?module=proxy&action=eth_getTransactionCount&address="+r.address,n+="&tag="+r.blockTag+o,[2,f(n)];case 5:return n+="/api?module=proxy&action=eth_getCode&address="+r.address,n+="&tag="+r.blockTag+o,[2,f(n)];case 6:return n+="/api?module=proxy&action=eth_getStorageAt&address="+r.address,n+="&position="+r.position,n+="&tag="+r.blockTag+o,[2,f(n)];case 7:return n+="/api?module=proxy&action=eth_sendRawTransaction&hex="+r.signedTransaction,[2,f(n+=o).catch((function(e){return g("sendTransaction",e,r.signedTransaction)}))];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,f(n+=o)];throw new Error("getBlock by blockHash not implemented");case 9:return n+="/api?module=proxy&action=eth_getTransactionByHash&txhash="+r.transactionHash,[2,f(n+=o)];case 10:return n+="/api?module=proxy&action=eth_getTransactionReceipt&txhash="+r.transactionHash,[2,f(n+=o)];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");n+=o,A.label=12;case 12:return A.trys.push([12,14,,15]),[4,f(n)];case 13:return[2,A.sent()];case 14:return[2,g("call",A.sent(),r.transaction)];case 15:(m=u(r.transaction))&&(m="&"+m),n+="/api?module=proxy&action=eth_estimateGas&"+m,n+=o,A.label=16;case 16:return A.trys.push([16,18,,19]),[4,f(n)];case 17:return[2,A.sent()];case 18:return[2,g("estimateGas",A.sent(),r.transaction)];case 19: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&&s.throwError("unsupported topic count",c.Logger.errors.UNSUPPORTED_OPERATION,{topics:r.filter.topics}),1===r.filter.topics.length&&("string"==typeof(v=r.filter.topics[0])&&66===v.length||s.throwError("unsupported topic format",c.Logger.errors.UNSUPPORTED_OPERATION,{topic0:v}),n+="&topic0="+v)),[4,f(n+=o,l)];case 20:b=A.sent(),w={},_=0,A.label=21;case 21:return _0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]t?null:(n+o)/2}function d(e){if(null===e)return"null";if("number"==typeof e||"boolean"==typeof e)return JSON.stringify(e);if("string"==typeof e)return e;if(g.BigNumber.isBigNumber(e))return e.toString();if(Array.isArray(e))return JSON.stringify(e.map((function(e){return d(e)})));if("object"==typeof e){var t=Object.keys(e);return t.sort(),"{"+t.map((function(t){var r=e[t];return r="function"==typeof r?"[function]":d(r),JSON.stringify(t)+":"+r})).join(",")+"}"}throw new Error("unknown value type: "+typeof e)}var p=1;function m(e){var t=null,r=null,n=new Promise((function(n){t=function(){r&&(clearTimeout(r),r=null),n()},r=setTimeout(t,e)}));return{cancel:t,getPromise:function(){return n},wait:function(e){return n=n.then(e)}}}var v=[c.Logger.errors.CALL_EXCEPTION,c.Logger.errors.INSUFFICIENT_FUNDS,c.Logger.errors.NONCE_EXPIRED,c.Logger.errors.REPLACEMENT_UNDERPRICED,c.Logger.errors.UNPREDICTABLE_GAS_LIMIT],b=["address","args","errorArgs","errorSignature","method","transaction"];function w(e,t){var r={weight:e.weight};return Object.defineProperty(r,"provider",{get:function(){return e.provider}}),e.start&&(r.start=e.start),t&&(r.duration=t-e.start),e.done&&(e.error?r.error=e.error:r.result=e.result||null),r}function _(e,t,r){var n=d;switch(t){case"getBlockNumber":return function(t){var r=t.map((function(e){return e.result})),n=h(t.map((function(e){return e.result})),2);if(null!=n)return n=Math.ceil(n),r.indexOf(n+1)>=0&&n++,n>=e._highestBlockNumber&&(e._highestBlockNumber=n),e._highestBlockNumber};case"getGasPrice":return function(e){var t=e.map((function(e){return e.result}));return t.sort(),t[Math.floor(t.length/2)]};case"getEtherPrice":return function(e){return h(e.map((function(e){return e.result})))};case"getBalance":case"getTransactionCount":case"getCode":case"getStorageAt":case"call":case"estimateGas":case"getLogs":break;case"getTransaction":case"getTransactionReceipt":n=function(e){return null==e?null:((e=y.shallowCopy(e)).confirmations=-1,d(e))};break;case"getBlock":n=r.includeTransactions?function(e){return null==e?null:((e=y.shallowCopy(e)).transactions=e.transactions.map((function(e){return(e=y.shallowCopy(e)).confirmations=-1,e})),d(e))}:function(e){return null==e?null:d(e)};break;default:throw new Error("unknown method: "+t)}return function(e,t){return function(r){var n={};r.forEach((function(t){var r=e(t.result);n[r]||(n[r]={count:0,result:t.result}),n[r].count++}));for(var o=Object.keys(n),i=0;i=t)return a.result}}}(n,e.quorum)}function E(e,t){return i(this,void 0,void 0,(function(){var r;return a(this,(function(n){return null!=(r=e.provider).blockNumber&&r.blockNumber>=t||-1===t?[2,r]:[2,Lr.poll((function(){return new Promise((function(n,o){setTimeout((function(){return r.blockNumber>=t?n(r):e.cancelled?n(null):n(void 0)}),0)}))}),{oncePoll:r})]}))}))}var k=function(e){function t(r,n){var o=this.constructor,i=this;s.checkNew(o,t),0===r.length&&s.throwArgumentError("missing providers","providers",r);var a=r.map((function(e,t){if(Z.Provider.isProvider(e))return Object.freeze({provider:e,weight:1,stallTimeout:750,priority:1});var r=y.shallowCopy(e);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)&&s.throwArgumentError("invalid weight; must be integer in [1, 512]","providers["+t+"].weight",n),Object.freeze(r)})),u=a.reduce((function(e,t){return e+t.weight}),0);null==n?n=u/2:n>u&&s.throwArgumentError("quorum will always fail; larger than total weight","quorum",n);var c=l(a.map((function(e){return e.provider.network})));return null==c&&(c=new Promise((function(e,t){setTimeout((function(){i.detectNetwork().then(e,t)}),0)}))),i=e.call(this,c)||this,y.defineReadOnly(i,"providerConfigs",Object.freeze(a)),y.defineReadOnly(i,"quorum",n),i._highestBlockNumber=-1,i}return o(t,e),t.prototype.detectNetwork=function(){return i(this,void 0,void 0,(function(){return a(this,(function(e){switch(e.label){case 0:return[4,Promise.all(this.providerConfigs.map((function(e){return e.provider.getNetwork()})))];case 1:return[2,l(e.sent())]}}))}))},t.prototype.perform=function(e,t){return i(this,void 0,void 0,(function(){var r,n,o,l,h,d,g,k,P,S,A,M=this;return a(this,(function(x){switch(x.label){case 0:return"sendTransaction"!==e?[3,2]:[4,Promise.all(this.providerConfigs.map((function(e){return e.provider.sendTransaction(t.signedTransaction).then((function(e){return e.hash}),(function(e){return e}))})))];case 1:for(r=x.sent(),n=0;n=S.quorum?void 0!==(A=l(P))?(h.forEach((function(e){e.staller&&e.staller.cancel(),e.cancelled=!0})),[2,{value:A}]):k?[3,4]:[4,m(100).getPromise()]:[3,5];case 3:N.sent(),N.label=4;case 4:k=!1,N.label=5;case 5:return x=h.reduce((function(e,t){if(!t.done||null==t.error)return e;var r=t.error.code;return v.indexOf(r)>=0&&(e[r]||(e[r]={error:t.error,weight:0}),e[r].weight+=t.weight),e}),{}),Object.keys(x).forEach((function(e){var t=x[e];if(!(t.weight256)throw new Error("invalid number type - "+e);return a&&(u=256),t=g.BigNumber.from(t).toTwos(u),f.zeroPad(t,u/8)}if(s=e.match(r)){u=parseInt(s[1]);if(String(u)!==s[1]||0===u||u>32)throw new Error("invalid bytes type - "+e);if(f.arrayify(t).byteLength!==u)throw new Error("invalid value for "+e);return a?f.arrayify((t+"0000000000000000000000000000000000000000000000000000000000000000").substring(0,66)):t}if((s=e.match(o))&&Array.isArray(t)){var c=s[1];if(parseInt(s[2]||String(t.length))!=t.length)throw new Error("invalid value for "+e);var l=[];return t.forEach((function(e){l.push(i(c,e,!0))})),f.concat(l)}throw new Error("invalid type - "+e)}function a(e,t){if(e.length!=t.length)throw new Error("type/value count mismatch");var r=[];return e.forEach((function(e,n){r.push(i(e,t[n]))})),f.hexlify(f.concat(r))}t.pack=a,t.keccak256=function(e,t){return E.keccak256(a(e,t))},t.sha256=function(e,t){return Et.sha256(a(e,t))}}))),fn=(r(ln),ln.pack,ln.keccak256,ln.sha256,n((function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.version="units/5.0.5"}))),hn=(r(fn),fn.version,n((function(e,t){Object.defineProperty(t,"__esModule",{value:!0});var r=new c.Logger(fn.version),n=["wei","kwei","mwei","gwei","szabo","finney","ether"];function o(e,t){if("string"==typeof t){var r=n.indexOf(t);-1!==r&&(t=3*r)}return g.formatFixed(e,null!=t?t:18)}function i(e,t){if("string"==typeof t){var r=n.indexOf(t);-1!==r&&(t=3*r)}return g.parseFixed(e,null!=t?t:18)}t.commify=function(e){var t=String(e).split(".");(t.length>2||!t[0].match(/^-?[0-9]*$/)||t[1]&&!t[1].match(/^[0-9]*$/)||"."===e||"-."===e)&&r.throwArgumentError("invalid value","value",e);var n=t[0],o="";for("-"===n.substring(0,1)&&(o="-",n=n.substring(1));"0"===n.substring(0,1);)n=n.substring(1);""===n&&(n="0");var i="";for(2===t.length&&(i="."+(t[1]||"0"));i.length>2&&"0"===i[i.length-1];)i=i.substring(0,i.length-1);for(var a=[];n.length;){if(n.length<=3){a.unshift(n);break}var s=n.length-3;a.unshift(n.substring(s)),n=n.substring(0,s)}return o+a.join(",")+i},t.formatUnits=o,t.parseUnits=i,t.formatEther=function(e){return o(e,18)},t.parseEther=function(e){return i(e,18)}}))),dn=(r(hn),hn.commify,hn.formatUnits,hn.parseUnits,hn.formatEther,hn.parseEther,n((function(e,r){var n=t&&t.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};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=A.getAddress,r.getCreate2Address=A.getCreate2Address,r.getContractAddress=A.getContractAddress,r.getIcapAddress=A.getIcapAddress,r.isAddress=A.isAddress;var o=n(Br);r.base64=o,r.base58=ee.Base58,r.arrayify=f.arrayify,r.concat=f.concat,r.hexDataSlice=f.hexDataSlice,r.hexDataLength=f.hexDataLength,r.hexlify=f.hexlify,r.hexStripZeros=f.hexStripZeros,r.hexValue=f.hexValue,r.hexZeroPad=f.hexZeroPad,r.isBytes=f.isBytes,r.isBytesLike=f.isBytesLike,r.isHexString=f.isHexString,r.joinSignature=f.joinSignature,r.zeroPad=f.zeroPad,r.splitSignature=f.splitSignature,r.stripZeros=f.stripZeros,r.hashMessage=q.hashMessage,r.id=q.id,r.isValidName=q.isValidName,r.namehash=q.namehash,r.defaultPath=vr.defaultPath,r.entropyToMnemonic=vr.entropyToMnemonic,r.HDNode=vr.HDNode,r.isValidMnemonic=vr.isValidMnemonic,r.mnemonicToEntropy=vr.mnemonicToEntropy,r.mnemonicToSeed=vr.mnemonicToSeed,r.getJsonWalletAddress=Nr.getJsonWalletAddress,r.keccak256=E.keccak256,r.Logger=c.Logger,r.computeHmac=Et.computeHmac,r.ripemd160=Et.ripemd160,r.sha256=Et.sha256,r.sha512=Et.sha512,r.solidityKeccak256=ln.keccak256,r.solidityPack=ln.pack,r.soliditySha256=ln.sha256,r.randomBytes=_r.randomBytes,r.shuffled=_r.shuffled,r.checkProperties=y.checkProperties,r.deepCopy=y.deepCopy,r.defineReadOnly=y.defineReadOnly,r.getStatic=y.getStatic,r.resolveProperties=y.resolveProperties,r.shallowCopy=y.shallowCopy;var i=n(P);r.RLP=i,r.computePublicKey=lr.computePublicKey,r.recoverPublicKey=lr.recoverPublicKey,r.SigningKey=lr.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=hr.computeAddress,r.parseTransaction=hr.parse,r.recoverAddress=hr.recoverAddress,r.serializeTransaction=hr.serialize,r.commify=hn.commify,r.formatEther=hn.formatEther,r.parseEther=hn.parseEther,r.formatUnits=hn.formatUnits,r.parseUnits=hn.parseUnits,r.verifyMessage=Rr.verifyMessage,r._fetchData=Lr._fetchData,r.fetchJson=Lr.fetchJson,r.poll=Lr.poll;var a=Et;r.SupportedAlgorithm=a.SupportedAlgorithm;var s=D;r.UnicodeNormalizationForm=s.UnicodeNormalizationForm,r.Utf8ErrorReason=s.Utf8ErrorReason}))),pn=(r(dn),dn.AbiCoder,dn.checkResultErrors,dn.defaultAbiCoder,dn.EventFragment,dn.FormatTypes,dn.Fragment,dn.FunctionFragment,dn.Indexed,dn.Interface,dn.LogDescription,dn.ParamType,dn.TransactionDescription,dn.getAddress,dn.getCreate2Address,dn.getContractAddress,dn.getIcapAddress,dn.isAddress,dn.base64,dn.base58,dn.arrayify,dn.concat,dn.hexDataSlice,dn.hexDataLength,dn.hexlify,dn.hexStripZeros,dn.hexValue,dn.hexZeroPad,dn.isBytes,dn.isBytesLike,dn.isHexString,dn.joinSignature,dn.zeroPad,dn.splitSignature,dn.stripZeros,dn.hashMessage,dn.id,dn.isValidName,dn.namehash,dn.defaultPath,dn.entropyToMnemonic,dn.HDNode,dn.isValidMnemonic,dn.mnemonicToEntropy,dn.mnemonicToSeed,dn.getJsonWalletAddress,dn.keccak256,dn.Logger,dn.computeHmac,dn.ripemd160,dn.sha256,dn.sha512,dn.solidityKeccak256,dn.solidityPack,dn.soliditySha256,dn.randomBytes,dn.shuffled,dn.checkProperties,dn.deepCopy,dn.defineReadOnly,dn.getStatic,dn.resolveProperties,dn.shallowCopy,dn.RLP,dn.computePublicKey,dn.recoverPublicKey,dn.SigningKey,dn.formatBytes32String,dn.nameprep,dn.parseBytes32String,dn._toEscapedUtf8String,dn.toUtf8Bytes,dn.toUtf8CodePoints,dn.toUtf8String,dn.Utf8ErrorFuncs,dn.computeAddress,dn.parseTransaction,dn.recoverAddress,dn.serializeTransaction,dn.commify,dn.formatEther,dn.parseEther,dn.formatUnits,dn.parseUnits,dn.verifyMessage,dn._fetchData,dn.fetchJson,dn.poll,dn.SupportedAlgorithm,dn.UnicodeNormalizationForm,dn.Utf8ErrorReason,n((function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.version="ethers/5.0.15"}))),gn=(r(pn),pn.version,n((function(e,r){var n=t&&t.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(r,"__esModule",{value:!0}),r.Contract=Y.Contract,r.ContractFactory=Y.ContractFactory,r.BigNumber=g.BigNumber,r.FixedNumber=g.FixedNumber,r.Signer=$.Signer,r.VoidSigner=$.VoidSigner,r.Wallet=Rr.Wallet;var o=n(B);r.constants=o;var i=n(cn);r.providers=i;var a=cn;r.getDefaultProvider=a.getDefaultProvider,r.Wordlist=mr.Wordlist,r.wordlists=mr.wordlists;var s=n(dn);r.utils=s,r.errors=c.ErrorCode,r.version=pn.version;var u=new c.Logger(pn.version);r.logger=u}))),mn=(r(gn),gn.Contract,gn.ContractFactory,gn.BigNumber,gn.FixedNumber,gn.Signer,gn.VoidSigner,gn.Wallet,gn.constants,gn.providers,gn.getDefaultProvider,gn.Wordlist,gn.wordlists,gn.utils,gn.errors,gn.version,gn.logger,n((function(e,r){var n=t&&t.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(r,"__esModule",{value:!0});var o=n(gn);r.ethers=o;try{var i=window;null==i._ethers&&(i._ethers=o)}catch(e){}var a=gn;r.Signer=a.Signer,r.Wallet=a.Wallet,r.VoidSigner=a.VoidSigner,r.getDefaultProvider=a.getDefaultProvider,r.providers=a.providers,r.Contract=a.Contract,r.ContractFactory=a.ContractFactory,r.BigNumber=a.BigNumber,r.FixedNumber=a.FixedNumber,r.constants=a.constants,r.errors=a.errors,r.logger=a.logger,r.utils=a.utils,r.wordlists=a.wordlists,r.version=a.version,r.Wordlist=a.Wordlist}))),yn=r(mn),vn=mn.ethers,bn=mn.Signer,wn=mn.Wallet,_n=mn.VoidSigner,En=mn.getDefaultProvider,kn=mn.providers,Pn=mn.Contract,Sn=mn.ContractFactory,An=mn.BigNumber,Mn=mn.FixedNumber,xn=mn.constants,Nn=mn.errors,On=mn.logger,Rn=mn.utils,Tn=mn.wordlists,Cn=mn.version,Bn=mn.Wordlist;e.BigNumber=An,e.Contract=Pn,e.ContractFactory=Sn,e.FixedNumber=Mn,e.Signer=bn,e.VoidSigner=_n,e.Wallet=wn,e.Wordlist=Bn,e.constants=xn,e.default=yn,e.errors=Nn,e.ethers=vn,e.getDefaultProvider=En,e.logger=On,e.providers=kn,e.utils=Rn,e.version=Cn,e.wordlists=Tn,Object.defineProperty(e,"__esModule",{value:!0})}));