| 1139 | }; |
| 1140 | |
| 1141 | function L() { |
| 1142 | return P || (P = 1, O.exports = function(e) { |
| 1143 | return function(t) { |
| 1144 | var r = e, |
| 1145 | o = r.lib, |
| 1146 | n = o.WordArray, |
| 1147 | i = o.Hasher, |
| 1148 | s = r.algo, |
| 1149 | a = [], |
| 1150 | c = []; |
| 1151 | ! function() { |
| 1152 | function e(e) { |
| 1153 | for (var r = t.sqrt(e), o = 2; o <= r; o++) |
| 1154 | if (!(e % o)) return !1; |
| 1155 | return !0 |
| 1156 | } |
| 1157 | |
| 1158 | function r(e) { |
| 1159 | return 4294967296 * (e - (0 | e)) | 0 |
| 1160 | } |
| 1161 | for (var o = 2, n = 0; n < 64;) e(o) && (n < 8 && (a[n] = r(t.pow(o, .5))), c[n] = r(t.pow(o, 1 / 3)), n++), o++ |
| 1162 | }(); |
| 1163 | var u = [], |
| 1164 | l = s.SHA256 = i.extend({ |
| 1165 | _doReset: function() { |
| 1166 | this._hash = new n.init(a.slice(0)) |
| 1167 | }, |
| 1168 | _doProcessBlock: function(e, t) { |
| 1169 | for (var r = this._hash.words, o = r[0], n = r[1], i = r[2], s = r[3], a = r[4], l = r[5], h = r[6], d = r[7], f = 0; f < 64; f++) { |
| 1170 | if (f < 16) u[f] = 0 | e[t + f]; |
| 1171 | else { |
| 1172 | var p = u[f - 15], |
| 1173 | y = (p << 25 | p >>> 7) ^ (p << 14 | p >>> 18) ^ p >>> 3, |
| 1174 | g = u[f - 2], |
| 1175 | m = (g << 15 | g >>> 17) ^ (g << 13 | g >>> 19) ^ g >>> 10; |
| 1176 | u[f] = y + u[f - 7] + m + u[f - 16] |
| 1177 | } |
| 1178 | var v = o & n ^ o & i ^ n & i, |
| 1179 | b = (o << 30 | o >>> 2) ^ (o << 19 | o >>> 13) ^ (o << 10 | o >>> 22), |
| 1180 | w = d + ((a << 26 | a >>> 6) ^ (a << 21 | a >>> 11) ^ (a << 7 | a >>> 25)) + (a & l ^ ~a & h) + c[f] + u[f]; |
| 1181 | d = h, h = l, l = a, a = s + w | 0, s = i, i = n, n = o, o = w + (b + v) | 0 |
| 1182 | } |
| 1183 | r[0] = r[0] + o | 0, r[1] = r[1] + n | 0, r[2] = r[2] + i | 0, r[3] = r[3] + s | 0, r[4] = r[4] + a | 0, r[5] = r[5] + l | 0, r[6] = r[6] + h | 0, r[7] = r[7] + d | 0 |
| 1184 | }, |
| 1185 | _doFinalize: function() { |
| 1186 | var e = this._data, |
| 1187 | r = e.words, |
| 1188 | o = 8 * this._nDataBytes, |
| 1189 | n = 8 * e.sigBytes; |
| 1190 | return r[n >>> 5] |= 128 << 24 - n % 32, r[14 + (n + 64 >>> 9 << 4)] = t.floor(o / 4294967296), r[15 + (n + 64 >>> 9 << 4)] = o, e.sigBytes = 4 * r.length, this._process(), this._hash |
| 1191 | }, |
| 1192 | clone: function() { |
| 1193 | var e = i.clone.call(this); |
| 1194 | return e._hash = this._hash.clone(), e |
| 1195 | } |
| 1196 | }); |
| 1197 | r.SHA256 = i._createHelper(l), r.HmacSHA256 = i._createHmacHelper(l) |
| 1198 | }(Math), e.SHA256 |