(self.webpackChunkfrog=self.webpackChunkfrog||[]).push([[6035],{15192:(t,i,r)=>{"use strict";r.d(i,{A:()=>v});var n=1e6,e=1e6,h="[big.js] ",o=h+"Invalid ",s=o+"decimal places",u=o+"rounding mode",a=h+"Division by zero",l={},f=void 0,m=/^-?(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i;function d(t,i,r,n){var e=t.c;if(r===f&&(r=t.constructor.RM),0!==r&&1!==r&&2!==r&&3!==r)throw Error(u);if(i<1)n=3===r&&(n||!!e[0])||0===i&&(1===r&&e[0]>=5||2===r&&(e[0]>5||5===e[0]&&(n||e[1]!==f))),e.length=1,n?(t.e=t.e-i+1,e[0]=1):e[0]=t.e=0;else if(i=5||2===r&&(e[i]>5||5===e[i]&&(n||e[i+1]!==f||1&e[i-1]))||3===r&&(n||!!e[0]),e.length=i,n)for(;++e[--i]>9;)if(e[i]=0,0===i){++t.e,e.unshift(1);break}for(i=e.length;!e[--i];)e.pop()}return t}function p(t,i,r){var n=t.e,e=t.c.join(""),h=e.length;if(i)e=e.charAt(0)+(h>1?"."+e.slice(1):"")+(n<0?"e":"e+")+n;else if(n<0){for(;++n;)e="0"+e;e="0."+e}else if(n>0)if(++n>h)for(n-=h;n--;)e+="0";else n1&&(e=e.charAt(0)+"."+e.slice(1));return t.s<0&&r?"-"+e:e}l.abs=function(){var t=new this.constructor(this);return t.s=1,t},l.cmp=function(t){var i,r=this,n=r.c,e=(t=new r.constructor(t)).c,h=r.s,o=t.s,s=r.e,u=t.e;if(!n[0]||!e[0])return n[0]?h:e[0]?-o:0;if(h!=o)return h;if(i=h<0,s!=u)return s>u^i?1:-1;for(o=(s=n.length)<(u=e.length)?s:u,h=-1;++he[h]^i?1:-1;return s==u?0:s>u^i?1:-1},l.div=function(t){var i=this,r=i.constructor,e=i.c,h=(t=new r(t)).c,o=i.s==t.s?1:-1,u=r.DP;if(u!==~~u||u<0||u>n)throw Error(s);if(!h[0])throw Error(a);if(!e[0])return t.s=o,t.c=[t.e=0],t;var l,m,p,c,v,M=h.slice(),g=l=h.length,w=e.length,y=e.slice(0,l),b=y.length,_=t,k=_.c=[],A=0,E=u+(_.e=i.e-t.e)+1;for(_.s=o,o=E<0?0:E,M.unshift(0);b++b?1:-1;else for(v=-1,c=0;++vy[v]?1:-1;break}if(!(c<0))break;for(m=b==l?h:M;b;){if(y[--b]E&&d(_,E,r.RM,y[0]!==f),_},l.eq=function(t){return 0===this.cmp(t)},l.gt=function(t){return this.cmp(t)>0},l.gte=function(t){return this.cmp(t)>-1},l.lt=function(t){return this.cmp(t)<0},l.lte=function(t){return this.cmp(t)<1},l.minus=l.sub=function(t){var i,r,n,e,h=this,o=h.constructor,s=h.s,u=(t=new o(t)).s;if(s!=u)return t.s=-u,h.plus(t);var a=h.c.slice(),l=h.e,f=t.c,m=t.e;if(!a[0]||!f[0])return f[0]?t.s=-u:a[0]?t=new o(h):t.s=1,t;if(s=l-m){for((e=s<0)?(s=-s,n=a):(m=l,n=f),n.reverse(),u=s;u--;)n.push(0);n.reverse()}else for(r=((e=a.length0)for(;u--;)a[i++]=0;for(u=i;r>s;){if(a[--r]0?(u=o,n=a):(i=-i,n=s),n.reverse();i--;)n.push(0);n.reverse()}for(s.length-a.length<0&&(n=a,a=s,s=n),i=a.length,r=0;i;s[i]%=10)r=(s[--i]=s[i]+a[i]+r)/10|0;for(r&&(s.unshift(r),++u),i=s.length;0===s[--i];)s.pop();return t.c=s,t.e=u,t},l.pow=function(t){var i=this,r=new i.constructor("1"),n=r,h=t<0;if(t!==~~t||t<-1e6||t>e)throw Error(o+"exponent");for(h&&(t=-t);1&t&&(n=n.times(i)),t>>=1;)i=i.times(i);return h?r.div(n):n},l.prec=function(t,i){if(t!==~~t||t<1||t>n)throw Error(o+"precision");return d(new this.constructor(this),t,i)},l.round=function(t,i){if(t===f)t=0;else if(t!==~~t||t<-n||t>n)throw Error(s);return d(new this.constructor(this),t+this.e+1,i)},l.sqrt=function(){var t,i,r,n=this,e=n.constructor,o=n.s,s=n.e,u=new e("0.5");if(!n.c[0])return new e(n);if(o<0)throw Error(h+"No square root");0===(o=Math.sqrt(+p(n,!0,!0)))||o===1/0?((i=n.c.join("")).length+s&1||(i+="0"),s=((s+1)/2|0)-(s<0||1&s),t=new e(((o=Math.sqrt(i))==1/0?"5e":(o=o.toExponential()).slice(0,o.indexOf("e")+1))+s)):t=new e(o+""),s=t.e+(e.DP+=4);do{r=t,t=u.times(r.plus(n.div(r)))}while(r.c.slice(0,s).join("")!==t.c.slice(0,s).join(""));return d(t,(e.DP-=4)+t.e+1,e.RM)},l.times=l.mul=function(t){var i,r=this,n=r.constructor,e=r.c,h=(t=new n(t)).c,o=e.length,s=h.length,u=r.e,a=t.e;if(t.s=r.s==t.s?1:-1,!e[0]||!h[0])return t.c=[t.e=0],t;for(t.e=u+a,ou;)s=i[a]+h[u]*e[a-u-1]+s,i[a--]=s%10,s=s/10|0;i[a]=s}for(s?++t.e:i.shift(),u=i.length;!i[--u];)i.pop();return t.c=i,t},l.toExponential=function(t,i){var r=this,e=r.c[0];if(t!==f){if(t!==~~t||t<0||t>n)throw Error(s);for(r=d(new r.constructor(r),++t,i);r.c.lengthn)throw Error(s);for(t=t+(r=d(new r.constructor(r),t+r.e+1,i)).e+1;r.c.length=i.PE,!!t.c[0])},l.toNumber=function(){var t=+p(this,!0,!0);if(!0===this.constructor.strict&&!this.eq(t.toString()))throw Error(h+"Imprecise conversion");return t},l.toPrecision=function(t,i){var r=this,e=r.constructor,h=r.c[0];if(t!==f){if(t!==~~t||t<1||t>n)throw Error(o+"precision");for(r=d(new e(r),t,i);r.c.length=e.PE,!!h)},l.valueOf=function(){var t=this,i=t.constructor;if(!0===i.strict)throw Error(h+"valueOf disallowed");return p(t,t.e<=i.NE||t.e>=i.PE,!0)};var c=function t(){function i(r){var n=this;if(!(n instanceof i))return r===f?t():new i(r);if(r instanceof i)n.s=r.s,n.e=r.e,n.c=r.c.slice();else{if("string"!=typeof r){if(!0===i.strict&&"bigint"!=typeof r)throw TypeError(o+"value");r=0===r&&1/r<0?"-0":String(r)}!function(t,i){var r,n,e;if(!m.test(i))throw Error(o+"number");t.s="-"==i.charAt(0)?(i=i.slice(1),-1):1,(r=i.indexOf("."))>-1&&(i=i.replace(".",""));(n=i.search(/e/i))>0?(r<0&&(r=n),r+=+i.slice(n+1),i=i.substring(0,n)):r<0&&(r=i.length);for(e=i.length,n=0;n0&&"0"==i.charAt(--e););for(t.e=r-n-1,t.c=[],r=0;n<=e;)t.c[r++]=+i.charAt(n++)}}(n,r)}n.constructor=i}return i.prototype=l,i.DP=20,i.RM=1,i.NE=-7,i.PE=21,i.strict=false,i.roundDown=0,i.roundHalfUp=1,i.roundHalfEven=2,i.roundUp=3,i}();const v=c},39404:function(t,i,r){!function(t,i){"use strict";function n(t,i){if(!t)throw new Error(i||"Assertion failed")}function e(t,i){t.super_=i;var r=function(){};r.prototype=i.prototype,t.prototype=new r,t.prototype.constructor=t}function h(t,i,r){if(h.isBN(t))return t;this.negative=0,this.words=null,this.length=0,this.red=null,null!==t&&("le"!==i&&"be"!==i||(r=i,i=10),this._init(t||0,i||10,r||"be"))}var o;"object"==typeof t?t.exports=h:i.BN=h,h.BN=h,h.wordSize=26;try{o="undefined"!=typeof window&&void 0!==window.Buffer?window.Buffer:r(47790).Buffer}catch(t){}function s(t,i){var r=t.charCodeAt(i);return r>=48&&r<=57?r-48:r>=65&&r<=70?r-55:r>=97&&r<=102?r-87:void n(!1,"Invalid character in "+t)}function u(t,i,r){var n=s(t,r);return r-1>=i&&(n|=s(t,r-1)<<4),n}function a(t,i,r,e){for(var h=0,o=0,s=Math.min(t.length,r),u=i;u=49?a-49+10:a>=17?a-17+10:a,n(a>=0&&o0?t:i},h.min=function(t,i){return t.cmp(i)<0?t:i},h.prototype._init=function(t,i,r){if("number"==typeof t)return this._initNumber(t,i,r);if("object"==typeof t)return this._initArray(t,i,r);"hex"===i&&(i=16),n(i===(0|i)&&i>=2&&i<=36);var e=0;"-"===(t=t.toString().replace(/\s+/g,""))[0]&&(e++,this.negative=1),e=0;e-=3)o=t[e]|t[e-1]<<8|t[e-2]<<16,this.words[h]|=o<>>26-s&67108863,(s+=24)>=26&&(s-=26,h++);else if("le"===r)for(e=0,h=0;e>>26-s&67108863,(s+=24)>=26&&(s-=26,h++);return this._strip()},h.prototype._parseHex=function(t,i,r){this.length=Math.ceil((t.length-i)/6),this.words=new Array(this.length);for(var n=0;n=i;n-=2)e=u(t,i,n)<=18?(h-=18,o+=1,this.words[o]|=e>>>26):h+=8;else for(n=(t.length-i)%2==0?i+1:i;n=18?(h-=18,o+=1,this.words[o]|=e>>>26):h+=8;this._strip()},h.prototype._parseBase=function(t,i,r){this.words=[0],this.length=1;for(var n=0,e=1;e<=67108863;e*=i)n++;n--,e=e/i|0;for(var h=t.length-r,o=h%n,s=Math.min(h,h-o)+r,u=0,l=r;l1&&0===this.words[this.length-1];)this.length--;return this._normSign()},h.prototype._normSign=function(){return 1===this.length&&0===this.words[0]&&(this.negative=0),this},"undefined"!=typeof Symbol&&"function"==typeof Symbol.for)try{h.prototype[Symbol.for("nodejs.util.inspect.custom")]=f}catch(t){h.prototype.inspect=f}else h.prototype.inspect=f;function f(){return(this.red?""}var m=["","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"],d=[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],p=[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];h.prototype.toString=function(t,i){var r;if(i=0|i||1,16===(t=t||10)||"hex"===t){r="";for(var e=0,h=0,o=0;o>>24-e&16777215,(e+=2)>=26&&(e-=26,o--),r=0!==h||o!==this.length-1?m[6-u.length]+u+r:u+r}for(0!==h&&(r=h.toString(16)+r);r.length%i!=0;)r="0"+r;return 0!==this.negative&&(r="-"+r),r}if(t===(0|t)&&t>=2&&t<=36){var a=d[t],l=p[t];r="";var f=this.clone();for(f.negative=0;!f.isZero();){var c=f.modrn(l).toString(t);r=(f=f.idivn(l)).isZero()?c+r:m[a-c.length]+c+r}for(this.isZero()&&(r="0"+r);r.length%i!=0;)r="0"+r;return 0!==this.negative&&(r="-"+r),r}n(!1,"Base should be between 2 and 36")},h.prototype.toNumber=function(){var t=this.words[0];return 2===this.length?t+=67108864*this.words[1]:3===this.length&&1===this.words[2]?t+=4503599627370496+67108864*this.words[1]:this.length>2&&n(!1,"Number can only safely store up to 53 bits"),0!==this.negative?-t:t},h.prototype.toJSON=function(){return this.toString(16,2)},o&&(h.prototype.toBuffer=function(t,i){return this.toArrayLike(o,t,i)}),h.prototype.toArray=function(t,i){return this.toArrayLike(Array,t,i)};function c(t,i,r){r.negative=i.negative^t.negative;var n=t.length+i.length|0;r.length=n,n=n-1|0;var e=0|t.words[0],h=0|i.words[0],o=e*h,s=67108863&o,u=o/67108864|0;r.words[0]=s;for(var a=1;a>>26,f=67108863&u,m=Math.min(a,i.length-1),d=Math.max(0,a-t.length+1);d<=m;d++){var p=a-d|0;l+=(o=(e=0|t.words[p])*(h=0|i.words[d])+f)/67108864|0,f=67108863&o}r.words[a]=0|f,u=0|l}return 0!==u?r.words[a]=0|u:r.length--,r._strip()}h.prototype.toArrayLike=function(t,i,r){this._strip();var e=this.byteLength(),h=r||Math.max(1,e);n(e<=h,"byte array longer than desired length"),n(h>0,"Requested array length <= 0");var o=function(t,i){return t.allocUnsafe?t.allocUnsafe(i):new t(i)}(t,h);return this["_toArrayLike"+("le"===i?"LE":"BE")](o,e),o},h.prototype._toArrayLikeLE=function(t,i){for(var r=0,n=0,e=0,h=0;e>8&255),r>16&255),6===h?(r>24&255),n=0,h=0):(n=o>>>24,h+=2)}if(r=0&&(t[r--]=o>>8&255),r>=0&&(t[r--]=o>>16&255),6===h?(r>=0&&(t[r--]=o>>24&255),n=0,h=0):(n=o>>>24,h+=2)}if(r>=0)for(t[r--]=n;r>=0;)t[r--]=0},Math.clz32?h.prototype._countBits=function(t){return 32-Math.clz32(t)}:h.prototype._countBits=function(t){var i=t,r=0;return i>=4096&&(r+=13,i>>>=13),i>=64&&(r+=7,i>>>=7),i>=8&&(r+=4,i>>>=4),i>=2&&(r+=2,i>>>=2),r+i},h.prototype._zeroBits=function(t){if(0===t)return 26;var i=t,r=0;return 8191&i||(r+=13,i>>>=13),127&i||(r+=7,i>>>=7),15&i||(r+=4,i>>>=4),3&i||(r+=2,i>>>=2),1&i||r++,r},h.prototype.bitLength=function(){var t=this.words[this.length-1],i=this._countBits(t);return 26*(this.length-1)+i},h.prototype.zeroBits=function(){if(this.isZero())return 0;for(var t=0,i=0;it.length?this.clone().ior(t):t.clone().ior(this)},h.prototype.uor=function(t){return this.length>t.length?this.clone().iuor(t):t.clone().iuor(this)},h.prototype.iuand=function(t){var i;i=this.length>t.length?t:this;for(var r=0;rt.length?this.clone().iand(t):t.clone().iand(this)},h.prototype.uand=function(t){return this.length>t.length?this.clone().iuand(t):t.clone().iuand(this)},h.prototype.iuxor=function(t){var i,r;this.length>t.length?(i=this,r=t):(i=t,r=this);for(var n=0;nt.length?this.clone().ixor(t):t.clone().ixor(this)},h.prototype.uxor=function(t){return this.length>t.length?this.clone().iuxor(t):t.clone().iuxor(this)},h.prototype.inotn=function(t){n("number"==typeof t&&t>=0);var i=0|Math.ceil(t/26),r=t%26;this._expand(i),r>0&&i--;for(var e=0;e0&&(this.words[e]=~this.words[e]&67108863>>26-r),this._strip()},h.prototype.notn=function(t){return this.clone().inotn(t)},h.prototype.setn=function(t,i){n("number"==typeof t&&t>=0);var r=t/26|0,e=t%26;return this._expand(r+1),this.words[r]=i?this.words[r]|1<t.length?(r=this,n=t):(r=t,n=this);for(var e=0,h=0;h>>26;for(;0!==e&&h>>26;if(this.length=r.length,0!==e)this.words[this.length]=e,this.length++;else if(r!==this)for(;ht.length?this.clone().iadd(t):t.clone().iadd(this)},h.prototype.isub=function(t){if(0!==t.negative){t.negative=0;var i=this.iadd(t);return t.negative=1,i._normSign()}if(0!==this.negative)return this.negative=0,this.iadd(t),this.negative=1,this._normSign();var r,n,e=this.cmp(t);if(0===e)return this.negative=0,this.length=1,this.words[0]=0,this;e>0?(r=this,n=t):(r=t,n=this);for(var h=0,o=0;o>26,this.words[o]=67108863&i;for(;0!==h&&o>26,this.words[o]=67108863&i;if(0===h&&o>>13,d=0|o[1],p=8191&d,c=d>>>13,v=0|o[2],M=8191&v,g=v>>>13,w=0|o[3],y=8191&w,b=w>>>13,_=0|o[4],k=8191&_,A=_>>>13,E=0|o[5],S=8191&E,x=E>>>13,R=0|o[6],q=8191&R,B=R>>>13,N=0|o[7],Z=8191&N,L=N>>>13,I=0|o[8],P=8191&I,j=I>>>13,O=0|o[9],z=8191&O,D=O>>>13,T=0|s[0],U=8191&T,C=T>>>13,F=0|s[1],H=8191&F,K=F>>>13,J=0|s[2],$=8191&J,G=J>>>13,Q=0|s[3],V=8191&Q,W=Q>>>13,X=0|s[4],Y=8191&X,tt=X>>>13,it=0|s[5],rt=8191&it,nt=it>>>13,et=0|s[6],ht=8191&et,ot=et>>>13,st=0|s[7],ut=8191&st,at=st>>>13,lt=0|s[8],ft=8191<,mt=lt>>>13,dt=0|s[9],pt=8191&dt,ct=dt>>>13;r.negative=t.negative^i.negative,r.length=19;var vt=(a+(n=Math.imul(f,U))|0)+((8191&(e=(e=Math.imul(f,C))+Math.imul(m,U)|0))<<13)|0;a=((h=Math.imul(m,C))+(e>>>13)|0)+(vt>>>26)|0,vt&=67108863,n=Math.imul(p,U),e=(e=Math.imul(p,C))+Math.imul(c,U)|0,h=Math.imul(c,C);var Mt=(a+(n=n+Math.imul(f,H)|0)|0)+((8191&(e=(e=e+Math.imul(f,K)|0)+Math.imul(m,H)|0))<<13)|0;a=((h=h+Math.imul(m,K)|0)+(e>>>13)|0)+(Mt>>>26)|0,Mt&=67108863,n=Math.imul(M,U),e=(e=Math.imul(M,C))+Math.imul(g,U)|0,h=Math.imul(g,C),n=n+Math.imul(p,H)|0,e=(e=e+Math.imul(p,K)|0)+Math.imul(c,H)|0,h=h+Math.imul(c,K)|0;var gt=(a+(n=n+Math.imul(f,$)|0)|0)+((8191&(e=(e=e+Math.imul(f,G)|0)+Math.imul(m,$)|0))<<13)|0;a=((h=h+Math.imul(m,G)|0)+(e>>>13)|0)+(gt>>>26)|0,gt&=67108863,n=Math.imul(y,U),e=(e=Math.imul(y,C))+Math.imul(b,U)|0,h=Math.imul(b,C),n=n+Math.imul(M,H)|0,e=(e=e+Math.imul(M,K)|0)+Math.imul(g,H)|0,h=h+Math.imul(g,K)|0,n=n+Math.imul(p,$)|0,e=(e=e+Math.imul(p,G)|0)+Math.imul(c,$)|0,h=h+Math.imul(c,G)|0;var wt=(a+(n=n+Math.imul(f,V)|0)|0)+((8191&(e=(e=e+Math.imul(f,W)|0)+Math.imul(m,V)|0))<<13)|0;a=((h=h+Math.imul(m,W)|0)+(e>>>13)|0)+(wt>>>26)|0,wt&=67108863,n=Math.imul(k,U),e=(e=Math.imul(k,C))+Math.imul(A,U)|0,h=Math.imul(A,C),n=n+Math.imul(y,H)|0,e=(e=e+Math.imul(y,K)|0)+Math.imul(b,H)|0,h=h+Math.imul(b,K)|0,n=n+Math.imul(M,$)|0,e=(e=e+Math.imul(M,G)|0)+Math.imul(g,$)|0,h=h+Math.imul(g,G)|0,n=n+Math.imul(p,V)|0,e=(e=e+Math.imul(p,W)|0)+Math.imul(c,V)|0,h=h+Math.imul(c,W)|0;var yt=(a+(n=n+Math.imul(f,Y)|0)|0)+((8191&(e=(e=e+Math.imul(f,tt)|0)+Math.imul(m,Y)|0))<<13)|0;a=((h=h+Math.imul(m,tt)|0)+(e>>>13)|0)+(yt>>>26)|0,yt&=67108863,n=Math.imul(S,U),e=(e=Math.imul(S,C))+Math.imul(x,U)|0,h=Math.imul(x,C),n=n+Math.imul(k,H)|0,e=(e=e+Math.imul(k,K)|0)+Math.imul(A,H)|0,h=h+Math.imul(A,K)|0,n=n+Math.imul(y,$)|0,e=(e=e+Math.imul(y,G)|0)+Math.imul(b,$)|0,h=h+Math.imul(b,G)|0,n=n+Math.imul(M,V)|0,e=(e=e+Math.imul(M,W)|0)+Math.imul(g,V)|0,h=h+Math.imul(g,W)|0,n=n+Math.imul(p,Y)|0,e=(e=e+Math.imul(p,tt)|0)+Math.imul(c,Y)|0,h=h+Math.imul(c,tt)|0;var bt=(a+(n=n+Math.imul(f,rt)|0)|0)+((8191&(e=(e=e+Math.imul(f,nt)|0)+Math.imul(m,rt)|0))<<13)|0;a=((h=h+Math.imul(m,nt)|0)+(e>>>13)|0)+(bt>>>26)|0,bt&=67108863,n=Math.imul(q,U),e=(e=Math.imul(q,C))+Math.imul(B,U)|0,h=Math.imul(B,C),n=n+Math.imul(S,H)|0,e=(e=e+Math.imul(S,K)|0)+Math.imul(x,H)|0,h=h+Math.imul(x,K)|0,n=n+Math.imul(k,$)|0,e=(e=e+Math.imul(k,G)|0)+Math.imul(A,$)|0,h=h+Math.imul(A,G)|0,n=n+Math.imul(y,V)|0,e=(e=e+Math.imul(y,W)|0)+Math.imul(b,V)|0,h=h+Math.imul(b,W)|0,n=n+Math.imul(M,Y)|0,e=(e=e+Math.imul(M,tt)|0)+Math.imul(g,Y)|0,h=h+Math.imul(g,tt)|0,n=n+Math.imul(p,rt)|0,e=(e=e+Math.imul(p,nt)|0)+Math.imul(c,rt)|0,h=h+Math.imul(c,nt)|0;var _t=(a+(n=n+Math.imul(f,ht)|0)|0)+((8191&(e=(e=e+Math.imul(f,ot)|0)+Math.imul(m,ht)|0))<<13)|0;a=((h=h+Math.imul(m,ot)|0)+(e>>>13)|0)+(_t>>>26)|0,_t&=67108863,n=Math.imul(Z,U),e=(e=Math.imul(Z,C))+Math.imul(L,U)|0,h=Math.imul(L,C),n=n+Math.imul(q,H)|0,e=(e=e+Math.imul(q,K)|0)+Math.imul(B,H)|0,h=h+Math.imul(B,K)|0,n=n+Math.imul(S,$)|0,e=(e=e+Math.imul(S,G)|0)+Math.imul(x,$)|0,h=h+Math.imul(x,G)|0,n=n+Math.imul(k,V)|0,e=(e=e+Math.imul(k,W)|0)+Math.imul(A,V)|0,h=h+Math.imul(A,W)|0,n=n+Math.imul(y,Y)|0,e=(e=e+Math.imul(y,tt)|0)+Math.imul(b,Y)|0,h=h+Math.imul(b,tt)|0,n=n+Math.imul(M,rt)|0,e=(e=e+Math.imul(M,nt)|0)+Math.imul(g,rt)|0,h=h+Math.imul(g,nt)|0,n=n+Math.imul(p,ht)|0,e=(e=e+Math.imul(p,ot)|0)+Math.imul(c,ht)|0,h=h+Math.imul(c,ot)|0;var kt=(a+(n=n+Math.imul(f,ut)|0)|0)+((8191&(e=(e=e+Math.imul(f,at)|0)+Math.imul(m,ut)|0))<<13)|0;a=((h=h+Math.imul(m,at)|0)+(e>>>13)|0)+(kt>>>26)|0,kt&=67108863,n=Math.imul(P,U),e=(e=Math.imul(P,C))+Math.imul(j,U)|0,h=Math.imul(j,C),n=n+Math.imul(Z,H)|0,e=(e=e+Math.imul(Z,K)|0)+Math.imul(L,H)|0,h=h+Math.imul(L,K)|0,n=n+Math.imul(q,$)|0,e=(e=e+Math.imul(q,G)|0)+Math.imul(B,$)|0,h=h+Math.imul(B,G)|0,n=n+Math.imul(S,V)|0,e=(e=e+Math.imul(S,W)|0)+Math.imul(x,V)|0,h=h+Math.imul(x,W)|0,n=n+Math.imul(k,Y)|0,e=(e=e+Math.imul(k,tt)|0)+Math.imul(A,Y)|0,h=h+Math.imul(A,tt)|0,n=n+Math.imul(y,rt)|0,e=(e=e+Math.imul(y,nt)|0)+Math.imul(b,rt)|0,h=h+Math.imul(b,nt)|0,n=n+Math.imul(M,ht)|0,e=(e=e+Math.imul(M,ot)|0)+Math.imul(g,ht)|0,h=h+Math.imul(g,ot)|0,n=n+Math.imul(p,ut)|0,e=(e=e+Math.imul(p,at)|0)+Math.imul(c,ut)|0,h=h+Math.imul(c,at)|0;var At=(a+(n=n+Math.imul(f,ft)|0)|0)+((8191&(e=(e=e+Math.imul(f,mt)|0)+Math.imul(m,ft)|0))<<13)|0;a=((h=h+Math.imul(m,mt)|0)+(e>>>13)|0)+(At>>>26)|0,At&=67108863,n=Math.imul(z,U),e=(e=Math.imul(z,C))+Math.imul(D,U)|0,h=Math.imul(D,C),n=n+Math.imul(P,H)|0,e=(e=e+Math.imul(P,K)|0)+Math.imul(j,H)|0,h=h+Math.imul(j,K)|0,n=n+Math.imul(Z,$)|0,e=(e=e+Math.imul(Z,G)|0)+Math.imul(L,$)|0,h=h+Math.imul(L,G)|0,n=n+Math.imul(q,V)|0,e=(e=e+Math.imul(q,W)|0)+Math.imul(B,V)|0,h=h+Math.imul(B,W)|0,n=n+Math.imul(S,Y)|0,e=(e=e+Math.imul(S,tt)|0)+Math.imul(x,Y)|0,h=h+Math.imul(x,tt)|0,n=n+Math.imul(k,rt)|0,e=(e=e+Math.imul(k,nt)|0)+Math.imul(A,rt)|0,h=h+Math.imul(A,nt)|0,n=n+Math.imul(y,ht)|0,e=(e=e+Math.imul(y,ot)|0)+Math.imul(b,ht)|0,h=h+Math.imul(b,ot)|0,n=n+Math.imul(M,ut)|0,e=(e=e+Math.imul(M,at)|0)+Math.imul(g,ut)|0,h=h+Math.imul(g,at)|0,n=n+Math.imul(p,ft)|0,e=(e=e+Math.imul(p,mt)|0)+Math.imul(c,ft)|0,h=h+Math.imul(c,mt)|0;var Et=(a+(n=n+Math.imul(f,pt)|0)|0)+((8191&(e=(e=e+Math.imul(f,ct)|0)+Math.imul(m,pt)|0))<<13)|0;a=((h=h+Math.imul(m,ct)|0)+(e>>>13)|0)+(Et>>>26)|0,Et&=67108863,n=Math.imul(z,H),e=(e=Math.imul(z,K))+Math.imul(D,H)|0,h=Math.imul(D,K),n=n+Math.imul(P,$)|0,e=(e=e+Math.imul(P,G)|0)+Math.imul(j,$)|0,h=h+Math.imul(j,G)|0,n=n+Math.imul(Z,V)|0,e=(e=e+Math.imul(Z,W)|0)+Math.imul(L,V)|0,h=h+Math.imul(L,W)|0,n=n+Math.imul(q,Y)|0,e=(e=e+Math.imul(q,tt)|0)+Math.imul(B,Y)|0,h=h+Math.imul(B,tt)|0,n=n+Math.imul(S,rt)|0,e=(e=e+Math.imul(S,nt)|0)+Math.imul(x,rt)|0,h=h+Math.imul(x,nt)|0,n=n+Math.imul(k,ht)|0,e=(e=e+Math.imul(k,ot)|0)+Math.imul(A,ht)|0,h=h+Math.imul(A,ot)|0,n=n+Math.imul(y,ut)|0,e=(e=e+Math.imul(y,at)|0)+Math.imul(b,ut)|0,h=h+Math.imul(b,at)|0,n=n+Math.imul(M,ft)|0,e=(e=e+Math.imul(M,mt)|0)+Math.imul(g,ft)|0,h=h+Math.imul(g,mt)|0;var St=(a+(n=n+Math.imul(p,pt)|0)|0)+((8191&(e=(e=e+Math.imul(p,ct)|0)+Math.imul(c,pt)|0))<<13)|0;a=((h=h+Math.imul(c,ct)|0)+(e>>>13)|0)+(St>>>26)|0,St&=67108863,n=Math.imul(z,$),e=(e=Math.imul(z,G))+Math.imul(D,$)|0,h=Math.imul(D,G),n=n+Math.imul(P,V)|0,e=(e=e+Math.imul(P,W)|0)+Math.imul(j,V)|0,h=h+Math.imul(j,W)|0,n=n+Math.imul(Z,Y)|0,e=(e=e+Math.imul(Z,tt)|0)+Math.imul(L,Y)|0,h=h+Math.imul(L,tt)|0,n=n+Math.imul(q,rt)|0,e=(e=e+Math.imul(q,nt)|0)+Math.imul(B,rt)|0,h=h+Math.imul(B,nt)|0,n=n+Math.imul(S,ht)|0,e=(e=e+Math.imul(S,ot)|0)+Math.imul(x,ht)|0,h=h+Math.imul(x,ot)|0,n=n+Math.imul(k,ut)|0,e=(e=e+Math.imul(k,at)|0)+Math.imul(A,ut)|0,h=h+Math.imul(A,at)|0,n=n+Math.imul(y,ft)|0,e=(e=e+Math.imul(y,mt)|0)+Math.imul(b,ft)|0,h=h+Math.imul(b,mt)|0;var xt=(a+(n=n+Math.imul(M,pt)|0)|0)+((8191&(e=(e=e+Math.imul(M,ct)|0)+Math.imul(g,pt)|0))<<13)|0;a=((h=h+Math.imul(g,ct)|0)+(e>>>13)|0)+(xt>>>26)|0,xt&=67108863,n=Math.imul(z,V),e=(e=Math.imul(z,W))+Math.imul(D,V)|0,h=Math.imul(D,W),n=n+Math.imul(P,Y)|0,e=(e=e+Math.imul(P,tt)|0)+Math.imul(j,Y)|0,h=h+Math.imul(j,tt)|0,n=n+Math.imul(Z,rt)|0,e=(e=e+Math.imul(Z,nt)|0)+Math.imul(L,rt)|0,h=h+Math.imul(L,nt)|0,n=n+Math.imul(q,ht)|0,e=(e=e+Math.imul(q,ot)|0)+Math.imul(B,ht)|0,h=h+Math.imul(B,ot)|0,n=n+Math.imul(S,ut)|0,e=(e=e+Math.imul(S,at)|0)+Math.imul(x,ut)|0,h=h+Math.imul(x,at)|0,n=n+Math.imul(k,ft)|0,e=(e=e+Math.imul(k,mt)|0)+Math.imul(A,ft)|0,h=h+Math.imul(A,mt)|0;var Rt=(a+(n=n+Math.imul(y,pt)|0)|0)+((8191&(e=(e=e+Math.imul(y,ct)|0)+Math.imul(b,pt)|0))<<13)|0;a=((h=h+Math.imul(b,ct)|0)+(e>>>13)|0)+(Rt>>>26)|0,Rt&=67108863,n=Math.imul(z,Y),e=(e=Math.imul(z,tt))+Math.imul(D,Y)|0,h=Math.imul(D,tt),n=n+Math.imul(P,rt)|0,e=(e=e+Math.imul(P,nt)|0)+Math.imul(j,rt)|0,h=h+Math.imul(j,nt)|0,n=n+Math.imul(Z,ht)|0,e=(e=e+Math.imul(Z,ot)|0)+Math.imul(L,ht)|0,h=h+Math.imul(L,ot)|0,n=n+Math.imul(q,ut)|0,e=(e=e+Math.imul(q,at)|0)+Math.imul(B,ut)|0,h=h+Math.imul(B,at)|0,n=n+Math.imul(S,ft)|0,e=(e=e+Math.imul(S,mt)|0)+Math.imul(x,ft)|0,h=h+Math.imul(x,mt)|0;var qt=(a+(n=n+Math.imul(k,pt)|0)|0)+((8191&(e=(e=e+Math.imul(k,ct)|0)+Math.imul(A,pt)|0))<<13)|0;a=((h=h+Math.imul(A,ct)|0)+(e>>>13)|0)+(qt>>>26)|0,qt&=67108863,n=Math.imul(z,rt),e=(e=Math.imul(z,nt))+Math.imul(D,rt)|0,h=Math.imul(D,nt),n=n+Math.imul(P,ht)|0,e=(e=e+Math.imul(P,ot)|0)+Math.imul(j,ht)|0,h=h+Math.imul(j,ot)|0,n=n+Math.imul(Z,ut)|0,e=(e=e+Math.imul(Z,at)|0)+Math.imul(L,ut)|0,h=h+Math.imul(L,at)|0,n=n+Math.imul(q,ft)|0,e=(e=e+Math.imul(q,mt)|0)+Math.imul(B,ft)|0,h=h+Math.imul(B,mt)|0;var Bt=(a+(n=n+Math.imul(S,pt)|0)|0)+((8191&(e=(e=e+Math.imul(S,ct)|0)+Math.imul(x,pt)|0))<<13)|0;a=((h=h+Math.imul(x,ct)|0)+(e>>>13)|0)+(Bt>>>26)|0,Bt&=67108863,n=Math.imul(z,ht),e=(e=Math.imul(z,ot))+Math.imul(D,ht)|0,h=Math.imul(D,ot),n=n+Math.imul(P,ut)|0,e=(e=e+Math.imul(P,at)|0)+Math.imul(j,ut)|0,h=h+Math.imul(j,at)|0,n=n+Math.imul(Z,ft)|0,e=(e=e+Math.imul(Z,mt)|0)+Math.imul(L,ft)|0,h=h+Math.imul(L,mt)|0;var Nt=(a+(n=n+Math.imul(q,pt)|0)|0)+((8191&(e=(e=e+Math.imul(q,ct)|0)+Math.imul(B,pt)|0))<<13)|0;a=((h=h+Math.imul(B,ct)|0)+(e>>>13)|0)+(Nt>>>26)|0,Nt&=67108863,n=Math.imul(z,ut),e=(e=Math.imul(z,at))+Math.imul(D,ut)|0,h=Math.imul(D,at),n=n+Math.imul(P,ft)|0,e=(e=e+Math.imul(P,mt)|0)+Math.imul(j,ft)|0,h=h+Math.imul(j,mt)|0;var Zt=(a+(n=n+Math.imul(Z,pt)|0)|0)+((8191&(e=(e=e+Math.imul(Z,ct)|0)+Math.imul(L,pt)|0))<<13)|0;a=((h=h+Math.imul(L,ct)|0)+(e>>>13)|0)+(Zt>>>26)|0,Zt&=67108863,n=Math.imul(z,ft),e=(e=Math.imul(z,mt))+Math.imul(D,ft)|0,h=Math.imul(D,mt);var Lt=(a+(n=n+Math.imul(P,pt)|0)|0)+((8191&(e=(e=e+Math.imul(P,ct)|0)+Math.imul(j,pt)|0))<<13)|0;a=((h=h+Math.imul(j,ct)|0)+(e>>>13)|0)+(Lt>>>26)|0,Lt&=67108863;var It=(a+(n=Math.imul(z,pt))|0)+((8191&(e=(e=Math.imul(z,ct))+Math.imul(D,pt)|0))<<13)|0;return a=((h=Math.imul(D,ct))+(e>>>13)|0)+(It>>>26)|0,It&=67108863,u[0]=vt,u[1]=Mt,u[2]=gt,u[3]=wt,u[4]=yt,u[5]=bt,u[6]=_t,u[7]=kt,u[8]=At,u[9]=Et,u[10]=St,u[11]=xt,u[12]=Rt,u[13]=qt,u[14]=Bt,u[15]=Nt,u[16]=Zt,u[17]=Lt,u[18]=It,0!==a&&(u[19]=a,r.length++),r};function M(t,i,r){r.negative=i.negative^t.negative,r.length=t.length+i.length;for(var n=0,e=0,h=0;h>>26)|0)>>>26,o&=67108863}r.words[h]=s,n=o,o=e}return 0!==n?r.words[h]=n:r.length--,r._strip()}function g(t,i,r){return M(t,i,r)}function w(t,i){this.x=t,this.y=i}Math.imul||(v=c),h.prototype.mulTo=function(t,i){var r=this.length+t.length;return 10===this.length&&10===t.length?v(this,t,i):r<63?c(this,t,i):r<1024?M(this,t,i):g(this,t,i)},w.prototype.makeRBT=function(t){for(var i=new Array(t),r=h.prototype._countBits(t)-1,n=0;n>=1;return n},w.prototype.permute=function(t,i,r,n,e,h){for(var o=0;o>>=1)e++;return 1<>>=13,r[2*o+1]=8191&h,h>>>=13;for(o=2*i;o>=26,r+=h/67108864|0,r+=o>>>26,this.words[e]=67108863&o}return 0!==r&&(this.words[e]=r,this.length++),i?this.ineg():this},h.prototype.muln=function(t){return this.clone().imuln(t)},h.prototype.sqr=function(){return this.mul(this)},h.prototype.isqr=function(){return this.imul(this.clone())},h.prototype.pow=function(t){var i=function(t){for(var i=new Array(t.bitLength()),r=0;r>>e&1}return i}(t);if(0===i.length)return new h(1);for(var r=this,n=0;n=0);var i,r=t%26,e=(t-r)/26,h=67108863>>>26-r<<26-r;if(0!==r){var o=0;for(i=0;i>>26-r}o&&(this.words[i]=o,this.length++)}if(0!==e){for(i=this.length-1;i>=0;i--)this.words[i+e]=this.words[i];for(i=0;i=0),e=i?(i-i%26)/26:0;var h=t%26,o=Math.min((t-h)/26,this.length),s=67108863^67108863>>>h<o)for(this.length-=o,a=0;a=0&&(0!==l||a>=e);a--){var f=0|this.words[a];this.words[a]=l<<26-h|f>>>h,l=f&s}return u&&0!==l&&(u.words[u.length++]=l),0===this.length&&(this.words[0]=0,this.length=1),this._strip()},h.prototype.ishrn=function(t,i,r){return n(0===this.negative),this.iushrn(t,i,r)},h.prototype.shln=function(t){return this.clone().ishln(t)},h.prototype.ushln=function(t){return this.clone().iushln(t)},h.prototype.shrn=function(t){return this.clone().ishrn(t)},h.prototype.ushrn=function(t){return this.clone().iushrn(t)},h.prototype.testn=function(t){n("number"==typeof t&&t>=0);var i=t%26,r=(t-i)/26,e=1<=0);var i=t%26,r=(t-i)/26;if(n(0===this.negative,"imaskn works only with positive numbers"),this.length<=r)return this;if(0!==i&&r++,this.length=Math.min(r,this.length),0!==i){var e=67108863^67108863>>>i<=67108864;i++)this.words[i]-=67108864,i===this.length-1?this.words[i+1]=1:this.words[i+1]++;return this.length=Math.max(this.length,i+1),this},h.prototype.isubn=function(t){if(n("number"==typeof t),n(t<67108864),t<0)return this.iaddn(-t);if(0!==this.negative)return this.negative=0,this.iaddn(t),this.negative=1,this;if(this.words[0]-=t,1===this.length&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var i=0;i>26)-(u/67108864|0),this.words[e+r]=67108863&h}for(;e>26,this.words[e+r]=67108863&h;if(0===s)return this._strip();for(n(-1===s),s=0,e=0;e>26,this.words[e]=67108863&h;return this.negative=1,this._strip()},h.prototype._wordDiv=function(t,i){var r=(this.length,t.length),n=this.clone(),e=t,o=0|e.words[e.length-1];0!==(r=26-this._countBits(o))&&(e=e.ushln(r),n.iushln(r),o=0|e.words[e.length-1]);var s,u=n.length-e.length;if("mod"!==i){(s=new h(null)).length=u+1,s.words=new Array(s.length);for(var a=0;a=0;f--){var m=67108864*(0|n.words[e.length+f])+(0|n.words[e.length+f-1]);for(m=Math.min(m/o|0,67108863),n._ishlnsubmul(e,m,f);0!==n.negative;)m--,n.negative=0,n._ishlnsubmul(e,1,f),n.isZero()||(n.negative^=1);s&&(s.words[f]=m)}return s&&s._strip(),n._strip(),"div"!==i&&0!==r&&n.iushrn(r),{div:s||null,mod:n}},h.prototype.divmod=function(t,i,r){return n(!t.isZero()),this.isZero()?{div:new h(0),mod:new h(0)}:0!==this.negative&&0===t.negative?(s=this.neg().divmod(t,i),"mod"!==i&&(e=s.div.neg()),"div"!==i&&(o=s.mod.neg(),r&&0!==o.negative&&o.iadd(t)),{div:e,mod:o}):0===this.negative&&0!==t.negative?(s=this.divmod(t.neg(),i),"mod"!==i&&(e=s.div.neg()),{div:e,mod:s.mod}):this.negative&t.negative?(s=this.neg().divmod(t.neg(),i),"div"!==i&&(o=s.mod.neg(),r&&0!==o.negative&&o.isub(t)),{div:s.div,mod:o}):t.length>this.length||this.cmp(t)<0?{div:new h(0),mod:this}:1===t.length?"div"===i?{div:this.divn(t.words[0]),mod:null}:"mod"===i?{div:null,mod:new h(this.modrn(t.words[0]))}:{div:this.divn(t.words[0]),mod:new h(this.modrn(t.words[0]))}:this._wordDiv(t,i);var e,o,s},h.prototype.div=function(t){return this.divmod(t,"div",!1).div},h.prototype.mod=function(t){return this.divmod(t,"mod",!1).mod},h.prototype.umod=function(t){return this.divmod(t,"mod",!0).mod},h.prototype.divRound=function(t){var i=this.divmod(t);if(i.mod.isZero())return i.div;var r=0!==i.div.negative?i.mod.isub(t):i.mod,n=t.ushrn(1),e=t.andln(1),h=r.cmp(n);return h<0||1===e&&0===h?i.div:0!==i.div.negative?i.div.isubn(1):i.div.iaddn(1)},h.prototype.modrn=function(t){var i=t<0;i&&(t=-t),n(t<=67108863);for(var r=(1<<26)%t,e=0,h=this.length-1;h>=0;h--)e=(r*e+(0|this.words[h]))%t;return i?-e:e},h.prototype.modn=function(t){return this.modrn(t)},h.prototype.idivn=function(t){var i=t<0;i&&(t=-t),n(t<=67108863);for(var r=0,e=this.length-1;e>=0;e--){var h=(0|this.words[e])+67108864*r;this.words[e]=h/t|0,r=h%t}return this._strip(),i?this.ineg():this},h.prototype.divn=function(t){return this.clone().idivn(t)},h.prototype.egcd=function(t){n(0===t.negative),n(!t.isZero());var i=this,r=t.clone();i=0!==i.negative?i.umod(t):i.clone();for(var e=new h(1),o=new h(0),s=new h(0),u=new h(1),a=0;i.isEven()&&r.isEven();)i.iushrn(1),r.iushrn(1),++a;for(var l=r.clone(),f=i.clone();!i.isZero();){for(var m=0,d=1;!(i.words[0]&d)&&m<26;++m,d<<=1);if(m>0)for(i.iushrn(m);m-- >0;)(e.isOdd()||o.isOdd())&&(e.iadd(l),o.isub(f)),e.iushrn(1),o.iushrn(1);for(var p=0,c=1;!(r.words[0]&c)&&p<26;++p,c<<=1);if(p>0)for(r.iushrn(p);p-- >0;)(s.isOdd()||u.isOdd())&&(s.iadd(l),u.isub(f)),s.iushrn(1),u.iushrn(1);i.cmp(r)>=0?(i.isub(r),e.isub(s),o.isub(u)):(r.isub(i),s.isub(e),u.isub(o))}return{a:s,b:u,gcd:r.iushln(a)}},h.prototype._invmp=function(t){n(0===t.negative),n(!t.isZero());var i=this,r=t.clone();i=0!==i.negative?i.umod(t):i.clone();for(var e,o=new h(1),s=new h(0),u=r.clone();i.cmpn(1)>0&&r.cmpn(1)>0;){for(var a=0,l=1;!(i.words[0]&l)&&a<26;++a,l<<=1);if(a>0)for(i.iushrn(a);a-- >0;)o.isOdd()&&o.iadd(u),o.iushrn(1);for(var f=0,m=1;!(r.words[0]&m)&&f<26;++f,m<<=1);if(f>0)for(r.iushrn(f);f-- >0;)s.isOdd()&&s.iadd(u),s.iushrn(1);i.cmp(r)>=0?(i.isub(r),o.isub(s)):(r.isub(i),s.isub(o))}return(e=0===i.cmpn(1)?o:s).cmpn(0)<0&&e.iadd(t),e},h.prototype.gcd=function(t){if(this.isZero())return t.abs();if(t.isZero())return this.abs();var i=this.clone(),r=t.clone();i.negative=0,r.negative=0;for(var n=0;i.isEven()&&r.isEven();n++)i.iushrn(1),r.iushrn(1);for(;;){for(;i.isEven();)i.iushrn(1);for(;r.isEven();)r.iushrn(1);var e=i.cmp(r);if(e<0){var h=i;i=r,r=h}else if(0===e||0===r.cmpn(1))break;i.isub(r)}return r.iushln(n)},h.prototype.invm=function(t){return this.egcd(t).a.umod(t)},h.prototype.isEven=function(){return!(1&this.words[0])},h.prototype.isOdd=function(){return!(1&~this.words[0])},h.prototype.andln=function(t){return this.words[0]&t},h.prototype.bincn=function(t){n("number"==typeof t);var i=t%26,r=(t-i)/26,e=1<>>26,s&=67108863,this.words[o]=s}return 0!==h&&(this.words[o]=h,this.length++),this},h.prototype.isZero=function(){return 1===this.length&&0===this.words[0]},h.prototype.cmpn=function(t){var i,r=t<0;if(0!==this.negative&&!r)return-1;if(0===this.negative&&r)return 1;if(this._strip(),this.length>1)i=1;else{r&&(t=-t),n(t<=67108863,"Number is too big");var e=0|this.words[0];i=e===t?0:et.length)return 1;if(this.length=0;r--){var n=0|this.words[r],e=0|t.words[r];if(n!==e){ne&&(i=1);break}}return i},h.prototype.gtn=function(t){return 1===this.cmpn(t)},h.prototype.gt=function(t){return 1===this.cmp(t)},h.prototype.gten=function(t){return this.cmpn(t)>=0},h.prototype.gte=function(t){return this.cmp(t)>=0},h.prototype.ltn=function(t){return-1===this.cmpn(t)},h.prototype.lt=function(t){return-1===this.cmp(t)},h.prototype.lten=function(t){return this.cmpn(t)<=0},h.prototype.lte=function(t){return this.cmp(t)<=0},h.prototype.eqn=function(t){return 0===this.cmpn(t)},h.prototype.eq=function(t){return 0===this.cmp(t)},h.red=function(t){return new S(t)},h.prototype.toRed=function(t){return n(!this.red,"Already a number in reduction context"),n(0===this.negative,"red works only with positives"),t.convertTo(this)._forceRed(t)},h.prototype.fromRed=function(){return n(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},h.prototype._forceRed=function(t){return this.red=t,this},h.prototype.forceRed=function(t){return n(!this.red,"Already a number in reduction context"),this._forceRed(t)},h.prototype.redAdd=function(t){return n(this.red,"redAdd works only with red numbers"),this.red.add(this,t)},h.prototype.redIAdd=function(t){return n(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,t)},h.prototype.redSub=function(t){return n(this.red,"redSub works only with red numbers"),this.red.sub(this,t)},h.prototype.redISub=function(t){return n(this.red,"redISub works only with red numbers"),this.red.isub(this,t)},h.prototype.redShl=function(t){return n(this.red,"redShl works only with red numbers"),this.red.shl(this,t)},h.prototype.redMul=function(t){return n(this.red,"redMul works only with red numbers"),this.red._verify2(this,t),this.red.mul(this,t)},h.prototype.redIMul=function(t){return n(this.red,"redMul works only with red numbers"),this.red._verify2(this,t),this.red.imul(this,t)},h.prototype.redSqr=function(){return n(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},h.prototype.redISqr=function(){return n(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},h.prototype.redSqrt=function(){return n(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},h.prototype.redInvm=function(){return n(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},h.prototype.redNeg=function(){return n(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},h.prototype.redPow=function(t){return n(this.red&&!t.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,t)};var y={k256:null,p224:null,p192:null,p25519:null};function b(t,i){this.name=t,this.p=new h(i,16),this.n=this.p.bitLength(),this.k=new h(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}function _(){b.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}function k(){b.call(this,"p224","ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001")}function A(){b.call(this,"p192","ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff")}function E(){b.call(this,"25519","7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed")}function S(t){if("string"==typeof t){var i=h._prime(t);this.m=i.p,this.prime=i}else n(t.gtn(1),"modulus must be greater than 1"),this.m=t,this.prime=null}function x(t){S.call(this,t),this.shift=this.m.bitLength(),this.shift%26!=0&&(this.shift+=26-this.shift%26),this.r=new h(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)}b.prototype._tmp=function(){var t=new h(null);return t.words=new Array(Math.ceil(this.n/13)),t},b.prototype.ireduce=function(t){var i,r=t;do{this.split(r,this.tmp),i=(r=(r=this.imulK(r)).iadd(this.tmp)).bitLength()}while(i>this.n);var n=i0?r.isub(this.p):void 0!==r.strip?r.strip():r._strip(),r},b.prototype.split=function(t,i){t.iushrn(this.n,0,i)},b.prototype.imulK=function(t){return t.imul(this.k)},e(_,b),_.prototype.split=function(t,i){for(var r=4194303,n=Math.min(t.length,9),e=0;e>>22,h=o}h>>>=22,t.words[e-10]=h,0===h&&t.length>10?t.length-=10:t.length-=9},_.prototype.imulK=function(t){t.words[t.length]=0,t.words[t.length+1]=0,t.length+=2;for(var i=0,r=0;r>>=26,t.words[r]=e,i=n}return 0!==i&&(t.words[t.length++]=i),t},h._prime=function(t){if(y[t])return y[t];var i;if("k256"===t)i=new _;else if("p224"===t)i=new k;else if("p192"===t)i=new A;else{if("p25519"!==t)throw new Error("Unknown prime "+t);i=new E}return y[t]=i,i},S.prototype._verify1=function(t){n(0===t.negative,"red works only with positives"),n(t.red,"red works only with red numbers")},S.prototype._verify2=function(t,i){n(!(t.negative|i.negative),"red works only with positives"),n(t.red&&t.red===i.red,"red works only with red numbers")},S.prototype.imod=function(t){return this.prime?this.prime.ireduce(t)._forceRed(this):(l(t,t.umod(this.m)._forceRed(this)),t)},S.prototype.neg=function(t){return t.isZero()?t.clone():this.m.sub(t)._forceRed(this)},S.prototype.add=function(t,i){this._verify2(t,i);var r=t.add(i);return r.cmp(this.m)>=0&&r.isub(this.m),r._forceRed(this)},S.prototype.iadd=function(t,i){this._verify2(t,i);var r=t.iadd(i);return r.cmp(this.m)>=0&&r.isub(this.m),r},S.prototype.sub=function(t,i){this._verify2(t,i);var r=t.sub(i);return r.cmpn(0)<0&&r.iadd(this.m),r._forceRed(this)},S.prototype.isub=function(t,i){this._verify2(t,i);var r=t.isub(i);return r.cmpn(0)<0&&r.iadd(this.m),r},S.prototype.shl=function(t,i){return this._verify1(t),this.imod(t.ushln(i))},S.prototype.imul=function(t,i){return this._verify2(t,i),this.imod(t.imul(i))},S.prototype.mul=function(t,i){return this._verify2(t,i),this.imod(t.mul(i))},S.prototype.isqr=function(t){return this.imul(t,t.clone())},S.prototype.sqr=function(t){return this.mul(t,t)},S.prototype.sqrt=function(t){if(t.isZero())return t.clone();var i=this.m.andln(3);if(n(i%2==1),3===i){var r=this.m.add(new h(1)).iushrn(2);return this.pow(t,r)}for(var e=this.m.subn(1),o=0;!e.isZero()&&0===e.andln(1);)o++,e.iushrn(1);n(!e.isZero());var s=new h(1).toRed(this),u=s.redNeg(),a=this.m.subn(1).iushrn(1),l=this.m.bitLength();for(l=new h(2*l*l).toRed(this);0!==this.pow(l,a).cmp(u);)l.redIAdd(u);for(var f=this.pow(l,e),m=this.pow(t,e.addn(1).iushrn(1)),d=this.pow(t,e),p=o;0!==d.cmp(s);){for(var c=d,v=0;0!==c.cmp(s);v++)c=c.redSqr();n(v=0;n--){for(var a=i.words[n],l=u-1;l>=0;l--){var f=a>>l&1;e!==r[0]&&(e=this.sqr(e)),0!==f||0!==o?(o<<=1,o|=f,(4===++s||0===n&&0===l)&&(e=this.mul(e,r[o]),s=0,o=0)):s=0}u=26}return e},S.prototype.convertTo=function(t){var i=t.umod(this.m);return i===t?i.clone():i},S.prototype.convertFrom=function(t){var i=t.clone();return i.red=null,i},h.mont=function(t){return new x(t)},e(x,S),x.prototype.convertTo=function(t){return this.imod(t.ushln(this.shift))},x.prototype.convertFrom=function(t){var i=this.imod(t.mul(this.rinv));return i.red=null,i},x.prototype.imul=function(t,i){if(t.isZero()||i.isZero())return t.words[0]=0,t.length=1,t;var r=t.imul(i),n=r.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),e=r.isub(n).iushrn(this.shift),h=e;return e.cmp(this.m)>=0?h=e.isub(this.m):e.cmpn(0)<0&&(h=e.iadd(this.m)),h._forceRed(this)},x.prototype.mul=function(t,i){if(t.isZero()||i.isZero())return new h(0)._forceRed(this);var r=t.mul(i),n=r.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),e=r.isub(n).iushrn(this.shift),o=e;return e.cmp(this.m)>=0?o=e.isub(this.m):e.cmpn(0)<0&&(o=e.iadd(this.m)),o._forceRed(this)},x.prototype.invm=function(t){return this.imod(t._invmp(this.m).mul(this.r2))._forceRed(this)}}(t=r.nmd(t),this)}}]);