@fileverse-dev/dsheet 2.0.36-rtc-8 → 2.0.36-shortcut

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (43) hide show
  1. package/dist/{constants-yStXQJiK.js → constants-CnhOvijG.js} +14 -35
  2. package/dist/constants.d.ts +0 -4
  3. package/dist/constants.js +3 -6
  4. package/dist/editor/contexts/editor-context.d.ts +5 -15
  5. package/dist/editor/dsheet-editor.d.ts +1 -1
  6. package/dist/editor/hooks/use-editor-collaboration.d.ts +9 -0
  7. package/dist/editor/hooks/use-editor-data.d.ts +1 -2
  8. package/dist/editor/hooks/use-editor-sync.d.ts +6 -9
  9. package/dist/editor/types.d.ts +2 -2
  10. package/dist/editor/utils/after-update-cell.d.ts +0 -12
  11. package/dist/editor/utils/formula-ui-sync.d.ts +1 -3
  12. package/dist/{executeStringFunction-F9mb-SpN.js → executeStringFunction-6r6Tl4Z6.js} +4593 -4546
  13. package/dist/formula.js +1 -1
  14. package/dist/index-CYIKZDtd.js +40340 -0
  15. package/dist/index.d.ts +0 -2
  16. package/dist/index.es.js +35 -36
  17. package/dist/sheet-engine/core/api/cell.d.ts +0 -21
  18. package/dist/sheet-engine/core/events/shortcuts-v2.d.ts +7 -0
  19. package/dist/sheet-engine/core/index.d.ts +1 -1
  20. package/dist/sheet-engine/core/modules/filter.d.ts +0 -13
  21. package/dist/sheet-engine/core/modules/index.d.ts +1 -1
  22. package/dist/sheet-engine/core/modules/selection.d.ts +7 -0
  23. package/dist/sheet-engine/core/settings.d.ts +0 -3
  24. package/dist/sheet-engine/core/types.d.ts +0 -1
  25. package/dist/sheet-engine/react/components/Workbook/api.d.ts +0 -23
  26. package/dist/sheet-engine/react/components/Workbook/index.d.ts +0 -15
  27. package/dist/style.css +1 -1
  28. package/dist/{use-xlsx-import-impl-Cu-q8lC5.js → use-xlsx-import-impl-DczoKg4D.js} +2 -2
  29. package/dist/{xlsx-export-impl-CRw27cg1.js → xlsx-export-impl-BLKOiPKJ.js} +295 -293
  30. package/package.json +11 -14
  31. package/dist/editor/components/collab-status-chip.d.ts +0 -8
  32. package/dist/editor/hooks/use-collab-awareness.d.ts +0 -17
  33. package/dist/editor/utils/remote-apply-guard.d.ts +0 -19
  34. package/dist/index-CpskXdSI.js +0 -51878
  35. package/dist/sync-local/SyncManager.d.ts +0 -67
  36. package/dist/sync-local/collabStateMachine.d.ts +0 -23
  37. package/dist/sync-local/crypto/index.d.ts +0 -6
  38. package/dist/sync-local/index.d.ts +0 -3
  39. package/dist/sync-local/socketClient.d.ts +0 -68
  40. package/dist/sync-local/types/index.d.ts +0 -211
  41. package/dist/sync-local/useSyncManager.d.ts +0 -12
  42. package/dist/sync-local/utils/createAwarenessUpdateHandler.d.ts +0 -8
  43. package/dist/sync-local/utils/objectToFile.d.ts +0 -1
@@ -2,8 +2,7 @@ import { utils as dt, write as Nt } from "xlsx-js-style";
2
2
  import { Workbook as Pt } from "exceljs";
3
3
  import { toast as Ut } from "@fileverse/ui";
4
4
  import { addFortuneImagesToWorksheet as Lt } from "./xlsx-image-utils-Cvg0qxRA.js";
5
- import { g as jt, c as xt } from "./executeStringFunction-F9mb-SpN.js";
6
- import { c as Ct } from "./index-CpskXdSI.js";
5
+ import { g as jt, c as xt } from "./executeStringFunction-6r6Tl4Z6.js";
7
6
  import { c as zt, g as Wt } from "./xlsx-hyperlink-inline-DzewAypN.js";
8
7
  const Mt = {
9
8
  1: "thin",
@@ -19,33 +18,33 @@ const Mt = {
19
18
  11: "mediumDashDotDot",
20
19
  12: "slantDashDot",
21
20
  13: "thick"
22
- }, Zt = (j) => {
23
- if (typeof j != "string") return "000000";
24
- const q = j.replace("#", "").toUpperCase();
25
- return q.length === 3 ? q.replace(/(.)/g, "$1$1") : q.length === 6 ? q : "000000";
26
- }, vt = (j, q) => {
27
- const s = Number(j);
21
+ }, Zt = (L) => {
22
+ if (typeof L != "string") return "000000";
23
+ const K = L.replace("#", "").toUpperCase();
24
+ return K.length === 3 ? K.replace(/(.)/g, "$1$1") : K.length === 6 ? K : "000000";
25
+ }, vt = (L, K) => {
26
+ const s = Number(L);
28
27
  if (s)
29
28
  return {
30
29
  style: Mt[s] ?? "thin",
31
- color: { rgb: Zt(q) }
30
+ color: { rgb: Zt(K) }
32
31
  };
33
- }, _t = (j, q, s, C, c) => {
32
+ }, _t = (L, K, s, C, c) => {
34
33
  if (!c || !C.l && !C.r && !C.t && !C.b) return;
35
- const o = dt.encode_cell({ r: q, c: s }), a = {
36
- ...j[o] || { t: "z" }
34
+ const o = dt.encode_cell({ r: K, c: s }), a = {
35
+ ...L[o] || { t: "z" }
37
36
  }, r = { ...a.s || {} }, l = { ...r.border || {} };
38
- C.l && (l.left = c), C.r && (l.right = c), C.t && (l.top = c), C.b && (l.bottom = c), r.border = l, a.s = r, j[o] = a;
39
- }, $t = (j, q) => {
40
- q.forEach((s) => {
37
+ C.l && (l.left = c), C.r && (l.right = c), C.t && (l.top = c), C.b && (l.bottom = c), r.border = l, a.s = r, L[o] = a;
38
+ }, $t = (L, K) => {
39
+ K.forEach((s) => {
41
40
  if (s.rangeType === "cell") {
42
41
  if (!s.value) return;
43
42
  const { row_index: C, col_index: c } = s.value;
44
43
  if (C == null || c == null) return;
45
44
  const o = s.value, a = dt.encode_cell({ r: C, c }), r = {
46
- ...j[a] || { t: "z" }
45
+ ...L[a] || { t: "z" }
47
46
  }, l = { ...r.s || {} }, d = { ...l.border || {} };
48
- o.l && (d.left = vt(o.l.style, o.l.color)), o.r && (d.right = vt(o.r.style, o.r.color)), o.t && (d.top = vt(o.t.style, o.t.color)), o.b && (d.bottom = vt(o.b.style, o.b.color)), l.border = d, r.s = l, j[a] = r;
47
+ o.l && (d.left = vt(o.l.style, o.l.color)), o.r && (d.right = vt(o.r.style, o.r.color)), o.t && (d.top = vt(o.t.style, o.t.color)), o.b && (d.bottom = vt(o.b.style, o.b.color)), l.border = d, r.s = l, L[a] = r;
49
48
  } else if (s.rangeType === "range") {
50
49
  const { borderType: C, style: c, color: o, range: a } = s;
51
50
  if (C === "border-none" || !Array.isArray(a) || !c)
@@ -59,7 +58,7 @@ const Mt = {
59
58
  switch (C) {
60
59
  case "border-all":
61
60
  _t(
62
- j,
61
+ L,
63
62
  n,
64
63
  p,
65
64
  { l: !0, r: !0, t: !0, b: !0 },
@@ -68,7 +67,7 @@ const Mt = {
68
67
  break;
69
68
  case "border-outside":
70
69
  _t(
71
- j,
70
+ L,
72
71
  n,
73
72
  p,
74
73
  { l: p === g, r: p === y, t: n === d, b: n === v },
@@ -77,7 +76,7 @@ const Mt = {
77
76
  break;
78
77
  case "border-inside":
79
78
  _t(
80
- j,
79
+ L,
81
80
  n,
82
81
  p,
83
82
  { r: p < y, b: n < v },
@@ -85,64 +84,64 @@ const Mt = {
85
84
  );
86
85
  break;
87
86
  case "border-horizontal":
88
- _t(j, n, p, { b: n < v }, r);
87
+ _t(L, n, p, { b: n < v }, r);
89
88
  break;
90
89
  case "border-vertical":
91
- _t(j, n, p, { r: p < y }, r);
90
+ _t(L, n, p, { r: p < y }, r);
92
91
  break;
93
92
  case "border-left":
94
- p === g && _t(j, n, p, { l: !0 }, r);
93
+ p === g && _t(L, n, p, { l: !0 }, r);
95
94
  break;
96
95
  case "border-right":
97
- p === y && _t(j, n, p, { r: !0 }, r);
96
+ p === y && _t(L, n, p, { r: !0 }, r);
98
97
  break;
99
98
  case "border-top":
100
- n === d && _t(j, n, p, { t: !0 }, r);
99
+ n === d && _t(L, n, p, { t: !0 }, r);
101
100
  break;
102
101
  case "border-bottom":
103
- n === v && _t(j, n, p, { b: !0 }, r);
102
+ n === v && _t(L, n, p, { b: !0 }, r);
104
103
  break;
105
104
  }
106
105
  });
107
106
  }
108
107
  });
109
108
  };
110
- function Et(j) {
111
- if (!j || typeof j != "string") return null;
112
- const q = j.trim();
113
- if (q.startsWith("#")) {
114
- const C = q.replace("#", "").toUpperCase();
109
+ function Et(L) {
110
+ if (!L || typeof L != "string") return null;
111
+ const K = L.trim();
112
+ if (K.startsWith("#")) {
113
+ const C = K.replace("#", "").toUpperCase();
115
114
  return C.length === 3 ? "FF" + C.split("").map((c) => c + c).join("") : C.length === 6 ? "FF" + C : null;
116
115
  }
117
- const s = q.match(/rgba?\s*\(\s*([\d.]+)[,\s]+([\d.]+)[,\s]+([\d.]+)/i);
116
+ const s = K.match(/rgba?\s*\(\s*([\d.]+)[,\s]+([\d.]+)[,\s]+([\d.]+)/i);
118
117
  if (s) {
119
118
  const C = (c) => Math.min(255, Math.max(0, Math.round(c))).toString(16).padStart(2, "0").toUpperCase();
120
119
  return "FF" + C(parseFloat(s[1])) + C(parseFloat(s[2])) + C(parseFloat(s[3]));
121
120
  }
122
121
  return null;
123
122
  }
124
- function Ht(j) {
125
- const q = {}, s = {};
126
- if (j.textColor && j.textColor.toLowerCase() !== "#000000") {
127
- const c = Et(j.textColor);
123
+ function Ht(L) {
124
+ const K = {}, s = {};
125
+ if (L.textColor && L.textColor.toLowerCase() !== "#000000") {
126
+ const c = Et(L.textColor);
128
127
  c && (s.color = { argb: c });
129
128
  }
130
- j.bold && (s.bold = !0), j.italic && (s.italic = !0), j.underline && (s.underline = !0), j.strikethrough && (s.strike = !0), Object.keys(s).length > 0 && (q.font = s);
131
- const C = j.cellColor;
129
+ L.bold && (s.bold = !0), L.italic && (s.italic = !0), L.underline && (s.underline = !0), L.strikethrough && (s.strike = !0), Object.keys(s).length > 0 && (K.font = s);
130
+ const C = L.cellColor;
132
131
  if (C && C.toLowerCase() !== "#ffffff") {
133
132
  const c = Et(C);
134
- c && (q.fill = { type: "pattern", pattern: "solid", fgColor: { argb: c } });
133
+ c && (K.fill = { type: "pattern", pattern: "solid", fgColor: { argb: c } });
135
134
  }
136
- return q;
135
+ return K;
137
136
  }
138
- function Vt(j) {
139
- return !Array.isArray(j) || j.length === 0 ? "" : j.map((s) => {
137
+ function Vt(L) {
138
+ return !Array.isArray(L) || L.length === 0 ? "" : L.map((s) => {
140
139
  const [C, c] = s.row, [o, a] = s.column, r = dt.encode_cell({ r: C, c: o }), l = dt.encode_cell({ r: c, c: a });
141
140
  return r === l ? r : `${r}:${l}`;
142
141
  }).filter(Boolean).join(" ");
143
142
  }
144
- function Gt(j, q, s) {
145
- const { conditionName: C, conditionValue: c = [], format: o = {} } = j, a = Ht(o), r = (d) => d.replace(/"/g, '""'), l = q.split(/[\s:]/)[0];
143
+ function Gt(L, K, s) {
144
+ const { conditionName: C, conditionValue: c = [], format: o = {} } = L, a = Ht(o), r = (d) => d.replace(/"/g, '""'), l = K.split(/[\s:]/)[0];
146
145
  switch (C) {
147
146
  case "greaterThan":
148
147
  case "greaterThanOrEqual":
@@ -388,9 +387,9 @@ function Gt(j, q, s) {
388
387
  return null;
389
388
  }
390
389
  }
391
- function Yt(j, q, s) {
390
+ function qt(L, K, s) {
392
391
  var a;
393
- const C = q.luckysheet_conditionformat_save, c = [];
392
+ const C = K.luckysheet_conditionformat_save, c = [];
394
393
  if (!Array.isArray(C) || C.length === 0)
395
394
  return { nextPriority: s, pendingDuplicateValues: c };
396
395
  let o = s;
@@ -409,10 +408,13 @@ function Yt(j, q, s) {
409
408
  continue;
410
409
  }
411
410
  const d = Gt(r, l, o);
412
- d && (j.addConditionalFormatting({ ref: l, rules: [d] }), o++);
411
+ d && (L.addConditionalFormatting({ ref: l, rules: [d] }), o++);
413
412
  }
414
413
  return { nextPriority: o, pendingDuplicateValues: c };
415
414
  }
415
+ function Ct(L) {
416
+ throw new Error('Could not dynamically require "' + L + '". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.');
417
+ }
416
418
  var Ot = { exports: {} };
417
419
  /*!
418
420
 
@@ -425,9 +427,9 @@ Dual licenced under the MIT license or GPLv3. See https://raw.github.com/Stuk/js
425
427
  JSZip uses the library pako released under the MIT license :
426
428
  https://github.com/nodeca/pako/blob/main/LICENSE
427
429
  */
428
- (function(j, q) {
430
+ (function(L, K) {
429
431
  (function(s) {
430
- j.exports = s();
432
+ L.exports = s();
431
433
  })(function() {
432
434
  return function s(C, c, o) {
433
435
  function a(d, v) {
@@ -540,8 +542,8 @@ https://github.com/nodeca/pako/blob/main/LICENSE
540
542
  return h;
541
543
  }
542
544
  function a(n, p, i, h, u, _) {
543
- var k, A, S = n.file, L = n.compression, O = _ !== d.utf8encode, D = r.transformTo("string", _(S.name)), I = r.transformTo("string", d.utf8encode(S.name)), H = S.comment, Y = r.transformTo("string", _(H)), b = r.transformTo("string", d.utf8encode(H)), R = I.length !== S.name.length, e = b.length !== H.length, F = "", Q = "", M = "", et = S.dir, U = S.date, K = { crc32: 0, compressedSize: 0, uncompressedSize: 0 };
544
- p && !i || (K.crc32 = n.crc32, K.compressedSize = n.compressedSize, K.uncompressedSize = n.uncompressedSize);
545
+ var k, A, S = n.file, j = n.compression, O = _ !== d.utf8encode, D = r.transformTo("string", _(S.name)), I = r.transformTo("string", d.utf8encode(S.name)), H = S.comment, q = r.transformTo("string", _(H)), b = r.transformTo("string", d.utf8encode(H)), R = I.length !== S.name.length, e = b.length !== H.length, F = "", Q = "", M = "", et = S.dir, U = S.date, Y = { crc32: 0, compressedSize: 0, uncompressedSize: 0 };
546
+ p && !i || (Y.crc32 = n.crc32, Y.compressedSize = n.compressedSize, Y.uncompressedSize = n.uncompressedSize);
545
547
  var E = 0;
546
548
  p && (E |= 8), O || !R && !e || (E |= 2048);
547
549
  var w = 0, N = 0;
@@ -550,10 +552,10 @@ https://github.com/nodeca/pako/blob/main/LICENSE
550
552
  return B || (rt = it ? 16893 : 33204), (65535 & rt) << 16;
551
553
  }(S.unixPermissions, et)) : (N = 20, w |= function(B) {
552
554
  return 63 & (B || 0);
553
- }(S.dosPermissions)), k = U.getUTCHours(), k <<= 6, k |= U.getUTCMinutes(), k <<= 5, k |= U.getUTCSeconds() / 2, A = U.getUTCFullYear() - 1980, A <<= 4, A |= U.getUTCMonth() + 1, A <<= 5, A |= U.getUTCDate(), R && (Q = o(1, 1) + o(v(D), 4) + I, F += "up" + o(Q.length, 2) + Q), e && (M = o(1, 1) + o(v(Y), 4) + b, F += "uc" + o(M.length, 2) + M);
555
+ }(S.dosPermissions)), k = U.getUTCHours(), k <<= 6, k |= U.getUTCMinutes(), k <<= 5, k |= U.getUTCSeconds() / 2, A = U.getUTCFullYear() - 1980, A <<= 4, A |= U.getUTCMonth() + 1, A <<= 5, A |= U.getUTCDate(), R && (Q = o(1, 1) + o(v(D), 4) + I, F += "up" + o(Q.length, 2) + Q), e && (M = o(1, 1) + o(v(q), 4) + b, F += "uc" + o(M.length, 2) + M);
554
556
  var $ = "";
555
557
  return $ += `
556
- \0`, $ += o(E, 2), $ += L.magic, $ += o(k, 2), $ += o(A, 2), $ += o(K.crc32, 4), $ += o(K.compressedSize, 4), $ += o(K.uncompressedSize, 4), $ += o(D.length, 2), $ += o(F.length, 2), { fileRecord: g.LOCAL_FILE_HEADER + $ + D + F, dirRecord: g.CENTRAL_FILE_HEADER + o(N, 2) + $ + o(Y.length, 2) + "\0\0\0\0" + o(w, 4) + o(h, 4) + D + F + Y };
558
+ \0`, $ += o(E, 2), $ += j.magic, $ += o(k, 2), $ += o(A, 2), $ += o(Y.crc32, 4), $ += o(Y.compressedSize, 4), $ += o(Y.uncompressedSize, 4), $ += o(D.length, 2), $ += o(F.length, 2), { fileRecord: g.LOCAL_FILE_HEADER + $ + D + F, dirRecord: g.CENTRAL_FILE_HEADER + o(N, 2) + $ + o(q.length, 2) + "\0\0\0\0" + o(w, 4) + o(h, 4) + D + F + q };
557
559
  }
558
560
  var r = s("../utils"), l = s("../stream/GenericWorker"), d = s("../utf8"), v = s("../crc32"), g = s("../signature");
559
561
  function y(n, p, i, h) {
@@ -580,8 +582,8 @@ https://github.com/nodeca/pako/blob/main/LICENSE
580
582
  }, y.prototype.flush = function() {
581
583
  for (var n = this.bytesWritten, p = 0; p < this.dirRecords.length; p++) this.push({ data: this.dirRecords[p], meta: { percent: 100 } });
582
584
  var i = this.bytesWritten - n, h = function(u, _, k, A, S) {
583
- var L = r.transformTo("string", S(A));
584
- return g.CENTRAL_DIRECTORY_END + "\0\0\0\0" + o(u, 2) + o(u, 2) + o(_, 4) + o(k, 4) + o(L.length, 2) + L;
585
+ var j = r.transformTo("string", S(A));
586
+ return g.CENTRAL_DIRECTORY_END + "\0\0\0\0" + o(u, 2) + o(u, 2) + o(_, 4) + o(k, 4) + o(j.length, 2) + j;
585
587
  }(this.dirRecords.length, i, n, this.zipComment, this.encodeFileName);
586
588
  this.push({ data: h, meta: { percent: 100 } });
587
589
  }, y.prototype.prepareNextSource = function() {
@@ -721,24 +723,24 @@ https://github.com/nodeca/pako/blob/main/LICENSE
721
723
  return o && typeof o.on == "function" && typeof o.pause == "function" && typeof o.resume == "function";
722
724
  } };
723
725
  }, {}], 15: [function(s, C, c) {
724
- function o(S, L, O) {
725
- var D, I = r.getTypeOf(L), H = r.extend(O || {}, v);
726
+ function o(S, j, O) {
727
+ var D, I = r.getTypeOf(j), H = r.extend(O || {}, v);
726
728
  H.date = H.date || /* @__PURE__ */ new Date(), H.compression !== null && (H.compression = H.compression.toUpperCase()), typeof H.unixPermissions == "string" && (H.unixPermissions = parseInt(H.unixPermissions, 8)), H.unixPermissions && 16384 & H.unixPermissions && (H.dir = !0), H.dosPermissions && 16 & H.dosPermissions && (H.dir = !0), H.dir && (S = u(S)), H.createFolders && (D = h(S)) && _.call(this, D, !0);
727
- var Y = I === "string" && H.binary === !1 && H.base64 === !1;
728
- O && O.binary !== void 0 || (H.binary = !Y), (L instanceof g && L.uncompressedSize === 0 || H.dir || !L || L.length === 0) && (H.base64 = !1, H.binary = !0, L = "", H.compression = "STORE", I = "string");
729
+ var q = I === "string" && H.binary === !1 && H.base64 === !1;
730
+ O && O.binary !== void 0 || (H.binary = !q), (j instanceof g && j.uncompressedSize === 0 || H.dir || !j || j.length === 0) && (H.base64 = !1, H.binary = !0, j = "", H.compression = "STORE", I = "string");
729
731
  var b = null;
730
- b = L instanceof g || L instanceof l ? L : p.isNode && p.isStream(L) ? new i(S, L) : r.prepareContent(S, L, H.binary, H.optimizedBinaryString, H.base64);
732
+ b = j instanceof g || j instanceof l ? j : p.isNode && p.isStream(j) ? new i(S, j) : r.prepareContent(S, j, H.binary, H.optimizedBinaryString, H.base64);
731
733
  var R = new y(S, b, H);
732
734
  this.files[S] = R;
733
735
  }
734
736
  var a = s("./utf8"), r = s("./utils"), l = s("./stream/GenericWorker"), d = s("./stream/StreamHelper"), v = s("./defaults"), g = s("./compressedObject"), y = s("./zipObject"), n = s("./generate"), p = s("./nodejsUtils"), i = s("./nodejs/NodejsStreamInputAdapter"), h = function(S) {
735
737
  S.slice(-1) === "/" && (S = S.substring(0, S.length - 1));
736
- var L = S.lastIndexOf("/");
737
- return 0 < L ? S.substring(0, L) : "";
738
+ var j = S.lastIndexOf("/");
739
+ return 0 < j ? S.substring(0, j) : "";
738
740
  }, u = function(S) {
739
741
  return S.slice(-1) !== "/" && (S += "/"), S;
740
- }, _ = function(S, L) {
741
- return L = L !== void 0 ? L : v.createFolders, S = u(S), this.files[S] || o.call(this, S, null, { dir: !0, createFolders: L }), this.files[S];
742
+ }, _ = function(S, j) {
743
+ return j = j !== void 0 ? j : v.createFolders, S = u(S), this.files[S] || o.call(this, S, null, { dir: !0, createFolders: j }), this.files[S];
742
744
  };
743
745
  function k(S) {
744
746
  return Object.prototype.toString.call(S) === "[object RegExp]";
@@ -746,19 +748,19 @@ https://github.com/nodeca/pako/blob/main/LICENSE
746
748
  var A = { load: function() {
747
749
  throw new Error("This method has been removed in JSZip 3.0, please check the upgrade guide.");
748
750
  }, forEach: function(S) {
749
- var L, O, D;
750
- for (L in this.files) D = this.files[L], (O = L.slice(this.root.length, L.length)) && L.slice(0, this.root.length) === this.root && S(O, D);
751
+ var j, O, D;
752
+ for (j in this.files) D = this.files[j], (O = j.slice(this.root.length, j.length)) && j.slice(0, this.root.length) === this.root && S(O, D);
751
753
  }, filter: function(S) {
752
- var L = [];
754
+ var j = [];
753
755
  return this.forEach(function(O, D) {
754
- S(O, D) && L.push(D);
755
- }), L;
756
- }, file: function(S, L, O) {
757
- if (arguments.length !== 1) return S = this.root + S, o.call(this, S, L, O), this;
756
+ S(O, D) && j.push(D);
757
+ }), j;
758
+ }, file: function(S, j, O) {
759
+ if (arguments.length !== 1) return S = this.root + S, o.call(this, S, j, O), this;
758
760
  if (k(S)) {
759
761
  var D = S;
760
- return this.filter(function(H, Y) {
761
- return !Y.dir && D.test(H);
762
+ return this.filter(function(H, q) {
763
+ return !q.dir && D.test(H);
762
764
  });
763
765
  }
764
766
  var I = this.files[this.root + S];
@@ -768,12 +770,12 @@ https://github.com/nodeca/pako/blob/main/LICENSE
768
770
  if (k(S)) return this.filter(function(I, H) {
769
771
  return H.dir && S.test(I);
770
772
  });
771
- var L = this.root + S, O = _.call(this, L), D = this.clone();
773
+ var j = this.root + S, O = _.call(this, j), D = this.clone();
772
774
  return D.root = O.name, D;
773
775
  }, remove: function(S) {
774
776
  S = this.root + S;
775
- var L = this.files[S];
776
- if (L || (S.slice(-1) !== "/" && (S += "/"), L = this.files[S]), L && !L.dir) delete this.files[S];
777
+ var j = this.files[S];
778
+ if (j || (S.slice(-1) !== "/" && (S += "/"), j = this.files[S]), j && !j.dir) delete this.files[S];
777
779
  else for (var O = this.filter(function(I, H) {
778
780
  return H.name.slice(0, S.length) === S;
779
781
  }), D = 0; D < O.length; D++) delete this.files[O[D].name];
@@ -781,20 +783,20 @@ https://github.com/nodeca/pako/blob/main/LICENSE
781
783
  }, generate: function() {
782
784
  throw new Error("This method has been removed in JSZip 3.0, please check the upgrade guide.");
783
785
  }, generateInternalStream: function(S) {
784
- var L, O = {};
786
+ var j, O = {};
785
787
  try {
786
788
  if ((O = r.extend(S || {}, { streamFiles: !1, compression: "STORE", compressionOptions: null, type: "", platform: "DOS", comment: null, mimeType: "application/zip", encodeFileName: a.utf8encode })).type = O.type.toLowerCase(), O.compression = O.compression.toUpperCase(), O.type === "binarystring" && (O.type = "string"), !O.type) throw new Error("No output type specified.");
787
789
  r.checkSupport(O.type), O.platform !== "darwin" && O.platform !== "freebsd" && O.platform !== "linux" && O.platform !== "sunos" || (O.platform = "UNIX"), O.platform === "win32" && (O.platform = "DOS");
788
790
  var D = O.comment || this.comment || "";
789
- L = n.generateWorker(this, O, D);
791
+ j = n.generateWorker(this, O, D);
790
792
  } catch (I) {
791
- (L = new l("error")).error(I);
793
+ (j = new l("error")).error(I);
792
794
  }
793
- return new d(L, O.type || "string", O.mimeType);
794
- }, generateAsync: function(S, L) {
795
- return this.generateInternalStream(S).accumulate(L);
796
- }, generateNodeStream: function(S, L) {
797
- return (S = S || {}).type || (S.type = "nodebuffer"), this.generateInternalStream(S).toNodejsStream(L);
795
+ return new d(j, O.type || "string", O.mimeType);
796
+ }, generateAsync: function(S, j) {
797
+ return this.generateInternalStream(S).accumulate(j);
798
+ }, generateNodeStream: function(S, j) {
799
+ return (S = S || {}).type || (S.type = "nodebuffer"), this.generateInternalStream(S).toNodejsStream(j);
798
800
  } };
799
801
  C.exports = A;
800
802
  }, { "./compressedObject": 2, "./defaults": 5, "./generate": 9, "./nodejs/NodejsStreamInputAdapter": 12, "./nodejsUtils": 14, "./stream/GenericWorker": 28, "./stream/StreamHelper": 29, "./utf8": 31, "./utils": 32, "./zipObject": 35 }], 16: [function(s, C, c) {
@@ -1016,13 +1018,13 @@ https://github.com/nodeca/pako/blob/main/LICENSE
1016
1018
  function y(p, i) {
1017
1019
  return new v.Promise(function(h, u) {
1018
1020
  var _ = [], k = p._internalType, A = p._outputType, S = p._mimeType;
1019
- p.on("data", function(L, O) {
1020
- _.push(L), i && i(O);
1021
- }).on("error", function(L) {
1022
- _ = [], u(L);
1021
+ p.on("data", function(j, O) {
1022
+ _.push(j), i && i(O);
1023
+ }).on("error", function(j) {
1024
+ _ = [], u(j);
1023
1025
  }).on("end", function() {
1024
1026
  try {
1025
- var L = function(O, D, I) {
1027
+ var j = function(O, D, I) {
1026
1028
  switch (O) {
1027
1029
  case "blob":
1028
1030
  return o.newBlob(o.transformTo("arraybuffer", D), I);
@@ -1032,7 +1034,7 @@ https://github.com/nodeca/pako/blob/main/LICENSE
1032
1034
  return o.transformTo(O, D);
1033
1035
  }
1034
1036
  }(A, function(O, D) {
1035
- var I, H = 0, Y = null, b = 0;
1037
+ var I, H = 0, q = null, b = 0;
1036
1038
  for (I = 0; I < D.length; I++) b += D[I].length;
1037
1039
  switch (O) {
1038
1040
  case "string":
@@ -1040,15 +1042,15 @@ https://github.com/nodeca/pako/blob/main/LICENSE
1040
1042
  case "array":
1041
1043
  return Array.prototype.concat.apply([], D);
1042
1044
  case "uint8array":
1043
- for (Y = new Uint8Array(b), I = 0; I < D.length; I++) Y.set(D[I], H), H += D[I].length;
1044
- return Y;
1045
+ for (q = new Uint8Array(b), I = 0; I < D.length; I++) q.set(D[I], H), H += D[I].length;
1046
+ return q;
1045
1047
  case "nodebuffer":
1046
1048
  return Buffer.concat(D);
1047
1049
  default:
1048
1050
  throw new Error("concat : unsupported type '" + O + "'");
1049
1051
  }
1050
1052
  }(k, _), S);
1051
- h(L);
1053
+ h(j);
1052
1054
  } catch (O) {
1053
1055
  u(O);
1054
1056
  }
@@ -1281,18 +1283,18 @@ https://github.com/nodeca/pako/blob/main/LICENSE
1281
1283
  return u;
1282
1284
  }, c.prepareContent = function(i, h, u, _, k) {
1283
1285
  return l.Promise.resolve(h).then(function(A) {
1284
- return o.blob && (A instanceof Blob || ["[object File]", "[object Blob]"].indexOf(Object.prototype.toString.call(A)) !== -1) && typeof FileReader < "u" ? new l.Promise(function(S, L) {
1286
+ return o.blob && (A instanceof Blob || ["[object File]", "[object Blob]"].indexOf(Object.prototype.toString.call(A)) !== -1) && typeof FileReader < "u" ? new l.Promise(function(S, j) {
1285
1287
  var O = new FileReader();
1286
1288
  O.onload = function(D) {
1287
1289
  S(D.target.result);
1288
1290
  }, O.onerror = function(D) {
1289
- L(D.target.error);
1291
+ j(D.target.error);
1290
1292
  }, O.readAsArrayBuffer(A);
1291
1293
  }) : A;
1292
1294
  }).then(function(A) {
1293
1295
  var S = c.getTypeOf(A);
1294
- return S ? (S === "arraybuffer" ? A = c.transformTo("uint8array", A) : S === "string" && (k ? A = a.decode(A) : u && _ !== !0 && (A = function(L) {
1295
- return v(L, o.uint8array ? new Uint8Array(L.length) : new Array(L.length));
1296
+ return S ? (S === "arraybuffer" ? A = c.transformTo("uint8array", A) : S === "string" && (k ? A = a.decode(A) : u && _ !== !0 && (A = function(j) {
1297
+ return v(j, o.uint8array ? new Uint8Array(j.length) : new Array(j.length));
1296
1298
  }(A))), A) : l.Promise.reject(new Error("Can't read the data of '" + i + "'. Is it in a supported JavaScript type (String, Blob, ArrayBuffer, etc) ?"));
1297
1299
  });
1298
1300
  };
@@ -1520,10 +1522,10 @@ https://github.com/nodeca/pako/blob/main/LICENSE
1520
1522
  function S(O) {
1521
1523
  k || (k = !0, r.resolve(u, O));
1522
1524
  }
1523
- var L = h(function() {
1525
+ var j = h(function() {
1524
1526
  _(S, A);
1525
1527
  });
1526
- L.status === "error" && A(L.value);
1528
+ j.status === "error" && A(j.value);
1527
1529
  }
1528
1530
  function h(u, _) {
1529
1531
  var k = {};
@@ -1567,7 +1569,7 @@ https://github.com/nodeca/pako/blob/main/LICENSE
1567
1569
  if (A) i(u, A);
1568
1570
  else {
1569
1571
  u.state = d, u.outcome = _;
1570
- for (var S = -1, L = u.queue.length; ++S < L; ) u.queue[S].callFulfilled(_);
1572
+ for (var S = -1, j = u.queue.length; ++S < j; ) u.queue[S].callFulfilled(_);
1571
1573
  }
1572
1574
  return u;
1573
1575
  }, r.reject = function(u, _) {
@@ -1584,11 +1586,11 @@ https://github.com/nodeca/pako/blob/main/LICENSE
1584
1586
  if (Object.prototype.toString.call(u) !== "[object Array]") return this.reject(new TypeError("must be an array"));
1585
1587
  var k = u.length, A = !1;
1586
1588
  if (!k) return this.resolve([]);
1587
- for (var S = new Array(k), L = 0, O = -1, D = new this(a); ++O < k; ) I(u[O], O);
1589
+ for (var S = new Array(k), j = 0, O = -1, D = new this(a); ++O < k; ) I(u[O], O);
1588
1590
  return D;
1589
- function I(H, Y) {
1591
+ function I(H, q) {
1590
1592
  _.resolve(H).then(function(b) {
1591
- S[Y] = b, ++L !== k || A || (A = !0, r.resolve(D, S));
1593
+ S[q] = b, ++j !== k || A || (A = !0, r.resolve(D, S));
1592
1594
  }, function(b) {
1593
1595
  A || (A = !0, r.reject(D, b));
1594
1596
  });
@@ -1598,13 +1600,13 @@ https://github.com/nodeca/pako/blob/main/LICENSE
1598
1600
  if (Object.prototype.toString.call(u) !== "[object Array]") return this.reject(new TypeError("must be an array"));
1599
1601
  var k = u.length, A = !1;
1600
1602
  if (!k) return this.resolve([]);
1601
- for (var S = -1, L = new this(a); ++S < k; ) O = u[S], _.resolve(O).then(function(D) {
1602
- A || (A = !0, r.resolve(L, D));
1603
+ for (var S = -1, j = new this(a); ++S < k; ) O = u[S], _.resolve(O).then(function(D) {
1604
+ A || (A = !0, r.resolve(j, D));
1603
1605
  }, function(D) {
1604
- A || (A = !0, r.reject(L, D));
1606
+ A || (A = !0, r.reject(j, D));
1605
1607
  });
1606
1608
  var O;
1607
- return L;
1609
+ return j;
1608
1610
  };
1609
1611
  }, { immediate: 36 }], 38: [function(s, C, c) {
1610
1612
  var o = {};
@@ -1630,11 +1632,11 @@ https://github.com/nodeca/pako/blob/main/LICENSE
1630
1632
  return k.result;
1631
1633
  }
1632
1634
  i.prototype.push = function(u, _) {
1633
- var k, A, S = this.strm, L = this.options.chunkSize;
1635
+ var k, A, S = this.strm, j = this.options.chunkSize;
1634
1636
  if (this.ended) return !1;
1635
1637
  A = _ === ~~_ ? _ : _ === !0 ? 4 : 0, typeof u == "string" ? S.input = r.string2buf(u) : v.call(u) === "[object ArrayBuffer]" ? S.input = new Uint8Array(u) : S.input = u, S.next_in = 0, S.avail_in = S.input.length;
1636
1638
  do {
1637
- if (S.avail_out === 0 && (S.output = new a.Buf8(L), S.next_out = 0, S.avail_out = L), (k = o.deflate(S, A)) !== 1 && k !== g) return this.onEnd(k), !(this.ended = !0);
1639
+ if (S.avail_out === 0 && (S.output = new a.Buf8(j), S.next_out = 0, S.avail_out = j), (k = o.deflate(S, A)) !== 1 && k !== g) return this.onEnd(k), !(this.ended = !0);
1638
1640
  S.avail_out !== 0 && (S.avail_in !== 0 || A !== 4 && A !== 2) || (this.options.to === "string" ? this.onData(r.buf2binstring(a.shrinkBuf(S.output, S.next_out))) : this.onData(a.shrinkBuf(S.output, S.next_out)));
1639
1641
  } while ((0 < S.avail_in || S.avail_out === 0) && k !== 1);
1640
1642
  return A === 4 ? (k = o.deflateEnd(this.strm), this.onEnd(k), this.ended = !0, k === g) : A !== 2 || (this.onEnd(g), !(S.avail_out = 0));
@@ -1664,11 +1666,11 @@ https://github.com/nodeca/pako/blob/main/LICENSE
1664
1666
  return u.result;
1665
1667
  }
1666
1668
  n.prototype.push = function(i, h) {
1667
- var u, _, k, A, S, L, O = this.strm, D = this.options.chunkSize, I = this.options.dictionary, H = !1;
1669
+ var u, _, k, A, S, j, O = this.strm, D = this.options.chunkSize, I = this.options.dictionary, H = !1;
1668
1670
  if (this.ended) return !1;
1669
1671
  _ = h === ~~h ? h : h === !0 ? l.Z_FINISH : l.Z_NO_FLUSH, typeof i == "string" ? O.input = r.binstring2buf(i) : y.call(i) === "[object ArrayBuffer]" ? O.input = new Uint8Array(i) : O.input = i, O.next_in = 0, O.avail_in = O.input.length;
1670
1672
  do {
1671
- if (O.avail_out === 0 && (O.output = new a.Buf8(D), O.next_out = 0, O.avail_out = D), (u = o.inflate(O, l.Z_NO_FLUSH)) === l.Z_NEED_DICT && I && (L = typeof I == "string" ? r.string2buf(I) : y.call(I) === "[object ArrayBuffer]" ? new Uint8Array(I) : I, u = o.inflateSetDictionary(this.strm, L)), u === l.Z_BUF_ERROR && H === !0 && (u = l.Z_OK, H = !1), u !== l.Z_STREAM_END && u !== l.Z_OK) return this.onEnd(u), !(this.ended = !0);
1673
+ if (O.avail_out === 0 && (O.output = new a.Buf8(D), O.next_out = 0, O.avail_out = D), (u = o.inflate(O, l.Z_NO_FLUSH)) === l.Z_NEED_DICT && I && (j = typeof I == "string" ? r.string2buf(I) : y.call(I) === "[object ArrayBuffer]" ? new Uint8Array(I) : I, u = o.inflateSetDictionary(this.strm, j)), u === l.Z_BUF_ERROR && H === !0 && (u = l.Z_OK, H = !1), u !== l.Z_STREAM_END && u !== l.Z_OK) return this.onEnd(u), !(this.ended = !0);
1672
1674
  O.next_out && (O.avail_out !== 0 && u !== l.Z_STREAM_END && (O.avail_in !== 0 || _ !== l.Z_FINISH && _ !== l.Z_SYNC_FLUSH) || (this.options.to === "string" ? (k = r.utf8border(O.output, O.next_out), A = O.next_out - k, S = r.buf2string(O.output, k), O.next_out = A, O.avail_out = D - A, A && a.arraySet(O.output, O.output, k, A, 0), this.onData(S)) : this.onData(a.shrinkBuf(O.output, O.next_out)))), O.avail_in === 0 && O.avail_out === 0 && (H = !0);
1673
1675
  } while ((0 < O.avail_in || O.avail_out === 0) && u !== l.Z_STREAM_END);
1674
1676
  return u === l.Z_STREAM_END && (_ = l.Z_FINISH), _ === l.Z_FINISH ? (u = o.inflateEnd(this.strm), this.onEnd(u), this.ended = !0, u === l.Z_OK) : _ !== l.Z_SYNC_FLUSH || (this.onEnd(l.Z_OK), !(O.avail_out = 0));
@@ -1777,14 +1779,14 @@ https://github.com/nodeca/pako/blob/main/LICENSE
1777
1779
  return -1 ^ a;
1778
1780
  };
1779
1781
  }, {}], 46: [function(s, C, c) {
1780
- var o, a = s("../utils/common"), r = s("./trees"), l = s("./adler32"), d = s("./crc32"), v = s("./messages"), g = 0, y = 4, n = 0, p = -2, i = -1, h = 4, u = 2, _ = 8, k = 9, A = 286, S = 30, L = 19, O = 2 * A + 1, D = 15, I = 3, H = 258, Y = H + I + 1, b = 42, R = 113, e = 1, F = 2, Q = 3, M = 4;
1782
+ var o, a = s("../utils/common"), r = s("./trees"), l = s("./adler32"), d = s("./crc32"), v = s("./messages"), g = 0, y = 4, n = 0, p = -2, i = -1, h = 4, u = 2, _ = 8, k = 9, A = 286, S = 30, j = 19, O = 2 * A + 1, D = 15, I = 3, H = 258, q = H + I + 1, b = 42, R = 113, e = 1, F = 2, Q = 3, M = 4;
1781
1783
  function et(t, P) {
1782
1784
  return t.msg = v[P], P;
1783
1785
  }
1784
1786
  function U(t) {
1785
1787
  return (t << 1) - (4 < t ? 9 : 0);
1786
1788
  }
1787
- function K(t) {
1789
+ function Y(t) {
1788
1790
  for (var P = t.length; 0 <= --P; ) t[P] = 0;
1789
1791
  }
1790
1792
  function E(t) {
@@ -1801,7 +1803,7 @@ https://github.com/nodeca/pako/blob/main/LICENSE
1801
1803
  t.pending_buf[t.pending++] = P >>> 8 & 255, t.pending_buf[t.pending++] = 255 & P;
1802
1804
  }
1803
1805
  function B(t, P) {
1804
- var T, m, f = t.max_chain_length, x = t.strstart, W = t.prev_length, Z = t.nice_match, z = t.strstart > t.w_size - Y ? t.strstart - (t.w_size - Y) : 0, V = t.window, X = t.w_mask, G = t.prev, J = t.strstart + H, lt = V[x + W - 1], at = V[x + W];
1806
+ var T, m, f = t.max_chain_length, x = t.strstart, W = t.prev_length, Z = t.nice_match, z = t.strstart > t.w_size - q ? t.strstart - (t.w_size - q) : 0, V = t.window, X = t.w_mask, G = t.prev, J = t.strstart + H, lt = V[x + W - 1], at = V[x + W];
1805
1807
  t.prev_length >= t.good_match && (f >>= 2), Z > t.lookahead && (Z = t.lookahead);
1806
1808
  do
1807
1809
  if (V[(T = P) + W] === at && V[T + W - 1] === lt && V[T] === V[x] && V[++T] === V[x + 1]) {
@@ -1820,22 +1822,22 @@ https://github.com/nodeca/pako/blob/main/LICENSE
1820
1822
  function it(t) {
1821
1823
  var P, T, m, f, x, W, Z, z, V, X, G = t.w_size;
1822
1824
  do {
1823
- if (f = t.window_size - t.lookahead - t.strstart, t.strstart >= G + (G - Y)) {
1825
+ if (f = t.window_size - t.lookahead - t.strstart, t.strstart >= G + (G - q)) {
1824
1826
  for (a.arraySet(t.window, t.window, G, G, 0), t.match_start -= G, t.strstart -= G, t.block_start -= G, P = T = t.hash_size; m = t.head[--P], t.head[P] = G <= m ? m - G : 0, --T; ) ;
1825
1827
  for (P = T = G; m = t.prev[--P], t.prev[P] = G <= m ? m - G : 0, --T; ) ;
1826
1828
  f += G;
1827
1829
  }
1828
1830
  if (t.strm.avail_in === 0) break;
1829
1831
  if (W = t.strm, Z = t.window, z = t.strstart + t.lookahead, V = f, X = void 0, X = W.avail_in, V < X && (X = V), T = X === 0 ? 0 : (W.avail_in -= X, a.arraySet(Z, W.input, W.next_in, X, z), W.state.wrap === 1 ? W.adler = l(W.adler, Z, X, z) : W.state.wrap === 2 && (W.adler = d(W.adler, Z, X, z)), W.next_in += X, W.total_in += X, X), t.lookahead += T, t.lookahead + t.insert >= I) for (x = t.strstart - t.insert, t.ins_h = t.window[x], t.ins_h = (t.ins_h << t.hash_shift ^ t.window[x + 1]) & t.hash_mask; t.insert && (t.ins_h = (t.ins_h << t.hash_shift ^ t.window[x + I - 1]) & t.hash_mask, t.prev[x & t.w_mask] = t.head[t.ins_h], t.head[t.ins_h] = x, x++, t.insert--, !(t.lookahead + t.insert < I)); ) ;
1830
- } while (t.lookahead < Y && t.strm.avail_in !== 0);
1832
+ } while (t.lookahead < q && t.strm.avail_in !== 0);
1831
1833
  }
1832
1834
  function rt(t, P) {
1833
1835
  for (var T, m; ; ) {
1834
- if (t.lookahead < Y) {
1835
- if (it(t), t.lookahead < Y && P === g) return e;
1836
+ if (t.lookahead < q) {
1837
+ if (it(t), t.lookahead < q && P === g) return e;
1836
1838
  if (t.lookahead === 0) break;
1837
1839
  }
1838
- if (T = 0, t.lookahead >= I && (t.ins_h = (t.ins_h << t.hash_shift ^ t.window[t.strstart + I - 1]) & t.hash_mask, T = t.prev[t.strstart & t.w_mask] = t.head[t.ins_h], t.head[t.ins_h] = t.strstart), T !== 0 && t.strstart - T <= t.w_size - Y && (t.match_length = B(t, T)), t.match_length >= I) if (m = r._tr_tally(t, t.strstart - t.match_start, t.match_length - I), t.lookahead -= t.match_length, t.match_length <= t.max_lazy_match && t.lookahead >= I) {
1840
+ if (T = 0, t.lookahead >= I && (t.ins_h = (t.ins_h << t.hash_shift ^ t.window[t.strstart + I - 1]) & t.hash_mask, T = t.prev[t.strstart & t.w_mask] = t.head[t.ins_h], t.head[t.ins_h] = t.strstart), T !== 0 && t.strstart - T <= t.w_size - q && (t.match_length = B(t, T)), t.match_length >= I) if (m = r._tr_tally(t, t.strstart - t.match_start, t.match_length - I), t.lookahead -= t.match_length, t.match_length <= t.max_lazy_match && t.lookahead >= I) {
1839
1841
  for (t.match_length--; t.strstart++, t.ins_h = (t.ins_h << t.hash_shift ^ t.window[t.strstart + I - 1]) & t.hash_mask, T = t.prev[t.strstart & t.w_mask] = t.head[t.ins_h], t.head[t.ins_h] = t.strstart, --t.match_length != 0; ) ;
1840
1842
  t.strstart++;
1841
1843
  } else t.strstart += t.match_length, t.match_length = 0, t.ins_h = t.window[t.strstart], t.ins_h = (t.ins_h << t.hash_shift ^ t.window[t.strstart + 1]) & t.hash_mask;
@@ -1846,11 +1848,11 @@ https://github.com/nodeca/pako/blob/main/LICENSE
1846
1848
  }
1847
1849
  function tt(t, P) {
1848
1850
  for (var T, m, f; ; ) {
1849
- if (t.lookahead < Y) {
1850
- if (it(t), t.lookahead < Y && P === g) return e;
1851
+ if (t.lookahead < q) {
1852
+ if (it(t), t.lookahead < q && P === g) return e;
1851
1853
  if (t.lookahead === 0) break;
1852
1854
  }
1853
- if (T = 0, t.lookahead >= I && (t.ins_h = (t.ins_h << t.hash_shift ^ t.window[t.strstart + I - 1]) & t.hash_mask, T = t.prev[t.strstart & t.w_mask] = t.head[t.ins_h], t.head[t.ins_h] = t.strstart), t.prev_length = t.match_length, t.prev_match = t.match_start, t.match_length = I - 1, T !== 0 && t.prev_length < t.max_lazy_match && t.strstart - T <= t.w_size - Y && (t.match_length = B(t, T), t.match_length <= 5 && (t.strategy === 1 || t.match_length === I && 4096 < t.strstart - t.match_start) && (t.match_length = I - 1)), t.prev_length >= I && t.match_length <= t.prev_length) {
1855
+ if (T = 0, t.lookahead >= I && (t.ins_h = (t.ins_h << t.hash_shift ^ t.window[t.strstart + I - 1]) & t.hash_mask, T = t.prev[t.strstart & t.w_mask] = t.head[t.ins_h], t.head[t.ins_h] = t.strstart), t.prev_length = t.match_length, t.prev_match = t.match_start, t.match_length = I - 1, T !== 0 && t.prev_length < t.max_lazy_match && t.strstart - T <= t.w_size - q && (t.match_length = B(t, T), t.match_length <= 5 && (t.strategy === 1 || t.match_length === I && 4096 < t.strstart - t.match_start) && (t.match_length = I - 1)), t.prev_length >= I && t.match_length <= t.prev_length) {
1854
1856
  for (f = t.strstart + t.lookahead - I, m = r._tr_tally(t, t.strstart - 1 - t.prev_match, t.prev_length - I), t.lookahead -= t.prev_length - 1, t.prev_length -= 2; ++t.strstart <= f && (t.ins_h = (t.ins_h << t.hash_shift ^ t.window[t.strstart + I - 1]) & t.hash_mask, T = t.prev[t.strstart & t.w_mask] = t.head[t.ins_h], t.head[t.ins_h] = t.strstart), --t.prev_length != 0; ) ;
1855
1857
  if (t.match_available = 0, t.match_length = I - 1, t.strstart++, m && (w(t, !1), t.strm.avail_out === 0)) return e;
1856
1858
  } else if (t.match_available) {
@@ -1863,7 +1865,7 @@ https://github.com/nodeca/pako/blob/main/LICENSE
1863
1865
  this.good_length = t, this.max_lazy = P, this.nice_length = T, this.max_chain = m, this.func = f;
1864
1866
  }
1865
1867
  function st() {
1866
- this.strm = null, this.status = 0, this.pending_buf = null, this.pending_buf_size = 0, this.pending_out = 0, this.pending = 0, this.wrap = 0, this.gzhead = null, this.gzindex = 0, this.method = _, this.last_flush = -1, this.w_size = 0, this.w_bits = 0, this.w_mask = 0, this.window = null, this.window_size = 0, this.prev = null, this.head = null, this.ins_h = 0, this.hash_size = 0, this.hash_bits = 0, this.hash_mask = 0, this.hash_shift = 0, this.block_start = 0, this.match_length = 0, this.prev_match = 0, this.match_available = 0, this.strstart = 0, this.match_start = 0, this.lookahead = 0, this.prev_length = 0, this.max_chain_length = 0, this.max_lazy_match = 0, this.level = 0, this.strategy = 0, this.good_match = 0, this.nice_match = 0, this.dyn_ltree = new a.Buf16(2 * O), this.dyn_dtree = new a.Buf16(2 * (2 * S + 1)), this.bl_tree = new a.Buf16(2 * (2 * L + 1)), K(this.dyn_ltree), K(this.dyn_dtree), K(this.bl_tree), this.l_desc = null, this.d_desc = null, this.bl_desc = null, this.bl_count = new a.Buf16(D + 1), this.heap = new a.Buf16(2 * A + 1), K(this.heap), this.heap_len = 0, this.heap_max = 0, this.depth = new a.Buf16(2 * A + 1), K(this.depth), this.l_buf = 0, this.lit_bufsize = 0, this.last_lit = 0, this.d_buf = 0, this.opt_len = 0, this.static_len = 0, this.matches = 0, this.insert = 0, this.bi_buf = 0, this.bi_valid = 0;
1868
+ this.strm = null, this.status = 0, this.pending_buf = null, this.pending_buf_size = 0, this.pending_out = 0, this.pending = 0, this.wrap = 0, this.gzhead = null, this.gzindex = 0, this.method = _, this.last_flush = -1, this.w_size = 0, this.w_bits = 0, this.w_mask = 0, this.window = null, this.window_size = 0, this.prev = null, this.head = null, this.ins_h = 0, this.hash_size = 0, this.hash_bits = 0, this.hash_mask = 0, this.hash_shift = 0, this.block_start = 0, this.match_length = 0, this.prev_match = 0, this.match_available = 0, this.strstart = 0, this.match_start = 0, this.lookahead = 0, this.prev_length = 0, this.max_chain_length = 0, this.max_lazy_match = 0, this.level = 0, this.strategy = 0, this.good_match = 0, this.nice_match = 0, this.dyn_ltree = new a.Buf16(2 * O), this.dyn_dtree = new a.Buf16(2 * (2 * S + 1)), this.bl_tree = new a.Buf16(2 * (2 * j + 1)), Y(this.dyn_ltree), Y(this.dyn_dtree), Y(this.bl_tree), this.l_desc = null, this.d_desc = null, this.bl_desc = null, this.bl_count = new a.Buf16(D + 1), this.heap = new a.Buf16(2 * A + 1), Y(this.heap), this.heap_len = 0, this.heap_max = 0, this.depth = new a.Buf16(2 * A + 1), Y(this.depth), this.l_buf = 0, this.lit_bufsize = 0, this.last_lit = 0, this.d_buf = 0, this.opt_len = 0, this.static_len = 0, this.matches = 0, this.insert = 0, this.bi_buf = 0, this.bi_valid = 0;
1867
1869
  }
1868
1870
  function ot(t) {
1869
1871
  var P;
@@ -1872,7 +1874,7 @@ https://github.com/nodeca/pako/blob/main/LICENSE
1872
1874
  function ft(t) {
1873
1875
  var P = ot(t);
1874
1876
  return P === n && function(T) {
1875
- T.window_size = 2 * T.w_size, K(T.head), T.max_lazy_match = o[T.level].max_lazy, T.good_match = o[T.level].good_length, T.nice_match = o[T.level].nice_length, T.max_chain_length = o[T.level].max_chain, T.strstart = 0, T.block_start = 0, T.lookahead = 0, T.insert = 0, T.match_length = T.prev_length = I - 1, T.match_available = 0, T.ins_h = 0;
1877
+ T.window_size = 2 * T.w_size, Y(T.head), T.max_lazy_match = o[T.level].max_lazy, T.good_match = o[T.level].good_length, T.nice_match = o[T.level].nice_length, T.max_chain_length = o[T.level].max_chain, T.strstart = 0, T.block_start = 0, T.lookahead = 0, T.insert = 0, T.match_length = T.prev_length = I - 1, T.match_available = 0, T.ins_h = 0;
1876
1878
  }(t.state), P;
1877
1879
  }
1878
1880
  function ct(t, P, T, m, f, x) {
@@ -1892,7 +1894,7 @@ https://github.com/nodeca/pako/blob/main/LICENSE
1892
1894
  }
1893
1895
  t.strstart += t.lookahead, t.lookahead = 0;
1894
1896
  var m = t.block_start + T;
1895
- if ((t.strstart === 0 || t.strstart >= m) && (t.lookahead = t.strstart - m, t.strstart = m, w(t, !1), t.strm.avail_out === 0) || t.strstart - t.block_start >= t.w_size - Y && (w(t, !1), t.strm.avail_out === 0)) return e;
1897
+ if ((t.strstart === 0 || t.strstart >= m) && (t.lookahead = t.strstart - m, t.strstart = m, w(t, !1), t.strm.avail_out === 0) || t.strstart - t.block_start >= t.w_size - q && (w(t, !1), t.strm.avail_out === 0)) return e;
1896
1898
  }
1897
1899
  return t.insert = 0, P === y ? (w(t, !0), t.strm.avail_out === 0 ? Q : M) : (t.strstart > t.block_start && (w(t, !1), t.strm.avail_out), e);
1898
1900
  }), new nt(4, 4, 8, 4, rt), new nt(4, 5, 16, 8, rt), new nt(4, 6, 32, 32, rt), new nt(4, 4, 16, 16, tt), new nt(8, 16, 32, 32, tt), new nt(8, 16, 128, 128, tt), new nt(8, 32, 128, 256, tt), new nt(32, 128, 258, 1024, tt), new nt(32, 258, 258, 4096, tt)], c.deflateInit = function(t, P) {
@@ -1966,7 +1968,7 @@ https://github.com/nodeca/pako/blob/main/LICENSE
1966
1968
  return z.insert = 0, V === y ? (w(z, !0), z.strm.avail_out === 0 ? Q : M) : z.last_lit && (w(z, !1), z.strm.avail_out === 0) ? e : F;
1967
1969
  }(m, P) : o[m.level].func(m, P);
1968
1970
  if (Z !== Q && Z !== M || (m.status = 666), Z === e || Z === Q) return t.avail_out === 0 && (m.last_flush = -1), n;
1969
- if (Z === F && (P === 1 ? r._tr_align(m) : P !== 5 && (r._tr_stored_block(m, 0, 0, !1), P === 3 && (K(m.head), m.lookahead === 0 && (m.strstart = 0, m.block_start = 0, m.insert = 0))), E(t), t.avail_out === 0)) return m.last_flush = -1, n;
1971
+ if (Z === F && (P === 1 ? r._tr_align(m) : P !== 5 && (r._tr_stored_block(m, 0, 0, !1), P === 3 && (Y(m.head), m.lookahead === 0 && (m.strstart = 0, m.block_start = 0, m.insert = 0))), E(t), t.avail_out === 0)) return m.last_flush = -1, n;
1970
1972
  }
1971
1973
  return P !== y ? n : m.wrap <= 0 ? 1 : (m.wrap === 2 ? (N(m, 255 & t.adler), N(m, t.adler >> 8 & 255), N(m, t.adler >> 16 & 255), N(m, t.adler >> 24 & 255), N(m, 255 & t.total_in), N(m, t.total_in >> 8 & 255), N(m, t.total_in >> 16 & 255), N(m, t.total_in >> 24 & 255)) : ($(m, t.adler >>> 16), $(m, 65535 & t.adler)), E(t), 0 < m.wrap && (m.wrap = -m.wrap), m.pending !== 0 ? n : 1);
1972
1974
  }, c.deflateEnd = function(t) {
@@ -1975,7 +1977,7 @@ https://github.com/nodeca/pako/blob/main/LICENSE
1975
1977
  }, c.deflateSetDictionary = function(t, P) {
1976
1978
  var T, m, f, x, W, Z, z, V, X = P.length;
1977
1979
  if (!t || !t.state || (x = (T = t.state).wrap) === 2 || x === 1 && T.status !== b || T.lookahead) return p;
1978
- for (x === 1 && (t.adler = l(t.adler, P, X, 0)), T.wrap = 0, X >= T.w_size && (x === 0 && (K(T.head), T.strstart = 0, T.block_start = 0, T.insert = 0), V = new a.Buf8(T.w_size), a.arraySet(V, P, X - T.w_size, T.w_size, 0), P = V, X = T.w_size), W = t.avail_in, Z = t.next_in, z = t.input, t.avail_in = X, t.next_in = 0, t.input = P, it(T); T.lookahead >= I; ) {
1980
+ for (x === 1 && (t.adler = l(t.adler, P, X, 0)), T.wrap = 0, X >= T.w_size && (x === 0 && (Y(T.head), T.strstart = 0, T.block_start = 0, T.insert = 0), V = new a.Buf8(T.w_size), a.arraySet(V, P, X - T.w_size, T.w_size, 0), P = V, X = T.w_size), W = t.avail_in, Z = t.next_in, z = t.input, t.avail_in = X, t.next_in = 0, t.input = P, it(T); T.lookahead >= I; ) {
1979
1981
  for (m = T.strstart, f = T.lookahead - (I - 1); T.ins_h = (T.ins_h << T.hash_shift ^ T.window[m + I - 1]) & T.hash_mask, T.prev[m & T.w_mask] = T.head[T.ins_h], T.head[T.ins_h] = m, m++, --f; ) ;
1980
1982
  T.strstart = m, T.lookahead = I - 1, it(T);
1981
1983
  }
@@ -1987,10 +1989,10 @@ https://github.com/nodeca/pako/blob/main/LICENSE
1987
1989
  };
1988
1990
  }, {}], 48: [function(s, C, c) {
1989
1991
  C.exports = function(o, a) {
1990
- var r, l, d, v, g, y, n, p, i, h, u, _, k, A, S, L, O, D, I, H, Y, b, R, e, F;
1991
- r = o.state, l = o.next_in, e = o.input, d = l + (o.avail_in - 5), v = o.next_out, F = o.output, g = v - (a - o.avail_out), y = v + (o.avail_out - 257), n = r.dmax, p = r.wsize, i = r.whave, h = r.wnext, u = r.window, _ = r.hold, k = r.bits, A = r.lencode, S = r.distcode, L = (1 << r.lenbits) - 1, O = (1 << r.distbits) - 1;
1992
+ var r, l, d, v, g, y, n, p, i, h, u, _, k, A, S, j, O, D, I, H, q, b, R, e, F;
1993
+ r = o.state, l = o.next_in, e = o.input, d = l + (o.avail_in - 5), v = o.next_out, F = o.output, g = v - (a - o.avail_out), y = v + (o.avail_out - 257), n = r.dmax, p = r.wsize, i = r.whave, h = r.wnext, u = r.window, _ = r.hold, k = r.bits, A = r.lencode, S = r.distcode, j = (1 << r.lenbits) - 1, O = (1 << r.distbits) - 1;
1992
1994
  t: do {
1993
- k < 15 && (_ += e[l++] << k, k += 8, _ += e[l++] << k, k += 8), D = A[_ & L];
1995
+ k < 15 && (_ += e[l++] << k, k += 8, _ += e[l++] << k, k += 8), D = A[_ & j];
1994
1996
  e: for (; ; ) {
1995
1997
  if (_ >>>= I = D >>> 24, k -= I, (I = D >>> 16 & 255) === 0) F[v++] = 65535 & D;
1996
1998
  else {
@@ -2016,36 +2018,36 @@ https://github.com/nodeca/pako/blob/main/LICENSE
2016
2018
  o.msg = "invalid distance code", r.mode = 30;
2017
2019
  break t;
2018
2020
  }
2019
- if (Y = 65535 & D, k < (I &= 15) && (_ += e[l++] << k, (k += 8) < I && (_ += e[l++] << k, k += 8)), n < (Y += _ & (1 << I) - 1)) {
2021
+ if (q = 65535 & D, k < (I &= 15) && (_ += e[l++] << k, (k += 8) < I && (_ += e[l++] << k, k += 8)), n < (q += _ & (1 << I) - 1)) {
2020
2022
  o.msg = "invalid distance too far back", r.mode = 30;
2021
2023
  break t;
2022
2024
  }
2023
- if (_ >>>= I, k -= I, (I = v - g) < Y) {
2024
- if (i < (I = Y - I) && r.sane) {
2025
+ if (_ >>>= I, k -= I, (I = v - g) < q) {
2026
+ if (i < (I = q - I) && r.sane) {
2025
2027
  o.msg = "invalid distance too far back", r.mode = 30;
2026
2028
  break t;
2027
2029
  }
2028
2030
  if (R = u, (b = 0) === h) {
2029
2031
  if (b += p - I, I < H) {
2030
2032
  for (H -= I; F[v++] = u[b++], --I; ) ;
2031
- b = v - Y, R = F;
2033
+ b = v - q, R = F;
2032
2034
  }
2033
2035
  } else if (h < I) {
2034
2036
  if (b += p + h - I, (I -= h) < H) {
2035
2037
  for (H -= I; F[v++] = u[b++], --I; ) ;
2036
2038
  if (b = 0, h < H) {
2037
2039
  for (H -= I = h; F[v++] = u[b++], --I; ) ;
2038
- b = v - Y, R = F;
2040
+ b = v - q, R = F;
2039
2041
  }
2040
2042
  }
2041
2043
  } else if (b += h - I, I < H) {
2042
2044
  for (H -= I; F[v++] = u[b++], --I; ) ;
2043
- b = v - Y, R = F;
2045
+ b = v - q, R = F;
2044
2046
  }
2045
2047
  for (; 2 < H; ) F[v++] = R[b++], F[v++] = R[b++], F[v++] = R[b++], H -= 3;
2046
2048
  H && (F[v++] = R[b++], 1 < H && (F[v++] = R[b++]));
2047
2049
  } else {
2048
- for (b = v - Y; F[v++] = F[b++], F[v++] = F[b++], F[v++] = F[b++], 2 < (H -= 3); ) ;
2050
+ for (b = v - q; F[v++] = F[b++], F[v++] = F[b++], F[v++] = F[b++], 2 < (H -= 3); ) ;
2049
2051
  H && (F[v++] = F[b++], 1 < H && (F[v++] = F[b++]));
2050
2052
  }
2051
2053
  break;
@@ -2076,7 +2078,7 @@ https://github.com/nodeca/pako/blob/main/LICENSE
2076
2078
  var e, F;
2077
2079
  return b && b.state ? (F = b.state, R < 0 ? (e = 0, R = -R) : (e = 1 + (R >> 4), R < 48 && (R &= 15)), R && (R < 8 || 15 < R) ? n : (F.window !== null && F.wbits !== R && (F.window = null), F.wrap = e, F.wbits = R, A(b))) : n;
2078
2080
  }
2079
- function L(b, R) {
2081
+ function j(b, R) {
2080
2082
  var e, F;
2081
2083
  return b ? (F = new _(), (b.state = F).window = null, (e = S(b, R)) !== y && (b.state = null), e) : n;
2082
2084
  }
@@ -2093,16 +2095,16 @@ https://github.com/nodeca/pako/blob/main/LICENSE
2093
2095
  }
2094
2096
  b.lencode = O, b.lenbits = 9, b.distcode = D, b.distbits = 5;
2095
2097
  }
2096
- function Y(b, R, e, F) {
2098
+ function q(b, R, e, F) {
2097
2099
  var Q, M = b.state;
2098
2100
  return M.window === null && (M.wsize = 1 << M.wbits, M.wnext = 0, M.whave = 0, M.window = new o.Buf8(M.wsize)), F >= M.wsize ? (o.arraySet(M.window, R, e - M.wsize, M.wsize, 0), M.wnext = 0, M.whave = M.wsize) : (F < (Q = M.wsize - M.wnext) && (Q = F), o.arraySet(M.window, R, e - F, Q, M.wnext), (F -= Q) ? (o.arraySet(M.window, R, e - F, F, 0), M.wnext = F, M.whave = M.wsize) : (M.wnext += Q, M.wnext === M.wsize && (M.wnext = 0), M.whave < M.wsize && (M.whave += Q))), 0;
2099
2101
  }
2100
2102
  c.inflateReset = A, c.inflateReset2 = S, c.inflateResetKeep = k, c.inflateInit = function(b) {
2101
- return L(b, 15);
2102
- }, c.inflateInit2 = L, c.inflate = function(b, R) {
2103
- var e, F, Q, M, et, U, K, E, w, N, $, B, it, rt, tt, nt, st, ot, ft, ct, t, P, T, m, f = 0, x = new o.Buf8(4), W = [16, 17, 18, 0, 8, 7, 9, 6, 10, 5, 11, 4, 12, 3, 13, 2, 14, 1, 15];
2103
+ return j(b, 15);
2104
+ }, c.inflateInit2 = j, c.inflate = function(b, R) {
2105
+ var e, F, Q, M, et, U, Y, E, w, N, $, B, it, rt, tt, nt, st, ot, ft, ct, t, P, T, m, f = 0, x = new o.Buf8(4), W = [16, 17, 18, 0, 8, 7, 9, 6, 10, 5, 11, 4, 12, 3, 13, 2, 14, 1, 15];
2104
2106
  if (!b || !b.state || !b.output || !b.input && b.avail_in !== 0) return n;
2105
- (e = b.state).mode === 12 && (e.mode = 13), et = b.next_out, Q = b.output, K = b.avail_out, M = b.next_in, F = b.input, U = b.avail_in, E = e.hold, w = e.bits, N = U, $ = K, P = y;
2107
+ (e = b.state).mode === 12 && (e.mode = 13), et = b.next_out, Q = b.output, Y = b.avail_out, M = b.next_in, F = b.input, U = b.avail_in, E = e.hold, w = e.bits, N = U, $ = Y, P = y;
2106
2108
  t: for (; ; ) switch (e.mode) {
2107
2109
  case p:
2108
2110
  if (e.wrap === 0) {
@@ -2205,7 +2207,7 @@ https://github.com/nodeca/pako/blob/main/LICENSE
2205
2207
  }
2206
2208
  b.adler = e.check = u(E), w = E = 0, e.mode = 11;
2207
2209
  case 11:
2208
- if (e.havedict === 0) return b.next_out = et, b.avail_out = K, b.next_in = M, b.avail_in = U, e.hold = E, e.bits = w, 2;
2210
+ if (e.havedict === 0) return b.next_out = et, b.avail_out = Y, b.next_in = M, b.avail_in = U, e.hold = E, e.bits = w, 2;
2209
2211
  b.adler = e.check = 1, e.mode = 12;
2210
2212
  case 12:
2211
2213
  if (R === 5 || R === 6) break t;
@@ -2248,8 +2250,8 @@ https://github.com/nodeca/pako/blob/main/LICENSE
2248
2250
  e.mode = 16;
2249
2251
  case 16:
2250
2252
  if (B = e.length) {
2251
- if (U < B && (B = U), K < B && (B = K), B === 0) break t;
2252
- o.arraySet(Q, F, M, B, et), U -= B, M += B, K -= B, et += B, e.length -= B;
2253
+ if (U < B && (B = U), Y < B && (B = Y), B === 0) break t;
2254
+ o.arraySet(Q, F, M, B, et), U -= B, M += B, Y -= B, et += B, e.length -= B;
2253
2255
  break;
2254
2256
  }
2255
2257
  e.mode = 12;
@@ -2333,8 +2335,8 @@ https://github.com/nodeca/pako/blob/main/LICENSE
2333
2335
  case 20:
2334
2336
  e.mode = 21;
2335
2337
  case 21:
2336
- if (6 <= U && 258 <= K) {
2337
- b.next_out = et, b.avail_out = K, b.next_in = M, b.avail_in = U, e.hold = E, e.bits = w, l(b, $), et = b.next_out, Q = b.output, K = b.avail_out, M = b.next_in, F = b.input, U = b.avail_in, E = e.hold, w = e.bits, e.mode === 12 && (e.back = -1);
2338
+ if (6 <= U && 258 <= Y) {
2339
+ b.next_out = et, b.avail_out = Y, b.next_in = M, b.avail_in = U, e.hold = E, e.bits = w, l(b, $), et = b.next_out, Q = b.output, Y = b.avail_out, M = b.next_in, F = b.input, U = b.avail_in, E = e.hold, w = e.bits, e.mode === 12 && (e.back = -1);
2338
2340
  break;
2339
2341
  }
2340
2342
  for (e.back = 0; nt = (f = e.lencode[E & (1 << e.lenbits) - 1]) >>> 16 & 255, st = 65535 & f, !((tt = f >>> 24) <= w); ) {
@@ -2401,20 +2403,20 @@ https://github.com/nodeca/pako/blob/main/LICENSE
2401
2403
  }
2402
2404
  e.mode = 25;
2403
2405
  case 25:
2404
- if (K === 0) break t;
2405
- if (B = $ - K, e.offset > B) {
2406
+ if (Y === 0) break t;
2407
+ if (B = $ - Y, e.offset > B) {
2406
2408
  if ((B = e.offset - B) > e.whave && e.sane) {
2407
2409
  b.msg = "invalid distance too far back", e.mode = 30;
2408
2410
  break;
2409
2411
  }
2410
2412
  it = B > e.wnext ? (B -= e.wnext, e.wsize - B) : e.wnext - B, B > e.length && (B = e.length), rt = e.window;
2411
2413
  } else rt = Q, it = et - e.offset, B = e.length;
2412
- for (K < B && (B = K), K -= B, e.length -= B; Q[et++] = rt[it++], --B; ) ;
2414
+ for (Y < B && (B = Y), Y -= B, e.length -= B; Q[et++] = rt[it++], --B; ) ;
2413
2415
  e.length === 0 && (e.mode = 21);
2414
2416
  break;
2415
2417
  case 26:
2416
- if (K === 0) break t;
2417
- Q[et++] = e.length, K--, e.mode = 21;
2418
+ if (Y === 0) break t;
2419
+ Q[et++] = e.length, Y--, e.mode = 21;
2418
2420
  break;
2419
2421
  case 27:
2420
2422
  if (e.wrap) {
@@ -2422,7 +2424,7 @@ https://github.com/nodeca/pako/blob/main/LICENSE
2422
2424
  if (U === 0) break t;
2423
2425
  U--, E |= F[M++] << w, w += 8;
2424
2426
  }
2425
- if ($ -= K, b.total_out += $, e.total += $, $ && (b.adler = e.check = e.flags ? r(e.check, Q, $, et - $) : a(e.check, Q, $, et - $)), $ = K, (e.flags ? E : u(E)) !== e.check) {
2427
+ if ($ -= Y, b.total_out += $, e.total += $, $ && (b.adler = e.check = e.flags ? r(e.check, Q, $, et - $) : a(e.check, Q, $, et - $)), $ = Y, (e.flags ? E : u(E)) !== e.check) {
2426
2428
  b.msg = "incorrect data check", e.mode = 30;
2427
2429
  break;
2428
2430
  }
@@ -2454,7 +2456,7 @@ https://github.com/nodeca/pako/blob/main/LICENSE
2454
2456
  default:
2455
2457
  return n;
2456
2458
  }
2457
- return b.next_out = et, b.avail_out = K, b.next_in = M, b.avail_in = U, e.hold = E, e.bits = w, (e.wsize || $ !== b.avail_out && e.mode < 30 && (e.mode < 27 || R !== 4)) && Y(b, b.output, b.next_out, $ - b.avail_out) ? (e.mode = 31, -4) : (N -= b.avail_in, $ -= b.avail_out, b.total_in += N, b.total_out += $, e.total += $, e.wrap && $ && (b.adler = e.check = e.flags ? r(e.check, Q, $, b.next_out - $) : a(e.check, Q, $, b.next_out - $)), b.data_type = e.bits + (e.last ? 64 : 0) + (e.mode === 12 ? 128 : 0) + (e.mode === 20 || e.mode === 15 ? 256 : 0), (N == 0 && $ === 0 || R === 4) && P === y && (P = -5), P);
2459
+ return b.next_out = et, b.avail_out = Y, b.next_in = M, b.avail_in = U, e.hold = E, e.bits = w, (e.wsize || $ !== b.avail_out && e.mode < 30 && (e.mode < 27 || R !== 4)) && q(b, b.output, b.next_out, $ - b.avail_out) ? (e.mode = 31, -4) : (N -= b.avail_in, $ -= b.avail_out, b.total_in += N, b.total_out += $, e.total += $, e.wrap && $ && (b.adler = e.check = e.flags ? r(e.check, Q, $, b.next_out - $) : a(e.check, Q, $, b.next_out - $)), b.data_type = e.bits + (e.last ? 64 : 0) + (e.mode === 12 ? 128 : 0) + (e.mode === 20 || e.mode === 15 ? 256 : 0), (N == 0 && $ === 0 || R === 4) && P === y && (P = -5), P);
2458
2460
  }, c.inflateEnd = function(b) {
2459
2461
  if (!b || !b.state) return n;
2460
2462
  var R = b.state;
@@ -2464,36 +2466,36 @@ https://github.com/nodeca/pako/blob/main/LICENSE
2464
2466
  return b && b.state && 2 & (e = b.state).wrap ? ((e.head = R).done = !1, y) : n;
2465
2467
  }, c.inflateSetDictionary = function(b, R) {
2466
2468
  var e, F = R.length;
2467
- return b && b.state ? (e = b.state).wrap !== 0 && e.mode !== 11 ? n : e.mode === 11 && a(1, R, F, 0) !== e.check ? -3 : Y(b, R, F, F) ? (e.mode = 31, -4) : (e.havedict = 1, y) : n;
2469
+ return b && b.state ? (e = b.state).wrap !== 0 && e.mode !== 11 ? n : e.mode === 11 && a(1, R, F, 0) !== e.check ? -3 : q(b, R, F, F) ? (e.mode = 31, -4) : (e.havedict = 1, y) : n;
2468
2470
  }, c.inflateInfo = "pako inflate (from Nodeca project)";
2469
2471
  }, { "../utils/common": 41, "./adler32": 43, "./crc32": 45, "./inffast": 48, "./inftrees": 50 }], 50: [function(s, C, c) {
2470
2472
  var o = s("../utils/common"), a = [3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 15, 17, 19, 23, 27, 31, 35, 43, 51, 59, 67, 83, 99, 115, 131, 163, 195, 227, 258, 0, 0], r = [16, 16, 16, 16, 16, 16, 16, 16, 17, 17, 17, 17, 18, 18, 18, 18, 19, 19, 19, 19, 20, 20, 20, 20, 21, 21, 21, 21, 16, 72, 78], l = [1, 2, 3, 4, 5, 7, 9, 13, 17, 25, 33, 49, 65, 97, 129, 193, 257, 385, 513, 769, 1025, 1537, 2049, 3073, 4097, 6145, 8193, 12289, 16385, 24577, 0, 0], d = [16, 16, 16, 16, 17, 17, 18, 18, 19, 19, 20, 20, 21, 21, 22, 22, 23, 23, 24, 24, 25, 25, 26, 26, 27, 27, 28, 28, 29, 29, 64, 64];
2471
2473
  C.exports = function(v, g, y, n, p, i, h, u) {
2472
- var _, k, A, S, L, O, D, I, H, Y = u.bits, b = 0, R = 0, e = 0, F = 0, Q = 0, M = 0, et = 0, U = 0, K = 0, E = 0, w = null, N = 0, $ = new o.Buf16(16), B = new o.Buf16(16), it = null, rt = 0;
2474
+ var _, k, A, S, j, O, D, I, H, q = u.bits, b = 0, R = 0, e = 0, F = 0, Q = 0, M = 0, et = 0, U = 0, Y = 0, E = 0, w = null, N = 0, $ = new o.Buf16(16), B = new o.Buf16(16), it = null, rt = 0;
2473
2475
  for (b = 0; b <= 15; b++) $[b] = 0;
2474
2476
  for (R = 0; R < n; R++) $[g[y + R]]++;
2475
- for (Q = Y, F = 15; 1 <= F && $[F] === 0; F--) ;
2477
+ for (Q = q, F = 15; 1 <= F && $[F] === 0; F--) ;
2476
2478
  if (F < Q && (Q = F), F === 0) return p[i++] = 20971520, p[i++] = 20971520, u.bits = 1, 0;
2477
2479
  for (e = 1; e < F && $[e] === 0; e++) ;
2478
2480
  for (Q < e && (Q = e), b = U = 1; b <= 15; b++) if (U <<= 1, (U -= $[b]) < 0) return -1;
2479
2481
  if (0 < U && (v === 0 || F !== 1)) return -1;
2480
2482
  for (B[1] = 0, b = 1; b < 15; b++) B[b + 1] = B[b] + $[b];
2481
2483
  for (R = 0; R < n; R++) g[y + R] !== 0 && (h[B[g[y + R]]++] = R);
2482
- if (O = v === 0 ? (w = it = h, 19) : v === 1 ? (w = a, N -= 257, it = r, rt -= 257, 256) : (w = l, it = d, -1), b = e, L = i, et = R = E = 0, A = -1, S = (K = 1 << (M = Q)) - 1, v === 1 && 852 < K || v === 2 && 592 < K) return 1;
2484
+ if (O = v === 0 ? (w = it = h, 19) : v === 1 ? (w = a, N -= 257, it = r, rt -= 257, 256) : (w = l, it = d, -1), b = e, j = i, et = R = E = 0, A = -1, S = (Y = 1 << (M = Q)) - 1, v === 1 && 852 < Y || v === 2 && 592 < Y) return 1;
2483
2485
  for (; ; ) {
2484
- for (D = b - et, H = h[R] < O ? (I = 0, h[R]) : h[R] > O ? (I = it[rt + h[R]], w[N + h[R]]) : (I = 96, 0), _ = 1 << b - et, e = k = 1 << M; p[L + (E >> et) + (k -= _)] = D << 24 | I << 16 | H | 0, k !== 0; ) ;
2486
+ for (D = b - et, H = h[R] < O ? (I = 0, h[R]) : h[R] > O ? (I = it[rt + h[R]], w[N + h[R]]) : (I = 96, 0), _ = 1 << b - et, e = k = 1 << M; p[j + (E >> et) + (k -= _)] = D << 24 | I << 16 | H | 0, k !== 0; ) ;
2485
2487
  for (_ = 1 << b - 1; E & _; ) _ >>= 1;
2486
2488
  if (_ !== 0 ? (E &= _ - 1, E += _) : E = 0, R++, --$[b] == 0) {
2487
2489
  if (b === F) break;
2488
2490
  b = g[y + h[R]];
2489
2491
  }
2490
2492
  if (Q < b && (E & S) !== A) {
2491
- for (et === 0 && (et = Q), L += e, U = 1 << (M = b - et); M + et < F && !((U -= $[M + et]) <= 0); ) M++, U <<= 1;
2492
- if (K += 1 << M, v === 1 && 852 < K || v === 2 && 592 < K) return 1;
2493
- p[A = E & S] = Q << 24 | M << 16 | L - i | 0;
2493
+ for (et === 0 && (et = Q), j += e, U = 1 << (M = b - et); M + et < F && !((U -= $[M + et]) <= 0); ) M++, U <<= 1;
2494
+ if (Y += 1 << M, v === 1 && 852 < Y || v === 2 && 592 < Y) return 1;
2495
+ p[A = E & S] = Q << 24 | M << 16 | j - i | 0;
2494
2496
  }
2495
2497
  }
2496
- return E !== 0 && (p[L + E] = b - et << 24 | 64 << 16 | 0), u.bits = Q, 0;
2498
+ return E !== 0 && (p[j + E] = b - et << 24 | 64 << 16 | 0), u.bits = Q, 0;
2497
2499
  };
2498
2500
  }, { "../utils/common": 41 }], 51: [function(s, C, c) {
2499
2501
  C.exports = { 2: "need dictionary", 1: "stream end", 0: "", "-1": "file error", "-2": "stream error", "-3": "data error", "-4": "insufficient memory", "-5": "buffer error", "-6": "incompatible version" };
@@ -2502,8 +2504,8 @@ https://github.com/nodeca/pako/blob/main/LICENSE
2502
2504
  function l(f) {
2503
2505
  for (var x = f.length; 0 <= --x; ) f[x] = 0;
2504
2506
  }
2505
- var d = 0, v = 29, g = 256, y = g + 1 + v, n = 30, p = 19, i = 2 * y + 1, h = 15, u = 16, _ = 7, k = 256, A = 16, S = 17, L = 18, O = [0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 0], D = [0, 0, 0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7, 8, 8, 9, 9, 10, 10, 11, 11, 12, 12, 13, 13], I = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 7], H = [16, 17, 18, 0, 8, 7, 9, 6, 10, 5, 11, 4, 12, 3, 13, 2, 14, 1, 15], Y = new Array(2 * (y + 2));
2506
- l(Y);
2507
+ var d = 0, v = 29, g = 256, y = g + 1 + v, n = 30, p = 19, i = 2 * y + 1, h = 15, u = 16, _ = 7, k = 256, A = 16, S = 17, j = 18, O = [0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 0], D = [0, 0, 0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7, 8, 8, 9, 9, 10, 10, 11, 11, 12, 12, 13, 13], I = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 7], H = [16, 17, 18, 0, 8, 7, 9, 6, 10, 5, 11, 4, 12, 3, 13, 2, 14, 1, 15], q = new Array(2 * (y + 2));
2508
+ l(q);
2507
2509
  var b = new Array(2 * n);
2508
2510
  l(b);
2509
2511
  var R = new Array(512);
@@ -2513,7 +2515,7 @@ https://github.com/nodeca/pako/blob/main/LICENSE
2513
2515
  var F = new Array(v);
2514
2516
  l(F);
2515
2517
  var Q, M, et, U = new Array(n);
2516
- function K(f, x, W, Z, z) {
2518
+ function Y(f, x, W, Z, z) {
2517
2519
  this.static_tree = f, this.extra_bits = x, this.extra_base = W, this.elems = Z, this.max_length = z, this.has_stree = f && f.length;
2518
2520
  }
2519
2521
  function E(f, x) {
@@ -2587,13 +2589,13 @@ https://github.com/nodeca/pako/blob/main/LICENSE
2587
2589
  }
2588
2590
  function t(f, x, W) {
2589
2591
  var Z, z, V = -1, X = x[1], G = 0, J = 7, lt = 4;
2590
- for (X === 0 && (J = 138, lt = 3), x[2 * (W + 1) + 1] = 65535, Z = 0; Z <= W; Z++) z = X, X = x[2 * (Z + 1) + 1], ++G < J && z === X || (G < lt ? f.bl_tree[2 * z] += G : z !== 0 ? (z !== V && f.bl_tree[2 * z]++, f.bl_tree[2 * A]++) : G <= 10 ? f.bl_tree[2 * S]++ : f.bl_tree[2 * L]++, V = z, lt = (G = 0) === X ? (J = 138, 3) : z === X ? (J = 6, 3) : (J = 7, 4));
2592
+ for (X === 0 && (J = 138, lt = 3), x[2 * (W + 1) + 1] = 65535, Z = 0; Z <= W; Z++) z = X, X = x[2 * (Z + 1) + 1], ++G < J && z === X || (G < lt ? f.bl_tree[2 * z] += G : z !== 0 ? (z !== V && f.bl_tree[2 * z]++, f.bl_tree[2 * A]++) : G <= 10 ? f.bl_tree[2 * S]++ : f.bl_tree[2 * j]++, V = z, lt = (G = 0) === X ? (J = 138, 3) : z === X ? (J = 6, 3) : (J = 7, 4));
2591
2593
  }
2592
2594
  function P(f, x, W) {
2593
2595
  var Z, z, V = -1, X = x[1], G = 0, J = 7, lt = 4;
2594
2596
  for (X === 0 && (J = 138, lt = 3), Z = 0; Z <= W; Z++) if (z = X, X = x[2 * (Z + 1) + 1], !(++G < J && z === X)) {
2595
2597
  if (G < lt) for (; B(f, z, f.bl_tree), --G != 0; ) ;
2596
- else z !== 0 ? (z !== V && (B(f, z, f.bl_tree), G--), B(f, A, f.bl_tree), $(f, G - 3, 2)) : G <= 10 ? (B(f, S, f.bl_tree), $(f, G - 3, 3)) : (B(f, L, f.bl_tree), $(f, G - 11, 7));
2598
+ else z !== 0 ? (z !== V && (B(f, z, f.bl_tree), G--), B(f, A, f.bl_tree), $(f, G - 3, 2)) : G <= 10 ? (B(f, S, f.bl_tree), $(f, G - 3, 3)) : (B(f, j, f.bl_tree), $(f, G - 11, 7));
2597
2599
  V = z, lt = (G = 0) === X ? (J = 138, 3) : z === X ? (J = 6, 3) : (J = 7, 4);
2598
2600
  }
2599
2601
  }
@@ -2611,12 +2613,12 @@ https://github.com/nodeca/pako/blob/main/LICENSE
2611
2613
  for (e[Z - 1] = z, z = V = 0; z < 16; z++) for (U[z] = V, x = 0; x < 1 << D[z]; x++) R[V++] = z;
2612
2614
  for (V >>= 7; z < n; z++) for (U[z] = V << 7, x = 0; x < 1 << D[z] - 7; x++) R[256 + V++] = z;
2613
2615
  for (W = 0; W <= h; W++) X[W] = 0;
2614
- for (x = 0; x <= 143; ) Y[2 * x + 1] = 8, x++, X[8]++;
2615
- for (; x <= 255; ) Y[2 * x + 1] = 9, x++, X[9]++;
2616
- for (; x <= 279; ) Y[2 * x + 1] = 7, x++, X[7]++;
2617
- for (; x <= 287; ) Y[2 * x + 1] = 8, x++, X[8]++;
2618
- for (rt(Y, y + 1, X), x = 0; x < n; x++) b[2 * x + 1] = 5, b[2 * x] = it(x, 5);
2619
- Q = new K(Y, O, g + 1, y, h), M = new K(b, D, 0, n, h), et = new K(new Array(0), I, 0, p, _);
2616
+ for (x = 0; x <= 143; ) q[2 * x + 1] = 8, x++, X[8]++;
2617
+ for (; x <= 255; ) q[2 * x + 1] = 9, x++, X[9]++;
2618
+ for (; x <= 279; ) q[2 * x + 1] = 7, x++, X[7]++;
2619
+ for (; x <= 287; ) q[2 * x + 1] = 8, x++, X[8]++;
2620
+ for (rt(q, y + 1, X), x = 0; x < n; x++) b[2 * x + 1] = 5, b[2 * x] = it(x, 5);
2621
+ Q = new Y(q, O, g + 1, y, h), M = new Y(b, D, 0, n, h), et = new Y(new Array(0), I, 0, p, _);
2620
2622
  }(), T = !0), f.l_desc = new E(f.dyn_ltree, Q), f.d_desc = new E(f.dyn_dtree, M), f.bl_desc = new E(f.bl_tree, et), f.bi_buf = 0, f.bi_valid = 0, tt(f);
2621
2623
  }, c._tr_stored_block = m, c._tr_flush_block = function(f, x, W, Z) {
2622
2624
  var z, V, X = 0;
@@ -2630,7 +2632,7 @@ https://github.com/nodeca/pako/blob/main/LICENSE
2630
2632
  var J;
2631
2633
  for (t(G, G.dyn_ltree, G.l_desc.max_code), t(G, G.dyn_dtree, G.d_desc.max_code), ct(G, G.bl_desc), J = p - 1; 3 <= J && G.bl_tree[2 * H[J] + 1] === 0; J--) ;
2632
2634
  return G.opt_len += 3 * (J + 1) + 5 + 5 + 4, J;
2633
- }(f), z = f.opt_len + 3 + 7 >>> 3, (V = f.static_len + 3 + 7 >>> 3) <= z && (z = V)) : z = V = W + 5, W + 4 <= z && x !== -1 ? m(f, x, W, Z) : f.strategy === 4 || V === z ? ($(f, 2 + (Z ? 1 : 0), 3), ft(f, Y, b)) : ($(f, 4 + (Z ? 1 : 0), 3), function(G, J, lt, at) {
2635
+ }(f), z = f.opt_len + 3 + 7 >>> 3, (V = f.static_len + 3 + 7 >>> 3) <= z && (z = V)) : z = V = W + 5, W + 4 <= z && x !== -1 ? m(f, x, W, Z) : f.strategy === 4 || V === z ? ($(f, 2 + (Z ? 1 : 0), 3), ft(f, q, b)) : ($(f, 4 + (Z ? 1 : 0), 3), function(G, J, lt, at) {
2634
2636
  var ht;
2635
2637
  for ($(G, J - 257, 5), $(G, lt - 1, 5), $(G, at - 4, 4), ht = 0; ht < at; ht++) $(G, G.bl_tree[2 * H[ht] + 1], 3);
2636
2638
  P(G, G.dyn_ltree, J - 1), P(G, G.dyn_dtree, lt - 1);
@@ -2638,7 +2640,7 @@ https://github.com/nodeca/pako/blob/main/LICENSE
2638
2640
  }, c._tr_tally = function(f, x, W) {
2639
2641
  return f.pending_buf[f.d_buf + 2 * f.last_lit] = x >>> 8 & 255, f.pending_buf[f.d_buf + 2 * f.last_lit + 1] = 255 & x, f.pending_buf[f.l_buf + f.last_lit] = 255 & W, f.last_lit++, x === 0 ? f.dyn_ltree[2 * W]++ : (f.matches++, x--, f.dyn_ltree[2 * (e[W] + g + 1)]++, f.dyn_dtree[2 * w(x)]++), f.last_lit === f.lit_bufsize - 1;
2640
2642
  }, c._tr_align = function(f) {
2641
- $(f, 2, 3), B(f, k, Y), function(x) {
2643
+ $(f, 2, 3), B(f, k, q), function(x) {
2642
2644
  x.bi_valid === 16 ? (N(x, x.bi_buf), x.bi_buf = 0, x.bi_valid = 0) : 8 <= x.bi_valid && (x.pending_buf[x.pending++] = 255 & x.bi_buf, x.bi_buf >>= 8, x.bi_valid -= 8);
2643
2645
  }(f);
2644
2646
  };
@@ -2677,7 +2679,7 @@ https://github.com/nodeca/pako/blob/main/LICENSE
2677
2679
  setTimeout(_, 0, A);
2678
2680
  }, h.setImmediate = function(A) {
2679
2681
  typeof A != "function" && (A = new Function("" + A));
2680
- for (var S = new Array(arguments.length - 1), L = 0; L < S.length; L++) S[L] = arguments[L + 1];
2682
+ for (var S = new Array(arguments.length - 1), j = 0; j < S.length; j++) S[j] = arguments[j + 1];
2681
2683
  var O = { callback: A, args: S };
2682
2684
  return n[y] = O, l(y), y++;
2683
2685
  }, h.clearImmediate = u;
@@ -2692,8 +2694,8 @@ https://github.com/nodeca/pako/blob/main/LICENSE
2692
2694
  if (S) {
2693
2695
  p = !0;
2694
2696
  try {
2695
- (function(L) {
2696
- var O = L.callback, D = L.args;
2697
+ (function(j) {
2698
+ var O = j.callback, D = j.args;
2697
2699
  switch (D.length) {
2698
2700
  case 0:
2699
2701
  O();
@@ -2725,53 +2727,53 @@ https://github.com/nodeca/pako/blob/main/LICENSE
2725
2727
  }, {}] }, {}, [10])(10);
2726
2728
  });
2727
2729
  })(Ot);
2728
- var Kt = Ot.exports;
2729
- const qt = /* @__PURE__ */ jt(Kt);
2730
- function Xt(j) {
2731
- let q = "";
2730
+ var Yt = Ot.exports;
2731
+ const Kt = /* @__PURE__ */ jt(Yt);
2732
+ function Xt(L) {
2733
+ let K = "";
2732
2734
  const s = [];
2733
- if (j.bold && s.push("<b/>"), j.italic && s.push("<i/>"), j.underline && s.push("<u/>"), j.strikethrough && s.push("<strike/>"), j.textColor && j.textColor.toLowerCase() !== "#000000") {
2734
- const c = Et(j.textColor);
2735
+ if (L.bold && s.push("<b/>"), L.italic && s.push("<i/>"), L.underline && s.push("<u/>"), L.strikethrough && s.push("<strike/>"), L.textColor && L.textColor.toLowerCase() !== "#000000") {
2736
+ const c = Et(L.textColor);
2735
2737
  c && s.push(`<color rgb="${c}"/>`);
2736
2738
  }
2737
- s.length > 0 && (q += `<font>${s.join("")}</font>`);
2738
- const C = j.cellColor;
2739
+ s.length > 0 && (K += `<font>${s.join("")}</font>`);
2740
+ const C = L.cellColor;
2739
2741
  if (C && C.toLowerCase() !== "#ffffff") {
2740
2742
  const c = Et(C);
2741
- c && (q += `<fill><patternFill patternType="solid"><fgColor rgb="${c}"/></patternFill></fill>`);
2743
+ c && (K += `<fill><patternFill patternType="solid"><fgColor rgb="${c}"/></patternFill></fill>`);
2742
2744
  }
2743
- return `<dxf>${q}</dxf>`;
2745
+ return `<dxf>${K}</dxf>`;
2744
2746
  }
2745
- function Jt(j, q) {
2746
- const s = j.match(/<dxfs count="(\d+)"/);
2747
+ function Jt(L, K) {
2748
+ const s = L.match(/<dxfs count="(\d+)"/);
2747
2749
  if (s) {
2748
2750
  const C = parseInt(s[1], 10);
2749
2751
  return {
2750
- xml: j.replace(/<dxfs count="\d+"/, `<dxfs count="${C + 1}"`).replace("</dxfs>", q + "</dxfs>"),
2752
+ xml: L.replace(/<dxfs count="\d+"/, `<dxfs count="${C + 1}"`).replace("</dxfs>", K + "</dxfs>"),
2751
2753
  dxfId: C
2752
2754
  };
2753
2755
  }
2754
- return j.includes("<dxfs/>") ? {
2755
- xml: j.replace("<dxfs/>", `<dxfs count="1">${q}</dxfs>`),
2756
+ return L.includes("<dxfs/>") ? {
2757
+ xml: L.replace("<dxfs/>", `<dxfs count="1">${K}</dxfs>`),
2756
2758
  dxfId: 0
2757
2759
  } : {
2758
- xml: j.replace(
2760
+ xml: L.replace(
2759
2761
  "</styleSheet>",
2760
- `<dxfs count="1">${q}</dxfs></styleSheet>`
2762
+ `<dxfs count="1">${K}</dxfs></styleSheet>`
2761
2763
  ),
2762
2764
  dxfId: 0
2763
2765
  };
2764
2766
  }
2765
- function Qt(j) {
2766
- return j.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
2767
+ function Qt(L) {
2768
+ return L.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
2767
2769
  }
2768
- function te(j, q, s) {
2770
+ function te(L, K, s) {
2769
2771
  const C = new RegExp(
2770
- `(<conditionalFormatting[^>]*\\bsqref="${Qt(q)}"[^>]*>)`
2772
+ `(<conditionalFormatting[^>]*\\bsqref="${Qt(K)}"[^>]*>)`
2771
2773
  );
2772
- if (C.test(j))
2773
- return j.replace(C, `$1${s}`);
2774
- const c = `<conditionalFormatting sqref="${q}">${s}</conditionalFormatting>`;
2774
+ if (C.test(L))
2775
+ return L.replace(C, `$1${s}`);
2776
+ const c = `<conditionalFormatting sqref="${K}">${s}</conditionalFormatting>`;
2775
2777
  for (const o of [
2776
2778
  "<pageMargins",
2777
2779
  "<pageSetup",
@@ -2779,27 +2781,27 @@ function te(j, q, s) {
2779
2781
  "<drawing",
2780
2782
  "</worksheet>"
2781
2783
  ])
2782
- if (j.includes(o))
2783
- return j.replace(o, c + o);
2784
- return j + c;
2784
+ if (L.includes(o))
2785
+ return L.replace(o, c + o);
2786
+ return L + c;
2785
2787
  }
2786
- function ee(j) {
2787
- return j.replace(
2788
+ function ee(L) {
2789
+ return L.replace(
2788
2790
  /<cfRule([^>]*)type="containsText"([^>]*?)>([\s\S]*?)<\/cfRule>/g,
2789
- (q, s, C, c) => {
2790
- if (/\btext=/.test(s) || /\btext=/.test(C)) return q;
2791
+ (K, s, C, c) => {
2792
+ if (/\btext=/.test(s) || /\btext=/.test(C)) return K;
2791
2793
  const o = c.match(/<formula[^>]*>([\s\S]*?)<\/formula>/);
2792
- if (!o) return q;
2794
+ if (!o) return K;
2793
2795
  const r = o[1].replace(/&quot;/g, '"').replace(/&amp;/g, "&").replace(/&lt;/g, "<").replace(/&gt;/g, ">").match(/SEARCH\s*\(\s*"([^"]*)"/i);
2794
- if (!r) return q;
2796
+ if (!r) return K;
2795
2797
  const l = r[1].replace(/&/g, "&amp;").replace(/"/g, "&quot;").replace(/</g, "&lt;").replace(/>/g, "&gt;");
2796
2798
  return `<cfRule${s}type="containsText"${C} text="${l}">${c}</cfRule>`;
2797
2799
  }
2798
2800
  );
2799
2801
  }
2800
- async function re(j, q) {
2802
+ async function re(L, K) {
2801
2803
  var a;
2802
- const s = await qt.loadAsync(j), C = s.file("xl/styles.xml");
2804
+ const s = await Kt.loadAsync(L), C = s.file("xl/styles.xml");
2803
2805
  let c = C ? await C.async("text") : "", o = !1;
2804
2806
  for (const [r, l] of Object.entries(s.files)) {
2805
2807
  if (l.dir) continue;
@@ -2809,7 +2811,7 @@ async function re(j, q) {
2809
2811
  let g = await l.async("text"), y = !1;
2810
2812
  const n = ee(g);
2811
2813
  n !== g && (g = n, y = !0);
2812
- const p = ((a = q[v]) == null ? void 0 : a.duplicateValues) ?? [];
2814
+ const p = ((a = K[v]) == null ? void 0 : a.duplicateValues) ?? [];
2813
2815
  for (const i of p) {
2814
2816
  const h = Xt(i.format), { xml: u, dxfId: _ } = Jt(c, h);
2815
2817
  c = u, o = !0;
@@ -2820,90 +2822,90 @@ async function re(j, q) {
2820
2822
  }
2821
2823
  return o && C && s.file("xl/styles.xml", c), s.generateAsync({ type: "arraybuffer", compression: "DEFLATE" });
2822
2824
  }
2823
- const ne = (j) => {
2824
- if (!j || typeof j != "string") return null;
2825
- const q = j.trim().toLowerCase();
2826
- if (q.startsWith("#")) {
2827
- const c = q.replace("#", "").toUpperCase();
2825
+ const ne = (L) => {
2826
+ if (!L || typeof L != "string") return null;
2827
+ const K = L.trim().toLowerCase();
2828
+ if (K.startsWith("#")) {
2829
+ const c = K.replace("#", "").toUpperCase();
2828
2830
  return c.length === 3 ? c.split("").map((o) => o + o).join("").toUpperCase() : c.length === 6 ? c : null;
2829
2831
  }
2830
- const s = /rgba?\s*\(\s*([\d.]+)[,\s]+([\d.]+)[,\s]+([\d.]+)(?:[,\s/]+[\d.]+)?\s*\)/i, C = q.match(s);
2832
+ const s = /rgba?\s*\(\s*([\d.]+)[,\s]+([\d.]+)[,\s]+([\d.]+)(?:[,\s/]+[\d.]+)?\s*\)/i, C = K.match(s);
2831
2833
  if (C) {
2832
2834
  const c = Math.min(255, Math.max(0, parseFloat(C[1]))), o = Math.min(255, Math.max(0, parseFloat(C[2]))), a = Math.min(255, Math.max(0, parseFloat(C[3])));
2833
2835
  return ((1 << 24) + (c << 16) + (o << 8) + a).toString(16).slice(1).toUpperCase();
2834
2836
  }
2835
2837
  return null;
2836
2838
  };
2837
- function ie(j) {
2838
- const q = {};
2839
- if (j.bl === 1 && (q.bold = !0), j.it === 1 && (q.italic = !0), j.un === 1 && (q.underline = !0), j.cl === 1 && (q.strike = !0), j.fs && (q.size = Number(j.fs)), typeof j.ff == "string" && j.ff && (q.name = j.ff), j.fc) {
2840
- const s = ne(j.fc);
2841
- s && (q.color = { argb: `FF${s}` });
2839
+ function ie(L) {
2840
+ const K = {};
2841
+ if (L.bl === 1 && (K.bold = !0), L.it === 1 && (K.italic = !0), L.un === 1 && (K.underline = !0), L.cl === 1 && (K.strike = !0), L.fs && (K.size = Number(L.fs)), typeof L.ff == "string" && L.ff && (K.name = L.ff), L.fc) {
2842
+ const s = ne(L.fc);
2843
+ s && (K.color = { argb: `FF${s}` });
2842
2844
  }
2843
- return Object.keys(q).length > 0 ? q : void 0;
2845
+ return Object.keys(K).length > 0 ? K : void 0;
2844
2846
  }
2845
- function Rt(j) {
2846
- if (!Array.isArray(j) || j.length === 0) return null;
2847
- const q = [];
2848
- for (const s of j) {
2847
+ function Rt(L) {
2848
+ if (!Array.isArray(L) || L.length === 0) return null;
2849
+ const K = [];
2850
+ for (const s of L) {
2849
2851
  const C = String(s.v ?? "");
2850
2852
  if (C === "" && !s.bl && !s.it && !s.un && !s.cl) continue;
2851
2853
  const c = ie(s), o = { text: C };
2852
- c && (o.font = c), q.push(o);
2854
+ c && (o.font = c), K.push(o);
2853
2855
  }
2854
- return q.length === 0 || !q.some((s) => s.text !== "") ? null : { richText: q };
2856
+ return K.length === 0 || !K.some((s) => s.text !== "") ? null : { richText: K };
2855
2857
  }
2856
- function ae(j, q) {
2857
- q.forEach((s, C) => {
2858
- const c = j.getCell(C);
2858
+ function ae(L, K) {
2859
+ K.forEach((s, C) => {
2860
+ const c = L.getCell(C);
2859
2861
  c.value = s;
2860
2862
  });
2861
2863
  }
2862
- function se(j) {
2863
- const q = j == null ? void 0 : j.filter, s = j == null ? void 0 : j.filter_select, C = !!(q && Object.keys(q).length > 0), c = !!s && (Array.isArray(s.row) || Array.isArray(s.column));
2864
+ function se(L) {
2865
+ const K = L == null ? void 0 : L.filter, s = L == null ? void 0 : L.filter_select, C = !!(K && Object.keys(K).length > 0), c = !!s && (Array.isArray(s.row) || Array.isArray(s.column));
2864
2866
  return C || c;
2865
2867
  }
2866
- const St = (j) => {
2867
- if (!j || typeof j != "string") return null;
2868
- const q = j.trim().toLowerCase();
2869
- if (q.startsWith("#")) {
2870
- const c = q.replace("#", "").toUpperCase();
2868
+ const St = (L) => {
2869
+ if (!L || typeof L != "string") return null;
2870
+ const K = L.trim().toLowerCase();
2871
+ if (K.startsWith("#")) {
2872
+ const c = K.replace("#", "").toUpperCase();
2871
2873
  return c.length === 3 ? c.split("").map((o) => o + o).join("").toUpperCase() : c.length === 6 ? c : null;
2872
2874
  }
2873
- const s = /rgba?\s*\(\s*([\d.]+)[,\s]+([\d.]+)[,\s]+([\d.]+)(?:[,\s/]+[\d.]+)?\s*\)/i, C = q.match(s);
2875
+ const s = /rgba?\s*\(\s*([\d.]+)[,\s]+([\d.]+)[,\s]+([\d.]+)(?:[,\s/]+[\d.]+)?\s*\)/i, C = K.match(s);
2874
2876
  if (C) {
2875
2877
  const c = Math.min(255, Math.max(0, parseFloat(C[1]))), o = Math.min(255, Math.max(0, parseFloat(C[2]))), a = Math.min(255, Math.max(0, parseFloat(C[3])));
2876
2878
  return ((1 << 24) + (c << 16) + (o << 8) + a).toString(16).slice(1).toUpperCase();
2877
2879
  }
2878
2880
  return null;
2879
- }, pe = async (j, q, s, C) => {
2881
+ }, de = async (L, K, s, C) => {
2880
2882
  var c, o, a, r;
2881
- if (!(!j.current || !q.current))
2883
+ if (!(!L.current || !K.current))
2882
2884
  try {
2883
- const l = (o = (c = j.current).getWorkbookContext) == null ? void 0 : o.call(c), d = l == null ? void 0 : l.luckysheetfile;
2885
+ const l = (o = (c = L.current).getWorkbookContext) == null ? void 0 : o.call(c), d = l == null ? void 0 : l.luckysheetfile;
2884
2886
  Array.isArray(d) && d.some(se) && Ut({
2885
2887
  title: "Filters are not supported in Export",
2886
2888
  variant: "warning",
2887
2889
  showCloseButton: !0,
2888
2890
  duration: 30 * 1e3
2889
- }), q.current.getArray(s);
2890
- const g = j.current.getAllSheets(), y = dt.book_new(), n = g.map(() => /* @__PURE__ */ new Map());
2891
+ }), K.current.getArray(s);
2892
+ const g = L.current.getAllSheets(), y = dt.book_new(), n = g.map(() => /* @__PURE__ */ new Map());
2891
2893
  g.forEach((D, I) => {
2892
2894
  var e, F, Q, M, et, U;
2893
- const H = ((e = g[I]) == null ? void 0 : e.data) || [], Y = dt.aoa_to_sheet(H);
2894
- Object.keys(Y).forEach((K) => {
2895
- if (K.startsWith("!")) return;
2896
- const E = Y[K];
2897
- E && (E.t === "s" || E.t === void 0) && E.v !== "" && !isNaN(Number(E.v)) && (Y[K] = { ...E, v: Number(E.v), t: "n" });
2898
- }), Y["!merges"] = [], (F = D.config) != null && F.merge && Object.values(D.config.merge).forEach((K) => {
2899
- Y["!merges"].push({
2900
- s: { r: K.r, c: K.c },
2901
- e: { r: K.r + K.rs - 1, c: K.c + K.cs - 1 }
2895
+ const H = ((e = g[I]) == null ? void 0 : e.data) || [], q = dt.aoa_to_sheet(H);
2896
+ Object.keys(q).forEach((Y) => {
2897
+ if (Y.startsWith("!")) return;
2898
+ const E = q[Y];
2899
+ E && (E.t === "s" || E.t === void 0) && E.v !== "" && !isNaN(Number(E.v)) && (q[Y] = { ...E, v: Number(E.v), t: "n" });
2900
+ }), q["!merges"] = [], (F = D.config) != null && F.merge && Object.values(D.config.merge).forEach((Y) => {
2901
+ q["!merges"].push({
2902
+ s: { r: Y.r, c: Y.c },
2903
+ e: { r: Y.r + Y.rs - 1, c: Y.c + Y.cs - 1 }
2902
2904
  });
2903
2905
  });
2904
2906
  {
2905
2907
  const E = Math.round(3437.714285714286) / 256, w = D.column || 36;
2906
- Y["!cols"] = [];
2908
+ q["!cols"] = [];
2907
2909
  for (let N = 0; N < w; N++) {
2908
2910
  const $ = (M = (Q = D.config) == null ? void 0 : Q.columnlen) == null ? void 0 : M[N];
2909
2911
  if ($ !== void 0) {
@@ -2911,26 +2913,26 @@ const St = (j) => {
2911
2913
  0,
2912
2914
  Math.round((Number($) - 5) / 7 * 256) / 256
2913
2915
  );
2914
- Y["!cols"][N] = { wch: B };
2916
+ q["!cols"][N] = { wch: B };
2915
2917
  } else
2916
- Y["!cols"][N] = { wch: E };
2918
+ q["!cols"][N] = { wch: E };
2917
2919
  }
2918
2920
  }
2919
2921
  {
2920
- const K = Math.round(60.48) / 4;
2921
- Y.sheetFormat = {
2922
- ...Y.sheetFormat || {},
2923
- defaultRowHeight: String(K)
2924
- }, (et = D.config) != null && et.rowlen && (Y["!rows"] = [], Object.entries(D.config.rowlen).forEach(([E, w]) => {
2922
+ const Y = Math.round(60.48) / 4;
2923
+ q.sheetFormat = {
2924
+ ...q.sheetFormat || {},
2925
+ defaultRowHeight: String(Y)
2926
+ }, (et = D.config) != null && et.rowlen && (q["!rows"] = [], Object.entries(D.config.rowlen).forEach(([E, w]) => {
2925
2927
  const N = Math.round(Number(w) * 0.72 * 4) / 4;
2926
- Y["!rows"][Number(E)] = { hpt: N };
2928
+ q["!rows"][Number(E)] = { hpt: N };
2927
2929
  }));
2928
2930
  }
2929
2931
  const b = /* @__PURE__ */ new Set();
2930
- (D.celldata ?? []).forEach((K) => {
2932
+ (D.celldata ?? []).forEach((Y) => {
2931
2933
  var tt, nt, st, ot, ft;
2932
- const E = K.r, w = K.c, N = K.v || {}, $ = dt.encode_cell({ r: E, c: w });
2933
- let B = Y[$] || {};
2934
+ const E = Y.r, w = Y.c, N = Y.v || {}, $ = dt.encode_cell({ r: E, c: w });
2935
+ let B = q[$] || {};
2934
2936
  if (B = { ...B }, N.f && (B.f = N.f.replace(/^=/, "")), !N.f && ((tt = N.ct) == null ? void 0 : tt.t) === "inlineStr" && Array.isArray(N.ct.s) ? (B.v = zt(N.ct.s), B.t = "s") : B.v = N.v ?? ((ot = (st = (nt = N == null ? void 0 : N.ct) == null ? void 0 : nt.s) == null ? void 0 : st[0]) == null ? void 0 : ot.v), N.m && (B.w = N.m), !N.f && ((ft = N.ct) == null ? void 0 : ft.t) === "inlineStr" && Array.isArray(N.ct.s)) {
2935
2937
  const ct = Rt(N.ct.s);
2936
2938
  ct && n[I].set($, ct);
@@ -2960,15 +2962,15 @@ const St = (j) => {
2960
2962
  ...B.s.alignment || {},
2961
2963
  wrapText: N.tb === "1" || N.tb === "2" ? !0 : void 0,
2962
2964
  textRotation: N.tr !== void 0 ? N.tr : void 0
2963
- }, B.s.alignment.horizontal = it[N.ht] || void 0, B.s.alignment.vertical = rt[N.vt] || void 0, N.tb !== void 0 && (B.s.alignment = B.s.alignment || {}, N.tb === "1" ? B.s.alignment.wrapText = !0 : N.tb === "2" && (B.s.alignment.shrinkToFit = !0)), b.add($), Y[$] = B;
2964
- }), (D.data ?? []).forEach((K, E) => {
2965
- Array.isArray(K) && K.forEach((w, N) => {
2965
+ }, B.s.alignment.horizontal = it[N.ht] || void 0, B.s.alignment.vertical = rt[N.vt] || void 0, N.tb !== void 0 && (B.s.alignment = B.s.alignment || {}, N.tb === "1" ? B.s.alignment.wrapText = !0 : N.tb === "2" && (B.s.alignment.shrinkToFit = !0)), b.add($), q[$] = B;
2966
+ }), (D.data ?? []).forEach((Y, E) => {
2967
+ Array.isArray(Y) && Y.forEach((w, N) => {
2966
2968
  if (!w || typeof w != "object") return;
2967
2969
  const $ = dt.encode_cell({ r: E, c: N });
2968
2970
  if (b.has($)) return;
2969
2971
  const B = !!w.f, it = w.bg || w.bl || w.it || w.cl || w.un || w.fs || w.ff || w.fc || w.ht !== void 0 || w.vt !== void 0 || w.tb !== void 0 || w.tr !== void 0;
2970
2972
  if (!B && !it) return;
2971
- const rt = { ...Y[$] || {} };
2973
+ const rt = { ...q[$] || {} };
2972
2974
  if (rt.s = rt.s || {}, B && (rt.f = w.f.replace(/^=/, "")), w.bg) {
2973
2975
  const st = St(w.bg);
2974
2976
  st && (rt.s.fill = { patternType: "solid", fgColor: { rgb: st } });
@@ -2992,24 +2994,24 @@ const St = (j) => {
2992
2994
  horizontal: tt[w.ht] || void 0,
2993
2995
  vertical: nt[w.vt] || void 0,
2994
2996
  textRotation: w.tr !== void 0 ? w.tr : void 0
2995
- }, w.tb === "1" ? rt.s.alignment.wrapText = !0 : w.tb === "2" && (rt.s.alignment.shrinkToFit = !0), Y[$] = rt;
2997
+ }, w.tb === "1" ? rt.s.alignment.wrapText = !0 : w.tb === "2" && (rt.s.alignment.shrinkToFit = !0), q[$] = rt;
2996
2998
  });
2997
- }), (D.data ?? []).forEach((K, E) => {
2998
- Array.isArray(K) && K.forEach((w, N) => {
2999
+ }), (D.data ?? []).forEach((Y, E) => {
3000
+ Array.isArray(Y) && Y.forEach((w, N) => {
2999
3001
  var rt;
3000
3002
  if (!w || ((rt = w.ct) == null ? void 0 : rt.t) !== "inlineStr" || !Array.isArray(w.ct.s)) return;
3001
3003
  const $ = dt.encode_cell({ r: E, c: N }), B = zt(w.ct.s);
3002
- Y[$] = {
3003
- ...Y[$] || {},
3004
+ q[$] = {
3005
+ ...q[$] || {},
3004
3006
  v: B,
3005
3007
  t: "s"
3006
3008
  };
3007
3009
  const it = Rt(w.ct.s);
3008
3010
  it && n[I].set($, it);
3009
3011
  });
3010
- }), (U = D.config) != null && U.borderInfo && $t(Y, D.config.borderInfo);
3012
+ }), (U = D.config) != null && U.borderInfo && $t(q, D.config.borderInfo);
3011
3013
  const R = D.name.length > 30 ? D.name.slice(0, 30) : D.name;
3012
- dt.book_append_sheet(y, Y, R);
3014
+ dt.book_append_sheet(y, q, R);
3013
3015
  });
3014
3016
  const p = await (C == null ? void 0 : C(s)) || "Untitled", i = Nt(y, {
3015
3017
  bookType: "xlsx",
@@ -3026,14 +3028,14 @@ const St = (j) => {
3026
3028
  const H = h.worksheets[I];
3027
3029
  if (!H) return;
3028
3030
  ae(H, n[I]);
3029
- const Y = D.data;
3031
+ const q = D.data;
3030
3032
  Object.entries(D.hyperlink || {}).forEach(([M, et]) => {
3031
3033
  var rt, tt, nt, st;
3032
3034
  const U = Wt(et);
3033
3035
  if (!(U != null && U.linkAddress)) return;
3034
- const [K, E] = M.split("_").map(Number);
3035
- if (Number.isNaN(K) || Number.isNaN(E)) return;
3036
- const w = dt.encode_cell({ r: K, c: E }), N = H.getCell(w), $ = (rt = Y == null ? void 0 : Y[K]) == null ? void 0 : rt[E];
3036
+ const [Y, E] = M.split("_").map(Number);
3037
+ if (Number.isNaN(Y) || Number.isNaN(E)) return;
3038
+ const w = dt.encode_cell({ r: Y, c: E }), N = H.getCell(w), $ = (rt = q == null ? void 0 : q[Y]) == null ? void 0 : rt[E];
3037
3039
  let B = "";
3038
3040
  $ && typeof $ == "object" && ((tt = $.ct) == null ? void 0 : tt.t) === "inlineStr" && Array.isArray($.ct.s) && (B = zt($.ct.s));
3039
3041
  const it = B || (typeof N.text == "string" && N.text.length > 0 ? N.text : ((nt = N.value) == null ? void 0 : nt.text) || (Array.isArray((st = N.value) == null ? void 0 : st.richText) ? N.value.richText.map((ot) => ot.text || "").join("") : "") || "");
@@ -3042,7 +3044,7 @@ const St = (j) => {
3042
3044
  hyperlink: U.linkAddress
3043
3045
  };
3044
3046
  });
3045
- const { nextPriority: b, pendingDuplicateValues: R } = Yt(H, D, 1);
3047
+ const { nextPriority: b, pendingDuplicateValues: R } = qt(H, D, 1);
3046
3048
  _[I] = { duplicateValues: R };
3047
3049
  let e = b;
3048
3050
  if (!D.dataVerification) return;
@@ -3052,7 +3054,7 @@ const St = (j) => {
3052
3054
  Object.entries(D.dataVerification).forEach(([M, et]) => {
3053
3055
  const U = et;
3054
3056
  if (U.type !== "dropdown" && U.type !== "checkbox") return;
3055
- const [K, E] = M.split("_").map(Number), w = dt.encode_cell({ r: K, c: E });
3057
+ const [Y, E] = M.split("_").map(Number), w = dt.encode_cell({ r: Y, c: E });
3056
3058
  if (U.type === "checkbox") {
3057
3059
  const $ = (U.value1 || "TRUE").trim(), B = (U.value2 || "FALSE").trim(), it = [$, B].filter(Boolean);
3058
3060
  Q[w] = {
@@ -3103,24 +3105,24 @@ const St = (j) => {
3103
3105
  if (!((R = D.images) != null && R.length)) return;
3104
3106
  const H = h.worksheets[I];
3105
3107
  if (!H) return;
3106
- const Y = Number(D.defaultColWidth) || 99, b = Number(D.defaultRowHeight) || 21;
3108
+ const q = Number(D.defaultColWidth) || 99, b = Number(D.defaultRowHeight) || 21;
3107
3109
  Lt(
3108
3110
  H,
3109
3111
  h,
3110
3112
  D.images,
3111
3113
  D,
3112
- Y,
3114
+ q,
3113
3115
  b
3114
3116
  );
3115
3117
  });
3116
3118
  const k = await h.xlsx.writeBuffer(), A = await re(k, _), S = new Blob([A], {
3117
3119
  type: "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"
3118
- }), L = URL.createObjectURL(S), O = document.createElement("a");
3119
- O.href = L, O.download = `${p}.xlsx`, O.click(), URL.revokeObjectURL(L);
3120
+ }), j = URL.createObjectURL(S), O = document.createElement("a");
3121
+ O.href = j, O.download = `${p}.xlsx`, O.click(), URL.revokeObjectURL(j);
3120
3122
  } catch (l) {
3121
3123
  console.error("Export failed:", l);
3122
3124
  }
3123
3125
  };
3124
3126
  export {
3125
- pe as handleExportToXLSX
3127
+ de as handleExportToXLSX
3126
3128
  };