| 1292 | }; |
| 1293 | |
| 1294 | function Z() { |
| 1295 | return G || (G = 1, Q.exports = function(e) { |
| 1296 | return function(t) { |
| 1297 | var r = e, |
| 1298 | o = r.lib, |
| 1299 | n = o.WordArray, |
| 1300 | i = o.Hasher, |
| 1301 | s = r.x64.Word, |
| 1302 | a = r.algo, |
| 1303 | c = [], |
| 1304 | u = [], |
| 1305 | l = []; |
| 1306 | ! function() { |
| 1307 | for (var e = 1, t = 0, r = 0; r < 24; r++) { |
| 1308 | c[e + 5 * t] = (r + 1) * (r + 2) / 2 % 64; |
| 1309 | var o = (2 * e + 3 * t) % 5; |
| 1310 | e = t % 5, t = o |
| 1311 | } |
| 1312 | for (e = 0; e < 5; e++) |
| 1313 | for (t = 0; t < 5; t++) u[e + 5 * t] = t + (2 * e + 3 * t) % 5 * 5; |
| 1314 | for (var n = 1, i = 0; i < 24; i++) { |
| 1315 | for (var a = 0, h = 0, d = 0; d < 7; d++) { |
| 1316 | if (1 & n) { |
| 1317 | var f = (1 << d) - 1; |
| 1318 | f < 32 ? h ^= 1 << f : a ^= 1 << f - 32 |
| 1319 | } |
| 1320 | 128 & n ? n = n << 1 ^ 113 : n <<= 1 |
| 1321 | } |
| 1322 | l[i] = s.create(a, h) |
| 1323 | } |
| 1324 | }(); |
| 1325 | var h = []; |
| 1326 | ! function() { |
| 1327 | for (var e = 0; e < 25; e++) h[e] = s.create() |
| 1328 | }(); |
| 1329 | var d = a.SHA3 = i.extend({ |
| 1330 | cfg: i.cfg.extend({ |
| 1331 | outputLength: 512 |
| 1332 | }), |
| 1333 | _doReset: function() { |
| 1334 | for (var e = this._state = [], t = 0; t < 25; t++) e[t] = new s.init; |
| 1335 | this.blockSize = (1600 - 2 * this.cfg.outputLength) / 32 |
| 1336 | }, |
| 1337 | _doProcessBlock: function(e, t) { |
| 1338 | for (var r = this._state, o = this.blockSize / 2, n = 0; n < o; n++) { |
| 1339 | var i = e[t + 2 * n], |
| 1340 | s = e[t + 2 * n + 1]; |
| 1341 | i = 16711935 & (i << 8 | i >>> 24) | 4278255360 & (i << 24 | i >>> 8), s = 16711935 & (s << 8 | s >>> 24) | 4278255360 & (s << 24 | s >>> 8), (C = r[n]).high ^= s, C.low ^= i |
| 1342 | } |
| 1343 | for (var a = 0; a < 24; a++) { |
| 1344 | for (var d = 0; d < 5; d++) { |
| 1345 | for (var f = 0, p = 0, y = 0; y < 5; y++) f ^= (C = r[d + 5 * y]).high, p ^= C.low; |
| 1346 | var g = h[d]; |
| 1347 | g.high = f, g.low = p |
| 1348 | } |
| 1349 | for (d = 0; d < 5; d++) { |
| 1350 | var m = h[(d + 4) % 5], |
| 1351 | v = h[(d + 1) % 5], |