diff options
author | 2023-06-27 00:35:48 +0200 | |
---|---|---|
committer | 2023-06-26 15:35:48 -0700 | |
commit | 16598555f137112a3df2da5d8f2ee8edb496484f (patch) | |
tree | ad389ba4b312e82e4fcdd867e4d013d5a0d20fbb | |
parent | a732999da578ca92a1d9e633036225a32e77529d (diff) | |
download | bun-16598555f137112a3df2da5d8f2ee8edb496484f.tar.gz bun-16598555f137112a3df2da5d8f2ee8edb496484f.tar.zst bun-16598555f137112a3df2da5d8f2ee8edb496484f.zip |
`.randomInt()` support (#3357)
* Add initial .randomInt() fallback
* Add basic .randomInt() test
* Attempt creating a native implementation
* Switch to JSC.wrapWithHasContainer
* Switch to .jsNumberFromUint64(), it seems like using just .jsNumber() causes the number to overflow in some cases
* Regenerate out folder after rebasing
-rw-r--r-- | bench/snippets/crypto.mjs | 4 | ||||
-rw-r--r-- | src/bun.js/bindings/JSSinkLookupTable.h | 2 | ||||
-rw-r--r-- | src/bun.js/bindings/bindings.zig | 1 | ||||
-rw-r--r-- | src/bun.js/webcore.zig | 20 | ||||
-rw-r--r-- | src/js/node/crypto.js | 2 | ||||
-rw-r--r-- | src/js/out/modules/node/crypto.js | 8 | ||||
-rw-r--r-- | test/js/node/crypto/node-crypto.test.js | 21 |
7 files changed, 53 insertions, 5 deletions
diff --git a/bench/snippets/crypto.mjs b/bench/snippets/crypto.mjs index b0b992a0f..e8e6f2f8a 100644 --- a/bench/snippets/crypto.mjs +++ b/bench/snippets/crypto.mjs @@ -22,4 +22,8 @@ bench("crypto.randomUUID()", () => { return crypto.randomUUID()[2]; }); +bench("crypto.randomInt()", () => { + return crypto.randomInt(); +}); + await run(); diff --git a/src/bun.js/bindings/JSSinkLookupTable.h b/src/bun.js/bindings/JSSinkLookupTable.h index e4ed81629..f8518bc5e 100644 --- a/src/bun.js/bindings/JSSinkLookupTable.h +++ b/src/bun.js/bindings/JSSinkLookupTable.h @@ -1,4 +1,4 @@ -// Automatically generated from src/bun.js/bindings/JSSink.cpp using /home/cirospaciari/Repos/bun/src/bun.js/WebKit/Source/JavaScriptCore/create_hash_table. DO NOT EDIT! +// Automatically generated from src/bun.js/bindings/JSSink.cpp using /Users/silas/Workspace/opensource/bun/src/bun.js/WebKit/Source/JavaScriptCore/create_hash_table. DO NOT EDIT! diff --git a/src/bun.js/bindings/bindings.zig b/src/bun.js/bindings/bindings.zig index 00833c71d..2b800ab8b 100644 --- a/src/bun.js/bindings/bindings.zig +++ b/src/bun.js/bindings/bindings.zig @@ -5568,6 +5568,7 @@ pub const __DOMCall__reader_u64 = @import("../api/bun.zig").FFI.Reader.Class.fun pub const __DOMCall__reader_intptr = @import("../api/bun.zig").FFI.Reader.Class.functionDefinitions.intptr; pub const __Crypto_getRandomValues = @import("../webcore.zig").Crypto.Class.functionDefinitions.getRandomValues; pub const __Crypto_randomUUID = @import("../webcore.zig").Crypto.Class.functionDefinitions.randomUUID; +pub const __Crypto_randomInt = @import("../webcore.zig").Crypto.Class.functionDefinitions.randomInt; pub const __Crypto_timingSafeEqual = @import("../webcore.zig").Crypto.Class.functionDefinitions.timingSafeEqual; pub const DOMCalls = .{ @import("../api/bun.zig").FFI, diff --git a/src/bun.js/webcore.zig b/src/bun.js/webcore.zig index a5009e09e..fd69b0262 100644 --- a/src/bun.js/webcore.zig +++ b/src/bun.js/webcore.zig @@ -10,6 +10,7 @@ const std = @import("std"); const bun = @import("root").bun; const string = bun.string; pub const AbortSignal = @import("./bindings/bindings.zig").AbortSignal; +pub const JSValue = @import("./bindings/bindings.zig").JSValue; pub const Lifetime = enum { clone, @@ -374,6 +375,7 @@ pub const Crypto = struct { .getRandomValues = JSC.DOMCall("Crypto", @This(), "getRandomValues", JSC.JSValue, JSC.DOMEffect.top), .randomUUID = JSC.DOMCall("Crypto", @This(), "randomUUID", *JSC.JSString, JSC.DOMEffect.top), .timingSafeEqual = JSC.DOMCall("Crypto", @This(), "timingSafeEqual", JSC.JSValue, JSC.DOMEffect.top), + .randomInt = .{ .rfn = &JSC.wrapWithHasContainer(Crypto, "randomInt", false, false, false) }, .scryptSync = .{ .rfn = &JSC.wrapWithHasContainer(Crypto, "scryptSync", false, false, false) }, }, .{}, @@ -698,6 +700,24 @@ pub const Crypto = struct { return JSC.ZigString.init(&out).toValueGC(globalThis); } + pub fn randomInt(globalThis: *JSC.JSGlobalObject, min_value: ?JSValue, max_value: ?JSValue) JSValue { + _ = globalThis; + + var at_least: u52 = 0; + var at_most: u52 = std.math.maxInt(u52); + + if (min_value) |min| { + if (max_value) |max| { + if (min.isNumber()) at_least = min.to(u52); + if (max.isNumber()) at_most = max.to(u52); + } else { + if (min.isNumber()) at_most = min.to(u52); + } + } + + return JSValue.jsNumberFromUint64(std.crypto.random.intRangeAtMost(u52, at_least, at_most)); + } + pub fn randomUUIDWithoutTypeChecks( globalThis: *JSC.JSGlobalObject, _: *anyopaque, diff --git a/src/js/node/crypto.js b/src/js/node/crypto.js index 3791bdcd9..c6968bbd5 100644 --- a/src/js/node/crypto.js +++ b/src/js/node/crypto.js @@ -23752,6 +23752,7 @@ var crypto_exports = { var DEFAULT_ENCODING = "buffer", getRandomValues = array => crypto.getRandomValues(array), randomUUID = () => crypto.randomUUID(), + randomInt = (...args) => crypto.randomInt(...args), timingSafeEqual = "timingSafeEqual" in crypto ? (a, b) => { @@ -23806,6 +23807,7 @@ __export(crypto_exports, { DEFAULT_ENCODING: () => DEFAULT_ENCODING, getRandomValues: () => getRandomValues, randomUUID: () => randomUUID, + randomInt: () => randomInt, scrypt: () => scrypt, scryptSync: () => scryptSync, timingSafeEqual: () => timingSafeEqual, diff --git a/src/js/out/modules/node/crypto.js b/src/js/out/modules/node/crypto.js index 85d647a59..9db837693 100644 --- a/src/js/out/modules/node/crypto.js +++ b/src/js/out/modules/node/crypto.js @@ -1,4 +1,4 @@ -import{StringDecoder as a$} from"node:string_decoder";import*as e$ from"node:buffer";import*as h$ from"node:stream";var s$=Object.defineProperty;var t$=Object.getOwnPropertyNames;var r$=536870888,c$=globalThis.Buffer,d$=globalThis.crypto,i$=d$;var $Q=(X,K)=>function(){return K||(0,X[t$(X)[0]])((K={exports:{}}).exports,K),K.exports},QQ=(X,K)=>{for(var x0 in K)s$(X,x0,{get:K[x0],enumerable:!0})};var YQ=$Q({"node_modules/safe-buffer/index.js"(X,K){var x0=e$,G=x0.Buffer;function Y(Z,Q){for(var U in Z)Q[U]=Z[U]}G.from&&G.alloc&&G.allocUnsafe&&G.allocUnsafeSlow?K.exports=x0:(Y(x0,X),X.Buffer=$);function $(Z,Q,U){return G(Z,Q,U)}$.prototype=Object.create(G.prototype),Y(G,$),$.from=function(Z,Q,U){if(typeof Z=="number")throw new TypeError("Argument must not be a number");return G(Z,Q,U)},$.alloc=function(Z,Q,U){if(typeof Z!="number")throw new TypeError("Argument must be a number");var V=G(Z);return Q!==void 0?typeof U=="string"?V.fill(Q,U):V.fill(Q):V.fill(0),V},$.allocUnsafe=function(Z){if(typeof Z!="number")throw new TypeError("Argument must be a number");return G(Z)},$.allocUnsafeSlow=function(Z){if(typeof Z!="number")throw new TypeError("Argument must be a number");return x0.SlowBuffer(Z)}}}),ZQ=$Q({"node_modules/randombytes/browser.js"(X,K){var x0=65536,G=4294967295;function Y(){throw new Error(`Secure random number generation is not supported by this browser. -Use Chrome, Firefox or Internet Explorer 11`)}var $=YQ().Buffer,Z=i$;Z&&Z.getRandomValues?K.exports=Q:K.exports=Y;function Q(U,V){if(U>G)throw new RangeError("requested too many random bytes");var B0=$.allocUnsafe(U);if(U>0)if(U>x0)for(var H=0;H<U;H+=x0)Z.getRandomValues(B0.slice(H,H+x0));else Z.getRandomValues(B0);return typeof V=="function"?process.nextTick(function(){V(null,B0)}):B0}}}),X0=$Q({"node_modules/inherits/inherits_browser.js"(X,K){typeof Object.create=="function"?K.exports=function(x0,G){G&&(x0.super_=G,x0.prototype=Object.create(G.prototype,{constructor:{value:x0,enumerable:!1,writable:!0,configurable:!0}}))}:K.exports=function(x0,G){if(G){x0.super_=G;var Y=function(){};Y.prototype=G.prototype,x0.prototype=new Y,x0.prototype.constructor=x0}}}}),K0=$Q({"node_modules/hash-base/index.js"(X,K){var x0=YQ().Buffer,G=X0();function Y(Z,Q){if(!x0.isBuffer(Z)&&typeof Z!="string")throw new TypeError(Q+" must be a string or a buffer")}function $(Z){h$.Transform.call(this),this._block=x0.allocUnsafe(Z),this._blockSize=Z,this._blockOffset=0,this._length=[0,0,0,0],this._finalized=!1}G($,h$.Transform),$.prototype._transform=function(Z,Q,U){var V=null;try{this.update(Z,Q)}catch(B0){V=B0}U(V)},$.prototype._flush=function(Z){var Q=null;try{this.push(this.digest())}catch(U){Q=U}Z(Q)},$.prototype.update=function(Z,Q){if(Y(Z,"Data"),this._finalized)throw new Error("Digest already called");x0.isBuffer(Z)||(Z=x0.from(Z,Q));for(var U=this._block,V=0;this._blockOffset+Z.length-V>=this._blockSize;){for(var B0=this._blockOffset;B0<this._blockSize;)U[B0++]=Z[V++];this._update(),this._blockOffset=0}for(;V<Z.length;)U[this._blockOffset++]=Z[V++];for(var H=0,y0=Z.length*8;y0>0;++H)this._length[H]+=y0,y0=this._length[H]/4294967296|0,y0>0&&(this._length[H]-=4294967296*y0);return this},$.prototype._update=function(){throw new Error("_update is not implemented")},$.prototype.digest=function(Z){if(this._finalized)throw new Error("Digest already called");this._finalized=!0;var Q=this._digest();Z!==void 0&&(Q=Q.toString(Z)),this._block.fill(0),this._blockOffset=0;for(var U=0;U<4;++U)this._length[U]=0;return Q},$.prototype._digest=function(){throw new Error("_digest is not implemented")},K.exports=$}}),I0=$Q({"node_modules/md5.js/index.js"(X,K){var x0=X0(),G=K0(),Y=YQ().Buffer,$=new Array(16);function Z(){G.call(this,64),this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878}x0(Z,G),Z.prototype._update=function(){for(var y0=$,W=0;W<16;++W)y0[W]=this._block.readInt32LE(W*4);var w0=this._a,E=this._b,p0=this._c,T=this._d;w0=U(w0,E,p0,T,y0[0],3614090360,7),T=U(T,w0,E,p0,y0[1],3905402710,12),p0=U(p0,T,w0,E,y0[2],606105819,17),E=U(E,p0,T,w0,y0[3],3250441966,22),w0=U(w0,E,p0,T,y0[4],4118548399,7),T=U(T,w0,E,p0,y0[5],1200080426,12),p0=U(p0,T,w0,E,y0[6],2821735955,17),E=U(E,p0,T,w0,y0[7],4249261313,22),w0=U(w0,E,p0,T,y0[8],1770035416,7),T=U(T,w0,E,p0,y0[9],2336552879,12),p0=U(p0,T,w0,E,y0[10],4294925233,17),E=U(E,p0,T,w0,y0[11],2304563134,22),w0=U(w0,E,p0,T,y0[12],1804603682,7),T=U(T,w0,E,p0,y0[13],4254626195,12),p0=U(p0,T,w0,E,y0[14],2792965006,17),E=U(E,p0,T,w0,y0[15],1236535329,22),w0=V(w0,E,p0,T,y0[1],4129170786,5),T=V(T,w0,E,p0,y0[6],3225465664,9),p0=V(p0,T,w0,E,y0[11],643717713,14),E=V(E,p0,T,w0,y0[0],3921069994,20),w0=V(w0,E,p0,T,y0[5],3593408605,5),T=V(T,w0,E,p0,y0[10],38016083,9),p0=V(p0,T,w0,E,y0[15],3634488961,14),E=V(E,p0,T,w0,y0[4],3889429448,20),w0=V(w0,E,p0,T,y0[9],568446438,5),T=V(T,w0,E,p0,y0[14],3275163606,9),p0=V(p0,T,w0,E,y0[3],4107603335,14),E=V(E,p0,T,w0,y0[8],1163531501,20),w0=V(w0,E,p0,T,y0[13],2850285829,5),T=V(T,w0,E,p0,y0[2],4243563512,9),p0=V(p0,T,w0,E,y0[7],1735328473,14),E=V(E,p0,T,w0,y0[12],2368359562,20),w0=B0(w0,E,p0,T,y0[5],4294588738,4),T=B0(T,w0,E,p0,y0[8],2272392833,11),p0=B0(p0,T,w0,E,y0[11],1839030562,16),E=B0(E,p0,T,w0,y0[14],4259657740,23),w0=B0(w0,E,p0,T,y0[1],2763975236,4),T=B0(T,w0,E,p0,y0[4],1272893353,11),p0=B0(p0,T,w0,E,y0[7],4139469664,16),E=B0(E,p0,T,w0,y0[10],3200236656,23),w0=B0(w0,E,p0,T,y0[13],681279174,4),T=B0(T,w0,E,p0,y0[0],3936430074,11),p0=B0(p0,T,w0,E,y0[3],3572445317,16),E=B0(E,p0,T,w0,y0[6],76029189,23),w0=B0(w0,E,p0,T,y0[9],3654602809,4),T=B0(T,w0,E,p0,y0[12],3873151461,11),p0=B0(p0,T,w0,E,y0[15],530742520,16),E=B0(E,p0,T,w0,y0[2],3299628645,23),w0=H(w0,E,p0,T,y0[0],4096336452,6),T=H(T,w0,E,p0,y0[7],1126891415,10),p0=H(p0,T,w0,E,y0[14],2878612391,15),E=H(E,p0,T,w0,y0[5],4237533241,21),w0=H(w0,E,p0,T,y0[12],1700485571,6),T=H(T,w0,E,p0,y0[3],2399980690,10),p0=H(p0,T,w0,E,y0[10],4293915773,15),E=H(E,p0,T,w0,y0[1],2240044497,21),w0=H(w0,E,p0,T,y0[8],1873313359,6),T=H(T,w0,E,p0,y0[15],4264355552,10),p0=H(p0,T,w0,E,y0[6],2734768916,15),E=H(E,p0,T,w0,y0[13],1309151649,21),w0=H(w0,E,p0,T,y0[4],4149444226,6),T=H(T,w0,E,p0,y0[11],3174756917,10),p0=H(p0,T,w0,E,y0[2],718787259,15),E=H(E,p0,T,w0,y0[9],3951481745,21),this._a=this._a+w0|0,this._b=this._b+E|0,this._c=this._c+p0|0,this._d=this._d+T|0},Z.prototype._digest=function(){this._block[this._blockOffset++]=128,this._blockOffset>56&&(this._block.fill(0,this._blockOffset,64),this._update(),this._blockOffset=0),this._block.fill(0,this._blockOffset,56),this._block.writeUInt32LE(this._length[0],56),this._block.writeUInt32LE(this._length[1],60),this._update();var y0=Y.allocUnsafe(16);return y0.writeInt32LE(this._a,0),y0.writeInt32LE(this._b,4),y0.writeInt32LE(this._c,8),y0.writeInt32LE(this._d,12),y0};function Q(y0,W){return y0<<W|y0>>>32-W}function U(y0,W,w0,E,p0,T,f0){return Q(y0+(W&w0|~W&E)+p0+T|0,f0)+W|0}function V(y0,W,w0,E,p0,T,f0){return Q(y0+(W&E|w0&~E)+p0+T|0,f0)+W|0}function B0(y0,W,w0,E,p0,T,f0){return Q(y0+(W^w0^E)+p0+T|0,f0)+W|0}function H(y0,W,w0,E,p0,T,f0){return Q(y0+(w0^(W|~E))+p0+T|0,f0)+W|0}K.exports=Z}}),O0=$Q({"node_modules/ripemd160/index.js"(X,K){var x0=c$,G=X0(),Y=K0(),$=new Array(16),Z=[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],Q=[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],U=[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],V=[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],B0=[0,1518500249,1859775393,2400959708,2840853838],H=[1352829926,1548603684,1836072691,2053994217,0];function y0(){Y.call(this,64),this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878,this._e=3285377520}G(y0,Y),y0.prototype._update=function(){for(var D=$,c0=0;c0<16;++c0)D[c0]=this._block.readInt32LE(c0*4);for(var C=this._a|0,h0=this._b|0,L=this._c|0,d0=this._d|0,R=this._e|0,b0=this._a|0,P=this._b|0,l0=this._c|0,z=this._d|0,o0=this._e|0,M=0;M<80;M+=1){var u0,S;M<16?(u0=w0(C,h0,L,d0,R,D[Z[M]],B0[0],U[M]),S=f0(b0,P,l0,z,o0,D[Q[M]],H[0],V[M])):M<32?(u0=E(C,h0,L,d0,R,D[Z[M]],B0[1],U[M]),S=T(b0,P,l0,z,o0,D[Q[M]],H[1],V[M])):M<48?(u0=p0(C,h0,L,d0,R,D[Z[M]],B0[2],U[M]),S=p0(b0,P,l0,z,o0,D[Q[M]],H[2],V[M])):M<64?(u0=T(C,h0,L,d0,R,D[Z[M]],B0[3],U[M]),S=E(b0,P,l0,z,o0,D[Q[M]],H[3],V[M])):(u0=f0(C,h0,L,d0,R,D[Z[M]],B0[4],U[M]),S=w0(b0,P,l0,z,o0,D[Q[M]],H[4],V[M])),C=R,R=d0,d0=W(L,10),L=h0,h0=u0,b0=o0,o0=z,z=W(l0,10),l0=P,P=S}var n0=this._b+L+z|0;this._b=this._c+d0+o0|0,this._c=this._d+R+b0|0,this._d=this._e+C+P|0,this._e=this._a+h0+l0|0,this._a=n0},y0.prototype._digest=function(){this._block[this._blockOffset++]=128,this._blockOffset>56&&(this._block.fill(0,this._blockOffset,64),this._update(),this._blockOffset=0),this._block.fill(0,this._blockOffset,56),this._block.writeUInt32LE(this._length[0],56),this._block.writeUInt32LE(this._length[1],60),this._update();var D=x0.alloc?x0.alloc(20):new x0(20);return D.writeInt32LE(this._a,0),D.writeInt32LE(this._b,4),D.writeInt32LE(this._c,8),D.writeInt32LE(this._d,12),D.writeInt32LE(this._e,16),D};function W(D,c0){return D<<c0|D>>>32-c0}function w0(D,c0,C,h0,L,d0,R,b0){return W(D+(c0^C^h0)+d0+R|0,b0)+L|0}function E(D,c0,C,h0,L,d0,R,b0){return W(D+(c0&C|~c0&h0)+d0+R|0,b0)+L|0}function p0(D,c0,C,h0,L,d0,R,b0){return W(D+((c0|~C)^h0)+d0+R|0,b0)+L|0}function T(D,c0,C,h0,L,d0,R,b0){return W(D+(c0&h0|C&~h0)+d0+R|0,b0)+L|0}function f0(D,c0,C,h0,L,d0,R,b0){return W(D+(c0^(C|~h0))+d0+R|0,b0)+L|0}K.exports=y0}}),J0=$Q({"node_modules/sha.js/hash.js"(X,K){var x0=YQ().Buffer;function G(Y,$){this._block=x0.alloc(Y),this._finalSize=$,this._blockSize=Y,this._len=0}G.prototype.update=function(Y,$){typeof Y=="string"&&($=$||"utf8",Y=x0.from(Y,$));for(var Z=this._block,Q=this._blockSize,U=Y.length,V=this._len,B0=0;B0<U;){for(var H=V%Q,y0=Math.min(U-B0,Q-H),W=0;W<y0;W++)Z[H+W]=Y[B0+W];V+=y0,B0+=y0,V%Q===0&&this._update(Z)}return this._len+=U,this},G.prototype.digest=function(Y){var $=this._len%this._blockSize;this._block[$]=128,this._block.fill(0,$+1),$>=this._finalSize&&(this._update(this._block),this._block.fill(0));var Z=this._len*8;if(Z<=4294967295)this._block.writeUInt32BE(Z,this._blockSize-4);else{var Q=(Z&4294967295)>>>0,U=(Z-Q)/4294967296;this._block.writeUInt32BE(U,this._blockSize-8),this._block.writeUInt32BE(Q,this._blockSize-4)}this._update(this._block);var V=this._hash();return Y?V.toString(Y):V},G.prototype._update=function(){throw new Error("_update must be implemented by subclass")},K.exports=G}}),F0=$Q({"node_modules/sha.js/sha.js"(X,K){var x0=X0(),G=J0(),Y=YQ().Buffer,$=[1518500249,1859775393,-1894007588,-899497514],Z=new Array(80);function Q(){this.init(),this._w=Z,G.call(this,64,56)}x0(Q,G),Q.prototype.init=function(){return this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878,this._e=3285377520,this};function U(H){return H<<5|H>>>27}function V(H){return H<<30|H>>>2}function B0(H,y0,W,w0){return H===0?y0&W|~y0&w0:H===2?y0&W|y0&w0|W&w0:y0^W^w0}Q.prototype._update=function(H){for(var y0=this._w,W=this._a|0,w0=this._b|0,E=this._c|0,p0=this._d|0,T=this._e|0,f0=0;f0<16;++f0)y0[f0]=H.readInt32BE(f0*4);for(;f0<80;++f0)y0[f0]=y0[f0-3]^y0[f0-8]^y0[f0-14]^y0[f0-16];for(var D=0;D<80;++D){var c0=~~(D/20),C=U(W)+B0(c0,w0,E,p0)+T+y0[D]+$[c0]|0;T=p0,p0=E,E=V(w0),w0=W,W=C}this._a=W+this._a|0,this._b=w0+this._b|0,this._c=E+this._c|0,this._d=p0+this._d|0,this._e=T+this._e|0},Q.prototype._hash=function(){var H=Y.allocUnsafe(20);return H.writeInt32BE(this._a|0,0),H.writeInt32BE(this._b|0,4),H.writeInt32BE(this._c|0,8),H.writeInt32BE(this._d|0,12),H.writeInt32BE(this._e|0,16),H},K.exports=Q}}),A0=$Q({"node_modules/sha.js/sha1.js"(X,K){var x0=X0(),G=J0(),Y=YQ().Buffer,$=[1518500249,1859775393,-1894007588,-899497514],Z=new Array(80);function Q(){this.init(),this._w=Z,G.call(this,64,56)}x0(Q,G),Q.prototype.init=function(){return this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878,this._e=3285377520,this};function U(y0){return y0<<1|y0>>>31}function V(y0){return y0<<5|y0>>>27}function B0(y0){return y0<<30|y0>>>2}function H(y0,W,w0,E){return y0===0?W&w0|~W&E:y0===2?W&w0|W&E|w0&E:W^w0^E}Q.prototype._update=function(y0){for(var W=this._w,w0=this._a|0,E=this._b|0,p0=this._c|0,T=this._d|0,f0=this._e|0,D=0;D<16;++D)W[D]=y0.readInt32BE(D*4);for(;D<80;++D)W[D]=U(W[D-3]^W[D-8]^W[D-14]^W[D-16]);for(var c0=0;c0<80;++c0){var C=~~(c0/20),h0=V(w0)+H(C,E,p0,T)+f0+W[c0]+$[C]|0;f0=T,T=p0,p0=B0(E),E=w0,w0=h0}this._a=w0+this._a|0,this._b=E+this._b|0,this._c=p0+this._c|0,this._d=T+this._d|0,this._e=f0+this._e|0},Q.prototype._hash=function(){var y0=Y.allocUnsafe(20);return y0.writeInt32BE(this._a|0,0),y0.writeInt32BE(this._b|0,4),y0.writeInt32BE(this._c|0,8),y0.writeInt32BE(this._d|0,12),y0.writeInt32BE(this._e|0,16),y0},K.exports=Q}}),H0=$Q({"node_modules/sha.js/sha256.js"(X,K){var x0=X0(),G=J0(),Y=YQ().Buffer,$=[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],Z=new Array(64);function Q(){this.init(),this._w=Z,G.call(this,64,56)}x0(Q,G),Q.prototype.init=function(){return this._a=1779033703,this._b=3144134277,this._c=1013904242,this._d=2773480762,this._e=1359893119,this._f=2600822924,this._g=528734635,this._h=1541459225,this};function U(w0,E,p0){return p0^w0&(E^p0)}function V(w0,E,p0){return w0&E|p0&(w0|E)}function B0(w0){return(w0>>>2|w0<<30)^(w0>>>13|w0<<19)^(w0>>>22|w0<<10)}function H(w0){return(w0>>>6|w0<<26)^(w0>>>11|w0<<21)^(w0>>>25|w0<<7)}function y0(w0){return(w0>>>7|w0<<25)^(w0>>>18|w0<<14)^w0>>>3}function W(w0){return(w0>>>17|w0<<15)^(w0>>>19|w0<<13)^w0>>>10}Q.prototype._update=function(w0){for(var E=this._w,p0=this._a|0,T=this._b|0,f0=this._c|0,D=this._d|0,c0=this._e|0,C=this._f|0,h0=this._g|0,L=this._h|0,d0=0;d0<16;++d0)E[d0]=w0.readInt32BE(d0*4);for(;d0<64;++d0)E[d0]=W(E[d0-2])+E[d0-7]+y0(E[d0-15])+E[d0-16]|0;for(var R=0;R<64;++R){var b0=L+H(c0)+U(c0,C,h0)+$[R]+E[R]|0,P=B0(p0)+V(p0,T,f0)|0;L=h0,h0=C,C=c0,c0=D+b0|0,D=f0,f0=T,T=p0,p0=b0+P|0}this._a=p0+this._a|0,this._b=T+this._b|0,this._c=f0+this._c|0,this._d=D+this._d|0,this._e=c0+this._e|0,this._f=C+this._f|0,this._g=h0+this._g|0,this._h=L+this._h|0},Q.prototype._hash=function(){var w0=Y.allocUnsafe(32);return w0.writeInt32BE(this._a,0),w0.writeInt32BE(this._b,4),w0.writeInt32BE(this._c,8),w0.writeInt32BE(this._d,12),w0.writeInt32BE(this._e,16),w0.writeInt32BE(this._f,20),w0.writeInt32BE(this._g,24),w0.writeInt32BE(this._h,28),w0},K.exports=Q}}),W0=$Q({"node_modules/sha.js/sha224.js"(X,K){var x0=X0(),G=H0(),Y=J0(),$=YQ().Buffer,Z=new Array(64);function Q(){this.init(),this._w=Z,Y.call(this,64,56)}x0(Q,G),Q.prototype.init=function(){return this._a=3238371032,this._b=914150663,this._c=812702999,this._d=4144912697,this._e=4290775857,this._f=1750603025,this._g=1694076839,this._h=3204075428,this},Q.prototype._hash=function(){var U=$.allocUnsafe(28);return U.writeInt32BE(this._a,0),U.writeInt32BE(this._b,4),U.writeInt32BE(this._c,8),U.writeInt32BE(this._d,12),U.writeInt32BE(this._e,16),U.writeInt32BE(this._f,20),U.writeInt32BE(this._g,24),U},K.exports=Q}}),E0=$Q({"node_modules/sha.js/sha512.js"(X,K){var x0=X0(),G=J0(),Y=YQ().Buffer,$=[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],Z=new Array(160);function Q(){this.init(),this._w=Z,G.call(this,128,112)}x0(Q,G),Q.prototype.init=function(){return this._ah=1779033703,this._bh=3144134277,this._ch=1013904242,this._dh=2773480762,this._eh=1359893119,this._fh=2600822924,this._gh=528734635,this._hh=1541459225,this._al=4089235720,this._bl=2227873595,this._cl=4271175723,this._dl=1595750129,this._el=2917565137,this._fl=725511199,this._gl=4215389547,this._hl=327033209,this};function U(T,f0,D){return D^T&(f0^D)}function V(T,f0,D){return T&f0|D&(T|f0)}function B0(T,f0){return(T>>>28|f0<<4)^(f0>>>2|T<<30)^(f0>>>7|T<<25)}function H(T,f0){return(T>>>14|f0<<18)^(T>>>18|f0<<14)^(f0>>>9|T<<23)}function y0(T,f0){return(T>>>1|f0<<31)^(T>>>8|f0<<24)^T>>>7}function W(T,f0){return(T>>>1|f0<<31)^(T>>>8|f0<<24)^(T>>>7|f0<<25)}function w0(T,f0){return(T>>>19|f0<<13)^(f0>>>29|T<<3)^T>>>6}function E(T,f0){return(T>>>19|f0<<13)^(f0>>>29|T<<3)^(T>>>6|f0<<26)}function p0(T,f0){return T>>>0<f0>>>0?1:0}Q.prototype._update=function(T){for(var f0=this._w,D=this._ah|0,c0=this._bh|0,C=this._ch|0,h0=this._dh|0,L=this._eh|0,d0=this._fh|0,R=this._gh|0,b0=this._hh|0,P=this._al|0,l0=this._bl|0,z=this._cl|0,o0=this._dl|0,M=this._el|0,u0=this._fl|0,S=this._gl|0,n0=this._hl|0,v=0;v<32;v+=2)f0[v]=T.readInt32BE(v*4),f0[v+1]=T.readInt32BE(v*4+4);for(;v<160;v+=2){var s0=f0[v-30],I=f0[v-30+1],t0=y0(s0,I),m0=W(I,s0);s0=f0[v-4],I=f0[v-4+1];var a0=w0(s0,I),q=E(I,s0),e0=f0[v-14],r0=f0[v-14+1],i0=f0[v-32],j=f0[v-32+1],$$=m0+r0|0,k=t0+e0+p0($$,m0)|0;$$=$$+q|0,k=k+a0+p0($$,q)|0,$$=$$+j|0,k=k+i0+p0($$,j)|0,f0[v]=k,f0[v+1]=$$}for(var Q$=0;Q$<160;Q$+=2){k=f0[Q$],$$=f0[Q$+1];var g=V(D,c0,C),Y$=V(P,l0,z),_=B0(D,P),Z$=B0(P,D),N=H(L,M),G$=H(M,L),x=$[Q$],V$=$[Q$+1],B=U(L,d0,R),U$=U(M,u0,S),y=n0+G$|0,X$=b0+N+p0(y,n0)|0;y=y+U$|0,X$=X$+B+p0(y,U$)|0,y=y+V$|0,X$=X$+x+p0(y,V$)|0,y=y+$$|0,X$=X$+k+p0(y,$$)|0;var w=Z$+Y$|0,K$=_+g+p0(w,Z$)|0;b0=R,n0=S,R=d0,S=u0,d0=L,u0=M,M=o0+y|0,L=h0+X$+p0(M,o0)|0,h0=C,o0=z,C=c0,z=l0,c0=D,l0=P,P=y+w|0,D=X$+K$+p0(P,y)|0}this._al=this._al+P|0,this._bl=this._bl+l0|0,this._cl=this._cl+z|0,this._dl=this._dl+o0|0,this._el=this._el+M|0,this._fl=this._fl+u0|0,this._gl=this._gl+S|0,this._hl=this._hl+n0|0,this._ah=this._ah+D+p0(this._al,P)|0,this._bh=this._bh+c0+p0(this._bl,l0)|0,this._ch=this._ch+C+p0(this._cl,z)|0,this._dh=this._dh+h0+p0(this._dl,o0)|0,this._eh=this._eh+L+p0(this._el,M)|0,this._fh=this._fh+d0+p0(this._fl,u0)|0,this._gh=this._gh+R+p0(this._gl,S)|0,this._hh=this._hh+b0+p0(this._hl,n0)|0},Q.prototype._hash=function(){var T=Y.allocUnsafe(64);function f0(D,c0,C){T.writeInt32BE(D,C),T.writeInt32BE(c0,C+4)}return f0(this._ah,this._al,0),f0(this._bh,this._bl,8),f0(this._ch,this._cl,16),f0(this._dh,this._dl,24),f0(this._eh,this._el,32),f0(this._fh,this._fl,40),f0(this._gh,this._gl,48),f0(this._hh,this._hl,56),T},K.exports=Q}}),T0=$Q({"node_modules/sha.js/sha384.js"(X,K){var x0=X0(),G=E0(),Y=J0(),$=YQ().Buffer,Z=new Array(160);function Q(){this.init(),this._w=Z,Y.call(this,128,112)}x0(Q,G),Q.prototype.init=function(){return this._ah=3418070365,this._bh=1654270250,this._ch=2438529370,this._dh=355462360,this._eh=1731405415,this._fh=2394180231,this._gh=3675008525,this._hh=1203062813,this._al=3238371032,this._bl=914150663,this._cl=812702999,this._dl=4144912697,this._el=4290775857,this._fl=1750603025,this._gl=1694076839,this._hl=3204075428,this},Q.prototype._hash=function(){var U=$.allocUnsafe(48);function V(B0,H,y0){U.writeInt32BE(B0,y0),U.writeInt32BE(H,y0+4)}return V(this._ah,this._al,0),V(this._bh,this._bl,8),V(this._ch,this._cl,16),V(this._dh,this._dl,24),V(this._eh,this._el,32),V(this._fh,this._fl,40),U},K.exports=Q}}),D0=$Q({"node_modules/sha.js/index.js"(x0,K){var x0=K.exports=function(G){G=G.toLowerCase();var Y=x0[G];if(!Y)throw new Error(G+" is not supported (we accept pull requests)");return new Y};x0.sha=F0(),x0.sha1=A0(),x0.sha224=W0(),x0.sha256=H0(),x0.sha384=T0(),x0.sha512=E0()}}),C0=$Q({"node_modules/cipher-base/index.js"(X,K){var x0=YQ().Buffer,G=X0();function Y($){h$.Transform.call(this),this.hashMode=typeof $=="string",this.hashMode?this[$]=this._finalOrDigest:this.final=this._finalOrDigest,this._final&&(this.__final=this._final,this._final=null),this._decoder=null,this._encoding=null}G(Y,h$.Transform),Y.prototype.update=function($,Z,Q){typeof $=="string"&&($=x0.from($,Z));var U=this._update($);return this.hashMode?this:(Q&&(U=this._toString(U,Q)),U)},Y.prototype.setAutoPadding=function(){},Y.prototype.getAuthTag=function(){throw new Error("trying to get auth tag in unsupported state")},Y.prototype.setAuthTag=function(){throw new Error("trying to set auth tag in unsupported state")},Y.prototype.setAAD=function(){throw new Error("trying to set aad in unsupported state")},Y.prototype._transform=function($,Z,Q){var U;try{this.hashMode?this._update($):this.push(this._update($))}catch(V){U=V}finally{Q(U)}},Y.prototype._flush=function($){var Z;try{this.push(this.__final())}catch(Q){Z=Q}$(Z)},Y.prototype._finalOrDigest=function($){var Z=this.__final()||x0.alloc(0);return $&&(Z=this._toString(Z,$,!0)),Z},Y.prototype._toString=function($,Z,Q){if(this._decoder||(this._decoder=new a$(Z),this._encoding=Z),this._encoding!==Z)throw new Error("can't switch encodings");var U=this._decoder.write($);return Q&&(U+=this._decoder.end()),U},K.exports=Y}}),L0=$Q({"node_modules/create-hash/browser.js"(X,K){const x0=function $(Z,Q){this._options=Q,this._hasher=new sY(Z,Q),this._finalized=!1};x0.prototype=Object.create(h$.Transform.prototype),x0.prototype.update=function $(Z,Q){return this._checkFinalized(),this._hasher.update(Z,Q),this},x0.prototype.digest=function $(Z,Q){return this._checkFinalized(),this._finalized=!0,this._hasher.digest(Z,Q)},x0.prototype._checkFinalized=function $(){if(this._finalized){var Z=new Error("Digest already called");throw Z.code="ERR_CRYPTO_HASH_FINALIZED",Z}},x0.prototype.copy=function $(){const Z=Object.create(x0.prototype);return Z._options=this._options,Z._hasher=this._hasher.copy(),Z._finalized=this._finalized,Z};const G={__proto__:h$.Transform.prototype,...x0.prototype,_transform($,Z,Q){this.update($,Z),Q&&Q()},_flush($){this.push(this.digest()),$()}},Y=["_events","_eventsCount","_final","_maxListeners","_maxListeners","_read","_undestroy","_writableState","_write","_writev","addListener","asIndexedPairs","closed","compose","constructor","cork","destroy","destroyed","drop","emit","end","errored","eventNames","every","filter","find","flatMap","forEach","getMaxListeners","hasOwnProperty","isPaused","isPrototypeOf","iterator","listenerCount","listeners","map","off","on","once","pause","pipe","prependListener","prependOnceListener","propertyIsEnumerable","push","rawListeners","read","readable","readableAborted","readableBuffer","readableDidRead","readableEncoding","readableEnded","readableFlowing","readableHighWaterMark","readableLength","readableObjectMode","reduce","removeAllListeners","removeListener","resume","setDefaultEncoding","setEncoding","setMaxListeners","some","take","toArray","toLocaleString","toString","uncork","unpipe","unshift","valueOf","wrap","writable","writableBuffer","writableCorked","writableEnded","writableFinished","writableHighWaterMark","writableLength","writableNeedDrain","writableObjectMode","write"];for(let $ of Y)Object.defineProperty(x0.prototype,$,{get(){return Object.setPrototypeOf(this,G),h$.Transform.call(this,this._options),this[$]},enumerable:!1,configurable:!0});K.exports=function $(Z){return new x0(Z)},K.exports.createHash=K.exports,K.exports.Hash=x0}}),R0=$Q({"node_modules/create-hmac/legacy.js"(X,K){var x0=X0(),G=YQ().Buffer,Y=C0(),$=G.alloc(128),Z=64;function Q(U,V){Y.call(this,"digest"),typeof V=="string"&&(V=G.from(V)),this._alg=U,this._key=V,V.length>Z?V=U(V):V.length<Z&&(V=G.concat([V,$],Z));for(var B0=this._ipad=G.allocUnsafe(Z),H=this._opad=G.allocUnsafe(Z),y0=0;y0<Z;y0++)B0[y0]=V[y0]^54,H[y0]=V[y0]^92;this._hash=[B0]}x0(Q,Y),Q.prototype._update=function(U){this._hash.push(U)},Q.prototype._final=function(){var U=this._alg(G.concat(this._hash));return this._alg(G.concat([this._opad,U]))},K.exports=Q}}),P0=$Q({"node_modules/create-hash/md5.js"(X,K){var x0=I0();K.exports=function(G){return new x0().update(G).digest()}}}),z0=$Q({"node_modules/create-hmac/browser.js"(X,K){var x0=X0(),G=R0(),Y=C0(),$=YQ().Buffer,Z=P0(),Q=O0(),U=D0(),V=$.alloc(128);function B0(H,y0){Y.call(this,"digest"),typeof y0=="string"&&(y0=$.from(y0));var W=H==="sha512"||H==="sha384"?128:64;if(this._alg=H,this._key=y0,y0.length>W){var w0=H==="rmd160"?new Q:U(H);y0=w0.update(y0).digest()}else y0.length<W&&(y0=$.concat([y0,V],W));for(var E=this._ipad=$.allocUnsafe(W),p0=this._opad=$.allocUnsafe(W),T=0;T<W;T++)E[T]=y0[T]^54,p0[T]=y0[T]^92;this._hash=H==="rmd160"?new Q:U(H),this._hash.update(E)}x0(B0,Y),B0.prototype._update=function(H){this._hash.update(H)},B0.prototype._final=function(){var H=this._hash.digest(),y0=this._alg==="rmd160"?new Q:U(this._alg);return y0.update(this._opad).update(H).digest()},K.exports=function(H,y0){return H=H.toLowerCase(),H==="rmd160"||H==="ripemd160"?new B0("rmd160",y0):H==="md5"?new G(Z,y0):new B0(H,y0)}}}),M0=$Q({"node_modules/browserify-sign/browser/algorithms.json"(X,K){K.exports={sha224WithRSAEncryption:{sign:"rsa",hash:"sha224",id:"302d300d06096086480165030402040500041c"},"RSA-SHA224":{sign:"ecdsa/rsa",hash:"sha224",id:"302d300d06096086480165030402040500041c"},sha256WithRSAEncryption:{sign:"rsa",hash:"sha256",id:"3031300d060960864801650304020105000420"},"RSA-SHA256":{sign:"ecdsa/rsa",hash:"sha256",id:"3031300d060960864801650304020105000420"},sha384WithRSAEncryption:{sign:"rsa",hash:"sha384",id:"3041300d060960864801650304020205000430"},"RSA-SHA384":{sign:"ecdsa/rsa",hash:"sha384",id:"3041300d060960864801650304020205000430"},sha512WithRSAEncryption:{sign:"rsa",hash:"sha512",id:"3051300d060960864801650304020305000440"},"RSA-SHA512":{sign:"ecdsa/rsa",hash:"sha512",id:"3051300d060960864801650304020305000440"},"RSA-SHA1":{sign:"rsa",hash:"sha1",id:"3021300906052b0e03021a05000414"},"ecdsa-with-SHA1":{sign:"ecdsa",hash:"sha1",id:""},sha256:{sign:"ecdsa",hash:"sha256",id:""},sha224:{sign:"ecdsa",hash:"sha224",id:""},sha384:{sign:"ecdsa",hash:"sha384",id:""},sha512:{sign:"ecdsa",hash:"sha512",id:""},"DSA-SHA":{sign:"dsa",hash:"sha1",id:""},"DSA-SHA1":{sign:"dsa",hash:"sha1",id:""},DSA:{sign:"dsa",hash:"sha1",id:""},"DSA-WITH-SHA224":{sign:"dsa",hash:"sha224",id:""},"DSA-SHA224":{sign:"dsa",hash:"sha224",id:""},"DSA-WITH-SHA256":{sign:"dsa",hash:"sha256",id:""},"DSA-SHA256":{sign:"dsa",hash:"sha256",id:""},"DSA-WITH-SHA384":{sign:"dsa",hash:"sha384",id:""},"DSA-SHA384":{sign:"dsa",hash:"sha384",id:""},"DSA-WITH-SHA512":{sign:"dsa",hash:"sha512",id:""},"DSA-SHA512":{sign:"dsa",hash:"sha512",id:""},"DSA-RIPEMD160":{sign:"dsa",hash:"rmd160",id:""},ripemd160WithRSA:{sign:"rsa",hash:"rmd160",id:"3021300906052b2403020105000414"},"RSA-RIPEMD160":{sign:"rsa",hash:"rmd160",id:"3021300906052b2403020105000414"},md5WithRSAEncryption:{sign:"rsa",hash:"md5",id:"3020300c06082a864886f70d020505000410"},"RSA-MD5":{sign:"rsa",hash:"md5",id:"3020300c06082a864886f70d020505000410"}}}}),S0=$Q({"node_modules/browserify-sign/algos.js"(X,K){K.exports=M0()}}),v0=$Q({"node_modules/pbkdf2/lib/precondition.js"(X,K){var x0=Math.pow(2,30)-1;K.exports=function(G,Y){if(typeof G!="number")throw new TypeError("Iterations not a number");if(G<0)throw new TypeError("Bad iterations");if(typeof Y!="number")throw new TypeError("Key length not a number");if(Y<0||Y>x0||Y!==Y)throw new TypeError("Bad key length")}}}),q0=$Q({"node_modules/pbkdf2/lib/default-encoding.js"(X,K){var x0;global.process&&global.process.browser?x0="utf-8":global.process&&global.process.version?(G=parseInt(process.version.split(".")[0].slice(1),10),x0=G>=6?"utf-8":"binary"):x0="utf-8";var G;K.exports=x0}}),j0=$Q({"node_modules/pbkdf2/lib/to-buffer.js"(X,K){var x0=YQ().Buffer;K.exports=function(G,Y,$){if(x0.isBuffer(G))return G;if(typeof G=="string")return x0.from(G,Y);if(ArrayBuffer.isView(G))return x0.from(G.buffer);throw new TypeError($+" must be a string, a Buffer, a typed array or a DataView")}}}),k0=$Q({"node_modules/pbkdf2/lib/sync-browser.js"(X,K){var x0=P0(),G=O0(),Y=D0(),$=YQ().Buffer,Z=v0(),Q=q0(),U=j0(),V=$.alloc(128),B0={md5:16,sha1:20,sha224:28,sha256:32,sha384:48,sha512:64,rmd160:20,ripemd160:20};function H(w0,E,p0){var T=y0(w0),f0=w0==="sha512"||w0==="sha384"?128:64;E.length>f0?E=T(E):E.length<f0&&(E=$.concat([E,V],f0));for(var D=$.allocUnsafe(f0+B0[w0]),c0=$.allocUnsafe(f0+B0[w0]),C=0;C<f0;C++)D[C]=E[C]^54,c0[C]=E[C]^92;var h0=$.allocUnsafe(f0+p0+4);D.copy(h0,0,0,f0),this.ipad1=h0,this.ipad2=D,this.opad=c0,this.alg=w0,this.blocksize=f0,this.hash=T,this.size=B0[w0]}H.prototype.run=function(w0,E){w0.copy(E,this.blocksize);var p0=this.hash(E);return p0.copy(this.opad,this.blocksize),this.hash(this.opad)};function y0(w0){function E(T){return Y(w0).update(T).digest()}function p0(T){return new G().update(T).digest()}return w0==="rmd160"||w0==="ripemd160"?p0:w0==="md5"?x0:E}function W(w0,E,p0,T,f0){Z(p0,T),w0=U(w0,Q,"Password"),E=U(E,Q,"Salt"),f0=f0||"sha1";var D=new H(f0,w0,E.length),c0=$.allocUnsafe(T),C=$.allocUnsafe(E.length+4);E.copy(C,0,0,E.length);for(var h0=0,L=B0[f0],d0=Math.ceil(T/L),R=1;R<=d0;R++){C.writeUInt32BE(R,E.length);for(var b0=D.run(C,D.ipad1),P=b0,l0=1;l0<p0;l0++){P=D.run(P,D.ipad2);for(var z=0;z<L;z++)b0[z]^=P[z]}b0.copy(c0,h0),h0+=L}return c0}K.exports=W}}),GQ=$Q({"node_modules/pbkdf2/lib/async.js"(X,K){var x0=YQ().Buffer,G=v0(),Y=q0(),$=k0(),Z=j0(),Q,U=i$.subtle,V={sha:"SHA-1","sha-1":"SHA-1",sha1:"SHA-1",sha256:"SHA-256","sha-256":"SHA-256",sha384:"SHA-384","sha-384":"SHA-384","sha-512":"SHA-512",sha512:"SHA-512"},B0=[];function H(p0){if(global.process&&!global.process.browser||!U||!U.importKey||!U.deriveBits)return Promise.resolve(!1);if(B0[p0]!==void 0)return B0[p0];Q=Q||x0.alloc(8);var T=w0(Q,Q,10,128,p0).then(function(){return!0}).catch(function(){return!1});return B0[p0]=T,T}var y0;function W(){return y0||(global.process&&global.process.nextTick?y0=global.process.nextTick:global.queueMicrotask?y0=global.queueMicrotask:global.setImmediate?y0=global.setImmediate:y0=global.setTimeout,y0)}function w0(p0,T,f0,D,c0){return U.importKey("raw",p0,{name:"PBKDF2"},!1,["deriveBits"]).then(function(C){return U.deriveBits({name:"PBKDF2",salt:T,iterations:f0,hash:{name:c0}},C,D<<3)}).then(function(C){return x0.from(C)})}function E(p0,T){p0.then(function(f0){W()(function(){T(null,f0)})},function(f0){W()(function(){T(f0)})})}K.exports=function(p0,T,f0,D,c0,C){typeof c0=="function"&&(C=c0,c0=void 0),c0=c0||"sha1";var h0=V[c0.toLowerCase()];if(!h0||typeof global.Promise!="function"){W()(function(){var L;try{L=$(p0,T,f0,D,c0)}catch(d0){return C(d0)}C(null,L)});return}if(G(f0,D),p0=Z(p0,Y,"Password"),T=Z(T,Y,"Salt"),typeof C!="function")throw new Error("No callback provided to pbkdf2");E(H(h0).then(function(L){return L?w0(p0,T,f0,D,h0):$(p0,T,f0,D,c0)}),C)}}}),g0=$Q({"node_modules/pbkdf2/browser.js"(X){X.pbkdf2=GQ(),X.pbkdf2Sync=k0()}}),_0=$Q({"node_modules/des.js/lib/des/utils.js"(X){X.readUInt32BE=function(Y,$){var Z=Y[0+$]<<24|Y[1+$]<<16|Y[2+$]<<8|Y[3+$];return Z>>>0},X.writeUInt32BE=function(Y,$,Z){Y[0+Z]=$>>>24,Y[1+Z]=$>>>16&255,Y[2+Z]=$>>>8&255,Y[3+Z]=$&255},X.ip=function(Y,$,Z,Q){for(var U=0,V=0,B0=6;B0>=0;B0-=2){for(var H=0;H<=24;H+=8)U<<=1,U|=$>>>H+B0&1;for(var H=0;H<=24;H+=8)U<<=1,U|=Y>>>H+B0&1}for(var B0=6;B0>=0;B0-=2){for(var H=1;H<=25;H+=8)V<<=1,V|=$>>>H+B0&1;for(var H=1;H<=25;H+=8)V<<=1,V|=Y>>>H+B0&1}Z[Q+0]=U>>>0,Z[Q+1]=V>>>0},X.rip=function(Y,$,Z,Q){for(var U=0,V=0,B0=0;B0<4;B0++)for(var H=24;H>=0;H-=8)U<<=1,U|=$>>>H+B0&1,U<<=1,U|=Y>>>H+B0&1;for(var B0=4;B0<8;B0++)for(var H=24;H>=0;H-=8)V<<=1,V|=$>>>H+B0&1,V<<=1,V|=Y>>>H+B0&1;Z[Q+0]=U>>>0,Z[Q+1]=V>>>0},X.pc1=function(Y,$,Z,Q){for(var U=0,V=0,B0=7;B0>=5;B0--){for(var H=0;H<=24;H+=8)U<<=1,U|=$>>H+B0&1;for(var H=0;H<=24;H+=8)U<<=1,U|=Y>>H+B0&1}for(var H=0;H<=24;H+=8)U<<=1,U|=$>>H+B0&1;for(var B0=1;B0<=3;B0++){for(var H=0;H<=24;H+=8)V<<=1,V|=$>>H+B0&1;for(var H=0;H<=24;H+=8)V<<=1,V|=Y>>H+B0&1}for(var H=0;H<=24;H+=8)V<<=1,V|=Y>>H+B0&1;Z[Q+0]=U>>>0,Z[Q+1]=V>>>0},X.r28shl=function(Y,$){return Y<<$&268435455|Y>>>28-$};var K=[14,11,17,4,27,23,25,0,13,22,7,18,5,9,16,24,2,20,12,21,1,8,15,26,15,4,25,19,9,1,26,16,5,11,23,8,12,7,17,0,22,3,10,14,6,20,27,24];X.pc2=function(Y,$,Z,Q){for(var U=0,V=0,B0=K.length>>>1,H=0;H<B0;H++)U<<=1,U|=Y>>>K[H]&1;for(var H=B0;H<K.length;H++)V<<=1,V|=$>>>K[H]&1;Z[Q+0]=U>>>0,Z[Q+1]=V>>>0},X.expand=function(Y,$,Z){var Q=0,U=0;Q=(Y&1)<<5|Y>>>27;for(var V=23;V>=15;V-=4)Q<<=6,Q|=Y>>>V&63;for(var V=11;V>=3;V-=4)U|=Y>>>V&63,U<<=6;U|=(Y&31)<<1|Y>>>31,$[Z+0]=Q>>>0,$[Z+1]=U>>>0};var x0=[14,0,4,15,13,7,1,4,2,14,15,2,11,13,8,1,3,10,10,6,6,12,12,11,5,9,9,5,0,3,7,8,4,15,1,12,14,8,8,2,13,4,6,9,2,1,11,7,15,5,12,11,9,3,7,14,3,10,10,0,5,6,0,13,15,3,1,13,8,4,14,7,6,15,11,2,3,8,4,14,9,12,7,0,2,1,13,10,12,6,0,9,5,11,10,5,0,13,14,8,7,10,11,1,10,3,4,15,13,4,1,2,5,11,8,6,12,7,6,12,9,0,3,5,2,14,15,9,10,13,0,7,9,0,14,9,6,3,3,4,15,6,5,10,1,2,13,8,12,5,7,14,11,12,4,11,2,15,8,1,13,1,6,10,4,13,9,0,8,6,15,9,3,8,0,7,11,4,1,15,2,14,12,3,5,11,10,5,14,2,7,12,7,13,13,8,14,11,3,5,0,6,6,15,9,0,10,3,1,4,2,7,8,2,5,12,11,1,12,10,4,14,15,9,10,3,6,15,9,0,0,6,12,10,11,1,7,13,13,8,15,9,1,4,3,5,14,11,5,12,2,7,8,2,4,14,2,14,12,11,4,2,1,12,7,4,10,7,11,13,6,1,8,5,5,0,3,15,15,10,13,3,0,9,14,8,9,6,4,11,2,8,1,12,11,7,10,1,13,14,7,2,8,13,15,6,9,15,12,0,5,9,6,10,3,4,0,5,14,3,12,10,1,15,10,4,15,2,9,7,2,12,6,9,8,5,0,6,13,1,3,13,4,14,14,0,7,11,5,3,11,8,9,4,14,3,15,2,5,12,2,9,8,5,12,15,3,10,7,11,0,14,4,1,10,7,1,6,13,0,11,8,6,13,4,13,11,0,2,11,14,7,15,4,0,9,8,1,13,10,3,14,12,3,9,5,7,12,5,2,10,15,6,8,1,6,1,6,4,11,11,13,13,8,12,1,3,4,7,10,14,7,10,9,15,5,6,0,8,15,0,14,5,2,9,3,2,12,13,1,2,15,8,13,4,8,6,10,15,3,11,7,1,4,10,12,9,5,3,6,14,11,5,0,0,14,12,9,7,2,7,2,11,1,4,14,1,7,9,4,12,10,14,8,2,13,0,15,6,12,10,9,13,0,15,3,3,5,5,6,8,11];X.substitute=function(Y,$){for(var Z=0,Q=0;Q<4;Q++){var U=Y>>>18-Q*6&63,V=x0[Q*64+U];Z<<=4,Z|=V}for(var Q=0;Q<4;Q++){var U=$>>>18-Q*6&63,V=x0[256+Q*64+U];Z<<=4,Z|=V}return Z>>>0};var G=[16,25,12,11,3,20,4,15,31,17,9,6,27,14,1,22,30,24,8,18,0,5,29,23,13,19,2,26,10,21,28,7];X.permute=function(Y){for(var $=0,Z=0;Z<G.length;Z++)$<<=1,$|=Y>>>G[Z]&1;return $>>>0},X.padSplit=function(Y,$,Z){for(var Q=Y.toString(2);Q.length<$;)Q="0"+Q;for(var U=[],V=0;V<$;V+=Z)U.push(Q.slice(V,V+Z));return U.join(" ")}}}),N0=$Q({"node_modules/minimalistic-assert/index.js"(X,K){K.exports=x0;function x0(G,Y){if(!G)throw new Error(Y||"Assertion failed")}x0.equal=function(G,Y,$){if(G!=Y)throw new Error($||"Assertion failed: "+G+" != "+Y)}}}),VQ=$Q({"node_modules/des.js/lib/des/cipher.js"(X,K){var x0=N0();function G(Y){this.options=Y,this.type=this.options.type,this.blockSize=8,this._init(),this.buffer=new Array(this.blockSize),this.bufferOff=0}K.exports=G,G.prototype._init=function(){},G.prototype.update=function(Y){return Y.length===0?[]:this.type==="decrypt"?this._updateDecrypt(Y):this._updateEncrypt(Y)},G.prototype._buffer=function(Y,$){for(var Z=Math.min(this.buffer.length-this.bufferOff,Y.length-$),Q=0;Q<Z;Q++)this.buffer[this.bufferOff+Q]=Y[$+Q];return this.bufferOff+=Z,Z},G.prototype._flushBuffer=function(Y,$){return this._update(this.buffer,0,Y,$),this.bufferOff=0,this.blockSize},G.prototype._updateEncrypt=function(Y){var $=0,Z=0,Q=(this.bufferOff+Y.length)/this.blockSize|0,U=new Array(Q*this.blockSize);this.bufferOff!==0&&($+=this._buffer(Y,$),this.bufferOff===this.buffer.length&&(Z+=this._flushBuffer(U,Z)));for(var V=Y.length-(Y.length-$)%this.blockSize;$<V;$+=this.blockSize)this._update(Y,$,U,Z),Z+=this.blockSize;for(;$<Y.length;$++,this.bufferOff++)this.buffer[this.bufferOff]=Y[$];return U},G.prototype._updateDecrypt=function(Y){for(var $=0,Z=0,Q=Math.ceil((this.bufferOff+Y.length)/this.blockSize)-1,U=new Array(Q*this.blockSize);Q>0;Q--)$+=this._buffer(Y,$),Z+=this._flushBuffer(U,Z);return $+=this._buffer(Y,$),U},G.prototype.final=function(Y){var $;Y&&($=this.update(Y));var Z;return this.type==="encrypt"?Z=this._finalEncrypt():Z=this._finalDecrypt(),$?$.concat(Z):Z},G.prototype._pad=function(Y,$){if($===0)return!1;for(;$<Y.length;)Y[$++]=0;return!0},G.prototype._finalEncrypt=function(){if(!this._pad(this.buffer,this.bufferOff))return[];var Y=new Array(this.blockSize);return this._update(this.buffer,0,Y,0),Y},G.prototype._unpad=function(Y){return Y},G.prototype._finalDecrypt=function(){x0.equal(this.bufferOff,this.blockSize,"Not enough data to decrypt");var Y=new Array(this.blockSize);return this._flushBuffer(Y,0),this._unpad(Y)}}}),UQ=$Q({"node_modules/des.js/lib/des/des.js"(X,K){var x0=N0(),G=X0(),Y=_0(),$=VQ();function Z(){this.tmp=new Array(2),this.keys=null}function Q(V){$.call(this,V);var B0=new Z;this._desState=B0,this.deriveKeys(B0,V.key)}G(Q,$),K.exports=Q,Q.create=function(V){return new Q(V)};var U=[1,1,2,2,2,2,2,2,1,2,2,2,2,2,2,1];Q.prototype.deriveKeys=function(V,B0){V.keys=new Array(32),x0.equal(B0.length,this.blockSize,"Invalid key length");var H=Y.readUInt32BE(B0,0),y0=Y.readUInt32BE(B0,4);Y.pc1(H,y0,V.tmp,0),H=V.tmp[0],y0=V.tmp[1];for(var W=0;W<V.keys.length;W+=2){var w0=U[W>>>1];H=Y.r28shl(H,w0),y0=Y.r28shl(y0,w0),Y.pc2(H,y0,V.keys,W)}},Q.prototype._update=function(V,B0,H,y0){var W=this._desState,w0=Y.readUInt32BE(V,B0),E=Y.readUInt32BE(V,B0+4);Y.ip(w0,E,W.tmp,0),w0=W.tmp[0],E=W.tmp[1],this.type==="encrypt"?this._encrypt(W,w0,E,W.tmp,0):this._decrypt(W,w0,E,W.tmp,0),w0=W.tmp[0],E=W.tmp[1],Y.writeUInt32BE(H,w0,y0),Y.writeUInt32BE(H,E,y0+4)},Q.prototype._pad=function(V,B0){for(var H=V.length-B0,y0=B0;y0<V.length;y0++)V[y0]=H;return!0},Q.prototype._unpad=function(V){for(var B0=V[V.length-1],H=V.length-B0;H<V.length;H++)x0.equal(V[H],B0);return V.slice(0,V.length-B0)},Q.prototype._encrypt=function(V,B0,H,y0,W){for(var w0=B0,E=H,p0=0;p0<V.keys.length;p0+=2){var T=V.keys[p0],f0=V.keys[p0+1];Y.expand(E,V.tmp,0),T^=V.tmp[0],f0^=V.tmp[1];var D=Y.substitute(T,f0),c0=Y.permute(D),C=E;E=(w0^c0)>>>0,w0=C}Y.rip(E,w0,y0,W)},Q.prototype._decrypt=function(V,B0,H,y0,W){for(var w0=H,E=B0,p0=V.keys.length-2;p0>=0;p0-=2){var T=V.keys[p0],f0=V.keys[p0+1];Y.expand(w0,V.tmp,0),T^=V.tmp[0],f0^=V.tmp[1];var D=Y.substitute(T,f0),c0=Y.permute(D),C=w0;w0=(E^c0)>>>0,E=C}Y.rip(w0,E,y0,W)}}}),XQ=$Q({"node_modules/des.js/lib/des/cbc.js"(X){var K=N0(),x0=X0(),G={};function Y(Z){K.equal(Z.length,8,"Invalid IV length"),this.iv=new Array(8);for(var Q=0;Q<this.iv.length;Q++)this.iv[Q]=Z[Q]}function $(Z){function Q(H){Z.call(this,H),this._cbcInit()}x0(Q,Z);for(var U=Object.keys(G),V=0;V<U.length;V++){var B0=U[V];Q.prototype[B0]=G[B0]}return Q.create=function(H){return new Q(H)},Q}X.instantiate=$,G._cbcInit=function(){var Z=new Y(this.options.iv);this._cbcState=Z},G._update=function(Z,Q,U,V){var B0=this._cbcState,H=this.constructor.super_.prototype,y0=B0.iv;if(this.type==="encrypt"){for(var W=0;W<this.blockSize;W++)y0[W]^=Z[Q+W];H._update.call(this,y0,0,U,V);for(var W=0;W<this.blockSize;W++)y0[W]=U[V+W]}else{H._update.call(this,Z,Q,U,V);for(var W=0;W<this.blockSize;W++)U[V+W]^=y0[W];for(var W=0;W<this.blockSize;W++)y0[W]=Z[Q+W]}}}}),KQ=$Q({"node_modules/des.js/lib/des/ede.js"(X,K){var x0=N0(),G=X0(),Y=VQ(),$=UQ();function Z(U,V){x0.equal(V.length,24,"Invalid key length");var B0=V.slice(0,8),H=V.slice(8,16),y0=V.slice(16,24);U==="encrypt"?this.ciphers=[$.create({type:"encrypt",key:B0}),$.create({type:"decrypt",key:H}),$.create({type:"encrypt",key:y0})]:this.ciphers=[$.create({type:"decrypt",key:y0}),$.create({type:"encrypt",key:H}),$.create({type:"decrypt",key:B0})]}function Q(U){Y.call(this,U);var V=new Z(this.type,this.options.key);this._edeState=V}G(Q,Y),K.exports=Q,Q.create=function(U){return new Q(U)},Q.prototype._update=function(U,V,B0,H){var y0=this._edeState;y0.ciphers[0]._update(U,V,B0,H),y0.ciphers[1]._update(B0,H,B0,H),y0.ciphers[2]._update(B0,H,B0,H)},Q.prototype._pad=$.prototype._pad,Q.prototype._unpad=$.prototype._unpad}}),IQ=$Q({"node_modules/des.js/lib/des.js"(X){X.utils=_0(),X.Cipher=VQ(),X.DES=UQ(),X.CBC=XQ(),X.EDE=KQ()}}),OQ=$Q({"node_modules/browserify-des/index.js"(X,K){var x0=C0(),G=IQ(),Y=X0(),$=YQ().Buffer,Z={"des-ede3-cbc":G.CBC.instantiate(G.EDE),"des-ede3":G.EDE,"des-ede-cbc":G.CBC.instantiate(G.EDE),"des-ede":G.EDE,"des-cbc":G.CBC.instantiate(G.DES),"des-ecb":G.DES};Z.des=Z["des-cbc"],Z.des3=Z["des-ede3-cbc"],K.exports=Q,Y(Q,x0);function Q(U){x0.call(this);var V=U.mode.toLowerCase(),B0=Z[V],H;U.decrypt?H="decrypt":H="encrypt";var y0=U.key;$.isBuffer(y0)||(y0=$.from(y0)),(V==="des-ede"||V==="des-ede-cbc")&&(y0=$.concat([y0,y0.slice(0,8)]));var W=U.iv;$.isBuffer(W)||(W=$.from(W)),this._des=B0.create({key:y0,iv:W,type:H})}Q.prototype._update=function(U){return $.from(this._des.update(U))},Q.prototype._final=function(){return $.from(this._des.final())}}}),JQ=$Q({"node_modules/browserify-aes/modes/ecb.js"(X){X.encrypt=function(K,x0){return K._cipher.encryptBlock(x0)},X.decrypt=function(K,x0){return K._cipher.decryptBlock(x0)}}}),FQ=$Q({"node_modules/buffer-xor/index.js"(X,K){K.exports=function(x0,G){for(var Y=Math.min(x0.length,G.length),$=new c$(Y),Z=0;Z<Y;++Z)$[Z]=x0[Z]^G[Z];return $}}}),AQ=$Q({"node_modules/browserify-aes/modes/cbc.js"(X){var K=FQ();X.encrypt=function(x0,G){var Y=K(G,x0._prev);return x0._prev=x0._cipher.encryptBlock(Y),x0._prev},X.decrypt=function(x0,G){var Y=x0._prev;x0._prev=G;var $=x0._cipher.decryptBlock(G);return K($,Y)}}}),HQ=$Q({"node_modules/browserify-aes/modes/cfb.js"(X){var K=YQ().Buffer,x0=FQ();function G(Y,$,Z){var Q=$.length,U=x0($,Y._cache);return Y._cache=Y._cache.slice(Q),Y._prev=K.concat([Y._prev,Z?$:U]),U}X.encrypt=function(Y,$,Z){for(var Q=K.allocUnsafe(0),U;$.length;)if(Y._cache.length===0&&(Y._cache=Y._cipher.encryptBlock(Y._prev),Y._prev=K.allocUnsafe(0)),Y._cache.length<=$.length)U=Y._cache.length,Q=K.concat([Q,G(Y,$.slice(0,U),Z)]),$=$.slice(U);else{Q=K.concat([Q,G(Y,$,Z)]);break}return Q}}}),WQ=$Q({"node_modules/browserify-aes/modes/cfb8.js"(X){var K=YQ().Buffer;function x0(G,Y,$){var Z=G._cipher.encryptBlock(G._prev),Q=Z[0]^Y;return G._prev=K.concat([G._prev.slice(1),K.from([$?Y:Q])]),Q}X.encrypt=function(G,Y,$){for(var Z=Y.length,Q=K.allocUnsafe(Z),U=-1;++U<Z;)Q[U]=x0(G,Y[U],$);return Q}}}),EQ=$Q({"node_modules/browserify-aes/modes/cfb1.js"(X){var K=YQ().Buffer;function x0(Y,$,Z){for(var Q,U=-1,V=8,B0=0,H,y0;++U<V;)Q=Y._cipher.encryptBlock(Y._prev),H=$&1<<7-U?128:0,y0=Q[0]^H,B0+=(y0&128)>>U%8,Y._prev=G(Y._prev,Z?H:y0);return B0}function G(Y,$){var Z=Y.length,Q=-1,U=K.allocUnsafe(Y.length);for(Y=K.concat([Y,K.from([$])]);++Q<Z;)U[Q]=Y[Q]<<1|Y[Q+1]>>7;return U}X.encrypt=function(Y,$,Z){for(var Q=$.length,U=K.allocUnsafe(Q),V=-1;++V<Q;)U[V]=x0(Y,$[V],Z);return U}}}),TQ=$Q({"node_modules/browserify-aes/modes/ofb.js"(X){var K=FQ();function x0(G){return G._prev=G._cipher.encryptBlock(G._prev),G._prev}X.encrypt=function(G,Y){for(;G._cache.length<Y.length;)G._cache=c$.concat([G._cache,x0(G)]);var $=G._cache.slice(0,Y.length);return G._cache=G._cache.slice(Y.length),K(Y,$)}}}),DQ=$Q({"node_modules/browserify-aes/incr32.js"(X,K){function x0(G){for(var Y=G.length,$;Y--;)if($=G.readUInt8(Y),$===255)G.writeUInt8(0,Y);else{$++,G.writeUInt8($,Y);break}}K.exports=x0}}),b$=$Q({"node_modules/browserify-aes/modes/ctr.js"(X){var K=FQ(),x0=YQ().Buffer,G=DQ();function Y(Z){var Q=Z._cipher.encryptBlockRaw(Z._prev);return G(Z._prev),Q}var $=16;X.encrypt=function(Z,Q){var U=Math.ceil(Q.length/$),V=Z._cache.length;Z._cache=x0.concat([Z._cache,x0.allocUnsafe(U*$)]);for(var B0=0;B0<U;B0++){var H=Y(Z),y0=V+B0*$;Z._cache.writeUInt32BE(H[0],y0+0),Z._cache.writeUInt32BE(H[1],y0+4),Z._cache.writeUInt32BE(H[2],y0+8),Z._cache.writeUInt32BE(H[3],y0+12)}var W=Z._cache.slice(0,Q.length);return Z._cache=Z._cache.slice(Q.length),K(Q,W)}}}),CQ=$Q({"node_modules/browserify-aes/modes/list.json"(X,K){K.exports={"aes-128-ecb":{cipher:"AES",key:128,iv:0,mode:"ECB",type:"block"},"aes-192-ecb":{cipher:"AES",key:192,iv:0,mode:"ECB",type:"block"},"aes-256-ecb":{cipher:"AES",key:256,iv:0,mode:"ECB",type:"block"},"aes-128-cbc":{cipher:"AES",key:128,iv:16,mode:"CBC",type:"block"},"aes-192-cbc":{cipher:"AES",key:192,iv:16,mode:"CBC",type:"block"},"aes-256-cbc":{cipher:"AES",key:256,iv:16,mode:"CBC",type:"block"},aes128:{cipher:"AES",key:128,iv:16,mode:"CBC",type:"block"},aes192:{cipher:"AES",key:192,iv:16,mode:"CBC",type:"block"},aes256:{cipher:"AES",key:256,iv:16,mode:"CBC",type:"block"},"aes-128-cfb":{cipher:"AES",key:128,iv:16,mode:"CFB",type:"stream"},"aes-192-cfb":{cipher:"AES",key:192,iv:16,mode:"CFB",type:"stream"},"aes-256-cfb":{cipher:"AES",key:256,iv:16,mode:"CFB",type:"stream"},"aes-128-cfb8":{cipher:"AES",key:128,iv:16,mode:"CFB8",type:"stream"},"aes-192-cfb8":{cipher:"AES",key:192,iv:16,mode:"CFB8",type:"stream"},"aes-256-cfb8":{cipher:"AES",key:256,iv:16,mode:"CFB8",type:"stream"},"aes-128-cfb1":{cipher:"AES",key:128,iv:16,mode:"CFB1",type:"stream"},"aes-192-cfb1":{cipher:"AES",key:192,iv:16,mode:"CFB1",type:"stream"},"aes-256-cfb1":{cipher:"AES",key:256,iv:16,mode:"CFB1",type:"stream"},"aes-128-ofb":{cipher:"AES",key:128,iv:16,mode:"OFB",type:"stream"},"aes-192-ofb":{cipher:"AES",key:192,iv:16,mode:"OFB",type:"stream"},"aes-256-ofb":{cipher:"AES",key:256,iv:16,mode:"OFB",type:"stream"},"aes-128-ctr":{cipher:"AES",key:128,iv:16,mode:"CTR",type:"stream"},"aes-192-ctr":{cipher:"AES",key:192,iv:16,mode:"CTR",type:"stream"},"aes-256-ctr":{cipher:"AES",key:256,iv:16,mode:"CTR",type:"stream"},"aes-128-gcm":{cipher:"AES",key:128,iv:12,mode:"GCM",type:"auth"},"aes-192-gcm":{cipher:"AES",key:192,iv:12,mode:"GCM",type:"auth"},"aes-256-gcm":{cipher:"AES",key:256,iv:12,mode:"GCM",type:"auth"}}}}),LQ=$Q({"node_modules/browserify-aes/modes/index.js"(X,K){var x0={ECB:JQ(),CBC:AQ(),CFB:HQ(),CFB8:WQ(),CFB1:EQ(),OFB:TQ(),CTR:b$(),GCM:b$()},G=CQ();for(Y in G)G[Y].module=x0[G[Y].mode];var Y;K.exports=G}}),RQ=$Q({"node_modules/browserify-aes/aes.js"(X,K){var x0=YQ().Buffer;function G(V){x0.isBuffer(V)||(V=x0.from(V));for(var B0=V.length/4|0,H=new Array(B0),y0=0;y0<B0;y0++)H[y0]=V.readUInt32BE(y0*4);return H}function Y(V){for(var B0=0;B0<V.length;V++)V[B0]=0}function $(V,B0,H,y0,W){for(var w0=H[0],E=H[1],p0=H[2],T=H[3],f0=V[0]^B0[0],D=V[1]^B0[1],c0=V[2]^B0[2],C=V[3]^B0[3],h0,L,d0,R,b0=4,P=1;P<W;P++)h0=w0[f0>>>24]^E[D>>>16&255]^p0[c0>>>8&255]^T[C&255]^B0[b0++],L=w0[D>>>24]^E[c0>>>16&255]^p0[C>>>8&255]^T[f0&255]^B0[b0++],d0=w0[c0>>>24]^E[C>>>16&255]^p0[f0>>>8&255]^T[D&255]^B0[b0++],R=w0[C>>>24]^E[f0>>>16&255]^p0[D>>>8&255]^T[c0&255]^B0[b0++],f0=h0,D=L,c0=d0,C=R;return h0=(y0[f0>>>24]<<24|y0[D>>>16&255]<<16|y0[c0>>>8&255]<<8|y0[C&255])^B0[b0++],L=(y0[D>>>24]<<24|y0[c0>>>16&255]<<16|y0[C>>>8&255]<<8|y0[f0&255])^B0[b0++],d0=(y0[c0>>>24]<<24|y0[C>>>16&255]<<16|y0[f0>>>8&255]<<8|y0[D&255])^B0[b0++],R=(y0[C>>>24]<<24|y0[f0>>>16&255]<<16|y0[D>>>8&255]<<8|y0[c0&255])^B0[b0++],h0=h0>>>0,L=L>>>0,d0=d0>>>0,R=R>>>0,[h0,L,d0,R]}var Z=[0,1,2,4,8,16,32,64,128,27,54],Q=function(){for(var V=new Array(256),B0=0;B0<256;B0++)B0<128?V[B0]=B0<<1:V[B0]=B0<<1^283;for(var H=[],y0=[],W=[[],[],[],[]],w0=[[],[],[],[]],E=0,p0=0,T=0;T<256;++T){var f0=p0^p0<<1^p0<<2^p0<<3^p0<<4;f0=f0>>>8^f0&255^99,H[E]=f0,y0[f0]=E;var D=V[E],c0=V[D],C=V[c0],h0=V[f0]*257^f0*16843008;W[0][E]=h0<<24|h0>>>8,W[1][E]=h0<<16|h0>>>16,W[2][E]=h0<<8|h0>>>24,W[3][E]=h0,h0=C*16843009^c0*65537^D*257^E*16843008,w0[0][f0]=h0<<24|h0>>>8,w0[1][f0]=h0<<16|h0>>>16,w0[2][f0]=h0<<8|h0>>>24,w0[3][f0]=h0,E===0?E=p0=1:(E=D^V[V[V[C^D]]],p0^=V[V[p0]])}return{SBOX:H,INV_SBOX:y0,SUB_MIX:W,INV_SUB_MIX:w0}}();function U(V){this._key=G(V),this._reset()}U.blockSize=16,U.keySize=32,U.prototype.blockSize=U.blockSize,U.prototype.keySize=U.keySize,U.prototype._reset=function(){for(var V=this._key,B0=V.length,H=B0+6,y0=(H+1)*4,W=[],w0=0;w0<B0;w0++)W[w0]=V[w0];for(w0=B0;w0<y0;w0++){var E=W[w0-1];w0%B0===0?(E=E<<8|E>>>24,E=Q.SBOX[E>>>24]<<24|Q.SBOX[E>>>16&255]<<16|Q.SBOX[E>>>8&255]<<8|Q.SBOX[E&255],E^=Z[w0/B0|0]<<24):B0>6&&w0%B0===4&&(E=Q.SBOX[E>>>24]<<24|Q.SBOX[E>>>16&255]<<16|Q.SBOX[E>>>8&255]<<8|Q.SBOX[E&255]),W[w0]=W[w0-B0]^E}for(var p0=[],T=0;T<y0;T++){var f0=y0-T,D=W[f0-(T%4?0:4)];T<4||f0<=4?p0[T]=D:p0[T]=Q.INV_SUB_MIX[0][Q.SBOX[D>>>24]]^Q.INV_SUB_MIX[1][Q.SBOX[D>>>16&255]]^Q.INV_SUB_MIX[2][Q.SBOX[D>>>8&255]]^Q.INV_SUB_MIX[3][Q.SBOX[D&255]]}this._nRounds=H,this._keySchedule=W,this._invKeySchedule=p0},U.prototype.encryptBlockRaw=function(V){return V=G(V),$(V,this._keySchedule,Q.SUB_MIX,Q.SBOX,this._nRounds)},U.prototype.encryptBlock=function(V){var B0=this.encryptBlockRaw(V),H=x0.allocUnsafe(16);return H.writeUInt32BE(B0[0],0),H.writeUInt32BE(B0[1],4),H.writeUInt32BE(B0[2],8),H.writeUInt32BE(B0[3],12),H},U.prototype.decryptBlock=function(V){V=G(V);var B0=V[1];V[1]=V[3],V[3]=B0;var H=$(V,this._invKeySchedule,Q.INV_SUB_MIX,Q.INV_SBOX,this._nRounds),y0=x0.allocUnsafe(16);return y0.writeUInt32BE(H[0],0),y0.writeUInt32BE(H[3],4),y0.writeUInt32BE(H[2],8),y0.writeUInt32BE(H[1],12),y0},U.prototype.scrub=function(){Y(this._keySchedule),Y(this._invKeySchedule),Y(this._key)},K.exports.AES=U}}),PQ=$Q({"node_modules/browserify-aes/ghash.js"(X,K){var x0=YQ().Buffer,G=x0.alloc(16,0);function Y(Q){return[Q.readUInt32BE(0),Q.readUInt32BE(4),Q.readUInt32BE(8),Q.readUInt32BE(12)]}function $(Q){var U=x0.allocUnsafe(16);return U.writeUInt32BE(Q[0]>>>0,0),U.writeUInt32BE(Q[1]>>>0,4),U.writeUInt32BE(Q[2]>>>0,8),U.writeUInt32BE(Q[3]>>>0,12),U}function Z(Q){this.h=Q,this.state=x0.alloc(16,0),this.cache=x0.allocUnsafe(0)}Z.prototype.ghash=function(Q){for(var U=-1;++U<Q.length;)this.state[U]^=Q[U];this._multiply()},Z.prototype._multiply=function(){for(var Q=Y(this.h),U=[0,0,0,0],V,B0,H,y0=-1;++y0<128;){for(B0=(this.state[~~(y0/8)]&1<<7-y0%8)!==0,B0&&(U[0]^=Q[0],U[1]^=Q[1],U[2]^=Q[2],U[3]^=Q[3]),H=(Q[3]&1)!==0,V=3;V>0;V--)Q[V]=Q[V]>>>1|(Q[V-1]&1)<<31;Q[0]=Q[0]>>>1,H&&(Q[0]=Q[0]^225<<24)}this.state=$(U)},Z.prototype.update=function(Q){this.cache=x0.concat([this.cache,Q]);for(var U;this.cache.length>=16;)U=this.cache.slice(0,16),this.cache=this.cache.slice(16),this.ghash(U)},Z.prototype.final=function(Q,U){return this.cache.length&&this.ghash(x0.concat([this.cache,G],16)),this.ghash($([0,Q,0,U])),this.state},K.exports=Z}}),zQ=$Q({"node_modules/browserify-aes/authCipher.js"(X,K){var x0=RQ(),G=YQ().Buffer,Y=C0(),$=X0(),Z=PQ(),Q=FQ(),U=DQ();function V(y0,W){var w0=0;y0.length!==W.length&&w0++;for(var E=Math.min(y0.length,W.length),p0=0;p0<E;++p0)w0+=y0[p0]^W[p0];return w0}function B0(y0,W,w0){if(W.length===12)return y0._finID=G.concat([W,G.from([0,0,0,1])]),G.concat([W,G.from([0,0,0,2])]);var E=new Z(w0),p0=W.length,T=p0%16;E.update(W),T&&(T=16-T,E.update(G.alloc(T,0))),E.update(G.alloc(8,0));var f0=p0*8,D=G.alloc(8);D.writeUIntBE(f0,0,8),E.update(D),y0._finID=E.state;var c0=G.from(y0._finID);return U(c0),c0}function H(y0,W,w0,E){Y.call(this);var p0=G.alloc(4,0);this._cipher=new x0.AES(W);var T=this._cipher.encryptBlock(p0);this._ghash=new Z(T),w0=B0(this,w0,T),this._prev=G.from(w0),this._cache=G.allocUnsafe(0),this._secCache=G.allocUnsafe(0),this._decrypt=E,this._alen=0,this._len=0,this._mode=y0,this._authTag=null,this._called=!1}$(H,Y),H.prototype._update=function(y0){if(!this._called&&this._alen){var W=16-this._alen%16;W<16&&(W=G.alloc(W,0),this._ghash.update(W))}this._called=!0;var w0=this._mode.encrypt(this,y0);return this._decrypt?this._ghash.update(y0):this._ghash.update(w0),this._len+=y0.length,w0},H.prototype._final=function(){if(this._decrypt&&!this._authTag)throw new Error("Unsupported state or unable to authenticate data");var y0=Q(this._ghash.final(this._alen*8,this._len*8),this._cipher.encryptBlock(this._finID));if(this._decrypt&&V(y0,this._authTag))throw new Error("Unsupported state or unable to authenticate data");this._authTag=y0,this._cipher.scrub()},H.prototype.getAuthTag=function(){if(this._decrypt||!G.isBuffer(this._authTag))throw new Error("Attempting to get auth tag in unsupported state");return this._authTag},H.prototype.setAuthTag=function(y0){if(!this._decrypt)throw new Error("Attempting to set auth tag in unsupported state");this._authTag=y0},H.prototype.setAAD=function(y0){if(this._called)throw new Error("Attempting to set AAD in unsupported state");this._ghash.update(y0),this._alen+=y0.length},K.exports=H}}),MQ=$Q({"node_modules/browserify-aes/streamCipher.js"(X,K){var x0=RQ(),G=YQ().Buffer,Y=C0(),$=X0();function Z(Q,U,V,B0){Y.call(this),this._cipher=new x0.AES(U),this._prev=G.from(V),this._cache=G.allocUnsafe(0),this._secCache=G.allocUnsafe(0),this._decrypt=B0,this._mode=Q}$(Z,Y),Z.prototype._update=function(Q){return this._mode.encrypt(this,Q,this._decrypt)},Z.prototype._final=function(){this._cipher.scrub()},K.exports=Z}}),SQ=$Q({"node_modules/evp_bytestokey/index.js"(X,K){var x0=YQ().Buffer,G=I0();function Y($,Z,Q,U){if(x0.isBuffer($)||($=x0.from($,"binary")),Z&&(x0.isBuffer(Z)||(Z=x0.from(Z,"binary")),Z.length!==8))throw new RangeError("salt should be Buffer with 8 byte length");for(var V=Q/8,B0=x0.alloc(V),H=x0.alloc(U||0),y0=x0.alloc(0);V>0||U>0;){var W=new G;W.update(y0),W.update($),Z&&W.update(Z),y0=W.digest();var w0=0;if(V>0){var E=B0.length-V;w0=Math.min(V,y0.length),y0.copy(B0,E,0,w0),V-=w0}if(w0<y0.length&&U>0){var p0=H.length-U,T=Math.min(U,y0.length-w0);y0.copy(H,p0,w0,w0+T),U-=T}}return y0.fill(0),{key:B0,iv:H}}K.exports=Y}}),vQ=$Q({"node_modules/browserify-aes/encrypter.js"(X){var K=LQ(),x0=zQ(),G=YQ().Buffer,Y=MQ(),$=C0(),Z=RQ(),Q=SQ(),U=X0();function V(w0,E,p0){$.call(this),this._cache=new H,this._cipher=new Z.AES(E),this._prev=G.from(p0),this._mode=w0,this._autopadding=!0}U(V,$),V.prototype._update=function(w0){this._cache.add(w0);for(var E,p0,T=[];E=this._cache.get();)p0=this._mode.encrypt(this,E),T.push(p0);return G.concat(T)};var B0=G.alloc(16,16);V.prototype._final=function(){var w0=this._cache.flush();if(this._autopadding)return w0=this._mode.encrypt(this,w0),this._cipher.scrub(),w0;if(!w0.equals(B0))throw this._cipher.scrub(),new Error("data not multiple of block length")},V.prototype.setAutoPadding=function(w0){return this._autopadding=!!w0,this};function H(){this.cache=G.allocUnsafe(0)}H.prototype.add=function(w0){this.cache=G.concat([this.cache,w0])},H.prototype.get=function(){if(this.cache.length>15){var w0=this.cache.slice(0,16);return this.cache=this.cache.slice(16),w0}return null},H.prototype.flush=function(){for(var w0=16-this.cache.length,E=G.allocUnsafe(w0),p0=-1;++p0<w0;)E.writeUInt8(w0,p0);return G.concat([this.cache,E])};function y0(w0,E,p0){var T=K[w0.toLowerCase()];if(!T)throw new TypeError("invalid suite type");if(typeof E=="string"&&(E=G.from(E)),E.length!==T.key/8)throw new TypeError("invalid key length "+E.length);if(typeof p0=="string"&&(p0=G.from(p0)),T.mode!=="GCM"&&p0.length!==T.iv)throw new TypeError("invalid iv length "+p0.length);return T.type==="stream"?new Y(T.module,E,p0):T.type==="auth"?new x0(T.module,E,p0):new V(T.module,E,p0)}function W(w0,E){var p0=K[w0.toLowerCase()];if(!p0)throw new TypeError("invalid suite type");var T=Q(E,!1,p0.key,p0.iv);return y0(w0,T.key,T.iv)}X.createCipheriv=y0,X.createCipher=W}}),qQ=$Q({"node_modules/browserify-aes/decrypter.js"(X){var K=zQ(),x0=YQ().Buffer,G=LQ(),Y=MQ(),$=C0(),Z=RQ(),Q=SQ(),U=X0();function V(w0,E,p0){$.call(this),this._cache=new B0,this._last=void 0,this._cipher=new Z.AES(E),this._prev=x0.from(p0),this._mode=w0,this._autopadding=!0}U(V,$),V.prototype._update=function(w0){this._cache.add(w0);for(var E,p0,T=[];E=this._cache.get(this._autopadding);)p0=this._mode.decrypt(this,E),T.push(p0);return x0.concat(T)},V.prototype._final=function(){var w0=this._cache.flush();if(this._autopadding)return H(this._mode.decrypt(this,w0));if(w0)throw new Error("data not multiple of block length")},V.prototype.setAutoPadding=function(w0){return this._autopadding=!!w0,this};function B0(){this.cache=x0.allocUnsafe(0)}B0.prototype.add=function(w0){this.cache=x0.concat([this.cache,w0])},B0.prototype.get=function(w0){var E;if(w0){if(this.cache.length>16)return E=this.cache.slice(0,16),this.cache=this.cache.slice(16),E}else if(this.cache.length>=16)return E=this.cache.slice(0,16),this.cache=this.cache.slice(16),E;return null},B0.prototype.flush=function(){if(this.cache.length)return this.cache};function H(w0){var E=w0[15];if(E<1||E>16)throw new Error("unable to decrypt data");for(var p0=-1;++p0<E;)if(w0[p0+(16-E)]!==E)throw new Error("unable to decrypt data");if(E!==16)return w0.slice(0,16-E)}function y0(w0,E,p0){var T=G[w0.toLowerCase()];if(!T)throw new TypeError("invalid suite type");if(typeof p0=="string"&&(p0=x0.from(p0)),T.mode!=="GCM"&&p0.length!==T.iv)throw new TypeError("invalid iv length "+p0.length);if(typeof E=="string"&&(E=x0.from(E)),E.length!==T.key/8)throw new TypeError("invalid key length "+E.length);return T.type==="stream"?new Y(T.module,E,p0,!0):T.type==="auth"?new K(T.module,E,p0,!0):new V(T.module,E,p0)}function W(w0,E){var p0=G[w0.toLowerCase()];if(!p0)throw new TypeError("invalid suite type");var T=Q(E,!1,p0.key,p0.iv);return y0(w0,T.key,T.iv)}X.createDecipher=W,X.createDecipheriv=y0}}),jQ=$Q({"node_modules/browserify-aes/browser.js"(X){var K=vQ(),x0=qQ(),G=CQ();function Y(){return Object.keys(G)}X.createCipher=X.Cipher=K.createCipher,X.createCipheriv=X.Cipheriv=K.createCipheriv,X.createDecipher=X.Decipher=x0.createDecipher,X.createDecipheriv=X.Decipheriv=x0.createDecipheriv,X.listCiphers=X.getCiphers=Y}}),kQ=$Q({"node_modules/browserify-des/modes.js"(X){X["des-ecb"]={key:8,iv:0},X["des-cbc"]=X.des={key:8,iv:8},X["des-ede3-cbc"]=X.des3={key:24,iv:8},X["des-ede3"]={key:24,iv:0},X["des-ede-cbc"]={key:16,iv:8},X["des-ede"]={key:16,iv:0}}}),gQ=$Q({"node_modules/browserify-cipher/browser.js"(X){var K=OQ(),x0=jQ(),G=LQ(),Y=kQ(),$=SQ();function Z(H,y0){H=H.toLowerCase();var W,w0;if(G[H])W=G[H].key,w0=G[H].iv;else if(Y[H])W=Y[H].key*8,w0=Y[H].iv;else throw new TypeError("invalid suite type");var E=$(y0,!1,W,w0);return U(H,E.key,E.iv)}function Q(H,y0){H=H.toLowerCase();var W,w0;if(G[H])W=G[H].key,w0=G[H].iv;else if(Y[H])W=Y[H].key*8,w0=Y[H].iv;else throw new TypeError("invalid suite type");var E=$(y0,!1,W,w0);return V(H,E.key,E.iv)}function U(H,y0,W){if(H=H.toLowerCase(),G[H])return x0.createCipheriv(H,y0,W);if(Y[H])return new K({key:y0,iv:W,mode:H});throw new TypeError("invalid suite type")}function V(H,y0,W){if(H=H.toLowerCase(),G[H])return x0.createDecipheriv(H,y0,W);if(Y[H])return new K({key:y0,iv:W,mode:H,decrypt:!0});throw new TypeError("invalid suite type")}function B0(){return Object.keys(Y).concat(x0.getCiphers())}X.createCipher=X.Cipher=Z,X.createCipheriv=X.Cipheriv=U,X.createDecipher=X.Decipher=Q,X.createDecipheriv=X.Decipheriv=V,X.listCiphers=X.getCiphers=B0}}),A=$Q({"node_modules/diffie-hellman/node_modules/bn.js/lib/bn.js"(X,K){(function(x0,G){function Y(l0,z){if(!l0)throw new Error(z||"Assertion failed")}function $(l0,z){l0.super_=z;var o0=function(){};o0.prototype=z.prototype,l0.prototype=new o0,l0.prototype.constructor=l0}function Z(l0,z,o0){if(Z.isBN(l0))return l0;this.negative=0,this.words=null,this.length=0,this.red=null,l0!==null&&((z==="le"||z==="be")&&(o0=z,z=10),this._init(l0||0,z||10,o0||"be"))}typeof x0=="object"?x0.exports=Z:G.BN=Z,Z.BN=Z,Z.wordSize=26;var Q=c$;Z.isBN=function(l0){return l0 instanceof Z?!0:l0!==null&&typeof l0=="object"&&l0.constructor.wordSize===Z.wordSize&&Array.isArray(l0.words)},Z.max=function(l0,z){return l0.cmp(z)>0?l0:z},Z.min=function(l0,z){return l0.cmp(z)<0?l0:z},Z.prototype._init=function(l0,z,o0){if(typeof l0=="number")return this._initNumber(l0,z,o0);if(typeof l0=="object")return this._initArray(l0,z,o0);z==="hex"&&(z=16),Y(z===(z|0)&&z>=2&&z<=36),l0=l0.toString().replace(/\s+/g,"");var M=0;l0[0]==="-"&&(M++,this.negative=1),M<l0.length&&(z===16?this._parseHex(l0,M,o0):(this._parseBase(l0,z,M),o0==="le"&&this._initArray(this.toArray(),z,o0)))},Z.prototype._initNumber=function(l0,z,o0){l0<0&&(this.negative=1,l0=-l0),l0<67108864?(this.words=[l0&67108863],this.length=1):l0<4503599627370496?(this.words=[l0&67108863,l0/67108864&67108863],this.length=2):(Y(l0<9007199254740992),this.words=[l0&67108863,l0/67108864&67108863,1],this.length=3),o0==="le"&&this._initArray(this.toArray(),z,o0)},Z.prototype._initArray=function(l0,z,o0){if(Y(typeof l0.length=="number"),l0.length<=0)return this.words=[0],this.length=1,this;this.length=Math.ceil(l0.length/3),this.words=new Array(this.length);for(var M=0;M<this.length;M++)this.words[M]=0;var u0,S,n0=0;if(o0==="be")for(M=l0.length-1,u0=0;M>=0;M-=3)S=l0[M]|l0[M-1]<<8|l0[M-2]<<16,this.words[u0]|=S<<n0&67108863,this.words[u0+1]=S>>>26-n0&67108863,n0+=24,n0>=26&&(n0-=26,u0++);else if(o0==="le")for(M=0,u0=0;M<l0.length;M+=3)S=l0[M]|l0[M+1]<<8|l0[M+2]<<16,this.words[u0]|=S<<n0&67108863,this.words[u0+1]=S>>>26-n0&67108863,n0+=24,n0>=26&&(n0-=26,u0++);return this.strip()};function U(l0,z){var o0=l0.charCodeAt(z);return o0>=65&&o0<=70?o0-55:o0>=97&&o0<=102?o0-87:o0-48&15}function V(l0,z,o0){var M=U(l0,o0);return o0-1>=z&&(M|=U(l0,o0-1)<<4),M}Z.prototype._parseHex=function(l0,z,o0){this.length=Math.ceil((l0.length-z)/6),this.words=new Array(this.length);for(var M=0;M<this.length;M++)this.words[M]=0;var u0=0,S=0,n0;if(o0==="be")for(M=l0.length-1;M>=z;M-=2)n0=V(l0,z,M)<<u0,this.words[S]|=n0&67108863,u0>=18?(u0-=18,S+=1,this.words[S]|=n0>>>26):u0+=8;else{var v=l0.length-z;for(M=v%2===0?z+1:z;M<l0.length;M+=2)n0=V(l0,z,M)<<u0,this.words[S]|=n0&67108863,u0>=18?(u0-=18,S+=1,this.words[S]|=n0>>>26):u0+=8}this.strip()};function B0(l0,z,o0,M){for(var u0=0,S=Math.min(l0.length,o0),n0=z;n0<S;n0++){var v=l0.charCodeAt(n0)-48;u0*=M,v>=49?u0+=v-49+10:v>=17?u0+=v-17+10:u0+=v}return u0}Z.prototype._parseBase=function(l0,z,o0){this.words=[0],this.length=1;for(var M=0,u0=1;u0<=67108863;u0*=z)M++;M--,u0=u0/z|0;for(var S=l0.length-o0,n0=S%M,v=Math.min(S,S-n0)+o0,s0=0,I=o0;I<v;I+=M)s0=B0(l0,I,I+M,z),this.imuln(u0),this.words[0]+s0<67108864?this.words[0]+=s0:this._iaddn(s0);if(n0!==0){var t0=1;for(s0=B0(l0,I,l0.length,z),I=0;I<n0;I++)t0*=z;this.imuln(t0),this.words[0]+s0<67108864?this.words[0]+=s0:this._iaddn(s0)}this.strip()},Z.prototype.copy=function(l0){l0.words=new Array(this.length);for(var z=0;z<this.length;z++)l0.words[z]=this.words[z];l0.length=this.length,l0.negative=this.negative,l0.red=this.red},Z.prototype.clone=function(){var l0=new Z(null);return this.copy(l0),l0},Z.prototype._expand=function(l0){for(;this.length<l0;)this.words[this.length++]=0;return this},Z.prototype.strip=function(){for(;this.length>1&&this.words[this.length-1]===0;)this.length--;return this._normSign()},Z.prototype._normSign=function(){return this.length===1&&this.words[0]===0&&(this.negative=0),this},Z.prototype.inspect=function(){return(this.red?"<BN-R: ":"<BN: ")+this.toString(16)+">"};var H=["","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"],y0=[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],W=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64000000,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,24300000,28629151,33554432,39135393,45435424,52521875,60466176];Z.prototype.toString=function(l0,z){l0=l0||10,z=z|0||1;var o0;if(l0===16||l0==="hex"){o0="";for(var M=0,u0=0,S=0;S<this.length;S++){var n0=this.words[S],v=((n0<<M|u0)&16777215).toString(16);u0=n0>>>24-M&16777215,u0!==0||S!==this.length-1?o0=H[6-v.length]+v+o0:o0=v+o0,M+=2,M>=26&&(M-=26,S--)}for(u0!==0&&(o0=u0.toString(16)+o0);o0.length%z!==0;)o0="0"+o0;return this.negative!==0&&(o0="-"+o0),o0}if(l0===(l0|0)&&l0>=2&&l0<=36){var s0=y0[l0],I=W[l0];o0="";var t0=this.clone();for(t0.negative=0;!t0.isZero();){var m0=t0.modn(I).toString(l0);t0=t0.idivn(I),t0.isZero()?o0=m0+o0:o0=H[s0-m0.length]+m0+o0}for(this.isZero()&&(o0="0"+o0);o0.length%z!==0;)o0="0"+o0;return this.negative!==0&&(o0="-"+o0),o0}Y(!1,"Base should be between 2 and 36")},Z.prototype.toNumber=function(){var l0=this.words[0];return this.length===2?l0+=this.words[1]*67108864:this.length===3&&this.words[2]===1?l0+=4503599627370496+this.words[1]*67108864:this.length>2&&Y(!1,"Number can only safely store up to 53 bits"),this.negative!==0?-l0:l0},Z.prototype.toJSON=function(){return this.toString(16)},Z.prototype.toBuffer=function(l0,z){return Y(typeof Q<"u"),this.toArrayLike(Q,l0,z)},Z.prototype.toArray=function(l0,z){return this.toArrayLike(Array,l0,z)},Z.prototype.toArrayLike=function(l0,z,o0){var M=this.byteLength(),u0=o0||Math.max(1,M);Y(M<=u0,"byte array longer than desired length"),Y(u0>0,"Requested array length <= 0"),this.strip();var S=z==="le",n0=new l0(u0),v,s0,I=this.clone();if(S){for(s0=0;!I.isZero();s0++)v=I.andln(255),I.iushrn(8),n0[s0]=v;for(;s0<u0;s0++)n0[s0]=0}else{for(s0=0;s0<u0-M;s0++)n0[s0]=0;for(s0=0;!I.isZero();s0++)v=I.andln(255),I.iushrn(8),n0[u0-s0-1]=v}return n0},Math.clz32?Z.prototype._countBits=function(l0){return 32-Math.clz32(l0)}:Z.prototype._countBits=function(l0){var z=l0,o0=0;return z>=4096&&(o0+=13,z>>>=13),z>=64&&(o0+=7,z>>>=7),z>=8&&(o0+=4,z>>>=4),z>=2&&(o0+=2,z>>>=2),o0+z},Z.prototype._zeroBits=function(l0){if(l0===0)return 26;var z=l0,o0=0;return(z&8191)===0&&(o0+=13,z>>>=13),(z&127)===0&&(o0+=7,z>>>=7),(z&15)===0&&(o0+=4,z>>>=4),(z&3)===0&&(o0+=2,z>>>=2),(z&1)===0&&o0++,o0},Z.prototype.bitLength=function(){var l0=this.words[this.length-1],z=this._countBits(l0);return(this.length-1)*26+z};function w0(l0){for(var z=new Array(l0.bitLength()),o0=0;o0<z.length;o0++){var M=o0/26|0,u0=o0%26;z[o0]=(l0.words[M]&1<<u0)>>>u0}return z}Z.prototype.zeroBits=function(){if(this.isZero())return 0;for(var l0=0,z=0;z<this.length;z++){var o0=this._zeroBits(this.words[z]);if(l0+=o0,o0!==26)break}return l0},Z.prototype.byteLength=function(){return Math.ceil(this.bitLength()/8)},Z.prototype.toTwos=function(l0){return this.negative!==0?this.abs().inotn(l0).iaddn(1):this.clone()},Z.prototype.fromTwos=function(l0){return this.testn(l0-1)?this.notn(l0).iaddn(1).ineg():this.clone()},Z.prototype.isNeg=function(){return this.negative!==0},Z.prototype.neg=function(){return this.clone().ineg()},Z.prototype.ineg=function(){return this.isZero()||(this.negative^=1),this},Z.prototype.iuor=function(l0){for(;this.length<l0.length;)this.words[this.length++]=0;for(var z=0;z<l0.length;z++)this.words[z]=this.words[z]|l0.words[z];return this.strip()},Z.prototype.ior=function(l0){return Y((this.negative|l0.negative)===0),this.iuor(l0)},Z.prototype.or=function(l0){return this.length>l0.length?this.clone().ior(l0):l0.clone().ior(this)},Z.prototype.uor=function(l0){return this.length>l0.length?this.clone().iuor(l0):l0.clone().iuor(this)},Z.prototype.iuand=function(l0){var z;this.length>l0.length?z=l0:z=this;for(var o0=0;o0<z.length;o0++)this.words[o0]=this.words[o0]&l0.words[o0];return this.length=z.length,this.strip()},Z.prototype.iand=function(l0){return Y((this.negative|l0.negative)===0),this.iuand(l0)},Z.prototype.and=function(l0){return this.length>l0.length?this.clone().iand(l0):l0.clone().iand(this)},Z.prototype.uand=function(l0){return this.length>l0.length?this.clone().iuand(l0):l0.clone().iuand(this)},Z.prototype.iuxor=function(l0){var z,o0;this.length>l0.length?(z=this,o0=l0):(z=l0,o0=this);for(var M=0;M<o0.length;M++)this.words[M]=z.words[M]^o0.words[M];if(this!==z)for(;M<z.length;M++)this.words[M]=z.words[M];return this.length=z.length,this.strip()},Z.prototype.ixor=function(l0){return Y((this.negative|l0.negative)===0),this.iuxor(l0)},Z.prototype.xor=function(l0){return this.length>l0.length?this.clone().ixor(l0):l0.clone().ixor(this)},Z.prototype.uxor=function(l0){return this.length>l0.length?this.clone().iuxor(l0):l0.clone().iuxor(this)},Z.prototype.inotn=function(l0){Y(typeof l0=="number"&&l0>=0);var z=Math.ceil(l0/26)|0,o0=l0%26;this._expand(z),o0>0&&z--;for(var M=0;M<z;M++)this.words[M]=~this.words[M]&67108863;return o0>0&&(this.words[M]=~this.words[M]&67108863>>26-o0),this.strip()},Z.prototype.notn=function(l0){return this.clone().inotn(l0)},Z.prototype.setn=function(l0,z){Y(typeof l0=="number"&&l0>=0);var o0=l0/26|0,M=l0%26;return this._expand(o0+1),z?this.words[o0]=this.words[o0]|1<<M:this.words[o0]=this.words[o0]&~(1<<M),this.strip()},Z.prototype.iadd=function(l0){var z;if(this.negative!==0&&l0.negative===0)return this.negative=0,z=this.isub(l0),this.negative^=1,this._normSign();if(this.negative===0&&l0.negative!==0)return l0.negative=0,z=this.isub(l0),l0.negative=1,z._normSign();var o0,M;this.length>l0.length?(o0=this,M=l0):(o0=l0,M=this);for(var u0=0,S=0;S<M.length;S++)z=(o0.words[S]|0)+(M.words[S]|0)+u0,this.words[S]=z&67108863,u0=z>>>26;for(;u0!==0&&S<o0.length;S++)z=(o0.words[S]|0)+u0,this.words[S]=z&67108863,u0=z>>>26;if(this.length=o0.length,u0!==0)this.words[this.length]=u0,this.length++;else if(o0!==this)for(;S<o0.length;S++)this.words[S]=o0.words[S];return this},Z.prototype.add=function(l0){var z;return l0.negative!==0&&this.negative===0?(l0.negative=0,z=this.sub(l0),l0.negative^=1,z):l0.negative===0&&this.negative!==0?(this.negative=0,z=l0.sub(this),this.negative=1,z):this.length>l0.length?this.clone().iadd(l0):l0.clone().iadd(this)},Z.prototype.isub=function(l0){if(l0.negative!==0){l0.negative=0;var z=this.iadd(l0);return l0.negative=1,z._normSign()}else if(this.negative!==0)return this.negative=0,this.iadd(l0),this.negative=1,this._normSign();var o0=this.cmp(l0);if(o0===0)return this.negative=0,this.length=1,this.words[0]=0,this;var M,u0;o0>0?(M=this,u0=l0):(M=l0,u0=this);for(var S=0,n0=0;n0<u0.length;n0++)z=(M.words[n0]|0)-(u0.words[n0]|0)+S,S=z>>26,this.words[n0]=z&67108863;for(;S!==0&&n0<M.length;n0++)z=(M.words[n0]|0)+S,S=z>>26,this.words[n0]=z&67108863;if(S===0&&n0<M.length&&M!==this)for(;n0<M.length;n0++)this.words[n0]=M.words[n0];return this.length=Math.max(this.length,n0),M!==this&&(this.negative=1),this.strip()},Z.prototype.sub=function(l0){return this.clone().isub(l0)};function E(l0,z,o0){o0.negative=z.negative^l0.negative;var M=l0.length+z.length|0;o0.length=M,M=M-1|0;var u0=l0.words[0]|0,S=z.words[0]|0,n0=u0*S,v=n0&67108863,s0=n0/67108864|0;o0.words[0]=v;for(var I=1;I<M;I++){for(var t0=s0>>>26,m0=s0&67108863,a0=Math.min(I,z.length-1),q=Math.max(0,I-l0.length+1);q<=a0;q++){var e0=I-q|0;u0=l0.words[e0]|0,S=z.words[q]|0,n0=u0*S+m0,t0+=n0/67108864|0,m0=n0&67108863}o0.words[I]=m0|0,s0=t0|0}return s0!==0?o0.words[I]=s0|0:o0.length--,o0.strip()}var p0=function(l0,z,o0){var M=l0.words,u0=z.words,S=o0.words,n0=0,v,s0,I,t0=M[0]|0,m0=t0&8191,a0=t0>>>13,q=M[1]|0,e0=q&8191,r0=q>>>13,i0=M[2]|0,j=i0&8191,$$=i0>>>13,k=M[3]|0,Q$=k&8191,g=k>>>13,Y$=M[4]|0,_=Y$&8191,Z$=Y$>>>13,N=M[5]|0,G$=N&8191,x=N>>>13,V$=M[6]|0,B=V$&8191,U$=V$>>>13,y=M[7]|0,X$=y&8191,w=y>>>13,K$=M[8]|0,p=K$&8191,I$=K$>>>13,f=M[9]|0,O$=f&8191,c=f>>>13,J$=u0[0]|0,h=J$&8191,F$=J$>>>13,d=u0[1]|0,A$=d&8191,b=d>>>13,H$=u0[2]|0,l=H$&8191,W$=H$>>>13,o=u0[3]|0,E$=o&8191,u=o>>>13,T$=u0[4]|0,n=T$&8191,D$=T$>>>13,s=u0[5]|0,C$=s&8191,t=s>>>13,L$=u0[6]|0,m=L$&8191,R$=L$>>>13,a=u0[7]|0,P$=a&8191,O=a>>>13,z$=u0[8]|0,e=z$&8191,M$=z$>>>13,J=u0[9]|0,S$=J&8191,F=J>>>13;o0.negative=l0.negative^z.negative,o0.length=19,v=Math.imul(m0,h),s0=Math.imul(m0,F$),s0=s0+Math.imul(a0,h)|0,I=Math.imul(a0,F$);var v$=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(v$>>>26)|0,v$&=67108863,v=Math.imul(e0,h),s0=Math.imul(e0,F$),s0=s0+Math.imul(r0,h)|0,I=Math.imul(r0,F$),v=v+Math.imul(m0,A$)|0,s0=s0+Math.imul(m0,b)|0,s0=s0+Math.imul(a0,A$)|0,I=I+Math.imul(a0,b)|0;var r=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(r>>>26)|0,r&=67108863,v=Math.imul(j,h),s0=Math.imul(j,F$),s0=s0+Math.imul($$,h)|0,I=Math.imul($$,F$),v=v+Math.imul(e0,A$)|0,s0=s0+Math.imul(e0,b)|0,s0=s0+Math.imul(r0,A$)|0,I=I+Math.imul(r0,b)|0,v=v+Math.imul(m0,l)|0,s0=s0+Math.imul(m0,W$)|0,s0=s0+Math.imul(a0,l)|0,I=I+Math.imul(a0,W$)|0;var q$=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(q$>>>26)|0,q$&=67108863,v=Math.imul(Q$,h),s0=Math.imul(Q$,F$),s0=s0+Math.imul(g,h)|0,I=Math.imul(g,F$),v=v+Math.imul(j,A$)|0,s0=s0+Math.imul(j,b)|0,s0=s0+Math.imul($$,A$)|0,I=I+Math.imul($$,b)|0,v=v+Math.imul(e0,l)|0,s0=s0+Math.imul(e0,W$)|0,s0=s0+Math.imul(r0,l)|0,I=I+Math.imul(r0,W$)|0,v=v+Math.imul(m0,E$)|0,s0=s0+Math.imul(m0,u)|0,s0=s0+Math.imul(a0,E$)|0,I=I+Math.imul(a0,u)|0;var i=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(i>>>26)|0,i&=67108863,v=Math.imul(_,h),s0=Math.imul(_,F$),s0=s0+Math.imul(Z$,h)|0,I=Math.imul(Z$,F$),v=v+Math.imul(Q$,A$)|0,s0=s0+Math.imul(Q$,b)|0,s0=s0+Math.imul(g,A$)|0,I=I+Math.imul(g,b)|0,v=v+Math.imul(j,l)|0,s0=s0+Math.imul(j,W$)|0,s0=s0+Math.imul($$,l)|0,I=I+Math.imul($$,W$)|0,v=v+Math.imul(e0,E$)|0,s0=s0+Math.imul(e0,u)|0,s0=s0+Math.imul(r0,E$)|0,I=I+Math.imul(r0,u)|0,v=v+Math.imul(m0,n)|0,s0=s0+Math.imul(m0,D$)|0,s0=s0+Math.imul(a0,n)|0,I=I+Math.imul(a0,D$)|0;var j$=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(j$>>>26)|0,j$&=67108863,v=Math.imul(G$,h),s0=Math.imul(G$,F$),s0=s0+Math.imul(x,h)|0,I=Math.imul(x,F$),v=v+Math.imul(_,A$)|0,s0=s0+Math.imul(_,b)|0,s0=s0+Math.imul(Z$,A$)|0,I=I+Math.imul(Z$,b)|0,v=v+Math.imul(Q$,l)|0,s0=s0+Math.imul(Q$,W$)|0,s0=s0+Math.imul(g,l)|0,I=I+Math.imul(g,W$)|0,v=v+Math.imul(j,E$)|0,s0=s0+Math.imul(j,u)|0,s0=s0+Math.imul($$,E$)|0,I=I+Math.imul($$,u)|0,v=v+Math.imul(e0,n)|0,s0=s0+Math.imul(e0,D$)|0,s0=s0+Math.imul(r0,n)|0,I=I+Math.imul(r0,D$)|0,v=v+Math.imul(m0,C$)|0,s0=s0+Math.imul(m0,t)|0,s0=s0+Math.imul(a0,C$)|0,I=I+Math.imul(a0,t)|0;var k$=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(k$>>>26)|0,k$&=67108863,v=Math.imul(B,h),s0=Math.imul(B,F$),s0=s0+Math.imul(U$,h)|0,I=Math.imul(U$,F$),v=v+Math.imul(G$,A$)|0,s0=s0+Math.imul(G$,b)|0,s0=s0+Math.imul(x,A$)|0,I=I+Math.imul(x,b)|0,v=v+Math.imul(_,l)|0,s0=s0+Math.imul(_,W$)|0,s0=s0+Math.imul(Z$,l)|0,I=I+Math.imul(Z$,W$)|0,v=v+Math.imul(Q$,E$)|0,s0=s0+Math.imul(Q$,u)|0,s0=s0+Math.imul(g,E$)|0,I=I+Math.imul(g,u)|0,v=v+Math.imul(j,n)|0,s0=s0+Math.imul(j,D$)|0,s0=s0+Math.imul($$,n)|0,I=I+Math.imul($$,D$)|0,v=v+Math.imul(e0,C$)|0,s0=s0+Math.imul(e0,t)|0,s0=s0+Math.imul(r0,C$)|0,I=I+Math.imul(r0,t)|0,v=v+Math.imul(m0,m)|0,s0=s0+Math.imul(m0,R$)|0,s0=s0+Math.imul(a0,m)|0,I=I+Math.imul(a0,R$)|0;var g$=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(g$>>>26)|0,g$&=67108863,v=Math.imul(X$,h),s0=Math.imul(X$,F$),s0=s0+Math.imul(w,h)|0,I=Math.imul(w,F$),v=v+Math.imul(B,A$)|0,s0=s0+Math.imul(B,b)|0,s0=s0+Math.imul(U$,A$)|0,I=I+Math.imul(U$,b)|0,v=v+Math.imul(G$,l)|0,s0=s0+Math.imul(G$,W$)|0,s0=s0+Math.imul(x,l)|0,I=I+Math.imul(x,W$)|0,v=v+Math.imul(_,E$)|0,s0=s0+Math.imul(_,u)|0,s0=s0+Math.imul(Z$,E$)|0,I=I+Math.imul(Z$,u)|0,v=v+Math.imul(Q$,n)|0,s0=s0+Math.imul(Q$,D$)|0,s0=s0+Math.imul(g,n)|0,I=I+Math.imul(g,D$)|0,v=v+Math.imul(j,C$)|0,s0=s0+Math.imul(j,t)|0,s0=s0+Math.imul($$,C$)|0,I=I+Math.imul($$,t)|0,v=v+Math.imul(e0,m)|0,s0=s0+Math.imul(e0,R$)|0,s0=s0+Math.imul(r0,m)|0,I=I+Math.imul(r0,R$)|0,v=v+Math.imul(m0,P$)|0,s0=s0+Math.imul(m0,O)|0,s0=s0+Math.imul(a0,P$)|0,I=I+Math.imul(a0,O)|0;var _$=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(_$>>>26)|0,_$&=67108863,v=Math.imul(p,h),s0=Math.imul(p,F$),s0=s0+Math.imul(I$,h)|0,I=Math.imul(I$,F$),v=v+Math.imul(X$,A$)|0,s0=s0+Math.imul(X$,b)|0,s0=s0+Math.imul(w,A$)|0,I=I+Math.imul(w,b)|0,v=v+Math.imul(B,l)|0,s0=s0+Math.imul(B,W$)|0,s0=s0+Math.imul(U$,l)|0,I=I+Math.imul(U$,W$)|0,v=v+Math.imul(G$,E$)|0,s0=s0+Math.imul(G$,u)|0,s0=s0+Math.imul(x,E$)|0,I=I+Math.imul(x,u)|0,v=v+Math.imul(_,n)|0,s0=s0+Math.imul(_,D$)|0,s0=s0+Math.imul(Z$,n)|0,I=I+Math.imul(Z$,D$)|0,v=v+Math.imul(Q$,C$)|0,s0=s0+Math.imul(Q$,t)|0,s0=s0+Math.imul(g,C$)|0,I=I+Math.imul(g,t)|0,v=v+Math.imul(j,m)|0,s0=s0+Math.imul(j,R$)|0,s0=s0+Math.imul($$,m)|0,I=I+Math.imul($$,R$)|0,v=v+Math.imul(e0,P$)|0,s0=s0+Math.imul(e0,O)|0,s0=s0+Math.imul(r0,P$)|0,I=I+Math.imul(r0,O)|0,v=v+Math.imul(m0,e)|0,s0=s0+Math.imul(m0,M$)|0,s0=s0+Math.imul(a0,e)|0,I=I+Math.imul(a0,M$)|0;var N$=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(N$>>>26)|0,N$&=67108863,v=Math.imul(O$,h),s0=Math.imul(O$,F$),s0=s0+Math.imul(c,h)|0,I=Math.imul(c,F$),v=v+Math.imul(p,A$)|0,s0=s0+Math.imul(p,b)|0,s0=s0+Math.imul(I$,A$)|0,I=I+Math.imul(I$,b)|0,v=v+Math.imul(X$,l)|0,s0=s0+Math.imul(X$,W$)|0,s0=s0+Math.imul(w,l)|0,I=I+Math.imul(w,W$)|0,v=v+Math.imul(B,E$)|0,s0=s0+Math.imul(B,u)|0,s0=s0+Math.imul(U$,E$)|0,I=I+Math.imul(U$,u)|0,v=v+Math.imul(G$,n)|0,s0=s0+Math.imul(G$,D$)|0,s0=s0+Math.imul(x,n)|0,I=I+Math.imul(x,D$)|0,v=v+Math.imul(_,C$)|0,s0=s0+Math.imul(_,t)|0,s0=s0+Math.imul(Z$,C$)|0,I=I+Math.imul(Z$,t)|0,v=v+Math.imul(Q$,m)|0,s0=s0+Math.imul(Q$,R$)|0,s0=s0+Math.imul(g,m)|0,I=I+Math.imul(g,R$)|0,v=v+Math.imul(j,P$)|0,s0=s0+Math.imul(j,O)|0,s0=s0+Math.imul($$,P$)|0,I=I+Math.imul($$,O)|0,v=v+Math.imul(e0,e)|0,s0=s0+Math.imul(e0,M$)|0,s0=s0+Math.imul(r0,e)|0,I=I+Math.imul(r0,M$)|0,v=v+Math.imul(m0,S$)|0,s0=s0+Math.imul(m0,F)|0,s0=s0+Math.imul(a0,S$)|0,I=I+Math.imul(a0,F)|0;var $0=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+($0>>>26)|0,$0&=67108863,v=Math.imul(O$,A$),s0=Math.imul(O$,b),s0=s0+Math.imul(c,A$)|0,I=Math.imul(c,b),v=v+Math.imul(p,l)|0,s0=s0+Math.imul(p,W$)|0,s0=s0+Math.imul(I$,l)|0,I=I+Math.imul(I$,W$)|0,v=v+Math.imul(X$,E$)|0,s0=s0+Math.imul(X$,u)|0,s0=s0+Math.imul(w,E$)|0,I=I+Math.imul(w,u)|0,v=v+Math.imul(B,n)|0,s0=s0+Math.imul(B,D$)|0,s0=s0+Math.imul(U$,n)|0,I=I+Math.imul(U$,D$)|0,v=v+Math.imul(G$,C$)|0,s0=s0+Math.imul(G$,t)|0,s0=s0+Math.imul(x,C$)|0,I=I+Math.imul(x,t)|0,v=v+Math.imul(_,m)|0,s0=s0+Math.imul(_,R$)|0,s0=s0+Math.imul(Z$,m)|0,I=I+Math.imul(Z$,R$)|0,v=v+Math.imul(Q$,P$)|0,s0=s0+Math.imul(Q$,O)|0,s0=s0+Math.imul(g,P$)|0,I=I+Math.imul(g,O)|0,v=v+Math.imul(j,e)|0,s0=s0+Math.imul(j,M$)|0,s0=s0+Math.imul($$,e)|0,I=I+Math.imul($$,M$)|0,v=v+Math.imul(e0,S$)|0,s0=s0+Math.imul(e0,F)|0,s0=s0+Math.imul(r0,S$)|0,I=I+Math.imul(r0,F)|0;var x$=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(x$>>>26)|0,x$&=67108863,v=Math.imul(O$,l),s0=Math.imul(O$,W$),s0=s0+Math.imul(c,l)|0,I=Math.imul(c,W$),v=v+Math.imul(p,E$)|0,s0=s0+Math.imul(p,u)|0,s0=s0+Math.imul(I$,E$)|0,I=I+Math.imul(I$,u)|0,v=v+Math.imul(X$,n)|0,s0=s0+Math.imul(X$,D$)|0,s0=s0+Math.imul(w,n)|0,I=I+Math.imul(w,D$)|0,v=v+Math.imul(B,C$)|0,s0=s0+Math.imul(B,t)|0,s0=s0+Math.imul(U$,C$)|0,I=I+Math.imul(U$,t)|0,v=v+Math.imul(G$,m)|0,s0=s0+Math.imul(G$,R$)|0,s0=s0+Math.imul(x,m)|0,I=I+Math.imul(x,R$)|0,v=v+Math.imul(_,P$)|0,s0=s0+Math.imul(_,O)|0,s0=s0+Math.imul(Z$,P$)|0,I=I+Math.imul(Z$,O)|0,v=v+Math.imul(Q$,e)|0,s0=s0+Math.imul(Q$,M$)|0,s0=s0+Math.imul(g,e)|0,I=I+Math.imul(g,M$)|0,v=v+Math.imul(j,S$)|0,s0=s0+Math.imul(j,F)|0,s0=s0+Math.imul($$,S$)|0,I=I+Math.imul($$,F)|0;var Q0=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(Q0>>>26)|0,Q0&=67108863,v=Math.imul(O$,E$),s0=Math.imul(O$,u),s0=s0+Math.imul(c,E$)|0,I=Math.imul(c,u),v=v+Math.imul(p,n)|0,s0=s0+Math.imul(p,D$)|0,s0=s0+Math.imul(I$,n)|0,I=I+Math.imul(I$,D$)|0,v=v+Math.imul(X$,C$)|0,s0=s0+Math.imul(X$,t)|0,s0=s0+Math.imul(w,C$)|0,I=I+Math.imul(w,t)|0,v=v+Math.imul(B,m)|0,s0=s0+Math.imul(B,R$)|0,s0=s0+Math.imul(U$,m)|0,I=I+Math.imul(U$,R$)|0,v=v+Math.imul(G$,P$)|0,s0=s0+Math.imul(G$,O)|0,s0=s0+Math.imul(x,P$)|0,I=I+Math.imul(x,O)|0,v=v+Math.imul(_,e)|0,s0=s0+Math.imul(_,M$)|0,s0=s0+Math.imul(Z$,e)|0,I=I+Math.imul(Z$,M$)|0,v=v+Math.imul(Q$,S$)|0,s0=s0+Math.imul(Q$,F)|0,s0=s0+Math.imul(g,S$)|0,I=I+Math.imul(g,F)|0;var B$=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(B$>>>26)|0,B$&=67108863,v=Math.imul(O$,n),s0=Math.imul(O$,D$),s0=s0+Math.imul(c,n)|0,I=Math.imul(c,D$),v=v+Math.imul(p,C$)|0,s0=s0+Math.imul(p,t)|0,s0=s0+Math.imul(I$,C$)|0,I=I+Math.imul(I$,t)|0,v=v+Math.imul(X$,m)|0,s0=s0+Math.imul(X$,R$)|0,s0=s0+Math.imul(w,m)|0,I=I+Math.imul(w,R$)|0,v=v+Math.imul(B,P$)|0,s0=s0+Math.imul(B,O)|0,s0=s0+Math.imul(U$,P$)|0,I=I+Math.imul(U$,O)|0,v=v+Math.imul(G$,e)|0,s0=s0+Math.imul(G$,M$)|0,s0=s0+Math.imul(x,e)|0,I=I+Math.imul(x,M$)|0,v=v+Math.imul(_,S$)|0,s0=s0+Math.imul(_,F)|0,s0=s0+Math.imul(Z$,S$)|0,I=I+Math.imul(Z$,F)|0;var Y0=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(Y0>>>26)|0,Y0&=67108863,v=Math.imul(O$,C$),s0=Math.imul(O$,t),s0=s0+Math.imul(c,C$)|0,I=Math.imul(c,t),v=v+Math.imul(p,m)|0,s0=s0+Math.imul(p,R$)|0,s0=s0+Math.imul(I$,m)|0,I=I+Math.imul(I$,R$)|0,v=v+Math.imul(X$,P$)|0,s0=s0+Math.imul(X$,O)|0,s0=s0+Math.imul(w,P$)|0,I=I+Math.imul(w,O)|0,v=v+Math.imul(B,e)|0,s0=s0+Math.imul(B,M$)|0,s0=s0+Math.imul(U$,e)|0,I=I+Math.imul(U$,M$)|0,v=v+Math.imul(G$,S$)|0,s0=s0+Math.imul(G$,F)|0,s0=s0+Math.imul(x,S$)|0,I=I+Math.imul(x,F)|0;var y$=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(y$>>>26)|0,y$&=67108863,v=Math.imul(O$,m),s0=Math.imul(O$,R$),s0=s0+Math.imul(c,m)|0,I=Math.imul(c,R$),v=v+Math.imul(p,P$)|0,s0=s0+Math.imul(p,O)|0,s0=s0+Math.imul(I$,P$)|0,I=I+Math.imul(I$,O)|0,v=v+Math.imul(X$,e)|0,s0=s0+Math.imul(X$,M$)|0,s0=s0+Math.imul(w,e)|0,I=I+Math.imul(w,M$)|0,v=v+Math.imul(B,S$)|0,s0=s0+Math.imul(B,F)|0,s0=s0+Math.imul(U$,S$)|0,I=I+Math.imul(U$,F)|0;var Z0=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(Z0>>>26)|0,Z0&=67108863,v=Math.imul(O$,P$),s0=Math.imul(O$,O),s0=s0+Math.imul(c,P$)|0,I=Math.imul(c,O),v=v+Math.imul(p,e)|0,s0=s0+Math.imul(p,M$)|0,s0=s0+Math.imul(I$,e)|0,I=I+Math.imul(I$,M$)|0,v=v+Math.imul(X$,S$)|0,s0=s0+Math.imul(X$,F)|0,s0=s0+Math.imul(w,S$)|0,I=I+Math.imul(w,F)|0;var w$=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(w$>>>26)|0,w$&=67108863,v=Math.imul(O$,e),s0=Math.imul(O$,M$),s0=s0+Math.imul(c,e)|0,I=Math.imul(c,M$),v=v+Math.imul(p,S$)|0,s0=s0+Math.imul(p,F)|0,s0=s0+Math.imul(I$,S$)|0,I=I+Math.imul(I$,F)|0;var G0=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(G0>>>26)|0,G0&=67108863,v=Math.imul(O$,S$),s0=Math.imul(O$,F),s0=s0+Math.imul(c,S$)|0,I=Math.imul(c,F);var p$=(n0+v|0)+((s0&8191)<<13)|0;return n0=(I+(s0>>>13)|0)+(p$>>>26)|0,p$&=67108863,S[0]=v$,S[1]=r,S[2]=q$,S[3]=i,S[4]=j$,S[5]=k$,S[6]=g$,S[7]=_$,S[8]=N$,S[9]=$0,S[10]=x$,S[11]=Q0,S[12]=B$,S[13]=Y0,S[14]=y$,S[15]=Z0,S[16]=w$,S[17]=G0,S[18]=p$,n0!==0&&(S[19]=n0,o0.length++),o0};Math.imul||(p0=E);function T(l0,z,o0){o0.negative=z.negative^l0.negative,o0.length=l0.length+z.length;for(var M=0,u0=0,S=0;S<o0.length-1;S++){var n0=u0;u0=0;for(var v=M&67108863,s0=Math.min(S,z.length-1),I=Math.max(0,S-l0.length+1);I<=s0;I++){var t0=S-I,m0=l0.words[t0]|0,a0=z.words[I]|0,q=m0*a0,e0=q&67108863;n0=n0+(q/67108864|0)|0,e0=e0+v|0,v=e0&67108863,n0=n0+(e0>>>26)|0,u0+=n0>>>26,n0&=67108863}o0.words[S]=v,M=n0,n0=u0}return M!==0?o0.words[S]=M:o0.length--,o0.strip()}function f0(l0,z,o0){var M=new D;return M.mulp(l0,z,o0)}Z.prototype.mulTo=function(l0,z){var o0,M=this.length+l0.length;return this.length===10&&l0.length===10?o0=p0(this,l0,z):M<63?o0=E(this,l0,z):M<1024?o0=T(this,l0,z):o0=f0(this,l0,z),o0};function D(l0,z){this.x=l0,this.y=z}D.prototype.makeRBT=function(l0){for(var z=new Array(l0),o0=Z.prototype._countBits(l0)-1,M=0;M<l0;M++)z[M]=this.revBin(M,o0,l0);return z},D.prototype.revBin=function(l0,z,o0){if(l0===0||l0===o0-1)return l0;for(var M=0,u0=0;u0<z;u0++)M|=(l0&1)<<z-u0-1,l0>>=1;return M},D.prototype.permute=function(l0,z,o0,M,u0,S){for(var n0=0;n0<S;n0++)M[n0]=z[l0[n0]],u0[n0]=o0[l0[n0]]},D.prototype.transform=function(l0,z,o0,M,u0,S){this.permute(S,l0,z,o0,M,u0);for(var n0=1;n0<u0;n0<<=1)for(var v=n0<<1,s0=Math.cos(2*Math.PI/v),I=Math.sin(2*Math.PI/v),t0=0;t0<u0;t0+=v)for(var m0=s0,a0=I,q=0;q<n0;q++){var e0=o0[t0+q],r0=M[t0+q],i0=o0[t0+q+n0],j=M[t0+q+n0],$$=m0*i0-a0*j;j=m0*j+a0*i0,i0=$$,o0[t0+q]=e0+i0,M[t0+q]=r0+j,o0[t0+q+n0]=e0-i0,M[t0+q+n0]=r0-j,q!==v&&($$=s0*m0-I*a0,a0=s0*a0+I*m0,m0=$$)}},D.prototype.guessLen13b=function(l0,z){var o0=Math.max(z,l0)|1,M=o0&1,u0=0;for(o0=o0/2|0;o0;o0=o0>>>1)u0++;return 1<<u0+1+M},D.prototype.conjugate=function(l0,z,o0){if(!(o0<=1))for(var M=0;M<o0/2;M++){var u0=l0[M];l0[M]=l0[o0-M-1],l0[o0-M-1]=u0,u0=z[M],z[M]=-z[o0-M-1],z[o0-M-1]=-u0}},D.prototype.normalize13b=function(l0,z){for(var o0=0,M=0;M<z/2;M++){var u0=Math.round(l0[2*M+1]/z)*8192+Math.round(l0[2*M]/z)+o0;l0[M]=u0&67108863,u0<67108864?o0=0:o0=u0/67108864|0}return l0},D.prototype.convert13b=function(l0,z,o0,M){for(var u0=0,S=0;S<z;S++)u0=u0+(l0[S]|0),o0[2*S]=u0&8191,u0=u0>>>13,o0[2*S+1]=u0&8191,u0=u0>>>13;for(S=2*z;S<M;++S)o0[S]=0;Y(u0===0),Y((u0&-8192)===0)},D.prototype.stub=function(l0){for(var z=new Array(l0),o0=0;o0<l0;o0++)z[o0]=0;return z},D.prototype.mulp=function(l0,z,o0){var M=2*this.guessLen13b(l0.length,z.length),u0=this.makeRBT(M),S=this.stub(M),n0=new Array(M),v=new Array(M),s0=new Array(M),I=new Array(M),t0=new Array(M),m0=new Array(M),a0=o0.words;a0.length=M,this.convert13b(l0.words,l0.length,n0,M),this.convert13b(z.words,z.length,I,M),this.transform(n0,S,v,s0,M,u0),this.transform(I,S,t0,m0,M,u0);for(var q=0;q<M;q++){var e0=v[q]*t0[q]-s0[q]*m0[q];s0[q]=v[q]*m0[q]+s0[q]*t0[q],v[q]=e0}return this.conjugate(v,s0,M),this.transform(v,s0,a0,S,M,u0),this.conjugate(a0,S,M),this.normalize13b(a0,M),o0.negative=l0.negative^z.negative,o0.length=l0.length+z.length,o0.strip()},Z.prototype.mul=function(l0){var z=new Z(null);return z.words=new Array(this.length+l0.length),this.mulTo(l0,z)},Z.prototype.mulf=function(l0){var z=new Z(null);return z.words=new Array(this.length+l0.length),f0(this,l0,z)},Z.prototype.imul=function(l0){return this.clone().mulTo(l0,this)},Z.prototype.imuln=function(l0){Y(typeof l0=="number"),Y(l0<67108864);for(var z=0,o0=0;o0<this.length;o0++){var M=(this.words[o0]|0)*l0,u0=(M&67108863)+(z&67108863);z>>=26,z+=M/67108864|0,z+=u0>>>26,this.words[o0]=u0&67108863}return z!==0&&(this.words[o0]=z,this.length++),this},Z.prototype.muln=function(l0){return this.clone().imuln(l0)},Z.prototype.sqr=function(){return this.mul(this)},Z.prototype.isqr=function(){return this.imul(this.clone())},Z.prototype.pow=function(l0){var z=w0(l0);if(z.length===0)return new Z(1);for(var o0=this,M=0;M<z.length&&z[M]===0;M++,o0=o0.sqr());if(++M<z.length)for(var u0=o0.sqr();M<z.length;M++,u0=u0.sqr())z[M]!==0&&(o0=o0.mul(u0));return o0},Z.prototype.iushln=function(l0){Y(typeof l0=="number"&&l0>=0);var z=l0%26,o0=(l0-z)/26,M=67108863>>>26-z<<26-z,u0;if(z!==0){var S=0;for(u0=0;u0<this.length;u0++){var n0=this.words[u0]&M,v=(this.words[u0]|0)-n0<<z;this.words[u0]=v|S,S=n0>>>26-z}S&&(this.words[u0]=S,this.length++)}if(o0!==0){for(u0=this.length-1;u0>=0;u0--)this.words[u0+o0]=this.words[u0];for(u0=0;u0<o0;u0++)this.words[u0]=0;this.length+=o0}return this.strip()},Z.prototype.ishln=function(l0){return Y(this.negative===0),this.iushln(l0)},Z.prototype.iushrn=function(l0,z,o0){Y(typeof l0=="number"&&l0>=0);var M;z?M=(z-z%26)/26:M=0;var u0=l0%26,S=Math.min((l0-u0)/26,this.length),n0=67108863^67108863>>>u0<<u0,v=o0;if(M-=S,M=Math.max(0,M),v){for(var s0=0;s0<S;s0++)v.words[s0]=this.words[s0];v.length=S}if(S!==0)if(this.length>S)for(this.length-=S,s0=0;s0<this.length;s0++)this.words[s0]=this.words[s0+S];else this.words[0]=0,this.length=1;var I=0;for(s0=this.length-1;s0>=0&&(I!==0||s0>=M);s0--){var t0=this.words[s0]|0;this.words[s0]=I<<26-u0|t0>>>u0,I=t0&n0}return v&&I!==0&&(v.words[v.length++]=I),this.length===0&&(this.words[0]=0,this.length=1),this.strip()},Z.prototype.ishrn=function(l0,z,o0){return Y(this.negative===0),this.iushrn(l0,z,o0)},Z.prototype.shln=function(l0){return this.clone().ishln(l0)},Z.prototype.ushln=function(l0){return this.clone().iushln(l0)},Z.prototype.shrn=function(l0){return this.clone().ishrn(l0)},Z.prototype.ushrn=function(l0){return this.clone().iushrn(l0)},Z.prototype.testn=function(l0){Y(typeof l0=="number"&&l0>=0);var z=l0%26,o0=(l0-z)/26,M=1<<z;if(this.length<=o0)return!1;var u0=this.words[o0];return!!(u0&M)},Z.prototype.imaskn=function(l0){Y(typeof l0=="number"&&l0>=0);var z=l0%26,o0=(l0-z)/26;if(Y(this.negative===0,"imaskn works only with positive numbers"),this.length<=o0)return this;if(z!==0&&o0++,this.length=Math.min(o0,this.length),z!==0){var M=67108863^67108863>>>z<<z;this.words[this.length-1]&=M}return this.strip()},Z.prototype.maskn=function(l0){return this.clone().imaskn(l0)},Z.prototype.iaddn=function(l0){return Y(typeof l0=="number"),Y(l0<67108864),l0<0?this.isubn(-l0):this.negative!==0?this.length===1&&(this.words[0]|0)<l0?(this.words[0]=l0-(this.words[0]|0),this.negative=0,this):(this.negative=0,this.isubn(l0),this.negative=1,this):this._iaddn(l0)},Z.prototype._iaddn=function(l0){this.words[0]+=l0;for(var z=0;z<this.length&&this.words[z]>=67108864;z++)this.words[z]-=67108864,z===this.length-1?this.words[z+1]=1:this.words[z+1]++;return this.length=Math.max(this.length,z+1),this},Z.prototype.isubn=function(l0){if(Y(typeof l0=="number"),Y(l0<67108864),l0<0)return this.iaddn(-l0);if(this.negative!==0)return this.negative=0,this.iaddn(l0),this.negative=1,this;if(this.words[0]-=l0,this.length===1&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var z=0;z<this.length&&this.words[z]<0;z++)this.words[z]+=67108864,this.words[z+1]-=1;return this.strip()},Z.prototype.addn=function(l0){return this.clone().iaddn(l0)},Z.prototype.subn=function(l0){return this.clone().isubn(l0)},Z.prototype.iabs=function(){return this.negative=0,this},Z.prototype.abs=function(){return this.clone().iabs()},Z.prototype._ishlnsubmul=function(l0,z,o0){var M=l0.length+o0,u0;this._expand(M);var S,n0=0;for(u0=0;u0<l0.length;u0++){S=(this.words[u0+o0]|0)+n0;var v=(l0.words[u0]|0)*z;S-=v&67108863,n0=(S>>26)-(v/67108864|0),this.words[u0+o0]=S&67108863}for(;u0<this.length-o0;u0++)S=(this.words[u0+o0]|0)+n0,n0=S>>26,this.words[u0+o0]=S&67108863;if(n0===0)return this.strip();for(Y(n0===-1),n0=0,u0=0;u0<this.length;u0++)S=-(this.words[u0]|0)+n0,n0=S>>26,this.words[u0]=S&67108863;return this.negative=1,this.strip()},Z.prototype._wordDiv=function(l0,z){var o0=this.length-l0.length,M=this.clone(),u0=l0,S=u0.words[u0.length-1]|0,n0=this._countBits(S);o0=26-n0,o0!==0&&(u0=u0.ushln(o0),M.iushln(o0),S=u0.words[u0.length-1]|0);var v=M.length-u0.length,s0;if(z!=="mod"){s0=new Z(null),s0.length=v+1,s0.words=new Array(s0.length);for(var I=0;I<s0.length;I++)s0.words[I]=0}var t0=M.clone()._ishlnsubmul(u0,1,v);t0.negative===0&&(M=t0,s0&&(s0.words[v]=1));for(var m0=v-1;m0>=0;m0--){var a0=(M.words[u0.length+m0]|0)*67108864+(M.words[u0.length+m0-1]|0);for(a0=Math.min(a0/S|0,67108863),M._ishlnsubmul(u0,a0,m0);M.negative!==0;)a0--,M.negative=0,M._ishlnsubmul(u0,1,m0),M.isZero()||(M.negative^=1);s0&&(s0.words[m0]=a0)}return s0&&s0.strip(),M.strip(),z!=="div"&&o0!==0&&M.iushrn(o0),{div:s0||null,mod:M}},Z.prototype.divmod=function(l0,z,o0){if(Y(!l0.isZero()),this.isZero())return{div:new Z(0),mod:new Z(0)};var M,u0,S;return this.negative!==0&&l0.negative===0?(S=this.neg().divmod(l0,z),z!=="mod"&&(M=S.div.neg()),z!=="div"&&(u0=S.mod.neg(),o0&&u0.negative!==0&&u0.iadd(l0)),{div:M,mod:u0}):this.negative===0&&l0.negative!==0?(S=this.divmod(l0.neg(),z),z!=="mod"&&(M=S.div.neg()),{div:M,mod:S.mod}):(this.negative&l0.negative)!==0?(S=this.neg().divmod(l0.neg(),z),z!=="div"&&(u0=S.mod.neg(),o0&&u0.negative!==0&&u0.isub(l0)),{div:S.div,mod:u0}):l0.length>this.length||this.cmp(l0)<0?{div:new Z(0),mod:this}:l0.length===1?z==="div"?{div:this.divn(l0.words[0]),mod:null}:z==="mod"?{div:null,mod:new Z(this.modn(l0.words[0]))}:{div:this.divn(l0.words[0]),mod:new Z(this.modn(l0.words[0]))}:this._wordDiv(l0,z)},Z.prototype.div=function(l0){return this.divmod(l0,"div",!1).div},Z.prototype.mod=function(l0){return this.divmod(l0,"mod",!1).mod},Z.prototype.umod=function(l0){return this.divmod(l0,"mod",!0).mod},Z.prototype.divRound=function(l0){var z=this.divmod(l0);if(z.mod.isZero())return z.div;var o0=z.div.negative!==0?z.mod.isub(l0):z.mod,M=l0.ushrn(1),u0=l0.andln(1),S=o0.cmp(M);return S<0||u0===1&&S===0?z.div:z.div.negative!==0?z.div.isubn(1):z.div.iaddn(1)},Z.prototype.modn=function(l0){Y(l0<=67108863);for(var z=(1<<26)%l0,o0=0,M=this.length-1;M>=0;M--)o0=(z*o0+(this.words[M]|0))%l0;return o0},Z.prototype.idivn=function(l0){Y(l0<=67108863);for(var z=0,o0=this.length-1;o0>=0;o0--){var M=(this.words[o0]|0)+z*67108864;this.words[o0]=M/l0|0,z=M%l0}return this.strip()},Z.prototype.divn=function(l0){return this.clone().idivn(l0)},Z.prototype.egcd=function(l0){Y(l0.negative===0),Y(!l0.isZero());var z=this,o0=l0.clone();z.negative!==0?z=z.umod(l0):z=z.clone();for(var M=new Z(1),u0=new Z(0),S=new Z(0),n0=new Z(1),v=0;z.isEven()&&o0.isEven();)z.iushrn(1),o0.iushrn(1),++v;for(var s0=o0.clone(),I=z.clone();!z.isZero();){for(var t0=0,m0=1;(z.words[0]&m0)===0&&t0<26;++t0,m0<<=1);if(t0>0)for(z.iushrn(t0);t0-- >0;)(M.isOdd()||u0.isOdd())&&(M.iadd(s0),u0.isub(I)),M.iushrn(1),u0.iushrn(1);for(var a0=0,q=1;(o0.words[0]&q)===0&&a0<26;++a0,q<<=1);if(a0>0)for(o0.iushrn(a0);a0-- >0;)(S.isOdd()||n0.isOdd())&&(S.iadd(s0),n0.isub(I)),S.iushrn(1),n0.iushrn(1);z.cmp(o0)>=0?(z.isub(o0),M.isub(S),u0.isub(n0)):(o0.isub(z),S.isub(M),n0.isub(u0))}return{a:S,b:n0,gcd:o0.iushln(v)}},Z.prototype._invmp=function(l0){Y(l0.negative===0),Y(!l0.isZero());var z=this,o0=l0.clone();z.negative!==0?z=z.umod(l0):z=z.clone();for(var M=new Z(1),u0=new Z(0),S=o0.clone();z.cmpn(1)>0&&o0.cmpn(1)>0;){for(var n0=0,v=1;(z.words[0]&v)===0&&n0<26;++n0,v<<=1);if(n0>0)for(z.iushrn(n0);n0-- >0;)M.isOdd()&&M.iadd(S),M.iushrn(1);for(var s0=0,I=1;(o0.words[0]&I)===0&&s0<26;++s0,I<<=1);if(s0>0)for(o0.iushrn(s0);s0-- >0;)u0.isOdd()&&u0.iadd(S),u0.iushrn(1);z.cmp(o0)>=0?(z.isub(o0),M.isub(u0)):(o0.isub(z),u0.isub(M))}var t0;return z.cmpn(1)===0?t0=M:t0=u0,t0.cmpn(0)<0&&t0.iadd(l0),t0},Z.prototype.gcd=function(l0){if(this.isZero())return l0.abs();if(l0.isZero())return this.abs();var z=this.clone(),o0=l0.clone();z.negative=0,o0.negative=0;for(var M=0;z.isEven()&&o0.isEven();M++)z.iushrn(1),o0.iushrn(1);do{for(;z.isEven();)z.iushrn(1);for(;o0.isEven();)o0.iushrn(1);var u0=z.cmp(o0);if(u0<0){var S=z;z=o0,o0=S}else if(u0===0||o0.cmpn(1)===0)break;z.isub(o0)}while(!0);return o0.iushln(M)},Z.prototype.invm=function(l0){return this.egcd(l0).a.umod(l0)},Z.prototype.isEven=function(){return(this.words[0]&1)===0},Z.prototype.isOdd=function(){return(this.words[0]&1)===1},Z.prototype.andln=function(l0){return this.words[0]&l0},Z.prototype.bincn=function(l0){Y(typeof l0=="number");var z=l0%26,o0=(l0-z)/26,M=1<<z;if(this.length<=o0)return this._expand(o0+1),this.words[o0]|=M,this;for(var u0=M,S=o0;u0!==0&&S<this.length;S++){var n0=this.words[S]|0;n0+=u0,u0=n0>>>26,n0&=67108863,this.words[S]=n0}return u0!==0&&(this.words[S]=u0,this.length++),this},Z.prototype.isZero=function(){return this.length===1&&this.words[0]===0},Z.prototype.cmpn=function(l0){var z=l0<0;if(this.negative!==0&&!z)return-1;if(this.negative===0&&z)return 1;this.strip();var o0;if(this.length>1)o0=1;else{z&&(l0=-l0),Y(l0<=67108863,"Number is too big");var M=this.words[0]|0;o0=M===l0?0:M<l0?-1:1}return this.negative!==0?-o0|0:o0},Z.prototype.cmp=function(l0){if(this.negative!==0&&l0.negative===0)return-1;if(this.negative===0&&l0.negative!==0)return 1;var z=this.ucmp(l0);return this.negative!==0?-z|0:z},Z.prototype.ucmp=function(l0){if(this.length>l0.length)return 1;if(this.length<l0.length)return-1;for(var z=0,o0=this.length-1;o0>=0;o0--){var M=this.words[o0]|0,u0=l0.words[o0]|0;if(M!==u0){M<u0?z=-1:M>u0&&(z=1);break}}return z},Z.prototype.gtn=function(l0){return this.cmpn(l0)===1},Z.prototype.gt=function(l0){return this.cmp(l0)===1},Z.prototype.gten=function(l0){return this.cmpn(l0)>=0},Z.prototype.gte=function(l0){return this.cmp(l0)>=0},Z.prototype.ltn=function(l0){return this.cmpn(l0)===-1},Z.prototype.lt=function(l0){return this.cmp(l0)===-1},Z.prototype.lten=function(l0){return this.cmpn(l0)<=0},Z.prototype.lte=function(l0){return this.cmp(l0)<=0},Z.prototype.eqn=function(l0){return this.cmpn(l0)===0},Z.prototype.eq=function(l0){return this.cmp(l0)===0},Z.red=function(l0){return new b0(l0)},Z.prototype.toRed=function(l0){return Y(!this.red,"Already a number in reduction context"),Y(this.negative===0,"red works only with positives"),l0.convertTo(this)._forceRed(l0)},Z.prototype.fromRed=function(){return Y(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},Z.prototype._forceRed=function(l0){return this.red=l0,this},Z.prototype.forceRed=function(l0){return Y(!this.red,"Already a number in reduction context"),this._forceRed(l0)},Z.prototype.redAdd=function(l0){return Y(this.red,"redAdd works only with red numbers"),this.red.add(this,l0)},Z.prototype.redIAdd=function(l0){return Y(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,l0)},Z.prototype.redSub=function(l0){return Y(this.red,"redSub works only with red numbers"),this.red.sub(this,l0)},Z.prototype.redISub=function(l0){return Y(this.red,"redISub works only with red numbers"),this.red.isub(this,l0)},Z.prototype.redShl=function(l0){return Y(this.red,"redShl works only with red numbers"),this.red.shl(this,l0)},Z.prototype.redMul=function(l0){return Y(this.red,"redMul works only with red numbers"),this.red._verify2(this,l0),this.red.mul(this,l0)},Z.prototype.redIMul=function(l0){return Y(this.red,"redMul works only with red numbers"),this.red._verify2(this,l0),this.red.imul(this,l0)},Z.prototype.redSqr=function(){return Y(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},Z.prototype.redISqr=function(){return Y(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},Z.prototype.redSqrt=function(){return Y(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},Z.prototype.redInvm=function(){return Y(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},Z.prototype.redNeg=function(){return Y(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},Z.prototype.redPow=function(l0){return Y(this.red&&!l0.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,l0)};var c0={k256:null,p224:null,p192:null,p25519:null};function C(l0,z){this.name=l0,this.p=new Z(z,16),this.n=this.p.bitLength(),this.k=new Z(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}C.prototype._tmp=function(){var l0=new Z(null);return l0.words=new Array(Math.ceil(this.n/13)),l0},C.prototype.ireduce=function(l0){var z=l0,o0;do this.split(z,this.tmp),z=this.imulK(z),z=z.iadd(this.tmp),o0=z.bitLength();while(o0>this.n);var M=o0<this.n?-1:z.ucmp(this.p);return M===0?(z.words[0]=0,z.length=1):M>0?z.isub(this.p):z.strip!==void 0?z.strip():z._strip(),z},C.prototype.split=function(l0,z){l0.iushrn(this.n,0,z)},C.prototype.imulK=function(l0){return l0.imul(this.k)};function h0(){C.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}$(h0,C),h0.prototype.split=function(l0,z){for(var o0=4194303,M=Math.min(l0.length,9),u0=0;u0<M;u0++)z.words[u0]=l0.words[u0];if(z.length=M,l0.length<=9){l0.words[0]=0,l0.length=1;return}var S=l0.words[9];for(z.words[z.length++]=S&o0,u0=10;u0<l0.length;u0++){var n0=l0.words[u0]|0;l0.words[u0-10]=(n0&o0)<<4|S>>>22,S=n0}S>>>=22,l0.words[u0-10]=S,S===0&&l0.length>10?l0.length-=10:l0.length-=9},h0.prototype.imulK=function(l0){l0.words[l0.length]=0,l0.words[l0.length+1]=0,l0.length+=2;for(var z=0,o0=0;o0<l0.length;o0++){var M=l0.words[o0]|0;z+=M*977,l0.words[o0]=z&67108863,z=M*64+(z/67108864|0)}return l0.words[l0.length-1]===0&&(l0.length--,l0.words[l0.length-1]===0&&l0.length--),l0};function L(){C.call(this,"p224","ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001")}$(L,C);function d0(){C.call(this,"p192","ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff")}$(d0,C);function R(){C.call(this,"25519","7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed")}$(R,C),R.prototype.imulK=function(l0){for(var z=0,o0=0;o0<l0.length;o0++){var M=(l0.words[o0]|0)*19+z,u0=M&67108863;M>>>=26,l0.words[o0]=u0,z=M}return z!==0&&(l0.words[l0.length++]=z),l0},Z._prime=function(l0){if(c0[l0])return c0[l0];var z;if(l0==="k256")z=new h0;else if(l0==="p224")z=new L;else if(l0==="p192")z=new d0;else if(l0==="p25519")z=new R;else throw new Error("Unknown prime "+l0);return c0[l0]=z,z};function b0(l0){if(typeof l0=="string"){var z=Z._prime(l0);this.m=z.p,this.prime=z}else Y(l0.gtn(1),"modulus must be greater than 1"),this.m=l0,this.prime=null}b0.prototype._verify1=function(l0){Y(l0.negative===0,"red works only with positives"),Y(l0.red,"red works only with red numbers")},b0.prototype._verify2=function(l0,z){Y((l0.negative|z.negative)===0,"red works only with positives"),Y(l0.red&&l0.red===z.red,"red works only with red numbers")},b0.prototype.imod=function(l0){return this.prime?this.prime.ireduce(l0)._forceRed(this):l0.umod(this.m)._forceRed(this)},b0.prototype.neg=function(l0){return l0.isZero()?l0.clone():this.m.sub(l0)._forceRed(this)},b0.prototype.add=function(l0,z){this._verify2(l0,z);var o0=l0.add(z);return o0.cmp(this.m)>=0&&o0.isub(this.m),o0._forceRed(this)},b0.prototype.iadd=function(l0,z){this._verify2(l0,z);var o0=l0.iadd(z);return o0.cmp(this.m)>=0&&o0.isub(this.m),o0},b0.prototype.sub=function(l0,z){this._verify2(l0,z);var o0=l0.sub(z);return o0.cmpn(0)<0&&o0.iadd(this.m),o0._forceRed(this)},b0.prototype.isub=function(l0,z){this._verify2(l0,z);var o0=l0.isub(z);return o0.cmpn(0)<0&&o0.iadd(this.m),o0},b0.prototype.shl=function(l0,z){return this._verify1(l0),this.imod(l0.ushln(z))},b0.prototype.imul=function(l0,z){return this._verify2(l0,z),this.imod(l0.imul(z))},b0.prototype.mul=function(l0,z){return this._verify2(l0,z),this.imod(l0.mul(z))},b0.prototype.isqr=function(l0){return this.imul(l0,l0.clone())},b0.prototype.sqr=function(l0){return this.mul(l0,l0)},b0.prototype.sqrt=function(l0){if(l0.isZero())return l0.clone();var z=this.m.andln(3);if(Y(z%2===1),z===3){var o0=this.m.add(new Z(1)).iushrn(2);return this.pow(l0,o0)}for(var M=this.m.subn(1),u0=0;!M.isZero()&&M.andln(1)===0;)u0++,M.iushrn(1);Y(!M.isZero());var S=new Z(1).toRed(this),n0=S.redNeg(),v=this.m.subn(1).iushrn(1),s0=this.m.bitLength();for(s0=new Z(2*s0*s0).toRed(this);this.pow(s0,v).cmp(n0)!==0;)s0.redIAdd(n0);for(var I=this.pow(s0,M),t0=this.pow(l0,M.addn(1).iushrn(1)),m0=this.pow(l0,M),a0=u0;m0.cmp(S)!==0;){for(var q=m0,e0=0;q.cmp(S)!==0;e0++)q=q.redSqr();Y(e0<a0);var r0=this.pow(I,new Z(1).iushln(a0-e0-1));t0=t0.redMul(r0),I=r0.redSqr(),m0=m0.redMul(I),a0=e0}return t0},b0.prototype.invm=function(l0){var z=l0._invmp(this.m);return z.negative!==0?(z.negative=0,this.imod(z).redNeg()):this.imod(z)},b0.prototype.pow=function(l0,z){if(z.isZero())return new Z(1).toRed(this);if(z.cmpn(1)===0)return l0.clone();var o0=4,M=new Array(1<<o0);M[0]=new Z(1).toRed(this),M[1]=l0;for(var u0=2;u0<M.length;u0++)M[u0]=this.mul(M[u0-1],l0);var S=M[0],n0=0,v=0,s0=z.bitLength()%26;for(s0===0&&(s0=26),u0=z.length-1;u0>=0;u0--){for(var I=z.words[u0],t0=s0-1;t0>=0;t0--){var m0=I>>t0&1;if(S!==M[0]&&(S=this.sqr(S)),m0===0&&n0===0){v=0;continue}n0<<=1,n0|=m0,v++,!(v!==o0&&(u0!==0||t0!==0))&&(S=this.mul(S,M[n0]),v=0,n0=0)}s0=26}return S},b0.prototype.convertTo=function(l0){var z=l0.umod(this.m);return z===l0?z.clone():z},b0.prototype.convertFrom=function(l0){var z=l0.clone();return z.red=null,z},Z.mont=function(l0){return new P(l0)};function P(l0){b0.call(this,l0),this.shift=this.m.bitLength(),this.shift%26!==0&&(this.shift+=26-this.shift%26),this.r=new Z(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)}$(P,b0),P.prototype.convertTo=function(l0){return this.imod(l0.ushln(this.shift))},P.prototype.convertFrom=function(l0){var z=this.imod(l0.mul(this.rinv));return z.red=null,z},P.prototype.imul=function(l0,z){if(l0.isZero()||z.isZero())return l0.words[0]=0,l0.length=1,l0;var o0=l0.imul(z),M=o0.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),u0=o0.isub(M).iushrn(this.shift),S=u0;return u0.cmp(this.m)>=0?S=u0.isub(this.m):u0.cmpn(0)<0&&(S=u0.iadd(this.m)),S._forceRed(this)},P.prototype.mul=function(l0,z){if(l0.isZero()||z.isZero())return new Z(0)._forceRed(this);var o0=l0.mul(z),M=o0.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),u0=o0.isub(M).iushrn(this.shift),S=u0;return u0.cmp(this.m)>=0?S=u0.isub(this.m):u0.cmpn(0)<0&&(S=u0.iadd(this.m)),S._forceRed(this)},P.prototype.invm=function(l0){var z=this.imod(l0._invmp(this.m).mul(this.r2));return z._forceRed(this)}})(typeof K>"u"||K,X)}}),_Q=$Q({"node_modules/miller-rabin/node_modules/bn.js/lib/bn.js"(X,K){(function(x0,G){function Y(l0,z){if(!l0)throw new Error(z||"Assertion failed")}function $(l0,z){l0.super_=z;var o0=function(){};o0.prototype=z.prototype,l0.prototype=new o0,l0.prototype.constructor=l0}function Z(l0,z,o0){if(Z.isBN(l0))return l0;this.negative=0,this.words=null,this.length=0,this.red=null,l0!==null&&((z==="le"||z==="be")&&(o0=z,z=10),this._init(l0||0,z||10,o0||"be"))}typeof x0=="object"?x0.exports=Z:G.BN=Z,Z.BN=Z,Z.wordSize=26;var Q=c$;Z.isBN=function(l0){return l0 instanceof Z?!0:l0!==null&&typeof l0=="object"&&l0.constructor.wordSize===Z.wordSize&&Array.isArray(l0.words)},Z.max=function(l0,z){return l0.cmp(z)>0?l0:z},Z.min=function(l0,z){return l0.cmp(z)<0?l0:z},Z.prototype._init=function(l0,z,o0){if(typeof l0=="number")return this._initNumber(l0,z,o0);if(typeof l0=="object")return this._initArray(l0,z,o0);z==="hex"&&(z=16),Y(z===(z|0)&&z>=2&&z<=36),l0=l0.toString().replace(/\s+/g,"");var M=0;l0[0]==="-"&&(M++,this.negative=1),M<l0.length&&(z===16?this._parseHex(l0,M,o0):(this._parseBase(l0,z,M),o0==="le"&&this._initArray(this.toArray(),z,o0)))},Z.prototype._initNumber=function(l0,z,o0){l0<0&&(this.negative=1,l0=-l0),l0<67108864?(this.words=[l0&67108863],this.length=1):l0<4503599627370496?(this.words=[l0&67108863,l0/67108864&67108863],this.length=2):(Y(l0<9007199254740992),this.words=[l0&67108863,l0/67108864&67108863,1],this.length=3),o0==="le"&&this._initArray(this.toArray(),z,o0)},Z.prototype._initArray=function(l0,z,o0){if(Y(typeof l0.length=="number"),l0.length<=0)return this.words=[0],this.length=1,this;this.length=Math.ceil(l0.length/3),this.words=new Array(this.length);for(var M=0;M<this.length;M++)this.words[M]=0;var u0,S,n0=0;if(o0==="be")for(M=l0.length-1,u0=0;M>=0;M-=3)S=l0[M]|l0[M-1]<<8|l0[M-2]<<16,this.words[u0]|=S<<n0&67108863,this.words[u0+1]=S>>>26-n0&67108863,n0+=24,n0>=26&&(n0-=26,u0++);else if(o0==="le")for(M=0,u0=0;M<l0.length;M+=3)S=l0[M]|l0[M+1]<<8|l0[M+2]<<16,this.words[u0]|=S<<n0&67108863,this.words[u0+1]=S>>>26-n0&67108863,n0+=24,n0>=26&&(n0-=26,u0++);return this.strip()};function U(l0,z){var o0=l0.charCodeAt(z);return o0>=65&&o0<=70?o0-55:o0>=97&&o0<=102?o0-87:o0-48&15}function V(l0,z,o0){var M=U(l0,o0);return o0-1>=z&&(M|=U(l0,o0-1)<<4),M}Z.prototype._parseHex=function(l0,z,o0){this.length=Math.ceil((l0.length-z)/6),this.words=new Array(this.length);for(var M=0;M<this.length;M++)this.words[M]=0;var u0=0,S=0,n0;if(o0==="be")for(M=l0.length-1;M>=z;M-=2)n0=V(l0,z,M)<<u0,this.words[S]|=n0&67108863,u0>=18?(u0-=18,S+=1,this.words[S]|=n0>>>26):u0+=8;else{var v=l0.length-z;for(M=v%2===0?z+1:z;M<l0.length;M+=2)n0=V(l0,z,M)<<u0,this.words[S]|=n0&67108863,u0>=18?(u0-=18,S+=1,this.words[S]|=n0>>>26):u0+=8}this.strip()};function B0(l0,z,o0,M){for(var u0=0,S=Math.min(l0.length,o0),n0=z;n0<S;n0++){var v=l0.charCodeAt(n0)-48;u0*=M,v>=49?u0+=v-49+10:v>=17?u0+=v-17+10:u0+=v}return u0}Z.prototype._parseBase=function(l0,z,o0){this.words=[0],this.length=1;for(var M=0,u0=1;u0<=67108863;u0*=z)M++;M--,u0=u0/z|0;for(var S=l0.length-o0,n0=S%M,v=Math.min(S,S-n0)+o0,s0=0,I=o0;I<v;I+=M)s0=B0(l0,I,I+M,z),this.imuln(u0),this.words[0]+s0<67108864?this.words[0]+=s0:this._iaddn(s0);if(n0!==0){var t0=1;for(s0=B0(l0,I,l0.length,z),I=0;I<n0;I++)t0*=z;this.imuln(t0),this.words[0]+s0<67108864?this.words[0]+=s0:this._iaddn(s0)}this.strip()},Z.prototype.copy=function(l0){l0.words=new Array(this.length);for(var z=0;z<this.length;z++)l0.words[z]=this.words[z];l0.length=this.length,l0.negative=this.negative,l0.red=this.red},Z.prototype.clone=function(){var l0=new Z(null);return this.copy(l0),l0},Z.prototype._expand=function(l0){for(;this.length<l0;)this.words[this.length++]=0;return this},Z.prototype.strip=function(){for(;this.length>1&&this.words[this.length-1]===0;)this.length--;return this._normSign()},Z.prototype._normSign=function(){return this.length===1&&this.words[0]===0&&(this.negative=0),this},Z.prototype.inspect=function(){return(this.red?"<BN-R: ":"<BN: ")+this.toString(16)+">"};var H=["","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"],y0=[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],W=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64000000,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,24300000,28629151,33554432,39135393,45435424,52521875,60466176];Z.prototype.toString=function(l0,z){l0=l0||10,z=z|0||1;var o0;if(l0===16||l0==="hex"){o0="";for(var M=0,u0=0,S=0;S<this.length;S++){var n0=this.words[S],v=((n0<<M|u0)&16777215).toString(16);u0=n0>>>24-M&16777215,u0!==0||S!==this.length-1?o0=H[6-v.length]+v+o0:o0=v+o0,M+=2,M>=26&&(M-=26,S--)}for(u0!==0&&(o0=u0.toString(16)+o0);o0.length%z!==0;)o0="0"+o0;return this.negative!==0&&(o0="-"+o0),o0}if(l0===(l0|0)&&l0>=2&&l0<=36){var s0=y0[l0],I=W[l0];o0="";var t0=this.clone();for(t0.negative=0;!t0.isZero();){var m0=t0.modn(I).toString(l0);t0=t0.idivn(I),t0.isZero()?o0=m0+o0:o0=H[s0-m0.length]+m0+o0}for(this.isZero()&&(o0="0"+o0);o0.length%z!==0;)o0="0"+o0;return this.negative!==0&&(o0="-"+o0),o0}Y(!1,"Base should be between 2 and 36")},Z.prototype.toNumber=function(){var l0=this.words[0];return this.length===2?l0+=this.words[1]*67108864:this.length===3&&this.words[2]===1?l0+=4503599627370496+this.words[1]*67108864:this.length>2&&Y(!1,"Number can only safely store up to 53 bits"),this.negative!==0?-l0:l0},Z.prototype.toJSON=function(){return this.toString(16)},Z.prototype.toBuffer=function(l0,z){return Y(typeof Q<"u"),this.toArrayLike(Q,l0,z)},Z.prototype.toArray=function(l0,z){return this.toArrayLike(Array,l0,z)},Z.prototype.toArrayLike=function(l0,z,o0){var M=this.byteLength(),u0=o0||Math.max(1,M);Y(M<=u0,"byte array longer than desired length"),Y(u0>0,"Requested array length <= 0"),this.strip();var S=z==="le",n0=new l0(u0),v,s0,I=this.clone();if(S){for(s0=0;!I.isZero();s0++)v=I.andln(255),I.iushrn(8),n0[s0]=v;for(;s0<u0;s0++)n0[s0]=0}else{for(s0=0;s0<u0-M;s0++)n0[s0]=0;for(s0=0;!I.isZero();s0++)v=I.andln(255),I.iushrn(8),n0[u0-s0-1]=v}return n0},Math.clz32?Z.prototype._countBits=function(l0){return 32-Math.clz32(l0)}:Z.prototype._countBits=function(l0){var z=l0,o0=0;return z>=4096&&(o0+=13,z>>>=13),z>=64&&(o0+=7,z>>>=7),z>=8&&(o0+=4,z>>>=4),z>=2&&(o0+=2,z>>>=2),o0+z},Z.prototype._zeroBits=function(l0){if(l0===0)return 26;var z=l0,o0=0;return(z&8191)===0&&(o0+=13,z>>>=13),(z&127)===0&&(o0+=7,z>>>=7),(z&15)===0&&(o0+=4,z>>>=4),(z&3)===0&&(o0+=2,z>>>=2),(z&1)===0&&o0++,o0},Z.prototype.bitLength=function(){var l0=this.words[this.length-1],z=this._countBits(l0);return(this.length-1)*26+z};function w0(l0){for(var z=new Array(l0.bitLength()),o0=0;o0<z.length;o0++){var M=o0/26|0,u0=o0%26;z[o0]=(l0.words[M]&1<<u0)>>>u0}return z}Z.prototype.zeroBits=function(){if(this.isZero())return 0;for(var l0=0,z=0;z<this.length;z++){var o0=this._zeroBits(this.words[z]);if(l0+=o0,o0!==26)break}return l0},Z.prototype.byteLength=function(){return Math.ceil(this.bitLength()/8)},Z.prototype.toTwos=function(l0){return this.negative!==0?this.abs().inotn(l0).iaddn(1):this.clone()},Z.prototype.fromTwos=function(l0){return this.testn(l0-1)?this.notn(l0).iaddn(1).ineg():this.clone()},Z.prototype.isNeg=function(){return this.negative!==0},Z.prototype.neg=function(){return this.clone().ineg()},Z.prototype.ineg=function(){return this.isZero()||(this.negative^=1),this},Z.prototype.iuor=function(l0){for(;this.length<l0.length;)this.words[this.length++]=0;for(var z=0;z<l0.length;z++)this.words[z]=this.words[z]|l0.words[z];return this.strip()},Z.prototype.ior=function(l0){return Y((this.negative|l0.negative)===0),this.iuor(l0)},Z.prototype.or=function(l0){return this.length>l0.length?this.clone().ior(l0):l0.clone().ior(this)},Z.prototype.uor=function(l0){return this.length>l0.length?this.clone().iuor(l0):l0.clone().iuor(this)},Z.prototype.iuand=function(l0){var z;this.length>l0.length?z=l0:z=this;for(var o0=0;o0<z.length;o0++)this.words[o0]=this.words[o0]&l0.words[o0];return this.length=z.length,this.strip()},Z.prototype.iand=function(l0){return Y((this.negative|l0.negative)===0),this.iuand(l0)},Z.prototype.and=function(l0){return this.length>l0.length?this.clone().iand(l0):l0.clone().iand(this)},Z.prototype.uand=function(l0){return this.length>l0.length?this.clone().iuand(l0):l0.clone().iuand(this)},Z.prototype.iuxor=function(l0){var z,o0;this.length>l0.length?(z=this,o0=l0):(z=l0,o0=this);for(var M=0;M<o0.length;M++)this.words[M]=z.words[M]^o0.words[M];if(this!==z)for(;M<z.length;M++)this.words[M]=z.words[M];return this.length=z.length,this.strip()},Z.prototype.ixor=function(l0){return Y((this.negative|l0.negative)===0),this.iuxor(l0)},Z.prototype.xor=function(l0){return this.length>l0.length?this.clone().ixor(l0):l0.clone().ixor(this)},Z.prototype.uxor=function(l0){return this.length>l0.length?this.clone().iuxor(l0):l0.clone().iuxor(this)},Z.prototype.inotn=function(l0){Y(typeof l0=="number"&&l0>=0);var z=Math.ceil(l0/26)|0,o0=l0%26;this._expand(z),o0>0&&z--;for(var M=0;M<z;M++)this.words[M]=~this.words[M]&67108863;return o0>0&&(this.words[M]=~this.words[M]&67108863>>26-o0),this.strip()},Z.prototype.notn=function(l0){return this.clone().inotn(l0)},Z.prototype.setn=function(l0,z){Y(typeof l0=="number"&&l0>=0);var o0=l0/26|0,M=l0%26;return this._expand(o0+1),z?this.words[o0]=this.words[o0]|1<<M:this.words[o0]=this.words[o0]&~(1<<M),this.strip()},Z.prototype.iadd=function(l0){var z;if(this.negative!==0&&l0.negative===0)return this.negative=0,z=this.isub(l0),this.negative^=1,this._normSign();if(this.negative===0&&l0.negative!==0)return l0.negative=0,z=this.isub(l0),l0.negative=1,z._normSign();var o0,M;this.length>l0.length?(o0=this,M=l0):(o0=l0,M=this);for(var u0=0,S=0;S<M.length;S++)z=(o0.words[S]|0)+(M.words[S]|0)+u0,this.words[S]=z&67108863,u0=z>>>26;for(;u0!==0&&S<o0.length;S++)z=(o0.words[S]|0)+u0,this.words[S]=z&67108863,u0=z>>>26;if(this.length=o0.length,u0!==0)this.words[this.length]=u0,this.length++;else if(o0!==this)for(;S<o0.length;S++)this.words[S]=o0.words[S];return this},Z.prototype.add=function(l0){var z;return l0.negative!==0&&this.negative===0?(l0.negative=0,z=this.sub(l0),l0.negative^=1,z):l0.negative===0&&this.negative!==0?(this.negative=0,z=l0.sub(this),this.negative=1,z):this.length>l0.length?this.clone().iadd(l0):l0.clone().iadd(this)},Z.prototype.isub=function(l0){if(l0.negative!==0){l0.negative=0;var z=this.iadd(l0);return l0.negative=1,z._normSign()}else if(this.negative!==0)return this.negative=0,this.iadd(l0),this.negative=1,this._normSign();var o0=this.cmp(l0);if(o0===0)return this.negative=0,this.length=1,this.words[0]=0,this;var M,u0;o0>0?(M=this,u0=l0):(M=l0,u0=this);for(var S=0,n0=0;n0<u0.length;n0++)z=(M.words[n0]|0)-(u0.words[n0]|0)+S,S=z>>26,this.words[n0]=z&67108863;for(;S!==0&&n0<M.length;n0++)z=(M.words[n0]|0)+S,S=z>>26,this.words[n0]=z&67108863;if(S===0&&n0<M.length&&M!==this)for(;n0<M.length;n0++)this.words[n0]=M.words[n0];return this.length=Math.max(this.length,n0),M!==this&&(this.negative=1),this.strip()},Z.prototype.sub=function(l0){return this.clone().isub(l0)};function E(l0,z,o0){o0.negative=z.negative^l0.negative;var M=l0.length+z.length|0;o0.length=M,M=M-1|0;var u0=l0.words[0]|0,S=z.words[0]|0,n0=u0*S,v=n0&67108863,s0=n0/67108864|0;o0.words[0]=v;for(var I=1;I<M;I++){for(var t0=s0>>>26,m0=s0&67108863,a0=Math.min(I,z.length-1),q=Math.max(0,I-l0.length+1);q<=a0;q++){var e0=I-q|0;u0=l0.words[e0]|0,S=z.words[q]|0,n0=u0*S+m0,t0+=n0/67108864|0,m0=n0&67108863}o0.words[I]=m0|0,s0=t0|0}return s0!==0?o0.words[I]=s0|0:o0.length--,o0.strip()}var p0=function(l0,z,o0){var M=l0.words,u0=z.words,S=o0.words,n0=0,v,s0,I,t0=M[0]|0,m0=t0&8191,a0=t0>>>13,q=M[1]|0,e0=q&8191,r0=q>>>13,i0=M[2]|0,j=i0&8191,$$=i0>>>13,k=M[3]|0,Q$=k&8191,g=k>>>13,Y$=M[4]|0,_=Y$&8191,Z$=Y$>>>13,N=M[5]|0,G$=N&8191,x=N>>>13,V$=M[6]|0,B=V$&8191,U$=V$>>>13,y=M[7]|0,X$=y&8191,w=y>>>13,K$=M[8]|0,p=K$&8191,I$=K$>>>13,f=M[9]|0,O$=f&8191,c=f>>>13,J$=u0[0]|0,h=J$&8191,F$=J$>>>13,d=u0[1]|0,A$=d&8191,b=d>>>13,H$=u0[2]|0,l=H$&8191,W$=H$>>>13,o=u0[3]|0,E$=o&8191,u=o>>>13,T$=u0[4]|0,n=T$&8191,D$=T$>>>13,s=u0[5]|0,C$=s&8191,t=s>>>13,L$=u0[6]|0,m=L$&8191,R$=L$>>>13,a=u0[7]|0,P$=a&8191,O=a>>>13,z$=u0[8]|0,e=z$&8191,M$=z$>>>13,J=u0[9]|0,S$=J&8191,F=J>>>13;o0.negative=l0.negative^z.negative,o0.length=19,v=Math.imul(m0,h),s0=Math.imul(m0,F$),s0=s0+Math.imul(a0,h)|0,I=Math.imul(a0,F$);var v$=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(v$>>>26)|0,v$&=67108863,v=Math.imul(e0,h),s0=Math.imul(e0,F$),s0=s0+Math.imul(r0,h)|0,I=Math.imul(r0,F$),v=v+Math.imul(m0,A$)|0,s0=s0+Math.imul(m0,b)|0,s0=s0+Math.imul(a0,A$)|0,I=I+Math.imul(a0,b)|0;var r=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(r>>>26)|0,r&=67108863,v=Math.imul(j,h),s0=Math.imul(j,F$),s0=s0+Math.imul($$,h)|0,I=Math.imul($$,F$),v=v+Math.imul(e0,A$)|0,s0=s0+Math.imul(e0,b)|0,s0=s0+Math.imul(r0,A$)|0,I=I+Math.imul(r0,b)|0,v=v+Math.imul(m0,l)|0,s0=s0+Math.imul(m0,W$)|0,s0=s0+Math.imul(a0,l)|0,I=I+Math.imul(a0,W$)|0;var q$=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(q$>>>26)|0,q$&=67108863,v=Math.imul(Q$,h),s0=Math.imul(Q$,F$),s0=s0+Math.imul(g,h)|0,I=Math.imul(g,F$),v=v+Math.imul(j,A$)|0,s0=s0+Math.imul(j,b)|0,s0=s0+Math.imul($$,A$)|0,I=I+Math.imul($$,b)|0,v=v+Math.imul(e0,l)|0,s0=s0+Math.imul(e0,W$)|0,s0=s0+Math.imul(r0,l)|0,I=I+Math.imul(r0,W$)|0,v=v+Math.imul(m0,E$)|0,s0=s0+Math.imul(m0,u)|0,s0=s0+Math.imul(a0,E$)|0,I=I+Math.imul(a0,u)|0;var i=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(i>>>26)|0,i&=67108863,v=Math.imul(_,h),s0=Math.imul(_,F$),s0=s0+Math.imul(Z$,h)|0,I=Math.imul(Z$,F$),v=v+Math.imul(Q$,A$)|0,s0=s0+Math.imul(Q$,b)|0,s0=s0+Math.imul(g,A$)|0,I=I+Math.imul(g,b)|0,v=v+Math.imul(j,l)|0,s0=s0+Math.imul(j,W$)|0,s0=s0+Math.imul($$,l)|0,I=I+Math.imul($$,W$)|0,v=v+Math.imul(e0,E$)|0,s0=s0+Math.imul(e0,u)|0,s0=s0+Math.imul(r0,E$)|0,I=I+Math.imul(r0,u)|0,v=v+Math.imul(m0,n)|0,s0=s0+Math.imul(m0,D$)|0,s0=s0+Math.imul(a0,n)|0,I=I+Math.imul(a0,D$)|0;var j$=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(j$>>>26)|0,j$&=67108863,v=Math.imul(G$,h),s0=Math.imul(G$,F$),s0=s0+Math.imul(x,h)|0,I=Math.imul(x,F$),v=v+Math.imul(_,A$)|0,s0=s0+Math.imul(_,b)|0,s0=s0+Math.imul(Z$,A$)|0,I=I+Math.imul(Z$,b)|0,v=v+Math.imul(Q$,l)|0,s0=s0+Math.imul(Q$,W$)|0,s0=s0+Math.imul(g,l)|0,I=I+Math.imul(g,W$)|0,v=v+Math.imul(j,E$)|0,s0=s0+Math.imul(j,u)|0,s0=s0+Math.imul($$,E$)|0,I=I+Math.imul($$,u)|0,v=v+Math.imul(e0,n)|0,s0=s0+Math.imul(e0,D$)|0,s0=s0+Math.imul(r0,n)|0,I=I+Math.imul(r0,D$)|0,v=v+Math.imul(m0,C$)|0,s0=s0+Math.imul(m0,t)|0,s0=s0+Math.imul(a0,C$)|0,I=I+Math.imul(a0,t)|0;var k$=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(k$>>>26)|0,k$&=67108863,v=Math.imul(B,h),s0=Math.imul(B,F$),s0=s0+Math.imul(U$,h)|0,I=Math.imul(U$,F$),v=v+Math.imul(G$,A$)|0,s0=s0+Math.imul(G$,b)|0,s0=s0+Math.imul(x,A$)|0,I=I+Math.imul(x,b)|0,v=v+Math.imul(_,l)|0,s0=s0+Math.imul(_,W$)|0,s0=s0+Math.imul(Z$,l)|0,I=I+Math.imul(Z$,W$)|0,v=v+Math.imul(Q$,E$)|0,s0=s0+Math.imul(Q$,u)|0,s0=s0+Math.imul(g,E$)|0,I=I+Math.imul(g,u)|0,v=v+Math.imul(j,n)|0,s0=s0+Math.imul(j,D$)|0,s0=s0+Math.imul($$,n)|0,I=I+Math.imul($$,D$)|0,v=v+Math.imul(e0,C$)|0,s0=s0+Math.imul(e0,t)|0,s0=s0+Math.imul(r0,C$)|0,I=I+Math.imul(r0,t)|0,v=v+Math.imul(m0,m)|0,s0=s0+Math.imul(m0,R$)|0,s0=s0+Math.imul(a0,m)|0,I=I+Math.imul(a0,R$)|0;var g$=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(g$>>>26)|0,g$&=67108863,v=Math.imul(X$,h),s0=Math.imul(X$,F$),s0=s0+Math.imul(w,h)|0,I=Math.imul(w,F$),v=v+Math.imul(B,A$)|0,s0=s0+Math.imul(B,b)|0,s0=s0+Math.imul(U$,A$)|0,I=I+Math.imul(U$,b)|0,v=v+Math.imul(G$,l)|0,s0=s0+Math.imul(G$,W$)|0,s0=s0+Math.imul(x,l)|0,I=I+Math.imul(x,W$)|0,v=v+Math.imul(_,E$)|0,s0=s0+Math.imul(_,u)|0,s0=s0+Math.imul(Z$,E$)|0,I=I+Math.imul(Z$,u)|0,v=v+Math.imul(Q$,n)|0,s0=s0+Math.imul(Q$,D$)|0,s0=s0+Math.imul(g,n)|0,I=I+Math.imul(g,D$)|0,v=v+Math.imul(j,C$)|0,s0=s0+Math.imul(j,t)|0,s0=s0+Math.imul($$,C$)|0,I=I+Math.imul($$,t)|0,v=v+Math.imul(e0,m)|0,s0=s0+Math.imul(e0,R$)|0,s0=s0+Math.imul(r0,m)|0,I=I+Math.imul(r0,R$)|0,v=v+Math.imul(m0,P$)|0,s0=s0+Math.imul(m0,O)|0,s0=s0+Math.imul(a0,P$)|0,I=I+Math.imul(a0,O)|0;var _$=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(_$>>>26)|0,_$&=67108863,v=Math.imul(p,h),s0=Math.imul(p,F$),s0=s0+Math.imul(I$,h)|0,I=Math.imul(I$,F$),v=v+Math.imul(X$,A$)|0,s0=s0+Math.imul(X$,b)|0,s0=s0+Math.imul(w,A$)|0,I=I+Math.imul(w,b)|0,v=v+Math.imul(B,l)|0,s0=s0+Math.imul(B,W$)|0,s0=s0+Math.imul(U$,l)|0,I=I+Math.imul(U$,W$)|0,v=v+Math.imul(G$,E$)|0,s0=s0+Math.imul(G$,u)|0,s0=s0+Math.imul(x,E$)|0,I=I+Math.imul(x,u)|0,v=v+Math.imul(_,n)|0,s0=s0+Math.imul(_,D$)|0,s0=s0+Math.imul(Z$,n)|0,I=I+Math.imul(Z$,D$)|0,v=v+Math.imul(Q$,C$)|0,s0=s0+Math.imul(Q$,t)|0,s0=s0+Math.imul(g,C$)|0,I=I+Math.imul(g,t)|0,v=v+Math.imul(j,m)|0,s0=s0+Math.imul(j,R$)|0,s0=s0+Math.imul($$,m)|0,I=I+Math.imul($$,R$)|0,v=v+Math.imul(e0,P$)|0,s0=s0+Math.imul(e0,O)|0,s0=s0+Math.imul(r0,P$)|0,I=I+Math.imul(r0,O)|0,v=v+Math.imul(m0,e)|0,s0=s0+Math.imul(m0,M$)|0,s0=s0+Math.imul(a0,e)|0,I=I+Math.imul(a0,M$)|0;var N$=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(N$>>>26)|0,N$&=67108863,v=Math.imul(O$,h),s0=Math.imul(O$,F$),s0=s0+Math.imul(c,h)|0,I=Math.imul(c,F$),v=v+Math.imul(p,A$)|0,s0=s0+Math.imul(p,b)|0,s0=s0+Math.imul(I$,A$)|0,I=I+Math.imul(I$,b)|0,v=v+Math.imul(X$,l)|0,s0=s0+Math.imul(X$,W$)|0,s0=s0+Math.imul(w,l)|0,I=I+Math.imul(w,W$)|0,v=v+Math.imul(B,E$)|0,s0=s0+Math.imul(B,u)|0,s0=s0+Math.imul(U$,E$)|0,I=I+Math.imul(U$,u)|0,v=v+Math.imul(G$,n)|0,s0=s0+Math.imul(G$,D$)|0,s0=s0+Math.imul(x,n)|0,I=I+Math.imul(x,D$)|0,v=v+Math.imul(_,C$)|0,s0=s0+Math.imul(_,t)|0,s0=s0+Math.imul(Z$,C$)|0,I=I+Math.imul(Z$,t)|0,v=v+Math.imul(Q$,m)|0,s0=s0+Math.imul(Q$,R$)|0,s0=s0+Math.imul(g,m)|0,I=I+Math.imul(g,R$)|0,v=v+Math.imul(j,P$)|0,s0=s0+Math.imul(j,O)|0,s0=s0+Math.imul($$,P$)|0,I=I+Math.imul($$,O)|0,v=v+Math.imul(e0,e)|0,s0=s0+Math.imul(e0,M$)|0,s0=s0+Math.imul(r0,e)|0,I=I+Math.imul(r0,M$)|0,v=v+Math.imul(m0,S$)|0,s0=s0+Math.imul(m0,F)|0,s0=s0+Math.imul(a0,S$)|0,I=I+Math.imul(a0,F)|0;var $0=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+($0>>>26)|0,$0&=67108863,v=Math.imul(O$,A$),s0=Math.imul(O$,b),s0=s0+Math.imul(c,A$)|0,I=Math.imul(c,b),v=v+Math.imul(p,l)|0,s0=s0+Math.imul(p,W$)|0,s0=s0+Math.imul(I$,l)|0,I=I+Math.imul(I$,W$)|0,v=v+Math.imul(X$,E$)|0,s0=s0+Math.imul(X$,u)|0,s0=s0+Math.imul(w,E$)|0,I=I+Math.imul(w,u)|0,v=v+Math.imul(B,n)|0,s0=s0+Math.imul(B,D$)|0,s0=s0+Math.imul(U$,n)|0,I=I+Math.imul(U$,D$)|0,v=v+Math.imul(G$,C$)|0,s0=s0+Math.imul(G$,t)|0,s0=s0+Math.imul(x,C$)|0,I=I+Math.imul(x,t)|0,v=v+Math.imul(_,m)|0,s0=s0+Math.imul(_,R$)|0,s0=s0+Math.imul(Z$,m)|0,I=I+Math.imul(Z$,R$)|0,v=v+Math.imul(Q$,P$)|0,s0=s0+Math.imul(Q$,O)|0,s0=s0+Math.imul(g,P$)|0,I=I+Math.imul(g,O)|0,v=v+Math.imul(j,e)|0,s0=s0+Math.imul(j,M$)|0,s0=s0+Math.imul($$,e)|0,I=I+Math.imul($$,M$)|0,v=v+Math.imul(e0,S$)|0,s0=s0+Math.imul(e0,F)|0,s0=s0+Math.imul(r0,S$)|0,I=I+Math.imul(r0,F)|0;var x$=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(x$>>>26)|0,x$&=67108863,v=Math.imul(O$,l),s0=Math.imul(O$,W$),s0=s0+Math.imul(c,l)|0,I=Math.imul(c,W$),v=v+Math.imul(p,E$)|0,s0=s0+Math.imul(p,u)|0,s0=s0+Math.imul(I$,E$)|0,I=I+Math.imul(I$,u)|0,v=v+Math.imul(X$,n)|0,s0=s0+Math.imul(X$,D$)|0,s0=s0+Math.imul(w,n)|0,I=I+Math.imul(w,D$)|0,v=v+Math.imul(B,C$)|0,s0=s0+Math.imul(B,t)|0,s0=s0+Math.imul(U$,C$)|0,I=I+Math.imul(U$,t)|0,v=v+Math.imul(G$,m)|0,s0=s0+Math.imul(G$,R$)|0,s0=s0+Math.imul(x,m)|0,I=I+Math.imul(x,R$)|0,v=v+Math.imul(_,P$)|0,s0=s0+Math.imul(_,O)|0,s0=s0+Math.imul(Z$,P$)|0,I=I+Math.imul(Z$,O)|0,v=v+Math.imul(Q$,e)|0,s0=s0+Math.imul(Q$,M$)|0,s0=s0+Math.imul(g,e)|0,I=I+Math.imul(g,M$)|0,v=v+Math.imul(j,S$)|0,s0=s0+Math.imul(j,F)|0,s0=s0+Math.imul($$,S$)|0,I=I+Math.imul($$,F)|0;var Q0=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(Q0>>>26)|0,Q0&=67108863,v=Math.imul(O$,E$),s0=Math.imul(O$,u),s0=s0+Math.imul(c,E$)|0,I=Math.imul(c,u),v=v+Math.imul(p,n)|0,s0=s0+Math.imul(p,D$)|0,s0=s0+Math.imul(I$,n)|0,I=I+Math.imul(I$,D$)|0,v=v+Math.imul(X$,C$)|0,s0=s0+Math.imul(X$,t)|0,s0=s0+Math.imul(w,C$)|0,I=I+Math.imul(w,t)|0,v=v+Math.imul(B,m)|0,s0=s0+Math.imul(B,R$)|0,s0=s0+Math.imul(U$,m)|0,I=I+Math.imul(U$,R$)|0,v=v+Math.imul(G$,P$)|0,s0=s0+Math.imul(G$,O)|0,s0=s0+Math.imul(x,P$)|0,I=I+Math.imul(x,O)|0,v=v+Math.imul(_,e)|0,s0=s0+Math.imul(_,M$)|0,s0=s0+Math.imul(Z$,e)|0,I=I+Math.imul(Z$,M$)|0,v=v+Math.imul(Q$,S$)|0,s0=s0+Math.imul(Q$,F)|0,s0=s0+Math.imul(g,S$)|0,I=I+Math.imul(g,F)|0;var B$=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(B$>>>26)|0,B$&=67108863,v=Math.imul(O$,n),s0=Math.imul(O$,D$),s0=s0+Math.imul(c,n)|0,I=Math.imul(c,D$),v=v+Math.imul(p,C$)|0,s0=s0+Math.imul(p,t)|0,s0=s0+Math.imul(I$,C$)|0,I=I+Math.imul(I$,t)|0,v=v+Math.imul(X$,m)|0,s0=s0+Math.imul(X$,R$)|0,s0=s0+Math.imul(w,m)|0,I=I+Math.imul(w,R$)|0,v=v+Math.imul(B,P$)|0,s0=s0+Math.imul(B,O)|0,s0=s0+Math.imul(U$,P$)|0,I=I+Math.imul(U$,O)|0,v=v+Math.imul(G$,e)|0,s0=s0+Math.imul(G$,M$)|0,s0=s0+Math.imul(x,e)|0,I=I+Math.imul(x,M$)|0,v=v+Math.imul(_,S$)|0,s0=s0+Math.imul(_,F)|0,s0=s0+Math.imul(Z$,S$)|0,I=I+Math.imul(Z$,F)|0;var Y0=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(Y0>>>26)|0,Y0&=67108863,v=Math.imul(O$,C$),s0=Math.imul(O$,t),s0=s0+Math.imul(c,C$)|0,I=Math.imul(c,t),v=v+Math.imul(p,m)|0,s0=s0+Math.imul(p,R$)|0,s0=s0+Math.imul(I$,m)|0,I=I+Math.imul(I$,R$)|0,v=v+Math.imul(X$,P$)|0,s0=s0+Math.imul(X$,O)|0,s0=s0+Math.imul(w,P$)|0,I=I+Math.imul(w,O)|0,v=v+Math.imul(B,e)|0,s0=s0+Math.imul(B,M$)|0,s0=s0+Math.imul(U$,e)|0,I=I+Math.imul(U$,M$)|0,v=v+Math.imul(G$,S$)|0,s0=s0+Math.imul(G$,F)|0,s0=s0+Math.imul(x,S$)|0,I=I+Math.imul(x,F)|0;var y$=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(y$>>>26)|0,y$&=67108863,v=Math.imul(O$,m),s0=Math.imul(O$,R$),s0=s0+Math.imul(c,m)|0,I=Math.imul(c,R$),v=v+Math.imul(p,P$)|0,s0=s0+Math.imul(p,O)|0,s0=s0+Math.imul(I$,P$)|0,I=I+Math.imul(I$,O)|0,v=v+Math.imul(X$,e)|0,s0=s0+Math.imul(X$,M$)|0,s0=s0+Math.imul(w,e)|0,I=I+Math.imul(w,M$)|0,v=v+Math.imul(B,S$)|0,s0=s0+Math.imul(B,F)|0,s0=s0+Math.imul(U$,S$)|0,I=I+Math.imul(U$,F)|0;var Z0=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(Z0>>>26)|0,Z0&=67108863,v=Math.imul(O$,P$),s0=Math.imul(O$,O),s0=s0+Math.imul(c,P$)|0,I=Math.imul(c,O),v=v+Math.imul(p,e)|0,s0=s0+Math.imul(p,M$)|0,s0=s0+Math.imul(I$,e)|0,I=I+Math.imul(I$,M$)|0,v=v+Math.imul(X$,S$)|0,s0=s0+Math.imul(X$,F)|0,s0=s0+Math.imul(w,S$)|0,I=I+Math.imul(w,F)|0;var w$=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(w$>>>26)|0,w$&=67108863,v=Math.imul(O$,e),s0=Math.imul(O$,M$),s0=s0+Math.imul(c,e)|0,I=Math.imul(c,M$),v=v+Math.imul(p,S$)|0,s0=s0+Math.imul(p,F)|0,s0=s0+Math.imul(I$,S$)|0,I=I+Math.imul(I$,F)|0;var G0=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(G0>>>26)|0,G0&=67108863,v=Math.imul(O$,S$),s0=Math.imul(O$,F),s0=s0+Math.imul(c,S$)|0,I=Math.imul(c,F);var p$=(n0+v|0)+((s0&8191)<<13)|0;return n0=(I+(s0>>>13)|0)+(p$>>>26)|0,p$&=67108863,S[0]=v$,S[1]=r,S[2]=q$,S[3]=i,S[4]=j$,S[5]=k$,S[6]=g$,S[7]=_$,S[8]=N$,S[9]=$0,S[10]=x$,S[11]=Q0,S[12]=B$,S[13]=Y0,S[14]=y$,S[15]=Z0,S[16]=w$,S[17]=G0,S[18]=p$,n0!==0&&(S[19]=n0,o0.length++),o0};Math.imul||(p0=E);function T(l0,z,o0){o0.negative=z.negative^l0.negative,o0.length=l0.length+z.length;for(var M=0,u0=0,S=0;S<o0.length-1;S++){var n0=u0;u0=0;for(var v=M&67108863,s0=Math.min(S,z.length-1),I=Math.max(0,S-l0.length+1);I<=s0;I++){var t0=S-I,m0=l0.words[t0]|0,a0=z.words[I]|0,q=m0*a0,e0=q&67108863;n0=n0+(q/67108864|0)|0,e0=e0+v|0,v=e0&67108863,n0=n0+(e0>>>26)|0,u0+=n0>>>26,n0&=67108863}o0.words[S]=v,M=n0,n0=u0}return M!==0?o0.words[S]=M:o0.length--,o0.strip()}function f0(l0,z,o0){var M=new D;return M.mulp(l0,z,o0)}Z.prototype.mulTo=function(l0,z){var o0,M=this.length+l0.length;return this.length===10&&l0.length===10?o0=p0(this,l0,z):M<63?o0=E(this,l0,z):M<1024?o0=T(this,l0,z):o0=f0(this,l0,z),o0};function D(l0,z){this.x=l0,this.y=z}D.prototype.makeRBT=function(l0){for(var z=new Array(l0),o0=Z.prototype._countBits(l0)-1,M=0;M<l0;M++)z[M]=this.revBin(M,o0,l0);return z},D.prototype.revBin=function(l0,z,o0){if(l0===0||l0===o0-1)return l0;for(var M=0,u0=0;u0<z;u0++)M|=(l0&1)<<z-u0-1,l0>>=1;return M},D.prototype.permute=function(l0,z,o0,M,u0,S){for(var n0=0;n0<S;n0++)M[n0]=z[l0[n0]],u0[n0]=o0[l0[n0]]},D.prototype.transform=function(l0,z,o0,M,u0,S){this.permute(S,l0,z,o0,M,u0);for(var n0=1;n0<u0;n0<<=1)for(var v=n0<<1,s0=Math.cos(2*Math.PI/v),I=Math.sin(2*Math.PI/v),t0=0;t0<u0;t0+=v)for(var m0=s0,a0=I,q=0;q<n0;q++){var e0=o0[t0+q],r0=M[t0+q],i0=o0[t0+q+n0],j=M[t0+q+n0],$$=m0*i0-a0*j;j=m0*j+a0*i0,i0=$$,o0[t0+q]=e0+i0,M[t0+q]=r0+j,o0[t0+q+n0]=e0-i0,M[t0+q+n0]=r0-j,q!==v&&($$=s0*m0-I*a0,a0=s0*a0+I*m0,m0=$$)}},D.prototype.guessLen13b=function(l0,z){var o0=Math.max(z,l0)|1,M=o0&1,u0=0;for(o0=o0/2|0;o0;o0=o0>>>1)u0++;return 1<<u0+1+M},D.prototype.conjugate=function(l0,z,o0){if(!(o0<=1))for(var M=0;M<o0/2;M++){var u0=l0[M];l0[M]=l0[o0-M-1],l0[o0-M-1]=u0,u0=z[M],z[M]=-z[o0-M-1],z[o0-M-1]=-u0}},D.prototype.normalize13b=function(l0,z){for(var o0=0,M=0;M<z/2;M++){var u0=Math.round(l0[2*M+1]/z)*8192+Math.round(l0[2*M]/z)+o0;l0[M]=u0&67108863,u0<67108864?o0=0:o0=u0/67108864|0}return l0},D.prototype.convert13b=function(l0,z,o0,M){for(var u0=0,S=0;S<z;S++)u0=u0+(l0[S]|0),o0[2*S]=u0&8191,u0=u0>>>13,o0[2*S+1]=u0&8191,u0=u0>>>13;for(S=2*z;S<M;++S)o0[S]=0;Y(u0===0),Y((u0&-8192)===0)},D.prototype.stub=function(l0){for(var z=new Array(l0),o0=0;o0<l0;o0++)z[o0]=0;return z},D.prototype.mulp=function(l0,z,o0){var M=2*this.guessLen13b(l0.length,z.length),u0=this.makeRBT(M),S=this.stub(M),n0=new Array(M),v=new Array(M),s0=new Array(M),I=new Array(M),t0=new Array(M),m0=new Array(M),a0=o0.words;a0.length=M,this.convert13b(l0.words,l0.length,n0,M),this.convert13b(z.words,z.length,I,M),this.transform(n0,S,v,s0,M,u0),this.transform(I,S,t0,m0,M,u0);for(var q=0;q<M;q++){var e0=v[q]*t0[q]-s0[q]*m0[q];s0[q]=v[q]*m0[q]+s0[q]*t0[q],v[q]=e0}return this.conjugate(v,s0,M),this.transform(v,s0,a0,S,M,u0),this.conjugate(a0,S,M),this.normalize13b(a0,M),o0.negative=l0.negative^z.negative,o0.length=l0.length+z.length,o0.strip()},Z.prototype.mul=function(l0){var z=new Z(null);return z.words=new Array(this.length+l0.length),this.mulTo(l0,z)},Z.prototype.mulf=function(l0){var z=new Z(null);return z.words=new Array(this.length+l0.length),f0(this,l0,z)},Z.prototype.imul=function(l0){return this.clone().mulTo(l0,this)},Z.prototype.imuln=function(l0){Y(typeof l0=="number"),Y(l0<67108864);for(var z=0,o0=0;o0<this.length;o0++){var M=(this.words[o0]|0)*l0,u0=(M&67108863)+(z&67108863);z>>=26,z+=M/67108864|0,z+=u0>>>26,this.words[o0]=u0&67108863}return z!==0&&(this.words[o0]=z,this.length++),this},Z.prototype.muln=function(l0){return this.clone().imuln(l0)},Z.prototype.sqr=function(){return this.mul(this)},Z.prototype.isqr=function(){return this.imul(this.clone())},Z.prototype.pow=function(l0){var z=w0(l0);if(z.length===0)return new Z(1);for(var o0=this,M=0;M<z.length&&z[M]===0;M++,o0=o0.sqr());if(++M<z.length)for(var u0=o0.sqr();M<z.length;M++,u0=u0.sqr())z[M]!==0&&(o0=o0.mul(u0));return o0},Z.prototype.iushln=function(l0){Y(typeof l0=="number"&&l0>=0);var z=l0%26,o0=(l0-z)/26,M=67108863>>>26-z<<26-z,u0;if(z!==0){var S=0;for(u0=0;u0<this.length;u0++){var n0=this.words[u0]&M,v=(this.words[u0]|0)-n0<<z;this.words[u0]=v|S,S=n0>>>26-z}S&&(this.words[u0]=S,this.length++)}if(o0!==0){for(u0=this.length-1;u0>=0;u0--)this.words[u0+o0]=this.words[u0];for(u0=0;u0<o0;u0++)this.words[u0]=0;this.length+=o0}return this.strip()},Z.prototype.ishln=function(l0){return Y(this.negative===0),this.iushln(l0)},Z.prototype.iushrn=function(l0,z,o0){Y(typeof l0=="number"&&l0>=0);var M;z?M=(z-z%26)/26:M=0;var u0=l0%26,S=Math.min((l0-u0)/26,this.length),n0=67108863^67108863>>>u0<<u0,v=o0;if(M-=S,M=Math.max(0,M),v){for(var s0=0;s0<S;s0++)v.words[s0]=this.words[s0];v.length=S}if(S!==0)if(this.length>S)for(this.length-=S,s0=0;s0<this.length;s0++)this.words[s0]=this.words[s0+S];else this.words[0]=0,this.length=1;var I=0;for(s0=this.length-1;s0>=0&&(I!==0||s0>=M);s0--){var t0=this.words[s0]|0;this.words[s0]=I<<26-u0|t0>>>u0,I=t0&n0}return v&&I!==0&&(v.words[v.length++]=I),this.length===0&&(this.words[0]=0,this.length=1),this.strip()},Z.prototype.ishrn=function(l0,z,o0){return Y(this.negative===0),this.iushrn(l0,z,o0)},Z.prototype.shln=function(l0){return this.clone().ishln(l0)},Z.prototype.ushln=function(l0){return this.clone().iushln(l0)},Z.prototype.shrn=function(l0){return this.clone().ishrn(l0)},Z.prototype.ushrn=function(l0){return this.clone().iushrn(l0)},Z.prototype.testn=function(l0){Y(typeof l0=="number"&&l0>=0);var z=l0%26,o0=(l0-z)/26,M=1<<z;if(this.length<=o0)return!1;var u0=this.words[o0];return!!(u0&M)},Z.prototype.imaskn=function(l0){Y(typeof l0=="number"&&l0>=0);var z=l0%26,o0=(l0-z)/26;if(Y(this.negative===0,"imaskn works only with positive numbers"),this.length<=o0)return this;if(z!==0&&o0++,this.length=Math.min(o0,this.length),z!==0){var M=67108863^67108863>>>z<<z;this.words[this.length-1]&=M}return this.strip()},Z.prototype.maskn=function(l0){return this.clone().imaskn(l0)},Z.prototype.iaddn=function(l0){return Y(typeof l0=="number"),Y(l0<67108864),l0<0?this.isubn(-l0):this.negative!==0?this.length===1&&(this.words[0]|0)<l0?(this.words[0]=l0-(this.words[0]|0),this.negative=0,this):(this.negative=0,this.isubn(l0),this.negative=1,this):this._iaddn(l0)},Z.prototype._iaddn=function(l0){this.words[0]+=l0;for(var z=0;z<this.length&&this.words[z]>=67108864;z++)this.words[z]-=67108864,z===this.length-1?this.words[z+1]=1:this.words[z+1]++;return this.length=Math.max(this.length,z+1),this},Z.prototype.isubn=function(l0){if(Y(typeof l0=="number"),Y(l0<67108864),l0<0)return this.iaddn(-l0);if(this.negative!==0)return this.negative=0,this.iaddn(l0),this.negative=1,this;if(this.words[0]-=l0,this.length===1&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var z=0;z<this.length&&this.words[z]<0;z++)this.words[z]+=67108864,this.words[z+1]-=1;return this.strip()},Z.prototype.addn=function(l0){return this.clone().iaddn(l0)},Z.prototype.subn=function(l0){return this.clone().isubn(l0)},Z.prototype.iabs=function(){return this.negative=0,this},Z.prototype.abs=function(){return this.clone().iabs()},Z.prototype._ishlnsubmul=function(l0,z,o0){var M=l0.length+o0,u0;this._expand(M);var S,n0=0;for(u0=0;u0<l0.length;u0++){S=(this.words[u0+o0]|0)+n0;var v=(l0.words[u0]|0)*z;S-=v&67108863,n0=(S>>26)-(v/67108864|0),this.words[u0+o0]=S&67108863}for(;u0<this.length-o0;u0++)S=(this.words[u0+o0]|0)+n0,n0=S>>26,this.words[u0+o0]=S&67108863;if(n0===0)return this.strip();for(Y(n0===-1),n0=0,u0=0;u0<this.length;u0++)S=-(this.words[u0]|0)+n0,n0=S>>26,this.words[u0]=S&67108863;return this.negative=1,this.strip()},Z.prototype._wordDiv=function(l0,z){var o0=this.length-l0.length,M=this.clone(),u0=l0,S=u0.words[u0.length-1]|0,n0=this._countBits(S);o0=26-n0,o0!==0&&(u0=u0.ushln(o0),M.iushln(o0),S=u0.words[u0.length-1]|0);var v=M.length-u0.length,s0;if(z!=="mod"){s0=new Z(null),s0.length=v+1,s0.words=new Array(s0.length);for(var I=0;I<s0.length;I++)s0.words[I]=0}var t0=M.clone()._ishlnsubmul(u0,1,v);t0.negative===0&&(M=t0,s0&&(s0.words[v]=1));for(var m0=v-1;m0>=0;m0--){var a0=(M.words[u0.length+m0]|0)*67108864+(M.words[u0.length+m0-1]|0);for(a0=Math.min(a0/S|0,67108863),M._ishlnsubmul(u0,a0,m0);M.negative!==0;)a0--,M.negative=0,M._ishlnsubmul(u0,1,m0),M.isZero()||(M.negative^=1);s0&&(s0.words[m0]=a0)}return s0&&s0.strip(),M.strip(),z!=="div"&&o0!==0&&M.iushrn(o0),{div:s0||null,mod:M}},Z.prototype.divmod=function(l0,z,o0){if(Y(!l0.isZero()),this.isZero())return{div:new Z(0),mod:new Z(0)};var M,u0,S;return this.negative!==0&&l0.negative===0?(S=this.neg().divmod(l0,z),z!=="mod"&&(M=S.div.neg()),z!=="div"&&(u0=S.mod.neg(),o0&&u0.negative!==0&&u0.iadd(l0)),{div:M,mod:u0}):this.negative===0&&l0.negative!==0?(S=this.divmod(l0.neg(),z),z!=="mod"&&(M=S.div.neg()),{div:M,mod:S.mod}):(this.negative&l0.negative)!==0?(S=this.neg().divmod(l0.neg(),z),z!=="div"&&(u0=S.mod.neg(),o0&&u0.negative!==0&&u0.isub(l0)),{div:S.div,mod:u0}):l0.length>this.length||this.cmp(l0)<0?{div:new Z(0),mod:this}:l0.length===1?z==="div"?{div:this.divn(l0.words[0]),mod:null}:z==="mod"?{div:null,mod:new Z(this.modn(l0.words[0]))}:{div:this.divn(l0.words[0]),mod:new Z(this.modn(l0.words[0]))}:this._wordDiv(l0,z)},Z.prototype.div=function(l0){return this.divmod(l0,"div",!1).div},Z.prototype.mod=function(l0){return this.divmod(l0,"mod",!1).mod},Z.prototype.umod=function(l0){return this.divmod(l0,"mod",!0).mod},Z.prototype.divRound=function(l0){var z=this.divmod(l0);if(z.mod.isZero())return z.div;var o0=z.div.negative!==0?z.mod.isub(l0):z.mod,M=l0.ushrn(1),u0=l0.andln(1),S=o0.cmp(M);return S<0||u0===1&&S===0?z.div:z.div.negative!==0?z.div.isubn(1):z.div.iaddn(1)},Z.prototype.modn=function(l0){Y(l0<=67108863);for(var z=(1<<26)%l0,o0=0,M=this.length-1;M>=0;M--)o0=(z*o0+(this.words[M]|0))%l0;return o0},Z.prototype.idivn=function(l0){Y(l0<=67108863);for(var z=0,o0=this.length-1;o0>=0;o0--){var M=(this.words[o0]|0)+z*67108864;this.words[o0]=M/l0|0,z=M%l0}return this.strip()},Z.prototype.divn=function(l0){return this.clone().idivn(l0)},Z.prototype.egcd=function(l0){Y(l0.negative===0),Y(!l0.isZero());var z=this,o0=l0.clone();z.negative!==0?z=z.umod(l0):z=z.clone();for(var M=new Z(1),u0=new Z(0),S=new Z(0),n0=new Z(1),v=0;z.isEven()&&o0.isEven();)z.iushrn(1),o0.iushrn(1),++v;for(var s0=o0.clone(),I=z.clone();!z.isZero();){for(var t0=0,m0=1;(z.words[0]&m0)===0&&t0<26;++t0,m0<<=1);if(t0>0)for(z.iushrn(t0);t0-- >0;)(M.isOdd()||u0.isOdd())&&(M.iadd(s0),u0.isub(I)),M.iushrn(1),u0.iushrn(1);for(var a0=0,q=1;(o0.words[0]&q)===0&&a0<26;++a0,q<<=1);if(a0>0)for(o0.iushrn(a0);a0-- >0;)(S.isOdd()||n0.isOdd())&&(S.iadd(s0),n0.isub(I)),S.iushrn(1),n0.iushrn(1);z.cmp(o0)>=0?(z.isub(o0),M.isub(S),u0.isub(n0)):(o0.isub(z),S.isub(M),n0.isub(u0))}return{a:S,b:n0,gcd:o0.iushln(v)}},Z.prototype._invmp=function(l0){Y(l0.negative===0),Y(!l0.isZero());var z=this,o0=l0.clone();z.negative!==0?z=z.umod(l0):z=z.clone();for(var M=new Z(1),u0=new Z(0),S=o0.clone();z.cmpn(1)>0&&o0.cmpn(1)>0;){for(var n0=0,v=1;(z.words[0]&v)===0&&n0<26;++n0,v<<=1);if(n0>0)for(z.iushrn(n0);n0-- >0;)M.isOdd()&&M.iadd(S),M.iushrn(1);for(var s0=0,I=1;(o0.words[0]&I)===0&&s0<26;++s0,I<<=1);if(s0>0)for(o0.iushrn(s0);s0-- >0;)u0.isOdd()&&u0.iadd(S),u0.iushrn(1);z.cmp(o0)>=0?(z.isub(o0),M.isub(u0)):(o0.isub(z),u0.isub(M))}var t0;return z.cmpn(1)===0?t0=M:t0=u0,t0.cmpn(0)<0&&t0.iadd(l0),t0},Z.prototype.gcd=function(l0){if(this.isZero())return l0.abs();if(l0.isZero())return this.abs();var z=this.clone(),o0=l0.clone();z.negative=0,o0.negative=0;for(var M=0;z.isEven()&&o0.isEven();M++)z.iushrn(1),o0.iushrn(1);do{for(;z.isEven();)z.iushrn(1);for(;o0.isEven();)o0.iushrn(1);var u0=z.cmp(o0);if(u0<0){var S=z;z=o0,o0=S}else if(u0===0||o0.cmpn(1)===0)break;z.isub(o0)}while(!0);return o0.iushln(M)},Z.prototype.invm=function(l0){return this.egcd(l0).a.umod(l0)},Z.prototype.isEven=function(){return(this.words[0]&1)===0},Z.prototype.isOdd=function(){return(this.words[0]&1)===1},Z.prototype.andln=function(l0){return this.words[0]&l0},Z.prototype.bincn=function(l0){Y(typeof l0=="number");var z=l0%26,o0=(l0-z)/26,M=1<<z;if(this.length<=o0)return this._expand(o0+1),this.words[o0]|=M,this;for(var u0=M,S=o0;u0!==0&&S<this.length;S++){var n0=this.words[S]|0;n0+=u0,u0=n0>>>26,n0&=67108863,this.words[S]=n0}return u0!==0&&(this.words[S]=u0,this.length++),this},Z.prototype.isZero=function(){return this.length===1&&this.words[0]===0},Z.prototype.cmpn=function(l0){var z=l0<0;if(this.negative!==0&&!z)return-1;if(this.negative===0&&z)return 1;this.strip();var o0;if(this.length>1)o0=1;else{z&&(l0=-l0),Y(l0<=67108863,"Number is too big");var M=this.words[0]|0;o0=M===l0?0:M<l0?-1:1}return this.negative!==0?-o0|0:o0},Z.prototype.cmp=function(l0){if(this.negative!==0&&l0.negative===0)return-1;if(this.negative===0&&l0.negative!==0)return 1;var z=this.ucmp(l0);return this.negative!==0?-z|0:z},Z.prototype.ucmp=function(l0){if(this.length>l0.length)return 1;if(this.length<l0.length)return-1;for(var z=0,o0=this.length-1;o0>=0;o0--){var M=this.words[o0]|0,u0=l0.words[o0]|0;if(M!==u0){M<u0?z=-1:M>u0&&(z=1);break}}return z},Z.prototype.gtn=function(l0){return this.cmpn(l0)===1},Z.prototype.gt=function(l0){return this.cmp(l0)===1},Z.prototype.gten=function(l0){return this.cmpn(l0)>=0},Z.prototype.gte=function(l0){return this.cmp(l0)>=0},Z.prototype.ltn=function(l0){return this.cmpn(l0)===-1},Z.prototype.lt=function(l0){return this.cmp(l0)===-1},Z.prototype.lten=function(l0){return this.cmpn(l0)<=0},Z.prototype.lte=function(l0){return this.cmp(l0)<=0},Z.prototype.eqn=function(l0){return this.cmpn(l0)===0},Z.prototype.eq=function(l0){return this.cmp(l0)===0},Z.red=function(l0){return new b0(l0)},Z.prototype.toRed=function(l0){return Y(!this.red,"Already a number in reduction context"),Y(this.negative===0,"red works only with positives"),l0.convertTo(this)._forceRed(l0)},Z.prototype.fromRed=function(){return Y(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},Z.prototype._forceRed=function(l0){return this.red=l0,this},Z.prototype.forceRed=function(l0){return Y(!this.red,"Already a number in reduction context"),this._forceRed(l0)},Z.prototype.redAdd=function(l0){return Y(this.red,"redAdd works only with red numbers"),this.red.add(this,l0)},Z.prototype.redIAdd=function(l0){return Y(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,l0)},Z.prototype.redSub=function(l0){return Y(this.red,"redSub works only with red numbers"),this.red.sub(this,l0)},Z.prototype.redISub=function(l0){return Y(this.red,"redISub works only with red numbers"),this.red.isub(this,l0)},Z.prototype.redShl=function(l0){return Y(this.red,"redShl works only with red numbers"),this.red.shl(this,l0)},Z.prototype.redMul=function(l0){return Y(this.red,"redMul works only with red numbers"),this.red._verify2(this,l0),this.red.mul(this,l0)},Z.prototype.redIMul=function(l0){return Y(this.red,"redMul works only with red numbers"),this.red._verify2(this,l0),this.red.imul(this,l0)},Z.prototype.redSqr=function(){return Y(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},Z.prototype.redISqr=function(){return Y(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},Z.prototype.redSqrt=function(){return Y(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},Z.prototype.redInvm=function(){return Y(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},Z.prototype.redNeg=function(){return Y(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},Z.prototype.redPow=function(l0){return Y(this.red&&!l0.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,l0)};var c0={k256:null,p224:null,p192:null,p25519:null};function C(l0,z){this.name=l0,this.p=new Z(z,16),this.n=this.p.bitLength(),this.k=new Z(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}C.prototype._tmp=function(){var l0=new Z(null);return l0.words=new Array(Math.ceil(this.n/13)),l0},C.prototype.ireduce=function(l0){var z=l0,o0;do this.split(z,this.tmp),z=this.imulK(z),z=z.iadd(this.tmp),o0=z.bitLength();while(o0>this.n);var M=o0<this.n?-1:z.ucmp(this.p);return M===0?(z.words[0]=0,z.length=1):M>0?z.isub(this.p):z.strip!==void 0?z.strip():z._strip(),z},C.prototype.split=function(l0,z){l0.iushrn(this.n,0,z)},C.prototype.imulK=function(l0){return l0.imul(this.k)};function h0(){C.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}$(h0,C),h0.prototype.split=function(l0,z){for(var o0=4194303,M=Math.min(l0.length,9),u0=0;u0<M;u0++)z.words[u0]=l0.words[u0];if(z.length=M,l0.length<=9){l0.words[0]=0,l0.length=1;return}var S=l0.words[9];for(z.words[z.length++]=S&o0,u0=10;u0<l0.length;u0++){var n0=l0.words[u0]|0;l0.words[u0-10]=(n0&o0)<<4|S>>>22,S=n0}S>>>=22,l0.words[u0-10]=S,S===0&&l0.length>10?l0.length-=10:l0.length-=9},h0.prototype.imulK=function(l0){l0.words[l0.length]=0,l0.words[l0.length+1]=0,l0.length+=2;for(var z=0,o0=0;o0<l0.length;o0++){var M=l0.words[o0]|0;z+=M*977,l0.words[o0]=z&67108863,z=M*64+(z/67108864|0)}return l0.words[l0.length-1]===0&&(l0.length--,l0.words[l0.length-1]===0&&l0.length--),l0};function L(){C.call(this,"p224","ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001")}$(L,C);function d0(){C.call(this,"p192","ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff")}$(d0,C);function R(){C.call(this,"25519","7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed")}$(R,C),R.prototype.imulK=function(l0){for(var z=0,o0=0;o0<l0.length;o0++){var M=(l0.words[o0]|0)*19+z,u0=M&67108863;M>>>=26,l0.words[o0]=u0,z=M}return z!==0&&(l0.words[l0.length++]=z),l0},Z._prime=function(l0){if(c0[l0])return c0[l0];var z;if(l0==="k256")z=new h0;else if(l0==="p224")z=new L;else if(l0==="p192")z=new d0;else if(l0==="p25519")z=new R;else throw new Error("Unknown prime "+l0);return c0[l0]=z,z};function b0(l0){if(typeof l0=="string"){var z=Z._prime(l0);this.m=z.p,this.prime=z}else Y(l0.gtn(1),"modulus must be greater than 1"),this.m=l0,this.prime=null}b0.prototype._verify1=function(l0){Y(l0.negative===0,"red works only with positives"),Y(l0.red,"red works only with red numbers")},b0.prototype._verify2=function(l0,z){Y((l0.negative|z.negative)===0,"red works only with positives"),Y(l0.red&&l0.red===z.red,"red works only with red numbers")},b0.prototype.imod=function(l0){return this.prime?this.prime.ireduce(l0)._forceRed(this):l0.umod(this.m)._forceRed(this)},b0.prototype.neg=function(l0){return l0.isZero()?l0.clone():this.m.sub(l0)._forceRed(this)},b0.prototype.add=function(l0,z){this._verify2(l0,z);var o0=l0.add(z);return o0.cmp(this.m)>=0&&o0.isub(this.m),o0._forceRed(this)},b0.prototype.iadd=function(l0,z){this._verify2(l0,z);var o0=l0.iadd(z);return o0.cmp(this.m)>=0&&o0.isub(this.m),o0},b0.prototype.sub=function(l0,z){this._verify2(l0,z);var o0=l0.sub(z);return o0.cmpn(0)<0&&o0.iadd(this.m),o0._forceRed(this)},b0.prototype.isub=function(l0,z){this._verify2(l0,z);var o0=l0.isub(z);return o0.cmpn(0)<0&&o0.iadd(this.m),o0},b0.prototype.shl=function(l0,z){return this._verify1(l0),this.imod(l0.ushln(z))},b0.prototype.imul=function(l0,z){return this._verify2(l0,z),this.imod(l0.imul(z))},b0.prototype.mul=function(l0,z){return this._verify2(l0,z),this.imod(l0.mul(z))},b0.prototype.isqr=function(l0){return this.imul(l0,l0.clone())},b0.prototype.sqr=function(l0){return this.mul(l0,l0)},b0.prototype.sqrt=function(l0){if(l0.isZero())return l0.clone();var z=this.m.andln(3);if(Y(z%2===1),z===3){var o0=this.m.add(new Z(1)).iushrn(2);return this.pow(l0,o0)}for(var M=this.m.subn(1),u0=0;!M.isZero()&&M.andln(1)===0;)u0++,M.iushrn(1);Y(!M.isZero());var S=new Z(1).toRed(this),n0=S.redNeg(),v=this.m.subn(1).iushrn(1),s0=this.m.bitLength();for(s0=new Z(2*s0*s0).toRed(this);this.pow(s0,v).cmp(n0)!==0;)s0.redIAdd(n0);for(var I=this.pow(s0,M),t0=this.pow(l0,M.addn(1).iushrn(1)),m0=this.pow(l0,M),a0=u0;m0.cmp(S)!==0;){for(var q=m0,e0=0;q.cmp(S)!==0;e0++)q=q.redSqr();Y(e0<a0);var r0=this.pow(I,new Z(1).iushln(a0-e0-1));t0=t0.redMul(r0),I=r0.redSqr(),m0=m0.redMul(I),a0=e0}return t0},b0.prototype.invm=function(l0){var z=l0._invmp(this.m);return z.negative!==0?(z.negative=0,this.imod(z).redNeg()):this.imod(z)},b0.prototype.pow=function(l0,z){if(z.isZero())return new Z(1).toRed(this);if(z.cmpn(1)===0)return l0.clone();var o0=4,M=new Array(1<<o0);M[0]=new Z(1).toRed(this),M[1]=l0;for(var u0=2;u0<M.length;u0++)M[u0]=this.mul(M[u0-1],l0);var S=M[0],n0=0,v=0,s0=z.bitLength()%26;for(s0===0&&(s0=26),u0=z.length-1;u0>=0;u0--){for(var I=z.words[u0],t0=s0-1;t0>=0;t0--){var m0=I>>t0&1;if(S!==M[0]&&(S=this.sqr(S)),m0===0&&n0===0){v=0;continue}n0<<=1,n0|=m0,v++,!(v!==o0&&(u0!==0||t0!==0))&&(S=this.mul(S,M[n0]),v=0,n0=0)}s0=26}return S},b0.prototype.convertTo=function(l0){var z=l0.umod(this.m);return z===l0?z.clone():z},b0.prototype.convertFrom=function(l0){var z=l0.clone();return z.red=null,z},Z.mont=function(l0){return new P(l0)};function P(l0){b0.call(this,l0),this.shift=this.m.bitLength(),this.shift%26!==0&&(this.shift+=26-this.shift%26),this.r=new Z(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)}$(P,b0),P.prototype.convertTo=function(l0){return this.imod(l0.ushln(this.shift))},P.prototype.convertFrom=function(l0){var z=this.imod(l0.mul(this.rinv));return z.red=null,z},P.prototype.imul=function(l0,z){if(l0.isZero()||z.isZero())return l0.words[0]=0,l0.length=1,l0;var o0=l0.imul(z),M=o0.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),u0=o0.isub(M).iushrn(this.shift),S=u0;return u0.cmp(this.m)>=0?S=u0.isub(this.m):u0.cmpn(0)<0&&(S=u0.iadd(this.m)),S._forceRed(this)},P.prototype.mul=function(l0,z){if(l0.isZero()||z.isZero())return new Z(0)._forceRed(this);var o0=l0.mul(z),M=o0.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),u0=o0.isub(M).iushrn(this.shift),S=u0;return u0.cmp(this.m)>=0?S=u0.isub(this.m):u0.cmpn(0)<0&&(S=u0.iadd(this.m)),S._forceRed(this)},P.prototype.invm=function(l0){var z=this.imod(l0._invmp(this.m).mul(this.r2));return z._forceRed(this)}})(typeof K>"u"||K,X)}}),NQ=$Q({"(disabled):node_modules/crypto-browserify/index.js"(){}}),xQ=$Q({"node_modules/brorand/index.js"(X,K){var x0;K.exports=function(Y){return x0||(x0=new G(null)),x0.generate(Y)};function G(Y){this.rand=Y}K.exports.Rand=G,G.prototype.generate=function(Y){return this._rand(Y)},G.prototype._rand=function(Y){var $=new c$(Y);return d$.getRandomValues($),$}}}),BQ=$Q({"node_modules/miller-rabin/lib/mr.js"(X,K){var x0=_Q(),G=xQ();function Y($){this.rand=$||new G.Rand}K.exports=Y,Y.create=function($){return new Y($)},Y.prototype._randbelow=function($){var Z=$.bitLength(),Q=Math.ceil(Z/8);do var U=new x0(this.rand.generate(Q));while(U.cmp($)>=0);return U},Y.prototype._randrange=function($,Z){var Q=Z.sub($);return $.add(this._randbelow(Q))},Y.prototype.test=function($,Z,Q){var U=$.bitLength(),V=x0.mont($),B0=new x0(1).toRed(V);Z||(Z=Math.max(1,U/48|0));for(var H=$.subn(1),y0=0;!H.testn(y0);y0++);for(var W=$.shrn(y0),w0=H.toRed(V),E=!0;Z>0;Z--){var p0=this._randrange(new x0(2),H);Q&&Q(p0);var T=p0.toRed(V).redPow(W);if(!(T.cmp(B0)===0||T.cmp(w0)===0)){for(var f0=1;f0<y0;f0++){if(T=T.redSqr(),T.cmp(B0)===0)return!1;if(T.cmp(w0)===0)break}if(f0===y0)return!1}}return E},Y.prototype.getDivisor=function($,Z){var Q=$.bitLength(),U=x0.mont($),V=new x0(1).toRed(U);Z||(Z=Math.max(1,Q/48|0));for(var B0=$.subn(1),H=0;!B0.testn(H);H++);for(var y0=$.shrn(H),W=B0.toRed(U);Z>0;Z--){var w0=this._randrange(new x0(2),B0),E=$.gcd(w0);if(E.cmpn(1)!==0)return E;var p0=w0.toRed(U).redPow(y0);if(!(p0.cmp(V)===0||p0.cmp(W)===0)){for(var T=1;T<H;T++){if(p0=p0.redSqr(),p0.cmp(V)===0)return p0.fromRed().subn(1).gcd($);if(p0.cmp(W)===0)break}if(T===H)return p0=p0.redSqr(),p0.fromRed().subn(1).gcd($)}}return!1}}}),yQ=$Q({"node_modules/diffie-hellman/lib/generatePrime.js"(X,K){var x0=ZQ();K.exports=h0,h0.simpleSieve=c0,h0.fermatTest=C;var G=A(),Y=new G(24),$=BQ(),Z=new $,Q=new G(1),U=new G(2),V=new G(5),B0=new G(16),H=new G(8),y0=new G(10),W=new G(3),w0=new G(7),E=new G(11),p0=new G(4),T=new G(12),f0=null;function D(){if(f0!==null)return f0;var L=1048576,d0=[];d0[0]=2;for(var R=1,b0=3;b0<L;b0+=2){for(var P=Math.ceil(Math.sqrt(b0)),l0=0;l0<R&&d0[l0]<=P&&b0%d0[l0]!==0;l0++);R!==l0&&d0[l0]<=P||(d0[R++]=b0)}return f0=d0,d0}function c0(L){for(var d0=D(),R=0;R<d0.length;R++)if(L.modn(d0[R])===0)return L.cmpn(d0[R])===0;return!0}function C(L){var d0=G.mont(L);return U.toRed(d0).redPow(L.subn(1)).fromRed().cmpn(1)===0}function h0(L,d0){if(L<16)return d0===2||d0===5?new G([140,123]):new G([140,39]);d0=new G(d0);for(var R,b0;;){for(R=new G(x0(Math.ceil(L/8)));R.bitLength()>L;)R.ishrn(1);if(R.isEven()&&R.iadd(Q),R.testn(1)||R.iadd(U),d0.cmp(U)){if(!d0.cmp(V))for(;R.mod(y0).cmp(W);)R.iadd(p0)}else for(;R.mod(Y).cmp(E);)R.iadd(p0);if(b0=R.shrn(1),c0(b0)&&c0(R)&&C(b0)&&C(R)&&Z.test(b0)&&Z.test(R))return R}}}}),wQ=$Q({"node_modules/diffie-hellman/lib/primes.json"(X,K){K.exports={modp1:{gen:"02",prime:"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a63a3620ffffffffffffffff"},modp2:{gen:"02",prime:"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece65381ffffffffffffffff"},modp5:{gen:"02",prime:"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca237327ffffffffffffffff"},modp14:{gen:"02",prime:"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca18217c32905e462e36ce3be39e772c180e86039b2783a2ec07a28fb5c55df06f4c52c9de2bcbf6955817183995497cea956ae515d2261898fa051015728e5a8aacaa68ffffffffffffffff"},modp15:{gen:"02",prime:"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca18217c32905e462e36ce3be39e772c180e86039b2783a2ec07a28fb5c55df06f4c52c9de2bcbf6955817183995497cea956ae515d2261898fa051015728e5a8aaac42dad33170d04507a33a85521abdf1cba64ecfb850458dbef0a8aea71575d060c7db3970f85a6e1e4c7abf5ae8cdb0933d71e8c94e04a25619dcee3d2261ad2ee6bf12ffa06d98a0864d87602733ec86a64521f2b18177b200cbbe117577a615d6c770988c0bad946e208e24fa074e5ab3143db5bfce0fd108e4b82d120a93ad2caffffffffffffffff"},modp16:{gen:"02",prime:"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca18217c32905e462e36ce3be39e772c180e86039b2783a2ec07a28fb5c55df06f4c52c9de2bcbf6955817183995497cea956ae515d2261898fa051015728e5a8aaac42dad33170d04507a33a85521abdf1cba64ecfb850458dbef0a8aea71575d060c7db3970f85a6e1e4c7abf5ae8cdb0933d71e8c94e04a25619dcee3d2261ad2ee6bf12ffa06d98a0864d87602733ec86a64521f2b18177b200cbbe117577a615d6c770988c0bad946e208e24fa074e5ab3143db5bfce0fd108e4b82d120a92108011a723c12a787e6d788719a10bdba5b2699c327186af4e23c1a946834b6150bda2583e9ca2ad44ce8dbbbc2db04de8ef92e8efc141fbecaa6287c59474e6bc05d99b2964fa090c3a2233ba186515be7ed1f612970cee2d7afb81bdd762170481cd0069127d5b05aa993b4ea988d8fddc186ffb7dc90a6c08f4df435c934063199ffffffffffffffff"},modp17:{gen:"02",prime:"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca18217c32905e462e36ce3be39e772c180e86039b2783a2ec07a28fb5c55df06f4c52c9de2bcbf6955817183995497cea956ae515d2261898fa051015728e5a8aaac42dad33170d04507a33a85521abdf1cba64ecfb850458dbef0a8aea71575d060c7db3970f85a6e1e4c7abf5ae8cdb0933d71e8c94e04a25619dcee3d2261ad2ee6bf12ffa06d98a0864d87602733ec86a64521f2b18177b200cbbe117577a615d6c770988c0bad946e208e24fa074e5ab3143db5bfce0fd108e4b82d120a92108011a723c12a787e6d788719a10bdba5b2699c327186af4e23c1a946834b6150bda2583e9ca2ad44ce8dbbbc2db04de8ef92e8efc141fbecaa6287c59474e6bc05d99b2964fa090c3a2233ba186515be7ed1f612970cee2d7afb81bdd762170481cd0069127d5b05aa993b4ea988d8fddc186ffb7dc90a6c08f4df435c93402849236c3fab4d27c7026c1d4dcb2602646dec9751e763dba37bdf8ff9406ad9e530ee5db382f413001aeb06a53ed9027d831179727b0865a8918da3edbebcf9b14ed44ce6cbaced4bb1bdb7f1447e6cc254b332051512bd7af426fb8f401378cd2bf5983ca01c64b92ecf032ea15d1721d03f482d7ce6e74fef6d55e702f46980c82b5a84031900b1c9e59e7c97fbec7e8f323a97a7e36cc88be0f1d45b7ff585ac54bd407b22b4154aacc8f6d7ebf48e1d814cc5ed20f8037e0a79715eef29be32806a1d58bb7c5da76f550aa3d8a1fbff0eb19ccb1a313d55cda56c9ec2ef29632387fe8d76e3c0468043e8f663f4860ee12bf2d5b0b7474d6e694f91e6dcc4024ffffffffffffffff"},modp18:{gen:"02",prime:"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca18217c32905e462e36ce3be39e772c180e86039b2783a2ec07a28fb5c55df06f4c52c9de2bcbf6955817183995497cea956ae515d2261898fa051015728e5a8aaac42dad33170d04507a33a85521abdf1cba64ecfb850458dbef0a8aea71575d060c7db3970f85a6e1e4c7abf5ae8cdb0933d71e8c94e04a25619dcee3d2261ad2ee6bf12ffa06d98a0864d87602733ec86a64521f2b18177b200cbbe117577a615d6c770988c0bad946e208e24fa074e5ab3143db5bfce0fd108e4b82d120a92108011a723c12a787e6d788719a10bdba5b2699c327186af4e23c1a946834b6150bda2583e9ca2ad44ce8dbbbc2db04de8ef92e8efc141fbecaa6287c59474e6bc05d99b2964fa090c3a2233ba186515be7ed1f612970cee2d7afb81bdd762170481cd0069127d5b05aa993b4ea988d8fddc186ffb7dc90a6c08f4df435c93402849236c3fab4d27c7026c1d4dcb2602646dec9751e763dba37bdf8ff9406ad9e530ee5db382f413001aeb06a53ed9027d831179727b0865a8918da3edbebcf9b14ed44ce6cbaced4bb1bdb7f1447e6cc254b332051512bd7af426fb8f401378cd2bf5983ca01c64b92ecf032ea15d1721d03f482d7ce6e74fef6d55e702f46980c82b5a84031900b1c9e59e7c97fbec7e8f323a97a7e36cc88be0f1d45b7ff585ac54bd407b22b4154aacc8f6d7ebf48e1d814cc5ed20f8037e0a79715eef29be32806a1d58bb7c5da76f550aa3d8a1fbff0eb19ccb1a313d55cda56c9ec2ef29632387fe8d76e3c0468043e8f663f4860ee12bf2d5b0b7474d6e694f91e6dbe115974a3926f12fee5e438777cb6a932df8cd8bec4d073b931ba3bc832b68d9dd300741fa7bf8afc47ed2576f6936ba424663aab639c5ae4f5683423b4742bf1c978238f16cbe39d652de3fdb8befc848ad922222e04a4037c0713eb57a81a23f0c73473fc646cea306b4bcbc8862f8385ddfa9d4b7fa2c087e879683303ed5bdd3a062b3cf5b3a278a66d2a13f83f44f82ddf310ee074ab6a364597e899a0255dc164f31cc50846851df9ab48195ded7ea1b1d510bd7ee74d73faf36bc31ecfa268359046f4eb879f924009438b481c6cd7889a002ed5ee382bc9190da6fc026e479558e4475677e9aa9e3050e2765694dfc81f56e880b96e7160c980dd98edd3dfffffffffffffffff"}}}}),pQ=$Q({"node_modules/diffie-hellman/lib/dh.js"(X,K){var x0=A(),G=BQ(),Y=new G,$=new x0(24),Z=new x0(11),Q=new x0(10),U=new x0(3),V=new x0(7),B0=yQ(),H=ZQ();K.exports=p0;function y0(f0,D){return D=D||"utf8",c$.isBuffer(f0)||(f0=new c$(f0,D)),this._pub=new x0(f0),this}function W(f0,D){return D=D||"utf8",c$.isBuffer(f0)||(f0=new c$(f0,D)),this._priv=new x0(f0),this}var w0={};function E(f0,D){var c0=D.toString("hex"),C=[c0,f0.toString(16)].join("_");if(C in w0)return w0[C];var h0=0;if(f0.isEven()||!B0.simpleSieve||!B0.fermatTest(f0)||!Y.test(f0))return h0+=1,c0==="02"||c0==="05"?h0+=8:h0+=4,w0[C]=h0,h0;Y.test(f0.shrn(1))||(h0+=2);var L;switch(c0){case"02":f0.mod($).cmp(Z)&&(h0+=8);break;case"05":L=f0.mod(Q),L.cmp(U)&&L.cmp(V)&&(h0+=8);break;default:h0+=4}return w0[C]=h0,h0}function p0(f0,D,c0){this.setGenerator(D),this.__prime=new x0(f0),this._prime=x0.mont(this.__prime),this._primeLen=f0.length,this._pub=void 0,this._priv=void 0,this._primeCode=void 0,c0?(this.setPublicKey=y0,this.setPrivateKey=W):this._primeCode=8}Object.defineProperty(p0.prototype,"verifyError",{enumerable:!0,get:function(){return typeof this._primeCode!="number"&&(this._primeCode=E(this.__prime,this.__gen)),this._primeCode}}),p0.prototype.generateKeys=function(){return this._priv||(this._priv=new x0(H(this._primeLen))),this._pub=this._gen.toRed(this._prime).redPow(this._priv).fromRed(),this.getPublicKey()},p0.prototype.computeSecret=function(f0){f0=new x0(f0),f0=f0.toRed(this._prime);var D=f0.redPow(this._priv).fromRed(),c0=new c$(D.toArray()),C=this.getPrime();if(c0.length<C.length){var h0=new c$(C.length-c0.length);h0.fill(0),c0=c$.concat([h0,c0])}return c0},p0.prototype.getPublicKey=function(f0){return T(this._pub,f0)},p0.prototype.getPrivateKey=function(f0){return T(this._priv,f0)},p0.prototype.getPrime=function(f0){return T(this.__prime,f0)},p0.prototype.getGenerator=function(f0){return T(this._gen,f0)},p0.prototype.setGenerator=function(f0,D){return D=D||"utf8",c$.isBuffer(f0)||(f0=new c$(f0,D)),this.__gen=f0,this._gen=new x0(f0),this};function T(f0,D){var c0=new c$(f0.toArray());return D?c0.toString(D):c0}}}),fQ=$Q({"node_modules/diffie-hellman/browser.js"(X){var K=yQ(),x0=wQ(),G=pQ();function Y(Q){var U=new c$(x0[Q].prime,"hex"),V=new c$(x0[Q].gen,"hex");return new G(U,V)}var $={binary:!0,hex:!0,base64:!0};function Z(Q,U,V,B0){return c$.isBuffer(U)||$[U]===void 0?Z(Q,"binary",U,V):(U=U||"binary",B0=B0||"binary",V=V||new c$([2]),c$.isBuffer(V)||(V=new c$(V,B0)),typeof Q=="number"?new G(K(Q,V),V,!0):(c$.isBuffer(Q)||(Q=new c$(Q,U)),new G(Q,V,!0)))}X.DiffieHellmanGroup=X.createDiffieHellmanGroup=X.getDiffieHellman=Y,X.createDiffieHellman=X.DiffieHellman=Z}}),cQ=$Q({"node_modules/bn.js/lib/bn.js"(X,K){(function(x0,G){function Y(M,u0){if(!M)throw new Error(u0||"Assertion failed")}function $(M,u0){M.super_=u0;var S=function(){};S.prototype=u0.prototype,M.prototype=new S,M.prototype.constructor=M}function Z(M,u0,S){if(Z.isBN(M))return M;this.negative=0,this.words=null,this.length=0,this.red=null,M!==null&&((u0==="le"||u0==="be")&&(S=u0,u0=10),this._init(M||0,u0||10,S||"be"))}typeof x0=="object"?x0.exports=Z:G.BN=Z,Z.BN=Z,Z.wordSize=26;var Q=c$;Z.isBN=function(M){return M instanceof Z?!0:M!==null&&typeof M=="object"&&M.constructor.wordSize===Z.wordSize&&Array.isArray(M.words)},Z.max=function(M,u0){return M.cmp(u0)>0?M:u0},Z.min=function(M,u0){return M.cmp(u0)<0?M:u0},Z.prototype._init=function(M,u0,S){if(typeof M=="number")return this._initNumber(M,u0,S);if(typeof M=="object")return this._initArray(M,u0,S);u0==="hex"&&(u0=16),Y(u0===(u0|0)&&u0>=2&&u0<=36),M=M.toString().replace(/\s+/g,"");var n0=0;M[0]==="-"&&(n0++,this.negative=1),n0<M.length&&(u0===16?this._parseHex(M,n0,S):(this._parseBase(M,u0,n0),S==="le"&&this._initArray(this.toArray(),u0,S)))},Z.prototype._initNumber=function(M,u0,S){M<0&&(this.negative=1,M=-M),M<67108864?(this.words=[M&67108863],this.length=1):M<4503599627370496?(this.words=[M&67108863,M/67108864&67108863],this.length=2):(Y(M<9007199254740992),this.words=[M&67108863,M/67108864&67108863,1],this.length=3),S==="le"&&this._initArray(this.toArray(),u0,S)},Z.prototype._initArray=function(M,u0,S){if(Y(typeof M.length=="number"),M.length<=0)return this.words=[0],this.length=1,this;this.length=Math.ceil(M.length/3),this.words=new Array(this.length);for(var n0=0;n0<this.length;n0++)this.words[n0]=0;var v,s0,I=0;if(S==="be")for(n0=M.length-1,v=0;n0>=0;n0-=3)s0=M[n0]|M[n0-1]<<8|M[n0-2]<<16,this.words[v]|=s0<<I&67108863,this.words[v+1]=s0>>>26-I&67108863,I+=24,I>=26&&(I-=26,v++);else if(S==="le")for(n0=0,v=0;n0<M.length;n0+=3)s0=M[n0]|M[n0+1]<<8|M[n0+2]<<16,this.words[v]|=s0<<I&67108863,this.words[v+1]=s0>>>26-I&67108863,I+=24,I>=26&&(I-=26,v++);return this._strip()};function U(M,u0){var S=M.charCodeAt(u0);if(S>=48&&S<=57)return S-48;if(S>=65&&S<=70)return S-55;if(S>=97&&S<=102)return S-87;Y(!1,"Invalid character in "+M)}function V(M,u0,S){var n0=U(M,S);return S-1>=u0&&(n0|=U(M,S-1)<<4),n0}Z.prototype._parseHex=function(M,u0,S){this.length=Math.ceil((M.length-u0)/6),this.words=new Array(this.length);for(var n0=0;n0<this.length;n0++)this.words[n0]=0;var v=0,s0=0,I;if(S==="be")for(n0=M.length-1;n0>=u0;n0-=2)I=V(M,u0,n0)<<v,this.words[s0]|=I&67108863,v>=18?(v-=18,s0+=1,this.words[s0]|=I>>>26):v+=8;else{var t0=M.length-u0;for(n0=t0%2===0?u0+1:u0;n0<M.length;n0+=2)I=V(M,u0,n0)<<v,this.words[s0]|=I&67108863,v>=18?(v-=18,s0+=1,this.words[s0]|=I>>>26):v+=8}this._strip()};function B0(M,u0,S,n0){for(var v=0,s0=0,I=Math.min(M.length,S),t0=u0;t0<I;t0++){var m0=M.charCodeAt(t0)-48;v*=n0,m0>=49?s0=m0-49+10:m0>=17?s0=m0-17+10:s0=m0,Y(m0>=0&&s0<n0,"Invalid character"),v+=s0}return v}Z.prototype._parseBase=function(M,u0,S){this.words=[0],this.length=1;for(var n0=0,v=1;v<=67108863;v*=u0)n0++;n0--,v=v/u0|0;for(var s0=M.length-S,I=s0%n0,t0=Math.min(s0,s0-I)+S,m0=0,a0=S;a0<t0;a0+=n0)m0=B0(M,a0,a0+n0,u0),this.imuln(v),this.words[0]+m0<67108864?this.words[0]+=m0:this._iaddn(m0);if(I!==0){var q=1;for(m0=B0(M,a0,M.length,u0),a0=0;a0<I;a0++)q*=u0;this.imuln(q),this.words[0]+m0<67108864?this.words[0]+=m0:this._iaddn(m0)}this._strip()},Z.prototype.copy=function(M){M.words=new Array(this.length);for(var u0=0;u0<this.length;u0++)M.words[u0]=this.words[u0];M.length=this.length,M.negative=this.negative,M.red=this.red};function H(M,u0){M.words=u0.words,M.length=u0.length,M.negative=u0.negative,M.red=u0.red}if(Z.prototype._move=function(M){H(M,this)},Z.prototype.clone=function(){var M=new Z(null);return this.copy(M),M},Z.prototype._expand=function(M){for(;this.length<M;)this.words[this.length++]=0;return this},Z.prototype._strip=function(){for(;this.length>1&&this.words[this.length-1]===0;)this.length--;return this._normSign()},Z.prototype._normSign=function(){return this.length===1&&this.words[0]===0&&(this.negative=0),this},typeof Symbol<"u"&&typeof Symbol.for=="function")try{Z.prototype[Symbol.for("nodejs.util.inspect.custom")]=y0}catch{Z.prototype.inspect=y0}else Z.prototype.inspect=y0;function y0(){return(this.red?"<BN-R: ":"<BN: ")+this.toString(16)+">"}var W=["","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"],w0=[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],E=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64000000,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,24300000,28629151,33554432,39135393,45435424,52521875,60466176];Z.prototype.toString=function(M,u0){M=M||10,u0=u0|0||1;var S;if(M===16||M==="hex"){S="";for(var n0=0,v=0,s0=0;s0<this.length;s0++){var I=this.words[s0],t0=((I<<n0|v)&16777215).toString(16);v=I>>>24-n0&16777215,n0+=2,n0>=26&&(n0-=26,s0--),v!==0||s0!==this.length-1?S=W[6-t0.length]+t0+S:S=t0+S}for(v!==0&&(S=v.toString(16)+S);S.length%u0!==0;)S="0"+S;return this.negative!==0&&(S="-"+S),S}if(M===(M|0)&&M>=2&&M<=36){var m0=w0[M],a0=E[M];S="";var q=this.clone();for(q.negative=0;!q.isZero();){var e0=q.modrn(a0).toString(M);q=q.idivn(a0),q.isZero()?S=e0+S:S=W[m0-e0.length]+e0+S}for(this.isZero()&&(S="0"+S);S.length%u0!==0;)S="0"+S;return this.negative!==0&&(S="-"+S),S}Y(!1,"Base should be between 2 and 36")},Z.prototype.toNumber=function(){var M=this.words[0];return this.length===2?M+=this.words[1]*67108864:this.length===3&&this.words[2]===1?M+=4503599627370496+this.words[1]*67108864:this.length>2&&Y(!1,"Number can only safely store up to 53 bits"),this.negative!==0?-M:M},Z.prototype.toJSON=function(){return this.toString(16,2)},Q&&(Z.prototype.toBuffer=function(M,u0){return this.toArrayLike(Q,M,u0)}),Z.prototype.toArray=function(M,u0){return this.toArrayLike(Array,M,u0)};var p0=function(M,u0){return M.allocUnsafe?M.allocUnsafe(u0):new M(u0)};Z.prototype.toArrayLike=function(M,u0,S){this._strip();var n0=this.byteLength(),v=S||Math.max(1,n0);Y(n0<=v,"byte array longer than desired length"),Y(v>0,"Requested array length <= 0");var s0=p0(M,v),I=u0==="le"?"LE":"BE";return this["_toArrayLike"+I](s0,n0),s0},Z.prototype._toArrayLikeLE=function(M,u0){for(var S=0,n0=0,v=0,s0=0;v<this.length;v++){var I=this.words[v]<<s0|n0;M[S++]=I&255,S<M.length&&(M[S++]=I>>8&255),S<M.length&&(M[S++]=I>>16&255),s0===6?(S<M.length&&(M[S++]=I>>24&255),n0=0,s0=0):(n0=I>>>24,s0+=2)}if(S<M.length)for(M[S++]=n0;S<M.length;)M[S++]=0},Z.prototype._toArrayLikeBE=function(M,u0){for(var S=M.length-1,n0=0,v=0,s0=0;v<this.length;v++){var I=this.words[v]<<s0|n0;M[S--]=I&255,S>=0&&(M[S--]=I>>8&255),S>=0&&(M[S--]=I>>16&255),s0===6?(S>=0&&(M[S--]=I>>24&255),n0=0,s0=0):(n0=I>>>24,s0+=2)}if(S>=0)for(M[S--]=n0;S>=0;)M[S--]=0},Math.clz32?Z.prototype._countBits=function(M){return 32-Math.clz32(M)}:Z.prototype._countBits=function(M){var u0=M,S=0;return u0>=4096&&(S+=13,u0>>>=13),u0>=64&&(S+=7,u0>>>=7),u0>=8&&(S+=4,u0>>>=4),u0>=2&&(S+=2,u0>>>=2),S+u0},Z.prototype._zeroBits=function(M){if(M===0)return 26;var u0=M,S=0;return(u0&8191)===0&&(S+=13,u0>>>=13),(u0&127)===0&&(S+=7,u0>>>=7),(u0&15)===0&&(S+=4,u0>>>=4),(u0&3)===0&&(S+=2,u0>>>=2),(u0&1)===0&&S++,S},Z.prototype.bitLength=function(){var M=this.words[this.length-1],u0=this._countBits(M);return(this.length-1)*26+u0};function T(M){for(var u0=new Array(M.bitLength()),S=0;S<u0.length;S++){var n0=S/26|0,v=S%26;u0[S]=M.words[n0]>>>v&1}return u0}Z.prototype.zeroBits=function(){if(this.isZero())return 0;for(var M=0,u0=0;u0<this.length;u0++){var S=this._zeroBits(this.words[u0]);if(M+=S,S!==26)break}return M},Z.prototype.byteLength=function(){return Math.ceil(this.bitLength()/8)},Z.prototype.toTwos=function(M){return this.negative!==0?this.abs().inotn(M).iaddn(1):this.clone()},Z.prototype.fromTwos=function(M){return this.testn(M-1)?this.notn(M).iaddn(1).ineg():this.clone()},Z.prototype.isNeg=function(){return this.negative!==0},Z.prototype.neg=function(){return this.clone().ineg()},Z.prototype.ineg=function(){return this.isZero()||(this.negative^=1),this},Z.prototype.iuor=function(M){for(;this.length<M.length;)this.words[this.length++]=0;for(var u0=0;u0<M.length;u0++)this.words[u0]=this.words[u0]|M.words[u0];return this._strip()},Z.prototype.ior=function(M){return Y((this.negative|M.negative)===0),this.iuor(M)},Z.prototype.or=function(M){return this.length>M.length?this.clone().ior(M):M.clone().ior(this)},Z.prototype.uor=function(M){return this.length>M.length?this.clone().iuor(M):M.clone().iuor(this)},Z.prototype.iuand=function(M){var u0;this.length>M.length?u0=M:u0=this;for(var S=0;S<u0.length;S++)this.words[S]=this.words[S]&M.words[S];return this.length=u0.length,this._strip()},Z.prototype.iand=function(M){return Y((this.negative|M.negative)===0),this.iuand(M)},Z.prototype.and=function(M){return this.length>M.length?this.clone().iand(M):M.clone().iand(this)},Z.prototype.uand=function(M){return this.length>M.length?this.clone().iuand(M):M.clone().iuand(this)},Z.prototype.iuxor=function(M){var u0,S;this.length>M.length?(u0=this,S=M):(u0=M,S=this);for(var n0=0;n0<S.length;n0++)this.words[n0]=u0.words[n0]^S.words[n0];if(this!==u0)for(;n0<u0.length;n0++)this.words[n0]=u0.words[n0];return this.length=u0.length,this._strip()},Z.prototype.ixor=function(M){return Y((this.negative|M.negative)===0),this.iuxor(M)},Z.prototype.xor=function(M){return this.length>M.length?this.clone().ixor(M):M.clone().ixor(this)},Z.prototype.uxor=function(M){return this.length>M.length?this.clone().iuxor(M):M.clone().iuxor(this)},Z.prototype.inotn=function(M){Y(typeof M=="number"&&M>=0);var u0=Math.ceil(M/26)|0,S=M%26;this._expand(u0),S>0&&u0--;for(var n0=0;n0<u0;n0++)this.words[n0]=~this.words[n0]&67108863;return S>0&&(this.words[n0]=~this.words[n0]&67108863>>26-S),this._strip()},Z.prototype.notn=function(M){return this.clone().inotn(M)},Z.prototype.setn=function(M,u0){Y(typeof M=="number"&&M>=0);var S=M/26|0,n0=M%26;return this._expand(S+1),u0?this.words[S]=this.words[S]|1<<n0:this.words[S]=this.words[S]&~(1<<n0),this._strip()},Z.prototype.iadd=function(M){var u0;if(this.negative!==0&&M.negative===0)return this.negative=0,u0=this.isub(M),this.negative^=1,this._normSign();if(this.negative===0&&M.negative!==0)return M.negative=0,u0=this.isub(M),M.negative=1,u0._normSign();var S,n0;this.length>M.length?(S=this,n0=M):(S=M,n0=this);for(var v=0,s0=0;s0<n0.length;s0++)u0=(S.words[s0]|0)+(n0.words[s0]|0)+v,this.words[s0]=u0&67108863,v=u0>>>26;for(;v!==0&&s0<S.length;s0++)u0=(S.words[s0]|0)+v,this.words[s0]=u0&67108863,v=u0>>>26;if(this.length=S.length,v!==0)this.words[this.length]=v,this.length++;else if(S!==this)for(;s0<S.length;s0++)this.words[s0]=S.words[s0];return this},Z.prototype.add=function(M){var u0;return M.negative!==0&&this.negative===0?(M.negative=0,u0=this.sub(M),M.negative^=1,u0):M.negative===0&&this.negative!==0?(this.negative=0,u0=M.sub(this),this.negative=1,u0):this.length>M.length?this.clone().iadd(M):M.clone().iadd(this)},Z.prototype.isub=function(M){if(M.negative!==0){M.negative=0;var u0=this.iadd(M);return M.negative=1,u0._normSign()}else if(this.negative!==0)return this.negative=0,this.iadd(M),this.negative=1,this._normSign();var S=this.cmp(M);if(S===0)return this.negative=0,this.length=1,this.words[0]=0,this;var n0,v;S>0?(n0=this,v=M):(n0=M,v=this);for(var s0=0,I=0;I<v.length;I++)u0=(n0.words[I]|0)-(v.words[I]|0)+s0,s0=u0>>26,this.words[I]=u0&67108863;for(;s0!==0&&I<n0.length;I++)u0=(n0.words[I]|0)+s0,s0=u0>>26,this.words[I]=u0&67108863;if(s0===0&&I<n0.length&&n0!==this)for(;I<n0.length;I++)this.words[I]=n0.words[I];return this.length=Math.max(this.length,I),n0!==this&&(this.negative=1),this._strip()},Z.prototype.sub=function(M){return this.clone().isub(M)};function f0(M,u0,S){S.negative=u0.negative^M.negative;var n0=M.length+u0.length|0;S.length=n0,n0=n0-1|0;var v=M.words[0]|0,s0=u0.words[0]|0,I=v*s0,t0=I&67108863,m0=I/67108864|0;S.words[0]=t0;for(var a0=1;a0<n0;a0++){for(var q=m0>>>26,e0=m0&67108863,r0=Math.min(a0,u0.length-1),i0=Math.max(0,a0-M.length+1);i0<=r0;i0++){var j=a0-i0|0;v=M.words[j]|0,s0=u0.words[i0]|0,I=v*s0+e0,q+=I/67108864|0,e0=I&67108863}S.words[a0]=e0|0,m0=q|0}return m0!==0?S.words[a0]=m0|0:S.length--,S._strip()}var D=function(M,u0,S){var n0=M.words,v=u0.words,s0=S.words,I=0,t0,m0,a0,q=n0[0]|0,e0=q&8191,r0=q>>>13,i0=n0[1]|0,j=i0&8191,$$=i0>>>13,k=n0[2]|0,Q$=k&8191,g=k>>>13,Y$=n0[3]|0,_=Y$&8191,Z$=Y$>>>13,N=n0[4]|0,G$=N&8191,x=N>>>13,V$=n0[5]|0,B=V$&8191,U$=V$>>>13,y=n0[6]|0,X$=y&8191,w=y>>>13,K$=n0[7]|0,p=K$&8191,I$=K$>>>13,f=n0[8]|0,O$=f&8191,c=f>>>13,J$=n0[9]|0,h=J$&8191,F$=J$>>>13,d=v[0]|0,A$=d&8191,b=d>>>13,H$=v[1]|0,l=H$&8191,W$=H$>>>13,o=v[2]|0,E$=o&8191,u=o>>>13,T$=v[3]|0,n=T$&8191,D$=T$>>>13,s=v[4]|0,C$=s&8191,t=s>>>13,L$=v[5]|0,m=L$&8191,R$=L$>>>13,a=v[6]|0,P$=a&8191,O=a>>>13,z$=v[7]|0,e=z$&8191,M$=z$>>>13,J=v[8]|0,S$=J&8191,F=J>>>13,v$=v[9]|0,r=v$&8191,q$=v$>>>13;S.negative=M.negative^u0.negative,S.length=19,t0=Math.imul(e0,A$),m0=Math.imul(e0,b),m0=m0+Math.imul(r0,A$)|0,a0=Math.imul(r0,b);var i=(I+t0|0)+((m0&8191)<<13)|0;I=(a0+(m0>>>13)|0)+(i>>>26)|0,i&=67108863,t0=Math.imul(j,A$),m0=Math.imul(j,b),m0=m0+Math.imul($$,A$)|0,a0=Math.imul($$,b),t0=t0+Math.imul(e0,l)|0,m0=m0+Math.imul(e0,W$)|0,m0=m0+Math.imul(r0,l)|0,a0=a0+Math.imul(r0,W$)|0;var j$=(I+t0|0)+((m0&8191)<<13)|0;I=(a0+(m0>>>13)|0)+(j$>>>26)|0,j$&=67108863,t0=Math.imul(Q$,A$),m0=Math.imul(Q$,b),m0=m0+Math.imul(g,A$)|0,a0=Math.imul(g,b),t0=t0+Math.imul(j,l)|0,m0=m0+Math.imul(j,W$)|0,m0=m0+Math.imul($$,l)|0,a0=a0+Math.imul($$,W$)|0,t0=t0+Math.imul(e0,E$)|0,m0=m0+Math.imul(e0,u)|0,m0=m0+Math.imul(r0,E$)|0,a0=a0+Math.imul(r0,u)|0;var k$=(I+t0|0)+((m0&8191)<<13)|0;I=(a0+(m0>>>13)|0)+(k$>>>26)|0,k$&=67108863,t0=Math.imul(_,A$),m0=Math.imul(_,b),m0=m0+Math.imul(Z$,A$)|0,a0=Math.imul(Z$,b),t0=t0+Math.imul(Q$,l)|0,m0=m0+Math.imul(Q$,W$)|0,m0=m0+Math.imul(g,l)|0,a0=a0+Math.imul(g,W$)|0,t0=t0+Math.imul(j,E$)|0,m0=m0+Math.imul(j,u)|0,m0=m0+Math.imul($$,E$)|0,a0=a0+Math.imul($$,u)|0,t0=t0+Math.imul(e0,n)|0,m0=m0+Math.imul(e0,D$)|0,m0=m0+Math.imul(r0,n)|0,a0=a0+Math.imul(r0,D$)|0;var g$=(I+t0|0)+((m0&8191)<<13)|0;I=(a0+(m0>>>13)|0)+(g$>>>26)|0,g$&=67108863,t0=Math.imul(G$,A$),m0=Math.imul(G$,b),m0=m0+Math.imul(x,A$)|0,a0=Math.imul(x,b),t0=t0+Math.imul(_,l)|0,m0=m0+Math.imul(_,W$)|0,m0=m0+Math.imul(Z$,l)|0,a0=a0+Math.imul(Z$,W$)|0,t0=t0+Math.imul(Q$,E$)|0,m0=m0+Math.imul(Q$,u)|0,m0=m0+Math.imul(g,E$)|0,a0=a0+Math.imul(g,u)|0,t0=t0+Math.imul(j,n)|0,m0=m0+Math.imul(j,D$)|0,m0=m0+Math.imul($$,n)|0,a0=a0+Math.imul($$,D$)|0,t0=t0+Math.imul(e0,C$)|0,m0=m0+Math.imul(e0,t)|0,m0=m0+Math.imul(r0,C$)|0,a0=a0+Math.imul(r0,t)|0;var _$=(I+t0|0)+((m0&8191)<<13)|0;I=(a0+(m0>>>13)|0)+(_$>>>26)|0,_$&=67108863,t0=Math.imul(B,A$),m0=Math.imul(B,b),m0=m0+Math.imul(U$,A$)|0,a0=Math.imul(U$,b),t0=t0+Math.imul(G$,l)|0,m0=m0+Math.imul(G$,W$)|0,m0=m0+Math.imul(x,l)|0,a0=a0+Math.imul(x,W$)|0,t0=t0+Math.imul(_,E$)|0,m0=m0+Math.imul(_,u)|0,m0=m0+Math.imul(Z$,E$)|0,a0=a0+Math.imul(Z$,u)|0,t0=t0+Math.imul(Q$,n)|0,m0=m0+Math.imul(Q$,D$)|0,m0=m0+Math.imul(g,n)|0,a0=a0+Math.imul(g,D$)|0,t0=t0+Math.imul(j,C$)|0,m0=m0+Math.imul(j,t)|0,m0=m0+Math.imul($$,C$)|0,a0=a0+Math.imul($$,t)|0,t0=t0+Math.imul(e0,m)|0,m0=m0+Math.imul(e0,R$)|0,m0=m0+Math.imul(r0,m)|0,a0=a0+Math.imul(r0,R$)|0;var N$=(I+t0|0)+((m0&8191)<<13)|0;I=(a0+(m0>>>13)|0)+(N$>>>26)|0,N$&=67108863,t0=Math.imul(X$,A$),m0=Math.imul(X$,b),m0=m0+Math.imul(w,A$)|0,a0=Math.imul(w,b),t0=t0+Math.imul(B,l)|0,m0=m0+Math.imul(B,W$)|0,m0=m0+Math.imul(U$,l)|0,a0=a0+Math.imul(U$,W$)|0,t0=t0+Math.imul(G$,E$)|0,m0=m0+Math.imul(G$,u)|0,m0=m0+Math.imul(x,E$)|0,a0=a0+Math.imul(x,u)|0,t0=t0+Math.imul(_,n)|0,m0=m0+Math.imul(_,D$)|0,m0=m0+Math.imul(Z$,n)|0,a0=a0+Math.imul(Z$,D$)|0,t0=t0+Math.imul(Q$,C$)|0,m0=m0+Math.imul(Q$,t)|0,m0=m0+Math.imul(g,C$)|0,a0=a0+Math.imul(g,t)|0,t0=t0+Math.imul(j,m)|0,m0=m0+Math.imul(j,R$)|0,m0=m0+Math.imul($$,m)|0,a0=a0+Math.imul($$,R$)|0,t0=t0+Math.imul(e0,P$)|0,m0=m0+Math.imul(e0,O)|0,m0=m0+Math.imul(r0,P$)|0,a0=a0+Math.imul(r0,O)|0;var $0=(I+t0|0)+((m0&8191)<<13)|0;I=(a0+(m0>>>13)|0)+($0>>>26)|0,$0&=67108863,t0=Math.imul(p,A$),m0=Math.imul(p,b),m0=m0+Math.imul(I$,A$)|0,a0=Math.imul(I$,b),t0=t0+Math.imul(X$,l)|0,m0=m0+Math.imul(X$,W$)|0,m0=m0+Math.imul(w,l)|0,a0=a0+Math.imul(w,W$)|0,t0=t0+Math.imul(B,E$)|0,m0=m0+Math.imul(B,u)|0,m0=m0+Math.imul(U$,E$)|0,a0=a0+Math.imul(U$,u)|0,t0=t0+Math.imul(G$,n)|0,m0=m0+Math.imul(G$,D$)|0,m0=m0+Math.imul(x,n)|0,a0=a0+Math.imul(x,D$)|0,t0=t0+Math.imul(_,C$)|0,m0=m0+Math.imul(_,t)|0,m0=m0+Math.imul(Z$,C$)|0,a0=a0+Math.imul(Z$,t)|0,t0=t0+Math.imul(Q$,m)|0,m0=m0+Math.imul(Q$,R$)|0,m0=m0+Math.imul(g,m)|0,a0=a0+Math.imul(g,R$)|0,t0=t0+Math.imul(j,P$)|0,m0=m0+Math.imul(j,O)|0,m0=m0+Math.imul($$,P$)|0,a0=a0+Math.imul($$,O)|0,t0=t0+Math.imul(e0,e)|0,m0=m0+Math.imul(e0,M$)|0,m0=m0+Math.imul(r0,e)|0,a0=a0+Math.imul(r0,M$)|0;var x$=(I+t0|0)+((m0&8191)<<13)|0;I=(a0+(m0>>>13)|0)+(x$>>>26)|0,x$&=67108863,t0=Math.imul(O$,A$),m0=Math.imul(O$,b),m0=m0+Math.imul(c,A$)|0,a0=Math.imul(c,b),t0=t0+Math.imul(p,l)|0,m0=m0+Math.imul(p,W$)|0,m0=m0+Math.imul(I$,l)|0,a0=a0+Math.imul(I$,W$)|0,t0=t0+Math.imul(X$,E$)|0,m0=m0+Math.imul(X$,u)|0,m0=m0+Math.imul(w,E$)|0,a0=a0+Math.imul(w,u)|0,t0=t0+Math.imul(B,n)|0,m0=m0+Math.imul(B,D$)|0,m0=m0+Math.imul(U$,n)|0,a0=a0+Math.imul(U$,D$)|0,t0=t0+Math.imul(G$,C$)|0,m0=m0+Math.imul(G$,t)|0,m0=m0+Math.imul(x,C$)|0,a0=a0+Math.imul(x,t)|0,t0=t0+Math.imul(_,m)|0,m0=m0+Math.imul(_,R$)|0,m0=m0+Math.imul(Z$,m)|0,a0=a0+Math.imul(Z$,R$)|0,t0=t0+Math.imul(Q$,P$)|0,m0=m0+Math.imul(Q$,O)|0,m0=m0+Math.imul(g,P$)|0,a0=a0+Math.imul(g,O)|0,t0=t0+Math.imul(j,e)|0,m0=m0+Math.imul(j,M$)|0,m0=m0+Math.imul($$,e)|0,a0=a0+Math.imul($$,M$)|0,t0=t0+Math.imul(e0,S$)|0,m0=m0+Math.imul(e0,F)|0,m0=m0+Math.imul(r0,S$)|0,a0=a0+Math.imul(r0,F)|0;var Q0=(I+t0|0)+((m0&8191)<<13)|0;I=(a0+(m0>>>13)|0)+(Q0>>>26)|0,Q0&=67108863,t0=Math.imul(h,A$),m0=Math.imul(h,b),m0=m0+Math.imul(F$,A$)|0,a0=Math.imul(F$,b),t0=t0+Math.imul(O$,l)|0,m0=m0+Math.imul(O$,W$)|0,m0=m0+Math.imul(c,l)|0,a0=a0+Math.imul(c,W$)|0,t0=t0+Math.imul(p,E$)|0,m0=m0+Math.imul(p,u)|0,m0=m0+Math.imul(I$,E$)|0,a0=a0+Math.imul(I$,u)|0,t0=t0+Math.imul(X$,n)|0,m0=m0+Math.imul(X$,D$)|0,m0=m0+Math.imul(w,n)|0,a0=a0+Math.imul(w,D$)|0,t0=t0+Math.imul(B,C$)|0,m0=m0+Math.imul(B,t)|0,m0=m0+Math.imul(U$,C$)|0,a0=a0+Math.imul(U$,t)|0,t0=t0+Math.imul(G$,m)|0,m0=m0+Math.imul(G$,R$)|0,m0=m0+Math.imul(x,m)|0,a0=a0+Math.imul(x,R$)|0,t0=t0+Math.imul(_,P$)|0,m0=m0+Math.imul(_,O)|0,m0=m0+Math.imul(Z$,P$)|0,a0=a0+Math.imul(Z$,O)|0,t0=t0+Math.imul(Q$,e)|0,m0=m0+Math.imul(Q$,M$)|0,m0=m0+Math.imul(g,e)|0,a0=a0+Math.imul(g,M$)|0,t0=t0+Math.imul(j,S$)|0,m0=m0+Math.imul(j,F)|0,m0=m0+Math.imul($$,S$)|0,a0=a0+Math.imul($$,F)|0,t0=t0+Math.imul(e0,r)|0,m0=m0+Math.imul(e0,q$)|0,m0=m0+Math.imul(r0,r)|0,a0=a0+Math.imul(r0,q$)|0;var B$=(I+t0|0)+((m0&8191)<<13)|0;I=(a0+(m0>>>13)|0)+(B$>>>26)|0,B$&=67108863,t0=Math.imul(h,l),m0=Math.imul(h,W$),m0=m0+Math.imul(F$,l)|0,a0=Math.imul(F$,W$),t0=t0+Math.imul(O$,E$)|0,m0=m0+Math.imul(O$,u)|0,m0=m0+Math.imul(c,E$)|0,a0=a0+Math.imul(c,u)|0,t0=t0+Math.imul(p,n)|0,m0=m0+Math.imul(p,D$)|0,m0=m0+Math.imul(I$,n)|0,a0=a0+Math.imul(I$,D$)|0,t0=t0+Math.imul(X$,C$)|0,m0=m0+Math.imul(X$,t)|0,m0=m0+Math.imul(w,C$)|0,a0=a0+Math.imul(w,t)|0,t0=t0+Math.imul(B,m)|0,m0=m0+Math.imul(B,R$)|0,m0=m0+Math.imul(U$,m)|0,a0=a0+Math.imul(U$,R$)|0,t0=t0+Math.imul(G$,P$)|0,m0=m0+Math.imul(G$,O)|0,m0=m0+Math.imul(x,P$)|0,a0=a0+Math.imul(x,O)|0,t0=t0+Math.imul(_,e)|0,m0=m0+Math.imul(_,M$)|0,m0=m0+Math.imul(Z$,e)|0,a0=a0+Math.imul(Z$,M$)|0,t0=t0+Math.imul(Q$,S$)|0,m0=m0+Math.imul(Q$,F)|0,m0=m0+Math.imul(g,S$)|0,a0=a0+Math.imul(g,F)|0,t0=t0+Math.imul(j,r)|0,m0=m0+Math.imul(j,q$)|0,m0=m0+Math.imul($$,r)|0,a0=a0+Math.imul($$,q$)|0;var Y0=(I+t0|0)+((m0&8191)<<13)|0;I=(a0+(m0>>>13)|0)+(Y0>>>26)|0,Y0&=67108863,t0=Math.imul(h,E$),m0=Math.imul(h,u),m0=m0+Math.imul(F$,E$)|0,a0=Math.imul(F$,u),t0=t0+Math.imul(O$,n)|0,m0=m0+Math.imul(O$,D$)|0,m0=m0+Math.imul(c,n)|0,a0=a0+Math.imul(c,D$)|0,t0=t0+Math.imul(p,C$)|0,m0=m0+Math.imul(p,t)|0,m0=m0+Math.imul(I$,C$)|0,a0=a0+Math.imul(I$,t)|0,t0=t0+Math.imul(X$,m)|0,m0=m0+Math.imul(X$,R$)|0,m0=m0+Math.imul(w,m)|0,a0=a0+Math.imul(w,R$)|0,t0=t0+Math.imul(B,P$)|0,m0=m0+Math.imul(B,O)|0,m0=m0+Math.imul(U$,P$)|0,a0=a0+Math.imul(U$,O)|0,t0=t0+Math.imul(G$,e)|0,m0=m0+Math.imul(G$,M$)|0,m0=m0+Math.imul(x,e)|0,a0=a0+Math.imul(x,M$)|0,t0=t0+Math.imul(_,S$)|0,m0=m0+Math.imul(_,F)|0,m0=m0+Math.imul(Z$,S$)|0,a0=a0+Math.imul(Z$,F)|0,t0=t0+Math.imul(Q$,r)|0,m0=m0+Math.imul(Q$,q$)|0,m0=m0+Math.imul(g,r)|0,a0=a0+Math.imul(g,q$)|0;var y$=(I+t0|0)+((m0&8191)<<13)|0;I=(a0+(m0>>>13)|0)+(y$>>>26)|0,y$&=67108863,t0=Math.imul(h,n),m0=Math.imul(h,D$),m0=m0+Math.imul(F$,n)|0,a0=Math.imul(F$,D$),t0=t0+Math.imul(O$,C$)|0,m0=m0+Math.imul(O$,t)|0,m0=m0+Math.imul(c,C$)|0,a0=a0+Math.imul(c,t)|0,t0=t0+Math.imul(p,m)|0,m0=m0+Math.imul(p,R$)|0,m0=m0+Math.imul(I$,m)|0,a0=a0+Math.imul(I$,R$)|0,t0=t0+Math.imul(X$,P$)|0,m0=m0+Math.imul(X$,O)|0,m0=m0+Math.imul(w,P$)|0,a0=a0+Math.imul(w,O)|0,t0=t0+Math.imul(B,e)|0,m0=m0+Math.imul(B,M$)|0,m0=m0+Math.imul(U$,e)|0,a0=a0+Math.imul(U$,M$)|0,t0=t0+Math.imul(G$,S$)|0,m0=m0+Math.imul(G$,F)|0,m0=m0+Math.imul(x,S$)|0,a0=a0+Math.imul(x,F)|0,t0=t0+Math.imul(_,r)|0,m0=m0+Math.imul(_,q$)|0,m0=m0+Math.imul(Z$,r)|0,a0=a0+Math.imul(Z$,q$)|0;var Z0=(I+t0|0)+((m0&8191)<<13)|0;I=(a0+(m0>>>13)|0)+(Z0>>>26)|0,Z0&=67108863,t0=Math.imul(h,C$),m0=Math.imul(h,t),m0=m0+Math.imul(F$,C$)|0,a0=Math.imul(F$,t),t0=t0+Math.imul(O$,m)|0,m0=m0+Math.imul(O$,R$)|0,m0=m0+Math.imul(c,m)|0,a0=a0+Math.imul(c,R$)|0,t0=t0+Math.imul(p,P$)|0,m0=m0+Math.imul(p,O)|0,m0=m0+Math.imul(I$,P$)|0,a0=a0+Math.imul(I$,O)|0,t0=t0+Math.imul(X$,e)|0,m0=m0+Math.imul(X$,M$)|0,m0=m0+Math.imul(w,e)|0,a0=a0+Math.imul(w,M$)|0,t0=t0+Math.imul(B,S$)|0,m0=m0+Math.imul(B,F)|0,m0=m0+Math.imul(U$,S$)|0,a0=a0+Math.imul(U$,F)|0,t0=t0+Math.imul(G$,r)|0,m0=m0+Math.imul(G$,q$)|0,m0=m0+Math.imul(x,r)|0,a0=a0+Math.imul(x,q$)|0;var w$=(I+t0|0)+((m0&8191)<<13)|0;I=(a0+(m0>>>13)|0)+(w$>>>26)|0,w$&=67108863,t0=Math.imul(h,m),m0=Math.imul(h,R$),m0=m0+Math.imul(F$,m)|0,a0=Math.imul(F$,R$),t0=t0+Math.imul(O$,P$)|0,m0=m0+Math.imul(O$,O)|0,m0=m0+Math.imul(c,P$)|0,a0=a0+Math.imul(c,O)|0,t0=t0+Math.imul(p,e)|0,m0=m0+Math.imul(p,M$)|0,m0=m0+Math.imul(I$,e)|0,a0=a0+Math.imul(I$,M$)|0,t0=t0+Math.imul(X$,S$)|0,m0=m0+Math.imul(X$,F)|0,m0=m0+Math.imul(w,S$)|0,a0=a0+Math.imul(w,F)|0,t0=t0+Math.imul(B,r)|0,m0=m0+Math.imul(B,q$)|0,m0=m0+Math.imul(U$,r)|0,a0=a0+Math.imul(U$,q$)|0;var G0=(I+t0|0)+((m0&8191)<<13)|0;I=(a0+(m0>>>13)|0)+(G0>>>26)|0,G0&=67108863,t0=Math.imul(h,P$),m0=Math.imul(h,O),m0=m0+Math.imul(F$,P$)|0,a0=Math.imul(F$,O),t0=t0+Math.imul(O$,e)|0,m0=m0+Math.imul(O$,M$)|0,m0=m0+Math.imul(c,e)|0,a0=a0+Math.imul(c,M$)|0,t0=t0+Math.imul(p,S$)|0,m0=m0+Math.imul(p,F)|0,m0=m0+Math.imul(I$,S$)|0,a0=a0+Math.imul(I$,F)|0,t0=t0+Math.imul(X$,r)|0,m0=m0+Math.imul(X$,q$)|0,m0=m0+Math.imul(w,r)|0,a0=a0+Math.imul(w,q$)|0;var p$=(I+t0|0)+((m0&8191)<<13)|0;I=(a0+(m0>>>13)|0)+(p$>>>26)|0,p$&=67108863,t0=Math.imul(h,e),m0=Math.imul(h,M$),m0=m0+Math.imul(F$,e)|0,a0=Math.imul(F$,M$),t0=t0+Math.imul(O$,S$)|0,m0=m0+Math.imul(O$,F)|0,m0=m0+Math.imul(c,S$)|0,a0=a0+Math.imul(c,F)|0,t0=t0+Math.imul(p,r)|0,m0=m0+Math.imul(p,q$)|0,m0=m0+Math.imul(I$,r)|0,a0=a0+Math.imul(I$,q$)|0;var V0=(I+t0|0)+((m0&8191)<<13)|0;I=(a0+(m0>>>13)|0)+(V0>>>26)|0,V0&=67108863,t0=Math.imul(h,S$),m0=Math.imul(h,F),m0=m0+Math.imul(F$,S$)|0,a0=Math.imul(F$,F),t0=t0+Math.imul(O$,r)|0,m0=m0+Math.imul(O$,q$)|0,m0=m0+Math.imul(c,r)|0,a0=a0+Math.imul(c,q$)|0;var f$=(I+t0|0)+((m0&8191)<<13)|0;I=(a0+(m0>>>13)|0)+(f$>>>26)|0,f$&=67108863,t0=Math.imul(h,r),m0=Math.imul(h,q$),m0=m0+Math.imul(F$,r)|0,a0=Math.imul(F$,q$);var U0=(I+t0|0)+((m0&8191)<<13)|0;return I=(a0+(m0>>>13)|0)+(U0>>>26)|0,U0&=67108863,s0[0]=i,s0[1]=j$,s0[2]=k$,s0[3]=g$,s0[4]=_$,s0[5]=N$,s0[6]=$0,s0[7]=x$,s0[8]=Q0,s0[9]=B$,s0[10]=Y0,s0[11]=y$,s0[12]=Z0,s0[13]=w$,s0[14]=G0,s0[15]=p$,s0[16]=V0,s0[17]=f$,s0[18]=U0,I!==0&&(s0[19]=I,S.length++),S};Math.imul||(D=f0);function c0(M,u0,S){S.negative=u0.negative^M.negative,S.length=M.length+u0.length;for(var n0=0,v=0,s0=0;s0<S.length-1;s0++){var I=v;v=0;for(var t0=n0&67108863,m0=Math.min(s0,u0.length-1),a0=Math.max(0,s0-M.length+1);a0<=m0;a0++){var q=s0-a0,e0=M.words[q]|0,r0=u0.words[a0]|0,i0=e0*r0,j=i0&67108863;I=I+(i0/67108864|0)|0,j=j+t0|0,t0=j&67108863,I=I+(j>>>26)|0,v+=I>>>26,I&=67108863}S.words[s0]=t0,n0=I,I=v}return n0!==0?S.words[s0]=n0:S.length--,S._strip()}function C(M,u0,S){return c0(M,u0,S)}Z.prototype.mulTo=function(M,u0){var S,n0=this.length+M.length;return this.length===10&&M.length===10?S=D(this,M,u0):n0<63?S=f0(this,M,u0):n0<1024?S=c0(this,M,u0):S=C(this,M,u0),S};function h0(M,u0){this.x=M,this.y=u0}h0.prototype.makeRBT=function(M){for(var u0=new Array(M),S=Z.prototype._countBits(M)-1,n0=0;n0<M;n0++)u0[n0]=this.revBin(n0,S,M);return u0},h0.prototype.revBin=function(M,u0,S){if(M===0||M===S-1)return M;for(var n0=0,v=0;v<u0;v++)n0|=(M&1)<<u0-v-1,M>>=1;return n0},h0.prototype.permute=function(M,u0,S,n0,v,s0){for(var I=0;I<s0;I++)n0[I]=u0[M[I]],v[I]=S[M[I]]},h0.prototype.transform=function(M,u0,S,n0,v,s0){this.permute(s0,M,u0,S,n0,v);for(var I=1;I<v;I<<=1)for(var t0=I<<1,m0=Math.cos(2*Math.PI/t0),a0=Math.sin(2*Math.PI/t0),q=0;q<v;q+=t0)for(var e0=m0,r0=a0,i0=0;i0<I;i0++){var j=S[q+i0],$$=n0[q+i0],k=S[q+i0+I],Q$=n0[q+i0+I],g=e0*k-r0*Q$;Q$=e0*Q$+r0*k,k=g,S[q+i0]=j+k,n0[q+i0]=$$+Q$,S[q+i0+I]=j-k,n0[q+i0+I]=$$-Q$,i0!==t0&&(g=m0*e0-a0*r0,r0=m0*r0+a0*e0,e0=g)}},h0.prototype.guessLen13b=function(M,u0){var S=Math.max(u0,M)|1,n0=S&1,v=0;for(S=S/2|0;S;S=S>>>1)v++;return 1<<v+1+n0},h0.prototype.conjugate=function(M,u0,S){if(!(S<=1))for(var n0=0;n0<S/2;n0++){var v=M[n0];M[n0]=M[S-n0-1],M[S-n0-1]=v,v=u0[n0],u0[n0]=-u0[S-n0-1],u0[S-n0-1]=-v}},h0.prototype.normalize13b=function(M,u0){for(var S=0,n0=0;n0<u0/2;n0++){var v=Math.round(M[2*n0+1]/u0)*8192+Math.round(M[2*n0]/u0)+S;M[n0]=v&67108863,v<67108864?S=0:S=v/67108864|0}return M},h0.prototype.convert13b=function(M,u0,S,n0){for(var v=0,s0=0;s0<u0;s0++)v=v+(M[s0]|0),S[2*s0]=v&8191,v=v>>>13,S[2*s0+1]=v&8191,v=v>>>13;for(s0=2*u0;s0<n0;++s0)S[s0]=0;Y(v===0),Y((v&-8192)===0)},h0.prototype.stub=function(M){for(var u0=new Array(M),S=0;S<M;S++)u0[S]=0;return u0},h0.prototype.mulp=function(M,u0,S){var n0=2*this.guessLen13b(M.length,u0.length),v=this.makeRBT(n0),s0=this.stub(n0),I=new Array(n0),t0=new Array(n0),m0=new Array(n0),a0=new Array(n0),q=new Array(n0),e0=new Array(n0),r0=S.words;r0.length=n0,this.convert13b(M.words,M.length,I,n0),this.convert13b(u0.words,u0.length,a0,n0),this.transform(I,s0,t0,m0,n0,v),this.transform(a0,s0,q,e0,n0,v);for(var i0=0;i0<n0;i0++){var j=t0[i0]*q[i0]-m0[i0]*e0[i0];m0[i0]=t0[i0]*e0[i0]+m0[i0]*q[i0],t0[i0]=j}return this.conjugate(t0,m0,n0),this.transform(t0,m0,r0,s0,n0,v),this.conjugate(r0,s0,n0),this.normalize13b(r0,n0),S.negative=M.negative^u0.negative,S.length=M.length+u0.length,S._strip()},Z.prototype.mul=function(M){var u0=new Z(null);return u0.words=new Array(this.length+M.length),this.mulTo(M,u0)},Z.prototype.mulf=function(M){var u0=new Z(null);return u0.words=new Array(this.length+M.length),C(this,M,u0)},Z.prototype.imul=function(M){return this.clone().mulTo(M,this)},Z.prototype.imuln=function(M){var u0=M<0;u0&&(M=-M),Y(typeof M=="number"),Y(M<67108864);for(var S=0,n0=0;n0<this.length;n0++){var v=(this.words[n0]|0)*M,s0=(v&67108863)+(S&67108863);S>>=26,S+=v/67108864|0,S+=s0>>>26,this.words[n0]=s0&67108863}return S!==0&&(this.words[n0]=S,this.length++),u0?this.ineg():this},Z.prototype.muln=function(M){return this.clone().imuln(M)},Z.prototype.sqr=function(){return this.mul(this)},Z.prototype.isqr=function(){return this.imul(this.clone())},Z.prototype.pow=function(M){var u0=T(M);if(u0.length===0)return new Z(1);for(var S=this,n0=0;n0<u0.length&&u0[n0]===0;n0++,S=S.sqr());if(++n0<u0.length)for(var v=S.sqr();n0<u0.length;n0++,v=v.sqr())u0[n0]!==0&&(S=S.mul(v));return S},Z.prototype.iushln=function(M){Y(typeof M=="number"&&M>=0);var u0=M%26,S=(M-u0)/26,n0=67108863>>>26-u0<<26-u0,v;if(u0!==0){var s0=0;for(v=0;v<this.length;v++){var I=this.words[v]&n0,t0=(this.words[v]|0)-I<<u0;this.words[v]=t0|s0,s0=I>>>26-u0}s0&&(this.words[v]=s0,this.length++)}if(S!==0){for(v=this.length-1;v>=0;v--)this.words[v+S]=this.words[v];for(v=0;v<S;v++)this.words[v]=0;this.length+=S}return this._strip()},Z.prototype.ishln=function(M){return Y(this.negative===0),this.iushln(M)},Z.prototype.iushrn=function(M,u0,S){Y(typeof M=="number"&&M>=0);var n0;u0?n0=(u0-u0%26)/26:n0=0;var v=M%26,s0=Math.min((M-v)/26,this.length),I=67108863^67108863>>>v<<v,t0=S;if(n0-=s0,n0=Math.max(0,n0),t0){for(var m0=0;m0<s0;m0++)t0.words[m0]=this.words[m0];t0.length=s0}if(s0!==0)if(this.length>s0)for(this.length-=s0,m0=0;m0<this.length;m0++)this.words[m0]=this.words[m0+s0];else this.words[0]=0,this.length=1;var a0=0;for(m0=this.length-1;m0>=0&&(a0!==0||m0>=n0);m0--){var q=this.words[m0]|0;this.words[m0]=a0<<26-v|q>>>v,a0=q&I}return t0&&a0!==0&&(t0.words[t0.length++]=a0),this.length===0&&(this.words[0]=0,this.length=1),this._strip()},Z.prototype.ishrn=function(M,u0,S){return Y(this.negative===0),this.iushrn(M,u0,S)},Z.prototype.shln=function(M){return this.clone().ishln(M)},Z.prototype.ushln=function(M){return this.clone().iushln(M)},Z.prototype.shrn=function(M){return this.clone().ishrn(M)},Z.prototype.ushrn=function(M){return this.clone().iushrn(M)},Z.prototype.testn=function(M){Y(typeof M=="number"&&M>=0);var u0=M%26,S=(M-u0)/26,n0=1<<u0;if(this.length<=S)return!1;var v=this.words[S];return!!(v&n0)},Z.prototype.imaskn=function(M){Y(typeof M=="number"&&M>=0);var u0=M%26,S=(M-u0)/26;if(Y(this.negative===0,"imaskn works only with positive numbers"),this.length<=S)return this;if(u0!==0&&S++,this.length=Math.min(S,this.length),u0!==0){var n0=67108863^67108863>>>u0<<u0;this.words[this.length-1]&=n0}return this._strip()},Z.prototype.maskn=function(M){return this.clone().imaskn(M)},Z.prototype.iaddn=function(M){return Y(typeof M=="number"),Y(M<67108864),M<0?this.isubn(-M):this.negative!==0?this.length===1&&(this.words[0]|0)<=M?(this.words[0]=M-(this.words[0]|0),this.negative=0,this):(this.negative=0,this.isubn(M),this.negative=1,this):this._iaddn(M)},Z.prototype._iaddn=function(M){this.words[0]+=M;for(var u0=0;u0<this.length&&this.words[u0]>=67108864;u0++)this.words[u0]-=67108864,u0===this.length-1?this.words[u0+1]=1:this.words[u0+1]++;return this.length=Math.max(this.length,u0+1),this},Z.prototype.isubn=function(M){if(Y(typeof M=="number"),Y(M<67108864),M<0)return this.iaddn(-M);if(this.negative!==0)return this.negative=0,this.iaddn(M),this.negative=1,this;if(this.words[0]-=M,this.length===1&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var u0=0;u0<this.length&&this.words[u0]<0;u0++)this.words[u0]+=67108864,this.words[u0+1]-=1;return this._strip()},Z.prototype.addn=function(M){return this.clone().iaddn(M)},Z.prototype.subn=function(M){return this.clone().isubn(M)},Z.prototype.iabs=function(){return this.negative=0,this},Z.prototype.abs=function(){return this.clone().iabs()},Z.prototype._ishlnsubmul=function(M,u0,S){var n0=M.length+S,v;this._expand(n0);var s0,I=0;for(v=0;v<M.length;v++){s0=(this.words[v+S]|0)+I;var t0=(M.words[v]|0)*u0;s0-=t0&67108863,I=(s0>>26)-(t0/67108864|0),this.words[v+S]=s0&67108863}for(;v<this.length-S;v++)s0=(this.words[v+S]|0)+I,I=s0>>26,this.words[v+S]=s0&67108863;if(I===0)return this._strip();for(Y(I===-1),I=0,v=0;v<this.length;v++)s0=-(this.words[v]|0)+I,I=s0>>26,this.words[v]=s0&67108863;return this.negative=1,this._strip()},Z.prototype._wordDiv=function(M,u0){var S=this.length-M.length,n0=this.clone(),v=M,s0=v.words[v.length-1]|0,I=this._countBits(s0);S=26-I,S!==0&&(v=v.ushln(S),n0.iushln(S),s0=v.words[v.length-1]|0);var t0=n0.length-v.length,m0;if(u0!=="mod"){m0=new Z(null),m0.length=t0+1,m0.words=new Array(m0.length);for(var a0=0;a0<m0.length;a0++)m0.words[a0]=0}var q=n0.clone()._ishlnsubmul(v,1,t0);q.negative===0&&(n0=q,m0&&(m0.words[t0]=1));for(var e0=t0-1;e0>=0;e0--){var r0=(n0.words[v.length+e0]|0)*67108864+(n0.words[v.length+e0-1]|0);for(r0=Math.min(r0/s0|0,67108863),n0._ishlnsubmul(v,r0,e0);n0.negative!==0;)r0--,n0.negative=0,n0._ishlnsubmul(v,1,e0),n0.isZero()||(n0.negative^=1);m0&&(m0.words[e0]=r0)}return m0&&m0._strip(),n0._strip(),u0!=="div"&&S!==0&&n0.iushrn(S),{div:m0||null,mod:n0}},Z.prototype.divmod=function(M,u0,S){if(Y(!M.isZero()),this.isZero())return{div:new Z(0),mod:new Z(0)};var n0,v,s0;return this.negative!==0&&M.negative===0?(s0=this.neg().divmod(M,u0),u0!=="mod"&&(n0=s0.div.neg()),u0!=="div"&&(v=s0.mod.neg(),S&&v.negative!==0&&v.iadd(M)),{div:n0,mod:v}):this.negative===0&&M.negative!==0?(s0=this.divmod(M.neg(),u0),u0!=="mod"&&(n0=s0.div.neg()),{div:n0,mod:s0.mod}):(this.negative&M.negative)!==0?(s0=this.neg().divmod(M.neg(),u0),u0!=="div"&&(v=s0.mod.neg(),S&&v.negative!==0&&v.isub(M)),{div:s0.div,mod:v}):M.length>this.length||this.cmp(M)<0?{div:new Z(0),mod:this}:M.length===1?u0==="div"?{div:this.divn(M.words[0]),mod:null}:u0==="mod"?{div:null,mod:new Z(this.modrn(M.words[0]))}:{div:this.divn(M.words[0]),mod:new Z(this.modrn(M.words[0]))}:this._wordDiv(M,u0)},Z.prototype.div=function(M){return this.divmod(M,"div",!1).div},Z.prototype.mod=function(M){return this.divmod(M,"mod",!1).mod},Z.prototype.umod=function(M){return this.divmod(M,"mod",!0).mod},Z.prototype.divRound=function(M){var u0=this.divmod(M);if(u0.mod.isZero())return u0.div;var S=u0.div.negative!==0?u0.mod.isub(M):u0.mod,n0=M.ushrn(1),v=M.andln(1),s0=S.cmp(n0);return s0<0||v===1&&s0===0?u0.div:u0.div.negative!==0?u0.div.isubn(1):u0.div.iaddn(1)},Z.prototype.modrn=function(M){var u0=M<0;u0&&(M=-M),Y(M<=67108863);for(var S=(1<<26)%M,n0=0,v=this.length-1;v>=0;v--)n0=(S*n0+(this.words[v]|0))%M;return u0?-n0:n0},Z.prototype.modn=function(M){return this.modrn(M)},Z.prototype.idivn=function(M){var u0=M<0;u0&&(M=-M),Y(M<=67108863);for(var S=0,n0=this.length-1;n0>=0;n0--){var v=(this.words[n0]|0)+S*67108864;this.words[n0]=v/M|0,S=v%M}return this._strip(),u0?this.ineg():this},Z.prototype.divn=function(M){return this.clone().idivn(M)},Z.prototype.egcd=function(M){Y(M.negative===0),Y(!M.isZero());var u0=this,S=M.clone();u0.negative!==0?u0=u0.umod(M):u0=u0.clone();for(var n0=new Z(1),v=new Z(0),s0=new Z(0),I=new Z(1),t0=0;u0.isEven()&&S.isEven();)u0.iushrn(1),S.iushrn(1),++t0;for(var m0=S.clone(),a0=u0.clone();!u0.isZero();){for(var q=0,e0=1;(u0.words[0]&e0)===0&&q<26;++q,e0<<=1);if(q>0)for(u0.iushrn(q);q-- >0;)(n0.isOdd()||v.isOdd())&&(n0.iadd(m0),v.isub(a0)),n0.iushrn(1),v.iushrn(1);for(var r0=0,i0=1;(S.words[0]&i0)===0&&r0<26;++r0,i0<<=1);if(r0>0)for(S.iushrn(r0);r0-- >0;)(s0.isOdd()||I.isOdd())&&(s0.iadd(m0),I.isub(a0)),s0.iushrn(1),I.iushrn(1);u0.cmp(S)>=0?(u0.isub(S),n0.isub(s0),v.isub(I)):(S.isub(u0),s0.isub(n0),I.isub(v))}return{a:s0,b:I,gcd:S.iushln(t0)}},Z.prototype._invmp=function(M){Y(M.negative===0),Y(!M.isZero());var u0=this,S=M.clone();u0.negative!==0?u0=u0.umod(M):u0=u0.clone();for(var n0=new Z(1),v=new Z(0),s0=S.clone();u0.cmpn(1)>0&&S.cmpn(1)>0;){for(var I=0,t0=1;(u0.words[0]&t0)===0&&I<26;++I,t0<<=1);if(I>0)for(u0.iushrn(I);I-- >0;)n0.isOdd()&&n0.iadd(s0),n0.iushrn(1);for(var m0=0,a0=1;(S.words[0]&a0)===0&&m0<26;++m0,a0<<=1);if(m0>0)for(S.iushrn(m0);m0-- >0;)v.isOdd()&&v.iadd(s0),v.iushrn(1);u0.cmp(S)>=0?(u0.isub(S),n0.isub(v)):(S.isub(u0),v.isub(n0))}var q;return u0.cmpn(1)===0?q=n0:q=v,q.cmpn(0)<0&&q.iadd(M),q},Z.prototype.gcd=function(M){if(this.isZero())return M.abs();if(M.isZero())return this.abs();var u0=this.clone(),S=M.clone();u0.negative=0,S.negative=0;for(var n0=0;u0.isEven()&&S.isEven();n0++)u0.iushrn(1),S.iushrn(1);do{for(;u0.isEven();)u0.iushrn(1);for(;S.isEven();)S.iushrn(1);var v=u0.cmp(S);if(v<0){var s0=u0;u0=S,S=s0}else if(v===0||S.cmpn(1)===0)break;u0.isub(S)}while(!0);return S.iushln(n0)},Z.prototype.invm=function(M){return this.egcd(M).a.umod(M)},Z.prototype.isEven=function(){return(this.words[0]&1)===0},Z.prototype.isOdd=function(){return(this.words[0]&1)===1},Z.prototype.andln=function(M){return this.words[0]&M},Z.prototype.bincn=function(M){Y(typeof M=="number");var u0=M%26,S=(M-u0)/26,n0=1<<u0;if(this.length<=S)return this._expand(S+1),this.words[S]|=n0,this;for(var v=n0,s0=S;v!==0&&s0<this.length;s0++){var I=this.words[s0]|0;I+=v,v=I>>>26,I&=67108863,this.words[s0]=I}return v!==0&&(this.words[s0]=v,this.length++),this},Z.prototype.isZero=function(){return this.length===1&&this.words[0]===0},Z.prototype.cmpn=function(M){var u0=M<0;if(this.negative!==0&&!u0)return-1;if(this.negative===0&&u0)return 1;this._strip();var S;if(this.length>1)S=1;else{u0&&(M=-M),Y(M<=67108863,"Number is too big");var n0=this.words[0]|0;S=n0===M?0:n0<M?-1:1}return this.negative!==0?-S|0:S},Z.prototype.cmp=function(M){if(this.negative!==0&&M.negative===0)return-1;if(this.negative===0&&M.negative!==0)return 1;var u0=this.ucmp(M);return this.negative!==0?-u0|0:u0},Z.prototype.ucmp=function(M){if(this.length>M.length)return 1;if(this.length<M.length)return-1;for(var u0=0,S=this.length-1;S>=0;S--){var n0=this.words[S]|0,v=M.words[S]|0;if(n0!==v){n0<v?u0=-1:n0>v&&(u0=1);break}}return u0},Z.prototype.gtn=function(M){return this.cmpn(M)===1},Z.prototype.gt=function(M){return this.cmp(M)===1},Z.prototype.gten=function(M){return this.cmpn(M)>=0},Z.prototype.gte=function(M){return this.cmp(M)>=0},Z.prototype.ltn=function(M){return this.cmpn(M)===-1},Z.prototype.lt=function(M){return this.cmp(M)===-1},Z.prototype.lten=function(M){return this.cmpn(M)<=0},Z.prototype.lte=function(M){return this.cmp(M)<=0},Z.prototype.eqn=function(M){return this.cmpn(M)===0},Z.prototype.eq=function(M){return this.cmp(M)===0},Z.red=function(M){return new z(M)},Z.prototype.toRed=function(M){return Y(!this.red,"Already a number in reduction context"),Y(this.negative===0,"red works only with positives"),M.convertTo(this)._forceRed(M)},Z.prototype.fromRed=function(){return Y(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},Z.prototype._forceRed=function(M){return this.red=M,this},Z.prototype.forceRed=function(M){return Y(!this.red,"Already a number in reduction context"),this._forceRed(M)},Z.prototype.redAdd=function(M){return Y(this.red,"redAdd works only with red numbers"),this.red.add(this,M)},Z.prototype.redIAdd=function(M){return Y(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,M)},Z.prototype.redSub=function(M){return Y(this.red,"redSub works only with red numbers"),this.red.sub(this,M)},Z.prototype.redISub=function(M){return Y(this.red,"redISub works only with red numbers"),this.red.isub(this,M)},Z.prototype.redShl=function(M){return Y(this.red,"redShl works only with red numbers"),this.red.shl(this,M)},Z.prototype.redMul=function(M){return Y(this.red,"redMul works only with red numbers"),this.red._verify2(this,M),this.red.mul(this,M)},Z.prototype.redIMul=function(M){return Y(this.red,"redMul works only with red numbers"),this.red._verify2(this,M),this.red.imul(this,M)},Z.prototype.redSqr=function(){return Y(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},Z.prototype.redISqr=function(){return Y(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},Z.prototype.redSqrt=function(){return Y(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},Z.prototype.redInvm=function(){return Y(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},Z.prototype.redNeg=function(){return Y(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},Z.prototype.redPow=function(M){return Y(this.red&&!M.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,M)};var L={k256:null,p224:null,p192:null,p25519:null};function d0(M,u0){this.name=M,this.p=new Z(u0,16),this.n=this.p.bitLength(),this.k=new Z(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}d0.prototype._tmp=function(){var M=new Z(null);return M.words=new Array(Math.ceil(this.n/13)),M},d0.prototype.ireduce=function(M){var u0=M,S;do this.split(u0,this.tmp),u0=this.imulK(u0),u0=u0.iadd(this.tmp),S=u0.bitLength();while(S>this.n);var n0=S<this.n?-1:u0.ucmp(this.p);return n0===0?(u0.words[0]=0,u0.length=1):n0>0?u0.isub(this.p):u0.strip!==void 0?u0.strip():u0._strip(),u0},d0.prototype.split=function(M,u0){M.iushrn(this.n,0,u0)},d0.prototype.imulK=function(M){return M.imul(this.k)};function R(){d0.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}$(R,d0),R.prototype.split=function(M,u0){for(var S=4194303,n0=Math.min(M.length,9),v=0;v<n0;v++)u0.words[v]=M.words[v];if(u0.length=n0,M.length<=9){M.words[0]=0,M.length=1;return}var s0=M.words[9];for(u0.words[u0.length++]=s0&S,v=10;v<M.length;v++){var I=M.words[v]|0;M.words[v-10]=(I&S)<<4|s0>>>22,s0=I}s0>>>=22,M.words[v-10]=s0,s0===0&&M.length>10?M.length-=10:M.length-=9},R.prototype.imulK=function(M){M.words[M.length]=0,M.words[M.length+1]=0,M.length+=2;for(var u0=0,S=0;S<M.length;S++){var n0=M.words[S]|0;u0+=n0*977,M.words[S]=u0&67108863,u0=n0*64+(u0/67108864|0)}return M.words[M.length-1]===0&&(M.length--,M.words[M.length-1]===0&&M.length--),M};function b0(){d0.call(this,"p224","ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001")}$(b0,d0);function P(){d0.call(this,"p192","ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff")}$(P,d0);function l0(){d0.call(this,"25519","7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed")}$(l0,d0),l0.prototype.imulK=function(M){for(var u0=0,S=0;S<M.length;S++){var n0=(M.words[S]|0)*19+u0,v=n0&67108863;n0>>>=26,M.words[S]=v,u0=n0}return u0!==0&&(M.words[M.length++]=u0),M},Z._prime=function(M){if(L[M])return L[M];var u0;if(M==="k256")u0=new R;else if(M==="p224")u0=new b0;else if(M==="p192")u0=new P;else if(M==="p25519")u0=new l0;else throw new Error("Unknown prime "+M);return L[M]=u0,u0};function z(M){if(typeof M=="string"){var u0=Z._prime(M);this.m=u0.p,this.prime=u0}else Y(M.gtn(1),"modulus must be greater than 1"),this.m=M,this.prime=null}z.prototype._verify1=function(M){Y(M.negative===0,"red works only with positives"),Y(M.red,"red works only with red numbers")},z.prototype._verify2=function(M,u0){Y((M.negative|u0.negative)===0,"red works only with positives"),Y(M.red&&M.red===u0.red,"red works only with red numbers")},z.prototype.imod=function(M){return this.prime?this.prime.ireduce(M)._forceRed(this):(H(M,M.umod(this.m)._forceRed(this)),M)},z.prototype.neg=function(M){return M.isZero()?M.clone():this.m.sub(M)._forceRed(this)},z.prototype.add=function(M,u0){this._verify2(M,u0);var S=M.add(u0);return S.cmp(this.m)>=0&&S.isub(this.m),S._forceRed(this)},z.prototype.iadd=function(M,u0){this._verify2(M,u0);var S=M.iadd(u0);return S.cmp(this.m)>=0&&S.isub(this.m),S},z.prototype.sub=function(M,u0){this._verify2(M,u0);var S=M.sub(u0);return S.cmpn(0)<0&&S.iadd(this.m),S._forceRed(this)},z.prototype.isub=function(M,u0){this._verify2(M,u0);var S=M.isub(u0);return S.cmpn(0)<0&&S.iadd(this.m),S},z.prototype.shl=function(M,u0){return this._verify1(M),this.imod(M.ushln(u0))},z.prototype.imul=function(M,u0){return this._verify2(M,u0),this.imod(M.imul(u0))},z.prototype.mul=function(M,u0){return this._verify2(M,u0),this.imod(M.mul(u0))},z.prototype.isqr=function(M){return this.imul(M,M.clone())},z.prototype.sqr=function(M){return this.mul(M,M)},z.prototype.sqrt=function(M){if(M.isZero())return M.clone();var u0=this.m.andln(3);if(Y(u0%2===1),u0===3){var S=this.m.add(new Z(1)).iushrn(2);return this.pow(M,S)}for(var n0=this.m.subn(1),v=0;!n0.isZero()&&n0.andln(1)===0;)v++,n0.iushrn(1);Y(!n0.isZero());var s0=new Z(1).toRed(this),I=s0.redNeg(),t0=this.m.subn(1).iushrn(1),m0=this.m.bitLength();for(m0=new Z(2*m0*m0).toRed(this);this.pow(m0,t0).cmp(I)!==0;)m0.redIAdd(I);for(var a0=this.pow(m0,n0),q=this.pow(M,n0.addn(1).iushrn(1)),e0=this.pow(M,n0),r0=v;e0.cmp(s0)!==0;){for(var i0=e0,j=0;i0.cmp(s0)!==0;j++)i0=i0.redSqr();Y(j<r0);var $$=this.pow(a0,new Z(1).iushln(r0-j-1));q=q.redMul($$),a0=$$.redSqr(),e0=e0.redMul(a0),r0=j}return q},z.prototype.invm=function(M){var u0=M._invmp(this.m);return u0.negative!==0?(u0.negative=0,this.imod(u0).redNeg()):this.imod(u0)},z.prototype.pow=function(M,u0){if(u0.isZero())return new Z(1).toRed(this);if(u0.cmpn(1)===0)return M.clone();var S=4,n0=new Array(1<<S);n0[0]=new Z(1).toRed(this),n0[1]=M;for(var v=2;v<n0.length;v++)n0[v]=this.mul(n0[v-1],M);var s0=n0[0],I=0,t0=0,m0=u0.bitLength()%26;for(m0===0&&(m0=26),v=u0.length-1;v>=0;v--){for(var a0=u0.words[v],q=m0-1;q>=0;q--){var e0=a0>>q&1;if(s0!==n0[0]&&(s0=this.sqr(s0)),e0===0&&I===0){t0=0;continue}I<<=1,I|=e0,t0++,!(t0!==S&&(v!==0||q!==0))&&(s0=this.mul(s0,n0[I]),t0=0,I=0)}m0=26}return s0},z.prototype.convertTo=function(M){var u0=M.umod(this.m);return u0===M?u0.clone():u0},z.prototype.convertFrom=function(M){var u0=M.clone();return u0.red=null,u0},Z.mont=function(M){return new o0(M)};function o0(M){z.call(this,M),this.shift=this.m.bitLength(),this.shift%26!==0&&(this.shift+=26-this.shift%26),this.r=new Z(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)}$(o0,z),o0.prototype.convertTo=function(M){return this.imod(M.ushln(this.shift))},o0.prototype.convertFrom=function(M){var u0=this.imod(M.mul(this.rinv));return u0.red=null,u0},o0.prototype.imul=function(M,u0){if(M.isZero()||u0.isZero())return M.words[0]=0,M.length=1,M;var S=M.imul(u0),n0=S.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),v=S.isub(n0).iushrn(this.shift),s0=v;return v.cmp(this.m)>=0?s0=v.isub(this.m):v.cmpn(0)<0&&(s0=v.iadd(this.m)),s0._forceRed(this)},o0.prototype.mul=function(M,u0){if(M.isZero()||u0.isZero())return new Z(0)._forceRed(this);var S=M.mul(u0),n0=S.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),v=S.isub(n0).iushrn(this.shift),s0=v;return v.cmp(this.m)>=0?s0=v.isub(this.m):v.cmpn(0)<0&&(s0=v.iadd(this.m)),s0._forceRed(this)},o0.prototype.invm=function(M){var u0=this.imod(M._invmp(this.m).mul(this.r2));return u0._forceRed(this)}})(typeof K>"u"||K,X)}}),hQ=$Q({"node_modules/browserify-rsa/index.js"(X,K){var x0=cQ(),G=ZQ();function Y(Q){var U=$(Q),V=U.toRed(x0.mont(Q.modulus)).redPow(new x0(Q.publicExponent)).fromRed();return{blinder:V,unblinder:U.invm(Q.modulus)}}function $(Q){var U=Q.modulus.byteLength(),V;do V=new x0(G(U));while(V.cmp(Q.modulus)>=0||!V.umod(Q.prime1)||!V.umod(Q.prime2));return V}function Z(Q,U){var V=Y(U),B0=U.modulus.byteLength(),H=new x0(Q).mul(V.blinder).umod(U.modulus),y0=H.toRed(x0.mont(U.prime1)),W=H.toRed(x0.mont(U.prime2)),w0=U.coefficient,E=U.prime1,p0=U.prime2,T=y0.redPow(U.exponent1).fromRed(),f0=W.redPow(U.exponent2).fromRed(),D=T.isub(f0).imul(w0).umod(E).imul(p0);return f0.iadd(D).imul(V.unblinder).umod(U.modulus).toArrayLike(c$,"be",B0)}Z.getr=$,K.exports=Z}}),dQ=$Q({"node_modules/elliptic/package.json"(X,K){K.exports={name:"elliptic",version:"6.5.4",description:"EC cryptography",main:"lib/elliptic.js",files:["lib"],scripts:{lint:"eslint lib test","lint:fix":"npm run lint -- --fix",unit:"istanbul test _mocha --reporter=spec test/index.js",test:"npm run lint && npm run unit",version:"grunt dist && git add dist/"},repository:{type:"git",url:"git@github.com:indutny/elliptic"},keywords:["EC","Elliptic","curve","Cryptography"],author:"Fedor Indutny <fedor@indutny.com>",license:"MIT",bugs:{url:"https://github.com/indutny/elliptic/issues"},homepage:"https://github.com/indutny/elliptic",devDependencies:{brfs:"^2.0.2",coveralls:"^3.1.0",eslint:"^7.6.0",grunt:"^1.2.1","grunt-browserify":"^5.3.0","grunt-cli":"^1.3.2","grunt-contrib-connect":"^3.0.0","grunt-contrib-copy":"^1.0.0","grunt-contrib-uglify":"^5.0.0","grunt-mocha-istanbul":"^5.0.2","grunt-saucelabs":"^9.0.1",istanbul:"^0.4.5",mocha:"^8.0.1"},dependencies:{"bn.js":"^4.11.9",brorand:"^1.1.0","hash.js":"^1.0.0","hmac-drbg":"^1.0.1",inherits:"^2.0.4","minimalistic-assert":"^1.0.1","minimalistic-crypto-utils":"^1.0.1"}}}}),bQ=$Q({"node_modules/elliptic/node_modules/bn.js/lib/bn.js"(X,K){(function(x0,G){function Y(l0,z){if(!l0)throw new Error(z||"Assertion failed")}function $(l0,z){l0.super_=z;var o0=function(){};o0.prototype=z.prototype,l0.prototype=new o0,l0.prototype.constructor=l0}function Z(l0,z,o0){if(Z.isBN(l0))return l0;this.negative=0,this.words=null,this.length=0,this.red=null,l0!==null&&((z==="le"||z==="be")&&(o0=z,z=10),this._init(l0||0,z||10,o0||"be"))}typeof x0=="object"?x0.exports=Z:G.BN=Z,Z.BN=Z,Z.wordSize=26;var Q=c$;Z.isBN=function(l0){return l0 instanceof Z?!0:l0!==null&&typeof l0=="object"&&l0.constructor.wordSize===Z.wordSize&&Array.isArray(l0.words)},Z.max=function(l0,z){return l0.cmp(z)>0?l0:z},Z.min=function(l0,z){return l0.cmp(z)<0?l0:z},Z.prototype._init=function(l0,z,o0){if(typeof l0=="number")return this._initNumber(l0,z,o0);if(typeof l0=="object")return this._initArray(l0,z,o0);z==="hex"&&(z=16),Y(z===(z|0)&&z>=2&&z<=36),l0=l0.toString().replace(/\s+/g,"");var M=0;l0[0]==="-"&&(M++,this.negative=1),M<l0.length&&(z===16?this._parseHex(l0,M,o0):(this._parseBase(l0,z,M),o0==="le"&&this._initArray(this.toArray(),z,o0)))},Z.prototype._initNumber=function(l0,z,o0){l0<0&&(this.negative=1,l0=-l0),l0<67108864?(this.words=[l0&67108863],this.length=1):l0<4503599627370496?(this.words=[l0&67108863,l0/67108864&67108863],this.length=2):(Y(l0<9007199254740992),this.words=[l0&67108863,l0/67108864&67108863,1],this.length=3),o0==="le"&&this._initArray(this.toArray(),z,o0)},Z.prototype._initArray=function(l0,z,o0){if(Y(typeof l0.length=="number"),l0.length<=0)return this.words=[0],this.length=1,this;this.length=Math.ceil(l0.length/3),this.words=new Array(this.length);for(var M=0;M<this.length;M++)this.words[M]=0;var u0,S,n0=0;if(o0==="be")for(M=l0.length-1,u0=0;M>=0;M-=3)S=l0[M]|l0[M-1]<<8|l0[M-2]<<16,this.words[u0]|=S<<n0&67108863,this.words[u0+1]=S>>>26-n0&67108863,n0+=24,n0>=26&&(n0-=26,u0++);else if(o0==="le")for(M=0,u0=0;M<l0.length;M+=3)S=l0[M]|l0[M+1]<<8|l0[M+2]<<16,this.words[u0]|=S<<n0&67108863,this.words[u0+1]=S>>>26-n0&67108863,n0+=24,n0>=26&&(n0-=26,u0++);return this.strip()};function U(l0,z){var o0=l0.charCodeAt(z);return o0>=65&&o0<=70?o0-55:o0>=97&&o0<=102?o0-87:o0-48&15}function V(l0,z,o0){var M=U(l0,o0);return o0-1>=z&&(M|=U(l0,o0-1)<<4),M}Z.prototype._parseHex=function(l0,z,o0){this.length=Math.ceil((l0.length-z)/6),this.words=new Array(this.length);for(var M=0;M<this.length;M++)this.words[M]=0;var u0=0,S=0,n0;if(o0==="be")for(M=l0.length-1;M>=z;M-=2)n0=V(l0,z,M)<<u0,this.words[S]|=n0&67108863,u0>=18?(u0-=18,S+=1,this.words[S]|=n0>>>26):u0+=8;else{var v=l0.length-z;for(M=v%2===0?z+1:z;M<l0.length;M+=2)n0=V(l0,z,M)<<u0,this.words[S]|=n0&67108863,u0>=18?(u0-=18,S+=1,this.words[S]|=n0>>>26):u0+=8}this.strip()};function B0(l0,z,o0,M){for(var u0=0,S=Math.min(l0.length,o0),n0=z;n0<S;n0++){var v=l0.charCodeAt(n0)-48;u0*=M,v>=49?u0+=v-49+10:v>=17?u0+=v-17+10:u0+=v}return u0}Z.prototype._parseBase=function(l0,z,o0){this.words=[0],this.length=1;for(var M=0,u0=1;u0<=67108863;u0*=z)M++;M--,u0=u0/z|0;for(var S=l0.length-o0,n0=S%M,v=Math.min(S,S-n0)+o0,s0=0,I=o0;I<v;I+=M)s0=B0(l0,I,I+M,z),this.imuln(u0),this.words[0]+s0<67108864?this.words[0]+=s0:this._iaddn(s0);if(n0!==0){var t0=1;for(s0=B0(l0,I,l0.length,z),I=0;I<n0;I++)t0*=z;this.imuln(t0),this.words[0]+s0<67108864?this.words[0]+=s0:this._iaddn(s0)}this.strip()},Z.prototype.copy=function(l0){l0.words=new Array(this.length);for(var z=0;z<this.length;z++)l0.words[z]=this.words[z];l0.length=this.length,l0.negative=this.negative,l0.red=this.red},Z.prototype.clone=function(){var l0=new Z(null);return this.copy(l0),l0},Z.prototype._expand=function(l0){for(;this.length<l0;)this.words[this.length++]=0;return this},Z.prototype.strip=function(){for(;this.length>1&&this.words[this.length-1]===0;)this.length--;return this._normSign()},Z.prototype._normSign=function(){return this.length===1&&this.words[0]===0&&(this.negative=0),this},Z.prototype.inspect=function(){return(this.red?"<BN-R: ":"<BN: ")+this.toString(16)+">"};var H=["","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"],y0=[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],W=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64000000,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,24300000,28629151,33554432,39135393,45435424,52521875,60466176];Z.prototype.toString=function(l0,z){l0=l0||10,z=z|0||1;var o0;if(l0===16||l0==="hex"){o0="";for(var M=0,u0=0,S=0;S<this.length;S++){var n0=this.words[S],v=((n0<<M|u0)&16777215).toString(16);u0=n0>>>24-M&16777215,u0!==0||S!==this.length-1?o0=H[6-v.length]+v+o0:o0=v+o0,M+=2,M>=26&&(M-=26,S--)}for(u0!==0&&(o0=u0.toString(16)+o0);o0.length%z!==0;)o0="0"+o0;return this.negative!==0&&(o0="-"+o0),o0}if(l0===(l0|0)&&l0>=2&&l0<=36){var s0=y0[l0],I=W[l0];o0="";var t0=this.clone();for(t0.negative=0;!t0.isZero();){var m0=t0.modn(I).toString(l0);t0=t0.idivn(I),t0.isZero()?o0=m0+o0:o0=H[s0-m0.length]+m0+o0}for(this.isZero()&&(o0="0"+o0);o0.length%z!==0;)o0="0"+o0;return this.negative!==0&&(o0="-"+o0),o0}Y(!1,"Base should be between 2 and 36")},Z.prototype.toNumber=function(){var l0=this.words[0];return this.length===2?l0+=this.words[1]*67108864:this.length===3&&this.words[2]===1?l0+=4503599627370496+this.words[1]*67108864:this.length>2&&Y(!1,"Number can only safely store up to 53 bits"),this.negative!==0?-l0:l0},Z.prototype.toJSON=function(){return this.toString(16)},Z.prototype.toBuffer=function(l0,z){return Y(typeof Q<"u"),this.toArrayLike(Q,l0,z)},Z.prototype.toArray=function(l0,z){return this.toArrayLike(Array,l0,z)},Z.prototype.toArrayLike=function(l0,z,o0){var M=this.byteLength(),u0=o0||Math.max(1,M);Y(M<=u0,"byte array longer than desired length"),Y(u0>0,"Requested array length <= 0"),this.strip();var S=z==="le",n0=new l0(u0),v,s0,I=this.clone();if(S){for(s0=0;!I.isZero();s0++)v=I.andln(255),I.iushrn(8),n0[s0]=v;for(;s0<u0;s0++)n0[s0]=0}else{for(s0=0;s0<u0-M;s0++)n0[s0]=0;for(s0=0;!I.isZero();s0++)v=I.andln(255),I.iushrn(8),n0[u0-s0-1]=v}return n0},Math.clz32?Z.prototype._countBits=function(l0){return 32-Math.clz32(l0)}:Z.prototype._countBits=function(l0){var z=l0,o0=0;return z>=4096&&(o0+=13,z>>>=13),z>=64&&(o0+=7,z>>>=7),z>=8&&(o0+=4,z>>>=4),z>=2&&(o0+=2,z>>>=2),o0+z},Z.prototype._zeroBits=function(l0){if(l0===0)return 26;var z=l0,o0=0;return(z&8191)===0&&(o0+=13,z>>>=13),(z&127)===0&&(o0+=7,z>>>=7),(z&15)===0&&(o0+=4,z>>>=4),(z&3)===0&&(o0+=2,z>>>=2),(z&1)===0&&o0++,o0},Z.prototype.bitLength=function(){var l0=this.words[this.length-1],z=this._countBits(l0);return(this.length-1)*26+z};function w0(l0){for(var z=new Array(l0.bitLength()),o0=0;o0<z.length;o0++){var M=o0/26|0,u0=o0%26;z[o0]=(l0.words[M]&1<<u0)>>>u0}return z}Z.prototype.zeroBits=function(){if(this.isZero())return 0;for(var l0=0,z=0;z<this.length;z++){var o0=this._zeroBits(this.words[z]);if(l0+=o0,o0!==26)break}return l0},Z.prototype.byteLength=function(){return Math.ceil(this.bitLength()/8)},Z.prototype.toTwos=function(l0){return this.negative!==0?this.abs().inotn(l0).iaddn(1):this.clone()},Z.prototype.fromTwos=function(l0){return this.testn(l0-1)?this.notn(l0).iaddn(1).ineg():this.clone()},Z.prototype.isNeg=function(){return this.negative!==0},Z.prototype.neg=function(){return this.clone().ineg()},Z.prototype.ineg=function(){return this.isZero()||(this.negative^=1),this},Z.prototype.iuor=function(l0){for(;this.length<l0.length;)this.words[this.length++]=0;for(var z=0;z<l0.length;z++)this.words[z]=this.words[z]|l0.words[z];return this.strip()},Z.prototype.ior=function(l0){return Y((this.negative|l0.negative)===0),this.iuor(l0)},Z.prototype.or=function(l0){return this.length>l0.length?this.clone().ior(l0):l0.clone().ior(this)},Z.prototype.uor=function(l0){return this.length>l0.length?this.clone().iuor(l0):l0.clone().iuor(this)},Z.prototype.iuand=function(l0){var z;this.length>l0.length?z=l0:z=this;for(var o0=0;o0<z.length;o0++)this.words[o0]=this.words[o0]&l0.words[o0];return this.length=z.length,this.strip()},Z.prototype.iand=function(l0){return Y((this.negative|l0.negative)===0),this.iuand(l0)},Z.prototype.and=function(l0){return this.length>l0.length?this.clone().iand(l0):l0.clone().iand(this)},Z.prototype.uand=function(l0){return this.length>l0.length?this.clone().iuand(l0):l0.clone().iuand(this)},Z.prototype.iuxor=function(l0){var z,o0;this.length>l0.length?(z=this,o0=l0):(z=l0,o0=this);for(var M=0;M<o0.length;M++)this.words[M]=z.words[M]^o0.words[M];if(this!==z)for(;M<z.length;M++)this.words[M]=z.words[M];return this.length=z.length,this.strip()},Z.prototype.ixor=function(l0){return Y((this.negative|l0.negative)===0),this.iuxor(l0)},Z.prototype.xor=function(l0){return this.length>l0.length?this.clone().ixor(l0):l0.clone().ixor(this)},Z.prototype.uxor=function(l0){return this.length>l0.length?this.clone().iuxor(l0):l0.clone().iuxor(this)},Z.prototype.inotn=function(l0){Y(typeof l0=="number"&&l0>=0);var z=Math.ceil(l0/26)|0,o0=l0%26;this._expand(z),o0>0&&z--;for(var M=0;M<z;M++)this.words[M]=~this.words[M]&67108863;return o0>0&&(this.words[M]=~this.words[M]&67108863>>26-o0),this.strip()},Z.prototype.notn=function(l0){return this.clone().inotn(l0)},Z.prototype.setn=function(l0,z){Y(typeof l0=="number"&&l0>=0);var o0=l0/26|0,M=l0%26;return this._expand(o0+1),z?this.words[o0]=this.words[o0]|1<<M:this.words[o0]=this.words[o0]&~(1<<M),this.strip()},Z.prototype.iadd=function(l0){var z;if(this.negative!==0&&l0.negative===0)return this.negative=0,z=this.isub(l0),this.negative^=1,this._normSign();if(this.negative===0&&l0.negative!==0)return l0.negative=0,z=this.isub(l0),l0.negative=1,z._normSign();var o0,M;this.length>l0.length?(o0=this,M=l0):(o0=l0,M=this);for(var u0=0,S=0;S<M.length;S++)z=(o0.words[S]|0)+(M.words[S]|0)+u0,this.words[S]=z&67108863,u0=z>>>26;for(;u0!==0&&S<o0.length;S++)z=(o0.words[S]|0)+u0,this.words[S]=z&67108863,u0=z>>>26;if(this.length=o0.length,u0!==0)this.words[this.length]=u0,this.length++;else if(o0!==this)for(;S<o0.length;S++)this.words[S]=o0.words[S];return this},Z.prototype.add=function(l0){var z;return l0.negative!==0&&this.negative===0?(l0.negative=0,z=this.sub(l0),l0.negative^=1,z):l0.negative===0&&this.negative!==0?(this.negative=0,z=l0.sub(this),this.negative=1,z):this.length>l0.length?this.clone().iadd(l0):l0.clone().iadd(this)},Z.prototype.isub=function(l0){if(l0.negative!==0){l0.negative=0;var z=this.iadd(l0);return l0.negative=1,z._normSign()}else if(this.negative!==0)return this.negative=0,this.iadd(l0),this.negative=1,this._normSign();var o0=this.cmp(l0);if(o0===0)return this.negative=0,this.length=1,this.words[0]=0,this;var M,u0;o0>0?(M=this,u0=l0):(M=l0,u0=this);for(var S=0,n0=0;n0<u0.length;n0++)z=(M.words[n0]|0)-(u0.words[n0]|0)+S,S=z>>26,this.words[n0]=z&67108863;for(;S!==0&&n0<M.length;n0++)z=(M.words[n0]|0)+S,S=z>>26,this.words[n0]=z&67108863;if(S===0&&n0<M.length&&M!==this)for(;n0<M.length;n0++)this.words[n0]=M.words[n0];return this.length=Math.max(this.length,n0),M!==this&&(this.negative=1),this.strip()},Z.prototype.sub=function(l0){return this.clone().isub(l0)};function E(l0,z,o0){o0.negative=z.negative^l0.negative;var M=l0.length+z.length|0;o0.length=M,M=M-1|0;var u0=l0.words[0]|0,S=z.words[0]|0,n0=u0*S,v=n0&67108863,s0=n0/67108864|0;o0.words[0]=v;for(var I=1;I<M;I++){for(var t0=s0>>>26,m0=s0&67108863,a0=Math.min(I,z.length-1),q=Math.max(0,I-l0.length+1);q<=a0;q++){var e0=I-q|0;u0=l0.words[e0]|0,S=z.words[q]|0,n0=u0*S+m0,t0+=n0/67108864|0,m0=n0&67108863}o0.words[I]=m0|0,s0=t0|0}return s0!==0?o0.words[I]=s0|0:o0.length--,o0.strip()}var p0=function(l0,z,o0){var M=l0.words,u0=z.words,S=o0.words,n0=0,v,s0,I,t0=M[0]|0,m0=t0&8191,a0=t0>>>13,q=M[1]|0,e0=q&8191,r0=q>>>13,i0=M[2]|0,j=i0&8191,$$=i0>>>13,k=M[3]|0,Q$=k&8191,g=k>>>13,Y$=M[4]|0,_=Y$&8191,Z$=Y$>>>13,N=M[5]|0,G$=N&8191,x=N>>>13,V$=M[6]|0,B=V$&8191,U$=V$>>>13,y=M[7]|0,X$=y&8191,w=y>>>13,K$=M[8]|0,p=K$&8191,I$=K$>>>13,f=M[9]|0,O$=f&8191,c=f>>>13,J$=u0[0]|0,h=J$&8191,F$=J$>>>13,d=u0[1]|0,A$=d&8191,b=d>>>13,H$=u0[2]|0,l=H$&8191,W$=H$>>>13,o=u0[3]|0,E$=o&8191,u=o>>>13,T$=u0[4]|0,n=T$&8191,D$=T$>>>13,s=u0[5]|0,C$=s&8191,t=s>>>13,L$=u0[6]|0,m=L$&8191,R$=L$>>>13,a=u0[7]|0,P$=a&8191,O=a>>>13,z$=u0[8]|0,e=z$&8191,M$=z$>>>13,J=u0[9]|0,S$=J&8191,F=J>>>13;o0.negative=l0.negative^z.negative,o0.length=19,v=Math.imul(m0,h),s0=Math.imul(m0,F$),s0=s0+Math.imul(a0,h)|0,I=Math.imul(a0,F$);var v$=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(v$>>>26)|0,v$&=67108863,v=Math.imul(e0,h),s0=Math.imul(e0,F$),s0=s0+Math.imul(r0,h)|0,I=Math.imul(r0,F$),v=v+Math.imul(m0,A$)|0,s0=s0+Math.imul(m0,b)|0,s0=s0+Math.imul(a0,A$)|0,I=I+Math.imul(a0,b)|0;var r=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(r>>>26)|0,r&=67108863,v=Math.imul(j,h),s0=Math.imul(j,F$),s0=s0+Math.imul($$,h)|0,I=Math.imul($$,F$),v=v+Math.imul(e0,A$)|0,s0=s0+Math.imul(e0,b)|0,s0=s0+Math.imul(r0,A$)|0,I=I+Math.imul(r0,b)|0,v=v+Math.imul(m0,l)|0,s0=s0+Math.imul(m0,W$)|0,s0=s0+Math.imul(a0,l)|0,I=I+Math.imul(a0,W$)|0;var q$=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(q$>>>26)|0,q$&=67108863,v=Math.imul(Q$,h),s0=Math.imul(Q$,F$),s0=s0+Math.imul(g,h)|0,I=Math.imul(g,F$),v=v+Math.imul(j,A$)|0,s0=s0+Math.imul(j,b)|0,s0=s0+Math.imul($$,A$)|0,I=I+Math.imul($$,b)|0,v=v+Math.imul(e0,l)|0,s0=s0+Math.imul(e0,W$)|0,s0=s0+Math.imul(r0,l)|0,I=I+Math.imul(r0,W$)|0,v=v+Math.imul(m0,E$)|0,s0=s0+Math.imul(m0,u)|0,s0=s0+Math.imul(a0,E$)|0,I=I+Math.imul(a0,u)|0;var i=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(i>>>26)|0,i&=67108863,v=Math.imul(_,h),s0=Math.imul(_,F$),s0=s0+Math.imul(Z$,h)|0,I=Math.imul(Z$,F$),v=v+Math.imul(Q$,A$)|0,s0=s0+Math.imul(Q$,b)|0,s0=s0+Math.imul(g,A$)|0,I=I+Math.imul(g,b)|0,v=v+Math.imul(j,l)|0,s0=s0+Math.imul(j,W$)|0,s0=s0+Math.imul($$,l)|0,I=I+Math.imul($$,W$)|0,v=v+Math.imul(e0,E$)|0,s0=s0+Math.imul(e0,u)|0,s0=s0+Math.imul(r0,E$)|0,I=I+Math.imul(r0,u)|0,v=v+Math.imul(m0,n)|0,s0=s0+Math.imul(m0,D$)|0,s0=s0+Math.imul(a0,n)|0,I=I+Math.imul(a0,D$)|0;var j$=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(j$>>>26)|0,j$&=67108863,v=Math.imul(G$,h),s0=Math.imul(G$,F$),s0=s0+Math.imul(x,h)|0,I=Math.imul(x,F$),v=v+Math.imul(_,A$)|0,s0=s0+Math.imul(_,b)|0,s0=s0+Math.imul(Z$,A$)|0,I=I+Math.imul(Z$,b)|0,v=v+Math.imul(Q$,l)|0,s0=s0+Math.imul(Q$,W$)|0,s0=s0+Math.imul(g,l)|0,I=I+Math.imul(g,W$)|0,v=v+Math.imul(j,E$)|0,s0=s0+Math.imul(j,u)|0,s0=s0+Math.imul($$,E$)|0,I=I+Math.imul($$,u)|0,v=v+Math.imul(e0,n)|0,s0=s0+Math.imul(e0,D$)|0,s0=s0+Math.imul(r0,n)|0,I=I+Math.imul(r0,D$)|0,v=v+Math.imul(m0,C$)|0,s0=s0+Math.imul(m0,t)|0,s0=s0+Math.imul(a0,C$)|0,I=I+Math.imul(a0,t)|0;var k$=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(k$>>>26)|0,k$&=67108863,v=Math.imul(B,h),s0=Math.imul(B,F$),s0=s0+Math.imul(U$,h)|0,I=Math.imul(U$,F$),v=v+Math.imul(G$,A$)|0,s0=s0+Math.imul(G$,b)|0,s0=s0+Math.imul(x,A$)|0,I=I+Math.imul(x,b)|0,v=v+Math.imul(_,l)|0,s0=s0+Math.imul(_,W$)|0,s0=s0+Math.imul(Z$,l)|0,I=I+Math.imul(Z$,W$)|0,v=v+Math.imul(Q$,E$)|0,s0=s0+Math.imul(Q$,u)|0,s0=s0+Math.imul(g,E$)|0,I=I+Math.imul(g,u)|0,v=v+Math.imul(j,n)|0,s0=s0+Math.imul(j,D$)|0,s0=s0+Math.imul($$,n)|0,I=I+Math.imul($$,D$)|0,v=v+Math.imul(e0,C$)|0,s0=s0+Math.imul(e0,t)|0,s0=s0+Math.imul(r0,C$)|0,I=I+Math.imul(r0,t)|0,v=v+Math.imul(m0,m)|0,s0=s0+Math.imul(m0,R$)|0,s0=s0+Math.imul(a0,m)|0,I=I+Math.imul(a0,R$)|0;var g$=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(g$>>>26)|0,g$&=67108863,v=Math.imul(X$,h),s0=Math.imul(X$,F$),s0=s0+Math.imul(w,h)|0,I=Math.imul(w,F$),v=v+Math.imul(B,A$)|0,s0=s0+Math.imul(B,b)|0,s0=s0+Math.imul(U$,A$)|0,I=I+Math.imul(U$,b)|0,v=v+Math.imul(G$,l)|0,s0=s0+Math.imul(G$,W$)|0,s0=s0+Math.imul(x,l)|0,I=I+Math.imul(x,W$)|0,v=v+Math.imul(_,E$)|0,s0=s0+Math.imul(_,u)|0,s0=s0+Math.imul(Z$,E$)|0,I=I+Math.imul(Z$,u)|0,v=v+Math.imul(Q$,n)|0,s0=s0+Math.imul(Q$,D$)|0,s0=s0+Math.imul(g,n)|0,I=I+Math.imul(g,D$)|0,v=v+Math.imul(j,C$)|0,s0=s0+Math.imul(j,t)|0,s0=s0+Math.imul($$,C$)|0,I=I+Math.imul($$,t)|0,v=v+Math.imul(e0,m)|0,s0=s0+Math.imul(e0,R$)|0,s0=s0+Math.imul(r0,m)|0,I=I+Math.imul(r0,R$)|0,v=v+Math.imul(m0,P$)|0,s0=s0+Math.imul(m0,O)|0,s0=s0+Math.imul(a0,P$)|0,I=I+Math.imul(a0,O)|0;var _$=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(_$>>>26)|0,_$&=67108863,v=Math.imul(p,h),s0=Math.imul(p,F$),s0=s0+Math.imul(I$,h)|0,I=Math.imul(I$,F$),v=v+Math.imul(X$,A$)|0,s0=s0+Math.imul(X$,b)|0,s0=s0+Math.imul(w,A$)|0,I=I+Math.imul(w,b)|0,v=v+Math.imul(B,l)|0,s0=s0+Math.imul(B,W$)|0,s0=s0+Math.imul(U$,l)|0,I=I+Math.imul(U$,W$)|0,v=v+Math.imul(G$,E$)|0,s0=s0+Math.imul(G$,u)|0,s0=s0+Math.imul(x,E$)|0,I=I+Math.imul(x,u)|0,v=v+Math.imul(_,n)|0,s0=s0+Math.imul(_,D$)|0,s0=s0+Math.imul(Z$,n)|0,I=I+Math.imul(Z$,D$)|0,v=v+Math.imul(Q$,C$)|0,s0=s0+Math.imul(Q$,t)|0,s0=s0+Math.imul(g,C$)|0,I=I+Math.imul(g,t)|0,v=v+Math.imul(j,m)|0,s0=s0+Math.imul(j,R$)|0,s0=s0+Math.imul($$,m)|0,I=I+Math.imul($$,R$)|0,v=v+Math.imul(e0,P$)|0,s0=s0+Math.imul(e0,O)|0,s0=s0+Math.imul(r0,P$)|0,I=I+Math.imul(r0,O)|0,v=v+Math.imul(m0,e)|0,s0=s0+Math.imul(m0,M$)|0,s0=s0+Math.imul(a0,e)|0,I=I+Math.imul(a0,M$)|0;var N$=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(N$>>>26)|0,N$&=67108863,v=Math.imul(O$,h),s0=Math.imul(O$,F$),s0=s0+Math.imul(c,h)|0,I=Math.imul(c,F$),v=v+Math.imul(p,A$)|0,s0=s0+Math.imul(p,b)|0,s0=s0+Math.imul(I$,A$)|0,I=I+Math.imul(I$,b)|0,v=v+Math.imul(X$,l)|0,s0=s0+Math.imul(X$,W$)|0,s0=s0+Math.imul(w,l)|0,I=I+Math.imul(w,W$)|0,v=v+Math.imul(B,E$)|0,s0=s0+Math.imul(B,u)|0,s0=s0+Math.imul(U$,E$)|0,I=I+Math.imul(U$,u)|0,v=v+Math.imul(G$,n)|0,s0=s0+Math.imul(G$,D$)|0,s0=s0+Math.imul(x,n)|0,I=I+Math.imul(x,D$)|0,v=v+Math.imul(_,C$)|0,s0=s0+Math.imul(_,t)|0,s0=s0+Math.imul(Z$,C$)|0,I=I+Math.imul(Z$,t)|0,v=v+Math.imul(Q$,m)|0,s0=s0+Math.imul(Q$,R$)|0,s0=s0+Math.imul(g,m)|0,I=I+Math.imul(g,R$)|0,v=v+Math.imul(j,P$)|0,s0=s0+Math.imul(j,O)|0,s0=s0+Math.imul($$,P$)|0,I=I+Math.imul($$,O)|0,v=v+Math.imul(e0,e)|0,s0=s0+Math.imul(e0,M$)|0,s0=s0+Math.imul(r0,e)|0,I=I+Math.imul(r0,M$)|0,v=v+Math.imul(m0,S$)|0,s0=s0+Math.imul(m0,F)|0,s0=s0+Math.imul(a0,S$)|0,I=I+Math.imul(a0,F)|0;var $0=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+($0>>>26)|0,$0&=67108863,v=Math.imul(O$,A$),s0=Math.imul(O$,b),s0=s0+Math.imul(c,A$)|0,I=Math.imul(c,b),v=v+Math.imul(p,l)|0,s0=s0+Math.imul(p,W$)|0,s0=s0+Math.imul(I$,l)|0,I=I+Math.imul(I$,W$)|0,v=v+Math.imul(X$,E$)|0,s0=s0+Math.imul(X$,u)|0,s0=s0+Math.imul(w,E$)|0,I=I+Math.imul(w,u)|0,v=v+Math.imul(B,n)|0,s0=s0+Math.imul(B,D$)|0,s0=s0+Math.imul(U$,n)|0,I=I+Math.imul(U$,D$)|0,v=v+Math.imul(G$,C$)|0,s0=s0+Math.imul(G$,t)|0,s0=s0+Math.imul(x,C$)|0,I=I+Math.imul(x,t)|0,v=v+Math.imul(_,m)|0,s0=s0+Math.imul(_,R$)|0,s0=s0+Math.imul(Z$,m)|0,I=I+Math.imul(Z$,R$)|0,v=v+Math.imul(Q$,P$)|0,s0=s0+Math.imul(Q$,O)|0,s0=s0+Math.imul(g,P$)|0,I=I+Math.imul(g,O)|0,v=v+Math.imul(j,e)|0,s0=s0+Math.imul(j,M$)|0,s0=s0+Math.imul($$,e)|0,I=I+Math.imul($$,M$)|0,v=v+Math.imul(e0,S$)|0,s0=s0+Math.imul(e0,F)|0,s0=s0+Math.imul(r0,S$)|0,I=I+Math.imul(r0,F)|0;var x$=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(x$>>>26)|0,x$&=67108863,v=Math.imul(O$,l),s0=Math.imul(O$,W$),s0=s0+Math.imul(c,l)|0,I=Math.imul(c,W$),v=v+Math.imul(p,E$)|0,s0=s0+Math.imul(p,u)|0,s0=s0+Math.imul(I$,E$)|0,I=I+Math.imul(I$,u)|0,v=v+Math.imul(X$,n)|0,s0=s0+Math.imul(X$,D$)|0,s0=s0+Math.imul(w,n)|0,I=I+Math.imul(w,D$)|0,v=v+Math.imul(B,C$)|0,s0=s0+Math.imul(B,t)|0,s0=s0+Math.imul(U$,C$)|0,I=I+Math.imul(U$,t)|0,v=v+Math.imul(G$,m)|0,s0=s0+Math.imul(G$,R$)|0,s0=s0+Math.imul(x,m)|0,I=I+Math.imul(x,R$)|0,v=v+Math.imul(_,P$)|0,s0=s0+Math.imul(_,O)|0,s0=s0+Math.imul(Z$,P$)|0,I=I+Math.imul(Z$,O)|0,v=v+Math.imul(Q$,e)|0,s0=s0+Math.imul(Q$,M$)|0,s0=s0+Math.imul(g,e)|0,I=I+Math.imul(g,M$)|0,v=v+Math.imul(j,S$)|0,s0=s0+Math.imul(j,F)|0,s0=s0+Math.imul($$,S$)|0,I=I+Math.imul($$,F)|0;var Q0=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(Q0>>>26)|0,Q0&=67108863,v=Math.imul(O$,E$),s0=Math.imul(O$,u),s0=s0+Math.imul(c,E$)|0,I=Math.imul(c,u),v=v+Math.imul(p,n)|0,s0=s0+Math.imul(p,D$)|0,s0=s0+Math.imul(I$,n)|0,I=I+Math.imul(I$,D$)|0,v=v+Math.imul(X$,C$)|0,s0=s0+Math.imul(X$,t)|0,s0=s0+Math.imul(w,C$)|0,I=I+Math.imul(w,t)|0,v=v+Math.imul(B,m)|0,s0=s0+Math.imul(B,R$)|0,s0=s0+Math.imul(U$,m)|0,I=I+Math.imul(U$,R$)|0,v=v+Math.imul(G$,P$)|0,s0=s0+Math.imul(G$,O)|0,s0=s0+Math.imul(x,P$)|0,I=I+Math.imul(x,O)|0,v=v+Math.imul(_,e)|0,s0=s0+Math.imul(_,M$)|0,s0=s0+Math.imul(Z$,e)|0,I=I+Math.imul(Z$,M$)|0,v=v+Math.imul(Q$,S$)|0,s0=s0+Math.imul(Q$,F)|0,s0=s0+Math.imul(g,S$)|0,I=I+Math.imul(g,F)|0;var B$=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(B$>>>26)|0,B$&=67108863,v=Math.imul(O$,n),s0=Math.imul(O$,D$),s0=s0+Math.imul(c,n)|0,I=Math.imul(c,D$),v=v+Math.imul(p,C$)|0,s0=s0+Math.imul(p,t)|0,s0=s0+Math.imul(I$,C$)|0,I=I+Math.imul(I$,t)|0,v=v+Math.imul(X$,m)|0,s0=s0+Math.imul(X$,R$)|0,s0=s0+Math.imul(w,m)|0,I=I+Math.imul(w,R$)|0,v=v+Math.imul(B,P$)|0,s0=s0+Math.imul(B,O)|0,s0=s0+Math.imul(U$,P$)|0,I=I+Math.imul(U$,O)|0,v=v+Math.imul(G$,e)|0,s0=s0+Math.imul(G$,M$)|0,s0=s0+Math.imul(x,e)|0,I=I+Math.imul(x,M$)|0,v=v+Math.imul(_,S$)|0,s0=s0+Math.imul(_,F)|0,s0=s0+Math.imul(Z$,S$)|0,I=I+Math.imul(Z$,F)|0;var Y0=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(Y0>>>26)|0,Y0&=67108863,v=Math.imul(O$,C$),s0=Math.imul(O$,t),s0=s0+Math.imul(c,C$)|0,I=Math.imul(c,t),v=v+Math.imul(p,m)|0,s0=s0+Math.imul(p,R$)|0,s0=s0+Math.imul(I$,m)|0,I=I+Math.imul(I$,R$)|0,v=v+Math.imul(X$,P$)|0,s0=s0+Math.imul(X$,O)|0,s0=s0+Math.imul(w,P$)|0,I=I+Math.imul(w,O)|0,v=v+Math.imul(B,e)|0,s0=s0+Math.imul(B,M$)|0,s0=s0+Math.imul(U$,e)|0,I=I+Math.imul(U$,M$)|0,v=v+Math.imul(G$,S$)|0,s0=s0+Math.imul(G$,F)|0,s0=s0+Math.imul(x,S$)|0,I=I+Math.imul(x,F)|0;var y$=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(y$>>>26)|0,y$&=67108863,v=Math.imul(O$,m),s0=Math.imul(O$,R$),s0=s0+Math.imul(c,m)|0,I=Math.imul(c,R$),v=v+Math.imul(p,P$)|0,s0=s0+Math.imul(p,O)|0,s0=s0+Math.imul(I$,P$)|0,I=I+Math.imul(I$,O)|0,v=v+Math.imul(X$,e)|0,s0=s0+Math.imul(X$,M$)|0,s0=s0+Math.imul(w,e)|0,I=I+Math.imul(w,M$)|0,v=v+Math.imul(B,S$)|0,s0=s0+Math.imul(B,F)|0,s0=s0+Math.imul(U$,S$)|0,I=I+Math.imul(U$,F)|0;var Z0=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(Z0>>>26)|0,Z0&=67108863,v=Math.imul(O$,P$),s0=Math.imul(O$,O),s0=s0+Math.imul(c,P$)|0,I=Math.imul(c,O),v=v+Math.imul(p,e)|0,s0=s0+Math.imul(p,M$)|0,s0=s0+Math.imul(I$,e)|0,I=I+Math.imul(I$,M$)|0,v=v+Math.imul(X$,S$)|0,s0=s0+Math.imul(X$,F)|0,s0=s0+Math.imul(w,S$)|0,I=I+Math.imul(w,F)|0;var w$=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(w$>>>26)|0,w$&=67108863,v=Math.imul(O$,e),s0=Math.imul(O$,M$),s0=s0+Math.imul(c,e)|0,I=Math.imul(c,M$),v=v+Math.imul(p,S$)|0,s0=s0+Math.imul(p,F)|0,s0=s0+Math.imul(I$,S$)|0,I=I+Math.imul(I$,F)|0;var G0=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(G0>>>26)|0,G0&=67108863,v=Math.imul(O$,S$),s0=Math.imul(O$,F),s0=s0+Math.imul(c,S$)|0,I=Math.imul(c,F);var p$=(n0+v|0)+((s0&8191)<<13)|0;return n0=(I+(s0>>>13)|0)+(p$>>>26)|0,p$&=67108863,S[0]=v$,S[1]=r,S[2]=q$,S[3]=i,S[4]=j$,S[5]=k$,S[6]=g$,S[7]=_$,S[8]=N$,S[9]=$0,S[10]=x$,S[11]=Q0,S[12]=B$,S[13]=Y0,S[14]=y$,S[15]=Z0,S[16]=w$,S[17]=G0,S[18]=p$,n0!==0&&(S[19]=n0,o0.length++),o0};Math.imul||(p0=E);function T(l0,z,o0){o0.negative=z.negative^l0.negative,o0.length=l0.length+z.length;for(var M=0,u0=0,S=0;S<o0.length-1;S++){var n0=u0;u0=0;for(var v=M&67108863,s0=Math.min(S,z.length-1),I=Math.max(0,S-l0.length+1);I<=s0;I++){var t0=S-I,m0=l0.words[t0]|0,a0=z.words[I]|0,q=m0*a0,e0=q&67108863;n0=n0+(q/67108864|0)|0,e0=e0+v|0,v=e0&67108863,n0=n0+(e0>>>26)|0,u0+=n0>>>26,n0&=67108863}o0.words[S]=v,M=n0,n0=u0}return M!==0?o0.words[S]=M:o0.length--,o0.strip()}function f0(l0,z,o0){var M=new D;return M.mulp(l0,z,o0)}Z.prototype.mulTo=function(l0,z){var o0,M=this.length+l0.length;return this.length===10&&l0.length===10?o0=p0(this,l0,z):M<63?o0=E(this,l0,z):M<1024?o0=T(this,l0,z):o0=f0(this,l0,z),o0};function D(l0,z){this.x=l0,this.y=z}D.prototype.makeRBT=function(l0){for(var z=new Array(l0),o0=Z.prototype._countBits(l0)-1,M=0;M<l0;M++)z[M]=this.revBin(M,o0,l0);return z},D.prototype.revBin=function(l0,z,o0){if(l0===0||l0===o0-1)return l0;for(var M=0,u0=0;u0<z;u0++)M|=(l0&1)<<z-u0-1,l0>>=1;return M},D.prototype.permute=function(l0,z,o0,M,u0,S){for(var n0=0;n0<S;n0++)M[n0]=z[l0[n0]],u0[n0]=o0[l0[n0]]},D.prototype.transform=function(l0,z,o0,M,u0,S){this.permute(S,l0,z,o0,M,u0);for(var n0=1;n0<u0;n0<<=1)for(var v=n0<<1,s0=Math.cos(2*Math.PI/v),I=Math.sin(2*Math.PI/v),t0=0;t0<u0;t0+=v)for(var m0=s0,a0=I,q=0;q<n0;q++){var e0=o0[t0+q],r0=M[t0+q],i0=o0[t0+q+n0],j=M[t0+q+n0],$$=m0*i0-a0*j;j=m0*j+a0*i0,i0=$$,o0[t0+q]=e0+i0,M[t0+q]=r0+j,o0[t0+q+n0]=e0-i0,M[t0+q+n0]=r0-j,q!==v&&($$=s0*m0-I*a0,a0=s0*a0+I*m0,m0=$$)}},D.prototype.guessLen13b=function(l0,z){var o0=Math.max(z,l0)|1,M=o0&1,u0=0;for(o0=o0/2|0;o0;o0=o0>>>1)u0++;return 1<<u0+1+M},D.prototype.conjugate=function(l0,z,o0){if(!(o0<=1))for(var M=0;M<o0/2;M++){var u0=l0[M];l0[M]=l0[o0-M-1],l0[o0-M-1]=u0,u0=z[M],z[M]=-z[o0-M-1],z[o0-M-1]=-u0}},D.prototype.normalize13b=function(l0,z){for(var o0=0,M=0;M<z/2;M++){var u0=Math.round(l0[2*M+1]/z)*8192+Math.round(l0[2*M]/z)+o0;l0[M]=u0&67108863,u0<67108864?o0=0:o0=u0/67108864|0}return l0},D.prototype.convert13b=function(l0,z,o0,M){for(var u0=0,S=0;S<z;S++)u0=u0+(l0[S]|0),o0[2*S]=u0&8191,u0=u0>>>13,o0[2*S+1]=u0&8191,u0=u0>>>13;for(S=2*z;S<M;++S)o0[S]=0;Y(u0===0),Y((u0&-8192)===0)},D.prototype.stub=function(l0){for(var z=new Array(l0),o0=0;o0<l0;o0++)z[o0]=0;return z},D.prototype.mulp=function(l0,z,o0){var M=2*this.guessLen13b(l0.length,z.length),u0=this.makeRBT(M),S=this.stub(M),n0=new Array(M),v=new Array(M),s0=new Array(M),I=new Array(M),t0=new Array(M),m0=new Array(M),a0=o0.words;a0.length=M,this.convert13b(l0.words,l0.length,n0,M),this.convert13b(z.words,z.length,I,M),this.transform(n0,S,v,s0,M,u0),this.transform(I,S,t0,m0,M,u0);for(var q=0;q<M;q++){var e0=v[q]*t0[q]-s0[q]*m0[q];s0[q]=v[q]*m0[q]+s0[q]*t0[q],v[q]=e0}return this.conjugate(v,s0,M),this.transform(v,s0,a0,S,M,u0),this.conjugate(a0,S,M),this.normalize13b(a0,M),o0.negative=l0.negative^z.negative,o0.length=l0.length+z.length,o0.strip()},Z.prototype.mul=function(l0){var z=new Z(null);return z.words=new Array(this.length+l0.length),this.mulTo(l0,z)},Z.prototype.mulf=function(l0){var z=new Z(null);return z.words=new Array(this.length+l0.length),f0(this,l0,z)},Z.prototype.imul=function(l0){return this.clone().mulTo(l0,this)},Z.prototype.imuln=function(l0){Y(typeof l0=="number"),Y(l0<67108864);for(var z=0,o0=0;o0<this.length;o0++){var M=(this.words[o0]|0)*l0,u0=(M&67108863)+(z&67108863);z>>=26,z+=M/67108864|0,z+=u0>>>26,this.words[o0]=u0&67108863}return z!==0&&(this.words[o0]=z,this.length++),this},Z.prototype.muln=function(l0){return this.clone().imuln(l0)},Z.prototype.sqr=function(){return this.mul(this)},Z.prototype.isqr=function(){return this.imul(this.clone())},Z.prototype.pow=function(l0){var z=w0(l0);if(z.length===0)return new Z(1);for(var o0=this,M=0;M<z.length&&z[M]===0;M++,o0=o0.sqr());if(++M<z.length)for(var u0=o0.sqr();M<z.length;M++,u0=u0.sqr())z[M]!==0&&(o0=o0.mul(u0));return o0},Z.prototype.iushln=function(l0){Y(typeof l0=="number"&&l0>=0);var z=l0%26,o0=(l0-z)/26,M=67108863>>>26-z<<26-z,u0;if(z!==0){var S=0;for(u0=0;u0<this.length;u0++){var n0=this.words[u0]&M,v=(this.words[u0]|0)-n0<<z;this.words[u0]=v|S,S=n0>>>26-z}S&&(this.words[u0]=S,this.length++)}if(o0!==0){for(u0=this.length-1;u0>=0;u0--)this.words[u0+o0]=this.words[u0];for(u0=0;u0<o0;u0++)this.words[u0]=0;this.length+=o0}return this.strip()},Z.prototype.ishln=function(l0){return Y(this.negative===0),this.iushln(l0)},Z.prototype.iushrn=function(l0,z,o0){Y(typeof l0=="number"&&l0>=0);var M;z?M=(z-z%26)/26:M=0;var u0=l0%26,S=Math.min((l0-u0)/26,this.length),n0=67108863^67108863>>>u0<<u0,v=o0;if(M-=S,M=Math.max(0,M),v){for(var s0=0;s0<S;s0++)v.words[s0]=this.words[s0];v.length=S}if(S!==0)if(this.length>S)for(this.length-=S,s0=0;s0<this.length;s0++)this.words[s0]=this.words[s0+S];else this.words[0]=0,this.length=1;var I=0;for(s0=this.length-1;s0>=0&&(I!==0||s0>=M);s0--){var t0=this.words[s0]|0;this.words[s0]=I<<26-u0|t0>>>u0,I=t0&n0}return v&&I!==0&&(v.words[v.length++]=I),this.length===0&&(this.words[0]=0,this.length=1),this.strip()},Z.prototype.ishrn=function(l0,z,o0){return Y(this.negative===0),this.iushrn(l0,z,o0)},Z.prototype.shln=function(l0){return this.clone().ishln(l0)},Z.prototype.ushln=function(l0){return this.clone().iushln(l0)},Z.prototype.shrn=function(l0){return this.clone().ishrn(l0)},Z.prototype.ushrn=function(l0){return this.clone().iushrn(l0)},Z.prototype.testn=function(l0){Y(typeof l0=="number"&&l0>=0);var z=l0%26,o0=(l0-z)/26,M=1<<z;if(this.length<=o0)return!1;var u0=this.words[o0];return!!(u0&M)},Z.prototype.imaskn=function(l0){Y(typeof l0=="number"&&l0>=0);var z=l0%26,o0=(l0-z)/26;if(Y(this.negative===0,"imaskn works only with positive numbers"),this.length<=o0)return this;if(z!==0&&o0++,this.length=Math.min(o0,this.length),z!==0){var M=67108863^67108863>>>z<<z;this.words[this.length-1]&=M}return this.strip()},Z.prototype.maskn=function(l0){return this.clone().imaskn(l0)},Z.prototype.iaddn=function(l0){return Y(typeof l0=="number"),Y(l0<67108864),l0<0?this.isubn(-l0):this.negative!==0?this.length===1&&(this.words[0]|0)<l0?(this.words[0]=l0-(this.words[0]|0),this.negative=0,this):(this.negative=0,this.isubn(l0),this.negative=1,this):this._iaddn(l0)},Z.prototype._iaddn=function(l0){this.words[0]+=l0;for(var z=0;z<this.length&&this.words[z]>=67108864;z++)this.words[z]-=67108864,z===this.length-1?this.words[z+1]=1:this.words[z+1]++;return this.length=Math.max(this.length,z+1),this},Z.prototype.isubn=function(l0){if(Y(typeof l0=="number"),Y(l0<67108864),l0<0)return this.iaddn(-l0);if(this.negative!==0)return this.negative=0,this.iaddn(l0),this.negative=1,this;if(this.words[0]-=l0,this.length===1&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var z=0;z<this.length&&this.words[z]<0;z++)this.words[z]+=67108864,this.words[z+1]-=1;return this.strip()},Z.prototype.addn=function(l0){return this.clone().iaddn(l0)},Z.prototype.subn=function(l0){return this.clone().isubn(l0)},Z.prototype.iabs=function(){return this.negative=0,this},Z.prototype.abs=function(){return this.clone().iabs()},Z.prototype._ishlnsubmul=function(l0,z,o0){var M=l0.length+o0,u0;this._expand(M);var S,n0=0;for(u0=0;u0<l0.length;u0++){S=(this.words[u0+o0]|0)+n0;var v=(l0.words[u0]|0)*z;S-=v&67108863,n0=(S>>26)-(v/67108864|0),this.words[u0+o0]=S&67108863}for(;u0<this.length-o0;u0++)S=(this.words[u0+o0]|0)+n0,n0=S>>26,this.words[u0+o0]=S&67108863;if(n0===0)return this.strip();for(Y(n0===-1),n0=0,u0=0;u0<this.length;u0++)S=-(this.words[u0]|0)+n0,n0=S>>26,this.words[u0]=S&67108863;return this.negative=1,this.strip()},Z.prototype._wordDiv=function(l0,z){var o0=this.length-l0.length,M=this.clone(),u0=l0,S=u0.words[u0.length-1]|0,n0=this._countBits(S);o0=26-n0,o0!==0&&(u0=u0.ushln(o0),M.iushln(o0),S=u0.words[u0.length-1]|0);var v=M.length-u0.length,s0;if(z!=="mod"){s0=new Z(null),s0.length=v+1,s0.words=new Array(s0.length);for(var I=0;I<s0.length;I++)s0.words[I]=0}var t0=M.clone()._ishlnsubmul(u0,1,v);t0.negative===0&&(M=t0,s0&&(s0.words[v]=1));for(var m0=v-1;m0>=0;m0--){var a0=(M.words[u0.length+m0]|0)*67108864+(M.words[u0.length+m0-1]|0);for(a0=Math.min(a0/S|0,67108863),M._ishlnsubmul(u0,a0,m0);M.negative!==0;)a0--,M.negative=0,M._ishlnsubmul(u0,1,m0),M.isZero()||(M.negative^=1);s0&&(s0.words[m0]=a0)}return s0&&s0.strip(),M.strip(),z!=="div"&&o0!==0&&M.iushrn(o0),{div:s0||null,mod:M}},Z.prototype.divmod=function(l0,z,o0){if(Y(!l0.isZero()),this.isZero())return{div:new Z(0),mod:new Z(0)};var M,u0,S;return this.negative!==0&&l0.negative===0?(S=this.neg().divmod(l0,z),z!=="mod"&&(M=S.div.neg()),z!=="div"&&(u0=S.mod.neg(),o0&&u0.negative!==0&&u0.iadd(l0)),{div:M,mod:u0}):this.negative===0&&l0.negative!==0?(S=this.divmod(l0.neg(),z),z!=="mod"&&(M=S.div.neg()),{div:M,mod:S.mod}):(this.negative&l0.negative)!==0?(S=this.neg().divmod(l0.neg(),z),z!=="div"&&(u0=S.mod.neg(),o0&&u0.negative!==0&&u0.isub(l0)),{div:S.div,mod:u0}):l0.length>this.length||this.cmp(l0)<0?{div:new Z(0),mod:this}:l0.length===1?z==="div"?{div:this.divn(l0.words[0]),mod:null}:z==="mod"?{div:null,mod:new Z(this.modn(l0.words[0]))}:{div:this.divn(l0.words[0]),mod:new Z(this.modn(l0.words[0]))}:this._wordDiv(l0,z)},Z.prototype.div=function(l0){return this.divmod(l0,"div",!1).div},Z.prototype.mod=function(l0){return this.divmod(l0,"mod",!1).mod},Z.prototype.umod=function(l0){return this.divmod(l0,"mod",!0).mod},Z.prototype.divRound=function(l0){var z=this.divmod(l0);if(z.mod.isZero())return z.div;var o0=z.div.negative!==0?z.mod.isub(l0):z.mod,M=l0.ushrn(1),u0=l0.andln(1),S=o0.cmp(M);return S<0||u0===1&&S===0?z.div:z.div.negative!==0?z.div.isubn(1):z.div.iaddn(1)},Z.prototype.modn=function(l0){Y(l0<=67108863);for(var z=(1<<26)%l0,o0=0,M=this.length-1;M>=0;M--)o0=(z*o0+(this.words[M]|0))%l0;return o0},Z.prototype.idivn=function(l0){Y(l0<=67108863);for(var z=0,o0=this.length-1;o0>=0;o0--){var M=(this.words[o0]|0)+z*67108864;this.words[o0]=M/l0|0,z=M%l0}return this.strip()},Z.prototype.divn=function(l0){return this.clone().idivn(l0)},Z.prototype.egcd=function(l0){Y(l0.negative===0),Y(!l0.isZero());var z=this,o0=l0.clone();z.negative!==0?z=z.umod(l0):z=z.clone();for(var M=new Z(1),u0=new Z(0),S=new Z(0),n0=new Z(1),v=0;z.isEven()&&o0.isEven();)z.iushrn(1),o0.iushrn(1),++v;for(var s0=o0.clone(),I=z.clone();!z.isZero();){for(var t0=0,m0=1;(z.words[0]&m0)===0&&t0<26;++t0,m0<<=1);if(t0>0)for(z.iushrn(t0);t0-- >0;)(M.isOdd()||u0.isOdd())&&(M.iadd(s0),u0.isub(I)),M.iushrn(1),u0.iushrn(1);for(var a0=0,q=1;(o0.words[0]&q)===0&&a0<26;++a0,q<<=1);if(a0>0)for(o0.iushrn(a0);a0-- >0;)(S.isOdd()||n0.isOdd())&&(S.iadd(s0),n0.isub(I)),S.iushrn(1),n0.iushrn(1);z.cmp(o0)>=0?(z.isub(o0),M.isub(S),u0.isub(n0)):(o0.isub(z),S.isub(M),n0.isub(u0))}return{a:S,b:n0,gcd:o0.iushln(v)}},Z.prototype._invmp=function(l0){Y(l0.negative===0),Y(!l0.isZero());var z=this,o0=l0.clone();z.negative!==0?z=z.umod(l0):z=z.clone();for(var M=new Z(1),u0=new Z(0),S=o0.clone();z.cmpn(1)>0&&o0.cmpn(1)>0;){for(var n0=0,v=1;(z.words[0]&v)===0&&n0<26;++n0,v<<=1);if(n0>0)for(z.iushrn(n0);n0-- >0;)M.isOdd()&&M.iadd(S),M.iushrn(1);for(var s0=0,I=1;(o0.words[0]&I)===0&&s0<26;++s0,I<<=1);if(s0>0)for(o0.iushrn(s0);s0-- >0;)u0.isOdd()&&u0.iadd(S),u0.iushrn(1);z.cmp(o0)>=0?(z.isub(o0),M.isub(u0)):(o0.isub(z),u0.isub(M))}var t0;return z.cmpn(1)===0?t0=M:t0=u0,t0.cmpn(0)<0&&t0.iadd(l0),t0},Z.prototype.gcd=function(l0){if(this.isZero())return l0.abs();if(l0.isZero())return this.abs();var z=this.clone(),o0=l0.clone();z.negative=0,o0.negative=0;for(var M=0;z.isEven()&&o0.isEven();M++)z.iushrn(1),o0.iushrn(1);do{for(;z.isEven();)z.iushrn(1);for(;o0.isEven();)o0.iushrn(1);var u0=z.cmp(o0);if(u0<0){var S=z;z=o0,o0=S}else if(u0===0||o0.cmpn(1)===0)break;z.isub(o0)}while(!0);return o0.iushln(M)},Z.prototype.invm=function(l0){return this.egcd(l0).a.umod(l0)},Z.prototype.isEven=function(){return(this.words[0]&1)===0},Z.prototype.isOdd=function(){return(this.words[0]&1)===1},Z.prototype.andln=function(l0){return this.words[0]&l0},Z.prototype.bincn=function(l0){Y(typeof l0=="number");var z=l0%26,o0=(l0-z)/26,M=1<<z;if(this.length<=o0)return this._expand(o0+1),this.words[o0]|=M,this;for(var u0=M,S=o0;u0!==0&&S<this.length;S++){var n0=this.words[S]|0;n0+=u0,u0=n0>>>26,n0&=67108863,this.words[S]=n0}return u0!==0&&(this.words[S]=u0,this.length++),this},Z.prototype.isZero=function(){return this.length===1&&this.words[0]===0},Z.prototype.cmpn=function(l0){var z=l0<0;if(this.negative!==0&&!z)return-1;if(this.negative===0&&z)return 1;this.strip();var o0;if(this.length>1)o0=1;else{z&&(l0=-l0),Y(l0<=67108863,"Number is too big");var M=this.words[0]|0;o0=M===l0?0:M<l0?-1:1}return this.negative!==0?-o0|0:o0},Z.prototype.cmp=function(l0){if(this.negative!==0&&l0.negative===0)return-1;if(this.negative===0&&l0.negative!==0)return 1;var z=this.ucmp(l0);return this.negative!==0?-z|0:z},Z.prototype.ucmp=function(l0){if(this.length>l0.length)return 1;if(this.length<l0.length)return-1;for(var z=0,o0=this.length-1;o0>=0;o0--){var M=this.words[o0]|0,u0=l0.words[o0]|0;if(M!==u0){M<u0?z=-1:M>u0&&(z=1);break}}return z},Z.prototype.gtn=function(l0){return this.cmpn(l0)===1},Z.prototype.gt=function(l0){return this.cmp(l0)===1},Z.prototype.gten=function(l0){return this.cmpn(l0)>=0},Z.prototype.gte=function(l0){return this.cmp(l0)>=0},Z.prototype.ltn=function(l0){return this.cmpn(l0)===-1},Z.prototype.lt=function(l0){return this.cmp(l0)===-1},Z.prototype.lten=function(l0){return this.cmpn(l0)<=0},Z.prototype.lte=function(l0){return this.cmp(l0)<=0},Z.prototype.eqn=function(l0){return this.cmpn(l0)===0},Z.prototype.eq=function(l0){return this.cmp(l0)===0},Z.red=function(l0){return new b0(l0)},Z.prototype.toRed=function(l0){return Y(!this.red,"Already a number in reduction context"),Y(this.negative===0,"red works only with positives"),l0.convertTo(this)._forceRed(l0)},Z.prototype.fromRed=function(){return Y(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},Z.prototype._forceRed=function(l0){return this.red=l0,this},Z.prototype.forceRed=function(l0){return Y(!this.red,"Already a number in reduction context"),this._forceRed(l0)},Z.prototype.redAdd=function(l0){return Y(this.red,"redAdd works only with red numbers"),this.red.add(this,l0)},Z.prototype.redIAdd=function(l0){return Y(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,l0)},Z.prototype.redSub=function(l0){return Y(this.red,"redSub works only with red numbers"),this.red.sub(this,l0)},Z.prototype.redISub=function(l0){return Y(this.red,"redISub works only with red numbers"),this.red.isub(this,l0)},Z.prototype.redShl=function(l0){return Y(this.red,"redShl works only with red numbers"),this.red.shl(this,l0)},Z.prototype.redMul=function(l0){return Y(this.red,"redMul works only with red numbers"),this.red._verify2(this,l0),this.red.mul(this,l0)},Z.prototype.redIMul=function(l0){return Y(this.red,"redMul works only with red numbers"),this.red._verify2(this,l0),this.red.imul(this,l0)},Z.prototype.redSqr=function(){return Y(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},Z.prototype.redISqr=function(){return Y(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},Z.prototype.redSqrt=function(){return Y(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},Z.prototype.redInvm=function(){return Y(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},Z.prototype.redNeg=function(){return Y(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},Z.prototype.redPow=function(l0){return Y(this.red&&!l0.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,l0)};var c0={k256:null,p224:null,p192:null,p25519:null};function C(l0,z){this.name=l0,this.p=new Z(z,16),this.n=this.p.bitLength(),this.k=new Z(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}C.prototype._tmp=function(){var l0=new Z(null);return l0.words=new Array(Math.ceil(this.n/13)),l0},C.prototype.ireduce=function(l0){var z=l0,o0;do this.split(z,this.tmp),z=this.imulK(z),z=z.iadd(this.tmp),o0=z.bitLength();while(o0>this.n);var M=o0<this.n?-1:z.ucmp(this.p);return M===0?(z.words[0]=0,z.length=1):M>0?z.isub(this.p):z.strip!==void 0?z.strip():z._strip(),z},C.prototype.split=function(l0,z){l0.iushrn(this.n,0,z)},C.prototype.imulK=function(l0){return l0.imul(this.k)};function h0(){C.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}$(h0,C),h0.prototype.split=function(l0,z){for(var o0=4194303,M=Math.min(l0.length,9),u0=0;u0<M;u0++)z.words[u0]=l0.words[u0];if(z.length=M,l0.length<=9){l0.words[0]=0,l0.length=1;return}var S=l0.words[9];for(z.words[z.length++]=S&o0,u0=10;u0<l0.length;u0++){var n0=l0.words[u0]|0;l0.words[u0-10]=(n0&o0)<<4|S>>>22,S=n0}S>>>=22,l0.words[u0-10]=S,S===0&&l0.length>10?l0.length-=10:l0.length-=9},h0.prototype.imulK=function(l0){l0.words[l0.length]=0,l0.words[l0.length+1]=0,l0.length+=2;for(var z=0,o0=0;o0<l0.length;o0++){var M=l0.words[o0]|0;z+=M*977,l0.words[o0]=z&67108863,z=M*64+(z/67108864|0)}return l0.words[l0.length-1]===0&&(l0.length--,l0.words[l0.length-1]===0&&l0.length--),l0};function L(){C.call(this,"p224","ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001")}$(L,C);function d0(){C.call(this,"p192","ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff")}$(d0,C);function R(){C.call(this,"25519","7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed")}$(R,C),R.prototype.imulK=function(l0){for(var z=0,o0=0;o0<l0.length;o0++){var M=(l0.words[o0]|0)*19+z,u0=M&67108863;M>>>=26,l0.words[o0]=u0,z=M}return z!==0&&(l0.words[l0.length++]=z),l0},Z._prime=function(l0){if(c0[l0])return c0[l0];var z;if(l0==="k256")z=new h0;else if(l0==="p224")z=new L;else if(l0==="p192")z=new d0;else if(l0==="p25519")z=new R;else throw new Error("Unknown prime "+l0);return c0[l0]=z,z};function b0(l0){if(typeof l0=="string"){var z=Z._prime(l0);this.m=z.p,this.prime=z}else Y(l0.gtn(1),"modulus must be greater than 1"),this.m=l0,this.prime=null}b0.prototype._verify1=function(l0){Y(l0.negative===0,"red works only with positives"),Y(l0.red,"red works only with red numbers")},b0.prototype._verify2=function(l0,z){Y((l0.negative|z.negative)===0,"red works only with positives"),Y(l0.red&&l0.red===z.red,"red works only with red numbers")},b0.prototype.imod=function(l0){return this.prime?this.prime.ireduce(l0)._forceRed(this):l0.umod(this.m)._forceRed(this)},b0.prototype.neg=function(l0){return l0.isZero()?l0.clone():this.m.sub(l0)._forceRed(this)},b0.prototype.add=function(l0,z){this._verify2(l0,z);var o0=l0.add(z);return o0.cmp(this.m)>=0&&o0.isub(this.m),o0._forceRed(this)},b0.prototype.iadd=function(l0,z){this._verify2(l0,z);var o0=l0.iadd(z);return o0.cmp(this.m)>=0&&o0.isub(this.m),o0},b0.prototype.sub=function(l0,z){this._verify2(l0,z);var o0=l0.sub(z);return o0.cmpn(0)<0&&o0.iadd(this.m),o0._forceRed(this)},b0.prototype.isub=function(l0,z){this._verify2(l0,z);var o0=l0.isub(z);return o0.cmpn(0)<0&&o0.iadd(this.m),o0},b0.prototype.shl=function(l0,z){return this._verify1(l0),this.imod(l0.ushln(z))},b0.prototype.imul=function(l0,z){return this._verify2(l0,z),this.imod(l0.imul(z))},b0.prototype.mul=function(l0,z){return this._verify2(l0,z),this.imod(l0.mul(z))},b0.prototype.isqr=function(l0){return this.imul(l0,l0.clone())},b0.prototype.sqr=function(l0){return this.mul(l0,l0)},b0.prototype.sqrt=function(l0){if(l0.isZero())return l0.clone();var z=this.m.andln(3);if(Y(z%2===1),z===3){var o0=this.m.add(new Z(1)).iushrn(2);return this.pow(l0,o0)}for(var M=this.m.subn(1),u0=0;!M.isZero()&&M.andln(1)===0;)u0++,M.iushrn(1);Y(!M.isZero());var S=new Z(1).toRed(this),n0=S.redNeg(),v=this.m.subn(1).iushrn(1),s0=this.m.bitLength();for(s0=new Z(2*s0*s0).toRed(this);this.pow(s0,v).cmp(n0)!==0;)s0.redIAdd(n0);for(var I=this.pow(s0,M),t0=this.pow(l0,M.addn(1).iushrn(1)),m0=this.pow(l0,M),a0=u0;m0.cmp(S)!==0;){for(var q=m0,e0=0;q.cmp(S)!==0;e0++)q=q.redSqr();Y(e0<a0);var r0=this.pow(I,new Z(1).iushln(a0-e0-1));t0=t0.redMul(r0),I=r0.redSqr(),m0=m0.redMul(I),a0=e0}return t0},b0.prototype.invm=function(l0){var z=l0._invmp(this.m);return z.negative!==0?(z.negative=0,this.imod(z).redNeg()):this.imod(z)},b0.prototype.pow=function(l0,z){if(z.isZero())return new Z(1).toRed(this);if(z.cmpn(1)===0)return l0.clone();var o0=4,M=new Array(1<<o0);M[0]=new Z(1).toRed(this),M[1]=l0;for(var u0=2;u0<M.length;u0++)M[u0]=this.mul(M[u0-1],l0);var S=M[0],n0=0,v=0,s0=z.bitLength()%26;for(s0===0&&(s0=26),u0=z.length-1;u0>=0;u0--){for(var I=z.words[u0],t0=s0-1;t0>=0;t0--){var m0=I>>t0&1;if(S!==M[0]&&(S=this.sqr(S)),m0===0&&n0===0){v=0;continue}n0<<=1,n0|=m0,v++,!(v!==o0&&(u0!==0||t0!==0))&&(S=this.mul(S,M[n0]),v=0,n0=0)}s0=26}return S},b0.prototype.convertTo=function(l0){var z=l0.umod(this.m);return z===l0?z.clone():z},b0.prototype.convertFrom=function(l0){var z=l0.clone();return z.red=null,z},Z.mont=function(l0){return new P(l0)};function P(l0){b0.call(this,l0),this.shift=this.m.bitLength(),this.shift%26!==0&&(this.shift+=26-this.shift%26),this.r=new Z(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)}$(P,b0),P.prototype.convertTo=function(l0){return this.imod(l0.ushln(this.shift))},P.prototype.convertFrom=function(l0){var z=this.imod(l0.mul(this.rinv));return z.red=null,z},P.prototype.imul=function(l0,z){if(l0.isZero()||z.isZero())return l0.words[0]=0,l0.length=1,l0;var o0=l0.imul(z),M=o0.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),u0=o0.isub(M).iushrn(this.shift),S=u0;return u0.cmp(this.m)>=0?S=u0.isub(this.m):u0.cmpn(0)<0&&(S=u0.iadd(this.m)),S._forceRed(this)},P.prototype.mul=function(l0,z){if(l0.isZero()||z.isZero())return new Z(0)._forceRed(this);var o0=l0.mul(z),M=o0.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),u0=o0.isub(M).iushrn(this.shift),S=u0;return u0.cmp(this.m)>=0?S=u0.isub(this.m):u0.cmpn(0)<0&&(S=u0.iadd(this.m)),S._forceRed(this)},P.prototype.invm=function(l0){var z=this.imod(l0._invmp(this.m).mul(this.r2));return z._forceRed(this)}})(typeof K>"u"||K,X)}}),lQ=$Q({"node_modules/minimalistic-crypto-utils/lib/utils.js"(X){var K=X;function x0($,Z){if(Array.isArray($))return $.slice();if(!$)return[];var Q=[];if(typeof $!="string"){for(var U=0;U<$.length;U++)Q[U]=$[U]|0;return Q}if(Z==="hex"){$=$.replace(/[^a-z0-9]+/gi,""),$.length%2!==0&&($="0"+$);for(var U=0;U<$.length;U+=2)Q.push(parseInt($[U]+$[U+1],16))}else for(var U=0;U<$.length;U++){var V=$.charCodeAt(U),B0=V>>8,H=V&255;B0?Q.push(B0,H):Q.push(H)}return Q}K.toArray=x0;function G($){return $.length===1?"0"+$:$}K.zero2=G;function Y($){for(var Z="",Q=0;Q<$.length;Q++)Z+=G($[Q].toString(16));return Z}K.toHex=Y,K.encode=function($,Z){return Z==="hex"?Y($):$}}}),oQ=$Q({"node_modules/elliptic/lib/elliptic/utils.js"(X){var K=X,x0=bQ(),G=N0(),Y=lQ();K.assert=G,K.toArray=Y.toArray,K.zero2=Y.zero2,K.toHex=Y.toHex,K.encode=Y.encode;function $(B0,H,y0){var W=new Array(Math.max(B0.bitLength(),y0)+1);W.fill(0);for(var w0=1<<H+1,E=B0.clone(),p0=0;p0<W.length;p0++){var T,f0=E.andln(w0-1);E.isOdd()?(f0>(w0>>1)-1?T=(w0>>1)-f0:T=f0,E.isubn(T)):T=0,W[p0]=T,E.iushrn(1)}return W}K.getNAF=$;function Z(B0,H){var y0=[[],[]];B0=B0.clone(),H=H.clone();for(var W=0,w0=0,E;B0.cmpn(-W)>0||H.cmpn(-w0)>0;){var p0=B0.andln(3)+W&3,T=H.andln(3)+w0&3;p0===3&&(p0=-1),T===3&&(T=-1);var f0;(p0&1)===0?f0=0:(E=B0.andln(7)+W&7,(E===3||E===5)&&T===2?f0=-p0:f0=p0),y0[0].push(f0);var D;(T&1)===0?D=0:(E=H.andln(7)+w0&7,(E===3||E===5)&&p0===2?D=-T:D=T),y0[1].push(D),2*W===f0+1&&(W=1-W),2*w0===D+1&&(w0=1-w0),B0.iushrn(1),H.iushrn(1)}return y0}K.getJSF=Z;function Q(B0,H,y0){var W="_"+H;B0.prototype[H]=function(){return this[W]!==void 0?this[W]:this[W]=y0.call(this)}}K.cachedProperty=Q;function U(B0){return typeof B0=="string"?K.toArray(B0,"hex"):B0}K.parseBytes=U;function V(B0){return new x0(B0,"hex","le")}K.intFromLE=V}}),uQ=$Q({"node_modules/elliptic/lib/elliptic/curve/base.js"(X,K){var x0=bQ(),G=oQ(),Y=G.getNAF,$=G.getJSF,Z=G.assert;function Q(V,B0){this.type=V,this.p=new x0(B0.p,16),this.red=B0.prime?x0.red(B0.prime):x0.mont(this.p),this.zero=new x0(0).toRed(this.red),this.one=new x0(1).toRed(this.red),this.two=new x0(2).toRed(this.red),this.n=B0.n&&new x0(B0.n,16),this.g=B0.g&&this.pointFromJSON(B0.g,B0.gRed),this._wnafT1=new Array(4),this._wnafT2=new Array(4),this._wnafT3=new Array(4),this._wnafT4=new Array(4),this._bitLength=this.n?this.n.bitLength():0;var H=this.n&&this.p.div(this.n);!H||H.cmpn(100)>0?this.redN=null:(this._maxwellTrick=!0,this.redN=this.n.toRed(this.red))}K.exports=Q,Q.prototype.point=function(){throw new Error("Not implemented")},Q.prototype.validate=function(){throw new Error("Not implemented")},Q.prototype._fixedNafMul=function(V,B0){Z(V.precomputed);var H=V._getDoubles(),y0=Y(B0,1,this._bitLength),W=(1<<H.step+1)-(H.step%2===0?2:1);W/=3;var w0=[],E,p0;for(E=0;E<y0.length;E+=H.step){p0=0;for(var T=E+H.step-1;T>=E;T--)p0=(p0<<1)+y0[T];w0.push(p0)}for(var f0=this.jpoint(null,null,null),D=this.jpoint(null,null,null),c0=W;c0>0;c0--){for(E=0;E<w0.length;E++)p0=w0[E],p0===c0?D=D.mixedAdd(H.points[E]):p0===-c0&&(D=D.mixedAdd(H.points[E].neg()));f0=f0.add(D)}return f0.toP()},Q.prototype._wnafMul=function(V,B0){var H=4,y0=V._getNAFPoints(H);H=y0.wnd;for(var W=y0.points,w0=Y(B0,H,this._bitLength),E=this.jpoint(null,null,null),p0=w0.length-1;p0>=0;p0--){for(var T=0;p0>=0&&w0[p0]===0;p0--)T++;if(p0>=0&&T++,E=E.dblp(T),p0<0)break;var f0=w0[p0];Z(f0!==0),V.type==="affine"?f0>0?E=E.mixedAdd(W[f0-1>>1]):E=E.mixedAdd(W[-f0-1>>1].neg()):f0>0?E=E.add(W[f0-1>>1]):E=E.add(W[-f0-1>>1].neg())}return V.type==="affine"?E.toP():E},Q.prototype._wnafMulAdd=function(V,B0,H,y0,W){var w0=this._wnafT1,E=this._wnafT2,p0=this._wnafT3,T=0,f0,D,c0;for(f0=0;f0<y0;f0++){c0=B0[f0];var C=c0._getNAFPoints(V);w0[f0]=C.wnd,E[f0]=C.points}for(f0=y0-1;f0>=1;f0-=2){var h0=f0-1,L=f0;if(w0[h0]!==1||w0[L]!==1){p0[h0]=Y(H[h0],w0[h0],this._bitLength),p0[L]=Y(H[L],w0[L],this._bitLength),T=Math.max(p0[h0].length,T),T=Math.max(p0[L].length,T);continue}var d0=[B0[h0],null,null,B0[L]];B0[h0].y.cmp(B0[L].y)===0?(d0[1]=B0[h0].add(B0[L]),d0[2]=B0[h0].toJ().mixedAdd(B0[L].neg())):B0[h0].y.cmp(B0[L].y.redNeg())===0?(d0[1]=B0[h0].toJ().mixedAdd(B0[L]),d0[2]=B0[h0].add(B0[L].neg())):(d0[1]=B0[h0].toJ().mixedAdd(B0[L]),d0[2]=B0[h0].toJ().mixedAdd(B0[L].neg()));var R=[-3,-1,-5,-7,0,7,5,1,3],b0=$(H[h0],H[L]);for(T=Math.max(b0[0].length,T),p0[h0]=new Array(T),p0[L]=new Array(T),D=0;D<T;D++){var P=b0[0][D]|0,l0=b0[1][D]|0;p0[h0][D]=R[(P+1)*3+(l0+1)],p0[L][D]=0,E[h0]=d0}}var z=this.jpoint(null,null,null),o0=this._wnafT4;for(f0=T;f0>=0;f0--){for(var M=0;f0>=0;){var u0=!0;for(D=0;D<y0;D++)o0[D]=p0[D][f0]|0,o0[D]!==0&&(u0=!1);if(!u0)break;M++,f0--}if(f0>=0&&M++,z=z.dblp(M),f0<0)break;for(D=0;D<y0;D++){var S=o0[D];S!==0&&(S>0?c0=E[D][S-1>>1]:S<0&&(c0=E[D][-S-1>>1].neg()),c0.type==="affine"?z=z.mixedAdd(c0):z=z.add(c0))}}for(f0=0;f0<y0;f0++)E[f0]=null;return W?z:z.toP()};function U(V,B0){this.curve=V,this.type=B0,this.precomputed=null}Q.BasePoint=U,U.prototype.eq=function(){throw new Error("Not implemented")},U.prototype.validate=function(){return this.curve.validate(this)},Q.prototype.decodePoint=function(V,B0){V=G.toArray(V,B0);var H=this.p.byteLength();if((V[0]===4||V[0]===6||V[0]===7)&&V.length-1===2*H){V[0]===6?Z(V[V.length-1]%2===0):V[0]===7&&Z(V[V.length-1]%2===1);var y0=this.point(V.slice(1,1+H),V.slice(1+H,1+2*H));return y0}else if((V[0]===2||V[0]===3)&&V.length-1===H)return this.pointFromX(V.slice(1,1+H),V[0]===3);throw new Error("Unknown point format")},U.prototype.encodeCompressed=function(V){return this.encode(V,!0)},U.prototype._encode=function(V){var B0=this.curve.p.byteLength(),H=this.getX().toArray("be",B0);return V?[this.getY().isEven()?2:3].concat(H):[4].concat(H,this.getY().toArray("be",B0))},U.prototype.encode=function(V,B0){return G.encode(this._encode(B0),V)},U.prototype.precompute=function(V){if(this.precomputed)return this;var B0={doubles:null,naf:null,beta:null};return B0.naf=this._getNAFPoints(8),B0.doubles=this._getDoubles(4,V),B0.beta=this._getBeta(),this.precomputed=B0,this},U.prototype._hasDoubles=function(V){if(!this.precomputed)return!1;var B0=this.precomputed.doubles;return B0?B0.points.length>=Math.ceil((V.bitLength()+1)/B0.step):!1},U.prototype._getDoubles=function(V,B0){if(this.precomputed&&this.precomputed.doubles)return this.precomputed.doubles;for(var H=[this],y0=this,W=0;W<B0;W+=V){for(var w0=0;w0<V;w0++)y0=y0.dbl();H.push(y0)}return{step:V,points:H}},U.prototype._getNAFPoints=function(V){if(this.precomputed&&this.precomputed.naf)return this.precomputed.naf;for(var B0=[this],H=(1<<V)-1,y0=H===1?null:this.dbl(),W=1;W<H;W++)B0[W]=B0[W-1].add(y0);return{wnd:V,points:B0}},U.prototype._getBeta=function(){return null},U.prototype.dblp=function(V){for(var B0=this,H=0;H<V;H++)B0=B0.dbl();return B0}}}),nQ=$Q({"node_modules/elliptic/lib/elliptic/curve/short.js"(X,K){var x0=oQ(),G=bQ(),Y=X0(),$=uQ(),Z=x0.assert;function Q(B0){$.call(this,"short",B0),this.a=new G(B0.a,16).toRed(this.red),this.b=new G(B0.b,16).toRed(this.red),this.tinv=this.two.redInvm(),this.zeroA=this.a.fromRed().cmpn(0)===0,this.threeA=this.a.fromRed().sub(this.p).cmpn(-3)===0,this.endo=this._getEndomorphism(B0),this._endoWnafT1=new Array(4),this._endoWnafT2=new Array(4)}Y(Q,$),K.exports=Q,Q.prototype._getEndomorphism=function(B0){if(!(!this.zeroA||!this.g||!this.n||this.p.modn(3)!==1)){var H,y0;if(B0.beta)H=new G(B0.beta,16).toRed(this.red);else{var W=this._getEndoRoots(this.p);H=W[0].cmp(W[1])<0?W[0]:W[1],H=H.toRed(this.red)}if(B0.lambda)y0=new G(B0.lambda,16);else{var w0=this._getEndoRoots(this.n);this.g.mul(w0[0]).x.cmp(this.g.x.redMul(H))===0?y0=w0[0]:(y0=w0[1],Z(this.g.mul(y0).x.cmp(this.g.x.redMul(H))===0))}var E;return B0.basis?E=B0.basis.map(function(p0){return{a:new G(p0.a,16),b:new G(p0.b,16)}}):E=this._getEndoBasis(y0),{beta:H,lambda:y0,basis:E}}},Q.prototype._getEndoRoots=function(B0){var H=B0===this.p?this.red:G.mont(B0),y0=new G(2).toRed(H).redInvm(),W=y0.redNeg(),w0=new G(3).toRed(H).redNeg().redSqrt().redMul(y0),E=W.redAdd(w0).fromRed(),p0=W.redSub(w0).fromRed();return[E,p0]},Q.prototype._getEndoBasis=function(B0){for(var H=this.n.ushrn(Math.floor(this.n.bitLength()/2)),y0=B0,W=this.n.clone(),w0=new G(1),E=new G(0),p0=new G(0),T=new G(1),f0,D,c0,C,h0,L,d0,R=0,b0,P;y0.cmpn(0)!==0;){var l0=W.div(y0);b0=W.sub(l0.mul(y0)),P=p0.sub(l0.mul(w0));var z=T.sub(l0.mul(E));if(!c0&&b0.cmp(H)<0)f0=d0.neg(),D=w0,c0=b0.neg(),C=P;else if(c0&&++R===2)break;d0=b0,W=y0,y0=b0,p0=w0,w0=P,T=E,E=z}h0=b0.neg(),L=P;var o0=c0.sqr().add(C.sqr()),M=h0.sqr().add(L.sqr());return M.cmp(o0)>=0&&(h0=f0,L=D),c0.negative&&(c0=c0.neg(),C=C.neg()),h0.negative&&(h0=h0.neg(),L=L.neg()),[{a:c0,b:C},{a:h0,b:L}]},Q.prototype._endoSplit=function(B0){var H=this.endo.basis,y0=H[0],W=H[1],w0=W.b.mul(B0).divRound(this.n),E=y0.b.neg().mul(B0).divRound(this.n),p0=w0.mul(y0.a),T=E.mul(W.a),f0=w0.mul(y0.b),D=E.mul(W.b),c0=B0.sub(p0).sub(T),C=f0.add(D).neg();return{k1:c0,k2:C}},Q.prototype.pointFromX=function(B0,H){B0=new G(B0,16),B0.red||(B0=B0.toRed(this.red));var y0=B0.redSqr().redMul(B0).redIAdd(B0.redMul(this.a)).redIAdd(this.b),W=y0.redSqrt();if(W.redSqr().redSub(y0).cmp(this.zero)!==0)throw new Error("invalid point");var w0=W.fromRed().isOdd();return(H&&!w0||!H&&w0)&&(W=W.redNeg()),this.point(B0,W)},Q.prototype.validate=function(B0){if(B0.inf)return!0;var{x:H,y:y0}=B0,W=this.a.redMul(H),w0=H.redSqr().redMul(H).redIAdd(W).redIAdd(this.b);return y0.redSqr().redISub(w0).cmpn(0)===0},Q.prototype._endoWnafMulAdd=function(B0,H,y0){for(var W=this._endoWnafT1,w0=this._endoWnafT2,E=0;E<B0.length;E++){var p0=this._endoSplit(H[E]),T=B0[E],f0=T._getBeta();p0.k1.negative&&(p0.k1.ineg(),T=T.neg(!0)),p0.k2.negative&&(p0.k2.ineg(),f0=f0.neg(!0)),W[E*2]=T,W[E*2+1]=f0,w0[E*2]=p0.k1,w0[E*2+1]=p0.k2}for(var D=this._wnafMulAdd(1,W,w0,E*2,y0),c0=0;c0<E*2;c0++)W[c0]=null,w0[c0]=null;return D};function U(B0,H,y0,W){$.BasePoint.call(this,B0,"affine"),H===null&&y0===null?(this.x=null,this.y=null,this.inf=!0):(this.x=new G(H,16),this.y=new G(y0,16),W&&(this.x.forceRed(this.curve.red),this.y.forceRed(this.curve.red)),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.y.red||(this.y=this.y.toRed(this.curve.red)),this.inf=!1)}Y(U,$.BasePoint),Q.prototype.point=function(B0,H,y0){return new U(this,B0,H,y0)},Q.prototype.pointFromJSON=function(B0,H){return U.fromJSON(this,B0,H)},U.prototype._getBeta=function(){if(this.curve.endo){var B0=this.precomputed;if(B0&&B0.beta)return B0.beta;var H=this.curve.point(this.x.redMul(this.curve.endo.beta),this.y);if(B0){var y0=this.curve,W=function(w0){return y0.point(w0.x.redMul(y0.endo.beta),w0.y)};B0.beta=H,H.precomputed={beta:null,naf:B0.naf&&{wnd:B0.naf.wnd,points:B0.naf.points.map(W)},doubles:B0.doubles&&{step:B0.doubles.step,points:B0.doubles.points.map(W)}}}return H}},U.prototype.toJSON=function(){return this.precomputed?[this.x,this.y,this.precomputed&&{doubles:this.precomputed.doubles&&{step:this.precomputed.doubles.step,points:this.precomputed.doubles.points.slice(1)},naf:this.precomputed.naf&&{wnd:this.precomputed.naf.wnd,points:this.precomputed.naf.points.slice(1)}}]:[this.x,this.y]},U.fromJSON=function(B0,H,y0){typeof H=="string"&&(H=JSON.parse(H));var W=B0.point(H[0],H[1],y0);if(!H[2])return W;function w0(p0){return B0.point(p0[0],p0[1],y0)}var E=H[2];return W.precomputed={beta:null,doubles:E.doubles&&{step:E.doubles.step,points:[W].concat(E.doubles.points.map(w0))},naf:E.naf&&{wnd:E.naf.wnd,points:[W].concat(E.naf.points.map(w0))}},W},U.prototype.inspect=function(){return this.isInfinity()?"<EC Point Infinity>":"<EC Point x: "+this.x.fromRed().toString(16,2)+" y: "+this.y.fromRed().toString(16,2)+">"},U.prototype.isInfinity=function(){return this.inf},U.prototype.add=function(B0){if(this.inf)return B0;if(B0.inf)return this;if(this.eq(B0))return this.dbl();if(this.neg().eq(B0))return this.curve.point(null,null);if(this.x.cmp(B0.x)===0)return this.curve.point(null,null);var H=this.y.redSub(B0.y);H.cmpn(0)!==0&&(H=H.redMul(this.x.redSub(B0.x).redInvm()));var y0=H.redSqr().redISub(this.x).redISub(B0.x),W=H.redMul(this.x.redSub(y0)).redISub(this.y);return this.curve.point(y0,W)},U.prototype.dbl=function(){if(this.inf)return this;var B0=this.y.redAdd(this.y);if(B0.cmpn(0)===0)return this.curve.point(null,null);var H=this.curve.a,y0=this.x.redSqr(),W=B0.redInvm(),w0=y0.redAdd(y0).redIAdd(y0).redIAdd(H).redMul(W),E=w0.redSqr().redISub(this.x.redAdd(this.x)),p0=w0.redMul(this.x.redSub(E)).redISub(this.y);return this.curve.point(E,p0)},U.prototype.getX=function(){return this.x.fromRed()},U.prototype.getY=function(){return this.y.fromRed()},U.prototype.mul=function(B0){return B0=new G(B0,16),this.isInfinity()?this:this._hasDoubles(B0)?this.curve._fixedNafMul(this,B0):this.curve.endo?this.curve._endoWnafMulAdd([this],[B0]):this.curve._wnafMul(this,B0)},U.prototype.mulAdd=function(B0,H,y0){var W=[this,H],w0=[B0,y0];return this.curve.endo?this.curve._endoWnafMulAdd(W,w0):this.curve._wnafMulAdd(1,W,w0,2)},U.prototype.jmulAdd=function(B0,H,y0){var W=[this,H],w0=[B0,y0];return this.curve.endo?this.curve._endoWnafMulAdd(W,w0,!0):this.curve._wnafMulAdd(1,W,w0,2,!0)},U.prototype.eq=function(B0){return this===B0||this.inf===B0.inf&&(this.inf||this.x.cmp(B0.x)===0&&this.y.cmp(B0.y)===0)},U.prototype.neg=function(B0){if(this.inf)return this;var H=this.curve.point(this.x,this.y.redNeg());if(B0&&this.precomputed){var y0=this.precomputed,W=function(w0){return w0.neg()};H.precomputed={naf:y0.naf&&{wnd:y0.naf.wnd,points:y0.naf.points.map(W)},doubles:y0.doubles&&{step:y0.doubles.step,points:y0.doubles.points.map(W)}}}return H},U.prototype.toJ=function(){if(this.inf)return this.curve.jpoint(null,null,null);var B0=this.curve.jpoint(this.x,this.y,this.curve.one);return B0};function V(B0,H,y0,W){$.BasePoint.call(this,B0,"jacobian"),H===null&&y0===null&&W===null?(this.x=this.curve.one,this.y=this.curve.one,this.z=new G(0)):(this.x=new G(H,16),this.y=new G(y0,16),this.z=new G(W,16)),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.y.red||(this.y=this.y.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)),this.zOne=this.z===this.curve.one}Y(V,$.BasePoint),Q.prototype.jpoint=function(B0,H,y0){return new V(this,B0,H,y0)},V.prototype.toP=function(){if(this.isInfinity())return this.curve.point(null,null);var B0=this.z.redInvm(),H=B0.redSqr(),y0=this.x.redMul(H),W=this.y.redMul(H).redMul(B0);return this.curve.point(y0,W)},V.prototype.neg=function(){return this.curve.jpoint(this.x,this.y.redNeg(),this.z)},V.prototype.add=function(B0){if(this.isInfinity())return B0;if(B0.isInfinity())return this;var H=B0.z.redSqr(),y0=this.z.redSqr(),W=this.x.redMul(H),w0=B0.x.redMul(y0),E=this.y.redMul(H.redMul(B0.z)),p0=B0.y.redMul(y0.redMul(this.z)),T=W.redSub(w0),f0=E.redSub(p0);if(T.cmpn(0)===0)return f0.cmpn(0)!==0?this.curve.jpoint(null,null,null):this.dbl();var D=T.redSqr(),c0=D.redMul(T),C=W.redMul(D),h0=f0.redSqr().redIAdd(c0).redISub(C).redISub(C),L=f0.redMul(C.redISub(h0)).redISub(E.redMul(c0)),d0=this.z.redMul(B0.z).redMul(T);return this.curve.jpoint(h0,L,d0)},V.prototype.mixedAdd=function(B0){if(this.isInfinity())return B0.toJ();if(B0.isInfinity())return this;var H=this.z.redSqr(),y0=this.x,W=B0.x.redMul(H),w0=this.y,E=B0.y.redMul(H).redMul(this.z),p0=y0.redSub(W),T=w0.redSub(E);if(p0.cmpn(0)===0)return T.cmpn(0)!==0?this.curve.jpoint(null,null,null):this.dbl();var f0=p0.redSqr(),D=f0.redMul(p0),c0=y0.redMul(f0),C=T.redSqr().redIAdd(D).redISub(c0).redISub(c0),h0=T.redMul(c0.redISub(C)).redISub(w0.redMul(D)),L=this.z.redMul(p0);return this.curve.jpoint(C,h0,L)},V.prototype.dblp=function(B0){if(B0===0)return this;if(this.isInfinity())return this;if(!B0)return this.dbl();var H;if(this.curve.zeroA||this.curve.threeA){var y0=this;for(H=0;H<B0;H++)y0=y0.dbl();return y0}var W=this.curve.a,w0=this.curve.tinv,E=this.x,p0=this.y,T=this.z,f0=T.redSqr().redSqr(),D=p0.redAdd(p0);for(H=0;H<B0;H++){var c0=E.redSqr(),C=D.redSqr(),h0=C.redSqr(),L=c0.redAdd(c0).redIAdd(c0).redIAdd(W.redMul(f0)),d0=E.redMul(C),R=L.redSqr().redISub(d0.redAdd(d0)),b0=d0.redISub(R),P=L.redMul(b0);P=P.redIAdd(P).redISub(h0);var l0=D.redMul(T);H+1<B0&&(f0=f0.redMul(h0)),E=R,T=l0,D=P}return this.curve.jpoint(E,D.redMul(w0),T)},V.prototype.dbl=function(){return this.isInfinity()?this:this.curve.zeroA?this._zeroDbl():this.curve.threeA?this._threeDbl():this._dbl()},V.prototype._zeroDbl=function(){var B0,H,y0;if(this.zOne){var W=this.x.redSqr(),w0=this.y.redSqr(),E=w0.redSqr(),p0=this.x.redAdd(w0).redSqr().redISub(W).redISub(E);p0=p0.redIAdd(p0);var T=W.redAdd(W).redIAdd(W),f0=T.redSqr().redISub(p0).redISub(p0),D=E.redIAdd(E);D=D.redIAdd(D),D=D.redIAdd(D),B0=f0,H=T.redMul(p0.redISub(f0)).redISub(D),y0=this.y.redAdd(this.y)}else{var c0=this.x.redSqr(),C=this.y.redSqr(),h0=C.redSqr(),L=this.x.redAdd(C).redSqr().redISub(c0).redISub(h0);L=L.redIAdd(L);var d0=c0.redAdd(c0).redIAdd(c0),R=d0.redSqr(),b0=h0.redIAdd(h0);b0=b0.redIAdd(b0),b0=b0.redIAdd(b0),B0=R.redISub(L).redISub(L),H=d0.redMul(L.redISub(B0)).redISub(b0),y0=this.y.redMul(this.z),y0=y0.redIAdd(y0)}return this.curve.jpoint(B0,H,y0)},V.prototype._threeDbl=function(){var B0,H,y0;if(this.zOne){var W=this.x.redSqr(),w0=this.y.redSqr(),E=w0.redSqr(),p0=this.x.redAdd(w0).redSqr().redISub(W).redISub(E);p0=p0.redIAdd(p0);var T=W.redAdd(W).redIAdd(W).redIAdd(this.curve.a),f0=T.redSqr().redISub(p0).redISub(p0);B0=f0;var D=E.redIAdd(E);D=D.redIAdd(D),D=D.redIAdd(D),H=T.redMul(p0.redISub(f0)).redISub(D),y0=this.y.redAdd(this.y)}else{var c0=this.z.redSqr(),C=this.y.redSqr(),h0=this.x.redMul(C),L=this.x.redSub(c0).redMul(this.x.redAdd(c0));L=L.redAdd(L).redIAdd(L);var d0=h0.redIAdd(h0);d0=d0.redIAdd(d0);var R=d0.redAdd(d0);B0=L.redSqr().redISub(R),y0=this.y.redAdd(this.z).redSqr().redISub(C).redISub(c0);var b0=C.redSqr();b0=b0.redIAdd(b0),b0=b0.redIAdd(b0),b0=b0.redIAdd(b0),H=L.redMul(d0.redISub(B0)).redISub(b0)}return this.curve.jpoint(B0,H,y0)},V.prototype._dbl=function(){var B0=this.curve.a,H=this.x,y0=this.y,W=this.z,w0=W.redSqr().redSqr(),E=H.redSqr(),p0=y0.redSqr(),T=E.redAdd(E).redIAdd(E).redIAdd(B0.redMul(w0)),f0=H.redAdd(H);f0=f0.redIAdd(f0);var D=f0.redMul(p0),c0=T.redSqr().redISub(D.redAdd(D)),C=D.redISub(c0),h0=p0.redSqr();h0=h0.redIAdd(h0),h0=h0.redIAdd(h0),h0=h0.redIAdd(h0);var L=T.redMul(C).redISub(h0),d0=y0.redAdd(y0).redMul(W);return this.curve.jpoint(c0,L,d0)},V.prototype.trpl=function(){if(!this.curve.zeroA)return this.dbl().add(this);var B0=this.x.redSqr(),H=this.y.redSqr(),y0=this.z.redSqr(),W=H.redSqr(),w0=B0.redAdd(B0).redIAdd(B0),E=w0.redSqr(),p0=this.x.redAdd(H).redSqr().redISub(B0).redISub(W);p0=p0.redIAdd(p0),p0=p0.redAdd(p0).redIAdd(p0),p0=p0.redISub(E);var T=p0.redSqr(),f0=W.redIAdd(W);f0=f0.redIAdd(f0),f0=f0.redIAdd(f0),f0=f0.redIAdd(f0);var D=w0.redIAdd(p0).redSqr().redISub(E).redISub(T).redISub(f0),c0=H.redMul(D);c0=c0.redIAdd(c0),c0=c0.redIAdd(c0);var C=this.x.redMul(T).redISub(c0);C=C.redIAdd(C),C=C.redIAdd(C);var h0=this.y.redMul(D.redMul(f0.redISub(D)).redISub(p0.redMul(T)));h0=h0.redIAdd(h0),h0=h0.redIAdd(h0),h0=h0.redIAdd(h0);var L=this.z.redAdd(p0).redSqr().redISub(y0).redISub(T);return this.curve.jpoint(C,h0,L)},V.prototype.mul=function(B0,H){return B0=new G(B0,H),this.curve._wnafMul(this,B0)},V.prototype.eq=function(B0){if(B0.type==="affine")return this.eq(B0.toJ());if(this===B0)return!0;var H=this.z.redSqr(),y0=B0.z.redSqr();if(this.x.redMul(y0).redISub(B0.x.redMul(H)).cmpn(0)!==0)return!1;var W=H.redMul(this.z),w0=y0.redMul(B0.z);return this.y.redMul(w0).redISub(B0.y.redMul(W)).cmpn(0)===0},V.prototype.eqXToP=function(B0){var H=this.z.redSqr(),y0=B0.toRed(this.curve.red).redMul(H);if(this.x.cmp(y0)===0)return!0;for(var W=B0.clone(),w0=this.curve.redN.redMul(H);;){if(W.iadd(this.curve.n),W.cmp(this.curve.p)>=0)return!1;if(y0.redIAdd(w0),this.x.cmp(y0)===0)return!0}},V.prototype.inspect=function(){return this.isInfinity()?"<EC JPoint Infinity>":"<EC JPoint x: "+this.x.toString(16,2)+" y: "+this.y.toString(16,2)+" z: "+this.z.toString(16,2)+">"},V.prototype.isInfinity=function(){return this.z.cmpn(0)===0}}}),sQ=$Q({"node_modules/elliptic/lib/elliptic/curve/mont.js"(X,K){var x0=bQ(),G=X0(),Y=uQ(),$=oQ();function Z(U){Y.call(this,"mont",U),this.a=new x0(U.a,16).toRed(this.red),this.b=new x0(U.b,16).toRed(this.red),this.i4=new x0(4).toRed(this.red).redInvm(),this.two=new x0(2).toRed(this.red),this.a24=this.i4.redMul(this.a.redAdd(this.two))}G(Z,Y),K.exports=Z,Z.prototype.validate=function(U){var V=U.normalize().x,B0=V.redSqr(),H=B0.redMul(V).redAdd(B0.redMul(this.a)).redAdd(V),y0=H.redSqrt();return y0.redSqr().cmp(H)===0};function Q(U,V,B0){Y.BasePoint.call(this,U,"projective"),V===null&&B0===null?(this.x=this.curve.one,this.z=this.curve.zero):(this.x=new x0(V,16),this.z=new x0(B0,16),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)))}G(Q,Y.BasePoint),Z.prototype.decodePoint=function(U,V){return this.point($.toArray(U,V),1)},Z.prototype.point=function(U,V){return new Q(this,U,V)},Z.prototype.pointFromJSON=function(U){return Q.fromJSON(this,U)},Q.prototype.precompute=function(){},Q.prototype._encode=function(){return this.getX().toArray("be",this.curve.p.byteLength())},Q.fromJSON=function(U,V){return new Q(U,V[0],V[1]||U.one)},Q.prototype.inspect=function(){return this.isInfinity()?"<EC Point Infinity>":"<EC Point x: "+this.x.fromRed().toString(16,2)+" z: "+this.z.fromRed().toString(16,2)+">"},Q.prototype.isInfinity=function(){return this.z.cmpn(0)===0},Q.prototype.dbl=function(){var U=this.x.redAdd(this.z),V=U.redSqr(),B0=this.x.redSub(this.z),H=B0.redSqr(),y0=V.redSub(H),W=V.redMul(H),w0=y0.redMul(H.redAdd(this.curve.a24.redMul(y0)));return this.curve.point(W,w0)},Q.prototype.add=function(){throw new Error("Not supported on Montgomery curve")},Q.prototype.diffAdd=function(U,V){var B0=this.x.redAdd(this.z),H=this.x.redSub(this.z),y0=U.x.redAdd(U.z),W=U.x.redSub(U.z),w0=W.redMul(B0),E=y0.redMul(H),p0=V.z.redMul(w0.redAdd(E).redSqr()),T=V.x.redMul(w0.redISub(E).redSqr());return this.curve.point(p0,T)},Q.prototype.mul=function(U){for(var V=U.clone(),B0=this,H=this.curve.point(null,null),y0=this,W=[];V.cmpn(0)!==0;V.iushrn(1))W.push(V.andln(1));for(var w0=W.length-1;w0>=0;w0--)W[w0]===0?(B0=B0.diffAdd(H,y0),H=H.dbl()):(H=B0.diffAdd(H,y0),B0=B0.dbl());return H},Q.prototype.mulAdd=function(){throw new Error("Not supported on Montgomery curve")},Q.prototype.jumlAdd=function(){throw new Error("Not supported on Montgomery curve")},Q.prototype.eq=function(U){return this.getX().cmp(U.getX())===0},Q.prototype.normalize=function(){return this.x=this.x.redMul(this.z.redInvm()),this.z=this.curve.one,this},Q.prototype.getX=function(){return this.normalize(),this.x.fromRed()}}}),tQ=$Q({"node_modules/elliptic/lib/elliptic/curve/edwards.js"(X,K){var x0=oQ(),G=bQ(),Y=X0(),$=uQ(),Z=x0.assert;function Q(V){this.twisted=(V.a|0)!==1,this.mOneA=this.twisted&&(V.a|0)===-1,this.extended=this.mOneA,$.call(this,"edwards",V),this.a=new G(V.a,16).umod(this.red.m),this.a=this.a.toRed(this.red),this.c=new G(V.c,16).toRed(this.red),this.c2=this.c.redSqr(),this.d=new G(V.d,16).toRed(this.red),this.dd=this.d.redAdd(this.d),Z(!this.twisted||this.c.fromRed().cmpn(1)===0),this.oneC=(V.c|0)===1}Y(Q,$),K.exports=Q,Q.prototype._mulA=function(V){return this.mOneA?V.redNeg():this.a.redMul(V)},Q.prototype._mulC=function(V){return this.oneC?V:this.c.redMul(V)},Q.prototype.jpoint=function(V,B0,H,y0){return this.point(V,B0,H,y0)},Q.prototype.pointFromX=function(V,B0){V=new G(V,16),V.red||(V=V.toRed(this.red));var H=V.redSqr(),y0=this.c2.redSub(this.a.redMul(H)),W=this.one.redSub(this.c2.redMul(this.d).redMul(H)),w0=y0.redMul(W.redInvm()),E=w0.redSqrt();if(E.redSqr().redSub(w0).cmp(this.zero)!==0)throw new Error("invalid point");var p0=E.fromRed().isOdd();return(B0&&!p0||!B0&&p0)&&(E=E.redNeg()),this.point(V,E)},Q.prototype.pointFromY=function(V,B0){V=new G(V,16),V.red||(V=V.toRed(this.red));var H=V.redSqr(),y0=H.redSub(this.c2),W=H.redMul(this.d).redMul(this.c2).redSub(this.a),w0=y0.redMul(W.redInvm());if(w0.cmp(this.zero)===0){if(B0)throw new Error("invalid point");return this.point(this.zero,V)}var E=w0.redSqrt();if(E.redSqr().redSub(w0).cmp(this.zero)!==0)throw new Error("invalid point");return E.fromRed().isOdd()!==B0&&(E=E.redNeg()),this.point(E,V)},Q.prototype.validate=function(V){if(V.isInfinity())return!0;V.normalize();var B0=V.x.redSqr(),H=V.y.redSqr(),y0=B0.redMul(this.a).redAdd(H),W=this.c2.redMul(this.one.redAdd(this.d.redMul(B0).redMul(H)));return y0.cmp(W)===0};function U(V,B0,H,y0,W){$.BasePoint.call(this,V,"projective"),B0===null&&H===null&&y0===null?(this.x=this.curve.zero,this.y=this.curve.one,this.z=this.curve.one,this.t=this.curve.zero,this.zOne=!0):(this.x=new G(B0,16),this.y=new G(H,16),this.z=y0?new G(y0,16):this.curve.one,this.t=W&&new G(W,16),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.y.red||(this.y=this.y.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)),this.t&&!this.t.red&&(this.t=this.t.toRed(this.curve.red)),this.zOne=this.z===this.curve.one,this.curve.extended&&!this.t&&(this.t=this.x.redMul(this.y),this.zOne||(this.t=this.t.redMul(this.z.redInvm()))))}Y(U,$.BasePoint),Q.prototype.pointFromJSON=function(V){return U.fromJSON(this,V)},Q.prototype.point=function(V,B0,H,y0){return new U(this,V,B0,H,y0)},U.fromJSON=function(V,B0){return new U(V,B0[0],B0[1],B0[2])},U.prototype.inspect=function(){return this.isInfinity()?"<EC Point Infinity>":"<EC Point x: "+this.x.fromRed().toString(16,2)+" y: "+this.y.fromRed().toString(16,2)+" z: "+this.z.fromRed().toString(16,2)+">"},U.prototype.isInfinity=function(){return this.x.cmpn(0)===0&&(this.y.cmp(this.z)===0||this.zOne&&this.y.cmp(this.curve.c)===0)},U.prototype._extDbl=function(){var V=this.x.redSqr(),B0=this.y.redSqr(),H=this.z.redSqr();H=H.redIAdd(H);var y0=this.curve._mulA(V),W=this.x.redAdd(this.y).redSqr().redISub(V).redISub(B0),w0=y0.redAdd(B0),E=w0.redSub(H),p0=y0.redSub(B0),T=W.redMul(E),f0=w0.redMul(p0),D=W.redMul(p0),c0=E.redMul(w0);return this.curve.point(T,f0,c0,D)},U.prototype._projDbl=function(){var V=this.x.redAdd(this.y).redSqr(),B0=this.x.redSqr(),H=this.y.redSqr(),y0,W,w0,E,p0,T;if(this.curve.twisted){E=this.curve._mulA(B0);var f0=E.redAdd(H);this.zOne?(y0=V.redSub(B0).redSub(H).redMul(f0.redSub(this.curve.two)),W=f0.redMul(E.redSub(H)),w0=f0.redSqr().redSub(f0).redSub(f0)):(p0=this.z.redSqr(),T=f0.redSub(p0).redISub(p0),y0=V.redSub(B0).redISub(H).redMul(T),W=f0.redMul(E.redSub(H)),w0=f0.redMul(T))}else E=B0.redAdd(H),p0=this.curve._mulC(this.z).redSqr(),T=E.redSub(p0).redSub(p0),y0=this.curve._mulC(V.redISub(E)).redMul(T),W=this.curve._mulC(E).redMul(B0.redISub(H)),w0=E.redMul(T);return this.curve.point(y0,W,w0)},U.prototype.dbl=function(){return this.isInfinity()?this:this.curve.extended?this._extDbl():this._projDbl()},U.prototype._extAdd=function(V){var B0=this.y.redSub(this.x).redMul(V.y.redSub(V.x)),H=this.y.redAdd(this.x).redMul(V.y.redAdd(V.x)),y0=this.t.redMul(this.curve.dd).redMul(V.t),W=this.z.redMul(V.z.redAdd(V.z)),w0=H.redSub(B0),E=W.redSub(y0),p0=W.redAdd(y0),T=H.redAdd(B0),f0=w0.redMul(E),D=p0.redMul(T),c0=w0.redMul(T),C=E.redMul(p0);return this.curve.point(f0,D,C,c0)},U.prototype._projAdd=function(V){var B0=this.z.redMul(V.z),H=B0.redSqr(),y0=this.x.redMul(V.x),W=this.y.redMul(V.y),w0=this.curve.d.redMul(y0).redMul(W),E=H.redSub(w0),p0=H.redAdd(w0),T=this.x.redAdd(this.y).redMul(V.x.redAdd(V.y)).redISub(y0).redISub(W),f0=B0.redMul(E).redMul(T),D,c0;return this.curve.twisted?(D=B0.redMul(p0).redMul(W.redSub(this.curve._mulA(y0))),c0=E.redMul(p0)):(D=B0.redMul(p0).redMul(W.redSub(y0)),c0=this.curve._mulC(E).redMul(p0)),this.curve.point(f0,D,c0)},U.prototype.add=function(V){return this.isInfinity()?V:V.isInfinity()?this:this.curve.extended?this._extAdd(V):this._projAdd(V)},U.prototype.mul=function(V){return this._hasDoubles(V)?this.curve._fixedNafMul(this,V):this.curve._wnafMul(this,V)},U.prototype.mulAdd=function(V,B0,H){return this.curve._wnafMulAdd(1,[this,B0],[V,H],2,!1)},U.prototype.jmulAdd=function(V,B0,H){return this.curve._wnafMulAdd(1,[this,B0],[V,H],2,!0)},U.prototype.normalize=function(){if(this.zOne)return this;var V=this.z.redInvm();return this.x=this.x.redMul(V),this.y=this.y.redMul(V),this.t&&(this.t=this.t.redMul(V)),this.z=this.curve.one,this.zOne=!0,this},U.prototype.neg=function(){return this.curve.point(this.x.redNeg(),this.y,this.z,this.t&&this.t.redNeg())},U.prototype.getX=function(){return this.normalize(),this.x.fromRed()},U.prototype.getY=function(){return this.normalize(),this.y.fromRed()},U.prototype.eq=function(V){return this===V||this.getX().cmp(V.getX())===0&&this.getY().cmp(V.getY())===0},U.prototype.eqXToP=function(V){var B0=V.toRed(this.curve.red).redMul(this.z);if(this.x.cmp(B0)===0)return!0;for(var H=V.clone(),y0=this.curve.redN.redMul(this.z);;){if(H.iadd(this.curve.n),H.cmp(this.curve.p)>=0)return!1;if(B0.redIAdd(y0),this.x.cmp(B0)===0)return!0}},U.prototype.toP=U.prototype.normalize,U.prototype.mixedAdd=U.prototype.add}}),mQ=$Q({"node_modules/elliptic/lib/elliptic/curve/index.js"(X){var K=X;K.base=uQ(),K.short=nQ(),K.mont=sQ(),K.edwards=tQ()}}),aQ=$Q({"node_modules/hash.js/lib/hash/utils.js"(X){var K=N0(),x0=X0();X.inherits=x0;function G(z,o0){return(z.charCodeAt(o0)&64512)!==55296||o0<0||o0+1>=z.length?!1:(z.charCodeAt(o0+1)&64512)===56320}function Y(z,o0){if(Array.isArray(z))return z.slice();if(!z)return[];var M=[];if(typeof z=="string")if(o0){if(o0==="hex")for(z=z.replace(/[^a-z0-9]+/gi,""),z.length%2!==0&&(z="0"+z),S=0;S<z.length;S+=2)M.push(parseInt(z[S]+z[S+1],16))}else for(var u0=0,S=0;S<z.length;S++){var n0=z.charCodeAt(S);n0<128?M[u0++]=n0:n0<2048?(M[u0++]=n0>>6|192,M[u0++]=n0&63|128):G(z,S)?(n0=65536+((n0&1023)<<10)+(z.charCodeAt(++S)&1023),M[u0++]=n0>>18|240,M[u0++]=n0>>12&63|128,M[u0++]=n0>>6&63|128,M[u0++]=n0&63|128):(M[u0++]=n0>>12|224,M[u0++]=n0>>6&63|128,M[u0++]=n0&63|128)}else for(S=0;S<z.length;S++)M[S]=z[S]|0;return M}X.toArray=Y;function $(z){for(var o0="",M=0;M<z.length;M++)o0+=U(z[M].toString(16));return o0}X.toHex=$;function Z(z){var o0=z>>>24|z>>>8&65280|z<<8&16711680|(z&255)<<24;return o0>>>0}X.htonl=Z;function Q(z,o0){for(var M="",u0=0;u0<z.length;u0++){var S=z[u0];o0==="little"&&(S=Z(S)),M+=V(S.toString(16))}return M}X.toHex32=Q;function U(z){return z.length===1?"0"+z:z}X.zero2=U;function V(z){return z.length===7?"0"+z:z.length===6?"00"+z:z.length===5?"000"+z:z.length===4?"0000"+z:z.length===3?"00000"+z:z.length===2?"000000"+z:z.length===1?"0000000"+z:z}X.zero8=V;function B0(z,o0,M,u0){var S=M-o0;K(S%4===0);for(var n0=new Array(S/4),v=0,s0=o0;v<n0.length;v++,s0+=4){var I;u0==="big"?I=z[s0]<<24|z[s0+1]<<16|z[s0+2]<<8|z[s0+3]:I=z[s0+3]<<24|z[s0+2]<<16|z[s0+1]<<8|z[s0],n0[v]=I>>>0}return n0}X.join32=B0;function H(z,o0){for(var M=new Array(z.length*4),u0=0,S=0;u0<z.length;u0++,S+=4){var n0=z[u0];o0==="big"?(M[S]=n0>>>24,M[S+1]=n0>>>16&255,M[S+2]=n0>>>8&255,M[S+3]=n0&255):(M[S+3]=n0>>>24,M[S+2]=n0>>>16&255,M[S+1]=n0>>>8&255,M[S]=n0&255)}return M}X.split32=H;function y0(z,o0){return z>>>o0|z<<32-o0}X.rotr32=y0;function W(z,o0){return z<<o0|z>>>32-o0}X.rotl32=W;function w0(z,o0){return z+o0>>>0}X.sum32=w0;function E(z,o0,M){return z+o0+M>>>0}X.sum32_3=E;function p0(z,o0,M,u0){return z+o0+M+u0>>>0}X.sum32_4=p0;function T(z,o0,M,u0,S){return z+o0+M+u0+S>>>0}X.sum32_5=T;function f0(z,o0,M,u0){var S=z[o0],n0=z[o0+1],v=u0+n0>>>0,s0=(v<u0?1:0)+M+S;z[o0]=s0>>>0,z[o0+1]=v}X.sum64=f0;function D(z,o0,M,u0){var S=o0+u0>>>0,n0=(S<o0?1:0)+z+M;return n0>>>0}X.sum64_hi=D;function c0(z,o0,M,u0){var S=o0+u0;return S>>>0}X.sum64_lo=c0;function C(z,o0,M,u0,S,n0,v,s0){var I=0,t0=o0;t0=t0+u0>>>0,I+=t0<o0?1:0,t0=t0+n0>>>0,I+=t0<n0?1:0,t0=t0+s0>>>0,I+=t0<s0?1:0;var m0=z+M+S+v+I;return m0>>>0}X.sum64_4_hi=C;function h0(z,o0,M,u0,S,n0,v,s0){var I=o0+u0+n0+s0;return I>>>0}X.sum64_4_lo=h0;function L(z,o0,M,u0,S,n0,v,s0,I,t0){var m0=0,a0=o0;a0=a0+u0>>>0,m0+=a0<o0?1:0,a0=a0+n0>>>0,m0+=a0<n0?1:0,a0=a0+s0>>>0,m0+=a0<s0?1:0,a0=a0+t0>>>0,m0+=a0<t0?1:0;var q=z+M+S+v+I+m0;return q>>>0}X.sum64_5_hi=L;function d0(z,o0,M,u0,S,n0,v,s0,I,t0){var m0=o0+u0+n0+s0+t0;return m0>>>0}X.sum64_5_lo=d0;function R(z,o0,M){var u0=o0<<32-M|z>>>M;return u0>>>0}X.rotr64_hi=R;function b0(z,o0,M){var u0=z<<32-M|o0>>>M;return u0>>>0}X.rotr64_lo=b0;function P(z,o0,M){return z>>>M}X.shr64_hi=P;function l0(z,o0,M){var u0=z<<32-M|o0>>>M;return u0>>>0}X.shr64_lo=l0}}),eQ=$Q({"node_modules/hash.js/lib/hash/common.js"(X){var K=aQ(),x0=N0();function G(){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}X.BlockHash=G,G.prototype.update=function(Y,$){if(Y=K.toArray(Y,$),this.pending?this.pending=this.pending.concat(Y):this.pending=Y,this.pendingTotal+=Y.length,this.pending.length>=this._delta8){Y=this.pending;var Z=Y.length%this._delta8;this.pending=Y.slice(Y.length-Z,Y.length),this.pending.length===0&&(this.pending=null),Y=K.join32(Y,0,Y.length-Z,this.endian);for(var Q=0;Q<Y.length;Q+=this._delta32)this._update(Y,Q,Q+this._delta32)}return this},G.prototype.digest=function(Y){return this.update(this._pad()),x0(this.pending===null),this._digest(Y)},G.prototype._pad=function(){var Y=this.pendingTotal,$=this._delta8,Z=$-(Y+this.padLength)%$,Q=new Array(Z+this.padLength);Q[0]=128;for(var U=1;U<Z;U++)Q[U]=0;if(Y<<=3,this.endian==="big"){for(var V=8;V<this.padLength;V++)Q[U++]=0;Q[U++]=0,Q[U++]=0,Q[U++]=0,Q[U++]=0,Q[U++]=Y>>>24&255,Q[U++]=Y>>>16&255,Q[U++]=Y>>>8&255,Q[U++]=Y&255}else for(Q[U++]=Y&255,Q[U++]=Y>>>8&255,Q[U++]=Y>>>16&255,Q[U++]=Y>>>24&255,Q[U++]=0,Q[U++]=0,Q[U++]=0,Q[U++]=0,V=8;V<this.padLength;V++)Q[U++]=0;return Q}}}),rQ=$Q({"node_modules/hash.js/lib/hash/sha/common.js"(X){var K=aQ(),x0=K.rotr32;function G(H,y0,W,w0){if(H===0)return Y(y0,W,w0);if(H===1||H===3)return Z(y0,W,w0);if(H===2)return $(y0,W,w0)}X.ft_1=G;function Y(H,y0,W){return H&y0^~H&W}X.ch32=Y;function $(H,y0,W){return H&y0^H&W^y0&W}X.maj32=$;function Z(H,y0,W){return H^y0^W}X.p32=Z;function Q(H){return x0(H,2)^x0(H,13)^x0(H,22)}X.s0_256=Q;function U(H){return x0(H,6)^x0(H,11)^x0(H,25)}X.s1_256=U;function V(H){return x0(H,7)^x0(H,18)^H>>>3}X.g0_256=V;function B0(H){return x0(H,17)^x0(H,19)^H>>>10}X.g1_256=B0}}),iQ=$Q({"node_modules/hash.js/lib/hash/sha/1.js"(X,K){var x0=aQ(),G=eQ(),Y=rQ(),$=x0.rotl32,Z=x0.sum32,Q=x0.sum32_5,U=Y.ft_1,V=G.BlockHash,B0=[1518500249,1859775393,2400959708,3395469782];function H(){if(!(this instanceof H))return new H;V.call(this),this.h=[1732584193,4023233417,2562383102,271733878,3285377520],this.W=new Array(80)}x0.inherits(H,V),K.exports=H,H.blockSize=512,H.outSize=160,H.hmacStrength=80,H.padLength=64,H.prototype._update=function(y0,W){for(var w0=this.W,E=0;E<16;E++)w0[E]=y0[W+E];for(;E<w0.length;E++)w0[E]=$(w0[E-3]^w0[E-8]^w0[E-14]^w0[E-16],1);var p0=this.h[0],T=this.h[1],f0=this.h[2],D=this.h[3],c0=this.h[4];for(E=0;E<w0.length;E++){var C=~~(E/20),h0=Q($(p0,5),U(C,T,f0,D),c0,w0[E],B0[C]);c0=D,D=f0,f0=$(T,30),T=p0,p0=h0}this.h[0]=Z(this.h[0],p0),this.h[1]=Z(this.h[1],T),this.h[2]=Z(this.h[2],f0),this.h[3]=Z(this.h[3],D),this.h[4]=Z(this.h[4],c0)},H.prototype._digest=function(y0){return y0==="hex"?x0.toHex32(this.h,"big"):x0.split32(this.h,"big")}}}),$Y=$Q({"node_modules/hash.js/lib/hash/sha/256.js"(X,K){var x0=aQ(),G=eQ(),Y=rQ(),$=N0(),Z=x0.sum32,Q=x0.sum32_4,U=x0.sum32_5,V=Y.ch32,B0=Y.maj32,H=Y.s0_256,y0=Y.s1_256,W=Y.g0_256,w0=Y.g1_256,E=G.BlockHash,p0=[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 T(){if(!(this instanceof T))return new T;E.call(this),this.h=[1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225],this.k=p0,this.W=new Array(64)}x0.inherits(T,E),K.exports=T,T.blockSize=512,T.outSize=256,T.hmacStrength=192,T.padLength=64,T.prototype._update=function(f0,D){for(var c0=this.W,C=0;C<16;C++)c0[C]=f0[D+C];for(;C<c0.length;C++)c0[C]=Q(w0(c0[C-2]),c0[C-7],W(c0[C-15]),c0[C-16]);var h0=this.h[0],L=this.h[1],d0=this.h[2],R=this.h[3],b0=this.h[4],P=this.h[5],l0=this.h[6],z=this.h[7];for($(this.k.length===c0.length),C=0;C<c0.length;C++){var o0=U(z,y0(b0),V(b0,P,l0),this.k[C],c0[C]),M=Z(H(h0),B0(h0,L,d0));z=l0,l0=P,P=b0,b0=Z(R,o0),R=d0,d0=L,L=h0,h0=Z(o0,M)}this.h[0]=Z(this.h[0],h0),this.h[1]=Z(this.h[1],L),this.h[2]=Z(this.h[2],d0),this.h[3]=Z(this.h[3],R),this.h[4]=Z(this.h[4],b0),this.h[5]=Z(this.h[5],P),this.h[6]=Z(this.h[6],l0),this.h[7]=Z(this.h[7],z)},T.prototype._digest=function(f0){return f0==="hex"?x0.toHex32(this.h,"big"):x0.split32(this.h,"big")}}}),QY=$Q({"node_modules/hash.js/lib/hash/sha/224.js"(X,K){var x0=aQ(),G=$Y();function Y(){if(!(this instanceof Y))return new Y;G.call(this),this.h=[3238371032,914150663,812702999,4144912697,4290775857,1750603025,1694076839,3204075428]}x0.inherits(Y,G),K.exports=Y,Y.blockSize=512,Y.outSize=224,Y.hmacStrength=192,Y.padLength=64,Y.prototype._digest=function($){return $==="hex"?x0.toHex32(this.h.slice(0,7),"big"):x0.split32(this.h.slice(0,7),"big")}}}),YY=$Q({"node_modules/hash.js/lib/hash/sha/512.js"(X,K){var x0=aQ(),G=eQ(),Y=N0(),$=x0.rotr64_hi,Z=x0.rotr64_lo,Q=x0.shr64_hi,U=x0.shr64_lo,V=x0.sum64,B0=x0.sum64_hi,H=x0.sum64_lo,y0=x0.sum64_4_hi,W=x0.sum64_4_lo,w0=x0.sum64_5_hi,E=x0.sum64_5_lo,p0=G.BlockHash,T=[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 f0(){if(!(this instanceof f0))return new f0;p0.call(this),this.h=[1779033703,4089235720,3144134277,2227873595,1013904242,4271175723,2773480762,1595750129,1359893119,2917565137,2600822924,725511199,528734635,4215389547,1541459225,327033209],this.k=T,this.W=new Array(160)}x0.inherits(f0,p0),K.exports=f0,f0.blockSize=1024,f0.outSize=512,f0.hmacStrength=192,f0.padLength=128,f0.prototype._prepareBlock=function(M,u0){for(var S=this.W,n0=0;n0<32;n0++)S[n0]=M[u0+n0];for(;n0<S.length;n0+=2){var v=z(S[n0-4],S[n0-3]),s0=o0(S[n0-4],S[n0-3]),I=S[n0-14],t0=S[n0-13],m0=P(S[n0-30],S[n0-29]),a0=l0(S[n0-30],S[n0-29]),q=S[n0-32],e0=S[n0-31];S[n0]=y0(v,s0,I,t0,m0,a0,q,e0),S[n0+1]=W(v,s0,I,t0,m0,a0,q,e0)}},f0.prototype._update=function(M,u0){this._prepareBlock(M,u0);var S=this.W,n0=this.h[0],v=this.h[1],s0=this.h[2],I=this.h[3],t0=this.h[4],m0=this.h[5],a0=this.h[6],q=this.h[7],e0=this.h[8],r0=this.h[9],i0=this.h[10],j=this.h[11],$$=this.h[12],k=this.h[13],Q$=this.h[14],g=this.h[15];Y(this.k.length===S.length);for(var Y$=0;Y$<S.length;Y$+=2){var _=Q$,Z$=g,N=R(e0,r0),G$=b0(e0,r0),x=D(e0,r0,i0,j,$$,k),V$=c0(e0,r0,i0,j,$$,k),B=this.k[Y$],U$=this.k[Y$+1],y=S[Y$],X$=S[Y$+1],w=w0(_,Z$,N,G$,x,V$,B,U$,y,X$),K$=E(_,Z$,N,G$,x,V$,B,U$,y,X$);_=L(n0,v),Z$=d0(n0,v),N=C(n0,v,s0,I,t0,m0),G$=h0(n0,v,s0,I,t0,m0);var p=B0(_,Z$,N,G$),I$=H(_,Z$,N,G$);Q$=$$,g=k,$$=i0,k=j,i0=e0,j=r0,e0=B0(a0,q,w,K$),r0=H(q,q,w,K$),a0=t0,q=m0,t0=s0,m0=I,s0=n0,I=v,n0=B0(w,K$,p,I$),v=H(w,K$,p,I$)}V(this.h,0,n0,v),V(this.h,2,s0,I),V(this.h,4,t0,m0),V(this.h,6,a0,q),V(this.h,8,e0,r0),V(this.h,10,i0,j),V(this.h,12,$$,k),V(this.h,14,Q$,g)},f0.prototype._digest=function(M){return M==="hex"?x0.toHex32(this.h,"big"):x0.split32(this.h,"big")};function D(M,u0,S,n0,v){var s0=M&S^~M&v;return s0<0&&(s0+=4294967296),s0}function c0(M,u0,S,n0,v,s0){var I=u0&n0^~u0&s0;return I<0&&(I+=4294967296),I}function C(M,u0,S,n0,v){var s0=M&S^M&v^S&v;return s0<0&&(s0+=4294967296),s0}function h0(M,u0,S,n0,v,s0){var I=u0&n0^u0&s0^n0&s0;return I<0&&(I+=4294967296),I}function L(M,u0){var S=$(M,u0,28),n0=$(u0,M,2),v=$(u0,M,7),s0=S^n0^v;return s0<0&&(s0+=4294967296),s0}function d0(M,u0){var S=Z(M,u0,28),n0=Z(u0,M,2),v=Z(u0,M,7),s0=S^n0^v;return s0<0&&(s0+=4294967296),s0}function R(M,u0){var S=$(M,u0,14),n0=$(M,u0,18),v=$(u0,M,9),s0=S^n0^v;return s0<0&&(s0+=4294967296),s0}function b0(M,u0){var S=Z(M,u0,14),n0=Z(M,u0,18),v=Z(u0,M,9),s0=S^n0^v;return s0<0&&(s0+=4294967296),s0}function P(M,u0){var S=$(M,u0,1),n0=$(M,u0,8),v=Q(M,u0,7),s0=S^n0^v;return s0<0&&(s0+=4294967296),s0}function l0(M,u0){var S=Z(M,u0,1),n0=Z(M,u0,8),v=U(M,u0,7),s0=S^n0^v;return s0<0&&(s0+=4294967296),s0}function z(M,u0){var S=$(M,u0,19),n0=$(u0,M,29),v=Q(M,u0,6),s0=S^n0^v;return s0<0&&(s0+=4294967296),s0}function o0(M,u0){var S=Z(M,u0,19),n0=Z(u0,M,29),v=U(M,u0,6),s0=S^n0^v;return s0<0&&(s0+=4294967296),s0}}}),ZY=$Q({"node_modules/hash.js/lib/hash/sha/384.js"(X,K){var x0=aQ(),G=YY();function Y(){if(!(this instanceof Y))return new Y;G.call(this),this.h=[3418070365,3238371032,1654270250,914150663,2438529370,812702999,355462360,4144912697,1731405415,4290775857,2394180231,1750603025,3675008525,1694076839,1203062813,3204075428]}x0.inherits(Y,G),K.exports=Y,Y.blockSize=1024,Y.outSize=384,Y.hmacStrength=192,Y.padLength=128,Y.prototype._digest=function($){return $==="hex"?x0.toHex32(this.h.slice(0,12),"big"):x0.split32(this.h.slice(0,12),"big")}}}),GY=$Q({"node_modules/hash.js/lib/hash/sha.js"(X){X.sha1=iQ(),X.sha224=QY(),X.sha256=$Y(),X.sha384=ZY(),X.sha512=YY()}}),VY=$Q({"node_modules/hash.js/lib/hash/ripemd.js"(X){var K=aQ(),x0=eQ(),G=K.rotl32,Y=K.sum32,$=K.sum32_3,Z=K.sum32_4,Q=x0.BlockHash;function U(){if(!(this instanceof U))return new U;Q.call(this),this.h=[1732584193,4023233417,2562383102,271733878,3285377520],this.endian="little"}K.inherits(U,Q),X.ripemd160=U,U.blockSize=512,U.outSize=160,U.hmacStrength=192,U.padLength=64,U.prototype._update=function(p0,T){for(var f0=this.h[0],D=this.h[1],c0=this.h[2],C=this.h[3],h0=this.h[4],L=f0,d0=D,R=c0,b0=C,P=h0,l0=0;l0<80;l0++){var z=Y(G(Z(f0,V(l0,D,c0,C),p0[y0[l0]+T],B0(l0)),w0[l0]),h0);f0=h0,h0=C,C=G(c0,10),c0=D,D=z,z=Y(G(Z(L,V(79-l0,d0,R,b0),p0[W[l0]+T],H(l0)),E[l0]),P),L=P,P=b0,b0=G(R,10),R=d0,d0=z}z=$(this.h[1],c0,b0),this.h[1]=$(this.h[2],C,P),this.h[2]=$(this.h[3],h0,L),this.h[3]=$(this.h[4],f0,d0),this.h[4]=$(this.h[0],D,R),this.h[0]=z},U.prototype._digest=function(p0){return p0==="hex"?K.toHex32(this.h,"little"):K.split32(this.h,"little")};function V(p0,T,f0,D){return p0<=15?T^f0^D:p0<=31?T&f0|~T&D:p0<=47?(T|~f0)^D:p0<=63?T&D|f0&~D:T^(f0|~D)}function B0(p0){return p0<=15?0:p0<=31?1518500249:p0<=47?1859775393:p0<=63?2400959708:2840853838}function H(p0){return p0<=15?1352829926:p0<=31?1548603684:p0<=47?1836072691:p0<=63?2053994217:0}var y0=[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],W=[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],w0=[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],E=[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]}}),UY=$Q({"node_modules/hash.js/lib/hash/hmac.js"(X,K){var x0=aQ(),G=N0();function Y($,Z,Q){if(!(this instanceof Y))return new Y($,Z,Q);this.Hash=$,this.blockSize=$.blockSize/8,this.outSize=$.outSize/8,this.inner=null,this.outer=null,this._init(x0.toArray(Z,Q))}K.exports=Y,Y.prototype._init=function($){$.length>this.blockSize&&($=new this.Hash().update($).digest()),G($.length<=this.blockSize);for(var Z=$.length;Z<this.blockSize;Z++)$.push(0);for(Z=0;Z<$.length;Z++)$[Z]^=54;for(this.inner=new this.Hash().update($),Z=0;Z<$.length;Z++)$[Z]^=106;this.outer=new this.Hash().update($)},Y.prototype.update=function($,Z){return this.inner.update($,Z),this},Y.prototype.digest=function($){return this.outer.update(this.inner.digest()),this.outer.digest($)}}}),XY=$Q({"node_modules/hash.js/lib/hash.js"(X){var K=X;K.utils=aQ(),K.common=eQ(),K.sha=GY(),K.ripemd=VY(),K.hmac=UY(),K.sha1=K.sha.sha1,K.sha256=K.sha.sha256,K.sha224=K.sha.sha224,K.sha384=K.sha.sha384,K.sha512=K.sha.sha512,K.ripemd160=K.ripemd.ripemd160}}),KY=$Q({"node_modules/elliptic/lib/elliptic/precomputed/secp256k1.js"(X,K){K.exports={doubles:{step:4,points:[["e60fce93b59e9ec53011aabc21c23e97b2a31369b87a5ae9c44ee89e2a6dec0a","f7e3507399e595929db99f34f57937101296891e44d23f0be1f32cce69616821"],["8282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f51508","11f8a8098557dfe45e8256e830b60ace62d613ac2f7b17bed31b6eaff6e26caf"],["175e159f728b865a72f99cc6c6fc846de0b93833fd2222ed73fce5b551e5b739","d3506e0d9e3c79eba4ef97a51ff71f5eacb5955add24345c6efa6ffee9fed695"],["363d90d447b00c9c99ceac05b6262ee053441c7e55552ffe526bad8f83ff4640","4e273adfc732221953b445397f3363145b9a89008199ecb62003c7f3bee9de9"],["8b4b5f165df3c2be8c6244b5b745638843e4a781a15bcd1b69f79a55dffdf80c","4aad0a6f68d308b4b3fbd7813ab0da04f9e336546162ee56b3eff0c65fd4fd36"],["723cbaa6e5db996d6bf771c00bd548c7b700dbffa6c0e77bcb6115925232fcda","96e867b5595cc498a921137488824d6e2660a0653779494801dc069d9eb39f5f"],["eebfa4d493bebf98ba5feec812c2d3b50947961237a919839a533eca0e7dd7fa","5d9a8ca3970ef0f269ee7edaf178089d9ae4cdc3a711f712ddfd4fdae1de8999"],["100f44da696e71672791d0a09b7bde459f1215a29b3c03bfefd7835b39a48db0","cdd9e13192a00b772ec8f3300c090666b7ff4a18ff5195ac0fbd5cd62bc65a09"],["e1031be262c7ed1b1dc9227a4a04c017a77f8d4464f3b3852c8acde6e534fd2d","9d7061928940405e6bb6a4176597535af292dd419e1ced79a44f18f29456a00d"],["feea6cae46d55b530ac2839f143bd7ec5cf8b266a41d6af52d5e688d9094696d","e57c6b6c97dce1bab06e4e12bf3ecd5c981c8957cc41442d3155debf18090088"],["da67a91d91049cdcb367be4be6ffca3cfeed657d808583de33fa978bc1ec6cb1","9bacaa35481642bc41f463f7ec9780e5dec7adc508f740a17e9ea8e27a68be1d"],["53904faa0b334cdda6e000935ef22151ec08d0f7bb11069f57545ccc1a37b7c0","5bc087d0bc80106d88c9eccac20d3c1c13999981e14434699dcb096b022771c8"],["8e7bcd0bd35983a7719cca7764ca906779b53a043a9b8bcaeff959f43ad86047","10b7770b2a3da4b3940310420ca9514579e88e2e47fd68b3ea10047e8460372a"],["385eed34c1cdff21e6d0818689b81bde71a7f4f18397e6690a841e1599c43862","283bebc3e8ea23f56701de19e9ebf4576b304eec2086dc8cc0458fe5542e5453"],["6f9d9b803ecf191637c73a4413dfa180fddf84a5947fbc9c606ed86c3fac3a7","7c80c68e603059ba69b8e2a30e45c4d47ea4dd2f5c281002d86890603a842160"],["3322d401243c4e2582a2147c104d6ecbf774d163db0f5e5313b7e0e742d0e6bd","56e70797e9664ef5bfb019bc4ddaf9b72805f63ea2873af624f3a2e96c28b2a0"],["85672c7d2de0b7da2bd1770d89665868741b3f9af7643397721d74d28134ab83","7c481b9b5b43b2eb6374049bfa62c2e5e77f17fcc5298f44c8e3094f790313a6"],["948bf809b1988a46b06c9f1919413b10f9226c60f668832ffd959af60c82a0a","53a562856dcb6646dc6b74c5d1c3418c6d4dff08c97cd2bed4cb7f88d8c8e589"],["6260ce7f461801c34f067ce0f02873a8f1b0e44dfc69752accecd819f38fd8e8","bc2da82b6fa5b571a7f09049776a1ef7ecd292238051c198c1a84e95b2b4ae17"],["e5037de0afc1d8d43d8348414bbf4103043ec8f575bfdc432953cc8d2037fa2d","4571534baa94d3b5f9f98d09fb990bddbd5f5b03ec481f10e0e5dc841d755bda"],["e06372b0f4a207adf5ea905e8f1771b4e7e8dbd1c6a6c5b725866a0ae4fce725","7a908974bce18cfe12a27bb2ad5a488cd7484a7787104870b27034f94eee31dd"],["213c7a715cd5d45358d0bbf9dc0ce02204b10bdde2a3f58540ad6908d0559754","4b6dad0b5ae462507013ad06245ba190bb4850f5f36a7eeddff2c27534b458f2"],["4e7c272a7af4b34e8dbb9352a5419a87e2838c70adc62cddf0cc3a3b08fbd53c","17749c766c9d0b18e16fd09f6def681b530b9614bff7dd33e0b3941817dcaae6"],["fea74e3dbe778b1b10f238ad61686aa5c76e3db2be43057632427e2840fb27b6","6e0568db9b0b13297cf674deccb6af93126b596b973f7b77701d3db7f23cb96f"],["76e64113f677cf0e10a2570d599968d31544e179b760432952c02a4417bdde39","c90ddf8dee4e95cf577066d70681f0d35e2a33d2b56d2032b4b1752d1901ac01"],["c738c56b03b2abe1e8281baa743f8f9a8f7cc643df26cbee3ab150242bcbb891","893fb578951ad2537f718f2eacbfbbbb82314eef7880cfe917e735d9699a84c3"],["d895626548b65b81e264c7637c972877d1d72e5f3a925014372e9f6588f6c14b","febfaa38f2bc7eae728ec60818c340eb03428d632bb067e179363ed75d7d991f"],["b8da94032a957518eb0f6433571e8761ceffc73693e84edd49150a564f676e03","2804dfa44805a1e4d7c99cc9762808b092cc584d95ff3b511488e4e74efdf6e7"],["e80fea14441fb33a7d8adab9475d7fab2019effb5156a792f1a11778e3c0df5d","eed1de7f638e00771e89768ca3ca94472d155e80af322ea9fcb4291b6ac9ec78"],["a301697bdfcd704313ba48e51d567543f2a182031efd6915ddc07bbcc4e16070","7370f91cfb67e4f5081809fa25d40f9b1735dbf7c0a11a130c0d1a041e177ea1"],["90ad85b389d6b936463f9d0512678de208cc330b11307fffab7ac63e3fb04ed4","e507a3620a38261affdcbd9427222b839aefabe1582894d991d4d48cb6ef150"],["8f68b9d2f63b5f339239c1ad981f162ee88c5678723ea3351b7b444c9ec4c0da","662a9f2dba063986de1d90c2b6be215dbbea2cfe95510bfdf23cbf79501fff82"],["e4f3fb0176af85d65ff99ff9198c36091f48e86503681e3e6686fd5053231e11","1e63633ad0ef4f1c1661a6d0ea02b7286cc7e74ec951d1c9822c38576feb73bc"],["8c00fa9b18ebf331eb961537a45a4266c7034f2f0d4e1d0716fb6eae20eae29e","efa47267fea521a1a9dc343a3736c974c2fadafa81e36c54e7d2a4c66702414b"],["e7a26ce69dd4829f3e10cec0a9e98ed3143d084f308b92c0997fddfc60cb3e41","2a758e300fa7984b471b006a1aafbb18d0a6b2c0420e83e20e8a9421cf2cfd51"],["b6459e0ee3662ec8d23540c223bcbdc571cbcb967d79424f3cf29eb3de6b80ef","67c876d06f3e06de1dadf16e5661db3c4b3ae6d48e35b2ff30bf0b61a71ba45"],["d68a80c8280bb840793234aa118f06231d6f1fc67e73c5a5deda0f5b496943e8","db8ba9fff4b586d00c4b1f9177b0e28b5b0e7b8f7845295a294c84266b133120"],["324aed7df65c804252dc0270907a30b09612aeb973449cea4095980fc28d3d5d","648a365774b61f2ff130c0c35aec1f4f19213b0c7e332843967224af96ab7c84"],["4df9c14919cde61f6d51dfdbe5fee5dceec4143ba8d1ca888e8bd373fd054c96","35ec51092d8728050974c23a1d85d4b5d506cdc288490192ebac06cad10d5d"],["9c3919a84a474870faed8a9c1cc66021523489054d7f0308cbfc99c8ac1f98cd","ddb84f0f4a4ddd57584f044bf260e641905326f76c64c8e6be7e5e03d4fc599d"],["6057170b1dd12fdf8de05f281d8e06bb91e1493a8b91d4cc5a21382120a959e5","9a1af0b26a6a4807add9a2daf71df262465152bc3ee24c65e899be932385a2a8"],["a576df8e23a08411421439a4518da31880cef0fba7d4df12b1a6973eecb94266","40a6bf20e76640b2c92b97afe58cd82c432e10a7f514d9f3ee8be11ae1b28ec8"],["7778a78c28dec3e30a05fe9629de8c38bb30d1f5cf9a3a208f763889be58ad71","34626d9ab5a5b22ff7098e12f2ff580087b38411ff24ac563b513fc1fd9f43ac"],["928955ee637a84463729fd30e7afd2ed5f96274e5ad7e5cb09eda9c06d903ac","c25621003d3f42a827b78a13093a95eeac3d26efa8a8d83fc5180e935bcd091f"],["85d0fef3ec6db109399064f3a0e3b2855645b4a907ad354527aae75163d82751","1f03648413a38c0be29d496e582cf5663e8751e96877331582c237a24eb1f962"],["ff2b0dce97eece97c1c9b6041798b85dfdfb6d8882da20308f5404824526087e","493d13fef524ba188af4c4dc54d07936c7b7ed6fb90e2ceb2c951e01f0c29907"],["827fbbe4b1e880ea9ed2b2e6301b212b57f1ee148cd6dd28780e5e2cf856e241","c60f9c923c727b0b71bef2c67d1d12687ff7a63186903166d605b68baec293ec"],["eaa649f21f51bdbae7be4ae34ce6e5217a58fdce7f47f9aa7f3b58fa2120e2b3","be3279ed5bbbb03ac69a80f89879aa5a01a6b965f13f7e59d47a5305ba5ad93d"],["e4a42d43c5cf169d9391df6decf42ee541b6d8f0c9a137401e23632dda34d24f","4d9f92e716d1c73526fc99ccfb8ad34ce886eedfa8d8e4f13a7f7131deba9414"],["1ec80fef360cbdd954160fadab352b6b92b53576a88fea4947173b9d4300bf19","aeefe93756b5340d2f3a4958a7abbf5e0146e77f6295a07b671cdc1cc107cefd"],["146a778c04670c2f91b00af4680dfa8bce3490717d58ba889ddb5928366642be","b318e0ec3354028add669827f9d4b2870aaa971d2f7e5ed1d0b297483d83efd0"],["fa50c0f61d22e5f07e3acebb1aa07b128d0012209a28b9776d76a8793180eef9","6b84c6922397eba9b72cd2872281a68a5e683293a57a213b38cd8d7d3f4f2811"],["da1d61d0ca721a11b1a5bf6b7d88e8421a288ab5d5bba5220e53d32b5f067ec2","8157f55a7c99306c79c0766161c91e2966a73899d279b48a655fba0f1ad836f1"],["a8e282ff0c9706907215ff98e8fd416615311de0446f1e062a73b0610d064e13","7f97355b8db81c09abfb7f3c5b2515888b679a3e50dd6bd6cef7c73111f4cc0c"],["174a53b9c9a285872d39e56e6913cab15d59b1fa512508c022f382de8319497c","ccc9dc37abfc9c1657b4155f2c47f9e6646b3a1d8cb9854383da13ac079afa73"],["959396981943785c3d3e57edf5018cdbe039e730e4918b3d884fdff09475b7ba","2e7e552888c331dd8ba0386a4b9cd6849c653f64c8709385e9b8abf87524f2fd"],["d2a63a50ae401e56d645a1153b109a8fcca0a43d561fba2dbb51340c9d82b151","e82d86fb6443fcb7565aee58b2948220a70f750af484ca52d4142174dcf89405"],["64587e2335471eb890ee7896d7cfdc866bacbdbd3839317b3436f9b45617e073","d99fcdd5bf6902e2ae96dd6447c299a185b90a39133aeab358299e5e9faf6589"],["8481bde0e4e4d885b3a546d3e549de042f0aa6cea250e7fd358d6c86dd45e458","38ee7b8cba5404dd84a25bf39cecb2ca900a79c42b262e556d64b1b59779057e"],["13464a57a78102aa62b6979ae817f4637ffcfed3c4b1ce30bcd6303f6caf666b","69be159004614580ef7e433453ccb0ca48f300a81d0942e13f495a907f6ecc27"],["bc4a9df5b713fe2e9aef430bcc1dc97a0cd9ccede2f28588cada3a0d2d83f366","d3a81ca6e785c06383937adf4b798caa6e8a9fbfa547b16d758d666581f33c1"],["8c28a97bf8298bc0d23d8c749452a32e694b65e30a9472a3954ab30fe5324caa","40a30463a3305193378fedf31f7cc0eb7ae784f0451cb9459e71dc73cbef9482"],["8ea9666139527a8c1dd94ce4f071fd23c8b350c5a4bb33748c4ba111faccae0","620efabbc8ee2782e24e7c0cfb95c5d735b783be9cf0f8e955af34a30e62b945"],["dd3625faef5ba06074669716bbd3788d89bdde815959968092f76cc4eb9a9787","7a188fa3520e30d461da2501045731ca941461982883395937f68d00c644a573"],["f710d79d9eb962297e4f6232b40e8f7feb2bc63814614d692c12de752408221e","ea98e67232d3b3295d3b535532115ccac8612c721851617526ae47a9c77bfc82"]]},naf:{wnd:7,points:[["f9308a019258c31049344f85f89d5229b531c845836f99b08601f113bce036f9","388f7b0f632de8140fe337e62a37f3566500a99934c2231b6cb9fd7584b8e672"],["2f8bde4d1a07209355b4a7250a5c5128e88b84bddc619ab7cba8d569b240efe4","d8ac222636e5e3d6d4dba9dda6c9c426f788271bab0d6840dca87d3aa6ac62d6"],["5cbdf0646e5db4eaa398f365f2ea7a0e3d419b7e0330e39ce92bddedcac4f9bc","6aebca40ba255960a3178d6d861a54dba813d0b813fde7b5a5082628087264da"],["acd484e2f0c7f65309ad178a9f559abde09796974c57e714c35f110dfc27ccbe","cc338921b0a7d9fd64380971763b61e9add888a4375f8e0f05cc262ac64f9c37"],["774ae7f858a9411e5ef4246b70c65aac5649980be5c17891bbec17895da008cb","d984a032eb6b5e190243dd56d7b7b365372db1e2dff9d6a8301d74c9c953c61b"],["f28773c2d975288bc7d1d205c3748651b075fbc6610e58cddeeddf8f19405aa8","ab0902e8d880a89758212eb65cdaf473a1a06da521fa91f29b5cb52db03ed81"],["d7924d4f7d43ea965a465ae3095ff41131e5946f3c85f79e44adbcf8e27e080e","581e2872a86c72a683842ec228cc6defea40af2bd896d3a5c504dc9ff6a26b58"],["defdea4cdb677750a420fee807eacf21eb9898ae79b9768766e4faa04a2d4a34","4211ab0694635168e997b0ead2a93daeced1f4a04a95c0f6cfb199f69e56eb77"],["2b4ea0a797a443d293ef5cff444f4979f06acfebd7e86d277475656138385b6c","85e89bc037945d93b343083b5a1c86131a01f60c50269763b570c854e5c09b7a"],["352bbf4a4cdd12564f93fa332ce333301d9ad40271f8107181340aef25be59d5","321eb4075348f534d59c18259dda3e1f4a1b3b2e71b1039c67bd3d8bcf81998c"],["2fa2104d6b38d11b0230010559879124e42ab8dfeff5ff29dc9cdadd4ecacc3f","2de1068295dd865b64569335bd5dd80181d70ecfc882648423ba76b532b7d67"],["9248279b09b4d68dab21a9b066edda83263c3d84e09572e269ca0cd7f5453714","73016f7bf234aade5d1aa71bdea2b1ff3fc0de2a887912ffe54a32ce97cb3402"],["daed4f2be3a8bf278e70132fb0beb7522f570e144bf615c07e996d443dee8729","a69dce4a7d6c98e8d4a1aca87ef8d7003f83c230f3afa726ab40e52290be1c55"],["c44d12c7065d812e8acf28d7cbb19f9011ecd9e9fdf281b0e6a3b5e87d22e7db","2119a460ce326cdc76c45926c982fdac0e106e861edf61c5a039063f0e0e6482"],["6a245bf6dc698504c89a20cfded60853152b695336c28063b61c65cbd269e6b4","e022cf42c2bd4a708b3f5126f16a24ad8b33ba48d0423b6efd5e6348100d8a82"],["1697ffa6fd9de627c077e3d2fe541084ce13300b0bec1146f95ae57f0d0bd6a5","b9c398f186806f5d27561506e4557433a2cf15009e498ae7adee9d63d01b2396"],["605bdb019981718b986d0f07e834cb0d9deb8360ffb7f61df982345ef27a7479","2972d2de4f8d20681a78d93ec96fe23c26bfae84fb14db43b01e1e9056b8c49"],["62d14dab4150bf497402fdc45a215e10dcb01c354959b10cfe31c7e9d87ff33d","80fc06bd8cc5b01098088a1950eed0db01aa132967ab472235f5642483b25eaf"],["80c60ad0040f27dade5b4b06c408e56b2c50e9f56b9b8b425e555c2f86308b6f","1c38303f1cc5c30f26e66bad7fe72f70a65eed4cbe7024eb1aa01f56430bd57a"],["7a9375ad6167ad54aa74c6348cc54d344cc5dc9487d847049d5eabb0fa03c8fb","d0e3fa9eca8726909559e0d79269046bdc59ea10c70ce2b02d499ec224dc7f7"],["d528ecd9b696b54c907a9ed045447a79bb408ec39b68df504bb51f459bc3ffc9","eecf41253136e5f99966f21881fd656ebc4345405c520dbc063465b521409933"],["49370a4b5f43412ea25f514e8ecdad05266115e4a7ecb1387231808f8b45963","758f3f41afd6ed428b3081b0512fd62a54c3f3afbb5b6764b653052a12949c9a"],["77f230936ee88cbbd73df930d64702ef881d811e0e1498e2f1c13eb1fc345d74","958ef42a7886b6400a08266e9ba1b37896c95330d97077cbbe8eb3c7671c60d6"],["f2dac991cc4ce4b9ea44887e5c7c0bce58c80074ab9d4dbaeb28531b7739f530","e0dedc9b3b2f8dad4da1f32dec2531df9eb5fbeb0598e4fd1a117dba703a3c37"],["463b3d9f662621fb1b4be8fbbe2520125a216cdfc9dae3debcba4850c690d45b","5ed430d78c296c3543114306dd8622d7c622e27c970a1de31cb377b01af7307e"],["f16f804244e46e2a09232d4aff3b59976b98fac14328a2d1a32496b49998f247","cedabd9b82203f7e13d206fcdf4e33d92a6c53c26e5cce26d6579962c4e31df6"],["caf754272dc84563b0352b7a14311af55d245315ace27c65369e15f7151d41d1","cb474660ef35f5f2a41b643fa5e460575f4fa9b7962232a5c32f908318a04476"],["2600ca4b282cb986f85d0f1709979d8b44a09c07cb86d7c124497bc86f082120","4119b88753c15bd6a693b03fcddbb45d5ac6be74ab5f0ef44b0be9475a7e4b40"],["7635ca72d7e8432c338ec53cd12220bc01c48685e24f7dc8c602a7746998e435","91b649609489d613d1d5e590f78e6d74ecfc061d57048bad9e76f302c5b9c61"],["754e3239f325570cdbbf4a87deee8a66b7f2b33479d468fbc1a50743bf56cc18","673fb86e5bda30fb3cd0ed304ea49a023ee33d0197a695d0c5d98093c536683"],["e3e6bd1071a1e96aff57859c82d570f0330800661d1c952f9fe2694691d9b9e8","59c9e0bba394e76f40c0aa58379a3cb6a5a2283993e90c4167002af4920e37f5"],["186b483d056a033826ae73d88f732985c4ccb1f32ba35f4b4cc47fdcf04aa6eb","3b952d32c67cf77e2e17446e204180ab21fb8090895138b4a4a797f86e80888b"],["df9d70a6b9876ce544c98561f4be4f725442e6d2b737d9c91a8321724ce0963f","55eb2dafd84d6ccd5f862b785dc39d4ab157222720ef9da217b8c45cf2ba2417"],["5edd5cc23c51e87a497ca815d5dce0f8ab52554f849ed8995de64c5f34ce7143","efae9c8dbc14130661e8cec030c89ad0c13c66c0d17a2905cdc706ab7399a868"],["290798c2b6476830da12fe02287e9e777aa3fba1c355b17a722d362f84614fba","e38da76dcd440621988d00bcf79af25d5b29c094db2a23146d003afd41943e7a"],["af3c423a95d9f5b3054754efa150ac39cd29552fe360257362dfdecef4053b45","f98a3fd831eb2b749a93b0e6f35cfb40c8cd5aa667a15581bc2feded498fd9c6"],["766dbb24d134e745cccaa28c99bf274906bb66b26dcf98df8d2fed50d884249a","744b1152eacbe5e38dcc887980da38b897584a65fa06cedd2c924f97cbac5996"],["59dbf46f8c94759ba21277c33784f41645f7b44f6c596a58ce92e666191abe3e","c534ad44175fbc300f4ea6ce648309a042ce739a7919798cd85e216c4a307f6e"],["f13ada95103c4537305e691e74e9a4a8dd647e711a95e73cb62dc6018cfd87b8","e13817b44ee14de663bf4bc808341f326949e21a6a75c2570778419bdaf5733d"],["7754b4fa0e8aced06d4167a2c59cca4cda1869c06ebadfb6488550015a88522c","30e93e864e669d82224b967c3020b8fa8d1e4e350b6cbcc537a48b57841163a2"],["948dcadf5990e048aa3874d46abef9d701858f95de8041d2a6828c99e2262519","e491a42537f6e597d5d28a3224b1bc25df9154efbd2ef1d2cbba2cae5347d57e"],["7962414450c76c1689c7b48f8202ec37fb224cf5ac0bfa1570328a8a3d7c77ab","100b610ec4ffb4760d5c1fc133ef6f6b12507a051f04ac5760afa5b29db83437"],["3514087834964b54b15b160644d915485a16977225b8847bb0dd085137ec47ca","ef0afbb2056205448e1652c48e8127fc6039e77c15c2378b7e7d15a0de293311"],["d3cc30ad6b483e4bc79ce2c9dd8bc54993e947eb8df787b442943d3f7b527eaf","8b378a22d827278d89c5e9be8f9508ae3c2ad46290358630afb34db04eede0a4"],["1624d84780732860ce1c78fcbfefe08b2b29823db913f6493975ba0ff4847610","68651cf9b6da903e0914448c6cd9d4ca896878f5282be4c8cc06e2a404078575"],["733ce80da955a8a26902c95633e62a985192474b5af207da6df7b4fd5fc61cd4","f5435a2bd2badf7d485a4d8b8db9fcce3e1ef8e0201e4578c54673bc1dc5ea1d"],["15d9441254945064cf1a1c33bbd3b49f8966c5092171e699ef258dfab81c045c","d56eb30b69463e7234f5137b73b84177434800bacebfc685fc37bbe9efe4070d"],["a1d0fcf2ec9de675b612136e5ce70d271c21417c9d2b8aaaac138599d0717940","edd77f50bcb5a3cab2e90737309667f2641462a54070f3d519212d39c197a629"],["e22fbe15c0af8ccc5780c0735f84dbe9a790badee8245c06c7ca37331cb36980","a855babad5cd60c88b430a69f53a1a7a38289154964799be43d06d77d31da06"],["311091dd9860e8e20ee13473c1155f5f69635e394704eaa74009452246cfa9b3","66db656f87d1f04fffd1f04788c06830871ec5a64feee685bd80f0b1286d8374"],["34c1fd04d301be89b31c0442d3e6ac24883928b45a9340781867d4232ec2dbdf","9414685e97b1b5954bd46f730174136d57f1ceeb487443dc5321857ba73abee"],["f219ea5d6b54701c1c14de5b557eb42a8d13f3abbcd08affcc2a5e6b049b8d63","4cb95957e83d40b0f73af4544cccf6b1f4b08d3c07b27fb8d8c2962a400766d1"],["d7b8740f74a8fbaab1f683db8f45de26543a5490bca627087236912469a0b448","fa77968128d9c92ee1010f337ad4717eff15db5ed3c049b3411e0315eaa4593b"],["32d31c222f8f6f0ef86f7c98d3a3335ead5bcd32abdd94289fe4d3091aa824bf","5f3032f5892156e39ccd3d7915b9e1da2e6dac9e6f26e961118d14b8462e1661"],["7461f371914ab32671045a155d9831ea8793d77cd59592c4340f86cbc18347b5","8ec0ba238b96bec0cbdddcae0aa442542eee1ff50c986ea6b39847b3cc092ff6"],["ee079adb1df1860074356a25aa38206a6d716b2c3e67453d287698bad7b2b2d6","8dc2412aafe3be5c4c5f37e0ecc5f9f6a446989af04c4e25ebaac479ec1c8c1e"],["16ec93e447ec83f0467b18302ee620f7e65de331874c9dc72bfd8616ba9da6b5","5e4631150e62fb40d0e8c2a7ca5804a39d58186a50e497139626778e25b0674d"],["eaa5f980c245f6f038978290afa70b6bd8855897f98b6aa485b96065d537bd99","f65f5d3e292c2e0819a528391c994624d784869d7e6ea67fb18041024edc07dc"],["78c9407544ac132692ee1910a02439958ae04877151342ea96c4b6b35a49f51","f3e0319169eb9b85d5404795539a5e68fa1fbd583c064d2462b675f194a3ddb4"],["494f4be219a1a77016dcd838431aea0001cdc8ae7a6fc688726578d9702857a5","42242a969283a5f339ba7f075e36ba2af925ce30d767ed6e55f4b031880d562c"],["a598a8030da6d86c6bc7f2f5144ea549d28211ea58faa70ebf4c1e665c1fe9b5","204b5d6f84822c307e4b4a7140737aec23fc63b65b35f86a10026dbd2d864e6b"],["c41916365abb2b5d09192f5f2dbeafec208f020f12570a184dbadc3e58595997","4f14351d0087efa49d245b328984989d5caf9450f34bfc0ed16e96b58fa9913"],["841d6063a586fa475a724604da03bc5b92a2e0d2e0a36acfe4c73a5514742881","73867f59c0659e81904f9a1c7543698e62562d6744c169ce7a36de01a8d6154"],["5e95bb399a6971d376026947f89bde2f282b33810928be4ded112ac4d70e20d5","39f23f366809085beebfc71181313775a99c9aed7d8ba38b161384c746012865"],["36e4641a53948fd476c39f8a99fd974e5ec07564b5315d8bf99471bca0ef2f66","d2424b1b1abe4eb8164227b085c9aa9456ea13493fd563e06fd51cf5694c78fc"],["336581ea7bfbbb290c191a2f507a41cf5643842170e914faeab27c2c579f726","ead12168595fe1be99252129b6e56b3391f7ab1410cd1e0ef3dcdcabd2fda224"],["8ab89816dadfd6b6a1f2634fcf00ec8403781025ed6890c4849742706bd43ede","6fdcef09f2f6d0a044e654aef624136f503d459c3e89845858a47a9129cdd24e"],["1e33f1a746c9c5778133344d9299fcaa20b0938e8acff2544bb40284b8c5fb94","60660257dd11b3aa9c8ed618d24edff2306d320f1d03010e33a7d2057f3b3b6"],["85b7c1dcb3cec1b7ee7f30ded79dd20a0ed1f4cc18cbcfcfa410361fd8f08f31","3d98a9cdd026dd43f39048f25a8847f4fcafad1895d7a633c6fed3c35e999511"],["29df9fbd8d9e46509275f4b125d6d45d7fbe9a3b878a7af872a2800661ac5f51","b4c4fe99c775a606e2d8862179139ffda61dc861c019e55cd2876eb2a27d84b"],["a0b1cae06b0a847a3fea6e671aaf8adfdfe58ca2f768105c8082b2e449fce252","ae434102edde0958ec4b19d917a6a28e6b72da1834aff0e650f049503a296cf2"],["4e8ceafb9b3e9a136dc7ff67e840295b499dfb3b2133e4ba113f2e4c0e121e5","cf2174118c8b6d7a4b48f6d534ce5c79422c086a63460502b827ce62a326683c"],["d24a44e047e19b6f5afb81c7ca2f69080a5076689a010919f42725c2b789a33b","6fb8d5591b466f8fc63db50f1c0f1c69013f996887b8244d2cdec417afea8fa3"],["ea01606a7a6c9cdd249fdfcfacb99584001edd28abbab77b5104e98e8e3b35d4","322af4908c7312b0cfbfe369f7a7b3cdb7d4494bc2823700cfd652188a3ea98d"],["af8addbf2b661c8a6c6328655eb96651252007d8c5ea31be4ad196de8ce2131f","6749e67c029b85f52a034eafd096836b2520818680e26ac8f3dfbcdb71749700"],["e3ae1974566ca06cc516d47e0fb165a674a3dabcfca15e722f0e3450f45889","2aeabe7e4531510116217f07bf4d07300de97e4874f81f533420a72eeb0bd6a4"],["591ee355313d99721cf6993ffed1e3e301993ff3ed258802075ea8ced397e246","b0ea558a113c30bea60fc4775460c7901ff0b053d25ca2bdeee98f1a4be5d196"],["11396d55fda54c49f19aa97318d8da61fa8584e47b084945077cf03255b52984","998c74a8cd45ac01289d5833a7beb4744ff536b01b257be4c5767bea93ea57a4"],["3c5d2a1ba39c5a1790000738c9e0c40b8dcdfd5468754b6405540157e017aa7a","b2284279995a34e2f9d4de7396fc18b80f9b8b9fdd270f6661f79ca4c81bd257"],["cc8704b8a60a0defa3a99a7299f2e9c3fbc395afb04ac078425ef8a1793cc030","bdd46039feed17881d1e0862db347f8cf395b74fc4bcdc4e940b74e3ac1f1b13"],["c533e4f7ea8555aacd9777ac5cad29b97dd4defccc53ee7ea204119b2889b197","6f0a256bc5efdf429a2fb6242f1a43a2d9b925bb4a4b3a26bb8e0f45eb596096"],["c14f8f2ccb27d6f109f6d08d03cc96a69ba8c34eec07bbcf566d48e33da6593","c359d6923bb398f7fd4473e16fe1c28475b740dd098075e6c0e8649113dc3a38"],["a6cbc3046bc6a450bac24789fa17115a4c9739ed75f8f21ce441f72e0b90e6ef","21ae7f4680e889bb130619e2c0f95a360ceb573c70603139862afd617fa9b9f"],["347d6d9a02c48927ebfb86c1359b1caf130a3c0267d11ce6344b39f99d43cc38","60ea7f61a353524d1c987f6ecec92f086d565ab687870cb12689ff1e31c74448"],["da6545d2181db8d983f7dcb375ef5866d47c67b1bf31c8cf855ef7437b72656a","49b96715ab6878a79e78f07ce5680c5d6673051b4935bd897fea824b77dc208a"],["c40747cc9d012cb1a13b8148309c6de7ec25d6945d657146b9d5994b8feb1111","5ca560753be2a12fc6de6caf2cb489565db936156b9514e1bb5e83037e0fa2d4"],["4e42c8ec82c99798ccf3a610be870e78338c7f713348bd34c8203ef4037f3502","7571d74ee5e0fb92a7a8b33a07783341a5492144cc54bcc40a94473693606437"],["3775ab7089bc6af823aba2e1af70b236d251cadb0c86743287522a1b3b0dedea","be52d107bcfa09d8bcb9736a828cfa7fac8db17bf7a76a2c42ad961409018cf7"],["cee31cbf7e34ec379d94fb814d3d775ad954595d1314ba8846959e3e82f74e26","8fd64a14c06b589c26b947ae2bcf6bfa0149ef0be14ed4d80f448a01c43b1c6d"],["b4f9eaea09b6917619f6ea6a4eb5464efddb58fd45b1ebefcdc1a01d08b47986","39e5c9925b5a54b07433a4f18c61726f8bb131c012ca542eb24a8ac07200682a"],["d4263dfc3d2df923a0179a48966d30ce84e2515afc3dccc1b77907792ebcc60e","62dfaf07a0f78feb30e30d6295853ce189e127760ad6cf7fae164e122a208d54"],["48457524820fa65a4f8d35eb6930857c0032acc0a4a2de422233eeda897612c4","25a748ab367979d98733c38a1fa1c2e7dc6cc07db2d60a9ae7a76aaa49bd0f77"],["dfeeef1881101f2cb11644f3a2afdfc2045e19919152923f367a1767c11cceda","ecfb7056cf1de042f9420bab396793c0c390bde74b4bbdff16a83ae09a9a7517"],["6d7ef6b17543f8373c573f44e1f389835d89bcbc6062ced36c82df83b8fae859","cd450ec335438986dfefa10c57fea9bcc521a0959b2d80bbf74b190dca712d10"],["e75605d59102a5a2684500d3b991f2e3f3c88b93225547035af25af66e04541f","f5c54754a8f71ee540b9b48728473e314f729ac5308b06938360990e2bfad125"],["eb98660f4c4dfaa06a2be453d5020bc99a0c2e60abe388457dd43fefb1ed620c","6cb9a8876d9cb8520609af3add26cd20a0a7cd8a9411131ce85f44100099223e"],["13e87b027d8514d35939f2e6892b19922154596941888336dc3563e3b8dba942","fef5a3c68059a6dec5d624114bf1e91aac2b9da568d6abeb2570d55646b8adf1"],["ee163026e9fd6fe017c38f06a5be6fc125424b371ce2708e7bf4491691e5764a","1acb250f255dd61c43d94ccc670d0f58f49ae3fa15b96623e5430da0ad6c62b2"],["b268f5ef9ad51e4d78de3a750c2dc89b1e626d43505867999932e5db33af3d80","5f310d4b3c99b9ebb19f77d41c1dee018cf0d34fd4191614003e945a1216e423"],["ff07f3118a9df035e9fad85eb6c7bfe42b02f01ca99ceea3bf7ffdba93c4750d","438136d603e858a3a5c440c38eccbaddc1d2942114e2eddd4740d098ced1f0d8"],["8d8b9855c7c052a34146fd20ffb658bea4b9f69e0d825ebec16e8c3ce2b526a1","cdb559eedc2d79f926baf44fb84ea4d44bcf50fee51d7ceb30e2e7f463036758"],["52db0b5384dfbf05bfa9d472d7ae26dfe4b851ceca91b1eba54263180da32b63","c3b997d050ee5d423ebaf66a6db9f57b3180c902875679de924b69d84a7b375"],["e62f9490d3d51da6395efd24e80919cc7d0f29c3f3fa48c6fff543becbd43352","6d89ad7ba4876b0b22c2ca280c682862f342c8591f1daf5170e07bfd9ccafa7d"],["7f30ea2476b399b4957509c88f77d0191afa2ff5cb7b14fd6d8e7d65aaab1193","ca5ef7d4b231c94c3b15389a5f6311e9daff7bb67b103e9880ef4bff637acaec"],["5098ff1e1d9f14fb46a210fada6c903fef0fb7b4a1dd1d9ac60a0361800b7a00","9731141d81fc8f8084d37c6e7542006b3ee1b40d60dfe5362a5b132fd17ddc0"],["32b78c7de9ee512a72895be6b9cbefa6e2f3c4ccce445c96b9f2c81e2778ad58","ee1849f513df71e32efc3896ee28260c73bb80547ae2275ba497237794c8753c"],["e2cb74fddc8e9fbcd076eef2a7c72b0ce37d50f08269dfc074b581550547a4f7","d3aa2ed71c9dd2247a62df062736eb0baddea9e36122d2be8641abcb005cc4a4"],["8438447566d4d7bedadc299496ab357426009a35f235cb141be0d99cd10ae3a8","c4e1020916980a4da5d01ac5e6ad330734ef0d7906631c4f2390426b2edd791f"],["4162d488b89402039b584c6fc6c308870587d9c46f660b878ab65c82c711d67e","67163e903236289f776f22c25fb8a3afc1732f2b84b4e95dbda47ae5a0852649"],["3fad3fa84caf0f34f0f89bfd2dcf54fc175d767aec3e50684f3ba4a4bf5f683d","cd1bc7cb6cc407bb2f0ca647c718a730cf71872e7d0d2a53fa20efcdfe61826"],["674f2600a3007a00568c1a7ce05d0816c1fb84bf1370798f1c69532faeb1a86b","299d21f9413f33b3edf43b257004580b70db57da0b182259e09eecc69e0d38a5"],["d32f4da54ade74abb81b815ad1fb3b263d82d6c692714bcff87d29bd5ee9f08f","f9429e738b8e53b968e99016c059707782e14f4535359d582fc416910b3eea87"],["30e4e670435385556e593657135845d36fbb6931f72b08cb1ed954f1e3ce3ff6","462f9bce619898638499350113bbc9b10a878d35da70740dc695a559eb88db7b"],["be2062003c51cc3004682904330e4dee7f3dcd10b01e580bf1971b04d4cad297","62188bc49d61e5428573d48a74e1c655b1c61090905682a0d5558ed72dccb9bc"],["93144423ace3451ed29e0fb9ac2af211cb6e84a601df5993c419859fff5df04a","7c10dfb164c3425f5c71a3f9d7992038f1065224f72bb9d1d902a6d13037b47c"],["b015f8044f5fcbdcf21ca26d6c34fb8197829205c7b7d2a7cb66418c157b112c","ab8c1e086d04e813744a655b2df8d5f83b3cdc6faa3088c1d3aea1454e3a1d5f"],["d5e9e1da649d97d89e4868117a465a3a4f8a18de57a140d36b3f2af341a21b52","4cb04437f391ed73111a13cc1d4dd0db1693465c2240480d8955e8592f27447a"],["d3ae41047dd7ca065dbf8ed77b992439983005cd72e16d6f996a5316d36966bb","bd1aeb21ad22ebb22a10f0303417c6d964f8cdd7df0aca614b10dc14d125ac46"],["463e2763d885f958fc66cdd22800f0a487197d0a82e377b49f80af87c897b065","bfefacdb0e5d0fd7df3a311a94de062b26b80c61fbc97508b79992671ef7ca7f"],["7985fdfd127c0567c6f53ec1bb63ec3158e597c40bfe747c83cddfc910641917","603c12daf3d9862ef2b25fe1de289aed24ed291e0ec6708703a5bd567f32ed03"],["74a1ad6b5f76e39db2dd249410eac7f99e74c59cb83d2d0ed5ff1543da7703e9","cc6157ef18c9c63cd6193d83631bbea0093e0968942e8c33d5737fd790e0db08"],["30682a50703375f602d416664ba19b7fc9bab42c72747463a71d0896b22f6da3","553e04f6b018b4fa6c8f39e7f311d3176290d0e0f19ca73f17714d9977a22ff8"],["9e2158f0d7c0d5f26c3791efefa79597654e7a2b2464f52b1ee6c1347769ef57","712fcdd1b9053f09003a3481fa7762e9ffd7c8ef35a38509e2fbf2629008373"],["176e26989a43c9cfeba4029c202538c28172e566e3c4fce7322857f3be327d66","ed8cc9d04b29eb877d270b4878dc43c19aefd31f4eee09ee7b47834c1fa4b1c3"],["75d46efea3771e6e68abb89a13ad747ecf1892393dfc4f1b7004788c50374da8","9852390a99507679fd0b86fd2b39a868d7efc22151346e1a3ca4726586a6bed8"],["809a20c67d64900ffb698c4c825f6d5f2310fb0451c869345b7319f645605721","9e994980d9917e22b76b061927fa04143d096ccc54963e6a5ebfa5f3f8e286c1"],["1b38903a43f7f114ed4500b4eac7083fdefece1cf29c63528d563446f972c180","4036edc931a60ae889353f77fd53de4a2708b26b6f5da72ad3394119daf408f9"]]}}}}),IY=$Q({"node_modules/elliptic/lib/elliptic/curves.js"(X){var K=X,x0=XY(),G=mQ(),Y=oQ(),$=Y.assert;function Z(V){V.type==="short"?this.curve=new G.short(V):V.type==="edwards"?this.curve=new G.edwards(V):this.curve=new G.mont(V),this.g=this.curve.g,this.n=this.curve.n,this.hash=V.hash,$(this.g.validate(),"Invalid curve"),$(this.g.mul(this.n).isInfinity(),"Invalid curve, G*N != O")}K.PresetCurve=Z;function Q(V,B0){Object.defineProperty(K,V,{configurable:!0,enumerable:!0,get:function(){var H=new Z(B0);return Object.defineProperty(K,V,{configurable:!0,enumerable:!0,value:H}),H}})}Q("p192",{type:"short",prime:"p192",p:"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff",a:"ffffffff ffffffff ffffffff fffffffe ffffffff fffffffc",b:"64210519 e59c80e7 0fa7e9ab 72243049 feb8deec c146b9b1",n:"ffffffff ffffffff ffffffff 99def836 146bc9b1 b4d22831",hash:x0.sha256,gRed:!1,g:["188da80e b03090f6 7cbf20eb 43a18800 f4ff0afd 82ff1012","07192b95 ffc8da78 631011ed 6b24cdd5 73f977a1 1e794811"]}),Q("p224",{type:"short",prime:"p224",p:"ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001",a:"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff fffffffe",b:"b4050a85 0c04b3ab f5413256 5044b0b7 d7bfd8ba 270b3943 2355ffb4",n:"ffffffff ffffffff ffffffff ffff16a2 e0b8f03e 13dd2945 5c5c2a3d",hash:x0.sha256,gRed:!1,g:["b70e0cbd 6bb4bf7f 321390b9 4a03c1d3 56c21122 343280d6 115c1d21","bd376388 b5f723fb 4c22dfe6 cd4375a0 5a074764 44d58199 85007e34"]}),Q("p256",{type:"short",prime:null,p:"ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff ffffffff",a:"ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff fffffffc",b:"5ac635d8 aa3a93e7 b3ebbd55 769886bc 651d06b0 cc53b0f6 3bce3c3e 27d2604b",n:"ffffffff 00000000 ffffffff ffffffff bce6faad a7179e84 f3b9cac2 fc632551",hash:x0.sha256,gRed:!1,g:["6b17d1f2 e12c4247 f8bce6e5 63a440f2 77037d81 2deb33a0 f4a13945 d898c296","4fe342e2 fe1a7f9b 8ee7eb4a 7c0f9e16 2bce3357 6b315ece cbb64068 37bf51f5"]}),Q("p384",{type:"short",prime:null,p:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 ffffffff",a:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 fffffffc",b:"b3312fa7 e23ee7e4 988e056b e3f82d19 181d9c6e fe814112 0314088f 5013875a c656398d 8a2ed19d 2a85c8ed d3ec2aef",n:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff c7634d81 f4372ddf 581a0db2 48b0a77a ecec196a ccc52973",hash:x0.sha384,gRed:!1,g:["aa87ca22 be8b0537 8eb1c71e f320ad74 6e1d3b62 8ba79b98 59f741e0 82542a38 5502f25d bf55296c 3a545e38 72760ab7","3617de4a 96262c6f 5d9e98bf 9292dc29 f8f41dbd 289a147c e9da3113 b5f0b8c0 0a60b1ce 1d7e819d 7a431d7c 90ea0e5f"]}),Q("p521",{type:"short",prime:null,p:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff",a:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffc",b:"00000051 953eb961 8e1c9a1f 929a21a0 b68540ee a2da725b 99b315f3 b8b48991 8ef109e1 56193951 ec7e937b 1652c0bd 3bb1bf07 3573df88 3d2c34f1 ef451fd4 6b503f00",n:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffa 51868783 bf2f966b 7fcc0148 f709a5d0 3bb5c9b8 899c47ae bb6fb71e 91386409",hash:x0.sha512,gRed:!1,g:["000000c6 858e06b7 0404e9cd 9e3ecb66 2395b442 9c648139 053fb521 f828af60 6b4d3dba a14b5e77 efe75928 fe1dc127 a2ffa8de 3348b3c1 856a429b f97e7e31 c2e5bd66","00000118 39296a78 9a3bc004 5c8a5fb4 2c7d1bd9 98f54449 579b4468 17afbd17 273e662c 97ee7299 5ef42640 c550b901 3fad0761 353c7086 a272c240 88be9476 9fd16650"]}),Q("curve25519",{type:"mont",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"76d06",b:"1",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:x0.sha256,gRed:!1,g:["9"]}),Q("ed25519",{type:"edwards",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"-1",c:"1",d:"52036cee2b6ffe73 8cc740797779e898 00700a4d4141d8ab 75eb4dca135978a3",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:x0.sha256,gRed:!1,g:["216936d3cd6e53fec0a4e231fdd6dc5c692cc7609525a7b2c9562d608f25d51a","6666666666666666666666666666666666666666666666666666666666666658"]});var U;try{U=KY()}catch{U=void 0}Q("secp256k1",{type:"short",prime:"k256",p:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f",a:"0",b:"7",n:"ffffffff ffffffff ffffffff fffffffe baaedce6 af48a03b bfd25e8c d0364141",h:"1",hash:x0.sha256,beta:"7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee",lambda:"5363ad4cc05c30e0a5261c028812645a122e22ea20816678df02967c1b23bd72",basis:[{a:"3086d221a7d46bcde86c90e49284eb15",b:"-e4437ed6010e88286f547fa90abfe4c3"},{a:"114ca50f7a8e2f3f657c1108d9d44cfd8",b:"3086d221a7d46bcde86c90e49284eb15"}],gRed:!1,g:["79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798","483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8",U]})}}),OY=$Q({"node_modules/hmac-drbg/lib/hmac-drbg.js"(X,K){var x0=XY(),G=lQ(),Y=N0();function $(Z){if(!(this instanceof $))return new $(Z);this.hash=Z.hash,this.predResist=!!Z.predResist,this.outLen=this.hash.outSize,this.minEntropy=Z.minEntropy||this.hash.hmacStrength,this._reseed=null,this.reseedInterval=null,this.K=null,this.V=null;var Q=G.toArray(Z.entropy,Z.entropyEnc||"hex"),U=G.toArray(Z.nonce,Z.nonceEnc||"hex"),V=G.toArray(Z.pers,Z.persEnc||"hex");Y(Q.length>=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits"),this._init(Q,U,V)}K.exports=$,$.prototype._init=function(Z,Q,U){var V=Z.concat(Q).concat(U);this.K=new Array(this.outLen/8),this.V=new Array(this.outLen/8);for(var B0=0;B0<this.V.length;B0++)this.K[B0]=0,this.V[B0]=1;this._update(V),this._reseed=1,this.reseedInterval=281474976710656},$.prototype._hmac=function(){return new x0.hmac(this.hash,this.K)},$.prototype._update=function(Z){var Q=this._hmac().update(this.V).update([0]);Z&&(Q=Q.update(Z)),this.K=Q.digest(),this.V=this._hmac().update(this.V).digest(),Z&&(this.K=this._hmac().update(this.V).update([1]).update(Z).digest(),this.V=this._hmac().update(this.V).digest())},$.prototype.reseed=function(Z,Q,U,V){typeof Q!="string"&&(V=U,U=Q,Q=null),Z=G.toArray(Z,Q),U=G.toArray(U,V),Y(Z.length>=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits"),this._update(Z.concat(U||[])),this._reseed=1},$.prototype.generate=function(Z,Q,U,V){if(this._reseed>this.reseedInterval)throw new Error("Reseed is required");typeof Q!="string"&&(V=U,U=Q,Q=null),U&&(U=G.toArray(U,V||"hex"),this._update(U));for(var B0=[];B0.length<Z;)this.V=this._hmac().update(this.V).digest(),B0=B0.concat(this.V);var H=B0.slice(0,Z);return this._update(U),this._reseed++,G.encode(H,Q)}}}),JY=$Q({"node_modules/elliptic/lib/elliptic/ec/key.js"(X,K){var x0=bQ(),G=oQ(),Y=G.assert;function $(Z,Q){this.ec=Z,this.priv=null,this.pub=null,Q.priv&&this._importPrivate(Q.priv,Q.privEnc),Q.pub&&this._importPublic(Q.pub,Q.pubEnc)}K.exports=$,$.fromPublic=function(Z,Q,U){return Q instanceof $?Q:new $(Z,{pub:Q,pubEnc:U})},$.fromPrivate=function(Z,Q,U){return Q instanceof $?Q:new $(Z,{priv:Q,privEnc:U})},$.prototype.validate=function(){var Z=this.getPublic();return Z.isInfinity()?{result:!1,reason:"Invalid public key"}:Z.validate()?Z.mul(this.ec.curve.n).isInfinity()?{result:!0,reason:null}:{result:!1,reason:"Public key * N != O"}:{result:!1,reason:"Public key is not a point"}},$.prototype.getPublic=function(Z,Q){return typeof Z=="string"&&(Q=Z,Z=null),this.pub||(this.pub=this.ec.g.mul(this.priv)),Q?this.pub.encode(Q,Z):this.pub},$.prototype.getPrivate=function(Z){return Z==="hex"?this.priv.toString(16,2):this.priv},$.prototype._importPrivate=function(Z,Q){this.priv=new x0(Z,Q||16),this.priv=this.priv.umod(this.ec.curve.n)},$.prototype._importPublic=function(Z,Q){if(Z.x||Z.y){this.ec.curve.type==="mont"?Y(Z.x,"Need x coordinate"):(this.ec.curve.type==="short"||this.ec.curve.type==="edwards")&&Y(Z.x&&Z.y,"Need both x and y coordinate"),this.pub=this.ec.curve.point(Z.x,Z.y);return}this.pub=this.ec.curve.decodePoint(Z,Q)},$.prototype.derive=function(Z){return Z.validate()||Y(Z.validate(),"public point not validated"),Z.mul(this.priv).getX()},$.prototype.sign=function(Z,Q,U){return this.ec.sign(Z,this,Q,U)},$.prototype.verify=function(Z,Q){return this.ec.verify(Z,Q,this)},$.prototype.inspect=function(){return"<Key priv: "+(this.priv&&this.priv.toString(16,2))+" pub: "+(this.pub&&this.pub.inspect())+" >"}}}),FY=$Q({"node_modules/elliptic/lib/elliptic/ec/signature.js"(X,K){var x0=bQ(),G=oQ(),Y=G.assert;function $(B0,H){if(B0 instanceof $)return B0;this._importDER(B0,H)||(Y(B0.r&&B0.s,"Signature without r or s"),this.r=new x0(B0.r,16),this.s=new x0(B0.s,16),B0.recoveryParam===void 0?this.recoveryParam=null:this.recoveryParam=B0.recoveryParam)}K.exports=$;function Z(){this.place=0}function Q(B0,H){var y0=B0[H.place++];if(!(y0&128))return y0;var W=y0&15;if(W===0||W>4)return!1;for(var w0=0,E=0,p0=H.place;E<W;E++,p0++)w0<<=8,w0|=B0[p0],w0>>>=0;return w0<=127?!1:(H.place=p0,w0)}function U(B0){for(var H=0,y0=B0.length-1;!B0[H]&&!(B0[H+1]&128)&&H<y0;)H++;return H===0?B0:B0.slice(H)}$.prototype._importDER=function(B0,H){B0=G.toArray(B0,H);var y0=new Z;if(B0[y0.place++]!==48)return!1;var W=Q(B0,y0);if(W===!1||W+y0.place!==B0.length||B0[y0.place++]!==2)return!1;var w0=Q(B0,y0);if(w0===!1)return!1;var E=B0.slice(y0.place,w0+y0.place);if(y0.place+=w0,B0[y0.place++]!==2)return!1;var p0=Q(B0,y0);if(p0===!1||B0.length!==p0+y0.place)return!1;var T=B0.slice(y0.place,p0+y0.place);if(E[0]===0)if(E[1]&128)E=E.slice(1);else return!1;if(T[0]===0)if(T[1]&128)T=T.slice(1);else return!1;return this.r=new x0(E),this.s=new x0(T),this.recoveryParam=null,!0};function V(B0,H){if(H<128){B0.push(H);return}var y0=1+(Math.log(H)/Math.LN2>>>3);for(B0.push(y0|128);--y0;)B0.push(H>>>(y0<<3)&255);B0.push(H)}$.prototype.toDER=function(B0){var H=this.r.toArray(),y0=this.s.toArray();for(H[0]&128&&(H=[0].concat(H)),y0[0]&128&&(y0=[0].concat(y0)),H=U(H),y0=U(y0);!y0[0]&&!(y0[1]&128);)y0=y0.slice(1);var W=[2];V(W,H.length),W=W.concat(H),W.push(2),V(W,y0.length);var w0=W.concat(y0),E=[48];return V(E,w0.length),E=E.concat(w0),G.encode(E,B0)}}}),AY=$Q({"node_modules/elliptic/lib/elliptic/ec/index.js"(X,K){var x0=bQ(),G=OY(),Y=oQ(),$=IY(),Z=xQ(),Q=Y.assert,U=JY(),V=FY();function B0(H){if(!(this instanceof B0))return new B0(H);typeof H=="string"&&(Q(Object.prototype.hasOwnProperty.call($,H),"Unknown curve "+H),H=$[H]),H instanceof $.PresetCurve&&(H={curve:H}),this.curve=H.curve.curve,this.n=this.curve.n,this.nh=this.n.ushrn(1),this.g=this.curve.g,this.g=H.curve.g,this.g.precompute(H.curve.n.bitLength()+1),this.hash=H.hash||H.curve.hash}K.exports=B0,B0.prototype.keyPair=function(H){return new U(this,H)},B0.prototype.keyFromPrivate=function(H,y0){return U.fromPrivate(this,H,y0)},B0.prototype.keyFromPublic=function(H,y0){return U.fromPublic(this,H,y0)},B0.prototype.genKeyPair=function(H){H||(H={});for(var y0=new G({hash:this.hash,pers:H.pers,persEnc:H.persEnc||"utf8",entropy:H.entropy||Z(this.hash.hmacStrength),entropyEnc:H.entropy&&H.entropyEnc||"utf8",nonce:this.n.toArray()}),W=this.n.byteLength(),w0=this.n.sub(new x0(2));;){var E=new x0(y0.generate(W));if(!(E.cmp(w0)>0))return E.iaddn(1),this.keyFromPrivate(E)}},B0.prototype._truncateToN=function(H,y0){var W=H.byteLength()*8-this.n.bitLength();return W>0&&(H=H.ushrn(W)),!y0&&H.cmp(this.n)>=0?H.sub(this.n):H},B0.prototype.sign=function(H,y0,W,w0){typeof W=="object"&&(w0=W,W=null),w0||(w0={}),y0=this.keyFromPrivate(y0,W),H=this._truncateToN(new x0(H,16));for(var E=this.n.byteLength(),p0=y0.getPrivate().toArray("be",E),T=H.toArray("be",E),f0=new G({hash:this.hash,entropy:p0,nonce:T,pers:w0.pers,persEnc:w0.persEnc||"utf8"}),D=this.n.sub(new x0(1)),c0=0;;c0++){var C=w0.k?w0.k(c0):new x0(f0.generate(this.n.byteLength()));if(C=this._truncateToN(C,!0),!(C.cmpn(1)<=0||C.cmp(D)>=0)){var h0=this.g.mul(C);if(!h0.isInfinity()){var L=h0.getX(),d0=L.umod(this.n);if(d0.cmpn(0)!==0){var R=C.invm(this.n).mul(d0.mul(y0.getPrivate()).iadd(H));if(R=R.umod(this.n),R.cmpn(0)!==0){var b0=(h0.getY().isOdd()?1:0)|(L.cmp(d0)!==0?2:0);return w0.canonical&&R.cmp(this.nh)>0&&(R=this.n.sub(R),b0^=1),new V({r:d0,s:R,recoveryParam:b0})}}}}}},B0.prototype.verify=function(H,y0,W,w0){H=this._truncateToN(new x0(H,16)),W=this.keyFromPublic(W,w0),y0=new V(y0,"hex");var{r:E,s:p0}=y0;if(E.cmpn(1)<0||E.cmp(this.n)>=0||p0.cmpn(1)<0||p0.cmp(this.n)>=0)return!1;var T=p0.invm(this.n),f0=T.mul(H).umod(this.n),D=T.mul(E).umod(this.n),c0;return this.curve._maxwellTrick?(c0=this.g.jmulAdd(f0,W.getPublic(),D),c0.isInfinity()?!1:c0.eqXToP(E)):(c0=this.g.mulAdd(f0,W.getPublic(),D),c0.isInfinity()?!1:c0.getX().umod(this.n).cmp(E)===0)},B0.prototype.recoverPubKey=function(H,y0,W,w0){Q((3&W)===W,"The recovery param is more than two bits"),y0=new V(y0,w0);var E=this.n,p0=new x0(H),T=y0.r,f0=y0.s,D=W&1,c0=W>>1;if(T.cmp(this.curve.p.umod(this.curve.n))>=0&&c0)throw new Error("Unable to find sencond key candinate");c0?T=this.curve.pointFromX(T.add(this.curve.n),D):T=this.curve.pointFromX(T,D);var C=y0.r.invm(E),h0=E.sub(p0).mul(C).umod(E),L=f0.mul(C).umod(E);return this.g.mulAdd(h0,T,L)},B0.prototype.getKeyRecoveryParam=function(H,y0,W,w0){if(y0=new V(y0,w0),y0.recoveryParam!==null)return y0.recoveryParam;for(var E=0;E<4;E++){var p0;try{p0=this.recoverPubKey(H,y0,E)}catch{continue}if(p0.eq(W))return E}throw new Error("Unable to find valid recovery factor")}}}),HY=$Q({"node_modules/elliptic/lib/elliptic/eddsa/key.js"(X,K){var x0=oQ(),G=x0.assert,Y=x0.parseBytes,$=x0.cachedProperty;function Z(Q,U){this.eddsa=Q,this._secret=Y(U.secret),Q.isPoint(U.pub)?this._pub=U.pub:this._pubBytes=Y(U.pub)}Z.fromPublic=function(Q,U){return U instanceof Z?U:new Z(Q,{pub:U})},Z.fromSecret=function(Q,U){return U instanceof Z?U:new Z(Q,{secret:U})},Z.prototype.secret=function(){return this._secret},$(Z,"pubBytes",function(){return this.eddsa.encodePoint(this.pub())}),$(Z,"pub",function(){return this._pubBytes?this.eddsa.decodePoint(this._pubBytes):this.eddsa.g.mul(this.priv())}),$(Z,"privBytes",function(){var Q=this.eddsa,U=this.hash(),V=Q.encodingLength-1,B0=U.slice(0,Q.encodingLength);return B0[0]&=248,B0[V]&=127,B0[V]|=64,B0}),$(Z,"priv",function(){return this.eddsa.decodeInt(this.privBytes())}),$(Z,"hash",function(){return this.eddsa.hash().update(this.secret()).digest()}),$(Z,"messagePrefix",function(){return this.hash().slice(this.eddsa.encodingLength)}),Z.prototype.sign=function(Q){return G(this._secret,"KeyPair can only verify"),this.eddsa.sign(Q,this)},Z.prototype.verify=function(Q,U){return this.eddsa.verify(Q,U,this)},Z.prototype.getSecret=function(Q){return G(this._secret,"KeyPair is public only"),x0.encode(this.secret(),Q)},Z.prototype.getPublic=function(Q){return x0.encode(this.pubBytes(),Q)},K.exports=Z}}),WY=$Q({"node_modules/elliptic/lib/elliptic/eddsa/signature.js"(X,K){var x0=bQ(),G=oQ(),Y=G.assert,$=G.cachedProperty,Z=G.parseBytes;function Q(U,V){this.eddsa=U,typeof V!="object"&&(V=Z(V)),Array.isArray(V)&&(V={R:V.slice(0,U.encodingLength),S:V.slice(U.encodingLength)}),Y(V.R&&V.S,"Signature without R or S"),U.isPoint(V.R)&&(this._R=V.R),V.S instanceof x0&&(this._S=V.S),this._Rencoded=Array.isArray(V.R)?V.R:V.Rencoded,this._Sencoded=Array.isArray(V.S)?V.S:V.Sencoded}$(Q,"S",function(){return this.eddsa.decodeInt(this.Sencoded())}),$(Q,"R",function(){return this.eddsa.decodePoint(this.Rencoded())}),$(Q,"Rencoded",function(){return this.eddsa.encodePoint(this.R())}),$(Q,"Sencoded",function(){return this.eddsa.encodeInt(this.S())}),Q.prototype.toBytes=function(){return this.Rencoded().concat(this.Sencoded())},Q.prototype.toHex=function(){return G.encode(this.toBytes(),"hex").toUpperCase()},K.exports=Q}}),EY=$Q({"node_modules/elliptic/lib/elliptic/eddsa/index.js"(X,K){var x0=XY(),G=IY(),Y=oQ(),$=Y.assert,Z=Y.parseBytes,Q=HY(),U=WY();function V(B0){if($(B0==="ed25519","only tested with ed25519 so far"),!(this instanceof V))return new V(B0);B0=G[B0].curve,this.curve=B0,this.g=B0.g,this.g.precompute(B0.n.bitLength()+1),this.pointClass=B0.point().constructor,this.encodingLength=Math.ceil(B0.n.bitLength()/8),this.hash=x0.sha512}K.exports=V,V.prototype.sign=function(B0,H){B0=Z(B0);var y0=this.keyFromSecret(H),W=this.hashInt(y0.messagePrefix(),B0),w0=this.g.mul(W),E=this.encodePoint(w0),p0=this.hashInt(E,y0.pubBytes(),B0).mul(y0.priv()),T=W.add(p0).umod(this.curve.n);return this.makeSignature({R:w0,S:T,Rencoded:E})},V.prototype.verify=function(B0,H,y0){B0=Z(B0),H=this.makeSignature(H);var W=this.keyFromPublic(y0),w0=this.hashInt(H.Rencoded(),W.pubBytes(),B0),E=this.g.mul(H.S()),p0=H.R().add(W.pub().mul(w0));return p0.eq(E)},V.prototype.hashInt=function(){for(var B0=this.hash(),H=0;H<arguments.length;H++)B0.update(arguments[H]);return Y.intFromLE(B0.digest()).umod(this.curve.n)},V.prototype.keyFromPublic=function(B0){return Q.fromPublic(this,B0)},V.prototype.keyFromSecret=function(B0){return Q.fromSecret(this,B0)},V.prototype.makeSignature=function(B0){return B0 instanceof U?B0:new U(this,B0)},V.prototype.encodePoint=function(B0){var H=B0.getY().toArray("le",this.encodingLength);return H[this.encodingLength-1]|=B0.getX().isOdd()?128:0,H},V.prototype.decodePoint=function(B0){B0=Y.parseBytes(B0);var H=B0.length-1,y0=B0.slice(0,H).concat(B0[H]&-129),W=(B0[H]&128)!==0,w0=Y.intFromLE(y0);return this.curve.pointFromY(w0,W)},V.prototype.encodeInt=function(B0){return B0.toArray("le",this.encodingLength)},V.prototype.decodeInt=function(B0){return Y.intFromLE(B0)},V.prototype.isPoint=function(B0){return B0 instanceof this.pointClass}}}),TY=$Q({"node_modules/elliptic/lib/elliptic.js"(X){var K=X;K.version=dQ().version,K.utils=oQ(),K.rand=xQ(),K.curve=mQ(),K.curves=IY(),K.ec=AY(),K.eddsa=EY()}}),DY=$Q({"node_modules/asn1.js/node_modules/bn.js/lib/bn.js"(X,K){(function(x0,G){function Y(l0,z){if(!l0)throw new Error(z||"Assertion failed")}function $(l0,z){l0.super_=z;var o0=function(){};o0.prototype=z.prototype,l0.prototype=new o0,l0.prototype.constructor=l0}function Z(l0,z,o0){if(Z.isBN(l0))return l0;this.negative=0,this.words=null,this.length=0,this.red=null,l0!==null&&((z==="le"||z==="be")&&(o0=z,z=10),this._init(l0||0,z||10,o0||"be"))}typeof x0=="object"?x0.exports=Z:G.BN=Z,Z.BN=Z,Z.wordSize=26;var Q=c$;Z.isBN=function(l0){return l0 instanceof Z?!0:l0!==null&&typeof l0=="object"&&l0.constructor.wordSize===Z.wordSize&&Array.isArray(l0.words)},Z.max=function(l0,z){return l0.cmp(z)>0?l0:z},Z.min=function(l0,z){return l0.cmp(z)<0?l0:z},Z.prototype._init=function(l0,z,o0){if(typeof l0=="number")return this._initNumber(l0,z,o0);if(typeof l0=="object")return this._initArray(l0,z,o0);z==="hex"&&(z=16),Y(z===(z|0)&&z>=2&&z<=36),l0=l0.toString().replace(/\s+/g,"");var M=0;l0[0]==="-"&&(M++,this.negative=1),M<l0.length&&(z===16?this._parseHex(l0,M,o0):(this._parseBase(l0,z,M),o0==="le"&&this._initArray(this.toArray(),z,o0)))},Z.prototype._initNumber=function(l0,z,o0){l0<0&&(this.negative=1,l0=-l0),l0<67108864?(this.words=[l0&67108863],this.length=1):l0<4503599627370496?(this.words=[l0&67108863,l0/67108864&67108863],this.length=2):(Y(l0<9007199254740992),this.words=[l0&67108863,l0/67108864&67108863,1],this.length=3),o0==="le"&&this._initArray(this.toArray(),z,o0)},Z.prototype._initArray=function(l0,z,o0){if(Y(typeof l0.length=="number"),l0.length<=0)return this.words=[0],this.length=1,this;this.length=Math.ceil(l0.length/3),this.words=new Array(this.length);for(var M=0;M<this.length;M++)this.words[M]=0;var u0,S,n0=0;if(o0==="be")for(M=l0.length-1,u0=0;M>=0;M-=3)S=l0[M]|l0[M-1]<<8|l0[M-2]<<16,this.words[u0]|=S<<n0&67108863,this.words[u0+1]=S>>>26-n0&67108863,n0+=24,n0>=26&&(n0-=26,u0++);else if(o0==="le")for(M=0,u0=0;M<l0.length;M+=3)S=l0[M]|l0[M+1]<<8|l0[M+2]<<16,this.words[u0]|=S<<n0&67108863,this.words[u0+1]=S>>>26-n0&67108863,n0+=24,n0>=26&&(n0-=26,u0++);return this.strip()};function U(l0,z){var o0=l0.charCodeAt(z);return o0>=65&&o0<=70?o0-55:o0>=97&&o0<=102?o0-87:o0-48&15}function V(l0,z,o0){var M=U(l0,o0);return o0-1>=z&&(M|=U(l0,o0-1)<<4),M}Z.prototype._parseHex=function(l0,z,o0){this.length=Math.ceil((l0.length-z)/6),this.words=new Array(this.length);for(var M=0;M<this.length;M++)this.words[M]=0;var u0=0,S=0,n0;if(o0==="be")for(M=l0.length-1;M>=z;M-=2)n0=V(l0,z,M)<<u0,this.words[S]|=n0&67108863,u0>=18?(u0-=18,S+=1,this.words[S]|=n0>>>26):u0+=8;else{var v=l0.length-z;for(M=v%2===0?z+1:z;M<l0.length;M+=2)n0=V(l0,z,M)<<u0,this.words[S]|=n0&67108863,u0>=18?(u0-=18,S+=1,this.words[S]|=n0>>>26):u0+=8}this.strip()};function B0(l0,z,o0,M){for(var u0=0,S=Math.min(l0.length,o0),n0=z;n0<S;n0++){var v=l0.charCodeAt(n0)-48;u0*=M,v>=49?u0+=v-49+10:v>=17?u0+=v-17+10:u0+=v}return u0}Z.prototype._parseBase=function(l0,z,o0){this.words=[0],this.length=1;for(var M=0,u0=1;u0<=67108863;u0*=z)M++;M--,u0=u0/z|0;for(var S=l0.length-o0,n0=S%M,v=Math.min(S,S-n0)+o0,s0=0,I=o0;I<v;I+=M)s0=B0(l0,I,I+M,z),this.imuln(u0),this.words[0]+s0<67108864?this.words[0]+=s0:this._iaddn(s0);if(n0!==0){var t0=1;for(s0=B0(l0,I,l0.length,z),I=0;I<n0;I++)t0*=z;this.imuln(t0),this.words[0]+s0<67108864?this.words[0]+=s0:this._iaddn(s0)}this.strip()},Z.prototype.copy=function(l0){l0.words=new Array(this.length);for(var z=0;z<this.length;z++)l0.words[z]=this.words[z];l0.length=this.length,l0.negative=this.negative,l0.red=this.red},Z.prototype.clone=function(){var l0=new Z(null);return this.copy(l0),l0},Z.prototype._expand=function(l0){for(;this.length<l0;)this.words[this.length++]=0;return this},Z.prototype.strip=function(){for(;this.length>1&&this.words[this.length-1]===0;)this.length--;return this._normSign()},Z.prototype._normSign=function(){return this.length===1&&this.words[0]===0&&(this.negative=0),this},Z.prototype.inspect=function(){return(this.red?"<BN-R: ":"<BN: ")+this.toString(16)+">"};var H=["","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"],y0=[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],W=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64000000,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,24300000,28629151,33554432,39135393,45435424,52521875,60466176];Z.prototype.toString=function(l0,z){l0=l0||10,z=z|0||1;var o0;if(l0===16||l0==="hex"){o0="";for(var M=0,u0=0,S=0;S<this.length;S++){var n0=this.words[S],v=((n0<<M|u0)&16777215).toString(16);u0=n0>>>24-M&16777215,u0!==0||S!==this.length-1?o0=H[6-v.length]+v+o0:o0=v+o0,M+=2,M>=26&&(M-=26,S--)}for(u0!==0&&(o0=u0.toString(16)+o0);o0.length%z!==0;)o0="0"+o0;return this.negative!==0&&(o0="-"+o0),o0}if(l0===(l0|0)&&l0>=2&&l0<=36){var s0=y0[l0],I=W[l0];o0="";var t0=this.clone();for(t0.negative=0;!t0.isZero();){var m0=t0.modn(I).toString(l0);t0=t0.idivn(I),t0.isZero()?o0=m0+o0:o0=H[s0-m0.length]+m0+o0}for(this.isZero()&&(o0="0"+o0);o0.length%z!==0;)o0="0"+o0;return this.negative!==0&&(o0="-"+o0),o0}Y(!1,"Base should be between 2 and 36")},Z.prototype.toNumber=function(){var l0=this.words[0];return this.length===2?l0+=this.words[1]*67108864:this.length===3&&this.words[2]===1?l0+=4503599627370496+this.words[1]*67108864:this.length>2&&Y(!1,"Number can only safely store up to 53 bits"),this.negative!==0?-l0:l0},Z.prototype.toJSON=function(){return this.toString(16)},Z.prototype.toBuffer=function(l0,z){return Y(typeof Q<"u"),this.toArrayLike(Q,l0,z)},Z.prototype.toArray=function(l0,z){return this.toArrayLike(Array,l0,z)},Z.prototype.toArrayLike=function(l0,z,o0){var M=this.byteLength(),u0=o0||Math.max(1,M);Y(M<=u0,"byte array longer than desired length"),Y(u0>0,"Requested array length <= 0"),this.strip();var S=z==="le",n0=new l0(u0),v,s0,I=this.clone();if(S){for(s0=0;!I.isZero();s0++)v=I.andln(255),I.iushrn(8),n0[s0]=v;for(;s0<u0;s0++)n0[s0]=0}else{for(s0=0;s0<u0-M;s0++)n0[s0]=0;for(s0=0;!I.isZero();s0++)v=I.andln(255),I.iushrn(8),n0[u0-s0-1]=v}return n0},Math.clz32?Z.prototype._countBits=function(l0){return 32-Math.clz32(l0)}:Z.prototype._countBits=function(l0){var z=l0,o0=0;return z>=4096&&(o0+=13,z>>>=13),z>=64&&(o0+=7,z>>>=7),z>=8&&(o0+=4,z>>>=4),z>=2&&(o0+=2,z>>>=2),o0+z},Z.prototype._zeroBits=function(l0){if(l0===0)return 26;var z=l0,o0=0;return(z&8191)===0&&(o0+=13,z>>>=13),(z&127)===0&&(o0+=7,z>>>=7),(z&15)===0&&(o0+=4,z>>>=4),(z&3)===0&&(o0+=2,z>>>=2),(z&1)===0&&o0++,o0},Z.prototype.bitLength=function(){var l0=this.words[this.length-1],z=this._countBits(l0);return(this.length-1)*26+z};function w0(l0){for(var z=new Array(l0.bitLength()),o0=0;o0<z.length;o0++){var M=o0/26|0,u0=o0%26;z[o0]=(l0.words[M]&1<<u0)>>>u0}return z}Z.prototype.zeroBits=function(){if(this.isZero())return 0;for(var l0=0,z=0;z<this.length;z++){var o0=this._zeroBits(this.words[z]);if(l0+=o0,o0!==26)break}return l0},Z.prototype.byteLength=function(){return Math.ceil(this.bitLength()/8)},Z.prototype.toTwos=function(l0){return this.negative!==0?this.abs().inotn(l0).iaddn(1):this.clone()},Z.prototype.fromTwos=function(l0){return this.testn(l0-1)?this.notn(l0).iaddn(1).ineg():this.clone()},Z.prototype.isNeg=function(){return this.negative!==0},Z.prototype.neg=function(){return this.clone().ineg()},Z.prototype.ineg=function(){return this.isZero()||(this.negative^=1),this},Z.prototype.iuor=function(l0){for(;this.length<l0.length;)this.words[this.length++]=0;for(var z=0;z<l0.length;z++)this.words[z]=this.words[z]|l0.words[z];return this.strip()},Z.prototype.ior=function(l0){return Y((this.negative|l0.negative)===0),this.iuor(l0)},Z.prototype.or=function(l0){return this.length>l0.length?this.clone().ior(l0):l0.clone().ior(this)},Z.prototype.uor=function(l0){return this.length>l0.length?this.clone().iuor(l0):l0.clone().iuor(this)},Z.prototype.iuand=function(l0){var z;this.length>l0.length?z=l0:z=this;for(var o0=0;o0<z.length;o0++)this.words[o0]=this.words[o0]&l0.words[o0];return this.length=z.length,this.strip()},Z.prototype.iand=function(l0){return Y((this.negative|l0.negative)===0),this.iuand(l0)},Z.prototype.and=function(l0){return this.length>l0.length?this.clone().iand(l0):l0.clone().iand(this)},Z.prototype.uand=function(l0){return this.length>l0.length?this.clone().iuand(l0):l0.clone().iuand(this)},Z.prototype.iuxor=function(l0){var z,o0;this.length>l0.length?(z=this,o0=l0):(z=l0,o0=this);for(var M=0;M<o0.length;M++)this.words[M]=z.words[M]^o0.words[M];if(this!==z)for(;M<z.length;M++)this.words[M]=z.words[M];return this.length=z.length,this.strip()},Z.prototype.ixor=function(l0){return Y((this.negative|l0.negative)===0),this.iuxor(l0)},Z.prototype.xor=function(l0){return this.length>l0.length?this.clone().ixor(l0):l0.clone().ixor(this)},Z.prototype.uxor=function(l0){return this.length>l0.length?this.clone().iuxor(l0):l0.clone().iuxor(this)},Z.prototype.inotn=function(l0){Y(typeof l0=="number"&&l0>=0);var z=Math.ceil(l0/26)|0,o0=l0%26;this._expand(z),o0>0&&z--;for(var M=0;M<z;M++)this.words[M]=~this.words[M]&67108863;return o0>0&&(this.words[M]=~this.words[M]&67108863>>26-o0),this.strip()},Z.prototype.notn=function(l0){return this.clone().inotn(l0)},Z.prototype.setn=function(l0,z){Y(typeof l0=="number"&&l0>=0);var o0=l0/26|0,M=l0%26;return this._expand(o0+1),z?this.words[o0]=this.words[o0]|1<<M:this.words[o0]=this.words[o0]&~(1<<M),this.strip()},Z.prototype.iadd=function(l0){var z;if(this.negative!==0&&l0.negative===0)return this.negative=0,z=this.isub(l0),this.negative^=1,this._normSign();if(this.negative===0&&l0.negative!==0)return l0.negative=0,z=this.isub(l0),l0.negative=1,z._normSign();var o0,M;this.length>l0.length?(o0=this,M=l0):(o0=l0,M=this);for(var u0=0,S=0;S<M.length;S++)z=(o0.words[S]|0)+(M.words[S]|0)+u0,this.words[S]=z&67108863,u0=z>>>26;for(;u0!==0&&S<o0.length;S++)z=(o0.words[S]|0)+u0,this.words[S]=z&67108863,u0=z>>>26;if(this.length=o0.length,u0!==0)this.words[this.length]=u0,this.length++;else if(o0!==this)for(;S<o0.length;S++)this.words[S]=o0.words[S];return this},Z.prototype.add=function(l0){var z;return l0.negative!==0&&this.negative===0?(l0.negative=0,z=this.sub(l0),l0.negative^=1,z):l0.negative===0&&this.negative!==0?(this.negative=0,z=l0.sub(this),this.negative=1,z):this.length>l0.length?this.clone().iadd(l0):l0.clone().iadd(this)},Z.prototype.isub=function(l0){if(l0.negative!==0){l0.negative=0;var z=this.iadd(l0);return l0.negative=1,z._normSign()}else if(this.negative!==0)return this.negative=0,this.iadd(l0),this.negative=1,this._normSign();var o0=this.cmp(l0);if(o0===0)return this.negative=0,this.length=1,this.words[0]=0,this;var M,u0;o0>0?(M=this,u0=l0):(M=l0,u0=this);for(var S=0,n0=0;n0<u0.length;n0++)z=(M.words[n0]|0)-(u0.words[n0]|0)+S,S=z>>26,this.words[n0]=z&67108863;for(;S!==0&&n0<M.length;n0++)z=(M.words[n0]|0)+S,S=z>>26,this.words[n0]=z&67108863;if(S===0&&n0<M.length&&M!==this)for(;n0<M.length;n0++)this.words[n0]=M.words[n0];return this.length=Math.max(this.length,n0),M!==this&&(this.negative=1),this.strip()},Z.prototype.sub=function(l0){return this.clone().isub(l0)};function E(l0,z,o0){o0.negative=z.negative^l0.negative;var M=l0.length+z.length|0;o0.length=M,M=M-1|0;var u0=l0.words[0]|0,S=z.words[0]|0,n0=u0*S,v=n0&67108863,s0=n0/67108864|0;o0.words[0]=v;for(var I=1;I<M;I++){for(var t0=s0>>>26,m0=s0&67108863,a0=Math.min(I,z.length-1),q=Math.max(0,I-l0.length+1);q<=a0;q++){var e0=I-q|0;u0=l0.words[e0]|0,S=z.words[q]|0,n0=u0*S+m0,t0+=n0/67108864|0,m0=n0&67108863}o0.words[I]=m0|0,s0=t0|0}return s0!==0?o0.words[I]=s0|0:o0.length--,o0.strip()}var p0=function(l0,z,o0){var M=l0.words,u0=z.words,S=o0.words,n0=0,v,s0,I,t0=M[0]|0,m0=t0&8191,a0=t0>>>13,q=M[1]|0,e0=q&8191,r0=q>>>13,i0=M[2]|0,j=i0&8191,$$=i0>>>13,k=M[3]|0,Q$=k&8191,g=k>>>13,Y$=M[4]|0,_=Y$&8191,Z$=Y$>>>13,N=M[5]|0,G$=N&8191,x=N>>>13,V$=M[6]|0,B=V$&8191,U$=V$>>>13,y=M[7]|0,X$=y&8191,w=y>>>13,K$=M[8]|0,p=K$&8191,I$=K$>>>13,f=M[9]|0,O$=f&8191,c=f>>>13,J$=u0[0]|0,h=J$&8191,F$=J$>>>13,d=u0[1]|0,A$=d&8191,b=d>>>13,H$=u0[2]|0,l=H$&8191,W$=H$>>>13,o=u0[3]|0,E$=o&8191,u=o>>>13,T$=u0[4]|0,n=T$&8191,D$=T$>>>13,s=u0[5]|0,C$=s&8191,t=s>>>13,L$=u0[6]|0,m=L$&8191,R$=L$>>>13,a=u0[7]|0,P$=a&8191,O=a>>>13,z$=u0[8]|0,e=z$&8191,M$=z$>>>13,J=u0[9]|0,S$=J&8191,F=J>>>13;o0.negative=l0.negative^z.negative,o0.length=19,v=Math.imul(m0,h),s0=Math.imul(m0,F$),s0=s0+Math.imul(a0,h)|0,I=Math.imul(a0,F$);var v$=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(v$>>>26)|0,v$&=67108863,v=Math.imul(e0,h),s0=Math.imul(e0,F$),s0=s0+Math.imul(r0,h)|0,I=Math.imul(r0,F$),v=v+Math.imul(m0,A$)|0,s0=s0+Math.imul(m0,b)|0,s0=s0+Math.imul(a0,A$)|0,I=I+Math.imul(a0,b)|0;var r=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(r>>>26)|0,r&=67108863,v=Math.imul(j,h),s0=Math.imul(j,F$),s0=s0+Math.imul($$,h)|0,I=Math.imul($$,F$),v=v+Math.imul(e0,A$)|0,s0=s0+Math.imul(e0,b)|0,s0=s0+Math.imul(r0,A$)|0,I=I+Math.imul(r0,b)|0,v=v+Math.imul(m0,l)|0,s0=s0+Math.imul(m0,W$)|0,s0=s0+Math.imul(a0,l)|0,I=I+Math.imul(a0,W$)|0;var q$=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(q$>>>26)|0,q$&=67108863,v=Math.imul(Q$,h),s0=Math.imul(Q$,F$),s0=s0+Math.imul(g,h)|0,I=Math.imul(g,F$),v=v+Math.imul(j,A$)|0,s0=s0+Math.imul(j,b)|0,s0=s0+Math.imul($$,A$)|0,I=I+Math.imul($$,b)|0,v=v+Math.imul(e0,l)|0,s0=s0+Math.imul(e0,W$)|0,s0=s0+Math.imul(r0,l)|0,I=I+Math.imul(r0,W$)|0,v=v+Math.imul(m0,E$)|0,s0=s0+Math.imul(m0,u)|0,s0=s0+Math.imul(a0,E$)|0,I=I+Math.imul(a0,u)|0;var i=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(i>>>26)|0,i&=67108863,v=Math.imul(_,h),s0=Math.imul(_,F$),s0=s0+Math.imul(Z$,h)|0,I=Math.imul(Z$,F$),v=v+Math.imul(Q$,A$)|0,s0=s0+Math.imul(Q$,b)|0,s0=s0+Math.imul(g,A$)|0,I=I+Math.imul(g,b)|0,v=v+Math.imul(j,l)|0,s0=s0+Math.imul(j,W$)|0,s0=s0+Math.imul($$,l)|0,I=I+Math.imul($$,W$)|0,v=v+Math.imul(e0,E$)|0,s0=s0+Math.imul(e0,u)|0,s0=s0+Math.imul(r0,E$)|0,I=I+Math.imul(r0,u)|0,v=v+Math.imul(m0,n)|0,s0=s0+Math.imul(m0,D$)|0,s0=s0+Math.imul(a0,n)|0,I=I+Math.imul(a0,D$)|0;var j$=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(j$>>>26)|0,j$&=67108863,v=Math.imul(G$,h),s0=Math.imul(G$,F$),s0=s0+Math.imul(x,h)|0,I=Math.imul(x,F$),v=v+Math.imul(_,A$)|0,s0=s0+Math.imul(_,b)|0,s0=s0+Math.imul(Z$,A$)|0,I=I+Math.imul(Z$,b)|0,v=v+Math.imul(Q$,l)|0,s0=s0+Math.imul(Q$,W$)|0,s0=s0+Math.imul(g,l)|0,I=I+Math.imul(g,W$)|0,v=v+Math.imul(j,E$)|0,s0=s0+Math.imul(j,u)|0,s0=s0+Math.imul($$,E$)|0,I=I+Math.imul($$,u)|0,v=v+Math.imul(e0,n)|0,s0=s0+Math.imul(e0,D$)|0,s0=s0+Math.imul(r0,n)|0,I=I+Math.imul(r0,D$)|0,v=v+Math.imul(m0,C$)|0,s0=s0+Math.imul(m0,t)|0,s0=s0+Math.imul(a0,C$)|0,I=I+Math.imul(a0,t)|0;var k$=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(k$>>>26)|0,k$&=67108863,v=Math.imul(B,h),s0=Math.imul(B,F$),s0=s0+Math.imul(U$,h)|0,I=Math.imul(U$,F$),v=v+Math.imul(G$,A$)|0,s0=s0+Math.imul(G$,b)|0,s0=s0+Math.imul(x,A$)|0,I=I+Math.imul(x,b)|0,v=v+Math.imul(_,l)|0,s0=s0+Math.imul(_,W$)|0,s0=s0+Math.imul(Z$,l)|0,I=I+Math.imul(Z$,W$)|0,v=v+Math.imul(Q$,E$)|0,s0=s0+Math.imul(Q$,u)|0,s0=s0+Math.imul(g,E$)|0,I=I+Math.imul(g,u)|0,v=v+Math.imul(j,n)|0,s0=s0+Math.imul(j,D$)|0,s0=s0+Math.imul($$,n)|0,I=I+Math.imul($$,D$)|0,v=v+Math.imul(e0,C$)|0,s0=s0+Math.imul(e0,t)|0,s0=s0+Math.imul(r0,C$)|0,I=I+Math.imul(r0,t)|0,v=v+Math.imul(m0,m)|0,s0=s0+Math.imul(m0,R$)|0,s0=s0+Math.imul(a0,m)|0,I=I+Math.imul(a0,R$)|0;var g$=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(g$>>>26)|0,g$&=67108863,v=Math.imul(X$,h),s0=Math.imul(X$,F$),s0=s0+Math.imul(w,h)|0,I=Math.imul(w,F$),v=v+Math.imul(B,A$)|0,s0=s0+Math.imul(B,b)|0,s0=s0+Math.imul(U$,A$)|0,I=I+Math.imul(U$,b)|0,v=v+Math.imul(G$,l)|0,s0=s0+Math.imul(G$,W$)|0,s0=s0+Math.imul(x,l)|0,I=I+Math.imul(x,W$)|0,v=v+Math.imul(_,E$)|0,s0=s0+Math.imul(_,u)|0,s0=s0+Math.imul(Z$,E$)|0,I=I+Math.imul(Z$,u)|0,v=v+Math.imul(Q$,n)|0,s0=s0+Math.imul(Q$,D$)|0,s0=s0+Math.imul(g,n)|0,I=I+Math.imul(g,D$)|0,v=v+Math.imul(j,C$)|0,s0=s0+Math.imul(j,t)|0,s0=s0+Math.imul($$,C$)|0,I=I+Math.imul($$,t)|0,v=v+Math.imul(e0,m)|0,s0=s0+Math.imul(e0,R$)|0,s0=s0+Math.imul(r0,m)|0,I=I+Math.imul(r0,R$)|0,v=v+Math.imul(m0,P$)|0,s0=s0+Math.imul(m0,O)|0,s0=s0+Math.imul(a0,P$)|0,I=I+Math.imul(a0,O)|0;var _$=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(_$>>>26)|0,_$&=67108863,v=Math.imul(p,h),s0=Math.imul(p,F$),s0=s0+Math.imul(I$,h)|0,I=Math.imul(I$,F$),v=v+Math.imul(X$,A$)|0,s0=s0+Math.imul(X$,b)|0,s0=s0+Math.imul(w,A$)|0,I=I+Math.imul(w,b)|0,v=v+Math.imul(B,l)|0,s0=s0+Math.imul(B,W$)|0,s0=s0+Math.imul(U$,l)|0,I=I+Math.imul(U$,W$)|0,v=v+Math.imul(G$,E$)|0,s0=s0+Math.imul(G$,u)|0,s0=s0+Math.imul(x,E$)|0,I=I+Math.imul(x,u)|0,v=v+Math.imul(_,n)|0,s0=s0+Math.imul(_,D$)|0,s0=s0+Math.imul(Z$,n)|0,I=I+Math.imul(Z$,D$)|0,v=v+Math.imul(Q$,C$)|0,s0=s0+Math.imul(Q$,t)|0,s0=s0+Math.imul(g,C$)|0,I=I+Math.imul(g,t)|0,v=v+Math.imul(j,m)|0,s0=s0+Math.imul(j,R$)|0,s0=s0+Math.imul($$,m)|0,I=I+Math.imul($$,R$)|0,v=v+Math.imul(e0,P$)|0,s0=s0+Math.imul(e0,O)|0,s0=s0+Math.imul(r0,P$)|0,I=I+Math.imul(r0,O)|0,v=v+Math.imul(m0,e)|0,s0=s0+Math.imul(m0,M$)|0,s0=s0+Math.imul(a0,e)|0,I=I+Math.imul(a0,M$)|0;var N$=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(N$>>>26)|0,N$&=67108863,v=Math.imul(O$,h),s0=Math.imul(O$,F$),s0=s0+Math.imul(c,h)|0,I=Math.imul(c,F$),v=v+Math.imul(p,A$)|0,s0=s0+Math.imul(p,b)|0,s0=s0+Math.imul(I$,A$)|0,I=I+Math.imul(I$,b)|0,v=v+Math.imul(X$,l)|0,s0=s0+Math.imul(X$,W$)|0,s0=s0+Math.imul(w,l)|0,I=I+Math.imul(w,W$)|0,v=v+Math.imul(B,E$)|0,s0=s0+Math.imul(B,u)|0,s0=s0+Math.imul(U$,E$)|0,I=I+Math.imul(U$,u)|0,v=v+Math.imul(G$,n)|0,s0=s0+Math.imul(G$,D$)|0,s0=s0+Math.imul(x,n)|0,I=I+Math.imul(x,D$)|0,v=v+Math.imul(_,C$)|0,s0=s0+Math.imul(_,t)|0,s0=s0+Math.imul(Z$,C$)|0,I=I+Math.imul(Z$,t)|0,v=v+Math.imul(Q$,m)|0,s0=s0+Math.imul(Q$,R$)|0,s0=s0+Math.imul(g,m)|0,I=I+Math.imul(g,R$)|0,v=v+Math.imul(j,P$)|0,s0=s0+Math.imul(j,O)|0,s0=s0+Math.imul($$,P$)|0,I=I+Math.imul($$,O)|0,v=v+Math.imul(e0,e)|0,s0=s0+Math.imul(e0,M$)|0,s0=s0+Math.imul(r0,e)|0,I=I+Math.imul(r0,M$)|0,v=v+Math.imul(m0,S$)|0,s0=s0+Math.imul(m0,F)|0,s0=s0+Math.imul(a0,S$)|0,I=I+Math.imul(a0,F)|0;var $0=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+($0>>>26)|0,$0&=67108863,v=Math.imul(O$,A$),s0=Math.imul(O$,b),s0=s0+Math.imul(c,A$)|0,I=Math.imul(c,b),v=v+Math.imul(p,l)|0,s0=s0+Math.imul(p,W$)|0,s0=s0+Math.imul(I$,l)|0,I=I+Math.imul(I$,W$)|0,v=v+Math.imul(X$,E$)|0,s0=s0+Math.imul(X$,u)|0,s0=s0+Math.imul(w,E$)|0,I=I+Math.imul(w,u)|0,v=v+Math.imul(B,n)|0,s0=s0+Math.imul(B,D$)|0,s0=s0+Math.imul(U$,n)|0,I=I+Math.imul(U$,D$)|0,v=v+Math.imul(G$,C$)|0,s0=s0+Math.imul(G$,t)|0,s0=s0+Math.imul(x,C$)|0,I=I+Math.imul(x,t)|0,v=v+Math.imul(_,m)|0,s0=s0+Math.imul(_,R$)|0,s0=s0+Math.imul(Z$,m)|0,I=I+Math.imul(Z$,R$)|0,v=v+Math.imul(Q$,P$)|0,s0=s0+Math.imul(Q$,O)|0,s0=s0+Math.imul(g,P$)|0,I=I+Math.imul(g,O)|0,v=v+Math.imul(j,e)|0,s0=s0+Math.imul(j,M$)|0,s0=s0+Math.imul($$,e)|0,I=I+Math.imul($$,M$)|0,v=v+Math.imul(e0,S$)|0,s0=s0+Math.imul(e0,F)|0,s0=s0+Math.imul(r0,S$)|0,I=I+Math.imul(r0,F)|0;var x$=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(x$>>>26)|0,x$&=67108863,v=Math.imul(O$,l),s0=Math.imul(O$,W$),s0=s0+Math.imul(c,l)|0,I=Math.imul(c,W$),v=v+Math.imul(p,E$)|0,s0=s0+Math.imul(p,u)|0,s0=s0+Math.imul(I$,E$)|0,I=I+Math.imul(I$,u)|0,v=v+Math.imul(X$,n)|0,s0=s0+Math.imul(X$,D$)|0,s0=s0+Math.imul(w,n)|0,I=I+Math.imul(w,D$)|0,v=v+Math.imul(B,C$)|0,s0=s0+Math.imul(B,t)|0,s0=s0+Math.imul(U$,C$)|0,I=I+Math.imul(U$,t)|0,v=v+Math.imul(G$,m)|0,s0=s0+Math.imul(G$,R$)|0,s0=s0+Math.imul(x,m)|0,I=I+Math.imul(x,R$)|0,v=v+Math.imul(_,P$)|0,s0=s0+Math.imul(_,O)|0,s0=s0+Math.imul(Z$,P$)|0,I=I+Math.imul(Z$,O)|0,v=v+Math.imul(Q$,e)|0,s0=s0+Math.imul(Q$,M$)|0,s0=s0+Math.imul(g,e)|0,I=I+Math.imul(g,M$)|0,v=v+Math.imul(j,S$)|0,s0=s0+Math.imul(j,F)|0,s0=s0+Math.imul($$,S$)|0,I=I+Math.imul($$,F)|0;var Q0=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(Q0>>>26)|0,Q0&=67108863,v=Math.imul(O$,E$),s0=Math.imul(O$,u),s0=s0+Math.imul(c,E$)|0,I=Math.imul(c,u),v=v+Math.imul(p,n)|0,s0=s0+Math.imul(p,D$)|0,s0=s0+Math.imul(I$,n)|0,I=I+Math.imul(I$,D$)|0,v=v+Math.imul(X$,C$)|0,s0=s0+Math.imul(X$,t)|0,s0=s0+Math.imul(w,C$)|0,I=I+Math.imul(w,t)|0,v=v+Math.imul(B,m)|0,s0=s0+Math.imul(B,R$)|0,s0=s0+Math.imul(U$,m)|0,I=I+Math.imul(U$,R$)|0,v=v+Math.imul(G$,P$)|0,s0=s0+Math.imul(G$,O)|0,s0=s0+Math.imul(x,P$)|0,I=I+Math.imul(x,O)|0,v=v+Math.imul(_,e)|0,s0=s0+Math.imul(_,M$)|0,s0=s0+Math.imul(Z$,e)|0,I=I+Math.imul(Z$,M$)|0,v=v+Math.imul(Q$,S$)|0,s0=s0+Math.imul(Q$,F)|0,s0=s0+Math.imul(g,S$)|0,I=I+Math.imul(g,F)|0;var B$=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(B$>>>26)|0,B$&=67108863,v=Math.imul(O$,n),s0=Math.imul(O$,D$),s0=s0+Math.imul(c,n)|0,I=Math.imul(c,D$),v=v+Math.imul(p,C$)|0,s0=s0+Math.imul(p,t)|0,s0=s0+Math.imul(I$,C$)|0,I=I+Math.imul(I$,t)|0,v=v+Math.imul(X$,m)|0,s0=s0+Math.imul(X$,R$)|0,s0=s0+Math.imul(w,m)|0,I=I+Math.imul(w,R$)|0,v=v+Math.imul(B,P$)|0,s0=s0+Math.imul(B,O)|0,s0=s0+Math.imul(U$,P$)|0,I=I+Math.imul(U$,O)|0,v=v+Math.imul(G$,e)|0,s0=s0+Math.imul(G$,M$)|0,s0=s0+Math.imul(x,e)|0,I=I+Math.imul(x,M$)|0,v=v+Math.imul(_,S$)|0,s0=s0+Math.imul(_,F)|0,s0=s0+Math.imul(Z$,S$)|0,I=I+Math.imul(Z$,F)|0;var Y0=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(Y0>>>26)|0,Y0&=67108863,v=Math.imul(O$,C$),s0=Math.imul(O$,t),s0=s0+Math.imul(c,C$)|0,I=Math.imul(c,t),v=v+Math.imul(p,m)|0,s0=s0+Math.imul(p,R$)|0,s0=s0+Math.imul(I$,m)|0,I=I+Math.imul(I$,R$)|0,v=v+Math.imul(X$,P$)|0,s0=s0+Math.imul(X$,O)|0,s0=s0+Math.imul(w,P$)|0,I=I+Math.imul(w,O)|0,v=v+Math.imul(B,e)|0,s0=s0+Math.imul(B,M$)|0,s0=s0+Math.imul(U$,e)|0,I=I+Math.imul(U$,M$)|0,v=v+Math.imul(G$,S$)|0,s0=s0+Math.imul(G$,F)|0,s0=s0+Math.imul(x,S$)|0,I=I+Math.imul(x,F)|0;var y$=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(y$>>>26)|0,y$&=67108863,v=Math.imul(O$,m),s0=Math.imul(O$,R$),s0=s0+Math.imul(c,m)|0,I=Math.imul(c,R$),v=v+Math.imul(p,P$)|0,s0=s0+Math.imul(p,O)|0,s0=s0+Math.imul(I$,P$)|0,I=I+Math.imul(I$,O)|0,v=v+Math.imul(X$,e)|0,s0=s0+Math.imul(X$,M$)|0,s0=s0+Math.imul(w,e)|0,I=I+Math.imul(w,M$)|0,v=v+Math.imul(B,S$)|0,s0=s0+Math.imul(B,F)|0,s0=s0+Math.imul(U$,S$)|0,I=I+Math.imul(U$,F)|0;var Z0=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(Z0>>>26)|0,Z0&=67108863,v=Math.imul(O$,P$),s0=Math.imul(O$,O),s0=s0+Math.imul(c,P$)|0,I=Math.imul(c,O),v=v+Math.imul(p,e)|0,s0=s0+Math.imul(p,M$)|0,s0=s0+Math.imul(I$,e)|0,I=I+Math.imul(I$,M$)|0,v=v+Math.imul(X$,S$)|0,s0=s0+Math.imul(X$,F)|0,s0=s0+Math.imul(w,S$)|0,I=I+Math.imul(w,F)|0;var w$=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(w$>>>26)|0,w$&=67108863,v=Math.imul(O$,e),s0=Math.imul(O$,M$),s0=s0+Math.imul(c,e)|0,I=Math.imul(c,M$),v=v+Math.imul(p,S$)|0,s0=s0+Math.imul(p,F)|0,s0=s0+Math.imul(I$,S$)|0,I=I+Math.imul(I$,F)|0;var G0=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(G0>>>26)|0,G0&=67108863,v=Math.imul(O$,S$),s0=Math.imul(O$,F),s0=s0+Math.imul(c,S$)|0,I=Math.imul(c,F);var p$=(n0+v|0)+((s0&8191)<<13)|0;return n0=(I+(s0>>>13)|0)+(p$>>>26)|0,p$&=67108863,S[0]=v$,S[1]=r,S[2]=q$,S[3]=i,S[4]=j$,S[5]=k$,S[6]=g$,S[7]=_$,S[8]=N$,S[9]=$0,S[10]=x$,S[11]=Q0,S[12]=B$,S[13]=Y0,S[14]=y$,S[15]=Z0,S[16]=w$,S[17]=G0,S[18]=p$,n0!==0&&(S[19]=n0,o0.length++),o0};Math.imul||(p0=E);function T(l0,z,o0){o0.negative=z.negative^l0.negative,o0.length=l0.length+z.length;for(var M=0,u0=0,S=0;S<o0.length-1;S++){var n0=u0;u0=0;for(var v=M&67108863,s0=Math.min(S,z.length-1),I=Math.max(0,S-l0.length+1);I<=s0;I++){var t0=S-I,m0=l0.words[t0]|0,a0=z.words[I]|0,q=m0*a0,e0=q&67108863;n0=n0+(q/67108864|0)|0,e0=e0+v|0,v=e0&67108863,n0=n0+(e0>>>26)|0,u0+=n0>>>26,n0&=67108863}o0.words[S]=v,M=n0,n0=u0}return M!==0?o0.words[S]=M:o0.length--,o0.strip()}function f0(l0,z,o0){var M=new D;return M.mulp(l0,z,o0)}Z.prototype.mulTo=function(l0,z){var o0,M=this.length+l0.length;return this.length===10&&l0.length===10?o0=p0(this,l0,z):M<63?o0=E(this,l0,z):M<1024?o0=T(this,l0,z):o0=f0(this,l0,z),o0};function D(l0,z){this.x=l0,this.y=z}D.prototype.makeRBT=function(l0){for(var z=new Array(l0),o0=Z.prototype._countBits(l0)-1,M=0;M<l0;M++)z[M]=this.revBin(M,o0,l0);return z},D.prototype.revBin=function(l0,z,o0){if(l0===0||l0===o0-1)return l0;for(var M=0,u0=0;u0<z;u0++)M|=(l0&1)<<z-u0-1,l0>>=1;return M},D.prototype.permute=function(l0,z,o0,M,u0,S){for(var n0=0;n0<S;n0++)M[n0]=z[l0[n0]],u0[n0]=o0[l0[n0]]},D.prototype.transform=function(l0,z,o0,M,u0,S){this.permute(S,l0,z,o0,M,u0);for(var n0=1;n0<u0;n0<<=1)for(var v=n0<<1,s0=Math.cos(2*Math.PI/v),I=Math.sin(2*Math.PI/v),t0=0;t0<u0;t0+=v)for(var m0=s0,a0=I,q=0;q<n0;q++){var e0=o0[t0+q],r0=M[t0+q],i0=o0[t0+q+n0],j=M[t0+q+n0],$$=m0*i0-a0*j;j=m0*j+a0*i0,i0=$$,o0[t0+q]=e0+i0,M[t0+q]=r0+j,o0[t0+q+n0]=e0-i0,M[t0+q+n0]=r0-j,q!==v&&($$=s0*m0-I*a0,a0=s0*a0+I*m0,m0=$$)}},D.prototype.guessLen13b=function(l0,z){var o0=Math.max(z,l0)|1,M=o0&1,u0=0;for(o0=o0/2|0;o0;o0=o0>>>1)u0++;return 1<<u0+1+M},D.prototype.conjugate=function(l0,z,o0){if(!(o0<=1))for(var M=0;M<o0/2;M++){var u0=l0[M];l0[M]=l0[o0-M-1],l0[o0-M-1]=u0,u0=z[M],z[M]=-z[o0-M-1],z[o0-M-1]=-u0}},D.prototype.normalize13b=function(l0,z){for(var o0=0,M=0;M<z/2;M++){var u0=Math.round(l0[2*M+1]/z)*8192+Math.round(l0[2*M]/z)+o0;l0[M]=u0&67108863,u0<67108864?o0=0:o0=u0/67108864|0}return l0},D.prototype.convert13b=function(l0,z,o0,M){for(var u0=0,S=0;S<z;S++)u0=u0+(l0[S]|0),o0[2*S]=u0&8191,u0=u0>>>13,o0[2*S+1]=u0&8191,u0=u0>>>13;for(S=2*z;S<M;++S)o0[S]=0;Y(u0===0),Y((u0&-8192)===0)},D.prototype.stub=function(l0){for(var z=new Array(l0),o0=0;o0<l0;o0++)z[o0]=0;return z},D.prototype.mulp=function(l0,z,o0){var M=2*this.guessLen13b(l0.length,z.length),u0=this.makeRBT(M),S=this.stub(M),n0=new Array(M),v=new Array(M),s0=new Array(M),I=new Array(M),t0=new Array(M),m0=new Array(M),a0=o0.words;a0.length=M,this.convert13b(l0.words,l0.length,n0,M),this.convert13b(z.words,z.length,I,M),this.transform(n0,S,v,s0,M,u0),this.transform(I,S,t0,m0,M,u0);for(var q=0;q<M;q++){var e0=v[q]*t0[q]-s0[q]*m0[q];s0[q]=v[q]*m0[q]+s0[q]*t0[q],v[q]=e0}return this.conjugate(v,s0,M),this.transform(v,s0,a0,S,M,u0),this.conjugate(a0,S,M),this.normalize13b(a0,M),o0.negative=l0.negative^z.negative,o0.length=l0.length+z.length,o0.strip()},Z.prototype.mul=function(l0){var z=new Z(null);return z.words=new Array(this.length+l0.length),this.mulTo(l0,z)},Z.prototype.mulf=function(l0){var z=new Z(null);return z.words=new Array(this.length+l0.length),f0(this,l0,z)},Z.prototype.imul=function(l0){return this.clone().mulTo(l0,this)},Z.prototype.imuln=function(l0){Y(typeof l0=="number"),Y(l0<67108864);for(var z=0,o0=0;o0<this.length;o0++){var M=(this.words[o0]|0)*l0,u0=(M&67108863)+(z&67108863);z>>=26,z+=M/67108864|0,z+=u0>>>26,this.words[o0]=u0&67108863}return z!==0&&(this.words[o0]=z,this.length++),this},Z.prototype.muln=function(l0){return this.clone().imuln(l0)},Z.prototype.sqr=function(){return this.mul(this)},Z.prototype.isqr=function(){return this.imul(this.clone())},Z.prototype.pow=function(l0){var z=w0(l0);if(z.length===0)return new Z(1);for(var o0=this,M=0;M<z.length&&z[M]===0;M++,o0=o0.sqr());if(++M<z.length)for(var u0=o0.sqr();M<z.length;M++,u0=u0.sqr())z[M]!==0&&(o0=o0.mul(u0));return o0},Z.prototype.iushln=function(l0){Y(typeof l0=="number"&&l0>=0);var z=l0%26,o0=(l0-z)/26,M=67108863>>>26-z<<26-z,u0;if(z!==0){var S=0;for(u0=0;u0<this.length;u0++){var n0=this.words[u0]&M,v=(this.words[u0]|0)-n0<<z;this.words[u0]=v|S,S=n0>>>26-z}S&&(this.words[u0]=S,this.length++)}if(o0!==0){for(u0=this.length-1;u0>=0;u0--)this.words[u0+o0]=this.words[u0];for(u0=0;u0<o0;u0++)this.words[u0]=0;this.length+=o0}return this.strip()},Z.prototype.ishln=function(l0){return Y(this.negative===0),this.iushln(l0)},Z.prototype.iushrn=function(l0,z,o0){Y(typeof l0=="number"&&l0>=0);var M;z?M=(z-z%26)/26:M=0;var u0=l0%26,S=Math.min((l0-u0)/26,this.length),n0=67108863^67108863>>>u0<<u0,v=o0;if(M-=S,M=Math.max(0,M),v){for(var s0=0;s0<S;s0++)v.words[s0]=this.words[s0];v.length=S}if(S!==0)if(this.length>S)for(this.length-=S,s0=0;s0<this.length;s0++)this.words[s0]=this.words[s0+S];else this.words[0]=0,this.length=1;var I=0;for(s0=this.length-1;s0>=0&&(I!==0||s0>=M);s0--){var t0=this.words[s0]|0;this.words[s0]=I<<26-u0|t0>>>u0,I=t0&n0}return v&&I!==0&&(v.words[v.length++]=I),this.length===0&&(this.words[0]=0,this.length=1),this.strip()},Z.prototype.ishrn=function(l0,z,o0){return Y(this.negative===0),this.iushrn(l0,z,o0)},Z.prototype.shln=function(l0){return this.clone().ishln(l0)},Z.prototype.ushln=function(l0){return this.clone().iushln(l0)},Z.prototype.shrn=function(l0){return this.clone().ishrn(l0)},Z.prototype.ushrn=function(l0){return this.clone().iushrn(l0)},Z.prototype.testn=function(l0){Y(typeof l0=="number"&&l0>=0);var z=l0%26,o0=(l0-z)/26,M=1<<z;if(this.length<=o0)return!1;var u0=this.words[o0];return!!(u0&M)},Z.prototype.imaskn=function(l0){Y(typeof l0=="number"&&l0>=0);var z=l0%26,o0=(l0-z)/26;if(Y(this.negative===0,"imaskn works only with positive numbers"),this.length<=o0)return this;if(z!==0&&o0++,this.length=Math.min(o0,this.length),z!==0){var M=67108863^67108863>>>z<<z;this.words[this.length-1]&=M}return this.strip()},Z.prototype.maskn=function(l0){return this.clone().imaskn(l0)},Z.prototype.iaddn=function(l0){return Y(typeof l0=="number"),Y(l0<67108864),l0<0?this.isubn(-l0):this.negative!==0?this.length===1&&(this.words[0]|0)<l0?(this.words[0]=l0-(this.words[0]|0),this.negative=0,this):(this.negative=0,this.isubn(l0),this.negative=1,this):this._iaddn(l0)},Z.prototype._iaddn=function(l0){this.words[0]+=l0;for(var z=0;z<this.length&&this.words[z]>=67108864;z++)this.words[z]-=67108864,z===this.length-1?this.words[z+1]=1:this.words[z+1]++;return this.length=Math.max(this.length,z+1),this},Z.prototype.isubn=function(l0){if(Y(typeof l0=="number"),Y(l0<67108864),l0<0)return this.iaddn(-l0);if(this.negative!==0)return this.negative=0,this.iaddn(l0),this.negative=1,this;if(this.words[0]-=l0,this.length===1&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var z=0;z<this.length&&this.words[z]<0;z++)this.words[z]+=67108864,this.words[z+1]-=1;return this.strip()},Z.prototype.addn=function(l0){return this.clone().iaddn(l0)},Z.prototype.subn=function(l0){return this.clone().isubn(l0)},Z.prototype.iabs=function(){return this.negative=0,this},Z.prototype.abs=function(){return this.clone().iabs()},Z.prototype._ishlnsubmul=function(l0,z,o0){var M=l0.length+o0,u0;this._expand(M);var S,n0=0;for(u0=0;u0<l0.length;u0++){S=(this.words[u0+o0]|0)+n0;var v=(l0.words[u0]|0)*z;S-=v&67108863,n0=(S>>26)-(v/67108864|0),this.words[u0+o0]=S&67108863}for(;u0<this.length-o0;u0++)S=(this.words[u0+o0]|0)+n0,n0=S>>26,this.words[u0+o0]=S&67108863;if(n0===0)return this.strip();for(Y(n0===-1),n0=0,u0=0;u0<this.length;u0++)S=-(this.words[u0]|0)+n0,n0=S>>26,this.words[u0]=S&67108863;return this.negative=1,this.strip()},Z.prototype._wordDiv=function(l0,z){var o0=this.length-l0.length,M=this.clone(),u0=l0,S=u0.words[u0.length-1]|0,n0=this._countBits(S);o0=26-n0,o0!==0&&(u0=u0.ushln(o0),M.iushln(o0),S=u0.words[u0.length-1]|0);var v=M.length-u0.length,s0;if(z!=="mod"){s0=new Z(null),s0.length=v+1,s0.words=new Array(s0.length);for(var I=0;I<s0.length;I++)s0.words[I]=0}var t0=M.clone()._ishlnsubmul(u0,1,v);t0.negative===0&&(M=t0,s0&&(s0.words[v]=1));for(var m0=v-1;m0>=0;m0--){var a0=(M.words[u0.length+m0]|0)*67108864+(M.words[u0.length+m0-1]|0);for(a0=Math.min(a0/S|0,67108863),M._ishlnsubmul(u0,a0,m0);M.negative!==0;)a0--,M.negative=0,M._ishlnsubmul(u0,1,m0),M.isZero()||(M.negative^=1);s0&&(s0.words[m0]=a0)}return s0&&s0.strip(),M.strip(),z!=="div"&&o0!==0&&M.iushrn(o0),{div:s0||null,mod:M}},Z.prototype.divmod=function(l0,z,o0){if(Y(!l0.isZero()),this.isZero())return{div:new Z(0),mod:new Z(0)};var M,u0,S;return this.negative!==0&&l0.negative===0?(S=this.neg().divmod(l0,z),z!=="mod"&&(M=S.div.neg()),z!=="div"&&(u0=S.mod.neg(),o0&&u0.negative!==0&&u0.iadd(l0)),{div:M,mod:u0}):this.negative===0&&l0.negative!==0?(S=this.divmod(l0.neg(),z),z!=="mod"&&(M=S.div.neg()),{div:M,mod:S.mod}):(this.negative&l0.negative)!==0?(S=this.neg().divmod(l0.neg(),z),z!=="div"&&(u0=S.mod.neg(),o0&&u0.negative!==0&&u0.isub(l0)),{div:S.div,mod:u0}):l0.length>this.length||this.cmp(l0)<0?{div:new Z(0),mod:this}:l0.length===1?z==="div"?{div:this.divn(l0.words[0]),mod:null}:z==="mod"?{div:null,mod:new Z(this.modn(l0.words[0]))}:{div:this.divn(l0.words[0]),mod:new Z(this.modn(l0.words[0]))}:this._wordDiv(l0,z)},Z.prototype.div=function(l0){return this.divmod(l0,"div",!1).div},Z.prototype.mod=function(l0){return this.divmod(l0,"mod",!1).mod},Z.prototype.umod=function(l0){return this.divmod(l0,"mod",!0).mod},Z.prototype.divRound=function(l0){var z=this.divmod(l0);if(z.mod.isZero())return z.div;var o0=z.div.negative!==0?z.mod.isub(l0):z.mod,M=l0.ushrn(1),u0=l0.andln(1),S=o0.cmp(M);return S<0||u0===1&&S===0?z.div:z.div.negative!==0?z.div.isubn(1):z.div.iaddn(1)},Z.prototype.modn=function(l0){Y(l0<=67108863);for(var z=(1<<26)%l0,o0=0,M=this.length-1;M>=0;M--)o0=(z*o0+(this.words[M]|0))%l0;return o0},Z.prototype.idivn=function(l0){Y(l0<=67108863);for(var z=0,o0=this.length-1;o0>=0;o0--){var M=(this.words[o0]|0)+z*67108864;this.words[o0]=M/l0|0,z=M%l0}return this.strip()},Z.prototype.divn=function(l0){return this.clone().idivn(l0)},Z.prototype.egcd=function(l0){Y(l0.negative===0),Y(!l0.isZero());var z=this,o0=l0.clone();z.negative!==0?z=z.umod(l0):z=z.clone();for(var M=new Z(1),u0=new Z(0),S=new Z(0),n0=new Z(1),v=0;z.isEven()&&o0.isEven();)z.iushrn(1),o0.iushrn(1),++v;for(var s0=o0.clone(),I=z.clone();!z.isZero();){for(var t0=0,m0=1;(z.words[0]&m0)===0&&t0<26;++t0,m0<<=1);if(t0>0)for(z.iushrn(t0);t0-- >0;)(M.isOdd()||u0.isOdd())&&(M.iadd(s0),u0.isub(I)),M.iushrn(1),u0.iushrn(1);for(var a0=0,q=1;(o0.words[0]&q)===0&&a0<26;++a0,q<<=1);if(a0>0)for(o0.iushrn(a0);a0-- >0;)(S.isOdd()||n0.isOdd())&&(S.iadd(s0),n0.isub(I)),S.iushrn(1),n0.iushrn(1);z.cmp(o0)>=0?(z.isub(o0),M.isub(S),u0.isub(n0)):(o0.isub(z),S.isub(M),n0.isub(u0))}return{a:S,b:n0,gcd:o0.iushln(v)}},Z.prototype._invmp=function(l0){Y(l0.negative===0),Y(!l0.isZero());var z=this,o0=l0.clone();z.negative!==0?z=z.umod(l0):z=z.clone();for(var M=new Z(1),u0=new Z(0),S=o0.clone();z.cmpn(1)>0&&o0.cmpn(1)>0;){for(var n0=0,v=1;(z.words[0]&v)===0&&n0<26;++n0,v<<=1);if(n0>0)for(z.iushrn(n0);n0-- >0;)M.isOdd()&&M.iadd(S),M.iushrn(1);for(var s0=0,I=1;(o0.words[0]&I)===0&&s0<26;++s0,I<<=1);if(s0>0)for(o0.iushrn(s0);s0-- >0;)u0.isOdd()&&u0.iadd(S),u0.iushrn(1);z.cmp(o0)>=0?(z.isub(o0),M.isub(u0)):(o0.isub(z),u0.isub(M))}var t0;return z.cmpn(1)===0?t0=M:t0=u0,t0.cmpn(0)<0&&t0.iadd(l0),t0},Z.prototype.gcd=function(l0){if(this.isZero())return l0.abs();if(l0.isZero())return this.abs();var z=this.clone(),o0=l0.clone();z.negative=0,o0.negative=0;for(var M=0;z.isEven()&&o0.isEven();M++)z.iushrn(1),o0.iushrn(1);do{for(;z.isEven();)z.iushrn(1);for(;o0.isEven();)o0.iushrn(1);var u0=z.cmp(o0);if(u0<0){var S=z;z=o0,o0=S}else if(u0===0||o0.cmpn(1)===0)break;z.isub(o0)}while(!0);return o0.iushln(M)},Z.prototype.invm=function(l0){return this.egcd(l0).a.umod(l0)},Z.prototype.isEven=function(){return(this.words[0]&1)===0},Z.prototype.isOdd=function(){return(this.words[0]&1)===1},Z.prototype.andln=function(l0){return this.words[0]&l0},Z.prototype.bincn=function(l0){Y(typeof l0=="number");var z=l0%26,o0=(l0-z)/26,M=1<<z;if(this.length<=o0)return this._expand(o0+1),this.words[o0]|=M,this;for(var u0=M,S=o0;u0!==0&&S<this.length;S++){var n0=this.words[S]|0;n0+=u0,u0=n0>>>26,n0&=67108863,this.words[S]=n0}return u0!==0&&(this.words[S]=u0,this.length++),this},Z.prototype.isZero=function(){return this.length===1&&this.words[0]===0},Z.prototype.cmpn=function(l0){var z=l0<0;if(this.negative!==0&&!z)return-1;if(this.negative===0&&z)return 1;this.strip();var o0;if(this.length>1)o0=1;else{z&&(l0=-l0),Y(l0<=67108863,"Number is too big");var M=this.words[0]|0;o0=M===l0?0:M<l0?-1:1}return this.negative!==0?-o0|0:o0},Z.prototype.cmp=function(l0){if(this.negative!==0&&l0.negative===0)return-1;if(this.negative===0&&l0.negative!==0)return 1;var z=this.ucmp(l0);return this.negative!==0?-z|0:z},Z.prototype.ucmp=function(l0){if(this.length>l0.length)return 1;if(this.length<l0.length)return-1;for(var z=0,o0=this.length-1;o0>=0;o0--){var M=this.words[o0]|0,u0=l0.words[o0]|0;if(M!==u0){M<u0?z=-1:M>u0&&(z=1);break}}return z},Z.prototype.gtn=function(l0){return this.cmpn(l0)===1},Z.prototype.gt=function(l0){return this.cmp(l0)===1},Z.prototype.gten=function(l0){return this.cmpn(l0)>=0},Z.prototype.gte=function(l0){return this.cmp(l0)>=0},Z.prototype.ltn=function(l0){return this.cmpn(l0)===-1},Z.prototype.lt=function(l0){return this.cmp(l0)===-1},Z.prototype.lten=function(l0){return this.cmpn(l0)<=0},Z.prototype.lte=function(l0){return this.cmp(l0)<=0},Z.prototype.eqn=function(l0){return this.cmpn(l0)===0},Z.prototype.eq=function(l0){return this.cmp(l0)===0},Z.red=function(l0){return new b0(l0)},Z.prototype.toRed=function(l0){return Y(!this.red,"Already a number in reduction context"),Y(this.negative===0,"red works only with positives"),l0.convertTo(this)._forceRed(l0)},Z.prototype.fromRed=function(){return Y(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},Z.prototype._forceRed=function(l0){return this.red=l0,this},Z.prototype.forceRed=function(l0){return Y(!this.red,"Already a number in reduction context"),this._forceRed(l0)},Z.prototype.redAdd=function(l0){return Y(this.red,"redAdd works only with red numbers"),this.red.add(this,l0)},Z.prototype.redIAdd=function(l0){return Y(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,l0)},Z.prototype.redSub=function(l0){return Y(this.red,"redSub works only with red numbers"),this.red.sub(this,l0)},Z.prototype.redISub=function(l0){return Y(this.red,"redISub works only with red numbers"),this.red.isub(this,l0)},Z.prototype.redShl=function(l0){return Y(this.red,"redShl works only with red numbers"),this.red.shl(this,l0)},Z.prototype.redMul=function(l0){return Y(this.red,"redMul works only with red numbers"),this.red._verify2(this,l0),this.red.mul(this,l0)},Z.prototype.redIMul=function(l0){return Y(this.red,"redMul works only with red numbers"),this.red._verify2(this,l0),this.red.imul(this,l0)},Z.prototype.redSqr=function(){return Y(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},Z.prototype.redISqr=function(){return Y(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},Z.prototype.redSqrt=function(){return Y(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},Z.prototype.redInvm=function(){return Y(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},Z.prototype.redNeg=function(){return Y(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},Z.prototype.redPow=function(l0){return Y(this.red&&!l0.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,l0)};var c0={k256:null,p224:null,p192:null,p25519:null};function C(l0,z){this.name=l0,this.p=new Z(z,16),this.n=this.p.bitLength(),this.k=new Z(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}C.prototype._tmp=function(){var l0=new Z(null);return l0.words=new Array(Math.ceil(this.n/13)),l0},C.prototype.ireduce=function(l0){var z=l0,o0;do this.split(z,this.tmp),z=this.imulK(z),z=z.iadd(this.tmp),o0=z.bitLength();while(o0>this.n);var M=o0<this.n?-1:z.ucmp(this.p);return M===0?(z.words[0]=0,z.length=1):M>0?z.isub(this.p):z.strip!==void 0?z.strip():z._strip(),z},C.prototype.split=function(l0,z){l0.iushrn(this.n,0,z)},C.prototype.imulK=function(l0){return l0.imul(this.k)};function h0(){C.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}$(h0,C),h0.prototype.split=function(l0,z){for(var o0=4194303,M=Math.min(l0.length,9),u0=0;u0<M;u0++)z.words[u0]=l0.words[u0];if(z.length=M,l0.length<=9){l0.words[0]=0,l0.length=1;return}var S=l0.words[9];for(z.words[z.length++]=S&o0,u0=10;u0<l0.length;u0++){var n0=l0.words[u0]|0;l0.words[u0-10]=(n0&o0)<<4|S>>>22,S=n0}S>>>=22,l0.words[u0-10]=S,S===0&&l0.length>10?l0.length-=10:l0.length-=9},h0.prototype.imulK=function(l0){l0.words[l0.length]=0,l0.words[l0.length+1]=0,l0.length+=2;for(var z=0,o0=0;o0<l0.length;o0++){var M=l0.words[o0]|0;z+=M*977,l0.words[o0]=z&67108863,z=M*64+(z/67108864|0)}return l0.words[l0.length-1]===0&&(l0.length--,l0.words[l0.length-1]===0&&l0.length--),l0};function L(){C.call(this,"p224","ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001")}$(L,C);function d0(){C.call(this,"p192","ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff")}$(d0,C);function R(){C.call(this,"25519","7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed")}$(R,C),R.prototype.imulK=function(l0){for(var z=0,o0=0;o0<l0.length;o0++){var M=(l0.words[o0]|0)*19+z,u0=M&67108863;M>>>=26,l0.words[o0]=u0,z=M}return z!==0&&(l0.words[l0.length++]=z),l0},Z._prime=function(l0){if(c0[l0])return c0[l0];var z;if(l0==="k256")z=new h0;else if(l0==="p224")z=new L;else if(l0==="p192")z=new d0;else if(l0==="p25519")z=new R;else throw new Error("Unknown prime "+l0);return c0[l0]=z,z};function b0(l0){if(typeof l0=="string"){var z=Z._prime(l0);this.m=z.p,this.prime=z}else Y(l0.gtn(1),"modulus must be greater than 1"),this.m=l0,this.prime=null}b0.prototype._verify1=function(l0){Y(l0.negative===0,"red works only with positives"),Y(l0.red,"red works only with red numbers")},b0.prototype._verify2=function(l0,z){Y((l0.negative|z.negative)===0,"red works only with positives"),Y(l0.red&&l0.red===z.red,"red works only with red numbers")},b0.prototype.imod=function(l0){return this.prime?this.prime.ireduce(l0)._forceRed(this):l0.umod(this.m)._forceRed(this)},b0.prototype.neg=function(l0){return l0.isZero()?l0.clone():this.m.sub(l0)._forceRed(this)},b0.prototype.add=function(l0,z){this._verify2(l0,z);var o0=l0.add(z);return o0.cmp(this.m)>=0&&o0.isub(this.m),o0._forceRed(this)},b0.prototype.iadd=function(l0,z){this._verify2(l0,z);var o0=l0.iadd(z);return o0.cmp(this.m)>=0&&o0.isub(this.m),o0},b0.prototype.sub=function(l0,z){this._verify2(l0,z);var o0=l0.sub(z);return o0.cmpn(0)<0&&o0.iadd(this.m),o0._forceRed(this)},b0.prototype.isub=function(l0,z){this._verify2(l0,z);var o0=l0.isub(z);return o0.cmpn(0)<0&&o0.iadd(this.m),o0},b0.prototype.shl=function(l0,z){return this._verify1(l0),this.imod(l0.ushln(z))},b0.prototype.imul=function(l0,z){return this._verify2(l0,z),this.imod(l0.imul(z))},b0.prototype.mul=function(l0,z){return this._verify2(l0,z),this.imod(l0.mul(z))},b0.prototype.isqr=function(l0){return this.imul(l0,l0.clone())},b0.prototype.sqr=function(l0){return this.mul(l0,l0)},b0.prototype.sqrt=function(l0){if(l0.isZero())return l0.clone();var z=this.m.andln(3);if(Y(z%2===1),z===3){var o0=this.m.add(new Z(1)).iushrn(2);return this.pow(l0,o0)}for(var M=this.m.subn(1),u0=0;!M.isZero()&&M.andln(1)===0;)u0++,M.iushrn(1);Y(!M.isZero());var S=new Z(1).toRed(this),n0=S.redNeg(),v=this.m.subn(1).iushrn(1),s0=this.m.bitLength();for(s0=new Z(2*s0*s0).toRed(this);this.pow(s0,v).cmp(n0)!==0;)s0.redIAdd(n0);for(var I=this.pow(s0,M),t0=this.pow(l0,M.addn(1).iushrn(1)),m0=this.pow(l0,M),a0=u0;m0.cmp(S)!==0;){for(var q=m0,e0=0;q.cmp(S)!==0;e0++)q=q.redSqr();Y(e0<a0);var r0=this.pow(I,new Z(1).iushln(a0-e0-1));t0=t0.redMul(r0),I=r0.redSqr(),m0=m0.redMul(I),a0=e0}return t0},b0.prototype.invm=function(l0){var z=l0._invmp(this.m);return z.negative!==0?(z.negative=0,this.imod(z).redNeg()):this.imod(z)},b0.prototype.pow=function(l0,z){if(z.isZero())return new Z(1).toRed(this);if(z.cmpn(1)===0)return l0.clone();var o0=4,M=new Array(1<<o0);M[0]=new Z(1).toRed(this),M[1]=l0;for(var u0=2;u0<M.length;u0++)M[u0]=this.mul(M[u0-1],l0);var S=M[0],n0=0,v=0,s0=z.bitLength()%26;for(s0===0&&(s0=26),u0=z.length-1;u0>=0;u0--){for(var I=z.words[u0],t0=s0-1;t0>=0;t0--){var m0=I>>t0&1;if(S!==M[0]&&(S=this.sqr(S)),m0===0&&n0===0){v=0;continue}n0<<=1,n0|=m0,v++,!(v!==o0&&(u0!==0||t0!==0))&&(S=this.mul(S,M[n0]),v=0,n0=0)}s0=26}return S},b0.prototype.convertTo=function(l0){var z=l0.umod(this.m);return z===l0?z.clone():z},b0.prototype.convertFrom=function(l0){var z=l0.clone();return z.red=null,z},Z.mont=function(l0){return new P(l0)};function P(l0){b0.call(this,l0),this.shift=this.m.bitLength(),this.shift%26!==0&&(this.shift+=26-this.shift%26),this.r=new Z(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)}$(P,b0),P.prototype.convertTo=function(l0){return this.imod(l0.ushln(this.shift))},P.prototype.convertFrom=function(l0){var z=this.imod(l0.mul(this.rinv));return z.red=null,z},P.prototype.imul=function(l0,z){if(l0.isZero()||z.isZero())return l0.words[0]=0,l0.length=1,l0;var o0=l0.imul(z),M=o0.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),u0=o0.isub(M).iushrn(this.shift),S=u0;return u0.cmp(this.m)>=0?S=u0.isub(this.m):u0.cmpn(0)<0&&(S=u0.iadd(this.m)),S._forceRed(this)},P.prototype.mul=function(l0,z){if(l0.isZero()||z.isZero())return new Z(0)._forceRed(this);var o0=l0.mul(z),M=o0.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),u0=o0.isub(M).iushrn(this.shift),S=u0;return u0.cmp(this.m)>=0?S=u0.isub(this.m):u0.cmpn(0)<0&&(S=u0.iadd(this.m)),S._forceRed(this)},P.prototype.invm=function(l0){var z=this.imod(l0._invmp(this.m).mul(this.r2));return z._forceRed(this)}})(typeof K>"u"||K,X)}}),CY=$Q({"node_modules/safer-buffer/safer.js"(X,K){var x0=e$,G=c$,Y={},$;for($ in x0)!x0.hasOwnProperty($)||$==="SlowBuffer"||$==="Buffer"||(Y[$]=x0[$]);var Z=Y.Buffer={};for($ in G)!G.hasOwnProperty($)||$==="allocUnsafe"||$==="allocUnsafeSlow"||(Z[$]=G[$]);if(Y.Buffer.prototype=G.prototype,(!Z.from||Z.from===Uint8Array.from)&&(Z.from=function(Q,U,V){if(typeof Q=="number")throw new TypeError('The "value" argument must not be of type number. Received type '+typeof Q);if(Q&&typeof Q.length>"u")throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof Q);return G(Q,U,V)}),Z.alloc||(Z.alloc=function(Q,U,V){if(typeof Q!="number")throw new TypeError('The "size" argument must be of type number. Received type '+typeof Q);if(Q<0||Q>=2*(1<<30))throw new RangeError('The value "'+Q+'" is invalid for option "size"');var B0=G(Q);return!U||U.length===0?B0.fill(0):typeof V=="string"?B0.fill(U,V):B0.fill(U),B0}),!Y.kStringMaxLength)try{Y.kStringMaxLength=r$}catch{}Y.constants||(Y.constants={MAX_LENGTH:Y.kMaxLength},Y.kStringMaxLength&&(Y.constants.MAX_STRING_LENGTH=Y.kStringMaxLength)),K.exports=Y}}),LY=$Q({"node_modules/asn1.js/lib/asn1/base/reporter.js"(X){var K=X0();function x0(Y){this._reporterState={obj:null,path:[],options:Y||{},errors:[]}}X.Reporter=x0,x0.prototype.isError=function(Y){return Y instanceof G},x0.prototype.save=function(){let Y=this._reporterState;return{obj:Y.obj,pathLen:Y.path.length}},x0.prototype.restore=function(Y){let $=this._reporterState;$.obj=Y.obj,$.path=$.path.slice(0,Y.pathLen)},x0.prototype.enterKey=function(Y){return this._reporterState.path.push(Y)},x0.prototype.exitKey=function(Y){let $=this._reporterState;$.path=$.path.slice(0,Y-1)},x0.prototype.leaveKey=function(Y,$,Z){let Q=this._reporterState;this.exitKey(Y),Q.obj!==null&&(Q.obj[$]=Z)},x0.prototype.path=function(){return this._reporterState.path.join("/")},x0.prototype.enterObject=function(){let Y=this._reporterState,$=Y.obj;return Y.obj={},$},x0.prototype.leaveObject=function(Y){let $=this._reporterState,Z=$.obj;return $.obj=Y,Z},x0.prototype.error=function(Y){let $,Z=this._reporterState,Q=Y instanceof G;if(Q?$=Y:$=new G(Z.path.map(function(U){return"["+JSON.stringify(U)+"]"}).join(""),Y.message||Y,Y.stack),!Z.options.partial)throw $;return Q||Z.errors.push($),$},x0.prototype.wrapResult=function(Y){let $=this._reporterState;return $.options.partial?{result:this.isError(Y)?null:Y,errors:$.errors}:Y};function G(Y,$){this.path=Y,this.rethrow($)}K(G,Error),G.prototype.rethrow=function(Y){if(this.message=Y+" at: "+(this.path||"(shallow)"),Error.captureStackTrace&&Error.captureStackTrace(this,G),!this.stack)try{throw new Error(this.message)}catch($){this.stack=$.stack}return this}}}),l$=$Q({"node_modules/asn1.js/lib/asn1/base/buffer.js"(X){var K=X0(),x0=LY().Reporter,G=CY().Buffer;function Y(Z,Q){if(x0.call(this,Q),!G.isBuffer(Z)){this.error("Input not Buffer");return}this.base=Z,this.offset=0,this.length=Z.length}K(Y,x0),X.DecoderBuffer=Y,Y.isDecoderBuffer=function(Z){return Z instanceof Y?!0:typeof Z=="object"&&G.isBuffer(Z.base)&&Z.constructor.name==="DecoderBuffer"&&typeof Z.offset=="number"&&typeof Z.length=="number"&&typeof Z.save=="function"&&typeof Z.restore=="function"&&typeof Z.isEmpty=="function"&&typeof Z.readUInt8=="function"&&typeof Z.skip=="function"&&typeof Z.raw=="function"},Y.prototype.save=function(){return{offset:this.offset,reporter:x0.prototype.save.call(this)}},Y.prototype.restore=function(Z){let Q=new Y(this.base);return Q.offset=Z.offset,Q.length=this.offset,this.offset=Z.offset,x0.prototype.restore.call(this,Z.reporter),Q},Y.prototype.isEmpty=function(){return this.offset===this.length},Y.prototype.readUInt8=function(Z){return this.offset+1<=this.length?this.base.readUInt8(this.offset++,!0):this.error(Z||"DecoderBuffer overrun")},Y.prototype.skip=function(Z,Q){if(!(this.offset+Z<=this.length))return this.error(Q||"DecoderBuffer overrun");let U=new Y(this.base);return U._reporterState=this._reporterState,U.offset=this.offset,U.length=this.offset+Z,this.offset+=Z,U},Y.prototype.raw=function(Z){return this.base.slice(Z?Z.offset:this.offset,this.length)};function $(Z,Q){if(Array.isArray(Z))this.length=0,this.value=Z.map(function(U){return $.isEncoderBuffer(U)||(U=new $(U,Q)),this.length+=U.length,U},this);else if(typeof Z=="number"){if(!(0<=Z&&Z<=255))return Q.error("non-byte EncoderBuffer value");this.value=Z,this.length=1}else if(typeof Z=="string")this.value=Z,this.length=G.byteLength(Z);else if(G.isBuffer(Z))this.value=Z,this.length=Z.length;else return Q.error("Unsupported type: "+typeof Z)}X.EncoderBuffer=$,$.isEncoderBuffer=function(Z){return Z instanceof $?!0:typeof Z=="object"&&Z.constructor.name==="EncoderBuffer"&&typeof Z.length=="number"&&typeof Z.join=="function"},$.prototype.join=function(Z,Q){return Z||(Z=G.alloc(this.length)),Q||(Q=0),this.length===0||(Array.isArray(this.value)?this.value.forEach(function(U){U.join(Z,Q),Q+=U.length}):(typeof this.value=="number"?Z[Q]=this.value:typeof this.value=="string"?Z.write(this.value,Q):G.isBuffer(this.value)&&this.value.copy(Z,Q),Q+=this.length)),Z}}}),RY=$Q({"node_modules/asn1.js/lib/asn1/base/node.js"(X,K){var x0=LY().Reporter,G=l$().EncoderBuffer,Y=l$().DecoderBuffer,$=N0(),Z=["seq","seqof","set","setof","objid","bool","gentime","utctime","null_","enum","int","objDesc","bitstr","bmpstr","charstr","genstr","graphstr","ia5str","iso646str","numstr","octstr","printstr","t61str","unistr","utf8str","videostr"],Q=["key","obj","use","optional","explicit","implicit","def","choice","any","contains"].concat(Z),U=["_peekTag","_decodeTag","_use","_decodeStr","_decodeObjid","_decodeTime","_decodeNull","_decodeInt","_decodeBool","_decodeList","_encodeComposite","_encodeStr","_encodeObjid","_encodeTime","_encodeNull","_encodeInt","_encodeBool"];function V(H,y0,W){let w0={};this._baseState=w0,w0.name=W,w0.enc=H,w0.parent=y0||null,w0.children=null,w0.tag=null,w0.args=null,w0.reverseArgs=null,w0.choice=null,w0.optional=!1,w0.any=!1,w0.obj=!1,w0.use=null,w0.useDecoder=null,w0.key=null,w0.default=null,w0.explicit=null,w0.implicit=null,w0.contains=null,w0.parent||(w0.children=[],this._wrap())}K.exports=V;var B0=["enc","parent","children","tag","args","reverseArgs","choice","optional","any","obj","use","alteredUse","key","default","explicit","implicit","contains"];V.prototype.clone=function(){let H=this._baseState,y0={};B0.forEach(function(w0){y0[w0]=H[w0]});let W=new this.constructor(y0.parent);return W._baseState=y0,W},V.prototype._wrap=function(){let H=this._baseState;Q.forEach(function(y0){this[y0]=function(){let W=new this.constructor(this);return H.children.push(W),W[y0].apply(W,arguments)}},this)},V.prototype._init=function(H){let y0=this._baseState;$(y0.parent===null),H.call(this),y0.children=y0.children.filter(function(W){return W._baseState.parent===this},this),$.equal(y0.children.length,1,"Root node can have only one child")},V.prototype._useArgs=function(H){let y0=this._baseState,W=H.filter(function(w0){return w0 instanceof this.constructor},this);H=H.filter(function(w0){return!(w0 instanceof this.constructor)},this),W.length!==0&&($(y0.children===null),y0.children=W,W.forEach(function(w0){w0._baseState.parent=this},this)),H.length!==0&&($(y0.args===null),y0.args=H,y0.reverseArgs=H.map(function(w0){if(typeof w0!="object"||w0.constructor!==Object)return w0;let E={};return Object.keys(w0).forEach(function(p0){p0==(p0|0)&&(p0|=0);let T=w0[p0];E[T]=p0}),E}))},U.forEach(function(H){V.prototype[H]=function(){let y0=this._baseState;throw new Error(H+" not implemented for encoding: "+y0.enc)}}),Z.forEach(function(H){V.prototype[H]=function(){let y0=this._baseState,W=Array.prototype.slice.call(arguments);return $(y0.tag===null),y0.tag=H,this._useArgs(W),this}}),V.prototype.use=function(H){$(H);let y0=this._baseState;return $(y0.use===null),y0.use=H,this},V.prototype.optional=function(){let H=this._baseState;return H.optional=!0,this},V.prototype.def=function(H){let y0=this._baseState;return $(y0.default===null),y0.default=H,y0.optional=!0,this},V.prototype.explicit=function(H){let y0=this._baseState;return $(y0.explicit===null&&y0.implicit===null),y0.explicit=H,this},V.prototype.implicit=function(H){let y0=this._baseState;return $(y0.explicit===null&&y0.implicit===null),y0.implicit=H,this},V.prototype.obj=function(){let H=this._baseState,y0=Array.prototype.slice.call(arguments);return H.obj=!0,y0.length!==0&&this._useArgs(y0),this},V.prototype.key=function(H){let y0=this._baseState;return $(y0.key===null),y0.key=H,this},V.prototype.any=function(){let H=this._baseState;return H.any=!0,this},V.prototype.choice=function(H){let y0=this._baseState;return $(y0.choice===null),y0.choice=H,this._useArgs(Object.keys(H).map(function(W){return H[W]})),this},V.prototype.contains=function(H){let y0=this._baseState;return $(y0.use===null),y0.contains=H,this},V.prototype._decode=function(H,y0){let W=this._baseState;if(W.parent===null)return H.wrapResult(W.children[0]._decode(H,y0));let w0=W.default,E=!0,p0=null;if(W.key!==null&&(p0=H.enterKey(W.key)),W.optional){let f0=null;if(W.explicit!==null?f0=W.explicit:W.implicit!==null?f0=W.implicit:W.tag!==null&&(f0=W.tag),f0===null&&!W.any){let D=H.save();try{W.choice===null?this._decodeGeneric(W.tag,H,y0):this._decodeChoice(H,y0),E=!0}catch{E=!1}H.restore(D)}else if(E=this._peekTag(H,f0,W.any),H.isError(E))return E}let T;if(W.obj&&E&&(T=H.enterObject()),E){if(W.explicit!==null){let D=this._decodeTag(H,W.explicit);if(H.isError(D))return D;H=D}let f0=H.offset;if(W.use===null&&W.choice===null){let D;W.any&&(D=H.save());let c0=this._decodeTag(H,W.implicit!==null?W.implicit:W.tag,W.any);if(H.isError(c0))return c0;W.any?w0=H.raw(D):H=c0}if(y0&&y0.track&&W.tag!==null&&y0.track(H.path(),f0,H.length,"tagged"),y0&&y0.track&&W.tag!==null&&y0.track(H.path(),H.offset,H.length,"content"),W.any||(W.choice===null?w0=this._decodeGeneric(W.tag,H,y0):w0=this._decodeChoice(H,y0)),H.isError(w0))return w0;if(!W.any&&W.choice===null&&W.children!==null&&W.children.forEach(function(D){D._decode(H,y0)}),W.contains&&(W.tag==="octstr"||W.tag==="bitstr")){let D=new Y(w0);w0=this._getUse(W.contains,H._reporterState.obj)._decode(D,y0)}}return W.obj&&E&&(w0=H.leaveObject(T)),W.key!==null&&(w0!==null||E===!0)?H.leaveKey(p0,W.key,w0):p0!==null&&H.exitKey(p0),w0},V.prototype._decodeGeneric=function(H,y0,W){let w0=this._baseState;return H==="seq"||H==="set"?null:H==="seqof"||H==="setof"?this._decodeList(y0,H,w0.args[0],W):/str$/.test(H)?this._decodeStr(y0,H,W):H==="objid"&&w0.args?this._decodeObjid(y0,w0.args[0],w0.args[1],W):H==="objid"?this._decodeObjid(y0,null,null,W):H==="gentime"||H==="utctime"?this._decodeTime(y0,H,W):H==="null_"?this._decodeNull(y0,W):H==="bool"?this._decodeBool(y0,W):H==="objDesc"?this._decodeStr(y0,H,W):H==="int"||H==="enum"?this._decodeInt(y0,w0.args&&w0.args[0],W):w0.use!==null?this._getUse(w0.use,y0._reporterState.obj)._decode(y0,W):y0.error("unknown tag: "+H)},V.prototype._getUse=function(H,y0){let W=this._baseState;return W.useDecoder=this._use(H,y0),$(W.useDecoder._baseState.parent===null),W.useDecoder=W.useDecoder._baseState.children[0],W.implicit!==W.useDecoder._baseState.implicit&&(W.useDecoder=W.useDecoder.clone(),W.useDecoder._baseState.implicit=W.implicit),W.useDecoder},V.prototype._decodeChoice=function(H,y0){let W=this._baseState,w0=null,E=!1;return Object.keys(W.choice).some(function(p0){let T=H.save(),f0=W.choice[p0];try{let D=f0._decode(H,y0);if(H.isError(D))return!1;w0={type:p0,value:D},E=!0}catch{return H.restore(T),!1}return!0},this),E?w0:H.error("Choice not matched")},V.prototype._createEncoderBuffer=function(H){return new G(H,this.reporter)},V.prototype._encode=function(H,y0,W){let w0=this._baseState;if(w0.default!==null&&w0.default===H)return;let E=this._encodeValue(H,y0,W);if(E!==void 0&&!this._skipDefault(E,y0,W))return E},V.prototype._encodeValue=function(H,y0,W){let w0=this._baseState;if(w0.parent===null)return w0.children[0]._encode(H,y0||new x0);let E=null;if(this.reporter=y0,w0.optional&&H===void 0)if(w0.default!==null)H=w0.default;else return;let p0=null,T=!1;if(w0.any)E=this._createEncoderBuffer(H);else if(w0.choice)E=this._encodeChoice(H,y0);else if(w0.contains)p0=this._getUse(w0.contains,W)._encode(H,y0),T=!0;else if(w0.children)p0=w0.children.map(function(f0){if(f0._baseState.tag==="null_")return f0._encode(null,y0,H);if(f0._baseState.key===null)return y0.error("Child should have a key");let D=y0.enterKey(f0._baseState.key);if(typeof H!="object")return y0.error("Child expected, but input is not object");let c0=f0._encode(H[f0._baseState.key],y0,H);return y0.leaveKey(D),c0},this).filter(function(f0){return f0}),p0=this._createEncoderBuffer(p0);else if(w0.tag==="seqof"||w0.tag==="setof"){if(!(w0.args&&w0.args.length===1))return y0.error("Too many args for : "+w0.tag);if(!Array.isArray(H))return y0.error("seqof/setof, but data is not Array");let f0=this.clone();f0._baseState.implicit=null,p0=this._createEncoderBuffer(H.map(function(D){let c0=this._baseState;return this._getUse(c0.args[0],H)._encode(D,y0)},f0))}else w0.use!==null?E=this._getUse(w0.use,W)._encode(H,y0):(p0=this._encodePrimitive(w0.tag,H),T=!0);if(!w0.any&&w0.choice===null){let f0=w0.implicit!==null?w0.implicit:w0.tag,D=w0.implicit===null?"universal":"context";f0===null?w0.use===null&&y0.error("Tag could be omitted only for .use()"):w0.use===null&&(E=this._encodeComposite(f0,T,D,p0))}return w0.explicit!==null&&(E=this._encodeComposite(w0.explicit,!1,"context",E)),E},V.prototype._encodeChoice=function(H,y0){let W=this._baseState,w0=W.choice[H.type];return w0||$(!1,H.type+" not found in "+JSON.stringify(Object.keys(W.choice))),w0._encode(H.value,y0)},V.prototype._encodePrimitive=function(H,y0){let W=this._baseState;if(/str$/.test(H))return this._encodeStr(y0,H);if(H==="objid"&&W.args)return this._encodeObjid(y0,W.reverseArgs[0],W.args[1]);if(H==="objid")return this._encodeObjid(y0,null,null);if(H==="gentime"||H==="utctime")return this._encodeTime(y0,H);if(H==="null_")return this._encodeNull();if(H==="int"||H==="enum")return this._encodeInt(y0,W.args&&W.reverseArgs[0]);if(H==="bool")return this._encodeBool(y0);if(H==="objDesc")return this._encodeStr(y0,H);throw new Error("Unsupported tag: "+H)},V.prototype._isNumstr=function(H){return/^[0-9 ]*$/.test(H)},V.prototype._isPrintstr=function(H){return/^[A-Za-z0-9 '()+,-./:=?]*$/.test(H)}}}),PY=$Q({"node_modules/asn1.js/lib/asn1/constants/der.js"(X){function K(x0){let G={};return Object.keys(x0).forEach(function(Y){(Y|0)==Y&&(Y=Y|0);let $=x0[Y];G[$]=Y}),G}X.tagClass={0:"universal",1:"application",2:"context",3:"private"},X.tagClassByName=K(X.tagClass),X.tag={0:"end",1:"bool",2:"int",3:"bitstr",4:"octstr",5:"null_",6:"objid",7:"objDesc",8:"external",9:"real",10:"enum",11:"embed",12:"utf8str",13:"relativeOid",16:"seq",17:"set",18:"numstr",19:"printstr",20:"t61str",21:"videostr",22:"ia5str",23:"utctime",24:"gentime",25:"graphstr",26:"iso646str",27:"genstr",28:"unistr",29:"charstr",30:"bmpstr"},X.tagByName=K(X.tag)}}),zY=$Q({"node_modules/asn1.js/lib/asn1/encoders/der.js"(X,K){var x0=X0(),G=CY().Buffer,Y=RY(),$=PY();function Z(B0){this.enc="der",this.name=B0.name,this.entity=B0,this.tree=new Q,this.tree._init(B0.body)}K.exports=Z,Z.prototype.encode=function(B0,H){return this.tree._encode(B0,H).join()};function Q(B0){Y.call(this,"der",B0)}x0(Q,Y),Q.prototype._encodeComposite=function(B0,H,y0,W){let w0=V(B0,H,y0,this.reporter);if(W.length<128){let T=G.alloc(2);return T[0]=w0,T[1]=W.length,this._createEncoderBuffer([T,W])}let E=1;for(let T=W.length;T>=256;T>>=8)E++;let p0=G.alloc(2+E);p0[0]=w0,p0[1]=128|E;for(let T=1+E,f0=W.length;f0>0;T--,f0>>=8)p0[T]=f0&255;return this._createEncoderBuffer([p0,W])},Q.prototype._encodeStr=function(B0,H){if(H==="bitstr")return this._createEncoderBuffer([B0.unused|0,B0.data]);if(H==="bmpstr"){let y0=G.alloc(B0.length*2);for(let W=0;W<B0.length;W++)y0.writeUInt16BE(B0.charCodeAt(W),W*2);return this._createEncoderBuffer(y0)}else return H==="numstr"?this._isNumstr(B0)?this._createEncoderBuffer(B0):this.reporter.error("Encoding of string type: numstr supports only digits and space"):H==="printstr"?this._isPrintstr(B0)?this._createEncoderBuffer(B0):this.reporter.error("Encoding of string type: printstr supports only latin upper and lower case letters, digits, space, apostrophe, left and rigth parenthesis, plus sign, comma, hyphen, dot, slash, colon, equal sign, question mark"):/str$/.test(H)?this._createEncoderBuffer(B0):H==="objDesc"?this._createEncoderBuffer(B0):this.reporter.error("Encoding of string type: "+H+" unsupported")},Q.prototype._encodeObjid=function(B0,H,y0){if(typeof B0=="string"){if(!H)return this.reporter.error("string objid given, but no values map found");if(!H.hasOwnProperty(B0))return this.reporter.error("objid not found in values map");B0=H[B0].split(/[\s.]+/g);for(let p0=0;p0<B0.length;p0++)B0[p0]|=0}else if(Array.isArray(B0)){B0=B0.slice();for(let p0=0;p0<B0.length;p0++)B0[p0]|=0}if(!Array.isArray(B0))return this.reporter.error("objid() should be either array or string, got: "+JSON.stringify(B0));if(!y0){if(B0[1]>=40)return this.reporter.error("Second objid identifier OOB");B0.splice(0,2,B0[0]*40+B0[1])}let W=0;for(let p0=0;p0<B0.length;p0++){let T=B0[p0];for(W++;T>=128;T>>=7)W++}let w0=G.alloc(W),E=w0.length-1;for(let p0=B0.length-1;p0>=0;p0--){let T=B0[p0];for(w0[E--]=T&127;(T>>=7)>0;)w0[E--]=128|T&127}return this._createEncoderBuffer(w0)};function U(B0){return B0<10?"0"+B0:B0}Q.prototype._encodeTime=function(B0,H){let y0,W=new Date(B0);return H==="gentime"?y0=[U(W.getUTCFullYear()),U(W.getUTCMonth()+1),U(W.getUTCDate()),U(W.getUTCHours()),U(W.getUTCMinutes()),U(W.getUTCSeconds()),"Z"].join(""):H==="utctime"?y0=[U(W.getUTCFullYear()%100),U(W.getUTCMonth()+1),U(W.getUTCDate()),U(W.getUTCHours()),U(W.getUTCMinutes()),U(W.getUTCSeconds()),"Z"].join(""):this.reporter.error("Encoding "+H+" time is not supported yet"),this._encodeStr(y0,"octstr")},Q.prototype._encodeNull=function(){return this._createEncoderBuffer("")},Q.prototype._encodeInt=function(B0,H){if(typeof B0=="string"){if(!H)return this.reporter.error("String int or enum given, but no values map");if(!H.hasOwnProperty(B0))return this.reporter.error("Values map doesn't contain: "+JSON.stringify(B0));B0=H[B0]}if(typeof B0!="number"&&!G.isBuffer(B0)){let w0=B0.toArray();!B0.sign&&w0[0]&128&&w0.unshift(0),B0=G.from(w0)}if(G.isBuffer(B0)){let w0=B0.length;B0.length===0&&w0++;let E=G.alloc(w0);return B0.copy(E),B0.length===0&&(E[0]=0),this._createEncoderBuffer(E)}if(B0<128)return this._createEncoderBuffer(B0);if(B0<256)return this._createEncoderBuffer([0,B0]);let y0=1;for(let w0=B0;w0>=256;w0>>=8)y0++;let W=new Array(y0);for(let w0=W.length-1;w0>=0;w0--)W[w0]=B0&255,B0>>=8;return W[0]&128&&W.unshift(0),this._createEncoderBuffer(G.from(W))},Q.prototype._encodeBool=function(B0){return this._createEncoderBuffer(B0?255:0)},Q.prototype._use=function(B0,H){return typeof B0=="function"&&(B0=B0(H)),B0._getEncoder("der").tree},Q.prototype._skipDefault=function(B0,H,y0){let W=this._baseState,w0;if(W.default===null)return!1;let E=B0.join();if(W.defaultBuffer===void 0&&(W.defaultBuffer=this._encodeValue(W.default,H,y0).join()),E.length!==W.defaultBuffer.length)return!1;for(w0=0;w0<E.length;w0++)if(E[w0]!==W.defaultBuffer[w0])return!1;return!0};function V(B0,H,y0,W){let w0;if(B0==="seqof"?B0="seq":B0==="setof"&&(B0="set"),$.tagByName.hasOwnProperty(B0))w0=$.tagByName[B0];else if(typeof B0=="number"&&(B0|0)===B0)w0=B0;else return W.error("Unknown tag: "+B0);return w0>=31?W.error("Multi-octet tag encoding unsupported"):(H||(w0|=32),w0|=$.tagClassByName[y0||"universal"]<<6,w0)}}}),MY=$Q({"node_modules/asn1.js/lib/asn1/encoders/pem.js"(X,K){var x0=X0(),G=zY();function Y($){G.call(this,$),this.enc="pem"}x0(Y,G),K.exports=Y,Y.prototype.encode=function($,Z){let Q=G.prototype.encode.call(this,$).toString("base64"),U=["-----BEGIN "+Z.label+"-----"];for(let V=0;V<Q.length;V+=64)U.push(Q.slice(V,V+64));return U.push("-----END "+Z.label+"-----"),U.join(` -`)}}}),SY=$Q({"node_modules/asn1.js/lib/asn1/encoders/index.js"(X){var K=X;K.der=zY(),K.pem=MY()}}),vY=$Q({"node_modules/asn1.js/lib/asn1/decoders/der.js"(X,K){var x0=X0(),G=DY(),Y=l$().DecoderBuffer,$=RY(),Z=PY();function Q(H){this.enc="der",this.name=H.name,this.entity=H,this.tree=new U,this.tree._init(H.body)}K.exports=Q,Q.prototype.decode=function(H,y0){return Y.isDecoderBuffer(H)||(H=new Y(H,y0)),this.tree._decode(H,y0)};function U(H){$.call(this,"der",H)}x0(U,$),U.prototype._peekTag=function(H,y0,W){if(H.isEmpty())return!1;let w0=H.save(),E=V(H,'Failed to peek tag: "'+y0+'"');return H.isError(E)?E:(H.restore(w0),E.tag===y0||E.tagStr===y0||E.tagStr+"of"===y0||W)},U.prototype._decodeTag=function(H,y0,W){let w0=V(H,'Failed to decode tag of "'+y0+'"');if(H.isError(w0))return w0;let E=B0(H,w0.primitive,'Failed to get length of "'+y0+'"');if(H.isError(E))return E;if(!W&&w0.tag!==y0&&w0.tagStr!==y0&&w0.tagStr+"of"!==y0)return H.error('Failed to match tag: "'+y0+'"');if(w0.primitive||E!==null)return H.skip(E,'Failed to match body of: "'+y0+'"');let p0=H.save(),T=this._skipUntilEnd(H,'Failed to skip indefinite length body: "'+this.tag+'"');return H.isError(T)?T:(E=H.offset-p0.offset,H.restore(p0),H.skip(E,'Failed to match body of: "'+y0+'"'))},U.prototype._skipUntilEnd=function(H,y0){for(;;){let W=V(H,y0);if(H.isError(W))return W;let w0=B0(H,W.primitive,y0);if(H.isError(w0))return w0;let E;if(W.primitive||w0!==null?E=H.skip(w0):E=this._skipUntilEnd(H,y0),H.isError(E))return E;if(W.tagStr==="end")break}},U.prototype._decodeList=function(H,y0,W,w0){let E=[];for(;!H.isEmpty();){let p0=this._peekTag(H,"end");if(H.isError(p0))return p0;let T=W.decode(H,"der",w0);if(H.isError(T)&&p0)break;E.push(T)}return E},U.prototype._decodeStr=function(H,y0){if(y0==="bitstr"){let W=H.readUInt8();return H.isError(W)?W:{unused:W,data:H.raw()}}else if(y0==="bmpstr"){let W=H.raw();if(W.length%2===1)return H.error("Decoding of string type: bmpstr length mismatch");let w0="";for(let E=0;E<W.length/2;E++)w0+=String.fromCharCode(W.readUInt16BE(E*2));return w0}else if(y0==="numstr"){let W=H.raw().toString("ascii");return this._isNumstr(W)?W:H.error("Decoding of string type: numstr unsupported characters")}else{if(y0==="octstr")return H.raw();if(y0==="objDesc")return H.raw();if(y0==="printstr"){let W=H.raw().toString("ascii");return this._isPrintstr(W)?W:H.error("Decoding of string type: printstr unsupported characters")}else return/str$/.test(y0)?H.raw().toString():H.error("Decoding of string type: "+y0+" unsupported")}},U.prototype._decodeObjid=function(H,y0,W){let w0,E=[],p0=0,T=0;for(;!H.isEmpty();)T=H.readUInt8(),p0<<=7,p0|=T&127,(T&128)===0&&(E.push(p0),p0=0);T&128&&E.push(p0);let f0=E[0]/40|0,D=E[0]%40;if(W?w0=E:w0=[f0,D].concat(E.slice(1)),y0){let c0=y0[w0.join(" ")];c0===void 0&&(c0=y0[w0.join(".")]),c0!==void 0&&(w0=c0)}return w0},U.prototype._decodeTime=function(H,y0){let W=H.raw().toString(),w0,E,p0,T,f0,D;if(y0==="gentime")w0=W.slice(0,4)|0,E=W.slice(4,6)|0,p0=W.slice(6,8)|0,T=W.slice(8,10)|0,f0=W.slice(10,12)|0,D=W.slice(12,14)|0;else if(y0==="utctime")w0=W.slice(0,2)|0,E=W.slice(2,4)|0,p0=W.slice(4,6)|0,T=W.slice(6,8)|0,f0=W.slice(8,10)|0,D=W.slice(10,12)|0,w0<70?w0=2000+w0:w0=1900+w0;else return H.error("Decoding "+y0+" time is not supported yet");return Date.UTC(w0,E-1,p0,T,f0,D,0)},U.prototype._decodeNull=function(){return null},U.prototype._decodeBool=function(H){let y0=H.readUInt8();return H.isError(y0)?y0:y0!==0},U.prototype._decodeInt=function(H,y0){let W=H.raw(),w0=new G(W);return y0&&(w0=y0[w0.toString(10)]||w0),w0},U.prototype._use=function(H,y0){return typeof H=="function"&&(H=H(y0)),H._getDecoder("der").tree};function V(H,y0){let W=H.readUInt8(y0);if(H.isError(W))return W;let w0=Z.tagClass[W>>6],E=(W&32)===0;if((W&31)===31){let T=W;for(W=0;(T&128)===128;){if(T=H.readUInt8(y0),H.isError(T))return T;W<<=7,W|=T&127}}else W&=31;let p0=Z.tag[W];return{cls:w0,primitive:E,tag:W,tagStr:p0}}function B0(H,y0,W){let w0=H.readUInt8(W);if(H.isError(w0))return w0;if(!y0&&w0===128)return null;if((w0&128)===0)return w0;let E=w0&127;if(E>4)return H.error("length octect is too long");w0=0;for(let p0=0;p0<E;p0++){w0<<=8;let T=H.readUInt8(W);if(H.isError(T))return T;w0|=T}return w0}}}),qY=$Q({"node_modules/asn1.js/lib/asn1/decoders/pem.js"(X,K){var x0=X0(),G=CY().Buffer,Y=vY();function $(Z){Y.call(this,Z),this.enc="pem"}x0($,Y),K.exports=$,$.prototype.decode=function(Z,Q){let U=Z.toString().split(/[\r\n]+/g),V=Q.label.toUpperCase(),B0=/^-----(BEGIN|END) ([^-]+)-----$/,H=-1,y0=-1;for(let E=0;E<U.length;E++){let p0=U[E].match(B0);if(p0!==null&&p0[2]===V)if(H===-1){if(p0[1]!=="BEGIN")break;H=E}else{if(p0[1]!=="END")break;y0=E;break}}if(H===-1||y0===-1)throw new Error("PEM section not found for: "+V);let W=U.slice(H+1,y0).join("");W.replace(/[^a-z0-9+/=]+/gi,"");let w0=G.from(W,"base64");return Y.prototype.decode.call(this,w0,Q)}}}),jY=$Q({"node_modules/asn1.js/lib/asn1/decoders/index.js"(X){var K=X;K.der=vY(),K.pem=qY()}}),kY=$Q({"node_modules/asn1.js/lib/asn1/api.js"(X){var K=SY(),x0=jY(),G=X0(),Y=X;Y.define=function(Z,Q){return new $(Z,Q)};function $(Z,Q){this.name=Z,this.body=Q,this.decoders={},this.encoders={}}$.prototype._createNamed=function(Z){let Q=this.name;function U(V){this._initNamed(V,Q)}return G(U,Z),U.prototype._initNamed=function(V,B0){Z.call(this,V,B0)},new U(this)},$.prototype._getDecoder=function(Z){return Z=Z||"der",this.decoders.hasOwnProperty(Z)||(this.decoders[Z]=this._createNamed(x0[Z])),this.decoders[Z]},$.prototype.decode=function(Z,Q,U){return this._getDecoder(Q).decode(Z,U)},$.prototype._getEncoder=function(Z){return Z=Z||"der",this.encoders.hasOwnProperty(Z)||(this.encoders[Z]=this._createNamed(K[Z])),this.encoders[Z]},$.prototype.encode=function(Z,Q,U){return this._getEncoder(Q).encode(Z,U)}}}),gY=$Q({"node_modules/asn1.js/lib/asn1/base/index.js"(X){var K=X;K.Reporter=LY().Reporter,K.DecoderBuffer=l$().DecoderBuffer,K.EncoderBuffer=l$().EncoderBuffer,K.Node=RY()}}),_Y=$Q({"node_modules/asn1.js/lib/asn1/constants/index.js"(X){var K=X;K._reverse=function(x0){let G={};return Object.keys(x0).forEach(function(Y){(Y|0)==Y&&(Y=Y|0);let $=x0[Y];G[$]=Y}),G},K.der=PY()}}),NY=$Q({"node_modules/asn1.js/lib/asn1.js"(X){var K=X;K.bignum=DY(),K.define=kY().define,K.base=gY(),K.constants=_Y(),K.decoders=jY(),K.encoders=SY()}}),xY=$Q({"node_modules/parse-asn1/certificate.js"(X,K){var x0=NY(),G=x0.define("Time",function(){this.choice({utcTime:this.utctime(),generalTime:this.gentime()})}),Y=x0.define("AttributeTypeValue",function(){this.seq().obj(this.key("type").objid(),this.key("value").any())}),$=x0.define("AlgorithmIdentifier",function(){this.seq().obj(this.key("algorithm").objid(),this.key("parameters").optional(),this.key("curve").objid().optional())}),Z=x0.define("SubjectPublicKeyInfo",function(){this.seq().obj(this.key("algorithm").use($),this.key("subjectPublicKey").bitstr())}),Q=x0.define("RelativeDistinguishedName",function(){this.setof(Y)}),U=x0.define("RDNSequence",function(){this.seqof(Q)}),V=x0.define("Name",function(){this.choice({rdnSequence:this.use(U)})}),B0=x0.define("Validity",function(){this.seq().obj(this.key("notBefore").use(G),this.key("notAfter").use(G))}),H=x0.define("Extension",function(){this.seq().obj(this.key("extnID").objid(),this.key("critical").bool().def(!1),this.key("extnValue").octstr())}),y0=x0.define("TBSCertificate",function(){this.seq().obj(this.key("version").explicit(0).int().optional(),this.key("serialNumber").int(),this.key("signature").use($),this.key("issuer").use(V),this.key("validity").use(B0),this.key("subject").use(V),this.key("subjectPublicKeyInfo").use(Z),this.key("issuerUniqueID").implicit(1).bitstr().optional(),this.key("subjectUniqueID").implicit(2).bitstr().optional(),this.key("extensions").explicit(3).seqof(H).optional())}),W=x0.define("X509Certificate",function(){this.seq().obj(this.key("tbsCertificate").use(y0),this.key("signatureAlgorithm").use($),this.key("signatureValue").bitstr())});K.exports=W}}),BY=$Q({"node_modules/parse-asn1/asn1.js"(X){var K=NY();X.certificate=xY();var x0=K.define("RSAPrivateKey",function(){this.seq().obj(this.key("version").int(),this.key("modulus").int(),this.key("publicExponent").int(),this.key("privateExponent").int(),this.key("prime1").int(),this.key("prime2").int(),this.key("exponent1").int(),this.key("exponent2").int(),this.key("coefficient").int())});X.RSAPrivateKey=x0;var G=K.define("RSAPublicKey",function(){this.seq().obj(this.key("modulus").int(),this.key("publicExponent").int())});X.RSAPublicKey=G;var Y=K.define("SubjectPublicKeyInfo",function(){this.seq().obj(this.key("algorithm").use($),this.key("subjectPublicKey").bitstr())});X.PublicKey=Y;var $=K.define("AlgorithmIdentifier",function(){this.seq().obj(this.key("algorithm").objid(),this.key("none").null_().optional(),this.key("curve").objid().optional(),this.key("params").seq().obj(this.key("p").int(),this.key("q").int(),this.key("g").int()).optional())}),Z=K.define("PrivateKeyInfo",function(){this.seq().obj(this.key("version").int(),this.key("algorithm").use($),this.key("subjectPrivateKey").octstr())});X.PrivateKey=Z;var Q=K.define("EncryptedPrivateKeyInfo",function(){this.seq().obj(this.key("algorithm").seq().obj(this.key("id").objid(),this.key("decrypt").seq().obj(this.key("kde").seq().obj(this.key("id").objid(),this.key("kdeparams").seq().obj(this.key("salt").octstr(),this.key("iters").int())),this.key("cipher").seq().obj(this.key("algo").objid(),this.key("iv").octstr()))),this.key("subjectPrivateKey").octstr())});X.EncryptedPrivateKey=Q;var U=K.define("DSAPrivateKey",function(){this.seq().obj(this.key("version").int(),this.key("p").int(),this.key("q").int(),this.key("g").int(),this.key("pub_key").int(),this.key("priv_key").int())});X.DSAPrivateKey=U,X.DSAparam=K.define("DSAparam",function(){this.int()});var V=K.define("ECPrivateKey",function(){this.seq().obj(this.key("version").int(),this.key("privateKey").octstr(),this.key("parameters").optional().explicit(0).use(B0),this.key("publicKey").optional().explicit(1).bitstr())});X.ECPrivateKey=V;var B0=K.define("ECParameters",function(){this.choice({namedCurve:this.objid()})});X.signature=K.define("signature",function(){this.seq().obj(this.key("r").int(),this.key("s").int())})}}),yY=$Q({"node_modules/parse-asn1/aesid.json"(X,K){K.exports={"2.16.840.1.101.3.4.1.1":"aes-128-ecb","2.16.840.1.101.3.4.1.2":"aes-128-cbc","2.16.840.1.101.3.4.1.3":"aes-128-ofb","2.16.840.1.101.3.4.1.4":"aes-128-cfb","2.16.840.1.101.3.4.1.21":"aes-192-ecb","2.16.840.1.101.3.4.1.22":"aes-192-cbc","2.16.840.1.101.3.4.1.23":"aes-192-ofb","2.16.840.1.101.3.4.1.24":"aes-192-cfb","2.16.840.1.101.3.4.1.41":"aes-256-ecb","2.16.840.1.101.3.4.1.42":"aes-256-cbc","2.16.840.1.101.3.4.1.43":"aes-256-ofb","2.16.840.1.101.3.4.1.44":"aes-256-cfb"}}}),wY=$Q({"node_modules/parse-asn1/fixProc.js"(X,K){var x0=/Proc-Type: 4,ENCRYPTED[\n\r]+DEK-Info: AES-((?:128)|(?:192)|(?:256))-CBC,([0-9A-H]+)[\n\r]+([0-9A-z\n\r+/=]+)[\n\r]+/m,G=/^-----BEGIN ((?:.*? KEY)|CERTIFICATE)-----/m,Y=/^-----BEGIN ((?:.*? KEY)|CERTIFICATE)-----([0-9A-z\n\r+/=]+)-----END \1-----$/m,$=SQ(),Z=jQ(),Q=YQ().Buffer;K.exports=function(U,V){var B0=U.toString(),H=B0.match(x0),y0;if(H){var W="aes"+H[1],w0=Q.from(H[2],"hex"),E=Q.from(H[3].replace(/[\r\n]/g,""),"base64"),p0=$(V,w0.slice(0,8),parseInt(H[1],10)).key,T=[],f0=Z.createDecipheriv(W,p0,w0);T.push(f0.update(E)),T.push(f0.final()),y0=Q.concat(T)}else{var D=B0.match(Y);y0=Q.from(D[2].replace(/[\r\n]/g,""),"base64")}var c0=B0.match(G)[1];return{tag:c0,data:y0}}}}),pY=$Q({"node_modules/parse-asn1/index.js"(X,K){var x0=BY(),G=yY(),Y=wY(),$=jQ(),Z=g0(),Q=YQ().Buffer;K.exports=U;function U(B0){var H;typeof B0=="object"&&!Q.isBuffer(B0)&&(H=B0.passphrase,B0=B0.key),typeof B0=="string"&&(B0=Q.from(B0));var y0=Y(B0,H),W=y0.tag,w0=y0.data,E,p0;switch(W){case"CERTIFICATE":p0=x0.certificate.decode(w0,"der").tbsCertificate.subjectPublicKeyInfo;case"PUBLIC KEY":switch(p0||(p0=x0.PublicKey.decode(w0,"der")),E=p0.algorithm.algorithm.join("."),E){case"1.2.840.113549.1.1.1":return x0.RSAPublicKey.decode(p0.subjectPublicKey.data,"der");case"1.2.840.10045.2.1":return p0.subjectPrivateKey=p0.subjectPublicKey,{type:"ec",data:p0};case"1.2.840.10040.4.1":return p0.algorithm.params.pub_key=x0.DSAparam.decode(p0.subjectPublicKey.data,"der"),{type:"dsa",data:p0.algorithm.params};default:throw new Error("unknown key id "+E)}case"ENCRYPTED PRIVATE KEY":w0=x0.EncryptedPrivateKey.decode(w0,"der"),w0=V(w0,H);case"PRIVATE KEY":switch(p0=x0.PrivateKey.decode(w0,"der"),E=p0.algorithm.algorithm.join("."),E){case"1.2.840.113549.1.1.1":return x0.RSAPrivateKey.decode(p0.subjectPrivateKey,"der");case"1.2.840.10045.2.1":return{curve:p0.algorithm.curve,privateKey:x0.ECPrivateKey.decode(p0.subjectPrivateKey,"der").privateKey};case"1.2.840.10040.4.1":return p0.algorithm.params.priv_key=x0.DSAparam.decode(p0.subjectPrivateKey,"der"),{type:"dsa",params:p0.algorithm.params};default:throw new Error("unknown key id "+E)}case"RSA PUBLIC KEY":return x0.RSAPublicKey.decode(w0,"der");case"RSA PRIVATE KEY":return x0.RSAPrivateKey.decode(w0,"der");case"DSA PRIVATE KEY":return{type:"dsa",params:x0.DSAPrivateKey.decode(w0,"der")};case"EC PRIVATE KEY":return w0=x0.ECPrivateKey.decode(w0,"der"),{curve:w0.parameters.value,privateKey:w0.privateKey};default:throw new Error("unknown key type "+W)}}U.signature=x0.signature;function V(B0,H){var y0=B0.algorithm.decrypt.kde.kdeparams.salt,W=parseInt(B0.algorithm.decrypt.kde.kdeparams.iters.toString(),10),w0=G[B0.algorithm.decrypt.cipher.algo.join(".")],E=B0.algorithm.decrypt.cipher.iv,p0=B0.subjectPrivateKey,T=parseInt(w0.split("-")[1],10)/8,f0=Z.pbkdf2Sync(H,y0,W,T,"sha1"),D=$.createDecipheriv(w0,f0,E),c0=[];return c0.push(D.update(p0)),c0.push(D.final()),Q.concat(c0)}}}),fY=$Q({"node_modules/browserify-sign/browser/curves.json"(X,K){K.exports={"1.3.132.0.10":"secp256k1","1.3.132.0.33":"p224","1.2.840.10045.3.1.1":"p192","1.2.840.10045.3.1.7":"p256","1.3.132.0.34":"p384","1.3.132.0.35":"p521"}}}),cY=$Q({"node_modules/browserify-sign/browser/sign.js"(X,K){var x0=YQ().Buffer,G=z0(),Y=hQ(),$=TY().ec,Z=cQ(),Q=pY(),U=fY();function V(f0,D,c0,C,h0){var L=Q(D);if(L.curve){if(C!=="ecdsa"&&C!=="ecdsa/rsa")throw new Error("wrong private key type");return B0(f0,L)}else if(L.type==="dsa"){if(C!=="dsa")throw new Error("wrong private key type");return H(f0,L,c0)}else if(C!=="rsa"&&C!=="ecdsa/rsa")throw new Error("wrong private key type");f0=x0.concat([h0,f0]);for(var d0=L.modulus.byteLength(),R=[0,1];f0.length+R.length+1<d0;)R.push(255);R.push(0);for(var b0=-1;++b0<f0.length;)R.push(f0[b0]);var P=Y(R,L);return P}function B0(f0,D){var c0=U[D.curve.join(".")];if(!c0)throw new Error("unknown curve "+D.curve.join("."));var C=new $(c0),h0=C.keyFromPrivate(D.privateKey),L=h0.sign(f0);return x0.from(L.toDER())}function H(f0,D,c0){for(var C=D.params.priv_key,h0=D.params.p,L=D.params.q,d0=D.params.g,R=new Z(0),b0,P=w0(f0,L).mod(L),l0=!1,z=W(C,L,f0,c0);l0===!1;)b0=p0(L,z,c0),R=T(d0,b0,h0,L),l0=b0.invm(L).imul(P.add(C.mul(R))).mod(L),l0.cmpn(0)===0&&(l0=!1,R=new Z(0));return y0(R,l0)}function y0(f0,D){f0=f0.toArray(),D=D.toArray(),f0[0]&128&&(f0=[0].concat(f0)),D[0]&128&&(D=[0].concat(D));var c0=f0.length+D.length+4,C=[48,c0,2,f0.length];return C=C.concat(f0,[2,D.length],D),x0.from(C)}function W(f0,D,c0,C){if(f0=x0.from(f0.toArray()),f0.length<D.byteLength()){var h0=x0.alloc(D.byteLength()-f0.length);f0=x0.concat([h0,f0])}var L=c0.length,d0=E(c0,D),R=x0.alloc(L);R.fill(1);var b0=x0.alloc(L);return b0=G(C,b0).update(R).update(x0.from([0])).update(f0).update(d0).digest(),R=G(C,b0).update(R).digest(),b0=G(C,b0).update(R).update(x0.from([1])).update(f0).update(d0).digest(),R=G(C,b0).update(R).digest(),{k:b0,v:R}}function w0(f0,D){var c0=new Z(f0),C=(f0.length<<3)-D.bitLength();return C>0&&c0.ishrn(C),c0}function E(f0,D){f0=w0(f0,D),f0=f0.mod(D);var c0=x0.from(f0.toArray());if(c0.length<D.byteLength()){var C=x0.alloc(D.byteLength()-c0.length);c0=x0.concat([C,c0])}return c0}function p0(f0,D,c0){var C,h0;do{for(C=x0.alloc(0);C.length*8<f0.bitLength();)D.v=G(c0,D.k).update(D.v).digest(),C=x0.concat([C,D.v]);h0=w0(C,f0),D.k=G(c0,D.k).update(D.v).update(x0.from([0])).digest(),D.v=G(c0,D.k).update(D.v).digest()}while(h0.cmp(f0)!==-1);return h0}function T(f0,D,c0,C){return f0.toRed(Z.mont(c0)).redPow(D).fromRed().mod(C)}K.exports=V,K.exports.getKey=W,K.exports.makeKey=p0}}),hY=$Q({"node_modules/browserify-sign/browser/verify.js"(X,K){var x0=YQ().Buffer,G=cQ(),Y=TY().ec,$=pY(),Z=fY();function Q(H,y0,W,w0,E){var p0=$(W);if(p0.type==="ec"){if(w0!=="ecdsa"&&w0!=="ecdsa/rsa")throw new Error("wrong public key type");return U(H,y0,p0)}else if(p0.type==="dsa"){if(w0!=="dsa")throw new Error("wrong public key type");return V(H,y0,p0)}else if(w0!=="rsa"&&w0!=="ecdsa/rsa")throw new Error("wrong public key type");y0=x0.concat([E,y0]);for(var T=p0.modulus.byteLength(),f0=[1],D=0;y0.length+f0.length+2<T;)f0.push(255),D++;f0.push(0);for(var c0=-1;++c0<y0.length;)f0.push(y0[c0]);f0=x0.from(f0);var C=G.mont(p0.modulus);H=new G(H).toRed(C),H=H.redPow(new G(p0.publicExponent)),H=x0.from(H.fromRed().toArray());var h0=D<8?1:0;for(T=Math.min(H.length,f0.length),H.length!==f0.length&&(h0=1),c0=-1;++c0<T;)h0|=H[c0]^f0[c0];return h0===0}function U(H,y0,W){var w0=Z[W.data.algorithm.curve.join(".")];if(!w0)throw new Error("unknown curve "+W.data.algorithm.curve.join("."));var E=new Y(w0),p0=W.data.subjectPrivateKey.data;return E.verify(y0,H,p0)}function V(H,y0,W){var w0=W.data.p,E=W.data.q,p0=W.data.g,T=W.data.pub_key,f0=$.signature.decode(H,"der"),D=f0.s,c0=f0.r;B0(D,E),B0(c0,E);var C=G.mont(w0),h0=D.invm(E),L=p0.toRed(C).redPow(new G(y0).mul(h0).mod(E)).fromRed().mul(T.toRed(C).redPow(c0.mul(h0).mod(E)).fromRed()).mod(w0).mod(E);return L.cmp(c0)===0}function B0(H,y0){if(H.cmpn(0)<=0)throw new Error("invalid sig");if(H.cmp(y0)>=y0)throw new Error("invalid sig")}K.exports=Q}}),dY=$Q({"node_modules/browserify-sign/browser/index.js"(X,K){var x0=YQ().Buffer,G=L0(),Y=X0(),$=cY(),Z=hY(),Q=M0();Object.keys(Q).forEach(function(y0){Q[y0].id=x0.from(Q[y0].id,"hex"),Q[y0.toLowerCase()]=Q[y0]});function U(y0){h$.Writable.call(this);var W=Q[y0];if(!W)throw new Error("Unknown message digest");this._hashType=W.hash,this._hash=G(W.hash),this._tag=W.id,this._signType=W.sign}Y(U,h$.Writable),U.prototype._write=function(y0,W,w0){this._hash.update(y0),w0()},U.prototype.update=function(y0,W){return typeof y0=="string"&&(y0=x0.from(y0,W)),this._hash.update(y0),this},U.prototype.sign=function(y0,W){this.end();var w0=this._hash.digest(),E=$(w0,y0,this._hashType,this._signType,this._tag);return W?E.toString(W):E};function V(y0){h$.Writable.call(this);var W=Q[y0];if(!W)throw new Error("Unknown message digest");this._hash=G(W.hash),this._tag=W.id,this._signType=W.sign}Y(V,h$.Writable),V.prototype._write=function(y0,W,w0){this._hash.update(y0),w0()},V.prototype.update=function(y0,W){return typeof y0=="string"&&(y0=x0.from(y0,W)),this._hash.update(y0),this},V.prototype.verify=function(y0,W,w0){typeof W=="string"&&(W=x0.from(W,w0)),this.end();var E=this._hash.digest();return Z(W,E,y0,this._signType,this._tag)};function B0(y0){return new U(y0)}function H(y0){return new V(y0)}K.exports={Sign:B0,Verify:H,createSign:B0,createVerify:H}}}),bY=$Q({"node_modules/create-ecdh/node_modules/bn.js/lib/bn.js"(X,K){(function(x0,G){function Y(l0,z){if(!l0)throw new Error(z||"Assertion failed")}function $(l0,z){l0.super_=z;var o0=function(){};o0.prototype=z.prototype,l0.prototype=new o0,l0.prototype.constructor=l0}function Z(l0,z,o0){if(Z.isBN(l0))return l0;this.negative=0,this.words=null,this.length=0,this.red=null,l0!==null&&((z==="le"||z==="be")&&(o0=z,z=10),this._init(l0||0,z||10,o0||"be"))}typeof x0=="object"?x0.exports=Z:G.BN=Z,Z.BN=Z,Z.wordSize=26;var Q=c$;Z.isBN=function(l0){return l0 instanceof Z?!0:l0!==null&&typeof l0=="object"&&l0.constructor.wordSize===Z.wordSize&&Array.isArray(l0.words)},Z.max=function(l0,z){return l0.cmp(z)>0?l0:z},Z.min=function(l0,z){return l0.cmp(z)<0?l0:z},Z.prototype._init=function(l0,z,o0){if(typeof l0=="number")return this._initNumber(l0,z,o0);if(typeof l0=="object")return this._initArray(l0,z,o0);z==="hex"&&(z=16),Y(z===(z|0)&&z>=2&&z<=36),l0=l0.toString().replace(/\s+/g,"");var M=0;l0[0]==="-"&&(M++,this.negative=1),M<l0.length&&(z===16?this._parseHex(l0,M,o0):(this._parseBase(l0,z,M),o0==="le"&&this._initArray(this.toArray(),z,o0)))},Z.prototype._initNumber=function(l0,z,o0){l0<0&&(this.negative=1,l0=-l0),l0<67108864?(this.words=[l0&67108863],this.length=1):l0<4503599627370496?(this.words=[l0&67108863,l0/67108864&67108863],this.length=2):(Y(l0<9007199254740992),this.words=[l0&67108863,l0/67108864&67108863,1],this.length=3),o0==="le"&&this._initArray(this.toArray(),z,o0)},Z.prototype._initArray=function(l0,z,o0){if(Y(typeof l0.length=="number"),l0.length<=0)return this.words=[0],this.length=1,this;this.length=Math.ceil(l0.length/3),this.words=new Array(this.length);for(var M=0;M<this.length;M++)this.words[M]=0;var u0,S,n0=0;if(o0==="be")for(M=l0.length-1,u0=0;M>=0;M-=3)S=l0[M]|l0[M-1]<<8|l0[M-2]<<16,this.words[u0]|=S<<n0&67108863,this.words[u0+1]=S>>>26-n0&67108863,n0+=24,n0>=26&&(n0-=26,u0++);else if(o0==="le")for(M=0,u0=0;M<l0.length;M+=3)S=l0[M]|l0[M+1]<<8|l0[M+2]<<16,this.words[u0]|=S<<n0&67108863,this.words[u0+1]=S>>>26-n0&67108863,n0+=24,n0>=26&&(n0-=26,u0++);return this.strip()};function U(l0,z){var o0=l0.charCodeAt(z);return o0>=65&&o0<=70?o0-55:o0>=97&&o0<=102?o0-87:o0-48&15}function V(l0,z,o0){var M=U(l0,o0);return o0-1>=z&&(M|=U(l0,o0-1)<<4),M}Z.prototype._parseHex=function(l0,z,o0){this.length=Math.ceil((l0.length-z)/6),this.words=new Array(this.length);for(var M=0;M<this.length;M++)this.words[M]=0;var u0=0,S=0,n0;if(o0==="be")for(M=l0.length-1;M>=z;M-=2)n0=V(l0,z,M)<<u0,this.words[S]|=n0&67108863,u0>=18?(u0-=18,S+=1,this.words[S]|=n0>>>26):u0+=8;else{var v=l0.length-z;for(M=v%2===0?z+1:z;M<l0.length;M+=2)n0=V(l0,z,M)<<u0,this.words[S]|=n0&67108863,u0>=18?(u0-=18,S+=1,this.words[S]|=n0>>>26):u0+=8}this.strip()};function B0(l0,z,o0,M){for(var u0=0,S=Math.min(l0.length,o0),n0=z;n0<S;n0++){var v=l0.charCodeAt(n0)-48;u0*=M,v>=49?u0+=v-49+10:v>=17?u0+=v-17+10:u0+=v}return u0}Z.prototype._parseBase=function(l0,z,o0){this.words=[0],this.length=1;for(var M=0,u0=1;u0<=67108863;u0*=z)M++;M--,u0=u0/z|0;for(var S=l0.length-o0,n0=S%M,v=Math.min(S,S-n0)+o0,s0=0,I=o0;I<v;I+=M)s0=B0(l0,I,I+M,z),this.imuln(u0),this.words[0]+s0<67108864?this.words[0]+=s0:this._iaddn(s0);if(n0!==0){var t0=1;for(s0=B0(l0,I,l0.length,z),I=0;I<n0;I++)t0*=z;this.imuln(t0),this.words[0]+s0<67108864?this.words[0]+=s0:this._iaddn(s0)}this.strip()},Z.prototype.copy=function(l0){l0.words=new Array(this.length);for(var z=0;z<this.length;z++)l0.words[z]=this.words[z];l0.length=this.length,l0.negative=this.negative,l0.red=this.red},Z.prototype.clone=function(){var l0=new Z(null);return this.copy(l0),l0},Z.prototype._expand=function(l0){for(;this.length<l0;)this.words[this.length++]=0;return this},Z.prototype.strip=function(){for(;this.length>1&&this.words[this.length-1]===0;)this.length--;return this._normSign()},Z.prototype._normSign=function(){return this.length===1&&this.words[0]===0&&(this.negative=0),this},Z.prototype.inspect=function(){return(this.red?"<BN-R: ":"<BN: ")+this.toString(16)+">"};var H=["","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"],y0=[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],W=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64000000,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,24300000,28629151,33554432,39135393,45435424,52521875,60466176];Z.prototype.toString=function(l0,z){l0=l0||10,z=z|0||1;var o0;if(l0===16||l0==="hex"){o0="";for(var M=0,u0=0,S=0;S<this.length;S++){var n0=this.words[S],v=((n0<<M|u0)&16777215).toString(16);u0=n0>>>24-M&16777215,u0!==0||S!==this.length-1?o0=H[6-v.length]+v+o0:o0=v+o0,M+=2,M>=26&&(M-=26,S--)}for(u0!==0&&(o0=u0.toString(16)+o0);o0.length%z!==0;)o0="0"+o0;return this.negative!==0&&(o0="-"+o0),o0}if(l0===(l0|0)&&l0>=2&&l0<=36){var s0=y0[l0],I=W[l0];o0="";var t0=this.clone();for(t0.negative=0;!t0.isZero();){var m0=t0.modn(I).toString(l0);t0=t0.idivn(I),t0.isZero()?o0=m0+o0:o0=H[s0-m0.length]+m0+o0}for(this.isZero()&&(o0="0"+o0);o0.length%z!==0;)o0="0"+o0;return this.negative!==0&&(o0="-"+o0),o0}Y(!1,"Base should be between 2 and 36")},Z.prototype.toNumber=function(){var l0=this.words[0];return this.length===2?l0+=this.words[1]*67108864:this.length===3&&this.words[2]===1?l0+=4503599627370496+this.words[1]*67108864:this.length>2&&Y(!1,"Number can only safely store up to 53 bits"),this.negative!==0?-l0:l0},Z.prototype.toJSON=function(){return this.toString(16)},Z.prototype.toBuffer=function(l0,z){return Y(typeof Q<"u"),this.toArrayLike(Q,l0,z)},Z.prototype.toArray=function(l0,z){return this.toArrayLike(Array,l0,z)},Z.prototype.toArrayLike=function(l0,z,o0){var M=this.byteLength(),u0=o0||Math.max(1,M);Y(M<=u0,"byte array longer than desired length"),Y(u0>0,"Requested array length <= 0"),this.strip();var S=z==="le",n0=new l0(u0),v,s0,I=this.clone();if(S){for(s0=0;!I.isZero();s0++)v=I.andln(255),I.iushrn(8),n0[s0]=v;for(;s0<u0;s0++)n0[s0]=0}else{for(s0=0;s0<u0-M;s0++)n0[s0]=0;for(s0=0;!I.isZero();s0++)v=I.andln(255),I.iushrn(8),n0[u0-s0-1]=v}return n0},Math.clz32?Z.prototype._countBits=function(l0){return 32-Math.clz32(l0)}:Z.prototype._countBits=function(l0){var z=l0,o0=0;return z>=4096&&(o0+=13,z>>>=13),z>=64&&(o0+=7,z>>>=7),z>=8&&(o0+=4,z>>>=4),z>=2&&(o0+=2,z>>>=2),o0+z},Z.prototype._zeroBits=function(l0){if(l0===0)return 26;var z=l0,o0=0;return(z&8191)===0&&(o0+=13,z>>>=13),(z&127)===0&&(o0+=7,z>>>=7),(z&15)===0&&(o0+=4,z>>>=4),(z&3)===0&&(o0+=2,z>>>=2),(z&1)===0&&o0++,o0},Z.prototype.bitLength=function(){var l0=this.words[this.length-1],z=this._countBits(l0);return(this.length-1)*26+z};function w0(l0){for(var z=new Array(l0.bitLength()),o0=0;o0<z.length;o0++){var M=o0/26|0,u0=o0%26;z[o0]=(l0.words[M]&1<<u0)>>>u0}return z}Z.prototype.zeroBits=function(){if(this.isZero())return 0;for(var l0=0,z=0;z<this.length;z++){var o0=this._zeroBits(this.words[z]);if(l0+=o0,o0!==26)break}return l0},Z.prototype.byteLength=function(){return Math.ceil(this.bitLength()/8)},Z.prototype.toTwos=function(l0){return this.negative!==0?this.abs().inotn(l0).iaddn(1):this.clone()},Z.prototype.fromTwos=function(l0){return this.testn(l0-1)?this.notn(l0).iaddn(1).ineg():this.clone()},Z.prototype.isNeg=function(){return this.negative!==0},Z.prototype.neg=function(){return this.clone().ineg()},Z.prototype.ineg=function(){return this.isZero()||(this.negative^=1),this},Z.prototype.iuor=function(l0){for(;this.length<l0.length;)this.words[this.length++]=0;for(var z=0;z<l0.length;z++)this.words[z]=this.words[z]|l0.words[z];return this.strip()},Z.prototype.ior=function(l0){return Y((this.negative|l0.negative)===0),this.iuor(l0)},Z.prototype.or=function(l0){return this.length>l0.length?this.clone().ior(l0):l0.clone().ior(this)},Z.prototype.uor=function(l0){return this.length>l0.length?this.clone().iuor(l0):l0.clone().iuor(this)},Z.prototype.iuand=function(l0){var z;this.length>l0.length?z=l0:z=this;for(var o0=0;o0<z.length;o0++)this.words[o0]=this.words[o0]&l0.words[o0];return this.length=z.length,this.strip()},Z.prototype.iand=function(l0){return Y((this.negative|l0.negative)===0),this.iuand(l0)},Z.prototype.and=function(l0){return this.length>l0.length?this.clone().iand(l0):l0.clone().iand(this)},Z.prototype.uand=function(l0){return this.length>l0.length?this.clone().iuand(l0):l0.clone().iuand(this)},Z.prototype.iuxor=function(l0){var z,o0;this.length>l0.length?(z=this,o0=l0):(z=l0,o0=this);for(var M=0;M<o0.length;M++)this.words[M]=z.words[M]^o0.words[M];if(this!==z)for(;M<z.length;M++)this.words[M]=z.words[M];return this.length=z.length,this.strip()},Z.prototype.ixor=function(l0){return Y((this.negative|l0.negative)===0),this.iuxor(l0)},Z.prototype.xor=function(l0){return this.length>l0.length?this.clone().ixor(l0):l0.clone().ixor(this)},Z.prototype.uxor=function(l0){return this.length>l0.length?this.clone().iuxor(l0):l0.clone().iuxor(this)},Z.prototype.inotn=function(l0){Y(typeof l0=="number"&&l0>=0);var z=Math.ceil(l0/26)|0,o0=l0%26;this._expand(z),o0>0&&z--;for(var M=0;M<z;M++)this.words[M]=~this.words[M]&67108863;return o0>0&&(this.words[M]=~this.words[M]&67108863>>26-o0),this.strip()},Z.prototype.notn=function(l0){return this.clone().inotn(l0)},Z.prototype.setn=function(l0,z){Y(typeof l0=="number"&&l0>=0);var o0=l0/26|0,M=l0%26;return this._expand(o0+1),z?this.words[o0]=this.words[o0]|1<<M:this.words[o0]=this.words[o0]&~(1<<M),this.strip()},Z.prototype.iadd=function(l0){var z;if(this.negative!==0&&l0.negative===0)return this.negative=0,z=this.isub(l0),this.negative^=1,this._normSign();if(this.negative===0&&l0.negative!==0)return l0.negative=0,z=this.isub(l0),l0.negative=1,z._normSign();var o0,M;this.length>l0.length?(o0=this,M=l0):(o0=l0,M=this);for(var u0=0,S=0;S<M.length;S++)z=(o0.words[S]|0)+(M.words[S]|0)+u0,this.words[S]=z&67108863,u0=z>>>26;for(;u0!==0&&S<o0.length;S++)z=(o0.words[S]|0)+u0,this.words[S]=z&67108863,u0=z>>>26;if(this.length=o0.length,u0!==0)this.words[this.length]=u0,this.length++;else if(o0!==this)for(;S<o0.length;S++)this.words[S]=o0.words[S];return this},Z.prototype.add=function(l0){var z;return l0.negative!==0&&this.negative===0?(l0.negative=0,z=this.sub(l0),l0.negative^=1,z):l0.negative===0&&this.negative!==0?(this.negative=0,z=l0.sub(this),this.negative=1,z):this.length>l0.length?this.clone().iadd(l0):l0.clone().iadd(this)},Z.prototype.isub=function(l0){if(l0.negative!==0){l0.negative=0;var z=this.iadd(l0);return l0.negative=1,z._normSign()}else if(this.negative!==0)return this.negative=0,this.iadd(l0),this.negative=1,this._normSign();var o0=this.cmp(l0);if(o0===0)return this.negative=0,this.length=1,this.words[0]=0,this;var M,u0;o0>0?(M=this,u0=l0):(M=l0,u0=this);for(var S=0,n0=0;n0<u0.length;n0++)z=(M.words[n0]|0)-(u0.words[n0]|0)+S,S=z>>26,this.words[n0]=z&67108863;for(;S!==0&&n0<M.length;n0++)z=(M.words[n0]|0)+S,S=z>>26,this.words[n0]=z&67108863;if(S===0&&n0<M.length&&M!==this)for(;n0<M.length;n0++)this.words[n0]=M.words[n0];return this.length=Math.max(this.length,n0),M!==this&&(this.negative=1),this.strip()},Z.prototype.sub=function(l0){return this.clone().isub(l0)};function E(l0,z,o0){o0.negative=z.negative^l0.negative;var M=l0.length+z.length|0;o0.length=M,M=M-1|0;var u0=l0.words[0]|0,S=z.words[0]|0,n0=u0*S,v=n0&67108863,s0=n0/67108864|0;o0.words[0]=v;for(var I=1;I<M;I++){for(var t0=s0>>>26,m0=s0&67108863,a0=Math.min(I,z.length-1),q=Math.max(0,I-l0.length+1);q<=a0;q++){var e0=I-q|0;u0=l0.words[e0]|0,S=z.words[q]|0,n0=u0*S+m0,t0+=n0/67108864|0,m0=n0&67108863}o0.words[I]=m0|0,s0=t0|0}return s0!==0?o0.words[I]=s0|0:o0.length--,o0.strip()}var p0=function(l0,z,o0){var M=l0.words,u0=z.words,S=o0.words,n0=0,v,s0,I,t0=M[0]|0,m0=t0&8191,a0=t0>>>13,q=M[1]|0,e0=q&8191,r0=q>>>13,i0=M[2]|0,j=i0&8191,$$=i0>>>13,k=M[3]|0,Q$=k&8191,g=k>>>13,Y$=M[4]|0,_=Y$&8191,Z$=Y$>>>13,N=M[5]|0,G$=N&8191,x=N>>>13,V$=M[6]|0,B=V$&8191,U$=V$>>>13,y=M[7]|0,X$=y&8191,w=y>>>13,K$=M[8]|0,p=K$&8191,I$=K$>>>13,f=M[9]|0,O$=f&8191,c=f>>>13,J$=u0[0]|0,h=J$&8191,F$=J$>>>13,d=u0[1]|0,A$=d&8191,b=d>>>13,H$=u0[2]|0,l=H$&8191,W$=H$>>>13,o=u0[3]|0,E$=o&8191,u=o>>>13,T$=u0[4]|0,n=T$&8191,D$=T$>>>13,s=u0[5]|0,C$=s&8191,t=s>>>13,L$=u0[6]|0,m=L$&8191,R$=L$>>>13,a=u0[7]|0,P$=a&8191,O=a>>>13,z$=u0[8]|0,e=z$&8191,M$=z$>>>13,J=u0[9]|0,S$=J&8191,F=J>>>13;o0.negative=l0.negative^z.negative,o0.length=19,v=Math.imul(m0,h),s0=Math.imul(m0,F$),s0=s0+Math.imul(a0,h)|0,I=Math.imul(a0,F$);var v$=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(v$>>>26)|0,v$&=67108863,v=Math.imul(e0,h),s0=Math.imul(e0,F$),s0=s0+Math.imul(r0,h)|0,I=Math.imul(r0,F$),v=v+Math.imul(m0,A$)|0,s0=s0+Math.imul(m0,b)|0,s0=s0+Math.imul(a0,A$)|0,I=I+Math.imul(a0,b)|0;var r=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(r>>>26)|0,r&=67108863,v=Math.imul(j,h),s0=Math.imul(j,F$),s0=s0+Math.imul($$,h)|0,I=Math.imul($$,F$),v=v+Math.imul(e0,A$)|0,s0=s0+Math.imul(e0,b)|0,s0=s0+Math.imul(r0,A$)|0,I=I+Math.imul(r0,b)|0,v=v+Math.imul(m0,l)|0,s0=s0+Math.imul(m0,W$)|0,s0=s0+Math.imul(a0,l)|0,I=I+Math.imul(a0,W$)|0;var q$=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(q$>>>26)|0,q$&=67108863,v=Math.imul(Q$,h),s0=Math.imul(Q$,F$),s0=s0+Math.imul(g,h)|0,I=Math.imul(g,F$),v=v+Math.imul(j,A$)|0,s0=s0+Math.imul(j,b)|0,s0=s0+Math.imul($$,A$)|0,I=I+Math.imul($$,b)|0,v=v+Math.imul(e0,l)|0,s0=s0+Math.imul(e0,W$)|0,s0=s0+Math.imul(r0,l)|0,I=I+Math.imul(r0,W$)|0,v=v+Math.imul(m0,E$)|0,s0=s0+Math.imul(m0,u)|0,s0=s0+Math.imul(a0,E$)|0,I=I+Math.imul(a0,u)|0;var i=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(i>>>26)|0,i&=67108863,v=Math.imul(_,h),s0=Math.imul(_,F$),s0=s0+Math.imul(Z$,h)|0,I=Math.imul(Z$,F$),v=v+Math.imul(Q$,A$)|0,s0=s0+Math.imul(Q$,b)|0,s0=s0+Math.imul(g,A$)|0,I=I+Math.imul(g,b)|0,v=v+Math.imul(j,l)|0,s0=s0+Math.imul(j,W$)|0,s0=s0+Math.imul($$,l)|0,I=I+Math.imul($$,W$)|0,v=v+Math.imul(e0,E$)|0,s0=s0+Math.imul(e0,u)|0,s0=s0+Math.imul(r0,E$)|0,I=I+Math.imul(r0,u)|0,v=v+Math.imul(m0,n)|0,s0=s0+Math.imul(m0,D$)|0,s0=s0+Math.imul(a0,n)|0,I=I+Math.imul(a0,D$)|0;var j$=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(j$>>>26)|0,j$&=67108863,v=Math.imul(G$,h),s0=Math.imul(G$,F$),s0=s0+Math.imul(x,h)|0,I=Math.imul(x,F$),v=v+Math.imul(_,A$)|0,s0=s0+Math.imul(_,b)|0,s0=s0+Math.imul(Z$,A$)|0,I=I+Math.imul(Z$,b)|0,v=v+Math.imul(Q$,l)|0,s0=s0+Math.imul(Q$,W$)|0,s0=s0+Math.imul(g,l)|0,I=I+Math.imul(g,W$)|0,v=v+Math.imul(j,E$)|0,s0=s0+Math.imul(j,u)|0,s0=s0+Math.imul($$,E$)|0,I=I+Math.imul($$,u)|0,v=v+Math.imul(e0,n)|0,s0=s0+Math.imul(e0,D$)|0,s0=s0+Math.imul(r0,n)|0,I=I+Math.imul(r0,D$)|0,v=v+Math.imul(m0,C$)|0,s0=s0+Math.imul(m0,t)|0,s0=s0+Math.imul(a0,C$)|0,I=I+Math.imul(a0,t)|0;var k$=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(k$>>>26)|0,k$&=67108863,v=Math.imul(B,h),s0=Math.imul(B,F$),s0=s0+Math.imul(U$,h)|0,I=Math.imul(U$,F$),v=v+Math.imul(G$,A$)|0,s0=s0+Math.imul(G$,b)|0,s0=s0+Math.imul(x,A$)|0,I=I+Math.imul(x,b)|0,v=v+Math.imul(_,l)|0,s0=s0+Math.imul(_,W$)|0,s0=s0+Math.imul(Z$,l)|0,I=I+Math.imul(Z$,W$)|0,v=v+Math.imul(Q$,E$)|0,s0=s0+Math.imul(Q$,u)|0,s0=s0+Math.imul(g,E$)|0,I=I+Math.imul(g,u)|0,v=v+Math.imul(j,n)|0,s0=s0+Math.imul(j,D$)|0,s0=s0+Math.imul($$,n)|0,I=I+Math.imul($$,D$)|0,v=v+Math.imul(e0,C$)|0,s0=s0+Math.imul(e0,t)|0,s0=s0+Math.imul(r0,C$)|0,I=I+Math.imul(r0,t)|0,v=v+Math.imul(m0,m)|0,s0=s0+Math.imul(m0,R$)|0,s0=s0+Math.imul(a0,m)|0,I=I+Math.imul(a0,R$)|0;var g$=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(g$>>>26)|0,g$&=67108863,v=Math.imul(X$,h),s0=Math.imul(X$,F$),s0=s0+Math.imul(w,h)|0,I=Math.imul(w,F$),v=v+Math.imul(B,A$)|0,s0=s0+Math.imul(B,b)|0,s0=s0+Math.imul(U$,A$)|0,I=I+Math.imul(U$,b)|0,v=v+Math.imul(G$,l)|0,s0=s0+Math.imul(G$,W$)|0,s0=s0+Math.imul(x,l)|0,I=I+Math.imul(x,W$)|0,v=v+Math.imul(_,E$)|0,s0=s0+Math.imul(_,u)|0,s0=s0+Math.imul(Z$,E$)|0,I=I+Math.imul(Z$,u)|0,v=v+Math.imul(Q$,n)|0,s0=s0+Math.imul(Q$,D$)|0,s0=s0+Math.imul(g,n)|0,I=I+Math.imul(g,D$)|0,v=v+Math.imul(j,C$)|0,s0=s0+Math.imul(j,t)|0,s0=s0+Math.imul($$,C$)|0,I=I+Math.imul($$,t)|0,v=v+Math.imul(e0,m)|0,s0=s0+Math.imul(e0,R$)|0,s0=s0+Math.imul(r0,m)|0,I=I+Math.imul(r0,R$)|0,v=v+Math.imul(m0,P$)|0,s0=s0+Math.imul(m0,O)|0,s0=s0+Math.imul(a0,P$)|0,I=I+Math.imul(a0,O)|0;var _$=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(_$>>>26)|0,_$&=67108863,v=Math.imul(p,h),s0=Math.imul(p,F$),s0=s0+Math.imul(I$,h)|0,I=Math.imul(I$,F$),v=v+Math.imul(X$,A$)|0,s0=s0+Math.imul(X$,b)|0,s0=s0+Math.imul(w,A$)|0,I=I+Math.imul(w,b)|0,v=v+Math.imul(B,l)|0,s0=s0+Math.imul(B,W$)|0,s0=s0+Math.imul(U$,l)|0,I=I+Math.imul(U$,W$)|0,v=v+Math.imul(G$,E$)|0,s0=s0+Math.imul(G$,u)|0,s0=s0+Math.imul(x,E$)|0,I=I+Math.imul(x,u)|0,v=v+Math.imul(_,n)|0,s0=s0+Math.imul(_,D$)|0,s0=s0+Math.imul(Z$,n)|0,I=I+Math.imul(Z$,D$)|0,v=v+Math.imul(Q$,C$)|0,s0=s0+Math.imul(Q$,t)|0,s0=s0+Math.imul(g,C$)|0,I=I+Math.imul(g,t)|0,v=v+Math.imul(j,m)|0,s0=s0+Math.imul(j,R$)|0,s0=s0+Math.imul($$,m)|0,I=I+Math.imul($$,R$)|0,v=v+Math.imul(e0,P$)|0,s0=s0+Math.imul(e0,O)|0,s0=s0+Math.imul(r0,P$)|0,I=I+Math.imul(r0,O)|0,v=v+Math.imul(m0,e)|0,s0=s0+Math.imul(m0,M$)|0,s0=s0+Math.imul(a0,e)|0,I=I+Math.imul(a0,M$)|0;var N$=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(N$>>>26)|0,N$&=67108863,v=Math.imul(O$,h),s0=Math.imul(O$,F$),s0=s0+Math.imul(c,h)|0,I=Math.imul(c,F$),v=v+Math.imul(p,A$)|0,s0=s0+Math.imul(p,b)|0,s0=s0+Math.imul(I$,A$)|0,I=I+Math.imul(I$,b)|0,v=v+Math.imul(X$,l)|0,s0=s0+Math.imul(X$,W$)|0,s0=s0+Math.imul(w,l)|0,I=I+Math.imul(w,W$)|0,v=v+Math.imul(B,E$)|0,s0=s0+Math.imul(B,u)|0,s0=s0+Math.imul(U$,E$)|0,I=I+Math.imul(U$,u)|0,v=v+Math.imul(G$,n)|0,s0=s0+Math.imul(G$,D$)|0,s0=s0+Math.imul(x,n)|0,I=I+Math.imul(x,D$)|0,v=v+Math.imul(_,C$)|0,s0=s0+Math.imul(_,t)|0,s0=s0+Math.imul(Z$,C$)|0,I=I+Math.imul(Z$,t)|0,v=v+Math.imul(Q$,m)|0,s0=s0+Math.imul(Q$,R$)|0,s0=s0+Math.imul(g,m)|0,I=I+Math.imul(g,R$)|0,v=v+Math.imul(j,P$)|0,s0=s0+Math.imul(j,O)|0,s0=s0+Math.imul($$,P$)|0,I=I+Math.imul($$,O)|0,v=v+Math.imul(e0,e)|0,s0=s0+Math.imul(e0,M$)|0,s0=s0+Math.imul(r0,e)|0,I=I+Math.imul(r0,M$)|0,v=v+Math.imul(m0,S$)|0,s0=s0+Math.imul(m0,F)|0,s0=s0+Math.imul(a0,S$)|0,I=I+Math.imul(a0,F)|0;var $0=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+($0>>>26)|0,$0&=67108863,v=Math.imul(O$,A$),s0=Math.imul(O$,b),s0=s0+Math.imul(c,A$)|0,I=Math.imul(c,b),v=v+Math.imul(p,l)|0,s0=s0+Math.imul(p,W$)|0,s0=s0+Math.imul(I$,l)|0,I=I+Math.imul(I$,W$)|0,v=v+Math.imul(X$,E$)|0,s0=s0+Math.imul(X$,u)|0,s0=s0+Math.imul(w,E$)|0,I=I+Math.imul(w,u)|0,v=v+Math.imul(B,n)|0,s0=s0+Math.imul(B,D$)|0,s0=s0+Math.imul(U$,n)|0,I=I+Math.imul(U$,D$)|0,v=v+Math.imul(G$,C$)|0,s0=s0+Math.imul(G$,t)|0,s0=s0+Math.imul(x,C$)|0,I=I+Math.imul(x,t)|0,v=v+Math.imul(_,m)|0,s0=s0+Math.imul(_,R$)|0,s0=s0+Math.imul(Z$,m)|0,I=I+Math.imul(Z$,R$)|0,v=v+Math.imul(Q$,P$)|0,s0=s0+Math.imul(Q$,O)|0,s0=s0+Math.imul(g,P$)|0,I=I+Math.imul(g,O)|0,v=v+Math.imul(j,e)|0,s0=s0+Math.imul(j,M$)|0,s0=s0+Math.imul($$,e)|0,I=I+Math.imul($$,M$)|0,v=v+Math.imul(e0,S$)|0,s0=s0+Math.imul(e0,F)|0,s0=s0+Math.imul(r0,S$)|0,I=I+Math.imul(r0,F)|0;var x$=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(x$>>>26)|0,x$&=67108863,v=Math.imul(O$,l),s0=Math.imul(O$,W$),s0=s0+Math.imul(c,l)|0,I=Math.imul(c,W$),v=v+Math.imul(p,E$)|0,s0=s0+Math.imul(p,u)|0,s0=s0+Math.imul(I$,E$)|0,I=I+Math.imul(I$,u)|0,v=v+Math.imul(X$,n)|0,s0=s0+Math.imul(X$,D$)|0,s0=s0+Math.imul(w,n)|0,I=I+Math.imul(w,D$)|0,v=v+Math.imul(B,C$)|0,s0=s0+Math.imul(B,t)|0,s0=s0+Math.imul(U$,C$)|0,I=I+Math.imul(U$,t)|0,v=v+Math.imul(G$,m)|0,s0=s0+Math.imul(G$,R$)|0,s0=s0+Math.imul(x,m)|0,I=I+Math.imul(x,R$)|0,v=v+Math.imul(_,P$)|0,s0=s0+Math.imul(_,O)|0,s0=s0+Math.imul(Z$,P$)|0,I=I+Math.imul(Z$,O)|0,v=v+Math.imul(Q$,e)|0,s0=s0+Math.imul(Q$,M$)|0,s0=s0+Math.imul(g,e)|0,I=I+Math.imul(g,M$)|0,v=v+Math.imul(j,S$)|0,s0=s0+Math.imul(j,F)|0,s0=s0+Math.imul($$,S$)|0,I=I+Math.imul($$,F)|0;var Q0=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(Q0>>>26)|0,Q0&=67108863,v=Math.imul(O$,E$),s0=Math.imul(O$,u),s0=s0+Math.imul(c,E$)|0,I=Math.imul(c,u),v=v+Math.imul(p,n)|0,s0=s0+Math.imul(p,D$)|0,s0=s0+Math.imul(I$,n)|0,I=I+Math.imul(I$,D$)|0,v=v+Math.imul(X$,C$)|0,s0=s0+Math.imul(X$,t)|0,s0=s0+Math.imul(w,C$)|0,I=I+Math.imul(w,t)|0,v=v+Math.imul(B,m)|0,s0=s0+Math.imul(B,R$)|0,s0=s0+Math.imul(U$,m)|0,I=I+Math.imul(U$,R$)|0,v=v+Math.imul(G$,P$)|0,s0=s0+Math.imul(G$,O)|0,s0=s0+Math.imul(x,P$)|0,I=I+Math.imul(x,O)|0,v=v+Math.imul(_,e)|0,s0=s0+Math.imul(_,M$)|0,s0=s0+Math.imul(Z$,e)|0,I=I+Math.imul(Z$,M$)|0,v=v+Math.imul(Q$,S$)|0,s0=s0+Math.imul(Q$,F)|0,s0=s0+Math.imul(g,S$)|0,I=I+Math.imul(g,F)|0;var B$=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(B$>>>26)|0,B$&=67108863,v=Math.imul(O$,n),s0=Math.imul(O$,D$),s0=s0+Math.imul(c,n)|0,I=Math.imul(c,D$),v=v+Math.imul(p,C$)|0,s0=s0+Math.imul(p,t)|0,s0=s0+Math.imul(I$,C$)|0,I=I+Math.imul(I$,t)|0,v=v+Math.imul(X$,m)|0,s0=s0+Math.imul(X$,R$)|0,s0=s0+Math.imul(w,m)|0,I=I+Math.imul(w,R$)|0,v=v+Math.imul(B,P$)|0,s0=s0+Math.imul(B,O)|0,s0=s0+Math.imul(U$,P$)|0,I=I+Math.imul(U$,O)|0,v=v+Math.imul(G$,e)|0,s0=s0+Math.imul(G$,M$)|0,s0=s0+Math.imul(x,e)|0,I=I+Math.imul(x,M$)|0,v=v+Math.imul(_,S$)|0,s0=s0+Math.imul(_,F)|0,s0=s0+Math.imul(Z$,S$)|0,I=I+Math.imul(Z$,F)|0;var Y0=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(Y0>>>26)|0,Y0&=67108863,v=Math.imul(O$,C$),s0=Math.imul(O$,t),s0=s0+Math.imul(c,C$)|0,I=Math.imul(c,t),v=v+Math.imul(p,m)|0,s0=s0+Math.imul(p,R$)|0,s0=s0+Math.imul(I$,m)|0,I=I+Math.imul(I$,R$)|0,v=v+Math.imul(X$,P$)|0,s0=s0+Math.imul(X$,O)|0,s0=s0+Math.imul(w,P$)|0,I=I+Math.imul(w,O)|0,v=v+Math.imul(B,e)|0,s0=s0+Math.imul(B,M$)|0,s0=s0+Math.imul(U$,e)|0,I=I+Math.imul(U$,M$)|0,v=v+Math.imul(G$,S$)|0,s0=s0+Math.imul(G$,F)|0,s0=s0+Math.imul(x,S$)|0,I=I+Math.imul(x,F)|0;var y$=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(y$>>>26)|0,y$&=67108863,v=Math.imul(O$,m),s0=Math.imul(O$,R$),s0=s0+Math.imul(c,m)|0,I=Math.imul(c,R$),v=v+Math.imul(p,P$)|0,s0=s0+Math.imul(p,O)|0,s0=s0+Math.imul(I$,P$)|0,I=I+Math.imul(I$,O)|0,v=v+Math.imul(X$,e)|0,s0=s0+Math.imul(X$,M$)|0,s0=s0+Math.imul(w,e)|0,I=I+Math.imul(w,M$)|0,v=v+Math.imul(B,S$)|0,s0=s0+Math.imul(B,F)|0,s0=s0+Math.imul(U$,S$)|0,I=I+Math.imul(U$,F)|0;var Z0=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(Z0>>>26)|0,Z0&=67108863,v=Math.imul(O$,P$),s0=Math.imul(O$,O),s0=s0+Math.imul(c,P$)|0,I=Math.imul(c,O),v=v+Math.imul(p,e)|0,s0=s0+Math.imul(p,M$)|0,s0=s0+Math.imul(I$,e)|0,I=I+Math.imul(I$,M$)|0,v=v+Math.imul(X$,S$)|0,s0=s0+Math.imul(X$,F)|0,s0=s0+Math.imul(w,S$)|0,I=I+Math.imul(w,F)|0;var w$=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(w$>>>26)|0,w$&=67108863,v=Math.imul(O$,e),s0=Math.imul(O$,M$),s0=s0+Math.imul(c,e)|0,I=Math.imul(c,M$),v=v+Math.imul(p,S$)|0,s0=s0+Math.imul(p,F)|0,s0=s0+Math.imul(I$,S$)|0,I=I+Math.imul(I$,F)|0;var G0=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(G0>>>26)|0,G0&=67108863,v=Math.imul(O$,S$),s0=Math.imul(O$,F),s0=s0+Math.imul(c,S$)|0,I=Math.imul(c,F);var p$=(n0+v|0)+((s0&8191)<<13)|0;return n0=(I+(s0>>>13)|0)+(p$>>>26)|0,p$&=67108863,S[0]=v$,S[1]=r,S[2]=q$,S[3]=i,S[4]=j$,S[5]=k$,S[6]=g$,S[7]=_$,S[8]=N$,S[9]=$0,S[10]=x$,S[11]=Q0,S[12]=B$,S[13]=Y0,S[14]=y$,S[15]=Z0,S[16]=w$,S[17]=G0,S[18]=p$,n0!==0&&(S[19]=n0,o0.length++),o0};Math.imul||(p0=E);function T(l0,z,o0){o0.negative=z.negative^l0.negative,o0.length=l0.length+z.length;for(var M=0,u0=0,S=0;S<o0.length-1;S++){var n0=u0;u0=0;for(var v=M&67108863,s0=Math.min(S,z.length-1),I=Math.max(0,S-l0.length+1);I<=s0;I++){var t0=S-I,m0=l0.words[t0]|0,a0=z.words[I]|0,q=m0*a0,e0=q&67108863;n0=n0+(q/67108864|0)|0,e0=e0+v|0,v=e0&67108863,n0=n0+(e0>>>26)|0,u0+=n0>>>26,n0&=67108863}o0.words[S]=v,M=n0,n0=u0}return M!==0?o0.words[S]=M:o0.length--,o0.strip()}function f0(l0,z,o0){var M=new D;return M.mulp(l0,z,o0)}Z.prototype.mulTo=function(l0,z){var o0,M=this.length+l0.length;return this.length===10&&l0.length===10?o0=p0(this,l0,z):M<63?o0=E(this,l0,z):M<1024?o0=T(this,l0,z):o0=f0(this,l0,z),o0};function D(l0,z){this.x=l0,this.y=z}D.prototype.makeRBT=function(l0){for(var z=new Array(l0),o0=Z.prototype._countBits(l0)-1,M=0;M<l0;M++)z[M]=this.revBin(M,o0,l0);return z},D.prototype.revBin=function(l0,z,o0){if(l0===0||l0===o0-1)return l0;for(var M=0,u0=0;u0<z;u0++)M|=(l0&1)<<z-u0-1,l0>>=1;return M},D.prototype.permute=function(l0,z,o0,M,u0,S){for(var n0=0;n0<S;n0++)M[n0]=z[l0[n0]],u0[n0]=o0[l0[n0]]},D.prototype.transform=function(l0,z,o0,M,u0,S){this.permute(S,l0,z,o0,M,u0);for(var n0=1;n0<u0;n0<<=1)for(var v=n0<<1,s0=Math.cos(2*Math.PI/v),I=Math.sin(2*Math.PI/v),t0=0;t0<u0;t0+=v)for(var m0=s0,a0=I,q=0;q<n0;q++){var e0=o0[t0+q],r0=M[t0+q],i0=o0[t0+q+n0],j=M[t0+q+n0],$$=m0*i0-a0*j;j=m0*j+a0*i0,i0=$$,o0[t0+q]=e0+i0,M[t0+q]=r0+j,o0[t0+q+n0]=e0-i0,M[t0+q+n0]=r0-j,q!==v&&($$=s0*m0-I*a0,a0=s0*a0+I*m0,m0=$$)}},D.prototype.guessLen13b=function(l0,z){var o0=Math.max(z,l0)|1,M=o0&1,u0=0;for(o0=o0/2|0;o0;o0=o0>>>1)u0++;return 1<<u0+1+M},D.prototype.conjugate=function(l0,z,o0){if(!(o0<=1))for(var M=0;M<o0/2;M++){var u0=l0[M];l0[M]=l0[o0-M-1],l0[o0-M-1]=u0,u0=z[M],z[M]=-z[o0-M-1],z[o0-M-1]=-u0}},D.prototype.normalize13b=function(l0,z){for(var o0=0,M=0;M<z/2;M++){var u0=Math.round(l0[2*M+1]/z)*8192+Math.round(l0[2*M]/z)+o0;l0[M]=u0&67108863,u0<67108864?o0=0:o0=u0/67108864|0}return l0},D.prototype.convert13b=function(l0,z,o0,M){for(var u0=0,S=0;S<z;S++)u0=u0+(l0[S]|0),o0[2*S]=u0&8191,u0=u0>>>13,o0[2*S+1]=u0&8191,u0=u0>>>13;for(S=2*z;S<M;++S)o0[S]=0;Y(u0===0),Y((u0&-8192)===0)},D.prototype.stub=function(l0){for(var z=new Array(l0),o0=0;o0<l0;o0++)z[o0]=0;return z},D.prototype.mulp=function(l0,z,o0){var M=2*this.guessLen13b(l0.length,z.length),u0=this.makeRBT(M),S=this.stub(M),n0=new Array(M),v=new Array(M),s0=new Array(M),I=new Array(M),t0=new Array(M),m0=new Array(M),a0=o0.words;a0.length=M,this.convert13b(l0.words,l0.length,n0,M),this.convert13b(z.words,z.length,I,M),this.transform(n0,S,v,s0,M,u0),this.transform(I,S,t0,m0,M,u0);for(var q=0;q<M;q++){var e0=v[q]*t0[q]-s0[q]*m0[q];s0[q]=v[q]*m0[q]+s0[q]*t0[q],v[q]=e0}return this.conjugate(v,s0,M),this.transform(v,s0,a0,S,M,u0),this.conjugate(a0,S,M),this.normalize13b(a0,M),o0.negative=l0.negative^z.negative,o0.length=l0.length+z.length,o0.strip()},Z.prototype.mul=function(l0){var z=new Z(null);return z.words=new Array(this.length+l0.length),this.mulTo(l0,z)},Z.prototype.mulf=function(l0){var z=new Z(null);return z.words=new Array(this.length+l0.length),f0(this,l0,z)},Z.prototype.imul=function(l0){return this.clone().mulTo(l0,this)},Z.prototype.imuln=function(l0){Y(typeof l0=="number"),Y(l0<67108864);for(var z=0,o0=0;o0<this.length;o0++){var M=(this.words[o0]|0)*l0,u0=(M&67108863)+(z&67108863);z>>=26,z+=M/67108864|0,z+=u0>>>26,this.words[o0]=u0&67108863}return z!==0&&(this.words[o0]=z,this.length++),this},Z.prototype.muln=function(l0){return this.clone().imuln(l0)},Z.prototype.sqr=function(){return this.mul(this)},Z.prototype.isqr=function(){return this.imul(this.clone())},Z.prototype.pow=function(l0){var z=w0(l0);if(z.length===0)return new Z(1);for(var o0=this,M=0;M<z.length&&z[M]===0;M++,o0=o0.sqr());if(++M<z.length)for(var u0=o0.sqr();M<z.length;M++,u0=u0.sqr())z[M]!==0&&(o0=o0.mul(u0));return o0},Z.prototype.iushln=function(l0){Y(typeof l0=="number"&&l0>=0);var z=l0%26,o0=(l0-z)/26,M=67108863>>>26-z<<26-z,u0;if(z!==0){var S=0;for(u0=0;u0<this.length;u0++){var n0=this.words[u0]&M,v=(this.words[u0]|0)-n0<<z;this.words[u0]=v|S,S=n0>>>26-z}S&&(this.words[u0]=S,this.length++)}if(o0!==0){for(u0=this.length-1;u0>=0;u0--)this.words[u0+o0]=this.words[u0];for(u0=0;u0<o0;u0++)this.words[u0]=0;this.length+=o0}return this.strip()},Z.prototype.ishln=function(l0){return Y(this.negative===0),this.iushln(l0)},Z.prototype.iushrn=function(l0,z,o0){Y(typeof l0=="number"&&l0>=0);var M;z?M=(z-z%26)/26:M=0;var u0=l0%26,S=Math.min((l0-u0)/26,this.length),n0=67108863^67108863>>>u0<<u0,v=o0;if(M-=S,M=Math.max(0,M),v){for(var s0=0;s0<S;s0++)v.words[s0]=this.words[s0];v.length=S}if(S!==0)if(this.length>S)for(this.length-=S,s0=0;s0<this.length;s0++)this.words[s0]=this.words[s0+S];else this.words[0]=0,this.length=1;var I=0;for(s0=this.length-1;s0>=0&&(I!==0||s0>=M);s0--){var t0=this.words[s0]|0;this.words[s0]=I<<26-u0|t0>>>u0,I=t0&n0}return v&&I!==0&&(v.words[v.length++]=I),this.length===0&&(this.words[0]=0,this.length=1),this.strip()},Z.prototype.ishrn=function(l0,z,o0){return Y(this.negative===0),this.iushrn(l0,z,o0)},Z.prototype.shln=function(l0){return this.clone().ishln(l0)},Z.prototype.ushln=function(l0){return this.clone().iushln(l0)},Z.prototype.shrn=function(l0){return this.clone().ishrn(l0)},Z.prototype.ushrn=function(l0){return this.clone().iushrn(l0)},Z.prototype.testn=function(l0){Y(typeof l0=="number"&&l0>=0);var z=l0%26,o0=(l0-z)/26,M=1<<z;if(this.length<=o0)return!1;var u0=this.words[o0];return!!(u0&M)},Z.prototype.imaskn=function(l0){Y(typeof l0=="number"&&l0>=0);var z=l0%26,o0=(l0-z)/26;if(Y(this.negative===0,"imaskn works only with positive numbers"),this.length<=o0)return this;if(z!==0&&o0++,this.length=Math.min(o0,this.length),z!==0){var M=67108863^67108863>>>z<<z;this.words[this.length-1]&=M}return this.strip()},Z.prototype.maskn=function(l0){return this.clone().imaskn(l0)},Z.prototype.iaddn=function(l0){return Y(typeof l0=="number"),Y(l0<67108864),l0<0?this.isubn(-l0):this.negative!==0?this.length===1&&(this.words[0]|0)<l0?(this.words[0]=l0-(this.words[0]|0),this.negative=0,this):(this.negative=0,this.isubn(l0),this.negative=1,this):this._iaddn(l0)},Z.prototype._iaddn=function(l0){this.words[0]+=l0;for(var z=0;z<this.length&&this.words[z]>=67108864;z++)this.words[z]-=67108864,z===this.length-1?this.words[z+1]=1:this.words[z+1]++;return this.length=Math.max(this.length,z+1),this},Z.prototype.isubn=function(l0){if(Y(typeof l0=="number"),Y(l0<67108864),l0<0)return this.iaddn(-l0);if(this.negative!==0)return this.negative=0,this.iaddn(l0),this.negative=1,this;if(this.words[0]-=l0,this.length===1&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var z=0;z<this.length&&this.words[z]<0;z++)this.words[z]+=67108864,this.words[z+1]-=1;return this.strip()},Z.prototype.addn=function(l0){return this.clone().iaddn(l0)},Z.prototype.subn=function(l0){return this.clone().isubn(l0)},Z.prototype.iabs=function(){return this.negative=0,this},Z.prototype.abs=function(){return this.clone().iabs()},Z.prototype._ishlnsubmul=function(l0,z,o0){var M=l0.length+o0,u0;this._expand(M);var S,n0=0;for(u0=0;u0<l0.length;u0++){S=(this.words[u0+o0]|0)+n0;var v=(l0.words[u0]|0)*z;S-=v&67108863,n0=(S>>26)-(v/67108864|0),this.words[u0+o0]=S&67108863}for(;u0<this.length-o0;u0++)S=(this.words[u0+o0]|0)+n0,n0=S>>26,this.words[u0+o0]=S&67108863;if(n0===0)return this.strip();for(Y(n0===-1),n0=0,u0=0;u0<this.length;u0++)S=-(this.words[u0]|0)+n0,n0=S>>26,this.words[u0]=S&67108863;return this.negative=1,this.strip()},Z.prototype._wordDiv=function(l0,z){var o0=this.length-l0.length,M=this.clone(),u0=l0,S=u0.words[u0.length-1]|0,n0=this._countBits(S);o0=26-n0,o0!==0&&(u0=u0.ushln(o0),M.iushln(o0),S=u0.words[u0.length-1]|0);var v=M.length-u0.length,s0;if(z!=="mod"){s0=new Z(null),s0.length=v+1,s0.words=new Array(s0.length);for(var I=0;I<s0.length;I++)s0.words[I]=0}var t0=M.clone()._ishlnsubmul(u0,1,v);t0.negative===0&&(M=t0,s0&&(s0.words[v]=1));for(var m0=v-1;m0>=0;m0--){var a0=(M.words[u0.length+m0]|0)*67108864+(M.words[u0.length+m0-1]|0);for(a0=Math.min(a0/S|0,67108863),M._ishlnsubmul(u0,a0,m0);M.negative!==0;)a0--,M.negative=0,M._ishlnsubmul(u0,1,m0),M.isZero()||(M.negative^=1);s0&&(s0.words[m0]=a0)}return s0&&s0.strip(),M.strip(),z!=="div"&&o0!==0&&M.iushrn(o0),{div:s0||null,mod:M}},Z.prototype.divmod=function(l0,z,o0){if(Y(!l0.isZero()),this.isZero())return{div:new Z(0),mod:new Z(0)};var M,u0,S;return this.negative!==0&&l0.negative===0?(S=this.neg().divmod(l0,z),z!=="mod"&&(M=S.div.neg()),z!=="div"&&(u0=S.mod.neg(),o0&&u0.negative!==0&&u0.iadd(l0)),{div:M,mod:u0}):this.negative===0&&l0.negative!==0?(S=this.divmod(l0.neg(),z),z!=="mod"&&(M=S.div.neg()),{div:M,mod:S.mod}):(this.negative&l0.negative)!==0?(S=this.neg().divmod(l0.neg(),z),z!=="div"&&(u0=S.mod.neg(),o0&&u0.negative!==0&&u0.isub(l0)),{div:S.div,mod:u0}):l0.length>this.length||this.cmp(l0)<0?{div:new Z(0),mod:this}:l0.length===1?z==="div"?{div:this.divn(l0.words[0]),mod:null}:z==="mod"?{div:null,mod:new Z(this.modn(l0.words[0]))}:{div:this.divn(l0.words[0]),mod:new Z(this.modn(l0.words[0]))}:this._wordDiv(l0,z)},Z.prototype.div=function(l0){return this.divmod(l0,"div",!1).div},Z.prototype.mod=function(l0){return this.divmod(l0,"mod",!1).mod},Z.prototype.umod=function(l0){return this.divmod(l0,"mod",!0).mod},Z.prototype.divRound=function(l0){var z=this.divmod(l0);if(z.mod.isZero())return z.div;var o0=z.div.negative!==0?z.mod.isub(l0):z.mod,M=l0.ushrn(1),u0=l0.andln(1),S=o0.cmp(M);return S<0||u0===1&&S===0?z.div:z.div.negative!==0?z.div.isubn(1):z.div.iaddn(1)},Z.prototype.modn=function(l0){Y(l0<=67108863);for(var z=(1<<26)%l0,o0=0,M=this.length-1;M>=0;M--)o0=(z*o0+(this.words[M]|0))%l0;return o0},Z.prototype.idivn=function(l0){Y(l0<=67108863);for(var z=0,o0=this.length-1;o0>=0;o0--){var M=(this.words[o0]|0)+z*67108864;this.words[o0]=M/l0|0,z=M%l0}return this.strip()},Z.prototype.divn=function(l0){return this.clone().idivn(l0)},Z.prototype.egcd=function(l0){Y(l0.negative===0),Y(!l0.isZero());var z=this,o0=l0.clone();z.negative!==0?z=z.umod(l0):z=z.clone();for(var M=new Z(1),u0=new Z(0),S=new Z(0),n0=new Z(1),v=0;z.isEven()&&o0.isEven();)z.iushrn(1),o0.iushrn(1),++v;for(var s0=o0.clone(),I=z.clone();!z.isZero();){for(var t0=0,m0=1;(z.words[0]&m0)===0&&t0<26;++t0,m0<<=1);if(t0>0)for(z.iushrn(t0);t0-- >0;)(M.isOdd()||u0.isOdd())&&(M.iadd(s0),u0.isub(I)),M.iushrn(1),u0.iushrn(1);for(var a0=0,q=1;(o0.words[0]&q)===0&&a0<26;++a0,q<<=1);if(a0>0)for(o0.iushrn(a0);a0-- >0;)(S.isOdd()||n0.isOdd())&&(S.iadd(s0),n0.isub(I)),S.iushrn(1),n0.iushrn(1);z.cmp(o0)>=0?(z.isub(o0),M.isub(S),u0.isub(n0)):(o0.isub(z),S.isub(M),n0.isub(u0))}return{a:S,b:n0,gcd:o0.iushln(v)}},Z.prototype._invmp=function(l0){Y(l0.negative===0),Y(!l0.isZero());var z=this,o0=l0.clone();z.negative!==0?z=z.umod(l0):z=z.clone();for(var M=new Z(1),u0=new Z(0),S=o0.clone();z.cmpn(1)>0&&o0.cmpn(1)>0;){for(var n0=0,v=1;(z.words[0]&v)===0&&n0<26;++n0,v<<=1);if(n0>0)for(z.iushrn(n0);n0-- >0;)M.isOdd()&&M.iadd(S),M.iushrn(1);for(var s0=0,I=1;(o0.words[0]&I)===0&&s0<26;++s0,I<<=1);if(s0>0)for(o0.iushrn(s0);s0-- >0;)u0.isOdd()&&u0.iadd(S),u0.iushrn(1);z.cmp(o0)>=0?(z.isub(o0),M.isub(u0)):(o0.isub(z),u0.isub(M))}var t0;return z.cmpn(1)===0?t0=M:t0=u0,t0.cmpn(0)<0&&t0.iadd(l0),t0},Z.prototype.gcd=function(l0){if(this.isZero())return l0.abs();if(l0.isZero())return this.abs();var z=this.clone(),o0=l0.clone();z.negative=0,o0.negative=0;for(var M=0;z.isEven()&&o0.isEven();M++)z.iushrn(1),o0.iushrn(1);do{for(;z.isEven();)z.iushrn(1);for(;o0.isEven();)o0.iushrn(1);var u0=z.cmp(o0);if(u0<0){var S=z;z=o0,o0=S}else if(u0===0||o0.cmpn(1)===0)break;z.isub(o0)}while(!0);return o0.iushln(M)},Z.prototype.invm=function(l0){return this.egcd(l0).a.umod(l0)},Z.prototype.isEven=function(){return(this.words[0]&1)===0},Z.prototype.isOdd=function(){return(this.words[0]&1)===1},Z.prototype.andln=function(l0){return this.words[0]&l0},Z.prototype.bincn=function(l0){Y(typeof l0=="number");var z=l0%26,o0=(l0-z)/26,M=1<<z;if(this.length<=o0)return this._expand(o0+1),this.words[o0]|=M,this;for(var u0=M,S=o0;u0!==0&&S<this.length;S++){var n0=this.words[S]|0;n0+=u0,u0=n0>>>26,n0&=67108863,this.words[S]=n0}return u0!==0&&(this.words[S]=u0,this.length++),this},Z.prototype.isZero=function(){return this.length===1&&this.words[0]===0},Z.prototype.cmpn=function(l0){var z=l0<0;if(this.negative!==0&&!z)return-1;if(this.negative===0&&z)return 1;this.strip();var o0;if(this.length>1)o0=1;else{z&&(l0=-l0),Y(l0<=67108863,"Number is too big");var M=this.words[0]|0;o0=M===l0?0:M<l0?-1:1}return this.negative!==0?-o0|0:o0},Z.prototype.cmp=function(l0){if(this.negative!==0&&l0.negative===0)return-1;if(this.negative===0&&l0.negative!==0)return 1;var z=this.ucmp(l0);return this.negative!==0?-z|0:z},Z.prototype.ucmp=function(l0){if(this.length>l0.length)return 1;if(this.length<l0.length)return-1;for(var z=0,o0=this.length-1;o0>=0;o0--){var M=this.words[o0]|0,u0=l0.words[o0]|0;if(M!==u0){M<u0?z=-1:M>u0&&(z=1);break}}return z},Z.prototype.gtn=function(l0){return this.cmpn(l0)===1},Z.prototype.gt=function(l0){return this.cmp(l0)===1},Z.prototype.gten=function(l0){return this.cmpn(l0)>=0},Z.prototype.gte=function(l0){return this.cmp(l0)>=0},Z.prototype.ltn=function(l0){return this.cmpn(l0)===-1},Z.prototype.lt=function(l0){return this.cmp(l0)===-1},Z.prototype.lten=function(l0){return this.cmpn(l0)<=0},Z.prototype.lte=function(l0){return this.cmp(l0)<=0},Z.prototype.eqn=function(l0){return this.cmpn(l0)===0},Z.prototype.eq=function(l0){return this.cmp(l0)===0},Z.red=function(l0){return new b0(l0)},Z.prototype.toRed=function(l0){return Y(!this.red,"Already a number in reduction context"),Y(this.negative===0,"red works only with positives"),l0.convertTo(this)._forceRed(l0)},Z.prototype.fromRed=function(){return Y(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},Z.prototype._forceRed=function(l0){return this.red=l0,this},Z.prototype.forceRed=function(l0){return Y(!this.red,"Already a number in reduction context"),this._forceRed(l0)},Z.prototype.redAdd=function(l0){return Y(this.red,"redAdd works only with red numbers"),this.red.add(this,l0)},Z.prototype.redIAdd=function(l0){return Y(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,l0)},Z.prototype.redSub=function(l0){return Y(this.red,"redSub works only with red numbers"),this.red.sub(this,l0)},Z.prototype.redISub=function(l0){return Y(this.red,"redISub works only with red numbers"),this.red.isub(this,l0)},Z.prototype.redShl=function(l0){return Y(this.red,"redShl works only with red numbers"),this.red.shl(this,l0)},Z.prototype.redMul=function(l0){return Y(this.red,"redMul works only with red numbers"),this.red._verify2(this,l0),this.red.mul(this,l0)},Z.prototype.redIMul=function(l0){return Y(this.red,"redMul works only with red numbers"),this.red._verify2(this,l0),this.red.imul(this,l0)},Z.prototype.redSqr=function(){return Y(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},Z.prototype.redISqr=function(){return Y(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},Z.prototype.redSqrt=function(){return Y(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},Z.prototype.redInvm=function(){return Y(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},Z.prototype.redNeg=function(){return Y(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},Z.prototype.redPow=function(l0){return Y(this.red&&!l0.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,l0)};var c0={k256:null,p224:null,p192:null,p25519:null};function C(l0,z){this.name=l0,this.p=new Z(z,16),this.n=this.p.bitLength(),this.k=new Z(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}C.prototype._tmp=function(){var l0=new Z(null);return l0.words=new Array(Math.ceil(this.n/13)),l0},C.prototype.ireduce=function(l0){var z=l0,o0;do this.split(z,this.tmp),z=this.imulK(z),z=z.iadd(this.tmp),o0=z.bitLength();while(o0>this.n);var M=o0<this.n?-1:z.ucmp(this.p);return M===0?(z.words[0]=0,z.length=1):M>0?z.isub(this.p):z.strip!==void 0?z.strip():z._strip(),z},C.prototype.split=function(l0,z){l0.iushrn(this.n,0,z)},C.prototype.imulK=function(l0){return l0.imul(this.k)};function h0(){C.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}$(h0,C),h0.prototype.split=function(l0,z){for(var o0=4194303,M=Math.min(l0.length,9),u0=0;u0<M;u0++)z.words[u0]=l0.words[u0];if(z.length=M,l0.length<=9){l0.words[0]=0,l0.length=1;return}var S=l0.words[9];for(z.words[z.length++]=S&o0,u0=10;u0<l0.length;u0++){var n0=l0.words[u0]|0;l0.words[u0-10]=(n0&o0)<<4|S>>>22,S=n0}S>>>=22,l0.words[u0-10]=S,S===0&&l0.length>10?l0.length-=10:l0.length-=9},h0.prototype.imulK=function(l0){l0.words[l0.length]=0,l0.words[l0.length+1]=0,l0.length+=2;for(var z=0,o0=0;o0<l0.length;o0++){var M=l0.words[o0]|0;z+=M*977,l0.words[o0]=z&67108863,z=M*64+(z/67108864|0)}return l0.words[l0.length-1]===0&&(l0.length--,l0.words[l0.length-1]===0&&l0.length--),l0};function L(){C.call(this,"p224","ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001")}$(L,C);function d0(){C.call(this,"p192","ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff")}$(d0,C);function R(){C.call(this,"25519","7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed")}$(R,C),R.prototype.imulK=function(l0){for(var z=0,o0=0;o0<l0.length;o0++){var M=(l0.words[o0]|0)*19+z,u0=M&67108863;M>>>=26,l0.words[o0]=u0,z=M}return z!==0&&(l0.words[l0.length++]=z),l0},Z._prime=function(l0){if(c0[l0])return c0[l0];var z;if(l0==="k256")z=new h0;else if(l0==="p224")z=new L;else if(l0==="p192")z=new d0;else if(l0==="p25519")z=new R;else throw new Error("Unknown prime "+l0);return c0[l0]=z,z};function b0(l0){if(typeof l0=="string"){var z=Z._prime(l0);this.m=z.p,this.prime=z}else Y(l0.gtn(1),"modulus must be greater than 1"),this.m=l0,this.prime=null}b0.prototype._verify1=function(l0){Y(l0.negative===0,"red works only with positives"),Y(l0.red,"red works only with red numbers")},b0.prototype._verify2=function(l0,z){Y((l0.negative|z.negative)===0,"red works only with positives"),Y(l0.red&&l0.red===z.red,"red works only with red numbers")},b0.prototype.imod=function(l0){return this.prime?this.prime.ireduce(l0)._forceRed(this):l0.umod(this.m)._forceRed(this)},b0.prototype.neg=function(l0){return l0.isZero()?l0.clone():this.m.sub(l0)._forceRed(this)},b0.prototype.add=function(l0,z){this._verify2(l0,z);var o0=l0.add(z);return o0.cmp(this.m)>=0&&o0.isub(this.m),o0._forceRed(this)},b0.prototype.iadd=function(l0,z){this._verify2(l0,z);var o0=l0.iadd(z);return o0.cmp(this.m)>=0&&o0.isub(this.m),o0},b0.prototype.sub=function(l0,z){this._verify2(l0,z);var o0=l0.sub(z);return o0.cmpn(0)<0&&o0.iadd(this.m),o0._forceRed(this)},b0.prototype.isub=function(l0,z){this._verify2(l0,z);var o0=l0.isub(z);return o0.cmpn(0)<0&&o0.iadd(this.m),o0},b0.prototype.shl=function(l0,z){return this._verify1(l0),this.imod(l0.ushln(z))},b0.prototype.imul=function(l0,z){return this._verify2(l0,z),this.imod(l0.imul(z))},b0.prototype.mul=function(l0,z){return this._verify2(l0,z),this.imod(l0.mul(z))},b0.prototype.isqr=function(l0){return this.imul(l0,l0.clone())},b0.prototype.sqr=function(l0){return this.mul(l0,l0)},b0.prototype.sqrt=function(l0){if(l0.isZero())return l0.clone();var z=this.m.andln(3);if(Y(z%2===1),z===3){var o0=this.m.add(new Z(1)).iushrn(2);return this.pow(l0,o0)}for(var M=this.m.subn(1),u0=0;!M.isZero()&&M.andln(1)===0;)u0++,M.iushrn(1);Y(!M.isZero());var S=new Z(1).toRed(this),n0=S.redNeg(),v=this.m.subn(1).iushrn(1),s0=this.m.bitLength();for(s0=new Z(2*s0*s0).toRed(this);this.pow(s0,v).cmp(n0)!==0;)s0.redIAdd(n0);for(var I=this.pow(s0,M),t0=this.pow(l0,M.addn(1).iushrn(1)),m0=this.pow(l0,M),a0=u0;m0.cmp(S)!==0;){for(var q=m0,e0=0;q.cmp(S)!==0;e0++)q=q.redSqr();Y(e0<a0);var r0=this.pow(I,new Z(1).iushln(a0-e0-1));t0=t0.redMul(r0),I=r0.redSqr(),m0=m0.redMul(I),a0=e0}return t0},b0.prototype.invm=function(l0){var z=l0._invmp(this.m);return z.negative!==0?(z.negative=0,this.imod(z).redNeg()):this.imod(z)},b0.prototype.pow=function(l0,z){if(z.isZero())return new Z(1).toRed(this);if(z.cmpn(1)===0)return l0.clone();var o0=4,M=new Array(1<<o0);M[0]=new Z(1).toRed(this),M[1]=l0;for(var u0=2;u0<M.length;u0++)M[u0]=this.mul(M[u0-1],l0);var S=M[0],n0=0,v=0,s0=z.bitLength()%26;for(s0===0&&(s0=26),u0=z.length-1;u0>=0;u0--){for(var I=z.words[u0],t0=s0-1;t0>=0;t0--){var m0=I>>t0&1;if(S!==M[0]&&(S=this.sqr(S)),m0===0&&n0===0){v=0;continue}n0<<=1,n0|=m0,v++,!(v!==o0&&(u0!==0||t0!==0))&&(S=this.mul(S,M[n0]),v=0,n0=0)}s0=26}return S},b0.prototype.convertTo=function(l0){var z=l0.umod(this.m);return z===l0?z.clone():z},b0.prototype.convertFrom=function(l0){var z=l0.clone();return z.red=null,z},Z.mont=function(l0){return new P(l0)};function P(l0){b0.call(this,l0),this.shift=this.m.bitLength(),this.shift%26!==0&&(this.shift+=26-this.shift%26),this.r=new Z(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)}$(P,b0),P.prototype.convertTo=function(l0){return this.imod(l0.ushln(this.shift))},P.prototype.convertFrom=function(l0){var z=this.imod(l0.mul(this.rinv));return z.red=null,z},P.prototype.imul=function(l0,z){if(l0.isZero()||z.isZero())return l0.words[0]=0,l0.length=1,l0;var o0=l0.imul(z),M=o0.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),u0=o0.isub(M).iushrn(this.shift),S=u0;return u0.cmp(this.m)>=0?S=u0.isub(this.m):u0.cmpn(0)<0&&(S=u0.iadd(this.m)),S._forceRed(this)},P.prototype.mul=function(l0,z){if(l0.isZero()||z.isZero())return new Z(0)._forceRed(this);var o0=l0.mul(z),M=o0.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),u0=o0.isub(M).iushrn(this.shift),S=u0;return u0.cmp(this.m)>=0?S=u0.isub(this.m):u0.cmpn(0)<0&&(S=u0.iadd(this.m)),S._forceRed(this)},P.prototype.invm=function(l0){var z=this.imod(l0._invmp(this.m).mul(this.r2));return z._forceRed(this)}})(typeof K>"u"||K,X)}}),lY=$Q({"node_modules/create-ecdh/browser.js"(X,K){var x0=TY(),G=bY();K.exports=function(Q){return new $(Q)};var Y={secp256k1:{name:"secp256k1",byteLength:32},secp224r1:{name:"p224",byteLength:28},prime256v1:{name:"p256",byteLength:32},prime192v1:{name:"p192",byteLength:24},ed25519:{name:"ed25519",byteLength:32},secp384r1:{name:"p384",byteLength:48},secp521r1:{name:"p521",byteLength:66}};Y.p224=Y.secp224r1,Y.p256=Y.secp256r1=Y.prime256v1,Y.p192=Y.secp192r1=Y.prime192v1,Y.p384=Y.secp384r1,Y.p521=Y.secp521r1;function $(Q){this.curveType=Y[Q],this.curveType||(this.curveType={name:Q}),this.curve=new x0.ec(this.curveType.name),this.keys=void 0}$.prototype.generateKeys=function(Q,U){return this.keys=this.curve.genKeyPair(),this.getPublicKey(Q,U)},$.prototype.computeSecret=function(Q,U,V){U=U||"utf8",c$.isBuffer(Q)||(Q=new c$(Q,U));var B0=this.curve.keyFromPublic(Q).getPublic(),H=B0.mul(this.keys.getPrivate()).getX();return Z(H,V,this.curveType.byteLength)},$.prototype.getPublicKey=function(Q,U){var V=this.keys.getPublic(U==="compressed",!0);return U==="hybrid"&&(V[V.length-1]%2?V[0]=7:V[0]=6),Z(V,Q)},$.prototype.getPrivateKey=function(Q){return Z(this.keys.getPrivate(),Q)},$.prototype.setPublicKey=function(Q,U){return U=U||"utf8",c$.isBuffer(Q)||(Q=new c$(Q,U)),this.keys._importPublic(Q),this},$.prototype.setPrivateKey=function(Q,U){U=U||"utf8",c$.isBuffer(Q)||(Q=new c$(Q,U));var V=new G(Q);return V=V.toString(16),this.keys=this.curve.genKeyPair(),this.keys._importPrivate(V),this};function Z(Q,U,V){Array.isArray(Q)||(Q=Q.toArray());var B0=new c$(Q);if(V&&B0.length<V){var H=new c$(V-B0.length);H.fill(0),B0=c$.concat([H,B0])}return U?B0.toString(U):B0}}}),oY=$Q({"node_modules/public-encrypt/mgf.js"(X,K){var x0=L0(),G=YQ().Buffer;K.exports=function($,Z){for(var Q=G.alloc(0),U=0,V;Q.length<Z;)V=Y(U++),Q=G.concat([Q,x0("sha1").update($).update(V).digest()]);return Q.slice(0,Z)};function Y($){var Z=G.allocUnsafe(4);return Z.writeUInt32BE($,0),Z}}}),uY=$Q({"node_modules/public-encrypt/xor.js"(X,K){K.exports=function(x0,G){for(var Y=x0.length,$=-1;++$<Y;)x0[$]^=G[$];return x0}}}),nY=$Q({"node_modules/public-encrypt/node_modules/bn.js/lib/bn.js"(X,K){(function(x0,G){function Y(l0,z){if(!l0)throw new Error(z||"Assertion failed")}function $(l0,z){l0.super_=z;var o0=function(){};o0.prototype=z.prototype,l0.prototype=new o0,l0.prototype.constructor=l0}function Z(l0,z,o0){if(Z.isBN(l0))return l0;this.negative=0,this.words=null,this.length=0,this.red=null,l0!==null&&((z==="le"||z==="be")&&(o0=z,z=10),this._init(l0||0,z||10,o0||"be"))}typeof x0=="object"?x0.exports=Z:G.BN=Z,Z.BN=Z,Z.wordSize=26;var Q=globalThis.Buffer;Z.isBN=function(l0){return l0 instanceof Z?!0:l0!==null&&typeof l0=="object"&&l0.constructor.wordSize===Z.wordSize&&Array.isArray(l0.words)},Z.max=function(l0,z){return l0.cmp(z)>0?l0:z},Z.min=function(l0,z){return l0.cmp(z)<0?l0:z},Z.prototype._init=function(l0,z,o0){if(typeof l0=="number")return this._initNumber(l0,z,o0);if(typeof l0=="object")return this._initArray(l0,z,o0);z==="hex"&&(z=16),Y(z===(z|0)&&z>=2&&z<=36),l0=l0.toString().replace(/\s+/g,"");var M=0;l0[0]==="-"&&(M++,this.negative=1),M<l0.length&&(z===16?this._parseHex(l0,M,o0):(this._parseBase(l0,z,M),o0==="le"&&this._initArray(this.toArray(),z,o0)))},Z.prototype._initNumber=function(l0,z,o0){l0<0&&(this.negative=1,l0=-l0),l0<67108864?(this.words=[l0&67108863],this.length=1):l0<4503599627370496?(this.words=[l0&67108863,l0/67108864&67108863],this.length=2):(Y(l0<9007199254740992),this.words=[l0&67108863,l0/67108864&67108863,1],this.length=3),o0==="le"&&this._initArray(this.toArray(),z,o0)},Z.prototype._initArray=function(l0,z,o0){if(Y(typeof l0.length=="number"),l0.length<=0)return this.words=[0],this.length=1,this;this.length=Math.ceil(l0.length/3),this.words=new Array(this.length);for(var M=0;M<this.length;M++)this.words[M]=0;var u0,S,n0=0;if(o0==="be")for(M=l0.length-1,u0=0;M>=0;M-=3)S=l0[M]|l0[M-1]<<8|l0[M-2]<<16,this.words[u0]|=S<<n0&67108863,this.words[u0+1]=S>>>26-n0&67108863,n0+=24,n0>=26&&(n0-=26,u0++);else if(o0==="le")for(M=0,u0=0;M<l0.length;M+=3)S=l0[M]|l0[M+1]<<8|l0[M+2]<<16,this.words[u0]|=S<<n0&67108863,this.words[u0+1]=S>>>26-n0&67108863,n0+=24,n0>=26&&(n0-=26,u0++);return this.strip()};function U(l0,z){var o0=l0.charCodeAt(z);return o0>=65&&o0<=70?o0-55:o0>=97&&o0<=102?o0-87:o0-48&15}function V(l0,z,o0){var M=U(l0,o0);return o0-1>=z&&(M|=U(l0,o0-1)<<4),M}Z.prototype._parseHex=function(l0,z,o0){this.length=Math.ceil((l0.length-z)/6),this.words=new Array(this.length);for(var M=0;M<this.length;M++)this.words[M]=0;var u0=0,S=0,n0;if(o0==="be")for(M=l0.length-1;M>=z;M-=2)n0=V(l0,z,M)<<u0,this.words[S]|=n0&67108863,u0>=18?(u0-=18,S+=1,this.words[S]|=n0>>>26):u0+=8;else{var v=l0.length-z;for(M=v%2===0?z+1:z;M<l0.length;M+=2)n0=V(l0,z,M)<<u0,this.words[S]|=n0&67108863,u0>=18?(u0-=18,S+=1,this.words[S]|=n0>>>26):u0+=8}this.strip()};function B0(l0,z,o0,M){for(var u0=0,S=Math.min(l0.length,o0),n0=z;n0<S;n0++){var v=l0.charCodeAt(n0)-48;u0*=M,v>=49?u0+=v-49+10:v>=17?u0+=v-17+10:u0+=v}return u0}Z.prototype._parseBase=function(l0,z,o0){this.words=[0],this.length=1;for(var M=0,u0=1;u0<=67108863;u0*=z)M++;M--,u0=u0/z|0;for(var S=l0.length-o0,n0=S%M,v=Math.min(S,S-n0)+o0,s0=0,I=o0;I<v;I+=M)s0=B0(l0,I,I+M,z),this.imuln(u0),this.words[0]+s0<67108864?this.words[0]+=s0:this._iaddn(s0);if(n0!==0){var t0=1;for(s0=B0(l0,I,l0.length,z),I=0;I<n0;I++)t0*=z;this.imuln(t0),this.words[0]+s0<67108864?this.words[0]+=s0:this._iaddn(s0)}this.strip()},Z.prototype.copy=function(l0){l0.words=new Array(this.length);for(var z=0;z<this.length;z++)l0.words[z]=this.words[z];l0.length=this.length,l0.negative=this.negative,l0.red=this.red},Z.prototype.clone=function(){var l0=new Z(null);return this.copy(l0),l0},Z.prototype._expand=function(l0){for(;this.length<l0;)this.words[this.length++]=0;return this},Z.prototype.strip=function(){for(;this.length>1&&this.words[this.length-1]===0;)this.length--;return this._normSign()},Z.prototype._normSign=function(){return this.length===1&&this.words[0]===0&&(this.negative=0),this},Z.prototype.inspect=function(){return(this.red?"<BN-R: ":"<BN: ")+this.toString(16)+">"};var H=["","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"],y0=[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],W=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64000000,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,24300000,28629151,33554432,39135393,45435424,52521875,60466176];Z.prototype.toString=function(l0,z){l0=l0||10,z=z|0||1;var o0;if(l0===16||l0==="hex"){o0="";for(var M=0,u0=0,S=0;S<this.length;S++){var n0=this.words[S],v=((n0<<M|u0)&16777215).toString(16);u0=n0>>>24-M&16777215,u0!==0||S!==this.length-1?o0=H[6-v.length]+v+o0:o0=v+o0,M+=2,M>=26&&(M-=26,S--)}for(u0!==0&&(o0=u0.toString(16)+o0);o0.length%z!==0;)o0="0"+o0;return this.negative!==0&&(o0="-"+o0),o0}if(l0===(l0|0)&&l0>=2&&l0<=36){var s0=y0[l0],I=W[l0];o0="";var t0=this.clone();for(t0.negative=0;!t0.isZero();){var m0=t0.modn(I).toString(l0);t0=t0.idivn(I),t0.isZero()?o0=m0+o0:o0=H[s0-m0.length]+m0+o0}for(this.isZero()&&(o0="0"+o0);o0.length%z!==0;)o0="0"+o0;return this.negative!==0&&(o0="-"+o0),o0}Y(!1,"Base should be between 2 and 36")},Z.prototype.toNumber=function(){var l0=this.words[0];return this.length===2?l0+=this.words[1]*67108864:this.length===3&&this.words[2]===1?l0+=4503599627370496+this.words[1]*67108864:this.length>2&&Y(!1,"Number can only safely store up to 53 bits"),this.negative!==0?-l0:l0},Z.prototype.toJSON=function(){return this.toString(16)},Z.prototype.toBuffer=function(l0,z){return Y(typeof Q<"u"),this.toArrayLike(Q,l0,z)},Z.prototype.toArray=function(l0,z){return this.toArrayLike(Array,l0,z)},Z.prototype.toArrayLike=function(l0,z,o0){var M=this.byteLength(),u0=o0||Math.max(1,M);Y(M<=u0,"byte array longer than desired length"),Y(u0>0,"Requested array length <= 0"),this.strip();var S=z==="le",n0=new l0(u0),v,s0,I=this.clone();if(S){for(s0=0;!I.isZero();s0++)v=I.andln(255),I.iushrn(8),n0[s0]=v;for(;s0<u0;s0++)n0[s0]=0}else{for(s0=0;s0<u0-M;s0++)n0[s0]=0;for(s0=0;!I.isZero();s0++)v=I.andln(255),I.iushrn(8),n0[u0-s0-1]=v}return n0},Math.clz32?Z.prototype._countBits=function(l0){return 32-Math.clz32(l0)}:Z.prototype._countBits=function(l0){var z=l0,o0=0;return z>=4096&&(o0+=13,z>>>=13),z>=64&&(o0+=7,z>>>=7),z>=8&&(o0+=4,z>>>=4),z>=2&&(o0+=2,z>>>=2),o0+z},Z.prototype._zeroBits=function(l0){if(l0===0)return 26;var z=l0,o0=0;return(z&8191)===0&&(o0+=13,z>>>=13),(z&127)===0&&(o0+=7,z>>>=7),(z&15)===0&&(o0+=4,z>>>=4),(z&3)===0&&(o0+=2,z>>>=2),(z&1)===0&&o0++,o0},Z.prototype.bitLength=function(){var l0=this.words[this.length-1],z=this._countBits(l0);return(this.length-1)*26+z};function w0(l0){for(var z=new Array(l0.bitLength()),o0=0;o0<z.length;o0++){var M=o0/26|0,u0=o0%26;z[o0]=(l0.words[M]&1<<u0)>>>u0}return z}Z.prototype.zeroBits=function(){if(this.isZero())return 0;for(var l0=0,z=0;z<this.length;z++){var o0=this._zeroBits(this.words[z]);if(l0+=o0,o0!==26)break}return l0},Z.prototype.byteLength=function(){return Math.ceil(this.bitLength()/8)},Z.prototype.toTwos=function(l0){return this.negative!==0?this.abs().inotn(l0).iaddn(1):this.clone()},Z.prototype.fromTwos=function(l0){return this.testn(l0-1)?this.notn(l0).iaddn(1).ineg():this.clone()},Z.prototype.isNeg=function(){return this.negative!==0},Z.prototype.neg=function(){return this.clone().ineg()},Z.prototype.ineg=function(){return this.isZero()||(this.negative^=1),this},Z.prototype.iuor=function(l0){for(;this.length<l0.length;)this.words[this.length++]=0;for(var z=0;z<l0.length;z++)this.words[z]=this.words[z]|l0.words[z];return this.strip()},Z.prototype.ior=function(l0){return Y((this.negative|l0.negative)===0),this.iuor(l0)},Z.prototype.or=function(l0){return this.length>l0.length?this.clone().ior(l0):l0.clone().ior(this)},Z.prototype.uor=function(l0){return this.length>l0.length?this.clone().iuor(l0):l0.clone().iuor(this)},Z.prototype.iuand=function(l0){var z;this.length>l0.length?z=l0:z=this;for(var o0=0;o0<z.length;o0++)this.words[o0]=this.words[o0]&l0.words[o0];return this.length=z.length,this.strip()},Z.prototype.iand=function(l0){return Y((this.negative|l0.negative)===0),this.iuand(l0)},Z.prototype.and=function(l0){return this.length>l0.length?this.clone().iand(l0):l0.clone().iand(this)},Z.prototype.uand=function(l0){return this.length>l0.length?this.clone().iuand(l0):l0.clone().iuand(this)},Z.prototype.iuxor=function(l0){var z,o0;this.length>l0.length?(z=this,o0=l0):(z=l0,o0=this);for(var M=0;M<o0.length;M++)this.words[M]=z.words[M]^o0.words[M];if(this!==z)for(;M<z.length;M++)this.words[M]=z.words[M];return this.length=z.length,this.strip()},Z.prototype.ixor=function(l0){return Y((this.negative|l0.negative)===0),this.iuxor(l0)},Z.prototype.xor=function(l0){return this.length>l0.length?this.clone().ixor(l0):l0.clone().ixor(this)},Z.prototype.uxor=function(l0){return this.length>l0.length?this.clone().iuxor(l0):l0.clone().iuxor(this)},Z.prototype.inotn=function(l0){Y(typeof l0=="number"&&l0>=0);var z=Math.ceil(l0/26)|0,o0=l0%26;this._expand(z),o0>0&&z--;for(var M=0;M<z;M++)this.words[M]=~this.words[M]&67108863;return o0>0&&(this.words[M]=~this.words[M]&67108863>>26-o0),this.strip()},Z.prototype.notn=function(l0){return this.clone().inotn(l0)},Z.prototype.setn=function(l0,z){Y(typeof l0=="number"&&l0>=0);var o0=l0/26|0,M=l0%26;return this._expand(o0+1),z?this.words[o0]=this.words[o0]|1<<M:this.words[o0]=this.words[o0]&~(1<<M),this.strip()},Z.prototype.iadd=function(l0){var z;if(this.negative!==0&&l0.negative===0)return this.negative=0,z=this.isub(l0),this.negative^=1,this._normSign();if(this.negative===0&&l0.negative!==0)return l0.negative=0,z=this.isub(l0),l0.negative=1,z._normSign();var o0,M;this.length>l0.length?(o0=this,M=l0):(o0=l0,M=this);for(var u0=0,S=0;S<M.length;S++)z=(o0.words[S]|0)+(M.words[S]|0)+u0,this.words[S]=z&67108863,u0=z>>>26;for(;u0!==0&&S<o0.length;S++)z=(o0.words[S]|0)+u0,this.words[S]=z&67108863,u0=z>>>26;if(this.length=o0.length,u0!==0)this.words[this.length]=u0,this.length++;else if(o0!==this)for(;S<o0.length;S++)this.words[S]=o0.words[S];return this},Z.prototype.add=function(l0){var z;return l0.negative!==0&&this.negative===0?(l0.negative=0,z=this.sub(l0),l0.negative^=1,z):l0.negative===0&&this.negative!==0?(this.negative=0,z=l0.sub(this),this.negative=1,z):this.length>l0.length?this.clone().iadd(l0):l0.clone().iadd(this)},Z.prototype.isub=function(l0){if(l0.negative!==0){l0.negative=0;var z=this.iadd(l0);return l0.negative=1,z._normSign()}else if(this.negative!==0)return this.negative=0,this.iadd(l0),this.negative=1,this._normSign();var o0=this.cmp(l0);if(o0===0)return this.negative=0,this.length=1,this.words[0]=0,this;var M,u0;o0>0?(M=this,u0=l0):(M=l0,u0=this);for(var S=0,n0=0;n0<u0.length;n0++)z=(M.words[n0]|0)-(u0.words[n0]|0)+S,S=z>>26,this.words[n0]=z&67108863;for(;S!==0&&n0<M.length;n0++)z=(M.words[n0]|0)+S,S=z>>26,this.words[n0]=z&67108863;if(S===0&&n0<M.length&&M!==this)for(;n0<M.length;n0++)this.words[n0]=M.words[n0];return this.length=Math.max(this.length,n0),M!==this&&(this.negative=1),this.strip()},Z.prototype.sub=function(l0){return this.clone().isub(l0)};function E(l0,z,o0){o0.negative=z.negative^l0.negative;var M=l0.length+z.length|0;o0.length=M,M=M-1|0;var u0=l0.words[0]|0,S=z.words[0]|0,n0=u0*S,v=n0&67108863,s0=n0/67108864|0;o0.words[0]=v;for(var I=1;I<M;I++){for(var t0=s0>>>26,m0=s0&67108863,a0=Math.min(I,z.length-1),q=Math.max(0,I-l0.length+1);q<=a0;q++){var e0=I-q|0;u0=l0.words[e0]|0,S=z.words[q]|0,n0=u0*S+m0,t0+=n0/67108864|0,m0=n0&67108863}o0.words[I]=m0|0,s0=t0|0}return s0!==0?o0.words[I]=s0|0:o0.length--,o0.strip()}var p0=function(l0,z,o0){var M=l0.words,u0=z.words,S=o0.words,n0=0,v,s0,I,t0=M[0]|0,m0=t0&8191,a0=t0>>>13,q=M[1]|0,e0=q&8191,r0=q>>>13,i0=M[2]|0,j=i0&8191,$$=i0>>>13,k=M[3]|0,Q$=k&8191,g=k>>>13,Y$=M[4]|0,_=Y$&8191,Z$=Y$>>>13,N=M[5]|0,G$=N&8191,x=N>>>13,V$=M[6]|0,B=V$&8191,U$=V$>>>13,y=M[7]|0,X$=y&8191,w=y>>>13,K$=M[8]|0,p=K$&8191,I$=K$>>>13,f=M[9]|0,O$=f&8191,c=f>>>13,J$=u0[0]|0,h=J$&8191,F$=J$>>>13,d=u0[1]|0,A$=d&8191,b=d>>>13,H$=u0[2]|0,l=H$&8191,W$=H$>>>13,o=u0[3]|0,E$=o&8191,u=o>>>13,T$=u0[4]|0,n=T$&8191,D$=T$>>>13,s=u0[5]|0,C$=s&8191,t=s>>>13,L$=u0[6]|0,m=L$&8191,R$=L$>>>13,a=u0[7]|0,P$=a&8191,O=a>>>13,z$=u0[8]|0,e=z$&8191,M$=z$>>>13,J=u0[9]|0,S$=J&8191,F=J>>>13;o0.negative=l0.negative^z.negative,o0.length=19,v=Math.imul(m0,h),s0=Math.imul(m0,F$),s0=s0+Math.imul(a0,h)|0,I=Math.imul(a0,F$);var v$=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(v$>>>26)|0,v$&=67108863,v=Math.imul(e0,h),s0=Math.imul(e0,F$),s0=s0+Math.imul(r0,h)|0,I=Math.imul(r0,F$),v=v+Math.imul(m0,A$)|0,s0=s0+Math.imul(m0,b)|0,s0=s0+Math.imul(a0,A$)|0,I=I+Math.imul(a0,b)|0;var r=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(r>>>26)|0,r&=67108863,v=Math.imul(j,h),s0=Math.imul(j,F$),s0=s0+Math.imul($$,h)|0,I=Math.imul($$,F$),v=v+Math.imul(e0,A$)|0,s0=s0+Math.imul(e0,b)|0,s0=s0+Math.imul(r0,A$)|0,I=I+Math.imul(r0,b)|0,v=v+Math.imul(m0,l)|0,s0=s0+Math.imul(m0,W$)|0,s0=s0+Math.imul(a0,l)|0,I=I+Math.imul(a0,W$)|0;var q$=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(q$>>>26)|0,q$&=67108863,v=Math.imul(Q$,h),s0=Math.imul(Q$,F$),s0=s0+Math.imul(g,h)|0,I=Math.imul(g,F$),v=v+Math.imul(j,A$)|0,s0=s0+Math.imul(j,b)|0,s0=s0+Math.imul($$,A$)|0,I=I+Math.imul($$,b)|0,v=v+Math.imul(e0,l)|0,s0=s0+Math.imul(e0,W$)|0,s0=s0+Math.imul(r0,l)|0,I=I+Math.imul(r0,W$)|0,v=v+Math.imul(m0,E$)|0,s0=s0+Math.imul(m0,u)|0,s0=s0+Math.imul(a0,E$)|0,I=I+Math.imul(a0,u)|0;var i=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(i>>>26)|0,i&=67108863,v=Math.imul(_,h),s0=Math.imul(_,F$),s0=s0+Math.imul(Z$,h)|0,I=Math.imul(Z$,F$),v=v+Math.imul(Q$,A$)|0,s0=s0+Math.imul(Q$,b)|0,s0=s0+Math.imul(g,A$)|0,I=I+Math.imul(g,b)|0,v=v+Math.imul(j,l)|0,s0=s0+Math.imul(j,W$)|0,s0=s0+Math.imul($$,l)|0,I=I+Math.imul($$,W$)|0,v=v+Math.imul(e0,E$)|0,s0=s0+Math.imul(e0,u)|0,s0=s0+Math.imul(r0,E$)|0,I=I+Math.imul(r0,u)|0,v=v+Math.imul(m0,n)|0,s0=s0+Math.imul(m0,D$)|0,s0=s0+Math.imul(a0,n)|0,I=I+Math.imul(a0,D$)|0;var j$=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(j$>>>26)|0,j$&=67108863,v=Math.imul(G$,h),s0=Math.imul(G$,F$),s0=s0+Math.imul(x,h)|0,I=Math.imul(x,F$),v=v+Math.imul(_,A$)|0,s0=s0+Math.imul(_,b)|0,s0=s0+Math.imul(Z$,A$)|0,I=I+Math.imul(Z$,b)|0,v=v+Math.imul(Q$,l)|0,s0=s0+Math.imul(Q$,W$)|0,s0=s0+Math.imul(g,l)|0,I=I+Math.imul(g,W$)|0,v=v+Math.imul(j,E$)|0,s0=s0+Math.imul(j,u)|0,s0=s0+Math.imul($$,E$)|0,I=I+Math.imul($$,u)|0,v=v+Math.imul(e0,n)|0,s0=s0+Math.imul(e0,D$)|0,s0=s0+Math.imul(r0,n)|0,I=I+Math.imul(r0,D$)|0,v=v+Math.imul(m0,C$)|0,s0=s0+Math.imul(m0,t)|0,s0=s0+Math.imul(a0,C$)|0,I=I+Math.imul(a0,t)|0;var k$=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(k$>>>26)|0,k$&=67108863,v=Math.imul(B,h),s0=Math.imul(B,F$),s0=s0+Math.imul(U$,h)|0,I=Math.imul(U$,F$),v=v+Math.imul(G$,A$)|0,s0=s0+Math.imul(G$,b)|0,s0=s0+Math.imul(x,A$)|0,I=I+Math.imul(x,b)|0,v=v+Math.imul(_,l)|0,s0=s0+Math.imul(_,W$)|0,s0=s0+Math.imul(Z$,l)|0,I=I+Math.imul(Z$,W$)|0,v=v+Math.imul(Q$,E$)|0,s0=s0+Math.imul(Q$,u)|0,s0=s0+Math.imul(g,E$)|0,I=I+Math.imul(g,u)|0,v=v+Math.imul(j,n)|0,s0=s0+Math.imul(j,D$)|0,s0=s0+Math.imul($$,n)|0,I=I+Math.imul($$,D$)|0,v=v+Math.imul(e0,C$)|0,s0=s0+Math.imul(e0,t)|0,s0=s0+Math.imul(r0,C$)|0,I=I+Math.imul(r0,t)|0,v=v+Math.imul(m0,m)|0,s0=s0+Math.imul(m0,R$)|0,s0=s0+Math.imul(a0,m)|0,I=I+Math.imul(a0,R$)|0;var g$=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(g$>>>26)|0,g$&=67108863,v=Math.imul(X$,h),s0=Math.imul(X$,F$),s0=s0+Math.imul(w,h)|0,I=Math.imul(w,F$),v=v+Math.imul(B,A$)|0,s0=s0+Math.imul(B,b)|0,s0=s0+Math.imul(U$,A$)|0,I=I+Math.imul(U$,b)|0,v=v+Math.imul(G$,l)|0,s0=s0+Math.imul(G$,W$)|0,s0=s0+Math.imul(x,l)|0,I=I+Math.imul(x,W$)|0,v=v+Math.imul(_,E$)|0,s0=s0+Math.imul(_,u)|0,s0=s0+Math.imul(Z$,E$)|0,I=I+Math.imul(Z$,u)|0,v=v+Math.imul(Q$,n)|0,s0=s0+Math.imul(Q$,D$)|0,s0=s0+Math.imul(g,n)|0,I=I+Math.imul(g,D$)|0,v=v+Math.imul(j,C$)|0,s0=s0+Math.imul(j,t)|0,s0=s0+Math.imul($$,C$)|0,I=I+Math.imul($$,t)|0,v=v+Math.imul(e0,m)|0,s0=s0+Math.imul(e0,R$)|0,s0=s0+Math.imul(r0,m)|0,I=I+Math.imul(r0,R$)|0,v=v+Math.imul(m0,P$)|0,s0=s0+Math.imul(m0,O)|0,s0=s0+Math.imul(a0,P$)|0,I=I+Math.imul(a0,O)|0;var _$=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(_$>>>26)|0,_$&=67108863,v=Math.imul(p,h),s0=Math.imul(p,F$),s0=s0+Math.imul(I$,h)|0,I=Math.imul(I$,F$),v=v+Math.imul(X$,A$)|0,s0=s0+Math.imul(X$,b)|0,s0=s0+Math.imul(w,A$)|0,I=I+Math.imul(w,b)|0,v=v+Math.imul(B,l)|0,s0=s0+Math.imul(B,W$)|0,s0=s0+Math.imul(U$,l)|0,I=I+Math.imul(U$,W$)|0,v=v+Math.imul(G$,E$)|0,s0=s0+Math.imul(G$,u)|0,s0=s0+Math.imul(x,E$)|0,I=I+Math.imul(x,u)|0,v=v+Math.imul(_,n)|0,s0=s0+Math.imul(_,D$)|0,s0=s0+Math.imul(Z$,n)|0,I=I+Math.imul(Z$,D$)|0,v=v+Math.imul(Q$,C$)|0,s0=s0+Math.imul(Q$,t)|0,s0=s0+Math.imul(g,C$)|0,I=I+Math.imul(g,t)|0,v=v+Math.imul(j,m)|0,s0=s0+Math.imul(j,R$)|0,s0=s0+Math.imul($$,m)|0,I=I+Math.imul($$,R$)|0,v=v+Math.imul(e0,P$)|0,s0=s0+Math.imul(e0,O)|0,s0=s0+Math.imul(r0,P$)|0,I=I+Math.imul(r0,O)|0,v=v+Math.imul(m0,e)|0,s0=s0+Math.imul(m0,M$)|0,s0=s0+Math.imul(a0,e)|0,I=I+Math.imul(a0,M$)|0;var N$=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(N$>>>26)|0,N$&=67108863,v=Math.imul(O$,h),s0=Math.imul(O$,F$),s0=s0+Math.imul(c,h)|0,I=Math.imul(c,F$),v=v+Math.imul(p,A$)|0,s0=s0+Math.imul(p,b)|0,s0=s0+Math.imul(I$,A$)|0,I=I+Math.imul(I$,b)|0,v=v+Math.imul(X$,l)|0,s0=s0+Math.imul(X$,W$)|0,s0=s0+Math.imul(w,l)|0,I=I+Math.imul(w,W$)|0,v=v+Math.imul(B,E$)|0,s0=s0+Math.imul(B,u)|0,s0=s0+Math.imul(U$,E$)|0,I=I+Math.imul(U$,u)|0,v=v+Math.imul(G$,n)|0,s0=s0+Math.imul(G$,D$)|0,s0=s0+Math.imul(x,n)|0,I=I+Math.imul(x,D$)|0,v=v+Math.imul(_,C$)|0,s0=s0+Math.imul(_,t)|0,s0=s0+Math.imul(Z$,C$)|0,I=I+Math.imul(Z$,t)|0,v=v+Math.imul(Q$,m)|0,s0=s0+Math.imul(Q$,R$)|0,s0=s0+Math.imul(g,m)|0,I=I+Math.imul(g,R$)|0,v=v+Math.imul(j,P$)|0,s0=s0+Math.imul(j,O)|0,s0=s0+Math.imul($$,P$)|0,I=I+Math.imul($$,O)|0,v=v+Math.imul(e0,e)|0,s0=s0+Math.imul(e0,M$)|0,s0=s0+Math.imul(r0,e)|0,I=I+Math.imul(r0,M$)|0,v=v+Math.imul(m0,S$)|0,s0=s0+Math.imul(m0,F)|0,s0=s0+Math.imul(a0,S$)|0,I=I+Math.imul(a0,F)|0;var $0=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+($0>>>26)|0,$0&=67108863,v=Math.imul(O$,A$),s0=Math.imul(O$,b),s0=s0+Math.imul(c,A$)|0,I=Math.imul(c,b),v=v+Math.imul(p,l)|0,s0=s0+Math.imul(p,W$)|0,s0=s0+Math.imul(I$,l)|0,I=I+Math.imul(I$,W$)|0,v=v+Math.imul(X$,E$)|0,s0=s0+Math.imul(X$,u)|0,s0=s0+Math.imul(w,E$)|0,I=I+Math.imul(w,u)|0,v=v+Math.imul(B,n)|0,s0=s0+Math.imul(B,D$)|0,s0=s0+Math.imul(U$,n)|0,I=I+Math.imul(U$,D$)|0,v=v+Math.imul(G$,C$)|0,s0=s0+Math.imul(G$,t)|0,s0=s0+Math.imul(x,C$)|0,I=I+Math.imul(x,t)|0,v=v+Math.imul(_,m)|0,s0=s0+Math.imul(_,R$)|0,s0=s0+Math.imul(Z$,m)|0,I=I+Math.imul(Z$,R$)|0,v=v+Math.imul(Q$,P$)|0,s0=s0+Math.imul(Q$,O)|0,s0=s0+Math.imul(g,P$)|0,I=I+Math.imul(g,O)|0,v=v+Math.imul(j,e)|0,s0=s0+Math.imul(j,M$)|0,s0=s0+Math.imul($$,e)|0,I=I+Math.imul($$,M$)|0,v=v+Math.imul(e0,S$)|0,s0=s0+Math.imul(e0,F)|0,s0=s0+Math.imul(r0,S$)|0,I=I+Math.imul(r0,F)|0;var x$=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(x$>>>26)|0,x$&=67108863,v=Math.imul(O$,l),s0=Math.imul(O$,W$),s0=s0+Math.imul(c,l)|0,I=Math.imul(c,W$),v=v+Math.imul(p,E$)|0,s0=s0+Math.imul(p,u)|0,s0=s0+Math.imul(I$,E$)|0,I=I+Math.imul(I$,u)|0,v=v+Math.imul(X$,n)|0,s0=s0+Math.imul(X$,D$)|0,s0=s0+Math.imul(w,n)|0,I=I+Math.imul(w,D$)|0,v=v+Math.imul(B,C$)|0,s0=s0+Math.imul(B,t)|0,s0=s0+Math.imul(U$,C$)|0,I=I+Math.imul(U$,t)|0,v=v+Math.imul(G$,m)|0,s0=s0+Math.imul(G$,R$)|0,s0=s0+Math.imul(x,m)|0,I=I+Math.imul(x,R$)|0,v=v+Math.imul(_,P$)|0,s0=s0+Math.imul(_,O)|0,s0=s0+Math.imul(Z$,P$)|0,I=I+Math.imul(Z$,O)|0,v=v+Math.imul(Q$,e)|0,s0=s0+Math.imul(Q$,M$)|0,s0=s0+Math.imul(g,e)|0,I=I+Math.imul(g,M$)|0,v=v+Math.imul(j,S$)|0,s0=s0+Math.imul(j,F)|0,s0=s0+Math.imul($$,S$)|0,I=I+Math.imul($$,F)|0;var Q0=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(Q0>>>26)|0,Q0&=67108863,v=Math.imul(O$,E$),s0=Math.imul(O$,u),s0=s0+Math.imul(c,E$)|0,I=Math.imul(c,u),v=v+Math.imul(p,n)|0,s0=s0+Math.imul(p,D$)|0,s0=s0+Math.imul(I$,n)|0,I=I+Math.imul(I$,D$)|0,v=v+Math.imul(X$,C$)|0,s0=s0+Math.imul(X$,t)|0,s0=s0+Math.imul(w,C$)|0,I=I+Math.imul(w,t)|0,v=v+Math.imul(B,m)|0,s0=s0+Math.imul(B,R$)|0,s0=s0+Math.imul(U$,m)|0,I=I+Math.imul(U$,R$)|0,v=v+Math.imul(G$,P$)|0,s0=s0+Math.imul(G$,O)|0,s0=s0+Math.imul(x,P$)|0,I=I+Math.imul(x,O)|0,v=v+Math.imul(_,e)|0,s0=s0+Math.imul(_,M$)|0,s0=s0+Math.imul(Z$,e)|0,I=I+Math.imul(Z$,M$)|0,v=v+Math.imul(Q$,S$)|0,s0=s0+Math.imul(Q$,F)|0,s0=s0+Math.imul(g,S$)|0,I=I+Math.imul(g,F)|0;var B$=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(B$>>>26)|0,B$&=67108863,v=Math.imul(O$,n),s0=Math.imul(O$,D$),s0=s0+Math.imul(c,n)|0,I=Math.imul(c,D$),v=v+Math.imul(p,C$)|0,s0=s0+Math.imul(p,t)|0,s0=s0+Math.imul(I$,C$)|0,I=I+Math.imul(I$,t)|0,v=v+Math.imul(X$,m)|0,s0=s0+Math.imul(X$,R$)|0,s0=s0+Math.imul(w,m)|0,I=I+Math.imul(w,R$)|0,v=v+Math.imul(B,P$)|0,s0=s0+Math.imul(B,O)|0,s0=s0+Math.imul(U$,P$)|0,I=I+Math.imul(U$,O)|0,v=v+Math.imul(G$,e)|0,s0=s0+Math.imul(G$,M$)|0,s0=s0+Math.imul(x,e)|0,I=I+Math.imul(x,M$)|0,v=v+Math.imul(_,S$)|0,s0=s0+Math.imul(_,F)|0,s0=s0+Math.imul(Z$,S$)|0,I=I+Math.imul(Z$,F)|0;var Y0=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(Y0>>>26)|0,Y0&=67108863,v=Math.imul(O$,C$),s0=Math.imul(O$,t),s0=s0+Math.imul(c,C$)|0,I=Math.imul(c,t),v=v+Math.imul(p,m)|0,s0=s0+Math.imul(p,R$)|0,s0=s0+Math.imul(I$,m)|0,I=I+Math.imul(I$,R$)|0,v=v+Math.imul(X$,P$)|0,s0=s0+Math.imul(X$,O)|0,s0=s0+Math.imul(w,P$)|0,I=I+Math.imul(w,O)|0,v=v+Math.imul(B,e)|0,s0=s0+Math.imul(B,M$)|0,s0=s0+Math.imul(U$,e)|0,I=I+Math.imul(U$,M$)|0,v=v+Math.imul(G$,S$)|0,s0=s0+Math.imul(G$,F)|0,s0=s0+Math.imul(x,S$)|0,I=I+Math.imul(x,F)|0;var y$=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(y$>>>26)|0,y$&=67108863,v=Math.imul(O$,m),s0=Math.imul(O$,R$),s0=s0+Math.imul(c,m)|0,I=Math.imul(c,R$),v=v+Math.imul(p,P$)|0,s0=s0+Math.imul(p,O)|0,s0=s0+Math.imul(I$,P$)|0,I=I+Math.imul(I$,O)|0,v=v+Math.imul(X$,e)|0,s0=s0+Math.imul(X$,M$)|0,s0=s0+Math.imul(w,e)|0,I=I+Math.imul(w,M$)|0,v=v+Math.imul(B,S$)|0,s0=s0+Math.imul(B,F)|0,s0=s0+Math.imul(U$,S$)|0,I=I+Math.imul(U$,F)|0;var Z0=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(Z0>>>26)|0,Z0&=67108863,v=Math.imul(O$,P$),s0=Math.imul(O$,O),s0=s0+Math.imul(c,P$)|0,I=Math.imul(c,O),v=v+Math.imul(p,e)|0,s0=s0+Math.imul(p,M$)|0,s0=s0+Math.imul(I$,e)|0,I=I+Math.imul(I$,M$)|0,v=v+Math.imul(X$,S$)|0,s0=s0+Math.imul(X$,F)|0,s0=s0+Math.imul(w,S$)|0,I=I+Math.imul(w,F)|0;var w$=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(w$>>>26)|0,w$&=67108863,v=Math.imul(O$,e),s0=Math.imul(O$,M$),s0=s0+Math.imul(c,e)|0,I=Math.imul(c,M$),v=v+Math.imul(p,S$)|0,s0=s0+Math.imul(p,F)|0,s0=s0+Math.imul(I$,S$)|0,I=I+Math.imul(I$,F)|0;var G0=(n0+v|0)+((s0&8191)<<13)|0;n0=(I+(s0>>>13)|0)+(G0>>>26)|0,G0&=67108863,v=Math.imul(O$,S$),s0=Math.imul(O$,F),s0=s0+Math.imul(c,S$)|0,I=Math.imul(c,F);var p$=(n0+v|0)+((s0&8191)<<13)|0;return n0=(I+(s0>>>13)|0)+(p$>>>26)|0,p$&=67108863,S[0]=v$,S[1]=r,S[2]=q$,S[3]=i,S[4]=j$,S[5]=k$,S[6]=g$,S[7]=_$,S[8]=N$,S[9]=$0,S[10]=x$,S[11]=Q0,S[12]=B$,S[13]=Y0,S[14]=y$,S[15]=Z0,S[16]=w$,S[17]=G0,S[18]=p$,n0!==0&&(S[19]=n0,o0.length++),o0};Math.imul||(p0=E);function T(l0,z,o0){o0.negative=z.negative^l0.negative,o0.length=l0.length+z.length;for(var M=0,u0=0,S=0;S<o0.length-1;S++){var n0=u0;u0=0;for(var v=M&67108863,s0=Math.min(S,z.length-1),I=Math.max(0,S-l0.length+1);I<=s0;I++){var t0=S-I,m0=l0.words[t0]|0,a0=z.words[I]|0,q=m0*a0,e0=q&67108863;n0=n0+(q/67108864|0)|0,e0=e0+v|0,v=e0&67108863,n0=n0+(e0>>>26)|0,u0+=n0>>>26,n0&=67108863}o0.words[S]=v,M=n0,n0=u0}return M!==0?o0.words[S]=M:o0.length--,o0.strip()}function f0(l0,z,o0){var M=new D;return M.mulp(l0,z,o0)}Z.prototype.mulTo=function(l0,z){var o0,M=this.length+l0.length;return this.length===10&&l0.length===10?o0=p0(this,l0,z):M<63?o0=E(this,l0,z):M<1024?o0=T(this,l0,z):o0=f0(this,l0,z),o0};function D(l0,z){this.x=l0,this.y=z}D.prototype.makeRBT=function(l0){for(var z=new Array(l0),o0=Z.prototype._countBits(l0)-1,M=0;M<l0;M++)z[M]=this.revBin(M,o0,l0);return z},D.prototype.revBin=function(l0,z,o0){if(l0===0||l0===o0-1)return l0;for(var M=0,u0=0;u0<z;u0++)M|=(l0&1)<<z-u0-1,l0>>=1;return M},D.prototype.permute=function(l0,z,o0,M,u0,S){for(var n0=0;n0<S;n0++)M[n0]=z[l0[n0]],u0[n0]=o0[l0[n0]]},D.prototype.transform=function(l0,z,o0,M,u0,S){this.permute(S,l0,z,o0,M,u0);for(var n0=1;n0<u0;n0<<=1)for(var v=n0<<1,s0=Math.cos(2*Math.PI/v),I=Math.sin(2*Math.PI/v),t0=0;t0<u0;t0+=v)for(var m0=s0,a0=I,q=0;q<n0;q++){var e0=o0[t0+q],r0=M[t0+q],i0=o0[t0+q+n0],j=M[t0+q+n0],$$=m0*i0-a0*j;j=m0*j+a0*i0,i0=$$,o0[t0+q]=e0+i0,M[t0+q]=r0+j,o0[t0+q+n0]=e0-i0,M[t0+q+n0]=r0-j,q!==v&&($$=s0*m0-I*a0,a0=s0*a0+I*m0,m0=$$)}},D.prototype.guessLen13b=function(l0,z){var o0=Math.max(z,l0)|1,M=o0&1,u0=0;for(o0=o0/2|0;o0;o0=o0>>>1)u0++;return 1<<u0+1+M},D.prototype.conjugate=function(l0,z,o0){if(!(o0<=1))for(var M=0;M<o0/2;M++){var u0=l0[M];l0[M]=l0[o0-M-1],l0[o0-M-1]=u0,u0=z[M],z[M]=-z[o0-M-1],z[o0-M-1]=-u0}},D.prototype.normalize13b=function(l0,z){for(var o0=0,M=0;M<z/2;M++){var u0=Math.round(l0[2*M+1]/z)*8192+Math.round(l0[2*M]/z)+o0;l0[M]=u0&67108863,u0<67108864?o0=0:o0=u0/67108864|0}return l0},D.prototype.convert13b=function(l0,z,o0,M){for(var u0=0,S=0;S<z;S++)u0=u0+(l0[S]|0),o0[2*S]=u0&8191,u0=u0>>>13,o0[2*S+1]=u0&8191,u0=u0>>>13;for(S=2*z;S<M;++S)o0[S]=0;Y(u0===0),Y((u0&-8192)===0)},D.prototype.stub=function(l0){for(var z=new Array(l0),o0=0;o0<l0;o0++)z[o0]=0;return z},D.prototype.mulp=function(l0,z,o0){var M=2*this.guessLen13b(l0.length,z.length),u0=this.makeRBT(M),S=this.stub(M),n0=new Array(M),v=new Array(M),s0=new Array(M),I=new Array(M),t0=new Array(M),m0=new Array(M),a0=o0.words;a0.length=M,this.convert13b(l0.words,l0.length,n0,M),this.convert13b(z.words,z.length,I,M),this.transform(n0,S,v,s0,M,u0),this.transform(I,S,t0,m0,M,u0);for(var q=0;q<M;q++){var e0=v[q]*t0[q]-s0[q]*m0[q];s0[q]=v[q]*m0[q]+s0[q]*t0[q],v[q]=e0}return this.conjugate(v,s0,M),this.transform(v,s0,a0,S,M,u0),this.conjugate(a0,S,M),this.normalize13b(a0,M),o0.negative=l0.negative^z.negative,o0.length=l0.length+z.length,o0.strip()},Z.prototype.mul=function(l0){var z=new Z(null);return z.words=new Array(this.length+l0.length),this.mulTo(l0,z)},Z.prototype.mulf=function(l0){var z=new Z(null);return z.words=new Array(this.length+l0.length),f0(this,l0,z)},Z.prototype.imul=function(l0){return this.clone().mulTo(l0,this)},Z.prototype.imuln=function(l0){Y(typeof l0=="number"),Y(l0<67108864);for(var z=0,o0=0;o0<this.length;o0++){var M=(this.words[o0]|0)*l0,u0=(M&67108863)+(z&67108863);z>>=26,z+=M/67108864|0,z+=u0>>>26,this.words[o0]=u0&67108863}return z!==0&&(this.words[o0]=z,this.length++),this},Z.prototype.muln=function(l0){return this.clone().imuln(l0)},Z.prototype.sqr=function(){return this.mul(this)},Z.prototype.isqr=function(){return this.imul(this.clone())},Z.prototype.pow=function(l0){var z=w0(l0);if(z.length===0)return new Z(1);for(var o0=this,M=0;M<z.length&&z[M]===0;M++,o0=o0.sqr());if(++M<z.length)for(var u0=o0.sqr();M<z.length;M++,u0=u0.sqr())z[M]!==0&&(o0=o0.mul(u0));return o0},Z.prototype.iushln=function(l0){Y(typeof l0=="number"&&l0>=0);var z=l0%26,o0=(l0-z)/26,M=67108863>>>26-z<<26-z,u0;if(z!==0){var S=0;for(u0=0;u0<this.length;u0++){var n0=this.words[u0]&M,v=(this.words[u0]|0)-n0<<z;this.words[u0]=v|S,S=n0>>>26-z}S&&(this.words[u0]=S,this.length++)}if(o0!==0){for(u0=this.length-1;u0>=0;u0--)this.words[u0+o0]=this.words[u0];for(u0=0;u0<o0;u0++)this.words[u0]=0;this.length+=o0}return this.strip()},Z.prototype.ishln=function(l0){return Y(this.negative===0),this.iushln(l0)},Z.prototype.iushrn=function(l0,z,o0){Y(typeof l0=="number"&&l0>=0);var M;z?M=(z-z%26)/26:M=0;var u0=l0%26,S=Math.min((l0-u0)/26,this.length),n0=67108863^67108863>>>u0<<u0,v=o0;if(M-=S,M=Math.max(0,M),v){for(var s0=0;s0<S;s0++)v.words[s0]=this.words[s0];v.length=S}if(S!==0)if(this.length>S)for(this.length-=S,s0=0;s0<this.length;s0++)this.words[s0]=this.words[s0+S];else this.words[0]=0,this.length=1;var I=0;for(s0=this.length-1;s0>=0&&(I!==0||s0>=M);s0--){var t0=this.words[s0]|0;this.words[s0]=I<<26-u0|t0>>>u0,I=t0&n0}return v&&I!==0&&(v.words[v.length++]=I),this.length===0&&(this.words[0]=0,this.length=1),this.strip()},Z.prototype.ishrn=function(l0,z,o0){return Y(this.negative===0),this.iushrn(l0,z,o0)},Z.prototype.shln=function(l0){return this.clone().ishln(l0)},Z.prototype.ushln=function(l0){return this.clone().iushln(l0)},Z.prototype.shrn=function(l0){return this.clone().ishrn(l0)},Z.prototype.ushrn=function(l0){return this.clone().iushrn(l0)},Z.prototype.testn=function(l0){Y(typeof l0=="number"&&l0>=0);var z=l0%26,o0=(l0-z)/26,M=1<<z;if(this.length<=o0)return!1;var u0=this.words[o0];return!!(u0&M)},Z.prototype.imaskn=function(l0){Y(typeof l0=="number"&&l0>=0);var z=l0%26,o0=(l0-z)/26;if(Y(this.negative===0,"imaskn works only with positive numbers"),this.length<=o0)return this;if(z!==0&&o0++,this.length=Math.min(o0,this.length),z!==0){var M=67108863^67108863>>>z<<z;this.words[this.length-1]&=M}return this.strip()},Z.prototype.maskn=function(l0){return this.clone().imaskn(l0)},Z.prototype.iaddn=function(l0){return Y(typeof l0=="number"),Y(l0<67108864),l0<0?this.isubn(-l0):this.negative!==0?this.length===1&&(this.words[0]|0)<l0?(this.words[0]=l0-(this.words[0]|0),this.negative=0,this):(this.negative=0,this.isubn(l0),this.negative=1,this):this._iaddn(l0)},Z.prototype._iaddn=function(l0){this.words[0]+=l0;for(var z=0;z<this.length&&this.words[z]>=67108864;z++)this.words[z]-=67108864,z===this.length-1?this.words[z+1]=1:this.words[z+1]++;return this.length=Math.max(this.length,z+1),this},Z.prototype.isubn=function(l0){if(Y(typeof l0=="number"),Y(l0<67108864),l0<0)return this.iaddn(-l0);if(this.negative!==0)return this.negative=0,this.iaddn(l0),this.negative=1,this;if(this.words[0]-=l0,this.length===1&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var z=0;z<this.length&&this.words[z]<0;z++)this.words[z]+=67108864,this.words[z+1]-=1;return this.strip()},Z.prototype.addn=function(l0){return this.clone().iaddn(l0)},Z.prototype.subn=function(l0){return this.clone().isubn(l0)},Z.prototype.iabs=function(){return this.negative=0,this},Z.prototype.abs=function(){return this.clone().iabs()},Z.prototype._ishlnsubmul=function(l0,z,o0){var M=l0.length+o0,u0;this._expand(M);var S,n0=0;for(u0=0;u0<l0.length;u0++){S=(this.words[u0+o0]|0)+n0;var v=(l0.words[u0]|0)*z;S-=v&67108863,n0=(S>>26)-(v/67108864|0),this.words[u0+o0]=S&67108863}for(;u0<this.length-o0;u0++)S=(this.words[u0+o0]|0)+n0,n0=S>>26,this.words[u0+o0]=S&67108863;if(n0===0)return this.strip();for(Y(n0===-1),n0=0,u0=0;u0<this.length;u0++)S=-(this.words[u0]|0)+n0,n0=S>>26,this.words[u0]=S&67108863;return this.negative=1,this.strip()},Z.prototype._wordDiv=function(l0,z){var o0=this.length-l0.length,M=this.clone(),u0=l0,S=u0.words[u0.length-1]|0,n0=this._countBits(S);o0=26-n0,o0!==0&&(u0=u0.ushln(o0),M.iushln(o0),S=u0.words[u0.length-1]|0);var v=M.length-u0.length,s0;if(z!=="mod"){s0=new Z(null),s0.length=v+1,s0.words=new Array(s0.length);for(var I=0;I<s0.length;I++)s0.words[I]=0}var t0=M.clone()._ishlnsubmul(u0,1,v);t0.negative===0&&(M=t0,s0&&(s0.words[v]=1));for(var m0=v-1;m0>=0;m0--){var a0=(M.words[u0.length+m0]|0)*67108864+(M.words[u0.length+m0-1]|0);for(a0=Math.min(a0/S|0,67108863),M._ishlnsubmul(u0,a0,m0);M.negative!==0;)a0--,M.negative=0,M._ishlnsubmul(u0,1,m0),M.isZero()||(M.negative^=1);s0&&(s0.words[m0]=a0)}return s0&&s0.strip(),M.strip(),z!=="div"&&o0!==0&&M.iushrn(o0),{div:s0||null,mod:M}},Z.prototype.divmod=function(l0,z,o0){if(Y(!l0.isZero()),this.isZero())return{div:new Z(0),mod:new Z(0)};var M,u0,S;return this.negative!==0&&l0.negative===0?(S=this.neg().divmod(l0,z),z!=="mod"&&(M=S.div.neg()),z!=="div"&&(u0=S.mod.neg(),o0&&u0.negative!==0&&u0.iadd(l0)),{div:M,mod:u0}):this.negative===0&&l0.negative!==0?(S=this.divmod(l0.neg(),z),z!=="mod"&&(M=S.div.neg()),{div:M,mod:S.mod}):(this.negative&l0.negative)!==0?(S=this.neg().divmod(l0.neg(),z),z!=="div"&&(u0=S.mod.neg(),o0&&u0.negative!==0&&u0.isub(l0)),{div:S.div,mod:u0}):l0.length>this.length||this.cmp(l0)<0?{div:new Z(0),mod:this}:l0.length===1?z==="div"?{div:this.divn(l0.words[0]),mod:null}:z==="mod"?{div:null,mod:new Z(this.modn(l0.words[0]))}:{div:this.divn(l0.words[0]),mod:new Z(this.modn(l0.words[0]))}:this._wordDiv(l0,z)},Z.prototype.div=function(l0){return this.divmod(l0,"div",!1).div},Z.prototype.mod=function(l0){return this.divmod(l0,"mod",!1).mod},Z.prototype.umod=function(l0){return this.divmod(l0,"mod",!0).mod},Z.prototype.divRound=function(l0){var z=this.divmod(l0);if(z.mod.isZero())return z.div;var o0=z.div.negative!==0?z.mod.isub(l0):z.mod,M=l0.ushrn(1),u0=l0.andln(1),S=o0.cmp(M);return S<0||u0===1&&S===0?z.div:z.div.negative!==0?z.div.isubn(1):z.div.iaddn(1)},Z.prototype.modn=function(l0){Y(l0<=67108863);for(var z=(1<<26)%l0,o0=0,M=this.length-1;M>=0;M--)o0=(z*o0+(this.words[M]|0))%l0;return o0},Z.prototype.idivn=function(l0){Y(l0<=67108863);for(var z=0,o0=this.length-1;o0>=0;o0--){var M=(this.words[o0]|0)+z*67108864;this.words[o0]=M/l0|0,z=M%l0}return this.strip()},Z.prototype.divn=function(l0){return this.clone().idivn(l0)},Z.prototype.egcd=function(l0){Y(l0.negative===0),Y(!l0.isZero());var z=this,o0=l0.clone();z.negative!==0?z=z.umod(l0):z=z.clone();for(var M=new Z(1),u0=new Z(0),S=new Z(0),n0=new Z(1),v=0;z.isEven()&&o0.isEven();)z.iushrn(1),o0.iushrn(1),++v;for(var s0=o0.clone(),I=z.clone();!z.isZero();){for(var t0=0,m0=1;(z.words[0]&m0)===0&&t0<26;++t0,m0<<=1);if(t0>0)for(z.iushrn(t0);t0-- >0;)(M.isOdd()||u0.isOdd())&&(M.iadd(s0),u0.isub(I)),M.iushrn(1),u0.iushrn(1);for(var a0=0,q=1;(o0.words[0]&q)===0&&a0<26;++a0,q<<=1);if(a0>0)for(o0.iushrn(a0);a0-- >0;)(S.isOdd()||n0.isOdd())&&(S.iadd(s0),n0.isub(I)),S.iushrn(1),n0.iushrn(1);z.cmp(o0)>=0?(z.isub(o0),M.isub(S),u0.isub(n0)):(o0.isub(z),S.isub(M),n0.isub(u0))}return{a:S,b:n0,gcd:o0.iushln(v)}},Z.prototype._invmp=function(l0){Y(l0.negative===0),Y(!l0.isZero());var z=this,o0=l0.clone();z.negative!==0?z=z.umod(l0):z=z.clone();for(var M=new Z(1),u0=new Z(0),S=o0.clone();z.cmpn(1)>0&&o0.cmpn(1)>0;){for(var n0=0,v=1;(z.words[0]&v)===0&&n0<26;++n0,v<<=1);if(n0>0)for(z.iushrn(n0);n0-- >0;)M.isOdd()&&M.iadd(S),M.iushrn(1);for(var s0=0,I=1;(o0.words[0]&I)===0&&s0<26;++s0,I<<=1);if(s0>0)for(o0.iushrn(s0);s0-- >0;)u0.isOdd()&&u0.iadd(S),u0.iushrn(1);z.cmp(o0)>=0?(z.isub(o0),M.isub(u0)):(o0.isub(z),u0.isub(M))}var t0;return z.cmpn(1)===0?t0=M:t0=u0,t0.cmpn(0)<0&&t0.iadd(l0),t0},Z.prototype.gcd=function(l0){if(this.isZero())return l0.abs();if(l0.isZero())return this.abs();var z=this.clone(),o0=l0.clone();z.negative=0,o0.negative=0;for(var M=0;z.isEven()&&o0.isEven();M++)z.iushrn(1),o0.iushrn(1);do{for(;z.isEven();)z.iushrn(1);for(;o0.isEven();)o0.iushrn(1);var u0=z.cmp(o0);if(u0<0){var S=z;z=o0,o0=S}else if(u0===0||o0.cmpn(1)===0)break;z.isub(o0)}while(!0);return o0.iushln(M)},Z.prototype.invm=function(l0){return this.egcd(l0).a.umod(l0)},Z.prototype.isEven=function(){return(this.words[0]&1)===0},Z.prototype.isOdd=function(){return(this.words[0]&1)===1},Z.prototype.andln=function(l0){return this.words[0]&l0},Z.prototype.bincn=function(l0){Y(typeof l0=="number");var z=l0%26,o0=(l0-z)/26,M=1<<z;if(this.length<=o0)return this._expand(o0+1),this.words[o0]|=M,this;for(var u0=M,S=o0;u0!==0&&S<this.length;S++){var n0=this.words[S]|0;n0+=u0,u0=n0>>>26,n0&=67108863,this.words[S]=n0}return u0!==0&&(this.words[S]=u0,this.length++),this},Z.prototype.isZero=function(){return this.length===1&&this.words[0]===0},Z.prototype.cmpn=function(l0){var z=l0<0;if(this.negative!==0&&!z)return-1;if(this.negative===0&&z)return 1;this.strip();var o0;if(this.length>1)o0=1;else{z&&(l0=-l0),Y(l0<=67108863,"Number is too big");var M=this.words[0]|0;o0=M===l0?0:M<l0?-1:1}return this.negative!==0?-o0|0:o0},Z.prototype.cmp=function(l0){if(this.negative!==0&&l0.negative===0)return-1;if(this.negative===0&&l0.negative!==0)return 1;var z=this.ucmp(l0);return this.negative!==0?-z|0:z},Z.prototype.ucmp=function(l0){if(this.length>l0.length)return 1;if(this.length<l0.length)return-1;for(var z=0,o0=this.length-1;o0>=0;o0--){var M=this.words[o0]|0,u0=l0.words[o0]|0;if(M!==u0){M<u0?z=-1:M>u0&&(z=1);break}}return z},Z.prototype.gtn=function(l0){return this.cmpn(l0)===1},Z.prototype.gt=function(l0){return this.cmp(l0)===1},Z.prototype.gten=function(l0){return this.cmpn(l0)>=0},Z.prototype.gte=function(l0){return this.cmp(l0)>=0},Z.prototype.ltn=function(l0){return this.cmpn(l0)===-1},Z.prototype.lt=function(l0){return this.cmp(l0)===-1},Z.prototype.lten=function(l0){return this.cmpn(l0)<=0},Z.prototype.lte=function(l0){return this.cmp(l0)<=0},Z.prototype.eqn=function(l0){return this.cmpn(l0)===0},Z.prototype.eq=function(l0){return this.cmp(l0)===0},Z.red=function(l0){return new b0(l0)},Z.prototype.toRed=function(l0){return Y(!this.red,"Already a number in reduction context"),Y(this.negative===0,"red works only with positives"),l0.convertTo(this)._forceRed(l0)},Z.prototype.fromRed=function(){return Y(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},Z.prototype._forceRed=function(l0){return this.red=l0,this},Z.prototype.forceRed=function(l0){return Y(!this.red,"Already a number in reduction context"),this._forceRed(l0)},Z.prototype.redAdd=function(l0){return Y(this.red,"redAdd works only with red numbers"),this.red.add(this,l0)},Z.prototype.redIAdd=function(l0){return Y(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,l0)},Z.prototype.redSub=function(l0){return Y(this.red,"redSub works only with red numbers"),this.red.sub(this,l0)},Z.prototype.redISub=function(l0){return Y(this.red,"redISub works only with red numbers"),this.red.isub(this,l0)},Z.prototype.redShl=function(l0){return Y(this.red,"redShl works only with red numbers"),this.red.shl(this,l0)},Z.prototype.redMul=function(l0){return Y(this.red,"redMul works only with red numbers"),this.red._verify2(this,l0),this.red.mul(this,l0)},Z.prototype.redIMul=function(l0){return Y(this.red,"redMul works only with red numbers"),this.red._verify2(this,l0),this.red.imul(this,l0)},Z.prototype.redSqr=function(){return Y(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},Z.prototype.redISqr=function(){return Y(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},Z.prototype.redSqrt=function(){return Y(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},Z.prototype.redInvm=function(){return Y(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},Z.prototype.redNeg=function(){return Y(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},Z.prototype.redPow=function(l0){return Y(this.red&&!l0.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,l0)};var c0={k256:null,p224:null,p192:null,p25519:null};function C(l0,z){this.name=l0,this.p=new Z(z,16),this.n=this.p.bitLength(),this.k=new Z(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}C.prototype._tmp=function(){var l0=new Z(null);return l0.words=new Array(Math.ceil(this.n/13)),l0},C.prototype.ireduce=function(l0){var z=l0,o0;do this.split(z,this.tmp),z=this.imulK(z),z=z.iadd(this.tmp),o0=z.bitLength();while(o0>this.n);var M=o0<this.n?-1:z.ucmp(this.p);return M===0?(z.words[0]=0,z.length=1):M>0?z.isub(this.p):z.strip!==void 0?z.strip():z._strip(),z},C.prototype.split=function(l0,z){l0.iushrn(this.n,0,z)},C.prototype.imulK=function(l0){return l0.imul(this.k)};function h0(){C.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}$(h0,C),h0.prototype.split=function(l0,z){for(var o0=4194303,M=Math.min(l0.length,9),u0=0;u0<M;u0++)z.words[u0]=l0.words[u0];if(z.length=M,l0.length<=9){l0.words[0]=0,l0.length=1;return}var S=l0.words[9];for(z.words[z.length++]=S&o0,u0=10;u0<l0.length;u0++){var n0=l0.words[u0]|0;l0.words[u0-10]=(n0&o0)<<4|S>>>22,S=n0}S>>>=22,l0.words[u0-10]=S,S===0&&l0.length>10?l0.length-=10:l0.length-=9},h0.prototype.imulK=function(l0){l0.words[l0.length]=0,l0.words[l0.length+1]=0,l0.length+=2;for(var z=0,o0=0;o0<l0.length;o0++){var M=l0.words[o0]|0;z+=M*977,l0.words[o0]=z&67108863,z=M*64+(z/67108864|0)}return l0.words[l0.length-1]===0&&(l0.length--,l0.words[l0.length-1]===0&&l0.length--),l0};function L(){C.call(this,"p224","ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001")}$(L,C);function d0(){C.call(this,"p192","ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff")}$(d0,C);function R(){C.call(this,"25519","7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed")}$(R,C),R.prototype.imulK=function(l0){for(var z=0,o0=0;o0<l0.length;o0++){var M=(l0.words[o0]|0)*19+z,u0=M&67108863;M>>>=26,l0.words[o0]=u0,z=M}return z!==0&&(l0.words[l0.length++]=z),l0},Z._prime=function(l0){if(c0[l0])return c0[l0];var z;if(l0==="k256")z=new h0;else if(l0==="p224")z=new L;else if(l0==="p192")z=new d0;else if(l0==="p25519")z=new R;else throw new Error("Unknown prime "+l0);return c0[l0]=z,z};function b0(l0){if(typeof l0=="string"){var z=Z._prime(l0);this.m=z.p,this.prime=z}else Y(l0.gtn(1),"modulus must be greater than 1"),this.m=l0,this.prime=null}b0.prototype._verify1=function(l0){Y(l0.negative===0,"red works only with positives"),Y(l0.red,"red works only with red numbers")},b0.prototype._verify2=function(l0,z){Y((l0.negative|z.negative)===0,"red works only with positives"),Y(l0.red&&l0.red===z.red,"red works only with red numbers")},b0.prototype.imod=function(l0){return this.prime?this.prime.ireduce(l0)._forceRed(this):l0.umod(this.m)._forceRed(this)},b0.prototype.neg=function(l0){return l0.isZero()?l0.clone():this.m.sub(l0)._forceRed(this)},b0.prototype.add=function(l0,z){this._verify2(l0,z);var o0=l0.add(z);return o0.cmp(this.m)>=0&&o0.isub(this.m),o0._forceRed(this)},b0.prototype.iadd=function(l0,z){this._verify2(l0,z);var o0=l0.iadd(z);return o0.cmp(this.m)>=0&&o0.isub(this.m),o0},b0.prototype.sub=function(l0,z){this._verify2(l0,z);var o0=l0.sub(z);return o0.cmpn(0)<0&&o0.iadd(this.m),o0._forceRed(this)},b0.prototype.isub=function(l0,z){this._verify2(l0,z);var o0=l0.isub(z);return o0.cmpn(0)<0&&o0.iadd(this.m),o0},b0.prototype.shl=function(l0,z){return this._verify1(l0),this.imod(l0.ushln(z))},b0.prototype.imul=function(l0,z){return this._verify2(l0,z),this.imod(l0.imul(z))},b0.prototype.mul=function(l0,z){return this._verify2(l0,z),this.imod(l0.mul(z))},b0.prototype.isqr=function(l0){return this.imul(l0,l0.clone())},b0.prototype.sqr=function(l0){return this.mul(l0,l0)},b0.prototype.sqrt=function(l0){if(l0.isZero())return l0.clone();var z=this.m.andln(3);if(Y(z%2===1),z===3){var o0=this.m.add(new Z(1)).iushrn(2);return this.pow(l0,o0)}for(var M=this.m.subn(1),u0=0;!M.isZero()&&M.andln(1)===0;)u0++,M.iushrn(1);Y(!M.isZero());var S=new Z(1).toRed(this),n0=S.redNeg(),v=this.m.subn(1).iushrn(1),s0=this.m.bitLength();for(s0=new Z(2*s0*s0).toRed(this);this.pow(s0,v).cmp(n0)!==0;)s0.redIAdd(n0);for(var I=this.pow(s0,M),t0=this.pow(l0,M.addn(1).iushrn(1)),m0=this.pow(l0,M),a0=u0;m0.cmp(S)!==0;){for(var q=m0,e0=0;q.cmp(S)!==0;e0++)q=q.redSqr();Y(e0<a0);var r0=this.pow(I,new Z(1).iushln(a0-e0-1));t0=t0.redMul(r0),I=r0.redSqr(),m0=m0.redMul(I),a0=e0}return t0},b0.prototype.invm=function(l0){var z=l0._invmp(this.m);return z.negative!==0?(z.negative=0,this.imod(z).redNeg()):this.imod(z)},b0.prototype.pow=function(l0,z){if(z.isZero())return new Z(1).toRed(this);if(z.cmpn(1)===0)return l0.clone();var o0=4,M=new Array(1<<o0);M[0]=new Z(1).toRed(this),M[1]=l0;for(var u0=2;u0<M.length;u0++)M[u0]=this.mul(M[u0-1],l0);var S=M[0],n0=0,v=0,s0=z.bitLength()%26;for(s0===0&&(s0=26),u0=z.length-1;u0>=0;u0--){for(var I=z.words[u0],t0=s0-1;t0>=0;t0--){var m0=I>>t0&1;if(S!==M[0]&&(S=this.sqr(S)),m0===0&&n0===0){v=0;continue}n0<<=1,n0|=m0,v++,!(v!==o0&&(u0!==0||t0!==0))&&(S=this.mul(S,M[n0]),v=0,n0=0)}s0=26}return S},b0.prototype.convertTo=function(l0){var z=l0.umod(this.m);return z===l0?z.clone():z},b0.prototype.convertFrom=function(l0){var z=l0.clone();return z.red=null,z},Z.mont=function(l0){return new P(l0)};function P(l0){b0.call(this,l0),this.shift=this.m.bitLength(),this.shift%26!==0&&(this.shift+=26-this.shift%26),this.r=new Z(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)}$(P,b0),P.prototype.convertTo=function(l0){return this.imod(l0.ushln(this.shift))},P.prototype.convertFrom=function(l0){var z=this.imod(l0.mul(this.rinv));return z.red=null,z},P.prototype.imul=function(l0,z){if(l0.isZero()||z.isZero())return l0.words[0]=0,l0.length=1,l0;var o0=l0.imul(z),M=o0.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),u0=o0.isub(M).iushrn(this.shift),S=u0;return u0.cmp(this.m)>=0?S=u0.isub(this.m):u0.cmpn(0)<0&&(S=u0.iadd(this.m)),S._forceRed(this)},P.prototype.mul=function(l0,z){if(l0.isZero()||z.isZero())return new Z(0)._forceRed(this);var o0=l0.mul(z),M=o0.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),u0=o0.isub(M).iushrn(this.shift),S=u0;return u0.cmp(this.m)>=0?S=u0.isub(this.m):u0.cmpn(0)<0&&(S=u0.iadd(this.m)),S._forceRed(this)},P.prototype.invm=function(l0){var z=this.imod(l0._invmp(this.m).mul(this.r2));return z._forceRed(this)}})(typeof K>"u"||K,X)}}),{CryptoHasher:sY}=globalThis.Bun,tY=$Q({"node_modules/public-encrypt/withPublic.js"(X,K){var x0=nY(),G=YQ().Buffer;function Y($,Z){return G.from($.toRed(x0.mont(Z.modulus)).redPow(new x0(Z.publicExponent)).fromRed().toArray())}K.exports=Y}}),mY=$Q({"node_modules/public-encrypt/publicEncrypt.js"(X,K){var x0=pY(),G=ZQ(),Y=L0(),$=oY(),Z=uY(),Q=nY(),U=tY(),V=hQ(),B0=YQ().Buffer;K.exports=function(w0,E,p0){var T;w0.padding?T=w0.padding:p0?T=1:T=4;var f0=x0(w0),D;if(T===4)D=H(f0,E);else if(T===1)D=y0(f0,E,p0);else if(T===3){if(D=new Q(E),D.cmp(f0.modulus)>=0)throw new Error("data too long for modulus")}else throw new Error("unknown padding");return p0?V(D,f0):U(D,f0)};function H(w0,E){var p0=w0.modulus.byteLength(),T=E.length,f0=Y("sha1").update(B0.alloc(0)).digest(),D=f0.length,c0=2*D;if(T>p0-c0-2)throw new Error("message too long");var C=B0.alloc(p0-T-c0-2),h0=p0-D-1,L=G(D),d0=Z(B0.concat([f0,C,B0.alloc(1,1),E],h0),$(L,h0)),R=Z(L,$(d0,D));return new Q(B0.concat([B0.alloc(1),R,d0],p0))}function y0(w0,E,p0){var T=E.length,f0=w0.modulus.byteLength();if(T>f0-11)throw new Error("message too long");var D;return p0?D=B0.alloc(f0-T-3,255):D=W(f0-T-3),new Q(B0.concat([B0.from([0,p0?1:2]),D,B0.alloc(1),E],f0))}function W(w0){for(var E=B0.allocUnsafe(w0),p0=0,T=G(w0*2),f0=0,D;p0<w0;)f0===T.length&&(T=G(w0*2),f0=0),D=T[f0++],D&&(E[p0++]=D);return E}}}),aY=$Q({"node_modules/public-encrypt/privateDecrypt.js"(X,K){var x0=pY(),G=oY(),Y=uY(),$=nY(),Z=hQ(),Q=L0(),U=tY(),V=YQ().Buffer;K.exports=function(W,w0,E){var p0;W.padding?p0=W.padding:E?p0=1:p0=4;var T=x0(W),f0=T.modulus.byteLength();if(w0.length>f0||new $(w0).cmp(T.modulus)>=0)throw new Error("decryption error");var D;E?D=U(new $(w0),T):D=Z(w0,T);var c0=V.alloc(f0-D.length);if(D=V.concat([c0,D],f0),p0===4)return B0(T,D);if(p0===1)return H(T,D,E);if(p0===3)return D;throw new Error("unknown padding")};function B0(W,w0){var E=W.modulus.byteLength(),p0=Q("sha1").update(V.alloc(0)).digest(),T=p0.length;if(w0[0]!==0)throw new Error("decryption error");var f0=w0.slice(1,T+1),D=w0.slice(T+1),c0=Y(f0,G(D,T)),C=Y(D,G(c0,E-T-1));if(y0(p0,C.slice(0,T)))throw new Error("decryption error");for(var h0=T;C[h0]===0;)h0++;if(C[h0++]!==1)throw new Error("decryption error");return C.slice(h0)}function H(W,w0,E){for(var p0=w0.slice(0,2),T=2,f0=0;w0[T++]!==0;)if(T>=w0.length){f0++;break}var D=w0.slice(2,T-1);if((p0.toString("hex")!=="0002"&&!E||p0.toString("hex")!=="0001"&&E)&&f0++,D.length<8&&f0++,f0)throw new Error("decryption error");return w0.slice(T)}function y0(W,w0){W=V.from(W),w0=V.from(w0);var E=0,p0=W.length;W.length!==w0.length&&(E++,p0=Math.min(W.length,w0.length));for(var T=-1;++T<p0;)E+=W[T]^w0[T];return E}}}),eY=$Q({"node_modules/public-encrypt/browser.js"(X){X.publicEncrypt=mY(),X.privateDecrypt=aY(),X.privateEncrypt=function(K,x0){return X.publicEncrypt(K,x0,!0)},X.publicDecrypt=function(K,x0){return X.privateDecrypt(K,x0,!0)}}}),rY=$Q({"node_modules/randomfill/browser.js"(X){var K=YQ(),x0=ZQ(),G=K.Buffer,Y=K.kMaxLength,$=Math.pow(2,32)-1;function Z(H,y0){if(typeof H!="number"||H!==H)throw new TypeError("offset must be a number");if(H>$||H<0)throw new TypeError("offset must be a uint32");if(H>Y||H>y0)throw new RangeError("offset out of range")}function Q(H,y0,W){if(typeof H!="number"||H!==H)throw new TypeError("size must be a number");if(H>$||H<0)throw new TypeError("size must be a uint32");if(H+y0>W||H>Y)throw new RangeError("buffer too small")}X.randomFill=U,X.randomFillSync=B0;function U(H,y0,W,w0){if(!G.isBuffer(H)&&!(H instanceof global.Uint8Array))throw new TypeError('"buf" argument must be a Buffer or Uint8Array');if(typeof y0=="function")w0=y0,y0=0,W=H.length;else if(typeof W=="function")w0=W,W=H.length-y0;else if(typeof w0!="function")throw new TypeError('"cb" argument must be a function');return Z(y0,H.length),Q(W,y0,H.length),V(H,y0,W,w0)}function V(H,y0,W,w0){if(w0){x0(W,function(p0,T){if(p0)return w0(p0);T.copy(H,y0),w0(null,H)});return}var E=x0(W);return E.copy(H,y0),H}function B0(H,y0,W){if(typeof y0>"u"&&(y0=0),!G.isBuffer(H)&&!(H instanceof global.Uint8Array))throw new TypeError('"buf" argument must be a Buffer or Uint8Array');return Z(y0,H.length),W===void 0&&(W=H.length-y0),Q(W,y0,H.length),V(H,y0,W)}}}),iY=$Q({"node_modules/crypto-browserify/index.js"(X){X.randomBytes=X.rng=X.pseudoRandomBytes=X.prng=ZQ(),X.createHash=L0(),X.Hash=X.createHash.Hash,X.createHmac=X.Hmac=z0();var K=S0(),x0=Object.keys(K),G=["sha1","sha224","sha256","sha384","sha512","md5","rmd160"].concat(x0);X.getHashes=function(){return G};var Y=g0();X.pbkdf2=Y.pbkdf2,X.pbkdf2Sync=Y.pbkdf2Sync;var $=gQ();X.Cipher=$.Cipher,X.createCipher=$.createCipher,X.Cipheriv=$.Cipheriv,X.createCipheriv=$.createCipheriv,X.Decipher=$.Decipher,X.createDecipher=$.createDecipher,X.Decipheriv=$.Decipheriv,X.createDecipheriv=$.createDecipheriv,X.getCiphers=$.getCiphers,X.listCiphers=$.listCiphers;var Z=fQ();X.DiffieHellmanGroup=Z.DiffieHellmanGroup,X.createDiffieHellmanGroup=Z.createDiffieHellmanGroup,X.getDiffieHellman=Z.getDiffieHellman,X.createDiffieHellman=Z.createDiffieHellman,X.DiffieHellman=Z.DiffieHellman;var Q=dY();X.createSign=Q.createSign,X.Sign=Q.Sign,X.createVerify=Q.createVerify,X.Verify=Q.Verify,X.createECDH=lY();var U=eY();X.publicEncrypt=U.publicEncrypt,X.privateEncrypt=U.privateEncrypt,X.publicDecrypt=U.publicDecrypt,X.privateDecrypt=U.privateDecrypt,X.getRandomValues=(B0)=>d$.getRandomValues(B0);var V=rY();X.randomFill=V.randomFill,X.randomFillSync=V.randomFillSync,X.createCredentials=function(){throw new Error(["sorry, createCredentials is not implemented yet","we accept pull requests","https://github.com/crypto-browserify/crypto-browserify"].join(` -`))},X.constants={DH_CHECK_P_NOT_SAFE_PRIME:2,DH_CHECK_P_NOT_PRIME:1,DH_UNABLE_TO_CHECK_GENERATOR:4,DH_NOT_SUITABLE_GENERATOR:8,NPN_ENABLED:1,ALPN_ENABLED:1,RSA_PKCS1_PADDING:1,RSA_SSLV23_PADDING:2,RSA_NO_PADDING:3,RSA_PKCS1_OAEP_PADDING:4,RSA_X931_PADDING:5,RSA_PKCS1_PSS_PADDING:6,POINT_CONVERSION_COMPRESSED:2,POINT_CONVERSION_UNCOMPRESSED:4,POINT_CONVERSION_HYBRID:6}}}),$Z={...iY(),[Symbol.for("CommonJS")]:0},o$="buffer",QZ=(X)=>d$.getRandomValues(X),YZ=()=>d$.randomUUID(),u$="timingSafeEqual"in d$?(X,K)=>{let{byteLength:x0}=X,{byteLength:G}=K;if(typeof x0!="number"||typeof G!="number")throw new TypeError("Input must be an array buffer view");if(x0!==G)throw new RangeError("Input buffers must have the same length");return d$.timingSafeEqual(X,K)}:void 0,ZZ="scryptSync"in d$?(X,K,x0,G)=>{let Y=d$.scryptSync(X,K,x0,G);return o$!=="buffer"?new c$(Y).toString(o$):new c$(Y)}:void 0,GZ="scryptSync"in d$?function(X,K,x0,G,Y){if(typeof G=="function"&&(Y=G,G=void 0),typeof Y!="function"){var $=new TypeError("callback must be a function");throw $.code="ERR_INVALID_CALLBACK",$}try{let Z=d$.scryptSync(X,K,x0,G);process.nextTick(Y,null,o$!=="buffer"?new c$(Z).toString(o$):new c$(Z))}catch(Z){throw Z}}:void 0;u$&&(Object.defineProperty(u$,"name",{value:"::bunternal::"}),Object.defineProperty(GZ,"name",{value:"::bunternal::"}),Object.defineProperty(ZZ,"name",{value:"::bunternal::"}));var n$=d$;QQ($Z,{DEFAULT_ENCODING:()=>o$,getRandomValues:()=>QZ,randomUUID:()=>YZ,scrypt:()=>GZ,scryptSync:()=>ZZ,timingSafeEqual:()=>u$,webcrypto:()=>n$,subtle:()=>n$.subtle});var{randomBytes:VZ,rng:UZ,pseudoRandomBytes:XZ,prng:KZ,Hash:IZ,createHash:OZ,createHmac:JZ,Hmac:FZ,getHashes:AZ,pbkdf2:HZ,pbkdf2Sync:WZ,Cipher:EZ,createCipher:TZ,Cipheriv:DZ,createCipheriv:CZ,Decipher:LZ,createDecipher:RZ,Decipheriv:PZ,createDecipheriv:zZ,getCiphers:MZ,listCiphers:SZ,DiffieHellmanGroup:vZ,createDiffieHellmanGroup:qZ,getDiffieHellman:jZ,createDiffieHellman:kZ,DiffieHellman:gZ,createSign:_Z,Sign:NZ,createVerify:xZ,Verify:BZ,createECDH:yZ,publicEncrypt:wZ,privateEncrypt:pZ,publicDecrypt:fZ,privateDecrypt:cZ,randomFill:hZ,randomFillSync:dZ,createCredentials:bZ,constants:lZ}=$Z;var uZ=$Z;/*! safe-buffer. MIT License. Feross Aboukhadijeh <https://feross.org/opensource> */export{n$ as webcrypto,u$ as timingSafeEqual,ZZ as scryptSync,GZ as scrypt,UZ as rng,YZ as randomUUID,dZ as randomFillSync,hZ as randomFill,VZ as randomBytes,wZ as publicEncrypt,fZ as publicDecrypt,XZ as pseudoRandomBytes,KZ as prng,pZ as privateEncrypt,cZ as privateDecrypt,WZ as pbkdf2Sync,HZ as pbkdf2,SZ as listCiphers,QZ as getRandomValues,AZ as getHashes,jZ as getDiffieHellman,MZ as getCiphers,uZ as default,xZ as createVerify,_Z as createSign,JZ as createHmac,OZ as createHash,yZ as createECDH,qZ as createDiffieHellmanGroup,kZ as createDiffieHellman,zZ as createDecipheriv,RZ as createDecipher,bZ as createCredentials,CZ as createCipheriv,TZ as createCipher,lZ as constants,BZ as Verify,NZ as Sign,FZ as Hmac,IZ as Hash,vZ as DiffieHellmanGroup,gZ as DiffieHellman,PZ as Decipheriv,LZ as Decipher,o$ as DEFAULT_ENCODING,DZ as Cipheriv,EZ as Cipher}; +import{StringDecoder as z$} from"node:string_decoder";import*as M$ from"node:buffer";import*as A$ from"node:stream";var L$=Object.defineProperty;var R$=Object.getOwnPropertyNames;var S$=536870888,F$=globalThis.Buffer,H$=globalThis.crypto,v$=H$;var q$=($,Q)=>function(){return Q||(0,$[R$($)[0]])((Q={exports:{}}).exports,Q),Q.exports},j$=($,Q)=>{for(var Y in Q)L$($,Y,{get:Q[Y],enumerable:!0})};var k$=q$({"node_modules/safe-buffer/index.js"($,Q){var Y=M$,Z=Y.Buffer;function G(U,X){for(var K in U)X[K]=U[K]}Z.from&&Z.alloc&&Z.allocUnsafe&&Z.allocUnsafeSlow?Q.exports=Y:(G(Y,$),$.Buffer=V);function V(U,X,K){return Z(U,X,K)}V.prototype=Object.create(Z.prototype),G(Z,V),V.from=function(U,X,K){if(typeof U=="number")throw new TypeError("Argument must not be a number");return Z(U,X,K)},V.alloc=function(U,X,K){if(typeof U!="number")throw new TypeError("Argument must be a number");var I=Z(U);return X!==void 0?typeof K=="string"?I.fill(X,K):I.fill(X):I.fill(0),I},V.allocUnsafe=function(U){if(typeof U!="number")throw new TypeError("Argument must be a number");return Z(U)},V.allocUnsafeSlow=function(U){if(typeof U!="number")throw new TypeError("Argument must be a number");return Y.SlowBuffer(U)}}}),g$=q$({"node_modules/randombytes/browser.js"($,Q){var Y=65536,Z=4294967295;function G(){throw new Error(`Secure random number generation is not supported by this browser. +Use Chrome, Firefox or Internet Explorer 11`)}var V=k$().Buffer,U=v$;U&&U.getRandomValues?Q.exports=X:Q.exports=G;function X(K,I){if(K>Z)throw new RangeError("requested too many random bytes");var O=V.allocUnsafe(K);if(K>0)if(K>Y)for(var J=0;J<K;J+=Y)U.getRandomValues(O.slice(J,J+Y));else U.getRandomValues(O);return typeof I=="function"?process.nextTick(function(){I(null,O)}):O}}}),_$=q$({"node_modules/inherits/inherits_browser.js"($,Q){typeof Object.create=="function"?Q.exports=function(Y,Z){Z&&(Y.super_=Z,Y.prototype=Object.create(Z.prototype,{constructor:{value:Y,enumerable:!1,writable:!0,configurable:!0}}))}:Q.exports=function(Y,Z){if(Z){Y.super_=Z;var G=function(){};G.prototype=Z.prototype,Y.prototype=new G,Y.prototype.constructor=Y}}}}),N$=q$({"node_modules/hash-base/index.js"($,Q){var Y=k$().Buffer,Z=_$();function G(U,X){if(!Y.isBuffer(U)&&typeof U!="string")throw new TypeError(X+" must be a string or a buffer")}function V(U){A$.Transform.call(this),this._block=Y.allocUnsafe(U),this._blockSize=U,this._blockOffset=0,this._length=[0,0,0,0],this._finalized=!1}Z(V,A$.Transform),V.prototype._transform=function(U,X,K){var I=null;try{this.update(U,X)}catch(O){I=O}K(I)},V.prototype._flush=function(U){var X=null;try{this.push(this.digest())}catch(K){X=K}U(X)},V.prototype.update=function(U,X){if(G(U,"Data"),this._finalized)throw new Error("Digest already called");Y.isBuffer(U)||(U=Y.from(U,X));for(var K=this._block,I=0;this._blockOffset+U.length-I>=this._blockSize;){for(var O=this._blockOffset;O<this._blockSize;)K[O++]=U[I++];this._update(),this._blockOffset=0}for(;I<U.length;)K[this._blockOffset++]=U[I++];for(var J=0,F=U.length*8;F>0;++J)this._length[J]+=F,F=this._length[J]/4294967296|0,F>0&&(this._length[J]-=4294967296*F);return this},V.prototype._update=function(){throw new Error("_update is not implemented")},V.prototype.digest=function(U){if(this._finalized)throw new Error("Digest already called");this._finalized=!0;var X=this._digest();U!==void 0&&(X=X.toString(U)),this._block.fill(0),this._blockOffset=0;for(var K=0;K<4;++K)this._length[K]=0;return X},V.prototype._digest=function(){throw new Error("_digest is not implemented")},Q.exports=V}}),x$=q$({"node_modules/md5.js/index.js"($,Q){var Y=_$(),Z=N$(),G=k$().Buffer,V=new Array(16);function U(){Z.call(this,64),this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878}Y(U,Z),U.prototype._update=function(){for(var F=V,A=0;A<16;++A)F[A]=this._block.readInt32LE(A*4);var H=this._a,W=this._b,E=this._c,T=this._d;H=K(H,W,E,T,F[0],3614090360,7),T=K(T,H,W,E,F[1],3905402710,12),E=K(E,T,H,W,F[2],606105819,17),W=K(W,E,T,H,F[3],3250441966,22),H=K(H,W,E,T,F[4],4118548399,7),T=K(T,H,W,E,F[5],1200080426,12),E=K(E,T,H,W,F[6],2821735955,17),W=K(W,E,T,H,F[7],4249261313,22),H=K(H,W,E,T,F[8],1770035416,7),T=K(T,H,W,E,F[9],2336552879,12),E=K(E,T,H,W,F[10],4294925233,17),W=K(W,E,T,H,F[11],2304563134,22),H=K(H,W,E,T,F[12],1804603682,7),T=K(T,H,W,E,F[13],4254626195,12),E=K(E,T,H,W,F[14],2792965006,17),W=K(W,E,T,H,F[15],1236535329,22),H=I(H,W,E,T,F[1],4129170786,5),T=I(T,H,W,E,F[6],3225465664,9),E=I(E,T,H,W,F[11],643717713,14),W=I(W,E,T,H,F[0],3921069994,20),H=I(H,W,E,T,F[5],3593408605,5),T=I(T,H,W,E,F[10],38016083,9),E=I(E,T,H,W,F[15],3634488961,14),W=I(W,E,T,H,F[4],3889429448,20),H=I(H,W,E,T,F[9],568446438,5),T=I(T,H,W,E,F[14],3275163606,9),E=I(E,T,H,W,F[3],4107603335,14),W=I(W,E,T,H,F[8],1163531501,20),H=I(H,W,E,T,F[13],2850285829,5),T=I(T,H,W,E,F[2],4243563512,9),E=I(E,T,H,W,F[7],1735328473,14),W=I(W,E,T,H,F[12],2368359562,20),H=O(H,W,E,T,F[5],4294588738,4),T=O(T,H,W,E,F[8],2272392833,11),E=O(E,T,H,W,F[11],1839030562,16),W=O(W,E,T,H,F[14],4259657740,23),H=O(H,W,E,T,F[1],2763975236,4),T=O(T,H,W,E,F[4],1272893353,11),E=O(E,T,H,W,F[7],4139469664,16),W=O(W,E,T,H,F[10],3200236656,23),H=O(H,W,E,T,F[13],681279174,4),T=O(T,H,W,E,F[0],3936430074,11),E=O(E,T,H,W,F[3],3572445317,16),W=O(W,E,T,H,F[6],76029189,23),H=O(H,W,E,T,F[9],3654602809,4),T=O(T,H,W,E,F[12],3873151461,11),E=O(E,T,H,W,F[15],530742520,16),W=O(W,E,T,H,F[2],3299628645,23),H=J(H,W,E,T,F[0],4096336452,6),T=J(T,H,W,E,F[7],1126891415,10),E=J(E,T,H,W,F[14],2878612391,15),W=J(W,E,T,H,F[5],4237533241,21),H=J(H,W,E,T,F[12],1700485571,6),T=J(T,H,W,E,F[3],2399980690,10),E=J(E,T,H,W,F[10],4293915773,15),W=J(W,E,T,H,F[1],2240044497,21),H=J(H,W,E,T,F[8],1873313359,6),T=J(T,H,W,E,F[15],4264355552,10),E=J(E,T,H,W,F[6],2734768916,15),W=J(W,E,T,H,F[13],1309151649,21),H=J(H,W,E,T,F[4],4149444226,6),T=J(T,H,W,E,F[11],3174756917,10),E=J(E,T,H,W,F[2],718787259,15),W=J(W,E,T,H,F[9],3951481745,21),this._a=this._a+H|0,this._b=this._b+W|0,this._c=this._c+E|0,this._d=this._d+T|0},U.prototype._digest=function(){this._block[this._blockOffset++]=128,this._blockOffset>56&&(this._block.fill(0,this._blockOffset,64),this._update(),this._blockOffset=0),this._block.fill(0,this._blockOffset,56),this._block.writeUInt32LE(this._length[0],56),this._block.writeUInt32LE(this._length[1],60),this._update();var F=G.allocUnsafe(16);return F.writeInt32LE(this._a,0),F.writeInt32LE(this._b,4),F.writeInt32LE(this._c,8),F.writeInt32LE(this._d,12),F};function X(F,A){return F<<A|F>>>32-A}function K(F,A,H,W,E,T,D){return X(F+(A&H|~A&W)+E+T|0,D)+A|0}function I(F,A,H,W,E,T,D){return X(F+(A&W|H&~W)+E+T|0,D)+A|0}function O(F,A,H,W,E,T,D){return X(F+(A^H^W)+E+T|0,D)+A|0}function J(F,A,H,W,E,T,D){return X(F+(H^(A|~W))+E+T|0,D)+A|0}Q.exports=U}}),B$=q$({"node_modules/ripemd160/index.js"($,Q){var Y=F$,Z=_$(),G=N$(),V=new Array(16),U=[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],X=[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],K=[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],I=[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],O=[0,1518500249,1859775393,2400959708,2840853838],J=[1352829926,1548603684,1836072691,2053994217,0];function F(){G.call(this,64),this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878,this._e=3285377520}Z(F,G),F.prototype._update=function(){for(var C=V,L=0;L<16;++L)C[L]=this._block.readInt32LE(L*4);for(var R=this._a|0,P=this._b|0,z=this._c|0,M=this._d|0,S=this._e|0,v=this._a|0,q=this._b|0,j=this._c|0,k=this._d|0,g=this._e|0,_=0;_<80;_+=1){var N,x;_<16?(N=H(R,P,z,M,S,C[U[_]],O[0],K[_]),x=D(v,q,j,k,g,C[X[_]],J[0],I[_])):_<32?(N=W(R,P,z,M,S,C[U[_]],O[1],K[_]),x=T(v,q,j,k,g,C[X[_]],J[1],I[_])):_<48?(N=E(R,P,z,M,S,C[U[_]],O[2],K[_]),x=E(v,q,j,k,g,C[X[_]],J[2],I[_])):_<64?(N=T(R,P,z,M,S,C[U[_]],O[3],K[_]),x=W(v,q,j,k,g,C[X[_]],J[3],I[_])):(N=D(R,P,z,M,S,C[U[_]],O[4],K[_]),x=H(v,q,j,k,g,C[X[_]],J[4],I[_])),R=S,S=M,M=A(z,10),z=P,P=N,v=g,g=k,k=A(j,10),j=q,q=x}var B=this._b+z+k|0;this._b=this._c+M+g|0,this._c=this._d+S+v|0,this._d=this._e+R+q|0,this._e=this._a+P+j|0,this._a=B},F.prototype._digest=function(){this._block[this._blockOffset++]=128,this._blockOffset>56&&(this._block.fill(0,this._blockOffset,64),this._update(),this._blockOffset=0),this._block.fill(0,this._blockOffset,56),this._block.writeUInt32LE(this._length[0],56),this._block.writeUInt32LE(this._length[1],60),this._update();var C=Y.alloc?Y.alloc(20):new Y(20);return C.writeInt32LE(this._a,0),C.writeInt32LE(this._b,4),C.writeInt32LE(this._c,8),C.writeInt32LE(this._d,12),C.writeInt32LE(this._e,16),C};function A(C,L){return C<<L|C>>>32-L}function H(C,L,R,P,z,M,S,v){return A(C+(L^R^P)+M+S|0,v)+z|0}function W(C,L,R,P,z,M,S,v){return A(C+(L&R|~L&P)+M+S|0,v)+z|0}function E(C,L,R,P,z,M,S,v){return A(C+((L|~R)^P)+M+S|0,v)+z|0}function T(C,L,R,P,z,M,S,v){return A(C+(L&P|R&~P)+M+S|0,v)+z|0}function D(C,L,R,P,z,M,S,v){return A(C+(L^(R|~P))+M+S|0,v)+z|0}Q.exports=F}}),y$=q$({"node_modules/sha.js/hash.js"($,Q){var Y=k$().Buffer;function Z(G,V){this._block=Y.alloc(G),this._finalSize=V,this._blockSize=G,this._len=0}Z.prototype.update=function(G,V){typeof G=="string"&&(V=V||"utf8",G=Y.from(G,V));for(var U=this._block,X=this._blockSize,K=G.length,I=this._len,O=0;O<K;){for(var J=I%X,F=Math.min(K-O,X-J),A=0;A<F;A++)U[J+A]=G[O+A];I+=F,O+=F,I%X===0&&this._update(U)}return this._len+=K,this},Z.prototype.digest=function(G){var V=this._len%this._blockSize;this._block[V]=128,this._block.fill(0,V+1),V>=this._finalSize&&(this._update(this._block),this._block.fill(0));var U=this._len*8;if(U<=4294967295)this._block.writeUInt32BE(U,this._blockSize-4);else{var X=(U&4294967295)>>>0,K=(U-X)/4294967296;this._block.writeUInt32BE(K,this._blockSize-8),this._block.writeUInt32BE(X,this._blockSize-4)}this._update(this._block);var I=this._hash();return G?I.toString(G):I},Z.prototype._update=function(){throw new Error("_update must be implemented by subclass")},Q.exports=Z}}),w$=q$({"node_modules/sha.js/sha.js"($,Q){var Y=_$(),Z=y$(),G=k$().Buffer,V=[1518500249,1859775393,-1894007588,-899497514],U=new Array(80);function X(){this.init(),this._w=U,Z.call(this,64,56)}Y(X,Z),X.prototype.init=function(){return this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878,this._e=3285377520,this};function K(J){return J<<5|J>>>27}function I(J){return J<<30|J>>>2}function O(J,F,A,H){return J===0?F&A|~F&H:J===2?F&A|F&H|A&H:F^A^H}X.prototype._update=function(J){for(var F=this._w,A=this._a|0,H=this._b|0,W=this._c|0,E=this._d|0,T=this._e|0,D=0;D<16;++D)F[D]=J.readInt32BE(D*4);for(;D<80;++D)F[D]=F[D-3]^F[D-8]^F[D-14]^F[D-16];for(var C=0;C<80;++C){var L=~~(C/20),R=K(A)+O(L,H,W,E)+T+F[C]+V[L]|0;T=E,E=W,W=I(H),H=A,A=R}this._a=A+this._a|0,this._b=H+this._b|0,this._c=W+this._c|0,this._d=E+this._d|0,this._e=T+this._e|0},X.prototype._hash=function(){var J=G.allocUnsafe(20);return J.writeInt32BE(this._a|0,0),J.writeInt32BE(this._b|0,4),J.writeInt32BE(this._c|0,8),J.writeInt32BE(this._d|0,12),J.writeInt32BE(this._e|0,16),J},Q.exports=X}}),p$=q$({"node_modules/sha.js/sha1.js"($,Q){var Y=_$(),Z=y$(),G=k$().Buffer,V=[1518500249,1859775393,-1894007588,-899497514],U=new Array(80);function X(){this.init(),this._w=U,Z.call(this,64,56)}Y(X,Z),X.prototype.init=function(){return this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878,this._e=3285377520,this};function K(F){return F<<1|F>>>31}function I(F){return F<<5|F>>>27}function O(F){return F<<30|F>>>2}function J(F,A,H,W){return F===0?A&H|~A&W:F===2?A&H|A&W|H&W:A^H^W}X.prototype._update=function(F){for(var A=this._w,H=this._a|0,W=this._b|0,E=this._c|0,T=this._d|0,D=this._e|0,C=0;C<16;++C)A[C]=F.readInt32BE(C*4);for(;C<80;++C)A[C]=K(A[C-3]^A[C-8]^A[C-14]^A[C-16]);for(var L=0;L<80;++L){var R=~~(L/20),P=I(H)+J(R,W,E,T)+D+A[L]+V[R]|0;D=T,T=E,E=O(W),W=H,H=P}this._a=H+this._a|0,this._b=W+this._b|0,this._c=E+this._c|0,this._d=T+this._d|0,this._e=D+this._e|0},X.prototype._hash=function(){var F=G.allocUnsafe(20);return F.writeInt32BE(this._a|0,0),F.writeInt32BE(this._b|0,4),F.writeInt32BE(this._c|0,8),F.writeInt32BE(this._d|0,12),F.writeInt32BE(this._e|0,16),F},Q.exports=X}}),f$=q$({"node_modules/sha.js/sha256.js"($,Q){var Y=_$(),Z=y$(),G=k$().Buffer,V=[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],U=new Array(64);function X(){this.init(),this._w=U,Z.call(this,64,56)}Y(X,Z),X.prototype.init=function(){return this._a=1779033703,this._b=3144134277,this._c=1013904242,this._d=2773480762,this._e=1359893119,this._f=2600822924,this._g=528734635,this._h=1541459225,this};function K(H,W,E){return E^H&(W^E)}function I(H,W,E){return H&W|E&(H|W)}function O(H){return(H>>>2|H<<30)^(H>>>13|H<<19)^(H>>>22|H<<10)}function J(H){return(H>>>6|H<<26)^(H>>>11|H<<21)^(H>>>25|H<<7)}function F(H){return(H>>>7|H<<25)^(H>>>18|H<<14)^H>>>3}function A(H){return(H>>>17|H<<15)^(H>>>19|H<<13)^H>>>10}X.prototype._update=function(H){for(var W=this._w,E=this._a|0,T=this._b|0,D=this._c|0,C=this._d|0,L=this._e|0,R=this._f|0,P=this._g|0,z=this._h|0,M=0;M<16;++M)W[M]=H.readInt32BE(M*4);for(;M<64;++M)W[M]=A(W[M-2])+W[M-7]+F(W[M-15])+W[M-16]|0;for(var S=0;S<64;++S){var v=z+J(L)+K(L,R,P)+V[S]+W[S]|0,q=O(E)+I(E,T,D)|0;z=P,P=R,R=L,L=C+v|0,C=D,D=T,T=E,E=v+q|0}this._a=E+this._a|0,this._b=T+this._b|0,this._c=D+this._c|0,this._d=C+this._d|0,this._e=L+this._e|0,this._f=R+this._f|0,this._g=P+this._g|0,this._h=z+this._h|0},X.prototype._hash=function(){var H=G.allocUnsafe(32);return H.writeInt32BE(this._a,0),H.writeInt32BE(this._b,4),H.writeInt32BE(this._c,8),H.writeInt32BE(this._d,12),H.writeInt32BE(this._e,16),H.writeInt32BE(this._f,20),H.writeInt32BE(this._g,24),H.writeInt32BE(this._h,28),H},Q.exports=X}}),c$=q$({"node_modules/sha.js/sha224.js"($,Q){var Y=_$(),Z=f$(),G=y$(),V=k$().Buffer,U=new Array(64);function X(){this.init(),this._w=U,G.call(this,64,56)}Y(X,Z),X.prototype.init=function(){return this._a=3238371032,this._b=914150663,this._c=812702999,this._d=4144912697,this._e=4290775857,this._f=1750603025,this._g=1694076839,this._h=3204075428,this},X.prototype._hash=function(){var K=V.allocUnsafe(28);return K.writeInt32BE(this._a,0),K.writeInt32BE(this._b,4),K.writeInt32BE(this._c,8),K.writeInt32BE(this._d,12),K.writeInt32BE(this._e,16),K.writeInt32BE(this._f,20),K.writeInt32BE(this._g,24),K},Q.exports=X}}),h$=q$({"node_modules/sha.js/sha512.js"($,Q){var Y=_$(),Z=y$(),G=k$().Buffer,V=[1116352408,3609767458,1899447441,602891725,3049323471,3964484399,3921009573,2173295548,961987163,4081628472,1508970993,3053834265,2453635748,2937671579,2870763221,3664609560,3624381080,2734883394,310598401,1164996542,607225278,1323610764,1426881987,3590304994,1925078388,4068182383,2162078206,991336113,2614888103,633803317,3248222580,3479774868,3835390401,2666613458,4022224774,944711139,264347078,2341262773,604807628,2007800933,770255983,1495990901,1249150122,1856431235,1555081692,3175218132,1996064986,2198950837,2554220882,3999719339,2821834349,766784016,2952996808,2566594879,3210313671,3203337956,3336571891,1034457026,3584528711,2466948901,113926993,3758326383,338241895,168717936,666307205,1188179964,773529912,1546045734,1294757372,1522805485,1396182291,2643833823,1695183700,2343527390,1986661051,1014477480,2177026350,1206759142,2456956037,344077627,2730485921,1290863460,2820302411,3158454273,3259730800,3505952657,3345764771,106217008,3516065817,3606008344,3600352804,1432725776,4094571909,1467031594,275423344,851169720,430227734,3100823752,506948616,1363258195,659060556,3750685593,883997877,3785050280,958139571,3318307427,1322822218,3812723403,1537002063,2003034995,1747873779,3602036899,1955562222,1575990012,2024104815,1125592928,2227730452,2716904306,2361852424,442776044,2428436474,593698344,2756734187,3733110249,3204031479,2999351573,3329325298,3815920427,3391569614,3928383900,3515267271,566280711,3940187606,3454069534,4118630271,4000239992,116418474,1914138554,174292421,2731055270,289380356,3203993006,460393269,320620315,685471733,587496836,852142971,1086792851,1017036298,365543100,1126000580,2618297676,1288033470,3409855158,1501505948,4234509866,1607167915,987167468,1816402316,1246189591],U=new Array(160);function X(){this.init(),this._w=U,Z.call(this,128,112)}Y(X,Z),X.prototype.init=function(){return this._ah=1779033703,this._bh=3144134277,this._ch=1013904242,this._dh=2773480762,this._eh=1359893119,this._fh=2600822924,this._gh=528734635,this._hh=1541459225,this._al=4089235720,this._bl=2227873595,this._cl=4271175723,this._dl=1595750129,this._el=2917565137,this._fl=725511199,this._gl=4215389547,this._hl=327033209,this};function K(T,D,C){return C^T&(D^C)}function I(T,D,C){return T&D|C&(T|D)}function O(T,D){return(T>>>28|D<<4)^(D>>>2|T<<30)^(D>>>7|T<<25)}function J(T,D){return(T>>>14|D<<18)^(T>>>18|D<<14)^(D>>>9|T<<23)}function F(T,D){return(T>>>1|D<<31)^(T>>>8|D<<24)^T>>>7}function A(T,D){return(T>>>1|D<<31)^(T>>>8|D<<24)^(T>>>7|D<<25)}function H(T,D){return(T>>>19|D<<13)^(D>>>29|T<<3)^T>>>6}function W(T,D){return(T>>>19|D<<13)^(D>>>29|T<<3)^(T>>>6|D<<26)}function E(T,D){return T>>>0<D>>>0?1:0}X.prototype._update=function(T){for(var D=this._w,C=this._ah|0,L=this._bh|0,R=this._ch|0,P=this._dh|0,z=this._eh|0,M=this._fh|0,S=this._gh|0,v=this._hh|0,q=this._al|0,j=this._bl|0,k=this._cl|0,g=this._dl|0,_=this._el|0,N=this._fl|0,x=this._gl|0,B=this._hl|0,y=0;y<32;y+=2)D[y]=T.readInt32BE(y*4),D[y+1]=T.readInt32BE(y*4+4);for(;y<160;y+=2){var w=D[y-30],p=D[y-30+1],f=F(w,p),c=A(p,w);w=D[y-4],p=D[y-4+1];var h=H(w,p),d=W(p,w),b=D[y-14],l=D[y-14+1],o=D[y-32],u=D[y-32+1],n=c+l|0,s=f+b+E(n,c)|0;n=n+d|0,s=s+h+E(n,d)|0,n=n+u|0,s=s+o+E(n,u)|0,D[y]=s,D[y+1]=n}for(var t=0;t<160;t+=2){s=D[t],n=D[t+1];var m=I(C,L,R),a=I(q,j,k),e=O(C,q),r=O(q,C),i=J(z,_),$0=J(_,z),Q0=V[t],Y0=V[t+1],Z0=K(z,M,S),G0=K(_,N,x),V0=B+$0|0,U0=v+i+E(V0,B)|0;V0=V0+G0|0,U0=U0+Z0+E(V0,G0)|0,V0=V0+Y0|0,U0=U0+Q0+E(V0,Y0)|0,V0=V0+n|0,U0=U0+s+E(V0,n)|0;var X0=r+a|0,K0=e+m+E(X0,r)|0;v=S,B=x,S=M,x=N,M=z,N=_,_=g+V0|0,z=P+U0+E(_,g)|0,P=R,g=k,R=L,k=j,L=C,j=q,q=V0+X0|0,C=U0+K0+E(q,V0)|0}this._al=this._al+q|0,this._bl=this._bl+j|0,this._cl=this._cl+k|0,this._dl=this._dl+g|0,this._el=this._el+_|0,this._fl=this._fl+N|0,this._gl=this._gl+x|0,this._hl=this._hl+B|0,this._ah=this._ah+C+E(this._al,q)|0,this._bh=this._bh+L+E(this._bl,j)|0,this._ch=this._ch+R+E(this._cl,k)|0,this._dh=this._dh+P+E(this._dl,g)|0,this._eh=this._eh+z+E(this._el,_)|0,this._fh=this._fh+M+E(this._fl,N)|0,this._gh=this._gh+S+E(this._gl,x)|0,this._hh=this._hh+v+E(this._hl,B)|0},X.prototype._hash=function(){var T=G.allocUnsafe(64);function D(C,L,R){T.writeInt32BE(C,R),T.writeInt32BE(L,R+4)}return D(this._ah,this._al,0),D(this._bh,this._bl,8),D(this._ch,this._cl,16),D(this._dh,this._dl,24),D(this._eh,this._el,32),D(this._fh,this._fl,40),D(this._gh,this._gl,48),D(this._hh,this._hl,56),T},Q.exports=X}}),d$=q$({"node_modules/sha.js/sha384.js"($,Q){var Y=_$(),Z=h$(),G=y$(),V=k$().Buffer,U=new Array(160);function X(){this.init(),this._w=U,G.call(this,128,112)}Y(X,Z),X.prototype.init=function(){return this._ah=3418070365,this._bh=1654270250,this._ch=2438529370,this._dh=355462360,this._eh=1731405415,this._fh=2394180231,this._gh=3675008525,this._hh=1203062813,this._al=3238371032,this._bl=914150663,this._cl=812702999,this._dl=4144912697,this._el=4290775857,this._fl=1750603025,this._gl=1694076839,this._hl=3204075428,this},X.prototype._hash=function(){var K=V.allocUnsafe(48);function I(O,J,F){K.writeInt32BE(O,F),K.writeInt32BE(J,F+4)}return I(this._ah,this._al,0),I(this._bh,this._bl,8),I(this._ch,this._cl,16),I(this._dh,this._dl,24),I(this._eh,this._el,32),I(this._fh,this._fl,40),K},Q.exports=X}}),b$=q$({"node_modules/sha.js/index.js"(Y,Q){var Y=Q.exports=function(Z){Z=Z.toLowerCase();var G=Y[Z];if(!G)throw new Error(Z+" is not supported (we accept pull requests)");return new G};Y.sha=w$(),Y.sha1=p$(),Y.sha224=c$(),Y.sha256=f$(),Y.sha384=d$(),Y.sha512=h$()}}),l$=q$({"node_modules/cipher-base/index.js"($,Q){var Y=k$().Buffer,Z=_$();function G(V){A$.Transform.call(this),this.hashMode=typeof V=="string",this.hashMode?this[V]=this._finalOrDigest:this.final=this._finalOrDigest,this._final&&(this.__final=this._final,this._final=null),this._decoder=null,this._encoding=null}Z(G,A$.Transform),G.prototype.update=function(V,U,X){typeof V=="string"&&(V=Y.from(V,U));var K=this._update(V);return this.hashMode?this:(X&&(K=this._toString(K,X)),K)},G.prototype.setAutoPadding=function(){},G.prototype.getAuthTag=function(){throw new Error("trying to get auth tag in unsupported state")},G.prototype.setAuthTag=function(){throw new Error("trying to set auth tag in unsupported state")},G.prototype.setAAD=function(){throw new Error("trying to set aad in unsupported state")},G.prototype._transform=function(V,U,X){var K;try{this.hashMode?this._update(V):this.push(this._update(V))}catch(I){K=I}finally{X(K)}},G.prototype._flush=function(V){var U;try{this.push(this.__final())}catch(X){U=X}V(U)},G.prototype._finalOrDigest=function(V){var U=this.__final()||Y.alloc(0);return V&&(U=this._toString(U,V,!0)),U},G.prototype._toString=function(V,U,X){if(this._decoder||(this._decoder=new z$(U),this._encoding=U),this._encoding!==U)throw new Error("can't switch encodings");var K=this._decoder.write(V);return X&&(K+=this._decoder.end()),K},Q.exports=G}}),o$=q$({"node_modules/create-hash/browser.js"($,Q){const Y=function V(U,X){this._options=X,this._hasher=new sY(U,X),this._finalized=!1};Y.prototype=Object.create(A$.Transform.prototype),Y.prototype.update=function V(U,X){return this._checkFinalized(),this._hasher.update(U,X),this},Y.prototype.digest=function V(U,X){return this._checkFinalized(),this._finalized=!0,this._hasher.digest(U,X)},Y.prototype._checkFinalized=function V(){if(this._finalized){var U=new Error("Digest already called");throw U.code="ERR_CRYPTO_HASH_FINALIZED",U}},Y.prototype.copy=function V(){const U=Object.create(Y.prototype);return U._options=this._options,U._hasher=this._hasher.copy(),U._finalized=this._finalized,U};const Z={__proto__:A$.Transform.prototype,...Y.prototype,_transform(V,U,X){this.update(V,U),X&&X()},_flush(V){this.push(this.digest()),V()}},G=["_events","_eventsCount","_final","_maxListeners","_maxListeners","_read","_undestroy","_writableState","_write","_writev","addListener","asIndexedPairs","closed","compose","constructor","cork","destroy","destroyed","drop","emit","end","errored","eventNames","every","filter","find","flatMap","forEach","getMaxListeners","hasOwnProperty","isPaused","isPrototypeOf","iterator","listenerCount","listeners","map","off","on","once","pause","pipe","prependListener","prependOnceListener","propertyIsEnumerable","push","rawListeners","read","readable","readableAborted","readableBuffer","readableDidRead","readableEncoding","readableEnded","readableFlowing","readableHighWaterMark","readableLength","readableObjectMode","reduce","removeAllListeners","removeListener","resume","setDefaultEncoding","setEncoding","setMaxListeners","some","take","toArray","toLocaleString","toString","uncork","unpipe","unshift","valueOf","wrap","writable","writableBuffer","writableCorked","writableEnded","writableFinished","writableHighWaterMark","writableLength","writableNeedDrain","writableObjectMode","write"];for(let V of G)Object.defineProperty(Y.prototype,V,{get(){return Object.setPrototypeOf(this,Z),A$.Transform.call(this,this._options),this[V]},enumerable:!1,configurable:!0});Q.exports=function V(U){return new Y(U)},Q.exports.createHash=Q.exports,Q.exports.Hash=Y}}),u$=q$({"node_modules/create-hmac/legacy.js"($,Q){var Y=_$(),Z=k$().Buffer,G=l$(),V=Z.alloc(128),U=64;function X(K,I){G.call(this,"digest"),typeof I=="string"&&(I=Z.from(I)),this._alg=K,this._key=I,I.length>U?I=K(I):I.length<U&&(I=Z.concat([I,V],U));for(var O=this._ipad=Z.allocUnsafe(U),J=this._opad=Z.allocUnsafe(U),F=0;F<U;F++)O[F]=I[F]^54,J[F]=I[F]^92;this._hash=[O]}Y(X,G),X.prototype._update=function(K){this._hash.push(K)},X.prototype._final=function(){var K=this._alg(Z.concat(this._hash));return this._alg(Z.concat([this._opad,K]))},Q.exports=X}}),n$=q$({"node_modules/create-hash/md5.js"($,Q){var Y=x$();Q.exports=function(Z){return new Y().update(Z).digest()}}}),s$=q$({"node_modules/create-hmac/browser.js"($,Q){var Y=_$(),Z=u$(),G=l$(),V=k$().Buffer,U=n$(),X=B$(),K=b$(),I=V.alloc(128);function O(J,F){G.call(this,"digest"),typeof F=="string"&&(F=V.from(F));var A=J==="sha512"||J==="sha384"?128:64;if(this._alg=J,this._key=F,F.length>A){var H=J==="rmd160"?new X:K(J);F=H.update(F).digest()}else F.length<A&&(F=V.concat([F,I],A));for(var W=this._ipad=V.allocUnsafe(A),E=this._opad=V.allocUnsafe(A),T=0;T<A;T++)W[T]=F[T]^54,E[T]=F[T]^92;this._hash=J==="rmd160"?new X:K(J),this._hash.update(W)}Y(O,G),O.prototype._update=function(J){this._hash.update(J)},O.prototype._final=function(){var J=this._hash.digest(),F=this._alg==="rmd160"?new X:K(this._alg);return F.update(this._opad).update(J).digest()},Q.exports=function(J,F){return J=J.toLowerCase(),J==="rmd160"||J==="ripemd160"?new O("rmd160",F):J==="md5"?new Z(U,F):new O(J,F)}}}),t$=q$({"node_modules/browserify-sign/browser/algorithms.json"($,Q){Q.exports={sha224WithRSAEncryption:{sign:"rsa",hash:"sha224",id:"302d300d06096086480165030402040500041c"},"RSA-SHA224":{sign:"ecdsa/rsa",hash:"sha224",id:"302d300d06096086480165030402040500041c"},sha256WithRSAEncryption:{sign:"rsa",hash:"sha256",id:"3031300d060960864801650304020105000420"},"RSA-SHA256":{sign:"ecdsa/rsa",hash:"sha256",id:"3031300d060960864801650304020105000420"},sha384WithRSAEncryption:{sign:"rsa",hash:"sha384",id:"3041300d060960864801650304020205000430"},"RSA-SHA384":{sign:"ecdsa/rsa",hash:"sha384",id:"3041300d060960864801650304020205000430"},sha512WithRSAEncryption:{sign:"rsa",hash:"sha512",id:"3051300d060960864801650304020305000440"},"RSA-SHA512":{sign:"ecdsa/rsa",hash:"sha512",id:"3051300d060960864801650304020305000440"},"RSA-SHA1":{sign:"rsa",hash:"sha1",id:"3021300906052b0e03021a05000414"},"ecdsa-with-SHA1":{sign:"ecdsa",hash:"sha1",id:""},sha256:{sign:"ecdsa",hash:"sha256",id:""},sha224:{sign:"ecdsa",hash:"sha224",id:""},sha384:{sign:"ecdsa",hash:"sha384",id:""},sha512:{sign:"ecdsa",hash:"sha512",id:""},"DSA-SHA":{sign:"dsa",hash:"sha1",id:""},"DSA-SHA1":{sign:"dsa",hash:"sha1",id:""},DSA:{sign:"dsa",hash:"sha1",id:""},"DSA-WITH-SHA224":{sign:"dsa",hash:"sha224",id:""},"DSA-SHA224":{sign:"dsa",hash:"sha224",id:""},"DSA-WITH-SHA256":{sign:"dsa",hash:"sha256",id:""},"DSA-SHA256":{sign:"dsa",hash:"sha256",id:""},"DSA-WITH-SHA384":{sign:"dsa",hash:"sha384",id:""},"DSA-SHA384":{sign:"dsa",hash:"sha384",id:""},"DSA-WITH-SHA512":{sign:"dsa",hash:"sha512",id:""},"DSA-SHA512":{sign:"dsa",hash:"sha512",id:""},"DSA-RIPEMD160":{sign:"dsa",hash:"rmd160",id:""},ripemd160WithRSA:{sign:"rsa",hash:"rmd160",id:"3021300906052b2403020105000414"},"RSA-RIPEMD160":{sign:"rsa",hash:"rmd160",id:"3021300906052b2403020105000414"},md5WithRSAEncryption:{sign:"rsa",hash:"md5",id:"3020300c06082a864886f70d020505000410"},"RSA-MD5":{sign:"rsa",hash:"md5",id:"3020300c06082a864886f70d020505000410"}}}}),m$=q$({"node_modules/browserify-sign/algos.js"($,Q){Q.exports=t$()}}),a$=q$({"node_modules/pbkdf2/lib/precondition.js"($,Q){var Y=Math.pow(2,30)-1;Q.exports=function(Z,G){if(typeof Z!="number")throw new TypeError("Iterations not a number");if(Z<0)throw new TypeError("Bad iterations");if(typeof G!="number")throw new TypeError("Key length not a number");if(G<0||G>Y||G!==G)throw new TypeError("Bad key length")}}}),e$=q$({"node_modules/pbkdf2/lib/default-encoding.js"($,Q){var Y;global.process&&global.process.browser?Y="utf-8":global.process&&global.process.version?(Z=parseInt(process.version.split(".")[0].slice(1),10),Y=Z>=6?"utf-8":"binary"):Y="utf-8";var Z;Q.exports=Y}}),r$=q$({"node_modules/pbkdf2/lib/to-buffer.js"($,Q){var Y=k$().Buffer;Q.exports=function(Z,G,V){if(Y.isBuffer(Z))return Z;if(typeof Z=="string")return Y.from(Z,G);if(ArrayBuffer.isView(Z))return Y.from(Z.buffer);throw new TypeError(V+" must be a string, a Buffer, a typed array or a DataView")}}}),i$=q$({"node_modules/pbkdf2/lib/sync-browser.js"($,Q){var Y=n$(),Z=B$(),G=b$(),V=k$().Buffer,U=a$(),X=e$(),K=r$(),I=V.alloc(128),O={md5:16,sha1:20,sha224:28,sha256:32,sha384:48,sha512:64,rmd160:20,ripemd160:20};function J(H,W,E){var T=F(H),D=H==="sha512"||H==="sha384"?128:64;W.length>D?W=T(W):W.length<D&&(W=V.concat([W,I],D));for(var C=V.allocUnsafe(D+O[H]),L=V.allocUnsafe(D+O[H]),R=0;R<D;R++)C[R]=W[R]^54,L[R]=W[R]^92;var P=V.allocUnsafe(D+E+4);C.copy(P,0,0,D),this.ipad1=P,this.ipad2=C,this.opad=L,this.alg=H,this.blocksize=D,this.hash=T,this.size=O[H]}J.prototype.run=function(H,W){H.copy(W,this.blocksize);var E=this.hash(W);return E.copy(this.opad,this.blocksize),this.hash(this.opad)};function F(H){function W(T){return G(H).update(T).digest()}function E(T){return new Z().update(T).digest()}return H==="rmd160"||H==="ripemd160"?E:H==="md5"?Y:W}function A(H,W,E,T,D){U(E,T),H=K(H,X,"Password"),W=K(W,X,"Salt"),D=D||"sha1";var C=new J(D,H,W.length),L=V.allocUnsafe(T),R=V.allocUnsafe(W.length+4);W.copy(R,0,0,W.length);for(var P=0,z=O[D],M=Math.ceil(T/z),S=1;S<=M;S++){R.writeUInt32BE(S,W.length);for(var v=C.run(R,C.ipad1),q=v,j=1;j<E;j++){q=C.run(q,C.ipad2);for(var k=0;k<z;k++)v[k]^=q[k]}v.copy(L,P),P+=z}return L}Q.exports=A}}),$Q=q$({"node_modules/pbkdf2/lib/async.js"($,Q){var Y=k$().Buffer,Z=a$(),G=e$(),V=i$(),U=r$(),X,K=v$.subtle,I={sha:"SHA-1","sha-1":"SHA-1",sha1:"SHA-1",sha256:"SHA-256","sha-256":"SHA-256",sha384:"SHA-384","sha-384":"SHA-384","sha-512":"SHA-512",sha512:"SHA-512"},O=[];function J(E){if(global.process&&!global.process.browser||!K||!K.importKey||!K.deriveBits)return Promise.resolve(!1);if(O[E]!==void 0)return O[E];X=X||Y.alloc(8);var T=H(X,X,10,128,E).then(function(){return!0}).catch(function(){return!1});return O[E]=T,T}var F;function A(){return F||(global.process&&global.process.nextTick?F=global.process.nextTick:global.queueMicrotask?F=global.queueMicrotask:global.setImmediate?F=global.setImmediate:F=global.setTimeout,F)}function H(E,T,D,C,L){return K.importKey("raw",E,{name:"PBKDF2"},!1,["deriveBits"]).then(function(R){return K.deriveBits({name:"PBKDF2",salt:T,iterations:D,hash:{name:L}},R,C<<3)}).then(function(R){return Y.from(R)})}function W(E,T){E.then(function(D){A()(function(){T(null,D)})},function(D){A()(function(){T(D)})})}Q.exports=function(E,T,D,C,L,R){typeof L=="function"&&(R=L,L=void 0),L=L||"sha1";var P=I[L.toLowerCase()];if(!P||typeof global.Promise!="function"){A()(function(){var z;try{z=V(E,T,D,C,L)}catch(M){return R(M)}R(null,z)});return}if(Z(D,C),E=U(E,G,"Password"),T=U(T,G,"Salt"),typeof R!="function")throw new Error("No callback provided to pbkdf2");W(J(P).then(function(z){return z?H(E,T,D,C,P):V(E,T,D,C,L)}),R)}}}),QQ=q$({"node_modules/pbkdf2/browser.js"($){$.pbkdf2=$Q(),$.pbkdf2Sync=i$()}}),YQ=q$({"node_modules/des.js/lib/des/utils.js"($){$.readUInt32BE=function(G,V){var U=G[0+V]<<24|G[1+V]<<16|G[2+V]<<8|G[3+V];return U>>>0},$.writeUInt32BE=function(G,V,U){G[0+U]=V>>>24,G[1+U]=V>>>16&255,G[2+U]=V>>>8&255,G[3+U]=V&255},$.ip=function(G,V,U,X){for(var K=0,I=0,O=6;O>=0;O-=2){for(var J=0;J<=24;J+=8)K<<=1,K|=V>>>J+O&1;for(var J=0;J<=24;J+=8)K<<=1,K|=G>>>J+O&1}for(var O=6;O>=0;O-=2){for(var J=1;J<=25;J+=8)I<<=1,I|=V>>>J+O&1;for(var J=1;J<=25;J+=8)I<<=1,I|=G>>>J+O&1}U[X+0]=K>>>0,U[X+1]=I>>>0},$.rip=function(G,V,U,X){for(var K=0,I=0,O=0;O<4;O++)for(var J=24;J>=0;J-=8)K<<=1,K|=V>>>J+O&1,K<<=1,K|=G>>>J+O&1;for(var O=4;O<8;O++)for(var J=24;J>=0;J-=8)I<<=1,I|=V>>>J+O&1,I<<=1,I|=G>>>J+O&1;U[X+0]=K>>>0,U[X+1]=I>>>0},$.pc1=function(G,V,U,X){for(var K=0,I=0,O=7;O>=5;O--){for(var J=0;J<=24;J+=8)K<<=1,K|=V>>J+O&1;for(var J=0;J<=24;J+=8)K<<=1,K|=G>>J+O&1}for(var J=0;J<=24;J+=8)K<<=1,K|=V>>J+O&1;for(var O=1;O<=3;O++){for(var J=0;J<=24;J+=8)I<<=1,I|=V>>J+O&1;for(var J=0;J<=24;J+=8)I<<=1,I|=G>>J+O&1}for(var J=0;J<=24;J+=8)I<<=1,I|=G>>J+O&1;U[X+0]=K>>>0,U[X+1]=I>>>0},$.r28shl=function(G,V){return G<<V&268435455|G>>>28-V};var Q=[14,11,17,4,27,23,25,0,13,22,7,18,5,9,16,24,2,20,12,21,1,8,15,26,15,4,25,19,9,1,26,16,5,11,23,8,12,7,17,0,22,3,10,14,6,20,27,24];$.pc2=function(G,V,U,X){for(var K=0,I=0,O=Q.length>>>1,J=0;J<O;J++)K<<=1,K|=G>>>Q[J]&1;for(var J=O;J<Q.length;J++)I<<=1,I|=V>>>Q[J]&1;U[X+0]=K>>>0,U[X+1]=I>>>0},$.expand=function(G,V,U){var X=0,K=0;X=(G&1)<<5|G>>>27;for(var I=23;I>=15;I-=4)X<<=6,X|=G>>>I&63;for(var I=11;I>=3;I-=4)K|=G>>>I&63,K<<=6;K|=(G&31)<<1|G>>>31,V[U+0]=X>>>0,V[U+1]=K>>>0};var Y=[14,0,4,15,13,7,1,4,2,14,15,2,11,13,8,1,3,10,10,6,6,12,12,11,5,9,9,5,0,3,7,8,4,15,1,12,14,8,8,2,13,4,6,9,2,1,11,7,15,5,12,11,9,3,7,14,3,10,10,0,5,6,0,13,15,3,1,13,8,4,14,7,6,15,11,2,3,8,4,14,9,12,7,0,2,1,13,10,12,6,0,9,5,11,10,5,0,13,14,8,7,10,11,1,10,3,4,15,13,4,1,2,5,11,8,6,12,7,6,12,9,0,3,5,2,14,15,9,10,13,0,7,9,0,14,9,6,3,3,4,15,6,5,10,1,2,13,8,12,5,7,14,11,12,4,11,2,15,8,1,13,1,6,10,4,13,9,0,8,6,15,9,3,8,0,7,11,4,1,15,2,14,12,3,5,11,10,5,14,2,7,12,7,13,13,8,14,11,3,5,0,6,6,15,9,0,10,3,1,4,2,7,8,2,5,12,11,1,12,10,4,14,15,9,10,3,6,15,9,0,0,6,12,10,11,1,7,13,13,8,15,9,1,4,3,5,14,11,5,12,2,7,8,2,4,14,2,14,12,11,4,2,1,12,7,4,10,7,11,13,6,1,8,5,5,0,3,15,15,10,13,3,0,9,14,8,9,6,4,11,2,8,1,12,11,7,10,1,13,14,7,2,8,13,15,6,9,15,12,0,5,9,6,10,3,4,0,5,14,3,12,10,1,15,10,4,15,2,9,7,2,12,6,9,8,5,0,6,13,1,3,13,4,14,14,0,7,11,5,3,11,8,9,4,14,3,15,2,5,12,2,9,8,5,12,15,3,10,7,11,0,14,4,1,10,7,1,6,13,0,11,8,6,13,4,13,11,0,2,11,14,7,15,4,0,9,8,1,13,10,3,14,12,3,9,5,7,12,5,2,10,15,6,8,1,6,1,6,4,11,11,13,13,8,12,1,3,4,7,10,14,7,10,9,15,5,6,0,8,15,0,14,5,2,9,3,2,12,13,1,2,15,8,13,4,8,6,10,15,3,11,7,1,4,10,12,9,5,3,6,14,11,5,0,0,14,12,9,7,2,7,2,11,1,4,14,1,7,9,4,12,10,14,8,2,13,0,15,6,12,10,9,13,0,15,3,3,5,5,6,8,11];$.substitute=function(G,V){for(var U=0,X=0;X<4;X++){var K=G>>>18-X*6&63,I=Y[X*64+K];U<<=4,U|=I}for(var X=0;X<4;X++){var K=V>>>18-X*6&63,I=Y[256+X*64+K];U<<=4,U|=I}return U>>>0};var Z=[16,25,12,11,3,20,4,15,31,17,9,6,27,14,1,22,30,24,8,18,0,5,29,23,13,19,2,26,10,21,28,7];$.permute=function(G){for(var V=0,U=0;U<Z.length;U++)V<<=1,V|=G>>>Z[U]&1;return V>>>0},$.padSplit=function(G,V,U){for(var X=G.toString(2);X.length<V;)X="0"+X;for(var K=[],I=0;I<V;I+=U)K.push(X.slice(I,I+U));return K.join(" ")}}}),ZQ=q$({"node_modules/minimalistic-assert/index.js"($,Q){Q.exports=Y;function Y(Z,G){if(!Z)throw new Error(G||"Assertion failed")}Y.equal=function(Z,G,V){if(Z!=G)throw new Error(V||"Assertion failed: "+Z+" != "+G)}}}),GQ=q$({"node_modules/des.js/lib/des/cipher.js"($,Q){var Y=ZQ();function Z(G){this.options=G,this.type=this.options.type,this.blockSize=8,this._init(),this.buffer=new Array(this.blockSize),this.bufferOff=0}Q.exports=Z,Z.prototype._init=function(){},Z.prototype.update=function(G){return G.length===0?[]:this.type==="decrypt"?this._updateDecrypt(G):this._updateEncrypt(G)},Z.prototype._buffer=function(G,V){for(var U=Math.min(this.buffer.length-this.bufferOff,G.length-V),X=0;X<U;X++)this.buffer[this.bufferOff+X]=G[V+X];return this.bufferOff+=U,U},Z.prototype._flushBuffer=function(G,V){return this._update(this.buffer,0,G,V),this.bufferOff=0,this.blockSize},Z.prototype._updateEncrypt=function(G){var V=0,U=0,X=(this.bufferOff+G.length)/this.blockSize|0,K=new Array(X*this.blockSize);this.bufferOff!==0&&(V+=this._buffer(G,V),this.bufferOff===this.buffer.length&&(U+=this._flushBuffer(K,U)));for(var I=G.length-(G.length-V)%this.blockSize;V<I;V+=this.blockSize)this._update(G,V,K,U),U+=this.blockSize;for(;V<G.length;V++,this.bufferOff++)this.buffer[this.bufferOff]=G[V];return K},Z.prototype._updateDecrypt=function(G){for(var V=0,U=0,X=Math.ceil((this.bufferOff+G.length)/this.blockSize)-1,K=new Array(X*this.blockSize);X>0;X--)V+=this._buffer(G,V),U+=this._flushBuffer(K,U);return V+=this._buffer(G,V),K},Z.prototype.final=function(G){var V;G&&(V=this.update(G));var U;return this.type==="encrypt"?U=this._finalEncrypt():U=this._finalDecrypt(),V?V.concat(U):U},Z.prototype._pad=function(G,V){if(V===0)return!1;for(;V<G.length;)G[V++]=0;return!0},Z.prototype._finalEncrypt=function(){if(!this._pad(this.buffer,this.bufferOff))return[];var G=new Array(this.blockSize);return this._update(this.buffer,0,G,0),G},Z.prototype._unpad=function(G){return G},Z.prototype._finalDecrypt=function(){Y.equal(this.bufferOff,this.blockSize,"Not enough data to decrypt");var G=new Array(this.blockSize);return this._flushBuffer(G,0),this._unpad(G)}}}),VQ=q$({"node_modules/des.js/lib/des/des.js"($,Q){var Y=ZQ(),Z=_$(),G=YQ(),V=GQ();function U(){this.tmp=new Array(2),this.keys=null}function X(I){V.call(this,I);var O=new U;this._desState=O,this.deriveKeys(O,I.key)}Z(X,V),Q.exports=X,X.create=function(I){return new X(I)};var K=[1,1,2,2,2,2,2,2,1,2,2,2,2,2,2,1];X.prototype.deriveKeys=function(I,O){I.keys=new Array(32),Y.equal(O.length,this.blockSize,"Invalid key length");var J=G.readUInt32BE(O,0),F=G.readUInt32BE(O,4);G.pc1(J,F,I.tmp,0),J=I.tmp[0],F=I.tmp[1];for(var A=0;A<I.keys.length;A+=2){var H=K[A>>>1];J=G.r28shl(J,H),F=G.r28shl(F,H),G.pc2(J,F,I.keys,A)}},X.prototype._update=function(I,O,J,F){var A=this._desState,H=G.readUInt32BE(I,O),W=G.readUInt32BE(I,O+4);G.ip(H,W,A.tmp,0),H=A.tmp[0],W=A.tmp[1],this.type==="encrypt"?this._encrypt(A,H,W,A.tmp,0):this._decrypt(A,H,W,A.tmp,0),H=A.tmp[0],W=A.tmp[1],G.writeUInt32BE(J,H,F),G.writeUInt32BE(J,W,F+4)},X.prototype._pad=function(I,O){for(var J=I.length-O,F=O;F<I.length;F++)I[F]=J;return!0},X.prototype._unpad=function(I){for(var O=I[I.length-1],J=I.length-O;J<I.length;J++)Y.equal(I[J],O);return I.slice(0,I.length-O)},X.prototype._encrypt=function(I,O,J,F,A){for(var H=O,W=J,E=0;E<I.keys.length;E+=2){var T=I.keys[E],D=I.keys[E+1];G.expand(W,I.tmp,0),T^=I.tmp[0],D^=I.tmp[1];var C=G.substitute(T,D),L=G.permute(C),R=W;W=(H^L)>>>0,H=R}G.rip(W,H,F,A)},X.prototype._decrypt=function(I,O,J,F,A){for(var H=J,W=O,E=I.keys.length-2;E>=0;E-=2){var T=I.keys[E],D=I.keys[E+1];G.expand(H,I.tmp,0),T^=I.tmp[0],D^=I.tmp[1];var C=G.substitute(T,D),L=G.permute(C),R=H;H=(W^L)>>>0,W=R}G.rip(H,W,F,A)}}}),UQ=q$({"node_modules/des.js/lib/des/cbc.js"($){var Q=ZQ(),Y=_$(),Z={};function G(U){Q.equal(U.length,8,"Invalid IV length"),this.iv=new Array(8);for(var X=0;X<this.iv.length;X++)this.iv[X]=U[X]}function V(U){function X(J){U.call(this,J),this._cbcInit()}Y(X,U);for(var K=Object.keys(Z),I=0;I<K.length;I++){var O=K[I];X.prototype[O]=Z[O]}return X.create=function(J){return new X(J)},X}$.instantiate=V,Z._cbcInit=function(){var U=new G(this.options.iv);this._cbcState=U},Z._update=function(U,X,K,I){var O=this._cbcState,J=this.constructor.super_.prototype,F=O.iv;if(this.type==="encrypt"){for(var A=0;A<this.blockSize;A++)F[A]^=U[X+A];J._update.call(this,F,0,K,I);for(var A=0;A<this.blockSize;A++)F[A]=K[I+A]}else{J._update.call(this,U,X,K,I);for(var A=0;A<this.blockSize;A++)K[I+A]^=F[A];for(var A=0;A<this.blockSize;A++)F[A]=U[X+A]}}}}),XQ=q$({"node_modules/des.js/lib/des/ede.js"($,Q){var Y=ZQ(),Z=_$(),G=GQ(),V=VQ();function U(K,I){Y.equal(I.length,24,"Invalid key length");var O=I.slice(0,8),J=I.slice(8,16),F=I.slice(16,24);K==="encrypt"?this.ciphers=[V.create({type:"encrypt",key:O}),V.create({type:"decrypt",key:J}),V.create({type:"encrypt",key:F})]:this.ciphers=[V.create({type:"decrypt",key:F}),V.create({type:"encrypt",key:J}),V.create({type:"decrypt",key:O})]}function X(K){G.call(this,K);var I=new U(this.type,this.options.key);this._edeState=I}Z(X,G),Q.exports=X,X.create=function(K){return new X(K)},X.prototype._update=function(K,I,O,J){var F=this._edeState;F.ciphers[0]._update(K,I,O,J),F.ciphers[1]._update(O,J,O,J),F.ciphers[2]._update(O,J,O,J)},X.prototype._pad=V.prototype._pad,X.prototype._unpad=V.prototype._unpad}}),KQ=q$({"node_modules/des.js/lib/des.js"($){$.utils=YQ(),$.Cipher=GQ(),$.DES=VQ(),$.CBC=UQ(),$.EDE=XQ()}}),IQ=q$({"node_modules/browserify-des/index.js"($,Q){var Y=l$(),Z=KQ(),G=_$(),V=k$().Buffer,U={"des-ede3-cbc":Z.CBC.instantiate(Z.EDE),"des-ede3":Z.EDE,"des-ede-cbc":Z.CBC.instantiate(Z.EDE),"des-ede":Z.EDE,"des-cbc":Z.CBC.instantiate(Z.DES),"des-ecb":Z.DES};U.des=U["des-cbc"],U.des3=U["des-ede3-cbc"],Q.exports=X,G(X,Y);function X(K){Y.call(this);var I=K.mode.toLowerCase(),O=U[I],J;K.decrypt?J="decrypt":J="encrypt";var F=K.key;V.isBuffer(F)||(F=V.from(F)),(I==="des-ede"||I==="des-ede-cbc")&&(F=V.concat([F,F.slice(0,8)]));var A=K.iv;V.isBuffer(A)||(A=V.from(A)),this._des=O.create({key:F,iv:A,type:J})}X.prototype._update=function(K){return V.from(this._des.update(K))},X.prototype._final=function(){return V.from(this._des.final())}}}),OQ=q$({"node_modules/browserify-aes/modes/ecb.js"($){$.encrypt=function(Q,Y){return Q._cipher.encryptBlock(Y)},$.decrypt=function(Q,Y){return Q._cipher.decryptBlock(Y)}}}),JQ=q$({"node_modules/buffer-xor/index.js"($,Q){Q.exports=function(Y,Z){for(var G=Math.min(Y.length,Z.length),V=new F$(G),U=0;U<G;++U)V[U]=Y[U]^Z[U];return V}}}),FQ=q$({"node_modules/browserify-aes/modes/cbc.js"($){var Q=JQ();$.encrypt=function(Y,Z){var G=Q(Z,Y._prev);return Y._prev=Y._cipher.encryptBlock(G),Y._prev},$.decrypt=function(Y,Z){var G=Y._prev;Y._prev=Z;var V=Y._cipher.decryptBlock(Z);return Q(V,G)}}}),AQ=q$({"node_modules/browserify-aes/modes/cfb.js"($){var Q=k$().Buffer,Y=JQ();function Z(G,V,U){var X=V.length,K=Y(V,G._cache);return G._cache=G._cache.slice(X),G._prev=Q.concat([G._prev,U?V:K]),K}$.encrypt=function(G,V,U){for(var X=Q.allocUnsafe(0),K;V.length;)if(G._cache.length===0&&(G._cache=G._cipher.encryptBlock(G._prev),G._prev=Q.allocUnsafe(0)),G._cache.length<=V.length)K=G._cache.length,X=Q.concat([X,Z(G,V.slice(0,K),U)]),V=V.slice(K);else{X=Q.concat([X,Z(G,V,U)]);break}return X}}}),HQ=q$({"node_modules/browserify-aes/modes/cfb8.js"($){var Q=k$().Buffer;function Y(Z,G,V){var U=Z._cipher.encryptBlock(Z._prev),X=U[0]^G;return Z._prev=Q.concat([Z._prev.slice(1),Q.from([V?G:X])]),X}$.encrypt=function(Z,G,V){for(var U=G.length,X=Q.allocUnsafe(U),K=-1;++K<U;)X[K]=Y(Z,G[K],V);return X}}}),WQ=q$({"node_modules/browserify-aes/modes/cfb1.js"($){var Q=k$().Buffer;function Y(G,V,U){for(var X,K=-1,I=8,O=0,J,F;++K<I;)X=G._cipher.encryptBlock(G._prev),J=V&1<<7-K?128:0,F=X[0]^J,O+=(F&128)>>K%8,G._prev=Z(G._prev,U?J:F);return O}function Z(G,V){var U=G.length,X=-1,K=Q.allocUnsafe(G.length);for(G=Q.concat([G,Q.from([V])]);++X<U;)K[X]=G[X]<<1|G[X+1]>>7;return K}$.encrypt=function(G,V,U){for(var X=V.length,K=Q.allocUnsafe(X),I=-1;++I<X;)K[I]=Y(G,V[I],U);return K}}}),EQ=q$({"node_modules/browserify-aes/modes/ofb.js"($){var Q=JQ();function Y(Z){return Z._prev=Z._cipher.encryptBlock(Z._prev),Z._prev}$.encrypt=function(Z,G){for(;Z._cache.length<G.length;)Z._cache=F$.concat([Z._cache,Y(Z)]);var V=Z._cache.slice(0,G.length);return Z._cache=Z._cache.slice(G.length),Q(G,V)}}}),TQ=q$({"node_modules/browserify-aes/incr32.js"($,Q){function Y(Z){for(var G=Z.length,V;G--;)if(V=Z.readUInt8(G),V===255)Z.writeUInt8(0,G);else{V++,Z.writeUInt8(V,G);break}}Q.exports=Y}}),W$=q$({"node_modules/browserify-aes/modes/ctr.js"($){var Q=JQ(),Y=k$().Buffer,Z=TQ();function G(U){var X=U._cipher.encryptBlockRaw(U._prev);return Z(U._prev),X}var V=16;$.encrypt=function(U,X){var K=Math.ceil(X.length/V),I=U._cache.length;U._cache=Y.concat([U._cache,Y.allocUnsafe(K*V)]);for(var O=0;O<K;O++){var J=G(U),F=I+O*V;U._cache.writeUInt32BE(J[0],F+0),U._cache.writeUInt32BE(J[1],F+4),U._cache.writeUInt32BE(J[2],F+8),U._cache.writeUInt32BE(J[3],F+12)}var A=U._cache.slice(0,X.length);return U._cache=U._cache.slice(X.length),Q(X,A)}}}),DQ=q$({"node_modules/browserify-aes/modes/list.json"($,Q){Q.exports={"aes-128-ecb":{cipher:"AES",key:128,iv:0,mode:"ECB",type:"block"},"aes-192-ecb":{cipher:"AES",key:192,iv:0,mode:"ECB",type:"block"},"aes-256-ecb":{cipher:"AES",key:256,iv:0,mode:"ECB",type:"block"},"aes-128-cbc":{cipher:"AES",key:128,iv:16,mode:"CBC",type:"block"},"aes-192-cbc":{cipher:"AES",key:192,iv:16,mode:"CBC",type:"block"},"aes-256-cbc":{cipher:"AES",key:256,iv:16,mode:"CBC",type:"block"},aes128:{cipher:"AES",key:128,iv:16,mode:"CBC",type:"block"},aes192:{cipher:"AES",key:192,iv:16,mode:"CBC",type:"block"},aes256:{cipher:"AES",key:256,iv:16,mode:"CBC",type:"block"},"aes-128-cfb":{cipher:"AES",key:128,iv:16,mode:"CFB",type:"stream"},"aes-192-cfb":{cipher:"AES",key:192,iv:16,mode:"CFB",type:"stream"},"aes-256-cfb":{cipher:"AES",key:256,iv:16,mode:"CFB",type:"stream"},"aes-128-cfb8":{cipher:"AES",key:128,iv:16,mode:"CFB8",type:"stream"},"aes-192-cfb8":{cipher:"AES",key:192,iv:16,mode:"CFB8",type:"stream"},"aes-256-cfb8":{cipher:"AES",key:256,iv:16,mode:"CFB8",type:"stream"},"aes-128-cfb1":{cipher:"AES",key:128,iv:16,mode:"CFB1",type:"stream"},"aes-192-cfb1":{cipher:"AES",key:192,iv:16,mode:"CFB1",type:"stream"},"aes-256-cfb1":{cipher:"AES",key:256,iv:16,mode:"CFB1",type:"stream"},"aes-128-ofb":{cipher:"AES",key:128,iv:16,mode:"OFB",type:"stream"},"aes-192-ofb":{cipher:"AES",key:192,iv:16,mode:"OFB",type:"stream"},"aes-256-ofb":{cipher:"AES",key:256,iv:16,mode:"OFB",type:"stream"},"aes-128-ctr":{cipher:"AES",key:128,iv:16,mode:"CTR",type:"stream"},"aes-192-ctr":{cipher:"AES",key:192,iv:16,mode:"CTR",type:"stream"},"aes-256-ctr":{cipher:"AES",key:256,iv:16,mode:"CTR",type:"stream"},"aes-128-gcm":{cipher:"AES",key:128,iv:12,mode:"GCM",type:"auth"},"aes-192-gcm":{cipher:"AES",key:192,iv:12,mode:"GCM",type:"auth"},"aes-256-gcm":{cipher:"AES",key:256,iv:12,mode:"GCM",type:"auth"}}}}),CQ=q$({"node_modules/browserify-aes/modes/index.js"($,Q){var Y={ECB:OQ(),CBC:FQ(),CFB:AQ(),CFB8:HQ(),CFB1:WQ(),OFB:EQ(),CTR:W$(),GCM:W$()},Z=DQ();for(G in Z)Z[G].module=Y[Z[G].mode];var G;Q.exports=Z}}),LQ=q$({"node_modules/browserify-aes/aes.js"($,Q){var Y=k$().Buffer;function Z(I){Y.isBuffer(I)||(I=Y.from(I));for(var O=I.length/4|0,J=new Array(O),F=0;F<O;F++)J[F]=I.readUInt32BE(F*4);return J}function G(I){for(var O=0;O<I.length;I++)I[O]=0}function V(I,O,J,F,A){for(var H=J[0],W=J[1],E=J[2],T=J[3],D=I[0]^O[0],C=I[1]^O[1],L=I[2]^O[2],R=I[3]^O[3],P,z,M,S,v=4,q=1;q<A;q++)P=H[D>>>24]^W[C>>>16&255]^E[L>>>8&255]^T[R&255]^O[v++],z=H[C>>>24]^W[L>>>16&255]^E[R>>>8&255]^T[D&255]^O[v++],M=H[L>>>24]^W[R>>>16&255]^E[D>>>8&255]^T[C&255]^O[v++],S=H[R>>>24]^W[D>>>16&255]^E[C>>>8&255]^T[L&255]^O[v++],D=P,C=z,L=M,R=S;return P=(F[D>>>24]<<24|F[C>>>16&255]<<16|F[L>>>8&255]<<8|F[R&255])^O[v++],z=(F[C>>>24]<<24|F[L>>>16&255]<<16|F[R>>>8&255]<<8|F[D&255])^O[v++],M=(F[L>>>24]<<24|F[R>>>16&255]<<16|F[D>>>8&255]<<8|F[C&255])^O[v++],S=(F[R>>>24]<<24|F[D>>>16&255]<<16|F[C>>>8&255]<<8|F[L&255])^O[v++],P=P>>>0,z=z>>>0,M=M>>>0,S=S>>>0,[P,z,M,S]}var U=[0,1,2,4,8,16,32,64,128,27,54],X=function(){for(var I=new Array(256),O=0;O<256;O++)O<128?I[O]=O<<1:I[O]=O<<1^283;for(var J=[],F=[],A=[[],[],[],[]],H=[[],[],[],[]],W=0,E=0,T=0;T<256;++T){var D=E^E<<1^E<<2^E<<3^E<<4;D=D>>>8^D&255^99,J[W]=D,F[D]=W;var C=I[W],L=I[C],R=I[L],P=I[D]*257^D*16843008;A[0][W]=P<<24|P>>>8,A[1][W]=P<<16|P>>>16,A[2][W]=P<<8|P>>>24,A[3][W]=P,P=R*16843009^L*65537^C*257^W*16843008,H[0][D]=P<<24|P>>>8,H[1][D]=P<<16|P>>>16,H[2][D]=P<<8|P>>>24,H[3][D]=P,W===0?W=E=1:(W=C^I[I[I[R^C]]],E^=I[I[E]])}return{SBOX:J,INV_SBOX:F,SUB_MIX:A,INV_SUB_MIX:H}}();function K(I){this._key=Z(I),this._reset()}K.blockSize=16,K.keySize=32,K.prototype.blockSize=K.blockSize,K.prototype.keySize=K.keySize,K.prototype._reset=function(){for(var I=this._key,O=I.length,J=O+6,F=(J+1)*4,A=[],H=0;H<O;H++)A[H]=I[H];for(H=O;H<F;H++){var W=A[H-1];H%O===0?(W=W<<8|W>>>24,W=X.SBOX[W>>>24]<<24|X.SBOX[W>>>16&255]<<16|X.SBOX[W>>>8&255]<<8|X.SBOX[W&255],W^=U[H/O|0]<<24):O>6&&H%O===4&&(W=X.SBOX[W>>>24]<<24|X.SBOX[W>>>16&255]<<16|X.SBOX[W>>>8&255]<<8|X.SBOX[W&255]),A[H]=A[H-O]^W}for(var E=[],T=0;T<F;T++){var D=F-T,C=A[D-(T%4?0:4)];T<4||D<=4?E[T]=C:E[T]=X.INV_SUB_MIX[0][X.SBOX[C>>>24]]^X.INV_SUB_MIX[1][X.SBOX[C>>>16&255]]^X.INV_SUB_MIX[2][X.SBOX[C>>>8&255]]^X.INV_SUB_MIX[3][X.SBOX[C&255]]}this._nRounds=J,this._keySchedule=A,this._invKeySchedule=E},K.prototype.encryptBlockRaw=function(I){return I=Z(I),V(I,this._keySchedule,X.SUB_MIX,X.SBOX,this._nRounds)},K.prototype.encryptBlock=function(I){var O=this.encryptBlockRaw(I),J=Y.allocUnsafe(16);return J.writeUInt32BE(O[0],0),J.writeUInt32BE(O[1],4),J.writeUInt32BE(O[2],8),J.writeUInt32BE(O[3],12),J},K.prototype.decryptBlock=function(I){I=Z(I);var O=I[1];I[1]=I[3],I[3]=O;var J=V(I,this._invKeySchedule,X.INV_SUB_MIX,X.INV_SBOX,this._nRounds),F=Y.allocUnsafe(16);return F.writeUInt32BE(J[0],0),F.writeUInt32BE(J[3],4),F.writeUInt32BE(J[2],8),F.writeUInt32BE(J[1],12),F},K.prototype.scrub=function(){G(this._keySchedule),G(this._invKeySchedule),G(this._key)},Q.exports.AES=K}}),RQ=q$({"node_modules/browserify-aes/ghash.js"($,Q){var Y=k$().Buffer,Z=Y.alloc(16,0);function G(X){return[X.readUInt32BE(0),X.readUInt32BE(4),X.readUInt32BE(8),X.readUInt32BE(12)]}function V(X){var K=Y.allocUnsafe(16);return K.writeUInt32BE(X[0]>>>0,0),K.writeUInt32BE(X[1]>>>0,4),K.writeUInt32BE(X[2]>>>0,8),K.writeUInt32BE(X[3]>>>0,12),K}function U(X){this.h=X,this.state=Y.alloc(16,0),this.cache=Y.allocUnsafe(0)}U.prototype.ghash=function(X){for(var K=-1;++K<X.length;)this.state[K]^=X[K];this._multiply()},U.prototype._multiply=function(){for(var X=G(this.h),K=[0,0,0,0],I,O,J,F=-1;++F<128;){for(O=(this.state[~~(F/8)]&1<<7-F%8)!==0,O&&(K[0]^=X[0],K[1]^=X[1],K[2]^=X[2],K[3]^=X[3]),J=(X[3]&1)!==0,I=3;I>0;I--)X[I]=X[I]>>>1|(X[I-1]&1)<<31;X[0]=X[0]>>>1,J&&(X[0]=X[0]^225<<24)}this.state=V(K)},U.prototype.update=function(X){this.cache=Y.concat([this.cache,X]);for(var K;this.cache.length>=16;)K=this.cache.slice(0,16),this.cache=this.cache.slice(16),this.ghash(K)},U.prototype.final=function(X,K){return this.cache.length&&this.ghash(Y.concat([this.cache,Z],16)),this.ghash(V([0,X,0,K])),this.state},Q.exports=U}}),PQ=q$({"node_modules/browserify-aes/authCipher.js"($,Q){var Y=LQ(),Z=k$().Buffer,G=l$(),V=_$(),U=RQ(),X=JQ(),K=TQ();function I(F,A){var H=0;F.length!==A.length&&H++;for(var W=Math.min(F.length,A.length),E=0;E<W;++E)H+=F[E]^A[E];return H}function O(F,A,H){if(A.length===12)return F._finID=Z.concat([A,Z.from([0,0,0,1])]),Z.concat([A,Z.from([0,0,0,2])]);var W=new U(H),E=A.length,T=E%16;W.update(A),T&&(T=16-T,W.update(Z.alloc(T,0))),W.update(Z.alloc(8,0));var D=E*8,C=Z.alloc(8);C.writeUIntBE(D,0,8),W.update(C),F._finID=W.state;var L=Z.from(F._finID);return K(L),L}function J(F,A,H,W){G.call(this);var E=Z.alloc(4,0);this._cipher=new Y.AES(A);var T=this._cipher.encryptBlock(E);this._ghash=new U(T),H=O(this,H,T),this._prev=Z.from(H),this._cache=Z.allocUnsafe(0),this._secCache=Z.allocUnsafe(0),this._decrypt=W,this._alen=0,this._len=0,this._mode=F,this._authTag=null,this._called=!1}V(J,G),J.prototype._update=function(F){if(!this._called&&this._alen){var A=16-this._alen%16;A<16&&(A=Z.alloc(A,0),this._ghash.update(A))}this._called=!0;var H=this._mode.encrypt(this,F);return this._decrypt?this._ghash.update(F):this._ghash.update(H),this._len+=F.length,H},J.prototype._final=function(){if(this._decrypt&&!this._authTag)throw new Error("Unsupported state or unable to authenticate data");var F=X(this._ghash.final(this._alen*8,this._len*8),this._cipher.encryptBlock(this._finID));if(this._decrypt&&I(F,this._authTag))throw new Error("Unsupported state or unable to authenticate data");this._authTag=F,this._cipher.scrub()},J.prototype.getAuthTag=function(){if(this._decrypt||!Z.isBuffer(this._authTag))throw new Error("Attempting to get auth tag in unsupported state");return this._authTag},J.prototype.setAuthTag=function(F){if(!this._decrypt)throw new Error("Attempting to set auth tag in unsupported state");this._authTag=F},J.prototype.setAAD=function(F){if(this._called)throw new Error("Attempting to set AAD in unsupported state");this._ghash.update(F),this._alen+=F.length},Q.exports=J}}),zQ=q$({"node_modules/browserify-aes/streamCipher.js"($,Q){var Y=LQ(),Z=k$().Buffer,G=l$(),V=_$();function U(X,K,I,O){G.call(this),this._cipher=new Y.AES(K),this._prev=Z.from(I),this._cache=Z.allocUnsafe(0),this._secCache=Z.allocUnsafe(0),this._decrypt=O,this._mode=X}V(U,G),U.prototype._update=function(X){return this._mode.encrypt(this,X,this._decrypt)},U.prototype._final=function(){this._cipher.scrub()},Q.exports=U}}),MQ=q$({"node_modules/evp_bytestokey/index.js"($,Q){var Y=k$().Buffer,Z=x$();function G(V,U,X,K){if(Y.isBuffer(V)||(V=Y.from(V,"binary")),U&&(Y.isBuffer(U)||(U=Y.from(U,"binary")),U.length!==8))throw new RangeError("salt should be Buffer with 8 byte length");for(var I=X/8,O=Y.alloc(I),J=Y.alloc(K||0),F=Y.alloc(0);I>0||K>0;){var A=new Z;A.update(F),A.update(V),U&&A.update(U),F=A.digest();var H=0;if(I>0){var W=O.length-I;H=Math.min(I,F.length),F.copy(O,W,0,H),I-=H}if(H<F.length&&K>0){var E=J.length-K,T=Math.min(K,F.length-H);F.copy(J,E,H,H+T),K-=T}}return F.fill(0),{key:O,iv:J}}Q.exports=G}}),SQ=q$({"node_modules/browserify-aes/encrypter.js"($){var Q=CQ(),Y=PQ(),Z=k$().Buffer,G=zQ(),V=l$(),U=LQ(),X=MQ(),K=_$();function I(H,W,E){V.call(this),this._cache=new J,this._cipher=new U.AES(W),this._prev=Z.from(E),this._mode=H,this._autopadding=!0}K(I,V),I.prototype._update=function(H){this._cache.add(H);for(var W,E,T=[];W=this._cache.get();)E=this._mode.encrypt(this,W),T.push(E);return Z.concat(T)};var O=Z.alloc(16,16);I.prototype._final=function(){var H=this._cache.flush();if(this._autopadding)return H=this._mode.encrypt(this,H),this._cipher.scrub(),H;if(!H.equals(O))throw this._cipher.scrub(),new Error("data not multiple of block length")},I.prototype.setAutoPadding=function(H){return this._autopadding=!!H,this};function J(){this.cache=Z.allocUnsafe(0)}J.prototype.add=function(H){this.cache=Z.concat([this.cache,H])},J.prototype.get=function(){if(this.cache.length>15){var H=this.cache.slice(0,16);return this.cache=this.cache.slice(16),H}return null},J.prototype.flush=function(){for(var H=16-this.cache.length,W=Z.allocUnsafe(H),E=-1;++E<H;)W.writeUInt8(H,E);return Z.concat([this.cache,W])};function F(H,W,E){var T=Q[H.toLowerCase()];if(!T)throw new TypeError("invalid suite type");if(typeof W=="string"&&(W=Z.from(W)),W.length!==T.key/8)throw new TypeError("invalid key length "+W.length);if(typeof E=="string"&&(E=Z.from(E)),T.mode!=="GCM"&&E.length!==T.iv)throw new TypeError("invalid iv length "+E.length);return T.type==="stream"?new G(T.module,W,E):T.type==="auth"?new Y(T.module,W,E):new I(T.module,W,E)}function A(H,W){var E=Q[H.toLowerCase()];if(!E)throw new TypeError("invalid suite type");var T=X(W,!1,E.key,E.iv);return F(H,T.key,T.iv)}$.createCipheriv=F,$.createCipher=A}}),vQ=q$({"node_modules/browserify-aes/decrypter.js"($){var Q=PQ(),Y=k$().Buffer,Z=CQ(),G=zQ(),V=l$(),U=LQ(),X=MQ(),K=_$();function I(H,W,E){V.call(this),this._cache=new O,this._last=void 0,this._cipher=new U.AES(W),this._prev=Y.from(E),this._mode=H,this._autopadding=!0}K(I,V),I.prototype._update=function(H){this._cache.add(H);for(var W,E,T=[];W=this._cache.get(this._autopadding);)E=this._mode.decrypt(this,W),T.push(E);return Y.concat(T)},I.prototype._final=function(){var H=this._cache.flush();if(this._autopadding)return J(this._mode.decrypt(this,H));if(H)throw new Error("data not multiple of block length")},I.prototype.setAutoPadding=function(H){return this._autopadding=!!H,this};function O(){this.cache=Y.allocUnsafe(0)}O.prototype.add=function(H){this.cache=Y.concat([this.cache,H])},O.prototype.get=function(H){var W;if(H){if(this.cache.length>16)return W=this.cache.slice(0,16),this.cache=this.cache.slice(16),W}else if(this.cache.length>=16)return W=this.cache.slice(0,16),this.cache=this.cache.slice(16),W;return null},O.prototype.flush=function(){if(this.cache.length)return this.cache};function J(H){var W=H[15];if(W<1||W>16)throw new Error("unable to decrypt data");for(var E=-1;++E<W;)if(H[E+(16-W)]!==W)throw new Error("unable to decrypt data");if(W!==16)return H.slice(0,16-W)}function F(H,W,E){var T=Z[H.toLowerCase()];if(!T)throw new TypeError("invalid suite type");if(typeof E=="string"&&(E=Y.from(E)),T.mode!=="GCM"&&E.length!==T.iv)throw new TypeError("invalid iv length "+E.length);if(typeof W=="string"&&(W=Y.from(W)),W.length!==T.key/8)throw new TypeError("invalid key length "+W.length);return T.type==="stream"?new G(T.module,W,E,!0):T.type==="auth"?new Q(T.module,W,E,!0):new I(T.module,W,E)}function A(H,W){var E=Z[H.toLowerCase()];if(!E)throw new TypeError("invalid suite type");var T=X(W,!1,E.key,E.iv);return F(H,T.key,T.iv)}$.createDecipher=A,$.createDecipheriv=F}}),qQ=q$({"node_modules/browserify-aes/browser.js"($){var Q=SQ(),Y=vQ(),Z=DQ();function G(){return Object.keys(Z)}$.createCipher=$.Cipher=Q.createCipher,$.createCipheriv=$.Cipheriv=Q.createCipheriv,$.createDecipher=$.Decipher=Y.createDecipher,$.createDecipheriv=$.Decipheriv=Y.createDecipheriv,$.listCiphers=$.getCiphers=G}}),jQ=q$({"node_modules/browserify-des/modes.js"($){$["des-ecb"]={key:8,iv:0},$["des-cbc"]=$.des={key:8,iv:8},$["des-ede3-cbc"]=$.des3={key:24,iv:8},$["des-ede3"]={key:24,iv:0},$["des-ede-cbc"]={key:16,iv:8},$["des-ede"]={key:16,iv:0}}}),kQ=q$({"node_modules/browserify-cipher/browser.js"($){var Q=IQ(),Y=qQ(),Z=CQ(),G=jQ(),V=MQ();function U(J,F){J=J.toLowerCase();var A,H;if(Z[J])A=Z[J].key,H=Z[J].iv;else if(G[J])A=G[J].key*8,H=G[J].iv;else throw new TypeError("invalid suite type");var W=V(F,!1,A,H);return K(J,W.key,W.iv)}function X(J,F){J=J.toLowerCase();var A,H;if(Z[J])A=Z[J].key,H=Z[J].iv;else if(G[J])A=G[J].key*8,H=G[J].iv;else throw new TypeError("invalid suite type");var W=V(F,!1,A,H);return I(J,W.key,W.iv)}function K(J,F,A){if(J=J.toLowerCase(),Z[J])return Y.createCipheriv(J,F,A);if(G[J])return new Q({key:F,iv:A,mode:J});throw new TypeError("invalid suite type")}function I(J,F,A){if(J=J.toLowerCase(),Z[J])return Y.createDecipheriv(J,F,A);if(G[J])return new Q({key:F,iv:A,mode:J,decrypt:!0});throw new TypeError("invalid suite type")}function O(){return Object.keys(G).concat(Y.getCiphers())}$.createCipher=$.Cipher=U,$.createCipheriv=$.Cipheriv=K,$.createDecipher=$.Decipher=X,$.createDecipheriv=$.Decipheriv=I,$.listCiphers=$.getCiphers=O}}),gQ=q$({"node_modules/diffie-hellman/node_modules/bn.js/lib/bn.js"($,Q){(function(Y,Z){function G(j,k){if(!j)throw new Error(k||"Assertion failed")}function V(j,k){j.super_=k;var g=function(){};g.prototype=k.prototype,j.prototype=new g,j.prototype.constructor=j}function U(j,k,g){if(U.isBN(j))return j;this.negative=0,this.words=null,this.length=0,this.red=null,j!==null&&((k==="le"||k==="be")&&(g=k,k=10),this._init(j||0,k||10,g||"be"))}typeof Y=="object"?Y.exports=U:Z.BN=U,U.BN=U,U.wordSize=26;var X=F$;U.isBN=function(j){return j instanceof U?!0:j!==null&&typeof j=="object"&&j.constructor.wordSize===U.wordSize&&Array.isArray(j.words)},U.max=function(j,k){return j.cmp(k)>0?j:k},U.min=function(j,k){return j.cmp(k)<0?j:k},U.prototype._init=function(j,k,g){if(typeof j=="number")return this._initNumber(j,k,g);if(typeof j=="object")return this._initArray(j,k,g);k==="hex"&&(k=16),G(k===(k|0)&&k>=2&&k<=36),j=j.toString().replace(/\s+/g,"");var _=0;j[0]==="-"&&(_++,this.negative=1),_<j.length&&(k===16?this._parseHex(j,_,g):(this._parseBase(j,k,_),g==="le"&&this._initArray(this.toArray(),k,g)))},U.prototype._initNumber=function(j,k,g){j<0&&(this.negative=1,j=-j),j<67108864?(this.words=[j&67108863],this.length=1):j<4503599627370496?(this.words=[j&67108863,j/67108864&67108863],this.length=2):(G(j<9007199254740992),this.words=[j&67108863,j/67108864&67108863,1],this.length=3),g==="le"&&this._initArray(this.toArray(),k,g)},U.prototype._initArray=function(j,k,g){if(G(typeof j.length=="number"),j.length<=0)return this.words=[0],this.length=1,this;this.length=Math.ceil(j.length/3),this.words=new Array(this.length);for(var _=0;_<this.length;_++)this.words[_]=0;var N,x,B=0;if(g==="be")for(_=j.length-1,N=0;_>=0;_-=3)x=j[_]|j[_-1]<<8|j[_-2]<<16,this.words[N]|=x<<B&67108863,this.words[N+1]=x>>>26-B&67108863,B+=24,B>=26&&(B-=26,N++);else if(g==="le")for(_=0,N=0;_<j.length;_+=3)x=j[_]|j[_+1]<<8|j[_+2]<<16,this.words[N]|=x<<B&67108863,this.words[N+1]=x>>>26-B&67108863,B+=24,B>=26&&(B-=26,N++);return this.strip()};function K(j,k){var g=j.charCodeAt(k);return g>=65&&g<=70?g-55:g>=97&&g<=102?g-87:g-48&15}function I(j,k,g){var _=K(j,g);return g-1>=k&&(_|=K(j,g-1)<<4),_}U.prototype._parseHex=function(j,k,g){this.length=Math.ceil((j.length-k)/6),this.words=new Array(this.length);for(var _=0;_<this.length;_++)this.words[_]=0;var N=0,x=0,B;if(g==="be")for(_=j.length-1;_>=k;_-=2)B=I(j,k,_)<<N,this.words[x]|=B&67108863,N>=18?(N-=18,x+=1,this.words[x]|=B>>>26):N+=8;else{var y=j.length-k;for(_=y%2===0?k+1:k;_<j.length;_+=2)B=I(j,k,_)<<N,this.words[x]|=B&67108863,N>=18?(N-=18,x+=1,this.words[x]|=B>>>26):N+=8}this.strip()};function O(j,k,g,_){for(var N=0,x=Math.min(j.length,g),B=k;B<x;B++){var y=j.charCodeAt(B)-48;N*=_,y>=49?N+=y-49+10:y>=17?N+=y-17+10:N+=y}return N}U.prototype._parseBase=function(j,k,g){this.words=[0],this.length=1;for(var _=0,N=1;N<=67108863;N*=k)_++;_--,N=N/k|0;for(var x=j.length-g,B=x%_,y=Math.min(x,x-B)+g,w=0,p=g;p<y;p+=_)w=O(j,p,p+_,k),this.imuln(N),this.words[0]+w<67108864?this.words[0]+=w:this._iaddn(w);if(B!==0){var f=1;for(w=O(j,p,j.length,k),p=0;p<B;p++)f*=k;this.imuln(f),this.words[0]+w<67108864?this.words[0]+=w:this._iaddn(w)}this.strip()},U.prototype.copy=function(j){j.words=new Array(this.length);for(var k=0;k<this.length;k++)j.words[k]=this.words[k];j.length=this.length,j.negative=this.negative,j.red=this.red},U.prototype.clone=function(){var j=new U(null);return this.copy(j),j},U.prototype._expand=function(j){for(;this.length<j;)this.words[this.length++]=0;return this},U.prototype.strip=function(){for(;this.length>1&&this.words[this.length-1]===0;)this.length--;return this._normSign()},U.prototype._normSign=function(){return this.length===1&&this.words[0]===0&&(this.negative=0),this},U.prototype.inspect=function(){return(this.red?"<BN-R: ":"<BN: ")+this.toString(16)+">"};var J=["","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"],F=[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],A=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64000000,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,24300000,28629151,33554432,39135393,45435424,52521875,60466176];U.prototype.toString=function(j,k){j=j||10,k=k|0||1;var g;if(j===16||j==="hex"){g="";for(var _=0,N=0,x=0;x<this.length;x++){var B=this.words[x],y=((B<<_|N)&16777215).toString(16);N=B>>>24-_&16777215,N!==0||x!==this.length-1?g=J[6-y.length]+y+g:g=y+g,_+=2,_>=26&&(_-=26,x--)}for(N!==0&&(g=N.toString(16)+g);g.length%k!==0;)g="0"+g;return this.negative!==0&&(g="-"+g),g}if(j===(j|0)&&j>=2&&j<=36){var w=F[j],p=A[j];g="";var f=this.clone();for(f.negative=0;!f.isZero();){var c=f.modn(p).toString(j);f=f.idivn(p),f.isZero()?g=c+g:g=J[w-c.length]+c+g}for(this.isZero()&&(g="0"+g);g.length%k!==0;)g="0"+g;return this.negative!==0&&(g="-"+g),g}G(!1,"Base should be between 2 and 36")},U.prototype.toNumber=function(){var j=this.words[0];return this.length===2?j+=this.words[1]*67108864:this.length===3&&this.words[2]===1?j+=4503599627370496+this.words[1]*67108864:this.length>2&&G(!1,"Number can only safely store up to 53 bits"),this.negative!==0?-j:j},U.prototype.toJSON=function(){return this.toString(16)},U.prototype.toBuffer=function(j,k){return G(typeof X<"u"),this.toArrayLike(X,j,k)},U.prototype.toArray=function(j,k){return this.toArrayLike(Array,j,k)},U.prototype.toArrayLike=function(j,k,g){var _=this.byteLength(),N=g||Math.max(1,_);G(_<=N,"byte array longer than desired length"),G(N>0,"Requested array length <= 0"),this.strip();var x=k==="le",B=new j(N),y,w,p=this.clone();if(x){for(w=0;!p.isZero();w++)y=p.andln(255),p.iushrn(8),B[w]=y;for(;w<N;w++)B[w]=0}else{for(w=0;w<N-_;w++)B[w]=0;for(w=0;!p.isZero();w++)y=p.andln(255),p.iushrn(8),B[N-w-1]=y}return B},Math.clz32?U.prototype._countBits=function(j){return 32-Math.clz32(j)}:U.prototype._countBits=function(j){var k=j,g=0;return k>=4096&&(g+=13,k>>>=13),k>=64&&(g+=7,k>>>=7),k>=8&&(g+=4,k>>>=4),k>=2&&(g+=2,k>>>=2),g+k},U.prototype._zeroBits=function(j){if(j===0)return 26;var k=j,g=0;return(k&8191)===0&&(g+=13,k>>>=13),(k&127)===0&&(g+=7,k>>>=7),(k&15)===0&&(g+=4,k>>>=4),(k&3)===0&&(g+=2,k>>>=2),(k&1)===0&&g++,g},U.prototype.bitLength=function(){var j=this.words[this.length-1],k=this._countBits(j);return(this.length-1)*26+k};function H(j){for(var k=new Array(j.bitLength()),g=0;g<k.length;g++){var _=g/26|0,N=g%26;k[g]=(j.words[_]&1<<N)>>>N}return k}U.prototype.zeroBits=function(){if(this.isZero())return 0;for(var j=0,k=0;k<this.length;k++){var g=this._zeroBits(this.words[k]);if(j+=g,g!==26)break}return j},U.prototype.byteLength=function(){return Math.ceil(this.bitLength()/8)},U.prototype.toTwos=function(j){return this.negative!==0?this.abs().inotn(j).iaddn(1):this.clone()},U.prototype.fromTwos=function(j){return this.testn(j-1)?this.notn(j).iaddn(1).ineg():this.clone()},U.prototype.isNeg=function(){return this.negative!==0},U.prototype.neg=function(){return this.clone().ineg()},U.prototype.ineg=function(){return this.isZero()||(this.negative^=1),this},U.prototype.iuor=function(j){for(;this.length<j.length;)this.words[this.length++]=0;for(var k=0;k<j.length;k++)this.words[k]=this.words[k]|j.words[k];return this.strip()},U.prototype.ior=function(j){return G((this.negative|j.negative)===0),this.iuor(j)},U.prototype.or=function(j){return this.length>j.length?this.clone().ior(j):j.clone().ior(this)},U.prototype.uor=function(j){return this.length>j.length?this.clone().iuor(j):j.clone().iuor(this)},U.prototype.iuand=function(j){var k;this.length>j.length?k=j:k=this;for(var g=0;g<k.length;g++)this.words[g]=this.words[g]&j.words[g];return this.length=k.length,this.strip()},U.prototype.iand=function(j){return G((this.negative|j.negative)===0),this.iuand(j)},U.prototype.and=function(j){return this.length>j.length?this.clone().iand(j):j.clone().iand(this)},U.prototype.uand=function(j){return this.length>j.length?this.clone().iuand(j):j.clone().iuand(this)},U.prototype.iuxor=function(j){var k,g;this.length>j.length?(k=this,g=j):(k=j,g=this);for(var _=0;_<g.length;_++)this.words[_]=k.words[_]^g.words[_];if(this!==k)for(;_<k.length;_++)this.words[_]=k.words[_];return this.length=k.length,this.strip()},U.prototype.ixor=function(j){return G((this.negative|j.negative)===0),this.iuxor(j)},U.prototype.xor=function(j){return this.length>j.length?this.clone().ixor(j):j.clone().ixor(this)},U.prototype.uxor=function(j){return this.length>j.length?this.clone().iuxor(j):j.clone().iuxor(this)},U.prototype.inotn=function(j){G(typeof j=="number"&&j>=0);var k=Math.ceil(j/26)|0,g=j%26;this._expand(k),g>0&&k--;for(var _=0;_<k;_++)this.words[_]=~this.words[_]&67108863;return g>0&&(this.words[_]=~this.words[_]&67108863>>26-g),this.strip()},U.prototype.notn=function(j){return this.clone().inotn(j)},U.prototype.setn=function(j,k){G(typeof j=="number"&&j>=0);var g=j/26|0,_=j%26;return this._expand(g+1),k?this.words[g]=this.words[g]|1<<_:this.words[g]=this.words[g]&~(1<<_),this.strip()},U.prototype.iadd=function(j){var k;if(this.negative!==0&&j.negative===0)return this.negative=0,k=this.isub(j),this.negative^=1,this._normSign();if(this.negative===0&&j.negative!==0)return j.negative=0,k=this.isub(j),j.negative=1,k._normSign();var g,_;this.length>j.length?(g=this,_=j):(g=j,_=this);for(var N=0,x=0;x<_.length;x++)k=(g.words[x]|0)+(_.words[x]|0)+N,this.words[x]=k&67108863,N=k>>>26;for(;N!==0&&x<g.length;x++)k=(g.words[x]|0)+N,this.words[x]=k&67108863,N=k>>>26;if(this.length=g.length,N!==0)this.words[this.length]=N,this.length++;else if(g!==this)for(;x<g.length;x++)this.words[x]=g.words[x];return this},U.prototype.add=function(j){var k;return j.negative!==0&&this.negative===0?(j.negative=0,k=this.sub(j),j.negative^=1,k):j.negative===0&&this.negative!==0?(this.negative=0,k=j.sub(this),this.negative=1,k):this.length>j.length?this.clone().iadd(j):j.clone().iadd(this)},U.prototype.isub=function(j){if(j.negative!==0){j.negative=0;var k=this.iadd(j);return j.negative=1,k._normSign()}else if(this.negative!==0)return this.negative=0,this.iadd(j),this.negative=1,this._normSign();var g=this.cmp(j);if(g===0)return this.negative=0,this.length=1,this.words[0]=0,this;var _,N;g>0?(_=this,N=j):(_=j,N=this);for(var x=0,B=0;B<N.length;B++)k=(_.words[B]|0)-(N.words[B]|0)+x,x=k>>26,this.words[B]=k&67108863;for(;x!==0&&B<_.length;B++)k=(_.words[B]|0)+x,x=k>>26,this.words[B]=k&67108863;if(x===0&&B<_.length&&_!==this)for(;B<_.length;B++)this.words[B]=_.words[B];return this.length=Math.max(this.length,B),_!==this&&(this.negative=1),this.strip()},U.prototype.sub=function(j){return this.clone().isub(j)};function W(j,k,g){g.negative=k.negative^j.negative;var _=j.length+k.length|0;g.length=_,_=_-1|0;var N=j.words[0]|0,x=k.words[0]|0,B=N*x,y=B&67108863,w=B/67108864|0;g.words[0]=y;for(var p=1;p<_;p++){for(var f=w>>>26,c=w&67108863,h=Math.min(p,k.length-1),d=Math.max(0,p-j.length+1);d<=h;d++){var b=p-d|0;N=j.words[b]|0,x=k.words[d]|0,B=N*x+c,f+=B/67108864|0,c=B&67108863}g.words[p]=c|0,w=f|0}return w!==0?g.words[p]=w|0:g.length--,g.strip()}var E=function(j,k,g){var _=j.words,N=k.words,x=g.words,B=0,y,w,p,f=_[0]|0,c=f&8191,h=f>>>13,d=_[1]|0,b=d&8191,l=d>>>13,o=_[2]|0,u=o&8191,n=o>>>13,s=_[3]|0,t=s&8191,m=s>>>13,a=_[4]|0,e=a&8191,r=a>>>13,i=_[5]|0,$0=i&8191,Q0=i>>>13,Y0=_[6]|0,Z0=Y0&8191,G0=Y0>>>13,V0=_[7]|0,U0=V0&8191,X0=V0>>>13,K0=_[8]|0,I0=K0&8191,O0=K0>>>13,J0=_[9]|0,F0=J0&8191,A0=J0>>>13,H0=N[0]|0,W0=H0&8191,E0=H0>>>13,T0=N[1]|0,D0=T0&8191,C0=T0>>>13,L0=N[2]|0,R0=L0&8191,P0=L0>>>13,z0=N[3]|0,M0=z0&8191,S0=z0>>>13,v0=N[4]|0,q0=v0&8191,j0=v0>>>13,k0=N[5]|0,g0=k0&8191,_0=k0>>>13,N0=N[6]|0,x0=N0&8191,B0=N0>>>13,y0=N[7]|0,w0=y0&8191,p0=y0>>>13,f0=N[8]|0,c0=f0&8191,h0=f0>>>13,d0=N[9]|0,b0=d0&8191,l0=d0>>>13;g.negative=j.negative^k.negative,g.length=19,y=Math.imul(c,W0),w=Math.imul(c,E0),w=w+Math.imul(h,W0)|0,p=Math.imul(h,E0);var o0=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(o0>>>26)|0,o0&=67108863,y=Math.imul(b,W0),w=Math.imul(b,E0),w=w+Math.imul(l,W0)|0,p=Math.imul(l,E0),y=y+Math.imul(c,D0)|0,w=w+Math.imul(c,C0)|0,w=w+Math.imul(h,D0)|0,p=p+Math.imul(h,C0)|0;var u0=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(u0>>>26)|0,u0&=67108863,y=Math.imul(u,W0),w=Math.imul(u,E0),w=w+Math.imul(n,W0)|0,p=Math.imul(n,E0),y=y+Math.imul(b,D0)|0,w=w+Math.imul(b,C0)|0,w=w+Math.imul(l,D0)|0,p=p+Math.imul(l,C0)|0,y=y+Math.imul(c,R0)|0,w=w+Math.imul(c,P0)|0,w=w+Math.imul(h,R0)|0,p=p+Math.imul(h,P0)|0;var n0=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(n0>>>26)|0,n0&=67108863,y=Math.imul(t,W0),w=Math.imul(t,E0),w=w+Math.imul(m,W0)|0,p=Math.imul(m,E0),y=y+Math.imul(u,D0)|0,w=w+Math.imul(u,C0)|0,w=w+Math.imul(n,D0)|0,p=p+Math.imul(n,C0)|0,y=y+Math.imul(b,R0)|0,w=w+Math.imul(b,P0)|0,w=w+Math.imul(l,R0)|0,p=p+Math.imul(l,P0)|0,y=y+Math.imul(c,M0)|0,w=w+Math.imul(c,S0)|0,w=w+Math.imul(h,M0)|0,p=p+Math.imul(h,S0)|0;var s0=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(s0>>>26)|0,s0&=67108863,y=Math.imul(e,W0),w=Math.imul(e,E0),w=w+Math.imul(r,W0)|0,p=Math.imul(r,E0),y=y+Math.imul(t,D0)|0,w=w+Math.imul(t,C0)|0,w=w+Math.imul(m,D0)|0,p=p+Math.imul(m,C0)|0,y=y+Math.imul(u,R0)|0,w=w+Math.imul(u,P0)|0,w=w+Math.imul(n,R0)|0,p=p+Math.imul(n,P0)|0,y=y+Math.imul(b,M0)|0,w=w+Math.imul(b,S0)|0,w=w+Math.imul(l,M0)|0,p=p+Math.imul(l,S0)|0,y=y+Math.imul(c,q0)|0,w=w+Math.imul(c,j0)|0,w=w+Math.imul(h,q0)|0,p=p+Math.imul(h,j0)|0;var t0=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(t0>>>26)|0,t0&=67108863,y=Math.imul($0,W0),w=Math.imul($0,E0),w=w+Math.imul(Q0,W0)|0,p=Math.imul(Q0,E0),y=y+Math.imul(e,D0)|0,w=w+Math.imul(e,C0)|0,w=w+Math.imul(r,D0)|0,p=p+Math.imul(r,C0)|0,y=y+Math.imul(t,R0)|0,w=w+Math.imul(t,P0)|0,w=w+Math.imul(m,R0)|0,p=p+Math.imul(m,P0)|0,y=y+Math.imul(u,M0)|0,w=w+Math.imul(u,S0)|0,w=w+Math.imul(n,M0)|0,p=p+Math.imul(n,S0)|0,y=y+Math.imul(b,q0)|0,w=w+Math.imul(b,j0)|0,w=w+Math.imul(l,q0)|0,p=p+Math.imul(l,j0)|0,y=y+Math.imul(c,g0)|0,w=w+Math.imul(c,_0)|0,w=w+Math.imul(h,g0)|0,p=p+Math.imul(h,_0)|0;var m0=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(m0>>>26)|0,m0&=67108863,y=Math.imul(Z0,W0),w=Math.imul(Z0,E0),w=w+Math.imul(G0,W0)|0,p=Math.imul(G0,E0),y=y+Math.imul($0,D0)|0,w=w+Math.imul($0,C0)|0,w=w+Math.imul(Q0,D0)|0,p=p+Math.imul(Q0,C0)|0,y=y+Math.imul(e,R0)|0,w=w+Math.imul(e,P0)|0,w=w+Math.imul(r,R0)|0,p=p+Math.imul(r,P0)|0,y=y+Math.imul(t,M0)|0,w=w+Math.imul(t,S0)|0,w=w+Math.imul(m,M0)|0,p=p+Math.imul(m,S0)|0,y=y+Math.imul(u,q0)|0,w=w+Math.imul(u,j0)|0,w=w+Math.imul(n,q0)|0,p=p+Math.imul(n,j0)|0,y=y+Math.imul(b,g0)|0,w=w+Math.imul(b,_0)|0,w=w+Math.imul(l,g0)|0,p=p+Math.imul(l,_0)|0,y=y+Math.imul(c,x0)|0,w=w+Math.imul(c,B0)|0,w=w+Math.imul(h,x0)|0,p=p+Math.imul(h,B0)|0;var a0=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(a0>>>26)|0,a0&=67108863,y=Math.imul(U0,W0),w=Math.imul(U0,E0),w=w+Math.imul(X0,W0)|0,p=Math.imul(X0,E0),y=y+Math.imul(Z0,D0)|0,w=w+Math.imul(Z0,C0)|0,w=w+Math.imul(G0,D0)|0,p=p+Math.imul(G0,C0)|0,y=y+Math.imul($0,R0)|0,w=w+Math.imul($0,P0)|0,w=w+Math.imul(Q0,R0)|0,p=p+Math.imul(Q0,P0)|0,y=y+Math.imul(e,M0)|0,w=w+Math.imul(e,S0)|0,w=w+Math.imul(r,M0)|0,p=p+Math.imul(r,S0)|0,y=y+Math.imul(t,q0)|0,w=w+Math.imul(t,j0)|0,w=w+Math.imul(m,q0)|0,p=p+Math.imul(m,j0)|0,y=y+Math.imul(u,g0)|0,w=w+Math.imul(u,_0)|0,w=w+Math.imul(n,g0)|0,p=p+Math.imul(n,_0)|0,y=y+Math.imul(b,x0)|0,w=w+Math.imul(b,B0)|0,w=w+Math.imul(l,x0)|0,p=p+Math.imul(l,B0)|0,y=y+Math.imul(c,w0)|0,w=w+Math.imul(c,p0)|0,w=w+Math.imul(h,w0)|0,p=p+Math.imul(h,p0)|0;var e0=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(e0>>>26)|0,e0&=67108863,y=Math.imul(I0,W0),w=Math.imul(I0,E0),w=w+Math.imul(O0,W0)|0,p=Math.imul(O0,E0),y=y+Math.imul(U0,D0)|0,w=w+Math.imul(U0,C0)|0,w=w+Math.imul(X0,D0)|0,p=p+Math.imul(X0,C0)|0,y=y+Math.imul(Z0,R0)|0,w=w+Math.imul(Z0,P0)|0,w=w+Math.imul(G0,R0)|0,p=p+Math.imul(G0,P0)|0,y=y+Math.imul($0,M0)|0,w=w+Math.imul($0,S0)|0,w=w+Math.imul(Q0,M0)|0,p=p+Math.imul(Q0,S0)|0,y=y+Math.imul(e,q0)|0,w=w+Math.imul(e,j0)|0,w=w+Math.imul(r,q0)|0,p=p+Math.imul(r,j0)|0,y=y+Math.imul(t,g0)|0,w=w+Math.imul(t,_0)|0,w=w+Math.imul(m,g0)|0,p=p+Math.imul(m,_0)|0,y=y+Math.imul(u,x0)|0,w=w+Math.imul(u,B0)|0,w=w+Math.imul(n,x0)|0,p=p+Math.imul(n,B0)|0,y=y+Math.imul(b,w0)|0,w=w+Math.imul(b,p0)|0,w=w+Math.imul(l,w0)|0,p=p+Math.imul(l,p0)|0,y=y+Math.imul(c,c0)|0,w=w+Math.imul(c,h0)|0,w=w+Math.imul(h,c0)|0,p=p+Math.imul(h,h0)|0;var r0=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(r0>>>26)|0,r0&=67108863,y=Math.imul(F0,W0),w=Math.imul(F0,E0),w=w+Math.imul(A0,W0)|0,p=Math.imul(A0,E0),y=y+Math.imul(I0,D0)|0,w=w+Math.imul(I0,C0)|0,w=w+Math.imul(O0,D0)|0,p=p+Math.imul(O0,C0)|0,y=y+Math.imul(U0,R0)|0,w=w+Math.imul(U0,P0)|0,w=w+Math.imul(X0,R0)|0,p=p+Math.imul(X0,P0)|0,y=y+Math.imul(Z0,M0)|0,w=w+Math.imul(Z0,S0)|0,w=w+Math.imul(G0,M0)|0,p=p+Math.imul(G0,S0)|0,y=y+Math.imul($0,q0)|0,w=w+Math.imul($0,j0)|0,w=w+Math.imul(Q0,q0)|0,p=p+Math.imul(Q0,j0)|0,y=y+Math.imul(e,g0)|0,w=w+Math.imul(e,_0)|0,w=w+Math.imul(r,g0)|0,p=p+Math.imul(r,_0)|0,y=y+Math.imul(t,x0)|0,w=w+Math.imul(t,B0)|0,w=w+Math.imul(m,x0)|0,p=p+Math.imul(m,B0)|0,y=y+Math.imul(u,w0)|0,w=w+Math.imul(u,p0)|0,w=w+Math.imul(n,w0)|0,p=p+Math.imul(n,p0)|0,y=y+Math.imul(b,c0)|0,w=w+Math.imul(b,h0)|0,w=w+Math.imul(l,c0)|0,p=p+Math.imul(l,h0)|0,y=y+Math.imul(c,b0)|0,w=w+Math.imul(c,l0)|0,w=w+Math.imul(h,b0)|0,p=p+Math.imul(h,l0)|0;var i0=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(i0>>>26)|0,i0&=67108863,y=Math.imul(F0,D0),w=Math.imul(F0,C0),w=w+Math.imul(A0,D0)|0,p=Math.imul(A0,C0),y=y+Math.imul(I0,R0)|0,w=w+Math.imul(I0,P0)|0,w=w+Math.imul(O0,R0)|0,p=p+Math.imul(O0,P0)|0,y=y+Math.imul(U0,M0)|0,w=w+Math.imul(U0,S0)|0,w=w+Math.imul(X0,M0)|0,p=p+Math.imul(X0,S0)|0,y=y+Math.imul(Z0,q0)|0,w=w+Math.imul(Z0,j0)|0,w=w+Math.imul(G0,q0)|0,p=p+Math.imul(G0,j0)|0,y=y+Math.imul($0,g0)|0,w=w+Math.imul($0,_0)|0,w=w+Math.imul(Q0,g0)|0,p=p+Math.imul(Q0,_0)|0,y=y+Math.imul(e,x0)|0,w=w+Math.imul(e,B0)|0,w=w+Math.imul(r,x0)|0,p=p+Math.imul(r,B0)|0,y=y+Math.imul(t,w0)|0,w=w+Math.imul(t,p0)|0,w=w+Math.imul(m,w0)|0,p=p+Math.imul(m,p0)|0,y=y+Math.imul(u,c0)|0,w=w+Math.imul(u,h0)|0,w=w+Math.imul(n,c0)|0,p=p+Math.imul(n,h0)|0,y=y+Math.imul(b,b0)|0,w=w+Math.imul(b,l0)|0,w=w+Math.imul(l,b0)|0,p=p+Math.imul(l,l0)|0;var $$=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+($$>>>26)|0,$$&=67108863,y=Math.imul(F0,R0),w=Math.imul(F0,P0),w=w+Math.imul(A0,R0)|0,p=Math.imul(A0,P0),y=y+Math.imul(I0,M0)|0,w=w+Math.imul(I0,S0)|0,w=w+Math.imul(O0,M0)|0,p=p+Math.imul(O0,S0)|0,y=y+Math.imul(U0,q0)|0,w=w+Math.imul(U0,j0)|0,w=w+Math.imul(X0,q0)|0,p=p+Math.imul(X0,j0)|0,y=y+Math.imul(Z0,g0)|0,w=w+Math.imul(Z0,_0)|0,w=w+Math.imul(G0,g0)|0,p=p+Math.imul(G0,_0)|0,y=y+Math.imul($0,x0)|0,w=w+Math.imul($0,B0)|0,w=w+Math.imul(Q0,x0)|0,p=p+Math.imul(Q0,B0)|0,y=y+Math.imul(e,w0)|0,w=w+Math.imul(e,p0)|0,w=w+Math.imul(r,w0)|0,p=p+Math.imul(r,p0)|0,y=y+Math.imul(t,c0)|0,w=w+Math.imul(t,h0)|0,w=w+Math.imul(m,c0)|0,p=p+Math.imul(m,h0)|0,y=y+Math.imul(u,b0)|0,w=w+Math.imul(u,l0)|0,w=w+Math.imul(n,b0)|0,p=p+Math.imul(n,l0)|0;var Q$=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(Q$>>>26)|0,Q$&=67108863,y=Math.imul(F0,M0),w=Math.imul(F0,S0),w=w+Math.imul(A0,M0)|0,p=Math.imul(A0,S0),y=y+Math.imul(I0,q0)|0,w=w+Math.imul(I0,j0)|0,w=w+Math.imul(O0,q0)|0,p=p+Math.imul(O0,j0)|0,y=y+Math.imul(U0,g0)|0,w=w+Math.imul(U0,_0)|0,w=w+Math.imul(X0,g0)|0,p=p+Math.imul(X0,_0)|0,y=y+Math.imul(Z0,x0)|0,w=w+Math.imul(Z0,B0)|0,w=w+Math.imul(G0,x0)|0,p=p+Math.imul(G0,B0)|0,y=y+Math.imul($0,w0)|0,w=w+Math.imul($0,p0)|0,w=w+Math.imul(Q0,w0)|0,p=p+Math.imul(Q0,p0)|0,y=y+Math.imul(e,c0)|0,w=w+Math.imul(e,h0)|0,w=w+Math.imul(r,c0)|0,p=p+Math.imul(r,h0)|0,y=y+Math.imul(t,b0)|0,w=w+Math.imul(t,l0)|0,w=w+Math.imul(m,b0)|0,p=p+Math.imul(m,l0)|0;var Y$=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(Y$>>>26)|0,Y$&=67108863,y=Math.imul(F0,q0),w=Math.imul(F0,j0),w=w+Math.imul(A0,q0)|0,p=Math.imul(A0,j0),y=y+Math.imul(I0,g0)|0,w=w+Math.imul(I0,_0)|0,w=w+Math.imul(O0,g0)|0,p=p+Math.imul(O0,_0)|0,y=y+Math.imul(U0,x0)|0,w=w+Math.imul(U0,B0)|0,w=w+Math.imul(X0,x0)|0,p=p+Math.imul(X0,B0)|0,y=y+Math.imul(Z0,w0)|0,w=w+Math.imul(Z0,p0)|0,w=w+Math.imul(G0,w0)|0,p=p+Math.imul(G0,p0)|0,y=y+Math.imul($0,c0)|0,w=w+Math.imul($0,h0)|0,w=w+Math.imul(Q0,c0)|0,p=p+Math.imul(Q0,h0)|0,y=y+Math.imul(e,b0)|0,w=w+Math.imul(e,l0)|0,w=w+Math.imul(r,b0)|0,p=p+Math.imul(r,l0)|0;var Z$=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(Z$>>>26)|0,Z$&=67108863,y=Math.imul(F0,g0),w=Math.imul(F0,_0),w=w+Math.imul(A0,g0)|0,p=Math.imul(A0,_0),y=y+Math.imul(I0,x0)|0,w=w+Math.imul(I0,B0)|0,w=w+Math.imul(O0,x0)|0,p=p+Math.imul(O0,B0)|0,y=y+Math.imul(U0,w0)|0,w=w+Math.imul(U0,p0)|0,w=w+Math.imul(X0,w0)|0,p=p+Math.imul(X0,p0)|0,y=y+Math.imul(Z0,c0)|0,w=w+Math.imul(Z0,h0)|0,w=w+Math.imul(G0,c0)|0,p=p+Math.imul(G0,h0)|0,y=y+Math.imul($0,b0)|0,w=w+Math.imul($0,l0)|0,w=w+Math.imul(Q0,b0)|0,p=p+Math.imul(Q0,l0)|0;var G$=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(G$>>>26)|0,G$&=67108863,y=Math.imul(F0,x0),w=Math.imul(F0,B0),w=w+Math.imul(A0,x0)|0,p=Math.imul(A0,B0),y=y+Math.imul(I0,w0)|0,w=w+Math.imul(I0,p0)|0,w=w+Math.imul(O0,w0)|0,p=p+Math.imul(O0,p0)|0,y=y+Math.imul(U0,c0)|0,w=w+Math.imul(U0,h0)|0,w=w+Math.imul(X0,c0)|0,p=p+Math.imul(X0,h0)|0,y=y+Math.imul(Z0,b0)|0,w=w+Math.imul(Z0,l0)|0,w=w+Math.imul(G0,b0)|0,p=p+Math.imul(G0,l0)|0;var V$=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(V$>>>26)|0,V$&=67108863,y=Math.imul(F0,w0),w=Math.imul(F0,p0),w=w+Math.imul(A0,w0)|0,p=Math.imul(A0,p0),y=y+Math.imul(I0,c0)|0,w=w+Math.imul(I0,h0)|0,w=w+Math.imul(O0,c0)|0,p=p+Math.imul(O0,h0)|0,y=y+Math.imul(U0,b0)|0,w=w+Math.imul(U0,l0)|0,w=w+Math.imul(X0,b0)|0,p=p+Math.imul(X0,l0)|0;var U$=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(U$>>>26)|0,U$&=67108863,y=Math.imul(F0,c0),w=Math.imul(F0,h0),w=w+Math.imul(A0,c0)|0,p=Math.imul(A0,h0),y=y+Math.imul(I0,b0)|0,w=w+Math.imul(I0,l0)|0,w=w+Math.imul(O0,b0)|0,p=p+Math.imul(O0,l0)|0;var X$=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(X$>>>26)|0,X$&=67108863,y=Math.imul(F0,b0),w=Math.imul(F0,l0),w=w+Math.imul(A0,b0)|0,p=Math.imul(A0,l0);var K$=(B+y|0)+((w&8191)<<13)|0;return B=(p+(w>>>13)|0)+(K$>>>26)|0,K$&=67108863,x[0]=o0,x[1]=u0,x[2]=n0,x[3]=s0,x[4]=t0,x[5]=m0,x[6]=a0,x[7]=e0,x[8]=r0,x[9]=i0,x[10]=$$,x[11]=Q$,x[12]=Y$,x[13]=Z$,x[14]=G$,x[15]=V$,x[16]=U$,x[17]=X$,x[18]=K$,B!==0&&(x[19]=B,g.length++),g};Math.imul||(E=W);function T(j,k,g){g.negative=k.negative^j.negative,g.length=j.length+k.length;for(var _=0,N=0,x=0;x<g.length-1;x++){var B=N;N=0;for(var y=_&67108863,w=Math.min(x,k.length-1),p=Math.max(0,x-j.length+1);p<=w;p++){var f=x-p,c=j.words[f]|0,h=k.words[p]|0,d=c*h,b=d&67108863;B=B+(d/67108864|0)|0,b=b+y|0,y=b&67108863,B=B+(b>>>26)|0,N+=B>>>26,B&=67108863}g.words[x]=y,_=B,B=N}return _!==0?g.words[x]=_:g.length--,g.strip()}function D(j,k,g){var _=new C;return _.mulp(j,k,g)}U.prototype.mulTo=function(j,k){var g,_=this.length+j.length;return this.length===10&&j.length===10?g=E(this,j,k):_<63?g=W(this,j,k):_<1024?g=T(this,j,k):g=D(this,j,k),g};function C(j,k){this.x=j,this.y=k}C.prototype.makeRBT=function(j){for(var k=new Array(j),g=U.prototype._countBits(j)-1,_=0;_<j;_++)k[_]=this.revBin(_,g,j);return k},C.prototype.revBin=function(j,k,g){if(j===0||j===g-1)return j;for(var _=0,N=0;N<k;N++)_|=(j&1)<<k-N-1,j>>=1;return _},C.prototype.permute=function(j,k,g,_,N,x){for(var B=0;B<x;B++)_[B]=k[j[B]],N[B]=g[j[B]]},C.prototype.transform=function(j,k,g,_,N,x){this.permute(x,j,k,g,_,N);for(var B=1;B<N;B<<=1)for(var y=B<<1,w=Math.cos(2*Math.PI/y),p=Math.sin(2*Math.PI/y),f=0;f<N;f+=y)for(var c=w,h=p,d=0;d<B;d++){var b=g[f+d],l=_[f+d],o=g[f+d+B],u=_[f+d+B],n=c*o-h*u;u=c*u+h*o,o=n,g[f+d]=b+o,_[f+d]=l+u,g[f+d+B]=b-o,_[f+d+B]=l-u,d!==y&&(n=w*c-p*h,h=w*h+p*c,c=n)}},C.prototype.guessLen13b=function(j,k){var g=Math.max(k,j)|1,_=g&1,N=0;for(g=g/2|0;g;g=g>>>1)N++;return 1<<N+1+_},C.prototype.conjugate=function(j,k,g){if(!(g<=1))for(var _=0;_<g/2;_++){var N=j[_];j[_]=j[g-_-1],j[g-_-1]=N,N=k[_],k[_]=-k[g-_-1],k[g-_-1]=-N}},C.prototype.normalize13b=function(j,k){for(var g=0,_=0;_<k/2;_++){var N=Math.round(j[2*_+1]/k)*8192+Math.round(j[2*_]/k)+g;j[_]=N&67108863,N<67108864?g=0:g=N/67108864|0}return j},C.prototype.convert13b=function(j,k,g,_){for(var N=0,x=0;x<k;x++)N=N+(j[x]|0),g[2*x]=N&8191,N=N>>>13,g[2*x+1]=N&8191,N=N>>>13;for(x=2*k;x<_;++x)g[x]=0;G(N===0),G((N&-8192)===0)},C.prototype.stub=function(j){for(var k=new Array(j),g=0;g<j;g++)k[g]=0;return k},C.prototype.mulp=function(j,k,g){var _=2*this.guessLen13b(j.length,k.length),N=this.makeRBT(_),x=this.stub(_),B=new Array(_),y=new Array(_),w=new Array(_),p=new Array(_),f=new Array(_),c=new Array(_),h=g.words;h.length=_,this.convert13b(j.words,j.length,B,_),this.convert13b(k.words,k.length,p,_),this.transform(B,x,y,w,_,N),this.transform(p,x,f,c,_,N);for(var d=0;d<_;d++){var b=y[d]*f[d]-w[d]*c[d];w[d]=y[d]*c[d]+w[d]*f[d],y[d]=b}return this.conjugate(y,w,_),this.transform(y,w,h,x,_,N),this.conjugate(h,x,_),this.normalize13b(h,_),g.negative=j.negative^k.negative,g.length=j.length+k.length,g.strip()},U.prototype.mul=function(j){var k=new U(null);return k.words=new Array(this.length+j.length),this.mulTo(j,k)},U.prototype.mulf=function(j){var k=new U(null);return k.words=new Array(this.length+j.length),D(this,j,k)},U.prototype.imul=function(j){return this.clone().mulTo(j,this)},U.prototype.imuln=function(j){G(typeof j=="number"),G(j<67108864);for(var k=0,g=0;g<this.length;g++){var _=(this.words[g]|0)*j,N=(_&67108863)+(k&67108863);k>>=26,k+=_/67108864|0,k+=N>>>26,this.words[g]=N&67108863}return k!==0&&(this.words[g]=k,this.length++),this},U.prototype.muln=function(j){return this.clone().imuln(j)},U.prototype.sqr=function(){return this.mul(this)},U.prototype.isqr=function(){return this.imul(this.clone())},U.prototype.pow=function(j){var k=H(j);if(k.length===0)return new U(1);for(var g=this,_=0;_<k.length&&k[_]===0;_++,g=g.sqr());if(++_<k.length)for(var N=g.sqr();_<k.length;_++,N=N.sqr())k[_]!==0&&(g=g.mul(N));return g},U.prototype.iushln=function(j){G(typeof j=="number"&&j>=0);var k=j%26,g=(j-k)/26,_=67108863>>>26-k<<26-k,N;if(k!==0){var x=0;for(N=0;N<this.length;N++){var B=this.words[N]&_,y=(this.words[N]|0)-B<<k;this.words[N]=y|x,x=B>>>26-k}x&&(this.words[N]=x,this.length++)}if(g!==0){for(N=this.length-1;N>=0;N--)this.words[N+g]=this.words[N];for(N=0;N<g;N++)this.words[N]=0;this.length+=g}return this.strip()},U.prototype.ishln=function(j){return G(this.negative===0),this.iushln(j)},U.prototype.iushrn=function(j,k,g){G(typeof j=="number"&&j>=0);var _;k?_=(k-k%26)/26:_=0;var N=j%26,x=Math.min((j-N)/26,this.length),B=67108863^67108863>>>N<<N,y=g;if(_-=x,_=Math.max(0,_),y){for(var w=0;w<x;w++)y.words[w]=this.words[w];y.length=x}if(x!==0)if(this.length>x)for(this.length-=x,w=0;w<this.length;w++)this.words[w]=this.words[w+x];else this.words[0]=0,this.length=1;var p=0;for(w=this.length-1;w>=0&&(p!==0||w>=_);w--){var f=this.words[w]|0;this.words[w]=p<<26-N|f>>>N,p=f&B}return y&&p!==0&&(y.words[y.length++]=p),this.length===0&&(this.words[0]=0,this.length=1),this.strip()},U.prototype.ishrn=function(j,k,g){return G(this.negative===0),this.iushrn(j,k,g)},U.prototype.shln=function(j){return this.clone().ishln(j)},U.prototype.ushln=function(j){return this.clone().iushln(j)},U.prototype.shrn=function(j){return this.clone().ishrn(j)},U.prototype.ushrn=function(j){return this.clone().iushrn(j)},U.prototype.testn=function(j){G(typeof j=="number"&&j>=0);var k=j%26,g=(j-k)/26,_=1<<k;if(this.length<=g)return!1;var N=this.words[g];return!!(N&_)},U.prototype.imaskn=function(j){G(typeof j=="number"&&j>=0);var k=j%26,g=(j-k)/26;if(G(this.negative===0,"imaskn works only with positive numbers"),this.length<=g)return this;if(k!==0&&g++,this.length=Math.min(g,this.length),k!==0){var _=67108863^67108863>>>k<<k;this.words[this.length-1]&=_}return this.strip()},U.prototype.maskn=function(j){return this.clone().imaskn(j)},U.prototype.iaddn=function(j){return G(typeof j=="number"),G(j<67108864),j<0?this.isubn(-j):this.negative!==0?this.length===1&&(this.words[0]|0)<j?(this.words[0]=j-(this.words[0]|0),this.negative=0,this):(this.negative=0,this.isubn(j),this.negative=1,this):this._iaddn(j)},U.prototype._iaddn=function(j){this.words[0]+=j;for(var k=0;k<this.length&&this.words[k]>=67108864;k++)this.words[k]-=67108864,k===this.length-1?this.words[k+1]=1:this.words[k+1]++;return this.length=Math.max(this.length,k+1),this},U.prototype.isubn=function(j){if(G(typeof j=="number"),G(j<67108864),j<0)return this.iaddn(-j);if(this.negative!==0)return this.negative=0,this.iaddn(j),this.negative=1,this;if(this.words[0]-=j,this.length===1&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var k=0;k<this.length&&this.words[k]<0;k++)this.words[k]+=67108864,this.words[k+1]-=1;return this.strip()},U.prototype.addn=function(j){return this.clone().iaddn(j)},U.prototype.subn=function(j){return this.clone().isubn(j)},U.prototype.iabs=function(){return this.negative=0,this},U.prototype.abs=function(){return this.clone().iabs()},U.prototype._ishlnsubmul=function(j,k,g){var _=j.length+g,N;this._expand(_);var x,B=0;for(N=0;N<j.length;N++){x=(this.words[N+g]|0)+B;var y=(j.words[N]|0)*k;x-=y&67108863,B=(x>>26)-(y/67108864|0),this.words[N+g]=x&67108863}for(;N<this.length-g;N++)x=(this.words[N+g]|0)+B,B=x>>26,this.words[N+g]=x&67108863;if(B===0)return this.strip();for(G(B===-1),B=0,N=0;N<this.length;N++)x=-(this.words[N]|0)+B,B=x>>26,this.words[N]=x&67108863;return this.negative=1,this.strip()},U.prototype._wordDiv=function(j,k){var g=this.length-j.length,_=this.clone(),N=j,x=N.words[N.length-1]|0,B=this._countBits(x);g=26-B,g!==0&&(N=N.ushln(g),_.iushln(g),x=N.words[N.length-1]|0);var y=_.length-N.length,w;if(k!=="mod"){w=new U(null),w.length=y+1,w.words=new Array(w.length);for(var p=0;p<w.length;p++)w.words[p]=0}var f=_.clone()._ishlnsubmul(N,1,y);f.negative===0&&(_=f,w&&(w.words[y]=1));for(var c=y-1;c>=0;c--){var h=(_.words[N.length+c]|0)*67108864+(_.words[N.length+c-1]|0);for(h=Math.min(h/x|0,67108863),_._ishlnsubmul(N,h,c);_.negative!==0;)h--,_.negative=0,_._ishlnsubmul(N,1,c),_.isZero()||(_.negative^=1);w&&(w.words[c]=h)}return w&&w.strip(),_.strip(),k!=="div"&&g!==0&&_.iushrn(g),{div:w||null,mod:_}},U.prototype.divmod=function(j,k,g){if(G(!j.isZero()),this.isZero())return{div:new U(0),mod:new U(0)};var _,N,x;return this.negative!==0&&j.negative===0?(x=this.neg().divmod(j,k),k!=="mod"&&(_=x.div.neg()),k!=="div"&&(N=x.mod.neg(),g&&N.negative!==0&&N.iadd(j)),{div:_,mod:N}):this.negative===0&&j.negative!==0?(x=this.divmod(j.neg(),k),k!=="mod"&&(_=x.div.neg()),{div:_,mod:x.mod}):(this.negative&j.negative)!==0?(x=this.neg().divmod(j.neg(),k),k!=="div"&&(N=x.mod.neg(),g&&N.negative!==0&&N.isub(j)),{div:x.div,mod:N}):j.length>this.length||this.cmp(j)<0?{div:new U(0),mod:this}:j.length===1?k==="div"?{div:this.divn(j.words[0]),mod:null}:k==="mod"?{div:null,mod:new U(this.modn(j.words[0]))}:{div:this.divn(j.words[0]),mod:new U(this.modn(j.words[0]))}:this._wordDiv(j,k)},U.prototype.div=function(j){return this.divmod(j,"div",!1).div},U.prototype.mod=function(j){return this.divmod(j,"mod",!1).mod},U.prototype.umod=function(j){return this.divmod(j,"mod",!0).mod},U.prototype.divRound=function(j){var k=this.divmod(j);if(k.mod.isZero())return k.div;var g=k.div.negative!==0?k.mod.isub(j):k.mod,_=j.ushrn(1),N=j.andln(1),x=g.cmp(_);return x<0||N===1&&x===0?k.div:k.div.negative!==0?k.div.isubn(1):k.div.iaddn(1)},U.prototype.modn=function(j){G(j<=67108863);for(var k=(1<<26)%j,g=0,_=this.length-1;_>=0;_--)g=(k*g+(this.words[_]|0))%j;return g},U.prototype.idivn=function(j){G(j<=67108863);for(var k=0,g=this.length-1;g>=0;g--){var _=(this.words[g]|0)+k*67108864;this.words[g]=_/j|0,k=_%j}return this.strip()},U.prototype.divn=function(j){return this.clone().idivn(j)},U.prototype.egcd=function(j){G(j.negative===0),G(!j.isZero());var k=this,g=j.clone();k.negative!==0?k=k.umod(j):k=k.clone();for(var _=new U(1),N=new U(0),x=new U(0),B=new U(1),y=0;k.isEven()&&g.isEven();)k.iushrn(1),g.iushrn(1),++y;for(var w=g.clone(),p=k.clone();!k.isZero();){for(var f=0,c=1;(k.words[0]&c)===0&&f<26;++f,c<<=1);if(f>0)for(k.iushrn(f);f-- >0;)(_.isOdd()||N.isOdd())&&(_.iadd(w),N.isub(p)),_.iushrn(1),N.iushrn(1);for(var h=0,d=1;(g.words[0]&d)===0&&h<26;++h,d<<=1);if(h>0)for(g.iushrn(h);h-- >0;)(x.isOdd()||B.isOdd())&&(x.iadd(w),B.isub(p)),x.iushrn(1),B.iushrn(1);k.cmp(g)>=0?(k.isub(g),_.isub(x),N.isub(B)):(g.isub(k),x.isub(_),B.isub(N))}return{a:x,b:B,gcd:g.iushln(y)}},U.prototype._invmp=function(j){G(j.negative===0),G(!j.isZero());var k=this,g=j.clone();k.negative!==0?k=k.umod(j):k=k.clone();for(var _=new U(1),N=new U(0),x=g.clone();k.cmpn(1)>0&&g.cmpn(1)>0;){for(var B=0,y=1;(k.words[0]&y)===0&&B<26;++B,y<<=1);if(B>0)for(k.iushrn(B);B-- >0;)_.isOdd()&&_.iadd(x),_.iushrn(1);for(var w=0,p=1;(g.words[0]&p)===0&&w<26;++w,p<<=1);if(w>0)for(g.iushrn(w);w-- >0;)N.isOdd()&&N.iadd(x),N.iushrn(1);k.cmp(g)>=0?(k.isub(g),_.isub(N)):(g.isub(k),N.isub(_))}var f;return k.cmpn(1)===0?f=_:f=N,f.cmpn(0)<0&&f.iadd(j),f},U.prototype.gcd=function(j){if(this.isZero())return j.abs();if(j.isZero())return this.abs();var k=this.clone(),g=j.clone();k.negative=0,g.negative=0;for(var _=0;k.isEven()&&g.isEven();_++)k.iushrn(1),g.iushrn(1);do{for(;k.isEven();)k.iushrn(1);for(;g.isEven();)g.iushrn(1);var N=k.cmp(g);if(N<0){var x=k;k=g,g=x}else if(N===0||g.cmpn(1)===0)break;k.isub(g)}while(!0);return g.iushln(_)},U.prototype.invm=function(j){return this.egcd(j).a.umod(j)},U.prototype.isEven=function(){return(this.words[0]&1)===0},U.prototype.isOdd=function(){return(this.words[0]&1)===1},U.prototype.andln=function(j){return this.words[0]&j},U.prototype.bincn=function(j){G(typeof j=="number");var k=j%26,g=(j-k)/26,_=1<<k;if(this.length<=g)return this._expand(g+1),this.words[g]|=_,this;for(var N=_,x=g;N!==0&&x<this.length;x++){var B=this.words[x]|0;B+=N,N=B>>>26,B&=67108863,this.words[x]=B}return N!==0&&(this.words[x]=N,this.length++),this},U.prototype.isZero=function(){return this.length===1&&this.words[0]===0},U.prototype.cmpn=function(j){var k=j<0;if(this.negative!==0&&!k)return-1;if(this.negative===0&&k)return 1;this.strip();var g;if(this.length>1)g=1;else{k&&(j=-j),G(j<=67108863,"Number is too big");var _=this.words[0]|0;g=_===j?0:_<j?-1:1}return this.negative!==0?-g|0:g},U.prototype.cmp=function(j){if(this.negative!==0&&j.negative===0)return-1;if(this.negative===0&&j.negative!==0)return 1;var k=this.ucmp(j);return this.negative!==0?-k|0:k},U.prototype.ucmp=function(j){if(this.length>j.length)return 1;if(this.length<j.length)return-1;for(var k=0,g=this.length-1;g>=0;g--){var _=this.words[g]|0,N=j.words[g]|0;if(_!==N){_<N?k=-1:_>N&&(k=1);break}}return k},U.prototype.gtn=function(j){return this.cmpn(j)===1},U.prototype.gt=function(j){return this.cmp(j)===1},U.prototype.gten=function(j){return this.cmpn(j)>=0},U.prototype.gte=function(j){return this.cmp(j)>=0},U.prototype.ltn=function(j){return this.cmpn(j)===-1},U.prototype.lt=function(j){return this.cmp(j)===-1},U.prototype.lten=function(j){return this.cmpn(j)<=0},U.prototype.lte=function(j){return this.cmp(j)<=0},U.prototype.eqn=function(j){return this.cmpn(j)===0},U.prototype.eq=function(j){return this.cmp(j)===0},U.red=function(j){return new v(j)},U.prototype.toRed=function(j){return G(!this.red,"Already a number in reduction context"),G(this.negative===0,"red works only with positives"),j.convertTo(this)._forceRed(j)},U.prototype.fromRed=function(){return G(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},U.prototype._forceRed=function(j){return this.red=j,this},U.prototype.forceRed=function(j){return G(!this.red,"Already a number in reduction context"),this._forceRed(j)},U.prototype.redAdd=function(j){return G(this.red,"redAdd works only with red numbers"),this.red.add(this,j)},U.prototype.redIAdd=function(j){return G(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,j)},U.prototype.redSub=function(j){return G(this.red,"redSub works only with red numbers"),this.red.sub(this,j)},U.prototype.redISub=function(j){return G(this.red,"redISub works only with red numbers"),this.red.isub(this,j)},U.prototype.redShl=function(j){return G(this.red,"redShl works only with red numbers"),this.red.shl(this,j)},U.prototype.redMul=function(j){return G(this.red,"redMul works only with red numbers"),this.red._verify2(this,j),this.red.mul(this,j)},U.prototype.redIMul=function(j){return G(this.red,"redMul works only with red numbers"),this.red._verify2(this,j),this.red.imul(this,j)},U.prototype.redSqr=function(){return G(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},U.prototype.redISqr=function(){return G(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},U.prototype.redSqrt=function(){return G(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},U.prototype.redInvm=function(){return G(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},U.prototype.redNeg=function(){return G(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},U.prototype.redPow=function(j){return G(this.red&&!j.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,j)};var L={k256:null,p224:null,p192:null,p25519:null};function R(j,k){this.name=j,this.p=new U(k,16),this.n=this.p.bitLength(),this.k=new U(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}R.prototype._tmp=function(){var j=new U(null);return j.words=new Array(Math.ceil(this.n/13)),j},R.prototype.ireduce=function(j){var k=j,g;do this.split(k,this.tmp),k=this.imulK(k),k=k.iadd(this.tmp),g=k.bitLength();while(g>this.n);var _=g<this.n?-1:k.ucmp(this.p);return _===0?(k.words[0]=0,k.length=1):_>0?k.isub(this.p):k.strip!==void 0?k.strip():k._strip(),k},R.prototype.split=function(j,k){j.iushrn(this.n,0,k)},R.prototype.imulK=function(j){return j.imul(this.k)};function P(){R.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}V(P,R),P.prototype.split=function(j,k){for(var g=4194303,_=Math.min(j.length,9),N=0;N<_;N++)k.words[N]=j.words[N];if(k.length=_,j.length<=9){j.words[0]=0,j.length=1;return}var x=j.words[9];for(k.words[k.length++]=x&g,N=10;N<j.length;N++){var B=j.words[N]|0;j.words[N-10]=(B&g)<<4|x>>>22,x=B}x>>>=22,j.words[N-10]=x,x===0&&j.length>10?j.length-=10:j.length-=9},P.prototype.imulK=function(j){j.words[j.length]=0,j.words[j.length+1]=0,j.length+=2;for(var k=0,g=0;g<j.length;g++){var _=j.words[g]|0;k+=_*977,j.words[g]=k&67108863,k=_*64+(k/67108864|0)}return j.words[j.length-1]===0&&(j.length--,j.words[j.length-1]===0&&j.length--),j};function z(){R.call(this,"p224","ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001")}V(z,R);function M(){R.call(this,"p192","ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff")}V(M,R);function S(){R.call(this,"25519","7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed")}V(S,R),S.prototype.imulK=function(j){for(var k=0,g=0;g<j.length;g++){var _=(j.words[g]|0)*19+k,N=_&67108863;_>>>=26,j.words[g]=N,k=_}return k!==0&&(j.words[j.length++]=k),j},U._prime=function(j){if(L[j])return L[j];var k;if(j==="k256")k=new P;else if(j==="p224")k=new z;else if(j==="p192")k=new M;else if(j==="p25519")k=new S;else throw new Error("Unknown prime "+j);return L[j]=k,k};function v(j){if(typeof j=="string"){var k=U._prime(j);this.m=k.p,this.prime=k}else G(j.gtn(1),"modulus must be greater than 1"),this.m=j,this.prime=null}v.prototype._verify1=function(j){G(j.negative===0,"red works only with positives"),G(j.red,"red works only with red numbers")},v.prototype._verify2=function(j,k){G((j.negative|k.negative)===0,"red works only with positives"),G(j.red&&j.red===k.red,"red works only with red numbers")},v.prototype.imod=function(j){return this.prime?this.prime.ireduce(j)._forceRed(this):j.umod(this.m)._forceRed(this)},v.prototype.neg=function(j){return j.isZero()?j.clone():this.m.sub(j)._forceRed(this)},v.prototype.add=function(j,k){this._verify2(j,k);var g=j.add(k);return g.cmp(this.m)>=0&&g.isub(this.m),g._forceRed(this)},v.prototype.iadd=function(j,k){this._verify2(j,k);var g=j.iadd(k);return g.cmp(this.m)>=0&&g.isub(this.m),g},v.prototype.sub=function(j,k){this._verify2(j,k);var g=j.sub(k);return g.cmpn(0)<0&&g.iadd(this.m),g._forceRed(this)},v.prototype.isub=function(j,k){this._verify2(j,k);var g=j.isub(k);return g.cmpn(0)<0&&g.iadd(this.m),g},v.prototype.shl=function(j,k){return this._verify1(j),this.imod(j.ushln(k))},v.prototype.imul=function(j,k){return this._verify2(j,k),this.imod(j.imul(k))},v.prototype.mul=function(j,k){return this._verify2(j,k),this.imod(j.mul(k))},v.prototype.isqr=function(j){return this.imul(j,j.clone())},v.prototype.sqr=function(j){return this.mul(j,j)},v.prototype.sqrt=function(j){if(j.isZero())return j.clone();var k=this.m.andln(3);if(G(k%2===1),k===3){var g=this.m.add(new U(1)).iushrn(2);return this.pow(j,g)}for(var _=this.m.subn(1),N=0;!_.isZero()&&_.andln(1)===0;)N++,_.iushrn(1);G(!_.isZero());var x=new U(1).toRed(this),B=x.redNeg(),y=this.m.subn(1).iushrn(1),w=this.m.bitLength();for(w=new U(2*w*w).toRed(this);this.pow(w,y).cmp(B)!==0;)w.redIAdd(B);for(var p=this.pow(w,_),f=this.pow(j,_.addn(1).iushrn(1)),c=this.pow(j,_),h=N;c.cmp(x)!==0;){for(var d=c,b=0;d.cmp(x)!==0;b++)d=d.redSqr();G(b<h);var l=this.pow(p,new U(1).iushln(h-b-1));f=f.redMul(l),p=l.redSqr(),c=c.redMul(p),h=b}return f},v.prototype.invm=function(j){var k=j._invmp(this.m);return k.negative!==0?(k.negative=0,this.imod(k).redNeg()):this.imod(k)},v.prototype.pow=function(j,k){if(k.isZero())return new U(1).toRed(this);if(k.cmpn(1)===0)return j.clone();var g=4,_=new Array(1<<g);_[0]=new U(1).toRed(this),_[1]=j;for(var N=2;N<_.length;N++)_[N]=this.mul(_[N-1],j);var x=_[0],B=0,y=0,w=k.bitLength()%26;for(w===0&&(w=26),N=k.length-1;N>=0;N--){for(var p=k.words[N],f=w-1;f>=0;f--){var c=p>>f&1;if(x!==_[0]&&(x=this.sqr(x)),c===0&&B===0){y=0;continue}B<<=1,B|=c,y++,!(y!==g&&(N!==0||f!==0))&&(x=this.mul(x,_[B]),y=0,B=0)}w=26}return x},v.prototype.convertTo=function(j){var k=j.umod(this.m);return k===j?k.clone():k},v.prototype.convertFrom=function(j){var k=j.clone();return k.red=null,k},U.mont=function(j){return new q(j)};function q(j){v.call(this,j),this.shift=this.m.bitLength(),this.shift%26!==0&&(this.shift+=26-this.shift%26),this.r=new U(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)}V(q,v),q.prototype.convertTo=function(j){return this.imod(j.ushln(this.shift))},q.prototype.convertFrom=function(j){var k=this.imod(j.mul(this.rinv));return k.red=null,k},q.prototype.imul=function(j,k){if(j.isZero()||k.isZero())return j.words[0]=0,j.length=1,j;var g=j.imul(k),_=g.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),N=g.isub(_).iushrn(this.shift),x=N;return N.cmp(this.m)>=0?x=N.isub(this.m):N.cmpn(0)<0&&(x=N.iadd(this.m)),x._forceRed(this)},q.prototype.mul=function(j,k){if(j.isZero()||k.isZero())return new U(0)._forceRed(this);var g=j.mul(k),_=g.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),N=g.isub(_).iushrn(this.shift),x=N;return N.cmp(this.m)>=0?x=N.isub(this.m):N.cmpn(0)<0&&(x=N.iadd(this.m)),x._forceRed(this)},q.prototype.invm=function(j){var k=this.imod(j._invmp(this.m).mul(this.r2));return k._forceRed(this)}})(typeof Q>"u"||Q,$)}}),_Q=q$({"node_modules/miller-rabin/node_modules/bn.js/lib/bn.js"($,Q){(function(Y,Z){function G(j,k){if(!j)throw new Error(k||"Assertion failed")}function V(j,k){j.super_=k;var g=function(){};g.prototype=k.prototype,j.prototype=new g,j.prototype.constructor=j}function U(j,k,g){if(U.isBN(j))return j;this.negative=0,this.words=null,this.length=0,this.red=null,j!==null&&((k==="le"||k==="be")&&(g=k,k=10),this._init(j||0,k||10,g||"be"))}typeof Y=="object"?Y.exports=U:Z.BN=U,U.BN=U,U.wordSize=26;var X=F$;U.isBN=function(j){return j instanceof U?!0:j!==null&&typeof j=="object"&&j.constructor.wordSize===U.wordSize&&Array.isArray(j.words)},U.max=function(j,k){return j.cmp(k)>0?j:k},U.min=function(j,k){return j.cmp(k)<0?j:k},U.prototype._init=function(j,k,g){if(typeof j=="number")return this._initNumber(j,k,g);if(typeof j=="object")return this._initArray(j,k,g);k==="hex"&&(k=16),G(k===(k|0)&&k>=2&&k<=36),j=j.toString().replace(/\s+/g,"");var _=0;j[0]==="-"&&(_++,this.negative=1),_<j.length&&(k===16?this._parseHex(j,_,g):(this._parseBase(j,k,_),g==="le"&&this._initArray(this.toArray(),k,g)))},U.prototype._initNumber=function(j,k,g){j<0&&(this.negative=1,j=-j),j<67108864?(this.words=[j&67108863],this.length=1):j<4503599627370496?(this.words=[j&67108863,j/67108864&67108863],this.length=2):(G(j<9007199254740992),this.words=[j&67108863,j/67108864&67108863,1],this.length=3),g==="le"&&this._initArray(this.toArray(),k,g)},U.prototype._initArray=function(j,k,g){if(G(typeof j.length=="number"),j.length<=0)return this.words=[0],this.length=1,this;this.length=Math.ceil(j.length/3),this.words=new Array(this.length);for(var _=0;_<this.length;_++)this.words[_]=0;var N,x,B=0;if(g==="be")for(_=j.length-1,N=0;_>=0;_-=3)x=j[_]|j[_-1]<<8|j[_-2]<<16,this.words[N]|=x<<B&67108863,this.words[N+1]=x>>>26-B&67108863,B+=24,B>=26&&(B-=26,N++);else if(g==="le")for(_=0,N=0;_<j.length;_+=3)x=j[_]|j[_+1]<<8|j[_+2]<<16,this.words[N]|=x<<B&67108863,this.words[N+1]=x>>>26-B&67108863,B+=24,B>=26&&(B-=26,N++);return this.strip()};function K(j,k){var g=j.charCodeAt(k);return g>=65&&g<=70?g-55:g>=97&&g<=102?g-87:g-48&15}function I(j,k,g){var _=K(j,g);return g-1>=k&&(_|=K(j,g-1)<<4),_}U.prototype._parseHex=function(j,k,g){this.length=Math.ceil((j.length-k)/6),this.words=new Array(this.length);for(var _=0;_<this.length;_++)this.words[_]=0;var N=0,x=0,B;if(g==="be")for(_=j.length-1;_>=k;_-=2)B=I(j,k,_)<<N,this.words[x]|=B&67108863,N>=18?(N-=18,x+=1,this.words[x]|=B>>>26):N+=8;else{var y=j.length-k;for(_=y%2===0?k+1:k;_<j.length;_+=2)B=I(j,k,_)<<N,this.words[x]|=B&67108863,N>=18?(N-=18,x+=1,this.words[x]|=B>>>26):N+=8}this.strip()};function O(j,k,g,_){for(var N=0,x=Math.min(j.length,g),B=k;B<x;B++){var y=j.charCodeAt(B)-48;N*=_,y>=49?N+=y-49+10:y>=17?N+=y-17+10:N+=y}return N}U.prototype._parseBase=function(j,k,g){this.words=[0],this.length=1;for(var _=0,N=1;N<=67108863;N*=k)_++;_--,N=N/k|0;for(var x=j.length-g,B=x%_,y=Math.min(x,x-B)+g,w=0,p=g;p<y;p+=_)w=O(j,p,p+_,k),this.imuln(N),this.words[0]+w<67108864?this.words[0]+=w:this._iaddn(w);if(B!==0){var f=1;for(w=O(j,p,j.length,k),p=0;p<B;p++)f*=k;this.imuln(f),this.words[0]+w<67108864?this.words[0]+=w:this._iaddn(w)}this.strip()},U.prototype.copy=function(j){j.words=new Array(this.length);for(var k=0;k<this.length;k++)j.words[k]=this.words[k];j.length=this.length,j.negative=this.negative,j.red=this.red},U.prototype.clone=function(){var j=new U(null);return this.copy(j),j},U.prototype._expand=function(j){for(;this.length<j;)this.words[this.length++]=0;return this},U.prototype.strip=function(){for(;this.length>1&&this.words[this.length-1]===0;)this.length--;return this._normSign()},U.prototype._normSign=function(){return this.length===1&&this.words[0]===0&&(this.negative=0),this},U.prototype.inspect=function(){return(this.red?"<BN-R: ":"<BN: ")+this.toString(16)+">"};var J=["","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"],F=[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],A=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64000000,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,24300000,28629151,33554432,39135393,45435424,52521875,60466176];U.prototype.toString=function(j,k){j=j||10,k=k|0||1;var g;if(j===16||j==="hex"){g="";for(var _=0,N=0,x=0;x<this.length;x++){var B=this.words[x],y=((B<<_|N)&16777215).toString(16);N=B>>>24-_&16777215,N!==0||x!==this.length-1?g=J[6-y.length]+y+g:g=y+g,_+=2,_>=26&&(_-=26,x--)}for(N!==0&&(g=N.toString(16)+g);g.length%k!==0;)g="0"+g;return this.negative!==0&&(g="-"+g),g}if(j===(j|0)&&j>=2&&j<=36){var w=F[j],p=A[j];g="";var f=this.clone();for(f.negative=0;!f.isZero();){var c=f.modn(p).toString(j);f=f.idivn(p),f.isZero()?g=c+g:g=J[w-c.length]+c+g}for(this.isZero()&&(g="0"+g);g.length%k!==0;)g="0"+g;return this.negative!==0&&(g="-"+g),g}G(!1,"Base should be between 2 and 36")},U.prototype.toNumber=function(){var j=this.words[0];return this.length===2?j+=this.words[1]*67108864:this.length===3&&this.words[2]===1?j+=4503599627370496+this.words[1]*67108864:this.length>2&&G(!1,"Number can only safely store up to 53 bits"),this.negative!==0?-j:j},U.prototype.toJSON=function(){return this.toString(16)},U.prototype.toBuffer=function(j,k){return G(typeof X<"u"),this.toArrayLike(X,j,k)},U.prototype.toArray=function(j,k){return this.toArrayLike(Array,j,k)},U.prototype.toArrayLike=function(j,k,g){var _=this.byteLength(),N=g||Math.max(1,_);G(_<=N,"byte array longer than desired length"),G(N>0,"Requested array length <= 0"),this.strip();var x=k==="le",B=new j(N),y,w,p=this.clone();if(x){for(w=0;!p.isZero();w++)y=p.andln(255),p.iushrn(8),B[w]=y;for(;w<N;w++)B[w]=0}else{for(w=0;w<N-_;w++)B[w]=0;for(w=0;!p.isZero();w++)y=p.andln(255),p.iushrn(8),B[N-w-1]=y}return B},Math.clz32?U.prototype._countBits=function(j){return 32-Math.clz32(j)}:U.prototype._countBits=function(j){var k=j,g=0;return k>=4096&&(g+=13,k>>>=13),k>=64&&(g+=7,k>>>=7),k>=8&&(g+=4,k>>>=4),k>=2&&(g+=2,k>>>=2),g+k},U.prototype._zeroBits=function(j){if(j===0)return 26;var k=j,g=0;return(k&8191)===0&&(g+=13,k>>>=13),(k&127)===0&&(g+=7,k>>>=7),(k&15)===0&&(g+=4,k>>>=4),(k&3)===0&&(g+=2,k>>>=2),(k&1)===0&&g++,g},U.prototype.bitLength=function(){var j=this.words[this.length-1],k=this._countBits(j);return(this.length-1)*26+k};function H(j){for(var k=new Array(j.bitLength()),g=0;g<k.length;g++){var _=g/26|0,N=g%26;k[g]=(j.words[_]&1<<N)>>>N}return k}U.prototype.zeroBits=function(){if(this.isZero())return 0;for(var j=0,k=0;k<this.length;k++){var g=this._zeroBits(this.words[k]);if(j+=g,g!==26)break}return j},U.prototype.byteLength=function(){return Math.ceil(this.bitLength()/8)},U.prototype.toTwos=function(j){return this.negative!==0?this.abs().inotn(j).iaddn(1):this.clone()},U.prototype.fromTwos=function(j){return this.testn(j-1)?this.notn(j).iaddn(1).ineg():this.clone()},U.prototype.isNeg=function(){return this.negative!==0},U.prototype.neg=function(){return this.clone().ineg()},U.prototype.ineg=function(){return this.isZero()||(this.negative^=1),this},U.prototype.iuor=function(j){for(;this.length<j.length;)this.words[this.length++]=0;for(var k=0;k<j.length;k++)this.words[k]=this.words[k]|j.words[k];return this.strip()},U.prototype.ior=function(j){return G((this.negative|j.negative)===0),this.iuor(j)},U.prototype.or=function(j){return this.length>j.length?this.clone().ior(j):j.clone().ior(this)},U.prototype.uor=function(j){return this.length>j.length?this.clone().iuor(j):j.clone().iuor(this)},U.prototype.iuand=function(j){var k;this.length>j.length?k=j:k=this;for(var g=0;g<k.length;g++)this.words[g]=this.words[g]&j.words[g];return this.length=k.length,this.strip()},U.prototype.iand=function(j){return G((this.negative|j.negative)===0),this.iuand(j)},U.prototype.and=function(j){return this.length>j.length?this.clone().iand(j):j.clone().iand(this)},U.prototype.uand=function(j){return this.length>j.length?this.clone().iuand(j):j.clone().iuand(this)},U.prototype.iuxor=function(j){var k,g;this.length>j.length?(k=this,g=j):(k=j,g=this);for(var _=0;_<g.length;_++)this.words[_]=k.words[_]^g.words[_];if(this!==k)for(;_<k.length;_++)this.words[_]=k.words[_];return this.length=k.length,this.strip()},U.prototype.ixor=function(j){return G((this.negative|j.negative)===0),this.iuxor(j)},U.prototype.xor=function(j){return this.length>j.length?this.clone().ixor(j):j.clone().ixor(this)},U.prototype.uxor=function(j){return this.length>j.length?this.clone().iuxor(j):j.clone().iuxor(this)},U.prototype.inotn=function(j){G(typeof j=="number"&&j>=0);var k=Math.ceil(j/26)|0,g=j%26;this._expand(k),g>0&&k--;for(var _=0;_<k;_++)this.words[_]=~this.words[_]&67108863;return g>0&&(this.words[_]=~this.words[_]&67108863>>26-g),this.strip()},U.prototype.notn=function(j){return this.clone().inotn(j)},U.prototype.setn=function(j,k){G(typeof j=="number"&&j>=0);var g=j/26|0,_=j%26;return this._expand(g+1),k?this.words[g]=this.words[g]|1<<_:this.words[g]=this.words[g]&~(1<<_),this.strip()},U.prototype.iadd=function(j){var k;if(this.negative!==0&&j.negative===0)return this.negative=0,k=this.isub(j),this.negative^=1,this._normSign();if(this.negative===0&&j.negative!==0)return j.negative=0,k=this.isub(j),j.negative=1,k._normSign();var g,_;this.length>j.length?(g=this,_=j):(g=j,_=this);for(var N=0,x=0;x<_.length;x++)k=(g.words[x]|0)+(_.words[x]|0)+N,this.words[x]=k&67108863,N=k>>>26;for(;N!==0&&x<g.length;x++)k=(g.words[x]|0)+N,this.words[x]=k&67108863,N=k>>>26;if(this.length=g.length,N!==0)this.words[this.length]=N,this.length++;else if(g!==this)for(;x<g.length;x++)this.words[x]=g.words[x];return this},U.prototype.add=function(j){var k;return j.negative!==0&&this.negative===0?(j.negative=0,k=this.sub(j),j.negative^=1,k):j.negative===0&&this.negative!==0?(this.negative=0,k=j.sub(this),this.negative=1,k):this.length>j.length?this.clone().iadd(j):j.clone().iadd(this)},U.prototype.isub=function(j){if(j.negative!==0){j.negative=0;var k=this.iadd(j);return j.negative=1,k._normSign()}else if(this.negative!==0)return this.negative=0,this.iadd(j),this.negative=1,this._normSign();var g=this.cmp(j);if(g===0)return this.negative=0,this.length=1,this.words[0]=0,this;var _,N;g>0?(_=this,N=j):(_=j,N=this);for(var x=0,B=0;B<N.length;B++)k=(_.words[B]|0)-(N.words[B]|0)+x,x=k>>26,this.words[B]=k&67108863;for(;x!==0&&B<_.length;B++)k=(_.words[B]|0)+x,x=k>>26,this.words[B]=k&67108863;if(x===0&&B<_.length&&_!==this)for(;B<_.length;B++)this.words[B]=_.words[B];return this.length=Math.max(this.length,B),_!==this&&(this.negative=1),this.strip()},U.prototype.sub=function(j){return this.clone().isub(j)};function W(j,k,g){g.negative=k.negative^j.negative;var _=j.length+k.length|0;g.length=_,_=_-1|0;var N=j.words[0]|0,x=k.words[0]|0,B=N*x,y=B&67108863,w=B/67108864|0;g.words[0]=y;for(var p=1;p<_;p++){for(var f=w>>>26,c=w&67108863,h=Math.min(p,k.length-1),d=Math.max(0,p-j.length+1);d<=h;d++){var b=p-d|0;N=j.words[b]|0,x=k.words[d]|0,B=N*x+c,f+=B/67108864|0,c=B&67108863}g.words[p]=c|0,w=f|0}return w!==0?g.words[p]=w|0:g.length--,g.strip()}var E=function(j,k,g){var _=j.words,N=k.words,x=g.words,B=0,y,w,p,f=_[0]|0,c=f&8191,h=f>>>13,d=_[1]|0,b=d&8191,l=d>>>13,o=_[2]|0,u=o&8191,n=o>>>13,s=_[3]|0,t=s&8191,m=s>>>13,a=_[4]|0,e=a&8191,r=a>>>13,i=_[5]|0,$0=i&8191,Q0=i>>>13,Y0=_[6]|0,Z0=Y0&8191,G0=Y0>>>13,V0=_[7]|0,U0=V0&8191,X0=V0>>>13,K0=_[8]|0,I0=K0&8191,O0=K0>>>13,J0=_[9]|0,F0=J0&8191,A0=J0>>>13,H0=N[0]|0,W0=H0&8191,E0=H0>>>13,T0=N[1]|0,D0=T0&8191,C0=T0>>>13,L0=N[2]|0,R0=L0&8191,P0=L0>>>13,z0=N[3]|0,M0=z0&8191,S0=z0>>>13,v0=N[4]|0,q0=v0&8191,j0=v0>>>13,k0=N[5]|0,g0=k0&8191,_0=k0>>>13,N0=N[6]|0,x0=N0&8191,B0=N0>>>13,y0=N[7]|0,w0=y0&8191,p0=y0>>>13,f0=N[8]|0,c0=f0&8191,h0=f0>>>13,d0=N[9]|0,b0=d0&8191,l0=d0>>>13;g.negative=j.negative^k.negative,g.length=19,y=Math.imul(c,W0),w=Math.imul(c,E0),w=w+Math.imul(h,W0)|0,p=Math.imul(h,E0);var o0=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(o0>>>26)|0,o0&=67108863,y=Math.imul(b,W0),w=Math.imul(b,E0),w=w+Math.imul(l,W0)|0,p=Math.imul(l,E0),y=y+Math.imul(c,D0)|0,w=w+Math.imul(c,C0)|0,w=w+Math.imul(h,D0)|0,p=p+Math.imul(h,C0)|0;var u0=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(u0>>>26)|0,u0&=67108863,y=Math.imul(u,W0),w=Math.imul(u,E0),w=w+Math.imul(n,W0)|0,p=Math.imul(n,E0),y=y+Math.imul(b,D0)|0,w=w+Math.imul(b,C0)|0,w=w+Math.imul(l,D0)|0,p=p+Math.imul(l,C0)|0,y=y+Math.imul(c,R0)|0,w=w+Math.imul(c,P0)|0,w=w+Math.imul(h,R0)|0,p=p+Math.imul(h,P0)|0;var n0=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(n0>>>26)|0,n0&=67108863,y=Math.imul(t,W0),w=Math.imul(t,E0),w=w+Math.imul(m,W0)|0,p=Math.imul(m,E0),y=y+Math.imul(u,D0)|0,w=w+Math.imul(u,C0)|0,w=w+Math.imul(n,D0)|0,p=p+Math.imul(n,C0)|0,y=y+Math.imul(b,R0)|0,w=w+Math.imul(b,P0)|0,w=w+Math.imul(l,R0)|0,p=p+Math.imul(l,P0)|0,y=y+Math.imul(c,M0)|0,w=w+Math.imul(c,S0)|0,w=w+Math.imul(h,M0)|0,p=p+Math.imul(h,S0)|0;var s0=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(s0>>>26)|0,s0&=67108863,y=Math.imul(e,W0),w=Math.imul(e,E0),w=w+Math.imul(r,W0)|0,p=Math.imul(r,E0),y=y+Math.imul(t,D0)|0,w=w+Math.imul(t,C0)|0,w=w+Math.imul(m,D0)|0,p=p+Math.imul(m,C0)|0,y=y+Math.imul(u,R0)|0,w=w+Math.imul(u,P0)|0,w=w+Math.imul(n,R0)|0,p=p+Math.imul(n,P0)|0,y=y+Math.imul(b,M0)|0,w=w+Math.imul(b,S0)|0,w=w+Math.imul(l,M0)|0,p=p+Math.imul(l,S0)|0,y=y+Math.imul(c,q0)|0,w=w+Math.imul(c,j0)|0,w=w+Math.imul(h,q0)|0,p=p+Math.imul(h,j0)|0;var t0=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(t0>>>26)|0,t0&=67108863,y=Math.imul($0,W0),w=Math.imul($0,E0),w=w+Math.imul(Q0,W0)|0,p=Math.imul(Q0,E0),y=y+Math.imul(e,D0)|0,w=w+Math.imul(e,C0)|0,w=w+Math.imul(r,D0)|0,p=p+Math.imul(r,C0)|0,y=y+Math.imul(t,R0)|0,w=w+Math.imul(t,P0)|0,w=w+Math.imul(m,R0)|0,p=p+Math.imul(m,P0)|0,y=y+Math.imul(u,M0)|0,w=w+Math.imul(u,S0)|0,w=w+Math.imul(n,M0)|0,p=p+Math.imul(n,S0)|0,y=y+Math.imul(b,q0)|0,w=w+Math.imul(b,j0)|0,w=w+Math.imul(l,q0)|0,p=p+Math.imul(l,j0)|0,y=y+Math.imul(c,g0)|0,w=w+Math.imul(c,_0)|0,w=w+Math.imul(h,g0)|0,p=p+Math.imul(h,_0)|0;var m0=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(m0>>>26)|0,m0&=67108863,y=Math.imul(Z0,W0),w=Math.imul(Z0,E0),w=w+Math.imul(G0,W0)|0,p=Math.imul(G0,E0),y=y+Math.imul($0,D0)|0,w=w+Math.imul($0,C0)|0,w=w+Math.imul(Q0,D0)|0,p=p+Math.imul(Q0,C0)|0,y=y+Math.imul(e,R0)|0,w=w+Math.imul(e,P0)|0,w=w+Math.imul(r,R0)|0,p=p+Math.imul(r,P0)|0,y=y+Math.imul(t,M0)|0,w=w+Math.imul(t,S0)|0,w=w+Math.imul(m,M0)|0,p=p+Math.imul(m,S0)|0,y=y+Math.imul(u,q0)|0,w=w+Math.imul(u,j0)|0,w=w+Math.imul(n,q0)|0,p=p+Math.imul(n,j0)|0,y=y+Math.imul(b,g0)|0,w=w+Math.imul(b,_0)|0,w=w+Math.imul(l,g0)|0,p=p+Math.imul(l,_0)|0,y=y+Math.imul(c,x0)|0,w=w+Math.imul(c,B0)|0,w=w+Math.imul(h,x0)|0,p=p+Math.imul(h,B0)|0;var a0=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(a0>>>26)|0,a0&=67108863,y=Math.imul(U0,W0),w=Math.imul(U0,E0),w=w+Math.imul(X0,W0)|0,p=Math.imul(X0,E0),y=y+Math.imul(Z0,D0)|0,w=w+Math.imul(Z0,C0)|0,w=w+Math.imul(G0,D0)|0,p=p+Math.imul(G0,C0)|0,y=y+Math.imul($0,R0)|0,w=w+Math.imul($0,P0)|0,w=w+Math.imul(Q0,R0)|0,p=p+Math.imul(Q0,P0)|0,y=y+Math.imul(e,M0)|0,w=w+Math.imul(e,S0)|0,w=w+Math.imul(r,M0)|0,p=p+Math.imul(r,S0)|0,y=y+Math.imul(t,q0)|0,w=w+Math.imul(t,j0)|0,w=w+Math.imul(m,q0)|0,p=p+Math.imul(m,j0)|0,y=y+Math.imul(u,g0)|0,w=w+Math.imul(u,_0)|0,w=w+Math.imul(n,g0)|0,p=p+Math.imul(n,_0)|0,y=y+Math.imul(b,x0)|0,w=w+Math.imul(b,B0)|0,w=w+Math.imul(l,x0)|0,p=p+Math.imul(l,B0)|0,y=y+Math.imul(c,w0)|0,w=w+Math.imul(c,p0)|0,w=w+Math.imul(h,w0)|0,p=p+Math.imul(h,p0)|0;var e0=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(e0>>>26)|0,e0&=67108863,y=Math.imul(I0,W0),w=Math.imul(I0,E0),w=w+Math.imul(O0,W0)|0,p=Math.imul(O0,E0),y=y+Math.imul(U0,D0)|0,w=w+Math.imul(U0,C0)|0,w=w+Math.imul(X0,D0)|0,p=p+Math.imul(X0,C0)|0,y=y+Math.imul(Z0,R0)|0,w=w+Math.imul(Z0,P0)|0,w=w+Math.imul(G0,R0)|0,p=p+Math.imul(G0,P0)|0,y=y+Math.imul($0,M0)|0,w=w+Math.imul($0,S0)|0,w=w+Math.imul(Q0,M0)|0,p=p+Math.imul(Q0,S0)|0,y=y+Math.imul(e,q0)|0,w=w+Math.imul(e,j0)|0,w=w+Math.imul(r,q0)|0,p=p+Math.imul(r,j0)|0,y=y+Math.imul(t,g0)|0,w=w+Math.imul(t,_0)|0,w=w+Math.imul(m,g0)|0,p=p+Math.imul(m,_0)|0,y=y+Math.imul(u,x0)|0,w=w+Math.imul(u,B0)|0,w=w+Math.imul(n,x0)|0,p=p+Math.imul(n,B0)|0,y=y+Math.imul(b,w0)|0,w=w+Math.imul(b,p0)|0,w=w+Math.imul(l,w0)|0,p=p+Math.imul(l,p0)|0,y=y+Math.imul(c,c0)|0,w=w+Math.imul(c,h0)|0,w=w+Math.imul(h,c0)|0,p=p+Math.imul(h,h0)|0;var r0=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(r0>>>26)|0,r0&=67108863,y=Math.imul(F0,W0),w=Math.imul(F0,E0),w=w+Math.imul(A0,W0)|0,p=Math.imul(A0,E0),y=y+Math.imul(I0,D0)|0,w=w+Math.imul(I0,C0)|0,w=w+Math.imul(O0,D0)|0,p=p+Math.imul(O0,C0)|0,y=y+Math.imul(U0,R0)|0,w=w+Math.imul(U0,P0)|0,w=w+Math.imul(X0,R0)|0,p=p+Math.imul(X0,P0)|0,y=y+Math.imul(Z0,M0)|0,w=w+Math.imul(Z0,S0)|0,w=w+Math.imul(G0,M0)|0,p=p+Math.imul(G0,S0)|0,y=y+Math.imul($0,q0)|0,w=w+Math.imul($0,j0)|0,w=w+Math.imul(Q0,q0)|0,p=p+Math.imul(Q0,j0)|0,y=y+Math.imul(e,g0)|0,w=w+Math.imul(e,_0)|0,w=w+Math.imul(r,g0)|0,p=p+Math.imul(r,_0)|0,y=y+Math.imul(t,x0)|0,w=w+Math.imul(t,B0)|0,w=w+Math.imul(m,x0)|0,p=p+Math.imul(m,B0)|0,y=y+Math.imul(u,w0)|0,w=w+Math.imul(u,p0)|0,w=w+Math.imul(n,w0)|0,p=p+Math.imul(n,p0)|0,y=y+Math.imul(b,c0)|0,w=w+Math.imul(b,h0)|0,w=w+Math.imul(l,c0)|0,p=p+Math.imul(l,h0)|0,y=y+Math.imul(c,b0)|0,w=w+Math.imul(c,l0)|0,w=w+Math.imul(h,b0)|0,p=p+Math.imul(h,l0)|0;var i0=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(i0>>>26)|0,i0&=67108863,y=Math.imul(F0,D0),w=Math.imul(F0,C0),w=w+Math.imul(A0,D0)|0,p=Math.imul(A0,C0),y=y+Math.imul(I0,R0)|0,w=w+Math.imul(I0,P0)|0,w=w+Math.imul(O0,R0)|0,p=p+Math.imul(O0,P0)|0,y=y+Math.imul(U0,M0)|0,w=w+Math.imul(U0,S0)|0,w=w+Math.imul(X0,M0)|0,p=p+Math.imul(X0,S0)|0,y=y+Math.imul(Z0,q0)|0,w=w+Math.imul(Z0,j0)|0,w=w+Math.imul(G0,q0)|0,p=p+Math.imul(G0,j0)|0,y=y+Math.imul($0,g0)|0,w=w+Math.imul($0,_0)|0,w=w+Math.imul(Q0,g0)|0,p=p+Math.imul(Q0,_0)|0,y=y+Math.imul(e,x0)|0,w=w+Math.imul(e,B0)|0,w=w+Math.imul(r,x0)|0,p=p+Math.imul(r,B0)|0,y=y+Math.imul(t,w0)|0,w=w+Math.imul(t,p0)|0,w=w+Math.imul(m,w0)|0,p=p+Math.imul(m,p0)|0,y=y+Math.imul(u,c0)|0,w=w+Math.imul(u,h0)|0,w=w+Math.imul(n,c0)|0,p=p+Math.imul(n,h0)|0,y=y+Math.imul(b,b0)|0,w=w+Math.imul(b,l0)|0,w=w+Math.imul(l,b0)|0,p=p+Math.imul(l,l0)|0;var $$=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+($$>>>26)|0,$$&=67108863,y=Math.imul(F0,R0),w=Math.imul(F0,P0),w=w+Math.imul(A0,R0)|0,p=Math.imul(A0,P0),y=y+Math.imul(I0,M0)|0,w=w+Math.imul(I0,S0)|0,w=w+Math.imul(O0,M0)|0,p=p+Math.imul(O0,S0)|0,y=y+Math.imul(U0,q0)|0,w=w+Math.imul(U0,j0)|0,w=w+Math.imul(X0,q0)|0,p=p+Math.imul(X0,j0)|0,y=y+Math.imul(Z0,g0)|0,w=w+Math.imul(Z0,_0)|0,w=w+Math.imul(G0,g0)|0,p=p+Math.imul(G0,_0)|0,y=y+Math.imul($0,x0)|0,w=w+Math.imul($0,B0)|0,w=w+Math.imul(Q0,x0)|0,p=p+Math.imul(Q0,B0)|0,y=y+Math.imul(e,w0)|0,w=w+Math.imul(e,p0)|0,w=w+Math.imul(r,w0)|0,p=p+Math.imul(r,p0)|0,y=y+Math.imul(t,c0)|0,w=w+Math.imul(t,h0)|0,w=w+Math.imul(m,c0)|0,p=p+Math.imul(m,h0)|0,y=y+Math.imul(u,b0)|0,w=w+Math.imul(u,l0)|0,w=w+Math.imul(n,b0)|0,p=p+Math.imul(n,l0)|0;var Q$=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(Q$>>>26)|0,Q$&=67108863,y=Math.imul(F0,M0),w=Math.imul(F0,S0),w=w+Math.imul(A0,M0)|0,p=Math.imul(A0,S0),y=y+Math.imul(I0,q0)|0,w=w+Math.imul(I0,j0)|0,w=w+Math.imul(O0,q0)|0,p=p+Math.imul(O0,j0)|0,y=y+Math.imul(U0,g0)|0,w=w+Math.imul(U0,_0)|0,w=w+Math.imul(X0,g0)|0,p=p+Math.imul(X0,_0)|0,y=y+Math.imul(Z0,x0)|0,w=w+Math.imul(Z0,B0)|0,w=w+Math.imul(G0,x0)|0,p=p+Math.imul(G0,B0)|0,y=y+Math.imul($0,w0)|0,w=w+Math.imul($0,p0)|0,w=w+Math.imul(Q0,w0)|0,p=p+Math.imul(Q0,p0)|0,y=y+Math.imul(e,c0)|0,w=w+Math.imul(e,h0)|0,w=w+Math.imul(r,c0)|0,p=p+Math.imul(r,h0)|0,y=y+Math.imul(t,b0)|0,w=w+Math.imul(t,l0)|0,w=w+Math.imul(m,b0)|0,p=p+Math.imul(m,l0)|0;var Y$=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(Y$>>>26)|0,Y$&=67108863,y=Math.imul(F0,q0),w=Math.imul(F0,j0),w=w+Math.imul(A0,q0)|0,p=Math.imul(A0,j0),y=y+Math.imul(I0,g0)|0,w=w+Math.imul(I0,_0)|0,w=w+Math.imul(O0,g0)|0,p=p+Math.imul(O0,_0)|0,y=y+Math.imul(U0,x0)|0,w=w+Math.imul(U0,B0)|0,w=w+Math.imul(X0,x0)|0,p=p+Math.imul(X0,B0)|0,y=y+Math.imul(Z0,w0)|0,w=w+Math.imul(Z0,p0)|0,w=w+Math.imul(G0,w0)|0,p=p+Math.imul(G0,p0)|0,y=y+Math.imul($0,c0)|0,w=w+Math.imul($0,h0)|0,w=w+Math.imul(Q0,c0)|0,p=p+Math.imul(Q0,h0)|0,y=y+Math.imul(e,b0)|0,w=w+Math.imul(e,l0)|0,w=w+Math.imul(r,b0)|0,p=p+Math.imul(r,l0)|0;var Z$=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(Z$>>>26)|0,Z$&=67108863,y=Math.imul(F0,g0),w=Math.imul(F0,_0),w=w+Math.imul(A0,g0)|0,p=Math.imul(A0,_0),y=y+Math.imul(I0,x0)|0,w=w+Math.imul(I0,B0)|0,w=w+Math.imul(O0,x0)|0,p=p+Math.imul(O0,B0)|0,y=y+Math.imul(U0,w0)|0,w=w+Math.imul(U0,p0)|0,w=w+Math.imul(X0,w0)|0,p=p+Math.imul(X0,p0)|0,y=y+Math.imul(Z0,c0)|0,w=w+Math.imul(Z0,h0)|0,w=w+Math.imul(G0,c0)|0,p=p+Math.imul(G0,h0)|0,y=y+Math.imul($0,b0)|0,w=w+Math.imul($0,l0)|0,w=w+Math.imul(Q0,b0)|0,p=p+Math.imul(Q0,l0)|0;var G$=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(G$>>>26)|0,G$&=67108863,y=Math.imul(F0,x0),w=Math.imul(F0,B0),w=w+Math.imul(A0,x0)|0,p=Math.imul(A0,B0),y=y+Math.imul(I0,w0)|0,w=w+Math.imul(I0,p0)|0,w=w+Math.imul(O0,w0)|0,p=p+Math.imul(O0,p0)|0,y=y+Math.imul(U0,c0)|0,w=w+Math.imul(U0,h0)|0,w=w+Math.imul(X0,c0)|0,p=p+Math.imul(X0,h0)|0,y=y+Math.imul(Z0,b0)|0,w=w+Math.imul(Z0,l0)|0,w=w+Math.imul(G0,b0)|0,p=p+Math.imul(G0,l0)|0;var V$=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(V$>>>26)|0,V$&=67108863,y=Math.imul(F0,w0),w=Math.imul(F0,p0),w=w+Math.imul(A0,w0)|0,p=Math.imul(A0,p0),y=y+Math.imul(I0,c0)|0,w=w+Math.imul(I0,h0)|0,w=w+Math.imul(O0,c0)|0,p=p+Math.imul(O0,h0)|0,y=y+Math.imul(U0,b0)|0,w=w+Math.imul(U0,l0)|0,w=w+Math.imul(X0,b0)|0,p=p+Math.imul(X0,l0)|0;var U$=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(U$>>>26)|0,U$&=67108863,y=Math.imul(F0,c0),w=Math.imul(F0,h0),w=w+Math.imul(A0,c0)|0,p=Math.imul(A0,h0),y=y+Math.imul(I0,b0)|0,w=w+Math.imul(I0,l0)|0,w=w+Math.imul(O0,b0)|0,p=p+Math.imul(O0,l0)|0;var X$=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(X$>>>26)|0,X$&=67108863,y=Math.imul(F0,b0),w=Math.imul(F0,l0),w=w+Math.imul(A0,b0)|0,p=Math.imul(A0,l0);var K$=(B+y|0)+((w&8191)<<13)|0;return B=(p+(w>>>13)|0)+(K$>>>26)|0,K$&=67108863,x[0]=o0,x[1]=u0,x[2]=n0,x[3]=s0,x[4]=t0,x[5]=m0,x[6]=a0,x[7]=e0,x[8]=r0,x[9]=i0,x[10]=$$,x[11]=Q$,x[12]=Y$,x[13]=Z$,x[14]=G$,x[15]=V$,x[16]=U$,x[17]=X$,x[18]=K$,B!==0&&(x[19]=B,g.length++),g};Math.imul||(E=W);function T(j,k,g){g.negative=k.negative^j.negative,g.length=j.length+k.length;for(var _=0,N=0,x=0;x<g.length-1;x++){var B=N;N=0;for(var y=_&67108863,w=Math.min(x,k.length-1),p=Math.max(0,x-j.length+1);p<=w;p++){var f=x-p,c=j.words[f]|0,h=k.words[p]|0,d=c*h,b=d&67108863;B=B+(d/67108864|0)|0,b=b+y|0,y=b&67108863,B=B+(b>>>26)|0,N+=B>>>26,B&=67108863}g.words[x]=y,_=B,B=N}return _!==0?g.words[x]=_:g.length--,g.strip()}function D(j,k,g){var _=new C;return _.mulp(j,k,g)}U.prototype.mulTo=function(j,k){var g,_=this.length+j.length;return this.length===10&&j.length===10?g=E(this,j,k):_<63?g=W(this,j,k):_<1024?g=T(this,j,k):g=D(this,j,k),g};function C(j,k){this.x=j,this.y=k}C.prototype.makeRBT=function(j){for(var k=new Array(j),g=U.prototype._countBits(j)-1,_=0;_<j;_++)k[_]=this.revBin(_,g,j);return k},C.prototype.revBin=function(j,k,g){if(j===0||j===g-1)return j;for(var _=0,N=0;N<k;N++)_|=(j&1)<<k-N-1,j>>=1;return _},C.prototype.permute=function(j,k,g,_,N,x){for(var B=0;B<x;B++)_[B]=k[j[B]],N[B]=g[j[B]]},C.prototype.transform=function(j,k,g,_,N,x){this.permute(x,j,k,g,_,N);for(var B=1;B<N;B<<=1)for(var y=B<<1,w=Math.cos(2*Math.PI/y),p=Math.sin(2*Math.PI/y),f=0;f<N;f+=y)for(var c=w,h=p,d=0;d<B;d++){var b=g[f+d],l=_[f+d],o=g[f+d+B],u=_[f+d+B],n=c*o-h*u;u=c*u+h*o,o=n,g[f+d]=b+o,_[f+d]=l+u,g[f+d+B]=b-o,_[f+d+B]=l-u,d!==y&&(n=w*c-p*h,h=w*h+p*c,c=n)}},C.prototype.guessLen13b=function(j,k){var g=Math.max(k,j)|1,_=g&1,N=0;for(g=g/2|0;g;g=g>>>1)N++;return 1<<N+1+_},C.prototype.conjugate=function(j,k,g){if(!(g<=1))for(var _=0;_<g/2;_++){var N=j[_];j[_]=j[g-_-1],j[g-_-1]=N,N=k[_],k[_]=-k[g-_-1],k[g-_-1]=-N}},C.prototype.normalize13b=function(j,k){for(var g=0,_=0;_<k/2;_++){var N=Math.round(j[2*_+1]/k)*8192+Math.round(j[2*_]/k)+g;j[_]=N&67108863,N<67108864?g=0:g=N/67108864|0}return j},C.prototype.convert13b=function(j,k,g,_){for(var N=0,x=0;x<k;x++)N=N+(j[x]|0),g[2*x]=N&8191,N=N>>>13,g[2*x+1]=N&8191,N=N>>>13;for(x=2*k;x<_;++x)g[x]=0;G(N===0),G((N&-8192)===0)},C.prototype.stub=function(j){for(var k=new Array(j),g=0;g<j;g++)k[g]=0;return k},C.prototype.mulp=function(j,k,g){var _=2*this.guessLen13b(j.length,k.length),N=this.makeRBT(_),x=this.stub(_),B=new Array(_),y=new Array(_),w=new Array(_),p=new Array(_),f=new Array(_),c=new Array(_),h=g.words;h.length=_,this.convert13b(j.words,j.length,B,_),this.convert13b(k.words,k.length,p,_),this.transform(B,x,y,w,_,N),this.transform(p,x,f,c,_,N);for(var d=0;d<_;d++){var b=y[d]*f[d]-w[d]*c[d];w[d]=y[d]*c[d]+w[d]*f[d],y[d]=b}return this.conjugate(y,w,_),this.transform(y,w,h,x,_,N),this.conjugate(h,x,_),this.normalize13b(h,_),g.negative=j.negative^k.negative,g.length=j.length+k.length,g.strip()},U.prototype.mul=function(j){var k=new U(null);return k.words=new Array(this.length+j.length),this.mulTo(j,k)},U.prototype.mulf=function(j){var k=new U(null);return k.words=new Array(this.length+j.length),D(this,j,k)},U.prototype.imul=function(j){return this.clone().mulTo(j,this)},U.prototype.imuln=function(j){G(typeof j=="number"),G(j<67108864);for(var k=0,g=0;g<this.length;g++){var _=(this.words[g]|0)*j,N=(_&67108863)+(k&67108863);k>>=26,k+=_/67108864|0,k+=N>>>26,this.words[g]=N&67108863}return k!==0&&(this.words[g]=k,this.length++),this},U.prototype.muln=function(j){return this.clone().imuln(j)},U.prototype.sqr=function(){return this.mul(this)},U.prototype.isqr=function(){return this.imul(this.clone())},U.prototype.pow=function(j){var k=H(j);if(k.length===0)return new U(1);for(var g=this,_=0;_<k.length&&k[_]===0;_++,g=g.sqr());if(++_<k.length)for(var N=g.sqr();_<k.length;_++,N=N.sqr())k[_]!==0&&(g=g.mul(N));return g},U.prototype.iushln=function(j){G(typeof j=="number"&&j>=0);var k=j%26,g=(j-k)/26,_=67108863>>>26-k<<26-k,N;if(k!==0){var x=0;for(N=0;N<this.length;N++){var B=this.words[N]&_,y=(this.words[N]|0)-B<<k;this.words[N]=y|x,x=B>>>26-k}x&&(this.words[N]=x,this.length++)}if(g!==0){for(N=this.length-1;N>=0;N--)this.words[N+g]=this.words[N];for(N=0;N<g;N++)this.words[N]=0;this.length+=g}return this.strip()},U.prototype.ishln=function(j){return G(this.negative===0),this.iushln(j)},U.prototype.iushrn=function(j,k,g){G(typeof j=="number"&&j>=0);var _;k?_=(k-k%26)/26:_=0;var N=j%26,x=Math.min((j-N)/26,this.length),B=67108863^67108863>>>N<<N,y=g;if(_-=x,_=Math.max(0,_),y){for(var w=0;w<x;w++)y.words[w]=this.words[w];y.length=x}if(x!==0)if(this.length>x)for(this.length-=x,w=0;w<this.length;w++)this.words[w]=this.words[w+x];else this.words[0]=0,this.length=1;var p=0;for(w=this.length-1;w>=0&&(p!==0||w>=_);w--){var f=this.words[w]|0;this.words[w]=p<<26-N|f>>>N,p=f&B}return y&&p!==0&&(y.words[y.length++]=p),this.length===0&&(this.words[0]=0,this.length=1),this.strip()},U.prototype.ishrn=function(j,k,g){return G(this.negative===0),this.iushrn(j,k,g)},U.prototype.shln=function(j){return this.clone().ishln(j)},U.prototype.ushln=function(j){return this.clone().iushln(j)},U.prototype.shrn=function(j){return this.clone().ishrn(j)},U.prototype.ushrn=function(j){return this.clone().iushrn(j)},U.prototype.testn=function(j){G(typeof j=="number"&&j>=0);var k=j%26,g=(j-k)/26,_=1<<k;if(this.length<=g)return!1;var N=this.words[g];return!!(N&_)},U.prototype.imaskn=function(j){G(typeof j=="number"&&j>=0);var k=j%26,g=(j-k)/26;if(G(this.negative===0,"imaskn works only with positive numbers"),this.length<=g)return this;if(k!==0&&g++,this.length=Math.min(g,this.length),k!==0){var _=67108863^67108863>>>k<<k;this.words[this.length-1]&=_}return this.strip()},U.prototype.maskn=function(j){return this.clone().imaskn(j)},U.prototype.iaddn=function(j){return G(typeof j=="number"),G(j<67108864),j<0?this.isubn(-j):this.negative!==0?this.length===1&&(this.words[0]|0)<j?(this.words[0]=j-(this.words[0]|0),this.negative=0,this):(this.negative=0,this.isubn(j),this.negative=1,this):this._iaddn(j)},U.prototype._iaddn=function(j){this.words[0]+=j;for(var k=0;k<this.length&&this.words[k]>=67108864;k++)this.words[k]-=67108864,k===this.length-1?this.words[k+1]=1:this.words[k+1]++;return this.length=Math.max(this.length,k+1),this},U.prototype.isubn=function(j){if(G(typeof j=="number"),G(j<67108864),j<0)return this.iaddn(-j);if(this.negative!==0)return this.negative=0,this.iaddn(j),this.negative=1,this;if(this.words[0]-=j,this.length===1&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var k=0;k<this.length&&this.words[k]<0;k++)this.words[k]+=67108864,this.words[k+1]-=1;return this.strip()},U.prototype.addn=function(j){return this.clone().iaddn(j)},U.prototype.subn=function(j){return this.clone().isubn(j)},U.prototype.iabs=function(){return this.negative=0,this},U.prototype.abs=function(){return this.clone().iabs()},U.prototype._ishlnsubmul=function(j,k,g){var _=j.length+g,N;this._expand(_);var x,B=0;for(N=0;N<j.length;N++){x=(this.words[N+g]|0)+B;var y=(j.words[N]|0)*k;x-=y&67108863,B=(x>>26)-(y/67108864|0),this.words[N+g]=x&67108863}for(;N<this.length-g;N++)x=(this.words[N+g]|0)+B,B=x>>26,this.words[N+g]=x&67108863;if(B===0)return this.strip();for(G(B===-1),B=0,N=0;N<this.length;N++)x=-(this.words[N]|0)+B,B=x>>26,this.words[N]=x&67108863;return this.negative=1,this.strip()},U.prototype._wordDiv=function(j,k){var g=this.length-j.length,_=this.clone(),N=j,x=N.words[N.length-1]|0,B=this._countBits(x);g=26-B,g!==0&&(N=N.ushln(g),_.iushln(g),x=N.words[N.length-1]|0);var y=_.length-N.length,w;if(k!=="mod"){w=new U(null),w.length=y+1,w.words=new Array(w.length);for(var p=0;p<w.length;p++)w.words[p]=0}var f=_.clone()._ishlnsubmul(N,1,y);f.negative===0&&(_=f,w&&(w.words[y]=1));for(var c=y-1;c>=0;c--){var h=(_.words[N.length+c]|0)*67108864+(_.words[N.length+c-1]|0);for(h=Math.min(h/x|0,67108863),_._ishlnsubmul(N,h,c);_.negative!==0;)h--,_.negative=0,_._ishlnsubmul(N,1,c),_.isZero()||(_.negative^=1);w&&(w.words[c]=h)}return w&&w.strip(),_.strip(),k!=="div"&&g!==0&&_.iushrn(g),{div:w||null,mod:_}},U.prototype.divmod=function(j,k,g){if(G(!j.isZero()),this.isZero())return{div:new U(0),mod:new U(0)};var _,N,x;return this.negative!==0&&j.negative===0?(x=this.neg().divmod(j,k),k!=="mod"&&(_=x.div.neg()),k!=="div"&&(N=x.mod.neg(),g&&N.negative!==0&&N.iadd(j)),{div:_,mod:N}):this.negative===0&&j.negative!==0?(x=this.divmod(j.neg(),k),k!=="mod"&&(_=x.div.neg()),{div:_,mod:x.mod}):(this.negative&j.negative)!==0?(x=this.neg().divmod(j.neg(),k),k!=="div"&&(N=x.mod.neg(),g&&N.negative!==0&&N.isub(j)),{div:x.div,mod:N}):j.length>this.length||this.cmp(j)<0?{div:new U(0),mod:this}:j.length===1?k==="div"?{div:this.divn(j.words[0]),mod:null}:k==="mod"?{div:null,mod:new U(this.modn(j.words[0]))}:{div:this.divn(j.words[0]),mod:new U(this.modn(j.words[0]))}:this._wordDiv(j,k)},U.prototype.div=function(j){return this.divmod(j,"div",!1).div},U.prototype.mod=function(j){return this.divmod(j,"mod",!1).mod},U.prototype.umod=function(j){return this.divmod(j,"mod",!0).mod},U.prototype.divRound=function(j){var k=this.divmod(j);if(k.mod.isZero())return k.div;var g=k.div.negative!==0?k.mod.isub(j):k.mod,_=j.ushrn(1),N=j.andln(1),x=g.cmp(_);return x<0||N===1&&x===0?k.div:k.div.negative!==0?k.div.isubn(1):k.div.iaddn(1)},U.prototype.modn=function(j){G(j<=67108863);for(var k=(1<<26)%j,g=0,_=this.length-1;_>=0;_--)g=(k*g+(this.words[_]|0))%j;return g},U.prototype.idivn=function(j){G(j<=67108863);for(var k=0,g=this.length-1;g>=0;g--){var _=(this.words[g]|0)+k*67108864;this.words[g]=_/j|0,k=_%j}return this.strip()},U.prototype.divn=function(j){return this.clone().idivn(j)},U.prototype.egcd=function(j){G(j.negative===0),G(!j.isZero());var k=this,g=j.clone();k.negative!==0?k=k.umod(j):k=k.clone();for(var _=new U(1),N=new U(0),x=new U(0),B=new U(1),y=0;k.isEven()&&g.isEven();)k.iushrn(1),g.iushrn(1),++y;for(var w=g.clone(),p=k.clone();!k.isZero();){for(var f=0,c=1;(k.words[0]&c)===0&&f<26;++f,c<<=1);if(f>0)for(k.iushrn(f);f-- >0;)(_.isOdd()||N.isOdd())&&(_.iadd(w),N.isub(p)),_.iushrn(1),N.iushrn(1);for(var h=0,d=1;(g.words[0]&d)===0&&h<26;++h,d<<=1);if(h>0)for(g.iushrn(h);h-- >0;)(x.isOdd()||B.isOdd())&&(x.iadd(w),B.isub(p)),x.iushrn(1),B.iushrn(1);k.cmp(g)>=0?(k.isub(g),_.isub(x),N.isub(B)):(g.isub(k),x.isub(_),B.isub(N))}return{a:x,b:B,gcd:g.iushln(y)}},U.prototype._invmp=function(j){G(j.negative===0),G(!j.isZero());var k=this,g=j.clone();k.negative!==0?k=k.umod(j):k=k.clone();for(var _=new U(1),N=new U(0),x=g.clone();k.cmpn(1)>0&&g.cmpn(1)>0;){for(var B=0,y=1;(k.words[0]&y)===0&&B<26;++B,y<<=1);if(B>0)for(k.iushrn(B);B-- >0;)_.isOdd()&&_.iadd(x),_.iushrn(1);for(var w=0,p=1;(g.words[0]&p)===0&&w<26;++w,p<<=1);if(w>0)for(g.iushrn(w);w-- >0;)N.isOdd()&&N.iadd(x),N.iushrn(1);k.cmp(g)>=0?(k.isub(g),_.isub(N)):(g.isub(k),N.isub(_))}var f;return k.cmpn(1)===0?f=_:f=N,f.cmpn(0)<0&&f.iadd(j),f},U.prototype.gcd=function(j){if(this.isZero())return j.abs();if(j.isZero())return this.abs();var k=this.clone(),g=j.clone();k.negative=0,g.negative=0;for(var _=0;k.isEven()&&g.isEven();_++)k.iushrn(1),g.iushrn(1);do{for(;k.isEven();)k.iushrn(1);for(;g.isEven();)g.iushrn(1);var N=k.cmp(g);if(N<0){var x=k;k=g,g=x}else if(N===0||g.cmpn(1)===0)break;k.isub(g)}while(!0);return g.iushln(_)},U.prototype.invm=function(j){return this.egcd(j).a.umod(j)},U.prototype.isEven=function(){return(this.words[0]&1)===0},U.prototype.isOdd=function(){return(this.words[0]&1)===1},U.prototype.andln=function(j){return this.words[0]&j},U.prototype.bincn=function(j){G(typeof j=="number");var k=j%26,g=(j-k)/26,_=1<<k;if(this.length<=g)return this._expand(g+1),this.words[g]|=_,this;for(var N=_,x=g;N!==0&&x<this.length;x++){var B=this.words[x]|0;B+=N,N=B>>>26,B&=67108863,this.words[x]=B}return N!==0&&(this.words[x]=N,this.length++),this},U.prototype.isZero=function(){return this.length===1&&this.words[0]===0},U.prototype.cmpn=function(j){var k=j<0;if(this.negative!==0&&!k)return-1;if(this.negative===0&&k)return 1;this.strip();var g;if(this.length>1)g=1;else{k&&(j=-j),G(j<=67108863,"Number is too big");var _=this.words[0]|0;g=_===j?0:_<j?-1:1}return this.negative!==0?-g|0:g},U.prototype.cmp=function(j){if(this.negative!==0&&j.negative===0)return-1;if(this.negative===0&&j.negative!==0)return 1;var k=this.ucmp(j);return this.negative!==0?-k|0:k},U.prototype.ucmp=function(j){if(this.length>j.length)return 1;if(this.length<j.length)return-1;for(var k=0,g=this.length-1;g>=0;g--){var _=this.words[g]|0,N=j.words[g]|0;if(_!==N){_<N?k=-1:_>N&&(k=1);break}}return k},U.prototype.gtn=function(j){return this.cmpn(j)===1},U.prototype.gt=function(j){return this.cmp(j)===1},U.prototype.gten=function(j){return this.cmpn(j)>=0},U.prototype.gte=function(j){return this.cmp(j)>=0},U.prototype.ltn=function(j){return this.cmpn(j)===-1},U.prototype.lt=function(j){return this.cmp(j)===-1},U.prototype.lten=function(j){return this.cmpn(j)<=0},U.prototype.lte=function(j){return this.cmp(j)<=0},U.prototype.eqn=function(j){return this.cmpn(j)===0},U.prototype.eq=function(j){return this.cmp(j)===0},U.red=function(j){return new v(j)},U.prototype.toRed=function(j){return G(!this.red,"Already a number in reduction context"),G(this.negative===0,"red works only with positives"),j.convertTo(this)._forceRed(j)},U.prototype.fromRed=function(){return G(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},U.prototype._forceRed=function(j){return this.red=j,this},U.prototype.forceRed=function(j){return G(!this.red,"Already a number in reduction context"),this._forceRed(j)},U.prototype.redAdd=function(j){return G(this.red,"redAdd works only with red numbers"),this.red.add(this,j)},U.prototype.redIAdd=function(j){return G(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,j)},U.prototype.redSub=function(j){return G(this.red,"redSub works only with red numbers"),this.red.sub(this,j)},U.prototype.redISub=function(j){return G(this.red,"redISub works only with red numbers"),this.red.isub(this,j)},U.prototype.redShl=function(j){return G(this.red,"redShl works only with red numbers"),this.red.shl(this,j)},U.prototype.redMul=function(j){return G(this.red,"redMul works only with red numbers"),this.red._verify2(this,j),this.red.mul(this,j)},U.prototype.redIMul=function(j){return G(this.red,"redMul works only with red numbers"),this.red._verify2(this,j),this.red.imul(this,j)},U.prototype.redSqr=function(){return G(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},U.prototype.redISqr=function(){return G(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},U.prototype.redSqrt=function(){return G(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},U.prototype.redInvm=function(){return G(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},U.prototype.redNeg=function(){return G(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},U.prototype.redPow=function(j){return G(this.red&&!j.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,j)};var L={k256:null,p224:null,p192:null,p25519:null};function R(j,k){this.name=j,this.p=new U(k,16),this.n=this.p.bitLength(),this.k=new U(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}R.prototype._tmp=function(){var j=new U(null);return j.words=new Array(Math.ceil(this.n/13)),j},R.prototype.ireduce=function(j){var k=j,g;do this.split(k,this.tmp),k=this.imulK(k),k=k.iadd(this.tmp),g=k.bitLength();while(g>this.n);var _=g<this.n?-1:k.ucmp(this.p);return _===0?(k.words[0]=0,k.length=1):_>0?k.isub(this.p):k.strip!==void 0?k.strip():k._strip(),k},R.prototype.split=function(j,k){j.iushrn(this.n,0,k)},R.prototype.imulK=function(j){return j.imul(this.k)};function P(){R.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}V(P,R),P.prototype.split=function(j,k){for(var g=4194303,_=Math.min(j.length,9),N=0;N<_;N++)k.words[N]=j.words[N];if(k.length=_,j.length<=9){j.words[0]=0,j.length=1;return}var x=j.words[9];for(k.words[k.length++]=x&g,N=10;N<j.length;N++){var B=j.words[N]|0;j.words[N-10]=(B&g)<<4|x>>>22,x=B}x>>>=22,j.words[N-10]=x,x===0&&j.length>10?j.length-=10:j.length-=9},P.prototype.imulK=function(j){j.words[j.length]=0,j.words[j.length+1]=0,j.length+=2;for(var k=0,g=0;g<j.length;g++){var _=j.words[g]|0;k+=_*977,j.words[g]=k&67108863,k=_*64+(k/67108864|0)}return j.words[j.length-1]===0&&(j.length--,j.words[j.length-1]===0&&j.length--),j};function z(){R.call(this,"p224","ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001")}V(z,R);function M(){R.call(this,"p192","ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff")}V(M,R);function S(){R.call(this,"25519","7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed")}V(S,R),S.prototype.imulK=function(j){for(var k=0,g=0;g<j.length;g++){var _=(j.words[g]|0)*19+k,N=_&67108863;_>>>=26,j.words[g]=N,k=_}return k!==0&&(j.words[j.length++]=k),j},U._prime=function(j){if(L[j])return L[j];var k;if(j==="k256")k=new P;else if(j==="p224")k=new z;else if(j==="p192")k=new M;else if(j==="p25519")k=new S;else throw new Error("Unknown prime "+j);return L[j]=k,k};function v(j){if(typeof j=="string"){var k=U._prime(j);this.m=k.p,this.prime=k}else G(j.gtn(1),"modulus must be greater than 1"),this.m=j,this.prime=null}v.prototype._verify1=function(j){G(j.negative===0,"red works only with positives"),G(j.red,"red works only with red numbers")},v.prototype._verify2=function(j,k){G((j.negative|k.negative)===0,"red works only with positives"),G(j.red&&j.red===k.red,"red works only with red numbers")},v.prototype.imod=function(j){return this.prime?this.prime.ireduce(j)._forceRed(this):j.umod(this.m)._forceRed(this)},v.prototype.neg=function(j){return j.isZero()?j.clone():this.m.sub(j)._forceRed(this)},v.prototype.add=function(j,k){this._verify2(j,k);var g=j.add(k);return g.cmp(this.m)>=0&&g.isub(this.m),g._forceRed(this)},v.prototype.iadd=function(j,k){this._verify2(j,k);var g=j.iadd(k);return g.cmp(this.m)>=0&&g.isub(this.m),g},v.prototype.sub=function(j,k){this._verify2(j,k);var g=j.sub(k);return g.cmpn(0)<0&&g.iadd(this.m),g._forceRed(this)},v.prototype.isub=function(j,k){this._verify2(j,k);var g=j.isub(k);return g.cmpn(0)<0&&g.iadd(this.m),g},v.prototype.shl=function(j,k){return this._verify1(j),this.imod(j.ushln(k))},v.prototype.imul=function(j,k){return this._verify2(j,k),this.imod(j.imul(k))},v.prototype.mul=function(j,k){return this._verify2(j,k),this.imod(j.mul(k))},v.prototype.isqr=function(j){return this.imul(j,j.clone())},v.prototype.sqr=function(j){return this.mul(j,j)},v.prototype.sqrt=function(j){if(j.isZero())return j.clone();var k=this.m.andln(3);if(G(k%2===1),k===3){var g=this.m.add(new U(1)).iushrn(2);return this.pow(j,g)}for(var _=this.m.subn(1),N=0;!_.isZero()&&_.andln(1)===0;)N++,_.iushrn(1);G(!_.isZero());var x=new U(1).toRed(this),B=x.redNeg(),y=this.m.subn(1).iushrn(1),w=this.m.bitLength();for(w=new U(2*w*w).toRed(this);this.pow(w,y).cmp(B)!==0;)w.redIAdd(B);for(var p=this.pow(w,_),f=this.pow(j,_.addn(1).iushrn(1)),c=this.pow(j,_),h=N;c.cmp(x)!==0;){for(var d=c,b=0;d.cmp(x)!==0;b++)d=d.redSqr();G(b<h);var l=this.pow(p,new U(1).iushln(h-b-1));f=f.redMul(l),p=l.redSqr(),c=c.redMul(p),h=b}return f},v.prototype.invm=function(j){var k=j._invmp(this.m);return k.negative!==0?(k.negative=0,this.imod(k).redNeg()):this.imod(k)},v.prototype.pow=function(j,k){if(k.isZero())return new U(1).toRed(this);if(k.cmpn(1)===0)return j.clone();var g=4,_=new Array(1<<g);_[0]=new U(1).toRed(this),_[1]=j;for(var N=2;N<_.length;N++)_[N]=this.mul(_[N-1],j);var x=_[0],B=0,y=0,w=k.bitLength()%26;for(w===0&&(w=26),N=k.length-1;N>=0;N--){for(var p=k.words[N],f=w-1;f>=0;f--){var c=p>>f&1;if(x!==_[0]&&(x=this.sqr(x)),c===0&&B===0){y=0;continue}B<<=1,B|=c,y++,!(y!==g&&(N!==0||f!==0))&&(x=this.mul(x,_[B]),y=0,B=0)}w=26}return x},v.prototype.convertTo=function(j){var k=j.umod(this.m);return k===j?k.clone():k},v.prototype.convertFrom=function(j){var k=j.clone();return k.red=null,k},U.mont=function(j){return new q(j)};function q(j){v.call(this,j),this.shift=this.m.bitLength(),this.shift%26!==0&&(this.shift+=26-this.shift%26),this.r=new U(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)}V(q,v),q.prototype.convertTo=function(j){return this.imod(j.ushln(this.shift))},q.prototype.convertFrom=function(j){var k=this.imod(j.mul(this.rinv));return k.red=null,k},q.prototype.imul=function(j,k){if(j.isZero()||k.isZero())return j.words[0]=0,j.length=1,j;var g=j.imul(k),_=g.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),N=g.isub(_).iushrn(this.shift),x=N;return N.cmp(this.m)>=0?x=N.isub(this.m):N.cmpn(0)<0&&(x=N.iadd(this.m)),x._forceRed(this)},q.prototype.mul=function(j,k){if(j.isZero()||k.isZero())return new U(0)._forceRed(this);var g=j.mul(k),_=g.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),N=g.isub(_).iushrn(this.shift),x=N;return N.cmp(this.m)>=0?x=N.isub(this.m):N.cmpn(0)<0&&(x=N.iadd(this.m)),x._forceRed(this)},q.prototype.invm=function(j){var k=this.imod(j._invmp(this.m).mul(this.r2));return k._forceRed(this)}})(typeof Q>"u"||Q,$)}}),NQ=q$({"(disabled):node_modules/crypto-browserify/index.js"(){}}),xQ=q$({"node_modules/brorand/index.js"($,Q){var Y;Q.exports=function(G){return Y||(Y=new Z(null)),Y.generate(G)};function Z(G){this.rand=G}Q.exports.Rand=Z,Z.prototype.generate=function(G){return this._rand(G)},Z.prototype._rand=function(G){var V=new F$(G);return H$.getRandomValues(V),V}}}),BQ=q$({"node_modules/miller-rabin/lib/mr.js"($,Q){var Y=_Q(),Z=xQ();function G(V){this.rand=V||new Z.Rand}Q.exports=G,G.create=function(V){return new G(V)},G.prototype._randbelow=function(V){var U=V.bitLength(),X=Math.ceil(U/8);do var K=new Y(this.rand.generate(X));while(K.cmp(V)>=0);return K},G.prototype._randrange=function(V,U){var X=U.sub(V);return V.add(this._randbelow(X))},G.prototype.test=function(V,U,X){var K=V.bitLength(),I=Y.mont(V),O=new Y(1).toRed(I);U||(U=Math.max(1,K/48|0));for(var J=V.subn(1),F=0;!J.testn(F);F++);for(var A=V.shrn(F),H=J.toRed(I),W=!0;U>0;U--){var E=this._randrange(new Y(2),J);X&&X(E);var T=E.toRed(I).redPow(A);if(!(T.cmp(O)===0||T.cmp(H)===0)){for(var D=1;D<F;D++){if(T=T.redSqr(),T.cmp(O)===0)return!1;if(T.cmp(H)===0)break}if(D===F)return!1}}return W},G.prototype.getDivisor=function(V,U){var X=V.bitLength(),K=Y.mont(V),I=new Y(1).toRed(K);U||(U=Math.max(1,X/48|0));for(var O=V.subn(1),J=0;!O.testn(J);J++);for(var F=V.shrn(J),A=O.toRed(K);U>0;U--){var H=this._randrange(new Y(2),O),W=V.gcd(H);if(W.cmpn(1)!==0)return W;var E=H.toRed(K).redPow(F);if(!(E.cmp(I)===0||E.cmp(A)===0)){for(var T=1;T<J;T++){if(E=E.redSqr(),E.cmp(I)===0)return E.fromRed().subn(1).gcd(V);if(E.cmp(A)===0)break}if(T===J)return E=E.redSqr(),E.fromRed().subn(1).gcd(V)}}return!1}}}),yQ=q$({"node_modules/diffie-hellman/lib/generatePrime.js"($,Q){var Y=g$();Q.exports=P,P.simpleSieve=L,P.fermatTest=R;var Z=gQ(),G=new Z(24),V=BQ(),U=new V,X=new Z(1),K=new Z(2),I=new Z(5),O=new Z(16),J=new Z(8),F=new Z(10),A=new Z(3),H=new Z(7),W=new Z(11),E=new Z(4),T=new Z(12),D=null;function C(){if(D!==null)return D;var z=1048576,M=[];M[0]=2;for(var S=1,v=3;v<z;v+=2){for(var q=Math.ceil(Math.sqrt(v)),j=0;j<S&&M[j]<=q&&v%M[j]!==0;j++);S!==j&&M[j]<=q||(M[S++]=v)}return D=M,M}function L(z){for(var M=C(),S=0;S<M.length;S++)if(z.modn(M[S])===0)return z.cmpn(M[S])===0;return!0}function R(z){var M=Z.mont(z);return K.toRed(M).redPow(z.subn(1)).fromRed().cmpn(1)===0}function P(z,M){if(z<16)return M===2||M===5?new Z([140,123]):new Z([140,39]);M=new Z(M);for(var S,v;;){for(S=new Z(Y(Math.ceil(z/8)));S.bitLength()>z;)S.ishrn(1);if(S.isEven()&&S.iadd(X),S.testn(1)||S.iadd(K),M.cmp(K)){if(!M.cmp(I))for(;S.mod(F).cmp(A);)S.iadd(E)}else for(;S.mod(G).cmp(W);)S.iadd(E);if(v=S.shrn(1),L(v)&&L(S)&&R(v)&&R(S)&&U.test(v)&&U.test(S))return S}}}}),wQ=q$({"node_modules/diffie-hellman/lib/primes.json"($,Q){Q.exports={modp1:{gen:"02",prime:"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a63a3620ffffffffffffffff"},modp2:{gen:"02",prime:"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece65381ffffffffffffffff"},modp5:{gen:"02",prime:"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca237327ffffffffffffffff"},modp14:{gen:"02",prime:"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca18217c32905e462e36ce3be39e772c180e86039b2783a2ec07a28fb5c55df06f4c52c9de2bcbf6955817183995497cea956ae515d2261898fa051015728e5a8aacaa68ffffffffffffffff"},modp15:{gen:"02",prime:"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca18217c32905e462e36ce3be39e772c180e86039b2783a2ec07a28fb5c55df06f4c52c9de2bcbf6955817183995497cea956ae515d2261898fa051015728e5a8aaac42dad33170d04507a33a85521abdf1cba64ecfb850458dbef0a8aea71575d060c7db3970f85a6e1e4c7abf5ae8cdb0933d71e8c94e04a25619dcee3d2261ad2ee6bf12ffa06d98a0864d87602733ec86a64521f2b18177b200cbbe117577a615d6c770988c0bad946e208e24fa074e5ab3143db5bfce0fd108e4b82d120a93ad2caffffffffffffffff"},modp16:{gen:"02",prime:"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca18217c32905e462e36ce3be39e772c180e86039b2783a2ec07a28fb5c55df06f4c52c9de2bcbf6955817183995497cea956ae515d2261898fa051015728e5a8aaac42dad33170d04507a33a85521abdf1cba64ecfb850458dbef0a8aea71575d060c7db3970f85a6e1e4c7abf5ae8cdb0933d71e8c94e04a25619dcee3d2261ad2ee6bf12ffa06d98a0864d87602733ec86a64521f2b18177b200cbbe117577a615d6c770988c0bad946e208e24fa074e5ab3143db5bfce0fd108e4b82d120a92108011a723c12a787e6d788719a10bdba5b2699c327186af4e23c1a946834b6150bda2583e9ca2ad44ce8dbbbc2db04de8ef92e8efc141fbecaa6287c59474e6bc05d99b2964fa090c3a2233ba186515be7ed1f612970cee2d7afb81bdd762170481cd0069127d5b05aa993b4ea988d8fddc186ffb7dc90a6c08f4df435c934063199ffffffffffffffff"},modp17:{gen:"02",prime:"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca18217c32905e462e36ce3be39e772c180e86039b2783a2ec07a28fb5c55df06f4c52c9de2bcbf6955817183995497cea956ae515d2261898fa051015728e5a8aaac42dad33170d04507a33a85521abdf1cba64ecfb850458dbef0a8aea71575d060c7db3970f85a6e1e4c7abf5ae8cdb0933d71e8c94e04a25619dcee3d2261ad2ee6bf12ffa06d98a0864d87602733ec86a64521f2b18177b200cbbe117577a615d6c770988c0bad946e208e24fa074e5ab3143db5bfce0fd108e4b82d120a92108011a723c12a787e6d788719a10bdba5b2699c327186af4e23c1a946834b6150bda2583e9ca2ad44ce8dbbbc2db04de8ef92e8efc141fbecaa6287c59474e6bc05d99b2964fa090c3a2233ba186515be7ed1f612970cee2d7afb81bdd762170481cd0069127d5b05aa993b4ea988d8fddc186ffb7dc90a6c08f4df435c93402849236c3fab4d27c7026c1d4dcb2602646dec9751e763dba37bdf8ff9406ad9e530ee5db382f413001aeb06a53ed9027d831179727b0865a8918da3edbebcf9b14ed44ce6cbaced4bb1bdb7f1447e6cc254b332051512bd7af426fb8f401378cd2bf5983ca01c64b92ecf032ea15d1721d03f482d7ce6e74fef6d55e702f46980c82b5a84031900b1c9e59e7c97fbec7e8f323a97a7e36cc88be0f1d45b7ff585ac54bd407b22b4154aacc8f6d7ebf48e1d814cc5ed20f8037e0a79715eef29be32806a1d58bb7c5da76f550aa3d8a1fbff0eb19ccb1a313d55cda56c9ec2ef29632387fe8d76e3c0468043e8f663f4860ee12bf2d5b0b7474d6e694f91e6dcc4024ffffffffffffffff"},modp18:{gen:"02",prime:"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca18217c32905e462e36ce3be39e772c180e86039b2783a2ec07a28fb5c55df06f4c52c9de2bcbf6955817183995497cea956ae515d2261898fa051015728e5a8aaac42dad33170d04507a33a85521abdf1cba64ecfb850458dbef0a8aea71575d060c7db3970f85a6e1e4c7abf5ae8cdb0933d71e8c94e04a25619dcee3d2261ad2ee6bf12ffa06d98a0864d87602733ec86a64521f2b18177b200cbbe117577a615d6c770988c0bad946e208e24fa074e5ab3143db5bfce0fd108e4b82d120a92108011a723c12a787e6d788719a10bdba5b2699c327186af4e23c1a946834b6150bda2583e9ca2ad44ce8dbbbc2db04de8ef92e8efc141fbecaa6287c59474e6bc05d99b2964fa090c3a2233ba186515be7ed1f612970cee2d7afb81bdd762170481cd0069127d5b05aa993b4ea988d8fddc186ffb7dc90a6c08f4df435c93402849236c3fab4d27c7026c1d4dcb2602646dec9751e763dba37bdf8ff9406ad9e530ee5db382f413001aeb06a53ed9027d831179727b0865a8918da3edbebcf9b14ed44ce6cbaced4bb1bdb7f1447e6cc254b332051512bd7af426fb8f401378cd2bf5983ca01c64b92ecf032ea15d1721d03f482d7ce6e74fef6d55e702f46980c82b5a84031900b1c9e59e7c97fbec7e8f323a97a7e36cc88be0f1d45b7ff585ac54bd407b22b4154aacc8f6d7ebf48e1d814cc5ed20f8037e0a79715eef29be32806a1d58bb7c5da76f550aa3d8a1fbff0eb19ccb1a313d55cda56c9ec2ef29632387fe8d76e3c0468043e8f663f4860ee12bf2d5b0b7474d6e694f91e6dbe115974a3926f12fee5e438777cb6a932df8cd8bec4d073b931ba3bc832b68d9dd300741fa7bf8afc47ed2576f6936ba424663aab639c5ae4f5683423b4742bf1c978238f16cbe39d652de3fdb8befc848ad922222e04a4037c0713eb57a81a23f0c73473fc646cea306b4bcbc8862f8385ddfa9d4b7fa2c087e879683303ed5bdd3a062b3cf5b3a278a66d2a13f83f44f82ddf310ee074ab6a364597e899a0255dc164f31cc50846851df9ab48195ded7ea1b1d510bd7ee74d73faf36bc31ecfa268359046f4eb879f924009438b481c6cd7889a002ed5ee382bc9190da6fc026e479558e4475677e9aa9e3050e2765694dfc81f56e880b96e7160c980dd98edd3dfffffffffffffffff"}}}}),pQ=q$({"node_modules/diffie-hellman/lib/dh.js"($,Q){var Y=gQ(),Z=BQ(),G=new Z,V=new Y(24),U=new Y(11),X=new Y(10),K=new Y(3),I=new Y(7),O=yQ(),J=g$();Q.exports=E;function F(D,C){return C=C||"utf8",F$.isBuffer(D)||(D=new F$(D,C)),this._pub=new Y(D),this}function A(D,C){return C=C||"utf8",F$.isBuffer(D)||(D=new F$(D,C)),this._priv=new Y(D),this}var H={};function W(D,C){var L=C.toString("hex"),R=[L,D.toString(16)].join("_");if(R in H)return H[R];var P=0;if(D.isEven()||!O.simpleSieve||!O.fermatTest(D)||!G.test(D))return P+=1,L==="02"||L==="05"?P+=8:P+=4,H[R]=P,P;G.test(D.shrn(1))||(P+=2);var z;switch(L){case"02":D.mod(V).cmp(U)&&(P+=8);break;case"05":z=D.mod(X),z.cmp(K)&&z.cmp(I)&&(P+=8);break;default:P+=4}return H[R]=P,P}function E(D,C,L){this.setGenerator(C),this.__prime=new Y(D),this._prime=Y.mont(this.__prime),this._primeLen=D.length,this._pub=void 0,this._priv=void 0,this._primeCode=void 0,L?(this.setPublicKey=F,this.setPrivateKey=A):this._primeCode=8}Object.defineProperty(E.prototype,"verifyError",{enumerable:!0,get:function(){return typeof this._primeCode!="number"&&(this._primeCode=W(this.__prime,this.__gen)),this._primeCode}}),E.prototype.generateKeys=function(){return this._priv||(this._priv=new Y(J(this._primeLen))),this._pub=this._gen.toRed(this._prime).redPow(this._priv).fromRed(),this.getPublicKey()},E.prototype.computeSecret=function(D){D=new Y(D),D=D.toRed(this._prime);var C=D.redPow(this._priv).fromRed(),L=new F$(C.toArray()),R=this.getPrime();if(L.length<R.length){var P=new F$(R.length-L.length);P.fill(0),L=F$.concat([P,L])}return L},E.prototype.getPublicKey=function(D){return T(this._pub,D)},E.prototype.getPrivateKey=function(D){return T(this._priv,D)},E.prototype.getPrime=function(D){return T(this.__prime,D)},E.prototype.getGenerator=function(D){return T(this._gen,D)},E.prototype.setGenerator=function(D,C){return C=C||"utf8",F$.isBuffer(D)||(D=new F$(D,C)),this.__gen=D,this._gen=new Y(D),this};function T(D,C){var L=new F$(D.toArray());return C?L.toString(C):L}}}),fQ=q$({"node_modules/diffie-hellman/browser.js"($){var Q=yQ(),Y=wQ(),Z=pQ();function G(X){var K=new F$(Y[X].prime,"hex"),I=new F$(Y[X].gen,"hex");return new Z(K,I)}var V={binary:!0,hex:!0,base64:!0};function U(X,K,I,O){return F$.isBuffer(K)||V[K]===void 0?U(X,"binary",K,I):(K=K||"binary",O=O||"binary",I=I||new F$([2]),F$.isBuffer(I)||(I=new F$(I,O)),typeof X=="number"?new Z(Q(X,I),I,!0):(F$.isBuffer(X)||(X=new F$(X,K)),new Z(X,I,!0)))}$.DiffieHellmanGroup=$.createDiffieHellmanGroup=$.getDiffieHellman=G,$.createDiffieHellman=$.DiffieHellman=U}}),cQ=q$({"node_modules/bn.js/lib/bn.js"($,Q){(function(Y,Z){function G(_,N){if(!_)throw new Error(N||"Assertion failed")}function V(_,N){_.super_=N;var x=function(){};x.prototype=N.prototype,_.prototype=new x,_.prototype.constructor=_}function U(_,N,x){if(U.isBN(_))return _;this.negative=0,this.words=null,this.length=0,this.red=null,_!==null&&((N==="le"||N==="be")&&(x=N,N=10),this._init(_||0,N||10,x||"be"))}typeof Y=="object"?Y.exports=U:Z.BN=U,U.BN=U,U.wordSize=26;var X=F$;U.isBN=function(_){return _ instanceof U?!0:_!==null&&typeof _=="object"&&_.constructor.wordSize===U.wordSize&&Array.isArray(_.words)},U.max=function(_,N){return _.cmp(N)>0?_:N},U.min=function(_,N){return _.cmp(N)<0?_:N},U.prototype._init=function(_,N,x){if(typeof _=="number")return this._initNumber(_,N,x);if(typeof _=="object")return this._initArray(_,N,x);N==="hex"&&(N=16),G(N===(N|0)&&N>=2&&N<=36),_=_.toString().replace(/\s+/g,"");var B=0;_[0]==="-"&&(B++,this.negative=1),B<_.length&&(N===16?this._parseHex(_,B,x):(this._parseBase(_,N,B),x==="le"&&this._initArray(this.toArray(),N,x)))},U.prototype._initNumber=function(_,N,x){_<0&&(this.negative=1,_=-_),_<67108864?(this.words=[_&67108863],this.length=1):_<4503599627370496?(this.words=[_&67108863,_/67108864&67108863],this.length=2):(G(_<9007199254740992),this.words=[_&67108863,_/67108864&67108863,1],this.length=3),x==="le"&&this._initArray(this.toArray(),N,x)},U.prototype._initArray=function(_,N,x){if(G(typeof _.length=="number"),_.length<=0)return this.words=[0],this.length=1,this;this.length=Math.ceil(_.length/3),this.words=new Array(this.length);for(var B=0;B<this.length;B++)this.words[B]=0;var y,w,p=0;if(x==="be")for(B=_.length-1,y=0;B>=0;B-=3)w=_[B]|_[B-1]<<8|_[B-2]<<16,this.words[y]|=w<<p&67108863,this.words[y+1]=w>>>26-p&67108863,p+=24,p>=26&&(p-=26,y++);else if(x==="le")for(B=0,y=0;B<_.length;B+=3)w=_[B]|_[B+1]<<8|_[B+2]<<16,this.words[y]|=w<<p&67108863,this.words[y+1]=w>>>26-p&67108863,p+=24,p>=26&&(p-=26,y++);return this._strip()};function K(_,N){var x=_.charCodeAt(N);if(x>=48&&x<=57)return x-48;if(x>=65&&x<=70)return x-55;if(x>=97&&x<=102)return x-87;G(!1,"Invalid character in "+_)}function I(_,N,x){var B=K(_,x);return x-1>=N&&(B|=K(_,x-1)<<4),B}U.prototype._parseHex=function(_,N,x){this.length=Math.ceil((_.length-N)/6),this.words=new Array(this.length);for(var B=0;B<this.length;B++)this.words[B]=0;var y=0,w=0,p;if(x==="be")for(B=_.length-1;B>=N;B-=2)p=I(_,N,B)<<y,this.words[w]|=p&67108863,y>=18?(y-=18,w+=1,this.words[w]|=p>>>26):y+=8;else{var f=_.length-N;for(B=f%2===0?N+1:N;B<_.length;B+=2)p=I(_,N,B)<<y,this.words[w]|=p&67108863,y>=18?(y-=18,w+=1,this.words[w]|=p>>>26):y+=8}this._strip()};function O(_,N,x,B){for(var y=0,w=0,p=Math.min(_.length,x),f=N;f<p;f++){var c=_.charCodeAt(f)-48;y*=B,c>=49?w=c-49+10:c>=17?w=c-17+10:w=c,G(c>=0&&w<B,"Invalid character"),y+=w}return y}U.prototype._parseBase=function(_,N,x){this.words=[0],this.length=1;for(var B=0,y=1;y<=67108863;y*=N)B++;B--,y=y/N|0;for(var w=_.length-x,p=w%B,f=Math.min(w,w-p)+x,c=0,h=x;h<f;h+=B)c=O(_,h,h+B,N),this.imuln(y),this.words[0]+c<67108864?this.words[0]+=c:this._iaddn(c);if(p!==0){var d=1;for(c=O(_,h,_.length,N),h=0;h<p;h++)d*=N;this.imuln(d),this.words[0]+c<67108864?this.words[0]+=c:this._iaddn(c)}this._strip()},U.prototype.copy=function(_){_.words=new Array(this.length);for(var N=0;N<this.length;N++)_.words[N]=this.words[N];_.length=this.length,_.negative=this.negative,_.red=this.red};function J(_,N){_.words=N.words,_.length=N.length,_.negative=N.negative,_.red=N.red}if(U.prototype._move=function(_){J(_,this)},U.prototype.clone=function(){var _=new U(null);return this.copy(_),_},U.prototype._expand=function(_){for(;this.length<_;)this.words[this.length++]=0;return this},U.prototype._strip=function(){for(;this.length>1&&this.words[this.length-1]===0;)this.length--;return this._normSign()},U.prototype._normSign=function(){return this.length===1&&this.words[0]===0&&(this.negative=0),this},typeof Symbol<"u"&&typeof Symbol.for=="function")try{U.prototype[Symbol.for("nodejs.util.inspect.custom")]=F}catch{U.prototype.inspect=F}else U.prototype.inspect=F;function F(){return(this.red?"<BN-R: ":"<BN: ")+this.toString(16)+">"}var A=["","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"],H=[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],W=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64000000,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,24300000,28629151,33554432,39135393,45435424,52521875,60466176];U.prototype.toString=function(_,N){_=_||10,N=N|0||1;var x;if(_===16||_==="hex"){x="";for(var B=0,y=0,w=0;w<this.length;w++){var p=this.words[w],f=((p<<B|y)&16777215).toString(16);y=p>>>24-B&16777215,B+=2,B>=26&&(B-=26,w--),y!==0||w!==this.length-1?x=A[6-f.length]+f+x:x=f+x}for(y!==0&&(x=y.toString(16)+x);x.length%N!==0;)x="0"+x;return this.negative!==0&&(x="-"+x),x}if(_===(_|0)&&_>=2&&_<=36){var c=H[_],h=W[_];x="";var d=this.clone();for(d.negative=0;!d.isZero();){var b=d.modrn(h).toString(_);d=d.idivn(h),d.isZero()?x=b+x:x=A[c-b.length]+b+x}for(this.isZero()&&(x="0"+x);x.length%N!==0;)x="0"+x;return this.negative!==0&&(x="-"+x),x}G(!1,"Base should be between 2 and 36")},U.prototype.toNumber=function(){var _=this.words[0];return this.length===2?_+=this.words[1]*67108864:this.length===3&&this.words[2]===1?_+=4503599627370496+this.words[1]*67108864:this.length>2&&G(!1,"Number can only safely store up to 53 bits"),this.negative!==0?-_:_},U.prototype.toJSON=function(){return this.toString(16,2)},X&&(U.prototype.toBuffer=function(_,N){return this.toArrayLike(X,_,N)}),U.prototype.toArray=function(_,N){return this.toArrayLike(Array,_,N)};var E=function(_,N){return _.allocUnsafe?_.allocUnsafe(N):new _(N)};U.prototype.toArrayLike=function(_,N,x){this._strip();var B=this.byteLength(),y=x||Math.max(1,B);G(B<=y,"byte array longer than desired length"),G(y>0,"Requested array length <= 0");var w=E(_,y),p=N==="le"?"LE":"BE";return this["_toArrayLike"+p](w,B),w},U.prototype._toArrayLikeLE=function(_,N){for(var x=0,B=0,y=0,w=0;y<this.length;y++){var p=this.words[y]<<w|B;_[x++]=p&255,x<_.length&&(_[x++]=p>>8&255),x<_.length&&(_[x++]=p>>16&255),w===6?(x<_.length&&(_[x++]=p>>24&255),B=0,w=0):(B=p>>>24,w+=2)}if(x<_.length)for(_[x++]=B;x<_.length;)_[x++]=0},U.prototype._toArrayLikeBE=function(_,N){for(var x=_.length-1,B=0,y=0,w=0;y<this.length;y++){var p=this.words[y]<<w|B;_[x--]=p&255,x>=0&&(_[x--]=p>>8&255),x>=0&&(_[x--]=p>>16&255),w===6?(x>=0&&(_[x--]=p>>24&255),B=0,w=0):(B=p>>>24,w+=2)}if(x>=0)for(_[x--]=B;x>=0;)_[x--]=0},Math.clz32?U.prototype._countBits=function(_){return 32-Math.clz32(_)}:U.prototype._countBits=function(_){var N=_,x=0;return N>=4096&&(x+=13,N>>>=13),N>=64&&(x+=7,N>>>=7),N>=8&&(x+=4,N>>>=4),N>=2&&(x+=2,N>>>=2),x+N},U.prototype._zeroBits=function(_){if(_===0)return 26;var N=_,x=0;return(N&8191)===0&&(x+=13,N>>>=13),(N&127)===0&&(x+=7,N>>>=7),(N&15)===0&&(x+=4,N>>>=4),(N&3)===0&&(x+=2,N>>>=2),(N&1)===0&&x++,x},U.prototype.bitLength=function(){var _=this.words[this.length-1],N=this._countBits(_);return(this.length-1)*26+N};function T(_){for(var N=new Array(_.bitLength()),x=0;x<N.length;x++){var B=x/26|0,y=x%26;N[x]=_.words[B]>>>y&1}return N}U.prototype.zeroBits=function(){if(this.isZero())return 0;for(var _=0,N=0;N<this.length;N++){var x=this._zeroBits(this.words[N]);if(_+=x,x!==26)break}return _},U.prototype.byteLength=function(){return Math.ceil(this.bitLength()/8)},U.prototype.toTwos=function(_){return this.negative!==0?this.abs().inotn(_).iaddn(1):this.clone()},U.prototype.fromTwos=function(_){return this.testn(_-1)?this.notn(_).iaddn(1).ineg():this.clone()},U.prototype.isNeg=function(){return this.negative!==0},U.prototype.neg=function(){return this.clone().ineg()},U.prototype.ineg=function(){return this.isZero()||(this.negative^=1),this},U.prototype.iuor=function(_){for(;this.length<_.length;)this.words[this.length++]=0;for(var N=0;N<_.length;N++)this.words[N]=this.words[N]|_.words[N];return this._strip()},U.prototype.ior=function(_){return G((this.negative|_.negative)===0),this.iuor(_)},U.prototype.or=function(_){return this.length>_.length?this.clone().ior(_):_.clone().ior(this)},U.prototype.uor=function(_){return this.length>_.length?this.clone().iuor(_):_.clone().iuor(this)},U.prototype.iuand=function(_){var N;this.length>_.length?N=_:N=this;for(var x=0;x<N.length;x++)this.words[x]=this.words[x]&_.words[x];return this.length=N.length,this._strip()},U.prototype.iand=function(_){return G((this.negative|_.negative)===0),this.iuand(_)},U.prototype.and=function(_){return this.length>_.length?this.clone().iand(_):_.clone().iand(this)},U.prototype.uand=function(_){return this.length>_.length?this.clone().iuand(_):_.clone().iuand(this)},U.prototype.iuxor=function(_){var N,x;this.length>_.length?(N=this,x=_):(N=_,x=this);for(var B=0;B<x.length;B++)this.words[B]=N.words[B]^x.words[B];if(this!==N)for(;B<N.length;B++)this.words[B]=N.words[B];return this.length=N.length,this._strip()},U.prototype.ixor=function(_){return G((this.negative|_.negative)===0),this.iuxor(_)},U.prototype.xor=function(_){return this.length>_.length?this.clone().ixor(_):_.clone().ixor(this)},U.prototype.uxor=function(_){return this.length>_.length?this.clone().iuxor(_):_.clone().iuxor(this)},U.prototype.inotn=function(_){G(typeof _=="number"&&_>=0);var N=Math.ceil(_/26)|0,x=_%26;this._expand(N),x>0&&N--;for(var B=0;B<N;B++)this.words[B]=~this.words[B]&67108863;return x>0&&(this.words[B]=~this.words[B]&67108863>>26-x),this._strip()},U.prototype.notn=function(_){return this.clone().inotn(_)},U.prototype.setn=function(_,N){G(typeof _=="number"&&_>=0);var x=_/26|0,B=_%26;return this._expand(x+1),N?this.words[x]=this.words[x]|1<<B:this.words[x]=this.words[x]&~(1<<B),this._strip()},U.prototype.iadd=function(_){var N;if(this.negative!==0&&_.negative===0)return this.negative=0,N=this.isub(_),this.negative^=1,this._normSign();if(this.negative===0&&_.negative!==0)return _.negative=0,N=this.isub(_),_.negative=1,N._normSign();var x,B;this.length>_.length?(x=this,B=_):(x=_,B=this);for(var y=0,w=0;w<B.length;w++)N=(x.words[w]|0)+(B.words[w]|0)+y,this.words[w]=N&67108863,y=N>>>26;for(;y!==0&&w<x.length;w++)N=(x.words[w]|0)+y,this.words[w]=N&67108863,y=N>>>26;if(this.length=x.length,y!==0)this.words[this.length]=y,this.length++;else if(x!==this)for(;w<x.length;w++)this.words[w]=x.words[w];return this},U.prototype.add=function(_){var N;return _.negative!==0&&this.negative===0?(_.negative=0,N=this.sub(_),_.negative^=1,N):_.negative===0&&this.negative!==0?(this.negative=0,N=_.sub(this),this.negative=1,N):this.length>_.length?this.clone().iadd(_):_.clone().iadd(this)},U.prototype.isub=function(_){if(_.negative!==0){_.negative=0;var N=this.iadd(_);return _.negative=1,N._normSign()}else if(this.negative!==0)return this.negative=0,this.iadd(_),this.negative=1,this._normSign();var x=this.cmp(_);if(x===0)return this.negative=0,this.length=1,this.words[0]=0,this;var B,y;x>0?(B=this,y=_):(B=_,y=this);for(var w=0,p=0;p<y.length;p++)N=(B.words[p]|0)-(y.words[p]|0)+w,w=N>>26,this.words[p]=N&67108863;for(;w!==0&&p<B.length;p++)N=(B.words[p]|0)+w,w=N>>26,this.words[p]=N&67108863;if(w===0&&p<B.length&&B!==this)for(;p<B.length;p++)this.words[p]=B.words[p];return this.length=Math.max(this.length,p),B!==this&&(this.negative=1),this._strip()},U.prototype.sub=function(_){return this.clone().isub(_)};function D(_,N,x){x.negative=N.negative^_.negative;var B=_.length+N.length|0;x.length=B,B=B-1|0;var y=_.words[0]|0,w=N.words[0]|0,p=y*w,f=p&67108863,c=p/67108864|0;x.words[0]=f;for(var h=1;h<B;h++){for(var d=c>>>26,b=c&67108863,l=Math.min(h,N.length-1),o=Math.max(0,h-_.length+1);o<=l;o++){var u=h-o|0;y=_.words[u]|0,w=N.words[o]|0,p=y*w+b,d+=p/67108864|0,b=p&67108863}x.words[h]=b|0,c=d|0}return c!==0?x.words[h]=c|0:x.length--,x._strip()}var C=function(_,N,x){var B=_.words,y=N.words,w=x.words,p=0,f,c,h,d=B[0]|0,b=d&8191,l=d>>>13,o=B[1]|0,u=o&8191,n=o>>>13,s=B[2]|0,t=s&8191,m=s>>>13,a=B[3]|0,e=a&8191,r=a>>>13,i=B[4]|0,$0=i&8191,Q0=i>>>13,Y0=B[5]|0,Z0=Y0&8191,G0=Y0>>>13,V0=B[6]|0,U0=V0&8191,X0=V0>>>13,K0=B[7]|0,I0=K0&8191,O0=K0>>>13,J0=B[8]|0,F0=J0&8191,A0=J0>>>13,H0=B[9]|0,W0=H0&8191,E0=H0>>>13,T0=y[0]|0,D0=T0&8191,C0=T0>>>13,L0=y[1]|0,R0=L0&8191,P0=L0>>>13,z0=y[2]|0,M0=z0&8191,S0=z0>>>13,v0=y[3]|0,q0=v0&8191,j0=v0>>>13,k0=y[4]|0,g0=k0&8191,_0=k0>>>13,N0=y[5]|0,x0=N0&8191,B0=N0>>>13,y0=y[6]|0,w0=y0&8191,p0=y0>>>13,f0=y[7]|0,c0=f0&8191,h0=f0>>>13,d0=y[8]|0,b0=d0&8191,l0=d0>>>13,o0=y[9]|0,u0=o0&8191,n0=o0>>>13;x.negative=_.negative^N.negative,x.length=19,f=Math.imul(b,D0),c=Math.imul(b,C0),c=c+Math.imul(l,D0)|0,h=Math.imul(l,C0);var s0=(p+f|0)+((c&8191)<<13)|0;p=(h+(c>>>13)|0)+(s0>>>26)|0,s0&=67108863,f=Math.imul(u,D0),c=Math.imul(u,C0),c=c+Math.imul(n,D0)|0,h=Math.imul(n,C0),f=f+Math.imul(b,R0)|0,c=c+Math.imul(b,P0)|0,c=c+Math.imul(l,R0)|0,h=h+Math.imul(l,P0)|0;var t0=(p+f|0)+((c&8191)<<13)|0;p=(h+(c>>>13)|0)+(t0>>>26)|0,t0&=67108863,f=Math.imul(t,D0),c=Math.imul(t,C0),c=c+Math.imul(m,D0)|0,h=Math.imul(m,C0),f=f+Math.imul(u,R0)|0,c=c+Math.imul(u,P0)|0,c=c+Math.imul(n,R0)|0,h=h+Math.imul(n,P0)|0,f=f+Math.imul(b,M0)|0,c=c+Math.imul(b,S0)|0,c=c+Math.imul(l,M0)|0,h=h+Math.imul(l,S0)|0;var m0=(p+f|0)+((c&8191)<<13)|0;p=(h+(c>>>13)|0)+(m0>>>26)|0,m0&=67108863,f=Math.imul(e,D0),c=Math.imul(e,C0),c=c+Math.imul(r,D0)|0,h=Math.imul(r,C0),f=f+Math.imul(t,R0)|0,c=c+Math.imul(t,P0)|0,c=c+Math.imul(m,R0)|0,h=h+Math.imul(m,P0)|0,f=f+Math.imul(u,M0)|0,c=c+Math.imul(u,S0)|0,c=c+Math.imul(n,M0)|0,h=h+Math.imul(n,S0)|0,f=f+Math.imul(b,q0)|0,c=c+Math.imul(b,j0)|0,c=c+Math.imul(l,q0)|0,h=h+Math.imul(l,j0)|0;var a0=(p+f|0)+((c&8191)<<13)|0;p=(h+(c>>>13)|0)+(a0>>>26)|0,a0&=67108863,f=Math.imul($0,D0),c=Math.imul($0,C0),c=c+Math.imul(Q0,D0)|0,h=Math.imul(Q0,C0),f=f+Math.imul(e,R0)|0,c=c+Math.imul(e,P0)|0,c=c+Math.imul(r,R0)|0,h=h+Math.imul(r,P0)|0,f=f+Math.imul(t,M0)|0,c=c+Math.imul(t,S0)|0,c=c+Math.imul(m,M0)|0,h=h+Math.imul(m,S0)|0,f=f+Math.imul(u,q0)|0,c=c+Math.imul(u,j0)|0,c=c+Math.imul(n,q0)|0,h=h+Math.imul(n,j0)|0,f=f+Math.imul(b,g0)|0,c=c+Math.imul(b,_0)|0,c=c+Math.imul(l,g0)|0,h=h+Math.imul(l,_0)|0;var e0=(p+f|0)+((c&8191)<<13)|0;p=(h+(c>>>13)|0)+(e0>>>26)|0,e0&=67108863,f=Math.imul(Z0,D0),c=Math.imul(Z0,C0),c=c+Math.imul(G0,D0)|0,h=Math.imul(G0,C0),f=f+Math.imul($0,R0)|0,c=c+Math.imul($0,P0)|0,c=c+Math.imul(Q0,R0)|0,h=h+Math.imul(Q0,P0)|0,f=f+Math.imul(e,M0)|0,c=c+Math.imul(e,S0)|0,c=c+Math.imul(r,M0)|0,h=h+Math.imul(r,S0)|0,f=f+Math.imul(t,q0)|0,c=c+Math.imul(t,j0)|0,c=c+Math.imul(m,q0)|0,h=h+Math.imul(m,j0)|0,f=f+Math.imul(u,g0)|0,c=c+Math.imul(u,_0)|0,c=c+Math.imul(n,g0)|0,h=h+Math.imul(n,_0)|0,f=f+Math.imul(b,x0)|0,c=c+Math.imul(b,B0)|0,c=c+Math.imul(l,x0)|0,h=h+Math.imul(l,B0)|0;var r0=(p+f|0)+((c&8191)<<13)|0;p=(h+(c>>>13)|0)+(r0>>>26)|0,r0&=67108863,f=Math.imul(U0,D0),c=Math.imul(U0,C0),c=c+Math.imul(X0,D0)|0,h=Math.imul(X0,C0),f=f+Math.imul(Z0,R0)|0,c=c+Math.imul(Z0,P0)|0,c=c+Math.imul(G0,R0)|0,h=h+Math.imul(G0,P0)|0,f=f+Math.imul($0,M0)|0,c=c+Math.imul($0,S0)|0,c=c+Math.imul(Q0,M0)|0,h=h+Math.imul(Q0,S0)|0,f=f+Math.imul(e,q0)|0,c=c+Math.imul(e,j0)|0,c=c+Math.imul(r,q0)|0,h=h+Math.imul(r,j0)|0,f=f+Math.imul(t,g0)|0,c=c+Math.imul(t,_0)|0,c=c+Math.imul(m,g0)|0,h=h+Math.imul(m,_0)|0,f=f+Math.imul(u,x0)|0,c=c+Math.imul(u,B0)|0,c=c+Math.imul(n,x0)|0,h=h+Math.imul(n,B0)|0,f=f+Math.imul(b,w0)|0,c=c+Math.imul(b,p0)|0,c=c+Math.imul(l,w0)|0,h=h+Math.imul(l,p0)|0;var i0=(p+f|0)+((c&8191)<<13)|0;p=(h+(c>>>13)|0)+(i0>>>26)|0,i0&=67108863,f=Math.imul(I0,D0),c=Math.imul(I0,C0),c=c+Math.imul(O0,D0)|0,h=Math.imul(O0,C0),f=f+Math.imul(U0,R0)|0,c=c+Math.imul(U0,P0)|0,c=c+Math.imul(X0,R0)|0,h=h+Math.imul(X0,P0)|0,f=f+Math.imul(Z0,M0)|0,c=c+Math.imul(Z0,S0)|0,c=c+Math.imul(G0,M0)|0,h=h+Math.imul(G0,S0)|0,f=f+Math.imul($0,q0)|0,c=c+Math.imul($0,j0)|0,c=c+Math.imul(Q0,q0)|0,h=h+Math.imul(Q0,j0)|0,f=f+Math.imul(e,g0)|0,c=c+Math.imul(e,_0)|0,c=c+Math.imul(r,g0)|0,h=h+Math.imul(r,_0)|0,f=f+Math.imul(t,x0)|0,c=c+Math.imul(t,B0)|0,c=c+Math.imul(m,x0)|0,h=h+Math.imul(m,B0)|0,f=f+Math.imul(u,w0)|0,c=c+Math.imul(u,p0)|0,c=c+Math.imul(n,w0)|0,h=h+Math.imul(n,p0)|0,f=f+Math.imul(b,c0)|0,c=c+Math.imul(b,h0)|0,c=c+Math.imul(l,c0)|0,h=h+Math.imul(l,h0)|0;var $$=(p+f|0)+((c&8191)<<13)|0;p=(h+(c>>>13)|0)+($$>>>26)|0,$$&=67108863,f=Math.imul(F0,D0),c=Math.imul(F0,C0),c=c+Math.imul(A0,D0)|0,h=Math.imul(A0,C0),f=f+Math.imul(I0,R0)|0,c=c+Math.imul(I0,P0)|0,c=c+Math.imul(O0,R0)|0,h=h+Math.imul(O0,P0)|0,f=f+Math.imul(U0,M0)|0,c=c+Math.imul(U0,S0)|0,c=c+Math.imul(X0,M0)|0,h=h+Math.imul(X0,S0)|0,f=f+Math.imul(Z0,q0)|0,c=c+Math.imul(Z0,j0)|0,c=c+Math.imul(G0,q0)|0,h=h+Math.imul(G0,j0)|0,f=f+Math.imul($0,g0)|0,c=c+Math.imul($0,_0)|0,c=c+Math.imul(Q0,g0)|0,h=h+Math.imul(Q0,_0)|0,f=f+Math.imul(e,x0)|0,c=c+Math.imul(e,B0)|0,c=c+Math.imul(r,x0)|0,h=h+Math.imul(r,B0)|0,f=f+Math.imul(t,w0)|0,c=c+Math.imul(t,p0)|0,c=c+Math.imul(m,w0)|0,h=h+Math.imul(m,p0)|0,f=f+Math.imul(u,c0)|0,c=c+Math.imul(u,h0)|0,c=c+Math.imul(n,c0)|0,h=h+Math.imul(n,h0)|0,f=f+Math.imul(b,b0)|0,c=c+Math.imul(b,l0)|0,c=c+Math.imul(l,b0)|0,h=h+Math.imul(l,l0)|0;var Q$=(p+f|0)+((c&8191)<<13)|0;p=(h+(c>>>13)|0)+(Q$>>>26)|0,Q$&=67108863,f=Math.imul(W0,D0),c=Math.imul(W0,C0),c=c+Math.imul(E0,D0)|0,h=Math.imul(E0,C0),f=f+Math.imul(F0,R0)|0,c=c+Math.imul(F0,P0)|0,c=c+Math.imul(A0,R0)|0,h=h+Math.imul(A0,P0)|0,f=f+Math.imul(I0,M0)|0,c=c+Math.imul(I0,S0)|0,c=c+Math.imul(O0,M0)|0,h=h+Math.imul(O0,S0)|0,f=f+Math.imul(U0,q0)|0,c=c+Math.imul(U0,j0)|0,c=c+Math.imul(X0,q0)|0,h=h+Math.imul(X0,j0)|0,f=f+Math.imul(Z0,g0)|0,c=c+Math.imul(Z0,_0)|0,c=c+Math.imul(G0,g0)|0,h=h+Math.imul(G0,_0)|0,f=f+Math.imul($0,x0)|0,c=c+Math.imul($0,B0)|0,c=c+Math.imul(Q0,x0)|0,h=h+Math.imul(Q0,B0)|0,f=f+Math.imul(e,w0)|0,c=c+Math.imul(e,p0)|0,c=c+Math.imul(r,w0)|0,h=h+Math.imul(r,p0)|0,f=f+Math.imul(t,c0)|0,c=c+Math.imul(t,h0)|0,c=c+Math.imul(m,c0)|0,h=h+Math.imul(m,h0)|0,f=f+Math.imul(u,b0)|0,c=c+Math.imul(u,l0)|0,c=c+Math.imul(n,b0)|0,h=h+Math.imul(n,l0)|0,f=f+Math.imul(b,u0)|0,c=c+Math.imul(b,n0)|0,c=c+Math.imul(l,u0)|0,h=h+Math.imul(l,n0)|0;var Y$=(p+f|0)+((c&8191)<<13)|0;p=(h+(c>>>13)|0)+(Y$>>>26)|0,Y$&=67108863,f=Math.imul(W0,R0),c=Math.imul(W0,P0),c=c+Math.imul(E0,R0)|0,h=Math.imul(E0,P0),f=f+Math.imul(F0,M0)|0,c=c+Math.imul(F0,S0)|0,c=c+Math.imul(A0,M0)|0,h=h+Math.imul(A0,S0)|0,f=f+Math.imul(I0,q0)|0,c=c+Math.imul(I0,j0)|0,c=c+Math.imul(O0,q0)|0,h=h+Math.imul(O0,j0)|0,f=f+Math.imul(U0,g0)|0,c=c+Math.imul(U0,_0)|0,c=c+Math.imul(X0,g0)|0,h=h+Math.imul(X0,_0)|0,f=f+Math.imul(Z0,x0)|0,c=c+Math.imul(Z0,B0)|0,c=c+Math.imul(G0,x0)|0,h=h+Math.imul(G0,B0)|0,f=f+Math.imul($0,w0)|0,c=c+Math.imul($0,p0)|0,c=c+Math.imul(Q0,w0)|0,h=h+Math.imul(Q0,p0)|0,f=f+Math.imul(e,c0)|0,c=c+Math.imul(e,h0)|0,c=c+Math.imul(r,c0)|0,h=h+Math.imul(r,h0)|0,f=f+Math.imul(t,b0)|0,c=c+Math.imul(t,l0)|0,c=c+Math.imul(m,b0)|0,h=h+Math.imul(m,l0)|0,f=f+Math.imul(u,u0)|0,c=c+Math.imul(u,n0)|0,c=c+Math.imul(n,u0)|0,h=h+Math.imul(n,n0)|0;var Z$=(p+f|0)+((c&8191)<<13)|0;p=(h+(c>>>13)|0)+(Z$>>>26)|0,Z$&=67108863,f=Math.imul(W0,M0),c=Math.imul(W0,S0),c=c+Math.imul(E0,M0)|0,h=Math.imul(E0,S0),f=f+Math.imul(F0,q0)|0,c=c+Math.imul(F0,j0)|0,c=c+Math.imul(A0,q0)|0,h=h+Math.imul(A0,j0)|0,f=f+Math.imul(I0,g0)|0,c=c+Math.imul(I0,_0)|0,c=c+Math.imul(O0,g0)|0,h=h+Math.imul(O0,_0)|0,f=f+Math.imul(U0,x0)|0,c=c+Math.imul(U0,B0)|0,c=c+Math.imul(X0,x0)|0,h=h+Math.imul(X0,B0)|0,f=f+Math.imul(Z0,w0)|0,c=c+Math.imul(Z0,p0)|0,c=c+Math.imul(G0,w0)|0,h=h+Math.imul(G0,p0)|0,f=f+Math.imul($0,c0)|0,c=c+Math.imul($0,h0)|0,c=c+Math.imul(Q0,c0)|0,h=h+Math.imul(Q0,h0)|0,f=f+Math.imul(e,b0)|0,c=c+Math.imul(e,l0)|0,c=c+Math.imul(r,b0)|0,h=h+Math.imul(r,l0)|0,f=f+Math.imul(t,u0)|0,c=c+Math.imul(t,n0)|0,c=c+Math.imul(m,u0)|0,h=h+Math.imul(m,n0)|0;var G$=(p+f|0)+((c&8191)<<13)|0;p=(h+(c>>>13)|0)+(G$>>>26)|0,G$&=67108863,f=Math.imul(W0,q0),c=Math.imul(W0,j0),c=c+Math.imul(E0,q0)|0,h=Math.imul(E0,j0),f=f+Math.imul(F0,g0)|0,c=c+Math.imul(F0,_0)|0,c=c+Math.imul(A0,g0)|0,h=h+Math.imul(A0,_0)|0,f=f+Math.imul(I0,x0)|0,c=c+Math.imul(I0,B0)|0,c=c+Math.imul(O0,x0)|0,h=h+Math.imul(O0,B0)|0,f=f+Math.imul(U0,w0)|0,c=c+Math.imul(U0,p0)|0,c=c+Math.imul(X0,w0)|0,h=h+Math.imul(X0,p0)|0,f=f+Math.imul(Z0,c0)|0,c=c+Math.imul(Z0,h0)|0,c=c+Math.imul(G0,c0)|0,h=h+Math.imul(G0,h0)|0,f=f+Math.imul($0,b0)|0,c=c+Math.imul($0,l0)|0,c=c+Math.imul(Q0,b0)|0,h=h+Math.imul(Q0,l0)|0,f=f+Math.imul(e,u0)|0,c=c+Math.imul(e,n0)|0,c=c+Math.imul(r,u0)|0,h=h+Math.imul(r,n0)|0;var V$=(p+f|0)+((c&8191)<<13)|0;p=(h+(c>>>13)|0)+(V$>>>26)|0,V$&=67108863,f=Math.imul(W0,g0),c=Math.imul(W0,_0),c=c+Math.imul(E0,g0)|0,h=Math.imul(E0,_0),f=f+Math.imul(F0,x0)|0,c=c+Math.imul(F0,B0)|0,c=c+Math.imul(A0,x0)|0,h=h+Math.imul(A0,B0)|0,f=f+Math.imul(I0,w0)|0,c=c+Math.imul(I0,p0)|0,c=c+Math.imul(O0,w0)|0,h=h+Math.imul(O0,p0)|0,f=f+Math.imul(U0,c0)|0,c=c+Math.imul(U0,h0)|0,c=c+Math.imul(X0,c0)|0,h=h+Math.imul(X0,h0)|0,f=f+Math.imul(Z0,b0)|0,c=c+Math.imul(Z0,l0)|0,c=c+Math.imul(G0,b0)|0,h=h+Math.imul(G0,l0)|0,f=f+Math.imul($0,u0)|0,c=c+Math.imul($0,n0)|0,c=c+Math.imul(Q0,u0)|0,h=h+Math.imul(Q0,n0)|0;var U$=(p+f|0)+((c&8191)<<13)|0;p=(h+(c>>>13)|0)+(U$>>>26)|0,U$&=67108863,f=Math.imul(W0,x0),c=Math.imul(W0,B0),c=c+Math.imul(E0,x0)|0,h=Math.imul(E0,B0),f=f+Math.imul(F0,w0)|0,c=c+Math.imul(F0,p0)|0,c=c+Math.imul(A0,w0)|0,h=h+Math.imul(A0,p0)|0,f=f+Math.imul(I0,c0)|0,c=c+Math.imul(I0,h0)|0,c=c+Math.imul(O0,c0)|0,h=h+Math.imul(O0,h0)|0,f=f+Math.imul(U0,b0)|0,c=c+Math.imul(U0,l0)|0,c=c+Math.imul(X0,b0)|0,h=h+Math.imul(X0,l0)|0,f=f+Math.imul(Z0,u0)|0,c=c+Math.imul(Z0,n0)|0,c=c+Math.imul(G0,u0)|0,h=h+Math.imul(G0,n0)|0;var X$=(p+f|0)+((c&8191)<<13)|0;p=(h+(c>>>13)|0)+(X$>>>26)|0,X$&=67108863,f=Math.imul(W0,w0),c=Math.imul(W0,p0),c=c+Math.imul(E0,w0)|0,h=Math.imul(E0,p0),f=f+Math.imul(F0,c0)|0,c=c+Math.imul(F0,h0)|0,c=c+Math.imul(A0,c0)|0,h=h+Math.imul(A0,h0)|0,f=f+Math.imul(I0,b0)|0,c=c+Math.imul(I0,l0)|0,c=c+Math.imul(O0,b0)|0,h=h+Math.imul(O0,l0)|0,f=f+Math.imul(U0,u0)|0,c=c+Math.imul(U0,n0)|0,c=c+Math.imul(X0,u0)|0,h=h+Math.imul(X0,n0)|0;var K$=(p+f|0)+((c&8191)<<13)|0;p=(h+(c>>>13)|0)+(K$>>>26)|0,K$&=67108863,f=Math.imul(W0,c0),c=Math.imul(W0,h0),c=c+Math.imul(E0,c0)|0,h=Math.imul(E0,h0),f=f+Math.imul(F0,b0)|0,c=c+Math.imul(F0,l0)|0,c=c+Math.imul(A0,b0)|0,h=h+Math.imul(A0,l0)|0,f=f+Math.imul(I0,u0)|0,c=c+Math.imul(I0,n0)|0,c=c+Math.imul(O0,u0)|0,h=h+Math.imul(O0,n0)|0;var I$=(p+f|0)+((c&8191)<<13)|0;p=(h+(c>>>13)|0)+(I$>>>26)|0,I$&=67108863,f=Math.imul(W0,b0),c=Math.imul(W0,l0),c=c+Math.imul(E0,b0)|0,h=Math.imul(E0,l0),f=f+Math.imul(F0,u0)|0,c=c+Math.imul(F0,n0)|0,c=c+Math.imul(A0,u0)|0,h=h+Math.imul(A0,n0)|0;var O$=(p+f|0)+((c&8191)<<13)|0;p=(h+(c>>>13)|0)+(O$>>>26)|0,O$&=67108863,f=Math.imul(W0,u0),c=Math.imul(W0,n0),c=c+Math.imul(E0,u0)|0,h=Math.imul(E0,n0);var J$=(p+f|0)+((c&8191)<<13)|0;return p=(h+(c>>>13)|0)+(J$>>>26)|0,J$&=67108863,w[0]=s0,w[1]=t0,w[2]=m0,w[3]=a0,w[4]=e0,w[5]=r0,w[6]=i0,w[7]=$$,w[8]=Q$,w[9]=Y$,w[10]=Z$,w[11]=G$,w[12]=V$,w[13]=U$,w[14]=X$,w[15]=K$,w[16]=I$,w[17]=O$,w[18]=J$,p!==0&&(w[19]=p,x.length++),x};Math.imul||(C=D);function L(_,N,x){x.negative=N.negative^_.negative,x.length=_.length+N.length;for(var B=0,y=0,w=0;w<x.length-1;w++){var p=y;y=0;for(var f=B&67108863,c=Math.min(w,N.length-1),h=Math.max(0,w-_.length+1);h<=c;h++){var d=w-h,b=_.words[d]|0,l=N.words[h]|0,o=b*l,u=o&67108863;p=p+(o/67108864|0)|0,u=u+f|0,f=u&67108863,p=p+(u>>>26)|0,y+=p>>>26,p&=67108863}x.words[w]=f,B=p,p=y}return B!==0?x.words[w]=B:x.length--,x._strip()}function R(_,N,x){return L(_,N,x)}U.prototype.mulTo=function(_,N){var x,B=this.length+_.length;return this.length===10&&_.length===10?x=C(this,_,N):B<63?x=D(this,_,N):B<1024?x=L(this,_,N):x=R(this,_,N),x};function P(_,N){this.x=_,this.y=N}P.prototype.makeRBT=function(_){for(var N=new Array(_),x=U.prototype._countBits(_)-1,B=0;B<_;B++)N[B]=this.revBin(B,x,_);return N},P.prototype.revBin=function(_,N,x){if(_===0||_===x-1)return _;for(var B=0,y=0;y<N;y++)B|=(_&1)<<N-y-1,_>>=1;return B},P.prototype.permute=function(_,N,x,B,y,w){for(var p=0;p<w;p++)B[p]=N[_[p]],y[p]=x[_[p]]},P.prototype.transform=function(_,N,x,B,y,w){this.permute(w,_,N,x,B,y);for(var p=1;p<y;p<<=1)for(var f=p<<1,c=Math.cos(2*Math.PI/f),h=Math.sin(2*Math.PI/f),d=0;d<y;d+=f)for(var b=c,l=h,o=0;o<p;o++){var u=x[d+o],n=B[d+o],s=x[d+o+p],t=B[d+o+p],m=b*s-l*t;t=b*t+l*s,s=m,x[d+o]=u+s,B[d+o]=n+t,x[d+o+p]=u-s,B[d+o+p]=n-t,o!==f&&(m=c*b-h*l,l=c*l+h*b,b=m)}},P.prototype.guessLen13b=function(_,N){var x=Math.max(N,_)|1,B=x&1,y=0;for(x=x/2|0;x;x=x>>>1)y++;return 1<<y+1+B},P.prototype.conjugate=function(_,N,x){if(!(x<=1))for(var B=0;B<x/2;B++){var y=_[B];_[B]=_[x-B-1],_[x-B-1]=y,y=N[B],N[B]=-N[x-B-1],N[x-B-1]=-y}},P.prototype.normalize13b=function(_,N){for(var x=0,B=0;B<N/2;B++){var y=Math.round(_[2*B+1]/N)*8192+Math.round(_[2*B]/N)+x;_[B]=y&67108863,y<67108864?x=0:x=y/67108864|0}return _},P.prototype.convert13b=function(_,N,x,B){for(var y=0,w=0;w<N;w++)y=y+(_[w]|0),x[2*w]=y&8191,y=y>>>13,x[2*w+1]=y&8191,y=y>>>13;for(w=2*N;w<B;++w)x[w]=0;G(y===0),G((y&-8192)===0)},P.prototype.stub=function(_){for(var N=new Array(_),x=0;x<_;x++)N[x]=0;return N},P.prototype.mulp=function(_,N,x){var B=2*this.guessLen13b(_.length,N.length),y=this.makeRBT(B),w=this.stub(B),p=new Array(B),f=new Array(B),c=new Array(B),h=new Array(B),d=new Array(B),b=new Array(B),l=x.words;l.length=B,this.convert13b(_.words,_.length,p,B),this.convert13b(N.words,N.length,h,B),this.transform(p,w,f,c,B,y),this.transform(h,w,d,b,B,y);for(var o=0;o<B;o++){var u=f[o]*d[o]-c[o]*b[o];c[o]=f[o]*b[o]+c[o]*d[o],f[o]=u}return this.conjugate(f,c,B),this.transform(f,c,l,w,B,y),this.conjugate(l,w,B),this.normalize13b(l,B),x.negative=_.negative^N.negative,x.length=_.length+N.length,x._strip()},U.prototype.mul=function(_){var N=new U(null);return N.words=new Array(this.length+_.length),this.mulTo(_,N)},U.prototype.mulf=function(_){var N=new U(null);return N.words=new Array(this.length+_.length),R(this,_,N)},U.prototype.imul=function(_){return this.clone().mulTo(_,this)},U.prototype.imuln=function(_){var N=_<0;N&&(_=-_),G(typeof _=="number"),G(_<67108864);for(var x=0,B=0;B<this.length;B++){var y=(this.words[B]|0)*_,w=(y&67108863)+(x&67108863);x>>=26,x+=y/67108864|0,x+=w>>>26,this.words[B]=w&67108863}return x!==0&&(this.words[B]=x,this.length++),N?this.ineg():this},U.prototype.muln=function(_){return this.clone().imuln(_)},U.prototype.sqr=function(){return this.mul(this)},U.prototype.isqr=function(){return this.imul(this.clone())},U.prototype.pow=function(_){var N=T(_);if(N.length===0)return new U(1);for(var x=this,B=0;B<N.length&&N[B]===0;B++,x=x.sqr());if(++B<N.length)for(var y=x.sqr();B<N.length;B++,y=y.sqr())N[B]!==0&&(x=x.mul(y));return x},U.prototype.iushln=function(_){G(typeof _=="number"&&_>=0);var N=_%26,x=(_-N)/26,B=67108863>>>26-N<<26-N,y;if(N!==0){var w=0;for(y=0;y<this.length;y++){var p=this.words[y]&B,f=(this.words[y]|0)-p<<N;this.words[y]=f|w,w=p>>>26-N}w&&(this.words[y]=w,this.length++)}if(x!==0){for(y=this.length-1;y>=0;y--)this.words[y+x]=this.words[y];for(y=0;y<x;y++)this.words[y]=0;this.length+=x}return this._strip()},U.prototype.ishln=function(_){return G(this.negative===0),this.iushln(_)},U.prototype.iushrn=function(_,N,x){G(typeof _=="number"&&_>=0);var B;N?B=(N-N%26)/26:B=0;var y=_%26,w=Math.min((_-y)/26,this.length),p=67108863^67108863>>>y<<y,f=x;if(B-=w,B=Math.max(0,B),f){for(var c=0;c<w;c++)f.words[c]=this.words[c];f.length=w}if(w!==0)if(this.length>w)for(this.length-=w,c=0;c<this.length;c++)this.words[c]=this.words[c+w];else this.words[0]=0,this.length=1;var h=0;for(c=this.length-1;c>=0&&(h!==0||c>=B);c--){var d=this.words[c]|0;this.words[c]=h<<26-y|d>>>y,h=d&p}return f&&h!==0&&(f.words[f.length++]=h),this.length===0&&(this.words[0]=0,this.length=1),this._strip()},U.prototype.ishrn=function(_,N,x){return G(this.negative===0),this.iushrn(_,N,x)},U.prototype.shln=function(_){return this.clone().ishln(_)},U.prototype.ushln=function(_){return this.clone().iushln(_)},U.prototype.shrn=function(_){return this.clone().ishrn(_)},U.prototype.ushrn=function(_){return this.clone().iushrn(_)},U.prototype.testn=function(_){G(typeof _=="number"&&_>=0);var N=_%26,x=(_-N)/26,B=1<<N;if(this.length<=x)return!1;var y=this.words[x];return!!(y&B)},U.prototype.imaskn=function(_){G(typeof _=="number"&&_>=0);var N=_%26,x=(_-N)/26;if(G(this.negative===0,"imaskn works only with positive numbers"),this.length<=x)return this;if(N!==0&&x++,this.length=Math.min(x,this.length),N!==0){var B=67108863^67108863>>>N<<N;this.words[this.length-1]&=B}return this._strip()},U.prototype.maskn=function(_){return this.clone().imaskn(_)},U.prototype.iaddn=function(_){return G(typeof _=="number"),G(_<67108864),_<0?this.isubn(-_):this.negative!==0?this.length===1&&(this.words[0]|0)<=_?(this.words[0]=_-(this.words[0]|0),this.negative=0,this):(this.negative=0,this.isubn(_),this.negative=1,this):this._iaddn(_)},U.prototype._iaddn=function(_){this.words[0]+=_;for(var N=0;N<this.length&&this.words[N]>=67108864;N++)this.words[N]-=67108864,N===this.length-1?this.words[N+1]=1:this.words[N+1]++;return this.length=Math.max(this.length,N+1),this},U.prototype.isubn=function(_){if(G(typeof _=="number"),G(_<67108864),_<0)return this.iaddn(-_);if(this.negative!==0)return this.negative=0,this.iaddn(_),this.negative=1,this;if(this.words[0]-=_,this.length===1&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var N=0;N<this.length&&this.words[N]<0;N++)this.words[N]+=67108864,this.words[N+1]-=1;return this._strip()},U.prototype.addn=function(_){return this.clone().iaddn(_)},U.prototype.subn=function(_){return this.clone().isubn(_)},U.prototype.iabs=function(){return this.negative=0,this},U.prototype.abs=function(){return this.clone().iabs()},U.prototype._ishlnsubmul=function(_,N,x){var B=_.length+x,y;this._expand(B);var w,p=0;for(y=0;y<_.length;y++){w=(this.words[y+x]|0)+p;var f=(_.words[y]|0)*N;w-=f&67108863,p=(w>>26)-(f/67108864|0),this.words[y+x]=w&67108863}for(;y<this.length-x;y++)w=(this.words[y+x]|0)+p,p=w>>26,this.words[y+x]=w&67108863;if(p===0)return this._strip();for(G(p===-1),p=0,y=0;y<this.length;y++)w=-(this.words[y]|0)+p,p=w>>26,this.words[y]=w&67108863;return this.negative=1,this._strip()},U.prototype._wordDiv=function(_,N){var x=this.length-_.length,B=this.clone(),y=_,w=y.words[y.length-1]|0,p=this._countBits(w);x=26-p,x!==0&&(y=y.ushln(x),B.iushln(x),w=y.words[y.length-1]|0);var f=B.length-y.length,c;if(N!=="mod"){c=new U(null),c.length=f+1,c.words=new Array(c.length);for(var h=0;h<c.length;h++)c.words[h]=0}var d=B.clone()._ishlnsubmul(y,1,f);d.negative===0&&(B=d,c&&(c.words[f]=1));for(var b=f-1;b>=0;b--){var l=(B.words[y.length+b]|0)*67108864+(B.words[y.length+b-1]|0);for(l=Math.min(l/w|0,67108863),B._ishlnsubmul(y,l,b);B.negative!==0;)l--,B.negative=0,B._ishlnsubmul(y,1,b),B.isZero()||(B.negative^=1);c&&(c.words[b]=l)}return c&&c._strip(),B._strip(),N!=="div"&&x!==0&&B.iushrn(x),{div:c||null,mod:B}},U.prototype.divmod=function(_,N,x){if(G(!_.isZero()),this.isZero())return{div:new U(0),mod:new U(0)};var B,y,w;return this.negative!==0&&_.negative===0?(w=this.neg().divmod(_,N),N!=="mod"&&(B=w.div.neg()),N!=="div"&&(y=w.mod.neg(),x&&y.negative!==0&&y.iadd(_)),{div:B,mod:y}):this.negative===0&&_.negative!==0?(w=this.divmod(_.neg(),N),N!=="mod"&&(B=w.div.neg()),{div:B,mod:w.mod}):(this.negative&_.negative)!==0?(w=this.neg().divmod(_.neg(),N),N!=="div"&&(y=w.mod.neg(),x&&y.negative!==0&&y.isub(_)),{div:w.div,mod:y}):_.length>this.length||this.cmp(_)<0?{div:new U(0),mod:this}:_.length===1?N==="div"?{div:this.divn(_.words[0]),mod:null}:N==="mod"?{div:null,mod:new U(this.modrn(_.words[0]))}:{div:this.divn(_.words[0]),mod:new U(this.modrn(_.words[0]))}:this._wordDiv(_,N)},U.prototype.div=function(_){return this.divmod(_,"div",!1).div},U.prototype.mod=function(_){return this.divmod(_,"mod",!1).mod},U.prototype.umod=function(_){return this.divmod(_,"mod",!0).mod},U.prototype.divRound=function(_){var N=this.divmod(_);if(N.mod.isZero())return N.div;var x=N.div.negative!==0?N.mod.isub(_):N.mod,B=_.ushrn(1),y=_.andln(1),w=x.cmp(B);return w<0||y===1&&w===0?N.div:N.div.negative!==0?N.div.isubn(1):N.div.iaddn(1)},U.prototype.modrn=function(_){var N=_<0;N&&(_=-_),G(_<=67108863);for(var x=(1<<26)%_,B=0,y=this.length-1;y>=0;y--)B=(x*B+(this.words[y]|0))%_;return N?-B:B},U.prototype.modn=function(_){return this.modrn(_)},U.prototype.idivn=function(_){var N=_<0;N&&(_=-_),G(_<=67108863);for(var x=0,B=this.length-1;B>=0;B--){var y=(this.words[B]|0)+x*67108864;this.words[B]=y/_|0,x=y%_}return this._strip(),N?this.ineg():this},U.prototype.divn=function(_){return this.clone().idivn(_)},U.prototype.egcd=function(_){G(_.negative===0),G(!_.isZero());var N=this,x=_.clone();N.negative!==0?N=N.umod(_):N=N.clone();for(var B=new U(1),y=new U(0),w=new U(0),p=new U(1),f=0;N.isEven()&&x.isEven();)N.iushrn(1),x.iushrn(1),++f;for(var c=x.clone(),h=N.clone();!N.isZero();){for(var d=0,b=1;(N.words[0]&b)===0&&d<26;++d,b<<=1);if(d>0)for(N.iushrn(d);d-- >0;)(B.isOdd()||y.isOdd())&&(B.iadd(c),y.isub(h)),B.iushrn(1),y.iushrn(1);for(var l=0,o=1;(x.words[0]&o)===0&&l<26;++l,o<<=1);if(l>0)for(x.iushrn(l);l-- >0;)(w.isOdd()||p.isOdd())&&(w.iadd(c),p.isub(h)),w.iushrn(1),p.iushrn(1);N.cmp(x)>=0?(N.isub(x),B.isub(w),y.isub(p)):(x.isub(N),w.isub(B),p.isub(y))}return{a:w,b:p,gcd:x.iushln(f)}},U.prototype._invmp=function(_){G(_.negative===0),G(!_.isZero());var N=this,x=_.clone();N.negative!==0?N=N.umod(_):N=N.clone();for(var B=new U(1),y=new U(0),w=x.clone();N.cmpn(1)>0&&x.cmpn(1)>0;){for(var p=0,f=1;(N.words[0]&f)===0&&p<26;++p,f<<=1);if(p>0)for(N.iushrn(p);p-- >0;)B.isOdd()&&B.iadd(w),B.iushrn(1);for(var c=0,h=1;(x.words[0]&h)===0&&c<26;++c,h<<=1);if(c>0)for(x.iushrn(c);c-- >0;)y.isOdd()&&y.iadd(w),y.iushrn(1);N.cmp(x)>=0?(N.isub(x),B.isub(y)):(x.isub(N),y.isub(B))}var d;return N.cmpn(1)===0?d=B:d=y,d.cmpn(0)<0&&d.iadd(_),d},U.prototype.gcd=function(_){if(this.isZero())return _.abs();if(_.isZero())return this.abs();var N=this.clone(),x=_.clone();N.negative=0,x.negative=0;for(var B=0;N.isEven()&&x.isEven();B++)N.iushrn(1),x.iushrn(1);do{for(;N.isEven();)N.iushrn(1);for(;x.isEven();)x.iushrn(1);var y=N.cmp(x);if(y<0){var w=N;N=x,x=w}else if(y===0||x.cmpn(1)===0)break;N.isub(x)}while(!0);return x.iushln(B)},U.prototype.invm=function(_){return this.egcd(_).a.umod(_)},U.prototype.isEven=function(){return(this.words[0]&1)===0},U.prototype.isOdd=function(){return(this.words[0]&1)===1},U.prototype.andln=function(_){return this.words[0]&_},U.prototype.bincn=function(_){G(typeof _=="number");var N=_%26,x=(_-N)/26,B=1<<N;if(this.length<=x)return this._expand(x+1),this.words[x]|=B,this;for(var y=B,w=x;y!==0&&w<this.length;w++){var p=this.words[w]|0;p+=y,y=p>>>26,p&=67108863,this.words[w]=p}return y!==0&&(this.words[w]=y,this.length++),this},U.prototype.isZero=function(){return this.length===1&&this.words[0]===0},U.prototype.cmpn=function(_){var N=_<0;if(this.negative!==0&&!N)return-1;if(this.negative===0&&N)return 1;this._strip();var x;if(this.length>1)x=1;else{N&&(_=-_),G(_<=67108863,"Number is too big");var B=this.words[0]|0;x=B===_?0:B<_?-1:1}return this.negative!==0?-x|0:x},U.prototype.cmp=function(_){if(this.negative!==0&&_.negative===0)return-1;if(this.negative===0&&_.negative!==0)return 1;var N=this.ucmp(_);return this.negative!==0?-N|0:N},U.prototype.ucmp=function(_){if(this.length>_.length)return 1;if(this.length<_.length)return-1;for(var N=0,x=this.length-1;x>=0;x--){var B=this.words[x]|0,y=_.words[x]|0;if(B!==y){B<y?N=-1:B>y&&(N=1);break}}return N},U.prototype.gtn=function(_){return this.cmpn(_)===1},U.prototype.gt=function(_){return this.cmp(_)===1},U.prototype.gten=function(_){return this.cmpn(_)>=0},U.prototype.gte=function(_){return this.cmp(_)>=0},U.prototype.ltn=function(_){return this.cmpn(_)===-1},U.prototype.lt=function(_){return this.cmp(_)===-1},U.prototype.lten=function(_){return this.cmpn(_)<=0},U.prototype.lte=function(_){return this.cmp(_)<=0},U.prototype.eqn=function(_){return this.cmpn(_)===0},U.prototype.eq=function(_){return this.cmp(_)===0},U.red=function(_){return new k(_)},U.prototype.toRed=function(_){return G(!this.red,"Already a number in reduction context"),G(this.negative===0,"red works only with positives"),_.convertTo(this)._forceRed(_)},U.prototype.fromRed=function(){return G(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},U.prototype._forceRed=function(_){return this.red=_,this},U.prototype.forceRed=function(_){return G(!this.red,"Already a number in reduction context"),this._forceRed(_)},U.prototype.redAdd=function(_){return G(this.red,"redAdd works only with red numbers"),this.red.add(this,_)},U.prototype.redIAdd=function(_){return G(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,_)},U.prototype.redSub=function(_){return G(this.red,"redSub works only with red numbers"),this.red.sub(this,_)},U.prototype.redISub=function(_){return G(this.red,"redISub works only with red numbers"),this.red.isub(this,_)},U.prototype.redShl=function(_){return G(this.red,"redShl works only with red numbers"),this.red.shl(this,_)},U.prototype.redMul=function(_){return G(this.red,"redMul works only with red numbers"),this.red._verify2(this,_),this.red.mul(this,_)},U.prototype.redIMul=function(_){return G(this.red,"redMul works only with red numbers"),this.red._verify2(this,_),this.red.imul(this,_)},U.prototype.redSqr=function(){return G(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},U.prototype.redISqr=function(){return G(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},U.prototype.redSqrt=function(){return G(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},U.prototype.redInvm=function(){return G(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},U.prototype.redNeg=function(){return G(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},U.prototype.redPow=function(_){return G(this.red&&!_.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,_)};var z={k256:null,p224:null,p192:null,p25519:null};function M(_,N){this.name=_,this.p=new U(N,16),this.n=this.p.bitLength(),this.k=new U(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}M.prototype._tmp=function(){var _=new U(null);return _.words=new Array(Math.ceil(this.n/13)),_},M.prototype.ireduce=function(_){var N=_,x;do this.split(N,this.tmp),N=this.imulK(N),N=N.iadd(this.tmp),x=N.bitLength();while(x>this.n);var B=x<this.n?-1:N.ucmp(this.p);return B===0?(N.words[0]=0,N.length=1):B>0?N.isub(this.p):N.strip!==void 0?N.strip():N._strip(),N},M.prototype.split=function(_,N){_.iushrn(this.n,0,N)},M.prototype.imulK=function(_){return _.imul(this.k)};function S(){M.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}V(S,M),S.prototype.split=function(_,N){for(var x=4194303,B=Math.min(_.length,9),y=0;y<B;y++)N.words[y]=_.words[y];if(N.length=B,_.length<=9){_.words[0]=0,_.length=1;return}var w=_.words[9];for(N.words[N.length++]=w&x,y=10;y<_.length;y++){var p=_.words[y]|0;_.words[y-10]=(p&x)<<4|w>>>22,w=p}w>>>=22,_.words[y-10]=w,w===0&&_.length>10?_.length-=10:_.length-=9},S.prototype.imulK=function(_){_.words[_.length]=0,_.words[_.length+1]=0,_.length+=2;for(var N=0,x=0;x<_.length;x++){var B=_.words[x]|0;N+=B*977,_.words[x]=N&67108863,N=B*64+(N/67108864|0)}return _.words[_.length-1]===0&&(_.length--,_.words[_.length-1]===0&&_.length--),_};function v(){M.call(this,"p224","ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001")}V(v,M);function q(){M.call(this,"p192","ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff")}V(q,M);function j(){M.call(this,"25519","7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed")}V(j,M),j.prototype.imulK=function(_){for(var N=0,x=0;x<_.length;x++){var B=(_.words[x]|0)*19+N,y=B&67108863;B>>>=26,_.words[x]=y,N=B}return N!==0&&(_.words[_.length++]=N),_},U._prime=function(_){if(z[_])return z[_];var N;if(_==="k256")N=new S;else if(_==="p224")N=new v;else if(_==="p192")N=new q;else if(_==="p25519")N=new j;else throw new Error("Unknown prime "+_);return z[_]=N,N};function k(_){if(typeof _=="string"){var N=U._prime(_);this.m=N.p,this.prime=N}else G(_.gtn(1),"modulus must be greater than 1"),this.m=_,this.prime=null}k.prototype._verify1=function(_){G(_.negative===0,"red works only with positives"),G(_.red,"red works only with red numbers")},k.prototype._verify2=function(_,N){G((_.negative|N.negative)===0,"red works only with positives"),G(_.red&&_.red===N.red,"red works only with red numbers")},k.prototype.imod=function(_){return this.prime?this.prime.ireduce(_)._forceRed(this):(J(_,_.umod(this.m)._forceRed(this)),_)},k.prototype.neg=function(_){return _.isZero()?_.clone():this.m.sub(_)._forceRed(this)},k.prototype.add=function(_,N){this._verify2(_,N);var x=_.add(N);return x.cmp(this.m)>=0&&x.isub(this.m),x._forceRed(this)},k.prototype.iadd=function(_,N){this._verify2(_,N);var x=_.iadd(N);return x.cmp(this.m)>=0&&x.isub(this.m),x},k.prototype.sub=function(_,N){this._verify2(_,N);var x=_.sub(N);return x.cmpn(0)<0&&x.iadd(this.m),x._forceRed(this)},k.prototype.isub=function(_,N){this._verify2(_,N);var x=_.isub(N);return x.cmpn(0)<0&&x.iadd(this.m),x},k.prototype.shl=function(_,N){return this._verify1(_),this.imod(_.ushln(N))},k.prototype.imul=function(_,N){return this._verify2(_,N),this.imod(_.imul(N))},k.prototype.mul=function(_,N){return this._verify2(_,N),this.imod(_.mul(N))},k.prototype.isqr=function(_){return this.imul(_,_.clone())},k.prototype.sqr=function(_){return this.mul(_,_)},k.prototype.sqrt=function(_){if(_.isZero())return _.clone();var N=this.m.andln(3);if(G(N%2===1),N===3){var x=this.m.add(new U(1)).iushrn(2);return this.pow(_,x)}for(var B=this.m.subn(1),y=0;!B.isZero()&&B.andln(1)===0;)y++,B.iushrn(1);G(!B.isZero());var w=new U(1).toRed(this),p=w.redNeg(),f=this.m.subn(1).iushrn(1),c=this.m.bitLength();for(c=new U(2*c*c).toRed(this);this.pow(c,f).cmp(p)!==0;)c.redIAdd(p);for(var h=this.pow(c,B),d=this.pow(_,B.addn(1).iushrn(1)),b=this.pow(_,B),l=y;b.cmp(w)!==0;){for(var o=b,u=0;o.cmp(w)!==0;u++)o=o.redSqr();G(u<l);var n=this.pow(h,new U(1).iushln(l-u-1));d=d.redMul(n),h=n.redSqr(),b=b.redMul(h),l=u}return d},k.prototype.invm=function(_){var N=_._invmp(this.m);return N.negative!==0?(N.negative=0,this.imod(N).redNeg()):this.imod(N)},k.prototype.pow=function(_,N){if(N.isZero())return new U(1).toRed(this);if(N.cmpn(1)===0)return _.clone();var x=4,B=new Array(1<<x);B[0]=new U(1).toRed(this),B[1]=_;for(var y=2;y<B.length;y++)B[y]=this.mul(B[y-1],_);var w=B[0],p=0,f=0,c=N.bitLength()%26;for(c===0&&(c=26),y=N.length-1;y>=0;y--){for(var h=N.words[y],d=c-1;d>=0;d--){var b=h>>d&1;if(w!==B[0]&&(w=this.sqr(w)),b===0&&p===0){f=0;continue}p<<=1,p|=b,f++,!(f!==x&&(y!==0||d!==0))&&(w=this.mul(w,B[p]),f=0,p=0)}c=26}return w},k.prototype.convertTo=function(_){var N=_.umod(this.m);return N===_?N.clone():N},k.prototype.convertFrom=function(_){var N=_.clone();return N.red=null,N},U.mont=function(_){return new g(_)};function g(_){k.call(this,_),this.shift=this.m.bitLength(),this.shift%26!==0&&(this.shift+=26-this.shift%26),this.r=new U(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)}V(g,k),g.prototype.convertTo=function(_){return this.imod(_.ushln(this.shift))},g.prototype.convertFrom=function(_){var N=this.imod(_.mul(this.rinv));return N.red=null,N},g.prototype.imul=function(_,N){if(_.isZero()||N.isZero())return _.words[0]=0,_.length=1,_;var x=_.imul(N),B=x.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),y=x.isub(B).iushrn(this.shift),w=y;return y.cmp(this.m)>=0?w=y.isub(this.m):y.cmpn(0)<0&&(w=y.iadd(this.m)),w._forceRed(this)},g.prototype.mul=function(_,N){if(_.isZero()||N.isZero())return new U(0)._forceRed(this);var x=_.mul(N),B=x.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),y=x.isub(B).iushrn(this.shift),w=y;return y.cmp(this.m)>=0?w=y.isub(this.m):y.cmpn(0)<0&&(w=y.iadd(this.m)),w._forceRed(this)},g.prototype.invm=function(_){var N=this.imod(_._invmp(this.m).mul(this.r2));return N._forceRed(this)}})(typeof Q>"u"||Q,$)}}),hQ=q$({"node_modules/browserify-rsa/index.js"($,Q){var Y=cQ(),Z=g$();function G(X){var K=V(X),I=K.toRed(Y.mont(X.modulus)).redPow(new Y(X.publicExponent)).fromRed();return{blinder:I,unblinder:K.invm(X.modulus)}}function V(X){var K=X.modulus.byteLength(),I;do I=new Y(Z(K));while(I.cmp(X.modulus)>=0||!I.umod(X.prime1)||!I.umod(X.prime2));return I}function U(X,K){var I=G(K),O=K.modulus.byteLength(),J=new Y(X).mul(I.blinder).umod(K.modulus),F=J.toRed(Y.mont(K.prime1)),A=J.toRed(Y.mont(K.prime2)),H=K.coefficient,W=K.prime1,E=K.prime2,T=F.redPow(K.exponent1).fromRed(),D=A.redPow(K.exponent2).fromRed(),C=T.isub(D).imul(H).umod(W).imul(E);return D.iadd(C).imul(I.unblinder).umod(K.modulus).toArrayLike(F$,"be",O)}U.getr=V,Q.exports=U}}),dQ=q$({"node_modules/elliptic/package.json"($,Q){Q.exports={name:"elliptic",version:"6.5.4",description:"EC cryptography",main:"lib/elliptic.js",files:["lib"],scripts:{lint:"eslint lib test","lint:fix":"npm run lint -- --fix",unit:"istanbul test _mocha --reporter=spec test/index.js",test:"npm run lint && npm run unit",version:"grunt dist && git add dist/"},repository:{type:"git",url:"git@github.com:indutny/elliptic"},keywords:["EC","Elliptic","curve","Cryptography"],author:"Fedor Indutny <fedor@indutny.com>",license:"MIT",bugs:{url:"https://github.com/indutny/elliptic/issues"},homepage:"https://github.com/indutny/elliptic",devDependencies:{brfs:"^2.0.2",coveralls:"^3.1.0",eslint:"^7.6.0",grunt:"^1.2.1","grunt-browserify":"^5.3.0","grunt-cli":"^1.3.2","grunt-contrib-connect":"^3.0.0","grunt-contrib-copy":"^1.0.0","grunt-contrib-uglify":"^5.0.0","grunt-mocha-istanbul":"^5.0.2","grunt-saucelabs":"^9.0.1",istanbul:"^0.4.5",mocha:"^8.0.1"},dependencies:{"bn.js":"^4.11.9",brorand:"^1.1.0","hash.js":"^1.0.0","hmac-drbg":"^1.0.1",inherits:"^2.0.4","minimalistic-assert":"^1.0.1","minimalistic-crypto-utils":"^1.0.1"}}}}),bQ=q$({"node_modules/elliptic/node_modules/bn.js/lib/bn.js"($,Q){(function(Y,Z){function G(j,k){if(!j)throw new Error(k||"Assertion failed")}function V(j,k){j.super_=k;var g=function(){};g.prototype=k.prototype,j.prototype=new g,j.prototype.constructor=j}function U(j,k,g){if(U.isBN(j))return j;this.negative=0,this.words=null,this.length=0,this.red=null,j!==null&&((k==="le"||k==="be")&&(g=k,k=10),this._init(j||0,k||10,g||"be"))}typeof Y=="object"?Y.exports=U:Z.BN=U,U.BN=U,U.wordSize=26;var X=F$;U.isBN=function(j){return j instanceof U?!0:j!==null&&typeof j=="object"&&j.constructor.wordSize===U.wordSize&&Array.isArray(j.words)},U.max=function(j,k){return j.cmp(k)>0?j:k},U.min=function(j,k){return j.cmp(k)<0?j:k},U.prototype._init=function(j,k,g){if(typeof j=="number")return this._initNumber(j,k,g);if(typeof j=="object")return this._initArray(j,k,g);k==="hex"&&(k=16),G(k===(k|0)&&k>=2&&k<=36),j=j.toString().replace(/\s+/g,"");var _=0;j[0]==="-"&&(_++,this.negative=1),_<j.length&&(k===16?this._parseHex(j,_,g):(this._parseBase(j,k,_),g==="le"&&this._initArray(this.toArray(),k,g)))},U.prototype._initNumber=function(j,k,g){j<0&&(this.negative=1,j=-j),j<67108864?(this.words=[j&67108863],this.length=1):j<4503599627370496?(this.words=[j&67108863,j/67108864&67108863],this.length=2):(G(j<9007199254740992),this.words=[j&67108863,j/67108864&67108863,1],this.length=3),g==="le"&&this._initArray(this.toArray(),k,g)},U.prototype._initArray=function(j,k,g){if(G(typeof j.length=="number"),j.length<=0)return this.words=[0],this.length=1,this;this.length=Math.ceil(j.length/3),this.words=new Array(this.length);for(var _=0;_<this.length;_++)this.words[_]=0;var N,x,B=0;if(g==="be")for(_=j.length-1,N=0;_>=0;_-=3)x=j[_]|j[_-1]<<8|j[_-2]<<16,this.words[N]|=x<<B&67108863,this.words[N+1]=x>>>26-B&67108863,B+=24,B>=26&&(B-=26,N++);else if(g==="le")for(_=0,N=0;_<j.length;_+=3)x=j[_]|j[_+1]<<8|j[_+2]<<16,this.words[N]|=x<<B&67108863,this.words[N+1]=x>>>26-B&67108863,B+=24,B>=26&&(B-=26,N++);return this.strip()};function K(j,k){var g=j.charCodeAt(k);return g>=65&&g<=70?g-55:g>=97&&g<=102?g-87:g-48&15}function I(j,k,g){var _=K(j,g);return g-1>=k&&(_|=K(j,g-1)<<4),_}U.prototype._parseHex=function(j,k,g){this.length=Math.ceil((j.length-k)/6),this.words=new Array(this.length);for(var _=0;_<this.length;_++)this.words[_]=0;var N=0,x=0,B;if(g==="be")for(_=j.length-1;_>=k;_-=2)B=I(j,k,_)<<N,this.words[x]|=B&67108863,N>=18?(N-=18,x+=1,this.words[x]|=B>>>26):N+=8;else{var y=j.length-k;for(_=y%2===0?k+1:k;_<j.length;_+=2)B=I(j,k,_)<<N,this.words[x]|=B&67108863,N>=18?(N-=18,x+=1,this.words[x]|=B>>>26):N+=8}this.strip()};function O(j,k,g,_){for(var N=0,x=Math.min(j.length,g),B=k;B<x;B++){var y=j.charCodeAt(B)-48;N*=_,y>=49?N+=y-49+10:y>=17?N+=y-17+10:N+=y}return N}U.prototype._parseBase=function(j,k,g){this.words=[0],this.length=1;for(var _=0,N=1;N<=67108863;N*=k)_++;_--,N=N/k|0;for(var x=j.length-g,B=x%_,y=Math.min(x,x-B)+g,w=0,p=g;p<y;p+=_)w=O(j,p,p+_,k),this.imuln(N),this.words[0]+w<67108864?this.words[0]+=w:this._iaddn(w);if(B!==0){var f=1;for(w=O(j,p,j.length,k),p=0;p<B;p++)f*=k;this.imuln(f),this.words[0]+w<67108864?this.words[0]+=w:this._iaddn(w)}this.strip()},U.prototype.copy=function(j){j.words=new Array(this.length);for(var k=0;k<this.length;k++)j.words[k]=this.words[k];j.length=this.length,j.negative=this.negative,j.red=this.red},U.prototype.clone=function(){var j=new U(null);return this.copy(j),j},U.prototype._expand=function(j){for(;this.length<j;)this.words[this.length++]=0;return this},U.prototype.strip=function(){for(;this.length>1&&this.words[this.length-1]===0;)this.length--;return this._normSign()},U.prototype._normSign=function(){return this.length===1&&this.words[0]===0&&(this.negative=0),this},U.prototype.inspect=function(){return(this.red?"<BN-R: ":"<BN: ")+this.toString(16)+">"};var J=["","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"],F=[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],A=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64000000,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,24300000,28629151,33554432,39135393,45435424,52521875,60466176];U.prototype.toString=function(j,k){j=j||10,k=k|0||1;var g;if(j===16||j==="hex"){g="";for(var _=0,N=0,x=0;x<this.length;x++){var B=this.words[x],y=((B<<_|N)&16777215).toString(16);N=B>>>24-_&16777215,N!==0||x!==this.length-1?g=J[6-y.length]+y+g:g=y+g,_+=2,_>=26&&(_-=26,x--)}for(N!==0&&(g=N.toString(16)+g);g.length%k!==0;)g="0"+g;return this.negative!==0&&(g="-"+g),g}if(j===(j|0)&&j>=2&&j<=36){var w=F[j],p=A[j];g="";var f=this.clone();for(f.negative=0;!f.isZero();){var c=f.modn(p).toString(j);f=f.idivn(p),f.isZero()?g=c+g:g=J[w-c.length]+c+g}for(this.isZero()&&(g="0"+g);g.length%k!==0;)g="0"+g;return this.negative!==0&&(g="-"+g),g}G(!1,"Base should be between 2 and 36")},U.prototype.toNumber=function(){var j=this.words[0];return this.length===2?j+=this.words[1]*67108864:this.length===3&&this.words[2]===1?j+=4503599627370496+this.words[1]*67108864:this.length>2&&G(!1,"Number can only safely store up to 53 bits"),this.negative!==0?-j:j},U.prototype.toJSON=function(){return this.toString(16)},U.prototype.toBuffer=function(j,k){return G(typeof X<"u"),this.toArrayLike(X,j,k)},U.prototype.toArray=function(j,k){return this.toArrayLike(Array,j,k)},U.prototype.toArrayLike=function(j,k,g){var _=this.byteLength(),N=g||Math.max(1,_);G(_<=N,"byte array longer than desired length"),G(N>0,"Requested array length <= 0"),this.strip();var x=k==="le",B=new j(N),y,w,p=this.clone();if(x){for(w=0;!p.isZero();w++)y=p.andln(255),p.iushrn(8),B[w]=y;for(;w<N;w++)B[w]=0}else{for(w=0;w<N-_;w++)B[w]=0;for(w=0;!p.isZero();w++)y=p.andln(255),p.iushrn(8),B[N-w-1]=y}return B},Math.clz32?U.prototype._countBits=function(j){return 32-Math.clz32(j)}:U.prototype._countBits=function(j){var k=j,g=0;return k>=4096&&(g+=13,k>>>=13),k>=64&&(g+=7,k>>>=7),k>=8&&(g+=4,k>>>=4),k>=2&&(g+=2,k>>>=2),g+k},U.prototype._zeroBits=function(j){if(j===0)return 26;var k=j,g=0;return(k&8191)===0&&(g+=13,k>>>=13),(k&127)===0&&(g+=7,k>>>=7),(k&15)===0&&(g+=4,k>>>=4),(k&3)===0&&(g+=2,k>>>=2),(k&1)===0&&g++,g},U.prototype.bitLength=function(){var j=this.words[this.length-1],k=this._countBits(j);return(this.length-1)*26+k};function H(j){for(var k=new Array(j.bitLength()),g=0;g<k.length;g++){var _=g/26|0,N=g%26;k[g]=(j.words[_]&1<<N)>>>N}return k}U.prototype.zeroBits=function(){if(this.isZero())return 0;for(var j=0,k=0;k<this.length;k++){var g=this._zeroBits(this.words[k]);if(j+=g,g!==26)break}return j},U.prototype.byteLength=function(){return Math.ceil(this.bitLength()/8)},U.prototype.toTwos=function(j){return this.negative!==0?this.abs().inotn(j).iaddn(1):this.clone()},U.prototype.fromTwos=function(j){return this.testn(j-1)?this.notn(j).iaddn(1).ineg():this.clone()},U.prototype.isNeg=function(){return this.negative!==0},U.prototype.neg=function(){return this.clone().ineg()},U.prototype.ineg=function(){return this.isZero()||(this.negative^=1),this},U.prototype.iuor=function(j){for(;this.length<j.length;)this.words[this.length++]=0;for(var k=0;k<j.length;k++)this.words[k]=this.words[k]|j.words[k];return this.strip()},U.prototype.ior=function(j){return G((this.negative|j.negative)===0),this.iuor(j)},U.prototype.or=function(j){return this.length>j.length?this.clone().ior(j):j.clone().ior(this)},U.prototype.uor=function(j){return this.length>j.length?this.clone().iuor(j):j.clone().iuor(this)},U.prototype.iuand=function(j){var k;this.length>j.length?k=j:k=this;for(var g=0;g<k.length;g++)this.words[g]=this.words[g]&j.words[g];return this.length=k.length,this.strip()},U.prototype.iand=function(j){return G((this.negative|j.negative)===0),this.iuand(j)},U.prototype.and=function(j){return this.length>j.length?this.clone().iand(j):j.clone().iand(this)},U.prototype.uand=function(j){return this.length>j.length?this.clone().iuand(j):j.clone().iuand(this)},U.prototype.iuxor=function(j){var k,g;this.length>j.length?(k=this,g=j):(k=j,g=this);for(var _=0;_<g.length;_++)this.words[_]=k.words[_]^g.words[_];if(this!==k)for(;_<k.length;_++)this.words[_]=k.words[_];return this.length=k.length,this.strip()},U.prototype.ixor=function(j){return G((this.negative|j.negative)===0),this.iuxor(j)},U.prototype.xor=function(j){return this.length>j.length?this.clone().ixor(j):j.clone().ixor(this)},U.prototype.uxor=function(j){return this.length>j.length?this.clone().iuxor(j):j.clone().iuxor(this)},U.prototype.inotn=function(j){G(typeof j=="number"&&j>=0);var k=Math.ceil(j/26)|0,g=j%26;this._expand(k),g>0&&k--;for(var _=0;_<k;_++)this.words[_]=~this.words[_]&67108863;return g>0&&(this.words[_]=~this.words[_]&67108863>>26-g),this.strip()},U.prototype.notn=function(j){return this.clone().inotn(j)},U.prototype.setn=function(j,k){G(typeof j=="number"&&j>=0);var g=j/26|0,_=j%26;return this._expand(g+1),k?this.words[g]=this.words[g]|1<<_:this.words[g]=this.words[g]&~(1<<_),this.strip()},U.prototype.iadd=function(j){var k;if(this.negative!==0&&j.negative===0)return this.negative=0,k=this.isub(j),this.negative^=1,this._normSign();if(this.negative===0&&j.negative!==0)return j.negative=0,k=this.isub(j),j.negative=1,k._normSign();var g,_;this.length>j.length?(g=this,_=j):(g=j,_=this);for(var N=0,x=0;x<_.length;x++)k=(g.words[x]|0)+(_.words[x]|0)+N,this.words[x]=k&67108863,N=k>>>26;for(;N!==0&&x<g.length;x++)k=(g.words[x]|0)+N,this.words[x]=k&67108863,N=k>>>26;if(this.length=g.length,N!==0)this.words[this.length]=N,this.length++;else if(g!==this)for(;x<g.length;x++)this.words[x]=g.words[x];return this},U.prototype.add=function(j){var k;return j.negative!==0&&this.negative===0?(j.negative=0,k=this.sub(j),j.negative^=1,k):j.negative===0&&this.negative!==0?(this.negative=0,k=j.sub(this),this.negative=1,k):this.length>j.length?this.clone().iadd(j):j.clone().iadd(this)},U.prototype.isub=function(j){if(j.negative!==0){j.negative=0;var k=this.iadd(j);return j.negative=1,k._normSign()}else if(this.negative!==0)return this.negative=0,this.iadd(j),this.negative=1,this._normSign();var g=this.cmp(j);if(g===0)return this.negative=0,this.length=1,this.words[0]=0,this;var _,N;g>0?(_=this,N=j):(_=j,N=this);for(var x=0,B=0;B<N.length;B++)k=(_.words[B]|0)-(N.words[B]|0)+x,x=k>>26,this.words[B]=k&67108863;for(;x!==0&&B<_.length;B++)k=(_.words[B]|0)+x,x=k>>26,this.words[B]=k&67108863;if(x===0&&B<_.length&&_!==this)for(;B<_.length;B++)this.words[B]=_.words[B];return this.length=Math.max(this.length,B),_!==this&&(this.negative=1),this.strip()},U.prototype.sub=function(j){return this.clone().isub(j)};function W(j,k,g){g.negative=k.negative^j.negative;var _=j.length+k.length|0;g.length=_,_=_-1|0;var N=j.words[0]|0,x=k.words[0]|0,B=N*x,y=B&67108863,w=B/67108864|0;g.words[0]=y;for(var p=1;p<_;p++){for(var f=w>>>26,c=w&67108863,h=Math.min(p,k.length-1),d=Math.max(0,p-j.length+1);d<=h;d++){var b=p-d|0;N=j.words[b]|0,x=k.words[d]|0,B=N*x+c,f+=B/67108864|0,c=B&67108863}g.words[p]=c|0,w=f|0}return w!==0?g.words[p]=w|0:g.length--,g.strip()}var E=function(j,k,g){var _=j.words,N=k.words,x=g.words,B=0,y,w,p,f=_[0]|0,c=f&8191,h=f>>>13,d=_[1]|0,b=d&8191,l=d>>>13,o=_[2]|0,u=o&8191,n=o>>>13,s=_[3]|0,t=s&8191,m=s>>>13,a=_[4]|0,e=a&8191,r=a>>>13,i=_[5]|0,$0=i&8191,Q0=i>>>13,Y0=_[6]|0,Z0=Y0&8191,G0=Y0>>>13,V0=_[7]|0,U0=V0&8191,X0=V0>>>13,K0=_[8]|0,I0=K0&8191,O0=K0>>>13,J0=_[9]|0,F0=J0&8191,A0=J0>>>13,H0=N[0]|0,W0=H0&8191,E0=H0>>>13,T0=N[1]|0,D0=T0&8191,C0=T0>>>13,L0=N[2]|0,R0=L0&8191,P0=L0>>>13,z0=N[3]|0,M0=z0&8191,S0=z0>>>13,v0=N[4]|0,q0=v0&8191,j0=v0>>>13,k0=N[5]|0,g0=k0&8191,_0=k0>>>13,N0=N[6]|0,x0=N0&8191,B0=N0>>>13,y0=N[7]|0,w0=y0&8191,p0=y0>>>13,f0=N[8]|0,c0=f0&8191,h0=f0>>>13,d0=N[9]|0,b0=d0&8191,l0=d0>>>13;g.negative=j.negative^k.negative,g.length=19,y=Math.imul(c,W0),w=Math.imul(c,E0),w=w+Math.imul(h,W0)|0,p=Math.imul(h,E0);var o0=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(o0>>>26)|0,o0&=67108863,y=Math.imul(b,W0),w=Math.imul(b,E0),w=w+Math.imul(l,W0)|0,p=Math.imul(l,E0),y=y+Math.imul(c,D0)|0,w=w+Math.imul(c,C0)|0,w=w+Math.imul(h,D0)|0,p=p+Math.imul(h,C0)|0;var u0=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(u0>>>26)|0,u0&=67108863,y=Math.imul(u,W0),w=Math.imul(u,E0),w=w+Math.imul(n,W0)|0,p=Math.imul(n,E0),y=y+Math.imul(b,D0)|0,w=w+Math.imul(b,C0)|0,w=w+Math.imul(l,D0)|0,p=p+Math.imul(l,C0)|0,y=y+Math.imul(c,R0)|0,w=w+Math.imul(c,P0)|0,w=w+Math.imul(h,R0)|0,p=p+Math.imul(h,P0)|0;var n0=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(n0>>>26)|0,n0&=67108863,y=Math.imul(t,W0),w=Math.imul(t,E0),w=w+Math.imul(m,W0)|0,p=Math.imul(m,E0),y=y+Math.imul(u,D0)|0,w=w+Math.imul(u,C0)|0,w=w+Math.imul(n,D0)|0,p=p+Math.imul(n,C0)|0,y=y+Math.imul(b,R0)|0,w=w+Math.imul(b,P0)|0,w=w+Math.imul(l,R0)|0,p=p+Math.imul(l,P0)|0,y=y+Math.imul(c,M0)|0,w=w+Math.imul(c,S0)|0,w=w+Math.imul(h,M0)|0,p=p+Math.imul(h,S0)|0;var s0=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(s0>>>26)|0,s0&=67108863,y=Math.imul(e,W0),w=Math.imul(e,E0),w=w+Math.imul(r,W0)|0,p=Math.imul(r,E0),y=y+Math.imul(t,D0)|0,w=w+Math.imul(t,C0)|0,w=w+Math.imul(m,D0)|0,p=p+Math.imul(m,C0)|0,y=y+Math.imul(u,R0)|0,w=w+Math.imul(u,P0)|0,w=w+Math.imul(n,R0)|0,p=p+Math.imul(n,P0)|0,y=y+Math.imul(b,M0)|0,w=w+Math.imul(b,S0)|0,w=w+Math.imul(l,M0)|0,p=p+Math.imul(l,S0)|0,y=y+Math.imul(c,q0)|0,w=w+Math.imul(c,j0)|0,w=w+Math.imul(h,q0)|0,p=p+Math.imul(h,j0)|0;var t0=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(t0>>>26)|0,t0&=67108863,y=Math.imul($0,W0),w=Math.imul($0,E0),w=w+Math.imul(Q0,W0)|0,p=Math.imul(Q0,E0),y=y+Math.imul(e,D0)|0,w=w+Math.imul(e,C0)|0,w=w+Math.imul(r,D0)|0,p=p+Math.imul(r,C0)|0,y=y+Math.imul(t,R0)|0,w=w+Math.imul(t,P0)|0,w=w+Math.imul(m,R0)|0,p=p+Math.imul(m,P0)|0,y=y+Math.imul(u,M0)|0,w=w+Math.imul(u,S0)|0,w=w+Math.imul(n,M0)|0,p=p+Math.imul(n,S0)|0,y=y+Math.imul(b,q0)|0,w=w+Math.imul(b,j0)|0,w=w+Math.imul(l,q0)|0,p=p+Math.imul(l,j0)|0,y=y+Math.imul(c,g0)|0,w=w+Math.imul(c,_0)|0,w=w+Math.imul(h,g0)|0,p=p+Math.imul(h,_0)|0;var m0=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(m0>>>26)|0,m0&=67108863,y=Math.imul(Z0,W0),w=Math.imul(Z0,E0),w=w+Math.imul(G0,W0)|0,p=Math.imul(G0,E0),y=y+Math.imul($0,D0)|0,w=w+Math.imul($0,C0)|0,w=w+Math.imul(Q0,D0)|0,p=p+Math.imul(Q0,C0)|0,y=y+Math.imul(e,R0)|0,w=w+Math.imul(e,P0)|0,w=w+Math.imul(r,R0)|0,p=p+Math.imul(r,P0)|0,y=y+Math.imul(t,M0)|0,w=w+Math.imul(t,S0)|0,w=w+Math.imul(m,M0)|0,p=p+Math.imul(m,S0)|0,y=y+Math.imul(u,q0)|0,w=w+Math.imul(u,j0)|0,w=w+Math.imul(n,q0)|0,p=p+Math.imul(n,j0)|0,y=y+Math.imul(b,g0)|0,w=w+Math.imul(b,_0)|0,w=w+Math.imul(l,g0)|0,p=p+Math.imul(l,_0)|0,y=y+Math.imul(c,x0)|0,w=w+Math.imul(c,B0)|0,w=w+Math.imul(h,x0)|0,p=p+Math.imul(h,B0)|0;var a0=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(a0>>>26)|0,a0&=67108863,y=Math.imul(U0,W0),w=Math.imul(U0,E0),w=w+Math.imul(X0,W0)|0,p=Math.imul(X0,E0),y=y+Math.imul(Z0,D0)|0,w=w+Math.imul(Z0,C0)|0,w=w+Math.imul(G0,D0)|0,p=p+Math.imul(G0,C0)|0,y=y+Math.imul($0,R0)|0,w=w+Math.imul($0,P0)|0,w=w+Math.imul(Q0,R0)|0,p=p+Math.imul(Q0,P0)|0,y=y+Math.imul(e,M0)|0,w=w+Math.imul(e,S0)|0,w=w+Math.imul(r,M0)|0,p=p+Math.imul(r,S0)|0,y=y+Math.imul(t,q0)|0,w=w+Math.imul(t,j0)|0,w=w+Math.imul(m,q0)|0,p=p+Math.imul(m,j0)|0,y=y+Math.imul(u,g0)|0,w=w+Math.imul(u,_0)|0,w=w+Math.imul(n,g0)|0,p=p+Math.imul(n,_0)|0,y=y+Math.imul(b,x0)|0,w=w+Math.imul(b,B0)|0,w=w+Math.imul(l,x0)|0,p=p+Math.imul(l,B0)|0,y=y+Math.imul(c,w0)|0,w=w+Math.imul(c,p0)|0,w=w+Math.imul(h,w0)|0,p=p+Math.imul(h,p0)|0;var e0=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(e0>>>26)|0,e0&=67108863,y=Math.imul(I0,W0),w=Math.imul(I0,E0),w=w+Math.imul(O0,W0)|0,p=Math.imul(O0,E0),y=y+Math.imul(U0,D0)|0,w=w+Math.imul(U0,C0)|0,w=w+Math.imul(X0,D0)|0,p=p+Math.imul(X0,C0)|0,y=y+Math.imul(Z0,R0)|0,w=w+Math.imul(Z0,P0)|0,w=w+Math.imul(G0,R0)|0,p=p+Math.imul(G0,P0)|0,y=y+Math.imul($0,M0)|0,w=w+Math.imul($0,S0)|0,w=w+Math.imul(Q0,M0)|0,p=p+Math.imul(Q0,S0)|0,y=y+Math.imul(e,q0)|0,w=w+Math.imul(e,j0)|0,w=w+Math.imul(r,q0)|0,p=p+Math.imul(r,j0)|0,y=y+Math.imul(t,g0)|0,w=w+Math.imul(t,_0)|0,w=w+Math.imul(m,g0)|0,p=p+Math.imul(m,_0)|0,y=y+Math.imul(u,x0)|0,w=w+Math.imul(u,B0)|0,w=w+Math.imul(n,x0)|0,p=p+Math.imul(n,B0)|0,y=y+Math.imul(b,w0)|0,w=w+Math.imul(b,p0)|0,w=w+Math.imul(l,w0)|0,p=p+Math.imul(l,p0)|0,y=y+Math.imul(c,c0)|0,w=w+Math.imul(c,h0)|0,w=w+Math.imul(h,c0)|0,p=p+Math.imul(h,h0)|0;var r0=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(r0>>>26)|0,r0&=67108863,y=Math.imul(F0,W0),w=Math.imul(F0,E0),w=w+Math.imul(A0,W0)|0,p=Math.imul(A0,E0),y=y+Math.imul(I0,D0)|0,w=w+Math.imul(I0,C0)|0,w=w+Math.imul(O0,D0)|0,p=p+Math.imul(O0,C0)|0,y=y+Math.imul(U0,R0)|0,w=w+Math.imul(U0,P0)|0,w=w+Math.imul(X0,R0)|0,p=p+Math.imul(X0,P0)|0,y=y+Math.imul(Z0,M0)|0,w=w+Math.imul(Z0,S0)|0,w=w+Math.imul(G0,M0)|0,p=p+Math.imul(G0,S0)|0,y=y+Math.imul($0,q0)|0,w=w+Math.imul($0,j0)|0,w=w+Math.imul(Q0,q0)|0,p=p+Math.imul(Q0,j0)|0,y=y+Math.imul(e,g0)|0,w=w+Math.imul(e,_0)|0,w=w+Math.imul(r,g0)|0,p=p+Math.imul(r,_0)|0,y=y+Math.imul(t,x0)|0,w=w+Math.imul(t,B0)|0,w=w+Math.imul(m,x0)|0,p=p+Math.imul(m,B0)|0,y=y+Math.imul(u,w0)|0,w=w+Math.imul(u,p0)|0,w=w+Math.imul(n,w0)|0,p=p+Math.imul(n,p0)|0,y=y+Math.imul(b,c0)|0,w=w+Math.imul(b,h0)|0,w=w+Math.imul(l,c0)|0,p=p+Math.imul(l,h0)|0,y=y+Math.imul(c,b0)|0,w=w+Math.imul(c,l0)|0,w=w+Math.imul(h,b0)|0,p=p+Math.imul(h,l0)|0;var i0=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(i0>>>26)|0,i0&=67108863,y=Math.imul(F0,D0),w=Math.imul(F0,C0),w=w+Math.imul(A0,D0)|0,p=Math.imul(A0,C0),y=y+Math.imul(I0,R0)|0,w=w+Math.imul(I0,P0)|0,w=w+Math.imul(O0,R0)|0,p=p+Math.imul(O0,P0)|0,y=y+Math.imul(U0,M0)|0,w=w+Math.imul(U0,S0)|0,w=w+Math.imul(X0,M0)|0,p=p+Math.imul(X0,S0)|0,y=y+Math.imul(Z0,q0)|0,w=w+Math.imul(Z0,j0)|0,w=w+Math.imul(G0,q0)|0,p=p+Math.imul(G0,j0)|0,y=y+Math.imul($0,g0)|0,w=w+Math.imul($0,_0)|0,w=w+Math.imul(Q0,g0)|0,p=p+Math.imul(Q0,_0)|0,y=y+Math.imul(e,x0)|0,w=w+Math.imul(e,B0)|0,w=w+Math.imul(r,x0)|0,p=p+Math.imul(r,B0)|0,y=y+Math.imul(t,w0)|0,w=w+Math.imul(t,p0)|0,w=w+Math.imul(m,w0)|0,p=p+Math.imul(m,p0)|0,y=y+Math.imul(u,c0)|0,w=w+Math.imul(u,h0)|0,w=w+Math.imul(n,c0)|0,p=p+Math.imul(n,h0)|0,y=y+Math.imul(b,b0)|0,w=w+Math.imul(b,l0)|0,w=w+Math.imul(l,b0)|0,p=p+Math.imul(l,l0)|0;var $$=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+($$>>>26)|0,$$&=67108863,y=Math.imul(F0,R0),w=Math.imul(F0,P0),w=w+Math.imul(A0,R0)|0,p=Math.imul(A0,P0),y=y+Math.imul(I0,M0)|0,w=w+Math.imul(I0,S0)|0,w=w+Math.imul(O0,M0)|0,p=p+Math.imul(O0,S0)|0,y=y+Math.imul(U0,q0)|0,w=w+Math.imul(U0,j0)|0,w=w+Math.imul(X0,q0)|0,p=p+Math.imul(X0,j0)|0,y=y+Math.imul(Z0,g0)|0,w=w+Math.imul(Z0,_0)|0,w=w+Math.imul(G0,g0)|0,p=p+Math.imul(G0,_0)|0,y=y+Math.imul($0,x0)|0,w=w+Math.imul($0,B0)|0,w=w+Math.imul(Q0,x0)|0,p=p+Math.imul(Q0,B0)|0,y=y+Math.imul(e,w0)|0,w=w+Math.imul(e,p0)|0,w=w+Math.imul(r,w0)|0,p=p+Math.imul(r,p0)|0,y=y+Math.imul(t,c0)|0,w=w+Math.imul(t,h0)|0,w=w+Math.imul(m,c0)|0,p=p+Math.imul(m,h0)|0,y=y+Math.imul(u,b0)|0,w=w+Math.imul(u,l0)|0,w=w+Math.imul(n,b0)|0,p=p+Math.imul(n,l0)|0;var Q$=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(Q$>>>26)|0,Q$&=67108863,y=Math.imul(F0,M0),w=Math.imul(F0,S0),w=w+Math.imul(A0,M0)|0,p=Math.imul(A0,S0),y=y+Math.imul(I0,q0)|0,w=w+Math.imul(I0,j0)|0,w=w+Math.imul(O0,q0)|0,p=p+Math.imul(O0,j0)|0,y=y+Math.imul(U0,g0)|0,w=w+Math.imul(U0,_0)|0,w=w+Math.imul(X0,g0)|0,p=p+Math.imul(X0,_0)|0,y=y+Math.imul(Z0,x0)|0,w=w+Math.imul(Z0,B0)|0,w=w+Math.imul(G0,x0)|0,p=p+Math.imul(G0,B0)|0,y=y+Math.imul($0,w0)|0,w=w+Math.imul($0,p0)|0,w=w+Math.imul(Q0,w0)|0,p=p+Math.imul(Q0,p0)|0,y=y+Math.imul(e,c0)|0,w=w+Math.imul(e,h0)|0,w=w+Math.imul(r,c0)|0,p=p+Math.imul(r,h0)|0,y=y+Math.imul(t,b0)|0,w=w+Math.imul(t,l0)|0,w=w+Math.imul(m,b0)|0,p=p+Math.imul(m,l0)|0;var Y$=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(Y$>>>26)|0,Y$&=67108863,y=Math.imul(F0,q0),w=Math.imul(F0,j0),w=w+Math.imul(A0,q0)|0,p=Math.imul(A0,j0),y=y+Math.imul(I0,g0)|0,w=w+Math.imul(I0,_0)|0,w=w+Math.imul(O0,g0)|0,p=p+Math.imul(O0,_0)|0,y=y+Math.imul(U0,x0)|0,w=w+Math.imul(U0,B0)|0,w=w+Math.imul(X0,x0)|0,p=p+Math.imul(X0,B0)|0,y=y+Math.imul(Z0,w0)|0,w=w+Math.imul(Z0,p0)|0,w=w+Math.imul(G0,w0)|0,p=p+Math.imul(G0,p0)|0,y=y+Math.imul($0,c0)|0,w=w+Math.imul($0,h0)|0,w=w+Math.imul(Q0,c0)|0,p=p+Math.imul(Q0,h0)|0,y=y+Math.imul(e,b0)|0,w=w+Math.imul(e,l0)|0,w=w+Math.imul(r,b0)|0,p=p+Math.imul(r,l0)|0;var Z$=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(Z$>>>26)|0,Z$&=67108863,y=Math.imul(F0,g0),w=Math.imul(F0,_0),w=w+Math.imul(A0,g0)|0,p=Math.imul(A0,_0),y=y+Math.imul(I0,x0)|0,w=w+Math.imul(I0,B0)|0,w=w+Math.imul(O0,x0)|0,p=p+Math.imul(O0,B0)|0,y=y+Math.imul(U0,w0)|0,w=w+Math.imul(U0,p0)|0,w=w+Math.imul(X0,w0)|0,p=p+Math.imul(X0,p0)|0,y=y+Math.imul(Z0,c0)|0,w=w+Math.imul(Z0,h0)|0,w=w+Math.imul(G0,c0)|0,p=p+Math.imul(G0,h0)|0,y=y+Math.imul($0,b0)|0,w=w+Math.imul($0,l0)|0,w=w+Math.imul(Q0,b0)|0,p=p+Math.imul(Q0,l0)|0;var G$=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(G$>>>26)|0,G$&=67108863,y=Math.imul(F0,x0),w=Math.imul(F0,B0),w=w+Math.imul(A0,x0)|0,p=Math.imul(A0,B0),y=y+Math.imul(I0,w0)|0,w=w+Math.imul(I0,p0)|0,w=w+Math.imul(O0,w0)|0,p=p+Math.imul(O0,p0)|0,y=y+Math.imul(U0,c0)|0,w=w+Math.imul(U0,h0)|0,w=w+Math.imul(X0,c0)|0,p=p+Math.imul(X0,h0)|0,y=y+Math.imul(Z0,b0)|0,w=w+Math.imul(Z0,l0)|0,w=w+Math.imul(G0,b0)|0,p=p+Math.imul(G0,l0)|0;var V$=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(V$>>>26)|0,V$&=67108863,y=Math.imul(F0,w0),w=Math.imul(F0,p0),w=w+Math.imul(A0,w0)|0,p=Math.imul(A0,p0),y=y+Math.imul(I0,c0)|0,w=w+Math.imul(I0,h0)|0,w=w+Math.imul(O0,c0)|0,p=p+Math.imul(O0,h0)|0,y=y+Math.imul(U0,b0)|0,w=w+Math.imul(U0,l0)|0,w=w+Math.imul(X0,b0)|0,p=p+Math.imul(X0,l0)|0;var U$=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(U$>>>26)|0,U$&=67108863,y=Math.imul(F0,c0),w=Math.imul(F0,h0),w=w+Math.imul(A0,c0)|0,p=Math.imul(A0,h0),y=y+Math.imul(I0,b0)|0,w=w+Math.imul(I0,l0)|0,w=w+Math.imul(O0,b0)|0,p=p+Math.imul(O0,l0)|0;var X$=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(X$>>>26)|0,X$&=67108863,y=Math.imul(F0,b0),w=Math.imul(F0,l0),w=w+Math.imul(A0,b0)|0,p=Math.imul(A0,l0);var K$=(B+y|0)+((w&8191)<<13)|0;return B=(p+(w>>>13)|0)+(K$>>>26)|0,K$&=67108863,x[0]=o0,x[1]=u0,x[2]=n0,x[3]=s0,x[4]=t0,x[5]=m0,x[6]=a0,x[7]=e0,x[8]=r0,x[9]=i0,x[10]=$$,x[11]=Q$,x[12]=Y$,x[13]=Z$,x[14]=G$,x[15]=V$,x[16]=U$,x[17]=X$,x[18]=K$,B!==0&&(x[19]=B,g.length++),g};Math.imul||(E=W);function T(j,k,g){g.negative=k.negative^j.negative,g.length=j.length+k.length;for(var _=0,N=0,x=0;x<g.length-1;x++){var B=N;N=0;for(var y=_&67108863,w=Math.min(x,k.length-1),p=Math.max(0,x-j.length+1);p<=w;p++){var f=x-p,c=j.words[f]|0,h=k.words[p]|0,d=c*h,b=d&67108863;B=B+(d/67108864|0)|0,b=b+y|0,y=b&67108863,B=B+(b>>>26)|0,N+=B>>>26,B&=67108863}g.words[x]=y,_=B,B=N}return _!==0?g.words[x]=_:g.length--,g.strip()}function D(j,k,g){var _=new C;return _.mulp(j,k,g)}U.prototype.mulTo=function(j,k){var g,_=this.length+j.length;return this.length===10&&j.length===10?g=E(this,j,k):_<63?g=W(this,j,k):_<1024?g=T(this,j,k):g=D(this,j,k),g};function C(j,k){this.x=j,this.y=k}C.prototype.makeRBT=function(j){for(var k=new Array(j),g=U.prototype._countBits(j)-1,_=0;_<j;_++)k[_]=this.revBin(_,g,j);return k},C.prototype.revBin=function(j,k,g){if(j===0||j===g-1)return j;for(var _=0,N=0;N<k;N++)_|=(j&1)<<k-N-1,j>>=1;return _},C.prototype.permute=function(j,k,g,_,N,x){for(var B=0;B<x;B++)_[B]=k[j[B]],N[B]=g[j[B]]},C.prototype.transform=function(j,k,g,_,N,x){this.permute(x,j,k,g,_,N);for(var B=1;B<N;B<<=1)for(var y=B<<1,w=Math.cos(2*Math.PI/y),p=Math.sin(2*Math.PI/y),f=0;f<N;f+=y)for(var c=w,h=p,d=0;d<B;d++){var b=g[f+d],l=_[f+d],o=g[f+d+B],u=_[f+d+B],n=c*o-h*u;u=c*u+h*o,o=n,g[f+d]=b+o,_[f+d]=l+u,g[f+d+B]=b-o,_[f+d+B]=l-u,d!==y&&(n=w*c-p*h,h=w*h+p*c,c=n)}},C.prototype.guessLen13b=function(j,k){var g=Math.max(k,j)|1,_=g&1,N=0;for(g=g/2|0;g;g=g>>>1)N++;return 1<<N+1+_},C.prototype.conjugate=function(j,k,g){if(!(g<=1))for(var _=0;_<g/2;_++){var N=j[_];j[_]=j[g-_-1],j[g-_-1]=N,N=k[_],k[_]=-k[g-_-1],k[g-_-1]=-N}},C.prototype.normalize13b=function(j,k){for(var g=0,_=0;_<k/2;_++){var N=Math.round(j[2*_+1]/k)*8192+Math.round(j[2*_]/k)+g;j[_]=N&67108863,N<67108864?g=0:g=N/67108864|0}return j},C.prototype.convert13b=function(j,k,g,_){for(var N=0,x=0;x<k;x++)N=N+(j[x]|0),g[2*x]=N&8191,N=N>>>13,g[2*x+1]=N&8191,N=N>>>13;for(x=2*k;x<_;++x)g[x]=0;G(N===0),G((N&-8192)===0)},C.prototype.stub=function(j){for(var k=new Array(j),g=0;g<j;g++)k[g]=0;return k},C.prototype.mulp=function(j,k,g){var _=2*this.guessLen13b(j.length,k.length),N=this.makeRBT(_),x=this.stub(_),B=new Array(_),y=new Array(_),w=new Array(_),p=new Array(_),f=new Array(_),c=new Array(_),h=g.words;h.length=_,this.convert13b(j.words,j.length,B,_),this.convert13b(k.words,k.length,p,_),this.transform(B,x,y,w,_,N),this.transform(p,x,f,c,_,N);for(var d=0;d<_;d++){var b=y[d]*f[d]-w[d]*c[d];w[d]=y[d]*c[d]+w[d]*f[d],y[d]=b}return this.conjugate(y,w,_),this.transform(y,w,h,x,_,N),this.conjugate(h,x,_),this.normalize13b(h,_),g.negative=j.negative^k.negative,g.length=j.length+k.length,g.strip()},U.prototype.mul=function(j){var k=new U(null);return k.words=new Array(this.length+j.length),this.mulTo(j,k)},U.prototype.mulf=function(j){var k=new U(null);return k.words=new Array(this.length+j.length),D(this,j,k)},U.prototype.imul=function(j){return this.clone().mulTo(j,this)},U.prototype.imuln=function(j){G(typeof j=="number"),G(j<67108864);for(var k=0,g=0;g<this.length;g++){var _=(this.words[g]|0)*j,N=(_&67108863)+(k&67108863);k>>=26,k+=_/67108864|0,k+=N>>>26,this.words[g]=N&67108863}return k!==0&&(this.words[g]=k,this.length++),this},U.prototype.muln=function(j){return this.clone().imuln(j)},U.prototype.sqr=function(){return this.mul(this)},U.prototype.isqr=function(){return this.imul(this.clone())},U.prototype.pow=function(j){var k=H(j);if(k.length===0)return new U(1);for(var g=this,_=0;_<k.length&&k[_]===0;_++,g=g.sqr());if(++_<k.length)for(var N=g.sqr();_<k.length;_++,N=N.sqr())k[_]!==0&&(g=g.mul(N));return g},U.prototype.iushln=function(j){G(typeof j=="number"&&j>=0);var k=j%26,g=(j-k)/26,_=67108863>>>26-k<<26-k,N;if(k!==0){var x=0;for(N=0;N<this.length;N++){var B=this.words[N]&_,y=(this.words[N]|0)-B<<k;this.words[N]=y|x,x=B>>>26-k}x&&(this.words[N]=x,this.length++)}if(g!==0){for(N=this.length-1;N>=0;N--)this.words[N+g]=this.words[N];for(N=0;N<g;N++)this.words[N]=0;this.length+=g}return this.strip()},U.prototype.ishln=function(j){return G(this.negative===0),this.iushln(j)},U.prototype.iushrn=function(j,k,g){G(typeof j=="number"&&j>=0);var _;k?_=(k-k%26)/26:_=0;var N=j%26,x=Math.min((j-N)/26,this.length),B=67108863^67108863>>>N<<N,y=g;if(_-=x,_=Math.max(0,_),y){for(var w=0;w<x;w++)y.words[w]=this.words[w];y.length=x}if(x!==0)if(this.length>x)for(this.length-=x,w=0;w<this.length;w++)this.words[w]=this.words[w+x];else this.words[0]=0,this.length=1;var p=0;for(w=this.length-1;w>=0&&(p!==0||w>=_);w--){var f=this.words[w]|0;this.words[w]=p<<26-N|f>>>N,p=f&B}return y&&p!==0&&(y.words[y.length++]=p),this.length===0&&(this.words[0]=0,this.length=1),this.strip()},U.prototype.ishrn=function(j,k,g){return G(this.negative===0),this.iushrn(j,k,g)},U.prototype.shln=function(j){return this.clone().ishln(j)},U.prototype.ushln=function(j){return this.clone().iushln(j)},U.prototype.shrn=function(j){return this.clone().ishrn(j)},U.prototype.ushrn=function(j){return this.clone().iushrn(j)},U.prototype.testn=function(j){G(typeof j=="number"&&j>=0);var k=j%26,g=(j-k)/26,_=1<<k;if(this.length<=g)return!1;var N=this.words[g];return!!(N&_)},U.prototype.imaskn=function(j){G(typeof j=="number"&&j>=0);var k=j%26,g=(j-k)/26;if(G(this.negative===0,"imaskn works only with positive numbers"),this.length<=g)return this;if(k!==0&&g++,this.length=Math.min(g,this.length),k!==0){var _=67108863^67108863>>>k<<k;this.words[this.length-1]&=_}return this.strip()},U.prototype.maskn=function(j){return this.clone().imaskn(j)},U.prototype.iaddn=function(j){return G(typeof j=="number"),G(j<67108864),j<0?this.isubn(-j):this.negative!==0?this.length===1&&(this.words[0]|0)<j?(this.words[0]=j-(this.words[0]|0),this.negative=0,this):(this.negative=0,this.isubn(j),this.negative=1,this):this._iaddn(j)},U.prototype._iaddn=function(j){this.words[0]+=j;for(var k=0;k<this.length&&this.words[k]>=67108864;k++)this.words[k]-=67108864,k===this.length-1?this.words[k+1]=1:this.words[k+1]++;return this.length=Math.max(this.length,k+1),this},U.prototype.isubn=function(j){if(G(typeof j=="number"),G(j<67108864),j<0)return this.iaddn(-j);if(this.negative!==0)return this.negative=0,this.iaddn(j),this.negative=1,this;if(this.words[0]-=j,this.length===1&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var k=0;k<this.length&&this.words[k]<0;k++)this.words[k]+=67108864,this.words[k+1]-=1;return this.strip()},U.prototype.addn=function(j){return this.clone().iaddn(j)},U.prototype.subn=function(j){return this.clone().isubn(j)},U.prototype.iabs=function(){return this.negative=0,this},U.prototype.abs=function(){return this.clone().iabs()},U.prototype._ishlnsubmul=function(j,k,g){var _=j.length+g,N;this._expand(_);var x,B=0;for(N=0;N<j.length;N++){x=(this.words[N+g]|0)+B;var y=(j.words[N]|0)*k;x-=y&67108863,B=(x>>26)-(y/67108864|0),this.words[N+g]=x&67108863}for(;N<this.length-g;N++)x=(this.words[N+g]|0)+B,B=x>>26,this.words[N+g]=x&67108863;if(B===0)return this.strip();for(G(B===-1),B=0,N=0;N<this.length;N++)x=-(this.words[N]|0)+B,B=x>>26,this.words[N]=x&67108863;return this.negative=1,this.strip()},U.prototype._wordDiv=function(j,k){var g=this.length-j.length,_=this.clone(),N=j,x=N.words[N.length-1]|0,B=this._countBits(x);g=26-B,g!==0&&(N=N.ushln(g),_.iushln(g),x=N.words[N.length-1]|0);var y=_.length-N.length,w;if(k!=="mod"){w=new U(null),w.length=y+1,w.words=new Array(w.length);for(var p=0;p<w.length;p++)w.words[p]=0}var f=_.clone()._ishlnsubmul(N,1,y);f.negative===0&&(_=f,w&&(w.words[y]=1));for(var c=y-1;c>=0;c--){var h=(_.words[N.length+c]|0)*67108864+(_.words[N.length+c-1]|0);for(h=Math.min(h/x|0,67108863),_._ishlnsubmul(N,h,c);_.negative!==0;)h--,_.negative=0,_._ishlnsubmul(N,1,c),_.isZero()||(_.negative^=1);w&&(w.words[c]=h)}return w&&w.strip(),_.strip(),k!=="div"&&g!==0&&_.iushrn(g),{div:w||null,mod:_}},U.prototype.divmod=function(j,k,g){if(G(!j.isZero()),this.isZero())return{div:new U(0),mod:new U(0)};var _,N,x;return this.negative!==0&&j.negative===0?(x=this.neg().divmod(j,k),k!=="mod"&&(_=x.div.neg()),k!=="div"&&(N=x.mod.neg(),g&&N.negative!==0&&N.iadd(j)),{div:_,mod:N}):this.negative===0&&j.negative!==0?(x=this.divmod(j.neg(),k),k!=="mod"&&(_=x.div.neg()),{div:_,mod:x.mod}):(this.negative&j.negative)!==0?(x=this.neg().divmod(j.neg(),k),k!=="div"&&(N=x.mod.neg(),g&&N.negative!==0&&N.isub(j)),{div:x.div,mod:N}):j.length>this.length||this.cmp(j)<0?{div:new U(0),mod:this}:j.length===1?k==="div"?{div:this.divn(j.words[0]),mod:null}:k==="mod"?{div:null,mod:new U(this.modn(j.words[0]))}:{div:this.divn(j.words[0]),mod:new U(this.modn(j.words[0]))}:this._wordDiv(j,k)},U.prototype.div=function(j){return this.divmod(j,"div",!1).div},U.prototype.mod=function(j){return this.divmod(j,"mod",!1).mod},U.prototype.umod=function(j){return this.divmod(j,"mod",!0).mod},U.prototype.divRound=function(j){var k=this.divmod(j);if(k.mod.isZero())return k.div;var g=k.div.negative!==0?k.mod.isub(j):k.mod,_=j.ushrn(1),N=j.andln(1),x=g.cmp(_);return x<0||N===1&&x===0?k.div:k.div.negative!==0?k.div.isubn(1):k.div.iaddn(1)},U.prototype.modn=function(j){G(j<=67108863);for(var k=(1<<26)%j,g=0,_=this.length-1;_>=0;_--)g=(k*g+(this.words[_]|0))%j;return g},U.prototype.idivn=function(j){G(j<=67108863);for(var k=0,g=this.length-1;g>=0;g--){var _=(this.words[g]|0)+k*67108864;this.words[g]=_/j|0,k=_%j}return this.strip()},U.prototype.divn=function(j){return this.clone().idivn(j)},U.prototype.egcd=function(j){G(j.negative===0),G(!j.isZero());var k=this,g=j.clone();k.negative!==0?k=k.umod(j):k=k.clone();for(var _=new U(1),N=new U(0),x=new U(0),B=new U(1),y=0;k.isEven()&&g.isEven();)k.iushrn(1),g.iushrn(1),++y;for(var w=g.clone(),p=k.clone();!k.isZero();){for(var f=0,c=1;(k.words[0]&c)===0&&f<26;++f,c<<=1);if(f>0)for(k.iushrn(f);f-- >0;)(_.isOdd()||N.isOdd())&&(_.iadd(w),N.isub(p)),_.iushrn(1),N.iushrn(1);for(var h=0,d=1;(g.words[0]&d)===0&&h<26;++h,d<<=1);if(h>0)for(g.iushrn(h);h-- >0;)(x.isOdd()||B.isOdd())&&(x.iadd(w),B.isub(p)),x.iushrn(1),B.iushrn(1);k.cmp(g)>=0?(k.isub(g),_.isub(x),N.isub(B)):(g.isub(k),x.isub(_),B.isub(N))}return{a:x,b:B,gcd:g.iushln(y)}},U.prototype._invmp=function(j){G(j.negative===0),G(!j.isZero());var k=this,g=j.clone();k.negative!==0?k=k.umod(j):k=k.clone();for(var _=new U(1),N=new U(0),x=g.clone();k.cmpn(1)>0&&g.cmpn(1)>0;){for(var B=0,y=1;(k.words[0]&y)===0&&B<26;++B,y<<=1);if(B>0)for(k.iushrn(B);B-- >0;)_.isOdd()&&_.iadd(x),_.iushrn(1);for(var w=0,p=1;(g.words[0]&p)===0&&w<26;++w,p<<=1);if(w>0)for(g.iushrn(w);w-- >0;)N.isOdd()&&N.iadd(x),N.iushrn(1);k.cmp(g)>=0?(k.isub(g),_.isub(N)):(g.isub(k),N.isub(_))}var f;return k.cmpn(1)===0?f=_:f=N,f.cmpn(0)<0&&f.iadd(j),f},U.prototype.gcd=function(j){if(this.isZero())return j.abs();if(j.isZero())return this.abs();var k=this.clone(),g=j.clone();k.negative=0,g.negative=0;for(var _=0;k.isEven()&&g.isEven();_++)k.iushrn(1),g.iushrn(1);do{for(;k.isEven();)k.iushrn(1);for(;g.isEven();)g.iushrn(1);var N=k.cmp(g);if(N<0){var x=k;k=g,g=x}else if(N===0||g.cmpn(1)===0)break;k.isub(g)}while(!0);return g.iushln(_)},U.prototype.invm=function(j){return this.egcd(j).a.umod(j)},U.prototype.isEven=function(){return(this.words[0]&1)===0},U.prototype.isOdd=function(){return(this.words[0]&1)===1},U.prototype.andln=function(j){return this.words[0]&j},U.prototype.bincn=function(j){G(typeof j=="number");var k=j%26,g=(j-k)/26,_=1<<k;if(this.length<=g)return this._expand(g+1),this.words[g]|=_,this;for(var N=_,x=g;N!==0&&x<this.length;x++){var B=this.words[x]|0;B+=N,N=B>>>26,B&=67108863,this.words[x]=B}return N!==0&&(this.words[x]=N,this.length++),this},U.prototype.isZero=function(){return this.length===1&&this.words[0]===0},U.prototype.cmpn=function(j){var k=j<0;if(this.negative!==0&&!k)return-1;if(this.negative===0&&k)return 1;this.strip();var g;if(this.length>1)g=1;else{k&&(j=-j),G(j<=67108863,"Number is too big");var _=this.words[0]|0;g=_===j?0:_<j?-1:1}return this.negative!==0?-g|0:g},U.prototype.cmp=function(j){if(this.negative!==0&&j.negative===0)return-1;if(this.negative===0&&j.negative!==0)return 1;var k=this.ucmp(j);return this.negative!==0?-k|0:k},U.prototype.ucmp=function(j){if(this.length>j.length)return 1;if(this.length<j.length)return-1;for(var k=0,g=this.length-1;g>=0;g--){var _=this.words[g]|0,N=j.words[g]|0;if(_!==N){_<N?k=-1:_>N&&(k=1);break}}return k},U.prototype.gtn=function(j){return this.cmpn(j)===1},U.prototype.gt=function(j){return this.cmp(j)===1},U.prototype.gten=function(j){return this.cmpn(j)>=0},U.prototype.gte=function(j){return this.cmp(j)>=0},U.prototype.ltn=function(j){return this.cmpn(j)===-1},U.prototype.lt=function(j){return this.cmp(j)===-1},U.prototype.lten=function(j){return this.cmpn(j)<=0},U.prototype.lte=function(j){return this.cmp(j)<=0},U.prototype.eqn=function(j){return this.cmpn(j)===0},U.prototype.eq=function(j){return this.cmp(j)===0},U.red=function(j){return new v(j)},U.prototype.toRed=function(j){return G(!this.red,"Already a number in reduction context"),G(this.negative===0,"red works only with positives"),j.convertTo(this)._forceRed(j)},U.prototype.fromRed=function(){return G(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},U.prototype._forceRed=function(j){return this.red=j,this},U.prototype.forceRed=function(j){return G(!this.red,"Already a number in reduction context"),this._forceRed(j)},U.prototype.redAdd=function(j){return G(this.red,"redAdd works only with red numbers"),this.red.add(this,j)},U.prototype.redIAdd=function(j){return G(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,j)},U.prototype.redSub=function(j){return G(this.red,"redSub works only with red numbers"),this.red.sub(this,j)},U.prototype.redISub=function(j){return G(this.red,"redISub works only with red numbers"),this.red.isub(this,j)},U.prototype.redShl=function(j){return G(this.red,"redShl works only with red numbers"),this.red.shl(this,j)},U.prototype.redMul=function(j){return G(this.red,"redMul works only with red numbers"),this.red._verify2(this,j),this.red.mul(this,j)},U.prototype.redIMul=function(j){return G(this.red,"redMul works only with red numbers"),this.red._verify2(this,j),this.red.imul(this,j)},U.prototype.redSqr=function(){return G(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},U.prototype.redISqr=function(){return G(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},U.prototype.redSqrt=function(){return G(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},U.prototype.redInvm=function(){return G(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},U.prototype.redNeg=function(){return G(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},U.prototype.redPow=function(j){return G(this.red&&!j.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,j)};var L={k256:null,p224:null,p192:null,p25519:null};function R(j,k){this.name=j,this.p=new U(k,16),this.n=this.p.bitLength(),this.k=new U(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}R.prototype._tmp=function(){var j=new U(null);return j.words=new Array(Math.ceil(this.n/13)),j},R.prototype.ireduce=function(j){var k=j,g;do this.split(k,this.tmp),k=this.imulK(k),k=k.iadd(this.tmp),g=k.bitLength();while(g>this.n);var _=g<this.n?-1:k.ucmp(this.p);return _===0?(k.words[0]=0,k.length=1):_>0?k.isub(this.p):k.strip!==void 0?k.strip():k._strip(),k},R.prototype.split=function(j,k){j.iushrn(this.n,0,k)},R.prototype.imulK=function(j){return j.imul(this.k)};function P(){R.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}V(P,R),P.prototype.split=function(j,k){for(var g=4194303,_=Math.min(j.length,9),N=0;N<_;N++)k.words[N]=j.words[N];if(k.length=_,j.length<=9){j.words[0]=0,j.length=1;return}var x=j.words[9];for(k.words[k.length++]=x&g,N=10;N<j.length;N++){var B=j.words[N]|0;j.words[N-10]=(B&g)<<4|x>>>22,x=B}x>>>=22,j.words[N-10]=x,x===0&&j.length>10?j.length-=10:j.length-=9},P.prototype.imulK=function(j){j.words[j.length]=0,j.words[j.length+1]=0,j.length+=2;for(var k=0,g=0;g<j.length;g++){var _=j.words[g]|0;k+=_*977,j.words[g]=k&67108863,k=_*64+(k/67108864|0)}return j.words[j.length-1]===0&&(j.length--,j.words[j.length-1]===0&&j.length--),j};function z(){R.call(this,"p224","ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001")}V(z,R);function M(){R.call(this,"p192","ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff")}V(M,R);function S(){R.call(this,"25519","7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed")}V(S,R),S.prototype.imulK=function(j){for(var k=0,g=0;g<j.length;g++){var _=(j.words[g]|0)*19+k,N=_&67108863;_>>>=26,j.words[g]=N,k=_}return k!==0&&(j.words[j.length++]=k),j},U._prime=function(j){if(L[j])return L[j];var k;if(j==="k256")k=new P;else if(j==="p224")k=new z;else if(j==="p192")k=new M;else if(j==="p25519")k=new S;else throw new Error("Unknown prime "+j);return L[j]=k,k};function v(j){if(typeof j=="string"){var k=U._prime(j);this.m=k.p,this.prime=k}else G(j.gtn(1),"modulus must be greater than 1"),this.m=j,this.prime=null}v.prototype._verify1=function(j){G(j.negative===0,"red works only with positives"),G(j.red,"red works only with red numbers")},v.prototype._verify2=function(j,k){G((j.negative|k.negative)===0,"red works only with positives"),G(j.red&&j.red===k.red,"red works only with red numbers")},v.prototype.imod=function(j){return this.prime?this.prime.ireduce(j)._forceRed(this):j.umod(this.m)._forceRed(this)},v.prototype.neg=function(j){return j.isZero()?j.clone():this.m.sub(j)._forceRed(this)},v.prototype.add=function(j,k){this._verify2(j,k);var g=j.add(k);return g.cmp(this.m)>=0&&g.isub(this.m),g._forceRed(this)},v.prototype.iadd=function(j,k){this._verify2(j,k);var g=j.iadd(k);return g.cmp(this.m)>=0&&g.isub(this.m),g},v.prototype.sub=function(j,k){this._verify2(j,k);var g=j.sub(k);return g.cmpn(0)<0&&g.iadd(this.m),g._forceRed(this)},v.prototype.isub=function(j,k){this._verify2(j,k);var g=j.isub(k);return g.cmpn(0)<0&&g.iadd(this.m),g},v.prototype.shl=function(j,k){return this._verify1(j),this.imod(j.ushln(k))},v.prototype.imul=function(j,k){return this._verify2(j,k),this.imod(j.imul(k))},v.prototype.mul=function(j,k){return this._verify2(j,k),this.imod(j.mul(k))},v.prototype.isqr=function(j){return this.imul(j,j.clone())},v.prototype.sqr=function(j){return this.mul(j,j)},v.prototype.sqrt=function(j){if(j.isZero())return j.clone();var k=this.m.andln(3);if(G(k%2===1),k===3){var g=this.m.add(new U(1)).iushrn(2);return this.pow(j,g)}for(var _=this.m.subn(1),N=0;!_.isZero()&&_.andln(1)===0;)N++,_.iushrn(1);G(!_.isZero());var x=new U(1).toRed(this),B=x.redNeg(),y=this.m.subn(1).iushrn(1),w=this.m.bitLength();for(w=new U(2*w*w).toRed(this);this.pow(w,y).cmp(B)!==0;)w.redIAdd(B);for(var p=this.pow(w,_),f=this.pow(j,_.addn(1).iushrn(1)),c=this.pow(j,_),h=N;c.cmp(x)!==0;){for(var d=c,b=0;d.cmp(x)!==0;b++)d=d.redSqr();G(b<h);var l=this.pow(p,new U(1).iushln(h-b-1));f=f.redMul(l),p=l.redSqr(),c=c.redMul(p),h=b}return f},v.prototype.invm=function(j){var k=j._invmp(this.m);return k.negative!==0?(k.negative=0,this.imod(k).redNeg()):this.imod(k)},v.prototype.pow=function(j,k){if(k.isZero())return new U(1).toRed(this);if(k.cmpn(1)===0)return j.clone();var g=4,_=new Array(1<<g);_[0]=new U(1).toRed(this),_[1]=j;for(var N=2;N<_.length;N++)_[N]=this.mul(_[N-1],j);var x=_[0],B=0,y=0,w=k.bitLength()%26;for(w===0&&(w=26),N=k.length-1;N>=0;N--){for(var p=k.words[N],f=w-1;f>=0;f--){var c=p>>f&1;if(x!==_[0]&&(x=this.sqr(x)),c===0&&B===0){y=0;continue}B<<=1,B|=c,y++,!(y!==g&&(N!==0||f!==0))&&(x=this.mul(x,_[B]),y=0,B=0)}w=26}return x},v.prototype.convertTo=function(j){var k=j.umod(this.m);return k===j?k.clone():k},v.prototype.convertFrom=function(j){var k=j.clone();return k.red=null,k},U.mont=function(j){return new q(j)};function q(j){v.call(this,j),this.shift=this.m.bitLength(),this.shift%26!==0&&(this.shift+=26-this.shift%26),this.r=new U(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)}V(q,v),q.prototype.convertTo=function(j){return this.imod(j.ushln(this.shift))},q.prototype.convertFrom=function(j){var k=this.imod(j.mul(this.rinv));return k.red=null,k},q.prototype.imul=function(j,k){if(j.isZero()||k.isZero())return j.words[0]=0,j.length=1,j;var g=j.imul(k),_=g.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),N=g.isub(_).iushrn(this.shift),x=N;return N.cmp(this.m)>=0?x=N.isub(this.m):N.cmpn(0)<0&&(x=N.iadd(this.m)),x._forceRed(this)},q.prototype.mul=function(j,k){if(j.isZero()||k.isZero())return new U(0)._forceRed(this);var g=j.mul(k),_=g.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),N=g.isub(_).iushrn(this.shift),x=N;return N.cmp(this.m)>=0?x=N.isub(this.m):N.cmpn(0)<0&&(x=N.iadd(this.m)),x._forceRed(this)},q.prototype.invm=function(j){var k=this.imod(j._invmp(this.m).mul(this.r2));return k._forceRed(this)}})(typeof Q>"u"||Q,$)}}),lQ=q$({"node_modules/minimalistic-crypto-utils/lib/utils.js"($){var Q=$;function Y(V,U){if(Array.isArray(V))return V.slice();if(!V)return[];var X=[];if(typeof V!="string"){for(var K=0;K<V.length;K++)X[K]=V[K]|0;return X}if(U==="hex"){V=V.replace(/[^a-z0-9]+/gi,""),V.length%2!==0&&(V="0"+V);for(var K=0;K<V.length;K+=2)X.push(parseInt(V[K]+V[K+1],16))}else for(var K=0;K<V.length;K++){var I=V.charCodeAt(K),O=I>>8,J=I&255;O?X.push(O,J):X.push(J)}return X}Q.toArray=Y;function Z(V){return V.length===1?"0"+V:V}Q.zero2=Z;function G(V){for(var U="",X=0;X<V.length;X++)U+=Z(V[X].toString(16));return U}Q.toHex=G,Q.encode=function(V,U){return U==="hex"?G(V):V}}}),oQ=q$({"node_modules/elliptic/lib/elliptic/utils.js"($){var Q=$,Y=bQ(),Z=ZQ(),G=lQ();Q.assert=Z,Q.toArray=G.toArray,Q.zero2=G.zero2,Q.toHex=G.toHex,Q.encode=G.encode;function V(O,J,F){var A=new Array(Math.max(O.bitLength(),F)+1);A.fill(0);for(var H=1<<J+1,W=O.clone(),E=0;E<A.length;E++){var T,D=W.andln(H-1);W.isOdd()?(D>(H>>1)-1?T=(H>>1)-D:T=D,W.isubn(T)):T=0,A[E]=T,W.iushrn(1)}return A}Q.getNAF=V;function U(O,J){var F=[[],[]];O=O.clone(),J=J.clone();for(var A=0,H=0,W;O.cmpn(-A)>0||J.cmpn(-H)>0;){var E=O.andln(3)+A&3,T=J.andln(3)+H&3;E===3&&(E=-1),T===3&&(T=-1);var D;(E&1)===0?D=0:(W=O.andln(7)+A&7,(W===3||W===5)&&T===2?D=-E:D=E),F[0].push(D);var C;(T&1)===0?C=0:(W=J.andln(7)+H&7,(W===3||W===5)&&E===2?C=-T:C=T),F[1].push(C),2*A===D+1&&(A=1-A),2*H===C+1&&(H=1-H),O.iushrn(1),J.iushrn(1)}return F}Q.getJSF=U;function X(O,J,F){var A="_"+J;O.prototype[J]=function(){return this[A]!==void 0?this[A]:this[A]=F.call(this)}}Q.cachedProperty=X;function K(O){return typeof O=="string"?Q.toArray(O,"hex"):O}Q.parseBytes=K;function I(O){return new Y(O,"hex","le")}Q.intFromLE=I}}),uQ=q$({"node_modules/elliptic/lib/elliptic/curve/base.js"($,Q){var Y=bQ(),Z=oQ(),G=Z.getNAF,V=Z.getJSF,U=Z.assert;function X(I,O){this.type=I,this.p=new Y(O.p,16),this.red=O.prime?Y.red(O.prime):Y.mont(this.p),this.zero=new Y(0).toRed(this.red),this.one=new Y(1).toRed(this.red),this.two=new Y(2).toRed(this.red),this.n=O.n&&new Y(O.n,16),this.g=O.g&&this.pointFromJSON(O.g,O.gRed),this._wnafT1=new Array(4),this._wnafT2=new Array(4),this._wnafT3=new Array(4),this._wnafT4=new Array(4),this._bitLength=this.n?this.n.bitLength():0;var J=this.n&&this.p.div(this.n);!J||J.cmpn(100)>0?this.redN=null:(this._maxwellTrick=!0,this.redN=this.n.toRed(this.red))}Q.exports=X,X.prototype.point=function(){throw new Error("Not implemented")},X.prototype.validate=function(){throw new Error("Not implemented")},X.prototype._fixedNafMul=function(I,O){U(I.precomputed);var J=I._getDoubles(),F=G(O,1,this._bitLength),A=(1<<J.step+1)-(J.step%2===0?2:1);A/=3;var H=[],W,E;for(W=0;W<F.length;W+=J.step){E=0;for(var T=W+J.step-1;T>=W;T--)E=(E<<1)+F[T];H.push(E)}for(var D=this.jpoint(null,null,null),C=this.jpoint(null,null,null),L=A;L>0;L--){for(W=0;W<H.length;W++)E=H[W],E===L?C=C.mixedAdd(J.points[W]):E===-L&&(C=C.mixedAdd(J.points[W].neg()));D=D.add(C)}return D.toP()},X.prototype._wnafMul=function(I,O){var J=4,F=I._getNAFPoints(J);J=F.wnd;for(var A=F.points,H=G(O,J,this._bitLength),W=this.jpoint(null,null,null),E=H.length-1;E>=0;E--){for(var T=0;E>=0&&H[E]===0;E--)T++;if(E>=0&&T++,W=W.dblp(T),E<0)break;var D=H[E];U(D!==0),I.type==="affine"?D>0?W=W.mixedAdd(A[D-1>>1]):W=W.mixedAdd(A[-D-1>>1].neg()):D>0?W=W.add(A[D-1>>1]):W=W.add(A[-D-1>>1].neg())}return I.type==="affine"?W.toP():W},X.prototype._wnafMulAdd=function(I,O,J,F,A){var H=this._wnafT1,W=this._wnafT2,E=this._wnafT3,T=0,D,C,L;for(D=0;D<F;D++){L=O[D];var R=L._getNAFPoints(I);H[D]=R.wnd,W[D]=R.points}for(D=F-1;D>=1;D-=2){var P=D-1,z=D;if(H[P]!==1||H[z]!==1){E[P]=G(J[P],H[P],this._bitLength),E[z]=G(J[z],H[z],this._bitLength),T=Math.max(E[P].length,T),T=Math.max(E[z].length,T);continue}var M=[O[P],null,null,O[z]];O[P].y.cmp(O[z].y)===0?(M[1]=O[P].add(O[z]),M[2]=O[P].toJ().mixedAdd(O[z].neg())):O[P].y.cmp(O[z].y.redNeg())===0?(M[1]=O[P].toJ().mixedAdd(O[z]),M[2]=O[P].add(O[z].neg())):(M[1]=O[P].toJ().mixedAdd(O[z]),M[2]=O[P].toJ().mixedAdd(O[z].neg()));var S=[-3,-1,-5,-7,0,7,5,1,3],v=V(J[P],J[z]);for(T=Math.max(v[0].length,T),E[P]=new Array(T),E[z]=new Array(T),C=0;C<T;C++){var q=v[0][C]|0,j=v[1][C]|0;E[P][C]=S[(q+1)*3+(j+1)],E[z][C]=0,W[P]=M}}var k=this.jpoint(null,null,null),g=this._wnafT4;for(D=T;D>=0;D--){for(var _=0;D>=0;){var N=!0;for(C=0;C<F;C++)g[C]=E[C][D]|0,g[C]!==0&&(N=!1);if(!N)break;_++,D--}if(D>=0&&_++,k=k.dblp(_),D<0)break;for(C=0;C<F;C++){var x=g[C];x!==0&&(x>0?L=W[C][x-1>>1]:x<0&&(L=W[C][-x-1>>1].neg()),L.type==="affine"?k=k.mixedAdd(L):k=k.add(L))}}for(D=0;D<F;D++)W[D]=null;return A?k:k.toP()};function K(I,O){this.curve=I,this.type=O,this.precomputed=null}X.BasePoint=K,K.prototype.eq=function(){throw new Error("Not implemented")},K.prototype.validate=function(){return this.curve.validate(this)},X.prototype.decodePoint=function(I,O){I=Z.toArray(I,O);var J=this.p.byteLength();if((I[0]===4||I[0]===6||I[0]===7)&&I.length-1===2*J){I[0]===6?U(I[I.length-1]%2===0):I[0]===7&&U(I[I.length-1]%2===1);var F=this.point(I.slice(1,1+J),I.slice(1+J,1+2*J));return F}else if((I[0]===2||I[0]===3)&&I.length-1===J)return this.pointFromX(I.slice(1,1+J),I[0]===3);throw new Error("Unknown point format")},K.prototype.encodeCompressed=function(I){return this.encode(I,!0)},K.prototype._encode=function(I){var O=this.curve.p.byteLength(),J=this.getX().toArray("be",O);return I?[this.getY().isEven()?2:3].concat(J):[4].concat(J,this.getY().toArray("be",O))},K.prototype.encode=function(I,O){return Z.encode(this._encode(O),I)},K.prototype.precompute=function(I){if(this.precomputed)return this;var O={doubles:null,naf:null,beta:null};return O.naf=this._getNAFPoints(8),O.doubles=this._getDoubles(4,I),O.beta=this._getBeta(),this.precomputed=O,this},K.prototype._hasDoubles=function(I){if(!this.precomputed)return!1;var O=this.precomputed.doubles;return O?O.points.length>=Math.ceil((I.bitLength()+1)/O.step):!1},K.prototype._getDoubles=function(I,O){if(this.precomputed&&this.precomputed.doubles)return this.precomputed.doubles;for(var J=[this],F=this,A=0;A<O;A+=I){for(var H=0;H<I;H++)F=F.dbl();J.push(F)}return{step:I,points:J}},K.prototype._getNAFPoints=function(I){if(this.precomputed&&this.precomputed.naf)return this.precomputed.naf;for(var O=[this],J=(1<<I)-1,F=J===1?null:this.dbl(),A=1;A<J;A++)O[A]=O[A-1].add(F);return{wnd:I,points:O}},K.prototype._getBeta=function(){return null},K.prototype.dblp=function(I){for(var O=this,J=0;J<I;J++)O=O.dbl();return O}}}),nQ=q$({"node_modules/elliptic/lib/elliptic/curve/short.js"($,Q){var Y=oQ(),Z=bQ(),G=_$(),V=uQ(),U=Y.assert;function X(O){V.call(this,"short",O),this.a=new Z(O.a,16).toRed(this.red),this.b=new Z(O.b,16).toRed(this.red),this.tinv=this.two.redInvm(),this.zeroA=this.a.fromRed().cmpn(0)===0,this.threeA=this.a.fromRed().sub(this.p).cmpn(-3)===0,this.endo=this._getEndomorphism(O),this._endoWnafT1=new Array(4),this._endoWnafT2=new Array(4)}G(X,V),Q.exports=X,X.prototype._getEndomorphism=function(O){if(!(!this.zeroA||!this.g||!this.n||this.p.modn(3)!==1)){var J,F;if(O.beta)J=new Z(O.beta,16).toRed(this.red);else{var A=this._getEndoRoots(this.p);J=A[0].cmp(A[1])<0?A[0]:A[1],J=J.toRed(this.red)}if(O.lambda)F=new Z(O.lambda,16);else{var H=this._getEndoRoots(this.n);this.g.mul(H[0]).x.cmp(this.g.x.redMul(J))===0?F=H[0]:(F=H[1],U(this.g.mul(F).x.cmp(this.g.x.redMul(J))===0))}var W;return O.basis?W=O.basis.map(function(E){return{a:new Z(E.a,16),b:new Z(E.b,16)}}):W=this._getEndoBasis(F),{beta:J,lambda:F,basis:W}}},X.prototype._getEndoRoots=function(O){var J=O===this.p?this.red:Z.mont(O),F=new Z(2).toRed(J).redInvm(),A=F.redNeg(),H=new Z(3).toRed(J).redNeg().redSqrt().redMul(F),W=A.redAdd(H).fromRed(),E=A.redSub(H).fromRed();return[W,E]},X.prototype._getEndoBasis=function(O){for(var J=this.n.ushrn(Math.floor(this.n.bitLength()/2)),F=O,A=this.n.clone(),H=new Z(1),W=new Z(0),E=new Z(0),T=new Z(1),D,C,L,R,P,z,M,S=0,v,q;F.cmpn(0)!==0;){var j=A.div(F);v=A.sub(j.mul(F)),q=E.sub(j.mul(H));var k=T.sub(j.mul(W));if(!L&&v.cmp(J)<0)D=M.neg(),C=H,L=v.neg(),R=q;else if(L&&++S===2)break;M=v,A=F,F=v,E=H,H=q,T=W,W=k}P=v.neg(),z=q;var g=L.sqr().add(R.sqr()),_=P.sqr().add(z.sqr());return _.cmp(g)>=0&&(P=D,z=C),L.negative&&(L=L.neg(),R=R.neg()),P.negative&&(P=P.neg(),z=z.neg()),[{a:L,b:R},{a:P,b:z}]},X.prototype._endoSplit=function(O){var J=this.endo.basis,F=J[0],A=J[1],H=A.b.mul(O).divRound(this.n),W=F.b.neg().mul(O).divRound(this.n),E=H.mul(F.a),T=W.mul(A.a),D=H.mul(F.b),C=W.mul(A.b),L=O.sub(E).sub(T),R=D.add(C).neg();return{k1:L,k2:R}},X.prototype.pointFromX=function(O,J){O=new Z(O,16),O.red||(O=O.toRed(this.red));var F=O.redSqr().redMul(O).redIAdd(O.redMul(this.a)).redIAdd(this.b),A=F.redSqrt();if(A.redSqr().redSub(F).cmp(this.zero)!==0)throw new Error("invalid point");var H=A.fromRed().isOdd();return(J&&!H||!J&&H)&&(A=A.redNeg()),this.point(O,A)},X.prototype.validate=function(O){if(O.inf)return!0;var{x:J,y:F}=O,A=this.a.redMul(J),H=J.redSqr().redMul(J).redIAdd(A).redIAdd(this.b);return F.redSqr().redISub(H).cmpn(0)===0},X.prototype._endoWnafMulAdd=function(O,J,F){for(var A=this._endoWnafT1,H=this._endoWnafT2,W=0;W<O.length;W++){var E=this._endoSplit(J[W]),T=O[W],D=T._getBeta();E.k1.negative&&(E.k1.ineg(),T=T.neg(!0)),E.k2.negative&&(E.k2.ineg(),D=D.neg(!0)),A[W*2]=T,A[W*2+1]=D,H[W*2]=E.k1,H[W*2+1]=E.k2}for(var C=this._wnafMulAdd(1,A,H,W*2,F),L=0;L<W*2;L++)A[L]=null,H[L]=null;return C};function K(O,J,F,A){V.BasePoint.call(this,O,"affine"),J===null&&F===null?(this.x=null,this.y=null,this.inf=!0):(this.x=new Z(J,16),this.y=new Z(F,16),A&&(this.x.forceRed(this.curve.red),this.y.forceRed(this.curve.red)),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.y.red||(this.y=this.y.toRed(this.curve.red)),this.inf=!1)}G(K,V.BasePoint),X.prototype.point=function(O,J,F){return new K(this,O,J,F)},X.prototype.pointFromJSON=function(O,J){return K.fromJSON(this,O,J)},K.prototype._getBeta=function(){if(this.curve.endo){var O=this.precomputed;if(O&&O.beta)return O.beta;var J=this.curve.point(this.x.redMul(this.curve.endo.beta),this.y);if(O){var F=this.curve,A=function(H){return F.point(H.x.redMul(F.endo.beta),H.y)};O.beta=J,J.precomputed={beta:null,naf:O.naf&&{wnd:O.naf.wnd,points:O.naf.points.map(A)},doubles:O.doubles&&{step:O.doubles.step,points:O.doubles.points.map(A)}}}return J}},K.prototype.toJSON=function(){return this.precomputed?[this.x,this.y,this.precomputed&&{doubles:this.precomputed.doubles&&{step:this.precomputed.doubles.step,points:this.precomputed.doubles.points.slice(1)},naf:this.precomputed.naf&&{wnd:this.precomputed.naf.wnd,points:this.precomputed.naf.points.slice(1)}}]:[this.x,this.y]},K.fromJSON=function(O,J,F){typeof J=="string"&&(J=JSON.parse(J));var A=O.point(J[0],J[1],F);if(!J[2])return A;function H(E){return O.point(E[0],E[1],F)}var W=J[2];return A.precomputed={beta:null,doubles:W.doubles&&{step:W.doubles.step,points:[A].concat(W.doubles.points.map(H))},naf:W.naf&&{wnd:W.naf.wnd,points:[A].concat(W.naf.points.map(H))}},A},K.prototype.inspect=function(){return this.isInfinity()?"<EC Point Infinity>":"<EC Point x: "+this.x.fromRed().toString(16,2)+" y: "+this.y.fromRed().toString(16,2)+">"},K.prototype.isInfinity=function(){return this.inf},K.prototype.add=function(O){if(this.inf)return O;if(O.inf)return this;if(this.eq(O))return this.dbl();if(this.neg().eq(O))return this.curve.point(null,null);if(this.x.cmp(O.x)===0)return this.curve.point(null,null);var J=this.y.redSub(O.y);J.cmpn(0)!==0&&(J=J.redMul(this.x.redSub(O.x).redInvm()));var F=J.redSqr().redISub(this.x).redISub(O.x),A=J.redMul(this.x.redSub(F)).redISub(this.y);return this.curve.point(F,A)},K.prototype.dbl=function(){if(this.inf)return this;var O=this.y.redAdd(this.y);if(O.cmpn(0)===0)return this.curve.point(null,null);var J=this.curve.a,F=this.x.redSqr(),A=O.redInvm(),H=F.redAdd(F).redIAdd(F).redIAdd(J).redMul(A),W=H.redSqr().redISub(this.x.redAdd(this.x)),E=H.redMul(this.x.redSub(W)).redISub(this.y);return this.curve.point(W,E)},K.prototype.getX=function(){return this.x.fromRed()},K.prototype.getY=function(){return this.y.fromRed()},K.prototype.mul=function(O){return O=new Z(O,16),this.isInfinity()?this:this._hasDoubles(O)?this.curve._fixedNafMul(this,O):this.curve.endo?this.curve._endoWnafMulAdd([this],[O]):this.curve._wnafMul(this,O)},K.prototype.mulAdd=function(O,J,F){var A=[this,J],H=[O,F];return this.curve.endo?this.curve._endoWnafMulAdd(A,H):this.curve._wnafMulAdd(1,A,H,2)},K.prototype.jmulAdd=function(O,J,F){var A=[this,J],H=[O,F];return this.curve.endo?this.curve._endoWnafMulAdd(A,H,!0):this.curve._wnafMulAdd(1,A,H,2,!0)},K.prototype.eq=function(O){return this===O||this.inf===O.inf&&(this.inf||this.x.cmp(O.x)===0&&this.y.cmp(O.y)===0)},K.prototype.neg=function(O){if(this.inf)return this;var J=this.curve.point(this.x,this.y.redNeg());if(O&&this.precomputed){var F=this.precomputed,A=function(H){return H.neg()};J.precomputed={naf:F.naf&&{wnd:F.naf.wnd,points:F.naf.points.map(A)},doubles:F.doubles&&{step:F.doubles.step,points:F.doubles.points.map(A)}}}return J},K.prototype.toJ=function(){if(this.inf)return this.curve.jpoint(null,null,null);var O=this.curve.jpoint(this.x,this.y,this.curve.one);return O};function I(O,J,F,A){V.BasePoint.call(this,O,"jacobian"),J===null&&F===null&&A===null?(this.x=this.curve.one,this.y=this.curve.one,this.z=new Z(0)):(this.x=new Z(J,16),this.y=new Z(F,16),this.z=new Z(A,16)),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.y.red||(this.y=this.y.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)),this.zOne=this.z===this.curve.one}G(I,V.BasePoint),X.prototype.jpoint=function(O,J,F){return new I(this,O,J,F)},I.prototype.toP=function(){if(this.isInfinity())return this.curve.point(null,null);var O=this.z.redInvm(),J=O.redSqr(),F=this.x.redMul(J),A=this.y.redMul(J).redMul(O);return this.curve.point(F,A)},I.prototype.neg=function(){return this.curve.jpoint(this.x,this.y.redNeg(),this.z)},I.prototype.add=function(O){if(this.isInfinity())return O;if(O.isInfinity())return this;var J=O.z.redSqr(),F=this.z.redSqr(),A=this.x.redMul(J),H=O.x.redMul(F),W=this.y.redMul(J.redMul(O.z)),E=O.y.redMul(F.redMul(this.z)),T=A.redSub(H),D=W.redSub(E);if(T.cmpn(0)===0)return D.cmpn(0)!==0?this.curve.jpoint(null,null,null):this.dbl();var C=T.redSqr(),L=C.redMul(T),R=A.redMul(C),P=D.redSqr().redIAdd(L).redISub(R).redISub(R),z=D.redMul(R.redISub(P)).redISub(W.redMul(L)),M=this.z.redMul(O.z).redMul(T);return this.curve.jpoint(P,z,M)},I.prototype.mixedAdd=function(O){if(this.isInfinity())return O.toJ();if(O.isInfinity())return this;var J=this.z.redSqr(),F=this.x,A=O.x.redMul(J),H=this.y,W=O.y.redMul(J).redMul(this.z),E=F.redSub(A),T=H.redSub(W);if(E.cmpn(0)===0)return T.cmpn(0)!==0?this.curve.jpoint(null,null,null):this.dbl();var D=E.redSqr(),C=D.redMul(E),L=F.redMul(D),R=T.redSqr().redIAdd(C).redISub(L).redISub(L),P=T.redMul(L.redISub(R)).redISub(H.redMul(C)),z=this.z.redMul(E);return this.curve.jpoint(R,P,z)},I.prototype.dblp=function(O){if(O===0)return this;if(this.isInfinity())return this;if(!O)return this.dbl();var J;if(this.curve.zeroA||this.curve.threeA){var F=this;for(J=0;J<O;J++)F=F.dbl();return F}var A=this.curve.a,H=this.curve.tinv,W=this.x,E=this.y,T=this.z,D=T.redSqr().redSqr(),C=E.redAdd(E);for(J=0;J<O;J++){var L=W.redSqr(),R=C.redSqr(),P=R.redSqr(),z=L.redAdd(L).redIAdd(L).redIAdd(A.redMul(D)),M=W.redMul(R),S=z.redSqr().redISub(M.redAdd(M)),v=M.redISub(S),q=z.redMul(v);q=q.redIAdd(q).redISub(P);var j=C.redMul(T);J+1<O&&(D=D.redMul(P)),W=S,T=j,C=q}return this.curve.jpoint(W,C.redMul(H),T)},I.prototype.dbl=function(){return this.isInfinity()?this:this.curve.zeroA?this._zeroDbl():this.curve.threeA?this._threeDbl():this._dbl()},I.prototype._zeroDbl=function(){var O,J,F;if(this.zOne){var A=this.x.redSqr(),H=this.y.redSqr(),W=H.redSqr(),E=this.x.redAdd(H).redSqr().redISub(A).redISub(W);E=E.redIAdd(E);var T=A.redAdd(A).redIAdd(A),D=T.redSqr().redISub(E).redISub(E),C=W.redIAdd(W);C=C.redIAdd(C),C=C.redIAdd(C),O=D,J=T.redMul(E.redISub(D)).redISub(C),F=this.y.redAdd(this.y)}else{var L=this.x.redSqr(),R=this.y.redSqr(),P=R.redSqr(),z=this.x.redAdd(R).redSqr().redISub(L).redISub(P);z=z.redIAdd(z);var M=L.redAdd(L).redIAdd(L),S=M.redSqr(),v=P.redIAdd(P);v=v.redIAdd(v),v=v.redIAdd(v),O=S.redISub(z).redISub(z),J=M.redMul(z.redISub(O)).redISub(v),F=this.y.redMul(this.z),F=F.redIAdd(F)}return this.curve.jpoint(O,J,F)},I.prototype._threeDbl=function(){var O,J,F;if(this.zOne){var A=this.x.redSqr(),H=this.y.redSqr(),W=H.redSqr(),E=this.x.redAdd(H).redSqr().redISub(A).redISub(W);E=E.redIAdd(E);var T=A.redAdd(A).redIAdd(A).redIAdd(this.curve.a),D=T.redSqr().redISub(E).redISub(E);O=D;var C=W.redIAdd(W);C=C.redIAdd(C),C=C.redIAdd(C),J=T.redMul(E.redISub(D)).redISub(C),F=this.y.redAdd(this.y)}else{var L=this.z.redSqr(),R=this.y.redSqr(),P=this.x.redMul(R),z=this.x.redSub(L).redMul(this.x.redAdd(L));z=z.redAdd(z).redIAdd(z);var M=P.redIAdd(P);M=M.redIAdd(M);var S=M.redAdd(M);O=z.redSqr().redISub(S),F=this.y.redAdd(this.z).redSqr().redISub(R).redISub(L);var v=R.redSqr();v=v.redIAdd(v),v=v.redIAdd(v),v=v.redIAdd(v),J=z.redMul(M.redISub(O)).redISub(v)}return this.curve.jpoint(O,J,F)},I.prototype._dbl=function(){var O=this.curve.a,J=this.x,F=this.y,A=this.z,H=A.redSqr().redSqr(),W=J.redSqr(),E=F.redSqr(),T=W.redAdd(W).redIAdd(W).redIAdd(O.redMul(H)),D=J.redAdd(J);D=D.redIAdd(D);var C=D.redMul(E),L=T.redSqr().redISub(C.redAdd(C)),R=C.redISub(L),P=E.redSqr();P=P.redIAdd(P),P=P.redIAdd(P),P=P.redIAdd(P);var z=T.redMul(R).redISub(P),M=F.redAdd(F).redMul(A);return this.curve.jpoint(L,z,M)},I.prototype.trpl=function(){if(!this.curve.zeroA)return this.dbl().add(this);var O=this.x.redSqr(),J=this.y.redSqr(),F=this.z.redSqr(),A=J.redSqr(),H=O.redAdd(O).redIAdd(O),W=H.redSqr(),E=this.x.redAdd(J).redSqr().redISub(O).redISub(A);E=E.redIAdd(E),E=E.redAdd(E).redIAdd(E),E=E.redISub(W);var T=E.redSqr(),D=A.redIAdd(A);D=D.redIAdd(D),D=D.redIAdd(D),D=D.redIAdd(D);var C=H.redIAdd(E).redSqr().redISub(W).redISub(T).redISub(D),L=J.redMul(C);L=L.redIAdd(L),L=L.redIAdd(L);var R=this.x.redMul(T).redISub(L);R=R.redIAdd(R),R=R.redIAdd(R);var P=this.y.redMul(C.redMul(D.redISub(C)).redISub(E.redMul(T)));P=P.redIAdd(P),P=P.redIAdd(P),P=P.redIAdd(P);var z=this.z.redAdd(E).redSqr().redISub(F).redISub(T);return this.curve.jpoint(R,P,z)},I.prototype.mul=function(O,J){return O=new Z(O,J),this.curve._wnafMul(this,O)},I.prototype.eq=function(O){if(O.type==="affine")return this.eq(O.toJ());if(this===O)return!0;var J=this.z.redSqr(),F=O.z.redSqr();if(this.x.redMul(F).redISub(O.x.redMul(J)).cmpn(0)!==0)return!1;var A=J.redMul(this.z),H=F.redMul(O.z);return this.y.redMul(H).redISub(O.y.redMul(A)).cmpn(0)===0},I.prototype.eqXToP=function(O){var J=this.z.redSqr(),F=O.toRed(this.curve.red).redMul(J);if(this.x.cmp(F)===0)return!0;for(var A=O.clone(),H=this.curve.redN.redMul(J);;){if(A.iadd(this.curve.n),A.cmp(this.curve.p)>=0)return!1;if(F.redIAdd(H),this.x.cmp(F)===0)return!0}},I.prototype.inspect=function(){return this.isInfinity()?"<EC JPoint Infinity>":"<EC JPoint x: "+this.x.toString(16,2)+" y: "+this.y.toString(16,2)+" z: "+this.z.toString(16,2)+">"},I.prototype.isInfinity=function(){return this.z.cmpn(0)===0}}}),sQ=q$({"node_modules/elliptic/lib/elliptic/curve/mont.js"($,Q){var Y=bQ(),Z=_$(),G=uQ(),V=oQ();function U(K){G.call(this,"mont",K),this.a=new Y(K.a,16).toRed(this.red),this.b=new Y(K.b,16).toRed(this.red),this.i4=new Y(4).toRed(this.red).redInvm(),this.two=new Y(2).toRed(this.red),this.a24=this.i4.redMul(this.a.redAdd(this.two))}Z(U,G),Q.exports=U,U.prototype.validate=function(K){var I=K.normalize().x,O=I.redSqr(),J=O.redMul(I).redAdd(O.redMul(this.a)).redAdd(I),F=J.redSqrt();return F.redSqr().cmp(J)===0};function X(K,I,O){G.BasePoint.call(this,K,"projective"),I===null&&O===null?(this.x=this.curve.one,this.z=this.curve.zero):(this.x=new Y(I,16),this.z=new Y(O,16),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)))}Z(X,G.BasePoint),U.prototype.decodePoint=function(K,I){return this.point(V.toArray(K,I),1)},U.prototype.point=function(K,I){return new X(this,K,I)},U.prototype.pointFromJSON=function(K){return X.fromJSON(this,K)},X.prototype.precompute=function(){},X.prototype._encode=function(){return this.getX().toArray("be",this.curve.p.byteLength())},X.fromJSON=function(K,I){return new X(K,I[0],I[1]||K.one)},X.prototype.inspect=function(){return this.isInfinity()?"<EC Point Infinity>":"<EC Point x: "+this.x.fromRed().toString(16,2)+" z: "+this.z.fromRed().toString(16,2)+">"},X.prototype.isInfinity=function(){return this.z.cmpn(0)===0},X.prototype.dbl=function(){var K=this.x.redAdd(this.z),I=K.redSqr(),O=this.x.redSub(this.z),J=O.redSqr(),F=I.redSub(J),A=I.redMul(J),H=F.redMul(J.redAdd(this.curve.a24.redMul(F)));return this.curve.point(A,H)},X.prototype.add=function(){throw new Error("Not supported on Montgomery curve")},X.prototype.diffAdd=function(K,I){var O=this.x.redAdd(this.z),J=this.x.redSub(this.z),F=K.x.redAdd(K.z),A=K.x.redSub(K.z),H=A.redMul(O),W=F.redMul(J),E=I.z.redMul(H.redAdd(W).redSqr()),T=I.x.redMul(H.redISub(W).redSqr());return this.curve.point(E,T)},X.prototype.mul=function(K){for(var I=K.clone(),O=this,J=this.curve.point(null,null),F=this,A=[];I.cmpn(0)!==0;I.iushrn(1))A.push(I.andln(1));for(var H=A.length-1;H>=0;H--)A[H]===0?(O=O.diffAdd(J,F),J=J.dbl()):(J=O.diffAdd(J,F),O=O.dbl());return J},X.prototype.mulAdd=function(){throw new Error("Not supported on Montgomery curve")},X.prototype.jumlAdd=function(){throw new Error("Not supported on Montgomery curve")},X.prototype.eq=function(K){return this.getX().cmp(K.getX())===0},X.prototype.normalize=function(){return this.x=this.x.redMul(this.z.redInvm()),this.z=this.curve.one,this},X.prototype.getX=function(){return this.normalize(),this.x.fromRed()}}}),tQ=q$({"node_modules/elliptic/lib/elliptic/curve/edwards.js"($,Q){var Y=oQ(),Z=bQ(),G=_$(),V=uQ(),U=Y.assert;function X(I){this.twisted=(I.a|0)!==1,this.mOneA=this.twisted&&(I.a|0)===-1,this.extended=this.mOneA,V.call(this,"edwards",I),this.a=new Z(I.a,16).umod(this.red.m),this.a=this.a.toRed(this.red),this.c=new Z(I.c,16).toRed(this.red),this.c2=this.c.redSqr(),this.d=new Z(I.d,16).toRed(this.red),this.dd=this.d.redAdd(this.d),U(!this.twisted||this.c.fromRed().cmpn(1)===0),this.oneC=(I.c|0)===1}G(X,V),Q.exports=X,X.prototype._mulA=function(I){return this.mOneA?I.redNeg():this.a.redMul(I)},X.prototype._mulC=function(I){return this.oneC?I:this.c.redMul(I)},X.prototype.jpoint=function(I,O,J,F){return this.point(I,O,J,F)},X.prototype.pointFromX=function(I,O){I=new Z(I,16),I.red||(I=I.toRed(this.red));var J=I.redSqr(),F=this.c2.redSub(this.a.redMul(J)),A=this.one.redSub(this.c2.redMul(this.d).redMul(J)),H=F.redMul(A.redInvm()),W=H.redSqrt();if(W.redSqr().redSub(H).cmp(this.zero)!==0)throw new Error("invalid point");var E=W.fromRed().isOdd();return(O&&!E||!O&&E)&&(W=W.redNeg()),this.point(I,W)},X.prototype.pointFromY=function(I,O){I=new Z(I,16),I.red||(I=I.toRed(this.red));var J=I.redSqr(),F=J.redSub(this.c2),A=J.redMul(this.d).redMul(this.c2).redSub(this.a),H=F.redMul(A.redInvm());if(H.cmp(this.zero)===0){if(O)throw new Error("invalid point");return this.point(this.zero,I)}var W=H.redSqrt();if(W.redSqr().redSub(H).cmp(this.zero)!==0)throw new Error("invalid point");return W.fromRed().isOdd()!==O&&(W=W.redNeg()),this.point(W,I)},X.prototype.validate=function(I){if(I.isInfinity())return!0;I.normalize();var O=I.x.redSqr(),J=I.y.redSqr(),F=O.redMul(this.a).redAdd(J),A=this.c2.redMul(this.one.redAdd(this.d.redMul(O).redMul(J)));return F.cmp(A)===0};function K(I,O,J,F,A){V.BasePoint.call(this,I,"projective"),O===null&&J===null&&F===null?(this.x=this.curve.zero,this.y=this.curve.one,this.z=this.curve.one,this.t=this.curve.zero,this.zOne=!0):(this.x=new Z(O,16),this.y=new Z(J,16),this.z=F?new Z(F,16):this.curve.one,this.t=A&&new Z(A,16),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.y.red||(this.y=this.y.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)),this.t&&!this.t.red&&(this.t=this.t.toRed(this.curve.red)),this.zOne=this.z===this.curve.one,this.curve.extended&&!this.t&&(this.t=this.x.redMul(this.y),this.zOne||(this.t=this.t.redMul(this.z.redInvm()))))}G(K,V.BasePoint),X.prototype.pointFromJSON=function(I){return K.fromJSON(this,I)},X.prototype.point=function(I,O,J,F){return new K(this,I,O,J,F)},K.fromJSON=function(I,O){return new K(I,O[0],O[1],O[2])},K.prototype.inspect=function(){return this.isInfinity()?"<EC Point Infinity>":"<EC Point x: "+this.x.fromRed().toString(16,2)+" y: "+this.y.fromRed().toString(16,2)+" z: "+this.z.fromRed().toString(16,2)+">"},K.prototype.isInfinity=function(){return this.x.cmpn(0)===0&&(this.y.cmp(this.z)===0||this.zOne&&this.y.cmp(this.curve.c)===0)},K.prototype._extDbl=function(){var I=this.x.redSqr(),O=this.y.redSqr(),J=this.z.redSqr();J=J.redIAdd(J);var F=this.curve._mulA(I),A=this.x.redAdd(this.y).redSqr().redISub(I).redISub(O),H=F.redAdd(O),W=H.redSub(J),E=F.redSub(O),T=A.redMul(W),D=H.redMul(E),C=A.redMul(E),L=W.redMul(H);return this.curve.point(T,D,L,C)},K.prototype._projDbl=function(){var I=this.x.redAdd(this.y).redSqr(),O=this.x.redSqr(),J=this.y.redSqr(),F,A,H,W,E,T;if(this.curve.twisted){W=this.curve._mulA(O);var D=W.redAdd(J);this.zOne?(F=I.redSub(O).redSub(J).redMul(D.redSub(this.curve.two)),A=D.redMul(W.redSub(J)),H=D.redSqr().redSub(D).redSub(D)):(E=this.z.redSqr(),T=D.redSub(E).redISub(E),F=I.redSub(O).redISub(J).redMul(T),A=D.redMul(W.redSub(J)),H=D.redMul(T))}else W=O.redAdd(J),E=this.curve._mulC(this.z).redSqr(),T=W.redSub(E).redSub(E),F=this.curve._mulC(I.redISub(W)).redMul(T),A=this.curve._mulC(W).redMul(O.redISub(J)),H=W.redMul(T);return this.curve.point(F,A,H)},K.prototype.dbl=function(){return this.isInfinity()?this:this.curve.extended?this._extDbl():this._projDbl()},K.prototype._extAdd=function(I){var O=this.y.redSub(this.x).redMul(I.y.redSub(I.x)),J=this.y.redAdd(this.x).redMul(I.y.redAdd(I.x)),F=this.t.redMul(this.curve.dd).redMul(I.t),A=this.z.redMul(I.z.redAdd(I.z)),H=J.redSub(O),W=A.redSub(F),E=A.redAdd(F),T=J.redAdd(O),D=H.redMul(W),C=E.redMul(T),L=H.redMul(T),R=W.redMul(E);return this.curve.point(D,C,R,L)},K.prototype._projAdd=function(I){var O=this.z.redMul(I.z),J=O.redSqr(),F=this.x.redMul(I.x),A=this.y.redMul(I.y),H=this.curve.d.redMul(F).redMul(A),W=J.redSub(H),E=J.redAdd(H),T=this.x.redAdd(this.y).redMul(I.x.redAdd(I.y)).redISub(F).redISub(A),D=O.redMul(W).redMul(T),C,L;return this.curve.twisted?(C=O.redMul(E).redMul(A.redSub(this.curve._mulA(F))),L=W.redMul(E)):(C=O.redMul(E).redMul(A.redSub(F)),L=this.curve._mulC(W).redMul(E)),this.curve.point(D,C,L)},K.prototype.add=function(I){return this.isInfinity()?I:I.isInfinity()?this:this.curve.extended?this._extAdd(I):this._projAdd(I)},K.prototype.mul=function(I){return this._hasDoubles(I)?this.curve._fixedNafMul(this,I):this.curve._wnafMul(this,I)},K.prototype.mulAdd=function(I,O,J){return this.curve._wnafMulAdd(1,[this,O],[I,J],2,!1)},K.prototype.jmulAdd=function(I,O,J){return this.curve._wnafMulAdd(1,[this,O],[I,J],2,!0)},K.prototype.normalize=function(){if(this.zOne)return this;var I=this.z.redInvm();return this.x=this.x.redMul(I),this.y=this.y.redMul(I),this.t&&(this.t=this.t.redMul(I)),this.z=this.curve.one,this.zOne=!0,this},K.prototype.neg=function(){return this.curve.point(this.x.redNeg(),this.y,this.z,this.t&&this.t.redNeg())},K.prototype.getX=function(){return this.normalize(),this.x.fromRed()},K.prototype.getY=function(){return this.normalize(),this.y.fromRed()},K.prototype.eq=function(I){return this===I||this.getX().cmp(I.getX())===0&&this.getY().cmp(I.getY())===0},K.prototype.eqXToP=function(I){var O=I.toRed(this.curve.red).redMul(this.z);if(this.x.cmp(O)===0)return!0;for(var J=I.clone(),F=this.curve.redN.redMul(this.z);;){if(J.iadd(this.curve.n),J.cmp(this.curve.p)>=0)return!1;if(O.redIAdd(F),this.x.cmp(O)===0)return!0}},K.prototype.toP=K.prototype.normalize,K.prototype.mixedAdd=K.prototype.add}}),mQ=q$({"node_modules/elliptic/lib/elliptic/curve/index.js"($){var Q=$;Q.base=uQ(),Q.short=nQ(),Q.mont=sQ(),Q.edwards=tQ()}}),aQ=q$({"node_modules/hash.js/lib/hash/utils.js"($){var Q=ZQ(),Y=_$();$.inherits=Y;function Z(k,g){return(k.charCodeAt(g)&64512)!==55296||g<0||g+1>=k.length?!1:(k.charCodeAt(g+1)&64512)===56320}function G(k,g){if(Array.isArray(k))return k.slice();if(!k)return[];var _=[];if(typeof k=="string")if(g){if(g==="hex")for(k=k.replace(/[^a-z0-9]+/gi,""),k.length%2!==0&&(k="0"+k),x=0;x<k.length;x+=2)_.push(parseInt(k[x]+k[x+1],16))}else for(var N=0,x=0;x<k.length;x++){var B=k.charCodeAt(x);B<128?_[N++]=B:B<2048?(_[N++]=B>>6|192,_[N++]=B&63|128):Z(k,x)?(B=65536+((B&1023)<<10)+(k.charCodeAt(++x)&1023),_[N++]=B>>18|240,_[N++]=B>>12&63|128,_[N++]=B>>6&63|128,_[N++]=B&63|128):(_[N++]=B>>12|224,_[N++]=B>>6&63|128,_[N++]=B&63|128)}else for(x=0;x<k.length;x++)_[x]=k[x]|0;return _}$.toArray=G;function V(k){for(var g="",_=0;_<k.length;_++)g+=K(k[_].toString(16));return g}$.toHex=V;function U(k){var g=k>>>24|k>>>8&65280|k<<8&16711680|(k&255)<<24;return g>>>0}$.htonl=U;function X(k,g){for(var _="",N=0;N<k.length;N++){var x=k[N];g==="little"&&(x=U(x)),_+=I(x.toString(16))}return _}$.toHex32=X;function K(k){return k.length===1?"0"+k:k}$.zero2=K;function I(k){return k.length===7?"0"+k:k.length===6?"00"+k:k.length===5?"000"+k:k.length===4?"0000"+k:k.length===3?"00000"+k:k.length===2?"000000"+k:k.length===1?"0000000"+k:k}$.zero8=I;function O(k,g,_,N){var x=_-g;Q(x%4===0);for(var B=new Array(x/4),y=0,w=g;y<B.length;y++,w+=4){var p;N==="big"?p=k[w]<<24|k[w+1]<<16|k[w+2]<<8|k[w+3]:p=k[w+3]<<24|k[w+2]<<16|k[w+1]<<8|k[w],B[y]=p>>>0}return B}$.join32=O;function J(k,g){for(var _=new Array(k.length*4),N=0,x=0;N<k.length;N++,x+=4){var B=k[N];g==="big"?(_[x]=B>>>24,_[x+1]=B>>>16&255,_[x+2]=B>>>8&255,_[x+3]=B&255):(_[x+3]=B>>>24,_[x+2]=B>>>16&255,_[x+1]=B>>>8&255,_[x]=B&255)}return _}$.split32=J;function F(k,g){return k>>>g|k<<32-g}$.rotr32=F;function A(k,g){return k<<g|k>>>32-g}$.rotl32=A;function H(k,g){return k+g>>>0}$.sum32=H;function W(k,g,_){return k+g+_>>>0}$.sum32_3=W;function E(k,g,_,N){return k+g+_+N>>>0}$.sum32_4=E;function T(k,g,_,N,x){return k+g+_+N+x>>>0}$.sum32_5=T;function D(k,g,_,N){var x=k[g],B=k[g+1],y=N+B>>>0,w=(y<N?1:0)+_+x;k[g]=w>>>0,k[g+1]=y}$.sum64=D;function C(k,g,_,N){var x=g+N>>>0,B=(x<g?1:0)+k+_;return B>>>0}$.sum64_hi=C;function L(k,g,_,N){var x=g+N;return x>>>0}$.sum64_lo=L;function R(k,g,_,N,x,B,y,w){var p=0,f=g;f=f+N>>>0,p+=f<g?1:0,f=f+B>>>0,p+=f<B?1:0,f=f+w>>>0,p+=f<w?1:0;var c=k+_+x+y+p;return c>>>0}$.sum64_4_hi=R;function P(k,g,_,N,x,B,y,w){var p=g+N+B+w;return p>>>0}$.sum64_4_lo=P;function z(k,g,_,N,x,B,y,w,p,f){var c=0,h=g;h=h+N>>>0,c+=h<g?1:0,h=h+B>>>0,c+=h<B?1:0,h=h+w>>>0,c+=h<w?1:0,h=h+f>>>0,c+=h<f?1:0;var d=k+_+x+y+p+c;return d>>>0}$.sum64_5_hi=z;function M(k,g,_,N,x,B,y,w,p,f){var c=g+N+B+w+f;return c>>>0}$.sum64_5_lo=M;function S(k,g,_){var N=g<<32-_|k>>>_;return N>>>0}$.rotr64_hi=S;function v(k,g,_){var N=k<<32-_|g>>>_;return N>>>0}$.rotr64_lo=v;function q(k,g,_){return k>>>_}$.shr64_hi=q;function j(k,g,_){var N=k<<32-_|g>>>_;return N>>>0}$.shr64_lo=j}}),eQ=q$({"node_modules/hash.js/lib/hash/common.js"($){var Q=aQ(),Y=ZQ();function Z(){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}$.BlockHash=Z,Z.prototype.update=function(G,V){if(G=Q.toArray(G,V),this.pending?this.pending=this.pending.concat(G):this.pending=G,this.pendingTotal+=G.length,this.pending.length>=this._delta8){G=this.pending;var U=G.length%this._delta8;this.pending=G.slice(G.length-U,G.length),this.pending.length===0&&(this.pending=null),G=Q.join32(G,0,G.length-U,this.endian);for(var X=0;X<G.length;X+=this._delta32)this._update(G,X,X+this._delta32)}return this},Z.prototype.digest=function(G){return this.update(this._pad()),Y(this.pending===null),this._digest(G)},Z.prototype._pad=function(){var G=this.pendingTotal,V=this._delta8,U=V-(G+this.padLength)%V,X=new Array(U+this.padLength);X[0]=128;for(var K=1;K<U;K++)X[K]=0;if(G<<=3,this.endian==="big"){for(var I=8;I<this.padLength;I++)X[K++]=0;X[K++]=0,X[K++]=0,X[K++]=0,X[K++]=0,X[K++]=G>>>24&255,X[K++]=G>>>16&255,X[K++]=G>>>8&255,X[K++]=G&255}else for(X[K++]=G&255,X[K++]=G>>>8&255,X[K++]=G>>>16&255,X[K++]=G>>>24&255,X[K++]=0,X[K++]=0,X[K++]=0,X[K++]=0,I=8;I<this.padLength;I++)X[K++]=0;return X}}}),rQ=q$({"node_modules/hash.js/lib/hash/sha/common.js"($){var Q=aQ(),Y=Q.rotr32;function Z(J,F,A,H){if(J===0)return G(F,A,H);if(J===1||J===3)return U(F,A,H);if(J===2)return V(F,A,H)}$.ft_1=Z;function G(J,F,A){return J&F^~J&A}$.ch32=G;function V(J,F,A){return J&F^J&A^F&A}$.maj32=V;function U(J,F,A){return J^F^A}$.p32=U;function X(J){return Y(J,2)^Y(J,13)^Y(J,22)}$.s0_256=X;function K(J){return Y(J,6)^Y(J,11)^Y(J,25)}$.s1_256=K;function I(J){return Y(J,7)^Y(J,18)^J>>>3}$.g0_256=I;function O(J){return Y(J,17)^Y(J,19)^J>>>10}$.g1_256=O}}),iQ=q$({"node_modules/hash.js/lib/hash/sha/1.js"($,Q){var Y=aQ(),Z=eQ(),G=rQ(),V=Y.rotl32,U=Y.sum32,X=Y.sum32_5,K=G.ft_1,I=Z.BlockHash,O=[1518500249,1859775393,2400959708,3395469782];function J(){if(!(this instanceof J))return new J;I.call(this),this.h=[1732584193,4023233417,2562383102,271733878,3285377520],this.W=new Array(80)}Y.inherits(J,I),Q.exports=J,J.blockSize=512,J.outSize=160,J.hmacStrength=80,J.padLength=64,J.prototype._update=function(F,A){for(var H=this.W,W=0;W<16;W++)H[W]=F[A+W];for(;W<H.length;W++)H[W]=V(H[W-3]^H[W-8]^H[W-14]^H[W-16],1);var E=this.h[0],T=this.h[1],D=this.h[2],C=this.h[3],L=this.h[4];for(W=0;W<H.length;W++){var R=~~(W/20),P=X(V(E,5),K(R,T,D,C),L,H[W],O[R]);L=C,C=D,D=V(T,30),T=E,E=P}this.h[0]=U(this.h[0],E),this.h[1]=U(this.h[1],T),this.h[2]=U(this.h[2],D),this.h[3]=U(this.h[3],C),this.h[4]=U(this.h[4],L)},J.prototype._digest=function(F){return F==="hex"?Y.toHex32(this.h,"big"):Y.split32(this.h,"big")}}}),$Y=q$({"node_modules/hash.js/lib/hash/sha/256.js"($,Q){var Y=aQ(),Z=eQ(),G=rQ(),V=ZQ(),U=Y.sum32,X=Y.sum32_4,K=Y.sum32_5,I=G.ch32,O=G.maj32,J=G.s0_256,F=G.s1_256,A=G.g0_256,H=G.g1_256,W=Z.BlockHash,E=[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 T(){if(!(this instanceof T))return new T;W.call(this),this.h=[1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225],this.k=E,this.W=new Array(64)}Y.inherits(T,W),Q.exports=T,T.blockSize=512,T.outSize=256,T.hmacStrength=192,T.padLength=64,T.prototype._update=function(D,C){for(var L=this.W,R=0;R<16;R++)L[R]=D[C+R];for(;R<L.length;R++)L[R]=X(H(L[R-2]),L[R-7],A(L[R-15]),L[R-16]);var P=this.h[0],z=this.h[1],M=this.h[2],S=this.h[3],v=this.h[4],q=this.h[5],j=this.h[6],k=this.h[7];for(V(this.k.length===L.length),R=0;R<L.length;R++){var g=K(k,F(v),I(v,q,j),this.k[R],L[R]),_=U(J(P),O(P,z,M));k=j,j=q,q=v,v=U(S,g),S=M,M=z,z=P,P=U(g,_)}this.h[0]=U(this.h[0],P),this.h[1]=U(this.h[1],z),this.h[2]=U(this.h[2],M),this.h[3]=U(this.h[3],S),this.h[4]=U(this.h[4],v),this.h[5]=U(this.h[5],q),this.h[6]=U(this.h[6],j),this.h[7]=U(this.h[7],k)},T.prototype._digest=function(D){return D==="hex"?Y.toHex32(this.h,"big"):Y.split32(this.h,"big")}}}),QY=q$({"node_modules/hash.js/lib/hash/sha/224.js"($,Q){var Y=aQ(),Z=$Y();function G(){if(!(this instanceof G))return new G;Z.call(this),this.h=[3238371032,914150663,812702999,4144912697,4290775857,1750603025,1694076839,3204075428]}Y.inherits(G,Z),Q.exports=G,G.blockSize=512,G.outSize=224,G.hmacStrength=192,G.padLength=64,G.prototype._digest=function(V){return V==="hex"?Y.toHex32(this.h.slice(0,7),"big"):Y.split32(this.h.slice(0,7),"big")}}}),YY=q$({"node_modules/hash.js/lib/hash/sha/512.js"($,Q){var Y=aQ(),Z=eQ(),G=ZQ(),V=Y.rotr64_hi,U=Y.rotr64_lo,X=Y.shr64_hi,K=Y.shr64_lo,I=Y.sum64,O=Y.sum64_hi,J=Y.sum64_lo,F=Y.sum64_4_hi,A=Y.sum64_4_lo,H=Y.sum64_5_hi,W=Y.sum64_5_lo,E=Z.BlockHash,T=[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 D(){if(!(this instanceof D))return new D;E.call(this),this.h=[1779033703,4089235720,3144134277,2227873595,1013904242,4271175723,2773480762,1595750129,1359893119,2917565137,2600822924,725511199,528734635,4215389547,1541459225,327033209],this.k=T,this.W=new Array(160)}Y.inherits(D,E),Q.exports=D,D.blockSize=1024,D.outSize=512,D.hmacStrength=192,D.padLength=128,D.prototype._prepareBlock=function(_,N){for(var x=this.W,B=0;B<32;B++)x[B]=_[N+B];for(;B<x.length;B+=2){var y=k(x[B-4],x[B-3]),w=g(x[B-4],x[B-3]),p=x[B-14],f=x[B-13],c=q(x[B-30],x[B-29]),h=j(x[B-30],x[B-29]),d=x[B-32],b=x[B-31];x[B]=F(y,w,p,f,c,h,d,b),x[B+1]=A(y,w,p,f,c,h,d,b)}},D.prototype._update=function(_,N){this._prepareBlock(_,N);var x=this.W,B=this.h[0],y=this.h[1],w=this.h[2],p=this.h[3],f=this.h[4],c=this.h[5],h=this.h[6],d=this.h[7],b=this.h[8],l=this.h[9],o=this.h[10],u=this.h[11],n=this.h[12],s=this.h[13],t=this.h[14],m=this.h[15];G(this.k.length===x.length);for(var a=0;a<x.length;a+=2){var e=t,r=m,i=S(b,l),$0=v(b,l),Q0=C(b,l,o,u,n,s),Y0=L(b,l,o,u,n,s),Z0=this.k[a],G0=this.k[a+1],V0=x[a],U0=x[a+1],X0=H(e,r,i,$0,Q0,Y0,Z0,G0,V0,U0),K0=W(e,r,i,$0,Q0,Y0,Z0,G0,V0,U0);e=z(B,y),r=M(B,y),i=R(B,y,w,p,f,c),$0=P(B,y,w,p,f,c);var I0=O(e,r,i,$0),O0=J(e,r,i,$0);t=n,m=s,n=o,s=u,o=b,u=l,b=O(h,d,X0,K0),l=J(d,d,X0,K0),h=f,d=c,f=w,c=p,w=B,p=y,B=O(X0,K0,I0,O0),y=J(X0,K0,I0,O0)}I(this.h,0,B,y),I(this.h,2,w,p),I(this.h,4,f,c),I(this.h,6,h,d),I(this.h,8,b,l),I(this.h,10,o,u),I(this.h,12,n,s),I(this.h,14,t,m)},D.prototype._digest=function(_){return _==="hex"?Y.toHex32(this.h,"big"):Y.split32(this.h,"big")};function C(_,N,x,B,y){var w=_&x^~_&y;return w<0&&(w+=4294967296),w}function L(_,N,x,B,y,w){var p=N&B^~N&w;return p<0&&(p+=4294967296),p}function R(_,N,x,B,y){var w=_&x^_&y^x&y;return w<0&&(w+=4294967296),w}function P(_,N,x,B,y,w){var p=N&B^N&w^B&w;return p<0&&(p+=4294967296),p}function z(_,N){var x=V(_,N,28),B=V(N,_,2),y=V(N,_,7),w=x^B^y;return w<0&&(w+=4294967296),w}function M(_,N){var x=U(_,N,28),B=U(N,_,2),y=U(N,_,7),w=x^B^y;return w<0&&(w+=4294967296),w}function S(_,N){var x=V(_,N,14),B=V(_,N,18),y=V(N,_,9),w=x^B^y;return w<0&&(w+=4294967296),w}function v(_,N){var x=U(_,N,14),B=U(_,N,18),y=U(N,_,9),w=x^B^y;return w<0&&(w+=4294967296),w}function q(_,N){var x=V(_,N,1),B=V(_,N,8),y=X(_,N,7),w=x^B^y;return w<0&&(w+=4294967296),w}function j(_,N){var x=U(_,N,1),B=U(_,N,8),y=K(_,N,7),w=x^B^y;return w<0&&(w+=4294967296),w}function k(_,N){var x=V(_,N,19),B=V(N,_,29),y=X(_,N,6),w=x^B^y;return w<0&&(w+=4294967296),w}function g(_,N){var x=U(_,N,19),B=U(N,_,29),y=K(_,N,6),w=x^B^y;return w<0&&(w+=4294967296),w}}}),ZY=q$({"node_modules/hash.js/lib/hash/sha/384.js"($,Q){var Y=aQ(),Z=YY();function G(){if(!(this instanceof G))return new G;Z.call(this),this.h=[3418070365,3238371032,1654270250,914150663,2438529370,812702999,355462360,4144912697,1731405415,4290775857,2394180231,1750603025,3675008525,1694076839,1203062813,3204075428]}Y.inherits(G,Z),Q.exports=G,G.blockSize=1024,G.outSize=384,G.hmacStrength=192,G.padLength=128,G.prototype._digest=function(V){return V==="hex"?Y.toHex32(this.h.slice(0,12),"big"):Y.split32(this.h.slice(0,12),"big")}}}),GY=q$({"node_modules/hash.js/lib/hash/sha.js"($){$.sha1=iQ(),$.sha224=QY(),$.sha256=$Y(),$.sha384=ZY(),$.sha512=YY()}}),VY=q$({"node_modules/hash.js/lib/hash/ripemd.js"($){var Q=aQ(),Y=eQ(),Z=Q.rotl32,G=Q.sum32,V=Q.sum32_3,U=Q.sum32_4,X=Y.BlockHash;function K(){if(!(this instanceof K))return new K;X.call(this),this.h=[1732584193,4023233417,2562383102,271733878,3285377520],this.endian="little"}Q.inherits(K,X),$.ripemd160=K,K.blockSize=512,K.outSize=160,K.hmacStrength=192,K.padLength=64,K.prototype._update=function(E,T){for(var D=this.h[0],C=this.h[1],L=this.h[2],R=this.h[3],P=this.h[4],z=D,M=C,S=L,v=R,q=P,j=0;j<80;j++){var k=G(Z(U(D,I(j,C,L,R),E[F[j]+T],O(j)),H[j]),P);D=P,P=R,R=Z(L,10),L=C,C=k,k=G(Z(U(z,I(79-j,M,S,v),E[A[j]+T],J(j)),W[j]),q),z=q,q=v,v=Z(S,10),S=M,M=k}k=V(this.h[1],L,v),this.h[1]=V(this.h[2],R,q),this.h[2]=V(this.h[3],P,z),this.h[3]=V(this.h[4],D,M),this.h[4]=V(this.h[0],C,S),this.h[0]=k},K.prototype._digest=function(E){return E==="hex"?Q.toHex32(this.h,"little"):Q.split32(this.h,"little")};function I(E,T,D,C){return E<=15?T^D^C:E<=31?T&D|~T&C:E<=47?(T|~D)^C:E<=63?T&C|D&~C:T^(D|~C)}function O(E){return E<=15?0:E<=31?1518500249:E<=47?1859775393:E<=63?2400959708:2840853838}function J(E){return E<=15?1352829926:E<=31?1548603684:E<=47?1836072691:E<=63?2053994217:0}var F=[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],A=[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],H=[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],W=[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]}}),UY=q$({"node_modules/hash.js/lib/hash/hmac.js"($,Q){var Y=aQ(),Z=ZQ();function G(V,U,X){if(!(this instanceof G))return new G(V,U,X);this.Hash=V,this.blockSize=V.blockSize/8,this.outSize=V.outSize/8,this.inner=null,this.outer=null,this._init(Y.toArray(U,X))}Q.exports=G,G.prototype._init=function(V){V.length>this.blockSize&&(V=new this.Hash().update(V).digest()),Z(V.length<=this.blockSize);for(var U=V.length;U<this.blockSize;U++)V.push(0);for(U=0;U<V.length;U++)V[U]^=54;for(this.inner=new this.Hash().update(V),U=0;U<V.length;U++)V[U]^=106;this.outer=new this.Hash().update(V)},G.prototype.update=function(V,U){return this.inner.update(V,U),this},G.prototype.digest=function(V){return this.outer.update(this.inner.digest()),this.outer.digest(V)}}}),XY=q$({"node_modules/hash.js/lib/hash.js"($){var Q=$;Q.utils=aQ(),Q.common=eQ(),Q.sha=GY(),Q.ripemd=VY(),Q.hmac=UY(),Q.sha1=Q.sha.sha1,Q.sha256=Q.sha.sha256,Q.sha224=Q.sha.sha224,Q.sha384=Q.sha.sha384,Q.sha512=Q.sha.sha512,Q.ripemd160=Q.ripemd.ripemd160}}),KY=q$({"node_modules/elliptic/lib/elliptic/precomputed/secp256k1.js"($,Q){Q.exports={doubles:{step:4,points:[["e60fce93b59e9ec53011aabc21c23e97b2a31369b87a5ae9c44ee89e2a6dec0a","f7e3507399e595929db99f34f57937101296891e44d23f0be1f32cce69616821"],["8282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f51508","11f8a8098557dfe45e8256e830b60ace62d613ac2f7b17bed31b6eaff6e26caf"],["175e159f728b865a72f99cc6c6fc846de0b93833fd2222ed73fce5b551e5b739","d3506e0d9e3c79eba4ef97a51ff71f5eacb5955add24345c6efa6ffee9fed695"],["363d90d447b00c9c99ceac05b6262ee053441c7e55552ffe526bad8f83ff4640","4e273adfc732221953b445397f3363145b9a89008199ecb62003c7f3bee9de9"],["8b4b5f165df3c2be8c6244b5b745638843e4a781a15bcd1b69f79a55dffdf80c","4aad0a6f68d308b4b3fbd7813ab0da04f9e336546162ee56b3eff0c65fd4fd36"],["723cbaa6e5db996d6bf771c00bd548c7b700dbffa6c0e77bcb6115925232fcda","96e867b5595cc498a921137488824d6e2660a0653779494801dc069d9eb39f5f"],["eebfa4d493bebf98ba5feec812c2d3b50947961237a919839a533eca0e7dd7fa","5d9a8ca3970ef0f269ee7edaf178089d9ae4cdc3a711f712ddfd4fdae1de8999"],["100f44da696e71672791d0a09b7bde459f1215a29b3c03bfefd7835b39a48db0","cdd9e13192a00b772ec8f3300c090666b7ff4a18ff5195ac0fbd5cd62bc65a09"],["e1031be262c7ed1b1dc9227a4a04c017a77f8d4464f3b3852c8acde6e534fd2d","9d7061928940405e6bb6a4176597535af292dd419e1ced79a44f18f29456a00d"],["feea6cae46d55b530ac2839f143bd7ec5cf8b266a41d6af52d5e688d9094696d","e57c6b6c97dce1bab06e4e12bf3ecd5c981c8957cc41442d3155debf18090088"],["da67a91d91049cdcb367be4be6ffca3cfeed657d808583de33fa978bc1ec6cb1","9bacaa35481642bc41f463f7ec9780e5dec7adc508f740a17e9ea8e27a68be1d"],["53904faa0b334cdda6e000935ef22151ec08d0f7bb11069f57545ccc1a37b7c0","5bc087d0bc80106d88c9eccac20d3c1c13999981e14434699dcb096b022771c8"],["8e7bcd0bd35983a7719cca7764ca906779b53a043a9b8bcaeff959f43ad86047","10b7770b2a3da4b3940310420ca9514579e88e2e47fd68b3ea10047e8460372a"],["385eed34c1cdff21e6d0818689b81bde71a7f4f18397e6690a841e1599c43862","283bebc3e8ea23f56701de19e9ebf4576b304eec2086dc8cc0458fe5542e5453"],["6f9d9b803ecf191637c73a4413dfa180fddf84a5947fbc9c606ed86c3fac3a7","7c80c68e603059ba69b8e2a30e45c4d47ea4dd2f5c281002d86890603a842160"],["3322d401243c4e2582a2147c104d6ecbf774d163db0f5e5313b7e0e742d0e6bd","56e70797e9664ef5bfb019bc4ddaf9b72805f63ea2873af624f3a2e96c28b2a0"],["85672c7d2de0b7da2bd1770d89665868741b3f9af7643397721d74d28134ab83","7c481b9b5b43b2eb6374049bfa62c2e5e77f17fcc5298f44c8e3094f790313a6"],["948bf809b1988a46b06c9f1919413b10f9226c60f668832ffd959af60c82a0a","53a562856dcb6646dc6b74c5d1c3418c6d4dff08c97cd2bed4cb7f88d8c8e589"],["6260ce7f461801c34f067ce0f02873a8f1b0e44dfc69752accecd819f38fd8e8","bc2da82b6fa5b571a7f09049776a1ef7ecd292238051c198c1a84e95b2b4ae17"],["e5037de0afc1d8d43d8348414bbf4103043ec8f575bfdc432953cc8d2037fa2d","4571534baa94d3b5f9f98d09fb990bddbd5f5b03ec481f10e0e5dc841d755bda"],["e06372b0f4a207adf5ea905e8f1771b4e7e8dbd1c6a6c5b725866a0ae4fce725","7a908974bce18cfe12a27bb2ad5a488cd7484a7787104870b27034f94eee31dd"],["213c7a715cd5d45358d0bbf9dc0ce02204b10bdde2a3f58540ad6908d0559754","4b6dad0b5ae462507013ad06245ba190bb4850f5f36a7eeddff2c27534b458f2"],["4e7c272a7af4b34e8dbb9352a5419a87e2838c70adc62cddf0cc3a3b08fbd53c","17749c766c9d0b18e16fd09f6def681b530b9614bff7dd33e0b3941817dcaae6"],["fea74e3dbe778b1b10f238ad61686aa5c76e3db2be43057632427e2840fb27b6","6e0568db9b0b13297cf674deccb6af93126b596b973f7b77701d3db7f23cb96f"],["76e64113f677cf0e10a2570d599968d31544e179b760432952c02a4417bdde39","c90ddf8dee4e95cf577066d70681f0d35e2a33d2b56d2032b4b1752d1901ac01"],["c738c56b03b2abe1e8281baa743f8f9a8f7cc643df26cbee3ab150242bcbb891","893fb578951ad2537f718f2eacbfbbbb82314eef7880cfe917e735d9699a84c3"],["d895626548b65b81e264c7637c972877d1d72e5f3a925014372e9f6588f6c14b","febfaa38f2bc7eae728ec60818c340eb03428d632bb067e179363ed75d7d991f"],["b8da94032a957518eb0f6433571e8761ceffc73693e84edd49150a564f676e03","2804dfa44805a1e4d7c99cc9762808b092cc584d95ff3b511488e4e74efdf6e7"],["e80fea14441fb33a7d8adab9475d7fab2019effb5156a792f1a11778e3c0df5d","eed1de7f638e00771e89768ca3ca94472d155e80af322ea9fcb4291b6ac9ec78"],["a301697bdfcd704313ba48e51d567543f2a182031efd6915ddc07bbcc4e16070","7370f91cfb67e4f5081809fa25d40f9b1735dbf7c0a11a130c0d1a041e177ea1"],["90ad85b389d6b936463f9d0512678de208cc330b11307fffab7ac63e3fb04ed4","e507a3620a38261affdcbd9427222b839aefabe1582894d991d4d48cb6ef150"],["8f68b9d2f63b5f339239c1ad981f162ee88c5678723ea3351b7b444c9ec4c0da","662a9f2dba063986de1d90c2b6be215dbbea2cfe95510bfdf23cbf79501fff82"],["e4f3fb0176af85d65ff99ff9198c36091f48e86503681e3e6686fd5053231e11","1e63633ad0ef4f1c1661a6d0ea02b7286cc7e74ec951d1c9822c38576feb73bc"],["8c00fa9b18ebf331eb961537a45a4266c7034f2f0d4e1d0716fb6eae20eae29e","efa47267fea521a1a9dc343a3736c974c2fadafa81e36c54e7d2a4c66702414b"],["e7a26ce69dd4829f3e10cec0a9e98ed3143d084f308b92c0997fddfc60cb3e41","2a758e300fa7984b471b006a1aafbb18d0a6b2c0420e83e20e8a9421cf2cfd51"],["b6459e0ee3662ec8d23540c223bcbdc571cbcb967d79424f3cf29eb3de6b80ef","67c876d06f3e06de1dadf16e5661db3c4b3ae6d48e35b2ff30bf0b61a71ba45"],["d68a80c8280bb840793234aa118f06231d6f1fc67e73c5a5deda0f5b496943e8","db8ba9fff4b586d00c4b1f9177b0e28b5b0e7b8f7845295a294c84266b133120"],["324aed7df65c804252dc0270907a30b09612aeb973449cea4095980fc28d3d5d","648a365774b61f2ff130c0c35aec1f4f19213b0c7e332843967224af96ab7c84"],["4df9c14919cde61f6d51dfdbe5fee5dceec4143ba8d1ca888e8bd373fd054c96","35ec51092d8728050974c23a1d85d4b5d506cdc288490192ebac06cad10d5d"],["9c3919a84a474870faed8a9c1cc66021523489054d7f0308cbfc99c8ac1f98cd","ddb84f0f4a4ddd57584f044bf260e641905326f76c64c8e6be7e5e03d4fc599d"],["6057170b1dd12fdf8de05f281d8e06bb91e1493a8b91d4cc5a21382120a959e5","9a1af0b26a6a4807add9a2daf71df262465152bc3ee24c65e899be932385a2a8"],["a576df8e23a08411421439a4518da31880cef0fba7d4df12b1a6973eecb94266","40a6bf20e76640b2c92b97afe58cd82c432e10a7f514d9f3ee8be11ae1b28ec8"],["7778a78c28dec3e30a05fe9629de8c38bb30d1f5cf9a3a208f763889be58ad71","34626d9ab5a5b22ff7098e12f2ff580087b38411ff24ac563b513fc1fd9f43ac"],["928955ee637a84463729fd30e7afd2ed5f96274e5ad7e5cb09eda9c06d903ac","c25621003d3f42a827b78a13093a95eeac3d26efa8a8d83fc5180e935bcd091f"],["85d0fef3ec6db109399064f3a0e3b2855645b4a907ad354527aae75163d82751","1f03648413a38c0be29d496e582cf5663e8751e96877331582c237a24eb1f962"],["ff2b0dce97eece97c1c9b6041798b85dfdfb6d8882da20308f5404824526087e","493d13fef524ba188af4c4dc54d07936c7b7ed6fb90e2ceb2c951e01f0c29907"],["827fbbe4b1e880ea9ed2b2e6301b212b57f1ee148cd6dd28780e5e2cf856e241","c60f9c923c727b0b71bef2c67d1d12687ff7a63186903166d605b68baec293ec"],["eaa649f21f51bdbae7be4ae34ce6e5217a58fdce7f47f9aa7f3b58fa2120e2b3","be3279ed5bbbb03ac69a80f89879aa5a01a6b965f13f7e59d47a5305ba5ad93d"],["e4a42d43c5cf169d9391df6decf42ee541b6d8f0c9a137401e23632dda34d24f","4d9f92e716d1c73526fc99ccfb8ad34ce886eedfa8d8e4f13a7f7131deba9414"],["1ec80fef360cbdd954160fadab352b6b92b53576a88fea4947173b9d4300bf19","aeefe93756b5340d2f3a4958a7abbf5e0146e77f6295a07b671cdc1cc107cefd"],["146a778c04670c2f91b00af4680dfa8bce3490717d58ba889ddb5928366642be","b318e0ec3354028add669827f9d4b2870aaa971d2f7e5ed1d0b297483d83efd0"],["fa50c0f61d22e5f07e3acebb1aa07b128d0012209a28b9776d76a8793180eef9","6b84c6922397eba9b72cd2872281a68a5e683293a57a213b38cd8d7d3f4f2811"],["da1d61d0ca721a11b1a5bf6b7d88e8421a288ab5d5bba5220e53d32b5f067ec2","8157f55a7c99306c79c0766161c91e2966a73899d279b48a655fba0f1ad836f1"],["a8e282ff0c9706907215ff98e8fd416615311de0446f1e062a73b0610d064e13","7f97355b8db81c09abfb7f3c5b2515888b679a3e50dd6bd6cef7c73111f4cc0c"],["174a53b9c9a285872d39e56e6913cab15d59b1fa512508c022f382de8319497c","ccc9dc37abfc9c1657b4155f2c47f9e6646b3a1d8cb9854383da13ac079afa73"],["959396981943785c3d3e57edf5018cdbe039e730e4918b3d884fdff09475b7ba","2e7e552888c331dd8ba0386a4b9cd6849c653f64c8709385e9b8abf87524f2fd"],["d2a63a50ae401e56d645a1153b109a8fcca0a43d561fba2dbb51340c9d82b151","e82d86fb6443fcb7565aee58b2948220a70f750af484ca52d4142174dcf89405"],["64587e2335471eb890ee7896d7cfdc866bacbdbd3839317b3436f9b45617e073","d99fcdd5bf6902e2ae96dd6447c299a185b90a39133aeab358299e5e9faf6589"],["8481bde0e4e4d885b3a546d3e549de042f0aa6cea250e7fd358d6c86dd45e458","38ee7b8cba5404dd84a25bf39cecb2ca900a79c42b262e556d64b1b59779057e"],["13464a57a78102aa62b6979ae817f4637ffcfed3c4b1ce30bcd6303f6caf666b","69be159004614580ef7e433453ccb0ca48f300a81d0942e13f495a907f6ecc27"],["bc4a9df5b713fe2e9aef430bcc1dc97a0cd9ccede2f28588cada3a0d2d83f366","d3a81ca6e785c06383937adf4b798caa6e8a9fbfa547b16d758d666581f33c1"],["8c28a97bf8298bc0d23d8c749452a32e694b65e30a9472a3954ab30fe5324caa","40a30463a3305193378fedf31f7cc0eb7ae784f0451cb9459e71dc73cbef9482"],["8ea9666139527a8c1dd94ce4f071fd23c8b350c5a4bb33748c4ba111faccae0","620efabbc8ee2782e24e7c0cfb95c5d735b783be9cf0f8e955af34a30e62b945"],["dd3625faef5ba06074669716bbd3788d89bdde815959968092f76cc4eb9a9787","7a188fa3520e30d461da2501045731ca941461982883395937f68d00c644a573"],["f710d79d9eb962297e4f6232b40e8f7feb2bc63814614d692c12de752408221e","ea98e67232d3b3295d3b535532115ccac8612c721851617526ae47a9c77bfc82"]]},naf:{wnd:7,points:[["f9308a019258c31049344f85f89d5229b531c845836f99b08601f113bce036f9","388f7b0f632de8140fe337e62a37f3566500a99934c2231b6cb9fd7584b8e672"],["2f8bde4d1a07209355b4a7250a5c5128e88b84bddc619ab7cba8d569b240efe4","d8ac222636e5e3d6d4dba9dda6c9c426f788271bab0d6840dca87d3aa6ac62d6"],["5cbdf0646e5db4eaa398f365f2ea7a0e3d419b7e0330e39ce92bddedcac4f9bc","6aebca40ba255960a3178d6d861a54dba813d0b813fde7b5a5082628087264da"],["acd484e2f0c7f65309ad178a9f559abde09796974c57e714c35f110dfc27ccbe","cc338921b0a7d9fd64380971763b61e9add888a4375f8e0f05cc262ac64f9c37"],["774ae7f858a9411e5ef4246b70c65aac5649980be5c17891bbec17895da008cb","d984a032eb6b5e190243dd56d7b7b365372db1e2dff9d6a8301d74c9c953c61b"],["f28773c2d975288bc7d1d205c3748651b075fbc6610e58cddeeddf8f19405aa8","ab0902e8d880a89758212eb65cdaf473a1a06da521fa91f29b5cb52db03ed81"],["d7924d4f7d43ea965a465ae3095ff41131e5946f3c85f79e44adbcf8e27e080e","581e2872a86c72a683842ec228cc6defea40af2bd896d3a5c504dc9ff6a26b58"],["defdea4cdb677750a420fee807eacf21eb9898ae79b9768766e4faa04a2d4a34","4211ab0694635168e997b0ead2a93daeced1f4a04a95c0f6cfb199f69e56eb77"],["2b4ea0a797a443d293ef5cff444f4979f06acfebd7e86d277475656138385b6c","85e89bc037945d93b343083b5a1c86131a01f60c50269763b570c854e5c09b7a"],["352bbf4a4cdd12564f93fa332ce333301d9ad40271f8107181340aef25be59d5","321eb4075348f534d59c18259dda3e1f4a1b3b2e71b1039c67bd3d8bcf81998c"],["2fa2104d6b38d11b0230010559879124e42ab8dfeff5ff29dc9cdadd4ecacc3f","2de1068295dd865b64569335bd5dd80181d70ecfc882648423ba76b532b7d67"],["9248279b09b4d68dab21a9b066edda83263c3d84e09572e269ca0cd7f5453714","73016f7bf234aade5d1aa71bdea2b1ff3fc0de2a887912ffe54a32ce97cb3402"],["daed4f2be3a8bf278e70132fb0beb7522f570e144bf615c07e996d443dee8729","a69dce4a7d6c98e8d4a1aca87ef8d7003f83c230f3afa726ab40e52290be1c55"],["c44d12c7065d812e8acf28d7cbb19f9011ecd9e9fdf281b0e6a3b5e87d22e7db","2119a460ce326cdc76c45926c982fdac0e106e861edf61c5a039063f0e0e6482"],["6a245bf6dc698504c89a20cfded60853152b695336c28063b61c65cbd269e6b4","e022cf42c2bd4a708b3f5126f16a24ad8b33ba48d0423b6efd5e6348100d8a82"],["1697ffa6fd9de627c077e3d2fe541084ce13300b0bec1146f95ae57f0d0bd6a5","b9c398f186806f5d27561506e4557433a2cf15009e498ae7adee9d63d01b2396"],["605bdb019981718b986d0f07e834cb0d9deb8360ffb7f61df982345ef27a7479","2972d2de4f8d20681a78d93ec96fe23c26bfae84fb14db43b01e1e9056b8c49"],["62d14dab4150bf497402fdc45a215e10dcb01c354959b10cfe31c7e9d87ff33d","80fc06bd8cc5b01098088a1950eed0db01aa132967ab472235f5642483b25eaf"],["80c60ad0040f27dade5b4b06c408e56b2c50e9f56b9b8b425e555c2f86308b6f","1c38303f1cc5c30f26e66bad7fe72f70a65eed4cbe7024eb1aa01f56430bd57a"],["7a9375ad6167ad54aa74c6348cc54d344cc5dc9487d847049d5eabb0fa03c8fb","d0e3fa9eca8726909559e0d79269046bdc59ea10c70ce2b02d499ec224dc7f7"],["d528ecd9b696b54c907a9ed045447a79bb408ec39b68df504bb51f459bc3ffc9","eecf41253136e5f99966f21881fd656ebc4345405c520dbc063465b521409933"],["49370a4b5f43412ea25f514e8ecdad05266115e4a7ecb1387231808f8b45963","758f3f41afd6ed428b3081b0512fd62a54c3f3afbb5b6764b653052a12949c9a"],["77f230936ee88cbbd73df930d64702ef881d811e0e1498e2f1c13eb1fc345d74","958ef42a7886b6400a08266e9ba1b37896c95330d97077cbbe8eb3c7671c60d6"],["f2dac991cc4ce4b9ea44887e5c7c0bce58c80074ab9d4dbaeb28531b7739f530","e0dedc9b3b2f8dad4da1f32dec2531df9eb5fbeb0598e4fd1a117dba703a3c37"],["463b3d9f662621fb1b4be8fbbe2520125a216cdfc9dae3debcba4850c690d45b","5ed430d78c296c3543114306dd8622d7c622e27c970a1de31cb377b01af7307e"],["f16f804244e46e2a09232d4aff3b59976b98fac14328a2d1a32496b49998f247","cedabd9b82203f7e13d206fcdf4e33d92a6c53c26e5cce26d6579962c4e31df6"],["caf754272dc84563b0352b7a14311af55d245315ace27c65369e15f7151d41d1","cb474660ef35f5f2a41b643fa5e460575f4fa9b7962232a5c32f908318a04476"],["2600ca4b282cb986f85d0f1709979d8b44a09c07cb86d7c124497bc86f082120","4119b88753c15bd6a693b03fcddbb45d5ac6be74ab5f0ef44b0be9475a7e4b40"],["7635ca72d7e8432c338ec53cd12220bc01c48685e24f7dc8c602a7746998e435","91b649609489d613d1d5e590f78e6d74ecfc061d57048bad9e76f302c5b9c61"],["754e3239f325570cdbbf4a87deee8a66b7f2b33479d468fbc1a50743bf56cc18","673fb86e5bda30fb3cd0ed304ea49a023ee33d0197a695d0c5d98093c536683"],["e3e6bd1071a1e96aff57859c82d570f0330800661d1c952f9fe2694691d9b9e8","59c9e0bba394e76f40c0aa58379a3cb6a5a2283993e90c4167002af4920e37f5"],["186b483d056a033826ae73d88f732985c4ccb1f32ba35f4b4cc47fdcf04aa6eb","3b952d32c67cf77e2e17446e204180ab21fb8090895138b4a4a797f86e80888b"],["df9d70a6b9876ce544c98561f4be4f725442e6d2b737d9c91a8321724ce0963f","55eb2dafd84d6ccd5f862b785dc39d4ab157222720ef9da217b8c45cf2ba2417"],["5edd5cc23c51e87a497ca815d5dce0f8ab52554f849ed8995de64c5f34ce7143","efae9c8dbc14130661e8cec030c89ad0c13c66c0d17a2905cdc706ab7399a868"],["290798c2b6476830da12fe02287e9e777aa3fba1c355b17a722d362f84614fba","e38da76dcd440621988d00bcf79af25d5b29c094db2a23146d003afd41943e7a"],["af3c423a95d9f5b3054754efa150ac39cd29552fe360257362dfdecef4053b45","f98a3fd831eb2b749a93b0e6f35cfb40c8cd5aa667a15581bc2feded498fd9c6"],["766dbb24d134e745cccaa28c99bf274906bb66b26dcf98df8d2fed50d884249a","744b1152eacbe5e38dcc887980da38b897584a65fa06cedd2c924f97cbac5996"],["59dbf46f8c94759ba21277c33784f41645f7b44f6c596a58ce92e666191abe3e","c534ad44175fbc300f4ea6ce648309a042ce739a7919798cd85e216c4a307f6e"],["f13ada95103c4537305e691e74e9a4a8dd647e711a95e73cb62dc6018cfd87b8","e13817b44ee14de663bf4bc808341f326949e21a6a75c2570778419bdaf5733d"],["7754b4fa0e8aced06d4167a2c59cca4cda1869c06ebadfb6488550015a88522c","30e93e864e669d82224b967c3020b8fa8d1e4e350b6cbcc537a48b57841163a2"],["948dcadf5990e048aa3874d46abef9d701858f95de8041d2a6828c99e2262519","e491a42537f6e597d5d28a3224b1bc25df9154efbd2ef1d2cbba2cae5347d57e"],["7962414450c76c1689c7b48f8202ec37fb224cf5ac0bfa1570328a8a3d7c77ab","100b610ec4ffb4760d5c1fc133ef6f6b12507a051f04ac5760afa5b29db83437"],["3514087834964b54b15b160644d915485a16977225b8847bb0dd085137ec47ca","ef0afbb2056205448e1652c48e8127fc6039e77c15c2378b7e7d15a0de293311"],["d3cc30ad6b483e4bc79ce2c9dd8bc54993e947eb8df787b442943d3f7b527eaf","8b378a22d827278d89c5e9be8f9508ae3c2ad46290358630afb34db04eede0a4"],["1624d84780732860ce1c78fcbfefe08b2b29823db913f6493975ba0ff4847610","68651cf9b6da903e0914448c6cd9d4ca896878f5282be4c8cc06e2a404078575"],["733ce80da955a8a26902c95633e62a985192474b5af207da6df7b4fd5fc61cd4","f5435a2bd2badf7d485a4d8b8db9fcce3e1ef8e0201e4578c54673bc1dc5ea1d"],["15d9441254945064cf1a1c33bbd3b49f8966c5092171e699ef258dfab81c045c","d56eb30b69463e7234f5137b73b84177434800bacebfc685fc37bbe9efe4070d"],["a1d0fcf2ec9de675b612136e5ce70d271c21417c9d2b8aaaac138599d0717940","edd77f50bcb5a3cab2e90737309667f2641462a54070f3d519212d39c197a629"],["e22fbe15c0af8ccc5780c0735f84dbe9a790badee8245c06c7ca37331cb36980","a855babad5cd60c88b430a69f53a1a7a38289154964799be43d06d77d31da06"],["311091dd9860e8e20ee13473c1155f5f69635e394704eaa74009452246cfa9b3","66db656f87d1f04fffd1f04788c06830871ec5a64feee685bd80f0b1286d8374"],["34c1fd04d301be89b31c0442d3e6ac24883928b45a9340781867d4232ec2dbdf","9414685e97b1b5954bd46f730174136d57f1ceeb487443dc5321857ba73abee"],["f219ea5d6b54701c1c14de5b557eb42a8d13f3abbcd08affcc2a5e6b049b8d63","4cb95957e83d40b0f73af4544cccf6b1f4b08d3c07b27fb8d8c2962a400766d1"],["d7b8740f74a8fbaab1f683db8f45de26543a5490bca627087236912469a0b448","fa77968128d9c92ee1010f337ad4717eff15db5ed3c049b3411e0315eaa4593b"],["32d31c222f8f6f0ef86f7c98d3a3335ead5bcd32abdd94289fe4d3091aa824bf","5f3032f5892156e39ccd3d7915b9e1da2e6dac9e6f26e961118d14b8462e1661"],["7461f371914ab32671045a155d9831ea8793d77cd59592c4340f86cbc18347b5","8ec0ba238b96bec0cbdddcae0aa442542eee1ff50c986ea6b39847b3cc092ff6"],["ee079adb1df1860074356a25aa38206a6d716b2c3e67453d287698bad7b2b2d6","8dc2412aafe3be5c4c5f37e0ecc5f9f6a446989af04c4e25ebaac479ec1c8c1e"],["16ec93e447ec83f0467b18302ee620f7e65de331874c9dc72bfd8616ba9da6b5","5e4631150e62fb40d0e8c2a7ca5804a39d58186a50e497139626778e25b0674d"],["eaa5f980c245f6f038978290afa70b6bd8855897f98b6aa485b96065d537bd99","f65f5d3e292c2e0819a528391c994624d784869d7e6ea67fb18041024edc07dc"],["78c9407544ac132692ee1910a02439958ae04877151342ea96c4b6b35a49f51","f3e0319169eb9b85d5404795539a5e68fa1fbd583c064d2462b675f194a3ddb4"],["494f4be219a1a77016dcd838431aea0001cdc8ae7a6fc688726578d9702857a5","42242a969283a5f339ba7f075e36ba2af925ce30d767ed6e55f4b031880d562c"],["a598a8030da6d86c6bc7f2f5144ea549d28211ea58faa70ebf4c1e665c1fe9b5","204b5d6f84822c307e4b4a7140737aec23fc63b65b35f86a10026dbd2d864e6b"],["c41916365abb2b5d09192f5f2dbeafec208f020f12570a184dbadc3e58595997","4f14351d0087efa49d245b328984989d5caf9450f34bfc0ed16e96b58fa9913"],["841d6063a586fa475a724604da03bc5b92a2e0d2e0a36acfe4c73a5514742881","73867f59c0659e81904f9a1c7543698e62562d6744c169ce7a36de01a8d6154"],["5e95bb399a6971d376026947f89bde2f282b33810928be4ded112ac4d70e20d5","39f23f366809085beebfc71181313775a99c9aed7d8ba38b161384c746012865"],["36e4641a53948fd476c39f8a99fd974e5ec07564b5315d8bf99471bca0ef2f66","d2424b1b1abe4eb8164227b085c9aa9456ea13493fd563e06fd51cf5694c78fc"],["336581ea7bfbbb290c191a2f507a41cf5643842170e914faeab27c2c579f726","ead12168595fe1be99252129b6e56b3391f7ab1410cd1e0ef3dcdcabd2fda224"],["8ab89816dadfd6b6a1f2634fcf00ec8403781025ed6890c4849742706bd43ede","6fdcef09f2f6d0a044e654aef624136f503d459c3e89845858a47a9129cdd24e"],["1e33f1a746c9c5778133344d9299fcaa20b0938e8acff2544bb40284b8c5fb94","60660257dd11b3aa9c8ed618d24edff2306d320f1d03010e33a7d2057f3b3b6"],["85b7c1dcb3cec1b7ee7f30ded79dd20a0ed1f4cc18cbcfcfa410361fd8f08f31","3d98a9cdd026dd43f39048f25a8847f4fcafad1895d7a633c6fed3c35e999511"],["29df9fbd8d9e46509275f4b125d6d45d7fbe9a3b878a7af872a2800661ac5f51","b4c4fe99c775a606e2d8862179139ffda61dc861c019e55cd2876eb2a27d84b"],["a0b1cae06b0a847a3fea6e671aaf8adfdfe58ca2f768105c8082b2e449fce252","ae434102edde0958ec4b19d917a6a28e6b72da1834aff0e650f049503a296cf2"],["4e8ceafb9b3e9a136dc7ff67e840295b499dfb3b2133e4ba113f2e4c0e121e5","cf2174118c8b6d7a4b48f6d534ce5c79422c086a63460502b827ce62a326683c"],["d24a44e047e19b6f5afb81c7ca2f69080a5076689a010919f42725c2b789a33b","6fb8d5591b466f8fc63db50f1c0f1c69013f996887b8244d2cdec417afea8fa3"],["ea01606a7a6c9cdd249fdfcfacb99584001edd28abbab77b5104e98e8e3b35d4","322af4908c7312b0cfbfe369f7a7b3cdb7d4494bc2823700cfd652188a3ea98d"],["af8addbf2b661c8a6c6328655eb96651252007d8c5ea31be4ad196de8ce2131f","6749e67c029b85f52a034eafd096836b2520818680e26ac8f3dfbcdb71749700"],["e3ae1974566ca06cc516d47e0fb165a674a3dabcfca15e722f0e3450f45889","2aeabe7e4531510116217f07bf4d07300de97e4874f81f533420a72eeb0bd6a4"],["591ee355313d99721cf6993ffed1e3e301993ff3ed258802075ea8ced397e246","b0ea558a113c30bea60fc4775460c7901ff0b053d25ca2bdeee98f1a4be5d196"],["11396d55fda54c49f19aa97318d8da61fa8584e47b084945077cf03255b52984","998c74a8cd45ac01289d5833a7beb4744ff536b01b257be4c5767bea93ea57a4"],["3c5d2a1ba39c5a1790000738c9e0c40b8dcdfd5468754b6405540157e017aa7a","b2284279995a34e2f9d4de7396fc18b80f9b8b9fdd270f6661f79ca4c81bd257"],["cc8704b8a60a0defa3a99a7299f2e9c3fbc395afb04ac078425ef8a1793cc030","bdd46039feed17881d1e0862db347f8cf395b74fc4bcdc4e940b74e3ac1f1b13"],["c533e4f7ea8555aacd9777ac5cad29b97dd4defccc53ee7ea204119b2889b197","6f0a256bc5efdf429a2fb6242f1a43a2d9b925bb4a4b3a26bb8e0f45eb596096"],["c14f8f2ccb27d6f109f6d08d03cc96a69ba8c34eec07bbcf566d48e33da6593","c359d6923bb398f7fd4473e16fe1c28475b740dd098075e6c0e8649113dc3a38"],["a6cbc3046bc6a450bac24789fa17115a4c9739ed75f8f21ce441f72e0b90e6ef","21ae7f4680e889bb130619e2c0f95a360ceb573c70603139862afd617fa9b9f"],["347d6d9a02c48927ebfb86c1359b1caf130a3c0267d11ce6344b39f99d43cc38","60ea7f61a353524d1c987f6ecec92f086d565ab687870cb12689ff1e31c74448"],["da6545d2181db8d983f7dcb375ef5866d47c67b1bf31c8cf855ef7437b72656a","49b96715ab6878a79e78f07ce5680c5d6673051b4935bd897fea824b77dc208a"],["c40747cc9d012cb1a13b8148309c6de7ec25d6945d657146b9d5994b8feb1111","5ca560753be2a12fc6de6caf2cb489565db936156b9514e1bb5e83037e0fa2d4"],["4e42c8ec82c99798ccf3a610be870e78338c7f713348bd34c8203ef4037f3502","7571d74ee5e0fb92a7a8b33a07783341a5492144cc54bcc40a94473693606437"],["3775ab7089bc6af823aba2e1af70b236d251cadb0c86743287522a1b3b0dedea","be52d107bcfa09d8bcb9736a828cfa7fac8db17bf7a76a2c42ad961409018cf7"],["cee31cbf7e34ec379d94fb814d3d775ad954595d1314ba8846959e3e82f74e26","8fd64a14c06b589c26b947ae2bcf6bfa0149ef0be14ed4d80f448a01c43b1c6d"],["b4f9eaea09b6917619f6ea6a4eb5464efddb58fd45b1ebefcdc1a01d08b47986","39e5c9925b5a54b07433a4f18c61726f8bb131c012ca542eb24a8ac07200682a"],["d4263dfc3d2df923a0179a48966d30ce84e2515afc3dccc1b77907792ebcc60e","62dfaf07a0f78feb30e30d6295853ce189e127760ad6cf7fae164e122a208d54"],["48457524820fa65a4f8d35eb6930857c0032acc0a4a2de422233eeda897612c4","25a748ab367979d98733c38a1fa1c2e7dc6cc07db2d60a9ae7a76aaa49bd0f77"],["dfeeef1881101f2cb11644f3a2afdfc2045e19919152923f367a1767c11cceda","ecfb7056cf1de042f9420bab396793c0c390bde74b4bbdff16a83ae09a9a7517"],["6d7ef6b17543f8373c573f44e1f389835d89bcbc6062ced36c82df83b8fae859","cd450ec335438986dfefa10c57fea9bcc521a0959b2d80bbf74b190dca712d10"],["e75605d59102a5a2684500d3b991f2e3f3c88b93225547035af25af66e04541f","f5c54754a8f71ee540b9b48728473e314f729ac5308b06938360990e2bfad125"],["eb98660f4c4dfaa06a2be453d5020bc99a0c2e60abe388457dd43fefb1ed620c","6cb9a8876d9cb8520609af3add26cd20a0a7cd8a9411131ce85f44100099223e"],["13e87b027d8514d35939f2e6892b19922154596941888336dc3563e3b8dba942","fef5a3c68059a6dec5d624114bf1e91aac2b9da568d6abeb2570d55646b8adf1"],["ee163026e9fd6fe017c38f06a5be6fc125424b371ce2708e7bf4491691e5764a","1acb250f255dd61c43d94ccc670d0f58f49ae3fa15b96623e5430da0ad6c62b2"],["b268f5ef9ad51e4d78de3a750c2dc89b1e626d43505867999932e5db33af3d80","5f310d4b3c99b9ebb19f77d41c1dee018cf0d34fd4191614003e945a1216e423"],["ff07f3118a9df035e9fad85eb6c7bfe42b02f01ca99ceea3bf7ffdba93c4750d","438136d603e858a3a5c440c38eccbaddc1d2942114e2eddd4740d098ced1f0d8"],["8d8b9855c7c052a34146fd20ffb658bea4b9f69e0d825ebec16e8c3ce2b526a1","cdb559eedc2d79f926baf44fb84ea4d44bcf50fee51d7ceb30e2e7f463036758"],["52db0b5384dfbf05bfa9d472d7ae26dfe4b851ceca91b1eba54263180da32b63","c3b997d050ee5d423ebaf66a6db9f57b3180c902875679de924b69d84a7b375"],["e62f9490d3d51da6395efd24e80919cc7d0f29c3f3fa48c6fff543becbd43352","6d89ad7ba4876b0b22c2ca280c682862f342c8591f1daf5170e07bfd9ccafa7d"],["7f30ea2476b399b4957509c88f77d0191afa2ff5cb7b14fd6d8e7d65aaab1193","ca5ef7d4b231c94c3b15389a5f6311e9daff7bb67b103e9880ef4bff637acaec"],["5098ff1e1d9f14fb46a210fada6c903fef0fb7b4a1dd1d9ac60a0361800b7a00","9731141d81fc8f8084d37c6e7542006b3ee1b40d60dfe5362a5b132fd17ddc0"],["32b78c7de9ee512a72895be6b9cbefa6e2f3c4ccce445c96b9f2c81e2778ad58","ee1849f513df71e32efc3896ee28260c73bb80547ae2275ba497237794c8753c"],["e2cb74fddc8e9fbcd076eef2a7c72b0ce37d50f08269dfc074b581550547a4f7","d3aa2ed71c9dd2247a62df062736eb0baddea9e36122d2be8641abcb005cc4a4"],["8438447566d4d7bedadc299496ab357426009a35f235cb141be0d99cd10ae3a8","c4e1020916980a4da5d01ac5e6ad330734ef0d7906631c4f2390426b2edd791f"],["4162d488b89402039b584c6fc6c308870587d9c46f660b878ab65c82c711d67e","67163e903236289f776f22c25fb8a3afc1732f2b84b4e95dbda47ae5a0852649"],["3fad3fa84caf0f34f0f89bfd2dcf54fc175d767aec3e50684f3ba4a4bf5f683d","cd1bc7cb6cc407bb2f0ca647c718a730cf71872e7d0d2a53fa20efcdfe61826"],["674f2600a3007a00568c1a7ce05d0816c1fb84bf1370798f1c69532faeb1a86b","299d21f9413f33b3edf43b257004580b70db57da0b182259e09eecc69e0d38a5"],["d32f4da54ade74abb81b815ad1fb3b263d82d6c692714bcff87d29bd5ee9f08f","f9429e738b8e53b968e99016c059707782e14f4535359d582fc416910b3eea87"],["30e4e670435385556e593657135845d36fbb6931f72b08cb1ed954f1e3ce3ff6","462f9bce619898638499350113bbc9b10a878d35da70740dc695a559eb88db7b"],["be2062003c51cc3004682904330e4dee7f3dcd10b01e580bf1971b04d4cad297","62188bc49d61e5428573d48a74e1c655b1c61090905682a0d5558ed72dccb9bc"],["93144423ace3451ed29e0fb9ac2af211cb6e84a601df5993c419859fff5df04a","7c10dfb164c3425f5c71a3f9d7992038f1065224f72bb9d1d902a6d13037b47c"],["b015f8044f5fcbdcf21ca26d6c34fb8197829205c7b7d2a7cb66418c157b112c","ab8c1e086d04e813744a655b2df8d5f83b3cdc6faa3088c1d3aea1454e3a1d5f"],["d5e9e1da649d97d89e4868117a465a3a4f8a18de57a140d36b3f2af341a21b52","4cb04437f391ed73111a13cc1d4dd0db1693465c2240480d8955e8592f27447a"],["d3ae41047dd7ca065dbf8ed77b992439983005cd72e16d6f996a5316d36966bb","bd1aeb21ad22ebb22a10f0303417c6d964f8cdd7df0aca614b10dc14d125ac46"],["463e2763d885f958fc66cdd22800f0a487197d0a82e377b49f80af87c897b065","bfefacdb0e5d0fd7df3a311a94de062b26b80c61fbc97508b79992671ef7ca7f"],["7985fdfd127c0567c6f53ec1bb63ec3158e597c40bfe747c83cddfc910641917","603c12daf3d9862ef2b25fe1de289aed24ed291e0ec6708703a5bd567f32ed03"],["74a1ad6b5f76e39db2dd249410eac7f99e74c59cb83d2d0ed5ff1543da7703e9","cc6157ef18c9c63cd6193d83631bbea0093e0968942e8c33d5737fd790e0db08"],["30682a50703375f602d416664ba19b7fc9bab42c72747463a71d0896b22f6da3","553e04f6b018b4fa6c8f39e7f311d3176290d0e0f19ca73f17714d9977a22ff8"],["9e2158f0d7c0d5f26c3791efefa79597654e7a2b2464f52b1ee6c1347769ef57","712fcdd1b9053f09003a3481fa7762e9ffd7c8ef35a38509e2fbf2629008373"],["176e26989a43c9cfeba4029c202538c28172e566e3c4fce7322857f3be327d66","ed8cc9d04b29eb877d270b4878dc43c19aefd31f4eee09ee7b47834c1fa4b1c3"],["75d46efea3771e6e68abb89a13ad747ecf1892393dfc4f1b7004788c50374da8","9852390a99507679fd0b86fd2b39a868d7efc22151346e1a3ca4726586a6bed8"],["809a20c67d64900ffb698c4c825f6d5f2310fb0451c869345b7319f645605721","9e994980d9917e22b76b061927fa04143d096ccc54963e6a5ebfa5f3f8e286c1"],["1b38903a43f7f114ed4500b4eac7083fdefece1cf29c63528d563446f972c180","4036edc931a60ae889353f77fd53de4a2708b26b6f5da72ad3394119daf408f9"]]}}}}),IY=q$({"node_modules/elliptic/lib/elliptic/curves.js"($){var Q=$,Y=XY(),Z=mQ(),G=oQ(),V=G.assert;function U(I){I.type==="short"?this.curve=new Z.short(I):I.type==="edwards"?this.curve=new Z.edwards(I):this.curve=new Z.mont(I),this.g=this.curve.g,this.n=this.curve.n,this.hash=I.hash,V(this.g.validate(),"Invalid curve"),V(this.g.mul(this.n).isInfinity(),"Invalid curve, G*N != O")}Q.PresetCurve=U;function X(I,O){Object.defineProperty(Q,I,{configurable:!0,enumerable:!0,get:function(){var J=new U(O);return Object.defineProperty(Q,I,{configurable:!0,enumerable:!0,value:J}),J}})}X("p192",{type:"short",prime:"p192",p:"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff",a:"ffffffff ffffffff ffffffff fffffffe ffffffff fffffffc",b:"64210519 e59c80e7 0fa7e9ab 72243049 feb8deec c146b9b1",n:"ffffffff ffffffff ffffffff 99def836 146bc9b1 b4d22831",hash:Y.sha256,gRed:!1,g:["188da80e b03090f6 7cbf20eb 43a18800 f4ff0afd 82ff1012","07192b95 ffc8da78 631011ed 6b24cdd5 73f977a1 1e794811"]}),X("p224",{type:"short",prime:"p224",p:"ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001",a:"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff fffffffe",b:"b4050a85 0c04b3ab f5413256 5044b0b7 d7bfd8ba 270b3943 2355ffb4",n:"ffffffff ffffffff ffffffff ffff16a2 e0b8f03e 13dd2945 5c5c2a3d",hash:Y.sha256,gRed:!1,g:["b70e0cbd 6bb4bf7f 321390b9 4a03c1d3 56c21122 343280d6 115c1d21","bd376388 b5f723fb 4c22dfe6 cd4375a0 5a074764 44d58199 85007e34"]}),X("p256",{type:"short",prime:null,p:"ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff ffffffff",a:"ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff fffffffc",b:"5ac635d8 aa3a93e7 b3ebbd55 769886bc 651d06b0 cc53b0f6 3bce3c3e 27d2604b",n:"ffffffff 00000000 ffffffff ffffffff bce6faad a7179e84 f3b9cac2 fc632551",hash:Y.sha256,gRed:!1,g:["6b17d1f2 e12c4247 f8bce6e5 63a440f2 77037d81 2deb33a0 f4a13945 d898c296","4fe342e2 fe1a7f9b 8ee7eb4a 7c0f9e16 2bce3357 6b315ece cbb64068 37bf51f5"]}),X("p384",{type:"short",prime:null,p:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 ffffffff",a:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 fffffffc",b:"b3312fa7 e23ee7e4 988e056b e3f82d19 181d9c6e fe814112 0314088f 5013875a c656398d 8a2ed19d 2a85c8ed d3ec2aef",n:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff c7634d81 f4372ddf 581a0db2 48b0a77a ecec196a ccc52973",hash:Y.sha384,gRed:!1,g:["aa87ca22 be8b0537 8eb1c71e f320ad74 6e1d3b62 8ba79b98 59f741e0 82542a38 5502f25d bf55296c 3a545e38 72760ab7","3617de4a 96262c6f 5d9e98bf 9292dc29 f8f41dbd 289a147c e9da3113 b5f0b8c0 0a60b1ce 1d7e819d 7a431d7c 90ea0e5f"]}),X("p521",{type:"short",prime:null,p:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff",a:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffc",b:"00000051 953eb961 8e1c9a1f 929a21a0 b68540ee a2da725b 99b315f3 b8b48991 8ef109e1 56193951 ec7e937b 1652c0bd 3bb1bf07 3573df88 3d2c34f1 ef451fd4 6b503f00",n:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffa 51868783 bf2f966b 7fcc0148 f709a5d0 3bb5c9b8 899c47ae bb6fb71e 91386409",hash:Y.sha512,gRed:!1,g:["000000c6 858e06b7 0404e9cd 9e3ecb66 2395b442 9c648139 053fb521 f828af60 6b4d3dba a14b5e77 efe75928 fe1dc127 a2ffa8de 3348b3c1 856a429b f97e7e31 c2e5bd66","00000118 39296a78 9a3bc004 5c8a5fb4 2c7d1bd9 98f54449 579b4468 17afbd17 273e662c 97ee7299 5ef42640 c550b901 3fad0761 353c7086 a272c240 88be9476 9fd16650"]}),X("curve25519",{type:"mont",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"76d06",b:"1",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:Y.sha256,gRed:!1,g:["9"]}),X("ed25519",{type:"edwards",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"-1",c:"1",d:"52036cee2b6ffe73 8cc740797779e898 00700a4d4141d8ab 75eb4dca135978a3",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:Y.sha256,gRed:!1,g:["216936d3cd6e53fec0a4e231fdd6dc5c692cc7609525a7b2c9562d608f25d51a","6666666666666666666666666666666666666666666666666666666666666658"]});var K;try{K=KY()}catch{K=void 0}X("secp256k1",{type:"short",prime:"k256",p:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f",a:"0",b:"7",n:"ffffffff ffffffff ffffffff fffffffe baaedce6 af48a03b bfd25e8c d0364141",h:"1",hash:Y.sha256,beta:"7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee",lambda:"5363ad4cc05c30e0a5261c028812645a122e22ea20816678df02967c1b23bd72",basis:[{a:"3086d221a7d46bcde86c90e49284eb15",b:"-e4437ed6010e88286f547fa90abfe4c3"},{a:"114ca50f7a8e2f3f657c1108d9d44cfd8",b:"3086d221a7d46bcde86c90e49284eb15"}],gRed:!1,g:["79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798","483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8",K]})}}),OY=q$({"node_modules/hmac-drbg/lib/hmac-drbg.js"($,Q){var Y=XY(),Z=lQ(),G=ZQ();function V(U){if(!(this instanceof V))return new V(U);this.hash=U.hash,this.predResist=!!U.predResist,this.outLen=this.hash.outSize,this.minEntropy=U.minEntropy||this.hash.hmacStrength,this._reseed=null,this.reseedInterval=null,this.K=null,this.V=null;var X=Z.toArray(U.entropy,U.entropyEnc||"hex"),K=Z.toArray(U.nonce,U.nonceEnc||"hex"),I=Z.toArray(U.pers,U.persEnc||"hex");G(X.length>=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits"),this._init(X,K,I)}Q.exports=V,V.prototype._init=function(U,X,K){var I=U.concat(X).concat(K);this.K=new Array(this.outLen/8),this.V=new Array(this.outLen/8);for(var O=0;O<this.V.length;O++)this.K[O]=0,this.V[O]=1;this._update(I),this._reseed=1,this.reseedInterval=281474976710656},V.prototype._hmac=function(){return new Y.hmac(this.hash,this.K)},V.prototype._update=function(U){var X=this._hmac().update(this.V).update([0]);U&&(X=X.update(U)),this.K=X.digest(),this.V=this._hmac().update(this.V).digest(),U&&(this.K=this._hmac().update(this.V).update([1]).update(U).digest(),this.V=this._hmac().update(this.V).digest())},V.prototype.reseed=function(U,X,K,I){typeof X!="string"&&(I=K,K=X,X=null),U=Z.toArray(U,X),K=Z.toArray(K,I),G(U.length>=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits"),this._update(U.concat(K||[])),this._reseed=1},V.prototype.generate=function(U,X,K,I){if(this._reseed>this.reseedInterval)throw new Error("Reseed is required");typeof X!="string"&&(I=K,K=X,X=null),K&&(K=Z.toArray(K,I||"hex"),this._update(K));for(var O=[];O.length<U;)this.V=this._hmac().update(this.V).digest(),O=O.concat(this.V);var J=O.slice(0,U);return this._update(K),this._reseed++,Z.encode(J,X)}}}),JY=q$({"node_modules/elliptic/lib/elliptic/ec/key.js"($,Q){var Y=bQ(),Z=oQ(),G=Z.assert;function V(U,X){this.ec=U,this.priv=null,this.pub=null,X.priv&&this._importPrivate(X.priv,X.privEnc),X.pub&&this._importPublic(X.pub,X.pubEnc)}Q.exports=V,V.fromPublic=function(U,X,K){return X instanceof V?X:new V(U,{pub:X,pubEnc:K})},V.fromPrivate=function(U,X,K){return X instanceof V?X:new V(U,{priv:X,privEnc:K})},V.prototype.validate=function(){var U=this.getPublic();return U.isInfinity()?{result:!1,reason:"Invalid public key"}:U.validate()?U.mul(this.ec.curve.n).isInfinity()?{result:!0,reason:null}:{result:!1,reason:"Public key * N != O"}:{result:!1,reason:"Public key is not a point"}},V.prototype.getPublic=function(U,X){return typeof U=="string"&&(X=U,U=null),this.pub||(this.pub=this.ec.g.mul(this.priv)),X?this.pub.encode(X,U):this.pub},V.prototype.getPrivate=function(U){return U==="hex"?this.priv.toString(16,2):this.priv},V.prototype._importPrivate=function(U,X){this.priv=new Y(U,X||16),this.priv=this.priv.umod(this.ec.curve.n)},V.prototype._importPublic=function(U,X){if(U.x||U.y){this.ec.curve.type==="mont"?G(U.x,"Need x coordinate"):(this.ec.curve.type==="short"||this.ec.curve.type==="edwards")&&G(U.x&&U.y,"Need both x and y coordinate"),this.pub=this.ec.curve.point(U.x,U.y);return}this.pub=this.ec.curve.decodePoint(U,X)},V.prototype.derive=function(U){return U.validate()||G(U.validate(),"public point not validated"),U.mul(this.priv).getX()},V.prototype.sign=function(U,X,K){return this.ec.sign(U,this,X,K)},V.prototype.verify=function(U,X){return this.ec.verify(U,X,this)},V.prototype.inspect=function(){return"<Key priv: "+(this.priv&&this.priv.toString(16,2))+" pub: "+(this.pub&&this.pub.inspect())+" >"}}}),FY=q$({"node_modules/elliptic/lib/elliptic/ec/signature.js"($,Q){var Y=bQ(),Z=oQ(),G=Z.assert;function V(O,J){if(O instanceof V)return O;this._importDER(O,J)||(G(O.r&&O.s,"Signature without r or s"),this.r=new Y(O.r,16),this.s=new Y(O.s,16),O.recoveryParam===void 0?this.recoveryParam=null:this.recoveryParam=O.recoveryParam)}Q.exports=V;function U(){this.place=0}function X(O,J){var F=O[J.place++];if(!(F&128))return F;var A=F&15;if(A===0||A>4)return!1;for(var H=0,W=0,E=J.place;W<A;W++,E++)H<<=8,H|=O[E],H>>>=0;return H<=127?!1:(J.place=E,H)}function K(O){for(var J=0,F=O.length-1;!O[J]&&!(O[J+1]&128)&&J<F;)J++;return J===0?O:O.slice(J)}V.prototype._importDER=function(O,J){O=Z.toArray(O,J);var F=new U;if(O[F.place++]!==48)return!1;var A=X(O,F);if(A===!1||A+F.place!==O.length||O[F.place++]!==2)return!1;var H=X(O,F);if(H===!1)return!1;var W=O.slice(F.place,H+F.place);if(F.place+=H,O[F.place++]!==2)return!1;var E=X(O,F);if(E===!1||O.length!==E+F.place)return!1;var T=O.slice(F.place,E+F.place);if(W[0]===0)if(W[1]&128)W=W.slice(1);else return!1;if(T[0]===0)if(T[1]&128)T=T.slice(1);else return!1;return this.r=new Y(W),this.s=new Y(T),this.recoveryParam=null,!0};function I(O,J){if(J<128){O.push(J);return}var F=1+(Math.log(J)/Math.LN2>>>3);for(O.push(F|128);--F;)O.push(J>>>(F<<3)&255);O.push(J)}V.prototype.toDER=function(O){var J=this.r.toArray(),F=this.s.toArray();for(J[0]&128&&(J=[0].concat(J)),F[0]&128&&(F=[0].concat(F)),J=K(J),F=K(F);!F[0]&&!(F[1]&128);)F=F.slice(1);var A=[2];I(A,J.length),A=A.concat(J),A.push(2),I(A,F.length);var H=A.concat(F),W=[48];return I(W,H.length),W=W.concat(H),Z.encode(W,O)}}}),AY=q$({"node_modules/elliptic/lib/elliptic/ec/index.js"($,Q){var Y=bQ(),Z=OY(),G=oQ(),V=IY(),U=xQ(),X=G.assert,K=JY(),I=FY();function O(J){if(!(this instanceof O))return new O(J);typeof J=="string"&&(X(Object.prototype.hasOwnProperty.call(V,J),"Unknown curve "+J),J=V[J]),J instanceof V.PresetCurve&&(J={curve:J}),this.curve=J.curve.curve,this.n=this.curve.n,this.nh=this.n.ushrn(1),this.g=this.curve.g,this.g=J.curve.g,this.g.precompute(J.curve.n.bitLength()+1),this.hash=J.hash||J.curve.hash}Q.exports=O,O.prototype.keyPair=function(J){return new K(this,J)},O.prototype.keyFromPrivate=function(J,F){return K.fromPrivate(this,J,F)},O.prototype.keyFromPublic=function(J,F){return K.fromPublic(this,J,F)},O.prototype.genKeyPair=function(J){J||(J={});for(var F=new Z({hash:this.hash,pers:J.pers,persEnc:J.persEnc||"utf8",entropy:J.entropy||U(this.hash.hmacStrength),entropyEnc:J.entropy&&J.entropyEnc||"utf8",nonce:this.n.toArray()}),A=this.n.byteLength(),H=this.n.sub(new Y(2));;){var W=new Y(F.generate(A));if(!(W.cmp(H)>0))return W.iaddn(1),this.keyFromPrivate(W)}},O.prototype._truncateToN=function(J,F){var A=J.byteLength()*8-this.n.bitLength();return A>0&&(J=J.ushrn(A)),!F&&J.cmp(this.n)>=0?J.sub(this.n):J},O.prototype.sign=function(J,F,A,H){typeof A=="object"&&(H=A,A=null),H||(H={}),F=this.keyFromPrivate(F,A),J=this._truncateToN(new Y(J,16));for(var W=this.n.byteLength(),E=F.getPrivate().toArray("be",W),T=J.toArray("be",W),D=new Z({hash:this.hash,entropy:E,nonce:T,pers:H.pers,persEnc:H.persEnc||"utf8"}),C=this.n.sub(new Y(1)),L=0;;L++){var R=H.k?H.k(L):new Y(D.generate(this.n.byteLength()));if(R=this._truncateToN(R,!0),!(R.cmpn(1)<=0||R.cmp(C)>=0)){var P=this.g.mul(R);if(!P.isInfinity()){var z=P.getX(),M=z.umod(this.n);if(M.cmpn(0)!==0){var S=R.invm(this.n).mul(M.mul(F.getPrivate()).iadd(J));if(S=S.umod(this.n),S.cmpn(0)!==0){var v=(P.getY().isOdd()?1:0)|(z.cmp(M)!==0?2:0);return H.canonical&&S.cmp(this.nh)>0&&(S=this.n.sub(S),v^=1),new I({r:M,s:S,recoveryParam:v})}}}}}},O.prototype.verify=function(J,F,A,H){J=this._truncateToN(new Y(J,16)),A=this.keyFromPublic(A,H),F=new I(F,"hex");var{r:W,s:E}=F;if(W.cmpn(1)<0||W.cmp(this.n)>=0||E.cmpn(1)<0||E.cmp(this.n)>=0)return!1;var T=E.invm(this.n),D=T.mul(J).umod(this.n),C=T.mul(W).umod(this.n),L;return this.curve._maxwellTrick?(L=this.g.jmulAdd(D,A.getPublic(),C),L.isInfinity()?!1:L.eqXToP(W)):(L=this.g.mulAdd(D,A.getPublic(),C),L.isInfinity()?!1:L.getX().umod(this.n).cmp(W)===0)},O.prototype.recoverPubKey=function(J,F,A,H){X((3&A)===A,"The recovery param is more than two bits"),F=new I(F,H);var W=this.n,E=new Y(J),T=F.r,D=F.s,C=A&1,L=A>>1;if(T.cmp(this.curve.p.umod(this.curve.n))>=0&&L)throw new Error("Unable to find sencond key candinate");L?T=this.curve.pointFromX(T.add(this.curve.n),C):T=this.curve.pointFromX(T,C);var R=F.r.invm(W),P=W.sub(E).mul(R).umod(W),z=D.mul(R).umod(W);return this.g.mulAdd(P,T,z)},O.prototype.getKeyRecoveryParam=function(J,F,A,H){if(F=new I(F,H),F.recoveryParam!==null)return F.recoveryParam;for(var W=0;W<4;W++){var E;try{E=this.recoverPubKey(J,F,W)}catch{continue}if(E.eq(A))return W}throw new Error("Unable to find valid recovery factor")}}}),HY=q$({"node_modules/elliptic/lib/elliptic/eddsa/key.js"($,Q){var Y=oQ(),Z=Y.assert,G=Y.parseBytes,V=Y.cachedProperty;function U(X,K){this.eddsa=X,this._secret=G(K.secret),X.isPoint(K.pub)?this._pub=K.pub:this._pubBytes=G(K.pub)}U.fromPublic=function(X,K){return K instanceof U?K:new U(X,{pub:K})},U.fromSecret=function(X,K){return K instanceof U?K:new U(X,{secret:K})},U.prototype.secret=function(){return this._secret},V(U,"pubBytes",function(){return this.eddsa.encodePoint(this.pub())}),V(U,"pub",function(){return this._pubBytes?this.eddsa.decodePoint(this._pubBytes):this.eddsa.g.mul(this.priv())}),V(U,"privBytes",function(){var X=this.eddsa,K=this.hash(),I=X.encodingLength-1,O=K.slice(0,X.encodingLength);return O[0]&=248,O[I]&=127,O[I]|=64,O}),V(U,"priv",function(){return this.eddsa.decodeInt(this.privBytes())}),V(U,"hash",function(){return this.eddsa.hash().update(this.secret()).digest()}),V(U,"messagePrefix",function(){return this.hash().slice(this.eddsa.encodingLength)}),U.prototype.sign=function(X){return Z(this._secret,"KeyPair can only verify"),this.eddsa.sign(X,this)},U.prototype.verify=function(X,K){return this.eddsa.verify(X,K,this)},U.prototype.getSecret=function(X){return Z(this._secret,"KeyPair is public only"),Y.encode(this.secret(),X)},U.prototype.getPublic=function(X){return Y.encode(this.pubBytes(),X)},Q.exports=U}}),WY=q$({"node_modules/elliptic/lib/elliptic/eddsa/signature.js"($,Q){var Y=bQ(),Z=oQ(),G=Z.assert,V=Z.cachedProperty,U=Z.parseBytes;function X(K,I){this.eddsa=K,typeof I!="object"&&(I=U(I)),Array.isArray(I)&&(I={R:I.slice(0,K.encodingLength),S:I.slice(K.encodingLength)}),G(I.R&&I.S,"Signature without R or S"),K.isPoint(I.R)&&(this._R=I.R),I.S instanceof Y&&(this._S=I.S),this._Rencoded=Array.isArray(I.R)?I.R:I.Rencoded,this._Sencoded=Array.isArray(I.S)?I.S:I.Sencoded}V(X,"S",function(){return this.eddsa.decodeInt(this.Sencoded())}),V(X,"R",function(){return this.eddsa.decodePoint(this.Rencoded())}),V(X,"Rencoded",function(){return this.eddsa.encodePoint(this.R())}),V(X,"Sencoded",function(){return this.eddsa.encodeInt(this.S())}),X.prototype.toBytes=function(){return this.Rencoded().concat(this.Sencoded())},X.prototype.toHex=function(){return Z.encode(this.toBytes(),"hex").toUpperCase()},Q.exports=X}}),EY=q$({"node_modules/elliptic/lib/elliptic/eddsa/index.js"($,Q){var Y=XY(),Z=IY(),G=oQ(),V=G.assert,U=G.parseBytes,X=HY(),K=WY();function I(O){if(V(O==="ed25519","only tested with ed25519 so far"),!(this instanceof I))return new I(O);O=Z[O].curve,this.curve=O,this.g=O.g,this.g.precompute(O.n.bitLength()+1),this.pointClass=O.point().constructor,this.encodingLength=Math.ceil(O.n.bitLength()/8),this.hash=Y.sha512}Q.exports=I,I.prototype.sign=function(O,J){O=U(O);var F=this.keyFromSecret(J),A=this.hashInt(F.messagePrefix(),O),H=this.g.mul(A),W=this.encodePoint(H),E=this.hashInt(W,F.pubBytes(),O).mul(F.priv()),T=A.add(E).umod(this.curve.n);return this.makeSignature({R:H,S:T,Rencoded:W})},I.prototype.verify=function(O,J,F){O=U(O),J=this.makeSignature(J);var A=this.keyFromPublic(F),H=this.hashInt(J.Rencoded(),A.pubBytes(),O),W=this.g.mul(J.S()),E=J.R().add(A.pub().mul(H));return E.eq(W)},I.prototype.hashInt=function(){for(var O=this.hash(),J=0;J<arguments.length;J++)O.update(arguments[J]);return G.intFromLE(O.digest()).umod(this.curve.n)},I.prototype.keyFromPublic=function(O){return X.fromPublic(this,O)},I.prototype.keyFromSecret=function(O){return X.fromSecret(this,O)},I.prototype.makeSignature=function(O){return O instanceof K?O:new K(this,O)},I.prototype.encodePoint=function(O){var J=O.getY().toArray("le",this.encodingLength);return J[this.encodingLength-1]|=O.getX().isOdd()?128:0,J},I.prototype.decodePoint=function(O){O=G.parseBytes(O);var J=O.length-1,F=O.slice(0,J).concat(O[J]&-129),A=(O[J]&128)!==0,H=G.intFromLE(F);return this.curve.pointFromY(H,A)},I.prototype.encodeInt=function(O){return O.toArray("le",this.encodingLength)},I.prototype.decodeInt=function(O){return G.intFromLE(O)},I.prototype.isPoint=function(O){return O instanceof this.pointClass}}}),TY=q$({"node_modules/elliptic/lib/elliptic.js"($){var Q=$;Q.version=dQ().version,Q.utils=oQ(),Q.rand=xQ(),Q.curve=mQ(),Q.curves=IY(),Q.ec=AY(),Q.eddsa=EY()}}),DY=q$({"node_modules/asn1.js/node_modules/bn.js/lib/bn.js"($,Q){(function(Y,Z){function G(j,k){if(!j)throw new Error(k||"Assertion failed")}function V(j,k){j.super_=k;var g=function(){};g.prototype=k.prototype,j.prototype=new g,j.prototype.constructor=j}function U(j,k,g){if(U.isBN(j))return j;this.negative=0,this.words=null,this.length=0,this.red=null,j!==null&&((k==="le"||k==="be")&&(g=k,k=10),this._init(j||0,k||10,g||"be"))}typeof Y=="object"?Y.exports=U:Z.BN=U,U.BN=U,U.wordSize=26;var X=F$;U.isBN=function(j){return j instanceof U?!0:j!==null&&typeof j=="object"&&j.constructor.wordSize===U.wordSize&&Array.isArray(j.words)},U.max=function(j,k){return j.cmp(k)>0?j:k},U.min=function(j,k){return j.cmp(k)<0?j:k},U.prototype._init=function(j,k,g){if(typeof j=="number")return this._initNumber(j,k,g);if(typeof j=="object")return this._initArray(j,k,g);k==="hex"&&(k=16),G(k===(k|0)&&k>=2&&k<=36),j=j.toString().replace(/\s+/g,"");var _=0;j[0]==="-"&&(_++,this.negative=1),_<j.length&&(k===16?this._parseHex(j,_,g):(this._parseBase(j,k,_),g==="le"&&this._initArray(this.toArray(),k,g)))},U.prototype._initNumber=function(j,k,g){j<0&&(this.negative=1,j=-j),j<67108864?(this.words=[j&67108863],this.length=1):j<4503599627370496?(this.words=[j&67108863,j/67108864&67108863],this.length=2):(G(j<9007199254740992),this.words=[j&67108863,j/67108864&67108863,1],this.length=3),g==="le"&&this._initArray(this.toArray(),k,g)},U.prototype._initArray=function(j,k,g){if(G(typeof j.length=="number"),j.length<=0)return this.words=[0],this.length=1,this;this.length=Math.ceil(j.length/3),this.words=new Array(this.length);for(var _=0;_<this.length;_++)this.words[_]=0;var N,x,B=0;if(g==="be")for(_=j.length-1,N=0;_>=0;_-=3)x=j[_]|j[_-1]<<8|j[_-2]<<16,this.words[N]|=x<<B&67108863,this.words[N+1]=x>>>26-B&67108863,B+=24,B>=26&&(B-=26,N++);else if(g==="le")for(_=0,N=0;_<j.length;_+=3)x=j[_]|j[_+1]<<8|j[_+2]<<16,this.words[N]|=x<<B&67108863,this.words[N+1]=x>>>26-B&67108863,B+=24,B>=26&&(B-=26,N++);return this.strip()};function K(j,k){var g=j.charCodeAt(k);return g>=65&&g<=70?g-55:g>=97&&g<=102?g-87:g-48&15}function I(j,k,g){var _=K(j,g);return g-1>=k&&(_|=K(j,g-1)<<4),_}U.prototype._parseHex=function(j,k,g){this.length=Math.ceil((j.length-k)/6),this.words=new Array(this.length);for(var _=0;_<this.length;_++)this.words[_]=0;var N=0,x=0,B;if(g==="be")for(_=j.length-1;_>=k;_-=2)B=I(j,k,_)<<N,this.words[x]|=B&67108863,N>=18?(N-=18,x+=1,this.words[x]|=B>>>26):N+=8;else{var y=j.length-k;for(_=y%2===0?k+1:k;_<j.length;_+=2)B=I(j,k,_)<<N,this.words[x]|=B&67108863,N>=18?(N-=18,x+=1,this.words[x]|=B>>>26):N+=8}this.strip()};function O(j,k,g,_){for(var N=0,x=Math.min(j.length,g),B=k;B<x;B++){var y=j.charCodeAt(B)-48;N*=_,y>=49?N+=y-49+10:y>=17?N+=y-17+10:N+=y}return N}U.prototype._parseBase=function(j,k,g){this.words=[0],this.length=1;for(var _=0,N=1;N<=67108863;N*=k)_++;_--,N=N/k|0;for(var x=j.length-g,B=x%_,y=Math.min(x,x-B)+g,w=0,p=g;p<y;p+=_)w=O(j,p,p+_,k),this.imuln(N),this.words[0]+w<67108864?this.words[0]+=w:this._iaddn(w);if(B!==0){var f=1;for(w=O(j,p,j.length,k),p=0;p<B;p++)f*=k;this.imuln(f),this.words[0]+w<67108864?this.words[0]+=w:this._iaddn(w)}this.strip()},U.prototype.copy=function(j){j.words=new Array(this.length);for(var k=0;k<this.length;k++)j.words[k]=this.words[k];j.length=this.length,j.negative=this.negative,j.red=this.red},U.prototype.clone=function(){var j=new U(null);return this.copy(j),j},U.prototype._expand=function(j){for(;this.length<j;)this.words[this.length++]=0;return this},U.prototype.strip=function(){for(;this.length>1&&this.words[this.length-1]===0;)this.length--;return this._normSign()},U.prototype._normSign=function(){return this.length===1&&this.words[0]===0&&(this.negative=0),this},U.prototype.inspect=function(){return(this.red?"<BN-R: ":"<BN: ")+this.toString(16)+">"};var J=["","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"],F=[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],A=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64000000,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,24300000,28629151,33554432,39135393,45435424,52521875,60466176];U.prototype.toString=function(j,k){j=j||10,k=k|0||1;var g;if(j===16||j==="hex"){g="";for(var _=0,N=0,x=0;x<this.length;x++){var B=this.words[x],y=((B<<_|N)&16777215).toString(16);N=B>>>24-_&16777215,N!==0||x!==this.length-1?g=J[6-y.length]+y+g:g=y+g,_+=2,_>=26&&(_-=26,x--)}for(N!==0&&(g=N.toString(16)+g);g.length%k!==0;)g="0"+g;return this.negative!==0&&(g="-"+g),g}if(j===(j|0)&&j>=2&&j<=36){var w=F[j],p=A[j];g="";var f=this.clone();for(f.negative=0;!f.isZero();){var c=f.modn(p).toString(j);f=f.idivn(p),f.isZero()?g=c+g:g=J[w-c.length]+c+g}for(this.isZero()&&(g="0"+g);g.length%k!==0;)g="0"+g;return this.negative!==0&&(g="-"+g),g}G(!1,"Base should be between 2 and 36")},U.prototype.toNumber=function(){var j=this.words[0];return this.length===2?j+=this.words[1]*67108864:this.length===3&&this.words[2]===1?j+=4503599627370496+this.words[1]*67108864:this.length>2&&G(!1,"Number can only safely store up to 53 bits"),this.negative!==0?-j:j},U.prototype.toJSON=function(){return this.toString(16)},U.prototype.toBuffer=function(j,k){return G(typeof X<"u"),this.toArrayLike(X,j,k)},U.prototype.toArray=function(j,k){return this.toArrayLike(Array,j,k)},U.prototype.toArrayLike=function(j,k,g){var _=this.byteLength(),N=g||Math.max(1,_);G(_<=N,"byte array longer than desired length"),G(N>0,"Requested array length <= 0"),this.strip();var x=k==="le",B=new j(N),y,w,p=this.clone();if(x){for(w=0;!p.isZero();w++)y=p.andln(255),p.iushrn(8),B[w]=y;for(;w<N;w++)B[w]=0}else{for(w=0;w<N-_;w++)B[w]=0;for(w=0;!p.isZero();w++)y=p.andln(255),p.iushrn(8),B[N-w-1]=y}return B},Math.clz32?U.prototype._countBits=function(j){return 32-Math.clz32(j)}:U.prototype._countBits=function(j){var k=j,g=0;return k>=4096&&(g+=13,k>>>=13),k>=64&&(g+=7,k>>>=7),k>=8&&(g+=4,k>>>=4),k>=2&&(g+=2,k>>>=2),g+k},U.prototype._zeroBits=function(j){if(j===0)return 26;var k=j,g=0;return(k&8191)===0&&(g+=13,k>>>=13),(k&127)===0&&(g+=7,k>>>=7),(k&15)===0&&(g+=4,k>>>=4),(k&3)===0&&(g+=2,k>>>=2),(k&1)===0&&g++,g},U.prototype.bitLength=function(){var j=this.words[this.length-1],k=this._countBits(j);return(this.length-1)*26+k};function H(j){for(var k=new Array(j.bitLength()),g=0;g<k.length;g++){var _=g/26|0,N=g%26;k[g]=(j.words[_]&1<<N)>>>N}return k}U.prototype.zeroBits=function(){if(this.isZero())return 0;for(var j=0,k=0;k<this.length;k++){var g=this._zeroBits(this.words[k]);if(j+=g,g!==26)break}return j},U.prototype.byteLength=function(){return Math.ceil(this.bitLength()/8)},U.prototype.toTwos=function(j){return this.negative!==0?this.abs().inotn(j).iaddn(1):this.clone()},U.prototype.fromTwos=function(j){return this.testn(j-1)?this.notn(j).iaddn(1).ineg():this.clone()},U.prototype.isNeg=function(){return this.negative!==0},U.prototype.neg=function(){return this.clone().ineg()},U.prototype.ineg=function(){return this.isZero()||(this.negative^=1),this},U.prototype.iuor=function(j){for(;this.length<j.length;)this.words[this.length++]=0;for(var k=0;k<j.length;k++)this.words[k]=this.words[k]|j.words[k];return this.strip()},U.prototype.ior=function(j){return G((this.negative|j.negative)===0),this.iuor(j)},U.prototype.or=function(j){return this.length>j.length?this.clone().ior(j):j.clone().ior(this)},U.prototype.uor=function(j){return this.length>j.length?this.clone().iuor(j):j.clone().iuor(this)},U.prototype.iuand=function(j){var k;this.length>j.length?k=j:k=this;for(var g=0;g<k.length;g++)this.words[g]=this.words[g]&j.words[g];return this.length=k.length,this.strip()},U.prototype.iand=function(j){return G((this.negative|j.negative)===0),this.iuand(j)},U.prototype.and=function(j){return this.length>j.length?this.clone().iand(j):j.clone().iand(this)},U.prototype.uand=function(j){return this.length>j.length?this.clone().iuand(j):j.clone().iuand(this)},U.prototype.iuxor=function(j){var k,g;this.length>j.length?(k=this,g=j):(k=j,g=this);for(var _=0;_<g.length;_++)this.words[_]=k.words[_]^g.words[_];if(this!==k)for(;_<k.length;_++)this.words[_]=k.words[_];return this.length=k.length,this.strip()},U.prototype.ixor=function(j){return G((this.negative|j.negative)===0),this.iuxor(j)},U.prototype.xor=function(j){return this.length>j.length?this.clone().ixor(j):j.clone().ixor(this)},U.prototype.uxor=function(j){return this.length>j.length?this.clone().iuxor(j):j.clone().iuxor(this)},U.prototype.inotn=function(j){G(typeof j=="number"&&j>=0);var k=Math.ceil(j/26)|0,g=j%26;this._expand(k),g>0&&k--;for(var _=0;_<k;_++)this.words[_]=~this.words[_]&67108863;return g>0&&(this.words[_]=~this.words[_]&67108863>>26-g),this.strip()},U.prototype.notn=function(j){return this.clone().inotn(j)},U.prototype.setn=function(j,k){G(typeof j=="number"&&j>=0);var g=j/26|0,_=j%26;return this._expand(g+1),k?this.words[g]=this.words[g]|1<<_:this.words[g]=this.words[g]&~(1<<_),this.strip()},U.prototype.iadd=function(j){var k;if(this.negative!==0&&j.negative===0)return this.negative=0,k=this.isub(j),this.negative^=1,this._normSign();if(this.negative===0&&j.negative!==0)return j.negative=0,k=this.isub(j),j.negative=1,k._normSign();var g,_;this.length>j.length?(g=this,_=j):(g=j,_=this);for(var N=0,x=0;x<_.length;x++)k=(g.words[x]|0)+(_.words[x]|0)+N,this.words[x]=k&67108863,N=k>>>26;for(;N!==0&&x<g.length;x++)k=(g.words[x]|0)+N,this.words[x]=k&67108863,N=k>>>26;if(this.length=g.length,N!==0)this.words[this.length]=N,this.length++;else if(g!==this)for(;x<g.length;x++)this.words[x]=g.words[x];return this},U.prototype.add=function(j){var k;return j.negative!==0&&this.negative===0?(j.negative=0,k=this.sub(j),j.negative^=1,k):j.negative===0&&this.negative!==0?(this.negative=0,k=j.sub(this),this.negative=1,k):this.length>j.length?this.clone().iadd(j):j.clone().iadd(this)},U.prototype.isub=function(j){if(j.negative!==0){j.negative=0;var k=this.iadd(j);return j.negative=1,k._normSign()}else if(this.negative!==0)return this.negative=0,this.iadd(j),this.negative=1,this._normSign();var g=this.cmp(j);if(g===0)return this.negative=0,this.length=1,this.words[0]=0,this;var _,N;g>0?(_=this,N=j):(_=j,N=this);for(var x=0,B=0;B<N.length;B++)k=(_.words[B]|0)-(N.words[B]|0)+x,x=k>>26,this.words[B]=k&67108863;for(;x!==0&&B<_.length;B++)k=(_.words[B]|0)+x,x=k>>26,this.words[B]=k&67108863;if(x===0&&B<_.length&&_!==this)for(;B<_.length;B++)this.words[B]=_.words[B];return this.length=Math.max(this.length,B),_!==this&&(this.negative=1),this.strip()},U.prototype.sub=function(j){return this.clone().isub(j)};function W(j,k,g){g.negative=k.negative^j.negative;var _=j.length+k.length|0;g.length=_,_=_-1|0;var N=j.words[0]|0,x=k.words[0]|0,B=N*x,y=B&67108863,w=B/67108864|0;g.words[0]=y;for(var p=1;p<_;p++){for(var f=w>>>26,c=w&67108863,h=Math.min(p,k.length-1),d=Math.max(0,p-j.length+1);d<=h;d++){var b=p-d|0;N=j.words[b]|0,x=k.words[d]|0,B=N*x+c,f+=B/67108864|0,c=B&67108863}g.words[p]=c|0,w=f|0}return w!==0?g.words[p]=w|0:g.length--,g.strip()}var E=function(j,k,g){var _=j.words,N=k.words,x=g.words,B=0,y,w,p,f=_[0]|0,c=f&8191,h=f>>>13,d=_[1]|0,b=d&8191,l=d>>>13,o=_[2]|0,u=o&8191,n=o>>>13,s=_[3]|0,t=s&8191,m=s>>>13,a=_[4]|0,e=a&8191,r=a>>>13,i=_[5]|0,$0=i&8191,Q0=i>>>13,Y0=_[6]|0,Z0=Y0&8191,G0=Y0>>>13,V0=_[7]|0,U0=V0&8191,X0=V0>>>13,K0=_[8]|0,I0=K0&8191,O0=K0>>>13,J0=_[9]|0,F0=J0&8191,A0=J0>>>13,H0=N[0]|0,W0=H0&8191,E0=H0>>>13,T0=N[1]|0,D0=T0&8191,C0=T0>>>13,L0=N[2]|0,R0=L0&8191,P0=L0>>>13,z0=N[3]|0,M0=z0&8191,S0=z0>>>13,v0=N[4]|0,q0=v0&8191,j0=v0>>>13,k0=N[5]|0,g0=k0&8191,_0=k0>>>13,N0=N[6]|0,x0=N0&8191,B0=N0>>>13,y0=N[7]|0,w0=y0&8191,p0=y0>>>13,f0=N[8]|0,c0=f0&8191,h0=f0>>>13,d0=N[9]|0,b0=d0&8191,l0=d0>>>13;g.negative=j.negative^k.negative,g.length=19,y=Math.imul(c,W0),w=Math.imul(c,E0),w=w+Math.imul(h,W0)|0,p=Math.imul(h,E0);var o0=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(o0>>>26)|0,o0&=67108863,y=Math.imul(b,W0),w=Math.imul(b,E0),w=w+Math.imul(l,W0)|0,p=Math.imul(l,E0),y=y+Math.imul(c,D0)|0,w=w+Math.imul(c,C0)|0,w=w+Math.imul(h,D0)|0,p=p+Math.imul(h,C0)|0;var u0=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(u0>>>26)|0,u0&=67108863,y=Math.imul(u,W0),w=Math.imul(u,E0),w=w+Math.imul(n,W0)|0,p=Math.imul(n,E0),y=y+Math.imul(b,D0)|0,w=w+Math.imul(b,C0)|0,w=w+Math.imul(l,D0)|0,p=p+Math.imul(l,C0)|0,y=y+Math.imul(c,R0)|0,w=w+Math.imul(c,P0)|0,w=w+Math.imul(h,R0)|0,p=p+Math.imul(h,P0)|0;var n0=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(n0>>>26)|0,n0&=67108863,y=Math.imul(t,W0),w=Math.imul(t,E0),w=w+Math.imul(m,W0)|0,p=Math.imul(m,E0),y=y+Math.imul(u,D0)|0,w=w+Math.imul(u,C0)|0,w=w+Math.imul(n,D0)|0,p=p+Math.imul(n,C0)|0,y=y+Math.imul(b,R0)|0,w=w+Math.imul(b,P0)|0,w=w+Math.imul(l,R0)|0,p=p+Math.imul(l,P0)|0,y=y+Math.imul(c,M0)|0,w=w+Math.imul(c,S0)|0,w=w+Math.imul(h,M0)|0,p=p+Math.imul(h,S0)|0;var s0=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(s0>>>26)|0,s0&=67108863,y=Math.imul(e,W0),w=Math.imul(e,E0),w=w+Math.imul(r,W0)|0,p=Math.imul(r,E0),y=y+Math.imul(t,D0)|0,w=w+Math.imul(t,C0)|0,w=w+Math.imul(m,D0)|0,p=p+Math.imul(m,C0)|0,y=y+Math.imul(u,R0)|0,w=w+Math.imul(u,P0)|0,w=w+Math.imul(n,R0)|0,p=p+Math.imul(n,P0)|0,y=y+Math.imul(b,M0)|0,w=w+Math.imul(b,S0)|0,w=w+Math.imul(l,M0)|0,p=p+Math.imul(l,S0)|0,y=y+Math.imul(c,q0)|0,w=w+Math.imul(c,j0)|0,w=w+Math.imul(h,q0)|0,p=p+Math.imul(h,j0)|0;var t0=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(t0>>>26)|0,t0&=67108863,y=Math.imul($0,W0),w=Math.imul($0,E0),w=w+Math.imul(Q0,W0)|0,p=Math.imul(Q0,E0),y=y+Math.imul(e,D0)|0,w=w+Math.imul(e,C0)|0,w=w+Math.imul(r,D0)|0,p=p+Math.imul(r,C0)|0,y=y+Math.imul(t,R0)|0,w=w+Math.imul(t,P0)|0,w=w+Math.imul(m,R0)|0,p=p+Math.imul(m,P0)|0,y=y+Math.imul(u,M0)|0,w=w+Math.imul(u,S0)|0,w=w+Math.imul(n,M0)|0,p=p+Math.imul(n,S0)|0,y=y+Math.imul(b,q0)|0,w=w+Math.imul(b,j0)|0,w=w+Math.imul(l,q0)|0,p=p+Math.imul(l,j0)|0,y=y+Math.imul(c,g0)|0,w=w+Math.imul(c,_0)|0,w=w+Math.imul(h,g0)|0,p=p+Math.imul(h,_0)|0;var m0=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(m0>>>26)|0,m0&=67108863,y=Math.imul(Z0,W0),w=Math.imul(Z0,E0),w=w+Math.imul(G0,W0)|0,p=Math.imul(G0,E0),y=y+Math.imul($0,D0)|0,w=w+Math.imul($0,C0)|0,w=w+Math.imul(Q0,D0)|0,p=p+Math.imul(Q0,C0)|0,y=y+Math.imul(e,R0)|0,w=w+Math.imul(e,P0)|0,w=w+Math.imul(r,R0)|0,p=p+Math.imul(r,P0)|0,y=y+Math.imul(t,M0)|0,w=w+Math.imul(t,S0)|0,w=w+Math.imul(m,M0)|0,p=p+Math.imul(m,S0)|0,y=y+Math.imul(u,q0)|0,w=w+Math.imul(u,j0)|0,w=w+Math.imul(n,q0)|0,p=p+Math.imul(n,j0)|0,y=y+Math.imul(b,g0)|0,w=w+Math.imul(b,_0)|0,w=w+Math.imul(l,g0)|0,p=p+Math.imul(l,_0)|0,y=y+Math.imul(c,x0)|0,w=w+Math.imul(c,B0)|0,w=w+Math.imul(h,x0)|0,p=p+Math.imul(h,B0)|0;var a0=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(a0>>>26)|0,a0&=67108863,y=Math.imul(U0,W0),w=Math.imul(U0,E0),w=w+Math.imul(X0,W0)|0,p=Math.imul(X0,E0),y=y+Math.imul(Z0,D0)|0,w=w+Math.imul(Z0,C0)|0,w=w+Math.imul(G0,D0)|0,p=p+Math.imul(G0,C0)|0,y=y+Math.imul($0,R0)|0,w=w+Math.imul($0,P0)|0,w=w+Math.imul(Q0,R0)|0,p=p+Math.imul(Q0,P0)|0,y=y+Math.imul(e,M0)|0,w=w+Math.imul(e,S0)|0,w=w+Math.imul(r,M0)|0,p=p+Math.imul(r,S0)|0,y=y+Math.imul(t,q0)|0,w=w+Math.imul(t,j0)|0,w=w+Math.imul(m,q0)|0,p=p+Math.imul(m,j0)|0,y=y+Math.imul(u,g0)|0,w=w+Math.imul(u,_0)|0,w=w+Math.imul(n,g0)|0,p=p+Math.imul(n,_0)|0,y=y+Math.imul(b,x0)|0,w=w+Math.imul(b,B0)|0,w=w+Math.imul(l,x0)|0,p=p+Math.imul(l,B0)|0,y=y+Math.imul(c,w0)|0,w=w+Math.imul(c,p0)|0,w=w+Math.imul(h,w0)|0,p=p+Math.imul(h,p0)|0;var e0=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(e0>>>26)|0,e0&=67108863,y=Math.imul(I0,W0),w=Math.imul(I0,E0),w=w+Math.imul(O0,W0)|0,p=Math.imul(O0,E0),y=y+Math.imul(U0,D0)|0,w=w+Math.imul(U0,C0)|0,w=w+Math.imul(X0,D0)|0,p=p+Math.imul(X0,C0)|0,y=y+Math.imul(Z0,R0)|0,w=w+Math.imul(Z0,P0)|0,w=w+Math.imul(G0,R0)|0,p=p+Math.imul(G0,P0)|0,y=y+Math.imul($0,M0)|0,w=w+Math.imul($0,S0)|0,w=w+Math.imul(Q0,M0)|0,p=p+Math.imul(Q0,S0)|0,y=y+Math.imul(e,q0)|0,w=w+Math.imul(e,j0)|0,w=w+Math.imul(r,q0)|0,p=p+Math.imul(r,j0)|0,y=y+Math.imul(t,g0)|0,w=w+Math.imul(t,_0)|0,w=w+Math.imul(m,g0)|0,p=p+Math.imul(m,_0)|0,y=y+Math.imul(u,x0)|0,w=w+Math.imul(u,B0)|0,w=w+Math.imul(n,x0)|0,p=p+Math.imul(n,B0)|0,y=y+Math.imul(b,w0)|0,w=w+Math.imul(b,p0)|0,w=w+Math.imul(l,w0)|0,p=p+Math.imul(l,p0)|0,y=y+Math.imul(c,c0)|0,w=w+Math.imul(c,h0)|0,w=w+Math.imul(h,c0)|0,p=p+Math.imul(h,h0)|0;var r0=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(r0>>>26)|0,r0&=67108863,y=Math.imul(F0,W0),w=Math.imul(F0,E0),w=w+Math.imul(A0,W0)|0,p=Math.imul(A0,E0),y=y+Math.imul(I0,D0)|0,w=w+Math.imul(I0,C0)|0,w=w+Math.imul(O0,D0)|0,p=p+Math.imul(O0,C0)|0,y=y+Math.imul(U0,R0)|0,w=w+Math.imul(U0,P0)|0,w=w+Math.imul(X0,R0)|0,p=p+Math.imul(X0,P0)|0,y=y+Math.imul(Z0,M0)|0,w=w+Math.imul(Z0,S0)|0,w=w+Math.imul(G0,M0)|0,p=p+Math.imul(G0,S0)|0,y=y+Math.imul($0,q0)|0,w=w+Math.imul($0,j0)|0,w=w+Math.imul(Q0,q0)|0,p=p+Math.imul(Q0,j0)|0,y=y+Math.imul(e,g0)|0,w=w+Math.imul(e,_0)|0,w=w+Math.imul(r,g0)|0,p=p+Math.imul(r,_0)|0,y=y+Math.imul(t,x0)|0,w=w+Math.imul(t,B0)|0,w=w+Math.imul(m,x0)|0,p=p+Math.imul(m,B0)|0,y=y+Math.imul(u,w0)|0,w=w+Math.imul(u,p0)|0,w=w+Math.imul(n,w0)|0,p=p+Math.imul(n,p0)|0,y=y+Math.imul(b,c0)|0,w=w+Math.imul(b,h0)|0,w=w+Math.imul(l,c0)|0,p=p+Math.imul(l,h0)|0,y=y+Math.imul(c,b0)|0,w=w+Math.imul(c,l0)|0,w=w+Math.imul(h,b0)|0,p=p+Math.imul(h,l0)|0;var i0=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(i0>>>26)|0,i0&=67108863,y=Math.imul(F0,D0),w=Math.imul(F0,C0),w=w+Math.imul(A0,D0)|0,p=Math.imul(A0,C0),y=y+Math.imul(I0,R0)|0,w=w+Math.imul(I0,P0)|0,w=w+Math.imul(O0,R0)|0,p=p+Math.imul(O0,P0)|0,y=y+Math.imul(U0,M0)|0,w=w+Math.imul(U0,S0)|0,w=w+Math.imul(X0,M0)|0,p=p+Math.imul(X0,S0)|0,y=y+Math.imul(Z0,q0)|0,w=w+Math.imul(Z0,j0)|0,w=w+Math.imul(G0,q0)|0,p=p+Math.imul(G0,j0)|0,y=y+Math.imul($0,g0)|0,w=w+Math.imul($0,_0)|0,w=w+Math.imul(Q0,g0)|0,p=p+Math.imul(Q0,_0)|0,y=y+Math.imul(e,x0)|0,w=w+Math.imul(e,B0)|0,w=w+Math.imul(r,x0)|0,p=p+Math.imul(r,B0)|0,y=y+Math.imul(t,w0)|0,w=w+Math.imul(t,p0)|0,w=w+Math.imul(m,w0)|0,p=p+Math.imul(m,p0)|0,y=y+Math.imul(u,c0)|0,w=w+Math.imul(u,h0)|0,w=w+Math.imul(n,c0)|0,p=p+Math.imul(n,h0)|0,y=y+Math.imul(b,b0)|0,w=w+Math.imul(b,l0)|0,w=w+Math.imul(l,b0)|0,p=p+Math.imul(l,l0)|0;var $$=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+($$>>>26)|0,$$&=67108863,y=Math.imul(F0,R0),w=Math.imul(F0,P0),w=w+Math.imul(A0,R0)|0,p=Math.imul(A0,P0),y=y+Math.imul(I0,M0)|0,w=w+Math.imul(I0,S0)|0,w=w+Math.imul(O0,M0)|0,p=p+Math.imul(O0,S0)|0,y=y+Math.imul(U0,q0)|0,w=w+Math.imul(U0,j0)|0,w=w+Math.imul(X0,q0)|0,p=p+Math.imul(X0,j0)|0,y=y+Math.imul(Z0,g0)|0,w=w+Math.imul(Z0,_0)|0,w=w+Math.imul(G0,g0)|0,p=p+Math.imul(G0,_0)|0,y=y+Math.imul($0,x0)|0,w=w+Math.imul($0,B0)|0,w=w+Math.imul(Q0,x0)|0,p=p+Math.imul(Q0,B0)|0,y=y+Math.imul(e,w0)|0,w=w+Math.imul(e,p0)|0,w=w+Math.imul(r,w0)|0,p=p+Math.imul(r,p0)|0,y=y+Math.imul(t,c0)|0,w=w+Math.imul(t,h0)|0,w=w+Math.imul(m,c0)|0,p=p+Math.imul(m,h0)|0,y=y+Math.imul(u,b0)|0,w=w+Math.imul(u,l0)|0,w=w+Math.imul(n,b0)|0,p=p+Math.imul(n,l0)|0;var Q$=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(Q$>>>26)|0,Q$&=67108863,y=Math.imul(F0,M0),w=Math.imul(F0,S0),w=w+Math.imul(A0,M0)|0,p=Math.imul(A0,S0),y=y+Math.imul(I0,q0)|0,w=w+Math.imul(I0,j0)|0,w=w+Math.imul(O0,q0)|0,p=p+Math.imul(O0,j0)|0,y=y+Math.imul(U0,g0)|0,w=w+Math.imul(U0,_0)|0,w=w+Math.imul(X0,g0)|0,p=p+Math.imul(X0,_0)|0,y=y+Math.imul(Z0,x0)|0,w=w+Math.imul(Z0,B0)|0,w=w+Math.imul(G0,x0)|0,p=p+Math.imul(G0,B0)|0,y=y+Math.imul($0,w0)|0,w=w+Math.imul($0,p0)|0,w=w+Math.imul(Q0,w0)|0,p=p+Math.imul(Q0,p0)|0,y=y+Math.imul(e,c0)|0,w=w+Math.imul(e,h0)|0,w=w+Math.imul(r,c0)|0,p=p+Math.imul(r,h0)|0,y=y+Math.imul(t,b0)|0,w=w+Math.imul(t,l0)|0,w=w+Math.imul(m,b0)|0,p=p+Math.imul(m,l0)|0;var Y$=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(Y$>>>26)|0,Y$&=67108863,y=Math.imul(F0,q0),w=Math.imul(F0,j0),w=w+Math.imul(A0,q0)|0,p=Math.imul(A0,j0),y=y+Math.imul(I0,g0)|0,w=w+Math.imul(I0,_0)|0,w=w+Math.imul(O0,g0)|0,p=p+Math.imul(O0,_0)|0,y=y+Math.imul(U0,x0)|0,w=w+Math.imul(U0,B0)|0,w=w+Math.imul(X0,x0)|0,p=p+Math.imul(X0,B0)|0,y=y+Math.imul(Z0,w0)|0,w=w+Math.imul(Z0,p0)|0,w=w+Math.imul(G0,w0)|0,p=p+Math.imul(G0,p0)|0,y=y+Math.imul($0,c0)|0,w=w+Math.imul($0,h0)|0,w=w+Math.imul(Q0,c0)|0,p=p+Math.imul(Q0,h0)|0,y=y+Math.imul(e,b0)|0,w=w+Math.imul(e,l0)|0,w=w+Math.imul(r,b0)|0,p=p+Math.imul(r,l0)|0;var Z$=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(Z$>>>26)|0,Z$&=67108863,y=Math.imul(F0,g0),w=Math.imul(F0,_0),w=w+Math.imul(A0,g0)|0,p=Math.imul(A0,_0),y=y+Math.imul(I0,x0)|0,w=w+Math.imul(I0,B0)|0,w=w+Math.imul(O0,x0)|0,p=p+Math.imul(O0,B0)|0,y=y+Math.imul(U0,w0)|0,w=w+Math.imul(U0,p0)|0,w=w+Math.imul(X0,w0)|0,p=p+Math.imul(X0,p0)|0,y=y+Math.imul(Z0,c0)|0,w=w+Math.imul(Z0,h0)|0,w=w+Math.imul(G0,c0)|0,p=p+Math.imul(G0,h0)|0,y=y+Math.imul($0,b0)|0,w=w+Math.imul($0,l0)|0,w=w+Math.imul(Q0,b0)|0,p=p+Math.imul(Q0,l0)|0;var G$=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(G$>>>26)|0,G$&=67108863,y=Math.imul(F0,x0),w=Math.imul(F0,B0),w=w+Math.imul(A0,x0)|0,p=Math.imul(A0,B0),y=y+Math.imul(I0,w0)|0,w=w+Math.imul(I0,p0)|0,w=w+Math.imul(O0,w0)|0,p=p+Math.imul(O0,p0)|0,y=y+Math.imul(U0,c0)|0,w=w+Math.imul(U0,h0)|0,w=w+Math.imul(X0,c0)|0,p=p+Math.imul(X0,h0)|0,y=y+Math.imul(Z0,b0)|0,w=w+Math.imul(Z0,l0)|0,w=w+Math.imul(G0,b0)|0,p=p+Math.imul(G0,l0)|0;var V$=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(V$>>>26)|0,V$&=67108863,y=Math.imul(F0,w0),w=Math.imul(F0,p0),w=w+Math.imul(A0,w0)|0,p=Math.imul(A0,p0),y=y+Math.imul(I0,c0)|0,w=w+Math.imul(I0,h0)|0,w=w+Math.imul(O0,c0)|0,p=p+Math.imul(O0,h0)|0,y=y+Math.imul(U0,b0)|0,w=w+Math.imul(U0,l0)|0,w=w+Math.imul(X0,b0)|0,p=p+Math.imul(X0,l0)|0;var U$=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(U$>>>26)|0,U$&=67108863,y=Math.imul(F0,c0),w=Math.imul(F0,h0),w=w+Math.imul(A0,c0)|0,p=Math.imul(A0,h0),y=y+Math.imul(I0,b0)|0,w=w+Math.imul(I0,l0)|0,w=w+Math.imul(O0,b0)|0,p=p+Math.imul(O0,l0)|0;var X$=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(X$>>>26)|0,X$&=67108863,y=Math.imul(F0,b0),w=Math.imul(F0,l0),w=w+Math.imul(A0,b0)|0,p=Math.imul(A0,l0);var K$=(B+y|0)+((w&8191)<<13)|0;return B=(p+(w>>>13)|0)+(K$>>>26)|0,K$&=67108863,x[0]=o0,x[1]=u0,x[2]=n0,x[3]=s0,x[4]=t0,x[5]=m0,x[6]=a0,x[7]=e0,x[8]=r0,x[9]=i0,x[10]=$$,x[11]=Q$,x[12]=Y$,x[13]=Z$,x[14]=G$,x[15]=V$,x[16]=U$,x[17]=X$,x[18]=K$,B!==0&&(x[19]=B,g.length++),g};Math.imul||(E=W);function T(j,k,g){g.negative=k.negative^j.negative,g.length=j.length+k.length;for(var _=0,N=0,x=0;x<g.length-1;x++){var B=N;N=0;for(var y=_&67108863,w=Math.min(x,k.length-1),p=Math.max(0,x-j.length+1);p<=w;p++){var f=x-p,c=j.words[f]|0,h=k.words[p]|0,d=c*h,b=d&67108863;B=B+(d/67108864|0)|0,b=b+y|0,y=b&67108863,B=B+(b>>>26)|0,N+=B>>>26,B&=67108863}g.words[x]=y,_=B,B=N}return _!==0?g.words[x]=_:g.length--,g.strip()}function D(j,k,g){var _=new C;return _.mulp(j,k,g)}U.prototype.mulTo=function(j,k){var g,_=this.length+j.length;return this.length===10&&j.length===10?g=E(this,j,k):_<63?g=W(this,j,k):_<1024?g=T(this,j,k):g=D(this,j,k),g};function C(j,k){this.x=j,this.y=k}C.prototype.makeRBT=function(j){for(var k=new Array(j),g=U.prototype._countBits(j)-1,_=0;_<j;_++)k[_]=this.revBin(_,g,j);return k},C.prototype.revBin=function(j,k,g){if(j===0||j===g-1)return j;for(var _=0,N=0;N<k;N++)_|=(j&1)<<k-N-1,j>>=1;return _},C.prototype.permute=function(j,k,g,_,N,x){for(var B=0;B<x;B++)_[B]=k[j[B]],N[B]=g[j[B]]},C.prototype.transform=function(j,k,g,_,N,x){this.permute(x,j,k,g,_,N);for(var B=1;B<N;B<<=1)for(var y=B<<1,w=Math.cos(2*Math.PI/y),p=Math.sin(2*Math.PI/y),f=0;f<N;f+=y)for(var c=w,h=p,d=0;d<B;d++){var b=g[f+d],l=_[f+d],o=g[f+d+B],u=_[f+d+B],n=c*o-h*u;u=c*u+h*o,o=n,g[f+d]=b+o,_[f+d]=l+u,g[f+d+B]=b-o,_[f+d+B]=l-u,d!==y&&(n=w*c-p*h,h=w*h+p*c,c=n)}},C.prototype.guessLen13b=function(j,k){var g=Math.max(k,j)|1,_=g&1,N=0;for(g=g/2|0;g;g=g>>>1)N++;return 1<<N+1+_},C.prototype.conjugate=function(j,k,g){if(!(g<=1))for(var _=0;_<g/2;_++){var N=j[_];j[_]=j[g-_-1],j[g-_-1]=N,N=k[_],k[_]=-k[g-_-1],k[g-_-1]=-N}},C.prototype.normalize13b=function(j,k){for(var g=0,_=0;_<k/2;_++){var N=Math.round(j[2*_+1]/k)*8192+Math.round(j[2*_]/k)+g;j[_]=N&67108863,N<67108864?g=0:g=N/67108864|0}return j},C.prototype.convert13b=function(j,k,g,_){for(var N=0,x=0;x<k;x++)N=N+(j[x]|0),g[2*x]=N&8191,N=N>>>13,g[2*x+1]=N&8191,N=N>>>13;for(x=2*k;x<_;++x)g[x]=0;G(N===0),G((N&-8192)===0)},C.prototype.stub=function(j){for(var k=new Array(j),g=0;g<j;g++)k[g]=0;return k},C.prototype.mulp=function(j,k,g){var _=2*this.guessLen13b(j.length,k.length),N=this.makeRBT(_),x=this.stub(_),B=new Array(_),y=new Array(_),w=new Array(_),p=new Array(_),f=new Array(_),c=new Array(_),h=g.words;h.length=_,this.convert13b(j.words,j.length,B,_),this.convert13b(k.words,k.length,p,_),this.transform(B,x,y,w,_,N),this.transform(p,x,f,c,_,N);for(var d=0;d<_;d++){var b=y[d]*f[d]-w[d]*c[d];w[d]=y[d]*c[d]+w[d]*f[d],y[d]=b}return this.conjugate(y,w,_),this.transform(y,w,h,x,_,N),this.conjugate(h,x,_),this.normalize13b(h,_),g.negative=j.negative^k.negative,g.length=j.length+k.length,g.strip()},U.prototype.mul=function(j){var k=new U(null);return k.words=new Array(this.length+j.length),this.mulTo(j,k)},U.prototype.mulf=function(j){var k=new U(null);return k.words=new Array(this.length+j.length),D(this,j,k)},U.prototype.imul=function(j){return this.clone().mulTo(j,this)},U.prototype.imuln=function(j){G(typeof j=="number"),G(j<67108864);for(var k=0,g=0;g<this.length;g++){var _=(this.words[g]|0)*j,N=(_&67108863)+(k&67108863);k>>=26,k+=_/67108864|0,k+=N>>>26,this.words[g]=N&67108863}return k!==0&&(this.words[g]=k,this.length++),this},U.prototype.muln=function(j){return this.clone().imuln(j)},U.prototype.sqr=function(){return this.mul(this)},U.prototype.isqr=function(){return this.imul(this.clone())},U.prototype.pow=function(j){var k=H(j);if(k.length===0)return new U(1);for(var g=this,_=0;_<k.length&&k[_]===0;_++,g=g.sqr());if(++_<k.length)for(var N=g.sqr();_<k.length;_++,N=N.sqr())k[_]!==0&&(g=g.mul(N));return g},U.prototype.iushln=function(j){G(typeof j=="number"&&j>=0);var k=j%26,g=(j-k)/26,_=67108863>>>26-k<<26-k,N;if(k!==0){var x=0;for(N=0;N<this.length;N++){var B=this.words[N]&_,y=(this.words[N]|0)-B<<k;this.words[N]=y|x,x=B>>>26-k}x&&(this.words[N]=x,this.length++)}if(g!==0){for(N=this.length-1;N>=0;N--)this.words[N+g]=this.words[N];for(N=0;N<g;N++)this.words[N]=0;this.length+=g}return this.strip()},U.prototype.ishln=function(j){return G(this.negative===0),this.iushln(j)},U.prototype.iushrn=function(j,k,g){G(typeof j=="number"&&j>=0);var _;k?_=(k-k%26)/26:_=0;var N=j%26,x=Math.min((j-N)/26,this.length),B=67108863^67108863>>>N<<N,y=g;if(_-=x,_=Math.max(0,_),y){for(var w=0;w<x;w++)y.words[w]=this.words[w];y.length=x}if(x!==0)if(this.length>x)for(this.length-=x,w=0;w<this.length;w++)this.words[w]=this.words[w+x];else this.words[0]=0,this.length=1;var p=0;for(w=this.length-1;w>=0&&(p!==0||w>=_);w--){var f=this.words[w]|0;this.words[w]=p<<26-N|f>>>N,p=f&B}return y&&p!==0&&(y.words[y.length++]=p),this.length===0&&(this.words[0]=0,this.length=1),this.strip()},U.prototype.ishrn=function(j,k,g){return G(this.negative===0),this.iushrn(j,k,g)},U.prototype.shln=function(j){return this.clone().ishln(j)},U.prototype.ushln=function(j){return this.clone().iushln(j)},U.prototype.shrn=function(j){return this.clone().ishrn(j)},U.prototype.ushrn=function(j){return this.clone().iushrn(j)},U.prototype.testn=function(j){G(typeof j=="number"&&j>=0);var k=j%26,g=(j-k)/26,_=1<<k;if(this.length<=g)return!1;var N=this.words[g];return!!(N&_)},U.prototype.imaskn=function(j){G(typeof j=="number"&&j>=0);var k=j%26,g=(j-k)/26;if(G(this.negative===0,"imaskn works only with positive numbers"),this.length<=g)return this;if(k!==0&&g++,this.length=Math.min(g,this.length),k!==0){var _=67108863^67108863>>>k<<k;this.words[this.length-1]&=_}return this.strip()},U.prototype.maskn=function(j){return this.clone().imaskn(j)},U.prototype.iaddn=function(j){return G(typeof j=="number"),G(j<67108864),j<0?this.isubn(-j):this.negative!==0?this.length===1&&(this.words[0]|0)<j?(this.words[0]=j-(this.words[0]|0),this.negative=0,this):(this.negative=0,this.isubn(j),this.negative=1,this):this._iaddn(j)},U.prototype._iaddn=function(j){this.words[0]+=j;for(var k=0;k<this.length&&this.words[k]>=67108864;k++)this.words[k]-=67108864,k===this.length-1?this.words[k+1]=1:this.words[k+1]++;return this.length=Math.max(this.length,k+1),this},U.prototype.isubn=function(j){if(G(typeof j=="number"),G(j<67108864),j<0)return this.iaddn(-j);if(this.negative!==0)return this.negative=0,this.iaddn(j),this.negative=1,this;if(this.words[0]-=j,this.length===1&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var k=0;k<this.length&&this.words[k]<0;k++)this.words[k]+=67108864,this.words[k+1]-=1;return this.strip()},U.prototype.addn=function(j){return this.clone().iaddn(j)},U.prototype.subn=function(j){return this.clone().isubn(j)},U.prototype.iabs=function(){return this.negative=0,this},U.prototype.abs=function(){return this.clone().iabs()},U.prototype._ishlnsubmul=function(j,k,g){var _=j.length+g,N;this._expand(_);var x,B=0;for(N=0;N<j.length;N++){x=(this.words[N+g]|0)+B;var y=(j.words[N]|0)*k;x-=y&67108863,B=(x>>26)-(y/67108864|0),this.words[N+g]=x&67108863}for(;N<this.length-g;N++)x=(this.words[N+g]|0)+B,B=x>>26,this.words[N+g]=x&67108863;if(B===0)return this.strip();for(G(B===-1),B=0,N=0;N<this.length;N++)x=-(this.words[N]|0)+B,B=x>>26,this.words[N]=x&67108863;return this.negative=1,this.strip()},U.prototype._wordDiv=function(j,k){var g=this.length-j.length,_=this.clone(),N=j,x=N.words[N.length-1]|0,B=this._countBits(x);g=26-B,g!==0&&(N=N.ushln(g),_.iushln(g),x=N.words[N.length-1]|0);var y=_.length-N.length,w;if(k!=="mod"){w=new U(null),w.length=y+1,w.words=new Array(w.length);for(var p=0;p<w.length;p++)w.words[p]=0}var f=_.clone()._ishlnsubmul(N,1,y);f.negative===0&&(_=f,w&&(w.words[y]=1));for(var c=y-1;c>=0;c--){var h=(_.words[N.length+c]|0)*67108864+(_.words[N.length+c-1]|0);for(h=Math.min(h/x|0,67108863),_._ishlnsubmul(N,h,c);_.negative!==0;)h--,_.negative=0,_._ishlnsubmul(N,1,c),_.isZero()||(_.negative^=1);w&&(w.words[c]=h)}return w&&w.strip(),_.strip(),k!=="div"&&g!==0&&_.iushrn(g),{div:w||null,mod:_}},U.prototype.divmod=function(j,k,g){if(G(!j.isZero()),this.isZero())return{div:new U(0),mod:new U(0)};var _,N,x;return this.negative!==0&&j.negative===0?(x=this.neg().divmod(j,k),k!=="mod"&&(_=x.div.neg()),k!=="div"&&(N=x.mod.neg(),g&&N.negative!==0&&N.iadd(j)),{div:_,mod:N}):this.negative===0&&j.negative!==0?(x=this.divmod(j.neg(),k),k!=="mod"&&(_=x.div.neg()),{div:_,mod:x.mod}):(this.negative&j.negative)!==0?(x=this.neg().divmod(j.neg(),k),k!=="div"&&(N=x.mod.neg(),g&&N.negative!==0&&N.isub(j)),{div:x.div,mod:N}):j.length>this.length||this.cmp(j)<0?{div:new U(0),mod:this}:j.length===1?k==="div"?{div:this.divn(j.words[0]),mod:null}:k==="mod"?{div:null,mod:new U(this.modn(j.words[0]))}:{div:this.divn(j.words[0]),mod:new U(this.modn(j.words[0]))}:this._wordDiv(j,k)},U.prototype.div=function(j){return this.divmod(j,"div",!1).div},U.prototype.mod=function(j){return this.divmod(j,"mod",!1).mod},U.prototype.umod=function(j){return this.divmod(j,"mod",!0).mod},U.prototype.divRound=function(j){var k=this.divmod(j);if(k.mod.isZero())return k.div;var g=k.div.negative!==0?k.mod.isub(j):k.mod,_=j.ushrn(1),N=j.andln(1),x=g.cmp(_);return x<0||N===1&&x===0?k.div:k.div.negative!==0?k.div.isubn(1):k.div.iaddn(1)},U.prototype.modn=function(j){G(j<=67108863);for(var k=(1<<26)%j,g=0,_=this.length-1;_>=0;_--)g=(k*g+(this.words[_]|0))%j;return g},U.prototype.idivn=function(j){G(j<=67108863);for(var k=0,g=this.length-1;g>=0;g--){var _=(this.words[g]|0)+k*67108864;this.words[g]=_/j|0,k=_%j}return this.strip()},U.prototype.divn=function(j){return this.clone().idivn(j)},U.prototype.egcd=function(j){G(j.negative===0),G(!j.isZero());var k=this,g=j.clone();k.negative!==0?k=k.umod(j):k=k.clone();for(var _=new U(1),N=new U(0),x=new U(0),B=new U(1),y=0;k.isEven()&&g.isEven();)k.iushrn(1),g.iushrn(1),++y;for(var w=g.clone(),p=k.clone();!k.isZero();){for(var f=0,c=1;(k.words[0]&c)===0&&f<26;++f,c<<=1);if(f>0)for(k.iushrn(f);f-- >0;)(_.isOdd()||N.isOdd())&&(_.iadd(w),N.isub(p)),_.iushrn(1),N.iushrn(1);for(var h=0,d=1;(g.words[0]&d)===0&&h<26;++h,d<<=1);if(h>0)for(g.iushrn(h);h-- >0;)(x.isOdd()||B.isOdd())&&(x.iadd(w),B.isub(p)),x.iushrn(1),B.iushrn(1);k.cmp(g)>=0?(k.isub(g),_.isub(x),N.isub(B)):(g.isub(k),x.isub(_),B.isub(N))}return{a:x,b:B,gcd:g.iushln(y)}},U.prototype._invmp=function(j){G(j.negative===0),G(!j.isZero());var k=this,g=j.clone();k.negative!==0?k=k.umod(j):k=k.clone();for(var _=new U(1),N=new U(0),x=g.clone();k.cmpn(1)>0&&g.cmpn(1)>0;){for(var B=0,y=1;(k.words[0]&y)===0&&B<26;++B,y<<=1);if(B>0)for(k.iushrn(B);B-- >0;)_.isOdd()&&_.iadd(x),_.iushrn(1);for(var w=0,p=1;(g.words[0]&p)===0&&w<26;++w,p<<=1);if(w>0)for(g.iushrn(w);w-- >0;)N.isOdd()&&N.iadd(x),N.iushrn(1);k.cmp(g)>=0?(k.isub(g),_.isub(N)):(g.isub(k),N.isub(_))}var f;return k.cmpn(1)===0?f=_:f=N,f.cmpn(0)<0&&f.iadd(j),f},U.prototype.gcd=function(j){if(this.isZero())return j.abs();if(j.isZero())return this.abs();var k=this.clone(),g=j.clone();k.negative=0,g.negative=0;for(var _=0;k.isEven()&&g.isEven();_++)k.iushrn(1),g.iushrn(1);do{for(;k.isEven();)k.iushrn(1);for(;g.isEven();)g.iushrn(1);var N=k.cmp(g);if(N<0){var x=k;k=g,g=x}else if(N===0||g.cmpn(1)===0)break;k.isub(g)}while(!0);return g.iushln(_)},U.prototype.invm=function(j){return this.egcd(j).a.umod(j)},U.prototype.isEven=function(){return(this.words[0]&1)===0},U.prototype.isOdd=function(){return(this.words[0]&1)===1},U.prototype.andln=function(j){return this.words[0]&j},U.prototype.bincn=function(j){G(typeof j=="number");var k=j%26,g=(j-k)/26,_=1<<k;if(this.length<=g)return this._expand(g+1),this.words[g]|=_,this;for(var N=_,x=g;N!==0&&x<this.length;x++){var B=this.words[x]|0;B+=N,N=B>>>26,B&=67108863,this.words[x]=B}return N!==0&&(this.words[x]=N,this.length++),this},U.prototype.isZero=function(){return this.length===1&&this.words[0]===0},U.prototype.cmpn=function(j){var k=j<0;if(this.negative!==0&&!k)return-1;if(this.negative===0&&k)return 1;this.strip();var g;if(this.length>1)g=1;else{k&&(j=-j),G(j<=67108863,"Number is too big");var _=this.words[0]|0;g=_===j?0:_<j?-1:1}return this.negative!==0?-g|0:g},U.prototype.cmp=function(j){if(this.negative!==0&&j.negative===0)return-1;if(this.negative===0&&j.negative!==0)return 1;var k=this.ucmp(j);return this.negative!==0?-k|0:k},U.prototype.ucmp=function(j){if(this.length>j.length)return 1;if(this.length<j.length)return-1;for(var k=0,g=this.length-1;g>=0;g--){var _=this.words[g]|0,N=j.words[g]|0;if(_!==N){_<N?k=-1:_>N&&(k=1);break}}return k},U.prototype.gtn=function(j){return this.cmpn(j)===1},U.prototype.gt=function(j){return this.cmp(j)===1},U.prototype.gten=function(j){return this.cmpn(j)>=0},U.prototype.gte=function(j){return this.cmp(j)>=0},U.prototype.ltn=function(j){return this.cmpn(j)===-1},U.prototype.lt=function(j){return this.cmp(j)===-1},U.prototype.lten=function(j){return this.cmpn(j)<=0},U.prototype.lte=function(j){return this.cmp(j)<=0},U.prototype.eqn=function(j){return this.cmpn(j)===0},U.prototype.eq=function(j){return this.cmp(j)===0},U.red=function(j){return new v(j)},U.prototype.toRed=function(j){return G(!this.red,"Already a number in reduction context"),G(this.negative===0,"red works only with positives"),j.convertTo(this)._forceRed(j)},U.prototype.fromRed=function(){return G(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},U.prototype._forceRed=function(j){return this.red=j,this},U.prototype.forceRed=function(j){return G(!this.red,"Already a number in reduction context"),this._forceRed(j)},U.prototype.redAdd=function(j){return G(this.red,"redAdd works only with red numbers"),this.red.add(this,j)},U.prototype.redIAdd=function(j){return G(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,j)},U.prototype.redSub=function(j){return G(this.red,"redSub works only with red numbers"),this.red.sub(this,j)},U.prototype.redISub=function(j){return G(this.red,"redISub works only with red numbers"),this.red.isub(this,j)},U.prototype.redShl=function(j){return G(this.red,"redShl works only with red numbers"),this.red.shl(this,j)},U.prototype.redMul=function(j){return G(this.red,"redMul works only with red numbers"),this.red._verify2(this,j),this.red.mul(this,j)},U.prototype.redIMul=function(j){return G(this.red,"redMul works only with red numbers"),this.red._verify2(this,j),this.red.imul(this,j)},U.prototype.redSqr=function(){return G(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},U.prototype.redISqr=function(){return G(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},U.prototype.redSqrt=function(){return G(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},U.prototype.redInvm=function(){return G(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},U.prototype.redNeg=function(){return G(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},U.prototype.redPow=function(j){return G(this.red&&!j.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,j)};var L={k256:null,p224:null,p192:null,p25519:null};function R(j,k){this.name=j,this.p=new U(k,16),this.n=this.p.bitLength(),this.k=new U(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}R.prototype._tmp=function(){var j=new U(null);return j.words=new Array(Math.ceil(this.n/13)),j},R.prototype.ireduce=function(j){var k=j,g;do this.split(k,this.tmp),k=this.imulK(k),k=k.iadd(this.tmp),g=k.bitLength();while(g>this.n);var _=g<this.n?-1:k.ucmp(this.p);return _===0?(k.words[0]=0,k.length=1):_>0?k.isub(this.p):k.strip!==void 0?k.strip():k._strip(),k},R.prototype.split=function(j,k){j.iushrn(this.n,0,k)},R.prototype.imulK=function(j){return j.imul(this.k)};function P(){R.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}V(P,R),P.prototype.split=function(j,k){for(var g=4194303,_=Math.min(j.length,9),N=0;N<_;N++)k.words[N]=j.words[N];if(k.length=_,j.length<=9){j.words[0]=0,j.length=1;return}var x=j.words[9];for(k.words[k.length++]=x&g,N=10;N<j.length;N++){var B=j.words[N]|0;j.words[N-10]=(B&g)<<4|x>>>22,x=B}x>>>=22,j.words[N-10]=x,x===0&&j.length>10?j.length-=10:j.length-=9},P.prototype.imulK=function(j){j.words[j.length]=0,j.words[j.length+1]=0,j.length+=2;for(var k=0,g=0;g<j.length;g++){var _=j.words[g]|0;k+=_*977,j.words[g]=k&67108863,k=_*64+(k/67108864|0)}return j.words[j.length-1]===0&&(j.length--,j.words[j.length-1]===0&&j.length--),j};function z(){R.call(this,"p224","ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001")}V(z,R);function M(){R.call(this,"p192","ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff")}V(M,R);function S(){R.call(this,"25519","7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed")}V(S,R),S.prototype.imulK=function(j){for(var k=0,g=0;g<j.length;g++){var _=(j.words[g]|0)*19+k,N=_&67108863;_>>>=26,j.words[g]=N,k=_}return k!==0&&(j.words[j.length++]=k),j},U._prime=function(j){if(L[j])return L[j];var k;if(j==="k256")k=new P;else if(j==="p224")k=new z;else if(j==="p192")k=new M;else if(j==="p25519")k=new S;else throw new Error("Unknown prime "+j);return L[j]=k,k};function v(j){if(typeof j=="string"){var k=U._prime(j);this.m=k.p,this.prime=k}else G(j.gtn(1),"modulus must be greater than 1"),this.m=j,this.prime=null}v.prototype._verify1=function(j){G(j.negative===0,"red works only with positives"),G(j.red,"red works only with red numbers")},v.prototype._verify2=function(j,k){G((j.negative|k.negative)===0,"red works only with positives"),G(j.red&&j.red===k.red,"red works only with red numbers")},v.prototype.imod=function(j){return this.prime?this.prime.ireduce(j)._forceRed(this):j.umod(this.m)._forceRed(this)},v.prototype.neg=function(j){return j.isZero()?j.clone():this.m.sub(j)._forceRed(this)},v.prototype.add=function(j,k){this._verify2(j,k);var g=j.add(k);return g.cmp(this.m)>=0&&g.isub(this.m),g._forceRed(this)},v.prototype.iadd=function(j,k){this._verify2(j,k);var g=j.iadd(k);return g.cmp(this.m)>=0&&g.isub(this.m),g},v.prototype.sub=function(j,k){this._verify2(j,k);var g=j.sub(k);return g.cmpn(0)<0&&g.iadd(this.m),g._forceRed(this)},v.prototype.isub=function(j,k){this._verify2(j,k);var g=j.isub(k);return g.cmpn(0)<0&&g.iadd(this.m),g},v.prototype.shl=function(j,k){return this._verify1(j),this.imod(j.ushln(k))},v.prototype.imul=function(j,k){return this._verify2(j,k),this.imod(j.imul(k))},v.prototype.mul=function(j,k){return this._verify2(j,k),this.imod(j.mul(k))},v.prototype.isqr=function(j){return this.imul(j,j.clone())},v.prototype.sqr=function(j){return this.mul(j,j)},v.prototype.sqrt=function(j){if(j.isZero())return j.clone();var k=this.m.andln(3);if(G(k%2===1),k===3){var g=this.m.add(new U(1)).iushrn(2);return this.pow(j,g)}for(var _=this.m.subn(1),N=0;!_.isZero()&&_.andln(1)===0;)N++,_.iushrn(1);G(!_.isZero());var x=new U(1).toRed(this),B=x.redNeg(),y=this.m.subn(1).iushrn(1),w=this.m.bitLength();for(w=new U(2*w*w).toRed(this);this.pow(w,y).cmp(B)!==0;)w.redIAdd(B);for(var p=this.pow(w,_),f=this.pow(j,_.addn(1).iushrn(1)),c=this.pow(j,_),h=N;c.cmp(x)!==0;){for(var d=c,b=0;d.cmp(x)!==0;b++)d=d.redSqr();G(b<h);var l=this.pow(p,new U(1).iushln(h-b-1));f=f.redMul(l),p=l.redSqr(),c=c.redMul(p),h=b}return f},v.prototype.invm=function(j){var k=j._invmp(this.m);return k.negative!==0?(k.negative=0,this.imod(k).redNeg()):this.imod(k)},v.prototype.pow=function(j,k){if(k.isZero())return new U(1).toRed(this);if(k.cmpn(1)===0)return j.clone();var g=4,_=new Array(1<<g);_[0]=new U(1).toRed(this),_[1]=j;for(var N=2;N<_.length;N++)_[N]=this.mul(_[N-1],j);var x=_[0],B=0,y=0,w=k.bitLength()%26;for(w===0&&(w=26),N=k.length-1;N>=0;N--){for(var p=k.words[N],f=w-1;f>=0;f--){var c=p>>f&1;if(x!==_[0]&&(x=this.sqr(x)),c===0&&B===0){y=0;continue}B<<=1,B|=c,y++,!(y!==g&&(N!==0||f!==0))&&(x=this.mul(x,_[B]),y=0,B=0)}w=26}return x},v.prototype.convertTo=function(j){var k=j.umod(this.m);return k===j?k.clone():k},v.prototype.convertFrom=function(j){var k=j.clone();return k.red=null,k},U.mont=function(j){return new q(j)};function q(j){v.call(this,j),this.shift=this.m.bitLength(),this.shift%26!==0&&(this.shift+=26-this.shift%26),this.r=new U(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)}V(q,v),q.prototype.convertTo=function(j){return this.imod(j.ushln(this.shift))},q.prototype.convertFrom=function(j){var k=this.imod(j.mul(this.rinv));return k.red=null,k},q.prototype.imul=function(j,k){if(j.isZero()||k.isZero())return j.words[0]=0,j.length=1,j;var g=j.imul(k),_=g.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),N=g.isub(_).iushrn(this.shift),x=N;return N.cmp(this.m)>=0?x=N.isub(this.m):N.cmpn(0)<0&&(x=N.iadd(this.m)),x._forceRed(this)},q.prototype.mul=function(j,k){if(j.isZero()||k.isZero())return new U(0)._forceRed(this);var g=j.mul(k),_=g.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),N=g.isub(_).iushrn(this.shift),x=N;return N.cmp(this.m)>=0?x=N.isub(this.m):N.cmpn(0)<0&&(x=N.iadd(this.m)),x._forceRed(this)},q.prototype.invm=function(j){var k=this.imod(j._invmp(this.m).mul(this.r2));return k._forceRed(this)}})(typeof Q>"u"||Q,$)}}),CY=q$({"node_modules/safer-buffer/safer.js"($,Q){var Y=M$,Z=F$,G={},V;for(V in Y)!Y.hasOwnProperty(V)||V==="SlowBuffer"||V==="Buffer"||(G[V]=Y[V]);var U=G.Buffer={};for(V in Z)!Z.hasOwnProperty(V)||V==="allocUnsafe"||V==="allocUnsafeSlow"||(U[V]=Z[V]);if(G.Buffer.prototype=Z.prototype,(!U.from||U.from===Uint8Array.from)&&(U.from=function(X,K,I){if(typeof X=="number")throw new TypeError('The "value" argument must not be of type number. Received type '+typeof X);if(X&&typeof X.length>"u")throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof X);return Z(X,K,I)}),U.alloc||(U.alloc=function(X,K,I){if(typeof X!="number")throw new TypeError('The "size" argument must be of type number. Received type '+typeof X);if(X<0||X>=2*(1<<30))throw new RangeError('The value "'+X+'" is invalid for option "size"');var O=Z(X);return!K||K.length===0?O.fill(0):typeof I=="string"?O.fill(K,I):O.fill(K),O}),!G.kStringMaxLength)try{G.kStringMaxLength=S$}catch{}G.constants||(G.constants={MAX_LENGTH:G.kMaxLength},G.kStringMaxLength&&(G.constants.MAX_STRING_LENGTH=G.kStringMaxLength)),Q.exports=G}}),LY=q$({"node_modules/asn1.js/lib/asn1/base/reporter.js"($){var Q=_$();function Y(G){this._reporterState={obj:null,path:[],options:G||{},errors:[]}}$.Reporter=Y,Y.prototype.isError=function(G){return G instanceof Z},Y.prototype.save=function(){let G=this._reporterState;return{obj:G.obj,pathLen:G.path.length}},Y.prototype.restore=function(G){let V=this._reporterState;V.obj=G.obj,V.path=V.path.slice(0,G.pathLen)},Y.prototype.enterKey=function(G){return this._reporterState.path.push(G)},Y.prototype.exitKey=function(G){let V=this._reporterState;V.path=V.path.slice(0,G-1)},Y.prototype.leaveKey=function(G,V,U){let X=this._reporterState;this.exitKey(G),X.obj!==null&&(X.obj[V]=U)},Y.prototype.path=function(){return this._reporterState.path.join("/")},Y.prototype.enterObject=function(){let G=this._reporterState,V=G.obj;return G.obj={},V},Y.prototype.leaveObject=function(G){let V=this._reporterState,U=V.obj;return V.obj=G,U},Y.prototype.error=function(G){let V,U=this._reporterState,X=G instanceof Z;if(X?V=G:V=new Z(U.path.map(function(K){return"["+JSON.stringify(K)+"]"}).join(""),G.message||G,G.stack),!U.options.partial)throw V;return X||U.errors.push(V),V},Y.prototype.wrapResult=function(G){let V=this._reporterState;return V.options.partial?{result:this.isError(G)?null:G,errors:V.errors}:G};function Z(G,V){this.path=G,this.rethrow(V)}Q(Z,Error),Z.prototype.rethrow=function(G){if(this.message=G+" at: "+(this.path||"(shallow)"),Error.captureStackTrace&&Error.captureStackTrace(this,Z),!this.stack)try{throw new Error(this.message)}catch(V){this.stack=V.stack}return this}}}),E$=q$({"node_modules/asn1.js/lib/asn1/base/buffer.js"($){var Q=_$(),Y=LY().Reporter,Z=CY().Buffer;function G(U,X){if(Y.call(this,X),!Z.isBuffer(U)){this.error("Input not Buffer");return}this.base=U,this.offset=0,this.length=U.length}Q(G,Y),$.DecoderBuffer=G,G.isDecoderBuffer=function(U){return U instanceof G?!0:typeof U=="object"&&Z.isBuffer(U.base)&&U.constructor.name==="DecoderBuffer"&&typeof U.offset=="number"&&typeof U.length=="number"&&typeof U.save=="function"&&typeof U.restore=="function"&&typeof U.isEmpty=="function"&&typeof U.readUInt8=="function"&&typeof U.skip=="function"&&typeof U.raw=="function"},G.prototype.save=function(){return{offset:this.offset,reporter:Y.prototype.save.call(this)}},G.prototype.restore=function(U){let X=new G(this.base);return X.offset=U.offset,X.length=this.offset,this.offset=U.offset,Y.prototype.restore.call(this,U.reporter),X},G.prototype.isEmpty=function(){return this.offset===this.length},G.prototype.readUInt8=function(U){return this.offset+1<=this.length?this.base.readUInt8(this.offset++,!0):this.error(U||"DecoderBuffer overrun")},G.prototype.skip=function(U,X){if(!(this.offset+U<=this.length))return this.error(X||"DecoderBuffer overrun");let K=new G(this.base);return K._reporterState=this._reporterState,K.offset=this.offset,K.length=this.offset+U,this.offset+=U,K},G.prototype.raw=function(U){return this.base.slice(U?U.offset:this.offset,this.length)};function V(U,X){if(Array.isArray(U))this.length=0,this.value=U.map(function(K){return V.isEncoderBuffer(K)||(K=new V(K,X)),this.length+=K.length,K},this);else if(typeof U=="number"){if(!(0<=U&&U<=255))return X.error("non-byte EncoderBuffer value");this.value=U,this.length=1}else if(typeof U=="string")this.value=U,this.length=Z.byteLength(U);else if(Z.isBuffer(U))this.value=U,this.length=U.length;else return X.error("Unsupported type: "+typeof U)}$.EncoderBuffer=V,V.isEncoderBuffer=function(U){return U instanceof V?!0:typeof U=="object"&&U.constructor.name==="EncoderBuffer"&&typeof U.length=="number"&&typeof U.join=="function"},V.prototype.join=function(U,X){return U||(U=Z.alloc(this.length)),X||(X=0),this.length===0||(Array.isArray(this.value)?this.value.forEach(function(K){K.join(U,X),X+=K.length}):(typeof this.value=="number"?U[X]=this.value:typeof this.value=="string"?U.write(this.value,X):Z.isBuffer(this.value)&&this.value.copy(U,X),X+=this.length)),U}}}),RY=q$({"node_modules/asn1.js/lib/asn1/base/node.js"($,Q){var Y=LY().Reporter,Z=E$().EncoderBuffer,G=E$().DecoderBuffer,V=ZQ(),U=["seq","seqof","set","setof","objid","bool","gentime","utctime","null_","enum","int","objDesc","bitstr","bmpstr","charstr","genstr","graphstr","ia5str","iso646str","numstr","octstr","printstr","t61str","unistr","utf8str","videostr"],X=["key","obj","use","optional","explicit","implicit","def","choice","any","contains"].concat(U),K=["_peekTag","_decodeTag","_use","_decodeStr","_decodeObjid","_decodeTime","_decodeNull","_decodeInt","_decodeBool","_decodeList","_encodeComposite","_encodeStr","_encodeObjid","_encodeTime","_encodeNull","_encodeInt","_encodeBool"];function I(J,F,A){let H={};this._baseState=H,H.name=A,H.enc=J,H.parent=F||null,H.children=null,H.tag=null,H.args=null,H.reverseArgs=null,H.choice=null,H.optional=!1,H.any=!1,H.obj=!1,H.use=null,H.useDecoder=null,H.key=null,H.default=null,H.explicit=null,H.implicit=null,H.contains=null,H.parent||(H.children=[],this._wrap())}Q.exports=I;var O=["enc","parent","children","tag","args","reverseArgs","choice","optional","any","obj","use","alteredUse","key","default","explicit","implicit","contains"];I.prototype.clone=function(){let J=this._baseState,F={};O.forEach(function(H){F[H]=J[H]});let A=new this.constructor(F.parent);return A._baseState=F,A},I.prototype._wrap=function(){let J=this._baseState;X.forEach(function(F){this[F]=function(){let A=new this.constructor(this);return J.children.push(A),A[F].apply(A,arguments)}},this)},I.prototype._init=function(J){let F=this._baseState;V(F.parent===null),J.call(this),F.children=F.children.filter(function(A){return A._baseState.parent===this},this),V.equal(F.children.length,1,"Root node can have only one child")},I.prototype._useArgs=function(J){let F=this._baseState,A=J.filter(function(H){return H instanceof this.constructor},this);J=J.filter(function(H){return!(H instanceof this.constructor)},this),A.length!==0&&(V(F.children===null),F.children=A,A.forEach(function(H){H._baseState.parent=this},this)),J.length!==0&&(V(F.args===null),F.args=J,F.reverseArgs=J.map(function(H){if(typeof H!="object"||H.constructor!==Object)return H;let W={};return Object.keys(H).forEach(function(E){E==(E|0)&&(E|=0);let T=H[E];W[T]=E}),W}))},K.forEach(function(J){I.prototype[J]=function(){let F=this._baseState;throw new Error(J+" not implemented for encoding: "+F.enc)}}),U.forEach(function(J){I.prototype[J]=function(){let F=this._baseState,A=Array.prototype.slice.call(arguments);return V(F.tag===null),F.tag=J,this._useArgs(A),this}}),I.prototype.use=function(J){V(J);let F=this._baseState;return V(F.use===null),F.use=J,this},I.prototype.optional=function(){let J=this._baseState;return J.optional=!0,this},I.prototype.def=function(J){let F=this._baseState;return V(F.default===null),F.default=J,F.optional=!0,this},I.prototype.explicit=function(J){let F=this._baseState;return V(F.explicit===null&&F.implicit===null),F.explicit=J,this},I.prototype.implicit=function(J){let F=this._baseState;return V(F.explicit===null&&F.implicit===null),F.implicit=J,this},I.prototype.obj=function(){let J=this._baseState,F=Array.prototype.slice.call(arguments);return J.obj=!0,F.length!==0&&this._useArgs(F),this},I.prototype.key=function(J){let F=this._baseState;return V(F.key===null),F.key=J,this},I.prototype.any=function(){let J=this._baseState;return J.any=!0,this},I.prototype.choice=function(J){let F=this._baseState;return V(F.choice===null),F.choice=J,this._useArgs(Object.keys(J).map(function(A){return J[A]})),this},I.prototype.contains=function(J){let F=this._baseState;return V(F.use===null),F.contains=J,this},I.prototype._decode=function(J,F){let A=this._baseState;if(A.parent===null)return J.wrapResult(A.children[0]._decode(J,F));let H=A.default,W=!0,E=null;if(A.key!==null&&(E=J.enterKey(A.key)),A.optional){let D=null;if(A.explicit!==null?D=A.explicit:A.implicit!==null?D=A.implicit:A.tag!==null&&(D=A.tag),D===null&&!A.any){let C=J.save();try{A.choice===null?this._decodeGeneric(A.tag,J,F):this._decodeChoice(J,F),W=!0}catch{W=!1}J.restore(C)}else if(W=this._peekTag(J,D,A.any),J.isError(W))return W}let T;if(A.obj&&W&&(T=J.enterObject()),W){if(A.explicit!==null){let C=this._decodeTag(J,A.explicit);if(J.isError(C))return C;J=C}let D=J.offset;if(A.use===null&&A.choice===null){let C;A.any&&(C=J.save());let L=this._decodeTag(J,A.implicit!==null?A.implicit:A.tag,A.any);if(J.isError(L))return L;A.any?H=J.raw(C):J=L}if(F&&F.track&&A.tag!==null&&F.track(J.path(),D,J.length,"tagged"),F&&F.track&&A.tag!==null&&F.track(J.path(),J.offset,J.length,"content"),A.any||(A.choice===null?H=this._decodeGeneric(A.tag,J,F):H=this._decodeChoice(J,F)),J.isError(H))return H;if(!A.any&&A.choice===null&&A.children!==null&&A.children.forEach(function(C){C._decode(J,F)}),A.contains&&(A.tag==="octstr"||A.tag==="bitstr")){let C=new G(H);H=this._getUse(A.contains,J._reporterState.obj)._decode(C,F)}}return A.obj&&W&&(H=J.leaveObject(T)),A.key!==null&&(H!==null||W===!0)?J.leaveKey(E,A.key,H):E!==null&&J.exitKey(E),H},I.prototype._decodeGeneric=function(J,F,A){let H=this._baseState;return J==="seq"||J==="set"?null:J==="seqof"||J==="setof"?this._decodeList(F,J,H.args[0],A):/str$/.test(J)?this._decodeStr(F,J,A):J==="objid"&&H.args?this._decodeObjid(F,H.args[0],H.args[1],A):J==="objid"?this._decodeObjid(F,null,null,A):J==="gentime"||J==="utctime"?this._decodeTime(F,J,A):J==="null_"?this._decodeNull(F,A):J==="bool"?this._decodeBool(F,A):J==="objDesc"?this._decodeStr(F,J,A):J==="int"||J==="enum"?this._decodeInt(F,H.args&&H.args[0],A):H.use!==null?this._getUse(H.use,F._reporterState.obj)._decode(F,A):F.error("unknown tag: "+J)},I.prototype._getUse=function(J,F){let A=this._baseState;return A.useDecoder=this._use(J,F),V(A.useDecoder._baseState.parent===null),A.useDecoder=A.useDecoder._baseState.children[0],A.implicit!==A.useDecoder._baseState.implicit&&(A.useDecoder=A.useDecoder.clone(),A.useDecoder._baseState.implicit=A.implicit),A.useDecoder},I.prototype._decodeChoice=function(J,F){let A=this._baseState,H=null,W=!1;return Object.keys(A.choice).some(function(E){let T=J.save(),D=A.choice[E];try{let C=D._decode(J,F);if(J.isError(C))return!1;H={type:E,value:C},W=!0}catch{return J.restore(T),!1}return!0},this),W?H:J.error("Choice not matched")},I.prototype._createEncoderBuffer=function(J){return new Z(J,this.reporter)},I.prototype._encode=function(J,F,A){let H=this._baseState;if(H.default!==null&&H.default===J)return;let W=this._encodeValue(J,F,A);if(W!==void 0&&!this._skipDefault(W,F,A))return W},I.prototype._encodeValue=function(J,F,A){let H=this._baseState;if(H.parent===null)return H.children[0]._encode(J,F||new Y);let W=null;if(this.reporter=F,H.optional&&J===void 0)if(H.default!==null)J=H.default;else return;let E=null,T=!1;if(H.any)W=this._createEncoderBuffer(J);else if(H.choice)W=this._encodeChoice(J,F);else if(H.contains)E=this._getUse(H.contains,A)._encode(J,F),T=!0;else if(H.children)E=H.children.map(function(D){if(D._baseState.tag==="null_")return D._encode(null,F,J);if(D._baseState.key===null)return F.error("Child should have a key");let C=F.enterKey(D._baseState.key);if(typeof J!="object")return F.error("Child expected, but input is not object");let L=D._encode(J[D._baseState.key],F,J);return F.leaveKey(C),L},this).filter(function(D){return D}),E=this._createEncoderBuffer(E);else if(H.tag==="seqof"||H.tag==="setof"){if(!(H.args&&H.args.length===1))return F.error("Too many args for : "+H.tag);if(!Array.isArray(J))return F.error("seqof/setof, but data is not Array");let D=this.clone();D._baseState.implicit=null,E=this._createEncoderBuffer(J.map(function(C){let L=this._baseState;return this._getUse(L.args[0],J)._encode(C,F)},D))}else H.use!==null?W=this._getUse(H.use,A)._encode(J,F):(E=this._encodePrimitive(H.tag,J),T=!0);if(!H.any&&H.choice===null){let D=H.implicit!==null?H.implicit:H.tag,C=H.implicit===null?"universal":"context";D===null?H.use===null&&F.error("Tag could be omitted only for .use()"):H.use===null&&(W=this._encodeComposite(D,T,C,E))}return H.explicit!==null&&(W=this._encodeComposite(H.explicit,!1,"context",W)),W},I.prototype._encodeChoice=function(J,F){let A=this._baseState,H=A.choice[J.type];return H||V(!1,J.type+" not found in "+JSON.stringify(Object.keys(A.choice))),H._encode(J.value,F)},I.prototype._encodePrimitive=function(J,F){let A=this._baseState;if(/str$/.test(J))return this._encodeStr(F,J);if(J==="objid"&&A.args)return this._encodeObjid(F,A.reverseArgs[0],A.args[1]);if(J==="objid")return this._encodeObjid(F,null,null);if(J==="gentime"||J==="utctime")return this._encodeTime(F,J);if(J==="null_")return this._encodeNull();if(J==="int"||J==="enum")return this._encodeInt(F,A.args&&A.reverseArgs[0]);if(J==="bool")return this._encodeBool(F);if(J==="objDesc")return this._encodeStr(F,J);throw new Error("Unsupported tag: "+J)},I.prototype._isNumstr=function(J){return/^[0-9 ]*$/.test(J)},I.prototype._isPrintstr=function(J){return/^[A-Za-z0-9 '()+,-./:=?]*$/.test(J)}}}),PY=q$({"node_modules/asn1.js/lib/asn1/constants/der.js"($){function Q(Y){let Z={};return Object.keys(Y).forEach(function(G){(G|0)==G&&(G=G|0);let V=Y[G];Z[V]=G}),Z}$.tagClass={0:"universal",1:"application",2:"context",3:"private"},$.tagClassByName=Q($.tagClass),$.tag={0:"end",1:"bool",2:"int",3:"bitstr",4:"octstr",5:"null_",6:"objid",7:"objDesc",8:"external",9:"real",10:"enum",11:"embed",12:"utf8str",13:"relativeOid",16:"seq",17:"set",18:"numstr",19:"printstr",20:"t61str",21:"videostr",22:"ia5str",23:"utctime",24:"gentime",25:"graphstr",26:"iso646str",27:"genstr",28:"unistr",29:"charstr",30:"bmpstr"},$.tagByName=Q($.tag)}}),zY=q$({"node_modules/asn1.js/lib/asn1/encoders/der.js"($,Q){var Y=_$(),Z=CY().Buffer,G=RY(),V=PY();function U(O){this.enc="der",this.name=O.name,this.entity=O,this.tree=new X,this.tree._init(O.body)}Q.exports=U,U.prototype.encode=function(O,J){return this.tree._encode(O,J).join()};function X(O){G.call(this,"der",O)}Y(X,G),X.prototype._encodeComposite=function(O,J,F,A){let H=I(O,J,F,this.reporter);if(A.length<128){let T=Z.alloc(2);return T[0]=H,T[1]=A.length,this._createEncoderBuffer([T,A])}let W=1;for(let T=A.length;T>=256;T>>=8)W++;let E=Z.alloc(2+W);E[0]=H,E[1]=128|W;for(let T=1+W,D=A.length;D>0;T--,D>>=8)E[T]=D&255;return this._createEncoderBuffer([E,A])},X.prototype._encodeStr=function(O,J){if(J==="bitstr")return this._createEncoderBuffer([O.unused|0,O.data]);if(J==="bmpstr"){let F=Z.alloc(O.length*2);for(let A=0;A<O.length;A++)F.writeUInt16BE(O.charCodeAt(A),A*2);return this._createEncoderBuffer(F)}else return J==="numstr"?this._isNumstr(O)?this._createEncoderBuffer(O):this.reporter.error("Encoding of string type: numstr supports only digits and space"):J==="printstr"?this._isPrintstr(O)?this._createEncoderBuffer(O):this.reporter.error("Encoding of string type: printstr supports only latin upper and lower case letters, digits, space, apostrophe, left and rigth parenthesis, plus sign, comma, hyphen, dot, slash, colon, equal sign, question mark"):/str$/.test(J)?this._createEncoderBuffer(O):J==="objDesc"?this._createEncoderBuffer(O):this.reporter.error("Encoding of string type: "+J+" unsupported")},X.prototype._encodeObjid=function(O,J,F){if(typeof O=="string"){if(!J)return this.reporter.error("string objid given, but no values map found");if(!J.hasOwnProperty(O))return this.reporter.error("objid not found in values map");O=J[O].split(/[\s.]+/g);for(let E=0;E<O.length;E++)O[E]|=0}else if(Array.isArray(O)){O=O.slice();for(let E=0;E<O.length;E++)O[E]|=0}if(!Array.isArray(O))return this.reporter.error("objid() should be either array or string, got: "+JSON.stringify(O));if(!F){if(O[1]>=40)return this.reporter.error("Second objid identifier OOB");O.splice(0,2,O[0]*40+O[1])}let A=0;for(let E=0;E<O.length;E++){let T=O[E];for(A++;T>=128;T>>=7)A++}let H=Z.alloc(A),W=H.length-1;for(let E=O.length-1;E>=0;E--){let T=O[E];for(H[W--]=T&127;(T>>=7)>0;)H[W--]=128|T&127}return this._createEncoderBuffer(H)};function K(O){return O<10?"0"+O:O}X.prototype._encodeTime=function(O,J){let F,A=new Date(O);return J==="gentime"?F=[K(A.getUTCFullYear()),K(A.getUTCMonth()+1),K(A.getUTCDate()),K(A.getUTCHours()),K(A.getUTCMinutes()),K(A.getUTCSeconds()),"Z"].join(""):J==="utctime"?F=[K(A.getUTCFullYear()%100),K(A.getUTCMonth()+1),K(A.getUTCDate()),K(A.getUTCHours()),K(A.getUTCMinutes()),K(A.getUTCSeconds()),"Z"].join(""):this.reporter.error("Encoding "+J+" time is not supported yet"),this._encodeStr(F,"octstr")},X.prototype._encodeNull=function(){return this._createEncoderBuffer("")},X.prototype._encodeInt=function(O,J){if(typeof O=="string"){if(!J)return this.reporter.error("String int or enum given, but no values map");if(!J.hasOwnProperty(O))return this.reporter.error("Values map doesn't contain: "+JSON.stringify(O));O=J[O]}if(typeof O!="number"&&!Z.isBuffer(O)){let H=O.toArray();!O.sign&&H[0]&128&&H.unshift(0),O=Z.from(H)}if(Z.isBuffer(O)){let H=O.length;O.length===0&&H++;let W=Z.alloc(H);return O.copy(W),O.length===0&&(W[0]=0),this._createEncoderBuffer(W)}if(O<128)return this._createEncoderBuffer(O);if(O<256)return this._createEncoderBuffer([0,O]);let F=1;for(let H=O;H>=256;H>>=8)F++;let A=new Array(F);for(let H=A.length-1;H>=0;H--)A[H]=O&255,O>>=8;return A[0]&128&&A.unshift(0),this._createEncoderBuffer(Z.from(A))},X.prototype._encodeBool=function(O){return this._createEncoderBuffer(O?255:0)},X.prototype._use=function(O,J){return typeof O=="function"&&(O=O(J)),O._getEncoder("der").tree},X.prototype._skipDefault=function(O,J,F){let A=this._baseState,H;if(A.default===null)return!1;let W=O.join();if(A.defaultBuffer===void 0&&(A.defaultBuffer=this._encodeValue(A.default,J,F).join()),W.length!==A.defaultBuffer.length)return!1;for(H=0;H<W.length;H++)if(W[H]!==A.defaultBuffer[H])return!1;return!0};function I(O,J,F,A){let H;if(O==="seqof"?O="seq":O==="setof"&&(O="set"),V.tagByName.hasOwnProperty(O))H=V.tagByName[O];else if(typeof O=="number"&&(O|0)===O)H=O;else return A.error("Unknown tag: "+O);return H>=31?A.error("Multi-octet tag encoding unsupported"):(J||(H|=32),H|=V.tagClassByName[F||"universal"]<<6,H)}}}),MY=q$({"node_modules/asn1.js/lib/asn1/encoders/pem.js"($,Q){var Y=_$(),Z=zY();function G(V){Z.call(this,V),this.enc="pem"}Y(G,Z),Q.exports=G,G.prototype.encode=function(V,U){let X=Z.prototype.encode.call(this,V).toString("base64"),K=["-----BEGIN "+U.label+"-----"];for(let I=0;I<X.length;I+=64)K.push(X.slice(I,I+64));return K.push("-----END "+U.label+"-----"),K.join(` +`)}}}),SY=q$({"node_modules/asn1.js/lib/asn1/encoders/index.js"($){var Q=$;Q.der=zY(),Q.pem=MY()}}),vY=q$({"node_modules/asn1.js/lib/asn1/decoders/der.js"($,Q){var Y=_$(),Z=DY(),G=E$().DecoderBuffer,V=RY(),U=PY();function X(J){this.enc="der",this.name=J.name,this.entity=J,this.tree=new K,this.tree._init(J.body)}Q.exports=X,X.prototype.decode=function(J,F){return G.isDecoderBuffer(J)||(J=new G(J,F)),this.tree._decode(J,F)};function K(J){V.call(this,"der",J)}Y(K,V),K.prototype._peekTag=function(J,F,A){if(J.isEmpty())return!1;let H=J.save(),W=I(J,'Failed to peek tag: "'+F+'"');return J.isError(W)?W:(J.restore(H),W.tag===F||W.tagStr===F||W.tagStr+"of"===F||A)},K.prototype._decodeTag=function(J,F,A){let H=I(J,'Failed to decode tag of "'+F+'"');if(J.isError(H))return H;let W=O(J,H.primitive,'Failed to get length of "'+F+'"');if(J.isError(W))return W;if(!A&&H.tag!==F&&H.tagStr!==F&&H.tagStr+"of"!==F)return J.error('Failed to match tag: "'+F+'"');if(H.primitive||W!==null)return J.skip(W,'Failed to match body of: "'+F+'"');let E=J.save(),T=this._skipUntilEnd(J,'Failed to skip indefinite length body: "'+this.tag+'"');return J.isError(T)?T:(W=J.offset-E.offset,J.restore(E),J.skip(W,'Failed to match body of: "'+F+'"'))},K.prototype._skipUntilEnd=function(J,F){for(;;){let A=I(J,F);if(J.isError(A))return A;let H=O(J,A.primitive,F);if(J.isError(H))return H;let W;if(A.primitive||H!==null?W=J.skip(H):W=this._skipUntilEnd(J,F),J.isError(W))return W;if(A.tagStr==="end")break}},K.prototype._decodeList=function(J,F,A,H){let W=[];for(;!J.isEmpty();){let E=this._peekTag(J,"end");if(J.isError(E))return E;let T=A.decode(J,"der",H);if(J.isError(T)&&E)break;W.push(T)}return W},K.prototype._decodeStr=function(J,F){if(F==="bitstr"){let A=J.readUInt8();return J.isError(A)?A:{unused:A,data:J.raw()}}else if(F==="bmpstr"){let A=J.raw();if(A.length%2===1)return J.error("Decoding of string type: bmpstr length mismatch");let H="";for(let W=0;W<A.length/2;W++)H+=String.fromCharCode(A.readUInt16BE(W*2));return H}else if(F==="numstr"){let A=J.raw().toString("ascii");return this._isNumstr(A)?A:J.error("Decoding of string type: numstr unsupported characters")}else{if(F==="octstr")return J.raw();if(F==="objDesc")return J.raw();if(F==="printstr"){let A=J.raw().toString("ascii");return this._isPrintstr(A)?A:J.error("Decoding of string type: printstr unsupported characters")}else return/str$/.test(F)?J.raw().toString():J.error("Decoding of string type: "+F+" unsupported")}},K.prototype._decodeObjid=function(J,F,A){let H,W=[],E=0,T=0;for(;!J.isEmpty();)T=J.readUInt8(),E<<=7,E|=T&127,(T&128)===0&&(W.push(E),E=0);T&128&&W.push(E);let D=W[0]/40|0,C=W[0]%40;if(A?H=W:H=[D,C].concat(W.slice(1)),F){let L=F[H.join(" ")];L===void 0&&(L=F[H.join(".")]),L!==void 0&&(H=L)}return H},K.prototype._decodeTime=function(J,F){let A=J.raw().toString(),H,W,E,T,D,C;if(F==="gentime")H=A.slice(0,4)|0,W=A.slice(4,6)|0,E=A.slice(6,8)|0,T=A.slice(8,10)|0,D=A.slice(10,12)|0,C=A.slice(12,14)|0;else if(F==="utctime")H=A.slice(0,2)|0,W=A.slice(2,4)|0,E=A.slice(4,6)|0,T=A.slice(6,8)|0,D=A.slice(8,10)|0,C=A.slice(10,12)|0,H<70?H=2000+H:H=1900+H;else return J.error("Decoding "+F+" time is not supported yet");return Date.UTC(H,W-1,E,T,D,C,0)},K.prototype._decodeNull=function(){return null},K.prototype._decodeBool=function(J){let F=J.readUInt8();return J.isError(F)?F:F!==0},K.prototype._decodeInt=function(J,F){let A=J.raw(),H=new Z(A);return F&&(H=F[H.toString(10)]||H),H},K.prototype._use=function(J,F){return typeof J=="function"&&(J=J(F)),J._getDecoder("der").tree};function I(J,F){let A=J.readUInt8(F);if(J.isError(A))return A;let H=U.tagClass[A>>6],W=(A&32)===0;if((A&31)===31){let T=A;for(A=0;(T&128)===128;){if(T=J.readUInt8(F),J.isError(T))return T;A<<=7,A|=T&127}}else A&=31;let E=U.tag[A];return{cls:H,primitive:W,tag:A,tagStr:E}}function O(J,F,A){let H=J.readUInt8(A);if(J.isError(H))return H;if(!F&&H===128)return null;if((H&128)===0)return H;let W=H&127;if(W>4)return J.error("length octect is too long");H=0;for(let E=0;E<W;E++){H<<=8;let T=J.readUInt8(A);if(J.isError(T))return T;H|=T}return H}}}),qY=q$({"node_modules/asn1.js/lib/asn1/decoders/pem.js"($,Q){var Y=_$(),Z=CY().Buffer,G=vY();function V(U){G.call(this,U),this.enc="pem"}Y(V,G),Q.exports=V,V.prototype.decode=function(U,X){let K=U.toString().split(/[\r\n]+/g),I=X.label.toUpperCase(),O=/^-----(BEGIN|END) ([^-]+)-----$/,J=-1,F=-1;for(let W=0;W<K.length;W++){let E=K[W].match(O);if(E!==null&&E[2]===I)if(J===-1){if(E[1]!=="BEGIN")break;J=W}else{if(E[1]!=="END")break;F=W;break}}if(J===-1||F===-1)throw new Error("PEM section not found for: "+I);let A=K.slice(J+1,F).join("");A.replace(/[^a-z0-9+/=]+/gi,"");let H=Z.from(A,"base64");return G.prototype.decode.call(this,H,X)}}}),jY=q$({"node_modules/asn1.js/lib/asn1/decoders/index.js"($){var Q=$;Q.der=vY(),Q.pem=qY()}}),kY=q$({"node_modules/asn1.js/lib/asn1/api.js"($){var Q=SY(),Y=jY(),Z=_$(),G=$;G.define=function(U,X){return new V(U,X)};function V(U,X){this.name=U,this.body=X,this.decoders={},this.encoders={}}V.prototype._createNamed=function(U){let X=this.name;function K(I){this._initNamed(I,X)}return Z(K,U),K.prototype._initNamed=function(I,O){U.call(this,I,O)},new K(this)},V.prototype._getDecoder=function(U){return U=U||"der",this.decoders.hasOwnProperty(U)||(this.decoders[U]=this._createNamed(Y[U])),this.decoders[U]},V.prototype.decode=function(U,X,K){return this._getDecoder(X).decode(U,K)},V.prototype._getEncoder=function(U){return U=U||"der",this.encoders.hasOwnProperty(U)||(this.encoders[U]=this._createNamed(Q[U])),this.encoders[U]},V.prototype.encode=function(U,X,K){return this._getEncoder(X).encode(U,K)}}}),gY=q$({"node_modules/asn1.js/lib/asn1/base/index.js"($){var Q=$;Q.Reporter=LY().Reporter,Q.DecoderBuffer=E$().DecoderBuffer,Q.EncoderBuffer=E$().EncoderBuffer,Q.Node=RY()}}),_Y=q$({"node_modules/asn1.js/lib/asn1/constants/index.js"($){var Q=$;Q._reverse=function(Y){let Z={};return Object.keys(Y).forEach(function(G){(G|0)==G&&(G=G|0);let V=Y[G];Z[V]=G}),Z},Q.der=PY()}}),NY=q$({"node_modules/asn1.js/lib/asn1.js"($){var Q=$;Q.bignum=DY(),Q.define=kY().define,Q.base=gY(),Q.constants=_Y(),Q.decoders=jY(),Q.encoders=SY()}}),xY=q$({"node_modules/parse-asn1/certificate.js"($,Q){var Y=NY(),Z=Y.define("Time",function(){this.choice({utcTime:this.utctime(),generalTime:this.gentime()})}),G=Y.define("AttributeTypeValue",function(){this.seq().obj(this.key("type").objid(),this.key("value").any())}),V=Y.define("AlgorithmIdentifier",function(){this.seq().obj(this.key("algorithm").objid(),this.key("parameters").optional(),this.key("curve").objid().optional())}),U=Y.define("SubjectPublicKeyInfo",function(){this.seq().obj(this.key("algorithm").use(V),this.key("subjectPublicKey").bitstr())}),X=Y.define("RelativeDistinguishedName",function(){this.setof(G)}),K=Y.define("RDNSequence",function(){this.seqof(X)}),I=Y.define("Name",function(){this.choice({rdnSequence:this.use(K)})}),O=Y.define("Validity",function(){this.seq().obj(this.key("notBefore").use(Z),this.key("notAfter").use(Z))}),J=Y.define("Extension",function(){this.seq().obj(this.key("extnID").objid(),this.key("critical").bool().def(!1),this.key("extnValue").octstr())}),F=Y.define("TBSCertificate",function(){this.seq().obj(this.key("version").explicit(0).int().optional(),this.key("serialNumber").int(),this.key("signature").use(V),this.key("issuer").use(I),this.key("validity").use(O),this.key("subject").use(I),this.key("subjectPublicKeyInfo").use(U),this.key("issuerUniqueID").implicit(1).bitstr().optional(),this.key("subjectUniqueID").implicit(2).bitstr().optional(),this.key("extensions").explicit(3).seqof(J).optional())}),A=Y.define("X509Certificate",function(){this.seq().obj(this.key("tbsCertificate").use(F),this.key("signatureAlgorithm").use(V),this.key("signatureValue").bitstr())});Q.exports=A}}),BY=q$({"node_modules/parse-asn1/asn1.js"($){var Q=NY();$.certificate=xY();var Y=Q.define("RSAPrivateKey",function(){this.seq().obj(this.key("version").int(),this.key("modulus").int(),this.key("publicExponent").int(),this.key("privateExponent").int(),this.key("prime1").int(),this.key("prime2").int(),this.key("exponent1").int(),this.key("exponent2").int(),this.key("coefficient").int())});$.RSAPrivateKey=Y;var Z=Q.define("RSAPublicKey",function(){this.seq().obj(this.key("modulus").int(),this.key("publicExponent").int())});$.RSAPublicKey=Z;var G=Q.define("SubjectPublicKeyInfo",function(){this.seq().obj(this.key("algorithm").use(V),this.key("subjectPublicKey").bitstr())});$.PublicKey=G;var V=Q.define("AlgorithmIdentifier",function(){this.seq().obj(this.key("algorithm").objid(),this.key("none").null_().optional(),this.key("curve").objid().optional(),this.key("params").seq().obj(this.key("p").int(),this.key("q").int(),this.key("g").int()).optional())}),U=Q.define("PrivateKeyInfo",function(){this.seq().obj(this.key("version").int(),this.key("algorithm").use(V),this.key("subjectPrivateKey").octstr())});$.PrivateKey=U;var X=Q.define("EncryptedPrivateKeyInfo",function(){this.seq().obj(this.key("algorithm").seq().obj(this.key("id").objid(),this.key("decrypt").seq().obj(this.key("kde").seq().obj(this.key("id").objid(),this.key("kdeparams").seq().obj(this.key("salt").octstr(),this.key("iters").int())),this.key("cipher").seq().obj(this.key("algo").objid(),this.key("iv").octstr()))),this.key("subjectPrivateKey").octstr())});$.EncryptedPrivateKey=X;var K=Q.define("DSAPrivateKey",function(){this.seq().obj(this.key("version").int(),this.key("p").int(),this.key("q").int(),this.key("g").int(),this.key("pub_key").int(),this.key("priv_key").int())});$.DSAPrivateKey=K,$.DSAparam=Q.define("DSAparam",function(){this.int()});var I=Q.define("ECPrivateKey",function(){this.seq().obj(this.key("version").int(),this.key("privateKey").octstr(),this.key("parameters").optional().explicit(0).use(O),this.key("publicKey").optional().explicit(1).bitstr())});$.ECPrivateKey=I;var O=Q.define("ECParameters",function(){this.choice({namedCurve:this.objid()})});$.signature=Q.define("signature",function(){this.seq().obj(this.key("r").int(),this.key("s").int())})}}),yY=q$({"node_modules/parse-asn1/aesid.json"($,Q){Q.exports={"2.16.840.1.101.3.4.1.1":"aes-128-ecb","2.16.840.1.101.3.4.1.2":"aes-128-cbc","2.16.840.1.101.3.4.1.3":"aes-128-ofb","2.16.840.1.101.3.4.1.4":"aes-128-cfb","2.16.840.1.101.3.4.1.21":"aes-192-ecb","2.16.840.1.101.3.4.1.22":"aes-192-cbc","2.16.840.1.101.3.4.1.23":"aes-192-ofb","2.16.840.1.101.3.4.1.24":"aes-192-cfb","2.16.840.1.101.3.4.1.41":"aes-256-ecb","2.16.840.1.101.3.4.1.42":"aes-256-cbc","2.16.840.1.101.3.4.1.43":"aes-256-ofb","2.16.840.1.101.3.4.1.44":"aes-256-cfb"}}}),wY=q$({"node_modules/parse-asn1/fixProc.js"($,Q){var Y=/Proc-Type: 4,ENCRYPTED[\n\r]+DEK-Info: AES-((?:128)|(?:192)|(?:256))-CBC,([0-9A-H]+)[\n\r]+([0-9A-z\n\r+/=]+)[\n\r]+/m,Z=/^-----BEGIN ((?:.*? KEY)|CERTIFICATE)-----/m,G=/^-----BEGIN ((?:.*? KEY)|CERTIFICATE)-----([0-9A-z\n\r+/=]+)-----END \1-----$/m,V=MQ(),U=qQ(),X=k$().Buffer;Q.exports=function(K,I){var O=K.toString(),J=O.match(Y),F;if(J){var A="aes"+J[1],H=X.from(J[2],"hex"),W=X.from(J[3].replace(/[\r\n]/g,""),"base64"),E=V(I,H.slice(0,8),parseInt(J[1],10)).key,T=[],D=U.createDecipheriv(A,E,H);T.push(D.update(W)),T.push(D.final()),F=X.concat(T)}else{var C=O.match(G);F=X.from(C[2].replace(/[\r\n]/g,""),"base64")}var L=O.match(Z)[1];return{tag:L,data:F}}}}),pY=q$({"node_modules/parse-asn1/index.js"($,Q){var Y=BY(),Z=yY(),G=wY(),V=qQ(),U=QQ(),X=k$().Buffer;Q.exports=K;function K(O){var J;typeof O=="object"&&!X.isBuffer(O)&&(J=O.passphrase,O=O.key),typeof O=="string"&&(O=X.from(O));var F=G(O,J),A=F.tag,H=F.data,W,E;switch(A){case"CERTIFICATE":E=Y.certificate.decode(H,"der").tbsCertificate.subjectPublicKeyInfo;case"PUBLIC KEY":switch(E||(E=Y.PublicKey.decode(H,"der")),W=E.algorithm.algorithm.join("."),W){case"1.2.840.113549.1.1.1":return Y.RSAPublicKey.decode(E.subjectPublicKey.data,"der");case"1.2.840.10045.2.1":return E.subjectPrivateKey=E.subjectPublicKey,{type:"ec",data:E};case"1.2.840.10040.4.1":return E.algorithm.params.pub_key=Y.DSAparam.decode(E.subjectPublicKey.data,"der"),{type:"dsa",data:E.algorithm.params};default:throw new Error("unknown key id "+W)}case"ENCRYPTED PRIVATE KEY":H=Y.EncryptedPrivateKey.decode(H,"der"),H=I(H,J);case"PRIVATE KEY":switch(E=Y.PrivateKey.decode(H,"der"),W=E.algorithm.algorithm.join("."),W){case"1.2.840.113549.1.1.1":return Y.RSAPrivateKey.decode(E.subjectPrivateKey,"der");case"1.2.840.10045.2.1":return{curve:E.algorithm.curve,privateKey:Y.ECPrivateKey.decode(E.subjectPrivateKey,"der").privateKey};case"1.2.840.10040.4.1":return E.algorithm.params.priv_key=Y.DSAparam.decode(E.subjectPrivateKey,"der"),{type:"dsa",params:E.algorithm.params};default:throw new Error("unknown key id "+W)}case"RSA PUBLIC KEY":return Y.RSAPublicKey.decode(H,"der");case"RSA PRIVATE KEY":return Y.RSAPrivateKey.decode(H,"der");case"DSA PRIVATE KEY":return{type:"dsa",params:Y.DSAPrivateKey.decode(H,"der")};case"EC PRIVATE KEY":return H=Y.ECPrivateKey.decode(H,"der"),{curve:H.parameters.value,privateKey:H.privateKey};default:throw new Error("unknown key type "+A)}}K.signature=Y.signature;function I(O,J){var F=O.algorithm.decrypt.kde.kdeparams.salt,A=parseInt(O.algorithm.decrypt.kde.kdeparams.iters.toString(),10),H=Z[O.algorithm.decrypt.cipher.algo.join(".")],W=O.algorithm.decrypt.cipher.iv,E=O.subjectPrivateKey,T=parseInt(H.split("-")[1],10)/8,D=U.pbkdf2Sync(J,F,A,T,"sha1"),C=V.createDecipheriv(H,D,W),L=[];return L.push(C.update(E)),L.push(C.final()),X.concat(L)}}}),fY=q$({"node_modules/browserify-sign/browser/curves.json"($,Q){Q.exports={"1.3.132.0.10":"secp256k1","1.3.132.0.33":"p224","1.2.840.10045.3.1.1":"p192","1.2.840.10045.3.1.7":"p256","1.3.132.0.34":"p384","1.3.132.0.35":"p521"}}}),cY=q$({"node_modules/browserify-sign/browser/sign.js"($,Q){var Y=k$().Buffer,Z=s$(),G=hQ(),V=TY().ec,U=cQ(),X=pY(),K=fY();function I(D,C,L,R,P){var z=X(C);if(z.curve){if(R!=="ecdsa"&&R!=="ecdsa/rsa")throw new Error("wrong private key type");return O(D,z)}else if(z.type==="dsa"){if(R!=="dsa")throw new Error("wrong private key type");return J(D,z,L)}else if(R!=="rsa"&&R!=="ecdsa/rsa")throw new Error("wrong private key type");D=Y.concat([P,D]);for(var M=z.modulus.byteLength(),S=[0,1];D.length+S.length+1<M;)S.push(255);S.push(0);for(var v=-1;++v<D.length;)S.push(D[v]);var q=G(S,z);return q}function O(D,C){var L=K[C.curve.join(".")];if(!L)throw new Error("unknown curve "+C.curve.join("."));var R=new V(L),P=R.keyFromPrivate(C.privateKey),z=P.sign(D);return Y.from(z.toDER())}function J(D,C,L){for(var R=C.params.priv_key,P=C.params.p,z=C.params.q,M=C.params.g,S=new U(0),v,q=H(D,z).mod(z),j=!1,k=A(R,z,D,L);j===!1;)v=E(z,k,L),S=T(M,v,P,z),j=v.invm(z).imul(q.add(R.mul(S))).mod(z),j.cmpn(0)===0&&(j=!1,S=new U(0));return F(S,j)}function F(D,C){D=D.toArray(),C=C.toArray(),D[0]&128&&(D=[0].concat(D)),C[0]&128&&(C=[0].concat(C));var L=D.length+C.length+4,R=[48,L,2,D.length];return R=R.concat(D,[2,C.length],C),Y.from(R)}function A(D,C,L,R){if(D=Y.from(D.toArray()),D.length<C.byteLength()){var P=Y.alloc(C.byteLength()-D.length);D=Y.concat([P,D])}var z=L.length,M=W(L,C),S=Y.alloc(z);S.fill(1);var v=Y.alloc(z);return v=Z(R,v).update(S).update(Y.from([0])).update(D).update(M).digest(),S=Z(R,v).update(S).digest(),v=Z(R,v).update(S).update(Y.from([1])).update(D).update(M).digest(),S=Z(R,v).update(S).digest(),{k:v,v:S}}function H(D,C){var L=new U(D),R=(D.length<<3)-C.bitLength();return R>0&&L.ishrn(R),L}function W(D,C){D=H(D,C),D=D.mod(C);var L=Y.from(D.toArray());if(L.length<C.byteLength()){var R=Y.alloc(C.byteLength()-L.length);L=Y.concat([R,L])}return L}function E(D,C,L){var R,P;do{for(R=Y.alloc(0);R.length*8<D.bitLength();)C.v=Z(L,C.k).update(C.v).digest(),R=Y.concat([R,C.v]);P=H(R,D),C.k=Z(L,C.k).update(C.v).update(Y.from([0])).digest(),C.v=Z(L,C.k).update(C.v).digest()}while(P.cmp(D)!==-1);return P}function T(D,C,L,R){return D.toRed(U.mont(L)).redPow(C).fromRed().mod(R)}Q.exports=I,Q.exports.getKey=A,Q.exports.makeKey=E}}),hY=q$({"node_modules/browserify-sign/browser/verify.js"($,Q){var Y=k$().Buffer,Z=cQ(),G=TY().ec,V=pY(),U=fY();function X(J,F,A,H,W){var E=V(A);if(E.type==="ec"){if(H!=="ecdsa"&&H!=="ecdsa/rsa")throw new Error("wrong public key type");return K(J,F,E)}else if(E.type==="dsa"){if(H!=="dsa")throw new Error("wrong public key type");return I(J,F,E)}else if(H!=="rsa"&&H!=="ecdsa/rsa")throw new Error("wrong public key type");F=Y.concat([W,F]);for(var T=E.modulus.byteLength(),D=[1],C=0;F.length+D.length+2<T;)D.push(255),C++;D.push(0);for(var L=-1;++L<F.length;)D.push(F[L]);D=Y.from(D);var R=Z.mont(E.modulus);J=new Z(J).toRed(R),J=J.redPow(new Z(E.publicExponent)),J=Y.from(J.fromRed().toArray());var P=C<8?1:0;for(T=Math.min(J.length,D.length),J.length!==D.length&&(P=1),L=-1;++L<T;)P|=J[L]^D[L];return P===0}function K(J,F,A){var H=U[A.data.algorithm.curve.join(".")];if(!H)throw new Error("unknown curve "+A.data.algorithm.curve.join("."));var W=new G(H),E=A.data.subjectPrivateKey.data;return W.verify(F,J,E)}function I(J,F,A){var H=A.data.p,W=A.data.q,E=A.data.g,T=A.data.pub_key,D=V.signature.decode(J,"der"),C=D.s,L=D.r;O(C,W),O(L,W);var R=Z.mont(H),P=C.invm(W),z=E.toRed(R).redPow(new Z(F).mul(P).mod(W)).fromRed().mul(T.toRed(R).redPow(L.mul(P).mod(W)).fromRed()).mod(H).mod(W);return z.cmp(L)===0}function O(J,F){if(J.cmpn(0)<=0)throw new Error("invalid sig");if(J.cmp(F)>=F)throw new Error("invalid sig")}Q.exports=X}}),dY=q$({"node_modules/browserify-sign/browser/index.js"($,Q){var Y=k$().Buffer,Z=o$(),G=_$(),V=cY(),U=hY(),X=t$();Object.keys(X).forEach(function(F){X[F].id=Y.from(X[F].id,"hex"),X[F.toLowerCase()]=X[F]});function K(F){A$.Writable.call(this);var A=X[F];if(!A)throw new Error("Unknown message digest");this._hashType=A.hash,this._hash=Z(A.hash),this._tag=A.id,this._signType=A.sign}G(K,A$.Writable),K.prototype._write=function(F,A,H){this._hash.update(F),H()},K.prototype.update=function(F,A){return typeof F=="string"&&(F=Y.from(F,A)),this._hash.update(F),this},K.prototype.sign=function(F,A){this.end();var H=this._hash.digest(),W=V(H,F,this._hashType,this._signType,this._tag);return A?W.toString(A):W};function I(F){A$.Writable.call(this);var A=X[F];if(!A)throw new Error("Unknown message digest");this._hash=Z(A.hash),this._tag=A.id,this._signType=A.sign}G(I,A$.Writable),I.prototype._write=function(F,A,H){this._hash.update(F),H()},I.prototype.update=function(F,A){return typeof F=="string"&&(F=Y.from(F,A)),this._hash.update(F),this},I.prototype.verify=function(F,A,H){typeof A=="string"&&(A=Y.from(A,H)),this.end();var W=this._hash.digest();return U(A,W,F,this._signType,this._tag)};function O(F){return new K(F)}function J(F){return new I(F)}Q.exports={Sign:O,Verify:J,createSign:O,createVerify:J}}}),bY=q$({"node_modules/create-ecdh/node_modules/bn.js/lib/bn.js"($,Q){(function(Y,Z){function G(j,k){if(!j)throw new Error(k||"Assertion failed")}function V(j,k){j.super_=k;var g=function(){};g.prototype=k.prototype,j.prototype=new g,j.prototype.constructor=j}function U(j,k,g){if(U.isBN(j))return j;this.negative=0,this.words=null,this.length=0,this.red=null,j!==null&&((k==="le"||k==="be")&&(g=k,k=10),this._init(j||0,k||10,g||"be"))}typeof Y=="object"?Y.exports=U:Z.BN=U,U.BN=U,U.wordSize=26;var X=F$;U.isBN=function(j){return j instanceof U?!0:j!==null&&typeof j=="object"&&j.constructor.wordSize===U.wordSize&&Array.isArray(j.words)},U.max=function(j,k){return j.cmp(k)>0?j:k},U.min=function(j,k){return j.cmp(k)<0?j:k},U.prototype._init=function(j,k,g){if(typeof j=="number")return this._initNumber(j,k,g);if(typeof j=="object")return this._initArray(j,k,g);k==="hex"&&(k=16),G(k===(k|0)&&k>=2&&k<=36),j=j.toString().replace(/\s+/g,"");var _=0;j[0]==="-"&&(_++,this.negative=1),_<j.length&&(k===16?this._parseHex(j,_,g):(this._parseBase(j,k,_),g==="le"&&this._initArray(this.toArray(),k,g)))},U.prototype._initNumber=function(j,k,g){j<0&&(this.negative=1,j=-j),j<67108864?(this.words=[j&67108863],this.length=1):j<4503599627370496?(this.words=[j&67108863,j/67108864&67108863],this.length=2):(G(j<9007199254740992),this.words=[j&67108863,j/67108864&67108863,1],this.length=3),g==="le"&&this._initArray(this.toArray(),k,g)},U.prototype._initArray=function(j,k,g){if(G(typeof j.length=="number"),j.length<=0)return this.words=[0],this.length=1,this;this.length=Math.ceil(j.length/3),this.words=new Array(this.length);for(var _=0;_<this.length;_++)this.words[_]=0;var N,x,B=0;if(g==="be")for(_=j.length-1,N=0;_>=0;_-=3)x=j[_]|j[_-1]<<8|j[_-2]<<16,this.words[N]|=x<<B&67108863,this.words[N+1]=x>>>26-B&67108863,B+=24,B>=26&&(B-=26,N++);else if(g==="le")for(_=0,N=0;_<j.length;_+=3)x=j[_]|j[_+1]<<8|j[_+2]<<16,this.words[N]|=x<<B&67108863,this.words[N+1]=x>>>26-B&67108863,B+=24,B>=26&&(B-=26,N++);return this.strip()};function K(j,k){var g=j.charCodeAt(k);return g>=65&&g<=70?g-55:g>=97&&g<=102?g-87:g-48&15}function I(j,k,g){var _=K(j,g);return g-1>=k&&(_|=K(j,g-1)<<4),_}U.prototype._parseHex=function(j,k,g){this.length=Math.ceil((j.length-k)/6),this.words=new Array(this.length);for(var _=0;_<this.length;_++)this.words[_]=0;var N=0,x=0,B;if(g==="be")for(_=j.length-1;_>=k;_-=2)B=I(j,k,_)<<N,this.words[x]|=B&67108863,N>=18?(N-=18,x+=1,this.words[x]|=B>>>26):N+=8;else{var y=j.length-k;for(_=y%2===0?k+1:k;_<j.length;_+=2)B=I(j,k,_)<<N,this.words[x]|=B&67108863,N>=18?(N-=18,x+=1,this.words[x]|=B>>>26):N+=8}this.strip()};function O(j,k,g,_){for(var N=0,x=Math.min(j.length,g),B=k;B<x;B++){var y=j.charCodeAt(B)-48;N*=_,y>=49?N+=y-49+10:y>=17?N+=y-17+10:N+=y}return N}U.prototype._parseBase=function(j,k,g){this.words=[0],this.length=1;for(var _=0,N=1;N<=67108863;N*=k)_++;_--,N=N/k|0;for(var x=j.length-g,B=x%_,y=Math.min(x,x-B)+g,w=0,p=g;p<y;p+=_)w=O(j,p,p+_,k),this.imuln(N),this.words[0]+w<67108864?this.words[0]+=w:this._iaddn(w);if(B!==0){var f=1;for(w=O(j,p,j.length,k),p=0;p<B;p++)f*=k;this.imuln(f),this.words[0]+w<67108864?this.words[0]+=w:this._iaddn(w)}this.strip()},U.prototype.copy=function(j){j.words=new Array(this.length);for(var k=0;k<this.length;k++)j.words[k]=this.words[k];j.length=this.length,j.negative=this.negative,j.red=this.red},U.prototype.clone=function(){var j=new U(null);return this.copy(j),j},U.prototype._expand=function(j){for(;this.length<j;)this.words[this.length++]=0;return this},U.prototype.strip=function(){for(;this.length>1&&this.words[this.length-1]===0;)this.length--;return this._normSign()},U.prototype._normSign=function(){return this.length===1&&this.words[0]===0&&(this.negative=0),this},U.prototype.inspect=function(){return(this.red?"<BN-R: ":"<BN: ")+this.toString(16)+">"};var J=["","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"],F=[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],A=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64000000,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,24300000,28629151,33554432,39135393,45435424,52521875,60466176];U.prototype.toString=function(j,k){j=j||10,k=k|0||1;var g;if(j===16||j==="hex"){g="";for(var _=0,N=0,x=0;x<this.length;x++){var B=this.words[x],y=((B<<_|N)&16777215).toString(16);N=B>>>24-_&16777215,N!==0||x!==this.length-1?g=J[6-y.length]+y+g:g=y+g,_+=2,_>=26&&(_-=26,x--)}for(N!==0&&(g=N.toString(16)+g);g.length%k!==0;)g="0"+g;return this.negative!==0&&(g="-"+g),g}if(j===(j|0)&&j>=2&&j<=36){var w=F[j],p=A[j];g="";var f=this.clone();for(f.negative=0;!f.isZero();){var c=f.modn(p).toString(j);f=f.idivn(p),f.isZero()?g=c+g:g=J[w-c.length]+c+g}for(this.isZero()&&(g="0"+g);g.length%k!==0;)g="0"+g;return this.negative!==0&&(g="-"+g),g}G(!1,"Base should be between 2 and 36")},U.prototype.toNumber=function(){var j=this.words[0];return this.length===2?j+=this.words[1]*67108864:this.length===3&&this.words[2]===1?j+=4503599627370496+this.words[1]*67108864:this.length>2&&G(!1,"Number can only safely store up to 53 bits"),this.negative!==0?-j:j},U.prototype.toJSON=function(){return this.toString(16)},U.prototype.toBuffer=function(j,k){return G(typeof X<"u"),this.toArrayLike(X,j,k)},U.prototype.toArray=function(j,k){return this.toArrayLike(Array,j,k)},U.prototype.toArrayLike=function(j,k,g){var _=this.byteLength(),N=g||Math.max(1,_);G(_<=N,"byte array longer than desired length"),G(N>0,"Requested array length <= 0"),this.strip();var x=k==="le",B=new j(N),y,w,p=this.clone();if(x){for(w=0;!p.isZero();w++)y=p.andln(255),p.iushrn(8),B[w]=y;for(;w<N;w++)B[w]=0}else{for(w=0;w<N-_;w++)B[w]=0;for(w=0;!p.isZero();w++)y=p.andln(255),p.iushrn(8),B[N-w-1]=y}return B},Math.clz32?U.prototype._countBits=function(j){return 32-Math.clz32(j)}:U.prototype._countBits=function(j){var k=j,g=0;return k>=4096&&(g+=13,k>>>=13),k>=64&&(g+=7,k>>>=7),k>=8&&(g+=4,k>>>=4),k>=2&&(g+=2,k>>>=2),g+k},U.prototype._zeroBits=function(j){if(j===0)return 26;var k=j,g=0;return(k&8191)===0&&(g+=13,k>>>=13),(k&127)===0&&(g+=7,k>>>=7),(k&15)===0&&(g+=4,k>>>=4),(k&3)===0&&(g+=2,k>>>=2),(k&1)===0&&g++,g},U.prototype.bitLength=function(){var j=this.words[this.length-1],k=this._countBits(j);return(this.length-1)*26+k};function H(j){for(var k=new Array(j.bitLength()),g=0;g<k.length;g++){var _=g/26|0,N=g%26;k[g]=(j.words[_]&1<<N)>>>N}return k}U.prototype.zeroBits=function(){if(this.isZero())return 0;for(var j=0,k=0;k<this.length;k++){var g=this._zeroBits(this.words[k]);if(j+=g,g!==26)break}return j},U.prototype.byteLength=function(){return Math.ceil(this.bitLength()/8)},U.prototype.toTwos=function(j){return this.negative!==0?this.abs().inotn(j).iaddn(1):this.clone()},U.prototype.fromTwos=function(j){return this.testn(j-1)?this.notn(j).iaddn(1).ineg():this.clone()},U.prototype.isNeg=function(){return this.negative!==0},U.prototype.neg=function(){return this.clone().ineg()},U.prototype.ineg=function(){return this.isZero()||(this.negative^=1),this},U.prototype.iuor=function(j){for(;this.length<j.length;)this.words[this.length++]=0;for(var k=0;k<j.length;k++)this.words[k]=this.words[k]|j.words[k];return this.strip()},U.prototype.ior=function(j){return G((this.negative|j.negative)===0),this.iuor(j)},U.prototype.or=function(j){return this.length>j.length?this.clone().ior(j):j.clone().ior(this)},U.prototype.uor=function(j){return this.length>j.length?this.clone().iuor(j):j.clone().iuor(this)},U.prototype.iuand=function(j){var k;this.length>j.length?k=j:k=this;for(var g=0;g<k.length;g++)this.words[g]=this.words[g]&j.words[g];return this.length=k.length,this.strip()},U.prototype.iand=function(j){return G((this.negative|j.negative)===0),this.iuand(j)},U.prototype.and=function(j){return this.length>j.length?this.clone().iand(j):j.clone().iand(this)},U.prototype.uand=function(j){return this.length>j.length?this.clone().iuand(j):j.clone().iuand(this)},U.prototype.iuxor=function(j){var k,g;this.length>j.length?(k=this,g=j):(k=j,g=this);for(var _=0;_<g.length;_++)this.words[_]=k.words[_]^g.words[_];if(this!==k)for(;_<k.length;_++)this.words[_]=k.words[_];return this.length=k.length,this.strip()},U.prototype.ixor=function(j){return G((this.negative|j.negative)===0),this.iuxor(j)},U.prototype.xor=function(j){return this.length>j.length?this.clone().ixor(j):j.clone().ixor(this)},U.prototype.uxor=function(j){return this.length>j.length?this.clone().iuxor(j):j.clone().iuxor(this)},U.prototype.inotn=function(j){G(typeof j=="number"&&j>=0);var k=Math.ceil(j/26)|0,g=j%26;this._expand(k),g>0&&k--;for(var _=0;_<k;_++)this.words[_]=~this.words[_]&67108863;return g>0&&(this.words[_]=~this.words[_]&67108863>>26-g),this.strip()},U.prototype.notn=function(j){return this.clone().inotn(j)},U.prototype.setn=function(j,k){G(typeof j=="number"&&j>=0);var g=j/26|0,_=j%26;return this._expand(g+1),k?this.words[g]=this.words[g]|1<<_:this.words[g]=this.words[g]&~(1<<_),this.strip()},U.prototype.iadd=function(j){var k;if(this.negative!==0&&j.negative===0)return this.negative=0,k=this.isub(j),this.negative^=1,this._normSign();if(this.negative===0&&j.negative!==0)return j.negative=0,k=this.isub(j),j.negative=1,k._normSign();var g,_;this.length>j.length?(g=this,_=j):(g=j,_=this);for(var N=0,x=0;x<_.length;x++)k=(g.words[x]|0)+(_.words[x]|0)+N,this.words[x]=k&67108863,N=k>>>26;for(;N!==0&&x<g.length;x++)k=(g.words[x]|0)+N,this.words[x]=k&67108863,N=k>>>26;if(this.length=g.length,N!==0)this.words[this.length]=N,this.length++;else if(g!==this)for(;x<g.length;x++)this.words[x]=g.words[x];return this},U.prototype.add=function(j){var k;return j.negative!==0&&this.negative===0?(j.negative=0,k=this.sub(j),j.negative^=1,k):j.negative===0&&this.negative!==0?(this.negative=0,k=j.sub(this),this.negative=1,k):this.length>j.length?this.clone().iadd(j):j.clone().iadd(this)},U.prototype.isub=function(j){if(j.negative!==0){j.negative=0;var k=this.iadd(j);return j.negative=1,k._normSign()}else if(this.negative!==0)return this.negative=0,this.iadd(j),this.negative=1,this._normSign();var g=this.cmp(j);if(g===0)return this.negative=0,this.length=1,this.words[0]=0,this;var _,N;g>0?(_=this,N=j):(_=j,N=this);for(var x=0,B=0;B<N.length;B++)k=(_.words[B]|0)-(N.words[B]|0)+x,x=k>>26,this.words[B]=k&67108863;for(;x!==0&&B<_.length;B++)k=(_.words[B]|0)+x,x=k>>26,this.words[B]=k&67108863;if(x===0&&B<_.length&&_!==this)for(;B<_.length;B++)this.words[B]=_.words[B];return this.length=Math.max(this.length,B),_!==this&&(this.negative=1),this.strip()},U.prototype.sub=function(j){return this.clone().isub(j)};function W(j,k,g){g.negative=k.negative^j.negative;var _=j.length+k.length|0;g.length=_,_=_-1|0;var N=j.words[0]|0,x=k.words[0]|0,B=N*x,y=B&67108863,w=B/67108864|0;g.words[0]=y;for(var p=1;p<_;p++){for(var f=w>>>26,c=w&67108863,h=Math.min(p,k.length-1),d=Math.max(0,p-j.length+1);d<=h;d++){var b=p-d|0;N=j.words[b]|0,x=k.words[d]|0,B=N*x+c,f+=B/67108864|0,c=B&67108863}g.words[p]=c|0,w=f|0}return w!==0?g.words[p]=w|0:g.length--,g.strip()}var E=function(j,k,g){var _=j.words,N=k.words,x=g.words,B=0,y,w,p,f=_[0]|0,c=f&8191,h=f>>>13,d=_[1]|0,b=d&8191,l=d>>>13,o=_[2]|0,u=o&8191,n=o>>>13,s=_[3]|0,t=s&8191,m=s>>>13,a=_[4]|0,e=a&8191,r=a>>>13,i=_[5]|0,$0=i&8191,Q0=i>>>13,Y0=_[6]|0,Z0=Y0&8191,G0=Y0>>>13,V0=_[7]|0,U0=V0&8191,X0=V0>>>13,K0=_[8]|0,I0=K0&8191,O0=K0>>>13,J0=_[9]|0,F0=J0&8191,A0=J0>>>13,H0=N[0]|0,W0=H0&8191,E0=H0>>>13,T0=N[1]|0,D0=T0&8191,C0=T0>>>13,L0=N[2]|0,R0=L0&8191,P0=L0>>>13,z0=N[3]|0,M0=z0&8191,S0=z0>>>13,v0=N[4]|0,q0=v0&8191,j0=v0>>>13,k0=N[5]|0,g0=k0&8191,_0=k0>>>13,N0=N[6]|0,x0=N0&8191,B0=N0>>>13,y0=N[7]|0,w0=y0&8191,p0=y0>>>13,f0=N[8]|0,c0=f0&8191,h0=f0>>>13,d0=N[9]|0,b0=d0&8191,l0=d0>>>13;g.negative=j.negative^k.negative,g.length=19,y=Math.imul(c,W0),w=Math.imul(c,E0),w=w+Math.imul(h,W0)|0,p=Math.imul(h,E0);var o0=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(o0>>>26)|0,o0&=67108863,y=Math.imul(b,W0),w=Math.imul(b,E0),w=w+Math.imul(l,W0)|0,p=Math.imul(l,E0),y=y+Math.imul(c,D0)|0,w=w+Math.imul(c,C0)|0,w=w+Math.imul(h,D0)|0,p=p+Math.imul(h,C0)|0;var u0=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(u0>>>26)|0,u0&=67108863,y=Math.imul(u,W0),w=Math.imul(u,E0),w=w+Math.imul(n,W0)|0,p=Math.imul(n,E0),y=y+Math.imul(b,D0)|0,w=w+Math.imul(b,C0)|0,w=w+Math.imul(l,D0)|0,p=p+Math.imul(l,C0)|0,y=y+Math.imul(c,R0)|0,w=w+Math.imul(c,P0)|0,w=w+Math.imul(h,R0)|0,p=p+Math.imul(h,P0)|0;var n0=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(n0>>>26)|0,n0&=67108863,y=Math.imul(t,W0),w=Math.imul(t,E0),w=w+Math.imul(m,W0)|0,p=Math.imul(m,E0),y=y+Math.imul(u,D0)|0,w=w+Math.imul(u,C0)|0,w=w+Math.imul(n,D0)|0,p=p+Math.imul(n,C0)|0,y=y+Math.imul(b,R0)|0,w=w+Math.imul(b,P0)|0,w=w+Math.imul(l,R0)|0,p=p+Math.imul(l,P0)|0,y=y+Math.imul(c,M0)|0,w=w+Math.imul(c,S0)|0,w=w+Math.imul(h,M0)|0,p=p+Math.imul(h,S0)|0;var s0=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(s0>>>26)|0,s0&=67108863,y=Math.imul(e,W0),w=Math.imul(e,E0),w=w+Math.imul(r,W0)|0,p=Math.imul(r,E0),y=y+Math.imul(t,D0)|0,w=w+Math.imul(t,C0)|0,w=w+Math.imul(m,D0)|0,p=p+Math.imul(m,C0)|0,y=y+Math.imul(u,R0)|0,w=w+Math.imul(u,P0)|0,w=w+Math.imul(n,R0)|0,p=p+Math.imul(n,P0)|0,y=y+Math.imul(b,M0)|0,w=w+Math.imul(b,S0)|0,w=w+Math.imul(l,M0)|0,p=p+Math.imul(l,S0)|0,y=y+Math.imul(c,q0)|0,w=w+Math.imul(c,j0)|0,w=w+Math.imul(h,q0)|0,p=p+Math.imul(h,j0)|0;var t0=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(t0>>>26)|0,t0&=67108863,y=Math.imul($0,W0),w=Math.imul($0,E0),w=w+Math.imul(Q0,W0)|0,p=Math.imul(Q0,E0),y=y+Math.imul(e,D0)|0,w=w+Math.imul(e,C0)|0,w=w+Math.imul(r,D0)|0,p=p+Math.imul(r,C0)|0,y=y+Math.imul(t,R0)|0,w=w+Math.imul(t,P0)|0,w=w+Math.imul(m,R0)|0,p=p+Math.imul(m,P0)|0,y=y+Math.imul(u,M0)|0,w=w+Math.imul(u,S0)|0,w=w+Math.imul(n,M0)|0,p=p+Math.imul(n,S0)|0,y=y+Math.imul(b,q0)|0,w=w+Math.imul(b,j0)|0,w=w+Math.imul(l,q0)|0,p=p+Math.imul(l,j0)|0,y=y+Math.imul(c,g0)|0,w=w+Math.imul(c,_0)|0,w=w+Math.imul(h,g0)|0,p=p+Math.imul(h,_0)|0;var m0=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(m0>>>26)|0,m0&=67108863,y=Math.imul(Z0,W0),w=Math.imul(Z0,E0),w=w+Math.imul(G0,W0)|0,p=Math.imul(G0,E0),y=y+Math.imul($0,D0)|0,w=w+Math.imul($0,C0)|0,w=w+Math.imul(Q0,D0)|0,p=p+Math.imul(Q0,C0)|0,y=y+Math.imul(e,R0)|0,w=w+Math.imul(e,P0)|0,w=w+Math.imul(r,R0)|0,p=p+Math.imul(r,P0)|0,y=y+Math.imul(t,M0)|0,w=w+Math.imul(t,S0)|0,w=w+Math.imul(m,M0)|0,p=p+Math.imul(m,S0)|0,y=y+Math.imul(u,q0)|0,w=w+Math.imul(u,j0)|0,w=w+Math.imul(n,q0)|0,p=p+Math.imul(n,j0)|0,y=y+Math.imul(b,g0)|0,w=w+Math.imul(b,_0)|0,w=w+Math.imul(l,g0)|0,p=p+Math.imul(l,_0)|0,y=y+Math.imul(c,x0)|0,w=w+Math.imul(c,B0)|0,w=w+Math.imul(h,x0)|0,p=p+Math.imul(h,B0)|0;var a0=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(a0>>>26)|0,a0&=67108863,y=Math.imul(U0,W0),w=Math.imul(U0,E0),w=w+Math.imul(X0,W0)|0,p=Math.imul(X0,E0),y=y+Math.imul(Z0,D0)|0,w=w+Math.imul(Z0,C0)|0,w=w+Math.imul(G0,D0)|0,p=p+Math.imul(G0,C0)|0,y=y+Math.imul($0,R0)|0,w=w+Math.imul($0,P0)|0,w=w+Math.imul(Q0,R0)|0,p=p+Math.imul(Q0,P0)|0,y=y+Math.imul(e,M0)|0,w=w+Math.imul(e,S0)|0,w=w+Math.imul(r,M0)|0,p=p+Math.imul(r,S0)|0,y=y+Math.imul(t,q0)|0,w=w+Math.imul(t,j0)|0,w=w+Math.imul(m,q0)|0,p=p+Math.imul(m,j0)|0,y=y+Math.imul(u,g0)|0,w=w+Math.imul(u,_0)|0,w=w+Math.imul(n,g0)|0,p=p+Math.imul(n,_0)|0,y=y+Math.imul(b,x0)|0,w=w+Math.imul(b,B0)|0,w=w+Math.imul(l,x0)|0,p=p+Math.imul(l,B0)|0,y=y+Math.imul(c,w0)|0,w=w+Math.imul(c,p0)|0,w=w+Math.imul(h,w0)|0,p=p+Math.imul(h,p0)|0;var e0=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(e0>>>26)|0,e0&=67108863,y=Math.imul(I0,W0),w=Math.imul(I0,E0),w=w+Math.imul(O0,W0)|0,p=Math.imul(O0,E0),y=y+Math.imul(U0,D0)|0,w=w+Math.imul(U0,C0)|0,w=w+Math.imul(X0,D0)|0,p=p+Math.imul(X0,C0)|0,y=y+Math.imul(Z0,R0)|0,w=w+Math.imul(Z0,P0)|0,w=w+Math.imul(G0,R0)|0,p=p+Math.imul(G0,P0)|0,y=y+Math.imul($0,M0)|0,w=w+Math.imul($0,S0)|0,w=w+Math.imul(Q0,M0)|0,p=p+Math.imul(Q0,S0)|0,y=y+Math.imul(e,q0)|0,w=w+Math.imul(e,j0)|0,w=w+Math.imul(r,q0)|0,p=p+Math.imul(r,j0)|0,y=y+Math.imul(t,g0)|0,w=w+Math.imul(t,_0)|0,w=w+Math.imul(m,g0)|0,p=p+Math.imul(m,_0)|0,y=y+Math.imul(u,x0)|0,w=w+Math.imul(u,B0)|0,w=w+Math.imul(n,x0)|0,p=p+Math.imul(n,B0)|0,y=y+Math.imul(b,w0)|0,w=w+Math.imul(b,p0)|0,w=w+Math.imul(l,w0)|0,p=p+Math.imul(l,p0)|0,y=y+Math.imul(c,c0)|0,w=w+Math.imul(c,h0)|0,w=w+Math.imul(h,c0)|0,p=p+Math.imul(h,h0)|0;var r0=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(r0>>>26)|0,r0&=67108863,y=Math.imul(F0,W0),w=Math.imul(F0,E0),w=w+Math.imul(A0,W0)|0,p=Math.imul(A0,E0),y=y+Math.imul(I0,D0)|0,w=w+Math.imul(I0,C0)|0,w=w+Math.imul(O0,D0)|0,p=p+Math.imul(O0,C0)|0,y=y+Math.imul(U0,R0)|0,w=w+Math.imul(U0,P0)|0,w=w+Math.imul(X0,R0)|0,p=p+Math.imul(X0,P0)|0,y=y+Math.imul(Z0,M0)|0,w=w+Math.imul(Z0,S0)|0,w=w+Math.imul(G0,M0)|0,p=p+Math.imul(G0,S0)|0,y=y+Math.imul($0,q0)|0,w=w+Math.imul($0,j0)|0,w=w+Math.imul(Q0,q0)|0,p=p+Math.imul(Q0,j0)|0,y=y+Math.imul(e,g0)|0,w=w+Math.imul(e,_0)|0,w=w+Math.imul(r,g0)|0,p=p+Math.imul(r,_0)|0,y=y+Math.imul(t,x0)|0,w=w+Math.imul(t,B0)|0,w=w+Math.imul(m,x0)|0,p=p+Math.imul(m,B0)|0,y=y+Math.imul(u,w0)|0,w=w+Math.imul(u,p0)|0,w=w+Math.imul(n,w0)|0,p=p+Math.imul(n,p0)|0,y=y+Math.imul(b,c0)|0,w=w+Math.imul(b,h0)|0,w=w+Math.imul(l,c0)|0,p=p+Math.imul(l,h0)|0,y=y+Math.imul(c,b0)|0,w=w+Math.imul(c,l0)|0,w=w+Math.imul(h,b0)|0,p=p+Math.imul(h,l0)|0;var i0=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(i0>>>26)|0,i0&=67108863,y=Math.imul(F0,D0),w=Math.imul(F0,C0),w=w+Math.imul(A0,D0)|0,p=Math.imul(A0,C0),y=y+Math.imul(I0,R0)|0,w=w+Math.imul(I0,P0)|0,w=w+Math.imul(O0,R0)|0,p=p+Math.imul(O0,P0)|0,y=y+Math.imul(U0,M0)|0,w=w+Math.imul(U0,S0)|0,w=w+Math.imul(X0,M0)|0,p=p+Math.imul(X0,S0)|0,y=y+Math.imul(Z0,q0)|0,w=w+Math.imul(Z0,j0)|0,w=w+Math.imul(G0,q0)|0,p=p+Math.imul(G0,j0)|0,y=y+Math.imul($0,g0)|0,w=w+Math.imul($0,_0)|0,w=w+Math.imul(Q0,g0)|0,p=p+Math.imul(Q0,_0)|0,y=y+Math.imul(e,x0)|0,w=w+Math.imul(e,B0)|0,w=w+Math.imul(r,x0)|0,p=p+Math.imul(r,B0)|0,y=y+Math.imul(t,w0)|0,w=w+Math.imul(t,p0)|0,w=w+Math.imul(m,w0)|0,p=p+Math.imul(m,p0)|0,y=y+Math.imul(u,c0)|0,w=w+Math.imul(u,h0)|0,w=w+Math.imul(n,c0)|0,p=p+Math.imul(n,h0)|0,y=y+Math.imul(b,b0)|0,w=w+Math.imul(b,l0)|0,w=w+Math.imul(l,b0)|0,p=p+Math.imul(l,l0)|0;var $$=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+($$>>>26)|0,$$&=67108863,y=Math.imul(F0,R0),w=Math.imul(F0,P0),w=w+Math.imul(A0,R0)|0,p=Math.imul(A0,P0),y=y+Math.imul(I0,M0)|0,w=w+Math.imul(I0,S0)|0,w=w+Math.imul(O0,M0)|0,p=p+Math.imul(O0,S0)|0,y=y+Math.imul(U0,q0)|0,w=w+Math.imul(U0,j0)|0,w=w+Math.imul(X0,q0)|0,p=p+Math.imul(X0,j0)|0,y=y+Math.imul(Z0,g0)|0,w=w+Math.imul(Z0,_0)|0,w=w+Math.imul(G0,g0)|0,p=p+Math.imul(G0,_0)|0,y=y+Math.imul($0,x0)|0,w=w+Math.imul($0,B0)|0,w=w+Math.imul(Q0,x0)|0,p=p+Math.imul(Q0,B0)|0,y=y+Math.imul(e,w0)|0,w=w+Math.imul(e,p0)|0,w=w+Math.imul(r,w0)|0,p=p+Math.imul(r,p0)|0,y=y+Math.imul(t,c0)|0,w=w+Math.imul(t,h0)|0,w=w+Math.imul(m,c0)|0,p=p+Math.imul(m,h0)|0,y=y+Math.imul(u,b0)|0,w=w+Math.imul(u,l0)|0,w=w+Math.imul(n,b0)|0,p=p+Math.imul(n,l0)|0;var Q$=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(Q$>>>26)|0,Q$&=67108863,y=Math.imul(F0,M0),w=Math.imul(F0,S0),w=w+Math.imul(A0,M0)|0,p=Math.imul(A0,S0),y=y+Math.imul(I0,q0)|0,w=w+Math.imul(I0,j0)|0,w=w+Math.imul(O0,q0)|0,p=p+Math.imul(O0,j0)|0,y=y+Math.imul(U0,g0)|0,w=w+Math.imul(U0,_0)|0,w=w+Math.imul(X0,g0)|0,p=p+Math.imul(X0,_0)|0,y=y+Math.imul(Z0,x0)|0,w=w+Math.imul(Z0,B0)|0,w=w+Math.imul(G0,x0)|0,p=p+Math.imul(G0,B0)|0,y=y+Math.imul($0,w0)|0,w=w+Math.imul($0,p0)|0,w=w+Math.imul(Q0,w0)|0,p=p+Math.imul(Q0,p0)|0,y=y+Math.imul(e,c0)|0,w=w+Math.imul(e,h0)|0,w=w+Math.imul(r,c0)|0,p=p+Math.imul(r,h0)|0,y=y+Math.imul(t,b0)|0,w=w+Math.imul(t,l0)|0,w=w+Math.imul(m,b0)|0,p=p+Math.imul(m,l0)|0;var Y$=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(Y$>>>26)|0,Y$&=67108863,y=Math.imul(F0,q0),w=Math.imul(F0,j0),w=w+Math.imul(A0,q0)|0,p=Math.imul(A0,j0),y=y+Math.imul(I0,g0)|0,w=w+Math.imul(I0,_0)|0,w=w+Math.imul(O0,g0)|0,p=p+Math.imul(O0,_0)|0,y=y+Math.imul(U0,x0)|0,w=w+Math.imul(U0,B0)|0,w=w+Math.imul(X0,x0)|0,p=p+Math.imul(X0,B0)|0,y=y+Math.imul(Z0,w0)|0,w=w+Math.imul(Z0,p0)|0,w=w+Math.imul(G0,w0)|0,p=p+Math.imul(G0,p0)|0,y=y+Math.imul($0,c0)|0,w=w+Math.imul($0,h0)|0,w=w+Math.imul(Q0,c0)|0,p=p+Math.imul(Q0,h0)|0,y=y+Math.imul(e,b0)|0,w=w+Math.imul(e,l0)|0,w=w+Math.imul(r,b0)|0,p=p+Math.imul(r,l0)|0;var Z$=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(Z$>>>26)|0,Z$&=67108863,y=Math.imul(F0,g0),w=Math.imul(F0,_0),w=w+Math.imul(A0,g0)|0,p=Math.imul(A0,_0),y=y+Math.imul(I0,x0)|0,w=w+Math.imul(I0,B0)|0,w=w+Math.imul(O0,x0)|0,p=p+Math.imul(O0,B0)|0,y=y+Math.imul(U0,w0)|0,w=w+Math.imul(U0,p0)|0,w=w+Math.imul(X0,w0)|0,p=p+Math.imul(X0,p0)|0,y=y+Math.imul(Z0,c0)|0,w=w+Math.imul(Z0,h0)|0,w=w+Math.imul(G0,c0)|0,p=p+Math.imul(G0,h0)|0,y=y+Math.imul($0,b0)|0,w=w+Math.imul($0,l0)|0,w=w+Math.imul(Q0,b0)|0,p=p+Math.imul(Q0,l0)|0;var G$=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(G$>>>26)|0,G$&=67108863,y=Math.imul(F0,x0),w=Math.imul(F0,B0),w=w+Math.imul(A0,x0)|0,p=Math.imul(A0,B0),y=y+Math.imul(I0,w0)|0,w=w+Math.imul(I0,p0)|0,w=w+Math.imul(O0,w0)|0,p=p+Math.imul(O0,p0)|0,y=y+Math.imul(U0,c0)|0,w=w+Math.imul(U0,h0)|0,w=w+Math.imul(X0,c0)|0,p=p+Math.imul(X0,h0)|0,y=y+Math.imul(Z0,b0)|0,w=w+Math.imul(Z0,l0)|0,w=w+Math.imul(G0,b0)|0,p=p+Math.imul(G0,l0)|0;var V$=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(V$>>>26)|0,V$&=67108863,y=Math.imul(F0,w0),w=Math.imul(F0,p0),w=w+Math.imul(A0,w0)|0,p=Math.imul(A0,p0),y=y+Math.imul(I0,c0)|0,w=w+Math.imul(I0,h0)|0,w=w+Math.imul(O0,c0)|0,p=p+Math.imul(O0,h0)|0,y=y+Math.imul(U0,b0)|0,w=w+Math.imul(U0,l0)|0,w=w+Math.imul(X0,b0)|0,p=p+Math.imul(X0,l0)|0;var U$=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(U$>>>26)|0,U$&=67108863,y=Math.imul(F0,c0),w=Math.imul(F0,h0),w=w+Math.imul(A0,c0)|0,p=Math.imul(A0,h0),y=y+Math.imul(I0,b0)|0,w=w+Math.imul(I0,l0)|0,w=w+Math.imul(O0,b0)|0,p=p+Math.imul(O0,l0)|0;var X$=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(X$>>>26)|0,X$&=67108863,y=Math.imul(F0,b0),w=Math.imul(F0,l0),w=w+Math.imul(A0,b0)|0,p=Math.imul(A0,l0);var K$=(B+y|0)+((w&8191)<<13)|0;return B=(p+(w>>>13)|0)+(K$>>>26)|0,K$&=67108863,x[0]=o0,x[1]=u0,x[2]=n0,x[3]=s0,x[4]=t0,x[5]=m0,x[6]=a0,x[7]=e0,x[8]=r0,x[9]=i0,x[10]=$$,x[11]=Q$,x[12]=Y$,x[13]=Z$,x[14]=G$,x[15]=V$,x[16]=U$,x[17]=X$,x[18]=K$,B!==0&&(x[19]=B,g.length++),g};Math.imul||(E=W);function T(j,k,g){g.negative=k.negative^j.negative,g.length=j.length+k.length;for(var _=0,N=0,x=0;x<g.length-1;x++){var B=N;N=0;for(var y=_&67108863,w=Math.min(x,k.length-1),p=Math.max(0,x-j.length+1);p<=w;p++){var f=x-p,c=j.words[f]|0,h=k.words[p]|0,d=c*h,b=d&67108863;B=B+(d/67108864|0)|0,b=b+y|0,y=b&67108863,B=B+(b>>>26)|0,N+=B>>>26,B&=67108863}g.words[x]=y,_=B,B=N}return _!==0?g.words[x]=_:g.length--,g.strip()}function D(j,k,g){var _=new C;return _.mulp(j,k,g)}U.prototype.mulTo=function(j,k){var g,_=this.length+j.length;return this.length===10&&j.length===10?g=E(this,j,k):_<63?g=W(this,j,k):_<1024?g=T(this,j,k):g=D(this,j,k),g};function C(j,k){this.x=j,this.y=k}C.prototype.makeRBT=function(j){for(var k=new Array(j),g=U.prototype._countBits(j)-1,_=0;_<j;_++)k[_]=this.revBin(_,g,j);return k},C.prototype.revBin=function(j,k,g){if(j===0||j===g-1)return j;for(var _=0,N=0;N<k;N++)_|=(j&1)<<k-N-1,j>>=1;return _},C.prototype.permute=function(j,k,g,_,N,x){for(var B=0;B<x;B++)_[B]=k[j[B]],N[B]=g[j[B]]},C.prototype.transform=function(j,k,g,_,N,x){this.permute(x,j,k,g,_,N);for(var B=1;B<N;B<<=1)for(var y=B<<1,w=Math.cos(2*Math.PI/y),p=Math.sin(2*Math.PI/y),f=0;f<N;f+=y)for(var c=w,h=p,d=0;d<B;d++){var b=g[f+d],l=_[f+d],o=g[f+d+B],u=_[f+d+B],n=c*o-h*u;u=c*u+h*o,o=n,g[f+d]=b+o,_[f+d]=l+u,g[f+d+B]=b-o,_[f+d+B]=l-u,d!==y&&(n=w*c-p*h,h=w*h+p*c,c=n)}},C.prototype.guessLen13b=function(j,k){var g=Math.max(k,j)|1,_=g&1,N=0;for(g=g/2|0;g;g=g>>>1)N++;return 1<<N+1+_},C.prototype.conjugate=function(j,k,g){if(!(g<=1))for(var _=0;_<g/2;_++){var N=j[_];j[_]=j[g-_-1],j[g-_-1]=N,N=k[_],k[_]=-k[g-_-1],k[g-_-1]=-N}},C.prototype.normalize13b=function(j,k){for(var g=0,_=0;_<k/2;_++){var N=Math.round(j[2*_+1]/k)*8192+Math.round(j[2*_]/k)+g;j[_]=N&67108863,N<67108864?g=0:g=N/67108864|0}return j},C.prototype.convert13b=function(j,k,g,_){for(var N=0,x=0;x<k;x++)N=N+(j[x]|0),g[2*x]=N&8191,N=N>>>13,g[2*x+1]=N&8191,N=N>>>13;for(x=2*k;x<_;++x)g[x]=0;G(N===0),G((N&-8192)===0)},C.prototype.stub=function(j){for(var k=new Array(j),g=0;g<j;g++)k[g]=0;return k},C.prototype.mulp=function(j,k,g){var _=2*this.guessLen13b(j.length,k.length),N=this.makeRBT(_),x=this.stub(_),B=new Array(_),y=new Array(_),w=new Array(_),p=new Array(_),f=new Array(_),c=new Array(_),h=g.words;h.length=_,this.convert13b(j.words,j.length,B,_),this.convert13b(k.words,k.length,p,_),this.transform(B,x,y,w,_,N),this.transform(p,x,f,c,_,N);for(var d=0;d<_;d++){var b=y[d]*f[d]-w[d]*c[d];w[d]=y[d]*c[d]+w[d]*f[d],y[d]=b}return this.conjugate(y,w,_),this.transform(y,w,h,x,_,N),this.conjugate(h,x,_),this.normalize13b(h,_),g.negative=j.negative^k.negative,g.length=j.length+k.length,g.strip()},U.prototype.mul=function(j){var k=new U(null);return k.words=new Array(this.length+j.length),this.mulTo(j,k)},U.prototype.mulf=function(j){var k=new U(null);return k.words=new Array(this.length+j.length),D(this,j,k)},U.prototype.imul=function(j){return this.clone().mulTo(j,this)},U.prototype.imuln=function(j){G(typeof j=="number"),G(j<67108864);for(var k=0,g=0;g<this.length;g++){var _=(this.words[g]|0)*j,N=(_&67108863)+(k&67108863);k>>=26,k+=_/67108864|0,k+=N>>>26,this.words[g]=N&67108863}return k!==0&&(this.words[g]=k,this.length++),this},U.prototype.muln=function(j){return this.clone().imuln(j)},U.prototype.sqr=function(){return this.mul(this)},U.prototype.isqr=function(){return this.imul(this.clone())},U.prototype.pow=function(j){var k=H(j);if(k.length===0)return new U(1);for(var g=this,_=0;_<k.length&&k[_]===0;_++,g=g.sqr());if(++_<k.length)for(var N=g.sqr();_<k.length;_++,N=N.sqr())k[_]!==0&&(g=g.mul(N));return g},U.prototype.iushln=function(j){G(typeof j=="number"&&j>=0);var k=j%26,g=(j-k)/26,_=67108863>>>26-k<<26-k,N;if(k!==0){var x=0;for(N=0;N<this.length;N++){var B=this.words[N]&_,y=(this.words[N]|0)-B<<k;this.words[N]=y|x,x=B>>>26-k}x&&(this.words[N]=x,this.length++)}if(g!==0){for(N=this.length-1;N>=0;N--)this.words[N+g]=this.words[N];for(N=0;N<g;N++)this.words[N]=0;this.length+=g}return this.strip()},U.prototype.ishln=function(j){return G(this.negative===0),this.iushln(j)},U.prototype.iushrn=function(j,k,g){G(typeof j=="number"&&j>=0);var _;k?_=(k-k%26)/26:_=0;var N=j%26,x=Math.min((j-N)/26,this.length),B=67108863^67108863>>>N<<N,y=g;if(_-=x,_=Math.max(0,_),y){for(var w=0;w<x;w++)y.words[w]=this.words[w];y.length=x}if(x!==0)if(this.length>x)for(this.length-=x,w=0;w<this.length;w++)this.words[w]=this.words[w+x];else this.words[0]=0,this.length=1;var p=0;for(w=this.length-1;w>=0&&(p!==0||w>=_);w--){var f=this.words[w]|0;this.words[w]=p<<26-N|f>>>N,p=f&B}return y&&p!==0&&(y.words[y.length++]=p),this.length===0&&(this.words[0]=0,this.length=1),this.strip()},U.prototype.ishrn=function(j,k,g){return G(this.negative===0),this.iushrn(j,k,g)},U.prototype.shln=function(j){return this.clone().ishln(j)},U.prototype.ushln=function(j){return this.clone().iushln(j)},U.prototype.shrn=function(j){return this.clone().ishrn(j)},U.prototype.ushrn=function(j){return this.clone().iushrn(j)},U.prototype.testn=function(j){G(typeof j=="number"&&j>=0);var k=j%26,g=(j-k)/26,_=1<<k;if(this.length<=g)return!1;var N=this.words[g];return!!(N&_)},U.prototype.imaskn=function(j){G(typeof j=="number"&&j>=0);var k=j%26,g=(j-k)/26;if(G(this.negative===0,"imaskn works only with positive numbers"),this.length<=g)return this;if(k!==0&&g++,this.length=Math.min(g,this.length),k!==0){var _=67108863^67108863>>>k<<k;this.words[this.length-1]&=_}return this.strip()},U.prototype.maskn=function(j){return this.clone().imaskn(j)},U.prototype.iaddn=function(j){return G(typeof j=="number"),G(j<67108864),j<0?this.isubn(-j):this.negative!==0?this.length===1&&(this.words[0]|0)<j?(this.words[0]=j-(this.words[0]|0),this.negative=0,this):(this.negative=0,this.isubn(j),this.negative=1,this):this._iaddn(j)},U.prototype._iaddn=function(j){this.words[0]+=j;for(var k=0;k<this.length&&this.words[k]>=67108864;k++)this.words[k]-=67108864,k===this.length-1?this.words[k+1]=1:this.words[k+1]++;return this.length=Math.max(this.length,k+1),this},U.prototype.isubn=function(j){if(G(typeof j=="number"),G(j<67108864),j<0)return this.iaddn(-j);if(this.negative!==0)return this.negative=0,this.iaddn(j),this.negative=1,this;if(this.words[0]-=j,this.length===1&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var k=0;k<this.length&&this.words[k]<0;k++)this.words[k]+=67108864,this.words[k+1]-=1;return this.strip()},U.prototype.addn=function(j){return this.clone().iaddn(j)},U.prototype.subn=function(j){return this.clone().isubn(j)},U.prototype.iabs=function(){return this.negative=0,this},U.prototype.abs=function(){return this.clone().iabs()},U.prototype._ishlnsubmul=function(j,k,g){var _=j.length+g,N;this._expand(_);var x,B=0;for(N=0;N<j.length;N++){x=(this.words[N+g]|0)+B;var y=(j.words[N]|0)*k;x-=y&67108863,B=(x>>26)-(y/67108864|0),this.words[N+g]=x&67108863}for(;N<this.length-g;N++)x=(this.words[N+g]|0)+B,B=x>>26,this.words[N+g]=x&67108863;if(B===0)return this.strip();for(G(B===-1),B=0,N=0;N<this.length;N++)x=-(this.words[N]|0)+B,B=x>>26,this.words[N]=x&67108863;return this.negative=1,this.strip()},U.prototype._wordDiv=function(j,k){var g=this.length-j.length,_=this.clone(),N=j,x=N.words[N.length-1]|0,B=this._countBits(x);g=26-B,g!==0&&(N=N.ushln(g),_.iushln(g),x=N.words[N.length-1]|0);var y=_.length-N.length,w;if(k!=="mod"){w=new U(null),w.length=y+1,w.words=new Array(w.length);for(var p=0;p<w.length;p++)w.words[p]=0}var f=_.clone()._ishlnsubmul(N,1,y);f.negative===0&&(_=f,w&&(w.words[y]=1));for(var c=y-1;c>=0;c--){var h=(_.words[N.length+c]|0)*67108864+(_.words[N.length+c-1]|0);for(h=Math.min(h/x|0,67108863),_._ishlnsubmul(N,h,c);_.negative!==0;)h--,_.negative=0,_._ishlnsubmul(N,1,c),_.isZero()||(_.negative^=1);w&&(w.words[c]=h)}return w&&w.strip(),_.strip(),k!=="div"&&g!==0&&_.iushrn(g),{div:w||null,mod:_}},U.prototype.divmod=function(j,k,g){if(G(!j.isZero()),this.isZero())return{div:new U(0),mod:new U(0)};var _,N,x;return this.negative!==0&&j.negative===0?(x=this.neg().divmod(j,k),k!=="mod"&&(_=x.div.neg()),k!=="div"&&(N=x.mod.neg(),g&&N.negative!==0&&N.iadd(j)),{div:_,mod:N}):this.negative===0&&j.negative!==0?(x=this.divmod(j.neg(),k),k!=="mod"&&(_=x.div.neg()),{div:_,mod:x.mod}):(this.negative&j.negative)!==0?(x=this.neg().divmod(j.neg(),k),k!=="div"&&(N=x.mod.neg(),g&&N.negative!==0&&N.isub(j)),{div:x.div,mod:N}):j.length>this.length||this.cmp(j)<0?{div:new U(0),mod:this}:j.length===1?k==="div"?{div:this.divn(j.words[0]),mod:null}:k==="mod"?{div:null,mod:new U(this.modn(j.words[0]))}:{div:this.divn(j.words[0]),mod:new U(this.modn(j.words[0]))}:this._wordDiv(j,k)},U.prototype.div=function(j){return this.divmod(j,"div",!1).div},U.prototype.mod=function(j){return this.divmod(j,"mod",!1).mod},U.prototype.umod=function(j){return this.divmod(j,"mod",!0).mod},U.prototype.divRound=function(j){var k=this.divmod(j);if(k.mod.isZero())return k.div;var g=k.div.negative!==0?k.mod.isub(j):k.mod,_=j.ushrn(1),N=j.andln(1),x=g.cmp(_);return x<0||N===1&&x===0?k.div:k.div.negative!==0?k.div.isubn(1):k.div.iaddn(1)},U.prototype.modn=function(j){G(j<=67108863);for(var k=(1<<26)%j,g=0,_=this.length-1;_>=0;_--)g=(k*g+(this.words[_]|0))%j;return g},U.prototype.idivn=function(j){G(j<=67108863);for(var k=0,g=this.length-1;g>=0;g--){var _=(this.words[g]|0)+k*67108864;this.words[g]=_/j|0,k=_%j}return this.strip()},U.prototype.divn=function(j){return this.clone().idivn(j)},U.prototype.egcd=function(j){G(j.negative===0),G(!j.isZero());var k=this,g=j.clone();k.negative!==0?k=k.umod(j):k=k.clone();for(var _=new U(1),N=new U(0),x=new U(0),B=new U(1),y=0;k.isEven()&&g.isEven();)k.iushrn(1),g.iushrn(1),++y;for(var w=g.clone(),p=k.clone();!k.isZero();){for(var f=0,c=1;(k.words[0]&c)===0&&f<26;++f,c<<=1);if(f>0)for(k.iushrn(f);f-- >0;)(_.isOdd()||N.isOdd())&&(_.iadd(w),N.isub(p)),_.iushrn(1),N.iushrn(1);for(var h=0,d=1;(g.words[0]&d)===0&&h<26;++h,d<<=1);if(h>0)for(g.iushrn(h);h-- >0;)(x.isOdd()||B.isOdd())&&(x.iadd(w),B.isub(p)),x.iushrn(1),B.iushrn(1);k.cmp(g)>=0?(k.isub(g),_.isub(x),N.isub(B)):(g.isub(k),x.isub(_),B.isub(N))}return{a:x,b:B,gcd:g.iushln(y)}},U.prototype._invmp=function(j){G(j.negative===0),G(!j.isZero());var k=this,g=j.clone();k.negative!==0?k=k.umod(j):k=k.clone();for(var _=new U(1),N=new U(0),x=g.clone();k.cmpn(1)>0&&g.cmpn(1)>0;){for(var B=0,y=1;(k.words[0]&y)===0&&B<26;++B,y<<=1);if(B>0)for(k.iushrn(B);B-- >0;)_.isOdd()&&_.iadd(x),_.iushrn(1);for(var w=0,p=1;(g.words[0]&p)===0&&w<26;++w,p<<=1);if(w>0)for(g.iushrn(w);w-- >0;)N.isOdd()&&N.iadd(x),N.iushrn(1);k.cmp(g)>=0?(k.isub(g),_.isub(N)):(g.isub(k),N.isub(_))}var f;return k.cmpn(1)===0?f=_:f=N,f.cmpn(0)<0&&f.iadd(j),f},U.prototype.gcd=function(j){if(this.isZero())return j.abs();if(j.isZero())return this.abs();var k=this.clone(),g=j.clone();k.negative=0,g.negative=0;for(var _=0;k.isEven()&&g.isEven();_++)k.iushrn(1),g.iushrn(1);do{for(;k.isEven();)k.iushrn(1);for(;g.isEven();)g.iushrn(1);var N=k.cmp(g);if(N<0){var x=k;k=g,g=x}else if(N===0||g.cmpn(1)===0)break;k.isub(g)}while(!0);return g.iushln(_)},U.prototype.invm=function(j){return this.egcd(j).a.umod(j)},U.prototype.isEven=function(){return(this.words[0]&1)===0},U.prototype.isOdd=function(){return(this.words[0]&1)===1},U.prototype.andln=function(j){return this.words[0]&j},U.prototype.bincn=function(j){G(typeof j=="number");var k=j%26,g=(j-k)/26,_=1<<k;if(this.length<=g)return this._expand(g+1),this.words[g]|=_,this;for(var N=_,x=g;N!==0&&x<this.length;x++){var B=this.words[x]|0;B+=N,N=B>>>26,B&=67108863,this.words[x]=B}return N!==0&&(this.words[x]=N,this.length++),this},U.prototype.isZero=function(){return this.length===1&&this.words[0]===0},U.prototype.cmpn=function(j){var k=j<0;if(this.negative!==0&&!k)return-1;if(this.negative===0&&k)return 1;this.strip();var g;if(this.length>1)g=1;else{k&&(j=-j),G(j<=67108863,"Number is too big");var _=this.words[0]|0;g=_===j?0:_<j?-1:1}return this.negative!==0?-g|0:g},U.prototype.cmp=function(j){if(this.negative!==0&&j.negative===0)return-1;if(this.negative===0&&j.negative!==0)return 1;var k=this.ucmp(j);return this.negative!==0?-k|0:k},U.prototype.ucmp=function(j){if(this.length>j.length)return 1;if(this.length<j.length)return-1;for(var k=0,g=this.length-1;g>=0;g--){var _=this.words[g]|0,N=j.words[g]|0;if(_!==N){_<N?k=-1:_>N&&(k=1);break}}return k},U.prototype.gtn=function(j){return this.cmpn(j)===1},U.prototype.gt=function(j){return this.cmp(j)===1},U.prototype.gten=function(j){return this.cmpn(j)>=0},U.prototype.gte=function(j){return this.cmp(j)>=0},U.prototype.ltn=function(j){return this.cmpn(j)===-1},U.prototype.lt=function(j){return this.cmp(j)===-1},U.prototype.lten=function(j){return this.cmpn(j)<=0},U.prototype.lte=function(j){return this.cmp(j)<=0},U.prototype.eqn=function(j){return this.cmpn(j)===0},U.prototype.eq=function(j){return this.cmp(j)===0},U.red=function(j){return new v(j)},U.prototype.toRed=function(j){return G(!this.red,"Already a number in reduction context"),G(this.negative===0,"red works only with positives"),j.convertTo(this)._forceRed(j)},U.prototype.fromRed=function(){return G(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},U.prototype._forceRed=function(j){return this.red=j,this},U.prototype.forceRed=function(j){return G(!this.red,"Already a number in reduction context"),this._forceRed(j)},U.prototype.redAdd=function(j){return G(this.red,"redAdd works only with red numbers"),this.red.add(this,j)},U.prototype.redIAdd=function(j){return G(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,j)},U.prototype.redSub=function(j){return G(this.red,"redSub works only with red numbers"),this.red.sub(this,j)},U.prototype.redISub=function(j){return G(this.red,"redISub works only with red numbers"),this.red.isub(this,j)},U.prototype.redShl=function(j){return G(this.red,"redShl works only with red numbers"),this.red.shl(this,j)},U.prototype.redMul=function(j){return G(this.red,"redMul works only with red numbers"),this.red._verify2(this,j),this.red.mul(this,j)},U.prototype.redIMul=function(j){return G(this.red,"redMul works only with red numbers"),this.red._verify2(this,j),this.red.imul(this,j)},U.prototype.redSqr=function(){return G(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},U.prototype.redISqr=function(){return G(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},U.prototype.redSqrt=function(){return G(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},U.prototype.redInvm=function(){return G(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},U.prototype.redNeg=function(){return G(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},U.prototype.redPow=function(j){return G(this.red&&!j.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,j)};var L={k256:null,p224:null,p192:null,p25519:null};function R(j,k){this.name=j,this.p=new U(k,16),this.n=this.p.bitLength(),this.k=new U(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}R.prototype._tmp=function(){var j=new U(null);return j.words=new Array(Math.ceil(this.n/13)),j},R.prototype.ireduce=function(j){var k=j,g;do this.split(k,this.tmp),k=this.imulK(k),k=k.iadd(this.tmp),g=k.bitLength();while(g>this.n);var _=g<this.n?-1:k.ucmp(this.p);return _===0?(k.words[0]=0,k.length=1):_>0?k.isub(this.p):k.strip!==void 0?k.strip():k._strip(),k},R.prototype.split=function(j,k){j.iushrn(this.n,0,k)},R.prototype.imulK=function(j){return j.imul(this.k)};function P(){R.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}V(P,R),P.prototype.split=function(j,k){for(var g=4194303,_=Math.min(j.length,9),N=0;N<_;N++)k.words[N]=j.words[N];if(k.length=_,j.length<=9){j.words[0]=0,j.length=1;return}var x=j.words[9];for(k.words[k.length++]=x&g,N=10;N<j.length;N++){var B=j.words[N]|0;j.words[N-10]=(B&g)<<4|x>>>22,x=B}x>>>=22,j.words[N-10]=x,x===0&&j.length>10?j.length-=10:j.length-=9},P.prototype.imulK=function(j){j.words[j.length]=0,j.words[j.length+1]=0,j.length+=2;for(var k=0,g=0;g<j.length;g++){var _=j.words[g]|0;k+=_*977,j.words[g]=k&67108863,k=_*64+(k/67108864|0)}return j.words[j.length-1]===0&&(j.length--,j.words[j.length-1]===0&&j.length--),j};function z(){R.call(this,"p224","ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001")}V(z,R);function M(){R.call(this,"p192","ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff")}V(M,R);function S(){R.call(this,"25519","7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed")}V(S,R),S.prototype.imulK=function(j){for(var k=0,g=0;g<j.length;g++){var _=(j.words[g]|0)*19+k,N=_&67108863;_>>>=26,j.words[g]=N,k=_}return k!==0&&(j.words[j.length++]=k),j},U._prime=function(j){if(L[j])return L[j];var k;if(j==="k256")k=new P;else if(j==="p224")k=new z;else if(j==="p192")k=new M;else if(j==="p25519")k=new S;else throw new Error("Unknown prime "+j);return L[j]=k,k};function v(j){if(typeof j=="string"){var k=U._prime(j);this.m=k.p,this.prime=k}else G(j.gtn(1),"modulus must be greater than 1"),this.m=j,this.prime=null}v.prototype._verify1=function(j){G(j.negative===0,"red works only with positives"),G(j.red,"red works only with red numbers")},v.prototype._verify2=function(j,k){G((j.negative|k.negative)===0,"red works only with positives"),G(j.red&&j.red===k.red,"red works only with red numbers")},v.prototype.imod=function(j){return this.prime?this.prime.ireduce(j)._forceRed(this):j.umod(this.m)._forceRed(this)},v.prototype.neg=function(j){return j.isZero()?j.clone():this.m.sub(j)._forceRed(this)},v.prototype.add=function(j,k){this._verify2(j,k);var g=j.add(k);return g.cmp(this.m)>=0&&g.isub(this.m),g._forceRed(this)},v.prototype.iadd=function(j,k){this._verify2(j,k);var g=j.iadd(k);return g.cmp(this.m)>=0&&g.isub(this.m),g},v.prototype.sub=function(j,k){this._verify2(j,k);var g=j.sub(k);return g.cmpn(0)<0&&g.iadd(this.m),g._forceRed(this)},v.prototype.isub=function(j,k){this._verify2(j,k);var g=j.isub(k);return g.cmpn(0)<0&&g.iadd(this.m),g},v.prototype.shl=function(j,k){return this._verify1(j),this.imod(j.ushln(k))},v.prototype.imul=function(j,k){return this._verify2(j,k),this.imod(j.imul(k))},v.prototype.mul=function(j,k){return this._verify2(j,k),this.imod(j.mul(k))},v.prototype.isqr=function(j){return this.imul(j,j.clone())},v.prototype.sqr=function(j){return this.mul(j,j)},v.prototype.sqrt=function(j){if(j.isZero())return j.clone();var k=this.m.andln(3);if(G(k%2===1),k===3){var g=this.m.add(new U(1)).iushrn(2);return this.pow(j,g)}for(var _=this.m.subn(1),N=0;!_.isZero()&&_.andln(1)===0;)N++,_.iushrn(1);G(!_.isZero());var x=new U(1).toRed(this),B=x.redNeg(),y=this.m.subn(1).iushrn(1),w=this.m.bitLength();for(w=new U(2*w*w).toRed(this);this.pow(w,y).cmp(B)!==0;)w.redIAdd(B);for(var p=this.pow(w,_),f=this.pow(j,_.addn(1).iushrn(1)),c=this.pow(j,_),h=N;c.cmp(x)!==0;){for(var d=c,b=0;d.cmp(x)!==0;b++)d=d.redSqr();G(b<h);var l=this.pow(p,new U(1).iushln(h-b-1));f=f.redMul(l),p=l.redSqr(),c=c.redMul(p),h=b}return f},v.prototype.invm=function(j){var k=j._invmp(this.m);return k.negative!==0?(k.negative=0,this.imod(k).redNeg()):this.imod(k)},v.prototype.pow=function(j,k){if(k.isZero())return new U(1).toRed(this);if(k.cmpn(1)===0)return j.clone();var g=4,_=new Array(1<<g);_[0]=new U(1).toRed(this),_[1]=j;for(var N=2;N<_.length;N++)_[N]=this.mul(_[N-1],j);var x=_[0],B=0,y=0,w=k.bitLength()%26;for(w===0&&(w=26),N=k.length-1;N>=0;N--){for(var p=k.words[N],f=w-1;f>=0;f--){var c=p>>f&1;if(x!==_[0]&&(x=this.sqr(x)),c===0&&B===0){y=0;continue}B<<=1,B|=c,y++,!(y!==g&&(N!==0||f!==0))&&(x=this.mul(x,_[B]),y=0,B=0)}w=26}return x},v.prototype.convertTo=function(j){var k=j.umod(this.m);return k===j?k.clone():k},v.prototype.convertFrom=function(j){var k=j.clone();return k.red=null,k},U.mont=function(j){return new q(j)};function q(j){v.call(this,j),this.shift=this.m.bitLength(),this.shift%26!==0&&(this.shift+=26-this.shift%26),this.r=new U(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)}V(q,v),q.prototype.convertTo=function(j){return this.imod(j.ushln(this.shift))},q.prototype.convertFrom=function(j){var k=this.imod(j.mul(this.rinv));return k.red=null,k},q.prototype.imul=function(j,k){if(j.isZero()||k.isZero())return j.words[0]=0,j.length=1,j;var g=j.imul(k),_=g.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),N=g.isub(_).iushrn(this.shift),x=N;return N.cmp(this.m)>=0?x=N.isub(this.m):N.cmpn(0)<0&&(x=N.iadd(this.m)),x._forceRed(this)},q.prototype.mul=function(j,k){if(j.isZero()||k.isZero())return new U(0)._forceRed(this);var g=j.mul(k),_=g.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),N=g.isub(_).iushrn(this.shift),x=N;return N.cmp(this.m)>=0?x=N.isub(this.m):N.cmpn(0)<0&&(x=N.iadd(this.m)),x._forceRed(this)},q.prototype.invm=function(j){var k=this.imod(j._invmp(this.m).mul(this.r2));return k._forceRed(this)}})(typeof Q>"u"||Q,$)}}),lY=q$({"node_modules/create-ecdh/browser.js"($,Q){var Y=TY(),Z=bY();Q.exports=function(X){return new V(X)};var G={secp256k1:{name:"secp256k1",byteLength:32},secp224r1:{name:"p224",byteLength:28},prime256v1:{name:"p256",byteLength:32},prime192v1:{name:"p192",byteLength:24},ed25519:{name:"ed25519",byteLength:32},secp384r1:{name:"p384",byteLength:48},secp521r1:{name:"p521",byteLength:66}};G.p224=G.secp224r1,G.p256=G.secp256r1=G.prime256v1,G.p192=G.secp192r1=G.prime192v1,G.p384=G.secp384r1,G.p521=G.secp521r1;function V(X){this.curveType=G[X],this.curveType||(this.curveType={name:X}),this.curve=new Y.ec(this.curveType.name),this.keys=void 0}V.prototype.generateKeys=function(X,K){return this.keys=this.curve.genKeyPair(),this.getPublicKey(X,K)},V.prototype.computeSecret=function(X,K,I){K=K||"utf8",F$.isBuffer(X)||(X=new F$(X,K));var O=this.curve.keyFromPublic(X).getPublic(),J=O.mul(this.keys.getPrivate()).getX();return U(J,I,this.curveType.byteLength)},V.prototype.getPublicKey=function(X,K){var I=this.keys.getPublic(K==="compressed",!0);return K==="hybrid"&&(I[I.length-1]%2?I[0]=7:I[0]=6),U(I,X)},V.prototype.getPrivateKey=function(X){return U(this.keys.getPrivate(),X)},V.prototype.setPublicKey=function(X,K){return K=K||"utf8",F$.isBuffer(X)||(X=new F$(X,K)),this.keys._importPublic(X),this},V.prototype.setPrivateKey=function(X,K){K=K||"utf8",F$.isBuffer(X)||(X=new F$(X,K));var I=new Z(X);return I=I.toString(16),this.keys=this.curve.genKeyPair(),this.keys._importPrivate(I),this};function U(X,K,I){Array.isArray(X)||(X=X.toArray());var O=new F$(X);if(I&&O.length<I){var J=new F$(I-O.length);J.fill(0),O=F$.concat([J,O])}return K?O.toString(K):O}}}),oY=q$({"node_modules/public-encrypt/mgf.js"($,Q){var Y=o$(),Z=k$().Buffer;Q.exports=function(V,U){for(var X=Z.alloc(0),K=0,I;X.length<U;)I=G(K++),X=Z.concat([X,Y("sha1").update(V).update(I).digest()]);return X.slice(0,U)};function G(V){var U=Z.allocUnsafe(4);return U.writeUInt32BE(V,0),U}}}),uY=q$({"node_modules/public-encrypt/xor.js"($,Q){Q.exports=function(Y,Z){for(var G=Y.length,V=-1;++V<G;)Y[V]^=Z[V];return Y}}}),nY=q$({"node_modules/public-encrypt/node_modules/bn.js/lib/bn.js"($,Q){(function(Y,Z){function G(j,k){if(!j)throw new Error(k||"Assertion failed")}function V(j,k){j.super_=k;var g=function(){};g.prototype=k.prototype,j.prototype=new g,j.prototype.constructor=j}function U(j,k,g){if(U.isBN(j))return j;this.negative=0,this.words=null,this.length=0,this.red=null,j!==null&&((k==="le"||k==="be")&&(g=k,k=10),this._init(j||0,k||10,g||"be"))}typeof Y=="object"?Y.exports=U:Z.BN=U,U.BN=U,U.wordSize=26;var X=globalThis.Buffer;U.isBN=function(j){return j instanceof U?!0:j!==null&&typeof j=="object"&&j.constructor.wordSize===U.wordSize&&Array.isArray(j.words)},U.max=function(j,k){return j.cmp(k)>0?j:k},U.min=function(j,k){return j.cmp(k)<0?j:k},U.prototype._init=function(j,k,g){if(typeof j=="number")return this._initNumber(j,k,g);if(typeof j=="object")return this._initArray(j,k,g);k==="hex"&&(k=16),G(k===(k|0)&&k>=2&&k<=36),j=j.toString().replace(/\s+/g,"");var _=0;j[0]==="-"&&(_++,this.negative=1),_<j.length&&(k===16?this._parseHex(j,_,g):(this._parseBase(j,k,_),g==="le"&&this._initArray(this.toArray(),k,g)))},U.prototype._initNumber=function(j,k,g){j<0&&(this.negative=1,j=-j),j<67108864?(this.words=[j&67108863],this.length=1):j<4503599627370496?(this.words=[j&67108863,j/67108864&67108863],this.length=2):(G(j<9007199254740992),this.words=[j&67108863,j/67108864&67108863,1],this.length=3),g==="le"&&this._initArray(this.toArray(),k,g)},U.prototype._initArray=function(j,k,g){if(G(typeof j.length=="number"),j.length<=0)return this.words=[0],this.length=1,this;this.length=Math.ceil(j.length/3),this.words=new Array(this.length);for(var _=0;_<this.length;_++)this.words[_]=0;var N,x,B=0;if(g==="be")for(_=j.length-1,N=0;_>=0;_-=3)x=j[_]|j[_-1]<<8|j[_-2]<<16,this.words[N]|=x<<B&67108863,this.words[N+1]=x>>>26-B&67108863,B+=24,B>=26&&(B-=26,N++);else if(g==="le")for(_=0,N=0;_<j.length;_+=3)x=j[_]|j[_+1]<<8|j[_+2]<<16,this.words[N]|=x<<B&67108863,this.words[N+1]=x>>>26-B&67108863,B+=24,B>=26&&(B-=26,N++);return this.strip()};function K(j,k){var g=j.charCodeAt(k);return g>=65&&g<=70?g-55:g>=97&&g<=102?g-87:g-48&15}function I(j,k,g){var _=K(j,g);return g-1>=k&&(_|=K(j,g-1)<<4),_}U.prototype._parseHex=function(j,k,g){this.length=Math.ceil((j.length-k)/6),this.words=new Array(this.length);for(var _=0;_<this.length;_++)this.words[_]=0;var N=0,x=0,B;if(g==="be")for(_=j.length-1;_>=k;_-=2)B=I(j,k,_)<<N,this.words[x]|=B&67108863,N>=18?(N-=18,x+=1,this.words[x]|=B>>>26):N+=8;else{var y=j.length-k;for(_=y%2===0?k+1:k;_<j.length;_+=2)B=I(j,k,_)<<N,this.words[x]|=B&67108863,N>=18?(N-=18,x+=1,this.words[x]|=B>>>26):N+=8}this.strip()};function O(j,k,g,_){for(var N=0,x=Math.min(j.length,g),B=k;B<x;B++){var y=j.charCodeAt(B)-48;N*=_,y>=49?N+=y-49+10:y>=17?N+=y-17+10:N+=y}return N}U.prototype._parseBase=function(j,k,g){this.words=[0],this.length=1;for(var _=0,N=1;N<=67108863;N*=k)_++;_--,N=N/k|0;for(var x=j.length-g,B=x%_,y=Math.min(x,x-B)+g,w=0,p=g;p<y;p+=_)w=O(j,p,p+_,k),this.imuln(N),this.words[0]+w<67108864?this.words[0]+=w:this._iaddn(w);if(B!==0){var f=1;for(w=O(j,p,j.length,k),p=0;p<B;p++)f*=k;this.imuln(f),this.words[0]+w<67108864?this.words[0]+=w:this._iaddn(w)}this.strip()},U.prototype.copy=function(j){j.words=new Array(this.length);for(var k=0;k<this.length;k++)j.words[k]=this.words[k];j.length=this.length,j.negative=this.negative,j.red=this.red},U.prototype.clone=function(){var j=new U(null);return this.copy(j),j},U.prototype._expand=function(j){for(;this.length<j;)this.words[this.length++]=0;return this},U.prototype.strip=function(){for(;this.length>1&&this.words[this.length-1]===0;)this.length--;return this._normSign()},U.prototype._normSign=function(){return this.length===1&&this.words[0]===0&&(this.negative=0),this},U.prototype.inspect=function(){return(this.red?"<BN-R: ":"<BN: ")+this.toString(16)+">"};var J=["","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"],F=[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],A=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64000000,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,24300000,28629151,33554432,39135393,45435424,52521875,60466176];U.prototype.toString=function(j,k){j=j||10,k=k|0||1;var g;if(j===16||j==="hex"){g="";for(var _=0,N=0,x=0;x<this.length;x++){var B=this.words[x],y=((B<<_|N)&16777215).toString(16);N=B>>>24-_&16777215,N!==0||x!==this.length-1?g=J[6-y.length]+y+g:g=y+g,_+=2,_>=26&&(_-=26,x--)}for(N!==0&&(g=N.toString(16)+g);g.length%k!==0;)g="0"+g;return this.negative!==0&&(g="-"+g),g}if(j===(j|0)&&j>=2&&j<=36){var w=F[j],p=A[j];g="";var f=this.clone();for(f.negative=0;!f.isZero();){var c=f.modn(p).toString(j);f=f.idivn(p),f.isZero()?g=c+g:g=J[w-c.length]+c+g}for(this.isZero()&&(g="0"+g);g.length%k!==0;)g="0"+g;return this.negative!==0&&(g="-"+g),g}G(!1,"Base should be between 2 and 36")},U.prototype.toNumber=function(){var j=this.words[0];return this.length===2?j+=this.words[1]*67108864:this.length===3&&this.words[2]===1?j+=4503599627370496+this.words[1]*67108864:this.length>2&&G(!1,"Number can only safely store up to 53 bits"),this.negative!==0?-j:j},U.prototype.toJSON=function(){return this.toString(16)},U.prototype.toBuffer=function(j,k){return G(typeof X<"u"),this.toArrayLike(X,j,k)},U.prototype.toArray=function(j,k){return this.toArrayLike(Array,j,k)},U.prototype.toArrayLike=function(j,k,g){var _=this.byteLength(),N=g||Math.max(1,_);G(_<=N,"byte array longer than desired length"),G(N>0,"Requested array length <= 0"),this.strip();var x=k==="le",B=new j(N),y,w,p=this.clone();if(x){for(w=0;!p.isZero();w++)y=p.andln(255),p.iushrn(8),B[w]=y;for(;w<N;w++)B[w]=0}else{for(w=0;w<N-_;w++)B[w]=0;for(w=0;!p.isZero();w++)y=p.andln(255),p.iushrn(8),B[N-w-1]=y}return B},Math.clz32?U.prototype._countBits=function(j){return 32-Math.clz32(j)}:U.prototype._countBits=function(j){var k=j,g=0;return k>=4096&&(g+=13,k>>>=13),k>=64&&(g+=7,k>>>=7),k>=8&&(g+=4,k>>>=4),k>=2&&(g+=2,k>>>=2),g+k},U.prototype._zeroBits=function(j){if(j===0)return 26;var k=j,g=0;return(k&8191)===0&&(g+=13,k>>>=13),(k&127)===0&&(g+=7,k>>>=7),(k&15)===0&&(g+=4,k>>>=4),(k&3)===0&&(g+=2,k>>>=2),(k&1)===0&&g++,g},U.prototype.bitLength=function(){var j=this.words[this.length-1],k=this._countBits(j);return(this.length-1)*26+k};function H(j){for(var k=new Array(j.bitLength()),g=0;g<k.length;g++){var _=g/26|0,N=g%26;k[g]=(j.words[_]&1<<N)>>>N}return k}U.prototype.zeroBits=function(){if(this.isZero())return 0;for(var j=0,k=0;k<this.length;k++){var g=this._zeroBits(this.words[k]);if(j+=g,g!==26)break}return j},U.prototype.byteLength=function(){return Math.ceil(this.bitLength()/8)},U.prototype.toTwos=function(j){return this.negative!==0?this.abs().inotn(j).iaddn(1):this.clone()},U.prototype.fromTwos=function(j){return this.testn(j-1)?this.notn(j).iaddn(1).ineg():this.clone()},U.prototype.isNeg=function(){return this.negative!==0},U.prototype.neg=function(){return this.clone().ineg()},U.prototype.ineg=function(){return this.isZero()||(this.negative^=1),this},U.prototype.iuor=function(j){for(;this.length<j.length;)this.words[this.length++]=0;for(var k=0;k<j.length;k++)this.words[k]=this.words[k]|j.words[k];return this.strip()},U.prototype.ior=function(j){return G((this.negative|j.negative)===0),this.iuor(j)},U.prototype.or=function(j){return this.length>j.length?this.clone().ior(j):j.clone().ior(this)},U.prototype.uor=function(j){return this.length>j.length?this.clone().iuor(j):j.clone().iuor(this)},U.prototype.iuand=function(j){var k;this.length>j.length?k=j:k=this;for(var g=0;g<k.length;g++)this.words[g]=this.words[g]&j.words[g];return this.length=k.length,this.strip()},U.prototype.iand=function(j){return G((this.negative|j.negative)===0),this.iuand(j)},U.prototype.and=function(j){return this.length>j.length?this.clone().iand(j):j.clone().iand(this)},U.prototype.uand=function(j){return this.length>j.length?this.clone().iuand(j):j.clone().iuand(this)},U.prototype.iuxor=function(j){var k,g;this.length>j.length?(k=this,g=j):(k=j,g=this);for(var _=0;_<g.length;_++)this.words[_]=k.words[_]^g.words[_];if(this!==k)for(;_<k.length;_++)this.words[_]=k.words[_];return this.length=k.length,this.strip()},U.prototype.ixor=function(j){return G((this.negative|j.negative)===0),this.iuxor(j)},U.prototype.xor=function(j){return this.length>j.length?this.clone().ixor(j):j.clone().ixor(this)},U.prototype.uxor=function(j){return this.length>j.length?this.clone().iuxor(j):j.clone().iuxor(this)},U.prototype.inotn=function(j){G(typeof j=="number"&&j>=0);var k=Math.ceil(j/26)|0,g=j%26;this._expand(k),g>0&&k--;for(var _=0;_<k;_++)this.words[_]=~this.words[_]&67108863;return g>0&&(this.words[_]=~this.words[_]&67108863>>26-g),this.strip()},U.prototype.notn=function(j){return this.clone().inotn(j)},U.prototype.setn=function(j,k){G(typeof j=="number"&&j>=0);var g=j/26|0,_=j%26;return this._expand(g+1),k?this.words[g]=this.words[g]|1<<_:this.words[g]=this.words[g]&~(1<<_),this.strip()},U.prototype.iadd=function(j){var k;if(this.negative!==0&&j.negative===0)return this.negative=0,k=this.isub(j),this.negative^=1,this._normSign();if(this.negative===0&&j.negative!==0)return j.negative=0,k=this.isub(j),j.negative=1,k._normSign();var g,_;this.length>j.length?(g=this,_=j):(g=j,_=this);for(var N=0,x=0;x<_.length;x++)k=(g.words[x]|0)+(_.words[x]|0)+N,this.words[x]=k&67108863,N=k>>>26;for(;N!==0&&x<g.length;x++)k=(g.words[x]|0)+N,this.words[x]=k&67108863,N=k>>>26;if(this.length=g.length,N!==0)this.words[this.length]=N,this.length++;else if(g!==this)for(;x<g.length;x++)this.words[x]=g.words[x];return this},U.prototype.add=function(j){var k;return j.negative!==0&&this.negative===0?(j.negative=0,k=this.sub(j),j.negative^=1,k):j.negative===0&&this.negative!==0?(this.negative=0,k=j.sub(this),this.negative=1,k):this.length>j.length?this.clone().iadd(j):j.clone().iadd(this)},U.prototype.isub=function(j){if(j.negative!==0){j.negative=0;var k=this.iadd(j);return j.negative=1,k._normSign()}else if(this.negative!==0)return this.negative=0,this.iadd(j),this.negative=1,this._normSign();var g=this.cmp(j);if(g===0)return this.negative=0,this.length=1,this.words[0]=0,this;var _,N;g>0?(_=this,N=j):(_=j,N=this);for(var x=0,B=0;B<N.length;B++)k=(_.words[B]|0)-(N.words[B]|0)+x,x=k>>26,this.words[B]=k&67108863;for(;x!==0&&B<_.length;B++)k=(_.words[B]|0)+x,x=k>>26,this.words[B]=k&67108863;if(x===0&&B<_.length&&_!==this)for(;B<_.length;B++)this.words[B]=_.words[B];return this.length=Math.max(this.length,B),_!==this&&(this.negative=1),this.strip()},U.prototype.sub=function(j){return this.clone().isub(j)};function W(j,k,g){g.negative=k.negative^j.negative;var _=j.length+k.length|0;g.length=_,_=_-1|0;var N=j.words[0]|0,x=k.words[0]|0,B=N*x,y=B&67108863,w=B/67108864|0;g.words[0]=y;for(var p=1;p<_;p++){for(var f=w>>>26,c=w&67108863,h=Math.min(p,k.length-1),d=Math.max(0,p-j.length+1);d<=h;d++){var b=p-d|0;N=j.words[b]|0,x=k.words[d]|0,B=N*x+c,f+=B/67108864|0,c=B&67108863}g.words[p]=c|0,w=f|0}return w!==0?g.words[p]=w|0:g.length--,g.strip()}var E=function(j,k,g){var _=j.words,N=k.words,x=g.words,B=0,y,w,p,f=_[0]|0,c=f&8191,h=f>>>13,d=_[1]|0,b=d&8191,l=d>>>13,o=_[2]|0,u=o&8191,n=o>>>13,s=_[3]|0,t=s&8191,m=s>>>13,a=_[4]|0,e=a&8191,r=a>>>13,i=_[5]|0,$0=i&8191,Q0=i>>>13,Y0=_[6]|0,Z0=Y0&8191,G0=Y0>>>13,V0=_[7]|0,U0=V0&8191,X0=V0>>>13,K0=_[8]|0,I0=K0&8191,O0=K0>>>13,J0=_[9]|0,F0=J0&8191,A0=J0>>>13,H0=N[0]|0,W0=H0&8191,E0=H0>>>13,T0=N[1]|0,D0=T0&8191,C0=T0>>>13,L0=N[2]|0,R0=L0&8191,P0=L0>>>13,z0=N[3]|0,M0=z0&8191,S0=z0>>>13,v0=N[4]|0,q0=v0&8191,j0=v0>>>13,k0=N[5]|0,g0=k0&8191,_0=k0>>>13,N0=N[6]|0,x0=N0&8191,B0=N0>>>13,y0=N[7]|0,w0=y0&8191,p0=y0>>>13,f0=N[8]|0,c0=f0&8191,h0=f0>>>13,d0=N[9]|0,b0=d0&8191,l0=d0>>>13;g.negative=j.negative^k.negative,g.length=19,y=Math.imul(c,W0),w=Math.imul(c,E0),w=w+Math.imul(h,W0)|0,p=Math.imul(h,E0);var o0=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(o0>>>26)|0,o0&=67108863,y=Math.imul(b,W0),w=Math.imul(b,E0),w=w+Math.imul(l,W0)|0,p=Math.imul(l,E0),y=y+Math.imul(c,D0)|0,w=w+Math.imul(c,C0)|0,w=w+Math.imul(h,D0)|0,p=p+Math.imul(h,C0)|0;var u0=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(u0>>>26)|0,u0&=67108863,y=Math.imul(u,W0),w=Math.imul(u,E0),w=w+Math.imul(n,W0)|0,p=Math.imul(n,E0),y=y+Math.imul(b,D0)|0,w=w+Math.imul(b,C0)|0,w=w+Math.imul(l,D0)|0,p=p+Math.imul(l,C0)|0,y=y+Math.imul(c,R0)|0,w=w+Math.imul(c,P0)|0,w=w+Math.imul(h,R0)|0,p=p+Math.imul(h,P0)|0;var n0=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(n0>>>26)|0,n0&=67108863,y=Math.imul(t,W0),w=Math.imul(t,E0),w=w+Math.imul(m,W0)|0,p=Math.imul(m,E0),y=y+Math.imul(u,D0)|0,w=w+Math.imul(u,C0)|0,w=w+Math.imul(n,D0)|0,p=p+Math.imul(n,C0)|0,y=y+Math.imul(b,R0)|0,w=w+Math.imul(b,P0)|0,w=w+Math.imul(l,R0)|0,p=p+Math.imul(l,P0)|0,y=y+Math.imul(c,M0)|0,w=w+Math.imul(c,S0)|0,w=w+Math.imul(h,M0)|0,p=p+Math.imul(h,S0)|0;var s0=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(s0>>>26)|0,s0&=67108863,y=Math.imul(e,W0),w=Math.imul(e,E0),w=w+Math.imul(r,W0)|0,p=Math.imul(r,E0),y=y+Math.imul(t,D0)|0,w=w+Math.imul(t,C0)|0,w=w+Math.imul(m,D0)|0,p=p+Math.imul(m,C0)|0,y=y+Math.imul(u,R0)|0,w=w+Math.imul(u,P0)|0,w=w+Math.imul(n,R0)|0,p=p+Math.imul(n,P0)|0,y=y+Math.imul(b,M0)|0,w=w+Math.imul(b,S0)|0,w=w+Math.imul(l,M0)|0,p=p+Math.imul(l,S0)|0,y=y+Math.imul(c,q0)|0,w=w+Math.imul(c,j0)|0,w=w+Math.imul(h,q0)|0,p=p+Math.imul(h,j0)|0;var t0=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(t0>>>26)|0,t0&=67108863,y=Math.imul($0,W0),w=Math.imul($0,E0),w=w+Math.imul(Q0,W0)|0,p=Math.imul(Q0,E0),y=y+Math.imul(e,D0)|0,w=w+Math.imul(e,C0)|0,w=w+Math.imul(r,D0)|0,p=p+Math.imul(r,C0)|0,y=y+Math.imul(t,R0)|0,w=w+Math.imul(t,P0)|0,w=w+Math.imul(m,R0)|0,p=p+Math.imul(m,P0)|0,y=y+Math.imul(u,M0)|0,w=w+Math.imul(u,S0)|0,w=w+Math.imul(n,M0)|0,p=p+Math.imul(n,S0)|0,y=y+Math.imul(b,q0)|0,w=w+Math.imul(b,j0)|0,w=w+Math.imul(l,q0)|0,p=p+Math.imul(l,j0)|0,y=y+Math.imul(c,g0)|0,w=w+Math.imul(c,_0)|0,w=w+Math.imul(h,g0)|0,p=p+Math.imul(h,_0)|0;var m0=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(m0>>>26)|0,m0&=67108863,y=Math.imul(Z0,W0),w=Math.imul(Z0,E0),w=w+Math.imul(G0,W0)|0,p=Math.imul(G0,E0),y=y+Math.imul($0,D0)|0,w=w+Math.imul($0,C0)|0,w=w+Math.imul(Q0,D0)|0,p=p+Math.imul(Q0,C0)|0,y=y+Math.imul(e,R0)|0,w=w+Math.imul(e,P0)|0,w=w+Math.imul(r,R0)|0,p=p+Math.imul(r,P0)|0,y=y+Math.imul(t,M0)|0,w=w+Math.imul(t,S0)|0,w=w+Math.imul(m,M0)|0,p=p+Math.imul(m,S0)|0,y=y+Math.imul(u,q0)|0,w=w+Math.imul(u,j0)|0,w=w+Math.imul(n,q0)|0,p=p+Math.imul(n,j0)|0,y=y+Math.imul(b,g0)|0,w=w+Math.imul(b,_0)|0,w=w+Math.imul(l,g0)|0,p=p+Math.imul(l,_0)|0,y=y+Math.imul(c,x0)|0,w=w+Math.imul(c,B0)|0,w=w+Math.imul(h,x0)|0,p=p+Math.imul(h,B0)|0;var a0=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(a0>>>26)|0,a0&=67108863,y=Math.imul(U0,W0),w=Math.imul(U0,E0),w=w+Math.imul(X0,W0)|0,p=Math.imul(X0,E0),y=y+Math.imul(Z0,D0)|0,w=w+Math.imul(Z0,C0)|0,w=w+Math.imul(G0,D0)|0,p=p+Math.imul(G0,C0)|0,y=y+Math.imul($0,R0)|0,w=w+Math.imul($0,P0)|0,w=w+Math.imul(Q0,R0)|0,p=p+Math.imul(Q0,P0)|0,y=y+Math.imul(e,M0)|0,w=w+Math.imul(e,S0)|0,w=w+Math.imul(r,M0)|0,p=p+Math.imul(r,S0)|0,y=y+Math.imul(t,q0)|0,w=w+Math.imul(t,j0)|0,w=w+Math.imul(m,q0)|0,p=p+Math.imul(m,j0)|0,y=y+Math.imul(u,g0)|0,w=w+Math.imul(u,_0)|0,w=w+Math.imul(n,g0)|0,p=p+Math.imul(n,_0)|0,y=y+Math.imul(b,x0)|0,w=w+Math.imul(b,B0)|0,w=w+Math.imul(l,x0)|0,p=p+Math.imul(l,B0)|0,y=y+Math.imul(c,w0)|0,w=w+Math.imul(c,p0)|0,w=w+Math.imul(h,w0)|0,p=p+Math.imul(h,p0)|0;var e0=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(e0>>>26)|0,e0&=67108863,y=Math.imul(I0,W0),w=Math.imul(I0,E0),w=w+Math.imul(O0,W0)|0,p=Math.imul(O0,E0),y=y+Math.imul(U0,D0)|0,w=w+Math.imul(U0,C0)|0,w=w+Math.imul(X0,D0)|0,p=p+Math.imul(X0,C0)|0,y=y+Math.imul(Z0,R0)|0,w=w+Math.imul(Z0,P0)|0,w=w+Math.imul(G0,R0)|0,p=p+Math.imul(G0,P0)|0,y=y+Math.imul($0,M0)|0,w=w+Math.imul($0,S0)|0,w=w+Math.imul(Q0,M0)|0,p=p+Math.imul(Q0,S0)|0,y=y+Math.imul(e,q0)|0,w=w+Math.imul(e,j0)|0,w=w+Math.imul(r,q0)|0,p=p+Math.imul(r,j0)|0,y=y+Math.imul(t,g0)|0,w=w+Math.imul(t,_0)|0,w=w+Math.imul(m,g0)|0,p=p+Math.imul(m,_0)|0,y=y+Math.imul(u,x0)|0,w=w+Math.imul(u,B0)|0,w=w+Math.imul(n,x0)|0,p=p+Math.imul(n,B0)|0,y=y+Math.imul(b,w0)|0,w=w+Math.imul(b,p0)|0,w=w+Math.imul(l,w0)|0,p=p+Math.imul(l,p0)|0,y=y+Math.imul(c,c0)|0,w=w+Math.imul(c,h0)|0,w=w+Math.imul(h,c0)|0,p=p+Math.imul(h,h0)|0;var r0=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(r0>>>26)|0,r0&=67108863,y=Math.imul(F0,W0),w=Math.imul(F0,E0),w=w+Math.imul(A0,W0)|0,p=Math.imul(A0,E0),y=y+Math.imul(I0,D0)|0,w=w+Math.imul(I0,C0)|0,w=w+Math.imul(O0,D0)|0,p=p+Math.imul(O0,C0)|0,y=y+Math.imul(U0,R0)|0,w=w+Math.imul(U0,P0)|0,w=w+Math.imul(X0,R0)|0,p=p+Math.imul(X0,P0)|0,y=y+Math.imul(Z0,M0)|0,w=w+Math.imul(Z0,S0)|0,w=w+Math.imul(G0,M0)|0,p=p+Math.imul(G0,S0)|0,y=y+Math.imul($0,q0)|0,w=w+Math.imul($0,j0)|0,w=w+Math.imul(Q0,q0)|0,p=p+Math.imul(Q0,j0)|0,y=y+Math.imul(e,g0)|0,w=w+Math.imul(e,_0)|0,w=w+Math.imul(r,g0)|0,p=p+Math.imul(r,_0)|0,y=y+Math.imul(t,x0)|0,w=w+Math.imul(t,B0)|0,w=w+Math.imul(m,x0)|0,p=p+Math.imul(m,B0)|0,y=y+Math.imul(u,w0)|0,w=w+Math.imul(u,p0)|0,w=w+Math.imul(n,w0)|0,p=p+Math.imul(n,p0)|0,y=y+Math.imul(b,c0)|0,w=w+Math.imul(b,h0)|0,w=w+Math.imul(l,c0)|0,p=p+Math.imul(l,h0)|0,y=y+Math.imul(c,b0)|0,w=w+Math.imul(c,l0)|0,w=w+Math.imul(h,b0)|0,p=p+Math.imul(h,l0)|0;var i0=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(i0>>>26)|0,i0&=67108863,y=Math.imul(F0,D0),w=Math.imul(F0,C0),w=w+Math.imul(A0,D0)|0,p=Math.imul(A0,C0),y=y+Math.imul(I0,R0)|0,w=w+Math.imul(I0,P0)|0,w=w+Math.imul(O0,R0)|0,p=p+Math.imul(O0,P0)|0,y=y+Math.imul(U0,M0)|0,w=w+Math.imul(U0,S0)|0,w=w+Math.imul(X0,M0)|0,p=p+Math.imul(X0,S0)|0,y=y+Math.imul(Z0,q0)|0,w=w+Math.imul(Z0,j0)|0,w=w+Math.imul(G0,q0)|0,p=p+Math.imul(G0,j0)|0,y=y+Math.imul($0,g0)|0,w=w+Math.imul($0,_0)|0,w=w+Math.imul(Q0,g0)|0,p=p+Math.imul(Q0,_0)|0,y=y+Math.imul(e,x0)|0,w=w+Math.imul(e,B0)|0,w=w+Math.imul(r,x0)|0,p=p+Math.imul(r,B0)|0,y=y+Math.imul(t,w0)|0,w=w+Math.imul(t,p0)|0,w=w+Math.imul(m,w0)|0,p=p+Math.imul(m,p0)|0,y=y+Math.imul(u,c0)|0,w=w+Math.imul(u,h0)|0,w=w+Math.imul(n,c0)|0,p=p+Math.imul(n,h0)|0,y=y+Math.imul(b,b0)|0,w=w+Math.imul(b,l0)|0,w=w+Math.imul(l,b0)|0,p=p+Math.imul(l,l0)|0;var $$=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+($$>>>26)|0,$$&=67108863,y=Math.imul(F0,R0),w=Math.imul(F0,P0),w=w+Math.imul(A0,R0)|0,p=Math.imul(A0,P0),y=y+Math.imul(I0,M0)|0,w=w+Math.imul(I0,S0)|0,w=w+Math.imul(O0,M0)|0,p=p+Math.imul(O0,S0)|0,y=y+Math.imul(U0,q0)|0,w=w+Math.imul(U0,j0)|0,w=w+Math.imul(X0,q0)|0,p=p+Math.imul(X0,j0)|0,y=y+Math.imul(Z0,g0)|0,w=w+Math.imul(Z0,_0)|0,w=w+Math.imul(G0,g0)|0,p=p+Math.imul(G0,_0)|0,y=y+Math.imul($0,x0)|0,w=w+Math.imul($0,B0)|0,w=w+Math.imul(Q0,x0)|0,p=p+Math.imul(Q0,B0)|0,y=y+Math.imul(e,w0)|0,w=w+Math.imul(e,p0)|0,w=w+Math.imul(r,w0)|0,p=p+Math.imul(r,p0)|0,y=y+Math.imul(t,c0)|0,w=w+Math.imul(t,h0)|0,w=w+Math.imul(m,c0)|0,p=p+Math.imul(m,h0)|0,y=y+Math.imul(u,b0)|0,w=w+Math.imul(u,l0)|0,w=w+Math.imul(n,b0)|0,p=p+Math.imul(n,l0)|0;var Q$=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(Q$>>>26)|0,Q$&=67108863,y=Math.imul(F0,M0),w=Math.imul(F0,S0),w=w+Math.imul(A0,M0)|0,p=Math.imul(A0,S0),y=y+Math.imul(I0,q0)|0,w=w+Math.imul(I0,j0)|0,w=w+Math.imul(O0,q0)|0,p=p+Math.imul(O0,j0)|0,y=y+Math.imul(U0,g0)|0,w=w+Math.imul(U0,_0)|0,w=w+Math.imul(X0,g0)|0,p=p+Math.imul(X0,_0)|0,y=y+Math.imul(Z0,x0)|0,w=w+Math.imul(Z0,B0)|0,w=w+Math.imul(G0,x0)|0,p=p+Math.imul(G0,B0)|0,y=y+Math.imul($0,w0)|0,w=w+Math.imul($0,p0)|0,w=w+Math.imul(Q0,w0)|0,p=p+Math.imul(Q0,p0)|0,y=y+Math.imul(e,c0)|0,w=w+Math.imul(e,h0)|0,w=w+Math.imul(r,c0)|0,p=p+Math.imul(r,h0)|0,y=y+Math.imul(t,b0)|0,w=w+Math.imul(t,l0)|0,w=w+Math.imul(m,b0)|0,p=p+Math.imul(m,l0)|0;var Y$=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(Y$>>>26)|0,Y$&=67108863,y=Math.imul(F0,q0),w=Math.imul(F0,j0),w=w+Math.imul(A0,q0)|0,p=Math.imul(A0,j0),y=y+Math.imul(I0,g0)|0,w=w+Math.imul(I0,_0)|0,w=w+Math.imul(O0,g0)|0,p=p+Math.imul(O0,_0)|0,y=y+Math.imul(U0,x0)|0,w=w+Math.imul(U0,B0)|0,w=w+Math.imul(X0,x0)|0,p=p+Math.imul(X0,B0)|0,y=y+Math.imul(Z0,w0)|0,w=w+Math.imul(Z0,p0)|0,w=w+Math.imul(G0,w0)|0,p=p+Math.imul(G0,p0)|0,y=y+Math.imul($0,c0)|0,w=w+Math.imul($0,h0)|0,w=w+Math.imul(Q0,c0)|0,p=p+Math.imul(Q0,h0)|0,y=y+Math.imul(e,b0)|0,w=w+Math.imul(e,l0)|0,w=w+Math.imul(r,b0)|0,p=p+Math.imul(r,l0)|0;var Z$=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(Z$>>>26)|0,Z$&=67108863,y=Math.imul(F0,g0),w=Math.imul(F0,_0),w=w+Math.imul(A0,g0)|0,p=Math.imul(A0,_0),y=y+Math.imul(I0,x0)|0,w=w+Math.imul(I0,B0)|0,w=w+Math.imul(O0,x0)|0,p=p+Math.imul(O0,B0)|0,y=y+Math.imul(U0,w0)|0,w=w+Math.imul(U0,p0)|0,w=w+Math.imul(X0,w0)|0,p=p+Math.imul(X0,p0)|0,y=y+Math.imul(Z0,c0)|0,w=w+Math.imul(Z0,h0)|0,w=w+Math.imul(G0,c0)|0,p=p+Math.imul(G0,h0)|0,y=y+Math.imul($0,b0)|0,w=w+Math.imul($0,l0)|0,w=w+Math.imul(Q0,b0)|0,p=p+Math.imul(Q0,l0)|0;var G$=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(G$>>>26)|0,G$&=67108863,y=Math.imul(F0,x0),w=Math.imul(F0,B0),w=w+Math.imul(A0,x0)|0,p=Math.imul(A0,B0),y=y+Math.imul(I0,w0)|0,w=w+Math.imul(I0,p0)|0,w=w+Math.imul(O0,w0)|0,p=p+Math.imul(O0,p0)|0,y=y+Math.imul(U0,c0)|0,w=w+Math.imul(U0,h0)|0,w=w+Math.imul(X0,c0)|0,p=p+Math.imul(X0,h0)|0,y=y+Math.imul(Z0,b0)|0,w=w+Math.imul(Z0,l0)|0,w=w+Math.imul(G0,b0)|0,p=p+Math.imul(G0,l0)|0;var V$=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(V$>>>26)|0,V$&=67108863,y=Math.imul(F0,w0),w=Math.imul(F0,p0),w=w+Math.imul(A0,w0)|0,p=Math.imul(A0,p0),y=y+Math.imul(I0,c0)|0,w=w+Math.imul(I0,h0)|0,w=w+Math.imul(O0,c0)|0,p=p+Math.imul(O0,h0)|0,y=y+Math.imul(U0,b0)|0,w=w+Math.imul(U0,l0)|0,w=w+Math.imul(X0,b0)|0,p=p+Math.imul(X0,l0)|0;var U$=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(U$>>>26)|0,U$&=67108863,y=Math.imul(F0,c0),w=Math.imul(F0,h0),w=w+Math.imul(A0,c0)|0,p=Math.imul(A0,h0),y=y+Math.imul(I0,b0)|0,w=w+Math.imul(I0,l0)|0,w=w+Math.imul(O0,b0)|0,p=p+Math.imul(O0,l0)|0;var X$=(B+y|0)+((w&8191)<<13)|0;B=(p+(w>>>13)|0)+(X$>>>26)|0,X$&=67108863,y=Math.imul(F0,b0),w=Math.imul(F0,l0),w=w+Math.imul(A0,b0)|0,p=Math.imul(A0,l0);var K$=(B+y|0)+((w&8191)<<13)|0;return B=(p+(w>>>13)|0)+(K$>>>26)|0,K$&=67108863,x[0]=o0,x[1]=u0,x[2]=n0,x[3]=s0,x[4]=t0,x[5]=m0,x[6]=a0,x[7]=e0,x[8]=r0,x[9]=i0,x[10]=$$,x[11]=Q$,x[12]=Y$,x[13]=Z$,x[14]=G$,x[15]=V$,x[16]=U$,x[17]=X$,x[18]=K$,B!==0&&(x[19]=B,g.length++),g};Math.imul||(E=W);function T(j,k,g){g.negative=k.negative^j.negative,g.length=j.length+k.length;for(var _=0,N=0,x=0;x<g.length-1;x++){var B=N;N=0;for(var y=_&67108863,w=Math.min(x,k.length-1),p=Math.max(0,x-j.length+1);p<=w;p++){var f=x-p,c=j.words[f]|0,h=k.words[p]|0,d=c*h,b=d&67108863;B=B+(d/67108864|0)|0,b=b+y|0,y=b&67108863,B=B+(b>>>26)|0,N+=B>>>26,B&=67108863}g.words[x]=y,_=B,B=N}return _!==0?g.words[x]=_:g.length--,g.strip()}function D(j,k,g){var _=new C;return _.mulp(j,k,g)}U.prototype.mulTo=function(j,k){var g,_=this.length+j.length;return this.length===10&&j.length===10?g=E(this,j,k):_<63?g=W(this,j,k):_<1024?g=T(this,j,k):g=D(this,j,k),g};function C(j,k){this.x=j,this.y=k}C.prototype.makeRBT=function(j){for(var k=new Array(j),g=U.prototype._countBits(j)-1,_=0;_<j;_++)k[_]=this.revBin(_,g,j);return k},C.prototype.revBin=function(j,k,g){if(j===0||j===g-1)return j;for(var _=0,N=0;N<k;N++)_|=(j&1)<<k-N-1,j>>=1;return _},C.prototype.permute=function(j,k,g,_,N,x){for(var B=0;B<x;B++)_[B]=k[j[B]],N[B]=g[j[B]]},C.prototype.transform=function(j,k,g,_,N,x){this.permute(x,j,k,g,_,N);for(var B=1;B<N;B<<=1)for(var y=B<<1,w=Math.cos(2*Math.PI/y),p=Math.sin(2*Math.PI/y),f=0;f<N;f+=y)for(var c=w,h=p,d=0;d<B;d++){var b=g[f+d],l=_[f+d],o=g[f+d+B],u=_[f+d+B],n=c*o-h*u;u=c*u+h*o,o=n,g[f+d]=b+o,_[f+d]=l+u,g[f+d+B]=b-o,_[f+d+B]=l-u,d!==y&&(n=w*c-p*h,h=w*h+p*c,c=n)}},C.prototype.guessLen13b=function(j,k){var g=Math.max(k,j)|1,_=g&1,N=0;for(g=g/2|0;g;g=g>>>1)N++;return 1<<N+1+_},C.prototype.conjugate=function(j,k,g){if(!(g<=1))for(var _=0;_<g/2;_++){var N=j[_];j[_]=j[g-_-1],j[g-_-1]=N,N=k[_],k[_]=-k[g-_-1],k[g-_-1]=-N}},C.prototype.normalize13b=function(j,k){for(var g=0,_=0;_<k/2;_++){var N=Math.round(j[2*_+1]/k)*8192+Math.round(j[2*_]/k)+g;j[_]=N&67108863,N<67108864?g=0:g=N/67108864|0}return j},C.prototype.convert13b=function(j,k,g,_){for(var N=0,x=0;x<k;x++)N=N+(j[x]|0),g[2*x]=N&8191,N=N>>>13,g[2*x+1]=N&8191,N=N>>>13;for(x=2*k;x<_;++x)g[x]=0;G(N===0),G((N&-8192)===0)},C.prototype.stub=function(j){for(var k=new Array(j),g=0;g<j;g++)k[g]=0;return k},C.prototype.mulp=function(j,k,g){var _=2*this.guessLen13b(j.length,k.length),N=this.makeRBT(_),x=this.stub(_),B=new Array(_),y=new Array(_),w=new Array(_),p=new Array(_),f=new Array(_),c=new Array(_),h=g.words;h.length=_,this.convert13b(j.words,j.length,B,_),this.convert13b(k.words,k.length,p,_),this.transform(B,x,y,w,_,N),this.transform(p,x,f,c,_,N);for(var d=0;d<_;d++){var b=y[d]*f[d]-w[d]*c[d];w[d]=y[d]*c[d]+w[d]*f[d],y[d]=b}return this.conjugate(y,w,_),this.transform(y,w,h,x,_,N),this.conjugate(h,x,_),this.normalize13b(h,_),g.negative=j.negative^k.negative,g.length=j.length+k.length,g.strip()},U.prototype.mul=function(j){var k=new U(null);return k.words=new Array(this.length+j.length),this.mulTo(j,k)},U.prototype.mulf=function(j){var k=new U(null);return k.words=new Array(this.length+j.length),D(this,j,k)},U.prototype.imul=function(j){return this.clone().mulTo(j,this)},U.prototype.imuln=function(j){G(typeof j=="number"),G(j<67108864);for(var k=0,g=0;g<this.length;g++){var _=(this.words[g]|0)*j,N=(_&67108863)+(k&67108863);k>>=26,k+=_/67108864|0,k+=N>>>26,this.words[g]=N&67108863}return k!==0&&(this.words[g]=k,this.length++),this},U.prototype.muln=function(j){return this.clone().imuln(j)},U.prototype.sqr=function(){return this.mul(this)},U.prototype.isqr=function(){return this.imul(this.clone())},U.prototype.pow=function(j){var k=H(j);if(k.length===0)return new U(1);for(var g=this,_=0;_<k.length&&k[_]===0;_++,g=g.sqr());if(++_<k.length)for(var N=g.sqr();_<k.length;_++,N=N.sqr())k[_]!==0&&(g=g.mul(N));return g},U.prototype.iushln=function(j){G(typeof j=="number"&&j>=0);var k=j%26,g=(j-k)/26,_=67108863>>>26-k<<26-k,N;if(k!==0){var x=0;for(N=0;N<this.length;N++){var B=this.words[N]&_,y=(this.words[N]|0)-B<<k;this.words[N]=y|x,x=B>>>26-k}x&&(this.words[N]=x,this.length++)}if(g!==0){for(N=this.length-1;N>=0;N--)this.words[N+g]=this.words[N];for(N=0;N<g;N++)this.words[N]=0;this.length+=g}return this.strip()},U.prototype.ishln=function(j){return G(this.negative===0),this.iushln(j)},U.prototype.iushrn=function(j,k,g){G(typeof j=="number"&&j>=0);var _;k?_=(k-k%26)/26:_=0;var N=j%26,x=Math.min((j-N)/26,this.length),B=67108863^67108863>>>N<<N,y=g;if(_-=x,_=Math.max(0,_),y){for(var w=0;w<x;w++)y.words[w]=this.words[w];y.length=x}if(x!==0)if(this.length>x)for(this.length-=x,w=0;w<this.length;w++)this.words[w]=this.words[w+x];else this.words[0]=0,this.length=1;var p=0;for(w=this.length-1;w>=0&&(p!==0||w>=_);w--){var f=this.words[w]|0;this.words[w]=p<<26-N|f>>>N,p=f&B}return y&&p!==0&&(y.words[y.length++]=p),this.length===0&&(this.words[0]=0,this.length=1),this.strip()},U.prototype.ishrn=function(j,k,g){return G(this.negative===0),this.iushrn(j,k,g)},U.prototype.shln=function(j){return this.clone().ishln(j)},U.prototype.ushln=function(j){return this.clone().iushln(j)},U.prototype.shrn=function(j){return this.clone().ishrn(j)},U.prototype.ushrn=function(j){return this.clone().iushrn(j)},U.prototype.testn=function(j){G(typeof j=="number"&&j>=0);var k=j%26,g=(j-k)/26,_=1<<k;if(this.length<=g)return!1;var N=this.words[g];return!!(N&_)},U.prototype.imaskn=function(j){G(typeof j=="number"&&j>=0);var k=j%26,g=(j-k)/26;if(G(this.negative===0,"imaskn works only with positive numbers"),this.length<=g)return this;if(k!==0&&g++,this.length=Math.min(g,this.length),k!==0){var _=67108863^67108863>>>k<<k;this.words[this.length-1]&=_}return this.strip()},U.prototype.maskn=function(j){return this.clone().imaskn(j)},U.prototype.iaddn=function(j){return G(typeof j=="number"),G(j<67108864),j<0?this.isubn(-j):this.negative!==0?this.length===1&&(this.words[0]|0)<j?(this.words[0]=j-(this.words[0]|0),this.negative=0,this):(this.negative=0,this.isubn(j),this.negative=1,this):this._iaddn(j)},U.prototype._iaddn=function(j){this.words[0]+=j;for(var k=0;k<this.length&&this.words[k]>=67108864;k++)this.words[k]-=67108864,k===this.length-1?this.words[k+1]=1:this.words[k+1]++;return this.length=Math.max(this.length,k+1),this},U.prototype.isubn=function(j){if(G(typeof j=="number"),G(j<67108864),j<0)return this.iaddn(-j);if(this.negative!==0)return this.negative=0,this.iaddn(j),this.negative=1,this;if(this.words[0]-=j,this.length===1&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var k=0;k<this.length&&this.words[k]<0;k++)this.words[k]+=67108864,this.words[k+1]-=1;return this.strip()},U.prototype.addn=function(j){return this.clone().iaddn(j)},U.prototype.subn=function(j){return this.clone().isubn(j)},U.prototype.iabs=function(){return this.negative=0,this},U.prototype.abs=function(){return this.clone().iabs()},U.prototype._ishlnsubmul=function(j,k,g){var _=j.length+g,N;this._expand(_);var x,B=0;for(N=0;N<j.length;N++){x=(this.words[N+g]|0)+B;var y=(j.words[N]|0)*k;x-=y&67108863,B=(x>>26)-(y/67108864|0),this.words[N+g]=x&67108863}for(;N<this.length-g;N++)x=(this.words[N+g]|0)+B,B=x>>26,this.words[N+g]=x&67108863;if(B===0)return this.strip();for(G(B===-1),B=0,N=0;N<this.length;N++)x=-(this.words[N]|0)+B,B=x>>26,this.words[N]=x&67108863;return this.negative=1,this.strip()},U.prototype._wordDiv=function(j,k){var g=this.length-j.length,_=this.clone(),N=j,x=N.words[N.length-1]|0,B=this._countBits(x);g=26-B,g!==0&&(N=N.ushln(g),_.iushln(g),x=N.words[N.length-1]|0);var y=_.length-N.length,w;if(k!=="mod"){w=new U(null),w.length=y+1,w.words=new Array(w.length);for(var p=0;p<w.length;p++)w.words[p]=0}var f=_.clone()._ishlnsubmul(N,1,y);f.negative===0&&(_=f,w&&(w.words[y]=1));for(var c=y-1;c>=0;c--){var h=(_.words[N.length+c]|0)*67108864+(_.words[N.length+c-1]|0);for(h=Math.min(h/x|0,67108863),_._ishlnsubmul(N,h,c);_.negative!==0;)h--,_.negative=0,_._ishlnsubmul(N,1,c),_.isZero()||(_.negative^=1);w&&(w.words[c]=h)}return w&&w.strip(),_.strip(),k!=="div"&&g!==0&&_.iushrn(g),{div:w||null,mod:_}},U.prototype.divmod=function(j,k,g){if(G(!j.isZero()),this.isZero())return{div:new U(0),mod:new U(0)};var _,N,x;return this.negative!==0&&j.negative===0?(x=this.neg().divmod(j,k),k!=="mod"&&(_=x.div.neg()),k!=="div"&&(N=x.mod.neg(),g&&N.negative!==0&&N.iadd(j)),{div:_,mod:N}):this.negative===0&&j.negative!==0?(x=this.divmod(j.neg(),k),k!=="mod"&&(_=x.div.neg()),{div:_,mod:x.mod}):(this.negative&j.negative)!==0?(x=this.neg().divmod(j.neg(),k),k!=="div"&&(N=x.mod.neg(),g&&N.negative!==0&&N.isub(j)),{div:x.div,mod:N}):j.length>this.length||this.cmp(j)<0?{div:new U(0),mod:this}:j.length===1?k==="div"?{div:this.divn(j.words[0]),mod:null}:k==="mod"?{div:null,mod:new U(this.modn(j.words[0]))}:{div:this.divn(j.words[0]),mod:new U(this.modn(j.words[0]))}:this._wordDiv(j,k)},U.prototype.div=function(j){return this.divmod(j,"div",!1).div},U.prototype.mod=function(j){return this.divmod(j,"mod",!1).mod},U.prototype.umod=function(j){return this.divmod(j,"mod",!0).mod},U.prototype.divRound=function(j){var k=this.divmod(j);if(k.mod.isZero())return k.div;var g=k.div.negative!==0?k.mod.isub(j):k.mod,_=j.ushrn(1),N=j.andln(1),x=g.cmp(_);return x<0||N===1&&x===0?k.div:k.div.negative!==0?k.div.isubn(1):k.div.iaddn(1)},U.prototype.modn=function(j){G(j<=67108863);for(var k=(1<<26)%j,g=0,_=this.length-1;_>=0;_--)g=(k*g+(this.words[_]|0))%j;return g},U.prototype.idivn=function(j){G(j<=67108863);for(var k=0,g=this.length-1;g>=0;g--){var _=(this.words[g]|0)+k*67108864;this.words[g]=_/j|0,k=_%j}return this.strip()},U.prototype.divn=function(j){return this.clone().idivn(j)},U.prototype.egcd=function(j){G(j.negative===0),G(!j.isZero());var k=this,g=j.clone();k.negative!==0?k=k.umod(j):k=k.clone();for(var _=new U(1),N=new U(0),x=new U(0),B=new U(1),y=0;k.isEven()&&g.isEven();)k.iushrn(1),g.iushrn(1),++y;for(var w=g.clone(),p=k.clone();!k.isZero();){for(var f=0,c=1;(k.words[0]&c)===0&&f<26;++f,c<<=1);if(f>0)for(k.iushrn(f);f-- >0;)(_.isOdd()||N.isOdd())&&(_.iadd(w),N.isub(p)),_.iushrn(1),N.iushrn(1);for(var h=0,d=1;(g.words[0]&d)===0&&h<26;++h,d<<=1);if(h>0)for(g.iushrn(h);h-- >0;)(x.isOdd()||B.isOdd())&&(x.iadd(w),B.isub(p)),x.iushrn(1),B.iushrn(1);k.cmp(g)>=0?(k.isub(g),_.isub(x),N.isub(B)):(g.isub(k),x.isub(_),B.isub(N))}return{a:x,b:B,gcd:g.iushln(y)}},U.prototype._invmp=function(j){G(j.negative===0),G(!j.isZero());var k=this,g=j.clone();k.negative!==0?k=k.umod(j):k=k.clone();for(var _=new U(1),N=new U(0),x=g.clone();k.cmpn(1)>0&&g.cmpn(1)>0;){for(var B=0,y=1;(k.words[0]&y)===0&&B<26;++B,y<<=1);if(B>0)for(k.iushrn(B);B-- >0;)_.isOdd()&&_.iadd(x),_.iushrn(1);for(var w=0,p=1;(g.words[0]&p)===0&&w<26;++w,p<<=1);if(w>0)for(g.iushrn(w);w-- >0;)N.isOdd()&&N.iadd(x),N.iushrn(1);k.cmp(g)>=0?(k.isub(g),_.isub(N)):(g.isub(k),N.isub(_))}var f;return k.cmpn(1)===0?f=_:f=N,f.cmpn(0)<0&&f.iadd(j),f},U.prototype.gcd=function(j){if(this.isZero())return j.abs();if(j.isZero())return this.abs();var k=this.clone(),g=j.clone();k.negative=0,g.negative=0;for(var _=0;k.isEven()&&g.isEven();_++)k.iushrn(1),g.iushrn(1);do{for(;k.isEven();)k.iushrn(1);for(;g.isEven();)g.iushrn(1);var N=k.cmp(g);if(N<0){var x=k;k=g,g=x}else if(N===0||g.cmpn(1)===0)break;k.isub(g)}while(!0);return g.iushln(_)},U.prototype.invm=function(j){return this.egcd(j).a.umod(j)},U.prototype.isEven=function(){return(this.words[0]&1)===0},U.prototype.isOdd=function(){return(this.words[0]&1)===1},U.prototype.andln=function(j){return this.words[0]&j},U.prototype.bincn=function(j){G(typeof j=="number");var k=j%26,g=(j-k)/26,_=1<<k;if(this.length<=g)return this._expand(g+1),this.words[g]|=_,this;for(var N=_,x=g;N!==0&&x<this.length;x++){var B=this.words[x]|0;B+=N,N=B>>>26,B&=67108863,this.words[x]=B}return N!==0&&(this.words[x]=N,this.length++),this},U.prototype.isZero=function(){return this.length===1&&this.words[0]===0},U.prototype.cmpn=function(j){var k=j<0;if(this.negative!==0&&!k)return-1;if(this.negative===0&&k)return 1;this.strip();var g;if(this.length>1)g=1;else{k&&(j=-j),G(j<=67108863,"Number is too big");var _=this.words[0]|0;g=_===j?0:_<j?-1:1}return this.negative!==0?-g|0:g},U.prototype.cmp=function(j){if(this.negative!==0&&j.negative===0)return-1;if(this.negative===0&&j.negative!==0)return 1;var k=this.ucmp(j);return this.negative!==0?-k|0:k},U.prototype.ucmp=function(j){if(this.length>j.length)return 1;if(this.length<j.length)return-1;for(var k=0,g=this.length-1;g>=0;g--){var _=this.words[g]|0,N=j.words[g]|0;if(_!==N){_<N?k=-1:_>N&&(k=1);break}}return k},U.prototype.gtn=function(j){return this.cmpn(j)===1},U.prototype.gt=function(j){return this.cmp(j)===1},U.prototype.gten=function(j){return this.cmpn(j)>=0},U.prototype.gte=function(j){return this.cmp(j)>=0},U.prototype.ltn=function(j){return this.cmpn(j)===-1},U.prototype.lt=function(j){return this.cmp(j)===-1},U.prototype.lten=function(j){return this.cmpn(j)<=0},U.prototype.lte=function(j){return this.cmp(j)<=0},U.prototype.eqn=function(j){return this.cmpn(j)===0},U.prototype.eq=function(j){return this.cmp(j)===0},U.red=function(j){return new v(j)},U.prototype.toRed=function(j){return G(!this.red,"Already a number in reduction context"),G(this.negative===0,"red works only with positives"),j.convertTo(this)._forceRed(j)},U.prototype.fromRed=function(){return G(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},U.prototype._forceRed=function(j){return this.red=j,this},U.prototype.forceRed=function(j){return G(!this.red,"Already a number in reduction context"),this._forceRed(j)},U.prototype.redAdd=function(j){return G(this.red,"redAdd works only with red numbers"),this.red.add(this,j)},U.prototype.redIAdd=function(j){return G(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,j)},U.prototype.redSub=function(j){return G(this.red,"redSub works only with red numbers"),this.red.sub(this,j)},U.prototype.redISub=function(j){return G(this.red,"redISub works only with red numbers"),this.red.isub(this,j)},U.prototype.redShl=function(j){return G(this.red,"redShl works only with red numbers"),this.red.shl(this,j)},U.prototype.redMul=function(j){return G(this.red,"redMul works only with red numbers"),this.red._verify2(this,j),this.red.mul(this,j)},U.prototype.redIMul=function(j){return G(this.red,"redMul works only with red numbers"),this.red._verify2(this,j),this.red.imul(this,j)},U.prototype.redSqr=function(){return G(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},U.prototype.redISqr=function(){return G(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},U.prototype.redSqrt=function(){return G(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},U.prototype.redInvm=function(){return G(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},U.prototype.redNeg=function(){return G(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},U.prototype.redPow=function(j){return G(this.red&&!j.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,j)};var L={k256:null,p224:null,p192:null,p25519:null};function R(j,k){this.name=j,this.p=new U(k,16),this.n=this.p.bitLength(),this.k=new U(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}R.prototype._tmp=function(){var j=new U(null);return j.words=new Array(Math.ceil(this.n/13)),j},R.prototype.ireduce=function(j){var k=j,g;do this.split(k,this.tmp),k=this.imulK(k),k=k.iadd(this.tmp),g=k.bitLength();while(g>this.n);var _=g<this.n?-1:k.ucmp(this.p);return _===0?(k.words[0]=0,k.length=1):_>0?k.isub(this.p):k.strip!==void 0?k.strip():k._strip(),k},R.prototype.split=function(j,k){j.iushrn(this.n,0,k)},R.prototype.imulK=function(j){return j.imul(this.k)};function P(){R.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}V(P,R),P.prototype.split=function(j,k){for(var g=4194303,_=Math.min(j.length,9),N=0;N<_;N++)k.words[N]=j.words[N];if(k.length=_,j.length<=9){j.words[0]=0,j.length=1;return}var x=j.words[9];for(k.words[k.length++]=x&g,N=10;N<j.length;N++){var B=j.words[N]|0;j.words[N-10]=(B&g)<<4|x>>>22,x=B}x>>>=22,j.words[N-10]=x,x===0&&j.length>10?j.length-=10:j.length-=9},P.prototype.imulK=function(j){j.words[j.length]=0,j.words[j.length+1]=0,j.length+=2;for(var k=0,g=0;g<j.length;g++){var _=j.words[g]|0;k+=_*977,j.words[g]=k&67108863,k=_*64+(k/67108864|0)}return j.words[j.length-1]===0&&(j.length--,j.words[j.length-1]===0&&j.length--),j};function z(){R.call(this,"p224","ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001")}V(z,R);function M(){R.call(this,"p192","ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff")}V(M,R);function S(){R.call(this,"25519","7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed")}V(S,R),S.prototype.imulK=function(j){for(var k=0,g=0;g<j.length;g++){var _=(j.words[g]|0)*19+k,N=_&67108863;_>>>=26,j.words[g]=N,k=_}return k!==0&&(j.words[j.length++]=k),j},U._prime=function(j){if(L[j])return L[j];var k;if(j==="k256")k=new P;else if(j==="p224")k=new z;else if(j==="p192")k=new M;else if(j==="p25519")k=new S;else throw new Error("Unknown prime "+j);return L[j]=k,k};function v(j){if(typeof j=="string"){var k=U._prime(j);this.m=k.p,this.prime=k}else G(j.gtn(1),"modulus must be greater than 1"),this.m=j,this.prime=null}v.prototype._verify1=function(j){G(j.negative===0,"red works only with positives"),G(j.red,"red works only with red numbers")},v.prototype._verify2=function(j,k){G((j.negative|k.negative)===0,"red works only with positives"),G(j.red&&j.red===k.red,"red works only with red numbers")},v.prototype.imod=function(j){return this.prime?this.prime.ireduce(j)._forceRed(this):j.umod(this.m)._forceRed(this)},v.prototype.neg=function(j){return j.isZero()?j.clone():this.m.sub(j)._forceRed(this)},v.prototype.add=function(j,k){this._verify2(j,k);var g=j.add(k);return g.cmp(this.m)>=0&&g.isub(this.m),g._forceRed(this)},v.prototype.iadd=function(j,k){this._verify2(j,k);var g=j.iadd(k);return g.cmp(this.m)>=0&&g.isub(this.m),g},v.prototype.sub=function(j,k){this._verify2(j,k);var g=j.sub(k);return g.cmpn(0)<0&&g.iadd(this.m),g._forceRed(this)},v.prototype.isub=function(j,k){this._verify2(j,k);var g=j.isub(k);return g.cmpn(0)<0&&g.iadd(this.m),g},v.prototype.shl=function(j,k){return this._verify1(j),this.imod(j.ushln(k))},v.prototype.imul=function(j,k){return this._verify2(j,k),this.imod(j.imul(k))},v.prototype.mul=function(j,k){return this._verify2(j,k),this.imod(j.mul(k))},v.prototype.isqr=function(j){return this.imul(j,j.clone())},v.prototype.sqr=function(j){return this.mul(j,j)},v.prototype.sqrt=function(j){if(j.isZero())return j.clone();var k=this.m.andln(3);if(G(k%2===1),k===3){var g=this.m.add(new U(1)).iushrn(2);return this.pow(j,g)}for(var _=this.m.subn(1),N=0;!_.isZero()&&_.andln(1)===0;)N++,_.iushrn(1);G(!_.isZero());var x=new U(1).toRed(this),B=x.redNeg(),y=this.m.subn(1).iushrn(1),w=this.m.bitLength();for(w=new U(2*w*w).toRed(this);this.pow(w,y).cmp(B)!==0;)w.redIAdd(B);for(var p=this.pow(w,_),f=this.pow(j,_.addn(1).iushrn(1)),c=this.pow(j,_),h=N;c.cmp(x)!==0;){for(var d=c,b=0;d.cmp(x)!==0;b++)d=d.redSqr();G(b<h);var l=this.pow(p,new U(1).iushln(h-b-1));f=f.redMul(l),p=l.redSqr(),c=c.redMul(p),h=b}return f},v.prototype.invm=function(j){var k=j._invmp(this.m);return k.negative!==0?(k.negative=0,this.imod(k).redNeg()):this.imod(k)},v.prototype.pow=function(j,k){if(k.isZero())return new U(1).toRed(this);if(k.cmpn(1)===0)return j.clone();var g=4,_=new Array(1<<g);_[0]=new U(1).toRed(this),_[1]=j;for(var N=2;N<_.length;N++)_[N]=this.mul(_[N-1],j);var x=_[0],B=0,y=0,w=k.bitLength()%26;for(w===0&&(w=26),N=k.length-1;N>=0;N--){for(var p=k.words[N],f=w-1;f>=0;f--){var c=p>>f&1;if(x!==_[0]&&(x=this.sqr(x)),c===0&&B===0){y=0;continue}B<<=1,B|=c,y++,!(y!==g&&(N!==0||f!==0))&&(x=this.mul(x,_[B]),y=0,B=0)}w=26}return x},v.prototype.convertTo=function(j){var k=j.umod(this.m);return k===j?k.clone():k},v.prototype.convertFrom=function(j){var k=j.clone();return k.red=null,k},U.mont=function(j){return new q(j)};function q(j){v.call(this,j),this.shift=this.m.bitLength(),this.shift%26!==0&&(this.shift+=26-this.shift%26),this.r=new U(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)}V(q,v),q.prototype.convertTo=function(j){return this.imod(j.ushln(this.shift))},q.prototype.convertFrom=function(j){var k=this.imod(j.mul(this.rinv));return k.red=null,k},q.prototype.imul=function(j,k){if(j.isZero()||k.isZero())return j.words[0]=0,j.length=1,j;var g=j.imul(k),_=g.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),N=g.isub(_).iushrn(this.shift),x=N;return N.cmp(this.m)>=0?x=N.isub(this.m):N.cmpn(0)<0&&(x=N.iadd(this.m)),x._forceRed(this)},q.prototype.mul=function(j,k){if(j.isZero()||k.isZero())return new U(0)._forceRed(this);var g=j.mul(k),_=g.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),N=g.isub(_).iushrn(this.shift),x=N;return N.cmp(this.m)>=0?x=N.isub(this.m):N.cmpn(0)<0&&(x=N.iadd(this.m)),x._forceRed(this)},q.prototype.invm=function(j){var k=this.imod(j._invmp(this.m).mul(this.r2));return k._forceRed(this)}})(typeof Q>"u"||Q,$)}}),{CryptoHasher:sY}=globalThis.Bun,tY=q$({"node_modules/public-encrypt/withPublic.js"($,Q){var Y=nY(),Z=k$().Buffer;function G(V,U){return Z.from(V.toRed(Y.mont(U.modulus)).redPow(new Y(U.publicExponent)).fromRed().toArray())}Q.exports=G}}),mY=q$({"node_modules/public-encrypt/publicEncrypt.js"($,Q){var Y=pY(),Z=g$(),G=o$(),V=oY(),U=uY(),X=nY(),K=tY(),I=hQ(),O=k$().Buffer;Q.exports=function(H,W,E){var T;H.padding?T=H.padding:E?T=1:T=4;var D=Y(H),C;if(T===4)C=J(D,W);else if(T===1)C=F(D,W,E);else if(T===3){if(C=new X(W),C.cmp(D.modulus)>=0)throw new Error("data too long for modulus")}else throw new Error("unknown padding");return E?I(C,D):K(C,D)};function J(H,W){var E=H.modulus.byteLength(),T=W.length,D=G("sha1").update(O.alloc(0)).digest(),C=D.length,L=2*C;if(T>E-L-2)throw new Error("message too long");var R=O.alloc(E-T-L-2),P=E-C-1,z=Z(C),M=U(O.concat([D,R,O.alloc(1,1),W],P),V(z,P)),S=U(z,V(M,C));return new X(O.concat([O.alloc(1),S,M],E))}function F(H,W,E){var T=W.length,D=H.modulus.byteLength();if(T>D-11)throw new Error("message too long");var C;return E?C=O.alloc(D-T-3,255):C=A(D-T-3),new X(O.concat([O.from([0,E?1:2]),C,O.alloc(1),W],D))}function A(H){for(var W=O.allocUnsafe(H),E=0,T=Z(H*2),D=0,C;E<H;)D===T.length&&(T=Z(H*2),D=0),C=T[D++],C&&(W[E++]=C);return W}}}),aY=q$({"node_modules/public-encrypt/privateDecrypt.js"($,Q){var Y=pY(),Z=oY(),G=uY(),V=nY(),U=hQ(),X=o$(),K=tY(),I=k$().Buffer;Q.exports=function(A,H,W){var E;A.padding?E=A.padding:W?E=1:E=4;var T=Y(A),D=T.modulus.byteLength();if(H.length>D||new V(H).cmp(T.modulus)>=0)throw new Error("decryption error");var C;W?C=K(new V(H),T):C=U(H,T);var L=I.alloc(D-C.length);if(C=I.concat([L,C],D),E===4)return O(T,C);if(E===1)return J(T,C,W);if(E===3)return C;throw new Error("unknown padding")};function O(A,H){var W=A.modulus.byteLength(),E=X("sha1").update(I.alloc(0)).digest(),T=E.length;if(H[0]!==0)throw new Error("decryption error");var D=H.slice(1,T+1),C=H.slice(T+1),L=G(D,Z(C,T)),R=G(C,Z(L,W-T-1));if(F(E,R.slice(0,T)))throw new Error("decryption error");for(var P=T;R[P]===0;)P++;if(R[P++]!==1)throw new Error("decryption error");return R.slice(P)}function J(A,H,W){for(var E=H.slice(0,2),T=2,D=0;H[T++]!==0;)if(T>=H.length){D++;break}var C=H.slice(2,T-1);if((E.toString("hex")!=="0002"&&!W||E.toString("hex")!=="0001"&&W)&&D++,C.length<8&&D++,D)throw new Error("decryption error");return H.slice(T)}function F(A,H){A=I.from(A),H=I.from(H);var W=0,E=A.length;A.length!==H.length&&(W++,E=Math.min(A.length,H.length));for(var T=-1;++T<E;)W+=A[T]^H[T];return W}}}),eY=q$({"node_modules/public-encrypt/browser.js"($){$.publicEncrypt=mY(),$.privateDecrypt=aY(),$.privateEncrypt=function(Q,Y){return $.publicEncrypt(Q,Y,!0)},$.publicDecrypt=function(Q,Y){return $.privateDecrypt(Q,Y,!0)}}}),rY=q$({"node_modules/randomfill/browser.js"($){var Q=k$(),Y=g$(),Z=Q.Buffer,G=Q.kMaxLength,V=Math.pow(2,32)-1;function U(J,F){if(typeof J!="number"||J!==J)throw new TypeError("offset must be a number");if(J>V||J<0)throw new TypeError("offset must be a uint32");if(J>G||J>F)throw new RangeError("offset out of range")}function X(J,F,A){if(typeof J!="number"||J!==J)throw new TypeError("size must be a number");if(J>V||J<0)throw new TypeError("size must be a uint32");if(J+F>A||J>G)throw new RangeError("buffer too small")}$.randomFill=K,$.randomFillSync=O;function K(J,F,A,H){if(!Z.isBuffer(J)&&!(J instanceof global.Uint8Array))throw new TypeError('"buf" argument must be a Buffer or Uint8Array');if(typeof F=="function")H=F,F=0,A=J.length;else if(typeof A=="function")H=A,A=J.length-F;else if(typeof H!="function")throw new TypeError('"cb" argument must be a function');return U(F,J.length),X(A,F,J.length),I(J,F,A,H)}function I(J,F,A,H){if(H){Y(A,function(E,T){if(E)return H(E);T.copy(J,F),H(null,J)});return}var W=Y(A);return W.copy(J,F),J}function O(J,F,A){if(typeof F>"u"&&(F=0),!Z.isBuffer(J)&&!(J instanceof global.Uint8Array))throw new TypeError('"buf" argument must be a Buffer or Uint8Array');return U(F,J.length),A===void 0&&(A=J.length-F),X(A,F,J.length),I(J,F,A)}}}),iY=q$({"node_modules/crypto-browserify/index.js"($){$.randomBytes=$.rng=$.pseudoRandomBytes=$.prng=g$(),$.createHash=o$(),$.Hash=$.createHash.Hash,$.createHmac=$.Hmac=s$();var Q=m$(),Y=Object.keys(Q),Z=["sha1","sha224","sha256","sha384","sha512","md5","rmd160"].concat(Y);$.getHashes=function(){return Z};var G=QQ();$.pbkdf2=G.pbkdf2,$.pbkdf2Sync=G.pbkdf2Sync;var V=kQ();$.Cipher=V.Cipher,$.createCipher=V.createCipher,$.Cipheriv=V.Cipheriv,$.createCipheriv=V.createCipheriv,$.Decipher=V.Decipher,$.createDecipher=V.createDecipher,$.Decipheriv=V.Decipheriv,$.createDecipheriv=V.createDecipheriv,$.getCiphers=V.getCiphers,$.listCiphers=V.listCiphers;var U=fQ();$.DiffieHellmanGroup=U.DiffieHellmanGroup,$.createDiffieHellmanGroup=U.createDiffieHellmanGroup,$.getDiffieHellman=U.getDiffieHellman,$.createDiffieHellman=U.createDiffieHellman,$.DiffieHellman=U.DiffieHellman;var X=dY();$.createSign=X.createSign,$.Sign=X.Sign,$.createVerify=X.createVerify,$.Verify=X.Verify,$.createECDH=lY();var K=eY();$.publicEncrypt=K.publicEncrypt,$.privateEncrypt=K.privateEncrypt,$.publicDecrypt=K.publicDecrypt,$.privateDecrypt=K.privateDecrypt,$.getRandomValues=(O)=>H$.getRandomValues(O);var I=rY();$.randomFill=I.randomFill,$.randomFillSync=I.randomFillSync,$.createCredentials=function(){throw new Error(["sorry, createCredentials is not implemented yet","we accept pull requests","https://github.com/crypto-browserify/crypto-browserify"].join(` +`))},$.constants={DH_CHECK_P_NOT_SAFE_PRIME:2,DH_CHECK_P_NOT_PRIME:1,DH_UNABLE_TO_CHECK_GENERATOR:4,DH_NOT_SUITABLE_GENERATOR:8,NPN_ENABLED:1,ALPN_ENABLED:1,RSA_PKCS1_PADDING:1,RSA_SSLV23_PADDING:2,RSA_NO_PADDING:3,RSA_PKCS1_OAEP_PADDING:4,RSA_X931_PADDING:5,RSA_PKCS1_PSS_PADDING:6,POINT_CONVERSION_COMPRESSED:2,POINT_CONVERSION_UNCOMPRESSED:4,POINT_CONVERSION_HYBRID:6}}}),$Z={...iY(),[Symbol.for("CommonJS")]:0},T$="buffer",QZ=($)=>H$.getRandomValues($),YZ=()=>H$.randomUUID(),ZZ=(...$)=>H$.randomInt(...$),D$="timingSafeEqual"in H$?($,Q)=>{let{byteLength:Y}=$,{byteLength:Z}=Q;if(typeof Y!="number"||typeof Z!="number")throw new TypeError("Input must be an array buffer view");if(Y!==Z)throw new RangeError("Input buffers must have the same length");return H$.timingSafeEqual($,Q)}:void 0,GZ="scryptSync"in H$?($,Q,Y,Z)=>{let G=H$.scryptSync($,Q,Y,Z);return T$!=="buffer"?new F$(G).toString(T$):new F$(G)}:void 0,VZ="scryptSync"in H$?function($,Q,Y,Z,G){if(typeof Z=="function"&&(G=Z,Z=void 0),typeof G!="function"){var V=new TypeError("callback must be a function");throw V.code="ERR_INVALID_CALLBACK",V}try{let U=H$.scryptSync($,Q,Y,Z);process.nextTick(G,null,T$!=="buffer"?new F$(U).toString(T$):new F$(U))}catch(U){throw U}}:void 0;D$&&(Object.defineProperty(D$,"name",{value:"::bunternal::"}),Object.defineProperty(VZ,"name",{value:"::bunternal::"}),Object.defineProperty(GZ,"name",{value:"::bunternal::"}));var C$=H$;j$($Z,{DEFAULT_ENCODING:()=>T$,getRandomValues:()=>QZ,randomUUID:()=>YZ,randomInt:()=>ZZ,scrypt:()=>VZ,scryptSync:()=>GZ,timingSafeEqual:()=>D$,webcrypto:()=>C$,subtle:()=>C$.subtle});var{randomBytes:UZ,rng:XZ,pseudoRandomBytes:KZ,prng:IZ,Hash:OZ,createHash:JZ,createHmac:FZ,Hmac:AZ,getHashes:HZ,pbkdf2:WZ,pbkdf2Sync:EZ,Cipher:TZ,createCipher:DZ,Cipheriv:CZ,createCipheriv:LZ,Decipher:RZ,createDecipher:PZ,Decipheriv:zZ,createDecipheriv:MZ,getCiphers:SZ,listCiphers:vZ,DiffieHellmanGroup:qZ,createDiffieHellmanGroup:jZ,getDiffieHellman:kZ,createDiffieHellman:gZ,DiffieHellman:_Z,createSign:NZ,Sign:xZ,createVerify:BZ,Verify:yZ,createECDH:wZ,publicEncrypt:pZ,privateEncrypt:fZ,publicDecrypt:cZ,privateDecrypt:hZ,randomFill:dZ,randomFillSync:bZ,createCredentials:lZ,constants:oZ}=$Z;var nZ=$Z;/*! safe-buffer. MIT License. Feross Aboukhadijeh <https://feross.org/opensource> */export{C$ as webcrypto,D$ as timingSafeEqual,GZ as scryptSync,VZ as scrypt,XZ as rng,YZ as randomUUID,bZ as randomFillSync,dZ as randomFill,UZ as randomBytes,pZ as publicEncrypt,cZ as publicDecrypt,KZ as pseudoRandomBytes,IZ as prng,fZ as privateEncrypt,hZ as privateDecrypt,EZ as pbkdf2Sync,WZ as pbkdf2,vZ as listCiphers,QZ as getRandomValues,HZ as getHashes,kZ as getDiffieHellman,SZ as getCiphers,nZ as default,BZ as createVerify,NZ as createSign,FZ as createHmac,JZ as createHash,wZ as createECDH,jZ as createDiffieHellmanGroup,gZ as createDiffieHellman,MZ as createDecipheriv,PZ as createDecipher,lZ as createCredentials,LZ as createCipheriv,DZ as createCipher,oZ as constants,yZ as Verify,xZ as Sign,AZ as Hmac,OZ as Hash,qZ as DiffieHellmanGroup,_Z as DiffieHellman,zZ as Decipheriv,RZ as Decipher,T$ as DEFAULT_ENCODING,CZ as Cipheriv,TZ as Cipher}; diff --git a/test/js/node/crypto/node-crypto.test.js b/test/js/node/crypto/node-crypto.test.js index 9e0e7f396..5a68540cf 100644 --- a/test/js/node/crypto/node-crypto.test.js +++ b/test/js/node/crypto/node-crypto.test.js @@ -8,6 +8,27 @@ it("crypto.randomBytes should return a Buffer", () => { expect(Buffer.isBuffer(crypto.randomBytes(1))).toBe(true); }); +it("crypto.randomInt should return a number", () => { + const result = crypto.randomInt(0, 10); + expect(typeof result).toBe("number"); + expect(result).toBeGreaterThanOrEqual(0); + expect(result).toBeLessThanOrEqual(10); +}); + +it("crypto.randomInt with no arguments", () => { + const result = crypto.randomInt(); + expect(typeof result).toBe("number"); + expect(result).toBeGreaterThanOrEqual(0); + expect(result).toBeLessThanOrEqual(Number.MAX_SAFE_INTEGER); +}); + +it("crypto.randomInt with one argument", () => { + const result = crypto.randomInt(100); + expect(typeof result).toBe("number"); + expect(result).toBeGreaterThanOrEqual(0); + expect(result).toBeLessThanOrEqual(100); +}); + // https://github.com/oven-sh/bun/issues/1839 describe("createHash", () => { it("update & digest", () => { |