function h(n, e) { var t = n[0] >>> 16 , r = 65535 & n[0] , o = n[1] >>> 16 , i = 65535 & n[1] , a = e[0] >>> 16 , c = 65535 & e[0] , u = e[1] >>> 16 , l = 65535 & e[1] , s = 0 , d = 0 , f = 0 , m = 0; f += (m += i * l) >>> 16, m &= 65535, d += (f += o * l) >>> 16, f &= 65535, d += (f += i * u) >>> 16, f &= 65535, s += (d += r * l) >>> 16, d &= 65535, s += (d += o * u) >>> 16, d &= 65535, s += (d += i * c) >>> 16, d &= 65535, s += t * l + r * u + o * c + i * a, s &= 65535, n[0] = s << 16 | d, n[1] = f << 16 | m } function p(n, e) { var t = n[0]; 32 === (e %= 64) ? (n[0] = n[1], n[1] = t) : e < 32 ? (n[0] = t << e | n[1] >>> 32 - e, n[1] = n[1] << e | t >>> 32 - e) : (e -= 32, n[0] = n[1] << e | t >>> 32 - e, n[1] = t << e | n[1] >>> 32 - e) } function y(n, e) { n[0] ^= e[0], n[1] ^= e[1] } function b(n, e) { 0 !== (e %= 64) && (e < 32 ? (n[0] = n[1] >>> 32 - e, n[1] = n[1] << e) : (n[0] = n[1] << e - 32, n[1] = 0)) } function v(n, e) { var t = n[0] >>> 16 , r = 65535 & n[0] , o = n[1] >>> 16 , i = 65535 & n[1] , a = e[0] >>> 16 , c = 65535 & e[0] , u = e[1] >>> 16 , l = 0 , s = 0 , d = 0 , f = 0; d += (f += i + (65535 & e[1])) >>> 16, f &= 65535, s += (d += o + u) >>> 16, d &= 65535, l += (s += r + c) >>> 16, s &= 65535, l += t + a, l &= 65535, n[0] = l << 16 | s, n[1] = d << 16 | f } var g = [4283543511, 3981806797] , w = [3301882366, 444984403]; function L(n) { var e = [0, n[0] >>> 1]; y(n, e), h(n, g), e[1] = n[0] >>> 1, y(n, e), h(n, w), e[1] = n[0] >>> 1, y(n, e) } var k = [2277735313, 289559509] , V = [1291169091, 658871167] , S = [0, 5] , W = [0, 1390208809] , Z = [0, 944331445]; function x(n, e) { var t = function(n) { for (var e = new Uint8Array(n.length), t = 0; t < n.length; t++) { var r = n.charCodeAt(t); if (r > 127) return (new TextEncoder).encode(n); e[t] = r } return e }(n); e = e || 0; var r, o = [0, t.length], i = o[1] % 16, a = o[1] - i, c = [0, e], u = [0, e], l = [0, 0], s = [0, 0]; for (r = 0; r < a; r += 16) l[0] = t[r + 4] | t[r + 5] << 8 | t[r + 6] << 16 | t[r + 7] << 24, l[1] = t[r] | t[r + 1] << 8 | t[r + 2] << 16 | t[r + 3] << 24, s[0] = t[r + 12] | t[r + 13] << 8 | t[r + 14] << 16 | t[r + 15] << 24, s[1] = t[r + 8] | t[r + 9] << 8 | t[r + 10] << 16 | t[r + 11] << 24, h(l, k), p(l, 31), h(l, V), y(c, l), p(c, 27), v(c, u), h(c, S), v(c, W), h(s, V), p(s, 33), h(s, k), y(u, s), p(u, 31), v(u, c), h(u, S), v(u, Z); l[0] = 0, l[1] = 0, s[0] = 0, s[1] = 0; var d = [0, 0]; switch (i) { case 15: d[1] = t[r + 14], b(d, 48), y(s, d); case 14: d[1] = t[r + 13], b(d, 40), y(s, d); case 13: d[1] = t[r + 12], b(d, 32), y(s, d); case 12: d[1] = t[r + 11], b(d, 24), y(s, d); case 11: d[1] = t[r + 10], b(d, 16), y(s, d); case 10: d[1] = t[r + 9], b(d, 8), y(s, d); case 9: d[1] = t[r + 8], y(s, d), h(s, V), p(s, 33), h(s, k), y(u, s); case 8: d[1] = t[r + 7], b(d, 56), y(l, d); case 7: d[1] = t[r + 6], b(d, 48), y(l, d); case 6: d[1] = t[r + 5], b(d, 40), y(l, d); case 5: d[1] = t[r + 4], b(d, 32), y(l, d); case 4: d[1] = t[r + 3], b(d, 24), y(l, d); case 3: d[1] = t[r + 2], b(d, 16), y(l, d); case 2: d[1] = t[r + 1], b(d, 8), y(l, d); case 1: d[1] = t[r], y(l, d), h(l, k), p(l, 31), h(l, V), y(c, l) } return y(c, o), y(u, o), v(c, u), v(u, c), L(c), L(u), v(c, u), v(u, c), ("00000000" + (c[0] >>> 0).toString(16)).slice(-8) + ("00000000" + (c[1] >>> 0).toString(16)).slice(-8) + ("00000000" + (u[0] >>> 0).toString(16)).slice(-8) + ("00000000" + (u[1] >>> 0).toString(16)).slice(-8) } function Mn(n) { for (var e = "", t = 0, r = Object.keys(n).sort(); t < r.length; t++) { var o = r[t] , i = n[o] , a = "error" in i ? "error" : JSON.stringify(i.value); e += "".concat(e ? "|" : "").concat(o.replace(/([:|\\])/g, "\\$1"), ":").concat(a) } return e } function getFingerprint(n) { return x(Mn(n)) }