!function(e){if("object"==typeof exports&&"undefined"!=typeof module)module.exports=e();else if("function"==typeof define&&define.amd)define([],e);else{("undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:this).internal=e()}}(function(){var define,module,exports;return function e(t,r,i){function n(o,s){if(!r[o]){if(!t[o]){var f="function"==typeof require&&require;if(!s&&f)return f(o,!0);if(a)return a(o,!0);var c=new Error("Cannot find module '"+o+"'");throw c.code="MODULE_NOT_FOUND",c}var u=r[o]={exports:{}};t[o][0].call(u.exports,function(e){return n(t[o][1][e]||e)},u,u.exports,e,t,r,i)}return r[o].exports}for(var a="function"==typeof require&&require,o=0;o<i.length;o++)n(i[o]);return n}({1:[function(e,t,r){var i="qpzry9x8gf2tvdw0s3jn54khce6mua7l",n=[996825010,642813549,513874426,1027748829,705979059];function a(e){for(var t=1,r=0;r<e.length;++r){var i=t>>25;t=(33554431&t)<<5^e[r];for(var a=0;a<5;++a)i>>a&1&&(t^=n[a])}return t}function o(e){var t,r=[];for(t=0;t<e.length;++t)r.push(e.charCodeAt(t)>>5);for(r.push(0),t=0;t<e.length;++t)r.push(31&e.charCodeAt(t));return r}t.exports={decode:function(e){var t,r=!1,n=!1;for(t=0;t<e.length;++t){if(e.charCodeAt(t)<33||e.charCodeAt(t)>126)return null;e.charCodeAt(t)>=97&&e.charCodeAt(t)<=122&&(r=!0),e.charCodeAt(t)>=65&&e.charCodeAt(t)<=90&&(n=!0)}if(r&&n)return null;var s=(e=e.toLowerCase()).lastIndexOf("1");if(s<1||s+7>e.length||e.length>90)return null;var f=e.substring(0,s),c=[];for(t=s+1;t<e.length;++t){var u=i.indexOf(e.charAt(t));if(-1===u)return null;c.push(u)}if(!function(e,t){return 1===a(o(e).concat(t))}(f,c))return null;return{hrp:f,data:c.slice(0,c.length-6)}},encode:function(e,t){for(var r=t.concat(function(e,t){for(var r=1^a(o(e).concat(t).concat([0,0,0,0,0,0])),i=[],n=0;n<6;++n)i.push(r>>5*(5-n)&31);return i}(e,t)),n=e+"1",s=0;s<r.length;++s)n+=i.charAt(r[s]);return n}}},{}],2:[function(e,t,r){var i=e("./bech32");function n(e,t,r,i){for(var n=0,a=0,o=[],s=(1<<r)-1,f=0;f<e.length;++f){var c=e[f];if(c<0||c>>t!=0)return null;for(n=n<<t|c,a+=t;a>=r;)a-=r,o.push(n>>a&s)}if(i)a>0&&o.push(n<<r-a&s);else if(a>=t||n<<r-a&s)return null;return o}function a(e,t){var r=i.decode(t);if(null===r||r.hrp!==e||r.data.length<1||r.data[0]>16)return null;var a=n(r.data.slice(1),5,8,!1);return null===a||a.length<2||a.length>40?null:0===r.data[0]&&20!==a.length&&32!==a.length?null:{version:r.data[0],program:a}}t.exports={encode:function(e,t,r){var o=i.encode(e,[t].concat(n(r,8,5,!0)));if(null===a(e,o))return null;return o},decode:a}},{"./bech32":1}],3:[function(e,t,r){var i=e("base-x")("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz");t.exports={encode:i.encode,decode:i.decode}},{"base-x":4}],4:[function(e,t,r){t.exports=function(e){for(var t={},r=e.length,i=e.charAt(0),n=0;n<e.length;n++)t[e.charAt(n)]=n;return{encode:function(t){if(0===t.length)return"";for(var i=[0],n=0;n<t.length;++n){for(var a=0,o=t[n];a<i.length;++a)o+=i[a]<<8,i[a]=o%r,o=o/r|0;for(;o>0;)i.push(o%r),o=o/r|0}for(var s=0;0===t[s]&&s<t.length-1;++s)i.push(0);for(var f=0,c=i.length-1;f<=c;++f,--c){var u=e[i[f]];i[f]=e[i[c]],i[c]=u}return i.join("")},decode:function(e){if(0===e.length)return[];for(var n=[0],a=0;a<e.length;a++){var o=t[e[a]];if(void 0===o)throw new Error("Non-base"+r+" character");for(var s=0,f=o;s<n.length;++s)f+=n[s]*r,n[s]=255&f,f>>=8;for(;f>0;)n.push(255&f),f>>=8}for(var c=0;e[c]===i&&c<e.length-1;++c)n.push(0);return n.reverse()}}}},{}],5:[function(e,t,r){(function(e){var r="qpzry9x8gf2tvdw0s3jn54khce6mua7l",i=function(e,t,r){for(e=e.toString(r);e.length<t;)e="0"+e;return e},n=function(e){for(var t,r=[],n=[];e.length>5;)r.push(e.slice(0,5)),e=e.slice(5);for(r.push(e),t=i(parseInt(e.toString("hex"),16),8*e.length,2);t.length%5;)t+="0";return r[r.length-1]=t,r.forEach(function(e,t){var a=e;for(t!==r.length-1&&(a=i(parseInt(e.toString("hex"),16),8*e.length,2));a.length;)n.push(parseInt(a.slice(0,5),2)),a=a.slice(5)}),n},a=function(e,t,r){var n,a,o,s;return t=i(t,40,2),"string"!=typeof e&&(e=i(e,40,2)),n=parseInt(e.slice(0,8),2),a=parseInt(e.slice(8),2),o=parseInt(t.slice(0,8),2),s=parseInt(t.slice(8),2),r?(n&=o,a&=s):(n^=o,a^=s),n>>>=0,a>>>=0,parseInt(i(n,2,16)+i(a,8,16),16)};var o=function(t,r){for(var o=r.length,s=[],f=0;f<o;f++)s.push(31&r.charCodeAt(f));return s[o]=0,function(t){for(var r,o=1,s=t.length,f=0;f<s;f++){var c=i(o,40,2);r=parseInt(c.slice(0,5),2),o=a(c,34359738367,!0),c=i(o,40,2),o=parseInt(c.slice(5)+"00000",2),o=a(o,t[f]),1&r&&(o=a(o,656907472481)),2&r&&(o=a(o,522768456162)),4&r&&(o=a(o,0xf33e5fb3c4)),8&r&&(o=a(o,748107326120)),16&r&&(o=a(o,130178868336))}return o=a(o,1),n(new e(i(o,10,16),"hex"))}(s=s.concat(t.concat([0,0,0,0,0,0,0,0])))};t.exports.decode_b=function(t){var n,a,s,f,c,u="bitcoincash",h=[];if((t=(t=t.toLowerCase()).split(":")).length>1?(u=t[0],t=t[1]):t=t[0],n=(t=function(e){for(var t,i=[],n=e.length,a=0;a<n;a++)t=r.indexOf(e[a]),i.push(t);return i}(t)).slice(t.length-8),t=t.slice(0,t.length-8),o(t,u).join("")!==n.join(""))throw"Invalid checksum";for(a=(a=t.map(function(e){return i(e,5,2)})).join(""),s=function(e){switch(7&e){case 0:return 160;case 1:return 192;case 2:return 224;case 3:return 256;case 4:return 320;case 5:return 384;case 6:return 448;case 7:return 512}}(c=parseInt(a.slice(0,8),2)),f=function(e){switch(120&e){case 0:return"p2pkh";case 8:return"p2sh";default:throw"Invalid address type"}}(c),a=a.slice(0,s+8);a.length;)h.push(parseInt(a.slice(0,8),2)),a=a.slice(8);return{hash:new e(h).slice(1).toString("hex"),type:f}},t.exports.encode_b=function(t,i,a){var s,f,c;a.length;switch(i){case"p2pkh":s=0;break;case"p2sh":s=8;break;default:throw"no type specified"}return f=e.concat([new e([s]),t]),f=n(f),c=o(f,a),a+":"+function(e){for(var t="",i=e.length,n=0;n<i;n++)t+=r[e[n]];return t}(f.concat(c))}}).call(this,e("buffer").Buffer)},{buffer:49}],6:[function(e,t,r){"use strict";var i=r;i.version=e("../package.json").version,i.utils=e("./elliptic/utils"),i.rand=e("brorand"),i.hmacDRBG=e("./elliptic/hmac-drbg"),i.curve=e("./elliptic/curve"),i.curves=e("./elliptic/curves"),i.ec=e("./elliptic/ec"),i.eddsa=e("./elliptic/eddsa")},{"../package.json":31,"./elliptic/curve":9,"./elliptic/curves":12,"./elliptic/ec":13,"./elliptic/eddsa":16,"./elliptic/hmac-drbg":19,"./elliptic/utils":21,brorand:23}],7:[function(e,t,r){"use strict";var i=e("bn.js"),n=e("../../elliptic").utils,a=n.getNAF,o=n.getJSF,s=n.assert;function f(e,t){this.type=e,this.p=new i(t.p,16),this.red=t.prime?i.red(t.prime):i.mont(this.p),this.zero=new i(0).toRed(this.red),this.one=new i(1).toRed(this.red),this.two=new i(2).toRed(this.red),this.n=t.n&&new i(t.n,16),this.g=t.g&&this.pointFromJSON(t.g,t.gRed),this._wnafT1=new Array(4),this._wnafT2=new Array(4),this._wnafT3=new Array(4),this._wnafT4=new Array(4);var r=this.n&&this.p.div(this.n);!r||r.cmpn(100)>0?this.redN=null:(this._maxwellTrick=!0,this.redN=this.n.toRed(this.red))}function c(e,t){this.curve=e,this.type=t,this.precomputed=null}t.exports=f,f.prototype.point=function(){throw new Error("Not implemented")},f.prototype.validate=function(){throw new Error("Not implemented")},f.prototype._fixedNafMul=function(e,t){s(e.precomputed);var r=e._getDoubles(),i=a(t,1),n=(1<<r.step+1)-(r.step%2==0?2:1);n/=3;for(var o=[],f=0;f<i.length;f+=r.step){var c=0;for(t=f+r.step-1;t>=f;t--)c=(c<<1)+i[t];o.push(c)}for(var u=this.jpoint(null,null,null),h=this.jpoint(null,null,null),d=n;d>0;d--){for(f=0;f<o.length;f++){(c=o[f])===d?h=h.mixedAdd(r.points[f]):c===-d&&(h=h.mixedAdd(r.points[f].neg()))}u=u.add(h)}return u.toP()},f.prototype._wnafMul=function(e,t){var r=4,i=e._getNAFPoints(r);r=i.wnd;for(var n=i.points,o=a(t,r),f=this.jpoint(null,null,null),c=o.length-1;c>=0;c--){for(t=0;c>=0&&0===o[c];c--)t++;if(c>=0&&t++,f=f.dblp(t),c<0)break;var u=o[c];s(0!==u),f="affine"===e.type?u>0?f.mixedAdd(n[u-1>>1]):f.mixedAdd(n[-u-1>>1].neg()):u>0?f.add(n[u-1>>1]):f.add(n[-u-1>>1].neg())}return"affine"===e.type?f.toP():f},f.prototype._wnafMulAdd=function(e,t,r,i,n){for(var s=this._wnafT1,f=this._wnafT2,c=this._wnafT3,u=0,h=0;h<i;h++){var d=(k=t[h])._getNAFPoints(e);s[h]=d.wnd,f[h]=d.points}for(h=i-1;h>=1;h-=2){var l=h-1,p=h;if(1===s[l]&&1===s[p]){var b=[t[l],null,null,t[p]];0===t[l].y.cmp(t[p].y)?(b[1]=t[l].add(t[p]),b[2]=t[l].toJ().mixedAdd(t[p].neg())):0===t[l].y.cmp(t[p].y.redNeg())?(b[1]=t[l].toJ().mixedAdd(t[p]),b[2]=t[l].add(t[p].neg())):(b[1]=t[l].toJ().mixedAdd(t[p]),b[2]=t[l].toJ().mixedAdd(t[p].neg()));var m=[-3,-1,-5,-7,0,7,5,1,3],g=o(r[l],r[p]);u=Math.max(g[0].length,u),c[l]=new Array(u),c[p]=new Array(u);for(var v=0;v<u;v++){var y=0|g[0][v],w=0|g[1][v];c[l][v]=m[3*(y+1)+(w+1)],c[p][v]=0,f[l]=b}}else c[l]=a(r[l],s[l]),c[p]=a(r[p],s[p]),u=Math.max(c[l].length,u),u=Math.max(c[p].length,u)}var _=this.jpoint(null,null,null),S=this._wnafT4;for(h=u;h>=0;h--){for(var M=0;h>=0;){var x=!0;for(v=0;v<i;v++)S[v]=0|c[v][h],0!==S[v]&&(x=!1);if(!x)break;M++,h--}if(h>=0&&M++,_=_.dblp(M),h<0)break;for(v=0;v<i;v++){var k,A=S[v];0!==A&&(A>0?k=f[v][A-1>>1]:A<0&&(k=f[v][-A-1>>1].neg()),_="affine"===k.type?_.mixedAdd(k):_.add(k))}}for(h=0;h<i;h++)f[h]=null;return n?_:_.toP()},f.BasePoint=c,c.prototype.eq=function(){throw new Error("Not implemented")},c.prototype.validate=function(){return this.curve.validate(this)},f.prototype.decodePoint=function(e,t){e=n.toArray(e,t);var r=this.p.byteLength();if((4===e[0]||6===e[0]||7===e[0])&&e.length-1==2*r)return 6===e[0]?s(e[e.length-1]%2==0):7===e[0]&&s(e[e.length-1]%2==1),this.point(e.slice(1,1+r),e.slice(1+r,1+2*r));if((2===e[0]||3===e[0])&&e.length-1===r)return this.pointFromX(e.slice(1,1+r),3===e[0]);throw new Error("Unknown point format")},c.prototype.encodeCompressed=function(e){return this.encode(e,!0)},c.prototype._encode=function(e){var t=this.curve.p.byteLength(),r=this.getX().toArray("be",t);return e?[this.getY().isEven()?2:3].concat(r):[4].concat(r,this.getY().toArray("be",t))},c.prototype.encode=function(e,t){return n.encode(this._encode(t),e)},c.prototype.precompute=function(e){if(this.precomputed)return this;var t={doubles:null,naf:null,beta:null};return t.naf=this._getNAFPoints(8),t.doubles=this._getDoubles(4,e),t.beta=this._getBeta(),this.precomputed=t,this},c.prototype._hasDoubles=function(e){if(!this.precomputed)return!1;var t=this.precomputed.doubles;return!!t&&t.points.length>=Math.ceil((e.bitLength()+1)/t.step)},c.prototype._getDoubles=function(e,t){if(this.precomputed&&this.precomputed.doubles)return this.precomputed.doubles;for(var r=[this],i=this,n=0;n<t;n+=e){for(var a=0;a<e;a++)i=i.dbl();r.push(i)}return{step:e,points:r}},c.prototype._getNAFPoints=function(e){if(this.precomputed&&this.precomputed.naf)return this.precomputed.naf;for(var t=[this],r=(1<<e)-1,i=1===r?null:this.dbl(),n=1;n<r;n++)t[n]=t[n-1].add(i);return{wnd:e,points:t}},c.prototype._getBeta=function(){return null},c.prototype.dblp=function(e){for(var t=this,r=0;r<e;r++)t=t.dbl();return t}},{"../../elliptic":6,"bn.js":22}],8:[function(e,t,r){"use strict";var i=e("../curve"),n=e("../../elliptic"),a=e("bn.js"),o=e("inherits"),s=i.base,f=n.utils.assert;function c(e){this.twisted=1!=(0|e.a),this.mOneA=this.twisted&&-1==(0|e.a),this.extended=this.mOneA,s.call(this,"edwards",e),this.a=new a(e.a,16).umod(this.red.m),this.a=this.a.toRed(this.red),this.c=new a(e.c,16).toRed(this.red),this.c2=this.c.redSqr(),this.d=new a(e.d,16).toRed(this.red),this.dd=this.d.redAdd(this.d),f(!this.twisted||0===this.c.fromRed().cmpn(1)),this.oneC=1==(0|e.c)}function u(e,t,r,i,n){s.BasePoint.call(this,e,"projective"),null===t&&null===r&&null===i?(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 a(t,16),this.y=new a(r,16),this.z=i?new a(i,16):this.curve.one,this.t=n&&new a(n,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()))))}o(c,s),t.exports=c,c.prototype._mulA=function(e){return this.mOneA?e.redNeg():this.a.redMul(e)},c.prototype._mulC=function(e){return this.oneC?e:this.c.redMul(e)},c.prototype.jpoint=function(e,t,r,i){return this.point(e,t,r,i)},c.prototype.pointFromX=function(e,t){(e=new a(e,16)).red||(e=e.toRed(this.red));var r=e.redSqr(),i=this.c2.redSub(this.a.redMul(r)),n=this.one.redSub(this.c2.redMul(this.d).redMul(r)),o=i.redMul(n.redInvm()),s=o.redSqrt();if(0!==s.redSqr().redSub(o).cmp(this.zero))throw new Error("invalid point");var f=s.fromRed().isOdd();return(t&&!f||!t&&f)&&(s=s.redNeg()),this.point(e,s)},c.prototype.pointFromY=function(e,t){(e=new a(e,16)).red||(e=e.toRed(this.red));var r=e.redSqr(),i=r.redSub(this.one),n=r.redMul(this.d).redAdd(this.one),o=i.redMul(n.redInvm());if(0===o.cmp(this.zero)){if(t)throw new Error("invalid point");return this.point(this.zero,e)}var s=o.redSqrt();if(0!==s.redSqr().redSub(o).cmp(this.zero))throw new Error("invalid point");return s.isOdd()!==t&&(s=s.redNeg()),this.point(s,e)},c.prototype.validate=function(e){if(e.isInfinity())return!0;e.normalize();var t=e.x.redSqr(),r=e.y.redSqr(),i=t.redMul(this.a).redAdd(r),n=this.c2.redMul(this.one.redAdd(this.d.redMul(t).redMul(r)));return 0===i.cmp(n)},o(u,s.BasePoint),c.prototype.pointFromJSON=function(e){return u.fromJSON(this,e)},c.prototype.point=function(e,t,r,i){return new u(this,e,t,r,i)},u.fromJSON=function(e,t){return new u(e,t[0],t[1],t[2])},u.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)+">"},u.prototype.isInfinity=function(){return 0===this.x.cmpn(0)&&0===this.y.cmp(this.z)},u.prototype._extDbl=function(){var e=this.x.redSqr(),t=this.y.redSqr(),r=this.z.redSqr();r=r.redIAdd(r);var i=this.curve._mulA(e),n=this.x.redAdd(this.y).redSqr().redISub(e).redISub(t),a=i.redAdd(t),o=a.redSub(r),s=i.redSub(t),f=n.redMul(o),c=a.redMul(s),u=n.redMul(s),h=o.redMul(a);return this.curve.point(f,c,h,u)},u.prototype._projDbl=function(){var e,t,r,i=this.x.redAdd(this.y).redSqr(),n=this.x.redSqr(),a=this.y.redSqr();if(this.curve.twisted){var o=(c=this.curve._mulA(n)).redAdd(a);if(this.zOne)e=i.redSub(n).redSub(a).redMul(o.redSub(this.curve.two)),t=o.redMul(c.redSub(a)),r=o.redSqr().redSub(o).redSub(o);else{var s=this.z.redSqr(),f=o.redSub(s).redISub(s);e=i.redSub(n).redISub(a).redMul(f),t=o.redMul(c.redSub(a)),r=o.redMul(f)}}else{var c=n.redAdd(a);s=this.curve._mulC(this.c.redMul(this.z)).redSqr(),f=c.redSub(s).redSub(s);e=this.curve._mulC(i.redISub(c)).redMul(f),t=this.curve._mulC(c).redMul(n.redISub(a)),r=c.redMul(f)}return this.curve.point(e,t,r)},u.prototype.dbl=function(){return this.isInfinity()?this:this.curve.extended?this._extDbl():this._projDbl()},u.prototype._extAdd=function(e){var t=this.y.redSub(this.x).redMul(e.y.redSub(e.x)),r=this.y.redAdd(this.x).redMul(e.y.redAdd(e.x)),i=this.t.redMul(this.curve.dd).redMul(e.t),n=this.z.redMul(e.z.redAdd(e.z)),a=r.redSub(t),o=n.redSub(i),s=n.redAdd(i),f=r.redAdd(t),c=a.redMul(o),u=s.redMul(f),h=a.redMul(f),d=o.redMul(s);return this.curve.point(c,u,d,h)},u.prototype._projAdd=function(e){var t,r,i=this.z.redMul(e.z),n=i.redSqr(),a=this.x.redMul(e.x),o=this.y.redMul(e.y),s=this.curve.d.redMul(a).redMul(o),f=n.redSub(s),c=n.redAdd(s),u=this.x.redAdd(this.y).redMul(e.x.redAdd(e.y)).redISub(a).redISub(o),h=i.redMul(f).redMul(u);return this.curve.twisted?(t=i.redMul(c).redMul(o.redSub(this.curve._mulA(a))),r=f.redMul(c)):(t=i.redMul(c).redMul(o.redSub(a)),r=this.curve._mulC(f).redMul(c)),this.curve.point(h,t,r)},u.prototype.add=function(e){return this.isInfinity()?e:e.isInfinity()?this:this.curve.extended?this._extAdd(e):this._projAdd(e)},u.prototype.mul=function(e){return this._hasDoubles(e)?this.curve._fixedNafMul(this,e):this.curve._wnafMul(this,e)},u.prototype.mulAdd=function(e,t,r){return this.curve._wnafMulAdd(1,[this,t],[e,r],2,!1)},u.prototype.jmulAdd=function(e,t,r){return this.curve._wnafMulAdd(1,[this,t],[e,r],2,!0)},u.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},u.prototype.neg=function(){return this.curve.point(this.x.redNeg(),this.y,this.z,this.t&&this.t.redNeg())},u.prototype.getX=function(){return this.normalize(),this.x.fromRed()},u.prototype.getY=function(){return this.normalize(),this.y.fromRed()},u.prototype.eq=function(e){return this===e||0===this.getX().cmp(e.getX())&&0===this.getY().cmp(e.getY())},u.prototype.eqXToP=function(e){var t=e.toRed(this.curve.red).redMul(this.z);if(0===this.x.cmp(t))return!0;for(var r=e.clone(),i=this.curve.redN.redMul(this.z);;){if(r.iadd(this.curve.n),r.cmp(this.curve.p)>=0)return!1;if(t.redIAdd(i),0===this.x.cmp(t))return!0}return!1},u.prototype.toP=u.prototype.normalize,u.prototype.mixedAdd=u.prototype.add},{"../../elliptic":6,"../curve":9,"bn.js":22,inherits:30}],9:[function(e,t,r){"use strict";var i=r;i.base=e("./base"),i.short=e("./short"),i.mont=e("./mont"),i.edwards=e("./edwards")},{"./base":7,"./edwards":8,"./mont":10,"./short":11}],10:[function(e,t,r){"use strict";var i=e("../curve"),n=e("bn.js"),a=e("inherits"),o=i.base,s=e("../../elliptic").utils;function f(e){o.call(this,"mont",e),this.a=new n(e.a,16).toRed(this.red),this.b=new n(e.b,16).toRed(this.red),this.i4=new n(4).toRed(this.red).redInvm(),this.two=new n(2).toRed(this.red),this.a24=this.i4.redMul(this.a.redAdd(this.two))}function c(e,t,r){o.BasePoint.call(this,e,"projective"),null===t&&null===r?(this.x=this.curve.one,this.z=this.curve.zero):(this.x=new n(t,16),this.z=new n(r,16),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)))}a(f,o),t.exports=f,f.prototype.validate=function(e){var t=e.normalize().x,r=t.redSqr(),i=r.redMul(t).redAdd(r.redMul(this.a)).redAdd(t);return 0===i.redSqrt().redSqr().cmp(i)},a(c,o.BasePoint),f.prototype.decodePoint=function(e,t){return this.point(s.toArray(e,t),1)},f.prototype.point=function(e,t){return new c(this,e,t)},f.prototype.pointFromJSON=function(e){return c.fromJSON(this,e)},c.prototype.precompute=function(){},c.prototype._encode=function(){return this.getX().toArray("be",this.curve.p.byteLength())},c.fromJSON=function(e,t){return new c(e,t[0],t[1]||e.one)},c.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)+">"},c.prototype.isInfinity=function(){return 0===this.z.cmpn(0)},c.prototype.dbl=function(){var e=this.x.redAdd(this.z).redSqr(),t=this.x.redSub(this.z).redSqr(),r=e.redSub(t),i=e.redMul(t),n=r.redMul(t.redAdd(this.curve.a24.redMul(r)));return this.curve.point(i,n)},c.prototype.add=function(){throw new Error("Not supported on Montgomery curve")},c.prototype.diffAdd=function(e,t){var r=this.x.redAdd(this.z),i=this.x.redSub(this.z),n=e.x.redAdd(e.z),a=e.x.redSub(e.z).redMul(r),o=n.redMul(i),s=t.z.redMul(a.redAdd(o).redSqr()),f=t.x.redMul(a.redISub(o).redSqr());return this.curve.point(s,f)},c.prototype.mul=function(e){for(var t=e.clone(),r=this,i=this.curve.point(null,null),n=[];0!==t.cmpn(0);t.iushrn(1))n.push(t.andln(1));for(var a=n.length-1;a>=0;a--)0===n[a]?(r=r.diffAdd(i,this),i=i.dbl()):(i=r.diffAdd(i,this),r=r.dbl());return i},c.prototype.mulAdd=function(){throw new Error("Not supported on Montgomery curve")},c.prototype.jumlAdd=function(){throw new Error("Not supported on Montgomery curve")},c.prototype.eq=function(e){return 0===this.getX().cmp(e.getX())},c.prototype.normalize=function(){return this.x=this.x.redMul(this.z.redInvm()),this.z=this.curve.one,this},c.prototype.getX=function(){return this.normalize(),this.x.fromRed()}},{"../../elliptic":6,"../curve":9,"bn.js":22,inherits:30}],11:[function(e,t,r){"use strict";var i=e("../curve"),n=e("../../elliptic"),a=e("bn.js"),o=e("inherits"),s=i.base,f=n.utils.assert;function c(e){s.call(this,"short",e),this.a=new a(e.a,16).toRed(this.red),this.b=new a(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 u(e,t,r,i){s.BasePoint.call(this,e,"affine"),null===t&&null===r?(this.x=null,this.y=null,this.inf=!0):(this.x=new a(t,16),this.y=new a(r,16),i&&(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 h(e,t,r,i){s.BasePoint.call(this,e,"jacobian"),null===t&&null===r&&null===i?(this.x=this.curve.one,this.y=this.curve.one,this.z=new a(0)):(this.x=new a(t,16),this.y=new a(r,16),this.z=new a(i,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}o(c,s),t.exports=c,c.prototype._getEndomorphism=function(e){if(this.zeroA&&this.g&&this.n&&1===this.p.modn(3)){var t,r;if(e.beta)t=new a(e.beta,16).toRed(this.red);else{var i=this._getEndoRoots(this.p);t=(t=i[0].cmp(i[1])<0?i[0]:i[1]).toRed(this.red)}if(e.lambda)r=new a(e.lambda,16);else{var n=this._getEndoRoots(this.n);0===this.g.mul(n[0]).x.cmp(this.g.x.redMul(t))?r=n[0]:(r=n[1],f(0===this.g.mul(r).x.cmp(this.g.x.redMul(t))))}return{beta:t,lambda:r,basis:e.basis?e.basis.map(function(e){return{a:new a(e.a,16),b:new a(e.b,16)}}):this._getEndoBasis(r)}}},c.prototype._getEndoRoots=function(e){var t=e===this.p?this.red:a.mont(e),r=new a(2).toRed(t).redInvm(),i=r.redNeg(),n=new a(3).toRed(t).redNeg().redSqrt().redMul(r);return[i.redAdd(n).fromRed(),i.redSub(n).fromRed()]},c.prototype._getEndoBasis=function(e){for(var t,r,i,n,o,s,f,c,u,h=this.n.ushrn(Math.floor(this.n.bitLength()/2)),d=e,l=this.n.clone(),p=new a(1),b=new a(0),m=new a(0),g=new a(1),v=0;0!==d.cmpn(0);){var y=l.div(d);c=l.sub(y.mul(d)),u=m.sub(y.mul(p));var w=g.sub(y.mul(b));if(!i&&c.cmp(h)<0)t=f.neg(),r=p,i=c.neg(),n=u;else if(i&&2==++v)break;f=c,l=d,d=c,m=p,p=u,g=b,b=w}o=c.neg(),s=u;var _=i.sqr().add(n.sqr());return o.sqr().add(s.sqr()).cmp(_)>=0&&(o=t,s=r),i.negative&&(i=i.neg(),n=n.neg()),o.negative&&(o=o.neg(),s=s.neg()),[{a:i,b:n},{a:o,b:s}]},c.prototype._endoSplit=function(e){var t=this.endo.basis,r=t[0],i=t[1],n=i.b.mul(e).divRound(this.n),a=r.b.neg().mul(e).divRound(this.n),o=n.mul(r.a),s=a.mul(i.a),f=n.mul(r.b),c=a.mul(i.b);return{k1:e.sub(o).sub(s),k2:f.add(c).neg()}},c.prototype.pointFromX=function(e,t){(e=new a(e,16)).red||(e=e.toRed(this.red));var r=e.redSqr().redMul(e).redIAdd(e.redMul(this.a)).redIAdd(this.b),i=r.redSqrt();if(0!==i.redSqr().redSub(r).cmp(this.zero))throw new Error("invalid point");var n=i.fromRed().isOdd();return(t&&!n||!t&&n)&&(i=i.redNeg()),this.point(e,i)},c.prototype.validate=function(e){if(e.inf)return!0;var t=e.x,r=e.y,i=this.a.redMul(t),n=t.redSqr().redMul(t).redIAdd(i).redIAdd(this.b);return 0===r.redSqr().redISub(n).cmpn(0)},c.prototype._endoWnafMulAdd=function(e,t,r){for(var i=this._endoWnafT1,n=this._endoWnafT2,a=0;a<e.length;a++){var o=this._endoSplit(t[a]),s=e[a],f=s._getBeta();o.k1.negative&&(o.k1.ineg(),s=s.neg(!0)),o.k2.negative&&(o.k2.ineg(),f=f.neg(!0)),i[2*a]=s,i[2*a+1]=f,n[2*a]=o.k1,n[2*a+1]=o.k2}for(var c=this._wnafMulAdd(1,i,n,2*a,r),u=0;u<2*a;u++)i[u]=null,n[u]=null;return c},o(u,s.BasePoint),c.prototype.point=function(e,t,r){return new u(this,e,t,r)},c.prototype.pointFromJSON=function(e,t){return u.fromJSON(this,e,t)},u.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 r=this.curve,i=function(e){return r.point(e.x.redMul(r.endo.beta),e.y)};e.beta=t,t.precomputed={beta:null,naf:e.naf&&{wnd:e.naf.wnd,points:e.naf.points.map(i)},doubles:e.doubles&&{step:e.doubles.step,points:e.doubles.points.map(i)}}}return t}},u.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]},u.fromJSON=function(e,t,r){"string"==typeof t&&(t=JSON.parse(t));var i=e.point(t[0],t[1],r);if(!t[2])return i;function n(t){return e.point(t[0],t[1],r)}var a=t[2];return i.precomputed={beta:null,doubles:a.doubles&&{step:a.doubles.step,points:[i].concat(a.doubles.points.map(n))},naf:a.naf&&{wnd:a.naf.wnd,points:[i].concat(a.naf.points.map(n))}},i},u.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)+">"},u.prototype.isInfinity=function(){return this.inf},u.prototype.add=function(e){if(this.inf)return e;if(e.inf)return this;if(this.eq(e))return this.dbl();if(this.neg().eq(e))return this.curve.point(null,null);if(0===this.x.cmp(e.x))return this.curve.point(null,null);var t=this.y.redSub(e.y);0!==t.cmpn(0)&&(t=t.redMul(this.x.redSub(e.x).redInvm()));var r=t.redSqr().redISub(this.x).redISub(e.x),i=t.redMul(this.x.redSub(r)).redISub(this.y);return this.curve.point(r,i)},u.prototype.dbl=function(){if(this.inf)return this;var e=this.y.redAdd(this.y);if(0===e.cmpn(0))return this.curve.point(null,null);var t=this.curve.a,r=this.x.redSqr(),i=e.redInvm(),n=r.redAdd(r).redIAdd(r).redIAdd(t).redMul(i),a=n.redSqr().redISub(this.x.redAdd(this.x)),o=n.redMul(this.x.redSub(a)).redISub(this.y);return this.curve.point(a,o)},u.prototype.getX=function(){return this.x.fromRed()},u.prototype.getY=function(){return this.y.fromRed()},u.prototype.mul=function(e){return e=new a(e,16),this._hasDoubles(e)?this.curve._fixedNafMul(this,e):this.curve.endo?this.curve._endoWnafMulAdd([this],[e]):this.curve._wnafMul(this,e)},u.prototype.mulAdd=function(e,t,r){var i=[this,t],n=[e,r];return this.curve.endo?this.curve._endoWnafMulAdd(i,n):this.curve._wnafMulAdd(1,i,n,2)},u.prototype.jmulAdd=function(e,t,r){var i=[this,t],n=[e,r];return this.curve.endo?this.curve._endoWnafMulAdd(i,n,!0):this.curve._wnafMulAdd(1,i,n,2,!0)},u.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))},u.prototype.neg=function(e){if(this.inf)return this;var t=this.curve.point(this.x,this.y.redNeg());if(e&&this.precomputed){var r=this.precomputed,i=function(e){return e.neg()};t.precomputed={naf:r.naf&&{wnd:r.naf.wnd,points:r.naf.points.map(i)},doubles:r.doubles&&{step:r.doubles.step,points:r.doubles.points.map(i)}}}return t},u.prototype.toJ=function(){return this.inf?this.curve.jpoint(null,null,null):this.curve.jpoint(this.x,this.y,this.curve.one)},o(h,s.BasePoint),c.prototype.jpoint=function(e,t,r){return new h(this,e,t,r)},h.prototype.toP=function(){if(this.isInfinity())return this.curve.point(null,null);var e=this.z.redInvm(),t=e.redSqr(),r=this.x.redMul(t),i=this.y.redMul(t).redMul(e);return this.curve.point(r,i)},h.prototype.neg=function(){return this.curve.jpoint(this.x,this.y.redNeg(),this.z)},h.prototype.add=function(e){if(this.isInfinity())return e;if(e.isInfinity())return this;var t=e.z.redSqr(),r=this.z.redSqr(),i=this.x.redMul(t),n=e.x.redMul(r),a=this.y.redMul(t.redMul(e.z)),o=e.y.redMul(r.redMul(this.z)),s=i.redSub(n),f=a.redSub(o);if(0===s.cmpn(0))return 0!==f.cmpn(0)?this.curve.jpoint(null,null,null):this.dbl();var c=s.redSqr(),u=c.redMul(s),h=i.redMul(c),d=f.redSqr().redIAdd(u).redISub(h).redISub(h),l=f.redMul(h.redISub(d)).redISub(a.redMul(u)),p=this.z.redMul(e.z).redMul(s);return this.curve.jpoint(d,l,p)},h.prototype.mixedAdd=function(e){if(this.isInfinity())return e.toJ();if(e.isInfinity())return this;var t=this.z.redSqr(),r=this.x,i=e.x.redMul(t),n=this.y,a=e.y.redMul(t).redMul(this.z),o=r.redSub(i),s=n.redSub(a);if(0===o.cmpn(0))return 0!==s.cmpn(0)?this.curve.jpoint(null,null,null):this.dbl();var f=o.redSqr(),c=f.redMul(o),u=r.redMul(f),h=s.redSqr().redIAdd(c).redISub(u).redISub(u),d=s.redMul(u.redISub(h)).redISub(n.redMul(c)),l=this.z.redMul(o);return this.curve.jpoint(h,d,l)},h.prototype.dblp=function(e){if(0===e)return this;if(this.isInfinity())return this;if(!e)return this.dbl();if(this.curve.zeroA||this.curve.threeA){for(var t=this,r=0;r<e;r++)t=t.dbl();return t}var i=this.curve.a,n=this.curve.tinv,a=this.x,o=this.y,s=this.z,f=s.redSqr().redSqr(),c=o.redAdd(o);for(r=0;r<e;r++){var u=a.redSqr(),h=c.redSqr(),d=h.redSqr(),l=u.redAdd(u).redIAdd(u).redIAdd(i.redMul(f)),p=a.redMul(h),b=l.redSqr().redISub(p.redAdd(p)),m=p.redISub(b),g=l.redMul(m);g=g.redIAdd(g).redISub(d);var v=c.redMul(s);r+1<e&&(f=f.redMul(d)),a=b,s=v,c=g}return this.curve.jpoint(a,c.redMul(n),s)},h.prototype.dbl=function(){return this.isInfinity()?this:this.curve.zeroA?this._zeroDbl():this.curve.threeA?this._threeDbl():this._dbl()},h.prototype._zeroDbl=function(){var e,t,r;if(this.zOne){var i=this.x.redSqr(),n=this.y.redSqr(),a=n.redSqr(),o=this.x.redAdd(n).redSqr().redISub(i).redISub(a);o=o.redIAdd(o);var s=i.redAdd(i).redIAdd(i),f=s.redSqr().redISub(o).redISub(o),c=a.redIAdd(a);c=(c=c.redIAdd(c)).redIAdd(c),e=f,t=s.redMul(o.redISub(f)).redISub(c),r=this.y.redAdd(this.y)}else{var u=this.x.redSqr(),h=this.y.redSqr(),d=h.redSqr(),l=this.x.redAdd(h).redSqr().redISub(u).redISub(d);l=l.redIAdd(l);var p=u.redAdd(u).redIAdd(u),b=p.redSqr(),m=d.redIAdd(d);m=(m=m.redIAdd(m)).redIAdd(m),e=b.redISub(l).redISub(l),t=p.redMul(l.redISub(e)).redISub(m),r=(r=this.y.redMul(this.z)).redIAdd(r)}return this.curve.jpoint(e,t,r)},h.prototype._threeDbl=function(){var e,t,r;if(this.zOne){var i=this.x.redSqr(),n=this.y.redSqr(),a=n.redSqr(),o=this.x.redAdd(n).redSqr().redISub(i).redISub(a);o=o.redIAdd(o);var s=i.redAdd(i).redIAdd(i).redIAdd(this.curve.a),f=s.redSqr().redISub(o).redISub(o);e=f;var c=a.redIAdd(a);c=(c=c.redIAdd(c)).redIAdd(c),t=s.redMul(o.redISub(f)).redISub(c),r=this.y.redAdd(this.y)}else{var u=this.z.redSqr(),h=this.y.redSqr(),d=this.x.redMul(h),l=this.x.redSub(u).redMul(this.x.redAdd(u));l=l.redAdd(l).redIAdd(l);var p=d.redIAdd(d),b=(p=p.redIAdd(p)).redAdd(p);e=l.redSqr().redISub(b),r=this.y.redAdd(this.z).redSqr().redISub(h).redISub(u);var m=h.redSqr();m=(m=(m=m.redIAdd(m)).redIAdd(m)).redIAdd(m),t=l.redMul(p.redISub(e)).redISub(m)}return this.curve.jpoint(e,t,r)},h.prototype._dbl=function(){var e=this.curve.a,t=this.x,r=this.y,i=this.z,n=i.redSqr().redSqr(),a=t.redSqr(),o=r.redSqr(),s=a.redAdd(a).redIAdd(a).redIAdd(e.redMul(n)),f=t.redAdd(t),c=(f=f.redIAdd(f)).redMul(o),u=s.redSqr().redISub(c.redAdd(c)),h=c.redISub(u),d=o.redSqr();d=(d=(d=d.redIAdd(d)).redIAdd(d)).redIAdd(d);var l=s.redMul(h).redISub(d),p=r.redAdd(r).redMul(i);return this.curve.jpoint(u,l,p)},h.prototype.trpl=function(){if(!this.curve.zeroA)return this.dbl().add(this);var e=this.x.redSqr(),t=this.y.redSqr(),r=this.z.redSqr(),i=t.redSqr(),n=e.redAdd(e).redIAdd(e),a=n.redSqr(),o=this.x.redAdd(t).redSqr().redISub(e).redISub(i),s=(o=(o=(o=o.redIAdd(o)).redAdd(o).redIAdd(o)).redISub(a)).redSqr(),f=i.redIAdd(i);f=(f=(f=f.redIAdd(f)).redIAdd(f)).redIAdd(f);var c=n.redIAdd(o).redSqr().redISub(a).redISub(s).redISub(f),u=t.redMul(c);u=(u=u.redIAdd(u)).redIAdd(u);var h=this.x.redMul(s).redISub(u);h=(h=h.redIAdd(h)).redIAdd(h);var d=this.y.redMul(c.redMul(f.redISub(c)).redISub(o.redMul(s)));d=(d=(d=d.redIAdd(d)).redIAdd(d)).redIAdd(d);var l=this.z.redAdd(o).redSqr().redISub(r).redISub(s);return this.curve.jpoint(h,d,l)},h.prototype.mul=function(e,t){return e=new a(e,t),this.curve._wnafMul(this,e)},h.prototype.eq=function(e){if("affine"===e.type)return this.eq(e.toJ());if(this===e)return!0;var t=this.z.redSqr(),r=e.z.redSqr();if(0!==this.x.redMul(r).redISub(e.x.redMul(t)).cmpn(0))return!1;var i=t.redMul(this.z),n=r.redMul(e.z);return 0===this.y.redMul(n).redISub(e.y.redMul(i)).cmpn(0)},h.prototype.eqXToP=function(e){var t=this.z.redSqr(),r=e.toRed(this.curve.red).redMul(t);if(0===this.x.cmp(r))return!0;for(var i=e.clone(),n=this.curve.redN.redMul(t);;){if(i.iadd(this.curve.n),i.cmp(this.curve.p)>=0)return!1;if(r.redIAdd(n),0===this.x.cmp(r))return!0}return!1},h.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)+">"},h.prototype.isInfinity=function(){return 0===this.z.cmpn(0)}},{"../../elliptic":6,"../curve":9,"bn.js":22,inherits:30}],12:[function(e,t,r){"use strict";var i,n=r,a=e("hash.js"),o=e("../elliptic"),s=o.utils.assert;function f(e){"short"===e.type?this.curve=new o.curve.short(e):"edwards"===e.type?this.curve=new o.curve.edwards(e):this.curve=new o.curve.mont(e),this.g=this.curve.g,this.n=this.curve.n,this.hash=e.hash,s(this.g.validate(),"Invalid curve"),s(this.g.mul(this.n).isInfinity(),"Invalid curve, G*N != O")}function c(e,t){Object.defineProperty(n,e,{configurable:!0,enumerable:!0,get:function(){var r=new f(t);return Object.defineProperty(n,e,{configurable:!0,enumerable:!0,value:r}),r}})}n.PresetCurve=f,c("p192",{type:"short",prime:"p192",p:"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff",a:"ffffffff ffffffff ffffffff fffffffe ffffffff fffffffc",b:"64210519 e59c80e7 0fa7e9ab 72243049 feb8deec c146b9b1",n:"ffffffff ffffffff ffffffff 99def836 146bc9b1 b4d22831",hash:a.sha256,gRed:!1,g:["188da80e b03090f6 7cbf20eb 43a18800 f4ff0afd 82ff1012","07192b95 ffc8da78 631011ed 6b24cdd5 73f977a1 1e794811"]}),c("p224",{type:"short",prime:"p224",p:"ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001",a:"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff fffffffe",b:"b4050a85 0c04b3ab f5413256 5044b0b7 d7bfd8ba 270b3943 2355ffb4",n:"ffffffff ffffffff ffffffff ffff16a2 e0b8f03e 13dd2945 5c5c2a3d",hash:a.sha256,gRed:!1,g:["b70e0cbd 6bb4bf7f 321390b9 4a03c1d3 56c21122 343280d6 115c1d21","bd376388 b5f723fb 4c22dfe6 cd4375a0 5a074764 44d58199 85007e34"]}),c("p256",{type:"short",prime:null,p:"ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff ffffffff",a:"ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff fffffffc",b:"5ac635d8 aa3a93e7 b3ebbd55 769886bc 651d06b0 cc53b0f6 3bce3c3e 27d2604b",n:"ffffffff 00000000 ffffffff ffffffff bce6faad a7179e84 f3b9cac2 fc632551",hash:a.sha256,gRed:!1,g:["6b17d1f2 e12c4247 f8bce6e5 63a440f2 77037d81 2deb33a0 f4a13945 d898c296","4fe342e2 fe1a7f9b 8ee7eb4a 7c0f9e16 2bce3357 6b315ece cbb64068 37bf51f5"]}),c("p384",{type:"short",prime:null,p:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 ffffffff",a:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 fffffffc",b:"b3312fa7 e23ee7e4 988e056b e3f82d19 181d9c6e fe814112 0314088f 5013875a c656398d 8a2ed19d 2a85c8ed d3ec2aef",n:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff c7634d81 f4372ddf 581a0db2 48b0a77a ecec196a ccc52973",hash:a.sha384,gRed:!1,g:["aa87ca22 be8b0537 8eb1c71e f320ad74 6e1d3b62 8ba79b98 59f741e0 82542a38 5502f25d bf55296c 3a545e38 72760ab7","3617de4a 96262c6f 5d9e98bf 9292dc29 f8f41dbd 289a147c e9da3113 b5f0b8c0 0a60b1ce 1d7e819d 7a431d7c 90ea0e5f"]}),c("p521",{type:"short",prime:null,p:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff",a:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffc",b:"00000051 953eb961 8e1c9a1f 929a21a0 b68540ee a2da725b 99b315f3 b8b48991 8ef109e1 56193951 ec7e937b 1652c0bd 3bb1bf07 3573df88 3d2c34f1 ef451fd4 6b503f00",n:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffa 51868783 bf2f966b 7fcc0148 f709a5d0 3bb5c9b8 899c47ae bb6fb71e 91386409",hash:a.sha512,gRed:!1,g:["000000c6 858e06b7 0404e9cd 9e3ecb66 2395b442 9c648139 053fb521 f828af60 6b4d3dba a14b5e77 efe75928 fe1dc127 a2ffa8de 3348b3c1 856a429b f97e7e31 c2e5bd66","00000118 39296a78 9a3bc004 5c8a5fb4 2c7d1bd9 98f54449 579b4468 17afbd17 273e662c 97ee7299 5ef42640 c550b901 3fad0761 353c7086 a272c240 88be9476 9fd16650"]}),c("curve25519",{type:"mont",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"76d06",b:"0",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:a.sha256,gRed:!1,g:["9"]}),c("ed25519",{type:"edwards",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"-1",c:"1",d:"52036cee2b6ffe73 8cc740797779e898 00700a4d4141d8ab 75eb4dca135978a3",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:a.sha256,gRed:!1,g:["216936d3cd6e53fec0a4e231fdd6dc5c692cc7609525a7b2c9562d608f25d51a","6666666666666666666666666666666666666666666666666666666666666658"]});try{i=e("./precomputed/secp256k1")}catch(e){i=void 0}c("secp256k1",{type:"short",prime:"k256",p:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f",a:"0",b:"7",n:"ffffffff ffffffff ffffffff fffffffe baaedce6 af48a03b bfd25e8c d0364141",h:"1",hash:a.sha256,beta:"7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee",lambda:"5363ad4cc05c30e0a5261c028812645a122e22ea20816678df02967c1b23bd72",basis:[{a:"3086d221a7d46bcde86c90e49284eb15",b:"-e4437ed6010e88286f547fa90abfe4c3"},{a:"114ca50f7a8e2f3f657c1108d9d44cfd8",b:"3086d221a7d46bcde86c90e49284eb15"}],gRed:!1,g:["79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798","483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8",i]})},{"../elliptic":6,"./precomputed/secp256k1":20,"hash.js":24}],13:[function(e,t,r){"use strict";var i=e("bn.js"),n=e("../../elliptic"),a=n.utils.assert,o=e("./key"),s=e("./signature");function f(e){if(!(this instanceof f))return new f(e);"string"==typeof e&&(a(n.curves.hasOwnProperty(e),"Unknown curve "+e),e=n.curves[e]),e instanceof n.curves.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}t.exports=f,f.prototype.keyPair=function(e){return new o(this,e)},f.prototype.keyFromPrivate=function(e,t){return o.fromPrivate(this,e,t)},f.prototype.keyFromPublic=function(e,t){return o.fromPublic(this,e,t)},f.prototype.genKeyPair=function(e){e||(e={});for(var t=new n.hmacDRBG({hash:this.hash,pers:e.pers,entropy:e.entropy||n.rand(this.hash.hmacStrength),nonce:this.n.toArray()}),r=this.n.byteLength(),a=this.n.sub(new i(2));;){var o=new i(t.generate(r));if(!(o.cmp(a)>0))return o.iaddn(1),this.keyFromPrivate(o)}},f.prototype._truncateToN=function(e,t){var r=8*e.byteLength()-this.n.bitLength();return r>0&&(e=e.ushrn(r)),!t&&e.cmp(this.n)>=0?e.sub(this.n):e},f.prototype.sign=function(e,t,r,a){"object"==typeof r&&(a=r,r=null),a||(a={}),t=this.keyFromPrivate(t,r),e=this._truncateToN(new i(e,16));for(var o=this.n.byteLength(),f=t.getPrivate().toArray("be",o),c=e.toArray("be",o),u=new n.hmacDRBG({hash:this.hash,entropy:f,nonce:c,pers:a.pers,persEnc:a.persEnc}),h=this.n.sub(new i(1)),d=0;;d++){var l=a.k?a.k(d):new i(u.generate(this.n.byteLength()));if(!((l=this._truncateToN(l,!0)).cmpn(1)<=0||l.cmp(h)>=0)){var p=this.g.mul(l);if(!p.isInfinity()){var b=p.getX(),m=b.umod(this.n);if(0!==m.cmpn(0)){var g=l.invm(this.n).mul(m.mul(t.getPrivate()).iadd(e));if(0!==(g=g.umod(this.n)).cmpn(0)){var v=(p.getY().isOdd()?1:0)|(0!==b.cmp(m)?2:0);return a.canonical&&g.cmp(this.nh)>0&&(g=this.n.sub(g),v^=1),new s({r:m,s:g,recoveryParam:v})}}}}}},f.prototype.verify=function(e,t,r,n){e=this._truncateToN(new i(e,16)),r=this.keyFromPublic(r,n);var a=(t=new s(t,"hex")).r,o=t.s;if(a.cmpn(1)<0||a.cmp(this.n)>=0)return!1;if(o.cmpn(1)<0||o.cmp(this.n)>=0)return!1;var f,c=o.invm(this.n),u=c.mul(e).umod(this.n),h=c.mul(a).umod(this.n);return this.curve._maxwellTrick?!(f=this.g.jmulAdd(u,r.getPublic(),h)).isInfinity()&&f.eqXToP(a):!(f=this.g.mulAdd(u,r.getPublic(),h)).isInfinity()&&0===f.getX().umod(this.n).cmp(a)},f.prototype.recoverPubKey=function(e,t,r,n){a((3&r)===r,"The recovery param is more than two bits"),t=new s(t,n);var o=this.n,f=new i(e),c=t.r,u=t.s,h=1&r,d=r>>1;if(c.cmp(this.curve.p.umod(this.curve.n))>=0&&d)throw new Error("Unable to find sencond key candinate");c=d?this.curve.pointFromX(c.add(this.curve.n),h):this.curve.pointFromX(c,h);var l=o.sub(f),p=t.r.invm(o);return this.g.mulAdd(l,c,u).mul(p)},f.prototype.getKeyRecoveryParam=function(e,t,r,i){if(null!==(t=new s(t,i)).recoveryParam)return t.recoveryParam;for(var n=0;n<4;n++){var a;try{a=this.recoverPubKey(e,t,n)}catch(e){continue}if(a.eq(r))return n}throw new Error("Unable to find valid recovery factor")}},{"../../elliptic":6,"./key":14,"./signature":15,"bn.js":22}],14:[function(e,t,r){"use strict";var i=e("bn.js");function n(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)}t.exports=n,n.fromPublic=function(e,t,r){return t instanceof n?t:new n(e,{pub:t,pubEnc:r})},n.fromPrivate=function(e,t,r){return t instanceof n?t:new n(e,{priv:t,privEnc:r})},n.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"}},n.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},n.prototype.getPrivate=function(e){return"hex"===e?this.priv.toString(16,2):this.priv},n.prototype._importPrivate=function(e,t){this.priv=new i(e,t||16),this.priv=this.priv.umod(this.ec.curve.n)},n.prototype._importPublic=function(e,t){e.x||e.y?this.pub=this.ec.curve.point(e.x,e.y):this.pub=this.ec.curve.decodePoint(e,t)},n.prototype.derive=function(e){return e.mul(this.priv).getX()},n.prototype.sign=function(e,t,r){return this.ec.sign(e,this,t,r)},n.prototype.verify=function(e,t){return this.ec.verify(e,t,this)},n.prototype.inspect=function(){return"<Key priv: "+(this.priv&&this.priv.toString(16,2))+" pub: "+(this.pub&&this.pub.inspect())+" >"}},{"bn.js":22}],15:[function(e,t,r){"use strict";var i=e("bn.js"),n=e("../../elliptic").utils,a=n.assert;function o(e,t){if(e instanceof o)return e;this._importDER(e,t)||(a(e.r&&e.s,"Signature without r or s"),this.r=new i(e.r,16),this.s=new i(e.s,16),void 0===e.recoveryParam?this.recoveryParam=null:this.recoveryParam=e.recoveryParam)}function s(){this.place=0}function f(e,t){var r=e[t.place++];if(!(128&r))return r;for(var i=15&r,n=0,a=0,o=t.place;a<i;a++,o++)n<<=8,n|=e[o];return t.place=o,n}function c(e){for(var t=0,r=e.length-1;!e[t]&&!(128&e[t+1])&&t<r;)t++;return 0===t?e:e.slice(t)}function u(e,t){if(t<128)e.push(t);else{var r=1+(Math.log(t)/Math.LN2>>>3);for(e.push(128|r);--r;)e.push(t>>>(r<<3)&255);e.push(t)}}t.exports=o,o.prototype._importDER=function(e,t){e=n.toArray(e,t);var r=new s;if(48!==e[r.place++])return!1;if(f(e,r)+r.place!==e.length)return!1;if(2!==e[r.place++])return!1;var a=f(e,r),o=e.slice(r.place,a+r.place);if(r.place+=a,2!==e[r.place++])return!1;var c=f(e,r);if(e.length!==c+r.place)return!1;var u=e.slice(r.place,c+r.place);return 0===o[0]&&128&o[1]&&(o=o.slice(1)),0===u[0]&&128&u[1]&&(u=u.slice(1)),this.r=new i(o),this.s=new i(u),this.recoveryParam=null,!0},o.prototype.toDER=function(e){var t=this.r.toArray(),r=this.s.toArray();for(128&t[0]&&(t=[0].concat(t)),128&r[0]&&(r=[0].concat(r)),t=c(t),r=c(r);!(r[0]||128&r[1]);)r=r.slice(1);var i=[2];u(i,t.length),(i=i.concat(t)).push(2),u(i,r.length);var a=i.concat(r),o=[48];return u(o,a.length),o=o.concat(a),n.encode(o,e)}},{"../../elliptic":6,"bn.js":22}],16:[function(e,t,r){"use strict";var i=e("hash.js"),n=e("../../elliptic"),a=n.utils,o=a.assert,s=a.parseBytes,f=e("./key"),c=e("./signature");function u(e){if(o("ed25519"===e,"only tested with ed25519 so far"),!(this instanceof u))return new u(e);e=n.curves[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=i.sha512}t.exports=u,u.prototype.sign=function(e,t){e=s(e);var r=this.keyFromSecret(t),i=this.hashInt(r.messagePrefix(),e),n=this.g.mul(i),a=this.encodePoint(n),o=this.hashInt(a,r.pubBytes(),e).mul(r.priv()),f=i.add(o).umod(this.curve.n);return this.makeSignature({R:n,S:f,Rencoded:a})},u.prototype.verify=function(e,t,r){e=s(e),t=this.makeSignature(t);var i=this.keyFromPublic(r),n=this.hashInt(t.Rencoded(),i.pubBytes(),e),a=this.g.mul(t.S());return t.R().add(i.pub().mul(n)).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 f.fromPublic(this,e)},u.prototype.keyFromSecret=function(e){return f.fromSecret(this,e)},u.prototype.makeSignature=function(e){return e instanceof c?e:new c(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,r=e.slice(0,t).concat(-129&e[t]),i=0!=(128&e[t]),n=a.intFromLE(r);return this.curve.pointFromY(n,i)},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}},{"../../elliptic":6,"./key":17,"./signature":18,"hash.js":24}],17:[function(e,t,r){"use strict";var i=e("../../elliptic").utils,n=i.assert,a=i.parseBytes,o=i.cachedProperty;function s(e,t){this.eddsa=e,this._secret=a(t.secret),e.isPoint(t.pub)?this._pub=t.pub:this._pubBytes=a(t.pub)}s.fromPublic=function(e,t){return t instanceof s?t:new s(e,{pub:t})},s.fromSecret=function(e,t){return t instanceof s?t:new s(e,{secret:t})},s.prototype.secret=function(){return this._secret},o(s,"pubBytes",function(){return this.eddsa.encodePoint(this.pub())}),o(s,"pub",function(){return this._pubBytes?this.eddsa.decodePoint(this._pubBytes):this.eddsa.g.mul(this.priv())}),o(s,"privBytes",function(){var e=this.eddsa,t=this.hash(),r=e.encodingLength-1,i=t.slice(0,e.encodingLength);return i[0]&=248,i[r]&=127,i[r]|=64,i}),o(s,"priv",function(){return this.eddsa.decodeInt(this.privBytes())}),o(s,"hash",function(){return this.eddsa.hash().update(this.secret()).digest()}),o(s,"messagePrefix",function(){return this.hash().slice(this.eddsa.encodingLength)}),s.prototype.sign=function(e){return n(this._secret,"KeyPair can only verify"),this.eddsa.sign(e,this)},s.prototype.verify=function(e,t){return this.eddsa.verify(e,t,this)},s.prototype.getSecret=function(e){return n(this._secret,"KeyPair is public only"),i.encode(this.secret(),e)},s.prototype.getPublic=function(e){return i.encode(this.pubBytes(),e)},t.exports=s},{"../../elliptic":6}],18:[function(e,t,r){"use strict";var i=e("bn.js"),n=e("../../elliptic").utils,a=n.assert,o=n.cachedProperty,s=n.parseBytes;function f(e,t){this.eddsa=e,"object"!=typeof t&&(t=s(t)),Array.isArray(t)&&(t={R:t.slice(0,e.encodingLength),S:t.slice(e.encodingLength)}),a(t.R&&t.S,"Signature without R or S"),e.isPoint(t.R)&&(this._R=t.R),t.S instanceof i&&(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(f,"S",function(){return this.eddsa.decodeInt(this.Sencoded())}),o(f,"R",function(){return this.eddsa.decodePoint(this.Rencoded())}),o(f,"Rencoded",function(){return this.eddsa.encodePoint(this.R())}),o(f,"Sencoded",function(){return this.eddsa.encodeInt(this.S())}),f.prototype.toBytes=function(){return this.Rencoded().concat(this.Sencoded())},f.prototype.toHex=function(){return n.encode(this.toBytes(),"hex").toUpperCase()},t.exports=f},{"../../elliptic":6,"bn.js":22}],19:[function(e,t,r){"use strict";var i=e("hash.js"),n=e("../elliptic").utils,a=n.assert;function o(e){if(!(this instanceof o))return new o(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=n.toArray(e.entropy,e.entropyEnc),r=n.toArray(e.nonce,e.nonceEnc),i=n.toArray(e.pers,e.persEnc);a(t.length>=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits"),this._init(t,r,i)}t.exports=o,o.prototype._init=function(e,t,r){var i=e.concat(t).concat(r);this.K=new Array(this.outLen/8),this.V=new Array(this.outLen/8);for(var n=0;n<this.V.length;n++)this.K[n]=0,this.V[n]=1;this._update(i),this.reseed=1,this.reseedInterval=281474976710656},o.prototype._hmac=function(){return new i.hmac(this.hash,this.K)},o.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())},o.prototype.reseed=function(e,t,r,i){"string"!=typeof t&&(i=r,r=t,t=null),e=n.toBuffer(e,t),r=n.toBuffer(r,i),a(e.length>=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits"),this._update(e.concat(r||[])),this.reseed=1},o.prototype.generate=function(e,t,r,i){if(this.reseed>this.reseedInterval)throw new Error("Reseed is required");"string"!=typeof t&&(i=r,r=t,t=null),r&&(r=n.toArray(r,i),this._update(r));for(var a=[];a.length<e;)this.V=this._hmac().update(this.V).digest(),a=a.concat(this.V);var o=a.slice(0,e);return this._update(r),this.reseed++,n.encode(o,t)}},{"../elliptic":6,"hash.js":24}],20:[function(e,t,r){t.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"]]}}},{}],21:[function(e,t,r){"use strict";var i=r,n=e("bn.js");function a(e){return 1===e.length?"0"+e:e}function o(e){for(var t="",r=0;r<e.length;r++)t+=a(e[r].toString(16));return t}i.assert=function(e,t){if(!e)throw new Error(t||"Assertion failed")},i.toArray=function(e,t){if(Array.isArray(e))return e.slice();if(!e)return[];var r=[];if("string"!=typeof e){for(var i=0;i<e.length;i++)r[i]=0|e[i];return r}if(t){if("hex"===t){(e=e.replace(/[^a-z0-9]+/gi,"")).length%2!=0&&(e="0"+e);for(i=0;i<e.length;i+=2)r.push(parseInt(e[i]+e[i+1],16))}}else for(var i=0;i<e.length;i++){var n=e.charCodeAt(i),a=n>>8,o=255&n;a?r.push(a,o):r.push(o)}return r},i.zero2=a,i.toHex=o,i.encode=function(e,t){return"hex"===t?o(e):e},i.getNAF=function(e,t){for(var r=[],i=1<<t+1,n=e.clone();n.cmpn(1)>=0;){var a;if(n.isOdd()){var o=n.andln(i-1);a=o>(i>>1)-1?(i>>1)-o:o,n.isubn(a)}else a=0;r.push(a);for(var s=0!==n.cmpn(0)&&0===n.andln(i-1)?t+1:1,f=1;f<s;f++)r.push(0);n.iushrn(s)}return r},i.getJSF=function(e,t){var r=[[],[]];e=e.clone(),t=t.clone();for(var i=0,n=0;e.cmpn(-i)>0||t.cmpn(-n)>0;){var a,o,s,f=e.andln(3)+i&3,c=t.andln(3)+n&3;if(3===f&&(f=-1),3===c&&(c=-1),0==(1&f))a=0;else a=3!==(s=e.andln(7)+i&7)&&5!==s||2!==c?f:-f;if(r[0].push(a),0==(1&c))o=0;else o=3!==(s=t.andln(7)+n&7)&&5!==s||2!==f?c:-c;r[1].push(o),2*i===a+1&&(i=1-i),2*n===o+1&&(n=1-n),e.iushrn(1),t.iushrn(1)}return r},i.cachedProperty=function(e,t,r){var i="_"+t;e.prototype[t]=function(){return void 0!==this[i]?this[i]:this[i]=r.call(this)}},i.parseBytes=function(e){return"string"==typeof e?i.toArray(e,"hex"):e},i.intFromLE=function(e){return new n(e,"hex","le")}},{"bn.js":22}],22:[function(e,t,r){!function(t,r){"use strict";function i(e,t){if(!e)throw new Error(t||"Assertion failed")}function n(e,t){e.super_=t;var r=function(){};r.prototype=t.prototype,e.prototype=new r,e.prototype.constructor=e}function a(e,t,r){if(a.isBN(e))return e;this.negative=0,this.words=null,this.length=0,this.red=null,null!==e&&("le"!==t&&"be"!==t||(r=t,t=10),this._init(e||0,t||10,r||"be"))}var o;"object"==typeof t?t.exports=a:r.BN=a,a.BN=a,a.wordSize=26;try{o=e("buffer").Buffer}catch(e){}function s(e,t,r){for(var i=0,n=Math.min(e.length,r),a=t;a<n;a++){var o=e.charCodeAt(a)-48;i<<=4,i|=o>=49&&o<=54?o-49+10:o>=17&&o<=22?o-17+10:15&o}return i}function f(e,t,r,i){for(var n=0,a=Math.min(e.length,r),o=t;o<a;o++){var s=e.charCodeAt(o)-48;n*=i,n+=s>=49?s-49+10:s>=17?s-17+10:s}return n}a.isBN=function(e){return e instanceof a||null!==e&&"object"==typeof e&&e.constructor.wordSize===a.wordSize&&Array.isArray(e.words)},a.max=function(e,t){return e.cmp(t)>0?e:t},a.min=function(e,t){return e.cmp(t)<0?e:t},a.prototype._init=function(e,t,r){if("number"==typeof e)return this._initNumber(e,t,r);if("object"==typeof e)return this._initArray(e,t,r);"hex"===t&&(t=16),i(t===(0|t)&&t>=2&&t<=36);var n=0;"-"===(e=e.toString().replace(/\s+/g,""))[0]&&n++,16===t?this._parseHex(e,n):this._parseBase(e,t,n),"-"===e[0]&&(this.negative=1),this.strip(),"le"===r&&this._initArray(this.toArray(),t,r)},a.prototype._initNumber=function(e,t,r){e<0&&(this.negative=1,e=-e),e<67108864?(this.words=[67108863&e],this.length=1):e<4503599627370496?(this.words=[67108863&e,e/67108864&67108863],this.length=2):(i(e<9007199254740992),this.words=[67108863&e,e/67108864&67108863,1],this.length=3),"le"===r&&this._initArray(this.toArray(),t,r)},a.prototype._initArray=function(e,t,r){if(i("number"==typeof e.length),e.length<=0)return this.words=[0],this.length=1,this;this.length=Math.ceil(e.length/3),this.words=new Array(this.length);for(var n=0;n<this.length;n++)this.words[n]=0;var a,o,s=0;if("be"===r)for(n=e.length-1,a=0;n>=0;n-=3)o=e[n]|e[n-1]<<8|e[n-2]<<16,this.words[a]|=o<<s&67108863,this.words[a+1]=o>>>26-s&67108863,(s+=24)>=26&&(s-=26,a++);else if("le"===r)for(n=0,a=0;n<e.length;n+=3)o=e[n]|e[n+1]<<8|e[n+2]<<16,this.words[a]|=o<<s&67108863,this.words[a+1]=o>>>26-s&67108863,(s+=24)>=26&&(s-=26,a++);return this.strip()},a.prototype._parseHex=function(e,t){this.length=Math.ceil((e.length-t)/6),this.words=new Array(this.length);for(var r=0;r<this.length;r++)this.words[r]=0;var i,n,a=0;for(r=e.length-6,i=0;r>=t;r-=6)n=s(e,r,r+6),this.words[i]|=n<<a&67108863,this.words[i+1]|=n>>>26-a&4194303,(a+=24)>=26&&(a-=26,i++);r+6!==t&&(n=s(e,t,r+6),this.words[i]|=n<<a&67108863,this.words[i+1]|=n>>>26-a&4194303),this.strip()},a.prototype._parseBase=function(e,t,r){this.words=[0],this.length=1;for(var i=0,n=1;n<=67108863;n*=t)i++;i--,n=n/t|0;for(var a=e.length-r,o=a%i,s=Math.min(a,a-o)+r,c=0,u=r;u<s;u+=i)c=f(e,u,u+i,t),this.imuln(n),this.words[0]+c<67108864?this.words[0]+=c:this._iaddn(c);if(0!==o){var h=1;for(c=f(e,u,e.length,t),u=0;u<o;u++)h*=t;this.imuln(h),this.words[0]+c<67108864?this.words[0]+=c:this._iaddn(c)}},a.prototype.copy=function(e){e.words=new Array(this.length);for(var t=0;t<this.length;t++)e.words[t]=this.words[t];e.length=this.length,e.negative=this.negative,e.red=this.red},a.prototype.clone=function(){var e=new a(null);return this.copy(e),e},a.prototype._expand=function(e){for(;this.length<e;)this.words[this.length++]=0;return this},a.prototype.strip=function(){for(;this.length>1&&0===this.words[this.length-1];)this.length--;return this._normSign()},a.prototype._normSign=function(){return 1===this.length&&0===this.words[0]&&(this.negative=0),this},a.prototype.inspect=function(){return(this.red?"<BN-R: ":"<BN: ")+this.toString(16)+">"};var c=["","0","00","000","0000","00000","000000","0000000","00000000","000000000","0000000000","00000000000","000000000000","0000000000000","00000000000000","000000000000000","0000000000000000","00000000000000000","000000000000000000","0000000000000000000","00000000000000000000","000000000000000000000","0000000000000000000000","00000000000000000000000","000000000000000000000000","0000000000000000000000000"],u=[0,0,25,16,12,11,10,9,8,8,7,7,7,7,6,6,6,6,6,6,6,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5],h=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64e6,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,243e5,28629151,33554432,39135393,45435424,52521875,60466176];function d(e,t,r){r.negative=t.negative^e.negative;var i=e.length+t.length|0;r.length=i,i=i-1|0;var n=0|e.words[0],a=0|t.words[0],o=n*a,s=67108863&o,f=o/67108864|0;r.words[0]=s;for(var c=1;c<i;c++){for(var u=f>>>26,h=67108863&f,d=Math.min(c,t.length-1),l=Math.max(0,c-e.length+1);l<=d;l++){var p=c-l|0;u+=(o=(n=0|e.words[p])*(a=0|t.words[l])+h)/67108864|0,h=67108863&o}r.words[c]=0|h,f=0|u}return 0!==f?r.words[c]=0|f:r.length--,r.strip()}a.prototype.toString=function(e,t){var r;if(t=0|t||1,16===(e=e||10)||"hex"===e){r="";for(var n=0,a=0,o=0;o<this.length;o++){var s=this.words[o],f=(16777215&(s<<n|a)).toString(16);r=0!==(a=s>>>24-n&16777215)||o!==this.length-1?c[6-f.length]+f+r:f+r,(n+=2)>=26&&(n-=26,o--)}for(0!==a&&(r=a.toString(16)+r);r.length%t!=0;)r="0"+r;return 0!==this.negative&&(r="-"+r),r}if(e===(0|e)&&e>=2&&e<=36){var d=u[e],l=h[e];r="";var p=this.clone();for(p.negative=0;!p.isZero();){var b=p.modn(l).toString(e);r=(p=p.idivn(l)).isZero()?b+r:c[d-b.length]+b+r}for(this.isZero()&&(r="0"+r);r.length%t!=0;)r="0"+r;return 0!==this.negative&&(r="-"+r),r}i(!1,"Base should be between 2 and 36")},a.prototype.toNumber=function(){var e=this.words[0];return 2===this.length?e+=67108864*this.words[1]:3===this.length&&1===this.words[2]?e+=4503599627370496+67108864*this.words[1]:this.length>2&&i(!1,"Number can only safely store up to 53 bits"),0!==this.negative?-e:e},a.prototype.toJSON=function(){return this.toString(16)},a.prototype.toBuffer=function(e,t){return void 0===o&&(o=Uint8Array),this.toArrayLike(o,e,t)},a.prototype.toArray=function(e,t){return this.toArrayLike(Array,e,t)},a.prototype.toArrayLike=function(e,t,r){var n=this.byteLength(),a=r||Math.max(1,n);i(n<=a,"byte array longer than desired length"),i(a>0,"Requested array length <= 0"),this.strip();var o,s,f="le"===t,c=new e(a),u=this.clone();if(f){for(s=0;!u.isZero();s++)o=u.andln(255),u.iushrn(8),c[s]=o;for(;s<a;s++)c[s]=0}else{for(s=0;s<a-n;s++)c[s]=0;for(s=0;!u.isZero();s++)o=u.andln(255),u.iushrn(8),c[a-s-1]=o}return c},Math.clz32?a.prototype._countBits=function(e){return 32-Math.clz32(e)}:a.prototype._countBits=function(e){var t=e,r=0;return t>=4096&&(r+=13,t>>>=13),t>=64&&(r+=7,t>>>=7),t>=8&&(r+=4,t>>>=4),t>=2&&(r+=2,t>>>=2),r+t},a.prototype._zeroBits=function(e){if(0===e)return 26;var t=e,r=0;return 0==(8191&t)&&(r+=13,t>>>=13),0==(127&t)&&(r+=7,t>>>=7),0==(15&t)&&(r+=4,t>>>=4),0==(3&t)&&(r+=2,t>>>=2),0==(1&t)&&r++,r},a.prototype.bitLength=function(){var e=this.words[this.length-1],t=this._countBits(e);return 26*(this.length-1)+t},a.prototype.zeroBits=function(){if(this.isZero())return 0;for(var e=0,t=0;t<this.length;t++){var r=this._zeroBits(this.words[t]);if(e+=r,26!==r)break}return e},a.prototype.byteLength=function(){return Math.ceil(this.bitLength()/8)},a.prototype.toTwos=function(e){return 0!==this.negative?this.abs().inotn(e).iaddn(1):this.clone()},a.prototype.fromTwos=function(e){return this.testn(e-1)?this.notn(e).iaddn(1).ineg():this.clone()},a.prototype.isNeg=function(){return 0!==this.negative},a.prototype.neg=function(){return this.clone().ineg()},a.prototype.ineg=function(){return this.isZero()||(this.negative^=1),this},a.prototype.iuor=function(e){for(;this.length<e.length;)this.words[this.length++]=0;for(var t=0;t<e.length;t++)this.words[t]=this.words[t]|e.words[t];return this.strip()},a.prototype.ior=function(e){return i(0==(this.negative|e.negative)),this.iuor(e)},a.prototype.or=function(e){return this.length>e.length?this.clone().ior(e):e.clone().ior(this)},a.prototype.uor=function(e){return this.length>e.length?this.clone().iuor(e):e.clone().iuor(this)},a.prototype.iuand=function(e){var t;t=this.length>e.length?e:this;for(var r=0;r<t.length;r++)this.words[r]=this.words[r]&e.words[r];return this.length=t.length,this.strip()},a.prototype.iand=function(e){return i(0==(this.negative|e.negative)),this.iuand(e)},a.prototype.and=function(e){return this.length>e.length?this.clone().iand(e):e.clone().iand(this)},a.prototype.uand=function(e){return this.length>e.length?this.clone().iuand(e):e.clone().iuand(this)},a.prototype.iuxor=function(e){var t,r;this.length>e.length?(t=this,r=e):(t=e,r=this);for(var i=0;i<r.length;i++)this.words[i]=t.words[i]^r.words[i];if(this!==t)for(;i<t.length;i++)this.words[i]=t.words[i];return this.length=t.length,this.strip()},a.prototype.ixor=function(e){return i(0==(this.negative|e.negative)),this.iuxor(e)},a.prototype.xor=function(e){return this.length>e.length?this.clone().ixor(e):e.clone().ixor(this)},a.prototype.uxor=function(e){return this.length>e.length?this.clone().iuxor(e):e.clone().iuxor(this)},a.prototype.inotn=function(e){i("number"==typeof e&&e>=0);var t=0|Math.ceil(e/26),r=e%26;this._expand(t),r>0&&t--;for(var n=0;n<t;n++)this.words[n]=67108863&~this.words[n];return r>0&&(this.words[n]=~this.words[n]&67108863>>26-r),this.strip()},a.prototype.notn=function(e){return this.clone().inotn(e)},a.prototype.setn=function(e,t){i("number"==typeof e&&e>=0);var r=e/26|0,n=e%26;return this._expand(r+1),this.words[r]=t?this.words[r]|1<<n:this.words[r]&~(1<<n),this.strip()},a.prototype.iadd=function(e){var t,r,i;if(0!==this.negative&&0===e.negative)return this.negative=0,t=this.isub(e),this.negative^=1,this._normSign();if(0===this.negative&&0!==e.negative)return e.negative=0,t=this.isub(e),e.negative=1,t._normSign();this.length>e.length?(r=this,i=e):(r=e,i=this);for(var n=0,a=0;a<i.length;a++)t=(0|r.words[a])+(0|i.words[a])+n,this.words[a]=67108863&t,n=t>>>26;for(;0!==n&&a<r.length;a++)t=(0|r.words[a])+n,this.words[a]=67108863&t,n=t>>>26;if(this.length=r.length,0!==n)this.words[this.length]=n,this.length++;else if(r!==this)for(;a<r.length;a++)this.words[a]=r.words[a];return this},a.prototype.add=function(e){var t;return 0!==e.negative&&0===this.negative?(e.negative=0,t=this.sub(e),e.negative^=1,t):0===e.negative&&0!==this.negative?(this.negative=0,t=e.sub(this),this.negative=1,t):this.length>e.length?this.clone().iadd(e):e.clone().iadd(this)},a.prototype.isub=function(e){if(0!==e.negative){e.negative=0;var t=this.iadd(e);return e.negative=1,t._normSign()}if(0!==this.negative)return this.negative=0,this.iadd(e),this.negative=1,this._normSign();var r,i,n=this.cmp(e);if(0===n)return this.negative=0,this.length=1,this.words[0]=0,this;n>0?(r=this,i=e):(r=e,i=this);for(var a=0,o=0;o<i.length;o++)a=(t=(0|r.words[o])-(0|i.words[o])+a)>>26,this.words[o]=67108863&t;for(;0!==a&&o<r.length;o++)a=(t=(0|r.words[o])+a)>>26,this.words[o]=67108863&t;if(0===a&&o<r.length&&r!==this)for(;o<r.length;o++)this.words[o]=r.words[o];return this.length=Math.max(this.length,o),r!==this&&(this.negative=1),this.strip()},a.prototype.sub=function(e){return this.clone().isub(e)};var l=function(e,t,r){var i,n,a,o=e.words,s=t.words,f=r.words,c=0,u=0|o[0],h=8191&u,d=u>>>13,l=0|o[1],p=8191&l,b=l>>>13,m=0|o[2],g=8191&m,v=m>>>13,y=0|o[3],w=8191&y,_=y>>>13,S=0|o[4],M=8191&S,x=S>>>13,k=0|o[5],A=8191&k,E=k>>>13,I=0|o[6],j=8191&I,B=I>>>13,z=0|o[7],C=8191&z,P=z>>>13,R=0|o[8],T=8191&R,q=R>>>13,O=0|o[9],L=8191&O,N=O>>>13,U=0|s[0],D=8191&U,H=U>>>13,F=0|s[1],K=8191&F,V=F>>>13,W=0|s[2],G=8191&W,X=W>>>13,Z=0|s[3],Y=8191&Z,J=Z>>>13,Q=0|s[4],$=8191&Q,ee=Q>>>13,te=0|s[5],re=8191&te,ie=te>>>13,ne=0|s[6],ae=8191&ne,oe=ne>>>13,se=0|s[7],fe=8191&se,ce=se>>>13,ue=0|s[8],he=8191&ue,de=ue>>>13,le=0|s[9],pe=8191&le,be=le>>>13;r.negative=e.negative^t.negative,r.length=19;var me=(c+(i=Math.imul(h,D))|0)+((8191&(n=(n=Math.imul(h,H))+Math.imul(d,D)|0))<<13)|0;c=((a=Math.imul(d,H))+(n>>>13)|0)+(me>>>26)|0,me&=67108863,i=Math.imul(p,D),n=(n=Math.imul(p,H))+Math.imul(b,D)|0,a=Math.imul(b,H);var ge=(c+(i=i+Math.imul(h,K)|0)|0)+((8191&(n=(n=n+Math.imul(h,V)|0)+Math.imul(d,K)|0))<<13)|0;c=((a=a+Math.imul(d,V)|0)+(n>>>13)|0)+(ge>>>26)|0,ge&=67108863,i=Math.imul(g,D),n=(n=Math.imul(g,H))+Math.imul(v,D)|0,a=Math.imul(v,H),i=i+Math.imul(p,K)|0,n=(n=n+Math.imul(p,V)|0)+Math.imul(b,K)|0,a=a+Math.imul(b,V)|0;var ve=(c+(i=i+Math.imul(h,G)|0)|0)+((8191&(n=(n=n+Math.imul(h,X)|0)+Math.imul(d,G)|0))<<13)|0;c=((a=a+Math.imul(d,X)|0)+(n>>>13)|0)+(ve>>>26)|0,ve&=67108863,i=Math.imul(w,D),n=(n=Math.imul(w,H))+Math.imul(_,D)|0,a=Math.imul(_,H),i=i+Math.imul(g,K)|0,n=(n=n+Math.imul(g,V)|0)+Math.imul(v,K)|0,a=a+Math.imul(v,V)|0,i=i+Math.imul(p,G)|0,n=(n=n+Math.imul(p,X)|0)+Math.imul(b,G)|0,a=a+Math.imul(b,X)|0;var ye=(c+(i=i+Math.imul(h,Y)|0)|0)+((8191&(n=(n=n+Math.imul(h,J)|0)+Math.imul(d,Y)|0))<<13)|0;c=((a=a+Math.imul(d,J)|0)+(n>>>13)|0)+(ye>>>26)|0,ye&=67108863,i=Math.imul(M,D),n=(n=Math.imul(M,H))+Math.imul(x,D)|0,a=Math.imul(x,H),i=i+Math.imul(w,K)|0,n=(n=n+Math.imul(w,V)|0)+Math.imul(_,K)|0,a=a+Math.imul(_,V)|0,i=i+Math.imul(g,G)|0,n=(n=n+Math.imul(g,X)|0)+Math.imul(v,G)|0,a=a+Math.imul(v,X)|0,i=i+Math.imul(p,Y)|0,n=(n=n+Math.imul(p,J)|0)+Math.imul(b,Y)|0,a=a+Math.imul(b,J)|0;var we=(c+(i=i+Math.imul(h,$)|0)|0)+((8191&(n=(n=n+Math.imul(h,ee)|0)+Math.imul(d,$)|0))<<13)|0;c=((a=a+Math.imul(d,ee)|0)+(n>>>13)|0)+(we>>>26)|0,we&=67108863,i=Math.imul(A,D),n=(n=Math.imul(A,H))+Math.imul(E,D)|0,a=Math.imul(E,H),i=i+Math.imul(M,K)|0,n=(n=n+Math.imul(M,V)|0)+Math.imul(x,K)|0,a=a+Math.imul(x,V)|0,i=i+Math.imul(w,G)|0,n=(n=n+Math.imul(w,X)|0)+Math.imul(_,G)|0,a=a+Math.imul(_,X)|0,i=i+Math.imul(g,Y)|0,n=(n=n+Math.imul(g,J)|0)+Math.imul(v,Y)|0,a=a+Math.imul(v,J)|0,i=i+Math.imul(p,$)|0,n=(n=n+Math.imul(p,ee)|0)+Math.imul(b,$)|0,a=a+Math.imul(b,ee)|0;var _e=(c+(i=i+Math.imul(h,re)|0)|0)+((8191&(n=(n=n+Math.imul(h,ie)|0)+Math.imul(d,re)|0))<<13)|0;c=((a=a+Math.imul(d,ie)|0)+(n>>>13)|0)+(_e>>>26)|0,_e&=67108863,i=Math.imul(j,D),n=(n=Math.imul(j,H))+Math.imul(B,D)|0,a=Math.imul(B,H),i=i+Math.imul(A,K)|0,n=(n=n+Math.imul(A,V)|0)+Math.imul(E,K)|0,a=a+Math.imul(E,V)|0,i=i+Math.imul(M,G)|0,n=(n=n+Math.imul(M,X)|0)+Math.imul(x,G)|0,a=a+Math.imul(x,X)|0,i=i+Math.imul(w,Y)|0,n=(n=n+Math.imul(w,J)|0)+Math.imul(_,Y)|0,a=a+Math.imul(_,J)|0,i=i+Math.imul(g,$)|0,n=(n=n+Math.imul(g,ee)|0)+Math.imul(v,$)|0,a=a+Math.imul(v,ee)|0,i=i+Math.imul(p,re)|0,n=(n=n+Math.imul(p,ie)|0)+Math.imul(b,re)|0,a=a+Math.imul(b,ie)|0;var Se=(c+(i=i+Math.imul(h,ae)|0)|0)+((8191&(n=(n=n+Math.imul(h,oe)|0)+Math.imul(d,ae)|0))<<13)|0;c=((a=a+Math.imul(d,oe)|0)+(n>>>13)|0)+(Se>>>26)|0,Se&=67108863,i=Math.imul(C,D),n=(n=Math.imul(C,H))+Math.imul(P,D)|0,a=Math.imul(P,H),i=i+Math.imul(j,K)|0,n=(n=n+Math.imul(j,V)|0)+Math.imul(B,K)|0,a=a+Math.imul(B,V)|0,i=i+Math.imul(A,G)|0,n=(n=n+Math.imul(A,X)|0)+Math.imul(E,G)|0,a=a+Math.imul(E,X)|0,i=i+Math.imul(M,Y)|0,n=(n=n+Math.imul(M,J)|0)+Math.imul(x,Y)|0,a=a+Math.imul(x,J)|0,i=i+Math.imul(w,$)|0,n=(n=n+Math.imul(w,ee)|0)+Math.imul(_,$)|0,a=a+Math.imul(_,ee)|0,i=i+Math.imul(g,re)|0,n=(n=n+Math.imul(g,ie)|0)+Math.imul(v,re)|0,a=a+Math.imul(v,ie)|0,i=i+Math.imul(p,ae)|0,n=(n=n+Math.imul(p,oe)|0)+Math.imul(b,ae)|0,a=a+Math.imul(b,oe)|0;var Me=(c+(i=i+Math.imul(h,fe)|0)|0)+((8191&(n=(n=n+Math.imul(h,ce)|0)+Math.imul(d,fe)|0))<<13)|0;c=((a=a+Math.imul(d,ce)|0)+(n>>>13)|0)+(Me>>>26)|0,Me&=67108863,i=Math.imul(T,D),n=(n=Math.imul(T,H))+Math.imul(q,D)|0,a=Math.imul(q,H),i=i+Math.imul(C,K)|0,n=(n=n+Math.imul(C,V)|0)+Math.imul(P,K)|0,a=a+Math.imul(P,V)|0,i=i+Math.imul(j,G)|0,n=(n=n+Math.imul(j,X)|0)+Math.imul(B,G)|0,a=a+Math.imul(B,X)|0,i=i+Math.imul(A,Y)|0,n=(n=n+Math.imul(A,J)|0)+Math.imul(E,Y)|0,a=a+Math.imul(E,J)|0,i=i+Math.imul(M,$)|0,n=(n=n+Math.imul(M,ee)|0)+Math.imul(x,$)|0,a=a+Math.imul(x,ee)|0,i=i+Math.imul(w,re)|0,n=(n=n+Math.imul(w,ie)|0)+Math.imul(_,re)|0,a=a+Math.imul(_,ie)|0,i=i+Math.imul(g,ae)|0,n=(n=n+Math.imul(g,oe)|0)+Math.imul(v,ae)|0,a=a+Math.imul(v,oe)|0,i=i+Math.imul(p,fe)|0,n=(n=n+Math.imul(p,ce)|0)+Math.imul(b,fe)|0,a=a+Math.imul(b,ce)|0;var xe=(c+(i=i+Math.imul(h,he)|0)|0)+((8191&(n=(n=n+Math.imul(h,de)|0)+Math.imul(d,he)|0))<<13)|0;c=((a=a+Math.imul(d,de)|0)+(n>>>13)|0)+(xe>>>26)|0,xe&=67108863,i=Math.imul(L,D),n=(n=Math.imul(L,H))+Math.imul(N,D)|0,a=Math.imul(N,H),i=i+Math.imul(T,K)|0,n=(n=n+Math.imul(T,V)|0)+Math.imul(q,K)|0,a=a+Math.imul(q,V)|0,i=i+Math.imul(C,G)|0,n=(n=n+Math.imul(C,X)|0)+Math.imul(P,G)|0,a=a+Math.imul(P,X)|0,i=i+Math.imul(j,Y)|0,n=(n=n+Math.imul(j,J)|0)+Math.imul(B,Y)|0,a=a+Math.imul(B,J)|0,i=i+Math.imul(A,$)|0,n=(n=n+Math.imul(A,ee)|0)+Math.imul(E,$)|0,a=a+Math.imul(E,ee)|0,i=i+Math.imul(M,re)|0,n=(n=n+Math.imul(M,ie)|0)+Math.imul(x,re)|0,a=a+Math.imul(x,ie)|0,i=i+Math.imul(w,ae)|0,n=(n=n+Math.imul(w,oe)|0)+Math.imul(_,ae)|0,a=a+Math.imul(_,oe)|0,i=i+Math.imul(g,fe)|0,n=(n=n+Math.imul(g,ce)|0)+Math.imul(v,fe)|0,a=a+Math.imul(v,ce)|0,i=i+Math.imul(p,he)|0,n=(n=n+Math.imul(p,de)|0)+Math.imul(b,he)|0,a=a+Math.imul(b,de)|0;var ke=(c+(i=i+Math.imul(h,pe)|0)|0)+((8191&(n=(n=n+Math.imul(h,be)|0)+Math.imul(d,pe)|0))<<13)|0;c=((a=a+Math.imul(d,be)|0)+(n>>>13)|0)+(ke>>>26)|0,ke&=67108863,i=Math.imul(L,K),n=(n=Math.imul(L,V))+Math.imul(N,K)|0,a=Math.imul(N,V),i=i+Math.imul(T,G)|0,n=(n=n+Math.imul(T,X)|0)+Math.imul(q,G)|0,a=a+Math.imul(q,X)|0,i=i+Math.imul(C,Y)|0,n=(n=n+Math.imul(C,J)|0)+Math.imul(P,Y)|0,a=a+Math.imul(P,J)|0,i=i+Math.imul(j,$)|0,n=(n=n+Math.imul(j,ee)|0)+Math.imul(B,$)|0,a=a+Math.imul(B,ee)|0,i=i+Math.imul(A,re)|0,n=(n=n+Math.imul(A,ie)|0)+Math.imul(E,re)|0,a=a+Math.imul(E,ie)|0,i=i+Math.imul(M,ae)|0,n=(n=n+Math.imul(M,oe)|0)+Math.imul(x,ae)|0,a=a+Math.imul(x,oe)|0,i=i+Math.imul(w,fe)|0,n=(n=n+Math.imul(w,ce)|0)+Math.imul(_,fe)|0,a=a+Math.imul(_,ce)|0,i=i+Math.imul(g,he)|0,n=(n=n+Math.imul(g,de)|0)+Math.imul(v,he)|0,a=a+Math.imul(v,de)|0;var Ae=(c+(i=i+Math.imul(p,pe)|0)|0)+((8191&(n=(n=n+Math.imul(p,be)|0)+Math.imul(b,pe)|0))<<13)|0;c=((a=a+Math.imul(b,be)|0)+(n>>>13)|0)+(Ae>>>26)|0,Ae&=67108863,i=Math.imul(L,G),n=(n=Math.imul(L,X))+Math.imul(N,G)|0,a=Math.imul(N,X),i=i+Math.imul(T,Y)|0,n=(n=n+Math.imul(T,J)|0)+Math.imul(q,Y)|0,a=a+Math.imul(q,J)|0,i=i+Math.imul(C,$)|0,n=(n=n+Math.imul(C,ee)|0)+Math.imul(P,$)|0,a=a+Math.imul(P,ee)|0,i=i+Math.imul(j,re)|0,n=(n=n+Math.imul(j,ie)|0)+Math.imul(B,re)|0,a=a+Math.imul(B,ie)|0,i=i+Math.imul(A,ae)|0,n=(n=n+Math.imul(A,oe)|0)+Math.imul(E,ae)|0,a=a+Math.imul(E,oe)|0,i=i+Math.imul(M,fe)|0,n=(n=n+Math.imul(M,ce)|0)+Math.imul(x,fe)|0,a=a+Math.imul(x,ce)|0,i=i+Math.imul(w,he)|0,n=(n=n+Math.imul(w,de)|0)+Math.imul(_,he)|0,a=a+Math.imul(_,de)|0;var Ee=(c+(i=i+Math.imul(g,pe)|0)|0)+((8191&(n=(n=n+Math.imul(g,be)|0)+Math.imul(v,pe)|0))<<13)|0;c=((a=a+Math.imul(v,be)|0)+(n>>>13)|0)+(Ee>>>26)|0,Ee&=67108863,i=Math.imul(L,Y),n=(n=Math.imul(L,J))+Math.imul(N,Y)|0,a=Math.imul(N,J),i=i+Math.imul(T,$)|0,n=(n=n+Math.imul(T,ee)|0)+Math.imul(q,$)|0,a=a+Math.imul(q,ee)|0,i=i+Math.imul(C,re)|0,n=(n=n+Math.imul(C,ie)|0)+Math.imul(P,re)|0,a=a+Math.imul(P,ie)|0,i=i+Math.imul(j,ae)|0,n=(n=n+Math.imul(j,oe)|0)+Math.imul(B,ae)|0,a=a+Math.imul(B,oe)|0,i=i+Math.imul(A,fe)|0,n=(n=n+Math.imul(A,ce)|0)+Math.imul(E,fe)|0,a=a+Math.imul(E,ce)|0,i=i+Math.imul(M,he)|0,n=(n=n+Math.imul(M,de)|0)+Math.imul(x,he)|0,a=a+Math.imul(x,de)|0;var Ie=(c+(i=i+Math.imul(w,pe)|0)|0)+((8191&(n=(n=n+Math.imul(w,be)|0)+Math.imul(_,pe)|0))<<13)|0;c=((a=a+Math.imul(_,be)|0)+(n>>>13)|0)+(Ie>>>26)|0,Ie&=67108863,i=Math.imul(L,$),n=(n=Math.imul(L,ee))+Math.imul(N,$)|0,a=Math.imul(N,ee),i=i+Math.imul(T,re)|0,n=(n=n+Math.imul(T,ie)|0)+Math.imul(q,re)|0,a=a+Math.imul(q,ie)|0,i=i+Math.imul(C,ae)|0,n=(n=n+Math.imul(C,oe)|0)+Math.imul(P,ae)|0,a=a+Math.imul(P,oe)|0,i=i+Math.imul(j,fe)|0,n=(n=n+Math.imul(j,ce)|0)+Math.imul(B,fe)|0,a=a+Math.imul(B,ce)|0,i=i+Math.imul(A,he)|0,n=(n=n+Math.imul(A,de)|0)+Math.imul(E,he)|0,a=a+Math.imul(E,de)|0;var je=(c+(i=i+Math.imul(M,pe)|0)|0)+((8191&(n=(n=n+Math.imul(M,be)|0)+Math.imul(x,pe)|0))<<13)|0;c=((a=a+Math.imul(x,be)|0)+(n>>>13)|0)+(je>>>26)|0,je&=67108863,i=Math.imul(L,re),n=(n=Math.imul(L,ie))+Math.imul(N,re)|0,a=Math.imul(N,ie),i=i+Math.imul(T,ae)|0,n=(n=n+Math.imul(T,oe)|0)+Math.imul(q,ae)|0,a=a+Math.imul(q,oe)|0,i=i+Math.imul(C,fe)|0,n=(n=n+Math.imul(C,ce)|0)+Math.imul(P,fe)|0,a=a+Math.imul(P,ce)|0,i=i+Math.imul(j,he)|0,n=(n=n+Math.imul(j,de)|0)+Math.imul(B,he)|0,a=a+Math.imul(B,de)|0;var Be=(c+(i=i+Math.imul(A,pe)|0)|0)+((8191&(n=(n=n+Math.imul(A,be)|0)+Math.imul(E,pe)|0))<<13)|0;c=((a=a+Math.imul(E,be)|0)+(n>>>13)|0)+(Be>>>26)|0,Be&=67108863,i=Math.imul(L,ae),n=(n=Math.imul(L,oe))+Math.imul(N,ae)|0,a=Math.imul(N,oe),i=i+Math.imul(T,fe)|0,n=(n=n+Math.imul(T,ce)|0)+Math.imul(q,fe)|0,a=a+Math.imul(q,ce)|0,i=i+Math.imul(C,he)|0,n=(n=n+Math.imul(C,de)|0)+Math.imul(P,he)|0,a=a+Math.imul(P,de)|0;var ze=(c+(i=i+Math.imul(j,pe)|0)|0)+((8191&(n=(n=n+Math.imul(j,be)|0)+Math.imul(B,pe)|0))<<13)|0;c=((a=a+Math.imul(B,be)|0)+(n>>>13)|0)+(ze>>>26)|0,ze&=67108863,i=Math.imul(L,fe),n=(n=Math.imul(L,ce))+Math.imul(N,fe)|0,a=Math.imul(N,ce),i=i+Math.imul(T,he)|0,n=(n=n+Math.imul(T,de)|0)+Math.imul(q,he)|0,a=a+Math.imul(q,de)|0;var Ce=(c+(i=i+Math.imul(C,pe)|0)|0)+((8191&(n=(n=n+Math.imul(C,be)|0)+Math.imul(P,pe)|0))<<13)|0;c=((a=a+Math.imul(P,be)|0)+(n>>>13)|0)+(Ce>>>26)|0,Ce&=67108863,i=Math.imul(L,he),n=(n=Math.imul(L,de))+Math.imul(N,he)|0,a=Math.imul(N,de);var Pe=(c+(i=i+Math.imul(T,pe)|0)|0)+((8191&(n=(n=n+Math.imul(T,be)|0)+Math.imul(q,pe)|0))<<13)|0;c=((a=a+Math.imul(q,be)|0)+(n>>>13)|0)+(Pe>>>26)|0,Pe&=67108863;var Re=(c+(i=Math.imul(L,pe))|0)+((8191&(n=(n=Math.imul(L,be))+Math.imul(N,pe)|0))<<13)|0;return c=((a=Math.imul(N,be))+(n>>>13)|0)+(Re>>>26)|0,Re&=67108863,f[0]=me,f[1]=ge,f[2]=ve,f[3]=ye,f[4]=we,f[5]=_e,f[6]=Se,f[7]=Me,f[8]=xe,f[9]=ke,f[10]=Ae,f[11]=Ee,f[12]=Ie,f[13]=je,f[14]=Be,f[15]=ze,f[16]=Ce,f[17]=Pe,f[18]=Re,0!==c&&(f[19]=c,r.length++),r};function p(e,t,r){return(new b).mulp(e,t,r)}function b(e,t){this.x=e,this.y=t}Math.imul||(l=d),a.prototype.mulTo=function(e,t){var r=this.length+e.length;return 10===this.length&&10===e.length?l(this,e,t):r<63?d(this,e,t):r<1024?function(e,t,r){r.negative=t.negative^e.negative,r.length=e.length+t.length;for(var i=0,n=0,a=0;a<r.length-1;a++){var o=n;n=0;for(var s=67108863&i,f=Math.min(a,t.length-1),c=Math.max(0,a-e.length+1);c<=f;c++){var u=a-c,h=(0|e.words[u])*(0|t.words[c]),d=67108863&h;s=67108863&(d=d+s|0),n+=(o=(o=o+(h/67108864|0)|0)+(d>>>26)|0)>>>26,o&=67108863}r.words[a]=s,i=o,o=n}return 0!==i?r.words[a]=i:r.length--,r.strip()}(this,e,t):p(this,e,t)},b.prototype.makeRBT=function(e){for(var t=new Array(e),r=a.prototype._countBits(e)-1,i=0;i<e;i++)t[i]=this.revBin(i,r,e);return t},b.prototype.revBin=function(e,t,r){if(0===e||e===r-1)return e;for(var i=0,n=0;n<t;n++)i|=(1&e)<<t-n-1,e>>=1;return i},b.prototype.permute=function(e,t,r,i,n,a){for(var o=0;o<a;o++)i[o]=t[e[o]],n[o]=r[e[o]]},b.prototype.transform=function(e,t,r,i,n,a){this.permute(a,e,t,r,i,n);for(var o=1;o<n;o<<=1)for(var s=o<<1,f=Math.cos(2*Math.PI/s),c=Math.sin(2*Math.PI/s),u=0;u<n;u+=s)for(var h=f,d=c,l=0;l<o;l++){var p=r[u+l],b=i[u+l],m=r[u+l+o],g=i[u+l+o],v=h*m-d*g;g=h*g+d*m,m=v,r[u+l]=p+m,i[u+l]=b+g,r[u+l+o]=p-m,i[u+l+o]=b-g,l!==s&&(v=f*h-c*d,d=f*d+c*h,h=v)}},b.prototype.guessLen13b=function(e,t){var r=1|Math.max(t,e),i=1&r,n=0;for(r=r/2|0;r;r>>>=1)n++;return 1<<n+1+i},b.prototype.conjugate=function(e,t,r){if(!(r<=1))for(var i=0;i<r/2;i++){var n=e[i];e[i]=e[r-i-1],e[r-i-1]=n,n=t[i],t[i]=-t[r-i-1],t[r-i-1]=-n}},b.prototype.normalize13b=function(e,t){for(var r=0,i=0;i<t/2;i++){var n=8192*Math.round(e[2*i+1]/t)+Math.round(e[2*i]/t)+r;e[i]=67108863&n,r=n<67108864?0:n/67108864|0}return e},b.prototype.convert13b=function(e,t,r,n){for(var a=0,o=0;o<t;o++)a+=0|e[o],r[2*o]=8191&a,a>>>=13,r[2*o+1]=8191&a,a>>>=13;for(o=2*t;o<n;++o)r[o]=0;i(0===a),i(0==(-8192&a))},b.prototype.stub=function(e){for(var t=new Array(e),r=0;r<e;r++)t[r]=0;return t},b.prototype.mulp=function(e,t,r){var i=2*this.guessLen13b(e.length,t.length),n=this.makeRBT(i),a=this.stub(i),o=new Array(i),s=new Array(i),f=new Array(i),c=new Array(i),u=new Array(i),h=new Array(i),d=r.words;d.length=i,this.convert13b(e.words,e.length,o,i),this.convert13b(t.words,t.length,c,i),this.transform(o,a,s,f,i,n),this.transform(c,a,u,h,i,n);for(var l=0;l<i;l++){var p=s[l]*u[l]-f[l]*h[l];f[l]=s[l]*h[l]+f[l]*u[l],s[l]=p}return this.conjugate(s,f,i),this.transform(s,f,d,a,i,n),this.conjugate(d,a,i),this.normalize13b(d,i),r.negative=e.negative^t.negative,r.length=e.length+t.length,r.strip()},a.prototype.mul=function(e){var t=new a(null);return t.words=new Array(this.length+e.length),this.mulTo(e,t)},a.prototype.mulf=function(e){var t=new a(null);return t.words=new Array(this.length+e.length),p(this,e,t)},a.prototype.imul=function(e){return this.clone().mulTo(e,this)},a.prototype.imuln=function(e){i("number"==typeof e),i(e<67108864);for(var t=0,r=0;r<this.length;r++){var n=(0|this.words[r])*e,a=(67108863&n)+(67108863&t);t>>=26,t+=n/67108864|0,t+=a>>>26,this.words[r]=67108863&a}return 0!==t&&(this.words[r]=t,this.length++),this},a.prototype.muln=function(e){return this.clone().imuln(e)},a.prototype.sqr=function(){return this.mul(this)},a.prototype.isqr=function(){return this.imul(this.clone())},a.prototype.pow=function(e){var t=function(e){for(var t=new Array(e.bitLength()),r=0;r<t.length;r++){var i=r/26|0,n=r%26;t[r]=(e.words[i]&1<<n)>>>n}return t}(e);if(0===t.length)return new a(1);for(var r=this,i=0;i<t.length&&0===t[i];i++,r=r.sqr());if(++i<t.length)for(var n=r.sqr();i<t.length;i++,n=n.sqr())0!==t[i]&&(r=r.mul(n));return r},a.prototype.iushln=function(e){i("number"==typeof e&&e>=0);var t,r=e%26,n=(e-r)/26,a=67108863>>>26-r<<26-r;if(0!==r){var o=0;for(t=0;t<this.length;t++){var s=this.words[t]&a,f=(0|this.words[t])-s<<r;this.words[t]=f|o,o=s>>>26-r}o&&(this.words[t]=o,this.length++)}if(0!==n){for(t=this.length-1;t>=0;t--)this.words[t+n]=this.words[t];for(t=0;t<n;t++)this.words[t]=0;this.length+=n}return this.strip()},a.prototype.ishln=function(e){return i(0===this.negative),this.iushln(e)},a.prototype.iushrn=function(e,t,r){var n;i("number"==typeof e&&e>=0),n=t?(t-t%26)/26:0;var a=e%26,o=Math.min((e-a)/26,this.length),s=67108863^67108863>>>a<<a,f=r;if(n-=o,n=Math.max(0,n),f){for(var c=0;c<o;c++)f.words[c]=this.words[c];f.length=o}if(0===o);else if(this.length>o)for(this.length-=o,c=0;c<this.length;c++)this.words[c]=this.words[c+o];else this.words[0]=0,this.length=1;var u=0;for(c=this.length-1;c>=0&&(0!==u||c>=n);c--){var h=0|this.words[c];this.words[c]=u<<26-a|h>>>a,u=h&s}return f&&0!==u&&(f.words[f.length++]=u),0===this.length&&(this.words[0]=0,this.length=1),this.strip()},a.prototype.ishrn=function(e,t,r){return i(0===this.negative),this.iushrn(e,t,r)},a.prototype.shln=function(e){return this.clone().ishln(e)},a.prototype.ushln=function(e){return this.clone().iushln(e)},a.prototype.shrn=function(e){return this.clone().ishrn(e)},a.prototype.ushrn=function(e){return this.clone().iushrn(e)},a.prototype.testn=function(e){i("number"==typeof e&&e>=0);var t=e%26,r=(e-t)/26,n=1<<t;return!(this.length<=r)&&!!(this.words[r]&n)},a.prototype.imaskn=function(e){i("number"==typeof e&&e>=0);var t=e%26,r=(e-t)/26;if(i(0===this.negative,"imaskn works only with positive numbers"),this.length<=r)return this;if(0!==t&&r++,this.length=Math.min(r,this.length),0!==t){var n=67108863^67108863>>>t<<t;this.words[this.length-1]&=n}return this.strip()},a.prototype.maskn=function(e){return this.clone().imaskn(e)},a.prototype.iaddn=function(e){return i("number"==typeof e),i(e<67108864),e<0?this.isubn(-e):0!==this.negative?1===this.length&&(0|this.words[0])<e?(this.words[0]=e-(0|this.words[0]),this.negative=0,this):(this.negative=0,this.isubn(e),this.negative=1,this):this._iaddn(e)},a.prototype._iaddn=function(e){this.words[0]+=e;for(var t=0;t<this.length&&this.words[t]>=67108864;t++)this.words[t]-=67108864,t===this.length-1?this.words[t+1]=1:this.words[t+1]++;return this.length=Math.max(this.length,t+1),this},a.prototype.isubn=function(e){if(i("number"==typeof e),i(e<67108864),e<0)return this.iaddn(-e);if(0!==this.negative)return this.negative=0,this.iaddn(e),this.negative=1,this;if(this.words[0]-=e,1===this.length&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var t=0;t<this.length&&this.words[t]<0;t++)this.words[t]+=67108864,this.words[t+1]-=1;return this.strip()},a.prototype.addn=function(e){return this.clone().iaddn(e)},a.prototype.subn=function(e){return this.clone().isubn(e)},a.prototype.iabs=function(){return this.negative=0,this},a.prototype.abs=function(){return this.clone().iabs()},a.prototype._ishlnsubmul=function(e,t,r){var n,a,o=e.length+r;this._expand(o);var s=0;for(n=0;n<e.length;n++){a=(0|this.words[n+r])+s;var f=(0|e.words[n])*t;s=((a-=67108863&f)>>26)-(f/67108864|0),this.words[n+r]=67108863&a}for(;n<this.length-r;n++)s=(a=(0|this.words[n+r])+s)>>26,this.words[n+r]=67108863&a;if(0===s)return this.strip();for(i(-1===s),s=0,n=0;n<this.length;n++)s=(a=-(0|this.words[n])+s)>>26,this.words[n]=67108863&a;return this.negative=1,this.strip()},a.prototype._wordDiv=function(e,t){var r=(this.length,e.length),i=this.clone(),n=e,o=0|n.words[n.length-1];0!==(r=26-this._countBits(o))&&(n=n.ushln(r),i.iushln(r),o=0|n.words[n.length-1]);var s,f=i.length-n.length;if("mod"!==t){(s=new a(null)).length=f+1,s.words=new Array(s.length);for(var c=0;c<s.length;c++)s.words[c]=0}var u=i.clone()._ishlnsubmul(n,1,f);0===u.negative&&(i=u,s&&(s.words[f]=1));for(var h=f-1;h>=0;h--){var d=67108864*(0|i.words[n.length+h])+(0|i.words[n.length+h-1]);for(d=Math.min(d/o|0,67108863),i._ishlnsubmul(n,d,h);0!==i.negative;)d--,i.negative=0,i._ishlnsubmul(n,1,h),i.isZero()||(i.negative^=1);s&&(s.words[h]=d)}return s&&s.strip(),i.strip(),"div"!==t&&0!==r&&i.iushrn(r),{div:s||null,mod:i}},a.prototype.divmod=function(e,t,r){return i(!e.isZero()),this.isZero()?{div:new a(0),mod:new a(0)}:0!==this.negative&&0===e.negative?(s=this.neg().divmod(e,t),"mod"!==t&&(n=s.div.neg()),"div"!==t&&(o=s.mod.neg(),r&&0!==o.negative&&o.iadd(e)),{div:n,mod:o}):0===this.negative&&0!==e.negative?(s=this.divmod(e.neg(),t),"mod"!==t&&(n=s.div.neg()),{div:n,mod:s.mod}):0!=(this.negative&e.negative)?(s=this.neg().divmod(e.neg(),t),"div"!==t&&(o=s.mod.neg(),r&&0!==o.negative&&o.isub(e)),{div:s.div,mod:o}):e.length>this.length||this.cmp(e)<0?{div:new a(0),mod:this}:1===e.length?"div"===t?{div:this.divn(e.words[0]),mod:null}:"mod"===t?{div:null,mod:new a(this.modn(e.words[0]))}:{div:this.divn(e.words[0]),mod:new a(this.modn(e.words[0]))}:this._wordDiv(e,t);var n,o,s},a.prototype.div=function(e){return this.divmod(e,"div",!1).div},a.prototype.mod=function(e){return this.divmod(e,"mod",!1).mod},a.prototype.umod=function(e){return this.divmod(e,"mod",!0).mod},a.prototype.divRound=function(e){var t=this.divmod(e);if(t.mod.isZero())return t.div;var r=0!==t.div.negative?t.mod.isub(e):t.mod,i=e.ushrn(1),n=e.andln(1),a=r.cmp(i);return a<0||1===n&&0===a?t.div:0!==t.div.negative?t.div.isubn(1):t.div.iaddn(1)},a.prototype.modn=function(e){i(e<=67108863);for(var t=(1<<26)%e,r=0,n=this.length-1;n>=0;n--)r=(t*r+(0|this.words[n]))%e;return r},a.prototype.idivn=function(e){i(e<=67108863);for(var t=0,r=this.length-1;r>=0;r--){var n=(0|this.words[r])+67108864*t;this.words[r]=n/e|0,t=n%e}return this.strip()},a.prototype.divn=function(e){return this.clone().idivn(e)},a.prototype.egcd=function(e){i(0===e.negative),i(!e.isZero());var t=this,r=e.clone();t=0!==t.negative?t.umod(e):t.clone();for(var n=new a(1),o=new a(0),s=new a(0),f=new a(1),c=0;t.isEven()&&r.isEven();)t.iushrn(1),r.iushrn(1),++c;for(var u=r.clone(),h=t.clone();!t.isZero();){for(var d=0,l=1;0==(t.words[0]&l)&&d<26;++d,l<<=1);if(d>0)for(t.iushrn(d);d-- >0;)(n.isOdd()||o.isOdd())&&(n.iadd(u),o.isub(h)),n.iushrn(1),o.iushrn(1);for(var p=0,b=1;0==(r.words[0]&b)&&p<26;++p,b<<=1);if(p>0)for(r.iushrn(p);p-- >0;)(s.isOdd()||f.isOdd())&&(s.iadd(u),f.isub(h)),s.iushrn(1),f.iushrn(1);t.cmp(r)>=0?(t.isub(r),n.isub(s),o.isub(f)):(r.isub(t),s.isub(n),f.isub(o))}return{a:s,b:f,gcd:r.iushln(c)}},a.prototype._invmp=function(e){i(0===e.negative),i(!e.isZero());var t=this,r=e.clone();t=0!==t.negative?t.umod(e):t.clone();for(var n,o=new a(1),s=new a(0),f=r.clone();t.cmpn(1)>0&&r.cmpn(1)>0;){for(var c=0,u=1;0==(t.words[0]&u)&&c<26;++c,u<<=1);if(c>0)for(t.iushrn(c);c-- >0;)o.isOdd()&&o.iadd(f),o.iushrn(1);for(var h=0,d=1;0==(r.words[0]&d)&&h<26;++h,d<<=1);if(h>0)for(r.iushrn(h);h-- >0;)s.isOdd()&&s.iadd(f),s.iushrn(1);t.cmp(r)>=0?(t.isub(r),o.isub(s)):(r.isub(t),s.isub(o))}return(n=0===t.cmpn(1)?o:s).cmpn(0)<0&&n.iadd(e),n},a.prototype.gcd=function(e){if(this.isZero())return e.abs();if(e.isZero())return this.abs();var t=this.clone(),r=e.clone();t.negative=0,r.negative=0;for(var i=0;t.isEven()&&r.isEven();i++)t.iushrn(1),r.iushrn(1);for(;;){for(;t.isEven();)t.iushrn(1);for(;r.isEven();)r.iushrn(1);var n=t.cmp(r);if(n<0){var a=t;t=r,r=a}else if(0===n||0===r.cmpn(1))break;t.isub(r)}return r.iushln(i)},a.prototype.invm=function(e){return this.egcd(e).a.umod(e)},a.prototype.isEven=function(){return 0==(1&this.words[0])},a.prototype.isOdd=function(){return 1==(1&this.words[0])},a.prototype.andln=function(e){return this.words[0]&e},a.prototype.bincn=function(e){i("number"==typeof e);var t=e%26,r=(e-t)/26,n=1<<t;if(this.length<=r)return this._expand(r+1),this.words[r]|=n,this;for(var a=n,o=r;0!==a&&o<this.length;o++){var s=0|this.words[o];a=(s+=a)>>>26,s&=67108863,this.words[o]=s}return 0!==a&&(this.words[o]=a,this.length++),this},a.prototype.isZero=function(){return 1===this.length&&0===this.words[0]},a.prototype.cmpn=function(e){var t,r=e<0;if(0!==this.negative&&!r)return-1;if(0===this.negative&&r)return 1;if(this.strip(),this.length>1)t=1;else{r&&(e=-e),i(e<=67108863,"Number is too big");var n=0|this.words[0];t=n===e?0:n<e?-1:1}return 0!==this.negative?0|-t:t},a.prototype.cmp=function(e){if(0!==this.negative&&0===e.negative)return-1;if(0===this.negative&&0!==e.negative)return 1;var t=this.ucmp(e);return 0!==this.negative?0|-t:t},a.prototype.ucmp=function(e){if(this.length>e.length)return 1;if(this.length<e.length)return-1;for(var t=0,r=this.length-1;r>=0;r--){var i=0|this.words[r],n=0|e.words[r];if(i!==n){i<n?t=-1:i>n&&(t=1);break}}return t},a.prototype.gtn=function(e){return 1===this.cmpn(e)},a.prototype.gt=function(e){return 1===this.cmp(e)},a.prototype.gten=function(e){return this.cmpn(e)>=0},a.prototype.gte=function(e){return this.cmp(e)>=0},a.prototype.ltn=function(e){return-1===this.cmpn(e)},a.prototype.lt=function(e){return-1===this.cmp(e)},a.prototype.lten=function(e){return this.cmpn(e)<=0},a.prototype.lte=function(e){return this.cmp(e)<=0},a.prototype.eqn=function(e){return 0===this.cmpn(e)},a.prototype.eq=function(e){return 0===this.cmp(e)},a.red=function(e){return new S(e)},a.prototype.toRed=function(e){return i(!this.red,"Already a number in reduction context"),i(0===this.negative,"red works only with positives"),e.convertTo(this)._forceRed(e)},a.prototype.fromRed=function(){return i(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},a.prototype._forceRed=function(e){return this.red=e,this},a.prototype.forceRed=function(e){return i(!this.red,"Already a number in reduction context"),this._forceRed(e)},a.prototype.redAdd=function(e){return i(this.red,"redAdd works only with red numbers"),this.red.add(this,e)},a.prototype.redIAdd=function(e){return i(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,e)},a.prototype.redSub=function(e){return i(this.red,"redSub works only with red numbers"),this.red.sub(this,e)},a.prototype.redISub=function(e){return i(this.red,"redISub works only with red numbers"),this.red.isub(this,e)},a.prototype.redShl=function(e){return i(this.red,"redShl works only with red numbers"),this.red.shl(this,e)},a.prototype.redMul=function(e){return i(this.red,"redMul works only with red numbers"),this.red._verify2(this,e),this.red.mul(this,e)},a.prototype.redIMul=function(e){return i(this.red,"redMul works only with red numbers"),this.red._verify2(this,e),this.red.imul(this,e)},a.prototype.redSqr=function(){return i(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},a.prototype.redISqr=function(){return i(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},a.prototype.redSqrt=function(){return i(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},a.prototype.redInvm=function(){return i(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},a.prototype.redNeg=function(){return i(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},a.prototype.redPow=function(e){return i(this.red&&!e.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,e)};var m={k256:null,p224:null,p192:null,p25519:null};function g(e,t){this.name=e,this.p=new a(t,16),this.n=this.p.bitLength(),this.k=new a(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}function v(){g.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}function y(){g.call(this,"p224","ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001")}function w(){g.call(this,"p192","ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff")}function _(){g.call(this,"25519","7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed")}function S(e){if("string"==typeof e){var t=a._prime(e);this.m=t.p,this.prime=t}else i(e.gtn(1),"modulus must be greater than 1"),this.m=e,this.prime=null}function M(e){S.call(this,e),this.shift=this.m.bitLength(),this.shift%26!=0&&(this.shift+=26-this.shift%26),this.r=new a(1).iushln(this.shift),this.r2=this.imod(this.r.sqr()),this.rinv=this.r._invmp(this.m),this.minv=this.rinv.mul(this.r).isubn(1).div(this.m),this.minv=this.minv.umod(this.r),this.minv=this.r.sub(this.minv)}g.prototype._tmp=function(){var e=new a(null);return e.words=new Array(Math.ceil(this.n/13)),e},g.prototype.ireduce=function(e){var t,r=e;do{this.split(r,this.tmp),t=(r=(r=this.imulK(r)).iadd(this.tmp)).bitLength()}while(t>this.n);var i=t<this.n?-1:r.ucmp(this.p);return 0===i?(r.words[0]=0,r.length=1):i>0?r.isub(this.p):r.strip(),r},g.prototype.split=function(e,t){e.iushrn(this.n,0,t)},g.prototype.imulK=function(e){return e.imul(this.k)},n(v,g),v.prototype.split=function(e,t){for(var r=Math.min(e.length,9),i=0;i<r;i++)t.words[i]=e.words[i];if(t.length=r,e.length<=9)return e.words[0]=0,void(e.length=1);var n=e.words[9];for(t.words[t.length++]=4194303&n,i=10;i<e.length;i++){var a=0|e.words[i];e.words[i-10]=(4194303&a)<<4|n>>>22,n=a}n>>>=22,e.words[i-10]=n,0===n&&e.length>10?e.length-=10:e.length-=9},v.prototype.imulK=function(e){e.words[e.length]=0,e.words[e.length+1]=0,e.length+=2;for(var t=0,r=0;r<e.length;r++){var i=0|e.words[r];t+=977*i,e.words[r]=67108863&t,t=64*i+(t/67108864|0)}return 0===e.words[e.length-1]&&(e.length--,0===e.words[e.length-1]&&e.length--),e},n(y,g),n(w,g),n(_,g),_.prototype.imulK=function(e){for(var t=0,r=0;r<e.length;r++){var i=19*(0|e.words[r])+t,n=67108863&i;i>>>=26,e.words[r]=n,t=i}return 0!==t&&(e.words[e.length++]=t),e},a._prime=function(e){if(m[e])return m[e];var t;if("k256"===e)t=new v;else if("p224"===e)t=new y;else if("p192"===e)t=new w;else{if("p25519"!==e)throw new Error("Unknown prime "+e);t=new _}return m[e]=t,t},S.prototype._verify1=function(e){i(0===e.negative,"red works only with positives"),i(e.red,"red works only with red numbers")},S.prototype._verify2=function(e,t){i(0==(e.negative|t.negative),"red works only with positives"),i(e.red&&e.red===t.red,"red works only with red numbers")},S.prototype.imod=function(e){return this.prime?this.prime.ireduce(e)._forceRed(this):e.umod(this.m)._forceRed(this)},S.prototype.neg=function(e){return e.isZero()?e.clone():this.m.sub(e)._forceRed(this)},S.prototype.add=function(e,t){this._verify2(e,t);var r=e.add(t);return r.cmp(this.m)>=0&&r.isub(this.m),r._forceRed(this)},S.prototype.iadd=function(e,t){this._verify2(e,t);var r=e.iadd(t);return r.cmp(this.m)>=0&&r.isub(this.m),r},S.prototype.sub=function(e,t){this._verify2(e,t);var r=e.sub(t);return r.cmpn(0)<0&&r.iadd(this.m),r._forceRed(this)},S.prototype.isub=function(e,t){this._verify2(e,t);var r=e.isub(t);return r.cmpn(0)<0&&r.iadd(this.m),r},S.prototype.shl=function(e,t){return this._verify1(e),this.imod(e.ushln(t))},S.prototype.imul=function(e,t){return this._verify2(e,t),this.imod(e.imul(t))},S.prototype.mul=function(e,t){return this._verify2(e,t),this.imod(e.mul(t))},S.prototype.isqr=function(e){return this.imul(e,e.clone())},S.prototype.sqr=function(e){return this.mul(e,e)},S.prototype.sqrt=function(e){if(e.isZero())return e.clone();var t=this.m.andln(3);if(i(t%2==1),3===t){var r=this.m.add(new a(1)).iushrn(2);return this.pow(e,r)}for(var n=this.m.subn(1),o=0;!n.isZero()&&0===n.andln(1);)o++,n.iushrn(1);i(!n.isZero());var s=new a(1).toRed(this),f=s.redNeg(),c=this.m.subn(1).iushrn(1),u=this.m.bitLength();for(u=new a(2*u*u).toRed(this);0!==this.pow(u,c).cmp(f);)u.redIAdd(f);for(var h=this.pow(u,n),d=this.pow(e,n.addn(1).iushrn(1)),l=this.pow(e,n),p=o;0!==l.cmp(s);){for(var b=l,m=0;0!==b.cmp(s);m++)b=b.redSqr();i(m<p);var g=this.pow(h,new a(1).iushln(p-m-1));d=d.redMul(g),h=g.redSqr(),l=l.redMul(h),p=m}return d},S.prototype.invm=function(e){var t=e._invmp(this.m);return 0!==t.negative?(t.negative=0,this.imod(t).redNeg()):this.imod(t)},S.prototype.pow=function(e,t){if(t.isZero())return new a(1);if(0===t.cmpn(1))return e.clone();var r=new Array(16);r[0]=new a(1).toRed(this),r[1]=e;for(var i=2;i<r.length;i++)r[i]=this.mul(r[i-1],e);var n=r[0],o=0,s=0,f=t.bitLength()%26;for(0===f&&(f=26),i=t.length-1;i>=0;i--){for(var c=t.words[i],u=f-1;u>=0;u--){var h=c>>u&1;n!==r[0]&&(n=this.sqr(n)),0!==h||0!==o?(o<<=1,o|=h,(4===++s||0===i&&0===u)&&(n=this.mul(n,r[o]),s=0,o=0)):s=0}f=26}return n},S.prototype.convertTo=function(e){var t=e.umod(this.m);return t===e?t.clone():t},S.prototype.convertFrom=function(e){var t=e.clone();return t.red=null,t},a.mont=function(e){return new M(e)},n(M,S),M.prototype.convertTo=function(e){return this.imod(e.ushln(this.shift))},M.prototype.convertFrom=function(e){var t=this.imod(e.mul(this.rinv));return t.red=null,t},M.prototype.imul=function(e,t){if(e.isZero()||t.isZero())return e.words[0]=0,e.length=1,e;var r=e.imul(t),i=r.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),n=r.isub(i).iushrn(this.shift),a=n;return n.cmp(this.m)>=0?a=n.isub(this.m):n.cmpn(0)<0&&(a=n.iadd(this.m)),a._forceRed(this)},M.prototype.mul=function(e,t){if(e.isZero()||t.isZero())return new a(0)._forceRed(this);var r=e.mul(t),i=r.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),n=r.isub(i).iushrn(this.shift),o=n;return n.cmp(this.m)>=0?o=n.isub(this.m):n.cmpn(0)<0&&(o=n.iadd(this.m)),o._forceRed(this)},M.prototype.invm=function(e){return this.imod(e._invmp(this.m).mul(this.r2))._forceRed(this)}}(void 0===t||t,this)},{}],23:[function(e,t,r){var i;function n(e){this.rand=e}if(t.exports=function(e){return i||(i=new n(null)),i.generate(e)},t.exports.Rand=n,n.prototype.generate=function(e){return this._rand(e)},"object"==typeof window)window.crypto&&window.crypto.getRandomValues?n.prototype._rand=function(e){var t=new Uint8Array(e);return window.crypto.getRandomValues(t),t}:window.msCrypto&&window.msCrypto.getRandomValues?n.prototype._rand=function(e){var t=new Uint8Array(e);return window.msCrypto.getRandomValues(t),t}:n.prototype._rand=function(){throw new Error("Not implemented yet")};else try{var a=e("crypto");n.prototype._rand=function(e){return a.randomBytes(e)}}catch(e){n.prototype._rand=function(e){for(var t=new Uint8Array(e),r=0;r<t.length;r++)t[r]=this.rand.getByte();return t}}},{}],24:[function(e,t,r){var i=r;i.utils=e("./hash/utils"),i.common=e("./hash/common"),i.sha=e("./hash/sha"),i.ripemd=e("./hash/ripemd"),i.hmac=e("./hash/hmac"),i.sha1=i.sha.sha1,i.sha256=i.sha.sha256,i.sha224=i.sha.sha224,i.sha384=i.sha.sha384,i.sha512=i.sha.sha512,i.ripemd160=i.ripemd.ripemd160},{"./hash/common":25,"./hash/hmac":26,"./hash/ripemd":27,"./hash/sha":28,"./hash/utils":29}],25:[function(e,t,r){var i=e("../hash").utils,n=i.assert;function a(){this.pending=null,this.pendingTotal=0,this.blockSize=this.constructor.blockSize,this.outSize=this.constructor.outSize,this.hmacStrength=this.constructor.hmacStrength,this.padLength=this.constructor.padLength/8,this.endian="big",this._delta8=this.blockSize/8,this._delta32=this.blockSize/32}r.BlockHash=a,a.prototype.update=function(e,t){if(e=i.toArray(e,t),this.pending?this.pending=this.pending.concat(e):this.pending=e,this.pendingTotal+=e.length,this.pending.length>=this._delta8){var r=(e=this.pending).length%this._delta8;this.pending=e.slice(e.length-r,e.length),0===this.pending.length&&(this.pending=null),e=i.join32(e,0,e.length-r,this.endian);for(var n=0;n<e.length;n+=this._delta32)this._update(e,n,n+this._delta32)}return this},a.prototype.digest=function(e){return this.update(this._pad()),n(null===this.pending),this._digest(e)},a.prototype._pad=function(){var e=this.pendingTotal,t=this._delta8,r=t-(e+this.padLength)%t,i=new Array(r+this.padLength);i[0]=128;for(var n=1;n<r;n++)i[n]=0;if(e<<=3,"big"===this.endian){for(var a=8;a<this.padLength;a++)i[n++]=0;i[n++]=0,i[n++]=0,i[n++]=0,i[n++]=0,i[n++]=e>>>24&255,i[n++]=e>>>16&255,i[n++]=e>>>8&255,i[n++]=255&e}else{i[n++]=255&e,i[n++]=e>>>8&255,i[n++]=e>>>16&255,i[n++]=e>>>24&255,i[n++]=0,i[n++]=0,i[n++]=0,i[n++]=0;for(a=8;a<this.padLength;a++)i[n++]=0}return i}},{"../hash":24}],26:[function(e,t,r){var i=e("../hash").utils,n=i.assert;function a(e,t,r){if(!(this instanceof a))return new a(e,t,r);this.Hash=e,this.blockSize=e.blockSize/8,this.outSize=e.outSize/8,this.inner=null,this.outer=null,this._init(i.toArray(t,r))}t.exports=a,a.prototype._init=function(e){e.length>this.blockSize&&(e=(new this.Hash).update(e).digest()),n(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;this.inner=(new this.Hash).update(e);for(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)}},{"../hash":24}],27:[function(e,t,r){var i=e("../hash"),n=i.utils,a=n.rotl32,o=n.sum32,s=n.sum32_3,f=n.sum32_4,c=i.common.BlockHash;function u(){if(!(this instanceof u))return new u;c.call(this),this.h=[1732584193,4023233417,2562383102,271733878,3285377520],this.endian="little"}function h(e,t,r,i){return e<=15?t^r^i:e<=31?t&r|~t&i:e<=47?(t|~r)^i:e<=63?t&i|r&~i:t^(r|~i)}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}n.inherits(u,c),r.ripemd160=u,u.blockSize=512,u.outSize=160,u.hmacStrength=192,u.padLength=64,u.prototype._update=function(e,t){for(var r=this.h[0],i=this.h[1],n=this.h[2],c=this.h[3],u=this.h[4],v=r,y=i,w=n,_=c,S=u,M=0;M<80;M++){var x=o(a(f(r,h(M,i,n,c),e[p[M]+t],d(M)),m[M]),u);r=u,u=c,c=a(n,10),n=i,i=x,x=o(a(f(v,h(79-M,y,w,_),e[b[M]+t],l(M)),g[M]),S),v=S,S=_,_=a(w,10),w=y,y=x}x=s(this.h[1],n,_),this.h[1]=s(this.h[2],c,S),this.h[2]=s(this.h[3],u,v),this.h[3]=s(this.h[4],r,y),this.h[4]=s(this.h[0],i,w),this.h[0]=x},u.prototype._digest=function(e){return"hex"===e?n.toHex32(this.h,"little"):n.split32(this.h,"little")};var p=[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],b=[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],m=[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],g=[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]},{"../hash":24}],28:[function(e,t,r){var i=e("../hash"),n=i.utils,a=n.assert,o=n.rotr32,s=n.rotl32,f=n.sum32,c=n.sum32_4,u=n.sum32_5,h=n.rotr64_hi,d=n.rotr64_lo,l=n.shr64_hi,p=n.shr64_lo,b=n.sum64,m=n.sum64_hi,g=n.sum64_lo,v=n.sum64_4_hi,y=n.sum64_4_lo,w=n.sum64_5_hi,_=n.sum64_5_lo,S=i.common.BlockHash,M=[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],x=[1116352408,3609767458,1899447441,602891725,3049323471,3964484399,3921009573,2173295548,961987163,4081628472,1508970993,3053834265,2453635748,2937671579,2870763221,3664609560,3624381080,2734883394,310598401,1164996542,607225278,1323610764,1426881987,3590304994,1925078388,4068182383,2162078206,991336113,2614888103,633803317,3248222580,3479774868,3835390401,2666613458,4022224774,944711139,264347078,2341262773,604807628,2007800933,770255983,1495990901,1249150122,1856431235,1555081692,3175218132,1996064986,2198950837,2554220882,3999719339,2821834349,766784016,2952996808,2566594879,3210313671,3203337956,3336571891,1034457026,3584528711,2466948901,113926993,3758326383,338241895,168717936,666307205,1188179964,773529912,1546045734,1294757372,1522805485,1396182291,2643833823,1695183700,2343527390,1986661051,1014477480,2177026350,1206759142,2456956037,344077627,2730485921,1290863460,2820302411,3158454273,3259730800,3505952657,3345764771,106217008,3516065817,3606008344,3600352804,1432725776,4094571909,1467031594,275423344,851169720,430227734,3100823752,506948616,1363258195,659060556,3750685593,883997877,3785050280,958139571,3318307427,1322822218,3812723403,1537002063,2003034995,1747873779,3602036899,1955562222,1575990012,2024104815,1125592928,2227730452,2716904306,2361852424,442776044,2428436474,593698344,2756734187,3733110249,3204031479,2999351573,3329325298,3815920427,3391569614,3928383900,3515267271,566280711,3940187606,3454069534,4118630271,4000239992,116418474,1914138554,174292421,2731055270,289380356,3203993006,460393269,320620315,685471733,587496836,852142971,1086792851,1017036298,365543100,1126000580,2618297676,1288033470,3409855158,1501505948,4234509866,1607167915,987167468,1816402316,1246189591],k=[1518500249,1859775393,2400959708,3395469782];function A(){if(!(this instanceof A))return new A;S.call(this),this.h=[1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225],this.k=M,this.W=new Array(64)}function E(){if(!(this instanceof E))return new E;A.call(this),this.h=[3238371032,914150663,812702999,4144912697,4290775857,1750603025,1694076839,3204075428]}function I(){if(!(this instanceof I))return new I;S.call(this),this.h=[1779033703,4089235720,3144134277,2227873595,1013904242,4271175723,2773480762,1595750129,1359893119,2917565137,2600822924,725511199,528734635,4215389547,1541459225,327033209],this.k=x,this.W=new Array(160)}function j(){if(!(this instanceof j))return new j;I.call(this),this.h=[3418070365,3238371032,1654270250,914150663,2438529370,812702999,355462360,4144912697,1731405415,4290775857,2394180231,1750603025,3675008525,1694076839,1203062813,3204075428]}function B(){if(!(this instanceof B))return new B;S.call(this),this.h=[1732584193,4023233417,2562383102,271733878,3285377520],this.W=new Array(80)}function z(e,t,r){return e&t^~e&r}function C(e,t,r){return e&t^e&r^t&r}function P(e){return o(e,2)^o(e,13)^o(e,22)}function R(e){return o(e,6)^o(e,11)^o(e,25)}function T(e){return o(e,7)^o(e,18)^e>>>3}function q(e,t,r,i){return 0===e?z(t,r,i):1===e||3===e?function(e,t,r){return e^t^r}(t,r,i):2===e?C(t,r,i):void 0}function O(e,t,r,i,n,a){var o=e&r^~e&n;return o<0&&(o+=4294967296),o}function L(e,t,r,i,n,a){var o=t&i^~t&a;return o<0&&(o+=4294967296),o}function N(e,t,r,i,n,a){var o=e&r^e&n^r&n;return o<0&&(o+=4294967296),o}function U(e,t,r,i,n,a){var o=t&i^t&a^i&a;return o<0&&(o+=4294967296),o}function D(e,t){var r=h(e,t,28)^h(t,e,2)^h(t,e,7);return r<0&&(r+=4294967296),r}function H(e,t){var r=d(e,t,28)^d(t,e,2)^d(t,e,7);return r<0&&(r+=4294967296),r}function F(e,t){var r=h(e,t,14)^h(e,t,18)^h(t,e,9);return r<0&&(r+=4294967296),r}function K(e,t){var r=d(e,t,14)^d(e,t,18)^d(t,e,9);return r<0&&(r+=4294967296),r}function V(e,t){var r=h(e,t,1)^h(e,t,8)^l(e,t,7);return r<0&&(r+=4294967296),r}function W(e,t){var r=d(e,t,1)^d(e,t,8)^p(e,t,7);return r<0&&(r+=4294967296),r}function G(e,t){var r=h(e,t,19)^h(t,e,29)^l(e,t,6);return r<0&&(r+=4294967296),r}function X(e,t){var r=d(e,t,19)^d(t,e,29)^p(e,t,6);return r<0&&(r+=4294967296),r}n.inherits(A,S),r.sha256=A,A.blockSize=512,A.outSize=256,A.hmacStrength=192,A.padLength=64,A.prototype._update=function(e,t){for(var r,i=this.W,n=0;n<16;n++)i[n]=e[t+n];for(;n<i.length;n++)i[n]=c((r=i[n-2],o(r,17)^o(r,19)^r>>>10),i[n-7],T(i[n-15]),i[n-16]);var s=this.h[0],h=this.h[1],d=this.h[2],l=this.h[3],p=this.h[4],b=this.h[5],m=this.h[6],g=this.h[7];a(this.k.length===i.length);for(n=0;n<i.length;n++){var v=u(g,R(p),z(p,b,m),this.k[n],i[n]),y=f(P(s),C(s,h,d));g=m,m=b,b=p,p=f(l,v),l=d,d=h,h=s,s=f(v,y)}this.h[0]=f(this.h[0],s),this.h[1]=f(this.h[1],h),this.h[2]=f(this.h[2],d),this.h[3]=f(this.h[3],l),this.h[4]=f(this.h[4],p),this.h[5]=f(this.h[5],b),this.h[6]=f(this.h[6],m),this.h[7]=f(this.h[7],g)},A.prototype._digest=function(e){return"hex"===e?n.toHex32(this.h,"big"):n.split32(this.h,"big")},n.inherits(E,A),r.sha224=E,E.blockSize=512,E.outSize=224,E.hmacStrength=192,E.padLength=64,E.prototype._digest=function(e){return"hex"===e?n.toHex32(this.h.slice(0,7),"big"):n.split32(this.h.slice(0,7),"big")},n.inherits(I,S),r.sha512=I,I.blockSize=1024,I.outSize=512,I.hmacStrength=192,I.padLength=128,I.prototype._prepareBlock=function(e,t){for(var r=this.W,i=0;i<32;i++)r[i]=e[t+i];for(;i<r.length;i+=2){var n=G(r[i-4],r[i-3]),a=X(r[i-4],r[i-3]),o=r[i-14],s=r[i-13],f=V(r[i-30],r[i-29]),c=W(r[i-30],r[i-29]),u=r[i-32],h=r[i-31];r[i]=v(n,a,o,s,f,c,u,h),r[i+1]=y(n,a,o,s,f,c,u,h)}},I.prototype._update=function(e,t){this._prepareBlock(e,t);var r=this.W,i=this.h[0],n=this.h[1],o=this.h[2],s=this.h[3],f=this.h[4],c=this.h[5],u=this.h[6],h=this.h[7],d=this.h[8],l=this.h[9],p=this.h[10],v=this.h[11],y=this.h[12],S=this.h[13],M=this.h[14],x=this.h[15];a(this.k.length===r.length);for(var k=0;k<r.length;k+=2){var A=M,E=x,I=F(d,l),j=K(d,l),B=O(d,l,p,v,y,S),z=L(d,l,p,v,y,S),C=this.k[k],P=this.k[k+1],R=r[k],T=r[k+1],q=w(A,E,I,j,B,z,C,P,R,T),V=_(A,E,I,j,B,z,C,P,R,T),W=(A=D(i,n),E=H(i,n),I=N(i,n,o,s,f,c),j=U(i,n,o,s,f,c),m(A,E,I,j)),G=g(A,E,I,j);M=y,x=S,y=p,S=v,p=d,v=l,d=m(u,h,q,V),l=g(h,h,q,V),u=f,h=c,f=o,c=s,o=i,s=n,i=m(q,V,W,G),n=g(q,V,W,G)}b(this.h,0,i,n),b(this.h,2,o,s),b(this.h,4,f,c),b(this.h,6,u,h),b(this.h,8,d,l),b(this.h,10,p,v),b(this.h,12,y,S),b(this.h,14,M,x)},I.prototype._digest=function(e){return"hex"===e?n.toHex32(this.h,"big"):n.split32(this.h,"big")},n.inherits(j,I),r.sha384=j,j.blockSize=1024,j.outSize=384,j.hmacStrength=192,j.padLength=128,j.prototype._digest=function(e){return"hex"===e?n.toHex32(this.h.slice(0,12),"big"):n.split32(this.h.slice(0,12),"big")},n.inherits(B,S),r.sha1=B,B.blockSize=512,B.outSize=160,B.hmacStrength=80,B.padLength=64,B.prototype._update=function(e,t){for(var r=this.W,i=0;i<16;i++)r[i]=e[t+i];for(;i<r.length;i++)r[i]=s(r[i-3]^r[i-8]^r[i-14]^r[i-16],1);var n=this.h[0],a=this.h[1],o=this.h[2],c=this.h[3],h=this.h[4];for(i=0;i<r.length;i++){var d=~~(i/20),l=u(s(n,5),q(d,a,o,c),h,r[i],k[d]);h=c,c=o,o=s(a,30),a=n,n=l}this.h[0]=f(this.h[0],n),this.h[1]=f(this.h[1],a),this.h[2]=f(this.h[2],o),this.h[3]=f(this.h[3],c),this.h[4]=f(this.h[4],h)},B.prototype._digest=function(e){return"hex"===e?n.toHex32(this.h,"big"):n.split32(this.h,"big")}},{"../hash":24}],29:[function(e,t,r){var i=r,n=e("inherits");function a(e){return(e>>>24|e>>>8&65280|e<<8&16711680|(255&e)<<24)>>>0}function o(e){return 1===e.length?"0"+e:e}function s(e){return 7===e.length?"0"+e:6===e.length?"00"+e:5===e.length?"000"+e:4===e.length?"0000"+e:3===e.length?"00000"+e:2===e.length?"000000"+e:1===e.length?"0000000"+e:e}function f(e,t){if(!e)throw new Error(t||"Assertion failed")}i.toArray=function(e,t){if(Array.isArray(e))return e.slice();if(!e)return[];var r=[];if("string"==typeof e)if(t){if("hex"===t){(e=e.replace(/[^a-z0-9]+/gi,"")).length%2!=0&&(e="0"+e);for(i=0;i<e.length;i+=2)r.push(parseInt(e[i]+e[i+1],16))}}else for(var i=0;i<e.length;i++){var n=e.charCodeAt(i),a=n>>8,o=255&n;a?r.push(a,o):r.push(o)}else for(i=0;i<e.length;i++)r[i]=0|e[i];return r},i.toHex=function(e){for(var t="",r=0;r<e.length;r++)t+=o(e[r].toString(16));return t},i.htonl=a,i.toHex32=function(e,t){for(var r="",i=0;i<e.length;i++){var n=e[i];"little"===t&&(n=a(n)),r+=s(n.toString(16))}return r},i.zero2=o,i.zero8=s,i.join32=function(e,t,r,i){var n=r-t;f(n%4==0);for(var a=new Array(n/4),o=0,s=t;o<a.length;o++,s+=4){var c;c="big"===i?e[s]<<24|e[s+1]<<16|e[s+2]<<8|e[s+3]:e[s+3]<<24|e[s+2]<<16|e[s+1]<<8|e[s],a[o]=c>>>0}return a},i.split32=function(e,t){for(var r=new Array(4*e.length),i=0,n=0;i<e.length;i++,n+=4){var a=e[i];"big"===t?(r[n]=a>>>24,r[n+1]=a>>>16&255,r[n+2]=a>>>8&255,r[n+3]=255&a):(r[n+3]=a>>>24,r[n+2]=a>>>16&255,r[n+1]=a>>>8&255,r[n]=255&a)}return r},i.rotr32=function(e,t){return e>>>t|e<<32-t},i.rotl32=function(e,t){return e<<t|e>>>32-t},i.sum32=function(e,t){return e+t>>>0},i.sum32_3=function(e,t,r){return e+t+r>>>0},i.sum32_4=function(e,t,r,i){return e+t+r+i>>>0},i.sum32_5=function(e,t,r,i,n){return e+t+r+i+n>>>0},i.assert=f,i.inherits=n,r.sum64=function(e,t,r,i){var n=e[t],a=i+e[t+1]>>>0,o=(a<i?1:0)+r+n;e[t]=o>>>0,e[t+1]=a},r.sum64_hi=function(e,t,r,i){return(t+i>>>0<t?1:0)+e+r>>>0},r.sum64_lo=function(e,t,r,i){return t+i>>>0},r.sum64_4_hi=function(e,t,r,i,n,a,o,s){var f=0,c=t;return f+=(c=c+i>>>0)<t?1:0,f+=(c=c+a>>>0)<a?1:0,e+r+n+o+(f+=(c=c+s>>>0)<s?1:0)>>>0},r.sum64_4_lo=function(e,t,r,i,n,a,o,s){return t+i+a+s>>>0},r.sum64_5_hi=function(e,t,r,i,n,a,o,s,f,c){var u=0,h=t;return u+=(h=h+i>>>0)<t?1:0,u+=(h=h+a>>>0)<a?1:0,u+=(h=h+s>>>0)<s?1:0,e+r+n+o+f+(u+=(h=h+c>>>0)<c?1:0)>>>0},r.sum64_5_lo=function(e,t,r,i,n,a,o,s,f,c){return t+i+a+s+c>>>0},r.rotr64_hi=function(e,t,r){return(t<<32-r|e>>>r)>>>0},r.rotr64_lo=function(e,t,r){return(e<<32-r|t>>>r)>>>0},r.shr64_hi=function(e,t,r){return e>>>r},r.shr64_lo=function(e,t,r){return(e<<32-r|t>>>r)>>>0}},{inherits:30}],30:[function(e,t,r){"function"==typeof Object.create?t.exports=function(e,t){e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}})}:t.exports=function(e,t){e.super_=t;var r=function(){};r.prototype=t.prototype,e.prototype=new r,e.prototype.constructor=e}},{}],31:[function(e,t,r){t.exports={name:"elliptic",version:"6.3.1",description:"EC cryptography",main:"lib/elliptic.js",files:["lib"],scripts:{jscs:"jscs benchmarks/*.js lib/*.js lib/**/*.js lib/**/**/*.js test/index.js",jshint:"jscs benchmarks/*.js lib/*.js lib/**/*.js lib/**/**/*.js test/index.js",lint:"npm run jscs && npm run jshint",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+ssh://git@github.com/indutny/elliptic.git"},keywords:["EC","Elliptic","curve","Cryptography"],author:{name:"Fedor Indutny",email:"fedor@indutny.com"},license:"MIT",bugs:{url:"https://github.com/indutny/elliptic/issues"},homepage:"https://github.com/indutny/elliptic",devDependencies:{brfs:"^1.4.3",coveralls:"^2.11.3",grunt:"^0.4.5","grunt-browserify":"^5.0.0","grunt-contrib-connect":"^1.0.0","grunt-contrib-copy":"^1.0.0","grunt-contrib-uglify":"^1.0.1","grunt-mocha-istanbul":"^3.0.1","grunt-saucelabs":"^8.6.2",istanbul:"^0.4.2",jscs:"^2.9.0",jshint:"^2.6.0",mocha:"^2.1.0"},dependencies:{"bn.js":"^4.4.0",brorand:"^1.0.1","hash.js":"^1.0.0",inherits:"^2.0.1"},gitHead:"c53f5cf3d832c0073eb4a4ed423a464cbce68f3e",_id:"elliptic@6.3.1",_shasum:"17781f2109ab0ec686b146bdcff5d2e8c6aeceda",_from:"elliptic@*",_npmVersion:"3.8.6",_nodeVersion:"6.0.0",_npmUser:{name:"indutny",email:"fedor@indutny.com"},dist:{shasum:"17781f2109ab0ec686b146bdcff5d2e8c6aeceda",tarball:"https://registry.npmjs.org/elliptic/-/elliptic-6.3.1.tgz"},maintainers:[{name:"indutny",email:"fedor@indutny.com"}],_npmOperationalInternal:{host:"packages-16-east.internal.npmjs.com",tmp:"tmp/elliptic-6.3.1.tgz_1465921413402_0.5202967382501811"},directories:{},_resolved:"https://registry.npmjs.org/elliptic/-/elliptic-6.3.1.tgz",readme:"ERROR: No README data found!"}},{}],32:[function(e,t,r){(function(e,r,i){var n={};!function(){var t=n,r=t.util=t.util||{};void 0!==e&&e.nextTick?(r.nextTick=e.nextTick,r.setImmediate="function"==typeof i?i:r.nextTick):"function"==typeof i?(r.setImmediate=i,r.nextTick=function(e){return i(e)}):(r.setImmediate=function(e){setTimeout(e,0)},r.nextTick=r.setImmediate),r.isArray=Array.isArray||function(e){return"[object Array]"===Object.prototype.toString.call(e)},r.ByteBuffer=function(e){this.data=e||"",this.read=0},r.ByteBuffer.prototype.length=function(){return this.data.length-this.read},r.ByteBuffer.prototype.isEmpty=function(){return this.length()<=0},r.ByteBuffer.prototype.putByte=function(e){return this.data+=String.fromCharCode(e),this},r.ByteBuffer.prototype.fillWithByte=function(e,t){e=String.fromCharCode(e);for(var r=this.data;t>0;)1&t&&(r+=e),(t>>>=1)>0&&(e+=e);return this.data=r,this},r.ByteBuffer.prototype.putBytes=function(e){return this.data+=e,this},r.ByteBuffer.prototype.putString=function(e){return this.data+=r.encodeUtf8(e),this},r.ByteBuffer.prototype.putInt16=function(e){return this.data+=String.fromCharCode(e>>8&255)+String.fromCharCode(255&e),this},r.ByteBuffer.prototype.putInt24=function(e){return this.data+=String.fromCharCode(e>>16&255)+String.fromCharCode(e>>8&255)+String.fromCharCode(255&e),this},r.ByteBuffer.prototype.putInt32=function(e){return this.data+=String.fromCharCode(e>>24&255)+String.fromCharCode(e>>16&255)+String.fromCharCode(e>>8&255)+String.fromCharCode(255&e),this},r.ByteBuffer.prototype.putInt16Le=function(e){return this.data+=String.fromCharCode(255&e)+String.fromCharCode(e>>8&255),this},r.ByteBuffer.prototype.putInt24Le=function(e){return this.data+=String.fromCharCode(255&e)+String.fromCharCode(e>>8&255)+String.fromCharCode(e>>16&255),this},r.ByteBuffer.prototype.putInt32Le=function(e){return this.data+=String.fromCharCode(255&e)+String.fromCharCode(e>>8&255)+String.fromCharCode(e>>16&255)+String.fromCharCode(e>>24&255),this},r.ByteBuffer.prototype.putInt=function(e,t){do{t-=8,this.data+=String.fromCharCode(e>>t&255)}while(t>0);return this},r.ByteBuffer.prototype.putSignedInt=function(e,t){return e<0&&(e+=2<<t-1),this.putInt(e,t)},r.ByteBuffer.prototype.putBuffer=function(e){return this.data+=e.getBytes(),this},r.ByteBuffer.prototype.getByte=function(){return this.data.charCodeAt(this.read++)},r.ByteBuffer.prototype.getInt16=function(){var e=this.data.charCodeAt(this.read)<<8^this.data.charCodeAt(this.read+1);return this.read+=2,e},r.ByteBuffer.prototype.getInt24=function(){var e=this.data.charCodeAt(this.read)<<16^this.data.charCodeAt(this.read+1)<<8^this.data.charCodeAt(this.read+2);return this.read+=3,e},r.ByteBuffer.prototype.getInt32=function(){var e=this.data.charCodeAt(this.read)<<24^this.data.charCodeAt(this.read+1)<<16^this.data.charCodeAt(this.read+2)<<8^this.data.charCodeAt(this.read+3);return this.read+=4,e},r.ByteBuffer.prototype.getInt16Le=function(){var e=this.data.charCodeAt(this.read)^this.data.charCodeAt(this.read+1)<<8;return this.read+=2,e},r.ByteBuffer.prototype.getInt24Le=function(){var e=this.data.charCodeAt(this.read)^this.data.charCodeAt(this.read+1)<<8^this.data.charCodeAt(this.read+2)<<16;return this.read+=3,e},r.ByteBuffer.prototype.getInt32Le=function(){var e=this.data.charCodeAt(this.read)^this.data.charCodeAt(this.read+1)<<8^this.data.charCodeAt(this.read+2)<<16^this.data.charCodeAt(this.read+3)<<24;return this.read+=4,e},r.ByteBuffer.prototype.getInt=function(e){var t=0;do{t=(t<<8)+this.data.charCodeAt(this.read++),e-=8}while(e>0);return t},r.ByteBuffer.prototype.getSignedInt=function(e){var t=this.getInt(e),r=2<<e-2;return t>=r&&(t-=r<<1),t},r.ByteBuffer.prototype.getBytes=function(e){var t;return e?(e=Math.min(this.length(),e),t=this.data.slice(this.read,this.read+e),this.read+=e):0===e?t="":(t=0===this.read?this.data:this.data.slice(this.read),this.clear()),t},r.ByteBuffer.prototype.bytes=function(e){return void 0===e?this.data.slice(this.read):this.data.slice(this.read,this.read+e)},r.ByteBuffer.prototype.at=function(e){return this.data.charCodeAt(this.read+e)},r.ByteBuffer.prototype.setAt=function(e,t){return this.data=this.data.substr(0,this.read+e)+String.fromCharCode(t)+this.data.substr(this.read+e+1),this},r.ByteBuffer.prototype.last=function(){return this.data.charCodeAt(this.data.length-1)},r.ByteBuffer.prototype.copy=function(){var e=r.createBuffer(this.data);return e.read=this.read,e},r.ByteBuffer.prototype.compact=function(){return this.read>0&&(this.data=this.data.slice(this.read),this.read=0),this},r.ByteBuffer.prototype.clear=function(){return this.data="",this.read=0,this},r.ByteBuffer.prototype.truncate=function(e){var t=Math.max(0,this.length()-e);return this.data=this.data.substr(this.read,t),this.read=0,this},r.ByteBuffer.prototype.toHex=function(){for(var e="",t=this.read;t<this.data.length;++t){var r=this.data.charCodeAt(t);r<16&&(e+="0"),e+=r.toString(16)}return e},r.ByteBuffer.prototype.toString=function(){return r.decodeUtf8(this.bytes())},r.createBuffer=function(e,t){return t=t||"raw",void 0!==e&&"utf8"===t&&(e=r.encodeUtf8(e)),new r.ByteBuffer(e)},r.fillString=function(e,t){for(var r="";t>0;)1&t&&(r+=e),(t>>>=1)>0&&(e+=e);return r},r.xorBytes=function(e,t,r){for(var i="",n="",a="",o=0,s=0;r>0;--r,++o)n=e.charCodeAt(o)^t.charCodeAt(o),s>=10&&(i+=a,a="",s=0),a+=String.fromCharCode(n),++s;return i+=a},r.hexToBytes=function(e){var t="",r=0;for(!0&e.length&&(r=1,t+=String.fromCharCode(parseInt(e[0],16)));r<e.length;r+=2)t+=String.fromCharCode(parseInt(e.substr(r,2),16));return t},r.bytesToHex=function(e){return r.createBuffer(e).toHex()},r.int32ToBytes=function(e){return String.fromCharCode(e>>24&255)+String.fromCharCode(e>>16&255)+String.fromCharCode(e>>8&255)+String.fromCharCode(255&e)};var a="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",o=[62,-1,-1,-1,63,52,53,54,55,56,57,58,59,60,61,-1,-1,-1,64,-1,-1,-1,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,-1,-1,-1,-1,-1,-1,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51];r.encode64=function(e,t){for(var r,i,n,o="",s="",f=0;f<e.length;)r=e.charCodeAt(f++),i=e.charCodeAt(f++),n=e.charCodeAt(f++),o+=a.charAt(r>>2),o+=a.charAt((3&r)<<4|i>>4),isNaN(i)?o+="==":(o+=a.charAt((15&i)<<2|n>>6),o+=isNaN(n)?"=":a.charAt(63&n)),t&&o.length>t&&(s+=o.substr(0,t)+"\r\n",o=o.substr(t));return s+=o},r.decode64=function(e){e=e.replace(/[^A-Za-z0-9\+\/\=]/g,"");for(var t,r,i,n,a="",s=0;s<e.length;)t=o[e.charCodeAt(s++)-43],r=o[e.charCodeAt(s++)-43],i=o[e.charCodeAt(s++)-43],n=o[e.charCodeAt(s++)-43],a+=String.fromCharCode(t<<2|r>>4),64!==i&&(a+=String.fromCharCode((15&r)<<4|i>>2),64!==n&&(a+=String.fromCharCode((3&i)<<6|n)));return a},r.encodeUtf8=function(e){return unescape(encodeURIComponent(e))},r.decodeUtf8=function(e){return decodeURIComponent(escape(e))},r.deflate=function(e,t,i){if(t=r.decode64(e.deflate(r.encode64(t)).rval),i){var n=2;32&t.charCodeAt(1)&&(n=6),t=t.substring(n,t.length-4)}return t},r.inflate=function(e,t,i){var n=e.inflate(r.encode64(t)).rval;return null===n?null:r.decode64(n)};var s=function(e,t,i){if(!e)throw{message:"WebStorage not available."};var n;if(null===i?n=e.removeItem(t):(i=r.encode64(JSON.stringify(i)),n=e.setItem(t,i)),void 0!==n&&!0!==n.rval)throw n.error},f=function(e,t){if(!e)throw{message:"WebStorage not available."};var i=e.getItem(t);if(e.init)if(null===i.rval){if(i.error)throw i.error;i=null}else i=i.rval;return null!==i&&(i=JSON.parse(r.decode64(i))),i},c=function(e,t,r,i){var n=f(e,t);null===n&&(n={}),n[r]=i,s(e,t,n)},u=function(e,t,r){var i=f(e,t);return null!==i&&(i=r in i?i[r]:null),i},h=function(e,t,r){var i=f(e,t);if(null!==i&&r in i){delete i[r];var n=!0;for(var a in i){n=!1;break}n&&(i=null),s(e,t,i)}},d=function(e,t){s(e,t,null)},l=function(e,t,r){var i,n=null;void 0===r&&(r=["web","flash"]);var a=!1,o=null;for(var s in r){i=r[s];try{if("flash"===i||"both"===i){if(null===t[0])throw{message:"Flash local storage not available."};n=e.apply(this,t),a="flash"===i}"web"!==i&&"both"!==i||(t[0]=localStorage,n=e.apply(this,t),a=!0)}catch(e){o=e}if(a)break}if(!a)throw o;return n};r.setItem=function(e,t,r,i,n){l(c,arguments,n)},r.getItem=function(e,t,r,i){return l(u,arguments,i)},r.removeItem=function(e,t,r,i){l(h,arguments,i)},r.clearItems=function(e,t,r){l(d,arguments,r)},r.parseUrl=function(e){var t=/^(https?):\/\/([^:&^\/]*):?(\d*)(.*)$/g;t.lastIndex=0;var r=t.exec(e),i=null===r?null:{full:e,scheme:r[1],host:r[2],port:r[3],path:r[4]};return i&&(i.fullHost=i.host,i.port?80!==i.port&&"http"===i.scheme?i.fullHost+=":"+i.port:443!==i.port&&"https"===i.scheme&&(i.fullHost+=":"+i.port):"http"===i.scheme?i.port=80:"https"===i.scheme&&(i.port=443),i.full=i.scheme+"://"+i.fullHost),i};var p=null;r.getQueryVariables=function(e){var t,r=function(e){for(var t={},r=e.split("&"),i=0;i<r.length;i++){var n,a,o=r[i].indexOf("=");o>0?(n=r[i].substring(0,o),a=r[i].substring(o+1)):(n=r[i],a=null),n in t||(t[n]=[]),n in Object.prototype||null===a||t[n].push(unescape(a))}return t};return void 0===e?(null===p&&(p="undefined"==typeof window?{}:r(window.location.search.substring(1))),t=p):t=r(e),t},r.parseFragment=function(e){var t=e,i="",n=e.indexOf("?");n>0&&(t=e.substring(0,n),i=e.substring(n+1));var a=t.split("/");return a.length>0&&""===a[0]&&a.shift(),{pathString:t,queryString:i,path:a,query:""===i?{}:r.getQueryVariables(i)}},r.makeRequest=function(e){var t=r.parseFragment(e),i={path:t.pathString,query:t.queryString,getPath:function(e){return void 0===e?t.path:t.path[e]},getQuery:function(e,r){var i;return void 0===e?i=t.query:(i=t.query[e])&&void 0!==r&&(i=i[r]),i},getQueryLast:function(e,t){var r=i.getQuery(e);return r?r[r.length-1]:t}};return i},r.makeLink=function(e,t,r){e=jQuery.isArray(e)?e.join("/"):e;var i=jQuery.param(t||{});return r=r||"",e+(i.length>0?"?"+i:"")+(r.length>0?"#"+r:"")},r.setPath=function(e,t,r){if("object"==typeof e&&null!==e)for(var i=0,n=t.length;i<n;){var a=t[i++];if(i==n)e[a]=r;else{var o=a in e;(!o||o&&"object"!=typeof e[a]||o&&null===e[a])&&(e[a]={}),e=e[a]}}},r.getPath=function(e,t,r){for(var i=0,n=t.length,a=!0;a&&i<n&&"object"==typeof e&&null!==e;){var o=t[i++];(a=o in e)&&(e=e[o])}return a?e:r},r.deletePath=function(e,t){if("object"==typeof e&&null!==e)for(var r=0,i=t.length;r<i;){var n=t[r++];if(r==i)delete e[n];else{if(!(n in e)||"object"!=typeof e[n]||null===e[n])break;e=e[n]}}},r.isEmpty=function(e){for(var t in e)if(e.hasOwnProperty(t))return!1;return!0},r.format=function(e){for(var t,r,i=/%./g,n=0,a=[],o=0;t=i.exec(e);){(r=e.substring(o,i.lastIndex-2)).length>0&&a.push(r),o=i.lastIndex;var s=t[0][1];switch(s){case"s":case"o":n<arguments.length?a.push(arguments[1+n++]):a.push("<?>");break;case"%":a.push("%");break;default:a.push("<%"+s+"?>")}}return a.push(e.substring(o)),a.join("")},r.formatNumber=function(e,t,r,i){var n=e,a=isNaN(t=Math.abs(t))?2:t,o=void 0===r?",":r,s=void 0===i?".":i,f=n<0?"-":"",c=parseInt(n=Math.abs(+n||0).toFixed(a),10)+"",u=c.length>3?c.length%3:0;return f+(u?c.substr(0,u)+s:"")+c.substr(u).replace(/(\d{3})(?=\d)/g,"$1"+s)+(a?o+Math.abs(n-c).toFixed(a).slice(2):"")},r.formatSize=function(e){return e=e>=1073741824?r.formatNumber(e/1073741824,2,".","")+" GiB":e>=1048576?r.formatNumber(e/1048576,2,".","")+" MiB":e>=1024?r.formatNumber(e/1024,0)+" KiB":r.formatNumber(e,0)+" bytes"},r.bytesFromIP=function(e){return-1!==e.indexOf(".")?r.bytesFromIPv4(e):-1!==e.indexOf(":")?r.bytesFromIPv6(e):null},r.bytesFromIPv4=function(e){if(4!==(e=e.split(".")).length)return null;for(var t=r.createBuffer(),i=0;i<e.length;++i){var n=parseInt(e[i],10);if(isNaN(n))return null;t.putByte(n)}return t.getBytes()},r.bytesFromIPv6=function(e){for(var t=0,i=2*(8-(e=e.split(":").filter(function(e){return 0===e.length&&++t,!0})).length+t),n=r.createBuffer(),a=0;a<8;++a)if(e[a]&&0!==e[a].length){var o=r.hexToBytes(e[a]);o.length<2&&n.putByte(0),n.putBytes(o)}else n.fillWithByte(0,i),i=0;return n.getBytes()},r.bytesToIP=function(e){return 4===e.length?r.bytesToIPv4(e):16===e.length?r.bytesToIPv6(e):null},r.bytesToIPv4=function(e){if(4!==e.length)return null;for(var t=[],r=0;r<e.length;++r)t.push(e.charCodeAt(r));return t.join(".")},r.bytesToIPv6=function(e){if(16!==e.length)return null;for(var t=[],i=[],n=0,a=0;a<e.length;a+=2){for(var o=r.bytesToHex(e[a]+e[a+1]);"0"===o[0]&&"0"!==o;)o=o.substr(1);if("0"===o){var s=i[i.length-1],f=t.length;s&&f===s.end+1?(s.end=f,s.end-s.start>i[n].end-i[n].start&&(n=i.length-1)):i.push({start:f,end:f})}t.push(o)}if(i.length>0){var c=i[n];c.end-c.start>0&&(t.splice(c.start,c.end-c.start+1,""),0===c.start&&t.unshift(""),7===c.end&&t.push(""))}return t.join(":")}}();var a=n.sha256=n.sha256||{};n.md=n.md||{},n.md.algorithms=n.md.algorithms||{},n.md.sha256=n.md.algorithms.sha256=a,a.create=function(){o||(String.fromCharCode(128),n.util.fillString(String.fromCharCode(0),64),s=[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],o=!0);var e=null,t=n.util.createBuffer(),r=new Array(64),i={algorithm:"sha256",blockLength:64,digestLength:32,messageLength:0,fullMessageLength:null,messageLengthSize:8,start:function(){i.messageLength=0,i.fullMessageLength=i.messageLength64=[];for(var r=i.messageLengthSize/4,a=0;a<r;++a)i.fullMessageLength.push(0);return t=n.util.createBuffer(),e={h0:1779033703,h1:3144134277,h2:1013904242,h3:2773480762,h4:1359893119,h5:2600822924,h6:528734635,h7:1541459225},i}};return i.start(),i.update=function(a,o){"utf8"===o&&(a=n.util.encodeUtf8(a));var s=a.length;i.messageLength+=s,s=[s/4294967296>>>0,s>>>0];for(var c=i.fullMessageLength.length-1;c>=0;--c)i.fullMessageLength[c]+=s[1],s[1]=s[0]+(i.fullMessageLength[c]/4294967296>>>0),i.fullMessageLength[c]=i.fullMessageLength[c]>>>0,s[0]=s[1]/4294967296>>>0;return t.putBytes(a),f(e,r,t),(t.read>2048||0===t.length())&&t.compact(),i},i.digest=function(){var i=n.util.createBuffer();i.putBytes(t.bytes());var a={h0:e.h0,h1:e.h1,h2:e.h2,h3:e.h3,h4:e.h4,h5:e.h5,h6:e.h6,h7:e.h7};f(a,r,i);var o=n.util.createBuffer();return o.putInt32(a.h0),o.putInt32(a.h1),o.putInt32(a.h2),o.putInt32(a.h3),o.putInt32(a.h4),o.putInt32(a.h5),o.putInt32(a.h6),o.putInt32(a.h7),o},i};var o=!1,s=null;function f(e,t,r){for(var i,n,a,o,f,c,u,h,d,l,p,b,m,g=r.length();g>=64;){for(f=0;f<16;++f)t[f]=r.getInt32();for(;f<64;++f)i=((i=t[f-2])>>>17|i<<15)^(i>>>19|i<<13)^i>>>10,n=((n=t[f-15])>>>7|n<<25)^(n>>>18|n<<14)^n>>>3,t[f]=i+t[f-7]+n+t[f-16]|0;for(c=e.h0,u=e.h1,h=e.h2,d=e.h3,l=e.h4,p=e.h5,b=e.h6,m=e.h7,f=0;f<64;++f)a=(c>>>2|c<<30)^(c>>>13|c<<19)^(c>>>22|c<<10),o=c&u|h&(c^u),i=m+((l>>>6|l<<26)^(l>>>11|l<<21)^(l>>>25|l<<7))+(b^l&(p^b))+s[f]+t[f],m=b,b=p,p=l,l=d+i>>>0,d=h,h=u,u=c,c=i+(n=a+o)>>>0;e.h0=e.h0+c|0,e.h1=e.h1+u|0,e.h2=e.h2+h|0,e.h3=e.h3+d|0,e.h4=e.h4+l|0,e.h5=e.h5+p|0,e.h6=e.h6+b|0,e.h7=e.h7+m|0,g-=64}}t.exports=function(e){(t=a.create()).update(String.fromCharCode.apply(null,e));for(var t,i=(t=t.digest().data).length,n=new r(i),o=0;o<i;o++)n[o]=t.charCodeAt(o);return n}}).call(this,e("_process"),e("buffer").Buffer,e("timers").setImmediate)},{_process:322,buffer:49,timers:344}],33:[function(e,t,r){(function(r){const i=e("crypto"),n=e("bs58"),{decode_b:a,encode_b:o}=e("../node_modules/cashaddress/cashaddress.js"),s=e("../node_modules/bech32/segwit.js").decode,f=e("../node_modules/bech32/segwit.js").encode,{is_bech:c,deserialize_scriptSig:u,check_mOfn:h}=e("./utils.js"),d=function(e,t){let a;return t&&(e=r.concat([t,e])),a=i.createHash("sha256").update(e).digest(),a=(a=i.createHash("sha256").update(a).digest()).slice(0,4),n.encode(r.concat([e,a]))},l=function(e,t){let i=new r(n.decode(e),"hex");return t&&(i=i.slice(t.length)),i.slice(0,i.length-4)},p=function(e){return e=i.createHash("sha256").update(e).digest(),e=i.createHash("ripemd160").update(e).digest()},b=function(e,t){return d(p(e),t)},m=function(e,t,r,i){let n=l(e,t),a=d(n,r);return i||console.log("Address "+e+" converted to "+a),a},g=function(e,t){return"1"===e.substr(0,1)&&0!==t.p2pk[0]&&(e=m(e,new r("00","hex"),t.p2pk)),"3"===e.substr(0,1)&&0!==t.p2pk[0]&&(e=m(e,new r("05","hex"),t.p2sh)),e},v=function(e,t){return l(e,t.PRIV).slice(0,32)},y=function(e,t,n="p2sh",a=e.p2sh){let o;return-1===n.indexOf("p2wsh")?o=d(p(t),a):(o=i.createHash("sha256").update(t).digest(),o="p2wsh"===n?b(r.concat([new r([e.SEGWIT_VERSION]),new r([o.length]),o]),a):f("bc",0,o)),o},w=function(e,t){return e=20!==e.length?p(e):new r(e,"hex"),b(r.concat([new r([t.SEGWIT_VERSION]),new r([e.length]),e]),t.p2sh)},_=function(e,t){return b(r.concat([new r([t.SEGWIT_VERSION]),new r([e.length]),e]),t.p2sh)},S=function(e,t){return e=20!==e.length?p(e):new r(e,"hex"),f("bc",t.SEGWIT_VERSION,e)};t.exports={btc_encode:d,btc_decode:l,hash_160:p,rhmac:function(e,t){return i.createHmac("sha512",e).update(t).digest()},baddress:b,decode_redeem:function(e,t,i){let n,a,o=[];if(a=(a=(a=(t=new r(t,"hex")).slice(1)).slice(0,a.length-1)).slice(0,a.length-1),n=u(a,e)[1],!i){let i;i=h(t,e),n.forEach(function(t){o.push("Public Key: "+b(t,e.p2pk)+" equivalent to bitcoin address "+b(t,new r("00","hex"))),console.log("Public Key: "+b(t,e.p2pk)+" equivalent to bitcoin address "+b(t,new r("00","hex")))}),i="To use the create command and to spend your multisig transaction you must find at least "+i[0]+" private keys associated to those public keys",console.log(i),o.push(i),i="P2SH address "+y(e,t,"p2sh")+" equivalent to bitcoin address "+m(y(e,t,"p2sh"),e.p2sh,new r("05","hex"),!0),console.log(i),o.push(i),i="P2WSH (nested) address "+y(e,t,"p2wsh")+" equivalent to bitcoin address "+m(y(e,t,"p2wsh"),e.p2sh,new r("05","hex"),!0),console.log(i),o.push(i),i="P2WSH address "+y(e,t,"p2wsh2"),console.log(i),o.push(i),n=o}return n},hash_256:function(e){return i.createHash("sha256").update(e).digest()},double_hash256:function(e){return e=i.createHash("sha256").update(e).digest(),e=i.createHash("sha256").update(e).digest()},getKeyfromExtended:function(e){let t=l(e);return{chainCode:t.slice(13,45),key:t.slice(46,78)}},check_p2sh:function(e,t,i){let n=e.slice(2,e.length-1).toString("hex");if((t=p(t).toString("hex"))===n)return console.log("Redeemer script verified: "+d(new r(t,"hex"),i)),!0},convert:m,convert_:g,convert2:function(e,t,i){let n,f={},u="p2pkh",h=c(e);return h?u=20===(n=new r(s("bc",e).program)).length?"p2pkh":"p2sh":-1!==t.BECH32.indexOf(e.substr(0,1))?(u=(n=a(e)).type,n=new r(n.hash,"hex")):(-1===t.NOP2SH.indexOf(e.substr(0,1))&&-1===t.NOP2SH2.indexOf(e.substr(0,2))&&(u="p2sh"),n=l(e,"p2pkh"===u?t.p2pk:t.p2sh)),f.Type=u,"p2pkh"===u?(f.Address=d(n,"p2pkh"===u?i.p2pk:i.p2sh),f["Segwit(nested)"]=w(n,i),f["Segwit(bech)"]=S(n,i)):h?(f["Segwit(nested)"]=_(n,i),f["Segwit(bech)"]=e):f.Address=d(n,"p2pkh"===u?i.p2pk:i.p2sh),i.bch&&(h&&"p2sh"===u||(f["BCH bech"]=o(n,u,"bitcoincash"))),Object.keys(f).forEach(function(e){console.log(e+": "+f[e])}),f},bech_convert:function(e,t){return e=e.split(":")[1]||e,-1!==t.BECH32.indexOf(e.substr(0,1))?(console.log("Bech32 address "+e),e=a(e),e=d(new r(e.hash,"hex"),"p2sh"===e.type?t.p2sh:t.p2pk),console.log("Transformed in "+e)):e=g(e,t),e},privatekeyFromWIF:v,format_privKey:function(e,t){return e=e.map(function(e){return r.isBuffer(e)||(e=64===e.length?new r(e,"hex"):v(e,t)),e})},check_addr:function(e,t,n="p2sh",a){let o,f;if(-1===n.indexOf("p2wsh")?o=p(e).toString("hex"):(o=i.createHash("sha256").update(e).digest(),"p2wsh"===n?o=p(r.concat([new r([a.SEGWIT_VERSION]),new r([o.length]),o])).toString("hex"):(f=new r(s("bc",t).program).toString("hex"),o=o.toString("hex"))),c(t)||(f=l(t,a.p2sh).toString("hex")),console.log(o),console.log(f),o!==f)throw"Redeem script does not correspond to the address to be spent "+t},decode_bech32:s,encode_bech32:f,redeem_addr:y,segwit_nested_p2pk:w,segwit_bech_p2pk:S,segwit_bech_p2sh:function(e,t){return f("bc",t.SEGWIT_VERSION,e)},segwit_nested_p2sh:_}}).call(this,e("buffer").Buffer)},{"../node_modules/bech32/segwit.js":2,"../node_modules/cashaddress/cashaddress.js":5,"./utils.js":44,bs58:3,buffer:49,crypto:52}],34:[function(e,t,r){const i=e("./mnemonic.js"),{decode_xprv:n,encode_xprv:a,create_wallet:o}=e("./hd.js"),{compute_path:s,mod44_path:f}=e("./utils.js"),c=e("crypto"),u=function(e,t,r,n="btc"){let o,s=new i(t),f=s.toSeed(r);return o=[f,a(e,f,!0,n),s.check(r.split(" "))],console.log("Seed: "+f.toString("hex")),console.log("Root key: "+o[1]),console.log("Valid checksum: "+(o[2]?"Yes":"No")),o},h=function(e,t,r,n,a){let o=new i(t),s=o.words,f=s.length,c=n.length,u=[];if(r=r.split(" "),c>2)throw"You can't recover more than two missing words";if(n.forEach(function(e){r.splice(parseInt(e)-1,0,"test")}),r.length%3)throw"Total number of words must be a multiple of 3";let h=function(e){o.check(e)&&(a||console.log(e.join(" ")),u.push(e.slice()))},d=function(e){if(r[parseInt(n[0])-1]=s[e],c>1)for(let e=0;e<f;e++)r[parseInt(n[1])-1]=s[e],h(r);else h(r);++e<f&&d(e)};return d(0),u};t.exports={create_bip39:u,bip39_wallet:function(e,t,r,i="btc",n=t.DEFAULT_WALLET_NB,a=t.LEGACY_PATH||t.DEFAULT_PATH){let c;if(e.split(" ").length>1&&(e=(e=u(t,r,e,i))[1]),-1===a.indexOf("m")&&(c=parseInt(a),a="btc"===i||"bip32"===i?t.LEGACY_PATH:t.DEFAULT_PATH),a===t.DEFAULT_PATH||a===t.LEGACY_PATH)switch(i){case"bip44":a=t.DEFAULT_PATH;break;case"bip49":a=f(t.DEFAULT_PATH,"bip49");break;case"bip84":a=f(t.DEFAULT_PATH,"bip84");break;case"bip141":a=t.GLEGACY_PATH}switch(i){case"bip49":i="nested";break;case"bip84":i="bech";break;case"bip141":i="nested"}return c&&(a=s(a,c)),o(e,t,n,i,a)},recoverbip39:h,generatebip39:function(e,t,r=e.BIP39_nb){let n,a=[],o=0,s=new i(t).words;for(;a.length<r-1;){let e;e=s[parseInt(c.randomBytes(2).toString("hex"),16)%2048],-1===a.indexOf(e)&&(a[o]=e,o++)}return n=h(0,t,a.join(" "),[a.length+1],!0),a=n[parseInt(c.randomBytes(2).toString("hex"),16)%n.length],console.log(a.join(" ")),a.join(" ")}}},{"./hd.js":37,"./mnemonic.js":39,"./utils.js":44,crypto:52}],35:[function(e,t,r){(function(e){t.exports=function(t){let r,i=new e("Bitcoin seed"),n="m/44'/0'/0'/0/0",a=new e("169a","hex"),o=new e("ab36","hex"),s=0,f=null,c=null,u=null,h=null,d=new e("747800000000000000000000","hex"),l=new e("76657273696F6E0000000000","hex"),p=new e("76657261636B000000000000","hex"),b=new e("676574646174610000000000","hex"),m=1e8,g=2,v="BTC",y=new e("80","hex"),w=0,_=null,S=null,M=3652501241,x=!1,k=new e("00","hex"),A=new e("05","hex"),E="Bitcoin Signed Message:\n",I=8333,j=5e5,B=70015,z=8,C=["1"],P=["t1"],R=[],T=!1;if("BTC"===t)r="m/0'/0'/0'";else if("ZEC"===t)g=1,w=0,M=1680337188,v="ZEC",k=new e("1cb8","hex"),A=new e("1cbd","hex"),x=!1,I=8233,j=223500,B=170002,s=1893,n="m/44'/133'/0'/0/0",E="Zcash Signed Message:\n";else if("BTG"===t)g=2,w=64,S=79,M=1148012513,v="BTG",k=new e("26","hex"),A=new e("17","hex"),x=!0,I=8338,j=5e5,B=70016,C.push("G"),n="m/44'/156'/0'/0/0",E="Bitcoin Gold Signed Message:\n";else if("BCH"===t)g=2,w=64,S=0,M=3908297187,v="BCH",x=!0,I=8333,j=5e5,B=70015,C.push("q"),R.push("q"),R.push("p"),T=!0;else if("BCD"===t)g=12,w=0,M=3652509373,v="BCD",k=new e("00","hex"),A=new e("05","hex"),x=!1,I=7117,j=5e5,B=70015,m=1e7,z=7,_=new e("Thanks Ayms this module is great","utf8"),n="m/44'/999'/0'/0/0";else if("LTC"===t)g=2,w=0,M=3686187259,v="LTC",k=new e("30","hex"),A=new e("32","hex"),y=new e("b0","hex"),x=!1,I=9333,j=134e4,B=70015,C.push("L"),n="m/44'/2'/0'/0/0",E="Litecoin Signed Message:\n";else if("SBTC"===t)g=1,w=64,M=3652501241,v="SBTC",k=new e("00","hex"),A=new e("05","hex"),x=!1,I=8334,j=5e5,B=70016,_=new e("0473627463","hex"),n="m/44'/8888'/0'/0/0";else if("BTX"===t)g=1,w=0,M=3652501241,v="BTX",k=new e("00","hex"),A=new e("05","hex"),x=!1,I=8555,j=12e4,B=70015,n="m/44'/165'/0'/0/0";else if("DASH"===t)g=1,w=0,M=3177909439,v="DASH",k=new e("4c","hex"),A=new e("10","hex"),y=new e("cc","hex"),x=!1,I=9999,j=8e5,B=70208,C.push("X"),n="m/44'/5'/0'/0/0",E="DarkCoin Signed Message:\n";else if("DOGE"===t)g=1,w=0,M=3233857728,v="DOGE",k=new e("1e","hex"),A=new e("16","hex"),y=new e("9e","hex"),x=!1,I=22556,j=2e6,B=70004,C.push("D"),n="m/44'/3'/0'/0/0",E="Dogecoin Signed Message:\n";else if("UBTC"===t)g=2,w=8,M=3652501241,v="UBTC",k=new e("00","hex"),A=new e("05","hex"),x=!1,I=8333,j=5e5,B=770015,_=new e("027562","hex");else if("B2X"===t)g=1,S=0,w=49,M=3635786484,v="B2X",k=new e("00","hex"),A=new e("05","hex"),x=!1,I=8333,j=5e5,B=70015;else if("BPA"===t)g=1,w=32,S=47,M=3653549737,v="BPA",k=new e("37","hex"),A=new e("50","hex"),x=!0,I=8888,j=5e5,B=70018,C.push("P"),n="m/44'/6666'/0'/0/0";else if("BTCP"===t)g=1,w=64,S=42,M=3450006184,v="BTCP",k=new e("1325","hex"),A=new e("13af","hex"),x=!1,I=7933,j=25e4,B=180003,_=new e(0),P.push("b1"),n="m/44'/183'/0'/0/0",E="BitcoinPrivate Signed Message:\n";else if("BCP"===t)g=1,w=64,M=3779554628,v="BCP",k=new e("1c","hex"),A=new e("17","hex"),x=!0,I=8337,j=5e5,B=70016,C.push("C"),T=!0;else if("CDY"===t)g=2,w=64,S=111,M=3653551075,v="CDY",k=new e("1c","hex"),A=new e("58","hex"),x=!0,I=8367,j=5e5,B=70016,m=1e5,z=5,C.push("C"),n="m/44'/1145'/0'/0/0",T=!0;else if("BCA"===t)g=1,w=64,S=93,M=3894264143,v="BCA",k=new e("17","hex"),A=new e("0a","hex"),x=!0,I=7333,j=5e5,B=70020,C.push("A"),n="m/44'/185'/0'/0/0";else if("WBTC"===t)g=1,w=64,M=3652501241,v="WBTC",k=new e("00","hex"),A=new e("05","hex"),x=!1,I=8338,j=5e5,B=70016,_=new e("0477627463","hex"),n="m/44'/188'/0'/0/0";else if("BTW"===t)g=1,w=64,S=87,M=2004116216,v="BTW",k=new e("49","hex"),A=new e("1f","hex"),x=!0,I=8357,j=5e5,B=70016,m=1e4,z=4,C.push("W"),n="m/44'/777'/0'/0/0";else if("BTF"===t)g=1,w=64,S=70,M=3872711418,v="BTF",k=new e("24","hex"),A=new e("28","hex"),x=!0,I=8346,j=5e5,B=70015,C.push("F"),n="m/44'/9888'/0'/0/0";else if("BCX"===t)g=1,w=16,S=0,M=4189848849,v="BCX",k=new e("4b","hex"),A=new e("3f","hex"),x=!0,I=9003,j=5e5,B=70015,m=1e4,z=4,C.push("X"),n="m/44'/1688'/0'/0/0";else if("BTN"===t)g=1,w=64,S=88,M=877475745,v="BTN",k=new e("00","hex"),A=new e("05","hex"),x=!0,I=8838,j=5e5,B=70016,n="m/44'/1000'/0'/0/0";else if("BTH"===t)g=1,w=64,S=53,M=78477265,v="BTH",k=new e("28","hex"),A=new e("05","hex"),x=!0,I=8222,j=5e5,B=70016,m=1e6,z=6,C.push("H");else if("BTV"===t)g=1,w=64,S=50,M=3652501241,v="BTV",k=new e("00","hex"),A=new e("05","hex"),x=!1,I=8333,j=5e5,B=70015,n="m/44'/7777'/0'/0/0";else if("BTT"===t)g=13,w=0,M=3501506297,v="BTT",k=new e("00","hex"),A=new e("05","hex"),x=!1,I=18888,j=5e5,B=70015,_=new e("Thanks Ayms this module is great","utf8"),n="m/44'/34952'/0'/0/0";else if("BTP"===t)g=1,w=64,S=80,M=3652501241,v="BTP",k=new e("38","hex"),A=new e("05","hex"),x=!0,I=8346,j=5e5,B=70015,m=1e7,z=7,C.push("P"),n="m/44'/8999'/0'/0/0";else if("BCK"===t)g=1,w=64,S=143,M=370553519,v="BCK",k=new e("00","hex"),A=new e("05","hex"),x=!0,I=16333,j=5e5,B=70015;else if("BTSQ"===t)g=1,w=16,S=31,M=3653553849,v="BTSQ",k=new e("3f","hex"),A=new e("3a","hex"),x=!0,I=8866,j=5e5,B=70019,m=1e5,z=5,C.push("S");else if("LCC"===t)g=2,w=64,M=4172997831,v="LCC",k=new e("1c","hex"),A=new e("05","hex"),y=new e("b0","hex"),x=!1,I=62458,j=1371111,B=70015,m=1e7,z=7,C.push("C"),n="m/44'/192'/0'/0/0";else if("ZCL"===t)g=1,M=1680337188,v="ZCL",k=new e("1cb8","hex"),A=new e("1cbd","hex"),x=!1,I=8033,j=25e4,B=170002,n="m/44'/147'/0'/0/0",E="Zcash Signed Message:\n";else if("BICC"===t)g=1,w=16,M=3652501241,v="BICC",k=new e("00","hex"),A=new e("05","hex"),x=!1,I=8666,j=499888,B=731800,_=new e("03313131","hex");else if("LBTC"===t)g=65281,w=0,M=3618881273,v="LBTC",k=new e("00","hex"),A=new e("05","hex"),x=!1,I=9333,j=1334370,B=70013,n="m/44'/998'/0'/0/0";else if("BCI"===t)g=1,w=64,S=79,M=654238957,v="BCI",k=new e("66","hex"),A=new e("17","hex"),x=!0,I=8331,j=505083,B=70016,C.push("i");else if("BCBC"===t)g=1,w=0,M=3652501241,v="BCBC",k=new e("00","hex"),A=new e("05","hex"),x=!1,I=8341,j=498754,B=70015;else if("BTCH"===t)g=1,w=0,M=2380590841,v="BTCH",k=new e("3c","hex"),A=new e("55","hex"),y=new e("bc","hex"),x=!1,I=7770,j=507089,B=170002,C.push("R");else if("GOD"===t)g=2,w=8,S=107,M=3652501241,v="GOD",k=new e("61","hex"),A=new e("17","hex"),x=!0,I=8885,j=501226,B=70015,C.push("g"),n="m/44'/9999'/0'/0/0";else if("BBC"===t)g=1,w=64,S=66,M=3284321022,v="BBC",k=new e("13","hex"),A=new e("37","hex"),x=!0,I=8366,j=508888,B=70015,C.push("8"),m=1e7,z=7,n="m/44'/1111'/0'/0/0";else if("NBTC"===t)g=1,w=64,S=78,M=3635724025,v="BBC",k=new e("00","hex"),A=new e("05","hex"),x=!0,I=18880,j=501225,B=70015;else if("BCL"===t)g=1,M=1299467236,v="BCL",k=new e("00","hex"),A=new e("05","hex"),x=!1,I=8338,j=518800,B=70015;else{if("BSV"!==t)throw"You forgot to mention the network version";g=2,w=64,M=3908297187,v="BSV",k=new e("00","hex"),A=new e("05","hex"),x=!0,I=8333,j=546229,B=70015,C.push("q"),R.push("q"),R.push("p"),n="m/44'/236'/0'/0/0",T=!0}return{MASTER_SECRET:i,HARDENED_OFFSET:2147483648,BITCOIN_VERSIONS:{private:76066276,public:76067358},BITCOIN_VERSIONS_BECH:{public:78792518,private:78791436},BITCOIN_VERSIONS_NESTED:{public:77429938,private:77428856},DEFAULT_WALLET_NB:100,DEFAULT_PATH:n,LEGACY_PATH:r,GLEGACY_PATH:"m/0'/0'/0'",zcash_z:a,zcash_spending_key:o,SUPER_MAGIC:s,SIGHASH_ALL:f=1|w,SIGHASH_NONE:c=2|w,SIGHASH_SINGLE:u=3|w,SIGHASH_ANYONECANPAY:h=128|w,T_O:2e3,TX_COMMAND:d,TX_VERSION:l,TX_VERACK:p,TX_GETDATA:b,ISSIG1:48,ISSIG2:2,OP_PUSHDATA1:76,OP_PUSHDATA2:77,OP_PUSH:512,MAX_OP_PUSH:520,OP_DUP:"76",OP_HASH160:"a9",OP_RETURN:"6a",OP_0:"00",OP_16:"60",OP_EQUAL:"87",OP_EQUALVERIFY:"88",OP_CHECKSIG:"ac",OP_CHECKSIGVERIFY:"ad",OP_CHECK_MULTISIG:"ae",OP_CODESEPARATORS:"ab",FEES:250,SATO:m,VERSION:g,VERSION_:v,PRIV:y,SIGHASH_FORKID:w,FORK_STRING:_,FORKID_IN_USE:S,MAIN:M,BIP143:x,p2pk:k,p2sh:A,prefix:E,PORT:I,LASTBLOCK:j,PROTOCOL:B,D:z,NOP2SH:C,NOP2SH2:P,BECH32:R,mOfn:"mofn",SEGWIT:!1,SEGWIT_VERSION:0,SEG_MARKER:0,SEG_FLAG:1,BIP39_nb:15,bch:T}}}).call(this,e("buffer").Buffer)},{buffer:49}],36:[function(e,t,r){(function(r){const i=e("crypto"),n=e("./transactions.js"),{btc_decode:a,baddress:o,check_addr:s,bech_convert:f,decode_redeem:c}=e("./addresses.js"),{getPublicfromPrivate:u}=e("./keys.js"),{is_bech:h,clone_inputs:d,big_satoshis:l,testamount:p,check_mOfn:b}=e("./utils.js");t.exports={create:function(e,t){let m,g,v,y=[],w=0,_=parseFloat(e[6]),S=0,M=e[5].split("_"),x=[];if(e[7]&&(g=e[7].split("_")),g){if(g.length!==M.length)throw"Number of destination addresses does not correspond to number of amounts";g.forEach(function(e,t){e=parseFloat(e),x[t]=[,e],S+=e})}M.forEach(function(e,r){let i="p2pkh";e=f(e,t)||e,console.log("Destination address "+e),h(e)?i="p2w":-1===t.NOP2SH.indexOf(e.substr(0,1))&&-1===t.NOP2SH2.indexOf(e.substr(0,2))&&(console.log("Warning !!!! You are sending the funds to a P2SH address, make sure that you control it, especially if it's a BIP141 segwit address"),i="p2sh"),x[r]?(x[r][0]=e,x[r][2]=i):x[r]=[e,,i]});let k=e[0].split("_"),A=d(e[1].split("_"),k,"Number of prevaddr inconsistent with number of inputs"),E=d(e[2].split("_"),k,"Number of prevamount inconsistent with number of inputs"),I=d(e[3].split("_"),k,"Number of previndex inconsistent with number of inputs"),j=d(e[4].split("_"),k,"Number of privkeys inconsistent with number of inputs");A.forEach(function(e,r){let i,n=e.split("-")[0],a=e.split("-")[1];t.SEGWIT=t.SEGWIT||a,(i=f(n,t))&&(A[r]=i,a&&(A[r]+="-"+a))}),t.SEGWIT=!!t.SEGWIT,t.SEGWIT&&("BTCP"!==t.VERSION_?console.log("!!!!!!!!!! - Some prevaddr are corresponding to segwit addresses, creating a segwit transaction"):console.log("\r\n\r\n!!!!!!!!!! - Some prevaddr are corresponding to segwit addresses, Bitcoin Private partially supports segwit for now, creating a BTCP-like segwit transaction\r\n\r\n")),E.forEach(function(e){w+=parseFloat(e)});let B=p([w,_,S],t);if(B[0]){if(0===S&&(x[0][1]=l(B[0],t)),j.forEach(function(e,n){let f="p2pkh",d=A[n].split("-")[0],l=A[n].split("-")[1],p=h(d),m=l?p?"p2wpkh2":"p2wpkh":"p2pkh";if((e=e.split("-")).length>1){if(m=l?p?"p2wsh2":"p2wsh":"p2sh",(-1!==t.NOP2SH.indexOf(d.substr(0,1))||-1!==t.NOP2SH2.indexOf(d.substr(0,2)))&&!p)throw"prevaddr address is not a p2sh one, multisig can't be used";if(e[e.length-1]===t.mOfn){let i,n,a,o,h=0;if(f=new r(e[e.length-2],"hex"),s(f,d,m,t),!(o=b(f,t))[1])throw"Wrong multisig redeem script";if(o=o[0],e=e.slice(0,e.length-2),n=new Array(e.length),(i=c(t,f,!0)).forEach(function(r){r=r.toString("hex");for(let i=0;i<e.length;i++)if((a=u(e[i],t))===r){n[h]=e[i],h++;break}}),n.length!==o)throw"Wrong number of keys in redeem script";e=n}else f="p2sh";if(l&&"BTCP"===t.VERSION_){let e=d;if(d=o(f,t.p2sh),console.log("BTCP segwit output, changing "+e+" to pubkey address "+d),v=i.createHash("sha256").update(f).digest(),v=r.concat([new r([t.SEGWIT_VERSION]),new r([v.length]),v]),v=r.concat([new r([v.length]),v]).toString("hex"),console.log("Segwit redeem is "+v),o(new r(v.slice(2),"hex"),t.p2sh)!==e)throw"redeem script does not correspond to segwit address";m="p2sh",t.SEGWIT=!1}}else{if(-1===t.NOP2SH.indexOf(d.substr(0,1))&&-1===t.NOP2SH2.indexOf(d.substr(0,2))&&!t.SEGWIT&&!l)throw"prevaddr is a p2sh address, redeem script should be specified";if(l&&"BTCP"===t.VERSION_){let i=d;if(d=u(e[0],t),d=o(new r(d,"hex"),t.p2pk),console.log("BTCP segwit output, changing "+i+" to pubkey address "+d),v=a(d,t.p2pk),v=r.concat([new r([t.SEGWIT_VERSION]),new r([v.length]),v]),v=r.concat([new r([v.length]),v]).toString("hex"),console.log("Segwit redeem is "+v),o(new r(v.slice(2),"hex"),t.p2sh)!==i)throw"redeem script does not correspond to segwit address";m="p2pkh",t.SEGWIT=!1}}y.push([[k[n],d,parseFloat(E[n]),m],parseInt(I[n]),null,f,null,e,v])}),B[2]){let e=y[0][0][3];"p2wpkh"!==e&&"p2wsh"!==e||(e="p2sh"),"p2wpkh2"!==e&&"p2wsh2"!==e||(e="p2w"),x.push([y[0][0][1],l(B[2],t),e]),m=new n(t,y,x,null)}else m=new n(t,y,x,null);return m.res}console.log("Something is wrong with your numbers, please check them with the testamount command")},Tx:n}}).call(this,e("buffer").Buffer)},{"./addresses.js":33,"./keys.js":38,"./transactions.js":43,"./utils.js":44,buffer:49,crypto:52}],37:[function(e,t,r){(function(r){const{btc_encode:i,btc_decode:n,hash_160:a,rhmac:o,baddress:s}=e("./addresses.js"),{privateKeyderive:f,FormatPrivate:c,PRFx:u,getPublicfromRawPrivate:h,ecdh_priv:d,getAddressfromPrivate2:l}=e("./keys.js"),{reverse:p,compute_path:b,mod44_path:m}=e("./utils.js"),g=e("crypto"),v=function(e,t,r,n){let a=[],o=e[0],s=e.length,f=e[4];n&&a.push("# Root key: "+e[1]),e[2]&&a.push(i(e[2],t.PRIV)+" hdseed=1 addr="+l(e[2],t,r)+" path=m"),path=f[0],s_=f[1],not_hardened=f[2],nb=f[3];for(let n=0;n<nb;n++)priv=e[n+5],a.push(i(priv,t.PRIV)+" addr="+l(priv,t,r)+" path="+path+"/"+(n+s_)+(not_hardened?"":"'"));if(e.length>nb+5){a.push("\r\n# Zkeys\r\n"),nb+=6;for(let t=nb;t<s;t++)a.push("# "+e[t][0]+" "+o+" # zaddr="+e[t][1]+" path="+path+"/"+(t+s_-nb)+(not_hardened?"":"'"))}return a.forEach(function(e){console.log(e)}),a},y=function(e,t,i,n="btc"){let a,o=new r(13),s=i.BITCOIN_VERSIONS;switch(n){case"nested":s=i.BITCOIN_VERSIONS_NESTED;break;case"bech":s=i.BITCOIN_VERSIONS_BECH}"private"===t?(t=s.private,a=r.concat([new r([0]),e.privateKey])):(t=s.public,a=e.publicKey),o.writeUInt32BE(t,0),o.writeUInt8(e.depth,4);let f=e.depth?e.parentFingerprint:0;return o.writeUInt32BE(f,5),o.writeUInt32BE(e.index,9),o=r.concat([o,e.chainCode]),o=r.concat([o,a])},w=function(e,t,i,n="btc"){let c,u={},d=!i,l=new r(4),p=t.p2pk;l.writeUInt32BE(d?e+t.HARDENED_OFFSET:e,0),d?c=r.concat([new r([0]),this.privateKey,l]):(this.publicKey||(this.publicKey=h(this.privateKey)),c=r.concat([this.publicKey,l]));let b=o(this.chainCode,c),m=b.slice(0,32),g=b.slice(32);if(this.privateKey)u.privateKey=f(this.privateKey,m),u.publicKey=h(u.privateKey),u.address=s(u.publicKey,p||this.version);else try{u.publicKey=publicKeyderive(this.publicKey,m)}catch(e){return}return u.fingerprint=a(u.publicKey).slice(0,4).readUInt32BE(0),u.chainCode=g,u.depth=this.depth+1,u.parentFingerprint=this.fingerprint,u.index=e+t.HARDENED_OFFSET,u.version=p||this.version,u.deriveChild=w.bind(u),u},_=function(e,t){let r={};return e=n(e),r.privateKey=e.slice(46),r.chainCode=e.slice(13,45),r.version=t,r.index=0,r.depth=0,r.deriveChild=w.bind(r),r};t.exports={create_wallet:function(e,t,n=t.DEFAULT_WALLET_NB,f="btc",l){let g,S,M,x,k,A,E,I=(new Date).toISOString(),j=[],B=t.p2pk;if(E=void 0!==e.privateKey,-1!==f.indexOf("m/")&&(l=f,f="btc"),void 0===l&&(l=0),-1!==f.indexOf("bip")){let e,r=-1!==l.indexOf("m/");switch(f){case"bip32":e=t.LEGACY_PATH||t.DEFAULT_PATH;break;case"bip44":e=t.DEFAULT_PATH;break;case"bip49":e=m(t.DEFAULT_PATH,"bip49"),f="nested";break;case"bip84":e=m(t.DEFAULT_PATH,"bip84"),f="bech";break;case"bip141":e=t.GLEGACY_PATH,f="nested"}r||(l=b(e,l))}if(-1===l.indexOf("m")){let e=t.LEGACY_PATH||t.DEFAULT_PATH;l=b(e,l)}j.push(I),E?x=e:(r.isBuffer(e)||-1===e.indexOf("prv")&&(e=new r(e,"hex")),x=r.isBuffer(e)?function(e,t,r="btc"){let i,n={},f=t.p2pk;return i=o(t.MASTER_SECRET,e),n.seed=e,n.privateKey=i.slice(0,32),n.chainCode=i.slice(32),n.publicKey=h(n.privateKey),s(n.publicKey,f),n.address=s(n.publicKey,f),n.fingerprint=a(n.publicKey).slice(0,4).readUInt32BE(0),n.version=f,n.index=0,n.depth=0,n.deriveChild=w.bind(n),n}(e,t,f):_(e,B)),j.push(i(y(x,"private",t,f))),M=E||!r.isBuffer(e)?null:r.concat([e,new r("01","hex")]),j.push(M),(l=l.split("/")).shift(),A=l.length;for(let e=0;e<A;e++)2!==(k=l[e].split("'")).length?not_hardened=!0:not_hardened=!1,k=parseInt(k[0]),E||e===A-1||(x=x.deriveChild(k,t,not_hardened,f));j.push(x),l.pop(),j.push(["m/"+l.join("/"),k,not_hardened,n]);for(let e=0;e<n;e++)g=x.deriveChild(e+k,t,not_hardened,f),S=r.concat([g.privateKey,new r("01","hex")]),j.push(S);if("ZEC"===t.VERSION_){j.push("Zkeys");for(let e=0;e<n;e++)(g=x.deriveChild(e+k,t,not_hardened,f)).ask=p(c(u(g.privateKey,1))),g.ask=new r(d(g.ask).getPrivate("hex"),"hex"),S=new r(g.ask.length),g.ask.copy(S),g.apk=p(u(S,0)),g.sk_enc=p(c(u(S,1))),g.pk_enc=d(g.sk_enc),g.pk_enc=new r(g.pk_enc.getPublic(!0,"arr"),"hex"),g.z=p(r.concat([g.pk_enc,g.apk])),g.ask_a=i(g.ask,t.zcash_spending_key),g.z_address=i(g.z,t.zcash_z),j.push([g.ask_a,g.z_address])}return v(j,t,f,!E)},decode_xprv:_,encode_xprv:function(e,t,r,n="btc"){let a={};return r?(t=g.createHmac("sha512",e.MASTER_SECRET).update(t).digest(),a.privateKey=t.slice(0,32),a.chainCode=t.slice(32)):(a.privateKey=t.slice(0,32),a.chainCode=t.slice(32)),a.depth=0,a.index=0,i(y(a,"private",e,n))}}}).call(this,e("buffer").Buffer)},{"./addresses.js":33,"./keys.js":38,"./utils.js":44,buffer:49,crypto:52}],38:[function(e,t,r){(function(r){const i=e("elliptic").ec,n=new i("secp256k1"),a=new i("curve25519"),o=e("../node_modules/sha256-c/SHA256Compress.js"),{baddress:s,double_hash256:f,privatekeyFromWIF:c,segwit_nested_p2pk:u,segwit_bech_p2pk:h,encode_bech32:d,hash_160:l,btc_encode:p}=e("./addresses.js"),b=e("../node_modules/elliptic/node_modules/bn.js"),{varlen:m}=e("./utils.js"),g=e("../node_modules/cashaddress/cashaddress.js").encode_b,v=n.curve,y=function(e){return new r(n.keyFromPrivate(e).getPublic(!0,"arr"),"hex")},w=function(e){return e.length>32&&(e=e.slice(0,32)),y(e)},_=function(e,t){return e=new r(e,"utf8"),t=r.concat([m(e.length),e,m(t.length),new r(t,"utf8")]),f(t)};t.exports={privateKeyderive:function(e,t){let i=new b(t),n=v.n;if(i.cmp(n)>=0)throw new Error;if(i.iadd(new b(e)),i.cmp(n)>=0&&i.isub(n),i.isZero())throw new Error;return i.toArrayLike(r,"be",32)},FormatPrivate:function(e){return e[0]&=248,e[31]&=127,e[31]|=64,e},PRFx:function(e,t){let i=new r("00000000000000000000000000000000000000000000000000000000000000","hex");return e[0]|=192,i=r.concat([e,new r([t]),i]),o(i)},getPublicfromRawPrivate:y,ecdh_priv:function(e){return a.keyFromPrivate(e)},getAddressfromPrivate:function(e,t){return e.length>32&&(e=e.slice(0,32)),s(y(e),t)},getAddressfromPrivate2:function(e,t,r="btc"){let i,n;switch(e.length>32&&(e=e.slice(0,32)),i=t.p2pk,n=y(e),r){case"nested":return u(n,t);case"bech":return h(n,t)}return s(n,i)},getPublicfromPrivate:function(e,t){return e=c(e,t),y(e).toString("hex")},getpubKeyfromPrivate:w,format_pubKey:function(e){return e.map(function(e){return w(e)})},getpubkeyfromSignature:function(e,t){let i=[];e=f(e);for(let a=0;a<4;a++)try{let o=n.recoverPubKey(e,t,a),s=n.keyFromPublic(o,"hex");o=new r(s.getPublic(!0,"arr"),"hex"),console.log(o),console.log("Public key of signature can be "+l(o).toString("hex")),s.verify(e,t)&&i.push(o)}catch(e){}return i},recoverPubKey:function(e,t,r){return n.recoverPubKey(e,t,r)},keyFromPublic:function(e){return n.keyFromPublic(e,"hex")},sign:function(e,t){return e=f(e),console.log("Signing "+e.toString("hex")),n.sign(e,t,"hex",{canonical:!0}).toDER()},signmessage:function(e,t,i,a="n"){let o,s;switch(t=_(e.prefix,t),i=c(i,e),s=n.sign(t,i,"hex",{canonical:!0}),a){case"n":o=new r([31]);break;case"s":o=new r([35]);break;case"b":o=new r([39])}return s=r.concat([o,s.r.toArrayLike(r),s.s.toArrayLike(r)]).toString("base64"),console.log("Signature : "+s),s},verifymessage:function(e,t,i,a){let o,s=[!1];o=(i=new r(i,"base64"))[0],i={r:(i=i.slice(1)).slice(0,32).toString("hex"),s:i.slice(32).toString("hex")},t=_(e.prefix,t);for(let o=0;o<4;o++)try{let f=n.recoverPubKey(t,i,o),c=n.keyFromPublic(f,"hex");f=new r(c.getPublic(!0,"arr"),"hex");let u=l(f);a!==p(u,e.p2pk)&&a!==p(l(r.concat([new r([e.SEGWIT_VERSION]),new r([u.length]),u])),e.p2sh)&&a!==d("bc",e.SEGWIT_VERSION,u)&&a!==g(u,"p2pkh","bitcoincash").split(":")[1]||(s=[!0,f])}catch(e){}return console.log(s[0]?"Signature verified - Public key "+s[1].toString("hex"):"Wrong signature"),s=[s[0]?"Signature verified - Public key "+s[1].toString("hex"):"Wrong signature"]}}}).call(this,e("buffer").Buffer)},{"../node_modules/cashaddress/cashaddress.js":5,"../node_modules/elliptic/node_modules/bn.js":22,"../node_modules/sha256-c/SHA256Compress.js":32,"./addresses.js":33,"./utils.js":44,buffer:49,elliptic:6}],39:[function(e,t,r){(function(r){const{toHex2:i,toBin:n}=e("./utils.js"),a=e("crypto"),o=e("../words/words.json"),s=function(e){if(this.PBKDF2_ROUNDS=2048,this.words=o[e],!this.words)throw"Invalid language"};s.prototype.toSeed=function(e,t=""){return e=e.normalize("NFKD"),t="mnemonic"+(t=t.normalize("NFKD")),a.pbkdf2Sync(e,t,this.PBKDF2_ROUNDS,64,"sha512")},s.prototype.check=function(e){let t,o=e.length,s="",f="";if(0==o||o%3)throw"Number of words must be a multiple of 3";o=11*o%32;for(let t=0;t<e.length;t++){let r=e[t],i=this.words.indexOf(r);if(-1==i)throw r+" not in word list";s+=n(i,11)}for(f=s.slice(s.length-o),s=i(s.slice(0,s.length-o)),t=a.createHash("sha256").update(new r(s,"hex")).digest().toString("hex"),t=parseInt(t.slice(0,2),16).toString(2);8!==t.length;)t="0"+t;return(t=t.slice(0,o))===f},t.exports=s}).call(this,e("buffer").Buffer)},{"../words/words.json":46,"./utils.js":44,buffer:49,crypto:52}],40:[function(e,t,r){(function(r){const i=e("net"),n=e("crypto"),{toHex:a,reverse:o}=e("./utils.js"),{double_hash256:s}=e("./addresses.js");t.exports=function(e,t,f,c=e.PORT){let u=[],h=new r(4);h.writeUInt32LE(e.MAIN);let d=r.concat([h,e.TX_VERACK,new r("00000000","hex"),new r("5df6e0e2","hex")]);if(f)u.push(f);else switch(e.VERSION_){case"BTG":u=["btg.suprnova.cc"];break;case"BTC":u=["bitcoin.sipa.be"];break;case"BCH":u=["bch.suprnova.cc"];break;case"ZEC":u=["mainnet.z.cash"];break;default:return}console.log("Sending to "+u),u.forEach(function(f){let u=new i.Socket;u.setNoDelay(!0),u.on("connect",function(){console.log("Connected to : "+f+":"+c);let t=function(e,t,i){let f=new r("0100000000000000","hex"),c=new r("00000000000000000000FFFF","hex"),u=new r("00","hex"),h=new r(4);h.writeUInt32LE(i.MAIN);let d=new r(4);t=new r(t.split(".")).readUInt32BE(),d.writeUInt32BE(t),d=r.concat([d,new r(a(i.PORT,2),"hex")]);let l=new r(4);e=new r(e.split(".")).readUInt32BE(),l.writeUInt32BE(e),l=r.concat([l,new r(a(i.PORT,2),"hex")]);let p=n.randomBytes(8),b=new r("/https://github.com/Ayms/bitcoin-transactions/","utf8");b=r.concat([new r([b.length]),b]);let m=new r(4);m.writeUInt32LE(i.LASTBLOCK);let g=new r(4);g.writeUInt32LE(i.PROTOCOL),g=r.concat([g,f]),g=r.concat([g,o(new r(a(Date.now(),8),"hex"))]),g=r.concat([g,f,c,d,f,c,l,p,b,m,u]);let v=new r(4);v.writeUInt32LE(g.length);let y=s(g);return y=y.slice(0,4),r.concat([h,i.TX_VERSION,v,y,g])}("127.0.0.1","127.0.0.1",e);u.write(t),console.log("Sent version to "+f)}),u.on("data",function(i){if(console.log("------ Answer received from "+f),function(e,t){let i=new r(4);i.writeUInt32LE(t.MAIN),(e=e.toString("hex").split(i.toString("hex"))).shift(),e.forEach(function(e){let t=(e=new r(e,"hex")).slice(0,12).toString();console.log(t),-1!==t.indexOf("reject")&&(console.log("------ Transaction rejected ---- "),e=e.slice(20),console.log(e.toString("hex")))})}(i,e),console.log(i.toString("hex")),-1!==i.toString("hex").indexOf(e.TX_VERACK.toString("hex"))&&(console.log("-------- Verack received - completing handshake with "+f),t||u.write(d),t)){console.log("------ Sending transaction to "+f);let e=new r(t,"hex");u.write(r.concat([d,e])),console.log("Sent "+e.toString("hex")+" to "+f),console.log("Sent verack + tx")}}),u.on("error",function(e){console.log(e),console.log("Error with "+f+":"+c)}),u.on("end",function(){console.log("End connection with "+f+":"+c)}),u.connect(c,f),setTimeout(function(){try{u.end()}catch(e){}},1e4)})}}).call(this,e("buffer").Buffer)},{"./addresses.js":33,"./utils.js":44,buffer:49,crypto:52,net:47}],41:[function(e,t,r){(function(r){const{btc_encode:i,btc_decode:n,baddress:a,hash_160:o,privatekeyFromWIF:s,segwit_nested_p2pk:f,segwit_bech_p2pk:c}=e("./addresses.js"),{getPublicfromRawPrivate:u}=e("./keys.js"),h=e("../node_modules/cashaddress/cashaddress.js").encode_b,d=function(e,t){let r=[20===e.length?null:e,20===e.length?i(e,t.p2pk):a(e,t.p2pk),f(e,t),c(e,t),20===e.length?e:o(e)];return t.bch&&r.push(h(20===e.length?e:o(e),"p2pkh","bitcoincash")),r[0]&&console.log("Pubkey: "+r[0].toString("hex")),console.log("Address: "+r[1]),console.log("Segwit nested: "+r[2]),console.log("Segwit bech32: "+r[3]),console.log("Hash160: "+r[4].toString("hex")),t.bch&&console.log("BCH bech: "+r[5]),(r=[r[0]?"Pubkey: "+r[0].toString("hex"):"","Address: "+r[1],"Segwit nested: "+r[2],"Segwit bech32: "+r[3],"Hash160: "+r[4].toString("hex"),r[5]?"BCH bech: "+r[5]:""])[0]||r.unshift(),r};t.exports={getpubfromprivate:function(e,t){let i,n;return 64===t.length&&(t=new r(t,"hex")),r.isBuffer(t)||(t=s(t,e)),n=u(t),i=d(n,e)},getprivfromWIF:function(e,t){let r=s(t,e);return console.log("Priv: "+r.toString("hex")),"Priv: "+r.toString("hex")},privtoWIF:function(e,t){let n=i(r.concat([new r(t,"hex"),new r("01","hex")]),e.PRIV);return console.log("WIF Priv: "+n),n},pubtoaddress:function(e,t){return t=66===t.length?new r(t,"hex"):n(t,e.p2pk),d(t,e)}}}).call(this,e("buffer").Buffer)},{"../node_modules/cashaddress/cashaddress.js":5,"./addresses.js":33,"./keys.js":38,buffer:49}],42:[function(e,t,r){(function(r){const{redeem_addr:i,hash_160:n}=e("./addresses.js"),{getPublicfromPrivate:a}=e("./keys.js"),{encode_b:o}=e("../node_modules/cashaddress/cashaddress.js");t.exports={encode_redeem:function(e,t,s,f){let c=[],u=s.length,h=new r(0);if(t>u)throw"Number of keys required can't be superior to the total number of keys";if(u>16)throw"Can't have more than 16 keys in a multisig transaction";return s.forEach(function(t){t=new r(f?t:a(t,e),"hex"),h=r.concat([h,new r([t.length]),t])}),u=u.toString(16),t=t.toString(16),u=u.length>1?96:parseInt("5"+u,16),t=t.length>1?96:parseInt("5"+t,16),h=r.concat([new r([t]),h,new r([u]),new r(e.OP_CHECK_MULTISIG,"hex")]),c.push(h),c.push(i(e,h,"p2sh")),c.push(i(e,h,"p2wsh")),c.push(i(e,h,"p2wsh2")),e.bch&&c.push(o(n(h),"p2sh","bitcoincash")),console.log("Redeem script: "+c[0].toString("hex")),console.log("Address: "+c[1]),console.log("Segwit (nested): "+c[2]),console.log("Segwit (bech32): "+c[3]),c[4]&&console.log("BCH bech: "+c[4]),c=["Redeem script: "+c[0].toString("hex"),"Address: "+c[1],"Segwit (nested): "+c[2],"Segwit (bech32): "+c[3],c[4]?"BCH bech: "+c[4]:""]}}}).call(this,e("buffer").Buffer)},{"../node_modules/cashaddress/cashaddress.js":5,"./addresses.js":33,"./keys.js":38,buffer:49}],43:[function(e,t,r){(function(r){const{reverse:i,decodevarlen:n,is_bech:a,issig:o,is_segwit:s,toHex:f,big_satoshis:c,decimals:u,write:h,clone_inputs:d,varlen:l,decode_script:p,op_push:b,op_push2:m,deserialize_scriptSig:g,serialize_sig:v,parse_op_push:y,count_w:w,check_mOfn:_}=e("./utils.js"),{btc_encode:S,btc_decode:M,hash_160:x,rhmac:k,baddress:A,decode_redeem:E,hash_256:I,double_hash256:j,getKeyfromExtended:B,check_p2sh:z,convert:C,convert_:P,bech_convert:R,privatekeyFromWIF:T,format_privKey:q,check_addr:O,decode_bech32:L,encode_bech32:N}=e("./addresses.js"),{privateKeyderive:U,FormatPrivate:D,PRFx:H,getPublicfromRawPrivate:F,ecdh_priv:K,getAddressfromPrivate:V,getPublicfromPrivate:W,getpubKeyfromPrivate:G,format_pubKey:X,getpubkeyfromSignature:Z,recoverPubKey:Y,keyFromPublic:J,sign:Q}=e("./keys.js"),$=function(e,t,n,a){if(this.coin=e,this.input=[],this.output=[],this.res=[],this.fees=0,t){let o=!1;this.nLockTime=new r(4),a=a||0,this.nLockTime.writeUInt32LE(a),this.nVersion=new r(4),this.nVersion.writeUInt32LE(e.VERSION),"BCD"!==e.VERSION_&&"BTT"!==e.VERSION_||(this.preblockhash=i(e.FORK_STRING)),this.sigHash=new r(4),this.sigHash.writeUInt32LE(e.SIGHASH_ALL),this.nbinput=t.length,this.nboutput=n.length,this.version=e.VERSION_,t.forEach(function(t){let i=t[2],n=t[3];if(i&&n)throw"data and script are exclusive";let a,o=q(t[5],e),s=t[6]?new r(t[6],"hex"):null;if("p2pkh"===n){if(o.length>1)throw"can't have multiple signatures";o=o[0],a=G(o,e),n=null}else a=X(o),Array.isArray(t[0])&&O(n,t[0][1],t[0][3],e);let f=i||n;f&&(f=b(f,e));let c=new r(4);c.writeUInt32BE(t[4]||4294967295),this.input.push({hash:t[0],n:t[1],scriptSigLen:null,scriptSig:null,data:i?f:null,script:n?f:null,nSequence:c,privKey:o,pubKey:a,swbtcp:s})},this),n.forEach(function(t){let i,n,a=new r(1),s=t[0];switch(t[2]){case"p2pkh":o=!0,version=e.p2pk,i=M(s,version),a.writeUInt8(i.length),n=r.concat([new r(e.OP_DUP+e.OP_HASH160,"hex"),a,i,new r(e.OP_EQUALVERIFY+e.OP_CHECKSIG,"hex")]);break;case"p2pk":o=!0,version=e.p2pk,i=M(s,version),a.writeUInt8(i.length),n=r.concat([a,i,new r(e.OP_CHECKSIG,"hex")]);break;case"p2w":let f=new r(L("bc",s).program);if(!f)throw"Wrong bech32 address";n=r.concat([new r([e.SEGWIT_VERSION]),new r([f.length]),f]);break;case"p2sh":if(0!==t[1])o=!0,version=e.p2sh,i=M(s,version),a.writeUInt8(i.length),n=r.concat([new r(e.OP_HASH160,"hex"),a,i,new r(e.OP_EQUAL,"hex")]);else{n=new r(e.OP_RETURN,"hex");let i=t[3];if(i?r.isBuffer(i)||(i=new r(i,"utf8")):i=new r(0),!(i.length<=e.MAX_OP_PUSH))throw"Can't append more than 520 bytes of data to OP_RETURN";{let t=r.concat(b(i,e));n=r.concat([n,t])}}break;default:throw"unknown pay to method"}this.fees-=parseInt(t[1]*e.SATO),this.output.push({nValue:parseInt(t[1]*e.SATO),scriptPubkeyLen:l(n.length),scriptPubkey:n,address:s,type:t[2]})},this),o||this.sigHash.writeUInt32LE(e.SIGHASH_NONE),this.sighash_sign()}};$.prototype.display_tx=function(){let e=[],t=[];return e.push("nVersion "+this.nVersion.toString("hex")),e.push("nb input: "+this.nbinput),this.input.forEach(function(i){e.push("   -------"),e.push("   tx: "+i.hash),e.push("   n: "+i.n),"p2wpkh"===i.type||"p2wsh"===i.type||"p2w"===i.type?("p2w"===i.type&&(i.type=i.nb_w>2?"p2wsh2":"p2wpkh2"),e.push("   type: "+i.type),e.push("   script: "+i.witness_script.toString("hex")),e.push("   nb witness: "+i.nb_w),t=i.scriptSig.map(function(e){return e.toString("hex")}),e.push("   witness sigs: "+t.join(",")),t=i.script.map(function(e){return e.toString("hex")}),e.push("   script(s) witness: "+t.join(","))):(t=i.scriptSig.map(function(e){return e.toString("hex")}),i.type=t.length>1?"p2sh":"p2pkh",e.push("   type: "+i.type),e.push("   scriptSigLen: "+n(i.scriptSigLen)[0]),e.push("   scriptSig: "+t.join(",")),e.push("   script: "+r.concat(i.script||[new r(0)]).toString("hex")));try{if("p2pkh"===i.type)e.push("   address "+A(i.script[0],this.coin.p2pk));else if(-1!==i.type.indexOf("p2wpkh")||-1!==i.type.indexOf("p2wsh"))if(-1!==i.type.indexOf("p2wpkh"))t=x(i.script[0]),e.push("   hash "+t.toString("hex")),e.push("   address pubkey "+S(t,this.coin.p2pk)),"p2wpkh2"!==i.type?e.push("   address segwit "+A(i.witness_script,this.coin.p2sh)):e.push("   address segwit "+N("bc",this.coin.SEGWIT_VERSION,t)+" - "+A(r.concat([new r([this.coin.SEGWIT_VERSION]),new r([t.length]),t]),this.coin.p2sh));else{try{t=(t=E(this.coin,r.concat(i.script).toString("hex"),!0)).map(function(e){return A(e,this.coin.p2pk)}),e.push("   multisig addresses "+t.join(","))}catch(e){}t=I(i.script[0]),e.push("   hash "+t.toString("hex")),"p2wsh2"!==i.type?e.push("   address segwit "+A(i.witness_script,this.coin.p2sh)):e.push("   address segwit "+N("bc",this.coin.SEGWIT_VERSION,t))}else if("p2sh"===i.type)try{t=(t=E(this.coin,r.concat(i.script).toString("hex"),!0)).map(function(e){return A(e,this.coin.p2pk)}),e.push("   multisig addresses "+t.join(",")),e.push("   address "+S(x(i.script[0]),this.coin.p2sh))}catch(e){}}catch(e){}e.push("   nSequence: "+i.nSequence.toString("hex"))},this),e.push("nb output: "+this.nboutput),this.output.forEach(function(t){e.push("   -------"),e.push("   nValue: "+t.nValue),e.push("   scriptPubkeyLen: "+n(t.scriptPubkeyLen)[0]),e.push("   scriptPubkey: "+t.scriptPubkey.toString("hex")),e.push("   address: "+t.address),e.push("   type: "+t.type)}),e.push("nLockTime "+this.nLockTime.toString("hex")),e.forEach(function(e){console.log(e)}),e},$.prototype.p2pk_sign=function(e,t){let i,n=this.coin.p2pk,a=[],o=V(e.privKey,n);if(console.log("Address corresponding to private key is "+o),e.scriptSig){let r=Z(j(t),e.scriptSig.slice(0,e.scriptSig.length-1),n);r.length?r.forEach(function(e){S(x(r),n)===o&&console.log("Public spending key verified: "+r)}):console.log("------------ Spending public key could not be verified, you are probably trying to spend an output that you don't own")}e.scriptSig=[[r.concat([new r(Q(t,e.privKey)),this.sigHash.slice(0,1)]),r.concat([new r([e.pubKey.length]),e.pubKey]),e.swbtcp?e.swbtcp:new r(0)]],a=r.concat(v(e.scriptSig,this.coin)),i=e.data?r.concat(e.data):new r(0),e.scriptSigLen=l(r.concat([a,i]).length)},$.prototype.p2sh_sign=function(e,t){let i,n,a=this.coin.p2sh,o=e.script||e.data,s=this.sigHash.slice(0,1);if(-1===e.type.indexOf("p2w")&&!z(e.prevscriptPubkey,y(o[0],this.coin)[0],a))throw"p2sh address and redeem script do not match";Array.isArray(e.privKey)?(e.scriptSig=[],e.privKey.forEach(function(i){e.scriptSig.push([r.concat([new r(Q(t,i)),s])])},this)):e.scriptSig=[r.concat([new r(Q(t,e.privKey)),s])],i=r.concat(v(e.scriptSig,this.coin)),e.data=e.swbtcp?e.swbtcp:new r(0),n=r.concat([e.script[0],e.data]),e.scriptSigLen=l(r.concat([i,n]).length)},$.prototype.p2w_sign=function(e,t){let i=this.sigHash.slice(0,1);Array.isArray(e.privKey)?(e.scriptSig=[],e.privKey.forEach(function(n){e.scriptSig.push([r.concat([new r(Q(t,n)),i])])},this),e.type="p2wsh2"):(e.scriptSig=[[r.concat([new r(Q(t,e.privKey)),i]),r.concat([new r([e.pubKey.length]),e.pubKey])]],e.type="p2wpkh2"),e.scriptSigLen=l(0)},$.prototype.sighash_sign=function(){let e=[];for(this.input.forEach(function(t,i){let n,a,o,s=function(e){if(e){let r=new $(this.coin);r.deserialize(e),r.display_tx(),t.prevscriptPubkey=r.output[t.n].scriptPubkey,t.prevscriptPubkeyValue=r.output[t.n].nValue,this.fees+=r.output[t.n].nValue}switch(a=p(t.prevscriptPubkeySig||t.prevscriptPubkey,this.coin),n=this.serialize_for_hash(i),a){case"op_return":throw"Can't spend an OP_RETURN output";case"p2pkh":this.p2pk_sign(t,n,i);break;case"p2pk":this.p2pk_sign(t,n);break;case"p2sh":this.p2sh_sign(t,n);break;case"p2wpkh2":case"p2wsh2":this.p2w_sign(t,n);break;default:throw"Unidentified pay to method"}};if(Array.isArray(t.hash))if(o=t.hash[1],2===t.hash.length)t.hash=t.hash[0],s.call(this,o);else{let i,n,a=t.hash[3];if("p2wpkh2"!==a&&"p2wsh2"!==a){i="p2sh"===a||"p2wsh"===a||"p2wpkh"===a?this.coin.p2sh:this.coin.p2pk,n=M(o,i);let e=new r(1);if(e.writeUInt8(n.length),t.type=t.hash[3],i===this.coin.p2pk)t.prevscriptPubkey=r.concat([new r(this.coin.OP_DUP+this.coin.OP_HASH160,"hex"),e,n,new r(this.coin.OP_EQUALVERIFY+this.coin.OP_CHECKSIG,"hex")]);else if(t.prevscriptPubkey=r.concat([new r(this.coin.OP_HASH160,"hex"),e,n,new r(this.coin.OP_EQUAL,"hex")]),"p2wpkh"===a){let e=x(t.pubKey);t.prevscriptPubkeySig=r.concat([new r(this.coin.OP_DUP+this.coin.OP_HASH160,"hex"),new r([e.length]),e,new r(this.coin.OP_EQUALVERIFY+this.coin.OP_CHECKSIG,"hex")])}else t.redeem=y(t.script[0],this.coin)[0]}else{let e=new r(L("bc",o).program);if(!e)throw"Wrong bech32 address";t.prevscriptPubkey=r.concat([new r([this.coin.SEGWIT_VERSION]),new r([e.length]),e]),32===e.length&&(t.redeem=y(t.script[0],this.coin)[0])}t.prevscriptPubkeyValue=u(t.hash[2]*this.coin.SATO),this.fees+=t.prevscriptPubkeyValue,t.hash=t.hash[0],e.push(s.bind(this))}else;},this);e.length;)e.shift()();let t=function(){let e=!1,r=function(){this.finalize()};this.input.forEach(function(t){t.prevscriptPubkey||(e=!0)}),e?setTimeout(t.bind(this),this.coin.T_O):r.call(this)};t.call(this)},$.prototype.getmessage=function(e,t){let i=new r(4);return i.writeUInt32LE(e[e.length-1]),e=e.slice(0,e.length-1),message=this.serialize_for_hash(t,i),message=j(message),message},$.prototype.sighash_verify=function(e){this.input.forEach(function(t,i){let n,a,o,f,c;e&&function(u){let h;if(t.verified=1,t.allowed_to_spend=1,Array.isArray(u))t.prevscriptPubkey=e[i][0],t.prevscriptPubkeyValue=e[i][1];else{let e=new $(this.coin);e.deserialize(u),e.display_tx(),t.prevscriptPubkey=e.output[t.n].scriptPubkey}let d=t.scriptSig,l=p(t.prevscriptPubkey,this.coin);if(t.witness_script&&1===t.witness_script.length&&delete t.witness_script,"p2pkh"===(l=t.witness_script?s(t.witness_script,this.coin):l)||"p2pk"===l||"p2wpkh"===l||"p2wpkh2"===l){d=d[0],"p2wpkh"===l&&(a=t.witness_script.slice(2),t.prevscriptPubkeySig=r.concat([new r(this.coin.OP_DUP+this.coin.OP_HASH160,"hex"),new r([a.length]),a,new r(this.coin.OP_EQUALVERIFY+this.coin.OP_CHECKSIG,"hex")])),h=this.getmessage(d,i),console.log("Verifying signature for "+h.toString("hex")),d=d.slice(0,d.length-1);for(let e=0;e<4;e++)try{switch(n=Y(h,d,e),o=J(n,"hex"),n=new r(o.getPublic(!0,"arr"),"hex"),f=x(n).toString("hex"),o.verify(h,d)&&(t.verified=!0),l){case"p2pkh":c=t.prevscriptPubkey.slice(3,23).toString("hex"),f===c&&(t.allowed_to_spend=!0);break;case"p2pk":c=t.prevscriptPubkey.slice(1,34).toString("hex"),n.toString("hex")===c&&(t.allowed_to_spend=!0);break;case"p2wpkh":f===a.toString("hex")&&x(t.witness_script).toString("hex")===t.prevscriptPubkey.slice(2,t.prevscriptPubkey.length-1).toString("hex")&&(t.allowed_to_spend=!0);break;case"p2wpkh2":c=t.prevscriptPubkey.slice(2).toString("hex"),f===c&&(t.allowed_to_spend=!0)}}catch(e){}t.allowed_to_spend}else if("p2sh"===l||"p2wsh"===l||"p2wsh2"===l){let e,n,a,o,s=0;"BTCP"===this.coin.VERSION_&&t.script.pop(),t.script.forEach(function(f){if(t.redeem=f,o="p2sh"===l||"p2wsh2"===l?f:t.witness_script,!(e=_(f,this.coin))[1])throw"Wrong redeem script";e=e[0],a=(a=(a=f.slice(1)).slice(0,a.length-1)).slice(0,a.length-1),n=g(a,this.coin)[1],d.forEach(function(e){h=this.getmessage(e,i),e=e.slice(0,e.length-1),n.forEach(function(t){J(t,"hex").verify(h,e)&&s++})},this),s>=e&&(t.verified=!0,console.log("Multisig signatures verified")),"p2wsh2"!==l?z(t.prevscriptPubkey,o,this.coin.p2sh)&&(t.allowed_to_spend=!0,console.log("Multisig allowed to spend")):(a=I(f),(a=r.concat([new r([this.coin.SEGWIT_VERSION]),new r([a.length]),a])).toString("hex")===t.prevscriptPubkey.toString("hex")&&(t.allowed_to_spend=!0,console.log("Multisig allowed to spend")))},this),t.verified&&t.allowed_to_spend}else if("op_return"===l)throw"invalid transaction, can't spend a previous op_return output";if(i===this.input.length-1){let e=function(){let t=!1,r=function(){let e=!0;if(this.input.forEach(function(t){!0===t.verified&&!0===t.allowed_to_spend||(e=!1)}),console.log(e?"----- Transaction verified":"********* - Bad transaction"),this.res.push(e?"----- Transaction verified":"********* - Bad transaction"),!e)throw"********* - Bad transaction";this.finalize(this.data)};this.input.forEach(function(e){e.verified||(t=!0)}),t?setTimeout(e.bind(this),this.coin.T_O):r.call(this)};e.call(this)}}.call(this,e)},this)},$.prototype.deserialize=function(e){let t=0,a=[];r.isBuffer(e)||(e=new r(e,"hex")),this.nVersion=e.slice(0,4),a.push(this.nVersion),"BCD"!==this.coin.VERSION_&&"BTT"!==this.coin.VERSION_||(this.preblockhash=e.slice(4,36),t=32,a.push(this.preblockhash));let f=n(e.slice(4+t));if(this.nbinput=f[0],e=e.slice(4+t+f[1]),this.nbinput){for(let t=0;t<this.nbinput;t++){let t=n(e.slice(36)),r=36+t[1],a=l(t[0]),o=g(e.slice(r,r+t[0]),this.coin);this.input.push({hash:i(e.slice(0,32)).toString("hex"),n:parseInt(i(e.slice(32,36)).toString("hex"),16),scriptSigLen:a,scriptSig:o[0],script:o[1],nSequence:i(e.slice(r+t[0],r+t[0]+4))}),e=e.slice(r+t[0]+4)}f=n(e),this.nboutput=f[0],e=e.slice(f[1]);for(let t=0;t<this.nboutput;t++){let t=parseInt(i(e.slice(0,8)).toString("hex"),16);this.fees-=t,e=e.slice(8);let r,a=n(e),o=e.slice(a[1],a[1]+a[0]),s=p(o,this.coin);switch(s){case"p2pkh":r=S(o.slice(3,23),this.coin.p2pk);break;case"p2sh":r=S(o.slice(2,22),this.coin.p2sh);break;case"op_return":r="";break;case"p2wpkh2":r=N("bc",this.coin.SEGWIT_VERSION,o.slice(2,22))+" - "+S(x(o.slice(2,22)),this.coin.p2sh);break;case"p2wsh2":r=N("bc",this.coin.SEGWIT_VERSION,o.slice(2,34))+" - "+S(x(o.slice(2,34)),this.coin.p2sh);break;case"p2pk":r=S(x(o.slice(1,34)),this.coin.p2pk)}this.output.push({nValue:t,scriptPubkeyLen:e.slice(0,a[1]),scriptPubkey:o,address:r,type:s}),e=e.slice(a[1]+a[0])}this.nLockTime=e}else{let t,f,c,u=[],h=0,d=[],m=[];this.coin.SEGWIT=!0,e=e.slice(1),c=n(e),this.nbinput=c[0],a.push(e.slice(0,c[1])),e=e.slice(c[1]);for(let t=0;t<this.nbinput;t++){let o=n(e.slice(36)),f=36+o[1],c=l(o[0]),h=e.slice(36,f),d=g(e.slice(f,f+o[0]),this.coin);d[0].length?(u.push(t),this.input.push({hash:i(e.slice(0,32)).toString("hex"),n:parseInt(i(e.slice(32,36)).toString("hex"),16),scriptSigLen:c,scriptSigLen_w:h,scriptSig:d[0],script:d[1],script_w:[b(d[1][0],this.coin)[0]],nSequence:i(e.slice(f+o[0],f+o[0]+4))})):this.input.push({hash:i(e.slice(0,32)).toString("hex"),n:parseInt(i(e.slice(32,36)).toString("hex"),16),witness_script:d[1]?d[1][0]:new r([0]),type:d[1]?s(d[1][0],this.coin):"p2w",nSequence:i(e.slice(f+o[0],f+o[0]+4))}),a.push(e.slice(0,f+o[0]+4)),e=e.slice(f+o[0]+4)}c=n(e),this.nboutput=c[0],a.push(e.slice(0,c[1])),e=e.slice(c[1]);for(let t=0;t<this.nboutput;t++){let t=parseInt(i(e.slice(0,8)).toString("hex"),16);this.fees-=t,a.push(e.slice(0,8)),e=e.slice(8);let r,o=n(e),s=e.slice(o[1],o[1]+o[0]),f=p(s,this.coin);switch(f){case"p2pkh":r=S(s.slice(3,23),this.coin.p2pk);break;case"p2sh":r=S(s.slice(2,22),this.coin.p2sh);break;case"op_return":r="";break;case"p2wpkh2":r=N("bc",this.coin.SEGWIT_VERSION,s.slice(2,22))+" - "+S(s.slice(2,22),this.coin.p2sh);break;case"p2wsh2":r=N("bc",this.coin.SEGWIT_VERSION,s.slice(2,34))+" - "+S(s.slice(2,34),this.coin.p2sh);break;case"p2pk":r=S(x(s.slice(1,34)),this.coin.p2pk)}this.output.push({nValue:t,scriptPubkeyLen:e.slice(0,o[1]),scriptPubkey:s,address:r,type:f}),a.push(e.slice(0,o[1]+o[0])),e=e.slice(o[1]+o[0])}for(;4!==e.length;){if(t=e[0],this.input[h].nb_w=t,e=e.slice(1),t){0===e[0]&&(e=e.slice(1),t--);for(let i=0;i<t;i++)0!==e[0]?(c=n(e),f=(e=e.slice(c[1])).slice(0,c[0]),o(f,this.coin)?m.push(f):d.push(f),e=e.slice(c[0])):(f=new r([0]),d.push(f),e=e.slice(1));(m.length||d.length)&&(this.input[h].scriptSig=m,this.input[h].script=d,m=r.concat(v(m,this.coin)),d=b(d[0],this.coin)[0],this.input[h].script_w=[d],this.input[h].scriptSigLen_w=l(r.concat([m,d]).length),m=[],d=[])}h++}a.push(e),this.nLockTime=e,this.hash_w=i(j(r.concat(a)))}},$.prototype.serialize_for_hash=function(e,t){let n=[],a=this.input[e];if(t||(t=new r(4),this.sigHash.copy(t)),this.coin.BIP143||a.type&&-1!==a.type.indexOf("p2w")){console.log("Using BIP143 signing");let e,o=[];if(n.push(this.nVersion),"BCD"!==this.coin.VERSION_&&"BTT"!==this.coin.VERSION_||n.push(this.preblockhash),this.input.forEach(function(t){(e=new r(4)).writeUInt32LE(t.n),o.push(r.concat([i(new r(t.hash,"hex")),e]))}),n.push(j(r.concat(o))),o=[],this.input.forEach(function(e){o.push(i(e.nSequence))}),n.push(j(r.concat(o))),(e=new r(4)).writeUInt32LE(a.n),n.push(r.concat([i(new r(a.hash,"hex")),e])),a.redeem){let e=a.redeem;n.push(r.concat([l(e.length),e]))}else a.prevscriptPubkeySig?n.push(r.concat([l(a.prevscriptPubkeySig.length),a.prevscriptPubkeySig])):n.push(r.concat([l(a.prevscriptPubkey.length),a.prevscriptPubkey]));if(e=i(new r(f(a.prevscriptPubkeyValue,8),"hex")),n.push(e),n.push(i(a.nSequence)),o=[],this.output.forEach(function(e){o.push(r.concat([i(new r(f(e.nValue,8),"hex")),e.scriptPubkeyLen,e.scriptPubkey]))},this),n.push(j(r.concat(o))),n.push(this.nLockTime),void 0!==this.coin.FORKID_IN_USE){let e=t.readUInt32LE();"B2X"!==this.coin.VERSION_?e|=this.coin.FORKID_IN_USE<<8:e<<=1,t.writeUInt32LE(e)}return n.push(t),"SBTC"!==this.coin.VERSION_&&"UBTC"!==this.coin.VERSION_&&"BTCP"!==this.coin.VERSION_&&"WBTC"!==this.coin.VERSION_&&"BICC"!==this.coin.VERSION_||n.push(this.coin.FORK_STRING),r.concat(n)}if(console.log("Using standard signing"),n.push(this.nVersion),"BCD"!==this.coin.VERSION_&&"BTT"!==this.coin.VERSION_||n.push(this.preblockhash),n.push(new r([this.nbinput])),this.input.forEach(function(t,a){let o=new r(4);o.writeUInt32LE(t.n),a!==e?n.push(r.concat([i(new r(t.hash,"hex")),o,new r([0]),i(t.nSequence)])):n.push(r.concat([i(new r(t.hash,"hex")),o,l(t.prevscriptPubkey.length),t.prevscriptPubkey,i(t.nSequence)]))}),t.readUInt32LE()===this.coin.SIGHASH_ALL&&(n.push(new r([this.nboutput])),this.output.forEach(function(e){n.push(r.concat([i(new r(f(e.nValue,8),"hex")),e.scriptPubkeyLen,e.scriptPubkey]))},this)),t.readUInt32LE()===this.coin.SIGHASH_NONE&&n.push(new r("00","hex")),n.push(this.nLockTime),void 0!==this.coin.FORKID_IN_USE){let e=t.readUInt32LE();"B2X"!==this.coin.VERSION_?e|=this.coin.FORKID_IN_USE<<8:e<<=1,t.writeUInt32LE(e)}return n.push(t),"SBTC"!==this.coin.VERSION_&&"UBTC"!==this.coin.VERSION_&&"BTCP"!==this.coin.VERSION_&&"WBTC"!==this.coin.VERSION_&&"BICC"!==this.coin.VERSION_||n.push(this.coin.FORK_STRING),r.concat(n)},$.prototype.serialize=function(e){let t=[],n=[],a=[];if(t.push(this.nVersion),n.push(this.nVersion),"BCD"!==this.coin.VERSION_&&"BTT"!==this.coin.VERSION_||(t.push(this.preblockhash),n.push(this.preblockhash)),this.coin.SEGWIT){let o=[];t.push(new r([this.coin.SEG_MARKER])),t.push(new r([this.coin.SEG_FLAG])),t.push(new r([this.nbinput])),n.push(new r([this.nbinput])),this.input.forEach(function(s){let f,c=0,u=new r(4);if(u.writeUInt32LE(s.n),c=w(s.scriptSig),a=v(s.scriptSig,this.coin),t.push(r.concat([i(new r(s.hash,"hex")),u])),n.push(r.concat([i(new r(s.hash,"hex")),u])),void 0===s.type||-1===s.type.indexOf("p2w"))e&&(s.script=m(s.script,this.coin)),t.push(r.concat([s.scriptSigLen,r.concat(a),s.script?r.concat(s.script):new r(0)])),n.push(t[t.length-1]),o.push(new r([0]));else{if("p2wpkh2"===s.type||"p2wsh2"===s.type)t.push(new r([0])),n.push(t[t.length-1]),"p2wsh2"===s.type&&c++;else if(s.redeem){let e=I(s.redeem);f=e.length,t.push(r.concat([new r([f+3]),new r([f+2]),new r([this.coin.SEGWIT_VERSION]),new r([f]),e])),n.push(t[t.length-1]),c++}else if(s.pubKey){let e=x(s.pubKey);f=e.length,t.push(r.concat([new r([f+3]),new r([f+2]),new r([this.coin.SEGWIT_VERSION]),new r([f]),e])),n.push(t[t.length-1])}else s.witness_script&&((f=s.witness_script.length)>1?t.push(r.concat([new r([f+1]),new r([f]),s.witness_script])):t.push(s.witness_script),n.push(t[t.length-1]),c=s.nb_w);e?o.push(new r([s.nb_w])):o.push(new r([c])),o.push(r.concat(a)),e?s.script.forEach(function(e){e.length>1?o.push(r.concat([l(e.length),e])):o.push(e)}):s.redeem&&o.push(r.concat([l(s.redeem.length),s.redeem]))}t.push(i(s.nSequence)),n.push(t[t.length-1])},this),t.push(new r([this.nboutput])),n.push(new r([this.nboutput])),this.output.forEach(function(e){t.push(r.concat([i(new r(f(e.nValue,8),"hex")),e.scriptPubkeyLen,e.scriptPubkey])),n.push(r.concat([i(new r(f(e.nValue,8),"hex")),e.scriptPubkeyLen,e.scriptPubkey]))}),t.push(r.concat(o)),t.push(this.nLockTime),n.push(this.nLockTime),this.hash_w=i(j(r.concat(n)))}else t.push(new r([this.nbinput])),this.input.forEach(function(n){let o=new r(4);o.writeUInt32LE(n.n),a=v(n.scriptSig,this.coin),n.script=n.script_w||n.script,e&&(n.script=m(n.script,this.coin)),n.scriptSigLen=n.scriptSigLen_w||n.scriptSigLen,t.push(r.concat([i(new r(n.hash,"hex")),o,n.scriptSigLen,r.concat(a),n.script?r.concat(n.script):new r(0),n.data?n.data:new r(0),i(n.nSequence)]))},this),t.push(new r([this.nboutput])),this.output.forEach(function(e){t.push(r.concat([i(new r(f(e.nValue,8),"hex")),e.scriptPubkeyLen,e.scriptPubkey]))}),t.push(this.nLockTime);return r.concat(t)},$.prototype.verify=function(e,t){this.version=this.coin.VERSION_,this.data=e,this.deserialize(e),this.sighash_verify(t)},$.prototype.finalize=function(e){let t=new r(4),n=e;t.writeUInt32LE(this.testnet?TESTNET:this.coin.MAIN),e=e?new r(e,"hex"):this.serialize(),console.log("checksum hash "+j(e).toString("hex"));let a=j(e).slice(0,4);this.coin.SEGWIT?this.hash=this.hash_w:(this.hash=j(e),this.hash=i(this.hash));let o=new r(4);if(o.writeUInt32LE(e.length),this.tx=r.concat([t,this.coin.TX_COMMAND,o,a,e]),console.log("----- Transaction ID: "+this.hash.toString("hex")),!n){let t,r=[],i=this.fees,n=this.tx.length,a=e.toString("hex");console.log("Transaction body:\n"+a),console.log("Complete transaction:\n"+this.tx.toString("hex")),console.log("Size "+this.tx.length+" bytes"),console.log("Network Fees: "+i+" - "+(i/n).toFixed(2)+" satoshis/byte"),this.res.push(e.toString("hex")),this.res.push(this.tx.toString("hex")),this.res.push(this.hash.toString("hex")),console.log("------------- Check - deserialize ");let o=new $(this.coin);o.deserialize(e),this.res.push(o.display_tx()),console.log("------------- End Check - deserialize "),console.log("------------- Check - verify "),this.input.forEach(function(e){r.push([e.prevscriptPubkey,e.prevscriptPubkeyValue])}),new $(this.coin).verify(e,r),console.log("------------- End Check - verify ");let s=new $(this.coin);if(t=s.deserialize(a),a!==s.serialize(!0).toString("hex"))throw console.log("------------- NOK - serialize/deserialize "),"serialize/deserialize NOK";console.log("------------- OK - serialize/deserialize ");try{this.res.push(i)}catch(e){}i>this.coin.FEES*n?console.log("---- WARNING !!!!!!!!!!!!!!! ----- Network fees look very high, probably you did not choose the correct amount, please make sure that amount+dev fees+network fees=prevamount"):i<0&&console.log("---- WARNING !!!!!!!!!!!!!!! ----- Network fees are incorrect, probably you did not choose the correct amount, please make sure that amount+dev fees+network fees=prevamount")}},t.exports=$}).call(this,e("buffer").Buffer)},{"./addresses.js":33,"./keys.js":38,"./utils.js":44,buffer:49}],44:[function(e,t,r){(function(e){const r=function(t){let r=t.length,i=new e(r);for(let e=0;e<r;e++)i[e]=t[r-1-e];return i},i=function(e,t){let r=e[0],i=e[2];if(r===t.ISSIG1&&i===t.ISSIG2)return!0},n=function(e,t){for(t=2*t||0,e=(e=e.toString(16)).length%2?"0"+e:e;e.length<t;)e="0"+e;return e},a=function(e,t){if(e)return(e/t.SATO).toFixed(t.D)},o=function(e,t,r,i,n,o){console.log("--- Previous amount is: "+a(t,e)),console.log("--- Amount to spend is: "+a(r,e)),console.log("--- Network fees are: "+a(i,e)),o&&console.log("--- Refunded amount to spending address is: "+a(o,e))},s=function(t,r){let i,n=[];for(;t.length;)t.length>255?(i=new e(2),t.length>r.OP_PUSH?i.writeUInt16LE(r.OP_PUSH):i.writeUInt16LE(t.length),n.push(e.concat([new e([r.OP_PUSHDATA2]),i,t.slice(0,i.readUInt16LE())])),t=t.slice(i.readUInt16LE())):(t.length<r.OP_PUSHDATA1?n.push(e.concat([new e([t.length]),t])):n.push(e.concat([new e([r.OP_PUSHDATA1]),new e([t.length]),t])),t=new e(0));return n},f=function(e,t){let r,i,n;switch(e[0]){case t.OP_PUSHDATA2:n=3,i=e.slice(1).readUInt16LE(),r=(e=e.slice(3)).slice(0,i);break;case t.OP_PUSHDATA1:n=2,i=e[1],r=(e=e.slice(2)).slice(0,i);break;default:n=1,i=e[0],r=(e=e.slice(1)).slice(0,i)}return[r,n]};t.exports={reverse:r,compute_path:function(e,t){let r;return(r=(e=e.split("/"))[e.length-1].split("'"))[0]=t,e[e.length-1]=r.join("'"),e=e.join("/")},decodevarlen:function(e){let t=e.slice(1);switch(e[0]){case 253:return[t.readUInt16LE(),3];case 254:return[t.readUInt32LE(),5];case 255:return e=r(t),[parseInt(e.toString("hex")),9];default:return[e[0],1]}},is_bech:function(e){return"bc"===e.substr(0,2)},issig:i,is_segwit:function(e,t){let r=e.length;return 22===r&&e[0]===t.SEGWIT_VERSION&&20===e[1]?"p2wpkh":34===r&&e[0]===t.SEGWIT_VERSION&&32===e[1]?"p2wsh":void 0},toHex:n,toHex2:function(e){let t="",r=e.length/4;for(let i=0;i<r;i++){let r=e.slice(4*i,4*i+4);t+=r=parseInt(r,2).toString(16)}return t},toBin:function(e,t){let r=parseInt(e).toString(2);for(;r.length!==t;)r="0"+r;return r},big_satoshis:a,decimals:function(e){let t=e.toString().split(".");if(2===t.length){e=parseInt(t[1].slice(0,1))>=5?Math.ceil(e):Math.floor(e)}return e},write:o,resp_xhr:function(e,t=e.command_xhr){if(e.res_xhr){let r={Server:"Peersm"};r.Date=(new Date).toUTCString(),e.res_xhr.writeHead(200,r),e.res_xhr.end(JSON.stringify(t))}else t&&(e.command_xhr=t)},clone_inputs:function(e,t,r){if(1===e.length)e=t.map(function(){return e[0]});else if(e.length!==t.length)throw r;return e},varlen:function(t){let i;return t<253?new e([t]):t<=65535?((i=new e(2)).writeUInt16LE(t),e.concat([new e([253]),i])):t<=4294967295?((i=new e(4)).writeUInt32LE(t),e.concat([new e([254]),i])):(t=n(t),i=new e(t,"hex"),i=r(i),e.concat([new e([255]),i]))},decode_script:function(e,t){let r,i;if(r=(e=e.slice(0,2)).slice(0,1).toString("hex"),i=e.slice(1)[0],e.toString("hex")===t.OP_DUP+t.OP_HASH160)return"p2pkh";if(r===t.OP_HASH160)return"p2sh";if(r===t.OP_RETURN)return"op_return";if(parseInt(r)!==t.SEGWIT_VERSION)return"p2pk";switch(i){case 20:return"p2wpkh2";case 32:return"p2wsh2";default:return"unknown"}},op_push:s,op_push2:function(t,r){let i=[];return t.forEach(function(t){i.push(e.concat(s(t,r)))}),i},deserialize_scriptSig:function(e,t){let r,n=[],a=[];for(;e.length;)r=f(e,t),e[0]!==parseInt(t.OP_0)?(i(r[0],t)?n.push(r[0]):a.push(r[0]),e=e.slice(r[0].length+r[1])):e=e.slice(1);return[n,a.length?a:null]},serialize_sig:function(t,r){let i=[];return t.length>1&&i.push(new e(r.OP_0,"hex")),t.forEach(function(t){if(t[0].length>255)throw"invalid signature length";Array.isArray(t)||(t=[t]),i.push(e.concat([new e([t[0].length]),t[0],t[1]||new e(0)]),t[2]||new e(0))}),i},parse_op_push:f,count_w:function(e){let t=0;return e.length>1&&t++,e.forEach(function(e){t++,e[1]&&t++}),t},check_mOfn:function(e,t){let r,i;return r=parseInt(e[0].toString(16).slice(1),16),i=(i=e[e.length-2].toString(16))===t.OP_16?16:parseInt(i,16)<96?parseInt(i.slice(1),16):0,console.log("multisig "+r+" of "+i),[r,r<=i]},testamount:function(e,t){let r=e[0]*t.SATO,i=e[1]*t.SATO,n=e[2]*t.SATO||0,a=0;if(n){if((a=r-n-i)<-1)throw"--- Your numbers are incorrect, please check them and try again";o(t,r,n,i,0,a)}else o(t,r,n=r-i,i,0,a);return[n,0,a]},mod44_path:function(e,t){return e.replace(/44'/gi,t.slice(3)+"'")}}}).call(this,e("buffer").Buffer)},{buffer:49}],45:[function(e,t,r){(function(r,i){var n=i;n.from&&(i=function(){return"number"==typeof arguments[0]?n.alloc(arguments[0]):n.from(...arguments)},Object.keys(n).forEach(function(e){i[e]=n[e]}),Object.setPrototypeOf(i.prototype,n.prototype));const a=e("./src/btc_version.js"),o=e("./src/network.js"),{create:s,Tx:f}=e("./src/create.js"),{create_wallet:c}=e("./src/hd.js"),{is_bech:u,resp_xhr:h,testamount:d,decimals:l}=e("./src/utils.js"),{decode_redeem:p,convert2:b}=e("./src/addresses.js"),{encode_redeem:m}=e("./src/redeem.js"),{create_bip39:g,bip39_wallet:v,recoverbip39:y,generatebip39:w}=e("./src/bip39.js"),{getpubfromprivate:_,getprivfromWIF:S,privtoWIF:M,pubtohash:x,pubtoaddress:k}=e("./src/pubpriv.js"),{signmessage:A,verifymessage:E}=e("./src/keys.js");let I;console.log.bind(console);const j=function(e){if(e.length){void 0===document&&console.log(e);try{if(I=a(e[0]),console.log("Version "+I.VERSION_),e.length>1){let r=e[1];switch(e=e.slice(2),r){case"testamount":return d(e,I);case"convert":return b(e[1],I,a(e[0]));case"create":return s(e,I);case"decode":return(t=new f(I)).deserialize(e[0]),t.display_tx();case"testconnect":return o(I,null,e[0]);case"send":return o(I,e[0],e[1]);case"decoderedeem":return p(I,e[0]);case"createredeem":return m(I,e.shift(),e[0].split("-"));case"createredeemfrompub":return m(I,e.shift(),e[0].split("-"),!0);case"verify":let n;var t=e.shift();return e=e.map(function(e){return(e=e.split(","))[0]=new i(e[0],"hex"),e[1]=l(e[1]*I.SATO),e}),(n=new f(I)).verify(t,e),n.res;case"createwallet":return e.splice(1,0,I),c(...e);case"bip39":let u="btc";if(e[2])switch(e[2]){case"bip44":u="bip44";break;case"bip49":u="nested";break;case"bip84":u="bech";break;case"bip141":u="nested"}return g(I,e[0],e[1],u);case"createbip39wallet":return e.splice(1,0,I),v(...e);case"recoverbip39":let h=e[0],j=e[1];return e.shift(),e.shift(),y(I,h,j,e);case"generatebip39":return e.unshift(I),w(...e);case"getpubfromprivate":return e.unshift(I),_(...e);case"getprivfromwif":return e.unshift(I),S(...e);case"privtowif":return e.unshift(I),M(...e);case"pubtohash":return e.unshift(I),x(...e);case"pubtoaddress":return e.unshift(I),k(...e);case"signmessage":return e.unshift(I),A(...e);case"verifymessage":return e.unshift(I),E(...e);case"checkbip39":return e.unshift(I),g(...e)}}}catch(e){return{error:e.message||e}}}};if(void 0!==r&&r.argv){let e=function(e){return e=e.map(function(e){return e.split("=")[1]||e})};if(r.argv.length>1){let t=r.argv.splice(2);j(t=e(t))}}t.exports=j}).call(this,e("_process"),e("buffer").Buffer)},{"./src/addresses.js":33,"./src/bip39.js":34,"./src/btc_version.js":35,"./src/create.js":36,"./src/hd.js":37,"./src/keys.js":38,"./src/network.js":40,"./src/pubpriv.js":41,"./src/redeem.js":42,"./src/utils.js":44,_process:322,buffer:49}],46:[function(e,t,r){t.exports={english:["abandon","ability","able","about","above","absent","absorb","abstract","absurd","abuse","access","accident","account","accuse","achieve","acid","acoustic","acquire","across","act","action","actor","actress","actual","adapt","add","addict","address","adjust","admit","adult","advance","advice","aerobic","affair","afford","afraid","again","age","agent","agree","ahead","aim","air","airport","aisle","alarm","album","alcohol","alert","alien","all","alley","allow","almost","alone","alpha","already","also","alter","always","amateur","amazing","among","amount","amused","analyst","anchor","ancient","anger","angle","angry","animal","ankle","announce","annual","another","answer","antenna","antique","anxiety","any","apart","apology","appear","apple","approve","april","arch","arctic","area","arena","argue","arm","armed","armor","army","around","arrange","arrest","arrive","arrow","art","artefact","artist","artwork","ask","aspect","assault","asset","assist","assume","asthma","athlete","atom","attack","attend","attitude","attract","auction","audit","august","aunt","author","auto","autumn","average","avocado","avoid","awake","aware","away","awesome","awful","awkward","axis","baby","bachelor","bacon","badge","bag","balance","balcony","ball","bamboo","banana","banner","bar","barely","bargain","barrel","base","basic","basket","battle","beach","bean","beauty","because","become","beef","before","begin","behave","behind","believe","below","belt","bench","benefit","best","betray","better","between","beyond","bicycle","bid","bike","bind","biology","bird","birth","bitter","black","blade","blame","blanket","blast","bleak","bless","blind","blood","blossom","blouse","blue","blur","blush","board","boat","body","boil","bomb","bone","bonus","book","boost","border","boring","borrow","boss","bottom","bounce","box","boy","bracket","brain","brand","brass","brave","bread","breeze","brick","bridge","brief","bright","bring","brisk","broccoli","broken","bronze","broom","brother","brown","brush","bubble","buddy","budget","buffalo","build","bulb","bulk","bullet","bundle","bunker","burden","burger","burst","bus","business","busy","butter","buyer","buzz","cabbage","cabin","cable","cactus","cage","cake","call","calm","camera","camp","can","canal","cancel","candy","cannon","canoe","canvas","canyon","capable","capital","captain","car","carbon","card","cargo","carpet","carry","cart","case","cash","casino","castle","casual","cat","catalog","catch","category","cattle","caught","cause","caution","cave","ceiling","celery","cement","census","century","cereal","certain","chair","chalk","champion","change","chaos","chapter","charge","chase","chat","cheap","check","cheese","chef","cherry","chest","chicken","chief","child","chimney","choice","choose","chronic","chuckle","chunk","churn","cigar","cinnamon","circle","citizen","city","civil","claim","clap","clarify","claw","clay","clean","clerk","clever","click","client","cliff","climb","clinic","clip","clock","clog","close","cloth","cloud","clown","club","clump","cluster","clutch","coach","coast","coconut","code","coffee","coil","coin","collect","color","column","combine","come","comfort","comic","common","company","concert","conduct","confirm","congress","connect","consider","control","convince","cook","cool","copper","copy","coral","core","corn","correct","cost","cotton","couch","country","couple","course","cousin","cover","coyote","crack","cradle","craft","cram","crane","crash","crater","crawl","crazy","cream","credit","creek","crew","cricket","crime","crisp","critic","crop","cross","crouch","crowd","crucial","cruel","cruise","crumble","crunch","crush","cry","crystal","cube","culture","cup","cupboard","curious","current","curtain","curve","cushion","custom","cute","cycle","dad","damage","damp","dance","danger","daring","dash","daughter","dawn","day","deal","debate","debris","decade","december","decide","decline","decorate","decrease","deer","defense","define","defy","degree","delay","deliver","demand","demise","denial","dentist","deny","depart","depend","deposit","depth","deputy","derive","describe","desert","design","desk","despair","destroy","detail","detect","develop","device","devote","diagram","dial","diamond","diary","dice","diesel","diet","differ","digital","dignity","dilemma","dinner","dinosaur","direct","dirt","disagree","discover","disease","dish","dismiss","disorder","display","distance","divert","divide","divorce","dizzy","doctor","document","dog","doll","dolphin","domain","donate","donkey","donor","door","dose","double","dove","draft","dragon","drama","drastic","draw","dream","dress","drift","drill","drink","drip","drive","drop","drum","dry","duck","dumb","dune","during","dust","dutch","duty","dwarf","dynamic","eager","eagle","early","earn","earth","easily","east","easy","echo","ecology","economy","edge","edit","educate","effort","egg","eight","either","elbow","elder","electric","elegant","element","elephant","elevator","elite","else","embark","embody","embrace","emerge","emotion","employ","empower","empty","enable","enact","end","endless","endorse","enemy","energy","enforce","engage","engine","enhance","enjoy","enlist","enough","enrich","enroll","ensure","enter","entire","entry","envelope","episode","equal","equip","era","erase","erode","erosion","error","erupt","escape","essay","essence","estate","eternal","ethics","evidence","evil","evoke","evolve","exact","example","excess","exchange","excite","exclude","excuse","execute","exercise","exhaust","exhibit","exile","exist","exit","exotic","expand","expect","expire","explain","expose","express","extend","extra","eye","eyebrow","fabric","face","faculty","fade","faint","faith","fall","false","fame","family","famous","fan","fancy","fantasy","farm","fashion","fat","fatal","father","fatigue","fault","favorite","feature","february","federal","fee","feed","feel","female","fence","festival","fetch","fever","few","fiber","fiction","field","figure","file","film","filter","final","find","fine","finger","finish","fire","firm","first","fiscal","fish","fit","fitness","fix","flag","flame","flash","flat","flavor","flee","flight","flip","float","flock","floor","flower","fluid","flush","fly","foam","focus","fog","foil","fold","follow","food","foot","force","forest","forget","fork","fortune","forum","forward","fossil","foster","found","fox","fragile","frame","frequent","fresh","friend","fringe","frog","front","frost","frown","frozen","fruit","fuel","fun","funny","furnace","fury","future","gadget","gain","galaxy","gallery","game","gap","garage","garbage","garden","garlic","garment","gas","gasp","gate","gather","gauge","gaze","general","genius","genre","gentle","genuine","gesture","ghost","giant","gift","giggle","ginger","giraffe","girl","give","glad","glance","glare","glass","glide","glimpse","globe","gloom","glory","glove","glow","glue","goat","goddess","gold","good","goose","gorilla","gospel","gossip","govern","gown","grab","grace","grain","grant","grape","grass","gravity","great","green","grid","grief","grit","grocery","group","grow","grunt","guard","guess","guide","guilt","guitar","gun","gym","habit","hair","half","hammer","hamster","hand","happy","harbor","hard","harsh","harvest","hat","have","hawk","hazard","head","health","heart","heavy","hedgehog","height","hello","helmet","help","hen","hero","hidden","high","hill","hint","hip","hire","history","hobby","hockey","hold","hole","holiday","hollow","home","honey","hood","hope","horn","horror","horse","hospital","host","hotel","hour","hover","hub","huge","human","humble","humor","hundred","hungry","hunt","hurdle","hurry","hurt","husband","hybrid","ice","icon","idea","identify","idle","ignore","ill","illegal","illness","image","imitate","immense","immune","impact","impose","improve","impulse","inch","include","income","increase","index","indicate","indoor","industry","infant","inflict","inform","inhale","inherit","initial","inject","injury","inmate","inner","innocent","input","inquiry","insane","insect","inside","inspire","install","intact","interest","into","invest","invite","involve","iron","island","isolate","issue","item","ivory","jacket","jaguar","jar","jazz","jealous","jeans","jelly","jewel","job","join","joke","journey","joy","judge","juice","jump","jungle","junior","junk","just","kangaroo","keen","keep","ketchup","key","kick","kid","kidney","kind","kingdom","kiss","kit","kitchen","kite","kitten","kiwi","knee","knife","knock","know","lab","label","labor","ladder","lady","lake","lamp","language","laptop","large","later","latin","laugh","laundry","lava","law","lawn","lawsuit","layer","lazy","leader","leaf","learn","leave","lecture","left","leg","legal","legend","leisure","lemon","lend","length","lens","leopard","lesson","letter","level","liar","liberty","library","license","life","lift","light","like","limb","limit","link","lion","liquid","list","little","live","lizard","load","loan","lobster","local","lock","logic","lonely","long","loop","lottery","loud","lounge","love","loyal","lucky","luggage","lumber","lunar","lunch","luxury","lyrics","machine","mad","magic","magnet","maid","mail","main","major","make","mammal","man","manage","mandate","mango","mansion","manual","maple","marble","march","margin","marine","market","marriage","mask","mass","master","match","material","math","matrix","matter","maximum","maze","meadow","mean","measure","meat","mechanic","medal","media","melody","melt","member","memory","mention","menu","mercy","merge","merit","merry","mesh","message","metal","method","middle","midnight","milk","million","mimic","mind","minimum","minor","minute","miracle","mirror","misery","miss","mistake","mix","mixed","mixture","mobile","model","modify","mom","moment","monitor","monkey","monster","month","moon","moral","more","morning","mosquito","mother","motion","motor","mountain","mouse","move","movie","much","muffin","mule","multiply","muscle","museum","mushroom","music","must","mutual","myself","mystery","myth","naive","name","napkin","narrow","nasty","nation","nature","near","neck","need","negative","neglect","neither","nephew","nerve","nest","net","network","neutral","never","news","next","nice","night","noble","noise","nominee","noodle","normal","north","nose","notable","note","nothing","notice","novel","now","nuclear","number","nurse","nut","oak","obey","object","oblige","obscure","observe","obtain","obvious","occur","ocean","october","odor","off","offer","office","often","oil","okay","old","olive","olympic","omit","once","one","onion","online","only","open","opera","opinion","oppose","option","orange","orbit","orchard","order","ordinary","organ","orient","original","orphan","ostrich","other","outdoor","outer","output","outside","oval","oven","over","own","owner","oxygen","oyster","ozone","pact","paddle","page","pair","palace","palm","panda","panel","panic","panther","paper","parade","parent","park","parrot","party","pass","patch","path","patient","patrol","pattern","pause","pave","payment","peace","peanut","pear","peasant","pelican","pen","penalty","pencil","people","pepper","perfect","permit","person","pet","phone","photo","phrase","physical","piano","picnic","picture","piece","pig","pigeon","pill","pilot","pink","pioneer","pipe","pistol","pitch","pizza","place","planet","plastic","plate","play","please","pledge","pluck","plug","plunge","poem","poet","point","polar","pole","police","pond","pony","pool","popular","portion","position","possible","post","potato","pottery","poverty","powder","power","practice","praise","predict","prefer","prepare","present","pretty","prevent","price","pride","primary","print","priority","prison","private","prize","problem","process","produce","profit","program","project","promote","proof","property","prosper","protect","proud","provide","public","pudding","pull","pulp","pulse","pumpkin","punch","pupil","puppy","purchase","purity","purpose","purse","push","put","puzzle","pyramid","quality","quantum","quarter","question","quick","quit","quiz","quote","rabbit","raccoon","race","rack","radar","radio","rail","rain","raise","rally","ramp","ranch","random","range","rapid","rare","rate","rather","raven","raw","razor","ready","real","reason","rebel","rebuild","recall","receive","recipe","record","recycle","reduce","reflect","reform","refuse","region","regret","regular","reject","relax","release","relief","rely","remain","remember","remind","remove","render","renew","rent","reopen","repair","repeat","replace","report","require","rescue","resemble","resist","resource","response","result","retire","retreat","return","reunion","reveal","review","reward","rhythm","rib","ribbon","rice","rich","ride","ridge","rifle","right","rigid","ring","riot","ripple","risk","ritual","rival","river","road","roast","robot","robust","rocket","romance","roof","rookie","room","rose","rotate","rough","round","route","royal","rubber","rude","rug","rule","run","runway","rural","sad","saddle","sadness","safe","sail","salad","salmon","salon","salt","salute","same","sample","sand","satisfy","satoshi","sauce","sausage","save","say","scale","scan","scare","scatter","scene","scheme","school","science","scissors","scorpion","scout","scrap","screen","script","scrub","sea","search","season","seat","second","secret","section","security","seed","seek","segment","select","sell","seminar","senior","sense","sentence","series","service","session","settle","setup","seven","shadow","shaft","shallow","share","shed","shell","sheriff","shield","shift","shine","ship","shiver","shock","shoe","shoot","shop","short","shoulder","shove","shrimp","shrug","shuffle","shy","sibling","sick","side","siege","sight","sign","silent","silk","silly","silver","similar","simple","since","sing","siren","sister","situate","six","size","skate","sketch","ski","skill","skin","skirt","skull","slab","slam","sleep","slender","slice","slide","slight","slim","slogan","slot","slow","slush","small","smart","smile","smoke","smooth","snack","snake","snap","sniff","snow","soap","soccer","social","sock","soda","soft","solar","soldier","solid","solution","solve","someone","song","soon","sorry","sort","soul","sound","soup","source","south","space","spare","spatial","spawn","speak","special","speed","spell","spend","sphere","spice","spider","spike","spin","spirit","split","spoil","sponsor","spoon","sport","spot","spray","spread","spring","spy","square","squeeze","squirrel","stable","stadium","staff","stage","stairs","stamp","stand","start","state","stay","steak","steel","stem","step","stereo","stick","still","sting","stock","stomach","stone","stool","story","stove","strategy","street","strike","strong","struggle","student","stuff","stumble","style","subject","submit","subway","success","such","sudden","suffer","sugar","suggest","suit","summer","sun","sunny","sunset","super","supply","supreme","sure","surface","surge","surprise","surround","survey","suspect","sustain","swallow","swamp","swap","swarm","swear","sweet","swift","swim","swing","switch","sword","symbol","symptom","syrup","system","table","tackle","tag","tail","talent","talk","tank","tape","target","task","taste","tattoo","taxi","teach","team","tell","ten","tenant","tennis","tent","term","test","text","thank","that","theme","then","theory","there","they","thing","this","thought","three","thrive","throw","thumb","thunder","ticket","tide","tiger","tilt","timber","time","tiny","tip","tired","tissue","title","toast","tobacco","today","toddler","toe","together","toilet","token","tomato","tomorrow","tone","tongue","tonight","tool","tooth","top","topic","topple","torch","tornado","tortoise","toss","total","tourist","toward","tower","town","toy","track","trade","traffic","tragic","train","transfer","trap","trash","travel","tray","treat","tree","trend","trial","tribe","trick","trigger","trim","trip","trophy","trouble","truck","true","truly","trumpet","trust","truth","try","tube","tuition","tumble","tuna","tunnel","turkey","turn","turtle","twelve","twenty","twice","twin","twist","two","type","typical","ugly","umbrella","unable","unaware","uncle","uncover","under","undo","unfair","unfold","unhappy","uniform","unique","unit","universe","unknown","unlock","until","unusual","unveil","update","upgrade","uphold","upon","upper","upset","urban","urge","usage","use","used","useful","useless","usual","utility","vacant","vacuum","vague","valid","valley","valve","van","vanish","vapor","various","vast","vault","vehicle","velvet","vendor","venture","venue","verb","verify","version","very","vessel","veteran","viable","vibrant","vicious","victory","video","view","village","vintage","violin","virtual","virus","visa","visit","visual","vital","vivid","vocal","voice","void","volcano","volume","vote","voyage","wage","wagon","wait","walk","wall","walnut","want","warfare","warm","warrior","wash","wasp","waste","water","wave","way","wealth","weapon","wear","weasel","weather","web","wedding","weekend","weird","welcome","west","wet","whale","what","wheat","wheel","when","where","whip","whisper","wide","width","wife","wild","will","win","window","wine","wing","wink","winner","winter","wire","wisdom","wise","wish","witness","wolf","woman","wonder","wood","wool","word","work","world","worry","worth","wrap","wreck","wrestle","wrist","write","wrong","yard","year","yellow","you","young","youth","zebra","zero","zone","zoo"],french:["abaisser","abandon","abdiquer","abeille","abolir","aborder","aboutir","aboyer","abrasif","abreuver","abriter","abroger","abrupt","absence","absolu","absurde","abusif","abyssal","académie","acajou","acarien","accabler","accepter","acclamer","accolade","accroche","accuser","acerbe","achat","acheter","aciduler","acier","acompte","acquérir","acronyme","acteur","actif","actuel","adepte","adéquat","adhésif","adjectif","adjuger","admettre","admirer","adopter","adorer","adoucir","adresse","adroit","adulte","adverbe","aérer","aéronef","affaire","affecter","affiche","affreux","affubler","agacer","agencer","agile","agiter","agrafer","agréable","agrume","aider","aiguille","ailier","aimable","aisance","ajouter","ajuster","alarmer","alchimie","alerte","algèbre","algue","aliéner","aliment","alléger","alliage","allouer","allumer","alourdir","alpaga","altesse","alvéole","amateur","ambigu","ambre","aménager","amertume","amidon","amiral","amorcer","amour","amovible","amphibie","ampleur","amusant","analyse","anaphore","anarchie","anatomie","ancien","anéantir","angle","angoisse","anguleux","animal","annexer","annonce","annuel","anodin","anomalie","anonyme","anormal","antenne","antidote","anxieux","apaiser","apéritif","aplanir","apologie","appareil","appeler","apporter","appuyer","aquarium","aqueduc","arbitre","arbuste","ardeur","ardoise","argent","arlequin","armature","armement","armoire","armure","arpenter","arracher","arriver","arroser","arsenic","artériel","article","aspect","asphalte","aspirer","assaut","asservir","assiette","associer","assurer","asticot","astre","astuce","atelier","atome","atrium","atroce","attaque","attentif","attirer","attraper","aubaine","auberge","audace","audible","augurer","aurore","automne","autruche","avaler","avancer","avarice","avenir","averse","aveugle","aviateur","avide","avion","aviser","avoine","avouer","avril","axial","axiome","badge","bafouer","bagage","baguette","baignade","balancer","balcon","baleine","balisage","bambin","bancaire","bandage","banlieue","bannière","banquier","barbier","baril","baron","barque","barrage","bassin","bastion","bataille","bateau","batterie","baudrier","bavarder","belette","bélier","belote","bénéfice","berceau","berger","berline","bermuda","besace","besogne","bétail","beurre","biberon","bicycle","bidule","bijou","bilan","bilingue","billard","binaire","biologie","biopsie","biotype","biscuit","bison","bistouri","bitume","bizarre","blafard","blague","blanchir","blessant","blinder","blond","bloquer","blouson","bobard","bobine","boire","boiser","bolide","bonbon","bondir","bonheur","bonifier","bonus","bordure","borne","botte","boucle","boueux","bougie","boulon","bouquin","bourse","boussole","boutique","boxeur","branche","brasier","brave","brebis","brèche","breuvage","bricoler","brigade","brillant","brioche","brique","brochure","broder","bronzer","brousse","broyeur","brume","brusque","brutal","bruyant","buffle","buisson","bulletin","bureau","burin","bustier","butiner","butoir","buvable","buvette","cabanon","cabine","cachette","cadeau","cadre","caféine","caillou","caisson","calculer","calepin","calibre","calmer","calomnie","calvaire","camarade","caméra","camion","campagne","canal","caneton","canon","cantine","canular","capable","caporal","caprice","capsule","capter","capuche","carabine","carbone","caresser","caribou","carnage","carotte","carreau","carton","cascade","casier","casque","cassure","causer","caution","cavalier","caverne","caviar","cédille","ceinture","céleste","cellule","cendrier","censurer","central","cercle","cérébral","cerise","cerner","cerveau","cesser","chagrin","chaise","chaleur","chambre","chance","chapitre","charbon","chasseur","chaton","chausson","chavirer","chemise","chenille","chéquier","chercher","cheval","chien","chiffre","chignon","chimère","chiot","chlorure","chocolat","choisir","chose","chouette","chrome","chute","cigare","cigogne","cimenter","cinéma","cintrer","circuler","cirer","cirque","citerne","citoyen","citron","civil","clairon","clameur","claquer","classe","clavier","client","cligner","climat","clivage","cloche","clonage","cloporte","cobalt","cobra","cocasse","cocotier","coder","codifier","coffre","cogner","cohésion","coiffer","coincer","colère","colibri","colline","colmater","colonel","combat","comédie","commande","compact","concert","conduire","confier","congeler","connoter","consonne","contact","convexe","copain","copie","corail","corbeau","cordage","corniche","corpus","correct","cortège","cosmique","costume","coton","coude","coupure","courage","couteau","couvrir","coyote","crabe","crainte","cravate","crayon","créature","créditer","crémeux","creuser","crevette","cribler","crier","cristal","critère","croire","croquer","crotale","crucial","cruel","crypter","cubique","cueillir","cuillère","cuisine","cuivre","culminer","cultiver","cumuler","cupide","curatif","curseur","cyanure","cycle","cylindre","cynique","daigner","damier","danger","danseur","dauphin","débattre","débiter","déborder","débrider","débutant","décaler","décembre","déchirer","décider","déclarer","décorer","décrire","décupler","dédale","déductif","déesse","défensif","défiler","défrayer","dégager","dégivrer","déglutir","dégrafer","déjeuner","délice","déloger","demander","demeurer","démolir","dénicher","dénouer","dentelle","dénuder","départ","dépenser","déphaser","déplacer","déposer","déranger","dérober","désastre","descente","désert","désigner","désobéir","dessiner","destrier","détacher","détester","détourer","détresse","devancer","devenir","deviner","devoir","diable","dialogue","diamant","dicter","différer","digérer","digital","digne","diluer","dimanche","diminuer","dioxyde","directif","diriger","discuter","disposer","dissiper","distance","divertir","diviser","docile","docteur","dogme","doigt","domaine","domicile","dompter","donateur","donjon","donner","dopamine","dortoir","dorure","dosage","doseur","dossier","dotation","douanier","double","douceur","douter","doyen","dragon","draper","dresser","dribbler","droiture","duperie","duplexe","durable","durcir","dynastie","éblouir","écarter","écharpe","échelle","éclairer","éclipse","éclore","écluse","école","économie","écorce","écouter","écraser","écrémer","écrivain","écrou","écume","écureuil","édifier","éduquer","effacer","effectif","effigie","effort","effrayer","effusion","égaliser","égarer","éjecter","élaborer","élargir","électron","élégant","éléphant","élève","éligible","élitisme","éloge","élucider","éluder","emballer","embellir","embryon","émeraude","émission","emmener","émotion","émouvoir","empereur","employer","emporter","emprise","émulsion","encadrer","enchère","enclave","encoche","endiguer","endosser","endroit","enduire","énergie","enfance","enfermer","enfouir","engager","engin","englober","énigme","enjamber","enjeu","enlever","ennemi","ennuyeux","enrichir","enrobage","enseigne","entasser","entendre","entier","entourer","entraver","énumérer","envahir","enviable","envoyer","enzyme","éolien","épaissir","épargne","épatant","épaule","épicerie","épidémie","épier","épilogue","épine","épisode","épitaphe","époque","épreuve","éprouver","épuisant","équerre","équipe","ériger","érosion","erreur","éruption","escalier","espadon","espèce","espiègle","espoir","esprit","esquiver","essayer","essence","essieu","essorer","estime","estomac","estrade","étagère","étaler","étanche","étatique","éteindre","étendoir","éternel","éthanol","éthique","ethnie","étirer","étoffer","étoile","étonnant","étourdir","étrange","étroit","étude","euphorie","évaluer","évasion","éventail","évidence","éviter","évolutif","évoquer","exact","exagérer","exaucer","exceller","excitant","exclusif","excuse","exécuter","exemple","exercer","exhaler","exhorter","exigence","exiler","exister","exotique","expédier","explorer","exposer","exprimer","exquis","extensif","extraire","exulter","fable","fabuleux","facette","facile","facture","faiblir","falaise","fameux","famille","farceur","farfelu","farine","farouche","fasciner","fatal","fatigue","faucon","fautif","faveur","favori","fébrile","féconder","fédérer","félin","femme","fémur","fendoir","féodal","fermer","féroce","ferveur","festival","feuille","feutre","février","fiasco","ficeler","fictif","fidèle","figure","filature","filetage","filière","filleul","filmer","filou","filtrer","financer","finir","fiole","firme","fissure","fixer","flairer","flamme","flasque","flatteur","fléau","flèche","fleur","flexion","flocon","flore","fluctuer","fluide","fluvial","folie","fonderie","fongible","fontaine","forcer","forgeron","formuler","fortune","fossile","foudre","fougère","fouiller","foulure","fourmi","fragile","fraise","franchir","frapper","frayeur","frégate","freiner","frelon","frémir","frénésie","frère","friable","friction","frisson","frivole","froid","fromage","frontal","frotter","fruit","fugitif","fuite","fureur","furieux","furtif","fusion","futur","gagner","galaxie","galerie","gambader","garantir","gardien","garnir","garrigue","gazelle","gazon","géant","gélatine","gélule","gendarme","général","génie","genou","gentil","géologie","géomètre","géranium","germe","gestuel","geyser","gibier","gicler","girafe","givre","glace","glaive","glisser","globe","gloire","glorieux","golfeur","gomme","gonfler","gorge","gorille","goudron","gouffre","goulot","goupille","gourmand","goutte","graduel","graffiti","graine","grand","grappin","gratuit","gravir","grenat","griffure","griller","grimper","grogner","gronder","grotte","groupe","gruger","grutier","gruyère","guépard","guerrier","guide","guimauve","guitare","gustatif","gymnaste","gyrostat","habitude","hachoir","halte","hameau","hangar","hanneton","haricot","harmonie","harpon","hasard","hélium","hématome","herbe","hérisson","hermine","héron","hésiter","heureux","hiberner","hibou","hilarant","histoire","hiver","homard","hommage","homogène","honneur","honorer","honteux","horde","horizon","horloge","hormone","horrible","houleux","housse","hublot","huileux","humain","humble","humide","humour","hurler","hydromel","hygiène","hymne","hypnose","idylle","ignorer","iguane","illicite","illusion","image","imbiber","imiter","immense","immobile","immuable","impact","impérial","implorer","imposer","imprimer","imputer","incarner","incendie","incident","incliner","incolore","indexer","indice","inductif","inédit","ineptie","inexact","infini","infliger","informer","infusion","ingérer","inhaler","inhiber","injecter","injure","innocent","inoculer","inonder","inscrire","insecte","insigne","insolite","inspirer","instinct","insulter","intact","intense","intime","intrigue","intuitif","inutile","invasion","inventer","inviter","invoquer","ironique","irradier","irréel","irriter","isoler","ivoire","ivresse","jaguar","jaillir","jambe","janvier","jardin","jauger","jaune","javelot","jetable","jeton","jeudi","jeunesse","joindre","joncher","jongler","joueur","jouissif","journal","jovial","joyau","joyeux","jubiler","jugement","junior","jupon","juriste","justice","juteux","juvénile","kayak","kimono","kiosque","label","labial","labourer","lacérer","lactose","lagune","laine","laisser","laitier","lambeau","lamelle","lampe","lanceur","langage","lanterne","lapin","largeur","larme","laurier","lavabo","lavoir","lecture","légal","léger","légume","lessive","lettre","levier","lexique","lézard","liasse","libérer","libre","licence","licorne","liège","lièvre","ligature","ligoter","ligue","limer","limite","limonade","limpide","linéaire","lingot","lionceau","liquide","lisière","lister","lithium","litige","littoral","livreur","logique","lointain","loisir","lombric","loterie","louer","lourd","loutre","louve","loyal","lubie","lucide","lucratif","lueur","lugubre","luisant","lumière","lunaire","lundi","luron","lutter","luxueux","machine","magasin","magenta","magique","maigre","maillon","maintien","mairie","maison","majorer","malaxer","maléfice","malheur","malice","mallette","mammouth","mandater","maniable","manquant","manteau","manuel","marathon","marbre","marchand","mardi","maritime","marqueur","marron","marteler","mascotte","massif","matériel","matière","matraque","maudire","maussade","mauve","maximal","méchant","méconnu","médaille","médecin","méditer","méduse","meilleur","mélange","mélodie","membre","mémoire","menacer","mener","menhir","mensonge","mentor","mercredi","mérite","merle","messager","mesure","métal","météore","méthode","métier","meuble","miauler","microbe","miette","mignon","migrer","milieu","million","mimique","mince","minéral","minimal","minorer","minute","miracle","miroiter","missile","mixte","mobile","moderne","moelleux","mondial","moniteur","monnaie","monotone","monstre","montagne","monument","moqueur","morceau","morsure","mortier","moteur","motif","mouche","moufle","moulin","mousson","mouton","mouvant","multiple","munition","muraille","murène","murmure","muscle","muséum","musicien","mutation","muter","mutuel","myriade","myrtille","mystère","mythique","nageur","nappe","narquois","narrer","natation","nation","nature","naufrage","nautique","navire","nébuleux","nectar","néfaste","négation","négliger","négocier","neige","nerveux","nettoyer","neurone","neutron","neveu","niche","nickel","nitrate","niveau","noble","nocif","nocturne","noirceur","noisette","nomade","nombreux","nommer","normatif","notable","notifier","notoire","nourrir","nouveau","novateur","novembre","novice","nuage","nuancer","nuire","nuisible","numéro","nuptial","nuque","nutritif","obéir","objectif","obliger","obscur","observer","obstacle","obtenir","obturer","occasion","occuper","océan","octobre","octroyer","octupler","oculaire","odeur","odorant","offenser","officier","offrir","ogive","oiseau","oisillon","olfactif","olivier","ombrage","omettre","onctueux","onduler","onéreux","onirique","opale","opaque","opérer","opinion","opportun","opprimer","opter","optique","orageux","orange","orbite","ordonner","oreille","organe","orgueil","orifice","ornement","orque","ortie","osciller","osmose","ossature","otarie","ouragan","ourson","outil","outrager","ouvrage","ovation","oxyde","oxygène","ozone","paisible","palace","palmarès","palourde","palper","panache","panda","pangolin","paniquer","panneau","panorama","pantalon","papaye","papier","papoter","papyrus","paradoxe","parcelle","paresse","parfumer","parler","parole","parrain","parsemer","partager","parure","parvenir","passion","pastèque","paternel","patience","patron","pavillon","pavoiser","payer","paysage","peigne","peintre","pelage","pélican","pelle","pelouse","peluche","pendule","pénétrer","pénible","pensif","pénurie","pépite","péplum","perdrix","perforer","période","permuter","perplexe","persil","perte","peser","pétale","petit","pétrir","peuple","pharaon","phobie","phoque","photon","phrase","physique","piano","pictural","pièce","pierre","pieuvre","pilote","pinceau","pipette","piquer","pirogue","piscine","piston","pivoter","pixel","pizza","placard","plafond","plaisir","planer","plaque","plastron","plateau","pleurer","plexus","pliage","plomb","plonger","pluie","plumage","pochette","poésie","poète","pointe","poirier","poisson","poivre","polaire","policier","pollen","polygone","pommade","pompier","ponctuel","pondérer","poney","portique","position","posséder","posture","potager","poteau","potion","pouce","poulain","poumon","pourpre","poussin","pouvoir","prairie","pratique","précieux","prédire","préfixe","prélude","prénom","présence","prétexte","prévoir","primitif","prince","prison","priver","problème","procéder","prodige","profond","progrès","proie","projeter","prologue","promener","propre","prospère","protéger","prouesse","proverbe","prudence","pruneau","psychose","public","puceron","puiser","pulpe","pulsar","punaise","punitif","pupitre","purifier","puzzle","pyramide","quasar","querelle","question","quiétude","quitter","quotient","racine","raconter","radieux","ragondin","raideur","raisin","ralentir","rallonge","ramasser","rapide","rasage","ratisser","ravager","ravin","rayonner","réactif","réagir","réaliser","réanimer","recevoir","réciter","réclamer","récolter","recruter","reculer","recycler","rédiger","redouter","refaire","réflexe","réformer","refrain","refuge","régalien","région","réglage","régulier","réitérer","rejeter","rejouer","relatif","relever","relief","remarque","remède","remise","remonter","remplir","remuer","renard","renfort","renifler","renoncer","rentrer","renvoi","replier","reporter","reprise","reptile","requin","réserve","résineux","résoudre","respect","rester","résultat","rétablir","retenir","réticule","retomber","retracer","réunion","réussir","revanche","revivre","révolte","révulsif","richesse","rideau","rieur","rigide","rigoler","rincer","riposter","risible","risque","rituel","rival","rivière","rocheux","romance","rompre","ronce","rondin","roseau","rosier","rotatif","rotor","rotule","rouge","rouille","rouleau","routine","royaume","ruban","rubis","ruche","ruelle","rugueux","ruiner","ruisseau","ruser","rustique","rythme","sabler","saboter","sabre","sacoche","safari","sagesse","saisir","salade","salive","salon","saluer","samedi","sanction","sanglier","sarcasme","sardine","saturer","saugrenu","saumon","sauter","sauvage","savant","savonner","scalpel","scandale","scélérat","scénario","sceptre","schéma","science","scinder","score","scrutin","sculpter","séance","sécable","sécher","secouer","sécréter","sédatif","séduire","seigneur","séjour","sélectif","semaine","sembler","semence","séminal","sénateur","sensible","sentence","séparer","séquence","serein","sergent","sérieux","serrure","sérum","service","sésame","sévir","sevrage","sextuple","sidéral","siècle","siéger","siffler","sigle","signal","silence","silicium","simple","sincère","sinistre","siphon","sirop","sismique","situer","skier","social","socle","sodium","soigneux","soldat","soleil","solitude","soluble","sombre","sommeil","somnoler","sonde","songeur","sonnette","sonore","sorcier","sortir","sosie","sottise","soucieux","soudure","souffle","soulever","soupape","source","soutirer","souvenir","spacieux","spatial","spécial","sphère","spiral","stable","station","sternum","stimulus","stipuler","strict","studieux","stupeur","styliste","sublime","substrat","subtil","subvenir","succès","sucre","suffixe","suggérer","suiveur","sulfate","superbe","supplier","surface","suricate","surmener","surprise","sursaut","survie","suspect","syllabe","symbole","symétrie","synapse","syntaxe","système","tabac","tablier","tactile","tailler","talent","talisman","talonner","tambour","tamiser","tangible","tapis","taquiner","tarder","tarif","tartine","tasse","tatami","tatouage","taupe","taureau","taxer","témoin","temporel","tenaille","tendre","teneur","tenir","tension","terminer","terne","terrible","tétine","texte","thème","théorie","thérapie","thorax","tibia","tiède","timide","tirelire","tiroir","tissu","titane","titre","tituber","toboggan","tolérant","tomate","tonique","tonneau","toponyme","torche","tordre","tornade","torpille","torrent","torse","tortue","totem","toucher","tournage","tousser","toxine","traction","trafic","tragique","trahir","train","trancher","travail","trèfle","tremper","trésor","treuil","triage","tribunal","tricoter","trilogie","triomphe","tripler","triturer","trivial","trombone","tronc","tropical","troupeau","tuile","tulipe","tumulte","tunnel","turbine","tuteur","tutoyer","tuyau","tympan","typhon","typique","tyran","ubuesque","ultime","ultrason","unanime","unifier","union","unique","unitaire","univers","uranium","urbain","urticant","usage","usine","usuel","usure","utile","utopie","vacarme","vaccin","vagabond","vague","vaillant","vaincre","vaisseau","valable","valise","vallon","valve","vampire","vanille","vapeur","varier","vaseux","vassal","vaste","vecteur","vedette","végétal","véhicule","veinard","véloce","vendredi","vénérer","venger","venimeux","ventouse","verdure","vérin","vernir","verrou","verser","vertu","veston","vétéran","vétuste","vexant","vexer","viaduc","viande","victoire","vidange","vidéo","vignette","vigueur","vilain","village","vinaigre","violon","vipère","virement","virtuose","virus","visage","viseur","vision","visqueux","visuel","vital","vitesse","viticole","vitrine","vivace","vivipare","vocation","voguer","voile","voisin","voiture","volaille","volcan","voltiger","volume","vorace","vortex","voter","vouloir","voyage","voyelle","wagon","xénon","yacht","zèbre","zénith","zeste","zoologie"],chinese_simplified:["的","一","是","在","不","了","有","和","人","这","中","大","为","上","个","国","我","以","要","他","时","来","用","们","生","到","作","地","于","出","就","分","对","成","会","可","主","发","年","动","同","工","也","能","下","过","子","说","产","种","面","而","方","后","多","定","行","学","法","所","民","得","经","十","三","之","进","着","等","部","度","家","电","力","里","如","水","化","高","自","二","理","起","小","物","现","实","加","量","都","两","体","制","机","当","使","点","从","业","本","去","把","性","好","应","开","它","合","还","因","由","其","些","然","前","外","天","政","四","日","那","社","义","事","平","形","相","全","表","间","样","与","关","各","重","新","线","内","数","正","心","反","你","明","看","原","又","么","利","比","或","但","质","气","第","向","道","命","此","变","条","只","没","结","解","问","意","建","月","公","无","系","军","很","情","者","最","立","代","想","已","通","并","提","直","题","党","程","展","五","果","料","象","员","革","位","入","常","文","总","次","品","式","活","设","及","管","特","件","长","求","老","头","基","资","边","流","路","级","少","图","山","统","接","知","较","将","组","见","计","别","她","手","角","期","根","论","运","农","指","几","九","区","强","放","决","西","被","干","做","必","战","先","回","则","任","取","据","处","队","南","给","色","光","门","即","保","治","北","造","百","规","热","领","七","海","口","东","导","器","压","志","世","金","增","争","济","阶","油","思","术","极","交","受","联","什","认","六","共","权","收","证","改","清","美","再","采","转","更","单","风","切","打","白","教","速","花","带","安","场","身","车","例","真","务","具","万","每","目","至","达","走","积","示","议","声","报","斗","完","类","八","离","华","名","确","才","科","张","信","马","节","话","米","整","空","元","况","今","集","温","传","土","许","步","群","广","石","记","需","段","研","界","拉","林","律","叫","且","究","观","越","织","装","影","算","低","持","音","众","书","布","复","容","儿","须","际","商","非","验","连","断","深","难","近","矿","千","周","委","素","技","备","半","办","青","省","列","习","响","约","支","般","史","感","劳","便","团","往","酸","历","市","克","何","除","消","构","府","称","太","准","精","值","号","率","族","维","划","选","标","写","存","候","毛","亲","快","效","斯","院","查","江","型","眼","王","按","格","养","易","置","派","层","片","始","却","专","状","育","厂","京","识","适","属","圆","包","火","住","调","满","县","局","照","参","红","细","引","听","该","铁","价","严","首","底","液","官","德","随","病","苏","失","尔","死","讲","配","女","黄","推","显","谈","罪","神","艺","呢","席","含","企","望","密","批","营","项","防","举","球","英","氧","势","告","李","台","落","木","帮","轮","破","亚","师","围","注","远","字","材","排","供","河","态","封","另","施","减","树","溶","怎","止","案","言","士","均","武","固","叶","鱼","波","视","仅","费","紧","爱","左","章","早","朝","害","续","轻","服","试","食","充","兵","源","判","护","司","足","某","练","差","致","板","田","降","黑","犯","负","击","范","继","兴","似","余","坚","曲","输","修","故","城","夫","够","送","笔","船","占","右","财","吃","富","春","职","觉","汉","画","功","巴","跟","虽","杂","飞","检","吸","助","升","阳","互","初","创","抗","考","投","坏","策","古","径","换","未","跑","留","钢","曾","端","责","站","简","述","钱","副","尽","帝","射","草","冲","承","独","令","限","阿","宣","环","双","请","超","微","让","控","州","良","轴","找","否","纪","益","依","优","顶","础","载","倒","房","突","坐","粉","敌","略","客","袁","冷","胜","绝","析","块","剂","测","丝","协","诉","念","陈","仍","罗","盐","友","洋","错","苦","夜","刑","移","频","逐","靠","混","母","短","皮","终","聚","汽","村","云","哪","既","距","卫","停","烈","央","察","烧","迅","境","若","印","洲","刻","括","激","孔","搞","甚","室","待","核","校","散","侵","吧","甲","游","久","菜","味","旧","模","湖","货","损","预","阻","毫","普","稳","乙","妈","植","息","扩","银","语","挥","酒","守","拿","序","纸","医","缺","雨","吗","针","刘","啊","急","唱","误","训","愿","审","附","获","茶","鲜","粮","斤","孩","脱","硫","肥","善","龙","演","父","渐","血","欢","械","掌","歌","沙","刚","攻","谓","盾","讨","晚","粒","乱","燃","矛","乎","杀","药","宁","鲁","贵","钟","煤","读","班","伯","香","介","迫","句","丰","培","握","兰","担","弦","蛋","沉","假","穿","执","答","乐","谁","顺","烟","缩","征","脸","喜","松","脚","困","异","免","背","星","福","买","染","井","概","慢","怕","磁","倍","祖","皇","促","静","补","评","翻","肉","践","尼","衣","宽","扬","棉","希","伤","操","垂","秋","宜","氢","套","督","振","架","亮","末","宪","庆","编","牛","触","映","雷","销","诗","座","居","抓","裂","胞","呼","娘","景","威","绿","晶","厚","盟","衡","鸡","孙","延","危","胶","屋","乡","临","陆","顾","掉","呀","灯","岁","措","束","耐","剧","玉","赵","跳","哥","季","课","凯","胡","额","款","绍","卷","齐","伟","蒸","殖","永","宗","苗","川","炉","岩","弱","零","杨","奏","沿","露","杆","探","滑","镇","饭","浓","航","怀","赶","库","夺","伊","灵","税","途","灭","赛","归","召","鼓","播","盘","裁","险","康","唯","录","菌","纯","借","糖","盖","横","符","私","努","堂","域","枪","润","幅","哈","竟","熟","虫","泽","脑","壤","碳","欧","遍","侧","寨","敢","彻","虑","斜","薄","庭","纳","弹","饲","伸","折","麦","湿","暗","荷","瓦","塞","床","筑","恶","户","访","塔","奇","透","梁","刀","旋","迹","卡","氯","遇","份","毒","泥","退","洗","摆","灰","彩","卖","耗","夏","择","忙","铜","献","硬","予","繁","圈","雪","函","亦","抽","篇","阵","阴","丁","尺","追","堆","雄","迎","泛","爸","楼","避","谋","吨","野","猪","旗","累","偏","典","馆","索","秦","脂","潮","爷","豆","忽","托","惊","塑","遗","愈","朱","替","纤","粗","倾","尚","痛","楚","谢","奋","购","磨","君","池","旁","碎","骨","监","捕","弟","暴","割","贯","殊","释","词","亡","壁","顿","宝","午","尘","闻","揭","炮","残","冬","桥","妇","警","综","招","吴","付","浮","遭","徐","您","摇","谷","赞","箱","隔","订","男","吹","园","纷","唐","败","宋","玻","巨","耕","坦","荣","闭","湾","键","凡","驻","锅","救","恩","剥","凝","碱","齿","截","炼","麻","纺","禁","废","盛","版","缓","净","睛","昌","婚","涉","筒","嘴","插","岸","朗","庄","街","藏","姑","贸","腐","奴","啦","惯","乘","伙","恢","匀","纱","扎","辩","耳","彪","臣","亿","璃","抵","脉","秀","萨","俄","网","舞","店","喷","纵","寸","汗","挂","洪","贺","闪","柬","爆","烯","津","稻","墙","软","勇","像","滚","厘","蒙","芳","肯","坡","柱","荡","腿","仪","旅","尾","轧","冰","贡","登","黎","削","钻","勒","逃","障","氨","郭","峰","币","港","伏","轨","亩","毕","擦","莫","刺","浪","秘","援","株","健","售","股","岛","甘","泡","睡","童","铸","汤","阀","休","汇","舍","牧","绕","炸","哲","磷","绩","朋","淡","尖","启","陷","柴","呈","徒","颜","泪","稍","忘","泵","蓝","拖","洞","授","镜","辛","壮","锋","贫","虚","弯","摩","泰","幼","廷","尊","窗","纲","弄","隶","疑","氏","宫","姐","震","瑞","怪","尤","琴","循","描","膜","违","夹","腰","缘","珠","穷","森","枝","竹","沟","催","绳","忆","邦","剩","幸","浆","栏","拥","牙","贮","礼","滤","钠","纹","罢","拍","咱","喊","袖","埃","勤","罚","焦","潜","伍","墨","欲","缝","姓","刊","饱","仿","奖","铝","鬼","丽","跨","默","挖","链","扫","喝","袋","炭","污","幕","诸","弧","励","梅","奶","洁","灾","舟","鉴","苯","讼","抱","毁","懂","寒","智","埔","寄","届","跃","渡","挑","丹","艰","贝","碰","拔","爹","戴","码","梦","芽","熔","赤","渔","哭","敬","颗","奔","铅","仲","虎","稀","妹","乏","珍","申","桌","遵","允","隆","螺","仓","魏","锐","晓","氮","兼","隐","碍","赫","拨","忠","肃","缸","牵","抢","博","巧","壳","兄","杜","讯","诚","碧","祥","柯","页","巡","矩","悲","灌","龄","伦","票","寻","桂","铺","圣","恐","恰","郑","趣","抬","荒","腾","贴","柔","滴","猛","阔","辆","妻","填","撤","储","签","闹","扰","紫","砂","递","戏","吊","陶","伐","喂","疗","瓶","婆","抚","臂","摸","忍","虾","蜡","邻","胸","巩","挤","偶","弃","槽","劲","乳","邓","吉","仁","烂","砖","租","乌","舰","伴","瓜","浅","丙","暂","燥","橡","柳","迷","暖","牌","秧","胆","详","簧","踏","瓷","谱","呆","宾","糊","洛","辉","愤","竞","隙","怒","粘","乃","绪","肩","籍","敏","涂","熙","皆","侦","悬","掘","享","纠","醒","狂","锁","淀","恨","牲","霸","爬","赏","逆","玩","陵","祝","秒","浙","貌","役","彼","悉","鸭","趋","凤","晨","畜","辈","秩","卵","署","梯","炎","滩","棋","驱","筛","峡","冒","啥","寿","译","浸","泉","帽","迟","硅","疆","贷","漏","稿","冠","嫩","胁","芯","牢","叛","蚀","奥","鸣","岭","羊","凭","串","塘","绘","酵","融","盆","锡","庙","筹","冻","辅","摄","袭","筋","拒","僚","旱","钾","鸟","漆","沈","眉","疏","添","棒","穗","硝","韩","逼","扭","侨","凉","挺","碗","栽","炒","杯","患","馏","劝","豪","辽","勃","鸿","旦","吏","拜","狗","埋","辊","掩","饮","搬","骂","辞","勾","扣","估","蒋","绒","雾","丈","朵","姆","拟","宇","辑","陕","雕","偿","蓄","崇","剪","倡","厅","咬","驶","薯","刷","斥","番","赋","奉","佛","浇","漫","曼","扇","钙","桃","扶","仔","返","俗","亏","腔","鞋","棱","覆","框","悄","叔","撞","骗","勘","旺","沸","孤","吐","孟","渠","屈","疾","妙","惜","仰","狠","胀","谐","抛","霉","桑","岗","嘛","衰","盗","渗","脏","赖","涌","甜","曹","阅","肌","哩","厉","烃","纬","毅","昨","伪","症","煮","叹","钉","搭","茎","笼","酷","偷","弓","锥","恒","杰","坑","鼻","翼","纶","叙","狱","逮","罐","络","棚","抑","膨","蔬","寺","骤","穆","冶","枯","册","尸","凸","绅","坯","牺","焰","轰","欣","晋","瘦","御","锭","锦","丧","旬","锻","垄","搜","扑","邀","亭","酯","迈","舒","脆","酶","闲","忧","酚","顽","羽","涨","卸","仗","陪","辟","惩","杭","姚","肚","捉","飘","漂","昆","欺","吾","郎","烷","汁","呵","饰","萧","雅","邮","迁","燕","撒","姻","赴","宴","烦","债","帐","斑","铃","旨","醇","董","饼","雏","姿","拌","傅","腹","妥","揉","贤","拆","歪","葡","胺","丢","浩","徽","昂","垫","挡","览","贪","慰","缴","汪","慌","冯","诺","姜","谊","凶","劣","诬","耀","昏","躺","盈","骑","乔","溪","丛","卢","抹","闷","咨","刮","驾","缆","悟","摘","铒","掷","颇","幻","柄","惠","惨","佳","仇","腊","窝","涤","剑","瞧","堡","泼","葱","罩","霍","捞","胎","苍","滨","俩","捅","湘","砍","霞","邵","萄","疯","淮","遂","熊","粪","烘","宿","档","戈","驳","嫂","裕","徙","箭","捐","肠","撑","晒","辨","殿","莲","摊","搅","酱","屏","疫","哀","蔡","堵","沫","皱","畅","叠","阁","莱","敲","辖","钩","痕","坝","巷","饿","祸","丘","玄","溜","曰","逻","彭","尝","卿","妨","艇","吞","韦","怨","矮","歇"],chinese_traditional:["的","一","是","在","不","了","有","和","人","这","中","大","为","上","个","国","我","以","要","他","时","来","用","们","生","到","作","地","于","出","就","分","对","成","会","可","主","发","年","动","同","工","也","能","下","过","子","说","产","种","面","而","方","后","多","定","行","学","法","所","民","得","经","十","三","之","进","着","等","部","度","家","电","力","里","如","水","化","高","自","二","理","起","小","物","现","实","加","量","都","两","体","制","机","当","使","点","从","业","本","去","把","性","好","应","开","它","合","还","因","由","其","些","然","前","外","天","政","四","日","那","社","义","事","平","形","相","全","表","间","样","与","关","各","重","新","线","内","数","正","心","反","你","明","看","原","又","么","利","比","或","但","质","气","第","向","道","命","此","变","条","只","没","结","解","问","意","建","月","公","无","系","军","很","情","者","最","立","代","想","已","通","并","提","直","题","党","程","展","五","果","料","象","员","革","位","入","常","文","总","次","品","式","活","设","及","管","特","件","长","求","老","头","基","资","边","流","路","级","少","图","山","统","接","知","较","将","组","见","计","别","她","手","角","期","根","论","运","农","指","几","九","区","强","放","决","西","被","干","做","必","战","先","回","则","任","取","据","处","队","南","给","色","光","门","即","保","治","北","造","百","规","热","领","七","海","口","东","导","器","压","志","世","金","增","争","济","阶","油","思","术","极","交","受","联","什","认","六","共","权","收","证","改","清","美","再","采","转","更","单","风","切","打","白","教","速","花","带","安","场","身","车","例","真","务","具","万","每","目","至","达","走","积","示","议","声","报","斗","完","类","八","离","华","名","确","才","科","张","信","马","节","话","米","整","空","元","况","今","集","温","传","土","许","步","群","广","石","记","需","段","研","界","拉","林","律","叫","且","究","观","越","织","装","影","算","低","持","音","众","书","布","复","容","儿","须","际","商","非","验","连","断","深","难","近","矿","千","周","委","素","技","备","半","办","青","省","列","习","响","约","支","般","史","感","劳","便","团","往","酸","历","市","克","何","除","消","构","府","称","太","准","精","值","号","率","族","维","划","选","标","写","存","候","毛","亲","快","效","斯","院","查","江","型","眼","王","按","格","养","易","置","派","层","片","始","却","专","状","育","厂","京","识","适","属","圆","包","火","住","调","满","县","局","照","参","红","细","引","听","该","铁","价","严","首","底","液","官","德","随","病","苏","失","尔","死","讲","配","女","黄","推","显","谈","罪","神","艺","呢","席","含","企","望","密","批","营","项","防","举","球","英","氧","势","告","李","台","落","木","帮","轮","破","亚","师","围","注","远","字","材","排","供","河","态","封","另","施","减","树","溶","怎","止","案","言","士","均","武","固","叶","鱼","波","视","仅","费","紧","爱","左","章","早","朝","害","续","轻","服","试","食","充","兵","源","判","护","司","足","某","练","差","致","板","田","降","黑","犯","负","击","范","继","兴","似","余","坚","曲","输","修","故","城","夫","够","送","笔","船","占","右","财","吃","富","春","职","觉","汉","画","功","巴","跟","虽","杂","飞","检","吸","助","升","阳","互","初","创","抗","考","投","坏","策","古","径","换","未","跑","留","钢","曾","端","责","站","简","述","钱","副","尽","帝","射","草","冲","承","独","令","限","阿","宣","环","双","请","超","微","让","控","州","良","轴","找","否","纪","益","依","优","顶","础","载","倒","房","突","坐","粉","敌","略","客","袁","冷","胜","绝","析","块","剂","测","丝","协","诉","念","陈","仍","罗","盐","友","洋","错","苦","夜","刑","移","频","逐","靠","混","母","短","皮","终","聚","汽","村","云","哪","既","距","卫","停","烈","央","察","烧","迅","境","若","印","洲","刻","括","激","孔","搞","甚","室","待","核","校","散","侵","吧","甲","游","久","菜","味","旧","模","湖","货","损","预","阻","毫","普","稳","乙","妈","植","息","扩","银","语","挥","酒","守","拿","序","纸","医","缺","雨","吗","针","刘","啊","急","唱","误","训","愿","审","附","获","茶","鲜","粮","斤","孩","脱","硫","肥","善","龙","演","父","渐","血","欢","械","掌","歌","沙","刚","攻","谓","盾","讨","晚","粒","乱","燃","矛","乎","杀","药","宁","鲁","贵","钟","煤","读","班","伯","香","介","迫","句","丰","培","握","兰","担","弦","蛋","沉","假","穿","执","答","乐","谁","顺","烟","缩","征","脸","喜","松","脚","困","异","免","背","星","福","买","染","井","概","慢","怕","磁","倍","祖","皇","促","静","补","评","翻","肉","践","尼","衣","宽","扬","棉","希","伤","操","垂","秋","宜","氢","套","督","振","架","亮","末","宪","庆","编","牛","触","映","雷","销","诗","座","居","抓","裂","胞","呼","娘","景","威","绿","晶","厚","盟","衡","鸡","孙","延","危","胶","屋","乡","临","陆","顾","掉","呀","灯","岁","措","束","耐","剧","玉","赵","跳","哥","季","课","凯","胡","额","款","绍","卷","齐","伟","蒸","殖","永","宗","苗","川","炉","岩","弱","零","杨","奏","沿","露","杆","探","滑","镇","饭","浓","航","怀","赶","库","夺","伊","灵","税","途","灭","赛","归","召","鼓","播","盘","裁","险","康","唯","录","菌","纯","借","糖","盖","横","符","私","努","堂","域","枪","润","幅","哈","竟","熟","虫","泽","脑","壤","碳","欧","遍","侧","寨","敢","彻","虑","斜","薄","庭","纳","弹","饲","伸","折","麦","湿","暗","荷","瓦","塞","床","筑","恶","户","访","塔","奇","透","梁","刀","旋","迹","卡","氯","遇","份","毒","泥","退","洗","摆","灰","彩","卖","耗","夏","择","忙","铜","献","硬","予","繁","圈","雪","函","亦","抽","篇","阵","阴","丁","尺","追","堆","雄","迎","泛","爸","楼","避","谋","吨","野","猪","旗","累","偏","典","馆","索","秦","脂","潮","爷","豆","忽","托","惊","塑","遗","愈","朱","替","纤","粗","倾","尚","痛","楚","谢","奋","购","磨","君","池","旁","碎","骨","监","捕","弟","暴","割","贯","殊","释","词","亡","壁","顿","宝","午","尘","闻","揭","炮","残","冬","桥","妇","警","综","招","吴","付","浮","遭","徐","您","摇","谷","赞","箱","隔","订","男","吹","园","纷","唐","败","宋","玻","巨","耕","坦","荣","闭","湾","键","凡","驻","锅","救","恩","剥","凝","碱","齿","截","炼","麻","纺","禁","废","盛","版","缓","净","睛","昌","婚","涉","筒","嘴","插","岸","朗","庄","街","藏","姑","贸","腐","奴","啦","惯","乘","伙","恢","匀","纱","扎","辩","耳","彪","臣","亿","璃","抵","脉","秀","萨","俄","网","舞","店","喷","纵","寸","汗","挂","洪","贺","闪","柬","爆","烯","津","稻","墙","软","勇","像","滚","厘","蒙","芳","肯","坡","柱","荡","腿","仪","旅","尾","轧","冰","贡","登","黎","削","钻","勒","逃","障","氨","郭","峰","币","港","伏","轨","亩","毕","擦","莫","刺","浪","秘","援","株","健","售","股","岛","甘","泡","睡","童","铸","汤","阀","休","汇","舍","牧","绕","炸","哲","磷","绩","朋","淡","尖","启","陷","柴","呈","徒","颜","泪","稍","忘","泵","蓝","拖","洞","授","镜","辛","壮","锋","贫","虚","弯","摩","泰","幼","廷","尊","窗","纲","弄","隶","疑","氏","宫","姐","震","瑞","怪","尤","琴","循","描","膜","违","夹","腰","缘","珠","穷","森","枝","竹","沟","催","绳","忆","邦","剩","幸","浆","栏","拥","牙","贮","礼","滤","钠","纹","罢","拍","咱","喊","袖","埃","勤","罚","焦","潜","伍","墨","欲","缝","姓","刊","饱","仿","奖","铝","鬼","丽","跨","默","挖","链","扫","喝","袋","炭","污","幕","诸","弧","励","梅","奶","洁","灾","舟","鉴","苯","讼","抱","毁","懂","寒","智","埔","寄","届","跃","渡","挑","丹","艰","贝","碰","拔","爹","戴","码","梦","芽","熔","赤","渔","哭","敬","颗","奔","铅","仲","虎","稀","妹","乏","珍","申","桌","遵","允","隆","螺","仓","魏","锐","晓","氮","兼","隐","碍","赫","拨","忠","肃","缸","牵","抢","博","巧","壳","兄","杜","讯","诚","碧","祥","柯","页","巡","矩","悲","灌","龄","伦","票","寻","桂","铺","圣","恐","恰","郑","趣","抬","荒","腾","贴","柔","滴","猛","阔","辆","妻","填","撤","储","签","闹","扰","紫","砂","递","戏","吊","陶","伐","喂","疗","瓶","婆","抚","臂","摸","忍","虾","蜡","邻","胸","巩","挤","偶","弃","槽","劲","乳","邓","吉","仁","烂","砖","租","乌","舰","伴","瓜","浅","丙","暂","燥","橡","柳","迷","暖","牌","秧","胆","详","簧","踏","瓷","谱","呆","宾","糊","洛","辉","愤","竞","隙","怒","粘","乃","绪","肩","籍","敏","涂","熙","皆","侦","悬","掘","享","纠","醒","狂","锁","淀","恨","牲","霸","爬","赏","逆","玩","陵","祝","秒","浙","貌","役","彼","悉","鸭","趋","凤","晨","畜","辈","秩","卵","署","梯","炎","滩","棋","驱","筛","峡","冒","啥","寿","译","浸","泉","帽","迟","硅","疆","贷","漏","稿","冠","嫩","胁","芯","牢","叛","蚀","奥","鸣","岭","羊","凭","串","塘","绘","酵","融","盆","锡","庙","筹","冻","辅","摄","袭","筋","拒","僚","旱","钾","鸟","漆","沈","眉","疏","添","棒","穗","硝","韩","逼","扭","侨","凉","挺","碗","栽","炒","杯","患","馏","劝","豪","辽","勃","鸿","旦","吏","拜","狗","埋","辊","掩","饮","搬","骂","辞","勾","扣","估","蒋","绒","雾","丈","朵","姆","拟","宇","辑","陕","雕","偿","蓄","崇","剪","倡","厅","咬","驶","薯","刷","斥","番","赋","奉","佛","浇","漫","曼","扇","钙","桃","扶","仔","返","俗","亏","腔","鞋","棱","覆","框","悄","叔","撞","骗","勘","旺","沸","孤","吐","孟","渠","屈","疾","妙","惜","仰","狠","胀","谐","抛","霉","桑","岗","嘛","衰","盗","渗","脏","赖","涌","甜","曹","阅","肌","哩","厉","烃","纬","毅","昨","伪","症","煮","叹","钉","搭","茎","笼","酷","偷","弓","锥","恒","杰","坑","鼻","翼","纶","叙","狱","逮","罐","络","棚","抑","膨","蔬","寺","骤","穆","冶","枯","册","尸","凸","绅","坯","牺","焰","轰","欣","晋","瘦","御","锭","锦","丧","旬","锻","垄","搜","扑","邀","亭","酯","迈","舒","脆","酶","闲","忧","酚","顽","羽","涨","卸","仗","陪","辟","惩","杭","姚","肚","捉","飘","漂","昆","欺","吾","郎","烷","汁","呵","饰","萧","雅","邮","迁","燕","撒","姻","赴","宴","烦","债","帐","斑","铃","旨","醇","董","饼","雏","姿","拌","傅","腹","妥","揉","贤","拆","歪","葡","胺","丢","浩","徽","昂","垫","挡","览","贪","慰","缴","汪","慌","冯","诺","姜","谊","凶","劣","诬","耀","昏","躺","盈","骑","乔","溪","丛","卢","抹","闷","咨","刮","驾","缆","悟","摘","铒","掷","颇","幻","柄","惠","惨","佳","仇","腊","窝","涤","剑","瞧","堡","泼","葱","罩","霍","捞","胎","苍","滨","俩","捅","湘","砍","霞","邵","萄","疯","淮","遂","熊","粪","烘","宿","档","戈","驳","嫂","裕","徙","箭","捐","肠","撑","晒","辨","殿","莲","摊","搅","酱","屏","疫","哀","蔡","堵","沫","皱","畅","叠","阁","莱","敲","辖","钩","痕","坝","巷","饿","祸","丘","玄","溜","曰","逻","彭","尝","卿","妨","艇","吞","韦","怨","矮","歇"],italian:["abaco","abbaglio","abbinato","abete","abisso","abolire","abrasivo","abrogato","accadere","accenno","accusato","acetone","achille","acido","acqua","acre","acrilico","acrobata","acuto","adagio","addebito","addome","adeguato","aderire","adipe","adottare","adulare","affabile","affetto","affisso","affranto","aforisma","afoso","africano","agave","agente","agevole","aggancio","agire","agitare","agonismo","agricolo","agrumeto","aguzzo","alabarda","alato","albatro","alberato","albo","albume","alce","alcolico","alettone","alfa","algebra","aliante","alibi","alimento","allagato","allegro","allievo","allodola","allusivo","almeno","alogeno","alpaca","alpestre","altalena","alterno","alticcio","altrove","alunno","alveolo","alzare","amalgama","amanita","amarena","ambito","ambrato","ameba","america","ametista","amico","ammasso","ammenda","ammirare","ammonito","amore","ampio","ampliare","amuleto","anacardo","anagrafe","analista","anarchia","anatra","anca","ancella","ancora","andare","andrea","anello","angelo","angolare","angusto","anima","annegare","annidato","anno","annuncio","anonimo","anticipo","anzi","apatico","apertura","apode","apparire","appetito","appoggio","approdo","appunto","aprile","arabica","arachide","aragosta","araldica","arancio","aratura","arazzo","arbitro","archivio","ardito","arenile","argento","argine","arguto","aria","armonia","arnese","arredato","arringa","arrosto","arsenico","arso","artefice","arzillo","asciutto","ascolto","asepsi","asettico","asfalto","asino","asola","aspirato","aspro","assaggio","asse","assoluto","assurdo","asta","astenuto","astice","astratto","atavico","ateismo","atomico","atono","attesa","attivare","attorno","attrito","attuale","ausilio","austria","autista","autonomo","autunno","avanzato","avere","avvenire","avviso","avvolgere","azione","azoto","azzimo","azzurro","babele","baccano","bacino","baco","badessa","badilata","bagnato","baita","balcone","baldo","balena","ballata","balzano","bambino","bandire","baraonda","barbaro","barca","baritono","barlume","barocco","basilico","basso","batosta","battuto","baule","bava","bavosa","becco","beffa","belgio","belva","benda","benevole","benigno","benzina","bere","berlina","beta","bibita","bici","bidone","bifido","biga","bilancia","bimbo","binocolo","biologo","bipede","bipolare","birbante","birra","biscotto","bisesto","bisnonno","bisonte","bisturi","bizzarro","blando","blatta","bollito","bonifico","bordo","bosco","botanico","bottino","bozzolo","braccio","bradipo","brama","branca","bravura","bretella","brevetto","brezza","briglia","brillante","brindare","broccolo","brodo","bronzina","brullo","bruno","bubbone","buca","budino","buffone","buio","bulbo","buono","burlone","burrasca","bussola","busta","cadetto","caduco","calamaro","calcolo","calesse","calibro","calmo","caloria","cambusa","camerata","camicia","cammino","camola","campale","canapa","candela","cane","canino","canotto","cantina","capace","capello","capitolo","capogiro","cappero","capra","capsula","carapace","carcassa","cardo","carisma","carovana","carretto","cartolina","casaccio","cascata","caserma","caso","cassone","castello","casuale","catasta","catena","catrame","cauto","cavillo","cedibile","cedrata","cefalo","celebre","cellulare","cena","cenone","centesimo","ceramica","cercare","certo","cerume","cervello","cesoia","cespo","ceto","chela","chiaro","chicca","chiedere","chimera","china","chirurgo","chitarra","ciao","ciclismo","cifrare","cigno","cilindro","ciottolo","circa","cirrosi","citrico","cittadino","ciuffo","civetta","civile","classico","clinica","cloro","cocco","codardo","codice","coerente","cognome","collare","colmato","colore","colposo","coltivato","colza","coma","cometa","commando","comodo","computer","comune","conciso","condurre","conferma","congelare","coniuge","connesso","conoscere","consumo","continuo","convegno","coperto","copione","coppia","copricapo","corazza","cordata","coricato","cornice","corolla","corpo","corredo","corsia","cortese","cosmico","costante","cottura","covato","cratere","cravatta","creato","credere","cremoso","crescita","creta","criceto","crinale","crisi","critico","croce","cronaca","crostata","cruciale","crusca","cucire","cuculo","cugino","cullato","cupola","curatore","cursore","curvo","cuscino","custode","dado","daino","dalmata","damerino","daniela","dannoso","danzare","datato","davanti","davvero","debutto","decennio","deciso","declino","decollo","decreto","dedicato","definito","deforme","degno","delegare","delfino","delirio","delta","demenza","denotato","dentro","deposito","derapata","derivare","deroga","descritto","deserto","desiderio","desumere","detersivo","devoto","diametro","dicembre","diedro","difeso","diffuso","digerire","digitale","diluvio","dinamico","dinnanzi","dipinto","diploma","dipolo","diradare","dire","dirotto","dirupo","disagio","discreto","disfare","disgelo","disposto","distanza","disumano","dito","divano","divelto","dividere","divorato","doblone","docente","doganale","dogma","dolce","domato","domenica","dominare","dondolo","dono","dormire","dote","dottore","dovuto","dozzina","drago","druido","dubbio","dubitare","ducale","duna","duomo","duplice","duraturo","ebano","eccesso","ecco","eclissi","economia","edera","edicola","edile","editoria","educare","egemonia","egli","egoismo","egregio","elaborato","elargire","elegante","elencato","eletto","elevare","elfico","elica","elmo","elsa","eluso","emanato","emblema","emesso","emiro","emotivo","emozione","empirico","emulo","endemico","enduro","energia","enfasi","enoteca","entrare","enzima","epatite","epilogo","episodio","epocale","eppure","equatore","erario","erba","erboso","erede","eremita","erigere","ermetico","eroe","erosivo","errante","esagono","esame","esanime","esaudire","esca","esempio","esercito","esibito","esigente","esistere","esito","esofago","esortato","esoso","espanso","espresso","essenza","esso","esteso","estimare","estonia","estroso","esultare","etilico","etnico","etrusco","etto","euclideo","europa","evaso","evidenza","evitato","evoluto","evviva","fabbrica","faccenda","fachiro","falco","famiglia","fanale","fanfara","fango","fantasma","fare","farfalla","farinoso","farmaco","fascia","fastoso","fasullo","faticare","fato","favoloso","febbre","fecola","fede","fegato","felpa","feltro","femmina","fendere","fenomeno","fermento","ferro","fertile","fessura","festivo","fetta","feudo","fiaba","fiducia","fifa","figurato","filo","finanza","finestra","finire","fiore","fiscale","fisico","fiume","flacone","flamenco","flebo","flemma","florido","fluente","fluoro","fobico","focaccia","focoso","foderato","foglio","folata","folclore","folgore","fondente","fonetico","fonia","fontana","forbito","forchetta","foresta","formica","fornaio","foro","fortezza","forzare","fosfato","fosso","fracasso","frana","frassino","fratello","freccetta","frenata","fresco","frigo","frollino","fronde","frugale","frutta","fucilata","fucsia","fuggente","fulmine","fulvo","fumante","fumetto","fumoso","fune","funzione","fuoco","furbo","furgone","furore","fuso","futile","gabbiano","gaffe","galateo","gallina","galoppo","gambero","gamma","garanzia","garbo","garofano","garzone","gasdotto","gasolio","gastrico","gatto","gaudio","gazebo","gazzella","geco","gelatina","gelso","gemello","gemmato","gene","genitore","gennaio","genotipo","gergo","ghepardo","ghiaccio","ghisa","giallo","gilda","ginepro","giocare","gioiello","giorno","giove","girato","girone","gittata","giudizio","giurato","giusto","globulo","glutine","gnomo","gobba","golf","gomito","gommone","gonfio","gonna","governo","gracile","grado","grafico","grammo","grande","grattare","gravoso","grazia","greca","gregge","grifone","grigio","grinza","grotta","gruppo","guadagno","guaio","guanto","guardare","gufo","guidare","ibernato","icona","identico","idillio","idolo","idra","idrico","idrogeno","igiene","ignaro","ignorato","ilare","illeso","illogico","illudere","imballo","imbevuto","imbocco","imbuto","immane","immerso","immolato","impacco","impeto","impiego","importo","impronta","inalare","inarcare","inattivo","incanto","incendio","inchino","incisivo","incluso","incontro","incrocio","incubo","indagine","india","indole","inedito","infatti","infilare","inflitto","ingaggio","ingegno","inglese","ingordo","ingrosso","innesco","inodore","inoltrare","inondato","insano","insetto","insieme","insonnia","insulina","intasato","intero","intonaco","intuito","inumidire","invalido","invece","invito","iperbole","ipnotico","ipotesi","ippica","iride","irlanda","ironico","irrigato","irrorare","isolato","isotopo","isterico","istituto","istrice","italia","iterare","labbro","labirinto","lacca","lacerato","lacrima","lacuna","laddove","lago","lampo","lancetta","lanterna","lardoso","larga","laringe","lastra","latenza","latino","lattuga","lavagna","lavoro","legale","leggero","lembo","lentezza","lenza","leone","lepre","lesivo","lessato","lesto","letterale","leva","levigato","libero","lido","lievito","lilla","limatura","limitare","limpido","lineare","lingua","liquido","lira","lirica","lisca","lite","litigio","livrea","locanda","lode","logica","lombare","londra","longevo","loquace","lorenzo","loto","lotteria","luce","lucidato","lumaca","luminoso","lungo","lupo","luppolo","lusinga","lusso","lutto","macabro","macchina","macero","macinato","madama","magico","maglia","magnete","magro","maiolica","malafede","malgrado","malinteso","malsano","malto","malumore","mana","mancia","mandorla","mangiare","manifesto","mannaro","manovra","mansarda","mantide","manubrio","mappa","maratona","marcire","maretta","marmo","marsupio","maschera","massaia","mastino","materasso","matricola","mattone","maturo","mazurca","meandro","meccanico","mecenate","medesimo","meditare","mega","melassa","melis","melodia","meninge","meno","mensola","mercurio","merenda","merlo","meschino","mese","messere","mestolo","metallo","metodo","mettere","miagolare","mica","micelio","michele","microbo","midollo","miele","migliore","milano","milite","mimosa","minerale","mini","minore","mirino","mirtillo","miscela","missiva","misto","misurare","mitezza","mitigare","mitra","mittente","mnemonico","modello","modifica","modulo","mogano","mogio","mole","molosso","monastero","monco","mondina","monetario","monile","monotono","monsone","montato","monviso","mora","mordere","morsicato","mostro","motivato","motosega","motto","movenza","movimento","mozzo","mucca","mucosa","muffa","mughetto","mugnaio","mulatto","mulinello","multiplo","mummia","munto","muovere","murale","musa","muscolo","musica","mutevole","muto","nababbo","nafta","nanometro","narciso","narice","narrato","nascere","nastrare","naturale","nautica","naviglio","nebulosa","necrosi","negativo","negozio","nemmeno","neofita","neretto","nervo","nessuno","nettuno","neutrale","neve","nevrotico","nicchia","ninfa","nitido","nobile","nocivo","nodo","nome","nomina","nordico","normale","norvegese","nostrano","notare","notizia","notturno","novella","nucleo","nulla","numero","nuovo","nutrire","nuvola","nuziale","oasi","obbedire","obbligo","obelisco","oblio","obolo","obsoleto","occasione","occhio","occidente","occorrere","occultare","ocra","oculato","odierno","odorare","offerta","offrire","offuscato","oggetto","oggi","ognuno","olandese","olfatto","oliato","oliva","ologramma","oltre","omaggio","ombelico","ombra","omega","omissione","ondoso","onere","onice","onnivoro","onorevole","onta","operato","opinione","opposto","oracolo","orafo","ordine","orecchino","orefice","orfano","organico","origine","orizzonte","orma","ormeggio","ornativo","orologio","orrendo","orribile","ortensia","ortica","orzata","orzo","osare","oscurare","osmosi","ospedale","ospite","ossa","ossidare","ostacolo","oste","otite","otre","ottagono","ottimo","ottobre","ovale","ovest","ovino","oviparo","ovocito","ovunque","ovviare","ozio","pacchetto","pace","pacifico","padella","padrone","paese","paga","pagina","palazzina","palesare","pallido","palo","palude","pandoro","pannello","paolo","paonazzo","paprica","parabola","parcella","parere","pargolo","pari","parlato","parola","partire","parvenza","parziale","passivo","pasticca","patacca","patologia","pattume","pavone","peccato","pedalare","pedonale","peggio","peloso","penare","pendice","penisola","pennuto","penombra","pensare","pentola","pepe","pepita","perbene","percorso","perdonato","perforare","pergamena","periodo","permesso","perno","perplesso","persuaso","pertugio","pervaso","pesatore","pesista","peso","pestifero","petalo","pettine","petulante","pezzo","piacere","pianta","piattino","piccino","picozza","piega","pietra","piffero","pigiama","pigolio","pigro","pila","pilifero","pillola","pilota","pimpante","pineta","pinna","pinolo","pioggia","piombo","piramide","piretico","pirite","pirolisi","pitone","pizzico","placebo","planare","plasma","platano","plenario","pochezza","poderoso","podismo","poesia","poggiare","polenta","poligono","pollice","polmonite","polpetta","polso","poltrona","polvere","pomice","pomodoro","ponte","popoloso","porfido","poroso","porpora","porre","portata","posa","positivo","possesso","postulato","potassio","potere","pranzo","prassi","pratica","precluso","predica","prefisso","pregiato","prelievo","premere","prenotare","preparato","presenza","pretesto","prevalso","prima","principe","privato","problema","procura","produrre","profumo","progetto","prolunga","promessa","pronome","proposta","proroga","proteso","prova","prudente","prugna","prurito","psiche","pubblico","pudica","pugilato","pugno","pulce","pulito","pulsante","puntare","pupazzo","pupilla","puro","quadro","qualcosa","quasi","querela","quota","raccolto","raddoppio","radicale","radunato","raffica","ragazzo","ragione","ragno","ramarro","ramingo","ramo","randagio","rantolare","rapato","rapina","rappreso","rasatura","raschiato","rasente","rassegna","rastrello","rata","ravveduto","reale","recepire","recinto","recluta","recondito","recupero","reddito","redimere","regalato","registro","regola","regresso","relazione","remare","remoto","renna","replica","reprimere","reputare","resa","residente","responso","restauro","rete","retina","retorica","rettifica","revocato","riassunto","ribadire","ribelle","ribrezzo","ricarica","ricco","ricevere","riciclato","ricordo","ricreduto","ridicolo","ridurre","rifasare","riflesso","riforma","rifugio","rigare","rigettato","righello","rilassato","rilevato","rimanere","rimbalzo","rimedio","rimorchio","rinascita","rincaro","rinforzo","rinnovo","rinomato","rinsavito","rintocco","rinuncia","rinvenire","riparato","ripetuto","ripieno","riportare","ripresa","ripulire","risata","rischio","riserva","risibile","riso","rispetto","ristoro","risultato","risvolto","ritardo","ritegno","ritmico","ritrovo","riunione","riva","riverso","rivincita","rivolto","rizoma","roba","robotico","robusto","roccia","roco","rodaggio","rodere","roditore","rogito","rollio","romantico","rompere","ronzio","rosolare","rospo","rotante","rotondo","rotula","rovescio","rubizzo","rubrica","ruga","rullino","rumine","rumoroso","ruolo","rupe","russare","rustico","sabato","sabbiare","sabotato","sagoma","salasso","saldatura","salgemma","salivare","salmone","salone","saltare","saluto","salvo","sapere","sapido","saporito","saraceno","sarcasmo","sarto","sassoso","satellite","satira","satollo","saturno","savana","savio","saziato","sbadiglio","sbalzo","sbancato","sbarra","sbattere","sbavare","sbendare","sbirciare","sbloccato","sbocciato","sbrinare","sbruffone","sbuffare","scabroso","scadenza","scala","scambiare","scandalo","scapola","scarso","scatenare","scavato","scelto","scenico","scettro","scheda","schiena","sciarpa","scienza","scindere","scippo","sciroppo","scivolo","sclerare","scodella","scolpito","scomparto","sconforto","scoprire","scorta","scossone","scozzese","scriba","scrollare","scrutinio","scuderia","scultore","scuola","scuro","scusare","sdebitare","sdoganare","seccatura","secondo","sedano","seggiola","segnalato","segregato","seguito","selciato","selettivo","sella","selvaggio","semaforo","sembrare","seme","seminato","sempre","senso","sentire","sepolto","sequenza","serata","serbato","sereno","serio","serpente","serraglio","servire","sestina","setola","settimana","sfacelo","sfaldare","sfamato","sfarzoso","sfaticato","sfera","sfida","sfilato","sfinge","sfocato","sfoderare","sfogo","sfoltire","sforzato","sfratto","sfruttato","sfuggito","sfumare","sfuso","sgabello","sgarbato","sgonfiare","sgorbio","sgrassato","sguardo","sibilo","siccome","sierra","sigla","signore","silenzio","sillaba","simbolo","simpatico","simulato","sinfonia","singolo","sinistro","sino","sintesi","sinusoide","sipario","sisma","sistole","situato","slitta","slogatura","sloveno","smarrito","smemorato","smentito","smeraldo","smilzo","smontare","smottato","smussato","snellire","snervato","snodo","sobbalzo","sobrio","soccorso","sociale","sodale","soffitto","sogno","soldato","solenne","solido","sollazzo","solo","solubile","solvente","somatico","somma","sonda","sonetto","sonnifero","sopire","soppeso","sopra","sorgere","sorpasso","sorriso","sorso","sorteggio","sorvolato","sospiro","sosta","sottile","spada","spalla","spargere","spatola","spavento","spazzola","specie","spedire","spegnere","spelatura","speranza","spessore","spettrale","spezzato","spia","spigoloso","spillato","spinoso","spirale","splendido","sportivo","sposo","spranga","sprecare","spronato","spruzzo","spuntino","squillo","sradicare","srotolato","stabile","stacco","staffa","stagnare","stampato","stantio","starnuto","stasera","statuto","stelo","steppa","sterzo","stiletto","stima","stirpe","stivale","stizzoso","stonato","storico","strappo","stregato","stridulo","strozzare","strutto","stuccare","stufo","stupendo","subentro","succoso","sudore","suggerito","sugo","sultano","suonare","superbo","supporto","surgelato","surrogato","sussurro","sutura","svagare","svedese","sveglio","svelare","svenuto","svezia","sviluppo","svista","svizzera","svolta","svuotare","tabacco","tabulato","tacciare","taciturno","tale","talismano","tampone","tannino","tara","tardivo","targato","tariffa","tarpare","tartaruga","tasto","tattico","taverna","tavolata","tazza","teca","tecnico","telefono","temerario","tempo","temuto","tendone","tenero","tensione","tentacolo","teorema","terme","terrazzo","terzetto","tesi","tesserato","testato","tetro","tettoia","tifare","tigella","timbro","tinto","tipico","tipografo","tiraggio","tiro","titanio","titolo","titubante","tizio","tizzone","toccare","tollerare","tolto","tombola","tomo","tonfo","tonsilla","topazio","topologia","toppa","torba","tornare","torrone","tortora","toscano","tossire","tostatura","totano","trabocco","trachea","trafila","tragedia","tralcio","tramonto","transito","trapano","trarre","trasloco","trattato","trave","treccia","tremolio","trespolo","tributo","tricheco","trifoglio","trillo","trincea","trio","tristezza","triturato","trivella","tromba","trono","troppo","trottola","trovare","truccato","tubatura","tuffato","tulipano","tumulto","tunisia","turbare","turchino","tuta","tutela","ubicato","uccello","uccisore","udire","uditivo","uffa","ufficio","uguale","ulisse","ultimato","umano","umile","umorismo","uncinetto","ungere","ungherese","unicorno","unificato","unisono","unitario","unte","uovo","upupa","uragano","urgenza","urlo","usanza","usato","uscito","usignolo","usuraio","utensile","utilizzo","utopia","vacante","vaccinato","vagabondo","vagliato","valanga","valgo","valico","valletta","valoroso","valutare","valvola","vampata","vangare","vanitoso","vano","vantaggio","vanvera","vapore","varano","varcato","variante","vasca","vedetta","vedova","veduto","vegetale","veicolo","velcro","velina","velluto","veloce","venato","vendemmia","vento","verace","verbale","vergogna","verifica","vero","verruca","verticale","vescica","vessillo","vestale","veterano","vetrina","vetusto","viandante","vibrante","vicenda","vichingo","vicinanza","vidimare","vigilia","vigneto","vigore","vile","villano","vimini","vincitore","viola","vipera","virgola","virologo","virulento","viscoso","visione","vispo","vissuto","visura","vita","vitello","vittima","vivanda","vivido","viziare","voce","voga","volatile","volere","volpe","voragine","vulcano","zampogna","zanna","zappato","zattera","zavorra","zefiro","zelante","zelo","zenzero","zerbino","zibetto","zinco","zircone","zitto","zolla","zotico","zucchero","zufolo","zulu","zuppa"],japanese:["あいこくしん","あいさつ","あいだ","あおぞら","あかちゃん","あきる","あけがた","あける","あこがれる","あさい","あさひ","あしあと","あじわう","あずかる","あずき","あそぶ","あたえる","あたためる","あたりまえ","あたる","あつい","あつかう","あっしゅく","あつまり","あつめる","あてな","あてはまる","あひる","あぶら","あぶる","あふれる","あまい","あまど","あまやかす","あまり","あみもの","あめりか","あやまる","あゆむ","あらいぐま","あらし","あらすじ","あらためる","あらゆる","あらわす","ありがとう","あわせる","あわてる","あんい","あんがい","あんこ","あんぜん","あんてい","あんない","あんまり","いいだす","いおん","いがい","いがく","いきおい","いきなり","いきもの","いきる","いくじ","いくぶん","いけばな","いけん","いこう","いこく","いこつ","いさましい","いさん","いしき","いじゅう","いじょう","いじわる","いずみ","いずれ","いせい","いせえび","いせかい","いせき","いぜん","いそうろう","いそがしい","いだい","いだく","いたずら","いたみ","いたりあ","いちおう","いちじ","いちど","いちば","いちぶ","いちりゅう","いつか","いっしゅん","いっせい","いっそう","いったん","いっち","いってい","いっぽう","いてざ","いてん","いどう","いとこ","いない","いなか","いねむり","いのち","いのる","いはつ","いばる","いはん","いびき","いひん","いふく","いへん","いほう","いみん","いもうと","いもたれ","いもり","いやがる","いやす","いよかん","いよく","いらい","いらすと","いりぐち","いりょう","いれい","いれもの","いれる","いろえんぴつ","いわい","いわう","いわかん","いわば","いわゆる","いんげんまめ","いんさつ","いんしょう","いんよう","うえき","うえる","うおざ","うがい","うかぶ","うかべる","うきわ","うくらいな","うくれれ","うけたまわる","うけつけ","うけとる","うけもつ","うける","うごかす","うごく","うこん","うさぎ","うしなう","うしろがみ","うすい","うすぎ","うすぐらい","うすめる","うせつ","うちあわせ","うちがわ","うちき","うちゅう","うっかり","うつくしい","うったえる","うつる","うどん","うなぎ","うなじ","うなずく","うなる","うねる","うのう","うぶげ","うぶごえ","うまれる","うめる","うもう","うやまう","うよく","うらがえす","うらぐち","うらない","うりあげ","うりきれ","うるさい","うれしい","うれゆき","うれる","うろこ","うわき","うわさ","うんこう","うんちん","うんてん","うんどう","えいえん","えいが","えいきょう","えいご","えいせい","えいぶん","えいよう","えいわ","えおり","えがお","えがく","えきたい","えくせる","えしゃく","えすて","えつらん","えのぐ","えほうまき","えほん","えまき","えもじ","えもの","えらい","えらぶ","えりあ","えんえん","えんかい","えんぎ","えんげき","えんしゅう","えんぜつ","えんそく","えんちょう","えんとつ","おいかける","おいこす","おいしい","おいつく","おうえん","おうさま","おうじ","おうせつ","おうたい","おうふく","おうべい","おうよう","おえる","おおい","おおう","おおどおり","おおや","おおよそ","おかえり","おかず","おがむ","おかわり","おぎなう","おきる","おくさま","おくじょう","おくりがな","おくる","おくれる","おこす","おこなう","おこる","おさえる","おさない","おさめる","おしいれ","おしえる","おじぎ","おじさん","おしゃれ","おそらく","おそわる","おたがい","おたく","おだやか","おちつく","おっと","おつり","おでかけ","おとしもの","おとなしい","おどり","おどろかす","おばさん","おまいり","おめでとう","おもいで","おもう","おもたい","おもちゃ","おやつ","おやゆび","およぼす","おらんだ","おろす","おんがく","おんけい","おんしゃ","おんせん","おんだん","おんちゅう","おんどけい","かあつ","かいが","がいき","がいけん","がいこう","かいさつ","かいしゃ","かいすいよく","かいぜん","かいぞうど","かいつう","かいてん","かいとう","かいふく","がいへき","かいほう","かいよう","がいらい","かいわ","かえる","かおり","かかえる","かがく","かがし","かがみ","かくご","かくとく","かざる","がぞう","かたい","かたち","がちょう","がっきゅう","がっこう","がっさん","がっしょう","かなざわし","かのう","がはく","かぶか","かほう","かほご","かまう","かまぼこ","かめれおん","かゆい","かようび","からい","かるい","かろう","かわく","かわら","がんか","かんけい","かんこう","かんしゃ","かんそう","かんたん","かんち","がんばる","きあい","きあつ","きいろ","ぎいん","きうい","きうん","きえる","きおう","きおく","きおち","きおん","きかい","きかく","きかんしゃ","ききて","きくばり","きくらげ","きけんせい","きこう","きこえる","きこく","きさい","きさく","きさま","きさらぎ","ぎじかがく","ぎしき","ぎじたいけん","ぎじにってい","ぎじゅつしゃ","きすう","きせい","きせき","きせつ","きそう","きぞく","きぞん","きたえる","きちょう","きつえん","ぎっちり","きつつき","きつね","きてい","きどう","きどく","きない","きなが","きなこ","きぬごし","きねん","きのう","きのした","きはく","きびしい","きひん","きふく","きぶん","きぼう","きほん","きまる","きみつ","きむずかしい","きめる","きもだめし","きもち","きもの","きゃく","きやく","ぎゅうにく","きよう","きょうりゅう","きらい","きらく","きりん","きれい","きれつ","きろく","ぎろん","きわめる","ぎんいろ","きんかくじ","きんじょ","きんようび","ぐあい","くいず","くうかん","くうき","くうぐん","くうこう","ぐうせい","くうそう","ぐうたら","くうふく","くうぼ","くかん","くきょう","くげん","ぐこう","くさい","くさき","くさばな","くさる","くしゃみ","くしょう","くすのき","くすりゆび","くせげ","くせん","ぐたいてき","くださる","くたびれる","くちこみ","くちさき","くつした","ぐっすり","くつろぐ","くとうてん","くどく","くなん","くねくね","くのう","くふう","くみあわせ","くみたてる","くめる","くやくしょ","くらす","くらべる","くるま","くれる","くろう","くわしい","ぐんかん","ぐんしょく","ぐんたい","ぐんて","けあな","けいかく","けいけん","けいこ","けいさつ","げいじゅつ","けいたい","げいのうじん","けいれき","けいろ","けおとす","けおりもの","げきか","げきげん","げきだん","げきちん","げきとつ","げきは","げきやく","げこう","げこくじょう","げざい","けさき","げざん","けしき","けしごむ","けしょう","げすと","けたば","けちゃっぷ","けちらす","けつあつ","けつい","けつえき","けっこん","けつじょ","けっせき","けってい","けつまつ","げつようび","げつれい","けつろん","げどく","けとばす","けとる","けなげ","けなす","けなみ","けぬき","げねつ","けねん","けはい","げひん","けぶかい","げぼく","けまり","けみかる","けむし","けむり","けもの","けらい","けろけろ","けわしい","けんい","けんえつ","けんお","けんか","げんき","けんげん","けんこう","けんさく","けんしゅう","けんすう","げんそう","けんちく","けんてい","けんとう","けんない","けんにん","げんぶつ","けんま","けんみん","けんめい","けんらん","けんり","こあくま","こいぬ","こいびと","ごうい","こうえん","こうおん","こうかん","ごうきゅう","ごうけい","こうこう","こうさい","こうじ","こうすい","ごうせい","こうそく","こうたい","こうちゃ","こうつう","こうてい","こうどう","こうない","こうはい","ごうほう","ごうまん","こうもく","こうりつ","こえる","こおり","ごかい","ごがつ","ごかん","こくご","こくさい","こくとう","こくない","こくはく","こぐま","こけい","こける","ここのか","こころ","こさめ","こしつ","こすう","こせい","こせき","こぜん","こそだて","こたい","こたえる","こたつ","こちょう","こっか","こつこつ","こつばん","こつぶ","こてい","こてん","ことがら","ことし","ことば","ことり","こなごな","こねこね","このまま","このみ","このよ","ごはん","こひつじ","こふう","こふん","こぼれる","ごまあぶら","こまかい","ごますり","こまつな","こまる","こむぎこ","こもじ","こもち","こもの","こもん","こやく","こやま","こゆう","こゆび","こよい","こよう","こりる","これくしょん","ころっけ","こわもて","こわれる","こんいん","こんかい","こんき","こんしゅう","こんすい","こんだて","こんとん","こんなん","こんびに","こんぽん","こんまけ","こんや","こんれい","こんわく","ざいえき","さいかい","さいきん","ざいげん","ざいこ","さいしょ","さいせい","ざいたく","ざいちゅう","さいてき","ざいりょう","さうな","さかいし","さがす","さかな","さかみち","さがる","さぎょう","さくし","さくひん","さくら","さこく","さこつ","さずかる","ざせき","さたん","さつえい","ざつおん","ざっか","ざつがく","さっきょく","ざっし","さつじん","ざっそう","さつたば","さつまいも","さてい","さといも","さとう","さとおや","さとし","さとる","さのう","さばく","さびしい","さべつ","さほう","さほど","さます","さみしい","さみだれ","さむけ","さめる","さやえんどう","さゆう","さよう","さよく","さらだ","ざるそば","さわやか","さわる","さんいん","さんか","さんきゃく","さんこう","さんさい","ざんしょ","さんすう","さんせい","さんそ","さんち","さんま","さんみ","さんらん","しあい","しあげ","しあさって","しあわせ","しいく","しいん","しうち","しえい","しおけ","しかい","しかく","じかん","しごと","しすう","じだい","したうけ","したぎ","したて","したみ","しちょう","しちりん","しっかり","しつじ","しつもん","してい","してき","してつ","じてん","じどう","しなぎれ","しなもの","しなん","しねま","しねん","しのぐ","しのぶ","しはい","しばかり","しはつ","しはらい","しはん","しひょう","しふく","じぶん","しへい","しほう","しほん","しまう","しまる","しみん","しむける","じむしょ","しめい","しめる","しもん","しゃいん","しゃうん","しゃおん","じゃがいも","しやくしょ","しゃくほう","しゃけん","しゃこ","しゃざい","しゃしん","しゃせん","しゃそう","しゃたい","しゃちょう","しゃっきん","じゃま","しゃりん","しゃれい","じゆう","じゅうしょ","しゅくはく","じゅしん","しゅっせき","しゅみ","しゅらば","じゅんばん","しょうかい","しょくたく","しょっけん","しょどう","しょもつ","しらせる","しらべる","しんか","しんこう","じんじゃ","しんせいじ","しんちく","しんりん","すあげ","すあし","すあな","ずあん","すいえい","すいか","すいとう","ずいぶん","すいようび","すうがく","すうじつ","すうせん","すおどり","すきま","すくう","すくない","すける","すごい","すこし","ずさん","すずしい","すすむ","すすめる","すっかり","ずっしり","ずっと","すてき","すてる","すねる","すのこ","すはだ","すばらしい","ずひょう","ずぶぬれ","すぶり","すふれ","すべて","すべる","ずほう","すぼん","すまい","すめし","すもう","すやき","すらすら","するめ","すれちがう","すろっと","すわる","すんぜん","すんぽう","せあぶら","せいかつ","せいげん","せいじ","せいよう","せおう","せかいかん","せきにん","せきむ","せきゆ","せきらんうん","せけん","せこう","せすじ","せたい","せたけ","せっかく","せっきゃく","ぜっく","せっけん","せっこつ","せっさたくま","せつぞく","せつだん","せつでん","せっぱん","せつび","せつぶん","せつめい","せつりつ","せなか","せのび","せはば","せびろ","せぼね","せまい","せまる","せめる","せもたれ","せりふ","ぜんあく","せんい","せんえい","せんか","せんきょ","せんく","せんげん","ぜんご","せんさい","せんしゅ","せんすい","せんせい","せんぞ","せんたく","せんちょう","せんてい","せんとう","せんぬき","せんねん","せんぱい","ぜんぶ","ぜんぽう","せんむ","せんめんじょ","せんもん","せんやく","せんゆう","せんよう","ぜんら","ぜんりゃく","せんれい","せんろ","そあく","そいとげる","そいね","そうがんきょう","そうき","そうご","そうしん","そうだん","そうなん","そうび","そうめん","そうり","そえもの","そえん","そがい","そげき","そこう","そこそこ","そざい","そしな","そせい","そせん","そそぐ","そだてる","そつう","そつえん","そっかん","そつぎょう","そっけつ","そっこう","そっせん","そっと","そとがわ","そとづら","そなえる","そなた","そふぼ","そぼく","そぼろ","そまつ","そまる","そむく","そむりえ","そめる","そもそも","そよかぜ","そらまめ","そろう","そんかい","そんけい","そんざい","そんしつ","そんぞく","そんちょう","ぞんび","ぞんぶん","そんみん","たあい","たいいん","たいうん","たいえき","たいおう","だいがく","たいき","たいぐう","たいけん","たいこ","たいざい","だいじょうぶ","だいすき","たいせつ","たいそう","だいたい","たいちょう","たいてい","だいどころ","たいない","たいねつ","たいのう","たいはん","だいひょう","たいふう","たいへん","たいほ","たいまつばな","たいみんぐ","たいむ","たいめん","たいやき","たいよう","たいら","たいりょく","たいる","たいわん","たうえ","たえる","たおす","たおる","たおれる","たかい","たかね","たきび","たくさん","たこく","たこやき","たさい","たしざん","だじゃれ","たすける","たずさわる","たそがれ","たたかう","たたく","ただしい","たたみ","たちばな","だっかい","だっきゃく","だっこ","だっしゅつ","だったい","たてる","たとえる","たなばた","たにん","たぬき","たのしみ","たはつ","たぶん","たべる","たぼう","たまご","たまる","だむる","ためいき","ためす","ためる","たもつ","たやすい","たよる","たらす","たりきほんがん","たりょう","たりる","たると","たれる","たれんと","たろっと","たわむれる","だんあつ","たんい","たんおん","たんか","たんき","たんけん","たんご","たんさん","たんじょうび","だんせい","たんそく","たんたい","だんち","たんてい","たんとう","だんな","たんにん","だんねつ","たんのう","たんぴん","だんぼう","たんまつ","たんめい","だんれつ","だんろ","だんわ","ちあい","ちあん","ちいき","ちいさい","ちえん","ちかい","ちから","ちきゅう","ちきん","ちけいず","ちけん","ちこく","ちさい","ちしき","ちしりょう","ちせい","ちそう","ちたい","ちたん","ちちおや","ちつじょ","ちてき","ちてん","ちぬき","ちぬり","ちのう","ちひょう","ちへいせん","ちほう","ちまた","ちみつ","ちみどろ","ちめいど","ちゃんこなべ","ちゅうい","ちゆりょく","ちょうし","ちょさくけん","ちらし","ちらみ","ちりがみ","ちりょう","ちるど","ちわわ","ちんたい","ちんもく","ついか","ついたち","つうか","つうじょう","つうはん","つうわ","つかう","つかれる","つくね","つくる","つけね","つける","つごう","つたえる","つづく","つつじ","つつむ","つとめる","つながる","つなみ","つねづね","つのる","つぶす","つまらない","つまる","つみき","つめたい","つもり","つもる","つよい","つるぼ","つるみく","つわもの","つわり","てあし","てあて","てあみ","ていおん","ていか","ていき","ていけい","ていこく","ていさつ","ていし","ていせい","ていたい","ていど","ていねい","ていひょう","ていへん","ていぼう","てうち","ておくれ","てきとう","てくび","でこぼこ","てさぎょう","てさげ","てすり","てそう","てちがい","てちょう","てつがく","てつづき","でっぱ","てつぼう","てつや","でぬかえ","てぬき","てぬぐい","てのひら","てはい","てぶくろ","てふだ","てほどき","てほん","てまえ","てまきずし","てみじか","てみやげ","てらす","てれび","てわけ","てわたし","でんあつ","てんいん","てんかい","てんき","てんぐ","てんけん","てんごく","てんさい","てんし","てんすう","でんち","てんてき","てんとう","てんない","てんぷら","てんぼうだい","てんめつ","てんらんかい","でんりょく","でんわ","どあい","といれ","どうかん","とうきゅう","どうぐ","とうし","とうむぎ","とおい","とおか","とおく","とおす","とおる","とかい","とかす","ときおり","ときどき","とくい","とくしゅう","とくてん","とくに","とくべつ","とけい","とける","とこや","とさか","としょかん","とそう","とたん","とちゅう","とっきゅう","とっくん","とつぜん","とつにゅう","とどける","ととのえる","とない","となえる","となり","とのさま","とばす","どぶがわ","とほう","とまる","とめる","ともだち","ともる","どようび","とらえる","とんかつ","どんぶり","ないかく","ないこう","ないしょ","ないす","ないせん","ないそう","なおす","ながい","なくす","なげる","なこうど","なさけ","なたでここ","なっとう","なつやすみ","ななおし","なにごと","なにもの","なにわ","なのか","なふだ","なまいき","なまえ","なまみ","なみだ","なめらか","なめる","なやむ","ならう","ならび","ならぶ","なれる","なわとび","なわばり","にあう","にいがた","にうけ","におい","にかい","にがて","にきび","にくしみ","にくまん","にげる","にさんかたんそ","にしき","にせもの","にちじょう","にちようび","にっか","にっき","にっけい","にっこう","にっさん","にっしょく","にっすう","にっせき","にってい","になう","にほん","にまめ","にもつ","にやり","にゅういん","にりんしゃ","にわとり","にんい","にんか","にんき","にんげん","にんしき","にんずう","にんそう","にんたい","にんち","にんてい","にんにく","にんぷ","にんまり","にんむ","にんめい","にんよう","ぬいくぎ","ぬかす","ぬぐいとる","ぬぐう","ぬくもり","ぬすむ","ぬまえび","ぬめり","ぬらす","ぬんちゃく","ねあげ","ねいき","ねいる","ねいろ","ねぐせ","ねくたい","ねくら","ねこぜ","ねこむ","ねさげ","ねすごす","ねそべる","ねだん","ねつい","ねっしん","ねつぞう","ねったいぎょ","ねぶそく","ねふだ","ねぼう","ねほりはほり","ねまき","ねまわし","ねみみ","ねむい","ねむたい","ねもと","ねらう","ねわざ","ねんいり","ねんおし","ねんかん","ねんきん","ねんぐ","ねんざ","ねんし","ねんちゃく","ねんど","ねんぴ","ねんぶつ","ねんまつ","ねんりょう","ねんれい","のいず","のおづま","のがす","のきなみ","のこぎり","のこす","のこる","のせる","のぞく","のぞむ","のたまう","のちほど","のっく","のばす","のはら","のべる","のぼる","のみもの","のやま","のらいぬ","のらねこ","のりもの","のりゆき","のれん","のんき","ばあい","はあく","ばあさん","ばいか","ばいく","はいけん","はいご","はいしん","はいすい","はいせん","はいそう","はいち","ばいばい","はいれつ","はえる","はおる","はかい","ばかり","はかる","はくしゅ","はけん","はこぶ","はさみ","はさん","はしご","ばしょ","はしる","はせる","ぱそこん","はそん","はたん","はちみつ","はつおん","はっかく","はづき","はっきり","はっくつ","はっけん","はっこう","はっさん","はっしん","はったつ","はっちゅう","はってん","はっぴょう","はっぽう","はなす","はなび","はにかむ","はぶらし","はみがき","はむかう","はめつ","はやい","はやし","はらう","はろうぃん","はわい","はんい","はんえい","はんおん","はんかく","はんきょう","ばんぐみ","はんこ","はんしゃ","はんすう","はんだん","ぱんち","ぱんつ","はんてい","はんとし","はんのう","はんぱ","はんぶん","はんぺん","はんぼうき","はんめい","はんらん","はんろん","ひいき","ひうん","ひえる","ひかく","ひかり","ひかる","ひかん","ひくい","ひけつ","ひこうき","ひこく","ひさい","ひさしぶり","ひさん","びじゅつかん","ひしょ","ひそか","ひそむ","ひたむき","ひだり","ひたる","ひつぎ","ひっこし","ひっし","ひつじゅひん","ひっす","ひつぜん","ぴったり","ぴっちり","ひつよう","ひてい","ひとごみ","ひなまつり","ひなん","ひねる","ひはん","ひびく","ひひょう","ひほう","ひまわり","ひまん","ひみつ","ひめい","ひめじし","ひやけ","ひやす","ひよう","びょうき","ひらがな","ひらく","ひりつ","ひりょう","ひるま","ひるやすみ","ひれい","ひろい","ひろう","ひろき","ひろゆき","ひんかく","ひんけつ","ひんこん","ひんしゅ","ひんそう","ぴんち","ひんぱん","びんぼう","ふあん","ふいうち","ふうけい","ふうせん","ぷうたろう","ふうとう","ふうふ","ふえる","ふおん","ふかい","ふきん","ふくざつ","ふくぶくろ","ふこう","ふさい","ふしぎ","ふじみ","ふすま","ふせい","ふせぐ","ふそく","ぶたにく","ふたん","ふちょう","ふつう","ふつか","ふっかつ","ふっき","ふっこく","ぶどう","ふとる","ふとん","ふのう","ふはい","ふひょう","ふへん","ふまん","ふみん","ふめつ","ふめん","ふよう","ふりこ","ふりる","ふるい","ふんいき","ぶんがく","ぶんぐ","ふんしつ","ぶんせき","ふんそう","ぶんぽう","へいあん","へいおん","へいがい","へいき","へいげん","へいこう","へいさ","へいしゃ","へいせつ","へいそ","へいたく","へいてん","へいねつ","へいわ","へきが","へこむ","べにいろ","べにしょうが","へらす","へんかん","べんきょう","べんごし","へんさい","へんたい","べんり","ほあん","ほいく","ぼうぎょ","ほうこく","ほうそう","ほうほう","ほうもん","ほうりつ","ほえる","ほおん","ほかん","ほきょう","ぼきん","ほくろ","ほけつ","ほけん","ほこう","ほこる","ほしい","ほしつ","ほしゅ","ほしょう","ほせい","ほそい","ほそく","ほたて","ほたる","ぽちぶくろ","ほっきょく","ほっさ","ほったん","ほとんど","ほめる","ほんい","ほんき","ほんけ","ほんしつ","ほんやく","まいにち","まかい","まかせる","まがる","まける","まこと","まさつ","まじめ","ますく","まぜる","まつり","まとめ","まなぶ","まぬけ","まねく","まほう","まもる","まゆげ","まよう","まろやか","まわす","まわり","まわる","まんが","まんきつ","まんぞく","まんなか","みいら","みうち","みえる","みがく","みかた","みかん","みけん","みこん","みじかい","みすい","みすえる","みせる","みっか","みつかる","みつける","みてい","みとめる","みなと","みなみかさい","みねらる","みのう","みのがす","みほん","みもと","みやげ","みらい","みりょく","みわく","みんか","みんぞく","むいか","むえき","むえん","むかい","むかう","むかえ","むかし","むぎちゃ","むける","むげん","むさぼる","むしあつい","むしば","むじゅん","むしろ","むすう","むすこ","むすぶ","むすめ","むせる","むせん","むちゅう","むなしい","むのう","むやみ","むよう","むらさき","むりょう","むろん","めいあん","めいうん","めいえん","めいかく","めいきょく","めいさい","めいし","めいそう","めいぶつ","めいれい","めいわく","めぐまれる","めざす","めした","めずらしい","めだつ","めまい","めやす","めんきょ","めんせき","めんどう","もうしあげる","もうどうけん","もえる","もくし","もくてき","もくようび","もちろん","もどる","もらう","もんく","もんだい","やおや","やける","やさい","やさしい","やすい","やすたろう","やすみ","やせる","やそう","やたい","やちん","やっと","やっぱり","やぶる","やめる","ややこしい","やよい","やわらかい","ゆうき","ゆうびんきょく","ゆうべ","ゆうめい","ゆけつ","ゆしゅつ","ゆせん","ゆそう","ゆたか","ゆちゃく","ゆでる","ゆにゅう","ゆびわ","ゆらい","ゆれる","ようい","ようか","ようきゅう","ようじ","ようす","ようちえん","よかぜ","よかん","よきん","よくせい","よくぼう","よけい","よごれる","よさん","よしゅう","よそう","よそく","よっか","よてい","よどがわく","よねつ","よやく","よゆう","よろこぶ","よろしい","らいう","らくがき","らくご","らくさつ","らくだ","らしんばん","らせん","らぞく","らたい","らっか","られつ","りえき","りかい","りきさく","りきせつ","りくぐん","りくつ","りけん","りこう","りせい","りそう","りそく","りてん","りねん","りゆう","りゅうがく","りよう","りょうり","りょかん","りょくちゃ","りょこう","りりく","りれき","りろん","りんご","るいけい","るいさい","るいじ","るいせき","るすばん","るりがわら","れいかん","れいぎ","れいせい","れいぞうこ","れいとう","れいぼう","れきし","れきだい","れんあい","れんけい","れんこん","れんさい","れんしゅう","れんぞく","れんらく","ろうか","ろうご","ろうじん","ろうそく","ろくが","ろこつ","ろじうら","ろしゅつ","ろせん","ろてん","ろめん","ろれつ","ろんぎ","ろんぱ","ろんぶん","ろんり","わかす","わかめ","わかやま","わかれる","わしつ","わじまし","わすれもの","わらう","われる"],spanish:["ábaco","abdomen","abeja","abierto","abogado","abono","aborto","abrazo","abrir","abuelo","abuso","acabar","academia","acceso","acción","aceite","acelga","acento","aceptar","ácido","aclarar","acné","acoger","acoso","activo","acto","actriz","actuar","acudir","acuerdo","acusar","adicto","admitir","adoptar","adorno","aduana","adulto","aéreo","afectar","afición","afinar","afirmar","ágil","agitar","agonía","agosto","agotar","agregar","agrio","agua","agudo","águila","aguja","ahogo","ahorro","aire","aislar","ajedrez","ajeno","ajuste","alacrán","alambre","alarma","alba","álbum","alcalde","aldea","alegre","alejar","alerta","aleta","alfiler","alga","algodón","aliado","aliento","alivio","alma","almeja","almíbar","altar","alteza","altivo","alto","altura","alumno","alzar","amable","amante","amapola","amargo","amasar","ámbar","ámbito","ameno","amigo","amistad","amor","amparo","amplio","ancho","anciano","ancla","andar","andén","anemia","ángulo","anillo","ánimo","anís","anotar","antena","antiguo","antojo","anual","anular","anuncio","añadir","añejo","año","apagar","aparato","apetito","apio","aplicar","apodo","aporte","apoyo","aprender","aprobar","apuesta","apuro","arado","araña","arar","árbitro","árbol","arbusto","archivo","arco","arder","ardilla","arduo","área","árido","aries","armonía","arnés","aroma","arpa","arpón","arreglo","arroz","arruga","arte","artista","asa","asado","asalto","ascenso","asegurar","aseo","asesor","asiento","asilo","asistir","asno","asombro","áspero","astilla","astro","astuto","asumir","asunto","atajo","ataque","atar","atento","ateo","ático","atleta","átomo","atraer","atroz","atún","audaz","audio","auge","aula","aumento","ausente","autor","aval","avance","avaro","ave","avellana","avena","avestruz","avión","aviso","ayer","ayuda","ayuno","azafrán","azar","azote","azúcar","azufre","azul","baba","babor","bache","bahía","baile","bajar","balanza","balcón","balde","bambú","banco","banda","baño","barba","barco","barniz","barro","báscula","bastón","basura","batalla","batería","batir","batuta","baúl","bazar","bebé","bebida","bello","besar","beso","bestia","bicho","bien","bingo","blanco","bloque","blusa","boa","bobina","bobo","boca","bocina","boda","bodega","boina","bola","bolero","bolsa","bomba","bondad","bonito","bono","bonsái","borde","borrar","bosque","bote","botín","bóveda","bozal","bravo","brazo","brecha","breve","brillo","brinco","brisa","broca","broma","bronce","brote","bruja","brusco","bruto","buceo","bucle","bueno","buey","bufanda","bufón","búho","buitre","bulto","burbuja","burla","burro","buscar","butaca","buzón","caballo","cabeza","cabina","cabra","cacao","cadáver","cadena","caer","café","caída","caimán","caja","cajón","cal","calamar","calcio","caldo","calidad","calle","calma","calor","calvo","cama","cambio","camello","camino","campo","cáncer","candil","canela","canguro","canica","canto","caña","cañón","caoba","caos","capaz","capitán","capote","captar","capucha","cara","carbón","cárcel","careta","carga","cariño","carne","carpeta","carro","carta","casa","casco","casero","caspa","castor","catorce","catre","caudal","causa","cazo","cebolla","ceder","cedro","celda","célebre","celoso","célula","cemento","ceniza","centro","cerca","cerdo","cereza","cero","cerrar","certeza","césped","cetro","chacal","chaleco","champú","chancla","chapa","charla","chico","chiste","chivo","choque","choza","chuleta","chupar","ciclón","ciego","cielo","cien","cierto","cifra","cigarro","cima","cinco","cine","cinta","ciprés","circo","ciruela","cisne","cita","ciudad","clamor","clan","claro","clase","clave","cliente","clima","clínica","cobre","cocción","cochino","cocina","coco","código","codo","cofre","coger","cohete","cojín","cojo","cola","colcha","colegio","colgar","colina","collar","colmo","columna","combate","comer","comida","cómodo","compra","conde","conejo","conga","conocer","consejo","contar","copa","copia","corazón","corbata","corcho","cordón","corona","correr","coser","cosmos","costa","cráneo","cráter","crear","crecer","creído","crema","cría","crimen","cripta","crisis","cromo","crónica","croqueta","crudo","cruz","cuadro","cuarto","cuatro","cubo","cubrir","cuchara","cuello","cuento","cuerda","cuesta","cueva","cuidar","culebra","culpa","culto","cumbre","cumplir","cuna","cuneta","cuota","cupón","cúpula","curar","curioso","curso","curva","cutis","dama","danza","dar","dardo","dátil","deber","débil","década","decir","dedo","defensa","definir","dejar","delfín","delgado","delito","demora","denso","dental","deporte","derecho","derrota","desayuno","deseo","desfile","desnudo","destino","desvío","detalle","detener","deuda","día","diablo","diadema","diamante","diana","diario","dibujo","dictar","diente","dieta","diez","difícil","digno","dilema","diluir","dinero","directo","dirigir","disco","diseño","disfraz","diva","divino","doble","doce","dolor","domingo","don","donar","dorado","dormir","dorso","dos","dosis","dragón","droga","ducha","duda","duelo","dueño","dulce","dúo","duque","durar","dureza","duro","ébano","ebrio","echar","eco","ecuador","edad","edición","edificio","editor","educar","efecto","eficaz","eje","ejemplo","elefante","elegir","elemento","elevar","elipse","élite","elixir","elogio","eludir","embudo","emitir","emoción","empate","empeño","empleo","empresa","enano","encargo","enchufe","encía","enemigo","enero","enfado","enfermo","engaño","enigma","enlace","enorme","enredo","ensayo","enseñar","entero","entrar","envase","envío","época","equipo","erizo","escala","escena","escolar","escribir","escudo","esencia","esfera","esfuerzo","espada","espejo","espía","esposa","espuma","esquí","estar","este","estilo","estufa","etapa","eterno","ética","etnia","evadir","evaluar","evento","evitar","exacto","examen","exceso","excusa","exento","exigir","exilio","existir","éxito","experto","explicar","exponer","extremo","fábrica","fábula","fachada","fácil","factor","faena","faja","falda","fallo","falso","faltar","fama","familia","famoso","faraón","farmacia","farol","farsa","fase","fatiga","fauna","favor","fax","febrero","fecha","feliz","feo","feria","feroz","fértil","fervor","festín","fiable","fianza","fiar","fibra","ficción","ficha","fideo","fiebre","fiel","fiera","fiesta","figura","fijar","fijo","fila","filete","filial","filtro","fin","finca","fingir","finito","firma","flaco","flauta","flecha","flor","flota","fluir","flujo","flúor","fobia","foca","fogata","fogón","folio","folleto","fondo","forma","forro","fortuna","forzar","fosa","foto","fracaso","frágil","franja","frase","fraude","freír","freno","fresa","frío","frito","fruta","fuego","fuente","fuerza","fuga","fumar","función","funda","furgón","furia","fusil","fútbol","futuro","gacela","gafas","gaita","gajo","gala","galería","gallo","gamba","ganar","gancho","ganga","ganso","garaje","garza","gasolina","gastar","gato","gavilán","gemelo","gemir","gen","género","genio","gente","geranio","gerente","germen","gesto","gigante","gimnasio","girar","giro","glaciar","globo","gloria","gol","golfo","goloso","golpe","goma","gordo","gorila","gorra","gota","goteo","gozar","grada","gráfico","grano","grasa","gratis","grave","grieta","grillo","gripe","gris","grito","grosor","grúa","grueso","grumo","grupo","guante","guapo","guardia","guerra","guía","guiño","guion","guiso","guitarra","gusano","gustar","haber","hábil","hablar","hacer","hacha","hada","hallar","hamaca","harina","haz","hazaña","hebilla","hebra","hecho","helado","helio","hembra","herir","hermano","héroe","hervir","hielo","hierro","hígado","higiene","hijo","himno","historia","hocico","hogar","hoguera","hoja","hombre","hongo","honor","honra","hora","hormiga","horno","hostil","hoyo","hueco","huelga","huerta","hueso","huevo","huida","huir","humano","húmedo","humilde","humo","hundir","huracán","hurto","icono","ideal","idioma","ídolo","iglesia","iglú","igual","ilegal","ilusión","imagen","imán","imitar","impar","imperio","imponer","impulso","incapaz","índice","inerte","infiel","informe","ingenio","inicio","inmenso","inmune","innato","insecto","instante","interés","íntimo","intuir","inútil","invierno","ira","iris","ironía","isla","islote","jabalí","jabón","jamón","jarabe","jardín","jarra","jaula","jazmín","jefe","jeringa","jinete","jornada","joroba","joven","joya","juerga","jueves","juez","jugador","jugo","juguete","juicio","junco","jungla","junio","juntar","júpiter","jurar","justo","juvenil","juzgar","kilo","koala","labio","lacio","lacra","lado","ladrón","lagarto","lágrima","laguna","laico","lamer","lámina","lámpara","lana","lancha","langosta","lanza","lápiz","largo","larva","lástima","lata","látex","latir","laurel","lavar","lazo","leal","lección","leche","lector","leer","legión","legumbre","lejano","lengua","lento","leña","león","leopardo","lesión","letal","letra","leve","leyenda","libertad","libro","licor","líder","lidiar","lienzo","liga","ligero","lima","límite","limón","limpio","lince","lindo","línea","lingote","lino","linterna","líquido","liso","lista","litera","litio","litro","llaga","llama","llanto","llave","llegar","llenar","llevar","llorar","llover","lluvia","lobo","loción","loco","locura","lógica","logro","lombriz","lomo","lonja","lote","lucha","lucir","lugar","lujo","luna","lunes","lupa","lustro","luto","luz","maceta","macho","madera","madre","maduro","maestro","mafia","magia","mago","maíz","maldad","maleta","malla","malo","mamá","mambo","mamut","manco","mando","manejar","manga","maniquí","manjar","mano","manso","manta","mañana","mapa","máquina","mar","marco","marea","marfil","margen","marido","mármol","marrón","martes","marzo","masa","máscara","masivo","matar","materia","matiz","matriz","máximo","mayor","mazorca","mecha","medalla","medio","médula","mejilla","mejor","melena","melón","memoria","menor","mensaje","mente","menú","mercado","merengue","mérito","mes","mesón","meta","meter","método","metro","mezcla","miedo","miel","miembro","miga","mil","milagro","militar","millón","mimo","mina","minero","mínimo","minuto","miope","mirar","misa","miseria","misil","mismo","mitad","mito","mochila","moción","moda","modelo","moho","mojar","molde","moler","molino","momento","momia","monarca","moneda","monja","monto","moño","morada","morder","moreno","morir","morro","morsa","mortal","mosca","mostrar","motivo","mover","móvil","mozo","mucho","mudar","mueble","muela","muerte","muestra","mugre","mujer","mula","muleta","multa","mundo","muñeca","mural","muro","músculo","museo","musgo","música","muslo","nácar","nación","nadar","naipe","naranja","nariz","narrar","nasal","natal","nativo","natural","náusea","naval","nave","navidad","necio","néctar","negar","negocio","negro","neón","nervio","neto","neutro","nevar","nevera","nicho","nido","niebla","nieto","niñez","niño","nítido","nivel","nobleza","noche","nómina","noria","norma","norte","nota","noticia","novato","novela","novio","nube","nuca","núcleo","nudillo","nudo","nuera","nueve","nuez","nulo","número","nutria","oasis","obeso","obispo","objeto","obra","obrero","observar","obtener","obvio","oca","ocaso","océano","ochenta","ocho","ocio","ocre","octavo","octubre","oculto","ocupar","ocurrir","odiar","odio","odisea","oeste","ofensa","oferta","oficio","ofrecer","ogro","oído","oír","ojo","ola","oleada","olfato","olivo","olla","olmo","olor","olvido","ombligo","onda","onza","opaco","opción","ópera","opinar","oponer","optar","óptica","opuesto","oración","orador","oral","órbita","orca","orden","oreja","órgano","orgía","orgullo","oriente","origen","orilla","oro","orquesta","oruga","osadía","oscuro","osezno","oso","ostra","otoño","otro","oveja","óvulo","óxido","oxígeno","oyente","ozono","pacto","padre","paella","página","pago","país","pájaro","palabra","palco","paleta","pálido","palma","paloma","palpar","pan","panal","pánico","pantera","pañuelo","papá","papel","papilla","paquete","parar","parcela","pared","parir","paro","párpado","parque","párrafo","parte","pasar","paseo","pasión","paso","pasta","pata","patio","patria","pausa","pauta","pavo","payaso","peatón","pecado","pecera","pecho","pedal","pedir","pegar","peine","pelar","peldaño","pelea","peligro","pellejo","pelo","peluca","pena","pensar","peñón","peón","peor","pepino","pequeño","pera","percha","perder","pereza","perfil","perico","perla","permiso","perro","persona","pesa","pesca","pésimo","pestaña","pétalo","petróleo","pez","pezuña","picar","pichón","pie","piedra","pierna","pieza","pijama","pilar","piloto","pimienta","pino","pintor","pinza","piña","piojo","pipa","pirata","pisar","piscina","piso","pista","pitón","pizca","placa","plan","plata","playa","plaza","pleito","pleno","plomo","pluma","plural","pobre","poco","poder","podio","poema","poesía","poeta","polen","policía","pollo","polvo","pomada","pomelo","pomo","pompa","poner","porción","portal","posada","poseer","posible","poste","potencia","potro","pozo","prado","precoz","pregunta","premio","prensa","preso","previo","primo","príncipe","prisión","privar","proa","probar","proceso","producto","proeza","profesor","programa","prole","promesa","pronto","propio","próximo","prueba","público","puchero","pudor","pueblo","puerta","puesto","pulga","pulir","pulmón","pulpo","pulso","puma","punto","puñal","puño","pupa","pupila","puré","quedar","queja","quemar","querer","queso","quieto","química","quince","quitar","rábano","rabia","rabo","ración","radical","raíz","rama","rampa","rancho","rango","rapaz","rápido","rapto","rasgo","raspa","rato","rayo","raza","razón","reacción","realidad","rebaño","rebote","recaer","receta","rechazo","recoger","recreo","recto","recurso","red","redondo","reducir","reflejo","reforma","refrán","refugio","regalo","regir","regla","regreso","rehén","reino","reír","reja","relato","relevo","relieve","relleno","reloj","remar","remedio","remo","rencor","rendir","renta","reparto","repetir","reposo","reptil","res","rescate","resina","respeto","resto","resumen","retiro","retorno","retrato","reunir","revés","revista","rey","rezar","rico","riego","rienda","riesgo","rifa","rígido","rigor","rincón","riñón","río","riqueza","risa","ritmo","rito","rizo","roble","roce","rociar","rodar","rodeo","rodilla","roer","rojizo","rojo","romero","romper","ron","ronco","ronda","ropa","ropero","rosa","rosca","rostro","rotar","rubí","rubor","rudo","rueda","rugir","ruido","ruina","ruleta","rulo","rumbo","rumor","ruptura","ruta","rutina","sábado","saber","sabio","sable","sacar","sagaz","sagrado","sala","saldo","salero","salir","salmón","salón","salsa","salto","salud","salvar","samba","sanción","sandía","sanear","sangre","sanidad","sano","santo","sapo","saque","sardina","sartén","sastre","satán","sauna","saxofón","sección","seco","secreto","secta","sed","seguir","seis","sello","selva","semana","semilla","senda","sensor","señal","señor","separar","sepia","sequía","ser","serie","sermón","servir","sesenta","sesión","seta","setenta","severo","sexo","sexto","sidra","siesta","siete","siglo","signo","sílaba","silbar","silencio","silla","símbolo","simio","sirena","sistema","sitio","situar","sobre","socio","sodio","sol","solapa","soldado","soledad","sólido","soltar","solución","sombra","sondeo","sonido","sonoro","sonrisa","sopa","soplar","soporte","sordo","sorpresa","sorteo","sostén","sótano","suave","subir","suceso","sudor","suegra","suelo","sueño","suerte","sufrir","sujeto","sultán","sumar","superar","suplir","suponer","supremo","sur","surco","sureño","surgir","susto","sutil","tabaco","tabique","tabla","tabú","taco","tacto","tajo","talar","talco","talento","talla","talón","tamaño","tambor","tango","tanque","tapa","tapete","tapia","tapón","taquilla","tarde","tarea","tarifa","tarjeta","tarot","tarro","tarta","tatuaje","tauro","taza","tazón","teatro","techo","tecla","técnica","tejado","tejer","tejido","tela","teléfono","tema","temor","templo","tenaz","tender","tener","tenis","tenso","teoría","terapia","terco","término","ternura","terror","tesis","tesoro","testigo","tetera","texto","tez","tibio","tiburón","tiempo","tienda","tierra","tieso","tigre","tijera","tilde","timbre","tímido","timo","tinta","tío","típico","tipo","tira","tirón","titán","títere","título","tiza","toalla","tobillo","tocar","tocino","todo","toga","toldo","tomar","tono","tonto","topar","tope","toque","tórax","torero","tormenta","torneo","toro","torpedo","torre","torso","tortuga","tos","tosco","toser","tóxico","trabajo","tractor","traer","tráfico","trago","traje","tramo","trance","trato","trauma","trazar","trébol","tregua","treinta","tren","trepar","tres","tribu","trigo","tripa","triste","triunfo","trofeo","trompa","tronco","tropa","trote","trozo","truco","trueno","trufa","tubería","tubo","tuerto","tumba","tumor","túnel","túnica","turbina","turismo","turno","tutor","ubicar","úlcera","umbral","unidad","unir","universo","uno","untar","uña","urbano","urbe","urgente","urna","usar","usuario","útil","utopía","uva","vaca","vacío","vacuna","vagar","vago","vaina","vajilla","vale","válido","valle","valor","válvula","vampiro","vara","variar","varón","vaso","vecino","vector","vehículo","veinte","vejez","vela","velero","veloz","vena","vencer","venda","veneno","vengar","venir","venta","venus","ver","verano","verbo","verde","vereda","verja","verso","verter","vía","viaje","vibrar","vicio","víctima","vida","vídeo","vidrio","viejo","viernes","vigor","vil","villa","vinagre","vino","viñedo","violín","viral","virgo","virtud","visor","víspera","vista","vitamina","viudo","vivaz","vivero","vivir","vivo","volcán","volumen","volver","voraz","votar","voto","voz","vuelo","vulgar","yacer","yate","yegua","yema","yerno","yeso","yodo","yoga","yogur","zafiro","zanja","zapato","zarza","zona","zorro","zumo","zurdo"]}},{}],47:[function(e,t,r){},{}],48:[function(e,t,r){arguments[4][47][0].apply(r,arguments)},{dup:47}],49:[function(e,t,r){"use strict";var i=e("base64-js"),n=e("ieee754");r.Buffer=s,r.SlowBuffer=function(e){+e!=e&&(e=0);return s.alloc(+e)},r.INSPECT_MAX_BYTES=50;var a=2147483647;function o(e){if(e>a)throw new RangeError('The value "'+e+'" is invalid for option "size"');var t=new Uint8Array(e);return t.__proto__=s.prototype,t}function s(e,t,r){if("number"==typeof e){if("string"==typeof t)throw new TypeError('The "string" argument must be of type string. Received type number');return u(e)}return f(e,t,r)}function f(e,t,r){if("string"==typeof e)return function(e,t){"string"==typeof t&&""!==t||(t="utf8");if(!s.isEncoding(t))throw new TypeError("Unknown encoding: "+t);var r=0|l(e,t),i=o(r),n=i.write(e,t);n!==r&&(i=i.slice(0,n));return i}(e,t);if(ArrayBuffer.isView(e))return h(e);if(null==e)throw TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e);if(D(e,ArrayBuffer)||e&&D(e.buffer,ArrayBuffer))return function(e,t,r){if(t<0||e.byteLength<t)throw new RangeError('"offset" is outside of buffer bounds');if(e.byteLength<t+(r||0))throw new RangeError('"length" is outside of buffer bounds');var i;i=void 0===t&&void 0===r?new Uint8Array(e):void 0===r?new Uint8Array(e,t):new Uint8Array(e,t,r);return i.__proto__=s.prototype,i}(e,t,r);if("number"==typeof e)throw new TypeError('The "value" argument must not be of type number. Received type number');var i=e.valueOf&&e.valueOf();if(null!=i&&i!==e)return s.from(i,t,r);var n=function(e){if(s.isBuffer(e)){var t=0|d(e.length),r=o(t);return 0===r.length?r:(e.copy(r,0,0,t),r)}if(void 0!==e.length)return"number"!=typeof e.length||H(e.length)?o(0):h(e);if("Buffer"===e.type&&Array.isArray(e.data))return h(e.data)}(e);if(n)return n;if("undefined"!=typeof Symbol&&null!=Symbol.toPrimitive&&"function"==typeof e[Symbol.toPrimitive])return s.from(e[Symbol.toPrimitive]("string"),t,r);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e)}function c(e){if("number"!=typeof e)throw new TypeError('"size" argument must be of type number');if(e<0)throw new RangeError('The value "'+e+'" is invalid for option "size"')}function u(e){return c(e),o(e<0?0:0|d(e))}function h(e){for(var t=e.length<0?0:0|d(e.length),r=o(t),i=0;i<t;i+=1)r[i]=255&e[i];return r}function d(e){if(e>=a)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+a.toString(16)+" bytes");return 0|e}function l(e,t){if(s.isBuffer(e))return e.length;if(ArrayBuffer.isView(e)||D(e,ArrayBuffer))return e.byteLength;if("string"!=typeof e)throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof e);var r=e.length,i=arguments.length>2&&!0===arguments[2];if(!i&&0===r)return 0;for(var n=!1;;)switch(t){case"ascii":case"latin1":case"binary":return r;case"utf8":case"utf-8":return L(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*r;case"hex":return r>>>1;case"base64":return N(e).length;default:if(n)return i?-1:L(e).length;t=(""+t).toLowerCase(),n=!0}}function p(e,t,r){var i=!1;if((void 0===t||t<0)&&(t=0),t>this.length)return"";if((void 0===r||r>this.length)&&(r=this.length),r<=0)return"";if((r>>>=0)<=(t>>>=0))return"";for(e||(e="utf8");;)switch(e){case"hex":return j(this,t,r);case"utf8":case"utf-8":return k(this,t,r);case"ascii":return E(this,t,r);case"latin1":case"binary":return I(this,t,r);case"base64":return x(this,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return B(this,t,r);default:if(i)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),i=!0}}function b(e,t,r){var i=e[t];e[t]=e[r],e[r]=i}function m(e,t,r,i,n){if(0===e.length)return-1;if("string"==typeof r?(i=r,r=0):r>2147483647?r=2147483647:r<-2147483648&&(r=-2147483648),H(r=+r)&&(r=n?0:e.length-1),r<0&&(r=e.length+r),r>=e.length){if(n)return-1;r=e.length-1}else if(r<0){if(!n)return-1;r=0}if("string"==typeof t&&(t=s.from(t,i)),s.isBuffer(t))return 0===t.length?-1:g(e,t,r,i,n);if("number"==typeof t)return t&=255,"function"==typeof Uint8Array.prototype.indexOf?n?Uint8Array.prototype.indexOf.call(e,t,r):Uint8Array.prototype.lastIndexOf.call(e,t,r):g(e,[t],r,i,n);throw new TypeError("val must be string, number or Buffer")}function g(e,t,r,i,n){var a,o=1,s=e.length,f=t.length;if(void 0!==i&&("ucs2"===(i=String(i).toLowerCase())||"ucs-2"===i||"utf16le"===i||"utf-16le"===i)){if(e.length<2||t.length<2)return-1;o=2,s/=2,f/=2,r/=2}function c(e,t){return 1===o?e[t]:e.readUInt16BE(t*o)}if(n){var u=-1;for(a=r;a<s;a++)if(c(e,a)===c(t,-1===u?0:a-u)){if(-1===u&&(u=a),a-u+1===f)return u*o}else-1!==u&&(a-=a-u),u=-1}else for(r+f>s&&(r=s-f),a=r;a>=0;a--){for(var h=!0,d=0;d<f;d++)if(c(e,a+d)!==c(t,d)){h=!1;break}if(h)return a}return-1}function v(e,t,r,i){r=Number(r)||0;var n=e.length-r;i?(i=Number(i))>n&&(i=n):i=n;var a=t.length;i>a/2&&(i=a/2);for(var o=0;o<i;++o){var s=parseInt(t.substr(2*o,2),16);if(H(s))return o;e[r+o]=s}return o}function y(e,t,r,i){return U(L(t,e.length-r),e,r,i)}function w(e,t,r,i){return U(function(e){for(var t=[],r=0;r<e.length;++r)t.push(255&e.charCodeAt(r));return t}(t),e,r,i)}function _(e,t,r,i){return w(e,t,r,i)}function S(e,t,r,i){return U(N(t),e,r,i)}function M(e,t,r,i){return U(function(e,t){for(var r,i,n,a=[],o=0;o<e.length&&!((t-=2)<0);++o)r=e.charCodeAt(o),i=r>>8,n=r%256,a.push(n),a.push(i);return a}(t,e.length-r),e,r,i)}function x(e,t,r){return 0===t&&r===e.length?i.fromByteArray(e):i.fromByteArray(e.slice(t,r))}function k(e,t,r){r=Math.min(e.length,r);for(var i=[],n=t;n<r;){var a,o,s,f,c=e[n],u=null,h=c>239?4:c>223?3:c>191?2:1;if(n+h<=r)switch(h){case 1:c<128&&(u=c);break;case 2:128==(192&(a=e[n+1]))&&(f=(31&c)<<6|63&a)>127&&(u=f);break;case 3:a=e[n+1],o=e[n+2],128==(192&a)&&128==(192&o)&&(f=(15&c)<<12|(63&a)<<6|63&o)>2047&&(f<55296||f>57343)&&(u=f);break;case 4:a=e[n+1],o=e[n+2],s=e[n+3],128==(192&a)&&128==(192&o)&&128==(192&s)&&(f=(15&c)<<18|(63&a)<<12|(63&o)<<6|63&s)>65535&&f<1114112&&(u=f)}null===u?(u=65533,h=1):u>65535&&(u-=65536,i.push(u>>>10&1023|55296),u=56320|1023&u),i.push(u),n+=h}return function(e){var t=e.length;if(t<=A)return String.fromCharCode.apply(String,e);var r="",i=0;for(;i<t;)r+=String.fromCharCode.apply(String,e.slice(i,i+=A));return r}(i)}r.kMaxLength=a,s.TYPED_ARRAY_SUPPORT=function(){try{var e=new Uint8Array(1);return e.__proto__={__proto__:Uint8Array.prototype,foo:function(){return 42}},42===e.foo()}catch(e){return!1}}(),s.TYPED_ARRAY_SUPPORT||"undefined"==typeof console||"function"!=typeof console.error||console.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support."),Object.defineProperty(s.prototype,"parent",{enumerable:!0,get:function(){if(s.isBuffer(this))return this.buffer}}),Object.defineProperty(s.prototype,"offset",{enumerable:!0,get:function(){if(s.isBuffer(this))return this.byteOffset}}),"undefined"!=typeof Symbol&&null!=Symbol.species&&s[Symbol.species]===s&&Object.defineProperty(s,Symbol.species,{value:null,configurable:!0,enumerable:!1,writable:!1}),s.poolSize=8192,s.from=function(e,t,r){return f(e,t,r)},s.prototype.__proto__=Uint8Array.prototype,s.__proto__=Uint8Array,s.alloc=function(e,t,r){return function(e,t,r){return c(e),e<=0?o(e):void 0!==t?"string"==typeof r?o(e).fill(t,r):o(e).fill(t):o(e)}(e,t,r)},s.allocUnsafe=function(e){return u(e)},s.allocUnsafeSlow=function(e){return u(e)},s.isBuffer=function(e){return null!=e&&!0===e._isBuffer&&e!==s.prototype},s.compare=function(e,t){if(D(e,Uint8Array)&&(e=s.from(e,e.offset,e.byteLength)),D(t,Uint8Array)&&(t=s.from(t,t.offset,t.byteLength)),!s.isBuffer(e)||!s.isBuffer(t))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(e===t)return 0;for(var r=e.length,i=t.length,n=0,a=Math.min(r,i);n<a;++n)if(e[n]!==t[n]){r=e[n],i=t[n];break}return r<i?-1:i<r?1:0},s.isEncoding=function(e){switch(String(e).toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"latin1":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return!0;default:return!1}},s.concat=function(e,t){if(!Array.isArray(e))throw new TypeError('"list" argument must be an Array of Buffers');if(0===e.length)return s.alloc(0);var r;if(void 0===t)for(t=0,r=0;r<e.length;++r)t+=e[r].length;var i=s.allocUnsafe(t),n=0;for(r=0;r<e.length;++r){var a=e[r];if(D(a,Uint8Array)&&(a=s.from(a)),!s.isBuffer(a))throw new TypeError('"list" argument must be an Array of Buffers');a.copy(i,n),n+=a.length}return i},s.byteLength=l,s.prototype._isBuffer=!0,s.prototype.swap16=function(){var e=this.length;if(e%2!=0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(var t=0;t<e;t+=2)b(this,t,t+1);return this},s.prototype.swap32=function(){var e=this.length;if(e%4!=0)throw new RangeError("Buffer size must be a multiple of 32-bits");for(var t=0;t<e;t+=4)b(this,t,t+3),b(this,t+1,t+2);return this},s.prototype.swap64=function(){var e=this.length;if(e%8!=0)throw new RangeError("Buffer size must be a multiple of 64-bits");for(var t=0;t<e;t+=8)b(this,t,t+7),b(this,t+1,t+6),b(this,t+2,t+5),b(this,t+3,t+4);return this},s.prototype.toString=function(){var e=this.length;return 0===e?"":0===arguments.length?k(this,0,e):p.apply(this,arguments)},s.prototype.toLocaleString=s.prototype.toString,s.prototype.equals=function(e){if(!s.isBuffer(e))throw new TypeError("Argument must be a Buffer");return this===e||0===s.compare(this,e)},s.prototype.inspect=function(){var e="",t=r.INSPECT_MAX_BYTES;return e=this.toString("hex",0,t).replace(/(.{2})/g,"$1 ").trim(),this.length>t&&(e+=" ... "),"<Buffer "+e+">"},s.prototype.compare=function(e,t,r,i,n){if(D(e,Uint8Array)&&(e=s.from(e,e.offset,e.byteLength)),!s.isBuffer(e))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof e);if(void 0===t&&(t=0),void 0===r&&(r=e?e.length:0),void 0===i&&(i=0),void 0===n&&(n=this.length),t<0||r>e.length||i<0||n>this.length)throw new RangeError("out of range index");if(i>=n&&t>=r)return 0;if(i>=n)return-1;if(t>=r)return 1;if(this===e)return 0;for(var a=(n>>>=0)-(i>>>=0),o=(r>>>=0)-(t>>>=0),f=Math.min(a,o),c=this.slice(i,n),u=e.slice(t,r),h=0;h<f;++h)if(c[h]!==u[h]){a=c[h],o=u[h];break}return a<o?-1:o<a?1:0},s.prototype.includes=function(e,t,r){return-1!==this.indexOf(e,t,r)},s.prototype.indexOf=function(e,t,r){return m(this,e,t,r,!0)},s.prototype.lastIndexOf=function(e,t,r){return m(this,e,t,r,!1)},s.prototype.write=function(e,t,r,i){if(void 0===t)i="utf8",r=this.length,t=0;else if(void 0===r&&"string"==typeof t)i=t,r=this.length,t=0;else{if(!isFinite(t))throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");t>>>=0,isFinite(r)?(r>>>=0,void 0===i&&(i="utf8")):(i=r,r=void 0)}var n=this.length-t;if((void 0===r||r>n)&&(r=n),e.length>0&&(r<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");i||(i="utf8");for(var a=!1;;)switch(i){case"hex":return v(this,e,t,r);case"utf8":case"utf-8":return y(this,e,t,r);case"ascii":return w(this,e,t,r);case"latin1":case"binary":return _(this,e,t,r);case"base64":return S(this,e,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return M(this,e,t,r);default:if(a)throw new TypeError("Unknown encoding: "+i);i=(""+i).toLowerCase(),a=!0}},s.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};var A=4096;function E(e,t,r){var i="";r=Math.min(e.length,r);for(var n=t;n<r;++n)i+=String.fromCharCode(127&e[n]);return i}function I(e,t,r){var i="";r=Math.min(e.length,r);for(var n=t;n<r;++n)i+=String.fromCharCode(e[n]);return i}function j(e,t,r){var i=e.length;(!t||t<0)&&(t=0),(!r||r<0||r>i)&&(r=i);for(var n="",a=t;a<r;++a)n+=O(e[a]);return n}function B(e,t,r){for(var i=e.slice(t,r),n="",a=0;a<i.length;a+=2)n+=String.fromCharCode(i[a]+256*i[a+1]);return n}function z(e,t,r){if(e%1!=0||e<0)throw new RangeError("offset is not uint");if(e+t>r)throw new RangeError("Trying to access beyond buffer length")}function C(e,t,r,i,n,a){if(!s.isBuffer(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>n||t<a)throw new RangeError('"value" argument is out of bounds');if(r+i>e.length)throw new RangeError("Index out of range")}function P(e,t,r,i,n,a){if(r+i>e.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("Index out of range")}function R(e,t,r,i,a){return t=+t,r>>>=0,a||P(e,0,r,4),n.write(e,t,r,i,23,4),r+4}function T(e,t,r,i,a){return t=+t,r>>>=0,a||P(e,0,r,8),n.write(e,t,r,i,52,8),r+8}s.prototype.slice=function(e,t){var r=this.length;(e=~~e)<0?(e+=r)<0&&(e=0):e>r&&(e=r),(t=void 0===t?r:~~t)<0?(t+=r)<0&&(t=0):t>r&&(t=r),t<e&&(t=e);var i=this.subarray(e,t);return i.__proto__=s.prototype,i},s.prototype.readUIntLE=function(e,t,r){e>>>=0,t>>>=0,r||z(e,t,this.length);for(var i=this[e],n=1,a=0;++a<t&&(n*=256);)i+=this[e+a]*n;return i},s.prototype.readUIntBE=function(e,t,r){e>>>=0,t>>>=0,r||z(e,t,this.length);for(var i=this[e+--t],n=1;t>0&&(n*=256);)i+=this[e+--t]*n;return i},s.prototype.readUInt8=function(e,t){return e>>>=0,t||z(e,1,this.length),this[e]},s.prototype.readUInt16LE=function(e,t){return e>>>=0,t||z(e,2,this.length),this[e]|this[e+1]<<8},s.prototype.readUInt16BE=function(e,t){return e>>>=0,t||z(e,2,this.length),this[e]<<8|this[e+1]},s.prototype.readUInt32LE=function(e,t){return e>>>=0,t||z(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+16777216*this[e+3]},s.prototype.readUInt32BE=function(e,t){return e>>>=0,t||z(e,4,this.length),16777216*this[e]+(this[e+1]<<16|this[e+2]<<8|this[e+3])},s.prototype.readIntLE=function(e,t,r){e>>>=0,t>>>=0,r||z(e,t,this.length);for(var i=this[e],n=1,a=0;++a<t&&(n*=256);)i+=this[e+a]*n;return i>=(n*=128)&&(i-=Math.pow(2,8*t)),i},s.prototype.readIntBE=function(e,t,r){e>>>=0,t>>>=0,r||z(e,t,this.length);for(var i=t,n=1,a=this[e+--i];i>0&&(n*=256);)a+=this[e+--i]*n;return a>=(n*=128)&&(a-=Math.pow(2,8*t)),a},s.prototype.readInt8=function(e,t){return e>>>=0,t||z(e,1,this.length),128&this[e]?-1*(255-this[e]+1):this[e]},s.prototype.readInt16LE=function(e,t){e>>>=0,t||z(e,2,this.length);var r=this[e]|this[e+1]<<8;return 32768&r?4294901760|r:r},s.prototype.readInt16BE=function(e,t){e>>>=0,t||z(e,2,this.length);var r=this[e+1]|this[e]<<8;return 32768&r?4294901760|r:r},s.prototype.readInt32LE=function(e,t){return e>>>=0,t||z(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},s.prototype.readInt32BE=function(e,t){return e>>>=0,t||z(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},s.prototype.readFloatLE=function(e,t){return e>>>=0,t||z(e,4,this.length),n.read(this,e,!0,23,4)},s.prototype.readFloatBE=function(e,t){return e>>>=0,t||z(e,4,this.length),n.read(this,e,!1,23,4)},s.prototype.readDoubleLE=function(e,t){return e>>>=0,t||z(e,8,this.length),n.read(this,e,!0,52,8)},s.prototype.readDoubleBE=function(e,t){return e>>>=0,t||z(e,8,this.length),n.read(this,e,!1,52,8)},s.prototype.writeUIntLE=function(e,t,r,i){(e=+e,t>>>=0,r>>>=0,i)||C(this,e,t,r,Math.pow(2,8*r)-1,0);var n=1,a=0;for(this[t]=255&e;++a<r&&(n*=256);)this[t+a]=e/n&255;return t+r},s.prototype.writeUIntBE=function(e,t,r,i){(e=+e,t>>>=0,r>>>=0,i)||C(this,e,t,r,Math.pow(2,8*r)-1,0);var n=r-1,a=1;for(this[t+n]=255&e;--n>=0&&(a*=256);)this[t+n]=e/a&255;return t+r},s.prototype.writeUInt8=function(e,t,r){return e=+e,t>>>=0,r||C(this,e,t,1,255,0),this[t]=255&e,t+1},s.prototype.writeUInt16LE=function(e,t,r){return e=+e,t>>>=0,r||C(this,e,t,2,65535,0),this[t]=255&e,this[t+1]=e>>>8,t+2},s.prototype.writeUInt16BE=function(e,t,r){return e=+e,t>>>=0,r||C(this,e,t,2,65535,0),this[t]=e>>>8,this[t+1]=255&e,t+2},s.prototype.writeUInt32LE=function(e,t,r){return e=+e,t>>>=0,r||C(this,e,t,4,4294967295,0),this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=255&e,t+4},s.prototype.writeUInt32BE=function(e,t,r){return e=+e,t>>>=0,r||C(this,e,t,4,4294967295,0),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e,t+4},s.prototype.writeIntLE=function(e,t,r,i){if(e=+e,t>>>=0,!i){var n=Math.pow(2,8*r-1);C(this,e,t,r,n-1,-n)}var a=0,o=1,s=0;for(this[t]=255&e;++a<r&&(o*=256);)e<0&&0===s&&0!==this[t+a-1]&&(s=1),this[t+a]=(e/o>>0)-s&255;return t+r},s.prototype.writeIntBE=function(e,t,r,i){if(e=+e,t>>>=0,!i){var n=Math.pow(2,8*r-1);C(this,e,t,r,n-1,-n)}var a=r-1,o=1,s=0;for(this[t+a]=255&e;--a>=0&&(o*=256);)e<0&&0===s&&0!==this[t+a+1]&&(s=1),this[t+a]=(e/o>>0)-s&255;return t+r},s.prototype.writeInt8=function(e,t,r){return e=+e,t>>>=0,r||C(this,e,t,1,127,-128),e<0&&(e=255+e+1),this[t]=255&e,t+1},s.prototype.writeInt16LE=function(e,t,r){return e=+e,t>>>=0,r||C(this,e,t,2,32767,-32768),this[t]=255&e,this[t+1]=e>>>8,t+2},s.prototype.writeInt16BE=function(e,t,r){return e=+e,t>>>=0,r||C(this,e,t,2,32767,-32768),this[t]=e>>>8,this[t+1]=255&e,t+2},s.prototype.writeInt32LE=function(e,t,r){return e=+e,t>>>=0,r||C(this,e,t,4,2147483647,-2147483648),this[t]=255&e,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24,t+4},s.prototype.writeInt32BE=function(e,t,r){return e=+e,t>>>=0,r||C(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e,t+4},s.prototype.writeFloatLE=function(e,t,r){return R(this,e,t,!0,r)},s.prototype.writeFloatBE=function(e,t,r){return R(this,e,t,!1,r)},s.prototype.writeDoubleLE=function(e,t,r){return T(this,e,t,!0,r)},s.prototype.writeDoubleBE=function(e,t,r){return T(this,e,t,!1,r)},s.prototype.copy=function(e,t,r,i){if(!s.isBuffer(e))throw new TypeError("argument should be a Buffer");if(r||(r=0),i||0===i||(i=this.length),t>=e.length&&(t=e.length),t||(t=0),i>0&&i<r&&(i=r),i===r)return 0;if(0===e.length||0===this.length)return 0;if(t<0)throw new RangeError("targetStart out of bounds");if(r<0||r>=this.length)throw new RangeError("Index out of range");if(i<0)throw new RangeError("sourceEnd out of bounds");i>this.length&&(i=this.length),e.length-t<i-r&&(i=e.length-t+r);var n=i-r;if(this===e&&"function"==typeof Uint8Array.prototype.copyWithin)this.copyWithin(t,r,i);else if(this===e&&r<t&&t<i)for(var a=n-1;a>=0;--a)e[a+t]=this[a+r];else Uint8Array.prototype.set.call(e,this.subarray(r,i),t);return n},s.prototype.fill=function(e,t,r,i){if("string"==typeof e){if("string"==typeof t?(i=t,t=0,r=this.length):"string"==typeof r&&(i=r,r=this.length),void 0!==i&&"string"!=typeof i)throw new TypeError("encoding must be a string");if("string"==typeof i&&!s.isEncoding(i))throw new TypeError("Unknown encoding: "+i);if(1===e.length){var n=e.charCodeAt(0);("utf8"===i&&n<128||"latin1"===i)&&(e=n)}}else"number"==typeof e&&(e&=255);if(t<0||this.length<t||this.length<r)throw new RangeError("Out of range index");if(r<=t)return this;var a;if(t>>>=0,r=void 0===r?this.length:r>>>0,e||(e=0),"number"==typeof e)for(a=t;a<r;++a)this[a]=e;else{var o=s.isBuffer(e)?e:s.from(e,i),f=o.length;if(0===f)throw new TypeError('The value "'+e+'" is invalid for argument "value"');for(a=0;a<r-t;++a)this[a+t]=o[a%f]}return this};var q=/[^+\/0-9A-Za-z-_]/g;function O(e){return e<16?"0"+e.toString(16):e.toString(16)}function L(e,t){var r;t=t||1/0;for(var i=e.length,n=null,a=[],o=0;o<i;++o){if((r=e.charCodeAt(o))>55295&&r<57344){if(!n){if(r>56319){(t-=3)>-1&&a.push(239,191,189);continue}if(o+1===i){(t-=3)>-1&&a.push(239,191,189);continue}n=r;continue}if(r<56320){(t-=3)>-1&&a.push(239,191,189),n=r;continue}r=65536+(n-55296<<10|r-56320)}else n&&(t-=3)>-1&&a.push(239,191,189);if(n=null,r<128){if((t-=1)<0)break;a.push(r)}else if(r<2048){if((t-=2)<0)break;a.push(r>>6|192,63&r|128)}else if(r<65536){if((t-=3)<0)break;a.push(r>>12|224,r>>6&63|128,63&r|128)}else{if(!(r<1114112))throw new Error("Invalid code point");if((t-=4)<0)break;a.push(r>>18|240,r>>12&63|128,r>>6&63|128,63&r|128)}}return a}function N(e){return i.toByteArray(function(e){if((e=(e=e.split("=")[0]).trim().replace(q,"")).length<2)return"";for(;e.length%4!=0;)e+="=";return e}(e))}function U(e,t,r,i){for(var n=0;n<i&&!(n+r>=t.length||n>=e.length);++n)t[n+r]=e[n];return n}function D(e,t){return e instanceof t||null!=e&&null!=e.constructor&&null!=e.constructor.name&&e.constructor.name===t.name}function H(e){return e!=e}},{"base64-js":50,ieee754:51}],50:[function(e,t,r){"use strict";r.byteLength=function(e){var t=c(e),r=t[0],i=t[1];return 3*(r+i)/4-i},r.toByteArray=function(e){for(var t,r=c(e),i=r[0],o=r[1],s=new a(function(e,t,r){return 3*(t+r)/4-r}(0,i,o)),f=0,u=o>0?i-4:i,h=0;h<u;h+=4)t=n[e.charCodeAt(h)]<<18|n[e.charCodeAt(h+1)]<<12|n[e.charCodeAt(h+2)]<<6|n[e.charCodeAt(h+3)],s[f++]=t>>16&255,s[f++]=t>>8&255,s[f++]=255&t;2===o&&(t=n[e.charCodeAt(h)]<<2|n[e.charCodeAt(h+1)]>>4,s[f++]=255&t);1===o&&(t=n[e.charCodeAt(h)]<<10|n[e.charCodeAt(h+1)]<<4|n[e.charCodeAt(h+2)]>>2,s[f++]=t>>8&255,s[f++]=255&t);return s},r.fromByteArray=function(e){for(var t,r=e.length,n=r%3,a=[],o=0,s=r-n;o<s;o+=16383)a.push(u(e,o,o+16383>s?s:o+16383));1===n?(t=e[r-1],a.push(i[t>>2]+i[t<<4&63]+"==")):2===n&&(t=(e[r-2]<<8)+e[r-1],a.push(i[t>>10]+i[t>>4&63]+i[t<<2&63]+"="));return a.join("")};for(var i=[],n=[],a="undefined"!=typeof Uint8Array?Uint8Array:Array,o="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",s=0,f=o.length;s<f;++s)i[s]=o[s],n[o.charCodeAt(s)]=s;function c(e){var t=e.length;if(t%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var r=e.indexOf("=");return-1===r&&(r=t),[r,r===t?0:4-r%4]}function u(e,t,r){for(var n,a,o=[],s=t;s<r;s+=3)n=(e[s]<<16&16711680)+(e[s+1]<<8&65280)+(255&e[s+2]),o.push(i[(a=n)>>18&63]+i[a>>12&63]+i[a>>6&63]+i[63&a]);return o.join("")}n["-".charCodeAt(0)]=62,n["_".charCodeAt(0)]=63},{}],51:[function(e,t,r){r.read=function(e,t,r,i,n){var a,o,s=8*n-i-1,f=(1<<s)-1,c=f>>1,u=-7,h=r?n-1:0,d=r?-1:1,l=e[t+h];for(h+=d,a=l&(1<<-u)-1,l>>=-u,u+=s;u>0;a=256*a+e[t+h],h+=d,u-=8);for(o=a&(1<<-u)-1,a>>=-u,u+=i;u>0;o=256*o+e[t+h],h+=d,u-=8);if(0===a)a=1-c;else{if(a===f)return o?NaN:1/0*(l?-1:1);o+=Math.pow(2,i),a-=c}return(l?-1:1)*o*Math.pow(2,a-i)},r.write=function(e,t,r,i,n,a){var o,s,f,c=8*a-n-1,u=(1<<c)-1,h=u>>1,d=23===n?Math.pow(2,-24)-Math.pow(2,-77):0,l=i?0:a-1,p=i?1:-1,b=t<0||0===t&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(s=isNaN(t)?1:0,o=u):(o=Math.floor(Math.log(t)/Math.LN2),t*(f=Math.pow(2,-o))<1&&(o--,f*=2),(t+=o+h>=1?d/f:d*Math.pow(2,1-h))*f>=2&&(o++,f/=2),o+h>=u?(s=0,o=u):o+h>=1?(s=(t*f-1)*Math.pow(2,n),o+=h):(s=t*Math.pow(2,h-1)*Math.pow(2,n),o=0));n>=8;e[r+l]=255&s,l+=p,s/=256,n-=8);for(o=o<<n|s,c+=n;c>0;e[r+l]=255&o,l+=p,o/=256,c-=8);e[r+l-p]|=128*b}},{}],52:[function(e,t,r){"use strict";r.randomBytes=r.rng=r.pseudoRandomBytes=r.prng=e("randombytes"),r.createHash=r.Hash=e("create-hash"),r.createHmac=r.Hmac=e("create-hmac");var i=e("browserify-sign/algos"),n=Object.keys(i),a=["sha1","sha224","sha256","sha384","sha512","md5","rmd160"].concat(n);r.getHashes=function(){return a};var o=e("pbkdf2");r.pbkdf2=o.pbkdf2,r.pbkdf2Sync=o.pbkdf2Sync;var s=e("browserify-cipher");r.Cipher=s.Cipher,r.createCipher=s.createCipher,r.Cipheriv=s.Cipheriv,r.createCipheriv=s.createCipheriv,r.Decipher=s.Decipher,r.createDecipher=s.createDecipher,r.Decipheriv=s.Decipheriv,r.createDecipheriv=s.createDecipheriv,r.getCiphers=s.getCiphers,r.listCiphers=s.listCiphers;var f=e("diffie-hellman");r.DiffieHellmanGroup=f.DiffieHellmanGroup,r.createDiffieHellmanGroup=f.createDiffieHellmanGroup,r.getDiffieHellman=f.getDiffieHellman,r.createDiffieHellman=f.createDiffieHellman,r.DiffieHellman=f.DiffieHellman;var c=e("browserify-sign");r.createSign=c.createSign,r.Sign=c.Sign,r.createVerify=c.createVerify,r.Verify=c.Verify,r.createECDH=e("create-ecdh");var u=e("public-encrypt");r.publicEncrypt=u.publicEncrypt,r.privateEncrypt=u.privateEncrypt,r.publicDecrypt=u.publicDecrypt,r.privateDecrypt=u.privateDecrypt;var h=e("randomfill");r.randomFill=h.randomFill,r.randomFillSync=h.randomFillSync,r.createCredentials=function(){throw new Error(["sorry, createCredentials is not implemented yet","we accept pull requests","https://github.com/crypto-browserify/crypto-browserify"].join("\n"))},r.constants={DH_CHECK_P_NOT_SAFE_PRIME:2,DH_CHECK_P_NOT_PRIME:1,DH_UNABLE_TO_CHECK_GENERATOR:4,DH_NOT_SUITABLE_GENERATOR:8,NPN_ENABLED:1,ALPN_ENABLED:1,RSA_PKCS1_PADDING:1,RSA_SSLV23_PADDING:2,RSA_NO_PADDING:3,RSA_PKCS1_OAEP_PADDING:4,RSA_X931_PADDING:5,RSA_PKCS1_PSS_PADDING:6,POINT_CONVERSION_COMPRESSED:2,POINT_CONVERSION_UNCOMPRESSED:4,POINT_CONVERSION_HYBRID:6}},{"browserify-cipher":53,"browserify-sign":92,"browserify-sign/algos":89,"create-ecdh":173,"create-hash":207,"create-hmac":226,"diffie-hellman":240,pbkdf2:247,"public-encrypt":263,randombytes:315,randomfill:317}],53:[function(e,t,r){var i=e("browserify-des"),n=e("browserify-aes/browser"),a=e("browserify-aes/modes"),o=e("browserify-des/modes"),s=e("evp_bytestokey");function f(e,t,r){if(e=e.toLowerCase(),a[e])return n.createCipheriv(e,t,r);if(o[e])return new i({key:t,iv:r,mode:e});throw new TypeError("invalid suite type")}function c(e,t,r){if(e=e.toLowerCase(),a[e])return n.createDecipheriv(e,t,r);if(o[e])return new i({key:t,iv:r,mode:e,decrypt:!0});throw new TypeError("invalid suite type")}r.createCipher=r.Cipher=function(e,t){var r,i;if(e=e.toLowerCase(),a[e])r=a[e].key,i=a[e].iv;else{if(!o[e])throw new TypeError("invalid suite type");r=8*o[e].key,i=o[e].iv}var n=s(t,!1,r,i);return f(e,n.key,n.iv)},r.createCipheriv=r.Cipheriv=f,r.createDecipher=r.Decipher=function(e,t){var r,i;if(e=e.toLowerCase(),a[e])r=a[e].key,i=a[e].iv;else{if(!o[e])throw new TypeError("invalid suite type");r=8*o[e].key,i=o[e].iv}var n=s(t,!1,r,i);return c(e,n.key,n.iv)},r.createDecipheriv=r.Decipheriv=c,r.listCiphers=r.getCiphers=function(){return Object.keys(o).concat(n.getCiphers())}},{"browserify-aes/browser":56,"browserify-aes/modes":67,"browserify-des":74,"browserify-des/modes":75,evp_bytestokey:85}],54:[function(e,t,r){var i=e("safe-buffer").Buffer;function n(e){i.isBuffer(e)||(e=i.from(e));for(var t=e.length/4|0,r=new Array(t),n=0;n<t;n++)r[n]=e.readUInt32BE(4*n);return r}function a(e){for(;0<e.length;e++)e[0]=0}function o(e,t,r,i,n){for(var a,o,s,f,c=r[0],u=r[1],h=r[2],d=r[3],l=e[0]^t[0],p=e[1]^t[1],b=e[2]^t[2],m=e[3]^t[3],g=4,v=1;v<n;v++)a=c[l>>>24]^u[p>>>16&255]^h[b>>>8&255]^d[255&m]^t[g++],o=c[p>>>24]^u[b>>>16&255]^h[m>>>8&255]^d[255&l]^t[g++],s=c[b>>>24]^u[m>>>16&255]^h[l>>>8&255]^d[255&p]^t[g++],f=c[m>>>24]^u[l>>>16&255]^h[p>>>8&255]^d[255&b]^t[g++],l=a,p=o,b=s,m=f;return a=(i[l>>>24]<<24|i[p>>>16&255]<<16|i[b>>>8&255]<<8|i[255&m])^t[g++],o=(i[p>>>24]<<24|i[b>>>16&255]<<16|i[m>>>8&255]<<8|i[255&l])^t[g++],s=(i[b>>>24]<<24|i[m>>>16&255]<<16|i[l>>>8&255]<<8|i[255&p])^t[g++],f=(i[m>>>24]<<24|i[l>>>16&255]<<16|i[p>>>8&255]<<8|i[255&b])^t[g++],[a>>>=0,o>>>=0,s>>>=0,f>>>=0]}var s=[0,1,2,4,8,16,32,64,128,27,54],f=function(){for(var e=new Array(256),t=0;t<256;t++)e[t]=t<128?t<<1:t<<1^283;for(var r=[],i=[],n=[[],[],[],[]],a=[[],[],[],[]],o=0,s=0,f=0;f<256;++f){var c=s^s<<1^s<<2^s<<3^s<<4;c=c>>>8^255&c^99,r[o]=c,i[c]=o;var u=e[o],h=e[u],d=e[h],l=257*e[c]^16843008*c;n[0][o]=l<<24|l>>>8,n[1][o]=l<<16|l>>>16,n[2][o]=l<<8|l>>>24,n[3][o]=l,l=16843009*d^65537*h^257*u^16843008*o,a[0][c]=l<<24|l>>>8,a[1][c]=l<<16|l>>>16,a[2][c]=l<<8|l>>>24,a[3][c]=l,0===o?o=s=1:(o=u^e[e[e[d^u]]],s^=e[e[s]])}return{SBOX:r,INV_SBOX:i,SUB_MIX:n,INV_SUB_MIX:a}}();function c(e){this._key=n(e),this._reset()}c.blockSize=16,c.keySize=32,c.prototype.blockSize=c.blockSize,c.prototype.keySize=c.keySize,c.prototype._reset=function(){for(var e=this._key,t=e.length,r=t+6,i=4*(r+1),n=[],a=0;a<t;a++)n[a]=e[a];for(a=t;a<i;a++){var o=n[a-1];a%t==0?(o=o<<8|o>>>24,o=f.SBOX[o>>>24]<<24|f.SBOX[o>>>16&255]<<16|f.SBOX[o>>>8&255]<<8|f.SBOX[255&o],o^=s[a/t|0]<<24):t>6&&a%t==4&&(o=f.SBOX[o>>>24]<<24|f.SBOX[o>>>16&255]<<16|f.SBOX[o>>>8&255]<<8|f.SBOX[255&o]),n[a]=n[a-t]^o}for(var c=[],u=0;u<i;u++){var h=i-u,d=n[h-(u%4?0:4)];c[u]=u<4||h<=4?d:f.INV_SUB_MIX[0][f.SBOX[d>>>24]]^f.INV_SUB_MIX[1][f.SBOX[d>>>16&255]]^f.INV_SUB_MIX[2][f.SBOX[d>>>8&255]]^f.INV_SUB_MIX[3][f.SBOX[255&d]]}this._nRounds=r,this._keySchedule=n,this._invKeySchedule=c},c.prototype.encryptBlockRaw=function(e){return o(e=n(e),this._keySchedule,f.SUB_MIX,f.SBOX,this._nRounds)},c.prototype.encryptBlock=function(e){var t=this.encryptBlockRaw(e),r=i.allocUnsafe(16);return r.writeUInt32BE(t[0],0),r.writeUInt32BE(t[1],4),r.writeUInt32BE(t[2],8),r.writeUInt32BE(t[3],12),r},c.prototype.decryptBlock=function(e){var t=(e=n(e))[1];e[1]=e[3],e[3]=t;var r=o(e,this._invKeySchedule,f.INV_SUB_MIX,f.INV_SBOX,this._nRounds),a=i.allocUnsafe(16);return a.writeUInt32BE(r[0],0),a.writeUInt32BE(r[3],4),a.writeUInt32BE(r[2],8),a.writeUInt32BE(r[1],12),a},c.prototype.scrub=function(){a(this._keySchedule),a(this._invKeySchedule),a(this._key)},t.exports.AES=c},{"safe-buffer":72}],55:[function(e,t,r){var i=e("./aes"),n=e("safe-buffer").Buffer,a=e("cipher-base"),o=e("inherits"),s=e("./ghash"),f=e("buffer-xor"),c=e("./incr32");function u(e,t,r,o){a.call(this);var f=n.alloc(4,0);this._cipher=new i.AES(t);var u=this._cipher.encryptBlock(f);this._ghash=new s(u),r=function(e,t,r){if(12===t.length)return e._finID=n.concat([t,n.from([0,0,0,1])]),n.concat([t,n.from([0,0,0,2])]);var i=new s(r),a=t.length,o=a%16;i.update(t),o&&(o=16-o,i.update(n.alloc(o,0))),i.update(n.alloc(8,0));var f=8*a,u=n.alloc(8);u.writeUIntBE(f,0,8),i.update(u),e._finID=i.state;var h=n.from(e._finID);return c(h),h}(this,r,u),this._prev=n.from(r),this._cache=n.allocUnsafe(0),this._secCache=n.allocUnsafe(0),this._decrypt=o,this._alen=0,this._len=0,this._mode=e,this._authTag=null,this._called=!1}o(u,a),u.prototype._update=function(e){if(!this._called&&this._alen){var t=16-this._alen%16;t<16&&(t=n.alloc(t,0),this._ghash.update(t))}this._called=!0;var r=this._mode.encrypt(this,e);return this._decrypt?this._ghash.update(e):this._ghash.update(r),this._len+=e.length,r},u.prototype._final=function(){if(this._decrypt&&!this._authTag)throw new Error("Unsupported state or unable to authenticate data");var e=f(this._ghash.final(8*this._alen,8*this._len),this._cipher.encryptBlock(this._finID));if(this._decrypt&&function(e,t){var r=0;e.length!==t.length&&r++;for(var i=Math.min(e.length,t.length),n=0;n<i;++n)r+=e[n]^t[n];return r}(e,this._authTag))throw new Error("Unsupported state or unable to authenticate data");this._authTag=e,this._cipher.scrub()},u.prototype.getAuthTag=function(){if(this._decrypt||!n.isBuffer(this._authTag))throw new Error("Attempting to get auth tag in unsupported state");return this._authTag},u.prototype.setAuthTag=function(e){if(!this._decrypt)throw new Error("Attempting to set auth tag in unsupported state");this._authTag=e},u.prototype.setAAD=function(e){if(this._called)throw new Error("Attempting to set AAD in unsupported state");this._ghash.update(e),this._alen+=e.length},t.exports=u},{"./aes":54,"./ghash":59,"./incr32":60,"buffer-xor":70,"cipher-base":71,inherits:320,"safe-buffer":72}],56:[function(e,t,r){var i=e("./encrypter"),n=e("./decrypter"),a=e("./modes/list.json");r.createCipher=r.Cipher=i.createCipher,r.createCipheriv=r.Cipheriv=i.createCipheriv,r.createDecipher=r.Decipher=n.createDecipher,r.createDecipheriv=r.Decipheriv=n.createDecipheriv,r.listCiphers=r.getCiphers=function(){return Object.keys(a)}},{"./decrypter":57,"./encrypter":58,"./modes/list.json":68}],57:[function(e,t,r){var i=e("./authCipher"),n=e("safe-buffer").Buffer,a=e("./modes"),o=e("./streamCipher"),s=e("cipher-base"),f=e("./aes"),c=e("evp_bytestokey");function u(e,t,r){s.call(this),this._cache=new h,this._last=void 0,this._cipher=new f.AES(t),this._prev=n.from(r),this._mode=e,this._autopadding=!0}function h(){this.cache=n.allocUnsafe(0)}function d(e,t,r){var s=a[e.toLowerCase()];if(!s)throw new TypeError("invalid suite type");if("string"==typeof r&&(r=n.from(r)),"GCM"!==s.mode&&r.length!==s.iv)throw new TypeError("invalid iv length "+r.length);if("string"==typeof t&&(t=n.from(t)),t.length!==s.key/8)throw new TypeError("invalid key length "+t.length);return"stream"===s.type?new o(s.module,t,r,!0):"auth"===s.type?new i(s.module,t,r,!0):new u(s.module,t,r)}e("inherits")(u,s),u.prototype._update=function(e){var t,r;this._cache.add(e);for(var i=[];t=this._cache.get(this._autopadding);)r=this._mode.decrypt(this,t),i.push(r);return n.concat(i)},u.prototype._final=function(){var e=this._cache.flush();if(this._autopadding)return function(e){var t=e[15];if(t<1||t>16)throw new Error("unable to decrypt data");var r=-1;for(;++r<t;)if(e[r+(16-t)]!==t)throw new Error("unable to decrypt data");if(16===t)return;return e.slice(0,16-t)}(this._mode.decrypt(this,e));if(e)throw new Error("data not multiple of block length")},u.prototype.setAutoPadding=function(e){return this._autopadding=!!e,this},h.prototype.add=function(e){this.cache=n.concat([this.cache,e])},h.prototype.get=function(e){var t;if(e){if(this.cache.length>16)return t=this.cache.slice(0,16),this.cache=this.cache.slice(16),t}else if(this.cache.length>=16)return t=this.cache.slice(0,16),this.cache=this.cache.slice(16),t;return null},h.prototype.flush=function(){if(this.cache.length)return this.cache},r.createDecipher=function(e,t){var r=a[e.toLowerCase()];if(!r)throw new TypeError("invalid suite type");var i=c(t,!1,r.key,r.iv);return d(e,i.key,i.iv)},r.createDecipheriv=d},{"./aes":54,"./authCipher":55,"./modes":67,"./streamCipher":73,"cipher-base":71,evp_bytestokey:85,inherits:320,"safe-buffer":72}],58:[function(e,t,r){var i=e("./modes"),n=e("./authCipher"),a=e("safe-buffer").Buffer,o=e("./streamCipher"),s=e("cipher-base"),f=e("./aes"),c=e("evp_bytestokey");function u(e,t,r){s.call(this),this._cache=new d,this._cipher=new f.AES(t),this._prev=a.from(r),this._mode=e,this._autopadding=!0}e("inherits")(u,s),u.prototype._update=function(e){var t,r;this._cache.add(e);for(var i=[];t=this._cache.get();)r=this._mode.encrypt(this,t),i.push(r);return a.concat(i)};var h=a.alloc(16,16);function d(){this.cache=a.allocUnsafe(0)}function l(e,t,r){var s=i[e.toLowerCase()];if(!s)throw new TypeError("invalid suite type");if("string"==typeof t&&(t=a.from(t)),t.length!==s.key/8)throw new TypeError("invalid key length "+t.length);if("string"==typeof r&&(r=a.from(r)),"GCM"!==s.mode&&r.length!==s.iv)throw new TypeError("invalid iv length "+r.length);return"stream"===s.type?new o(s.module,t,r):"auth"===s.type?new n(s.module,t,r):new u(s.module,t,r)}u.prototype._final=function(){var e=this._cache.flush();if(this._autopadding)return e=this._mode.encrypt(this,e),this._cipher.scrub(),e;if(!e.equals(h))throw this._cipher.scrub(),new Error("data not multiple of block length")},u.prototype.setAutoPadding=function(e){return this._autopadding=!!e,this},d.prototype.add=function(e){this.cache=a.concat([this.cache,e])},d.prototype.get=function(){if(this.cache.length>15){var e=this.cache.slice(0,16);return this.cache=this.cache.slice(16),e}return null},d.prototype.flush=function(){for(var e=16-this.cache.length,t=a.allocUnsafe(e),r=-1;++r<e;)t.writeUInt8(e,r);return a.concat([this.cache,t])},r.createCipheriv=l,r.createCipher=function(e,t){var r=i[e.toLowerCase()];if(!r)throw new TypeError("invalid suite type");var n=c(t,!1,r.key,r.iv);return l(e,n.key,n.iv)}},{"./aes":54,"./authCipher":55,"./modes":67,"./streamCipher":73,"cipher-base":71,evp_bytestokey:85,inherits:320,"safe-buffer":72}],59:[function(e,t,r){var i=e("safe-buffer").Buffer,n=i.alloc(16,0);function a(e){var t=i.allocUnsafe(16);return t.writeUInt32BE(e[0]>>>0,0),t.writeUInt32BE(e[1]>>>0,4),t.writeUInt32BE(e[2]>>>0,8),t.writeUInt32BE(e[3]>>>0,12),t}function o(e){this.h=e,this.state=i.alloc(16,0),this.cache=i.allocUnsafe(0)}o.prototype.ghash=function(e){for(var t=-1;++t<e.length;)this.state[t]^=e[t];this._multiply()},o.prototype._multiply=function(){for(var e,t,r,i=[(e=this.h).readUInt32BE(0),e.readUInt32BE(4),e.readUInt32BE(8),e.readUInt32BE(12)],n=[0,0,0,0],o=-1;++o<128;){for(0!=(this.state[~~(o/8)]&1<<7-o%8)&&(n[0]^=i[0],n[1]^=i[1],n[2]^=i[2],n[3]^=i[3]),r=0!=(1&i[3]),t=3;t>0;t--)i[t]=i[t]>>>1|(1&i[t-1])<<31;i[0]=i[0]>>>1,r&&(i[0]=i[0]^225<<24)}this.state=a(n)},o.prototype.update=function(e){var t;for(this.cache=i.concat([this.cache,e]);this.cache.length>=16;)t=this.cache.slice(0,16),this.cache=this.cache.slice(16),this.ghash(t)},o.prototype.final=function(e,t){return this.cache.length&&this.ghash(i.concat([this.cache,n],16)),this.ghash(a([0,e,0,t])),this.state},t.exports=o},{"safe-buffer":72}],60:[function(e,t,r){t.exports=function(e){for(var t,r=e.length;r--;){if(255!==(t=e.readUInt8(r))){t++,e.writeUInt8(t,r);break}e.writeUInt8(0,r)}}},{}],61:[function(e,t,r){var i=e("buffer-xor");r.encrypt=function(e,t){var r=i(t,e._prev);return e._prev=e._cipher.encryptBlock(r),e._prev},r.decrypt=function(e,t){var r=e._prev;e._prev=t;var n=e._cipher.decryptBlock(t);return i(n,r)}},{"buffer-xor":70}],62:[function(e,t,r){var i=e("safe-buffer").Buffer,n=e("buffer-xor");function a(e,t,r){var a=t.length,o=n(t,e._cache);return e._cache=e._cache.slice(a),e._prev=i.concat([e._prev,r?t:o]),o}r.encrypt=function(e,t,r){for(var n,o=i.allocUnsafe(0);t.length;){if(0===e._cache.length&&(e._cache=e._cipher.encryptBlock(e._prev),e._prev=i.allocUnsafe(0)),!(e._cache.length<=t.length)){o=i.concat([o,a(e,t,r)]);break}n=e._cache.length,o=i.concat([o,a(e,t.slice(0,n),r)]),t=t.slice(n)}return o}},{"buffer-xor":70,"safe-buffer":72}],63:[function(e,t,r){var i=e("safe-buffer").Buffer;function n(e,t,r){for(var i,n,o=-1,s=0;++o<8;)i=t&1<<7-o?128:0,s+=(128&(n=e._cipher.encryptBlock(e._prev)[0]^i))>>o%8,e._prev=a(e._prev,r?i:n);return s}function a(e,t){var r=e.length,n=-1,a=i.allocUnsafe(e.length);for(e=i.concat([e,i.from([t])]);++n<r;)a[n]=e[n]<<1|e[n+1]>>7;return a}r.encrypt=function(e,t,r){for(var a=t.length,o=i.allocUnsafe(a),s=-1;++s<a;)o[s]=n(e,t[s],r);return o}},{"safe-buffer":72}],64:[function(e,t,r){var i=e("safe-buffer").Buffer;function n(e,t,r){var n=e._cipher.encryptBlock(e._prev)[0]^t;return e._prev=i.concat([e._prev.slice(1),i.from([r?t:n])]),n}r.encrypt=function(e,t,r){for(var a=t.length,o=i.allocUnsafe(a),s=-1;++s<a;)o[s]=n(e,t[s],r);return o}},{"safe-buffer":72}],65:[function(e,t,r){var i=e("buffer-xor"),n=e("safe-buffer").Buffer,a=e("../incr32");function o(e){var t=e._cipher.encryptBlockRaw(e._prev);return a(e._prev),t}r.encrypt=function(e,t){var r=Math.ceil(t.length/16),a=e._cache.length;e._cache=n.concat([e._cache,n.allocUnsafe(16*r)]);for(var s=0;s<r;s++){var f=o(e),c=a+16*s;e._cache.writeUInt32BE(f[0],c+0),e._cache.writeUInt32BE(f[1],c+4),e._cache.writeUInt32BE(f[2],c+8),e._cache.writeUInt32BE(f[3],c+12)}var u=e._cache.slice(0,t.length);return e._cache=e._cache.slice(t.length),i(t,u)}},{"../incr32":60,"buffer-xor":70,"safe-buffer":72}],66:[function(e,t,r){r.encrypt=function(e,t){return e._cipher.encryptBlock(t)},r.decrypt=function(e,t){return e._cipher.decryptBlock(t)}},{}],67:[function(e,t,r){var i={ECB:e("./ecb"),CBC:e("./cbc"),CFB:e("./cfb"),CFB8:e("./cfb8"),CFB1:e("./cfb1"),OFB:e("./ofb"),CTR:e("./ctr"),GCM:e("./ctr")},n=e("./list.json");for(var a in n)n[a].module=i[n[a].mode];t.exports=n},{"./cbc":61,"./cfb":62,"./cfb1":63,"./cfb8":64,"./ctr":65,"./ecb":66,"./list.json":68,"./ofb":69}],68:[function(e,t,r){t.exports={"aes-128-ecb":{cipher:"AES",key:128,iv:0,mode:"ECB",type:"block"},"aes-192-ecb":{cipher:"AES",key:192,iv:0,mode:"ECB",type:"block"},"aes-256-ecb":{cipher:"AES",key:256,iv:0,mode:"ECB",type:"block"},"aes-128-cbc":{cipher:"AES",key:128,iv:16,mode:"CBC",type:"block"},"aes-192-cbc":{cipher:"AES",key:192,iv:16,mode:"CBC",type:"block"},"aes-256-cbc":{cipher:"AES",key:256,iv:16,mode:"CBC",type:"block"},aes128:{cipher:"AES",key:128,iv:16,mode:"CBC",type:"block"},aes192:{cipher:"AES",key:192,iv:16,mode:"CBC",type:"block"},aes256:{cipher:"AES",key:256,iv:16,mode:"CBC",type:"block"},"aes-128-cfb":{cipher:"AES",key:128,iv:16,mode:"CFB",type:"stream"},"aes-192-cfb":{cipher:"AES",key:192,iv:16,mode:"CFB",type:"stream"},"aes-256-cfb":{cipher:"AES",key:256,iv:16,mode:"CFB",type:"stream"},"aes-128-cfb8":{cipher:"AES",key:128,iv:16,mode:"CFB8",type:"stream"},"aes-192-cfb8":{cipher:"AES",key:192,iv:16,mode:"CFB8",type:"stream"},"aes-256-cfb8":{cipher:"AES",key:256,iv:16,mode:"CFB8",type:"stream"},"aes-128-cfb1":{cipher:"AES",key:128,iv:16,mode:"CFB1",type:"stream"},"aes-192-cfb1":{cipher:"AES",key:192,iv:16,mode:"CFB1",type:"stream"},"aes-256-cfb1":{cipher:"AES",key:256,iv:16,mode:"CFB1",type:"stream"},"aes-128-ofb":{cipher:"AES",key:128,iv:16,mode:"OFB",type:"stream"},"aes-192-ofb":{cipher:"AES",key:192,iv:16,mode:"OFB",type:"stream"},"aes-256-ofb":{cipher:"AES",key:256,iv:16,mode:"OFB",type:"stream"},"aes-128-ctr":{cipher:"AES",key:128,iv:16,mode:"CTR",type:"stream"},"aes-192-ctr":{cipher:"AES",key:192,iv:16,mode:"CTR",type:"stream"},"aes-256-ctr":{cipher:"AES",key:256,iv:16,mode:"CTR",type:"stream"},"aes-128-gcm":{cipher:"AES",key:128,iv:12,mode:"GCM",type:"auth"},"aes-192-gcm":{cipher:"AES",key:192,iv:12,mode:"GCM",type:"auth"},"aes-256-gcm":{cipher:"AES",key:256,iv:12,mode:"GCM",type:"auth"}}},{}],69:[function(e,t,r){(function(t){var i=e("buffer-xor");function n(e){return e._prev=e._cipher.encryptBlock(e._prev),e._prev}r.encrypt=function(e,r){for(;e._cache.length<r.length;)e._cache=t.concat([e._cache,n(e)]);var a=e._cache.slice(0,r.length);return e._cache=e._cache.slice(r.length),i(r,a)}}).call(this,e("buffer").Buffer)},{buffer:49,"buffer-xor":70}],70:[function(e,t,r){(function(e){t.exports=function(t,r){for(var i=Math.min(t.length,r.length),n=new e(i),a=0;a<i;++a)n[a]=t[a]^r[a];return n}}).call(this,e("buffer").Buffer)},{buffer:49}],71:[function(e,t,r){var i=e("safe-buffer").Buffer,n=e("stream").Transform,a=e("string_decoder").StringDecoder;function o(e){n.call(this),this.hashMode="string"==typeof e,this.hashMode?this[e]=this._finalOrDigest:this.final=this._finalOrDigest,this._final&&(this.__final=this._final,this._final=null),this._decoder=null,this._encoding=null}e("inherits")(o,n),o.prototype.update=function(e,t,r){"string"==typeof e&&(e=i.from(e,t));var n=this._update(e);return this.hashMode?this:(r&&(n=this._toString(n,r)),n)},o.prototype.setAutoPadding=function(){},o.prototype.getAuthTag=function(){throw new Error("trying to get auth tag in unsupported state")},o.prototype.setAuthTag=function(){throw new Error("trying to set auth tag in unsupported state")},o.prototype.setAAD=function(){throw new Error("trying to set aad in unsupported state")},o.prototype._transform=function(e,t,r){var i;try{this.hashMode?this._update(e):this.push(this._update(e))}catch(e){i=e}finally{r(i)}},o.prototype._flush=function(e){var t;try{this.push(this.__final())}catch(e){t=e}e(t)},o.prototype._finalOrDigest=function(e){var t=this.__final()||i.alloc(0);return e&&(t=this._toString(t,e,!0)),t},o.prototype._toString=function(e,t,r){if(this._decoder||(this._decoder=new a(t),this._encoding=t),this._encoding!==t)throw new Error("can't switch encodings");var i=this._decoder.write(e);return r&&(i+=this._decoder.end()),i},t.exports=o},{inherits:320,"safe-buffer":72,stream:341,string_decoder:342}],72:[function(e,t,r){var i=e("buffer"),n=i.Buffer;function a(e,t){for(var r in e)t[r]=e[r]}function o(e,t,r){return n(e,t,r)}n.from&&n.alloc&&n.allocUnsafe&&n.allocUnsafeSlow?t.exports=i:(a(i,r),r.Buffer=o),a(n,o),o.from=function(e,t,r){if("number"==typeof e)throw new TypeError("Argument must not be a number");return n(e,t,r)},o.alloc=function(e,t,r){if("number"!=typeof e)throw new TypeError("Argument must be a number");var i=n(e);return void 0!==t?"string"==typeof r?i.fill(t,r):i.fill(t):i.fill(0),i},o.allocUnsafe=function(e){if("number"!=typeof e)throw new TypeError("Argument must be a number");return n(e)},o.allocUnsafeSlow=function(e){if("number"!=typeof e)throw new TypeError("Argument must be a number");return i.SlowBuffer(e)}},{buffer:49}],73:[function(e,t,r){var i=e("./aes"),n=e("safe-buffer").Buffer,a=e("cipher-base");function o(e,t,r,o){a.call(this),this._cipher=new i.AES(t),this._prev=n.from(r),this._cache=n.allocUnsafe(0),this._secCache=n.allocUnsafe(0),this._decrypt=o,this._mode=e}e("inherits")(o,a),o.prototype._update=function(e){return this._mode.encrypt(this,e,this._decrypt)},o.prototype._final=function(){this._cipher.scrub()},t.exports=o},{"./aes":54,"cipher-base":71,inherits:320,"safe-buffer":72}],74:[function(e,t,r){var i=e("cipher-base"),n=e("des.js"),a=e("inherits"),o=e("safe-buffer").Buffer,s={"des-ede3-cbc":n.CBC.instantiate(n.EDE),"des-ede3":n.EDE,"des-ede-cbc":n.CBC.instantiate(n.EDE),"des-ede":n.EDE,"des-cbc":n.CBC.instantiate(n.DES),"des-ecb":n.DES};function f(e){i.call(this);var t,r=e.mode.toLowerCase(),n=s[r];t=e.decrypt?"decrypt":"encrypt";var a=e.key;o.isBuffer(a)||(a=o.from(a)),"des-ede"!==r&&"des-ede-cbc"!==r||(a=o.concat([a,a.slice(0,8)]));var f=e.iv;o.isBuffer(f)||(f=o.from(f)),this._des=n.create({key:a,iv:f,type:t})}s.des=s["des-cbc"],s.des3=s["des-ede3-cbc"],t.exports=f,a(f,i),f.prototype._update=function(e){return o.from(this._des.update(e))},f.prototype._final=function(){return o.from(this._des.final())}},{"cipher-base":76,"des.js":77,inherits:320,"safe-buffer":84}],75:[function(e,t,r){r["des-ecb"]={key:8,iv:0},r["des-cbc"]=r.des={key:8,iv:8},r["des-ede3-cbc"]=r.des3={key:24,iv:8},r["des-ede3"]={key:24,iv:0},r["des-ede-cbc"]={key:16,iv:8},r["des-ede"]={key:16,iv:0}},{}],76:[function(e,t,r){arguments[4][71][0].apply(r,arguments)},{dup:71,inherits:320,"safe-buffer":84,stream:341,string_decoder:342}],77:[function(e,t,r){"use strict";r.utils=e("./des/utils"),r.Cipher=e("./des/cipher"),r.DES=e("./des/des"),r.CBC=e("./des/cbc"),r.EDE=e("./des/ede")},{"./des/cbc":78,"./des/cipher":79,"./des/des":80,"./des/ede":81,"./des/utils":82}],78:[function(e,t,r){"use strict";var i=e("minimalistic-assert"),n=e("inherits"),a={};function o(e){i.equal(e.length,8,"Invalid IV length"),this.iv=new Array(8);for(var t=0;t<this.iv.length;t++)this.iv[t]=e[t]}r.instantiate=function(e){function t(t){e.call(this,t),this._cbcInit()}n(t,e);for(var r=Object.keys(a),i=0;i<r.length;i++){var o=r[i];t.prototype[o]=a[o]}return t.create=function(e){return new t(e)},t},a._cbcInit=function(){var e=new o(this.options.iv);this._cbcState=e},a._update=function(e,t,r,i){var n=this._cbcState,a=this.constructor.super_.prototype,o=n.iv;if("encrypt"===this.type){for(var s=0;s<this.blockSize;s++)o[s]^=e[t+s];a._update.call(this,o,0,r,i);for(s=0;s<this.blockSize;s++)o[s]=r[i+s]}else{a._update.call(this,e,t,r,i);for(s=0;s<this.blockSize;s++)r[i+s]^=o[s];for(s=0;s<this.blockSize;s++)o[s]=e[t+s]}}},{inherits:320,"minimalistic-assert":83}],79:[function(e,t,r){"use strict";var i=e("minimalistic-assert");function n(e){this.options=e,this.type=this.options.type,this.blockSize=8,this._init(),this.buffer=new Array(this.blockSize),this.bufferOff=0}t.exports=n,n.prototype._init=function(){},n.prototype.update=function(e){return 0===e.length?[]:"decrypt"===this.type?this._updateDecrypt(e):this._updateEncrypt(e)},n.prototype._buffer=function(e,t){for(var r=Math.min(this.buffer.length-this.bufferOff,e.length-t),i=0;i<r;i++)this.buffer[this.bufferOff+i]=e[t+i];return this.bufferOff+=r,r},n.prototype._flushBuffer=function(e,t){return this._update(this.buffer,0,e,t),this.bufferOff=0,this.blockSize},n.prototype._updateEncrypt=function(e){var t=0,r=0,i=(this.bufferOff+e.length)/this.blockSize|0,n=new Array(i*this.blockSize);0!==this.bufferOff&&(t+=this._buffer(e,t),this.bufferOff===this.buffer.length&&(r+=this._flushBuffer(n,r)));for(var a=e.length-(e.length-t)%this.blockSize;t<a;t+=this.blockSize)this._update(e,t,n,r),r+=this.blockSize;for(;t<e.length;t++,this.bufferOff++)this.buffer[this.bufferOff]=e[t];return n},n.prototype._updateDecrypt=function(e){for(var t=0,r=0,i=Math.ceil((this.bufferOff+e.length)/this.blockSize)-1,n=new Array(i*this.blockSize);i>0;i--)t+=this._buffer(e,t),r+=this._flushBuffer(n,r);return t+=this._buffer(e,t),n},n.prototype.final=function(e){var t,r;return e&&(t=this.update(e)),r="encrypt"===this.type?this._finalEncrypt():this._finalDecrypt(),t?t.concat(r):r},n.prototype._pad=function(e,t){if(0===t)return!1;for(;t<e.length;)e[t++]=0;return!0},n.prototype._finalEncrypt=function(){if(!this._pad(this.buffer,this.bufferOff))return[];var e=new Array(this.blockSize);return this._update(this.buffer,0,e,0),e},n.prototype._unpad=function(e){return e},n.prototype._finalDecrypt=function(){i.equal(this.bufferOff,this.blockSize,"Not enough data to decrypt");var e=new Array(this.blockSize);return this._flushBuffer(e,0),this._unpad(e)}},{"minimalistic-assert":83}],80:[function(e,t,r){"use strict";var i=e("minimalistic-assert"),n=e("inherits"),a=e("../des"),o=a.utils,s=a.Cipher;function f(){this.tmp=new Array(2),this.keys=null}function c(e){s.call(this,e);var t=new f;this._desState=t,this.deriveKeys(t,e.key)}n(c,s),t.exports=c,c.create=function(e){return new c(e)};var u=[1,1,2,2,2,2,2,2,1,2,2,2,2,2,2,1];c.prototype.deriveKeys=function(e,t){e.keys=new Array(32),i.equal(t.length,this.blockSize,"Invalid key length");var r=o.readUInt32BE(t,0),n=o.readUInt32BE(t,4);o.pc1(r,n,e.tmp,0),r=e.tmp[0],n=e.tmp[1];for(var a=0;a<e.keys.length;a+=2){var s=u[a>>>1];r=o.r28shl(r,s),n=o.r28shl(n,s),o.pc2(r,n,e.keys,a)}},c.prototype._update=function(e,t,r,i){var n=this._desState,a=o.readUInt32BE(e,t),s=o.readUInt32BE(e,t+4);o.ip(a,s,n.tmp,0),a=n.tmp[0],s=n.tmp[1],"encrypt"===this.type?this._encrypt(n,a,s,n.tmp,0):this._decrypt(n,a,s,n.tmp,0),a=n.tmp[0],s=n.tmp[1],o.writeUInt32BE(r,a,i),o.writeUInt32BE(r,s,i+4)},c.prototype._pad=function(e,t){for(var r=e.length-t,i=t;i<e.length;i++)e[i]=r;return!0},c.prototype._unpad=function(e){for(var t=e[e.length-1],r=e.length-t;r<e.length;r++)i.equal(e[r],t);return e.slice(0,e.length-t)},c.prototype._encrypt=function(e,t,r,i,n){for(var a=t,s=r,f=0;f<e.keys.length;f+=2){var c=e.keys[f],u=e.keys[f+1];o.expand(s,e.tmp,0),c^=e.tmp[0],u^=e.tmp[1];var h=o.substitute(c,u),d=s;s=(a^o.permute(h))>>>0,a=d}o.rip(s,a,i,n)},c.prototype._decrypt=function(e,t,r,i,n){for(var a=r,s=t,f=e.keys.length-2;f>=0;f-=2){var c=e.keys[f],u=e.keys[f+1];o.expand(a,e.tmp,0),c^=e.tmp[0],u^=e.tmp[1];var h=o.substitute(c,u),d=a;a=(s^o.permute(h))>>>0,s=d}o.rip(a,s,i,n)}},{"../des":77,inherits:320,"minimalistic-assert":83}],81:[function(e,t,r){"use strict";var i=e("minimalistic-assert"),n=e("inherits"),a=e("../des"),o=a.Cipher,s=a.DES;function f(e,t){i.equal(t.length,24,"Invalid key length");var r=t.slice(0,8),n=t.slice(8,16),a=t.slice(16,24);this.ciphers="encrypt"===e?[s.create({type:"encrypt",key:r}),s.create({type:"decrypt",key:n}),s.create({type:"encrypt",key:a})]:[s.create({type:"decrypt",key:a}),s.create({type:"encrypt",key:n}),s.create({type:"decrypt",key:r})]}function c(e){o.call(this,e);var t=new f(this.type,this.options.key);this._edeState=t}n(c,o),t.exports=c,c.create=function(e){return new c(e)},c.prototype._update=function(e,t,r,i){var n=this._edeState;n.ciphers[0]._update(e,t,r,i),n.ciphers[1]._update(r,i,r,i),n.ciphers[2]._update(r,i,r,i)},c.prototype._pad=s.prototype._pad,c.prototype._unpad=s.prototype._unpad},{"../des":77,inherits:320,"minimalistic-assert":83}],82:[function(e,t,r){"use strict";r.readUInt32BE=function(e,t){return(e[0+t]<<24|e[1+t]<<16|e[2+t]<<8|e[3+t])>>>0},r.writeUInt32BE=function(e,t,r){e[0+r]=t>>>24,e[1+r]=t>>>16&255,e[2+r]=t>>>8&255,e[3+r]=255&t},r.ip=function(e,t,r,i){for(var n=0,a=0,o=6;o>=0;o-=2){for(var s=0;s<=24;s+=8)n<<=1,n|=t>>>s+o&1;for(s=0;s<=24;s+=8)n<<=1,n|=e>>>s+o&1}for(o=6;o>=0;o-=2){for(s=1;s<=25;s+=8)a<<=1,a|=t>>>s+o&1;for(s=1;s<=25;s+=8)a<<=1,a|=e>>>s+o&1}r[i+0]=n>>>0,r[i+1]=a>>>0},r.rip=function(e,t,r,i){for(var n=0,a=0,o=0;o<4;o++)for(var s=24;s>=0;s-=8)n<<=1,n|=t>>>s+o&1,n<<=1,n|=e>>>s+o&1;for(o=4;o<8;o++)for(s=24;s>=0;s-=8)a<<=1,a|=t>>>s+o&1,a<<=1,a|=e>>>s+o&1;r[i+0]=n>>>0,r[i+1]=a>>>0},r.pc1=function(e,t,r,i){for(var n=0,a=0,o=7;o>=5;o--){for(var s=0;s<=24;s+=8)n<<=1,n|=t>>s+o&1;for(s=0;s<=24;s+=8)n<<=1,n|=e>>s+o&1}for(s=0;s<=24;s+=8)n<<=1,n|=t>>s+o&1;for(o=1;o<=3;o++){for(s=0;s<=24;s+=8)a<<=1,a|=t>>s+o&1;for(s=0;s<=24;s+=8)a<<=1,a|=e>>s+o&1}for(s=0;s<=24;s+=8)a<<=1,a|=e>>s+o&1;r[i+0]=n>>>0,r[i+1]=a>>>0},r.r28shl=function(e,t){return e<<t&268435455|e>>>28-t};var i=[14,11,17,4,27,23,25,0,13,22,7,18,5,9,16,24,2,20,12,21,1,8,15,26,15,4,25,19,9,1,26,16,5,11,23,8,12,7,17,0,22,3,10,14,6,20,27,24];r.pc2=function(e,t,r,n){for(var a=0,o=0,s=i.length>>>1,f=0;f<s;f++)a<<=1,a|=e>>>i[f]&1;for(f=s;f<i.length;f++)o<<=1,o|=t>>>i[f]&1;r[n+0]=a>>>0,r[n+1]=o>>>0},r.expand=function(e,t,r){var i=0,n=0;i=(1&e)<<5|e>>>27;for(var a=23;a>=15;a-=4)i<<=6,i|=e>>>a&63;for(a=11;a>=3;a-=4)n|=e>>>a&63,n<<=6;n|=(31&e)<<1|e>>>31,t[r+0]=i>>>0,t[r+1]=n>>>0};var n=[14,0,4,15,13,7,1,4,2,14,15,2,11,13,8,1,3,10,10,6,6,12,12,11,5,9,9,5,0,3,7,8,4,15,1,12,14,8,8,2,13,4,6,9,2,1,11,7,15,5,12,11,9,3,7,14,3,10,10,0,5,6,0,13,15,3,1,13,8,4,14,7,6,15,11,2,3,8,4,14,9,12,7,0,2,1,13,10,12,6,0,9,5,11,10,5,0,13,14,8,7,10,11,1,10,3,4,15,13,4,1,2,5,11,8,6,12,7,6,12,9,0,3,5,2,14,15,9,10,13,0,7,9,0,14,9,6,3,3,4,15,6,5,10,1,2,13,8,12,5,7,14,11,12,4,11,2,15,8,1,13,1,6,10,4,13,9,0,8,6,15,9,3,8,0,7,11,4,1,15,2,14,12,3,5,11,10,5,14,2,7,12,7,13,13,8,14,11,3,5,0,6,6,15,9,0,10,3,1,4,2,7,8,2,5,12,11,1,12,10,4,14,15,9,10,3,6,15,9,0,0,6,12,10,11,1,7,13,13,8,15,9,1,4,3,5,14,11,5,12,2,7,8,2,4,14,2,14,12,11,4,2,1,12,7,4,10,7,11,13,6,1,8,5,5,0,3,15,15,10,13,3,0,9,14,8,9,6,4,11,2,8,1,12,11,7,10,1,13,14,7,2,8,13,15,6,9,15,12,0,5,9,6,10,3,4,0,5,14,3,12,10,1,15,10,4,15,2,9,7,2,12,6,9,8,5,0,6,13,1,3,13,4,14,14,0,7,11,5,3,11,8,9,4,14,3,15,2,5,12,2,9,8,5,12,15,3,10,7,11,0,14,4,1,10,7,1,6,13,0,11,8,6,13,4,13,11,0,2,11,14,7,15,4,0,9,8,1,13,10,3,14,12,3,9,5,7,12,5,2,10,15,6,8,1,6,1,6,4,11,11,13,13,8,12,1,3,4,7,10,14,7,10,9,15,5,6,0,8,15,0,14,5,2,9,3,2,12,13,1,2,15,8,13,4,8,6,10,15,3,11,7,1,4,10,12,9,5,3,6,14,11,5,0,0,14,12,9,7,2,7,2,11,1,4,14,1,7,9,4,12,10,14,8,2,13,0,15,6,12,10,9,13,0,15,3,3,5,5,6,8,11];r.substitute=function(e,t){for(var r=0,i=0;i<4;i++){r<<=4,r|=n[64*i+(e>>>18-6*i&63)]}for(i=0;i<4;i++){r<<=4,r|=n[256+64*i+(t>>>18-6*i&63)]}return r>>>0};var a=[16,25,12,11,3,20,4,15,31,17,9,6,27,14,1,22,30,24,8,18,0,5,29,23,13,19,2,26,10,21,28,7];r.permute=function(e){for(var t=0,r=0;r<a.length;r++)t<<=1,t|=e>>>a[r]&1;return t>>>0},r.padSplit=function(e,t,r){for(var i=e.toString(2);i.length<t;)i="0"+i;for(var n=[],a=0;a<t;a+=r)n.push(i.slice(a,a+r));return n.join(" ")}},{}],83:[function(e,t,r){function i(e,t){if(!e)throw new Error(t||"Assertion failed")}t.exports=i,i.equal=function(e,t,r){if(e!=t)throw new Error(r||"Assertion failed: "+e+" != "+t)}},{}],84:[function(e,t,r){arguments[4][72][0].apply(r,arguments)},{buffer:49,dup:72}],85:[function(e,t,r){var i=e("safe-buffer").Buffer,n=e("md5.js");t.exports=function(e,t,r,a){if(i.isBuffer(e)||(e=i.from(e,"binary")),t&&(i.isBuffer(t)||(t=i.from(t,"binary")),8!==t.length))throw new RangeError("salt should be Buffer with 8 byte length");for(var o=r/8,s=i.alloc(o),f=i.alloc(a||0),c=i.alloc(0);o>0||a>0;){var u=new n;u.update(c),u.update(e),t&&u.update(t),c=u.digest();var h=0;if(o>0){var d=s.length-o;h=Math.min(o,c.length),c.copy(s,d,0,h),o-=h}if(h<c.length&&a>0){var l=f.length-a,p=Math.min(a,c.length-h);c.copy(f,l,h,h+p),a-=p}}return c.fill(0),{key:s,iv:f}}},{"md5.js":86,"safe-buffer":88}],86:[function(e,t,r){(function(r){"use strict";var i=e("inherits"),n=e("hash-base"),a=new Array(16);function o(){n.call(this,64),this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878}function s(e,t){return e<<t|e>>>32-t}function f(e,t,r,i,n,a,o){return s(e+(t&r|~t&i)+n+a|0,o)+t|0}function c(e,t,r,i,n,a,o){return s(e+(t&i|r&~i)+n+a|0,o)+t|0}function u(e,t,r,i,n,a,o){return s(e+(t^r^i)+n+a|0,o)+t|0}function h(e,t,r,i,n,a,o){return s(e+(r^(t|~i))+n+a|0,o)+t|0}i(o,n),o.prototype._update=function(){for(var e=a,t=0;t<16;++t)e[t]=this._block.readInt32LE(4*t);var r=this._a,i=this._b,n=this._c,o=this._d;r=f(r,i,n,o,e[0],3614090360,7),o=f(o,r,i,n,e[1],3905402710,12),n=f(n,o,r,i,e[2],606105819,17),i=f(i,n,o,r,e[3],3250441966,22),r=f(r,i,n,o,e[4],4118548399,7),o=f(o,r,i,n,e[5],1200080426,12),n=f(n,o,r,i,e[6],2821735955,17),i=f(i,n,o,r,e[7],4249261313,22),r=f(r,i,n,o,e[8],1770035416,7),o=f(o,r,i,n,e[9],2336552879,12),n=f(n,o,r,i,e[10],4294925233,17),i=f(i,n,o,r,e[11],2304563134,22),r=f(r,i,n,o,e[12],1804603682,7),o=f(o,r,i,n,e[13],4254626195,12),n=f(n,o,r,i,e[14],2792965006,17),r=c(r,i=f(i,n,o,r,e[15],1236535329,22),n,o,e[1],4129170786,5),o=c(o,r,i,n,e[6],3225465664,9),n=c(n,o,r,i,e[11],643717713,14),i=c(i,n,o,r,e[0],3921069994,20),r=c(r,i,n,o,e[5],3593408605,5),o=c(o,r,i,n,e[10],38016083,9),n=c(n,o,r,i,e[15],3634488961,14),i=c(i,n,o,r,e[4],3889429448,20),r=c(r,i,n,o,e[9],568446438,5),o=c(o,r,i,n,e[14],3275163606,9),n=c(n,o,r,i,e[3],4107603335,14),i=c(i,n,o,r,e[8],1163531501,20),r=c(r,i,n,o,e[13],2850285829,5),o=c(o,r,i,n,e[2],4243563512,9),n=c(n,o,r,i,e[7],1735328473,14),r=u(r,i=c(i,n,o,r,e[12],2368359562,20),n,o,e[5],4294588738,4),o=u(o,r,i,n,e[8],2272392833,11),n=u(n,o,r,i,e[11],1839030562,16),i=u(i,n,o,r,e[14],4259657740,23),r=u(r,i,n,o,e[1],2763975236,4),o=u(o,r,i,n,e[4],1272893353,11),n=u(n,o,r,i,e[7],4139469664,16),i=u(i,n,o,r,e[10],3200236656,23),r=u(r,i,n,o,e[13],681279174,4),o=u(o,r,i,n,e[0],3936430074,11),n=u(n,o,r,i,e[3],3572445317,16),i=u(i,n,o,r,e[6],76029189,23),r=u(r,i,n,o,e[9],3654602809,4),o=u(o,r,i,n,e[12],3873151461,11),n=u(n,o,r,i,e[15],530742520,16),r=h(r,i=u(i,n,o,r,e[2],3299628645,23),n,o,e[0],4096336452,6),o=h(o,r,i,n,e[7],1126891415,10),n=h(n,o,r,i,e[14],2878612391,15),i=h(i,n,o,r,e[5],4237533241,21),r=h(r,i,n,o,e[12],1700485571,6),o=h(o,r,i,n,e[3],2399980690,10),n=h(n,o,r,i,e[10],4293915773,15),i=h(i,n,o,r,e[1],2240044497,21),r=h(r,i,n,o,e[8],1873313359,6),o=h(o,r,i,n,e[15],4264355552,10),n=h(n,o,r,i,e[6],2734768916,15),i=h(i,n,o,r,e[13],1309151649,21),r=h(r,i,n,o,e[4],4149444226,6),o=h(o,r,i,n,e[11],3174756917,10),n=h(n,o,r,i,e[2],718787259,15),i=h(i,n,o,r,e[9],3951481745,21),this._a=this._a+r|0,this._b=this._b+i|0,this._c=this._c+n|0,this._d=this._d+o|0},o.prototype._digest=function(){this._block[this._blockOffset++]=128,this._blockOffset>56&&(this._block.fill(0,this._blockOffset,64),this._update(),this._blockOffset=0),this._block.fill(0,this._blockOffset,56),this._block.writeUInt32LE(this._length[0],56),this._block.writeUInt32LE(this._length[1],60),this._update();var e=new r(16);return e.writeInt32LE(this._a,0),e.writeInt32LE(this._b,4),e.writeInt32LE(this._c,8),e.writeInt32LE(this._d,12),e},t.exports=o}).call(this,e("buffer").Buffer)},{buffer:49,"hash-base":87,inherits:320}],87:[function(e,t,r){"use strict";var i=e("safe-buffer").Buffer,n=e("stream").Transform;function a(e){n.call(this),this._block=i.allocUnsafe(e),this._blockSize=e,this._blockOffset=0,this._length=[0,0,0,0],this._finalized=!1}e("inherits")(a,n),a.prototype._transform=function(e,t,r){var i=null;try{this.update(e,t)}catch(e){i=e}r(i)},a.prototype._flush=function(e){var t=null;try{this.push(this.digest())}catch(e){t=e}e(t)},a.prototype.update=function(e,t){if(function(e,t){if(!i.isBuffer(e)&&"string"!=typeof e)throw new TypeError(t+" must be a string or a buffer")}(e,"Data"),this._finalized)throw new Error("Digest already called");i.isBuffer(e)||(e=i.from(e,t));for(var r=this._block,n=0;this._blockOffset+e.length-n>=this._blockSize;){for(var a=this._blockOffset;a<this._blockSize;)r[a++]=e[n++];this._update(),this._blockOffset=0}for(;n<e.length;)r[this._blockOffset++]=e[n++];for(var o=0,s=8*e.length;s>0;++o)this._length[o]+=s,(s=this._length[o]/4294967296|0)>0&&(this._length[o]-=4294967296*s);return this},a.prototype._update=function(){throw new Error("_update is not implemented")},a.prototype.digest=function(e){if(this._finalized)throw new Error("Digest already called");this._finalized=!0;var t=this._digest();void 0!==e&&(t=t.toString(e)),this._block.fill(0),this._blockOffset=0;for(var r=0;r<4;++r)this._length[r]=0;return t},a.prototype._digest=function(){throw new Error("_digest is not implemented")},t.exports=a},{inherits:320,"safe-buffer":88,stream:341}],88:[function(e,t,r){arguments[4][72][0].apply(r,arguments)},{buffer:49,dup:72}],89:[function(e,t,r){t.exports=e("./browser/algorithms.json")},{"./browser/algorithms.json":90}],90:[function(e,t,r){t.exports={sha224WithRSAEncryption:{sign:"rsa",hash:"sha224",id:"302d300d06096086480165030402040500041c"},"RSA-SHA224":{sign:"ecdsa/rsa",hash:"sha224",id:"302d300d06096086480165030402040500041c"},sha256WithRSAEncryption:{sign:"rsa",hash:"sha256",id:"3031300d060960864801650304020105000420"},"RSA-SHA256":{sign:"ecdsa/rsa",hash:"sha256",id:"3031300d060960864801650304020105000420"},sha384WithRSAEncryption:{sign:"rsa",hash:"sha384",id:"3041300d060960864801650304020205000430"},"RSA-SHA384":{sign:"ecdsa/rsa",hash:"sha384",id:"3041300d060960864801650304020205000430"},sha512WithRSAEncryption:{sign:"rsa",hash:"sha512",id:"3051300d060960864801650304020305000440"},"RSA-SHA512":{sign:"ecdsa/rsa",hash:"sha512",id:"3051300d060960864801650304020305000440"},"RSA-SHA1":{sign:"rsa",hash:"sha1",id:"3021300906052b0e03021a05000414"},"ecdsa-with-SHA1":{sign:"ecdsa",hash:"sha1",id:""},sha256:{sign:"ecdsa",hash:"sha256",id:""},sha224:{sign:"ecdsa",hash:"sha224",id:""},sha384:{sign:"ecdsa",hash:"sha384",id:""},sha512:{sign:"ecdsa",hash:"sha512",id:""},"DSA-SHA":{sign:"dsa",hash:"sha1",id:""},"DSA-SHA1":{sign:"dsa",hash:"sha1",id:""},DSA:{sign:"dsa",hash:"sha1",id:""},"DSA-WITH-SHA224":{sign:"dsa",hash:"sha224",id:""},"DSA-SHA224":{sign:"dsa",hash:"sha224",id:""},"DSA-WITH-SHA256":{sign:"dsa",hash:"sha256",id:""},"DSA-SHA256":{sign:"dsa",hash:"sha256",id:""},"DSA-WITH-SHA384":{sign:"dsa",hash:"sha384",id:""},"DSA-SHA384":{sign:"dsa",hash:"sha384",id:""},"DSA-WITH-SHA512":{sign:"dsa",hash:"sha512",id:""},"DSA-SHA512":{sign:"dsa",hash:"sha512",id:""},"DSA-RIPEMD160":{sign:"dsa",hash:"rmd160",id:""},ripemd160WithRSA:{sign:"rsa",hash:"rmd160",id:"3021300906052b2403020105000414"},"RSA-RIPEMD160":{sign:"rsa",hash:"rmd160",id:"3021300906052b2403020105000414"},md5WithRSAEncryption:{sign:"rsa",hash:"md5",id:"3020300c06082a864886f70d020505000410"},"RSA-MD5":{sign:"rsa",hash:"md5",id:"3020300c06082a864886f70d020505000410"}}},{}],91:[function(e,t,r){t.exports={"1.3.132.0.10":"secp256k1","1.3.132.0.33":"p224","1.2.840.10045.3.1.1":"p192","1.2.840.10045.3.1.7":"p256","1.3.132.0.34":"p384","1.3.132.0.35":"p521"}},{}],92:[function(e,t,r){(function(r){var i=e("create-hash"),n=e("stream"),a=e("inherits"),o=e("./sign"),s=e("./verify"),f=e("./algorithms.json");function c(e){n.Writable.call(this);var t=f[e];if(!t)throw new Error("Unknown message digest");this._hashType=t.hash,this._hash=i(t.hash),this._tag=t.id,this._signType=t.sign}function u(e){n.Writable.call(this);var t=f[e];if(!t)throw new Error("Unknown message digest");this._hash=i(t.hash),this._tag=t.id,this._signType=t.sign}function h(e){return new c(e)}function d(e){return new u(e)}Object.keys(f).forEach(function(e){f[e].id=new r(f[e].id,"hex"),f[e.toLowerCase()]=f[e]}),a(c,n.Writable),c.prototype._write=function(e,t,r){this._hash.update(e),r()},c.prototype.update=function(e,t){return"string"==typeof e&&(e=new r(e,t)),this._hash.update(e),this},c.prototype.sign=function(e,t){this.end();var r=this._hash.digest(),i=o(r,e,this._hashType,this._signType,this._tag);return t?i.toString(t):i},a(u,n.Writable),u.prototype._write=function(e,t,r){this._hash.update(e),r()},u.prototype.update=function(e,t){return"string"==typeof e&&(e=new r(e,t)),this._hash.update(e),this},u.prototype.verify=function(e,t,i){"string"==typeof t&&(t=new r(t,i)),this.end();var n=this._hash.digest();return s(t,n,e,this._signType,this._tag)},t.exports={Sign:h,Verify:d,createSign:h,createVerify:d}}).call(this,e("buffer").Buffer)},{"./algorithms.json":90,"./sign":93,"./verify":94,buffer:49,"create-hash":207,inherits:320,stream:341}],93:[function(e,t,r){(function(r){var i=e("create-hmac"),n=e("browserify-rsa"),a=e("elliptic").ec,o=e("bn.js"),s=e("parse-asn1"),f=e("./curves.json");function c(e,t,n,a){if((e=new r(e.toArray())).length<t.byteLength()){var o=new r(t.byteLength()-e.length);o.fill(0),e=r.concat([o,e])}var s=n.length,f=function(e,t){e=(e=u(e,t)).mod(t);var i=new r(e.toArray());if(i.length<t.byteLength()){var n=new r(t.byteLength()-i.length);n.fill(0),i=r.concat([n,i])}return i}(n,t),c=new r(s);c.fill(1);var h=new r(s);return h.fill(0),h=i(a,h).update(c).update(new r([0])).update(e).update(f).digest(),c=i(a,h).update(c).digest(),{k:h=i(a,h).update(c).update(new r([1])).update(e).update(f).digest(),v:c=i(a,h).update(c).digest()}}function u(e,t){var r=new o(e),i=(e.length<<3)-t.bitLength();return i>0&&r.ishrn(i),r}function h(e,t,n){var a,o;do{for(a=new r(0);8*a.length<e.bitLength();)t.v=i(n,t.k).update(t.v).digest(),a=r.concat([a,t.v]);o=u(a,e),t.k=i(n,t.k).update(t.v).update(new r([0])).digest(),t.v=i(n,t.k).update(t.v).digest()}while(-1!==o.cmp(e));return o}function d(e,t,r,i){return e.toRed(o.mont(r)).redPow(t).fromRed().mod(i)}t.exports=function(e,t,i,l,p){var b=s(t);if(b.curve){if("ecdsa"!==l&&"ecdsa/rsa"!==l)throw new Error("wrong private key type");return function(e,t){var i=f[t.curve.join(".")];if(!i)throw new Error("unknown curve "+t.curve.join("."));var n=new a(i).keyFromPrivate(t.privateKey).sign(e);return new r(n.toDER())}(e,b)}if("dsa"===b.type){if("dsa"!==l)throw new Error("wrong private key type");return function(e,t,i){var n,a=t.params.priv_key,s=t.params.p,f=t.params.q,l=t.params.g,p=new o(0),b=u(e,f).mod(f),m=!1,g=c(a,f,e,i);for(;!1===m;)n=h(f,g,i),p=d(l,n,s,f),0===(m=n.invm(f).imul(b.add(a.mul(p))).mod(f)).cmpn(0)&&(m=!1,p=new o(0));return function(e,t){e=e.toArray(),t=t.toArray(),128&e[0]&&(e=[0].concat(e));128&t[0]&&(t=[0].concat(t));var i=[48,e.length+t.length+4,2,e.length];return i=i.concat(e,[2,t.length],t),new r(i)}(p,m)}(e,b,i)}if("rsa"!==l&&"ecdsa/rsa"!==l)throw new Error("wrong private key type");e=r.concat([p,e]);for(var m=b.modulus.byteLength(),g=[0,1];e.length+g.length+1<m;)g.push(255);g.push(0);for(var v=-1;++v<e.length;)g.push(e[v]);return n(g,b)},t.exports.getKey=c,t.exports.makeKey=h}).call(this,e("buffer").Buffer)},{"./curves.json":91,"bn.js":95,"browserify-rsa":96,buffer:49,"create-hmac":226,elliptic:97,"parse-asn1":133}],94:[function(e,t,r){(function(r){var i=e("bn.js"),n=e("elliptic").ec,a=e("parse-asn1"),o=e("./curves.json");function s(e,t){if(e.cmpn(0)<=0)throw new Error("invalid sig");if(e.cmp(t)>=t)throw new Error("invalid sig")}t.exports=function(e,t,f,c,u){var h=a(f);if("ec"===h.type){if("ecdsa"!==c&&"ecdsa/rsa"!==c)throw new Error("wrong public key type");return function(e,t,r){var i=o[r.data.algorithm.curve.join(".")];if(!i)throw new Error("unknown curve "+r.data.algorithm.curve.join("."));var a=new n(i),s=r.data.subjectPrivateKey.data;return a.verify(t,e,s)}(e,t,h)}if("dsa"===h.type){if("dsa"!==c)throw new Error("wrong public key type");return function(e,t,r){var n=r.data.p,o=r.data.q,f=r.data.g,c=r.data.pub_key,u=a.signature.decode(e,"der"),h=u.s,d=u.r;s(h,o),s(d,o);var l=i.mont(n),p=h.invm(o);return 0===f.toRed(l).redPow(new i(t).mul(p).mod(o)).fromRed().mul(c.toRed(l).redPow(d.mul(p).mod(o)).fromRed()).mod(n).mod(o).cmp(d)}(e,t,h)}if("rsa"!==c&&"ecdsa/rsa"!==c)throw new Error("wrong public key type");t=r.concat([u,t]);for(var d=h.modulus.byteLength(),l=[1],p=0;t.length+l.length+2<d;)l.push(255),p++;l.push(0);for(var b=-1;++b<t.length;)l.push(t[b]);l=new r(l);var m=i.mont(h.modulus);e=(e=new i(e).toRed(m)).redPow(new i(h.publicExponent)),e=new r(e.fromRed().toArray());var g=p<8?1:0;for(d=Math.min(e.length,l.length),e.length!==l.length&&(g=1),b=-1;++b<d;)g|=e[b]^l[b];return 0===g}}).call(this,e("buffer").Buffer)},{"./curves.json":91,"bn.js":95,buffer:49,elliptic:97,"parse-asn1":133}],95:[function(e,t,r){!function(t,r){"use strict";function i(e,t){if(!e)throw new Error(t||"Assertion failed")}function n(e,t){e.super_=t;var r=function(){};r.prototype=t.prototype,e.prototype=new r,e.prototype.constructor=e}function a(e,t,r){if(a.isBN(e))return e;this.negative=0,this.words=null,this.length=0,this.red=null,null!==e&&("le"!==t&&"be"!==t||(r=t,t=10),this._init(e||0,t||10,r||"be"))}var o;"object"==typeof t?t.exports=a:r.BN=a,a.BN=a,a.wordSize=26;try{o=e("buffer").Buffer}catch(e){}function s(e,t,r){for(var i=0,n=Math.min(e.length,r),a=t;a<n;a++){var o=e.charCodeAt(a)-48;i<<=4,i|=o>=49&&o<=54?o-49+10:o>=17&&o<=22?o-17+10:15&o}return i}function f(e,t,r,i){for(var n=0,a=Math.min(e.length,r),o=t;o<a;o++){var s=e.charCodeAt(o)-48;n*=i,n+=s>=49?s-49+10:s>=17?s-17+10:s}return n}a.isBN=function(e){return e instanceof a||null!==e&&"object"==typeof e&&e.constructor.wordSize===a.wordSize&&Array.isArray(e.words)},a.max=function(e,t){return e.cmp(t)>0?e:t},a.min=function(e,t){return e.cmp(t)<0?e:t},a.prototype._init=function(e,t,r){if("number"==typeof e)return this._initNumber(e,t,r);if("object"==typeof e)return this._initArray(e,t,r);"hex"===t&&(t=16),i(t===(0|t)&&t>=2&&t<=36);var n=0;"-"===(e=e.toString().replace(/\s+/g,""))[0]&&n++,16===t?this._parseHex(e,n):this._parseBase(e,t,n),"-"===e[0]&&(this.negative=1),this.strip(),"le"===r&&this._initArray(this.toArray(),t,r)},a.prototype._initNumber=function(e,t,r){e<0&&(this.negative=1,e=-e),e<67108864?(this.words=[67108863&e],this.length=1):e<4503599627370496?(this.words=[67108863&e,e/67108864&67108863],this.length=2):(i(e<9007199254740992),this.words=[67108863&e,e/67108864&67108863,1],this.length=3),"le"===r&&this._initArray(this.toArray(),t,r)},a.prototype._initArray=function(e,t,r){if(i("number"==typeof e.length),e.length<=0)return this.words=[0],this.length=1,this;this.length=Math.ceil(e.length/3),this.words=new Array(this.length);for(var n=0;n<this.length;n++)this.words[n]=0;var a,o,s=0;if("be"===r)for(n=e.length-1,a=0;n>=0;n-=3)o=e[n]|e[n-1]<<8|e[n-2]<<16,this.words[a]|=o<<s&67108863,this.words[a+1]=o>>>26-s&67108863,(s+=24)>=26&&(s-=26,a++);else if("le"===r)for(n=0,a=0;n<e.length;n+=3)o=e[n]|e[n+1]<<8|e[n+2]<<16,this.words[a]|=o<<s&67108863,this.words[a+1]=o>>>26-s&67108863,(s+=24)>=26&&(s-=26,a++);return this.strip()},a.prototype._parseHex=function(e,t){this.length=Math.ceil((e.length-t)/6),this.words=new Array(this.length);for(var r=0;r<this.length;r++)this.words[r]=0;var i,n,a=0;for(r=e.length-6,i=0;r>=t;r-=6)n=s(e,r,r+6),this.words[i]|=n<<a&67108863,this.words[i+1]|=n>>>26-a&4194303,(a+=24)>=26&&(a-=26,i++);r+6!==t&&(n=s(e,t,r+6),this.words[i]|=n<<a&67108863,this.words[i+1]|=n>>>26-a&4194303),this.strip()},a.prototype._parseBase=function(e,t,r){this.words=[0],this.length=1;for(var i=0,n=1;n<=67108863;n*=t)i++;i--,n=n/t|0;for(var a=e.length-r,o=a%i,s=Math.min(a,a-o)+r,c=0,u=r;u<s;u+=i)c=f(e,u,u+i,t),this.imuln(n),this.words[0]+c<67108864?this.words[0]+=c:this._iaddn(c);if(0!==o){var h=1;for(c=f(e,u,e.length,t),u=0;u<o;u++)h*=t;this.imuln(h),this.words[0]+c<67108864?this.words[0]+=c:this._iaddn(c)}},a.prototype.copy=function(e){e.words=new Array(this.length);for(var t=0;t<this.length;t++)e.words[t]=this.words[t];e.length=this.length,e.negative=this.negative,e.red=this.red},a.prototype.clone=function(){var e=new a(null);return this.copy(e),e},a.prototype._expand=function(e){for(;this.length<e;)this.words[this.length++]=0;return this},a.prototype.strip=function(){for(;this.length>1&&0===this.words[this.length-1];)this.length--;return this._normSign()},a.prototype._normSign=function(){return 1===this.length&&0===this.words[0]&&(this.negative=0),this},a.prototype.inspect=function(){return(this.red?"<BN-R: ":"<BN: ")+this.toString(16)+">"};var c=["","0","00","000","0000","00000","000000","0000000","00000000","000000000","0000000000","00000000000","000000000000","0000000000000","00000000000000","000000000000000","0000000000000000","00000000000000000","000000000000000000","0000000000000000000","00000000000000000000","000000000000000000000","0000000000000000000000","00000000000000000000000","000000000000000000000000","0000000000000000000000000"],u=[0,0,25,16,12,11,10,9,8,8,7,7,7,7,6,6,6,6,6,6,6,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5],h=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64e6,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,243e5,28629151,33554432,39135393,45435424,52521875,60466176];function d(e,t,r){r.negative=t.negative^e.negative;var i=e.length+t.length|0;r.length=i,i=i-1|0;var n=0|e.words[0],a=0|t.words[0],o=n*a,s=67108863&o,f=o/67108864|0;r.words[0]=s;for(var c=1;c<i;c++){for(var u=f>>>26,h=67108863&f,d=Math.min(c,t.length-1),l=Math.max(0,c-e.length+1);l<=d;l++){var p=c-l|0;u+=(o=(n=0|e.words[p])*(a=0|t.words[l])+h)/67108864|0,h=67108863&o}r.words[c]=0|h,f=0|u}return 0!==f?r.words[c]=0|f:r.length--,r.strip()}a.prototype.toString=function(e,t){var r;if(t=0|t||1,16===(e=e||10)||"hex"===e){r="";for(var n=0,a=0,o=0;o<this.length;o++){var s=this.words[o],f=(16777215&(s<<n|a)).toString(16);r=0!==(a=s>>>24-n&16777215)||o!==this.length-1?c[6-f.length]+f+r:f+r,(n+=2)>=26&&(n-=26,o--)}for(0!==a&&(r=a.toString(16)+r);r.length%t!=0;)r="0"+r;return 0!==this.negative&&(r="-"+r),r}if(e===(0|e)&&e>=2&&e<=36){var d=u[e],l=h[e];r="";var p=this.clone();for(p.negative=0;!p.isZero();){var b=p.modn(l).toString(e);r=(p=p.idivn(l)).isZero()?b+r:c[d-b.length]+b+r}for(this.isZero()&&(r="0"+r);r.length%t!=0;)r="0"+r;return 0!==this.negative&&(r="-"+r),r}i(!1,"Base should be between 2 and 36")},a.prototype.toNumber=function(){var e=this.words[0];return 2===this.length?e+=67108864*this.words[1]:3===this.length&&1===this.words[2]?e+=4503599627370496+67108864*this.words[1]:this.length>2&&i(!1,"Number can only safely store up to 53 bits"),0!==this.negative?-e:e},a.prototype.toJSON=function(){return this.toString(16)},a.prototype.toBuffer=function(e,t){return i(void 0!==o),this.toArrayLike(o,e,t)},a.prototype.toArray=function(e,t){return this.toArrayLike(Array,e,t)},a.prototype.toArrayLike=function(e,t,r){var n=this.byteLength(),a=r||Math.max(1,n);i(n<=a,"byte array longer than desired length"),i(a>0,"Requested array length <= 0"),this.strip();var o,s,f="le"===t,c=new e(a),u=this.clone();if(f){for(s=0;!u.isZero();s++)o=u.andln(255),u.iushrn(8),c[s]=o;for(;s<a;s++)c[s]=0}else{for(s=0;s<a-n;s++)c[s]=0;for(s=0;!u.isZero();s++)o=u.andln(255),u.iushrn(8),c[a-s-1]=o}return c},Math.clz32?a.prototype._countBits=function(e){return 32-Math.clz32(e)}:a.prototype._countBits=function(e){var t=e,r=0;return t>=4096&&(r+=13,t>>>=13),t>=64&&(r+=7,t>>>=7),t>=8&&(r+=4,t>>>=4),t>=2&&(r+=2,t>>>=2),r+t},a.prototype._zeroBits=function(e){if(0===e)return 26;var t=e,r=0;return 0==(8191&t)&&(r+=13,t>>>=13),0==(127&t)&&(r+=7,t>>>=7),0==(15&t)&&(r+=4,t>>>=4),0==(3&t)&&(r+=2,t>>>=2),0==(1&t)&&r++,r},a.prototype.bitLength=function(){var e=this.words[this.length-1],t=this._countBits(e);return 26*(this.length-1)+t},a.prototype.zeroBits=function(){if(this.isZero())return 0;for(var e=0,t=0;t<this.length;t++){var r=this._zeroBits(this.words[t]);if(e+=r,26!==r)break}return e},a.prototype.byteLength=function(){return Math.ceil(this.bitLength()/8)},a.prototype.toTwos=function(e){return 0!==this.negative?this.abs().inotn(e).iaddn(1):this.clone()},a.prototype.fromTwos=function(e){return this.testn(e-1)?this.notn(e).iaddn(1).ineg():this.clone()},a.prototype.isNeg=function(){return 0!==this.negative},a.prototype.neg=function(){return this.clone().ineg()},a.prototype.ineg=function(){return this.isZero()||(this.negative^=1),this},a.prototype.iuor=function(e){for(;this.length<e.length;)this.words[this.length++]=0;for(var t=0;t<e.length;t++)this.words[t]=this.words[t]|e.words[t];return this.strip()},a.prototype.ior=function(e){return i(0==(this.negative|e.negative)),this.iuor(e)},a.prototype.or=function(e){return this.length>e.length?this.clone().ior(e):e.clone().ior(this)},a.prototype.uor=function(e){return this.length>e.length?this.clone().iuor(e):e.clone().iuor(this)},a.prototype.iuand=function(e){var t;t=this.length>e.length?e:this;for(var r=0;r<t.length;r++)this.words[r]=this.words[r]&e.words[r];return this.length=t.length,this.strip()},a.prototype.iand=function(e){return i(0==(this.negative|e.negative)),this.iuand(e)},a.prototype.and=function(e){return this.length>e.length?this.clone().iand(e):e.clone().iand(this)},a.prototype.uand=function(e){return this.length>e.length?this.clone().iuand(e):e.clone().iuand(this)},a.prototype.iuxor=function(e){var t,r;this.length>e.length?(t=this,r=e):(t=e,r=this);for(var i=0;i<r.length;i++)this.words[i]=t.words[i]^r.words[i];if(this!==t)for(;i<t.length;i++)this.words[i]=t.words[i];return this.length=t.length,this.strip()},a.prototype.ixor=function(e){return i(0==(this.negative|e.negative)),this.iuxor(e)},a.prototype.xor=function(e){return this.length>e.length?this.clone().ixor(e):e.clone().ixor(this)},a.prototype.uxor=function(e){return this.length>e.length?this.clone().iuxor(e):e.clone().iuxor(this)},a.prototype.inotn=function(e){i("number"==typeof e&&e>=0);var t=0|Math.ceil(e/26),r=e%26;this._expand(t),r>0&&t--;for(var n=0;n<t;n++)this.words[n]=67108863&~this.words[n];return r>0&&(this.words[n]=~this.words[n]&67108863>>26-r),this.strip()},a.prototype.notn=function(e){return this.clone().inotn(e)},a.prototype.setn=function(e,t){i("number"==typeof e&&e>=0);var r=e/26|0,n=e%26;return this._expand(r+1),this.words[r]=t?this.words[r]|1<<n:this.words[r]&~(1<<n),this.strip()},a.prototype.iadd=function(e){var t,r,i;if(0!==this.negative&&0===e.negative)return this.negative=0,t=this.isub(e),this.negative^=1,this._normSign();if(0===this.negative&&0!==e.negative)return e.negative=0,t=this.isub(e),e.negative=1,t._normSign();this.length>e.length?(r=this,i=e):(r=e,i=this);for(var n=0,a=0;a<i.length;a++)t=(0|r.words[a])+(0|i.words[a])+n,this.words[a]=67108863&t,n=t>>>26;for(;0!==n&&a<r.length;a++)t=(0|r.words[a])+n,this.words[a]=67108863&t,n=t>>>26;if(this.length=r.length,0!==n)this.words[this.length]=n,this.length++;else if(r!==this)for(;a<r.length;a++)this.words[a]=r.words[a];return this},a.prototype.add=function(e){var t;return 0!==e.negative&&0===this.negative?(e.negative=0,t=this.sub(e),e.negative^=1,t):0===e.negative&&0!==this.negative?(this.negative=0,t=e.sub(this),this.negative=1,t):this.length>e.length?this.clone().iadd(e):e.clone().iadd(this)},a.prototype.isub=function(e){if(0!==e.negative){e.negative=0;var t=this.iadd(e);return e.negative=1,t._normSign()}if(0!==this.negative)return this.negative=0,this.iadd(e),this.negative=1,this._normSign();var r,i,n=this.cmp(e);if(0===n)return this.negative=0,this.length=1,this.words[0]=0,this;n>0?(r=this,i=e):(r=e,i=this);for(var a=0,o=0;o<i.length;o++)a=(t=(0|r.words[o])-(0|i.words[o])+a)>>26,this.words[o]=67108863&t;for(;0!==a&&o<r.length;o++)a=(t=(0|r.words[o])+a)>>26,this.words[o]=67108863&t;if(0===a&&o<r.length&&r!==this)for(;o<r.length;o++)this.words[o]=r.words[o];return this.length=Math.max(this.length,o),r!==this&&(this.negative=1),this.strip()},a.prototype.sub=function(e){return this.clone().isub(e)};var l=function(e,t,r){var i,n,a,o=e.words,s=t.words,f=r.words,c=0,u=0|o[0],h=8191&u,d=u>>>13,l=0|o[1],p=8191&l,b=l>>>13,m=0|o[2],g=8191&m,v=m>>>13,y=0|o[3],w=8191&y,_=y>>>13,S=0|o[4],M=8191&S,x=S>>>13,k=0|o[5],A=8191&k,E=k>>>13,I=0|o[6],j=8191&I,B=I>>>13,z=0|o[7],C=8191&z,P=z>>>13,R=0|o[8],T=8191&R,q=R>>>13,O=0|o[9],L=8191&O,N=O>>>13,U=0|s[0],D=8191&U,H=U>>>13,F=0|s[1],K=8191&F,V=F>>>13,W=0|s[2],G=8191&W,X=W>>>13,Z=0|s[3],Y=8191&Z,J=Z>>>13,Q=0|s[4],$=8191&Q,ee=Q>>>13,te=0|s[5],re=8191&te,ie=te>>>13,ne=0|s[6],ae=8191&ne,oe=ne>>>13,se=0|s[7],fe=8191&se,ce=se>>>13,ue=0|s[8],he=8191&ue,de=ue>>>13,le=0|s[9],pe=8191&le,be=le>>>13;r.negative=e.negative^t.negative,r.length=19;var me=(c+(i=Math.imul(h,D))|0)+((8191&(n=(n=Math.imul(h,H))+Math.imul(d,D)|0))<<13)|0;c=((a=Math.imul(d,H))+(n>>>13)|0)+(me>>>26)|0,me&=67108863,i=Math.imul(p,D),n=(n=Math.imul(p,H))+Math.imul(b,D)|0,a=Math.imul(b,H);var ge=(c+(i=i+Math.imul(h,K)|0)|0)+((8191&(n=(n=n+Math.imul(h,V)|0)+Math.imul(d,K)|0))<<13)|0;c=((a=a+Math.imul(d,V)|0)+(n>>>13)|0)+(ge>>>26)|0,ge&=67108863,i=Math.imul(g,D),n=(n=Math.imul(g,H))+Math.imul(v,D)|0,a=Math.imul(v,H),i=i+Math.imul(p,K)|0,n=(n=n+Math.imul(p,V)|0)+Math.imul(b,K)|0,a=a+Math.imul(b,V)|0;var ve=(c+(i=i+Math.imul(h,G)|0)|0)+((8191&(n=(n=n+Math.imul(h,X)|0)+Math.imul(d,G)|0))<<13)|0;c=((a=a+Math.imul(d,X)|0)+(n>>>13)|0)+(ve>>>26)|0,ve&=67108863,i=Math.imul(w,D),n=(n=Math.imul(w,H))+Math.imul(_,D)|0,a=Math.imul(_,H),i=i+Math.imul(g,K)|0,n=(n=n+Math.imul(g,V)|0)+Math.imul(v,K)|0,a=a+Math.imul(v,V)|0,i=i+Math.imul(p,G)|0,n=(n=n+Math.imul(p,X)|0)+Math.imul(b,G)|0,a=a+Math.imul(b,X)|0;var ye=(c+(i=i+Math.imul(h,Y)|0)|0)+((8191&(n=(n=n+Math.imul(h,J)|0)+Math.imul(d,Y)|0))<<13)|0;c=((a=a+Math.imul(d,J)|0)+(n>>>13)|0)+(ye>>>26)|0,ye&=67108863,i=Math.imul(M,D),n=(n=Math.imul(M,H))+Math.imul(x,D)|0,a=Math.imul(x,H),i=i+Math.imul(w,K)|0,n=(n=n+Math.imul(w,V)|0)+Math.imul(_,K)|0,a=a+Math.imul(_,V)|0,i=i+Math.imul(g,G)|0,n=(n=n+Math.imul(g,X)|0)+Math.imul(v,G)|0,a=a+Math.imul(v,X)|0,i=i+Math.imul(p,Y)|0,n=(n=n+Math.imul(p,J)|0)+Math.imul(b,Y)|0,a=a+Math.imul(b,J)|0;var we=(c+(i=i+Math.imul(h,$)|0)|0)+((8191&(n=(n=n+Math.imul(h,ee)|0)+Math.imul(d,$)|0))<<13)|0;c=((a=a+Math.imul(d,ee)|0)+(n>>>13)|0)+(we>>>26)|0,we&=67108863,i=Math.imul(A,D),n=(n=Math.imul(A,H))+Math.imul(E,D)|0,a=Math.imul(E,H),i=i+Math.imul(M,K)|0,n=(n=n+Math.imul(M,V)|0)+Math.imul(x,K)|0,a=a+Math.imul(x,V)|0,i=i+Math.imul(w,G)|0,n=(n=n+Math.imul(w,X)|0)+Math.imul(_,G)|0,a=a+Math.imul(_,X)|0,i=i+Math.imul(g,Y)|0,n=(n=n+Math.imul(g,J)|0)+Math.imul(v,Y)|0,a=a+Math.imul(v,J)|0,i=i+Math.imul(p,$)|0,n=(n=n+Math.imul(p,ee)|0)+Math.imul(b,$)|0,a=a+Math.imul(b,ee)|0;var _e=(c+(i=i+Math.imul(h,re)|0)|0)+((8191&(n=(n=n+Math.imul(h,ie)|0)+Math.imul(d,re)|0))<<13)|0;c=((a=a+Math.imul(d,ie)|0)+(n>>>13)|0)+(_e>>>26)|0,_e&=67108863,i=Math.imul(j,D),n=(n=Math.imul(j,H))+Math.imul(B,D)|0,a=Math.imul(B,H),i=i+Math.imul(A,K)|0,n=(n=n+Math.imul(A,V)|0)+Math.imul(E,K)|0,a=a+Math.imul(E,V)|0,i=i+Math.imul(M,G)|0,n=(n=n+Math.imul(M,X)|0)+Math.imul(x,G)|0,a=a+Math.imul(x,X)|0,i=i+Math.imul(w,Y)|0,n=(n=n+Math.imul(w,J)|0)+Math.imul(_,Y)|0,a=a+Math.imul(_,J)|0,i=i+Math.imul(g,$)|0,n=(n=n+Math.imul(g,ee)|0)+Math.imul(v,$)|0,a=a+Math.imul(v,ee)|0,i=i+Math.imul(p,re)|0,n=(n=n+Math.imul(p,ie)|0)+Math.imul(b,re)|0,a=a+Math.imul(b,ie)|0;var Se=(c+(i=i+Math.imul(h,ae)|0)|0)+((8191&(n=(n=n+Math.imul(h,oe)|0)+Math.imul(d,ae)|0))<<13)|0;c=((a=a+Math.imul(d,oe)|0)+(n>>>13)|0)+(Se>>>26)|0,Se&=67108863,i=Math.imul(C,D),n=(n=Math.imul(C,H))+Math.imul(P,D)|0,a=Math.imul(P,H),i=i+Math.imul(j,K)|0,n=(n=n+Math.imul(j,V)|0)+Math.imul(B,K)|0,a=a+Math.imul(B,V)|0,i=i+Math.imul(A,G)|0,n=(n=n+Math.imul(A,X)|0)+Math.imul(E,G)|0,a=a+Math.imul(E,X)|0,i=i+Math.imul(M,Y)|0,n=(n=n+Math.imul(M,J)|0)+Math.imul(x,Y)|0,a=a+Math.imul(x,J)|0,i=i+Math.imul(w,$)|0,n=(n=n+Math.imul(w,ee)|0)+Math.imul(_,$)|0,a=a+Math.imul(_,ee)|0,i=i+Math.imul(g,re)|0,n=(n=n+Math.imul(g,ie)|0)+Math.imul(v,re)|0,a=a+Math.imul(v,ie)|0,i=i+Math.imul(p,ae)|0,n=(n=n+Math.imul(p,oe)|0)+Math.imul(b,ae)|0,a=a+Math.imul(b,oe)|0;var Me=(c+(i=i+Math.imul(h,fe)|0)|0)+((8191&(n=(n=n+Math.imul(h,ce)|0)+Math.imul(d,fe)|0))<<13)|0;c=((a=a+Math.imul(d,ce)|0)+(n>>>13)|0)+(Me>>>26)|0,Me&=67108863,i=Math.imul(T,D),n=(n=Math.imul(T,H))+Math.imul(q,D)|0,a=Math.imul(q,H),i=i+Math.imul(C,K)|0,n=(n=n+Math.imul(C,V)|0)+Math.imul(P,K)|0,a=a+Math.imul(P,V)|0,i=i+Math.imul(j,G)|0,n=(n=n+Math.imul(j,X)|0)+Math.imul(B,G)|0,a=a+Math.imul(B,X)|0,i=i+Math.imul(A,Y)|0,n=(n=n+Math.imul(A,J)|0)+Math.imul(E,Y)|0,a=a+Math.imul(E,J)|0,i=i+Math.imul(M,$)|0,n=(n=n+Math.imul(M,ee)|0)+Math.imul(x,$)|0,a=a+Math.imul(x,ee)|0,i=i+Math.imul(w,re)|0,n=(n=n+Math.imul(w,ie)|0)+Math.imul(_,re)|0,a=a+Math.imul(_,ie)|0,i=i+Math.imul(g,ae)|0,n=(n=n+Math.imul(g,oe)|0)+Math.imul(v,ae)|0,a=a+Math.imul(v,oe)|0,i=i+Math.imul(p,fe)|0,n=(n=n+Math.imul(p,ce)|0)+Math.imul(b,fe)|0,a=a+Math.imul(b,ce)|0;var xe=(c+(i=i+Math.imul(h,he)|0)|0)+((8191&(n=(n=n+Math.imul(h,de)|0)+Math.imul(d,he)|0))<<13)|0;c=((a=a+Math.imul(d,de)|0)+(n>>>13)|0)+(xe>>>26)|0,xe&=67108863,i=Math.imul(L,D),n=(n=Math.imul(L,H))+Math.imul(N,D)|0,a=Math.imul(N,H),i=i+Math.imul(T,K)|0,n=(n=n+Math.imul(T,V)|0)+Math.imul(q,K)|0,a=a+Math.imul(q,V)|0,i=i+Math.imul(C,G)|0,n=(n=n+Math.imul(C,X)|0)+Math.imul(P,G)|0,a=a+Math.imul(P,X)|0,i=i+Math.imul(j,Y)|0,n=(n=n+Math.imul(j,J)|0)+Math.imul(B,Y)|0,a=a+Math.imul(B,J)|0,i=i+Math.imul(A,$)|0,n=(n=n+Math.imul(A,ee)|0)+Math.imul(E,$)|0,a=a+Math.imul(E,ee)|0,i=i+Math.imul(M,re)|0,n=(n=n+Math.imul(M,ie)|0)+Math.imul(x,re)|0,a=a+Math.imul(x,ie)|0,i=i+Math.imul(w,ae)|0,n=(n=n+Math.imul(w,oe)|0)+Math.imul(_,ae)|0,a=a+Math.imul(_,oe)|0,i=i+Math.imul(g,fe)|0,n=(n=n+Math.imul(g,ce)|0)+Math.imul(v,fe)|0,a=a+Math.imul(v,ce)|0,i=i+Math.imul(p,he)|0,n=(n=n+Math.imul(p,de)|0)+Math.imul(b,he)|0,a=a+Math.imul(b,de)|0;var ke=(c+(i=i+Math.imul(h,pe)|0)|0)+((8191&(n=(n=n+Math.imul(h,be)|0)+Math.imul(d,pe)|0))<<13)|0;c=((a=a+Math.imul(d,be)|0)+(n>>>13)|0)+(ke>>>26)|0,ke&=67108863,i=Math.imul(L,K),n=(n=Math.imul(L,V))+Math.imul(N,K)|0,a=Math.imul(N,V),i=i+Math.imul(T,G)|0,n=(n=n+Math.imul(T,X)|0)+Math.imul(q,G)|0,a=a+Math.imul(q,X)|0,i=i+Math.imul(C,Y)|0,n=(n=n+Math.imul(C,J)|0)+Math.imul(P,Y)|0,a=a+Math.imul(P,J)|0,i=i+Math.imul(j,$)|0,n=(n=n+Math.imul(j,ee)|0)+Math.imul(B,$)|0,a=a+Math.imul(B,ee)|0,i=i+Math.imul(A,re)|0,n=(n=n+Math.imul(A,ie)|0)+Math.imul(E,re)|0,a=a+Math.imul(E,ie)|0,i=i+Math.imul(M,ae)|0,n=(n=n+Math.imul(M,oe)|0)+Math.imul(x,ae)|0,a=a+Math.imul(x,oe)|0,i=i+Math.imul(w,fe)|0,n=(n=n+Math.imul(w,ce)|0)+Math.imul(_,fe)|0,a=a+Math.imul(_,ce)|0,i=i+Math.imul(g,he)|0,n=(n=n+Math.imul(g,de)|0)+Math.imul(v,he)|0,a=a+Math.imul(v,de)|0;var Ae=(c+(i=i+Math.imul(p,pe)|0)|0)+((8191&(n=(n=n+Math.imul(p,be)|0)+Math.imul(b,pe)|0))<<13)|0;c=((a=a+Math.imul(b,be)|0)+(n>>>13)|0)+(Ae>>>26)|0,Ae&=67108863,i=Math.imul(L,G),n=(n=Math.imul(L,X))+Math.imul(N,G)|0,a=Math.imul(N,X),i=i+Math.imul(T,Y)|0,n=(n=n+Math.imul(T,J)|0)+Math.imul(q,Y)|0,a=a+Math.imul(q,J)|0,i=i+Math.imul(C,$)|0,n=(n=n+Math.imul(C,ee)|0)+Math.imul(P,$)|0,a=a+Math.imul(P,ee)|0,i=i+Math.imul(j,re)|0,n=(n=n+Math.imul(j,ie)|0)+Math.imul(B,re)|0,a=a+Math.imul(B,ie)|0,i=i+Math.imul(A,ae)|0,n=(n=n+Math.imul(A,oe)|0)+Math.imul(E,ae)|0,a=a+Math.imul(E,oe)|0,i=i+Math.imul(M,fe)|0,n=(n=n+Math.imul(M,ce)|0)+Math.imul(x,fe)|0,a=a+Math.imul(x,ce)|0,i=i+Math.imul(w,he)|0,n=(n=n+Math.imul(w,de)|0)+Math.imul(_,he)|0,a=a+Math.imul(_,de)|0;var Ee=(c+(i=i+Math.imul(g,pe)|0)|0)+((8191&(n=(n=n+Math.imul(g,be)|0)+Math.imul(v,pe)|0))<<13)|0;c=((a=a+Math.imul(v,be)|0)+(n>>>13)|0)+(Ee>>>26)|0,Ee&=67108863,i=Math.imul(L,Y),n=(n=Math.imul(L,J))+Math.imul(N,Y)|0,a=Math.imul(N,J),i=i+Math.imul(T,$)|0,n=(n=n+Math.imul(T,ee)|0)+Math.imul(q,$)|0,a=a+Math.imul(q,ee)|0,i=i+Math.imul(C,re)|0,n=(n=n+Math.imul(C,ie)|0)+Math.imul(P,re)|0,a=a+Math.imul(P,ie)|0,i=i+Math.imul(j,ae)|0,n=(n=n+Math.imul(j,oe)|0)+Math.imul(B,ae)|0,a=a+Math.imul(B,oe)|0,i=i+Math.imul(A,fe)|0,n=(n=n+Math.imul(A,ce)|0)+Math.imul(E,fe)|0,a=a+Math.imul(E,ce)|0,i=i+Math.imul(M,he)|0,n=(n=n+Math.imul(M,de)|0)+Math.imul(x,he)|0,a=a+Math.imul(x,de)|0;var Ie=(c+(i=i+Math.imul(w,pe)|0)|0)+((8191&(n=(n=n+Math.imul(w,be)|0)+Math.imul(_,pe)|0))<<13)|0;c=((a=a+Math.imul(_,be)|0)+(n>>>13)|0)+(Ie>>>26)|0,Ie&=67108863,i=Math.imul(L,$),n=(n=Math.imul(L,ee))+Math.imul(N,$)|0,a=Math.imul(N,ee),i=i+Math.imul(T,re)|0,n=(n=n+Math.imul(T,ie)|0)+Math.imul(q,re)|0,a=a+Math.imul(q,ie)|0,i=i+Math.imul(C,ae)|0,n=(n=n+Math.imul(C,oe)|0)+Math.imul(P,ae)|0,a=a+Math.imul(P,oe)|0,i=i+Math.imul(j,fe)|0,n=(n=n+Math.imul(j,ce)|0)+Math.imul(B,fe)|0,a=a+Math.imul(B,ce)|0,i=i+Math.imul(A,he)|0,n=(n=n+Math.imul(A,de)|0)+Math.imul(E,he)|0,a=a+Math.imul(E,de)|0;var je=(c+(i=i+Math.imul(M,pe)|0)|0)+((8191&(n=(n=n+Math.imul(M,be)|0)+Math.imul(x,pe)|0))<<13)|0;c=((a=a+Math.imul(x,be)|0)+(n>>>13)|0)+(je>>>26)|0,je&=67108863,i=Math.imul(L,re),n=(n=Math.imul(L,ie))+Math.imul(N,re)|0,a=Math.imul(N,ie),i=i+Math.imul(T,ae)|0,n=(n=n+Math.imul(T,oe)|0)+Math.imul(q,ae)|0,a=a+Math.imul(q,oe)|0,i=i+Math.imul(C,fe)|0,n=(n=n+Math.imul(C,ce)|0)+Math.imul(P,fe)|0,a=a+Math.imul(P,ce)|0,i=i+Math.imul(j,he)|0,n=(n=n+Math.imul(j,de)|0)+Math.imul(B,he)|0,a=a+Math.imul(B,de)|0;var Be=(c+(i=i+Math.imul(A,pe)|0)|0)+((8191&(n=(n=n+Math.imul(A,be)|0)+Math.imul(E,pe)|0))<<13)|0;c=((a=a+Math.imul(E,be)|0)+(n>>>13)|0)+(Be>>>26)|0,Be&=67108863,i=Math.imul(L,ae),n=(n=Math.imul(L,oe))+Math.imul(N,ae)|0,a=Math.imul(N,oe),i=i+Math.imul(T,fe)|0,n=(n=n+Math.imul(T,ce)|0)+Math.imul(q,fe)|0,a=a+Math.imul(q,ce)|0,i=i+Math.imul(C,he)|0,n=(n=n+Math.imul(C,de)|0)+Math.imul(P,he)|0,a=a+Math.imul(P,de)|0;var ze=(c+(i=i+Math.imul(j,pe)|0)|0)+((8191&(n=(n=n+Math.imul(j,be)|0)+Math.imul(B,pe)|0))<<13)|0;c=((a=a+Math.imul(B,be)|0)+(n>>>13)|0)+(ze>>>26)|0,ze&=67108863,i=Math.imul(L,fe),n=(n=Math.imul(L,ce))+Math.imul(N,fe)|0,a=Math.imul(N,ce),i=i+Math.imul(T,he)|0,n=(n=n+Math.imul(T,de)|0)+Math.imul(q,he)|0,a=a+Math.imul(q,de)|0;var Ce=(c+(i=i+Math.imul(C,pe)|0)|0)+((8191&(n=(n=n+Math.imul(C,be)|0)+Math.imul(P,pe)|0))<<13)|0;c=((a=a+Math.imul(P,be)|0)+(n>>>13)|0)+(Ce>>>26)|0,Ce&=67108863,i=Math.imul(L,he),n=(n=Math.imul(L,de))+Math.imul(N,he)|0,a=Math.imul(N,de);var Pe=(c+(i=i+Math.imul(T,pe)|0)|0)+((8191&(n=(n=n+Math.imul(T,be)|0)+Math.imul(q,pe)|0))<<13)|0;c=((a=a+Math.imul(q,be)|0)+(n>>>13)|0)+(Pe>>>26)|0,Pe&=67108863;var Re=(c+(i=Math.imul(L,pe))|0)+((8191&(n=(n=Math.imul(L,be))+Math.imul(N,pe)|0))<<13)|0;return c=((a=Math.imul(N,be))+(n>>>13)|0)+(Re>>>26)|0,Re&=67108863,f[0]=me,f[1]=ge,f[2]=ve,f[3]=ye,f[4]=we,f[5]=_e,f[6]=Se,f[7]=Me,f[8]=xe,f[9]=ke,f[10]=Ae,f[11]=Ee,f[12]=Ie,f[13]=je,f[14]=Be,f[15]=ze,f[16]=Ce,f[17]=Pe,f[18]=Re,0!==c&&(f[19]=c,r.length++),r};function p(e,t,r){return(new b).mulp(e,t,r)}function b(e,t){this.x=e,this.y=t}Math.imul||(l=d),a.prototype.mulTo=function(e,t){var r=this.length+e.length;return 10===this.length&&10===e.length?l(this,e,t):r<63?d(this,e,t):r<1024?function(e,t,r){r.negative=t.negative^e.negative,r.length=e.length+t.length;for(var i=0,n=0,a=0;a<r.length-1;a++){var o=n;n=0;for(var s=67108863&i,f=Math.min(a,t.length-1),c=Math.max(0,a-e.length+1);c<=f;c++){var u=a-c,h=(0|e.words[u])*(0|t.words[c]),d=67108863&h;s=67108863&(d=d+s|0),n+=(o=(o=o+(h/67108864|0)|0)+(d>>>26)|0)>>>26,o&=67108863}r.words[a]=s,i=o,o=n}return 0!==i?r.words[a]=i:r.length--,r.strip()}(this,e,t):p(this,e,t)},b.prototype.makeRBT=function(e){for(var t=new Array(e),r=a.prototype._countBits(e)-1,i=0;i<e;i++)t[i]=this.revBin(i,r,e);return t},b.prototype.revBin=function(e,t,r){if(0===e||e===r-1)return e;for(var i=0,n=0;n<t;n++)i|=(1&e)<<t-n-1,e>>=1;return i},b.prototype.permute=function(e,t,r,i,n,a){for(var o=0;o<a;o++)i[o]=t[e[o]],n[o]=r[e[o]]},b.prototype.transform=function(e,t,r,i,n,a){this.permute(a,e,t,r,i,n);for(var o=1;o<n;o<<=1)for(var s=o<<1,f=Math.cos(2*Math.PI/s),c=Math.sin(2*Math.PI/s),u=0;u<n;u+=s)for(var h=f,d=c,l=0;l<o;l++){var p=r[u+l],b=i[u+l],m=r[u+l+o],g=i[u+l+o],v=h*m-d*g;g=h*g+d*m,m=v,r[u+l]=p+m,i[u+l]=b+g,r[u+l+o]=p-m,i[u+l+o]=b-g,l!==s&&(v=f*h-c*d,d=f*d+c*h,h=v)}},b.prototype.guessLen13b=function(e,t){var r=1|Math.max(t,e),i=1&r,n=0;for(r=r/2|0;r;r>>>=1)n++;return 1<<n+1+i},b.prototype.conjugate=function(e,t,r){if(!(r<=1))for(var i=0;i<r/2;i++){var n=e[i];e[i]=e[r-i-1],e[r-i-1]=n,n=t[i],t[i]=-t[r-i-1],t[r-i-1]=-n}},b.prototype.normalize13b=function(e,t){for(var r=0,i=0;i<t/2;i++){var n=8192*Math.round(e[2*i+1]/t)+Math.round(e[2*i]/t)+r;e[i]=67108863&n,r=n<67108864?0:n/67108864|0}return e},b.prototype.convert13b=function(e,t,r,n){for(var a=0,o=0;o<t;o++)a+=0|e[o],r[2*o]=8191&a,a>>>=13,r[2*o+1]=8191&a,a>>>=13;for(o=2*t;o<n;++o)r[o]=0;i(0===a),i(0==(-8192&a))},b.prototype.stub=function(e){for(var t=new Array(e),r=0;r<e;r++)t[r]=0;return t},b.prototype.mulp=function(e,t,r){var i=2*this.guessLen13b(e.length,t.length),n=this.makeRBT(i),a=this.stub(i),o=new Array(i),s=new Array(i),f=new Array(i),c=new Array(i),u=new Array(i),h=new Array(i),d=r.words;d.length=i,this.convert13b(e.words,e.length,o,i),this.convert13b(t.words,t.length,c,i),this.transform(o,a,s,f,i,n),this.transform(c,a,u,h,i,n);for(var l=0;l<i;l++){var p=s[l]*u[l]-f[l]*h[l];f[l]=s[l]*h[l]+f[l]*u[l],s[l]=p}return this.conjugate(s,f,i),this.transform(s,f,d,a,i,n),this.conjugate(d,a,i),this.normalize13b(d,i),r.negative=e.negative^t.negative,r.length=e.length+t.length,r.strip()},a.prototype.mul=function(e){var t=new a(null);return t.words=new Array(this.length+e.length),this.mulTo(e,t)},a.prototype.mulf=function(e){var t=new a(null);return t.words=new Array(this.length+e.length),p(this,e,t)},a.prototype.imul=function(e){return this.clone().mulTo(e,this)},a.prototype.imuln=function(e){i("number"==typeof e),i(e<67108864);for(var t=0,r=0;r<this.length;r++){var n=(0|this.words[r])*e,a=(67108863&n)+(67108863&t);t>>=26,t+=n/67108864|0,t+=a>>>26,this.words[r]=67108863&a}return 0!==t&&(this.words[r]=t,this.length++),this},a.prototype.muln=function(e){return this.clone().imuln(e)},a.prototype.sqr=function(){return this.mul(this)},a.prototype.isqr=function(){return this.imul(this.clone())},a.prototype.pow=function(e){var t=function(e){for(var t=new Array(e.bitLength()),r=0;r<t.length;r++){var i=r/26|0,n=r%26;t[r]=(e.words[i]&1<<n)>>>n}return t}(e);if(0===t.length)return new a(1);for(var r=this,i=0;i<t.length&&0===t[i];i++,r=r.sqr());if(++i<t.length)for(var n=r.sqr();i<t.length;i++,n=n.sqr())0!==t[i]&&(r=r.mul(n));return r},a.prototype.iushln=function(e){i("number"==typeof e&&e>=0);var t,r=e%26,n=(e-r)/26,a=67108863>>>26-r<<26-r;if(0!==r){var o=0;for(t=0;t<this.length;t++){var s=this.words[t]&a,f=(0|this.words[t])-s<<r;this.words[t]=f|o,o=s>>>26-r}o&&(this.words[t]=o,this.length++)}if(0!==n){for(t=this.length-1;t>=0;t--)this.words[t+n]=this.words[t];for(t=0;t<n;t++)this.words[t]=0;this.length+=n}return this.strip()},a.prototype.ishln=function(e){return i(0===this.negative),this.iushln(e)},a.prototype.iushrn=function(e,t,r){var n;i("number"==typeof e&&e>=0),n=t?(t-t%26)/26:0;var a=e%26,o=Math.min((e-a)/26,this.length),s=67108863^67108863>>>a<<a,f=r;if(n-=o,n=Math.max(0,n),f){for(var c=0;c<o;c++)f.words[c]=this.words[c];f.length=o}if(0===o);else if(this.length>o)for(this.length-=o,c=0;c<this.length;c++)this.words[c]=this.words[c+o];else this.words[0]=0,this.length=1;var u=0;for(c=this.length-1;c>=0&&(0!==u||c>=n);c--){var h=0|this.words[c];this.words[c]=u<<26-a|h>>>a,u=h&s}return f&&0!==u&&(f.words[f.length++]=u),0===this.length&&(this.words[0]=0,this.length=1),this.strip()},a.prototype.ishrn=function(e,t,r){return i(0===this.negative),this.iushrn(e,t,r)},a.prototype.shln=function(e){return this.clone().ishln(e)},a.prototype.ushln=function(e){return this.clone().iushln(e)},a.prototype.shrn=function(e){return this.clone().ishrn(e)},a.prototype.ushrn=function(e){return this.clone().iushrn(e)},a.prototype.testn=function(e){i("number"==typeof e&&e>=0);var t=e%26,r=(e-t)/26,n=1<<t;return!(this.length<=r)&&!!(this.words[r]&n)},a.prototype.imaskn=function(e){i("number"==typeof e&&e>=0);var t=e%26,r=(e-t)/26;if(i(0===this.negative,"imaskn works only with positive numbers"),this.length<=r)return this;if(0!==t&&r++,this.length=Math.min(r,this.length),0!==t){var n=67108863^67108863>>>t<<t;this.words[this.length-1]&=n}return this.strip()},a.prototype.maskn=function(e){return this.clone().imaskn(e)},a.prototype.iaddn=function(e){return i("number"==typeof e),i(e<67108864),e<0?this.isubn(-e):0!==this.negative?1===this.length&&(0|this.words[0])<e?(this.words[0]=e-(0|this.words[0]),this.negative=0,this):(this.negative=0,this.isubn(e),this.negative=1,this):this._iaddn(e)},a.prototype._iaddn=function(e){this.words[0]+=e;for(var t=0;t<this.length&&this.words[t]>=67108864;t++)this.words[t]-=67108864,t===this.length-1?this.words[t+1]=1:this.words[t+1]++;return this.length=Math.max(this.length,t+1),this},a.prototype.isubn=function(e){if(i("number"==typeof e),i(e<67108864),e<0)return this.iaddn(-e);if(0!==this.negative)return this.negative=0,this.iaddn(e),this.negative=1,this;if(this.words[0]-=e,1===this.length&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var t=0;t<this.length&&this.words[t]<0;t++)this.words[t]+=67108864,this.words[t+1]-=1;return this.strip()},a.prototype.addn=function(e){return this.clone().iaddn(e)},a.prototype.subn=function(e){return this.clone().isubn(e)},a.prototype.iabs=function(){return this.negative=0,this},a.prototype.abs=function(){return this.clone().iabs()},a.prototype._ishlnsubmul=function(e,t,r){var n,a,o=e.length+r;this._expand(o);var s=0;for(n=0;n<e.length;n++){a=(0|this.words[n+r])+s;var f=(0|e.words[n])*t;s=((a-=67108863&f)>>26)-(f/67108864|0),this.words[n+r]=67108863&a}for(;n<this.length-r;n++)s=(a=(0|this.words[n+r])+s)>>26,this.words[n+r]=67108863&a;if(0===s)return this.strip();for(i(-1===s),s=0,n=0;n<this.length;n++)s=(a=-(0|this.words[n])+s)>>26,this.words[n]=67108863&a;return this.negative=1,this.strip()},a.prototype._wordDiv=function(e,t){var r=(this.length,e.length),i=this.clone(),n=e,o=0|n.words[n.length-1];0!==(r=26-this._countBits(o))&&(n=n.ushln(r),i.iushln(r),o=0|n.words[n.length-1]);var s,f=i.length-n.length;if("mod"!==t){(s=new a(null)).length=f+1,s.words=new Array(s.length);for(var c=0;c<s.length;c++)s.words[c]=0}var u=i.clone()._ishlnsubmul(n,1,f);0===u.negative&&(i=u,s&&(s.words[f]=1));for(var h=f-1;h>=0;h--){var d=67108864*(0|i.words[n.length+h])+(0|i.words[n.length+h-1]);for(d=Math.min(d/o|0,67108863),i._ishlnsubmul(n,d,h);0!==i.negative;)d--,i.negative=0,i._ishlnsubmul(n,1,h),i.isZero()||(i.negative^=1);s&&(s.words[h]=d)}return s&&s.strip(),i.strip(),"div"!==t&&0!==r&&i.iushrn(r),{div:s||null,mod:i}},a.prototype.divmod=function(e,t,r){return i(!e.isZero()),this.isZero()?{div:new a(0),mod:new a(0)}:0!==this.negative&&0===e.negative?(s=this.neg().divmod(e,t),"mod"!==t&&(n=s.div.neg()),"div"!==t&&(o=s.mod.neg(),r&&0!==o.negative&&o.iadd(e)),{div:n,mod:o}):0===this.negative&&0!==e.negative?(s=this.divmod(e.neg(),t),"mod"!==t&&(n=s.div.neg()),{div:n,mod:s.mod}):0!=(this.negative&e.negative)?(s=this.neg().divmod(e.neg(),t),"div"!==t&&(o=s.mod.neg(),r&&0!==o.negative&&o.isub(e)),{div:s.div,mod:o}):e.length>this.length||this.cmp(e)<0?{div:new a(0),mod:this}:1===e.length?"div"===t?{div:this.divn(e.words[0]),mod:null}:"mod"===t?{div:null,mod:new a(this.modn(e.words[0]))}:{div:this.divn(e.words[0]),mod:new a(this.modn(e.words[0]))}:this._wordDiv(e,t);var n,o,s},a.prototype.div=function(e){return this.divmod(e,"div",!1).div},a.prototype.mod=function(e){return this.divmod(e,"mod",!1).mod},a.prototype.umod=function(e){return this.divmod(e,"mod",!0).mod},a.prototype.divRound=function(e){var t=this.divmod(e);if(t.mod.isZero())return t.div;var r=0!==t.div.negative?t.mod.isub(e):t.mod,i=e.ushrn(1),n=e.andln(1),a=r.cmp(i);return a<0||1===n&&0===a?t.div:0!==t.div.negative?t.div.isubn(1):t.div.iaddn(1)},a.prototype.modn=function(e){i(e<=67108863);for(var t=(1<<26)%e,r=0,n=this.length-1;n>=0;n--)r=(t*r+(0|this.words[n]))%e;return r},a.prototype.idivn=function(e){i(e<=67108863);for(var t=0,r=this.length-1;r>=0;r--){var n=(0|this.words[r])+67108864*t;this.words[r]=n/e|0,t=n%e}return this.strip()},a.prototype.divn=function(e){return this.clone().idivn(e)},a.prototype.egcd=function(e){i(0===e.negative),i(!e.isZero());var t=this,r=e.clone();t=0!==t.negative?t.umod(e):t.clone();for(var n=new a(1),o=new a(0),s=new a(0),f=new a(1),c=0;t.isEven()&&r.isEven();)t.iushrn(1),r.iushrn(1),++c;for(var u=r.clone(),h=t.clone();!t.isZero();){for(var d=0,l=1;0==(t.words[0]&l)&&d<26;++d,l<<=1);if(d>0)for(t.iushrn(d);d-- >0;)(n.isOdd()||o.isOdd())&&(n.iadd(u),o.isub(h)),n.iushrn(1),o.iushrn(1);for(var p=0,b=1;0==(r.words[0]&b)&&p<26;++p,b<<=1);if(p>0)for(r.iushrn(p);p-- >0;)(s.isOdd()||f.isOdd())&&(s.iadd(u),f.isub(h)),s.iushrn(1),f.iushrn(1);t.cmp(r)>=0?(t.isub(r),n.isub(s),o.isub(f)):(r.isub(t),s.isub(n),f.isub(o))}return{a:s,b:f,gcd:r.iushln(c)}},a.prototype._invmp=function(e){i(0===e.negative),i(!e.isZero());var t=this,r=e.clone();t=0!==t.negative?t.umod(e):t.clone();for(var n,o=new a(1),s=new a(0),f=r.clone();t.cmpn(1)>0&&r.cmpn(1)>0;){for(var c=0,u=1;0==(t.words[0]&u)&&c<26;++c,u<<=1);if(c>0)for(t.iushrn(c);c-- >0;)o.isOdd()&&o.iadd(f),o.iushrn(1);for(var h=0,d=1;0==(r.words[0]&d)&&h<26;++h,d<<=1);if(h>0)for(r.iushrn(h);h-- >0;)s.isOdd()&&s.iadd(f),s.iushrn(1);t.cmp(r)>=0?(t.isub(r),o.isub(s)):(r.isub(t),s.isub(o))}return(n=0===t.cmpn(1)?o:s).cmpn(0)<0&&n.iadd(e),n},a.prototype.gcd=function(e){if(this.isZero())return e.abs();if(e.isZero())return this.abs();var t=this.clone(),r=e.clone();t.negative=0,r.negative=0;for(var i=0;t.isEven()&&r.isEven();i++)t.iushrn(1),r.iushrn(1);for(;;){for(;t.isEven();)t.iushrn(1);for(;r.isEven();)r.iushrn(1);var n=t.cmp(r);if(n<0){var a=t;t=r,r=a}else if(0===n||0===r.cmpn(1))break;t.isub(r)}return r.iushln(i)},a.prototype.invm=function(e){return this.egcd(e).a.umod(e)},a.prototype.isEven=function(){return 0==(1&this.words[0])},a.prototype.isOdd=function(){return 1==(1&this.words[0])},a.prototype.andln=function(e){return this.words[0]&e},a.prototype.bincn=function(e){i("number"==typeof e);var t=e%26,r=(e-t)/26,n=1<<t;if(this.length<=r)return this._expand(r+1),this.words[r]|=n,this;for(var a=n,o=r;0!==a&&o<this.length;o++){var s=0|this.words[o];a=(s+=a)>>>26,s&=67108863,this.words[o]=s}return 0!==a&&(this.words[o]=a,this.length++),this},a.prototype.isZero=function(){return 1===this.length&&0===this.words[0]},a.prototype.cmpn=function(e){var t,r=e<0;if(0!==this.negative&&!r)return-1;if(0===this.negative&&r)return 1;if(this.strip(),this.length>1)t=1;else{r&&(e=-e),i(e<=67108863,"Number is too big");var n=0|this.words[0];t=n===e?0:n<e?-1:1}return 0!==this.negative?0|-t:t},a.prototype.cmp=function(e){if(0!==this.negative&&0===e.negative)return-1;if(0===this.negative&&0!==e.negative)return 1;var t=this.ucmp(e);return 0!==this.negative?0|-t:t},a.prototype.ucmp=function(e){if(this.length>e.length)return 1;if(this.length<e.length)return-1;for(var t=0,r=this.length-1;r>=0;r--){var i=0|this.words[r],n=0|e.words[r];if(i!==n){i<n?t=-1:i>n&&(t=1);break}}return t},a.prototype.gtn=function(e){return 1===this.cmpn(e)},a.prototype.gt=function(e){return 1===this.cmp(e)},a.prototype.gten=function(e){return this.cmpn(e)>=0},a.prototype.gte=function(e){return this.cmp(e)>=0},a.prototype.ltn=function(e){return-1===this.cmpn(e)},a.prototype.lt=function(e){return-1===this.cmp(e)},a.prototype.lten=function(e){return this.cmpn(e)<=0},a.prototype.lte=function(e){return this.cmp(e)<=0},a.prototype.eqn=function(e){return 0===this.cmpn(e)},a.prototype.eq=function(e){return 0===this.cmp(e)},a.red=function(e){return new S(e)},a.prototype.toRed=function(e){return i(!this.red,"Already a number in reduction context"),i(0===this.negative,"red works only with positives"),e.convertTo(this)._forceRed(e)},a.prototype.fromRed=function(){return i(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},a.prototype._forceRed=function(e){return this.red=e,this},a.prototype.forceRed=function(e){return i(!this.red,"Already a number in reduction context"),this._forceRed(e)},a.prototype.redAdd=function(e){return i(this.red,"redAdd works only with red numbers"),this.red.add(this,e)},a.prototype.redIAdd=function(e){return i(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,e)},a.prototype.redSub=function(e){return i(this.red,"redSub works only with red numbers"),this.red.sub(this,e)},a.prototype.redISub=function(e){return i(this.red,"redISub works only with red numbers"),this.red.isub(this,e)},a.prototype.redShl=function(e){return i(this.red,"redShl works only with red numbers"),this.red.shl(this,e)},a.prototype.redMul=function(e){return i(this.red,"redMul works only with red numbers"),this.red._verify2(this,e),this.red.mul(this,e)},a.prototype.redIMul=function(e){return i(this.red,"redMul works only with red numbers"),this.red._verify2(this,e),this.red.imul(this,e)},a.prototype.redSqr=function(){return i(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},a.prototype.redISqr=function(){return i(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},a.prototype.redSqrt=function(){return i(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},a.prototype.redInvm=function(){return i(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},a.prototype.redNeg=function(){return i(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},a.prototype.redPow=function(e){return i(this.red&&!e.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,e)};var m={k256:null,p224:null,p192:null,p25519:null};function g(e,t){this.name=e,this.p=new a(t,16),this.n=this.p.bitLength(),this.k=new a(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}function v(){g.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}function y(){g.call(this,"p224","ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001")}function w(){g.call(this,"p192","ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff")}function _(){g.call(this,"25519","7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed")}function S(e){if("string"==typeof e){var t=a._prime(e);this.m=t.p,this.prime=t}else i(e.gtn(1),"modulus must be greater than 1"),this.m=e,this.prime=null}function M(e){S.call(this,e),this.shift=this.m.bitLength(),this.shift%26!=0&&(this.shift+=26-this.shift%26),this.r=new a(1).iushln(this.shift),this.r2=this.imod(this.r.sqr()),this.rinv=this.r._invmp(this.m),this.minv=this.rinv.mul(this.r).isubn(1).div(this.m),this.minv=this.minv.umod(this.r),this.minv=this.r.sub(this.minv)}g.prototype._tmp=function(){var e=new a(null);return e.words=new Array(Math.ceil(this.n/13)),e},g.prototype.ireduce=function(e){var t,r=e;do{this.split(r,this.tmp),t=(r=(r=this.imulK(r)).iadd(this.tmp)).bitLength()}while(t>this.n);var i=t<this.n?-1:r.ucmp(this.p);return 0===i?(r.words[0]=0,r.length=1):i>0?r.isub(this.p):r.strip(),r},g.prototype.split=function(e,t){e.iushrn(this.n,0,t)},g.prototype.imulK=function(e){return e.imul(this.k)},n(v,g),v.prototype.split=function(e,t){for(var r=Math.min(e.length,9),i=0;i<r;i++)t.words[i]=e.words[i];if(t.length=r,e.length<=9)return e.words[0]=0,void(e.length=1);var n=e.words[9];for(t.words[t.length++]=4194303&n,i=10;i<e.length;i++){var a=0|e.words[i];e.words[i-10]=(4194303&a)<<4|n>>>22,n=a}n>>>=22,e.words[i-10]=n,0===n&&e.length>10?e.length-=10:e.length-=9},v.prototype.imulK=function(e){e.words[e.length]=0,e.words[e.length+1]=0,e.length+=2;for(var t=0,r=0;r<e.length;r++){var i=0|e.words[r];t+=977*i,e.words[r]=67108863&t,t=64*i+(t/67108864|0)}return 0===e.words[e.length-1]&&(e.length--,0===e.words[e.length-1]&&e.length--),e},n(y,g),n(w,g),n(_,g),_.prototype.imulK=function(e){for(var t=0,r=0;r<e.length;r++){var i=19*(0|e.words[r])+t,n=67108863&i;i>>>=26,e.words[r]=n,t=i}return 0!==t&&(e.words[e.length++]=t),e},a._prime=function(e){if(m[e])return m[e];var t;if("k256"===e)t=new v;else if("p224"===e)t=new y;else if("p192"===e)t=new w;else{if("p25519"!==e)throw new Error("Unknown prime "+e);t=new _}return m[e]=t,t},S.prototype._verify1=function(e){i(0===e.negative,"red works only with positives"),i(e.red,"red works only with red numbers")},S.prototype._verify2=function(e,t){i(0==(e.negative|t.negative),"red works only with positives"),i(e.red&&e.red===t.red,"red works only with red numbers")},S.prototype.imod=function(e){return this.prime?this.prime.ireduce(e)._forceRed(this):e.umod(this.m)._forceRed(this)},S.prototype.neg=function(e){return e.isZero()?e.clone():this.m.sub(e)._forceRed(this)},S.prototype.add=function(e,t){this._verify2(e,t);var r=e.add(t);return r.cmp(this.m)>=0&&r.isub(this.m),r._forceRed(this)},S.prototype.iadd=function(e,t){this._verify2(e,t);var r=e.iadd(t);return r.cmp(this.m)>=0&&r.isub(this.m),r},S.prototype.sub=function(e,t){this._verify2(e,t);var r=e.sub(t);return r.cmpn(0)<0&&r.iadd(this.m),r._forceRed(this)},S.prototype.isub=function(e,t){this._verify2(e,t);var r=e.isub(t);return r.cmpn(0)<0&&r.iadd(this.m),r},S.prototype.shl=function(e,t){return this._verify1(e),this.imod(e.ushln(t))},S.prototype.imul=function(e,t){return this._verify2(e,t),this.imod(e.imul(t))},S.prototype.mul=function(e,t){return this._verify2(e,t),this.imod(e.mul(t))},S.prototype.isqr=function(e){return this.imul(e,e.clone())},S.prototype.sqr=function(e){return this.mul(e,e)},S.prototype.sqrt=function(e){if(e.isZero())return e.clone();var t=this.m.andln(3);if(i(t%2==1),3===t){var r=this.m.add(new a(1)).iushrn(2);return this.pow(e,r)}for(var n=this.m.subn(1),o=0;!n.isZero()&&0===n.andln(1);)o++,n.iushrn(1);i(!n.isZero());var s=new a(1).toRed(this),f=s.redNeg(),c=this.m.subn(1).iushrn(1),u=this.m.bitLength();for(u=new a(2*u*u).toRed(this);0!==this.pow(u,c).cmp(f);)u.redIAdd(f);for(var h=this.pow(u,n),d=this.pow(e,n.addn(1).iushrn(1)),l=this.pow(e,n),p=o;0!==l.cmp(s);){for(var b=l,m=0;0!==b.cmp(s);m++)b=b.redSqr();i(m<p);var g=this.pow(h,new a(1).iushln(p-m-1));d=d.redMul(g),h=g.redSqr(),l=l.redMul(h),p=m}return d},S.prototype.invm=function(e){var t=e._invmp(this.m);return 0!==t.negative?(t.negative=0,this.imod(t).redNeg()):this.imod(t)},S.prototype.pow=function(e,t){if(t.isZero())return new a(1).toRed(this);if(0===t.cmpn(1))return e.clone();var r=new Array(16);r[0]=new a(1).toRed(this),r[1]=e;for(var i=2;i<r.length;i++)r[i]=this.mul(r[i-1],e);var n=r[0],o=0,s=0,f=t.bitLength()%26;for(0===f&&(f=26),i=t.length-1;i>=0;i--){for(var c=t.words[i],u=f-1;u>=0;u--){var h=c>>u&1;n!==r[0]&&(n=this.sqr(n)),0!==h||0!==o?(o<<=1,o|=h,(4===++s||0===i&&0===u)&&(n=this.mul(n,r[o]),s=0,o=0)):s=0}f=26}return n},S.prototype.convertTo=function(e){var t=e.umod(this.m);return t===e?t.clone():t},S.prototype.convertFrom=function(e){var t=e.clone();return t.red=null,t},a.mont=function(e){return new M(e)},n(M,S),M.prototype.convertTo=function(e){return this.imod(e.ushln(this.shift))},M.prototype.convertFrom=function(e){var t=this.imod(e.mul(this.rinv));return t.red=null,t},M.prototype.imul=function(e,t){if(e.isZero()||t.isZero())return e.words[0]=0,e.length=1,e;var r=e.imul(t),i=r.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),n=r.isub(i).iushrn(this.shift),a=n;return n.cmp(this.m)>=0?a=n.isub(this.m):n.cmpn(0)<0&&(a=n.iadd(this.m)),a._forceRed(this)},M.prototype.mul=function(e,t){if(e.isZero()||t.isZero())return new a(0)._forceRed(this);var r=e.mul(t),i=r.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),n=r.isub(i).iushrn(this.shift),o=n;return n.cmp(this.m)>=0?o=n.isub(this.m):n.cmpn(0)<0&&(o=n.iadd(this.m)),o._forceRed(this)},M.prototype.invm=function(e){return this.imod(e._invmp(this.m).mul(this.r2))._forceRed(this)}}(void 0===t||t,this)},{buffer:48}],96:[function(e,t,r){(function(r){var i=e("bn.js"),n=e("randombytes");function a(e,t){var n=function(e){var t=o(e);return{blinder:t.toRed(i.mont(e.modulus)).redPow(new i(e.publicExponent)).fromRed(),unblinder:t.invm(e.modulus)}}(t),a=t.modulus.byteLength(),s=(i.mont(t.modulus),new i(e).mul(n.blinder).umod(t.modulus)),f=s.toRed(i.mont(t.prime1)),c=s.toRed(i.mont(t.prime2)),u=t.coefficient,h=t.prime1,d=t.prime2,l=f.redPow(t.exponent1),p=c.redPow(t.exponent2);l=l.fromRed(),p=p.fromRed();var b=l.isub(p).imul(u).umod(h);return b.imul(d),p.iadd(b),new r(p.imul(n.unblinder).umod(t.modulus).toArray(!1,a))}function o(e){for(var t=e.modulus.byteLength(),r=new i(n(t));r.cmp(e.modulus)>=0||!r.umod(e.prime1)||!r.umod(e.prime2);)r=new i(n(t));return r}t.exports=a,a.getr=o}).call(this,e("buffer").Buffer)},{"bn.js":95,buffer:49,randombytes:315}],97:[function(e,t,r){"use strict";var i=r;i.version=e("../package.json").version,i.utils=e("./elliptic/utils"),i.rand=e("brorand"),i.curve=e("./elliptic/curve"),i.curves=e("./elliptic/curves"),i.ec=e("./elliptic/ec"),i.eddsa=e("./elliptic/eddsa")},{"../package.json":128,"./elliptic/curve":100,"./elliptic/curves":103,"./elliptic/ec":104,"./elliptic/eddsa":107,"./elliptic/utils":111,brorand:112}],98:[function(e,t,r){arguments[4][7][0].apply(r,arguments)},{"../../elliptic":97,"bn.js":95,dup:7}],99:[function(e,t,r){"use strict";var i=e("../curve"),n=e("../../elliptic"),a=e("bn.js"),o=e("inherits"),s=i.base,f=n.utils.assert;function c(e){this.twisted=1!=(0|e.a),this.mOneA=this.twisted&&-1==(0|e.a),this.extended=this.mOneA,s.call(this,"edwards",e),this.a=new a(e.a,16).umod(this.red.m),this.a=this.a.toRed(this.red),this.c=new a(e.c,16).toRed(this.red),this.c2=this.c.redSqr(),this.d=new a(e.d,16).toRed(this.red),this.dd=this.d.redAdd(this.d),f(!this.twisted||0===this.c.fromRed().cmpn(1)),this.oneC=1==(0|e.c)}function u(e,t,r,i,n){s.BasePoint.call(this,e,"projective"),null===t&&null===r&&null===i?(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 a(t,16),this.y=new a(r,16),this.z=i?new a(i,16):this.curve.one,this.t=n&&new a(n,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()))))}o(c,s),t.exports=c,c.prototype._mulA=function(e){return this.mOneA?e.redNeg():this.a.redMul(e)},c.prototype._mulC=function(e){return this.oneC?e:this.c.redMul(e)},c.prototype.jpoint=function(e,t,r,i){return this.point(e,t,r,i)},c.prototype.pointFromX=function(e,t){(e=new a(e,16)).red||(e=e.toRed(this.red));var r=e.redSqr(),i=this.c2.redSub(this.a.redMul(r)),n=this.one.redSub(this.c2.redMul(this.d).redMul(r)),o=i.redMul(n.redInvm()),s=o.redSqrt();if(0!==s.redSqr().redSub(o).cmp(this.zero))throw new Error("invalid point");var f=s.fromRed().isOdd();return(t&&!f||!t&&f)&&(s=s.redNeg()),this.point(e,s)},c.prototype.pointFromY=function(e,t){(e=new a(e,16)).red||(e=e.toRed(this.red));var r=e.redSqr(),i=r.redSub(this.c2),n=r.redMul(this.d).redMul(this.c2).redSub(this.a),o=i.redMul(n.redInvm());if(0===o.cmp(this.zero)){if(t)throw new Error("invalid point");return this.point(this.zero,e)}var s=o.redSqrt();if(0!==s.redSqr().redSub(o).cmp(this.zero))throw new Error("invalid point");return s.fromRed().isOdd()!==t&&(s=s.redNeg()),this.point(s,e)},c.prototype.validate=function(e){if(e.isInfinity())return!0;e.normalize();var t=e.x.redSqr(),r=e.y.redSqr(),i=t.redMul(this.a).redAdd(r),n=this.c2.redMul(this.one.redAdd(this.d.redMul(t).redMul(r)));return 0===i.cmp(n)},o(u,s.BasePoint),c.prototype.pointFromJSON=function(e){return u.fromJSON(this,e)},c.prototype.point=function(e,t,r,i){return new u(this,e,t,r,i)},u.fromJSON=function(e,t){return new u(e,t[0],t[1],t[2])},u.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)+">"},u.prototype.isInfinity=function(){return 0===this.x.cmpn(0)&&(0===this.y.cmp(this.z)||this.zOne&&0===this.y.cmp(this.curve.c))},u.prototype._extDbl=function(){var e=this.x.redSqr(),t=this.y.redSqr(),r=this.z.redSqr();r=r.redIAdd(r);var i=this.curve._mulA(e),n=this.x.redAdd(this.y).redSqr().redISub(e).redISub(t),a=i.redAdd(t),o=a.redSub(r),s=i.redSub(t),f=n.redMul(o),c=a.redMul(s),u=n.redMul(s),h=o.redMul(a);return this.curve.point(f,c,h,u)},u.prototype._projDbl=function(){var e,t,r,i=this.x.redAdd(this.y).redSqr(),n=this.x.redSqr(),a=this.y.redSqr();if(this.curve.twisted){var o=(c=this.curve._mulA(n)).redAdd(a);if(this.zOne)e=i.redSub(n).redSub(a).redMul(o.redSub(this.curve.two)),t=o.redMul(c.redSub(a)),r=o.redSqr().redSub(o).redSub(o);else{var s=this.z.redSqr(),f=o.redSub(s).redISub(s);e=i.redSub(n).redISub(a).redMul(f),t=o.redMul(c.redSub(a)),r=o.redMul(f)}}else{var c=n.redAdd(a);s=this.curve._mulC(this.z).redSqr(),f=c.redSub(s).redSub(s);e=this.curve._mulC(i.redISub(c)).redMul(f),t=this.curve._mulC(c).redMul(n.redISub(a)),r=c.redMul(f)}return this.curve.point(e,t,r)},u.prototype.dbl=function(){return this.isInfinity()?this:this.curve.extended?this._extDbl():this._projDbl()},u.prototype._extAdd=function(e){var t=this.y.redSub(this.x).redMul(e.y.redSub(e.x)),r=this.y.redAdd(this.x).redMul(e.y.redAdd(e.x)),i=this.t.redMul(this.curve.dd).redMul(e.t),n=this.z.redMul(e.z.redAdd(e.z)),a=r.redSub(t),o=n.redSub(i),s=n.redAdd(i),f=r.redAdd(t),c=a.redMul(o),u=s.redMul(f),h=a.redMul(f),d=o.redMul(s);return this.curve.point(c,u,d,h)},u.prototype._projAdd=function(e){var t,r,i=this.z.redMul(e.z),n=i.redSqr(),a=this.x.redMul(e.x),o=this.y.redMul(e.y),s=this.curve.d.redMul(a).redMul(o),f=n.redSub(s),c=n.redAdd(s),u=this.x.redAdd(this.y).redMul(e.x.redAdd(e.y)).redISub(a).redISub(o),h=i.redMul(f).redMul(u);return this.curve.twisted?(t=i.redMul(c).redMul(o.redSub(this.curve._mulA(a))),r=f.redMul(c)):(t=i.redMul(c).redMul(o.redSub(a)),r=this.curve._mulC(f).redMul(c)),this.curve.point(h,t,r)},u.prototype.add=function(e){return this.isInfinity()?e:e.isInfinity()?this:this.curve.extended?this._extAdd(e):this._projAdd(e)},u.prototype.mul=function(e){return this._hasDoubles(e)?this.curve._fixedNafMul(this,e):this.curve._wnafMul(this,e)},u.prototype.mulAdd=function(e,t,r){return this.curve._wnafMulAdd(1,[this,t],[e,r],2,!1)},u.prototype.jmulAdd=function(e,t,r){return this.curve._wnafMulAdd(1,[this,t],[e,r],2,!0)},u.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},u.prototype.neg=function(){return this.curve.point(this.x.redNeg(),this.y,this.z,this.t&&this.t.redNeg())},u.prototype.getX=function(){return this.normalize(),this.x.fromRed()},u.prototype.getY=function(){return this.normalize(),this.y.fromRed()},u.prototype.eq=function(e){return this===e||0===this.getX().cmp(e.getX())&&0===this.getY().cmp(e.getY())},u.prototype.eqXToP=function(e){var t=e.toRed(this.curve.red).redMul(this.z);if(0===this.x.cmp(t))return!0;for(var r=e.clone(),i=this.curve.redN.redMul(this.z);;){if(r.iadd(this.curve.n),r.cmp(this.curve.p)>=0)return!1;if(t.redIAdd(i),0===this.x.cmp(t))return!0}},u.prototype.toP=u.prototype.normalize,u.prototype.mixedAdd=u.prototype.add},{"../../elliptic":97,"../curve":100,"bn.js":95,inherits:320}],100:[function(e,t,r){arguments[4][9][0].apply(r,arguments)},{"./base":98,"./edwards":99,"./mont":101,"./short":102,dup:9}],101:[function(e,t,r){arguments[4][10][0].apply(r,arguments)},{"../../elliptic":97,"../curve":100,"bn.js":95,dup:10,inherits:320}],102:[function(e,t,r){"use strict";var i=e("../curve"),n=e("../../elliptic"),a=e("bn.js"),o=e("inherits"),s=i.base,f=n.utils.assert;function c(e){s.call(this,"short",e),this.a=new a(e.a,16).toRed(this.red),this.b=new a(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 u(e,t,r,i){s.BasePoint.call(this,e,"affine"),null===t&&null===r?(this.x=null,this.y=null,this.inf=!0):(this.x=new a(t,16),this.y=new a(r,16),i&&(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 h(e,t,r,i){s.BasePoint.call(this,e,"jacobian"),null===t&&null===r&&null===i?(this.x=this.curve.one,this.y=this.curve.one,this.z=new a(0)):(this.x=new a(t,16),this.y=new a(r,16),this.z=new a(i,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}o(c,s),t.exports=c,c.prototype._getEndomorphism=function(e){if(this.zeroA&&this.g&&this.n&&1===this.p.modn(3)){var t,r;if(e.beta)t=new a(e.beta,16).toRed(this.red);else{var i=this._getEndoRoots(this.p);t=(t=i[0].cmp(i[1])<0?i[0]:i[1]).toRed(this.red)}if(e.lambda)r=new a(e.lambda,16);else{var n=this._getEndoRoots(this.n);0===this.g.mul(n[0]).x.cmp(this.g.x.redMul(t))?r=n[0]:(r=n[1],f(0===this.g.mul(r).x.cmp(this.g.x.redMul(t))))}return{beta:t,lambda:r,basis:e.basis?e.basis.map(function(e){return{a:new a(e.a,16),b:new a(e.b,16)}}):this._getEndoBasis(r)}}},c.prototype._getEndoRoots=function(e){var t=e===this.p?this.red:a.mont(e),r=new a(2).toRed(t).redInvm(),i=r.redNeg(),n=new a(3).toRed(t).redNeg().redSqrt().redMul(r);return[i.redAdd(n).fromRed(),i.redSub(n).fromRed()]},c.prototype._getEndoBasis=function(e){for(var t,r,i,n,o,s,f,c,u,h=this.n.ushrn(Math.floor(this.n.bitLength()/2)),d=e,l=this.n.clone(),p=new a(1),b=new a(0),m=new a(0),g=new a(1),v=0;0!==d.cmpn(0);){var y=l.div(d);c=l.sub(y.mul(d)),u=m.sub(y.mul(p));var w=g.sub(y.mul(b));if(!i&&c.cmp(h)<0)t=f.neg(),r=p,i=c.neg(),n=u;else if(i&&2==++v)break;f=c,l=d,d=c,m=p,p=u,g=b,b=w}o=c.neg(),s=u;var _=i.sqr().add(n.sqr());return o.sqr().add(s.sqr()).cmp(_)>=0&&(o=t,s=r),i.negative&&(i=i.neg(),n=n.neg()),o.negative&&(o=o.neg(),s=s.neg()),[{a:i,b:n},{a:o,b:s}]},c.prototype._endoSplit=function(e){var t=this.endo.basis,r=t[0],i=t[1],n=i.b.mul(e).divRound(this.n),a=r.b.neg().mul(e).divRound(this.n),o=n.mul(r.a),s=a.mul(i.a),f=n.mul(r.b),c=a.mul(i.b);return{k1:e.sub(o).sub(s),k2:f.add(c).neg()}},c.prototype.pointFromX=function(e,t){(e=new a(e,16)).red||(e=e.toRed(this.red));var r=e.redSqr().redMul(e).redIAdd(e.redMul(this.a)).redIAdd(this.b),i=r.redSqrt();if(0!==i.redSqr().redSub(r).cmp(this.zero))throw new Error("invalid point");var n=i.fromRed().isOdd();return(t&&!n||!t&&n)&&(i=i.redNeg()),this.point(e,i)},c.prototype.validate=function(e){if(e.inf)return!0;var t=e.x,r=e.y,i=this.a.redMul(t),n=t.redSqr().redMul(t).redIAdd(i).redIAdd(this.b);return 0===r.redSqr().redISub(n).cmpn(0)},c.prototype._endoWnafMulAdd=function(e,t,r){for(var i=this._endoWnafT1,n=this._endoWnafT2,a=0;a<e.length;a++){var o=this._endoSplit(t[a]),s=e[a],f=s._getBeta();o.k1.negative&&(o.k1.ineg(),s=s.neg(!0)),o.k2.negative&&(o.k2.ineg(),f=f.neg(!0)),i[2*a]=s,i[2*a+1]=f,n[2*a]=o.k1,n[2*a+1]=o.k2}for(var c=this._wnafMulAdd(1,i,n,2*a,r),u=0;u<2*a;u++)i[u]=null,n[u]=null;return c},o(u,s.BasePoint),c.prototype.point=function(e,t,r){return new u(this,e,t,r)},c.prototype.pointFromJSON=function(e,t){return u.fromJSON(this,e,t)},u.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 r=this.curve,i=function(e){return r.point(e.x.redMul(r.endo.beta),e.y)};e.beta=t,t.precomputed={beta:null,naf:e.naf&&{wnd:e.naf.wnd,points:e.naf.points.map(i)},doubles:e.doubles&&{step:e.doubles.step,points:e.doubles.points.map(i)}}}return t}},u.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]},u.fromJSON=function(e,t,r){"string"==typeof t&&(t=JSON.parse(t));var i=e.point(t[0],t[1],r);if(!t[2])return i;function n(t){return e.point(t[0],t[1],r)}var a=t[2];return i.precomputed={beta:null,doubles:a.doubles&&{step:a.doubles.step,points:[i].concat(a.doubles.points.map(n))},naf:a.naf&&{wnd:a.naf.wnd,points:[i].concat(a.naf.points.map(n))}},i},u.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)+">"},u.prototype.isInfinity=function(){return this.inf},u.prototype.add=function(e){if(this.inf)return e;if(e.inf)return this;if(this.eq(e))return this.dbl();if(this.neg().eq(e))return this.curve.point(null,null);if(0===this.x.cmp(e.x))return this.curve.point(null,null);var t=this.y.redSub(e.y);0!==t.cmpn(0)&&(t=t.redMul(this.x.redSub(e.x).redInvm()));var r=t.redSqr().redISub(this.x).redISub(e.x),i=t.redMul(this.x.redSub(r)).redISub(this.y);return this.curve.point(r,i)},u.prototype.dbl=function(){if(this.inf)return this;var e=this.y.redAdd(this.y);if(0===e.cmpn(0))return this.curve.point(null,null);var t=this.curve.a,r=this.x.redSqr(),i=e.redInvm(),n=r.redAdd(r).redIAdd(r).redIAdd(t).redMul(i),a=n.redSqr().redISub(this.x.redAdd(this.x)),o=n.redMul(this.x.redSub(a)).redISub(this.y);return this.curve.point(a,o)},u.prototype.getX=function(){return this.x.fromRed()},u.prototype.getY=function(){return this.y.fromRed()},u.prototype.mul=function(e){return e=new a(e,16),this._hasDoubles(e)?this.curve._fixedNafMul(this,e):this.curve.endo?this.curve._endoWnafMulAdd([this],[e]):this.curve._wnafMul(this,e)},u.prototype.mulAdd=function(e,t,r){var i=[this,t],n=[e,r];return this.curve.endo?this.curve._endoWnafMulAdd(i,n):this.curve._wnafMulAdd(1,i,n,2)},u.prototype.jmulAdd=function(e,t,r){var i=[this,t],n=[e,r];return this.curve.endo?this.curve._endoWnafMulAdd(i,n,!0):this.curve._wnafMulAdd(1,i,n,2,!0)},u.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))},u.prototype.neg=function(e){if(this.inf)return this;var t=this.curve.point(this.x,this.y.redNeg());if(e&&this.precomputed){var r=this.precomputed,i=function(e){return e.neg()};t.precomputed={naf:r.naf&&{wnd:r.naf.wnd,points:r.naf.points.map(i)},doubles:r.doubles&&{step:r.doubles.step,points:r.doubles.points.map(i)}}}return t},u.prototype.toJ=function(){return this.inf?this.curve.jpoint(null,null,null):this.curve.jpoint(this.x,this.y,this.curve.one)},o(h,s.BasePoint),c.prototype.jpoint=function(e,t,r){return new h(this,e,t,r)},h.prototype.toP=function(){if(this.isInfinity())return this.curve.point(null,null);var e=this.z.redInvm(),t=e.redSqr(),r=this.x.redMul(t),i=this.y.redMul(t).redMul(e);return this.curve.point(r,i)},h.prototype.neg=function(){return this.curve.jpoint(this.x,this.y.redNeg(),this.z)},h.prototype.add=function(e){if(this.isInfinity())return e;if(e.isInfinity())return this;var t=e.z.redSqr(),r=this.z.redSqr(),i=this.x.redMul(t),n=e.x.redMul(r),a=this.y.redMul(t.redMul(e.z)),o=e.y.redMul(r.redMul(this.z)),s=i.redSub(n),f=a.redSub(o);if(0===s.cmpn(0))return 0!==f.cmpn(0)?this.curve.jpoint(null,null,null):this.dbl();var c=s.redSqr(),u=c.redMul(s),h=i.redMul(c),d=f.redSqr().redIAdd(u).redISub(h).redISub(h),l=f.redMul(h.redISub(d)).redISub(a.redMul(u)),p=this.z.redMul(e.z).redMul(s);return this.curve.jpoint(d,l,p)},h.prototype.mixedAdd=function(e){if(this.isInfinity())return e.toJ();if(e.isInfinity())return this;var t=this.z.redSqr(),r=this.x,i=e.x.redMul(t),n=this.y,a=e.y.redMul(t).redMul(this.z),o=r.redSub(i),s=n.redSub(a);if(0===o.cmpn(0))return 0!==s.cmpn(0)?this.curve.jpoint(null,null,null):this.dbl();var f=o.redSqr(),c=f.redMul(o),u=r.redMul(f),h=s.redSqr().redIAdd(c).redISub(u).redISub(u),d=s.redMul(u.redISub(h)).redISub(n.redMul(c)),l=this.z.redMul(o);return this.curve.jpoint(h,d,l)},h.prototype.dblp=function(e){if(0===e)return this;if(this.isInfinity())return this;if(!e)return this.dbl();if(this.curve.zeroA||this.curve.threeA){for(var t=this,r=0;r<e;r++)t=t.dbl();return t}var i=this.curve.a,n=this.curve.tinv,a=this.x,o=this.y,s=this.z,f=s.redSqr().redSqr(),c=o.redAdd(o);for(r=0;r<e;r++){var u=a.redSqr(),h=c.redSqr(),d=h.redSqr(),l=u.redAdd(u).redIAdd(u).redIAdd(i.redMul(f)),p=a.redMul(h),b=l.redSqr().redISub(p.redAdd(p)),m=p.redISub(b),g=l.redMul(m);g=g.redIAdd(g).redISub(d);var v=c.redMul(s);r+1<e&&(f=f.redMul(d)),a=b,s=v,c=g}return this.curve.jpoint(a,c.redMul(n),s)},h.prototype.dbl=function(){return this.isInfinity()?this:this.curve.zeroA?this._zeroDbl():this.curve.threeA?this._threeDbl():this._dbl()},h.prototype._zeroDbl=function(){var e,t,r;if(this.zOne){var i=this.x.redSqr(),n=this.y.redSqr(),a=n.redSqr(),o=this.x.redAdd(n).redSqr().redISub(i).redISub(a);o=o.redIAdd(o);var s=i.redAdd(i).redIAdd(i),f=s.redSqr().redISub(o).redISub(o),c=a.redIAdd(a);c=(c=c.redIAdd(c)).redIAdd(c),e=f,t=s.redMul(o.redISub(f)).redISub(c),r=this.y.redAdd(this.y)}else{var u=this.x.redSqr(),h=this.y.redSqr(),d=h.redSqr(),l=this.x.redAdd(h).redSqr().redISub(u).redISub(d);l=l.redIAdd(l);var p=u.redAdd(u).redIAdd(u),b=p.redSqr(),m=d.redIAdd(d);m=(m=m.redIAdd(m)).redIAdd(m),e=b.redISub(l).redISub(l),t=p.redMul(l.redISub(e)).redISub(m),r=(r=this.y.redMul(this.z)).redIAdd(r)}return this.curve.jpoint(e,t,r)},h.prototype._threeDbl=function(){var e,t,r;if(this.zOne){var i=this.x.redSqr(),n=this.y.redSqr(),a=n.redSqr(),o=this.x.redAdd(n).redSqr().redISub(i).redISub(a);o=o.redIAdd(o);var s=i.redAdd(i).redIAdd(i).redIAdd(this.curve.a),f=s.redSqr().redISub(o).redISub(o);e=f;var c=a.redIAdd(a);c=(c=c.redIAdd(c)).redIAdd(c),t=s.redMul(o.redISub(f)).redISub(c),r=this.y.redAdd(this.y)}else{var u=this.z.redSqr(),h=this.y.redSqr(),d=this.x.redMul(h),l=this.x.redSub(u).redMul(this.x.redAdd(u));l=l.redAdd(l).redIAdd(l);var p=d.redIAdd(d),b=(p=p.redIAdd(p)).redAdd(p);e=l.redSqr().redISub(b),r=this.y.redAdd(this.z).redSqr().redISub(h).redISub(u);var m=h.redSqr();m=(m=(m=m.redIAdd(m)).redIAdd(m)).redIAdd(m),t=l.redMul(p.redISub(e)).redISub(m)}return this.curve.jpoint(e,t,r)},h.prototype._dbl=function(){var e=this.curve.a,t=this.x,r=this.y,i=this.z,n=i.redSqr().redSqr(),a=t.redSqr(),o=r.redSqr(),s=a.redAdd(a).redIAdd(a).redIAdd(e.redMul(n)),f=t.redAdd(t),c=(f=f.redIAdd(f)).redMul(o),u=s.redSqr().redISub(c.redAdd(c)),h=c.redISub(u),d=o.redSqr();d=(d=(d=d.redIAdd(d)).redIAdd(d)).redIAdd(d);var l=s.redMul(h).redISub(d),p=r.redAdd(r).redMul(i);return this.curve.jpoint(u,l,p)},h.prototype.trpl=function(){if(!this.curve.zeroA)return this.dbl().add(this);var e=this.x.redSqr(),t=this.y.redSqr(),r=this.z.redSqr(),i=t.redSqr(),n=e.redAdd(e).redIAdd(e),a=n.redSqr(),o=this.x.redAdd(t).redSqr().redISub(e).redISub(i),s=(o=(o=(o=o.redIAdd(o)).redAdd(o).redIAdd(o)).redISub(a)).redSqr(),f=i.redIAdd(i);f=(f=(f=f.redIAdd(f)).redIAdd(f)).redIAdd(f);var c=n.redIAdd(o).redSqr().redISub(a).redISub(s).redISub(f),u=t.redMul(c);u=(u=u.redIAdd(u)).redIAdd(u);var h=this.x.redMul(s).redISub(u);h=(h=h.redIAdd(h)).redIAdd(h);var d=this.y.redMul(c.redMul(f.redISub(c)).redISub(o.redMul(s)));d=(d=(d=d.redIAdd(d)).redIAdd(d)).redIAdd(d);var l=this.z.redAdd(o).redSqr().redISub(r).redISub(s);return this.curve.jpoint(h,d,l)},h.prototype.mul=function(e,t){return e=new a(e,t),this.curve._wnafMul(this,e)},h.prototype.eq=function(e){if("affine"===e.type)return this.eq(e.toJ());if(this===e)return!0;var t=this.z.redSqr(),r=e.z.redSqr();if(0!==this.x.redMul(r).redISub(e.x.redMul(t)).cmpn(0))return!1;var i=t.redMul(this.z),n=r.redMul(e.z);return 0===this.y.redMul(n).redISub(e.y.redMul(i)).cmpn(0)},h.prototype.eqXToP=function(e){var t=this.z.redSqr(),r=e.toRed(this.curve.red).redMul(t);if(0===this.x.cmp(r))return!0;for(var i=e.clone(),n=this.curve.redN.redMul(t);;){if(i.iadd(this.curve.n),i.cmp(this.curve.p)>=0)return!1;if(r.redIAdd(n),0===this.x.cmp(r))return!0}},h.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)+">"},h.prototype.isInfinity=function(){return 0===this.z.cmpn(0)}},{"../../elliptic":97,"../curve":100,"bn.js":95,inherits:320}],103:[function(e,t,r){"use strict";var i,n=r,a=e("hash.js"),o=e("../elliptic"),s=o.utils.assert;function f(e){"short"===e.type?this.curve=new o.curve.short(e):"edwards"===e.type?this.curve=new o.curve.edwards(e):this.curve=new o.curve.mont(e),this.g=this.curve.g,this.n=this.curve.n,this.hash=e.hash,s(this.g.validate(),"Invalid curve"),s(this.g.mul(this.n).isInfinity(),"Invalid curve, G*N != O")}function c(e,t){Object.defineProperty(n,e,{configurable:!0,enumerable:!0,get:function(){var r=new f(t);return Object.defineProperty(n,e,{configurable:!0,enumerable:!0,value:r}),r}})}n.PresetCurve=f,c("p192",{type:"short",prime:"p192",p:"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff",a:"ffffffff ffffffff ffffffff fffffffe ffffffff fffffffc",b:"64210519 e59c80e7 0fa7e9ab 72243049 feb8deec c146b9b1",n:"ffffffff ffffffff ffffffff 99def836 146bc9b1 b4d22831",hash:a.sha256,gRed:!1,g:["188da80e b03090f6 7cbf20eb 43a18800 f4ff0afd 82ff1012","07192b95 ffc8da78 631011ed 6b24cdd5 73f977a1 1e794811"]}),c("p224",{type:"short",prime:"p224",p:"ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001",a:"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff fffffffe",b:"b4050a85 0c04b3ab f5413256 5044b0b7 d7bfd8ba 270b3943 2355ffb4",n:"ffffffff ffffffff ffffffff ffff16a2 e0b8f03e 13dd2945 5c5c2a3d",hash:a.sha256,gRed:!1,g:["b70e0cbd 6bb4bf7f 321390b9 4a03c1d3 56c21122 343280d6 115c1d21","bd376388 b5f723fb 4c22dfe6 cd4375a0 5a074764 44d58199 85007e34"]}),c("p256",{type:"short",prime:null,p:"ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff ffffffff",a:"ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff fffffffc",b:"5ac635d8 aa3a93e7 b3ebbd55 769886bc 651d06b0 cc53b0f6 3bce3c3e 27d2604b",n:"ffffffff 00000000 ffffffff ffffffff bce6faad a7179e84 f3b9cac2 fc632551",hash:a.sha256,gRed:!1,g:["6b17d1f2 e12c4247 f8bce6e5 63a440f2 77037d81 2deb33a0 f4a13945 d898c296","4fe342e2 fe1a7f9b 8ee7eb4a 7c0f9e16 2bce3357 6b315ece cbb64068 37bf51f5"]}),c("p384",{type:"short",prime:null,p:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 ffffffff",a:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 fffffffc",b:"b3312fa7 e23ee7e4 988e056b e3f82d19 181d9c6e fe814112 0314088f 5013875a c656398d 8a2ed19d 2a85c8ed d3ec2aef",n:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff c7634d81 f4372ddf 581a0db2 48b0a77a ecec196a ccc52973",hash:a.sha384,gRed:!1,g:["aa87ca22 be8b0537 8eb1c71e f320ad74 6e1d3b62 8ba79b98 59f741e0 82542a38 5502f25d bf55296c 3a545e38 72760ab7","3617de4a 96262c6f 5d9e98bf 9292dc29 f8f41dbd 289a147c e9da3113 b5f0b8c0 0a60b1ce 1d7e819d 7a431d7c 90ea0e5f"]}),c("p521",{type:"short",prime:null,p:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff",a:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffc",b:"00000051 953eb961 8e1c9a1f 929a21a0 b68540ee a2da725b 99b315f3 b8b48991 8ef109e1 56193951 ec7e937b 1652c0bd 3bb1bf07 3573df88 3d2c34f1 ef451fd4 6b503f00",n:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffa 51868783 bf2f966b 7fcc0148 f709a5d0 3bb5c9b8 899c47ae bb6fb71e 91386409",hash:a.sha512,gRed:!1,g:["000000c6 858e06b7 0404e9cd 9e3ecb66 2395b442 9c648139 053fb521 f828af60 6b4d3dba a14b5e77 efe75928 fe1dc127 a2ffa8de 3348b3c1 856a429b f97e7e31 c2e5bd66","00000118 39296a78 9a3bc004 5c8a5fb4 2c7d1bd9 98f54449 579b4468 17afbd17 273e662c 97ee7299 5ef42640 c550b901 3fad0761 353c7086 a272c240 88be9476 9fd16650"]}),c("curve25519",{type:"mont",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"76d06",b:"1",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:a.sha256,gRed:!1,g:["9"]}),c("ed25519",{type:"edwards",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"-1",c:"1",d:"52036cee2b6ffe73 8cc740797779e898 00700a4d4141d8ab 75eb4dca135978a3",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:a.sha256,gRed:!1,g:["216936d3cd6e53fec0a4e231fdd6dc5c692cc7609525a7b2c9562d608f25d51a","6666666666666666666666666666666666666666666666666666666666666658"]});try{i=e("./precomputed/secp256k1")}catch(e){i=void 0}c("secp256k1",{type:"short",prime:"k256",p:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f",a:"0",b:"7",n:"ffffffff ffffffff ffffffff fffffffe baaedce6 af48a03b bfd25e8c d0364141",h:"1",hash:a.sha256,beta:"7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee",lambda:"5363ad4cc05c30e0a5261c028812645a122e22ea20816678df02967c1b23bd72",basis:[{a:"3086d221a7d46bcde86c90e49284eb15",b:"-e4437ed6010e88286f547fa90abfe4c3"},{a:"114ca50f7a8e2f3f657c1108d9d44cfd8",b:"3086d221a7d46bcde86c90e49284eb15"}],gRed:!1,g:["79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798","483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8",i]})},{"../elliptic":97,"./precomputed/secp256k1":110,"hash.js":113}],104:[function(e,t,r){"use strict";var i=e("bn.js"),n=e("hmac-drbg"),a=e("../../elliptic"),o=a.utils.assert,s=e("./key"),f=e("./signature");function c(e){if(!(this instanceof c))return new c(e);"string"==typeof e&&(o(a.curves.hasOwnProperty(e),"Unknown curve "+e),e=a.curves[e]),e instanceof a.curves.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}t.exports=c,c.prototype.keyPair=function(e){return new s(this,e)},c.prototype.keyFromPrivate=function(e,t){return s.fromPrivate(this,e,t)},c.prototype.keyFromPublic=function(e,t){return s.fromPublic(this,e,t)},c.prototype.genKeyPair=function(e){e||(e={});for(var t=new n({hash:this.hash,pers:e.pers,persEnc:e.persEnc||"utf8",entropy:e.entropy||a.rand(this.hash.hmacStrength),entropyEnc:e.entropy&&e.entropyEnc||"utf8",nonce:this.n.toArray()}),r=this.n.byteLength(),o=this.n.sub(new i(2));;){var s=new i(t.generate(r));if(!(s.cmp(o)>0))return s.iaddn(1),this.keyFromPrivate(s)}},c.prototype._truncateToN=function(e,t){var r=8*e.byteLength()-this.n.bitLength();return r>0&&(e=e.ushrn(r)),!t&&e.cmp(this.n)>=0?e.sub(this.n):e},c.prototype.sign=function(e,t,r,a){"object"==typeof r&&(a=r,r=null),a||(a={}),t=this.keyFromPrivate(t,r),e=this._truncateToN(new i(e,16));for(var o=this.n.byteLength(),s=t.getPrivate().toArray("be",o),c=e.toArray("be",o),u=new n({hash:this.hash,entropy:s,nonce:c,pers:a.pers,persEnc:a.persEnc||"utf8"}),h=this.n.sub(new i(1)),d=0;;d++){var l=a.k?a.k(d):new i(u.generate(this.n.byteLength()));if(!((l=this._truncateToN(l,!0)).cmpn(1)<=0||l.cmp(h)>=0)){var p=this.g.mul(l);if(!p.isInfinity()){var b=p.getX(),m=b.umod(this.n);if(0!==m.cmpn(0)){var g=l.invm(this.n).mul(m.mul(t.getPrivate()).iadd(e));if(0!==(g=g.umod(this.n)).cmpn(0)){var v=(p.getY().isOdd()?1:0)|(0!==b.cmp(m)?2:0);return a.canonical&&g.cmp(this.nh)>0&&(g=this.n.sub(g),v^=1),new f({r:m,s:g,recoveryParam:v})}}}}}},c.prototype.verify=function(e,t,r,n){e=this._truncateToN(new i(e,16)),r=this.keyFromPublic(r,n);var a=(t=new f(t,"hex")).r,o=t.s;if(a.cmpn(1)<0||a.cmp(this.n)>=0)return!1;if(o.cmpn(1)<0||o.cmp(this.n)>=0)return!1;var s,c=o.invm(this.n),u=c.mul(e).umod(this.n),h=c.mul(a).umod(this.n);return this.curve._maxwellTrick?!(s=this.g.jmulAdd(u,r.getPublic(),h)).isInfinity()&&s.eqXToP(a):!(s=this.g.mulAdd(u,r.getPublic(),h)).isInfinity()&&0===s.getX().umod(this.n).cmp(a)},c.prototype.recoverPubKey=function(e,t,r,n){o((3&r)===r,"The recovery param is more than two bits"),t=new f(t,n);var a=this.n,s=new i(e),c=t.r,u=t.s,h=1&r,d=r>>1;if(c.cmp(this.curve.p.umod(this.curve.n))>=0&&d)throw new Error("Unable to find sencond key candinate");c=d?this.curve.pointFromX(c.add(this.curve.n),h):this.curve.pointFromX(c,h);var l=t.r.invm(a),p=a.sub(s).mul(l).umod(a),b=u.mul(l).umod(a);return this.g.mulAdd(p,c,b)},c.prototype.getKeyRecoveryParam=function(e,t,r,i){if(null!==(t=new f(t,i)).recoveryParam)return t.recoveryParam;for(var n=0;n<4;n++){var a;try{a=this.recoverPubKey(e,t,n)}catch(e){continue}if(a.eq(r))return n}throw new Error("Unable to find valid recovery factor")}},{"../../elliptic":97,"./key":105,"./signature":106,"bn.js":95,"hmac-drbg":125}],105:[function(e,t,r){"use strict";var i=e("bn.js"),n=e("../../elliptic").utils.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)}t.exports=a,a.fromPublic=function(e,t,r){return t instanceof a?t:new a(e,{pub:t,pubEnc:r})},a.fromPrivate=function(e,t,r){return t instanceof a?t:new a(e,{priv:t,privEnc:r})},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 i(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?n(e.x,"Need x coordinate"):"short"!==this.ec.curve.type&&"edwards"!==this.ec.curve.type||n(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.mul(this.priv).getX()},a.prototype.sign=function(e,t,r){return this.ec.sign(e,this,t,r)},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())+" >"}},{"../../elliptic":97,"bn.js":95}],106:[function(e,t,r){arguments[4][15][0].apply(r,arguments)},{"../../elliptic":97,"bn.js":95,dup:15}],107:[function(e,t,r){arguments[4][16][0].apply(r,arguments)},{"../../elliptic":97,"./key":108,"./signature":109,dup:16,"hash.js":113}],108:[function(e,t,r){arguments[4][17][0].apply(r,arguments)},{"../../elliptic":97,dup:17}],109:[function(e,t,r){arguments[4][18][0].apply(r,arguments)},{"../../elliptic":97,"bn.js":95,dup:18}],110:[function(e,t,r){arguments[4][20][0].apply(r,arguments)},{dup:20}],111:[function(e,t,r){"use strict";var i=r,n=e("bn.js"),a=e("minimalistic-assert"),o=e("minimalistic-crypto-utils");i.assert=a,i.toArray=o.toArray,i.zero2=o.zero2,i.toHex=o.toHex,i.encode=o.encode,i.getNAF=function(e,t){for(var r=[],i=1<<t+1,n=e.clone();n.cmpn(1)>=0;){var a;if(n.isOdd()){var o=n.andln(i-1);a=o>(i>>1)-1?(i>>1)-o:o,n.isubn(a)}else a=0;r.push(a);for(var s=0!==n.cmpn(0)&&0===n.andln(i-1)?t+1:1,f=1;f<s;f++)r.push(0);n.iushrn(s)}return r},i.getJSF=function(e,t){var r=[[],[]];e=e.clone(),t=t.clone();for(var i=0,n=0;e.cmpn(-i)>0||t.cmpn(-n)>0;){var a,o,s,f=e.andln(3)+i&3,c=t.andln(3)+n&3;if(3===f&&(f=-1),3===c&&(c=-1),0==(1&f))a=0;else a=3!==(s=e.andln(7)+i&7)&&5!==s||2!==c?f:-f;if(r[0].push(a),0==(1&c))o=0;else o=3!==(s=t.andln(7)+n&7)&&5!==s||2!==f?c:-c;r[1].push(o),2*i===a+1&&(i=1-i),2*n===o+1&&(n=1-n),e.iushrn(1),t.iushrn(1)}return r},i.cachedProperty=function(e,t,r){var i="_"+t;e.prototype[t]=function(){return void 0!==this[i]?this[i]:this[i]=r.call(this)}},i.parseBytes=function(e){return"string"==typeof e?i.toArray(e,"hex"):e},i.intFromLE=function(e){return new n(e,"hex","le")}},{"bn.js":95,"minimalistic-assert":126,"minimalistic-crypto-utils":127}],112:[function(e,t,r){var i;function n(e){this.rand=e}if(t.exports=function(e){return i||(i=new n(null)),i.generate(e)},t.exports.Rand=n,n.prototype.generate=function(e){return this._rand(e)},n.prototype._rand=function(e){if(this.rand.getBytes)return this.rand.getBytes(e);for(var t=new Uint8Array(e),r=0;r<t.length;r++)t[r]=this.rand.getByte();return t},"object"==typeof self)self.crypto&&self.crypto.getRandomValues?n.prototype._rand=function(e){var t=new Uint8Array(e);return self.crypto.getRandomValues(t),t}:self.msCrypto&&self.msCrypto.getRandomValues?n.prototype._rand=function(e){var t=new Uint8Array(e);return self.msCrypto.getRandomValues(t),t}:"object"==typeof window&&(n.prototype._rand=function(){throw new Error("Not implemented yet")});else try{var a=e("crypto");if("function"!=typeof a.randomBytes)throw new Error("Not supported");n.prototype._rand=function(e){return a.randomBytes(e)}}catch(e){}},{crypto:48}],113:[function(e,t,r){arguments[4][24][0].apply(r,arguments)},{"./hash/common":114,"./hash/hmac":115,"./hash/ripemd":116,"./hash/sha":117,"./hash/utils":124,dup:24}],114:[function(e,t,r){"use strict";var i=e("./utils"),n=e("minimalistic-assert");function a(){this.pending=null,this.pendingTotal=0,this.blockSize=this.constructor.blockSize,this.outSize=this.constructor.outSize,this.hmacStrength=this.constructor.hmacStrength,this.padLength=this.constructor.padLength/8,this.endian="big",this._delta8=this.blockSize/8,this._delta32=this.blockSize/32}r.BlockHash=a,a.prototype.update=function(e,t){if(e=i.toArray(e,t),this.pending?this.pending=this.pending.concat(e):this.pending=e,this.pendingTotal+=e.length,this.pending.length>=this._delta8){var r=(e=this.pending).length%this._delta8;this.pending=e.slice(e.length-r,e.length),0===this.pending.length&&(this.pending=null),e=i.join32(e,0,e.length-r,this.endian);for(var n=0;n<e.length;n+=this._delta32)this._update(e,n,n+this._delta32)}return this},a.prototype.digest=function(e){return this.update(this._pad()),n(null===this.pending),this._digest(e)},a.prototype._pad=function(){var e=this.pendingTotal,t=this._delta8,r=t-(e+this.padLength)%t,i=new Array(r+this.padLength);i[0]=128;for(var n=1;n<r;n++)i[n]=0;if(e<<=3,"big"===this.endian){for(var a=8;a<this.padLength;a++)i[n++]=0;i[n++]=0,i[n++]=0,i[n++]=0,i[n++]=0,i[n++]=e>>>24&255,i[n++]=e>>>16&255,i[n++]=e>>>8&255,i[n++]=255&e}else for(i[n++]=255&e,i[n++]=e>>>8&255,i[n++]=e>>>16&255,i[n++]=e>>>24&255,i[n++]=0,i[n++]=0,i[n++]=0,i[n++]=0,a=8;a<this.padLength;a++)i[n++]=0;return i}},{"./utils":124,"minimalistic-assert":126}],115:[function(e,t,r){"use strict";var i=e("./utils"),n=e("minimalistic-assert");function a(e,t,r){if(!(this instanceof a))return new a(e,t,r);this.Hash=e,this.blockSize=e.blockSize/8,this.outSize=e.outSize/8,this.inner=null,this.outer=null,this._init(i.toArray(t,r))}t.exports=a,a.prototype._init=function(e){e.length>this.blockSize&&(e=(new this.Hash).update(e).digest()),n(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)}},{"./utils":124,"minimalistic-assert":126}],116:[function(e,t,r){"use strict";var i=e("./utils"),n=e("./common"),a=i.rotl32,o=i.sum32,s=i.sum32_3,f=i.sum32_4,c=n.BlockHash;function u(){if(!(this instanceof u))return new u;c.call(this),this.h=[1732584193,4023233417,2562383102,271733878,3285377520],this.endian="little"}function h(e,t,r,i){return e<=15?t^r^i:e<=31?t&r|~t&i:e<=47?(t|~r)^i:e<=63?t&i|r&~i:t^(r|~i)}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}i.inherits(u,c),r.ripemd160=u,u.blockSize=512,u.outSize=160,u.hmacStrength=192,u.padLength=64,u.prototype._update=function(e,t){for(var r=this.h[0],i=this.h[1],n=this.h[2],c=this.h[3],u=this.h[4],v=r,y=i,w=n,_=c,S=u,M=0;M<80;M++){var x=o(a(f(r,h(M,i,n,c),e[p[M]+t],d(M)),m[M]),u);r=u,u=c,c=a(n,10),n=i,i=x,x=o(a(f(v,h(79-M,y,w,_),e[b[M]+t],l(M)),g[M]),S),v=S,S=_,_=a(w,10),w=y,y=x}x=s(this.h[1],n,_),this.h[1]=s(this.h[2],c,S),this.h[2]=s(this.h[3],u,v),this.h[3]=s(this.h[4],r,y),this.h[4]=s(this.h[0],i,w),this.h[0]=x},u.prototype._digest=function(e){return"hex"===e?i.toHex32(this.h,"little"):i.split32(this.h,"little")};var p=[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],b=[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],m=[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],g=[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]},{"./common":114,"./utils":124}],117:[function(e,t,r){"use strict";r.sha1=e("./sha/1"),r.sha224=e("./sha/224"),r.sha256=e("./sha/256"),r.sha384=e("./sha/384"),r.sha512=e("./sha/512")},{"./sha/1":118,"./sha/224":119,"./sha/256":120,"./sha/384":121,"./sha/512":122}],118:[function(e,t,r){"use strict";var i=e("../utils"),n=e("../common"),a=e("./common"),o=i.rotl32,s=i.sum32,f=i.sum32_5,c=a.ft_1,u=n.BlockHash,h=[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)}i.inherits(d,u),t.exports=d,d.blockSize=512,d.outSize=160,d.hmacStrength=80,d.padLength=64,d.prototype._update=function(e,t){for(var r=this.W,i=0;i<16;i++)r[i]=e[t+i];for(;i<r.length;i++)r[i]=o(r[i-3]^r[i-8]^r[i-14]^r[i-16],1);var n=this.h[0],a=this.h[1],u=this.h[2],d=this.h[3],l=this.h[4];for(i=0;i<r.length;i++){var p=~~(i/20),b=f(o(n,5),c(p,a,u,d),l,r[i],h[p]);l=d,d=u,u=o(a,30),a=n,n=b}this.h[0]=s(this.h[0],n),this.h[1]=s(this.h[1],a),this.h[2]=s(this.h[2],u),this.h[3]=s(this.h[3],d),this.h[4]=s(this.h[4],l)},d.prototype._digest=function(e){return"hex"===e?i.toHex32(this.h,"big"):i.split32(this.h,"big")}},{"../common":114,"../utils":124,"./common":123}],119:[function(e,t,r){"use strict";var i=e("../utils"),n=e("./256");function a(){if(!(this instanceof a))return new a;n.call(this),this.h=[3238371032,914150663,812702999,4144912697,4290775857,1750603025,1694076839,3204075428]}i.inherits(a,n),t.exports=a,a.blockSize=512,a.outSize=224,a.hmacStrength=192,a.padLength=64,a.prototype._digest=function(e){return"hex"===e?i.toHex32(this.h.slice(0,7),"big"):i.split32(this.h.slice(0,7),"big")}},{"../utils":124,"./256":120}],120:[function(e,t,r){"use strict";var i=e("../utils"),n=e("../common"),a=e("./common"),o=e("minimalistic-assert"),s=i.sum32,f=i.sum32_4,c=i.sum32_5,u=a.ch32,h=a.maj32,d=a.s0_256,l=a.s1_256,p=a.g0_256,b=a.g1_256,m=n.BlockHash,g=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298];function v(){if(!(this instanceof v))return new v;m.call(this),this.h=[1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225],this.k=g,this.W=new Array(64)}i.inherits(v,m),t.exports=v,v.blockSize=512,v.outSize=256,v.hmacStrength=192,v.padLength=64,v.prototype._update=function(e,t){for(var r=this.W,i=0;i<16;i++)r[i]=e[t+i];for(;i<r.length;i++)r[i]=f(b(r[i-2]),r[i-7],p(r[i-15]),r[i-16]);var n=this.h[0],a=this.h[1],m=this.h[2],g=this.h[3],v=this.h[4],y=this.h[5],w=this.h[6],_=this.h[7];for(o(this.k.length===r.length),i=0;i<r.length;i++){var S=c(_,l(v),u(v,y,w),this.k[i],r[i]),M=s(d(n),h(n,a,m));_=w,w=y,y=v,v=s(g,S),g=m,m=a,a=n,n=s(S,M)}this.h[0]=s(this.h[0],n),this.h[1]=s(this.h[1],a),this.h[2]=s(this.h[2],m),this.h[3]=s(this.h[3],g),this.h[4]=s(this.h[4],v),this.h[5]=s(this.h[5],y),this.h[6]=s(this.h[6],w),this.h[7]=s(this.h[7],_)},v.prototype._digest=function(e){return"hex"===e?i.toHex32(this.h,"big"):i.split32(this.h,"big")}},{"../common":114,"../utils":124,"./common":123,"minimalistic-assert":126}],121:[function(e,t,r){"use strict";var i=e("../utils"),n=e("./512");function a(){if(!(this instanceof a))return new a;n.call(this),this.h=[3418070365,3238371032,1654270250,914150663,2438529370,812702999,355462360,4144912697,1731405415,4290775857,2394180231,1750603025,3675008525,1694076839,1203062813,3204075428]}i.inherits(a,n),t.exports=a,a.blockSize=1024,a.outSize=384,a.hmacStrength=192,a.padLength=128,a.prototype._digest=function(e){return"hex"===e?i.toHex32(this.h.slice(0,12),"big"):i.split32(this.h.slice(0,12),"big")}},{"../utils":124,"./512":122}],122:[function(e,t,r){"use strict";var i=e("../utils"),n=e("../common"),a=e("minimalistic-assert"),o=i.rotr64_hi,s=i.rotr64_lo,f=i.shr64_hi,c=i.shr64_lo,u=i.sum64,h=i.sum64_hi,d=i.sum64_lo,l=i.sum64_4_hi,p=i.sum64_4_lo,b=i.sum64_5_hi,m=i.sum64_5_lo,g=n.BlockHash,v=[1116352408,3609767458,1899447441,602891725,3049323471,3964484399,3921009573,2173295548,961987163,4081628472,1508970993,3053834265,2453635748,2937671579,2870763221,3664609560,3624381080,2734883394,310598401,1164996542,607225278,1323610764,1426881987,3590304994,1925078388,4068182383,2162078206,991336113,2614888103,633803317,3248222580,3479774868,3835390401,2666613458,4022224774,944711139,264347078,2341262773,604807628,2007800933,770255983,1495990901,1249150122,1856431235,1555081692,3175218132,1996064986,2198950837,2554220882,3999719339,2821834349,766784016,2952996808,2566594879,3210313671,3203337956,3336571891,1034457026,3584528711,2466948901,113926993,3758326383,338241895,168717936,666307205,1188179964,773529912,1546045734,1294757372,1522805485,1396182291,2643833823,1695183700,2343527390,1986661051,1014477480,2177026350,1206759142,2456956037,344077627,2730485921,1290863460,2820302411,3158454273,3259730800,3505952657,3345764771,106217008,3516065817,3606008344,3600352804,1432725776,4094571909,1467031594,275423344,851169720,430227734,3100823752,506948616,1363258195,659060556,3750685593,883997877,3785050280,958139571,3318307427,1322822218,3812723403,1537002063,2003034995,1747873779,3602036899,1955562222,1575990012,2024104815,1125592928,2227730452,2716904306,2361852424,442776044,2428436474,593698344,2756734187,3733110249,3204031479,2999351573,3329325298,3815920427,3391569614,3928383900,3515267271,566280711,3940187606,3454069534,4118630271,4000239992,116418474,1914138554,174292421,2731055270,289380356,3203993006,460393269,320620315,685471733,587496836,852142971,1086792851,1017036298,365543100,1126000580,2618297676,1288033470,3409855158,1501505948,4234509866,1607167915,987167468,1816402316,1246189591];function y(){if(!(this instanceof y))return new y;g.call(this),this.h=[1779033703,4089235720,3144134277,2227873595,1013904242,4271175723,2773480762,1595750129,1359893119,2917565137,2600822924,725511199,528734635,4215389547,1541459225,327033209],this.k=v,this.W=new Array(160)}function w(e,t,r,i,n){var a=e&r^~e&n;return a<0&&(a+=4294967296),a}function _(e,t,r,i,n,a){var o=t&i^~t&a;return o<0&&(o+=4294967296),o}function S(e,t,r,i,n){var a=e&r^e&n^r&n;return a<0&&(a+=4294967296),a}function M(e,t,r,i,n,a){var o=t&i^t&a^i&a;return o<0&&(o+=4294967296),o}function x(e,t){var r=o(e,t,28)^o(t,e,2)^o(t,e,7);return r<0&&(r+=4294967296),r}function k(e,t){var r=s(e,t,28)^s(t,e,2)^s(t,e,7);return r<0&&(r+=4294967296),r}function A(e,t){var r=o(e,t,14)^o(e,t,18)^o(t,e,9);return r<0&&(r+=4294967296),r}function E(e,t){var r=s(e,t,14)^s(e,t,18)^s(t,e,9);return r<0&&(r+=4294967296),r}function I(e,t){var r=o(e,t,1)^o(e,t,8)^f(e,t,7);return r<0&&(r+=4294967296),r}function j(e,t){var r=s(e,t,1)^s(e,t,8)^c(e,t,7);return r<0&&(r+=4294967296),r}function B(e,t){var r=o(e,t,19)^o(t,e,29)^f(e,t,6);return r<0&&(r+=4294967296),r}function z(e,t){var r=s(e,t,19)^s(t,e,29)^c(e,t,6);return r<0&&(r+=4294967296),r}i.inherits(y,g),t.exports=y,y.blockSize=1024,y.outSize=512,y.hmacStrength=192,y.padLength=128,y.prototype._prepareBlock=function(e,t){for(var r=this.W,i=0;i<32;i++)r[i]=e[t+i];for(;i<r.length;i+=2){var n=B(r[i-4],r[i-3]),a=z(r[i-4],r[i-3]),o=r[i-14],s=r[i-13],f=I(r[i-30],r[i-29]),c=j(r[i-30],r[i-29]),u=r[i-32],h=r[i-31];r[i]=l(n,a,o,s,f,c,u,h),r[i+1]=p(n,a,o,s,f,c,u,h)}},y.prototype._update=function(e,t){this._prepareBlock(e,t);var r=this.W,i=this.h[0],n=this.h[1],o=this.h[2],s=this.h[3],f=this.h[4],c=this.h[5],l=this.h[6],p=this.h[7],g=this.h[8],v=this.h[9],y=this.h[10],I=this.h[11],j=this.h[12],B=this.h[13],z=this.h[14],C=this.h[15];a(this.k.length===r.length);for(var P=0;P<r.length;P+=2){var R=z,T=C,q=A(g,v),O=E(g,v),L=w(g,v,y,I,j),N=_(g,v,y,I,j,B),U=this.k[P],D=this.k[P+1],H=r[P],F=r[P+1],K=b(R,T,q,O,L,N,U,D,H,F),V=m(R,T,q,O,L,N,U,D,H,F);R=x(i,n),T=k(i,n),q=S(i,n,o,s,f),O=M(i,n,o,s,f,c);var W=h(R,T,q,O),G=d(R,T,q,O);z=j,C=B,j=y,B=I,y=g,I=v,g=h(l,p,K,V),v=d(p,p,K,V),l=f,p=c,f=o,c=s,o=i,s=n,i=h(K,V,W,G),n=d(K,V,W,G)}u(this.h,0,i,n),u(this.h,2,o,s),u(this.h,4,f,c),u(this.h,6,l,p),u(this.h,8,g,v),u(this.h,10,y,I),u(this.h,12,j,B),u(this.h,14,z,C)},y.prototype._digest=function(e){return"hex"===e?i.toHex32(this.h,"big"):i.split32(this.h,"big")}},{"../common":114,"../utils":124,"minimalistic-assert":126}],123:[function(e,t,r){"use strict";var i=e("../utils").rotr32;function n(e,t,r){return e&t^~e&r}function a(e,t,r){return e&t^e&r^t&r}function o(e,t,r){return e^t^r}r.ft_1=function(e,t,r,i){return 0===e?n(t,r,i):1===e||3===e?o(t,r,i):2===e?a(t,r,i):void 0},r.ch32=n,r.maj32=a,r.p32=o,r.s0_256=function(e){return i(e,2)^i(e,13)^i(e,22)},r.s1_256=function(e){return i(e,6)^i(e,11)^i(e,25)},r.g0_256=function(e){return i(e,7)^i(e,18)^e>>>3},r.g1_256=function(e){return i(e,17)^i(e,19)^e>>>10}},{"../utils":124}],124:[function(e,t,r){"use strict";var i=e("minimalistic-assert"),n=e("inherits");function a(e){return(e>>>24|e>>>8&65280|e<<8&16711680|(255&e)<<24)>>>0}function o(e){return 1===e.length?"0"+e:e}function s(e){return 7===e.length?"0"+e:6===e.length?"00"+e:5===e.length?"000"+e:4===e.length?"0000"+e:3===e.length?"00000"+e:2===e.length?"000000"+e:1===e.length?"0000000"+e:e}r.inherits=n,r.toArray=function(e,t){if(Array.isArray(e))return e.slice();if(!e)return[];var r=[];if("string"==typeof e)if(t){if("hex"===t)for((e=e.replace(/[^a-z0-9]+/gi,"")).length%2!=0&&(e="0"+e),i=0;i<e.length;i+=2)r.push(parseInt(e[i]+e[i+1],16))}else for(var i=0;i<e.length;i++){var n=e.charCodeAt(i),a=n>>8,o=255&n;a?r.push(a,o):r.push(o)}else for(i=0;i<e.length;i++)r[i]=0|e[i];return r},r.toHex=function(e){for(var t="",r=0;r<e.length;r++)t+=o(e[r].toString(16));return t},r.htonl=a,r.toHex32=function(e,t){for(var r="",i=0;i<e.length;i++){var n=e[i];"little"===t&&(n=a(n)),r+=s(n.toString(16))}return r},r.zero2=o,r.zero8=s,r.join32=function(e,t,r,n){var a=r-t;i(a%4==0);for(var o=new Array(a/4),s=0,f=t;s<o.length;s++,f+=4){var c;c="big"===n?e[f]<<24|e[f+1]<<16|e[f+2]<<8|e[f+3]:e[f+3]<<24|e[f+2]<<16|e[f+1]<<8|e[f],o[s]=c>>>0}return o},r.split32=function(e,t){for(var r=new Array(4*e.length),i=0,n=0;i<e.length;i++,n+=4){var a=e[i];"big"===t?(r[n]=a>>>24,r[n+1]=a>>>16&255,r[n+2]=a>>>8&255,r[n+3]=255&a):(r[n+3]=a>>>24,r[n+2]=a>>>16&255,r[n+1]=a>>>8&255,r[n]=255&a)}return r},r.rotr32=function(e,t){return e>>>t|e<<32-t},r.rotl32=function(e,t){return e<<t|e>>>32-t},r.sum32=function(e,t){return e+t>>>0},r.sum32_3=function(e,t,r){return e+t+r>>>0},r.sum32_4=function(e,t,r,i){return e+t+r+i>>>0},r.sum32_5=function(e,t,r,i,n){return e+t+r+i+n>>>0},r.sum64=function(e,t,r,i){var n=e[t],a=i+e[t+1]>>>0,o=(a<i?1:0)+r+n;e[t]=o>>>0,e[t+1]=a},r.sum64_hi=function(e,t,r,i){return(t+i>>>0<t?1:0)+e+r>>>0},r.sum64_lo=function(e,t,r,i){return t+i>>>0},r.sum64_4_hi=function(e,t,r,i,n,a,o,s){var f=0,c=t;return f+=(c=c+i>>>0)<t?1:0,f+=(c=c+a>>>0)<a?1:0,e+r+n+o+(f+=(c=c+s>>>0)<s?1:0)>>>0},r.sum64_4_lo=function(e,t,r,i,n,a,o,s){return t+i+a+s>>>0},r.sum64_5_hi=function(e,t,r,i,n,a,o,s,f,c){var u=0,h=t;return u+=(h=h+i>>>0)<t?1:0,u+=(h=h+a>>>0)<a?1:0,u+=(h=h+s>>>0)<s?1:0,e+r+n+o+f+(u+=(h=h+c>>>0)<c?1:0)>>>0},r.sum64_5_lo=function(e,t,r,i,n,a,o,s,f,c){return t+i+a+s+c>>>0},r.rotr64_hi=function(e,t,r){return(t<<32-r|e>>>r)>>>0},r.rotr64_lo=function(e,t,r){return(e<<32-r|t>>>r)>>>0},r.shr64_hi=function(e,t,r){return e>>>r},r.shr64_lo=function(e,t,r){return(e<<32-r|t>>>r)>>>0}},{inherits:320,"minimalistic-assert":126}],125:[function(e,t,r){"use strict";var i=e("hash.js"),n=e("minimalistic-crypto-utils"),a=e("minimalistic-assert");function o(e){if(!(this instanceof o))return new o(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=n.toArray(e.entropy,e.entropyEnc||"hex"),r=n.toArray(e.nonce,e.nonceEnc||"hex"),i=n.toArray(e.pers,e.persEnc||"hex");a(t.length>=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits"),this._init(t,r,i)}t.exports=o,o.prototype._init=function(e,t,r){var i=e.concat(t).concat(r);this.K=new Array(this.outLen/8),this.V=new Array(this.outLen/8);for(var n=0;n<this.V.length;n++)this.K[n]=0,this.V[n]=1;this._update(i),this._reseed=1,this.reseedInterval=281474976710656},o.prototype._hmac=function(){return new i.hmac(this.hash,this.K)},o.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())},o.prototype.reseed=function(e,t,r,i){"string"!=typeof t&&(i=r,r=t,t=null),e=n.toArray(e,t),r=n.toArray(r,i),a(e.length>=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits"),this._update(e.concat(r||[])),this._reseed=1},o.prototype.generate=function(e,t,r,i){if(this._reseed>this.reseedInterval)throw new Error("Reseed is required");"string"!=typeof t&&(i=r,r=t,t=null),r&&(r=n.toArray(r,i||"hex"),this._update(r));for(var a=[];a.length<e;)this.V=this._hmac().update(this.V).digest(),a=a.concat(this.V);var o=a.slice(0,e);return this._update(r),this._reseed++,n.encode(o,t)}},{"hash.js":113,"minimalistic-assert":126,"minimalistic-crypto-utils":127}],126:[function(e,t,r){arguments[4][83][0].apply(r,arguments)},{dup:83}],127:[function(e,t,r){"use strict";var i=r;function n(e){return 1===e.length?"0"+e:e}function a(e){for(var t="",r=0;r<e.length;r++)t+=n(e[r].toString(16));return t}i.toArray=function(e,t){if(Array.isArray(e))return e.slice();if(!e)return[];var r=[];if("string"!=typeof e){for(var i=0;i<e.length;i++)r[i]=0|e[i];return r}if("hex"===t){(e=e.replace(/[^a-z0-9]+/gi,"")).length%2!=0&&(e="0"+e);for(i=0;i<e.length;i+=2)r.push(parseInt(e[i]+e[i+1],16))}else for(i=0;i<e.length;i++){var n=e.charCodeAt(i),a=n>>8,o=255&n;a?r.push(a,o):r.push(o)}return r},i.zero2=n,i.toHex=a,i.encode=function(e,t){return"hex"===t?a(e):e}},{}],128:[function(e,t,r){t.exports={name:"elliptic",version:"6.4.1",description:"EC cryptography",main:"lib/elliptic.js",files:["lib"],scripts:{jscs:"jscs benchmarks/*.js lib/*.js lib/**/*.js lib/**/**/*.js test/index.js",jshint:"jscs benchmarks/*.js lib/*.js lib/**/*.js lib/**/**/*.js test/index.js",lint:"npm run jscs && npm run jshint",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+ssh://git@github.com/indutny/elliptic.git"},keywords:["EC","Elliptic","curve","Cryptography"],author:{name:"Fedor Indutny",email:"fedor@indutny.com"},license:"MIT",bugs:{url:"https://github.com/indutny/elliptic/issues"},homepage:"https://github.com/indutny/elliptic",devDependencies:{brfs:"^1.4.3",coveralls:"^2.11.3",grunt:"^0.4.5","grunt-browserify":"^5.0.0","grunt-cli":"^1.2.0","grunt-contrib-connect":"^1.0.0","grunt-contrib-copy":"^1.0.0","grunt-contrib-uglify":"^1.0.1","grunt-mocha-istanbul":"^3.0.1","grunt-saucelabs":"^8.6.2",istanbul:"^0.4.2",jscs:"^2.9.0",jshint:"^2.6.0",mocha:"^2.1.0"},dependencies:{"bn.js":"^4.4.0",brorand:"^1.0.1","hash.js":"^1.0.0","hmac-drbg":"^1.0.0",inherits:"^2.0.1","minimalistic-assert":"^1.0.0","minimalistic-crypto-utils":"^1.0.0"},gitHead:"523da1cf71ddcfd607fbdee1858bc2af47f0e700",_id:"elliptic@6.4.1",_npmVersion:"6.3.0",_nodeVersion:"10.5.0",_npmUser:{name:"indutny",email:"fedor@indutny.com"},dist:{integrity:"sha512-BsXLz5sqX8OHcsh7CqBMztyXARmGQ3LWPtGjJi6DiJHq5C/qvi9P3OqgswKSDftbu8+IoI/QDTAm2fFnQ9SZSQ==",shasum:"c2d0b7776911b86722c632c3c06c60f2f819939a",tarball:"https://registry.npmjs.org/elliptic/-/elliptic-6.4.1.tgz",fileCount:17,unpackedSize:118371,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJba7vUCRA9TVsSAnZWagAA+gcP/jWaj5GmDZ0YFi/X4g5O\nx+pxu9i3HbP9YqywT7rz3XFXSaytu0LQDeDEbddl523X69tsbKfzHRTcnW8n\n2r0VjPhttRm+0RpEhBwjSIK34VkQA1xIWh2ugOToKXVCFVLM5VFDPGzbiN6x\n/hpL7gj1hoCRVmuhjnqFQ+vPKACKfv1Eq4CsRmu2focmP37kQpWQlweD/z4V\nJF4NxA33Fvp13Fl+9g4sPHyhUVsW9ojVaG3Ijn70pCaGQM18UPlbODkWQ1QX\nAgteOFjkIOtcalJk3B3qsM8GZeHEcAFvt2T73miJkHdCGNmRQS45Ede+gnj0\nlLlZJsCCKUHtTqrlprHo6AgMnBZufmytyozYAHC1/JYniazSBi2yPHtQeniR\nl69BfiRBdD2rNrMPwmCNRkMqrgel5WMGpaD0xdaFAHF1Ru2ZQFKsA7KvPGgp\nA20+LN11cCib67Pg5XDyrZ92T3yXec+6gQ3iq9d9UBZKFGl0P8ebVqq1LrUJ\na6nekwMpRISWnKcqV72XVmQdBmUWHq9VfVLsWJzVIJqtpHmUO7q74ACP3i4W\n0/F1REeI0YEhh3NjeStdDecfjlu7PY0pLQpbk2I3ms+6DO+cAfeDEev5jFBK\nwQabRNhITeT1FVtxZAcApj33fnCdqwaWr1NS00K5ZRqhDTTzPr/O4KRN4CR1\npstU\r\n=UVBB\r\n-----END PGP SIGNATURE-----\r\n"},maintainers:[{name:"indutny",email:"fedor@indutny.com"}],directories:{},_npmOperationalInternal:{host:"s3://npm-registry-packages",tmp:"tmp/elliptic_6.4.1_1533787091502_0.6309761823717674"},_shasum:"c2d0b7776911b86722c632c3c06c60f2f819939a",_from:"elliptic@>=6.0.0 <7.0.0",_resolved:"https://registry.npmjs.org/elliptic/-/elliptic-6.4.1.tgz"}},{}],129:[function(e,t,r){t.exports={"2.16.840.1.101.3.4.1.1":"aes-128-ecb","2.16.840.1.101.3.4.1.2":"aes-128-cbc","2.16.840.1.101.3.4.1.3":"aes-128-ofb","2.16.840.1.101.3.4.1.4":"aes-128-cfb","2.16.840.1.101.3.4.1.21":"aes-192-ecb","2.16.840.1.101.3.4.1.22":"aes-192-cbc","2.16.840.1.101.3.4.1.23":"aes-192-ofb","2.16.840.1.101.3.4.1.24":"aes-192-cfb","2.16.840.1.101.3.4.1.41":"aes-256-ecb","2.16.840.1.101.3.4.1.42":"aes-256-cbc","2.16.840.1.101.3.4.1.43":"aes-256-ofb","2.16.840.1.101.3.4.1.44":"aes-256-cfb"}},{}],130:[function(e,t,r){"use strict";var i=e("asn1.js");r.certificate=e("./certificate");var n=i.define("RSAPrivateKey",function(){this.seq().obj(this.key("version").int(),this.key("modulus").int(),this.key("publicExponent").int(),this.key("privateExponent").int(),this.key("prime1").int(),this.key("prime2").int(),this.key("exponent1").int(),this.key("exponent2").int(),this.key("coefficient").int())});r.RSAPrivateKey=n;var a=i.define("RSAPublicKey",function(){this.seq().obj(this.key("modulus").int(),this.key("publicExponent").int())});r.RSAPublicKey=a;var o=i.define("SubjectPublicKeyInfo",function(){this.seq().obj(this.key("algorithm").use(s),this.key("subjectPublicKey").bitstr())});r.PublicKey=o;var s=i.define("AlgorithmIdentifier",function(){this.seq().obj(this.key("algorithm").objid(),this.key("none").null_().optional(),this.key("curve").objid().optional(),this.key("params").seq().obj(this.key("p").int(),this.key("q").int(),this.key("g").int()).optional())}),f=i.define("PrivateKeyInfo",function(){this.seq().obj(this.key("version").int(),this.key("algorithm").use(s),this.key("subjectPrivateKey").octstr())});r.PrivateKey=f;var c=i.define("EncryptedPrivateKeyInfo",function(){this.seq().obj(this.key("algorithm").seq().obj(this.key("id").objid(),this.key("decrypt").seq().obj(this.key("kde").seq().obj(this.key("id").objid(),this.key("kdeparams").seq().obj(this.key("salt").octstr(),this.key("iters").int())),this.key("cipher").seq().obj(this.key("algo").objid(),this.key("iv").octstr()))),this.key("subjectPrivateKey").octstr())});r.EncryptedPrivateKey=c;var u=i.define("DSAPrivateKey",function(){this.seq().obj(this.key("version").int(),this.key("p").int(),this.key("q").int(),this.key("g").int(),this.key("pub_key").int(),this.key("priv_key").int())});r.DSAPrivateKey=u,r.DSAparam=i.define("DSAparam",function(){this.int()});var h=i.define("ECPrivateKey",function(){this.seq().obj(this.key("version").int(),this.key("privateKey").octstr(),this.key("parameters").optional().explicit(0).use(d),this.key("publicKey").optional().explicit(1).bitstr())});r.ECPrivateKey=h;var d=i.define("ECParameters",function(){this.choice({namedCurve:this.objid()})});r.signature=i.define("signature",function(){this.seq().obj(this.key("r").int(),this.key("s").int())})},{"./certificate":131,"asn1.js":134}],131:[function(e,t,r){"use strict";var i=e("asn1.js"),n=i.define("Time",function(){this.choice({utcTime:this.utctime(),generalTime:this.gentime()})}),a=i.define("AttributeTypeValue",function(){this.seq().obj(this.key("type").objid(),this.key("value").any())}),o=i.define("AlgorithmIdentifier",function(){this.seq().obj(this.key("algorithm").objid(),this.key("parameters").optional())}),s=i.define("SubjectPublicKeyInfo",function(){this.seq().obj(this.key("algorithm").use(o),this.key("subjectPublicKey").bitstr())}),f=i.define("RelativeDistinguishedName",function(){this.setof(a)}),c=i.define("RDNSequence",function(){this.seqof(f)}),u=i.define("Name",function(){this.choice({rdnSequence:this.use(c)})}),h=i.define("Validity",function(){this.seq().obj(this.key("notBefore").use(n),this.key("notAfter").use(n))}),d=i.define("Extension",function(){this.seq().obj(this.key("extnID").objid(),this.key("critical").bool().def(!1),this.key("extnValue").octstr())}),l=i.define("TBSCertificate",function(){this.seq().obj(this.key("version").explicit(0).int(),this.key("serialNumber").int(),this.key("signature").use(o),this.key("issuer").use(u),this.key("validity").use(h),this.key("subject").use(u),this.key("subjectPublicKeyInfo").use(s),this.key("issuerUniqueID").implicit(1).bitstr().optional(),this.key("subjectUniqueID").implicit(2).bitstr().optional(),this.key("extensions").explicit(3).seqof(d).optional())}),p=i.define("X509Certificate",function(){this.seq().obj(this.key("tbsCertificate").use(l),this.key("signatureAlgorithm").use(o),this.key("signatureValue").bitstr())});t.exports=p},{"asn1.js":134}],132:[function(e,t,r){(function(r){var i=/Proc-Type: 4,ENCRYPTED[\n\r]+DEK-Info: AES-((?:128)|(?:192)|(?:256))-CBC,([0-9A-H]+)[\n\r]+([0-9A-z\n\r\+\/\=]+)[\n\r]+/m,n=/^-----BEGIN ((?:.* KEY)|CERTIFICATE)-----/m,a=/^-----BEGIN ((?:.* KEY)|CERTIFICATE)-----([0-9A-z\n\r\+\/\=]+)-----END \1-----$/m,o=e("evp_bytestokey"),s=e("browserify-aes");t.exports=function(e,t){var f,c=e.toString(),u=c.match(i);if(u){var h="aes"+u[1],d=new r(u[2],"hex"),l=new r(u[3].replace(/[\r\n]/g,""),"base64"),p=o(t,d.slice(0,8),parseInt(u[1],10)).key,b=[],m=s.createDecipheriv(h,p,d);b.push(m.update(l)),b.push(m.final()),f=r.concat(b)}else{var g=c.match(a);f=new r(g[2].replace(/[\r\n]/g,""),"base64")}return{tag:c.match(n)[1],data:f}}}).call(this,e("buffer").Buffer)},{"browserify-aes":151,buffer:49,evp_bytestokey:169}],133:[function(e,t,r){(function(r){var i=e("./asn1"),n=e("./aesid.json"),a=e("./fixProc"),o=e("browserify-aes"),s=e("pbkdf2");function f(e){var t;"object"!=typeof e||r.isBuffer(e)||(t=e.passphrase,e=e.key),"string"==typeof e&&(e=new r(e));var f,c,u=a(e,t),h=u.tag,d=u.data;switch(h){case"CERTIFICATE":c=i.certificate.decode(d,"der").tbsCertificate.subjectPublicKeyInfo;case"PUBLIC KEY":switch(c||(c=i.PublicKey.decode(d,"der")),f=c.algorithm.algorithm.join(".")){case"1.2.840.113549.1.1.1":return i.RSAPublicKey.decode(c.subjectPublicKey.data,"der");case"1.2.840.10045.2.1":return c.subjectPrivateKey=c.subjectPublicKey,{type:"ec",data:c};case"1.2.840.10040.4.1":return c.algorithm.params.pub_key=i.DSAparam.decode(c.subjectPublicKey.data,"der"),{type:"dsa",data:c.algorithm.params};default:throw new Error("unknown key id "+f)}throw new Error("unknown key type "+h);case"ENCRYPTED PRIVATE KEY":d=function(e,t){var i=e.algorithm.decrypt.kde.kdeparams.salt,a=parseInt(e.algorithm.decrypt.kde.kdeparams.iters.toString(),10),f=n[e.algorithm.decrypt.cipher.algo.join(".")],c=e.algorithm.decrypt.cipher.iv,u=e.subjectPrivateKey,h=parseInt(f.split("-")[1],10)/8,d=s.pbkdf2Sync(t,i,a,h),l=o.createDecipheriv(f,d,c),p=[];return p.push(l.update(u)),p.push(l.final()),r.concat(p)}(d=i.EncryptedPrivateKey.decode(d,"der"),t);case"PRIVATE KEY":switch(f=(c=i.PrivateKey.decode(d,"der")).algorithm.algorithm.join(".")){case"1.2.840.113549.1.1.1":return i.RSAPrivateKey.decode(c.subjectPrivateKey,"der");case"1.2.840.10045.2.1":return{curve:c.algorithm.curve,privateKey:i.ECPrivateKey.decode(c.subjectPrivateKey,"der").privateKey};case"1.2.840.10040.4.1":return c.algorithm.params.priv_key=i.DSAparam.decode(c.subjectPrivateKey,"der"),{type:"dsa",params:c.algorithm.params};default:throw new Error("unknown key id "+f)}throw new Error("unknown key type "+h);case"RSA PUBLIC KEY":return i.RSAPublicKey.decode(d,"der");case"RSA PRIVATE KEY":return i.RSAPrivateKey.decode(d,"der");case"DSA PRIVATE KEY":return{type:"dsa",params:i.DSAPrivateKey.decode(d,"der")};case"EC PRIVATE KEY":return{curve:(d=i.ECPrivateKey.decode(d,"der")).parameters.value,privateKey:d.privateKey};default:throw new Error("unknown key type "+h)}}t.exports=f,f.signature=i.signature}).call(this,e("buffer").Buffer)},{"./aesid.json":129,"./asn1":130,"./fixProc":132,"browserify-aes":151,buffer:49,pbkdf2:247}],134:[function(e,t,r){var i=r;i.bignum=e("bn.js"),i.define=e("./asn1/api").define,i.base=e("./asn1/base"),i.constants=e("./asn1/constants"),i.decoders=e("./asn1/decoders"),i.encoders=e("./asn1/encoders")},{"./asn1/api":135,"./asn1/base":137,"./asn1/constants":141,"./asn1/decoders":143,"./asn1/encoders":146,"bn.js":95}],135:[function(e,t,r){var i=e("../asn1"),n=e("inherits");function a(e,t){this.name=e,this.body=t,this.decoders={},this.encoders={}}r.define=function(e,t){return new a(e,t)},a.prototype._createNamed=function(t){var r;try{r=e("vm").runInThisContext("(function "+this.name+"(entity) {\n  this._initNamed(entity);\n})")}catch(e){r=function(e){this._initNamed(e)}}return n(r,t),r.prototype._initNamed=function(e){t.call(this,e)},new r(this)},a.prototype._getDecoder=function(e){return e=e||"der",this.decoders.hasOwnProperty(e)||(this.decoders[e]=this._createNamed(i.decoders[e])),this.decoders[e]},a.prototype.decode=function(e,t,r){return this._getDecoder(t).decode(e,r)},a.prototype._getEncoder=function(e){return e=e||"der",this.encoders.hasOwnProperty(e)||(this.encoders[e]=this._createNamed(i.encoders[e])),this.encoders[e]},a.prototype.encode=function(e,t,r){return this._getEncoder(t).encode(e,r)}},{"../asn1":134,inherits:320,vm:345}],136:[function(e,t,r){var i=e("inherits"),n=e("../base").Reporter,a=e("buffer").Buffer;function o(e,t){n.call(this,t),a.isBuffer(e)?(this.base=e,this.offset=0,this.length=e.length):this.error("Input not Buffer")}function s(e,t){if(Array.isArray(e))this.length=0,this.value=e.map(function(e){return e instanceof s||(e=new s(e,t)),this.length+=e.length,e},this);else if("number"==typeof e){if(!(0<=e&&e<=255))return t.error("non-byte EncoderBuffer value");this.value=e,this.length=1}else if("string"==typeof e)this.value=e,this.length=a.byteLength(e);else{if(!a.isBuffer(e))return t.error("Unsupported type: "+typeof e);this.value=e,this.length=e.length}}i(o,n),r.DecoderBuffer=o,o.prototype.save=function(){return{offset:this.offset,reporter:n.prototype.save.call(this)}},o.prototype.restore=function(e){var t=new o(this.base);return t.offset=e.offset,t.length=this.offset,this.offset=e.offset,n.prototype.restore.call(this,e.reporter),t},o.prototype.isEmpty=function(){return this.offset===this.length},o.prototype.readUInt8=function(e){return this.offset+1<=this.length?this.base.readUInt8(this.offset++,!0):this.error(e||"DecoderBuffer overrun")},o.prototype.skip=function(e,t){if(!(this.offset+e<=this.length))return this.error(t||"DecoderBuffer overrun");var r=new o(this.base);return r._reporterState=this._reporterState,r.offset=this.offset,r.length=this.offset+e,this.offset+=e,r},o.prototype.raw=function(e){return this.base.slice(e?e.offset:this.offset,this.length)},r.EncoderBuffer=s,s.prototype.join=function(e,t){return e||(e=new a(this.length)),t||(t=0),0===this.length?e:(Array.isArray(this.value)?this.value.forEach(function(r){r.join(e,t),t+=r.length}):("number"==typeof this.value?e[t]=this.value:"string"==typeof this.value?e.write(this.value,t):a.isBuffer(this.value)&&this.value.copy(e,t),t+=this.length),e)}},{"../base":137,buffer:49,inherits:320}],137:[function(e,t,r){var i=r;i.Reporter=e("./reporter").Reporter,i.DecoderBuffer=e("./buffer").DecoderBuffer,i.EncoderBuffer=e("./buffer").EncoderBuffer,i.Node=e("./node")},{"./buffer":136,"./node":138,"./reporter":139}],138:[function(e,t,r){var i=e("../base").Reporter,n=e("../base").EncoderBuffer,a=e("../base").DecoderBuffer,o=e("minimalistic-assert"),s=["seq","seqof","set","setof","objid","bool","gentime","utctime","null_","enum","int","objDesc","bitstr","bmpstr","charstr","genstr","graphstr","ia5str","iso646str","numstr","octstr","printstr","t61str","unistr","utf8str","videostr"],f=["key","obj","use","optional","explicit","implicit","def","choice","any","contains"].concat(s);function c(e,t){var r={};this._baseState=r,r.enc=e,r.parent=t||null,r.children=null,r.tag=null,r.args=null,r.reverseArgs=null,r.choice=null,r.optional=!1,r.any=!1,r.obj=!1,r.use=null,r.useDecoder=null,r.key=null,r.default=null,r.explicit=null,r.implicit=null,r.contains=null,r.parent||(r.children=[],this._wrap())}t.exports=c;var u=["enc","parent","children","tag","args","reverseArgs","choice","optional","any","obj","use","alteredUse","key","default","explicit","implicit","contains"];c.prototype.clone=function(){var e=this._baseState,t={};u.forEach(function(r){t[r]=e[r]});var r=new this.constructor(t.parent);return r._baseState=t,r},c.prototype._wrap=function(){var e=this._baseState;f.forEach(function(t){this[t]=function(){var r=new this.constructor(this);return e.children.push(r),r[t].apply(r,arguments)}},this)},c.prototype._init=function(e){var t=this._baseState;o(null===t.parent),e.call(this),t.children=t.children.filter(function(e){return e._baseState.parent===this},this),o.equal(t.children.length,1,"Root node can have only one child")},c.prototype._useArgs=function(e){var t=this._baseState,r=e.filter(function(e){return e instanceof this.constructor},this);e=e.filter(function(e){return!(e instanceof this.constructor)},this),0!==r.length&&(o(null===t.children),t.children=r,r.forEach(function(e){e._baseState.parent=this},this)),0!==e.length&&(o(null===t.args),t.args=e,t.reverseArgs=e.map(function(e){if("object"!=typeof e||e.constructor!==Object)return e;var t={};return Object.keys(e).forEach(function(r){r==(0|r)&&(r|=0);var i=e[r];t[i]=r}),t}))},["_peekTag","_decodeTag","_use","_decodeStr","_decodeObjid","_decodeTime","_decodeNull","_decodeInt","_decodeBool","_decodeList","_encodeComposite","_encodeStr","_encodeObjid","_encodeTime","_encodeNull","_encodeInt","_encodeBool"].forEach(function(e){c.prototype[e]=function(){var t=this._baseState;throw new Error(e+" not implemented for encoding: "+t.enc)}}),s.forEach(function(e){c.prototype[e]=function(){var t=this._baseState,r=Array.prototype.slice.call(arguments);return o(null===t.tag),t.tag=e,this._useArgs(r),this}}),c.prototype.use=function(e){o(e);var t=this._baseState;return o(null===t.use),t.use=e,this},c.prototype.optional=function(){return this._baseState.optional=!0,this},c.prototype.def=function(e){var t=this._baseState;return o(null===t.default),t.default=e,t.optional=!0,this},c.prototype.explicit=function(e){var t=this._baseState;return o(null===t.explicit&&null===t.implicit),t.explicit=e,this},c.prototype.implicit=function(e){var t=this._baseState;return o(null===t.explicit&&null===t.implicit),t.implicit=e,this},c.prototype.obj=function(){var e=this._baseState,t=Array.prototype.slice.call(arguments);return e.obj=!0,0!==t.length&&this._useArgs(t),this},c.prototype.key=function(e){var t=this._baseState;return o(null===t.key),t.key=e,this},c.prototype.any=function(){return this._baseState.any=!0,this},c.prototype.choice=function(e){var t=this._baseState;return o(null===t.choice),t.choice=e,this._useArgs(Object.keys(e).map(function(t){return e[t]})),this},c.prototype.contains=function(e){var t=this._baseState;return o(null===t.use),t.contains=e,this},c.prototype._decode=function(e,t){var r=this._baseState;if(null===r.parent)return e.wrapResult(r.children[0]._decode(e,t));var i,n=r.default,o=!0,s=null;if(null!==r.key&&(s=e.enterKey(r.key)),r.optional){var f=null;if(null!==r.explicit?f=r.explicit:null!==r.implicit?f=r.implicit:null!==r.tag&&(f=r.tag),null!==f||r.any){if(o=this._peekTag(e,f,r.any),e.isError(o))return o}else{var c=e.save();try{null===r.choice?this._decodeGeneric(r.tag,e,t):this._decodeChoice(e,t),o=!0}catch(e){o=!1}e.restore(c)}}if(r.obj&&o&&(i=e.enterObject()),o){if(null!==r.explicit){var u=this._decodeTag(e,r.explicit);if(e.isError(u))return u;e=u}var h=e.offset;if(null===r.use&&null===r.choice){if(r.any)c=e.save();var d=this._decodeTag(e,null!==r.implicit?r.implicit:r.tag,r.any);if(e.isError(d))return d;r.any?n=e.raw(c):e=d}if(t&&t.track&&null!==r.tag&&t.track(e.path(),h,e.length,"tagged"),t&&t.track&&null!==r.tag&&t.track(e.path(),e.offset,e.length,"content"),n=r.any?n:null===r.choice?this._decodeGeneric(r.tag,e,t):this._decodeChoice(e,t),e.isError(n))return n;if(r.any||null!==r.choice||null===r.children||r.children.forEach(function(r){r._decode(e,t)}),r.contains&&("octstr"===r.tag||"bitstr"===r.tag)){var l=new a(n);n=this._getUse(r.contains,e._reporterState.obj)._decode(l,t)}}return r.obj&&o&&(n=e.leaveObject(i)),null===r.key||null===n&&!0!==o?null!==s&&e.exitKey(s):e.leaveKey(s,r.key,n),n},c.prototype._decodeGeneric=function(e,t,r){var i=this._baseState;return"seq"===e||"set"===e?null:"seqof"===e||"setof"===e?this._decodeList(t,e,i.args[0],r):/str$/.test(e)?this._decodeStr(t,e,r):"objid"===e&&i.args?this._decodeObjid(t,i.args[0],i.args[1],r):"objid"===e?this._decodeObjid(t,null,null,r):"gentime"===e||"utctime"===e?this._decodeTime(t,e,r):"null_"===e?this._decodeNull(t,r):"bool"===e?this._decodeBool(t,r):"objDesc"===e?this._decodeStr(t,e,r):"int"===e||"enum"===e?this._decodeInt(t,i.args&&i.args[0],r):null!==i.use?this._getUse(i.use,t._reporterState.obj)._decode(t,r):t.error("unknown tag: "+e)},c.prototype._getUse=function(e,t){var r=this._baseState;return r.useDecoder=this._use(e,t),o(null===r.useDecoder._baseState.parent),r.useDecoder=r.useDecoder._baseState.children[0],r.implicit!==r.useDecoder._baseState.implicit&&(r.useDecoder=r.useDecoder.clone(),r.useDecoder._baseState.implicit=r.implicit),r.useDecoder},c.prototype._decodeChoice=function(e,t){var r=this._baseState,i=null,n=!1;return Object.keys(r.choice).some(function(a){var o=e.save(),s=r.choice[a];try{var f=s._decode(e,t);if(e.isError(f))return!1;i={type:a,value:f},n=!0}catch(t){return e.restore(o),!1}return!0},this),n?i:e.error("Choice not matched")},c.prototype._createEncoderBuffer=function(e){return new n(e,this.reporter)},c.prototype._encode=function(e,t,r){var i=this._baseState;if(null===i.default||i.default!==e){var n=this._encodeValue(e,t,r);if(void 0!==n&&!this._skipDefault(n,t,r))return n}},c.prototype._encodeValue=function(e,t,r){var n=this._baseState;if(null===n.parent)return n.children[0]._encode(e,t||new i);var a=null;if(this.reporter=t,n.optional&&void 0===e){if(null===n.default)return;e=n.default}var o=null,s=!1;if(n.any)a=this._createEncoderBuffer(e);else if(n.choice)a=this._encodeChoice(e,t);else if(n.contains)o=this._getUse(n.contains,r)._encode(e,t),s=!0;else if(n.children)o=n.children.map(function(r){if("null_"===r._baseState.tag)return r._encode(null,t,e);if(null===r._baseState.key)return t.error("Child should have a key");var i=t.enterKey(r._baseState.key);if("object"!=typeof e)return t.error("Child expected, but input is not object");var n=r._encode(e[r._baseState.key],t,e);return t.leaveKey(i),n},this).filter(function(e){return e}),o=this._createEncoderBuffer(o);else if("seqof"===n.tag||"setof"===n.tag){if(!n.args||1!==n.args.length)return t.error("Too many args for : "+n.tag);if(!Array.isArray(e))return t.error("seqof/setof, but data is not Array");var f=this.clone();f._baseState.implicit=null,o=this._createEncoderBuffer(e.map(function(r){var i=this._baseState;return this._getUse(i.args[0],e)._encode(r,t)},f))}else null!==n.use?a=this._getUse(n.use,r)._encode(e,t):(o=this._encodePrimitive(n.tag,e),s=!0);if(!n.any&&null===n.choice){var c=null!==n.implicit?n.implicit:n.tag,u=null===n.implicit?"universal":"context";null===c?null===n.use&&t.error("Tag could be omitted only for .use()"):null===n.use&&(a=this._encodeComposite(c,s,u,o))}return null!==n.explicit&&(a=this._encodeComposite(n.explicit,!1,"context",a)),a},c.prototype._encodeChoice=function(e,t){var r=this._baseState,i=r.choice[e.type];return i||o(!1,e.type+" not found in "+JSON.stringify(Object.keys(r.choice))),i._encode(e.value,t)},c.prototype._encodePrimitive=function(e,t){var r=this._baseState;if(/str$/.test(e))return this._encodeStr(t,e);if("objid"===e&&r.args)return this._encodeObjid(t,r.reverseArgs[0],r.args[1]);if("objid"===e)return this._encodeObjid(t,null,null);if("gentime"===e||"utctime"===e)return this._encodeTime(t,e);if("null_"===e)return this._encodeNull();if("int"===e||"enum"===e)return this._encodeInt(t,r.args&&r.reverseArgs[0]);if("bool"===e)return this._encodeBool(t);if("objDesc"===e)return this._encodeStr(t,e);throw new Error("Unsupported tag: "+e)},c.prototype._isNumstr=function(e){return/^[0-9 ]*$/.test(e)},c.prototype._isPrintstr=function(e){return/^[A-Za-z0-9 '\(\)\+,\-\.\/:=\?]*$/.test(e)}},{"../base":137,"minimalistic-assert":148}],139:[function(e,t,r){var i=e("inherits");function n(e){this._reporterState={obj:null,path:[],options:e||{},errors:[]}}function a(e,t){this.path=e,this.rethrow(t)}r.Reporter=n,n.prototype.isError=function(e){return e instanceof a},n.prototype.save=function(){var e=this._reporterState;return{obj:e.obj,pathLen:e.path.length}},n.prototype.restore=function(e){var t=this._reporterState;t.obj=e.obj,t.path=t.path.slice(0,e.pathLen)},n.prototype.enterKey=function(e){return this._reporterState.path.push(e)},n.prototype.exitKey=function(e){var t=this._reporterState;t.path=t.path.slice(0,e-1)},n.prototype.leaveKey=function(e,t,r){var i=this._reporterState;this.exitKey(e),null!==i.obj&&(i.obj[t]=r)},n.prototype.path=function(){return this._reporterState.path.join("/")},n.prototype.enterObject=function(){var e=this._reporterState,t=e.obj;return e.obj={},t},n.prototype.leaveObject=function(e){var t=this._reporterState,r=t.obj;return t.obj=e,r},n.prototype.error=function(e){var t,r=this._reporterState,i=e instanceof a;if(t=i?e:new a(r.path.map(function(e){return"["+JSON.stringify(e)+"]"}).join(""),e.message||e,e.stack),!r.options.partial)throw t;return i||r.errors.push(t),t},n.prototype.wrapResult=function(e){var t=this._reporterState;return t.options.partial?{result:this.isError(e)?null:e,errors:t.errors}:e},i(a,Error),a.prototype.rethrow=function(e){if(this.message=e+" at: "+(this.path||"(shallow)"),Error.captureStackTrace&&Error.captureStackTrace(this,a),!this.stack)try{throw new Error(this.message)}catch(e){this.stack=e.stack}return this}},{inherits:320}],140:[function(e,t,r){var i=e("../constants");r.tagClass={0:"universal",1:"application",2:"context",3:"private"},r.tagClassByName=i._reverse(r.tagClass),r.tag={0:"end",1:"bool",2:"int",3:"bitstr",4:"octstr",5:"null_",6:"objid",7:"objDesc",8:"external",9:"real",10:"enum",11:"embed",12:"utf8str",13:"relativeOid",16:"seq",17:"set",18:"numstr",19:"printstr",20:"t61str",21:"videostr",22:"ia5str",23:"utctime",24:"gentime",25:"graphstr",26:"iso646str",27:"genstr",28:"unistr",29:"charstr",30:"bmpstr"},r.tagByName=i._reverse(r.tag)},{"../constants":141}],141:[function(e,t,r){var i=r;i._reverse=function(e){var t={};return Object.keys(e).forEach(function(r){(0|r)==r&&(r|=0);var i=e[r];t[i]=r}),t},i.der=e("./der")},{"./der":140}],142:[function(e,t,r){var i=e("inherits"),n=e("../../asn1"),a=n.base,o=n.bignum,s=n.constants.der;function f(e){this.enc="der",this.name=e.name,this.entity=e,this.tree=new c,this.tree._init(e.body)}function c(e){a.Node.call(this,"der",e)}function u(e,t){var r=e.readUInt8(t);if(e.isError(r))return r;var i=s.tagClass[r>>6],n=0==(32&r);if(31==(31&r)){var a=r;for(r=0;128==(128&a);){if(a=e.readUInt8(t),e.isError(a))return a;r<<=7,r|=127&a}}else r&=31;return{cls:i,primitive:n,tag:r,tagStr:s.tag[r]}}function h(e,t,r){var i=e.readUInt8(r);if(e.isError(i))return i;if(!t&&128===i)return null;if(0==(128&i))return i;var n=127&i;if(n>4)return e.error("length octect is too long");i=0;for(var a=0;a<n;a++){i<<=8;var o=e.readUInt8(r);if(e.isError(o))return o;i|=o}return i}t.exports=f,f.prototype.decode=function(e,t){return e instanceof a.DecoderBuffer||(e=new a.DecoderBuffer(e,t)),this.tree._decode(e,t)},i(c,a.Node),c.prototype._peekTag=function(e,t,r){if(e.isEmpty())return!1;var i=e.save(),n=u(e,'Failed to peek tag: "'+t+'"');return e.isError(n)?n:(e.restore(i),n.tag===t||n.tagStr===t||n.tagStr+"of"===t||r)},c.prototype._decodeTag=function(e,t,r){var i=u(e,'Failed to decode tag of "'+t+'"');if(e.isError(i))return i;var n=h(e,i.primitive,'Failed to get length of "'+t+'"');if(e.isError(n))return n;if(!r&&i.tag!==t&&i.tagStr!==t&&i.tagStr+"of"!==t)return e.error('Failed to match tag: "'+t+'"');if(i.primitive||null!==n)return e.skip(n,'Failed to match body of: "'+t+'"');var a=e.save(),o=this._skipUntilEnd(e,'Failed to skip indefinite length body: "'+this.tag+'"');return e.isError(o)?o:(n=e.offset-a.offset,e.restore(a),e.skip(n,'Failed to match body of: "'+t+'"'))},c.prototype._skipUntilEnd=function(e,t){for(;;){var r=u(e,t);if(e.isError(r))return r;var i,n=h(e,r.primitive,t);if(e.isError(n))return n;if(i=r.primitive||null!==n?e.skip(n):this._skipUntilEnd(e,t),e.isError(i))return i;if("end"===r.tagStr)break}},c.prototype._decodeList=function(e,t,r,i){for(var n=[];!e.isEmpty();){var a=this._peekTag(e,"end");if(e.isError(a))return a;var o=r.decode(e,"der",i);if(e.isError(o)&&a)break;n.push(o)}return n},c.prototype._decodeStr=function(e,t){if("bitstr"===t){var r=e.readUInt8();return e.isError(r)?r:{unused:r,data:e.raw()}}if("bmpstr"===t){var i=e.raw();if(i.length%2==1)return e.error("Decoding of string type: bmpstr length mismatch");for(var n="",a=0;a<i.length/2;a++)n+=String.fromCharCode(i.readUInt16BE(2*a));return n}if("numstr"===t){var o=e.raw().toString("ascii");return this._isNumstr(o)?o:e.error("Decoding of string type: numstr unsupported characters")}if("octstr"===t)return e.raw();if("objDesc"===t)return e.raw();if("printstr"===t){var s=e.raw().toString("ascii");return this._isPrintstr(s)?s:e.error("Decoding of string type: printstr unsupported characters")}return/str$/.test(t)?e.raw().toString():e.error("Decoding of string type: "+t+" unsupported")},c.prototype._decodeObjid=function(e,t,r){for(var i,n=[],a=0;!e.isEmpty();){var o=e.readUInt8();a<<=7,a|=127&o,0==(128&o)&&(n.push(a),a=0)}128&o&&n.push(a);var s=n[0]/40|0,f=n[0]%40;if(i=r?n:[s,f].concat(n.slice(1)),t){var c=t[i.join(" ")];void 0===c&&(c=t[i.join(".")]),void 0!==c&&(i=c)}return i},c.prototype._decodeTime=function(e,t){var r=e.raw().toString();if("gentime"===t)var i=0|r.slice(0,4),n=0|r.slice(4,6),a=0|r.slice(6,8),o=0|r.slice(8,10),s=0|r.slice(10,12),f=0|r.slice(12,14);else{if("utctime"!==t)return e.error("Decoding "+t+" time is not supported yet");i=0|r.slice(0,2),n=0|r.slice(2,4),a=0|r.slice(4,6),o=0|r.slice(6,8),s=0|r.slice(8,10),f=0|r.slice(10,12);i=i<70?2e3+i:1900+i}return Date.UTC(i,n-1,a,o,s,f,0)},c.prototype._decodeNull=function(e){return null},c.prototype._decodeBool=function(e){var t=e.readUInt8();return e.isError(t)?t:0!==t},c.prototype._decodeInt=function(e,t){var r=e.raw(),i=new o(r);return t&&(i=t[i.toString(10)]||i),i},c.prototype._use=function(e,t){return"function"==typeof e&&(e=e(t)),e._getDecoder("der").tree}},{"../../asn1":134,inherits:320}],143:[function(e,t,r){var i=r;i.der=e("./der"),i.pem=e("./pem")},{"./der":142,"./pem":144}],144:[function(e,t,r){var i=e("inherits"),n=e("buffer").Buffer,a=e("./der");function o(e){a.call(this,e),this.enc="pem"}i(o,a),t.exports=o,o.prototype.decode=function(e,t){for(var r=e.toString().split(/[\r\n]+/g),i=t.label.toUpperCase(),o=/^-----(BEGIN|END) ([^-]+)-----$/,s=-1,f=-1,c=0;c<r.length;c++){var u=r[c].match(o);if(null!==u&&u[2]===i){if(-1!==s){if("END"!==u[1])break;f=c;break}if("BEGIN"!==u[1])break;s=c}}if(-1===s||-1===f)throw new Error("PEM section not found for: "+i);var h=r.slice(s+1,f).join("");h.replace(/[^a-z0-9\+\/=]+/gi,"");var d=new n(h,"base64");return a.prototype.decode.call(this,d,t)}},{"./der":142,buffer:49,inherits:320}],145:[function(e,t,r){var i=e("inherits"),n=e("buffer").Buffer,a=e("../../asn1"),o=a.base,s=a.constants.der;function f(e){this.enc="der",this.name=e.name,this.entity=e,this.tree=new c,this.tree._init(e.body)}function c(e){o.Node.call(this,"der",e)}function u(e){return e<10?"0"+e:e}t.exports=f,f.prototype.encode=function(e,t){return this.tree._encode(e,t).join()},i(c,o.Node),c.prototype._encodeComposite=function(e,t,r,i){var a,o=function(e,t,r,i){var n;"seqof"===e?e="seq":"setof"===e&&(e="set");if(s.tagByName.hasOwnProperty(e))n=s.tagByName[e];else{if("number"!=typeof e||(0|e)!==e)return i.error("Unknown tag: "+e);n=e}if(n>=31)return i.error("Multi-octet tag encoding unsupported");t||(n|=32);return n|=s.tagClassByName[r||"universal"]<<6}(e,t,r,this.reporter);if(i.length<128)return(a=new n(2))[0]=o,a[1]=i.length,this._createEncoderBuffer([a,i]);for(var f=1,c=i.length;c>=256;c>>=8)f++;(a=new n(2+f))[0]=o,a[1]=128|f;c=1+f;for(var u=i.length;u>0;c--,u>>=8)a[c]=255&u;return this._createEncoderBuffer([a,i])},c.prototype._encodeStr=function(e,t){if("bitstr"===t)return this._createEncoderBuffer([0|e.unused,e.data]);if("bmpstr"===t){for(var r=new n(2*e.length),i=0;i<e.length;i++)r.writeUInt16BE(e.charCodeAt(i),2*i);return this._createEncoderBuffer(r)}return"numstr"===t?this._isNumstr(e)?this._createEncoderBuffer(e):this.reporter.error("Encoding of string type: numstr supports only digits and space"):"printstr"===t?this._isPrintstr(e)?this._createEncoderBuffer(e):this.reporter.error("Encoding of string type: printstr supports only latin upper and lower case letters, digits, space, apostrophe, left and rigth parenthesis, plus sign, comma, hyphen, dot, slash, colon, equal sign, question mark"):/str$/.test(t)?this._createEncoderBuffer(e):"objDesc"===t?this._createEncoderBuffer(e):this.reporter.error("Encoding of string type: "+t+" unsupported")},c.prototype._encodeObjid=function(e,t,r){if("string"==typeof e){if(!t)return this.reporter.error("string objid given, but no values map found");if(!t.hasOwnProperty(e))return this.reporter.error("objid not found in values map");e=t[e].split(/[\s\.]+/g);for(var i=0;i<e.length;i++)e[i]|=0}else if(Array.isArray(e)){e=e.slice();for(i=0;i<e.length;i++)e[i]|=0}if(!Array.isArray(e))return this.reporter.error("objid() should be either array or string, got: "+JSON.stringify(e));if(!r){if(e[1]>=40)return this.reporter.error("Second objid identifier OOB");e.splice(0,2,40*e[0]+e[1])}var a=0;for(i=0;i<e.length;i++){var o=e[i];for(a++;o>=128;o>>=7)a++}var s=new n(a),f=s.length-1;for(i=e.length-1;i>=0;i--){o=e[i];for(s[f--]=127&o;(o>>=7)>0;)s[f--]=128|127&o}return this._createEncoderBuffer(s)},c.prototype._encodeTime=function(e,t){var r,i=new Date(e);return"gentime"===t?r=[u(i.getFullYear()),u(i.getUTCMonth()+1),u(i.getUTCDate()),u(i.getUTCHours()),u(i.getUTCMinutes()),u(i.getUTCSeconds()),"Z"].join(""):"utctime"===t?r=[u(i.getFullYear()%100),u(i.getUTCMonth()+1),u(i.getUTCDate()),u(i.getUTCHours()),u(i.getUTCMinutes()),u(i.getUTCSeconds()),"Z"].join(""):this.reporter.error("Encoding "+t+" time is not supported yet"),this._encodeStr(r,"octstr")},c.prototype._encodeNull=function(){return this._createEncoderBuffer("")},c.prototype._encodeInt=function(e,t){if("string"==typeof e){if(!t)return this.reporter.error("String int or enum given, but no values map");if(!t.hasOwnProperty(e))return this.reporter.error("Values map doesn't contain: "+JSON.stringify(e));e=t[e]}if("number"!=typeof e&&!n.isBuffer(e)){var r=e.toArray();!e.sign&&128&r[0]&&r.unshift(0),e=new n(r)}if(n.isBuffer(e)){var i=e.length;0===e.length&&i++;var a=new n(i);return e.copy(a),0===e.length&&(a[0]=0),this._createEncoderBuffer(a)}if(e<128)return this._createEncoderBuffer(e);if(e<256)return this._createEncoderBuffer([0,e]);i=1;for(var o=e;o>=256;o>>=8)i++;for(o=(a=new Array(i)).length-1;o>=0;o--)a[o]=255&e,e>>=8;return 128&a[0]&&a.unshift(0),this._createEncoderBuffer(new n(a))},c.prototype._encodeBool=function(e){return this._createEncoderBuffer(e?255:0)},c.prototype._use=function(e,t){return"function"==typeof e&&(e=e(t)),e._getEncoder("der").tree},c.prototype._skipDefault=function(e,t,r){var i,n=this._baseState;if(null===n.default)return!1;var a=e.join();if(void 0===n.defaultBuffer&&(n.defaultBuffer=this._encodeValue(n.default,t,r).join()),a.length!==n.defaultBuffer.length)return!1;for(i=0;i<a.length;i++)if(a[i]!==n.defaultBuffer[i])return!1;return!0}},{"../../asn1":134,buffer:49,inherits:320}],146:[function(e,t,r){var i=r;i.der=e("./der"),i.pem=e("./pem")},{"./der":145,"./pem":147}],147:[function(e,t,r){var i=e("inherits"),n=e("./der");function a(e){n.call(this,e),this.enc="pem"}i(a,n),t.exports=a,a.prototype.encode=function(e,t){for(var r=n.prototype.encode.call(this,e).toString("base64"),i=["-----BEGIN "+t.label+"-----"],a=0;a<r.length;a+=64)i.push(r.slice(a,a+64));return i.push("-----END "+t.label+"-----"),i.join("\n")}},{"./der":145,inherits:320}],148:[function(e,t,r){arguments[4][83][0].apply(r,arguments)},{dup:83}],149:[function(e,t,r){arguments[4][54][0].apply(r,arguments)},{dup:54,"safe-buffer":167}],150:[function(e,t,r){arguments[4][55][0].apply(r,arguments)},{"./aes":149,"./ghash":154,"./incr32":155,"buffer-xor":165,"cipher-base":166,dup:55,inherits:320,"safe-buffer":167}],151:[function(e,t,r){arguments[4][56][0].apply(r,arguments)},{"./decrypter":152,"./encrypter":153,"./modes/list.json":163,dup:56}],152:[function(e,t,r){arguments[4][57][0].apply(r,arguments)},{"./aes":149,"./authCipher":150,"./modes":162,"./streamCipher":168,"cipher-base":166,dup:57,evp_bytestokey:169,inherits:320,"safe-buffer":167}],153:[function(e,t,r){arguments[4][58][0].apply(r,arguments)},{"./aes":149,"./authCipher":150,"./modes":162,"./streamCipher":168,"cipher-base":166,dup:58,evp_bytestokey:169,inherits:320,"safe-buffer":167}],154:[function(e,t,r){arguments[4][59][0].apply(r,arguments)},{dup:59,"safe-buffer":167}],155:[function(e,t,r){arguments[4][60][0].apply(r,arguments)},{dup:60}],156:[function(e,t,r){arguments[4][61][0].apply(r,arguments)},{"buffer-xor":165,dup:61}],157:[function(e,t,r){arguments[4][62][0].apply(r,arguments)},{"buffer-xor":165,dup:62,"safe-buffer":167}],158:[function(e,t,r){arguments[4][63][0].apply(r,arguments)},{dup:63,"safe-buffer":167}],159:[function(e,t,r){arguments[4][64][0].apply(r,arguments)},{dup:64,"safe-buffer":167}],160:[function(e,t,r){arguments[4][65][0].apply(r,arguments)},{"../incr32":155,"buffer-xor":165,dup:65,"safe-buffer":167}],161:[function(e,t,r){arguments[4][66][0].apply(r,arguments)},{dup:66}],162:[function(e,t,r){arguments[4][67][0].apply(r,arguments)},{"./cbc":156,"./cfb":157,"./cfb1":158,"./cfb8":159,"./ctr":160,"./ecb":161,"./list.json":163,"./ofb":164,dup:67}],163:[function(e,t,r){arguments[4][68][0].apply(r,arguments)},{dup:68}],164:[function(e,t,r){arguments[4][69][0].apply(r,arguments)},{buffer:49,"buffer-xor":165,dup:69}],165:[function(e,t,r){arguments[4][70][0].apply(r,arguments)},{buffer:49,dup:70}],166:[function(e,t,r){arguments[4][71][0].apply(r,arguments)},{dup:71,inherits:320,"safe-buffer":167,stream:341,string_decoder:342}],167:[function(e,t,r){arguments[4][72][0].apply(r,arguments)},{buffer:49,dup:72}],168:[function(e,t,r){arguments[4][73][0].apply(r,arguments)},{"./aes":149,"cipher-base":166,dup:73,inherits:320,"safe-buffer":167}],169:[function(e,t,r){arguments[4][85][0].apply(r,arguments)},{dup:85,"md5.js":170,"safe-buffer":172}],170:[function(e,t,r){arguments[4][86][0].apply(r,arguments)},{buffer:49,dup:86,"hash-base":171,inherits:320}],171:[function(e,t,r){arguments[4][87][0].apply(r,arguments)},{dup:87,inherits:320,"safe-buffer":172,stream:341}],172:[function(e,t,r){arguments[4][72][0].apply(r,arguments)},{buffer:49,dup:72}],173:[function(e,t,r){(function(r){var i=e("elliptic"),n=e("bn.js");t.exports=function(e){return new o(e)};var a={secp256k1:{name:"secp256k1",byteLength:32},secp224r1:{name:"p224",byteLength:28},prime256v1:{name:"p256",byteLength:32},prime192v1:{name:"p192",byteLength:24},ed25519:{name:"ed25519",byteLength:32},secp384r1:{name:"p384",byteLength:48},secp521r1:{name:"p521",byteLength:66}};function o(e){this.curveType=a[e],this.curveType||(this.curveType={name:e}),this.curve=new i.ec(this.curveType.name),this.keys=void 0}function s(e,t,i){Array.isArray(e)||(e=e.toArray());var n=new r(e);if(i&&n.length<i){var a=new r(i-n.length);a.fill(0),n=r.concat([a,n])}return t?n.toString(t):n}a.p224=a.secp224r1,a.p256=a.secp256r1=a.prime256v1,a.p192=a.secp192r1=a.prime192v1,a.p384=a.secp384r1,a.p521=a.secp521r1,o.prototype.generateKeys=function(e,t){return this.keys=this.curve.genKeyPair(),this.getPublicKey(e,t)},o.prototype.computeSecret=function(e,t,i){return t=t||"utf8",r.isBuffer(e)||(e=new r(e,t)),s(this.curve.keyFromPublic(e).getPublic().mul(this.keys.getPrivate()).getX(),i,this.curveType.byteLength)},o.prototype.getPublicKey=function(e,t){var r=this.keys.getPublic("compressed"===t,!0);return"hybrid"===t&&(r[r.length-1]%2?r[0]=7:r[0]=6),s(r,e)},o.prototype.getPrivateKey=function(e){return s(this.keys.getPrivate(),e)},o.prototype.setPublicKey=function(e,t){return t=t||"utf8",r.isBuffer(e)||(e=new r(e,t)),this.keys._importPublic(e),this},o.prototype.setPrivateKey=function(e,t){t=t||"utf8",r.isBuffer(e)||(e=new r(e,t));var i=new n(e);return i=i.toString(16),this.keys=this.curve.genKeyPair(),this.keys._importPrivate(i),this}}).call(this,e("buffer").Buffer)},{"bn.js":174,buffer:49,elliptic:175}],174:[function(e,t,r){arguments[4][95][0].apply(r,arguments)},{buffer:48,dup:95}],175:[function(e,t,r){arguments[4][97][0].apply(r,arguments)},{"../package.json":206,"./elliptic/curve":178,"./elliptic/curves":181,"./elliptic/ec":182,"./elliptic/eddsa":185,"./elliptic/utils":189,brorand:190,dup:97}],176:[function(e,t,r){arguments[4][7][0].apply(r,arguments)},{"../../elliptic":175,"bn.js":174,dup:7}],177:[function(e,t,r){arguments[4][99][0].apply(r,arguments)},{"../../elliptic":175,"../curve":178,"bn.js":174,dup:99,inherits:320}],178:[function(e,t,r){arguments[4][9][0].apply(r,arguments)},{"./base":176,"./edwards":177,"./mont":179,"./short":180,dup:9}],179:[function(e,t,r){arguments[4][10][0].apply(r,arguments)},{"../../elliptic":175,"../curve":178,"bn.js":174,dup:10,inherits:320}],180:[function(e,t,r){arguments[4][102][0].apply(r,arguments)},{"../../elliptic":175,"../curve":178,"bn.js":174,dup:102,inherits:320}],181:[function(e,t,r){arguments[4][103][0].apply(r,arguments)},{"../elliptic":175,"./precomputed/secp256k1":188,dup:103,"hash.js":191}],182:[function(e,t,r){arguments[4][104][0].apply(r,arguments)},{"../../elliptic":175,"./key":183,"./signature":184,"bn.js":174,dup:104,"hmac-drbg":203}],183:[function(e,t,r){arguments[4][105][0].apply(r,arguments)},{"../../elliptic":175,"bn.js":174,dup:105}],184:[function(e,t,r){arguments[4][15][0].apply(r,arguments)},{"../../elliptic":175,"bn.js":174,dup:15}],185:[function(e,t,r){arguments[4][16][0].apply(r,arguments)},{"../../elliptic":175,"./key":186,"./signature":187,dup:16,"hash.js":191}],186:[function(e,t,r){arguments[4][17][0].apply(r,arguments)},{"../../elliptic":175,dup:17}],187:[function(e,t,r){arguments[4][18][0].apply(r,arguments)},{"../../elliptic":175,"bn.js":174,dup:18}],188:[function(e,t,r){arguments[4][20][0].apply(r,arguments)},{dup:20}],189:[function(e,t,r){arguments[4][111][0].apply(r,arguments)},{"bn.js":174,dup:111,"minimalistic-assert":204,"minimalistic-crypto-utils":205}],190:[function(e,t,r){arguments[4][112][0].apply(r,arguments)},{crypto:48,dup:112}],191:[function(e,t,r){arguments[4][24][0].apply(r,arguments)},{"./hash/common":192,"./hash/hmac":193,"./hash/ripemd":194,"./hash/sha":195,"./hash/utils":202,dup:24}],192:[function(e,t,r){arguments[4][114][0].apply(r,arguments)},{"./utils":202,dup:114,"minimalistic-assert":204}],193:[function(e,t,r){arguments[4][115][0].apply(r,arguments)},{"./utils":202,dup:115,"minimalistic-assert":204}],194:[function(e,t,r){arguments[4][116][0].apply(r,arguments)},{"./common":192,"./utils":202,dup:116}],195:[function(e,t,r){arguments[4][117][0].apply(r,arguments)},{"./sha/1":196,"./sha/224":197,"./sha/256":198,"./sha/384":199,"./sha/512":200,dup:117}],196:[function(e,t,r){arguments[4][118][0].apply(r,arguments)},{"../common":192,"../utils":202,"./common":201,dup:118}],197:[function(e,t,r){arguments[4][119][0].apply(r,arguments)},{"../utils":202,"./256":198,dup:119}],198:[function(e,t,r){arguments[4][120][0].apply(r,arguments)},{"../common":192,"../utils":202,"./common":201,dup:120,"minimalistic-assert":204}],199:[function(e,t,r){arguments[4][121][0].apply(r,arguments)},{"../utils":202,"./512":200,dup:121}],200:[function(e,t,r){arguments[4][122][0].apply(r,arguments)},{"../common":192,"../utils":202,dup:122,"minimalistic-assert":204}],201:[function(e,t,r){arguments[4][123][0].apply(r,arguments)},{"../utils":202,dup:123}],202:[function(e,t,r){arguments[4][124][0].apply(r,arguments)},{dup:124,inherits:320,"minimalistic-assert":204}],203:[function(e,t,r){arguments[4][125][0].apply(r,arguments)},{dup:125,"hash.js":191,"minimalistic-assert":204,"minimalistic-crypto-utils":205}],204:[function(e,t,r){arguments[4][83][0].apply(r,arguments)},{dup:83}],205:[function(e,t,r){arguments[4][127][0].apply(r,arguments)},{dup:127}],206:[function(e,t,r){arguments[4][128][0].apply(r,arguments)},{dup:128}],207:[function(e,t,r){"use strict";var i=e("inherits"),n=e("md5.js"),a=e("ripemd160"),o=e("sha.js"),s=e("cipher-base");function f(e){s.call(this,"digest"),this._hash=e}i(f,s),f.prototype._update=function(e){this._hash.update(e)},f.prototype._final=function(){return this._hash.digest()},t.exports=function(e){return"md5"===(e=e.toLowerCase())?new n:"rmd160"===e||"ripemd160"===e?new a:new f(o(e))}},{"cipher-base":209,inherits:320,"md5.js":211,ripemd160:214,"sha.js":218}],208:[function(e,t,r){var i=e("md5.js");t.exports=function(e){return(new i).update(e).digest()}},{"md5.js":211}],209:[function(e,t,r){arguments[4][71][0].apply(r,arguments)},{dup:71,inherits:320,"safe-buffer":210,stream:341,string_decoder:342}],210:[function(e,t,r){arguments[4][72][0].apply(r,arguments)},{buffer:49,dup:72}],211:[function(e,t,r){arguments[4][86][0].apply(r,arguments)},{buffer:49,dup:86,"hash-base":212,inherits:320}],212:[function(e,t,r){arguments[4][87][0].apply(r,arguments)},{dup:87,inherits:320,"safe-buffer":213,stream:341}],213:[function(e,t,r){arguments[4][72][0].apply(r,arguments)},{buffer:49,dup:72}],214:[function(e,t,r){"use strict";var i=e("buffer").Buffer,n=e("inherits"),a=e("hash-base"),o=new Array(16),s=[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],f=[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],c=[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],u=[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],h=[0,1518500249,1859775393,2400959708,2840853838],d=[1352829926,1548603684,1836072691,2053994217,0];function l(){a.call(this,64),this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878,this._e=3285377520}function p(e,t){return e<<t|e>>>32-t}function b(e,t,r,i,n,a,o,s){return p(e+(t^r^i)+a+o|0,s)+n|0}function m(e,t,r,i,n,a,o,s){return p(e+(t&r|~t&i)+a+o|0,s)+n|0}function g(e,t,r,i,n,a,o,s){return p(e+((t|~r)^i)+a+o|0,s)+n|0}function v(e,t,r,i,n,a,o,s){return p(e+(t&i|r&~i)+a+o|0,s)+n|0}function y(e,t,r,i,n,a,o,s){return p(e+(t^(r|~i))+a+o|0,s)+n|0}n(l,a),l.prototype._update=function(){for(var e=o,t=0;t<16;++t)e[t]=this._block.readInt32LE(4*t);for(var r=0|this._a,i=0|this._b,n=0|this._c,a=0|this._d,l=0|this._e,w=0|this._a,_=0|this._b,S=0|this._c,M=0|this._d,x=0|this._e,k=0;k<80;k+=1){var A,E;k<16?(A=b(r,i,n,a,l,e[s[k]],h[0],c[k]),E=y(w,_,S,M,x,e[f[k]],d[0],u[k])):k<32?(A=m(r,i,n,a,l,e[s[k]],h[1],c[k]),E=v(w,_,S,M,x,e[f[k]],d[1],u[k])):k<48?(A=g(r,i,n,a,l,e[s[k]],h[2],c[k]),E=g(w,_,S,M,x,e[f[k]],d[2],u[k])):k<64?(A=v(r,i,n,a,l,e[s[k]],h[3],c[k]),E=m(w,_,S,M,x,e[f[k]],d[3],u[k])):(A=y(r,i,n,a,l,e[s[k]],h[4],c[k]),E=b(w,_,S,M,x,e[f[k]],d[4],u[k])),r=l,l=a,a=p(n,10),n=i,i=A,w=x,x=M,M=p(S,10),S=_,_=E}var I=this._b+n+M|0;this._b=this._c+a+x|0,this._c=this._d+l+w|0,this._d=this._e+r+_|0,this._e=this._a+i+S|0,this._a=I},l.prototype._digest=function(){this._block[this._blockOffset++]=128,this._blockOffset>56&&(this._block.fill(0,this._blockOffset,64),this._update(),this._blockOffset=0),this._block.fill(0,this._blockOffset,56),this._block.writeUInt32LE(this._length[0],56),this._block.writeUInt32LE(this._length[1],60),this._update();var e=i.alloc?i.alloc(20):new i(20);return e.writeInt32LE(this._a,0),e.writeInt32LE(this._b,4),e.writeInt32LE(this._c,8),e.writeInt32LE(this._d,12),e.writeInt32LE(this._e,16),e},t.exports=l},{buffer:49,"hash-base":215,inherits:320}],215:[function(e,t,r){arguments[4][87][0].apply(r,arguments)},{dup:87,inherits:320,"safe-buffer":216,stream:341}],216:[function(e,t,r){arguments[4][72][0].apply(r,arguments)},{buffer:49,dup:72}],217:[function(e,t,r){var i=e("safe-buffer").Buffer;function n(e,t){this._block=i.alloc(e),this._finalSize=t,this._blockSize=e,this._len=0}n.prototype.update=function(e,t){"string"==typeof e&&(t=t||"utf8",e=i.from(e,t));for(var r=this._block,n=this._blockSize,a=e.length,o=this._len,s=0;s<a;){for(var f=o%n,c=Math.min(a-s,n-f),u=0;u<c;u++)r[f+u]=e[s+u];s+=c,(o+=c)%n==0&&this._update(r)}return this._len+=a,this},n.prototype.digest=function(e){var t=this._len%this._blockSize;this._block[t]=128,this._block.fill(0,t+1),t>=this._finalSize&&(this._update(this._block),this._block.fill(0));var r=8*this._len;if(r<=4294967295)this._block.writeUInt32BE(r,this._blockSize-4);else{var i=(4294967295&r)>>>0,n=(r-i)/4294967296;this._block.writeUInt32BE(n,this._blockSize-8),this._block.writeUInt32BE(i,this._blockSize-4)}this._update(this._block);var a=this._hash();return e?a.toString(e):a},n.prototype._update=function(){throw new Error("_update must be implemented by subclass")},t.exports=n},{"safe-buffer":219}],218:[function(e,t,r){(r=t.exports=function(e){e=e.toLowerCase();var t=r[e];if(!t)throw new Error(e+" is not supported (we accept pull requests)");return new t}).sha=e("./sha"),r.sha1=e("./sha1"),r.sha224=e("./sha224"),r.sha256=e("./sha256"),r.sha384=e("./sha384"),r.sha512=e("./sha512")},{"./sha":220,"./sha1":221,"./sha224":222,"./sha256":223,"./sha384":224,"./sha512":225}],219:[function(e,t,r){arguments[4][72][0].apply(r,arguments)},{buffer:49,dup:72}],220:[function(e,t,r){var i=e("inherits"),n=e("./hash"),a=e("safe-buffer").Buffer,o=[1518500249,1859775393,-1894007588,-899497514],s=new Array(80);function f(){this.init(),this._w=s,n.call(this,64,56)}function c(e){return e<<30|e>>>2}function u(e,t,r,i){return 0===e?t&r|~t&i:2===e?t&r|t&i|r&i:t^r^i}i(f,n),f.prototype.init=function(){return this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878,this._e=3285377520,this},f.prototype._update=function(e){for(var t,r=this._w,i=0|this._a,n=0|this._b,a=0|this._c,s=0|this._d,f=0|this._e,h=0;h<16;++h)r[h]=e.readInt32BE(4*h);for(;h<80;++h)r[h]=r[h-3]^r[h-8]^r[h-14]^r[h-16];for(var d=0;d<80;++d){var l=~~(d/20),p=0|((t=i)<<5|t>>>27)+u(l,n,a,s)+f+r[d]+o[l];f=s,s=a,a=c(n),n=i,i=p}this._a=i+this._a|0,this._b=n+this._b|0,this._c=a+this._c|0,this._d=s+this._d|0,this._e=f+this._e|0},f.prototype._hash=function(){var e=a.allocUnsafe(20);return e.writeInt32BE(0|this._a,0),e.writeInt32BE(0|this._b,4),e.writeInt32BE(0|this._c,8),e.writeInt32BE(0|this._d,12),e.writeInt32BE(0|this._e,16),e},t.exports=f},{"./hash":217,inherits:320,"safe-buffer":219}],221:[function(e,t,r){var i=e("inherits"),n=e("./hash"),a=e("safe-buffer").Buffer,o=[1518500249,1859775393,-1894007588,-899497514],s=new Array(80);function f(){this.init(),this._w=s,n.call(this,64,56)}function c(e){return e<<5|e>>>27}function u(e){return e<<30|e>>>2}function h(e,t,r,i){return 0===e?t&r|~t&i:2===e?t&r|t&i|r&i:t^r^i}i(f,n),f.prototype.init=function(){return this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878,this._e=3285377520,this},f.prototype._update=function(e){for(var t,r=this._w,i=0|this._a,n=0|this._b,a=0|this._c,s=0|this._d,f=0|this._e,d=0;d<16;++d)r[d]=e.readInt32BE(4*d);for(;d<80;++d)r[d]=(t=r[d-3]^r[d-8]^r[d-14]^r[d-16])<<1|t>>>31;for(var l=0;l<80;++l){var p=~~(l/20),b=c(i)+h(p,n,a,s)+f+r[l]+o[p]|0;f=s,s=a,a=u(n),n=i,i=b}this._a=i+this._a|0,this._b=n+this._b|0,this._c=a+this._c|0,this._d=s+this._d|0,this._e=f+this._e|0},f.prototype._hash=function(){var e=a.allocUnsafe(20);return e.writeInt32BE(0|this._a,0),e.writeInt32BE(0|this._b,4),e.writeInt32BE(0|this._c,8),e.writeInt32BE(0|this._d,12),e.writeInt32BE(0|this._e,16),e},t.exports=f},{"./hash":217,inherits:320,"safe-buffer":219}],222:[function(e,t,r){var i=e("inherits"),n=e("./sha256"),a=e("./hash"),o=e("safe-buffer").Buffer,s=new Array(64);function f(){this.init(),this._w=s,a.call(this,64,56)}i(f,n),f.prototype.init=function(){return this._a=3238371032,this._b=914150663,this._c=812702999,this._d=4144912697,this._e=4290775857,this._f=1750603025,this._g=1694076839,this._h=3204075428,this},f.prototype._hash=function(){var e=o.allocUnsafe(28);return e.writeInt32BE(this._a,0),e.writeInt32BE(this._b,4),e.writeInt32BE(this._c,8),e.writeInt32BE(this._d,12),e.writeInt32BE(this._e,16),e.writeInt32BE(this._f,20),e.writeInt32BE(this._g,24),e},t.exports=f},{"./hash":217,"./sha256":223,inherits:320,"safe-buffer":219}],223:[function(e,t,r){var i=e("inherits"),n=e("./hash"),a=e("safe-buffer").Buffer,o=[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],s=new Array(64);function f(){this.init(),this._w=s,n.call(this,64,56)}function c(e,t,r){return r^e&(t^r)}function u(e,t,r){return e&t|r&(e|t)}function h(e){return(e>>>2|e<<30)^(e>>>13|e<<19)^(e>>>22|e<<10)}function d(e){return(e>>>6|e<<26)^(e>>>11|e<<21)^(e>>>25|e<<7)}function l(e){return(e>>>7|e<<25)^(e>>>18|e<<14)^e>>>3}i(f,n),f.prototype.init=function(){return this._a=1779033703,this._b=3144134277,this._c=1013904242,this._d=2773480762,this._e=1359893119,this._f=2600822924,this._g=528734635,this._h=1541459225,this},f.prototype._update=function(e){for(var t,r=this._w,i=0|this._a,n=0|this._b,a=0|this._c,s=0|this._d,f=0|this._e,p=0|this._f,b=0|this._g,m=0|this._h,g=0;g<16;++g)r[g]=e.readInt32BE(4*g);for(;g<64;++g)r[g]=0|(((t=r[g-2])>>>17|t<<15)^(t>>>19|t<<13)^t>>>10)+r[g-7]+l(r[g-15])+r[g-16];for(var v=0;v<64;++v){var y=m+d(f)+c(f,p,b)+o[v]+r[v]|0,w=h(i)+u(i,n,a)|0;m=b,b=p,p=f,f=s+y|0,s=a,a=n,n=i,i=y+w|0}this._a=i+this._a|0,this._b=n+this._b|0,this._c=a+this._c|0,this._d=s+this._d|0,this._e=f+this._e|0,this._f=p+this._f|0,this._g=b+this._g|0,this._h=m+this._h|0},f.prototype._hash=function(){var e=a.allocUnsafe(32);return e.writeInt32BE(this._a,0),e.writeInt32BE(this._b,4),e.writeInt32BE(this._c,8),e.writeInt32BE(this._d,12),e.writeInt32BE(this._e,16),e.writeInt32BE(this._f,20),e.writeInt32BE(this._g,24),e.writeInt32BE(this._h,28),e},t.exports=f},{"./hash":217,inherits:320,"safe-buffer":219}],224:[function(e,t,r){var i=e("inherits"),n=e("./sha512"),a=e("./hash"),o=e("safe-buffer").Buffer,s=new Array(160);function f(){this.init(),this._w=s,a.call(this,128,112)}i(f,n),f.prototype.init=function(){return this._ah=3418070365,this._bh=1654270250,this._ch=2438529370,this._dh=355462360,this._eh=1731405415,this._fh=2394180231,this._gh=3675008525,this._hh=1203062813,this._al=3238371032,this._bl=914150663,this._cl=812702999,this._dl=4144912697,this._el=4290775857,this._fl=1750603025,this._gl=1694076839,this._hl=3204075428,this},f.prototype._hash=function(){var e=o.allocUnsafe(48);function t(t,r,i){e.writeInt32BE(t,i),e.writeInt32BE(r,i+4)}return t(this._ah,this._al,0),t(this._bh,this._bl,8),t(this._ch,this._cl,16),t(this._dh,this._dl,24),t(this._eh,this._el,32),t(this._fh,this._fl,40),e},t.exports=f},{"./hash":217,"./sha512":225,inherits:320,"safe-buffer":219}],225:[function(e,t,r){var i=e("inherits"),n=e("./hash"),a=e("safe-buffer").Buffer,o=[1116352408,3609767458,1899447441,602891725,3049323471,3964484399,3921009573,2173295548,961987163,4081628472,1508970993,3053834265,2453635748,2937671579,2870763221,3664609560,3624381080,2734883394,310598401,1164996542,607225278,1323610764,1426881987,3590304994,1925078388,4068182383,2162078206,991336113,2614888103,633803317,3248222580,3479774868,3835390401,2666613458,4022224774,944711139,264347078,2341262773,604807628,2007800933,770255983,1495990901,1249150122,1856431235,1555081692,3175218132,1996064986,2198950837,2554220882,3999719339,2821834349,766784016,2952996808,2566594879,3210313671,3203337956,3336571891,1034457026,3584528711,2466948901,113926993,3758326383,338241895,168717936,666307205,1188179964,773529912,1546045734,1294757372,1522805485,1396182291,2643833823,1695183700,2343527390,1986661051,1014477480,2177026350,1206759142,2456956037,344077627,2730485921,1290863460,2820302411,3158454273,3259730800,3505952657,3345764771,106217008,3516065817,3606008344,3600352804,1432725776,4094571909,1467031594,275423344,851169720,430227734,3100823752,506948616,1363258195,659060556,3750685593,883997877,3785050280,958139571,3318307427,1322822218,3812723403,1537002063,2003034995,1747873779,3602036899,1955562222,1575990012,2024104815,1125592928,2227730452,2716904306,2361852424,442776044,2428436474,593698344,2756734187,3733110249,3204031479,2999351573,3329325298,3815920427,3391569614,3928383900,3515267271,566280711,3940187606,3454069534,4118630271,4000239992,116418474,1914138554,174292421,2731055270,289380356,3203993006,460393269,320620315,685471733,587496836,852142971,1086792851,1017036298,365543100,1126000580,2618297676,1288033470,3409855158,1501505948,4234509866,1607167915,987167468,1816402316,1246189591],s=new Array(160);function f(){this.init(),this._w=s,n.call(this,128,112)}function c(e,t,r){return r^e&(t^r)}function u(e,t,r){return e&t|r&(e|t)}function h(e,t){return(e>>>28|t<<4)^(t>>>2|e<<30)^(t>>>7|e<<25)}function d(e,t){return(e>>>14|t<<18)^(e>>>18|t<<14)^(t>>>9|e<<23)}function l(e,t){return(e>>>1|t<<31)^(e>>>8|t<<24)^e>>>7}function p(e,t){return(e>>>1|t<<31)^(e>>>8|t<<24)^(e>>>7|t<<25)}function b(e,t){return(e>>>19|t<<13)^(t>>>29|e<<3)^e>>>6}function m(e,t){return(e>>>19|t<<13)^(t>>>29|e<<3)^(e>>>6|t<<26)}function g(e,t){return e>>>0<t>>>0?1:0}i(f,n),f.prototype.init=function(){return this._ah=1779033703,this._bh=3144134277,this._ch=1013904242,this._dh=2773480762,this._eh=1359893119,this._fh=2600822924,this._gh=528734635,this._hh=1541459225,this._al=4089235720,this._bl=2227873595,this._cl=4271175723,this._dl=1595750129,this._el=2917565137,this._fl=725511199,this._gl=4215389547,this._hl=327033209,this},f.prototype._update=function(e){for(var t=this._w,r=0|this._ah,i=0|this._bh,n=0|this._ch,a=0|this._dh,s=0|this._eh,f=0|this._fh,v=0|this._gh,y=0|this._hh,w=0|this._al,_=0|this._bl,S=0|this._cl,M=0|this._dl,x=0|this._el,k=0|this._fl,A=0|this._gl,E=0|this._hl,I=0;I<32;I+=2)t[I]=e.readInt32BE(4*I),t[I+1]=e.readInt32BE(4*I+4);for(;I<160;I+=2){var j=t[I-30],B=t[I-30+1],z=l(j,B),C=p(B,j),P=b(j=t[I-4],B=t[I-4+1]),R=m(B,j),T=t[I-14],q=t[I-14+1],O=t[I-32],L=t[I-32+1],N=C+q|0,U=z+T+g(N,C)|0;U=(U=U+P+g(N=N+R|0,R)|0)+O+g(N=N+L|0,L)|0,t[I]=U,t[I+1]=N}for(var D=0;D<160;D+=2){U=t[D],N=t[D+1];var H=u(r,i,n),F=u(w,_,S),K=h(r,w),V=h(w,r),W=d(s,x),G=d(x,s),X=o[D],Z=o[D+1],Y=c(s,f,v),J=c(x,k,A),Q=E+G|0,$=y+W+g(Q,E)|0;$=($=($=$+Y+g(Q=Q+J|0,J)|0)+X+g(Q=Q+Z|0,Z)|0)+U+g(Q=Q+N|0,N)|0;var ee=V+F|0,te=K+H+g(ee,V)|0;y=v,E=A,v=f,A=k,f=s,k=x,s=a+$+g(x=M+Q|0,M)|0,a=n,M=S,n=i,S=_,i=r,_=w,r=$+te+g(w=Q+ee|0,Q)|0}this._al=this._al+w|0,this._bl=this._bl+_|0,this._cl=this._cl+S|0,this._dl=this._dl+M|0,this._el=this._el+x|0,this._fl=this._fl+k|0,this._gl=this._gl+A|0,this._hl=this._hl+E|0,this._ah=this._ah+r+g(this._al,w)|0,this._bh=this._bh+i+g(this._bl,_)|0,this._ch=this._ch+n+g(this._cl,S)|0,this._dh=this._dh+a+g(this._dl,M)|0,this._eh=this._eh+s+g(this._el,x)|0,this._fh=this._fh+f+g(this._fl,k)|0,this._gh=this._gh+v+g(this._gl,A)|0,this._hh=this._hh+y+g(this._hl,E)|0},f.prototype._hash=function(){var e=a.allocUnsafe(64);function t(t,r,i){e.writeInt32BE(t,i),e.writeInt32BE(r,i+4)}return t(this._ah,this._al,0),t(this._bh,this._bl,8),t(this._ch,this._cl,16),t(this._dh,this._dl,24),t(this._eh,this._el,32),t(this._fh,this._fl,40),t(this._gh,this._gl,48),t(this._hh,this._hl,56),e},t.exports=f},{"./hash":217,inherits:320,"safe-buffer":219}],226:[function(e,t,r){"use strict";var i=e("inherits"),n=e("./legacy"),a=e("cipher-base"),o=e("safe-buffer").Buffer,s=e("create-hash/md5"),f=e("ripemd160"),c=e("sha.js"),u=o.alloc(128);function h(e,t){a.call(this,"digest"),"string"==typeof t&&(t=o.from(t));var r="sha512"===e||"sha384"===e?128:64;(this._alg=e,this._key=t,t.length>r)?t=("rmd160"===e?new f:c(e)).update(t).digest():t.length<r&&(t=o.concat([t,u],r));for(var i=this._ipad=o.allocUnsafe(r),n=this._opad=o.allocUnsafe(r),s=0;s<r;s++)i[s]=54^t[s],n[s]=92^t[s];this._hash="rmd160"===e?new f:c(e),this._hash.update(i)}i(h,a),h.prototype._update=function(e){this._hash.update(e)},h.prototype._final=function(){var e=this._hash.digest();return("rmd160"===this._alg?new f:c(this._alg)).update(this._opad).update(e).digest()},t.exports=function(e,t){return"rmd160"===(e=e.toLowerCase())||"ripemd160"===e?new h("rmd160",t):"md5"===e?new n(s,t):new h(e,t)}},{"./legacy":227,"cipher-base":228,"create-hash/md5":208,inherits:320,ripemd160:229,"safe-buffer":231,"sha.js":233}],227:[function(e,t,r){"use strict";var i=e("inherits"),n=e("safe-buffer").Buffer,a=e("cipher-base"),o=n.alloc(128),s=64;function f(e,t){a.call(this,"digest"),"string"==typeof t&&(t=n.from(t)),this._alg=e,this._key=t,t.length>s?t=e(t):t.length<s&&(t=n.concat([t,o],s));for(var r=this._ipad=n.allocUnsafe(s),i=this._opad=n.allocUnsafe(s),f=0;f<s;f++)r[f]=54^t[f],i[f]=92^t[f];this._hash=[r]}i(f,a),f.prototype._update=function(e){this._hash.push(e)},f.prototype._final=function(){var e=this._alg(n.concat(this._hash));return this._alg(n.concat([this._opad,e]))},t.exports=f},{"cipher-base":228,inherits:320,"safe-buffer":231}],228:[function(e,t,r){arguments[4][71][0].apply(r,arguments)},{dup:71,inherits:320,"safe-buffer":231,stream:341,string_decoder:342}],229:[function(e,t,r){arguments[4][214][0].apply(r,arguments)},{buffer:49,dup:214,"hash-base":230,inherits:320}],230:[function(e,t,r){arguments[4][87][0].apply(r,arguments)},{dup:87,inherits:320,"safe-buffer":231,stream:341}],231:[function(e,t,r){arguments[4][72][0].apply(r,arguments)},{buffer:49,dup:72}],232:[function(e,t,r){arguments[4][217][0].apply(r,arguments)},{dup:217,"safe-buffer":231}],233:[function(e,t,r){arguments[4][218][0].apply(r,arguments)},{"./sha":234,"./sha1":235,"./sha224":236,"./sha256":237,"./sha384":238,"./sha512":239,dup:218}],234:[function(e,t,r){arguments[4][220][0].apply(r,arguments)},{"./hash":232,dup:220,inherits:320,"safe-buffer":231}],235:[function(e,t,r){arguments[4][221][0].apply(r,arguments)},{"./hash":232,dup:221,inherits:320,"safe-buffer":231}],236:[function(e,t,r){arguments[4][222][0].apply(r,arguments)},{"./hash":232,"./sha256":237,dup:222,inherits:320,"safe-buffer":231}],237:[function(e,t,r){arguments[4][223][0].apply(r,arguments)},{"./hash":232,dup:223,inherits:320,"safe-buffer":231}],238:[function(e,t,r){arguments[4][224][0].apply(r,arguments)},{"./hash":232,"./sha512":239,dup:224,inherits:320,"safe-buffer":231}],239:[function(e,t,r){arguments[4][225][0].apply(r,arguments)},{"./hash":232,dup:225,inherits:320,"safe-buffer":231}],240:[function(e,t,r){(function(t){var i=e("./lib/generatePrime"),n=e("./lib/primes.json"),a=e("./lib/dh");var o={binary:!0,hex:!0,base64:!0};r.DiffieHellmanGroup=r.createDiffieHellmanGroup=r.getDiffieHellman=function(e){var r=new t(n[e].prime,"hex"),i=new t(n[e].gen,"hex");return new a(r,i)},r.createDiffieHellman=r.DiffieHellman=function e(r,n,s,f){return t.isBuffer(n)||void 0===o[n]?e(r,"binary",n,s):(n=n||"binary",f=f||"binary",s=s||new t([2]),t.isBuffer(s)||(s=new t(s,f)),"number"==typeof r?new a(i(r,s),s,!0):(t.isBuffer(r)||(r=new t(r,n)),new a(r,s,!0)))}}).call(this,e("buffer").Buffer)},{"./lib/dh":241,"./lib/generatePrime":242,"./lib/primes.json":243,buffer:49}],241:[function(e,t,r){(function(r){var i=e("bn.js"),n=new(e("miller-rabin")),a=new i(24),o=new i(11),s=new i(10),f=new i(3),c=new i(7),u=e("./generatePrime"),h=e("randombytes");function d(e,t){return t=t||"utf8",r.isBuffer(e)||(e=new r(e,t)),this._pub=new i(e),this}function l(e,t){return t=t||"utf8",r.isBuffer(e)||(e=new r(e,t)),this._priv=new i(e),this}t.exports=b;var p={};function b(e,t,r){this.setGenerator(t),this.__prime=new i(e),this._prime=i.mont(this.__prime),this._primeLen=e.length,this._pub=void 0,this._priv=void 0,this._primeCode=void 0,r?(this.setPublicKey=d,this.setPrivateKey=l):this._primeCode=8}function m(e,t){var i=new r(e.toArray());return t?i.toString(t):i}Object.defineProperty(b.prototype,"verifyError",{enumerable:!0,get:function(){return"number"!=typeof this._primeCode&&(this._primeCode=function(e,t){var r=t.toString("hex"),i=[r,e.toString(16)].join("_");if(i in p)return p[i];var h,d=0;if(e.isEven()||!u.simpleSieve||!u.fermatTest(e)||!n.test(e))return d+=1,d+="02"===r||"05"===r?8:4,p[i]=d,d;switch(n.test(e.shrn(1))||(d+=2),r){case"02":e.mod(a).cmp(o)&&(d+=8);break;case"05":(h=e.mod(s)).cmp(f)&&h.cmp(c)&&(d+=8);break;default:d+=4}return p[i]=d,d}(this.__prime,this.__gen)),this._primeCode}}),b.prototype.generateKeys=function(){return this._priv||(this._priv=new i(h(this._primeLen))),this._pub=this._gen.toRed(this._prime).redPow(this._priv).fromRed(),this.getPublicKey()},b.prototype.computeSecret=function(e){var t=(e=(e=new i(e)).toRed(this._prime)).redPow(this._priv).fromRed(),n=new r(t.toArray()),a=this.getPrime();if(n.length<a.length){var o=new r(a.length-n.length);o.fill(0),n=r.concat([o,n])}return n},b.prototype.getPublicKey=function(e){return m(this._pub,e)},b.prototype.getPrivateKey=function(e){return m(this._priv,e)},b.prototype.getPrime=function(e){return m(this.__prime,e)},b.prototype.getGenerator=function(e){return m(this._gen,e)},b.prototype.setGenerator=function(e,t){return t=t||"utf8",r.isBuffer(e)||(e=new r(e,t)),this.__gen=e,this._gen=new i(e),this}}).call(this,e("buffer").Buffer)},{"./generatePrime":242,"bn.js":244,buffer:49,"miller-rabin":245,randombytes:315}],242:[function(e,t,r){var i=e("randombytes");t.exports=v,v.simpleSieve=m,v.fermatTest=g;var n=e("bn.js"),a=new n(24),o=new(e("miller-rabin")),s=new n(1),f=new n(2),c=new n(5),u=(new n(16),new n(8),new n(10)),h=new n(3),d=(new n(7),new n(11)),l=new n(4),p=(new n(12),null);function b(){if(null!==p)return p;var e=[];e[0]=2;for(var t=1,r=3;r<1048576;r+=2){for(var i=Math.ceil(Math.sqrt(r)),n=0;n<t&&e[n]<=i&&r%e[n]!=0;n++);t!==n&&e[n]<=i||(e[t++]=r)}return p=e,e}function m(e){for(var t=b(),r=0;r<t.length;r++)if(0===e.modn(t[r]))return 0===e.cmpn(t[r]);return!0}function g(e){var t=n.mont(e);return 0===f.toRed(t).redPow(e.subn(1)).fromRed().cmpn(1)}function v(e,t){if(e<16)return new n(2===t||5===t?[140,123]:[140,39]);var r,p;for(t=new n(t);;){for(r=new n(i(Math.ceil(e/8)));r.bitLength()>e;)r.ishrn(1);if(r.isEven()&&r.iadd(s),r.testn(1)||r.iadd(f),t.cmp(f)){if(!t.cmp(c))for(;r.mod(u).cmp(h);)r.iadd(l)}else for(;r.mod(a).cmp(d);)r.iadd(l);if(m(p=r.shrn(1))&&m(r)&&g(p)&&g(r)&&o.test(p)&&o.test(r))return r}}},{"bn.js":244,"miller-rabin":245,randombytes:315}],243:[function(e,t,r){t.exports={modp1:{gen:"02",prime:"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a63a3620ffffffffffffffff"},modp2:{gen:"02",prime:"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece65381ffffffffffffffff"},modp5:{gen:"02",prime:"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca237327ffffffffffffffff"},modp14:{gen:"02",prime:"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca18217c32905e462e36ce3be39e772c180e86039b2783a2ec07a28fb5c55df06f4c52c9de2bcbf6955817183995497cea956ae515d2261898fa051015728e5a8aacaa68ffffffffffffffff"},modp15:{gen:"02",prime:"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca18217c32905e462e36ce3be39e772c180e86039b2783a2ec07a28fb5c55df06f4c52c9de2bcbf6955817183995497cea956ae515d2261898fa051015728e5a8aaac42dad33170d04507a33a85521abdf1cba64ecfb850458dbef0a8aea71575d060c7db3970f85a6e1e4c7abf5ae8cdb0933d71e8c94e04a25619dcee3d2261ad2ee6bf12ffa06d98a0864d87602733ec86a64521f2b18177b200cbbe117577a615d6c770988c0bad946e208e24fa074e5ab3143db5bfce0fd108e4b82d120a93ad2caffffffffffffffff"},modp16:{gen:"02",prime:"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca18217c32905e462e36ce3be39e772c180e86039b2783a2ec07a28fb5c55df06f4c52c9de2bcbf6955817183995497cea956ae515d2261898fa051015728e5a8aaac42dad33170d04507a33a85521abdf1cba64ecfb850458dbef0a8aea71575d060c7db3970f85a6e1e4c7abf5ae8cdb0933d71e8c94e04a25619dcee3d2261ad2ee6bf12ffa06d98a0864d87602733ec86a64521f2b18177b200cbbe117577a615d6c770988c0bad946e208e24fa074e5ab3143db5bfce0fd108e4b82d120a92108011a723c12a787e6d788719a10bdba5b2699c327186af4e23c1a946834b6150bda2583e9ca2ad44ce8dbbbc2db04de8ef92e8efc141fbecaa6287c59474e6bc05d99b2964fa090c3a2233ba186515be7ed1f612970cee2d7afb81bdd762170481cd0069127d5b05aa993b4ea988d8fddc186ffb7dc90a6c08f4df435c934063199ffffffffffffffff"},modp17:{gen:"02",prime:"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca18217c32905e462e36ce3be39e772c180e86039b2783a2ec07a28fb5c55df06f4c52c9de2bcbf6955817183995497cea956ae515d2261898fa051015728e5a8aaac42dad33170d04507a33a85521abdf1cba64ecfb850458dbef0a8aea71575d060c7db3970f85a6e1e4c7abf5ae8cdb0933d71e8c94e04a25619dcee3d2261ad2ee6bf12ffa06d98a0864d87602733ec86a64521f2b18177b200cbbe117577a615d6c770988c0bad946e208e24fa074e5ab3143db5bfce0fd108e4b82d120a92108011a723c12a787e6d788719a10bdba5b2699c327186af4e23c1a946834b6150bda2583e9ca2ad44ce8dbbbc2db04de8ef92e8efc141fbecaa6287c59474e6bc05d99b2964fa090c3a2233ba186515be7ed1f612970cee2d7afb81bdd762170481cd0069127d5b05aa993b4ea988d8fddc186ffb7dc90a6c08f4df435c93402849236c3fab4d27c7026c1d4dcb2602646dec9751e763dba37bdf8ff9406ad9e530ee5db382f413001aeb06a53ed9027d831179727b0865a8918da3edbebcf9b14ed44ce6cbaced4bb1bdb7f1447e6cc254b332051512bd7af426fb8f401378cd2bf5983ca01c64b92ecf032ea15d1721d03f482d7ce6e74fef6d55e702f46980c82b5a84031900b1c9e59e7c97fbec7e8f323a97a7e36cc88be0f1d45b7ff585ac54bd407b22b4154aacc8f6d7ebf48e1d814cc5ed20f8037e0a79715eef29be32806a1d58bb7c5da76f550aa3d8a1fbff0eb19ccb1a313d55cda56c9ec2ef29632387fe8d76e3c0468043e8f663f4860ee12bf2d5b0b7474d6e694f91e6dcc4024ffffffffffffffff"},modp18:{gen:"02",prime:"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca18217c32905e462e36ce3be39e772c180e86039b2783a2ec07a28fb5c55df06f4c52c9de2bcbf6955817183995497cea956ae515d2261898fa051015728e5a8aaac42dad33170d04507a33a85521abdf1cba64ecfb850458dbef0a8aea71575d060c7db3970f85a6e1e4c7abf5ae8cdb0933d71e8c94e04a25619dcee3d2261ad2ee6bf12ffa06d98a0864d87602733ec86a64521f2b18177b200cbbe117577a615d6c770988c0bad946e208e24fa074e5ab3143db5bfce0fd108e4b82d120a92108011a723c12a787e6d788719a10bdba5b2699c327186af4e23c1a946834b6150bda2583e9ca2ad44ce8dbbbc2db04de8ef92e8efc141fbecaa6287c59474e6bc05d99b2964fa090c3a2233ba186515be7ed1f612970cee2d7afb81bdd762170481cd0069127d5b05aa993b4ea988d8fddc186ffb7dc90a6c08f4df435c93402849236c3fab4d27c7026c1d4dcb2602646dec9751e763dba37bdf8ff9406ad9e530ee5db382f413001aeb06a53ed9027d831179727b0865a8918da3edbebcf9b14ed44ce6cbaced4bb1bdb7f1447e6cc254b332051512bd7af426fb8f401378cd2bf5983ca01c64b92ecf032ea15d1721d03f482d7ce6e74fef6d55e702f46980c82b5a84031900b1c9e59e7c97fbec7e8f323a97a7e36cc88be0f1d45b7ff585ac54bd407b22b4154aacc8f6d7ebf48e1d814cc5ed20f8037e0a79715eef29be32806a1d58bb7c5da76f550aa3d8a1fbff0eb19ccb1a313d55cda56c9ec2ef29632387fe8d76e3c0468043e8f663f4860ee12bf2d5b0b7474d6e694f91e6dbe115974a3926f12fee5e438777cb6a932df8cd8bec4d073b931ba3bc832b68d9dd300741fa7bf8afc47ed2576f6936ba424663aab639c5ae4f5683423b4742bf1c978238f16cbe39d652de3fdb8befc848ad922222e04a4037c0713eb57a81a23f0c73473fc646cea306b4bcbc8862f8385ddfa9d4b7fa2c087e879683303ed5bdd3a062b3cf5b3a278a66d2a13f83f44f82ddf310ee074ab6a364597e899a0255dc164f31cc50846851df9ab48195ded7ea1b1d510bd7ee74d73faf36bc31ecfa268359046f4eb879f924009438b481c6cd7889a002ed5ee382bc9190da6fc026e479558e4475677e9aa9e3050e2765694dfc81f56e880b96e7160c980dd98edd3dfffffffffffffffff"}}},{}],244:[function(e,t,r){arguments[4][95][0].apply(r,arguments)},{buffer:48,dup:95}],245:[function(e,t,r){var i=e("bn.js"),n=e("brorand");function a(e){this.rand=e||new n.Rand}t.exports=a,a.create=function(e){return new a(e)},a.prototype._randbelow=function(e){var t=e.bitLength(),r=Math.ceil(t/8);do{var n=new i(this.rand.generate(r))}while(n.cmp(e)>=0);return n},a.prototype._randrange=function(e,t){var r=t.sub(e);return e.add(this._randbelow(r))},a.prototype.test=function(e,t,r){var n=e.bitLength(),a=i.mont(e),o=new i(1).toRed(a);t||(t=Math.max(1,n/48|0));for(var s=e.subn(1),f=0;!s.testn(f);f++);for(var c=e.shrn(f),u=s.toRed(a);t>0;t--){var h=this._randrange(new i(2),s);r&&r(h);var d=h.toRed(a).redPow(c);if(0!==d.cmp(o)&&0!==d.cmp(u)){for(var l=1;l<f;l++){if(0===(d=d.redSqr()).cmp(o))return!1;if(0===d.cmp(u))break}if(l===f)return!1}}return!0},a.prototype.getDivisor=function(e,t){var r=e.bitLength(),n=i.mont(e),a=new i(1).toRed(n);t||(t=Math.max(1,r/48|0));for(var o=e.subn(1),s=0;!o.testn(s);s++);for(var f=e.shrn(s),c=o.toRed(n);t>0;t--){var u=this._randrange(new i(2),o),h=e.gcd(u);if(0!==h.cmpn(1))return h;var d=u.toRed(n).redPow(f);if(0!==d.cmp(a)&&0!==d.cmp(c)){for(var l=1;l<s;l++){if(0===(d=d.redSqr()).cmp(a))return d.fromRed().subn(1).gcd(e);if(0===d.cmp(c))break}if(l===s)return(d=d.redSqr()).fromRed().subn(1).gcd(e)}}return!1}},{"bn.js":244,brorand:246}],246:[function(e,t,r){arguments[4][112][0].apply(r,arguments)},{crypto:48,dup:112}],247:[function(e,t,r){r.pbkdf2=e("./lib/async"),r.pbkdf2Sync=e("./lib/sync")},{"./lib/async":248,"./lib/sync":251}],248:[function(e,t,r){(function(r,i){var n,a=e("./precondition"),o=e("./default-encoding"),s=e("./sync"),f=e("safe-buffer").Buffer,c=i.crypto&&i.crypto.subtle,u={sha:"SHA-1","sha-1":"SHA-1",sha1:"SHA-1",sha256:"SHA-256","sha-256":"SHA-256",sha384:"SHA-384","sha-384":"SHA-384","sha-512":"SHA-512",sha512:"SHA-512"},h=[];function d(e,t,r,i,n){return c.importKey("raw",e,{name:"PBKDF2"},!1,["deriveBits"]).then(function(e){return c.deriveBits({name:"PBKDF2",salt:t,iterations:r,hash:{name:n}},e,i<<3)}).then(function(e){return f.from(e)})}t.exports=function(e,t,l,p,b,m){"function"==typeof b&&(m=b,b=void 0);var g=u[(b=b||"sha1").toLowerCase()];if(!g||"function"!=typeof i.Promise)return r.nextTick(function(){var r;try{r=s(e,t,l,p,b)}catch(e){return m(e)}m(null,r)});if(a(e,t,l,p),"function"!=typeof m)throw new Error("No callback provided to pbkdf2");f.isBuffer(e)||(e=f.from(e,o)),f.isBuffer(t)||(t=f.from(t,o)),function(e,t){e.then(function(e){r.nextTick(function(){t(null,e)})},function(e){r.nextTick(function(){t(e)})})}(function(e){if(i.process&&!i.process.browser)return Promise.resolve(!1);if(!c||!c.importKey||!c.deriveBits)return Promise.resolve(!1);if(void 0!==h[e])return h[e];var t=d(n=n||f.alloc(8),n,10,128,e).then(function(){return!0}).catch(function(){return!1});return h[e]=t,t}(g).then(function(r){return r?d(e,t,l,p,g):s(e,t,l,p,b)}),m)}}).call(this,e("_process"),"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"./default-encoding":249,"./precondition":250,"./sync":251,_process:322,"safe-buffer":254}],249:[function(e,t,r){(function(e){var r;e.browser?r="utf-8":r=parseInt(e.version.split(".")[0].slice(1),10)>=6?"utf-8":"binary";t.exports=r}).call(this,e("_process"))},{_process:322}],250:[function(e,t,r){(function(e){var r=Math.pow(2,30)-1;function i(t,r){if("string"!=typeof t&&!e.isBuffer(t))throw new TypeError(r+" must be a buffer or string")}t.exports=function(e,t,n,a){if(i(e,"Password"),i(t,"Salt"),"number"!=typeof n)throw new TypeError("Iterations not a number");if(n<0)throw new TypeError("Bad iterations");if("number"!=typeof a)throw new TypeError("Key length not a number");if(a<0||a>r||a!=a)throw new TypeError("Bad key length")}}).call(this,{isBuffer:e("../../../../insert-module-globals/node_modules/is-buffer/index.js")})},{"../../../../insert-module-globals/node_modules/is-buffer/index.js":321}],251:[function(e,t,r){var i=e("create-hash/md5"),n=e("ripemd160"),a=e("sha.js"),o=e("./precondition"),s=e("./default-encoding"),f=e("safe-buffer").Buffer,c=f.alloc(128),u={md5:16,sha1:20,sha224:28,sha256:32,sha384:48,sha512:64,rmd160:20,ripemd160:20};function h(e,t,r){var o=function(e){return"rmd160"===e||"ripemd160"===e?n:"md5"===e?i:function(t){return a(e).update(t).digest()}}(e),s="sha512"===e||"sha384"===e?128:64;t.length>s?t=o(t):t.length<s&&(t=f.concat([t,c],s));for(var h=f.allocUnsafe(s+u[e]),d=f.allocUnsafe(s+u[e]),l=0;l<s;l++)h[l]=54^t[l],d[l]=92^t[l];var p=f.allocUnsafe(s+r+4);h.copy(p,0,0,s),this.ipad1=p,this.ipad2=h,this.opad=d,this.alg=e,this.blocksize=s,this.hash=o,this.size=u[e]}h.prototype.run=function(e,t){return e.copy(t,this.blocksize),this.hash(t).copy(this.opad,this.blocksize),this.hash(this.opad)},t.exports=function(e,t,r,i,n){o(e,t,r,i),f.isBuffer(e)||(e=f.from(e,s)),f.isBuffer(t)||(t=f.from(t,s));var a=new h(n=n||"sha1",e,t.length),c=f.allocUnsafe(i),d=f.allocUnsafe(t.length+4);t.copy(d,0,0,t.length);for(var l=0,p=u[n],b=Math.ceil(i/p),m=1;m<=b;m++){d.writeUInt32BE(m,t.length);for(var g=a.run(d,a.ipad1),v=g,y=1;y<r;y++){v=a.run(v,a.ipad2);for(var w=0;w<p;w++)g[w]^=v[w]}g.copy(c,l),l+=p}return c}},{"./default-encoding":249,"./precondition":250,"create-hash/md5":208,ripemd160:252,"safe-buffer":254,"sha.js":256}],252:[function(e,t,r){arguments[4][214][0].apply(r,arguments)},{buffer:49,dup:214,"hash-base":253,inherits:320}],253:[function(e,t,r){arguments[4][87][0].apply(r,arguments)},{dup:87,inherits:320,"safe-buffer":254,stream:341}],254:[function(e,t,r){arguments[4][72][0].apply(r,arguments)},{buffer:49,dup:72}],255:[function(e,t,r){arguments[4][217][0].apply(r,arguments)},{dup:217,"safe-buffer":254}],256:[function(e,t,r){arguments[4][218][0].apply(r,arguments)},{"./sha":257,"./sha1":258,"./sha224":259,"./sha256":260,"./sha384":261,"./sha512":262,dup:218}],257:[function(e,t,r){arguments[4][220][0].apply(r,arguments)},{"./hash":255,dup:220,inherits:320,"safe-buffer":254}],258:[function(e,t,r){arguments[4][221][0].apply(r,arguments)},{"./hash":255,dup:221,inherits:320,"safe-buffer":254}],259:[function(e,t,r){arguments[4][222][0].apply(r,arguments)},{"./hash":255,"./sha256":260,dup:222,inherits:320,"safe-buffer":254}],260:[function(e,t,r){arguments[4][223][0].apply(r,arguments)},{"./hash":255,dup:223,inherits:320,"safe-buffer":254}],261:[function(e,t,r){arguments[4][224][0].apply(r,arguments)},{"./hash":255,"./sha512":262,dup:224,inherits:320,"safe-buffer":254}],262:[function(e,t,r){arguments[4][225][0].apply(r,arguments)},{"./hash":255,dup:225,inherits:320,"safe-buffer":254}],263:[function(e,t,r){r.publicEncrypt=e("./publicEncrypt"),r.privateDecrypt=e("./privateDecrypt"),r.privateEncrypt=function(e,t){return r.publicEncrypt(e,t,!0)},r.publicDecrypt=function(e,t){return r.privateDecrypt(e,t,!0)}},{"./privateDecrypt":311,"./publicEncrypt":312}],264:[function(e,t,r){(function(r){var i=e("create-hash");function n(e){var t=new r(4);return t.writeUInt32BE(e,0),t}t.exports=function(e,t){for(var a,o=new r(""),s=0;o.length<t;)a=n(s++),o=r.concat([o,i("sha1").update(e).update(a).digest()]);return o.slice(0,t)}}).call(this,e("buffer").Buffer)},{buffer:49,"create-hash":207}],265:[function(e,t,r){arguments[4][95][0].apply(r,arguments)},{buffer:48,dup:95}],266:[function(e,t,r){arguments[4][96][0].apply(r,arguments)},{"bn.js":265,buffer:49,dup:96,randombytes:315}],267:[function(e,t,r){arguments[4][129][0].apply(r,arguments)},{dup:129}],268:[function(e,t,r){arguments[4][130][0].apply(r,arguments)},{"./certificate":269,"asn1.js":272,dup:130}],269:[function(e,t,r){arguments[4][131][0].apply(r,arguments)},{"asn1.js":272,dup:131}],270:[function(e,t,r){arguments[4][132][0].apply(r,arguments)},{"browserify-aes":289,buffer:49,dup:132,evp_bytestokey:307}],271:[function(e,t,r){arguments[4][133][0].apply(r,arguments)},{"./aesid.json":267,"./asn1":268,"./fixProc":270,"browserify-aes":289,buffer:49,dup:133,pbkdf2:247}],272:[function(e,t,r){arguments[4][134][0].apply(r,arguments)},{"./asn1/api":273,"./asn1/base":275,"./asn1/constants":279,"./asn1/decoders":281,"./asn1/encoders":284,"bn.js":265,dup:134}],273:[function(e,t,r){arguments[4][135][0].apply(r,arguments)},{"../asn1":272,dup:135,inherits:320,vm:345}],274:[function(e,t,r){arguments[4][136][0].apply(r,arguments)},{"../base":275,buffer:49,dup:136,inherits:320}],275:[function(e,t,r){arguments[4][137][0].apply(r,arguments)},{"./buffer":274,"./node":276,"./reporter":277,dup:137}],276:[function(e,t,r){arguments[4][138][0].apply(r,arguments)},{"../base":275,dup:138,"minimalistic-assert":286}],277:[function(e,t,r){arguments[4][139][0].apply(r,arguments)},{dup:139,inherits:320}],278:[function(e,t,r){arguments[4][140][0].apply(r,arguments)},{"../constants":279,dup:140}],279:[function(e,t,r){arguments[4][141][0].apply(r,arguments)},{"./der":278,dup:141}],280:[function(e,t,r){arguments[4][142][0].apply(r,arguments)},{"../../asn1":272,dup:142,inherits:320}],281:[function(e,t,r){arguments[4][143][0].apply(r,arguments)},{"./der":280,"./pem":282,dup:143}],282:[function(e,t,r){arguments[4][144][0].apply(r,arguments)},{"./der":280,buffer:49,dup:144,inherits:320}],283:[function(e,t,r){arguments[4][145][0].apply(r,arguments)},{"../../asn1":272,buffer:49,dup:145,inherits:320}],284:[function(e,t,r){arguments[4][146][0].apply(r,arguments)},{"./der":283,"./pem":285,dup:146}],285:[function(e,t,r){arguments[4][147][0].apply(r,arguments)},{"./der":283,dup:147,inherits:320}],286:[function(e,t,r){arguments[4][83][0].apply(r,arguments)},{dup:83}],287:[function(e,t,r){arguments[4][54][0].apply(r,arguments)},{dup:54,"safe-buffer":305}],288:[function(e,t,r){arguments[4][55][0].apply(r,arguments)},{"./aes":287,"./ghash":292,"./incr32":293,"buffer-xor":303,"cipher-base":304,dup:55,inherits:320,"safe-buffer":305}],289:[function(e,t,r){arguments[4][56][0].apply(r,arguments)},{"./decrypter":290,"./encrypter":291,"./modes/list.json":301,dup:56}],290:[function(e,t,r){arguments[4][57][0].apply(r,arguments)},{"./aes":287,"./authCipher":288,"./modes":300,"./streamCipher":306,"cipher-base":304,dup:57,evp_bytestokey:307,inherits:320,"safe-buffer":305}],291:[function(e,t,r){arguments[4][58][0].apply(r,arguments)},{"./aes":287,"./authCipher":288,"./modes":300,"./streamCipher":306,"cipher-base":304,dup:58,evp_bytestokey:307,inherits:320,"safe-buffer":305}],292:[function(e,t,r){arguments[4][59][0].apply(r,arguments)},{dup:59,"safe-buffer":305}],293:[function(e,t,r){arguments[4][60][0].apply(r,arguments)},{dup:60}],294:[function(e,t,r){arguments[4][61][0].apply(r,arguments)},{"buffer-xor":303,dup:61}],295:[function(e,t,r){arguments[4][62][0].apply(r,arguments)},{"buffer-xor":303,dup:62,"safe-buffer":305}],296:[function(e,t,r){arguments[4][63][0].apply(r,arguments)},{dup:63,"safe-buffer":305}],297:[function(e,t,r){arguments[4][64][0].apply(r,arguments)},{dup:64,"safe-buffer":305}],298:[function(e,t,r){arguments[4][65][0].apply(r,arguments)},{"../incr32":293,"buffer-xor":303,dup:65,"safe-buffer":305}],299:[function(e,t,r){arguments[4][66][0].apply(r,arguments)},{dup:66}],300:[function(e,t,r){arguments[4][67][0].apply(r,arguments)},{"./cbc":294,"./cfb":295,"./cfb1":296,"./cfb8":297,"./ctr":298,"./ecb":299,"./list.json":301,"./ofb":302,dup:67}],301:[function(e,t,r){arguments[4][68][0].apply(r,arguments)},{dup:68}],302:[function(e,t,r){arguments[4][69][0].apply(r,arguments)},{buffer:49,"buffer-xor":303,dup:69}],303:[function(e,t,r){arguments[4][70][0].apply(r,arguments)},{buffer:49,dup:70}],304:[function(e,t,r){arguments[4][71][0].apply(r,arguments)},{dup:71,inherits:320,"safe-buffer":305,stream:341,string_decoder:342}],305:[function(e,t,r){arguments[4][72][0].apply(r,arguments)},{buffer:49,dup:72}],306:[function(e,t,r){arguments[4][73][0].apply(r,arguments)},{"./aes":287,"cipher-base":304,dup:73,inherits:320,"safe-buffer":305}],307:[function(e,t,r){arguments[4][85][0].apply(r,arguments)},{dup:85,"md5.js":308,"safe-buffer":310}],308:[function(e,t,r){arguments[4][86][0].apply(r,arguments)},{buffer:49,dup:86,"hash-base":309,inherits:320}],309:[function(e,t,r){arguments[4][87][0].apply(r,arguments)},{dup:87,inherits:320,"safe-buffer":310,stream:341}],310:[function(e,t,r){arguments[4][72][0].apply(r,arguments)},{buffer:49,dup:72}],311:[function(e,t,r){(function(r){var i=e("parse-asn1"),n=e("./mgf"),a=e("./xor"),o=e("bn.js"),s=e("browserify-rsa"),f=e("create-hash"),c=e("./withPublic");t.exports=function(e,t,u){var h;h=e.padding?e.padding:u?1:4;var d,l=i(e),p=l.modulus.byteLength();if(t.length>p||new o(t).cmp(l.modulus)>=0)throw new Error("decryption error");d=u?c(new o(t),l):s(t,l);var b=new r(p-d.length);if(b.fill(0),d=r.concat([b,d],p),4===h)return function(e,t){e.modulus;var i=e.modulus.byteLength(),o=(t.length,f("sha1").update(new r("")).digest()),s=o.length;if(0!==t[0])throw new Error("decryption error");var c=t.slice(1,s+1),u=t.slice(s+1),h=a(c,n(u,s)),d=a(u,n(h,i-s-1));if(function(e,t){e=new r(e),t=new r(t);var i=0,n=e.length;e.length!==t.length&&(i++,n=Math.min(e.length,t.length));var a=-1;for(;++a<n;)i+=e[a]^t[a];return i}(o,d.slice(0,s)))throw new Error("decryption error");var l=s;for(;0===d[l];)l++;if(1!==d[l++])throw new Error("decryption error");return d.slice(l)}(l,d);if(1===h)return function(e,t,r){var i=t.slice(0,2),n=2,a=0;for(;0!==t[n++];)if(n>=t.length){a++;break}var o=t.slice(2,n-1);t.slice(n-1,n);("0002"!==i.toString("hex")&&!r||"0001"!==i.toString("hex")&&r)&&a++;o.length<8&&a++;if(a)throw new Error("decryption error");return t.slice(n)}(0,d,u);if(3===h)return d;throw new Error("unknown padding")}}).call(this,e("buffer").Buffer)},{"./mgf":264,"./withPublic":313,"./xor":314,"bn.js":265,"browserify-rsa":266,buffer:49,"create-hash":207,"parse-asn1":271}],312:[function(e,t,r){(function(r){var i=e("parse-asn1"),n=e("randombytes"),a=e("create-hash"),o=e("./mgf"),s=e("./xor"),f=e("bn.js"),c=e("./withPublic"),u=e("browserify-rsa");t.exports=function(e,t,h){var d;d=e.padding?e.padding:h?1:4;var l,p=i(e);if(4===d)l=function(e,t){var i=e.modulus.byteLength(),c=t.length,u=a("sha1").update(new r("")).digest(),h=u.length,d=2*h;if(c>i-d-2)throw new Error("message too long");var l=new r(i-c-d-2);l.fill(0);var p=i-h-1,b=n(h),m=s(r.concat([u,l,new r([1]),t],p),o(b,p)),g=s(b,o(m,h));return new f(r.concat([new r([0]),g,m],i))}(p,t);else if(1===d)l=function(e,t,i){var a,o=t.length,s=e.modulus.byteLength();if(o>s-11)throw new Error("message too long");i?(a=new r(s-o-3)).fill(255):a=function(e,t){var i,a=new r(e),o=0,s=n(2*e),f=0;for(;o<e;)f===s.length&&(s=n(2*e),f=0),(i=s[f++])&&(a[o++]=i);return a}(s-o-3);return new f(r.concat([new r([0,i?1:2]),a,new r([0]),t],s))}(p,t,h);else{if(3!==d)throw new Error("unknown padding");if((l=new f(t)).cmp(p.modulus)>=0)throw new Error("data too long for modulus")}return h?u(l,p):c(l,p)}}).call(this,e("buffer").Buffer)},{"./mgf":264,"./withPublic":313,"./xor":314,"bn.js":265,"browserify-rsa":266,buffer:49,"create-hash":207,"parse-asn1":271,randombytes:315}],313:[function(e,t,r){(function(r){var i=e("bn.js");t.exports=function(e,t){return new r(e.toRed(i.mont(t.modulus)).redPow(new i(t.publicExponent)).fromRed().toArray())}}).call(this,e("buffer").Buffer)},{"bn.js":265,buffer:49}],314:[function(e,t,r){t.exports=function(e,t){for(var r=e.length,i=-1;++i<r;)e[i]^=t[i];return e}},{}],315:[function(e,t,r){(function(r,i){"use strict";var n=e("safe-buffer").Buffer,a=i.crypto||i.msCrypto;a&&a.getRandomValues?t.exports=function(e,t){if(e>65536)throw new Error("requested too many random bytes");var o=new i.Uint8Array(e);e>0&&a.getRandomValues(o);var s=n.from(o.buffer);if("function"==typeof t)return r.nextTick(function(){t(null,s)});return s}:t.exports=function(){throw new Error("Secure random number generation is not supported by this browser.\nUse Chrome, Firefox or Internet Explorer 11")}}).call(this,e("_process"),"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{_process:322,"safe-buffer":316}],316:[function(e,t,r){arguments[4][72][0].apply(r,arguments)},{buffer:49,dup:72}],317:[function(e,t,r){(function(t,i){"use strict";function n(){throw new Error("secure random number generation not supported by this browser\nuse chrome, FireFox or Internet Explorer 11")}var a=e("safe-buffer"),o=e("randombytes"),s=a.Buffer,f=a.kMaxLength,c=i.crypto||i.msCrypto,u=Math.pow(2,32)-1;function h(e,t){if("number"!=typeof e||e!=e)throw new TypeError("offset must be a number");if(e>u||e<0)throw new TypeError("offset must be a uint32");if(e>f||e>t)throw new RangeError("offset out of range")}function d(e,t,r){if("number"!=typeof e||e!=e)throw new TypeError("size must be a number");if(e>u||e<0)throw new TypeError("size must be a uint32");if(e+t>r||e>f)throw new RangeError("buffer too small")}function l(e,r,i,n){if(t.browser){var a=e.buffer,s=new Uint8Array(a,r,i);return c.getRandomValues(s),n?void t.nextTick(function(){n(null,e)}):e}if(!n)return o(i).copy(e,r),e;o(i,function(t,i){if(t)return n(t);i.copy(e,r),n(null,e)})}c&&c.getRandomValues||!t.browser?(r.randomFill=function(e,t,r,n){if(!(s.isBuffer(e)||e instanceof i.Uint8Array))throw new TypeError('"buf" argument must be a Buffer or Uint8Array');if("function"==typeof t)n=t,t=0,r=e.length;else if("function"==typeof r)n=r,r=e.length-t;else if("function"!=typeof n)throw new TypeError('"cb" argument must be a function');return h(t,e.length),d(r,t,e.length),l(e,t,r,n)},r.randomFillSync=function(e,t,r){void 0===t&&(t=0);if(!(s.isBuffer(e)||e instanceof i.Uint8Array))throw new TypeError('"buf" argument must be a Buffer or Uint8Array');h(t,e.length),void 0===r&&(r=e.length-t);return d(r,t,e.length),l(e,t,r)}):(r.randomFill=n,r.randomFillSync=n)}).call(this,e("_process"),"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{_process:322,randombytes:315,"safe-buffer":318}],318:[function(e,t,r){arguments[4][72][0].apply(r,arguments)},{buffer:49,dup:72}],319:[function(e,t,r){var i=Object.create||function(e){var t=function(){};return t.prototype=e,new t},n=Object.keys||function(e){var t=[];for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.push(r);return r},a=Function.prototype.bind||function(e){var t=this;return function(){return t.apply(e,arguments)}};function o(){this._events&&Object.prototype.hasOwnProperty.call(this,"_events")||(this._events=i(null),this._eventsCount=0),this._maxListeners=this._maxListeners||void 0}t.exports=o,o.EventEmitter=o,o.prototype._events=void 0,o.prototype._maxListeners=void 0;var s,f=10;try{var c={};Object.defineProperty&&Object.defineProperty(c,"x",{value:0}),s=0===c.x}catch(e){s=!1}function u(e){return void 0===e._maxListeners?o.defaultMaxListeners:e._maxListeners}function h(e,t,r){if(t)e.call(r);else for(var i=e.length,n=_(e,i),a=0;a<i;++a)n[a].call(r)}function d(e,t,r,i){if(t)e.call(r,i);else for(var n=e.length,a=_(e,n),o=0;o<n;++o)a[o].call(r,i)}function l(e,t,r,i,n){if(t)e.call(r,i,n);else for(var a=e.length,o=_(e,a),s=0;s<a;++s)o[s].call(r,i,n)}function p(e,t,r,i,n,a){if(t)e.call(r,i,n,a);else for(var o=e.length,s=_(e,o),f=0;f<o;++f)s[f].call(r,i,n,a)}function b(e,t,r,i){if(t)e.apply(r,i);else for(var n=e.length,a=_(e,n),o=0;o<n;++o)a[o].apply(r,i)}function m(e,t,r,n){var a,o,s;if("function"!=typeof r)throw new TypeError('"listener" argument must be a function');if((o=e._events)?(o.newListener&&(e.emit("newListener",t,r.listener?r.listener:r),o=e._events),s=o[t]):(o=e._events=i(null),e._eventsCount=0),s){if("function"==typeof s?s=o[t]=n?[r,s]:[s,r]:n?s.unshift(r):s.push(r),!s.warned&&(a=u(e))&&a>0&&s.length>a){s.warned=!0;var f=new Error("Possible EventEmitter memory leak detected. "+s.length+' "'+String(t)+'" listeners added. Use emitter.setMaxListeners() to increase limit.');f.name="MaxListenersExceededWarning",f.emitter=e,f.type=t,f.count=s.length,"object"==typeof console&&console.warn&&console.warn("%s: %s",f.name,f.message)}}else s=o[t]=r,++e._eventsCount;return e}function g(){if(!this.fired)switch(this.target.removeListener(this.type,this.wrapFn),this.fired=!0,arguments.length){case 0:return this.listener.call(this.target);case 1:return this.listener.call(this.target,arguments[0]);case 2:return this.listener.call(this.target,arguments[0],arguments[1]);case 3:return this.listener.call(this.target,arguments[0],arguments[1],arguments[2]);default:for(var e=new Array(arguments.length),t=0;t<e.length;++t)e[t]=arguments[t];this.listener.apply(this.target,e)}}function v(e,t,r){var i={fired:!1,wrapFn:void 0,target:e,type:t,listener:r},n=a.call(g,i);return n.listener=r,i.wrapFn=n,n}function y(e,t,r){var i=e._events;if(!i)return[];var n=i[t];return n?"function"==typeof n?r?[n.listener||n]:[n]:r?function(e){for(var t=new Array(e.length),r=0;r<t.length;++r)t[r]=e[r].listener||e[r];return t}(n):_(n,n.length):[]}function w(e){var t=this._events;if(t){var r=t[e];if("function"==typeof r)return 1;if(r)return r.length}return 0}function _(e,t){for(var r=new Array(t),i=0;i<t;++i)r[i]=e[i];return r}s?Object.defineProperty(o,"defaultMaxListeners",{enumerable:!0,get:function(){return f},set:function(e){if("number"!=typeof e||e<0||e!=e)throw new TypeError('"defaultMaxListeners" must be a positive number');f=e}}):o.defaultMaxListeners=f,o.prototype.setMaxListeners=function(e){if("number"!=typeof e||e<0||isNaN(e))throw new TypeError('"n" argument must be a positive number');return this._maxListeners=e,this},o.prototype.getMaxListeners=function(){return u(this)},o.prototype.emit=function(e){var t,r,i,n,a,o,s="error"===e;if(o=this._events)s=s&&null==o.error;else if(!s)return!1;if(s){if(arguments.length>1&&(t=arguments[1]),t instanceof Error)throw t;var f=new Error('Unhandled "error" event. ('+t+")");throw f.context=t,f}if(!(r=o[e]))return!1;var c="function"==typeof r;switch(i=arguments.length){case 1:h(r,c,this);break;case 2:d(r,c,this,arguments[1]);break;case 3:l(r,c,this,arguments[1],arguments[2]);break;case 4:p(r,c,this,arguments[1],arguments[2],arguments[3]);break;default:for(n=new Array(i-1),a=1;a<i;a++)n[a-1]=arguments[a];b(r,c,this,n)}return!0},o.prototype.addListener=function(e,t){return m(this,e,t,!1)},o.prototype.on=o.prototype.addListener,o.prototype.prependListener=function(e,t){return m(this,e,t,!0)},o.prototype.once=function(e,t){if("function"!=typeof t)throw new TypeError('"listener" argument must be a function');return this.on(e,v(this,e,t)),this},o.prototype.prependOnceListener=function(e,t){if("function"!=typeof t)throw new TypeError('"listener" argument must be a function');return this.prependListener(e,v(this,e,t)),this},o.prototype.removeListener=function(e,t){var r,n,a,o,s;if("function"!=typeof t)throw new TypeError('"listener" argument must be a function');if(!(n=this._events))return this;if(!(r=n[e]))return this;if(r===t||r.listener===t)0==--this._eventsCount?this._events=i(null):(delete n[e],n.removeListener&&this.emit("removeListener",e,r.listener||t));else if("function"!=typeof r){for(a=-1,o=r.length-1;o>=0;o--)if(r[o]===t||r[o].listener===t){s=r[o].listener,a=o;break}if(a<0)return this;0===a?r.shift():function(e,t){for(var r=t,i=r+1,n=e.length;i<n;r+=1,i+=1)e[r]=e[i];e.pop()}(r,a),1===r.length&&(n[e]=r[0]),n.removeListener&&this.emit("removeListener",e,s||t)}return this},o.prototype.removeAllListeners=function(e){var t,r,a;if(!(r=this._events))return this;if(!r.removeListener)return 0===arguments.length?(this._events=i(null),this._eventsCount=0):r[e]&&(0==--this._eventsCount?this._events=i(null):delete r[e]),this;if(0===arguments.length){var o,s=n(r);for(a=0;a<s.length;++a)"removeListener"!==(o=s[a])&&this.removeAllListeners(o);return this.removeAllListeners("removeListener"),this._events=i(null),this._eventsCount=0,this}if("function"==typeof(t=r[e]))this.removeListener(e,t);else if(t)for(a=t.length-1;a>=0;a--)this.removeListener(e,t[a]);return this},o.prototype.listeners=function(e){return y(this,e,!0)},o.prototype.rawListeners=function(e){return y(this,e,!1)},o.listenerCount=function(e,t){return"function"==typeof e.listenerCount?e.listenerCount(t):w.call(e,t)},o.prototype.listenerCount=w,o.prototype.eventNames=function(){return this._eventsCount>0?Reflect.ownKeys(this._events):[]}},{}],320:[function(e,t,r){arguments[4][30][0].apply(r,arguments)},{dup:30}],321:[function(e,t,r){function i(e){return!!e.constructor&&"function"==typeof e.constructor.isBuffer&&e.constructor.isBuffer(e)}t.exports=function(e){return null!=e&&(i(e)||function(e){return"function"==typeof e.readFloatLE&&"function"==typeof e.slice&&i(e.slice(0,0))}(e)||!!e._isBuffer)}},{}],322:[function(e,t,r){var i,n,a=t.exports={};function o(){throw new Error("setTimeout has not been defined")}function s(){throw new Error("clearTimeout has not been defined")}function f(e){if(i===setTimeout)return setTimeout(e,0);if((i===o||!i)&&setTimeout)return i=setTimeout,setTimeout(e,0);try{return i(e,0)}catch(t){try{return i.call(null,e,0)}catch(t){return i.call(this,e,0)}}}!function(){try{i="function"==typeof setTimeout?setTimeout:o}catch(e){i=o}try{n="function"==typeof clearTimeout?clearTimeout:s}catch(e){n=s}}();var c,u=[],h=!1,d=-1;function l(){h&&c&&(h=!1,c.length?u=c.concat(u):d=-1,u.length&&p())}function p(){if(!h){var e=f(l);h=!0;for(var t=u.length;t;){for(c=u,u=[];++d<t;)c&&c[d].run();d=-1,t=u.length}c=null,h=!1,function(e){if(n===clearTimeout)return clearTimeout(e);if((n===s||!n)&&clearTimeout)return n=clearTimeout,clearTimeout(e);try{n(e)}catch(t){try{return n.call(null,e)}catch(t){return n.call(this,e)}}}(e)}}function b(e,t){this.fun=e,this.array=t}function m(){}a.nextTick=function(e){var t=new Array(arguments.length-1);if(arguments.length>1)for(var r=1;r<arguments.length;r++)t[r-1]=arguments[r];u.push(new b(e,t)),1!==u.length||h||f(p)},b.prototype.run=function(){this.fun.apply(null,this.array)},a.title="browser",a.browser=!0,a.env={},a.argv=[],a.version="",a.versions={},a.on=m,a.addListener=m,a.once=m,a.off=m,a.removeListener=m,a.removeAllListeners=m,a.emit=m,a.prependListener=m,a.prependOnceListener=m,a.listeners=function(e){return[]},a.binding=function(e){throw new Error("process.binding is not supported")},a.cwd=function(){return"/"},a.chdir=function(e){throw new Error("process.chdir is not supported")},a.umask=function(){return 0}},{}],323:[function(e,t,r){t.exports=e("./lib/_stream_duplex.js")},{"./lib/_stream_duplex.js":324}],324:[function(e,t,r){"use strict";var i=e("process-nextick-args"),n=Object.keys||function(e){var t=[];for(var r in e)t.push(r);return t};t.exports=h;var a=e("core-util-is");a.inherits=e("inherits");var o=e("./_stream_readable"),s=e("./_stream_writable");a.inherits(h,o);for(var f=n(s.prototype),c=0;c<f.length;c++){var u=f[c];h.prototype[u]||(h.prototype[u]=s.prototype[u])}function h(e){if(!(this instanceof h))return new h(e);o.call(this,e),s.call(this,e),e&&!1===e.readable&&(this.readable=!1),e&&!1===e.writable&&(this.writable=!1),this.allowHalfOpen=!0,e&&!1===e.allowHalfOpen&&(this.allowHalfOpen=!1),this.once("end",d)}function d(){this.allowHalfOpen||this._writableState.ended||i.nextTick(l,this)}function l(e){e.end()}Object.defineProperty(h.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),Object.defineProperty(h.prototype,"destroyed",{get:function(){return void 0!==this._readableState&&void 0!==this._writableState&&(this._readableState.destroyed&&this._writableState.destroyed)},set:function(e){void 0!==this._readableState&&void 0!==this._writableState&&(this._readableState.destroyed=e,this._writableState.destroyed=e)}}),h.prototype._destroy=function(e,t){this.push(null),this.end(),i.nextTick(t,e)}},{"./_stream_readable":326,"./_stream_writable":328,"core-util-is":332,inherits:320,"process-nextick-args":334}],325:[function(e,t,r){"use strict";t.exports=a;var i=e("./_stream_transform"),n=e("core-util-is");function a(e){if(!(this instanceof a))return new a(e);i.call(this,e)}n.inherits=e("inherits"),n.inherits(a,i),a.prototype._transform=function(e,t,r){r(null,e)}},{"./_stream_transform":327,"core-util-is":332,inherits:320}],326:[function(e,t,r){(function(r,i){"use strict";var n=e("process-nextick-args");t.exports=y;var a,o=e("isarray");y.ReadableState=v;e("events").EventEmitter;var s=function(e,t){return e.listeners(t).length},f=e("./internal/streams/stream"),c=e("safe-buffer").Buffer,u=i.Uint8Array||function(){};var h=e("core-util-is");h.inherits=e("inherits");var d=e("util"),l=void 0;l=d&&d.debuglog?d.debuglog("stream"):function(){};var p,b=e("./internal/streams/BufferList"),m=e("./internal/streams/destroy");h.inherits(y,f);var g=["error","close","destroy","pause","resume"];function v(t,r){t=t||{};var i=r instanceof(a=a||e("./_stream_duplex"));this.objectMode=!!t.objectMode,i&&(this.objectMode=this.objectMode||!!t.readableObjectMode);var n=t.highWaterMark,o=t.readableHighWaterMark,s=this.objectMode?16:16384;this.highWaterMark=n||0===n?n:i&&(o||0===o)?o:s,this.highWaterMark=Math.floor(this.highWaterMark),this.buffer=new b,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.destroyed=!1,this.defaultEncoding=t.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,t.encoding&&(p||(p=e("string_decoder/").StringDecoder),this.decoder=new p(t.encoding),this.encoding=t.encoding)}function y(t){if(a=a||e("./_stream_duplex"),!(this instanceof y))return new y(t);this._readableState=new v(t,this),this.readable=!0,t&&("function"==typeof t.read&&(this._read=t.read),"function"==typeof t.destroy&&(this._destroy=t.destroy)),f.call(this)}function w(e,t,r,i,n){var a,o=e._readableState;null===t?(o.reading=!1,function(e,t){if(t.ended)return;if(t.decoder){var r=t.decoder.end();r&&r.length&&(t.buffer.push(r),t.length+=t.objectMode?1:r.length)}t.ended=!0,x(e)}(e,o)):(n||(a=function(e,t){var r;i=t,c.isBuffer(i)||i instanceof u||"string"==typeof t||void 0===t||e.objectMode||(r=new TypeError("Invalid non-string/buffer chunk"));var i;return r}(o,t)),a?e.emit("error",a):o.objectMode||t&&t.length>0?("string"==typeof t||o.objectMode||Object.getPrototypeOf(t)===c.prototype||(t=function(e){return c.from(e)}(t)),i?o.endEmitted?e.emit("error",new Error("stream.unshift() after end event")):_(e,o,t,!0):o.ended?e.emit("error",new Error("stream.push() after EOF")):(o.reading=!1,o.decoder&&!r?(t=o.decoder.write(t),o.objectMode||0!==t.length?_(e,o,t,!1):A(e,o)):_(e,o,t,!1))):i||(o.reading=!1));return function(e){return!e.ended&&(e.needReadable||e.length<e.highWaterMark||0===e.length)}(o)}function _(e,t,r,i){t.flowing&&0===t.length&&!t.sync?(e.emit("data",r),e.read(0)):(t.length+=t.objectMode?1:r.length,i?t.buffer.unshift(r):t.buffer.push(r),t.needReadable&&x(e)),A(e,t)}Object.defineProperty(y.prototype,"destroyed",{get:function(){return void 0!==this._readableState&&this._readableState.destroyed},set:function(e){this._readableState&&(this._readableState.destroyed=e)}}),y.prototype.destroy=m.destroy,y.prototype._undestroy=m.undestroy,y.prototype._destroy=function(e,t){this.push(null),t(e)},y.prototype.push=function(e,t){var r,i=this._readableState;return i.objectMode?r=!0:"string"==typeof e&&((t=t||i.defaultEncoding)!==i.encoding&&(e=c.from(e,t),t=""),r=!0),w(this,e,t,!1,r)},y.prototype.unshift=function(e){return w(this,e,null,!0,!1)},y.prototype.isPaused=function(){return!1===this._readableState.flowing},y.prototype.setEncoding=function(t){return p||(p=e("string_decoder/").StringDecoder),this._readableState.decoder=new p(t),this._readableState.encoding=t,this};var S=8388608;function M(e,t){return e<=0||0===t.length&&t.ended?0:t.objectMode?1:e!=e?t.flowing&&t.length?t.buffer.head.data.length:t.length:(e>t.highWaterMark&&(t.highWaterMark=function(e){return e>=S?e=S:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}(e)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0))}function x(e){var t=e._readableState;t.needReadable=!1,t.emittedReadable||(l("emitReadable",t.flowing),t.emittedReadable=!0,t.sync?n.nextTick(k,e):k(e))}function k(e){l("emit readable"),e.emit("readable"),B(e)}function A(e,t){t.readingMore||(t.readingMore=!0,n.nextTick(E,e,t))}function E(e,t){for(var r=t.length;!t.reading&&!t.flowing&&!t.ended&&t.length<t.highWaterMark&&(l("maybeReadMore read 0"),e.read(0),r!==t.length);)r=t.length;t.readingMore=!1}function I(e){l("readable nexttick read 0"),e.read(0)}function j(e,t){t.reading||(l("resume read 0"),e.read(0)),t.resumeScheduled=!1,t.awaitDrain=0,e.emit("resume"),B(e),t.flowing&&!t.reading&&e.read(0)}function B(e){var t=e._readableState;for(l("flow",t.flowing);t.flowing&&null!==e.read(););}function z(e,t){return 0===t.length?null:(t.objectMode?r=t.buffer.shift():!e||e>=t.length?(r=t.decoder?t.buffer.join(""):1===t.buffer.length?t.buffer.head.data:t.buffer.concat(t.length),t.buffer.clear()):r=function(e,t,r){var i;e<t.head.data.length?(i=t.head.data.slice(0,e),t.head.data=t.head.data.slice(e)):i=e===t.head.data.length?t.shift():r?function(e,t){var r=t.head,i=1,n=r.data;e-=n.length;for(;r=r.next;){var a=r.data,o=e>a.length?a.length:e;if(o===a.length?n+=a:n+=a.slice(0,e),0===(e-=o)){o===a.length?(++i,r.next?t.head=r.next:t.head=t.tail=null):(t.head=r,r.data=a.slice(o));break}++i}return t.length-=i,n}(e,t):function(e,t){var r=c.allocUnsafe(e),i=t.head,n=1;i.data.copy(r),e-=i.data.length;for(;i=i.next;){var a=i.data,o=e>a.length?a.length:e;if(a.copy(r,r.length-e,0,o),0===(e-=o)){o===a.length?(++n,i.next?t.head=i.next:t.head=t.tail=null):(t.head=i,i.data=a.slice(o));break}++n}return t.length-=n,r}(e,t);return i}(e,t.buffer,t.decoder),r);var r}function C(e){var t=e._readableState;if(t.length>0)throw new Error('"endReadable()" called on non-empty stream');t.endEmitted||(t.ended=!0,n.nextTick(P,t,e))}function P(e,t){e.endEmitted||0!==e.length||(e.endEmitted=!0,t.readable=!1,t.emit("end"))}function R(e,t){for(var r=0,i=e.length;r<i;r++)if(e[r]===t)return r;return-1}y.prototype.read=function(e){l("read",e),e=parseInt(e,10);var t=this._readableState,r=e;if(0!==e&&(t.emittedReadable=!1),0===e&&t.needReadable&&(t.length>=t.highWaterMark||t.ended))return l("read: emitReadable",t.length,t.ended),0===t.length&&t.ended?C(this):x(this),null;if(0===(e=M(e,t))&&t.ended)return 0===t.length&&C(this),null;var i,n=t.needReadable;return l("need readable",n),(0===t.length||t.length-e<t.highWaterMark)&&l("length less than watermark",n=!0),t.ended||t.reading?l("reading or ended",n=!1):n&&(l("do read"),t.reading=!0,t.sync=!0,0===t.length&&(t.needReadable=!0),this._read(t.highWaterMark),t.sync=!1,t.reading||(e=M(r,t))),null===(i=e>0?z(e,t):null)?(t.needReadable=!0,e=0):t.length-=e,0===t.length&&(t.ended||(t.needReadable=!0),r!==e&&t.ended&&C(this)),null!==i&&this.emit("data",i),i},y.prototype._read=function(e){this.emit("error",new Error("_read() is not implemented"))},y.prototype.pipe=function(e,t){var i=this,a=this._readableState;switch(a.pipesCount){case 0:a.pipes=e;break;case 1:a.pipes=[a.pipes,e];break;default:a.pipes.push(e)}a.pipesCount+=1,l("pipe count=%d opts=%j",a.pipesCount,t);var f=(!t||!1!==t.end)&&e!==r.stdout&&e!==r.stderr?u:y;function c(t,r){l("onunpipe"),t===i&&r&&!1===r.hasUnpiped&&(r.hasUnpiped=!0,l("cleanup"),e.removeListener("close",g),e.removeListener("finish",v),e.removeListener("drain",h),e.removeListener("error",m),e.removeListener("unpipe",c),i.removeListener("end",u),i.removeListener("end",y),i.removeListener("data",b),d=!0,!a.awaitDrain||e._writableState&&!e._writableState.needDrain||h())}function u(){l("onend"),e.end()}a.endEmitted?n.nextTick(f):i.once("end",f),e.on("unpipe",c);var h=function(e){return function(){var t=e._readableState;l("pipeOnDrain",t.awaitDrain),t.awaitDrain&&t.awaitDrain--,0===t.awaitDrain&&s(e,"data")&&(t.flowing=!0,B(e))}}(i);e.on("drain",h);var d=!1;var p=!1;function b(t){l("ondata"),p=!1,!1!==e.write(t)||p||((1===a.pipesCount&&a.pipes===e||a.pipesCount>1&&-1!==R(a.pipes,e))&&!d&&(l("false write response, pause",i._readableState.awaitDrain),i._readableState.awaitDrain++,p=!0),i.pause())}function m(t){l("onerror",t),y(),e.removeListener("error",m),0===s(e,"error")&&e.emit("error",t)}function g(){e.removeListener("finish",v),y()}function v(){l("onfinish"),e.removeListener("close",g),y()}function y(){l("unpipe"),i.unpipe(e)}return i.on("data",b),function(e,t,r){if("function"==typeof e.prependListener)return e.prependListener(t,r);e._events&&e._events[t]?o(e._events[t])?e._events[t].unshift(r):e._events[t]=[r,e._events[t]]:e.on(t,r)}(e,"error",m),e.once("close",g),e.once("finish",v),e.emit("pipe",i),a.flowing||(l("pipe resume"),i.resume()),e},y.prototype.unpipe=function(e){var t=this._readableState,r={hasUnpiped:!1};if(0===t.pipesCount)return this;if(1===t.pipesCount)return e&&e!==t.pipes?this:(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this,r),this);if(!e){var i=t.pipes,n=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var a=0;a<n;a++)i[a].emit("unpipe",this,r);return this}var o=R(t.pipes,e);return-1===o?this:(t.pipes.splice(o,1),t.pipesCount-=1,1===t.pipesCount&&(t.pipes=t.pipes[0]),e.emit("unpipe",this,r),this)},y.prototype.on=function(e,t){var r=f.prototype.on.call(this,e,t);if("data"===e)!1!==this._readableState.flowing&&this.resume();else if("readable"===e){var i=this._readableState;i.endEmitted||i.readableListening||(i.readableListening=i.needReadable=!0,i.emittedReadable=!1,i.reading?i.length&&x(this):n.nextTick(I,this))}return r},y.prototype.addListener=y.prototype.on,y.prototype.resume=function(){var e=this._readableState;return e.flowing||(l("resume"),e.flowing=!0,function(e,t){t.resumeScheduled||(t.resumeScheduled=!0,n.nextTick(j,e,t))}(this,e)),this},y.prototype.pause=function(){return l("call pause flowing=%j",this._readableState.flowing),!1!==this._readableState.flowing&&(l("pause"),this._readableState.flowing=!1,this.emit("pause")),this},y.prototype.wrap=function(e){var t=this,r=this._readableState,i=!1;for(var n in e.on("end",function(){if(l("wrapped end"),r.decoder&&!r.ended){var e=r.decoder.end();e&&e.length&&t.push(e)}t.push(null)}),e.on("data",function(n){(l("wrapped data"),r.decoder&&(n=r.decoder.write(n)),r.objectMode&&null==n)||(r.objectMode||n&&n.length)&&(t.push(n)||(i=!0,e.pause()))}),e)void 0===this[n]&&"function"==typeof e[n]&&(this[n]=function(t){return function(){return e[t].apply(e,arguments)}}(n));for(var a=0;a<g.length;a++)e.on(g[a],this.emit.bind(this,g[a]));return this._read=function(t){l("wrapped _read",t),i&&(i=!1,e.resume())},this},Object.defineProperty(y.prototype,"readableHighWaterMark",{enumerable:!1,get:function(){return this._readableState.highWaterMark}}),y._fromList=z}).call(this,e("_process"),"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"./_stream_duplex":324,"./internal/streams/BufferList":329,"./internal/streams/destroy":330,"./internal/streams/stream":331,_process:322,"core-util-is":332,events:319,inherits:320,isarray:333,"process-nextick-args":334,"safe-buffer":335,"string_decoder/":342,util:48}],327:[function(e,t,r){"use strict";t.exports=o;var i=e("./_stream_duplex"),n=e("core-util-is");function a(e,t){var r=this._transformState;r.transforming=!1;var i=r.writecb;if(!i)return this.emit("error",new Error("write callback called multiple times"));r.writechunk=null,r.writecb=null,null!=t&&this.push(t),i(e);var n=this._readableState;n.reading=!1,(n.needReadable||n.length<n.highWaterMark)&&this._read(n.highWaterMark)}function o(e){if(!(this instanceof o))return new o(e);i.call(this,e),this._transformState={afterTransform:a.bind(this),needTransform:!1,transforming:!1,writecb:null,writechunk:null,writeencoding:null},this._readableState.needReadable=!0,this._readableState.sync=!1,e&&("function"==typeof e.transform&&(this._transform=e.transform),"function"==typeof e.flush&&(this._flush=e.flush)),this.on("prefinish",s)}function s(){var e=this;"function"==typeof this._flush?this._flush(function(t,r){f(e,t,r)}):f(this,null,null)}function f(e,t,r){if(t)return e.emit("error",t);if(null!=r&&e.push(r),e._writableState.length)throw new Error("Calling transform done when ws.length != 0");if(e._transformState.transforming)throw new Error("Calling transform done when still transforming");return e.push(null)}n.inherits=e("inherits"),n.inherits(o,i),o.prototype.push=function(e,t){return this._transformState.needTransform=!1,i.prototype.push.call(this,e,t)},o.prototype._transform=function(e,t,r){throw new Error("_transform() is not implemented")},o.prototype._write=function(e,t,r){var i=this._transformState;if(i.writecb=r,i.writechunk=e,i.writeencoding=t,!i.transforming){var n=this._readableState;(i.needTransform||n.needReadable||n.length<n.highWaterMark)&&this._read(n.highWaterMark)}},o.prototype._read=function(e){var t=this._transformState;null!==t.writechunk&&t.writecb&&!t.transforming?(t.transforming=!0,this._transform(t.writechunk,t.writeencoding,t.afterTransform)):t.needTransform=!0},o.prototype._destroy=function(e,t){var r=this;i.prototype._destroy.call(this,e,function(e){t(e),r.emit("close")})}},{"./_stream_duplex":324,"core-util-is":332,inherits:320}],328:[function(e,t,r){(function(r,i,n){"use strict";var a=e("process-nextick-args");function o(e){var t=this;this.next=null,this.entry=null,this.finish=function(){!function(e,t,r){var i=e.entry;e.entry=null;for(;i;){var n=i.callback;t.pendingcb--,n(r),i=i.next}t.corkedRequestsFree?t.corkedRequestsFree.next=e:t.corkedRequestsFree=e}(t,e)}}t.exports=v;var s,f=!r.browser&&["v0.10","v0.9."].indexOf(r.version.slice(0,5))>-1?n:a.nextTick;v.WritableState=g;var c=e("core-util-is");c.inherits=e("inherits");var u={deprecate:e("util-deprecate")},h=e("./internal/streams/stream"),d=e("safe-buffer").Buffer,l=i.Uint8Array||function(){};var p,b=e("./internal/streams/destroy");function m(){}function g(t,r){s=s||e("./_stream_duplex"),t=t||{};var i=r instanceof s;this.objectMode=!!t.objectMode,i&&(this.objectMode=this.objectMode||!!t.writableObjectMode);var n=t.highWaterMark,c=t.writableHighWaterMark,u=this.objectMode?16:16384;this.highWaterMark=n||0===n?n:i&&(c||0===c)?c:u,this.highWaterMark=Math.floor(this.highWaterMark),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var h=!1===t.decodeStrings;this.decodeStrings=!h,this.defaultEncoding=t.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(e){!function(e,t){var r=e._writableState,i=r.sync,n=r.writecb;if(function(e){e.writing=!1,e.writecb=null,e.length-=e.writelen,e.writelen=0}(r),t)!function(e,t,r,i,n){--t.pendingcb,r?(a.nextTick(n,i),a.nextTick(x,e,t),e._writableState.errorEmitted=!0,e.emit("error",i)):(n(i),e._writableState.errorEmitted=!0,e.emit("error",i),x(e,t))}(e,r,i,t,n);else{var o=S(r);o||r.corked||r.bufferProcessing||!r.bufferedRequest||_(e,r),i?f(w,e,r,o,n):w(e,r,o,n)}}(r,e)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.bufferedRequestCount=0,this.corkedRequestsFree=new o(this)}function v(t){if(s=s||e("./_stream_duplex"),!(p.call(v,this)||this instanceof s))return new v(t);this._writableState=new g(t,this),this.writable=!0,t&&("function"==typeof t.write&&(this._write=t.write),"function"==typeof t.writev&&(this._writev=t.writev),"function"==typeof t.destroy&&(this._destroy=t.destroy),"function"==typeof t.final&&(this._final=t.final)),h.call(this)}function y(e,t,r,i,n,a,o){t.writelen=i,t.writecb=o,t.writing=!0,t.sync=!0,r?e._writev(n,t.onwrite):e._write(n,a,t.onwrite),t.sync=!1}function w(e,t,r,i){r||function(e,t){0===t.length&&t.needDrain&&(t.needDrain=!1,e.emit("drain"))}(e,t),t.pendingcb--,i(),x(e,t)}function _(e,t){t.bufferProcessing=!0;var r=t.bufferedRequest;if(e._writev&&r&&r.next){var i=t.bufferedRequestCount,n=new Array(i),a=t.corkedRequestsFree;a.entry=r;for(var s=0,f=!0;r;)n[s]=r,r.isBuf||(f=!1),r=r.next,s+=1;n.allBuffers=f,y(e,t,!0,t.length,n,"",a.finish),t.pendingcb++,t.lastBufferedRequest=null,a.next?(t.corkedRequestsFree=a.next,a.next=null):t.corkedRequestsFree=new o(t),t.bufferedRequestCount=0}else{for(;r;){var c=r.chunk,u=r.encoding,h=r.callback;if(y(e,t,!1,t.objectMode?1:c.length,c,u,h),r=r.next,t.bufferedRequestCount--,t.writing)break}null===r&&(t.lastBufferedRequest=null)}t.bufferedRequest=r,t.bufferProcessing=!1}function S(e){return e.ending&&0===e.length&&null===e.bufferedRequest&&!e.finished&&!e.writing}function M(e,t){e._final(function(r){t.pendingcb--,r&&e.emit("error",r),t.prefinished=!0,e.emit("prefinish"),x(e,t)})}function x(e,t){var r=S(t);return r&&(!function(e,t){t.prefinished||t.finalCalled||("function"==typeof e._final?(t.pendingcb++,t.finalCalled=!0,a.nextTick(M,e,t)):(t.prefinished=!0,e.emit("prefinish")))}(e,t),0===t.pendingcb&&(t.finished=!0,e.emit("finish"))),r}c.inherits(v,h),g.prototype.getBuffer=function(){for(var e=this.bufferedRequest,t=[];e;)t.push(e),e=e.next;return t},function(){try{Object.defineProperty(g.prototype,"buffer",{get:u.deprecate(function(){return this.getBuffer()},"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch(e){}}(),"function"==typeof Symbol&&Symbol.hasInstance&&"function"==typeof Function.prototype[Symbol.hasInstance]?(p=Function.prototype[Symbol.hasInstance],Object.defineProperty(v,Symbol.hasInstance,{value:function(e){return!!p.call(this,e)||this===v&&(e&&e._writableState instanceof g)}})):p=function(e){return e instanceof this},v.prototype.pipe=function(){this.emit("error",new Error("Cannot pipe, not readable"))},v.prototype.write=function(e,t,r){var i,n=this._writableState,o=!1,s=!n.objectMode&&(i=e,d.isBuffer(i)||i instanceof l);return s&&!d.isBuffer(e)&&(e=function(e){return d.from(e)}(e)),"function"==typeof t&&(r=t,t=null),s?t="buffer":t||(t=n.defaultEncoding),"function"!=typeof r&&(r=m),n.ended?function(e,t){var r=new Error("write after end");e.emit("error",r),a.nextTick(t,r)}(this,r):(s||function(e,t,r,i){var n=!0,o=!1;return null===r?o=new TypeError("May not write null values to stream"):"string"==typeof r||void 0===r||t.objectMode||(o=new TypeError("Invalid non-string/buffer chunk")),o&&(e.emit("error",o),a.nextTick(i,o),n=!1),n}(this,n,e,r))&&(n.pendingcb++,o=function(e,t,r,i,n,a){if(!r){var o=function(e,t,r){e.objectMode||!1===e.decodeStrings||"string"!=typeof t||(t=d.from(t,r));return t}(t,i,n);i!==o&&(r=!0,n="buffer",i=o)}var s=t.objectMode?1:i.length;t.length+=s;var f=t.length<t.highWaterMark;f||(t.needDrain=!0);if(t.writing||t.corked){var c=t.lastBufferedRequest;t.lastBufferedRequest={chunk:i,encoding:n,isBuf:r,callback:a,next:null},c?c.next=t.lastBufferedRequest:t.bufferedRequest=t.lastBufferedRequest,t.bufferedRequestCount+=1}else y(e,t,!1,s,i,n,a);return f}(this,n,s,e,t,r)),o},v.prototype.cork=function(){this._writableState.corked++},v.prototype.uncork=function(){var e=this._writableState;e.corked&&(e.corked--,e.writing||e.corked||e.finished||e.bufferProcessing||!e.bufferedRequest||_(this,e))},v.prototype.setDefaultEncoding=function(e){if("string"==typeof e&&(e=e.toLowerCase()),!(["hex","utf8","utf-8","ascii","binary","base64","ucs2","ucs-2","utf16le","utf-16le","raw"].indexOf((e+"").toLowerCase())>-1))throw new TypeError("Unknown encoding: "+e);return this._writableState.defaultEncoding=e,this},Object.defineProperty(v.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),v.prototype._write=function(e,t,r){r(new Error("_write() is not implemented"))},v.prototype._writev=null,v.prototype.end=function(e,t,r){var i=this._writableState;"function"==typeof e?(r=e,e=null,t=null):"function"==typeof t&&(r=t,t=null),null!=e&&this.write(e,t),i.corked&&(i.corked=1,this.uncork()),i.ending||i.finished||function(e,t,r){t.ending=!0,x(e,t),r&&(t.finished?a.nextTick(r):e.once("finish",r));t.ended=!0,e.writable=!1}(this,i,r)},Object.defineProperty(v.prototype,"destroyed",{get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(e){this._writableState&&(this._writableState.destroyed=e)}}),v.prototype.destroy=b.destroy,v.prototype._undestroy=b.undestroy,v.prototype._destroy=function(e,t){this.end(),t(e)}}).call(this,e("_process"),"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{},e("timers").setImmediate)},{"./_stream_duplex":324,"./internal/streams/destroy":330,"./internal/streams/stream":331,_process:322,"core-util-is":332,inherits:320,"process-nextick-args":334,"safe-buffer":335,timers:344,"util-deprecate":336}],329:[function(e,t,r){"use strict";var i=e("safe-buffer").Buffer,n=e("util");t.exports=function(){function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.head=null,this.tail=null,this.length=0}return e.prototype.push=function(e){var t={data:e,next:null};this.length>0?this.tail.next=t:this.head=t,this.tail=t,++this.length},e.prototype.unshift=function(e){var t={data:e,next:this.head};0===this.length&&(this.tail=t),this.head=t,++this.length},e.prototype.shift=function(){if(0!==this.length){var e=this.head.data;return 1===this.length?this.head=this.tail=null:this.head=this.head.next,--this.length,e}},e.prototype.clear=function(){this.head=this.tail=null,this.length=0},e.prototype.join=function(e){if(0===this.length)return"";for(var t=this.head,r=""+t.data;t=t.next;)r+=e+t.data;return r},e.prototype.concat=function(e){if(0===this.length)return i.alloc(0);if(1===this.length)return this.head.data;for(var t,r,n,a=i.allocUnsafe(e>>>0),o=this.head,s=0;o;)t=o.data,r=a,n=s,t.copy(r,n),s+=o.data.length,o=o.next;return a},e}(),n&&n.inspect&&n.inspect.custom&&(t.exports.prototype[n.inspect.custom]=function(){var e=n.inspect({length:this.length});return this.constructor.name+" "+e})},{"safe-buffer":335,util:48}],330:[function(e,t,r){"use strict";var i=e("process-nextick-args");function n(e,t){e.emit("error",t)}t.exports={destroy:function(e,t){var r=this,a=this._readableState&&this._readableState.destroyed,o=this._writableState&&this._writableState.destroyed;return a||o?(t?t(e):!e||this._writableState&&this._writableState.errorEmitted||i.nextTick(n,this,e),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(e||null,function(e){!t&&e?(i.nextTick(n,r,e),r._writableState&&(r._writableState.errorEmitted=!0)):t&&t(e)}),this)},undestroy:function(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)}}},{"process-nextick-args":334}],331:[function(e,t,r){t.exports=e("events").EventEmitter},{events:319}],332:[function(e,t,r){(function(e){function t(e){return Object.prototype.toString.call(e)}r.isArray=function(e){return Array.isArray?Array.isArray(e):"[object Array]"===t(e)},r.isBoolean=function(e){return"boolean"==typeof e},r.isNull=function(e){return null===e},r.isNullOrUndefined=function(e){return null==e},r.isNumber=function(e){return"number"==typeof e},r.isString=function(e){return"string"==typeof e},r.isSymbol=function(e){return"symbol"==typeof e},r.isUndefined=function(e){return void 0===e},r.isRegExp=function(e){return"[object RegExp]"===t(e)},r.isObject=function(e){return"object"==typeof e&&null!==e},r.isDate=function(e){return"[object Date]"===t(e)},r.isError=function(e){return"[object Error]"===t(e)||e instanceof Error},r.isFunction=function(e){return"function"==typeof e},r.isPrimitive=function(e){return null===e||"boolean"==typeof e||"number"==typeof e||"string"==typeof e||"symbol"==typeof e||void 0===e},r.isBuffer=e.isBuffer}).call(this,{isBuffer:e("../../../../insert-module-globals/node_modules/is-buffer/index.js")})},{"../../../../insert-module-globals/node_modules/is-buffer/index.js":321}],333:[function(e,t,r){var i={}.toString;t.exports=Array.isArray||function(e){return"[object Array]"==i.call(e)}},{}],334:[function(e,t,r){(function(e){"use strict";!e.version||0===e.version.indexOf("v0.")||0===e.version.indexOf("v1.")&&0!==e.version.indexOf("v1.8.")?t.exports={nextTick:function(t,r,i,n){if("function"!=typeof t)throw new TypeError('"callback" argument must be a function');var a,o,s=arguments.length;switch(s){case 0:case 1:return e.nextTick(t);case 2:return e.nextTick(function(){t.call(null,r)});case 3:return e.nextTick(function(){t.call(null,r,i)});case 4:return e.nextTick(function(){t.call(null,r,i,n)});default:for(a=new Array(s-1),o=0;o<a.length;)a[o++]=arguments[o];return e.nextTick(function(){t.apply(null,a)})}}}:t.exports=e}).call(this,e("_process"))},{_process:322}],335:[function(e,t,r){arguments[4][72][0].apply(r,arguments)},{buffer:49,dup:72}],336:[function(e,t,r){(function(e){function r(t){try{if(!e.localStorage)return!1}catch(e){return!1}var r=e.localStorage[t];return null!=r&&"true"===String(r).toLowerCase()}t.exports=function(e,t){if(r("noDeprecation"))return e;var i=!1;return function(){if(!i){if(r("throwDeprecation"))throw new Error(t);r("traceDeprecation")?console.trace(t):console.warn(t),i=!0}return e.apply(this,arguments)}}}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],337:[function(e,t,r){t.exports=e("./readable").PassThrough},{"./readable":338}],338:[function(e,t,r){(r=t.exports=e("./lib/_stream_readable.js")).Stream=r,r.Readable=r,r.Writable=e("./lib/_stream_writable.js"),r.Duplex=e("./lib/_stream_duplex.js"),r.Transform=e("./lib/_stream_transform.js"),r.PassThrough=e("./lib/_stream_passthrough.js")},{"./lib/_stream_duplex.js":324,"./lib/_stream_passthrough.js":325,"./lib/_stream_readable.js":326,"./lib/_stream_transform.js":327,"./lib/_stream_writable.js":328}],339:[function(e,t,r){t.exports=e("./readable").Transform},{"./readable":338}],340:[function(e,t,r){t.exports=e("./lib/_stream_writable.js")},{"./lib/_stream_writable.js":328}],341:[function(e,t,r){t.exports=n;var i=e("events").EventEmitter;function n(){i.call(this)}e("inherits")(n,i),n.Readable=e("readable-stream/readable.js"),n.Writable=e("readable-stream/writable.js"),n.Duplex=e("readable-stream/duplex.js"),n.Transform=e("readable-stream/transform.js"),n.PassThrough=e("readable-stream/passthrough.js"),n.Stream=n,n.prototype.pipe=function(e,t){var r=this;function n(t){e.writable&&!1===e.write(t)&&r.pause&&r.pause()}function a(){r.readable&&r.resume&&r.resume()}r.on("data",n),e.on("drain",a),e._isStdio||t&&!1===t.end||(r.on("end",s),r.on("close",f));var o=!1;function s(){o||(o=!0,e.end())}function f(){o||(o=!0,"function"==typeof e.destroy&&e.destroy())}function c(e){if(u(),0===i.listenerCount(this,"error"))throw e}function u(){r.removeListener("data",n),e.removeListener("drain",a),r.removeListener("end",s),r.removeListener("close",f),r.removeListener("error",c),e.removeListener("error",c),r.removeListener("end",u),r.removeListener("close",u),e.removeListener("close",u)}return r.on("error",c),e.on("error",c),r.on("end",u),r.on("close",u),e.on("close",u),e.emit("pipe",r),e}},{events:319,inherits:320,"readable-stream/duplex.js":323,"readable-stream/passthrough.js":337,"readable-stream/readable.js":338,"readable-stream/transform.js":339,"readable-stream/writable.js":340}],342:[function(e,t,r){"use strict";var i=e("safe-buffer").Buffer,n=i.isEncoding||function(e){switch((e=""+e)&&e.toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":case"raw":return!0;default:return!1}};function a(e){var t;switch(this.encoding=function(e){var t=function(e){if(!e)return"utf8";for(var t;;)switch(e){case"utf8":case"utf-8":return"utf8";case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return"utf16le";case"latin1":case"binary":return"latin1";case"base64":case"ascii":case"hex":return e;default:if(t)return;e=(""+e).toLowerCase(),t=!0}}(e);if("string"!=typeof t&&(i.isEncoding===n||!n(e)))throw new Error("Unknown encoding: "+e);return t||e}(e),this.encoding){case"utf16le":this.text=f,this.end=c,t=4;break;case"utf8":this.fillLast=s,t=4;break;case"base64":this.text=u,this.end=h,t=3;break;default:return this.write=d,void(this.end=l)}this.lastNeed=0,this.lastTotal=0,this.lastChar=i.allocUnsafe(t)}function o(e){return e<=127?0:e>>5==6?2:e>>4==14?3:e>>3==30?4:e>>6==2?-1:-2}function s(e){var t=this.lastTotal-this.lastNeed,r=function(e,t,r){if(128!=(192&t[0]))return e.lastNeed=0,"�";if(e.lastNeed>1&&t.length>1){if(128!=(192&t[1]))return e.lastNeed=1,"�";if(e.lastNeed>2&&t.length>2&&128!=(192&t[2]))return e.lastNeed=2,"�"}}(this,e);return void 0!==r?r:this.lastNeed<=e.length?(e.copy(this.lastChar,t,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal)):(e.copy(this.lastChar,t,0,e.length),void(this.lastNeed-=e.length))}function f(e,t){if((e.length-t)%2==0){var r=e.toString("utf16le",t);if(r){var i=r.charCodeAt(r.length-1);if(i>=55296&&i<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1],r.slice(0,-1)}return r}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=e[e.length-1],e.toString("utf16le",t,e.length-1)}function c(e){var t=e&&e.length?this.write(e):"";if(this.lastNeed){var r=this.lastTotal-this.lastNeed;return t+this.lastChar.toString("utf16le",0,r)}return t}function u(e,t){var r=(e.length-t)%3;return 0===r?e.toString("base64",t):(this.lastNeed=3-r,this.lastTotal=3,1===r?this.lastChar[0]=e[e.length-1]:(this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1]),e.toString("base64",t,e.length-r))}function h(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+this.lastChar.toString("base64",0,3-this.lastNeed):t}function d(e){return e.toString(this.encoding)}function l(e){return e&&e.length?this.write(e):""}r.StringDecoder=a,a.prototype.write=function(e){if(0===e.length)return"";var t,r;if(this.lastNeed){if(void 0===(t=this.fillLast(e)))return"";r=this.lastNeed,this.lastNeed=0}else r=0;return r<e.length?t?t+this.text(e,r):this.text(e,r):t||""},a.prototype.end=function(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+"�":t},a.prototype.text=function(e,t){var r=function(e,t,r){var i=t.length-1;if(i<r)return 0;var n=o(t[i]);if(n>=0)return n>0&&(e.lastNeed=n-1),n;if(--i<r||-2===n)return 0;if((n=o(t[i]))>=0)return n>0&&(e.lastNeed=n-2),n;if(--i<r||-2===n)return 0;if((n=o(t[i]))>=0)return n>0&&(2===n?n=0:e.lastNeed=n-3),n;return 0}(this,e,t);if(!this.lastNeed)return e.toString("utf8",t);this.lastTotal=r;var i=e.length-(r-this.lastNeed);return e.copy(this.lastChar,0,i),e.toString("utf8",t,i)},a.prototype.fillLast=function(e){if(this.lastNeed<=e.length)return e.copy(this.lastChar,this.lastTotal-this.lastNeed,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);e.copy(this.lastChar,this.lastTotal-this.lastNeed,0,e.length),this.lastNeed-=e.length}},{"safe-buffer":343}],343:[function(e,t,r){arguments[4][72][0].apply(r,arguments)},{buffer:49,dup:72}],344:[function(e,t,r){(function(t,i){var n=e("process/browser.js").nextTick,a=Function.prototype.apply,o=Array.prototype.slice,s={},f=0;function c(e,t){this._id=e,this._clearFn=t}r.setTimeout=function(){return new c(a.call(setTimeout,window,arguments),clearTimeout)},r.setInterval=function(){return new c(a.call(setInterval,window,arguments),clearInterval)},r.clearTimeout=r.clearInterval=function(e){e.close()},c.prototype.unref=c.prototype.ref=function(){},c.prototype.close=function(){this._clearFn.call(window,this._id)},r.enroll=function(e,t){clearTimeout(e._idleTimeoutId),e._idleTimeout=t},r.unenroll=function(e){clearTimeout(e._idleTimeoutId),e._idleTimeout=-1},r._unrefActive=r.active=function(e){clearTimeout(e._idleTimeoutId);var t=e._idleTimeout;t>=0&&(e._idleTimeoutId=setTimeout(function(){e._onTimeout&&e._onTimeout()},t))},r.setImmediate="function"==typeof t?t:function(e){var t=f++,i=!(arguments.length<2)&&o.call(arguments,1);return s[t]=!0,n(function(){s[t]&&(i?e.apply(null,i):e.call(null),r.clearImmediate(t))}),t},r.clearImmediate="function"==typeof i?i:function(e){delete s[e]}}).call(this,e("timers").setImmediate,e("timers").clearImmediate)},{"process/browser.js":322,timers:344}],345:[function(require,module,exports){var indexOf=function(e,t){if(e.indexOf)return e.indexOf(t);for(var r=0;r<e.length;r++)if(e[r]===t)return r;return-1},Object_keys=function(e){if(Object.keys)return Object.keys(e);var t=[];for(var r in e)t.push(r);return t},forEach=function(e,t){if(e.forEach)return e.forEach(t);for(var r=0;r<e.length;r++)t(e[r],r,e)},defineProp=function(){try{return Object.defineProperty({},"_",{}),function(e,t,r){Object.defineProperty(e,t,{writable:!0,enumerable:!1,configurable:!0,value:r})}}catch(e){return function(e,t,r){e[t]=r}}}(),globals=["Array","Boolean","Date","Error","EvalError","Function","Infinity","JSON","Math","NaN","Number","Object","RangeError","ReferenceError","RegExp","String","SyntaxError","TypeError","URIError","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","eval","isFinite","isNaN","parseFloat","parseInt","undefined","unescape"];function Context(){}Context.prototype={};var Script=exports.Script=function(e){if(!(this instanceof Script))return new Script(e);this.code=e};Script.prototype.runInContext=function(e){if(!(e instanceof Context))throw new TypeError("needs a 'context' argument.");var t=document.createElement("iframe");t.style||(t.style={}),t.style.display="none",document.body.appendChild(t);var r=t.contentWindow,i=r.eval,n=r.execScript;!i&&n&&(n.call(r,"null"),i=r.eval),forEach(Object_keys(e),function(t){r[t]=e[t]}),forEach(globals,function(t){e[t]&&(r[t]=e[t])});var a=Object_keys(r),o=i.call(r,this.code);return forEach(Object_keys(r),function(t){(t in e||-1===indexOf(a,t))&&(e[t]=r[t])}),forEach(globals,function(t){t in e||defineProp(e,t,r[t])}),document.body.removeChild(t),o},Script.prototype.runInThisContext=function(){return eval(this.code)},Script.prototype.runInNewContext=function(e){var t=Script.createContext(e),r=this.runInContext(t);return e&&forEach(Object_keys(t),function(r){e[r]=t[r]}),r},forEach(Object_keys(Script.prototype),function(e){exports[e]=Script[e]=function(t){var r=Script(t);return r[e].apply(r,[].slice.call(arguments,1))}}),exports.isContext=function(e){return e instanceof Context},exports.createScript=function(e){return exports.Script(e)},exports.createContext=Script.createContext=function(e){var t=new Context;return"object"==typeof e&&forEach(Object_keys(e),function(r){t[r]=e[r]}),t}},{}]},{},[45])(45)});