UNPKG

@swtc/serializer

Version:
1 lines 114 kB
import t from"inherits";import{Factory as i}from"@swtc/wallet";import{allNumeric as r,isCustomTum as e,isRelation as n,isTumCode as s,isCurrency as o,isLetterNumer as h,AMOUNT_CONSTS as u,isNumber as a,isFloat as l,convertHexToString as f,isString as c,isHexHASH256String as p,convertIntegerToByteArray as m,readAndSum as d,isHexInt64String as g,INVERSE_FIELDS_MAP as v,sort_fields as y,convertStringToHex as w,convertByteArrayToHex as M,get_ledger_entry_type as b,get_transaction_type as _,TYPES_MAP as T,FIELDS_MAP as S,funcAssert as A,hex_str_to_byte_array as E,TRANSACTION_TYPES as B,LEDGER_ENTRY_TYPES as N,METADATA as k,REQUIRED as O,get_transaction_result as D,get_char_from_num as x,SM3 as z}from"@swtc/common";import I from"buffer";var R=Object.prototype.hasOwnProperty,L=Object.prototype.toString,j=Object.defineProperty,C=Object.getOwnPropertyDescriptor,P=function(t){return"function"==typeof Array.isArray?Array.isArray(t):"[object Array]"===L.call(t)},q=function(t){if(!t||"[object Object]"!==L.call(t))return!1;var i,r=R.call(t,"constructor"),e=t.constructor&&t.constructor.prototype&&R.call(t.constructor.prototype,"isPrototypeOf");if(t.constructor&&!r&&!e)return!1;for(i in t);return void 0===i||R.call(t,i)},V=function(t,i){j&&"__proto__"===i.name?j(t,i.name,{enumerable:!0,configurable:!0,value:i.newValue,writable:!0}):t[i.name]=i.newValue},Z=function(t,i){if("__proto__"===i){if(!R.call(t,i))return;if(C)return C(t,i).value}return t[i]},H=function t(){var i,r,e,n,s,o,h=arguments[0],u=1,a=arguments.length,l=!1;for("boolean"==typeof h&&(l=h,h=arguments[1]||{},u=2),(null==h||"object"!=typeof h&&"function"!=typeof h)&&(h={});u<a;++u)if(null!=(i=arguments[u]))for(r in i)e=Z(h,r),h!==(n=Z(i,r))&&(l&&n&&(q(n)||(s=P(n)))?(s?(s=!1,o=e&&P(e)?e:[]):o=e&&q(e)?e:{},V(h,{name:r,newValue:t(l,o,n)})):void 0!==n&&V(h,{name:r,newValue:n}));return h},U="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function F(t,i,r){return t(r={path:i,exports:{},require:function(t,i){return function(){throw new Error("Dynamic requires are not currently supported by @rollup/plugin-commonjs")}(null==i&&r.path)}},r.exports),r.exports}var K=G;function G(t,i){if(!t)throw new Error(i||"Assertion failed")}function $(t,i){return 55296==(64512&t.charCodeAt(i))&&(!(i<0||i+1>=t.length)&&56320==(64512&t.charCodeAt(i+1)))}function J(t){return(t>>>24|t>>>8&65280|t<<8&16711680|(255&t)<<24)>>>0}function W(t){return 1===t.length?"0"+t:t}function X(t){return 7===t.length?"0"+t:6===t.length?"00"+t:5===t.length?"000"+t:4===t.length?"0000"+t:3===t.length?"00000"+t:2===t.length?"000000"+t:1===t.length?"0000000"+t:t}G.equal=function(t,i,r){if(t!=i)throw new Error(r||"Assertion failed: "+t+" != "+i)};var Y={inherits:t,toArray:function(t,i){if(Array.isArray(t))return t.slice();if(!t)return[];var r=[];if("string"==typeof t)if(i){if("hex"===i)for((t=t.replace(/[^a-z0-9]+/gi,"")).length%2!=0&&(t="0"+t),n=0;n<t.length;n+=2)r.push(parseInt(t[n]+t[n+1],16))}else for(var e=0,n=0;n<t.length;n++){var s=t.charCodeAt(n);s<128?r[e++]=s:s<2048?(r[e++]=s>>6|192,r[e++]=63&s|128):$(t,n)?(s=65536+((1023&s)<<10)+(1023&t.charCodeAt(++n)),r[e++]=s>>18|240,r[e++]=s>>12&63|128,r[e++]=s>>6&63|128,r[e++]=63&s|128):(r[e++]=s>>12|224,r[e++]=s>>6&63|128,r[e++]=63&s|128)}else for(n=0;n<t.length;n++)r[n]=0|t[n];return r},toHex:function(t){for(var i="",r=0;r<t.length;r++)i+=W(t[r].toString(16));return i},htonl:J,toHex32:function(t,i){for(var r="",e=0;e<t.length;e++){var n=t[e];"little"===i&&(n=J(n)),r+=X(n.toString(16))}return r},zero2:W,zero8:X,join32:function(t,i,r,e){var n=r-i;K(n%4==0);for(var s=new Array(n/4),o=0,h=i;o<s.length;o++,h+=4){var u;u="big"===e?t[h]<<24|t[h+1]<<16|t[h+2]<<8|t[h+3]:t[h+3]<<24|t[h+2]<<16|t[h+1]<<8|t[h],s[o]=u>>>0}return s},split32:function(t,i){for(var r=new Array(4*t.length),e=0,n=0;e<t.length;e++,n+=4){var s=t[e];"big"===i?(r[n]=s>>>24,r[n+1]=s>>>16&255,r[n+2]=s>>>8&255,r[n+3]=255&s):(r[n+3]=s>>>24,r[n+2]=s>>>16&255,r[n+1]=s>>>8&255,r[n]=255&s)}return r},rotr32:function(t,i){return t>>>i|t<<32-i},rotl32:function(t,i){return t<<i|t>>>32-i},sum32:function(t,i){return t+i>>>0},sum32_3:function(t,i,r){return t+i+r>>>0},sum32_4:function(t,i,r,e){return t+i+r+e>>>0},sum32_5:function(t,i,r,e,n){return t+i+r+e+n>>>0},sum64:function(t,i,r,e){var n=t[i],s=e+t[i+1]>>>0,o=(s<e?1:0)+r+n;t[i]=o>>>0,t[i+1]=s},sum64_hi:function(t,i,r,e){return(i+e>>>0<i?1:0)+t+r>>>0},sum64_lo:function(t,i,r,e){return i+e>>>0},sum64_4_hi:function(t,i,r,e,n,s,o,h){var u=0,a=i;return u+=(a=a+e>>>0)<i?1:0,u+=(a=a+s>>>0)<s?1:0,t+r+n+o+(u+=(a=a+h>>>0)<h?1:0)>>>0},sum64_4_lo:function(t,i,r,e,n,s,o,h){return i+e+s+h>>>0},sum64_5_hi:function(t,i,r,e,n,s,o,h,u,a){var l=0,f=i;return l+=(f=f+e>>>0)<i?1:0,l+=(f=f+s>>>0)<s?1:0,l+=(f=f+h>>>0)<h?1:0,t+r+n+o+u+(l+=(f=f+a>>>0)<a?1:0)>>>0},sum64_5_lo:function(t,i,r,e,n,s,o,h,u,a){return i+e+s+h+a>>>0},rotr64_hi:function(t,i,r){return(i<<32-r|t>>>r)>>>0},rotr64_lo:function(t,i,r){return(t<<32-r|i>>>r)>>>0},shr64_hi:function(t,i,r){return t>>>r},shr64_lo:function(t,i,r){return(t<<32-r|i>>>r)>>>0}};function Q(){this.pending=null,this.pendingTotal=0,this.blockSize=this.constructor.blockSize,this.outSize=this.constructor.outSize,this.hmacStrength=this.constructor.hmacStrength,this.padLength=this.constructor.padLength/8,this.endian="big",this._delta8=this.blockSize/8,this._delta32=this.blockSize/32}var tt=Q;Q.prototype.update=function(t,i){if(t=Y.toArray(t,i),this.pending?this.pending=this.pending.concat(t):this.pending=t,this.pendingTotal+=t.length,this.pending.length>=this._delta8){var r=(t=this.pending).length%this._delta8;this.pending=t.slice(t.length-r,t.length),0===this.pending.length&&(this.pending=null),t=Y.join32(t,0,t.length-r,this.endian);for(var e=0;e<t.length;e+=this._delta32)this._update(t,e,e+this._delta32)}return this},Q.prototype.digest=function(t){return this.update(this._pad()),K(null===this.pending),this._digest(t)},Q.prototype._pad=function(){var t=this.pendingTotal,i=this._delta8,r=i-(t+this.padLength)%i,e=new Array(r+this.padLength);e[0]=128;for(var n=1;n<r;n++)e[n]=0;if(t<<=3,"big"===this.endian){for(var s=8;s<this.padLength;s++)e[n++]=0;e[n++]=0,e[n++]=0,e[n++]=0,e[n++]=0,e[n++]=t>>>24&255,e[n++]=t>>>16&255,e[n++]=t>>>8&255,e[n++]=255&t}else for(e[n++]=255&t,e[n++]=t>>>8&255,e[n++]=t>>>16&255,e[n++]=t>>>24&255,e[n++]=0,e[n++]=0,e[n++]=0,e[n++]=0,s=8;s<this.padLength;s++)e[n++]=0;return e};var it={BlockHash:tt},rt=Y.rotr32;function et(t,i,r){return t&i^~t&r}function nt(t,i,r){return t&i^t&r^i&r}function st(t,i,r){return t^i^r}var ot={ft_1:function(t,i,r,e){return 0===t?et(i,r,e):1===t||3===t?st(i,r,e):2===t?nt(i,r,e):void 0},ch32:et,maj32:nt,p32:st,s0_256:function(t){return rt(t,2)^rt(t,13)^rt(t,22)},s1_256:function(t){return rt(t,6)^rt(t,11)^rt(t,25)},g0_256:function(t){return rt(t,7)^rt(t,18)^t>>>3},g1_256:function(t){return rt(t,17)^rt(t,19)^t>>>10}},ht=Y.rotl32,ut=Y.sum32,at=Y.sum32_5,lt=ot.ft_1,ft=it.BlockHash,ct=[1518500249,1859775393,2400959708,3395469782];function pt(){if(!(this instanceof pt))return new pt;ft.call(this),this.h=[1732584193,4023233417,2562383102,271733878,3285377520],this.W=new Array(80)}Y.inherits(pt,ft);var mt=pt;pt.blockSize=512,pt.outSize=160,pt.hmacStrength=80,pt.padLength=64,pt.prototype._update=function(t,i){for(var r=this.W,e=0;e<16;e++)r[e]=t[i+e];for(;e<r.length;e++)r[e]=ht(r[e-3]^r[e-8]^r[e-14]^r[e-16],1);var n=this.h[0],s=this.h[1],o=this.h[2],h=this.h[3],u=this.h[4];for(e=0;e<r.length;e++){var a=~~(e/20),l=at(ht(n,5),lt(a,s,o,h),u,r[e],ct[a]);u=h,h=o,o=ht(s,30),s=n,n=l}this.h[0]=ut(this.h[0],n),this.h[1]=ut(this.h[1],s),this.h[2]=ut(this.h[2],o),this.h[3]=ut(this.h[3],h),this.h[4]=ut(this.h[4],u)},pt.prototype._digest=function(t){return"hex"===t?Y.toHex32(this.h,"big"):Y.split32(this.h,"big")};var dt=Y.sum32,gt=Y.sum32_4,vt=Y.sum32_5,yt=ot.ch32,wt=ot.maj32,Mt=ot.s0_256,bt=ot.s1_256,_t=ot.g0_256,Tt=ot.g1_256,St=it.BlockHash,At=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298];function Et(){if(!(this instanceof Et))return new Et;St.call(this),this.h=[1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225],this.k=At,this.W=new Array(64)}Y.inherits(Et,St);var Bt=Et;function Nt(){if(!(this instanceof Nt))return new Nt;Bt.call(this),this.h=[3238371032,914150663,812702999,4144912697,4290775857,1750603025,1694076839,3204075428]}Et.blockSize=512,Et.outSize=256,Et.hmacStrength=192,Et.padLength=64,Et.prototype._update=function(t,i){for(var r=this.W,e=0;e<16;e++)r[e]=t[i+e];for(;e<r.length;e++)r[e]=gt(Tt(r[e-2]),r[e-7],_t(r[e-15]),r[e-16]);var n=this.h[0],s=this.h[1],o=this.h[2],h=this.h[3],u=this.h[4],a=this.h[5],l=this.h[6],f=this.h[7];for(K(this.k.length===r.length),e=0;e<r.length;e++){var c=vt(f,bt(u),yt(u,a,l),this.k[e],r[e]),p=dt(Mt(n),wt(n,s,o));f=l,l=a,a=u,u=dt(h,c),h=o,o=s,s=n,n=dt(c,p)}this.h[0]=dt(this.h[0],n),this.h[1]=dt(this.h[1],s),this.h[2]=dt(this.h[2],o),this.h[3]=dt(this.h[3],h),this.h[4]=dt(this.h[4],u),this.h[5]=dt(this.h[5],a),this.h[6]=dt(this.h[6],l),this.h[7]=dt(this.h[7],f)},Et.prototype._digest=function(t){return"hex"===t?Y.toHex32(this.h,"big"):Y.split32(this.h,"big")},Y.inherits(Nt,Bt);var kt=Nt;Nt.blockSize=512,Nt.outSize=224,Nt.hmacStrength=192,Nt.padLength=64,Nt.prototype._digest=function(t){return"hex"===t?Y.toHex32(this.h.slice(0,7),"big"):Y.split32(this.h.slice(0,7),"big")};var Ot=Y.rotr64_hi,Dt=Y.rotr64_lo,xt=Y.shr64_hi,zt=Y.shr64_lo,It=Y.sum64,Rt=Y.sum64_hi,Lt=Y.sum64_lo,jt=Y.sum64_4_hi,Ct=Y.sum64_4_lo,Pt=Y.sum64_5_hi,qt=Y.sum64_5_lo,Vt=it.BlockHash,Zt=[1116352408,3609767458,1899447441,602891725,3049323471,3964484399,3921009573,2173295548,961987163,4081628472,1508970993,3053834265,2453635748,2937671579,2870763221,3664609560,3624381080,2734883394,310598401,1164996542,607225278,1323610764,1426881987,3590304994,1925078388,4068182383,2162078206,991336113,2614888103,633803317,3248222580,3479774868,3835390401,2666613458,4022224774,944711139,264347078,2341262773,604807628,2007800933,770255983,1495990901,1249150122,1856431235,1555081692,3175218132,1996064986,2198950837,2554220882,3999719339,2821834349,766784016,2952996808,2566594879,3210313671,3203337956,3336571891,1034457026,3584528711,2466948901,113926993,3758326383,338241895,168717936,666307205,1188179964,773529912,1546045734,1294757372,1522805485,1396182291,2643833823,1695183700,2343527390,1986661051,1014477480,2177026350,1206759142,2456956037,344077627,2730485921,1290863460,2820302411,3158454273,3259730800,3505952657,3345764771,106217008,3516065817,3606008344,3600352804,1432725776,4094571909,1467031594,275423344,851169720,430227734,3100823752,506948616,1363258195,659060556,3750685593,883997877,3785050280,958139571,3318307427,1322822218,3812723403,1537002063,2003034995,1747873779,3602036899,1955562222,1575990012,2024104815,1125592928,2227730452,2716904306,2361852424,442776044,2428436474,593698344,2756734187,3733110249,3204031479,2999351573,3329325298,3815920427,3391569614,3928383900,3515267271,566280711,3940187606,3454069534,4118630271,4000239992,116418474,1914138554,174292421,2731055270,289380356,3203993006,460393269,320620315,685471733,587496836,852142971,1086792851,1017036298,365543100,1126000580,2618297676,1288033470,3409855158,1501505948,4234509866,1607167915,987167468,1816402316,1246189591];function Ht(){if(!(this instanceof Ht))return new Ht;Vt.call(this),this.h=[1779033703,4089235720,3144134277,2227873595,1013904242,4271175723,2773480762,1595750129,1359893119,2917565137,2600822924,725511199,528734635,4215389547,1541459225,327033209],this.k=Zt,this.W=new Array(160)}Y.inherits(Ht,Vt);var Ut=Ht;function Ft(t,i,r,e,n){var s=t&r^~t&n;return s<0&&(s+=4294967296),s}function Kt(t,i,r,e,n,s){var o=i&e^~i&s;return o<0&&(o+=4294967296),o}function Gt(t,i,r,e,n){var s=t&r^t&n^r&n;return s<0&&(s+=4294967296),s}function $t(t,i,r,e,n,s){var o=i&e^i&s^e&s;return o<0&&(o+=4294967296),o}function Jt(t,i){var r=Ot(t,i,28)^Ot(i,t,2)^Ot(i,t,7);return r<0&&(r+=4294967296),r}function Wt(t,i){var r=Dt(t,i,28)^Dt(i,t,2)^Dt(i,t,7);return r<0&&(r+=4294967296),r}function Xt(t,i){var r=Ot(t,i,14)^Ot(t,i,18)^Ot(i,t,9);return r<0&&(r+=4294967296),r}function Yt(t,i){var r=Dt(t,i,14)^Dt(t,i,18)^Dt(i,t,9);return r<0&&(r+=4294967296),r}function Qt(t,i){var r=Ot(t,i,1)^Ot(t,i,8)^xt(t,i,7);return r<0&&(r+=4294967296),r}function ti(t,i){var r=Dt(t,i,1)^Dt(t,i,8)^zt(t,i,7);return r<0&&(r+=4294967296),r}function ii(t,i){var r=Ot(t,i,19)^Ot(i,t,29)^xt(t,i,6);return r<0&&(r+=4294967296),r}function ri(t,i){var r=Dt(t,i,19)^Dt(i,t,29)^zt(t,i,6);return r<0&&(r+=4294967296),r}function ei(){if(!(this instanceof ei))return new ei;Ut.call(this),this.h=[3418070365,3238371032,1654270250,914150663,2438529370,812702999,355462360,4144912697,1731405415,4290775857,2394180231,1750603025,3675008525,1694076839,1203062813,3204075428]}Ht.blockSize=1024,Ht.outSize=512,Ht.hmacStrength=192,Ht.padLength=128,Ht.prototype._prepareBlock=function(t,i){for(var r=this.W,e=0;e<32;e++)r[e]=t[i+e];for(;e<r.length;e+=2){var n=ii(r[e-4],r[e-3]),s=ri(r[e-4],r[e-3]),o=r[e-14],h=r[e-13],u=Qt(r[e-30],r[e-29]),a=ti(r[e-30],r[e-29]),l=r[e-32],f=r[e-31];r[e]=jt(n,s,o,h,u,a,l,f),r[e+1]=Ct(n,s,o,h,u,a,l,f)}},Ht.prototype._update=function(t,i){this._prepareBlock(t,i);var r=this.W,e=this.h[0],n=this.h[1],s=this.h[2],o=this.h[3],h=this.h[4],u=this.h[5],a=this.h[6],l=this.h[7],f=this.h[8],c=this.h[9],p=this.h[10],m=this.h[11],d=this.h[12],g=this.h[13],v=this.h[14],y=this.h[15];K(this.k.length===r.length);for(var w=0;w<r.length;w+=2){var M=v,b=y,_=Xt(f,c),T=Yt(f,c),S=Ft(f,c,p,m,d),A=Kt(f,c,p,m,d,g),E=this.k[w],B=this.k[w+1],N=r[w],k=r[w+1],O=Pt(M,b,_,T,S,A,E,B,N,k),D=qt(M,b,_,T,S,A,E,B,N,k);M=Jt(e,n),b=Wt(e,n),_=Gt(e,n,s,o,h),T=$t(e,n,s,o,h,u);var x=Rt(M,b,_,T),z=Lt(M,b,_,T);v=d,y=g,d=p,g=m,p=f,m=c,f=Rt(a,l,O,D),c=Lt(l,l,O,D),a=h,l=u,h=s,u=o,s=e,o=n,e=Rt(O,D,x,z),n=Lt(O,D,x,z)}It(this.h,0,e,n),It(this.h,2,s,o),It(this.h,4,h,u),It(this.h,6,a,l),It(this.h,8,f,c),It(this.h,10,p,m),It(this.h,12,d,g),It(this.h,14,v,y)},Ht.prototype._digest=function(t){return"hex"===t?Y.toHex32(this.h,"big"):Y.split32(this.h,"big")},Y.inherits(ei,Ut);var ni=ei;ei.blockSize=1024,ei.outSize=384,ei.hmacStrength=192,ei.padLength=128,ei.prototype._digest=function(t){return"hex"===t?Y.toHex32(this.h.slice(0,12),"big"):Y.split32(this.h.slice(0,12),"big")};var si={sha1:mt,sha224:kt,sha256:Bt,sha384:ni,sha512:Ut},oi=Y.rotl32,hi=Y.sum32,ui=Y.sum32_3,ai=Y.sum32_4,li=it.BlockHash;function fi(){if(!(this instanceof fi))return new fi;li.call(this),this.h=[1732584193,4023233417,2562383102,271733878,3285377520],this.endian="little"}Y.inherits(fi,li);var ci=fi;function pi(t,i,r,e){return t<=15?i^r^e:t<=31?i&r|~i&e:t<=47?(i|~r)^e:t<=63?i&e|r&~e:i^(r|~e)}function mi(t){return t<=15?0:t<=31?1518500249:t<=47?1859775393:t<=63?2400959708:2840853838}function di(t){return t<=15?1352829926:t<=31?1548603684:t<=47?1836072691:t<=63?2053994217:0}fi.blockSize=512,fi.outSize=160,fi.hmacStrength=192,fi.padLength=64,fi.prototype._update=function(t,i){for(var r=this.h[0],e=this.h[1],n=this.h[2],s=this.h[3],o=this.h[4],h=r,u=e,a=n,l=s,f=o,c=0;c<80;c++){var p=hi(oi(ai(r,pi(c,e,n,s),t[gi[c]+i],mi(c)),yi[c]),o);r=o,o=s,s=oi(n,10),n=e,e=p,p=hi(oi(ai(h,pi(79-c,u,a,l),t[vi[c]+i],di(c)),wi[c]),f),h=f,f=l,l=oi(a,10),a=u,u=p}p=ui(this.h[1],n,l),this.h[1]=ui(this.h[2],s,f),this.h[2]=ui(this.h[3],o,h),this.h[3]=ui(this.h[4],r,u),this.h[4]=ui(this.h[0],e,a),this.h[0]=p},fi.prototype._digest=function(t){return"hex"===t?Y.toHex32(this.h,"little"):Y.split32(this.h,"little")};var gi=[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8,3,10,14,4,9,15,8,1,2,7,0,6,13,11,5,12,1,9,11,10,0,8,12,4,13,3,7,15,14,5,6,2,4,0,5,9,7,12,2,10,14,1,3,8,11,6,15,13],vi=[5,14,7,0,9,2,11,4,13,6,15,8,1,10,3,12,6,11,3,7,0,13,5,10,14,15,8,12,4,9,1,2,15,5,1,3,7,14,6,9,11,8,12,2,10,0,4,13,8,6,4,1,3,11,15,0,5,12,2,13,9,7,10,14,12,15,10,4,1,5,8,7,6,2,13,14,0,3,9,11],yi=[11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8,7,6,8,13,11,9,7,15,7,12,15,9,11,7,13,12,11,13,6,7,14,9,13,15,14,8,13,6,5,12,7,5,11,12,14,15,14,15,9,8,9,14,5,6,8,6,5,12,9,15,5,11,6,8,13,12,5,12,13,14,11,8,5,6],wi=[8,9,9,11,13,15,15,5,7,7,8,11,14,14,12,6,9,13,15,7,12,8,9,11,7,7,12,7,6,15,13,11,9,7,15,11,8,6,6,14,12,13,5,14,13,13,7,5,15,5,8,11,14,14,6,14,6,9,12,9,12,5,15,8,8,5,12,9,12,5,14,6,8,13,6,5,15,13,11,11],Mi={ripemd160:ci};function bi(t,i,r){if(!(this instanceof bi))return new bi(t,i,r);this.Hash=t,this.blockSize=t.blockSize/8,this.outSize=t.outSize/8,this.inner=null,this.outer=null,this._init(Y.toArray(i,r))}var _i=bi;bi.prototype._init=function(t){t.length>this.blockSize&&(t=(new this.Hash).update(t).digest()),K(t.length<=this.blockSize);for(var i=t.length;i<this.blockSize;i++)t.push(0);for(i=0;i<t.length;i++)t[i]^=54;for(this.inner=(new this.Hash).update(t),i=0;i<t.length;i++)t[i]^=106;this.outer=(new this.Hash).update(t)},bi.prototype.update=function(t,i){return this.inner.update(t,i),this},bi.prototype.digest=function(t){return this.outer.update(this.inner.digest()),this.outer.digest(t)};var Ti=F((function(t,i){var r=i;r.utils=Y,r.common=it,r.sha=si,r.ripemd=Mi,r.hmac=_i,r.sha1=r.sha.sha1,r.sha256=r.sha.sha256,r.sha224=r.sha.sha224,r.sha384=r.sha.sha384,r.sha512=r.sha.sha512,r.ripemd160=r.ripemd.ripemd160})),Si=/^-?(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?$/i,Ai=Math.ceil,Ei=Math.floor,Bi="[BigNumber Error] ",Ni=Bi+"Number primitive has more than 15 significant digits: ",ki=1e14,Oi=[1,10,100,1e3,1e4,1e5,1e6,1e7,1e8,1e9,1e10,1e11,1e12,1e13],Di=1e9;function xi(t){var i=0|t;return t>0||t===i?i:i-1}function zi(t){for(var i,r,e=1,n=t.length,s=t[0]+"";e<n;){for(r=14-(i=t[e++]+"").length;r--;i="0"+i);s+=i}for(n=s.length;48===s.charCodeAt(--n););return s.slice(0,n+1||1)}function Ii(t,i){var r,e,n=t.c,s=i.c,o=t.s,h=i.s,u=t.e,a=i.e;if(!o||!h)return null;if(r=n&&!n[0],e=s&&!s[0],r||e)return r?e?0:-h:o;if(o!=h)return o;if(r=o<0,e=u==a,!n||!s)return e?0:!n^r?1:-1;if(!e)return u>a^r?1:-1;for(h=(u=n.length)<(a=s.length)?u:a,o=0;o<h;o++)if(n[o]!=s[o])return n[o]>s[o]^r?1:-1;return u==a?0:u>a^r?1:-1}function Ri(t,i,r,e){if(t<i||t>r||t!==Ei(t))throw Error(Bi+(e||"Argument")+("number"==typeof t?t<i||t>r?" out of range: ":" not an integer: ":" not a primitive number: ")+String(t))}function Li(t){var i=t.c.length-1;return xi(t.e/14)==i&&t.c[i]%2!=0}function ji(t,i){return(t.length>1?t.charAt(0)+"."+t.slice(1):t)+(i<0?"e":"e+")+i}function Ci(t,i,r){var e,n;if(i<0){for(n=r+".";++i;n+=r);t=n+t}else if(++i>(e=t.length)){for(n=r,i-=e;--i;n+=r);t+=n}else i<e&&(t=t.slice(0,i)+"."+t.slice(i));return t}var Pi=function t(i){var r,e,n,s,o,h,u,a,l,f=A.prototype={constructor:A,toString:null,valueOf:null},c=new A(1),p=20,m=4,d=-7,g=21,v=-1e7,y=1e7,w=!1,M=1,b=0,_={prefix:"",groupSize:3,secondaryGroupSize:0,groupSeparator:",",decimalSeparator:".",fractionGroupSize:0,fractionGroupSeparator:" ",suffix:""},T="0123456789abcdefghijklmnopqrstuvwxyz",S=!0;function A(t,i){var r,s,o,h,u,a,l,f,c=this;if(!(c instanceof A))return new A(t,i);if(null==i){if(t&&!0===t._isBigNumber)return c.s=t.s,void(!t.c||t.e>y?c.c=c.e=null:t.e<v?c.c=[c.e=0]:(c.e=t.e,c.c=t.c.slice()));if((a="number"==typeof t)&&0*t==0){if(c.s=1/t<0?(t=-t,-1):1,t===~~t){for(h=0,u=t;u>=10;u/=10,h++);return void(h>y?c.c=c.e=null:(c.e=h,c.c=[t]))}f=String(t)}else{if(!Si.test(f=String(t)))return n(c,f,a);c.s=45==f.charCodeAt(0)?(f=f.slice(1),-1):1}(h=f.indexOf("."))>-1&&(f=f.replace(".","")),(u=f.search(/e/i))>0?(h<0&&(h=u),h+=+f.slice(u+1),f=f.substring(0,u)):h<0&&(h=f.length)}else{if(Ri(i,2,T.length,"Base"),10==i&&S)return k(c=new A(t),p+c.e+1,m);if(f=String(t),a="number"==typeof t){if(0*t!=0)return n(c,f,a,i);if(c.s=1/t<0?(f=f.slice(1),-1):1,A.DEBUG&&f.replace(/^0\.0*|\./,"").length>15)throw Error(Ni+t)}else c.s=45===f.charCodeAt(0)?(f=f.slice(1),-1):1;for(r=T.slice(0,i),h=u=0,l=f.length;u<l;u++)if(r.indexOf(s=f.charAt(u))<0){if("."==s){if(u>h){h=l;continue}}else if(!o&&(f==f.toUpperCase()&&(f=f.toLowerCase())||f==f.toLowerCase()&&(f=f.toUpperCase()))){o=!0,u=-1,h=0;continue}return n(c,String(t),a,i)}a=!1,(h=(f=e(f,i,10,c.s)).indexOf("."))>-1?f=f.replace(".",""):h=f.length}for(u=0;48===f.charCodeAt(u);u++);for(l=f.length;48===f.charCodeAt(--l););if(f=f.slice(u,++l)){if(l-=u,a&&A.DEBUG&&l>15&&(t>9007199254740991||t!==Ei(t)))throw Error(Ni+c.s*t);if((h=h-u-1)>y)c.c=c.e=null;else if(h<v)c.c=[c.e=0];else{if(c.e=h,c.c=[],u=(h+1)%14,h<0&&(u+=14),u<l){for(u&&c.c.push(+f.slice(0,u)),l-=14;u<l;)c.c.push(+f.slice(u,u+=14));u=14-(f=f.slice(u)).length}else u-=l;for(;u--;f+="0");c.c.push(+f)}}else c.c=[c.e=0]}function E(t,i,r,e){var n,s,o,h,u;if(null==r?r=m:Ri(r,0,8),!t.c)return t.toString();if(n=t.c[0],o=t.e,null==i)u=zi(t.c),u=1==e||2==e&&(o<=d||o>=g)?ji(u,o):Ci(u,o,"0");else if(s=(t=k(new A(t),i,r)).e,h=(u=zi(t.c)).length,1==e||2==e&&(i<=s||s<=d)){for(;h<i;u+="0",h++);u=ji(u,s)}else if(i-=o,u=Ci(u,s,"0"),s+1>h){if(--i>0)for(u+=".";i--;u+="0");}else if((i+=s-h)>0)for(s+1==h&&(u+=".");i--;u+="0");return t.s<0&&n?"-"+u:u}function B(t,i){for(var r,e=1,n=new A(t[0]);e<t.length;e++){if(!(r=new A(t[e])).s){n=r;break}i.call(n,r)&&(n=r)}return n}function N(t,i,r){for(var e=1,n=i.length;!i[--n];i.pop());for(n=i[0];n>=10;n/=10,e++);return(r=e+14*r-1)>y?t.c=t.e=null:r<v?t.c=[t.e=0]:(t.e=r,t.c=i),t}function k(t,i,r,e){var n,s,o,h,u,a,l,f=t.c,c=Oi;if(f){t:{for(n=1,h=f[0];h>=10;h/=10,n++);if((s=i-n)<0)s+=14,o=i,l=(u=f[a=0])/c[n-o-1]%10|0;else if((a=Ai((s+1)/14))>=f.length){if(!e)break t;for(;f.length<=a;f.push(0));u=l=0,n=1,o=(s%=14)-14+1}else{for(u=h=f[a],n=1;h>=10;h/=10,n++);l=(o=(s%=14)-14+n)<0?0:u/c[n-o-1]%10|0}if(e=e||i<0||null!=f[a+1]||(o<0?u:u%c[n-o-1]),e=r<4?(l||e)&&(0==r||r==(t.s<0?3:2)):l>5||5==l&&(4==r||e||6==r&&(s>0?o>0?u/c[n-o]:0:f[a-1])%10&1||r==(t.s<0?8:7)),i<1||!f[0])return f.length=0,e?(i-=t.e+1,f[0]=c[(14-i%14)%14],t.e=-i||0):f[0]=t.e=0,t;if(0==s?(f.length=a,h=1,a--):(f.length=a+1,h=c[14-s],f[a]=o>0?Ei(u/c[n-o]%c[o])*h:0),e)for(;;){if(0==a){for(s=1,o=f[0];o>=10;o/=10,s++);for(o=f[0]+=h,h=1;o>=10;o/=10,h++);s!=h&&(t.e++,f[0]==ki&&(f[0]=1));break}if(f[a]+=h,f[a]!=ki)break;f[a--]=0,h=1}for(s=f.length;0===f[--s];f.pop());}t.e>y?t.c=t.e=null:t.e<v&&(t.c=[t.e=0])}return t}function O(t){var i,r=t.e;return null===r?t.toString():(i=zi(t.c),i=r<=d||r>=g?ji(i,r):Ci(i,r,"0"),t.s<0?"-"+i:i)}return A.clone=t,A.ROUND_UP=0,A.ROUND_DOWN=1,A.ROUND_CEIL=2,A.ROUND_FLOOR=3,A.ROUND_HALF_UP=4,A.ROUND_HALF_DOWN=5,A.ROUND_HALF_EVEN=6,A.ROUND_HALF_CEIL=7,A.ROUND_HALF_FLOOR=8,A.EUCLID=9,A.config=A.set=function(t){var i,r;if(null!=t){if("object"!=typeof t)throw Error(Bi+"Object expected: "+t);if(t.hasOwnProperty(i="DECIMAL_PLACES")&&(Ri(r=t[i],0,Di,i),p=r),t.hasOwnProperty(i="ROUNDING_MODE")&&(Ri(r=t[i],0,8,i),m=r),t.hasOwnProperty(i="EXPONENTIAL_AT")&&((r=t[i])&&r.pop?(Ri(r[0],-Di,0,i),Ri(r[1],0,Di,i),d=r[0],g=r[1]):(Ri(r,-Di,Di,i),d=-(g=r<0?-r:r))),t.hasOwnProperty(i="RANGE"))if((r=t[i])&&r.pop)Ri(r[0],-Di,-1,i),Ri(r[1],1,Di,i),v=r[0],y=r[1];else{if(Ri(r,-Di,Di,i),!r)throw Error(Bi+i+" cannot be zero: "+r);v=-(y=r<0?-r:r)}if(t.hasOwnProperty(i="CRYPTO")){if((r=t[i])!==!!r)throw Error(Bi+i+" not true or false: "+r);if(r){if("undefined"==typeof crypto||!crypto||!crypto.getRandomValues&&!crypto.randomBytes)throw w=!r,Error(Bi+"crypto unavailable");w=r}else w=r}if(t.hasOwnProperty(i="MODULO_MODE")&&(Ri(r=t[i],0,9,i),M=r),t.hasOwnProperty(i="POW_PRECISION")&&(Ri(r=t[i],0,Di,i),b=r),t.hasOwnProperty(i="FORMAT")){if("object"!=typeof(r=t[i]))throw Error(Bi+i+" not an object: "+r);_=r}if(t.hasOwnProperty(i="ALPHABET")){if("string"!=typeof(r=t[i])||/^.?$|[+\-.\s]|(.).*\1/.test(r))throw Error(Bi+i+" invalid: "+r);S="0123456789"==r.slice(0,10),T=r}}return{DECIMAL_PLACES:p,ROUNDING_MODE:m,EXPONENTIAL_AT:[d,g],RANGE:[v,y],CRYPTO:w,MODULO_MODE:M,POW_PRECISION:b,FORMAT:_,ALPHABET:T}},A.isBigNumber=function(t){if(!t||!0!==t._isBigNumber)return!1;if(!A.DEBUG)return!0;var i,r,e=t.c,n=t.e,s=t.s;t:if("[object Array]"=={}.toString.call(e)){if((1===s||-1===s)&&n>=-Di&&n<=Di&&n===Ei(n)){if(0===e[0]){if(0===n&&1===e.length)return!0;break t}if((i=(n+1)%14)<1&&(i+=14),String(e[0]).length==i){for(i=0;i<e.length;i++)if((r=e[i])<0||r>=ki||r!==Ei(r))break t;if(0!==r)return!0}}}else if(null===e&&null===n&&(null===s||1===s||-1===s))return!0;throw Error(Bi+"Invalid BigNumber: "+t)},A.maximum=A.max=function(){return B(arguments,f.lt)},A.minimum=A.min=function(){return B(arguments,f.gt)},A.random=(s=9007199254740992*Math.random()&2097151?function(){return Ei(9007199254740992*Math.random())}:function(){return 8388608*(1073741824*Math.random()|0)+(8388608*Math.random()|0)},function(t){var i,r,e,n,o,h=0,u=[],a=new A(c);if(null==t?t=p:Ri(t,0,Di),n=Ai(t/14),w)if(crypto.getRandomValues){for(i=crypto.getRandomValues(new Uint32Array(n*=2));h<n;)(o=131072*i[h]+(i[h+1]>>>11))>=9e15?(r=crypto.getRandomValues(new Uint32Array(2)),i[h]=r[0],i[h+1]=r[1]):(u.push(o%1e14),h+=2);h=n/2}else{if(!crypto.randomBytes)throw w=!1,Error(Bi+"crypto unavailable");for(i=crypto.randomBytes(n*=7);h<n;)(o=281474976710656*(31&i[h])+1099511627776*i[h+1]+4294967296*i[h+2]+16777216*i[h+3]+(i[h+4]<<16)+(i[h+5]<<8)+i[h+6])>=9e15?crypto.randomBytes(7).copy(i,h):(u.push(o%1e14),h+=7);h=n/7}if(!w)for(;h<n;)(o=s())<9e15&&(u[h++]=o%1e14);for(t%=14,(n=u[--h])&&t&&(o=Oi[14-t],u[h]=Ei(n/o)*o);0===u[h];u.pop(),h--);if(h<0)u=[e=0];else{for(e=-1;0===u[0];u.splice(0,1),e-=14);for(h=1,o=u[0];o>=10;o/=10,h++);h<14&&(e-=14-h)}return a.e=e,a.c=u,a}),A.sum=function(){for(var t=1,i=arguments,r=new A(i[0]);t<i.length;)r=r.plus(i[t++]);return r},e=function(){function t(t,i,r,e){for(var n,s,o=[0],h=0,u=t.length;h<u;){for(s=o.length;s--;o[s]*=i);for(o[0]+=e.indexOf(t.charAt(h++)),n=0;n<o.length;n++)o[n]>r-1&&(null==o[n+1]&&(o[n+1]=0),o[n+1]+=o[n]/r|0,o[n]%=r)}return o.reverse()}return function(i,e,n,s,o){var h,u,a,l,f,c,d,g,v=i.indexOf("."),y=p,w=m;for(v>=0&&(l=b,b=0,i=i.replace(".",""),c=(g=new A(e)).pow(i.length-v),b=l,g.c=t(Ci(zi(c.c),c.e,"0"),10,n,"0123456789"),g.e=g.c.length),a=l=(d=t(i,e,n,o?(h=T,"0123456789"):(h="0123456789",T))).length;0==d[--l];d.pop());if(!d[0])return h.charAt(0);if(v<0?--a:(c.c=d,c.e=a,c.s=s,d=(c=r(c,g,y,w,n)).c,f=c.r,a=c.e),v=d[u=a+y+1],l=n/2,f=f||u<0||null!=d[u+1],f=w<4?(null!=v||f)&&(0==w||w==(c.s<0?3:2)):v>l||v==l&&(4==w||f||6==w&&1&d[u-1]||w==(c.s<0?8:7)),u<1||!d[0])i=f?Ci(h.charAt(1),-y,h.charAt(0)):h.charAt(0);else{if(d.length=u,f)for(--n;++d[--u]>n;)d[u]=0,u||(++a,d=[1].concat(d));for(l=d.length;!d[--l];);for(v=0,i="";v<=l;i+=h.charAt(d[v++]));i=Ci(i,a,h.charAt(0))}return i}}(),r=function(){function t(t,i,r){var e,n,s,o,h=0,u=t.length,a=i%1e7,l=i/1e7|0;for(t=t.slice();u--;)h=((n=a*(s=t[u]%1e7)+(e=l*s+(o=t[u]/1e7|0)*a)%1e7*1e7+h)/r|0)+(e/1e7|0)+l*o,t[u]=n%r;return h&&(t=[h].concat(t)),t}function i(t,i,r,e){var n,s;if(r!=e)s=r>e?1:-1;else for(n=s=0;n<r;n++)if(t[n]!=i[n]){s=t[n]>i[n]?1:-1;break}return s}function r(t,i,r,e){for(var n=0;r--;)t[r]-=n,n=t[r]<i[r]?1:0,t[r]=n*e+t[r]-i[r];for(;!t[0]&&t.length>1;t.splice(0,1));}return function(e,n,s,o,h){var u,a,l,f,c,p,m,d,g,v,y,w,M,b,_,T,S,E=e.s==n.s?1:-1,B=e.c,N=n.c;if(!(B&&B[0]&&N&&N[0]))return new A(e.s&&n.s&&(B?!N||B[0]!=N[0]:N)?B&&0==B[0]||!N?0*E:E/0:NaN);for(g=(d=new A(E)).c=[],E=s+(a=e.e-n.e)+1,h||(h=ki,a=xi(e.e/14)-xi(n.e/14),E=E/14|0),l=0;N[l]==(B[l]||0);l++);if(N[l]>(B[l]||0)&&a--,E<0)g.push(1),f=!0;else{for(b=B.length,T=N.length,l=0,E+=2,(c=Ei(h/(N[0]+1)))>1&&(N=t(N,c,h),B=t(B,c,h),T=N.length,b=B.length),M=T,y=(v=B.slice(0,T)).length;y<T;v[y++]=0);S=N.slice(),S=[0].concat(S),_=N[0],N[1]>=h/2&&_++;do{if(c=0,(u=i(N,v,T,y))<0){if(w=v[0],T!=y&&(w=w*h+(v[1]||0)),(c=Ei(w/_))>1)for(c>=h&&(c=h-1),m=(p=t(N,c,h)).length,y=v.length;1==i(p,v,m,y);)c--,r(p,T<m?S:N,m,h),m=p.length,u=1;else 0==c&&(u=c=1),m=(p=N.slice()).length;if(m<y&&(p=[0].concat(p)),r(v,p,y,h),y=v.length,-1==u)for(;i(N,v,T,y)<1;)c++,r(v,T<y?S:N,y,h),y=v.length}else 0===u&&(c++,v=[0]);g[l++]=c,v[0]?v[y++]=B[M]||0:(v=[B[M]],y=1)}while((M++<b||null!=v[0])&&E--);f=null!=v[0],g[0]||g.splice(0,1)}if(h==ki){for(l=1,E=g[0];E>=10;E/=10,l++);k(d,s+(d.e=l+14*a-1)+1,o,f)}else d.e=a,d.r=+f;return d}}(),o=/^(-?)0([xbo])(?=\w[\w.]*$)/i,h=/^([^.]+)\.$/,u=/^\.([^.]+)$/,a=/^-?(Infinity|NaN)$/,l=/^\s*\+(?=[\w.])|^\s+|\s+$/g,n=function(t,i,r,e){var n,s=r?i:i.replace(l,"");if(a.test(s))t.s=isNaN(s)?null:s<0?-1:1;else{if(!r&&(s=s.replace(o,(function(t,i,r){return n="x"==(r=r.toLowerCase())?16:"b"==r?2:8,e&&e!=n?t:i})),e&&(n=e,s=s.replace(h,"$1").replace(u,"0.$1")),i!=s))return new A(s,n);if(A.DEBUG)throw Error(Bi+"Not a"+(e?" base "+e:"")+" number: "+i);t.s=null}t.c=t.e=null},f.absoluteValue=f.abs=function(){var t=new A(this);return t.s<0&&(t.s=1),t},f.comparedTo=function(t,i){return Ii(this,new A(t,i))},f.decimalPlaces=f.dp=function(t,i){var r,e,n,s=this;if(null!=t)return Ri(t,0,Di),null==i?i=m:Ri(i,0,8),k(new A(s),t+s.e+1,i);if(!(r=s.c))return null;if(e=14*((n=r.length-1)-xi(this.e/14)),n=r[n])for(;n%10==0;n/=10,e--);return e<0&&(e=0),e},f.dividedBy=f.div=function(t,i){return r(this,new A(t,i),p,m)},f.dividedToIntegerBy=f.idiv=function(t,i){return r(this,new A(t,i),0,1)},f.exponentiatedBy=f.pow=function(t,i){var r,e,n,s,o,h,u,a,l=this;if((t=new A(t)).c&&!t.isInteger())throw Error(Bi+"Exponent not an integer: "+O(t));if(null!=i&&(i=new A(i)),o=t.e>14,!l.c||!l.c[0]||1==l.c[0]&&!l.e&&1==l.c.length||!t.c||!t.c[0])return a=new A(Math.pow(+O(l),o?2-Li(t):+O(t))),i?a.mod(i):a;if(h=t.s<0,i){if(i.c?!i.c[0]:!i.s)return new A(NaN);(e=!h&&l.isInteger()&&i.isInteger())&&(l=l.mod(i))}else{if(t.e>9&&(l.e>0||l.e<-1||(0==l.e?l.c[0]>1||o&&l.c[1]>=24e7:l.c[0]<8e13||o&&l.c[0]<=9999975e7)))return s=l.s<0&&Li(t)?-0:0,l.e>-1&&(s=1/s),new A(h?1/s:s);b&&(s=Ai(b/14+2))}for(o?(r=new A(.5),h&&(t.s=1),u=Li(t)):u=(n=Math.abs(+O(t)))%2,a=new A(c);;){if(u){if(!(a=a.times(l)).c)break;s?a.c.length>s&&(a.c.length=s):e&&(a=a.mod(i))}if(n){if(0===(n=Ei(n/2)))break;u=n%2}else if(k(t=t.times(r),t.e+1,1),t.e>14)u=Li(t);else{if(0===(n=+O(t)))break;u=n%2}l=l.times(l),s?l.c&&l.c.length>s&&(l.c.length=s):e&&(l=l.mod(i))}return e?a:(h&&(a=c.div(a)),i?a.mod(i):s?k(a,b,m,void 0):a)},f.integerValue=function(t){var i=new A(this);return null==t?t=m:Ri(t,0,8),k(i,i.e+1,t)},f.isEqualTo=f.eq=function(t,i){return 0===Ii(this,new A(t,i))},f.isFinite=function(){return!!this.c},f.isGreaterThan=f.gt=function(t,i){return Ii(this,new A(t,i))>0},f.isGreaterThanOrEqualTo=f.gte=function(t,i){return 1===(i=Ii(this,new A(t,i)))||0===i},f.isInteger=function(){return!!this.c&&xi(this.e/14)>this.c.length-2},f.isLessThan=f.lt=function(t,i){return Ii(this,new A(t,i))<0},f.isLessThanOrEqualTo=f.lte=function(t,i){return-1===(i=Ii(this,new A(t,i)))||0===i},f.isNaN=function(){return!this.s},f.isNegative=function(){return this.s<0},f.isPositive=function(){return this.s>0},f.isZero=function(){return!!this.c&&0==this.c[0]},f.minus=function(t,i){var r,e,n,s,o=this,h=o.s;if(i=(t=new A(t,i)).s,!h||!i)return new A(NaN);if(h!=i)return t.s=-i,o.plus(t);var u=o.e/14,a=t.e/14,l=o.c,f=t.c;if(!u||!a){if(!l||!f)return l?(t.s=-i,t):new A(f?o:NaN);if(!l[0]||!f[0])return f[0]?(t.s=-i,t):new A(l[0]?o:3==m?-0:0)}if(u=xi(u),a=xi(a),l=l.slice(),h=u-a){for((s=h<0)?(h=-h,n=l):(a=u,n=f),n.reverse(),i=h;i--;n.push(0));n.reverse()}else for(e=(s=(h=l.length)<(i=f.length))?h:i,h=i=0;i<e;i++)if(l[i]!=f[i]){s=l[i]<f[i];break}if(s&&(n=l,l=f,f=n,t.s=-t.s),(i=(e=f.length)-(r=l.length))>0)for(;i--;l[r++]=0);for(i=ki-1;e>h;){if(l[--e]<f[e]){for(r=e;r&&!l[--r];l[r]=i);--l[r],l[e]+=ki}l[e]-=f[e]}for(;0==l[0];l.splice(0,1),--a);return l[0]?N(t,l,a):(t.s=3==m?-1:1,t.c=[t.e=0],t)},f.modulo=f.mod=function(t,i){var e,n,s=this;return t=new A(t,i),!s.c||!t.s||t.c&&!t.c[0]?new A(NaN):!t.c||s.c&&!s.c[0]?new A(s):(9==M?(n=t.s,t.s=1,e=r(s,t,0,3),t.s=n,e.s*=n):e=r(s,t,0,M),(t=s.minus(e.times(t))).c[0]||1!=M||(t.s=s.s),t)},f.multipliedBy=f.times=function(t,i){var r,e,n,s,o,h,u,a,l,f,c,p,m,d,g=this,v=g.c,y=(t=new A(t,i)).c;if(!(v&&y&&v[0]&&y[0]))return!g.s||!t.s||v&&!v[0]&&!y||y&&!y[0]&&!v?t.c=t.e=t.s=null:(t.s*=g.s,v&&y?(t.c=[0],t.e=0):t.c=t.e=null),t;for(e=xi(g.e/14)+xi(t.e/14),t.s*=g.s,(u=v.length)<(f=y.length)&&(m=v,v=y,y=m,n=u,u=f,f=n),n=u+f,m=[];n--;m.push(0));for(d=ki,1e7,n=f;--n>=0;){for(r=0,c=y[n]%1e7,p=y[n]/1e7|0,s=n+(o=u);s>n;)r=((a=c*(a=v[--o]%1e7)+(h=p*a+(l=v[o]/1e7|0)*c)%1e7*1e7+m[s]+r)/d|0)+(h/1e7|0)+p*l,m[s--]=a%d;m[s]=r}return r?++e:m.splice(0,1),N(t,m,e)},f.negated=function(){var t=new A(this);return t.s=-t.s||null,t},f.plus=function(t,i){var r,e=this,n=e.s;if(i=(t=new A(t,i)).s,!n||!i)return new A(NaN);if(n!=i)return t.s=-i,e.minus(t);var s=e.e/14,o=t.e/14,h=e.c,u=t.c;if(!s||!o){if(!h||!u)return new A(n/0);if(!h[0]||!u[0])return u[0]?t:new A(h[0]?e:0*n)}if(s=xi(s),o=xi(o),h=h.slice(),n=s-o){for(n>0?(o=s,r=u):(n=-n,r=h),r.reverse();n--;r.push(0));r.reverse()}for((n=h.length)-(i=u.length)<0&&(r=u,u=h,h=r,i=n),n=0;i;)n=(h[--i]=h[i]+u[i]+n)/ki|0,h[i]=ki===h[i]?0:h[i]%ki;return n&&(h=[n].concat(h),++o),N(t,h,o)},f.precision=f.sd=function(t,i){var r,e,n,s=this;if(null!=t&&t!==!!t)return Ri(t,1,Di),null==i?i=m:Ri(i,0,8),k(new A(s),t,i);if(!(r=s.c))return null;if(e=14*(n=r.length-1)+1,n=r[n]){for(;n%10==0;n/=10,e--);for(n=r[0];n>=10;n/=10,e++);}return t&&s.e+1>e&&(e=s.e+1),e},f.shiftedBy=function(t){return Ri(t,-9007199254740991,9007199254740991),this.times("1e"+t)},f.squareRoot=f.sqrt=function(){var t,i,e,n,s,o=this,h=o.c,u=o.s,a=o.e,l=p+4,f=new A("0.5");if(1!==u||!h||!h[0])return new A(!u||u<0&&(!h||h[0])?NaN:h?o:1/0);if(0==(u=Math.sqrt(+O(o)))||u==1/0?(((i=zi(h)).length+a)%2==0&&(i+="0"),u=Math.sqrt(+i),a=xi((a+1)/2)-(a<0||a%2),e=new A(i=u==1/0?"5e"+a:(i=u.toExponential()).slice(0,i.indexOf("e")+1)+a)):e=new A(u+""),e.c[0])for((u=(a=e.e)+l)<3&&(u=0);;)if(s=e,e=f.times(s.plus(r(o,s,l,1))),zi(s.c).slice(0,u)===(i=zi(e.c)).slice(0,u)){if(e.e<a&&--u,"9999"!=(i=i.slice(u-3,u+1))&&(n||"4999"!=i)){+i&&(+i.slice(1)||"5"!=i.charAt(0))||(k(e,e.e+p+2,1),t=!e.times(e).eq(o));break}if(!n&&(k(s,s.e+p+2,0),s.times(s).eq(o))){e=s;break}l+=4,u+=4,n=1}return k(e,e.e+p+1,m,t)},f.toExponential=function(t,i){return null!=t&&(Ri(t,0,Di),t++),E(this,t,i,1)},f.toFixed=function(t,i){return null!=t&&(Ri(t,0,Di),t=t+this.e+1),E(this,t,i)},f.toFormat=function(t,i,r){var e,n=this;if(null==r)null!=t&&i&&"object"==typeof i?(r=i,i=null):t&&"object"==typeof t?(r=t,t=i=null):r=_;else if("object"!=typeof r)throw Error(Bi+"Argument not an object: "+r);if(e=n.toFixed(t,i),n.c){var s,o=e.split("."),h=+r.groupSize,u=+r.secondaryGroupSize,a=r.groupSeparator||"",l=o[0],f=o[1],c=n.s<0,p=c?l.slice(1):l,m=p.length;if(u&&(s=h,h=u,u=s,m-=s),h>0&&m>0){for(s=m%h||h,l=p.substr(0,s);s<m;s+=h)l+=a+p.substr(s,h);u>0&&(l+=a+p.slice(s)),c&&(l="-"+l)}e=f?l+(r.decimalSeparator||"")+((u=+r.fractionGroupSize)?f.replace(new RegExp("\\d{"+u+"}\\B","g"),"$&"+(r.fractionGroupSeparator||"")):f):l}return(r.prefix||"")+e+(r.suffix||"")},f.toFraction=function(t){var i,e,n,s,o,h,u,a,l,f,p,d,g=this,v=g.c;if(null!=t&&(!(u=new A(t)).isInteger()&&(u.c||1!==u.s)||u.lt(c)))throw Error(Bi+"Argument "+(u.isInteger()?"out of range: ":"not an integer: ")+O(u));if(!v)return new A(g);for(i=new A(c),l=e=new A(c),n=a=new A(c),d=zi(v),o=i.e=d.length-g.e-1,i.c[0]=Oi[(h=o%14)<0?14+h:h],t=!t||u.comparedTo(i)>0?o>0?i:l:u,h=y,y=1/0,u=new A(d),a.c[0]=0;f=r(u,i,0,1),1!=(s=e.plus(f.times(n))).comparedTo(t);)e=n,n=s,l=a.plus(f.times(s=l)),a=s,i=u.minus(f.times(s=i)),u=s;return s=r(t.minus(e),n,0,1),a=a.plus(s.times(l)),e=e.plus(s.times(n)),a.s=l.s=g.s,p=r(l,n,o*=2,m).minus(g).abs().comparedTo(r(a,e,o,m).minus(g).abs())<1?[l,n]:[a,e],y=h,p},f.toNumber=function(){return+O(this)},f.toPrecision=function(t,i){return null!=t&&Ri(t,1,Di),E(this,t,i,2)},f.toString=function(t){var i,r=this,n=r.s,s=r.e;return null===s?n?(i="Infinity",n<0&&(i="-"+i)):i="NaN":(null==t?i=s<=d||s>=g?ji(zi(r.c),s):Ci(zi(r.c),s,"0"):10===t&&S?i=Ci(zi((r=k(new A(r),p+s+1,m)).c),r.e,"0"):(Ri(t,2,T.length,"Base"),i=e(Ci(zi(r.c),s,"0"),10,t,n,!0)),n<0&&r.c[0]&&(i="-"+i)),i},f.valueOf=f.toJSON=function(){return O(this)},f._isBigNumber=!0,f[Symbol.toStringTag]="BigNumber",f[Symbol.for("nodejs.util.inspect.custom")]=f.valueOf,null!=i&&A.set(i),A}(),qi=F((function(t){!function(t,i){function r(t,i){if(!t)throw new Error(i||"Assertion failed")}function e(t,i){t.super_=i;var r=function(){};r.prototype=i.prototype,t.prototype=new r,t.prototype.constructor=t}function n(t,i,r){if(n.isBN(t))return t;this.negative=0,this.words=null,this.length=0,this.red=null,null!==t&&("le"!==i&&"be"!==i||(r=i,i=10),this._init(t||0,i||10,r||"be"))}var s;"object"==typeof t?t.exports=n:i.BN=n,n.BN=n,n.wordSize=26;try{s=I.Buffer}catch(t){}function o(t,i,r){for(var e=0,n=Math.min(t.length,r),s=i;s<n;s++){var o=t.charCodeAt(s)-48;e<<=4,e|=o>=49&&o<=54?o-49+10:o>=17&&o<=22?o-17+10:15&o}return e}function h(t,i,r,e){for(var n=0,s=Math.min(t.length,r),o=i;o<s;o++){var h=t.charCodeAt(o)-48;n*=e,n+=h>=49?h-49+10:h>=17?h-17+10:h}return n}n.isBN=function(t){return t instanceof n||null!==t&&"object"==typeof t&&t.constructor.wordSize===n.wordSize&&Array.isArray(t.words)},n.max=function(t,i){return t.cmp(i)>0?t:i},n.min=function(t,i){return t.cmp(i)<0?t:i},n.prototype._init=function(t,i,e){if("number"==typeof t)return this._initNumber(t,i,e);if("object"==typeof t)return this._initArray(t,i,e);"hex"===i&&(i=16),r(i===(0|i)&&i>=2&&i<=36);var n=0;"-"===(t=t.toString().replace(/\s+/g,""))[0]&&n++,16===i?this._parseHex(t,n):this._parseBase(t,i,n),"-"===t[0]&&(this.negative=1),this.strip(),"le"===e&&this._initArray(this.toArray(),i,e)},n.prototype._initNumber=function(t,i,e){t<0&&(this.negative=1,t=-t),t<67108864?(this.words=[67108863&t],this.length=1):t<4503599627370496?(this.words=[67108863&t,t/67108864&67108863],this.length=2):t<9007199254740992?(r(t<9007199254740992),this.words=[67108863&t,t/67108864&67108863,1],this.length=3):(r(t<=9999999999999900),this.words=[67108863&t,t/67108864&67108863,2],this.length=3),"le"===e&&this._initArray(this.toArray(),i,e)},n.prototype._initArray=function(t,i,e){if(r("number"==typeof t.length),t.length<=0)return this.words=[0],this.length=1,this;this.length=Math.ceil(t.length/3),this.words=new Array(this.length);for(var n=0;n<this.length;n++)this.words[n]=0;var s,o,h=0;if("be"===e)for(n=t.length-1,s=0;n>=0;n-=3)o=t[n]|t[n-1]<<8|t[n-2]<<16,this.words[s]|=o<<h&67108863,this.words[s+1]=o>>>26-h&67108863,(h+=24)>=26&&(h-=26,s++);else if("le"===e)for(n=0,s=0;n<t.length;n+=3)o=t[n]|t[n+1]<<8|t[n+2]<<16,this.words[s]|=o<<h&67108863,this.words[s+1]=o>>>26-h&67108863,(h+=24)>=26&&(h-=26,s++);return this.strip()},n.prototype._parseHex=function(t,i){this.length=Math.ceil((t.length-i)/6),this.words=new Array(this.length);for(var r=0;r<this.length;r++)this.words[r]=0;var e,n,s=0;for(r=t.length-6,e=0;r>=i;r-=6)n=o(t,r,r+6),this.words[e]|=n<<s&67108863,this.words[e+1]|=n>>>26-s&4194303,(s+=24)>=26&&(s-=26,e++);r+6!==i&&(n=o(t,i,r+6),this.words[e]|=n<<s&67108863,this.words[e+1]|=n>>>26-s&4194303),this.strip()},n.prototype._parseBase=function(t,i,r){this.words=[0],this.length=1;for(var e=0,n=1;n<=67108863;n*=i)e++;e--,n=n/i|0;for(var s=t.length-r,o=s%e,u=Math.min(s,s-o)+r,a=0,l=r;l<u;l+=e)a=h(t,l,l+e,i),this.imuln(n),this.words[0]+a<67108864?this.words[0]+=a:this._iaddn(a);if(0!==o){var f=1;for(a=h(t,l,t.length,i),l=0;l<o;l++)f*=i;this.imuln(f),this.words[0]+a<67108864?this.words[0]+=a:this._iaddn(a)}},n.prototype.copy=function(t){t.words=new Array(this.length);for(var i=0;i<this.length;i++)t.words[i]=this.words[i];t.length=this.length,t.negative=this.negative,t.red=this.red},n.prototype.clone=function(){var t=new n(null);return this.copy(t),t},n.prototype._expand=function(t){for(;this.length<t;)this.words[this.length++]=0;return this},n.prototype.strip=function(){for(;this.length>1&&0===this.words[this.length-1];)this.length--;return this._normSign()},n.prototype._normSign=function(){return 1===this.length&&0===this.words[0]&&(this.negative=0),this},n.prototype.inspect=function(){return(this.red?"<BN-R: ":"<BN: ")+this.toString(16)+">"};var u=["","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"],a=[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],l=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64e6,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,243e5,28629151,33554432,39135393,45435424,52521875,60466176];function f(t,i,r){r.negative=i.negative^t.negative;var e=t.length+i.length|0;r.length=e,e=e-1|0;var n=0|t.words[0],s=0|i.words[0],o=n*s,h=67108863&o,u=o/67108864|0;r.words[0]=h;for(var a=1;a<e;a++){for(var l=u>>>26,f=67108863&u,c=Math.min(a,i.length-1),p=Math.max(0,a-t.length+1);p<=c;p++){var m=a-p|0;l+=(o=(n=0|t.words[m])*(s=0|i.words[p])+f)/67108864|0,f=67108863&o}r.words[a]=0|f,u=0|l}return 0!==u?r.words[a]=0|u:r.length--,r.strip()}n.prototype.toString=function(t,i){var e;if(i=0|i||1,16===(t=t||10)||"hex"===t){e="";for(var n=0,s=0,o=0;o<this.length;o++){var h=this.words[o],f=(16777215&(h<<n|s)).toString(16);e=0!==(s=h>>>24-n&16777215)||o!==this.length-1?u[6-f.length]+f+e:f+e,(n+=2)>=26&&(n-=26,o--)}for(0!==s&&(e=s.toString(16)+e);e.length%i!=0;)e="0"+e;return 0!==this.negative&&(e="-"+e),e}if(t===(0|t)&&t>=2&&t<=36){var c=a[t],p=l[t];e="";var m=this.clone();for(m.negative=0;!m.isZero();){var d=m.modn(p).toString(t);e=(m=m.idivn(p)).isZero()?d+e:u[c-d.length]+d+e}for(this.isZero()&&(e="0"+e);e.length%i!=0;)e="0"+e;return 0!==this.negative&&(e="-"+e),e}r(!1,"Base should be between 2 and 36")},n.prototype.toNumber=function(){var t=this.words[0];return 2===this.length?t+=67108864*this.words[1]:3!==this.length||1!==this.words[2]&&2!==this.words[2]?this.length>2&&r(!1,"Number can only safely store up to 54 bits"):t+=4503599627370496+67108864*this.words[1],0!==this.negative?-t:t},n.prototype.toJSON=function(){return this.toString(16)},n.prototype.toBuffer=function(t,i){return r(void 0!==s),this.toArrayLike(s,t,i)},n.prototype.toArray=function(t,i){return this.toArrayLike(Array,t,i)},n.prototype.toArrayLike=function(t,i,e){var n=this.byteLength(),s=e||Math.max(1,n);r(n<=s,"byte array longer than desired length"),r(s>0,"Requested array length <= 0"),this.strip();var o,h,u="le"===i,a=new t(s),l=this.clone();if(u){for(h=0;!l.isZero();h++)o=l.andln(255),l.iushrn(8),a[h]=o;for(;h<s;h++)a[h]=0}else{for(h=0;h<s-n;h++)a[h]=0;for(h=0;!l.isZero();h++)o=l.andln(255),l.iushrn(8),a[s-h-1]=o}return a},Math.clz32?n.prototype._countBits=function(t){return 32-Math.clz32(t)}:n.prototype._countBits=function(t){var i=t,r=0;return i>=4096&&(r+=13,i>>>=13),i>=64&&(r+=7,i>>>=7),i>=8&&(r+=4,i>>>=4),i>=2&&(r+=2,i>>>=2),r+i},n.prototype._zeroBits=function(t){if(0===t)return 26;var i=t,r=0;return 0==(8191&i)&&(r+=13,i>>>=13),0==(127&i)&&(r+=7,i>>>=7),0==(15&i)&&(r+=4,i>>>=4),0==(3&i)&&(r+=2,i>>>=2),0==(1&i)&&r++,r},n.prototype.bitLength=function(){var t=this.words[this.length-1],i=this._countBits(t);return 26*(this.length-1)+i},n.prototype.zeroBits=function(){if(this.isZero())return 0;for(var t=0,i=0;i<this.length;i++){var r=this._zeroBits(this.words[i]);if(t+=r,26!==r)break}return t},n.prototype.byteLength=function(){return Math.ceil(this.bitLength()/8)},n.prototype.toTwos=function(t){return 0!==this.negative?this.abs().inotn(t).iaddn(1):this.clone()},n.prototype.fromTwos=function(t){return this.testn(t-1)?this.notn(t).iaddn(1).ineg():this.clone()},n.prototype.isNeg=function(){return 0!==this.negative},n.prototype.neg=function(){return this.clone().ineg()},n.prototype.ineg=function(){return this.isZero()||(this.negative^=1),this},n.prototype.iuor=function(t){for(;this.length<t.length;)this.words[this.length++]=0;for(var i=0;i<t.length;i++)this.words[i]=this.words[i]|t.words[i];return this.strip()},n.prototype.ior=function(t){return r(0==(this.negative|t.negative)),this.iuor(t)},n.prototype.or=function(t){return this.length>t.length?this.clone().ior(t):t.clone().ior(this)},n.prototype.uor=function(t){return this.length>t.length?this.clone().iuor(t):t.clone().iuor(this)},n.prototype.iuand=function(t){var i;i=this.length>t.length?t:this;for(var r=0;r<i.length;r++)this.words[r]=this.words[r]&t.words[r];return this.length=i.length,this.strip()},n.prototype.iand=function(t){return r(0==(this.negative|t.negative)),this.iuand(t)},n.prototype.and=function(t){return this.length>t.length?this.clone().iand(t):t.clone().iand(this)},n.prototype.uand=function(t){return this.length>t.length?this.clone().iuand(t):t.clone().iuand(this)},n.prototype.iuxor=function(t){var i,r;this.length>t.length?(i=this,r=t):(i=t,r=this);for(var e=0;e<r.length;e++)this.words[e]=i.words[e]^r.words[e];if(this!==i)for(;e<i.length;e++)this.words[e]=i.words[e];return this.length=i.length,this.strip()},n.prototype.ixor=function(t){return r(0==(this.negative|t.negative)),this.iuxor(t)},n.prototype.xor=function(t){return this.length>t.length?this.clone().ixor(t):t.clone().ixor(this)},n.prototype.uxor=function(t){return this.length>t.length?this.clone().iuxor(t):t.clone().iuxor(this)},n.prototype.inotn=function(t){r("number"==typeof t&&t>=0);var i=0|Math.ceil(t/26),e=t%26;this._expand(i),e>0&&i--;for(var n=0;n<i;n++)this.words[n]=67108863&~this.words[n];return e>0&&(this.words[n]=~this.words[n]&67108863>>26-e),this.strip()},n.prototype.notn=function(t){return this.clone().inotn(t)},n.prototype.setn=function(t,i){r("number"==typeof t&&t>=0);var e=t/26|0,n=t%26;return this._expand(e+1),this.words[e]=i?this.words[e]|1<<n:this.words[e]&~(1<<n),this.strip()},n.prototype.iadd=function(t){var i,r,e;if(0!==this.negative&&0===t.negative)return this.negative=0,i=this.isub(t),this.negative^=1,this._normSign();if(0===this.negative&&0!==t.negative)return t.negative=0,i=this.isub(t),t.negative=1,i._normSign();this.length>t.length?(r=this,e=t):(r=t,e=this);for(var n=0,s=0;s<e.length;s++)i=(0|r.words[s])+(0|e.words[s])+n,this.words[s]=67108863&i,n=i>>>26;for(;0!==n&&s<r.length;s++)i=(0|r.words[s])+n,this.words[s]=67108863&i,n=i>>>26;if(this.length=r.length,0!==n)this.words[this.length]=n,this.length++;else if(r!==this)for(;s<r.length;s++)this.words[s]=r.words[s];return this},n.prototype.add=function(t){var i;return 0!==t.negative&&0===this.negative?(t.negative=0,i=this.sub(t),t.negative^=1,i):0===t.negative&&0!==this.negative?(this.negative=0,i=t.sub(this),this.negative=1,i):this.length>t.length?this.clone().iadd(t):t.clone().iadd(this)},n.prototype.isub=function(t){if(0!==t.negative){t.negative=0;var i=this.iadd(t);return t.negative=1,i._normSign()}if(0!==this.negative)return this.negative=0,this.iadd(t),this.negative=1,this._normSign();var r,e,n=this.cmp(t);if(0===n)return this.negative=0,this.length=1,this.words[0]=0,this;n>0?(r=this,e=t):(r=t,e=this);for(var s=0,o=0;o<e.length;o++)s=(i=(0|r.words[o])-(0|e.words[o])+s)>>26,this.words[o]=67108863&i;for(;0!==s&&o<r.length;o++)s=(i=(0|r.words[o])+s)>>26,this.words[o]=67108863&i;if(0===s&&o<r.length&&r!==this)for(;o<r.length;o++)this.words[o]=r.words[o];return this.length=Math.max(this.length,o),r!==this&&(this.negative=1),this.strip()},n.prototype.sub=function(t){return this.clone().isub(t)};var c=function(t,i,r){var e,n,s,o=t.words,h=i.words,u=r.words,a=0,l=0|o[0],f=8191&l,c=l>>>13,p=0|o[1],m=8191&p,d=p>>>13,g=0|o[2],v=8191&g,y=g>>>13,w=0|o[3],M=8191&w,b=w>>>13,_=0|o[4],T=8191&_,S=_>>>13,A=0|o[5],E=8191&A,B=A>>>13,N=0|o[6],k=8191&N,O=N>>>13,D=0|o[7],x=8191&D,z=D>>>13,I=0|o[8],R=8191&I,L=I>>>13,j=0|o[9],C=8191&j,P=j>>>13,q=0|h[0],V=8191&q,Z=q>>>13,H=0|h[1],U=8191&H,F=H>>>13,K=0|h[2],G=8191&K,$=K>>>13,J=0|h[3],W=8191&J,X=J>>>13,Y=0|h[4],Q=8191&Y,tt=Y>>>13,it=0|h[5],rt=8191&it,et=it>>>13,nt=0|h[6],st=8191&nt,ot=nt>>>13,ht=0|h[7],ut=8191&ht,at=ht>>>13,lt=0|h[8],ft=8191&lt,ct=lt>>>13,pt=0|h[9],mt=8191&pt,dt=pt>>>13;r.negative=t.negative^i.negative,r.length=19;var gt=(a+(e=Math.imul(f,V))|0)+((8191&(n=(n=Math.imul(f,Z))+Math.imul(c,V)|0))<<13)|0;a=((s=Math.imul(c,Z))+(n>>>13)|0)+(gt>>>26)|0,gt&=67108863,e=Math.imul(m,V),n=(n=Math.imul(m,Z))+Math.imul(d,V)|0,s=Math.imul(d,Z);var vt=(a+(e=e+Math.imul(f,U)|0)|0)+((8191&(n=(n=n+Math.imul(f,F)|0)+Math.imul(c,U)|0))<<13)|0;a=((s=s+Math.imul(c,F)|0)+(n>>>13)|0)+(vt>>>26)|0,vt&=67108863,e=Math.imul(v,V),n=(n=Math.imul(v,Z))+Math.imul(y,V)|0,s=Math.imul(y,Z),e=e+Math.imul(m,U)|0,n=(n=n+Math.imul(m,F)|0)+Math.imul(d,U)|0,s=s+Math.imul(d,F)|0;var yt=(a+(e=e+Math.imul(f,G)|0)|0)+((8191&(n=(n=n+Math.imul(f,$)|0)+Math.imul(c,G)|0))<<13)|0;a=((s=s+Math.imul(c,$)|0)+(n>>>13)|0)+(yt>>>26)|0,yt&=67108863,e=Math.imul(M,V),n=(n=Math.imul(M,Z))+Math.imul(b,V)|0,s=Math.imul(b,Z),e=e+Math.imul(v,U)|0,n=(n=n+Math.imul(v,F)|0)+Math.imul(y,U)|0,s=s+Math.imul(y,F)|0,e=e+Math.imul(m,G)|0,n=(n=n+Math.imul(m,$)|0)+Math.imul(d,G)|0,s=s+Math.imul(d,$)|0;var wt=(a+(e=e+Math.imul(f,W)|0)|0)+((8191&(n=(n=n+Math.imul(f,X)|0)+Math.imul(c,W)|0))<<13)|0;a=((s=s+Math.imul(c,X)|0)+(n>>>13)|0)+(wt>>>26)|0,wt&=67108863,e=Math.imul(T,V),n=(n=Math.imul(T,Z))+Math.imul(S,V)|0,s=Math.imul(S,Z),e=e+Math.imul(M,U)|0,n=(n=n+Math.imul(M,F)|0)+Math.imul(b,U)|0,s=s+Math.imul(b,F)|0,e=e+Math.imul(v,G)|0,n=(n=n+Math.imul(v,$)|0)+Math.imul(y,G)|0,s=s+Math.imul(y,$)|0,e=e+Math.imul(m,W)|0,n=(n=n+Math.imul(m,X)|0)+Math.imul(d,W)|0,s=s+Math.imul(d,X)|0;var Mt=(a+(e=e+Math.imul(f,Q)|0)|0)+((8191