@eluvio/elv-client-js 3.2.5 → 3.2.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -62,7 +62,7 @@ var a=n(12),r=n(13),A=n(14);function i(){return s.TYPED_ARRAY_SUPPORT?2147483647
|
|
|
62
62
|
* @author Chen, Yi-Cyuan [emn178@gmail.com]
|
|
63
63
|
* @copyright Chen, Yi-Cyuan 2015-2016
|
|
64
64
|
* @license MIT
|
|
65
|
-
*/!function(){"use strict";var n="object"===("undefined"==typeof window?"undefined":t(window))?window:{};!n.JS_SHA3_NO_NODE_JS&&"object"===("undefined"==typeof process?"undefined":t(process))&&process.versions&&process.versions.node&&(n=global);for(var a=!n.JS_SHA3_NO_COMMON_JS&&"object"===t(e)&&e.exports,r="0123456789abcdef".split(""),A=[0,8,16,24],i=[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],o=[224,256,384,512],s=["hex","buffer","arrayBuffer","array"],p=function(e,t,n){return function(a){return new C(e,t,e).update(a)[n]()}},u=function(e,t,n){return function(a,r){return new C(e,t,r).update(a)[n]()}},c=function(e,t){var n=p(e,t,"hex");n.create=function(){return new C(e,t,e)},n.update=function(e){return n.create().update(e)};for(var a=0;a<s.length;++a){var r=s[a];n[r]=p(e,t,r)}return n},d=[{name:"keccak",padding:[1,256,65536,16777216],bits:o,createMethod:c},{name:"sha3",padding:[6,1536,393216,100663296],bits:o,createMethod:c},{name:"shake",padding:[31,7936,2031616,520093696],bits:[128,256],createMethod:function(e,t){var n=u(e,t,"hex");n.create=function(n){return new C(e,t,n)},n.update=function(e,t){return n.create(t).update(e)};for(var a=0;a<s.length;++a){var r=s[a];n[r]=u(e,t,r)}return n}}],l={},g=[],I=0;I<d.length;++I)for(var f=d[I],h=f.bits,y=0;y<h.length;++y){var m=f.name+"_"+h[y];g.push(m),l[m]=f.createMethod(h[y],f.padding)}function C(e,t,n){this.blocks=[],this.s=[],this.padding=t,this.outputBits=n,this.reset=!0,this.block=0,this.start=0,this.blockCount=1600-(e<<1)>>5,this.byteCount=this.blockCount<<2,this.outputBlocks=n>>5,this.extraBytes=(31&n)>>3;for(var a=0;a<50;++a)this.s[a]=0}C.prototype.update=function(e){var t="string"!=typeof e;t&&e.constructor===ArrayBuffer&&(e=new Uint8Array(e));for(var n,a,r=e.length,i=this.blocks,o=this.byteCount,s=this.blockCount,p=0,u=this.s;p<r;){if(this.reset)for(this.reset=!1,i[0]=this.block,n=1;n<s+1;++n)i[n]=0;if(t)for(n=this.start;p<r&&n<o;++p)i[n>>2]|=e[p]<<A[3&n++];else for(n=this.start;p<r&&n<o;++p)(a=e.charCodeAt(p))<128?i[n>>2]|=a<<A[3&n++]:a<2048?(i[n>>2]|=(192|a>>6)<<A[3&n++],i[n>>2]|=(128|63&a)<<A[3&n++]):a<55296||a>=57344?(i[n>>2]|=(224|a>>12)<<A[3&n++],i[n>>2]|=(128|a>>6&63)<<A[3&n++],i[n>>2]|=(128|63&a)<<A[3&n++]):(a=65536+((1023&a)<<10|1023&e.charCodeAt(++p)),i[n>>2]|=(240|a>>18)<<A[3&n++],i[n>>2]|=(128|a>>12&63)<<A[3&n++],i[n>>2]|=(128|a>>6&63)<<A[3&n++],i[n>>2]|=(128|63&a)<<A[3&n++]);if(this.lastByteIndex=n,n>=o){for(this.start=n-o,this.block=i[s],n=0;n<s;++n)u[n]^=i[n];B(u),this.reset=!0}else this.start=n}return this},C.prototype.finalize=function(){var e=this.blocks,t=this.lastByteIndex,n=this.blockCount,a=this.s;if(e[t>>2]|=this.padding[3&t],this.lastByteIndex===this.byteCount)for(e[0]=e[n],t=1;t<n+1;++t)e[t]=0;for(e[n-1]|=2147483648,t=0;t<n;++t)a[t]^=e[t];B(a)},C.prototype.toString=C.prototype.hex=function(){this.finalize();for(var e,t=this.blockCount,n=this.s,a=this.outputBlocks,A=this.extraBytes,i=0,o=0,s="";o<a;){for(i=0;i<t&&o<a;++i,++o)e=n[i],s+=r[e>>4&15]+r[15&e]+r[e>>12&15]+r[e>>8&15]+r[e>>20&15]+r[e>>16&15]+r[e>>28&15]+r[e>>24&15];o%t==0&&(B(n),i=0)}return A&&(e=n[i],A>0&&(s+=r[e>>4&15]+r[15&e]),A>1&&(s+=r[e>>12&15]+r[e>>8&15]),A>2&&(s+=r[e>>20&15]+r[e>>16&15])),s},C.prototype.arrayBuffer=function(){this.finalize();var e,t=this.blockCount,n=this.s,a=this.outputBlocks,r=this.extraBytes,A=0,i=0,o=this.outputBits>>3;e=r?new ArrayBuffer(a+1<<2):new ArrayBuffer(o);for(var s=new Uint32Array(e);i<a;){for(A=0;A<t&&i<a;++A,++i)s[i]=n[A];i%t==0&&B(n)}return r&&(s[A]=n[A],e=e.slice(0,o)),e},C.prototype.buffer=C.prototype.arrayBuffer,C.prototype.digest=C.prototype.array=function(){this.finalize();for(var e,t,n=this.blockCount,a=this.s,r=this.outputBlocks,A=this.extraBytes,i=0,o=0,s=[];o<r;){for(i=0;i<n&&o<r;++i,++o)e=o<<2,t=a[i],s[e]=255&t,s[e+1]=t>>8&255,s[e+2]=t>>16&255,s[e+3]=t>>24&255;o%n==0&&B(a)}return A&&(e=o<<2,t=a[i],A>0&&(s[e]=255&t),A>1&&(s[e+1]=t>>8&255),A>2&&(s[e+2]=t>>16&255)),s};var B=function(e){var t,n,a,r,A,o,s,p,u,c,d,l,g,I,f,h,y,m,C,B,E,b,Q,v,w,D,M,S,k,x,R,F,N,_,T,H,L,G,U,O,P,Y,J,j,K,q,V,z,Z,X,W,$,ee,te,ne,ae,re,Ae,ie,oe,se,pe,ue;for(a=0;a<48;a+=2)r=e[0]^e[10]^e[20]^e[30]^e[40],A=e[1]^e[11]^e[21]^e[31]^e[41],o=e[2]^e[12]^e[22]^e[32]^e[42],s=e[3]^e[13]^e[23]^e[33]^e[43],p=e[4]^e[14]^e[24]^e[34]^e[44],u=e[5]^e[15]^e[25]^e[35]^e[45],c=e[6]^e[16]^e[26]^e[36]^e[46],d=e[7]^e[17]^e[27]^e[37]^e[47],t=(l=e[8]^e[18]^e[28]^e[38]^e[48])^(o<<1|s>>>31),n=(g=e[9]^e[19]^e[29]^e[39]^e[49])^(s<<1|o>>>31),e[0]^=t,e[1]^=n,e[10]^=t,e[11]^=n,e[20]^=t,e[21]^=n,e[30]^=t,e[31]^=n,e[40]^=t,e[41]^=n,t=r^(p<<1|u>>>31),n=A^(u<<1|p>>>31),e[2]^=t,e[3]^=n,e[12]^=t,e[13]^=n,e[22]^=t,e[23]^=n,e[32]^=t,e[33]^=n,e[42]^=t,e[43]^=n,t=o^(c<<1|d>>>31),n=s^(d<<1|c>>>31),e[4]^=t,e[5]^=n,e[14]^=t,e[15]^=n,e[24]^=t,e[25]^=n,e[34]^=t,e[35]^=n,e[44]^=t,e[45]^=n,t=p^(l<<1|g>>>31),n=u^(g<<1|l>>>31),e[6]^=t,e[7]^=n,e[16]^=t,e[17]^=n,e[26]^=t,e[27]^=n,e[36]^=t,e[37]^=n,e[46]^=t,e[47]^=n,t=c^(r<<1|A>>>31),n=d^(A<<1|r>>>31),e[8]^=t,e[9]^=n,e[18]^=t,e[19]^=n,e[28]^=t,e[29]^=n,e[38]^=t,e[39]^=n,e[48]^=t,e[49]^=n,I=e[0],f=e[1],q=e[11]<<4|e[10]>>>28,V=e[10]<<4|e[11]>>>28,S=e[20]<<3|e[21]>>>29,k=e[21]<<3|e[20]>>>29,oe=e[31]<<9|e[30]>>>23,se=e[30]<<9|e[31]>>>23,Y=e[40]<<18|e[41]>>>14,J=e[41]<<18|e[40]>>>14,_=e[2]<<1|e[3]>>>31,T=e[3]<<1|e[2]>>>31,h=e[13]<<12|e[12]>>>20,y=e[12]<<12|e[13]>>>20,z=e[22]<<10|e[23]>>>22,Z=e[23]<<10|e[22]>>>22,x=e[33]<<13|e[32]>>>19,R=e[32]<<13|e[33]>>>19,pe=e[42]<<2|e[43]>>>30,ue=e[43]<<2|e[42]>>>30,te=e[5]<<30|e[4]>>>2,ne=e[4]<<30|e[5]>>>2,H=e[14]<<6|e[15]>>>26,L=e[15]<<6|e[14]>>>26,m=e[25]<<11|e[24]>>>21,C=e[24]<<11|e[25]>>>21,X=e[34]<<15|e[35]>>>17,W=e[35]<<15|e[34]>>>17,F=e[45]<<29|e[44]>>>3,N=e[44]<<29|e[45]>>>3,v=e[6]<<28|e[7]>>>4,w=e[7]<<28|e[6]>>>4,ae=e[17]<<23|e[16]>>>9,re=e[16]<<23|e[17]>>>9,G=e[26]<<25|e[27]>>>7,U=e[27]<<25|e[26]>>>7,B=e[36]<<21|e[37]>>>11,E=e[37]<<21|e[36]>>>11,$=e[47]<<24|e[46]>>>8,ee=e[46]<<24|e[47]>>>8,j=e[8]<<27|e[9]>>>5,K=e[9]<<27|e[8]>>>5,D=e[18]<<20|e[19]>>>12,M=e[19]<<20|e[18]>>>12,Ae=e[29]<<7|e[28]>>>25,ie=e[28]<<7|e[29]>>>25,O=e[38]<<8|e[39]>>>24,P=e[39]<<8|e[38]>>>24,b=e[48]<<14|e[49]>>>18,Q=e[49]<<14|e[48]>>>18,e[0]=I^~h&m,e[1]=f^~y&C,e[10]=v^~D&S,e[11]=w^~M&k,e[20]=_^~H&G,e[21]=T^~L&U,e[30]=j^~q&z,e[31]=K^~V&Z,e[40]=te^~ae&Ae,e[41]=ne^~re&ie,e[2]=h^~m&B,e[3]=y^~C&E,e[12]=D^~S&x,e[13]=M^~k&R,e[22]=H^~G&O,e[23]=L^~U&P,e[32]=q^~z&X,e[33]=V^~Z&W,e[42]=ae^~Ae&oe,e[43]=re^~ie&se,e[4]=m^~B&b,e[5]=C^~E&Q,e[14]=S^~x&F,e[15]=k^~R&N,e[24]=G^~O&Y,e[25]=U^~P&J,e[34]=z^~X&$,e[35]=Z^~W&ee,e[44]=Ae^~oe&pe,e[45]=ie^~se&ue,e[6]=B^~b&I,e[7]=E^~Q&f,e[16]=x^~F&v,e[17]=R^~N&w,e[26]=O^~Y&_,e[27]=P^~J&T,e[36]=X^~$&j,e[37]=W^~ee&K,e[46]=oe^~pe&te,e[47]=se^~ue&ne,e[8]=b^~I&h,e[9]=Q^~f&y,e[18]=F^~v&D,e[19]=N^~w&M,e[28]=Y^~_&H,e[29]=J^~T&L,e[38]=$^~j&q,e[39]=ee^~K&V,e[48]=pe^~te&ae,e[49]=ue^~ne&re,e[0]^=i[a],e[1]^=i[a+1]};if(a)e.exports=l;else for(I=0;I<g.length;++I)n[g[I]]=l[g[I]]}()}).call(this,n(13)(e))},function(e,t,n){"use strict";var a,r=this&&this.__extends||(a=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])},function(e,t){function n(){this.constructor=e}a(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}),A=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});var i=n(1),o=n(35),s=n(48),p=n(115),u=n(22),c=n(3),d=n(72),l=A(n(197)),g=n(73),I=n(52),f=n(47),h=n(40),y=A(n(0)),m=function(e){function t(n,a){var r=e.call(this)||this;return y.checkNew(r,t),g.SigningKey.isSigningKey(n)?c.defineReadOnly(r,"signingKey",n):c.defineReadOnly(r,"signingKey",new g.SigningKey(n)),c.defineReadOnly(r,"provider",a),r}return r(t,e),Object.defineProperty(t.prototype,"address",{get:function(){return this.signingKey.address},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"mnemonic",{get:function(){return this.signingKey.mnemonic},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"path",{get:function(){return this.signingKey.path},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"privateKey",{get:function(){return this.signingKey.privateKey},enumerable:!0,configurable:!0}),t.prototype.connect=function(e){return h.Provider.isProvider(e)||y.throwError("invalid provider",y.INVALID_ARGUMENT,{argument:"provider",value:e}),new t(this.signingKey,e)},t.prototype.getAddress=function(){return Promise.resolve(this.address)},t.prototype.sign=function(e){var t=this;return c.resolveProperties(e).then((function(e){var n=I.serialize(e),a=t.signingKey.signDigest(u.keccak256(n));return I.serialize(e,a)}))},t.prototype.signMessage=function(e){return Promise.resolve(i.joinSignature(this.signingKey.signDigest(o.hashMessage(e))))},t.prototype.getBalance=function(e){if(!this.provider)throw new Error("missing provider");return this.provider.getBalance(this.address,e)},t.prototype.getTransactionCount=function(e){if(!this.provider)throw new Error("missing provider");return this.provider.getTransactionCount(this.address,e)},t.prototype.sendTransaction=function(e){var t=this;if(!this.provider)throw new Error("missing provider");return null==e.nonce&&((e=c.shallowCopy(e)).nonce=this.getTransactionCount("pending")),I.populateTransaction(e,this.provider,this.address).then((function(e){return t.sign(e).then((function(e){return t.provider.sendTransaction(e)}))}))},t.prototype.encrypt=function(e,t,n){if("function"!=typeof t||n||(n=t,t={}),n&&"function"!=typeof n)throw new Error("invalid callback");return t||(t={}),this.mnemonic&&((t=c.shallowCopy(t)).mnemonic=this.mnemonic,t.path=this.path),l.encrypt(this.privateKey,e,t,n)},t.createRandom=function(e){var n=d.randomBytes(16);e||(e={}),e.extraEntropy&&(n=i.arrayify(u.keccak256(i.concat([n,e.extraEntropy])).substring(0,34)));var a=s.entropyToMnemonic(n,e.locale);return t.fromMnemonic(a,e.path,e.locale)},t.fromEncryptedJson=function(e,n,a){if(p.isCrowdsaleWallet(e))try{a&&a(0);var r=l.decryptCrowdsale(e,n);return a&&a(1),Promise.resolve(new t(r))}catch(e){return Promise.reject(e)}else if(p.isSecretStorageWallet(e))return l.decrypt(e,n,a).then((function(e){return new t(e)}));return Promise.reject("invalid wallet JSON")},t.fromMnemonic=function(e,n,a){return n||(n=s.defaultPath),new t(s.fromMnemonic(e,a).derivePath(n))},t}(f.Signer);t.Wallet=m},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var a=n(1),r=n(3),A=function(){function e(e){r.defineReadOnly(this,"alphabet",e),r.defineReadOnly(this,"base",e.length),r.defineReadOnly(this,"_alphabetMap",{}),r.defineReadOnly(this,"_leader",e.charAt(0));for(var t=0;t<e.length;t++)this._alphabetMap[e.charAt(t)]=t}return e.prototype.encode=function(e){var t=a.arrayify(e);if(0===t.length)return"";for(var n=[0],r=0;r<t.length;++r){for(var A=t[r],i=0;i<n.length;++i)A+=n[i]<<8,n[i]=A%this.base,A=A/this.base|0;for(;A>0;)n.push(A%this.base),A=A/this.base|0}for(var o="",s=0;0===t[s]&&s<t.length-1;++s)o+=this._leader;for(var p=n.length-1;p>=0;--p)o+=this.alphabet[n[p]];return o},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 n=0;n<e.length;n++){var r=this._alphabetMap[e[n]];if(void 0===r)throw new Error("Non-base"+this.base+" character");for(var A=r,i=0;i<t.length;++i)A+=t[i]*this.base,t[i]=255&A,A>>=8;for(;A>0;)t.push(255&A),A>>=8}for(var o=0;e[o]===this._leader&&o<e.length-1;++o)t.push(0);return a.arrayify(new Uint8Array(t.reverse()))},e}();t.BaseX=A;var i=new A("abcdefghijklmnopqrstuvwxyz234567");t.Base32=i;var o=new A("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz");t.Base58=o},function(e){e.exports=JSON.parse('{"_from":"elliptic@6.5.4","_id":"elliptic@6.5.4","_inBundle":false,"_integrity":"sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==","_location":"/elliptic","_phantomChildren":{},"_requested":{"type":"version","registry":true,"raw":"elliptic@6.5.4","name":"elliptic","escapedName":"elliptic","rawSpec":"6.5.4","saveSpec":null,"fetchSpec":"6.5.4"},"_requiredBy":["/@ethersproject/signing-key","/bitcore-lib","/browserify-sign","/create-ecdh","/eth-lib","/ethers","/secp256k1","/swarm-js/eth-lib","/tiny-secp256k1"],"_resolved":"https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz","_shasum":"da37cebd31e79a1367e941b592ed1fbebd58abbb","_spec":"elliptic@6.5.4","_where":"/Users/kevin/dev/elv-client-js/node_modules/ethers","author":{"name":"Fedor Indutny","email":"fedor@indutny.com"},"bugs":{"url":"https://github.com/indutny/elliptic/issues"},"bundleDependencies":false,"dependencies":{"bn.js":"^4.11.9","brorand":"^1.1.0","hash.js":"^1.0.0","hmac-drbg":"^1.0.1","inherits":"^2.0.4","minimalistic-assert":"^1.0.1","minimalistic-crypto-utils":"^1.0.1"},"deprecated":false,"description":"EC cryptography","devDependencies":{"brfs":"^2.0.2","coveralls":"^3.1.0","eslint":"^7.6.0","grunt":"^1.2.1","grunt-browserify":"^5.3.0","grunt-cli":"^1.3.2","grunt-contrib-connect":"^3.0.0","grunt-contrib-copy":"^1.0.0","grunt-contrib-uglify":"^5.0.0","grunt-mocha-istanbul":"^5.0.2","grunt-saucelabs":"^9.0.1","istanbul":"^0.4.5","mocha":"^8.0.1"},"files":["lib"],"homepage":"https://github.com/indutny/elliptic","keywords":["EC","Elliptic","curve","Cryptography"],"license":"MIT","main":"lib/elliptic.js","name":"elliptic","repository":{"type":"git","url":"git+ssh://git@github.com/indutny/elliptic.git"},"scripts":{"lint":"eslint lib test","lint:fix":"npm run lint -- --fix","test":"npm run lint && npm run unit","unit":"istanbul test _mocha --reporter=spec test/index.js","version":"grunt dist && git add dist/"},"version":"6.5.4"}')},function(e,t,n){"use strict";var a=n(14),r=n(7),A=n(4),i=n(50),o=a.assert;function s(e){i.call(this,"short",e),this.a=new r(e.a,16).toRed(this.red),this.b=new r(e.b,16).toRed(this.red),this.tinv=this.two.redInvm(),this.zeroA=0===this.a.fromRed().cmpn(0),this.threeA=0===this.a.fromRed().sub(this.p).cmpn(-3),this.endo=this._getEndomorphism(e),this._endoWnafT1=new Array(4),this._endoWnafT2=new Array(4)}function p(e,t,n,a){i.BasePoint.call(this,e,"affine"),null===t&&null===n?(this.x=null,this.y=null,this.inf=!0):(this.x=new r(t,16),this.y=new r(n,16),a&&(this.x.forceRed(this.curve.red),this.y.forceRed(this.curve.red)),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.y.red||(this.y=this.y.toRed(this.curve.red)),this.inf=!1)}function u(e,t,n,a){i.BasePoint.call(this,e,"jacobian"),null===t&&null===n&&null===a?(this.x=this.curve.one,this.y=this.curve.one,this.z=new r(0)):(this.x=new r(t,16),this.y=new r(n,16),this.z=new r(a,16)),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.y.red||(this.y=this.y.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)),this.zOne=this.z===this.curve.one}A(s,i),e.exports=s,s.prototype._getEndomorphism=function(e){if(this.zeroA&&this.g&&this.n&&1===this.p.modn(3)){var t,n;if(e.beta)t=new r(e.beta,16).toRed(this.red);else{var a=this._getEndoRoots(this.p);t=(t=a[0].cmp(a[1])<0?a[0]:a[1]).toRed(this.red)}if(e.lambda)n=new r(e.lambda,16);else{var A=this._getEndoRoots(this.n);0===this.g.mul(A[0]).x.cmp(this.g.x.redMul(t))?n=A[0]:(n=A[1],o(0===this.g.mul(n).x.cmp(this.g.x.redMul(t))))}return{beta:t,lambda:n,basis:e.basis?e.basis.map((function(e){return{a:new r(e.a,16),b:new r(e.b,16)}})):this._getEndoBasis(n)}}},s.prototype._getEndoRoots=function(e){var t=e===this.p?this.red:r.mont(e),n=new r(2).toRed(t).redInvm(),a=n.redNeg(),A=new r(3).toRed(t).redNeg().redSqrt().redMul(n);return[a.redAdd(A).fromRed(),a.redSub(A).fromRed()]},s.prototype._getEndoBasis=function(e){for(var t,n,a,A,i,o,s,p,u,c=this.n.ushrn(Math.floor(this.n.bitLength()/2)),d=e,l=this.n.clone(),g=new r(1),I=new r(0),f=new r(0),h=new r(1),y=0;0!==d.cmpn(0);){var m=l.div(d);p=l.sub(m.mul(d)),u=f.sub(m.mul(g));var C=h.sub(m.mul(I));if(!a&&p.cmp(c)<0)t=s.neg(),n=g,a=p.neg(),A=u;else if(a&&2==++y)break;s=p,l=d,d=p,f=g,g=u,h=I,I=C}i=p.neg(),o=u;var B=a.sqr().add(A.sqr());return i.sqr().add(o.sqr()).cmp(B)>=0&&(i=t,o=n),a.negative&&(a=a.neg(),A=A.neg()),i.negative&&(i=i.neg(),o=o.neg()),[{a:a,b:A},{a:i,b:o}]},s.prototype._endoSplit=function(e){var t=this.endo.basis,n=t[0],a=t[1],r=a.b.mul(e).divRound(this.n),A=n.b.neg().mul(e).divRound(this.n),i=r.mul(n.a),o=A.mul(a.a),s=r.mul(n.b),p=A.mul(a.b);return{k1:e.sub(i).sub(o),k2:s.add(p).neg()}},s.prototype.pointFromX=function(e,t){(e=new r(e,16)).red||(e=e.toRed(this.red));var n=e.redSqr().redMul(e).redIAdd(e.redMul(this.a)).redIAdd(this.b),a=n.redSqrt();if(0!==a.redSqr().redSub(n).cmp(this.zero))throw new Error("invalid point");var A=a.fromRed().isOdd();return(t&&!A||!t&&A)&&(a=a.redNeg()),this.point(e,a)},s.prototype.validate=function(e){if(e.inf)return!0;var t=e.x,n=e.y,a=this.a.redMul(t),r=t.redSqr().redMul(t).redIAdd(a).redIAdd(this.b);return 0===n.redSqr().redISub(r).cmpn(0)},s.prototype._endoWnafMulAdd=function(e,t,n){for(var a=this._endoWnafT1,r=this._endoWnafT2,A=0;A<e.length;A++){var i=this._endoSplit(t[A]),o=e[A],s=o._getBeta();i.k1.negative&&(i.k1.ineg(),o=o.neg(!0)),i.k2.negative&&(i.k2.ineg(),s=s.neg(!0)),a[2*A]=o,a[2*A+1]=s,r[2*A]=i.k1,r[2*A+1]=i.k2}for(var p=this._wnafMulAdd(1,a,r,2*A,n),u=0;u<2*A;u++)a[u]=null,r[u]=null;return p},A(p,i.BasePoint),s.prototype.point=function(e,t,n){return new p(this,e,t,n)},s.prototype.pointFromJSON=function(e,t){return p.fromJSON(this,e,t)},p.prototype._getBeta=function(){if(this.curve.endo){var e=this.precomputed;if(e&&e.beta)return e.beta;var t=this.curve.point(this.x.redMul(this.curve.endo.beta),this.y);if(e){var n=this.curve,a=function(e){return n.point(e.x.redMul(n.endo.beta),e.y)};e.beta=t,t.precomputed={beta:null,naf:e.naf&&{wnd:e.naf.wnd,points:e.naf.points.map(a)},doubles:e.doubles&&{step:e.doubles.step,points:e.doubles.points.map(a)}}}return t}},p.prototype.toJSON=function(){return this.precomputed?[this.x,this.y,this.precomputed&&{doubles:this.precomputed.doubles&&{step:this.precomputed.doubles.step,points:this.precomputed.doubles.points.slice(1)},naf:this.precomputed.naf&&{wnd:this.precomputed.naf.wnd,points:this.precomputed.naf.points.slice(1)}}]:[this.x,this.y]},p.fromJSON=function(e,t,n){"string"==typeof t&&(t=JSON.parse(t));var a=e.point(t[0],t[1],n);if(!t[2])return a;function r(t){return e.point(t[0],t[1],n)}var A=t[2];return a.precomputed={beta:null,doubles:A.doubles&&{step:A.doubles.step,points:[a].concat(A.doubles.points.map(r))},naf:A.naf&&{wnd:A.naf.wnd,points:[a].concat(A.naf.points.map(r))}},a},p.prototype.inspect=function(){return this.isInfinity()?"<EC Point Infinity>":"<EC Point x: "+this.x.fromRed().toString(16,2)+" y: "+this.y.fromRed().toString(16,2)+">"},p.prototype.isInfinity=function(){return this.inf},p.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 n=t.redSqr().redISub(this.x).redISub(e.x),a=t.redMul(this.x.redSub(n)).redISub(this.y);return this.curve.point(n,a)},p.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,n=this.x.redSqr(),a=e.redInvm(),r=n.redAdd(n).redIAdd(n).redIAdd(t).redMul(a),A=r.redSqr().redISub(this.x.redAdd(this.x)),i=r.redMul(this.x.redSub(A)).redISub(this.y);return this.curve.point(A,i)},p.prototype.getX=function(){return this.x.fromRed()},p.prototype.getY=function(){return this.y.fromRed()},p.prototype.mul=function(e){return e=new r(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)},p.prototype.mulAdd=function(e,t,n){var a=[this,t],r=[e,n];return this.curve.endo?this.curve._endoWnafMulAdd(a,r):this.curve._wnafMulAdd(1,a,r,2)},p.prototype.jmulAdd=function(e,t,n){var a=[this,t],r=[e,n];return this.curve.endo?this.curve._endoWnafMulAdd(a,r,!0):this.curve._wnafMulAdd(1,a,r,2,!0)},p.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))},p.prototype.neg=function(e){if(this.inf)return this;var t=this.curve.point(this.x,this.y.redNeg());if(e&&this.precomputed){var n=this.precomputed,a=function(e){return e.neg()};t.precomputed={naf:n.naf&&{wnd:n.naf.wnd,points:n.naf.points.map(a)},doubles:n.doubles&&{step:n.doubles.step,points:n.doubles.points.map(a)}}}return t},p.prototype.toJ=function(){return this.inf?this.curve.jpoint(null,null,null):this.curve.jpoint(this.x,this.y,this.curve.one)},A(u,i.BasePoint),s.prototype.jpoint=function(e,t,n){return new u(this,e,t,n)},u.prototype.toP=function(){if(this.isInfinity())return this.curve.point(null,null);var e=this.z.redInvm(),t=e.redSqr(),n=this.x.redMul(t),a=this.y.redMul(t).redMul(e);return this.curve.point(n,a)},u.prototype.neg=function(){return this.curve.jpoint(this.x,this.y.redNeg(),this.z)},u.prototype.add=function(e){if(this.isInfinity())return e;if(e.isInfinity())return this;var t=e.z.redSqr(),n=this.z.redSqr(),a=this.x.redMul(t),r=e.x.redMul(n),A=this.y.redMul(t.redMul(e.z)),i=e.y.redMul(n.redMul(this.z)),o=a.redSub(r),s=A.redSub(i);if(0===o.cmpn(0))return 0!==s.cmpn(0)?this.curve.jpoint(null,null,null):this.dbl();var p=o.redSqr(),u=p.redMul(o),c=a.redMul(p),d=s.redSqr().redIAdd(u).redISub(c).redISub(c),l=s.redMul(c.redISub(d)).redISub(A.redMul(u)),g=this.z.redMul(e.z).redMul(o);return this.curve.jpoint(d,l,g)},u.prototype.mixedAdd=function(e){if(this.isInfinity())return e.toJ();if(e.isInfinity())return this;var t=this.z.redSqr(),n=this.x,a=e.x.redMul(t),r=this.y,A=e.y.redMul(t).redMul(this.z),i=n.redSub(a),o=r.redSub(A);if(0===i.cmpn(0))return 0!==o.cmpn(0)?this.curve.jpoint(null,null,null):this.dbl();var s=i.redSqr(),p=s.redMul(i),u=n.redMul(s),c=o.redSqr().redIAdd(p).redISub(u).redISub(u),d=o.redMul(u.redISub(c)).redISub(r.redMul(p)),l=this.z.redMul(i);return this.curve.jpoint(c,d,l)},u.prototype.dblp=function(e){if(0===e)return this;if(this.isInfinity())return this;if(!e)return this.dbl();var t;if(this.curve.zeroA||this.curve.threeA){var n=this;for(t=0;t<e;t++)n=n.dbl();return n}var a=this.curve.a,r=this.curve.tinv,A=this.x,i=this.y,o=this.z,s=o.redSqr().redSqr(),p=i.redAdd(i);for(t=0;t<e;t++){var u=A.redSqr(),c=p.redSqr(),d=c.redSqr(),l=u.redAdd(u).redIAdd(u).redIAdd(a.redMul(s)),g=A.redMul(c),I=l.redSqr().redISub(g.redAdd(g)),f=g.redISub(I),h=l.redMul(f);h=h.redIAdd(h).redISub(d);var y=p.redMul(o);t+1<e&&(s=s.redMul(d)),A=I,o=y,p=h}return this.curve.jpoint(A,p.redMul(r),o)},u.prototype.dbl=function(){return this.isInfinity()?this:this.curve.zeroA?this._zeroDbl():this.curve.threeA?this._threeDbl():this._dbl()},u.prototype._zeroDbl=function(){var e,t,n;if(this.zOne){var a=this.x.redSqr(),r=this.y.redSqr(),A=r.redSqr(),i=this.x.redAdd(r).redSqr().redISub(a).redISub(A);i=i.redIAdd(i);var o=a.redAdd(a).redIAdd(a),s=o.redSqr().redISub(i).redISub(i),p=A.redIAdd(A);p=(p=p.redIAdd(p)).redIAdd(p),e=s,t=o.redMul(i.redISub(s)).redISub(p),n=this.y.redAdd(this.y)}else{var u=this.x.redSqr(),c=this.y.redSqr(),d=c.redSqr(),l=this.x.redAdd(c).redSqr().redISub(u).redISub(d);l=l.redIAdd(l);var g=u.redAdd(u).redIAdd(u),I=g.redSqr(),f=d.redIAdd(d);f=(f=f.redIAdd(f)).redIAdd(f),e=I.redISub(l).redISub(l),t=g.redMul(l.redISub(e)).redISub(f),n=(n=this.y.redMul(this.z)).redIAdd(n)}return this.curve.jpoint(e,t,n)},u.prototype._threeDbl=function(){var e,t,n;if(this.zOne){var a=this.x.redSqr(),r=this.y.redSqr(),A=r.redSqr(),i=this.x.redAdd(r).redSqr().redISub(a).redISub(A);i=i.redIAdd(i);var o=a.redAdd(a).redIAdd(a).redIAdd(this.curve.a),s=o.redSqr().redISub(i).redISub(i);e=s;var p=A.redIAdd(A);p=(p=p.redIAdd(p)).redIAdd(p),t=o.redMul(i.redISub(s)).redISub(p),n=this.y.redAdd(this.y)}else{var u=this.z.redSqr(),c=this.y.redSqr(),d=this.x.redMul(c),l=this.x.redSub(u).redMul(this.x.redAdd(u));l=l.redAdd(l).redIAdd(l);var g=d.redIAdd(d),I=(g=g.redIAdd(g)).redAdd(g);e=l.redSqr().redISub(I),n=this.y.redAdd(this.z).redSqr().redISub(c).redISub(u);var f=c.redSqr();f=(f=(f=f.redIAdd(f)).redIAdd(f)).redIAdd(f),t=l.redMul(g.redISub(e)).redISub(f)}return this.curve.jpoint(e,t,n)},u.prototype._dbl=function(){var e=this.curve.a,t=this.x,n=this.y,a=this.z,r=a.redSqr().redSqr(),A=t.redSqr(),i=n.redSqr(),o=A.redAdd(A).redIAdd(A).redIAdd(e.redMul(r)),s=t.redAdd(t),p=(s=s.redIAdd(s)).redMul(i),u=o.redSqr().redISub(p.redAdd(p)),c=p.redISub(u),d=i.redSqr();d=(d=(d=d.redIAdd(d)).redIAdd(d)).redIAdd(d);var l=o.redMul(c).redISub(d),g=n.redAdd(n).redMul(a);return this.curve.jpoint(u,l,g)},u.prototype.trpl=function(){if(!this.curve.zeroA)return this.dbl().add(this);var e=this.x.redSqr(),t=this.y.redSqr(),n=this.z.redSqr(),a=t.redSqr(),r=e.redAdd(e).redIAdd(e),A=r.redSqr(),i=this.x.redAdd(t).redSqr().redISub(e).redISub(a),o=(i=(i=(i=i.redIAdd(i)).redAdd(i).redIAdd(i)).redISub(A)).redSqr(),s=a.redIAdd(a);s=(s=(s=s.redIAdd(s)).redIAdd(s)).redIAdd(s);var p=r.redIAdd(i).redSqr().redISub(A).redISub(o).redISub(s),u=t.redMul(p);u=(u=u.redIAdd(u)).redIAdd(u);var c=this.x.redMul(o).redISub(u);c=(c=c.redIAdd(c)).redIAdd(c);var d=this.y.redMul(p.redMul(s.redISub(p)).redISub(i.redMul(o)));d=(d=(d=d.redIAdd(d)).redIAdd(d)).redIAdd(d);var l=this.z.redAdd(i).redSqr().redISub(n).redISub(o);return this.curve.jpoint(c,d,l)},u.prototype.mul=function(e,t){return e=new r(e,t),this.curve._wnafMul(this,e)},u.prototype.eq=function(e){if("affine"===e.type)return this.eq(e.toJ());if(this===e)return!0;var t=this.z.redSqr(),n=e.z.redSqr();if(0!==this.x.redMul(n).redISub(e.x.redMul(t)).cmpn(0))return!1;var a=t.redMul(this.z),r=n.redMul(e.z);return 0===this.y.redMul(r).redISub(e.y.redMul(a)).cmpn(0)},u.prototype.eqXToP=function(e){var t=this.z.redSqr(),n=e.toRed(this.curve.red).redMul(t);if(0===this.x.cmp(n))return!0;for(var a=e.clone(),r=this.curve.redN.redMul(t);;){if(a.iadd(this.curve.n),a.cmp(this.curve.p)>=0)return!1;if(n.redIAdd(r),0===this.x.cmp(n))return!0}},u.prototype.inspect=function(){return this.isInfinity()?"<EC JPoint Infinity>":"<EC JPoint x: "+this.x.toString(16,2)+" y: "+this.y.toString(16,2)+" z: "+this.z.toString(16,2)+">"},u.prototype.isInfinity=function(){return 0===this.z.cmpn(0)}},function(e,t){"function"==typeof Object.create?e.exports=function(e,t){t&&(e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}))}:e.exports=function(e,t){if(t){e.super_=t;var n=function(){};n.prototype=t.prototype,e.prototype=new n,e.prototype.constructor=e}}},function(e,t,n){"use strict";var a=n(7),r=n(4),A=n(50),i=n(14);function o(e){A.call(this,"mont",e),this.a=new a(e.a,16).toRed(this.red),this.b=new a(e.b,16).toRed(this.red),this.i4=new a(4).toRed(this.red).redInvm(),this.two=new a(2).toRed(this.red),this.a24=this.i4.redMul(this.a.redAdd(this.two))}function s(e,t,n){A.BasePoint.call(this,e,"projective"),null===t&&null===n?(this.x=this.curve.one,this.z=this.curve.zero):(this.x=new a(t,16),this.z=new a(n,16),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)))}r(o,A),e.exports=o,o.prototype.validate=function(e){var t=e.normalize().x,n=t.redSqr(),a=n.redMul(t).redAdd(n.redMul(this.a)).redAdd(t);return 0===a.redSqrt().redSqr().cmp(a)},r(s,A.BasePoint),o.prototype.decodePoint=function(e,t){return this.point(i.toArray(e,t),1)},o.prototype.point=function(e,t){return new s(this,e,t)},o.prototype.pointFromJSON=function(e){return s.fromJSON(this,e)},s.prototype.precompute=function(){},s.prototype._encode=function(){return this.getX().toArray("be",this.curve.p.byteLength())},s.fromJSON=function(e,t){return new s(e,t[0],t[1]||e.one)},s.prototype.inspect=function(){return this.isInfinity()?"<EC Point Infinity>":"<EC Point x: "+this.x.fromRed().toString(16,2)+" z: "+this.z.fromRed().toString(16,2)+">"},s.prototype.isInfinity=function(){return 0===this.z.cmpn(0)},s.prototype.dbl=function(){var e=this.x.redAdd(this.z).redSqr(),t=this.x.redSub(this.z).redSqr(),n=e.redSub(t),a=e.redMul(t),r=n.redMul(t.redAdd(this.curve.a24.redMul(n)));return this.curve.point(a,r)},s.prototype.add=function(){throw new Error("Not supported on Montgomery curve")},s.prototype.diffAdd=function(e,t){var n=this.x.redAdd(this.z),a=this.x.redSub(this.z),r=e.x.redAdd(e.z),A=e.x.redSub(e.z).redMul(n),i=r.redMul(a),o=t.z.redMul(A.redAdd(i).redSqr()),s=t.x.redMul(A.redISub(i).redSqr());return this.curve.point(o,s)},s.prototype.mul=function(e){for(var t=e.clone(),n=this,a=this.curve.point(null,null),r=[];0!==t.cmpn(0);t.iushrn(1))r.push(t.andln(1));for(var A=r.length-1;A>=0;A--)0===r[A]?(n=n.diffAdd(a,this),a=a.dbl()):(a=n.diffAdd(a,this),n=n.dbl());return a},s.prototype.mulAdd=function(){throw new Error("Not supported on Montgomery curve")},s.prototype.jumlAdd=function(){throw new Error("Not supported on Montgomery curve")},s.prototype.eq=function(e){return 0===this.getX().cmp(e.getX())},s.prototype.normalize=function(){return this.x=this.x.redMul(this.z.redInvm()),this.z=this.curve.one,this},s.prototype.getX=function(){return this.normalize(),this.x.fromRed()}},function(e,t,n){"use strict";var a=n(14),r=n(7),A=n(4),i=n(50),o=a.assert;function s(e){this.twisted=1!=(0|e.a),this.mOneA=this.twisted&&-1==(0|e.a),this.extended=this.mOneA,i.call(this,"edwards",e),this.a=new r(e.a,16).umod(this.red.m),this.a=this.a.toRed(this.red),this.c=new r(e.c,16).toRed(this.red),this.c2=this.c.redSqr(),this.d=new r(e.d,16).toRed(this.red),this.dd=this.d.redAdd(this.d),o(!this.twisted||0===this.c.fromRed().cmpn(1)),this.oneC=1==(0|e.c)}function p(e,t,n,a,A){i.BasePoint.call(this,e,"projective"),null===t&&null===n&&null===a?(this.x=this.curve.zero,this.y=this.curve.one,this.z=this.curve.one,this.t=this.curve.zero,this.zOne=!0):(this.x=new r(t,16),this.y=new r(n,16),this.z=a?new r(a,16):this.curve.one,this.t=A&&new r(A,16),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.y.red||(this.y=this.y.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)),this.t&&!this.t.red&&(this.t=this.t.toRed(this.curve.red)),this.zOne=this.z===this.curve.one,this.curve.extended&&!this.t&&(this.t=this.x.redMul(this.y),this.zOne||(this.t=this.t.redMul(this.z.redInvm()))))}A(s,i),e.exports=s,s.prototype._mulA=function(e){return this.mOneA?e.redNeg():this.a.redMul(e)},s.prototype._mulC=function(e){return this.oneC?e:this.c.redMul(e)},s.prototype.jpoint=function(e,t,n,a){return this.point(e,t,n,a)},s.prototype.pointFromX=function(e,t){(e=new r(e,16)).red||(e=e.toRed(this.red));var n=e.redSqr(),a=this.c2.redSub(this.a.redMul(n)),A=this.one.redSub(this.c2.redMul(this.d).redMul(n)),i=a.redMul(A.redInvm()),o=i.redSqrt();if(0!==o.redSqr().redSub(i).cmp(this.zero))throw new Error("invalid point");var s=o.fromRed().isOdd();return(t&&!s||!t&&s)&&(o=o.redNeg()),this.point(e,o)},s.prototype.pointFromY=function(e,t){(e=new r(e,16)).red||(e=e.toRed(this.red));var n=e.redSqr(),a=n.redSub(this.c2),A=n.redMul(this.d).redMul(this.c2).redSub(this.a),i=a.redMul(A.redInvm());if(0===i.cmp(this.zero)){if(t)throw new Error("invalid point");return this.point(this.zero,e)}var o=i.redSqrt();if(0!==o.redSqr().redSub(i).cmp(this.zero))throw new Error("invalid point");return o.fromRed().isOdd()!==t&&(o=o.redNeg()),this.point(o,e)},s.prototype.validate=function(e){if(e.isInfinity())return!0;e.normalize();var t=e.x.redSqr(),n=e.y.redSqr(),a=t.redMul(this.a).redAdd(n),r=this.c2.redMul(this.one.redAdd(this.d.redMul(t).redMul(n)));return 0===a.cmp(r)},A(p,i.BasePoint),s.prototype.pointFromJSON=function(e){return p.fromJSON(this,e)},s.prototype.point=function(e,t,n,a){return new p(this,e,t,n,a)},p.fromJSON=function(e,t){return new p(e,t[0],t[1],t[2])},p.prototype.inspect=function(){return this.isInfinity()?"<EC Point Infinity>":"<EC Point x: "+this.x.fromRed().toString(16,2)+" y: "+this.y.fromRed().toString(16,2)+" z: "+this.z.fromRed().toString(16,2)+">"},p.prototype.isInfinity=function(){return 0===this.x.cmpn(0)&&(0===this.y.cmp(this.z)||this.zOne&&0===this.y.cmp(this.curve.c))},p.prototype._extDbl=function(){var e=this.x.redSqr(),t=this.y.redSqr(),n=this.z.redSqr();n=n.redIAdd(n);var a=this.curve._mulA(e),r=this.x.redAdd(this.y).redSqr().redISub(e).redISub(t),A=a.redAdd(t),i=A.redSub(n),o=a.redSub(t),s=r.redMul(i),p=A.redMul(o),u=r.redMul(o),c=i.redMul(A);return this.curve.point(s,p,c,u)},p.prototype._projDbl=function(){var e,t,n,a,r,A,i=this.x.redAdd(this.y).redSqr(),o=this.x.redSqr(),s=this.y.redSqr();if(this.curve.twisted){var p=(a=this.curve._mulA(o)).redAdd(s);this.zOne?(e=i.redSub(o).redSub(s).redMul(p.redSub(this.curve.two)),t=p.redMul(a.redSub(s)),n=p.redSqr().redSub(p).redSub(p)):(r=this.z.redSqr(),A=p.redSub(r).redISub(r),e=i.redSub(o).redISub(s).redMul(A),t=p.redMul(a.redSub(s)),n=p.redMul(A))}else a=o.redAdd(s),r=this.curve._mulC(this.z).redSqr(),A=a.redSub(r).redSub(r),e=this.curve._mulC(i.redISub(a)).redMul(A),t=this.curve._mulC(a).redMul(o.redISub(s)),n=a.redMul(A);return this.curve.point(e,t,n)},p.prototype.dbl=function(){return this.isInfinity()?this:this.curve.extended?this._extDbl():this._projDbl()},p.prototype._extAdd=function(e){var t=this.y.redSub(this.x).redMul(e.y.redSub(e.x)),n=this.y.redAdd(this.x).redMul(e.y.redAdd(e.x)),a=this.t.redMul(this.curve.dd).redMul(e.t),r=this.z.redMul(e.z.redAdd(e.z)),A=n.redSub(t),i=r.redSub(a),o=r.redAdd(a),s=n.redAdd(t),p=A.redMul(i),u=o.redMul(s),c=A.redMul(s),d=i.redMul(o);return this.curve.point(p,u,d,c)},p.prototype._projAdd=function(e){var t,n,a=this.z.redMul(e.z),r=a.redSqr(),A=this.x.redMul(e.x),i=this.y.redMul(e.y),o=this.curve.d.redMul(A).redMul(i),s=r.redSub(o),p=r.redAdd(o),u=this.x.redAdd(this.y).redMul(e.x.redAdd(e.y)).redISub(A).redISub(i),c=a.redMul(s).redMul(u);return this.curve.twisted?(t=a.redMul(p).redMul(i.redSub(this.curve._mulA(A))),n=s.redMul(p)):(t=a.redMul(p).redMul(i.redSub(A)),n=this.curve._mulC(s).redMul(p)),this.curve.point(c,t,n)},p.prototype.add=function(e){return this.isInfinity()?e:e.isInfinity()?this:this.curve.extended?this._extAdd(e):this._projAdd(e)},p.prototype.mul=function(e){return this._hasDoubles(e)?this.curve._fixedNafMul(this,e):this.curve._wnafMul(this,e)},p.prototype.mulAdd=function(e,t,n){return this.curve._wnafMulAdd(1,[this,t],[e,n],2,!1)},p.prototype.jmulAdd=function(e,t,n){return this.curve._wnafMulAdd(1,[this,t],[e,n],2,!0)},p.prototype.normalize=function(){if(this.zOne)return this;var e=this.z.redInvm();return this.x=this.x.redMul(e),this.y=this.y.redMul(e),this.t&&(this.t=this.t.redMul(e)),this.z=this.curve.one,this.zOne=!0,this},p.prototype.neg=function(){return this.curve.point(this.x.redNeg(),this.y,this.z,this.t&&this.t.redNeg())},p.prototype.getX=function(){return this.normalize(),this.x.fromRed()},p.prototype.getY=function(){return this.normalize(),this.y.fromRed()},p.prototype.eq=function(e){return this===e||0===this.getX().cmp(e.getX())&&0===this.getY().cmp(e.getY())},p.prototype.eqXToP=function(e){var t=e.toRed(this.curve.red).redMul(this.z);if(0===this.x.cmp(t))return!0;for(var n=e.clone(),a=this.curve.redN.redMul(this.z);;){if(n.iadd(this.curve.n),n.cmp(this.curve.p)>=0)return!1;if(t.redIAdd(a),0===this.x.cmp(t))return!0}},p.prototype.toP=p.prototype.normalize,p.prototype.mixedAdd=p.prototype.add},function(e,t,n){"use strict";t.sha1=n(177),t.sha224=n(178),t.sha256=n(110),t.sha384=n(179),t.sha512=n(111)},function(e,t,n){"use strict";var a=n(17),r=n(41),A=n(109),i=a.rotl32,o=a.sum32,s=a.sum32_5,p=A.ft_1,u=r.BlockHash,c=[1518500249,1859775393,2400959708,3395469782];function d(){if(!(this instanceof d))return new d;u.call(this),this.h=[1732584193,4023233417,2562383102,271733878,3285377520],this.W=new Array(80)}a.inherits(d,u),e.exports=d,d.blockSize=512,d.outSize=160,d.hmacStrength=80,d.padLength=64,d.prototype._update=function(e,t){for(var n=this.W,a=0;a<16;a++)n[a]=e[t+a];for(;a<n.length;a++)n[a]=i(n[a-3]^n[a-8]^n[a-14]^n[a-16],1);var r=this.h[0],A=this.h[1],u=this.h[2],d=this.h[3],l=this.h[4];for(a=0;a<n.length;a++){var g=~~(a/20),I=s(i(r,5),p(g,A,u,d),l,n[a],c[g]);l=d,d=u,u=i(A,30),A=r,r=I}this.h[0]=o(this.h[0],r),this.h[1]=o(this.h[1],A),this.h[2]=o(this.h[2],u),this.h[3]=o(this.h[3],d),this.h[4]=o(this.h[4],l)},d.prototype._digest=function(e){return"hex"===e?a.toHex32(this.h,"big"):a.split32(this.h,"big")}},function(e,t,n){"use strict";var a=n(17),r=n(110);function A(){if(!(this instanceof A))return new A;r.call(this),this.h=[3238371032,914150663,812702999,4144912697,4290775857,1750603025,1694076839,3204075428]}a.inherits(A,r),e.exports=A,A.blockSize=512,A.outSize=224,A.hmacStrength=192,A.padLength=64,A.prototype._digest=function(e){return"hex"===e?a.toHex32(this.h.slice(0,7),"big"):a.split32(this.h.slice(0,7),"big")}},function(e,t,n){"use strict";var a=n(17),r=n(111);function A(){if(!(this instanceof A))return new A;r.call(this),this.h=[3418070365,3238371032,1654270250,914150663,2438529370,812702999,355462360,4144912697,1731405415,4290775857,2394180231,1750603025,3675008525,1694076839,1203062813,3204075428]}a.inherits(A,r),e.exports=A,A.blockSize=1024,A.outSize=384,A.hmacStrength=192,A.padLength=128,A.prototype._digest=function(e){return"hex"===e?a.toHex32(this.h.slice(0,12),"big"):a.split32(this.h.slice(0,12),"big")}},function(e,t,n){"use strict";var a=n(17),r=n(41),A=a.rotl32,i=a.sum32,o=a.sum32_3,s=a.sum32_4,p=r.BlockHash;function u(){if(!(this instanceof u))return new u;p.call(this),this.h=[1732584193,4023233417,2562383102,271733878,3285377520],this.endian="little"}function c(e,t,n,a){return e<=15?t^n^a:e<=31?t&n|~t&a:e<=47?(t|~n)^a:e<=63?t&a|n&~a:t^(n|~a)}function d(e){return e<=15?0:e<=31?1518500249:e<=47?1859775393:e<=63?2400959708:2840853838}function l(e){return e<=15?1352829926:e<=31?1548603684:e<=47?1836072691:e<=63?2053994217:0}a.inherits(u,p),t.ripemd160=u,u.blockSize=512,u.outSize=160,u.hmacStrength=192,u.padLength=64,u.prototype._update=function(e,t){for(var n=this.h[0],a=this.h[1],r=this.h[2],p=this.h[3],u=this.h[4],y=n,m=a,C=r,B=p,E=u,b=0;b<80;b++){var Q=i(A(s(n,c(b,a,r,p),e[g[b]+t],d(b)),f[b]),u);n=u,u=p,p=A(r,10),r=a,a=Q,Q=i(A(s(y,c(79-b,m,C,B),e[I[b]+t],l(b)),h[b]),E),y=E,E=B,B=A(C,10),C=m,m=Q}Q=o(this.h[1],r,B),this.h[1]=o(this.h[2],p,E),this.h[2]=o(this.h[3],u,y),this.h[3]=o(this.h[4],n,m),this.h[4]=o(this.h[0],a,C),this.h[0]=Q},u.prototype._digest=function(e){return"hex"===e?a.toHex32(this.h,"little"):a.split32(this.h,"little")};var g=[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8,3,10,14,4,9,15,8,1,2,7,0,6,13,11,5,12,1,9,11,10,0,8,12,4,13,3,7,15,14,5,6,2,4,0,5,9,7,12,2,10,14,1,3,8,11,6,15,13],I=[5,14,7,0,9,2,11,4,13,6,15,8,1,10,3,12,6,11,3,7,0,13,5,10,14,15,8,12,4,9,1,2,15,5,1,3,7,14,6,9,11,8,12,2,10,0,4,13,8,6,4,1,3,11,15,0,5,12,2,13,9,7,10,14,12,15,10,4,1,5,8,7,6,2,13,14,0,3,9,11],f=[11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8,7,6,8,13,11,9,7,15,7,12,15,9,11,7,13,12,11,13,6,7,14,9,13,15,14,8,13,6,5,12,7,5,11,12,14,15,14,15,9,8,9,14,5,6,8,6,5,12,9,15,5,11,6,8,13,12,5,12,13,14,11,8,5,6],h=[8,9,9,11,13,15,15,5,7,7,8,11,14,14,12,6,9,13,15,7,12,8,9,11,7,7,12,7,6,15,13,11,9,7,15,11,8,6,6,14,12,13,5,14,13,13,7,5,15,5,8,11,14,14,6,14,6,9,12,9,12,5,15,8,8,5,12,9,12,5,14,6,8,13,6,5,15,13,11,11]},function(e,t,n){"use strict";var a=n(17),r=n(11);function A(e,t,n){if(!(this instanceof A))return new A(e,t,n);this.Hash=e,this.blockSize=e.blockSize/8,this.outSize=e.outSize/8,this.inner=null,this.outer=null,this._init(a.toArray(t,n))}e.exports=A,A.prototype._init=function(e){e.length>this.blockSize&&(e=(new this.Hash).update(e).digest()),r(e.length<=this.blockSize);for(var t=e.length;t<this.blockSize;t++)e.push(0);for(t=0;t<e.length;t++)e[t]^=54;for(this.inner=(new this.Hash).update(e),t=0;t<e.length;t++)e[t]^=106;this.outer=(new this.Hash).update(e)},A.prototype.update=function(e,t){return this.inner.update(e,t),this},A.prototype.digest=function(e){return this.outer.update(this.inner.digest()),this.outer.digest(e)}},function(e,t){e.exports={doubles:{step:4,points:[["e60fce93b59e9ec53011aabc21c23e97b2a31369b87a5ae9c44ee89e2a6dec0a","f7e3507399e595929db99f34f57937101296891e44d23f0be1f32cce69616821"],["8282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f51508","11f8a8098557dfe45e8256e830b60ace62d613ac2f7b17bed31b6eaff6e26caf"],["175e159f728b865a72f99cc6c6fc846de0b93833fd2222ed73fce5b551e5b739","d3506e0d9e3c79eba4ef97a51ff71f5eacb5955add24345c6efa6ffee9fed695"],["363d90d447b00c9c99ceac05b6262ee053441c7e55552ffe526bad8f83ff4640","4e273adfc732221953b445397f3363145b9a89008199ecb62003c7f3bee9de9"],["8b4b5f165df3c2be8c6244b5b745638843e4a781a15bcd1b69f79a55dffdf80c","4aad0a6f68d308b4b3fbd7813ab0da04f9e336546162ee56b3eff0c65fd4fd36"],["723cbaa6e5db996d6bf771c00bd548c7b700dbffa6c0e77bcb6115925232fcda","96e867b5595cc498a921137488824d6e2660a0653779494801dc069d9eb39f5f"],["eebfa4d493bebf98ba5feec812c2d3b50947961237a919839a533eca0e7dd7fa","5d9a8ca3970ef0f269ee7edaf178089d9ae4cdc3a711f712ddfd4fdae1de8999"],["100f44da696e71672791d0a09b7bde459f1215a29b3c03bfefd7835b39a48db0","cdd9e13192a00b772ec8f3300c090666b7ff4a18ff5195ac0fbd5cd62bc65a09"],["e1031be262c7ed1b1dc9227a4a04c017a77f8d4464f3b3852c8acde6e534fd2d","9d7061928940405e6bb6a4176597535af292dd419e1ced79a44f18f29456a00d"],["feea6cae46d55b530ac2839f143bd7ec5cf8b266a41d6af52d5e688d9094696d","e57c6b6c97dce1bab06e4e12bf3ecd5c981c8957cc41442d3155debf18090088"],["da67a91d91049cdcb367be4be6ffca3cfeed657d808583de33fa978bc1ec6cb1","9bacaa35481642bc41f463f7ec9780e5dec7adc508f740a17e9ea8e27a68be1d"],["53904faa0b334cdda6e000935ef22151ec08d0f7bb11069f57545ccc1a37b7c0","5bc087d0bc80106d88c9eccac20d3c1c13999981e14434699dcb096b022771c8"],["8e7bcd0bd35983a7719cca7764ca906779b53a043a9b8bcaeff959f43ad86047","10b7770b2a3da4b3940310420ca9514579e88e2e47fd68b3ea10047e8460372a"],["385eed34c1cdff21e6d0818689b81bde71a7f4f18397e6690a841e1599c43862","283bebc3e8ea23f56701de19e9ebf4576b304eec2086dc8cc0458fe5542e5453"],["6f9d9b803ecf191637c73a4413dfa180fddf84a5947fbc9c606ed86c3fac3a7","7c80c68e603059ba69b8e2a30e45c4d47ea4dd2f5c281002d86890603a842160"],["3322d401243c4e2582a2147c104d6ecbf774d163db0f5e5313b7e0e742d0e6bd","56e70797e9664ef5bfb019bc4ddaf9b72805f63ea2873af624f3a2e96c28b2a0"],["85672c7d2de0b7da2bd1770d89665868741b3f9af7643397721d74d28134ab83","7c481b9b5b43b2eb6374049bfa62c2e5e77f17fcc5298f44c8e3094f790313a6"],["948bf809b1988a46b06c9f1919413b10f9226c60f668832ffd959af60c82a0a","53a562856dcb6646dc6b74c5d1c3418c6d4dff08c97cd2bed4cb7f88d8c8e589"],["6260ce7f461801c34f067ce0f02873a8f1b0e44dfc69752accecd819f38fd8e8","bc2da82b6fa5b571a7f09049776a1ef7ecd292238051c198c1a84e95b2b4ae17"],["e5037de0afc1d8d43d8348414bbf4103043ec8f575bfdc432953cc8d2037fa2d","4571534baa94d3b5f9f98d09fb990bddbd5f5b03ec481f10e0e5dc841d755bda"],["e06372b0f4a207adf5ea905e8f1771b4e7e8dbd1c6a6c5b725866a0ae4fce725","7a908974bce18cfe12a27bb2ad5a488cd7484a7787104870b27034f94eee31dd"],["213c7a715cd5d45358d0bbf9dc0ce02204b10bdde2a3f58540ad6908d0559754","4b6dad0b5ae462507013ad06245ba190bb4850f5f36a7eeddff2c27534b458f2"],["4e7c272a7af4b34e8dbb9352a5419a87e2838c70adc62cddf0cc3a3b08fbd53c","17749c766c9d0b18e16fd09f6def681b530b9614bff7dd33e0b3941817dcaae6"],["fea74e3dbe778b1b10f238ad61686aa5c76e3db2be43057632427e2840fb27b6","6e0568db9b0b13297cf674deccb6af93126b596b973f7b77701d3db7f23cb96f"],["76e64113f677cf0e10a2570d599968d31544e179b760432952c02a4417bdde39","c90ddf8dee4e95cf577066d70681f0d35e2a33d2b56d2032b4b1752d1901ac01"],["c738c56b03b2abe1e8281baa743f8f9a8f7cc643df26cbee3ab150242bcbb891","893fb578951ad2537f718f2eacbfbbbb82314eef7880cfe917e735d9699a84c3"],["d895626548b65b81e264c7637c972877d1d72e5f3a925014372e9f6588f6c14b","febfaa38f2bc7eae728ec60818c340eb03428d632bb067e179363ed75d7d991f"],["b8da94032a957518eb0f6433571e8761ceffc73693e84edd49150a564f676e03","2804dfa44805a1e4d7c99cc9762808b092cc584d95ff3b511488e4e74efdf6e7"],["e80fea14441fb33a7d8adab9475d7fab2019effb5156a792f1a11778e3c0df5d","eed1de7f638e00771e89768ca3ca94472d155e80af322ea9fcb4291b6ac9ec78"],["a301697bdfcd704313ba48e51d567543f2a182031efd6915ddc07bbcc4e16070","7370f91cfb67e4f5081809fa25d40f9b1735dbf7c0a11a130c0d1a041e177ea1"],["90ad85b389d6b936463f9d0512678de208cc330b11307fffab7ac63e3fb04ed4","e507a3620a38261affdcbd9427222b839aefabe1582894d991d4d48cb6ef150"],["8f68b9d2f63b5f339239c1ad981f162ee88c5678723ea3351b7b444c9ec4c0da","662a9f2dba063986de1d90c2b6be215dbbea2cfe95510bfdf23cbf79501fff82"],["e4f3fb0176af85d65ff99ff9198c36091f48e86503681e3e6686fd5053231e11","1e63633ad0ef4f1c1661a6d0ea02b7286cc7e74ec951d1c9822c38576feb73bc"],["8c00fa9b18ebf331eb961537a45a4266c7034f2f0d4e1d0716fb6eae20eae29e","efa47267fea521a1a9dc343a3736c974c2fadafa81e36c54e7d2a4c66702414b"],["e7a26ce69dd4829f3e10cec0a9e98ed3143d084f308b92c0997fddfc60cb3e41","2a758e300fa7984b471b006a1aafbb18d0a6b2c0420e83e20e8a9421cf2cfd51"],["b6459e0ee3662ec8d23540c223bcbdc571cbcb967d79424f3cf29eb3de6b80ef","67c876d06f3e06de1dadf16e5661db3c4b3ae6d48e35b2ff30bf0b61a71ba45"],["d68a80c8280bb840793234aa118f06231d6f1fc67e73c5a5deda0f5b496943e8","db8ba9fff4b586d00c4b1f9177b0e28b5b0e7b8f7845295a294c84266b133120"],["324aed7df65c804252dc0270907a30b09612aeb973449cea4095980fc28d3d5d","648a365774b61f2ff130c0c35aec1f4f19213b0c7e332843967224af96ab7c84"],["4df9c14919cde61f6d51dfdbe5fee5dceec4143ba8d1ca888e8bd373fd054c96","35ec51092d8728050974c23a1d85d4b5d506cdc288490192ebac06cad10d5d"],["9c3919a84a474870faed8a9c1cc66021523489054d7f0308cbfc99c8ac1f98cd","ddb84f0f4a4ddd57584f044bf260e641905326f76c64c8e6be7e5e03d4fc599d"],["6057170b1dd12fdf8de05f281d8e06bb91e1493a8b91d4cc5a21382120a959e5","9a1af0b26a6a4807add9a2daf71df262465152bc3ee24c65e899be932385a2a8"],["a576df8e23a08411421439a4518da31880cef0fba7d4df12b1a6973eecb94266","40a6bf20e76640b2c92b97afe58cd82c432e10a7f514d9f3ee8be11ae1b28ec8"],["7778a78c28dec3e30a05fe9629de8c38bb30d1f5cf9a3a208f763889be58ad71","34626d9ab5a5b22ff7098e12f2ff580087b38411ff24ac563b513fc1fd9f43ac"],["928955ee637a84463729fd30e7afd2ed5f96274e5ad7e5cb09eda9c06d903ac","c25621003d3f42a827b78a13093a95eeac3d26efa8a8d83fc5180e935bcd091f"],["85d0fef3ec6db109399064f3a0e3b2855645b4a907ad354527aae75163d82751","1f03648413a38c0be29d496e582cf5663e8751e96877331582c237a24eb1f962"],["ff2b0dce97eece97c1c9b6041798b85dfdfb6d8882da20308f5404824526087e","493d13fef524ba188af4c4dc54d07936c7b7ed6fb90e2ceb2c951e01f0c29907"],["827fbbe4b1e880ea9ed2b2e6301b212b57f1ee148cd6dd28780e5e2cf856e241","c60f9c923c727b0b71bef2c67d1d12687ff7a63186903166d605b68baec293ec"],["eaa649f21f51bdbae7be4ae34ce6e5217a58fdce7f47f9aa7f3b58fa2120e2b3","be3279ed5bbbb03ac69a80f89879aa5a01a6b965f13f7e59d47a5305ba5ad93d"],["e4a42d43c5cf169d9391df6decf42ee541b6d8f0c9a137401e23632dda34d24f","4d9f92e716d1c73526fc99ccfb8ad34ce886eedfa8d8e4f13a7f7131deba9414"],["1ec80fef360cbdd954160fadab352b6b92b53576a88fea4947173b9d4300bf19","aeefe93756b5340d2f3a4958a7abbf5e0146e77f6295a07b671cdc1cc107cefd"],["146a778c04670c2f91b00af4680dfa8bce3490717d58ba889ddb5928366642be","b318e0ec3354028add669827f9d4b2870aaa971d2f7e5ed1d0b297483d83efd0"],["fa50c0f61d22e5f07e3acebb1aa07b128d0012209a28b9776d76a8793180eef9","6b84c6922397eba9b72cd2872281a68a5e683293a57a213b38cd8d7d3f4f2811"],["da1d61d0ca721a11b1a5bf6b7d88e8421a288ab5d5bba5220e53d32b5f067ec2","8157f55a7c99306c79c0766161c91e2966a73899d279b48a655fba0f1ad836f1"],["a8e282ff0c9706907215ff98e8fd416615311de0446f1e062a73b0610d064e13","7f97355b8db81c09abfb7f3c5b2515888b679a3e50dd6bd6cef7c73111f4cc0c"],["174a53b9c9a285872d39e56e6913cab15d59b1fa512508c022f382de8319497c","ccc9dc37abfc9c1657b4155f2c47f9e6646b3a1d8cb9854383da13ac079afa73"],["959396981943785c3d3e57edf5018cdbe039e730e4918b3d884fdff09475b7ba","2e7e552888c331dd8ba0386a4b9cd6849c653f64c8709385e9b8abf87524f2fd"],["d2a63a50ae401e56d645a1153b109a8fcca0a43d561fba2dbb51340c9d82b151","e82d86fb6443fcb7565aee58b2948220a70f750af484ca52d4142174dcf89405"],["64587e2335471eb890ee7896d7cfdc866bacbdbd3839317b3436f9b45617e073","d99fcdd5bf6902e2ae96dd6447c299a185b90a39133aeab358299e5e9faf6589"],["8481bde0e4e4d885b3a546d3e549de042f0aa6cea250e7fd358d6c86dd45e458","38ee7b8cba5404dd84a25bf39cecb2ca900a79c42b262e556d64b1b59779057e"],["13464a57a78102aa62b6979ae817f4637ffcfed3c4b1ce30bcd6303f6caf666b","69be159004614580ef7e433453ccb0ca48f300a81d0942e13f495a907f6ecc27"],["bc4a9df5b713fe2e9aef430bcc1dc97a0cd9ccede2f28588cada3a0d2d83f366","d3a81ca6e785c06383937adf4b798caa6e8a9fbfa547b16d758d666581f33c1"],["8c28a97bf8298bc0d23d8c749452a32e694b65e30a9472a3954ab30fe5324caa","40a30463a3305193378fedf31f7cc0eb7ae784f0451cb9459e71dc73cbef9482"],["8ea9666139527a8c1dd94ce4f071fd23c8b350c5a4bb33748c4ba111faccae0","620efabbc8ee2782e24e7c0cfb95c5d735b783be9cf0f8e955af34a30e62b945"],["dd3625faef5ba06074669716bbd3788d89bdde815959968092f76cc4eb9a9787","7a188fa3520e30d461da2501045731ca941461982883395937f68d00c644a573"],["f710d79d9eb962297e4f6232b40e8f7feb2bc63814614d692c12de752408221e","ea98e67232d3b3295d3b535532115ccac8612c721851617526ae47a9c77bfc82"]]},naf:{wnd:7,points:[["f9308a019258c31049344f85f89d5229b531c845836f99b08601f113bce036f9","388f7b0f632de8140fe337e62a37f3566500a99934c2231b6cb9fd7584b8e672"],["2f8bde4d1a07209355b4a7250a5c5128e88b84bddc619ab7cba8d569b240efe4","d8ac222636e5e3d6d4dba9dda6c9c426f788271bab0d6840dca87d3aa6ac62d6"],["5cbdf0646e5db4eaa398f365f2ea7a0e3d419b7e0330e39ce92bddedcac4f9bc","6aebca40ba255960a3178d6d861a54dba813d0b813fde7b5a5082628087264da"],["acd484e2f0c7f65309ad178a9f559abde09796974c57e714c35f110dfc27ccbe","cc338921b0a7d9fd64380971763b61e9add888a4375f8e0f05cc262ac64f9c37"],["774ae7f858a9411e5ef4246b70c65aac5649980be5c17891bbec17895da008cb","d984a032eb6b5e190243dd56d7b7b365372db1e2dff9d6a8301d74c9c953c61b"],["f28773c2d975288bc7d1d205c3748651b075fbc6610e58cddeeddf8f19405aa8","ab0902e8d880a89758212eb65cdaf473a1a06da521fa91f29b5cb52db03ed81"],["d7924d4f7d43ea965a465ae3095ff41131e5946f3c85f79e44adbcf8e27e080e","581e2872a86c72a683842ec228cc6defea40af2bd896d3a5c504dc9ff6a26b58"],["defdea4cdb677750a420fee807eacf21eb9898ae79b9768766e4faa04a2d4a34","4211ab0694635168e997b0ead2a93daeced1f4a04a95c0f6cfb199f69e56eb77"],["2b4ea0a797a443d293ef5cff444f4979f06acfebd7e86d277475656138385b6c","85e89bc037945d93b343083b5a1c86131a01f60c50269763b570c854e5c09b7a"],["352bbf4a4cdd12564f93fa332ce333301d9ad40271f8107181340aef25be59d5","321eb4075348f534d59c18259dda3e1f4a1b3b2e71b1039c67bd3d8bcf81998c"],["2fa2104d6b38d11b0230010559879124e42ab8dfeff5ff29dc9cdadd4ecacc3f","2de1068295dd865b64569335bd5dd80181d70ecfc882648423ba76b532b7d67"],["9248279b09b4d68dab21a9b066edda83263c3d84e09572e269ca0cd7f5453714","73016f7bf234aade5d1aa71bdea2b1ff3fc0de2a887912ffe54a32ce97cb3402"],["daed4f2be3a8bf278e70132fb0beb7522f570e144bf615c07e996d443dee8729","a69dce4a7d6c98e8d4a1aca87ef8d7003f83c230f3afa726ab40e52290be1c55"],["c44d12c7065d812e8acf28d7cbb19f9011ecd9e9fdf281b0e6a3b5e87d22e7db","2119a460ce326cdc76c45926c982fdac0e106e861edf61c5a039063f0e0e6482"],["6a245bf6dc698504c89a20cfded60853152b695336c28063b61c65cbd269e6b4","e022cf42c2bd4a708b3f5126f16a24ad8b33ba48d0423b6efd5e6348100d8a82"],["1697ffa6fd9de627c077e3d2fe541084ce13300b0bec1146f95ae57f0d0bd6a5","b9c398f186806f5d27561506e4557433a2cf15009e498ae7adee9d63d01b2396"],["605bdb019981718b986d0f07e834cb0d9deb8360ffb7f61df982345ef27a7479","2972d2de4f8d20681a78d93ec96fe23c26bfae84fb14db43b01e1e9056b8c49"],["62d14dab4150bf497402fdc45a215e10dcb01c354959b10cfe31c7e9d87ff33d","80fc06bd8cc5b01098088a1950eed0db01aa132967ab472235f5642483b25eaf"],["80c60ad0040f27dade5b4b06c408e56b2c50e9f56b9b8b425e555c2f86308b6f","1c38303f1cc5c30f26e66bad7fe72f70a65eed4cbe7024eb1aa01f56430bd57a"],["7a9375ad6167ad54aa74c6348cc54d344cc5dc9487d847049d5eabb0fa03c8fb","d0e3fa9eca8726909559e0d79269046bdc59ea10c70ce2b02d499ec224dc7f7"],["d528ecd9b696b54c907a9ed045447a79bb408ec39b68df504bb51f459bc3ffc9","eecf41253136e5f99966f21881fd656ebc4345405c520dbc063465b521409933"],["49370a4b5f43412ea25f514e8ecdad05266115e4a7ecb1387231808f8b45963","758f3f41afd6ed428b3081b0512fd62a54c3f3afbb5b6764b653052a12949c9a"],["77f230936ee88cbbd73df930d64702ef881d811e0e1498e2f1c13eb1fc345d74","958ef42a7886b6400a08266e9ba1b37896c95330d97077cbbe8eb3c7671c60d6"],["f2dac991cc4ce4b9ea44887e5c7c0bce58c80074ab9d4dbaeb28531b7739f530","e0dedc9b3b2f8dad4da1f32dec2531df9eb5fbeb0598e4fd1a117dba703a3c37"],["463b3d9f662621fb1b4be8fbbe2520125a216cdfc9dae3debcba4850c690d45b","5ed430d78c296c3543114306dd8622d7c622e27c970a1de31cb377b01af7307e"],["f16f804244e46e2a09232d4aff3b59976b98fac14328a2d1a32496b49998f247","cedabd9b82203f7e13d206fcdf4e33d92a6c53c26e5cce26d6579962c4e31df6"],["caf754272dc84563b0352b7a14311af55d245315ace27c65369e15f7151d41d1","cb474660ef35f5f2a41b643fa5e460575f4fa9b7962232a5c32f908318a04476"],["2600ca4b282cb986f85d0f1709979d8b44a09c07cb86d7c124497bc86f082120","4119b88753c15bd6a693b03fcddbb45d5ac6be74ab5f0ef44b0be9475a7e4b40"],["7635ca72d7e8432c338ec53cd12220bc01c48685e24f7dc8c602a7746998e435","91b649609489d613d1d5e590f78e6d74ecfc061d57048bad9e76f302c5b9c61"],["754e3239f325570cdbbf4a87deee8a66b7f2b33479d468fbc1a50743bf56cc18","673fb86e5bda30fb3cd0ed304ea49a023ee33d0197a695d0c5d98093c536683"],["e3e6bd1071a1e96aff57859c82d570f0330800661d1c952f9fe2694691d9b9e8","59c9e0bba394e76f40c0aa58379a3cb6a5a2283993e90c4167002af4920e37f5"],["186b483d056a033826ae73d88f732985c4ccb1f32ba35f4b4cc47fdcf04aa6eb","3b952d32c67cf77e2e17446e204180ab21fb8090895138b4a4a797f86e80888b"],["df9d70a6b9876ce544c98561f4be4f725442e6d2b737d9c91a8321724ce0963f","55eb2dafd84d6ccd5f862b785dc39d4ab157222720ef9da217b8c45cf2ba2417"],["5edd5cc23c51e87a497ca815d5dce0f8ab52554f849ed8995de64c5f34ce7143","efae9c8dbc14130661e8cec030c89ad0c13c66c0d17a2905cdc706ab7399a868"],["290798c2b6476830da12fe02287e9e777aa3fba1c355b17a722d362f84614fba","e38da76dcd440621988d00bcf79af25d5b29c094db2a23146d003afd41943e7a"],["af3c423a95d9f5b3054754efa150ac39cd29552fe360257362dfdecef4053b45","f98a3fd831eb2b749a93b0e6f35cfb40c8cd5aa667a15581bc2feded498fd9c6"],["766dbb24d134e745cccaa28c99bf274906bb66b26dcf98df8d2fed50d884249a","744b1152eacbe5e38dcc887980da38b897584a65fa06cedd2c924f97cbac5996"],["59dbf46f8c94759ba21277c33784f41645f7b44f6c596a58ce92e666191abe3e","c534ad44175fbc300f4ea6ce648309a042ce739a7919798cd85e216c4a307f6e"],["f13ada95103c4537305e691e74e9a4a8dd647e711a95e73cb62dc6018cfd87b8","e13817b44ee14de663bf4bc808341f326949e21a6a75c2570778419bdaf5733d"],["7754b4fa0e8aced06d4167a2c59cca4cda1869c06ebadfb6488550015a88522c","30e93e864e669d82224b967c3020b8fa8d1e4e350b6cbcc537a48b57841163a2"],["948dcadf5990e048aa3874d46abef9d701858f95de8041d2a6828c99e2262519","e491a42537f6e597d5d28a3224b1bc25df9154efbd2ef1d2cbba2cae5347d57e"],["7962414450c76c1689c7b48f8202ec37fb224cf5ac0bfa1570328a8a3d7c77ab","100b610ec4ffb4760d5c1fc133ef6f6b12507a051f04ac5760afa5b29db83437"],["3514087834964b54b15b160644d915485a16977225b8847bb0dd085137ec47ca","ef0afbb2056205448e1652c48e8127fc6039e77c15c2378b7e7d15a0de293311"],["d3cc30ad6b483e4bc79ce2c9dd8bc54993e947eb8df787b442943d3f7b527eaf","8b378a22d827278d89c5e9be8f9508ae3c2ad46290358630afb34db04eede0a4"],["1624d84780732860ce1c78fcbfefe08b2b29823db913f6493975ba0ff4847610","68651cf9b6da903e0914448c6cd9d4ca896878f5282be4c8cc06e2a404078575"],["733ce80da955a8a26902c95633e62a985192474b5af207da6df7b4fd5fc61cd4","f5435a2bd2badf7d485a4d8b8db9fcce3e1ef8e0201e4578c54673bc1dc5ea1d"],["15d9441254945064cf1a1c33bbd3b49f8966c5092171e699ef258dfab81c045c","d56eb30b69463e7234f5137b73b84177434800bacebfc685fc37bbe9efe4070d"],["a1d0fcf2ec9de675b612136e5ce70d271c21417c9d2b8aaaac138599d0717940","edd77f50bcb5a3cab2e90737309667f2641462a54070f3d519212d39c197a629"],["e22fbe15c0af8ccc5780c0735f84dbe9a790badee8245c06c7ca37331cb36980","a855babad5cd60c88b430a69f53a1a7a38289154964799be43d06d77d31da06"],["311091dd9860e8e20ee13473c1155f5f69635e394704eaa74009452246cfa9b3","66db656f87d1f04fffd1f04788c06830871ec5a64feee685bd80f0b1286d8374"],["34c1fd04d301be89b31c0442d3e6ac24883928b45a9340781867d4232ec2dbdf","9414685e97b1b5954bd46f730174136d57f1ceeb487443dc5321857ba73abee"],["f219ea5d6b54701c1c14de5b557eb42a8d13f3abbcd08affcc2a5e6b049b8d63","4cb95957e83d40b0f73af4544cccf6b1f4b08d3c07b27fb8d8c2962a400766d1"],["d7b8740f74a8fbaab1f683db8f45de26543a5490bca627087236912469a0b448","fa77968128d9c92ee1010f337ad4717eff15db5ed3c049b3411e0315eaa4593b"],["32d31c222f8f6f0ef86f7c98d3a3335ead5bcd32abdd94289fe4d3091aa824bf","5f3032f5892156e39ccd3d7915b9e1da2e6dac9e6f26e961118d14b8462e1661"],["7461f371914ab32671045a155d9831ea8793d77cd59592c4340f86cbc18347b5","8ec0ba238b96bec0cbdddcae0aa442542eee1ff50c986ea6b39847b3cc092ff6"],["ee079adb1df1860074356a25aa38206a6d716b2c3e67453d287698bad7b2b2d6","8dc2412aafe3be5c4c5f37e0ecc5f9f6a446989af04c4e25ebaac479ec1c8c1e"],["16ec93e447ec83f0467b18302ee620f7e65de331874c9dc72bfd8616ba9da6b5","5e4631150e62fb40d0e8c2a7ca5804a39d58186a50e497139626778e25b0674d"],["eaa5f980c245f6f038978290afa70b6bd8855897f98b6aa485b96065d537bd99","f65f5d3e292c2e0819a528391c994624d784869d7e6ea67fb18041024edc07dc"],["78c9407544ac132692ee1910a02439958ae04877151342ea96c4b6b35a49f51","f3e0319169eb9b85d5404795539a5e68fa1fbd583c064d2462b675f194a3ddb4"],["494f4be219a1a77016dcd838431aea0001cdc8ae7a6fc688726578d9702857a5","42242a969283a5f339ba7f075e36ba2af925ce30d767ed6e55f4b031880d562c"],["a598a8030da6d86c6bc7f2f5144ea549d28211ea58faa70ebf4c1e665c1fe9b5","204b5d6f84822c307e4b4a7140737aec23fc63b65b35f86a10026dbd2d864e6b"],["c41916365abb2b5d09192f5f2dbeafec208f020f12570a184dbadc3e58595997","4f14351d0087efa49d245b328984989d5caf9450f34bfc0ed16e96b58fa9913"],["841d6063a586fa475a724604da03bc5b92a2e0d2e0a36acfe4c73a5514742881","73867f59c0659e81904f9a1c7543698e62562d6744c169ce7a36de01a8d6154"],["5e95bb399a6971d376026947f89bde2f282b33810928be4ded112ac4d70e20d5","39f23f366809085beebfc71181313775a99c9aed7d8ba38b161384c746012865"],["36e4641a53948fd476c39f8a99fd974e5ec07564b5315d8bf99471bca0ef2f66","d2424b1b1abe4eb8164227b085c9aa9456ea13493fd563e06fd51cf5694c78fc"],["336581ea7bfbbb290c191a2f507a41cf5643842170e914faeab27c2c579f726","ead12168595fe1be99252129b6e56b3391f7ab1410cd1e0ef3dcdcabd2fda224"],["8ab89816dadfd6b6a1f2634fcf00ec8403781025ed6890c4849742706bd43ede","6fdcef09f2f6d0a044e654aef624136f503d459c3e89845858a47a9129cdd24e"],["1e33f1a746c9c5778133344d9299fcaa20b0938e8acff2544bb40284b8c5fb94","60660257dd11b3aa9c8ed618d24edff2306d320f1d03010e33a7d2057f3b3b6"],["85b7c1dcb3cec1b7ee7f30ded79dd20a0ed1f4cc18cbcfcfa410361fd8f08f31","3d98a9cdd026dd43f39048f25a8847f4fcafad1895d7a633c6fed3c35e999511"],["29df9fbd8d9e46509275f4b125d6d45d7fbe9a3b878a7af872a2800661ac5f51","b4c4fe99c775a606e2d8862179139ffda61dc861c019e55cd2876eb2a27d84b"],["a0b1cae06b0a847a3fea6e671aaf8adfdfe58ca2f768105c8082b2e449fce252","ae434102edde0958ec4b19d917a6a28e6b72da1834aff0e650f049503a296cf2"],["4e8ceafb9b3e9a136dc7ff67e840295b499dfb3b2133e4ba113f2e4c0e121e5","cf2174118c8b6d7a4b48f6d534ce5c79422c086a63460502b827ce62a326683c"],["d24a44e047e19b6f5afb81c7ca2f69080a5076689a010919f42725c2b789a33b","6fb8d5591b466f8fc63db50f1c0f1c69013f996887b8244d2cdec417afea8fa3"],["ea01606a7a6c9cdd249fdfcfacb99584001edd28abbab77b5104e98e8e3b35d4","322af4908c7312b0cfbfe369f7a7b3cdb7d4494bc2823700cfd652188a3ea98d"],["af8addbf2b661c8a6c6328655eb96651252007d8c5ea31be4ad196de8ce2131f","6749e67c029b85f52a034eafd096836b2520818680e26ac8f3dfbcdb71749700"],["e3ae1974566ca06cc516d47e0fb165a674a3dabcfca15e722f0e3450f45889","2aeabe7e4531510116217f07bf4d07300de97e4874f81f533420a72eeb0bd6a4"],["591ee355313d99721cf6993ffed1e3e301993ff3ed258802075ea8ced397e246","b0ea558a113c30bea60fc4775460c7901ff0b053d25ca2bdeee98f1a4be5d196"],["11396d55fda54c49f19aa97318d8da61fa8584e47b084945077cf03255b52984","998c74a8cd45ac01289d5833a7beb4744ff536b01b257be4c5767bea93ea57a4"],["3c5d2a1ba39c5a1790000738c9e0c40b8dcdfd5468754b6405540157e017aa7a","b2284279995a34e2f9d4de7396fc18b80f9b8b9fdd270f6661f79ca4c81bd257"],["cc8704b8a60a0defa3a99a7299f2e9c3fbc395afb04ac078425ef8a1793cc030","bdd46039feed17881d1e0862db347f8cf395b74fc4bcdc4e940b74e3ac1f1b13"],["c533e4f7ea8555aacd9777ac5cad29b97dd4defccc53ee7ea204119b2889b197","6f0a256bc5efdf429a2fb6242f1a43a2d9b925bb4a4b3a26bb8e0f45eb596096"],["c14f8f2ccb27d6f109f6d08d03cc96a69ba8c34eec07bbcf566d48e33da6593","c359d6923bb398f7fd4473e16fe1c28475b740dd098075e6c0e8649113dc3a38"],["a6cbc3046bc6a450bac24789fa17115a4c9739ed75f8f21ce441f72e0b90e6ef","21ae7f4680e889bb130619e2c0f95a360ceb573c70603139862afd617fa9b9f"],["347d6d9a02c48927ebfb86c1359b1caf130a3c0267d11ce6344b39f99d43cc38","60ea7f61a353524d1c987f6ecec92f086d565ab687870cb12689ff1e31c74448"],["da6545d2181db8d983f7dcb375ef5866d47c67b1bf31c8cf855ef7437b72656a","49b96715ab6878a79e78f07ce5680c5d6673051b4935bd897fea824b77dc208a"],["c40747cc9d012cb1a13b8148309c6de7ec25d6945d657146b9d5994b8feb1111","5ca560753be2a12fc6de6caf2cb489565db936156b9514e1bb5e83037e0fa2d4"],["4e42c8ec82c99798ccf3a610be870e78338c7f713348bd34c8203ef4037f3502","7571d74ee5e0fb92a7a8b33a07783341a5492144cc54bcc40a94473693606437"],["3775ab7089bc6af823aba2e1af70b236d251cadb0c86743287522a1b3b0dedea","be52d107bcfa09d8bcb9736a828cfa7fac8db17bf7a76a2c42ad961409018cf7"],["cee31cbf7e34ec379d94fb814d3d775ad954595d1314ba8846959e3e82f74e26","8fd64a14c06b589c26b947ae2bcf6bfa0149ef0be14ed4d80f448a01c43b1c6d"],["b4f9eaea09b6917619f6ea6a4eb5464efddb58fd45b1ebefcdc1a01d08b47986","39e5c9925b5a54b07433a4f18c61726f8bb131c012ca542eb24a8ac07200682a"],["d4263dfc3d2df923a0179a48966d30ce84e2515afc3dccc1b77907792ebcc60e","62dfaf07a0f78feb30e30d6295853ce189e127760ad6cf7fae164e122a208d54"],["48457524820fa65a4f8d35eb6930857c0032acc0a4a2de422233eeda897612c4","25a748ab367979d98733c38a1fa1c2e7dc6cc07db2d60a9ae7a76aaa49bd0f77"],["dfeeef1881101f2cb11644f3a2afdfc2045e19919152923f367a1767c11cceda","ecfb7056cf1de042f9420bab396793c0c390bde74b4bbdff16a83ae09a9a7517"],["6d7ef6b17543f8373c573f44e1f389835d89bcbc6062ced36c82df83b8fae859","cd450ec335438986dfefa10c57fea9bcc521a0959b2d80bbf74b190dca712d10"],["e75605d59102a5a2684500d3b991f2e3f3c88b93225547035af25af66e04541f","f5c54754a8f71ee540b9b48728473e314f729ac5308b06938360990e2bfad125"],["eb98660f4c4dfaa06a2be453d5020bc99a0c2e60abe388457dd43fefb1ed620c","6cb9a8876d9cb8520609af3add26cd20a0a7cd8a9411131ce85f44100099223e"],["13e87b027d8514d35939f2e6892b19922154596941888336dc3563e3b8dba942","fef5a3c68059a6dec5d624114bf1e91aac2b9da568d6abeb2570d55646b8adf1"],["ee163026e9fd6fe017c38f06a5be6fc125424b371ce2708e7bf4491691e5764a","1acb250f255dd61c43d94ccc670d0f58f49ae3fa15b96623e5430da0ad6c62b2"],["b268f5ef9ad51e4d78de3a750c2dc89b1e626d43505867999932e5db33af3d80","5f310d4b3c99b9ebb19f77d41c1dee018cf0d34fd4191614003e945a1216e423"],["ff07f3118a9df035e9fad85eb6c7bfe42b02f01ca99ceea3bf7ffdba93c4750d","438136d603e858a3a5c440c38eccbaddc1d2942114e2eddd4740d098ced1f0d8"],["8d8b9855c7c052a34146fd20ffb658bea4b9f69e0d825ebec16e8c3ce2b526a1","cdb559eedc2d79f926baf44fb84ea4d44bcf50fee51d7ceb30e2e7f463036758"],["52db0b5384dfbf05bfa9d472d7ae26dfe4b851ceca91b1eba54263180da32b63","c3b997d050ee5d423ebaf66a6db9f57b3180c902875679de924b69d84a7b375"],["e62f9490d3d51da6395efd24e80919cc7d0f29c3f3fa48c6fff543becbd43352","6d89ad7ba4876b0b22c2ca280c682862f342c8591f1daf5170e07bfd9ccafa7d"],["7f30ea2476b399b4957509c88f77d0191afa2ff5cb7b14fd6d8e7d65aaab1193","ca5ef7d4b231c94c3b15389a5f6311e9daff7bb67b103e9880ef4bff637acaec"],["5098ff1e1d9f14fb46a210fada6c903fef0fb7b4a1dd1d9ac60a0361800b7a00","9731141d81fc8f8084d37c6e7542006b3ee1b40d60dfe5362a5b132fd17ddc0"],["32b78c7de9ee512a72895be6b9cbefa6e2f3c4ccce445c96b9f2c81e2778ad58","ee1849f513df71e32efc3896ee28260c73bb80547ae2275ba497237794c8753c"],["e2cb74fddc8e9fbcd076eef2a7c72b0ce37d50f08269dfc074b581550547a4f7","d3aa2ed71c9dd2247a62df062736eb0baddea9e36122d2be8641abcb005cc4a4"],["8438447566d4d7bedadc299496ab357426009a35f235cb141be0d99cd10ae3a8","c4e1020916980a4da5d01ac5e6ad330734ef0d7906631c4f2390426b2edd791f"],["4162d488b89402039b584c6fc6c308870587d9c46f660b878ab65c82c711d67e","67163e903236289f776f22c25fb8a3afc1732f2b84b4e95dbda47ae5a0852649"],["3fad3fa84caf0f34f0f89bfd2dcf54fc175d767aec3e50684f3ba4a4bf5f683d","cd1bc7cb6cc407bb2f0ca647c718a730cf71872e7d0d2a53fa20efcdfe61826"],["674f2600a3007a00568c1a7ce05d0816c1fb84bf1370798f1c69532faeb1a86b","299d21f9413f33b3edf43b257004580b70db57da0b182259e09eecc69e0d38a5"],["d32f4da54ade74abb81b815ad1fb3b263d82d6c692714bcff87d29bd5ee9f08f","f9429e738b8e53b968e99016c059707782e14f4535359d582fc416910b3eea87"],["30e4e670435385556e593657135845d36fbb6931f72b08cb1ed954f1e3ce3ff6","462f9bce619898638499350113bbc9b10a878d35da70740dc695a559eb88db7b"],["be2062003c51cc3004682904330e4dee7f3dcd10b01e580bf1971b04d4cad297","62188bc49d61e5428573d48a74e1c655b1c61090905682a0d5558ed72dccb9bc"],["93144423ace3451ed29e0fb9ac2af211cb6e84a601df5993c419859fff5df04a","7c10dfb164c3425f5c71a3f9d7992038f1065224f72bb9d1d902a6d13037b47c"],["b015f8044f5fcbdcf21ca26d6c34fb8197829205c7b7d2a7cb66418c157b112c","ab8c1e086d04e813744a655b2df8d5f83b3cdc6faa3088c1d3aea1454e3a1d5f"],["d5e9e1da649d97d89e4868117a465a3a4f8a18de57a140d36b3f2af341a21b52","4cb04437f391ed73111a13cc1d4dd0db1693465c2240480d8955e8592f27447a"],["d3ae41047dd7ca065dbf8ed77b992439983005cd72e16d6f996a5316d36966bb","bd1aeb21ad22ebb22a10f0303417c6d964f8cdd7df0aca614b10dc14d125ac46"],["463e2763d885f958fc66cdd22800f0a487197d0a82e377b49f80af87c897b065","bfefacdb0e5d0fd7df3a311a94de062b26b80c61fbc97508b79992671ef7ca7f"],["7985fdfd127c0567c6f53ec1bb63ec3158e597c40bfe747c83cddfc910641917","603c12daf3d9862ef2b25fe1de289aed24ed291e0ec6708703a5bd567f32ed03"],["74a1ad6b5f76e39db2dd249410eac7f99e74c59cb83d2d0ed5ff1543da7703e9","cc6157ef18c9c63cd6193d83631bbea0093e0968942e8c33d5737fd790e0db08"],["30682a50703375f602d416664ba19b7fc9bab42c72747463a71d0896b22f6da3","553e04f6b018b4fa6c8f39e7f311d3176290d0e0f19ca73f17714d9977a22ff8"],["9e2158f0d7c0d5f26c3791efefa79597654e7a2b2464f52b1ee6c1347769ef57","712fcdd1b9053f09003a3481fa7762e9ffd7c8ef35a38509e2fbf2629008373"],["176e26989a43c9cfeba4029c202538c28172e566e3c4fce7322857f3be327d66","ed8cc9d04b29eb877d270b4878dc43c19aefd31f4eee09ee7b47834c1fa4b1c3"],["75d46efea3771e6e68abb89a13ad747ecf1892393dfc4f1b7004788c50374da8","9852390a99507679fd0b86fd2b39a868d7efc22151346e1a3ca4726586a6bed8"],["809a20c67d64900ffb698c4c825f6d5f2310fb0451c869345b7319f645605721","9e994980d9917e22b76b061927fa04143d096ccc54963e6a5ebfa5f3f8e286c1"],["1b38903a43f7f114ed4500b4eac7083fdefece1cf29c63528d563446f972c180","4036edc931a60ae889353f77fd53de4a2708b26b6f5da72ad3394119daf408f9"]]}}},function(e,t,n){"use strict";function a(e){return(a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}var r=n(7),A=n(184),i=n(14),o=n(69),s=n(107),p=i.assert,u=n(185),c=n(186);function d(e){if(!(this instanceof d))return new d(e);"string"==typeof e&&(p(Object.prototype.hasOwnProperty.call(o,e),"Unknown curve "+e),e=o[e]),e instanceof o.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}e.exports=d,d.prototype.keyPair=function(e){return new u(this,e)},d.prototype.keyFromPrivate=function(e,t){return u.fromPrivate(this,e,t)},d.prototype.keyFromPublic=function(e,t){return u.fromPublic(this,e,t)},d.prototype.genKeyPair=function(e){e||(e={});for(var t=new A({hash:this.hash,pers:e.pers,persEnc:e.persEnc||"utf8",entropy:e.entropy||s(this.hash.hmacStrength),entropyEnc:e.entropy&&e.entropyEnc||"utf8",nonce:this.n.toArray()}),n=this.n.byteLength(),a=this.n.sub(new r(2));;){var i=new r(t.generate(n));if(!(i.cmp(a)>0))return i.iaddn(1),this.keyFromPrivate(i)}},d.prototype._truncateToN=function(e,t){var n=8*e.byteLength()-this.n.bitLength();return n>0&&(e=e.ushrn(n)),!t&&e.cmp(this.n)>=0?e.sub(this.n):e},d.prototype.sign=function(e,t,n,i){"object"===a(n)&&(i=n,n=null),i||(i={}),t=this.keyFromPrivate(t,n),e=this._truncateToN(new r(e,16));for(var o=this.n.byteLength(),s=t.getPrivate().toArray("be",o),p=e.toArray("be",o),u=new A({hash:this.hash,entropy:s,nonce:p,pers:i.pers,persEnc:i.persEnc||"utf8"}),d=this.n.sub(new r(1)),l=0;;l++){var g=i.k?i.k(l):new r(u.generate(this.n.byteLength()));if(!((g=this._truncateToN(g,!0)).cmpn(1)<=0||g.cmp(d)>=0)){var I=this.g.mul(g);if(!I.isInfinity()){var f=I.getX(),h=f.umod(this.n);if(0!==h.cmpn(0)){var y=g.invm(this.n).mul(h.mul(t.getPrivate()).iadd(e));if(0!==(y=y.umod(this.n)).cmpn(0)){var m=(I.getY().isOdd()?1:0)|(0!==f.cmp(h)?2:0);return i.canonical&&y.cmp(this.nh)>0&&(y=this.n.sub(y),m^=1),new c({r:h,s:y,recoveryParam:m})}}}}}},d.prototype.verify=function(e,t,n,a){e=this._truncateToN(new r(e,16)),n=this.keyFromPublic(n,a);var A=(t=new c(t,"hex")).r,i=t.s;if(A.cmpn(1)<0||A.cmp(this.n)>=0)return!1;if(i.cmpn(1)<0||i.cmp(this.n)>=0)return!1;var o,s=i.invm(this.n),p=s.mul(e).umod(this.n),u=s.mul(A).umod(this.n);return this.curve._maxwellTrick?!(o=this.g.jmulAdd(p,n.getPublic(),u)).isInfinity()&&o.eqXToP(A):!(o=this.g.mulAdd(p,n.getPublic(),u)).isInfinity()&&0===o.getX().umod(this.n).cmp(A)},d.prototype.recoverPubKey=function(e,t,n,a){p((3&n)===n,"The recovery param is more than two bits"),t=new c(t,a);var A=this.n,i=new r(e),o=t.r,s=t.s,u=1&n,d=n>>1;if(o.cmp(this.curve.p.umod(this.curve.n))>=0&&d)throw new Error("Unable to find sencond key candinate");o=d?this.curve.pointFromX(o.add(this.curve.n),u):this.curve.pointFromX(o,u);var l=t.r.invm(A),g=A.sub(i).mul(l).umod(A),I=s.mul(l).umod(A);return this.g.mulAdd(g,o,I)},d.prototype.getKeyRecoveryParam=function(e,t,n,a){if(null!==(t=new c(t,a)).recoveryParam)return t.recoveryParam;for(var r=0;r<4;r++){var A;try{A=this.recoverPubKey(e,t,r)}catch(e){continue}if(A.eq(n))return r}throw new Error("Unable to find valid recovery factor")}},function(e,t,n){"use strict";var a=n(70),r=n(106),A=n(11);function i(e){if(!(this instanceof i))return new i(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=r.toArray(e.entropy,e.entropyEnc||"hex"),n=r.toArray(e.nonce,e.nonceEnc||"hex"),a=r.toArray(e.pers,e.persEnc||"hex");A(t.length>=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits"),this._init(t,n,a)}e.exports=i,i.prototype._init=function(e,t,n){var a=e.concat(t).concat(n);this.K=new Array(this.outLen/8),this.V=new Array(this.outLen/8);for(var r=0;r<this.V.length;r++)this.K[r]=0,this.V[r]=1;this._update(a),this._reseed=1,this.reseedInterval=281474976710656},i.prototype._hmac=function(){return new a.hmac(this.hash,this.K)},i.prototype._update=function(e){var t=this._hmac().update(this.V).update([0]);e&&(t=t.update(e)),this.K=t.digest(),this.V=this._hmac().update(this.V).digest(),e&&(this.K=this._hmac().update(this.V).update([1]).update(e).digest(),this.V=this._hmac().update(this.V).digest())},i.prototype.reseed=function(e,t,n,a){"string"!=typeof t&&(a=n,n=t,t=null),e=r.toArray(e,t),n=r.toArray(n,a),A(e.length>=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits"),this._update(e.concat(n||[])),this._reseed=1},i.prototype.generate=function(e,t,n,a){if(this._reseed>this.reseedInterval)throw new Error("Reseed is required");"string"!=typeof t&&(a=n,n=t,t=null),n&&(n=r.toArray(n,a||"hex"),this._update(n));for(var A=[];A.length<e;)this.V=this._hmac().update(this.V).digest(),A=A.concat(this.V);var i=A.slice(0,e);return this._update(n),this._reseed++,r.encode(i,t)}},function(e,t,n){"use strict";var a=n(7),r=n(14).assert;function A(e,t){this.ec=e,this.priv=null,this.pub=null,t.priv&&this._importPrivate(t.priv,t.privEnc),t.pub&&this._importPublic(t.pub,t.pubEnc)}e.exports=A,A.fromPublic=function(e,t,n){return t instanceof A?t:new A(e,{pub:t,pubEnc:n})},A.fromPrivate=function(e,t,n){return t instanceof A?t:new A(e,{priv:t,privEnc:n})},A.prototype.validate=function(){var e=this.getPublic();return e.isInfinity()?{result:!1,reason:"Invalid public key"}:e.validate()?e.mul(this.ec.curve.n).isInfinity()?{result:!0,reason:null}:{result:!1,reason:"Public key * N != O"}:{result:!1,reason:"Public key is not a point"}},A.prototype.getPublic=function(e,t){return"string"==typeof e&&(t=e,e=null),this.pub||(this.pub=this.ec.g.mul(this.priv)),t?this.pub.encode(t,e):this.pub},A.prototype.getPrivate=function(e){return"hex"===e?this.priv.toString(16,2):this.priv},A.prototype._importPrivate=function(e,t){this.priv=new a(e,t||16),this.priv=this.priv.umod(this.ec.curve.n)},A.prototype._importPublic=function(e,t){if(e.x||e.y)return"mont"===this.ec.curve.type?r(e.x,"Need x coordinate"):"short"!==this.ec.curve.type&&"edwards"!==this.ec.curve.type||r(e.x&&e.y,"Need both x and y coordinate"),void(this.pub=this.ec.curve.point(e.x,e.y));this.pub=this.ec.curve.decodePoint(e,t)},A.prototype.derive=function(e){return e.validate()||r(e.validate(),"public point not validated"),e.mul(this.priv).getX()},A.prototype.sign=function(e,t,n){return this.ec.sign(e,this,t,n)},A.prototype.verify=function(e,t){return this.ec.verify(e,t,this)},A.prototype.inspect=function(){return"<Key priv: "+(this.priv&&this.priv.toString(16,2))+" pub: "+(this.pub&&this.pub.inspect())+" >"}},function(e,t,n){"use strict";var a=n(7),r=n(14),A=r.assert;function i(e,t){if(e instanceof i)return e;this._importDER(e,t)||(A(e.r&&e.s,"Signature without r or s"),this.r=new a(e.r,16),this.s=new a(e.s,16),void 0===e.recoveryParam?this.recoveryParam=null:this.recoveryParam=e.recoveryParam)}function o(){this.place=0}function s(e,t){var n=e[t.place++];if(!(128&n))return n;var a=15&n;if(0===a||a>4)return!1;for(var r=0,A=0,i=t.place;A<a;A++,i++)r<<=8,r|=e[i],r>>>=0;return!(r<=127)&&(t.place=i,r)}function p(e){for(var t=0,n=e.length-1;!e[t]&&!(128&e[t+1])&&t<n;)t++;return 0===t?e:e.slice(t)}function u(e,t){if(t<128)e.push(t);else{var n=1+(Math.log(t)/Math.LN2>>>3);for(e.push(128|n);--n;)e.push(t>>>(n<<3)&255);e.push(t)}}e.exports=i,i.prototype._importDER=function(e,t){e=r.toArray(e,t);var n=new o;if(48!==e[n.place++])return!1;var A=s(e,n);if(!1===A)return!1;if(A+n.place!==e.length)return!1;if(2!==e[n.place++])return!1;var i=s(e,n);if(!1===i)return!1;var p=e.slice(n.place,i+n.place);if(n.place+=i,2!==e[n.place++])return!1;var u=s(e,n);if(!1===u)return!1;if(e.length!==u+n.place)return!1;var c=e.slice(n.place,u+n.place);if(0===p[0]){if(!(128&p[1]))return!1;p=p.slice(1)}if(0===c[0]){if(!(128&c[1]))return!1;c=c.slice(1)}return this.r=new a(p),this.s=new a(c),this.recoveryParam=null,!0},i.prototype.toDER=function(e){var t=this.r.toArray(),n=this.s.toArray();for(128&t[0]&&(t=[0].concat(t)),128&n[0]&&(n=[0].concat(n)),t=p(t),n=p(n);!(n[0]||128&n[1]);)n=n.slice(1);var a=[2];u(a,t.length),(a=a.concat(t)).push(2),u(a,n.length);var A=a.concat(n),i=[48];return u(i,A.length),i=i.concat(A),r.encode(i,e)}},function(e,t,n){"use strict";var a=n(70),r=n(69),A=n(14),i=A.assert,o=A.parseBytes,s=n(188),p=n(189);function u(e){if(i("ed25519"===e,"only tested with ed25519 so far"),!(this instanceof u))return new u(e);e=r[e].curve,this.curve=e,this.g=e.g,this.g.precompute(e.n.bitLength()+1),this.pointClass=e.point().constructor,this.encodingLength=Math.ceil(e.n.bitLength()/8),this.hash=a.sha512}e.exports=u,u.prototype.sign=function(e,t){e=o(e);var n=this.keyFromSecret(t),a=this.hashInt(n.messagePrefix(),e),r=this.g.mul(a),A=this.encodePoint(r),i=this.hashInt(A,n.pubBytes(),e).mul(n.priv()),s=a.add(i).umod(this.curve.n);return this.makeSignature({R:r,S:s,Rencoded:A})},u.prototype.verify=function(e,t,n){e=o(e),t=this.makeSignature(t);var a=this.keyFromPublic(n),r=this.hashInt(t.Rencoded(),a.pubBytes(),e),A=this.g.mul(t.S());return t.R().add(a.pub().mul(r)).eq(A)},u.prototype.hashInt=function(){for(var e=this.hash(),t=0;t<arguments.length;t++)e.update(arguments[t]);return A.intFromLE(e.digest()).umod(this.curve.n)},u.prototype.keyFromPublic=function(e){return s.fromPublic(this,e)},u.prototype.keyFromSecret=function(e){return s.fromSecret(this,e)},u.prototype.makeSignature=function(e){return e instanceof p?e:new p(this,e)},u.prototype.encodePoint=function(e){var t=e.getY().toArray("le",this.encodingLength);return t[this.encodingLength-1]|=e.getX().isOdd()?128:0,t},u.prototype.decodePoint=function(e){var t=(e=A.parseBytes(e)).length-1,n=e.slice(0,t).concat(-129&e[t]),a=0!=(128&e[t]),r=A.intFromLE(n);return this.curve.pointFromY(r,a)},u.prototype.encodeInt=function(e){return e.toArray("le",this.encodingLength)},u.prototype.decodeInt=function(e){return A.intFromLE(e)},u.prototype.isPoint=function(e){return e instanceof this.pointClass}},function(e,t,n){"use strict";var a=n(14),r=a.assert,A=a.parseBytes,i=a.cachedProperty;function o(e,t){this.eddsa=e,this._secret=A(t.secret),e.isPoint(t.pub)?this._pub=t.pub:this._pubBytes=A(t.pub)}o.fromPublic=function(e,t){return t instanceof o?t:new o(e,{pub:t})},o.fromSecret=function(e,t){return t instanceof o?t:new o(e,{secret:t})},o.prototype.secret=function(){return this._secret},i(o,"pubBytes",(function(){return this.eddsa.encodePoint(this.pub())})),i(o,"pub",(function(){return this._pubBytes?this.eddsa.decodePoint(this._pubBytes):this.eddsa.g.mul(this.priv())})),i(o,"privBytes",(function(){var e=this.eddsa,t=this.hash(),n=e.encodingLength-1,a=t.slice(0,e.encodingLength);return a[0]&=248,a[n]&=127,a[n]|=64,a})),i(o,"priv",(function(){return this.eddsa.decodeInt(this.privBytes())})),i(o,"hash",(function(){return this.eddsa.hash().update(this.secret()).digest()})),i(o,"messagePrefix",(function(){return this.hash().slice(this.eddsa.encodingLength)})),o.prototype.sign=function(e){return r(this._secret,"KeyPair can only verify"),this.eddsa.sign(e,this)},o.prototype.verify=function(e,t){return this.eddsa.verify(e,t,this)},o.prototype.getSecret=function(e){return r(this._secret,"KeyPair is public only"),a.encode(this.secret(),e)},o.prototype.getPublic=function(e){return a.encode(this.pubBytes(),e)},e.exports=o},function(e,t,n){"use strict";function a(e){return(a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}var r=n(7),A=n(14),i=A.assert,o=A.cachedProperty,s=A.parseBytes;function p(e,t){this.eddsa=e,"object"!==a(t)&&(t=s(t)),Array.isArray(t)&&(t={R:t.slice(0,e.encodingLength),S:t.slice(e.encodingLength)}),i(t.R&&t.S,"Signature without R or S"),e.isPoint(t.R)&&(this._R=t.R),t.S instanceof r&&(this._S=t.S),this._Rencoded=Array.isArray(t.R)?t.R:t.Rencoded,this._Sencoded=Array.isArray(t.S)?t.S:t.Sencoded}o(p,"S",(function(){return this.eddsa.decodeInt(this.Sencoded())})),o(p,"R",(function(){return this.eddsa.decodePoint(this.Rencoded())})),o(p,"Rencoded",(function(){return this.eddsa.encodePoint(this.R())})),o(p,"Sencoded",(function(){return this.eddsa.encodeInt(this.S())})),p.prototype.toBytes=function(){return this.Rencoded().concat(this.Sencoded())},p.prototype.toHex=function(){return A.encode(this.toBytes(),"hex").toUpperCase()},e.exports=p},function(e,t,n){var a=t;a.utils=n(18),a.common=n(42),a.sha=n(191),a.ripemd=n(195),a.hmac=n(196),a.sha1=a.sha.sha1,a.sha256=a.sha.sha256,a.sha224=a.sha.sha224,a.sha384=a.sha.sha384,a.sha512=a.sha.sha512,a.ripemd160=a.ripemd.ripemd160},function(e,t,n){"use strict";t.sha1=n(192),t.sha224=n(193),t.sha256=n(113),t.sha384=n(194),t.sha512=n(114)},function(e,t,n){"use strict";var a=n(18),r=n(42),A=n(112),i=a.rotl32,o=a.sum32,s=a.sum32_5,p=A.ft_1,u=r.BlockHash,c=[1518500249,1859775393,2400959708,3395469782];function d(){if(!(this instanceof d))return new d;u.call(this),this.h=[1732584193,4023233417,2562383102,271733878,3285377520],this.W=new Array(80)}a.inherits(d,u),e.exports=d,d.blockSize=512,d.outSize=160,d.hmacStrength=80,d.padLength=64,d.prototype._update=function(e,t){for(var n=this.W,a=0;a<16;a++)n[a]=e[t+a];for(;a<n.length;a++)n[a]=i(n[a-3]^n[a-8]^n[a-14]^n[a-16],1);var r=this.h[0],A=this.h[1],u=this.h[2],d=this.h[3],l=this.h[4];for(a=0;a<n.length;a++){var g=~~(a/20),I=s(i(r,5),p(g,A,u,d),l,n[a],c[g]);l=d,d=u,u=i(A,30),A=r,r=I}this.h[0]=o(this.h[0],r),this.h[1]=o(this.h[1],A),this.h[2]=o(this.h[2],u),this.h[3]=o(this.h[3],d),this.h[4]=o(this.h[4],l)},d.prototype._digest=function(e){return"hex"===e?a.toHex32(this.h,"big"):a.split32(this.h,"big")}},function(e,t,n){"use strict";var a=n(18),r=n(113);function A(){if(!(this instanceof A))return new A;r.call(this),this.h=[3238371032,914150663,812702999,4144912697,4290775857,1750603025,1694076839,3204075428]}a.inherits(A,r),e.exports=A,A.blockSize=512,A.outSize=224,A.hmacStrength=192,A.padLength=64,A.prototype._digest=function(e){return"hex"===e?a.toHex32(this.h.slice(0,7),"big"):a.split32(this.h.slice(0,7),"big")}},function(e,t,n){"use strict";var a=n(18),r=n(114);function A(){if(!(this instanceof A))return new A;r.call(this),this.h=[3418070365,3238371032,1654270250,914150663,2438529370,812702999,355462360,4144912697,1731405415,4290775857,2394180231,1750603025,3675008525,1694076839,1203062813,3204075428]}a.inherits(A,r),e.exports=A,A.blockSize=1024,A.outSize=384,A.hmacStrength=192,A.padLength=128,A.prototype._digest=function(e){return"hex"===e?a.toHex32(this.h.slice(0,12),"big"):a.split32(this.h.slice(0,12),"big")}},function(e,t,n){"use strict";var a=n(18),r=n(42),A=a.rotl32,i=a.sum32,o=a.sum32_3,s=a.sum32_4,p=r.BlockHash;function u(){if(!(this instanceof u))return new u;p.call(this),this.h=[1732584193,4023233417,2562383102,271733878,3285377520],this.endian="little"}function c(e,t,n,a){return e<=15?t^n^a:e<=31?t&n|~t&a:e<=47?(t|~n)^a:e<=63?t&a|n&~a:t^(n|~a)}function d(e){return e<=15?0:e<=31?1518500249:e<=47?1859775393:e<=63?2400959708:2840853838}function l(e){return e<=15?1352829926:e<=31?1548603684:e<=47?1836072691:e<=63?2053994217:0}a.inherits(u,p),t.ripemd160=u,u.blockSize=512,u.outSize=160,u.hmacStrength=192,u.padLength=64,u.prototype._update=function(e,t){for(var n=this.h[0],a=this.h[1],r=this.h[2],p=this.h[3],u=this.h[4],y=n,m=a,C=r,B=p,E=u,b=0;b<80;b++){var Q=i(A(s(n,c(b,a,r,p),e[g[b]+t],d(b)),f[b]),u);n=u,u=p,p=A(r,10),r=a,a=Q,Q=i(A(s(y,c(79-b,m,C,B),e[I[b]+t],l(b)),h[b]),E),y=E,E=B,B=A(C,10),C=m,m=Q}Q=o(this.h[1],r,B),this.h[1]=o(this.h[2],p,E),this.h[2]=o(this.h[3],u,y),this.h[3]=o(this.h[4],n,m),this.h[4]=o(this.h[0],a,C),this.h[0]=Q},u.prototype._digest=function(e){return"hex"===e?a.toHex32(this.h,"little"):a.split32(this.h,"little")};var g=[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8,3,10,14,4,9,15,8,1,2,7,0,6,13,11,5,12,1,9,11,10,0,8,12,4,13,3,7,15,14,5,6,2,4,0,5,9,7,12,2,10,14,1,3,8,11,6,15,13],I=[5,14,7,0,9,2,11,4,13,6,15,8,1,10,3,12,6,11,3,7,0,13,5,10,14,15,8,12,4,9,1,2,15,5,1,3,7,14,6,9,11,8,12,2,10,0,4,13,8,6,4,1,3,11,15,0,5,12,2,13,9,7,10,14,12,15,10,4,1,5,8,7,6,2,13,14,0,3,9,11],f=[11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8,7,6,8,13,11,9,7,15,7,12,15,9,11,7,13,12,11,13,6,7,14,9,13,15,14,8,13,6,5,12,7,5,11,12,14,15,14,15,9,8,9,14,5,6,8,6,5,12,9,15,5,11,6,8,13,12,5,12,13,14,11,8,5,6],h=[8,9,9,11,13,15,15,5,7,7,8,11,14,14,12,6,9,13,15,7,12,8,9,11,7,7,12,7,6,15,13,11,9,7,15,11,8,6,6,14,12,13,5,14,13,13,7,5,15,5,8,11,14,14,6,14,6,9,12,9,12,5,15,8,8,5,12,9,12,5,14,6,8,13,6,5,15,13,11,11]},function(e,t,n){"use strict";var a=n(18),r=n(11);function A(e,t,n){if(!(this instanceof A))return new A(e,t,n);this.Hash=e,this.blockSize=e.blockSize/8,this.outSize=e.outSize/8,this.inner=null,this.outer=null,this._init(a.toArray(t,n))}e.exports=A,A.prototype._init=function(e){e.length>this.blockSize&&(e=(new this.Hash).update(e).digest()),r(e.length<=this.blockSize);for(var t=e.length;t<this.blockSize;t++)e.push(0);for(t=0;t<e.length;t++)e[t]^=54;for(this.inner=(new this.Hash).update(e),t=0;t<e.length;t++)e[t]^=106;this.outer=(new this.Hash).update(e)},A.prototype.update=function(e,t){return this.inner.update(e,t),this},A.prototype.digest=function(e){return this.outer.update(this.inner.digest()),this.outer.digest(e)}},function(e,t,n){"use strict";var a=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}},r=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});var A=a(n(198)),i=a(n(199)),o=a(n(200)),s=n(73),p=r(n(48)),u=n(16),c=n(1),d=n(103),l=n(22),g=n(8),I=n(72);function f(e){return"string"==typeof e&&"0x"!==e.substring(0,2)&&(e="0x"+e),c.arrayify(e)}function h(e,t){for(e=String(e);e.length<t;)e="0"+e;return e}function y(e){return"string"==typeof e?g.toUtf8Bytes(e,g.UnicodeNormalizationForm.NFKC):c.arrayify(e)}function m(e,t){for(var n=e,a=t.toLowerCase().split("/"),r=0;r<a.length;r++){var A=null;for(var i in n)if(i.toLowerCase()===a[r]){A=n[i];break}if(null===A)return null;n=A}return n}t.decryptCrowdsale=function(e,t){var n=JSON.parse(e);t=y(t);var a=u.getAddress(m(n,"ethaddr")),r=f(m(n,"encseed"));if(!r||r.length%16!=0)throw new Error("invalid encseed");var i=d.pbkdf2(t,t,2e3,32,"sha256").slice(0,16),o=r.slice(0,16),p=r.slice(16),I=new A.default.ModeOfOperation.cbc(i,o),h=c.arrayify(I.decrypt(p));h=A.default.padding.pkcs7.strip(h);for(var C="",B=0;B<h.length;B++)C+=String.fromCharCode(h[B]);var E=g.toUtf8Bytes(C),b=new s.SigningKey(l.keccak256(E));if(b.address!==a)throw new Error("corrupt crowdsale wallet");return b},t.decrypt=function(e,t,n){var a=JSON.parse(e),r=y(t),o=function(e,t){var n=f(m(a,"crypto/ciphertext"));if(c.hexlify(function(e,t){return l.keccak256(c.concat([e,t]))}(e.slice(16,32),n)).substring(2)!==m(a,"crypto/mac").toLowerCase())return t(new Error("invalid password")),null;var r=function(e,t){if("aes-128-ctr"===m(a,"crypto/cipher")){var n=f(m(a,"crypto/cipherparams/iv")),r=new A.default.Counter(n),i=new A.default.ModeOfOperation.ctr(e,r);return c.arrayify(i.decrypt(t))}return null}(e.slice(0,16),n),i=e.slice(32,64);if(!r)return t(new Error("unsupported cipher")),null;var o=new s.SigningKey(r);if(a.address&&o.address!==u.getAddress(a.address))return t(new Error("address mismatch")),null;var d=m(a,"x-ethers/locale");if("0.1"===m(a,"x-ethers/version")&&(null==d||"en"===d)){var g=f(m(a,"x-ethers/mnemonicCiphertext")),I=f(m(a,"x-ethers/mnemonicCounter")),h=new A.default.Counter(I),y=new A.default.ModeOfOperation.ctr(i,h),C=m(a,"x-ethers/path")||p.defaultPath,B=c.arrayify(y.decrypt(g)),E=p.entropyToMnemonic(B),b=p.fromMnemonic(E).derivePath(C);if(b.privateKey!=c.hexlify(r))return t(new Error("mnemonic mismatch")),null;o=new s.SigningKey(b)}return o};return new Promise((function(e,t){var A=m(a,"crypto/kdf");if(A&&"string"==typeof A)if("scrypt"===A.toLowerCase()){var s=f(m(a,"crypto/kdfparams/salt")),p=parseInt(m(a,"crypto/kdfparams/n")),u=parseInt(m(a,"crypto/kdfparams/r")),l=parseInt(m(a,"crypto/kdfparams/p"));if(!p||!u||!l)return void t(new Error("unsupported key-derivation function parameters"));if(0!=(p&p-1))return void t(new Error("unsupported key-derivation function parameter value for N"));if(32!==(h=parseInt(m(a,"crypto/kdfparams/dklen"))))return void t(new Error("unsupported key-derivation derived-key length"));n&&n(0),i.default(r,s,p,u,l,64,(function(a,r,A){if(a)a.progress=r,t(a);else if(A){A=c.arrayify(A);var i=o(A,t);if(!i)return;n&&n(1),e(i)}else if(n)return n(r)}))}else if("pbkdf2"===A.toLowerCase()){s=f(m(a,"crypto/kdfparams/salt"));var g=null,I=m(a,"crypto/kdfparams/prf");if("hmac-sha256"===I)g="sha256";else{if("hmac-sha512"!==I)return void t(new Error("unsupported prf"));g="sha512"}var h,y=parseInt(m(a,"crypto/kdfparams/c"));if(32!==(h=parseInt(m(a,"crypto/kdfparams/dklen"))))return void t(new Error("unsupported key-derivation derived-key length"));var C=d.pbkdf2(r,s,y,h,g),B=o(C,t);if(!B)return;e(B)}else t(new Error("unsupported key-derivation function"));else t(new Error("unsupported key-derivation function"))}))},t.encrypt=function(e,t,n,a){"function"!=typeof n||a||(a=n,n={}),n||(n={});var r=null;if(32!==(r=s.SigningKey.isSigningKey(e)?c.arrayify(e.privateKey):c.arrayify(e)).length)throw new Error("invalid private key");var u=y(t),d=null;if(n.entropy&&(d=c.arrayify(n.entropy)),n.mnemonic)if(d){if(p.entropyToMnemonic(d)!==n.mnemonic)throw new Error("entropy and mnemonic mismatch")}else d=c.arrayify(p.mnemonicToEntropy(n.mnemonic,n.wordlist));var g=n.path;d&&!g&&(g=p.defaultPath);var f=n.client;f||(f="ethers.js");var m=null;m=n.salt?c.arrayify(n.salt):I.randomBytes(32);var C=null;if(n.iv){if(16!==(C=c.arrayify(n.iv)).length)throw new Error("invalid iv")}else C=I.randomBytes(16);var B=null;if(n.uuid){if(16!==(B=c.arrayify(n.uuid)).length)throw new Error("invalid uuid")}else B=I.randomBytes(16);var E=1<<17,b=8,Q=1;return n.scrypt&&(n.scrypt.N&&(E=n.scrypt.N),n.scrypt.r&&(b=n.scrypt.r),n.scrypt.p&&(Q=n.scrypt.p)),new Promise((function(e,t){a&&a(0),i.default(u,m,E,b,Q,64,(function(i,p,u){if(i)i.progress=p,t(i);else if(u){var y=(u=c.arrayify(u)).slice(0,16),v=u.slice(16,32),w=u.slice(32,64),D=new s.SigningKey(r).address,M=new A.default.Counter(C),S=new A.default.ModeOfOperation.ctr(y,M),k=c.arrayify(S.encrypt(r)),x=l.keccak256(c.concat([v,k])),R={address:D.substring(2).toLowerCase(),id:o.default.v4({random:B}),version:3,Crypto:{cipher:"aes-128-ctr",cipherparams:{iv:c.hexlify(C).substring(2)},ciphertext:c.hexlify(k).substring(2),kdf:"scrypt",kdfparams:{salt:c.hexlify(m).substring(2),n:E,dklen:32,p:Q,r:b},mac:x.substring(2)}};if(d){var F=I.randomBytes(16),N=new A.default.Counter(F),_=new A.default.ModeOfOperation.ctr(w,N),T=c.arrayify(_.encrypt(d)),H=new Date,L=H.getUTCFullYear()+"-"+h(H.getUTCMonth()+1,2)+"-"+h(H.getUTCDate(),2)+"T"+h(H.getUTCHours(),2)+"-"+h(H.getUTCMinutes(),2)+"-"+h(H.getUTCSeconds(),2)+".0Z";R["x-ethers"]={client:f,gethFilename:"UTC--"+L+"--"+R.address,mnemonicCounter:c.hexlify(F).substring(2),mnemonicCiphertext:c.hexlify(T).substring(2),path:g,version:"0.1"},n.wordlist&&"string"==typeof n.wordlist.locale&&(R["x-ethers"].locale=n.wordlist.locale)}a&&a(1),e(JSON.stringify(R))}else if(a)return a(p)}))}))}},function(e,t,n){"use strict";!function(t){function n(e){return parseInt(e)===e}function a(e){if(!n(e.length))return!1;for(var t=0;t<e.length;t++)if(!n(e[t])||e[t]<0||e[t]>255)return!1;return!0}function r(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(!a(e))throw new Error("Array contains invalid value: "+e);return new Uint8Array(e)}if(n(e.length)&&a(e))return new Uint8Array(e);throw new Error("unsupported array-like object")}function A(e){return new Uint8Array(e)}function i(e,t,n,a,r){null==a&&null==r||(e=e.slice?e.slice(a,r):Array.prototype.slice.call(e,a,r)),t.set(e,n)}var o,s={toBytes:function(e){var t=[],n=0;for(e=encodeURI(e);n<e.length;){var a=e.charCodeAt(n++);37===a?(t.push(parseInt(e.substr(n,2),16)),n+=2):t.push(a)}return r(t)},fromBytes:function(e){for(var t=[],n=0;n<e.length;){var a=e[n];a<128?(t.push(String.fromCharCode(a)),n++):a>191&&a<224?(t.push(String.fromCharCode((31&a)<<6|63&e[n+1])),n+=2):(t.push(String.fromCharCode((15&a)<<12|(63&e[n+1])<<6|63&e[n+2])),n+=3)}return t.join("")}},p=(o="0123456789abcdef",{toBytes:function(e){for(var t=[],n=0;n<e.length;n+=2)t.push(parseInt(e.substr(n,2),16));return t},fromBytes:function(e){for(var t=[],n=0;n<e.length;n++){var a=e[n];t.push(o[(240&a)>>4]+o[15&a])}return t.join("")}}),u={16:10,24:12,32:14},c=[1,2,4,8,16,32,64,128,27,54,108,216,171,77,154,47,94,188,99,198,151,53,106,212,179,125,250,239,197,145],d=[99,124,119,123,242,107,111,197,48,1,103,43,254,215,171,118,202,130,201,125,250,89,71,240,173,212,162,175,156,164,114,192,183,253,147,38,54,63,247,204,52,165,229,241,113,216,49,21,4,199,35,195,24,150,5,154,7,18,128,226,235,39,178,117,9,131,44,26,27,110,90,160,82,59,214,179,41,227,47,132,83,209,0,237,32,252,177,91,106,203,190,57,74,76,88,207,208,239,170,251,67,77,51,133,69,249,2,127,80,60,159,168,81,163,64,143,146,157,56,245,188,182,218,33,16,255,243,210,205,12,19,236,95,151,68,23,196,167,126,61,100,93,25,115,96,129,79,220,34,42,144,136,70,238,184,20,222,94,11,219,224,50,58,10,73,6,36,92,194,211,172,98,145,149,228,121,231,200,55,109,141,213,78,169,108,86,244,234,101,122,174,8,186,120,37,46,28,166,180,198,232,221,116,31,75,189,139,138,112,62,181,102,72,3,246,14,97,53,87,185,134,193,29,158,225,248,152,17,105,217,142,148,155,30,135,233,206,85,40,223,140,161,137,13,191,230,66,104,65,153,45,15,176,84,187,22],l=[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],g=[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],I=[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],f=[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],h=[1667474886,2088535288,2004326894,2071694838,4075949567,1802223062,1869591006,3318043793,808472672,16843522,1734846926,724270422,4278065639,3621216949,2880169549,1987484396,3402253711,2189597983,3385409673,2105378810,4210693615,1499065266,1195886990,4042263547,2913856577,3570689971,2728590687,2947541573,2627518243,2762274643,1920112356,3233831835,3082273397,4261223649,2475929149,640051788,909531756,1061110142,4160160501,3435941763,875846760,2779116625,3857003729,4059105529,1903268834,3638064043,825316194,353713962,67374088,3351728789,589522246,3284360861,404236336,2526454071,84217610,2593830191,117901582,303183396,2155911963,3806477791,3958056653,656894286,2998062463,1970642922,151591698,2206440989,741110872,437923380,454765878,1852748508,1515908788,2694904667,1381168804,993742198,3604373943,3014905469,690584402,3823320797,791638366,2223281939,1398011302,3520161977,0,3991743681,538992704,4244381667,2981218425,1532751286,1785380564,3419096717,3200178535,960056178,1246420628,1280103576,1482221744,3486468741,3503319995,4025428677,2863326543,4227536621,1128514950,1296947098,859002214,2240123921,1162203018,4193849577,33687044,2139062782,1347481760,1010582648,2678045221,2829640523,1364325282,2745433693,1077985408,2408548869,2459086143,2644360225,943212656,4126475505,3166494563,3065430391,3671750063,555836226,269496352,4294908645,4092792573,3537006015,3452783745,202118168,320025894,3974901699,1600119230,2543297077,1145359496,387397934,3301201811,2812801621,2122220284,1027426170,1684319432,1566435258,421079858,1936954854,1616945344,2172753945,1330631070,3705438115,572679748,707427924,2425400123,2290647819,1179044492,4008585671,3099120491,336870440,3739122087,1583276732,185277718,3688593069,3772791771,842159716,976899700,168435220,1229577106,101059084,606366792,1549591736,3267517855,3553849021,2897014595,1650632388,2442242105,2509612081,3840161747,2038008818,3890688725,3368567691,926374254,1835907034,2374863873,3587531953,1313788572,2846482505,1819063512,1448540844,4109633523,3941213647,1701162954,2054852340,2930698567,134748176,3132806511,2021165296,623210314,774795868,471606328,2795958615,3031746419,3334885783,3907527627,3722280097,1953799400,522133822,1263263126,3183336545,2341176845,2324333839,1886425312,1044267644,3048588401,1718004428,1212733584,50529542,4143317495,235803164,1633788866,892690282,1465383342,3115962473,2256965911,3250673817,488449850,2661202215,3789633753,4177007595,2560144171,286339874,1768537042,3654906025,2391705863,2492770099,2610673197,505291324,2273808917,3924369609,3469625735,1431699370,673740880,3755965093,2358021891,2711746649,2307489801,218961690,3217021541,3873845719,1111672452,1751693520,1094828930,2576986153,757954394,252645662,2964376443,1414855848,3149649517,370555436],y=[1374988112,2118214995,437757123,975658646,1001089995,530400753,2902087851,1273168787,540080725,2910219766,2295101073,4110568485,1340463100,3307916247,641025152,3043140495,3736164937,632953703,1172967064,1576976609,3274667266,2169303058,2370213795,1809054150,59727847,361929877,3211623147,2505202138,3569255213,1484005843,1239443753,2395588676,1975683434,4102977912,2572697195,666464733,3202437046,4035489047,3374361702,2110667444,1675577880,3843699074,2538681184,1649639237,2976151520,3144396420,4269907996,4178062228,1883793496,2403728665,2497604743,1383856311,2876494627,1917518562,3810496343,1716890410,3001755655,800440835,2261089178,3543599269,807962610,599762354,33778362,3977675356,2328828971,2809771154,4077384432,1315562145,1708848333,101039829,3509871135,3299278474,875451293,2733856160,92987698,2767645557,193195065,1080094634,1584504582,3178106961,1042385657,2531067453,3711829422,1306967366,2438237621,1908694277,67556463,1615861247,429456164,3602770327,2302690252,1742315127,2968011453,126454664,3877198648,2043211483,2709260871,2084704233,4169408201,0,159417987,841739592,504459436,1817866830,4245618683,260388950,1034867998,908933415,168810852,1750902305,2606453969,607530554,202008497,2472011535,3035535058,463180190,2160117071,1641816226,1517767529,470948374,3801332234,3231722213,1008918595,303765277,235474187,4069246893,766945465,337553864,1475418501,2943682380,4003061179,2743034109,4144047775,1551037884,1147550661,1543208500,2336434550,3408119516,3069049960,3102011747,3610369226,1113818384,328671808,2227573024,2236228733,3535486456,2935566865,3341394285,496906059,3702665459,226906860,2009195472,733156972,2842737049,294930682,1206477858,2835123396,2700099354,1451044056,573804783,2269728455,3644379585,2362090238,2564033334,2801107407,2776292904,3669462566,1068351396,742039012,1350078989,1784663195,1417561698,4136440770,2430122216,775550814,2193862645,2673705150,1775276924,1876241833,3475313331,3366754619,270040487,3902563182,3678124923,3441850377,1851332852,3969562369,2203032232,3868552805,2868897406,566021896,4011190502,3135740889,1248802510,3936291284,699432150,832877231,708780849,3332740144,899835584,1951317047,4236429990,3767586992,866637845,4043610186,1106041591,2144161806,395441711,1984812685,1139781709,3433712980,3835036895,2664543715,1282050075,3240894392,1181045119,2640243204,25965917,4203181171,4211818798,3009879386,2463879762,3910161971,1842759443,2597806476,933301370,1509430414,3943906441,3467192302,3076639029,3776767469,2051518780,2631065433,1441952575,404016761,1942435775,1408749034,1610459739,3745345300,2017778566,3400528769,3110650942,941896748,3265478751,371049330,3168937228,675039627,4279080257,967311729,135050206,3635733660,1683407248,2076935265,3576870512,1215061108,3501741890],m=[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],C=[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],B=[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],b=[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],Q=[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],v=[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 w(e){for(var t=[],n=0;n<e.length;n+=4)t.push(e[n]<<24|e[n+1]<<16|e[n+2]<<8|e[n+3]);return t}var D=function e(t){if(!(this instanceof e))throw Error("AES must be instanitated with `new`");Object.defineProperty(this,"key",{value:r(t,!0)}),this._prepare()};D.prototype._prepare=function(){var e=u[this.key.length];if(null==e)throw new Error("invalid key size (must be 16, 24 or 32 bytes)");this._Ke=[],this._Kd=[];for(var t=0;t<=e;t++)this._Ke.push([0,0,0,0]),this._Kd.push([0,0,0,0]);var n,a=4*(e+1),r=this.key.length/4,A=w(this.key);for(t=0;t<r;t++)n=t>>2,this._Ke[n][t%4]=A[t],this._Kd[e-n][t%4]=A[t];for(var i,o=0,s=r;s<a;){if(i=A[r-1],A[0]^=d[i>>16&255]<<24^d[i>>8&255]<<16^d[255&i]<<8^d[i>>24&255]^c[o]<<24,o+=1,8!=r)for(t=1;t<r;t++)A[t]^=A[t-1];else{for(t=1;t<r/2;t++)A[t]^=A[t-1];i=A[r/2-1],A[r/2]^=d[255&i]^d[i>>8&255]<<8^d[i>>16&255]<<16^d[i>>24&255]<<24;for(t=r/2+1;t<r;t++)A[t]^=A[t-1]}for(t=0;t<r&&s<a;)p=s>>2,l=s%4,this._Ke[p][l]=A[t],this._Kd[e-p][l]=A[t++],s++}for(var p=1;p<e;p++)for(var l=0;l<4;l++)i=this._Kd[p][l],this._Kd[p][l]=E[i>>24&255]^b[i>>16&255]^Q[i>>8&255]^v[255&i]},D.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,n=[0,0,0,0],a=w(e),r=0;r<4;r++)a[r]^=this._Ke[0][r];for(var i=1;i<t;i++){for(r=0;r<4;r++)n[r]=g[a[r]>>24&255]^I[a[(r+1)%4]>>16&255]^f[a[(r+2)%4]>>8&255]^h[255&a[(r+3)%4]]^this._Ke[i][r];a=n.slice()}var o,s=A(16);for(r=0;r<4;r++)o=this._Ke[t][r],s[4*r]=255&(d[a[r]>>24&255]^o>>24),s[4*r+1]=255&(d[a[(r+1)%4]>>16&255]^o>>16),s[4*r+2]=255&(d[a[(r+2)%4]>>8&255]^o>>8),s[4*r+3]=255&(d[255&a[(r+3)%4]]^o);return s},D.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,n=[0,0,0,0],a=w(e),r=0;r<4;r++)a[r]^=this._Kd[0][r];for(var i=1;i<t;i++){for(r=0;r<4;r++)n[r]=y[a[r]>>24&255]^m[a[(r+3)%4]>>16&255]^C[a[(r+2)%4]>>8&255]^B[255&a[(r+1)%4]]^this._Kd[i][r];a=n.slice()}var o,s=A(16);for(r=0;r<4;r++)o=this._Kd[t][r],s[4*r]=255&(l[a[r]>>24&255]^o>>24),s[4*r+1]=255&(l[a[(r+3)%4]>>16&255]^o>>16),s[4*r+2]=255&(l[a[(r+2)%4]>>8&255]^o>>8),s[4*r+3]=255&(l[255&a[(r+1)%4]]^o);return s};var M=function e(t){if(!(this instanceof e))throw Error("AES must be instanitated with `new`");this.description="Electronic Code Block",this.name="ecb",this._aes=new D(t)};M.prototype.encrypt=function(e){if((e=r(e)).length%16!=0)throw new Error("invalid plaintext size (must be multiple of 16 bytes)");for(var t=A(e.length),n=A(16),a=0;a<e.length;a+=16)i(e,n,0,a,a+16),i(n=this._aes.encrypt(n),t,a);return t},M.prototype.decrypt=function(e){if((e=r(e)).length%16!=0)throw new Error("invalid ciphertext size (must be multiple of 16 bytes)");for(var t=A(e.length),n=A(16),a=0;a<e.length;a+=16)i(e,n,0,a,a+16),i(n=this._aes.decrypt(n),t,a);return t};var S=function e(t,n){if(!(this instanceof e))throw Error("AES must be instanitated with `new`");if(this.description="Cipher Block Chaining",this.name="cbc",n){if(16!=n.length)throw new Error("invalid initialation vector size (must be 16 bytes)")}else n=A(16);this._lastCipherblock=r(n,!0),this._aes=new D(t)};S.prototype.encrypt=function(e){if((e=r(e)).length%16!=0)throw new Error("invalid plaintext size (must be multiple of 16 bytes)");for(var t=A(e.length),n=A(16),a=0;a<e.length;a+=16){i(e,n,0,a,a+16);for(var o=0;o<16;o++)n[o]^=this._lastCipherblock[o];this._lastCipherblock=this._aes.encrypt(n),i(this._lastCipherblock,t,a)}return t},S.prototype.decrypt=function(e){if((e=r(e)).length%16!=0)throw new Error("invalid ciphertext size (must be multiple of 16 bytes)");for(var t=A(e.length),n=A(16),a=0;a<e.length;a+=16){i(e,n,0,a,a+16),n=this._aes.decrypt(n);for(var o=0;o<16;o++)t[a+o]=n[o]^this._lastCipherblock[o];i(e,this._lastCipherblock,0,a,a+16)}return t};var k=function e(t,n,a){if(!(this instanceof e))throw Error("AES must be instanitated with `new`");if(this.description="Cipher Feedback",this.name="cfb",n){if(16!=n.length)throw new Error("invalid initialation vector size (must be 16 size)")}else n=A(16);a||(a=1),this.segmentSize=a,this._shiftRegister=r(n,!0),this._aes=new D(t)};k.prototype.encrypt=function(e){if(e.length%this.segmentSize!=0)throw new Error("invalid plaintext size (must be segmentSize bytes)");for(var t,n=r(e,!0),a=0;a<n.length;a+=this.segmentSize){t=this._aes.encrypt(this._shiftRegister);for(var A=0;A<this.segmentSize;A++)n[a+A]^=t[A];i(this._shiftRegister,this._shiftRegister,0,this.segmentSize),i(n,this._shiftRegister,16-this.segmentSize,a,a+this.segmentSize)}return n},k.prototype.decrypt=function(e){if(e.length%this.segmentSize!=0)throw new Error("invalid ciphertext size (must be segmentSize bytes)");for(var t,n=r(e,!0),a=0;a<n.length;a+=this.segmentSize){t=this._aes.encrypt(this._shiftRegister);for(var A=0;A<this.segmentSize;A++)n[a+A]^=t[A];i(this._shiftRegister,this._shiftRegister,0,this.segmentSize),i(e,this._shiftRegister,16-this.segmentSize,a,a+this.segmentSize)}return n};var x=function e(t,n){if(!(this instanceof e))throw Error("AES must be instanitated with `new`");if(this.description="Output Feedback",this.name="ofb",n){if(16!=n.length)throw new Error("invalid initialation vector size (must be 16 bytes)")}else n=A(16);this._lastPrecipher=r(n,!0),this._lastPrecipherIndex=16,this._aes=new D(t)};x.prototype.encrypt=function(e){for(var t=r(e,!0),n=0;n<t.length;n++)16===this._lastPrecipherIndex&&(this._lastPrecipher=this._aes.encrypt(this._lastPrecipher),this._lastPrecipherIndex=0),t[n]^=this._lastPrecipher[this._lastPrecipherIndex++];return t},x.prototype.decrypt=x.prototype.encrypt;var R=function e(t){if(!(this instanceof e))throw Error("Counter must be instanitated with `new`");0===t||t||(t=1),"number"==typeof t?(this._counter=A(16),this.setValue(t)):this.setBytes(t)};R.prototype.setValue=function(e){if("number"!=typeof e||parseInt(e)!=e)throw new Error("invalid counter value (must be an integer)");for(var t=15;t>=0;--t)this._counter[t]=e%256,e>>=8},R.prototype.setBytes=function(e){if(16!=(e=r(e,!0)).length)throw new Error("invalid counter bytes size (must be 16 bytes)");this._counter=e},R.prototype.increment=function(){for(var e=15;e>=0;e--){if(255!==this._counter[e]){this._counter[e]++;break}this._counter[e]=0}};var F=function e(t,n){if(!(this instanceof e))throw Error("AES must be instanitated with `new`");this.description="Counter",this.name="ctr",n instanceof R||(n=new R(n)),this._counter=n,this._remainingCounter=null,this._remainingCounterIndex=16,this._aes=new D(t)};F.prototype.encrypt=function(e){for(var t=r(e,!0),n=0;n<t.length;n++)16===this._remainingCounterIndex&&(this._remainingCounter=this._aes.encrypt(this._counter._counter),this._remainingCounterIndex=0,this._counter.increment()),t[n]^=this._remainingCounter[this._remainingCounterIndex++];return t},F.prototype.decrypt=F.prototype.encrypt;var N={AES:D,Counter:R,ModeOfOperation:{ecb:M,cbc:S,cfb:k,ofb:x,ctr:F},utils:{hex:p,utf8:s},padding:{pkcs7:{pad:function(e){var t=16-(e=r(e,!0)).length%16,n=A(e.length+t);i(e,n);for(var a=e.length;a<n.length;a++)n[a]=t;return n},strip:function(e){if((e=r(e,!0)).length<16)throw new Error("PKCS#7 invalid length");var t=e[e.length-1];if(t>16)throw new Error("PKCS#7 padding byte out of range");for(var n=e.length-t,a=0;a<t;a++)if(e[n+a]!==t)throw new Error("PKCS#7 invalid padding byte");var o=A(n);return i(e,o,0,0,n),o}}},_arrayTest:{coerceArray:r,createArray:A,copyArray:i}};e.exports=N}()},function(e,t,n){"use strict";!function(t){function n(e){var t=[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],n=1779033703,a=3144134277,r=1013904242,A=2773480762,i=1359893119,o=2600822924,s=528734635,p=1541459225,u=new Array(64);function c(e){for(var c=0,d=e.length;d>=64;){var l,g,I,f,h,y=n,m=a,C=r,B=A,E=i,b=o,Q=s,v=p;for(g=0;g<16;g++)I=c+4*g,u[g]=(255&e[I])<<24|(255&e[I+1])<<16|(255&e[I+2])<<8|255&e[I+3];for(g=16;g<64;g++)f=((l=u[g-2])>>>17|l<<15)^(l>>>19|l<<13)^l>>>10,h=((l=u[g-15])>>>7|l<<25)^(l>>>18|l<<14)^l>>>3,u[g]=(f+u[g-7]|0)+(h+u[g-16]|0)|0;for(g=0;g<64;g++)f=(((E>>>6|E<<26)^(E>>>11|E<<21)^(E>>>25|E<<7))+(E&b^~E&Q)|0)+(v+(t[g]+u[g]|0)|0)|0,h=((y>>>2|y<<30)^(y>>>13|y<<19)^(y>>>22|y<<10))+(y&m^y&C^m&C)|0,v=Q,Q=b,b=E,E=B+f|0,B=C,C=m,m=y,y=f+h|0;n=n+y|0,a=a+m|0,r=r+C|0,A=A+B|0,i=i+E|0,o=o+b|0,s=s+Q|0,p=p+v|0,c+=64,d-=64}}c(e);var d,l=e.length%64,g=e.length/536870912|0,I=e.length<<3,f=l<56?56:120,h=e.slice(e.length-l,e.length);for(h.push(128),d=l+1;d<f;d++)h.push(0);return h.push(g>>>24&255),h.push(g>>>16&255),h.push(g>>>8&255),h.push(g>>>0&255),h.push(I>>>24&255),h.push(I>>>16&255),h.push(I>>>8&255),h.push(I>>>0&255),c(h),[n>>>24&255,n>>>16&255,n>>>8&255,n>>>0&255,a>>>24&255,a>>>16&255,a>>>8&255,a>>>0&255,r>>>24&255,r>>>16&255,r>>>8&255,r>>>0&255,A>>>24&255,A>>>16&255,A>>>8&255,A>>>0&255,i>>>24&255,i>>>16&255,i>>>8&255,i>>>0&255,o>>>24&255,o>>>16&255,o>>>8&255,o>>>0&255,s>>>24&255,s>>>16&255,s>>>8&255,s>>>0&255,p>>>24&255,p>>>16&255,p>>>8&255,p>>>0&255]}function a(e,t,a){var r;e=e.length<=64?e:n(e);var A=64+t.length+4,i=new Array(A),o=new Array(64),s=[];for(r=0;r<64;r++)i[r]=54;for(r=0;r<e.length;r++)i[r]^=e[r];for(r=0;r<t.length;r++)i[64+r]=t[r];for(r=A-4;r<A;r++)i[r]=0;for(r=0;r<64;r++)o[r]=92;for(r=0;r<e.length;r++)o[r]^=e[r];function p(){for(var e=A-1;e>=A-4;e--){if(i[e]++,i[e]<=255)return;i[e]=0}}for(;a>=32;)p(),s=s.concat(n(o.concat(n(i)))),a-=32;return a>0&&(p(),s=s.concat(n(o.concat(n(i))).slice(0,a))),s}function r(e,t,n,a,r){var A;for(s(e,16*(2*n-1),r,0,16),A=0;A<2*n;A++)o(e,16*A,r,16),i(r,a),s(r,0,e,t+16*A,16);for(A=0;A<n;A++)s(e,t+2*A*16,e,16*A,16);for(A=0;A<n;A++)s(e,t+16*(2*A+1),e,16*(A+n),16)}function A(e,t){return e<<t|e>>>32-t}function i(e,t){s(e,0,t,0,16);for(var n=8;n>0;n-=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(n=0;n<16;++n)e[n]+=t[n]}function o(e,t,n,a){for(var r=0;r<a;r++)n[r]^=e[t+r]}function s(e,t,n,a,r){for(;r--;)n[a++]=e[t++]}function p(e){if(!e||"number"!=typeof e.length)return!1;for(var t=0;t<e.length;t++){if("number"!=typeof e[t])return!1;var n=parseInt(e[t]);if(n!=e[t]||n<0||n>=256)return!1}return!0}function u(e,t){var n=parseInt(e);if(e!=n)throw new Error("invalid "+t);return n}e.exports=function(e,t,n,A,i,c,d){if(!d)throw new Error("missing callback");if(n=u(n,"N"),A=u(A,"r"),i=u(i,"p"),c=u(c,"dkLen"),0===n||0!=(n&n-1))throw new Error("N must be power of 2");if(n>2147483647/128/A)throw new Error("N too large");if(A>2147483647/128/i)throw new Error("r too large");if(!p(e))throw new Error("password must be an array or buffer");if(e=Array.prototype.slice.call(e),!p(t))throw new Error("salt must be an array or buffer");t=Array.prototype.slice.call(t);for(var l=a(e,t,128*i*A),g=new Uint32Array(32*i*A),I=0;I<g.length;I++){var f=4*I;g[I]=(255&l[f+3])<<24|(255&l[f+2])<<16|(255&l[f+1])<<8|(255&l[f+0])<<0}var h,y,m=new Uint32Array(64*A),C=new Uint32Array(32*A*n),B=32*A,E=new Uint32Array(16),b=new Uint32Array(16),Q=i*n*2,v=0,w=null,D=!1,M=0,S=0,k=parseInt(1e3/A),x="undefined"!=typeof setImmediate?setImmediate:setTimeout;!function t(){if(D)return d(new Error("cancelled"),v/Q);switch(M){case 0:s(g,y=32*S*A,m,0,B),M=1,h=0;case 1:(u=n-h)>k&&(u=k);for(var p=0;p<u;p++)s(m,0,C,(h+p)*B,B),r(m,B,A,E,b);if(h+=u,v+=u,(I=parseInt(1e3*v/Q))!==w){if(D=d(null,v/Q))break;w=I}if(h<n)break;h=0,M=2;case 2:var u,I;(u=n-h)>k&&(u=k);for(p=0;p<u;p++){var f=m[16*(2*A-1)]&n-1;o(C,f*B,m,B),r(m,B,A,E,b)}if(h+=u,v+=u,(I=parseInt(1e3*v/Q))!==w){if(D=d(null,v/Q))break;w=I}if(h<n)break;if(s(m,0,g,y,B),++S<i){M=0;break}l=[];for(p=0;p<g.length;p++)l.push(g[p]>>0&255),l.push(g[p]>>8&255),l.push(g[p]>>16&255),l.push(g[p]>>24&255);var R=a(e,l,c);return d(null,1,R)}x(t)}()}}()},function(e,t,n){for(var a=n(201),r=[],A={},i=0;i<256;i++)r[i]=(i+256).toString(16).substr(1),A[r[i]]=i;function o(e,t){var n=t||0,a=r;return a[e[n++]]+a[e[n++]]+a[e[n++]]+a[e[n++]]+"-"+a[e[n++]]+a[e[n++]]+"-"+a[e[n++]]+a[e[n++]]+"-"+a[e[n++]]+a[e[n++]]+"-"+a[e[n++]]+a[e[n++]]+a[e[n++]]+a[e[n++]]+a[e[n++]]+a[e[n++]]}var s=a(),p=[1|s[0],s[1],s[2],s[3],s[4],s[5]],u=16383&(s[6]<<8|s[7]),c=0,d=0;function l(e,t,n){var r=t&&n||0;"string"==typeof e&&(t="binary"==e?new Array(16):null,e=null);var A=(e=e||{}).random||(e.rng||a)();if(A[6]=15&A[6]|64,A[8]=63&A[8]|128,t)for(var i=0;i<16;i++)t[r+i]=A[i];return t||o(A)}var g=l;g.v1=function(e,t,n){var a=t&&n||0,r=t||[],A=void 0!==(e=e||{}).clockseq?e.clockseq:u,i=void 0!==e.msecs?e.msecs:(new Date).getTime(),s=void 0!==e.nsecs?e.nsecs:d+1,l=i-c+(s-d)/1e4;if(l<0&&void 0===e.clockseq&&(A=A+1&16383),(l<0||i>c)&&void 0===e.nsecs&&(s=0),s>=1e4)throw new Error("uuid.v1(): Can't create more than 10M uuids/sec");c=i,d=s,u=A;var g=(1e4*(268435455&(i+=122192928e5))+s)%4294967296;r[a++]=g>>>24&255,r[a++]=g>>>16&255,r[a++]=g>>>8&255,r[a++]=255&g;var I=i/4294967296*1e4&268435455;r[a++]=I>>>8&255,r[a++]=255&I,r[a++]=I>>>24&15|16,r[a++]=I>>>16&255,r[a++]=A>>>8|128,r[a++]=255&A;for(var f=e.node||p,h=0;h<6;h++)r[a+h]=f[h];return t||o(r)},g.v4=l,g.parse=function(e,t,n){var a=t&&n||0,r=0;for(t=t||[],e.toLowerCase().replace(/[0-9a-f]{2}/g,(function(e){r<16&&(t[a+r++]=A[e])}));r<16;)t[a+r++]=0;return t},g.unparse=o,e.exports=g},function(e,t,n){var a=n(2).randomBytes;e.exports=function(){return a(16)}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var a=n(40);t.Provider=a.Provider;var r=n(53);t.BaseProvider=r.BaseProvider;var A=n(205);t.EtherscanProvider=A.EtherscanProvider;var i=n(206);t.FallbackProvider=i.FallbackProvider;var o=n(207);t.IpcProvider=o.IpcProvider;var s=n(209);t.InfuraProvider=s.InfuraProvider;var p=n(56);t.JsonRpcProvider=p.JsonRpcProvider,t.JsonRpcSigner=p.JsonRpcSigner;var u=n(210);t.Web3Provider=u.Web3Provider},function(e,t,n){
|
|
65
|
+
*/!function(){"use strict";var n="object"===("undefined"==typeof window?"undefined":t(window))?window:{};!n.JS_SHA3_NO_NODE_JS&&"object"===("undefined"==typeof process?"undefined":t(process))&&process.versions&&process.versions.node&&(n=global);for(var a=!n.JS_SHA3_NO_COMMON_JS&&"object"===t(e)&&e.exports,r="0123456789abcdef".split(""),A=[0,8,16,24],i=[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],o=[224,256,384,512],s=["hex","buffer","arrayBuffer","array"],p=function(e,t,n){return function(a){return new C(e,t,e).update(a)[n]()}},u=function(e,t,n){return function(a,r){return new C(e,t,r).update(a)[n]()}},c=function(e,t){var n=p(e,t,"hex");n.create=function(){return new C(e,t,e)},n.update=function(e){return n.create().update(e)};for(var a=0;a<s.length;++a){var r=s[a];n[r]=p(e,t,r)}return n},d=[{name:"keccak",padding:[1,256,65536,16777216],bits:o,createMethod:c},{name:"sha3",padding:[6,1536,393216,100663296],bits:o,createMethod:c},{name:"shake",padding:[31,7936,2031616,520093696],bits:[128,256],createMethod:function(e,t){var n=u(e,t,"hex");n.create=function(n){return new C(e,t,n)},n.update=function(e,t){return n.create(t).update(e)};for(var a=0;a<s.length;++a){var r=s[a];n[r]=u(e,t,r)}return n}}],l={},g=[],I=0;I<d.length;++I)for(var f=d[I],h=f.bits,y=0;y<h.length;++y){var m=f.name+"_"+h[y];g.push(m),l[m]=f.createMethod(h[y],f.padding)}function C(e,t,n){this.blocks=[],this.s=[],this.padding=t,this.outputBits=n,this.reset=!0,this.block=0,this.start=0,this.blockCount=1600-(e<<1)>>5,this.byteCount=this.blockCount<<2,this.outputBlocks=n>>5,this.extraBytes=(31&n)>>3;for(var a=0;a<50;++a)this.s[a]=0}C.prototype.update=function(e){var t="string"!=typeof e;t&&e.constructor===ArrayBuffer&&(e=new Uint8Array(e));for(var n,a,r=e.length,i=this.blocks,o=this.byteCount,s=this.blockCount,p=0,u=this.s;p<r;){if(this.reset)for(this.reset=!1,i[0]=this.block,n=1;n<s+1;++n)i[n]=0;if(t)for(n=this.start;p<r&&n<o;++p)i[n>>2]|=e[p]<<A[3&n++];else for(n=this.start;p<r&&n<o;++p)(a=e.charCodeAt(p))<128?i[n>>2]|=a<<A[3&n++]:a<2048?(i[n>>2]|=(192|a>>6)<<A[3&n++],i[n>>2]|=(128|63&a)<<A[3&n++]):a<55296||a>=57344?(i[n>>2]|=(224|a>>12)<<A[3&n++],i[n>>2]|=(128|a>>6&63)<<A[3&n++],i[n>>2]|=(128|63&a)<<A[3&n++]):(a=65536+((1023&a)<<10|1023&e.charCodeAt(++p)),i[n>>2]|=(240|a>>18)<<A[3&n++],i[n>>2]|=(128|a>>12&63)<<A[3&n++],i[n>>2]|=(128|a>>6&63)<<A[3&n++],i[n>>2]|=(128|63&a)<<A[3&n++]);if(this.lastByteIndex=n,n>=o){for(this.start=n-o,this.block=i[s],n=0;n<s;++n)u[n]^=i[n];B(u),this.reset=!0}else this.start=n}return this},C.prototype.finalize=function(){var e=this.blocks,t=this.lastByteIndex,n=this.blockCount,a=this.s;if(e[t>>2]|=this.padding[3&t],this.lastByteIndex===this.byteCount)for(e[0]=e[n],t=1;t<n+1;++t)e[t]=0;for(e[n-1]|=2147483648,t=0;t<n;++t)a[t]^=e[t];B(a)},C.prototype.toString=C.prototype.hex=function(){this.finalize();for(var e,t=this.blockCount,n=this.s,a=this.outputBlocks,A=this.extraBytes,i=0,o=0,s="";o<a;){for(i=0;i<t&&o<a;++i,++o)e=n[i],s+=r[e>>4&15]+r[15&e]+r[e>>12&15]+r[e>>8&15]+r[e>>20&15]+r[e>>16&15]+r[e>>28&15]+r[e>>24&15];o%t==0&&(B(n),i=0)}return A&&(e=n[i],A>0&&(s+=r[e>>4&15]+r[15&e]),A>1&&(s+=r[e>>12&15]+r[e>>8&15]),A>2&&(s+=r[e>>20&15]+r[e>>16&15])),s},C.prototype.arrayBuffer=function(){this.finalize();var e,t=this.blockCount,n=this.s,a=this.outputBlocks,r=this.extraBytes,A=0,i=0,o=this.outputBits>>3;e=r?new ArrayBuffer(a+1<<2):new ArrayBuffer(o);for(var s=new Uint32Array(e);i<a;){for(A=0;A<t&&i<a;++A,++i)s[i]=n[A];i%t==0&&B(n)}return r&&(s[A]=n[A],e=e.slice(0,o)),e},C.prototype.buffer=C.prototype.arrayBuffer,C.prototype.digest=C.prototype.array=function(){this.finalize();for(var e,t,n=this.blockCount,a=this.s,r=this.outputBlocks,A=this.extraBytes,i=0,o=0,s=[];o<r;){for(i=0;i<n&&o<r;++i,++o)e=o<<2,t=a[i],s[e]=255&t,s[e+1]=t>>8&255,s[e+2]=t>>16&255,s[e+3]=t>>24&255;o%n==0&&B(a)}return A&&(e=o<<2,t=a[i],A>0&&(s[e]=255&t),A>1&&(s[e+1]=t>>8&255),A>2&&(s[e+2]=t>>16&255)),s};var B=function(e){var t,n,a,r,A,o,s,p,u,c,d,l,g,I,f,h,y,m,C,B,E,b,Q,v,w,D,M,S,k,x,R,F,N,_,T,H,L,G,U,O,P,Y,J,j,K,q,V,z,Z,X,W,$,ee,te,ne,ae,re,Ae,ie,oe,se,pe,ue;for(a=0;a<48;a+=2)r=e[0]^e[10]^e[20]^e[30]^e[40],A=e[1]^e[11]^e[21]^e[31]^e[41],o=e[2]^e[12]^e[22]^e[32]^e[42],s=e[3]^e[13]^e[23]^e[33]^e[43],p=e[4]^e[14]^e[24]^e[34]^e[44],u=e[5]^e[15]^e[25]^e[35]^e[45],c=e[6]^e[16]^e[26]^e[36]^e[46],d=e[7]^e[17]^e[27]^e[37]^e[47],t=(l=e[8]^e[18]^e[28]^e[38]^e[48])^(o<<1|s>>>31),n=(g=e[9]^e[19]^e[29]^e[39]^e[49])^(s<<1|o>>>31),e[0]^=t,e[1]^=n,e[10]^=t,e[11]^=n,e[20]^=t,e[21]^=n,e[30]^=t,e[31]^=n,e[40]^=t,e[41]^=n,t=r^(p<<1|u>>>31),n=A^(u<<1|p>>>31),e[2]^=t,e[3]^=n,e[12]^=t,e[13]^=n,e[22]^=t,e[23]^=n,e[32]^=t,e[33]^=n,e[42]^=t,e[43]^=n,t=o^(c<<1|d>>>31),n=s^(d<<1|c>>>31),e[4]^=t,e[5]^=n,e[14]^=t,e[15]^=n,e[24]^=t,e[25]^=n,e[34]^=t,e[35]^=n,e[44]^=t,e[45]^=n,t=p^(l<<1|g>>>31),n=u^(g<<1|l>>>31),e[6]^=t,e[7]^=n,e[16]^=t,e[17]^=n,e[26]^=t,e[27]^=n,e[36]^=t,e[37]^=n,e[46]^=t,e[47]^=n,t=c^(r<<1|A>>>31),n=d^(A<<1|r>>>31),e[8]^=t,e[9]^=n,e[18]^=t,e[19]^=n,e[28]^=t,e[29]^=n,e[38]^=t,e[39]^=n,e[48]^=t,e[49]^=n,I=e[0],f=e[1],q=e[11]<<4|e[10]>>>28,V=e[10]<<4|e[11]>>>28,S=e[20]<<3|e[21]>>>29,k=e[21]<<3|e[20]>>>29,oe=e[31]<<9|e[30]>>>23,se=e[30]<<9|e[31]>>>23,Y=e[40]<<18|e[41]>>>14,J=e[41]<<18|e[40]>>>14,_=e[2]<<1|e[3]>>>31,T=e[3]<<1|e[2]>>>31,h=e[13]<<12|e[12]>>>20,y=e[12]<<12|e[13]>>>20,z=e[22]<<10|e[23]>>>22,Z=e[23]<<10|e[22]>>>22,x=e[33]<<13|e[32]>>>19,R=e[32]<<13|e[33]>>>19,pe=e[42]<<2|e[43]>>>30,ue=e[43]<<2|e[42]>>>30,te=e[5]<<30|e[4]>>>2,ne=e[4]<<30|e[5]>>>2,H=e[14]<<6|e[15]>>>26,L=e[15]<<6|e[14]>>>26,m=e[25]<<11|e[24]>>>21,C=e[24]<<11|e[25]>>>21,X=e[34]<<15|e[35]>>>17,W=e[35]<<15|e[34]>>>17,F=e[45]<<29|e[44]>>>3,N=e[44]<<29|e[45]>>>3,v=e[6]<<28|e[7]>>>4,w=e[7]<<28|e[6]>>>4,ae=e[17]<<23|e[16]>>>9,re=e[16]<<23|e[17]>>>9,G=e[26]<<25|e[27]>>>7,U=e[27]<<25|e[26]>>>7,B=e[36]<<21|e[37]>>>11,E=e[37]<<21|e[36]>>>11,$=e[47]<<24|e[46]>>>8,ee=e[46]<<24|e[47]>>>8,j=e[8]<<27|e[9]>>>5,K=e[9]<<27|e[8]>>>5,D=e[18]<<20|e[19]>>>12,M=e[19]<<20|e[18]>>>12,Ae=e[29]<<7|e[28]>>>25,ie=e[28]<<7|e[29]>>>25,O=e[38]<<8|e[39]>>>24,P=e[39]<<8|e[38]>>>24,b=e[48]<<14|e[49]>>>18,Q=e[49]<<14|e[48]>>>18,e[0]=I^~h&m,e[1]=f^~y&C,e[10]=v^~D&S,e[11]=w^~M&k,e[20]=_^~H&G,e[21]=T^~L&U,e[30]=j^~q&z,e[31]=K^~V&Z,e[40]=te^~ae&Ae,e[41]=ne^~re&ie,e[2]=h^~m&B,e[3]=y^~C&E,e[12]=D^~S&x,e[13]=M^~k&R,e[22]=H^~G&O,e[23]=L^~U&P,e[32]=q^~z&X,e[33]=V^~Z&W,e[42]=ae^~Ae&oe,e[43]=re^~ie&se,e[4]=m^~B&b,e[5]=C^~E&Q,e[14]=S^~x&F,e[15]=k^~R&N,e[24]=G^~O&Y,e[25]=U^~P&J,e[34]=z^~X&$,e[35]=Z^~W&ee,e[44]=Ae^~oe&pe,e[45]=ie^~se&ue,e[6]=B^~b&I,e[7]=E^~Q&f,e[16]=x^~F&v,e[17]=R^~N&w,e[26]=O^~Y&_,e[27]=P^~J&T,e[36]=X^~$&j,e[37]=W^~ee&K,e[46]=oe^~pe&te,e[47]=se^~ue&ne,e[8]=b^~I&h,e[9]=Q^~f&y,e[18]=F^~v&D,e[19]=N^~w&M,e[28]=Y^~_&H,e[29]=J^~T&L,e[38]=$^~j&q,e[39]=ee^~K&V,e[48]=pe^~te&ae,e[49]=ue^~ne&re,e[0]^=i[a],e[1]^=i[a+1]};if(a)e.exports=l;else for(I=0;I<g.length;++I)n[g[I]]=l[g[I]]}()}).call(this,n(13)(e))},function(e,t,n){"use strict";var a,r=this&&this.__extends||(a=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])},function(e,t){function n(){this.constructor=e}a(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}),A=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});var i=n(1),o=n(35),s=n(48),p=n(115),u=n(22),c=n(3),d=n(72),l=A(n(197)),g=n(73),I=n(52),f=n(47),h=n(40),y=A(n(0)),m=function(e){function t(n,a){var r=e.call(this)||this;return y.checkNew(r,t),g.SigningKey.isSigningKey(n)?c.defineReadOnly(r,"signingKey",n):c.defineReadOnly(r,"signingKey",new g.SigningKey(n)),c.defineReadOnly(r,"provider",a),r}return r(t,e),Object.defineProperty(t.prototype,"address",{get:function(){return this.signingKey.address},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"mnemonic",{get:function(){return this.signingKey.mnemonic},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"path",{get:function(){return this.signingKey.path},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"privateKey",{get:function(){return this.signingKey.privateKey},enumerable:!0,configurable:!0}),t.prototype.connect=function(e){return h.Provider.isProvider(e)||y.throwError("invalid provider",y.INVALID_ARGUMENT,{argument:"provider",value:e}),new t(this.signingKey,e)},t.prototype.getAddress=function(){return Promise.resolve(this.address)},t.prototype.sign=function(e){var t=this;return c.resolveProperties(e).then((function(e){var n=I.serialize(e),a=t.signingKey.signDigest(u.keccak256(n));return I.serialize(e,a)}))},t.prototype.signMessage=function(e){return Promise.resolve(i.joinSignature(this.signingKey.signDigest(o.hashMessage(e))))},t.prototype.getBalance=function(e){if(!this.provider)throw new Error("missing provider");return this.provider.getBalance(this.address,e)},t.prototype.getTransactionCount=function(e){if(!this.provider)throw new Error("missing provider");return this.provider.getTransactionCount(this.address,e)},t.prototype.sendTransaction=function(e){var t=this;if(!this.provider)throw new Error("missing provider");return null==e.nonce&&((e=c.shallowCopy(e)).nonce=this.getTransactionCount("pending")),I.populateTransaction(e,this.provider,this.address).then((function(e){return t.sign(e).then((function(e){return t.provider.sendTransaction(e)}))}))},t.prototype.encrypt=function(e,t,n){if("function"!=typeof t||n||(n=t,t={}),n&&"function"!=typeof n)throw new Error("invalid callback");return t||(t={}),this.mnemonic&&((t=c.shallowCopy(t)).mnemonic=this.mnemonic,t.path=this.path),l.encrypt(this.privateKey,e,t,n)},t.createRandom=function(e){var n=d.randomBytes(16);e||(e={}),e.extraEntropy&&(n=i.arrayify(u.keccak256(i.concat([n,e.extraEntropy])).substring(0,34)));var a=s.entropyToMnemonic(n,e.locale);return t.fromMnemonic(a,e.path,e.locale)},t.fromEncryptedJson=function(e,n,a){if(p.isCrowdsaleWallet(e))try{a&&a(0);var r=l.decryptCrowdsale(e,n);return a&&a(1),Promise.resolve(new t(r))}catch(e){return Promise.reject(e)}else if(p.isSecretStorageWallet(e))return l.decrypt(e,n,a).then((function(e){return new t(e)}));return Promise.reject("invalid wallet JSON")},t.fromMnemonic=function(e,n,a){return n||(n=s.defaultPath),new t(s.fromMnemonic(e,a).derivePath(n))},t}(f.Signer);t.Wallet=m},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var a=n(1),r=n(3),A=function(){function e(e){r.defineReadOnly(this,"alphabet",e),r.defineReadOnly(this,"base",e.length),r.defineReadOnly(this,"_alphabetMap",{}),r.defineReadOnly(this,"_leader",e.charAt(0));for(var t=0;t<e.length;t++)this._alphabetMap[e.charAt(t)]=t}return e.prototype.encode=function(e){var t=a.arrayify(e);if(0===t.length)return"";for(var n=[0],r=0;r<t.length;++r){for(var A=t[r],i=0;i<n.length;++i)A+=n[i]<<8,n[i]=A%this.base,A=A/this.base|0;for(;A>0;)n.push(A%this.base),A=A/this.base|0}for(var o="",s=0;0===t[s]&&s<t.length-1;++s)o+=this._leader;for(var p=n.length-1;p>=0;--p)o+=this.alphabet[n[p]];return o},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 n=0;n<e.length;n++){var r=this._alphabetMap[e[n]];if(void 0===r)throw new Error("Non-base"+this.base+" character");for(var A=r,i=0;i<t.length;++i)A+=t[i]*this.base,t[i]=255&A,A>>=8;for(;A>0;)t.push(255&A),A>>=8}for(var o=0;e[o]===this._leader&&o<e.length-1;++o)t.push(0);return a.arrayify(new Uint8Array(t.reverse()))},e}();t.BaseX=A;var i=new A("abcdefghijklmnopqrstuvwxyz234567");t.Base32=i;var o=new A("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz");t.Base58=o},function(e){e.exports=JSON.parse('{"name":"elliptic","version":"6.5.4","description":"EC cryptography","main":"lib/elliptic.js","files":["lib"],"scripts":{"lint":"eslint lib test","lint:fix":"npm run lint -- --fix","unit":"istanbul test _mocha --reporter=spec test/index.js","test":"npm run lint && npm run unit","version":"grunt dist && git add dist/"},"repository":{"type":"git","url":"git@github.com:indutny/elliptic"},"keywords":["EC","Elliptic","curve","Cryptography"],"author":"Fedor Indutny <fedor@indutny.com>","license":"MIT","bugs":{"url":"https://github.com/indutny/elliptic/issues"},"homepage":"https://github.com/indutny/elliptic","devDependencies":{"brfs":"^2.0.2","coveralls":"^3.1.0","eslint":"^7.6.0","grunt":"^1.2.1","grunt-browserify":"^5.3.0","grunt-cli":"^1.3.2","grunt-contrib-connect":"^3.0.0","grunt-contrib-copy":"^1.0.0","grunt-contrib-uglify":"^5.0.0","grunt-mocha-istanbul":"^5.0.2","grunt-saucelabs":"^9.0.1","istanbul":"^0.4.5","mocha":"^8.0.1"},"dependencies":{"bn.js":"^4.11.9","brorand":"^1.1.0","hash.js":"^1.0.0","hmac-drbg":"^1.0.1","inherits":"^2.0.4","minimalistic-assert":"^1.0.1","minimalistic-crypto-utils":"^1.0.1"}}')},function(e,t,n){"use strict";var a=n(14),r=n(7),A=n(4),i=n(50),o=a.assert;function s(e){i.call(this,"short",e),this.a=new r(e.a,16).toRed(this.red),this.b=new r(e.b,16).toRed(this.red),this.tinv=this.two.redInvm(),this.zeroA=0===this.a.fromRed().cmpn(0),this.threeA=0===this.a.fromRed().sub(this.p).cmpn(-3),this.endo=this._getEndomorphism(e),this._endoWnafT1=new Array(4),this._endoWnafT2=new Array(4)}function p(e,t,n,a){i.BasePoint.call(this,e,"affine"),null===t&&null===n?(this.x=null,this.y=null,this.inf=!0):(this.x=new r(t,16),this.y=new r(n,16),a&&(this.x.forceRed(this.curve.red),this.y.forceRed(this.curve.red)),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.y.red||(this.y=this.y.toRed(this.curve.red)),this.inf=!1)}function u(e,t,n,a){i.BasePoint.call(this,e,"jacobian"),null===t&&null===n&&null===a?(this.x=this.curve.one,this.y=this.curve.one,this.z=new r(0)):(this.x=new r(t,16),this.y=new r(n,16),this.z=new r(a,16)),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.y.red||(this.y=this.y.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)),this.zOne=this.z===this.curve.one}A(s,i),e.exports=s,s.prototype._getEndomorphism=function(e){if(this.zeroA&&this.g&&this.n&&1===this.p.modn(3)){var t,n;if(e.beta)t=new r(e.beta,16).toRed(this.red);else{var a=this._getEndoRoots(this.p);t=(t=a[0].cmp(a[1])<0?a[0]:a[1]).toRed(this.red)}if(e.lambda)n=new r(e.lambda,16);else{var A=this._getEndoRoots(this.n);0===this.g.mul(A[0]).x.cmp(this.g.x.redMul(t))?n=A[0]:(n=A[1],o(0===this.g.mul(n).x.cmp(this.g.x.redMul(t))))}return{beta:t,lambda:n,basis:e.basis?e.basis.map((function(e){return{a:new r(e.a,16),b:new r(e.b,16)}})):this._getEndoBasis(n)}}},s.prototype._getEndoRoots=function(e){var t=e===this.p?this.red:r.mont(e),n=new r(2).toRed(t).redInvm(),a=n.redNeg(),A=new r(3).toRed(t).redNeg().redSqrt().redMul(n);return[a.redAdd(A).fromRed(),a.redSub(A).fromRed()]},s.prototype._getEndoBasis=function(e){for(var t,n,a,A,i,o,s,p,u,c=this.n.ushrn(Math.floor(this.n.bitLength()/2)),d=e,l=this.n.clone(),g=new r(1),I=new r(0),f=new r(0),h=new r(1),y=0;0!==d.cmpn(0);){var m=l.div(d);p=l.sub(m.mul(d)),u=f.sub(m.mul(g));var C=h.sub(m.mul(I));if(!a&&p.cmp(c)<0)t=s.neg(),n=g,a=p.neg(),A=u;else if(a&&2==++y)break;s=p,l=d,d=p,f=g,g=u,h=I,I=C}i=p.neg(),o=u;var B=a.sqr().add(A.sqr());return i.sqr().add(o.sqr()).cmp(B)>=0&&(i=t,o=n),a.negative&&(a=a.neg(),A=A.neg()),i.negative&&(i=i.neg(),o=o.neg()),[{a:a,b:A},{a:i,b:o}]},s.prototype._endoSplit=function(e){var t=this.endo.basis,n=t[0],a=t[1],r=a.b.mul(e).divRound(this.n),A=n.b.neg().mul(e).divRound(this.n),i=r.mul(n.a),o=A.mul(a.a),s=r.mul(n.b),p=A.mul(a.b);return{k1:e.sub(i).sub(o),k2:s.add(p).neg()}},s.prototype.pointFromX=function(e,t){(e=new r(e,16)).red||(e=e.toRed(this.red));var n=e.redSqr().redMul(e).redIAdd(e.redMul(this.a)).redIAdd(this.b),a=n.redSqrt();if(0!==a.redSqr().redSub(n).cmp(this.zero))throw new Error("invalid point");var A=a.fromRed().isOdd();return(t&&!A||!t&&A)&&(a=a.redNeg()),this.point(e,a)},s.prototype.validate=function(e){if(e.inf)return!0;var t=e.x,n=e.y,a=this.a.redMul(t),r=t.redSqr().redMul(t).redIAdd(a).redIAdd(this.b);return 0===n.redSqr().redISub(r).cmpn(0)},s.prototype._endoWnafMulAdd=function(e,t,n){for(var a=this._endoWnafT1,r=this._endoWnafT2,A=0;A<e.length;A++){var i=this._endoSplit(t[A]),o=e[A],s=o._getBeta();i.k1.negative&&(i.k1.ineg(),o=o.neg(!0)),i.k2.negative&&(i.k2.ineg(),s=s.neg(!0)),a[2*A]=o,a[2*A+1]=s,r[2*A]=i.k1,r[2*A+1]=i.k2}for(var p=this._wnafMulAdd(1,a,r,2*A,n),u=0;u<2*A;u++)a[u]=null,r[u]=null;return p},A(p,i.BasePoint),s.prototype.point=function(e,t,n){return new p(this,e,t,n)},s.prototype.pointFromJSON=function(e,t){return p.fromJSON(this,e,t)},p.prototype._getBeta=function(){if(this.curve.endo){var e=this.precomputed;if(e&&e.beta)return e.beta;var t=this.curve.point(this.x.redMul(this.curve.endo.beta),this.y);if(e){var n=this.curve,a=function(e){return n.point(e.x.redMul(n.endo.beta),e.y)};e.beta=t,t.precomputed={beta:null,naf:e.naf&&{wnd:e.naf.wnd,points:e.naf.points.map(a)},doubles:e.doubles&&{step:e.doubles.step,points:e.doubles.points.map(a)}}}return t}},p.prototype.toJSON=function(){return this.precomputed?[this.x,this.y,this.precomputed&&{doubles:this.precomputed.doubles&&{step:this.precomputed.doubles.step,points:this.precomputed.doubles.points.slice(1)},naf:this.precomputed.naf&&{wnd:this.precomputed.naf.wnd,points:this.precomputed.naf.points.slice(1)}}]:[this.x,this.y]},p.fromJSON=function(e,t,n){"string"==typeof t&&(t=JSON.parse(t));var a=e.point(t[0],t[1],n);if(!t[2])return a;function r(t){return e.point(t[0],t[1],n)}var A=t[2];return a.precomputed={beta:null,doubles:A.doubles&&{step:A.doubles.step,points:[a].concat(A.doubles.points.map(r))},naf:A.naf&&{wnd:A.naf.wnd,points:[a].concat(A.naf.points.map(r))}},a},p.prototype.inspect=function(){return this.isInfinity()?"<EC Point Infinity>":"<EC Point x: "+this.x.fromRed().toString(16,2)+" y: "+this.y.fromRed().toString(16,2)+">"},p.prototype.isInfinity=function(){return this.inf},p.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 n=t.redSqr().redISub(this.x).redISub(e.x),a=t.redMul(this.x.redSub(n)).redISub(this.y);return this.curve.point(n,a)},p.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,n=this.x.redSqr(),a=e.redInvm(),r=n.redAdd(n).redIAdd(n).redIAdd(t).redMul(a),A=r.redSqr().redISub(this.x.redAdd(this.x)),i=r.redMul(this.x.redSub(A)).redISub(this.y);return this.curve.point(A,i)},p.prototype.getX=function(){return this.x.fromRed()},p.prototype.getY=function(){return this.y.fromRed()},p.prototype.mul=function(e){return e=new r(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)},p.prototype.mulAdd=function(e,t,n){var a=[this,t],r=[e,n];return this.curve.endo?this.curve._endoWnafMulAdd(a,r):this.curve._wnafMulAdd(1,a,r,2)},p.prototype.jmulAdd=function(e,t,n){var a=[this,t],r=[e,n];return this.curve.endo?this.curve._endoWnafMulAdd(a,r,!0):this.curve._wnafMulAdd(1,a,r,2,!0)},p.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))},p.prototype.neg=function(e){if(this.inf)return this;var t=this.curve.point(this.x,this.y.redNeg());if(e&&this.precomputed){var n=this.precomputed,a=function(e){return e.neg()};t.precomputed={naf:n.naf&&{wnd:n.naf.wnd,points:n.naf.points.map(a)},doubles:n.doubles&&{step:n.doubles.step,points:n.doubles.points.map(a)}}}return t},p.prototype.toJ=function(){return this.inf?this.curve.jpoint(null,null,null):this.curve.jpoint(this.x,this.y,this.curve.one)},A(u,i.BasePoint),s.prototype.jpoint=function(e,t,n){return new u(this,e,t,n)},u.prototype.toP=function(){if(this.isInfinity())return this.curve.point(null,null);var e=this.z.redInvm(),t=e.redSqr(),n=this.x.redMul(t),a=this.y.redMul(t).redMul(e);return this.curve.point(n,a)},u.prototype.neg=function(){return this.curve.jpoint(this.x,this.y.redNeg(),this.z)},u.prototype.add=function(e){if(this.isInfinity())return e;if(e.isInfinity())return this;var t=e.z.redSqr(),n=this.z.redSqr(),a=this.x.redMul(t),r=e.x.redMul(n),A=this.y.redMul(t.redMul(e.z)),i=e.y.redMul(n.redMul(this.z)),o=a.redSub(r),s=A.redSub(i);if(0===o.cmpn(0))return 0!==s.cmpn(0)?this.curve.jpoint(null,null,null):this.dbl();var p=o.redSqr(),u=p.redMul(o),c=a.redMul(p),d=s.redSqr().redIAdd(u).redISub(c).redISub(c),l=s.redMul(c.redISub(d)).redISub(A.redMul(u)),g=this.z.redMul(e.z).redMul(o);return this.curve.jpoint(d,l,g)},u.prototype.mixedAdd=function(e){if(this.isInfinity())return e.toJ();if(e.isInfinity())return this;var t=this.z.redSqr(),n=this.x,a=e.x.redMul(t),r=this.y,A=e.y.redMul(t).redMul(this.z),i=n.redSub(a),o=r.redSub(A);if(0===i.cmpn(0))return 0!==o.cmpn(0)?this.curve.jpoint(null,null,null):this.dbl();var s=i.redSqr(),p=s.redMul(i),u=n.redMul(s),c=o.redSqr().redIAdd(p).redISub(u).redISub(u),d=o.redMul(u.redISub(c)).redISub(r.redMul(p)),l=this.z.redMul(i);return this.curve.jpoint(c,d,l)},u.prototype.dblp=function(e){if(0===e)return this;if(this.isInfinity())return this;if(!e)return this.dbl();var t;if(this.curve.zeroA||this.curve.threeA){var n=this;for(t=0;t<e;t++)n=n.dbl();return n}var a=this.curve.a,r=this.curve.tinv,A=this.x,i=this.y,o=this.z,s=o.redSqr().redSqr(),p=i.redAdd(i);for(t=0;t<e;t++){var u=A.redSqr(),c=p.redSqr(),d=c.redSqr(),l=u.redAdd(u).redIAdd(u).redIAdd(a.redMul(s)),g=A.redMul(c),I=l.redSqr().redISub(g.redAdd(g)),f=g.redISub(I),h=l.redMul(f);h=h.redIAdd(h).redISub(d);var y=p.redMul(o);t+1<e&&(s=s.redMul(d)),A=I,o=y,p=h}return this.curve.jpoint(A,p.redMul(r),o)},u.prototype.dbl=function(){return this.isInfinity()?this:this.curve.zeroA?this._zeroDbl():this.curve.threeA?this._threeDbl():this._dbl()},u.prototype._zeroDbl=function(){var e,t,n;if(this.zOne){var a=this.x.redSqr(),r=this.y.redSqr(),A=r.redSqr(),i=this.x.redAdd(r).redSqr().redISub(a).redISub(A);i=i.redIAdd(i);var o=a.redAdd(a).redIAdd(a),s=o.redSqr().redISub(i).redISub(i),p=A.redIAdd(A);p=(p=p.redIAdd(p)).redIAdd(p),e=s,t=o.redMul(i.redISub(s)).redISub(p),n=this.y.redAdd(this.y)}else{var u=this.x.redSqr(),c=this.y.redSqr(),d=c.redSqr(),l=this.x.redAdd(c).redSqr().redISub(u).redISub(d);l=l.redIAdd(l);var g=u.redAdd(u).redIAdd(u),I=g.redSqr(),f=d.redIAdd(d);f=(f=f.redIAdd(f)).redIAdd(f),e=I.redISub(l).redISub(l),t=g.redMul(l.redISub(e)).redISub(f),n=(n=this.y.redMul(this.z)).redIAdd(n)}return this.curve.jpoint(e,t,n)},u.prototype._threeDbl=function(){var e,t,n;if(this.zOne){var a=this.x.redSqr(),r=this.y.redSqr(),A=r.redSqr(),i=this.x.redAdd(r).redSqr().redISub(a).redISub(A);i=i.redIAdd(i);var o=a.redAdd(a).redIAdd(a).redIAdd(this.curve.a),s=o.redSqr().redISub(i).redISub(i);e=s;var p=A.redIAdd(A);p=(p=p.redIAdd(p)).redIAdd(p),t=o.redMul(i.redISub(s)).redISub(p),n=this.y.redAdd(this.y)}else{var u=this.z.redSqr(),c=this.y.redSqr(),d=this.x.redMul(c),l=this.x.redSub(u).redMul(this.x.redAdd(u));l=l.redAdd(l).redIAdd(l);var g=d.redIAdd(d),I=(g=g.redIAdd(g)).redAdd(g);e=l.redSqr().redISub(I),n=this.y.redAdd(this.z).redSqr().redISub(c).redISub(u);var f=c.redSqr();f=(f=(f=f.redIAdd(f)).redIAdd(f)).redIAdd(f),t=l.redMul(g.redISub(e)).redISub(f)}return this.curve.jpoint(e,t,n)},u.prototype._dbl=function(){var e=this.curve.a,t=this.x,n=this.y,a=this.z,r=a.redSqr().redSqr(),A=t.redSqr(),i=n.redSqr(),o=A.redAdd(A).redIAdd(A).redIAdd(e.redMul(r)),s=t.redAdd(t),p=(s=s.redIAdd(s)).redMul(i),u=o.redSqr().redISub(p.redAdd(p)),c=p.redISub(u),d=i.redSqr();d=(d=(d=d.redIAdd(d)).redIAdd(d)).redIAdd(d);var l=o.redMul(c).redISub(d),g=n.redAdd(n).redMul(a);return this.curve.jpoint(u,l,g)},u.prototype.trpl=function(){if(!this.curve.zeroA)return this.dbl().add(this);var e=this.x.redSqr(),t=this.y.redSqr(),n=this.z.redSqr(),a=t.redSqr(),r=e.redAdd(e).redIAdd(e),A=r.redSqr(),i=this.x.redAdd(t).redSqr().redISub(e).redISub(a),o=(i=(i=(i=i.redIAdd(i)).redAdd(i).redIAdd(i)).redISub(A)).redSqr(),s=a.redIAdd(a);s=(s=(s=s.redIAdd(s)).redIAdd(s)).redIAdd(s);var p=r.redIAdd(i).redSqr().redISub(A).redISub(o).redISub(s),u=t.redMul(p);u=(u=u.redIAdd(u)).redIAdd(u);var c=this.x.redMul(o).redISub(u);c=(c=c.redIAdd(c)).redIAdd(c);var d=this.y.redMul(p.redMul(s.redISub(p)).redISub(i.redMul(o)));d=(d=(d=d.redIAdd(d)).redIAdd(d)).redIAdd(d);var l=this.z.redAdd(i).redSqr().redISub(n).redISub(o);return this.curve.jpoint(c,d,l)},u.prototype.mul=function(e,t){return e=new r(e,t),this.curve._wnafMul(this,e)},u.prototype.eq=function(e){if("affine"===e.type)return this.eq(e.toJ());if(this===e)return!0;var t=this.z.redSqr(),n=e.z.redSqr();if(0!==this.x.redMul(n).redISub(e.x.redMul(t)).cmpn(0))return!1;var a=t.redMul(this.z),r=n.redMul(e.z);return 0===this.y.redMul(r).redISub(e.y.redMul(a)).cmpn(0)},u.prototype.eqXToP=function(e){var t=this.z.redSqr(),n=e.toRed(this.curve.red).redMul(t);if(0===this.x.cmp(n))return!0;for(var a=e.clone(),r=this.curve.redN.redMul(t);;){if(a.iadd(this.curve.n),a.cmp(this.curve.p)>=0)return!1;if(n.redIAdd(r),0===this.x.cmp(n))return!0}},u.prototype.inspect=function(){return this.isInfinity()?"<EC JPoint Infinity>":"<EC JPoint x: "+this.x.toString(16,2)+" y: "+this.y.toString(16,2)+" z: "+this.z.toString(16,2)+">"},u.prototype.isInfinity=function(){return 0===this.z.cmpn(0)}},function(e,t){"function"==typeof Object.create?e.exports=function(e,t){t&&(e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}))}:e.exports=function(e,t){if(t){e.super_=t;var n=function(){};n.prototype=t.prototype,e.prototype=new n,e.prototype.constructor=e}}},function(e,t,n){"use strict";var a=n(7),r=n(4),A=n(50),i=n(14);function o(e){A.call(this,"mont",e),this.a=new a(e.a,16).toRed(this.red),this.b=new a(e.b,16).toRed(this.red),this.i4=new a(4).toRed(this.red).redInvm(),this.two=new a(2).toRed(this.red),this.a24=this.i4.redMul(this.a.redAdd(this.two))}function s(e,t,n){A.BasePoint.call(this,e,"projective"),null===t&&null===n?(this.x=this.curve.one,this.z=this.curve.zero):(this.x=new a(t,16),this.z=new a(n,16),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)))}r(o,A),e.exports=o,o.prototype.validate=function(e){var t=e.normalize().x,n=t.redSqr(),a=n.redMul(t).redAdd(n.redMul(this.a)).redAdd(t);return 0===a.redSqrt().redSqr().cmp(a)},r(s,A.BasePoint),o.prototype.decodePoint=function(e,t){return this.point(i.toArray(e,t),1)},o.prototype.point=function(e,t){return new s(this,e,t)},o.prototype.pointFromJSON=function(e){return s.fromJSON(this,e)},s.prototype.precompute=function(){},s.prototype._encode=function(){return this.getX().toArray("be",this.curve.p.byteLength())},s.fromJSON=function(e,t){return new s(e,t[0],t[1]||e.one)},s.prototype.inspect=function(){return this.isInfinity()?"<EC Point Infinity>":"<EC Point x: "+this.x.fromRed().toString(16,2)+" z: "+this.z.fromRed().toString(16,2)+">"},s.prototype.isInfinity=function(){return 0===this.z.cmpn(0)},s.prototype.dbl=function(){var e=this.x.redAdd(this.z).redSqr(),t=this.x.redSub(this.z).redSqr(),n=e.redSub(t),a=e.redMul(t),r=n.redMul(t.redAdd(this.curve.a24.redMul(n)));return this.curve.point(a,r)},s.prototype.add=function(){throw new Error("Not supported on Montgomery curve")},s.prototype.diffAdd=function(e,t){var n=this.x.redAdd(this.z),a=this.x.redSub(this.z),r=e.x.redAdd(e.z),A=e.x.redSub(e.z).redMul(n),i=r.redMul(a),o=t.z.redMul(A.redAdd(i).redSqr()),s=t.x.redMul(A.redISub(i).redSqr());return this.curve.point(o,s)},s.prototype.mul=function(e){for(var t=e.clone(),n=this,a=this.curve.point(null,null),r=[];0!==t.cmpn(0);t.iushrn(1))r.push(t.andln(1));for(var A=r.length-1;A>=0;A--)0===r[A]?(n=n.diffAdd(a,this),a=a.dbl()):(a=n.diffAdd(a,this),n=n.dbl());return a},s.prototype.mulAdd=function(){throw new Error("Not supported on Montgomery curve")},s.prototype.jumlAdd=function(){throw new Error("Not supported on Montgomery curve")},s.prototype.eq=function(e){return 0===this.getX().cmp(e.getX())},s.prototype.normalize=function(){return this.x=this.x.redMul(this.z.redInvm()),this.z=this.curve.one,this},s.prototype.getX=function(){return this.normalize(),this.x.fromRed()}},function(e,t,n){"use strict";var a=n(14),r=n(7),A=n(4),i=n(50),o=a.assert;function s(e){this.twisted=1!=(0|e.a),this.mOneA=this.twisted&&-1==(0|e.a),this.extended=this.mOneA,i.call(this,"edwards",e),this.a=new r(e.a,16).umod(this.red.m),this.a=this.a.toRed(this.red),this.c=new r(e.c,16).toRed(this.red),this.c2=this.c.redSqr(),this.d=new r(e.d,16).toRed(this.red),this.dd=this.d.redAdd(this.d),o(!this.twisted||0===this.c.fromRed().cmpn(1)),this.oneC=1==(0|e.c)}function p(e,t,n,a,A){i.BasePoint.call(this,e,"projective"),null===t&&null===n&&null===a?(this.x=this.curve.zero,this.y=this.curve.one,this.z=this.curve.one,this.t=this.curve.zero,this.zOne=!0):(this.x=new r(t,16),this.y=new r(n,16),this.z=a?new r(a,16):this.curve.one,this.t=A&&new r(A,16),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.y.red||(this.y=this.y.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)),this.t&&!this.t.red&&(this.t=this.t.toRed(this.curve.red)),this.zOne=this.z===this.curve.one,this.curve.extended&&!this.t&&(this.t=this.x.redMul(this.y),this.zOne||(this.t=this.t.redMul(this.z.redInvm()))))}A(s,i),e.exports=s,s.prototype._mulA=function(e){return this.mOneA?e.redNeg():this.a.redMul(e)},s.prototype._mulC=function(e){return this.oneC?e:this.c.redMul(e)},s.prototype.jpoint=function(e,t,n,a){return this.point(e,t,n,a)},s.prototype.pointFromX=function(e,t){(e=new r(e,16)).red||(e=e.toRed(this.red));var n=e.redSqr(),a=this.c2.redSub(this.a.redMul(n)),A=this.one.redSub(this.c2.redMul(this.d).redMul(n)),i=a.redMul(A.redInvm()),o=i.redSqrt();if(0!==o.redSqr().redSub(i).cmp(this.zero))throw new Error("invalid point");var s=o.fromRed().isOdd();return(t&&!s||!t&&s)&&(o=o.redNeg()),this.point(e,o)},s.prototype.pointFromY=function(e,t){(e=new r(e,16)).red||(e=e.toRed(this.red));var n=e.redSqr(),a=n.redSub(this.c2),A=n.redMul(this.d).redMul(this.c2).redSub(this.a),i=a.redMul(A.redInvm());if(0===i.cmp(this.zero)){if(t)throw new Error("invalid point");return this.point(this.zero,e)}var o=i.redSqrt();if(0!==o.redSqr().redSub(i).cmp(this.zero))throw new Error("invalid point");return o.fromRed().isOdd()!==t&&(o=o.redNeg()),this.point(o,e)},s.prototype.validate=function(e){if(e.isInfinity())return!0;e.normalize();var t=e.x.redSqr(),n=e.y.redSqr(),a=t.redMul(this.a).redAdd(n),r=this.c2.redMul(this.one.redAdd(this.d.redMul(t).redMul(n)));return 0===a.cmp(r)},A(p,i.BasePoint),s.prototype.pointFromJSON=function(e){return p.fromJSON(this,e)},s.prototype.point=function(e,t,n,a){return new p(this,e,t,n,a)},p.fromJSON=function(e,t){return new p(e,t[0],t[1],t[2])},p.prototype.inspect=function(){return this.isInfinity()?"<EC Point Infinity>":"<EC Point x: "+this.x.fromRed().toString(16,2)+" y: "+this.y.fromRed().toString(16,2)+" z: "+this.z.fromRed().toString(16,2)+">"},p.prototype.isInfinity=function(){return 0===this.x.cmpn(0)&&(0===this.y.cmp(this.z)||this.zOne&&0===this.y.cmp(this.curve.c))},p.prototype._extDbl=function(){var e=this.x.redSqr(),t=this.y.redSqr(),n=this.z.redSqr();n=n.redIAdd(n);var a=this.curve._mulA(e),r=this.x.redAdd(this.y).redSqr().redISub(e).redISub(t),A=a.redAdd(t),i=A.redSub(n),o=a.redSub(t),s=r.redMul(i),p=A.redMul(o),u=r.redMul(o),c=i.redMul(A);return this.curve.point(s,p,c,u)},p.prototype._projDbl=function(){var e,t,n,a,r,A,i=this.x.redAdd(this.y).redSqr(),o=this.x.redSqr(),s=this.y.redSqr();if(this.curve.twisted){var p=(a=this.curve._mulA(o)).redAdd(s);this.zOne?(e=i.redSub(o).redSub(s).redMul(p.redSub(this.curve.two)),t=p.redMul(a.redSub(s)),n=p.redSqr().redSub(p).redSub(p)):(r=this.z.redSqr(),A=p.redSub(r).redISub(r),e=i.redSub(o).redISub(s).redMul(A),t=p.redMul(a.redSub(s)),n=p.redMul(A))}else a=o.redAdd(s),r=this.curve._mulC(this.z).redSqr(),A=a.redSub(r).redSub(r),e=this.curve._mulC(i.redISub(a)).redMul(A),t=this.curve._mulC(a).redMul(o.redISub(s)),n=a.redMul(A);return this.curve.point(e,t,n)},p.prototype.dbl=function(){return this.isInfinity()?this:this.curve.extended?this._extDbl():this._projDbl()},p.prototype._extAdd=function(e){var t=this.y.redSub(this.x).redMul(e.y.redSub(e.x)),n=this.y.redAdd(this.x).redMul(e.y.redAdd(e.x)),a=this.t.redMul(this.curve.dd).redMul(e.t),r=this.z.redMul(e.z.redAdd(e.z)),A=n.redSub(t),i=r.redSub(a),o=r.redAdd(a),s=n.redAdd(t),p=A.redMul(i),u=o.redMul(s),c=A.redMul(s),d=i.redMul(o);return this.curve.point(p,u,d,c)},p.prototype._projAdd=function(e){var t,n,a=this.z.redMul(e.z),r=a.redSqr(),A=this.x.redMul(e.x),i=this.y.redMul(e.y),o=this.curve.d.redMul(A).redMul(i),s=r.redSub(o),p=r.redAdd(o),u=this.x.redAdd(this.y).redMul(e.x.redAdd(e.y)).redISub(A).redISub(i),c=a.redMul(s).redMul(u);return this.curve.twisted?(t=a.redMul(p).redMul(i.redSub(this.curve._mulA(A))),n=s.redMul(p)):(t=a.redMul(p).redMul(i.redSub(A)),n=this.curve._mulC(s).redMul(p)),this.curve.point(c,t,n)},p.prototype.add=function(e){return this.isInfinity()?e:e.isInfinity()?this:this.curve.extended?this._extAdd(e):this._projAdd(e)},p.prototype.mul=function(e){return this._hasDoubles(e)?this.curve._fixedNafMul(this,e):this.curve._wnafMul(this,e)},p.prototype.mulAdd=function(e,t,n){return this.curve._wnafMulAdd(1,[this,t],[e,n],2,!1)},p.prototype.jmulAdd=function(e,t,n){return this.curve._wnafMulAdd(1,[this,t],[e,n],2,!0)},p.prototype.normalize=function(){if(this.zOne)return this;var e=this.z.redInvm();return this.x=this.x.redMul(e),this.y=this.y.redMul(e),this.t&&(this.t=this.t.redMul(e)),this.z=this.curve.one,this.zOne=!0,this},p.prototype.neg=function(){return this.curve.point(this.x.redNeg(),this.y,this.z,this.t&&this.t.redNeg())},p.prototype.getX=function(){return this.normalize(),this.x.fromRed()},p.prototype.getY=function(){return this.normalize(),this.y.fromRed()},p.prototype.eq=function(e){return this===e||0===this.getX().cmp(e.getX())&&0===this.getY().cmp(e.getY())},p.prototype.eqXToP=function(e){var t=e.toRed(this.curve.red).redMul(this.z);if(0===this.x.cmp(t))return!0;for(var n=e.clone(),a=this.curve.redN.redMul(this.z);;){if(n.iadd(this.curve.n),n.cmp(this.curve.p)>=0)return!1;if(t.redIAdd(a),0===this.x.cmp(t))return!0}},p.prototype.toP=p.prototype.normalize,p.prototype.mixedAdd=p.prototype.add},function(e,t,n){"use strict";t.sha1=n(177),t.sha224=n(178),t.sha256=n(110),t.sha384=n(179),t.sha512=n(111)},function(e,t,n){"use strict";var a=n(17),r=n(41),A=n(109),i=a.rotl32,o=a.sum32,s=a.sum32_5,p=A.ft_1,u=r.BlockHash,c=[1518500249,1859775393,2400959708,3395469782];function d(){if(!(this instanceof d))return new d;u.call(this),this.h=[1732584193,4023233417,2562383102,271733878,3285377520],this.W=new Array(80)}a.inherits(d,u),e.exports=d,d.blockSize=512,d.outSize=160,d.hmacStrength=80,d.padLength=64,d.prototype._update=function(e,t){for(var n=this.W,a=0;a<16;a++)n[a]=e[t+a];for(;a<n.length;a++)n[a]=i(n[a-3]^n[a-8]^n[a-14]^n[a-16],1);var r=this.h[0],A=this.h[1],u=this.h[2],d=this.h[3],l=this.h[4];for(a=0;a<n.length;a++){var g=~~(a/20),I=s(i(r,5),p(g,A,u,d),l,n[a],c[g]);l=d,d=u,u=i(A,30),A=r,r=I}this.h[0]=o(this.h[0],r),this.h[1]=o(this.h[1],A),this.h[2]=o(this.h[2],u),this.h[3]=o(this.h[3],d),this.h[4]=o(this.h[4],l)},d.prototype._digest=function(e){return"hex"===e?a.toHex32(this.h,"big"):a.split32(this.h,"big")}},function(e,t,n){"use strict";var a=n(17),r=n(110);function A(){if(!(this instanceof A))return new A;r.call(this),this.h=[3238371032,914150663,812702999,4144912697,4290775857,1750603025,1694076839,3204075428]}a.inherits(A,r),e.exports=A,A.blockSize=512,A.outSize=224,A.hmacStrength=192,A.padLength=64,A.prototype._digest=function(e){return"hex"===e?a.toHex32(this.h.slice(0,7),"big"):a.split32(this.h.slice(0,7),"big")}},function(e,t,n){"use strict";var a=n(17),r=n(111);function A(){if(!(this instanceof A))return new A;r.call(this),this.h=[3418070365,3238371032,1654270250,914150663,2438529370,812702999,355462360,4144912697,1731405415,4290775857,2394180231,1750603025,3675008525,1694076839,1203062813,3204075428]}a.inherits(A,r),e.exports=A,A.blockSize=1024,A.outSize=384,A.hmacStrength=192,A.padLength=128,A.prototype._digest=function(e){return"hex"===e?a.toHex32(this.h.slice(0,12),"big"):a.split32(this.h.slice(0,12),"big")}},function(e,t,n){"use strict";var a=n(17),r=n(41),A=a.rotl32,i=a.sum32,o=a.sum32_3,s=a.sum32_4,p=r.BlockHash;function u(){if(!(this instanceof u))return new u;p.call(this),this.h=[1732584193,4023233417,2562383102,271733878,3285377520],this.endian="little"}function c(e,t,n,a){return e<=15?t^n^a:e<=31?t&n|~t&a:e<=47?(t|~n)^a:e<=63?t&a|n&~a:t^(n|~a)}function d(e){return e<=15?0:e<=31?1518500249:e<=47?1859775393:e<=63?2400959708:2840853838}function l(e){return e<=15?1352829926:e<=31?1548603684:e<=47?1836072691:e<=63?2053994217:0}a.inherits(u,p),t.ripemd160=u,u.blockSize=512,u.outSize=160,u.hmacStrength=192,u.padLength=64,u.prototype._update=function(e,t){for(var n=this.h[0],a=this.h[1],r=this.h[2],p=this.h[3],u=this.h[4],y=n,m=a,C=r,B=p,E=u,b=0;b<80;b++){var Q=i(A(s(n,c(b,a,r,p),e[g[b]+t],d(b)),f[b]),u);n=u,u=p,p=A(r,10),r=a,a=Q,Q=i(A(s(y,c(79-b,m,C,B),e[I[b]+t],l(b)),h[b]),E),y=E,E=B,B=A(C,10),C=m,m=Q}Q=o(this.h[1],r,B),this.h[1]=o(this.h[2],p,E),this.h[2]=o(this.h[3],u,y),this.h[3]=o(this.h[4],n,m),this.h[4]=o(this.h[0],a,C),this.h[0]=Q},u.prototype._digest=function(e){return"hex"===e?a.toHex32(this.h,"little"):a.split32(this.h,"little")};var g=[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8,3,10,14,4,9,15,8,1,2,7,0,6,13,11,5,12,1,9,11,10,0,8,12,4,13,3,7,15,14,5,6,2,4,0,5,9,7,12,2,10,14,1,3,8,11,6,15,13],I=[5,14,7,0,9,2,11,4,13,6,15,8,1,10,3,12,6,11,3,7,0,13,5,10,14,15,8,12,4,9,1,2,15,5,1,3,7,14,6,9,11,8,12,2,10,0,4,13,8,6,4,1,3,11,15,0,5,12,2,13,9,7,10,14,12,15,10,4,1,5,8,7,6,2,13,14,0,3,9,11],f=[11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8,7,6,8,13,11,9,7,15,7,12,15,9,11,7,13,12,11,13,6,7,14,9,13,15,14,8,13,6,5,12,7,5,11,12,14,15,14,15,9,8,9,14,5,6,8,6,5,12,9,15,5,11,6,8,13,12,5,12,13,14,11,8,5,6],h=[8,9,9,11,13,15,15,5,7,7,8,11,14,14,12,6,9,13,15,7,12,8,9,11,7,7,12,7,6,15,13,11,9,7,15,11,8,6,6,14,12,13,5,14,13,13,7,5,15,5,8,11,14,14,6,14,6,9,12,9,12,5,15,8,8,5,12,9,12,5,14,6,8,13,6,5,15,13,11,11]},function(e,t,n){"use strict";var a=n(17),r=n(11);function A(e,t,n){if(!(this instanceof A))return new A(e,t,n);this.Hash=e,this.blockSize=e.blockSize/8,this.outSize=e.outSize/8,this.inner=null,this.outer=null,this._init(a.toArray(t,n))}e.exports=A,A.prototype._init=function(e){e.length>this.blockSize&&(e=(new this.Hash).update(e).digest()),r(e.length<=this.blockSize);for(var t=e.length;t<this.blockSize;t++)e.push(0);for(t=0;t<e.length;t++)e[t]^=54;for(this.inner=(new this.Hash).update(e),t=0;t<e.length;t++)e[t]^=106;this.outer=(new this.Hash).update(e)},A.prototype.update=function(e,t){return this.inner.update(e,t),this},A.prototype.digest=function(e){return this.outer.update(this.inner.digest()),this.outer.digest(e)}},function(e,t){e.exports={doubles:{step:4,points:[["e60fce93b59e9ec53011aabc21c23e97b2a31369b87a5ae9c44ee89e2a6dec0a","f7e3507399e595929db99f34f57937101296891e44d23f0be1f32cce69616821"],["8282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f51508","11f8a8098557dfe45e8256e830b60ace62d613ac2f7b17bed31b6eaff6e26caf"],["175e159f728b865a72f99cc6c6fc846de0b93833fd2222ed73fce5b551e5b739","d3506e0d9e3c79eba4ef97a51ff71f5eacb5955add24345c6efa6ffee9fed695"],["363d90d447b00c9c99ceac05b6262ee053441c7e55552ffe526bad8f83ff4640","4e273adfc732221953b445397f3363145b9a89008199ecb62003c7f3bee9de9"],["8b4b5f165df3c2be8c6244b5b745638843e4a781a15bcd1b69f79a55dffdf80c","4aad0a6f68d308b4b3fbd7813ab0da04f9e336546162ee56b3eff0c65fd4fd36"],["723cbaa6e5db996d6bf771c00bd548c7b700dbffa6c0e77bcb6115925232fcda","96e867b5595cc498a921137488824d6e2660a0653779494801dc069d9eb39f5f"],["eebfa4d493bebf98ba5feec812c2d3b50947961237a919839a533eca0e7dd7fa","5d9a8ca3970ef0f269ee7edaf178089d9ae4cdc3a711f712ddfd4fdae1de8999"],["100f44da696e71672791d0a09b7bde459f1215a29b3c03bfefd7835b39a48db0","cdd9e13192a00b772ec8f3300c090666b7ff4a18ff5195ac0fbd5cd62bc65a09"],["e1031be262c7ed1b1dc9227a4a04c017a77f8d4464f3b3852c8acde6e534fd2d","9d7061928940405e6bb6a4176597535af292dd419e1ced79a44f18f29456a00d"],["feea6cae46d55b530ac2839f143bd7ec5cf8b266a41d6af52d5e688d9094696d","e57c6b6c97dce1bab06e4e12bf3ecd5c981c8957cc41442d3155debf18090088"],["da67a91d91049cdcb367be4be6ffca3cfeed657d808583de33fa978bc1ec6cb1","9bacaa35481642bc41f463f7ec9780e5dec7adc508f740a17e9ea8e27a68be1d"],["53904faa0b334cdda6e000935ef22151ec08d0f7bb11069f57545ccc1a37b7c0","5bc087d0bc80106d88c9eccac20d3c1c13999981e14434699dcb096b022771c8"],["8e7bcd0bd35983a7719cca7764ca906779b53a043a9b8bcaeff959f43ad86047","10b7770b2a3da4b3940310420ca9514579e88e2e47fd68b3ea10047e8460372a"],["385eed34c1cdff21e6d0818689b81bde71a7f4f18397e6690a841e1599c43862","283bebc3e8ea23f56701de19e9ebf4576b304eec2086dc8cc0458fe5542e5453"],["6f9d9b803ecf191637c73a4413dfa180fddf84a5947fbc9c606ed86c3fac3a7","7c80c68e603059ba69b8e2a30e45c4d47ea4dd2f5c281002d86890603a842160"],["3322d401243c4e2582a2147c104d6ecbf774d163db0f5e5313b7e0e742d0e6bd","56e70797e9664ef5bfb019bc4ddaf9b72805f63ea2873af624f3a2e96c28b2a0"],["85672c7d2de0b7da2bd1770d89665868741b3f9af7643397721d74d28134ab83","7c481b9b5b43b2eb6374049bfa62c2e5e77f17fcc5298f44c8e3094f790313a6"],["948bf809b1988a46b06c9f1919413b10f9226c60f668832ffd959af60c82a0a","53a562856dcb6646dc6b74c5d1c3418c6d4dff08c97cd2bed4cb7f88d8c8e589"],["6260ce7f461801c34f067ce0f02873a8f1b0e44dfc69752accecd819f38fd8e8","bc2da82b6fa5b571a7f09049776a1ef7ecd292238051c198c1a84e95b2b4ae17"],["e5037de0afc1d8d43d8348414bbf4103043ec8f575bfdc432953cc8d2037fa2d","4571534baa94d3b5f9f98d09fb990bddbd5f5b03ec481f10e0e5dc841d755bda"],["e06372b0f4a207adf5ea905e8f1771b4e7e8dbd1c6a6c5b725866a0ae4fce725","7a908974bce18cfe12a27bb2ad5a488cd7484a7787104870b27034f94eee31dd"],["213c7a715cd5d45358d0bbf9dc0ce02204b10bdde2a3f58540ad6908d0559754","4b6dad0b5ae462507013ad06245ba190bb4850f5f36a7eeddff2c27534b458f2"],["4e7c272a7af4b34e8dbb9352a5419a87e2838c70adc62cddf0cc3a3b08fbd53c","17749c766c9d0b18e16fd09f6def681b530b9614bff7dd33e0b3941817dcaae6"],["fea74e3dbe778b1b10f238ad61686aa5c76e3db2be43057632427e2840fb27b6","6e0568db9b0b13297cf674deccb6af93126b596b973f7b77701d3db7f23cb96f"],["76e64113f677cf0e10a2570d599968d31544e179b760432952c02a4417bdde39","c90ddf8dee4e95cf577066d70681f0d35e2a33d2b56d2032b4b1752d1901ac01"],["c738c56b03b2abe1e8281baa743f8f9a8f7cc643df26cbee3ab150242bcbb891","893fb578951ad2537f718f2eacbfbbbb82314eef7880cfe917e735d9699a84c3"],["d895626548b65b81e264c7637c972877d1d72e5f3a925014372e9f6588f6c14b","febfaa38f2bc7eae728ec60818c340eb03428d632bb067e179363ed75d7d991f"],["b8da94032a957518eb0f6433571e8761ceffc73693e84edd49150a564f676e03","2804dfa44805a1e4d7c99cc9762808b092cc584d95ff3b511488e4e74efdf6e7"],["e80fea14441fb33a7d8adab9475d7fab2019effb5156a792f1a11778e3c0df5d","eed1de7f638e00771e89768ca3ca94472d155e80af322ea9fcb4291b6ac9ec78"],["a301697bdfcd704313ba48e51d567543f2a182031efd6915ddc07bbcc4e16070","7370f91cfb67e4f5081809fa25d40f9b1735dbf7c0a11a130c0d1a041e177ea1"],["90ad85b389d6b936463f9d0512678de208cc330b11307fffab7ac63e3fb04ed4","e507a3620a38261affdcbd9427222b839aefabe1582894d991d4d48cb6ef150"],["8f68b9d2f63b5f339239c1ad981f162ee88c5678723ea3351b7b444c9ec4c0da","662a9f2dba063986de1d90c2b6be215dbbea2cfe95510bfdf23cbf79501fff82"],["e4f3fb0176af85d65ff99ff9198c36091f48e86503681e3e6686fd5053231e11","1e63633ad0ef4f1c1661a6d0ea02b7286cc7e74ec951d1c9822c38576feb73bc"],["8c00fa9b18ebf331eb961537a45a4266c7034f2f0d4e1d0716fb6eae20eae29e","efa47267fea521a1a9dc343a3736c974c2fadafa81e36c54e7d2a4c66702414b"],["e7a26ce69dd4829f3e10cec0a9e98ed3143d084f308b92c0997fddfc60cb3e41","2a758e300fa7984b471b006a1aafbb18d0a6b2c0420e83e20e8a9421cf2cfd51"],["b6459e0ee3662ec8d23540c223bcbdc571cbcb967d79424f3cf29eb3de6b80ef","67c876d06f3e06de1dadf16e5661db3c4b3ae6d48e35b2ff30bf0b61a71ba45"],["d68a80c8280bb840793234aa118f06231d6f1fc67e73c5a5deda0f5b496943e8","db8ba9fff4b586d00c4b1f9177b0e28b5b0e7b8f7845295a294c84266b133120"],["324aed7df65c804252dc0270907a30b09612aeb973449cea4095980fc28d3d5d","648a365774b61f2ff130c0c35aec1f4f19213b0c7e332843967224af96ab7c84"],["4df9c14919cde61f6d51dfdbe5fee5dceec4143ba8d1ca888e8bd373fd054c96","35ec51092d8728050974c23a1d85d4b5d506cdc288490192ebac06cad10d5d"],["9c3919a84a474870faed8a9c1cc66021523489054d7f0308cbfc99c8ac1f98cd","ddb84f0f4a4ddd57584f044bf260e641905326f76c64c8e6be7e5e03d4fc599d"],["6057170b1dd12fdf8de05f281d8e06bb91e1493a8b91d4cc5a21382120a959e5","9a1af0b26a6a4807add9a2daf71df262465152bc3ee24c65e899be932385a2a8"],["a576df8e23a08411421439a4518da31880cef0fba7d4df12b1a6973eecb94266","40a6bf20e76640b2c92b97afe58cd82c432e10a7f514d9f3ee8be11ae1b28ec8"],["7778a78c28dec3e30a05fe9629de8c38bb30d1f5cf9a3a208f763889be58ad71","34626d9ab5a5b22ff7098e12f2ff580087b38411ff24ac563b513fc1fd9f43ac"],["928955ee637a84463729fd30e7afd2ed5f96274e5ad7e5cb09eda9c06d903ac","c25621003d3f42a827b78a13093a95eeac3d26efa8a8d83fc5180e935bcd091f"],["85d0fef3ec6db109399064f3a0e3b2855645b4a907ad354527aae75163d82751","1f03648413a38c0be29d496e582cf5663e8751e96877331582c237a24eb1f962"],["ff2b0dce97eece97c1c9b6041798b85dfdfb6d8882da20308f5404824526087e","493d13fef524ba188af4c4dc54d07936c7b7ed6fb90e2ceb2c951e01f0c29907"],["827fbbe4b1e880ea9ed2b2e6301b212b57f1ee148cd6dd28780e5e2cf856e241","c60f9c923c727b0b71bef2c67d1d12687ff7a63186903166d605b68baec293ec"],["eaa649f21f51bdbae7be4ae34ce6e5217a58fdce7f47f9aa7f3b58fa2120e2b3","be3279ed5bbbb03ac69a80f89879aa5a01a6b965f13f7e59d47a5305ba5ad93d"],["e4a42d43c5cf169d9391df6decf42ee541b6d8f0c9a137401e23632dda34d24f","4d9f92e716d1c73526fc99ccfb8ad34ce886eedfa8d8e4f13a7f7131deba9414"],["1ec80fef360cbdd954160fadab352b6b92b53576a88fea4947173b9d4300bf19","aeefe93756b5340d2f3a4958a7abbf5e0146e77f6295a07b671cdc1cc107cefd"],["146a778c04670c2f91b00af4680dfa8bce3490717d58ba889ddb5928366642be","b318e0ec3354028add669827f9d4b2870aaa971d2f7e5ed1d0b297483d83efd0"],["fa50c0f61d22e5f07e3acebb1aa07b128d0012209a28b9776d76a8793180eef9","6b84c6922397eba9b72cd2872281a68a5e683293a57a213b38cd8d7d3f4f2811"],["da1d61d0ca721a11b1a5bf6b7d88e8421a288ab5d5bba5220e53d32b5f067ec2","8157f55a7c99306c79c0766161c91e2966a73899d279b48a655fba0f1ad836f1"],["a8e282ff0c9706907215ff98e8fd416615311de0446f1e062a73b0610d064e13","7f97355b8db81c09abfb7f3c5b2515888b679a3e50dd6bd6cef7c73111f4cc0c"],["174a53b9c9a285872d39e56e6913cab15d59b1fa512508c022f382de8319497c","ccc9dc37abfc9c1657b4155f2c47f9e6646b3a1d8cb9854383da13ac079afa73"],["959396981943785c3d3e57edf5018cdbe039e730e4918b3d884fdff09475b7ba","2e7e552888c331dd8ba0386a4b9cd6849c653f64c8709385e9b8abf87524f2fd"],["d2a63a50ae401e56d645a1153b109a8fcca0a43d561fba2dbb51340c9d82b151","e82d86fb6443fcb7565aee58b2948220a70f750af484ca52d4142174dcf89405"],["64587e2335471eb890ee7896d7cfdc866bacbdbd3839317b3436f9b45617e073","d99fcdd5bf6902e2ae96dd6447c299a185b90a39133aeab358299e5e9faf6589"],["8481bde0e4e4d885b3a546d3e549de042f0aa6cea250e7fd358d6c86dd45e458","38ee7b8cba5404dd84a25bf39cecb2ca900a79c42b262e556d64b1b59779057e"],["13464a57a78102aa62b6979ae817f4637ffcfed3c4b1ce30bcd6303f6caf666b","69be159004614580ef7e433453ccb0ca48f300a81d0942e13f495a907f6ecc27"],["bc4a9df5b713fe2e9aef430bcc1dc97a0cd9ccede2f28588cada3a0d2d83f366","d3a81ca6e785c06383937adf4b798caa6e8a9fbfa547b16d758d666581f33c1"],["8c28a97bf8298bc0d23d8c749452a32e694b65e30a9472a3954ab30fe5324caa","40a30463a3305193378fedf31f7cc0eb7ae784f0451cb9459e71dc73cbef9482"],["8ea9666139527a8c1dd94ce4f071fd23c8b350c5a4bb33748c4ba111faccae0","620efabbc8ee2782e24e7c0cfb95c5d735b783be9cf0f8e955af34a30e62b945"],["dd3625faef5ba06074669716bbd3788d89bdde815959968092f76cc4eb9a9787","7a188fa3520e30d461da2501045731ca941461982883395937f68d00c644a573"],["f710d79d9eb962297e4f6232b40e8f7feb2bc63814614d692c12de752408221e","ea98e67232d3b3295d3b535532115ccac8612c721851617526ae47a9c77bfc82"]]},naf:{wnd:7,points:[["f9308a019258c31049344f85f89d5229b531c845836f99b08601f113bce036f9","388f7b0f632de8140fe337e62a37f3566500a99934c2231b6cb9fd7584b8e672"],["2f8bde4d1a07209355b4a7250a5c5128e88b84bddc619ab7cba8d569b240efe4","d8ac222636e5e3d6d4dba9dda6c9c426f788271bab0d6840dca87d3aa6ac62d6"],["5cbdf0646e5db4eaa398f365f2ea7a0e3d419b7e0330e39ce92bddedcac4f9bc","6aebca40ba255960a3178d6d861a54dba813d0b813fde7b5a5082628087264da"],["acd484e2f0c7f65309ad178a9f559abde09796974c57e714c35f110dfc27ccbe","cc338921b0a7d9fd64380971763b61e9add888a4375f8e0f05cc262ac64f9c37"],["774ae7f858a9411e5ef4246b70c65aac5649980be5c17891bbec17895da008cb","d984a032eb6b5e190243dd56d7b7b365372db1e2dff9d6a8301d74c9c953c61b"],["f28773c2d975288bc7d1d205c3748651b075fbc6610e58cddeeddf8f19405aa8","ab0902e8d880a89758212eb65cdaf473a1a06da521fa91f29b5cb52db03ed81"],["d7924d4f7d43ea965a465ae3095ff41131e5946f3c85f79e44adbcf8e27e080e","581e2872a86c72a683842ec228cc6defea40af2bd896d3a5c504dc9ff6a26b58"],["defdea4cdb677750a420fee807eacf21eb9898ae79b9768766e4faa04a2d4a34","4211ab0694635168e997b0ead2a93daeced1f4a04a95c0f6cfb199f69e56eb77"],["2b4ea0a797a443d293ef5cff444f4979f06acfebd7e86d277475656138385b6c","85e89bc037945d93b343083b5a1c86131a01f60c50269763b570c854e5c09b7a"],["352bbf4a4cdd12564f93fa332ce333301d9ad40271f8107181340aef25be59d5","321eb4075348f534d59c18259dda3e1f4a1b3b2e71b1039c67bd3d8bcf81998c"],["2fa2104d6b38d11b0230010559879124e42ab8dfeff5ff29dc9cdadd4ecacc3f","2de1068295dd865b64569335bd5dd80181d70ecfc882648423ba76b532b7d67"],["9248279b09b4d68dab21a9b066edda83263c3d84e09572e269ca0cd7f5453714","73016f7bf234aade5d1aa71bdea2b1ff3fc0de2a887912ffe54a32ce97cb3402"],["daed4f2be3a8bf278e70132fb0beb7522f570e144bf615c07e996d443dee8729","a69dce4a7d6c98e8d4a1aca87ef8d7003f83c230f3afa726ab40e52290be1c55"],["c44d12c7065d812e8acf28d7cbb19f9011ecd9e9fdf281b0e6a3b5e87d22e7db","2119a460ce326cdc76c45926c982fdac0e106e861edf61c5a039063f0e0e6482"],["6a245bf6dc698504c89a20cfded60853152b695336c28063b61c65cbd269e6b4","e022cf42c2bd4a708b3f5126f16a24ad8b33ba48d0423b6efd5e6348100d8a82"],["1697ffa6fd9de627c077e3d2fe541084ce13300b0bec1146f95ae57f0d0bd6a5","b9c398f186806f5d27561506e4557433a2cf15009e498ae7adee9d63d01b2396"],["605bdb019981718b986d0f07e834cb0d9deb8360ffb7f61df982345ef27a7479","2972d2de4f8d20681a78d93ec96fe23c26bfae84fb14db43b01e1e9056b8c49"],["62d14dab4150bf497402fdc45a215e10dcb01c354959b10cfe31c7e9d87ff33d","80fc06bd8cc5b01098088a1950eed0db01aa132967ab472235f5642483b25eaf"],["80c60ad0040f27dade5b4b06c408e56b2c50e9f56b9b8b425e555c2f86308b6f","1c38303f1cc5c30f26e66bad7fe72f70a65eed4cbe7024eb1aa01f56430bd57a"],["7a9375ad6167ad54aa74c6348cc54d344cc5dc9487d847049d5eabb0fa03c8fb","d0e3fa9eca8726909559e0d79269046bdc59ea10c70ce2b02d499ec224dc7f7"],["d528ecd9b696b54c907a9ed045447a79bb408ec39b68df504bb51f459bc3ffc9","eecf41253136e5f99966f21881fd656ebc4345405c520dbc063465b521409933"],["49370a4b5f43412ea25f514e8ecdad05266115e4a7ecb1387231808f8b45963","758f3f41afd6ed428b3081b0512fd62a54c3f3afbb5b6764b653052a12949c9a"],["77f230936ee88cbbd73df930d64702ef881d811e0e1498e2f1c13eb1fc345d74","958ef42a7886b6400a08266e9ba1b37896c95330d97077cbbe8eb3c7671c60d6"],["f2dac991cc4ce4b9ea44887e5c7c0bce58c80074ab9d4dbaeb28531b7739f530","e0dedc9b3b2f8dad4da1f32dec2531df9eb5fbeb0598e4fd1a117dba703a3c37"],["463b3d9f662621fb1b4be8fbbe2520125a216cdfc9dae3debcba4850c690d45b","5ed430d78c296c3543114306dd8622d7c622e27c970a1de31cb377b01af7307e"],["f16f804244e46e2a09232d4aff3b59976b98fac14328a2d1a32496b49998f247","cedabd9b82203f7e13d206fcdf4e33d92a6c53c26e5cce26d6579962c4e31df6"],["caf754272dc84563b0352b7a14311af55d245315ace27c65369e15f7151d41d1","cb474660ef35f5f2a41b643fa5e460575f4fa9b7962232a5c32f908318a04476"],["2600ca4b282cb986f85d0f1709979d8b44a09c07cb86d7c124497bc86f082120","4119b88753c15bd6a693b03fcddbb45d5ac6be74ab5f0ef44b0be9475a7e4b40"],["7635ca72d7e8432c338ec53cd12220bc01c48685e24f7dc8c602a7746998e435","91b649609489d613d1d5e590f78e6d74ecfc061d57048bad9e76f302c5b9c61"],["754e3239f325570cdbbf4a87deee8a66b7f2b33479d468fbc1a50743bf56cc18","673fb86e5bda30fb3cd0ed304ea49a023ee33d0197a695d0c5d98093c536683"],["e3e6bd1071a1e96aff57859c82d570f0330800661d1c952f9fe2694691d9b9e8","59c9e0bba394e76f40c0aa58379a3cb6a5a2283993e90c4167002af4920e37f5"],["186b483d056a033826ae73d88f732985c4ccb1f32ba35f4b4cc47fdcf04aa6eb","3b952d32c67cf77e2e17446e204180ab21fb8090895138b4a4a797f86e80888b"],["df9d70a6b9876ce544c98561f4be4f725442e6d2b737d9c91a8321724ce0963f","55eb2dafd84d6ccd5f862b785dc39d4ab157222720ef9da217b8c45cf2ba2417"],["5edd5cc23c51e87a497ca815d5dce0f8ab52554f849ed8995de64c5f34ce7143","efae9c8dbc14130661e8cec030c89ad0c13c66c0d17a2905cdc706ab7399a868"],["290798c2b6476830da12fe02287e9e777aa3fba1c355b17a722d362f84614fba","e38da76dcd440621988d00bcf79af25d5b29c094db2a23146d003afd41943e7a"],["af3c423a95d9f5b3054754efa150ac39cd29552fe360257362dfdecef4053b45","f98a3fd831eb2b749a93b0e6f35cfb40c8cd5aa667a15581bc2feded498fd9c6"],["766dbb24d134e745cccaa28c99bf274906bb66b26dcf98df8d2fed50d884249a","744b1152eacbe5e38dcc887980da38b897584a65fa06cedd2c924f97cbac5996"],["59dbf46f8c94759ba21277c33784f41645f7b44f6c596a58ce92e666191abe3e","c534ad44175fbc300f4ea6ce648309a042ce739a7919798cd85e216c4a307f6e"],["f13ada95103c4537305e691e74e9a4a8dd647e711a95e73cb62dc6018cfd87b8","e13817b44ee14de663bf4bc808341f326949e21a6a75c2570778419bdaf5733d"],["7754b4fa0e8aced06d4167a2c59cca4cda1869c06ebadfb6488550015a88522c","30e93e864e669d82224b967c3020b8fa8d1e4e350b6cbcc537a48b57841163a2"],["948dcadf5990e048aa3874d46abef9d701858f95de8041d2a6828c99e2262519","e491a42537f6e597d5d28a3224b1bc25df9154efbd2ef1d2cbba2cae5347d57e"],["7962414450c76c1689c7b48f8202ec37fb224cf5ac0bfa1570328a8a3d7c77ab","100b610ec4ffb4760d5c1fc133ef6f6b12507a051f04ac5760afa5b29db83437"],["3514087834964b54b15b160644d915485a16977225b8847bb0dd085137ec47ca","ef0afbb2056205448e1652c48e8127fc6039e77c15c2378b7e7d15a0de293311"],["d3cc30ad6b483e4bc79ce2c9dd8bc54993e947eb8df787b442943d3f7b527eaf","8b378a22d827278d89c5e9be8f9508ae3c2ad46290358630afb34db04eede0a4"],["1624d84780732860ce1c78fcbfefe08b2b29823db913f6493975ba0ff4847610","68651cf9b6da903e0914448c6cd9d4ca896878f5282be4c8cc06e2a404078575"],["733ce80da955a8a26902c95633e62a985192474b5af207da6df7b4fd5fc61cd4","f5435a2bd2badf7d485a4d8b8db9fcce3e1ef8e0201e4578c54673bc1dc5ea1d"],["15d9441254945064cf1a1c33bbd3b49f8966c5092171e699ef258dfab81c045c","d56eb30b69463e7234f5137b73b84177434800bacebfc685fc37bbe9efe4070d"],["a1d0fcf2ec9de675b612136e5ce70d271c21417c9d2b8aaaac138599d0717940","edd77f50bcb5a3cab2e90737309667f2641462a54070f3d519212d39c197a629"],["e22fbe15c0af8ccc5780c0735f84dbe9a790badee8245c06c7ca37331cb36980","a855babad5cd60c88b430a69f53a1a7a38289154964799be43d06d77d31da06"],["311091dd9860e8e20ee13473c1155f5f69635e394704eaa74009452246cfa9b3","66db656f87d1f04fffd1f04788c06830871ec5a64feee685bd80f0b1286d8374"],["34c1fd04d301be89b31c0442d3e6ac24883928b45a9340781867d4232ec2dbdf","9414685e97b1b5954bd46f730174136d57f1ceeb487443dc5321857ba73abee"],["f219ea5d6b54701c1c14de5b557eb42a8d13f3abbcd08affcc2a5e6b049b8d63","4cb95957e83d40b0f73af4544cccf6b1f4b08d3c07b27fb8d8c2962a400766d1"],["d7b8740f74a8fbaab1f683db8f45de26543a5490bca627087236912469a0b448","fa77968128d9c92ee1010f337ad4717eff15db5ed3c049b3411e0315eaa4593b"],["32d31c222f8f6f0ef86f7c98d3a3335ead5bcd32abdd94289fe4d3091aa824bf","5f3032f5892156e39ccd3d7915b9e1da2e6dac9e6f26e961118d14b8462e1661"],["7461f371914ab32671045a155d9831ea8793d77cd59592c4340f86cbc18347b5","8ec0ba238b96bec0cbdddcae0aa442542eee1ff50c986ea6b39847b3cc092ff6"],["ee079adb1df1860074356a25aa38206a6d716b2c3e67453d287698bad7b2b2d6","8dc2412aafe3be5c4c5f37e0ecc5f9f6a446989af04c4e25ebaac479ec1c8c1e"],["16ec93e447ec83f0467b18302ee620f7e65de331874c9dc72bfd8616ba9da6b5","5e4631150e62fb40d0e8c2a7ca5804a39d58186a50e497139626778e25b0674d"],["eaa5f980c245f6f038978290afa70b6bd8855897f98b6aa485b96065d537bd99","f65f5d3e292c2e0819a528391c994624d784869d7e6ea67fb18041024edc07dc"],["78c9407544ac132692ee1910a02439958ae04877151342ea96c4b6b35a49f51","f3e0319169eb9b85d5404795539a5e68fa1fbd583c064d2462b675f194a3ddb4"],["494f4be219a1a77016dcd838431aea0001cdc8ae7a6fc688726578d9702857a5","42242a969283a5f339ba7f075e36ba2af925ce30d767ed6e55f4b031880d562c"],["a598a8030da6d86c6bc7f2f5144ea549d28211ea58faa70ebf4c1e665c1fe9b5","204b5d6f84822c307e4b4a7140737aec23fc63b65b35f86a10026dbd2d864e6b"],["c41916365abb2b5d09192f5f2dbeafec208f020f12570a184dbadc3e58595997","4f14351d0087efa49d245b328984989d5caf9450f34bfc0ed16e96b58fa9913"],["841d6063a586fa475a724604da03bc5b92a2e0d2e0a36acfe4c73a5514742881","73867f59c0659e81904f9a1c7543698e62562d6744c169ce7a36de01a8d6154"],["5e95bb399a6971d376026947f89bde2f282b33810928be4ded112ac4d70e20d5","39f23f366809085beebfc71181313775a99c9aed7d8ba38b161384c746012865"],["36e4641a53948fd476c39f8a99fd974e5ec07564b5315d8bf99471bca0ef2f66","d2424b1b1abe4eb8164227b085c9aa9456ea13493fd563e06fd51cf5694c78fc"],["336581ea7bfbbb290c191a2f507a41cf5643842170e914faeab27c2c579f726","ead12168595fe1be99252129b6e56b3391f7ab1410cd1e0ef3dcdcabd2fda224"],["8ab89816dadfd6b6a1f2634fcf00ec8403781025ed6890c4849742706bd43ede","6fdcef09f2f6d0a044e654aef624136f503d459c3e89845858a47a9129cdd24e"],["1e33f1a746c9c5778133344d9299fcaa20b0938e8acff2544bb40284b8c5fb94","60660257dd11b3aa9c8ed618d24edff2306d320f1d03010e33a7d2057f3b3b6"],["85b7c1dcb3cec1b7ee7f30ded79dd20a0ed1f4cc18cbcfcfa410361fd8f08f31","3d98a9cdd026dd43f39048f25a8847f4fcafad1895d7a633c6fed3c35e999511"],["29df9fbd8d9e46509275f4b125d6d45d7fbe9a3b878a7af872a2800661ac5f51","b4c4fe99c775a606e2d8862179139ffda61dc861c019e55cd2876eb2a27d84b"],["a0b1cae06b0a847a3fea6e671aaf8adfdfe58ca2f768105c8082b2e449fce252","ae434102edde0958ec4b19d917a6a28e6b72da1834aff0e650f049503a296cf2"],["4e8ceafb9b3e9a136dc7ff67e840295b499dfb3b2133e4ba113f2e4c0e121e5","cf2174118c8b6d7a4b48f6d534ce5c79422c086a63460502b827ce62a326683c"],["d24a44e047e19b6f5afb81c7ca2f69080a5076689a010919f42725c2b789a33b","6fb8d5591b466f8fc63db50f1c0f1c69013f996887b8244d2cdec417afea8fa3"],["ea01606a7a6c9cdd249fdfcfacb99584001edd28abbab77b5104e98e8e3b35d4","322af4908c7312b0cfbfe369f7a7b3cdb7d4494bc2823700cfd652188a3ea98d"],["af8addbf2b661c8a6c6328655eb96651252007d8c5ea31be4ad196de8ce2131f","6749e67c029b85f52a034eafd096836b2520818680e26ac8f3dfbcdb71749700"],["e3ae1974566ca06cc516d47e0fb165a674a3dabcfca15e722f0e3450f45889","2aeabe7e4531510116217f07bf4d07300de97e4874f81f533420a72eeb0bd6a4"],["591ee355313d99721cf6993ffed1e3e301993ff3ed258802075ea8ced397e246","b0ea558a113c30bea60fc4775460c7901ff0b053d25ca2bdeee98f1a4be5d196"],["11396d55fda54c49f19aa97318d8da61fa8584e47b084945077cf03255b52984","998c74a8cd45ac01289d5833a7beb4744ff536b01b257be4c5767bea93ea57a4"],["3c5d2a1ba39c5a1790000738c9e0c40b8dcdfd5468754b6405540157e017aa7a","b2284279995a34e2f9d4de7396fc18b80f9b8b9fdd270f6661f79ca4c81bd257"],["cc8704b8a60a0defa3a99a7299f2e9c3fbc395afb04ac078425ef8a1793cc030","bdd46039feed17881d1e0862db347f8cf395b74fc4bcdc4e940b74e3ac1f1b13"],["c533e4f7ea8555aacd9777ac5cad29b97dd4defccc53ee7ea204119b2889b197","6f0a256bc5efdf429a2fb6242f1a43a2d9b925bb4a4b3a26bb8e0f45eb596096"],["c14f8f2ccb27d6f109f6d08d03cc96a69ba8c34eec07bbcf566d48e33da6593","c359d6923bb398f7fd4473e16fe1c28475b740dd098075e6c0e8649113dc3a38"],["a6cbc3046bc6a450bac24789fa17115a4c9739ed75f8f21ce441f72e0b90e6ef","21ae7f4680e889bb130619e2c0f95a360ceb573c70603139862afd617fa9b9f"],["347d6d9a02c48927ebfb86c1359b1caf130a3c0267d11ce6344b39f99d43cc38","60ea7f61a353524d1c987f6ecec92f086d565ab687870cb12689ff1e31c74448"],["da6545d2181db8d983f7dcb375ef5866d47c67b1bf31c8cf855ef7437b72656a","49b96715ab6878a79e78f07ce5680c5d6673051b4935bd897fea824b77dc208a"],["c40747cc9d012cb1a13b8148309c6de7ec25d6945d657146b9d5994b8feb1111","5ca560753be2a12fc6de6caf2cb489565db936156b9514e1bb5e83037e0fa2d4"],["4e42c8ec82c99798ccf3a610be870e78338c7f713348bd34c8203ef4037f3502","7571d74ee5e0fb92a7a8b33a07783341a5492144cc54bcc40a94473693606437"],["3775ab7089bc6af823aba2e1af70b236d251cadb0c86743287522a1b3b0dedea","be52d107bcfa09d8bcb9736a828cfa7fac8db17bf7a76a2c42ad961409018cf7"],["cee31cbf7e34ec379d94fb814d3d775ad954595d1314ba8846959e3e82f74e26","8fd64a14c06b589c26b947ae2bcf6bfa0149ef0be14ed4d80f448a01c43b1c6d"],["b4f9eaea09b6917619f6ea6a4eb5464efddb58fd45b1ebefcdc1a01d08b47986","39e5c9925b5a54b07433a4f18c61726f8bb131c012ca542eb24a8ac07200682a"],["d4263dfc3d2df923a0179a48966d30ce84e2515afc3dccc1b77907792ebcc60e","62dfaf07a0f78feb30e30d6295853ce189e127760ad6cf7fae164e122a208d54"],["48457524820fa65a4f8d35eb6930857c0032acc0a4a2de422233eeda897612c4","25a748ab367979d98733c38a1fa1c2e7dc6cc07db2d60a9ae7a76aaa49bd0f77"],["dfeeef1881101f2cb11644f3a2afdfc2045e19919152923f367a1767c11cceda","ecfb7056cf1de042f9420bab396793c0c390bde74b4bbdff16a83ae09a9a7517"],["6d7ef6b17543f8373c573f44e1f389835d89bcbc6062ced36c82df83b8fae859","cd450ec335438986dfefa10c57fea9bcc521a0959b2d80bbf74b190dca712d10"],["e75605d59102a5a2684500d3b991f2e3f3c88b93225547035af25af66e04541f","f5c54754a8f71ee540b9b48728473e314f729ac5308b06938360990e2bfad125"],["eb98660f4c4dfaa06a2be453d5020bc99a0c2e60abe388457dd43fefb1ed620c","6cb9a8876d9cb8520609af3add26cd20a0a7cd8a9411131ce85f44100099223e"],["13e87b027d8514d35939f2e6892b19922154596941888336dc3563e3b8dba942","fef5a3c68059a6dec5d624114bf1e91aac2b9da568d6abeb2570d55646b8adf1"],["ee163026e9fd6fe017c38f06a5be6fc125424b371ce2708e7bf4491691e5764a","1acb250f255dd61c43d94ccc670d0f58f49ae3fa15b96623e5430da0ad6c62b2"],["b268f5ef9ad51e4d78de3a750c2dc89b1e626d43505867999932e5db33af3d80","5f310d4b3c99b9ebb19f77d41c1dee018cf0d34fd4191614003e945a1216e423"],["ff07f3118a9df035e9fad85eb6c7bfe42b02f01ca99ceea3bf7ffdba93c4750d","438136d603e858a3a5c440c38eccbaddc1d2942114e2eddd4740d098ced1f0d8"],["8d8b9855c7c052a34146fd20ffb658bea4b9f69e0d825ebec16e8c3ce2b526a1","cdb559eedc2d79f926baf44fb84ea4d44bcf50fee51d7ceb30e2e7f463036758"],["52db0b5384dfbf05bfa9d472d7ae26dfe4b851ceca91b1eba54263180da32b63","c3b997d050ee5d423ebaf66a6db9f57b3180c902875679de924b69d84a7b375"],["e62f9490d3d51da6395efd24e80919cc7d0f29c3f3fa48c6fff543becbd43352","6d89ad7ba4876b0b22c2ca280c682862f342c8591f1daf5170e07bfd9ccafa7d"],["7f30ea2476b399b4957509c88f77d0191afa2ff5cb7b14fd6d8e7d65aaab1193","ca5ef7d4b231c94c3b15389a5f6311e9daff7bb67b103e9880ef4bff637acaec"],["5098ff1e1d9f14fb46a210fada6c903fef0fb7b4a1dd1d9ac60a0361800b7a00","9731141d81fc8f8084d37c6e7542006b3ee1b40d60dfe5362a5b132fd17ddc0"],["32b78c7de9ee512a72895be6b9cbefa6e2f3c4ccce445c96b9f2c81e2778ad58","ee1849f513df71e32efc3896ee28260c73bb80547ae2275ba497237794c8753c"],["e2cb74fddc8e9fbcd076eef2a7c72b0ce37d50f08269dfc074b581550547a4f7","d3aa2ed71c9dd2247a62df062736eb0baddea9e36122d2be8641abcb005cc4a4"],["8438447566d4d7bedadc299496ab357426009a35f235cb141be0d99cd10ae3a8","c4e1020916980a4da5d01ac5e6ad330734ef0d7906631c4f2390426b2edd791f"],["4162d488b89402039b584c6fc6c308870587d9c46f660b878ab65c82c711d67e","67163e903236289f776f22c25fb8a3afc1732f2b84b4e95dbda47ae5a0852649"],["3fad3fa84caf0f34f0f89bfd2dcf54fc175d767aec3e50684f3ba4a4bf5f683d","cd1bc7cb6cc407bb2f0ca647c718a730cf71872e7d0d2a53fa20efcdfe61826"],["674f2600a3007a00568c1a7ce05d0816c1fb84bf1370798f1c69532faeb1a86b","299d21f9413f33b3edf43b257004580b70db57da0b182259e09eecc69e0d38a5"],["d32f4da54ade74abb81b815ad1fb3b263d82d6c692714bcff87d29bd5ee9f08f","f9429e738b8e53b968e99016c059707782e14f4535359d582fc416910b3eea87"],["30e4e670435385556e593657135845d36fbb6931f72b08cb1ed954f1e3ce3ff6","462f9bce619898638499350113bbc9b10a878d35da70740dc695a559eb88db7b"],["be2062003c51cc3004682904330e4dee7f3dcd10b01e580bf1971b04d4cad297","62188bc49d61e5428573d48a74e1c655b1c61090905682a0d5558ed72dccb9bc"],["93144423ace3451ed29e0fb9ac2af211cb6e84a601df5993c419859fff5df04a","7c10dfb164c3425f5c71a3f9d7992038f1065224f72bb9d1d902a6d13037b47c"],["b015f8044f5fcbdcf21ca26d6c34fb8197829205c7b7d2a7cb66418c157b112c","ab8c1e086d04e813744a655b2df8d5f83b3cdc6faa3088c1d3aea1454e3a1d5f"],["d5e9e1da649d97d89e4868117a465a3a4f8a18de57a140d36b3f2af341a21b52","4cb04437f391ed73111a13cc1d4dd0db1693465c2240480d8955e8592f27447a"],["d3ae41047dd7ca065dbf8ed77b992439983005cd72e16d6f996a5316d36966bb","bd1aeb21ad22ebb22a10f0303417c6d964f8cdd7df0aca614b10dc14d125ac46"],["463e2763d885f958fc66cdd22800f0a487197d0a82e377b49f80af87c897b065","bfefacdb0e5d0fd7df3a311a94de062b26b80c61fbc97508b79992671ef7ca7f"],["7985fdfd127c0567c6f53ec1bb63ec3158e597c40bfe747c83cddfc910641917","603c12daf3d9862ef2b25fe1de289aed24ed291e0ec6708703a5bd567f32ed03"],["74a1ad6b5f76e39db2dd249410eac7f99e74c59cb83d2d0ed5ff1543da7703e9","cc6157ef18c9c63cd6193d83631bbea0093e0968942e8c33d5737fd790e0db08"],["30682a50703375f602d416664ba19b7fc9bab42c72747463a71d0896b22f6da3","553e04f6b018b4fa6c8f39e7f311d3176290d0e0f19ca73f17714d9977a22ff8"],["9e2158f0d7c0d5f26c3791efefa79597654e7a2b2464f52b1ee6c1347769ef57","712fcdd1b9053f09003a3481fa7762e9ffd7c8ef35a38509e2fbf2629008373"],["176e26989a43c9cfeba4029c202538c28172e566e3c4fce7322857f3be327d66","ed8cc9d04b29eb877d270b4878dc43c19aefd31f4eee09ee7b47834c1fa4b1c3"],["75d46efea3771e6e68abb89a13ad747ecf1892393dfc4f1b7004788c50374da8","9852390a99507679fd0b86fd2b39a868d7efc22151346e1a3ca4726586a6bed8"],["809a20c67d64900ffb698c4c825f6d5f2310fb0451c869345b7319f645605721","9e994980d9917e22b76b061927fa04143d096ccc54963e6a5ebfa5f3f8e286c1"],["1b38903a43f7f114ed4500b4eac7083fdefece1cf29c63528d563446f972c180","4036edc931a60ae889353f77fd53de4a2708b26b6f5da72ad3394119daf408f9"]]}}},function(e,t,n){"use strict";function a(e){return(a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}var r=n(7),A=n(184),i=n(14),o=n(69),s=n(107),p=i.assert,u=n(185),c=n(186);function d(e){if(!(this instanceof d))return new d(e);"string"==typeof e&&(p(Object.prototype.hasOwnProperty.call(o,e),"Unknown curve "+e),e=o[e]),e instanceof o.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}e.exports=d,d.prototype.keyPair=function(e){return new u(this,e)},d.prototype.keyFromPrivate=function(e,t){return u.fromPrivate(this,e,t)},d.prototype.keyFromPublic=function(e,t){return u.fromPublic(this,e,t)},d.prototype.genKeyPair=function(e){e||(e={});for(var t=new A({hash:this.hash,pers:e.pers,persEnc:e.persEnc||"utf8",entropy:e.entropy||s(this.hash.hmacStrength),entropyEnc:e.entropy&&e.entropyEnc||"utf8",nonce:this.n.toArray()}),n=this.n.byteLength(),a=this.n.sub(new r(2));;){var i=new r(t.generate(n));if(!(i.cmp(a)>0))return i.iaddn(1),this.keyFromPrivate(i)}},d.prototype._truncateToN=function(e,t){var n=8*e.byteLength()-this.n.bitLength();return n>0&&(e=e.ushrn(n)),!t&&e.cmp(this.n)>=0?e.sub(this.n):e},d.prototype.sign=function(e,t,n,i){"object"===a(n)&&(i=n,n=null),i||(i={}),t=this.keyFromPrivate(t,n),e=this._truncateToN(new r(e,16));for(var o=this.n.byteLength(),s=t.getPrivate().toArray("be",o),p=e.toArray("be",o),u=new A({hash:this.hash,entropy:s,nonce:p,pers:i.pers,persEnc:i.persEnc||"utf8"}),d=this.n.sub(new r(1)),l=0;;l++){var g=i.k?i.k(l):new r(u.generate(this.n.byteLength()));if(!((g=this._truncateToN(g,!0)).cmpn(1)<=0||g.cmp(d)>=0)){var I=this.g.mul(g);if(!I.isInfinity()){var f=I.getX(),h=f.umod(this.n);if(0!==h.cmpn(0)){var y=g.invm(this.n).mul(h.mul(t.getPrivate()).iadd(e));if(0!==(y=y.umod(this.n)).cmpn(0)){var m=(I.getY().isOdd()?1:0)|(0!==f.cmp(h)?2:0);return i.canonical&&y.cmp(this.nh)>0&&(y=this.n.sub(y),m^=1),new c({r:h,s:y,recoveryParam:m})}}}}}},d.prototype.verify=function(e,t,n,a){e=this._truncateToN(new r(e,16)),n=this.keyFromPublic(n,a);var A=(t=new c(t,"hex")).r,i=t.s;if(A.cmpn(1)<0||A.cmp(this.n)>=0)return!1;if(i.cmpn(1)<0||i.cmp(this.n)>=0)return!1;var o,s=i.invm(this.n),p=s.mul(e).umod(this.n),u=s.mul(A).umod(this.n);return this.curve._maxwellTrick?!(o=this.g.jmulAdd(p,n.getPublic(),u)).isInfinity()&&o.eqXToP(A):!(o=this.g.mulAdd(p,n.getPublic(),u)).isInfinity()&&0===o.getX().umod(this.n).cmp(A)},d.prototype.recoverPubKey=function(e,t,n,a){p((3&n)===n,"The recovery param is more than two bits"),t=new c(t,a);var A=this.n,i=new r(e),o=t.r,s=t.s,u=1&n,d=n>>1;if(o.cmp(this.curve.p.umod(this.curve.n))>=0&&d)throw new Error("Unable to find sencond key candinate");o=d?this.curve.pointFromX(o.add(this.curve.n),u):this.curve.pointFromX(o,u);var l=t.r.invm(A),g=A.sub(i).mul(l).umod(A),I=s.mul(l).umod(A);return this.g.mulAdd(g,o,I)},d.prototype.getKeyRecoveryParam=function(e,t,n,a){if(null!==(t=new c(t,a)).recoveryParam)return t.recoveryParam;for(var r=0;r<4;r++){var A;try{A=this.recoverPubKey(e,t,r)}catch(e){continue}if(A.eq(n))return r}throw new Error("Unable to find valid recovery factor")}},function(e,t,n){"use strict";var a=n(70),r=n(106),A=n(11);function i(e){if(!(this instanceof i))return new i(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=r.toArray(e.entropy,e.entropyEnc||"hex"),n=r.toArray(e.nonce,e.nonceEnc||"hex"),a=r.toArray(e.pers,e.persEnc||"hex");A(t.length>=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits"),this._init(t,n,a)}e.exports=i,i.prototype._init=function(e,t,n){var a=e.concat(t).concat(n);this.K=new Array(this.outLen/8),this.V=new Array(this.outLen/8);for(var r=0;r<this.V.length;r++)this.K[r]=0,this.V[r]=1;this._update(a),this._reseed=1,this.reseedInterval=281474976710656},i.prototype._hmac=function(){return new a.hmac(this.hash,this.K)},i.prototype._update=function(e){var t=this._hmac().update(this.V).update([0]);e&&(t=t.update(e)),this.K=t.digest(),this.V=this._hmac().update(this.V).digest(),e&&(this.K=this._hmac().update(this.V).update([1]).update(e).digest(),this.V=this._hmac().update(this.V).digest())},i.prototype.reseed=function(e,t,n,a){"string"!=typeof t&&(a=n,n=t,t=null),e=r.toArray(e,t),n=r.toArray(n,a),A(e.length>=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits"),this._update(e.concat(n||[])),this._reseed=1},i.prototype.generate=function(e,t,n,a){if(this._reseed>this.reseedInterval)throw new Error("Reseed is required");"string"!=typeof t&&(a=n,n=t,t=null),n&&(n=r.toArray(n,a||"hex"),this._update(n));for(var A=[];A.length<e;)this.V=this._hmac().update(this.V).digest(),A=A.concat(this.V);var i=A.slice(0,e);return this._update(n),this._reseed++,r.encode(i,t)}},function(e,t,n){"use strict";var a=n(7),r=n(14).assert;function A(e,t){this.ec=e,this.priv=null,this.pub=null,t.priv&&this._importPrivate(t.priv,t.privEnc),t.pub&&this._importPublic(t.pub,t.pubEnc)}e.exports=A,A.fromPublic=function(e,t,n){return t instanceof A?t:new A(e,{pub:t,pubEnc:n})},A.fromPrivate=function(e,t,n){return t instanceof A?t:new A(e,{priv:t,privEnc:n})},A.prototype.validate=function(){var e=this.getPublic();return e.isInfinity()?{result:!1,reason:"Invalid public key"}:e.validate()?e.mul(this.ec.curve.n).isInfinity()?{result:!0,reason:null}:{result:!1,reason:"Public key * N != O"}:{result:!1,reason:"Public key is not a point"}},A.prototype.getPublic=function(e,t){return"string"==typeof e&&(t=e,e=null),this.pub||(this.pub=this.ec.g.mul(this.priv)),t?this.pub.encode(t,e):this.pub},A.prototype.getPrivate=function(e){return"hex"===e?this.priv.toString(16,2):this.priv},A.prototype._importPrivate=function(e,t){this.priv=new a(e,t||16),this.priv=this.priv.umod(this.ec.curve.n)},A.prototype._importPublic=function(e,t){if(e.x||e.y)return"mont"===this.ec.curve.type?r(e.x,"Need x coordinate"):"short"!==this.ec.curve.type&&"edwards"!==this.ec.curve.type||r(e.x&&e.y,"Need both x and y coordinate"),void(this.pub=this.ec.curve.point(e.x,e.y));this.pub=this.ec.curve.decodePoint(e,t)},A.prototype.derive=function(e){return e.validate()||r(e.validate(),"public point not validated"),e.mul(this.priv).getX()},A.prototype.sign=function(e,t,n){return this.ec.sign(e,this,t,n)},A.prototype.verify=function(e,t){return this.ec.verify(e,t,this)},A.prototype.inspect=function(){return"<Key priv: "+(this.priv&&this.priv.toString(16,2))+" pub: "+(this.pub&&this.pub.inspect())+" >"}},function(e,t,n){"use strict";var a=n(7),r=n(14),A=r.assert;function i(e,t){if(e instanceof i)return e;this._importDER(e,t)||(A(e.r&&e.s,"Signature without r or s"),this.r=new a(e.r,16),this.s=new a(e.s,16),void 0===e.recoveryParam?this.recoveryParam=null:this.recoveryParam=e.recoveryParam)}function o(){this.place=0}function s(e,t){var n=e[t.place++];if(!(128&n))return n;var a=15&n;if(0===a||a>4)return!1;for(var r=0,A=0,i=t.place;A<a;A++,i++)r<<=8,r|=e[i],r>>>=0;return!(r<=127)&&(t.place=i,r)}function p(e){for(var t=0,n=e.length-1;!e[t]&&!(128&e[t+1])&&t<n;)t++;return 0===t?e:e.slice(t)}function u(e,t){if(t<128)e.push(t);else{var n=1+(Math.log(t)/Math.LN2>>>3);for(e.push(128|n);--n;)e.push(t>>>(n<<3)&255);e.push(t)}}e.exports=i,i.prototype._importDER=function(e,t){e=r.toArray(e,t);var n=new o;if(48!==e[n.place++])return!1;var A=s(e,n);if(!1===A)return!1;if(A+n.place!==e.length)return!1;if(2!==e[n.place++])return!1;var i=s(e,n);if(!1===i)return!1;var p=e.slice(n.place,i+n.place);if(n.place+=i,2!==e[n.place++])return!1;var u=s(e,n);if(!1===u)return!1;if(e.length!==u+n.place)return!1;var c=e.slice(n.place,u+n.place);if(0===p[0]){if(!(128&p[1]))return!1;p=p.slice(1)}if(0===c[0]){if(!(128&c[1]))return!1;c=c.slice(1)}return this.r=new a(p),this.s=new a(c),this.recoveryParam=null,!0},i.prototype.toDER=function(e){var t=this.r.toArray(),n=this.s.toArray();for(128&t[0]&&(t=[0].concat(t)),128&n[0]&&(n=[0].concat(n)),t=p(t),n=p(n);!(n[0]||128&n[1]);)n=n.slice(1);var a=[2];u(a,t.length),(a=a.concat(t)).push(2),u(a,n.length);var A=a.concat(n),i=[48];return u(i,A.length),i=i.concat(A),r.encode(i,e)}},function(e,t,n){"use strict";var a=n(70),r=n(69),A=n(14),i=A.assert,o=A.parseBytes,s=n(188),p=n(189);function u(e){if(i("ed25519"===e,"only tested with ed25519 so far"),!(this instanceof u))return new u(e);e=r[e].curve,this.curve=e,this.g=e.g,this.g.precompute(e.n.bitLength()+1),this.pointClass=e.point().constructor,this.encodingLength=Math.ceil(e.n.bitLength()/8),this.hash=a.sha512}e.exports=u,u.prototype.sign=function(e,t){e=o(e);var n=this.keyFromSecret(t),a=this.hashInt(n.messagePrefix(),e),r=this.g.mul(a),A=this.encodePoint(r),i=this.hashInt(A,n.pubBytes(),e).mul(n.priv()),s=a.add(i).umod(this.curve.n);return this.makeSignature({R:r,S:s,Rencoded:A})},u.prototype.verify=function(e,t,n){e=o(e),t=this.makeSignature(t);var a=this.keyFromPublic(n),r=this.hashInt(t.Rencoded(),a.pubBytes(),e),A=this.g.mul(t.S());return t.R().add(a.pub().mul(r)).eq(A)},u.prototype.hashInt=function(){for(var e=this.hash(),t=0;t<arguments.length;t++)e.update(arguments[t]);return A.intFromLE(e.digest()).umod(this.curve.n)},u.prototype.keyFromPublic=function(e){return s.fromPublic(this,e)},u.prototype.keyFromSecret=function(e){return s.fromSecret(this,e)},u.prototype.makeSignature=function(e){return e instanceof p?e:new p(this,e)},u.prototype.encodePoint=function(e){var t=e.getY().toArray("le",this.encodingLength);return t[this.encodingLength-1]|=e.getX().isOdd()?128:0,t},u.prototype.decodePoint=function(e){var t=(e=A.parseBytes(e)).length-1,n=e.slice(0,t).concat(-129&e[t]),a=0!=(128&e[t]),r=A.intFromLE(n);return this.curve.pointFromY(r,a)},u.prototype.encodeInt=function(e){return e.toArray("le",this.encodingLength)},u.prototype.decodeInt=function(e){return A.intFromLE(e)},u.prototype.isPoint=function(e){return e instanceof this.pointClass}},function(e,t,n){"use strict";var a=n(14),r=a.assert,A=a.parseBytes,i=a.cachedProperty;function o(e,t){this.eddsa=e,this._secret=A(t.secret),e.isPoint(t.pub)?this._pub=t.pub:this._pubBytes=A(t.pub)}o.fromPublic=function(e,t){return t instanceof o?t:new o(e,{pub:t})},o.fromSecret=function(e,t){return t instanceof o?t:new o(e,{secret:t})},o.prototype.secret=function(){return this._secret},i(o,"pubBytes",(function(){return this.eddsa.encodePoint(this.pub())})),i(o,"pub",(function(){return this._pubBytes?this.eddsa.decodePoint(this._pubBytes):this.eddsa.g.mul(this.priv())})),i(o,"privBytes",(function(){var e=this.eddsa,t=this.hash(),n=e.encodingLength-1,a=t.slice(0,e.encodingLength);return a[0]&=248,a[n]&=127,a[n]|=64,a})),i(o,"priv",(function(){return this.eddsa.decodeInt(this.privBytes())})),i(o,"hash",(function(){return this.eddsa.hash().update(this.secret()).digest()})),i(o,"messagePrefix",(function(){return this.hash().slice(this.eddsa.encodingLength)})),o.prototype.sign=function(e){return r(this._secret,"KeyPair can only verify"),this.eddsa.sign(e,this)},o.prototype.verify=function(e,t){return this.eddsa.verify(e,t,this)},o.prototype.getSecret=function(e){return r(this._secret,"KeyPair is public only"),a.encode(this.secret(),e)},o.prototype.getPublic=function(e){return a.encode(this.pubBytes(),e)},e.exports=o},function(e,t,n){"use strict";function a(e){return(a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}var r=n(7),A=n(14),i=A.assert,o=A.cachedProperty,s=A.parseBytes;function p(e,t){this.eddsa=e,"object"!==a(t)&&(t=s(t)),Array.isArray(t)&&(t={R:t.slice(0,e.encodingLength),S:t.slice(e.encodingLength)}),i(t.R&&t.S,"Signature without R or S"),e.isPoint(t.R)&&(this._R=t.R),t.S instanceof r&&(this._S=t.S),this._Rencoded=Array.isArray(t.R)?t.R:t.Rencoded,this._Sencoded=Array.isArray(t.S)?t.S:t.Sencoded}o(p,"S",(function(){return this.eddsa.decodeInt(this.Sencoded())})),o(p,"R",(function(){return this.eddsa.decodePoint(this.Rencoded())})),o(p,"Rencoded",(function(){return this.eddsa.encodePoint(this.R())})),o(p,"Sencoded",(function(){return this.eddsa.encodeInt(this.S())})),p.prototype.toBytes=function(){return this.Rencoded().concat(this.Sencoded())},p.prototype.toHex=function(){return A.encode(this.toBytes(),"hex").toUpperCase()},e.exports=p},function(e,t,n){var a=t;a.utils=n(18),a.common=n(42),a.sha=n(191),a.ripemd=n(195),a.hmac=n(196),a.sha1=a.sha.sha1,a.sha256=a.sha.sha256,a.sha224=a.sha.sha224,a.sha384=a.sha.sha384,a.sha512=a.sha.sha512,a.ripemd160=a.ripemd.ripemd160},function(e,t,n){"use strict";t.sha1=n(192),t.sha224=n(193),t.sha256=n(113),t.sha384=n(194),t.sha512=n(114)},function(e,t,n){"use strict";var a=n(18),r=n(42),A=n(112),i=a.rotl32,o=a.sum32,s=a.sum32_5,p=A.ft_1,u=r.BlockHash,c=[1518500249,1859775393,2400959708,3395469782];function d(){if(!(this instanceof d))return new d;u.call(this),this.h=[1732584193,4023233417,2562383102,271733878,3285377520],this.W=new Array(80)}a.inherits(d,u),e.exports=d,d.blockSize=512,d.outSize=160,d.hmacStrength=80,d.padLength=64,d.prototype._update=function(e,t){for(var n=this.W,a=0;a<16;a++)n[a]=e[t+a];for(;a<n.length;a++)n[a]=i(n[a-3]^n[a-8]^n[a-14]^n[a-16],1);var r=this.h[0],A=this.h[1],u=this.h[2],d=this.h[3],l=this.h[4];for(a=0;a<n.length;a++){var g=~~(a/20),I=s(i(r,5),p(g,A,u,d),l,n[a],c[g]);l=d,d=u,u=i(A,30),A=r,r=I}this.h[0]=o(this.h[0],r),this.h[1]=o(this.h[1],A),this.h[2]=o(this.h[2],u),this.h[3]=o(this.h[3],d),this.h[4]=o(this.h[4],l)},d.prototype._digest=function(e){return"hex"===e?a.toHex32(this.h,"big"):a.split32(this.h,"big")}},function(e,t,n){"use strict";var a=n(18),r=n(113);function A(){if(!(this instanceof A))return new A;r.call(this),this.h=[3238371032,914150663,812702999,4144912697,4290775857,1750603025,1694076839,3204075428]}a.inherits(A,r),e.exports=A,A.blockSize=512,A.outSize=224,A.hmacStrength=192,A.padLength=64,A.prototype._digest=function(e){return"hex"===e?a.toHex32(this.h.slice(0,7),"big"):a.split32(this.h.slice(0,7),"big")}},function(e,t,n){"use strict";var a=n(18),r=n(114);function A(){if(!(this instanceof A))return new A;r.call(this),this.h=[3418070365,3238371032,1654270250,914150663,2438529370,812702999,355462360,4144912697,1731405415,4290775857,2394180231,1750603025,3675008525,1694076839,1203062813,3204075428]}a.inherits(A,r),e.exports=A,A.blockSize=1024,A.outSize=384,A.hmacStrength=192,A.padLength=128,A.prototype._digest=function(e){return"hex"===e?a.toHex32(this.h.slice(0,12),"big"):a.split32(this.h.slice(0,12),"big")}},function(e,t,n){"use strict";var a=n(18),r=n(42),A=a.rotl32,i=a.sum32,o=a.sum32_3,s=a.sum32_4,p=r.BlockHash;function u(){if(!(this instanceof u))return new u;p.call(this),this.h=[1732584193,4023233417,2562383102,271733878,3285377520],this.endian="little"}function c(e,t,n,a){return e<=15?t^n^a:e<=31?t&n|~t&a:e<=47?(t|~n)^a:e<=63?t&a|n&~a:t^(n|~a)}function d(e){return e<=15?0:e<=31?1518500249:e<=47?1859775393:e<=63?2400959708:2840853838}function l(e){return e<=15?1352829926:e<=31?1548603684:e<=47?1836072691:e<=63?2053994217:0}a.inherits(u,p),t.ripemd160=u,u.blockSize=512,u.outSize=160,u.hmacStrength=192,u.padLength=64,u.prototype._update=function(e,t){for(var n=this.h[0],a=this.h[1],r=this.h[2],p=this.h[3],u=this.h[4],y=n,m=a,C=r,B=p,E=u,b=0;b<80;b++){var Q=i(A(s(n,c(b,a,r,p),e[g[b]+t],d(b)),f[b]),u);n=u,u=p,p=A(r,10),r=a,a=Q,Q=i(A(s(y,c(79-b,m,C,B),e[I[b]+t],l(b)),h[b]),E),y=E,E=B,B=A(C,10),C=m,m=Q}Q=o(this.h[1],r,B),this.h[1]=o(this.h[2],p,E),this.h[2]=o(this.h[3],u,y),this.h[3]=o(this.h[4],n,m),this.h[4]=o(this.h[0],a,C),this.h[0]=Q},u.prototype._digest=function(e){return"hex"===e?a.toHex32(this.h,"little"):a.split32(this.h,"little")};var g=[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8,3,10,14,4,9,15,8,1,2,7,0,6,13,11,5,12,1,9,11,10,0,8,12,4,13,3,7,15,14,5,6,2,4,0,5,9,7,12,2,10,14,1,3,8,11,6,15,13],I=[5,14,7,0,9,2,11,4,13,6,15,8,1,10,3,12,6,11,3,7,0,13,5,10,14,15,8,12,4,9,1,2,15,5,1,3,7,14,6,9,11,8,12,2,10,0,4,13,8,6,4,1,3,11,15,0,5,12,2,13,9,7,10,14,12,15,10,4,1,5,8,7,6,2,13,14,0,3,9,11],f=[11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8,7,6,8,13,11,9,7,15,7,12,15,9,11,7,13,12,11,13,6,7,14,9,13,15,14,8,13,6,5,12,7,5,11,12,14,15,14,15,9,8,9,14,5,6,8,6,5,12,9,15,5,11,6,8,13,12,5,12,13,14,11,8,5,6],h=[8,9,9,11,13,15,15,5,7,7,8,11,14,14,12,6,9,13,15,7,12,8,9,11,7,7,12,7,6,15,13,11,9,7,15,11,8,6,6,14,12,13,5,14,13,13,7,5,15,5,8,11,14,14,6,14,6,9,12,9,12,5,15,8,8,5,12,9,12,5,14,6,8,13,6,5,15,13,11,11]},function(e,t,n){"use strict";var a=n(18),r=n(11);function A(e,t,n){if(!(this instanceof A))return new A(e,t,n);this.Hash=e,this.blockSize=e.blockSize/8,this.outSize=e.outSize/8,this.inner=null,this.outer=null,this._init(a.toArray(t,n))}e.exports=A,A.prototype._init=function(e){e.length>this.blockSize&&(e=(new this.Hash).update(e).digest()),r(e.length<=this.blockSize);for(var t=e.length;t<this.blockSize;t++)e.push(0);for(t=0;t<e.length;t++)e[t]^=54;for(this.inner=(new this.Hash).update(e),t=0;t<e.length;t++)e[t]^=106;this.outer=(new this.Hash).update(e)},A.prototype.update=function(e,t){return this.inner.update(e,t),this},A.prototype.digest=function(e){return this.outer.update(this.inner.digest()),this.outer.digest(e)}},function(e,t,n){"use strict";var a=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}},r=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});var A=a(n(198)),i=a(n(199)),o=a(n(200)),s=n(73),p=r(n(48)),u=n(16),c=n(1),d=n(103),l=n(22),g=n(8),I=n(72);function f(e){return"string"==typeof e&&"0x"!==e.substring(0,2)&&(e="0x"+e),c.arrayify(e)}function h(e,t){for(e=String(e);e.length<t;)e="0"+e;return e}function y(e){return"string"==typeof e?g.toUtf8Bytes(e,g.UnicodeNormalizationForm.NFKC):c.arrayify(e)}function m(e,t){for(var n=e,a=t.toLowerCase().split("/"),r=0;r<a.length;r++){var A=null;for(var i in n)if(i.toLowerCase()===a[r]){A=n[i];break}if(null===A)return null;n=A}return n}t.decryptCrowdsale=function(e,t){var n=JSON.parse(e);t=y(t);var a=u.getAddress(m(n,"ethaddr")),r=f(m(n,"encseed"));if(!r||r.length%16!=0)throw new Error("invalid encseed");var i=d.pbkdf2(t,t,2e3,32,"sha256").slice(0,16),o=r.slice(0,16),p=r.slice(16),I=new A.default.ModeOfOperation.cbc(i,o),h=c.arrayify(I.decrypt(p));h=A.default.padding.pkcs7.strip(h);for(var C="",B=0;B<h.length;B++)C+=String.fromCharCode(h[B]);var E=g.toUtf8Bytes(C),b=new s.SigningKey(l.keccak256(E));if(b.address!==a)throw new Error("corrupt crowdsale wallet");return b},t.decrypt=function(e,t,n){var a=JSON.parse(e),r=y(t),o=function(e,t){var n=f(m(a,"crypto/ciphertext"));if(c.hexlify(function(e,t){return l.keccak256(c.concat([e,t]))}(e.slice(16,32),n)).substring(2)!==m(a,"crypto/mac").toLowerCase())return t(new Error("invalid password")),null;var r=function(e,t){if("aes-128-ctr"===m(a,"crypto/cipher")){var n=f(m(a,"crypto/cipherparams/iv")),r=new A.default.Counter(n),i=new A.default.ModeOfOperation.ctr(e,r);return c.arrayify(i.decrypt(t))}return null}(e.slice(0,16),n),i=e.slice(32,64);if(!r)return t(new Error("unsupported cipher")),null;var o=new s.SigningKey(r);if(a.address&&o.address!==u.getAddress(a.address))return t(new Error("address mismatch")),null;var d=m(a,"x-ethers/locale");if("0.1"===m(a,"x-ethers/version")&&(null==d||"en"===d)){var g=f(m(a,"x-ethers/mnemonicCiphertext")),I=f(m(a,"x-ethers/mnemonicCounter")),h=new A.default.Counter(I),y=new A.default.ModeOfOperation.ctr(i,h),C=m(a,"x-ethers/path")||p.defaultPath,B=c.arrayify(y.decrypt(g)),E=p.entropyToMnemonic(B),b=p.fromMnemonic(E).derivePath(C);if(b.privateKey!=c.hexlify(r))return t(new Error("mnemonic mismatch")),null;o=new s.SigningKey(b)}return o};return new Promise((function(e,t){var A=m(a,"crypto/kdf");if(A&&"string"==typeof A)if("scrypt"===A.toLowerCase()){var s=f(m(a,"crypto/kdfparams/salt")),p=parseInt(m(a,"crypto/kdfparams/n")),u=parseInt(m(a,"crypto/kdfparams/r")),l=parseInt(m(a,"crypto/kdfparams/p"));if(!p||!u||!l)return void t(new Error("unsupported key-derivation function parameters"));if(0!=(p&p-1))return void t(new Error("unsupported key-derivation function parameter value for N"));if(32!==(h=parseInt(m(a,"crypto/kdfparams/dklen"))))return void t(new Error("unsupported key-derivation derived-key length"));n&&n(0),i.default(r,s,p,u,l,64,(function(a,r,A){if(a)a.progress=r,t(a);else if(A){A=c.arrayify(A);var i=o(A,t);if(!i)return;n&&n(1),e(i)}else if(n)return n(r)}))}else if("pbkdf2"===A.toLowerCase()){s=f(m(a,"crypto/kdfparams/salt"));var g=null,I=m(a,"crypto/kdfparams/prf");if("hmac-sha256"===I)g="sha256";else{if("hmac-sha512"!==I)return void t(new Error("unsupported prf"));g="sha512"}var h,y=parseInt(m(a,"crypto/kdfparams/c"));if(32!==(h=parseInt(m(a,"crypto/kdfparams/dklen"))))return void t(new Error("unsupported key-derivation derived-key length"));var C=d.pbkdf2(r,s,y,h,g),B=o(C,t);if(!B)return;e(B)}else t(new Error("unsupported key-derivation function"));else t(new Error("unsupported key-derivation function"))}))},t.encrypt=function(e,t,n,a){"function"!=typeof n||a||(a=n,n={}),n||(n={});var r=null;if(32!==(r=s.SigningKey.isSigningKey(e)?c.arrayify(e.privateKey):c.arrayify(e)).length)throw new Error("invalid private key");var u=y(t),d=null;if(n.entropy&&(d=c.arrayify(n.entropy)),n.mnemonic)if(d){if(p.entropyToMnemonic(d)!==n.mnemonic)throw new Error("entropy and mnemonic mismatch")}else d=c.arrayify(p.mnemonicToEntropy(n.mnemonic,n.wordlist));var g=n.path;d&&!g&&(g=p.defaultPath);var f=n.client;f||(f="ethers.js");var m=null;m=n.salt?c.arrayify(n.salt):I.randomBytes(32);var C=null;if(n.iv){if(16!==(C=c.arrayify(n.iv)).length)throw new Error("invalid iv")}else C=I.randomBytes(16);var B=null;if(n.uuid){if(16!==(B=c.arrayify(n.uuid)).length)throw new Error("invalid uuid")}else B=I.randomBytes(16);var E=1<<17,b=8,Q=1;return n.scrypt&&(n.scrypt.N&&(E=n.scrypt.N),n.scrypt.r&&(b=n.scrypt.r),n.scrypt.p&&(Q=n.scrypt.p)),new Promise((function(e,t){a&&a(0),i.default(u,m,E,b,Q,64,(function(i,p,u){if(i)i.progress=p,t(i);else if(u){var y=(u=c.arrayify(u)).slice(0,16),v=u.slice(16,32),w=u.slice(32,64),D=new s.SigningKey(r).address,M=new A.default.Counter(C),S=new A.default.ModeOfOperation.ctr(y,M),k=c.arrayify(S.encrypt(r)),x=l.keccak256(c.concat([v,k])),R={address:D.substring(2).toLowerCase(),id:o.default.v4({random:B}),version:3,Crypto:{cipher:"aes-128-ctr",cipherparams:{iv:c.hexlify(C).substring(2)},ciphertext:c.hexlify(k).substring(2),kdf:"scrypt",kdfparams:{salt:c.hexlify(m).substring(2),n:E,dklen:32,p:Q,r:b},mac:x.substring(2)}};if(d){var F=I.randomBytes(16),N=new A.default.Counter(F),_=new A.default.ModeOfOperation.ctr(w,N),T=c.arrayify(_.encrypt(d)),H=new Date,L=H.getUTCFullYear()+"-"+h(H.getUTCMonth()+1,2)+"-"+h(H.getUTCDate(),2)+"T"+h(H.getUTCHours(),2)+"-"+h(H.getUTCMinutes(),2)+"-"+h(H.getUTCSeconds(),2)+".0Z";R["x-ethers"]={client:f,gethFilename:"UTC--"+L+"--"+R.address,mnemonicCounter:c.hexlify(F).substring(2),mnemonicCiphertext:c.hexlify(T).substring(2),path:g,version:"0.1"},n.wordlist&&"string"==typeof n.wordlist.locale&&(R["x-ethers"].locale=n.wordlist.locale)}a&&a(1),e(JSON.stringify(R))}else if(a)return a(p)}))}))}},function(e,t,n){"use strict";!function(t){function n(e){return parseInt(e)===e}function a(e){if(!n(e.length))return!1;for(var t=0;t<e.length;t++)if(!n(e[t])||e[t]<0||e[t]>255)return!1;return!0}function r(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(!a(e))throw new Error("Array contains invalid value: "+e);return new Uint8Array(e)}if(n(e.length)&&a(e))return new Uint8Array(e);throw new Error("unsupported array-like object")}function A(e){return new Uint8Array(e)}function i(e,t,n,a,r){null==a&&null==r||(e=e.slice?e.slice(a,r):Array.prototype.slice.call(e,a,r)),t.set(e,n)}var o,s={toBytes:function(e){var t=[],n=0;for(e=encodeURI(e);n<e.length;){var a=e.charCodeAt(n++);37===a?(t.push(parseInt(e.substr(n,2),16)),n+=2):t.push(a)}return r(t)},fromBytes:function(e){for(var t=[],n=0;n<e.length;){var a=e[n];a<128?(t.push(String.fromCharCode(a)),n++):a>191&&a<224?(t.push(String.fromCharCode((31&a)<<6|63&e[n+1])),n+=2):(t.push(String.fromCharCode((15&a)<<12|(63&e[n+1])<<6|63&e[n+2])),n+=3)}return t.join("")}},p=(o="0123456789abcdef",{toBytes:function(e){for(var t=[],n=0;n<e.length;n+=2)t.push(parseInt(e.substr(n,2),16));return t},fromBytes:function(e){for(var t=[],n=0;n<e.length;n++){var a=e[n];t.push(o[(240&a)>>4]+o[15&a])}return t.join("")}}),u={16:10,24:12,32:14},c=[1,2,4,8,16,32,64,128,27,54,108,216,171,77,154,47,94,188,99,198,151,53,106,212,179,125,250,239,197,145],d=[99,124,119,123,242,107,111,197,48,1,103,43,254,215,171,118,202,130,201,125,250,89,71,240,173,212,162,175,156,164,114,192,183,253,147,38,54,63,247,204,52,165,229,241,113,216,49,21,4,199,35,195,24,150,5,154,7,18,128,226,235,39,178,117,9,131,44,26,27,110,90,160,82,59,214,179,41,227,47,132,83,209,0,237,32,252,177,91,106,203,190,57,74,76,88,207,208,239,170,251,67,77,51,133,69,249,2,127,80,60,159,168,81,163,64,143,146,157,56,245,188,182,218,33,16,255,243,210,205,12,19,236,95,151,68,23,196,167,126,61,100,93,25,115,96,129,79,220,34,42,144,136,70,238,184,20,222,94,11,219,224,50,58,10,73,6,36,92,194,211,172,98,145,149,228,121,231,200,55,109,141,213,78,169,108,86,244,234,101,122,174,8,186,120,37,46,28,166,180,198,232,221,116,31,75,189,139,138,112,62,181,102,72,3,246,14,97,53,87,185,134,193,29,158,225,248,152,17,105,217,142,148,155,30,135,233,206,85,40,223,140,161,137,13,191,230,66,104,65,153,45,15,176,84,187,22],l=[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],g=[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],I=[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],f=[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],h=[1667474886,2088535288,2004326894,2071694838,4075949567,1802223062,1869591006,3318043793,808472672,16843522,1734846926,724270422,4278065639,3621216949,2880169549,1987484396,3402253711,2189597983,3385409673,2105378810,4210693615,1499065266,1195886990,4042263547,2913856577,3570689971,2728590687,2947541573,2627518243,2762274643,1920112356,3233831835,3082273397,4261223649,2475929149,640051788,909531756,1061110142,4160160501,3435941763,875846760,2779116625,3857003729,4059105529,1903268834,3638064043,825316194,353713962,67374088,3351728789,589522246,3284360861,404236336,2526454071,84217610,2593830191,117901582,303183396,2155911963,3806477791,3958056653,656894286,2998062463,1970642922,151591698,2206440989,741110872,437923380,454765878,1852748508,1515908788,2694904667,1381168804,993742198,3604373943,3014905469,690584402,3823320797,791638366,2223281939,1398011302,3520161977,0,3991743681,538992704,4244381667,2981218425,1532751286,1785380564,3419096717,3200178535,960056178,1246420628,1280103576,1482221744,3486468741,3503319995,4025428677,2863326543,4227536621,1128514950,1296947098,859002214,2240123921,1162203018,4193849577,33687044,2139062782,1347481760,1010582648,2678045221,2829640523,1364325282,2745433693,1077985408,2408548869,2459086143,2644360225,943212656,4126475505,3166494563,3065430391,3671750063,555836226,269496352,4294908645,4092792573,3537006015,3452783745,202118168,320025894,3974901699,1600119230,2543297077,1145359496,387397934,3301201811,2812801621,2122220284,1027426170,1684319432,1566435258,421079858,1936954854,1616945344,2172753945,1330631070,3705438115,572679748,707427924,2425400123,2290647819,1179044492,4008585671,3099120491,336870440,3739122087,1583276732,185277718,3688593069,3772791771,842159716,976899700,168435220,1229577106,101059084,606366792,1549591736,3267517855,3553849021,2897014595,1650632388,2442242105,2509612081,3840161747,2038008818,3890688725,3368567691,926374254,1835907034,2374863873,3587531953,1313788572,2846482505,1819063512,1448540844,4109633523,3941213647,1701162954,2054852340,2930698567,134748176,3132806511,2021165296,623210314,774795868,471606328,2795958615,3031746419,3334885783,3907527627,3722280097,1953799400,522133822,1263263126,3183336545,2341176845,2324333839,1886425312,1044267644,3048588401,1718004428,1212733584,50529542,4143317495,235803164,1633788866,892690282,1465383342,3115962473,2256965911,3250673817,488449850,2661202215,3789633753,4177007595,2560144171,286339874,1768537042,3654906025,2391705863,2492770099,2610673197,505291324,2273808917,3924369609,3469625735,1431699370,673740880,3755965093,2358021891,2711746649,2307489801,218961690,3217021541,3873845719,1111672452,1751693520,1094828930,2576986153,757954394,252645662,2964376443,1414855848,3149649517,370555436],y=[1374988112,2118214995,437757123,975658646,1001089995,530400753,2902087851,1273168787,540080725,2910219766,2295101073,4110568485,1340463100,3307916247,641025152,3043140495,3736164937,632953703,1172967064,1576976609,3274667266,2169303058,2370213795,1809054150,59727847,361929877,3211623147,2505202138,3569255213,1484005843,1239443753,2395588676,1975683434,4102977912,2572697195,666464733,3202437046,4035489047,3374361702,2110667444,1675577880,3843699074,2538681184,1649639237,2976151520,3144396420,4269907996,4178062228,1883793496,2403728665,2497604743,1383856311,2876494627,1917518562,3810496343,1716890410,3001755655,800440835,2261089178,3543599269,807962610,599762354,33778362,3977675356,2328828971,2809771154,4077384432,1315562145,1708848333,101039829,3509871135,3299278474,875451293,2733856160,92987698,2767645557,193195065,1080094634,1584504582,3178106961,1042385657,2531067453,3711829422,1306967366,2438237621,1908694277,67556463,1615861247,429456164,3602770327,2302690252,1742315127,2968011453,126454664,3877198648,2043211483,2709260871,2084704233,4169408201,0,159417987,841739592,504459436,1817866830,4245618683,260388950,1034867998,908933415,168810852,1750902305,2606453969,607530554,202008497,2472011535,3035535058,463180190,2160117071,1641816226,1517767529,470948374,3801332234,3231722213,1008918595,303765277,235474187,4069246893,766945465,337553864,1475418501,2943682380,4003061179,2743034109,4144047775,1551037884,1147550661,1543208500,2336434550,3408119516,3069049960,3102011747,3610369226,1113818384,328671808,2227573024,2236228733,3535486456,2935566865,3341394285,496906059,3702665459,226906860,2009195472,733156972,2842737049,294930682,1206477858,2835123396,2700099354,1451044056,573804783,2269728455,3644379585,2362090238,2564033334,2801107407,2776292904,3669462566,1068351396,742039012,1350078989,1784663195,1417561698,4136440770,2430122216,775550814,2193862645,2673705150,1775276924,1876241833,3475313331,3366754619,270040487,3902563182,3678124923,3441850377,1851332852,3969562369,2203032232,3868552805,2868897406,566021896,4011190502,3135740889,1248802510,3936291284,699432150,832877231,708780849,3332740144,899835584,1951317047,4236429990,3767586992,866637845,4043610186,1106041591,2144161806,395441711,1984812685,1139781709,3433712980,3835036895,2664543715,1282050075,3240894392,1181045119,2640243204,25965917,4203181171,4211818798,3009879386,2463879762,3910161971,1842759443,2597806476,933301370,1509430414,3943906441,3467192302,3076639029,3776767469,2051518780,2631065433,1441952575,404016761,1942435775,1408749034,1610459739,3745345300,2017778566,3400528769,3110650942,941896748,3265478751,371049330,3168937228,675039627,4279080257,967311729,135050206,3635733660,1683407248,2076935265,3576870512,1215061108,3501741890],m=[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],C=[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],B=[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],b=[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],Q=[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],v=[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 w(e){for(var t=[],n=0;n<e.length;n+=4)t.push(e[n]<<24|e[n+1]<<16|e[n+2]<<8|e[n+3]);return t}var D=function e(t){if(!(this instanceof e))throw Error("AES must be instanitated with `new`");Object.defineProperty(this,"key",{value:r(t,!0)}),this._prepare()};D.prototype._prepare=function(){var e=u[this.key.length];if(null==e)throw new Error("invalid key size (must be 16, 24 or 32 bytes)");this._Ke=[],this._Kd=[];for(var t=0;t<=e;t++)this._Ke.push([0,0,0,0]),this._Kd.push([0,0,0,0]);var n,a=4*(e+1),r=this.key.length/4,A=w(this.key);for(t=0;t<r;t++)n=t>>2,this._Ke[n][t%4]=A[t],this._Kd[e-n][t%4]=A[t];for(var i,o=0,s=r;s<a;){if(i=A[r-1],A[0]^=d[i>>16&255]<<24^d[i>>8&255]<<16^d[255&i]<<8^d[i>>24&255]^c[o]<<24,o+=1,8!=r)for(t=1;t<r;t++)A[t]^=A[t-1];else{for(t=1;t<r/2;t++)A[t]^=A[t-1];i=A[r/2-1],A[r/2]^=d[255&i]^d[i>>8&255]<<8^d[i>>16&255]<<16^d[i>>24&255]<<24;for(t=r/2+1;t<r;t++)A[t]^=A[t-1]}for(t=0;t<r&&s<a;)p=s>>2,l=s%4,this._Ke[p][l]=A[t],this._Kd[e-p][l]=A[t++],s++}for(var p=1;p<e;p++)for(var l=0;l<4;l++)i=this._Kd[p][l],this._Kd[p][l]=E[i>>24&255]^b[i>>16&255]^Q[i>>8&255]^v[255&i]},D.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,n=[0,0,0,0],a=w(e),r=0;r<4;r++)a[r]^=this._Ke[0][r];for(var i=1;i<t;i++){for(r=0;r<4;r++)n[r]=g[a[r]>>24&255]^I[a[(r+1)%4]>>16&255]^f[a[(r+2)%4]>>8&255]^h[255&a[(r+3)%4]]^this._Ke[i][r];a=n.slice()}var o,s=A(16);for(r=0;r<4;r++)o=this._Ke[t][r],s[4*r]=255&(d[a[r]>>24&255]^o>>24),s[4*r+1]=255&(d[a[(r+1)%4]>>16&255]^o>>16),s[4*r+2]=255&(d[a[(r+2)%4]>>8&255]^o>>8),s[4*r+3]=255&(d[255&a[(r+3)%4]]^o);return s},D.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,n=[0,0,0,0],a=w(e),r=0;r<4;r++)a[r]^=this._Kd[0][r];for(var i=1;i<t;i++){for(r=0;r<4;r++)n[r]=y[a[r]>>24&255]^m[a[(r+3)%4]>>16&255]^C[a[(r+2)%4]>>8&255]^B[255&a[(r+1)%4]]^this._Kd[i][r];a=n.slice()}var o,s=A(16);for(r=0;r<4;r++)o=this._Kd[t][r],s[4*r]=255&(l[a[r]>>24&255]^o>>24),s[4*r+1]=255&(l[a[(r+3)%4]>>16&255]^o>>16),s[4*r+2]=255&(l[a[(r+2)%4]>>8&255]^o>>8),s[4*r+3]=255&(l[255&a[(r+1)%4]]^o);return s};var M=function e(t){if(!(this instanceof e))throw Error("AES must be instanitated with `new`");this.description="Electronic Code Block",this.name="ecb",this._aes=new D(t)};M.prototype.encrypt=function(e){if((e=r(e)).length%16!=0)throw new Error("invalid plaintext size (must be multiple of 16 bytes)");for(var t=A(e.length),n=A(16),a=0;a<e.length;a+=16)i(e,n,0,a,a+16),i(n=this._aes.encrypt(n),t,a);return t},M.prototype.decrypt=function(e){if((e=r(e)).length%16!=0)throw new Error("invalid ciphertext size (must be multiple of 16 bytes)");for(var t=A(e.length),n=A(16),a=0;a<e.length;a+=16)i(e,n,0,a,a+16),i(n=this._aes.decrypt(n),t,a);return t};var S=function e(t,n){if(!(this instanceof e))throw Error("AES must be instanitated with `new`");if(this.description="Cipher Block Chaining",this.name="cbc",n){if(16!=n.length)throw new Error("invalid initialation vector size (must be 16 bytes)")}else n=A(16);this._lastCipherblock=r(n,!0),this._aes=new D(t)};S.prototype.encrypt=function(e){if((e=r(e)).length%16!=0)throw new Error("invalid plaintext size (must be multiple of 16 bytes)");for(var t=A(e.length),n=A(16),a=0;a<e.length;a+=16){i(e,n,0,a,a+16);for(var o=0;o<16;o++)n[o]^=this._lastCipherblock[o];this._lastCipherblock=this._aes.encrypt(n),i(this._lastCipherblock,t,a)}return t},S.prototype.decrypt=function(e){if((e=r(e)).length%16!=0)throw new Error("invalid ciphertext size (must be multiple of 16 bytes)");for(var t=A(e.length),n=A(16),a=0;a<e.length;a+=16){i(e,n,0,a,a+16),n=this._aes.decrypt(n);for(var o=0;o<16;o++)t[a+o]=n[o]^this._lastCipherblock[o];i(e,this._lastCipherblock,0,a,a+16)}return t};var k=function e(t,n,a){if(!(this instanceof e))throw Error("AES must be instanitated with `new`");if(this.description="Cipher Feedback",this.name="cfb",n){if(16!=n.length)throw new Error("invalid initialation vector size (must be 16 size)")}else n=A(16);a||(a=1),this.segmentSize=a,this._shiftRegister=r(n,!0),this._aes=new D(t)};k.prototype.encrypt=function(e){if(e.length%this.segmentSize!=0)throw new Error("invalid plaintext size (must be segmentSize bytes)");for(var t,n=r(e,!0),a=0;a<n.length;a+=this.segmentSize){t=this._aes.encrypt(this._shiftRegister);for(var A=0;A<this.segmentSize;A++)n[a+A]^=t[A];i(this._shiftRegister,this._shiftRegister,0,this.segmentSize),i(n,this._shiftRegister,16-this.segmentSize,a,a+this.segmentSize)}return n},k.prototype.decrypt=function(e){if(e.length%this.segmentSize!=0)throw new Error("invalid ciphertext size (must be segmentSize bytes)");for(var t,n=r(e,!0),a=0;a<n.length;a+=this.segmentSize){t=this._aes.encrypt(this._shiftRegister);for(var A=0;A<this.segmentSize;A++)n[a+A]^=t[A];i(this._shiftRegister,this._shiftRegister,0,this.segmentSize),i(e,this._shiftRegister,16-this.segmentSize,a,a+this.segmentSize)}return n};var x=function e(t,n){if(!(this instanceof e))throw Error("AES must be instanitated with `new`");if(this.description="Output Feedback",this.name="ofb",n){if(16!=n.length)throw new Error("invalid initialation vector size (must be 16 bytes)")}else n=A(16);this._lastPrecipher=r(n,!0),this._lastPrecipherIndex=16,this._aes=new D(t)};x.prototype.encrypt=function(e){for(var t=r(e,!0),n=0;n<t.length;n++)16===this._lastPrecipherIndex&&(this._lastPrecipher=this._aes.encrypt(this._lastPrecipher),this._lastPrecipherIndex=0),t[n]^=this._lastPrecipher[this._lastPrecipherIndex++];return t},x.prototype.decrypt=x.prototype.encrypt;var R=function e(t){if(!(this instanceof e))throw Error("Counter must be instanitated with `new`");0===t||t||(t=1),"number"==typeof t?(this._counter=A(16),this.setValue(t)):this.setBytes(t)};R.prototype.setValue=function(e){if("number"!=typeof e||parseInt(e)!=e)throw new Error("invalid counter value (must be an integer)");for(var t=15;t>=0;--t)this._counter[t]=e%256,e>>=8},R.prototype.setBytes=function(e){if(16!=(e=r(e,!0)).length)throw new Error("invalid counter bytes size (must be 16 bytes)");this._counter=e},R.prototype.increment=function(){for(var e=15;e>=0;e--){if(255!==this._counter[e]){this._counter[e]++;break}this._counter[e]=0}};var F=function e(t,n){if(!(this instanceof e))throw Error("AES must be instanitated with `new`");this.description="Counter",this.name="ctr",n instanceof R||(n=new R(n)),this._counter=n,this._remainingCounter=null,this._remainingCounterIndex=16,this._aes=new D(t)};F.prototype.encrypt=function(e){for(var t=r(e,!0),n=0;n<t.length;n++)16===this._remainingCounterIndex&&(this._remainingCounter=this._aes.encrypt(this._counter._counter),this._remainingCounterIndex=0,this._counter.increment()),t[n]^=this._remainingCounter[this._remainingCounterIndex++];return t},F.prototype.decrypt=F.prototype.encrypt;var N={AES:D,Counter:R,ModeOfOperation:{ecb:M,cbc:S,cfb:k,ofb:x,ctr:F},utils:{hex:p,utf8:s},padding:{pkcs7:{pad:function(e){var t=16-(e=r(e,!0)).length%16,n=A(e.length+t);i(e,n);for(var a=e.length;a<n.length;a++)n[a]=t;return n},strip:function(e){if((e=r(e,!0)).length<16)throw new Error("PKCS#7 invalid length");var t=e[e.length-1];if(t>16)throw new Error("PKCS#7 padding byte out of range");for(var n=e.length-t,a=0;a<t;a++)if(e[n+a]!==t)throw new Error("PKCS#7 invalid padding byte");var o=A(n);return i(e,o,0,0,n),o}}},_arrayTest:{coerceArray:r,createArray:A,copyArray:i}};e.exports=N}()},function(e,t,n){"use strict";!function(t){function n(e){var t=[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],n=1779033703,a=3144134277,r=1013904242,A=2773480762,i=1359893119,o=2600822924,s=528734635,p=1541459225,u=new Array(64);function c(e){for(var c=0,d=e.length;d>=64;){var l,g,I,f,h,y=n,m=a,C=r,B=A,E=i,b=o,Q=s,v=p;for(g=0;g<16;g++)I=c+4*g,u[g]=(255&e[I])<<24|(255&e[I+1])<<16|(255&e[I+2])<<8|255&e[I+3];for(g=16;g<64;g++)f=((l=u[g-2])>>>17|l<<15)^(l>>>19|l<<13)^l>>>10,h=((l=u[g-15])>>>7|l<<25)^(l>>>18|l<<14)^l>>>3,u[g]=(f+u[g-7]|0)+(h+u[g-16]|0)|0;for(g=0;g<64;g++)f=(((E>>>6|E<<26)^(E>>>11|E<<21)^(E>>>25|E<<7))+(E&b^~E&Q)|0)+(v+(t[g]+u[g]|0)|0)|0,h=((y>>>2|y<<30)^(y>>>13|y<<19)^(y>>>22|y<<10))+(y&m^y&C^m&C)|0,v=Q,Q=b,b=E,E=B+f|0,B=C,C=m,m=y,y=f+h|0;n=n+y|0,a=a+m|0,r=r+C|0,A=A+B|0,i=i+E|0,o=o+b|0,s=s+Q|0,p=p+v|0,c+=64,d-=64}}c(e);var d,l=e.length%64,g=e.length/536870912|0,I=e.length<<3,f=l<56?56:120,h=e.slice(e.length-l,e.length);for(h.push(128),d=l+1;d<f;d++)h.push(0);return h.push(g>>>24&255),h.push(g>>>16&255),h.push(g>>>8&255),h.push(g>>>0&255),h.push(I>>>24&255),h.push(I>>>16&255),h.push(I>>>8&255),h.push(I>>>0&255),c(h),[n>>>24&255,n>>>16&255,n>>>8&255,n>>>0&255,a>>>24&255,a>>>16&255,a>>>8&255,a>>>0&255,r>>>24&255,r>>>16&255,r>>>8&255,r>>>0&255,A>>>24&255,A>>>16&255,A>>>8&255,A>>>0&255,i>>>24&255,i>>>16&255,i>>>8&255,i>>>0&255,o>>>24&255,o>>>16&255,o>>>8&255,o>>>0&255,s>>>24&255,s>>>16&255,s>>>8&255,s>>>0&255,p>>>24&255,p>>>16&255,p>>>8&255,p>>>0&255]}function a(e,t,a){var r;e=e.length<=64?e:n(e);var A=64+t.length+4,i=new Array(A),o=new Array(64),s=[];for(r=0;r<64;r++)i[r]=54;for(r=0;r<e.length;r++)i[r]^=e[r];for(r=0;r<t.length;r++)i[64+r]=t[r];for(r=A-4;r<A;r++)i[r]=0;for(r=0;r<64;r++)o[r]=92;for(r=0;r<e.length;r++)o[r]^=e[r];function p(){for(var e=A-1;e>=A-4;e--){if(i[e]++,i[e]<=255)return;i[e]=0}}for(;a>=32;)p(),s=s.concat(n(o.concat(n(i)))),a-=32;return a>0&&(p(),s=s.concat(n(o.concat(n(i))).slice(0,a))),s}function r(e,t,n,a,r){var A;for(s(e,16*(2*n-1),r,0,16),A=0;A<2*n;A++)o(e,16*A,r,16),i(r,a),s(r,0,e,t+16*A,16);for(A=0;A<n;A++)s(e,t+2*A*16,e,16*A,16);for(A=0;A<n;A++)s(e,t+16*(2*A+1),e,16*(A+n),16)}function A(e,t){return e<<t|e>>>32-t}function i(e,t){s(e,0,t,0,16);for(var n=8;n>0;n-=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(n=0;n<16;++n)e[n]+=t[n]}function o(e,t,n,a){for(var r=0;r<a;r++)n[r]^=e[t+r]}function s(e,t,n,a,r){for(;r--;)n[a++]=e[t++]}function p(e){if(!e||"number"!=typeof e.length)return!1;for(var t=0;t<e.length;t++){if("number"!=typeof e[t])return!1;var n=parseInt(e[t]);if(n!=e[t]||n<0||n>=256)return!1}return!0}function u(e,t){var n=parseInt(e);if(e!=n)throw new Error("invalid "+t);return n}e.exports=function(e,t,n,A,i,c,d){if(!d)throw new Error("missing callback");if(n=u(n,"N"),A=u(A,"r"),i=u(i,"p"),c=u(c,"dkLen"),0===n||0!=(n&n-1))throw new Error("N must be power of 2");if(n>2147483647/128/A)throw new Error("N too large");if(A>2147483647/128/i)throw new Error("r too large");if(!p(e))throw new Error("password must be an array or buffer");if(e=Array.prototype.slice.call(e),!p(t))throw new Error("salt must be an array or buffer");t=Array.prototype.slice.call(t);for(var l=a(e,t,128*i*A),g=new Uint32Array(32*i*A),I=0;I<g.length;I++){var f=4*I;g[I]=(255&l[f+3])<<24|(255&l[f+2])<<16|(255&l[f+1])<<8|(255&l[f+0])<<0}var h,y,m=new Uint32Array(64*A),C=new Uint32Array(32*A*n),B=32*A,E=new Uint32Array(16),b=new Uint32Array(16),Q=i*n*2,v=0,w=null,D=!1,M=0,S=0,k=parseInt(1e3/A),x="undefined"!=typeof setImmediate?setImmediate:setTimeout;!function t(){if(D)return d(new Error("cancelled"),v/Q);switch(M){case 0:s(g,y=32*S*A,m,0,B),M=1,h=0;case 1:(u=n-h)>k&&(u=k);for(var p=0;p<u;p++)s(m,0,C,(h+p)*B,B),r(m,B,A,E,b);if(h+=u,v+=u,(I=parseInt(1e3*v/Q))!==w){if(D=d(null,v/Q))break;w=I}if(h<n)break;h=0,M=2;case 2:var u,I;(u=n-h)>k&&(u=k);for(p=0;p<u;p++){var f=m[16*(2*A-1)]&n-1;o(C,f*B,m,B),r(m,B,A,E,b)}if(h+=u,v+=u,(I=parseInt(1e3*v/Q))!==w){if(D=d(null,v/Q))break;w=I}if(h<n)break;if(s(m,0,g,y,B),++S<i){M=0;break}l=[];for(p=0;p<g.length;p++)l.push(g[p]>>0&255),l.push(g[p]>>8&255),l.push(g[p]>>16&255),l.push(g[p]>>24&255);var R=a(e,l,c);return d(null,1,R)}x(t)}()}}()},function(e,t,n){for(var a=n(201),r=[],A={},i=0;i<256;i++)r[i]=(i+256).toString(16).substr(1),A[r[i]]=i;function o(e,t){var n=t||0,a=r;return a[e[n++]]+a[e[n++]]+a[e[n++]]+a[e[n++]]+"-"+a[e[n++]]+a[e[n++]]+"-"+a[e[n++]]+a[e[n++]]+"-"+a[e[n++]]+a[e[n++]]+"-"+a[e[n++]]+a[e[n++]]+a[e[n++]]+a[e[n++]]+a[e[n++]]+a[e[n++]]}var s=a(),p=[1|s[0],s[1],s[2],s[3],s[4],s[5]],u=16383&(s[6]<<8|s[7]),c=0,d=0;function l(e,t,n){var r=t&&n||0;"string"==typeof e&&(t="binary"==e?new Array(16):null,e=null);var A=(e=e||{}).random||(e.rng||a)();if(A[6]=15&A[6]|64,A[8]=63&A[8]|128,t)for(var i=0;i<16;i++)t[r+i]=A[i];return t||o(A)}var g=l;g.v1=function(e,t,n){var a=t&&n||0,r=t||[],A=void 0!==(e=e||{}).clockseq?e.clockseq:u,i=void 0!==e.msecs?e.msecs:(new Date).getTime(),s=void 0!==e.nsecs?e.nsecs:d+1,l=i-c+(s-d)/1e4;if(l<0&&void 0===e.clockseq&&(A=A+1&16383),(l<0||i>c)&&void 0===e.nsecs&&(s=0),s>=1e4)throw new Error("uuid.v1(): Can't create more than 10M uuids/sec");c=i,d=s,u=A;var g=(1e4*(268435455&(i+=122192928e5))+s)%4294967296;r[a++]=g>>>24&255,r[a++]=g>>>16&255,r[a++]=g>>>8&255,r[a++]=255&g;var I=i/4294967296*1e4&268435455;r[a++]=I>>>8&255,r[a++]=255&I,r[a++]=I>>>24&15|16,r[a++]=I>>>16&255,r[a++]=A>>>8|128,r[a++]=255&A;for(var f=e.node||p,h=0;h<6;h++)r[a+h]=f[h];return t||o(r)},g.v4=l,g.parse=function(e,t,n){var a=t&&n||0,r=0;for(t=t||[],e.toLowerCase().replace(/[0-9a-f]{2}/g,(function(e){r<16&&(t[a+r++]=A[e])}));r<16;)t[a+r++]=0;return t},g.unparse=o,e.exports=g},function(e,t,n){var a=n(2).randomBytes;e.exports=function(){return a(16)}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var a=n(40);t.Provider=a.Provider;var r=n(53);t.BaseProvider=r.BaseProvider;var A=n(205);t.EtherscanProvider=A.EtherscanProvider;var i=n(206);t.FallbackProvider=i.FallbackProvider;var o=n(207);t.IpcProvider=o.IpcProvider;var s=n(209);t.InfuraProvider=s.InfuraProvider;var p=n(56);t.JsonRpcProvider=p.JsonRpcProvider,t.JsonRpcSigner=p.JsonRpcSigner;var u=n(210);t.Web3Provider=u.Web3Provider},function(e,t,n){
|
|
66
66
|
/**
|
|
67
67
|
* Wrapper for built-in http.js to emulate the browser XMLHttpRequest object.
|
|
68
68
|
*
|