xlsx.core

sheetjs

当前为 2022-08-04 提交的版本,查看 最新版本

此脚本不应直接安装。它是供其他脚本使用的外部库,要使用该库请加入元指令 // @require https://update.cn-greasyfork.org/scripts/448905/1077565/xlsxcore.js

  1. !function(t, n) {
  2. "object" == typeof exports ? module.exports = exports = n() : "function" == typeof define && define.amd ? define([], n) : t.CryptoJS = n()
  3. }(this, function() {
  4. var t = t || function(t, n) {
  5. var i = Object.create || function() {
  6. function t() {}
  7. return function(n) {
  8. var i;
  9. return t.prototype = n,
  10. i = new t,
  11. t.prototype = null,
  12. i
  13. }
  14. }()
  15. , e = {}
  16. , r = e.lib = {}
  17. , o = r.Base = function() {
  18. return {
  19. extend: function(t) {
  20. var n = i(this);
  21. return t && n.mixIn(t),
  22. n.hasOwnProperty("init") && this.init !== n.init || (n.init = function() {
  23. n.$super.init.apply(this, arguments)
  24. }
  25. ),
  26. n.init.prototype = n,
  27. n.$super = this,
  28. n
  29. },
  30. create: function() {
  31. var t = this.extend();
  32. return t.init.apply(t, arguments),
  33. t
  34. },
  35. init: function() {},
  36. mixIn: function(t) {
  37. for (var n in t)
  38. t.hasOwnProperty(n) && (this[n] = t[n]);
  39. t.hasOwnProperty("toString") && (this.toString = t.toString)
  40. },
  41. clone: function() {
  42. return this.init.prototype.extend(this)
  43. }
  44. }
  45. }()
  46. , s = r.WordArray = o.extend({
  47. init: function(t, i) {
  48. t = this.words = t || [],
  49. i != n ? this.sigBytes = i : this.sigBytes = 4 * t.length
  50. },
  51. toString: function(t) {
  52. return (t || c).stringify(this)
  53. },
  54. concat: function(t) {
  55. var n = this.words
  56. , i = t.words
  57. , e = this.sigBytes
  58. , r = t.sigBytes;
  59. if (this.clamp(),
  60. e % 4)
  61. for (var o = 0; o < r; o++) {
  62. var s = i[o >>> 2] >>> 24 - o % 4 * 8 & 255;
  63. n[e + o >>> 2] |= s << 24 - (e + o) % 4 * 8
  64. }
  65. else
  66. for (var o = 0; o < r; o += 4)
  67. n[e + o >>> 2] = i[o >>> 2];
  68. return this.sigBytes += r,
  69. this
  70. },
  71. clamp: function() {
  72. var n = this.words
  73. , i = this.sigBytes;
  74. n[i >>> 2] &= 4294967295 << 32 - i % 4 * 8,
  75. n.length = t.ceil(i / 4)
  76. },
  77. clone: function() {
  78. var t = o.clone.call(this);
  79. return t.words = this.words.slice(0),
  80. t
  81. },
  82. random: function(n) {
  83. for (var i, e = [], r = function(n) {
  84. var n = n
  85. , i = 987654321
  86. , e = 4294967295;
  87. return function() {
  88. i = 36969 * (65535 & i) + (i >> 16) & e,
  89. n = 18e3 * (65535 & n) + (n >> 16) & e;
  90. var r = (i << 16) + n & e;
  91. return r /= 4294967296,
  92. r += .5,
  93. r * (t.random() > .5 ? 1 : -1)
  94. }
  95. }, o = 0; o < n; o += 4) {
  96. var a = r(4294967296 * (i || t.random()));
  97. i = 987654071 * a(),
  98. e.push(4294967296 * a() | 0)
  99. }
  100. return new s.init(e,n)
  101. }
  102. })
  103. , a = e.enc = {}
  104. , c = a.Hex = {
  105. stringify: function(t) {
  106. for (var n = t.words, i = t.sigBytes, e = [], r = 0; r < i; r++) {
  107. var o = n[r >>> 2] >>> 24 - r % 4 * 8 & 255;
  108. e.push((o >>> 4).toString(16)),
  109. e.push((15 & o).toString(16))
  110. }
  111. return e.join("")
  112. },
  113. parse: function(t) {
  114. for (var n = t.length, i = [], e = 0; e < n; e += 2)
  115. i[e >>> 3] |= parseInt(t.substr(e, 2), 16) << 24 - e % 8 * 4;
  116. return new s.init(i,n / 2)
  117. }
  118. }
  119. , u = a.Latin1 = {
  120. stringify: function(t) {
  121. for (var n = t.words, i = t.sigBytes, e = [], r = 0; r < i; r++) {
  122. var o = n[r >>> 2] >>> 24 - r % 4 * 8 & 255;
  123. e.push(String.fromCharCode(o))
  124. }
  125. return e.join("")
  126. },
  127. parse: function(t) {
  128. for (var n = t.length, i = [], e = 0; e < n; e++)
  129. i[e >>> 2] |= (255 & t.charCodeAt(e)) << 24 - e % 4 * 8;
  130. return new s.init(i,n)
  131. }
  132. }
  133. , f = a.Utf8 = {
  134. stringify: function(t) {
  135. try {
  136. return decodeURIComponent(escape(u.stringify(t)))
  137. } catch (t) {
  138. throw new Error("Malformed UTF-8 data")
  139. }
  140. },
  141. parse: function(t) {
  142. return u.parse(unescape(encodeURIComponent(t)))
  143. }
  144. }
  145. , h = r.BufferedBlockAlgorithm = o.extend({
  146. reset: function() {
  147. this._data = new s.init,
  148. this._nDataBytes = 0
  149. },
  150. _append: function(t) {
  151. "string" == typeof t && (t = f.parse(t)),
  152. this._data.concat(t),
  153. this._nDataBytes += t.sigBytes
  154. },
  155. _process: function(n) {
  156. var i = this._data
  157. , e = i.words
  158. , r = i.sigBytes
  159. , o = this.blockSize
  160. , a = 4 * o
  161. , c = r / a;
  162. c = n ? t.ceil(c) : t.max((0 | c) - this._minBufferSize, 0);
  163. var u = c * o
  164. , f = t.min(4 * u, r);
  165. if (u) {
  166. for (var h = 0; h < u; h += o)
  167. this._doProcessBlock(e, h);
  168. var p = e.splice(0, u);
  169. i.sigBytes -= f
  170. }
  171. return new s.init(p,f)
  172. },
  173. clone: function() {
  174. var t = o.clone.call(this);
  175. return t._data = this._data.clone(),
  176. t
  177. },
  178. _minBufferSize: 0
  179. })
  180. , p = (r.Hasher = h.extend({
  181. cfg: o.extend(),
  182. init: function(t) {
  183. this.cfg = this.cfg.extend(t),
  184. this.reset()
  185. },
  186. reset: function() {
  187. h.reset.call(this),
  188. this._doReset()
  189. },
  190. update: function(t) {
  191. return this._append(t),
  192. this._process(),
  193. this
  194. },
  195. finalize: function(t) {
  196. t && this._append(t);
  197. var n = this._doFinalize();
  198. return n
  199. },
  200. blockSize: 16,
  201. _createHelper: function(t) {
  202. return function(n, i) {
  203. return new t.init(i).finalize(n)
  204. }
  205. },
  206. _createHmacHelper: function(t) {
  207. return function(n, i) {
  208. return new p.HMAC.init(t,i).finalize(n)
  209. }
  210. }
  211. }),
  212. e.algo = {});
  213. return e
  214. }(Math);
  215. return t
  216. });
  217. !function(e, t, i) {
  218. "object" == typeof exports ? module.exports = exports = t(require("./core.min"), require("./sha1.min"), require("./hmac.min")) : "function" == typeof define && define.amd ? define(["./core.min", "./sha1.min", "./hmac.min"], t) : t(e.CryptoJS)
  219. }(this, function(e) {
  220. return function() {
  221. var t = e
  222. , i = t.lib
  223. , r = i.Base
  224. , n = i.WordArray
  225. , o = t.algo
  226. , a = o.MD5
  227. , c = o.EvpKDF = r.extend({
  228. cfg: r.extend({
  229. keySize: 4,
  230. hasher: a,
  231. iterations: 1
  232. }),
  233. init: function(e) {
  234. this.cfg = this.cfg.extend(e)
  235. },
  236. compute: function(e, t) {
  237. for (var i = this.cfg, r = i.hasher.create(), o = n.create(), a = o.words, c = i.keySize, f = i.iterations; a.length < c; ) {
  238. s && r.update(s);
  239. var s = r.update(e).finalize(t);
  240. r.reset();
  241. for (var u = 1; u < f; u++)
  242. s = r.finalize(s),
  243. r.reset();
  244. o.concat(s)
  245. }
  246. return o.sigBytes = 4 * c,
  247. o
  248. }
  249. });
  250. t.EvpKDF = function(e, t, i) {
  251. return c.create(i).compute(e, t)
  252. }
  253. }(),
  254. e.EvpKDF
  255. });
  256. !function(r, e) {
  257. "object" == typeof exports ? module.exports = exports = e(require("./core.min")) : "function" == typeof define && define.amd ? define(["./core.min"], e) : e(r.CryptoJS)
  258. }(this, function(r) {
  259. return function() {
  260. function e(r, e, t) {
  261. for (var n = [], i = 0, o = 0; o < e; o++)
  262. if (o % 4) {
  263. var f = t[r.charCodeAt(o - 1)] << o % 4 * 2
  264. , c = t[r.charCodeAt(o)] >>> 6 - o % 4 * 2;
  265. n[i >>> 2] |= (f | c) << 24 - i % 4 * 8,
  266. i++
  267. }
  268. return a.create(n, i)
  269. }
  270. var t = r
  271. , n = t.lib
  272. , a = n.WordArray
  273. , i = t.enc;
  274. i.Base64 = {
  275. stringify: function(r) {
  276. var e = r.words
  277. , t = r.sigBytes
  278. , n = this._map;
  279. r.clamp();
  280. for (var a = [], i = 0; i < t; i += 3)
  281. for (var o = e[i >>> 2] >>> 24 - i % 4 * 8 & 255, f = e[i + 1 >>> 2] >>> 24 - (i + 1) % 4 * 8 & 255, c = e[i + 2 >>> 2] >>> 24 - (i + 2) % 4 * 8 & 255, s = o << 16 | f << 8 | c, h = 0; h < 4 && i + .75 * h < t; h++)
  282. a.push(n.charAt(s >>> 6 * (3 - h) & 63));
  283. var p = n.charAt(64);
  284. if (p)
  285. for (; a.length % 4; )
  286. a.push(p);
  287. return a.join("")
  288. },
  289. parse: function(r) {
  290. var t = r.length
  291. , n = this._map
  292. , a = this._reverseMap;
  293. if (!a) {
  294. a = this._reverseMap = [];
  295. for (var i = 0; i < n.length; i++)
  296. a[n.charCodeAt(i)] = i
  297. }
  298. var o = n.charAt(64);
  299. if (o) {
  300. var f = r.indexOf(o);
  301. f !== -1 && (t = f)
  302. }
  303. return e(r, t, a)
  304. },
  305. _map: "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="
  306. }
  307. }(),
  308. r.enc.Base64
  309. });
  310. !function(e, t, r) {
  311. "object" == typeof exports ? module.exports = exports = t(require("./core.min"), require("./evpkdf.min")) : "function" == typeof define && define.amd ? define(["./core.min", "./evpkdf.min"], t) : t(e.CryptoJS)
  312. }(this, function(e) {
  313. e.lib.Cipher || function(t) {
  314. var r = e
  315. , i = r.lib
  316. , n = i.Base
  317. , c = i.WordArray
  318. , o = i.BufferedBlockAlgorithm
  319. , s = r.enc
  320. , a = (s.Utf8,
  321. s.Base64)
  322. , f = r.algo
  323. , p = f.EvpKDF
  324. , d = i.Cipher = o.extend({
  325. cfg: n.extend(),
  326. createEncryptor: function(e, t) {
  327. return this.create(this._ENC_XFORM_MODE, e, t)
  328. },
  329. createDecryptor: function(e, t) {
  330. return this.create(this._DEC_XFORM_MODE, e, t)
  331. },
  332. init: function(e, t, r) {
  333. this.cfg = this.cfg.extend(r),
  334. this._xformMode = e,
  335. this._key = t,
  336. this.reset()
  337. },
  338. reset: function() {
  339. o.reset.call(this),
  340. this._doReset()
  341. },
  342. process: function(e) {
  343. return this._append(e),
  344. this._process()
  345. },
  346. finalize: function(e) {
  347. e && this._append(e);
  348. var t = this._doFinalize();
  349. return t
  350. },
  351. keySize: 4,
  352. ivSize: 4,
  353. _ENC_XFORM_MODE: 1,
  354. _DEC_XFORM_MODE: 2,
  355. _createHelper: function() {
  356. function e(e) {
  357. return "string" == typeof e ? B : x
  358. }
  359. return function(t) {
  360. return {
  361. encrypt: function(r, i, n) {
  362. return e(i).encrypt(t, r, i, n)
  363. },
  364. decrypt: function(r, i, n) {
  365. return e(i).decrypt(t, r, i, n)
  366. }
  367. }
  368. }
  369. }()
  370. })
  371. , h = (i.StreamCipher = d.extend({
  372. _doFinalize: function() {
  373. var e = this._process(!0);
  374. return e
  375. },
  376. blockSize: 1
  377. }),
  378. r.mode = {})
  379. , u = i.BlockCipherMode = n.extend({
  380. createEncryptor: function(e, t) {
  381. return this.Encryptor.create(e, t)
  382. },
  383. createDecryptor: function(e, t) {
  384. return this.Decryptor.create(e, t)
  385. },
  386. init: function(e, t) {
  387. this._cipher = e,
  388. this._iv = t
  389. }
  390. })
  391. , l = h.CBC = function() {
  392. function e(e, r, i) {
  393. var n = this._iv;
  394. if (n) {
  395. var c = n;
  396. this._iv = t
  397. } else
  398. var c = this._prevBlock;
  399. for (var o = 0; o < i; o++)
  400. e[r + o] ^= c[o]
  401. }
  402. var r = u.extend();
  403. return r.Encryptor = r.extend({
  404. processBlock: function(t, r) {
  405. var i = this._cipher
  406. , n = i.blockSize;
  407. e.call(this, t, r, n),
  408. i.encryptBlock(t, r),
  409. this._prevBlock = t.slice(r, r + n)
  410. }
  411. }),
  412. r.Decryptor = r.extend({
  413. processBlock: function(t, r) {
  414. var i = this._cipher
  415. , n = i.blockSize
  416. , c = t.slice(r, r + n);
  417. i.decryptBlock(t, r),
  418. e.call(this, t, r, n),
  419. this._prevBlock = c
  420. }
  421. }),
  422. r
  423. }()
  424. , _ = r.pad = {}
  425. , v = _.Pkcs7 = {
  426. pad: function(e, t) {
  427. for (var r = 4 * t, i = r - e.sigBytes % r, n = i << 24 | i << 16 | i << 8 | i, o = [], s = 0; s < i; s += 4)
  428. o.push(n);
  429. var a = c.create(o, i);
  430. e.concat(a)
  431. },
  432. unpad: function(e) {
  433. var t = 255 & e.words[e.sigBytes - 1 >>> 2];
  434. e.sigBytes -= t
  435. }
  436. }
  437. , y = (i.BlockCipher = d.extend({
  438. cfg: d.cfg.extend({
  439. mode: l,
  440. padding: v
  441. }),
  442. reset: function() {
  443. d.reset.call(this);
  444. var e = this.cfg
  445. , t = e.iv
  446. , r = e.mode;
  447. if (this._xformMode == this._ENC_XFORM_MODE)
  448. var i = r.createEncryptor;
  449. else {
  450. var i = r.createDecryptor;
  451. this._minBufferSize = 1
  452. }
  453. this._mode && this._mode.__creator == i ? this._mode.init(this, t && t.words) : (this._mode = i.call(r, this, t && t.words),
  454. this._mode.__creator = i)
  455. },
  456. _doProcessBlock: function(e, t) {
  457. this._mode.processBlock(e, t)
  458. },
  459. _doFinalize: function() {
  460. var e = this.cfg.padding;
  461. if (this._xformMode == this._ENC_XFORM_MODE) {
  462. e.pad(this._data, this.blockSize);
  463. var t = this._process(!0)
  464. } else {
  465. var t = this._process(!0);
  466. e.unpad(t)
  467. }
  468. return t
  469. },
  470. blockSize: 4
  471. }),
  472. i.CipherParams = n.extend({
  473. init: function(e) {
  474. this.mixIn(e)
  475. },
  476. toString: function(e) {
  477. return (e || this.formatter).stringify(this)
  478. }
  479. }))
  480. , m = r.format = {}
  481. , k = m.OpenSSL = {
  482. stringify: function(e) {
  483. var t = e.ciphertext
  484. , r = e.salt;
  485. if (r)
  486. var i = c.create([1398893684, 1701076831]).concat(r).concat(t);
  487. else
  488. var i = t;
  489. return i.toString(a)
  490. },
  491. parse: function(e) {
  492. var t = a.parse(e)
  493. , r = t.words;
  494. if (1398893684 == r[0] && 1701076831 == r[1]) {
  495. var i = c.create(r.slice(2, 4));
  496. r.splice(0, 4),
  497. t.sigBytes -= 16
  498. }
  499. return y.create({
  500. ciphertext: t,
  501. salt: i
  502. })
  503. }
  504. }
  505. , x = i.SerializableCipher = n.extend({
  506. cfg: n.extend({
  507. format: k
  508. }),
  509. encrypt: function(e, t, r, i) {
  510. i = this.cfg.extend(i);
  511. var n = e.createEncryptor(r, i)
  512. , c = n.finalize(t)
  513. , o = n.cfg;
  514. return y.create({
  515. ciphertext: c,
  516. key: r,
  517. iv: o.iv,
  518. algorithm: e,
  519. mode: o.mode,
  520. padding: o.padding,
  521. blockSize: e.blockSize,
  522. formatter: i.format
  523. })
  524. },
  525. decrypt: function(e, t, r, i) {
  526. i = this.cfg.extend(i),
  527. t = this._parse(t, i.format);
  528. var n = e.createDecryptor(r, i).finalize(t.ciphertext);
  529. return n
  530. },
  531. _parse: function(e, t) {
  532. return "string" == typeof e ? t.parse(e, this) : e
  533. }
  534. })
  535. , g = r.kdf = {}
  536. , S = g.OpenSSL = {
  537. execute: function(e, t, r, i) {
  538. i || (i = c.random(8));
  539. var n = p.create({
  540. keySize: t + r
  541. }).compute(e, i)
  542. , o = c.create(n.words.slice(t), 4 * r);
  543. return n.sigBytes = 4 * t,
  544. y.create({
  545. key: n,
  546. iv: o,
  547. salt: i
  548. })
  549. }
  550. }
  551. , B = i.PasswordBasedCipher = x.extend({
  552. cfg: x.cfg.extend({
  553. kdf: S
  554. }),
  555. encrypt: function(e, t, r, i) {
  556. i = this.cfg.extend(i);
  557. var n = i.kdf.execute(r, e.keySize, e.ivSize);
  558. i.iv = n.iv;
  559. var c = x.encrypt.call(this, e, t, n.key, i);
  560. return c.mixIn(n),
  561. c
  562. },
  563. decrypt: function(e, t, r, i) {
  564. i = this.cfg.extend(i),
  565. t = this._parse(t, i.format);
  566. var n = i.kdf.execute(r, e.keySize, e.ivSize, t.salt);
  567. i.iv = n.iv;
  568. var c = x.decrypt.call(this, e, t, n.key, i);
  569. return c
  570. }
  571. })
  572. }()
  573. });
  574. !function(e, i) {
  575. "object" == typeof exports ? module.exports = exports = i(require("./core.min")) : "function" == typeof define && define.amd ? define(["./core.min"], i) : i(e.CryptoJS)
  576. }(this, function(e) {
  577. !function() {
  578. var i = e
  579. , t = i.lib
  580. , n = t.Base
  581. , s = i.enc
  582. , r = s.Utf8
  583. , o = i.algo;
  584. o.HMAC = n.extend({
  585. init: function(e, i) {
  586. e = this._hasher = new e.init,
  587. "string" == typeof i && (i = r.parse(i));
  588. var t = e.blockSize
  589. , n = 4 * t;
  590. i.sigBytes > n && (i = e.finalize(i)),
  591. i.clamp();
  592. for (var s = this._oKey = i.clone(), o = this._iKey = i.clone(), a = s.words, f = o.words, c = 0; c < t; c++)
  593. a[c] ^= 1549556828,
  594. f[c] ^= 909522486;
  595. s.sigBytes = o.sigBytes = n,
  596. this.reset()
  597. },
  598. reset: function() {
  599. var e = this._hasher;
  600. e.reset(),
  601. e.update(this._iKey)
  602. },
  603. update: function(e) {
  604. return this._hasher.update(e),
  605. this
  606. },
  607. finalize: function(e) {
  608. var i = this._hasher
  609. , t = i.finalize(e);
  610. i.reset();
  611. var n = i.finalize(this._oKey.clone().concat(t));
  612. return n
  613. }
  614. })
  615. }()
  616. });
  617. !function(e, o, r) {
  618. "object" == typeof exports ? module.exports = exports = o(require("./core.min"), require("./cipher-core.min")) : "function" == typeof define && define.amd ? define(["./core.min", "./cipher-core.min"], o) : o(e.CryptoJS)
  619. }(this, function(e) {
  620. return e.mode.ECB = function() {
  621. var o = e.lib.BlockCipherMode.extend();
  622. return o.Encryptor = o.extend({
  623. processBlock: function(e, o) {
  624. this._cipher.encryptBlock(e, o)
  625. }
  626. }),
  627. o.Decryptor = o.extend({
  628. processBlock: function(e, o) {
  629. this._cipher.decryptBlock(e, o)
  630. }
  631. }),
  632. o
  633. }(),
  634. e.mode.ECB
  635. });
  636. !function(e, r, i) {
  637. "object" == typeof exports ? module.exports = exports = r(require("./core.min"), require("./cipher-core.min")) : "function" == typeof define && define.amd ? define(["./core.min", "./cipher-core.min"], r) : r(e.CryptoJS)
  638. }(this, function(e) {
  639. return e.pad.Pkcs7
  640. });
  641. !function(e, r, i) {
  642. "object" == typeof exports ? module.exports = exports = r(require("./core.min"), require("./enc-base64.min"), require("./md5.min"), require("./evpkdf.min"), require("./cipher-core.min")) : "function" == typeof define && define.amd ? define(["./core.min", "./enc-base64.min", "./md5.min", "./evpkdf.min", "./cipher-core.min"], r) : r(e.CryptoJS)
  643. }(this, function(e) {
  644. return function() {
  645. var r = e
  646. , i = r.lib
  647. , n = i.BlockCipher
  648. , o = r.algo
  649. , t = []
  650. , c = []
  651. , s = []
  652. , f = []
  653. , a = []
  654. , d = []
  655. , u = []
  656. , v = []
  657. , h = []
  658. , y = [];
  659. !function() {
  660. for (var e = [], r = 0; r < 256; r++)
  661. r < 128 ? e[r] = r << 1 : e[r] = r << 1 ^ 283;
  662. for (var i = 0, n = 0, r = 0; r < 256; r++) {
  663. var o = n ^ n << 1 ^ n << 2 ^ n << 3 ^ n << 4;
  664. o = o >>> 8 ^ 255 & o ^ 99,
  665. t[i] = o,
  666. c[o] = i;
  667. var p = e[i]
  668. , l = e[p]
  669. , _ = e[l]
  670. , k = 257 * e[o] ^ 16843008 * o;
  671. s[i] = k << 24 | k >>> 8,
  672. f[i] = k << 16 | k >>> 16,
  673. a[i] = k << 8 | k >>> 24,
  674. d[i] = k;
  675. var k = 16843009 * _ ^ 65537 * l ^ 257 * p ^ 16843008 * i;
  676. u[o] = k << 24 | k >>> 8,
  677. v[o] = k << 16 | k >>> 16,
  678. h[o] = k << 8 | k >>> 24,
  679. y[o] = k,
  680. i ? (i = p ^ e[e[e[_ ^ p]]],
  681. n ^= e[e[n]]) : i = n = 1
  682. }
  683. }();
  684. var p = [0, 1, 2, 4, 8, 16, 32, 64, 128, 27, 54]
  685. , l = o.AES = n.extend({
  686. _doReset: function() {
  687. if (!this._nRounds || this._keyPriorReset !== this._key) {
  688. for (var e = this._keyPriorReset = this._key, r = e.words, i = e.sigBytes / 4, n = this._nRounds = i + 6, o = 4 * (n + 1), c = this._keySchedule = [], s = 0; s < o; s++)
  689. if (s < i)
  690. c[s] = r[s];
  691. else {
  692. var f = c[s - 1];
  693. s % i ? i > 6 && s % i == 4 && (f = t[f >>> 24] << 24 | t[f >>> 16 & 255] << 16 | t[f >>> 8 & 255] << 8 | t[255 & f]) : (f = f << 8 | f >>> 24,
  694. f = t[f >>> 24] << 24 | t[f >>> 16 & 255] << 16 | t[f >>> 8 & 255] << 8 | t[255 & f],
  695. f ^= p[s / i | 0] << 24),
  696. c[s] = c[s - i] ^ f
  697. }
  698. for (var a = this._invKeySchedule = [], d = 0; d < o; d++) {
  699. var s = o - d;
  700. if (d % 4)
  701. var f = c[s];
  702. else
  703. var f = c[s - 4];
  704. d < 4 || s <= 4 ? a[d] = f : a[d] = u[t[f >>> 24]] ^ v[t[f >>> 16 & 255]] ^ h[t[f >>> 8 & 255]] ^ y[t[255 & f]]
  705. }
  706. }
  707. },
  708. encryptBlock: function(e, r) {
  709. this._doCryptBlock(e, r, this._keySchedule, s, f, a, d, t)
  710. },
  711. decryptBlock: function(e, r) {
  712. var i = e[r + 1];
  713. e[r + 1] = e[r + 3],
  714. e[r + 3] = i,
  715. this._doCryptBlock(e, r, this._invKeySchedule, u, v, h, y, c);
  716. var i = e[r + 1];
  717. e[r + 1] = e[r + 3],
  718. e[r + 3] = i
  719. },
  720. _doCryptBlock: function(e, r, i, n, o, t, c, s) {
  721. for (var f = this._nRounds, a = e[r] ^ i[0], d = e[r + 1] ^ i[1], u = e[r + 2] ^ i[2], v = e[r + 3] ^ i[3], h = 4, y = 1; y < f; y++) {
  722. var p = n[a >>> 24] ^ o[d >>> 16 & 255] ^ t[u >>> 8 & 255] ^ c[255 & v] ^ i[h++]
  723. , l = n[d >>> 24] ^ o[u >>> 16 & 255] ^ t[v >>> 8 & 255] ^ c[255 & a] ^ i[h++]
  724. , _ = n[u >>> 24] ^ o[v >>> 16 & 255] ^ t[a >>> 8 & 255] ^ c[255 & d] ^ i[h++]
  725. , k = n[v >>> 24] ^ o[a >>> 16 & 255] ^ t[d >>> 8 & 255] ^ c[255 & u] ^ i[h++];
  726. a = p,
  727. d = l,
  728. u = _,
  729. v = k
  730. }
  731. var p = (s[a >>> 24] << 24 | s[d >>> 16 & 255] << 16 | s[u >>> 8 & 255] << 8 | s[255 & v]) ^ i[h++]
  732. , l = (s[d >>> 24] << 24 | s[u >>> 16 & 255] << 16 | s[v >>> 8 & 255] << 8 | s[255 & a]) ^ i[h++]
  733. , _ = (s[u >>> 24] << 24 | s[v >>> 16 & 255] << 16 | s[a >>> 8 & 255] << 8 | s[255 & d]) ^ i[h++]
  734. , k = (s[v >>> 24] << 24 | s[a >>> 16 & 255] << 16 | s[d >>> 8 & 255] << 8 | s[255 & u]) ^ i[h++];
  735. e[r] = p,
  736. e[r + 1] = l,
  737. e[r + 2] = _,
  738. e[r + 3] = k
  739. },
  740. keySize: 8
  741. });
  742. r.AES = n._createHelper(l)
  743. }(),
  744. e.AES
  745. });
  746. !function(e, n) {
  747. "object" == typeof exports ? module.exports = exports = n(require("./core.min")) : "function" == typeof define && define.amd ? define(["./core.min"], n) : n(e.CryptoJS)
  748. }(this, function(e) {
  749. return e.enc.Utf8
  750. });