4604 lines
255 KiB
JavaScript
Executable File
4604 lines
255 KiB
JavaScript
Executable File
var e = {
|
||
|
||
|
||
/** 算法 **/
|
||
7691: (e, t, n) => {
|
||
"use strict";
|
||
n.d(t, {
|
||
I2: () => he, np: () => pe, PB: () => de, S8: () => ue, gR: () => ce
|
||
});
|
||
var r = n(6111), i = n.n(r);
|
||
|
||
function o(e) {
|
||
return "0123456789abcdefghijklmnopqrstuvwxyz".charAt(e)
|
||
}
|
||
|
||
function s(e, t) {
|
||
return e & t
|
||
}
|
||
|
||
function a(e, t) {
|
||
return e | t
|
||
}
|
||
|
||
function l(e, t) {
|
||
return e ^ t
|
||
}
|
||
|
||
function c(e, t) {
|
||
return e & ~t
|
||
}
|
||
|
||
function u(e) {
|
||
if (0 == e) return -1;
|
||
var t = 0;
|
||
return 0 == (65535 & e) && (e >>= 16, t += 16), 0 == (255 & e) && (e >>= 8, t += 8), 0 == (15 & e) && (e >>= 4, t += 4), 0 == (3 & e) && (e >>= 2, t += 2), 0 == (1 & e) && ++t, t
|
||
}
|
||
|
||
function d(e) {
|
||
for (var t = 0; 0 != e;) e &= e - 1, ++t;
|
||
return t
|
||
}
|
||
|
||
var p, h = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
|
||
|
||
function f(e) {
|
||
var t, n, r = "";
|
||
for (t = 0; t + 3 <= e.length; t += 3) n = parseInt(e.substring(t, t + 3), 16), r += h.charAt(n >> 6) + h.charAt(63 & n);
|
||
for (t + 1 == e.length ? (n = parseInt(e.substring(t, t + 1), 16), r += h.charAt(n << 2)) : t + 2 == e.length && (n = parseInt(e.substring(t, t + 2), 16), r += h.charAt(n >> 2) + h.charAt((3 & n) << 4)); (3 & r.length) > 0;) r += "=";
|
||
return r
|
||
}
|
||
|
||
function m(e) {
|
||
var t, n = "", r = 0, i = 0;
|
||
for (t = 0; t < e.length && "=" != e.charAt(t); ++t) {
|
||
var s = h.indexOf(e.charAt(t));
|
||
s < 0 || (0 == r ? (n += o(s >> 2), i = 3 & s, r = 1) : 1 == r ? (n += o(i << 2 | s >> 4), i = 15 & s, r = 2) : 2 == r ? (n += o(i), n += o(s >> 2), i = 3 & s, r = 3) : (n += o(i << 2 | s >> 4), n += o(15 & s), r = 0))
|
||
}
|
||
return 1 == r && (n += o(i << 2)), n
|
||
}
|
||
|
||
var g, v = function (e) {
|
||
var t;
|
||
if (void 0 === p) {
|
||
var n = "0123456789ABCDEF", r = " \f\n\r\t\xa0\u2028\u2029";
|
||
for (p = {}, t = 0; t < 16; ++t) p[n.charAt(t)] = t;
|
||
for (n = n.toLowerCase(), t = 10; t < 16; ++t) p[n.charAt(t)] = t;
|
||
for (t = 0; t < 8; ++t) p[r.charAt(t)] = -1
|
||
}
|
||
var i = [], o = 0, s = 0;
|
||
for (t = 0; t < e.length; ++t) {
|
||
var a = e.charAt(t);
|
||
if ("=" == a) break;
|
||
if (-1 != (a = p[a])) {
|
||
if (void 0 === a) throw new Error("Illegal character at offset " + t);
|
||
o |= a, ++s >= 2 ? (i[i.length] = o, o = 0, s = 0) : o <<= 4
|
||
}
|
||
}
|
||
if (s) throw new Error("Hex encoding incomplete: 4 bits missing");
|
||
return i
|
||
}, y = {
|
||
decode: function (e) {
|
||
var t;
|
||
if (void 0 === g) {
|
||
var n = "= \f\n\r\t\xa0\u2028\u2029";
|
||
for (g = Object.create(null), t = 0; t < 64; ++t) g["ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt(t)] = t;
|
||
for (g["-"] = 62, g._ = 63, t = 0; t < 9; ++t) g[n.charAt(t)] = -1
|
||
}
|
||
var r = [], i = 0, o = 0;
|
||
for (t = 0; t < e.length; ++t) {
|
||
var s = e.charAt(t);
|
||
if ("=" == s) break;
|
||
if (-1 != (s = g[s])) {
|
||
if (void 0 === s) throw new Error("Illegal character at offset " + t);
|
||
i |= s, ++o >= 4 ? (r[r.length] = i >> 16, r[r.length] = i >> 8 & 255, r[r.length] = 255 & i, i = 0, o = 0) : i <<= 6
|
||
}
|
||
}
|
||
switch (o) {
|
||
case 1:
|
||
throw new Error("Base64 encoding incomplete: at least 2 bits missing");
|
||
case 2:
|
||
r[r.length] = i >> 10;
|
||
break;
|
||
case 3:
|
||
r[r.length] = i >> 16, r[r.length] = i >> 8 & 255
|
||
}
|
||
return r
|
||
},
|
||
re: /-----BEGIN [^-]+-----([A-Za-z0-9+\/=\s]+)-----END [^-]+-----|begin-base64[^\n]+\n([A-Za-z0-9+\/=\s]+)====/,
|
||
unarmor: function (e) {
|
||
var t = y.re.exec(e);
|
||
if (t) if (t[1]) e = t[1]; else {
|
||
if (!t[2]) throw new Error("RegExp out of sync");
|
||
e = t[2]
|
||
}
|
||
return y.decode(e)
|
||
}
|
||
}, x = 1e13, b = function () {
|
||
function e(e) {
|
||
this.buf = [+e || 0]
|
||
}
|
||
|
||
return e.prototype.mulAdd = function (e, t) {
|
||
var n, r, i = this.buf, o = i.length;
|
||
for (n = 0; n < o; ++n) (r = i[n] * e + t) < x ? t = 0 : r -= (t = 0 | r / x) * x, i[n] = r;
|
||
t > 0 && (i[n] = t)
|
||
}
|
||
, e.prototype.sub = function (e) {
|
||
var t, n, r = this.buf, i = r.length;
|
||
for (t = 0; t < i; ++t) (n = r[t] - e) < 0 ? (n += x, e = 1) : e = 0, r[t] = n;
|
||
for (; 0 === r[r.length - 1];) r.pop()
|
||
}
|
||
, e.prototype.toString = function (e) {
|
||
if (10 != (e || 10)) throw new Error("only base 10 is supported");
|
||
for (var t = this.buf, n = t[t.length - 1].toString(), r = t.length - 2; r >= 0; --r) n += (x + t[r]).toString().substring(1);
|
||
return n
|
||
}
|
||
, e.prototype.valueOf = function () {
|
||
for (var e = this.buf, t = 0, n = e.length - 1; n >= 0; --n) t = t * x + e[n];
|
||
return t
|
||
}
|
||
, e.prototype.simplify = function () {
|
||
var e = this.buf;
|
||
return 1 == e.length ? e[0] : this
|
||
}
|
||
, e
|
||
}(),
|
||
w = /^(\d\d)(0[1-9]|1[0-2])(0[1-9]|[12]\d|3[01])([01]\d|2[0-3])(?:([0-5]\d)(?:([0-5]\d)(?:[.,](\d{1,3}))?)?)?(Z|[-+](?:[0]\d|1[0-2])([0-5]\d)?)?$/,
|
||
S = /^(\d\d\d\d)(0[1-9]|1[0-2])(0[1-9]|[12]\d|3[01])([01]\d|2[0-3])(?:([0-5]\d)(?:([0-5]\d)(?:[.,](\d{1,3}))?)?)?(Z|[-+](?:[0]\d|1[0-2])([0-5]\d)?)?$/;
|
||
|
||
function k(e, t) {
|
||
return e.length > t && (e = e.substring(0, t) + "\u2026"), e
|
||
}
|
||
|
||
var C, j = function () {
|
||
function e(t, n) {
|
||
this.hexDigits = "0123456789ABCDEF", t instanceof e ? (this.enc = t.enc, this.pos = t.pos) : (this.enc = t, this.pos = n)
|
||
}
|
||
|
||
return e.prototype.get = function (e) {
|
||
if (void 0 === e && (e = this.pos++), e >= this.enc.length) throw new Error("Requesting byte offset ".concat(e, " on a stream of length ").concat(this.enc.length));
|
||
return "string" === typeof this.enc ? this.enc.charCodeAt(e) : this.enc[e]
|
||
}
|
||
, e.prototype.hexByte = function (e) {
|
||
return this.hexDigits.charAt(e >> 4 & 15) + this.hexDigits.charAt(15 & e)
|
||
}
|
||
, e.prototype.hexDump = function (e, t, n) {
|
||
for (var r = "", i = e; i < t; ++i) if (r += this.hexByte(this.get(i)), !0 !== n) switch (15 & i) {
|
||
case 7:
|
||
r += " ";
|
||
break;
|
||
case 15:
|
||
r += "\n";
|
||
break;
|
||
default:
|
||
r += " "
|
||
}
|
||
return r
|
||
}
|
||
, e.prototype.isASCII = function (e, t) {
|
||
for (var n = e; n < t; ++n) {
|
||
var r = this.get(n);
|
||
if (r < 32 || r > 176) return !1
|
||
}
|
||
return !0
|
||
}
|
||
, e.prototype.parseStringISO = function (e, t) {
|
||
for (var n = "", r = e; r < t; ++r) n += String.fromCharCode(this.get(r));
|
||
return n
|
||
}
|
||
, e.prototype.parseStringUTF = function (e, t) {
|
||
for (var n = "", r = e; r < t;) {
|
||
var i = this.get(r++);
|
||
n += i < 128 ? String.fromCharCode(i) : i > 191 && i < 224 ? String.fromCharCode((31 & i) << 6 | 63 & this.get(r++)) : String.fromCharCode((15 & i) << 12 | (63 & this.get(r++)) << 6 | 63 & this.get(r++))
|
||
}
|
||
return n
|
||
}
|
||
, e.prototype.parseStringBMP = function (e, t) {
|
||
for (var n, r, i = "", o = e; o < t;) n = this.get(o++), r = this.get(o++), i += String.fromCharCode(n << 8 | r);
|
||
return i
|
||
}
|
||
, e.prototype.parseTime = function (e, t, n) {
|
||
var r = this.parseStringISO(e, t), i = (n ? w : S).exec(r);
|
||
return i ? (n && (i[1] = +i[1], i[1] += +i[1] < 70 ? 2e3 : 1900), r = i[1] + "-" + i[2] + "-" + i[3] + " " + i[4], i[5] && (r += ":" + i[5], i[6] && (r += ":" + i[6], i[7] && (r += "." + i[7]))), i[8] && (r += " UTC", "Z" != i[8] && (r += i[8], i[9] && (r += ":" + i[9]))), r) : "Unrecognized time: " + r
|
||
}
|
||
, e.prototype.parseInteger = function (e, t) {
|
||
for (var n, r = this.get(e), i = r > 127, o = i ? 255 : 0, s = ""; r == o && ++e < t;) r = this.get(e);
|
||
if (0 === (n = t - e)) return i ? -1 : 0;
|
||
if (n > 4) {
|
||
for (s = r, n <<= 3; 0 == (128 & (+s ^ o));) s = +s << 1, --n;
|
||
s = "(" + n + " bit)\n"
|
||
}
|
||
i && (r -= 256);
|
||
for (var a = new b(r), l = e + 1; l < t; ++l) a.mulAdd(256, this.get(l));
|
||
return s + a.toString()
|
||
}
|
||
, e.prototype.parseBitString = function (e, t, n) {
|
||
for (var r = this.get(e), i = "(" + ((t - e - 1 << 3) - r) + " bit)\n", o = "", s = e + 1; s < t; ++s) {
|
||
for (var a = this.get(s), l = s == t - 1 ? r : 0, c = 7; c >= l; --c) o += a >> c & 1 ? "1" : "0";
|
||
if (o.length > n) return i + k(o, n)
|
||
}
|
||
return i + o
|
||
}
|
||
, e.prototype.parseOctetString = function (e, t, n) {
|
||
if (this.isASCII(e, t)) return k(this.parseStringISO(e, t), n);
|
||
var r = t - e, i = "(" + r + " byte)\n";
|
||
r > (n /= 2) && (t = e + n);
|
||
for (var o = e; o < t; ++o) i += this.hexByte(this.get(o));
|
||
return r > n && (i += "\u2026"), i
|
||
}
|
||
, e.prototype.parseOID = function (e, t, n) {
|
||
for (var r = "", i = new b, o = 0, s = e; s < t; ++s) {
|
||
var a = this.get(s);
|
||
if (i.mulAdd(128, 127 & a), o += 7, !(128 & a)) {
|
||
if ("" === r) if ((i = i.simplify()) instanceof b) i.sub(80), r = "2." + i.toString(); else {
|
||
var l = i < 80 ? i < 40 ? 0 : 1 : 2;
|
||
r = l + "." + (i - 40 * l)
|
||
} else r += "." + i.toString();
|
||
if (r.length > n) return k(r, n);
|
||
i = new b, o = 0
|
||
}
|
||
}
|
||
return o > 0 && (r += ".incomplete"), r
|
||
}
|
||
, e
|
||
}(), E = function () {
|
||
function e(e, t, n, r, i) {
|
||
if (!(r instanceof T)) throw new Error("Invalid tag value.");
|
||
this.stream = e, this.header = t, this.length = n, this.tag = r, this.sub = i
|
||
}
|
||
|
||
return e.prototype.typeName = function () {
|
||
switch (this.tag.tagClass) {
|
||
case 0:
|
||
switch (this.tag.tagNumber) {
|
||
case 0:
|
||
return "EOC";
|
||
case 1:
|
||
return "BOOLEAN";
|
||
case 2:
|
||
return "INTEGER";
|
||
case 3:
|
||
return "BIT_STRING";
|
||
case 4:
|
||
return "OCTET_STRING";
|
||
case 5:
|
||
return "NULL";
|
||
case 6:
|
||
return "OBJECT_IDENTIFIER";
|
||
case 7:
|
||
return "ObjectDescriptor";
|
||
case 8:
|
||
return "EXTERNAL";
|
||
case 9:
|
||
return "REAL";
|
||
case 10:
|
||
return "ENUMERATED";
|
||
case 11:
|
||
return "EMBEDDED_PDV";
|
||
case 12:
|
||
return "UTF8String";
|
||
case 16:
|
||
return "SEQUENCE";
|
||
case 17:
|
||
return "SET";
|
||
case 18:
|
||
return "NumericString";
|
||
case 19:
|
||
return "PrintableString";
|
||
case 20:
|
||
return "TeletexString";
|
||
case 21:
|
||
return "VideotexString";
|
||
case 22:
|
||
return "IA5String";
|
||
case 23:
|
||
return "UTCTime";
|
||
case 24:
|
||
return "GeneralizedTime";
|
||
case 25:
|
||
return "GraphicString";
|
||
case 26:
|
||
return "VisibleString";
|
||
case 27:
|
||
return "GeneralString";
|
||
case 28:
|
||
return "UniversalString";
|
||
case 30:
|
||
return "BMPString"
|
||
}
|
||
return "Universal_" + this.tag.tagNumber.toString();
|
||
case 1:
|
||
return "Application_" + this.tag.tagNumber.toString();
|
||
case 2:
|
||
return "[" + this.tag.tagNumber.toString() + "]";
|
||
case 3:
|
||
return "Private_" + this.tag.tagNumber.toString()
|
||
}
|
||
}
|
||
, e.prototype.content = function (e) {
|
||
if (void 0 === this.tag) return null;
|
||
void 0 === e && (e = 1 / 0);
|
||
var t = this.posContent(), n = Math.abs(this.length);
|
||
if (!this.tag.isUniversal()) return null !== this.sub ? "(" + this.sub.length + " elem)" : this.stream.parseOctetString(t, t + n, e);
|
||
switch (this.tag.tagNumber) {
|
||
case 1:
|
||
return 0 === this.stream.get(t) ? "false" : "true";
|
||
case 2:
|
||
return this.stream.parseInteger(t, t + n);
|
||
case 3:
|
||
return this.sub ? "(" + this.sub.length + " elem)" : this.stream.parseBitString(t, t + n, e);
|
||
case 4:
|
||
return this.sub ? "(" + this.sub.length + " elem)" : this.stream.parseOctetString(t, t + n, e);
|
||
case 6:
|
||
return this.stream.parseOID(t, t + n, e);
|
||
case 16:
|
||
case 17:
|
||
return null !== this.sub ? "(" + this.sub.length + " elem)" : "(no elem)";
|
||
case 12:
|
||
return k(this.stream.parseStringUTF(t, t + n), e);
|
||
case 18:
|
||
case 19:
|
||
case 20:
|
||
case 21:
|
||
case 22:
|
||
case 26:
|
||
return k(this.stream.parseStringISO(t, t + n), e);
|
||
case 30:
|
||
return k(this.stream.parseStringBMP(t, t + n), e);
|
||
case 23:
|
||
case 24:
|
||
return this.stream.parseTime(t, t + n, 23 == this.tag.tagNumber)
|
||
}
|
||
return null
|
||
}
|
||
, e.prototype.toString = function () {
|
||
return this.typeName() + "@" + this.stream.pos + "[header:" + this.header + ",length:" + this.length + ",sub:" + (null === this.sub ? "null" : this.sub.length) + "]"
|
||
}
|
||
, e.prototype.toPrettyString = function (e) {
|
||
void 0 === e && (e = "");
|
||
var t = e + this.typeName() + " @" + this.stream.pos;
|
||
if (this.length >= 0 && (t += "+"), t += this.length, this.tag.tagConstructed ? t += " (constructed)" : !this.tag.isUniversal() || 3 != this.tag.tagNumber && 4 != this.tag.tagNumber || null === this.sub || (t += " (encapsulates)"), t += "\n", null !== this.sub) {
|
||
e += " ";
|
||
for (var n = 0, r = this.sub.length; n < r; ++n) t += this.sub[n].toPrettyString(e)
|
||
}
|
||
return t
|
||
}
|
||
, e.prototype.posStart = function () {
|
||
return this.stream.pos
|
||
}
|
||
, e.prototype.posContent = function () {
|
||
return this.stream.pos + this.header
|
||
}
|
||
, e.prototype.posEnd = function () {
|
||
return this.stream.pos + this.header + Math.abs(this.length)
|
||
}
|
||
, e.prototype.toHexString = function () {
|
||
return this.stream.hexDump(this.posStart(), this.posEnd(), !0)
|
||
}
|
||
, e.decodeLength = function (e) {
|
||
var t = e.get(), n = 127 & t;
|
||
if (n == t) return n;
|
||
if (n > 6) throw new Error("Length over 48 bits not supported at position " + (e.pos - 1));
|
||
if (0 === n) return null;
|
||
t = 0;
|
||
for (var r = 0; r < n; ++r) t = 256 * t + e.get();
|
||
return t
|
||
}
|
||
, e.prototype.getHexStringValue = function () {
|
||
var e = this.toHexString(), t = 2 * this.header, n = 2 * this.length;
|
||
return e.substr(t, n)
|
||
}
|
||
, e.decode = function (t) {
|
||
var n;
|
||
n = t instanceof j ? t : new j(t, 0);
|
||
var r = new j(n), i = new T(n), o = e.decodeLength(n), s = n.pos, a = s - r.pos, l = null,
|
||
c = function () {
|
||
var t = [];
|
||
if (null !== o) {
|
||
for (var r = s + o; n.pos < r;) t[t.length] = e.decode(n);
|
||
if (n.pos != r) throw new Error("Content size is not correct for container starting at offset " + s)
|
||
} else try {
|
||
for (; ;) {
|
||
var i = e.decode(n);
|
||
if (i.tag.isEOC()) break;
|
||
t[t.length] = i
|
||
}
|
||
o = s - n.pos
|
||
} catch (a) {
|
||
throw new Error("Exception while decoding undefined length content: " + a)
|
||
}
|
||
return t
|
||
};
|
||
if (i.tagConstructed) l = c(); else if (i.isUniversal() && (3 == i.tagNumber || 4 == i.tagNumber)) try {
|
||
if (3 == i.tagNumber && 0 != n.get()) throw new Error("BIT STRINGs with unused bits cannot encapsulate.");
|
||
l = c();
|
||
for (var u = 0; u < l.length; ++u) if (l[u].tag.isEOC()) throw new Error("EOC is not supposed to be actual content.")
|
||
} catch (d) {
|
||
l = null
|
||
}
|
||
if (null === l) {
|
||
if (null === o) throw new Error("We can't skip over an invalid tag with undefined length at offset " + s);
|
||
n.pos = s + Math.abs(o)
|
||
}
|
||
return new e(r, a, o, i, l)
|
||
}
|
||
, e
|
||
}(), T = function () {
|
||
function e(e) {
|
||
var t = e.get();
|
||
if (this.tagClass = t >> 6, this.tagConstructed = 0 !== (32 & t), this.tagNumber = 31 & t, 31 == this.tagNumber) {
|
||
var n = new b;
|
||
do {
|
||
t = e.get(), n.mulAdd(128, 127 & t)
|
||
} while (128 & t);
|
||
this.tagNumber = n.simplify()
|
||
}
|
||
}
|
||
|
||
return e.prototype.isUniversal = function () {
|
||
return 0 === this.tagClass
|
||
}
|
||
, e.prototype.isEOC = function () {
|
||
return 0 === this.tagClass && 0 === this.tagNumber
|
||
}
|
||
, e
|
||
}(),
|
||
A = [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97, 101, 103, 107, 109, 113, 127, 131, 137, 139, 149, 151, 157, 163, 167, 173, 179, 181, 191, 193, 197, 199, 211, 223, 227, 229, 233, 239, 241, 251, 257, 263, 269, 271, 277, 281, 283, 293, 307, 311, 313, 317, 331, 337, 347, 349, 353, 359, 367, 373, 379, 383, 389, 397, 401, 409, 419, 421, 431, 433, 439, 443, 449, 457, 461, 463, 467, 479, 487, 491, 499, 503, 509, 521, 523, 541, 547, 557, 563, 569, 571, 577, 587, 593, 599, 601, 607, 613, 617, 619, 631, 641, 643, 647, 653, 659, 661, 673, 677, 683, 691, 701, 709, 719, 727, 733, 739, 743, 751, 757, 761, 769, 773, 787, 797, 809, 811, 821, 823, 827, 829, 839, 853, 857, 859, 863, 877, 881, 883, 887, 907, 911, 919, 929, 937, 941, 947, 953, 967, 971, 977, 983, 991, 997],
|
||
_ = (1 << 26) / A[A.length - 1], P = function () {
|
||
function e(e, t, n) {
|
||
null != e && ("number" == typeof e ? this.fromNumber(e, t, n) : null == t && "string" != typeof e ? this.fromString(e, 256) : this.fromString(e, t))
|
||
}
|
||
|
||
return e.prototype.toString = function (e) {
|
||
if (this.s < 0) return "-" + this.negate().toString(e);
|
||
var t;
|
||
if (16 == e) t = 4; else if (8 == e) t = 3; else if (2 == e) t = 1; else if (32 == e) t = 5; else {
|
||
if (4 != e) return this.toRadix(e);
|
||
t = 2
|
||
}
|
||
var n, r = (1 << t) - 1, i = !1, s = "", a = this.t, l = this.DB - a * this.DB % t;
|
||
if (a-- > 0) for (l < this.DB && (n = this[a] >> l) > 0 && (i = !0, s = o(n)); a >= 0;) l < t ? (n = (this[a] & (1 << l) - 1) << t - l, n |= this[--a] >> (l += this.DB - t)) : (n = this[a] >> (l -= t) & r, l <= 0 && (l += this.DB, --a)), n > 0 && (i = !0), i && (s += o(n));
|
||
return i ? s : "0"
|
||
}
|
||
, e.prototype.negate = function () {
|
||
var t = M();
|
||
return e.ZERO.subTo(this, t), t
|
||
}
|
||
, e.prototype.abs = function () {
|
||
return this.s < 0 ? this.negate() : this
|
||
}
|
||
, e.prototype.compareTo = function (e) {
|
||
var t = this.s - e.s;
|
||
if (0 != t) return t;
|
||
var n = this.t;
|
||
if (0 != (t = n - e.t)) return this.s < 0 ? -t : t;
|
||
for (; --n >= 0;) if (0 != (t = this[n] - e[n])) return t;
|
||
return 0
|
||
}
|
||
, e.prototype.bitLength = function () {
|
||
return this.t <= 0 ? 0 : this.DB * (this.t - 1) + $(this[this.t - 1] ^ this.s & this.DM)
|
||
}
|
||
, e.prototype.mod = function (t) {
|
||
var n = M();
|
||
return this.abs().divRemTo(t, null, n), this.s < 0 && n.compareTo(e.ZERO) > 0 && t.subTo(n, n), n
|
||
}
|
||
, e.prototype.modPowInt = function (e, t) {
|
||
var n;
|
||
return n = e < 256 || t.isEven() ? new N(t) : new R(t), this.exp(e, n)
|
||
}
|
||
, e.prototype.clone = function () {
|
||
var e = M();
|
||
return this.copyTo(e), e
|
||
}
|
||
, e.prototype.intValue = function () {
|
||
if (this.s < 0) {
|
||
if (1 == this.t) return this[0] - this.DV;
|
||
if (0 == this.t) return -1
|
||
} else {
|
||
if (1 == this.t) return this[0];
|
||
if (0 == this.t) return 0
|
||
}
|
||
return (this[1] & (1 << 32 - this.DB) - 1) << this.DB | this[0]
|
||
}
|
||
, e.prototype.byteValue = function () {
|
||
return 0 == this.t ? this.s : this[0] << 24 >> 24
|
||
}
|
||
, e.prototype.shortValue = function () {
|
||
return 0 == this.t ? this.s : this[0] << 16 >> 16
|
||
}
|
||
, e.prototype.signum = function () {
|
||
return this.s < 0 ? -1 : this.t <= 0 || 1 == this.t && this[0] <= 0 ? 0 : 1
|
||
}
|
||
, e.prototype.toByteArray = function () {
|
||
var e = this.t, t = [];
|
||
t[0] = this.s;
|
||
var n, r = this.DB - e * this.DB % 8, i = 0;
|
||
if (e-- > 0) for (r < this.DB && (n = this[e] >> r) != (this.s & this.DM) >> r && (t[i++] = n | this.s << this.DB - r); e >= 0;) r < 8 ? (n = (this[e] & (1 << r) - 1) << 8 - r, n |= this[--e] >> (r += this.DB - 8)) : (n = this[e] >> (r -= 8) & 255, r <= 0 && (r += this.DB, --e)), 0 != (128 & n) && (n |= -256), 0 == i && (128 & this.s) != (128 & n) && ++i, (i > 0 || n != this.s) && (t[i++] = n);
|
||
return t
|
||
}
|
||
, e.prototype.equals = function (e) {
|
||
return 0 == this.compareTo(e)
|
||
}
|
||
, e.prototype.min = function (e) {
|
||
return this.compareTo(e) < 0 ? this : e
|
||
}
|
||
, e.prototype.max = function (e) {
|
||
return this.compareTo(e) > 0 ? this : e
|
||
}
|
||
, e.prototype.and = function (e) {
|
||
var t = M();
|
||
return this.bitwiseTo(e, s, t), t
|
||
}
|
||
, e.prototype.or = function (e) {
|
||
var t = M();
|
||
return this.bitwiseTo(e, a, t), t
|
||
}
|
||
, e.prototype.xor = function (e) {
|
||
var t = M();
|
||
return this.bitwiseTo(e, l, t), t
|
||
}
|
||
, e.prototype.andNot = function (e) {
|
||
var t = M();
|
||
return this.bitwiseTo(e, c, t), t
|
||
}
|
||
, e.prototype.not = function () {
|
||
for (var e = M(), t = 0; t < this.t; ++t) e[t] = this.DM & ~this[t];
|
||
return e.t = this.t, e.s = ~this.s, e
|
||
}
|
||
, e.prototype.shiftLeft = function (e) {
|
||
var t = M();
|
||
return e < 0 ? this.rShiftTo(-e, t) : this.lShiftTo(e, t), t
|
||
}
|
||
, e.prototype.shiftRight = function (e) {
|
||
var t = M();
|
||
return e < 0 ? this.lShiftTo(-e, t) : this.rShiftTo(e, t), t
|
||
}
|
||
, e.prototype.getLowestSetBit = function () {
|
||
for (var e = 0; e < this.t; ++e) if (0 != this[e]) return e * this.DB + u(this[e]);
|
||
return this.s < 0 ? this.t * this.DB : -1
|
||
}
|
||
, e.prototype.bitCount = function () {
|
||
for (var e = 0, t = this.s & this.DM, n = 0; n < this.t; ++n) e += d(this[n] ^ t);
|
||
return e
|
||
}
|
||
, e.prototype.testBit = function (e) {
|
||
var t = Math.floor(e / this.DB);
|
||
return t >= this.t ? 0 != this.s : 0 != (this[t] & 1 << e % this.DB)
|
||
}
|
||
, e.prototype.setBit = function (e) {
|
||
return this.changeBit(e, a)
|
||
}
|
||
, e.prototype.clearBit = function (e) {
|
||
return this.changeBit(e, c)
|
||
}
|
||
, e.prototype.flipBit = function (e) {
|
||
return this.changeBit(e, l)
|
||
}
|
||
, e.prototype.add = function (e) {
|
||
var t = M();
|
||
return this.addTo(e, t), t
|
||
}
|
||
, e.prototype.subtract = function (e) {
|
||
var t = M();
|
||
return this.subTo(e, t), t
|
||
}
|
||
, e.prototype.multiply = function (e) {
|
||
var t = M();
|
||
return this.multiplyTo(e, t), t
|
||
}
|
||
, e.prototype.divide = function (e) {
|
||
var t = M();
|
||
return this.divRemTo(e, t, null), t
|
||
}
|
||
, e.prototype.remainder = function (e) {
|
||
var t = M();
|
||
return this.divRemTo(e, null, t), t
|
||
}
|
||
, e.prototype.divideAndRemainder = function (e) {
|
||
var t = M(), n = M();
|
||
return this.divRemTo(e, t, n), [t, n]
|
||
}
|
||
, e.prototype.modPow = function (e, t) {
|
||
var n, r, i = e.bitLength(), o = q(1);
|
||
if (i <= 0) return o;
|
||
n = i < 18 ? 1 : i < 48 ? 3 : i < 144 ? 4 : i < 768 ? 5 : 6, r = i < 8 ? new N(t) : t.isEven() ? new L(t) : new R(t);
|
||
var s = [], a = 3, l = n - 1, c = (1 << n) - 1;
|
||
if (s[1] = r.convert(this), n > 1) {
|
||
var u = M();
|
||
for (r.sqrTo(s[1], u); a <= c;) s[a] = M(), r.mulTo(u, s[a - 2], s[a]), a += 2
|
||
}
|
||
var d, p, h = e.t - 1, f = !0, m = M();
|
||
for (i = $(e[h]) - 1; h >= 0;) {
|
||
for (i >= l ? d = e[h] >> i - l & c : (d = (e[h] & (1 << i + 1) - 1) << l - i, h > 0 && (d |= e[h - 1] >> this.DB + i - l)), a = n; 0 == (1 & d);) d >>= 1, --a;
|
||
if ((i -= a) < 0 && (i += this.DB, --h), f) s[d].copyTo(o), f = !1; else {
|
||
for (; a > 1;) r.sqrTo(o, m), r.sqrTo(m, o), a -= 2;
|
||
a > 0 ? r.sqrTo(o, m) : (p = o, o = m, m = p), r.mulTo(m, s[d], o)
|
||
}
|
||
for (; h >= 0 && 0 == (e[h] & 1 << i);) r.sqrTo(o, m), p = o, o = m, m = p, --i < 0 && (i = this.DB - 1, --h)
|
||
}
|
||
return r.revert(o)
|
||
}
|
||
, e.prototype.modInverse = function (t) {
|
||
var n = t.isEven();
|
||
if (this.isEven() && n || 0 == t.signum()) return e.ZERO;
|
||
for (var r = t.clone(), i = this.clone(), o = q(1), s = q(0), a = q(0), l = q(1); 0 != r.signum();) {
|
||
for (; r.isEven();) r.rShiftTo(1, r), n ? (o.isEven() && s.isEven() || (o.addTo(this, o), s.subTo(t, s)), o.rShiftTo(1, o)) : s.isEven() || s.subTo(t, s), s.rShiftTo(1, s);
|
||
for (; i.isEven();) i.rShiftTo(1, i), n ? (a.isEven() && l.isEven() || (a.addTo(this, a), l.subTo(t, l)), a.rShiftTo(1, a)) : l.isEven() || l.subTo(t, l), l.rShiftTo(1, l);
|
||
r.compareTo(i) >= 0 ? (r.subTo(i, r), n && o.subTo(a, o), s.subTo(l, s)) : (i.subTo(r, i), n && a.subTo(o, a), l.subTo(s, l))
|
||
}
|
||
return 0 != i.compareTo(e.ONE) ? e.ZERO : l.compareTo(t) >= 0 ? l.subtract(t) : l.signum() < 0 ? (l.addTo(t, l), l.signum() < 0 ? l.add(t) : l) : l
|
||
}
|
||
, e.prototype.pow = function (e) {
|
||
return this.exp(e, new O)
|
||
}
|
||
, e.prototype.gcd = function (e) {
|
||
var t = this.s < 0 ? this.negate() : this.clone(), n = e.s < 0 ? e.negate() : e.clone();
|
||
if (t.compareTo(n) < 0) {
|
||
var r = t;
|
||
t = n, n = r
|
||
}
|
||
var i = t.getLowestSetBit(), o = n.getLowestSetBit();
|
||
if (o < 0) return t;
|
||
for (i < o && (o = i), o > 0 && (t.rShiftTo(o, t), n.rShiftTo(o, n)); t.signum() > 0;) (i = t.getLowestSetBit()) > 0 && t.rShiftTo(i, t), (i = n.getLowestSetBit()) > 0 && n.rShiftTo(i, n), t.compareTo(n) >= 0 ? (t.subTo(n, t), t.rShiftTo(1, t)) : (n.subTo(t, n), n.rShiftTo(1, n));
|
||
return o > 0 && n.lShiftTo(o, n), n
|
||
}
|
||
, e.prototype.isProbablePrime = function (e) {
|
||
var t, n = this.abs();
|
||
if (1 == n.t && n[0] <= A[A.length - 1]) {
|
||
for (t = 0; t < A.length; ++t) if (n[0] == A[t]) return !0;
|
||
return !1
|
||
}
|
||
if (n.isEven()) return !1;
|
||
for (t = 1; t < A.length;) {
|
||
for (var r = A[t], i = t + 1; i < A.length && r < _;) r *= A[i++];
|
||
for (r = n.modInt(r); t < i;) if (r % A[t++] == 0) return !1
|
||
}
|
||
return n.millerRabin(e)
|
||
}
|
||
, e.prototype.copyTo = function (e) {
|
||
for (var t = this.t - 1; t >= 0; --t) e[t] = this[t];
|
||
e.t = this.t, e.s = this.s
|
||
}
|
||
, e.prototype.fromInt = function (e) {
|
||
this.t = 1, this.s = e < 0 ? -1 : 0, e > 0 ? this[0] = e : e < -1 ? this[0] = e + this.DV : this.t = 0
|
||
}
|
||
, e.prototype.fromString = function (t, n) {
|
||
var r;
|
||
if (16 == n) r = 4; else if (8 == n) r = 3; else if (256 == n) r = 8; else if (2 == n) r = 1; else if (32 == n) r = 5; else {
|
||
if (4 != n) return void this.fromRadix(t, n);
|
||
r = 2
|
||
}
|
||
this.t = 0, this.s = 0;
|
||
for (var i = t.length, o = !1, s = 0; --i >= 0;) {
|
||
var a = 8 == r ? 255 & +t[i] : V(t, i);
|
||
a < 0 ? "-" == t.charAt(i) && (o = !0) : (o = !1, 0 == s ? this[this.t++] = a : s + r > this.DB ? (this[this.t - 1] |= (a & (1 << this.DB - s) - 1) << s, this[this.t++] = a >> this.DB - s) : this[this.t - 1] |= a << s, (s += r) >= this.DB && (s -= this.DB))
|
||
}
|
||
8 == r && 0 != (128 & +t[0]) && (this.s = -1, s > 0 && (this[this.t - 1] |= (1 << this.DB - s) - 1 << s)), this.clamp(), o && e.ZERO.subTo(this, this)
|
||
}
|
||
, e.prototype.clamp = function () {
|
||
for (var e = this.s & this.DM; this.t > 0 && this[this.t - 1] == e;) --this.t
|
||
}
|
||
, e.prototype.dlShiftTo = function (e, t) {
|
||
var n;
|
||
for (n = this.t - 1; n >= 0; --n) t[n + e] = this[n];
|
||
for (n = e - 1; n >= 0; --n) t[n] = 0;
|
||
t.t = this.t + e, t.s = this.s
|
||
}
|
||
, e.prototype.drShiftTo = function (e, t) {
|
||
for (var n = e; n < this.t; ++n) t[n - e] = this[n];
|
||
t.t = Math.max(this.t - e, 0), t.s = this.s
|
||
}
|
||
, e.prototype.lShiftTo = function (e, t) {
|
||
for (var n = e % this.DB, r = this.DB - n, i = (1 << r) - 1, o = Math.floor(e / this.DB), s = this.s << n & this.DM, a = this.t - 1; a >= 0; --a) t[a + o + 1] = this[a] >> r | s, s = (this[a] & i) << n;
|
||
for (a = o - 1; a >= 0; --a) t[a] = 0;
|
||
t[o] = s, t.t = this.t + o + 1, t.s = this.s, t.clamp()
|
||
}
|
||
, e.prototype.rShiftTo = function (e, t) {
|
||
t.s = this.s;
|
||
var n = Math.floor(e / this.DB);
|
||
if (n >= this.t) t.t = 0; else {
|
||
var r = e % this.DB, i = this.DB - r, o = (1 << r) - 1;
|
||
t[0] = this[n] >> r;
|
||
for (var s = n + 1; s < this.t; ++s) t[s - n - 1] |= (this[s] & o) << i, t[s - n] = this[s] >> r;
|
||
r > 0 && (t[this.t - n - 1] |= (this.s & o) << i), t.t = this.t - n, t.clamp()
|
||
}
|
||
}
|
||
, e.prototype.subTo = function (e, t) {
|
||
for (var n = 0, r = 0, i = Math.min(e.t, this.t); n < i;) r += this[n] - e[n], t[n++] = r & this.DM, r >>= this.DB;
|
||
if (e.t < this.t) {
|
||
for (r -= e.s; n < this.t;) r += this[n], t[n++] = r & this.DM, r >>= this.DB;
|
||
r += this.s
|
||
} else {
|
||
for (r += this.s; n < e.t;) r -= e[n], t[n++] = r & this.DM, r >>= this.DB;
|
||
r -= e.s
|
||
}
|
||
t.s = r < 0 ? -1 : 0, r < -1 ? t[n++] = this.DV + r : r > 0 && (t[n++] = r), t.t = n, t.clamp()
|
||
}
|
||
, e.prototype.multiplyTo = function (t, n) {
|
||
var r = this.abs(), i = t.abs(), o = r.t;
|
||
for (n.t = o + i.t; --o >= 0;) n[o] = 0;
|
||
for (o = 0; o < i.t; ++o) n[o + r.t] = r.am(0, i[o], n, o, 0, r.t);
|
||
n.s = 0, n.clamp(), this.s != t.s && e.ZERO.subTo(n, n)
|
||
}
|
||
, e.prototype.squareTo = function (e) {
|
||
for (var t = this.abs(), n = e.t = 2 * t.t; --n >= 0;) e[n] = 0;
|
||
for (n = 0; n < t.t - 1; ++n) {
|
||
var r = t.am(n, t[n], e, 2 * n, 0, 1);
|
||
(e[n + t.t] += t.am(n + 1, 2 * t[n], e, 2 * n + 1, r, t.t - n - 1)) >= t.DV && (e[n + t.t] -= t.DV, e[n + t.t + 1] = 1)
|
||
}
|
||
e.t > 0 && (e[e.t - 1] += t.am(n, t[n], e, 2 * n, 0, 1)), e.s = 0, e.clamp()
|
||
}
|
||
, e.prototype.divRemTo = function (t, n, r) {
|
||
var i = t.abs();
|
||
if (!(i.t <= 0)) {
|
||
var o = this.abs();
|
||
if (o.t < i.t) return null != n && n.fromInt(0), void (null != r && this.copyTo(r));
|
||
null == r && (r = M());
|
||
var s = M(), a = this.s, l = t.s, c = this.DB - $(i[i.t - 1]);
|
||
c > 0 ? (i.lShiftTo(c, s), o.lShiftTo(c, r)) : (i.copyTo(s), o.copyTo(r));
|
||
var u = s.t, d = s[u - 1];
|
||
if (0 != d) {
|
||
var p = d * (1 << this.F1) + (u > 1 ? s[u - 2] >> this.F2 : 0), h = this.FV / p,
|
||
f = (1 << this.F1) / p, m = 1 << this.F2, g = r.t, v = g - u, y = null == n ? M() : n;
|
||
for (s.dlShiftTo(v, y), r.compareTo(y) >= 0 && (r[r.t++] = 1, r.subTo(y, r)), e.ONE.dlShiftTo(u, y), y.subTo(s, s); s.t < u;) s[s.t++] = 0;
|
||
for (; --v >= 0;) {
|
||
var x = r[--g] == d ? this.DM : Math.floor(r[g] * h + (r[g - 1] + m) * f);
|
||
if ((r[g] += s.am(0, x, r, v, 0, u)) < x) for (s.dlShiftTo(v, y), r.subTo(y, r); r[g] < --x;) r.subTo(y, r)
|
||
}
|
||
null != n && (r.drShiftTo(u, n), a != l && e.ZERO.subTo(n, n)), r.t = u, r.clamp(), c > 0 && r.rShiftTo(c, r), a < 0 && e.ZERO.subTo(r, r)
|
||
}
|
||
}
|
||
}
|
||
, e.prototype.invDigit = function () {
|
||
if (this.t < 1) return 0;
|
||
var e = this[0];
|
||
if (0 == (1 & e)) return 0;
|
||
var t = 3 & e;
|
||
return (t = (t = (t = (t = t * (2 - (15 & e) * t) & 15) * (2 - (255 & e) * t) & 255) * (2 - ((65535 & e) * t & 65535)) & 65535) * (2 - e * t % this.DV) % this.DV) > 0 ? this.DV - t : -t
|
||
}
|
||
, e.prototype.isEven = function () {
|
||
return 0 == (this.t > 0 ? 1 & this[0] : this.s)
|
||
}
|
||
, e.prototype.exp = function (t, n) {
|
||
if (t > 4294967295 || t < 1) return e.ONE;
|
||
var r = M(), i = M(), o = n.convert(this), s = $(t) - 1;
|
||
for (o.copyTo(r); --s >= 0;) if (n.sqrTo(r, i), (t & 1 << s) > 0) n.mulTo(i, o, r); else {
|
||
var a = r;
|
||
r = i, i = a
|
||
}
|
||
return n.revert(r)
|
||
}
|
||
, e.prototype.chunkSize = function (e) {
|
||
return Math.floor(Math.LN2 * this.DB / Math.log(e))
|
||
}
|
||
, e.prototype.toRadix = function (e) {
|
||
if (null == e && (e = 10), 0 == this.signum() || e < 2 || e > 36) return "0";
|
||
var t = this.chunkSize(e), n = Math.pow(e, t), r = q(n), i = M(), o = M(), s = "";
|
||
for (this.divRemTo(r, i, o); i.signum() > 0;) s = (n + o.intValue()).toString(e).substr(1) + s, i.divRemTo(r, i, o);
|
||
return o.intValue().toString(e) + s
|
||
}
|
||
, e.prototype.fromRadix = function (t, n) {
|
||
this.fromInt(0), null == n && (n = 10);
|
||
for (var r = this.chunkSize(n), i = Math.pow(n, r), o = !1, s = 0, a = 0, l = 0; l < t.length; ++l) {
|
||
var c = V(t, l);
|
||
c < 0 ? "-" == t.charAt(l) && 0 == this.signum() && (o = !0) : (a = n * a + c, ++s >= r && (this.dMultiply(i), this.dAddOffset(a, 0), s = 0, a = 0))
|
||
}
|
||
s > 0 && (this.dMultiply(Math.pow(n, s)), this.dAddOffset(a, 0)), o && e.ZERO.subTo(this, this)
|
||
}
|
||
, e.prototype.fromNumber = function (t, n, r) {
|
||
if ("number" == typeof n) if (t < 2) this.fromInt(1); else for (this.fromNumber(t, r), this.testBit(t - 1) || this.bitwiseTo(e.ONE.shiftLeft(t - 1), a, this), this.isEven() && this.dAddOffset(1, 0); !this.isProbablePrime(n);) this.dAddOffset(2, 0), this.bitLength() > t && this.subTo(e.ONE.shiftLeft(t - 1), this); else {
|
||
var i = [], o = 7 & t;
|
||
i.length = 1 + (t >> 3), n.nextBytes(i), o > 0 ? i[0] &= (1 << o) - 1 : i[0] = 0, this.fromString(i, 256)
|
||
}
|
||
}
|
||
, e.prototype.bitwiseTo = function (e, t, n) {
|
||
var r, i, o = Math.min(e.t, this.t);
|
||
for (r = 0; r < o; ++r) n[r] = t(this[r], e[r]);
|
||
if (e.t < this.t) {
|
||
for (i = e.s & this.DM, r = o; r < this.t; ++r) n[r] = t(this[r], i);
|
||
n.t = this.t
|
||
} else {
|
||
for (i = this.s & this.DM, r = o; r < e.t; ++r) n[r] = t(i, e[r]);
|
||
n.t = e.t
|
||
}
|
||
n.s = t(this.s, e.s), n.clamp()
|
||
}
|
||
, e.prototype.changeBit = function (t, n) {
|
||
var r = e.ONE.shiftLeft(t);
|
||
return this.bitwiseTo(r, n, r), r
|
||
}
|
||
, e.prototype.addTo = function (e, t) {
|
||
for (var n = 0, r = 0, i = Math.min(e.t, this.t); n < i;) r += this[n] + e[n], t[n++] = r & this.DM, r >>= this.DB;
|
||
if (e.t < this.t) {
|
||
for (r += e.s; n < this.t;) r += this[n], t[n++] = r & this.DM, r >>= this.DB;
|
||
r += this.s
|
||
} else {
|
||
for (r += this.s; n < e.t;) r += e[n], t[n++] = r & this.DM, r >>= this.DB;
|
||
r += e.s
|
||
}
|
||
t.s = r < 0 ? -1 : 0, r > 0 ? t[n++] = r : r < -1 && (t[n++] = this.DV + r), t.t = n, t.clamp()
|
||
}
|
||
, e.prototype.dMultiply = function (e) {
|
||
this[this.t] = this.am(0, e - 1, this, 0, 0, this.t), ++this.t, this.clamp()
|
||
}
|
||
, e.prototype.dAddOffset = function (e, t) {
|
||
if (0 != e) {
|
||
for (; this.t <= t;) this[this.t++] = 0;
|
||
for (this[t] += e; this[t] >= this.DV;) this[t] -= this.DV, ++t >= this.t && (this[this.t++] = 0), ++this[t]
|
||
}
|
||
}
|
||
, e.prototype.multiplyLowerTo = function (e, t, n) {
|
||
var r = Math.min(this.t + e.t, t);
|
||
for (n.s = 0, n.t = r; r > 0;) n[--r] = 0;
|
||
for (var i = n.t - this.t; r < i; ++r) n[r + this.t] = this.am(0, e[r], n, r, 0, this.t);
|
||
for (i = Math.min(e.t, t); r < i; ++r) this.am(0, e[r], n, r, 0, t - r);
|
||
n.clamp()
|
||
}
|
||
, e.prototype.multiplyUpperTo = function (e, t, n) {
|
||
--t;
|
||
var r = n.t = this.t + e.t - t;
|
||
for (n.s = 0; --r >= 0;) n[r] = 0;
|
||
for (r = Math.max(t - this.t, 0); r < e.t; ++r) n[this.t + r - t] = this.am(t - r, e[r], n, 0, 0, this.t + r - t);
|
||
n.clamp(), n.drShiftTo(1, n)
|
||
}
|
||
, e.prototype.modInt = function (e) {
|
||
if (e <= 0) return 0;
|
||
var t = this.DV % e, n = this.s < 0 ? e - 1 : 0;
|
||
if (this.t > 0) if (0 == t) n = this[0] % e; else for (var r = this.t - 1; r >= 0; --r) n = (t * n + this[r]) % e;
|
||
return n
|
||
}
|
||
, e.prototype.millerRabin = function (t) {
|
||
var n = this.subtract(e.ONE), r = n.getLowestSetBit();
|
||
if (r <= 0) return !1;
|
||
var i = n.shiftRight(r);
|
||
(t = t + 1 >> 1) > A.length && (t = A.length);
|
||
for (var o = M(), s = 0; s < t; ++s) {
|
||
o.fromInt(A[Math.floor(Math.random() * A.length)]);
|
||
var a = o.modPow(i, this);
|
||
if (0 != a.compareTo(e.ONE) && 0 != a.compareTo(n)) {
|
||
for (var l = 1; l++ < r && 0 != a.compareTo(n);) if (0 == (a = a.modPowInt(2, this)).compareTo(e.ONE)) return !1;
|
||
if (0 != a.compareTo(n)) return !1
|
||
}
|
||
}
|
||
return !0
|
||
}
|
||
, e.prototype.square = function () {
|
||
var e = M();
|
||
return this.squareTo(e), e
|
||
}
|
||
, e.prototype.gcda = function (e, t) {
|
||
var n = this.s < 0 ? this.negate() : this.clone(), r = e.s < 0 ? e.negate() : e.clone();
|
||
if (n.compareTo(r) < 0) {
|
||
var i = n;
|
||
n = r, r = i
|
||
}
|
||
var o = n.getLowestSetBit(), s = r.getLowestSetBit();
|
||
if (s < 0) t(n); else {
|
||
o < s && (s = o), s > 0 && (n.rShiftTo(s, n), r.rShiftTo(s, r));
|
||
var a = function () {
|
||
(o = n.getLowestSetBit()) > 0 && n.rShiftTo(o, n), (o = r.getLowestSetBit()) > 0 && r.rShiftTo(o, r), n.compareTo(r) >= 0 ? (n.subTo(r, n), n.rShiftTo(1, n)) : (r.subTo(n, r), r.rShiftTo(1, r)), n.signum() > 0 ? setTimeout(a, 0) : (s > 0 && r.lShiftTo(s, r), setTimeout((function () {
|
||
t(r)
|
||
}), 0))
|
||
};
|
||
setTimeout(a, 10)
|
||
}
|
||
}
|
||
, e.prototype.fromNumberAsync = function (t, n, r, i) {
|
||
if ("number" == typeof n) if (t < 2) this.fromInt(1); else {
|
||
this.fromNumber(t, r), this.testBit(t - 1) || this.bitwiseTo(e.ONE.shiftLeft(t - 1), a, this), this.isEven() && this.dAddOffset(1, 0);
|
||
var o = this, s = function () {
|
||
o.dAddOffset(2, 0), o.bitLength() > t && o.subTo(e.ONE.shiftLeft(t - 1), o), o.isProbablePrime(n) ? setTimeout((function () {
|
||
i()
|
||
}), 0) : setTimeout(s, 0)
|
||
};
|
||
setTimeout(s, 0)
|
||
} else {
|
||
var l = [], c = 7 & t;
|
||
l.length = 1 + (t >> 3), n.nextBytes(l), c > 0 ? l[0] &= (1 << c) - 1 : l[0] = 0, this.fromString(l, 256)
|
||
}
|
||
}
|
||
, e
|
||
}(), O = function () {
|
||
function e() {
|
||
}
|
||
|
||
return e.prototype.convert = function (e) {
|
||
return e
|
||
}
|
||
, e.prototype.revert = function (e) {
|
||
return e
|
||
}
|
||
, e.prototype.mulTo = function (e, t, n) {
|
||
e.multiplyTo(t, n)
|
||
}
|
||
, e.prototype.sqrTo = function (e, t) {
|
||
e.squareTo(t)
|
||
}
|
||
, e
|
||
}(), N = function () {
|
||
function e(e) {
|
||
this.m = e
|
||
}
|
||
|
||
return e.prototype.convert = function (e) {
|
||
return e.s < 0 || e.compareTo(this.m) >= 0 ? e.mod(this.m) : e
|
||
}
|
||
, e.prototype.revert = function (e) {
|
||
return e
|
||
}
|
||
, e.prototype.reduce = function (e) {
|
||
e.divRemTo(this.m, null, e)
|
||
}
|
||
, e.prototype.mulTo = function (e, t, n) {
|
||
e.multiplyTo(t, n), this.reduce(n)
|
||
}
|
||
, e.prototype.sqrTo = function (e, t) {
|
||
e.squareTo(t), this.reduce(t)
|
||
}
|
||
, e
|
||
}(), R = function () {
|
||
function e(e) {
|
||
this.m = e, this.mp = e.invDigit(), this.mpl = 32767 & this.mp, this.mph = this.mp >> 15, this.um = (1 << e.DB - 15) - 1, this.mt2 = 2 * e.t
|
||
}
|
||
|
||
return e.prototype.convert = function (e) {
|
||
var t = M();
|
||
return e.abs().dlShiftTo(this.m.t, t), t.divRemTo(this.m, null, t), e.s < 0 && t.compareTo(P.ZERO) > 0 && this.m.subTo(t, t), t
|
||
}
|
||
, e.prototype.revert = function (e) {
|
||
var t = M();
|
||
return e.copyTo(t), this.reduce(t), t
|
||
}
|
||
, e.prototype.reduce = function (e) {
|
||
for (; e.t <= this.mt2;) e[e.t++] = 0;
|
||
for (var t = 0; t < this.m.t; ++t) {
|
||
var n = 32767 & e[t],
|
||
r = n * this.mpl + ((n * this.mph + (e[t] >> 15) * this.mpl & this.um) << 15) & e.DM;
|
||
for (e[n = t + this.m.t] += this.m.am(0, r, e, t, 0, this.m.t); e[n] >= e.DV;) e[n] -= e.DV, e[++n]++
|
||
}
|
||
e.clamp(), e.drShiftTo(this.m.t, e), e.compareTo(this.m) >= 0 && e.subTo(this.m, e)
|
||
}
|
||
, e.prototype.mulTo = function (e, t, n) {
|
||
e.multiplyTo(t, n), this.reduce(n)
|
||
}
|
||
, e.prototype.sqrTo = function (e, t) {
|
||
e.squareTo(t), this.reduce(t)
|
||
}
|
||
, e
|
||
}(), L = function () {
|
||
function e(e) {
|
||
this.m = e, this.r2 = M(), this.q3 = M(), P.ONE.dlShiftTo(2 * e.t, this.r2), this.mu = this.r2.divide(e)
|
||
}
|
||
|
||
return e.prototype.convert = function (e) {
|
||
if (e.s < 0 || e.t > 2 * this.m.t) return e.mod(this.m);
|
||
if (e.compareTo(this.m) < 0) return e;
|
||
var t = M();
|
||
return e.copyTo(t), this.reduce(t), t
|
||
}
|
||
, e.prototype.revert = function (e) {
|
||
return e
|
||
}
|
||
, e.prototype.reduce = function (e) {
|
||
for (e.drShiftTo(this.m.t - 1, this.r2), e.t > this.m.t + 1 && (e.t = this.m.t + 1, e.clamp()), this.mu.multiplyUpperTo(this.r2, this.m.t + 1, this.q3), this.m.multiplyLowerTo(this.q3, this.m.t + 1, this.r2); e.compareTo(this.r2) < 0;) e.dAddOffset(1, this.m.t + 1);
|
||
for (e.subTo(this.r2, e); e.compareTo(this.m) >= 0;) e.subTo(this.m, e)
|
||
}
|
||
, e.prototype.mulTo = function (e, t, n) {
|
||
e.multiplyTo(t, n), this.reduce(n)
|
||
}
|
||
, e.prototype.sqrTo = function (e, t) {
|
||
e.squareTo(t), this.reduce(t)
|
||
}
|
||
, e
|
||
}();
|
||
|
||
function M() {
|
||
return new P(null)
|
||
}
|
||
|
||
function D(e, t) {
|
||
return new P(e, t)
|
||
}
|
||
|
||
var B = "undefined" !== typeof navigator;
|
||
B && "Microsoft Internet Explorer" == navigator.appName ? (P.prototype.am = function (e, t, n, r, i, o) {
|
||
for (var s = 32767 & t, a = t >> 15; --o >= 0;) {
|
||
var l = 32767 & this[e], c = this[e++] >> 15, u = a * l + c * s;
|
||
i = ((l = s * l + ((32767 & u) << 15) + n[r] + (1073741823 & i)) >>> 30) + (u >>> 15) + a * c + (i >>> 30), n[r++] = 1073741823 & l
|
||
}
|
||
return i
|
||
}
|
||
, C = 30) : B && "Netscape" != navigator.appName ? (P.prototype.am = function (e, t, n, r, i, o) {
|
||
for (; --o >= 0;) {
|
||
var s = t * this[e++] + n[r] + i;
|
||
i = Math.floor(s / 67108864), n[r++] = 67108863 & s
|
||
}
|
||
return i
|
||
}
|
||
, C = 26) : (P.prototype.am = function (e, t, n, r, i, o) {
|
||
for (var s = 16383 & t, a = t >> 14; --o >= 0;) {
|
||
var l = 16383 & this[e], c = this[e++] >> 14, u = a * l + c * s;
|
||
i = ((l = s * l + ((16383 & u) << 14) + n[r] + i) >> 28) + (u >> 14) + a * c, n[r++] = 268435455 & l
|
||
}
|
||
return i
|
||
}
|
||
, C = 28), P.prototype.DB = C, P.prototype.DM = (1 << C) - 1, P.prototype.DV = 1 << C;
|
||
P.prototype.FV = Math.pow(2, 52), P.prototype.F1 = 52 - C, P.prototype.F2 = 2 * C - 52;
|
||
var I, F, z = [];
|
||
for (I = "0".charCodeAt(0), F = 0; F <= 9; ++F) z[I++] = F;
|
||
for (I = "a".charCodeAt(0), F = 10; F < 36; ++F) z[I++] = F;
|
||
for (I = "A".charCodeAt(0), F = 10; F < 36; ++F) z[I++] = F;
|
||
|
||
function V(e, t) {
|
||
var n = z[e.charCodeAt(t)];
|
||
return null == n ? -1 : n
|
||
}
|
||
|
||
function q(e) {
|
||
var t = M();
|
||
return t.fromInt(e), t
|
||
}
|
||
|
||
function $(e) {
|
||
var t, n = 1;
|
||
return 0 != (t = e >>> 16) && (e = t, n += 16), 0 != (t = e >> 8) && (e = t, n += 8), 0 != (t = e >> 4) && (e = t, n += 4), 0 != (t = e >> 2) && (e = t, n += 2), 0 != (t = e >> 1) && (e = t, n += 1), n
|
||
}
|
||
|
||
P.ZERO = q(0), P.ONE = q(1);
|
||
var U = function () {
|
||
function e() {
|
||
this.i = 0, this.j = 0, this.S = []
|
||
}
|
||
|
||
return e.prototype.init = function (e) {
|
||
var t, n, r;
|
||
for (t = 0; t < 256; ++t) this.S[t] = t;
|
||
for (n = 0, t = 0; t < 256; ++t) n = n + this.S[t] + e[t % e.length] & 255, r = this.S[t], this.S[t] = this.S[n], this.S[n] = r;
|
||
this.i = 0, this.j = 0
|
||
}
|
||
, e.prototype.next = function () {
|
||
var e;
|
||
return this.i = this.i + 1 & 255, this.j = this.j + this.S[this.i] & 255, e = this.S[this.i], this.S[this.i] = this.S[this.j], this.S[this.j] = e, this.S[e + this.S[this.i] & 255]
|
||
}
|
||
, e
|
||
}();
|
||
var H, W, K = null;
|
||
if (null == K) {
|
||
K = [], W = 0;
|
||
var Z = void 0;
|
||
if ("undefined" !== typeof window && window.crypto && window.crypto.getRandomValues) {
|
||
var Y = new Uint32Array(256);
|
||
for (window.crypto.getRandomValues(Y), Z = 0; Z < Y.length; ++Z) K[W++] = 255 & Y[Z]
|
||
}
|
||
var Q = 0, X = function (e) {
|
||
if ((Q = Q || 0) >= 256 || W >= 256) window.removeEventListener ? window.removeEventListener("mousemove", X, !1) : window.detachEvent && window.detachEvent("onmousemove", X); else try {
|
||
var t = e.x + e.y;
|
||
K[W++] = 255 & t, Q += 1
|
||
} catch (n) {
|
||
}
|
||
};
|
||
"undefined" !== typeof window && (window.addEventListener ? window.addEventListener("mousemove", X, !1) : window.attachEvent && window.attachEvent("onmousemove", X))
|
||
}
|
||
|
||
function G() {
|
||
if (null == H) {
|
||
for (H = new U; W < 256;) {
|
||
var e = Math.floor(65536 * Math.random());
|
||
K[W++] = 255 & e
|
||
}
|
||
for (H.init(K), W = 0; W < K.length; ++W) K[W] = 0;
|
||
W = 0
|
||
}
|
||
return H.next()
|
||
}
|
||
|
||
var J = function () {
|
||
function e() {
|
||
}
|
||
|
||
return e.prototype.nextBytes = function (e) {
|
||
for (var t = 0; t < e.length; ++t) e[t] = G()
|
||
}
|
||
, e
|
||
}();
|
||
var ee = function () {
|
||
function e() {
|
||
this.n = null, this.e = 0, this.d = null, this.p = null, this.q = null, this.dmp1 = null, this.dmq1 = null, this.coeff = null
|
||
}
|
||
|
||
return e.prototype.doPublic = function (e) {
|
||
return e.modPowInt(this.e, this.n)
|
||
}
|
||
, e.prototype.doPrivate = function (e) {
|
||
if (null == this.p || null == this.q) return e.modPow(this.d, this.n);
|
||
for (var t = e.mod(this.p).modPow(this.dmp1, this.p), n = e.mod(this.q).modPow(this.dmq1, this.q); t.compareTo(n) < 0;) t = t.add(this.p);
|
||
return t.subtract(n).multiply(this.coeff).mod(this.p).multiply(this.q).add(n)
|
||
}
|
||
, e.prototype.setPublic = function (e, t) {
|
||
null != e && null != t && e.length > 0 && t.length > 0 ? (this.n = D(e, 16), this.e = parseInt(t, 16)) : console.error("Invalid RSA public key")
|
||
}
|
||
, e.prototype.encrypt = function (e) {
|
||
var t = this.n.bitLength() + 7 >> 3, n = function (e, t) {
|
||
if (t < e.length + 11) return console.error("Message too long for RSA"), null;
|
||
for (var n = [], r = e.length - 1; r >= 0 && t > 0;) {
|
||
var i = e.charCodeAt(r--);
|
||
i < 128 ? n[--t] = i : i > 127 && i < 2048 ? (n[--t] = 63 & i | 128, n[--t] = i >> 6 | 192) : (n[--t] = 63 & i | 128, n[--t] = i >> 6 & 63 | 128, n[--t] = i >> 12 | 224)
|
||
}
|
||
n[--t] = 0;
|
||
for (var o = new J, s = []; t > 2;) {
|
||
for (s[0] = 0; 0 == s[0];) o.nextBytes(s);
|
||
n[--t] = s[0]
|
||
}
|
||
return n[--t] = 2, n[--t] = 0, new P(n)
|
||
}(e, t);
|
||
if (null == n) return null;
|
||
var r = this.doPublic(n);
|
||
if (null == r) return null;
|
||
for (var i = r.toString(16), o = i.length, s = 0; s < 2 * t - o; s++) i = "0" + i;
|
||
return i
|
||
}
|
||
, e.prototype.setPrivate = function (e, t, n) {
|
||
null != e && null != t && e.length > 0 && t.length > 0 ? (this.n = D(e, 16), this.e = parseInt(t, 16), this.d = D(n, 16)) : console.error("Invalid RSA private key")
|
||
}
|
||
, e.prototype.setPrivateEx = function (e, t, n, r, i, o, s, a) {
|
||
null != e && null != t && e.length > 0 && t.length > 0 ? (this.n = D(e, 16), this.e = parseInt(t, 16), this.d = D(n, 16), this.p = D(r, 16), this.q = D(i, 16), this.dmp1 = D(o, 16), this.dmq1 = D(s, 16), this.coeff = D(a, 16)) : console.error("Invalid RSA private key")
|
||
}
|
||
, e.prototype.generate = function (e, t) {
|
||
var n = new J, r = e >> 1;
|
||
this.e = parseInt(t, 16);
|
||
for (var i = new P(t, 16); ;) {
|
||
for (; this.p = new P(e - r, 1, n), 0 != this.p.subtract(P.ONE).gcd(i).compareTo(P.ONE) || !this.p.isProbablePrime(10);) ;
|
||
for (; this.q = new P(r, 1, n), 0 != this.q.subtract(P.ONE).gcd(i).compareTo(P.ONE) || !this.q.isProbablePrime(10);) ;
|
||
if (this.p.compareTo(this.q) <= 0) {
|
||
var o = this.p;
|
||
this.p = this.q, this.q = o
|
||
}
|
||
var s = this.p.subtract(P.ONE), a = this.q.subtract(P.ONE), l = s.multiply(a);
|
||
if (0 == l.gcd(i).compareTo(P.ONE)) {
|
||
this.n = this.p.multiply(this.q), this.d = i.modInverse(l), this.dmp1 = this.d.mod(s), this.dmq1 = this.d.mod(a), this.coeff = this.q.modInverse(this.p);
|
||
break
|
||
}
|
||
}
|
||
}
|
||
, e.prototype.decrypt = function (e) {
|
||
var t = D(e, 16), n = this.doPrivate(t);
|
||
return null == n ? null : function (e, t) {
|
||
var n = e.toByteArray(), r = 0;
|
||
for (; r < n.length && 0 == n[r];) ++r;
|
||
if (n.length - r != t - 1 || 2 != n[r]) return null;
|
||
++r;
|
||
for (; 0 != n[r];) if (++r >= n.length) return null;
|
||
var i = "";
|
||
for (; ++r < n.length;) {
|
||
var o = 255 & n[r];
|
||
o < 128 ? i += String.fromCharCode(o) : o > 191 && o < 224 ? (i += String.fromCharCode((31 & o) << 6 | 63 & n[r + 1]), ++r) : (i += String.fromCharCode((15 & o) << 12 | (63 & n[r + 1]) << 6 | 63 & n[r + 2]), r += 2)
|
||
}
|
||
return i
|
||
}(n, this.n.bitLength() + 7 >> 3)
|
||
}
|
||
, e.prototype.generateAsync = function (e, t, n) {
|
||
var r = new J, i = e >> 1;
|
||
this.e = parseInt(t, 16);
|
||
var o = new P(t, 16), s = this, a = function () {
|
||
var t = function () {
|
||
if (s.p.compareTo(s.q) <= 0) {
|
||
var e = s.p;
|
||
s.p = s.q, s.q = e
|
||
}
|
||
var t = s.p.subtract(P.ONE), r = s.q.subtract(P.ONE), i = t.multiply(r);
|
||
0 == i.gcd(o).compareTo(P.ONE) ? (s.n = s.p.multiply(s.q), s.d = o.modInverse(i), s.dmp1 = s.d.mod(t), s.dmq1 = s.d.mod(r), s.coeff = s.q.modInverse(s.p), setTimeout((function () {
|
||
n()
|
||
}), 0)) : setTimeout(a, 0)
|
||
}, l = function () {
|
||
s.q = M(), s.q.fromNumberAsync(i, 1, r, (function () {
|
||
s.q.subtract(P.ONE).gcda(o, (function (e) {
|
||
0 == e.compareTo(P.ONE) && s.q.isProbablePrime(10) ? setTimeout(t, 0) : setTimeout(l, 0)
|
||
}))
|
||
}))
|
||
}, c = function () {
|
||
s.p = M(), s.p.fromNumberAsync(e - i, 1, r, (function () {
|
||
s.p.subtract(P.ONE).gcda(o, (function (e) {
|
||
0 == e.compareTo(P.ONE) && s.p.isProbablePrime(10) ? setTimeout(l, 0) : setTimeout(c, 0)
|
||
}))
|
||
}))
|
||
};
|
||
setTimeout(c, 0)
|
||
};
|
||
setTimeout(a, 0)
|
||
}
|
||
, e.prototype.sign = function (e, t, n) {
|
||
var r = function (e, t) {
|
||
if (t < e.length + 22) return console.error("Message too long for RSA"), null;
|
||
for (var n = t - e.length - 6, r = "", i = 0; i < n; i += 2) r += "ff";
|
||
return D("0001" + r + "00" + e, 16)
|
||
}((te[n] || "") + t(e).toString(), this.n.bitLength() / 4);
|
||
if (null == r) return null;
|
||
var i = this.doPrivate(r);
|
||
if (null == i) return null;
|
||
var o = i.toString(16);
|
||
return 0 == (1 & o.length) ? o : "0" + o
|
||
}
|
||
, e.prototype.verify = function (e, t, n) {
|
||
var r = D(t, 16), i = this.doPublic(r);
|
||
return null == i ? null : function (e) {
|
||
for (var t in te) if (te.hasOwnProperty(t)) {
|
||
var n = te[t], r = n.length;
|
||
if (e.substr(0, r) == n) return e.substr(r)
|
||
}
|
||
return e
|
||
}(i.toString(16).replace(/^1f+00/, "")) == n(e).toString()
|
||
}
|
||
, e
|
||
}();
|
||
var te = {
|
||
md2: "3020300c06082a864886f70d020205000410",
|
||
md5: "3020300c06082a864886f70d020505000410",
|
||
sha1: "3021300906052b0e03021a05000414",
|
||
sha224: "302d300d06096086480165030402040500041c",
|
||
sha256: "3031300d060960864801650304020105000420",
|
||
sha384: "3041300d060960864801650304020205000430",
|
||
sha512: "3051300d060960864801650304020305000440",
|
||
ripemd160: "3021300906052b2403020105000414"
|
||
};
|
||
var ne = {};
|
||
ne.lang = {
|
||
extend: function (e, t, n) {
|
||
if (!t || !e) throw new Error("YAHOO.lang.extend failed, please check that all dependencies are included.");
|
||
var r = function () {
|
||
};
|
||
if (r.prototype = t.prototype, e.prototype = new r, e.prototype.constructor = e, e.superclass = t.prototype, t.prototype.constructor == Object.prototype.constructor && (t.prototype.constructor = t), n) {
|
||
var i;
|
||
for (i in n) e.prototype[i] = n[i];
|
||
var o = function () {
|
||
}, s = ["toString", "valueOf"];
|
||
try {
|
||
/MSIE/.test(navigator.userAgent) && (o = function (e, t) {
|
||
for (i = 0; i < s.length; i += 1) {
|
||
var n = s[i], r = t[n];
|
||
"function" === typeof r && r != Object.prototype[n] && (e[n] = r)
|
||
}
|
||
})
|
||
} catch (a) {
|
||
}
|
||
o(e.prototype, n)
|
||
}
|
||
}
|
||
};
|
||
var re = {};
|
||
"undefined" != typeof re.asn1 && re.asn1 || (re.asn1 = {}), re.asn1.ASN1Util = new function () {
|
||
this.integerToByteHex = function (e) {
|
||
var t = e.toString(16);
|
||
return t.length % 2 == 1 && (t = "0" + t), t
|
||
}
|
||
, this.bigIntToMinTwosComplementsHex = function (e) {
|
||
var t = e.toString(16);
|
||
if ("-" != t.substr(0, 1)) t.length % 2 == 1 ? t = "0" + t : t.match(/^[0-7]/) || (t = "00" + t); else {
|
||
var n = t.substr(1).length;
|
||
n % 2 == 1 ? n += 1 : t.match(/^[0-7]/) || (n += 2);
|
||
for (var r = "", i = 0; i < n; i++) r += "f";
|
||
t = new P(r, 16).xor(e).add(P.ONE).toString(16).replace(/^-/, "")
|
||
}
|
||
return t
|
||
}
|
||
, this.getPEMStringFromHex = function (e, t) {
|
||
return hextopem(e, t)
|
||
}
|
||
, this.newObject = function (e) {
|
||
var t = re.asn1, n = t.DERBoolean, r = t.DERInteger, i = t.DERBitString, o = t.DEROctetString,
|
||
s = t.DERNull, a = t.DERObjectIdentifier, l = t.DEREnumerated, c = t.DERUTF8String,
|
||
u = t.DERNumericString, d = t.DERPrintableString, p = t.DERTeletexString, h = t.DERIA5String,
|
||
f = t.DERUTCTime, m = t.DERGeneralizedTime, g = t.DERSequence, v = t.DERSet, y = t.DERTaggedObject,
|
||
x = t.ASN1Util.newObject, b = Object.keys(e);
|
||
if (1 != b.length) throw "key of param shall be only one.";
|
||
var w = b[0];
|
||
if (-1 == ":bool:int:bitstr:octstr:null:oid:enum:utf8str:numstr:prnstr:telstr:ia5str:utctime:gentime:seq:set:tag:".indexOf(":" + w + ":")) throw "undefined key: " + w;
|
||
if ("bool" == w) return new n(e[w]);
|
||
if ("int" == w) return new r(e[w]);
|
||
if ("bitstr" == w) return new i(e[w]);
|
||
if ("octstr" == w) return new o(e[w]);
|
||
if ("null" == w) return new s(e[w]);
|
||
if ("oid" == w) return new a(e[w]);
|
||
if ("enum" == w) return new l(e[w]);
|
||
if ("utf8str" == w) return new c(e[w]);
|
||
if ("numstr" == w) return new u(e[w]);
|
||
if ("prnstr" == w) return new d(e[w]);
|
||
if ("telstr" == w) return new p(e[w]);
|
||
if ("ia5str" == w) return new h(e[w]);
|
||
if ("utctime" == w) return new f(e[w]);
|
||
if ("gentime" == w) return new m(e[w]);
|
||
if ("seq" == w) {
|
||
for (var S = e[w], k = [], C = 0; C < S.length; C++) {
|
||
var j = x(S[C]);
|
||
k.push(j)
|
||
}
|
||
return new g({
|
||
array: k
|
||
})
|
||
}
|
||
if ("set" == w) {
|
||
for (S = e[w], k = [], C = 0; C < S.length; C++) {
|
||
j = x(S[C]);
|
||
k.push(j)
|
||
}
|
||
return new v({
|
||
array: k
|
||
})
|
||
}
|
||
if ("tag" == w) {
|
||
var E = e[w];
|
||
if ("[object Array]" === Object.prototype.toString.call(E) && 3 == E.length) {
|
||
var T = x(E[2]);
|
||
return new y({
|
||
tag: E[0], explicit: E[1], obj: T
|
||
})
|
||
}
|
||
var A = {};
|
||
if (void 0 !== E.explicit && (A.explicit = E.explicit), void 0 !== E.tag && (A.tag = E.tag), void 0 === E.obj) throw "obj shall be specified for 'tag'.";
|
||
return A.obj = x(E.obj), new y(A)
|
||
}
|
||
}
|
||
, this.jsonToASN1HEX = function (e) {
|
||
return this.newObject(e).getEncodedHex()
|
||
}
|
||
}
|
||
, re.asn1.ASN1Util.oidHexToInt = function (e) {
|
||
for (var t = "", n = parseInt(e.substr(0, 2), 16), r = (t = Math.floor(n / 40) + "." + n % 40, ""), i = 2; i < e.length; i += 2) {
|
||
var o = ("00000000" + parseInt(e.substr(i, 2), 16).toString(2)).slice(-8);
|
||
if (r += o.substr(1, 7), "0" == o.substr(0, 1)) t = t + "." + new P(r, 2).toString(10), r = ""
|
||
}
|
||
return t
|
||
}
|
||
, re.asn1.ASN1Util.oidIntToHex = function (e) {
|
||
var t = function (e) {
|
||
var t = e.toString(16);
|
||
return 1 == t.length && (t = "0" + t), t
|
||
}, n = function (e) {
|
||
var n = "", r = new P(e, 10).toString(2), i = 7 - r.length % 7;
|
||
7 == i && (i = 0);
|
||
for (var o = "", s = 0; s < i; s++) o += "0";
|
||
r = o + r;
|
||
for (s = 0; s < r.length - 1; s += 7) {
|
||
var a = r.substr(s, 7);
|
||
s != r.length - 7 && (a = "1" + a), n += t(parseInt(a, 2))
|
||
}
|
||
return n
|
||
};
|
||
if (!e.match(/^[0-9.]+$/)) throw "malformed oid string: " + e;
|
||
var r = "", i = e.split("."), o = 40 * parseInt(i[0]) + parseInt(i[1]);
|
||
r += t(o), i.splice(0, 2);
|
||
for (var s = 0; s < i.length; s++) r += n(i[s]);
|
||
return r
|
||
}
|
||
, re.asn1.ASN1Object = function () {
|
||
this.getLengthHexFromValue = function () {
|
||
if ("undefined" == typeof this.hV || null == this.hV) throw "this.hV is null or undefined.";
|
||
if (this.hV.length % 2 == 1) throw "value hex must be even length: n=0,v=" + this.hV;
|
||
var e = this.hV.length / 2, t = e.toString(16);
|
||
if (t.length % 2 == 1 && (t = "0" + t), e < 128) return t;
|
||
var n = t.length / 2;
|
||
if (n > 15) throw "ASN.1 length too long to represent by 8x: n = " + e.toString(16);
|
||
return (128 + n).toString(16) + t
|
||
}
|
||
, this.getEncodedHex = function () {
|
||
return (null == this.hTLV || this.isModified) && (this.hV = this.getFreshValueHex(), this.hL = this.getLengthHexFromValue(), this.hTLV = this.hT + this.hL + this.hV, this.isModified = !1), this.hTLV
|
||
}
|
||
, this.getValueHex = function () {
|
||
return this.getEncodedHex(), this.hV
|
||
}
|
||
, this.getFreshValueHex = function () {
|
||
return ""
|
||
}
|
||
}
|
||
, re.asn1.DERAbstractString = function (e) {
|
||
re.asn1.DERAbstractString.superclass.constructor.call(this);
|
||
this.getString = function () {
|
||
return this.s
|
||
}
|
||
, this.setString = function (e) {
|
||
this.hTLV = null, this.isModified = !0, this.s = e, this.hV = stohex(this.s)
|
||
}
|
||
, this.setStringHex = function (e) {
|
||
this.hTLV = null, this.isModified = !0, this.s = null, this.hV = e
|
||
}
|
||
, this.getFreshValueHex = function () {
|
||
return this.hV
|
||
}
|
||
, "undefined" != typeof e && ("string" == typeof e ? this.setString(e) : "undefined" != typeof e.str ? this.setString(e.str) : "undefined" != typeof e.hex && this.setStringHex(e.hex))
|
||
}
|
||
, ne.lang.extend(re.asn1.DERAbstractString, re.asn1.ASN1Object), re.asn1.DERAbstractTime = function (e) {
|
||
re.asn1.DERAbstractTime.superclass.constructor.call(this);
|
||
this.localDateToUTC = function (e) {
|
||
return utc = e.getTime() + 6e4 * e.getTimezoneOffset(), new Date(utc)
|
||
}
|
||
, this.formatDate = function (e, t, n) {
|
||
var r = this.zeroPadding, i = this.localDateToUTC(e), o = String(i.getFullYear());
|
||
"utc" == t && (o = o.substr(2, 2));
|
||
var s = o + r(String(i.getMonth() + 1), 2) + r(String(i.getDate()), 2) + r(String(i.getHours()), 2) + r(String(i.getMinutes()), 2) + r(String(i.getSeconds()), 2);
|
||
if (!0 === n) {
|
||
var a = i.getMilliseconds();
|
||
if (0 != a) {
|
||
var l = r(String(a), 3);
|
||
s = s + "." + (l = l.replace(/[0]+$/, ""))
|
||
}
|
||
}
|
||
return s + "Z"
|
||
}
|
||
, this.zeroPadding = function (e, t) {
|
||
return e.length >= t ? e : new Array(t - e.length + 1).join("0") + e
|
||
}
|
||
, this.getString = function () {
|
||
return this.s
|
||
}
|
||
, this.setString = function (e) {
|
||
this.hTLV = null, this.isModified = !0, this.s = e, this.hV = stohex(e)
|
||
}
|
||
, this.setByDateValue = function (e, t, n, r, i, o) {
|
||
var s = new Date(Date.UTC(e, t - 1, n, r, i, o, 0));
|
||
this.setByDate(s)
|
||
}
|
||
, this.getFreshValueHex = function () {
|
||
return this.hV
|
||
}
|
||
}
|
||
, ne.lang.extend(re.asn1.DERAbstractTime, re.asn1.ASN1Object), re.asn1.DERAbstractStructured = function (e) {
|
||
re.asn1.DERAbstractString.superclass.constructor.call(this);
|
||
this.setByASN1ObjectArray = function (e) {
|
||
this.hTLV = null, this.isModified = !0, this.asn1Array = e
|
||
}
|
||
, this.appendASN1Object = function (e) {
|
||
this.hTLV = null, this.isModified = !0, this.asn1Array.push(e)
|
||
}
|
||
, this.asn1Array = new Array, "undefined" != typeof e && "undefined" != typeof e.array && (this.asn1Array = e.array)
|
||
}
|
||
, ne.lang.extend(re.asn1.DERAbstractStructured, re.asn1.ASN1Object), re.asn1.DERBoolean = function () {
|
||
re.asn1.DERBoolean.superclass.constructor.call(this), this.hT = "01", this.hTLV = "0101ff"
|
||
}
|
||
, ne.lang.extend(re.asn1.DERBoolean, re.asn1.ASN1Object), re.asn1.DERInteger = function (e) {
|
||
re.asn1.DERInteger.superclass.constructor.call(this), this.hT = "02", this.setByBigInteger = function (e) {
|
||
this.hTLV = null, this.isModified = !0, this.hV = re.asn1.ASN1Util.bigIntToMinTwosComplementsHex(e)
|
||
}
|
||
, this.setByInteger = function (e) {
|
||
var t = new P(String(e), 10);
|
||
this.setByBigInteger(t)
|
||
}
|
||
, this.setValueHex = function (e) {
|
||
this.hV = e
|
||
}
|
||
, this.getFreshValueHex = function () {
|
||
return this.hV
|
||
}
|
||
, "undefined" != typeof e && ("undefined" != typeof e.bigint ? this.setByBigInteger(e.bigint) : "undefined" != typeof e.int ? this.setByInteger(e.int) : "number" == typeof e ? this.setByInteger(e) : "undefined" != typeof e.hex && this.setValueHex(e.hex))
|
||
}
|
||
, ne.lang.extend(re.asn1.DERInteger, re.asn1.ASN1Object), re.asn1.DERBitString = function (e) {
|
||
if (void 0 !== e && "undefined" !== typeof e.obj) {
|
||
var t = re.asn1.ASN1Util.newObject(e.obj);
|
||
e.hex = "00" + t.getEncodedHex()
|
||
}
|
||
re.asn1.DERBitString.superclass.constructor.call(this), this.hT = "03", this.setHexValueIncludingUnusedBits = function (e) {
|
||
this.hTLV = null, this.isModified = !0, this.hV = e
|
||
}
|
||
, this.setUnusedBitsAndHexValue = function (e, t) {
|
||
if (e < 0 || 7 < e) throw "unused bits shall be from 0 to 7: u = " + e;
|
||
var n = "0" + e;
|
||
this.hTLV = null, this.isModified = !0, this.hV = n + t
|
||
}
|
||
, this.setByBinaryString = function (e) {
|
||
var t = 8 - (e = e.replace(/0+$/, "")).length % 8;
|
||
8 == t && (t = 0);
|
||
for (var n = 0; n <= t; n++) e += "0";
|
||
var r = "";
|
||
for (n = 0; n < e.length - 1; n += 8) {
|
||
var i = e.substr(n, 8), o = parseInt(i, 2).toString(16);
|
||
1 == o.length && (o = "0" + o), r += o
|
||
}
|
||
this.hTLV = null, this.isModified = !0, this.hV = "0" + t + r
|
||
}
|
||
, this.setByBooleanArray = function (e) {
|
||
for (var t = "", n = 0; n < e.length; n++) 1 == e[n] ? t += "1" : t += "0";
|
||
this.setByBinaryString(t)
|
||
}
|
||
, this.newFalseArray = function (e) {
|
||
for (var t = new Array(e), n = 0; n < e; n++) t[n] = !1;
|
||
return t
|
||
}
|
||
, this.getFreshValueHex = function () {
|
||
return this.hV
|
||
}
|
||
, "undefined" != typeof e && ("string" == typeof e && e.toLowerCase().match(/^[0-9a-f]+$/) ? this.setHexValueIncludingUnusedBits(e) : "undefined" != typeof e.hex ? this.setHexValueIncludingUnusedBits(e.hex) : "undefined" != typeof e.bin ? this.setByBinaryString(e.bin) : "undefined" != typeof e.array && this.setByBooleanArray(e.array))
|
||
}
|
||
, ne.lang.extend(re.asn1.DERBitString, re.asn1.ASN1Object), re.asn1.DEROctetString = function (e) {
|
||
if (void 0 !== e && "undefined" !== typeof e.obj) {
|
||
var t = re.asn1.ASN1Util.newObject(e.obj);
|
||
e.hex = t.getEncodedHex()
|
||
}
|
||
re.asn1.DEROctetString.superclass.constructor.call(this, e), this.hT = "04"
|
||
}
|
||
, ne.lang.extend(re.asn1.DEROctetString, re.asn1.DERAbstractString), re.asn1.DERNull = function () {
|
||
re.asn1.DERNull.superclass.constructor.call(this), this.hT = "05", this.hTLV = "0500"
|
||
}
|
||
, ne.lang.extend(re.asn1.DERNull, re.asn1.ASN1Object), re.asn1.DERObjectIdentifier = function (e) {
|
||
var t = function (e) {
|
||
var t = e.toString(16);
|
||
return 1 == t.length && (t = "0" + t), t
|
||
}, n = function (e) {
|
||
var n = "", r = new P(e, 10).toString(2), i = 7 - r.length % 7;
|
||
7 == i && (i = 0);
|
||
for (var o = "", s = 0; s < i; s++) o += "0";
|
||
r = o + r;
|
||
for (s = 0; s < r.length - 1; s += 7) {
|
||
var a = r.substr(s, 7);
|
||
s != r.length - 7 && (a = "1" + a), n += t(parseInt(a, 2))
|
||
}
|
||
return n
|
||
};
|
||
re.asn1.DERObjectIdentifier.superclass.constructor.call(this), this.hT = "06", this.setValueHex = function (e) {
|
||
this.hTLV = null, this.isModified = !0, this.s = null, this.hV = e
|
||
}
|
||
, this.setValueOidString = function (e) {
|
||
if (!e.match(/^[0-9.]+$/)) throw "malformed oid string: " + e;
|
||
var r = "", i = e.split("."), o = 40 * parseInt(i[0]) + parseInt(i[1]);
|
||
r += t(o), i.splice(0, 2);
|
||
for (var s = 0; s < i.length; s++) r += n(i[s]);
|
||
this.hTLV = null, this.isModified = !0, this.s = null, this.hV = r
|
||
}
|
||
, this.setValueName = function (e) {
|
||
var t = re.asn1.x509.OID.name2oid(e);
|
||
if ("" === t) throw "DERObjectIdentifier oidName undefined: " + e;
|
||
this.setValueOidString(t)
|
||
}
|
||
, this.getFreshValueHex = function () {
|
||
return this.hV
|
||
}
|
||
, void 0 !== e && ("string" === typeof e ? e.match(/^[0-2].[0-9.]+$/) ? this.setValueOidString(e) : this.setValueName(e) : void 0 !== e.oid ? this.setValueOidString(e.oid) : void 0 !== e.hex ? this.setValueHex(e.hex) : void 0 !== e.name && this.setValueName(e.name))
|
||
}
|
||
, ne.lang.extend(re.asn1.DERObjectIdentifier, re.asn1.ASN1Object), re.asn1.DEREnumerated = function (e) {
|
||
re.asn1.DEREnumerated.superclass.constructor.call(this), this.hT = "0a", this.setByBigInteger = function (e) {
|
||
this.hTLV = null, this.isModified = !0, this.hV = re.asn1.ASN1Util.bigIntToMinTwosComplementsHex(e)
|
||
}
|
||
, this.setByInteger = function (e) {
|
||
var t = new P(String(e), 10);
|
||
this.setByBigInteger(t)
|
||
}
|
||
, this.setValueHex = function (e) {
|
||
this.hV = e
|
||
}
|
||
, this.getFreshValueHex = function () {
|
||
return this.hV
|
||
}
|
||
, "undefined" != typeof e && ("undefined" != typeof e.int ? this.setByInteger(e.int) : "number" == typeof e ? this.setByInteger(e) : "undefined" != typeof e.hex && this.setValueHex(e.hex))
|
||
}
|
||
, ne.lang.extend(re.asn1.DEREnumerated, re.asn1.ASN1Object), re.asn1.DERUTF8String = function (e) {
|
||
re.asn1.DERUTF8String.superclass.constructor.call(this, e), this.hT = "0c"
|
||
}
|
||
, ne.lang.extend(re.asn1.DERUTF8String, re.asn1.DERAbstractString), re.asn1.DERNumericString = function (e) {
|
||
re.asn1.DERNumericString.superclass.constructor.call(this, e), this.hT = "12"
|
||
}
|
||
, ne.lang.extend(re.asn1.DERNumericString, re.asn1.DERAbstractString), re.asn1.DERPrintableString = function (e) {
|
||
re.asn1.DERPrintableString.superclass.constructor.call(this, e), this.hT = "13"
|
||
}
|
||
, ne.lang.extend(re.asn1.DERPrintableString, re.asn1.DERAbstractString), re.asn1.DERTeletexString = function (e) {
|
||
re.asn1.DERTeletexString.superclass.constructor.call(this, e), this.hT = "14"
|
||
}
|
||
, ne.lang.extend(re.asn1.DERTeletexString, re.asn1.DERAbstractString), re.asn1.DERIA5String = function (e) {
|
||
re.asn1.DERIA5String.superclass.constructor.call(this, e), this.hT = "16"
|
||
}
|
||
, ne.lang.extend(re.asn1.DERIA5String, re.asn1.DERAbstractString), re.asn1.DERUTCTime = function (e) {
|
||
re.asn1.DERUTCTime.superclass.constructor.call(this, e), this.hT = "17", this.setByDate = function (e) {
|
||
this.hTLV = null, this.isModified = !0, this.date = e, this.s = this.formatDate(this.date, "utc"), this.hV = stohex(this.s)
|
||
}
|
||
, this.getFreshValueHex = function () {
|
||
return "undefined" == typeof this.date && "undefined" == typeof this.s && (this.date = new Date, this.s = this.formatDate(this.date, "utc"), this.hV = stohex(this.s)), this.hV
|
||
}
|
||
, void 0 !== e && (void 0 !== e.str ? this.setString(e.str) : "string" == typeof e && e.match(/^[0-9]{12}Z$/) ? this.setString(e) : void 0 !== e.hex ? this.setStringHex(e.hex) : void 0 !== e.date && this.setByDate(e.date))
|
||
}
|
||
, ne.lang.extend(re.asn1.DERUTCTime, re.asn1.DERAbstractTime), re.asn1.DERGeneralizedTime = function (e) {
|
||
re.asn1.DERGeneralizedTime.superclass.constructor.call(this, e), this.hT = "18", this.withMillis = !1, this.setByDate = function (e) {
|
||
this.hTLV = null, this.isModified = !0, this.date = e, this.s = this.formatDate(this.date, "gen", this.withMillis), this.hV = stohex(this.s)
|
||
}
|
||
, this.getFreshValueHex = function () {
|
||
return void 0 === this.date && void 0 === this.s && (this.date = new Date, this.s = this.formatDate(this.date, "gen", this.withMillis), this.hV = stohex(this.s)), this.hV
|
||
}
|
||
, void 0 !== e && (void 0 !== e.str ? this.setString(e.str) : "string" == typeof e && e.match(/^[0-9]{14}Z$/) ? this.setString(e) : void 0 !== e.hex ? this.setStringHex(e.hex) : void 0 !== e.date && this.setByDate(e.date), !0 === e.millis && (this.withMillis = !0))
|
||
}
|
||
, ne.lang.extend(re.asn1.DERGeneralizedTime, re.asn1.DERAbstractTime), re.asn1.DERSequence = function (e) {
|
||
re.asn1.DERSequence.superclass.constructor.call(this, e), this.hT = "30", this.getFreshValueHex = function () {
|
||
for (var e = "", t = 0; t < this.asn1Array.length; t++) {
|
||
e += this.asn1Array[t].getEncodedHex()
|
||
}
|
||
return this.hV = e, this.hV
|
||
}
|
||
}
|
||
, ne.lang.extend(re.asn1.DERSequence, re.asn1.DERAbstractStructured), re.asn1.DERSet = function (e) {
|
||
re.asn1.DERSet.superclass.constructor.call(this, e), this.hT = "31", this.sortFlag = !0, this.getFreshValueHex = function () {
|
||
for (var e = new Array, t = 0; t < this.asn1Array.length; t++) {
|
||
var n = this.asn1Array[t];
|
||
e.push(n.getEncodedHex())
|
||
}
|
||
return 1 == this.sortFlag && e.sort(), this.hV = e.join(""), this.hV
|
||
}
|
||
, "undefined" != typeof e && "undefined" != typeof e.sortflag && 0 == e.sortflag && (this.sortFlag = !1)
|
||
}
|
||
, ne.lang.extend(re.asn1.DERSet, re.asn1.DERAbstractStructured), re.asn1.DERTaggedObject = function (e) {
|
||
re.asn1.DERTaggedObject.superclass.constructor.call(this), this.hT = "a0", this.hV = "", this.isExplicit = !0, this.asn1Object = null, this.setASN1Object = function (e, t, n) {
|
||
this.hT = t, this.isExplicit = e, this.asn1Object = n, this.isExplicit ? (this.hV = this.asn1Object.getEncodedHex(), this.hTLV = null, this.isModified = !0) : (this.hV = null, this.hTLV = n.getEncodedHex(), this.hTLV = this.hTLV.replace(/^../, t), this.isModified = !1)
|
||
}
|
||
, this.getFreshValueHex = function () {
|
||
return this.hV
|
||
}
|
||
, "undefined" != typeof e && ("undefined" != typeof e.tag && (this.hT = e.tag), "undefined" != typeof e.explicit && (this.isExplicit = e.explicit), "undefined" != typeof e.obj && (this.asn1Object = e.obj, this.setASN1Object(this.isExplicit, this.hT, this.asn1Object)))
|
||
}
|
||
, ne.lang.extend(re.asn1.DERTaggedObject, re.asn1.ASN1Object);
|
||
var ie, oe = function () {
|
||
var e = function (t, n) {
|
||
return e = Object.setPrototypeOf || {
|
||
__proto__: []
|
||
} instanceof Array && function (e, t) {
|
||
e.__proto__ = t
|
||
} || function (e, t) {
|
||
for (var n in t) Object.prototype.hasOwnProperty.call(t, n) && (e[n] = t[n])
|
||
}
|
||
, e(t, n)
|
||
};
|
||
return function (t, n) {
|
||
if ("function" !== typeof n && null !== n) throw new TypeError("Class extends value " + String(n) + " is not a constructor or null");
|
||
|
||
function r() {
|
||
this.constructor = t
|
||
}
|
||
|
||
e(t, n), t.prototype = null === n ? Object.create(n) : (r.prototype = n.prototype, new r)
|
||
}
|
||
}(), se = function (e) {
|
||
function t(n) {
|
||
var r = e.call(this) || this;
|
||
return n && ("string" === typeof n ? r.parseKey(n) : (t.hasPrivateKeyProperty(n) || t.hasPublicKeyProperty(n)) && r.parsePropertiesFrom(n)), r
|
||
}
|
||
|
||
return oe(t, e), t.prototype.parseKey = function (e) {
|
||
try {
|
||
var t = 0, n = 0, r = /^\s*(?:[0-9A-Fa-f][0-9A-Fa-f]\s*)+$/.test(e) ? v(e) : y.unarmor(e),
|
||
i = E.decode(r);
|
||
if (3 === i.sub.length && (i = i.sub[2].sub[0]), 9 === i.sub.length) {
|
||
t = i.sub[1].getHexStringValue(), this.n = D(t, 16), n = i.sub[2].getHexStringValue(), this.e = parseInt(n, 16);
|
||
var o = i.sub[3].getHexStringValue();
|
||
this.d = D(o, 16);
|
||
var s = i.sub[4].getHexStringValue();
|
||
this.p = D(s, 16);
|
||
var a = i.sub[5].getHexStringValue();
|
||
this.q = D(a, 16);
|
||
var l = i.sub[6].getHexStringValue();
|
||
this.dmp1 = D(l, 16);
|
||
var c = i.sub[7].getHexStringValue();
|
||
this.dmq1 = D(c, 16);
|
||
var u = i.sub[8].getHexStringValue();
|
||
this.coeff = D(u, 16)
|
||
} else {
|
||
if (2 !== i.sub.length) return !1;
|
||
if (i.sub[0].sub) {
|
||
var d = i.sub[1].sub[0];
|
||
t = d.sub[0].getHexStringValue(), this.n = D(t, 16), n = d.sub[1].getHexStringValue(), this.e = parseInt(n, 16)
|
||
} else t = i.sub[0].getHexStringValue(), this.n = D(t, 16), n = i.sub[1].getHexStringValue(), this.e = parseInt(n, 16)
|
||
}
|
||
return !0
|
||
} catch (p) {
|
||
return !1
|
||
}
|
||
}
|
||
, t.prototype.getPrivateBaseKey = function () {
|
||
var e = {
|
||
array: [new re.asn1.DERInteger({
|
||
int: 0
|
||
}), new re.asn1.DERInteger({
|
||
bigint: this.n
|
||
}), new re.asn1.DERInteger({
|
||
int: this.e
|
||
}), new re.asn1.DERInteger({
|
||
bigint: this.d
|
||
}), new re.asn1.DERInteger({
|
||
bigint: this.p
|
||
}), new re.asn1.DERInteger({
|
||
bigint: this.q
|
||
}), new re.asn1.DERInteger({
|
||
bigint: this.dmp1
|
||
}), new re.asn1.DERInteger({
|
||
bigint: this.dmq1
|
||
}), new re.asn1.DERInteger({
|
||
bigint: this.coeff
|
||
})]
|
||
};
|
||
return new re.asn1.DERSequence(e).getEncodedHex()
|
||
}
|
||
, t.prototype.getPrivateBaseKeyB64 = function () {
|
||
return f(this.getPrivateBaseKey())
|
||
}
|
||
, t.prototype.getPublicBaseKey = function () {
|
||
var e = new re.asn1.DERSequence({
|
||
array: [new re.asn1.DERObjectIdentifier({
|
||
oid: "1.2.840.113549.1.1.1"
|
||
}), new re.asn1.DERNull]
|
||
}), t = new re.asn1.DERSequence({
|
||
array: [new re.asn1.DERInteger({
|
||
bigint: this.n
|
||
}), new re.asn1.DERInteger({
|
||
int: this.e
|
||
})]
|
||
}), n = new re.asn1.DERBitString({
|
||
hex: "00" + t.getEncodedHex()
|
||
});
|
||
return new re.asn1.DERSequence({
|
||
array: [e, n]
|
||
}).getEncodedHex()
|
||
}
|
||
, t.prototype.getPublicBaseKeyB64 = function () {
|
||
return f(this.getPublicBaseKey())
|
||
}
|
||
, t.wordwrap = function (e, t) {
|
||
if (!e) return e;
|
||
var n = "(.{1," + (t = t || 64) + "})( +|$\n?)|(.{1," + t + "})";
|
||
return e.match(RegExp(n, "g")).join("\n")
|
||
}
|
||
, t.prototype.getPrivateKey = function () {
|
||
var e = "-----BEGIN RSA PRIVATE KEY-----\n";
|
||
return e += t.wordwrap(this.getPrivateBaseKeyB64()) + "\n", e += "-----END RSA PRIVATE KEY-----"
|
||
}
|
||
, t.prototype.getPublicKey = function () {
|
||
var e = "-----BEGIN PUBLIC KEY-----\n";
|
||
return e += t.wordwrap(this.getPublicBaseKeyB64()) + "\n", e += "-----END PUBLIC KEY-----"
|
||
}
|
||
, t.hasPublicKeyProperty = function (e) {
|
||
return (e = e || {}).hasOwnProperty("n") && e.hasOwnProperty("e")
|
||
}
|
||
, t.hasPrivateKeyProperty = function (e) {
|
||
return (e = e || {}).hasOwnProperty("n") && e.hasOwnProperty("e") && e.hasOwnProperty("d") && e.hasOwnProperty("p") && e.hasOwnProperty("q") && e.hasOwnProperty("dmp1") && e.hasOwnProperty("dmq1") && e.hasOwnProperty("coeff")
|
||
}
|
||
, t.prototype.parsePropertiesFrom = function (e) {
|
||
this.n = e.n, this.e = e.e, e.hasOwnProperty("d") && (this.d = e.d, this.p = e.p, this.q = e.q, this.dmp1 = e.dmp1, this.dmq1 = e.dmq1, this.coeff = e.coeff)
|
||
}
|
||
, t
|
||
}(ee), ae = "undefined" !== typeof process ? null === (ie = {
|
||
NODE_ENV: "production",
|
||
PUBLIC_URL: "",
|
||
WDS_SOCKET_HOST: void 0,
|
||
WDS_SOCKET_PATH: void 0,
|
||
WDS_SOCKET_PORT: void 0,
|
||
FAST_REFRESH: !0,
|
||
REACT_APP_API_URL: "https://mtovnd7gjf.gcweqo.cn/api/v1",
|
||
REACT_APP_PUBLIC_KEY: "-----BEGIN 9RSA PUBLIC KEY-----MIIBCgKCAQEA02F/kPg5A2NX4qZ5JSns+bjhVMCC6JbTiTKpbgNgiXU+Kkorg6Dj76gS68gB8llhbUKCXjIdygnHPrxVHWfzmzisq9P9awmXBkCk74Skglx2LKHa/mNz9ivg6YzQ5pQFUEWS0DfomGBXVtqvBlOXMCRxp69oWaMsnfjnBV+0J7vHbXzUIkqBLdXSNfM9Ag5qdRDrJC3CqB65EJ3ARWVzZTTcXSdMW9i3qzEZPawPNPe5yPYbMZIoXLcrqvEZnRK1oak67/ihf7iwPJqdc+68ZYEmmdqwunOvRdjq89fQMVelmqcRD9RYe08v+xDxG9Co9z7hcXGTsUquMxkh29uNawIDAQAB-----END RSA PUBLIC KEY-----",
|
||
REACT_APP_SIGN_KEY: "635a580fcb5dc6e60caa39c31a7bde48",
|
||
REACT_APP_AES_KEY: "e6d5de5fcc51f53d",
|
||
REACT_APP_AES_IV: "2f13eef7dfc6c613"
|
||
}) || void 0 === ie ? void 0 : ie.npm_package_version : void 0;
|
||
const le = function () {
|
||
function e(e) {
|
||
void 0 === e && (e = {}), e = e || {}, this.default_key_size = e.default_key_size ? parseInt(e.default_key_size, 10) : 1024, this.default_public_exponent = e.default_public_exponent || "010001", this.log = e.log || !1, this.key = null
|
||
}
|
||
|
||
return e.prototype.setKey = function (e) {
|
||
this.log && this.key && console.warn("A key was already set, overriding existing."), this.key = new se(e)
|
||
}
|
||
, e.prototype.setPrivateKey = function (e) {
|
||
this.setKey(e)
|
||
}
|
||
, e.prototype.setPublicKey = function (e) {
|
||
this.setKey(e)
|
||
}
|
||
, e.prototype.decrypt = function (e) {
|
||
try {
|
||
return this.getKey().decrypt(m(e))
|
||
} catch (t) {
|
||
return !1
|
||
}
|
||
}
|
||
, e.prototype.encrypt = function (e) {
|
||
try {
|
||
return f(this.getKey().encrypt(e))
|
||
} catch (t) {
|
||
return !1
|
||
}
|
||
}
|
||
, e.prototype.sign = function (e, t, n) {
|
||
try {
|
||
return f(this.getKey().sign(e, t, n))
|
||
} catch (r) {
|
||
return !1
|
||
}
|
||
}
|
||
, e.prototype.verify = function (e, t, n) {
|
||
try {
|
||
return this.getKey().verify(e, m(t), n)
|
||
} catch (r) {
|
||
return !1
|
||
}
|
||
}
|
||
, e.prototype.getKey = function (e) {
|
||
if (!this.key) {
|
||
if (this.key = new se, e && "[object Function]" === {}.toString.call(e)) return void this.key.generateAsync(this.default_key_size, this.default_public_exponent, e);
|
||
this.key.generate(this.default_key_size, this.default_public_exponent)
|
||
}
|
||
return this.key
|
||
}
|
||
, e.prototype.getPrivateKey = function () {
|
||
return this.getKey().getPrivateKey()
|
||
}
|
||
, e.prototype.getPrivateKeyB64 = function () {
|
||
return this.getKey().getPrivateBaseKeyB64()
|
||
}
|
||
, e.prototype.getPublicKey = function () {
|
||
return this.getKey().getPublicKey()
|
||
}
|
||
, e.prototype.getPublicKeyB64 = function () {
|
||
return this.getKey().getPublicBaseKeyB64()
|
||
}
|
||
, e.version = ae, e
|
||
}();
|
||
|
||
function ce(e) {
|
||
const t = "635a580fcb5dc6e60caa39c31a7bde48";
|
||
return i().HmacMD5(e, t).toString()
|
||
}
|
||
|
||
function ue(e, t) {
|
||
const n = new le;
|
||
n.setPublicKey(t);
|
||
const r = n.encrypt(e);
|
||
if (!r) throw new Error("RSA encryption failed.");
|
||
return function (e) {
|
||
return e.replace(/\+/g, "-").replace(/\//g, "_").replace(/=+$/, "")
|
||
}(r)
|
||
}
|
||
|
||
function de(e) {
|
||
try {
|
||
const t = e.replace(/-/g, "+").replace(/_/g, "/"),
|
||
n = i().AES.decrypt(t, i().enc.Utf8.parse("e6d5de5fcc51f53d"), {
|
||
iv: i().enc.Utf8.parse("2f13eef7dfc6c613"), mode: i().mode.CBC, padding: i().pad.Pkcs7
|
||
}).toString(i().enc.Utf8);
|
||
return JSON.parse(n)
|
||
} catch (t) {
|
||
return console.error("Decryption error:", t), null
|
||
}
|
||
}
|
||
|
||
function pe(e) {
|
||
const [t, n] = e.split("?", 2);
|
||
return function (e, t) {
|
||
const n = "-----BEGIN 9RSA PUBLIC KEY-----MIIBCgKCAQEA02F/kPg5A2NX4qZ5JSns+bjhVMCC6JbTiTKpbgNgiXU+Kkorg6Dj76gS68gB8llhbUKCXjIdygnHPrxVHWfzmzisq9P9awmXBkCk74Skglx2LKHa/mNz9ivg6YzQ5pQFUEWS0DfomGBXVtqvBlOXMCRxp69oWaMsnfjnBV+0J7vHbXzUIkqBLdXSNfM9Ag5qdRDrJC3CqB65EJ3ARWVzZTTcXSdMW9i3qzEZPawPNPe5yPYbMZIoXLcrqvEZnRK1oak67/ihf7iwPJqdc+68ZYEmmdqwunOvRdjq89fQMVelmqcRD9RYe08v+xDxG9Co9z7hcXGTsUquMxkh29uNawIDAQAB-----END RSA PUBLIC KEY-----",
|
||
r = ue(JSON.stringify(t), n), i = ce(r);
|
||
return `${e}?pack=${encodeURIComponent(r)}&signature=${encodeURIComponent(i)}`
|
||
}(t, n ? function (e) {
|
||
const t = new URLSearchParams(e), n = {
|
||
timestamp: (new Date).getTime()
|
||
};
|
||
|
||
|
||
t.entries = function () {
|
||
const entries = [];
|
||
for (let key in this.params) {
|
||
if (this.params.hasOwnProperty(key)) {
|
||
entries.push([key, this.params[key]]);
|
||
}
|
||
}
|
||
return entries;
|
||
};
|
||
|
||
for (const [r, i] of t.entries()) n[r] = isNaN(i) ? i : Number(i);
|
||
return n
|
||
}(n) : {
|
||
timestamp: (new Date).getTime()
|
||
})
|
||
}
|
||
|
||
function he(e) {
|
||
const t = "-----BEGIN 9RSA PUBLIC KEY-----MIIBCgKCAQEA02F/kPg5A2NX4qZ5JSns+bjhVMCC6JbTiTKpbgNgiXU+Kkorg6Dj76gS68gB8llhbUKCXjIdygnHPrxVHWfzmzisq9P9awmXBkCk74Skglx2LKHa/mNz9ivg6YzQ5pQFUEWS0DfomGBXVtqvBlOXMCRxp69oWaMsnfjnBV+0J7vHbXzUIkqBLdXSNfM9Ag5qdRDrJC3CqB65EJ3ARWVzZTTcXSdMW9i3qzEZPawPNPe5yPYbMZIoXLcrqvEZnRK1oak67/ihf7iwPJqdc+68ZYEmmdqwunOvRdjq89fQMVelmqcRD9RYe08v+xDxG9Co9z7hcXGTsUquMxkh29uNawIDAQAB-----END RSA PUBLIC KEY-----";
|
||
e.timestamp = (new Date).getTime();
|
||
const n = ue(JSON.stringify(e), t);
|
||
return {
|
||
pack: n, signature: ce(n)
|
||
}
|
||
}
|
||
}, 1387: (e, t, n) => {
|
||
"use strict";
|
||
|
||
function r() {
|
||
return r = Object.assign ? Object.assign.bind() : function (e) {
|
||
for (var t = 1; t < arguments.length; t++) {
|
||
var n = arguments[t];
|
||
for (var r in n) Object.prototype.hasOwnProperty.call(n, r) && (e[r] = n[r])
|
||
}
|
||
return e
|
||
}
|
||
, r.apply(this, arguments)
|
||
}
|
||
|
||
var i;
|
||
n.d(t, {
|
||
AO: () => d,
|
||
Gh: () => L,
|
||
HS: () => M,
|
||
Oi: () => a,
|
||
Rr: () => p,
|
||
pX: () => z,
|
||
pb: () => P,
|
||
rc: () => i,
|
||
tH: () => F,
|
||
ue: () => m,
|
||
yD: () => R,
|
||
zR: () => s
|
||
}), function (e) {
|
||
e.Pop = "POP", e.Push = "PUSH", e.Replace = "REPLACE"
|
||
}(i || (i = {}));
|
||
const o = "popstate";
|
||
|
||
function s(e) {
|
||
return void 0 === e && (e = {}), h((function (e, t) {
|
||
let {pathname: n, search: r, hash: i} = e.location;
|
||
return u("", {
|
||
pathname: n, search: r, hash: i
|
||
}, t.state && t.state.usr || null, t.state && t.state.key || "default")
|
||
}), (function (e, t) {
|
||
return "string" === typeof t ? t : d(t)
|
||
}), null, e)
|
||
}
|
||
|
||
function a(e, t) {
|
||
if (!1 === e || null === e || "undefined" === typeof e) throw new Error(t)
|
||
}
|
||
|
||
function l(e, t) {
|
||
if (!e) {
|
||
"undefined" !== typeof console && console.warn(t);
|
||
try {
|
||
throw new Error(t)
|
||
} catch (n) {
|
||
}
|
||
}
|
||
}
|
||
|
||
function c(e, t) {
|
||
return {
|
||
usr: e.state, key: e.key, idx: t
|
||
}
|
||
}
|
||
|
||
function u(e, t, n, i) {
|
||
return void 0 === n && (n = null), r({
|
||
pathname: "string" === typeof e ? e : e.pathname, search: "", hash: ""
|
||
}, "string" === typeof t ? p(t) : t, {
|
||
state: n, key: t && t.key || i || Math.random().toString(36).substr(2, 8)
|
||
})
|
||
}
|
||
|
||
function d(e) {
|
||
let {pathname: t = "/", search: n = "", hash: r = ""} = e;
|
||
return n && "?" !== n && (t += "?" === n.charAt(0) ? n : "?" + n), r && "#" !== r && (t += "#" === r.charAt(0) ? r : "#" + r), t
|
||
}
|
||
|
||
function p(e) {
|
||
let t = {};
|
||
if (e) {
|
||
let n = e.indexOf("#");
|
||
n >= 0 && (t.hash = e.substr(n), e = e.substr(0, n));
|
||
let r = e.indexOf("?");
|
||
r >= 0 && (t.search = e.substr(r), e = e.substr(0, r)), e && (t.pathname = e)
|
||
}
|
||
return t
|
||
}
|
||
|
||
function h(e, t, n, s) {
|
||
void 0 === s && (s = {});
|
||
let {window: l = document.defaultView, v5Compat: p = !1} = s, h = l.history, f = i.Pop, m = null, g = v();
|
||
|
||
function v() {
|
||
return (h.state || {
|
||
idx: null
|
||
}).idx
|
||
}
|
||
|
||
function y() {
|
||
f = i.Pop;
|
||
let e = v(), t = null == e ? null : e - g;
|
||
g = e, m && m({
|
||
action: f, location: b.location, delta: t
|
||
})
|
||
}
|
||
|
||
function x(e) {
|
||
let t = "null" !== l.location.origin ? l.location.origin : l.location.href,
|
||
n = "string" === typeof e ? e : d(e);
|
||
return n = n.replace(/ $/, "%20"), a(t, "No window.location.(origin|href) available to create URL for href: " + n), new URL(n, t)
|
||
}
|
||
|
||
null == g && (g = 0, h.replaceState(r({}, h.state, {
|
||
idx: g
|
||
}), ""));
|
||
let b = {
|
||
get action() {
|
||
return f
|
||
}, get location() {
|
||
return e(l, h)
|
||
}, listen(e) {
|
||
if (m) throw new Error("A history only accepts one active listener");
|
||
return l.addEventListener(o, y), m = e, () => {
|
||
l.removeEventListener(o, y), m = null
|
||
}
|
||
}, createHref: e => t(l, e), createURL: x, encodeLocation(e) {
|
||
let t = x(e);
|
||
return {
|
||
pathname: t.pathname, search: t.search, hash: t.hash
|
||
}
|
||
}, push: function (e, t) {
|
||
f = i.Push;
|
||
let r = u(b.location, e, t);
|
||
n && n(r, e), g = v() + 1;
|
||
let o = c(r, g), s = b.createHref(r);
|
||
try {
|
||
h.pushState(o, "", s)
|
||
} catch (a) {
|
||
if (a instanceof DOMException && "DataCloneError" === a.name) throw a;
|
||
l.location.assign(s)
|
||
}
|
||
p && m && m({
|
||
action: f, location: b.location, delta: 1
|
||
})
|
||
}, replace: function (e, t) {
|
||
f = i.Replace;
|
||
let r = u(b.location, e, t);
|
||
n && n(r, e), g = v();
|
||
let o = c(r, g), s = b.createHref(r);
|
||
h.replaceState(o, "", s), p && m && m({
|
||
action: f, location: b.location, delta: 0
|
||
})
|
||
}, go: e => h.go(e)
|
||
};
|
||
return b
|
||
}
|
||
|
||
var f;
|
||
!function (e) {
|
||
e.data = "data", e.deferred = "deferred", e.redirect = "redirect", e.error = "error"
|
||
}(f || (f = {}));
|
||
new Set(["lazy", "caseSensitive", "path", "id", "index", "children"]);
|
||
|
||
function m(e, t, n) {
|
||
return void 0 === n && (n = "/"), g(e, t, n, !1)
|
||
}
|
||
|
||
function g(e, t, n, r) {
|
||
let i = P(("string" === typeof t ? p(t) : t).pathname || "/", n);
|
||
if (null == i) return null;
|
||
let o = v(e);
|
||
!function (e) {
|
||
e.sort(((e, t) => e.score !== t.score ? t.score - e.score : function (e, t) {
|
||
let n = e.length === t.length && e.slice(0, -1).every(((e, n) => e === t[n]));
|
||
return n ? e[e.length - 1] - t[t.length - 1] : 0
|
||
}(e.routesMeta.map((e => e.childrenIndex)), t.routesMeta.map((e => e.childrenIndex)))))
|
||
}(o);
|
||
let s = null;
|
||
for (let a = 0; null == s && a < o.length; ++a) {
|
||
let e = _(i);
|
||
s = T(o[a], e, r)
|
||
}
|
||
return s
|
||
}
|
||
|
||
function v(e, t, n, r) {
|
||
void 0 === t && (t = []), void 0 === n && (n = []), void 0 === r && (r = "");
|
||
let i = (e, i, o) => {
|
||
let s = {
|
||
relativePath: void 0 === o ? e.path || "" : o,
|
||
caseSensitive: !0 === e.caseSensitive,
|
||
childrenIndex: i,
|
||
route: e
|
||
};
|
||
s.relativePath.startsWith("/") && (a(s.relativePath.startsWith(r), 'Absolute route path "' + s.relativePath + '" nested under path "' + r + '" is not valid. An absolute child route path must start with the combined path of all its parent routes.'), s.relativePath = s.relativePath.slice(r.length));
|
||
let l = M([r, s.relativePath]), c = n.concat(s);
|
||
e.children && e.children.length > 0 && (a(!0 !== e.index, 'Index routes must not have child routes. Please remove all child routes from route path "' + l + '".'), v(e.children, t, c, l)), (null != e.path || e.index) && t.push({
|
||
path: l, score: E(l, e.index), routesMeta: c
|
||
})
|
||
};
|
||
return e.forEach(((e, t) => {
|
||
var n;
|
||
if ("" !== e.path && null != (n = e.path) && n.includes("?")) for (let r of y(e.path)) i(e, t, r); else i(e, t)
|
||
})), t
|
||
}
|
||
|
||
function y(e) {
|
||
let t = e.split("/");
|
||
if (0 === t.length) return [];
|
||
let [n, ...r] = t, i = n.endsWith("?"), o = n.replace(/\?$/, "");
|
||
if (0 === r.length) return i ? [o, ""] : [o];
|
||
let s = y(r.join("/")), a = [];
|
||
return a.push(...s.map((e => "" === e ? o : [o, e].join("/")))), i && a.push(...s), a.map((t => e.startsWith("/") && "" === t ? "/" : t))
|
||
}
|
||
|
||
const x = /^:[\w-]+$/, b = 3, w = 2, S = 1, k = 10, C = -2, j = e => "*" === e;
|
||
|
||
function E(e, t) {
|
||
let n = e.split("/"), r = n.length;
|
||
return n.some(j) && (r += C), t && (r += w), n.filter((e => !j(e))).reduce(((e, t) => e + (x.test(t) ? b : "" === t ? S : k)), r)
|
||
}
|
||
|
||
function T(e, t, n) {
|
||
void 0 === n && (n = !1);
|
||
let {routesMeta: r} = e, i = {}, o = "/", s = [];
|
||
for (let a = 0; a < r.length; ++a) {
|
||
let e = r[a], l = a === r.length - 1, c = "/" === o ? t : t.slice(o.length) || "/", u = A({
|
||
path: e.relativePath, caseSensitive: e.caseSensitive, end: l
|
||
}, c), d = e.route;
|
||
if (!u && l && n && !r[r.length - 1].route.index && (u = A({
|
||
path: e.relativePath, caseSensitive: e.caseSensitive, end: !1
|
||
}, c)), !u) return null;
|
||
Object.assign(i, u.params), s.push({
|
||
params: i, pathname: M([o, u.pathname]), pathnameBase: D(M([o, u.pathnameBase])), route: d
|
||
}), "/" !== u.pathnameBase && (o = M([o, u.pathnameBase]))
|
||
}
|
||
return s
|
||
}
|
||
|
||
function A(e, t) {
|
||
"string" === typeof e && (e = {
|
||
path: e, caseSensitive: !1, end: !0
|
||
});
|
||
let [n, r] = function (e, t, n) {
|
||
void 0 === t && (t = !1);
|
||
void 0 === n && (n = !0);
|
||
l("*" === e || !e.endsWith("*") || e.endsWith("/*"), 'Route path "' + e + '" will be treated as if it were "' + e.replace(/\*$/, "/*") + '" because the `*` character must always follow a `/` in the pattern. To get rid of this warning, please change the route path to "' + e.replace(/\*$/, "/*") + '".');
|
||
let r = [],
|
||
i = "^" + e.replace(/\/*\*?$/, "").replace(/^\/*/, "/").replace(/[\\.*+^${}|()[\]]/g, "\\$&").replace(/\/:([\w-]+)(\?)?/g, ((e, t, n) => (r.push({
|
||
paramName: t, isOptional: null != n
|
||
}), n ? "/?([^\\/]+)?" : "/([^\\/]+)")));
|
||
e.endsWith("*") ? (r.push({
|
||
paramName: "*"
|
||
}), i += "*" === e || "/*" === e ? "(.*)$" : "(?:\\/(.+)|\\/*)$") : n ? i += "\\/*$" : "" !== e && "/" !== e && (i += "(?:(?=\\/|$))");
|
||
let o = new RegExp(i, t ? void 0 : "i");
|
||
return [o, r]
|
||
}(e.path, e.caseSensitive, e.end), i = t.match(n);
|
||
if (!i) return null;
|
||
let o = i[0], s = o.replace(/(.)\/+$/, "$1"), a = i.slice(1);
|
||
return {
|
||
params: r.reduce(((e, t, n) => {
|
||
let {paramName: r, isOptional: i} = t;
|
||
if ("*" === r) {
|
||
let e = a[n] || "";
|
||
s = o.slice(0, o.length - e.length).replace(/(.)\/+$/, "$1")
|
||
}
|
||
const l = a[n];
|
||
return e[r] = i && !l ? void 0 : (l || "").replace(/%2F/g, "/"), e
|
||
}), {}), pathname: o, pathnameBase: s, pattern: e
|
||
}
|
||
}
|
||
|
||
function _(e) {
|
||
try {
|
||
return e.split("/").map((e => decodeURIComponent(e).replace(/\//g, "%2F"))).join("/")
|
||
} catch (t) {
|
||
return l(!1, 'The URL path "' + e + '" could not be decoded because it is is a malformed URL segment. This is probably due to a bad percent encoding (' + t + ")."), e
|
||
}
|
||
}
|
||
|
||
function P(e, t) {
|
||
if ("/" === t) return e;
|
||
if (!e.toLowerCase().startsWith(t.toLowerCase())) return null;
|
||
let n = t.endsWith("/") ? t.length - 1 : t.length, r = e.charAt(n);
|
||
return r && "/" !== r ? null : e.slice(n) || "/"
|
||
}
|
||
|
||
function O(e, t, n, r) {
|
||
return "Cannot include a '" + e + "' character in a manually specified `to." + t + "` field [" + JSON.stringify(r) + "]. Please separate it out to the `to." + n + '` field. Alternatively you may provide the full path as a string in <Link to="..."> and the router will parse it for you.'
|
||
}
|
||
|
||
function N(e) {
|
||
return e.filter(((e, t) => 0 === t || e.route.path && e.route.path.length > 0))
|
||
}
|
||
|
||
function R(e, t) {
|
||
let n = N(e);
|
||
return t ? n.map(((e, t) => t === n.length - 1 ? e.pathname : e.pathnameBase)) : n.map((e => e.pathnameBase))
|
||
}
|
||
|
||
function L(e, t, n, i) {
|
||
let o;
|
||
void 0 === i && (i = !1), "string" === typeof e ? o = p(e) : (o = r({}, e), a(!o.pathname || !o.pathname.includes("?"), O("?", "pathname", "search", o)), a(!o.pathname || !o.pathname.includes("#"), O("#", "pathname", "hash", o)), a(!o.search || !o.search.includes("#"), O("#", "search", "hash", o)));
|
||
let s, l = "" === e || "" === o.pathname, c = l ? "/" : o.pathname;
|
||
if (null == c) s = n; else {
|
||
let e = t.length - 1;
|
||
if (!i && c.startsWith("..")) {
|
||
let t = c.split("/");
|
||
for (; ".." === t[0];) t.shift(), e -= 1;
|
||
o.pathname = t.join("/")
|
||
}
|
||
s = e >= 0 ? t[e] : "/"
|
||
}
|
||
let u = function (e, t) {
|
||
void 0 === t && (t = "/");
|
||
let {pathname: n, search: r = "", hash: i = ""} = "string" === typeof e ? p(e) : e,
|
||
o = n ? n.startsWith("/") ? n : function (e, t) {
|
||
let n = t.replace(/\/+$/, "").split("/");
|
||
return e.split("/").forEach((e => {
|
||
".." === e ? n.length > 1 && n.pop() : "." !== e && n.push(e)
|
||
})), n.length > 1 ? n.join("/") : "/"
|
||
}(n, t) : t;
|
||
return {
|
||
pathname: o, search: B(r), hash: I(i)
|
||
}
|
||
}(o, s), d = c && "/" !== c && c.endsWith("/"), h = (l || "." === c) && n.endsWith("/");
|
||
return u.pathname.endsWith("/") || !d && !h || (u.pathname += "/"), u
|
||
}
|
||
|
||
const M = e => e.join("/").replace(/\/\/+/g, "/"), D = e => e.replace(/\/+$/, "").replace(/^\/*/, "/"),
|
||
B = e => e && "?" !== e ? e.startsWith("?") ? e : "?" + e : "",
|
||
I = e => e && "#" !== e ? e.startsWith("#") ? e : "#" + e : "";
|
||
|
||
class F extends Error {
|
||
}
|
||
|
||
function z(e) {
|
||
return null != e && "number" === typeof e.status && "string" === typeof e.statusText && "boolean" === typeof e.internal && "data" in e
|
||
}
|
||
|
||
const V = ["post", "put", "patch", "delete"], q = (new Set(V), ["get", ...V]);
|
||
new Set(q), new Set([301, 302, 303, 307, 308]), new Set([307, 308]);
|
||
Symbol("deferred")
|
||
}, 7780: function (e, t, n) {
|
||
!function () {
|
||
var t;
|
||
e.exports = (t = n(4488), n(8523), n(4199), n(8211), n(2238), function () {
|
||
var e = t, n = e.lib.BlockCipher, r = e.algo, i = [], o = [], s = [], a = [], l = [], c = [], u = [],
|
||
d = [], p = [], h = [];
|
||
!function () {
|
||
for (var e = [], t = 0; t < 256; t++) e[t] = t < 128 ? t << 1 : t << 1 ^ 283;
|
||
var n = 0, r = 0;
|
||
for (t = 0; t < 256; t++) {
|
||
var f = r ^ r << 1 ^ r << 2 ^ r << 3 ^ r << 4;
|
||
f = f >>> 8 ^ 255 & f ^ 99, i[n] = f, o[f] = n;
|
||
var m = e[n], g = e[m], v = e[g], y = 257 * e[f] ^ 16843008 * f;
|
||
s[n] = y << 24 | y >>> 8, a[n] = y << 16 | y >>> 16, l[n] = y << 8 | y >>> 24, c[n] = y, y = 16843009 * v ^ 65537 * g ^ 257 * m ^ 16843008 * n, u[f] = y << 24 | y >>> 8, d[f] = y << 16 | y >>> 16, p[f] = y << 8 | y >>> 24, h[f] = y, n ? (n = m ^ e[e[e[v ^ m]]], r ^= e[e[r]]) : n = r = 1
|
||
}
|
||
}();
|
||
var f = [0, 1, 2, 4, 8, 16, 32, 64, 128, 27, 54], m = r.AES = n.extend({
|
||
_doReset: function () {
|
||
if (!this._nRounds || this._keyPriorReset !== this._key) {
|
||
for (var e = this._keyPriorReset = this._key, t = e.words, n = e.sigBytes / 4, r = 4 * ((this._nRounds = n + 6) + 1), o = this._keySchedule = [], s = 0; s < r; s++) s < n ? o[s] = t[s] : (c = o[s - 1], s % n ? n > 6 && s % n == 4 && (c = i[c >>> 24] << 24 | i[c >>> 16 & 255] << 16 | i[c >>> 8 & 255] << 8 | i[255 & c]) : (c = i[(c = c << 8 | c >>> 24) >>> 24] << 24 | i[c >>> 16 & 255] << 16 | i[c >>> 8 & 255] << 8 | i[255 & c], c ^= f[s / n | 0] << 24), o[s] = o[s - n] ^ c);
|
||
for (var a = this._invKeySchedule = [], l = 0; l < r; l++) {
|
||
if (s = r - l, l % 4) var c = o[s]; else c = o[s - 4];
|
||
a[l] = l < 4 || s <= 4 ? c : u[i[c >>> 24]] ^ d[i[c >>> 16 & 255]] ^ p[i[c >>> 8 & 255]] ^ h[i[255 & c]]
|
||
}
|
||
}
|
||
}, encryptBlock: function (e, t) {
|
||
this._doCryptBlock(e, t, this._keySchedule, s, a, l, c, i)
|
||
}, decryptBlock: function (e, t) {
|
||
var n = e[t + 1];
|
||
e[t + 1] = e[t + 3], e[t + 3] = n, this._doCryptBlock(e, t, this._invKeySchedule, u, d, p, h, o), n = e[t + 1], e[t + 1] = e[t + 3], e[t + 3] = n
|
||
}, _doCryptBlock: function (e, t, n, r, i, o, s, a) {
|
||
for (var l = this._nRounds, c = e[t] ^ n[0], u = e[t + 1] ^ n[1], d = e[t + 2] ^ n[2], p = e[t + 3] ^ n[3], h = 4, f = 1; f < l; f++) {
|
||
var m = r[c >>> 24] ^ i[u >>> 16 & 255] ^ o[d >>> 8 & 255] ^ s[255 & p] ^ n[h++],
|
||
g = r[u >>> 24] ^ i[d >>> 16 & 255] ^ o[p >>> 8 & 255] ^ s[255 & c] ^ n[h++],
|
||
v = r[d >>> 24] ^ i[p >>> 16 & 255] ^ o[c >>> 8 & 255] ^ s[255 & u] ^ n[h++],
|
||
y = r[p >>> 24] ^ i[c >>> 16 & 255] ^ o[u >>> 8 & 255] ^ s[255 & d] ^ n[h++];
|
||
c = m, u = g, d = v, p = y
|
||
}
|
||
m = (a[c >>> 24] << 24 | a[u >>> 16 & 255] << 16 | a[d >>> 8 & 255] << 8 | a[255 & p]) ^ n[h++], g = (a[u >>> 24] << 24 | a[d >>> 16 & 255] << 16 | a[p >>> 8 & 255] << 8 | a[255 & c]) ^ n[h++], v = (a[d >>> 24] << 24 | a[p >>> 16 & 255] << 16 | a[c >>> 8 & 255] << 8 | a[255 & u]) ^ n[h++], y = (a[p >>> 24] << 24 | a[c >>> 16 & 255] << 16 | a[u >>> 8 & 255] << 8 | a[255 & d]) ^ n[h++], e[t] = m, e[t + 1] = g, e[t + 2] = v, e[t + 3] = y
|
||
}, keySize: 8
|
||
});
|
||
e.AES = n._createHelper(m)
|
||
}(), t.AES)
|
||
}()
|
||
}, 2238: function (e, t, n) {
|
||
!function () {
|
||
var t;
|
||
e.exports = (t = n(4488), n(8211), void (t.lib.Cipher || function (e) {
|
||
var n = t, r = n.lib, i = r.Base, o = r.WordArray, s = r.BufferedBlockAlgorithm, a = n.enc,
|
||
l = (a.Utf8, a.Base64), c = n.algo.EvpKDF, u = r.Cipher = s.extend({
|
||
cfg: i.extend(), createEncryptor: function (e, t) {
|
||
return this.create(this._ENC_XFORM_MODE, e, t)
|
||
}, createDecryptor: function (e, t) {
|
||
return this.create(this._DEC_XFORM_MODE, e, t)
|
||
}, init: function (e, t, n) {
|
||
this.cfg = this.cfg.extend(n), this._xformMode = e, this._key = t, this.reset()
|
||
}, reset: function () {
|
||
s.reset.call(this), this._doReset()
|
||
}, process: function (e) {
|
||
return this._append(e), this._process()
|
||
}, finalize: function (e) {
|
||
return e && this._append(e), this._doFinalize()
|
||
}, keySize: 4, ivSize: 4, _ENC_XFORM_MODE: 1, _DEC_XFORM_MODE: 2, _createHelper: function () {
|
||
function e(e) {
|
||
return "string" == typeof e ? x : v
|
||
}
|
||
|
||
return function (t) {
|
||
return {
|
||
encrypt: function (n, r, i) {
|
||
return e(r).encrypt(t, n, r, i)
|
||
}, decrypt: function (n, r, i) {
|
||
return e(r).decrypt(t, n, r, i)
|
||
}
|
||
}
|
||
}
|
||
}()
|
||
}), d = (r.StreamCipher = u.extend({
|
||
_doFinalize: function () {
|
||
return this._process(!0)
|
||
}, blockSize: 1
|
||
}), n.mode = {}), p = r.BlockCipherMode = i.extend({
|
||
createEncryptor: function (e, t) {
|
||
return this.Encryptor.create(e, t)
|
||
}, createDecryptor: function (e, t) {
|
||
return this.Decryptor.create(e, t)
|
||
}, init: function (e, t) {
|
||
this._cipher = e, this._iv = t
|
||
}
|
||
}), h = d.CBC = function () {
|
||
var t = p.extend();
|
||
|
||
function n(t, n, r) {
|
||
var i, o = this._iv;
|
||
o ? (i = o, this._iv = e) : i = this._prevBlock;
|
||
for (var s = 0; s < r; s++) t[n + s] ^= i[s]
|
||
}
|
||
|
||
return t.Encryptor = t.extend({
|
||
processBlock: function (e, t) {
|
||
var r = this._cipher, i = r.blockSize;
|
||
n.call(this, e, t, i), r.encryptBlock(e, t), this._prevBlock = e.slice(t, t + i)
|
||
}
|
||
}), t.Decryptor = t.extend({
|
||
processBlock: function (e, t) {
|
||
var r = this._cipher, i = r.blockSize, o = e.slice(t, t + i);
|
||
r.decryptBlock(e, t), n.call(this, e, t, i), this._prevBlock = o
|
||
}
|
||
}), t
|
||
}(), f = (n.pad = {}).Pkcs7 = {
|
||
pad: function (e, t) {
|
||
for (var n = 4 * t, r = n - e.sigBytes % n, i = r << 24 | r << 16 | r << 8 | r, s = [], a = 0; a < r; a += 4) s.push(i);
|
||
var l = o.create(s, r);
|
||
e.concat(l)
|
||
}, unpad: function (e) {
|
||
var t = 255 & e.words[e.sigBytes - 1 >>> 2];
|
||
e.sigBytes -= t
|
||
}
|
||
}, m = (r.BlockCipher = u.extend({
|
||
cfg: u.cfg.extend({
|
||
mode: h, padding: f
|
||
}), reset: function () {
|
||
var e;
|
||
u.reset.call(this);
|
||
var t = this.cfg, n = t.iv, r = t.mode;
|
||
this._xformMode == this._ENC_XFORM_MODE ? e = r.createEncryptor : (e = r.createDecryptor, this._minBufferSize = 1), this._mode && this._mode.__creator == e ? this._mode.init(this, n && n.words) : (this._mode = e.call(r, this, n && n.words), this._mode.__creator = e)
|
||
}, _doProcessBlock: function (e, t) {
|
||
this._mode.processBlock(e, t)
|
||
}, _doFinalize: function () {
|
||
var e, t = this.cfg.padding;
|
||
return this._xformMode == this._ENC_XFORM_MODE ? (t.pad(this._data, this.blockSize), e = this._process(!0)) : (e = this._process(!0), t.unpad(e)), e
|
||
}, blockSize: 4
|
||
}), r.CipherParams = i.extend({
|
||
init: function (e) {
|
||
this.mixIn(e)
|
||
}, toString: function (e) {
|
||
return (e || this.formatter).stringify(this)
|
||
}
|
||
})), g = (n.format = {}).OpenSSL = {
|
||
stringify: function (e) {
|
||
var t = e.ciphertext, n = e.salt;
|
||
return (n ? o.create([1398893684, 1701076831]).concat(n).concat(t) : t).toString(l)
|
||
}, parse: function (e) {
|
||
var t, n = l.parse(e), r = n.words;
|
||
return 1398893684 == r[0] && 1701076831 == r[1] && (t = o.create(r.slice(2, 4)), r.splice(0, 4), n.sigBytes -= 16), m.create({
|
||
ciphertext: n, salt: t
|
||
})
|
||
}
|
||
}, v = r.SerializableCipher = i.extend({
|
||
cfg: i.extend({
|
||
format: g
|
||
}), encrypt: function (e, t, n, r) {
|
||
r = this.cfg.extend(r);
|
||
var i = e.createEncryptor(n, r), o = i.finalize(t), s = i.cfg;
|
||
return m.create({
|
||
ciphertext: o,
|
||
key: n,
|
||
iv: s.iv,
|
||
algorithm: e,
|
||
mode: s.mode,
|
||
padding: s.padding,
|
||
blockSize: e.blockSize,
|
||
formatter: r.format
|
||
})
|
||
}, decrypt: function (e, t, n, r) {
|
||
return r = this.cfg.extend(r), t = this._parse(t, r.format), e.createDecryptor(n, r).finalize(t.ciphertext)
|
||
}, _parse: function (e, t) {
|
||
return "string" == typeof e ? t.parse(e, this) : e
|
||
}
|
||
}), y = (n.kdf = {}).OpenSSL = {
|
||
execute: function (e, t, n, r, i) {
|
||
if (r || (r = o.random(8)), i) s = c.create({
|
||
keySize: t + n, hasher: i
|
||
}).compute(e, r); else var s = c.create({
|
||
keySize: t + n
|
||
}).compute(e, r);
|
||
var a = o.create(s.words.slice(t), 4 * n);
|
||
return s.sigBytes = 4 * t, m.create({
|
||
key: s, iv: a, salt: r
|
||
})
|
||
}
|
||
}, x = r.PasswordBasedCipher = v.extend({
|
||
cfg: v.cfg.extend({
|
||
kdf: y
|
||
}), encrypt: function (e, t, n, r) {
|
||
var i = (r = this.cfg.extend(r)).kdf.execute(n, e.keySize, e.ivSize, r.salt, r.hasher);
|
||
r.iv = i.iv;
|
||
var o = v.encrypt.call(this, e, t, i.key, r);
|
||
return o.mixIn(i), o
|
||
}, decrypt: function (e, t, n, r) {
|
||
r = this.cfg.extend(r), t = this._parse(t, r.format);
|
||
var i = r.kdf.execute(n, e.keySize, e.ivSize, t.salt, r.hasher);
|
||
return r.iv = i.iv, v.decrypt.call(this, e, t, i.key, r)
|
||
}
|
||
})
|
||
}()))
|
||
}()
|
||
}, 4488: function (e, t, n) {
|
||
e.exports = function () {
|
||
var e = e || function (e, t) {
|
||
var r;
|
||
if ("undefined" !== typeof window && window.crypto && (r = window.crypto), "undefined" !== typeof self && self.crypto && (r = self.crypto), "undefined" !== typeof globalThis && globalThis.crypto && (r = globalThis.crypto), !r && "undefined" !== typeof window && window.msCrypto && (r = window.msCrypto), !r && "undefined" !== typeof n.g && n.g.crypto && (r = n.g.crypto), !r) try {
|
||
r = n(477)
|
||
} catch (g) {
|
||
}
|
||
var i = function () {
|
||
if (r) {
|
||
if ("function" === typeof r.getRandomValues) try {
|
||
return r.getRandomValues(new Uint32Array(1))[0]
|
||
} catch (g) {
|
||
}
|
||
if ("function" === typeof r.randomBytes) try {
|
||
return r.randomBytes(4).readInt32LE()
|
||
} catch (g) {
|
||
}
|
||
}
|
||
throw new Error("Native crypto module could not be used to get secure random number.")
|
||
}, o = Object.create || function () {
|
||
function e() {
|
||
}
|
||
|
||
return function (t) {
|
||
var n;
|
||
return e.prototype = t, n = new e, e.prototype = null, n
|
||
}
|
||
}(), s = {}, a = s.lib = {}, l = a.Base = {
|
||
extend: function (e) {
|
||
var t = o(this);
|
||
return e && t.mixIn(e), t.hasOwnProperty("init") && this.init !== t.init || (t.init = function () {
|
||
t.$super.init.apply(this, arguments)
|
||
}), t.init.prototype = t, t.$super = this, t
|
||
}, create: function () {
|
||
var e = this.extend();
|
||
return e.init.apply(e, arguments), e
|
||
}, init: function () {
|
||
}, mixIn: function (e) {
|
||
for (var t in e) e.hasOwnProperty(t) && (this[t] = e[t]);
|
||
e.hasOwnProperty("toString") && (this.toString = e.toString)
|
||
}, clone: function () {
|
||
return this.init.prototype.extend(this)
|
||
}
|
||
}, c = a.WordArray = l.extend({
|
||
init: function (e, n) {
|
||
e = this.words = e || [], this.sigBytes = n != t ? n : 4 * e.length
|
||
}, toString: function (e) {
|
||
return (e || d).stringify(this)
|
||
}, concat: function (e) {
|
||
var t = this.words, n = e.words, r = this.sigBytes, i = e.sigBytes;
|
||
if (this.clamp(), r % 4) for (var o = 0; o < i; o++) {
|
||
var s = n[o >>> 2] >>> 24 - o % 4 * 8 & 255;
|
||
t[r + o >>> 2] |= s << 24 - (r + o) % 4 * 8
|
||
} else for (var a = 0; a < i; a += 4) t[r + a >>> 2] = n[a >>> 2];
|
||
return this.sigBytes += i, this
|
||
}, clamp: function () {
|
||
var t = this.words, n = this.sigBytes;
|
||
t[n >>> 2] &= 4294967295 << 32 - n % 4 * 8, t.length = e.ceil(n / 4)
|
||
}, clone: function () {
|
||
var e = l.clone.call(this);
|
||
return e.words = this.words.slice(0), e
|
||
}, random: function (e) {
|
||
for (var t = [], n = 0; n < e; n += 4) t.push(i());
|
||
return new c.init(t, e)
|
||
}
|
||
}), u = s.enc = {}, d = u.Hex = {
|
||
stringify: function (e) {
|
||
for (var t = e.words, n = e.sigBytes, r = [], i = 0; i < n; i++) {
|
||
var o = t[i >>> 2] >>> 24 - i % 4 * 8 & 255;
|
||
r.push((o >>> 4).toString(16)), r.push((15 & o).toString(16))
|
||
}
|
||
return r.join("")
|
||
}, parse: function (e) {
|
||
for (var t = e.length, n = [], r = 0; r < t; r += 2) n[r >>> 3] |= parseInt(e.substr(r, 2), 16) << 24 - r % 8 * 4;
|
||
return new c.init(n, t / 2)
|
||
}
|
||
}, p = u.Latin1 = {
|
||
stringify: function (e) {
|
||
for (var t = e.words, n = e.sigBytes, r = [], i = 0; i < n; i++) {
|
||
var o = t[i >>> 2] >>> 24 - i % 4 * 8 & 255;
|
||
r.push(String.fromCharCode(o))
|
||
}
|
||
return r.join("")
|
||
}, parse: function (e) {
|
||
for (var t = e.length, n = [], r = 0; r < t; r++) n[r >>> 2] |= (255 & e.charCodeAt(r)) << 24 - r % 4 * 8;
|
||
return new c.init(n, t)
|
||
}
|
||
}, h = u.Utf8 = {
|
||
stringify: function (e) {
|
||
try {
|
||
return decodeURIComponent(escape(p.stringify(e)))
|
||
} catch (t) {
|
||
throw new Error("Malformed UTF-8 data")
|
||
}
|
||
}, parse: function (e) {
|
||
return p.parse(unescape(encodeURIComponent(e)))
|
||
}
|
||
}, f = a.BufferedBlockAlgorithm = l.extend({
|
||
reset: function () {
|
||
this._data = new c.init, this._nDataBytes = 0
|
||
}, _append: function (e) {
|
||
"string" == typeof e && (e = h.parse(e)), this._data.concat(e), this._nDataBytes += e.sigBytes
|
||
}, _process: function (t) {
|
||
var n, r = this._data, i = r.words, o = r.sigBytes, s = this.blockSize, a = o / (4 * s),
|
||
l = (a = t ? e.ceil(a) : e.max((0 | a) - this._minBufferSize, 0)) * s, u = e.min(4 * l, o);
|
||
if (l) {
|
||
for (var d = 0; d < l; d += s) this._doProcessBlock(i, d);
|
||
n = i.splice(0, l), r.sigBytes -= u
|
||
}
|
||
return new c.init(n, u)
|
||
}, clone: function () {
|
||
var e = l.clone.call(this);
|
||
return e._data = this._data.clone(), e
|
||
}, _minBufferSize: 0
|
||
}), m = (a.Hasher = f.extend({
|
||
cfg: l.extend(), init: function (e) {
|
||
this.cfg = this.cfg.extend(e), this.reset()
|
||
}, reset: function () {
|
||
f.reset.call(this), this._doReset()
|
||
}, update: function (e) {
|
||
return this._append(e), this._process(), this
|
||
}, finalize: function (e) {
|
||
return e && this._append(e), this._doFinalize()
|
||
}, blockSize: 16, _createHelper: function (e) {
|
||
return function (t, n) {
|
||
return new e.init(n).finalize(t)
|
||
}
|
||
}, _createHmacHelper: function (e) {
|
||
return function (t, n) {
|
||
return new m.HMAC.init(e, n).finalize(t)
|
||
}
|
||
}
|
||
}), s.algo = {});
|
||
return s
|
||
}(Math);
|
||
return e
|
||
}()
|
||
}, 8523: function (e, t, n) {
|
||
!function () {
|
||
var t;
|
||
e.exports = (t = n(4488), function () {
|
||
var e = t, n = e.lib.WordArray;
|
||
|
||
function r(e, t, r) {
|
||
for (var i = [], o = 0, s = 0; s < t; s++) if (s % 4) {
|
||
var a = r[e.charCodeAt(s - 1)] << s % 4 * 2 | r[e.charCodeAt(s)] >>> 6 - s % 4 * 2;
|
||
i[o >>> 2] |= a << 24 - o % 4 * 8, o++
|
||
}
|
||
return n.create(i, o)
|
||
}
|
||
|
||
e.enc.Base64 = {
|
||
stringify: function (e) {
|
||
var t = e.words, n = e.sigBytes, r = this._map;
|
||
e.clamp();
|
||
for (var i = [], o = 0; o < n; o += 3) for (var s = (t[o >>> 2] >>> 24 - o % 4 * 8 & 255) << 16 | (t[o + 1 >>> 2] >>> 24 - (o + 1) % 4 * 8 & 255) << 8 | t[o + 2 >>> 2] >>> 24 - (o + 2) % 4 * 8 & 255, a = 0; a < 4 && o + .75 * a < n; a++) i.push(r.charAt(s >>> 6 * (3 - a) & 63));
|
||
var l = r.charAt(64);
|
||
if (l) for (; i.length % 4;) i.push(l);
|
||
return i.join("")
|
||
}, parse: function (e) {
|
||
var t = e.length, n = this._map, i = this._reverseMap;
|
||
if (!i) {
|
||
i = this._reverseMap = [];
|
||
for (var o = 0; o < n.length; o++) i[n.charCodeAt(o)] = o
|
||
}
|
||
var s = n.charAt(64);
|
||
if (s) {
|
||
var a = e.indexOf(s);
|
||
-1 !== a && (t = a)
|
||
}
|
||
return r(e, t, i)
|
||
}, _map: "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="
|
||
}
|
||
}(), t.enc.Base64)
|
||
}()
|
||
}, 4646: function (e, t, n) {
|
||
!function () {
|
||
var t;
|
||
e.exports = (t = n(4488), function () {
|
||
var e = t, n = e.lib.WordArray;
|
||
|
||
function r(e, t, r) {
|
||
for (var i = [], o = 0, s = 0; s < t; s++) if (s % 4) {
|
||
var a = r[e.charCodeAt(s - 1)] << s % 4 * 2 | r[e.charCodeAt(s)] >>> 6 - s % 4 * 2;
|
||
i[o >>> 2] |= a << 24 - o % 4 * 8, o++
|
||
}
|
||
return n.create(i, o)
|
||
}
|
||
|
||
e.enc.Base64url = {
|
||
stringify: function (e, t) {
|
||
void 0 === t && (t = !0);
|
||
var n = e.words, r = e.sigBytes, i = t ? this._safe_map : this._map;
|
||
e.clamp();
|
||
for (var o = [], s = 0; s < r; s += 3) for (var a = (n[s >>> 2] >>> 24 - s % 4 * 8 & 255) << 16 | (n[s + 1 >>> 2] >>> 24 - (s + 1) % 4 * 8 & 255) << 8 | n[s + 2 >>> 2] >>> 24 - (s + 2) % 4 * 8 & 255, l = 0; l < 4 && s + .75 * l < r; l++) o.push(i.charAt(a >>> 6 * (3 - l) & 63));
|
||
var c = i.charAt(64);
|
||
if (c) for (; o.length % 4;) o.push(c);
|
||
return o.join("")
|
||
},
|
||
parse: function (e, t) {
|
||
void 0 === t && (t = !0);
|
||
var n = e.length, i = t ? this._safe_map : this._map, o = this._reverseMap;
|
||
if (!o) {
|
||
o = this._reverseMap = [];
|
||
for (var s = 0; s < i.length; s++) o[i.charCodeAt(s)] = s
|
||
}
|
||
var a = i.charAt(64);
|
||
if (a) {
|
||
var l = e.indexOf(a);
|
||
-1 !== l && (n = l)
|
||
}
|
||
return r(e, n, o)
|
||
},
|
||
_map: "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",
|
||
_safe_map: "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_"
|
||
}
|
||
}(), t.enc.Base64url)
|
||
}()
|
||
}, 8168: function (e, t, n) {
|
||
!function () {
|
||
var t;
|
||
e.exports = (t = n(4488), function () {
|
||
var e = t, n = e.lib.WordArray, r = e.enc;
|
||
|
||
function i(e) {
|
||
return e << 8 & 4278255360 | e >>> 8 & 16711935
|
||
}
|
||
|
||
r.Utf16 = r.Utf16BE = {
|
||
stringify: function (e) {
|
||
for (var t = e.words, n = e.sigBytes, r = [], i = 0; i < n; i += 2) {
|
||
var o = t[i >>> 2] >>> 16 - i % 4 * 8 & 65535;
|
||
r.push(String.fromCharCode(o))
|
||
}
|
||
return r.join("")
|
||
}, parse: function (e) {
|
||
for (var t = e.length, r = [], i = 0; i < t; i++) r[i >>> 1] |= e.charCodeAt(i) << 16 - i % 2 * 16;
|
||
return n.create(r, 2 * t)
|
||
}
|
||
}, r.Utf16LE = {
|
||
stringify: function (e) {
|
||
for (var t = e.words, n = e.sigBytes, r = [], o = 0; o < n; o += 2) {
|
||
var s = i(t[o >>> 2] >>> 16 - o % 4 * 8 & 65535);
|
||
r.push(String.fromCharCode(s))
|
||
}
|
||
return r.join("")
|
||
}, parse: function (e) {
|
||
for (var t = e.length, r = [], o = 0; o < t; o++) r[o >>> 1] |= i(e.charCodeAt(o) << 16 - o % 2 * 16);
|
||
return n.create(r, 2 * t)
|
||
}
|
||
}
|
||
}(), t.enc.Utf16)
|
||
}()
|
||
}, 8211: function (e, t, n) {
|
||
!function () {
|
||
var t;
|
||
e.exports = (t = n(4488), n(2002), n(4220), function () {
|
||
var e = t, n = e.lib, r = n.Base, i = n.WordArray, o = e.algo, s = o.MD5, a = o.EvpKDF = r.extend({
|
||
cfg: r.extend({
|
||
keySize: 4, hasher: s, iterations: 1
|
||
}), init: function (e) {
|
||
this.cfg = this.cfg.extend(e)
|
||
}, compute: function (e, t) {
|
||
for (var n, r = this.cfg, o = r.hasher.create(), s = i.create(), a = s.words, l = r.keySize, c = r.iterations; a.length < l;) {
|
||
n && o.update(n), n = o.update(e).finalize(t), o.reset();
|
||
for (var u = 1; u < c; u++) n = o.finalize(n), o.reset();
|
||
s.concat(n)
|
||
}
|
||
return s.sigBytes = 4 * l, s
|
||
}
|
||
});
|
||
e.EvpKDF = function (e, t, n) {
|
||
return a.create(n).compute(e, t)
|
||
}
|
||
}(), t.EvpKDF)
|
||
}()
|
||
}, 4708: function (e, t, n) {
|
||
!function () {
|
||
var t;
|
||
e.exports = (t = n(4488), n(2238), function () {
|
||
var e = t, n = e.lib.CipherParams, r = e.enc.Hex;
|
||
e.format.Hex = {
|
||
stringify: function (e) {
|
||
return e.ciphertext.toString(r)
|
||
}, parse: function (e) {
|
||
var t = r.parse(e);
|
||
return n.create({
|
||
ciphertext: t
|
||
})
|
||
}
|
||
}
|
||
}(), t.format.Hex)
|
||
}()
|
||
}, 4220: function (e, t, n) {
|
||
!function () {
|
||
var t;
|
||
e.exports = (t = n(4488), void function () {
|
||
var e = t, n = e.lib.Base, r = e.enc.Utf8;
|
||
e.algo.HMAC = n.extend({
|
||
init: function (e, t) {
|
||
e = this._hasher = new e.init, "string" == typeof t && (t = r.parse(t));
|
||
var n = e.blockSize, i = 4 * n;
|
||
t.sigBytes > i && (t = e.finalize(t)), t.clamp();
|
||
for (var o = this._oKey = t.clone(), s = this._iKey = t.clone(), a = o.words, l = s.words, c = 0; c < n; c++) a[c] ^= 1549556828, l[c] ^= 909522486;
|
||
o.sigBytes = s.sigBytes = i, this.reset()
|
||
}, reset: function () {
|
||
var e = this._hasher;
|
||
e.reset(), e.update(this._iKey)
|
||
}, update: function (e) {
|
||
return this._hasher.update(e), this
|
||
}, finalize: function (e) {
|
||
var t = this._hasher, n = t.finalize(e);
|
||
return t.reset(), t.finalize(this._oKey.clone().concat(n))
|
||
}
|
||
})
|
||
}())
|
||
}()
|
||
},
|
||
|
||
|
||
/** 算法 **/
|
||
6111: function (e, t, n) {
|
||
!function () {
|
||
var t;
|
||
e.exports = (t = n(4488), n(9749), n(4503), n(8168), n(8523), n(4646), n(4199), n(2002), n(6368), n(1641), n(7061), n(9092), n(6600), n(7423), n(4220), n(3930), n(8211), n(2238), n(1112), n(7962), n(8049), n(6380), n(8099), n(1884), n(9132), n(4423), n(548), n(4087), n(4708), n(7780), n(9475), n(9638), n(8875), n(1659), n(6501), t)
|
||
}()
|
||
},
|
||
|
||
|
||
4503: function (e, t, n) {
|
||
!function () {
|
||
var t;
|
||
e.exports = (t = n(4488), function () {
|
||
if ("function" == typeof ArrayBuffer) {
|
||
var e = t.lib.WordArray, n = e.init, r = e.init = function (e) {
|
||
if (e instanceof ArrayBuffer && (e = new Uint8Array(e)), (e instanceof Int8Array || "undefined" !== typeof Uint8ClampedArray && e instanceof Uint8ClampedArray || e instanceof Int16Array || e instanceof Uint16Array || e instanceof Int32Array || e instanceof Uint32Array || e instanceof Float32Array || e instanceof Float64Array) && (e = new Uint8Array(e.buffer, e.byteOffset, e.byteLength)), e instanceof Uint8Array) {
|
||
for (var t = e.byteLength, r = [], i = 0; i < t; i++) r[i >>> 2] |= e[i] << 24 - i % 4 * 8;
|
||
n.call(this, r, t)
|
||
} else n.apply(this, arguments)
|
||
};r.prototype = e
|
||
}
|
||
}(), t.lib.WordArray)
|
||
}()
|
||
},
|
||
|
||
6501: function (e, t, n) {
|
||
!function () {
|
||
var t;
|
||
e.exports = (t = n(4488), n(8523), n(4199), n(8211), n(2238), function () {
|
||
var e = t, n = e.lib.BlockCipher, r = e.algo;
|
||
const i = 16,
|
||
o = [608135816, 2242054355, 320440878, 57701188, 2752067618, 698298832, 137296536, 3964562569, 1160258022, 953160567, 3193202383, 887688300, 3232508343, 3380367581, 1065670069, 3041331479, 2450970073, 2306472731],
|
||
s = [[3509652390, 2564797868, 805139163, 3491422135, 3101798381, 1780907670, 3128725573, 4046225305, 614570311, 3012652279, 134345442, 2240740374, 1667834072, 1901547113, 2757295779, 4103290238, 227898511, 1921955416, 1904987480, 2182433518, 2069144605, 3260701109, 2620446009, 720527379, 3318853667, 677414384, 3393288472, 3101374703, 2390351024, 1614419982, 1822297739, 2954791486, 3608508353, 3174124327, 2024746970, 1432378464, 3864339955, 2857741204, 1464375394, 1676153920, 1439316330, 715854006, 3033291828, 289532110, 2706671279, 2087905683, 3018724369, 1668267050, 732546397, 1947742710, 3462151702, 2609353502, 2950085171, 1814351708, 2050118529, 680887927, 999245976, 1800124847, 3300911131, 1713906067, 1641548236, 4213287313, 1216130144, 1575780402, 4018429277, 3917837745, 3693486850, 3949271944, 596196993, 3549867205, 258830323, 2213823033, 772490370, 2760122372, 1774776394, 2652871518, 566650946, 4142492826, 1728879713, 2882767088, 1783734482, 3629395816, 2517608232, 2874225571, 1861159788, 326777828, 3124490320, 2130389656, 2716951837, 967770486, 1724537150, 2185432712, 2364442137, 1164943284, 2105845187, 998989502, 3765401048, 2244026483, 1075463327, 1455516326, 1322494562, 910128902, 469688178, 1117454909, 936433444, 3490320968, 3675253459, 1240580251, 122909385, 2157517691, 634681816, 4142456567, 3825094682, 3061402683, 2540495037, 79693498, 3249098678, 1084186820, 1583128258, 426386531, 1761308591, 1047286709, 322548459, 995290223, 1845252383, 2603652396, 3431023940, 2942221577, 3202600964, 3727903485, 1712269319, 422464435, 3234572375, 1170764815, 3523960633, 3117677531, 1434042557, 442511882, 3600875718, 1076654713, 1738483198, 4213154764, 2393238008, 3677496056, 1014306527, 4251020053, 793779912, 2902807211, 842905082, 4246964064, 1395751752, 1040244610, 2656851899, 3396308128, 445077038, 3742853595, 3577915638, 679411651, 2892444358, 2354009459, 1767581616, 3150600392, 3791627101, 3102740896, 284835224, 4246832056, 1258075500, 768725851, 2589189241, 3069724005, 3532540348, 1274779536, 3789419226, 2764799539, 1660621633, 3471099624, 4011903706, 913787905, 3497959166, 737222580, 2514213453, 2928710040, 3937242737, 1804850592, 3499020752, 2949064160, 2386320175, 2390070455, 2415321851, 4061277028, 2290661394, 2416832540, 1336762016, 1754252060, 3520065937, 3014181293, 791618072, 3188594551, 3933548030, 2332172193, 3852520463, 3043980520, 413987798, 3465142937, 3030929376, 4245938359, 2093235073, 3534596313, 375366246, 2157278981, 2479649556, 555357303, 3870105701, 2008414854, 3344188149, 4221384143, 3956125452, 2067696032, 3594591187, 2921233993, 2428461, 544322398, 577241275, 1471733935, 610547355, 4027169054, 1432588573, 1507829418, 2025931657, 3646575487, 545086370, 48609733, 2200306550, 1653985193, 298326376, 1316178497, 3007786442, 2064951626, 458293330, 2589141269, 3591329599, 3164325604, 727753846, 2179363840, 146436021, 1461446943, 4069977195, 705550613, 3059967265, 3887724982, 4281599278, 3313849956, 1404054877, 2845806497, 146425753, 1854211946], [1266315497, 3048417604, 3681880366, 3289982499, 290971e4, 1235738493, 2632868024, 2414719590, 3970600049, 1771706367, 1449415276, 3266420449, 422970021, 1963543593, 2690192192, 3826793022, 1062508698, 1531092325, 1804592342, 2583117782, 2714934279, 4024971509, 1294809318, 4028980673, 1289560198, 2221992742, 1669523910, 35572830, 157838143, 1052438473, 1016535060, 1802137761, 1753167236, 1386275462, 3080475397, 2857371447, 1040679964, 2145300060, 2390574316, 1461121720, 2956646967, 4031777805, 4028374788, 33600511, 2920084762, 1018524850, 629373528, 3691585981, 3515945977, 2091462646, 2486323059, 586499841, 988145025, 935516892, 3367335476, 2599673255, 2839830854, 265290510, 3972581182, 2759138881, 3795373465, 1005194799, 847297441, 406762289, 1314163512, 1332590856, 1866599683, 4127851711, 750260880, 613907577, 1450815602, 3165620655, 3734664991, 3650291728, 3012275730, 3704569646, 1427272223, 778793252, 1343938022, 2676280711, 2052605720, 1946737175, 3164576444, 3914038668, 3967478842, 3682934266, 1661551462, 3294938066, 4011595847, 840292616, 3712170807, 616741398, 312560963, 711312465, 1351876610, 322626781, 1910503582, 271666773, 2175563734, 1594956187, 70604529, 3617834859, 1007753275, 1495573769, 4069517037, 2549218298, 2663038764, 504708206, 2263041392, 3941167025, 2249088522, 1514023603, 1998579484, 1312622330, 694541497, 2582060303, 2151582166, 1382467621, 776784248, 2618340202, 3323268794, 2497899128, 2784771155, 503983604, 4076293799, 907881277, 423175695, 432175456, 1378068232, 4145222326, 3954048622, 3938656102, 3820766613, 2793130115, 2977904593, 26017576, 3274890735, 3194772133, 1700274565, 1756076034, 4006520079, 3677328699, 720338349, 1533947780, 354530856, 688349552, 3973924725, 1637815568, 332179504, 3949051286, 53804574, 2852348879, 3044236432, 1282449977, 3583942155, 3416972820, 4006381244, 1617046695, 2628476075, 3002303598, 1686838959, 431878346, 2686675385, 1700445008, 1080580658, 1009431731, 832498133, 3223435511, 2605976345, 2271191193, 2516031870, 1648197032, 4164389018, 2548247927, 300782431, 375919233, 238389289, 3353747414, 2531188641, 2019080857, 1475708069, 455242339, 2609103871, 448939670, 3451063019, 1395535956, 2413381860, 1841049896, 1491858159, 885456874, 4264095073, 4001119347, 1565136089, 3898914787, 1108368660, 540939232, 1173283510, 2745871338, 3681308437, 4207628240, 3343053890, 4016749493, 1699691293, 1103962373, 3625875870, 2256883143, 3830138730, 1031889488, 3479347698, 1535977030, 4236805024, 3251091107, 2132092099, 1774941330, 1199868427, 1452454533, 157007616, 2904115357, 342012276, 595725824, 1480756522, 206960106, 497939518, 591360097, 863170706, 2375253569, 3596610801, 1814182875, 2094937945, 3421402208, 1082520231, 3463918190, 2785509508, 435703966, 3908032597, 1641649973, 2842273706, 3305899714, 1510255612, 2148256476, 2655287854, 3276092548, 4258621189, 236887753, 3681803219, 274041037, 1734335097, 3815195456, 3317970021, 1899903192, 1026095262, 4050517792, 356393447, 2410691914, 3873677099, 3682840055], [3913112168, 2491498743, 4132185628, 2489919796, 1091903735, 1979897079, 3170134830, 3567386728, 3557303409, 857797738, 1136121015, 1342202287, 507115054, 2535736646, 337727348, 3213592640, 1301675037, 2528481711, 1895095763, 1721773893, 3216771564, 62756741, 2142006736, 835421444, 2531993523, 1442658625, 3659876326, 2882144922, 676362277, 1392781812, 170690266, 3921047035, 1759253602, 3611846912, 1745797284, 664899054, 1329594018, 3901205900, 3045908486, 2062866102, 2865634940, 3543621612, 3464012697, 1080764994, 553557557, 3656615353, 3996768171, 991055499, 499776247, 1265440854, 648242737, 3940784050, 980351604, 3713745714, 1749149687, 3396870395, 4211799374, 3640570775, 1161844396, 3125318951, 1431517754, 545492359, 4268468663, 3499529547, 1437099964, 2702547544, 3433638243, 2581715763, 2787789398, 1060185593, 1593081372, 2418618748, 4260947970, 69676912, 2159744348, 86519011, 2512459080, 3838209314, 1220612927, 3339683548, 133810670, 1090789135, 1078426020, 1569222167, 845107691, 3583754449, 4072456591, 1091646820, 628848692, 1613405280, 3757631651, 526609435, 236106946, 48312990, 2942717905, 3402727701, 1797494240, 859738849, 992217954, 4005476642, 2243076622, 3870952857, 3732016268, 765654824, 3490871365, 2511836413, 1685915746, 3888969200, 1414112111, 2273134842, 3281911079, 4080962846, 172450625, 2569994100, 980381355, 4109958455, 2819808352, 2716589560, 2568741196, 3681446669, 3329971472, 1835478071, 660984891, 3704678404, 4045999559, 3422617507, 3040415634, 1762651403, 1719377915, 3470491036, 2693910283, 3642056355, 3138596744, 1364962596, 2073328063, 1983633131, 926494387, 3423689081, 2150032023, 4096667949, 1749200295, 3328846651, 309677260, 2016342300, 1779581495, 3079819751, 111262694, 1274766160, 443224088, 298511866, 1025883608, 3806446537, 1145181785, 168956806, 3641502830, 3584813610, 1689216846, 3666258015, 3200248200, 1692713982, 2646376535, 4042768518, 1618508792, 1610833997, 3523052358, 4130873264, 2001055236, 3610705100, 2202168115, 4028541809, 2961195399, 1006657119, 2006996926, 3186142756, 1430667929, 3210227297, 1314452623, 4074634658, 4101304120, 2273951170, 1399257539, 3367210612, 3027628629, 1190975929, 2062231137, 2333990788, 2221543033, 2438960610, 1181637006, 548689776, 2362791313, 3372408396, 3104550113, 3145860560, 296247880, 1970579870, 3078560182, 3769228297, 1714227617, 3291629107, 3898220290, 166772364, 1251581989, 493813264, 448347421, 195405023, 2709975567, 677966185, 3703036547, 1463355134, 2715995803, 1338867538, 1343315457, 2802222074, 2684532164, 233230375, 2599980071, 2000651841, 3277868038, 1638401717, 4028070440, 3237316320, 6314154, 819756386, 300326615, 590932579, 1405279636, 3267499572, 3150704214, 2428286686, 3959192993, 3461946742, 1862657033, 1266418056, 963775037, 2089974820, 2263052895, 1917689273, 448879540, 3550394620, 3981727096, 150775221, 3627908307, 1303187396, 508620638, 2975983352, 2726630617, 1817252668, 1876281319, 1457606340, 908771278, 3720792119, 3617206836, 2455994898, 1729034894, 1080033504], [976866871, 3556439503, 2881648439, 1522871579, 1555064734, 1336096578, 3548522304, 2579274686, 3574697629, 3205460757, 3593280638, 3338716283, 3079412587, 564236357, 2993598910, 1781952180, 1464380207, 3163844217, 3332601554, 1699332808, 1393555694, 1183702653, 3581086237, 1288719814, 691649499, 2847557200, 2895455976, 3193889540, 2717570544, 1781354906, 1676643554, 2592534050, 3230253752, 1126444790, 2770207658, 2633158820, 2210423226, 2615765581, 2414155088, 3127139286, 673620729, 2805611233, 1269405062, 4015350505, 3341807571, 4149409754, 1057255273, 2012875353, 2162469141, 2276492801, 2601117357, 993977747, 3918593370, 2654263191, 753973209, 36408145, 2530585658, 25011837, 3520020182, 2088578344, 530523599, 2918365339, 1524020338, 1518925132, 3760827505, 3759777254, 1202760957, 3985898139, 3906192525, 674977740, 4174734889, 2031300136, 2019492241, 3983892565, 4153806404, 3822280332, 352677332, 2297720250, 60907813, 90501309, 3286998549, 1016092578, 2535922412, 2839152426, 457141659, 509813237, 4120667899, 652014361, 1966332200, 2975202805, 55981186, 2327461051, 676427537, 3255491064, 2882294119, 3433927263, 1307055953, 942726286, 933058658, 2468411793, 3933900994, 4215176142, 1361170020, 2001714738, 2830558078, 3274259782, 1222529897, 1679025792, 2729314320, 3714953764, 1770335741, 151462246, 3013232138, 1682292957, 1483529935, 471910574, 1539241949, 458788160, 3436315007, 1807016891, 3718408830, 978976581, 1043663428, 3165965781, 1927990952, 4200891579, 2372276910, 3208408903, 3533431907, 1412390302, 2931980059, 4132332400, 1947078029, 3881505623, 4168226417, 2941484381, 1077988104, 1320477388, 886195818, 18198404, 3786409e3, 2509781533, 112762804, 3463356488, 1866414978, 891333506, 18488651, 661792760, 1628790961, 3885187036, 3141171499, 876946877, 2693282273, 1372485963, 791857591, 2686433993, 3759982718, 3167212022, 3472953795, 2716379847, 445679433, 3561995674, 3504004811, 3574258232, 54117162, 3331405415, 2381918588, 3769707343, 4154350007, 1140177722, 4074052095, 668550556, 3214352940, 367459370, 261225585, 2610173221, 4209349473, 3468074219, 3265815641, 314222801, 3066103646, 3808782860, 282218597, 3406013506, 3773591054, 379116347, 1285071038, 846784868, 2669647154, 3771962079, 3550491691, 2305946142, 453669953, 1268987020, 3317592352, 3279303384, 3744833421, 2610507566, 3859509063, 266596637, 3847019092, 517658769, 3462560207, 3443424879, 370717030, 4247526661, 2224018117, 4143653529, 4112773975, 2788324899, 2477274417, 1456262402, 2901442914, 1517677493, 1846949527, 2295493580, 3734397586, 2176403920, 1280348187, 1908823572, 3871786941, 846861322, 1172426758, 3287448474, 3383383037, 1655181056, 3139813346, 901632758, 1897031941, 2986607138, 3066810236, 3447102507, 1393639104, 373351379, 950779232, 625454576, 3124240540, 4148612726, 2007998917, 544563296, 2244738638, 2330496472, 2058025392, 1291430526, 424198748, 50039436, 29584100, 3605783033, 2429876329, 2791104160, 1057563949, 3255363231, 3075367218, 3463963227, 1469046755, 985887462]];
|
||
var a = {
|
||
pbox: [], sbox: []
|
||
};
|
||
|
||
function l(e, t) {
|
||
let n = t >> 24 & 255, r = t >> 16 & 255, i = t >> 8 & 255, o = 255 & t,
|
||
s = e.sbox[0][n] + e.sbox[1][r];
|
||
return s ^= e.sbox[2][i], s += e.sbox[3][o], s
|
||
}
|
||
|
||
function c(e, t, n) {
|
||
let r, o = t, s = n;
|
||
for (let a = 0; a < i; ++a) o ^= e.pbox[a], s = l(e, o) ^ s, r = o, o = s, s = r;
|
||
return r = o, o = s, s = r, s ^= e.pbox[i], o ^= e.pbox[i + 1], {
|
||
left: o, right: s
|
||
}
|
||
}
|
||
|
||
function u(e, t, n) {
|
||
let r, o = t, s = n;
|
||
for (let a = i + 1; a > 1; --a) o ^= e.pbox[a], s = l(e, o) ^ s, r = o, o = s, s = r;
|
||
return r = o, o = s, s = r, s ^= e.pbox[1], o ^= e.pbox[0], {
|
||
left: o, right: s
|
||
}
|
||
}
|
||
|
||
function d(e, t, n) {
|
||
for (let i = 0; i < 4; i++) {
|
||
e.sbox[i] = [];
|
||
for (let t = 0; t < 256; t++) e.sbox[i][t] = s[i][t]
|
||
}
|
||
let r = 0;
|
||
for (let s = 0; s < i + 2; s++) e.pbox[s] = o[s] ^ t[r], r++, r >= n && (r = 0);
|
||
let a = 0, l = 0, u = 0;
|
||
for (let o = 0; o < i + 2; o += 2) u = c(e, a, l), a = u.left, l = u.right, e.pbox[o] = a, e.pbox[o + 1] = l;
|
||
for (let i = 0; i < 4; i++) for (let t = 0; t < 256; t += 2) u = c(e, a, l), a = u.left, l = u.right, e.sbox[i][t] = a, e.sbox[i][t + 1] = l;
|
||
return !0
|
||
}
|
||
|
||
var p = r.Blowfish = n.extend({
|
||
_doReset: function () {
|
||
if (this._keyPriorReset !== this._key) {
|
||
var e = this._keyPriorReset = this._key, t = e.words, n = e.sigBytes / 4;
|
||
d(a, t, n)
|
||
}
|
||
}, encryptBlock: function (e, t) {
|
||
var n = c(a, e[t], e[t + 1]);
|
||
e[t] = n.left, e[t + 1] = n.right
|
||
}, decryptBlock: function (e, t) {
|
||
var n = u(a, e[t], e[t + 1]);
|
||
e[t] = n.left, e[t + 1] = n.right
|
||
}, blockSize: 2, keySize: 4, ivSize: 2
|
||
});
|
||
e.Blowfish = n._createHelper(p)
|
||
}(), t.Blowfish)
|
||
}()
|
||
},
|
||
|
||
1659: function (e, t, n) {
|
||
!function () {
|
||
var t;
|
||
e.exports = (t = n(4488), n(8523), n(4199), n(8211), n(2238), function () {
|
||
var e = t, n = e.lib.StreamCipher, r = e.algo, i = [], o = [], s = [], a = r.RabbitLegacy = n.extend({
|
||
_doReset: function () {
|
||
var e = this._key.words, t = this.cfg.iv,
|
||
n = this._X = [e[0], e[3] << 16 | e[2] >>> 16, e[1], e[0] << 16 | e[3] >>> 16, e[2], e[1] << 16 | e[0] >>> 16, e[3], e[2] << 16 | e[1] >>> 16],
|
||
r = this._C = [e[2] << 16 | e[2] >>> 16, 4294901760 & e[0] | 65535 & e[1], e[3] << 16 | e[3] >>> 16, 4294901760 & e[1] | 65535 & e[2], e[0] << 16 | e[0] >>> 16, 4294901760 & e[2] | 65535 & e[3], e[1] << 16 | e[1] >>> 16, 4294901760 & e[3] | 65535 & e[0]];
|
||
this._b = 0;
|
||
for (var i = 0; i < 4; i++) l.call(this);
|
||
for (i = 0; i < 8; i++) r[i] ^= n[i + 4 & 7];
|
||
if (t) {
|
||
var o = t.words, s = o[0], a = o[1],
|
||
c = 16711935 & (s << 8 | s >>> 24) | 4278255360 & (s << 24 | s >>> 8),
|
||
u = 16711935 & (a << 8 | a >>> 24) | 4278255360 & (a << 24 | a >>> 8),
|
||
d = c >>> 16 | 4294901760 & u, p = u << 16 | 65535 & c;
|
||
for (r[0] ^= c, r[1] ^= d, r[2] ^= u, r[3] ^= p, r[4] ^= c, r[5] ^= d, r[6] ^= u, r[7] ^= p, i = 0; i < 4; i++) l.call(this)
|
||
}
|
||
}, _doProcessBlock: function (e, t) {
|
||
var n = this._X;
|
||
l.call(this), i[0] = n[0] ^ n[5] >>> 16 ^ n[3] << 16, i[1] = n[2] ^ n[7] >>> 16 ^ n[5] << 16, i[2] = n[4] ^ n[1] >>> 16 ^ n[7] << 16, i[3] = n[6] ^ n[3] >>> 16 ^ n[1] << 16;
|
||
for (var r = 0; r < 4; r++) i[r] = 16711935 & (i[r] << 8 | i[r] >>> 24) | 4278255360 & (i[r] << 24 | i[r] >>> 8), e[t + r] ^= i[r]
|
||
}, blockSize: 4, ivSize: 2
|
||
});
|
||
|
||
function l() {
|
||
for (var e = this._X, t = this._C, n = 0; n < 8; n++) o[n] = t[n];
|
||
for (t[0] = t[0] + 1295307597 + this._b | 0, t[1] = t[1] + 3545052371 + (t[0] >>> 0 < o[0] >>> 0 ? 1 : 0) | 0, t[2] = t[2] + 886263092 + (t[1] >>> 0 < o[1] >>> 0 ? 1 : 0) | 0, t[3] = t[3] + 1295307597 + (t[2] >>> 0 < o[2] >>> 0 ? 1 : 0) | 0, t[4] = t[4] + 3545052371 + (t[3] >>> 0 < o[3] >>> 0 ? 1 : 0) | 0, t[5] = t[5] + 886263092 + (t[4] >>> 0 < o[4] >>> 0 ? 1 : 0) | 0, t[6] = t[6] + 1295307597 + (t[5] >>> 0 < o[5] >>> 0 ? 1 : 0) | 0, t[7] = t[7] + 3545052371 + (t[6] >>> 0 < o[6] >>> 0 ? 1 : 0) | 0, this._b = t[7] >>> 0 < o[7] >>> 0 ? 1 : 0, n = 0; n < 8; n++) {
|
||
var r = e[n] + t[n], i = 65535 & r, a = r >>> 16, l = ((i * i >>> 17) + i * a >>> 15) + a * a,
|
||
c = ((4294901760 & r) * r | 0) + ((65535 & r) * r | 0);
|
||
s[n] = l ^ c
|
||
}
|
||
e[0] = s[0] + (s[7] << 16 | s[7] >>> 16) + (s[6] << 16 | s[6] >>> 16) | 0, e[1] = s[1] + (s[0] << 8 | s[0] >>> 24) + s[7] | 0, e[2] = s[2] + (s[1] << 16 | s[1] >>> 16) + (s[0] << 16 | s[0] >>> 16) | 0, e[3] = s[3] + (s[2] << 8 | s[2] >>> 24) + s[1] | 0, e[4] = s[4] + (s[3] << 16 | s[3] >>> 16) + (s[2] << 16 | s[2] >>> 16) | 0, e[5] = s[5] + (s[4] << 8 | s[4] >>> 24) + s[3] | 0, e[6] = s[6] + (s[5] << 16 | s[5] >>> 16) + (s[4] << 16 | s[4] >>> 16) | 0, e[7] = s[7] + (s[6] << 8 | s[6] >>> 24) + s[5] | 0
|
||
}
|
||
|
||
e.RabbitLegacy = n._createHelper(a)
|
||
}(), t.RabbitLegacy)
|
||
}()
|
||
},
|
||
|
||
|
||
4199: function (e, t, n) {
|
||
!function () {
|
||
var t;
|
||
e.exports = (t = n(4488), function (e) {
|
||
var n = t, r = n.lib, i = r.WordArray, o = r.Hasher, s = n.algo, a = [];
|
||
!function () {
|
||
for (var t = 0; t < 64; t++) a[t] = 4294967296 * e.abs(e.sin(t + 1)) | 0
|
||
}();
|
||
var l = s.MD5 = o.extend({
|
||
_doReset: function () {
|
||
this._hash = new i.init([1732584193, 4023233417, 2562383102, 271733878])
|
||
}, _doProcessBlock: function (e, t) {
|
||
for (var n = 0; n < 16; n++) {
|
||
var r = t + n, i = e[r];
|
||
e[r] = 16711935 & (i << 8 | i >>> 24) | 4278255360 & (i << 24 | i >>> 8)
|
||
}
|
||
var o = this._hash.words, s = e[t + 0], l = e[t + 1], h = e[t + 2], f = e[t + 3], m = e[t + 4],
|
||
g = e[t + 5], v = e[t + 6], y = e[t + 7], x = e[t + 8], b = e[t + 9], w = e[t + 10],
|
||
S = e[t + 11], k = e[t + 12], C = e[t + 13], j = e[t + 14], E = e[t + 15], T = o[0],
|
||
A = o[1], _ = o[2], P = o[3];
|
||
T = c(T, A, _, P, s, 7, a[0]), P = c(P, T, A, _, l, 12, a[1]), _ = c(_, P, T, A, h, 17, a[2]), A = c(A, _, P, T, f, 22, a[3]), T = c(T, A, _, P, m, 7, a[4]), P = c(P, T, A, _, g, 12, a[5]), _ = c(_, P, T, A, v, 17, a[6]), A = c(A, _, P, T, y, 22, a[7]), T = c(T, A, _, P, x, 7, a[8]), P = c(P, T, A, _, b, 12, a[9]), _ = c(_, P, T, A, w, 17, a[10]), A = c(A, _, P, T, S, 22, a[11]), T = c(T, A, _, P, k, 7, a[12]), P = c(P, T, A, _, C, 12, a[13]), _ = c(_, P, T, A, j, 17, a[14]), T = u(T, A = c(A, _, P, T, E, 22, a[15]), _, P, l, 5, a[16]), P = u(P, T, A, _, v, 9, a[17]), _ = u(_, P, T, A, S, 14, a[18]), A = u(A, _, P, T, s, 20, a[19]), T = u(T, A, _, P, g, 5, a[20]), P = u(P, T, A, _, w, 9, a[21]), _ = u(_, P, T, A, E, 14, a[22]), A = u(A, _, P, T, m, 20, a[23]), T = u(T, A, _, P, b, 5, a[24]), P = u(P, T, A, _, j, 9, a[25]), _ = u(_, P, T, A, f, 14, a[26]), A = u(A, _, P, T, x, 20, a[27]), T = u(T, A, _, P, C, 5, a[28]), P = u(P, T, A, _, h, 9, a[29]), _ = u(_, P, T, A, y, 14, a[30]), T = d(T, A = u(A, _, P, T, k, 20, a[31]), _, P, g, 4, a[32]), P = d(P, T, A, _, x, 11, a[33]), _ = d(_, P, T, A, S, 16, a[34]), A = d(A, _, P, T, j, 23, a[35]), T = d(T, A, _, P, l, 4, a[36]), P = d(P, T, A, _, m, 11, a[37]), _ = d(_, P, T, A, y, 16, a[38]), A = d(A, _, P, T, w, 23, a[39]), T = d(T, A, _, P, C, 4, a[40]), P = d(P, T, A, _, s, 11, a[41]), _ = d(_, P, T, A, f, 16, a[42]), A = d(A, _, P, T, v, 23, a[43]), T = d(T, A, _, P, b, 4, a[44]), P = d(P, T, A, _, k, 11, a[45]), _ = d(_, P, T, A, E, 16, a[46]), T = p(T, A = d(A, _, P, T, h, 23, a[47]), _, P, s, 6, a[48]), P = p(P, T, A, _, y, 10, a[49]), _ = p(_, P, T, A, j, 15, a[50]), A = p(A, _, P, T, g, 21, a[51]), T = p(T, A, _, P, k, 6, a[52]), P = p(P, T, A, _, f, 10, a[53]), _ = p(_, P, T, A, w, 15, a[54]), A = p(A, _, P, T, l, 21, a[55]), T = p(T, A, _, P, x, 6, a[56]), P = p(P, T, A, _, E, 10, a[57]), _ = p(_, P, T, A, v, 15, a[58]), A = p(A, _, P, T, C, 21, a[59]), T = p(T, A, _, P, m, 6, a[60]), P = p(P, T, A, _, S, 10, a[61]), _ = p(_, P, T, A, h, 15, a[62]), A = p(A, _, P, T, b, 21, a[63]), o[0] = o[0] + T | 0, o[1] = o[1] + A | 0, o[2] = o[2] + _ | 0, o[3] = o[3] + P | 0
|
||
}, _doFinalize: function () {
|
||
var t = this._data, n = t.words, r = 8 * this._nDataBytes, i = 8 * t.sigBytes;
|
||
n[i >>> 5] |= 128 << 24 - i % 32;
|
||
var o = e.floor(r / 4294967296), s = r;
|
||
n[15 + (i + 64 >>> 9 << 4)] = 16711935 & (o << 8 | o >>> 24) | 4278255360 & (o << 24 | o >>> 8), n[14 + (i + 64 >>> 9 << 4)] = 16711935 & (s << 8 | s >>> 24) | 4278255360 & (s << 24 | s >>> 8), t.sigBytes = 4 * (n.length + 1), this._process();
|
||
for (var a = this._hash, l = a.words, c = 0; c < 4; c++) {
|
||
var u = l[c];
|
||
l[c] = 16711935 & (u << 8 | u >>> 24) | 4278255360 & (u << 24 | u >>> 8)
|
||
}
|
||
return a
|
||
}, clone: function () {
|
||
var e = o.clone.call(this);
|
||
return e._hash = this._hash.clone(), e
|
||
}
|
||
});
|
||
|
||
function c(e, t, n, r, i, o, s) {
|
||
var a = e + (t & n | ~t & r) + i + s;
|
||
return (a << o | a >>> 32 - o) + t
|
||
}
|
||
|
||
function u(e, t, n, r, i, o, s) {
|
||
var a = e + (t & r | n & ~r) + i + s;
|
||
return (a << o | a >>> 32 - o) + t
|
||
}
|
||
|
||
function d(e, t, n, r, i, o, s) {
|
||
var a = e + (t ^ n ^ r) + i + s;
|
||
return (a << o | a >>> 32 - o) + t
|
||
}
|
||
|
||
function p(e, t, n, r, i, o, s) {
|
||
var a = e + (n ^ (t | ~r)) + i + s;
|
||
return (a << o | a >>> 32 - o) + t
|
||
}
|
||
|
||
n.MD5 = o._createHelper(l), n.HmacMD5 = o._createHmacHelper(l)
|
||
}(Math), t.MD5)
|
||
}()
|
||
}, 1112: function (e, t, n) {
|
||
!function () {
|
||
var t;
|
||
e.exports = (t = n(4488), n(2238), t.mode.CFB = function () {
|
||
var e = t.lib.BlockCipherMode.extend();
|
||
|
||
function n(e, t, n, r) {
|
||
var i, o = this._iv;
|
||
o ? (i = o.slice(0), this._iv = void 0) : i = this._prevBlock, r.encryptBlock(i, 0);
|
||
for (var s = 0; s < n; s++) e[t + s] ^= i[s]
|
||
}
|
||
|
||
return e.Encryptor = e.extend({
|
||
processBlock: function (e, t) {
|
||
var r = this._cipher, i = r.blockSize;
|
||
n.call(this, e, t, i, r), this._prevBlock = e.slice(t, t + i)
|
||
}
|
||
}), e.Decryptor = e.extend({
|
||
processBlock: function (e, t) {
|
||
var r = this._cipher, i = r.blockSize, o = e.slice(t, t + i);
|
||
n.call(this, e, t, i, r), this._prevBlock = o
|
||
}
|
||
}), e
|
||
}(), t.mode.CFB)
|
||
}()
|
||
}, 8049: function (e, t, n) {
|
||
!function () {
|
||
var t;
|
||
e.exports = (t = n(4488), n(2238), t.mode.CTRGladman = function () {
|
||
var e = t.lib.BlockCipherMode.extend();
|
||
|
||
function n(e) {
|
||
if (255 === (e >> 24 & 255)) {
|
||
var t = e >> 16 & 255, n = e >> 8 & 255, r = 255 & e;
|
||
255 === t ? (t = 0, 255 === n ? (n = 0, 255 === r ? r = 0 : ++r) : ++n) : ++t, e = 0, e += t << 16, e += n << 8, e += r
|
||
} else e += 1 << 24;
|
||
return e
|
||
}
|
||
|
||
function r(e) {
|
||
return 0 === (e[0] = n(e[0])) && (e[1] = n(e[1])), e
|
||
}
|
||
|
||
var i = e.Encryptor = e.extend({
|
||
processBlock: function (e, t) {
|
||
var n = this._cipher, i = n.blockSize, o = this._iv, s = this._counter;
|
||
o && (s = this._counter = o.slice(0), this._iv = void 0), r(s);
|
||
var a = s.slice(0);
|
||
n.encryptBlock(a, 0);
|
||
for (var l = 0; l < i; l++) e[t + l] ^= a[l]
|
||
}
|
||
});
|
||
return e.Decryptor = i, e
|
||
}(), t.mode.CTRGladman)
|
||
}()
|
||
}, 7962: function (e, t, n) {
|
||
!function () {
|
||
var t;
|
||
e.exports = (t = n(4488), n(2238), t.mode.CTR = function () {
|
||
var e = t.lib.BlockCipherMode.extend(), n = e.Encryptor = e.extend({
|
||
processBlock: function (e, t) {
|
||
var n = this._cipher, r = n.blockSize, i = this._iv, o = this._counter;
|
||
i && (o = this._counter = i.slice(0), this._iv = void 0);
|
||
var s = o.slice(0);
|
||
n.encryptBlock(s, 0), o[r - 1] = o[r - 1] + 1 | 0;
|
||
for (var a = 0; a < r; a++) e[t + a] ^= s[a]
|
||
}
|
||
});
|
||
return e.Decryptor = n, e
|
||
}(), t.mode.CTR)
|
||
}()
|
||
}, 8099: function (e, t, n) {
|
||
!function () {
|
||
var t;
|
||
e.exports = (t = n(4488), n(2238), t.mode.ECB = function () {
|
||
var e = t.lib.BlockCipherMode.extend();
|
||
return e.Encryptor = e.extend({
|
||
processBlock: function (e, t) {
|
||
this._cipher.encryptBlock(e, t)
|
||
}
|
||
}), e.Decryptor = e.extend({
|
||
processBlock: function (e, t) {
|
||
this._cipher.decryptBlock(e, t)
|
||
}
|
||
}), e
|
||
}(), t.mode.ECB)
|
||
}()
|
||
}, 6380: function (e, t, n) {
|
||
!function () {
|
||
var t;
|
||
e.exports = (t = n(4488), n(2238), t.mode.OFB = function () {
|
||
var e = t.lib.BlockCipherMode.extend(), n = e.Encryptor = e.extend({
|
||
processBlock: function (e, t) {
|
||
var n = this._cipher, r = n.blockSize, i = this._iv, o = this._keystream;
|
||
i && (o = this._keystream = i.slice(0), this._iv = void 0), n.encryptBlock(o, 0);
|
||
for (var s = 0; s < r; s++) e[t + s] ^= o[s]
|
||
}
|
||
});
|
||
return e.Decryptor = n, e
|
||
}(), t.mode.OFB)
|
||
}()
|
||
}, 1884: function (e, t, n) {
|
||
!function () {
|
||
var t;
|
||
e.exports = (t = n(4488), n(2238), t.pad.AnsiX923 = {
|
||
pad: function (e, t) {
|
||
var n = e.sigBytes, r = 4 * t, i = r - n % r, o = n + i - 1;
|
||
e.clamp(), e.words[o >>> 2] |= i << 24 - o % 4 * 8, e.sigBytes += i
|
||
}, unpad: function (e) {
|
||
var t = 255 & e.words[e.sigBytes - 1 >>> 2];
|
||
e.sigBytes -= t
|
||
}
|
||
}, t.pad.Ansix923)
|
||
}()
|
||
}, 9132: function (e, t, n) {
|
||
!function () {
|
||
var t;
|
||
e.exports = (t = n(4488), n(2238), t.pad.Iso10126 = {
|
||
pad: function (e, n) {
|
||
var r = 4 * n, i = r - e.sigBytes % r;
|
||
e.concat(t.lib.WordArray.random(i - 1)).concat(t.lib.WordArray.create([i << 24], 1))
|
||
}, unpad: function (e) {
|
||
var t = 255 & e.words[e.sigBytes - 1 >>> 2];
|
||
e.sigBytes -= t
|
||
}
|
||
}, t.pad.Iso10126)
|
||
}()
|
||
}, 4423: function (e, t, n) {
|
||
!function () {
|
||
var t;
|
||
e.exports = (t = n(4488), n(2238), t.pad.Iso97971 = {
|
||
pad: function (e, n) {
|
||
e.concat(t.lib.WordArray.create([2147483648], 1)), t.pad.ZeroPadding.pad(e, n)
|
||
}, unpad: function (e) {
|
||
t.pad.ZeroPadding.unpad(e), e.sigBytes--
|
||
}
|
||
}, t.pad.Iso97971)
|
||
}()
|
||
}, 4087: function (e, t, n) {
|
||
!function () {
|
||
var t;
|
||
e.exports = (t = n(4488), n(2238), t.pad.NoPadding = {
|
||
pad: function () {
|
||
}, unpad: function () {
|
||
}
|
||
}, t.pad.NoPadding)
|
||
}()
|
||
}, 548: function (e, t, n) {
|
||
!function () {
|
||
var t;
|
||
e.exports = (t = n(4488), n(2238), t.pad.ZeroPadding = {
|
||
pad: function (e, t) {
|
||
var n = 4 * t;
|
||
e.clamp(), e.sigBytes += n - (e.sigBytes % n || n)
|
||
}, unpad: function (e) {
|
||
var t = e.words, n = e.sigBytes - 1;
|
||
for (n = e.sigBytes - 1; n >= 0; n--) if (t[n >>> 2] >>> 24 - n % 4 * 8 & 255) {
|
||
e.sigBytes = n + 1;
|
||
break
|
||
}
|
||
}
|
||
}, t.pad.ZeroPadding)
|
||
}()
|
||
}, 3930: function (e, t, n) {
|
||
!function () {
|
||
var t;
|
||
e.exports = (t = n(4488), n(6368), n(4220), function () {
|
||
var e = t, n = e.lib, r = n.Base, i = n.WordArray, o = e.algo, s = o.SHA256, a = o.HMAC,
|
||
l = o.PBKDF2 = r.extend({
|
||
cfg: r.extend({
|
||
keySize: 4, hasher: s, iterations: 25e4
|
||
}), init: function (e) {
|
||
this.cfg = this.cfg.extend(e)
|
||
}, compute: function (e, t) {
|
||
for (var n = this.cfg, r = a.create(n.hasher, e), o = i.create(), s = i.create([1]), l = o.words, c = s.words, u = n.keySize, d = n.iterations; l.length < u;) {
|
||
var p = r.update(t).finalize(s);
|
||
r.reset();
|
||
for (var h = p.words, f = h.length, m = p, g = 1; g < d; g++) {
|
||
m = r.finalize(m), r.reset();
|
||
for (var v = m.words, y = 0; y < f; y++) h[y] ^= v[y]
|
||
}
|
||
o.concat(p), c[0]++
|
||
}
|
||
return o.sigBytes = 4 * u, o
|
||
}
|
||
});
|
||
e.PBKDF2 = function (e, t, n) {
|
||
return l.create(n).compute(e, t)
|
||
}
|
||
}(), t.PBKDF2)
|
||
}()
|
||
},
|
||
|
||
8875: function (e, t, n) {
|
||
!function () {
|
||
var t;
|
||
e.exports = (t = n(4488), n(8523), n(4199), n(8211), n(2238), function () {
|
||
var e = t, n = e.lib.StreamCipher, r = e.algo, i = [], o = [], s = [], a = r.Rabbit = n.extend({
|
||
_doReset: function () {
|
||
for (var e = this._key.words, t = this.cfg.iv, n = 0; n < 4; n++) e[n] = 16711935 & (e[n] << 8 | e[n] >>> 24) | 4278255360 & (e[n] << 24 | e[n] >>> 8);
|
||
var r = this._X = [e[0], e[3] << 16 | e[2] >>> 16, e[1], e[0] << 16 | e[3] >>> 16, e[2], e[1] << 16 | e[0] >>> 16, e[3], e[2] << 16 | e[1] >>> 16],
|
||
i = this._C = [e[2] << 16 | e[2] >>> 16, 4294901760 & e[0] | 65535 & e[1], e[3] << 16 | e[3] >>> 16, 4294901760 & e[1] | 65535 & e[2], e[0] << 16 | e[0] >>> 16, 4294901760 & e[2] | 65535 & e[3], e[1] << 16 | e[1] >>> 16, 4294901760 & e[3] | 65535 & e[0]];
|
||
for (this._b = 0, n = 0; n < 4; n++) l.call(this);
|
||
for (n = 0; n < 8; n++) i[n] ^= r[n + 4 & 7];
|
||
if (t) {
|
||
var o = t.words, s = o[0], a = o[1],
|
||
c = 16711935 & (s << 8 | s >>> 24) | 4278255360 & (s << 24 | s >>> 8),
|
||
u = 16711935 & (a << 8 | a >>> 24) | 4278255360 & (a << 24 | a >>> 8),
|
||
d = c >>> 16 | 4294901760 & u, p = u << 16 | 65535 & c;
|
||
for (i[0] ^= c, i[1] ^= d, i[2] ^= u, i[3] ^= p, i[4] ^= c, i[5] ^= d, i[6] ^= u, i[7] ^= p, n = 0; n < 4; n++) l.call(this)
|
||
}
|
||
}, _doProcessBlock: function (e, t) {
|
||
var n = this._X;
|
||
l.call(this), i[0] = n[0] ^ n[5] >>> 16 ^ n[3] << 16, i[1] = n[2] ^ n[7] >>> 16 ^ n[5] << 16, i[2] = n[4] ^ n[1] >>> 16 ^ n[7] << 16, i[3] = n[6] ^ n[3] >>> 16 ^ n[1] << 16;
|
||
for (var r = 0; r < 4; r++) i[r] = 16711935 & (i[r] << 8 | i[r] >>> 24) | 4278255360 & (i[r] << 24 | i[r] >>> 8), e[t + r] ^= i[r]
|
||
}, blockSize: 4, ivSize: 2
|
||
});
|
||
|
||
function l() {
|
||
for (var e = this._X, t = this._C, n = 0; n < 8; n++) o[n] = t[n];
|
||
for (t[0] = t[0] + 1295307597 + this._b | 0, t[1] = t[1] + 3545052371 + (t[0] >>> 0 < o[0] >>> 0 ? 1 : 0) | 0, t[2] = t[2] + 886263092 + (t[1] >>> 0 < o[1] >>> 0 ? 1 : 0) | 0, t[3] = t[3] + 1295307597 + (t[2] >>> 0 < o[2] >>> 0 ? 1 : 0) | 0, t[4] = t[4] + 3545052371 + (t[3] >>> 0 < o[3] >>> 0 ? 1 : 0) | 0, t[5] = t[5] + 886263092 + (t[4] >>> 0 < o[4] >>> 0 ? 1 : 0) | 0, t[6] = t[6] + 1295307597 + (t[5] >>> 0 < o[5] >>> 0 ? 1 : 0) | 0, t[7] = t[7] + 3545052371 + (t[6] >>> 0 < o[6] >>> 0 ? 1 : 0) | 0, this._b = t[7] >>> 0 < o[7] >>> 0 ? 1 : 0, n = 0; n < 8; n++) {
|
||
var r = e[n] + t[n], i = 65535 & r, a = r >>> 16, l = ((i * i >>> 17) + i * a >>> 15) + a * a,
|
||
c = ((4294901760 & r) * r | 0) + ((65535 & r) * r | 0);
|
||
s[n] = l ^ c
|
||
}
|
||
e[0] = s[0] + (s[7] << 16 | s[7] >>> 16) + (s[6] << 16 | s[6] >>> 16) | 0, e[1] = s[1] + (s[0] << 8 | s[0] >>> 24) + s[7] | 0, e[2] = s[2] + (s[1] << 16 | s[1] >>> 16) + (s[0] << 16 | s[0] >>> 16) | 0, e[3] = s[3] + (s[2] << 8 | s[2] >>> 24) + s[1] | 0, e[4] = s[4] + (s[3] << 16 | s[3] >>> 16) + (s[2] << 16 | s[2] >>> 16) | 0, e[5] = s[5] + (s[4] << 8 | s[4] >>> 24) + s[3] | 0, e[6] = s[6] + (s[5] << 16 | s[5] >>> 16) + (s[4] << 16 | s[4] >>> 16) | 0, e[7] = s[7] + (s[6] << 8 | s[6] >>> 24) + s[5] | 0
|
||
}
|
||
|
||
e.Rabbit = n._createHelper(a)
|
||
}(), t.Rabbit)
|
||
}()
|
||
}, 9638: function (e, t, n) {
|
||
!function () {
|
||
var t;
|
||
e.exports = (t = n(4488), n(8523), n(4199), n(8211), n(2238), function () {
|
||
var e = t, n = e.lib.StreamCipher, r = e.algo, i = r.RC4 = n.extend({
|
||
_doReset: function () {
|
||
for (var e = this._key, t = e.words, n = e.sigBytes, r = this._S = [], i = 0; i < 256; i++) r[i] = i;
|
||
i = 0;
|
||
for (var o = 0; i < 256; i++) {
|
||
var s = i % n, a = t[s >>> 2] >>> 24 - s % 4 * 8 & 255;
|
||
o = (o + r[i] + a) % 256;
|
||
var l = r[i];
|
||
r[i] = r[o], r[o] = l
|
||
}
|
||
this._i = this._j = 0
|
||
}, _doProcessBlock: function (e, t) {
|
||
e[t] ^= o.call(this)
|
||
}, keySize: 8, ivSize: 0
|
||
});
|
||
|
||
function o() {
|
||
for (var e = this._S, t = this._i, n = this._j, r = 0, i = 0; i < 4; i++) {
|
||
n = (n + e[t = (t + 1) % 256]) % 256;
|
||
var o = e[t];
|
||
e[t] = e[n], e[n] = o, r |= e[(e[t] + e[n]) % 256] << 24 - 8 * i
|
||
}
|
||
return this._i = t, this._j = n, r
|
||
}
|
||
|
||
e.RC4 = n._createHelper(i);
|
||
var s = r.RC4Drop = i.extend({
|
||
cfg: i.cfg.extend({
|
||
drop: 192
|
||
}), _doReset: function () {
|
||
i._doReset.call(this);
|
||
for (var e = this.cfg.drop; e > 0; e--) o.call(this)
|
||
}
|
||
});
|
||
e.RC4Drop = n._createHelper(s)
|
||
}(), t.RC4)
|
||
}()
|
||
}, 7423: function (e, t, n) {
|
||
!function () {
|
||
var t;
|
||
e.exports = (t = n(4488), function () {
|
||
var e = t, n = e.lib, r = n.WordArray, i = n.Hasher, o = e.algo,
|
||
s = r.create([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 = r.create([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]),
|
||
l = r.create([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]),
|
||
c = r.create([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]),
|
||
u = r.create([0, 1518500249, 1859775393, 2400959708, 2840853838]),
|
||
d = r.create([1352829926, 1548603684, 1836072691, 2053994217, 0]), p = o.RIPEMD160 = i.extend({
|
||
_doReset: function () {
|
||
this._hash = r.create([1732584193, 4023233417, 2562383102, 271733878, 3285377520])
|
||
}, _doProcessBlock: function (e, t) {
|
||
for (var n = 0; n < 16; n++) {
|
||
var r = t + n, i = e[r];
|
||
e[r] = 16711935 & (i << 8 | i >>> 24) | 4278255360 & (i << 24 | i >>> 8)
|
||
}
|
||
var o, p, x, b, w, S, k, C, j, E, T, A = this._hash.words, _ = u.words, P = d.words,
|
||
O = s.words, N = a.words, R = l.words, L = c.words;
|
||
for (S = o = A[0], k = p = A[1], C = x = A[2], j = b = A[3], E = w = A[4], n = 0; n < 80; n += 1) T = o + e[t + O[n]] | 0, T += n < 16 ? h(p, x, b) + _[0] : n < 32 ? f(p, x, b) + _[1] : n < 48 ? m(p, x, b) + _[2] : n < 64 ? g(p, x, b) + _[3] : v(p, x, b) + _[4], T = (T = y(T |= 0, R[n])) + w | 0, o = w, w = b, b = y(x, 10), x = p, p = T, T = S + e[t + N[n]] | 0, T += n < 16 ? v(k, C, j) + P[0] : n < 32 ? g(k, C, j) + P[1] : n < 48 ? m(k, C, j) + P[2] : n < 64 ? f(k, C, j) + P[3] : h(k, C, j) + P[4], T = (T = y(T |= 0, L[n])) + E | 0, S = E, E = j, j = y(C, 10), C = k, k = T;
|
||
T = A[1] + x + j | 0, A[1] = A[2] + b + E | 0, A[2] = A[3] + w + S | 0, A[3] = A[4] + o + k | 0, A[4] = A[0] + p + C | 0, A[0] = T
|
||
}, _doFinalize: function () {
|
||
var e = this._data, t = e.words, n = 8 * this._nDataBytes, r = 8 * e.sigBytes;
|
||
t[r >>> 5] |= 128 << 24 - r % 32, t[14 + (r + 64 >>> 9 << 4)] = 16711935 & (n << 8 | n >>> 24) | 4278255360 & (n << 24 | n >>> 8), e.sigBytes = 4 * (t.length + 1), this._process();
|
||
for (var i = this._hash, o = i.words, s = 0; s < 5; s++) {
|
||
var a = o[s];
|
||
o[s] = 16711935 & (a << 8 | a >>> 24) | 4278255360 & (a << 24 | a >>> 8)
|
||
}
|
||
return i
|
||
}, clone: function () {
|
||
var e = i.clone.call(this);
|
||
return e._hash = this._hash.clone(), e
|
||
}
|
||
});
|
||
|
||
function h(e, t, n) {
|
||
return e ^ t ^ n
|
||
}
|
||
|
||
function f(e, t, n) {
|
||
return e & t | ~e & n
|
||
}
|
||
|
||
function m(e, t, n) {
|
||
return (e | ~t) ^ n
|
||
}
|
||
|
||
function g(e, t, n) {
|
||
return e & n | t & ~n
|
||
}
|
||
|
||
function v(e, t, n) {
|
||
return e ^ (t | ~n)
|
||
}
|
||
|
||
function y(e, t) {
|
||
return e << t | e >>> 32 - t
|
||
}
|
||
|
||
e.RIPEMD160 = i._createHelper(p), e.HmacRIPEMD160 = i._createHmacHelper(p)
|
||
}(Math), t.RIPEMD160)
|
||
}()
|
||
}, 2002: function (e, t, n) {
|
||
!function () {
|
||
var t;
|
||
e.exports = (t = n(4488), function () {
|
||
var e = t, n = e.lib, r = n.WordArray, i = n.Hasher, o = e.algo, s = [], a = o.SHA1 = i.extend({
|
||
_doReset: function () {
|
||
this._hash = new r.init([1732584193, 4023233417, 2562383102, 271733878, 3285377520])
|
||
}, _doProcessBlock: function (e, t) {
|
||
for (var n = this._hash.words, r = n[0], i = n[1], o = n[2], a = n[3], l = n[4], c = 0; c < 80; c++) {
|
||
if (c < 16) s[c] = 0 | e[t + c]; else {
|
||
var u = s[c - 3] ^ s[c - 8] ^ s[c - 14] ^ s[c - 16];
|
||
s[c] = u << 1 | u >>> 31
|
||
}
|
||
var d = (r << 5 | r >>> 27) + l + s[c];
|
||
d += c < 20 ? 1518500249 + (i & o | ~i & a) : c < 40 ? 1859775393 + (i ^ o ^ a) : c < 60 ? (i & o | i & a | o & a) - 1894007588 : (i ^ o ^ a) - 899497514, l = a, a = o, o = i << 30 | i >>> 2, i = r, r = d
|
||
}
|
||
n[0] = n[0] + r | 0, n[1] = n[1] + i | 0, n[2] = n[2] + o | 0, n[3] = n[3] + a | 0, n[4] = n[4] + l | 0
|
||
}, _doFinalize: function () {
|
||
var e = this._data, t = e.words, n = 8 * this._nDataBytes, r = 8 * e.sigBytes;
|
||
return t[r >>> 5] |= 128 << 24 - r % 32, t[14 + (r + 64 >>> 9 << 4)] = Math.floor(n / 4294967296), t[15 + (r + 64 >>> 9 << 4)] = n, e.sigBytes = 4 * t.length, this._process(), this._hash
|
||
}, clone: function () {
|
||
var e = i.clone.call(this);
|
||
return e._hash = this._hash.clone(), e
|
||
}
|
||
});
|
||
e.SHA1 = i._createHelper(a), e.HmacSHA1 = i._createHmacHelper(a)
|
||
}(), t.SHA1)
|
||
}()
|
||
}, 1641: function (e, t, n) {
|
||
!function () {
|
||
var t;
|
||
e.exports = (t = n(4488), n(6368), function () {
|
||
var e = t, n = e.lib.WordArray, r = e.algo, i = r.SHA256, o = r.SHA224 = i.extend({
|
||
_doReset: function () {
|
||
this._hash = new n.init([3238371032, 914150663, 812702999, 4144912697, 4290775857, 1750603025, 1694076839, 3204075428])
|
||
}, _doFinalize: function () {
|
||
var e = i._doFinalize.call(this);
|
||
return e.sigBytes -= 4, e
|
||
}
|
||
});
|
||
e.SHA224 = i._createHelper(o), e.HmacSHA224 = i._createHmacHelper(o)
|
||
}(), t.SHA224)
|
||
}()
|
||
}, 6368: function (e, t, n) {
|
||
!function () {
|
||
var t;
|
||
e.exports = (t = n(4488), function (e) {
|
||
var n = t, r = n.lib, i = r.WordArray, o = r.Hasher, s = n.algo, a = [], l = [];
|
||
!function () {
|
||
function t(t) {
|
||
for (var n = e.sqrt(t), r = 2; r <= n; r++) if (!(t % r)) return !1;
|
||
return !0
|
||
}
|
||
|
||
function n(e) {
|
||
return 4294967296 * (e - (0 | e)) | 0
|
||
}
|
||
|
||
for (var r = 2, i = 0; i < 64;) t(r) && (i < 8 && (a[i] = n(e.pow(r, .5))), l[i] = n(e.pow(r, 1 / 3)), i++), r++
|
||
}();
|
||
var c = [], u = s.SHA256 = o.extend({
|
||
_doReset: function () {
|
||
this._hash = new i.init(a.slice(0))
|
||
}, _doProcessBlock: function (e, t) {
|
||
for (var n = this._hash.words, r = n[0], i = n[1], o = n[2], s = n[3], a = n[4], u = n[5], d = n[6], p = n[7], h = 0; h < 64; h++) {
|
||
if (h < 16) c[h] = 0 | e[t + h]; else {
|
||
var f = c[h - 15], m = (f << 25 | f >>> 7) ^ (f << 14 | f >>> 18) ^ f >>> 3,
|
||
g = c[h - 2], v = (g << 15 | g >>> 17) ^ (g << 13 | g >>> 19) ^ g >>> 10;
|
||
c[h] = m + c[h - 7] + v + c[h - 16]
|
||
}
|
||
var y = r & i ^ r & o ^ i & o,
|
||
x = (r << 30 | r >>> 2) ^ (r << 19 | r >>> 13) ^ (r << 10 | r >>> 22),
|
||
b = p + ((a << 26 | a >>> 6) ^ (a << 21 | a >>> 11) ^ (a << 7 | a >>> 25)) + (a & u ^ ~a & d) + l[h] + c[h];
|
||
p = d, d = u, u = a, a = s + b | 0, s = o, o = i, i = r, r = b + (x + y) | 0
|
||
}
|
||
n[0] = n[0] + r | 0, n[1] = n[1] + i | 0, n[2] = n[2] + o | 0, n[3] = n[3] + s | 0, n[4] = n[4] + a | 0, n[5] = n[5] + u | 0, n[6] = n[6] + d | 0, n[7] = n[7] + p | 0
|
||
}, _doFinalize: function () {
|
||
var t = this._data, n = t.words, r = 8 * this._nDataBytes, i = 8 * t.sigBytes;
|
||
return n[i >>> 5] |= 128 << 24 - i % 32, n[14 + (i + 64 >>> 9 << 4)] = e.floor(r / 4294967296), n[15 + (i + 64 >>> 9 << 4)] = r, t.sigBytes = 4 * n.length, this._process(), this._hash
|
||
}, clone: function () {
|
||
var e = o.clone.call(this);
|
||
return e._hash = this._hash.clone(), e
|
||
}
|
||
});
|
||
n.SHA256 = o._createHelper(u), n.HmacSHA256 = o._createHmacHelper(u)
|
||
}(Math), t.SHA256)
|
||
}()
|
||
}, 6600: function (e, t, n) {
|
||
!function () {
|
||
var t;
|
||
e.exports = (t = n(4488), n(9749), function (e) {
|
||
var n = t, r = n.lib, i = r.WordArray, o = r.Hasher, s = n.x64.Word, a = n.algo, l = [], c = [], u = [];
|
||
!function () {
|
||
for (var e = 1, t = 0, n = 0; n < 24; n++) {
|
||
l[e + 5 * t] = (n + 1) * (n + 2) / 2 % 64;
|
||
var r = (2 * e + 3 * t) % 5;
|
||
e = t % 5, t = r
|
||
}
|
||
for (e = 0; e < 5; e++) for (t = 0; t < 5; t++) c[e + 5 * t] = t + (2 * e + 3 * t) % 5 * 5;
|
||
for (var i = 1, o = 0; o < 24; o++) {
|
||
for (var a = 0, d = 0, p = 0; p < 7; p++) {
|
||
if (1 & i) {
|
||
var h = (1 << p) - 1;
|
||
h < 32 ? d ^= 1 << h : a ^= 1 << h - 32
|
||
}
|
||
128 & i ? i = i << 1 ^ 113 : i <<= 1
|
||
}
|
||
u[o] = s.create(a, d)
|
||
}
|
||
}();
|
||
var d = [];
|
||
!function () {
|
||
for (var e = 0; e < 25; e++) d[e] = s.create()
|
||
}();
|
||
var p = a.SHA3 = o.extend({
|
||
cfg: o.cfg.extend({
|
||
outputLength: 512
|
||
}), _doReset: function () {
|
||
for (var e = this._state = [], t = 0; t < 25; t++) e[t] = new s.init;
|
||
this.blockSize = (1600 - 2 * this.cfg.outputLength) / 32
|
||
}, _doProcessBlock: function (e, t) {
|
||
for (var n = this._state, r = this.blockSize / 2, i = 0; i < r; i++) {
|
||
var o = e[t + 2 * i], s = e[t + 2 * i + 1];
|
||
o = 16711935 & (o << 8 | o >>> 24) | 4278255360 & (o << 24 | o >>> 8), s = 16711935 & (s << 8 | s >>> 24) | 4278255360 & (s << 24 | s >>> 8), (A = n[i]).high ^= s, A.low ^= o
|
||
}
|
||
for (var a = 0; a < 24; a++) {
|
||
for (var p = 0; p < 5; p++) {
|
||
for (var h = 0, f = 0, m = 0; m < 5; m++) h ^= (A = n[p + 5 * m]).high, f ^= A.low;
|
||
var g = d[p];
|
||
g.high = h, g.low = f
|
||
}
|
||
for (p = 0; p < 5; p++) {
|
||
var v = d[(p + 4) % 5], y = d[(p + 1) % 5], x = y.high, b = y.low;
|
||
for (h = v.high ^ (x << 1 | b >>> 31), f = v.low ^ (b << 1 | x >>> 31), m = 0; m < 5; m++) (A = n[p + 5 * m]).high ^= h, A.low ^= f
|
||
}
|
||
for (var w = 1; w < 25; w++) {
|
||
var S = (A = n[w]).high, k = A.low, C = l[w];
|
||
C < 32 ? (h = S << C | k >>> 32 - C, f = k << C | S >>> 32 - C) : (h = k << C - 32 | S >>> 64 - C, f = S << C - 32 | k >>> 64 - C);
|
||
var j = d[c[w]];
|
||
j.high = h, j.low = f
|
||
}
|
||
var E = d[0], T = n[0];
|
||
for (E.high = T.high, E.low = T.low, p = 0; p < 5; p++) for (m = 0; m < 5; m++) {
|
||
var A = n[w = p + 5 * m], _ = d[w], P = d[(p + 1) % 5 + 5 * m],
|
||
O = d[(p + 2) % 5 + 5 * m];
|
||
A.high = _.high ^ ~P.high & O.high, A.low = _.low ^ ~P.low & O.low
|
||
}
|
||
A = n[0];
|
||
var N = u[a];
|
||
A.high ^= N.high, A.low ^= N.low
|
||
}
|
||
}, _doFinalize: function () {
|
||
var t = this._data, n = t.words, r = (this._nDataBytes, 8 * t.sigBytes),
|
||
o = 32 * this.blockSize;
|
||
n[r >>> 5] |= 1 << 24 - r % 32, n[(e.ceil((r + 1) / o) * o >>> 5) - 1] |= 128, t.sigBytes = 4 * n.length, this._process();
|
||
for (var s = this._state, a = this.cfg.outputLength / 8, l = a / 8, c = [], u = 0; u < l; u++) {
|
||
var d = s[u], p = d.high, h = d.low;
|
||
p = 16711935 & (p << 8 | p >>> 24) | 4278255360 & (p << 24 | p >>> 8), h = 16711935 & (h << 8 | h >>> 24) | 4278255360 & (h << 24 | h >>> 8), c.push(h), c.push(p)
|
||
}
|
||
return new i.init(c, a)
|
||
}, clone: function () {
|
||
for (var e = o.clone.call(this), t = e._state = this._state.slice(0), n = 0; n < 25; n++) t[n] = t[n].clone();
|
||
return e
|
||
}
|
||
});
|
||
n.SHA3 = o._createHelper(p), n.HmacSHA3 = o._createHmacHelper(p)
|
||
}(Math), t.SHA3)
|
||
}()
|
||
}, 9092: function (e, t, n) {
|
||
!function () {
|
||
var t;
|
||
e.exports = (t = n(4488), n(9749), n(7061), function () {
|
||
var e = t, n = e.x64, r = n.Word, i = n.WordArray, o = e.algo, s = o.SHA512, a = o.SHA384 = s.extend({
|
||
_doReset: function () {
|
||
this._hash = new i.init([new r.init(3418070365, 3238371032), new r.init(1654270250, 914150663), new r.init(2438529370, 812702999), new r.init(355462360, 4144912697), new r.init(1731405415, 4290775857), new r.init(2394180231, 1750603025), new r.init(3675008525, 1694076839), new r.init(1203062813, 3204075428)])
|
||
}, _doFinalize: function () {
|
||
var e = s._doFinalize.call(this);
|
||
return e.sigBytes -= 16, e
|
||
}
|
||
});
|
||
e.SHA384 = s._createHelper(a), e.HmacSHA384 = s._createHmacHelper(a)
|
||
}(), t.SHA384)
|
||
}()
|
||
}, 7061: function (e, t, n) {
|
||
!function () {
|
||
var t;
|
||
e.exports = (t = n(4488), n(9749), function () {
|
||
var e = t, n = e.lib.Hasher, r = e.x64, i = r.Word, o = r.WordArray, s = e.algo;
|
||
|
||
function a() {
|
||
return i.create.apply(i, arguments)
|
||
}
|
||
|
||
var l = [a(1116352408, 3609767458), a(1899447441, 602891725), a(3049323471, 3964484399), a(3921009573, 2173295548), a(961987163, 4081628472), a(1508970993, 3053834265), a(2453635748, 2937671579), a(2870763221, 3664609560), a(3624381080, 2734883394), a(310598401, 1164996542), a(607225278, 1323610764), a(1426881987, 3590304994), a(1925078388, 4068182383), a(2162078206, 991336113), a(2614888103, 633803317), a(3248222580, 3479774868), a(3835390401, 2666613458), a(4022224774, 944711139), a(264347078, 2341262773), a(604807628, 2007800933), a(770255983, 1495990901), a(1249150122, 1856431235), a(1555081692, 3175218132), a(1996064986, 2198950837), a(2554220882, 3999719339), a(2821834349, 766784016), a(2952996808, 2566594879), a(3210313671, 3203337956), a(3336571891, 1034457026), a(3584528711, 2466948901), a(113926993, 3758326383), a(338241895, 168717936), a(666307205, 1188179964), a(773529912, 1546045734), a(1294757372, 1522805485), a(1396182291, 2643833823), a(1695183700, 2343527390), a(1986661051, 1014477480), a(2177026350, 1206759142), a(2456956037, 344077627), a(2730485921, 1290863460), a(2820302411, 3158454273), a(3259730800, 3505952657), a(3345764771, 106217008), a(3516065817, 3606008344), a(3600352804, 1432725776), a(4094571909, 1467031594), a(275423344, 851169720), a(430227734, 3100823752), a(506948616, 1363258195), a(659060556, 3750685593), a(883997877, 3785050280), a(958139571, 3318307427), a(1322822218, 3812723403), a(1537002063, 2003034995), a(1747873779, 3602036899), a(1955562222, 1575990012), a(2024104815, 1125592928), a(2227730452, 2716904306), a(2361852424, 442776044), a(2428436474, 593698344), a(2756734187, 3733110249), a(3204031479, 2999351573), a(3329325298, 3815920427), a(3391569614, 3928383900), a(3515267271, 566280711), a(3940187606, 3454069534), a(4118630271, 4000239992), a(116418474, 1914138554), a(174292421, 2731055270), a(289380356, 3203993006), a(460393269, 320620315), a(685471733, 587496836), a(852142971, 1086792851), a(1017036298, 365543100), a(1126000580, 2618297676), a(1288033470, 3409855158), a(1501505948, 4234509866), a(1607167915, 987167468), a(1816402316, 1246189591)],
|
||
c = [];
|
||
!function () {
|
||
for (var e = 0; e < 80; e++) c[e] = a()
|
||
}();
|
||
var u = s.SHA512 = n.extend({
|
||
_doReset: function () {
|
||
this._hash = new o.init([new i.init(1779033703, 4089235720), new i.init(3144134277, 2227873595), new i.init(1013904242, 4271175723), new i.init(2773480762, 1595750129), new i.init(1359893119, 2917565137), new i.init(2600822924, 725511199), new i.init(528734635, 4215389547), new i.init(1541459225, 327033209)])
|
||
}, _doProcessBlock: function (e, t) {
|
||
for (var n = this._hash.words, r = n[0], i = n[1], o = n[2], s = n[3], a = n[4], u = n[5], d = n[6], p = n[7], h = r.high, f = r.low, m = i.high, g = i.low, v = o.high, y = o.low, x = s.high, b = s.low, w = a.high, S = a.low, k = u.high, C = u.low, j = d.high, E = d.low, T = p.high, A = p.low, _ = h, P = f, O = m, N = g, R = v, L = y, M = x, D = b, B = w, I = S, F = k, z = C, V = j, q = E, $ = T, U = A, H = 0; H < 80; H++) {
|
||
var W, K, Z = c[H];
|
||
if (H < 16) K = Z.high = 0 | e[t + 2 * H], W = Z.low = 0 | e[t + 2 * H + 1]; else {
|
||
var Y = c[H - 15], Q = Y.high, X = Y.low,
|
||
G = (Q >>> 1 | X << 31) ^ (Q >>> 8 | X << 24) ^ Q >>> 7,
|
||
J = (X >>> 1 | Q << 31) ^ (X >>> 8 | Q << 24) ^ (X >>> 7 | Q << 25), ee = c[H - 2],
|
||
te = ee.high, ne = ee.low,
|
||
re = (te >>> 19 | ne << 13) ^ (te << 3 | ne >>> 29) ^ te >>> 6,
|
||
ie = (ne >>> 19 | te << 13) ^ (ne << 3 | te >>> 29) ^ (ne >>> 6 | te << 26),
|
||
oe = c[H - 7], se = oe.high, ae = oe.low, le = c[H - 16], ce = le.high, ue = le.low;
|
||
K = (K = (K = G + se + ((W = J + ae) >>> 0 < J >>> 0 ? 1 : 0)) + re + ((W += ie) >>> 0 < ie >>> 0 ? 1 : 0)) + ce + ((W += ue) >>> 0 < ue >>> 0 ? 1 : 0), Z.high = K, Z.low = W
|
||
}
|
||
var de, pe = B & F ^ ~B & V, he = I & z ^ ~I & q, fe = _ & O ^ _ & R ^ O & R,
|
||
me = P & N ^ P & L ^ N & L,
|
||
ge = (_ >>> 28 | P << 4) ^ (_ << 30 | P >>> 2) ^ (_ << 25 | P >>> 7),
|
||
ve = (P >>> 28 | _ << 4) ^ (P << 30 | _ >>> 2) ^ (P << 25 | _ >>> 7),
|
||
ye = (B >>> 14 | I << 18) ^ (B >>> 18 | I << 14) ^ (B << 23 | I >>> 9),
|
||
xe = (I >>> 14 | B << 18) ^ (I >>> 18 | B << 14) ^ (I << 23 | B >>> 9), be = l[H],
|
||
we = be.high, Se = be.low, ke = $ + ye + ((de = U + xe) >>> 0 < U >>> 0 ? 1 : 0),
|
||
Ce = ve + me;
|
||
$ = V, U = q, V = F, q = z, F = B, z = I, B = M + (ke = (ke = (ke = ke + pe + ((de += he) >>> 0 < he >>> 0 ? 1 : 0)) + we + ((de += Se) >>> 0 < Se >>> 0 ? 1 : 0)) + K + ((de += W) >>> 0 < W >>> 0 ? 1 : 0)) + ((I = D + de | 0) >>> 0 < D >>> 0 ? 1 : 0) | 0, M = R, D = L, R = O, L = N, O = _, N = P, _ = ke + (ge + fe + (Ce >>> 0 < ve >>> 0 ? 1 : 0)) + ((P = de + Ce | 0) >>> 0 < de >>> 0 ? 1 : 0) | 0
|
||
}
|
||
f = r.low = f + P, r.high = h + _ + (f >>> 0 < P >>> 0 ? 1 : 0), g = i.low = g + N, i.high = m + O + (g >>> 0 < N >>> 0 ? 1 : 0), y = o.low = y + L, o.high = v + R + (y >>> 0 < L >>> 0 ? 1 : 0), b = s.low = b + D, s.high = x + M + (b >>> 0 < D >>> 0 ? 1 : 0), S = a.low = S + I, a.high = w + B + (S >>> 0 < I >>> 0 ? 1 : 0), C = u.low = C + z, u.high = k + F + (C >>> 0 < z >>> 0 ? 1 : 0), E = d.low = E + q, d.high = j + V + (E >>> 0 < q >>> 0 ? 1 : 0), A = p.low = A + U, p.high = T + $ + (A >>> 0 < U >>> 0 ? 1 : 0)
|
||
}, _doFinalize: function () {
|
||
var e = this._data, t = e.words, n = 8 * this._nDataBytes, r = 8 * e.sigBytes;
|
||
return t[r >>> 5] |= 128 << 24 - r % 32, t[30 + (r + 128 >>> 10 << 5)] = Math.floor(n / 4294967296), t[31 + (r + 128 >>> 10 << 5)] = n, e.sigBytes = 4 * t.length, this._process(), this._hash.toX32()
|
||
}, clone: function () {
|
||
var e = n.clone.call(this);
|
||
return e._hash = this._hash.clone(), e
|
||
}, blockSize: 32
|
||
});
|
||
e.SHA512 = n._createHelper(u), e.HmacSHA512 = n._createHmacHelper(u)
|
||
}(), t.SHA512)
|
||
}()
|
||
}, 9475: function (e, t, n) {
|
||
!function () {
|
||
var t;
|
||
e.exports = (t = n(4488), n(8523), n(4199), n(8211), n(2238), function () {
|
||
var e = t, n = e.lib, r = n.WordArray, i = n.BlockCipher, o = e.algo,
|
||
s = [57, 49, 41, 33, 25, 17, 9, 1, 58, 50, 42, 34, 26, 18, 10, 2, 59, 51, 43, 35, 27, 19, 11, 3, 60, 52, 44, 36, 63, 55, 47, 39, 31, 23, 15, 7, 62, 54, 46, 38, 30, 22, 14, 6, 61, 53, 45, 37, 29, 21, 13, 5, 28, 20, 12, 4],
|
||
a = [14, 17, 11, 24, 1, 5, 3, 28, 15, 6, 21, 10, 23, 19, 12, 4, 26, 8, 16, 7, 27, 20, 13, 2, 41, 52, 31, 37, 47, 55, 30, 40, 51, 45, 33, 48, 44, 49, 39, 56, 34, 53, 46, 42, 50, 36, 29, 32],
|
||
l = [1, 2, 4, 6, 8, 10, 12, 14, 15, 17, 19, 21, 23, 25, 27, 28], c = [{
|
||
0: 8421888,
|
||
268435456: 32768,
|
||
536870912: 8421378,
|
||
805306368: 2,
|
||
1073741824: 512,
|
||
1342177280: 8421890,
|
||
1610612736: 8389122,
|
||
1879048192: 8388608,
|
||
2147483648: 514,
|
||
2415919104: 8389120,
|
||
2684354560: 33280,
|
||
2952790016: 8421376,
|
||
3221225472: 32770,
|
||
3489660928: 8388610,
|
||
3758096384: 0,
|
||
4026531840: 33282,
|
||
134217728: 0,
|
||
402653184: 8421890,
|
||
671088640: 33282,
|
||
939524096: 32768,
|
||
1207959552: 8421888,
|
||
1476395008: 512,
|
||
1744830464: 8421378,
|
||
2013265920: 2,
|
||
2281701376: 8389120,
|
||
2550136832: 33280,
|
||
2818572288: 8421376,
|
||
3087007744: 8389122,
|
||
3355443200: 8388610,
|
||
3623878656: 32770,
|
||
3892314112: 514,
|
||
4160749568: 8388608,
|
||
1: 32768,
|
||
268435457: 2,
|
||
536870913: 8421888,
|
||
805306369: 8388608,
|
||
1073741825: 8421378,
|
||
1342177281: 33280,
|
||
1610612737: 512,
|
||
1879048193: 8389122,
|
||
2147483649: 8421890,
|
||
2415919105: 8421376,
|
||
2684354561: 8388610,
|
||
2952790017: 33282,
|
||
3221225473: 514,
|
||
3489660929: 8389120,
|
||
3758096385: 32770,
|
||
4026531841: 0,
|
||
134217729: 8421890,
|
||
402653185: 8421376,
|
||
671088641: 8388608,
|
||
939524097: 512,
|
||
1207959553: 32768,
|
||
1476395009: 8388610,
|
||
1744830465: 2,
|
||
2013265921: 33282,
|
||
2281701377: 32770,
|
||
2550136833: 8389122,
|
||
2818572289: 514,
|
||
3087007745: 8421888,
|
||
3355443201: 8389120,
|
||
3623878657: 0,
|
||
3892314113: 33280,
|
||
4160749569: 8421378
|
||
}, {
|
||
0: 1074282512,
|
||
16777216: 16384,
|
||
33554432: 524288,
|
||
50331648: 1074266128,
|
||
67108864: 1073741840,
|
||
83886080: 1074282496,
|
||
100663296: 1073758208,
|
||
117440512: 16,
|
||
134217728: 540672,
|
||
150994944: 1073758224,
|
||
167772160: 1073741824,
|
||
184549376: 540688,
|
||
201326592: 524304,
|
||
218103808: 0,
|
||
234881024: 16400,
|
||
251658240: 1074266112,
|
||
8388608: 1073758208,
|
||
25165824: 540688,
|
||
41943040: 16,
|
||
58720256: 1073758224,
|
||
75497472: 1074282512,
|
||
92274688: 1073741824,
|
||
109051904: 524288,
|
||
125829120: 1074266128,
|
||
142606336: 524304,
|
||
159383552: 0,
|
||
176160768: 16384,
|
||
192937984: 1074266112,
|
||
209715200: 1073741840,
|
||
226492416: 540672,
|
||
243269632: 1074282496,
|
||
260046848: 16400,
|
||
268435456: 0,
|
||
285212672: 1074266128,
|
||
301989888: 1073758224,
|
||
318767104: 1074282496,
|
||
335544320: 1074266112,
|
||
352321536: 16,
|
||
369098752: 540688,
|
||
385875968: 16384,
|
||
402653184: 16400,
|
||
419430400: 524288,
|
||
436207616: 524304,
|
||
452984832: 1073741840,
|
||
469762048: 540672,
|
||
486539264: 1073758208,
|
||
503316480: 1073741824,
|
||
520093696: 1074282512,
|
||
276824064: 540688,
|
||
293601280: 524288,
|
||
310378496: 1074266112,
|
||
327155712: 16384,
|
||
343932928: 1073758208,
|
||
360710144: 1074282512,
|
||
377487360: 16,
|
||
394264576: 1073741824,
|
||
411041792: 1074282496,
|
||
427819008: 1073741840,
|
||
444596224: 1073758224,
|
||
461373440: 524304,
|
||
478150656: 0,
|
||
494927872: 16400,
|
||
511705088: 1074266128,
|
||
528482304: 540672
|
||
}, {
|
||
0: 260,
|
||
1048576: 0,
|
||
2097152: 67109120,
|
||
3145728: 65796,
|
||
4194304: 65540,
|
||
5242880: 67108868,
|
||
6291456: 67174660,
|
||
7340032: 67174400,
|
||
8388608: 67108864,
|
||
9437184: 67174656,
|
||
10485760: 65792,
|
||
11534336: 67174404,
|
||
12582912: 67109124,
|
||
13631488: 65536,
|
||
14680064: 4,
|
||
15728640: 256,
|
||
524288: 67174656,
|
||
1572864: 67174404,
|
||
2621440: 0,
|
||
3670016: 67109120,
|
||
4718592: 67108868,
|
||
5767168: 65536,
|
||
6815744: 65540,
|
||
7864320: 260,
|
||
8912896: 4,
|
||
9961472: 256,
|
||
11010048: 67174400,
|
||
12058624: 65796,
|
||
13107200: 65792,
|
||
14155776: 67109124,
|
||
15204352: 67174660,
|
||
16252928: 67108864,
|
||
16777216: 67174656,
|
||
17825792: 65540,
|
||
18874368: 65536,
|
||
19922944: 67109120,
|
||
20971520: 256,
|
||
22020096: 67174660,
|
||
23068672: 67108868,
|
||
24117248: 0,
|
||
25165824: 67109124,
|
||
26214400: 67108864,
|
||
27262976: 4,
|
||
28311552: 65792,
|
||
29360128: 67174400,
|
||
30408704: 260,
|
||
31457280: 65796,
|
||
32505856: 67174404,
|
||
17301504: 67108864,
|
||
18350080: 260,
|
||
19398656: 67174656,
|
||
20447232: 0,
|
||
21495808: 65540,
|
||
22544384: 67109120,
|
||
23592960: 256,
|
||
24641536: 67174404,
|
||
25690112: 65536,
|
||
26738688: 67174660,
|
||
27787264: 65796,
|
||
28835840: 67108868,
|
||
29884416: 67109124,
|
||
30932992: 67174400,
|
||
31981568: 4,
|
||
33030144: 65792
|
||
}, {
|
||
0: 2151682048,
|
||
65536: 2147487808,
|
||
131072: 4198464,
|
||
196608: 2151677952,
|
||
262144: 0,
|
||
327680: 4198400,
|
||
393216: 2147483712,
|
||
458752: 4194368,
|
||
524288: 2147483648,
|
||
589824: 4194304,
|
||
655360: 64,
|
||
720896: 2147487744,
|
||
786432: 2151678016,
|
||
851968: 4160,
|
||
917504: 4096,
|
||
983040: 2151682112,
|
||
32768: 2147487808,
|
||
98304: 64,
|
||
163840: 2151678016,
|
||
229376: 2147487744,
|
||
294912: 4198400,
|
||
360448: 2151682112,
|
||
425984: 0,
|
||
491520: 2151677952,
|
||
557056: 4096,
|
||
622592: 2151682048,
|
||
688128: 4194304,
|
||
753664: 4160,
|
||
819200: 2147483648,
|
||
884736: 4194368,
|
||
950272: 4198464,
|
||
1015808: 2147483712,
|
||
1048576: 4194368,
|
||
1114112: 4198400,
|
||
1179648: 2147483712,
|
||
1245184: 0,
|
||
1310720: 4160,
|
||
1376256: 2151678016,
|
||
1441792: 2151682048,
|
||
1507328: 2147487808,
|
||
1572864: 2151682112,
|
||
1638400: 2147483648,
|
||
1703936: 2151677952,
|
||
1769472: 4198464,
|
||
1835008: 2147487744,
|
||
1900544: 4194304,
|
||
1966080: 64,
|
||
2031616: 4096,
|
||
1081344: 2151677952,
|
||
1146880: 2151682112,
|
||
1212416: 0,
|
||
1277952: 4198400,
|
||
1343488: 4194368,
|
||
1409024: 2147483648,
|
||
1474560: 2147487808,
|
||
1540096: 64,
|
||
1605632: 2147483712,
|
||
1671168: 4096,
|
||
1736704: 2147487744,
|
||
1802240: 2151678016,
|
||
1867776: 4160,
|
||
1933312: 2151682048,
|
||
1998848: 4194304,
|
||
2064384: 4198464
|
||
}, {
|
||
0: 128,
|
||
4096: 17039360,
|
||
8192: 262144,
|
||
12288: 536870912,
|
||
16384: 537133184,
|
||
20480: 16777344,
|
||
24576: 553648256,
|
||
28672: 262272,
|
||
32768: 16777216,
|
||
36864: 537133056,
|
||
40960: 536871040,
|
||
45056: 553910400,
|
||
49152: 553910272,
|
||
53248: 0,
|
||
57344: 17039488,
|
||
61440: 553648128,
|
||
2048: 17039488,
|
||
6144: 553648256,
|
||
10240: 128,
|
||
14336: 17039360,
|
||
18432: 262144,
|
||
22528: 537133184,
|
||
26624: 553910272,
|
||
30720: 536870912,
|
||
34816: 537133056,
|
||
38912: 0,
|
||
43008: 553910400,
|
||
47104: 16777344,
|
||
51200: 536871040,
|
||
55296: 553648128,
|
||
59392: 16777216,
|
||
63488: 262272,
|
||
65536: 262144,
|
||
69632: 128,
|
||
73728: 536870912,
|
||
77824: 553648256,
|
||
81920: 16777344,
|
||
86016: 553910272,
|
||
90112: 537133184,
|
||
94208: 16777216,
|
||
98304: 553910400,
|
||
102400: 553648128,
|
||
106496: 17039360,
|
||
110592: 537133056,
|
||
114688: 262272,
|
||
118784: 536871040,
|
||
122880: 0,
|
||
126976: 17039488,
|
||
67584: 553648256,
|
||
71680: 16777216,
|
||
75776: 17039360,
|
||
79872: 537133184,
|
||
83968: 536870912,
|
||
88064: 17039488,
|
||
92160: 128,
|
||
96256: 553910272,
|
||
100352: 262272,
|
||
104448: 553910400,
|
||
108544: 0,
|
||
112640: 553648128,
|
||
116736: 16777344,
|
||
120832: 262144,
|
||
124928: 537133056,
|
||
129024: 536871040
|
||
}, {
|
||
0: 268435464,
|
||
256: 8192,
|
||
512: 270532608,
|
||
768: 270540808,
|
||
1024: 268443648,
|
||
1280: 2097152,
|
||
1536: 2097160,
|
||
1792: 268435456,
|
||
2048: 0,
|
||
2304: 268443656,
|
||
2560: 2105344,
|
||
2816: 8,
|
||
3072: 270532616,
|
||
3328: 2105352,
|
||
3584: 8200,
|
||
3840: 270540800,
|
||
128: 270532608,
|
||
384: 270540808,
|
||
640: 8,
|
||
896: 2097152,
|
||
1152: 2105352,
|
||
1408: 268435464,
|
||
1664: 268443648,
|
||
1920: 8200,
|
||
2176: 2097160,
|
||
2432: 8192,
|
||
2688: 268443656,
|
||
2944: 270532616,
|
||
3200: 0,
|
||
3456: 270540800,
|
||
3712: 2105344,
|
||
3968: 268435456,
|
||
4096: 268443648,
|
||
4352: 270532616,
|
||
4608: 270540808,
|
||
4864: 8200,
|
||
5120: 2097152,
|
||
5376: 268435456,
|
||
5632: 268435464,
|
||
5888: 2105344,
|
||
6144: 2105352,
|
||
6400: 0,
|
||
6656: 8,
|
||
6912: 270532608,
|
||
7168: 8192,
|
||
7424: 268443656,
|
||
7680: 270540800,
|
||
7936: 2097160,
|
||
4224: 8,
|
||
4480: 2105344,
|
||
4736: 2097152,
|
||
4992: 268435464,
|
||
5248: 268443648,
|
||
5504: 8200,
|
||
5760: 270540808,
|
||
6016: 270532608,
|
||
6272: 270540800,
|
||
6528: 270532616,
|
||
6784: 8192,
|
||
7040: 2105352,
|
||
7296: 2097160,
|
||
7552: 0,
|
||
7808: 268435456,
|
||
8064: 268443656
|
||
}, {
|
||
0: 1048576,
|
||
16: 33555457,
|
||
32: 1024,
|
||
48: 1049601,
|
||
64: 34604033,
|
||
80: 0,
|
||
96: 1,
|
||
112: 34603009,
|
||
128: 33555456,
|
||
144: 1048577,
|
||
160: 33554433,
|
||
176: 34604032,
|
||
192: 34603008,
|
||
208: 1025,
|
||
224: 1049600,
|
||
240: 33554432,
|
||
8: 34603009,
|
||
24: 0,
|
||
40: 33555457,
|
||
56: 34604032,
|
||
72: 1048576,
|
||
88: 33554433,
|
||
104: 33554432,
|
||
120: 1025,
|
||
136: 1049601,
|
||
152: 33555456,
|
||
168: 34603008,
|
||
184: 1048577,
|
||
200: 1024,
|
||
216: 34604033,
|
||
232: 1,
|
||
248: 1049600,
|
||
256: 33554432,
|
||
272: 1048576,
|
||
288: 33555457,
|
||
304: 34603009,
|
||
320: 1048577,
|
||
336: 33555456,
|
||
352: 34604032,
|
||
368: 1049601,
|
||
384: 1025,
|
||
400: 34604033,
|
||
416: 1049600,
|
||
432: 1,
|
||
448: 0,
|
||
464: 34603008,
|
||
480: 33554433,
|
||
496: 1024,
|
||
264: 1049600,
|
||
280: 33555457,
|
||
296: 34603009,
|
||
312: 1,
|
||
328: 33554432,
|
||
344: 1048576,
|
||
360: 1025,
|
||
376: 34604032,
|
||
392: 33554433,
|
||
408: 34603008,
|
||
424: 0,
|
||
440: 34604033,
|
||
456: 1049601,
|
||
472: 1024,
|
||
488: 33555456,
|
||
504: 1048577
|
||
}, {
|
||
0: 134219808,
|
||
1: 131072,
|
||
2: 134217728,
|
||
3: 32,
|
||
4: 131104,
|
||
5: 134350880,
|
||
6: 134350848,
|
||
7: 2048,
|
||
8: 134348800,
|
||
9: 134219776,
|
||
10: 133120,
|
||
11: 134348832,
|
||
12: 2080,
|
||
13: 0,
|
||
14: 134217760,
|
||
15: 133152,
|
||
2147483648: 2048,
|
||
2147483649: 134350880,
|
||
2147483650: 134219808,
|
||
2147483651: 134217728,
|
||
2147483652: 134348800,
|
||
2147483653: 133120,
|
||
2147483654: 133152,
|
||
2147483655: 32,
|
||
2147483656: 134217760,
|
||
2147483657: 2080,
|
||
2147483658: 131104,
|
||
2147483659: 134350848,
|
||
2147483660: 0,
|
||
2147483661: 134348832,
|
||
2147483662: 134219776,
|
||
2147483663: 131072,
|
||
16: 133152,
|
||
17: 134350848,
|
||
18: 32,
|
||
19: 2048,
|
||
20: 134219776,
|
||
21: 134217760,
|
||
22: 134348832,
|
||
23: 131072,
|
||
24: 0,
|
||
25: 131104,
|
||
26: 134348800,
|
||
27: 134219808,
|
||
28: 134350880,
|
||
29: 133120,
|
||
30: 2080,
|
||
31: 134217728,
|
||
2147483664: 131072,
|
||
2147483665: 2048,
|
||
2147483666: 134348832,
|
||
2147483667: 133152,
|
||
2147483668: 32,
|
||
2147483669: 134348800,
|
||
2147483670: 134217728,
|
||
2147483671: 134219808,
|
||
2147483672: 134350880,
|
||
2147483673: 134217760,
|
||
2147483674: 134219776,
|
||
2147483675: 0,
|
||
2147483676: 133120,
|
||
2147483677: 2080,
|
||
2147483678: 131104,
|
||
2147483679: 134350848
|
||
}], u = [4160749569, 528482304, 33030144, 2064384, 129024, 8064, 504, 2147483679],
|
||
d = o.DES = i.extend({
|
||
_doReset: function () {
|
||
for (var e = this._key.words, t = [], n = 0; n < 56; n++) {
|
||
var r = s[n] - 1;
|
||
t[n] = e[r >>> 5] >>> 31 - r % 32 & 1
|
||
}
|
||
for (var i = this._subKeys = [], o = 0; o < 16; o++) {
|
||
var c = i[o] = [], u = l[o];
|
||
for (n = 0; n < 24; n++) c[n / 6 | 0] |= t[(a[n] - 1 + u) % 28] << 31 - n % 6, c[4 + (n / 6 | 0)] |= t[28 + (a[n + 24] - 1 + u) % 28] << 31 - n % 6;
|
||
for (c[0] = c[0] << 1 | c[0] >>> 31, n = 1; n < 7; n++) c[n] = c[n] >>> 4 * (n - 1) + 3;
|
||
c[7] = c[7] << 5 | c[7] >>> 27
|
||
}
|
||
var d = this._invSubKeys = [];
|
||
for (n = 0; n < 16; n++) d[n] = i[15 - n]
|
||
}, encryptBlock: function (e, t) {
|
||
this._doCryptBlock(e, t, this._subKeys)
|
||
}, decryptBlock: function (e, t) {
|
||
this._doCryptBlock(e, t, this._invSubKeys)
|
||
}, _doCryptBlock: function (e, t, n) {
|
||
this._lBlock = e[t], this._rBlock = e[t + 1], p.call(this, 4, 252645135), p.call(this, 16, 65535), h.call(this, 2, 858993459), h.call(this, 8, 16711935), p.call(this, 1, 1431655765);
|
||
for (var r = 0; r < 16; r++) {
|
||
for (var i = n[r], o = this._lBlock, s = this._rBlock, a = 0, l = 0; l < 8; l++) a |= c[l][((s ^ i[l]) & u[l]) >>> 0];
|
||
this._lBlock = s, this._rBlock = o ^ a
|
||
}
|
||
var d = this._lBlock;
|
||
this._lBlock = this._rBlock, this._rBlock = d, p.call(this, 1, 1431655765), h.call(this, 8, 16711935), h.call(this, 2, 858993459), p.call(this, 16, 65535), p.call(this, 4, 252645135), e[t] = this._lBlock, e[t + 1] = this._rBlock
|
||
}, keySize: 2, ivSize: 2, blockSize: 2
|
||
});
|
||
|
||
function p(e, t) {
|
||
var n = (this._lBlock >>> e ^ this._rBlock) & t;
|
||
this._rBlock ^= n, this._lBlock ^= n << e
|
||
}
|
||
|
||
function h(e, t) {
|
||
var n = (this._rBlock >>> e ^ this._lBlock) & t;
|
||
this._lBlock ^= n, this._rBlock ^= n << e
|
||
}
|
||
|
||
e.DES = i._createHelper(d);
|
||
var f = o.TripleDES = i.extend({
|
||
_doReset: function () {
|
||
var e = this._key.words;
|
||
if (2 !== e.length && 4 !== e.length && e.length < 6) throw new Error("Invalid key length - 3DES requires the key length to be 64, 128, 192 or >192.");
|
||
var t = e.slice(0, 2), n = e.length < 4 ? e.slice(0, 2) : e.slice(2, 4),
|
||
i = e.length < 6 ? e.slice(0, 2) : e.slice(4, 6);
|
||
this._des1 = d.createEncryptor(r.create(t)), this._des2 = d.createEncryptor(r.create(n)), this._des3 = d.createEncryptor(r.create(i))
|
||
}, encryptBlock: function (e, t) {
|
||
this._des1.encryptBlock(e, t), this._des2.decryptBlock(e, t), this._des3.encryptBlock(e, t)
|
||
}, decryptBlock: function (e, t) {
|
||
this._des3.decryptBlock(e, t), this._des2.encryptBlock(e, t), this._des1.decryptBlock(e, t)
|
||
}, keySize: 6, ivSize: 2, blockSize: 2
|
||
});
|
||
e.TripleDES = i._createHelper(f)
|
||
}(), t.TripleDES)
|
||
}()
|
||
}, 9749: function (e, t, n) {
|
||
!function () {
|
||
var t;
|
||
e.exports = (t = n(4488), function (e) {
|
||
var n = t, r = n.lib, i = r.Base, o = r.WordArray, s = n.x64 = {};
|
||
s.Word = i.extend({
|
||
init: function (e, t) {
|
||
this.high = e, this.low = t
|
||
}
|
||
}), s.WordArray = i.extend({
|
||
init: function (t, n) {
|
||
t = this.words = t || [], this.sigBytes = n != e ? n : 8 * t.length
|
||
}, toX32: function () {
|
||
for (var e = this.words, t = e.length, n = [], r = 0; r < t; r++) {
|
||
var i = e[r];
|
||
n.push(i.high), n.push(i.low)
|
||
}
|
||
return o.create(n, this.sigBytes)
|
||
}, clone: function () {
|
||
for (var e = i.clone.call(this), t = e.words = this.words.slice(0), n = t.length, r = 0; r < n; r++) t[r] = t[r].clone();
|
||
return e
|
||
}
|
||
})
|
||
}(), t)
|
||
}()
|
||
},
|
||
|
||
|
||
7234: (e, t) => {
|
||
"use strict";
|
||
|
||
function n(e, t) {
|
||
var n = e.length;
|
||
e.push(t);
|
||
e: for (; 0 < n;) {
|
||
var r = n - 1 >>> 1, i = e[r];
|
||
if (!(0 < o(i, t))) break e;
|
||
e[r] = t, e[n] = i, n = r
|
||
}
|
||
}
|
||
|
||
function r(e) {
|
||
return 0 === e.length ? null : e[0]
|
||
}
|
||
|
||
function i(e) {
|
||
if (0 === e.length) return null;
|
||
var t = e[0], n = e.pop();
|
||
if (n !== t) {
|
||
e[0] = n;
|
||
e: for (var r = 0, i = e.length, s = i >>> 1; r < s;) {
|
||
var a = 2 * (r + 1) - 1, l = e[a], c = a + 1, u = e[c];
|
||
if (0 > o(l, n)) c < i && 0 > o(u, l) ? (e[r] = u, e[c] = n, r = c) : (e[r] = l, e[a] = n, r = a); else {
|
||
if (!(c < i && 0 > o(u, n))) break e;
|
||
e[r] = u, e[c] = n, r = c
|
||
}
|
||
}
|
||
}
|
||
return t
|
||
}
|
||
|
||
function o(e, t) {
|
||
var n = e.sortIndex - t.sortIndex;
|
||
return 0 !== n ? n : e.id - t.id
|
||
}
|
||
|
||
if ("object" === typeof performance && "function" === typeof performance.now) {
|
||
var s = performance;
|
||
t.unstable_now = function () {
|
||
return s.now()
|
||
}
|
||
} else {
|
||
var a = Date, l = a.now();
|
||
t.unstable_now = function () {
|
||
return a.now() - l
|
||
}
|
||
}
|
||
var c = [], u = [], d = 1, p = null, h = 3, f = !1, m = !1, g = !1,
|
||
v = "function" === typeof setTimeout ? setTimeout : null,
|
||
y = "function" === typeof clearTimeout ? clearTimeout : null,
|
||
x = "undefined" !== typeof setImmediate ? setImmediate : null;
|
||
|
||
function b(e) {
|
||
for (var t = r(u); null !== t;) {
|
||
if (null === t.callback) i(u); else {
|
||
if (!(t.startTime <= e)) break;
|
||
i(u), t.sortIndex = t.expirationTime, n(c, t)
|
||
}
|
||
t = r(u)
|
||
}
|
||
}
|
||
|
||
function w(e) {
|
||
if (g = !1, b(e), !m) if (null !== r(c)) m = !0, R(S); else {
|
||
var t = r(u);
|
||
null !== t && L(w, t.startTime - e)
|
||
}
|
||
}
|
||
|
||
function S(e, n) {
|
||
m = !1, g && (g = !1, y(E), E = -1), f = !0;
|
||
var o = h;
|
||
try {
|
||
for (b(n), p = r(c); null !== p && (!(p.expirationTime > n) || e && !_());) {
|
||
var s = p.callback;
|
||
if ("function" === typeof s) {
|
||
p.callback = null, h = p.priorityLevel;
|
||
var a = s(p.expirationTime <= n);
|
||
n = t.unstable_now(), "function" === typeof a ? p.callback = a : p === r(c) && i(c), b(n)
|
||
} else i(c);
|
||
p = r(c)
|
||
}
|
||
if (null !== p) var l = !0; else {
|
||
var d = r(u);
|
||
null !== d && L(w, d.startTime - n), l = !1
|
||
}
|
||
return l
|
||
} finally {
|
||
p = null, h = o, f = !1
|
||
}
|
||
}
|
||
|
||
"undefined" !== typeof navigator && void 0 !== navigator.scheduling && void 0 !== navigator.scheduling.isInputPending && navigator.scheduling.isInputPending.bind(navigator.scheduling);
|
||
var k, C = !1, j = null, E = -1, T = 5, A = -1;
|
||
|
||
function _() {
|
||
return !(t.unstable_now() - A < T)
|
||
}
|
||
|
||
function P() {
|
||
if (null !== j) {
|
||
var e = t.unstable_now();
|
||
A = e;
|
||
var n = !0;
|
||
try {
|
||
n = j(!0, e)
|
||
} finally {
|
||
n ? k() : (C = !1, j = null)
|
||
}
|
||
} else C = !1
|
||
}
|
||
|
||
if ("function" === typeof x) k = function () {
|
||
x(P)
|
||
}; else if ("undefined" !== typeof MessageChannel) {
|
||
var O = new MessageChannel, N = O.port2;
|
||
O.port1.onmessage = P, k = function () {
|
||
N.postMessage(null)
|
||
}
|
||
} else k = function () {
|
||
v(P, 0)
|
||
};
|
||
|
||
function R(e) {
|
||
j = e, C || (C = !0, k())
|
||
}
|
||
|
||
function L(e, n) {
|
||
E = v((function () {
|
||
e(t.unstable_now())
|
||
}), n)
|
||
}
|
||
|
||
t.unstable_IdlePriority = 5, t.unstable_ImmediatePriority = 1, t.unstable_LowPriority = 4, t.unstable_NormalPriority = 3, t.unstable_Profiling = null, t.unstable_UserBlockingPriority = 2, t.unstable_cancelCallback = function (e) {
|
||
e.callback = null
|
||
}
|
||
, t.unstable_continueExecution = function () {
|
||
m || f || (m = !0, R(S))
|
||
}
|
||
, t.unstable_forceFrameRate = function (e) {
|
||
0 > e || 125 < e ? console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported") : T = 0 < e ? Math.floor(1e3 / e) : 5
|
||
}
|
||
, t.unstable_getCurrentPriorityLevel = function () {
|
||
return h
|
||
}
|
||
, t.unstable_getFirstCallbackNode = function () {
|
||
return r(c)
|
||
}
|
||
, t.unstable_next = function (e) {
|
||
switch (h) {
|
||
case 1:
|
||
case 2:
|
||
case 3:
|
||
var t = 3;
|
||
break;
|
||
default:
|
||
t = h
|
||
}
|
||
var n = h;
|
||
h = t;
|
||
try {
|
||
return e()
|
||
} finally {
|
||
h = n
|
||
}
|
||
}
|
||
, t.unstable_pauseExecution = function () {
|
||
}
|
||
, t.unstable_requestPaint = function () {
|
||
}
|
||
, t.unstable_runWithPriority = function (e, t) {
|
||
switch (e) {
|
||
case 1:
|
||
case 2:
|
||
case 3:
|
||
case 4:
|
||
case 5:
|
||
break;
|
||
default:
|
||
e = 3
|
||
}
|
||
var n = h;
|
||
h = e;
|
||
try {
|
||
return t()
|
||
} finally {
|
||
h = n
|
||
}
|
||
}
|
||
, t.unstable_scheduleCallback = function (e, i, o) {
|
||
var s = t.unstable_now();
|
||
switch ("object" === typeof o && null !== o ? o = "number" === typeof (o = o.delay) && 0 < o ? s + o : s : o = s, e) {
|
||
case 1:
|
||
var a = -1;
|
||
break;
|
||
case 2:
|
||
a = 250;
|
||
break;
|
||
case 5:
|
||
a = 1073741823;
|
||
break;
|
||
case 4:
|
||
a = 1e4;
|
||
break;
|
||
default:
|
||
a = 5e3
|
||
}
|
||
return e = {
|
||
id: d++, callback: i, priorityLevel: e, startTime: o, expirationTime: a = o + a, sortIndex: -1
|
||
}, o > s ? (e.sortIndex = o, n(u, e), null === r(c) && e === r(u) && (g ? (y(E), E = -1) : g = !0, L(w, o - s))) : (e.sortIndex = a, n(c, e), m || f || (m = !0, R(S))), e
|
||
}
|
||
, t.unstable_shouldYield = _, t.unstable_wrapCallback = function (e) {
|
||
var t = h;
|
||
return function () {
|
||
var n = h;
|
||
h = t;
|
||
try {
|
||
return e.apply(this, arguments)
|
||
} finally {
|
||
h = n
|
||
}
|
||
}
|
||
}
|
||
}, 8853: (e, t, n) => {
|
||
"use strict";
|
||
e.exports = n(7234)
|
||
}
|
||
};
|
||
var t = {};
|
||
|
||
|
||
// function n(r) {
|
||
// var i = t[r];
|
||
// if (void 0 !== i)
|
||
// return i.exports;
|
||
// var o = t[r] = {
|
||
// id: r,
|
||
// loaded: !1,
|
||
// exports: {}
|
||
// };
|
||
// return e[r].call(o.exports, o, o.exports, n),
|
||
// o.loaded = !0,
|
||
// o.exports
|
||
// }
|
||
|
||
function n(moduleId) {
|
||
// 检查模块是否已经被缓存
|
||
let cachedModule = t[moduleId];
|
||
if (cachedModule !== undefined) {
|
||
return cachedModule.exports;
|
||
}
|
||
|
||
// 如果没有缓存,创建一个新的模块对象
|
||
let module = {
|
||
id: moduleId, loaded: false, exports: {}
|
||
};
|
||
|
||
// 将模块对象缓存起来,防止重复加载
|
||
t[moduleId] = module;
|
||
|
||
// 执行模块定义函数,填充 `exports`
|
||
// 参数依次为:当前模块对象、模块的导出对象、模块加载函数(递归调用)
|
||
e[moduleId].call(module.exports, module, module.exports, n);
|
||
|
||
// 标记模块已加载
|
||
module.loaded = true;
|
||
|
||
// 返回模块的导出对象
|
||
return module.exports;
|
||
}
|
||
|
||
console.log(n)
|
||
|
||
n.m = e;
|
||
console.log(e)
|
||
// n.n = e => {
|
||
// var t = e && e.__esModule ? () => e.default : () => e;
|
||
// return n.d(t, {
|
||
// a: t
|
||
// }), t
|
||
// },
|
||
|
||
n.n = (module) => {
|
||
// 判断是否是 ES6 模块,如果是,返回默认导出的内容,否则返回整个模块
|
||
const getModule = (module && module.__esModule) ? () => module.default : () => module;
|
||
// 定义模块的导出接口,确保可以通过属性 `a` 导出 `getModule`
|
||
n.d(getModule, {a: getModule});
|
||
// 返回处理后的模块
|
||
return getModule;
|
||
};
|
||
|
||
// (() => {
|
||
// var e, t = Object.getPrototypeOf ? e => Object.getPrototypeOf(e) : e => e.__proto__;
|
||
// n.t = function (r, i) {
|
||
// if (1 & i && (r = this(r)),
|
||
// 8 & i)
|
||
// return r;
|
||
// if ("object" === typeof r && r) {
|
||
// if (4 & i && r.__esModule)
|
||
// return r;
|
||
// if (16 & i && "function" === typeof r.then)
|
||
// return r
|
||
// }
|
||
// var o = Object.create(null);
|
||
// n.r(o);
|
||
// var s = {};
|
||
// e = e || [null, t({}), t([]), t(t)];
|
||
// for (var a = 2 & i && r; "object" == typeof a && !~e.indexOf(a); a = t(a))
|
||
// Object.getOwnPropertyNames(a).forEach((e => s[e] = () => r[e]));
|
||
// return s.default = () => r,
|
||
// n.d(o, s),
|
||
// o
|
||
// }
|
||
// }
|
||
// )(),
|
||
|
||
(() => {
|
||
// `t` 用于获取对象的原型
|
||
let protoGetter = Object.getPrototypeOf ? (obj) => Object.getPrototypeOf(obj) : (obj) => obj.__proto__;
|
||
n.t = function (module, flags) {
|
||
// 如果 flags 的第一位是 1,调用 `this(r)` 函数
|
||
if (1 & flags) {
|
||
module = this(module);
|
||
}
|
||
// 如果 flags 的第 3 位是 8,直接返回模块
|
||
if (8 & flags) {
|
||
return module;
|
||
}
|
||
// 如果模块是对象且存在
|
||
if (typeof module === 'object' && module) {
|
||
// 如果 flags 的第 2 位是 4 且模块是 ES6 模块,返回模块
|
||
if (4 & flags && module.__esModule) {
|
||
return module;
|
||
}
|
||
// 如果 flags 的第 4 位是 16 且模块是一个 thenable 函数(即 Promise),直接返回
|
||
if (16 & flags && typeof module.then === 'function') {
|
||
return module;
|
||
}
|
||
}
|
||
// 创建一个新的空对象用于导出
|
||
let newObj = Object.create(null);
|
||
n.r(newObj);
|
||
// 用于存储模块的属性
|
||
let exports = {};
|
||
// 初始化原型链
|
||
let prototypeChain = protoGetter ? [null, protoGetter({}), protoGetter([]), protoGetter(protoGetter)] : [];
|
||
// 如果模块是一个对象并且它不在原型链上,遍历它的属性并为每个属性创建 getter 函数
|
||
let currentModule = (2 & flags) && module;
|
||
while (typeof currentModule === 'object' && prototypeChain.indexOf(currentModule) === -1) {
|
||
Object.getOwnPropertyNames(currentModule).forEach((prop) => {
|
||
exports[prop] = () => module[prop];
|
||
});
|
||
// 向上查找原型链
|
||
currentModule = protoGetter(currentModule);
|
||
}
|
||
// 为模块的 `default` 属性创建一个 getter
|
||
exports.default = () => module;
|
||
// 将属性挂载到新的对象上
|
||
n.d(newObj, exports);
|
||
// 返回新的模块对象
|
||
return newObj;
|
||
}
|
||
})();
|
||
|
||
|
||
// n.d = (e, t) => {
|
||
// for (var r in t)
|
||
// n.o(t, r) && !n.o(e, r) && Object.defineProperty(e, r, {
|
||
// enumerable: !0,
|
||
// get: t[r]
|
||
// })
|
||
// }
|
||
|
||
n.d = (target, definition) => {
|
||
for (let key in definition) {
|
||
// 检查 definition 对象自身是否有该属性,且 target 上还未定义它
|
||
if (n.o(definition, key) && !n.o(target, key)) {
|
||
Object.defineProperty(target, key, {
|
||
enumerable: true, // 可枚举
|
||
get: definition[key] // 使用 getter 实现懒加载
|
||
});
|
||
}
|
||
}
|
||
};
|
||
|
||
n.f = {};
|
||
|
||
// n.e = e => Promise.all(Object.keys(n.f).reduce(((t, r) => (n.f[r](e, t),
|
||
// t)), [])),
|
||
|
||
|
||
// 加载 chunk(代码块),返回一个 Promise(所有异步资源都加载完)
|
||
n.e = (chunkId) => {
|
||
const promises = [];
|
||
// 遍历所有资源加载器(如 js、css)
|
||
for (const type in n.f) {
|
||
if (Object.prototype.hasOwnProperty.call(n.f, type)) {
|
||
// 每个加载器负责把对应类型的资源加载 Promise 放进 promises 数组
|
||
n.f[type](chunkId, promises);
|
||
}
|
||
}
|
||
// 并行加载所有资源,等待全部完成
|
||
return Promise.all(promises);
|
||
};
|
||
|
||
// n.g = function () {
|
||
// if ("object" === typeof globalThis)
|
||
// return globalThis;
|
||
// try {
|
||
// return this || new Function("return this")()
|
||
// } catch (e) {
|
||
// if ("object" === typeof window)
|
||
// return window
|
||
// }
|
||
// }(),
|
||
|
||
|
||
// 获取全局对象(globalThis 的兼容写法)
|
||
n.g = (() => {
|
||
// 优先使用标准 globalThis(现代浏览器和 Node 都支持)
|
||
if (typeof globalThis === 'object') {
|
||
return globalThis;
|
||
}
|
||
|
||
try {
|
||
// 回退方案:非严格模式下 this 指向全局对象,严格模式下使用 Function 构造函数绕开限制
|
||
return this || new Function("return this")();
|
||
} catch (e) {
|
||
// 最后兜底:浏览器环境中使用 window 对象
|
||
if (typeof window === 'object') {
|
||
return window;
|
||
}
|
||
}
|
||
})();
|
||
|
||
// n.o = (e, t) => Object.prototype.hasOwnProperty.call(e, t);
|
||
|
||
// 判断对象 e 是否拥有自身属性 t(而不是继承来的)
|
||
n.o = function (obj, prop) {
|
||
return Object.prototype.hasOwnProperty.call(obj, prop);
|
||
};
|
||
|
||
|
||
function userNp(str) {
|
||
const F = n(7691);
|
||
return F.np(str);
|
||
}
|
||
|
||
function userPB(str) {
|
||
const F = n(7691);
|
||
return F.PB(str);
|
||
}
|
||
|
||
// var F = n(7691);
|
||
// console.log(F);
|
||
// console.log(F.np('https://mtovnd7gjf.gcweqo.cn/api/v1/app/config'));
|
||
// console.log(F.np('https://mtovnd7gjf.gcweqo.cn/api/v1/movie/detail?id=zq27'));
|
||
// console.log(123);
|
||
// let str = 'aZmR9OYLTBJiHscJmoiPSQvUon2rl_YSZT6w34HmIcz_Kc5efaCKxCL5R6geSlTlO5MlfEnV2qo24q92WtLLRCM62jqhmK8653iPxkouMMMotkUt8cInPl4tndI6Y4XjwHrH3aVJZ3gn547N458zsWSvh3yhNxDkYh_oLc7U0o0jk2sU0w_KSIKg2iV3Tbg-O7u3b1oEpPbR65ocqWBlGDX3nOdtQLV9_QYq1tr5Ll36NYD88K3U6iubZ-Qjx2c53NQnSXEAhE9bN9K4f9uRbbGszEG9RsqRlNUwF3BX_mzrgtQ3ES6krgaem_0E-ErX5L2W77d_hYd2xdPzazhMBCK7flkpaflKn-oVeG-t01U_V5ZASePoEcDfvF93hOVU-EsH9HP7MOE0aRN2RWQYwqaf6oY-mXW6M3Pt6FDyn7Ezr8aL8rvequDwZscfn4BS4CnT-Oz6Z0dpVQeSzyIMNjX7fcVxhy4g8YWcju8AQwi0icHrGwRzBdBgm3ZQQgur2It7aZeMLrP5syL8Opa5kufVAR5VpinzcfJIPA_Q4o3Pr8kFBcMilTTrSFRT3Uq8OcIzuu38mUJV0EO5hpmZ1zdCjNy_lVXxKzfY9NTfUcvIObuPbiQI69yoONQPz8EyscL2rdZKrwL51uCNha4iIjQnbg2BRoJTyvOtx_fsNmi38SqQEbMMOFk0fTbdsXo0WMJI72YC8g7l_EaBViqjf3_VLsqDAoFfXOkE753EBw7U0IinKd4x9vKYdQ1fn08NHZjIfj1uh-npZglffzux0LfmjtOkOhRgdqfTyic4LEQnEMcGK4nff4h5MTOtdKLDG-RT22CXMospAbgGPUapmpfG9UbBu1OO60AaDidSvaaoFgY1KVTeNAvJcFQD8sJLrgHSgxqsS5y61It1VtR3OsV-Ugdvv29MGo6chQkUeo9tgQioKUqIImFqCjM5IE12z_yBMpCSImkKrpWp9yCB7ON0Wzvi4yVMhnaCtcvV-Z5ggw1yX0nL9vWfNqlvLWq0m7wDuAP_mE3pl29PzYpMIBH_6BbYzWa9KGtJjJe6l3TiEhQlr4YUV6fq54Yn2IG6hvzwh5L7Mz-B7p5VZXKvB3SqyqmpP1i32utK3hcQAv0Fg4ltWB_RHCNBIMBflddZ82LfYe76TmdUKThggtzOydNYbAvxmOZTyzI5AQOFhsPCVjxEfEemBp9EWiF-2F6fsGcGwC5xWDSn2Bqsdyeqm6gqxxXX07CUDfbAWys6LXqu59yQrY9GJIl6zIuTQCHIgEEDg8ftuBeE4d1jR7hmmB77QPpdazYjleQvxhsjUDgjom2pi96OFztNIu6170Gx4jKuQVbE-W720i4KCBkg6ahQygDo7k7rw3f02dttAsZz47_NuhZ-q6Zs5Q37r7vkwVv8lqzQLU39z6RnLAYAF4u_TzFrd_XOMyLtL5VTOeWVUrU1dCii1OhtVNgOJ5t1atJ3yQySQD_GL-PYMKqfF4U6XJT0DT3LhokhDB94Q_1PqRnC65CtND53C3aRQKj2PtMVOVNK1NVLE3Kvdr7gRx_OT8o8C4_r1B5hbeGWJp_CmPyCd-K8rLm1aEKq_eWkNYNumt5Nt_6hLAMnWrCG6uU0IgvSAUQ6Da5Dxu0M9uiPdo8gm6B-LT1Pf3FjeOUeVobocNR-lo97O4XXezYs3X7F_yn5jJdDZk7etngbC71qBrJqTyc_odKNR0ohDix94VgO8QFc1t5gFPAcuk7q_vE8Jkv5Tpc5Bz044KAYZ3DUIXXNgKFGPAXSe8u5KznqKrxPkQcyTkRjI6rIGfPrYs0jH9DeYzvZgqbPkqmghFePPSbtmfVY_100HYuWR80VTyGdPSdl3gQOwXwtXxCUjzuTMY7xpQnTQX-jbv81RYXiXkxTN1Wa4YsbkOFGDkKI-NzUOAG9gAK_aibHjVx0gT1_OI_zS-cZZgSddxdFMcuW9VX3v3Hfn-DC1qMl__pp6ofoCAcujxnWey8I58fuGerEjqKuGvbPcra3rgLoOJNOy03hZ9N7AA4m7bnuf_p-3DwuovZWYJpfKYSIgp1Q34rZxcI72xEd75wmqyFVK9FgYLjOhr-ikvQaxY8cNYtQ54GoxbEEyGAfuDGE5rc71KtUju-8UWW48rKwH-4RKvhqWDaE3Ul0_bX_kFGB3N2pfxBnlRvbAIsbY2s5yLBUBLerUj_F3K0teT0xva5AoAVsMI5ym_Di9TtA8hIGAHOmeNsgdxFXTbEZpkInLUyN-Vk4gh-sSyxepuZJxk0MLM02GkqczicKTAvXyuIqryjxzA1zh1DheaY07owX7IPuLapGjhae1W26ZaHYnzqaKcRDvvVkfZsCWyz3m9JxLKivdcupfS85A4vJw5dTkQiZGNCgEAtVVpM2PcxuiAQZhIidXZw7nuQB7iRj6t8_BLRRNeurFadmQFrCwxj5L0JLRWxdPejKX0OaTgdDGqmcH_tSlvBJIm31dB4BFPfB-71l0nQq8clKy8gUWSm0ADPbeNCvtXT_ZfL3FVrKeWcC9t5DU0yNr-YPsVk9XR1uQvNrG4fZfAZreW6l2Ea6Q2bjw-qQJ4bbVOseh30DCgsnk7uwZpldD1iCpIWcoO_k2HOfg1g7DzjwR53UmQcu1Z646QLKqFsXEmEA1te-DcmdoJp2zxVtYbEe00WatmcFTxtRKaa8ls8L42gfflKV9qCLntvua-zZJZYTORILD47D3CERwNvH7211oJByJNyS-GSViuUt7zyARzZspy0sSIHnKq7CijsjEmtmKzQVIYd5x69vUfKmjB_8thycr4l-c8C6gvenA0YspydR4YO7hgG6nAe0EV-ovtMNvV6Bf-X7RNhPaf8tog2RCGWO3KoMwQeI3khEjtTlpUJOQXQQfQ2zxZaEMVroExQzb3r3dSShv0V4KIQ00o-dxCJNts13nAZPA_DterdaVLLZ7kxDHBDqJdvxfSmwH6lX5LaSQsbyr6jHAVlw13pSyoM2hs_xdcLDoTqzLQxOwVQVho9CPliyHuK_j_guOioAwOK0JblIy55sW3n_zHs_MZIbGV5NOsg-EazJrIXozu9xYXw3Mg5DgRlEZmCzhUHWNYncsFr-H56d7ue1-BcizMqwz7ciEie5bsB3mDsqzyatGEoc-kBWuAoiUhiKMYP5KHPZsgBA4f28srloqbvK-FaYmeuf26-IaWS_DRrTQtkM6B6Dud0CBC2-HRDghNPug7oWkzavvQgvZ7ydeRMU_OKS-xsWJ5tw7v0F1yOWXoOJ7T9vVCNOIpDbq0QMZ2UwzsxNdFWToXrhrA2u817iydYa-L6jwihJ6wt8Ytt6YrCMobN2pzgp4PMFux9pjvz7aAaGf_3TTw27t4R2EueitkWlJJnK9p75r6MO4DQpPtwecoyVyNU5XqPjC1yKnjJa1CXH2LlFqI2bD3VIiVgrFQdk1rmwHWdu2XzxjMhUa32eWkRq8N1o3wxhJcypnRWg7xZUghptmFlhbceg81ocwp-AjKwK66YiOpDvs9nNlMCLPu9ebqjdv_tYqt_ipbuF8epfwgdKWs7RO53UQRmZ0soAzLh6QS_YWmVBDGdiEI5U80kP2pmYGl-0nOi0_zZQmygZjeutPEmYbeFrcWYWAOC_NOb71h9AuRDj18U8X7QG3k3cunDXdDtcOHOS4V3UG-rSRk3S8Zjf0MfWBMABYntugrna1UpU8MrCClqTPuh2-oehITgNNPBNfpHZA5GMui5RnUfLKq6DH3yRwV_cUXTwvvqxzF_xXTnE5DaAds9Ly53wsaHqMJuSsr6SoMRgIfEOqD8zdI58WegyfusQx6rJ-szlE1T69wwuu1PxH16YtHS_Y6CWrQ2PsOaHKZOO3c7fwWJ2GrmEI8A7oba_jZcEvZfRs2MKjBzXX6jrZK8VHOq1Kw-UKdoIQ72pBvQLj86OpEcbJUyY6lWJ16Qp3b6oDONjyN8YYia22I9CQ5GlzOx-0obTtBWZs9HWMAnre_-LeRa0M6xBYuZ9-Jm7O6DbboR7OgKVfyPvt6CVtX-P6mUe-GSdRcFZwCrSqpSv8emn0YjxHC9ERj-0MDM_xh-sV5kwGlch2181oUo6qVbmDl5eF7SGkHsfLPjk0gRnKhSWXjOVgt-dAplEYqxVTxcVGaECfWK6rokBB2jkfNDyPVKXxeZ0jBcxx5GhM_IqghBtzLU8crqVdQ7lqxqjhOuge4mz59CgnY7ya8FsRd4dx6_zJJ9uW7T0pwW4gVtZviT-9bSurs-QNwSBRsq1yAS5-DNz5s7IqcuKs0le172kr2LUXwofVwhJVAw6r6L0Hc6cjbkOcv55tCbOtnCZCR8t7_jayMQHeo_u3l8A8QnBFkXQxNhPo80io6sOvSZQZ2rvXwxWokDNC5GotqSWgvPDYptJ_CSAqNA0XaIHDSmEGk5JUJNlIrMppEbQZp4uv9PzarrU7_xtLnRV7eO7a04KedmVZcU2hF_6shXhBr0YY6MsrRR6BbS4Za5T4QjHT_JJJh3WPTrxeRTUV4beTQZseiEM8XmGDh54EP_HbSiAQCVdUCCWy1nxEU5oVtYCnLtmhX6PC9_WYKzSx0usyncxqNAgOyoCCEJi8ccJm6EECcuUOJAyzqsms4jVDdLtDAWy0l7rcV8PUVxybqnfS0iq7kT582rqhKX7SVHrDutkZ7IpJt60GPIp0Yyx5BuaLakWsUJd93o5WF_XnaoNc35xCZq4EsoCmQdIWUEi9TDm9qOPrGH_Di3cblbJs4oOfpbZwndGULUav4gucxJi5kz3akiQOtCF5xB5l5zqjz3POXpanRizAKUFi25Bh6f0PPG6iMaNuzVEnt-ghzFM8wlR8pJpv-1Kd3BDSpIbUplWFblFcnHhnu20W0GSty9_CrKLCDz_Qhw_xDpTrq_45Bm9BOAgIWVLmX3M6aKNKyUn9POHDANKz0v10VgG3JZly3PoJpjBwleo9-8A9qj4k4tZBwC7wqVYXmqaaaS4c6rcTZTJea-82TgBRAgOPPB_lYBWhyYXP1MKfsH2uRQBnse6-TXxWRbeSg7PAdc69g5tAHHNr5WVh-CkdSnM3CpWv_c2rNLEd63Seu3j-AViFAbZLurN-u6ILaaVbqZeUNXWOXYP8KUWm056IA05Zr7NuVPg8DrGDdg5SFHDlEOQ5DozsDgs3tQ0Z6lJKBsRXtkHHx9bBkz1u-vUIQoj5vfscqU7tOOmbgS-Yb8Ruck-50Kezu5XlrG6t1XeMiJ-IcVqjkufkP-LKcF6NgbR-AaWOh3N6pTI6jFUpi8i2BwHVYi7jD7sXNJiyTM2LXata3uzvhGstNUmyHrcTav0_gBg1mmKHFSx6nWga1833XZ3pXJK6Y_w6OlMKg-Jzt05h2iU37w78QaE4jkkO3ZPePsydVTSwBjuSvw6wTuK5xcbM7gHGWIK7ponWnE8DFDebXG23A6q1EAm07_ACqgEKglTgH-PsS6nHdmr8VdkNxB-vNa04PL6sNC-uf9g6_WC6j7YzipwuUT9iqml03j_NWGYHSkiRh6x-Jfl0Y559Br9fE-L7N7SaWV0RJWIi_LGqNz4kzVIjukx40OPA8yXxlD7G0YeKgNpONGdXDQspoj5RlQvrEzVU29RxdjLSGN51MDq1hDLYONXclpjdXT08lwch1fNQlhI4HBZ8V424mrwa81cRbGfGeUjloYNV37ml0-YgcTGYKoq4cFmI8v63xkHma586sH8qJdcRwqszUUB9ajsA5xcfy508DcSd5DrAEsDeoPVHo6AMVs6H2n62wgtWc6uQ4J5qFKn-btKawTw1_rJbB37o80355bdplFjNHhfrcziefSWyp-W1cAFe5osnZayNg5cR8axn6eLA3sRZD27q6dsEPt5v1W48_5pDB7zfeJI7HL-_SNNVFTJYd0NfFZzFTgJirnNdap_uMVl9cgnPP8pBiWGZOC1j6sn7jfxSCVBC0ER66Oft35j3TimBi62k52Vms0UWSTJise7t0_6ro3K623EnsYDgNs6Ena9RpO-hdGS-aSdMq8gkPFyKzYh-KqiXNDs1B1wl5J9okknhJHuEFU8YGHQsDDTRNEeoyJSU12xvqNHa0SeleMs_vovv_3Gy-6_MD3Bzx6jmwOWGAaz_RkTLjzuIbGRN8IRt8b_Fyuk1eDw1OviattKjXqgGRuzTMPgBZx6JkQMpskL8Cf1_li_4lsZdEkjT8pgHhNxaW9lFNycPL9vZbiuT3ChBZkfc97TwTB1L_zLTbzBjydPuFpxXy_-7HK-2yR1LNaDJzAVfRHHdr2G-wbJxOAcM03c7_gMzqYJQEqmrZ3kVsW9vigrc7kvaAx04RqMKB8SUETPz_hu46tlQ5iyqqLTuabQibJYadehUyJXwabNcoPJsszOAwkyB4mqB-7hrtnnsLfbfYW8E0kXcUmGNbkeOTmlhgvqjSLU_TpbfY4zANNrTYfYuNYKVHJ5alMPCs_0CpDvSjdicH5lQVDzmZk1ur8vcLEyteNxytZxOy2xysgjdin57hiVA4RagPDkupXKVKHUPrLQWzM3TG07akbsASqsUG_vN6Gkye_i8ifhkMyOd6gham-tlplpLPPeSj-5cn4K_Bj1awBgId4nhDYrLm_E0fv4h24uD4skbADMGUWRT_dKwgtnPL39Nc-Ie7-QU0DpLHk1lFLy3OnGBbGyHKeId28'
|
||
//
|
||
// let str1 = 'aZmR9OYLTBJiHscJmoiPSeMwPOMZ2S7w7CPL9I15W6W1BA3U0uHXfewX6B8Kh4nK4KIY6pD5iqfvVwMb1teFK74pGh6NGmE6NiZNQSzoWbQ';
|
||
// console.log(F.PB(str1));
|
||
//
|
||
//
|
||
// console.log(111111)
|