=f;c-=2)x=d(o,f,c)<=18?(p-=18,w+=1,this.words[w]|=x>>>26):p+=8;else{var g=o.length-f;for(c=g%2===0?f+1:f;c=18?(p-=18,w+=1,this.words[w]|=x>>>26):p+=8}this.strip()};function m(M,o,f,u){for(var c=0,p=Math.min(M.length,f),w=o;w=49?c+=x-49+10:x>=17?c+=x-17+10:c+=x}return c}n.prototype._parseBase=function(o,f,u){this.words=[0],this.length=1;for(var c=0,p=1;p<=67108863;p*=f)c++;c--,p=p/f|0;for(var w=o.length-u,x=w%c,g=Math.min(w,w-x)+u,s=0,v=u;v1&&this.words[this.length-1]===0;)this.length--;return this._normSign()},n.prototype._normSign=function(){return this.length===1&&this.words[0]===0&&(this.negative=0),this},n.prototype.inspect=function(){return(this.red?""};var _=["","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"],S=[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],R=[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];n.prototype.toString=function(o,f){o=o||10,f=f|0||1;var u;if(o===16||o==="hex"){u="";for(var c=0,p=0,w=0;w>>24-c&16777215,p!==0||w!==this.length-1?u=_[6-g.length]+g+u:u=g+u,c+=2,c>=26&&(c-=26,w--)}for(p!==0&&(u=p.toString(16)+u);u.length%f!==0;)u="0"+u;return this.negative!==0&&(u="-"+u),u}if(o===(o|0)&&o>=2&&o<=36){var s=S[o],v=R[o];u="";var T=this.clone();for(T.negative=0;!T.isZero();){var D=T.modn(v).toString(o);T=T.idivn(v),T.isZero()?u=D+u:u=_[s-D.length]+D+u}for(this.isZero()&&(u="0"+u);u.length%f!==0;)u="0"+u;return this.negative!==0&&(u="-"+u),u}i(!1,"Base should be between 2 and 36")},n.prototype.toNumber=function(){var o=this.words[0];return this.length===2?o+=this.words[1]*67108864:this.length===3&&this.words[2]===1?o+=4503599627370496+this.words[1]*67108864:this.length>2&&i(!1,"Number can only safely store up to 53 bits"),this.negative!==0?-o:o},n.prototype.toJSON=function(){return this.toString(16)},n.prototype.toBuffer=function(o,f){return i(typeof l<"u"),this.toArrayLike(l,o,f)},n.prototype.toArray=function(o,f){return this.toArrayLike(Array,o,f)},n.prototype.toArrayLike=function(o,f,u){var c=this.byteLength(),p=u||Math.max(1,c);i(c<=p,"byte array longer than desired length"),i(p>0,"Requested array length <= 0"),this.strip();var w=f==="le",x=new o(p),g,s,v=this.clone();if(w){for(s=0;!v.isZero();s++)g=v.andln(255),v.iushrn(8),x[s]=g;for(;s=4096&&(u+=13,f>>>=13),f>=64&&(u+=7,f>>>=7),f>=8&&(u+=4,f>>>=4),f>=2&&(u+=2,f>>>=2),u+f},n.prototype._zeroBits=function(o){if(o===0)return 26;var f=o,u=0;return f&8191||(u+=13,f>>>=13),f&127||(u+=7,f>>>=7),f&15||(u+=4,f>>>=4),f&3||(u+=2,f>>>=2),f&1||u++,u},n.prototype.bitLength=function(){var o=this.words[this.length-1],f=this._countBits(o);return(this.length-1)*26+f};function I(M){for(var o=new Array(M.bitLength()),f=0;f>>c}return o}n.prototype.zeroBits=function(){if(this.isZero())return 0;for(var o=0,f=0;fo.length?this.clone().ior(o):o.clone().ior(this)},n.prototype.uor=function(o){return this.length>o.length?this.clone().iuor(o):o.clone().iuor(this)},n.prototype.iuand=function(o){var f;this.length>o.length?f=o:f=this;for(var u=0;uo.length?this.clone().iand(o):o.clone().iand(this)},n.prototype.uand=function(o){return this.length>o.length?this.clone().iuand(o):o.clone().iuand(this)},n.prototype.iuxor=function(o){var f,u;this.length>o.length?(f=this,u=o):(f=o,u=this);for(var c=0;co.length?this.clone().ixor(o):o.clone().ixor(this)},n.prototype.uxor=function(o){return this.length>o.length?this.clone().iuxor(o):o.clone().iuxor(this)},n.prototype.inotn=function(o){i(typeof o=="number"&&o>=0);var f=Math.ceil(o/26)|0,u=o%26;this._expand(f),u>0&&f--;for(var c=0;c0&&(this.words[c]=~this.words[c]&67108863>>26-u),this.strip()},n.prototype.notn=function(o){return this.clone().inotn(o)},n.prototype.setn=function(o,f){i(typeof o=="number"&&o>=0);var u=o/26|0,c=o%26;return this._expand(u+1),f?this.words[u]=this.words[u]|1<o.length?(u=this,c=o):(u=o,c=this);for(var p=0,w=0;w>>26;for(;p!==0&&w>>26;if(this.length=u.length,p!==0)this.words[this.length]=p,this.length++;else if(u!==this)for(;wo.length?this.clone().iadd(o):o.clone().iadd(this)},n.prototype.isub=function(o){if(o.negative!==0){o.negative=0;var f=this.iadd(o);return o.negative=1,f._normSign()}else if(this.negative!==0)return this.negative=0,this.iadd(o),this.negative=1,this._normSign();var u=this.cmp(o);if(u===0)return this.negative=0,this.length=1,this.words[0]=0,this;var c,p;u>0?(c=this,p=o):(c=o,p=this);for(var w=0,x=0;x>26,this.words[x]=f&67108863;for(;w!==0&&x>26,this.words[x]=f&67108863;if(w===0&&x>>26,T=g&67108863,D=Math.min(s,o.length-1),Y=Math.max(0,s-M.length+1);Y<=D;Y++){var Q=s-Y|0;c=M.words[Q]|0,p=o.words[Y]|0,w=c*p+T,v+=w/67108864|0,T=w&67108863}f.words[s]=T|0,g=v|0}return g!==0?f.words[s]=g|0:f.length--,f.strip()}var L=function(o,f,u){var c=o.words,p=f.words,w=u.words,x=0,g,s,v,T=c[0]|0,D=T&8191,Y=T>>>13,Q=c[1]|0,A=Q&8191,E=Q>>>13,q=c[2]|0,V=q&8191,X=q>>>13,b=c[3]|0,y=b&8191,F=b>>>13,U=c[4]|0,Z=U&8191,j=U>>>13,k=c[5]|0,H=k&8191,z=k>>>13,oe=c[6]|0,ee=oe&8191,ne=oe>>>13,me=c[7]|0,he=me&8191,ue=me>>>13,xe=c[8]|0,le=xe&8191,ve=xe>>>13,ce=c[9]|0,ie=ce&8191,fe=ce>>>13,Ee=p[0]|0,de=Ee&8191,be=Ee>>>13,Ke=p[1]|0,we=Ke&8191,Se=Ke>>>13,qe=p[2]|0,ge=qe&8191,Me=qe>>>13,Ve=p[3]|0,_e=Ve&8191,Be=Ve>>>13,ot=p[4]|0,Ae=ot&8191,Ne=ot>>>13,st=p[5]|0,Pe=st&8191,De=st>>>13,ut=p[6]|0,Re=ut&8191,Fe=ut>>>13,ht=p[7]|0,Te=ht&8191,ke=ht>>>13,ct=p[8]|0,Oe=ct&8191,je=ct>>>13,ft=p[9]|0,Ie=ft&8191,$e=ft>>>13;u.negative=o.negative^f.negative,u.length=19,g=Math.imul(D,de),s=Math.imul(D,be),s=s+Math.imul(Y,de)|0,v=Math.imul(Y,be);var tt=(x+g|0)+((s&8191)<<13)|0;x=(v+(s>>>13)|0)+(tt>>>26)|0,tt&=67108863,g=Math.imul(A,de),s=Math.imul(A,be),s=s+Math.imul(E,de)|0,v=Math.imul(E,be),g=g+Math.imul(D,we)|0,s=s+Math.imul(D,Se)|0,s=s+Math.imul(Y,we)|0,v=v+Math.imul(Y,Se)|0;var et=(x+g|0)+((s&8191)<<13)|0;x=(v+(s>>>13)|0)+(et>>>26)|0,et&=67108863,g=Math.imul(V,de),s=Math.imul(V,be),s=s+Math.imul(X,de)|0,v=Math.imul(X,be),g=g+Math.imul(A,we)|0,s=s+Math.imul(A,Se)|0,s=s+Math.imul(E,we)|0,v=v+Math.imul(E,Se)|0,g=g+Math.imul(D,ge)|0,s=s+Math.imul(D,Me)|0,s=s+Math.imul(Y,ge)|0,v=v+Math.imul(Y,Me)|0;var Et=(x+g|0)+((s&8191)<<13)|0;x=(v+(s>>>13)|0)+(Et>>>26)|0,Et&=67108863,g=Math.imul(y,de),s=Math.imul(y,be),s=s+Math.imul(F,de)|0,v=Math.imul(F,be),g=g+Math.imul(V,we)|0,s=s+Math.imul(V,Se)|0,s=s+Math.imul(X,we)|0,v=v+Math.imul(X,Se)|0,g=g+Math.imul(A,ge)|0,s=s+Math.imul(A,Me)|0,s=s+Math.imul(E,ge)|0,v=v+Math.imul(E,Me)|0,g=g+Math.imul(D,_e)|0,s=s+Math.imul(D,Be)|0,s=s+Math.imul(Y,_e)|0,v=v+Math.imul(Y,Be)|0;var It=(x+g|0)+((s&8191)<<13)|0;x=(v+(s>>>13)|0)+(It>>>26)|0,It&=67108863,g=Math.imul(Z,de),s=Math.imul(Z,be),s=s+Math.imul(j,de)|0,v=Math.imul(j,be),g=g+Math.imul(y,we)|0,s=s+Math.imul(y,Se)|0,s=s+Math.imul(F,we)|0,v=v+Math.imul(F,Se)|0,g=g+Math.imul(V,ge)|0,s=s+Math.imul(V,Me)|0,s=s+Math.imul(X,ge)|0,v=v+Math.imul(X,Me)|0,g=g+Math.imul(A,_e)|0,s=s+Math.imul(A,Be)|0,s=s+Math.imul(E,_e)|0,v=v+Math.imul(E,Be)|0,g=g+Math.imul(D,Ae)|0,s=s+Math.imul(D,Ne)|0,s=s+Math.imul(Y,Ae)|0,v=v+Math.imul(Y,Ne)|0;var Pt=(x+g|0)+((s&8191)<<13)|0;x=(v+(s>>>13)|0)+(Pt>>>26)|0,Pt&=67108863,g=Math.imul(H,de),s=Math.imul(H,be),s=s+Math.imul(z,de)|0,v=Math.imul(z,be),g=g+Math.imul(Z,we)|0,s=s+Math.imul(Z,Se)|0,s=s+Math.imul(j,we)|0,v=v+Math.imul(j,Se)|0,g=g+Math.imul(y,ge)|0,s=s+Math.imul(y,Me)|0,s=s+Math.imul(F,ge)|0,v=v+Math.imul(F,Me)|0,g=g+Math.imul(V,_e)|0,s=s+Math.imul(V,Be)|0,s=s+Math.imul(X,_e)|0,v=v+Math.imul(X,Be)|0,g=g+Math.imul(A,Ae)|0,s=s+Math.imul(A,Ne)|0,s=s+Math.imul(E,Ae)|0,v=v+Math.imul(E,Ne)|0,g=g+Math.imul(D,Pe)|0,s=s+Math.imul(D,De)|0,s=s+Math.imul(Y,Pe)|0,v=v+Math.imul(Y,De)|0;var Bt=(x+g|0)+((s&8191)<<13)|0;x=(v+(s>>>13)|0)+(Bt>>>26)|0,Bt&=67108863,g=Math.imul(ee,de),s=Math.imul(ee,be),s=s+Math.imul(ne,de)|0,v=Math.imul(ne,be),g=g+Math.imul(H,we)|0,s=s+Math.imul(H,Se)|0,s=s+Math.imul(z,we)|0,v=v+Math.imul(z,Se)|0,g=g+Math.imul(Z,ge)|0,s=s+Math.imul(Z,Me)|0,s=s+Math.imul(j,ge)|0,v=v+Math.imul(j,Me)|0,g=g+Math.imul(y,_e)|0,s=s+Math.imul(y,Be)|0,s=s+Math.imul(F,_e)|0,v=v+Math.imul(F,Be)|0,g=g+Math.imul(V,Ae)|0,s=s+Math.imul(V,Ne)|0,s=s+Math.imul(X,Ae)|0,v=v+Math.imul(X,Ne)|0,g=g+Math.imul(A,Pe)|0,s=s+Math.imul(A,De)|0,s=s+Math.imul(E,Pe)|0,v=v+Math.imul(E,De)|0,g=g+Math.imul(D,Re)|0,s=s+Math.imul(D,Fe)|0,s=s+Math.imul(Y,Re)|0,v=v+Math.imul(Y,Fe)|0;var Dt=(x+g|0)+((s&8191)<<13)|0;x=(v+(s>>>13)|0)+(Dt>>>26)|0,Dt&=67108863,g=Math.imul(he,de),s=Math.imul(he,be),s=s+Math.imul(ue,de)|0,v=Math.imul(ue,be),g=g+Math.imul(ee,we)|0,s=s+Math.imul(ee,Se)|0,s=s+Math.imul(ne,we)|0,v=v+Math.imul(ne,Se)|0,g=g+Math.imul(H,ge)|0,s=s+Math.imul(H,Me)|0,s=s+Math.imul(z,ge)|0,v=v+Math.imul(z,Me)|0,g=g+Math.imul(Z,_e)|0,s=s+Math.imul(Z,Be)|0,s=s+Math.imul(j,_e)|0,v=v+Math.imul(j,Be)|0,g=g+Math.imul(y,Ae)|0,s=s+Math.imul(y,Ne)|0,s=s+Math.imul(F,Ae)|0,v=v+Math.imul(F,Ne)|0,g=g+Math.imul(V,Pe)|0,s=s+Math.imul(V,De)|0,s=s+Math.imul(X,Pe)|0,v=v+Math.imul(X,De)|0,g=g+Math.imul(A,Re)|0,s=s+Math.imul(A,Fe)|0,s=s+Math.imul(E,Re)|0,v=v+Math.imul(E,Fe)|0,g=g+Math.imul(D,Te)|0,s=s+Math.imul(D,ke)|0,s=s+Math.imul(Y,Te)|0,v=v+Math.imul(Y,ke)|0;var qt=(x+g|0)+((s&8191)<<13)|0;x=(v+(s>>>13)|0)+(qt>>>26)|0,qt&=67108863,g=Math.imul(le,de),s=Math.imul(le,be),s=s+Math.imul(ve,de)|0,v=Math.imul(ve,be),g=g+Math.imul(he,we)|0,s=s+Math.imul(he,Se)|0,s=s+Math.imul(ue,we)|0,v=v+Math.imul(ue,Se)|0,g=g+Math.imul(ee,ge)|0,s=s+Math.imul(ee,Me)|0,s=s+Math.imul(ne,ge)|0,v=v+Math.imul(ne,Me)|0,g=g+Math.imul(H,_e)|0,s=s+Math.imul(H,Be)|0,s=s+Math.imul(z,_e)|0,v=v+Math.imul(z,Be)|0,g=g+Math.imul(Z,Ae)|0,s=s+Math.imul(Z,Ne)|0,s=s+Math.imul(j,Ae)|0,v=v+Math.imul(j,Ne)|0,g=g+Math.imul(y,Pe)|0,s=s+Math.imul(y,De)|0,s=s+Math.imul(F,Pe)|0,v=v+Math.imul(F,De)|0,g=g+Math.imul(V,Re)|0,s=s+Math.imul(V,Fe)|0,s=s+Math.imul(X,Re)|0,v=v+Math.imul(X,Fe)|0,g=g+Math.imul(A,Te)|0,s=s+Math.imul(A,ke)|0,s=s+Math.imul(E,Te)|0,v=v+Math.imul(E,ke)|0,g=g+Math.imul(D,Oe)|0,s=s+Math.imul(D,je)|0,s=s+Math.imul(Y,Oe)|0,v=v+Math.imul(Y,je)|0;var Wt=(x+g|0)+((s&8191)<<13)|0;x=(v+(s>>>13)|0)+(Wt>>>26)|0,Wt&=67108863,g=Math.imul(ie,de),s=Math.imul(ie,be),s=s+Math.imul(fe,de)|0,v=Math.imul(fe,be),g=g+Math.imul(le,we)|0,s=s+Math.imul(le,Se)|0,s=s+Math.imul(ve,we)|0,v=v+Math.imul(ve,Se)|0,g=g+Math.imul(he,ge)|0,s=s+Math.imul(he,Me)|0,s=s+Math.imul(ue,ge)|0,v=v+Math.imul(ue,Me)|0,g=g+Math.imul(ee,_e)|0,s=s+Math.imul(ee,Be)|0,s=s+Math.imul(ne,_e)|0,v=v+Math.imul(ne,Be)|0,g=g+Math.imul(H,Ae)|0,s=s+Math.imul(H,Ne)|0,s=s+Math.imul(z,Ae)|0,v=v+Math.imul(z,Ne)|0,g=g+Math.imul(Z,Pe)|0,s=s+Math.imul(Z,De)|0,s=s+Math.imul(j,Pe)|0,v=v+Math.imul(j,De)|0,g=g+Math.imul(y,Re)|0,s=s+Math.imul(y,Fe)|0,s=s+Math.imul(F,Re)|0,v=v+Math.imul(F,Fe)|0,g=g+Math.imul(V,Te)|0,s=s+Math.imul(V,ke)|0,s=s+Math.imul(X,Te)|0,v=v+Math.imul(X,ke)|0,g=g+Math.imul(A,Oe)|0,s=s+Math.imul(A,je)|0,s=s+Math.imul(E,Oe)|0,v=v+Math.imul(E,je)|0,g=g+Math.imul(D,Ie)|0,s=s+Math.imul(D,$e)|0,s=s+Math.imul(Y,Ie)|0,v=v+Math.imul(Y,$e)|0;var Lt=(x+g|0)+((s&8191)<<13)|0;x=(v+(s>>>13)|0)+(Lt>>>26)|0,Lt&=67108863,g=Math.imul(ie,we),s=Math.imul(ie,Se),s=s+Math.imul(fe,we)|0,v=Math.imul(fe,Se),g=g+Math.imul(le,ge)|0,s=s+Math.imul(le,Me)|0,s=s+Math.imul(ve,ge)|0,v=v+Math.imul(ve,Me)|0,g=g+Math.imul(he,_e)|0,s=s+Math.imul(he,Be)|0,s=s+Math.imul(ue,_e)|0,v=v+Math.imul(ue,Be)|0,g=g+Math.imul(ee,Ae)|0,s=s+Math.imul(ee,Ne)|0,s=s+Math.imul(ne,Ae)|0,v=v+Math.imul(ne,Ne)|0,g=g+Math.imul(H,Pe)|0,s=s+Math.imul(H,De)|0,s=s+Math.imul(z,Pe)|0,v=v+Math.imul(z,De)|0,g=g+Math.imul(Z,Re)|0,s=s+Math.imul(Z,Fe)|0,s=s+Math.imul(j,Re)|0,v=v+Math.imul(j,Fe)|0,g=g+Math.imul(y,Te)|0,s=s+Math.imul(y,ke)|0,s=s+Math.imul(F,Te)|0,v=v+Math.imul(F,ke)|0,g=g+Math.imul(V,Oe)|0,s=s+Math.imul(V,je)|0,s=s+Math.imul(X,Oe)|0,v=v+Math.imul(X,je)|0,g=g+Math.imul(A,Ie)|0,s=s+Math.imul(A,$e)|0,s=s+Math.imul(E,Ie)|0,v=v+Math.imul(E,$e)|0;var dt=(x+g|0)+((s&8191)<<13)|0;x=(v+(s>>>13)|0)+(dt>>>26)|0,dt&=67108863,g=Math.imul(ie,ge),s=Math.imul(ie,Me),s=s+Math.imul(fe,ge)|0,v=Math.imul(fe,Me),g=g+Math.imul(le,_e)|0,s=s+Math.imul(le,Be)|0,s=s+Math.imul(ve,_e)|0,v=v+Math.imul(ve,Be)|0,g=g+Math.imul(he,Ae)|0,s=s+Math.imul(he,Ne)|0,s=s+Math.imul(ue,Ae)|0,v=v+Math.imul(ue,Ne)|0,g=g+Math.imul(ee,Pe)|0,s=s+Math.imul(ee,De)|0,s=s+Math.imul(ne,Pe)|0,v=v+Math.imul(ne,De)|0,g=g+Math.imul(H,Re)|0,s=s+Math.imul(H,Fe)|0,s=s+Math.imul(z,Re)|0,v=v+Math.imul(z,Fe)|0,g=g+Math.imul(Z,Te)|0,s=s+Math.imul(Z,ke)|0,s=s+Math.imul(j,Te)|0,v=v+Math.imul(j,ke)|0,g=g+Math.imul(y,Oe)|0,s=s+Math.imul(y,je)|0,s=s+Math.imul(F,Oe)|0,v=v+Math.imul(F,je)|0,g=g+Math.imul(V,Ie)|0,s=s+Math.imul(V,$e)|0,s=s+Math.imul(X,Ie)|0,v=v+Math.imul(X,$e)|0;var Tt=(x+g|0)+((s&8191)<<13)|0;x=(v+(s>>>13)|0)+(Tt>>>26)|0,Tt&=67108863,g=Math.imul(ie,_e),s=Math.imul(ie,Be),s=s+Math.imul(fe,_e)|0,v=Math.imul(fe,Be),g=g+Math.imul(le,Ae)|0,s=s+Math.imul(le,Ne)|0,s=s+Math.imul(ve,Ae)|0,v=v+Math.imul(ve,Ne)|0,g=g+Math.imul(he,Pe)|0,s=s+Math.imul(he,De)|0,s=s+Math.imul(ue,Pe)|0,v=v+Math.imul(ue,De)|0,g=g+Math.imul(ee,Re)|0,s=s+Math.imul(ee,Fe)|0,s=s+Math.imul(ne,Re)|0,v=v+Math.imul(ne,Fe)|0,g=g+Math.imul(H,Te)|0,s=s+Math.imul(H,ke)|0,s=s+Math.imul(z,Te)|0,v=v+Math.imul(z,ke)|0,g=g+Math.imul(Z,Oe)|0,s=s+Math.imul(Z,je)|0,s=s+Math.imul(j,Oe)|0,v=v+Math.imul(j,je)|0,g=g+Math.imul(y,Ie)|0,s=s+Math.imul(y,$e)|0,s=s+Math.imul(F,Ie)|0,v=v+Math.imul(F,$e)|0;var Mt=(x+g|0)+((s&8191)<<13)|0;x=(v+(s>>>13)|0)+(Mt>>>26)|0,Mt&=67108863,g=Math.imul(ie,Ae),s=Math.imul(ie,Ne),s=s+Math.imul(fe,Ae)|0,v=Math.imul(fe,Ne),g=g+Math.imul(le,Pe)|0,s=s+Math.imul(le,De)|0,s=s+Math.imul(ve,Pe)|0,v=v+Math.imul(ve,De)|0,g=g+Math.imul(he,Re)|0,s=s+Math.imul(he,Fe)|0,s=s+Math.imul(ue,Re)|0,v=v+Math.imul(ue,Fe)|0,g=g+Math.imul(ee,Te)|0,s=s+Math.imul(ee,ke)|0,s=s+Math.imul(ne,Te)|0,v=v+Math.imul(ne,ke)|0,g=g+Math.imul(H,Oe)|0,s=s+Math.imul(H,je)|0,s=s+Math.imul(z,Oe)|0,v=v+Math.imul(z,je)|0,g=g+Math.imul(Z,Ie)|0,s=s+Math.imul(Z,$e)|0,s=s+Math.imul(j,Ie)|0,v=v+Math.imul(j,$e)|0;var bt=(x+g|0)+((s&8191)<<13)|0;x=(v+(s>>>13)|0)+(bt>>>26)|0,bt&=67108863,g=Math.imul(ie,Pe),s=Math.imul(ie,De),s=s+Math.imul(fe,Pe)|0,v=Math.imul(fe,De),g=g+Math.imul(le,Re)|0,s=s+Math.imul(le,Fe)|0,s=s+Math.imul(ve,Re)|0,v=v+Math.imul(ve,Fe)|0,g=g+Math.imul(he,Te)|0,s=s+Math.imul(he,ke)|0,s=s+Math.imul(ue,Te)|0,v=v+Math.imul(ue,ke)|0,g=g+Math.imul(ee,Oe)|0,s=s+Math.imul(ee,je)|0,s=s+Math.imul(ne,Oe)|0,v=v+Math.imul(ne,je)|0,g=g+Math.imul(H,Ie)|0,s=s+Math.imul(H,$e)|0,s=s+Math.imul(z,Ie)|0,v=v+Math.imul(z,$e)|0;var Ct=(x+g|0)+((s&8191)<<13)|0;x=(v+(s>>>13)|0)+(Ct>>>26)|0,Ct&=67108863,g=Math.imul(ie,Re),s=Math.imul(ie,Fe),s=s+Math.imul(fe,Re)|0,v=Math.imul(fe,Fe),g=g+Math.imul(le,Te)|0,s=s+Math.imul(le,ke)|0,s=s+Math.imul(ve,Te)|0,v=v+Math.imul(ve,ke)|0,g=g+Math.imul(he,Oe)|0,s=s+Math.imul(he,je)|0,s=s+Math.imul(ue,Oe)|0,v=v+Math.imul(ue,je)|0,g=g+Math.imul(ee,Ie)|0,s=s+Math.imul(ee,$e)|0,s=s+Math.imul(ne,Ie)|0,v=v+Math.imul(ne,$e)|0;var gt=(x+g|0)+((s&8191)<<13)|0;x=(v+(s>>>13)|0)+(gt>>>26)|0,gt&=67108863,g=Math.imul(ie,Te),s=Math.imul(ie,ke),s=s+Math.imul(fe,Te)|0,v=Math.imul(fe,ke),g=g+Math.imul(le,Oe)|0,s=s+Math.imul(le,je)|0,s=s+Math.imul(ve,Oe)|0,v=v+Math.imul(ve,je)|0,g=g+Math.imul(he,Ie)|0,s=s+Math.imul(he,$e)|0,s=s+Math.imul(ue,Ie)|0,v=v+Math.imul(ue,$e)|0;var wt=(x+g|0)+((s&8191)<<13)|0;x=(v+(s>>>13)|0)+(wt>>>26)|0,wt&=67108863,g=Math.imul(ie,Oe),s=Math.imul(ie,je),s=s+Math.imul(fe,Oe)|0,v=Math.imul(fe,je),g=g+Math.imul(le,Ie)|0,s=s+Math.imul(le,$e)|0,s=s+Math.imul(ve,Ie)|0,v=v+Math.imul(ve,$e)|0;var Ft=(x+g|0)+((s&8191)<<13)|0;x=(v+(s>>>13)|0)+(Ft>>>26)|0,Ft&=67108863,g=Math.imul(ie,Ie),s=Math.imul(ie,$e),s=s+Math.imul(fe,Ie)|0,v=Math.imul(fe,$e);var jt=(x+g|0)+((s&8191)<<13)|0;return x=(v+(s>>>13)|0)+(jt>>>26)|0,jt&=67108863,w[0]=tt,w[1]=et,w[2]=Et,w[3]=It,w[4]=Pt,w[5]=Bt,w[6]=Dt,w[7]=qt,w[8]=Wt,w[9]=Lt,w[10]=dt,w[11]=Tt,w[12]=Mt,w[13]=bt,w[14]=Ct,w[15]=gt,w[16]=wt,w[17]=Ft,w[18]=jt,x!==0&&(w[19]=x,u.length++),u};Math.imul||(L=O);function B(M,o,f){f.negative=o.negative^M.negative,f.length=M.length+o.length;for(var u=0,c=0,p=0;p>>26)|0,c+=w>>>26,w&=67108863}f.words[p]=x,u=w,w=c}return u!==0?f.words[p]=u:f.length--,f.strip()}function P(M,o,f){var u=new C;return u.mulp(M,o,f)}n.prototype.mulTo=function(o,f){var u,c=this.length+o.length;return this.length===10&&o.length===10?u=L(this,o,f):c<63?u=O(this,o,f):c<1024?u=B(this,o,f):u=P(this,o,f),u};function C(M,o){this.x=M,this.y=o}C.prototype.makeRBT=function(o){for(var f=new Array(o),u=n.prototype._countBits(o)-1,c=0;c>=1;return c},C.prototype.permute=function(o,f,u,c,p,w){for(var x=0;x>>1)p++;return 1<>>13,u[2*w+1]=p&8191,p=p>>>13;for(w=2*f;w>=26,f+=c/67108864|0,f+=p>>>26,this.words[u]=p&67108863}return f!==0&&(this.words[u]=f,this.length++),this},n.prototype.muln=function(o){return this.clone().imuln(o)},n.prototype.sqr=function(){return this.mul(this)},n.prototype.isqr=function(){return this.imul(this.clone())},n.prototype.pow=function(o){var f=I(o);if(f.length===0)return new n(1);for(var u=this,c=0;c=0);var f=o%26,u=(o-f)/26,c=67108863>>>26-f<<26-f,p;if(f!==0){var w=0;for(p=0;p>>26-f}w&&(this.words[p]=w,this.length++)}if(u!==0){for(p=this.length-1;p>=0;p--)this.words[p+u]=this.words[p];for(p=0;p=0);var c;f?c=(f-f%26)/26:c=0;var p=o%26,w=Math.min((o-p)/26,this.length),x=67108863^67108863>>>p<w)for(this.length-=w,s=0;s=0&&(v!==0||s>=c);s--){var T=this.words[s]|0;this.words[s]=v<<26-p|T>>>p,v=T&x}return g&&v!==0&&(g.words[g.length++]=v),this.length===0&&(this.words[0]=0,this.length=1),this.strip()},n.prototype.ishrn=function(o,f,u){return i(this.negative===0),this.iushrn(o,f,u)},n.prototype.shln=function(o){return this.clone().ishln(o)},n.prototype.ushln=function(o){return this.clone().iushln(o)},n.prototype.shrn=function(o){return this.clone().ishrn(o)},n.prototype.ushrn=function(o){return this.clone().iushrn(o)},n.prototype.testn=function(o){i(typeof o=="number"&&o>=0);var f=o%26,u=(o-f)/26,c=1<=0);var f=o%26,u=(o-f)/26;if(i(this.negative===0,"imaskn works only with positive numbers"),this.length<=u)return this;if(f!==0&&u++,this.length=Math.min(u,this.length),f!==0){var c=67108863^67108863>>>f<=67108864;f++)this.words[f]-=67108864,f===this.length-1?this.words[f+1]=1:this.words[f+1]++;return this.length=Math.max(this.length,f+1),this},n.prototype.isubn=function(o){if(i(typeof o=="number"),i(o<67108864),o<0)return this.iaddn(-o);if(this.negative!==0)return this.negative=0,this.iaddn(o),this.negative=1,this;if(this.words[0]-=o,this.length===1&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var f=0;f>26)-(g/67108864|0),this.words[p+u]=w&67108863}for(;p>26,this.words[p+u]=w&67108863;if(x===0)return this.strip();for(i(x===-1),x=0,p=0;p>26,this.words[p]=w&67108863;return this.negative=1,this.strip()},n.prototype._wordDiv=function(o,f){var u=this.length-o.length,c=this.clone(),p=o,w=p.words[p.length-1]|0,x=this._countBits(w);u=26-x,u!==0&&(p=p.ushln(u),c.iushln(u),w=p.words[p.length-1]|0);var g=c.length-p.length,s;if(f!=="mod"){s=new n(null),s.length=g+1,s.words=new Array(s.length);for(var v=0;v=0;D--){var Y=(c.words[p.length+D]|0)*67108864+(c.words[p.length+D-1]|0);for(Y=Math.min(Y/w|0,67108863),c._ishlnsubmul(p,Y,D);c.negative!==0;)Y--,c.negative=0,c._ishlnsubmul(p,1,D),c.isZero()||(c.negative^=1);s&&(s.words[D]=Y)}return s&&s.strip(),c.strip(),f!=="div"&&u!==0&&c.iushrn(u),{div:s||null,mod:c}},n.prototype.divmod=function(o,f,u){if(i(!o.isZero()),this.isZero())return{div:new n(0),mod:new n(0)};var c,p,w;return this.negative!==0&&o.negative===0?(w=this.neg().divmod(o,f),f!=="mod"&&(c=w.div.neg()),f!=="div"&&(p=w.mod.neg(),u&&p.negative!==0&&p.iadd(o)),{div:c,mod:p}):this.negative===0&&o.negative!==0?(w=this.divmod(o.neg(),f),f!=="mod"&&(c=w.div.neg()),{div:c,mod:w.mod}):this.negative&o.negative?(w=this.neg().divmod(o.neg(),f),f!=="div"&&(p=w.mod.neg(),u&&p.negative!==0&&p.isub(o)),{div:w.div,mod:p}):o.length>this.length||this.cmp(o)<0?{div:new n(0),mod:this}:o.length===1?f==="div"?{div:this.divn(o.words[0]),mod:null}:f==="mod"?{div:null,mod:new n(this.modn(o.words[0]))}:{div:this.divn(o.words[0]),mod:new n(this.modn(o.words[0]))}:this._wordDiv(o,f)},n.prototype.div=function(o){return this.divmod(o,"div",!1).div},n.prototype.mod=function(o){return this.divmod(o,"mod",!1).mod},n.prototype.umod=function(o){return this.divmod(o,"mod",!0).mod},n.prototype.divRound=function(o){var f=this.divmod(o);if(f.mod.isZero())return f.div;var u=f.div.negative!==0?f.mod.isub(o):f.mod,c=o.ushrn(1),p=o.andln(1),w=u.cmp(c);return w<0||p===1&&w===0?f.div:f.div.negative!==0?f.div.isubn(1):f.div.iaddn(1)},n.prototype.modn=function(o){i(o<=67108863);for(var f=(1<<26)%o,u=0,c=this.length-1;c>=0;c--)u=(f*u+(this.words[c]|0))%o;return u},n.prototype.idivn=function(o){i(o<=67108863);for(var f=0,u=this.length-1;u>=0;u--){var c=(this.words[u]|0)+f*67108864;this.words[u]=c/o|0,f=c%o}return this.strip()},n.prototype.divn=function(o){return this.clone().idivn(o)},n.prototype.egcd=function(o){i(o.negative===0),i(!o.isZero());var f=this,u=o.clone();f.negative!==0?f=f.umod(o):f=f.clone();for(var c=new n(1),p=new n(0),w=new n(0),x=new n(1),g=0;f.isEven()&&u.isEven();)f.iushrn(1),u.iushrn(1),++g;for(var s=u.clone(),v=f.clone();!f.isZero();){for(var T=0,D=1;!(f.words[0]&D)&&T<26;++T,D<<=1);if(T>0)for(f.iushrn(T);T-- >0;)(c.isOdd()||p.isOdd())&&(c.iadd(s),p.isub(v)),c.iushrn(1),p.iushrn(1);for(var Y=0,Q=1;!(u.words[0]&Q)&&Y<26;++Y,Q<<=1);if(Y>0)for(u.iushrn(Y);Y-- >0;)(w.isOdd()||x.isOdd())&&(w.iadd(s),x.isub(v)),w.iushrn(1),x.iushrn(1);f.cmp(u)>=0?(f.isub(u),c.isub(w),p.isub(x)):(u.isub(f),w.isub(c),x.isub(p))}return{a:w,b:x,gcd:u.iushln(g)}},n.prototype._invmp=function(o){i(o.negative===0),i(!o.isZero());var f=this,u=o.clone();f.negative!==0?f=f.umod(o):f=f.clone();for(var c=new n(1),p=new n(0),w=u.clone();f.cmpn(1)>0&&u.cmpn(1)>0;){for(var x=0,g=1;!(f.words[0]&g)&&x<26;++x,g<<=1);if(x>0)for(f.iushrn(x);x-- >0;)c.isOdd()&&c.iadd(w),c.iushrn(1);for(var s=0,v=1;!(u.words[0]&v)&&s<26;++s,v<<=1);if(s>0)for(u.iushrn(s);s-- >0;)p.isOdd()&&p.iadd(w),p.iushrn(1);f.cmp(u)>=0?(f.isub(u),c.isub(p)):(u.isub(f),p.isub(c))}var T;return f.cmpn(1)===0?T=c:T=p,T.cmpn(0)<0&&T.iadd(o),T},n.prototype.gcd=function(o){if(this.isZero())return o.abs();if(o.isZero())return this.abs();var f=this.clone(),u=o.clone();f.negative=0,u.negative=0;for(var c=0;f.isEven()&&u.isEven();c++)f.iushrn(1),u.iushrn(1);do{for(;f.isEven();)f.iushrn(1);for(;u.isEven();)u.iushrn(1);var p=f.cmp(u);if(p<0){var w=f;f=u,u=w}else if(p===0||u.cmpn(1)===0)break;f.isub(u)}while(!0);return u.iushln(c)},n.prototype.invm=function(o){return this.egcd(o).a.umod(o)},n.prototype.isEven=function(){return(this.words[0]&1)===0},n.prototype.isOdd=function(){return(this.words[0]&1)===1},n.prototype.andln=function(o){return this.words[0]&o},n.prototype.bincn=function(o){i(typeof o=="number");var f=o%26,u=(o-f)/26,c=1<>>26,x&=67108863,this.words[w]=x}return p!==0&&(this.words[w]=p,this.length++),this},n.prototype.isZero=function(){return this.length===1&&this.words[0]===0},n.prototype.cmpn=function(o){var f=o<0;if(this.negative!==0&&!f)return-1;if(this.negative===0&&f)return 1;this.strip();var u;if(this.length>1)u=1;else{f&&(o=-o),i(o<=67108863,"Number is too big");var c=this.words[0]|0;u=c===o?0:co.length)return 1;if(this.length=0;u--){var c=this.words[u]|0,p=o.words[u]|0;if(c!==p){cp&&(f=1);break}}return f},n.prototype.gtn=function(o){return this.cmpn(o)===1},n.prototype.gt=function(o){return this.cmp(o)===1},n.prototype.gten=function(o){return this.cmpn(o)>=0},n.prototype.gte=function(o){return this.cmp(o)>=0},n.prototype.ltn=function(o){return this.cmpn(o)===-1},n.prototype.lt=function(o){return this.cmp(o)===-1},n.prototype.lten=function(o){return this.cmpn(o)<=0},n.prototype.lte=function(o){return this.cmp(o)<=0},n.prototype.eqn=function(o){return this.cmpn(o)===0},n.prototype.eq=function(o){return this.cmp(o)===0},n.red=function(o){return new K(o)},n.prototype.toRed=function(o){return i(!this.red,"Already a number in reduction context"),i(this.negative===0,"red works only with positives"),o.convertTo(this)._forceRed(o)},n.prototype.fromRed=function(){return i(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},n.prototype._forceRed=function(o){return this.red=o,this},n.prototype.forceRed=function(o){return i(!this.red,"Already a number in reduction context"),this._forceRed(o)},n.prototype.redAdd=function(o){return i(this.red,"redAdd works only with red numbers"),this.red.add(this,o)},n.prototype.redIAdd=function(o){return i(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,o)},n.prototype.redSub=function(o){return i(this.red,"redSub works only with red numbers"),this.red.sub(this,o)},n.prototype.redISub=function(o){return i(this.red,"redISub works only with red numbers"),this.red.isub(this,o)},n.prototype.redShl=function(o){return i(this.red,"redShl works only with red numbers"),this.red.shl(this,o)},n.prototype.redMul=function(o){return i(this.red,"redMul works only with red numbers"),this.red._verify2(this,o),this.red.mul(this,o)},n.prototype.redIMul=function(o){return i(this.red,"redMul works only with red numbers"),this.red._verify2(this,o),this.red.imul(this,o)},n.prototype.redSqr=function(){return i(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},n.prototype.redISqr=function(){return i(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},n.prototype.redSqrt=function(){return i(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},n.prototype.redInvm=function(){return i(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},n.prototype.redNeg=function(){return i(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},n.prototype.redPow=function(o){return i(this.red&&!o.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,o)};var N={k256:null,p224:null,p192:null,p25519:null};function $(M,o){this.name=M,this.p=new n(o,16),this.n=this.p.bitLength(),this.k=new n(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}$.prototype._tmp=function(){var o=new n(null);return o.words=new Array(Math.ceil(this.n/13)),o},$.prototype.ireduce=function(o){var f=o,u;do this.split(f,this.tmp),f=this.imulK(f),f=f.iadd(this.tmp),u=f.bitLength();while(u>this.n);var c=u0?f.isub(this.p):f.strip!==void 0?f.strip():f._strip(),f},$.prototype.split=function(o,f){o.iushrn(this.n,0,f)},$.prototype.imulK=function(o){return o.imul(this.k)};function W(){$.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}a(W,$),W.prototype.split=function(o,f){for(var u=4194303,c=Math.min(o.length,9),p=0;p>>22,w=x}w>>>=22,o.words[p-10]=w,w===0&&o.length>10?o.length-=10:o.length-=9},W.prototype.imulK=function(o){o.words[o.length]=0,o.words[o.length+1]=0,o.length+=2;for(var f=0,u=0;u>>=26,o.words[u]=p,f=c}return f!==0&&(o.words[o.length++]=f),o},n._prime=function(o){if(N[o])return N[o];var f;if(o==="k256")f=new W;else if(o==="p224")f=new G;else if(o==="p192")f=new re;else if(o==="p25519")f=new J;else throw new Error("Unknown prime "+o);return N[o]=f,f};function K(M){if(typeof M=="string"){var o=n._prime(M);this.m=o.p,this.prime=o}else i(M.gtn(1),"modulus must be greater than 1"),this.m=M,this.prime=null}K.prototype._verify1=function(o){i(o.negative===0,"red works only with positives"),i(o.red,"red works only with red numbers")},K.prototype._verify2=function(o,f){i((o.negative|f.negative)===0,"red works only with positives"),i(o.red&&o.red===f.red,"red works only with red numbers")},K.prototype.imod=function(o){return this.prime?this.prime.ireduce(o)._forceRed(this):o.umod(this.m)._forceRed(this)},K.prototype.neg=function(o){return o.isZero()?o.clone():this.m.sub(o)._forceRed(this)},K.prototype.add=function(o,f){this._verify2(o,f);var u=o.add(f);return u.cmp(this.m)>=0&&u.isub(this.m),u._forceRed(this)},K.prototype.iadd=function(o,f){this._verify2(o,f);var u=o.iadd(f);return u.cmp(this.m)>=0&&u.isub(this.m),u},K.prototype.sub=function(o,f){this._verify2(o,f);var u=o.sub(f);return u.cmpn(0)<0&&u.iadd(this.m),u._forceRed(this)},K.prototype.isub=function(o,f){this._verify2(o,f);var u=o.isub(f);return u.cmpn(0)<0&&u.iadd(this.m),u},K.prototype.shl=function(o,f){return this._verify1(o),this.imod(o.ushln(f))},K.prototype.imul=function(o,f){return this._verify2(o,f),this.imod(o.imul(f))},K.prototype.mul=function(o,f){return this._verify2(o,f),this.imod(o.mul(f))},K.prototype.isqr=function(o){return this.imul(o,o.clone())},K.prototype.sqr=function(o){return this.mul(o,o)},K.prototype.sqrt=function(o){if(o.isZero())return o.clone();var f=this.m.andln(3);if(i(f%2===1),f===3){var u=this.m.add(new n(1)).iushrn(2);return this.pow(o,u)}for(var c=this.m.subn(1),p=0;!c.isZero()&&c.andln(1)===0;)p++,c.iushrn(1);i(!c.isZero());var w=new n(1).toRed(this),x=w.redNeg(),g=this.m.subn(1).iushrn(1),s=this.m.bitLength();for(s=new n(2*s*s).toRed(this);this.pow(s,g).cmp(x)!==0;)s.redIAdd(x);for(var v=this.pow(s,c),T=this.pow(o,c.addn(1).iushrn(1)),D=this.pow(o,c),Y=p;D.cmp(w)!==0;){for(var Q=D,A=0;Q.cmp(w)!==0;A++)Q=Q.redSqr();i(A=0;p--){for(var v=f.words[p],T=s-1;T>=0;T--){var D=v>>T&1;if(w!==c[0]&&(w=this.sqr(w)),D===0&&x===0){g=0;continue}x<<=1,x|=D,g++,!(g!==u&&(p!==0||T!==0))&&(w=this.mul(w,c[x]),g=0,x=0)}s=26}return w},K.prototype.convertTo=function(o){var f=o.umod(this.m);return f===o?f.clone():f},K.prototype.convertFrom=function(o){var f=o.clone();return f.red=null,f},n.mont=function(o){return new se(o)};function se(M){K.call(this,M),this.shift=this.m.bitLength(),this.shift%26!==0&&(this.shift+=26-this.shift%26),this.r=new n(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)}a(se,K),se.prototype.convertTo=function(o){return this.imod(o.ushln(this.shift))},se.prototype.convertFrom=function(o){var f=this.imod(o.mul(this.rinv));return f.red=null,f},se.prototype.imul=function(o,f){if(o.isZero()||f.isZero())return o.words[0]=0,o.length=1,o;var u=o.imul(f),c=u.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),p=u.isub(c).iushrn(this.shift),w=p;return p.cmp(this.m)>=0?w=p.isub(this.m):p.cmpn(0)<0&&(w=p.iadd(this.m)),w._forceRed(this)},se.prototype.mul=function(o,f){if(o.isZero()||f.isZero())return new n(0)._forceRed(this);var u=o.mul(f),c=u.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),p=u.isub(c).iushrn(this.shift),w=p;return p.cmp(this.m)>=0?w=p.isub(this.m):p.cmpn(0)<0&&(w=p.iadd(this.m)),w._forceRed(this)},se.prototype.invm=function(o){var f=this.imod(o._invmp(this.m).mul(this.r2));return f._forceRed(this)}})(e,Ze)})(dm);var J4=dm.exports,pm={exports:{}};pm.exports;(function(e){(function(t,r){function i(M,o){if(!M)throw new Error(o||"Assertion failed")}function a(M,o){M.super_=o;var f=function(){};f.prototype=o.prototype,M.prototype=new f,M.prototype.constructor=M}function n(M,o,f){if(n.isBN(M))return M;this.negative=0,this.words=null,this.length=0,this.red=null,M!==null&&((o==="le"||o==="be")&&(f=o,o=10),this._init(M||0,o||10,f||"be"))}typeof t=="object"?t.exports=n:r.BN=n,n.BN=n,n.wordSize=26;var l;try{typeof window<"u"&&typeof window.Buffer<"u"?l=window.Buffer:l=Le.Buffer}catch{}n.isBN=function(o){return o instanceof n?!0:o!==null&&typeof o=="object"&&o.constructor.wordSize===n.wordSize&&Array.isArray(o.words)},n.max=function(o,f){return o.cmp(f)>0?o:f},n.min=function(o,f){return o.cmp(f)<0?o:f},n.prototype._init=function(o,f,u){if(typeof o=="number")return this._initNumber(o,f,u);if(typeof o=="object")return this._initArray(o,f,u);f==="hex"&&(f=16),i(f===(f|0)&&f>=2&&f<=36),o=o.toString().replace(/\s+/g,"");var c=0;o[0]==="-"&&(c++,this.negative=1),c=0;c-=3)w=o[c]|o[c-1]<<8|o[c-2]<<16,this.words[p]|=w<>>26-x&67108863,x+=24,x>=26&&(x-=26,p++);else if(u==="le")for(c=0,p=0;c>>26-x&67108863,x+=24,x>=26&&(x-=26,p++);return this.strip()};function h(M,o){var f=M.charCodeAt(o);return f>=65&&f<=70?f-55:f>=97&&f<=102?f-87:f-48&15}function d(M,o,f){var u=h(M,f);return f-1>=o&&(u|=h(M,f-1)<<4),u}n.prototype._parseHex=function(o,f,u){this.length=Math.ceil((o.length-f)/6),this.words=new Array(this.length);for(var c=0;c=f;c-=2)x=d(o,f,c)<=18?(p-=18,w+=1,this.words[w]|=x>>>26):p+=8;else{var g=o.length-f;for(c=g%2===0?f+1:f;c=18?(p-=18,w+=1,this.words[w]|=x>>>26):p+=8}this.strip()};function m(M,o,f,u){for(var c=0,p=Math.min(M.length,f),w=o;w=49?c+=x-49+10:x>=17?c+=x-17+10:c+=x}return c}n.prototype._parseBase=function(o,f,u){this.words=[0],this.length=1;for(var c=0,p=1;p<=67108863;p*=f)c++;c--,p=p/f|0;for(var w=o.length-u,x=w%c,g=Math.min(w,w-x)+u,s=0,v=u;v1&&this.words[this.length-1]===0;)this.length--;return this._normSign()},n.prototype._normSign=function(){return this.length===1&&this.words[0]===0&&(this.negative=0),this},n.prototype.inspect=function(){return(this.red?""};var _=["","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"],S=[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],R=[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];n.prototype.toString=function(o,f){o=o||10,f=f|0||1;var u;if(o===16||o==="hex"){u="";for(var c=0,p=0,w=0;w>>24-c&16777215,p!==0||w!==this.length-1?u=_[6-g.length]+g+u:u=g+u,c+=2,c>=26&&(c-=26,w--)}for(p!==0&&(u=p.toString(16)+u);u.length%f!==0;)u="0"+u;return this.negative!==0&&(u="-"+u),u}if(o===(o|0)&&o>=2&&o<=36){var s=S[o],v=R[o];u="";var T=this.clone();for(T.negative=0;!T.isZero();){var D=T.modn(v).toString(o);T=T.idivn(v),T.isZero()?u=D+u:u=_[s-D.length]+D+u}for(this.isZero()&&(u="0"+u);u.length%f!==0;)u="0"+u;return this.negative!==0&&(u="-"+u),u}i(!1,"Base should be between 2 and 36")},n.prototype.toNumber=function(){var o=this.words[0];return this.length===2?o+=this.words[1]*67108864:this.length===3&&this.words[2]===1?o+=4503599627370496+this.words[1]*67108864:this.length>2&&i(!1,"Number can only safely store up to 53 bits"),this.negative!==0?-o:o},n.prototype.toJSON=function(){return this.toString(16)},n.prototype.toBuffer=function(o,f){return i(typeof l<"u"),this.toArrayLike(l,o,f)},n.prototype.toArray=function(o,f){return this.toArrayLike(Array,o,f)},n.prototype.toArrayLike=function(o,f,u){var c=this.byteLength(),p=u||Math.max(1,c);i(c<=p,"byte array longer than desired length"),i(p>0,"Requested array length <= 0"),this.strip();var w=f==="le",x=new o(p),g,s,v=this.clone();if(w){for(s=0;!v.isZero();s++)g=v.andln(255),v.iushrn(8),x[s]=g;for(;s=4096&&(u+=13,f>>>=13),f>=64&&(u+=7,f>>>=7),f>=8&&(u+=4,f>>>=4),f>=2&&(u+=2,f>>>=2),u+f},n.prototype._zeroBits=function(o){if(o===0)return 26;var f=o,u=0;return f&8191||(u+=13,f>>>=13),f&127||(u+=7,f>>>=7),f&15||(u+=4,f>>>=4),f&3||(u+=2,f>>>=2),f&1||u++,u},n.prototype.bitLength=function(){var o=this.words[this.length-1],f=this._countBits(o);return(this.length-1)*26+f};function I(M){for(var o=new Array(M.bitLength()),f=0;f>>c}return o}n.prototype.zeroBits=function(){if(this.isZero())return 0;for(var o=0,f=0;fo.length?this.clone().ior(o):o.clone().ior(this)},n.prototype.uor=function(o){return this.length>o.length?this.clone().iuor(o):o.clone().iuor(this)},n.prototype.iuand=function(o){var f;this.length>o.length?f=o:f=this;for(var u=0;uo.length?this.clone().iand(o):o.clone().iand(this)},n.prototype.uand=function(o){return this.length>o.length?this.clone().iuand(o):o.clone().iuand(this)},n.prototype.iuxor=function(o){var f,u;this.length>o.length?(f=this,u=o):(f=o,u=this);for(var c=0;co.length?this.clone().ixor(o):o.clone().ixor(this)},n.prototype.uxor=function(o){return this.length>o.length?this.clone().iuxor(o):o.clone().iuxor(this)},n.prototype.inotn=function(o){i(typeof o=="number"&&o>=0);var f=Math.ceil(o/26)|0,u=o%26;this._expand(f),u>0&&f--;for(var c=0;c0&&(this.words[c]=~this.words[c]&67108863>>26-u),this.strip()},n.prototype.notn=function(o){return this.clone().inotn(o)},n.prototype.setn=function(o,f){i(typeof o=="number"&&o>=0);var u=o/26|0,c=o%26;return this._expand(u+1),f?this.words[u]=this.words[u]|1<o.length?(u=this,c=o):(u=o,c=this);for(var p=0,w=0;w>>26;for(;p!==0&&w>>26;if(this.length=u.length,p!==0)this.words[this.length]=p,this.length++;else if(u!==this)for(;wo.length?this.clone().iadd(o):o.clone().iadd(this)},n.prototype.isub=function(o){if(o.negative!==0){o.negative=0;var f=this.iadd(o);return o.negative=1,f._normSign()}else if(this.negative!==0)return this.negative=0,this.iadd(o),this.negative=1,this._normSign();var u=this.cmp(o);if(u===0)return this.negative=0,this.length=1,this.words[0]=0,this;var c,p;u>0?(c=this,p=o):(c=o,p=this);for(var w=0,x=0;x>26,this.words[x]=f&67108863;for(;w!==0&&x>26,this.words[x]=f&67108863;if(w===0&&x>>26,T=g&67108863,D=Math.min(s,o.length-1),Y=Math.max(0,s-M.length+1);Y<=D;Y++){var Q=s-Y|0;c=M.words[Q]|0,p=o.words[Y]|0,w=c*p+T,v+=w/67108864|0,T=w&67108863}f.words[s]=T|0,g=v|0}return g!==0?f.words[s]=g|0:f.length--,f.strip()}var L=function(o,f,u){var c=o.words,p=f.words,w=u.words,x=0,g,s,v,T=c[0]|0,D=T&8191,Y=T>>>13,Q=c[1]|0,A=Q&8191,E=Q>>>13,q=c[2]|0,V=q&8191,X=q>>>13,b=c[3]|0,y=b&8191,F=b>>>13,U=c[4]|0,Z=U&8191,j=U>>>13,k=c[5]|0,H=k&8191,z=k>>>13,oe=c[6]|0,ee=oe&8191,ne=oe>>>13,me=c[7]|0,he=me&8191,ue=me>>>13,xe=c[8]|0,le=xe&8191,ve=xe>>>13,ce=c[9]|0,ie=ce&8191,fe=ce>>>13,Ee=p[0]|0,de=Ee&8191,be=Ee>>>13,Ke=p[1]|0,we=Ke&8191,Se=Ke>>>13,qe=p[2]|0,ge=qe&8191,Me=qe>>>13,Ve=p[3]|0,_e=Ve&8191,Be=Ve>>>13,ot=p[4]|0,Ae=ot&8191,Ne=ot>>>13,st=p[5]|0,Pe=st&8191,De=st>>>13,ut=p[6]|0,Re=ut&8191,Fe=ut>>>13,ht=p[7]|0,Te=ht&8191,ke=ht>>>13,ct=p[8]|0,Oe=ct&8191,je=ct>>>13,ft=p[9]|0,Ie=ft&8191,$e=ft>>>13;u.negative=o.negative^f.negative,u.length=19,g=Math.imul(D,de),s=Math.imul(D,be),s=s+Math.imul(Y,de)|0,v=Math.imul(Y,be);var tt=(x+g|0)+((s&8191)<<13)|0;x=(v+(s>>>13)|0)+(tt>>>26)|0,tt&=67108863,g=Math.imul(A,de),s=Math.imul(A,be),s=s+Math.imul(E,de)|0,v=Math.imul(E,be),g=g+Math.imul(D,we)|0,s=s+Math.imul(D,Se)|0,s=s+Math.imul(Y,we)|0,v=v+Math.imul(Y,Se)|0;var et=(x+g|0)+((s&8191)<<13)|0;x=(v+(s>>>13)|0)+(et>>>26)|0,et&=67108863,g=Math.imul(V,de),s=Math.imul(V,be),s=s+Math.imul(X,de)|0,v=Math.imul(X,be),g=g+Math.imul(A,we)|0,s=s+Math.imul(A,Se)|0,s=s+Math.imul(E,we)|0,v=v+Math.imul(E,Se)|0,g=g+Math.imul(D,ge)|0,s=s+Math.imul(D,Me)|0,s=s+Math.imul(Y,ge)|0,v=v+Math.imul(Y,Me)|0;var Et=(x+g|0)+((s&8191)<<13)|0;x=(v+(s>>>13)|0)+(Et>>>26)|0,Et&=67108863,g=Math.imul(y,de),s=Math.imul(y,be),s=s+Math.imul(F,de)|0,v=Math.imul(F,be),g=g+Math.imul(V,we)|0,s=s+Math.imul(V,Se)|0,s=s+Math.imul(X,we)|0,v=v+Math.imul(X,Se)|0,g=g+Math.imul(A,ge)|0,s=s+Math.imul(A,Me)|0,s=s+Math.imul(E,ge)|0,v=v+Math.imul(E,Me)|0,g=g+Math.imul(D,_e)|0,s=s+Math.imul(D,Be)|0,s=s+Math.imul(Y,_e)|0,v=v+Math.imul(Y,Be)|0;var It=(x+g|0)+((s&8191)<<13)|0;x=(v+(s>>>13)|0)+(It>>>26)|0,It&=67108863,g=Math.imul(Z,de),s=Math.imul(Z,be),s=s+Math.imul(j,de)|0,v=Math.imul(j,be),g=g+Math.imul(y,we)|0,s=s+Math.imul(y,Se)|0,s=s+Math.imul(F,we)|0,v=v+Math.imul(F,Se)|0,g=g+Math.imul(V,ge)|0,s=s+Math.imul(V,Me)|0,s=s+Math.imul(X,ge)|0,v=v+Math.imul(X,Me)|0,g=g+Math.imul(A,_e)|0,s=s+Math.imul(A,Be)|0,s=s+Math.imul(E,_e)|0,v=v+Math.imul(E,Be)|0,g=g+Math.imul(D,Ae)|0,s=s+Math.imul(D,Ne)|0,s=s+Math.imul(Y,Ae)|0,v=v+Math.imul(Y,Ne)|0;var Pt=(x+g|0)+((s&8191)<<13)|0;x=(v+(s>>>13)|0)+(Pt>>>26)|0,Pt&=67108863,g=Math.imul(H,de),s=Math.imul(H,be),s=s+Math.imul(z,de)|0,v=Math.imul(z,be),g=g+Math.imul(Z,we)|0,s=s+Math.imul(Z,Se)|0,s=s+Math.imul(j,we)|0,v=v+Math.imul(j,Se)|0,g=g+Math.imul(y,ge)|0,s=s+Math.imul(y,Me)|0,s=s+Math.imul(F,ge)|0,v=v+Math.imul(F,Me)|0,g=g+Math.imul(V,_e)|0,s=s+Math.imul(V,Be)|0,s=s+Math.imul(X,_e)|0,v=v+Math.imul(X,Be)|0,g=g+Math.imul(A,Ae)|0,s=s+Math.imul(A,Ne)|0,s=s+Math.imul(E,Ae)|0,v=v+Math.imul(E,Ne)|0,g=g+Math.imul(D,Pe)|0,s=s+Math.imul(D,De)|0,s=s+Math.imul(Y,Pe)|0,v=v+Math.imul(Y,De)|0;var Bt=(x+g|0)+((s&8191)<<13)|0;x=(v+(s>>>13)|0)+(Bt>>>26)|0,Bt&=67108863,g=Math.imul(ee,de),s=Math.imul(ee,be),s=s+Math.imul(ne,de)|0,v=Math.imul(ne,be),g=g+Math.imul(H,we)|0,s=s+Math.imul(H,Se)|0,s=s+Math.imul(z,we)|0,v=v+Math.imul(z,Se)|0,g=g+Math.imul(Z,ge)|0,s=s+Math.imul(Z,Me)|0,s=s+Math.imul(j,ge)|0,v=v+Math.imul(j,Me)|0,g=g+Math.imul(y,_e)|0,s=s+Math.imul(y,Be)|0,s=s+Math.imul(F,_e)|0,v=v+Math.imul(F,Be)|0,g=g+Math.imul(V,Ae)|0,s=s+Math.imul(V,Ne)|0,s=s+Math.imul(X,Ae)|0,v=v+Math.imul(X,Ne)|0,g=g+Math.imul(A,Pe)|0,s=s+Math.imul(A,De)|0,s=s+Math.imul(E,Pe)|0,v=v+Math.imul(E,De)|0,g=g+Math.imul(D,Re)|0,s=s+Math.imul(D,Fe)|0,s=s+Math.imul(Y,Re)|0,v=v+Math.imul(Y,Fe)|0;var Dt=(x+g|0)+((s&8191)<<13)|0;x=(v+(s>>>13)|0)+(Dt>>>26)|0,Dt&=67108863,g=Math.imul(he,de),s=Math.imul(he,be),s=s+Math.imul(ue,de)|0,v=Math.imul(ue,be),g=g+Math.imul(ee,we)|0,s=s+Math.imul(ee,Se)|0,s=s+Math.imul(ne,we)|0,v=v+Math.imul(ne,Se)|0,g=g+Math.imul(H,ge)|0,s=s+Math.imul(H,Me)|0,s=s+Math.imul(z,ge)|0,v=v+Math.imul(z,Me)|0,g=g+Math.imul(Z,_e)|0,s=s+Math.imul(Z,Be)|0,s=s+Math.imul(j,_e)|0,v=v+Math.imul(j,Be)|0,g=g+Math.imul(y,Ae)|0,s=s+Math.imul(y,Ne)|0,s=s+Math.imul(F,Ae)|0,v=v+Math.imul(F,Ne)|0,g=g+Math.imul(V,Pe)|0,s=s+Math.imul(V,De)|0,s=s+Math.imul(X,Pe)|0,v=v+Math.imul(X,De)|0,g=g+Math.imul(A,Re)|0,s=s+Math.imul(A,Fe)|0,s=s+Math.imul(E,Re)|0,v=v+Math.imul(E,Fe)|0,g=g+Math.imul(D,Te)|0,s=s+Math.imul(D,ke)|0,s=s+Math.imul(Y,Te)|0,v=v+Math.imul(Y,ke)|0;var qt=(x+g|0)+((s&8191)<<13)|0;x=(v+(s>>>13)|0)+(qt>>>26)|0,qt&=67108863,g=Math.imul(le,de),s=Math.imul(le,be),s=s+Math.imul(ve,de)|0,v=Math.imul(ve,be),g=g+Math.imul(he,we)|0,s=s+Math.imul(he,Se)|0,s=s+Math.imul(ue,we)|0,v=v+Math.imul(ue,Se)|0,g=g+Math.imul(ee,ge)|0,s=s+Math.imul(ee,Me)|0,s=s+Math.imul(ne,ge)|0,v=v+Math.imul(ne,Me)|0,g=g+Math.imul(H,_e)|0,s=s+Math.imul(H,Be)|0,s=s+Math.imul(z,_e)|0,v=v+Math.imul(z,Be)|0,g=g+Math.imul(Z,Ae)|0,s=s+Math.imul(Z,Ne)|0,s=s+Math.imul(j,Ae)|0,v=v+Math.imul(j,Ne)|0,g=g+Math.imul(y,Pe)|0,s=s+Math.imul(y,De)|0,s=s+Math.imul(F,Pe)|0,v=v+Math.imul(F,De)|0,g=g+Math.imul(V,Re)|0,s=s+Math.imul(V,Fe)|0,s=s+Math.imul(X,Re)|0,v=v+Math.imul(X,Fe)|0,g=g+Math.imul(A,Te)|0,s=s+Math.imul(A,ke)|0,s=s+Math.imul(E,Te)|0,v=v+Math.imul(E,ke)|0,g=g+Math.imul(D,Oe)|0,s=s+Math.imul(D,je)|0,s=s+Math.imul(Y,Oe)|0,v=v+Math.imul(Y,je)|0;var Wt=(x+g|0)+((s&8191)<<13)|0;x=(v+(s>>>13)|0)+(Wt>>>26)|0,Wt&=67108863,g=Math.imul(ie,de),s=Math.imul(ie,be),s=s+Math.imul(fe,de)|0,v=Math.imul(fe,be),g=g+Math.imul(le,we)|0,s=s+Math.imul(le,Se)|0,s=s+Math.imul(ve,we)|0,v=v+Math.imul(ve,Se)|0,g=g+Math.imul(he,ge)|0,s=s+Math.imul(he,Me)|0,s=s+Math.imul(ue,ge)|0,v=v+Math.imul(ue,Me)|0,g=g+Math.imul(ee,_e)|0,s=s+Math.imul(ee,Be)|0,s=s+Math.imul(ne,_e)|0,v=v+Math.imul(ne,Be)|0,g=g+Math.imul(H,Ae)|0,s=s+Math.imul(H,Ne)|0,s=s+Math.imul(z,Ae)|0,v=v+Math.imul(z,Ne)|0,g=g+Math.imul(Z,Pe)|0,s=s+Math.imul(Z,De)|0,s=s+Math.imul(j,Pe)|0,v=v+Math.imul(j,De)|0,g=g+Math.imul(y,Re)|0,s=s+Math.imul(y,Fe)|0,s=s+Math.imul(F,Re)|0,v=v+Math.imul(F,Fe)|0,g=g+Math.imul(V,Te)|0,s=s+Math.imul(V,ke)|0,s=s+Math.imul(X,Te)|0,v=v+Math.imul(X,ke)|0,g=g+Math.imul(A,Oe)|0,s=s+Math.imul(A,je)|0,s=s+Math.imul(E,Oe)|0,v=v+Math.imul(E,je)|0,g=g+Math.imul(D,Ie)|0,s=s+Math.imul(D,$e)|0,s=s+Math.imul(Y,Ie)|0,v=v+Math.imul(Y,$e)|0;var Lt=(x+g|0)+((s&8191)<<13)|0;x=(v+(s>>>13)|0)+(Lt>>>26)|0,Lt&=67108863,g=Math.imul(ie,we),s=Math.imul(ie,Se),s=s+Math.imul(fe,we)|0,v=Math.imul(fe,Se),g=g+Math.imul(le,ge)|0,s=s+Math.imul(le,Me)|0,s=s+Math.imul(ve,ge)|0,v=v+Math.imul(ve,Me)|0,g=g+Math.imul(he,_e)|0,s=s+Math.imul(he,Be)|0,s=s+Math.imul(ue,_e)|0,v=v+Math.imul(ue,Be)|0,g=g+Math.imul(ee,Ae)|0,s=s+Math.imul(ee,Ne)|0,s=s+Math.imul(ne,Ae)|0,v=v+Math.imul(ne,Ne)|0,g=g+Math.imul(H,Pe)|0,s=s+Math.imul(H,De)|0,s=s+Math.imul(z,Pe)|0,v=v+Math.imul(z,De)|0,g=g+Math.imul(Z,Re)|0,s=s+Math.imul(Z,Fe)|0,s=s+Math.imul(j,Re)|0,v=v+Math.imul(j,Fe)|0,g=g+Math.imul(y,Te)|0,s=s+Math.imul(y,ke)|0,s=s+Math.imul(F,Te)|0,v=v+Math.imul(F,ke)|0,g=g+Math.imul(V,Oe)|0,s=s+Math.imul(V,je)|0,s=s+Math.imul(X,Oe)|0,v=v+Math.imul(X,je)|0,g=g+Math.imul(A,Ie)|0,s=s+Math.imul(A,$e)|0,s=s+Math.imul(E,Ie)|0,v=v+Math.imul(E,$e)|0;var dt=(x+g|0)+((s&8191)<<13)|0;x=(v+(s>>>13)|0)+(dt>>>26)|0,dt&=67108863,g=Math.imul(ie,ge),s=Math.imul(ie,Me),s=s+Math.imul(fe,ge)|0,v=Math.imul(fe,Me),g=g+Math.imul(le,_e)|0,s=s+Math.imul(le,Be)|0,s=s+Math.imul(ve,_e)|0,v=v+Math.imul(ve,Be)|0,g=g+Math.imul(he,Ae)|0,s=s+Math.imul(he,Ne)|0,s=s+Math.imul(ue,Ae)|0,v=v+Math.imul(ue,Ne)|0,g=g+Math.imul(ee,Pe)|0,s=s+Math.imul(ee,De)|0,s=s+Math.imul(ne,Pe)|0,v=v+Math.imul(ne,De)|0,g=g+Math.imul(H,Re)|0,s=s+Math.imul(H,Fe)|0,s=s+Math.imul(z,Re)|0,v=v+Math.imul(z,Fe)|0,g=g+Math.imul(Z,Te)|0,s=s+Math.imul(Z,ke)|0,s=s+Math.imul(j,Te)|0,v=v+Math.imul(j,ke)|0,g=g+Math.imul(y,Oe)|0,s=s+Math.imul(y,je)|0,s=s+Math.imul(F,Oe)|0,v=v+Math.imul(F,je)|0,g=g+Math.imul(V,Ie)|0,s=s+Math.imul(V,$e)|0,s=s+Math.imul(X,Ie)|0,v=v+Math.imul(X,$e)|0;var Tt=(x+g|0)+((s&8191)<<13)|0;x=(v+(s>>>13)|0)+(Tt>>>26)|0,Tt&=67108863,g=Math.imul(ie,_e),s=Math.imul(ie,Be),s=s+Math.imul(fe,_e)|0,v=Math.imul(fe,Be),g=g+Math.imul(le,Ae)|0,s=s+Math.imul(le,Ne)|0,s=s+Math.imul(ve,Ae)|0,v=v+Math.imul(ve,Ne)|0,g=g+Math.imul(he,Pe)|0,s=s+Math.imul(he,De)|0,s=s+Math.imul(ue,Pe)|0,v=v+Math.imul(ue,De)|0,g=g+Math.imul(ee,Re)|0,s=s+Math.imul(ee,Fe)|0,s=s+Math.imul(ne,Re)|0,v=v+Math.imul(ne,Fe)|0,g=g+Math.imul(H,Te)|0,s=s+Math.imul(H,ke)|0,s=s+Math.imul(z,Te)|0,v=v+Math.imul(z,ke)|0,g=g+Math.imul(Z,Oe)|0,s=s+Math.imul(Z,je)|0,s=s+Math.imul(j,Oe)|0,v=v+Math.imul(j,je)|0,g=g+Math.imul(y,Ie)|0,s=s+Math.imul(y,$e)|0,s=s+Math.imul(F,Ie)|0,v=v+Math.imul(F,$e)|0;var Mt=(x+g|0)+((s&8191)<<13)|0;x=(v+(s>>>13)|0)+(Mt>>>26)|0,Mt&=67108863,g=Math.imul(ie,Ae),s=Math.imul(ie,Ne),s=s+Math.imul(fe,Ae)|0,v=Math.imul(fe,Ne),g=g+Math.imul(le,Pe)|0,s=s+Math.imul(le,De)|0,s=s+Math.imul(ve,Pe)|0,v=v+Math.imul(ve,De)|0,g=g+Math.imul(he,Re)|0,s=s+Math.imul(he,Fe)|0,s=s+Math.imul(ue,Re)|0,v=v+Math.imul(ue,Fe)|0,g=g+Math.imul(ee,Te)|0,s=s+Math.imul(ee,ke)|0,s=s+Math.imul(ne,Te)|0,v=v+Math.imul(ne,ke)|0,g=g+Math.imul(H,Oe)|0,s=s+Math.imul(H,je)|0,s=s+Math.imul(z,Oe)|0,v=v+Math.imul(z,je)|0,g=g+Math.imul(Z,Ie)|0,s=s+Math.imul(Z,$e)|0,s=s+Math.imul(j,Ie)|0,v=v+Math.imul(j,$e)|0;var bt=(x+g|0)+((s&8191)<<13)|0;x=(v+(s>>>13)|0)+(bt>>>26)|0,bt&=67108863,g=Math.imul(ie,Pe),s=Math.imul(ie,De),s=s+Math.imul(fe,Pe)|0,v=Math.imul(fe,De),g=g+Math.imul(le,Re)|0,s=s+Math.imul(le,Fe)|0,s=s+Math.imul(ve,Re)|0,v=v+Math.imul(ve,Fe)|0,g=g+Math.imul(he,Te)|0,s=s+Math.imul(he,ke)|0,s=s+Math.imul(ue,Te)|0,v=v+Math.imul(ue,ke)|0,g=g+Math.imul(ee,Oe)|0,s=s+Math.imul(ee,je)|0,s=s+Math.imul(ne,Oe)|0,v=v+Math.imul(ne,je)|0,g=g+Math.imul(H,Ie)|0,s=s+Math.imul(H,$e)|0,s=s+Math.imul(z,Ie)|0,v=v+Math.imul(z,$e)|0;var Ct=(x+g|0)+((s&8191)<<13)|0;x=(v+(s>>>13)|0)+(Ct>>>26)|0,Ct&=67108863,g=Math.imul(ie,Re),s=Math.imul(ie,Fe),s=s+Math.imul(fe,Re)|0,v=Math.imul(fe,Fe),g=g+Math.imul(le,Te)|0,s=s+Math.imul(le,ke)|0,s=s+Math.imul(ve,Te)|0,v=v+Math.imul(ve,ke)|0,g=g+Math.imul(he,Oe)|0,s=s+Math.imul(he,je)|0,s=s+Math.imul(ue,Oe)|0,v=v+Math.imul(ue,je)|0,g=g+Math.imul(ee,Ie)|0,s=s+Math.imul(ee,$e)|0,s=s+Math.imul(ne,Ie)|0,v=v+Math.imul(ne,$e)|0;var gt=(x+g|0)+((s&8191)<<13)|0;x=(v+(s>>>13)|0)+(gt>>>26)|0,gt&=67108863,g=Math.imul(ie,Te),s=Math.imul(ie,ke),s=s+Math.imul(fe,Te)|0,v=Math.imul(fe,ke),g=g+Math.imul(le,Oe)|0,s=s+Math.imul(le,je)|0,s=s+Math.imul(ve,Oe)|0,v=v+Math.imul(ve,je)|0,g=g+Math.imul(he,Ie)|0,s=s+Math.imul(he,$e)|0,s=s+Math.imul(ue,Ie)|0,v=v+Math.imul(ue,$e)|0;var wt=(x+g|0)+((s&8191)<<13)|0;x=(v+(s>>>13)|0)+(wt>>>26)|0,wt&=67108863,g=Math.imul(ie,Oe),s=Math.imul(ie,je),s=s+Math.imul(fe,Oe)|0,v=Math.imul(fe,je),g=g+Math.imul(le,Ie)|0,s=s+Math.imul(le,$e)|0,s=s+Math.imul(ve,Ie)|0,v=v+Math.imul(ve,$e)|0;var Ft=(x+g|0)+((s&8191)<<13)|0;x=(v+(s>>>13)|0)+(Ft>>>26)|0,Ft&=67108863,g=Math.imul(ie,Ie),s=Math.imul(ie,$e),s=s+Math.imul(fe,Ie)|0,v=Math.imul(fe,$e);var jt=(x+g|0)+((s&8191)<<13)|0;return x=(v+(s>>>13)|0)+(jt>>>26)|0,jt&=67108863,w[0]=tt,w[1]=et,w[2]=Et,w[3]=It,w[4]=Pt,w[5]=Bt,w[6]=Dt,w[7]=qt,w[8]=Wt,w[9]=Lt,w[10]=dt,w[11]=Tt,w[12]=Mt,w[13]=bt,w[14]=Ct,w[15]=gt,w[16]=wt,w[17]=Ft,w[18]=jt,x!==0&&(w[19]=x,u.length++),u};Math.imul||(L=O);function B(M,o,f){f.negative=o.negative^M.negative,f.length=M.length+o.length;for(var u=0,c=0,p=0;p>>26)|0,c+=w>>>26,w&=67108863}f.words[p]=x,u=w,w=c}return u!==0?f.words[p]=u:f.length--,f.strip()}function P(M,o,f){var u=new C;return u.mulp(M,o,f)}n.prototype.mulTo=function(o,f){var u,c=this.length+o.length;return this.length===10&&o.length===10?u=L(this,o,f):c<63?u=O(this,o,f):c<1024?u=B(this,o,f):u=P(this,o,f),u};function C(M,o){this.x=M,this.y=o}C.prototype.makeRBT=function(o){for(var f=new Array(o),u=n.prototype._countBits(o)-1,c=0;c>=1;return c},C.prototype.permute=function(o,f,u,c,p,w){for(var x=0;x>>1)p++;return 1<>>13,u[2*w+1]=p&8191,p=p>>>13;for(w=2*f;w>=26,f+=c/67108864|0,f+=p>>>26,this.words[u]=p&67108863}return f!==0&&(this.words[u]=f,this.length++),this},n.prototype.muln=function(o){return this.clone().imuln(o)},n.prototype.sqr=function(){return this.mul(this)},n.prototype.isqr=function(){return this.imul(this.clone())},n.prototype.pow=function(o){var f=I(o);if(f.length===0)return new n(1);for(var u=this,c=0;c=0);var f=o%26,u=(o-f)/26,c=67108863>>>26-f<<26-f,p;if(f!==0){var w=0;for(p=0;p>>26-f}w&&(this.words[p]=w,this.length++)}if(u!==0){for(p=this.length-1;p>=0;p--)this.words[p+u]=this.words[p];for(p=0;p=0);var c;f?c=(f-f%26)/26:c=0;var p=o%26,w=Math.min((o-p)/26,this.length),x=67108863^67108863>>>p<w)for(this.length-=w,s=0;s=0&&(v!==0||s>=c);s--){var T=this.words[s]|0;this.words[s]=v<<26-p|T>>>p,v=T&x}return g&&v!==0&&(g.words[g.length++]=v),this.length===0&&(this.words[0]=0,this.length=1),this.strip()},n.prototype.ishrn=function(o,f,u){return i(this.negative===0),this.iushrn(o,f,u)},n.prototype.shln=function(o){return this.clone().ishln(o)},n.prototype.ushln=function(o){return this.clone().iushln(o)},n.prototype.shrn=function(o){return this.clone().ishrn(o)},n.prototype.ushrn=function(o){return this.clone().iushrn(o)},n.prototype.testn=function(o){i(typeof o=="number"&&o>=0);var f=o%26,u=(o-f)/26,c=1<=0);var f=o%26,u=(o-f)/26;if(i(this.negative===0,"imaskn works only with positive numbers"),this.length<=u)return this;if(f!==0&&u++,this.length=Math.min(u,this.length),f!==0){var c=67108863^67108863>>>f<=67108864;f++)this.words[f]-=67108864,f===this.length-1?this.words[f+1]=1:this.words[f+1]++;return this.length=Math.max(this.length,f+1),this},n.prototype.isubn=function(o){if(i(typeof o=="number"),i(o<67108864),o<0)return this.iaddn(-o);if(this.negative!==0)return this.negative=0,this.iaddn(o),this.negative=1,this;if(this.words[0]-=o,this.length===1&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var f=0;f>26)-(g/67108864|0),this.words[p+u]=w&67108863}for(;p>26,this.words[p+u]=w&67108863;if(x===0)return this.strip();for(i(x===-1),x=0,p=0;p>26,this.words[p]=w&67108863;return this.negative=1,this.strip()},n.prototype._wordDiv=function(o,f){var u=this.length-o.length,c=this.clone(),p=o,w=p.words[p.length-1]|0,x=this._countBits(w);u=26-x,u!==0&&(p=p.ushln(u),c.iushln(u),w=p.words[p.length-1]|0);var g=c.length-p.length,s;if(f!=="mod"){s=new n(null),s.length=g+1,s.words=new Array(s.length);for(var v=0;v=0;D--){var Y=(c.words[p.length+D]|0)*67108864+(c.words[p.length+D-1]|0);for(Y=Math.min(Y/w|0,67108863),c._ishlnsubmul(p,Y,D);c.negative!==0;)Y--,c.negative=0,c._ishlnsubmul(p,1,D),c.isZero()||(c.negative^=1);s&&(s.words[D]=Y)}return s&&s.strip(),c.strip(),f!=="div"&&u!==0&&c.iushrn(u),{div:s||null,mod:c}},n.prototype.divmod=function(o,f,u){if(i(!o.isZero()),this.isZero())return{div:new n(0),mod:new n(0)};var c,p,w;return this.negative!==0&&o.negative===0?(w=this.neg().divmod(o,f),f!=="mod"&&(c=w.div.neg()),f!=="div"&&(p=w.mod.neg(),u&&p.negative!==0&&p.iadd(o)),{div:c,mod:p}):this.negative===0&&o.negative!==0?(w=this.divmod(o.neg(),f),f!=="mod"&&(c=w.div.neg()),{div:c,mod:w.mod}):this.negative&o.negative?(w=this.neg().divmod(o.neg(),f),f!=="div"&&(p=w.mod.neg(),u&&p.negative!==0&&p.isub(o)),{div:w.div,mod:p}):o.length>this.length||this.cmp(o)<0?{div:new n(0),mod:this}:o.length===1?f==="div"?{div:this.divn(o.words[0]),mod:null}:f==="mod"?{div:null,mod:new n(this.modn(o.words[0]))}:{div:this.divn(o.words[0]),mod:new n(this.modn(o.words[0]))}:this._wordDiv(o,f)},n.prototype.div=function(o){return this.divmod(o,"div",!1).div},n.prototype.mod=function(o){return this.divmod(o,"mod",!1).mod},n.prototype.umod=function(o){return this.divmod(o,"mod",!0).mod},n.prototype.divRound=function(o){var f=this.divmod(o);if(f.mod.isZero())return f.div;var u=f.div.negative!==0?f.mod.isub(o):f.mod,c=o.ushrn(1),p=o.andln(1),w=u.cmp(c);return w<0||p===1&&w===0?f.div:f.div.negative!==0?f.div.isubn(1):f.div.iaddn(1)},n.prototype.modn=function(o){i(o<=67108863);for(var f=(1<<26)%o,u=0,c=this.length-1;c>=0;c--)u=(f*u+(this.words[c]|0))%o;return u},n.prototype.idivn=function(o){i(o<=67108863);for(var f=0,u=this.length-1;u>=0;u--){var c=(this.words[u]|0)+f*67108864;this.words[u]=c/o|0,f=c%o}return this.strip()},n.prototype.divn=function(o){return this.clone().idivn(o)},n.prototype.egcd=function(o){i(o.negative===0),i(!o.isZero());var f=this,u=o.clone();f.negative!==0?f=f.umod(o):f=f.clone();for(var c=new n(1),p=new n(0),w=new n(0),x=new n(1),g=0;f.isEven()&&u.isEven();)f.iushrn(1),u.iushrn(1),++g;for(var s=u.clone(),v=f.clone();!f.isZero();){for(var T=0,D=1;!(f.words[0]&D)&&T<26;++T,D<<=1);if(T>0)for(f.iushrn(T);T-- >0;)(c.isOdd()||p.isOdd())&&(c.iadd(s),p.isub(v)),c.iushrn(1),p.iushrn(1);for(var Y=0,Q=1;!(u.words[0]&Q)&&Y<26;++Y,Q<<=1);if(Y>0)for(u.iushrn(Y);Y-- >0;)(w.isOdd()||x.isOdd())&&(w.iadd(s),x.isub(v)),w.iushrn(1),x.iushrn(1);f.cmp(u)>=0?(f.isub(u),c.isub(w),p.isub(x)):(u.isub(f),w.isub(c),x.isub(p))}return{a:w,b:x,gcd:u.iushln(g)}},n.prototype._invmp=function(o){i(o.negative===0),i(!o.isZero());var f=this,u=o.clone();f.negative!==0?f=f.umod(o):f=f.clone();for(var c=new n(1),p=new n(0),w=u.clone();f.cmpn(1)>0&&u.cmpn(1)>0;){for(var x=0,g=1;!(f.words[0]&g)&&x<26;++x,g<<=1);if(x>0)for(f.iushrn(x);x-- >0;)c.isOdd()&&c.iadd(w),c.iushrn(1);for(var s=0,v=1;!(u.words[0]&v)&&s<26;++s,v<<=1);if(s>0)for(u.iushrn(s);s-- >0;)p.isOdd()&&p.iadd(w),p.iushrn(1);f.cmp(u)>=0?(f.isub(u),c.isub(p)):(u.isub(f),p.isub(c))}var T;return f.cmpn(1)===0?T=c:T=p,T.cmpn(0)<0&&T.iadd(o),T},n.prototype.gcd=function(o){if(this.isZero())return o.abs();if(o.isZero())return this.abs();var f=this.clone(),u=o.clone();f.negative=0,u.negative=0;for(var c=0;f.isEven()&&u.isEven();c++)f.iushrn(1),u.iushrn(1);do{for(;f.isEven();)f.iushrn(1);for(;u.isEven();)u.iushrn(1);var p=f.cmp(u);if(p<0){var w=f;f=u,u=w}else if(p===0||u.cmpn(1)===0)break;f.isub(u)}while(!0);return u.iushln(c)},n.prototype.invm=function(o){return this.egcd(o).a.umod(o)},n.prototype.isEven=function(){return(this.words[0]&1)===0},n.prototype.isOdd=function(){return(this.words[0]&1)===1},n.prototype.andln=function(o){return this.words[0]&o},n.prototype.bincn=function(o){i(typeof o=="number");var f=o%26,u=(o-f)/26,c=1<>>26,x&=67108863,this.words[w]=x}return p!==0&&(this.words[w]=p,this.length++),this},n.prototype.isZero=function(){return this.length===1&&this.words[0]===0},n.prototype.cmpn=function(o){var f=o<0;if(this.negative!==0&&!f)return-1;if(this.negative===0&&f)return 1;this.strip();var u;if(this.length>1)u=1;else{f&&(o=-o),i(o<=67108863,"Number is too big");var c=this.words[0]|0;u=c===o?0:co.length)return 1;if(this.length=0;u--){var c=this.words[u]|0,p=o.words[u]|0;if(c!==p){cp&&(f=1);break}}return f},n.prototype.gtn=function(o){return this.cmpn(o)===1},n.prototype.gt=function(o){return this.cmp(o)===1},n.prototype.gten=function(o){return this.cmpn(o)>=0},n.prototype.gte=function(o){return this.cmp(o)>=0},n.prototype.ltn=function(o){return this.cmpn(o)===-1},n.prototype.lt=function(o){return this.cmp(o)===-1},n.prototype.lten=function(o){return this.cmpn(o)<=0},n.prototype.lte=function(o){return this.cmp(o)<=0},n.prototype.eqn=function(o){return this.cmpn(o)===0},n.prototype.eq=function(o){return this.cmp(o)===0},n.red=function(o){return new K(o)},n.prototype.toRed=function(o){return i(!this.red,"Already a number in reduction context"),i(this.negative===0,"red works only with positives"),o.convertTo(this)._forceRed(o)},n.prototype.fromRed=function(){return i(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},n.prototype._forceRed=function(o){return this.red=o,this},n.prototype.forceRed=function(o){return i(!this.red,"Already a number in reduction context"),this._forceRed(o)},n.prototype.redAdd=function(o){return i(this.red,"redAdd works only with red numbers"),this.red.add(this,o)},n.prototype.redIAdd=function(o){return i(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,o)},n.prototype.redSub=function(o){return i(this.red,"redSub works only with red numbers"),this.red.sub(this,o)},n.prototype.redISub=function(o){return i(this.red,"redISub works only with red numbers"),this.red.isub(this,o)},n.prototype.redShl=function(o){return i(this.red,"redShl works only with red numbers"),this.red.shl(this,o)},n.prototype.redMul=function(o){return i(this.red,"redMul works only with red numbers"),this.red._verify2(this,o),this.red.mul(this,o)},n.prototype.redIMul=function(o){return i(this.red,"redMul works only with red numbers"),this.red._verify2(this,o),this.red.imul(this,o)},n.prototype.redSqr=function(){return i(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},n.prototype.redISqr=function(){return i(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},n.prototype.redSqrt=function(){return i(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},n.prototype.redInvm=function(){return i(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},n.prototype.redNeg=function(){return i(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},n.prototype.redPow=function(o){return i(this.red&&!o.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,o)};var N={k256:null,p224:null,p192:null,p25519:null};function $(M,o){this.name=M,this.p=new n(o,16),this.n=this.p.bitLength(),this.k=new n(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}$.prototype._tmp=function(){var o=new n(null);return o.words=new Array(Math.ceil(this.n/13)),o},$.prototype.ireduce=function(o){var f=o,u;do this.split(f,this.tmp),f=this.imulK(f),f=f.iadd(this.tmp),u=f.bitLength();while(u>this.n);var c=u0?f.isub(this.p):f.strip!==void 0?f.strip():f._strip(),f},$.prototype.split=function(o,f){o.iushrn(this.n,0,f)},$.prototype.imulK=function(o){return o.imul(this.k)};function W(){$.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}a(W,$),W.prototype.split=function(o,f){for(var u=4194303,c=Math.min(o.length,9),p=0;p>>22,w=x}w>>>=22,o.words[p-10]=w,w===0&&o.length>10?o.length-=10:o.length-=9},W.prototype.imulK=function(o){o.words[o.length]=0,o.words[o.length+1]=0,o.length+=2;for(var f=0,u=0;u>>=26,o.words[u]=p,f=c}return f!==0&&(o.words[o.length++]=f),o},n._prime=function(o){if(N[o])return N[o];var f;if(o==="k256")f=new W;else if(o==="p224")f=new G;else if(o==="p192")f=new re;else if(o==="p25519")f=new J;else throw new Error("Unknown prime "+o);return N[o]=f,f};function K(M){if(typeof M=="string"){var o=n._prime(M);this.m=o.p,this.prime=o}else i(M.gtn(1),"modulus must be greater than 1"),this.m=M,this.prime=null}K.prototype._verify1=function(o){i(o.negative===0,"red works only with positives"),i(o.red,"red works only with red numbers")},K.prototype._verify2=function(o,f){i((o.negative|f.negative)===0,"red works only with positives"),i(o.red&&o.red===f.red,"red works only with red numbers")},K.prototype.imod=function(o){return this.prime?this.prime.ireduce(o)._forceRed(this):o.umod(this.m)._forceRed(this)},K.prototype.neg=function(o){return o.isZero()?o.clone():this.m.sub(o)._forceRed(this)},K.prototype.add=function(o,f){this._verify2(o,f);var u=o.add(f);return u.cmp(this.m)>=0&&u.isub(this.m),u._forceRed(this)},K.prototype.iadd=function(o,f){this._verify2(o,f);var u=o.iadd(f);return u.cmp(this.m)>=0&&u.isub(this.m),u},K.prototype.sub=function(o,f){this._verify2(o,f);var u=o.sub(f);return u.cmpn(0)<0&&u.iadd(this.m),u._forceRed(this)},K.prototype.isub=function(o,f){this._verify2(o,f);var u=o.isub(f);return u.cmpn(0)<0&&u.iadd(this.m),u},K.prototype.shl=function(o,f){return this._verify1(o),this.imod(o.ushln(f))},K.prototype.imul=function(o,f){return this._verify2(o,f),this.imod(o.imul(f))},K.prototype.mul=function(o,f){return this._verify2(o,f),this.imod(o.mul(f))},K.prototype.isqr=function(o){return this.imul(o,o.clone())},K.prototype.sqr=function(o){return this.mul(o,o)},K.prototype.sqrt=function(o){if(o.isZero())return o.clone();var f=this.m.andln(3);if(i(f%2===1),f===3){var u=this.m.add(new n(1)).iushrn(2);return this.pow(o,u)}for(var c=this.m.subn(1),p=0;!c.isZero()&&c.andln(1)===0;)p++,c.iushrn(1);i(!c.isZero());var w=new n(1).toRed(this),x=w.redNeg(),g=this.m.subn(1).iushrn(1),s=this.m.bitLength();for(s=new n(2*s*s).toRed(this);this.pow(s,g).cmp(x)!==0;)s.redIAdd(x);for(var v=this.pow(s,c),T=this.pow(o,c.addn(1).iushrn(1)),D=this.pow(o,c),Y=p;D.cmp(w)!==0;){for(var Q=D,A=0;Q.cmp(w)!==0;A++)Q=Q.redSqr();i(A=0;p--){for(var v=f.words[p],T=s-1;T>=0;T--){var D=v>>T&1;if(w!==c[0]&&(w=this.sqr(w)),D===0&&x===0){g=0;continue}x<<=1,x|=D,g++,!(g!==u&&(p!==0||T!==0))&&(w=this.mul(w,c[x]),g=0,x=0)}s=26}return w},K.prototype.convertTo=function(o){var f=o.umod(this.m);return f===o?f.clone():f},K.prototype.convertFrom=function(o){var f=o.clone();return f.red=null,f},n.mont=function(o){return new se(o)};function se(M){K.call(this,M),this.shift=this.m.bitLength(),this.shift%26!==0&&(this.shift+=26-this.shift%26),this.r=new n(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)}a(se,K),se.prototype.convertTo=function(o){return this.imod(o.ushln(this.shift))},se.prototype.convertFrom=function(o){var f=this.imod(o.mul(this.rinv));return f.red=null,f},se.prototype.imul=function(o,f){if(o.isZero()||f.isZero())return o.words[0]=0,o.length=1,o;var u=o.imul(f),c=u.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),p=u.isub(c).iushrn(this.shift),w=p;return p.cmp(this.m)>=0?w=p.isub(this.m):p.cmpn(0)<0&&(w=p.iadd(this.m)),w._forceRed(this)},se.prototype.mul=function(o,f){if(o.isZero()||f.isZero())return new n(0)._forceRed(this);var u=o.mul(f),c=u.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),p=u.isub(c).iushrn(this.shift),w=p;return p.cmp(this.m)>=0?w=p.isub(this.m):p.cmpn(0)<0&&(w=p.iadd(this.m)),w._forceRed(this)},se.prototype.invm=function(o){var f=this.imod(o._invmp(this.m).mul(this.r2));return f._forceRed(this)}})(e,Ze)})(pm);var zW=pm.exports,vu={exports:{}},Jw;function vm(){if(Jw)return vu.exports;Jw=1;var e;vu.exports=function(a){return e||(e=new t(null)),e.generate(a)};function t(i){this.rand=i}if(vu.exports.Rand=t,t.prototype.generate=function(a){return this._rand(a)},t.prototype._rand=function(a){if(this.rand.getBytes)return this.rand.getBytes(a);for(var n=new Uint8Array(a),l=0;l=0);return h},r.prototype._randrange=function(a,n){var l=n.sub(a);return a.add(this._randbelow(l))},r.prototype.test=function(a,n,l){var h=a.bitLength(),d=e.mont(a),m=new e(1).toRed(d);n||(n=Math.max(1,h/48|0));for(var _=a.subn(1),S=0;!_.testn(S);S++);for(var R=a.shrn(S),I=_.toRed(d),O=!0;n>0;n--){var L=this._randrange(new e(2),_);l&&l(L);var B=L.toRed(d).redPow(R);if(!(B.cmp(m)===0||B.cmp(I)===0)){for(var P=1;P0;n--){var I=this._randrange(new e(2),m),O=a.gcd(I);if(O.cmpn(1)!==0)return O;var L=I.toRed(h).redPow(S);if(!(L.cmp(d)===0||L.cmp(R)===0)){for(var B=1;B<_;B++){if(L=L.redSqr(),L.cmp(d)===0)return L.fromRed().subn(1).gcd(a);if(L.cmp(R)===0)break}if(B===_)return L=L.redSqr(),L.fromRed().subn(1).gcd(a)}}return!1},j0}var U0,e2;function eE(){if(e2)return U0;e2=1;var e=rf;U0=B,B.simpleSieve=O,B.fermatTest=L;var t=J4,r=new t(24),i=Q4(),a=new i,n=new t(1),l=new t(2),h=new t(5);new t(16),new t(8);var d=new t(10),m=new t(3);new t(7);var _=new t(11),S=new t(4);new t(12);var R=null;function I(){if(R!==null)return R;var P=1048576,C=[];C[0]=2;for(var N=1,$=3;$P;)N.ishrn(1);if(N.isEven()&&N.iadd(n),N.testn(1)||N.iadd(l),C.cmp(l)){if(!C.cmp(h))for(;N.mod(d).cmp(m);)N.iadd(S)}else for(;N.mod(r).cmp(_);)N.iadd(S);if($=N.shrn(1),O($)&&O(N)&&L($)&&L(N)&&a.test($)&&a.test(N))return N}}return U0}const GW={gen:"02",prime:"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a63a3620ffffffffffffffff"},YW={gen:"02",prime:"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece65381ffffffffffffffff"},ZW={gen:"02",prime:"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca237327ffffffffffffffff"},XW={gen:"02",prime:"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca18217c32905e462e36ce3be39e772c180e86039b2783a2ec07a28fb5c55df06f4c52c9de2bcbf6955817183995497cea956ae515d2261898fa051015728e5a8aacaa68ffffffffffffffff"},JW={gen:"02",prime:"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca18217c32905e462e36ce3be39e772c180e86039b2783a2ec07a28fb5c55df06f4c52c9de2bcbf6955817183995497cea956ae515d2261898fa051015728e5a8aaac42dad33170d04507a33a85521abdf1cba64ecfb850458dbef0a8aea71575d060c7db3970f85a6e1e4c7abf5ae8cdb0933d71e8c94e04a25619dcee3d2261ad2ee6bf12ffa06d98a0864d87602733ec86a64521f2b18177b200cbbe117577a615d6c770988c0bad946e208e24fa074e5ab3143db5bfce0fd108e4b82d120a93ad2caffffffffffffffff"},QW={gen:"02",prime:"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca18217c32905e462e36ce3be39e772c180e86039b2783a2ec07a28fb5c55df06f4c52c9de2bcbf6955817183995497cea956ae515d2261898fa051015728e5a8aaac42dad33170d04507a33a85521abdf1cba64ecfb850458dbef0a8aea71575d060c7db3970f85a6e1e4c7abf5ae8cdb0933d71e8c94e04a25619dcee3d2261ad2ee6bf12ffa06d98a0864d87602733ec86a64521f2b18177b200cbbe117577a615d6c770988c0bad946e208e24fa074e5ab3143db5bfce0fd108e4b82d120a92108011a723c12a787e6d788719a10bdba5b2699c327186af4e23c1a946834b6150bda2583e9ca2ad44ce8dbbbc2db04de8ef92e8efc141fbecaa6287c59474e6bc05d99b2964fa090c3a2233ba186515be7ed1f612970cee2d7afb81bdd762170481cd0069127d5b05aa993b4ea988d8fddc186ffb7dc90a6c08f4df435c934063199ffffffffffffffff"},eK={gen:"02",prime:"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca18217c32905e462e36ce3be39e772c180e86039b2783a2ec07a28fb5c55df06f4c52c9de2bcbf6955817183995497cea956ae515d2261898fa051015728e5a8aaac42dad33170d04507a33a85521abdf1cba64ecfb850458dbef0a8aea71575d060c7db3970f85a6e1e4c7abf5ae8cdb0933d71e8c94e04a25619dcee3d2261ad2ee6bf12ffa06d98a0864d87602733ec86a64521f2b18177b200cbbe117577a615d6c770988c0bad946e208e24fa074e5ab3143db5bfce0fd108e4b82d120a92108011a723c12a787e6d788719a10bdba5b2699c327186af4e23c1a946834b6150bda2583e9ca2ad44ce8dbbbc2db04de8ef92e8efc141fbecaa6287c59474e6bc05d99b2964fa090c3a2233ba186515be7ed1f612970cee2d7afb81bdd762170481cd0069127d5b05aa993b4ea988d8fddc186ffb7dc90a6c08f4df435c93402849236c3fab4d27c7026c1d4dcb2602646dec9751e763dba37bdf8ff9406ad9e530ee5db382f413001aeb06a53ed9027d831179727b0865a8918da3edbebcf9b14ed44ce6cbaced4bb1bdb7f1447e6cc254b332051512bd7af426fb8f401378cd2bf5983ca01c64b92ecf032ea15d1721d03f482d7ce6e74fef6d55e702f46980c82b5a84031900b1c9e59e7c97fbec7e8f323a97a7e36cc88be0f1d45b7ff585ac54bd407b22b4154aacc8f6d7ebf48e1d814cc5ed20f8037e0a79715eef29be32806a1d58bb7c5da76f550aa3d8a1fbff0eb19ccb1a313d55cda56c9ec2ef29632387fe8d76e3c0468043e8f663f4860ee12bf2d5b0b7474d6e694f91e6dcc4024ffffffffffffffff"},tK={gen:"02",prime:"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca18217c32905e462e36ce3be39e772c180e86039b2783a2ec07a28fb5c55df06f4c52c9de2bcbf6955817183995497cea956ae515d2261898fa051015728e5a8aaac42dad33170d04507a33a85521abdf1cba64ecfb850458dbef0a8aea71575d060c7db3970f85a6e1e4c7abf5ae8cdb0933d71e8c94e04a25619dcee3d2261ad2ee6bf12ffa06d98a0864d87602733ec86a64521f2b18177b200cbbe117577a615d6c770988c0bad946e208e24fa074e5ab3143db5bfce0fd108e4b82d120a92108011a723c12a787e6d788719a10bdba5b2699c327186af4e23c1a946834b6150bda2583e9ca2ad44ce8dbbbc2db04de8ef92e8efc141fbecaa6287c59474e6bc05d99b2964fa090c3a2233ba186515be7ed1f612970cee2d7afb81bdd762170481cd0069127d5b05aa993b4ea988d8fddc186ffb7dc90a6c08f4df435c93402849236c3fab4d27c7026c1d4dcb2602646dec9751e763dba37bdf8ff9406ad9e530ee5db382f413001aeb06a53ed9027d831179727b0865a8918da3edbebcf9b14ed44ce6cbaced4bb1bdb7f1447e6cc254b332051512bd7af426fb8f401378cd2bf5983ca01c64b92ecf032ea15d1721d03f482d7ce6e74fef6d55e702f46980c82b5a84031900b1c9e59e7c97fbec7e8f323a97a7e36cc88be0f1d45b7ff585ac54bd407b22b4154aacc8f6d7ebf48e1d814cc5ed20f8037e0a79715eef29be32806a1d58bb7c5da76f550aa3d8a1fbff0eb19ccb1a313d55cda56c9ec2ef29632387fe8d76e3c0468043e8f663f4860ee12bf2d5b0b7474d6e694f91e6dbe115974a3926f12fee5e438777cb6a932df8cd8bec4d073b931ba3bc832b68d9dd300741fa7bf8afc47ed2576f6936ba424663aab639c5ae4f5683423b4742bf1c978238f16cbe39d652de3fdb8befc848ad922222e04a4037c0713eb57a81a23f0c73473fc646cea306b4bcbc8862f8385ddfa9d4b7fa2c087e879683303ed5bdd3a062b3cf5b3a278a66d2a13f83f44f82ddf310ee074ab6a364597e899a0255dc164f31cc50846851df9ab48195ded7ea1b1d510bd7ee74d73faf36bc31ecfa268359046f4eb879f924009438b481c6cd7889a002ed5ee382bc9190da6fc026e479558e4475677e9aa9e3050e2765694dfc81f56e880b96e7160c980dd98edd3dfffffffffffffffff"},rK={modp1:GW,modp2:YW,modp5:ZW,modp14:XW,modp15:JW,modp16:QW,modp17:eK,modp18:tK};var H0,t2;function iK(){if(t2)return H0;t2=1;var e=J4,t=Q4(),r=new t,i=new e(24),a=new e(11),n=new e(10),l=new e(3),h=new e(7),d=eE(),m=rf;H0=O;function _(B,P){return P=P||"utf8",Le.Buffer.isBuffer(B)||(B=new Le.Buffer(B,P)),this._pub=new e(B),this}function S(B,P){return P=P||"utf8",Le.Buffer.isBuffer(B)||(B=new Le.Buffer(B,P)),this._priv=new e(B),this}var R={};function I(B,P){var C=P.toString("hex"),N=[C,B.toString(16)].join("_");if(N in R)return R[N];var $=0;if(B.isEven()||!d.simpleSieve||!d.fermatTest(B)||!r.test(B))return $+=1,C==="02"||C==="05"?$+=8:$+=4,R[N]=$,$;r.test(B.shrn(1))||($+=2);var W;switch(C){case"02":B.mod(i).cmp(a)&&($+=8);break;case"05":W=B.mod(n),W.cmp(l)&&W.cmp(h)&&($+=8);break;default:$+=4}return R[N]=$,$}function O(B,P,C){this.setGenerator(P),this.__prime=new e(B),this._prime=e.mont(this.__prime),this._primeLen=B.length,this._pub=void 0,this._priv=void 0,this._primeCode=void 0,C?(this.setPublicKey=_,this.setPrivateKey=S):this._primeCode=8}Object.defineProperty(O.prototype,"verifyError",{enumerable:!0,get:function(){return typeof this._primeCode!="number"&&(this._primeCode=I(this.__prime,this.__gen)),this._primeCode}}),O.prototype.generateKeys=function(){return this._priv||(this._priv=new e(m(this._primeLen))),this._pub=this._gen.toRed(this._prime).redPow(this._priv).fromRed(),this.getPublicKey()},O.prototype.computeSecret=function(B){B=new e(B),B=B.toRed(this._prime);var P=B.redPow(this._priv).fromRed(),C=new Le.Buffer(P.toArray()),N=this.getPrime();if(C.length0?this.tail.next=P:this.head=P,this.tail=P,++this.length}},{key:"unshift",value:function(B){var P={data:B,next:this.head};this.length===0&&(this.tail=P),this.head=P,++this.length}},{key:"shift",value:function(){if(this.length!==0){var B=this.head.data;return this.length===1?this.head=this.tail=null:this.head=this.head.next,--this.length,B}}},{key:"clear",value:function(){this.head=this.tail=null,this.length=0}},{key:"join",value:function(B){if(this.length===0)return"";for(var P=this.head,C=""+P.data;P=P.next;)C+=B+P.data;return C}},{key:"concat",value:function(B){if(this.length===0)return m.alloc(0);for(var P=m.allocUnsafe(B>>>0),C=this.head,N=0;C;)I(C.data,P,N),N+=C.data.length,C=C.next;return P}},{key:"consume",value:function(B,P){var C;return B$.length?$.length:B;if(W===$.length?N+=$:N+=$.slice(0,B),B-=W,B===0){W===$.length?(++C,P.next?this.head=P.next:this.head=this.tail=null):(this.head=P,P.data=$.slice(W));break}++C}return this.length-=C,N}},{key:"_getBuffer",value:function(B){var P=m.allocUnsafe(B),C=this.head,N=1;for(C.data.copy(P),B-=C.data.length;C=C.next;){var $=C.data,W=B>$.length?$.length:B;if($.copy(P,P.length-B,0,W),B-=W,B===0){W===$.length?(++N,C.next?this.head=C.next:this.head=this.tail=null):(this.head=C,C.data=$.slice(W));break}++N}return this.length-=N,P}},{key:R,value:function(B,P){return S(this,t(t({},P),{},{depth:0,customInspect:!1}))}}]),O}(),q0}function aK(e,t){var r=this,i=this._readableState&&this._readableState.destroyed,a=this._writableState&&this._writableState.destroyed;return i||a?(t?t(e):e&&(this._writableState?this._writableState.errorEmitted||(this._writableState.errorEmitted=!0,ye.nextTick(Ov,this,e)):ye.nextTick(Ov,this,e)),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(e||null,function(n){!t&&n?r._writableState?r._writableState.errorEmitted?ye.nextTick(ju,r):(r._writableState.errorEmitted=!0,ye.nextTick(n2,r,n)):ye.nextTick(n2,r,n):t?(ye.nextTick(ju,r),t(n)):ye.nextTick(ju,r)}),this)}function n2(e,t){Ov(e,t),ju(e)}function ju(e){e._writableState&&!e._writableState.emitClose||e._readableState&&!e._readableState.emitClose||e.emit("close")}function sK(){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.finalCalled=!1,this._writableState.prefinished=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)}function Ov(e,t){e.emit("error",t)}function fK(e,t){var r=e._readableState,i=e._writableState;r&&r.autoDestroy||i&&i.autoDestroy?e.destroy(t):e.emit("error",t)}var rE={destroy:aK,undestroy:sK,errorOrDestroy:fK},Ha={};function lK(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,e.__proto__=t}var iE={};function Li(e,t,r){r||(r=Error);function i(n,l,h){return typeof t=="string"?t:t(n,l,h)}var a=function(n){lK(l,n);function l(h,d,m){return n.call(this,i(h,d,m))||this}return l}(r);a.prototype.name=r.name,a.prototype.code=e,iE[e]=a}function o2(e,t){if(Array.isArray(e)){var r=e.length;return e=e.map(function(i){return String(i)}),r>2?"one of ".concat(t," ").concat(e.slice(0,r-1).join(", "),", or ")+e[r-1]:r===2?"one of ".concat(t," ").concat(e[0]," or ").concat(e[1]):"of ".concat(t," ").concat(e[0])}else return"of ".concat(t," ").concat(String(e))}function uK(e,t,r){return e.substr(!r||r<0?0:+r,t.length)===t}function hK(e,t,r){return(r===void 0||r>e.length)&&(r=e.length),e.substring(r-t.length,r)===t}function cK(e,t,r){return typeof r!="number"&&(r=0),r+t.length>e.length?!1:e.indexOf(t,r)!==-1}Li("ERR_INVALID_OPT_VALUE",function(e,t){return'The value "'+t+'" is invalid for option "'+e+'"'},TypeError);Li("ERR_INVALID_ARG_TYPE",function(e,t,r){var i;typeof t=="string"&&uK(t,"not ")?(i="must not be",t=t.replace(/^not /,"")):i="must be";var a;if(hK(e," argument"))a="The ".concat(e," ").concat(i," ").concat(o2(t,"type"));else{var n=cK(e,".")?"property":"argument";a='The "'.concat(e,'" ').concat(n," ").concat(i," ").concat(o2(t,"type"))}return a+=". Received type ".concat(typeof r),a},TypeError);Li("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF");Li("ERR_METHOD_NOT_IMPLEMENTED",function(e){return"The "+e+" method is not implemented"});Li("ERR_STREAM_PREMATURE_CLOSE","Premature close");Li("ERR_STREAM_DESTROYED",function(e){return"Cannot call "+e+" after a stream was destroyed"});Li("ERR_MULTIPLE_CALLBACK","Callback called multiple times");Li("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable");Li("ERR_STREAM_WRITE_AFTER_END","write after end");Li("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError);Li("ERR_UNKNOWN_ENCODING",function(e){return"Unknown encoding: "+e},TypeError);Li("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event");Ha.codes=iE;var dK=Ha.codes.ERR_INVALID_OPT_VALUE;function pK(e,t,r){return e.highWaterMark!=null?e.highWaterMark:t?e[r]:null}function vK(e,t,r,i){var a=pK(t,i,r);if(a!=null){if(!(isFinite(a)&&Math.floor(a)===a)||a<0){var n=i?r:"highWaterMark";throw new dK(n,a)}return Math.floor(a)}return e.objectMode?16:16*1024}var nE={getHighWaterMark:vK},W0,a2;function oE(){if(a2)return W0;a2=1,W0=J;function e(A){var E=this;this.next=null,this.entry=null,this.finish=function(){Q(E,A)}}var t;J.WritableState=G;var r={deprecate:ef},i=tE,a=Le.Buffer,n=(typeof Ze<"u"?Ze:typeof window<"u"?window:typeof self<"u"?self:{}).Uint8Array||function(){};function l(A){return a.from(A)}function h(A){return a.isBuffer(A)||A instanceof n}var d=rE,m=nE,_=m.getHighWaterMark,S=Ha.codes,R=S.ERR_INVALID_ARG_TYPE,I=S.ERR_METHOD_NOT_IMPLEMENTED,O=S.ERR_MULTIPLE_CALLBACK,L=S.ERR_STREAM_CANNOT_PIPE,B=S.ERR_STREAM_DESTROYED,P=S.ERR_STREAM_NULL_VALUES,C=S.ERR_STREAM_WRITE_AFTER_END,N=S.ERR_UNKNOWN_ENCODING,$=d.errorOrDestroy;Ye(J,i);function W(){}function G(A,E,q){t=t||Us(),A=A||{},typeof q!="boolean"&&(q=E instanceof t),this.objectMode=!!A.objectMode,q&&(this.objectMode=this.objectMode||!!A.writableObjectMode),this.highWaterMark=_(this,A,"writableHighWaterMark",q),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var V=A.decodeStrings===!1;this.decodeStrings=!V,this.defaultEncoding=A.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(X){p(E,X)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.emitClose=A.emitClose!==!1,this.autoDestroy=!!A.autoDestroy,this.bufferedRequestCount=0,this.corkedRequestsFree=new e(this)}G.prototype.getBuffer=function(){for(var E=this.bufferedRequest,q=[];E;)q.push(E),E=E.next;return q},function(){try{Object.defineProperty(G.prototype,"buffer",{get:r.deprecate(function(){return this.getBuffer()},"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch{}}();var re;typeof Symbol=="function"&&Symbol.hasInstance&&typeof Function.prototype[Symbol.hasInstance]=="function"?(re=Function.prototype[Symbol.hasInstance],Object.defineProperty(J,Symbol.hasInstance,{value:function(E){return re.call(this,E)?!0:this!==J?!1:E&&E._writableState instanceof G}})):re=function(E){return E instanceof this};function J(A){t=t||Us();var E=this instanceof t;if(!E&&!re.call(J,this))return new J(A);this._writableState=new G(A,this,E),this.writable=!0,A&&(typeof A.write=="function"&&(this._write=A.write),typeof A.writev=="function"&&(this._writev=A.writev),typeof A.destroy=="function"&&(this._destroy=A.destroy),typeof A.final=="function"&&(this._final=A.final)),i.call(this)}J.prototype.pipe=function(){$(this,new L)};function K(A,E){var q=new C;$(A,q),ye.nextTick(E,q)}function se(A,E,q,V){var X;return q===null?X=new P:typeof q!="string"&&!E.objectMode&&(X=new R("chunk",["string","Buffer"],q)),X?($(A,X),ye.nextTick(V,X),!1):!0}J.prototype.write=function(A,E,q){var V=this._writableState,X=!1,b=!V.objectMode&&h(A);return b&&!a.isBuffer(A)&&(A=l(A)),typeof E=="function"&&(q=E,E=null),b?E="buffer":E||(E=V.defaultEncoding),typeof q!="function"&&(q=W),V.ending?K(this,q):(b||se(this,V,A,q))&&(V.pendingcb++,X=o(this,V,b,A,E,q)),X},J.prototype.cork=function(){this._writableState.corked++},J.prototype.uncork=function(){var A=this._writableState;A.corked&&(A.corked--,!A.writing&&!A.corked&&!A.bufferProcessing&&A.bufferedRequest&&g(this,A))},J.prototype.setDefaultEncoding=function(E){if(typeof E=="string"&&(E=E.toLowerCase()),!(["hex","utf8","utf-8","ascii","binary","base64","ucs2","ucs-2","utf16le","utf-16le","raw"].indexOf((E+"").toLowerCase())>-1))throw new N(E);return this._writableState.defaultEncoding=E,this},Object.defineProperty(J.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}});function M(A,E,q){return!A.objectMode&&A.decodeStrings!==!1&&typeof E=="string"&&(E=a.from(E,q)),E}Object.defineProperty(J.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}});function o(A,E,q,V,X,b){if(!q){var y=M(E,V,X);V!==y&&(q=!0,X="buffer",V=y)}var F=E.objectMode?1:V.length;E.length+=F;var U=E.length0)if(typeof y!="string"&&!j.objectMode&&Object.getPrototypeOf(y)!==i.prototype&&(y=n(y)),U)j.endEmitted?W(b,new P):M(b,j,y,!0);else if(j.ended)W(b,new L);else{if(j.destroyed)return!1;j.reading=!1,j.decoder&&!F?(y=j.decoder.write(y),j.objectMode||y.length!==0?M(b,j,y,!1):g(b,j)):M(b,j,y,!1)}else U||(j.reading=!1,g(b,j))}return!j.ended&&(j.length=f?b=f:(b--,b|=b>>>1,b|=b>>>2,b|=b>>>4,b|=b>>>8,b|=b>>>16,b++),b}function c(b,y){return b<=0||y.length===0&&y.ended?0:y.objectMode?1:b!==b?y.flowing&&y.length?y.buffer.head.data.length:y.length:(b>y.highWaterMark&&(y.highWaterMark=u(b)),b<=y.length?b:y.ended?y.length:(y.needReadable=!0,0))}K.prototype.read=function(b){d("read",b),b=parseInt(b,10);var y=this._readableState,F=b;if(b!==0&&(y.emittedReadable=!1),b===0&&y.needReadable&&((y.highWaterMark!==0?y.length>=y.highWaterMark:y.length>0)||y.ended))return d("read: emitReadable",y.length,y.ended),y.length===0&&y.ended?q(this):w(this),null;if(b=c(b,y),b===0&&y.ended)return y.length===0&&q(this),null;var U=y.needReadable;d("need readable",U),(y.length===0||y.length-b0?Z=E(b,y):Z=null,Z===null?(y.needReadable=y.length<=y.highWaterMark,b=0):(y.length-=b,y.awaitDrain=0),y.length===0&&(y.ended||(y.needReadable=!0),F!==b&&y.ended&&q(this)),Z!==null&&this.emit("data",Z),Z};function p(b,y){if(d("onEofChunk"),!y.ended){if(y.decoder){var F=y.decoder.end();F&&F.length&&(y.buffer.push(F),y.length+=y.objectMode?1:F.length)}y.ended=!0,y.sync?w(b):(y.needReadable=!1,y.emittedReadable||(y.emittedReadable=!0,x(b)))}}function w(b){var y=b._readableState;d("emitReadable",y.needReadable,y.emittedReadable),y.needReadable=!1,y.emittedReadable||(d("emitReadable",y.flowing),y.emittedReadable=!0,ye.nextTick(x,b))}function x(b){var y=b._readableState;d("emitReadable_",y.destroyed,y.length,y.ended),!y.destroyed&&(y.length||y.ended)&&(b.emit("readable"),y.emittedReadable=!1),y.needReadable=!y.flowing&&!y.ended&&y.length<=y.highWaterMark,A(b)}function g(b,y){y.readingMore||(y.readingMore=!0,ye.nextTick(s,b,y))}function s(b,y){for(;!y.reading&&!y.ended&&(y.length1&&X(U.pipes,b)!==-1)&&!oe&&(d("false write response, pause",U.awaitDrain),U.awaitDrain++),F.pause())}function me(le){d("onerror",le),xe(),b.removeListener("error",me),t(b,"error")===0&&W(b,le)}re(b,"error",me);function he(){b.removeListener("finish",ue),xe()}b.once("close",he);function ue(){d("onfinish"),b.removeListener("close",he),xe()}b.once("finish",ue);function xe(){d("unpipe"),F.unpipe(b)}return b.emit("pipe",F),U.flowing||(d("pipe resume"),F.resume()),b};function v(b){return function(){var F=b._readableState;d("pipeOnDrain",F.awaitDrain),F.awaitDrain&&F.awaitDrain--,F.awaitDrain===0&&t(b,"data")&&(F.flowing=!0,A(b))}}K.prototype.unpipe=function(b){var y=this._readableState,F={hasUnpiped:!1};if(y.pipesCount===0)return this;if(y.pipesCount===1)return b&&b!==y.pipes?this:(b||(b=y.pipes),y.pipes=null,y.pipesCount=0,y.flowing=!1,b&&b.emit("unpipe",this,F),this);if(!b){var U=y.pipes,Z=y.pipesCount;y.pipes=null,y.pipesCount=0,y.flowing=!1;for(var j=0;j0,U.flowing!==!1&&this.resume()):b==="readable"&&!U.endEmitted&&!U.readableListening&&(U.readableListening=U.needReadable=!0,U.flowing=!1,U.emittedReadable=!1,d("on readable",U.length,U.reading),U.length?w(this):U.reading||ye.nextTick(D,this)),F},K.prototype.addListener=K.prototype.on,K.prototype.removeListener=function(b,y){var F=r.prototype.removeListener.call(this,b,y);return b==="readable"&&ye.nextTick(T,this),F},K.prototype.removeAllListeners=function(b){var y=r.prototype.removeAllListeners.apply(this,arguments);return(b==="readable"||b===void 0)&&ye.nextTick(T,this),y};function T(b){var y=b._readableState;y.readableListening=b.listenerCount("readable")>0,y.resumeScheduled&&!y.paused?y.flowing=!0:b.listenerCount("data")>0&&b.resume()}function D(b){d("readable nexttick read 0"),b.read(0)}K.prototype.resume=function(){var b=this._readableState;return b.flowing||(d("resume"),b.flowing=!b.readableListening,Y(this,b)),b.paused=!1,this};function Y(b,y){y.resumeScheduled||(y.resumeScheduled=!0,ye.nextTick(Q,b,y))}function Q(b,y){d("resume",y.reading),y.reading||b.read(0),y.resumeScheduled=!1,b.emit("resume"),A(b),y.flowing&&!y.reading&&b.read(0)}K.prototype.pause=function(){return d("call pause flowing=%j",this._readableState.flowing),this._readableState.flowing!==!1&&(d("pause"),this._readableState.flowing=!1,this.emit("pause")),this._readableState.paused=!0,this};function A(b){var y=b._readableState;for(d("flow",y.flowing);y.flowing&&b.read()!==null;);}K.prototype.wrap=function(b){var y=this,F=this._readableState,U=!1;b.on("end",function(){if(d("wrapped end"),F.decoder&&!F.ended){var k=F.decoder.end();k&&k.length&&y.push(k)}y.push(null)}),b.on("data",function(k){if(d("wrapped data"),F.decoder&&(k=F.decoder.write(k)),!(F.objectMode&&k==null)&&!(!F.objectMode&&(!k||!k.length))){var H=y.push(k);H||(U=!0,b.pause())}});for(var Z in b)this[Z]===void 0&&typeof b[Z]=="function"&&(this[Z]=function(H){return function(){return b[H].apply(b,arguments)}}(Z));for(var j=0;j=y.length?(y.decoder?F=y.buffer.join(""):y.buffer.length===1?F=y.buffer.first():F=y.buffer.concat(y.length),y.buffer.clear()):F=y.buffer.consume(b,y.decoder),F}function q(b){var y=b._readableState;d("endReadable",y.endEmitted),y.endEmitted||(y.ended=!0,ye.nextTick(V,y,b))}function V(b,y){if(d("endReadableNT",b.endEmitted,b.length),!b.endEmitted&&b.length===0&&(b.endEmitted=!0,y.readable=!1,y.emit("end"),b.autoDestroy)){var F=y._writableState;(!F||F.autoDestroy&&F.finished)&&y.destroy()}}typeof Symbol=="function"&&(K.from=function(b,y){return $===void 0&&($=wK()),$(K,b,y)});function X(b,y){for(var F=0,U=b.length;F0;return CK(l,d,m,function(_){a||(a=_),_&&n.forEach(p2),!d&&(n.forEach(p2),i(a))})});return t.reduce(BK)}var kK=NK;(function(e,t){t=e.exports=sE(),t.Stream=t,t.Readable=t,t.Writable=oE(),t.Duplex=Us(),t.Transform=fE,t.PassThrough=AK,t.finished=gm,t.pipeline=kK})(Tv,Tv.exports);var $K=Tv.exports,Lf={exports:{}},mm={exports:{}};mm.exports;(function(e){(function(t,r){function i(f,u){if(!f)throw new Error(u||"Assertion failed")}function a(f,u){f.super_=u;var c=function(){};c.prototype=u.prototype,f.prototype=new c,f.prototype.constructor=f}function n(f,u,c){if(n.isBN(f))return f;this.negative=0,this.words=null,this.length=0,this.red=null,f!==null&&((u==="le"||u==="be")&&(c=u,u=10),this._init(f||0,u||10,c||"be"))}typeof t=="object"?t.exports=n:r.BN=n,n.BN=n,n.wordSize=26;var l;try{typeof window<"u"&&typeof window.Buffer<"u"?l=window.Buffer:l=Le.Buffer}catch{}n.isBN=function(u){return u instanceof n?!0:u!==null&&typeof u=="object"&&u.constructor.wordSize===n.wordSize&&Array.isArray(u.words)},n.max=function(u,c){return u.cmp(c)>0?u:c},n.min=function(u,c){return u.cmp(c)<0?u:c},n.prototype._init=function(u,c,p){if(typeof u=="number")return this._initNumber(u,c,p);if(typeof u=="object")return this._initArray(u,c,p);c==="hex"&&(c=16),i(c===(c|0)&&c>=2&&c<=36),u=u.toString().replace(/\s+/g,"");var w=0;u[0]==="-"&&(w++,this.negative=1),w=0;w-=3)g=u[w]|u[w-1]<<8|u[w-2]<<16,this.words[x]|=g<>>26-s&67108863,s+=24,s>=26&&(s-=26,x++);else if(p==="le")for(w=0,x=0;w>>26-s&67108863,s+=24,s>=26&&(s-=26,x++);return this._strip()};function h(f,u){var c=f.charCodeAt(u);if(c>=48&&c<=57)return c-48;if(c>=65&&c<=70)return c-55;if(c>=97&&c<=102)return c-87;i(!1,"Invalid character in "+f)}function d(f,u,c){var p=h(f,c);return c-1>=u&&(p|=h(f,c-1)<<4),p}n.prototype._parseHex=function(u,c,p){this.length=Math.ceil((u.length-c)/6),this.words=new Array(this.length);for(var w=0;w=c;w-=2)s=d(u,c,w)<=18?(x-=18,g+=1,this.words[g]|=s>>>26):x+=8;else{var v=u.length-c;for(w=v%2===0?c+1:c;w=18?(x-=18,g+=1,this.words[g]|=s>>>26):x+=8}this._strip()};function m(f,u,c,p){for(var w=0,x=0,g=Math.min(f.length,c),s=u;s=49?x=v-49+10:v>=17?x=v-17+10:x=v,i(v>=0&&x1&&this.words[this.length-1]===0;)this.length--;return this._normSign()},n.prototype._normSign=function(){return this.length===1&&this.words[0]===0&&(this.negative=0),this},typeof Symbol<"u"&&typeof Symbol.for=="function")try{n.prototype[Symbol.for("nodejs.util.inspect.custom")]=S}catch{n.prototype.inspect=S}else n.prototype.inspect=S;function S(){return(this.red?""}var R=["","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"],I=[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],O=[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];n.prototype.toString=function(u,c){u=u||10,c=c|0||1;var p;if(u===16||u==="hex"){p="";for(var w=0,x=0,g=0;g>>24-w&16777215,w+=2,w>=26&&(w-=26,g--),x!==0||g!==this.length-1?p=R[6-v.length]+v+p:p=v+p}for(x!==0&&(p=x.toString(16)+p);p.length%c!==0;)p="0"+p;return this.negative!==0&&(p="-"+p),p}if(u===(u|0)&&u>=2&&u<=36){var T=I[u],D=O[u];p="";var Y=this.clone();for(Y.negative=0;!Y.isZero();){var Q=Y.modrn(D).toString(u);Y=Y.idivn(D),Y.isZero()?p=Q+p:p=R[T-Q.length]+Q+p}for(this.isZero()&&(p="0"+p);p.length%c!==0;)p="0"+p;return this.negative!==0&&(p="-"+p),p}i(!1,"Base should be between 2 and 36")},n.prototype.toNumber=function(){var u=this.words[0];return this.length===2?u+=this.words[1]*67108864:this.length===3&&this.words[2]===1?u+=4503599627370496+this.words[1]*67108864:this.length>2&&i(!1,"Number can only safely store up to 53 bits"),this.negative!==0?-u:u},n.prototype.toJSON=function(){return this.toString(16,2)},l&&(n.prototype.toBuffer=function(u,c){return this.toArrayLike(l,u,c)}),n.prototype.toArray=function(u,c){return this.toArrayLike(Array,u,c)};var L=function(u,c){return u.allocUnsafe?u.allocUnsafe(c):new u(c)};n.prototype.toArrayLike=function(u,c,p){this._strip();var w=this.byteLength(),x=p||Math.max(1,w);i(w<=x,"byte array longer than desired length"),i(x>0,"Requested array length <= 0");var g=L(u,x),s=c==="le"?"LE":"BE";return this["_toArrayLike"+s](g,w),g},n.prototype._toArrayLikeLE=function(u,c){for(var p=0,w=0,x=0,g=0;x>8&255),p>16&255),g===6?(p>24&255),w=0,g=0):(w=s>>>24,g+=2)}if(p=0&&(u[p--]=s>>8&255),p>=0&&(u[p--]=s>>16&255),g===6?(p>=0&&(u[p--]=s>>24&255),w=0,g=0):(w=s>>>24,g+=2)}if(p>=0)for(u[p--]=w;p>=0;)u[p--]=0},Math.clz32?n.prototype._countBits=function(u){return 32-Math.clz32(u)}:n.prototype._countBits=function(u){var c=u,p=0;return c>=4096&&(p+=13,c>>>=13),c>=64&&(p+=7,c>>>=7),c>=8&&(p+=4,c>>>=4),c>=2&&(p+=2,c>>>=2),p+c},n.prototype._zeroBits=function(u){if(u===0)return 26;var c=u,p=0;return c&8191||(p+=13,c>>>=13),c&127||(p+=7,c>>>=7),c&15||(p+=4,c>>>=4),c&3||(p+=2,c>>>=2),c&1||p++,p},n.prototype.bitLength=function(){var u=this.words[this.length-1],c=this._countBits(u);return(this.length-1)*26+c};function B(f){for(var u=new Array(f.bitLength()),c=0;c>>w&1}return u}n.prototype.zeroBits=function(){if(this.isZero())return 0;for(var u=0,c=0;cu.length?this.clone().ior(u):u.clone().ior(this)},n.prototype.uor=function(u){return this.length>u.length?this.clone().iuor(u):u.clone().iuor(this)},n.prototype.iuand=function(u){var c;this.length>u.length?c=u:c=this;for(var p=0;pu.length?this.clone().iand(u):u.clone().iand(this)},n.prototype.uand=function(u){return this.length>u.length?this.clone().iuand(u):u.clone().iuand(this)},n.prototype.iuxor=function(u){var c,p;this.length>u.length?(c=this,p=u):(c=u,p=this);for(var w=0;wu.length?this.clone().ixor(u):u.clone().ixor(this)},n.prototype.uxor=function(u){return this.length>u.length?this.clone().iuxor(u):u.clone().iuxor(this)},n.prototype.inotn=function(u){i(typeof u=="number"&&u>=0);var c=Math.ceil(u/26)|0,p=u%26;this._expand(c),p>0&&c--;for(var w=0;w0&&(this.words[w]=~this.words[w]&67108863>>26-p),this._strip()},n.prototype.notn=function(u){return this.clone().inotn(u)},n.prototype.setn=function(u,c){i(typeof u=="number"&&u>=0);var p=u/26|0,w=u%26;return this._expand(p+1),c?this.words[p]=this.words[p]|1<u.length?(p=this,w=u):(p=u,w=this);for(var x=0,g=0;g>>26;for(;x!==0&&g>>26;if(this.length=p.length,x!==0)this.words[this.length]=x,this.length++;else if(p!==this)for(;gu.length?this.clone().iadd(u):u.clone().iadd(this)},n.prototype.isub=function(u){if(u.negative!==0){u.negative=0;var c=this.iadd(u);return u.negative=1,c._normSign()}else if(this.negative!==0)return this.negative=0,this.iadd(u),this.negative=1,this._normSign();var p=this.cmp(u);if(p===0)return this.negative=0,this.length=1,this.words[0]=0,this;var w,x;p>0?(w=this,x=u):(w=u,x=this);for(var g=0,s=0;s>26,this.words[s]=c&67108863;for(;g!==0&&s>26,this.words[s]=c&67108863;if(g===0&&s>>26,Y=v&67108863,Q=Math.min(T,u.length-1),A=Math.max(0,T-f.length+1);A<=Q;A++){var E=T-A|0;w=f.words[E]|0,x=u.words[A]|0,g=w*x+Y,D+=g/67108864|0,Y=g&67108863}c.words[T]=Y|0,v=D|0}return v!==0?c.words[T]=v|0:c.length--,c._strip()}var C=function(u,c,p){var w=u.words,x=c.words,g=p.words,s=0,v,T,D,Y=w[0]|0,Q=Y&8191,A=Y>>>13,E=w[1]|0,q=E&8191,V=E>>>13,X=w[2]|0,b=X&8191,y=X>>>13,F=w[3]|0,U=F&8191,Z=F>>>13,j=w[4]|0,k=j&8191,H=j>>>13,z=w[5]|0,oe=z&8191,ee=z>>>13,ne=w[6]|0,me=ne&8191,he=ne>>>13,ue=w[7]|0,xe=ue&8191,le=ue>>>13,ve=w[8]|0,ce=ve&8191,ie=ve>>>13,fe=w[9]|0,Ee=fe&8191,de=fe>>>13,be=x[0]|0,Ke=be&8191,we=be>>>13,Se=x[1]|0,qe=Se&8191,ge=Se>>>13,Me=x[2]|0,Ve=Me&8191,_e=Me>>>13,Be=x[3]|0,ot=Be&8191,Ae=Be>>>13,Ne=x[4]|0,st=Ne&8191,Pe=Ne>>>13,De=x[5]|0,ut=De&8191,Re=De>>>13,Fe=x[6]|0,ht=Fe&8191,Te=Fe>>>13,ke=x[7]|0,ct=ke&8191,Oe=ke>>>13,je=x[8]|0,ft=je&8191,Ie=je>>>13,$e=x[9]|0,tt=$e&8191,et=$e>>>13;p.negative=u.negative^c.negative,p.length=19,v=Math.imul(Q,Ke),T=Math.imul(Q,we),T=T+Math.imul(A,Ke)|0,D=Math.imul(A,we);var Et=(s+v|0)+((T&8191)<<13)|0;s=(D+(T>>>13)|0)+(Et>>>26)|0,Et&=67108863,v=Math.imul(q,Ke),T=Math.imul(q,we),T=T+Math.imul(V,Ke)|0,D=Math.imul(V,we),v=v+Math.imul(Q,qe)|0,T=T+Math.imul(Q,ge)|0,T=T+Math.imul(A,qe)|0,D=D+Math.imul(A,ge)|0;var It=(s+v|0)+((T&8191)<<13)|0;s=(D+(T>>>13)|0)+(It>>>26)|0,It&=67108863,v=Math.imul(b,Ke),T=Math.imul(b,we),T=T+Math.imul(y,Ke)|0,D=Math.imul(y,we),v=v+Math.imul(q,qe)|0,T=T+Math.imul(q,ge)|0,T=T+Math.imul(V,qe)|0,D=D+Math.imul(V,ge)|0,v=v+Math.imul(Q,Ve)|0,T=T+Math.imul(Q,_e)|0,T=T+Math.imul(A,Ve)|0,D=D+Math.imul(A,_e)|0;var Pt=(s+v|0)+((T&8191)<<13)|0;s=(D+(T>>>13)|0)+(Pt>>>26)|0,Pt&=67108863,v=Math.imul(U,Ke),T=Math.imul(U,we),T=T+Math.imul(Z,Ke)|0,D=Math.imul(Z,we),v=v+Math.imul(b,qe)|0,T=T+Math.imul(b,ge)|0,T=T+Math.imul(y,qe)|0,D=D+Math.imul(y,ge)|0,v=v+Math.imul(q,Ve)|0,T=T+Math.imul(q,_e)|0,T=T+Math.imul(V,Ve)|0,D=D+Math.imul(V,_e)|0,v=v+Math.imul(Q,ot)|0,T=T+Math.imul(Q,Ae)|0,T=T+Math.imul(A,ot)|0,D=D+Math.imul(A,Ae)|0;var Bt=(s+v|0)+((T&8191)<<13)|0;s=(D+(T>>>13)|0)+(Bt>>>26)|0,Bt&=67108863,v=Math.imul(k,Ke),T=Math.imul(k,we),T=T+Math.imul(H,Ke)|0,D=Math.imul(H,we),v=v+Math.imul(U,qe)|0,T=T+Math.imul(U,ge)|0,T=T+Math.imul(Z,qe)|0,D=D+Math.imul(Z,ge)|0,v=v+Math.imul(b,Ve)|0,T=T+Math.imul(b,_e)|0,T=T+Math.imul(y,Ve)|0,D=D+Math.imul(y,_e)|0,v=v+Math.imul(q,ot)|0,T=T+Math.imul(q,Ae)|0,T=T+Math.imul(V,ot)|0,D=D+Math.imul(V,Ae)|0,v=v+Math.imul(Q,st)|0,T=T+Math.imul(Q,Pe)|0,T=T+Math.imul(A,st)|0,D=D+Math.imul(A,Pe)|0;var Dt=(s+v|0)+((T&8191)<<13)|0;s=(D+(T>>>13)|0)+(Dt>>>26)|0,Dt&=67108863,v=Math.imul(oe,Ke),T=Math.imul(oe,we),T=T+Math.imul(ee,Ke)|0,D=Math.imul(ee,we),v=v+Math.imul(k,qe)|0,T=T+Math.imul(k,ge)|0,T=T+Math.imul(H,qe)|0,D=D+Math.imul(H,ge)|0,v=v+Math.imul(U,Ve)|0,T=T+Math.imul(U,_e)|0,T=T+Math.imul(Z,Ve)|0,D=D+Math.imul(Z,_e)|0,v=v+Math.imul(b,ot)|0,T=T+Math.imul(b,Ae)|0,T=T+Math.imul(y,ot)|0,D=D+Math.imul(y,Ae)|0,v=v+Math.imul(q,st)|0,T=T+Math.imul(q,Pe)|0,T=T+Math.imul(V,st)|0,D=D+Math.imul(V,Pe)|0,v=v+Math.imul(Q,ut)|0,T=T+Math.imul(Q,Re)|0,T=T+Math.imul(A,ut)|0,D=D+Math.imul(A,Re)|0;var qt=(s+v|0)+((T&8191)<<13)|0;s=(D+(T>>>13)|0)+(qt>>>26)|0,qt&=67108863,v=Math.imul(me,Ke),T=Math.imul(me,we),T=T+Math.imul(he,Ke)|0,D=Math.imul(he,we),v=v+Math.imul(oe,qe)|0,T=T+Math.imul(oe,ge)|0,T=T+Math.imul(ee,qe)|0,D=D+Math.imul(ee,ge)|0,v=v+Math.imul(k,Ve)|0,T=T+Math.imul(k,_e)|0,T=T+Math.imul(H,Ve)|0,D=D+Math.imul(H,_e)|0,v=v+Math.imul(U,ot)|0,T=T+Math.imul(U,Ae)|0,T=T+Math.imul(Z,ot)|0,D=D+Math.imul(Z,Ae)|0,v=v+Math.imul(b,st)|0,T=T+Math.imul(b,Pe)|0,T=T+Math.imul(y,st)|0,D=D+Math.imul(y,Pe)|0,v=v+Math.imul(q,ut)|0,T=T+Math.imul(q,Re)|0,T=T+Math.imul(V,ut)|0,D=D+Math.imul(V,Re)|0,v=v+Math.imul(Q,ht)|0,T=T+Math.imul(Q,Te)|0,T=T+Math.imul(A,ht)|0,D=D+Math.imul(A,Te)|0;var Wt=(s+v|0)+((T&8191)<<13)|0;s=(D+(T>>>13)|0)+(Wt>>>26)|0,Wt&=67108863,v=Math.imul(xe,Ke),T=Math.imul(xe,we),T=T+Math.imul(le,Ke)|0,D=Math.imul(le,we),v=v+Math.imul(me,qe)|0,T=T+Math.imul(me,ge)|0,T=T+Math.imul(he,qe)|0,D=D+Math.imul(he,ge)|0,v=v+Math.imul(oe,Ve)|0,T=T+Math.imul(oe,_e)|0,T=T+Math.imul(ee,Ve)|0,D=D+Math.imul(ee,_e)|0,v=v+Math.imul(k,ot)|0,T=T+Math.imul(k,Ae)|0,T=T+Math.imul(H,ot)|0,D=D+Math.imul(H,Ae)|0,v=v+Math.imul(U,st)|0,T=T+Math.imul(U,Pe)|0,T=T+Math.imul(Z,st)|0,D=D+Math.imul(Z,Pe)|0,v=v+Math.imul(b,ut)|0,T=T+Math.imul(b,Re)|0,T=T+Math.imul(y,ut)|0,D=D+Math.imul(y,Re)|0,v=v+Math.imul(q,ht)|0,T=T+Math.imul(q,Te)|0,T=T+Math.imul(V,ht)|0,D=D+Math.imul(V,Te)|0,v=v+Math.imul(Q,ct)|0,T=T+Math.imul(Q,Oe)|0,T=T+Math.imul(A,ct)|0,D=D+Math.imul(A,Oe)|0;var Lt=(s+v|0)+((T&8191)<<13)|0;s=(D+(T>>>13)|0)+(Lt>>>26)|0,Lt&=67108863,v=Math.imul(ce,Ke),T=Math.imul(ce,we),T=T+Math.imul(ie,Ke)|0,D=Math.imul(ie,we),v=v+Math.imul(xe,qe)|0,T=T+Math.imul(xe,ge)|0,T=T+Math.imul(le,qe)|0,D=D+Math.imul(le,ge)|0,v=v+Math.imul(me,Ve)|0,T=T+Math.imul(me,_e)|0,T=T+Math.imul(he,Ve)|0,D=D+Math.imul(he,_e)|0,v=v+Math.imul(oe,ot)|0,T=T+Math.imul(oe,Ae)|0,T=T+Math.imul(ee,ot)|0,D=D+Math.imul(ee,Ae)|0,v=v+Math.imul(k,st)|0,T=T+Math.imul(k,Pe)|0,T=T+Math.imul(H,st)|0,D=D+Math.imul(H,Pe)|0,v=v+Math.imul(U,ut)|0,T=T+Math.imul(U,Re)|0,T=T+Math.imul(Z,ut)|0,D=D+Math.imul(Z,Re)|0,v=v+Math.imul(b,ht)|0,T=T+Math.imul(b,Te)|0,T=T+Math.imul(y,ht)|0,D=D+Math.imul(y,Te)|0,v=v+Math.imul(q,ct)|0,T=T+Math.imul(q,Oe)|0,T=T+Math.imul(V,ct)|0,D=D+Math.imul(V,Oe)|0,v=v+Math.imul(Q,ft)|0,T=T+Math.imul(Q,Ie)|0,T=T+Math.imul(A,ft)|0,D=D+Math.imul(A,Ie)|0;var dt=(s+v|0)+((T&8191)<<13)|0;s=(D+(T>>>13)|0)+(dt>>>26)|0,dt&=67108863,v=Math.imul(Ee,Ke),T=Math.imul(Ee,we),T=T+Math.imul(de,Ke)|0,D=Math.imul(de,we),v=v+Math.imul(ce,qe)|0,T=T+Math.imul(ce,ge)|0,T=T+Math.imul(ie,qe)|0,D=D+Math.imul(ie,ge)|0,v=v+Math.imul(xe,Ve)|0,T=T+Math.imul(xe,_e)|0,T=T+Math.imul(le,Ve)|0,D=D+Math.imul(le,_e)|0,v=v+Math.imul(me,ot)|0,T=T+Math.imul(me,Ae)|0,T=T+Math.imul(he,ot)|0,D=D+Math.imul(he,Ae)|0,v=v+Math.imul(oe,st)|0,T=T+Math.imul(oe,Pe)|0,T=T+Math.imul(ee,st)|0,D=D+Math.imul(ee,Pe)|0,v=v+Math.imul(k,ut)|0,T=T+Math.imul(k,Re)|0,T=T+Math.imul(H,ut)|0,D=D+Math.imul(H,Re)|0,v=v+Math.imul(U,ht)|0,T=T+Math.imul(U,Te)|0,T=T+Math.imul(Z,ht)|0,D=D+Math.imul(Z,Te)|0,v=v+Math.imul(b,ct)|0,T=T+Math.imul(b,Oe)|0,T=T+Math.imul(y,ct)|0,D=D+Math.imul(y,Oe)|0,v=v+Math.imul(q,ft)|0,T=T+Math.imul(q,Ie)|0,T=T+Math.imul(V,ft)|0,D=D+Math.imul(V,Ie)|0,v=v+Math.imul(Q,tt)|0,T=T+Math.imul(Q,et)|0,T=T+Math.imul(A,tt)|0,D=D+Math.imul(A,et)|0;var Tt=(s+v|0)+((T&8191)<<13)|0;s=(D+(T>>>13)|0)+(Tt>>>26)|0,Tt&=67108863,v=Math.imul(Ee,qe),T=Math.imul(Ee,ge),T=T+Math.imul(de,qe)|0,D=Math.imul(de,ge),v=v+Math.imul(ce,Ve)|0,T=T+Math.imul(ce,_e)|0,T=T+Math.imul(ie,Ve)|0,D=D+Math.imul(ie,_e)|0,v=v+Math.imul(xe,ot)|0,T=T+Math.imul(xe,Ae)|0,T=T+Math.imul(le,ot)|0,D=D+Math.imul(le,Ae)|0,v=v+Math.imul(me,st)|0,T=T+Math.imul(me,Pe)|0,T=T+Math.imul(he,st)|0,D=D+Math.imul(he,Pe)|0,v=v+Math.imul(oe,ut)|0,T=T+Math.imul(oe,Re)|0,T=T+Math.imul(ee,ut)|0,D=D+Math.imul(ee,Re)|0,v=v+Math.imul(k,ht)|0,T=T+Math.imul(k,Te)|0,T=T+Math.imul(H,ht)|0,D=D+Math.imul(H,Te)|0,v=v+Math.imul(U,ct)|0,T=T+Math.imul(U,Oe)|0,T=T+Math.imul(Z,ct)|0,D=D+Math.imul(Z,Oe)|0,v=v+Math.imul(b,ft)|0,T=T+Math.imul(b,Ie)|0,T=T+Math.imul(y,ft)|0,D=D+Math.imul(y,Ie)|0,v=v+Math.imul(q,tt)|0,T=T+Math.imul(q,et)|0,T=T+Math.imul(V,tt)|0,D=D+Math.imul(V,et)|0;var Mt=(s+v|0)+((T&8191)<<13)|0;s=(D+(T>>>13)|0)+(Mt>>>26)|0,Mt&=67108863,v=Math.imul(Ee,Ve),T=Math.imul(Ee,_e),T=T+Math.imul(de,Ve)|0,D=Math.imul(de,_e),v=v+Math.imul(ce,ot)|0,T=T+Math.imul(ce,Ae)|0,T=T+Math.imul(ie,ot)|0,D=D+Math.imul(ie,Ae)|0,v=v+Math.imul(xe,st)|0,T=T+Math.imul(xe,Pe)|0,T=T+Math.imul(le,st)|0,D=D+Math.imul(le,Pe)|0,v=v+Math.imul(me,ut)|0,T=T+Math.imul(me,Re)|0,T=T+Math.imul(he,ut)|0,D=D+Math.imul(he,Re)|0,v=v+Math.imul(oe,ht)|0,T=T+Math.imul(oe,Te)|0,T=T+Math.imul(ee,ht)|0,D=D+Math.imul(ee,Te)|0,v=v+Math.imul(k,ct)|0,T=T+Math.imul(k,Oe)|0,T=T+Math.imul(H,ct)|0,D=D+Math.imul(H,Oe)|0,v=v+Math.imul(U,ft)|0,T=T+Math.imul(U,Ie)|0,T=T+Math.imul(Z,ft)|0,D=D+Math.imul(Z,Ie)|0,v=v+Math.imul(b,tt)|0,T=T+Math.imul(b,et)|0,T=T+Math.imul(y,tt)|0,D=D+Math.imul(y,et)|0;var bt=(s+v|0)+((T&8191)<<13)|0;s=(D+(T>>>13)|0)+(bt>>>26)|0,bt&=67108863,v=Math.imul(Ee,ot),T=Math.imul(Ee,Ae),T=T+Math.imul(de,ot)|0,D=Math.imul(de,Ae),v=v+Math.imul(ce,st)|0,T=T+Math.imul(ce,Pe)|0,T=T+Math.imul(ie,st)|0,D=D+Math.imul(ie,Pe)|0,v=v+Math.imul(xe,ut)|0,T=T+Math.imul(xe,Re)|0,T=T+Math.imul(le,ut)|0,D=D+Math.imul(le,Re)|0,v=v+Math.imul(me,ht)|0,T=T+Math.imul(me,Te)|0,T=T+Math.imul(he,ht)|0,D=D+Math.imul(he,Te)|0,v=v+Math.imul(oe,ct)|0,T=T+Math.imul(oe,Oe)|0,T=T+Math.imul(ee,ct)|0,D=D+Math.imul(ee,Oe)|0,v=v+Math.imul(k,ft)|0,T=T+Math.imul(k,Ie)|0,T=T+Math.imul(H,ft)|0,D=D+Math.imul(H,Ie)|0,v=v+Math.imul(U,tt)|0,T=T+Math.imul(U,et)|0,T=T+Math.imul(Z,tt)|0,D=D+Math.imul(Z,et)|0;var Ct=(s+v|0)+((T&8191)<<13)|0;s=(D+(T>>>13)|0)+(Ct>>>26)|0,Ct&=67108863,v=Math.imul(Ee,st),T=Math.imul(Ee,Pe),T=T+Math.imul(de,st)|0,D=Math.imul(de,Pe),v=v+Math.imul(ce,ut)|0,T=T+Math.imul(ce,Re)|0,T=T+Math.imul(ie,ut)|0,D=D+Math.imul(ie,Re)|0,v=v+Math.imul(xe,ht)|0,T=T+Math.imul(xe,Te)|0,T=T+Math.imul(le,ht)|0,D=D+Math.imul(le,Te)|0,v=v+Math.imul(me,ct)|0,T=T+Math.imul(me,Oe)|0,T=T+Math.imul(he,ct)|0,D=D+Math.imul(he,Oe)|0,v=v+Math.imul(oe,ft)|0,T=T+Math.imul(oe,Ie)|0,T=T+Math.imul(ee,ft)|0,D=D+Math.imul(ee,Ie)|0,v=v+Math.imul(k,tt)|0,T=T+Math.imul(k,et)|0,T=T+Math.imul(H,tt)|0,D=D+Math.imul(H,et)|0;var gt=(s+v|0)+((T&8191)<<13)|0;s=(D+(T>>>13)|0)+(gt>>>26)|0,gt&=67108863,v=Math.imul(Ee,ut),T=Math.imul(Ee,Re),T=T+Math.imul(de,ut)|0,D=Math.imul(de,Re),v=v+Math.imul(ce,ht)|0,T=T+Math.imul(ce,Te)|0,T=T+Math.imul(ie,ht)|0,D=D+Math.imul(ie,Te)|0,v=v+Math.imul(xe,ct)|0,T=T+Math.imul(xe,Oe)|0,T=T+Math.imul(le,ct)|0,D=D+Math.imul(le,Oe)|0,v=v+Math.imul(me,ft)|0,T=T+Math.imul(me,Ie)|0,T=T+Math.imul(he,ft)|0,D=D+Math.imul(he,Ie)|0,v=v+Math.imul(oe,tt)|0,T=T+Math.imul(oe,et)|0,T=T+Math.imul(ee,tt)|0,D=D+Math.imul(ee,et)|0;var wt=(s+v|0)+((T&8191)<<13)|0;s=(D+(T>>>13)|0)+(wt>>>26)|0,wt&=67108863,v=Math.imul(Ee,ht),T=Math.imul(Ee,Te),T=T+Math.imul(de,ht)|0,D=Math.imul(de,Te),v=v+Math.imul(ce,ct)|0,T=T+Math.imul(ce,Oe)|0,T=T+Math.imul(ie,ct)|0,D=D+Math.imul(ie,Oe)|0,v=v+Math.imul(xe,ft)|0,T=T+Math.imul(xe,Ie)|0,T=T+Math.imul(le,ft)|0,D=D+Math.imul(le,Ie)|0,v=v+Math.imul(me,tt)|0,T=T+Math.imul(me,et)|0,T=T+Math.imul(he,tt)|0,D=D+Math.imul(he,et)|0;var Ft=(s+v|0)+((T&8191)<<13)|0;s=(D+(T>>>13)|0)+(Ft>>>26)|0,Ft&=67108863,v=Math.imul(Ee,ct),T=Math.imul(Ee,Oe),T=T+Math.imul(de,ct)|0,D=Math.imul(de,Oe),v=v+Math.imul(ce,ft)|0,T=T+Math.imul(ce,Ie)|0,T=T+Math.imul(ie,ft)|0,D=D+Math.imul(ie,Ie)|0,v=v+Math.imul(xe,tt)|0,T=T+Math.imul(xe,et)|0,T=T+Math.imul(le,tt)|0,D=D+Math.imul(le,et)|0;var jt=(s+v|0)+((T&8191)<<13)|0;s=(D+(T>>>13)|0)+(jt>>>26)|0,jt&=67108863,v=Math.imul(Ee,ft),T=Math.imul(Ee,Ie),T=T+Math.imul(de,ft)|0,D=Math.imul(de,Ie),v=v+Math.imul(ce,tt)|0,T=T+Math.imul(ce,et)|0,T=T+Math.imul(ie,tt)|0,D=D+Math.imul(ie,et)|0;var vo=(s+v|0)+((T&8191)<<13)|0;s=(D+(T>>>13)|0)+(vo>>>26)|0,vo&=67108863,v=Math.imul(Ee,tt),T=Math.imul(Ee,et),T=T+Math.imul(de,tt)|0,D=Math.imul(de,et);var $r=(s+v|0)+((T&8191)<<13)|0;return s=(D+(T>>>13)|0)+($r>>>26)|0,$r&=67108863,g[0]=Et,g[1]=It,g[2]=Pt,g[3]=Bt,g[4]=Dt,g[5]=qt,g[6]=Wt,g[7]=Lt,g[8]=dt,g[9]=Tt,g[10]=Mt,g[11]=bt,g[12]=Ct,g[13]=gt,g[14]=wt,g[15]=Ft,g[16]=jt,g[17]=vo,g[18]=$r,s!==0&&(g[19]=s,p.length++),p};Math.imul||(C=P);function N(f,u,c){c.negative=u.negative^f.negative,c.length=f.length+u.length;for(var p=0,w=0,x=0;x>>26)|0,w+=g>>>26,g&=67108863}c.words[x]=s,p=g,g=w}return p!==0?c.words[x]=p:c.length--,c._strip()}function $(f,u,c){return N(f,u,c)}n.prototype.mulTo=function(u,c){var p,w=this.length+u.length;return this.length===10&&u.length===10?p=C(this,u,c):w<63?p=P(this,u,c):w<1024?p=N(this,u,c):p=$(this,u,c),p},n.prototype.mul=function(u){var c=new n(null);return c.words=new Array(this.length+u.length),this.mulTo(u,c)},n.prototype.mulf=function(u){var c=new n(null);return c.words=new Array(this.length+u.length),$(this,u,c)},n.prototype.imul=function(u){return this.clone().mulTo(u,this)},n.prototype.imuln=function(u){var c=u<0;c&&(u=-u),i(typeof u=="number"),i(u<67108864);for(var p=0,w=0;w>=26,p+=x/67108864|0,p+=g>>>26,this.words[w]=g&67108863}return p!==0&&(this.words[w]=p,this.length++),c?this.ineg():this},n.prototype.muln=function(u){return this.clone().imuln(u)},n.prototype.sqr=function(){return this.mul(this)},n.prototype.isqr=function(){return this.imul(this.clone())},n.prototype.pow=function(u){var c=B(u);if(c.length===0)return new n(1);for(var p=this,w=0;w=0);var c=u%26,p=(u-c)/26,w=67108863>>>26-c<<26-c,x;if(c!==0){var g=0;for(x=0;x>>26-c}g&&(this.words[x]=g,this.length++)}if(p!==0){for(x=this.length-1;x>=0;x--)this.words[x+p]=this.words[x];for(x=0;x=0);var w;c?w=(c-c%26)/26:w=0;var x=u%26,g=Math.min((u-x)/26,this.length),s=67108863^67108863>>>x<g)for(this.length-=g,T=0;T=0&&(D!==0||T>=w);T--){var Y=this.words[T]|0;this.words[T]=D<<26-x|Y>>>x,D=Y&s}return v&&D!==0&&(v.words[v.length++]=D),this.length===0&&(this.words[0]=0,this.length=1),this._strip()},n.prototype.ishrn=function(u,c,p){return i(this.negative===0),this.iushrn(u,c,p)},n.prototype.shln=function(u){return this.clone().ishln(u)},n.prototype.ushln=function(u){return this.clone().iushln(u)},n.prototype.shrn=function(u){return this.clone().ishrn(u)},n.prototype.ushrn=function(u){return this.clone().iushrn(u)},n.prototype.testn=function(u){i(typeof u=="number"&&u>=0);var c=u%26,p=(u-c)/26,w=1<=0);var c=u%26,p=(u-c)/26;if(i(this.negative===0,"imaskn works only with positive numbers"),this.length<=p)return this;if(c!==0&&p++,this.length=Math.min(p,this.length),c!==0){var w=67108863^67108863>>>c<=67108864;c++)this.words[c]-=67108864,c===this.length-1?this.words[c+1]=1:this.words[c+1]++;return this.length=Math.max(this.length,c+1),this},n.prototype.isubn=function(u){if(i(typeof u=="number"),i(u<67108864),u<0)return this.iaddn(-u);if(this.negative!==0)return this.negative=0,this.iaddn(u),this.negative=1,this;if(this.words[0]-=u,this.length===1&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var c=0;c>26)-(v/67108864|0),this.words[x+p]=g&67108863}for(;x>26,this.words[x+p]=g&67108863;if(s===0)return this._strip();for(i(s===-1),s=0,x=0;x>26,this.words[x]=g&67108863;return this.negative=1,this._strip()},n.prototype._wordDiv=function(u,c){var p=this.length-u.length,w=this.clone(),x=u,g=x.words[x.length-1]|0,s=this._countBits(g);p=26-s,p!==0&&(x=x.ushln(p),w.iushln(p),g=x.words[x.length-1]|0);var v=w.length-x.length,T;if(c!=="mod"){T=new n(null),T.length=v+1,T.words=new Array(T.length);for(var D=0;D=0;Q--){var A=(w.words[x.length+Q]|0)*67108864+(w.words[x.length+Q-1]|0);for(A=Math.min(A/g|0,67108863),w._ishlnsubmul(x,A,Q);w.negative!==0;)A--,w.negative=0,w._ishlnsubmul(x,1,Q),w.isZero()||(w.negative^=1);T&&(T.words[Q]=A)}return T&&T._strip(),w._strip(),c!=="div"&&p!==0&&w.iushrn(p),{div:T||null,mod:w}},n.prototype.divmod=function(u,c,p){if(i(!u.isZero()),this.isZero())return{div:new n(0),mod:new n(0)};var w,x,g;return this.negative!==0&&u.negative===0?(g=this.neg().divmod(u,c),c!=="mod"&&(w=g.div.neg()),c!=="div"&&(x=g.mod.neg(),p&&x.negative!==0&&x.iadd(u)),{div:w,mod:x}):this.negative===0&&u.negative!==0?(g=this.divmod(u.neg(),c),c!=="mod"&&(w=g.div.neg()),{div:w,mod:g.mod}):this.negative&u.negative?(g=this.neg().divmod(u.neg(),c),c!=="div"&&(x=g.mod.neg(),p&&x.negative!==0&&x.isub(u)),{div:g.div,mod:x}):u.length>this.length||this.cmp(u)<0?{div:new n(0),mod:this}:u.length===1?c==="div"?{div:this.divn(u.words[0]),mod:null}:c==="mod"?{div:null,mod:new n(this.modrn(u.words[0]))}:{div:this.divn(u.words[0]),mod:new n(this.modrn(u.words[0]))}:this._wordDiv(u,c)},n.prototype.div=function(u){return this.divmod(u,"div",!1).div},n.prototype.mod=function(u){return this.divmod(u,"mod",!1).mod},n.prototype.umod=function(u){return this.divmod(u,"mod",!0).mod},n.prototype.divRound=function(u){var c=this.divmod(u);if(c.mod.isZero())return c.div;var p=c.div.negative!==0?c.mod.isub(u):c.mod,w=u.ushrn(1),x=u.andln(1),g=p.cmp(w);return g<0||x===1&&g===0?c.div:c.div.negative!==0?c.div.isubn(1):c.div.iaddn(1)},n.prototype.modrn=function(u){var c=u<0;c&&(u=-u),i(u<=67108863);for(var p=(1<<26)%u,w=0,x=this.length-1;x>=0;x--)w=(p*w+(this.words[x]|0))%u;return c?-w:w},n.prototype.modn=function(u){return this.modrn(u)},n.prototype.idivn=function(u){var c=u<0;c&&(u=-u),i(u<=67108863);for(var p=0,w=this.length-1;w>=0;w--){var x=(this.words[w]|0)+p*67108864;this.words[w]=x/u|0,p=x%u}return this._strip(),c?this.ineg():this},n.prototype.divn=function(u){return this.clone().idivn(u)},n.prototype.egcd=function(u){i(u.negative===0),i(!u.isZero());var c=this,p=u.clone();c.negative!==0?c=c.umod(u):c=c.clone();for(var w=new n(1),x=new n(0),g=new n(0),s=new n(1),v=0;c.isEven()&&p.isEven();)c.iushrn(1),p.iushrn(1),++v;for(var T=p.clone(),D=c.clone();!c.isZero();){for(var Y=0,Q=1;!(c.words[0]&Q)&&Y<26;++Y,Q<<=1);if(Y>0)for(c.iushrn(Y);Y-- >0;)(w.isOdd()||x.isOdd())&&(w.iadd(T),x.isub(D)),w.iushrn(1),x.iushrn(1);for(var A=0,E=1;!(p.words[0]&E)&&A<26;++A,E<<=1);if(A>0)for(p.iushrn(A);A-- >0;)(g.isOdd()||s.isOdd())&&(g.iadd(T),s.isub(D)),g.iushrn(1),s.iushrn(1);c.cmp(p)>=0?(c.isub(p),w.isub(g),x.isub(s)):(p.isub(c),g.isub(w),s.isub(x))}return{a:g,b:s,gcd:p.iushln(v)}},n.prototype._invmp=function(u){i(u.negative===0),i(!u.isZero());var c=this,p=u.clone();c.negative!==0?c=c.umod(u):c=c.clone();for(var w=new n(1),x=new n(0),g=p.clone();c.cmpn(1)>0&&p.cmpn(1)>0;){for(var s=0,v=1;!(c.words[0]&v)&&s<26;++s,v<<=1);if(s>0)for(c.iushrn(s);s-- >0;)w.isOdd()&&w.iadd(g),w.iushrn(1);for(var T=0,D=1;!(p.words[0]&D)&&T<26;++T,D<<=1);if(T>0)for(p.iushrn(T);T-- >0;)x.isOdd()&&x.iadd(g),x.iushrn(1);c.cmp(p)>=0?(c.isub(p),w.isub(x)):(p.isub(c),x.isub(w))}var Y;return c.cmpn(1)===0?Y=w:Y=x,Y.cmpn(0)<0&&Y.iadd(u),Y},n.prototype.gcd=function(u){if(this.isZero())return u.abs();if(u.isZero())return this.abs();var c=this.clone(),p=u.clone();c.negative=0,p.negative=0;for(var w=0;c.isEven()&&p.isEven();w++)c.iushrn(1),p.iushrn(1);do{for(;c.isEven();)c.iushrn(1);for(;p.isEven();)p.iushrn(1);var x=c.cmp(p);if(x<0){var g=c;c=p,p=g}else if(x===0||p.cmpn(1)===0)break;c.isub(p)}while(!0);return p.iushln(w)},n.prototype.invm=function(u){return this.egcd(u).a.umod(u)},n.prototype.isEven=function(){return(this.words[0]&1)===0},n.prototype.isOdd=function(){return(this.words[0]&1)===1},n.prototype.andln=function(u){return this.words[0]&u},n.prototype.bincn=function(u){i(typeof u=="number");var c=u%26,p=(u-c)/26,w=1<>>26,s&=67108863,this.words[g]=s}return x!==0&&(this.words[g]=x,this.length++),this},n.prototype.isZero=function(){return this.length===1&&this.words[0]===0},n.prototype.cmpn=function(u){var c=u<0;if(this.negative!==0&&!c)return-1;if(this.negative===0&&c)return 1;this._strip();var p;if(this.length>1)p=1;else{c&&(u=-u),i(u<=67108863,"Number is too big");var w=this.words[0]|0;p=w===u?0:wu.length)return 1;if(this.length=0;p--){var w=this.words[p]|0,x=u.words[p]|0;if(w!==x){wx&&(c=1);break}}return c},n.prototype.gtn=function(u){return this.cmpn(u)===1},n.prototype.gt=function(u){return this.cmp(u)===1},n.prototype.gten=function(u){return this.cmpn(u)>=0},n.prototype.gte=function(u){return this.cmp(u)>=0},n.prototype.ltn=function(u){return this.cmpn(u)===-1},n.prototype.lt=function(u){return this.cmp(u)===-1},n.prototype.lten=function(u){return this.cmpn(u)<=0},n.prototype.lte=function(u){return this.cmp(u)<=0},n.prototype.eqn=function(u){return this.cmpn(u)===0},n.prototype.eq=function(u){return this.cmp(u)===0},n.red=function(u){return new M(u)},n.prototype.toRed=function(u){return i(!this.red,"Already a number in reduction context"),i(this.negative===0,"red works only with positives"),u.convertTo(this)._forceRed(u)},n.prototype.fromRed=function(){return i(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},n.prototype._forceRed=function(u){return this.red=u,this},n.prototype.forceRed=function(u){return i(!this.red,"Already a number in reduction context"),this._forceRed(u)},n.prototype.redAdd=function(u){return i(this.red,"redAdd works only with red numbers"),this.red.add(this,u)},n.prototype.redIAdd=function(u){return i(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,u)},n.prototype.redSub=function(u){return i(this.red,"redSub works only with red numbers"),this.red.sub(this,u)},n.prototype.redISub=function(u){return i(this.red,"redISub works only with red numbers"),this.red.isub(this,u)},n.prototype.redShl=function(u){return i(this.red,"redShl works only with red numbers"),this.red.shl(this,u)},n.prototype.redMul=function(u){return i(this.red,"redMul works only with red numbers"),this.red._verify2(this,u),this.red.mul(this,u)},n.prototype.redIMul=function(u){return i(this.red,"redMul works only with red numbers"),this.red._verify2(this,u),this.red.imul(this,u)},n.prototype.redSqr=function(){return i(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},n.prototype.redISqr=function(){return i(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},n.prototype.redSqrt=function(){return i(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},n.prototype.redInvm=function(){return i(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},n.prototype.redNeg=function(){return i(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},n.prototype.redPow=function(u){return i(this.red&&!u.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,u)};var W={k256:null,p224:null,p192:null,p25519:null};function G(f,u){this.name=f,this.p=new n(u,16),this.n=this.p.bitLength(),this.k=new n(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}G.prototype._tmp=function(){var u=new n(null);return u.words=new Array(Math.ceil(this.n/13)),u},G.prototype.ireduce=function(u){var c=u,p;do this.split(c,this.tmp),c=this.imulK(c),c=c.iadd(this.tmp),p=c.bitLength();while(p>this.n);var w=p0?c.isub(this.p):c.strip!==void 0?c.strip():c._strip(),c},G.prototype.split=function(u,c){u.iushrn(this.n,0,c)},G.prototype.imulK=function(u){return u.imul(this.k)};function re(){G.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}a(re,G),re.prototype.split=function(u,c){for(var p=4194303,w=Math.min(u.length,9),x=0;x>>22,g=s}g>>>=22,u.words[x-10]=g,g===0&&u.length>10?u.length-=10:u.length-=9},re.prototype.imulK=function(u){u.words[u.length]=0,u.words[u.length+1]=0,u.length+=2;for(var c=0,p=0;p>>=26,u.words[p]=x,c=w}return c!==0&&(u.words[u.length++]=c),u},n._prime=function(u){if(W[u])return W[u];var c;if(u==="k256")c=new re;else if(u==="p224")c=new J;else if(u==="p192")c=new K;else if(u==="p25519")c=new se;else throw new Error("Unknown prime "+u);return W[u]=c,c};function M(f){if(typeof f=="string"){var u=n._prime(f);this.m=u.p,this.prime=u}else i(f.gtn(1),"modulus must be greater than 1"),this.m=f,this.prime=null}M.prototype._verify1=function(u){i(u.negative===0,"red works only with positives"),i(u.red,"red works only with red numbers")},M.prototype._verify2=function(u,c){i((u.negative|c.negative)===0,"red works only with positives"),i(u.red&&u.red===c.red,"red works only with red numbers")},M.prototype.imod=function(u){return this.prime?this.prime.ireduce(u)._forceRed(this):(_(u,u.umod(this.m)._forceRed(this)),u)},M.prototype.neg=function(u){return u.isZero()?u.clone():this.m.sub(u)._forceRed(this)},M.prototype.add=function(u,c){this._verify2(u,c);var p=u.add(c);return p.cmp(this.m)>=0&&p.isub(this.m),p._forceRed(this)},M.prototype.iadd=function(u,c){this._verify2(u,c);var p=u.iadd(c);return p.cmp(this.m)>=0&&p.isub(this.m),p},M.prototype.sub=function(u,c){this._verify2(u,c);var p=u.sub(c);return p.cmpn(0)<0&&p.iadd(this.m),p._forceRed(this)},M.prototype.isub=function(u,c){this._verify2(u,c);var p=u.isub(c);return p.cmpn(0)<0&&p.iadd(this.m),p},M.prototype.shl=function(u,c){return this._verify1(u),this.imod(u.ushln(c))},M.prototype.imul=function(u,c){return this._verify2(u,c),this.imod(u.imul(c))},M.prototype.mul=function(u,c){return this._verify2(u,c),this.imod(u.mul(c))},M.prototype.isqr=function(u){return this.imul(u,u.clone())},M.prototype.sqr=function(u){return this.mul(u,u)},M.prototype.sqrt=function(u){if(u.isZero())return u.clone();var c=this.m.andln(3);if(i(c%2===1),c===3){var p=this.m.add(new n(1)).iushrn(2);return this.pow(u,p)}for(var w=this.m.subn(1),x=0;!w.isZero()&&w.andln(1)===0;)x++,w.iushrn(1);i(!w.isZero());var g=new n(1).toRed(this),s=g.redNeg(),v=this.m.subn(1).iushrn(1),T=this.m.bitLength();for(T=new n(2*T*T).toRed(this);this.pow(T,v).cmp(s)!==0;)T.redIAdd(s);for(var D=this.pow(T,w),Y=this.pow(u,w.addn(1).iushrn(1)),Q=this.pow(u,w),A=x;Q.cmp(g)!==0;){for(var E=Q,q=0;E.cmp(g)!==0;q++)E=E.redSqr();i(q=0;x--){for(var D=c.words[x],Y=T-1;Y>=0;Y--){var Q=D>>Y&1;if(g!==w[0]&&(g=this.sqr(g)),Q===0&&s===0){v=0;continue}s<<=1,s|=Q,v++,!(v!==p&&(x!==0||Y!==0))&&(g=this.mul(g,w[s]),v=0,s=0)}T=26}return g},M.prototype.convertTo=function(u){var c=u.umod(this.m);return c===u?c.clone():c},M.prototype.convertFrom=function(u){var c=u.clone();return c.red=null,c},n.mont=function(u){return new o(u)};function o(f){M.call(this,f),this.shift=this.m.bitLength(),this.shift%26!==0&&(this.shift+=26-this.shift%26),this.r=new n(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)}a(o,M),o.prototype.convertTo=function(u){return this.imod(u.ushln(this.shift))},o.prototype.convertFrom=function(u){var c=this.imod(u.mul(this.rinv));return c.red=null,c},o.prototype.imul=function(u,c){if(u.isZero()||c.isZero())return u.words[0]=0,u.length=1,u;var p=u.imul(c),w=p.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),x=p.isub(w).iushrn(this.shift),g=x;return x.cmp(this.m)>=0?g=x.isub(this.m):x.cmpn(0)<0&&(g=x.iadd(this.m)),g._forceRed(this)},o.prototype.mul=function(u,c){if(u.isZero()||c.isZero())return new n(0)._forceRed(this);var p=u.mul(c),w=p.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),x=p.isub(w).iushrn(this.shift),g=x;return x.cmp(this.m)>=0?g=x.isub(this.m):x.cmpn(0)<0&&(g=x.iadd(this.m)),g._forceRed(this)},o.prototype.invm=function(u){var c=this.imod(u._invmp(this.m).mul(this.r2));return c._forceRed(this)}})(e,Ze)})(mm);var ym=mm.exports,bs=ym,DK=rf;function FK(e){var t=hE(e),r=t.toRed(bs.mont(e.modulus)).redPow(new bs(e.publicExponent)).fromRed();return{blinder:r,unblinder:t.invm(e.modulus)}}function hE(e){var t=e.modulus.byteLength(),r;do r=new bs(DK(t));while(r.cmp(e.modulus)>=0||!r.umod(e.prime1)||!r.umod(e.prime2));return r}function cE(e,t){var r=FK(t),i=t.modulus.byteLength(),a=new bs(e).mul(r.blinder).umod(t.modulus),n=a.toRed(bs.mont(t.prime1)),l=a.toRed(bs.mont(t.prime2)),h=t.coefficient,d=t.prime1,m=t.prime2,_=n.redPow(t.exponent1).fromRed(),S=l.redPow(t.exponent2).fromRed(),R=_.isub(S).imul(h).umod(d).imul(m);return S.iadd(R).imul(r.unblinder).umod(t.modulus).toArrayLike(Le.Buffer,"be",i)}cE.getr=hE;var bm=cE,Z0={};const jK="elliptic",UK="6.5.7",HK="EC cryptography",qK="lib/elliptic.js",WK=["lib"],KK={lint:"eslint lib test","lint:fix":"npm run lint -- --fix",unit:"istanbul test _mocha --reporter=spec test/index.js",test:"npm run lint && npm run unit",version:"grunt dist && git add dist/"},VK={type:"git",url:"git@github.com:indutny/elliptic"},zK=["EC","Elliptic","curve","Cryptography"],GK="Fedor Indutny ",YK="MIT",ZK={url:"https://github.com/indutny/elliptic/issues"},XK="https://github.com/indutny/elliptic",JK={brfs:"^2.0.2",coveralls:"^3.1.0",eslint:"^7.6.0",grunt:"^1.2.1","grunt-browserify":"^5.3.0","grunt-cli":"^1.3.2","grunt-contrib-connect":"^3.0.0","grunt-contrib-copy":"^1.0.0","grunt-contrib-uglify":"^5.0.0","grunt-mocha-istanbul":"^5.0.2","grunt-saucelabs":"^9.0.1",istanbul:"^0.4.5",mocha:"^8.0.1"},QK={"bn.js":"^4.11.9",brorand:"^1.1.0","hash.js":"^1.0.0","hmac-drbg":"^1.0.1",inherits:"^2.0.4","minimalistic-assert":"^1.0.1","minimalistic-crypto-utils":"^1.0.1"},eV={name:jK,version:UK,description:HK,main:qK,files:WK,scripts:KK,repository:VK,keywords:zK,author:GK,license:YK,bugs:ZK,homepage:XK,devDependencies:JK,dependencies:QK};var si={},wm={exports:{}};wm.exports;(function(e){(function(t,r){function i(M,o){if(!M)throw new Error(o||"Assertion failed")}function a(M,o){M.super_=o;var f=function(){};f.prototype=o.prototype,M.prototype=new f,M.prototype.constructor=M}function n(M,o,f){if(n.isBN(M))return M;this.negative=0,this.words=null,this.length=0,this.red=null,M!==null&&((o==="le"||o==="be")&&(f=o,o=10),this._init(M||0,o||10,f||"be"))}typeof t=="object"?t.exports=n:r.BN=n,n.BN=n,n.wordSize=26;var l;try{typeof window<"u"&&typeof window.Buffer<"u"?l=window.Buffer:l=Le.Buffer}catch{}n.isBN=function(o){return o instanceof n?!0:o!==null&&typeof o=="object"&&o.constructor.wordSize===n.wordSize&&Array.isArray(o.words)},n.max=function(o,f){return o.cmp(f)>0?o:f},n.min=function(o,f){return o.cmp(f)<0?o:f},n.prototype._init=function(o,f,u){if(typeof o=="number")return this._initNumber(o,f,u);if(typeof o=="object")return this._initArray(o,f,u);f==="hex"&&(f=16),i(f===(f|0)&&f>=2&&f<=36),o=o.toString().replace(/\s+/g,"");var c=0;o[0]==="-"&&(c++,this.negative=1),c=0;c-=3)w=o[c]|o[c-1]<<8|o[c-2]<<16,this.words[p]|=w<>>26-x&67108863,x+=24,x>=26&&(x-=26,p++);else if(u==="le")for(c=0,p=0;c>>26-x&67108863,x+=24,x>=26&&(x-=26,p++);return this.strip()};function h(M,o){var f=M.charCodeAt(o);return f>=65&&f<=70?f-55:f>=97&&f<=102?f-87:f-48&15}function d(M,o,f){var u=h(M,f);return f-1>=o&&(u|=h(M,f-1)<<4),u}n.prototype._parseHex=function(o,f,u){this.length=Math.ceil((o.length-f)/6),this.words=new Array(this.length);for(var c=0;c=f;c-=2)x=d(o,f,c)<=18?(p-=18,w+=1,this.words[w]|=x>>>26):p+=8;else{var g=o.length-f;for(c=g%2===0?f+1:f;c=18?(p-=18,w+=1,this.words[w]|=x>>>26):p+=8}this.strip()};function m(M,o,f,u){for(var c=0,p=Math.min(M.length,f),w=o;w=49?c+=x-49+10:x>=17?c+=x-17+10:c+=x}return c}n.prototype._parseBase=function(o,f,u){this.words=[0],this.length=1;for(var c=0,p=1;p<=67108863;p*=f)c++;c--,p=p/f|0;for(var w=o.length-u,x=w%c,g=Math.min(w,w-x)+u,s=0,v=u;v1&&this.words[this.length-1]===0;)this.length--;return this._normSign()},n.prototype._normSign=function(){return this.length===1&&this.words[0]===0&&(this.negative=0),this},n.prototype.inspect=function(){return(this.red?""};var _=["","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"],S=[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],R=[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];n.prototype.toString=function(o,f){o=o||10,f=f|0||1;var u;if(o===16||o==="hex"){u="";for(var c=0,p=0,w=0;w>>24-c&16777215,p!==0||w!==this.length-1?u=_[6-g.length]+g+u:u=g+u,c+=2,c>=26&&(c-=26,w--)}for(p!==0&&(u=p.toString(16)+u);u.length%f!==0;)u="0"+u;return this.negative!==0&&(u="-"+u),u}if(o===(o|0)&&o>=2&&o<=36){var s=S[o],v=R[o];u="";var T=this.clone();for(T.negative=0;!T.isZero();){var D=T.modn(v).toString(o);T=T.idivn(v),T.isZero()?u=D+u:u=_[s-D.length]+D+u}for(this.isZero()&&(u="0"+u);u.length%f!==0;)u="0"+u;return this.negative!==0&&(u="-"+u),u}i(!1,"Base should be between 2 and 36")},n.prototype.toNumber=function(){var o=this.words[0];return this.length===2?o+=this.words[1]*67108864:this.length===3&&this.words[2]===1?o+=4503599627370496+this.words[1]*67108864:this.length>2&&i(!1,"Number can only safely store up to 53 bits"),this.negative!==0?-o:o},n.prototype.toJSON=function(){return this.toString(16)},n.prototype.toBuffer=function(o,f){return i(typeof l<"u"),this.toArrayLike(l,o,f)},n.prototype.toArray=function(o,f){return this.toArrayLike(Array,o,f)},n.prototype.toArrayLike=function(o,f,u){var c=this.byteLength(),p=u||Math.max(1,c);i(c<=p,"byte array longer than desired length"),i(p>0,"Requested array length <= 0"),this.strip();var w=f==="le",x=new o(p),g,s,v=this.clone();if(w){for(s=0;!v.isZero();s++)g=v.andln(255),v.iushrn(8),x[s]=g;for(;s=4096&&(u+=13,f>>>=13),f>=64&&(u+=7,f>>>=7),f>=8&&(u+=4,f>>>=4),f>=2&&(u+=2,f>>>=2),u+f},n.prototype._zeroBits=function(o){if(o===0)return 26;var f=o,u=0;return f&8191||(u+=13,f>>>=13),f&127||(u+=7,f>>>=7),f&15||(u+=4,f>>>=4),f&3||(u+=2,f>>>=2),f&1||u++,u},n.prototype.bitLength=function(){var o=this.words[this.length-1],f=this._countBits(o);return(this.length-1)*26+f};function I(M){for(var o=new Array(M.bitLength()),f=0;f>>c}return o}n.prototype.zeroBits=function(){if(this.isZero())return 0;for(var o=0,f=0;fo.length?this.clone().ior(o):o.clone().ior(this)},n.prototype.uor=function(o){return this.length>o.length?this.clone().iuor(o):o.clone().iuor(this)},n.prototype.iuand=function(o){var f;this.length>o.length?f=o:f=this;for(var u=0;uo.length?this.clone().iand(o):o.clone().iand(this)},n.prototype.uand=function(o){return this.length>o.length?this.clone().iuand(o):o.clone().iuand(this)},n.prototype.iuxor=function(o){var f,u;this.length>o.length?(f=this,u=o):(f=o,u=this);for(var c=0;co.length?this.clone().ixor(o):o.clone().ixor(this)},n.prototype.uxor=function(o){return this.length>o.length?this.clone().iuxor(o):o.clone().iuxor(this)},n.prototype.inotn=function(o){i(typeof o=="number"&&o>=0);var f=Math.ceil(o/26)|0,u=o%26;this._expand(f),u>0&&f--;for(var c=0;c0&&(this.words[c]=~this.words[c]&67108863>>26-u),this.strip()},n.prototype.notn=function(o){return this.clone().inotn(o)},n.prototype.setn=function(o,f){i(typeof o=="number"&&o>=0);var u=o/26|0,c=o%26;return this._expand(u+1),f?this.words[u]=this.words[u]|1<o.length?(u=this,c=o):(u=o,c=this);for(var p=0,w=0;w>>26;for(;p!==0&&w>>26;if(this.length=u.length,p!==0)this.words[this.length]=p,this.length++;else if(u!==this)for(;wo.length?this.clone().iadd(o):o.clone().iadd(this)},n.prototype.isub=function(o){if(o.negative!==0){o.negative=0;var f=this.iadd(o);return o.negative=1,f._normSign()}else if(this.negative!==0)return this.negative=0,this.iadd(o),this.negative=1,this._normSign();var u=this.cmp(o);if(u===0)return this.negative=0,this.length=1,this.words[0]=0,this;var c,p;u>0?(c=this,p=o):(c=o,p=this);for(var w=0,x=0;x>26,this.words[x]=f&67108863;for(;w!==0&&x>26,this.words[x]=f&67108863;if(w===0&&x>>26,T=g&67108863,D=Math.min(s,o.length-1),Y=Math.max(0,s-M.length+1);Y<=D;Y++){var Q=s-Y|0;c=M.words[Q]|0,p=o.words[Y]|0,w=c*p+T,v+=w/67108864|0,T=w&67108863}f.words[s]=T|0,g=v|0}return g!==0?f.words[s]=g|0:f.length--,f.strip()}var L=function(o,f,u){var c=o.words,p=f.words,w=u.words,x=0,g,s,v,T=c[0]|0,D=T&8191,Y=T>>>13,Q=c[1]|0,A=Q&8191,E=Q>>>13,q=c[2]|0,V=q&8191,X=q>>>13,b=c[3]|0,y=b&8191,F=b>>>13,U=c[4]|0,Z=U&8191,j=U>>>13,k=c[5]|0,H=k&8191,z=k>>>13,oe=c[6]|0,ee=oe&8191,ne=oe>>>13,me=c[7]|0,he=me&8191,ue=me>>>13,xe=c[8]|0,le=xe&8191,ve=xe>>>13,ce=c[9]|0,ie=ce&8191,fe=ce>>>13,Ee=p[0]|0,de=Ee&8191,be=Ee>>>13,Ke=p[1]|0,we=Ke&8191,Se=Ke>>>13,qe=p[2]|0,ge=qe&8191,Me=qe>>>13,Ve=p[3]|0,_e=Ve&8191,Be=Ve>>>13,ot=p[4]|0,Ae=ot&8191,Ne=ot>>>13,st=p[5]|0,Pe=st&8191,De=st>>>13,ut=p[6]|0,Re=ut&8191,Fe=ut>>>13,ht=p[7]|0,Te=ht&8191,ke=ht>>>13,ct=p[8]|0,Oe=ct&8191,je=ct>>>13,ft=p[9]|0,Ie=ft&8191,$e=ft>>>13;u.negative=o.negative^f.negative,u.length=19,g=Math.imul(D,de),s=Math.imul(D,be),s=s+Math.imul(Y,de)|0,v=Math.imul(Y,be);var tt=(x+g|0)+((s&8191)<<13)|0;x=(v+(s>>>13)|0)+(tt>>>26)|0,tt&=67108863,g=Math.imul(A,de),s=Math.imul(A,be),s=s+Math.imul(E,de)|0,v=Math.imul(E,be),g=g+Math.imul(D,we)|0,s=s+Math.imul(D,Se)|0,s=s+Math.imul(Y,we)|0,v=v+Math.imul(Y,Se)|0;var et=(x+g|0)+((s&8191)<<13)|0;x=(v+(s>>>13)|0)+(et>>>26)|0,et&=67108863,g=Math.imul(V,de),s=Math.imul(V,be),s=s+Math.imul(X,de)|0,v=Math.imul(X,be),g=g+Math.imul(A,we)|0,s=s+Math.imul(A,Se)|0,s=s+Math.imul(E,we)|0,v=v+Math.imul(E,Se)|0,g=g+Math.imul(D,ge)|0,s=s+Math.imul(D,Me)|0,s=s+Math.imul(Y,ge)|0,v=v+Math.imul(Y,Me)|0;var Et=(x+g|0)+((s&8191)<<13)|0;x=(v+(s>>>13)|0)+(Et>>>26)|0,Et&=67108863,g=Math.imul(y,de),s=Math.imul(y,be),s=s+Math.imul(F,de)|0,v=Math.imul(F,be),g=g+Math.imul(V,we)|0,s=s+Math.imul(V,Se)|0,s=s+Math.imul(X,we)|0,v=v+Math.imul(X,Se)|0,g=g+Math.imul(A,ge)|0,s=s+Math.imul(A,Me)|0,s=s+Math.imul(E,ge)|0,v=v+Math.imul(E,Me)|0,g=g+Math.imul(D,_e)|0,s=s+Math.imul(D,Be)|0,s=s+Math.imul(Y,_e)|0,v=v+Math.imul(Y,Be)|0;var It=(x+g|0)+((s&8191)<<13)|0;x=(v+(s>>>13)|0)+(It>>>26)|0,It&=67108863,g=Math.imul(Z,de),s=Math.imul(Z,be),s=s+Math.imul(j,de)|0,v=Math.imul(j,be),g=g+Math.imul(y,we)|0,s=s+Math.imul(y,Se)|0,s=s+Math.imul(F,we)|0,v=v+Math.imul(F,Se)|0,g=g+Math.imul(V,ge)|0,s=s+Math.imul(V,Me)|0,s=s+Math.imul(X,ge)|0,v=v+Math.imul(X,Me)|0,g=g+Math.imul(A,_e)|0,s=s+Math.imul(A,Be)|0,s=s+Math.imul(E,_e)|0,v=v+Math.imul(E,Be)|0,g=g+Math.imul(D,Ae)|0,s=s+Math.imul(D,Ne)|0,s=s+Math.imul(Y,Ae)|0,v=v+Math.imul(Y,Ne)|0;var Pt=(x+g|0)+((s&8191)<<13)|0;x=(v+(s>>>13)|0)+(Pt>>>26)|0,Pt&=67108863,g=Math.imul(H,de),s=Math.imul(H,be),s=s+Math.imul(z,de)|0,v=Math.imul(z,be),g=g+Math.imul(Z,we)|0,s=s+Math.imul(Z,Se)|0,s=s+Math.imul(j,we)|0,v=v+Math.imul(j,Se)|0,g=g+Math.imul(y,ge)|0,s=s+Math.imul(y,Me)|0,s=s+Math.imul(F,ge)|0,v=v+Math.imul(F,Me)|0,g=g+Math.imul(V,_e)|0,s=s+Math.imul(V,Be)|0,s=s+Math.imul(X,_e)|0,v=v+Math.imul(X,Be)|0,g=g+Math.imul(A,Ae)|0,s=s+Math.imul(A,Ne)|0,s=s+Math.imul(E,Ae)|0,v=v+Math.imul(E,Ne)|0,g=g+Math.imul(D,Pe)|0,s=s+Math.imul(D,De)|0,s=s+Math.imul(Y,Pe)|0,v=v+Math.imul(Y,De)|0;var Bt=(x+g|0)+((s&8191)<<13)|0;x=(v+(s>>>13)|0)+(Bt>>>26)|0,Bt&=67108863,g=Math.imul(ee,de),s=Math.imul(ee,be),s=s+Math.imul(ne,de)|0,v=Math.imul(ne,be),g=g+Math.imul(H,we)|0,s=s+Math.imul(H,Se)|0,s=s+Math.imul(z,we)|0,v=v+Math.imul(z,Se)|0,g=g+Math.imul(Z,ge)|0,s=s+Math.imul(Z,Me)|0,s=s+Math.imul(j,ge)|0,v=v+Math.imul(j,Me)|0,g=g+Math.imul(y,_e)|0,s=s+Math.imul(y,Be)|0,s=s+Math.imul(F,_e)|0,v=v+Math.imul(F,Be)|0,g=g+Math.imul(V,Ae)|0,s=s+Math.imul(V,Ne)|0,s=s+Math.imul(X,Ae)|0,v=v+Math.imul(X,Ne)|0,g=g+Math.imul(A,Pe)|0,s=s+Math.imul(A,De)|0,s=s+Math.imul(E,Pe)|0,v=v+Math.imul(E,De)|0,g=g+Math.imul(D,Re)|0,s=s+Math.imul(D,Fe)|0,s=s+Math.imul(Y,Re)|0,v=v+Math.imul(Y,Fe)|0;var Dt=(x+g|0)+((s&8191)<<13)|0;x=(v+(s>>>13)|0)+(Dt>>>26)|0,Dt&=67108863,g=Math.imul(he,de),s=Math.imul(he,be),s=s+Math.imul(ue,de)|0,v=Math.imul(ue,be),g=g+Math.imul(ee,we)|0,s=s+Math.imul(ee,Se)|0,s=s+Math.imul(ne,we)|0,v=v+Math.imul(ne,Se)|0,g=g+Math.imul(H,ge)|0,s=s+Math.imul(H,Me)|0,s=s+Math.imul(z,ge)|0,v=v+Math.imul(z,Me)|0,g=g+Math.imul(Z,_e)|0,s=s+Math.imul(Z,Be)|0,s=s+Math.imul(j,_e)|0,v=v+Math.imul(j,Be)|0,g=g+Math.imul(y,Ae)|0,s=s+Math.imul(y,Ne)|0,s=s+Math.imul(F,Ae)|0,v=v+Math.imul(F,Ne)|0,g=g+Math.imul(V,Pe)|0,s=s+Math.imul(V,De)|0,s=s+Math.imul(X,Pe)|0,v=v+Math.imul(X,De)|0,g=g+Math.imul(A,Re)|0,s=s+Math.imul(A,Fe)|0,s=s+Math.imul(E,Re)|0,v=v+Math.imul(E,Fe)|0,g=g+Math.imul(D,Te)|0,s=s+Math.imul(D,ke)|0,s=s+Math.imul(Y,Te)|0,v=v+Math.imul(Y,ke)|0;var qt=(x+g|0)+((s&8191)<<13)|0;x=(v+(s>>>13)|0)+(qt>>>26)|0,qt&=67108863,g=Math.imul(le,de),s=Math.imul(le,be),s=s+Math.imul(ve,de)|0,v=Math.imul(ve,be),g=g+Math.imul(he,we)|0,s=s+Math.imul(he,Se)|0,s=s+Math.imul(ue,we)|0,v=v+Math.imul(ue,Se)|0,g=g+Math.imul(ee,ge)|0,s=s+Math.imul(ee,Me)|0,s=s+Math.imul(ne,ge)|0,v=v+Math.imul(ne,Me)|0,g=g+Math.imul(H,_e)|0,s=s+Math.imul(H,Be)|0,s=s+Math.imul(z,_e)|0,v=v+Math.imul(z,Be)|0,g=g+Math.imul(Z,Ae)|0,s=s+Math.imul(Z,Ne)|0,s=s+Math.imul(j,Ae)|0,v=v+Math.imul(j,Ne)|0,g=g+Math.imul(y,Pe)|0,s=s+Math.imul(y,De)|0,s=s+Math.imul(F,Pe)|0,v=v+Math.imul(F,De)|0,g=g+Math.imul(V,Re)|0,s=s+Math.imul(V,Fe)|0,s=s+Math.imul(X,Re)|0,v=v+Math.imul(X,Fe)|0,g=g+Math.imul(A,Te)|0,s=s+Math.imul(A,ke)|0,s=s+Math.imul(E,Te)|0,v=v+Math.imul(E,ke)|0,g=g+Math.imul(D,Oe)|0,s=s+Math.imul(D,je)|0,s=s+Math.imul(Y,Oe)|0,v=v+Math.imul(Y,je)|0;var Wt=(x+g|0)+((s&8191)<<13)|0;x=(v+(s>>>13)|0)+(Wt>>>26)|0,Wt&=67108863,g=Math.imul(ie,de),s=Math.imul(ie,be),s=s+Math.imul(fe,de)|0,v=Math.imul(fe,be),g=g+Math.imul(le,we)|0,s=s+Math.imul(le,Se)|0,s=s+Math.imul(ve,we)|0,v=v+Math.imul(ve,Se)|0,g=g+Math.imul(he,ge)|0,s=s+Math.imul(he,Me)|0,s=s+Math.imul(ue,ge)|0,v=v+Math.imul(ue,Me)|0,g=g+Math.imul(ee,_e)|0,s=s+Math.imul(ee,Be)|0,s=s+Math.imul(ne,_e)|0,v=v+Math.imul(ne,Be)|0,g=g+Math.imul(H,Ae)|0,s=s+Math.imul(H,Ne)|0,s=s+Math.imul(z,Ae)|0,v=v+Math.imul(z,Ne)|0,g=g+Math.imul(Z,Pe)|0,s=s+Math.imul(Z,De)|0,s=s+Math.imul(j,Pe)|0,v=v+Math.imul(j,De)|0,g=g+Math.imul(y,Re)|0,s=s+Math.imul(y,Fe)|0,s=s+Math.imul(F,Re)|0,v=v+Math.imul(F,Fe)|0,g=g+Math.imul(V,Te)|0,s=s+Math.imul(V,ke)|0,s=s+Math.imul(X,Te)|0,v=v+Math.imul(X,ke)|0,g=g+Math.imul(A,Oe)|0,s=s+Math.imul(A,je)|0,s=s+Math.imul(E,Oe)|0,v=v+Math.imul(E,je)|0,g=g+Math.imul(D,Ie)|0,s=s+Math.imul(D,$e)|0,s=s+Math.imul(Y,Ie)|0,v=v+Math.imul(Y,$e)|0;var Lt=(x+g|0)+((s&8191)<<13)|0;x=(v+(s>>>13)|0)+(Lt>>>26)|0,Lt&=67108863,g=Math.imul(ie,we),s=Math.imul(ie,Se),s=s+Math.imul(fe,we)|0,v=Math.imul(fe,Se),g=g+Math.imul(le,ge)|0,s=s+Math.imul(le,Me)|0,s=s+Math.imul(ve,ge)|0,v=v+Math.imul(ve,Me)|0,g=g+Math.imul(he,_e)|0,s=s+Math.imul(he,Be)|0,s=s+Math.imul(ue,_e)|0,v=v+Math.imul(ue,Be)|0,g=g+Math.imul(ee,Ae)|0,s=s+Math.imul(ee,Ne)|0,s=s+Math.imul(ne,Ae)|0,v=v+Math.imul(ne,Ne)|0,g=g+Math.imul(H,Pe)|0,s=s+Math.imul(H,De)|0,s=s+Math.imul(z,Pe)|0,v=v+Math.imul(z,De)|0,g=g+Math.imul(Z,Re)|0,s=s+Math.imul(Z,Fe)|0,s=s+Math.imul(j,Re)|0,v=v+Math.imul(j,Fe)|0,g=g+Math.imul(y,Te)|0,s=s+Math.imul(y,ke)|0,s=s+Math.imul(F,Te)|0,v=v+Math.imul(F,ke)|0,g=g+Math.imul(V,Oe)|0,s=s+Math.imul(V,je)|0,s=s+Math.imul(X,Oe)|0,v=v+Math.imul(X,je)|0,g=g+Math.imul(A,Ie)|0,s=s+Math.imul(A,$e)|0,s=s+Math.imul(E,Ie)|0,v=v+Math.imul(E,$e)|0;var dt=(x+g|0)+((s&8191)<<13)|0;x=(v+(s>>>13)|0)+(dt>>>26)|0,dt&=67108863,g=Math.imul(ie,ge),s=Math.imul(ie,Me),s=s+Math.imul(fe,ge)|0,v=Math.imul(fe,Me),g=g+Math.imul(le,_e)|0,s=s+Math.imul(le,Be)|0,s=s+Math.imul(ve,_e)|0,v=v+Math.imul(ve,Be)|0,g=g+Math.imul(he,Ae)|0,s=s+Math.imul(he,Ne)|0,s=s+Math.imul(ue,Ae)|0,v=v+Math.imul(ue,Ne)|0,g=g+Math.imul(ee,Pe)|0,s=s+Math.imul(ee,De)|0,s=s+Math.imul(ne,Pe)|0,v=v+Math.imul(ne,De)|0,g=g+Math.imul(H,Re)|0,s=s+Math.imul(H,Fe)|0,s=s+Math.imul(z,Re)|0,v=v+Math.imul(z,Fe)|0,g=g+Math.imul(Z,Te)|0,s=s+Math.imul(Z,ke)|0,s=s+Math.imul(j,Te)|0,v=v+Math.imul(j,ke)|0,g=g+Math.imul(y,Oe)|0,s=s+Math.imul(y,je)|0,s=s+Math.imul(F,Oe)|0,v=v+Math.imul(F,je)|0,g=g+Math.imul(V,Ie)|0,s=s+Math.imul(V,$e)|0,s=s+Math.imul(X,Ie)|0,v=v+Math.imul(X,$e)|0;var Tt=(x+g|0)+((s&8191)<<13)|0;x=(v+(s>>>13)|0)+(Tt>>>26)|0,Tt&=67108863,g=Math.imul(ie,_e),s=Math.imul(ie,Be),s=s+Math.imul(fe,_e)|0,v=Math.imul(fe,Be),g=g+Math.imul(le,Ae)|0,s=s+Math.imul(le,Ne)|0,s=s+Math.imul(ve,Ae)|0,v=v+Math.imul(ve,Ne)|0,g=g+Math.imul(he,Pe)|0,s=s+Math.imul(he,De)|0,s=s+Math.imul(ue,Pe)|0,v=v+Math.imul(ue,De)|0,g=g+Math.imul(ee,Re)|0,s=s+Math.imul(ee,Fe)|0,s=s+Math.imul(ne,Re)|0,v=v+Math.imul(ne,Fe)|0,g=g+Math.imul(H,Te)|0,s=s+Math.imul(H,ke)|0,s=s+Math.imul(z,Te)|0,v=v+Math.imul(z,ke)|0,g=g+Math.imul(Z,Oe)|0,s=s+Math.imul(Z,je)|0,s=s+Math.imul(j,Oe)|0,v=v+Math.imul(j,je)|0,g=g+Math.imul(y,Ie)|0,s=s+Math.imul(y,$e)|0,s=s+Math.imul(F,Ie)|0,v=v+Math.imul(F,$e)|0;var Mt=(x+g|0)+((s&8191)<<13)|0;x=(v+(s>>>13)|0)+(Mt>>>26)|0,Mt&=67108863,g=Math.imul(ie,Ae),s=Math.imul(ie,Ne),s=s+Math.imul(fe,Ae)|0,v=Math.imul(fe,Ne),g=g+Math.imul(le,Pe)|0,s=s+Math.imul(le,De)|0,s=s+Math.imul(ve,Pe)|0,v=v+Math.imul(ve,De)|0,g=g+Math.imul(he,Re)|0,s=s+Math.imul(he,Fe)|0,s=s+Math.imul(ue,Re)|0,v=v+Math.imul(ue,Fe)|0,g=g+Math.imul(ee,Te)|0,s=s+Math.imul(ee,ke)|0,s=s+Math.imul(ne,Te)|0,v=v+Math.imul(ne,ke)|0,g=g+Math.imul(H,Oe)|0,s=s+Math.imul(H,je)|0,s=s+Math.imul(z,Oe)|0,v=v+Math.imul(z,je)|0,g=g+Math.imul(Z,Ie)|0,s=s+Math.imul(Z,$e)|0,s=s+Math.imul(j,Ie)|0,v=v+Math.imul(j,$e)|0;var bt=(x+g|0)+((s&8191)<<13)|0;x=(v+(s>>>13)|0)+(bt>>>26)|0,bt&=67108863,g=Math.imul(ie,Pe),s=Math.imul(ie,De),s=s+Math.imul(fe,Pe)|0,v=Math.imul(fe,De),g=g+Math.imul(le,Re)|0,s=s+Math.imul(le,Fe)|0,s=s+Math.imul(ve,Re)|0,v=v+Math.imul(ve,Fe)|0,g=g+Math.imul(he,Te)|0,s=s+Math.imul(he,ke)|0,s=s+Math.imul(ue,Te)|0,v=v+Math.imul(ue,ke)|0,g=g+Math.imul(ee,Oe)|0,s=s+Math.imul(ee,je)|0,s=s+Math.imul(ne,Oe)|0,v=v+Math.imul(ne,je)|0,g=g+Math.imul(H,Ie)|0,s=s+Math.imul(H,$e)|0,s=s+Math.imul(z,Ie)|0,v=v+Math.imul(z,$e)|0;var Ct=(x+g|0)+((s&8191)<<13)|0;x=(v+(s>>>13)|0)+(Ct>>>26)|0,Ct&=67108863,g=Math.imul(ie,Re),s=Math.imul(ie,Fe),s=s+Math.imul(fe,Re)|0,v=Math.imul(fe,Fe),g=g+Math.imul(le,Te)|0,s=s+Math.imul(le,ke)|0,s=s+Math.imul(ve,Te)|0,v=v+Math.imul(ve,ke)|0,g=g+Math.imul(he,Oe)|0,s=s+Math.imul(he,je)|0,s=s+Math.imul(ue,Oe)|0,v=v+Math.imul(ue,je)|0,g=g+Math.imul(ee,Ie)|0,s=s+Math.imul(ee,$e)|0,s=s+Math.imul(ne,Ie)|0,v=v+Math.imul(ne,$e)|0;var gt=(x+g|0)+((s&8191)<<13)|0;x=(v+(s>>>13)|0)+(gt>>>26)|0,gt&=67108863,g=Math.imul(ie,Te),s=Math.imul(ie,ke),s=s+Math.imul(fe,Te)|0,v=Math.imul(fe,ke),g=g+Math.imul(le,Oe)|0,s=s+Math.imul(le,je)|0,s=s+Math.imul(ve,Oe)|0,v=v+Math.imul(ve,je)|0,g=g+Math.imul(he,Ie)|0,s=s+Math.imul(he,$e)|0,s=s+Math.imul(ue,Ie)|0,v=v+Math.imul(ue,$e)|0;var wt=(x+g|0)+((s&8191)<<13)|0;x=(v+(s>>>13)|0)+(wt>>>26)|0,wt&=67108863,g=Math.imul(ie,Oe),s=Math.imul(ie,je),s=s+Math.imul(fe,Oe)|0,v=Math.imul(fe,je),g=g+Math.imul(le,Ie)|0,s=s+Math.imul(le,$e)|0,s=s+Math.imul(ve,Ie)|0,v=v+Math.imul(ve,$e)|0;var Ft=(x+g|0)+((s&8191)<<13)|0;x=(v+(s>>>13)|0)+(Ft>>>26)|0,Ft&=67108863,g=Math.imul(ie,Ie),s=Math.imul(ie,$e),s=s+Math.imul(fe,Ie)|0,v=Math.imul(fe,$e);var jt=(x+g|0)+((s&8191)<<13)|0;return x=(v+(s>>>13)|0)+(jt>>>26)|0,jt&=67108863,w[0]=tt,w[1]=et,w[2]=Et,w[3]=It,w[4]=Pt,w[5]=Bt,w[6]=Dt,w[7]=qt,w[8]=Wt,w[9]=Lt,w[10]=dt,w[11]=Tt,w[12]=Mt,w[13]=bt,w[14]=Ct,w[15]=gt,w[16]=wt,w[17]=Ft,w[18]=jt,x!==0&&(w[19]=x,u.length++),u};Math.imul||(L=O);function B(M,o,f){f.negative=o.negative^M.negative,f.length=M.length+o.length;for(var u=0,c=0,p=0;p>>26)|0,c+=w>>>26,w&=67108863}f.words[p]=x,u=w,w=c}return u!==0?f.words[p]=u:f.length--,f.strip()}function P(M,o,f){var u=new C;return u.mulp(M,o,f)}n.prototype.mulTo=function(o,f){var u,c=this.length+o.length;return this.length===10&&o.length===10?u=L(this,o,f):c<63?u=O(this,o,f):c<1024?u=B(this,o,f):u=P(this,o,f),u};function C(M,o){this.x=M,this.y=o}C.prototype.makeRBT=function(o){for(var f=new Array(o),u=n.prototype._countBits(o)-1,c=0;c>=1;return c},C.prototype.permute=function(o,f,u,c,p,w){for(var x=0;x>>1)p++;return 1<>>13,u[2*w+1]=p&8191,p=p>>>13;for(w=2*f;w>=26,f+=c/67108864|0,f+=p>>>26,this.words[u]=p&67108863}return f!==0&&(this.words[u]=f,this.length++),this},n.prototype.muln=function(o){return this.clone().imuln(o)},n.prototype.sqr=function(){return this.mul(this)},n.prototype.isqr=function(){return this.imul(this.clone())},n.prototype.pow=function(o){var f=I(o);if(f.length===0)return new n(1);for(var u=this,c=0;c=0);var f=o%26,u=(o-f)/26,c=67108863>>>26-f<<26-f,p;if(f!==0){var w=0;for(p=0;p>>26-f}w&&(this.words[p]=w,this.length++)}if(u!==0){for(p=this.length-1;p>=0;p--)this.words[p+u]=this.words[p];for(p=0;p=0);var c;f?c=(f-f%26)/26:c=0;var p=o%26,w=Math.min((o-p)/26,this.length),x=67108863^67108863>>>p<w)for(this.length-=w,s=0;s=0&&(v!==0||s>=c);s--){var T=this.words[s]|0;this.words[s]=v<<26-p|T>>>p,v=T&x}return g&&v!==0&&(g.words[g.length++]=v),this.length===0&&(this.words[0]=0,this.length=1),this.strip()},n.prototype.ishrn=function(o,f,u){return i(this.negative===0),this.iushrn(o,f,u)},n.prototype.shln=function(o){return this.clone().ishln(o)},n.prototype.ushln=function(o){return this.clone().iushln(o)},n.prototype.shrn=function(o){return this.clone().ishrn(o)},n.prototype.ushrn=function(o){return this.clone().iushrn(o)},n.prototype.testn=function(o){i(typeof o=="number"&&o>=0);var f=o%26,u=(o-f)/26,c=1<=0);var f=o%26,u=(o-f)/26;if(i(this.negative===0,"imaskn works only with positive numbers"),this.length<=u)return this;if(f!==0&&u++,this.length=Math.min(u,this.length),f!==0){var c=67108863^67108863>>>f<=67108864;f++)this.words[f]-=67108864,f===this.length-1?this.words[f+1]=1:this.words[f+1]++;return this.length=Math.max(this.length,f+1),this},n.prototype.isubn=function(o){if(i(typeof o=="number"),i(o<67108864),o<0)return this.iaddn(-o);if(this.negative!==0)return this.negative=0,this.iaddn(o),this.negative=1,this;if(this.words[0]-=o,this.length===1&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var f=0;f>26)-(g/67108864|0),this.words[p+u]=w&67108863}for(;p>26,this.words[p+u]=w&67108863;if(x===0)return this.strip();for(i(x===-1),x=0,p=0;p>26,this.words[p]=w&67108863;return this.negative=1,this.strip()},n.prototype._wordDiv=function(o,f){var u=this.length-o.length,c=this.clone(),p=o,w=p.words[p.length-1]|0,x=this._countBits(w);u=26-x,u!==0&&(p=p.ushln(u),c.iushln(u),w=p.words[p.length-1]|0);var g=c.length-p.length,s;if(f!=="mod"){s=new n(null),s.length=g+1,s.words=new Array(s.length);for(var v=0;v=0;D--){var Y=(c.words[p.length+D]|0)*67108864+(c.words[p.length+D-1]|0);for(Y=Math.min(Y/w|0,67108863),c._ishlnsubmul(p,Y,D);c.negative!==0;)Y--,c.negative=0,c._ishlnsubmul(p,1,D),c.isZero()||(c.negative^=1);s&&(s.words[D]=Y)}return s&&s.strip(),c.strip(),f!=="div"&&u!==0&&c.iushrn(u),{div:s||null,mod:c}},n.prototype.divmod=function(o,f,u){if(i(!o.isZero()),this.isZero())return{div:new n(0),mod:new n(0)};var c,p,w;return this.negative!==0&&o.negative===0?(w=this.neg().divmod(o,f),f!=="mod"&&(c=w.div.neg()),f!=="div"&&(p=w.mod.neg(),u&&p.negative!==0&&p.iadd(o)),{div:c,mod:p}):this.negative===0&&o.negative!==0?(w=this.divmod(o.neg(),f),f!=="mod"&&(c=w.div.neg()),{div:c,mod:w.mod}):this.negative&o.negative?(w=this.neg().divmod(o.neg(),f),f!=="div"&&(p=w.mod.neg(),u&&p.negative!==0&&p.isub(o)),{div:w.div,mod:p}):o.length>this.length||this.cmp(o)<0?{div:new n(0),mod:this}:o.length===1?f==="div"?{div:this.divn(o.words[0]),mod:null}:f==="mod"?{div:null,mod:new n(this.modn(o.words[0]))}:{div:this.divn(o.words[0]),mod:new n(this.modn(o.words[0]))}:this._wordDiv(o,f)},n.prototype.div=function(o){return this.divmod(o,"div",!1).div},n.prototype.mod=function(o){return this.divmod(o,"mod",!1).mod},n.prototype.umod=function(o){return this.divmod(o,"mod",!0).mod},n.prototype.divRound=function(o){var f=this.divmod(o);if(f.mod.isZero())return f.div;var u=f.div.negative!==0?f.mod.isub(o):f.mod,c=o.ushrn(1),p=o.andln(1),w=u.cmp(c);return w<0||p===1&&w===0?f.div:f.div.negative!==0?f.div.isubn(1):f.div.iaddn(1)},n.prototype.modn=function(o){i(o<=67108863);for(var f=(1<<26)%o,u=0,c=this.length-1;c>=0;c--)u=(f*u+(this.words[c]|0))%o;return u},n.prototype.idivn=function(o){i(o<=67108863);for(var f=0,u=this.length-1;u>=0;u--){var c=(this.words[u]|0)+f*67108864;this.words[u]=c/o|0,f=c%o}return this.strip()},n.prototype.divn=function(o){return this.clone().idivn(o)},n.prototype.egcd=function(o){i(o.negative===0),i(!o.isZero());var f=this,u=o.clone();f.negative!==0?f=f.umod(o):f=f.clone();for(var c=new n(1),p=new n(0),w=new n(0),x=new n(1),g=0;f.isEven()&&u.isEven();)f.iushrn(1),u.iushrn(1),++g;for(var s=u.clone(),v=f.clone();!f.isZero();){for(var T=0,D=1;!(f.words[0]&D)&&T<26;++T,D<<=1);if(T>0)for(f.iushrn(T);T-- >0;)(c.isOdd()||p.isOdd())&&(c.iadd(s),p.isub(v)),c.iushrn(1),p.iushrn(1);for(var Y=0,Q=1;!(u.words[0]&Q)&&Y<26;++Y,Q<<=1);if(Y>0)for(u.iushrn(Y);Y-- >0;)(w.isOdd()||x.isOdd())&&(w.iadd(s),x.isub(v)),w.iushrn(1),x.iushrn(1);f.cmp(u)>=0?(f.isub(u),c.isub(w),p.isub(x)):(u.isub(f),w.isub(c),x.isub(p))}return{a:w,b:x,gcd:u.iushln(g)}},n.prototype._invmp=function(o){i(o.negative===0),i(!o.isZero());var f=this,u=o.clone();f.negative!==0?f=f.umod(o):f=f.clone();for(var c=new n(1),p=new n(0),w=u.clone();f.cmpn(1)>0&&u.cmpn(1)>0;){for(var x=0,g=1;!(f.words[0]&g)&&x<26;++x,g<<=1);if(x>0)for(f.iushrn(x);x-- >0;)c.isOdd()&&c.iadd(w),c.iushrn(1);for(var s=0,v=1;!(u.words[0]&v)&&s<26;++s,v<<=1);if(s>0)for(u.iushrn(s);s-- >0;)p.isOdd()&&p.iadd(w),p.iushrn(1);f.cmp(u)>=0?(f.isub(u),c.isub(p)):(u.isub(f),p.isub(c))}var T;return f.cmpn(1)===0?T=c:T=p,T.cmpn(0)<0&&T.iadd(o),T},n.prototype.gcd=function(o){if(this.isZero())return o.abs();if(o.isZero())return this.abs();var f=this.clone(),u=o.clone();f.negative=0,u.negative=0;for(var c=0;f.isEven()&&u.isEven();c++)f.iushrn(1),u.iushrn(1);do{for(;f.isEven();)f.iushrn(1);for(;u.isEven();)u.iushrn(1);var p=f.cmp(u);if(p<0){var w=f;f=u,u=w}else if(p===0||u.cmpn(1)===0)break;f.isub(u)}while(!0);return u.iushln(c)},n.prototype.invm=function(o){return this.egcd(o).a.umod(o)},n.prototype.isEven=function(){return(this.words[0]&1)===0},n.prototype.isOdd=function(){return(this.words[0]&1)===1},n.prototype.andln=function(o){return this.words[0]&o},n.prototype.bincn=function(o){i(typeof o=="number");var f=o%26,u=(o-f)/26,c=1<>>26,x&=67108863,this.words[w]=x}return p!==0&&(this.words[w]=p,this.length++),this},n.prototype.isZero=function(){return this.length===1&&this.words[0]===0},n.prototype.cmpn=function(o){var f=o<0;if(this.negative!==0&&!f)return-1;if(this.negative===0&&f)return 1;this.strip();var u;if(this.length>1)u=1;else{f&&(o=-o),i(o<=67108863,"Number is too big");var c=this.words[0]|0;u=c===o?0:c