UNPKG

@sheetxl/io

Version:

IO - Import/Export Libraries for SheetXL.

13,533 lines 669 kB
/**
 * @license @sheetxl/io - IO - Import/Export Libraries for SheetXL. - v0.7.27
 *
 * (C) 2025-present SheetXL Inc. & Michael T. Ford
 * License: The license can be found at https://www.sheetxl.com/license.
 */
var ze, Kn = { version: "0.20.3" }, Dt = 1200, ya = 1252, yf = [874, 932, 936, 949, 950, 1250, 1251, 1252, 1253, 1254, 1255, 1256, 1257, 1258, 1e4], ni = { 0: 1252, 1: 65001, 2: 65001, 77: 1e4, 128: 932, 129: 949, 130: 1361, 134: 936, 136: 950, 161: 1253, 162: 1254, 163: 1258, 177: 1255, 178: 1256, 186: 1257, 204: 1251, 222: 874, 238: 1250, 255: 1252, 69: 6969 }, os = function(e) {
  yf.indexOf(e) != -1 && (ya = ni[0] = e);
}, yr = function(e) {
  Dt = e, os(e);
};
function cs() {
  yr(1200), os(1252);
}
function Yn(e) {
  for (var r = [], t = 0, a = e.length; t < a; ++t) r[t] = e.charCodeAt(t);
  return r;
}
function fc(e) {
  for (var r = [], t = 0; t < e.length >> 1; ++t) r[t] = String.fromCharCode(e.charCodeAt(2 * t) + (e.charCodeAt(2 * t + 1) << 8));
  return r.join("");
}
function hc(e) {
  for (var r = [], t = 0; t < e.length >> 1; ++t) r[t] = String.fromCharCode(e.charCodeAt(2 * t + 1) + (e.charCodeAt(2 * t) << 8));
  return r.join("");
}
var Ia = function(e) {
  var r = e.charCodeAt(0), t = e.charCodeAt(1);
  return r == 255 && t == 254 ? fc(e.slice(2)) : r == 254 && t == 255 ? hc(e.slice(2)) : r == 65279 ? e.slice(1) : e;
}, Ja = function(e) {
  return String.fromCharCode(e);
}, Bs = function(e) {
  return String.fromCharCode(e);
};
function Ef(e) {
  ze = e, yr = function(r) {
    Dt = r, os(r);
  }, Ia = function(r) {
    return r.charCodeAt(0) === 255 && r.charCodeAt(1) === 254 ? ze.utils.decode(1200, Yn(r.slice(2))) : r;
  }, Ja = function(r) {
    return Dt === 1200 ? String.fromCharCode(r) : ze.utils.decode(Dt, [255 & r, r >> 8])[0];
  }, Bs = function(r) {
    return ze.utils.decode(ya, [r])[0];
  }, Gc();
}
var er = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";
function Jn(e) {
  for (var r = "", t = 0, a = 0, n = 0, s = 0, i = 0, l = 0, o = 0, c = 0; c < e.length; ) s = (t = e.charCodeAt(c++)) >> 2, i = (3 & t) << 4 | (a = e.charCodeAt(c++)) >> 4, l = (15 & a) << 2 | (n = e.charCodeAt(c++)) >> 6, o = 63 & n, isNaN(a) ? l = o = 64 : isNaN(n) && (o = 64), r += er.charAt(s) + er.charAt(i) + er.charAt(l) + er.charAt(o);
  return r;
}
function hr(e) {
  var r = "", t = 0, a = 0, n = 0, s = 0, i = 0, l = 0;
  e.slice(0, 5) == "data:" && (o = e.slice(0, 1024).indexOf(";base64,")) > -1 && (e = e.slice(o + 8)), e = e.replace(/[^\w\+\/\=]/g, "");
  for (var o = 0; o < e.length; ) t = er.indexOf(e.charAt(o++)) << 2 | (s = er.indexOf(e.charAt(o++))) >> 4, r += String.fromCharCode(t), a = (15 & s) << 4 | (i = er.indexOf(e.charAt(o++))) >> 2, i !== 64 && (r += String.fromCharCode(a)), n = (3 & i) << 6 | (l = er.indexOf(e.charAt(o++))), l !== 64 && (r += String.fromCharCode(n));
  return r;
}
var Ve = (function() {
  return typeof Buffer < "u" && typeof process < "u" && process.versions !== void 0 && !!process.versions.node;
})(), Ur = (function() {
  if (typeof Buffer < "u") {
    var e = !Buffer.from;
    if (!e) try {
      Buffer.from("foo", "utf8");
    } catch {
      e = !0;
    }
    return e ? function(r, t) {
      return t ? new Buffer(r, t) : new Buffer(r);
    } : Buffer.from.bind(Buffer);
  }
  return function() {
  };
})(), fn = (function() {
  if (typeof Buffer > "u") return !1;
  var e = Ur([65, 0]);
  return !!e && e.toString("utf16le").length == 1;
})();
function ea(e) {
  return Ve ? Buffer.alloc ? Buffer.alloc(e) : new Buffer(e) : typeof Uint8Array < "u" ? new Uint8Array(e) : new Array(e);
}
function Mi(e) {
  return Ve ? Buffer.allocUnsafe ? Buffer.allocUnsafe(e) : new Buffer(e) : typeof Uint8Array < "u" ? new Uint8Array(e) : new Array(e);
}
var sr = function(e) {
  return Ve ? Ur(e, "binary") : e.split("").map(function(r) {
    return 255 & r.charCodeAt(0);
  });
};
function _n(e) {
  if (typeof ArrayBuffer > "u") return sr(e);
  for (var r = new ArrayBuffer(e.length), t = new Uint8Array(r), a = 0; a != e.length; ++a) t[a] = 255 & e.charCodeAt(a);
  return r;
}
function Pr(e) {
  if (Array.isArray(e)) return e.map(function(a) {
    return String.fromCharCode(a);
  }).join("");
  for (var r = [], t = 0; t < e.length; ++t) r[t] = String.fromCharCode(e[t]);
  return r.join("");
}
function si(e) {
  if (typeof ArrayBuffer > "u") throw new Error("Unsupported");
  if (e instanceof ArrayBuffer) return si(new Uint8Array(e));
  for (var r = new Array(e.length), t = 0; t < e.length; ++t) r[t] = e[t];
  return r;
}
var xt = Ve ? function(e) {
  return Buffer.concat(e.map(function(r) {
    return Buffer.isBuffer(r) ? r : Ur(r);
  }));
} : function(e) {
  if (typeof Uint8Array < "u") {
    var r = 0, t = 0;
    for (r = 0; r < e.length; ++r) t += e[r].length;
    var a = new Uint8Array(t), n = 0;
    for (r = 0, t = 0; r < e.length; t += n, ++r) n = e[r].length, e[r] instanceof Uint8Array ? a.set(e[r], t) : typeof e[r] == "string" ? a.set(new Uint8Array(sr(e[r])), t) : a.set(new Uint8Array(e[r]), t);
    return a;
  }
  return [].concat.apply([], e.map(function(s) {
    return Array.isArray(s) ? s : [].slice.call(s);
  }));
}, or = /\u0000/g, qa = /[\u0001-\u0006]/g;
function Fa(e) {
  for (var r = "", t = e.length - 1; t >= 0; ) r += e.charAt(t--);
  return r;
}
function xr(e, r) {
  var t = "" + e;
  return t.length >= r ? t : Ze("0", r - t.length) + t;
}
function Ws(e, r) {
  var t = "" + e;
  return t.length >= r ? t : Ze(" ", r - t.length) + t;
}
function qn(e, r) {
  var t = "" + e;
  return t.length >= r ? t : t + Ze(" ", r - t.length);
}
var Ui = Math.pow(2, 32);
function Aa(e, r) {
  return e > Ui || e < -Ui ? (function(t, a) {
    var n = "" + Math.round(t);
    return n.length >= a ? n : Ze("0", a - n.length) + n;
  })(e, r) : (function(t, a) {
    var n = "" + t;
    return n.length >= a ? n : Ze("0", a - n.length) + n;
  })(Math.round(e), r);
}
function Gn(e, r) {
  return r = r || 0, e.length >= 7 + r && (32 | e.charCodeAt(r)) == 103 && (32 | e.charCodeAt(r + 1)) == 101 && (32 | e.charCodeAt(r + 2)) == 110 && (32 | e.charCodeAt(r + 3)) == 101 && (32 | e.charCodeAt(r + 4)) == 114 && (32 | e.charCodeAt(r + 5)) == 97 && (32 | e.charCodeAt(r + 6)) == 108;
}
var Bi = [["Sun", "Sunday"], ["Mon", "Monday"], ["Tue", "Tuesday"], ["Wed", "Wednesday"], ["Thu", "Thursday"], ["Fri", "Friday"], ["Sat", "Saturday"]], gs = [["J", "Jan", "January"], ["F", "Feb", "February"], ["M", "Mar", "March"], ["A", "Apr", "April"], ["M", "May", "May"], ["J", "Jun", "June"], ["J", "Jul", "July"], ["A", "Aug", "August"], ["S", "Sep", "September"], ["O", "Oct", "October"], ["N", "Nov", "November"], ["D", "Dec", "December"]], be = { 0: "General", 1: "0", 2: "0.00", 3: "#,##0", 4: "#,##0.00", 9: "0%", 10: "0.00%", 11: "0.00E+00", 12: "# ?/?", 13: "# ??/??", 14: "m/d/yy", 15: "d-mmm-yy", 16: "d-mmm", 17: "mmm-yy", 18: "h:mm AM/PM", 19: "h:mm:ss AM/PM", 20: "h:mm", 21: "h:mm:ss", 22: "m/d/yy h:mm", 37: "#,##0 ;(#,##0)", 38: "#,##0 ;[Red](#,##0)", 39: "#,##0.00;(#,##0.00)", 40: "#,##0.00;[Red](#,##0.00)", 45: "mm:ss", 46: "[h]:mm:ss", 47: "mmss.0", 48: "##0.0E+0", 49: "@", 56: '"上午/下午 "hh"時"mm"分"ss"秒 "' }, Wi = { 5: 37, 6: 38, 7: 39, 8: 40, 23: 0, 24: 0, 25: 0, 26: 0, 27: 14, 28: 14, 29: 14, 30: 14, 31: 14, 50: 14, 51: 14, 52: 14, 53: 14, 54: 14, 55: 14, 56: 14, 57: 14, 58: 14, 59: 1, 60: 2, 61: 3, 62: 4, 67: 9, 68: 10, 69: 12, 70: 13, 71: 14, 72: 14, 73: 15, 74: 16, 75: 17, 76: 20, 77: 21, 78: 22, 79: 45, 80: 46, 81: 47, 82: 0 }, kf = { 5: '"$"#,##0_);\\("$"#,##0\\)', 63: '"$"#,##0_);\\("$"#,##0\\)', 6: '"$"#,##0_);[Red]\\("$"#,##0\\)', 64: '"$"#,##0_);[Red]\\("$"#,##0\\)', 7: '"$"#,##0.00_);\\("$"#,##0.00\\)', 65: '"$"#,##0.00_);\\("$"#,##0.00\\)', 8: '"$"#,##0.00_);[Red]\\("$"#,##0.00\\)', 66: '"$"#,##0.00_);[Red]\\("$"#,##0.00\\)', 41: '_(* #,##0_);_(* \\(#,##0\\);_(* "-"_);_(@_)', 42: '_("$"* #,##0_);_("$"* \\(#,##0\\);_("$"* "-"_);_(@_)', 43: '_(* #,##0.00_);_(* \\(#,##0.00\\);_(* "-"??_);_(@_)', 44: '_("$"* #,##0.00_);_("$"* \\(#,##0.00\\);_("$"* "-"??_);_(@_)' };
function Qn(e, r, t) {
  for (var a = e < 0 ? -1 : 1, n = e * a, s = 0, i = 1, l = 0, o = 1, c = 0, f = 0, u = Math.floor(n); c < r && (l = (u = Math.floor(n)) * i + s, f = u * c + o, !(n - u < 5e-8)); ) n = 1 / (n - u), s = i, i = l, o = c, c = f;
  if (f > r && (c > r ? (f = o, l = s) : (f = c, l = i)), !t) return [0, a * l, f];
  var h = Math.floor(a * l / f);
  return [h, a * l - h * f, f];
}
function Fr(e, r, t) {
  if (e > 2958465 || e < 0) return null;
  var a = 0 | (e = (function(c) {
    var f = c.toPrecision(16);
    if (f.indexOf("e") > -1) {
      var u = f.slice(0, f.indexOf("e"));
      return (u = u.indexOf(".") > -1 ? u.slice(0, u.slice(0, 2) == "0." ? 17 : 16) : u.slice(0, 15) + Ze("0", u.length - 15)) + f.slice(f.indexOf("e"));
    }
    var h = f.indexOf(".") > -1 ? f.slice(0, f.slice(0, 2) == "0." ? 17 : 16) : f.slice(0, 15) + Ze("0", f.length - 15);
    return Number(h);
  })(e)), n = Math.floor(86400 * (e - a)), s = 0, i = [], l = { D: a, T: n, u: 86400 * (e - a) - n, y: 0, m: 0, d: 0, H: 0, M: 0, S: 0, q: 0 };
  if (Math.abs(l.u) < 1e-6 && (l.u = 0), r && r.date1904 && (a += 1462), l.u > 0.9999 && (l.u = 0, ++n == 86400 && (l.T = n = 0, ++a, ++l.D)), a === 60) i = t ? [1317, 10, 29] : [1900, 2, 29], s = 3;
  else if (a === 0) i = t ? [1317, 8, 29] : [1900, 1, 0], s = 6;
  else {
    a > 60 && --a;
    var o = new Date(1900, 0, 1);
    o.setDate(o.getDate() + a - 1), i = [o.getFullYear(), o.getMonth() + 1, o.getDate()], s = o.getDay(), a < 60 && (s = (s + 6) % 7), t && (s = (function(c, f) {
      f[0] -= 581;
      var u = c.getDay();
      return c < 60 && (u = (u + 6) % 7), u;
    })(o, i));
  }
  return l.y = i[0], l.m = i[1], l.d = i[2], l.S = n % 60, n = Math.floor(n / 60), l.M = n % 60, n = Math.floor(n / 60), l.H = n, l.q = s, l;
}
function bs(e) {
  return e.indexOf(".") == -1 ? e : e.replace(/(?:\.0*|(\.\d*[1-9])0+)$/, "$1");
}
function hn(e) {
  if (!isFinite(e)) return isNaN(e) ? "#NUM!" : "#DIV/0!";
  var r, t = Math.floor(Math.log(Math.abs(e)) * Math.LOG10E);
  return r = t >= -4 && t <= -1 ? e.toPrecision(10 + t) : Math.abs(t) <= 9 ? (function(a) {
    var n = a < 0 ? 12 : 11, s = bs(a.toFixed(12));
    return s.length <= n || (s = a.toPrecision(10)).length <= n ? s : a.toExponential(5);
  })(e) : t === 10 ? e.toFixed(10).substr(0, 12) : (function(a) {
    var n = bs(a.toFixed(11));
    return n.length > (a < 0 ? 12 : 11) || n === "0" || n === "-0" ? a.toPrecision(6) : n;
  })(e), bs((function(a) {
    return a.indexOf("E") == -1 ? a : a.replace(/(?:\.0*|(\.\d*[1-9])0+)[Ee]/, "$1E").replace(/(E[+-])(\d)$/, "$10$2");
  })(r.toUpperCase()));
}
function ma(e, r) {
  switch (typeof e) {
    case "string":
      return e;
    case "boolean":
      return e ? "TRUE" : "FALSE";
    case "number":
      return (0 | e) === e ? e.toString(10) : hn(e);
    case "undefined":
      return "";
    case "object":
      if (e == null) return "";
      if (e instanceof Date) return lr(14, yt(e, r && r.date1904), r);
  }
  throw new Error("unsupported value in General format: " + e);
}
function _f(e, r, t, a) {
  var n, s = "", i = 0, l = 0, o = t.y, c = 0;
  switch (e) {
    case 98:
      o = t.y + 543;
    case 121:
      switch (r.length) {
        case 1:
        case 2:
          n = o % 100, c = 2;
          break;
        default:
          n = o % 1e4, c = 4;
      }
      break;
    case 109:
      switch (r.length) {
        case 1:
        case 2:
          n = t.m, c = r.length;
          break;
        case 3:
          return gs[t.m - 1][1];
        case 5:
          return gs[t.m - 1][0];
        default:
          return gs[t.m - 1][2];
      }
      break;
    case 100:
      switch (r.length) {
        case 1:
        case 2:
          n = t.d, c = r.length;
          break;
        case 3:
          return Bi[t.q][0];
        default:
          return Bi[t.q][1];
      }
      break;
    case 104:
      switch (r.length) {
        case 1:
        case 2:
          n = 1 + (t.H + 11) % 12, c = r.length;
          break;
        default:
          throw "bad hour format: " + r;
      }
      break;
    case 72:
      switch (r.length) {
        case 1:
        case 2:
          n = t.H, c = r.length;
          break;
        default:
          throw "bad hour format: " + r;
      }
      break;
    case 77:
      switch (r.length) {
        case 1:
        case 2:
          n = t.M, c = r.length;
          break;
        default:
          throw "bad minute format: " + r;
      }
      break;
    case 115:
      if (r != "s" && r != "ss" && r != ".0" && r != ".00" && r != ".000") throw "bad second format: " + r;
      return t.u !== 0 || r != "s" && r != "ss" ? (l = a >= 2 ? a === 3 ? 1e3 : 100 : a === 1 ? 10 : 1, (i = Math.round(l * (t.S + t.u))) >= 60 * l && (i = 0), r === "s" ? i === 0 ? "0" : "" + i / l : (s = xr(i, 2 + a), r === "ss" ? s.substr(0, 2) : "." + s.substr(2, r.length - 1))) : xr(t.S, r.length);
    case 90:
      switch (r) {
        case "[h]":
        case "[hh]":
          n = 24 * t.D + t.H;
          break;
        case "[m]":
        case "[mm]":
          n = 60 * (24 * t.D + t.H) + t.M;
          break;
        case "[s]":
        case "[ss]":
          n = 60 * (60 * (24 * t.D + t.H) + t.M) + (a == 0 ? Math.round(t.S + t.u) : t.S);
          break;
        default:
          throw "bad abstime format: " + r;
      }
      c = r.length === 3 ? 1 : 2;
      break;
    case 101:
      n = o, c = 1;
  }
  return c > 0 ? xr(n, c) : "";
}
function zr(e) {
  if (e.length <= 3) return e;
  for (var r = e.length % 3, t = e.substr(0, r); r != e.length; r += 3) t += (t.length > 0 ? "," : "") + e.substr(r, 3);
  return t;
}
var uc = /%/g;
function dc(e, r) {
  var t, a = e.indexOf("E") - e.indexOf(".") - 1;
  if (e.match(/^#+0.0E\+0$/)) {
    if (r == 0) return "0.0E+0";
    if (r < 0) return "-" + dc(e, -r);
    var n = e.indexOf(".");
    n === -1 && (n = e.indexOf("E"));
    var s = Math.floor(Math.log(r) * Math.LOG10E) % n;
    if (s < 0 && (s += n), (t = (r / Math.pow(10, s)).toPrecision(a + 1 + (n + s) % n)).indexOf("e") === -1) {
      var i = Math.floor(Math.log(r) * Math.LOG10E);
      for (t.indexOf(".") === -1 ? t = t.charAt(0) + "." + t.substr(1) + "E+" + (i - t.length + s) : t += "E+" + (i - s); t.substr(0, 2) === "0."; ) t = (t = t.charAt(0) + t.substr(2, n) + "." + t.substr(2 + n)).replace(/^0+([1-9])/, "$1").replace(/^0+\./, "0.");
      t = t.replace(/\+-/, "-");
    }
    t = t.replace(/^([+-]?)(\d*)\.(\d*)[Ee]/, function(l, o, c, f) {
      return o + c + f.substr(0, (n + s) % n) + "." + f.substr(s) + "E";
    });
  } else t = r.toExponential(a);
  return e.match(/E\+00$/) && t.match(/e[+-]\d$/) && (t = t.substr(0, t.length - 1) + "0" + t.charAt(t.length - 1)), e.match(/E\-/) && t.match(/e\+/) && (t = t.replace(/e\+/, "e")), t.replace("e", "E");
}
var pc = /# (\?+)( ?)\/( ?)(\d+)/, mc = /^#*0*\.([0#]+)/, vc = /\)[^)]*[0#]/, gc = /\(###\) ###\\?-####/;
function nr(e) {
  for (var r, t = "", a = 0; a != e.length; ++a) switch (r = e.charCodeAt(a)) {
    case 35:
      break;
    case 63:
      t += " ";
      break;
    case 48:
      t += "0";
      break;
    default:
      t += String.fromCharCode(r);
  }
  return t;
}
function zi(e, r) {
  var t = Math.pow(10, r);
  return "" + Math.round(e * t) / t;
}
function Hi(e, r) {
  var t = e - Math.floor(e), a = Math.pow(10, r);
  return r < ("" + Math.round(t * a)).length ? 0 : Math.round(t * a);
}
function vr(e, r, t) {
  if (e.charCodeAt(0) === 40 && !r.match(vc)) {
    var a = r.replace(/\( */, "").replace(/ \)/, "").replace(/\)/, "");
    return t >= 0 ? vr("n", a, t) : "(" + vr("n", a, -t) + ")";
  }
  if (r.charCodeAt(r.length - 1) === 44) return (function(d, g, m) {
    for (var v = g.length - 1; g.charCodeAt(v - 1) === 44; ) --v;
    return Gr(d, g.substr(0, v), m / Math.pow(10, 3 * (g.length - v)));
  })(e, r, t);
  if (r.indexOf("%") !== -1) return (function(d, g, m) {
    var v = g.replace(uc, ""), y = g.length - v.length;
    return Gr(d, v, m * Math.pow(10, 2 * y)) + Ze("%", y);
  })(e, r, t);
  if (r.indexOf("E") !== -1) return dc(r, t);
  if (r.charCodeAt(0) === 36) return "$" + vr(e, r.substr(r.charAt(1) == " " ? 2 : 1), t);
  var n, s, i, l, o = Math.abs(t), c = t < 0 ? "-" : "";
  if (r.match(/^00+$/)) return c + Aa(o, r.length);
  if (r.match(/^[#?]+$/)) return (n = Aa(t, 0)) === "0" && (n = ""), n.length > r.length ? n : nr(r.substr(0, r.length - n.length)) + n;
  if (s = r.match(pc)) return (function(d, g, m) {
    var v = parseInt(d[4], 10), y = Math.round(g * v), w = Math.floor(y / v), E = y - w * v, A = v;
    return m + (w === 0 ? "" : "" + w) + " " + (E === 0 ? Ze(" ", d[1].length + 1 + d[4].length) : Ws(E, d[1].length) + d[2] + "/" + d[3] + xr(A, d[4].length));
  })(s, o, c);
  if (r.match(/^#+0+$/)) return c + Aa(o, r.length - r.indexOf("0"));
  if (s = r.match(mc)) return n = zi(t, s[1].length).replace(/^([^\.]+)$/, "$1." + nr(s[1])).replace(/\.$/, "." + nr(s[1])).replace(/\.(\d*)$/, function(d, g) {
    return "." + g + Ze("0", nr(s[1]).length - g.length);
  }), r.indexOf("0.") !== -1 ? n : n.replace(/^0\./, ".");
  if (r = r.replace(/^#+([0.])/, "$1"), s = r.match(/^(0*)\.(#*)$/)) return c + zi(o, s[2].length).replace(/\.(\d*[1-9])0*$/, ".$1").replace(/^(-?\d*)$/, "$1.").replace(/^0\./, s[1].length ? "0." : ".");
  if (s = r.match(/^#{1,3},##0(\.?)$/)) return c + zr(Aa(o, 0));
  if (s = r.match(/^#,##0\.([#0]*0)$/)) return t < 0 ? "-" + vr(e, r, -t) : zr("" + (Math.floor(t) + (function(d, g) {
    return g < ("" + Math.round((d - Math.floor(d)) * Math.pow(10, g))).length ? 1 : 0;
  })(t, s[1].length))) + "." + xr(Hi(t, s[1].length), s[1].length);
  if (s = r.match(/^#,#*,#0/)) return vr(e, r.replace(/^#,#*,/, ""), t);
  if (s = r.match(/^([0#]+)(\\?-([0#]+))+$/)) return n = Fa(vr(e, r.replace(/[\\-]/g, ""), t)), i = 0, Fa(Fa(r.replace(/\\/g, "")).replace(/[0#]/g, function(d) {
    return i < n.length ? n.charAt(i++) : d === "0" ? "0" : "";
  }));
  if (r.match(gc)) return "(" + (n = vr(e, "##########", t)).substr(0, 3) + ") " + n.substr(3, 3) + "-" + n.substr(6);
  var f = "";
  if (s = r.match(/^([#0?]+)( ?)\/( ?)([#0?]+)/)) return i = Math.min(s[4].length, 7), l = Qn(o, Math.pow(10, i) - 1, !1), n = "" + c, (f = Gr("n", s[1], l[1])).charAt(f.length - 1) == " " && (f = f.substr(0, f.length - 1) + "0"), n += f + s[2] + "/" + s[3], (f = qn(l[2], i)).length < s[4].length && (f = nr(s[4].substr(s[4].length - f.length)) + f), n += f;
  if (s = r.match(/^# ([#0?]+)( ?)\/( ?)([#0?]+)/)) return i = Math.min(Math.max(s[1].length, s[4].length), 7), c + ((l = Qn(o, Math.pow(10, i) - 1, !0))[0] || (l[1] ? "" : "0")) + " " + (l[1] ? Ws(l[1], i) + s[2] + "/" + s[3] + qn(l[2], i) : Ze(" ", 2 * i + 1 + s[2].length + s[3].length));
  if (s = r.match(/^[#0?]+$/)) return n = Aa(t, 0), r.length <= n.length ? n : nr(r.substr(0, r.length - n.length)) + n;
  if (s = r.match(/^([#0?]+)\.([#0]+)$/)) {
    n = "" + t.toFixed(Math.min(s[2].length, 10)).replace(/([^0])0+$/, "$1"), i = n.indexOf(".");
    var u = r.indexOf(".") - i, h = r.length - n.length - u;
    return nr(r.substr(0, u) + n + r.substr(r.length - h));
  }
  if (s = r.match(/^00,000\.([#0]*0)$/)) return i = Hi(t, s[1].length), t < 0 ? "-" + vr(e, r, -t) : zr((function(d) {
    return d < 2147483647 && d > -2147483648 ? "" + (d >= 0 ? 0 | d : d - 1 | 0) : "" + Math.floor(d);
  })(t)).replace(/^\d,\d{3}$/, "0$&").replace(/^\d*$/, function(d) {
    return "00," + (d.length < 3 ? xr(0, 3 - d.length) : "") + d;
  }) + "." + xr(i, s[1].length);
  switch (r) {
    case "###,##0.00":
      return vr(e, "#,##0.00", t);
    case "###,###":
    case "##,###":
    case "#,###":
      var p = zr(Aa(o, 0));
      return p !== "0" ? c + p : "";
    case "###,###.00":
      return vr(e, "###,##0.00", t).replace(/^0\./, ".");
    case "#,###.00":
      return vr(e, "#,##0.00", t).replace(/^0\./, ".");
  }
  throw new Error("unsupported format |" + r + "|");
}
function bc(e, r) {
  var t, a = e.indexOf("E") - e.indexOf(".") - 1;
  if (e.match(/^#+0.0E\+0$/)) {
    if (r == 0) return "0.0E+0";
    if (r < 0) return "-" + bc(e, -r);
    var n = e.indexOf(".");
    n === -1 && (n = e.indexOf("E"));
    var s = Math.floor(Math.log(r) * Math.LOG10E) % n;
    if (s < 0 && (s += n), !(t = (r / Math.pow(10, s)).toPrecision(a + 1 + (n + s) % n)).match(/[Ee]/)) {
      var i = Math.floor(Math.log(r) * Math.LOG10E);
      t.indexOf(".") === -1 ? t = t.charAt(0) + "." + t.substr(1) + "E+" + (i - t.length + s) : t += "E+" + (i - s), t = t.replace(/\+-/, "-");
    }
    t = t.replace(/^([+-]?)(\d*)\.(\d*)[Ee]/, function(l, o, c, f) {
      return o + c + f.substr(0, (n + s) % n) + "." + f.substr(s) + "E";
    });
  } else t = r.toExponential(a);
  return e.match(/E\+00$/) && t.match(/e[+-]\d$/) && (t = t.substr(0, t.length - 1) + "0" + t.charAt(t.length - 1)), e.match(/E\-/) && t.match(/e\+/) && (t = t.replace(/e\+/, "e")), t.replace("e", "E");
}
function Rr(e, r, t) {
  if (e.charCodeAt(0) === 40 && !r.match(vc)) {
    var a = r.replace(/\( */, "").replace(/ \)/, "").replace(/\)/, "");
    return t >= 0 ? Rr("n", a, t) : "(" + Rr("n", a, -t) + ")";
  }
  if (r.charCodeAt(r.length - 1) === 44) return (function(d, g, m) {
    for (var v = g.length - 1; g.charCodeAt(v - 1) === 44; ) --v;
    return Gr(d, g.substr(0, v), m / Math.pow(10, 3 * (g.length - v)));
  })(e, r, t);
  if (r.indexOf("%") !== -1) return (function(d, g, m) {
    var v = g.replace(uc, ""), y = g.length - v.length;
    return Gr(d, v, m * Math.pow(10, 2 * y)) + Ze("%", y);
  })(e, r, t);
  if (r.indexOf("E") !== -1) return bc(r, t);
  if (r.charCodeAt(0) === 36) return "$" + Rr(e, r.substr(r.charAt(1) == " " ? 2 : 1), t);
  var n, s, i, l, o = Math.abs(t), c = t < 0 ? "-" : "";
  if (r.match(/^00+$/)) return c + xr(o, r.length);
  if (r.match(/^[#?]+$/)) return n = "" + t, t === 0 && (n = ""), n.length > r.length ? n : nr(r.substr(0, r.length - n.length)) + n;
  if (s = r.match(pc)) return (function(d, g, m) {
    return m + (g === 0 ? "" : "" + g) + Ze(" ", d[1].length + 2 + d[4].length);
  })(s, o, c);
  if (r.match(/^#+0+$/)) return c + xr(o, r.length - r.indexOf("0"));
  if (s = r.match(mc)) return n = (n = ("" + t).replace(/^([^\.]+)$/, "$1." + nr(s[1])).replace(/\.$/, "." + nr(s[1]))).replace(/\.(\d*)$/, function(d, g) {
    return "." + g + Ze("0", nr(s[1]).length - g.length);
  }), r.indexOf("0.") !== -1 ? n : n.replace(/^0\./, ".");
  if (r = r.replace(/^#+([0.])/, "$1"), s = r.match(/^(0*)\.(#*)$/)) return c + ("" + o).replace(/\.(\d*[1-9])0*$/, ".$1").replace(/^(-?\d*)$/, "$1.").replace(/^0\./, s[1].length ? "0." : ".");
  if (s = r.match(/^#{1,3},##0(\.?)$/)) return c + zr("" + o);
  if (s = r.match(/^#,##0\.([#0]*0)$/)) return t < 0 ? "-" + Rr(e, r, -t) : zr("" + t) + "." + Ze("0", s[1].length);
  if (s = r.match(/^#,#*,#0/)) return Rr(e, r.replace(/^#,#*,/, ""), t);
  if (s = r.match(/^([0#]+)(\\?-([0#]+))+$/)) return n = Fa(Rr(e, r.replace(/[\\-]/g, ""), t)), i = 0, Fa(Fa(r.replace(/\\/g, "")).replace(/[0#]/g, function(d) {
    return i < n.length ? n.charAt(i++) : d === "0" ? "0" : "";
  }));
  if (r.match(gc)) return "(" + (n = Rr(e, "##########", t)).substr(0, 3) + ") " + n.substr(3, 3) + "-" + n.substr(6);
  var f = "";
  if (s = r.match(/^([#0?]+)( ?)\/( ?)([#0?]+)/)) return i = Math.min(s[4].length, 7), l = Qn(o, Math.pow(10, i) - 1, !1), n = "" + c, (f = Gr("n", s[1], l[1])).charAt(f.length - 1) == " " && (f = f.substr(0, f.length - 1) + "0"), n += f + s[2] + "/" + s[3], (f = qn(l[2], i)).length < s[4].length && (f = nr(s[4].substr(s[4].length - f.length)) + f), n += f;
  if (s = r.match(/^# ([#0?]+)( ?)\/( ?)([#0?]+)/)) return i = Math.min(Math.max(s[1].length, s[4].length), 7), c + ((l = Qn(o, Math.pow(10, i) - 1, !0))[0] || (l[1] ? "" : "0")) + " " + (l[1] ? Ws(l[1], i) + s[2] + "/" + s[3] + qn(l[2], i) : Ze(" ", 2 * i + 1 + s[2].length + s[3].length));
  if (s = r.match(/^[#0?]+$/)) return n = "" + t, r.length <= n.length ? n : nr(r.substr(0, r.length - n.length)) + n;
  if (s = r.match(/^([#0]+)\.([#0]+)$/)) {
    n = "" + t.toFixed(Math.min(s[2].length, 10)).replace(/([^0])0+$/, "$1"), i = n.indexOf(".");
    var u = r.indexOf(".") - i, h = r.length - n.length - u;
    return nr(r.substr(0, u) + n + r.substr(r.length - h));
  }
  if (s = r.match(/^00,000\.([#0]*0)$/)) return t < 0 ? "-" + Rr(e, r, -t) : zr("" + t).replace(/^\d,\d{3}$/, "0$&").replace(/^\d*$/, function(d) {
    return "00," + (d.length < 3 ? xr(0, 3 - d.length) : "") + d;
  }) + "." + xr(0, s[1].length);
  switch (r) {
    case "###,###":
    case "##,###":
    case "#,###":
      var p = zr("" + o);
      return p !== "0" ? c + p : "";
    default:
      if (r.match(/\.[0#?]*$/)) return Rr(e, r.slice(0, r.lastIndexOf(".")), t) + nr(r.slice(r.lastIndexOf(".")));
  }
  throw new Error("unsupported format |" + r + "|");
}
function Gr(e, r, t) {
  return (0 | t) === t ? Rr(e, r, t) : vr(e, r, t);
}
var wc = /\[[HhMmSs\u0E0A\u0E19\u0E17]*\]/;
function ur(e) {
  for (var r = 0, t = "", a = ""; r < e.length; ) switch (t = e.charAt(r)) {
    case "G":
      Gn(e, r) && (r += 6), r++;
      break;
    case '"':
      for (; e.charCodeAt(++r) !== 34 && r < e.length; ) ;
      ++r;
      break;
    case "\\":
    case "_":
      r += 2;
      break;
    case "@":
      ++r;
      break;
    case "B":
    case "b":
      if (e.charAt(r + 1) === "1" || e.charAt(r + 1) === "2") return !0;
    case "M":
    case "D":
    case "Y":
    case "H":
    case "S":
    case "E":
    case "m":
    case "d":
    case "y":
    case "h":
    case "s":
    case "e":
    case "g":
      return !0;
    case "A":
    case "a":
    case "上":
      if (e.substr(r, 3).toUpperCase() === "A/P" || e.substr(r, 5).toUpperCase() === "AM/PM" || e.substr(r, 5).toUpperCase() === "上午/下午") return !0;
      ++r;
      break;
    case "[":
      for (a = t; e.charAt(r++) !== "]" && r < e.length; ) a += e.charAt(r);
      if (a.match(wc)) return !0;
      break;
    case ".":
    case "0":
    case "#":
      for (; r < e.length && ("0#?.,E+-%".indexOf(t = e.charAt(++r)) > -1 || t == "\\" && e.charAt(r + 1) == "-" && "0#".indexOf(e.charAt(r + 2)) > -1); ) ;
      break;
    case "?":
      for (; e.charAt(++r) === t; ) ;
      break;
    case "*":
      ++r, e.charAt(r) != " " && e.charAt(r) != "*" || ++r;
      break;
    case "(":
    case ")":
      ++r;
      break;
    case "1":
    case "2":
    case "3":
    case "4":
    case "5":
    case "6":
    case "7":
    case "8":
    case "9":
      for (; r < e.length && "0123456789".indexOf(e.charAt(++r)) > -1; ) ;
      break;
    default:
      ++r;
  }
  return !1;
}
var Vi = /\[(=|>[=]?|<[>=]?)(-?\d+(?:\.\d*)?)\]/;
function $i(e, r) {
  if (r == null) return !1;
  var t = parseFloat(r[2]);
  switch (r[1]) {
    case "=":
      if (e == t) return !0;
      break;
    case ">":
      if (e > t) return !0;
      break;
    case "<":
      if (e < t) return !0;
      break;
    case "<>":
      if (e != t) return !0;
      break;
    case ">=":
      if (e >= t) return !0;
      break;
    case "<=":
      if (e <= t) return !0;
  }
  return !1;
}
function Sf(e, r) {
  var t = (function(o) {
    for (var c = [], f = !1, u = 0, h = 0; u < o.length; ++u) switch (o.charCodeAt(u)) {
      case 34:
        f = !f;
        break;
      case 95:
      case 42:
      case 92:
        ++u;
        break;
      case 59:
        c[c.length] = o.substr(h, u - h), h = u + 1;
    }
    if (c[c.length] = o.substr(h), f === !0) throw new Error("Format |" + o + "| unterminated string ");
    return c;
  })(e), a = t.length, n = t[a - 1].indexOf("@");
  if (a < 4 && n > -1 && --a, t.length > 4) throw new Error("cannot find right format for |" + t.join("|") + "|");
  if (typeof r != "number") return [4, t.length === 4 || n > -1 ? t[t.length - 1] : "@"];
  switch (typeof r != "number" || isFinite(r) || (r = 0), t.length) {
    case 1:
      t = n > -1 ? ["General", "General", "General", t[0]] : [t[0], t[0], t[0], "@"];
      break;
    case 2:
      t = n > -1 ? [t[0], t[0], t[0], t[1]] : [t[0], t[1], t[0], "@"];
      break;
    case 3:
      t = n > -1 ? [t[0], t[1], t[0], t[2]] : [t[0], t[1], t[2], "@"];
  }
  var s = r > 0 ? t[0] : r < 0 ? t[1] : t[2];
  if (t[0].indexOf("[") === -1 && t[1].indexOf("[") === -1) return [a, s];
  if (t[0].match(/\[[=<>]/) != null || t[1].match(/\[[=<>]/) != null) {
    var i = t[0].match(Vi), l = t[1].match(Vi);
    return $i(r, i) ? [a, t[0]] : $i(r, l) ? [a, t[1]] : [a, t[i != null && l != null ? 2 : 1]];
  }
  return [a, s];
}
function lr(e, r, t) {
  t == null && (t = {});
  var a = "";
  switch (typeof e) {
    case "string":
      a = e == "m/d/yy" && t.dateNF ? t.dateNF : e;
      break;
    case "number":
      (a = e == 14 && t.dateNF ? t.dateNF : (t.table != null ? t.table : be)[e]) == null && (a = t.table && t.table[Wi[e]] || be[Wi[e]]), a == null && (a = kf[e] || "General");
  }
  if (Gn(a, 0)) return ma(r, t);
  r instanceof Date && (r = yt(r, t.date1904));
  var n = Sf(a, r);
  if (Gn(n[1])) return ma(r, t);
  if (r === !0) r = "TRUE";
  else if (r === !1) r = "FALSE";
  else {
    if (r === "" || r == null) return "";
    if (isNaN(r) && n[1].indexOf("0") > -1) return "#NUM!";
    if (!isFinite(r) && n[1].indexOf("0") > -1) return "#DIV/0!";
  }
  return (function(s, i, l, o) {
    for (var c, f, u, h = [], p = "", d = 0, g = "", m = "t", v = "H"; d < s.length; ) switch (g = s.charAt(d)) {
      case "G":
        if (!Gn(s, d)) throw new Error("unrecognized character " + g + " in " + s);
        h[h.length] = { t: "G", v: "General" }, d += 7;
        break;
      case '"':
        for (p = ""; (u = s.charCodeAt(++d)) !== 34 && d < s.length; ) p += String.fromCharCode(u);
        h[h.length] = { t: "t", v: p }, ++d;
        break;
      case "\\":
        var y = s.charAt(++d), w = y === "(" || y === ")" ? y : "t";
        h[h.length] = { t: w, v: y }, ++d;
        break;
      case "_":
        h[h.length] = { t: "t", v: " " }, d += 2;
        break;
      case "@":
        h[h.length] = { t: "T", v: i }, ++d;
        break;
      case "B":
      case "b":
        if (s.charAt(d + 1) === "1" || s.charAt(d + 1) === "2") {
          if (c == null && (c = Fr(i, l, s.charAt(d + 1) === "2")) == null) return "";
          h[h.length] = { t: "X", v: s.substr(d, 2) }, m = g, d += 2;
          break;
        }
      case "M":
      case "D":
      case "Y":
      case "H":
      case "S":
      case "E":
        g = g.toLowerCase();
      case "m":
      case "d":
      case "y":
      case "h":
      case "s":
      case "e":
      case "g":
        if (i < 0 || c == null && (c = Fr(i, l)) == null) return "";
        for (p = g; ++d < s.length && s.charAt(d).toLowerCase() === g; ) p += g;
        g === "m" && m.toLowerCase() === "h" && (g = "M"), g === "h" && (g = v), h[h.length] = { t: g, v: p }, m = g;
        break;
      case "A":
      case "a":
      case "上":
        var E = { t: g, v: g };
        if (c == null && (c = Fr(i, l)), s.substr(d, 3).toUpperCase() === "A/P" ? (c != null && (E.v = c.H >= 12 ? s.charAt(d + 2) : g), E.t = "T", v = "h", d += 3) : s.substr(d, 5).toUpperCase() === "AM/PM" ? (c != null && (E.v = c.H >= 12 ? "PM" : "AM"), E.t = "T", d += 5, v = "h") : s.substr(d, 5).toUpperCase() === "上午/下午" ? (c != null && (E.v = c.H >= 12 ? "下午" : "上午"), E.t = "T", d += 5, v = "h") : (E.t = "t", ++d), c == null && E.t === "T") return "";
        h[h.length] = E, m = g;
        break;
      case "[":
        for (p = g; s.charAt(d++) !== "]" && d < s.length; ) p += s.charAt(d);
        if (p.slice(-1) !== "]") throw 'unterminated "[" block: |' + p + "|";
        if (p.match(wc)) {
          if (c == null && (c = Fr(i, l)) == null) return "";
          h[h.length] = { t: "Z", v: p.toLowerCase() }, m = p.charAt(1);
        } else p.indexOf("$") > -1 && (p = (p.match(/\$([^-\[\]]*)/) || [])[1] || "$", ur(s) || (h[h.length] = { t: "t", v: p }));
        break;
      case ".":
        if (c != null) {
          for (p = g; ++d < s.length && (g = s.charAt(d)) === "0"; ) p += g;
          h[h.length] = { t: "s", v: p };
          break;
        }
      case "0":
      case "#":
        for (p = g; ++d < s.length && "0#?.,E+-%".indexOf(g = s.charAt(d)) > -1; ) p += g;
        h[h.length] = { t: "n", v: p };
        break;
      case "?":
        for (p = g; s.charAt(++d) === g; ) p += g;
        h[h.length] = { t: g, v: p }, m = g;
        break;
      case "*":
        ++d, s.charAt(d) != " " && s.charAt(d) != "*" || ++d;
        break;
      case "(":
      case ")":
        h[h.length] = { t: o === 1 ? "t" : g, v: g }, ++d;
        break;
      case "1":
      case "2":
      case "3":
      case "4":
      case "5":
      case "6":
      case "7":
      case "8":
      case "9":
        for (p = g; d < s.length && "0123456789".indexOf(s.charAt(++d)) > -1; ) p += s.charAt(d);
        h[h.length] = { t: "D", v: p };
        break;
      case " ":
        h[h.length] = { t: g, v: g }, ++d;
        break;
      case "$":
        h[h.length] = { t: "t", v: "$" }, ++d;
        break;
      default:
        if (",$-+/():!^&'~{}<>=€acfijklopqrtuvwxzP".indexOf(g) === -1) throw new Error("unrecognized character " + g + " in " + s);
        h[h.length] = { t: "t", v: g }, ++d;
    }
    var A, b, _ = 0, k = 0;
    for (d = h.length - 1, m = "t"; d >= 0; --d) switch (h[d].t) {
      case "h":
      case "H":
        h[d].t = v, m = "h", _ < 1 && (_ = 1);
        break;
      case "s":
        (A = h[d].v.match(/\.0+$/)) && (k = Math.max(k, A[0].length - 1), _ = 4), _ < 3 && (_ = 3);
      case "d":
      case "y":
      case "e":
        m = h[d].t;
        break;
      case "M":
        m = h[d].t, _ < 2 && (_ = 2);
        break;
      case "m":
        m === "s" && (h[d].t = "M", _ < 2 && (_ = 2));
        break;
      case "X":
        break;
      case "Z":
        _ < 1 && h[d].v.match(/[Hh]/) && (_ = 1), _ < 2 && h[d].v.match(/[Mm]/) && (_ = 2), _ < 3 && h[d].v.match(/[Ss]/) && (_ = 3);
    }
    switch (_) {
      case 0:
        break;
      case 1:
      case 2:
      case 3:
        c.u >= 0.5 && (c.u = 0, ++c.S), c.S >= 60 && (c.S = 0, ++c.M), c.M >= 60 && (c.M = 0, ++c.H), c.H >= 24 && (c.H = 0, ++c.D, (b = Fr(c.D)).u = c.u, b.S = c.S, b.M = c.M, b.H = c.H, c = b);
        break;
      case 4:
        switch (k) {
          case 1:
            c.u = Math.round(10 * c.u) / 10;
            break;
          case 2:
            c.u = Math.round(100 * c.u) / 100;
            break;
          case 3:
            c.u = Math.round(1e3 * c.u) / 1e3;
        }
        c.u >= 1 && (c.u = 0, ++c.S), c.S >= 60 && (c.S = 0, ++c.M), c.M >= 60 && (c.M = 0, ++c.H), c.H >= 24 && (c.H = 0, ++c.D, (b = Fr(c.D)).u = c.u, b.S = c.S, b.M = c.M, b.H = c.H, c = b);
    }
    var T, S = "";
    for (d = 0; d < h.length; ++d) switch (h[d].t) {
      case "t":
      case "T":
      case " ":
      case "D":
        break;
      case "X":
        h[d].v = "", h[d].t = ";";
        break;
      case "d":
      case "m":
      case "y":
      case "h":
      case "H":
      case "M":
      case "s":
      case "e":
      case "b":
      case "Z":
        h[d].v = _f(h[d].t.charCodeAt(0), h[d].v, c, k), h[d].t = "t";
        break;
      case "n":
      case "?":
        for (T = d + 1; h[T] != null && ((g = h[T].t) === "?" || g === "D" || (g === " " || g === "t") && h[T + 1] != null && (h[T + 1].t === "?" || h[T + 1].t === "t" && h[T + 1].v === "/") || h[d].t === "(" && (g === " " || g === "n" || g === ")") || g === "t" && (h[T].v === "/" || h[T].v === " " && h[T + 1] != null && h[T + 1].t == "?")); ) h[d].v += h[T].v, h[T] = { v: "", t: ";" }, ++T;
        S += h[d].v, d = T - 1;
        break;
      case "G":
        h[d].t = "t", h[d].v = ma(i, l);
    }
    var C, F, I = "";
    if (S.length > 0) {
      S.charCodeAt(0) == 40 ? (C = i < 0 && S.charCodeAt(0) === 45 ? -i : i, F = Gr("n", S, C)) : (F = Gr("n", S, C = i < 0 && o > 1 ? -i : i), C < 0 && h[0] && h[0].t == "t" && (F = F.substr(1), h[0].v = "-" + h[0].v)), T = F.length - 1;
      var P = h.length;
      for (d = 0; d < h.length; ++d) if (h[d] != null && h[d].t != "t" && h[d].v.indexOf(".") > -1) {
        P = d;
        break;
      }
      var W = h.length;
      if (P === h.length && F.indexOf("E") === -1) {
        for (d = h.length - 1; d >= 0; --d) h[d] != null && "n?".indexOf(h[d].t) !== -1 && (T >= h[d].v.length - 1 ? (T -= h[d].v.length, h[d].v = F.substr(T + 1, h[d].v.length)) : T < 0 ? h[d].v = "" : (h[d].v = F.substr(0, T + 1), T = -1), h[d].t = "t", W = d);
        T >= 0 && W < h.length && (h[W].v = F.substr(0, T + 1) + h[W].v);
      } else if (P !== h.length && F.indexOf("E") === -1) {
        for (T = F.indexOf(".") - 1, d = P; d >= 0; --d) if (h[d] != null && "n?".indexOf(h[d].t) !== -1) {
          for (f = h[d].v.indexOf(".") > -1 && d === P ? h[d].v.indexOf(".") - 1 : h[d].v.length - 1, I = h[d].v.substr(f + 1); f >= 0; --f) T >= 0 && (h[d].v.charAt(f) === "0" || h[d].v.charAt(f) === "#") && (I = F.charAt(T--) + I);
          h[d].v = I, h[d].t = "t", W = d;
        }
        for (T >= 0 && W < h.length && (h[W].v = F.substr(0, T + 1) + h[W].v), T = F.indexOf(".") + 1, d = P; d < h.length; ++d) if (h[d] != null && ("n?(".indexOf(h[d].t) !== -1 || d === P)) {
          for (f = h[d].v.indexOf(".") > -1 && d === P ? h[d].v.indexOf(".") + 1 : 0, I = h[d].v.substr(0, f); f < h[d].v.length; ++f) T < F.length && (I += F.charAt(T++));
          h[d].v = I, h[d].t = "t", W = d;
        }
      }
    }
    for (d = 0; d < h.length; ++d) h[d] != null && "n?".indexOf(h[d].t) > -1 && (C = o > 1 && i < 0 && d > 0 && h[d - 1].v === "-" ? -i : i, h[d].v = Gr(h[d].t, h[d].v, C), h[d].t = "t");
    var U = "";
    for (d = 0; d !== h.length; ++d) h[d] != null && (U += h[d].v);
    return U;
  })(n[1], r, t, n[0]);
}
function ii(e, r) {
  if (typeof r != "number") {
    r = +r || -1;
    for (var t = 0; t < 392; ++t) if (be[t] != null) {
      if (be[t] == e) {
        r = t;
        break;
      }
    } else r < 0 && (r = t);
    r < 0 && (r = 391);
  }
  return be[r] = e, r;
}
function Va(e) {
  for (var r = 0; r != 392; ++r) e[r] !== void 0 && ii(e[r], r);
}
function xa() {
  var e;
  e || (e = {}), e[0] = "General", e[1] = "0", e[2] = "0.00", e[3] = "#,##0", e[4] = "#,##0.00", e[9] = "0%", e[10] = "0.00%", e[11] = "0.00E+00", e[12] = "# ?/?", e[13] = "# ??/??", e[14] = "m/d/yy", e[15] = "d-mmm-yy", e[16] = "d-mmm", e[17] = "mmm-yy", e[18] = "h:mm AM/PM", e[19] = "h:mm:ss AM/PM", e[20] = "h:mm", e[21] = "h:mm:ss", e[22] = "m/d/yy h:mm", e[37] = "#,##0 ;(#,##0)", e[38] = "#,##0 ;[Red](#,##0)", e[39] = "#,##0.00;(#,##0.00)", e[40] = "#,##0.00;[Red](#,##0.00)", e[45] = "mm:ss", e[46] = "[h]:mm:ss", e[47] = "mmss.0", e[48] = "##0.0E+0", e[49] = "@", e[56] = '"上午/下午 "hh"時"mm"分"ss"秒 "', be = e;
}
var Tc = { format: lr, load: ii, _table: be, load_table: Va, parse_date_code: Fr, is_date: ur, get_table: function() {
  return Tc._table = be;
} }, xf = { 5: '"$"#,##0_);\\("$"#,##0\\)', 6: '"$"#,##0_);[Red]\\("$"#,##0\\)', 7: '"$"#,##0.00_);\\("$"#,##0.00\\)', 8: '"$"#,##0.00_);[Red]\\("$"#,##0.00\\)', 23: "General", 24: "General", 25: "General", 26: "General", 27: "m/d/yy", 28: "m/d/yy", 29: "m/d/yy", 30: "m/d/yy", 31: "m/d/yy", 32: "h:mm:ss", 33: "h:mm:ss", 34: "h:mm:ss", 35: "h:mm:ss", 36: "m/d/yy", 41: '_(* #,##0_);_(* (#,##0);_(* "-"_);_(@_)', 42: '_("$"* #,##0_);_("$"* (#,##0);_("$"* "-"_);_(@_)', 43: '_(* #,##0.00_);_(* (#,##0.00);_(* "-"??_);_(@_)', 44: '_("$"* #,##0.00_);_("$"* (#,##0.00);_("$"* "-"??_);_(@_)', 50: "m/d/yy", 51: "m/d/yy", 52: "m/d/yy", 53: "m/d/yy", 54: "m/d/yy", 55: "m/d/yy", 56: "m/d/yy", 57: "m/d/yy", 58: "m/d/yy", 59: "0", 60: "0.00", 61: "#,##0", 62: "#,##0.00", 63: '"$"#,##0_);\\("$"#,##0\\)', 64: '"$"#,##0_);[Red]\\("$"#,##0\\)', 65: '"$"#,##0.00_);\\("$"#,##0.00\\)', 66: '"$"#,##0.00_);[Red]\\("$"#,##0.00\\)', 67: "0%", 68: "0.00%", 69: "# ?/?", 70: "# ??/??", 71: "m/d/yy", 72: "m/d/yy", 73: "d-mmm-yy", 74: "d-mmm", 75: "mmm-yy", 76: "h:mm", 77: "h:mm:ss", 78: "m/d/yy h:mm", 79: "mm:ss", 80: "[h]:mm:ss", 81: "mmss.0" }, Fn = /[dD]+|[mM]+|[yYeE]+|[Hh]+|[Ss]+/g, Af = { "d.m": "d\\.m" };
function Zr(e, r) {
  return ii(Af[e] || e, r);
}
var Hr, Gi = (function() {
  var e = {};
  e.version = "1.2.0";
  var r = (function() {
    for (var y = 0, w = new Array(256), E = 0; E != 256; ++E) y = 1 & (y = 1 & (y = 1 & (y = 1 & (y = 1 & (y = 1 & (y = 1 & (y = 1 & (y = E) ? -306674912 ^ y >>> 1 : y >>> 1) ? -306674912 ^ y >>> 1 : y >>> 1) ? -306674912 ^ y >>> 1 : y >>> 1) ? -306674912 ^ y >>> 1 : y >>> 1) ? -306674912 ^ y >>> 1 : y >>> 1) ? -306674912 ^ y >>> 1 : y >>> 1) ? -306674912 ^ y >>> 1 : y >>> 1) ? -306674912 ^ y >>> 1 : y >>> 1, w[E] = y;
    return typeof Int32Array < "u" ? new Int32Array(w) : w;
  })(), t = (function(y) {
    var w = 0, E = 0, A = 0, b = typeof Int32Array < "u" ? new Int32Array(4096) : new Array(4096);
    for (A = 0; A != 256; ++A) b[A] = y[A];
    for (A = 0; A != 256; ++A) for (E = y[A], w = 256 + A; w < 4096; w += 256) E = b[w] = E >>> 8 ^ y[255 & E];
    var _ = [];
    for (A = 1; A != 16; ++A) _[A - 1] = typeof Int32Array < "u" && typeof b.subarray == "function" ? b.subarray(256 * A, 256 * A + 256) : b.slice(256 * A, 256 * A + 256);
    return _;
  })(r), a = t[0], n = t[1], s = t[2], i = t[3], l = t[4], o = t[5], c = t[6], f = t[7], u = t[8], h = t[9], p = t[10], d = t[11], g = t[12], m = t[13], v = t[14];
  return e.table = r, e.bstr = function(y, w) {
    for (var E = -1 ^ w, A = 0, b = y.length; A < b; ) E = E >>> 8 ^ r[255 & (E ^ y.charCodeAt(A++))];
    return ~E;
  }, e.buf = function(y, w) {
    for (var E = -1 ^ w, A = y.length - 15, b = 0; b < A; ) E = v[y[b++] ^ 255 & E] ^ m[y[b++] ^ E >> 8 & 255] ^ g[y[b++] ^ E >> 16 & 255] ^ d[y[b++] ^ E >>> 24] ^ p[y[b++]] ^ h[y[b++]] ^ u[y[b++]] ^ f[y[b++]] ^ c[y[b++]] ^ o[y[b++]] ^ l[y[b++]] ^ i[y[b++]] ^ s[y[b++]] ^ n[y[b++]] ^ a[y[b++]] ^ r[y[b++]];
    for (A += 15; b < A; ) E = E >>> 8 ^ r[255 & (E ^ y[b++])];
    return ~E;
  }, e.str = function(y, w) {
    for (var E = -1 ^ w, A = 0, b = y.length, _ = 0, k = 0; A < b; ) (_ = y.charCodeAt(A++)) < 128 ? E = E >>> 8 ^ r[255 & (E ^ _)] : _ < 2048 ? E = (E = E >>> 8 ^ r[255 & (E ^ (192 | _ >> 6 & 31))]) >>> 8 ^ r[255 & (E ^ (128 | 63 & _))] : _ >= 55296 && _ < 57344 ? (_ = 64 + (1023 & _), k = 1023 & y.charCodeAt(A++), E = (E = (E = (E = E >>> 8 ^ r[255 & (E ^ (240 | _ >> 8 & 7))]) >>> 8 ^ r[255 & (E ^ (128 | _ >> 2 & 63))]) >>> 8 ^ r[255 & (E ^ (128 | k >> 6 & 15 | (3 & _) << 4))]) >>> 8 ^ r[255 & (E ^ (128 | 63 & k))]) : E = (E = (E = E >>> 8 ^ r[255 & (E ^ (224 | _ >> 12 & 15))]) >>> 8 ^ r[255 & (E ^ (128 | _ >> 6 & 63))]) >>> 8 ^ r[255 & (E ^ (128 | 63 & _))];
    return ~E;
  }, e;
})(), Ee = (function() {
  var e, r = {};
  function t(x) {
    if (x.charAt(x.length - 1) == "/") return x.slice(0, -1).indexOf("/") === -1 ? x : t(x.slice(0, -1));
    var N = x.lastIndexOf("/");
    return N === -1 ? x : x.slice(0, N + 1);
  }
  function a(x) {
    if (x.charAt(x.length - 1) == "/") return a(x.slice(0, -1));
    var N = x.lastIndexOf("/");
    return N === -1 ? x : x.slice(N + 1);
  }
  function n(x, N) {
    typeof N == "string" && (N = new Date(N));
    var O = N.getHours();
    O = (O = O << 6 | N.getMinutes()) << 5 | N.getSeconds() >>> 1, x.write_shift(2, O);
    var L = N.getFullYear() - 1980;
    L = (L = L << 4 | N.getMonth() + 1) << 5 | N.getDate(), x.write_shift(2, L);
  }
  function s(x) {
    Ft(x, 0);
    for (var N = {}, O = 0; x.l <= x.length - 4; ) {
      var L = x.read_shift(2), D = x.read_shift(2), M = x.l + D, j = {};
      switch (L) {
        case 21589:
          1 & (O = x.read_shift(1)) && (j.mtime = x.read_shift(4)), D > 5 && (2 & O && (j.atime = x.read_shift(4)), 4 & O && (j.ctime = x.read_shift(4))), j.mtime && (j.mt = new Date(1e3 * j.mtime));
          break;
        case 1:
          var q = x.read_shift(4), X = x.read_shift(4);
          j.usz = X * Math.pow(2, 32) + q, q = x.read_shift(4), X = x.read_shift(4), j.csz = X * Math.pow(2, 32) + q;
      }
      x.l = M, N[L] = j;
    }
    return N;
  }
  function i() {
    return e || (e = Hr);
  }
  function l(x, N) {
    if (x[0] == 80 && x[1] == 75) return Ie(x, N);
    if ((32 | x[0]) == 109 && (32 | x[1]) == 105) return (function(ye, xe) {
      if (b(ye.slice(0, 13)).toLowerCase() != "mime-version:") throw new Error("Unsupported MAD header");
      var _e = xe && xe.root || "", me = (Ve && Buffer.isBuffer(ye) ? ye.toString("binary") : b(ye)).split(`\r
`), Fe = 0, Re = "";
      for (Fe = 0; Fe < me.length; ++Fe) if (Re = me[Fe], /^Content-Location:/i.test(Re) && (Re = Re.slice(Re.indexOf("file")), _e || (_e = Re.slice(0, Re.lastIndexOf("/") + 1)), Re.slice(0, _e.length) != _e)) for (; _e.length > 0 && (_e = (_e = _e.slice(0, _e.length - 1)).slice(0, _e.lastIndexOf("/") + 1), Re.slice(0, _e.length) != _e); ) ;
      var Mt = (me[1] || "").match(/boundary="(.*?)"/);
      if (!Mt) throw new Error("MAD cannot find boundary");
      var nt = "--" + (Mt[1] || ""), Ht = [], Ae = [], vt = { FileIndex: Ht, FullPaths: Ae };
      h(vt);
      var Gt, dr = 0;
      for (Fe = 0; Fe < me.length; ++Fe) {
        var Jr = me[Fe];
        Jr !== nt && Jr !== nt + "--" || (dr++ && rt(vt, me.slice(Gt, Fe), _e), Gt = Fe);
      }
      return vt;
    })(x, N);
    if (x.length < 512) throw new Error("CFB file size " + x.length + " < 512");
    var O, L, D, M, j, q, X = 512, re = [], ae = x.slice(0, 512);
    Ft(ae, 0);
    var we = (function(ye) {
      if (ye[ye.l] == 80 && ye[ye.l + 1] == 75) return [0, 0];
      ye.chk(y, "Header Signature: "), ye.l += 16;
      var xe = ye.read_shift(2, "u");
      return [ye.read_shift(2, "u"), xe];
    })(ae);
    switch (O = we[0]) {
      case 3:
        X = 512;
        break;
      case 4:
        X = 4096;
        break;
      case 0:
        if (we[1] == 0) return Ie(x, N);
      default:
        throw new Error("Major Version: Expected 3 or 4 saw " + O);
    }
    X !== 512 && Ft(ae = x.slice(0, X), 28);
    var de = x.slice(0, X);
    (function(ye, xe) {
      var _e = 9;
      switch (ye.l += 2, _e = ye.read_shift(2)) {
        case 9:
          if (xe != 3) throw new Error("Sector Shift: Expected 9 saw " + _e);
          break;
        case 12:
          if (xe != 4) throw new Error("Sector Shift: Expected 12 saw " + _e);
          break;
        default:
          throw new Error("Sector Shift: Expected 9 or 12 saw " + _e);
      }
      ye.chk("0600", "Mini Sector Shift: "), ye.chk("000000000000", "Reserved: ");
    })(ae, O);
    var oe = ae.read_shift(4, "i");
    if (O === 3 && oe !== 0) throw new Error("# Directory Sectors: Expected 0 saw " + oe);
    ae.l += 4, M = ae.read_shift(4, "i"), ae.l += 4, ae.chk("00100000", "Mini Stream Cutoff Size: "), j = ae.read_shift(4, "i"), L = ae.read_shift(4, "i"), q = ae.read_shift(4, "i"), D = ae.read_shift(4, "i");
    for (var Se = -1, He = 0; He < 109 && !((Se = ae.read_shift(4, "i")) < 0); ++He) re[He] = Se;
    var Le = (function(ye, xe) {
      for (var _e = Math.ceil(ye.length / xe) - 1, me = [], Fe = 1; Fe < _e; ++Fe) me[Fe - 1] = ye.slice(Fe * xe, (Fe + 1) * xe);
      return me[_e - 1] = ye.slice(_e * xe), me;
    })(x, X);
    c(q, D, Le, X, re);
    var Oe = (function(ye, xe, _e, me) {
      var Fe = ye.length, Re = [], Mt = [], nt = [], Ht = [], Ae = me - 1, vt = 0, Gt = 0, dr = 0, Jr = 0;
      for (vt = 0; vt < Fe; ++vt) if (nt = [], (dr = vt + xe) >= Fe && (dr -= Fe), !Mt[dr]) {
        Ht = [];
        var dt = [];
        for (Gt = dr; Gt >= 0; ) {
          dt[Gt] = !0, Mt[Gt] = !0, nt[nt.length] = Gt, Ht.push(ye[Gt]);
          var Qe = _e[Math.floor(4 * Gt / me)];
          if (me < 4 + (Jr = 4 * Gt & Ae)) throw new Error("FAT boundary crossed: " + Gt + " 4 " + me);
          if (!ye[Qe] || dt[Gt = la(ye[Qe], Jr)]) break;
        }
        Re[dr] = { nodes: nt, data: ro([Ht]) };
      }
      return Re;
    })(Le, M, re, X);
    M < Oe.length && (Oe[M].name = "!Directory"), L > 0 && j !== v && (Oe[j].name = "!MiniFAT"), Oe[re[0]].name = "!FAT", Oe.fat_addrs = re, Oe.ssz = X;
    var le = [], Ke = [], lt = [];
    (function(ye, xe, _e, me, Fe, Re, Mt, nt) {
      for (var Ht, Ae = 0, vt = me.length ? 2 : 0, Gt = xe[ye].data, dr = 0, Jr = 0; dr < Gt.length; dr += 128) {
        var dt = Gt.slice(dr, dr + 128);
        Ft(dt, 64), Jr = dt.read_shift(2), Ht = ds(dt, 0, Jr - vt), me.push(Ht);
        var Qe = { name: Ht, type: dt.read_shift(1), color: dt.read_shift(1), L: dt.read_shift(4, "i"), R: dt.read_shift(4, "i"), C: dt.read_shift(4, "i"), clsid: dt.read_shift(16), state: dt.read_shift(4, "i"), start: 0, size: 0 };
        dt.read_shift(2) + dt.read_shift(2) + dt.read_shift(2) + dt.read_shift(2) !== 0 && (Qe.ct = u(dt, dt.l - 8)), dt.read_shift(2) + dt.read_shift(2) + dt.read_shift(2) + dt.read_shift(2) !== 0 && (Qe.mt = u(dt, dt.l - 8)), Qe.start = dt.read_shift(4, "i"), Qe.size = dt.read_shift(4, "i"), Qe.size < 0 && Qe.start < 0 && (Qe.size = Qe.type = 0, Qe.start = v, Qe.name = ""), Qe.type === 5 ? (Ae = Qe.start, Fe > 0 && Ae !== v && (xe[Ae].name = "!StreamData")) : Qe.size >= 4096 ? (Qe.storage = "fat", xe[Qe.start] === void 0 && (xe[Qe.start] = f(_e, Qe.start, xe.fat_addrs, xe.ssz)), xe[Qe.start].name = Qe.name, Qe.content = xe[Qe.start].data.slice(0, Qe.size)) : (Qe.storage = "minifat", Qe.size < 0 ? Qe.size = 0 : Ae !== v && Qe.start !== v && xe[Ae] && (Qe.content = o(Qe, xe[Ae].data, (xe[nt] || {}).data))), Qe.content && Ft(Qe.content, 0), Re[Ht] = Qe, Mt.push(Qe);
      }
    })(M, Oe, Le, le, L, {}, Ke, j), (function(ye, xe, _e) {
      for (var me = 0, Fe = 0, Re = 0, Mt = 0, nt = 0, Ht = _e.length, Ae = [], vt = []; me < Ht; ++me) Ae[me] = vt[me] = me, xe[me] = _e[me];
      for (; nt < vt.length; ++nt) Fe = ye[me = vt[nt]].L, Re = ye[me].R, Mt = ye[me].C, Ae[me] === me && (Fe !== -1 && Ae[Fe] !== Fe && (Ae[me] = Ae[Fe]), Re !== -1 && Ae[Re] !== Re && (Ae[me] = Ae[Re])), Mt !== -1 && (Ae[Mt] = me), Fe !== -1 && me != Ae[me] && (Ae[Fe] = Ae[me], vt.lastIndexOf(Fe) < nt && vt.push(Fe)), Re !== -1 && me != Ae[me] && (Ae[Re] = Ae[me], vt.lastIndexOf(Re) < nt && vt.push(Re));
      for (me = 1; me < Ht; ++me) Ae[me] === me && (Re !== -1 && Ae[Re] !== Re ? Ae[me] = Ae[Re] : Fe !== -1 && Ae[Fe] !== Fe && (Ae[me] = Ae[Fe]));
      for (me = 1; me < Ht; ++me) if (ye[me].type !== 0) {
        if ((nt = me) != Ae[nt]) do
          nt = Ae[nt], xe[me] = xe[nt] + "/" + xe[me];
        while (nt !== 0 && Ae[nt] !== -1 && nt != Ae[nt]);
        Ae[me] = -1;
      }
      for (xe[0] += "/", me = 1; me < Ht; ++me) ye[me].type !== 2 && (xe[me] += "/");
    })(Ke, lt, le), le.shift();
    var Tt = { FileIndex: Ke, FullPaths: lt };
    return N && N.raw && (Tt.raw = { header: de, sectors: Le }), Tt;
  }
  function o(x, N, O) {
    for (var L = x.start, D = x.size, M = [], j = L; O && D > 0 && j >= 0; ) M.push(N.slice(j * m, j * m + m)), D -= m, j = la(O, 4 * j);
    return M.length === 0 ? V(0) : xt(M).slice(0, x.size);
  }
  function c(x, N, O, L, D) {
    var M = v;
    if (x === v) {
      if (N !== 0) throw new Error("DIFAT chain shorter than expected");
    } else if (x !== -1) {
      var j = O[x], q = (L >>> 2) - 1;
      if (!j) return;
      for (var X = 0; X < q && (M = la(j, 4 * X)) !== v; ++X) D.push(M);
      N >= 1 && c(la(j, L - 4), N - 1, O, L, D);
    }
  }
  function f(x, N, O, L, D) {
    var M = [], j = [];
    D || (D = []);
    var q = L - 1, X = 0, re = 0;
    for (X = N; X >= 0; ) {
      D[X] = !0, M[M.length] = X, j.push(x[X]);
      var ae = O[Math.floor(4 * X / L)];
      if (L < 4 + (re = 4 * X & q)) throw new Error("FAT boundary crossed: " + X + " 4 " + L);
      if (!x[ae]) break;
      X = la(x[ae], re);
    }
    return { nodes: M, data: ro([j]) };
  }
  function u(x, N) {
    return new Date(1e3 * (Bt(x, N + 4) / 1e7 * Math.pow(2, 32) + Bt(x, N) / 1e7 - 11644473600));
  }
  function h(x, N) {
    var O = N || {}, L = O.root || "Root Entry";
    if (x.FullPaths || (x.FullPaths = []), x.FileIndex || (x.FileIndex = []), x.FullPaths.length !== x.FileIndex.length) throw new Error("inconsistent CFB structure");
    x.FullPaths.length === 0 && (x.FullPaths[0] = L + "/", x.FileIndex[0] = { name: L, type: 5 }), O.CLSID && (x.FileIndex[0].clsid = O.CLSID), (function(D) {
      var M = "Sh33tJ5";
      if (!Ee.find(D, "/" + M)) {
        var j = V(4);
        j[0] = 55, j[1] = j[3] = 50, j[2] = 54, D.FileIndex.push({ name: M, type: 2, content: j, size: 4, L: 69, R: 69, C: 69 }), D.FullPaths.push(D.FullPaths[0] + M), p(D);
      }
    })(x);
  }
  function p(x, N) {
    h(x);
    for (var O = !1, L = !1, D = x.FullPaths.length - 1; D >= 0; --D) {
      var M = x.FileIndex[D];
      switch (M.type) {
        case 0:
          L ? O = !0 : (x.FileIndex.pop(), x.FullPaths.pop());
          break;
        case 1:
        case 2:
        case 5:
          L = !0, isNaN(M.R * M.L * M.C) && (O = !0), M.R > -1 && M.L > -1 && M.R == M.L && (O = !0);
          break;
        default:
          O = !0;
      }
    }
    if (O || N) {
      var j = new Date(1987, 1, 19), q = 0, X = Object.create ? /* @__PURE__ */ Object.create(null) : {}, re = [];
      for (D = 0; D < x.FullPaths.length; ++D) X[x.FullPaths[D]] = !0, x.FileIndex[D].type !== 0 && re.push([x.FullPaths[D], x.FileIndex[D]]);
      for (D = 0; D < re.length; ++D) {
        var ae = t(re[D][0]);
        for (L = X[ae]; !L; ) {
          for (; t(ae) && !X[t(ae)]; ) ae = t(ae);
          re.push([ae, { name: a(ae).replace("/", ""), type: 1, clsid: E, ct: j, mt: j, content: null }]), X[ae] = !0, L = X[ae = t(re[D][0])];
        }
      }
      for (re.sort(function(oe, Se) {
        return (function(He, Le) {
          for (var Oe = He.split("/"), le = Le.split("/"), Ke = 0, lt = 0, Tt = Math.min(Oe.length, le.length); Ke < Tt; ++Ke) {
            if (lt = Oe[Ke].length - le[Ke].length) return lt;
            if (Oe[Ke] != le[Ke]) return Oe[Ke] < le[Ke] ? -1 : 1;
          }
          return Oe.length - le.length;
        })(oe[0], Se[0]);
      }), x.FullPaths = [], x.FileIndex = [], D = 0; D < re.length; ++D) x.FullPaths[D] = re[D][0], x.FileIndex[D] = re[D][1];
      for (D = 0; D < re.length; ++D) {
        var we = x.FileIndex[D], de = x.FullPaths[D];
        if (we.name = a(de).replace("/", ""), we.L = we.R = we.C = -(we.color = 1), we.size = we.content ? we.content.length : 0, we.start = 0, we.clsid = we.clsid || E, D === 0) we.C = re.length > 1 ? 1 : -1, we.size = 0, we.type = 5;
        else if (de.slice(-1) == "/") {
          for (q = D + 1; q < re.length && t(x.FullPaths[q]) != de; ++q) ;
          for (we.C = q >= re.length ? -1 : q, q = D + 1; q < re.length && t(x.FullPaths[q]) != t(de); ++q) ;
          we.R = q >= re.length ? -1 : q, we.type = 1;
        } else t(x.FullPaths[D + 1] || "") == t(de) && (we.R = D + 1), we.type = 2;
      }
    }
  }
  function d(x, N) {
    var O = N || {};
    if (O.fileType == "mad") return (function(oe, Se) {
      for (var He = Se || {}, Le = He.boundary || "SheetJS", Oe = ["MIME-Version: 1.0", 'Content-Type: multipart/related; boundary="' + (Le = "------=" + Le).slice(2) + '"', "", "", ""], le = oe.FullPaths[0], Ke = le, lt = oe.FileIndex[0], Tt = 1; Tt < oe.FullPaths.length; ++Tt) if (Ke = oe.FullPaths[Tt].slice(le.length), (lt = oe.FileIndex[Tt]).size && lt.content && Ke != "Sh33tJ5") {
        Ke = Ke.replace(/[\x00-\x08\x0B\x0C\x0E-\x1F\x7E-\xFF]/g, function(nt) {
          return "_x" + nt.charCodeAt(0).toString(16) + "_";
        }).replace(/[\u0080-\uFFFF]/g, function(nt) {
          return "_u" + nt.charCodeAt(0).toString(16) + "_";
        });
        for (var ye = lt.content, xe = Ve && Buffer.isBuffer(ye) ? ye.toString("binary") : b(ye), _e = 0, me = Math.min(1024, xe.length), Fe = 0, Re = 0; Re <= me; ++Re) (Fe = xe.charCodeAt(Re)) >= 32 && Fe < 128 && ++_e;
        var Mt = _e >= 4 * me / 5;
        Oe.push(Le), Oe.push("Content-Location: " + (He.root || "file:///C:/SheetJS/") + Ke), Oe.push("Content-Transfer-Encoding: " + (Mt ? "quoted-printable" : "base64")), Oe.push("Content-Type: " + at(lt, Ke)), Oe.push(""), Oe.push(Mt ? Te(xe) : ct(xe));
      }
      return Oe.push(Le + `--\r
`), Oe.join(`\r
`);
    })(x, O);
    if (p(x), O.fileType === "zip") return (function(oe, Se) {
      var He = Se || {}, Le = [], Oe = [], le = V(1), Ke = He.compression ? 8 : 0, lt = 0, Tt = 0, ye = 0, xe = 0, _e = 0, me = oe.FullPaths[0], Fe = me, Re = oe.FileIndex[0], Mt = [], nt = 0;
      for (Tt = 1; Tt < oe.FullPaths.length; ++Tt) if (Fe = oe.FullPaths[Tt].slice(me.length), (Re = oe.FileIndex[Tt]).size && Re.content && (!Array.isArray(Re.content) || Re.content.length != 0) && Fe != "Sh33tJ5") {
        var Ht = xe, Ae = V(Fe.length);
        for (ye = 0; ye < Fe.length; ++ye) Ae.write_shift(1, 127 & Fe.charCodeAt(ye));
        Ae = Ae.slice(0, Ae.l), Mt[_e] = typeof Re.content == "string" ? Gi.bstr(Re.content, 0) : Gi.buf(Re.content, 0);
        var vt = typeof Re.content == "string" ? sr(Re.content) : Re.content;
        Ke == 8 && (vt = _(vt)), (le = V(30)).write_shift(4, 67324752), le.write_shift(2, 20), le.write_shift(2, lt), le.write_shift(2, Ke), Re.mt ? n(le, Re.mt) : le.write_shift(4, 0), le.write_shift(-4, Mt[_e]), le.write_shift(4, vt.length), le.write_shift(4, Re.content.length), le.write_shift(2, Ae.length), le.write_shift(2, 0), xe += le.length, Le.push(le), xe += Ae.length, Le.push(Ae), xe += vt.length, Le.push(vt), (le = V(46)).write_shift(4, 33639248), le.write_shift(2, 0), le.write_shift(2, 20), le.write_shift(2, lt), le.write_shift(2, Ke), le.write_shift(4, 0), le.write_shift(-4, Mt[_e]), le.write_shift(4, vt.length), le.write_shift(4, Re.content.length), le.write_shift(2, Ae.length), le.write_shift(2, 0), le.write_shift(2, 0), le.write_shift(2, 0), le.write_shift(2, 0), le.write_shift(4, 0), le.write_shift(4, Ht), nt += le.l, Oe.push(le), nt += Ae.length, Oe.push(Ae), ++_e;
      }
      return le = V(22), le.write_shift(4, 101010256), le.write_shift(2, 0), le.write_shift(2, 0), le.write_shift(2, _e), le.write_shift(2, _e), le.write_shift(4, nt), le.write_shift(4, xe), le.write_shift(2, 0), xt([xt(Le), xt(Oe), le]);
    })(x, O);
    var L = (function(oe) {
      for (var Se = 0, He = 0, Le = 0; Le < oe.FileIndex.length; ++Le) {
        var Oe = oe.FileIndex[Le];
        if (Oe.content) {
          var le = Oe.content.length;
          le > 0 && (le < 4096 ? Se += le + 63 >> 6 : He += le + 511 >> 9);
        }
      }
      for (var Ke = oe.FullPaths.length + 3 >> 2, lt = Se + 127 >> 7, Tt = (Se + 7 >> 3) + He + Ke + lt, ye = Tt + 127 >> 7, xe = ye <= 109 ? 0 : Math.ceil((ye - 109) / 127); Tt + ye + xe + 127 >> 7 > ye; ) xe = ++ye <= 109 ? 0 : Math.ceil((ye - 109) / 127);
      var _e = [1, xe, ye, lt, Ke, He, Se, 0];
      return oe.FileIndex[0].size = Se << 6, _e[7] = (oe.FileIndex[0].start = _e[0] + _e[1] + _e[2] + _e[3] + _e[4] + _e[5]) + (_e[6] + 7 >> 3), _e;
    })(x), D = V(L[7] << 9), M = 0, j = 0;
    for (M = 0; M < 8; ++M) D.write_shift(1, w[M]);
    for (M = 0; M < 8; ++M) D.write_shift(2, 0);
    for (D.write_shift(2, 62), D.write_shift(2, 3), D.write_shift(2, 65534), D.write_shift(2, 9), D.write_shift(2, 6), M = 0; M < 3; ++M) D.write_shift(2, 0);
    for (D.write_shift(4, 0), D.write_shift(4, L[2]), D.write_shift(4, L[0] + L[1] + L[2] + L[3] - 1), D.write_shift(4, 0), D.write_shift(4, 4096), D.write_shift(4, L[3] ? L[0] + L[1] + L[2] - 1 : v), D.write_shift(4, L[3]), D.write_shift(-4, L[1] ? L[0] - 1 : v), D.write_shift(4, L[1]), M = 0; M < 109; ++M) D.write_shift(-4, M < L[2] ? L[1] + M : -1);
    if (L[1]) for (j = 0; j < L[1]; ++j) {
      for (; M < 236 + 127 * j; ++M) D.write_shift(-4, M < L[2] ? L[1] + M : -1);
      D.write_shift(-4, j === L[1] - 1 ? v : j + 1);
    }
    var q = function(oe) {
      for (j += oe; M < j - 1; ++M) D.write_shift(-4, M + 1);
      oe && (++M, D.write_shift(-4, v));
    };
    for (j = M = 0, j += L[1]; M < j; ++M) D.write_shift(-4, A.DIFSECT);
    for (j += L[2]; M < j; ++M) D.write_shift(-4, A.FATSECT);
    q(L[3]), q(L[4]);
    for (var X = 0, re = 0, ae = x.FileIndex[0]; X < x.FileIndex.length; ++X) (ae = x.FileIndex[X]).content && ((re = ae.content.length) < 4096 || (ae.start = j, q(re + 511 >> 9)));
    for (q(L[6] + 7 >> 3); 511 & D.l; ) D.write_shift(-4, A.ENDOFCHAIN);
    for (j = M = 0, X = 0; X < x.FileIndex.length; ++X) (ae = x.FileIndex[X]).content && (!(re = ae.content.length) || re >= 4096 || (ae.start = j, q(re + 63 >> 6)));
    for (; 511 & D.l; ) D.write_shift(-4, A.ENDOFCHAIN);
    for (M = 0; M < L[4] << 2; ++M) {
      var we = x.FullPaths[M];
      if (we && we.length !== 0) {
        ae = x.FileIndex[M], M === 0 && (ae.start = ae.size ? ae.start - 1 : v);
        var de = M === 0 && O.root || ae.name;
        if (de.length > 31 && (console.error("Name " + de + " will be truncated to " + de.slice(0, 31)), de = de.slice(0, 31)), re = 2 * (de.length + 1), D.write_shift(64, de, "utf16le"), D.write_shift(2, re), D.write_shift(1, ae.type), D.write_shift(1, ae.color), D.write_shift(-4, ae.L), D.write_shift(-4, ae.R), D.write_shift(-4, ae.C), ae.clsid) D.write_shift(16, ae.clsid, "hex");
        else for (X = 0; X < 4; ++X) D.write_shift(4, 0);
        D.write_shift(4, ae.state || 0), D.write_shift(4, 0), D.write_shift(4, 0), D.write_shift(4, 0), D.write_shift(4, 0), D.write_shift(4, ae.start), D.write_shift(4, ae.size), D.write_shift(4, 0);
      } else {
        for (X = 0; X < 17; ++X) D.write_shift(4, 0);
        for (X = 0; X < 3; ++X) D.write_shift(4, -1);
        for (X = 0; X < 12; ++X) D.write_shift(4, 0);
      }
    }
    for (M = 1; M < x.FileIndex.length; ++M) if ((ae = x.FileIndex[M]).size >= 4096) if (D.l = ae.start + 1 << 9, Ve && Buffer.isBuffer(ae.content)) ae.content.copy(D, D.l, 0, ae.size), D.l += ae.size + 511 & -512;
    else {
      for (X = 0; X < ae.size; ++X) D.write_shift(1, ae.content[X]);
      for (; 511 & X; ++X) D.write_shift(1, 0);
    }
    for (M = 1; M < x.FileIndex.length; ++M) if ((ae = x.FileIndex[M]).size > 0 && ae.size < 4096) if (Ve && Buffer.isBuffer(ae.content)) ae.content.copy(D, D.l, 0, ae.size), D.l += ae.size + 63 & -64;
    else {
      for (X = 0; X < ae.size; ++X) D.write_shift(1, ae.content[X]);
      for (; 63 & X; ++X) D.write_shift(1, 0);
    }
    if (Ve) D.l = D.length;
    else for (; D.l < D.length; ) D.write_shift(1, 0);
    return D;
  }
  r.version = "1.2.2";
  var g, m = 64, v = -2, y = "d0cf11e0a1b11ae1", w = [208, 207, 17, 224, 161, 177, 26, 225], E = "00000000000000000000000000000000", A = { MAXREGSECT: -6, DIFSECT: -4, FATSECT: -3, ENDOFCHAIN: v, FREESECT: -1, HEADER_SIGNATURE: y, HEADER_MINOR_VERSION: "3e00", MAXREGSID: -6, NOSTREAM: -1, HEADER_CLSID: E, EntryTypes: ["unknown", "storage", "stream", "lockbytes", "property", "root"] };
  function b(x) {
    for (var N = new Array(x.length), O = 0; O < x.length; ++O) N[O] = String.fromCharCode(x[O]);
    return N.join("");
  }
  function _(x) {
    return g ? g.deflateRawSync(x) : R(x);
  }
  var k = [16, 17, 18, 0, 8, 7, 9, 6, 10, 5, 11, 4, 12, 3, 13, 2, 14, 1, 15], T = [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], S = [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];
  function C(x) {
    var N = 139536 & (x << 1 | x << 11) | 558144 & (x << 5 | x << 15);
    return 255 & (N >> 16 | N >> 8 | N);
  }
  for (var F = typeof Uint8Array < "u", I = F ? new Uint8Array(256) : [], P = 0; P < 256; ++P) I[P] = C(P);
  function W(x, N) {
    var O = I[255 & x];
    return N <= 8 ? O >>> 8 - N : (O = O << 8 | I[x >> 8 & 255], N <= 16 ? O >>> 16 - N : (O = O << 8 | I[x >> 16 & 255]) >>> 24 - N);
  }
  function U(x, N) {
    var O = 7 & N, L = N >>> 3;
    return (x[L] | (O <= 6 ? 0 : x[L + 1] << 8)) >>> O & 3;
  }
  function G(x, N) {
    var O = 7 & N, L = N >>> 3;
    return (x[L] | (O <= 5 ? 0 : x[L + 1] << 8)) >>> O & 7;
  }
  function B(x, N) {
    var O = 7 & N, L = N >>> 3;
    return (x[L] | (O <= 3 ? 0 : x[L + 1] << 8)) >>> O & 31;
  }
  function z(x, N) {
    var O = 7 & N, L = N >>> 3;
    return (x[L] | (O <= 1 ? 0 : x[L + 1] << 8)) >>> O & 127;
  }
  function K(x, N, O) {
    var L = 7 & N, D = N >>> 3, M = (1 << O) - 1, j = x[D] >>> L;
    return O < 8 - L ? j & M : (j |= x[D + 1] << 8 - L, O < 16 - L ? j & M : (j |= x[D + 2] << 16 - L, O < 24 - L ? j & M : (j |= x[D + 3] << 24 - L) & M));
  }
  function ee(x, N, O) {
    var L = 7 & N, D = N >>> 3;
    return L <= 5 ? x[D] |= (7 & O) << L : (x[D] |= O << L & 255, x[D + 1] = (7 & O) >> 8 - L), N + 3;
  }
  function se(x, N, O) {
    return O = (1 & O) << (7 & N), x[N >>> 3] |= O, N + 1;
  }
  function H(x, N, O) {
    var L = N >>> 3;
    return O <<= 7 & N, x[L] |= 255 & O, O >>>= 8, x[L + 1] = O, N + 8;
  }
  function Y(x, N, O) {
    var L = N >>> 3;
    return O <<= 7 & N, x[L] |= 255 & O, O >>>= 8, x[L + 1] = 255 & O, x[L + 2] = O >>> 8, N + 16;
  }
  function he(x, N) {
    var O = x.length, L = 2 * O > N ? 2 * O : N + 5, D = 0;
    if (O >= N) return x;
    if (Ve) {
      var M = Mi(L);
      if (x.copy) x.copy(M);
      else for (; D < x.length; ++D) M[D] = x[D];
      return M;
    }
    if (F) {
      var j = new Uint8Array(L);
      if (j.set) j.set(x);
      else for (; D < O; ++D) j[D] = x[D];
      return j;
    }
    return x.length = L, x;
  }
  function te(x) {
    for (var N = new Array(x), O = 0; O < x; ++O) N[O] = 0;
    return N;
  }
  function Q(x, N, O) {
    var L = 1, D = 0, M = 0, j = 0, q = 0, X = x.length, re = F ? new Uint16Array(32) : te(32);
    for (M = 0; M < 32; ++M) re[M] = 0;
    for (M = X; M < O; ++M) x[M] = 0;
    X = x.length;
    var ae = F ? new Uint16Array(X) : te(X);
    for (M = 0; M < X; ++M) re[D = x[M]]++, L < D && (L = D), ae[M] = 0;
    for (re[0] = 0, M = 1; M <= L; ++M) re[M + 16] = q = q + re[M - 1] << 1;
    for (M = 0; M < X; ++M) (q = x[M]) != 0 && (ae[M] = re[q + 16]++);
    var we = 0;
    for (M = 0; M < X; ++M) if ((we = x[M]) != 0) for (q = W(ae[M], L) >> L - we, j = (1 << L + 4 - we) - 1; j >= 0; --j) N[q | j << we] = 15 & we | M << 4;
    return L;
  }
  var ke = F ? new Uint16Array(512) : te(512), ce = F ? new Uint16Array(32) : te(32);
  if (!F) {
    for (var fe = 0; fe < 512; ++fe) ke[fe] = 0;
    for (fe = 0; fe < 32; ++fe) ce[fe] = 0;
  }
  (function() {
    for (var x = [], N = 0; N < 32; N++) x.push(5);
    Q(x, ce, 32);
    var O = [];
    for (N = 0; N <= 143; N++) O.push(8);
    for (; N <= 255; N++) O.push(9);
    for (; N <= 279; N++) O.push(7);
    for (; N <= 287; N++) O.push(8);
    Q(O, ke, 288);
  })();
  var Ne = (function() {
    for (var x = F ? new Uint8Array(32768) : [], N = 0, O = 0; N < S.length - 1; ++N) for (; O < S[N + 1]; ++O) x[O] = N;
    for (; O < 32768; ++O) x[O] = 29;
    var L = F ? new Uint8Array(259) : [];
    for (N = 0, O = 0; N < T.length - 1; ++N) for (; O < T[N + 1]; ++O) L[O] = N;
    return function(D, M) {
      return D.length < 8 ? (function(j, q) {
        for (var X = 0; X < j.length; ) {
          var re = Math.min(65535, j.length - X), ae = X + re == j.length;
          for (q.write_shift(1, +ae), q.write_shift(2, re), q.write_shift(2, 65535 & ~re); re-- > 0; ) q[q.l++] = j[X++];
        }
        return q.l;
      })(D, M) : (function(j, q) {
        for (var X = 0, re = 0, ae = F ? new Uint16Array(32768) : []; re < j.length; ) {
          var we = Math.min(65535, j.length - re);
          if (we < 10) {
            for (7 & (X = ee(q, X, +(re + we == j.length))) && (X += 8 - (7 & X)), q.l = X / 8 | 0, q.write_shift(2, we), q.write_shift(2, 65535 & ~we); we-- > 0; ) q[q.l++] = j[re++];
            X = 8 * q.l;
          } else {
            X = ee(q, X, +(re + we == j.length) + 2);
            for (var de = 0; we-- > 0; ) {
              var oe = j[re], Se = -1, He = 0;
              if ((Se = ae[de = 32767 & (de << 5 ^ oe)]) && ((Se |= -32768 & re) > re && (Se -= 32768), Se < re)) for (; j[Se + He] == j[re + He] && He < 250; ) ++He;
              if (He > 2) {
                (oe = L[He]) <= 22 ? X = H(q, X, I[oe + 1] >> 1) - 1 : (H(q, X, 3), H(q, X += 5, I[oe - 23] >> 5), X += 3);
                var Le = oe < 8 ? 0 : oe - 4 >> 2;
                Le > 0 && (Y(q, X, He - T[oe]), X += Le), oe = x[re - Se], X = H(q, X, I[oe] >> 3), X -= 3;
                var Oe = oe < 4 ? 0 : oe - 2 >> 1;
                Oe > 0 && (Y(q, X, re - Se - S[oe]), X += Oe);
                for (var le = 0; le < He; ++le) ae[de] = 32767 & re, de = 32767 & (de << 5 ^ j[re]), ++re;
                we -= He - 1;
              } else oe <= 143 ? oe += 48 : X = se(q, X, 1), X = H(q, X, I[oe]), ae[de] = 32767 & re, ++re;
            }
            X = H(q, X, 0) - 1;
          }
        }
        return q.l = (X + 7) / 8 | 0, q.l;
      })(D, M);
    };
  })();
  function R(x) {
    var N = V(50 + Math.floor(1.1 * x.length)), O = Ne(x, N);
    return N.slice(0, O);
  }
  var Ce = F ? new Uint16Array(32768) : te(32768), bt = F ? new Uint16Array(32768) : te(32768), tt = F ? new Uint16Array(128) : te(128), pt = 1, mt = 1;
  function ue(x, N) {
    var O = B(x, N) + 257, L = B(x, N += 5) + 1, D = (function(Ke, lt) {
      var Tt = 7 & lt, ye = lt >>> 3;
      return (Ke[ye] | (Tt <= 4 ? 0 : Ke[ye + 1] << 8)) >>> Tt & 15;
    })(x, N += 5) + 4;
    N += 4;
    for (var M = 0, j = F ? new Uint8Array(19) : te(19), q = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], X = 1, re = F ? new Uint8Array(8) : te(8), ae = F ? new Uint8Array(8) : te(8), we = j.length, de = 0; de < D; ++de) j[k[de]] = M = G(x, N), X < M && (X = M), re[M]++, N += 3;
    var oe = 0;
    for (re[0] = 0, de = 1; de <= X; ++de) ae[de] = oe = oe + re[de - 1] << 1;
    for (de = 0; de < we; ++de) (oe = j[de]) != 0 && (q[de] = ae[oe]++);
    var Se = 0;
    for (de = 0; de < we; ++de) if ((Se = j[de]) != 0) {
      oe = I[q[de]] >> 8 - Se;
      for (var He = (1 << 7 - Se) - 1; He >= 0; --He) tt[oe | He << Se] = 7 & Se | de << 3;
    }
    var Le = [];
    for (X = 1; Le.length < O + L; ) switch (N += 7 & (oe = tt[z(x, N)]), oe >>>= 3) {
      case 16:
        for (M = 3 + U(x, N), N += 2, oe = Le[Le.length - 1]; M-- > 0; ) Le.push(oe);
        break;
      case 17:
        for (M = 3 + G(x, N), N += 3; M-- > 0; ) Le.push(0);
        break;
      case 18:
        for (M = 11 + z(x, N), N += 7; M-- > 0; ) Le.push(0);
        break;
      default:
        Le.push(oe), X < oe && (X = oe);
    }
    var Oe = Le.slice(0, O), le = Le.slice(O);
    for (de = O; de < 286; ++de) Oe[de] = 0;
    for (de = L; de < 30; ++de) le[de] = 0;
    return pt = Q(Oe, Ce, 286), mt = Q(le, bt, 30), N;
  }
  function _t(x, N) {
    var O = (function(L, D) {
      if (L[0] == 3 && !(3 & L[1])) return [ea(D), 2];
      for (var M = 0, j = 0, q = Mi(D || 262144), X = 0, re = q.length >>> 0, ae = 0, we = 0; !(1 & j); ) if (j = G(L, M), M += 3, j >>> 1 != 0) for (j >> 1 == 1 ? (ae = 9, we = 5) : (M = ue(L, M), ae = pt, we = mt); ; ) {
        !D && re < X + 32767 && (re = (q = he(q, X + 32767)).length);
        var de = K(L, M, ae), oe = j >>> 1 == 1 ? ke[de] : Ce[de];
        if (M += 15 & oe, (oe >>>= 4) >>> 8 & 255) {
          if (oe == 256) break;
          var Se = (oe -= 257) < 8 ? 0 : oe - 4 >> 2;
          Se > 5 && (Se = 0);
          var He = X + T[oe];
          Se > 0 && (He += K(L, M, Se), M += Se), de = K(L, M, we), M += 15 & (oe = j >>> 1 == 1 ? ce[de] : bt[de]);
          var Le = (oe >>>= 4) < 4 ? 0 : oe - 2 >> 1, Oe = S[oe];
          for (Le > 0 && (Oe += K(L, M, Le), M += Le), !D && re < He && (re = (q = he(q, He + 100)).length); X < He; ) q[X] = q[X - Oe], ++X;
        } else q[X++] = oe;
      }
      else {
        7 & M && (M += 8 - (7 & M));
        var le = L[M >>> 3] | L[(M >>> 3) + 1] << 8;
        if (M += 32, le > 0) for (!D && re < X + le && (re = (q = he(q, X + le)).length); le-- > 0; ) q[X++] = L[M >>> 3], M += 8;
      }
      return D ? [q, M + 7 >>> 3] : [q.slice(0, X), M + 7 >>> 3];
    })(x.slice(x.l || 0), N);
    return x.l += O[1], O[0];
  }
  function Nt(x, N) {
    if (!x) throw new Error(N);
    typeof console < "u" && console.error(N);
  }
  function Ie(x, N) {
    var O = x;
    Ft(O, 0);
    var L = { FileIndex: [], FullPaths: [] };
    h(L, { root: N.root });
    for (var D = O.length - 4; (O[D] != 80 || O[D + 1] != 75 || O[D + 2] != 5 || O[D + 3] != 6) && D >= 0; ) --D;
    O.l = D + 4, O.l += 4;
    var M = O.read_shift(2);
    O.l += 6;
    var j = O.read_shift(4);
    for (O.l = j, D = 0; D < M; ++D) {
      O.l += 20;
      var q = O.read_shift(4), X = O.read_shift(4), re = O.read_shift(2), ae = O.read_shift(2), we = O.read_shift(2);
      O.l += 8;
      var de = O.read_shift(4), oe = s(O.slice(O.l + re, O.l + re + ae));
      O.l += re + ae + we;
      var Se = O.l;
      O.l = de + 4, oe && oe[1] && ((oe[1] || {}).usz && (X = oe[1].usz), (oe[1] || {}).csz && (q = oe[1].csz)), je(O, q, X, L, oe), O.l = Se;
    }
    return L;
  }
  function je(x, N, O, L, D) {
    x.l += 2;
    var M = x.read_shift(2), j = x.read_shift(2), q = (function(Oe) {
      var le = 65535 & Oe.read_shift(2), Ke = 65535 & Oe.read_shift(2), lt = /* @__PURE__ */ new Date(), Tt = 31 & Ke, ye = 15 & (Ke >>>= 5);
      Ke >>>= 4, lt.setMilliseconds(0), lt.setFullYear(Ke + 1980), lt.setMonth(ye - 1), lt.setDate(Tt);
      var xe = 31 & le, _e = 63 & (le >>>= 5);
      return le >>>= 6, lt.setHours(le), lt.setMinutes(_e), lt.setSeconds(xe << 1), lt;
    })(x);
    if (8257 & M) throw new Error("Unsupported ZIP encryption");
    x.read_shift(4);
    for (var X = x.read_shift(4), re = x.read_shift(4), ae = x.read_shift(2), we = x.read_shift(2), de = "", oe = 0; oe < ae; ++oe) de += String.fromCharCode(x[x.l++]);
    if (we) {
      var Se = s(x.slice(x.l, x.l + we));
      (Se[21589] || {}).mt && (q = Se[21589].mt), (Se[1] || {}).usz && (re = Se[1].usz), (Se[1] || {}).csz && (X = Se[1].csz), D && ((D[21589] || {}).mt && (q = D[21589].mt), (D[1] || {}).usz && (re = D[1].usz), (D[1] || {}).csz && (X = D[1].csz));
    }
    x.l += we;
    var He = x.slice(x.l, x.l + X);
    switch (j) {
      case 8:
        He = (function(Oe, le) {
          if (!g) return _t(Oe, le);
          var Ke = new g.InflateRaw(), lt = Ke._processChunk(Oe.slice(Oe.l), Ke._finishFlushFlag);
          return Oe.l += Ke.bytesRead, lt;
        })(x, re);
        break;
      case 0:
        x.l += X;
        break;
      default:
        throw new Error("Unsupported ZIP Compression method " + j);
    }
    var Le = !1;
    8 & M && (x.read_shift(4) == 134695760 && (x.read_shift(4), Le = !0), X = x.read_shift(4), re = x.read_shift(4)), X != N && Nt(Le, "Bad compressed size: " + N + " != " + X), re != O && Nt(Le, "Bad uncompressed size: " + O + " != " + re), qe(L, de, He, { unsafe: !0, mt: q });
  }
  var Pe = { htm: "text/html", xml: "text/xml", gif: "image/gif", jpg: "image/jpeg", png: "image/png", mso: "application/x-mso", thmx: "application/vnd.ms-officetheme", sh33tj5: "application/octet-stream" };
  function at(x, N) {
    if (x.ctype) return x.ctype;
    var O = x.name || "", L = O.match(/\.([^\.]+)$/);
    return L && Pe[L[1]] || N && (L = (O = N).match(/[\.\\]([^\.\\])+$/)) && Pe[L[1]] ? Pe[L[1]] : "application/octet-stream";
  }
  function ct(x) {
    for (var N = Jn(x), O = [], L = 0; L < N.length; L += 76) O.push(N.slice(L, L + 76));
    return O.join(`\r
`) + `\r
`;
  }
  function Te(x) {
    var N = x.replace(/[\x00-\x08\x0B\x0C\x0E-\x1F\x7E-\xFF=]/g, function(re) {
      var ae = re.charCodeAt(0).toString(16).toUpperCase();
      return "=" + (ae.length == 1 ? "0" + ae : ae);
    });
    (N = N.replace(/ $/gm, "=20").replace(/\t$/gm, "=09")).charAt(0) == `
` && (N = "=0D" + N.slice(1));
    for (var O = [], L = (N = N.replace(/\r(?!\n)/gm, "=0D").replace(/\n\n/gm, `
=0A`).replace(/([^\r\n])\n/gm, "$1=0A")).split(`\r
`), D = 0; D < L.length; ++D) {
      var M = L[D];
      if (M.length != 0) for (var j = 0; j < M.length; ) {
        var q = 76, X = M.slice(j, j + q);
        X.charAt(q - 1) == "=" ? q-- : X.charAt(q - 2) == "=" ? q -= 2 : X.charAt(q - 3) == "=" && (q -= 3), X = M.slice(j, j + q), (j += q) < M.length && (X += "="), O.push(X);
      }
      else O.push("");
    }
    return O.join(`\r
`);
  }
  function rt(x, N, O) {
    for (var L, D = "", M = "", j = "", q = 0; q < 10; ++q) {
      var X = N[q];
      if (!X || X.match(/^\s*$/)) break;
      var re = X.match(/^([^:]*?):\s*([^\s].*)$/);
      if (re) switch (re[1].toLowerCase()) {
        case "content-location":
          D = re[2].trim();
          break;
        case "content-type":
          j = re[2].trim();
          break;
        case "content-transfer-encoding":
          M = re[2].trim();
      }
    }
    switch (++q, M.toLowerCase()) {
      case "base64":
        L = sr(hr(N.slice(q).join("")));
        break;
      case "quoted-printable":
        L = (function(we) {
          for (var de = [], oe = 0; oe < we.length; ++oe) {
            for (var Se = we[oe]; oe <= we.length && Se.charAt(Se.length - 1) == "="; ) Se = Se.slice(0, Se.length - 1) + we[++oe];
            de.push(Se);
          }
          for (var He = 0; He < de.length; ++He) de[He] = de[He].replace(/[=][0-9A-Fa-f]{2}/g, function(Le) {
            return String.fromCharCode(parseInt(Le.slice(1), 16));
          });
          return sr(de.join(`\r
`));
        })(N.slice(q));
        break;
      default:
        throw new Error("Unsupported Content-Transfer-Encoding " + M);
    }
    var ae = qe(x, D.slice(O.length), L, { unsafe: !0 });
    j && (ae.ctype = j);
  }
  function qe(x, N, O, L) {
    var D = L && L.unsafe;
    D || h(x);
    var M = !D && Ee.find(x, N);
    if (!M) {
      var j = x.FullPaths[0];
      N.slice(0, j.length) == j ? j = N : (j.slice(-1) != "/" && (j += "/"), j = (j + N).replace("//", "/")), M = { name: a(N), type: 2 }, x.FileIndex.push(M), x.FullPaths.push(j), D || Ee.utils.cfb_gc(x);
    }
    return M.content = O, M.size = O ? O.length : 0, L && (L.CLSID && (M.clsid = L.CLSID), L.mt && (M.mt = L.mt), L.ct && (M.ct = L.ct)), M;
  }
  return r.find = function(x, N) {
    var O = x.FullPaths.map(function(X) {
      return X.toUpperCase();
    }), L = O.map(function(X) {
      var re = X.split("/");
      return re[re.length - (X.slice(-1) == "/" ? 2 : 1)];
    }), D = !1;
    N.charCodeAt(0) === 47 ? (D = !0, N = O[0].slice(0, -1) + N) : D = N.indexOf("/") !== -1;
    var M = N.toUpperCase(), j = D === !0 ? O.indexOf(M) : L.indexOf(M);
    if (j !== -1) return x.FileIndex[j];
    var q = !M.match(qa);
    for (M = M.replace(or, ""), q && (M = M.replace(qa, "!")), j = 0; j < O.length; ++j)
      if ((q ? O[j].replace(qa, "!") : O[j]).replace(or, "") == M || (q ? L[j].replace(qa, "!") : L[j]).replace(or, "") == M) return x.FileIndex[j];
    return null;
  }, r.read = function(x, N) {
    var O = N && N.type;
    switch (O || Ve && Buffer.isBuffer(x) && (O = "buffer"), O || "base64") {
      case "file":
        return (function(L, D) {
          return i(), l(e.readFileSync(L), D);
        })(x, N);
      case "base64":
        return l(sr(hr(x)), N);
      case "binary":
        return l(sr(x), N);
    }
    return l(x, N);
  }, r.parse = l, r.write = function(x, N) {
    var O = d(x, N);
    switch (N && N.type || "buffer") {
      case "file":
        return i(), e.writeFileSync(N.filename, O), O;
      case "binary":
        return typeof O == "string" ? O : b(O);
      case "base64":
        return Jn(typeof O == "string" ? O : b(O));
      case "buffer":
        if (Ve) return Buffer.isBuffer(O) ? O : Ur(O);
      case "array":
        return typeof O == "string" ? sr(O) : O;
    }
    return O;
  }, r.writeFile = function(x, N, O) {
    i();
    var L = d(x, O);
    e.writeFileSync(N, L);
  }, r.utils = { cfb_new: function(x) {
    var N = {};
    return h(N, x), N;
  }, cfb_add: qe, cfb_del: function(x, N) {
    h(x);
    var O = Ee.find(x, N);
    if (O) {
      for (var L = 0; L < x.FileIndex.length; ++L) if (x.FileIndex[L] == O) return x.FileIndex.splice(L, 1), x.FullPaths.splice(L, 1), !0;
    }
    return !1;
  }, cfb_mov: function(x, N, O) {
    h(x);
    var L = Ee.find(x, N);
    if (L) {
      for (var D = 0; D < x.FileIndex.length; ++D) if (x.FileIndex[D] == L) return x.FileIndex[D].name = a(O), x.FullPaths[D] = O, !0;
    }
    return !1;
  }, cfb_gc: function(x) {
    p(x, !0);
  }, ReadShift: en, CheckField: Xc, prep_blob: Ft, bconcat: xt, use_zlib: function(x) {
    try {
      var N = new x.InflateRaw();
      if (N._processChunk(new Uint8Array([3, 0]), N._finishFlushFlag), !N.bytesRead) throw new Error("zlib does not expose bytesRead");
      g = x;
    } catch (O) {
      console.error("cannot use native zlib: " + (O.message || O));
    }
  }, _deflateRaw: R, _inflateRaw: _t, consts: A }, r;
})();
function Cf(e) {
  Hr = e;
}
function Xi(e) {
  return typeof e == "string" ? _n(e) : Array.isArray(e) ? (function(r) {
    if (typeof Uint8Array > "u") throw new Error("Unsupported");
    return new Uint8Array(r);
  })(e) : e;
}
function Sn(e, r, t) {
  if (Hr !== void 0 && Hr.writeFileSync) return t ? Hr.writeFileSync(e, r, t) : Hr.writeFileSync(e, r);
  if (typeof Deno < "u") {
    if (t && typeof r == "string") switch (t) {
      case "utf8":
        r = new TextEncoder(t).encode(r);
        break;
      case "binary":
        r = _n(r);
        break;
      default:
        throw new Error("Unsupported encoding " + t);
    }
    return Deno.writeFileSync(e, r);
  }
  var a = t == "utf8" ? Dr(r) : r;
  if (typeof IE_SaveFile < "u") return IE_SaveFile(a, e);
  if (typeof Blob < "u") {
    var n = new Blob([Xi(a)], { type: "application/octet-stream" });
    if (typeof navigator < "u" && navigator.msSaveBlob) return navigator.msSaveBlob(n, e);
    if (typeof saveAs < "u") return saveAs(n, e);
    if (typeof URL < "u" && typeof document < "u" && document.createElement && URL.createObjectURL) {
      var s = URL.createObjectURL(n);
      if (typeof chrome == "object" && typeof (chrome.downloads || {}).download == "function") return URL.revokeObjectURL && typeof setTimeout < "u" && setTimeout(function() {
        URL.revokeObjectURL(s);
      }, 6e4), chrome.downloads.download({ url: s, filename: e, saveAs: !0 });
      var i = document.createElement("a");
      if (i.download != null) return i.download = e, i.href = s, document.body.appendChild(i), i.click(), document.body.removeChild(i), URL.revokeObjectURL && typeof setTimeout < "u" && setTimeout(function() {
        URL.revokeObjectURL(s);
      }, 6e4), s;
    } else if (typeof URL < "u" && !URL.createObjectURL && typeof chrome == "object") {
      var l = "data:application/octet-stream;base64," + (function(c) {
        for (var f = "", u = 0, h = 0, p = 0, d = 0, g = 0, m = 0, v = 0, y = 0; y < c.length; ) d = (u = c[y++]) >> 2, g = (3 & u) << 4 | (h = c[y++]) >> 4, m = (15 & h) << 2 | (p = c[y++]) >> 6, v = 63 & p, isNaN(h) ? m = v = 64 : isNaN(p) && (v = 64), f += er.charAt(d) + er.charAt(g) + er.charAt(m) + er.charAt(v);
        return f;
      })(new Uint8Array(Xi(a)));
      return chrome.downloads.download({ url: l, filename: e, saveAs: !0 });
    }
  }
  if (typeof $ < "u" && typeof File < "u" && typeof Folder < "u") try {
    var o = File(e);
    return o.open("w"), o.encoding = "binary", Array.isArray(r) && (r = Pr(r)), o.write(r), o.close(), r;
  } catch (c) {
    if (!c.message || c.message.indexOf("onstruct") == -1) throw c;
  }
  throw new Error("cannot save file " + e);
}
function gt(e) {
  for (var r = Object.keys(e), t = [], a = 0; a < r.length; ++a) Object.prototype.hasOwnProperty.call(e, r[a]) && t.push(r[a]);
  return t;
}
function ji(e, r) {
  for (var t = [], a = gt(e), n = 0; n !== a.length; ++n) t[e[a[n]][r]] == null && (t[e[a[n]][r]] = a[n]);
  return t;
}
function ls(e) {
  for (var r = [], t = gt(e), a = 0; a !== t.length; ++a) r[e[t[a]]] = t[a];
  return r;
}
function xn(e) {
  for (var r = [], t = gt(e), a = 0; a !== t.length; ++a) r[e[t[a]]] = parseInt(t[a], 10);
  return r;
}
var yc = Date.UTC(1899, 11, 30, 0, 0, 0), If = Date.UTC(1899, 11, 31, 0, 0, 0), Rf = Date.UTC(1904, 0, 1, 0, 0, 0);
function yt(e, r) {
  var t = (e.getTime() - yc) / 864e5;
  return r ? (t -= 1462) < -1402 ? t - 1 : t : t < 60 ? t - 1 : t;
}
function Xr(e) {
  if (e >= 60 && e < 61) return e;
  var r = /* @__PURE__ */ new Date();
  return r.setTime(24 * (e > 60 ? e : e + 1) * 60 * 60 * 1e3 + yc), r;
}
function Of(e) {
  var r = 0, t = 0, a = !1, n = e.match(/P([0-9\.]+Y)?([0-9\.]+M)?([0-9\.]+D)?T([0-9\.]+H)?([0-9\.]+M)?([0-9\.]+S)?/);
  if (!n) throw new Error("|" + e + "| is not an ISO8601 Duration");
  for (var s = 1; s != n.length; ++s) if (n[s]) {
    switch (t = 1, s > 3 && (a = !0), n[s].slice(n[s].length - 1)) {
      case "Y":
        throw new Error("Unsupported ISO Duration Field: " + n[s].slice(n[s].length - 1));
      case "D":
        t *= 24;
      case "H":
        t *= 60;
      case "M":
        if (!a) throw new Error("Unsupported ISO Duration Field: M");
        t *= 60;
    }
    r += t * parseInt(n[s], 10);
  }
  return r;
}
var Nf = /^(\d+):(\d+)(:\d+)?(\.\d+)?$/, Ff = /^(\d+)-(\d+)-(\d+)$/, Ec = /^(\d+)-(\d+)-(\d+)[T ](\d+):(\d+)(:\d+)?(\.\d+)?$/;
function wt(e, r) {
  if (e instanceof Date) return e;
  var t = e.match(Nf);
  return t ? new Date((r ? Rf : If) + 1e3 * (60 * (60 * parseInt(t[1], 10) + parseInt(t[2], 10)) + (t[3] ? parseInt(t[3].slice(1), 10) : 0)) + (t[4] ? parseInt((t[4] + "000").slice(1, 4), 10) : 0)) : (t = e.match(Ff)) ? new Date(Date.UTC(+t[1], +t[2] - 1, +t[3], 0, 0, 0, 0)) : (t = e.match(Ec)) ? new Date(Date.UTC(+t[1], +t[2] - 1, +t[3], +t[4], +t[5], t[6] && parseInt(t[6].slice(1), 10) || 0, t[7] && parseInt((t[7] + "0000").slice(1, 4), 10) || 0)) : new Date(e);
}
function Ea(e, r) {
  if (Ve && Buffer.isBuffer(e)) {
    if (r && fn) {
      if (e[0] == 255 && e[1] == 254) return Dr(e.slice(2).toString("utf16le"));
      if (e[1] == 254 && e[2] == 255) return Dr(hc(e.slice(2).toString("binary")));
    }
    return e.toString("binary");
  }
  if (typeof TextDecoder < "u") try {
    if (r) {
      if (e[0] == 255 && e[1] == 254) return Dr(new TextDecoder("utf-16le").decode(e.slice(2)));
      if (e[0] == 254 && e[1] == 255) return Dr(new TextDecoder("utf-16be").decode(e.slice(2)));
    }
    var t = { "€": "€", "‚": "‚", ƒ: "ƒ", "„": "„", "…": "…", "†": "†", "‡": "‡", "ˆ": "ˆ", "‰": "‰", Š: "Š", "‹": "‹", Œ: "Œ", Ž: "Ž", "‘": "‘", "’": "’", "“": "“", "”": "”", "•": "•", "–": "–", "—": "—", "˜": "˜", "™": "™", š: "š", "›": "›", œ: "œ", ž: "ž", Ÿ: "Ÿ" };
    return Array.isArray(e) && (e = new Uint8Array(e)), new TextDecoder("latin1").decode(e).replace(/[€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ]/g, function(s) {
      return t[s] || s;
    });
  } catch {
  }
  var a = [], n = 0;
  try {
    for (n = 0; n < e.length - 65536; n += 65536) a.push(String.fromCharCode.apply(0, e.slice(n, n + 65536)));
    a.push(String.fromCharCode.apply(0, e.slice(n)));
  } catch {
    try {
      for (; n < e.length - 16384; n += 16384) a.push(String.fromCharCode.apply(0, e.slice(n, n + 16384)));
      a.push(String.fromCharCode.apply(0, e.slice(n)));
    } catch {
      for (; n != e.length; ++n) a.push(String.fromCharCode(e[n]));
    }
  }
  return a.join("");
}
function st(e) {
  if (typeof JSON < "u" && !Array.isArray(e)) return JSON.parse(JSON.stringify(e));
  if (typeof e != "object" || e == null) return e;
  if (e instanceof Date) return new Date(e.getTime());
  var r = {};
  for (var t in e) Object.prototype.hasOwnProperty.call(e, t) && (r[t] = st(e[t]));
  return r;
}
function Ze(e, r) {
  for (var t = ""; t.length < r; ) t += e;
  return t;
}
function fr(e) {
  var r = Number(e);
  if (!isNaN(r)) return isFinite(r) ? r : NaN;
  if (!/\d/.test(e)) return r;
  var t = 1, a = e.replace(/([\d]),([\d])/g, "$1$2").replace(/[$]/g, "").replace(/[%]/g, function() {
    return t *= 100, "";
  });
  return isNaN(r = Number(a)) ? (a = a.replace(/[(]([^()]*)[)]/, function(n, s) {
    return t = -t, s;
  }), isNaN(r = Number(a)) ? r : r / t) : r / t;
}
var Df = /^(0?\d|1[0-2])(?:|:([0-5]?\d)(?:|(\.\d+)(?:|:([0-5]?\d))|:([0-5]?\d)(|\.\d+)))\s+([ap])m?$/, Pf = /^([01]?\d|2[0-3])(?:|:([0-5]?\d)(?:|(\.\d+)(?:|:([0-5]?\d))|:([0-5]?\d)(|\.\d+)))$/, Lf = /^(\d+)-(\d+)-(\d+)[T ](\d+):(\d+)(:\d+)(\.\d+)?[Z]?$/, Mf = (/* @__PURE__ */ new Date("6/9/69 00:00 UTC")).valueOf() == -177984e5, Uf = ["january", "february", "march", "april", "may", "june", "july", "august", "september", "october", "november", "december"];
function un(e) {
  if (Lf.test(e)) return e.indexOf("Z") == -1 ? fs(new Date(e)) : new Date(e);
  var r = e.toLowerCase(), t = r.replace(/\s+/g, " ").trim(), a = t.match(Df);
  if (a) return (function(o) {
    return o[2] ? o[3] ? o[4] ? new Date(Date.UTC(1899, 11, 31, +o[1] % 12 + (o[7] == "p" ? 12 : 0), +o[2], +o[4], 1e3 * parseFloat(o[3]))) : new Date(Date.UTC(1899, 11, 31, o[7] == "p" ? 12 : 0, +o[1], +o[2], 1e3 * parseFloat(o[3]))) : o[5] ? new Date(Date.UTC(1899, 11, 31, +o[1] % 12 + (o[7] == "p" ? 12 : 0), +o[2], +o[5], o[6] ? 1e3 * parseFloat(o[6]) : 0)) : new Date(Date.UTC(1899, 11, 31, +o[1] % 12 + (o[7] == "p" ? 12 : 0), +o[2], 0, 0)) : new Date(Date.UTC(1899, 11, 31, +o[1] % 12 + (o[7] == "p" ? 12 : 0), 0, 0, 0));
  })(a);
  if (a = t.match(Pf)) return (function(o) {
    return o[2] ? o[3] ? o[4] ? new Date(Date.UTC(1899, 11, 31, +o[1], +o[2], +o[4], 1e3 * parseFloat(o[3]))) : new Date(Date.UTC(1899, 11, 31, 0, +o[1], +o[2], 1e3 * parseFloat(o[3]))) : o[5] ? new Date(Date.UTC(1899, 11, 31, +o[1], +o[2], +o[5], o[6] ? 1e3 * parseFloat(o[6]) : 0)) : new Date(Date.UTC(1899, 11, 31, +o[1], +o[2], 0, 0)) : new Date(Date.UTC(1899, 11, 31, +o[1], 0, 0, 0));
  })(a);
  if (a = t.match(Ec)) return new Date(Date.UTC(+a[1], +a[2] - 1, +a[3], +a[4], +a[5], a[6] && parseInt(a[6].slice(1), 10) || 0, a[7] && parseInt((a[7] + "0000").slice(1, 4), 10) || 0));
  var n = new Date(Mf && e.indexOf("UTC") == -1 ? e + " UTC" : e), s = /* @__PURE__ */ new Date(NaN), i = n.getYear();
  n.getMonth();
  var l = n.getDate();
  if (isNaN(l)) return s;
  if (r.match(/jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec/)) {
    if ((r = r.replace(/[^a-z]/g, "").replace(/([^a-z]|^)[ap]m?([^a-z]|$)/, "")).length > 3 && Uf.indexOf(r) == -1) return s;
  } else if (r.replace(/[ap]m?/, "").match(/[a-z]/)) return s;
  return i < 0 || i > 8099 || e.match(/[^-0-9:,\/\\\ ]/) ? s : n;
}
var Bf = (function() {
  var e = "abacaba".split(/(:?b)/i).length == 5;
  return function(r, t, a) {
    if (e || typeof t == "string") return r.split(t);
    for (var n = r.split(t), s = [n[0]], i = 1; i < n.length; ++i) s.push(a), s.push(n[i]);
    return s;
  };
})();
function ka(e) {
  return new Date(e.getUTCFullYear(), e.getUTCMonth(), e.getUTCDate(), e.getUTCHours(), e.getUTCMinutes(), e.getUTCSeconds(), e.getUTCMilliseconds());
}
function fs(e) {
  return new Date(Date.UTC(e.getFullYear(), e.getMonth(), e.getDate(), e.getHours(), e.getMinutes(), e.getSeconds(), e.getMilliseconds()));
}
function oi(e) {
  var r = e.slice(0, 1024).indexOf("<!DOCTYPE");
  if (r == -1) return e;
  var t = e.match(/<[\w]/);
  return t ? e.slice(0, r) + e.slice(t.index) : e;
}
function zs(e, r, t) {
  for (var a = [], n = e.indexOf(r); n > -1; ) {
    var s = e.indexOf(t, n + r.length);
    if (s == -1) break;
    a.push(e.slice(n, s + t.length)), n = e.indexOf(r, s + t.length);
  }
  return a.length > 0 ? a : null;
}
function An(e, r, t) {
  var a = [], n = 0, s = e.indexOf(r);
  if (s == -1) return e;
  for (; s > -1; ) {
    a.push(e.slice(n, s));
    var i = e.indexOf(t, s + r.length);
    if (i == -1) break;
    (s = e.indexOf(r, n = i + t.length)) == -1 && a.push(e.slice(n));
  }
  return a.join("");
}
var Wf = { " ": 1, "	": 1, "\r": 1, "\n": 1, ">": 1 };
function va(e, r) {
  for (var t = e.indexOf("<" + r), a = r.length + 1, n = e.length; t >= 0 && t <= n - a && !Wf[e.charAt(t + a)]; ) t = e.indexOf("<" + r, t + 1);
  if (t === -1) return null;
  var s = e.indexOf(">", t + r.length);
  if (s === -1) return null;
  var i = "</" + r + ">", l = e.indexOf(i, s);
  return l == -1 ? null : [e.slice(t, l + i.length), e.slice(s + 1, l)];
}
var Wt = /* @__PURE__ */ (function() {
  var e = {};
  return function(r, t) {
    var a = e[t];
    a || (e[t] = a = [new RegExp("<(?:\\w+:)?" + t + "\\b[^<>]*>", "g"), new RegExp("</(?:\\w+:)?" + t + ">", "g")]), a[0].lastIndex = a[1].lastIndex = 0;
    var n = a[0].exec(r);
    if (!n) return null;
    var s = n.index, i = a[0].lastIndex;
    if (a[1].lastIndex = a[0].lastIndex, !(n = a[1].exec(r))) return null;
    var l = n.index, o = a[1].lastIndex;
    return [r.slice(s, o), r.slice(i, l)];
  };
})(), kc = /* @__PURE__ */ (function() {
  var e = {};
  return function(r, t) {
    var a, n = [], s = e[t];
    for (s || (e[t] = s = [new RegExp("<(?:\\w+:)?" + t + "\\b[^<>]*>", "g"), new RegExp("</(?:\\w+:)?" + t + ">", "g")]), s[0].lastIndex = s[1].lastIndex = 0; a = s[0].exec(r); ) {
      var i = a.index;
      if (s[1].lastIndex = s[0].lastIndex, !(a = s[1].exec(r))) return null;
      var l = s[1].lastIndex;
      n.push(r.slice(i, l)), s[0].lastIndex = s[1].lastIndex;
    }
    return n.length == 0 ? null : n;
  };
})(), zf = /* @__PURE__ */ (function() {
  var e = {};
  return function(r, t) {
    var a, n = [], s = e[t];
    s || (e[t] = s = [new RegExp("<(?:\\w+:)?" + t + "\\b[^<>]*>", "g"), new RegExp("</(?:\\w+:)?" + t + ">", "g")]), s[0].lastIndex = s[1].lastIndex = 0;
    for (var i = 0, l = 0; a = s[0].exec(r); ) {
      if (i = a.index, n.push(r.slice(l, i)), l = i, s[1].lastIndex = s[0].lastIndex, !(a = s[1].exec(r))) return null;
      l = s[1].lastIndex, s[0].lastIndex = s[1].lastIndex;
    }
    return n.push(r.slice(l)), n.length == 0 ? "" : n.join("");
  };
})(), Hf = /* @__PURE__ */ (function() {
  var e = {};
  return function(r, t) {
    var a, n = [], s = e[t];
    for (s || (e[t] = s = [new RegExp("<" + t + "\\b[^<>]*>", "ig"), new RegExp("</" + t + ">", "ig")]), s[0].lastIndex = s[1].lastIndex = 0; a = s[0].exec(r); ) {
      var i = a.index;
      if (s[1].lastIndex = s[0].lastIndex, !(a = s[1].exec(r))) return null;
      var l = s[1].lastIndex;
      n.push(r.slice(i, l)), s[0].lastIndex = s[1].lastIndex;
    }
    return n.length == 0 ? null : n;
  };
})();
function _c(e) {
  return e ? e.content && e.type ? Ea(e.content, !0) : e.data ? Ia(e.data) : e.asNodeBuffer && Ve ? Ia(e.asNodeBuffer().toString("binary")) : e.asBinary ? Ia(e.asBinary()) : e._data && e._data.getContent ? Ia(Ea(Array.prototype.slice.call(e._data.getContent(), 0))) : null : null;
}
function Sc(e) {
  if (!e) return null;
  if (e.data) return Yn(e.data);
  if (e.asNodeBuffer && Ve) return e.asNodeBuffer();
  if (e._data && e._data.getContent) {
    var r = e._data.getContent();
    return typeof r == "string" ? Yn(r) : Array.prototype.slice.call(r);
  }
  return e.content && e.type ? e.content : null;
}
function br(e, r) {
  for (var t = e.FullPaths || gt(e.files), a = r.toLowerCase().replace(/[\/]/g, "\\"), n = a.replace(/\\/g, "/"), s = 0; s < t.length; ++s) {
    var i = t[s].replace(/^Root Entry[\/]/, "").toLowerCase();
    if (a == i || n == i) return e.files ? e.files[t[s]] : e.FileIndex[s];
  }
  return null;
}
function ci(e, r) {
  var t = br(e, r);
  if (t == null) throw new Error("Cannot find file " + r + " in zip");
  return t;
}
function It(e, r, t) {
  if (!t) return (a = ci(e, r)) && a.name.slice(-4) === ".bin" ? Sc(a) : _c(a);
  var a;
  if (!r) return null;
  try {
    return It(e, r);
  } catch {
    return null;
  }
}
function ir(e, r, t) {
  if (!t) return _c(ci(e, r));
  if (!r) return null;
  try {
    return ir(e, r);
  } catch {
    return null;
  }
}
function Ki(e) {
  for (var r = e.FullPaths || gt(e.files), t = [], a = 0; a < r.length; ++a) r[a].slice(-1) != "/" && t.push(r[a].replace(/^Root Entry[\/]/, ""));
  return t.sort();
}
function Me(e, r, t) {
  if (e.FullPaths) {
    var a;
    if (Array.isArray(t) && typeof t[0] == "string" && (t = t.join("")), typeof t == "string") return a = Ve ? Ur(t) : (function(n) {
      for (var s = [], i = 0, l = n.length + 250, o = ea(n.length + 255), c = 0; c < n.length; ++c) {
        var f = n.charCodeAt(c);
        if (f < 128) o[i++] = f;
        else if (f < 2048) o[i++] = 192 | f >> 6 & 31, o[i++] = 128 | 63 & f;
        else if (f >= 55296 && f < 57344) {
          f = 64 + (1023 & f);
          var u = 1023 & n.charCodeAt(++c);
          o[i++] = 240 | f >> 8 & 7, o[i++] = 128 | f >> 2 & 63, o[i++] = 128 | u >> 6 & 15 | (3 & f) << 4, o[i++] = 128 | 63 & u;
        } else o[i++] = 224 | f >> 12 & 15, o[i++] = 128 | f >> 6 & 63, o[i++] = 128 | 63 & f;
        i > l && (s.push(o.slice(0, i)), i = 0, o = ea(65535), l = 65530);
      }
      return s.push(o.slice(0, i)), xt(s);
    })(t), Ee.utils.cfb_add(e, r, a);
    Ee.utils.cfb_add(e, r, t);
  } else e.file(r, t);
}
function li() {
  return Ee.utils.cfb_new();
}
function xc(e, r) {
  switch (r.type) {
    case "base64":
      return Ee.read(e, { type: "base64" });
    case "binary":
      return Ee.read(e, { type: "binary" });
    case "buffer":
    case "array":
      return Ee.read(e, { type: "buffer" });
  }
  throw new Error("Unrecognized type " + r.type);
}
function Ra(e, r) {
  if (e.charAt(0) == "/") return e.slice(1);
  var t = r.split("/");
  r.slice(-1) != "/" && t.pop();
  for (var a = e.split("/"); a.length !== 0; ) {
    var n = a.shift();
    n === ".." ? t.pop() : n !== "." && t.push(n);
  }
  return t.join("/");
}
var kt = `<?xml version="1.0" encoding="UTF-8" standalone="yes"?>\r
`, Ac = /\s([^"\s?>\/]+)\s*=\s*((?:")([^"]*)(?:")|(?:')([^']*)(?:')|([^'">\s]+))/g, Yi = /<[\/\?]?[a-zA-Z0-9:_-]+(?:\s+[^"\s?<>\/]+\s*=\s*(?:"[^"]*"|'[^']*'|[^'"<>\s=]+))*\s*[\/\?]?>/gm, Vt = kt.match(Yi) ? Yi : /<[^<>]*>/g, Vf = /<\w*:/, $f = /<(\/?)\w+:/;
function pe(e, r, t) {
  for (var a = {}, n = 0, s = 0; n !== e.length && (s = e.charCodeAt(n)) !== 32 && s !== 10 && s !== 13; ++n) ;
  if (r || (a[0] = e.slice(0, n)), n === e.length) return a;
  var i = e.match(Ac), l = 0, o = "", c = 0, f = "", u = "", h = 1;
  if (i) for (c = 0; c != i.length; ++c) {
    for (u = i[c].slice(1), s = 0; s != u.length && u.charCodeAt(s) !== 61; ++s) ;
    for (f = u.slice(0, s).trim(); u.charCodeAt(s + 1) == 32; ) ++s;
    for (h = (n = u.charCodeAt(s + 1)) == 34 || n == 39 ? 1 : 0, o = u.slice(s + 1 + h, u.length - h), l = 0; l != f.length && f.charCodeAt(l) !== 58; ++l) ;
    if (l === f.length) f.indexOf("_") > 0 && (f = f.slice(0, f.indexOf("_"))), a[f] = o, a[f.toLowerCase()] = o;
    else {
      var p = (l === 5 && f.slice(0, 5) === "xmlns" ? "xmlns" : "") + f.slice(l + 1);
      if (a[p] && f.slice(l - 3, l) == "ext") continue;
      a[p] = o, a[p.toLowerCase()] = o;
    }
  }
  return a;
}
function Gf(e, r, t) {
  for (var a = {}, n = 0, s = 0; n !== e.length && (s = e.charCodeAt(n)) !== 32 && s !== 10 && s !== 13; ++n) ;
  if (n === e.length) return a;
  var i = e.match(Ac), l = "", o = 0, c = "", f = "", u = 1;
  if (i) for (o = 0; o != i.length; ++o) {
    for (f = i[o].slice(1), s = 0; s != f.length && f.charCodeAt(s) !== 61; ++s) ;
    for (c = f.slice(0, s).trim(); f.charCodeAt(s + 1) == 32; ) ++s;
    u = (n = f.charCodeAt(s + 1)) == 34 || n == 39 ? 1 : 0, l = f.slice(s + 1 + u, f.length - u), c.indexOf("_") > 0 && (c = c.slice(0, c.indexOf("_"))), a[c] = l, a[c.toLowerCase()] = l;
  }
  return a;
}
function Tr(e) {
  return e.replace($f, "<$1");
}
var Cc = { "&quot;": '"', "&apos;": "'", "&gt;": ">", "&lt;": "<", "&amp;": "&" }, fi = ls(Cc), et = /* @__PURE__ */ (function() {
  var e = /&(?:quot|apos|gt|lt|amp|#x?([\da-fA-F]+));/gi, r = /_x([\da-fA-F]{4})_/gi;
  function t(a) {
    var n = a + "", s = n.indexOf("<![CDATA[");
    if (s == -1) return n.replace(e, function(l, o) {
      return Cc[l] || String.fromCharCode(parseInt(o, l.indexOf("x") > -1 ? 16 : 10)) || l;
    }).replace(r, function(l, o) {
      return String.fromCharCode(parseInt(o, 16));
    });
    var i = n.indexOf("]]>");
    return t(n.slice(0, s)) + n.slice(s + 9, i) + t(n.slice(i + 3));
  }
  return function(a, n) {
    var s = t(a);
    return n ? s.replace(/\r\n/g, `
`) : s;
  };
})(), hi = /[&<>'"]/g, Xf = /[\u0000-\u0008\u000b-\u001f\uFFFE-\uFFFF]/g;
function Be(e) {
  return (e + "").replace(hi, function(r) {
    return fi[r];
  }).replace(Xf, function(r) {
    return "_x" + ("000" + r.charCodeAt(0).toString(16)).slice(-4) + "_";
  });
}
function Ji(e) {
  return Be(e).replace(/ /g, "_x0020_");
}
var Ic = /[\u0000-\u001f]/g;
function Za(e) {
  return (e + "").replace(hi, function(r) {
    return fi[r];
  }).replace(/\n/g, "<br/>").replace(Ic, function(r) {
    return "&#x" + ("000" + r.charCodeAt(0).toString(16)).slice(-4) + ";";
  });
}
var qi = /* @__PURE__ */ (function() {
  var e = /&#(\d+);/g;
  function r(t, a) {
    return String.fromCharCode(parseInt(a, 10));
  }
  return function(t) {
    return t.replace(e, r);
  };
})();
function ot(e) {
  switch (e) {
    case 1:
    case !0:
    case "1":
    case "true":
      return !0;
    case 0:
    case !1:
    case "0":
    case "false":
      return !1;
  }
  return !1;
}
function ws(e) {
  for (var r = "", t = 0, a = 0, n = 0, s = 0, i = 0, l = 0; t < e.length; ) (a = e.charCodeAt(t++)) < 128 ? r += String.fromCharCode(a) : (n = e.charCodeAt(t++), a > 191 && a < 224 ? (i = (31 & a) << 6, i |= 63 & n, r += String.fromCharCode(i)) : (s = e.charCodeAt(t++), a < 240 ? r += String.fromCharCode((15 & a) << 12 | (63 & n) << 6 | 63 & s) : (l = ((7 & a) << 18 | (63 & n) << 12 | (63 & s) << 6 | 63 & (i = e.charCodeAt(t++))) - 65536, r += String.fromCharCode(55296 + (l >>> 10 & 1023)), r += String.fromCharCode(56320 + (1023 & l)))));
  return r;
}
function Qi(e) {
  var r, t, a, n = ea(2 * e.length), s = 1, i = 0, l = 0;
  for (t = 0; t < e.length; t += s) s = 1, (a = e.charCodeAt(t)) < 128 ? r = a : a < 224 ? (r = 64 * (31 & a) + (63 & e.charCodeAt(t + 1)), s = 2) : a < 240 ? (r = 4096 * (15 & a) + 64 * (63 & e.charCodeAt(t + 1)) + (63 & e.charCodeAt(t + 2)), s = 3) : (s = 4, r = 262144 * (7 & a) + 4096 * (63 & e.charCodeAt(t + 1)) + 64 * (63 & e.charCodeAt(t + 2)) + (63 & e.charCodeAt(t + 3)), l = 55296 + ((r -= 65536) >>> 10 & 1023), r = 56320 + (1023 & r)), l !== 0 && (n[i++] = 255 & l, n[i++] = l >>> 8, l = 0), n[i++] = r % 256, n[i++] = r >>> 8;
  return n.slice(0, i).toString("ucs2");
}
function Zi(e) {
  return Ur(e, "binary").toString("utf8");
}
var Dn = "foo bar baz☃🍣", ht = Ve && (Zi(Dn) == ws(Dn) && Zi || Qi(Dn) == ws(Dn) && Qi) || ws, Dr = Ve ? function(e) {
  return Ur(e, "utf8").toString("binary");
} : function(e) {
  for (var r = [], t = 0, a = 0, n = 0; t < e.length; ) switch (a = e.charCodeAt(t++), !0) {
    case a < 128:
      r.push(String.fromCharCode(a));
      break;
    case a < 2048:
      r.push(String.fromCharCode(192 + (a >> 6))), r.push(String.fromCharCode(128 + (63 & a)));
      break;
    case (a >= 55296 && a < 57344):
      a -= 55296, n = e.charCodeAt(t++) - 56320 + (a << 10), r.push(String.fromCharCode(240 + (n >> 18 & 7))), r.push(String.fromCharCode(144 + (n >> 12 & 63))), r.push(String.fromCharCode(128 + (n >> 6 & 63))), r.push(String.fromCharCode(128 + (63 & n)));
      break;
    default:
      r.push(String.fromCharCode(224 + (a >> 12))), r.push(String.fromCharCode(128 + (a >> 6 & 63))), r.push(String.fromCharCode(128 + (63 & a)));
  }
  return r.join("");
}, Rc = (function() {
  var e = [["nbsp", " "], ["middot", "·"], ["quot", '"'], ["apos", "'"], ["gt", ">"], ["lt", "<"], ["amp", "&"]].map(function(r) {
    return [new RegExp("&" + r[0] + ";", "ig"), r[1]];
  });
  return function(r) {
    for (var t = r.replace(/^[\t\n\r ]+/, "").replace(/(^|[^\t\n\r ])[\t\n\r ]+$/, "$1").replace(/>\s+/g, ">").replace(/\b\s+</g, "<").replace(/[\t\n\r ]+/g, " ").replace(/<\s*[bB][rR]\s*\/?>/g, `
`).replace(/<[^<>]*>/g, ""), a = 0; a < e.length; ++a) t = t.replace(e[a][0], e[a][1]);
    return t;
  };
})(), jf = /<\/?(?:vt:)?variant>/g, Kf = /<(?:vt:)([^<"'>]*)>([\s\S]*)</;
function eo(e, r) {
  var t = pe(e), a = kc(e, t.baseType) || [], n = [];
  if (a.length != t.size) {
    if (r.WTF) throw new Error("unexpected vector length " + a.length + " != " + t.size);
    return n;
  }
  return a.forEach(function(s) {
    var i = s.replace(jf, "").match(Kf);
    i && n.push({ v: ht(i[2]), t: i[1] });
  }), n;
}
var Oc = /(^\s|\s$|\n)/;
function $t(e, r) {
  return "<" + e + (r.match(Oc) ? ' xml:space="preserve"' : "") + ">" + r + "</" + e + ">";
}
function _a(e) {
  return gt(e).map(function(r) {
    return " " + r + '="' + e[r] + '"';
  }).join("");
}
function ne(e, r, t) {
  return "<" + e + (t != null ? _a(t) : "") + (r != null ? (r.match(Oc) ? ' xml:space="preserve"' : "") + ">" + r + "</" + e : "/") + ">";
}
function Hs(e, r) {
  try {
    return e.toISOString().replace(/\.\d*/, "");
  } catch (t) {
    if (r) throw t;
  }
  return "";
}
function hs(e) {
  if (Ve && Buffer.isBuffer(e)) return e.toString("utf8");
  if (typeof e == "string") return e;
  if (typeof Uint8Array < "u" && e instanceof Uint8Array) return ht(Pr(si(e)));
  throw new Error("Bad input format: expected Buffer or string");
}
var Rt = /<([\/]?)([^\s?><!\/:"]*:|)([^\s?<>:\/"]+)(?:\s+[^<>=?"'\s]+="[^"]*?")*\s*[\/]?>/gm, Yf = "http://schemas.openxmlformats.org/package/2006/metadata/core-properties", Jf = "http://schemas.openxmlformats.org/officeDocument/2006/custom-properties", qf = "http://schemas.openxmlformats.org/officeDocument/2006/extended-properties", Nc = "http://schemas.openxmlformats.org/package/2006/content-types", Qf = "http://schemas.openxmlformats.org/package/2006/relationships", Fc = "http://schemas.microsoft.com/office/spreadsheetml/2018/threadedcomments", Zf = "http://purl.org/dc/elements/1.1/", e1 = "http://purl.org/dc/terms/", t1 = "http://purl.org/dc/dcmitype/", Dc = "http://schemas.openxmlformats.org/officeDocument/2006/relationships", ui = "http://schemas.openxmlformats.org/officeDocument/2006/docPropsVTypes", Pc = "http://www.w3.org/2001/XMLSchema-instance", r1 = "http://www.w3.org/2001/XMLSchema", Sa = ["http://schemas.openxmlformats.org/spreadsheetml/2006/main", "http://purl.oclc.org/ooxml/spreadsheetml/main", "http://schemas.microsoft.com/office/excel/2006/main", "http://schemas.microsoft.com/office/excel/2006/2"], dn = "urn:schemas-microsoft-com:office:office", us = "urn:schemas-microsoft-com:office:excel", Zn = "urn:schemas-microsoft-com:office:spreadsheet", Lc = "uuid:C2F41010-65B3-11d1-A29F-00AA00C14882", a1 = "http://macVmlSchemaUri", n1 = "urn:schemas-microsoft-com:vml", Mc = "http://www.w3.org/TR/REC-html40", to = function(e) {
  for (var r = [], t = 0; t < e[0].length; ++t) if (e[0][t]) for (var a = 0, n = e[0][t].length; a < n; a += 10240) r.push.apply(r, e[0][t].slice(a, a + 10240));
  return r;
}, ro = Ve ? function(e) {
  return e[0].length > 0 && Buffer.isBuffer(e[0][0]) ? Buffer.concat(e[0].map(function(r) {
    return Buffer.isBuffer(r) ? r : Ur(r);
  })) : to(e);
} : to, ao = function(e, r, t) {
  for (var a = [], n = r; n < t; n += 2) a.push(String.fromCharCode(Vr(e, n)));
  return a.join("").replace(or, "");
}, ds = Ve ? function(e, r, t) {
  return Buffer.isBuffer(e) && fn ? e.toString("utf16le", r, t).replace(or, "") : ao(e, r, t);
} : ao, no = function(e, r, t) {
  for (var a = [], n = r; n < r + t; ++n) a.push(("0" + e[n].toString(16)).slice(-2));
  return a.join("");
}, Uc = Ve ? function(e, r, t) {
  return Buffer.isBuffer(e) ? e.toString("hex", r, r + t) : no(e, r, t);
} : no, so = function(e, r, t) {
  for (var a = [], n = r; n < t; n++) a.push(String.fromCharCode(Ca(e, n)));
  return a.join("");
}, $a = Ve ? function(e, r, t) {
  return Buffer.isBuffer(e) ? e.toString("utf8", r, t) : so(e, r, t);
} : so, Bc = function(e, r) {
  var t = Bt(e, r);
  return t > 0 ? $a(e, r + 4, r + 4 + t - 1) : "";
}, di = Bc, Wc = function(e, r) {
  var t = Bt(e, r);
  return t > 0 ? $a(e, r + 4, r + 4 + t - 1) : "";
}, pi = Wc, zc = function(e, r) {
  var t = 2 * Bt(e, r);
  return t > 0 ? $a(e, r + 4, r + 4 + t - 1) : "";
}, mi = zc, Hc = function(e, r) {
  var t = Bt(e, r);
  return t > 0 ? ds(e, r + 4, r + 4 + t) : "";
}, vi = Hc, Vc = function(e, r) {
  var t = Bt(e, r);
  return t > 0 ? $a(e, r + 4, r + 4 + t) : "";
}, gi = Vc, $c = function(e, r) {
  return (function(t, a) {
    for (var n = 1 - 2 * (t[a + 7] >>> 7), s = ((127 & t[a + 7]) << 4) + (t[a + 6] >>> 4 & 15), i = 15 & t[a + 6], l = 5; l >= 0; --l) i = 256 * i + t[a + l];
    return s == 2047 ? i == 0 ? n * (1 / 0) : NaN : (s == 0 ? s = -1022 : (s -= 1023, i += Math.pow(2, 52)), n * Math.pow(2, s - 52) * i);
  })(e, r);
}, es = $c, bi = function(e) {
  return Array.isArray(e) || typeof Uint8Array < "u" && e instanceof Uint8Array;
};
function Gc() {
  ds = function(e, r, t) {
    return ze.utils.decode(1200, e.slice(r, t)).replace(or, "");
  }, $a = function(e, r, t) {
    return ze.utils.decode(65001, e.slice(r, t));
  }, di = function(e, r) {
    var t = Bt(e, r);
    return t > 0 ? ze.utils.decode(ya, e.slice(r + 4, r + 4 + t - 1)) : "";
  }, pi = function(e, r) {
    var t = Bt(e, r);
    return t > 0 ? ze.utils.decode(Dt, e.slice(r + 4, r + 4 + t - 1)) : "";
  }, mi = function(e, r) {
    var t = 2 * Bt(e, r);
    return t > 0 ? ze.utils.decode(1200, e.slice(r + 4, r + 4 + t - 1)) : "";
  }, vi = function(e, r) {
    var t = Bt(e, r);
    return t > 0 ? ze.utils.decode(1200, e.slice(r + 4, r + 4 + t)) : "";
  }, gi = function(e, r) {
    var t = Bt(e, r);
    return t > 0 ? ze.utils.decode(65001, e.slice(r + 4, r + 4 + t)) : "";
  };
}
Ve && (di = function(e, r) {
  if (!Buffer.isBuffer(e)) return Bc(e, r);
  var t = e.readUInt32LE(r);
  return t > 0 ? e.toString("utf8", r + 4, r + 4 + t - 1) : "";
}, pi = function(e, r) {
  if (!Buffer.isBuffer(e)) return Wc(e, r);
  var t = e.readUInt32LE(r);
  return t > 0 ? e.toString("utf8", r + 4, r + 4 + t - 1) : "";
}, mi = function(e, r) {
  if (!Buffer.isBuffer(e) || !fn) return zc(e, r);
  var t = 2 * e.readUInt32LE(r);
  return e.toString("utf16le", r + 4, r + 4 + t - 1);
}, vi = function(e, r) {
  if (!Buffer.isBuffer(e) || !fn) return Hc(e, r);
  var t = e.readUInt32LE(r);
  return e.toString("utf16le", r + 4, r + 4 + t);
}, gi = function(e, r) {
  if (!Buffer.isBuffer(e)) return Vc(e, r);
  var t = e.readUInt32LE(r);
  return e.toString("utf8", r + 4, r + 4 + t);
}, es = function(e, r) {
  return Buffer.isBuffer(e) ? e.readDoubleLE(r) : $c(e, r);
}, bi = function(e) {
  return Buffer.isBuffer(e) || Array.isArray(e) || typeof Uint8Array < "u" && e instanceof Uint8Array;
}), ze !== void 0 && Gc();
var Ca = function(e, r) {
  return e[r];
}, Vr = function(e, r) {
  return 256 * e[r + 1] + e[r];
}, s1 = function(e, r) {
  var t = 256 * e[r + 1] + e[r];
  return t < 32768 ? t : -1 * (65535 - t + 1);
}, Bt = function(e, r) {
  return e[r + 3] * (1 << 24) + (e[r + 2] << 16) + (e[r + 1] << 8) + e[r];
}, la = function(e, r) {
  return e[r + 3] << 24 | e[r + 2] << 16 | e[r + 1] << 8 | e[r];
}, i1 = function(e, r) {
  return e[r] << 24 | e[r + 1] << 16 | e[r + 2] << 8 | e[r + 3];
};
function en(e, r) {
  var t, a, n, s, i, l, o = "", c = [];
  switch (r) {
    case "dbcs":
      if (l = this.l, Ve && Buffer.isBuffer(this) && fn) o = this.slice(this.l, this.l + 2 * e).toString("utf16le");
      else for (i = 0; i < e; ++i) o += String.fromCharCode(Vr(this, l)), l += 2;
      e *= 2;
      break;
    case "utf8":
      o = $a(this, this.l, this.l + e);
      break;
    case "utf16le":
      e *= 2, o = ds(this, this.l, this.l + e);
      break;
    case "wstr":
      if (ze === void 0) return en.call(this, e, "dbcs");
      o = ze.utils.decode(Dt, this.slice(this.l, this.l + 2 * e)), e *= 2;
      break;
    case "lpstr-ansi":
      o = di(this, this.l), e = 4 + Bt(this, this.l);
      break;
    case "lpstr-cp":
      o = pi(this, this.l), e = 4 + Bt(this, this.l);
      break;
    case "lpwstr":
      o = mi(this, this.l), e = 4 + 2 * Bt(this, this.l);
      break;
    case "lpp4":
      e = 4 + Bt(this, this.l), o = vi(this, this.l), 2 & e && (e += 2);
      break;
    case "8lpp4":
      e = 4 + Bt(this, this.l), o = gi(this, this.l), 3 & e && (e += 4 - (3 & e));
      break;
    case "cstr":
      for (e = 0, o = ""; (n = Ca(this, this.l + e++)) !== 0; ) c.push(Ja(n));
      o = c.join("");
      break;
    case "_wstr":
      for (e = 0, o = ""; (n = Vr(this, this.l + e)) !== 0; ) c.push(Ja(n)), e += 2;
      e += 2, o = c.join("");
      break;
    case "dbcs-cont":
      for (o = "", l = this.l, i = 0; i < e; ++i) {
        if (this.lens && this.lens.indexOf(l) !== -1) return n = Ca(this, l), this.l = l + 1, s = en.call(this, e - i, n ? "dbcs-cont" : "sbcs-cont"), c.join("") + s;
        c.push(Ja(Vr(this, l))), l += 2;
      }
      o = c.join(""), e *= 2;
      break;
    case "cpstr":
      if (ze !== void 0) {
        o = ze.utils.decode(Dt, this.slice(this.l, this.l + e));
        break;
      }
    case "sbcs-cont":
      for (o = "", l = this.l, i = 0; i != e; ++i) {
        if (this.lens && this.lens.indexOf(l) !== -1) return n = Ca(this, l), this.l = l + 1, s = en.call(this, e - i, n ? "dbcs-cont" : "sbcs-cont"), c.join("") + s;
        c.push(Ja(Ca(this, l))), l += 1;
      }
      o = c.join("");
      break;
    default:
      switch (e) {
        case 1:
          return t = Ca(this, this.l), this.l++, t;
        case 2:
          return t = (r === "i" ? s1 : Vr)(this, this.l), this.l += 2, t;
        case 4:
        case -4:
          return r !== "i" && 128 & this[this.l + 3] ? (a = Bt(this, this.l), this.l += 4, a) : (t = (e > 0 ? la : i1)(this, this.l), this.l += 4, t);
        case 8:
        case -8:
          if (r === "f") return a = e == 8 ? es(this, this.l) : es([this[this.l + 7], this[this.l + 6], this[this.l + 5], this[this.l + 4], this[this.l + 3], this[this.l + 2], this[this.l + 1], this[this.l + 0]], 0), this.l += 8, a;
          e = 8;
        case 16:
          o = Uc(this, this.l, e);
      }
  }
  return this.l += e, o;
}
var o1 = function(e, r, t) {
  e[t] = 255 & r, e[t + 1] = r >>> 8 & 255, e[t + 2] = r >>> 16 & 255, e[t + 3] = r >>> 24 & 255;
}, c1 = function(e, r, t) {
  e[t] = 255 & r, e[t + 1] = r >> 8 & 255, e[t + 2] = r >> 16 & 255, e[t + 3] = r >> 24 & 255;
}, l1 = function(e, r, t) {
  e[t] = 255 & r, e[t + 1] = r >>> 8 & 255;
};
function f1(e, r, t) {
  var a = 0, n = 0;
  if (t === "dbcs") {
    for (n = 0; n != r.length; ++n) l1(this, r.charCodeAt(n), this.l + 2 * n);
    a = 2 * r.length;
  } else if (t === "sbcs" || t == "cpstr") if (ze !== void 0 && ya == 874) {
    for (n = 0; n != r.length; ++n) {
      var s = ze.utils.encode(ya, r.charAt(n));
      this[this.l + n] = s[0];
    }
    a = r.length;
  } else if (ze !== void 0 && t == "cpstr") {
    if ((s = ze.utils.encode(Dt, r)).length == r.length) for (n = 0; n < r.length; ++n) s[n] == 0 && r.charCodeAt(n) != 0 && (s[n] = 95);
    if (s.length == 2 * r.length) for (n = 0; n < r.length; ++n) s[2 * n] == 0 && s[2 * n + 1] == 0 && r.charCodeAt(n) != 0 && (s[2 * n] = 95);
    for (n = 0; n < s.length; ++n) this[this.l + n] = s[n];
    a = s.length;
  } else {
    for (r = r.replace(/[^\x00-\x7F]/g, "_"), n = 0; n != r.length; ++n) this[this.l + n] = 255 & r.charCodeAt(n);
    a = r.length;
  }
  else {
    if (t === "hex") {
      for (; n < e; ++n) this[this.l++] = parseInt(r.slice(2 * n, 2 * n + 2), 16) || 0;
      return this;
    }
    if (t === "utf16le") {
      var i = Math.min(this.l + e, this.length);
      for (n = 0; n < Math.min(r.length, e); ++n) {
        var l = r.charCodeAt(n);
        this[this.l++] = 255 & l, this[this.l++] = l >> 8;
      }
      for (; this.l < i; ) this[this.l++] = 0;
      return this;
    }
    switch (e) {
      case 1:
        a = 1, this[this.l] = 255 & r;
        break;
      case 2:
        a = 2, this[this.l] = 255 & r, r >>>= 8, this[this.l + 1] = 255 & r;
        break;
      case 3:
        a = 3, this[this.l] = 255 & r, r >>>= 8, this[this.l + 1] = 255 & r, r >>>= 8, this[this.l + 2] = 255 & r;
        break;
      case 4:
        a = 4, o1(this, r, this.l);
        break;
      case 8:
        if (a = 8, t === "f") {
          (function(o, c, f) {
            var u = (c < 0 || 1 / c == -1 / 0 ? 1 : 0) << 7, h = 0, p = 0, d = u ? -c : c;
            isFinite(d) ? d == 0 ? h = p = 0 : (h = Math.floor(Math.log(d) / Math.LN2), p = d * Math.pow(2, 52 - h), h <= -1023 && (!isFinite(p) || p < Math.pow(2, 52)) ? h = -1022 : (p -= Math.pow(2, 52), h += 1023)) : (h = 2047, p = isNaN(c) ? 26985 : 0);
            for (var g = 0; g <= 5; ++g, p /= 256) o[f + g] = 255 & p;
            o[f + 6] = (15 & h) << 4 | 15 & p, o[f + 7] = h >> 4 | u;
          })(this, r, this.l);
          break;
        }
      case 16:
        break;
      case -4:
        a = 4, c1(this, r, this.l);
    }
  }
  return this.l += a, this;
}
function Xc(e, r) {
  var t = Uc(this, this.l, e.length >> 1);
  if (t !== e) throw new Error(r + "Expected " + e + " saw " + t);
  this.l += e.length >> 1;
}
function Ft(e, r) {
  e.l = r, e.read_shift = en, e.chk = Xc, e.write_shift = f1;
}
function tr(e, r) {
  e.l += r;
}
function V(e) {
  var r = ea(e);
  return Ft(r, 0), r;
}
function Yr(e, r, t) {
  if (e) {
    var a, n, s;
    Ft(e, e.l || 0);
    for (var i = e.length, l = 0, o = 0; e.l < i; ) {
      128 & (l = e.read_shift(1)) && (l = (127 & l) + ((127 & e.read_shift(1)) << 7));
      var c = Tn[l] || Tn[65535];
      for (s = 127 & (a = e.read_shift(1)), n = 1; n < 4 && 128 & a; ++n) s += (127 & (a = e.read_shift(1))) << 7 * n;
      o = e.l + s;
      var f = c.f && c.f(e, s, t);
      if (e.l = o, r(f, c, l)) return;
    }
  }
}
function rr() {
  var e = [], r = Ve ? 16384 : 2048;
  Ve && V(r).copy;
  var t = function(i) {
    var l = V(i);
    return Ft(l, 0), l;
  }, a = t(r), n = function() {
    a && (a.l && (a.length > a.l && ((a = a.slice(0, a.l)).l = a.length), a.length > 0 && e.push(a)), a = null);
  }, s = function(i) {
    return a && i < a.length - a.l ? a : (n(), a = t(Math.max(i + 1, r)));
  };
  return { next: s, push: function(i) {
    n(), (a = i).l == null && (a.l = a.length), s(r);
  }, end: function() {
    return n(), xt(e);
  }, _bufs: e, end2: function() {
    return n(), e;
  } };
}
function J(e, r, t, a) {
  var n, s = +r;
  if (!isNaN(s)) {
    a || (a = Tn[s].p || (t || []).length || 0), n = 1 + (s >= 128 ? 1 : 0) + 1, a >= 128 && ++n, a >= 16384 && ++n, a >= 2097152 && ++n;
    var i = e.next(n);
    s <= 127 ? i.write_shift(1, s) : (i.write_shift(1, 128 + (127 & s)), i.write_shift(1, s >> 7));
    for (var l = 0; l != 4; ++l) {
      if (!(a >= 128)) {
        i.write_shift(1, a);
        break;
      }
      i.write_shift(1, 128 + (127 & a)), a >>= 7;
    }
    a > 0 && bi(t) && e.push(t);
  }
}
function tn(e, r, t) {
  var a = st(e);
  if (r.s ? (a.cRel && (a.c += r.s.c), a.rRel && (a.r += r.s.r)) : (a.cRel && (a.c += r.c), a.rRel && (a.r += r.r)), !t || t.biff < 12) {
    for (; a.c >= 256; ) a.c -= 256;
    for (; a.r >= 65536; ) a.r -= 65536;
  }
  return a;
}
function io(e, r, t) {
  var a = st(e);
  return a.s = tn(a.s, r.s, t), a.e = tn(a.e, r.s, t), a;
}
function rn(e, r) {
  if (e.cRel && e.c < 0) for (e = st(e); e.c < 0; ) e.c += r > 8 ? 16384 : 256;
  if (e.rRel && e.r < 0) for (e = st(e); e.r < 0; ) e.r += r > 8 ? 1048576 : r > 5 ? 65536 : 16384;
  var t = Ge(e);
  return e.cRel || e.cRel == null || (t = t.replace(/^([A-Z])/, "$$$1")), e.rRel || e.rRel == null || (t = (function(a) {
    return a.replace(/([A-Z]|^)(\d+)$/, "$1$$$2");
  })(t)), t;
}
function Ts(e, r) {
  return e.s.r != 0 || e.s.rRel || e.e.r != (r.biff >= 12 ? 1048575 : r.biff >= 8 ? 65536 : 16384) || e.e.rRel ? e.s.c != 0 || e.s.cRel || e.e.c != (r.biff >= 12 ? 16383 : 255) || e.e.cRel ? rn(e.s, r.biff) + ":" + rn(e.e, r.biff) : (e.s.rRel ? "" : "$") + Xe(e.s.r) + ":" + (e.e.rRel ? "" : "$") + Xe(e.e.r) : (e.s.cRel ? "" : "$") + De(e.s.c) + ":" + (e.e.cRel ? "" : "$") + De(e.e.c);
}
function wi(e) {
  return parseInt(e.replace(/\$(\d+)$/, "$1"), 10) - 1;
}
function Xe(e) {
  return "" + (e + 1);
}
function Ti(e) {
  for (var r = e.replace(/^\$([A-Z])/, "$1"), t = 0, a = 0; a !== r.length; ++a) t = 26 * t + r.charCodeAt(a) - 64;
  return t - 1;
}
function De(e) {
  if (e < 0) throw new Error("invalid column " + e);
  var r = "";
  for (++e; e; e = Math.floor((e - 1) / 26)) r = String.fromCharCode((e - 1) % 26 + 65) + r;
  return r;
}
function ft(e) {
  for (var r = 0, t = 0, a = 0; a < e.length; ++a) {
    var n = e.charCodeAt(a);
    n >= 48 && n <= 57 ? r = 10 * r + (n - 48) : n >= 65 && n <= 90 && (t = 26 * t + (n - 64));
  }
  return { c: t - 1, r: r - 1 };
}
function Ge(e) {
  for (var r = e.c + 1, t = ""; r; r = (r - 1) / 26 | 0) t = String.fromCharCode((r - 1) % 26 + 65) + t;
  return t + (e.r + 1);
}
function Ot(e) {
  var r = e.indexOf(":");
  return r == -1 ? { s: ft(e), e: ft(e) } : { s: ft(e.slice(0, r)), e: ft(e.slice(r + 1)) };
}
function We(e, r) {
  return r === void 0 || typeof r == "number" ? We(e.s, e.e) : (typeof e != "string" && (e = Ge(e)), typeof r != "string" && (r = Ge(r)), e == r ? e : e + ":" + r);
}
function Ua(e) {
  var r = Ot(e);
  return "$" + De(r.s.c) + "$" + Xe(r.s.r) + ":$" + De(r.e.c) + "$" + Xe(r.e.r);
}
function pn(e, r) {
  if (!(e || r && r.biff <= 5 && r.biff >= 2)) throw new Error("empty sheet name");
  return /[^\w\u4E00-\u9FFF\u3040-\u30FF]/.test(e) ? "'" + e.replace(/'/g, "''") + "'" : e;
}
function Je(e) {
  var r = { s: { c: 0, r: 0 }, e: { c: 0, r: 0 } }, t = 0, a = 0, n = 0, s = e.length;
  for (t = 0; a < s && !((n = e.charCodeAt(a) - 64) < 1 || n > 26); ++a) t = 26 * t + n;
  for (r.s.c = --t, t = 0; a < s && !((n = e.charCodeAt(a) - 48) < 0 || n > 9); ++a) t = 10 * t + n;
  if (r.s.r = --t, a === s || n != 10) return r.e.c = r.s.c, r.e.r = r.s.r, r;
  for (++a, t = 0; a != s && !((n = e.charCodeAt(a) - 64) < 1 || n > 26); ++a) t = 26 * t + n;
  for (r.e.c = --t, t = 0; a != s && !((n = e.charCodeAt(a) - 48) < 0 || n > 9); ++a) t = 10 * t + n;
  return r.e.r = --t, r;
}
function h1(e, r) {
  var t = e.t == "d" && r instanceof Date;
  if (e.z != null) try {
    return e.w = lr(e.z, t ? yt(r) : r);
  } catch {
  }
  try {
    return e.w = lr((e.XF || {}).numFmtId || (t ? 14 : 0), t ? yt(r) : r);
  } catch {
    return "" + r;
  }
}
function Lr(e, r, t) {
  return e == null || e.t == null || e.t == "z" ? "" : e.w !== void 0 ? e.w : (e.t == "d" && !e.z && t && t.dateNF && (e.z = t.dateNF), e.t == "e" ? Lt[e.v] || e.v : h1(e, r ?? e.v));
}
function aa(e, r) {
  var t = r && r.sheet ? r.sheet : "Sheet1", a = {};
  return a[t] = e, { SheetNames: [t], Sheets: a };
}
function jc(e, r, t) {
  var a = t || {}, n = e ? e["!data"] != null : a.dense, s = e || (n ? { "!data": [] } : {});
  n && !s["!data"] && (s["!data"] = []);
  var i = 0, l = 0;
  if (s && a.origin != null) if (typeof a.origin == "number") i = a.origin;
  else {
    var o = typeof a.origin == "string" ? ft(a.origin) : a.origin;
    i = o.r, l = o.c;
  }
  var c = { s: { c: 1e7, r: 1e7 }, e: { c: 0, r: 0 } };
  if (s["!ref"]) {
    var f = Je(s["!ref"]);
    c.s.c = f.s.c, c.s.r = f.s.r, c.e.c = Math.max(c.e.c, f.e.c), c.e.r = Math.max(c.e.r, f.e.r), i == -1 && (c.e.r = i = s["!ref"] ? f.e.r + 1 : 0);
  } else c.s.c = c.e.c = c.s.r = c.e.r = 0;
  for (var u = [], h = !1, p = 0; p != r.length; ++p) if (r[p]) {
    if (!Array.isArray(r[p])) throw new Error("aoa_to_sheet expects an array of arrays");
    var d = i + p;
    n && (s["!data"][d] || (s["!data"][d] = []), u = s["!data"][d]);
    for (var g = r[p], m = 0; m != g.length; ++m) if (g[m] !== void 0) {
      var v = { v: g[m], t: "" }, y = l + m;
      if (c.s.r > d && (c.s.r = d), c.s.c > y && (c.s.c = y), c.e.r < d && (c.e.r = d), c.e.c < y && (c.e.c = y), h = !0, !g[m] || typeof g[m] != "object" || Array.isArray(g[m]) || g[m] instanceof Date) if (Array.isArray(v.v) && (v.f = g[m][1], v.v = v.v[0]), v.v === null) if (v.f) v.t = "n";
      else if (a.nullError) v.t = "e", v.v = 0;
      else {
        if (!a.sheetStubs) continue;
        v.t = "z";
      }
      else typeof v.v == "number" ? isFinite(v.v) ? v.t = "n" : isNaN(v.v) ? (v.t = "e", v.v = 15) : (v.t = "e", v.v = 7) : typeof v.v == "boolean" ? v.t = "b" : v.v instanceof Date ? (v.z = a.dateNF || be[14], a.UTC || (v.v = fs(v.v)), a.cellDates ? (v.t = "d", v.w = lr(v.z, yt(v.v, a.date1904))) : (v.t = "n", v.v = yt(v.v, a.date1904), v.w = lr(v.z, v.v))) : v.t = "s";
      else v = g[m];
      if (n) u[y] && u[y].z && (v.z = u[y].z), u[y] = v;
      else {
        var w = De(y) + (d + 1);
        s[w] && s[w].z && (v.z = s[w].z), s[w] = v;
      }
    }
  }
  return h && c.s.c < 104e5 && (s["!ref"] = We(c)), s;
}
function Ga(e, r) {
  return jc(null, e, r);
}
function Sr(e, r) {
  return r || (r = V(4)), r.write_shift(4, e), r;
}
function Yt(e) {
  var r = e.read_shift(4);
  return r === 0 ? "" : e.read_shift(r, "dbcs");
}
function Pt(e, r) {
  var t = !1;
  return r == null && (t = !0, r = V(4 + 2 * e.length)), r.write_shift(4, e.length), e.length > 0 && r.write_shift(0, e, "dbcs"), t ? r.slice(0, r.l) : r;
}
function u1(e) {
  return { ich: e.read_shift(2), ifnt: e.read_shift(2) };
}
function Vs(e, r) {
  var t = e.l, a = e.read_shift(1), n = Yt(e), s = [], i = { t: n, h: n };
  if (1 & a) {
    for (var l = e.read_shift(4), o = 0; o != l; ++o) s.push(u1(e));
    i.r = s;
  } else i.r = [{ ich: 0, ifnt: 0 }];
  return e.l = t + r, i;
}
var d1 = Vs;
function p1(e, r) {
  var t = !1;
  return r == null && (t = !0, r = V(23 + 4 * e.t.length)), r.write_shift(1, 1), Pt(e.t, r), r.write_shift(4, 1), (function(a, n) {
    n || (n = V(4)), n.write_shift(2, 0), n.write_shift(2, 0);
  })(0, r), t ? r.slice(0, r.l) : r;
}
function pr(e) {
  var r = e.read_shift(4), t = e.read_shift(2);
  return t += e.read_shift(1) << 16, e.l++, { c: r, iStyleRef: t };
}
function ia(e, r) {
  return r == null && (r = V(8)), r.write_shift(-4, e.c), r.write_shift(3, e.iStyleRef || e.s), r.write_shift(1, 0), r;
}
function oa(e) {
  var r = e.read_shift(2);
  return r += e.read_shift(1) << 16, e.l++, { c: -1, iStyleRef: r };
}
function ca(e, r) {
  return r == null && (r = V(4)), r.write_shift(3, e.iStyleRef || e.s), r.write_shift(1, 0), r;
}
var m1 = Yt, Kc = Pt;
function Xn(e) {
  var r = e.read_shift(4);
  return r === 0 || r === 4294967295 ? "" : e.read_shift(r, "dbcs");
}
function mn(e, r) {
  var t = !1;
  return r == null && (t = !0, r = V(127)), r.write_shift(4, e.length > 0 ? e.length : 4294967295), e.length > 0 && r.write_shift(0, e, "dbcs"), t ? r.slice(0, r.l) : r;
}
var v1 = Yt, ys = Xn, yi = mn;
function ts(e) {
  var r = e.slice(e.l, e.l + 4), t = 1 & r[0], a = 2 & r[0];
  e.l += 4;
  var n = a === 0 ? es([0, 0, 0, 0, 252 & r[0], r[1], r[2], r[3]], 0) : la(r, 0) >> 2;
  return t ? n / 100 : n;
}
function oo(e, r) {
  r == null && (r = V(4));
  var t = 0, a = 0, n = 100 * e;
  if (e == (0 | e) && e >= -536870912 && e < 1 << 29 ? a = 1 : n == (0 | n) && n >= -536870912 && n < 1 << 29 && (a = 1, t = 1), !a) throw new Error("unsupported RkNumber " + e);
  r.write_shift(-4, ((t ? n : e) << 2) + (t + 2));
}
function Yc(e) {
  var r = { s: {}, e: {} };
  return r.s.r = e.read_shift(4), r.e.r = e.read_shift(4), r.s.c = e.read_shift(4), r.e.c = e.read_shift(4), r;
}
var da = Yc, Xa = function(e, r) {
  return r || (r = V(16)), r.write_shift(4, e.s.r), r.write_shift(4, e.e.r), r.write_shift(4, e.s.c), r.write_shift(4, e.e.c), r;
};
function Jt(e) {
  if (e.length - e.l < 8) throw "XLS Xnum Buffer underflow";
  return e.read_shift(8, "f");
}
function Ba(e, r) {
  return (r || V(8)).write_shift(8, e, "f");
}
function rs(e, r) {
  if (r || (r = V(8)), !e || e.auto) return r.write_shift(4, 0), r.write_shift(4, 0), r;
  e.index != null ? (r.write_shift(1, 2), r.write_shift(1, e.index)) : e.theme != null ? (r.write_shift(1, 6), r.write_shift(1, e.theme)) : (r.write_shift(1, 5), r.write_shift(1, 0));
  var t = e.tint || 0;
  if (t > 0 ? t *= 32767 : t < 0 && (t *= 32768), r.write_shift(2, t), e.rgb && e.theme == null) {
    var a = e.rgb || "FFFFFF";
    typeof a == "number" && (a = ("000000" + a.toString(16)).slice(-6)), r.write_shift(1, parseInt(a.slice(0, 2), 16)), r.write_shift(1, parseInt(a.slice(2, 4), 16)), r.write_shift(1, parseInt(a.slice(4, 6), 16)), r.write_shift(1, 255);
  } else r.write_shift(2, 0), r.write_shift(1, 0), r.write_shift(1, 0);
  return r;
}
function co(e, r) {
  var t = e.read_shift(4);
  switch (t) {
    case 0:
      return "";
    case 4294967295:
    case 4294967294:
      return { 2: "BITMAP", 3: "METAFILEPICT", 8: "DIB", 14: "ENHMETAFILE" }[e.read_shift(4)] || "";
  }
  if (t > 400) throw new Error("Unsupported Clipboard: " + t.toString(16));
  return e.l -= 4, e.read_shift(0, r == 1 ? "lpstr" : "lpwstr");
}
var Ut = 80, g1 = [Ut, 81], $s = { 1: { n: "CodePage", t: 2 }, 2: { n: "Category", t: Ut }, 3: { n: "PresentationFormat", t: Ut }, 4: { n: "ByteCount", t: 3 }, 5: { n: "LineCount", t: 3 }, 6: { n: "ParagraphCount", t: 3 }, 7: { n: "SlideCount", t: 3 }, 8: { n: "NoteCount", t: 3 }, 9: { n: "HiddenCount", t: 3 }, 10: { n: "MultimediaClipCount", t: 3 }, 11: { n: "ScaleCrop", t: 11 }, 12: { n: "HeadingPairs", t: 4108 }, 13: { n: "TitlesOfParts", t: 4126 }, 14: { n: "Manager", t: Ut }, 15: { n: "Company", t: Ut }, 16: { n: "LinksUpToDate", t: 11 }, 17: { n: "CharacterCount", t: 3 }, 19: { n: "SharedDoc", t: 11 }, 22: { n: "HyperlinksChanged", t: 11 }, 23: { n: "AppVersion", t: 3, p: "version" }, 24: { n: "DigSig", t: 65 }, 26: { n: "ContentType", t: Ut }, 27: { n: "ContentStatus", t: Ut }, 28: { n: "Language", t: Ut }, 29: { n: "Version", t: Ut }, 255: {}, 2147483648: { n: "Locale", t: 19 }, 2147483651: { n: "Behavior", t: 19 }, 1919054434: {} }, Gs = { 1: { n: "CodePage", t: 2 }, 2: { n: "Title", t: Ut }, 3: { n: "Subject", t: Ut }, 4: { n: "Author", t: Ut }, 5: { n: "Keywords", t: Ut }, 6: { n: "Comments", t: Ut }, 7: { n: "Template", t: Ut }, 8: { n: "LastAuthor", t: Ut }, 9: { n: "RevNumber", t: Ut }, 10: { n: "EditTime", t: 64 }, 11: { n: "LastPrinted", t: 64 }, 12: { n: "CreatedDate", t: 64 }, 13: { n: "ModifiedDate", t: 64 }, 14: { n: "PageCount", t: 3 }, 15: { n: "WordCount", t: 3 }, 16: { n: "CharCount", t: 3 }, 17: { n: "Thumbnail", t: 71 }, 18: { n: "Application", t: Ut }, 19: { n: "DocSecurity", t: 3 }, 255: {}, 2147483648: { n: "Locale", t: 19 }, 2147483651: { n: "Behavior", t: 19 }, 1919054434: {} }, lo = { 1: "US", 2: "CA", 3: "", 7: "RU", 20: "EG", 30: "GR", 31: "NL", 32: "BE", 33: "FR", 34: "ES", 36: "HU", 39: "IT", 41: "CH", 43: "AT", 44: "GB", 45: "DK", 46: "SE", 47: "NO", 48: "PL", 49: "DE", 52: "MX", 55: "BR", 61: "AU", 64: "NZ", 66: "TH", 81: "JP", 82: "KR", 84: "VN", 86: "CN", 90: "TR", 105: "JS", 213: "DZ", 216: "MA", 218: "LY", 351: "PT", 354: "IS", 358: "FI", 420: "CZ", 886: "TW", 961: "LB", 962: "JO", 963: "SY", 964: "IQ", 965: "KW", 966: "SA", 971: "AE", 972: "IL", 974: "QA", 981: "IR", 65535: "US" }, b1 = [null, "solid", "mediumGray", "darkGray", "lightGray", "darkHorizontal", "darkVertical", "darkDown", "darkUp", "darkGrid", "darkTrellis", "lightHorizontal", "lightVertical", "lightDown", "lightUp", "lightGrid", "lightTrellis", "gray125", "gray0625"];
function w1(e) {
  return e.map(function(r) {
    return [r >> 16 & 255, r >> 8 & 255, 255 & r];
  });
}
var Da = st(w1([0, 16777215, 16711680, 65280, 255, 16776960, 16711935, 65535, 0, 16777215, 16711680, 65280, 255, 16776960, 16711935, 65535, 8388608, 32768, 128, 8421376, 8388736, 32896, 12632256, 8421504, 10066431, 10040166, 16777164, 13434879, 6684774, 16744576, 26316, 13421823, 128, 16711935, 16776960, 65535, 8388736, 8388608, 32896, 255, 52479, 13434879, 13434828, 16777113, 10079487, 16751052, 13408767, 16764057, 3368703, 3394764, 10079232, 16763904, 16750848, 16737792, 6710937, 9868950, 13158, 3381606, 13056, 3355392, 10040064, 10040166, 3355545, 3355443, 0, 16777215, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0])), Lt = { 0: "#NULL!", 7: "#DIV/0!", 15: "#VALUE!", 23: "#REF!", 29: "#NAME?", 36: "#NUM!", 42: "#N/A", 43: "#GETTING_DATA", 255: "#WTF?" }, zt = { "#NULL!": 0, "#DIV/0!": 7, "#VALUE!": 15, "#REF!": 23, "#NAME?": 29, "#NUM!": 36, "#N/A": 42, "#GETTING_DATA": 43, "#WTF?": 255 }, Ei = ["_xlnm.Consolidate_Area", "_xlnm.Auto_Open", "_xlnm.Auto_Close", "_xlnm.Extract", "_xlnm.Database", "_xlnm.Criteria", "_xlnm.Print_Area", "_xlnm.Print_Titles", "_xlnm.Recorder", "_xlnm.Data_Form", "_xlnm.Auto_Activate", "_xlnm.Auto_Deactivate", "_xlnm.Sheet_Title", "_xlnm._FilterDatabase"], Xs = { "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml": "workbooks", "application/vnd.ms-excel.sheet.macroEnabled.main+xml": "workbooks", "application/vnd.ms-excel.sheet.binary.macroEnabled.main": "workbooks", "application/vnd.ms-excel.addin.macroEnabled.main+xml": "workbooks", "application/vnd.openxmlformats-officedocument.spreadsheetml.template.main+xml": "workbooks", "application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml": "sheets", "application/vnd.ms-excel.worksheet": "sheets", "application/vnd.ms-excel.binIndexWs": "TODO", "application/vnd.openxmlformats-officedocument.spreadsheetml.chartsheet+xml": "charts", "application/vnd.ms-excel.chartsheet": "charts", "application/vnd.ms-excel.macrosheet+xml": "macros", "application/vnd.ms-excel.macrosheet": "macros", "application/vnd.ms-excel.intlmacrosheet": "TODO", "application/vnd.ms-excel.binIndexMs": "TODO", "application/vnd.openxmlformats-officedocument.spreadsheetml.dialogsheet+xml": "dialogs", "application/vnd.ms-excel.dialogsheet": "dialogs", "application/vnd.openxmlformats-officedocument.spreadsheetml.sharedStrings+xml": "strs", "application/vnd.ms-excel.sharedStrings": "strs", "application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml": "styles", "application/vnd.ms-excel.styles": "styles", "application/vnd.openxmlformats-package.core-properties+xml": "coreprops", "application/vnd.openxmlformats-officedocument.custom-properties+xml": "custprops", "application/vnd.openxmlformats-officedocument.extended-properties+xml": "extprops", "application/vnd.openxmlformats-officedocument.customXmlProperties+xml": "TODO", "application/vnd.openxmlformats-officedocument.spreadsheetml.customProperty": "TODO", "application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml": "comments", "application/vnd.ms-excel.comments": "comments", "application/vnd.ms-excel.threadedcomments+xml": "threadedcomments", "application/vnd.ms-excel.person+xml": "people", "application/vnd.openxmlformats-officedocument.spreadsheetml.sheetMetadata+xml": "metadata", "application/vnd.ms-excel.sheetMetadata": "metadata", "application/vnd.ms-excel.pivotTable": "TODO", "application/vnd.openxmlformats-officedocument.spreadsheetml.pivotTable+xml": "TODO", "application/vnd.openxmlformats-officedocument.drawingml.chart+xml": "TODO", "application/vnd.ms-office.chartcolorstyle+xml": "TODO", "application/vnd.ms-office.chartstyle+xml": "TODO", "application/vnd.ms-office.chartex+xml": "TODO", "application/vnd.ms-excel.calcChain": "calcchains", "application/vnd.openxmlformats-officedocument.spreadsheetml.calcChain+xml": "calcchains", "application/vnd.openxmlformats-officedocument.spreadsheetml.printerSettings": "TODO", "application/vnd.ms-office.activeX": "TODO", "application/vnd.ms-office.activeX+xml": "TODO", "application/vnd.ms-excel.attachedToolbars": "TODO", "application/vnd.ms-excel.connections": "TODO", "application/vnd.openxmlformats-officedocument.spreadsheetml.connections+xml": "TODO", "application/vnd.ms-excel.externalLink": "links", "application/vnd.openxmlformats-officedocument.spreadsheetml.externalLink+xml": "links", "application/vnd.ms-excel.pivotCacheDefinition": "TODO", "application/vnd.ms-excel.pivotCacheRecords": "TODO", "application/vnd.openxmlformats-officedocument.spreadsheetml.pivotCacheDefinition+xml": "TODO", "application/vnd.openxmlformats-officedocument.spreadsheetml.pivotCacheRecords+xml": "TODO", "application/vnd.ms-excel.queryTable": "TODO", "application/vnd.openxmlformats-officedocument.spreadsheetml.queryTable+xml": "TODO", "application/vnd.ms-excel.userNames": "TODO", "application/vnd.ms-excel.revisionHeaders": "TODO", "application/vnd.ms-excel.revisionLog": "TODO", "application/vnd.openxmlformats-officedocument.spreadsheetml.revisionHeaders+xml": "TODO", "application/vnd.openxmlformats-officedocument.spreadsheetml.revisionLog+xml": "TODO", "application/vnd.openxmlformats-officedocument.spreadsheetml.userNames+xml": "TODO", "application/vnd.ms-excel.tableSingleCells": "TODO", "application/vnd.openxmlformats-officedocument.spreadsheetml.tableSingleCells+xml": "TODO", "application/vnd.ms-excel.slicer": "TODO", "application/vnd.ms-excel.slicerCache": "TODO", "application/vnd.ms-excel.slicer+xml": "TODO", "application/vnd.ms-excel.slicerCache+xml": "TODO", "application/vnd.ms-excel.wsSortMap": "TODO", "application/vnd.ms-excel.table": "TODO", "application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml": "TODO", "application/vnd.openxmlformats-officedocument.theme+xml": "themes", "application/vnd.openxmlformats-officedocument.themeOverride+xml": "TODO", "application/vnd.ms-excel.Timeline+xml": "TODO", "application/vnd.ms-excel.TimelineCache+xml": "TODO", "application/vnd.ms-office.vbaProject": "vba", "application/vnd.ms-office.vbaProjectSignature": "TODO", "application/vnd.ms-office.volatileDependencies": "TODO", "application/vnd.openxmlformats-officedocument.spreadsheetml.volatileDependencies+xml": "TODO", "application/vnd.ms-excel.controlproperties+xml": "TODO", "application/vnd.openxmlformats-officedocument.model+data": "TODO", "application/vnd.ms-excel.Survey+xml": "TODO", "application/vnd.openxmlformats-officedocument.drawing+xml": "drawings", "application/vnd.openxmlformats-officedocument.drawingml.chartshapes+xml": "TODO", "application/vnd.openxmlformats-officedocument.drawingml.diagramColors+xml": "TODO", "application/vnd.openxmlformats-officedocument.drawingml.diagramData+xml": "TODO", "application/vnd.openxmlformats-officedocument.drawingml.diagramLayout+xml": "TODO", "application/vnd.openxmlformats-officedocument.drawingml.diagramStyle+xml": "TODO", "application/vnd.openxmlformats-officedocument.vmlDrawing": "TODO", "application/vnd.openxmlformats-package.relationships+xml": "rels", "application/vnd.openxmlformats-officedocument.oleObject": "TODO", "image/png": "TODO", sheet: "js" }, Pn = { workbooks: { xlsx: "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml", xlsm: "application/vnd.ms-excel.sheet.macroEnabled.main+xml", xlsb: "application/vnd.ms-excel.sheet.binary.macroEnabled.main", xlam: "application/vnd.ms-excel.addin.macroEnabled.main+xml", xltx: "application/vnd.openxmlformats-officedocument.spreadsheetml.template.main+xml" }, strs: { xlsx: "application/vnd.openxmlformats-officedocument.spreadsheetml.sharedStrings+xml", xlsb: "application/vnd.ms-excel.sharedStrings" }, comments: { xlsx: "application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml", xlsb: "application/vnd.ms-excel.comments" }, sheets: { xlsx: "application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml", xlsb: "application/vnd.ms-excel.worksheet" }, charts: { xlsx: "application/vnd.openxmlformats-officedocument.spreadsheetml.chartsheet+xml", xlsb: "application/vnd.ms-excel.chartsheet" }, dialogs: { xlsx: "application/vnd.openxmlformats-officedocument.spreadsheetml.dialogsheet+xml", xlsb: "application/vnd.ms-excel.dialogsheet" }, macros: { xlsx: "application/vnd.ms-excel.macrosheet+xml", xlsb: "application/vnd.ms-excel.macrosheet" }, metadata: { xlsx: "application/vnd.openxmlformats-officedocument.spreadsheetml.sheetMetadata+xml", xlsb: "application/vnd.ms-excel.sheetMetadata" }, styles: { xlsx: "application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml", xlsb: "application/vnd.ms-excel.styles" } };
function Jc(e, r, t) {
  var a, n = (function(c) {
    for (var f = [], u = gt(c), h = 0; h !== u.length; ++h) f[c[u[h]]] == null && (f[c[u[h]]] = []), f[c[u[h]]].push(u[h]);
    return f;
  })(Xs), s = [];
  s[s.length] = kt, s[s.length] = ne("Types", null, { xmlns: Nc, "xmlns:xsd": r1, "xmlns:xsi": Pc }), s = s.concat([["xml", "application/xml"], ["bin", "application/vnd.ms-excel.sheet.binary.macroEnabled.main"], ["vml", "application/vnd.openxmlformats-officedocument.vmlDrawing"], ["data", "application/vnd.openxmlformats-officedocument.model+data"], ["bmp", "image/bmp"], ["png", "image/png"], ["gif", "image/gif"], ["emf", "image/x-emf"], ["wmf", "image/x-wmf"], ["jpg", "image/jpeg"], ["jpeg", "image/jpeg"], ["tif", "image/tiff"], ["tiff", "image/tiff"], ["pdf", "application/pdf"], ["rels", "application/vnd.openxmlformats-package.relationships+xml"]].map(function(c) {
    return ne("Default", null, { Extension: c[0], ContentType: c[1] });
  }));
  var i = function(c) {
    e[c] && e[c].length > 0 && (a = e[c][0], s[s.length] = ne("Override", null, { PartName: (a[0] == "/" ? "" : "/") + a, ContentType: Pn[c][r.bookType] || Pn[c].xlsx }));
  }, l = function(c) {
    (e[c] || []).forEach(function(f) {
      s[s.length] = ne("Override", null, { PartName: (f[0] == "/" ? "" : "/") + f, ContentType: Pn[c][r.bookType] || Pn[c].xlsx });
    });
  }, o = function(c) {
    (e[c] || []).forEach(function(f) {
      s[s.length] = ne("Override", null, { PartName: (f[0] == "/" ? "" : "/") + f, ContentType: n[c][0] });
    });
  };
  return i("workbooks"), l("sheets"), l("charts"), o("themes"), ["strs", "styles"].forEach(i), ["coreprops", "extprops", "custprops"].forEach(o), o("vba"), o("comments"), o("threadedcomments"), o("drawings"), l("metadata"), o("people"), s.length > 2 && (s[s.length] = "</Types>", s[1] = s[1].replace("/>", ">")), s.join("");
}
var $e = { WB: "http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument", SHEET: "http://sheetjs.openxmlformats.org/officeDocument/2006/relationships/officeDocument", HLINK: "http://schemas.openxmlformats.org/officeDocument/2006/relationships/hyperlink", VML: "http://schemas.openxmlformats.org/officeDocument/2006/relationships/vmlDrawing", XPATH: "http://schemas.openxmlformats.org/officeDocument/2006/relationships/externalLinkPath", XMISS: "http://schemas.microsoft.com/office/2006/relationships/xlExternalLinkPath/xlPathMissing", XLINK: "http://schemas.openxmlformats.org/officeDocument/2006/relationships/externalLink", CXML: "http://schemas.openxmlformats.org/officeDocument/2006/relationships/customXml", CXMLP: "http://schemas.openxmlformats.org/officeDocument/2006/relationships/customXmlProps", CMNT: "http://schemas.openxmlformats.org/officeDocument/2006/relationships/comments", CORE_PROPS: "http://schemas.openxmlformats.org/package/2006/relationships/metadata/core-properties", EXT_PROPS: "http://schemas.openxmlformats.org/officeDocument/2006/relationships/extended-properties", CUST_PROPS: "http://schemas.openxmlformats.org/officeDocument/2006/relationships/custom-properties", SST: "http://schemas.openxmlformats.org/officeDocument/2006/relationships/sharedStrings", STY: "http://schemas.openxmlformats.org/officeDocument/2006/relationships/styles", THEME: "http://schemas.openxmlformats.org/officeDocument/2006/relationships/theme", CHART: "http://schemas.openxmlformats.org/officeDocument/2006/relationships/chart", CHARTEX: "http://schemas.microsoft.com/office/2014/relationships/chartEx", CS: "http://schemas.openxmlformats.org/officeDocument/2006/relationships/chartsheet", WS: ["http://schemas.openxmlformats.org/officeDocument/2006/relationships/worksheet", "http://purl.oclc.org/ooxml/officeDocument/relationships/worksheet"], DS: "http://schemas.openxmlformats.org/officeDocument/2006/relationships/dialogsheet", MS: "http://schemas.microsoft.com/office/2006/relationships/xlMacrosheet", IMG: "http://schemas.openxmlformats.org/officeDocument/2006/relationships/image", DRAW: "http://schemas.openxmlformats.org/officeDocument/2006/relationships/drawing", XLMETA: "http://schemas.openxmlformats.org/officeDocument/2006/relationships/sheetMetadata", TCMNT: "http://schemas.microsoft.com/office/2017/10/relationships/threadedComment", PEOPLE: "http://schemas.microsoft.com/office/2017/10/relationships/person", CONN: "http://schemas.openxmlformats.org/officeDocument/2006/relationships/connections", VBA: "http://schemas.microsoft.com/office/2006/relationships/vbaProject" };
function vn(e) {
  var r = e.lastIndexOf("/");
  return e.slice(0, r + 1) + "_rels/" + e.slice(r + 1) + ".rels";
}
function an(e, r) {
  var t = { "!id": {} };
  if (!e) return t;
  r.charAt(0) !== "/" && (r = "/" + r);
  var a = {};
  return (e.match(Vt) || []).forEach(function(n) {
    var s = pe(n);
    if (s[0] === "<Relationship") {
      var i = {};
      i.Type = s.Type, i.Target = et(s.Target), i.Id = s.Id, s.TargetMode && (i.TargetMode = s.TargetMode);
      var l = s.TargetMode === "External" ? s.Target : Ra(s.Target, r);
      t[l] = i, a[s.Id] = i;
    }
  }), t["!id"] = a, t;
}
function Pa(e) {
  var r = [kt, ne("Relationships", null, { xmlns: Qf })];
  return gt(e["!id"]).forEach(function(t) {
    r[r.length] = ne("Relationship", null, e["!id"][t]);
  }), r.length > 2 && (r[r.length] = "</Relationships>", r[1] = r[1].replace("/>", ">")), r.join("");
}
function it(e, r, t, a, n, s) {
  if (n || (n = {}), e["!id"] || (e["!id"] = {}), e["!idx"] || (e["!idx"] = 1), r < 0) for (r = e["!idx"]; e["!id"]["rId" + r]; ++r) ;
  if (e["!idx"] = r + 1, n.Id = "rId" + r, n.Type = a, n.Target = t, [$e.HLINK, $e.XPATH, $e.XMISS].indexOf(n.Type) > -1 && (n.TargetMode = "External"), e["!id"][n.Id]) throw new Error("Cannot rewrite rId " + r);
  return e["!id"][n.Id] = n, e[("/" + n.Target).replace("//", "/")] = n, r;
}
function fo(e, r, t) {
  return ['  <rdf:Description rdf:about="' + e + `">
`, '    <rdf:type rdf:resource="http://docs.oasis-open.org/ns/office/1.2/meta/' + (t || "odf") + "#" + r + `"/>
`, `  </rdf:Description>
`].join("");
}
function T1(e, r) {
  return ['  <rdf:Description rdf:about="' + e + `">
`, '    <ns0:hasPart xmlns:ns0="http://docs.oasis-open.org/ns/office/1.2/meta/pkg#" rdf:resource="' + r + `"/>
`, `  </rdf:Description>
`].join("");
}
function qc(e, r) {
  return '<office:document-meta xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:meta="urn:oasis:names:tc:opendocument:xmlns:meta:1.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:xlink="http://www.w3.org/1999/xlink" office:version="1.2"><office:meta><meta:generator>SheetJS ' + Kn.version + "</meta:generator></office:meta></office:document-meta>";
}
var Wr = [["cp:category", "Category"], ["cp:contentStatus", "ContentStatus"], ["cp:keywords", "Keywords"], ["cp:lastModifiedBy", "LastAuthor"], ["cp:lastPrinted", "LastPrinted"], ["cp:revision", "RevNumber"], ["cp:version", "Version"], ["dc:creator", "Author"], ["dc:description", "Comments"], ["dc:identifier", "Identifier"], ["dc:language", "Language"], ["dc:subject", "Subject"], ["dc:title", "Title"], ["dcterms:created", "CreatedDate", "date"], ["dcterms:modified", "ModifiedDate", "date"]];
function Qc(e) {
  var r = {};
  e = ht(e);
  for (var t = 0; t < Wr.length; ++t) {
    var a = Wr[t], n = va(e, a[0]);
    n != null && n.length > 0 && (r[a[1]] = et(n[1])), a[2] === "date" && r[a[1]] && (r[a[1]] = wt(r[a[1]]));
  }
  return r;
}
function Es(e, r, t, a, n) {
  n[e] == null && r != null && r !== "" && (n[e] = r, r = Be(r), a[a.length] = t ? ne(e, r, t) : $t(e, r));
}
function Zc(e, r) {
  var t = r || {}, a = [kt, ne("cp:coreProperties", null, { "xmlns:cp": Yf, "xmlns:dc": Zf, "xmlns:dcterms": e1, "xmlns:dcmitype": t1, "xmlns:xsi": Pc })], n = {};
  if (!e && !t.Props) return a.join("");
  e && (e.CreatedDate != null && Es("dcterms:created", typeof e.CreatedDate == "string" ? e.CreatedDate : Hs(e.CreatedDate, t.WTF), { "xsi:type": "dcterms:W3CDTF" }, a, n), e.ModifiedDate != null && Es("dcterms:modified", typeof e.ModifiedDate == "string" ? e.ModifiedDate : Hs(e.ModifiedDate, t.WTF), { "xsi:type": "dcterms:W3CDTF" }, a, n));
  for (var s = 0; s != Wr.length; ++s) {
    var i = Wr[s], l = t.Props && t.Props[i[1]] != null ? t.Props[i[1]] : e ? e[i[1]] : null;
    l === !0 ? l = "1" : l === !1 ? l = "0" : typeof l == "number" && (l = String(l)), l != null && Es(i[0], l, null, a, n);
  }
  return a.length > 2 && (a[a.length] = "</cp:coreProperties>", a[1] = a[1].replace("/>", ">")), a.join("");
}
var fa = [["Application", "Application", "string"], ["AppVersion", "AppVersion", "string"], ["Company", "Company", "string"], ["DocSecurity", "DocSecurity", "string"], ["Manager", "Manager", "string"], ["HyperlinksChanged", "HyperlinksChanged", "bool"], ["SharedDoc", "SharedDoc", "bool"], ["LinksUpToDate", "LinksUpToDate", "bool"], ["ScaleCrop", "ScaleCrop", "bool"], ["HeadingPairs", "HeadingPairs", "raw"], ["TitlesOfParts", "TitlesOfParts", "raw"]], el = ["Worksheets", "SheetNames", "NamedRanges", "DefinedNames", "Chartsheets", "ChartNames"];
function tl(e, r, t, a) {
  var n = [];
  if (typeof e == "string") n = eo(e, a);
  else for (var s = 0; s < e.length; ++s) n = n.concat(e[s].map(function(f) {
    return { v: f };
  }));
  var i = typeof r == "string" ? eo(r, a).map(function(f) {
    return f.v;
  }) : r, l = 0, o = 0;
  if (i.length > 0) for (var c = 0; c !== n.length; c += 2) {
    switch (o = +n[c + 1].v, n[c].v) {
      case "Worksheets":
      case "工作表":
      case "Листы":
      case "أوراق العمل":
      case "ワークシート":
      case "גליונות עבודה":
      case "Arbeitsblätter":
      case "Çalışma Sayfaları":
      case "Feuilles de calcul":
      case "Fogli di lavoro":
      case "Folhas de cálculo":
      case "Planilhas":
      case "Regneark":
      case "Hojas de cálculo":
      case "Werkbladen":
        t.Worksheets = o, t.SheetNames = i.slice(l, l + o);
        break;
      case "Named Ranges":
      case "Rangos con nombre":
      case "名前付き一覧":
      case "Benannte Bereiche":
      case "Navngivne områder":
        t.NamedRanges = o, t.DefinedNames = i.slice(l, l + o);
        break;
      case "Charts":
      case "Diagramme":
        t.Chartsheets = o, t.ChartNames = i.slice(l, l + o);
    }
    l += o;
  }
}
function rl(e) {
  var r = [], t = ne;
  return e || (e = {}), e.Application = "SheetJS", r[r.length] = kt, r[r.length] = ne("Properties", null, { xmlns: qf, "xmlns:vt": ui }), fa.forEach(function(a) {
    if (e[a[1]] !== void 0) {
      var n;
      switch (a[2]) {
        case "string":
          n = Be(String(e[a[1]]));
          break;
        case "bool":
          n = e[a[1]] ? "true" : "false";
      }
      n !== void 0 && (r[r.length] = t(a[0], n));
    }
  }), r[r.length] = t("HeadingPairs", t("vt:vector", t("vt:variant", "<vt:lpstr>Worksheets</vt:lpstr>") + t("vt:variant", t("vt:i4", String(e.Worksheets))), { size: 2, baseType: "variant" })), r[r.length] = t("TitlesOfParts", t("vt:vector", e.SheetNames.map(function(a) {
    return "<vt:lpstr>" + Be(a) + "</vt:lpstr>";
  }).join(""), { size: e.Worksheets, baseType: "lpstr" })), r.length > 2 && (r[r.length] = "</Properties>", r[1] = r[1].replace("/>", ">")), r.join("");
}
var y1 = /<[^<>]+>[^<]*/g;
function al(e) {
  var r = [kt, ne("Properties", null, { xmlns: Jf, "xmlns:vt": ui })];
  if (!e) return r.join("");
  var t = 1;
  return gt(e).forEach(function(a) {
    ++t, r[r.length] = ne("property", (function(n) {
      switch (typeof n) {
        case "string":
          var s = ne("vt:lpwstr", Be(n));
          return s.replace(/&quot;/g, "_x0022_");
        case "number":
          return ne((0 | n) == n ? "vt:i4" : "vt:r8", Be(String(n)));
        case "boolean":
          return ne("vt:bool", n ? "true" : "false");
      }
      if (n instanceof Date) return ne("vt:filetime", Hs(n));
      throw new Error("Unable to serialize " + n);
    })(e[a]), { fmtid: "{D5CDD505-2E9C-101B-9397-08002B2CF9AE}", pid: t, name: Be(a) });
  }), r.length > 2 && (r[r.length] = "</Properties>", r[1] = r[1].replace("/>", ">")), r.join("");
}
var ks, js = { Title: "Title", Subject: "Subject", Author: "Author", Keywords: "Keywords", Comments: "Description", LastAuthor: "LastAuthor", RevNumber: "Revision", Application: "AppName", LastPrinted: "LastPrinted", CreatedDate: "Created", ModifiedDate: "LastSaved", Category: "Category", Manager: "Manager", Company: "Company", AppVersion: "Version", ContentStatus: "ContentStatus", Identifier: "Identifier", Language: "Language" };
function E1(e, r, t) {
  ks || (ks = ls(js)), e[r = ks[r] || r] = t;
}
function ki(e) {
  var r = e.read_shift(4), t = e.read_shift(4);
  return new Date(1e3 * (t / 1e7 * Math.pow(2, 32) + r / 1e7 - 11644473600)).toISOString().replace(/\.000/, "");
}
function nl(e, r, t) {
  return r === 31 ? (function(a) {
    return a.read_shift(0, "lpwstr");
  })(e) : (function(a, n, s) {
    var i = a.l, l = a.read_shift(0, "lpstr-cp");
    if (s) for (; a.l - i & 3; ) ++a.l;
    return l;
  })(e, 0, t);
}
function Ks(e, r, t) {
  return nl(e, r, t === !1 ? 0 : 4);
}
function k1(e) {
  var r = e.l, t = as(e, 81);
  return e[e.l] == 0 && e[e.l + 1] == 0 && e.l - r & 2 && (e.l += 2), [t, as(e, 3)];
}
function ho(e, r) {
  for (var t = e.read_shift(4), a = {}, n = 0; n != t; ++n) {
    var s = e.read_shift(4), i = e.read_shift(4);
    a[s] = e.read_shift(i, r === 1200 ? "utf16le" : "utf8").replace(or, "").replace(qa, "!"), r === 1200 && i % 2 && (e.l += 2);
  }
  return 3 & e.l && (e.l = e.l >> 3 << 2), a;
}
function sl(e) {
  var r = e.read_shift(4), t = e.slice(e.l, e.l + r);
  return e.l += r, (3 & r) > 0 && (e.l += 4 - (3 & r) & 3), t;
}
function as(e, r, t) {
  var a, n = e.read_shift(2), s = t || {};
  if (e.l += 2, r !== 12 && n !== r && g1.indexOf(r) === -1 && ((65534 & r) != 4126 || (65534 & n) != 4126)) throw new Error("Expected type " + r + " saw " + n);
  switch (r === 12 ? n : r) {
    case 2:
      return a = e.read_shift(2, "i"), s.raw || (e.l += 2), a;
    case 3:
      return a = e.read_shift(4, "i");
    case 11:
      return e.read_shift(4) !== 0;
    case 19:
      return a = e.read_shift(4);
    case 30:
    case 31:
      e.l += 4, val = Ks(e, e[e.l - 4]).replace(/(^|[^\u0000])\u0000+$/, "$1");
      break;
    case 64:
      return ki(e);
    case 65:
      return sl(e);
    case 71:
      return (function(i) {
        var l = {};
        return l.Size = i.read_shift(4), i.l += l.Size + 3 - (l.Size - 1) % 4, l;
      })(e);
    case 80:
      return Ks(e, n, !s.raw).replace(or, "");
    case 81:
      return (function(i, l) {
        if (!l) throw new Error("VtUnalignedString must have positive length");
        return nl(i, l, 0);
      })(e, n).replace(or, "");
    case 4108:
      return (function(i) {
        for (var l = i.read_shift(4), o = [], c = 0; c < l / 2; ++c) o.push(k1(i));
        return o;
      })(e);
    case 4126:
    case 4127:
      return n == 4127 ? (function(i) {
        for (var l = i.read_shift(4), o = [], c = 0; c != l; ++c) {
          var f = i.l;
          o[c] = i.read_shift(0, "lpwstr").replace(or, ""), i.l - f & 2 && (i.l += 2);
        }
        return o;
      })(e) : (function(i) {
        for (var l = i.read_shift(4), o = [], c = 0; c != l; ++c) o[c] = i.read_shift(0, "lpstr-cp").replace(or, "");
        return o;
      })(e);
    default:
      throw new Error("TypedPropertyValue unrecognized type " + r + " " + n);
  }
}
function uo(e, r) {
  var t = V(4), a = V(4);
  switch (t.write_shift(4, e == 80 ? 31 : e), e) {
    case 3:
      a.write_shift(-4, r);
      break;
    case 5:
      (a = V(8)).write_shift(8, r, "f");
      break;
    case 11:
      a.write_shift(4, r ? 1 : 0);
      break;
    case 64:
      a = (function(n) {
        var s = (typeof n == "string" ? new Date(Date.parse(n)) : n).getTime() / 1e3 + 11644473600, i = s % Math.pow(2, 32), l = (s - i) / Math.pow(2, 32);
        l *= 1e7;
        var o = (i *= 1e7) / Math.pow(2, 32) | 0;
        o > 0 && (i %= Math.pow(2, 32), l += o);
        var c = V(8);
        return c.write_shift(4, i), c.write_shift(4, l), c;
      })(r);
      break;
    case 31:
    case 80:
      for ((a = V(4 + 2 * (r.length + 1) + (r.length % 2 ? 0 : 2))).write_shift(4, r.length + 1), a.write_shift(0, r, "dbcs"); a.l != a.length; ) a.write_shift(1, 0);
      break;
    default:
      throw new Error("TypedPropertyValue unrecognized type " + e + " " + r);
  }
  return xt([t, a]);
}
function po(e, r) {
  var t = e.l, a = e.read_shift(4), n = e.read_shift(4), s = [], i = 0, l = 0, o = -1, c = {};
  for (i = 0; i != n; ++i) {
    var f = e.read_shift(4), u = e.read_shift(4);
    s[i] = [f, u + t];
  }
  s.sort(function(y, w) {
    return y[1] - w[1];
  });
  var h = {};
  for (i = 0; i != n; ++i) {
    if (e.l !== s[i][1]) {
      var p = !0;
      if (i > 0 && r) switch (r[s[i - 1][0]].t) {
        case 2:
          e.l + 2 === s[i][1] && (e.l += 2, p = !1);
          break;
        case 80:
        case 4108:
          e.l <= s[i][1] && (e.l = s[i][1], p = !1);
      }
      if ((!r || i == 0) && e.l <= s[i][1] && (p = !1, e.l = s[i][1]), p) throw new Error("Read Error: Expected address " + s[i][1] + " at " + e.l + " :" + i);
    }
    if (r) {
      if (s[i][0] == 0 && s.length > i + 1 && s[i][1] == s[i + 1][1]) continue;
      var d = r[s[i][0]];
      if (h[d.n] = as(e, d.t, { raw: !0 }), d.p === "version" && (h[d.n] = String(h[d.n] >> 16) + "." + ("0000" + String(65535 & h[d.n])).slice(-4)), d.n == "CodePage") switch (h[d.n]) {
        case 0:
          h[d.n] = 1252;
        case 874:
        case 932:
        case 936:
        case 949:
        case 950:
        case 1250:
        case 1251:
        case 1253:
        case 1254:
        case 1255:
        case 1256:
        case 1257:
        case 1258:
        case 1e4:
        case 1200:
        case 1201:
        case 1252:
        case 65e3:
        case -536:
        case 65001:
        case -535:
          yr(l = h[d.n] >>> 0 & 65535);
          break;
        default:
          throw new Error("Unsupported CodePage: " + h[d.n]);
      }
    } else if (s[i][0] === 1) {
      if (l = h.CodePage = as(e, 2), yr(l), o !== -1) {
        var g = e.l;
        e.l = s[o][1], c = ho(e, l), e.l = g;
      }
    } else if (s[i][0] === 0) {
      if (l === 0) {
        o = i, e.l = s[i + 1][1];
        continue;
      }
      c = ho(e, l);
    } else {
      var m, v = c[s[i][0]];
      switch (e[e.l]) {
        case 65:
          e.l += 4, m = sl(e);
          break;
        case 30:
        case 31:
          e.l += 4, m = Ks(e, e[e.l - 4]).replace(/(^|[^\u0000])\u0000+$/, "$1");
          break;
        case 3:
          e.l += 4, m = e.read_shift(4, "i");
          break;
        case 19:
          e.l += 4, m = e.read_shift(4);
          break;
        case 5:
          e.l += 4, m = e.read_shift(8, "f");
          break;
        case 11:
          e.l += 4, m = St(e, 4);
          break;
        case 64:
          e.l += 4, m = wt(ki(e));
          break;
        default:
          throw new Error("unparsed value: " + e[e.l]);
      }
      h[v] = m;
    }
  }
  return e.l = t + a, h;
}
var il = ["CodePage", "Thumbnail", "_PID_LINKBASE", "_PID_HLINKS", "SystemIdentifier", "FMTID"];
function _1(e) {
  switch (typeof e) {
    case "boolean":
      return 11;
    case "number":
      return (0 | e) == e ? 3 : 5;
    case "string":
      return 31;
    case "object":
      if (e instanceof Date) return 64;
  }
  return -1;
}
function mo(e, r, t) {
  var a = V(8), n = [], s = [], i = 8, l = 0, o = V(8), c = V(8);
  if (o.write_shift(4, 2), o.write_shift(4, 1200), c.write_shift(4, 1), s.push(o), n.push(c), i += 8 + o.length, !r) {
    (c = V(8)).write_shift(4, 0), n.unshift(c);
    var f = [V(4)];
    for (f[0].write_shift(4, e.length), l = 0; l < e.length; ++l) {
      var u = e[l][0];
      for ((o = V(8 + 2 * (u.length + 1) + (u.length % 2 ? 0 : 2))).write_shift(4, l + 2), o.write_shift(4, u.length + 1), o.write_shift(0, u, "dbcs"); o.l != o.length; ) o.write_shift(1, 0);
      f.push(o);
    }
    o = xt(f), s.unshift(o), i += 8 + o.length;
  }
  for (l = 0; l < e.length; ++l) if ((!r || r[e[l][0]]) && !(il.indexOf(e[l][0]) > -1 || el.indexOf(e[l][0]) > -1) && e[l][1] != null) {
    var h = e[l][1], p = 0;
    if (r) {
      var d = t[p = +r[e[l][0]]];
      if (d.p == "version" && typeof h == "string") {
        var g = h.split(".");
        h = (+g[0] << 16) + (+g[1] || 0);
      }
      o = uo(d.t, h);
    } else {
      var m = _1(h);
      m == -1 && (m = 31, h = String(h)), o = uo(m, h);
    }
    s.push(o), (c = V(8)).write_shift(4, r ? p : 2 + l), n.push(c), i += 8 + o.length;
  }
  var v = 8 * (s.length + 1);
  for (l = 0; l < s.length; ++l) n[l].write_shift(4, v), v += s[l].length;
  return a.write_shift(4, i), a.write_shift(4, s.length), xt([a].concat(n).concat(s));
}
function vo(e, r, t) {
  var a = e.content;
  if (!a) return {};
  Ft(a, 0);
  var n, s, i, l, o = 0;
  a.chk("feff", "Byte Order: "), a.read_shift(2);
  var c = a.read_shift(4), f = a.read_shift(16);
  if (f !== Ee.utils.consts.HEADER_CLSID && f !== t) throw new Error("Bad PropertySet CLSID " + f);
  if ((n = a.read_shift(4)) !== 1 && n !== 2) throw new Error("Unrecognized #Sets: " + n);
  if (s = a.read_shift(16), l = a.read_shift(4), n === 1 && l !== a.l) throw new Error("Length mismatch: " + l + " !== " + a.l);
  n === 2 && (i = a.read_shift(16), o = a.read_shift(4));
  var u, h = po(a, r), p = { SystemIdentifier: c };
  for (var d in h) p[d] = h[d];
  if (p.FMTID = s, n === 1) return p;
  if (o - a.l == 2 && (a.l += 2), a.l !== o) throw new Error("Length mismatch 2: " + a.l + " !== " + o);
  try {
    u = po(a, null);
  } catch {
  }
  for (d in u) p[d] = u[d];
  return p.FMTID = [s, i], p;
}
function go(e, r, t, a, n, s) {
  var i = V(n ? 68 : 48), l = [i];
  i.write_shift(2, 65534), i.write_shift(2, 0), i.write_shift(4, 842412599), i.write_shift(16, Ee.utils.consts.HEADER_CLSID, "hex"), i.write_shift(4, n ? 2 : 1), i.write_shift(16, r, "hex"), i.write_shift(4, n ? 68 : 48);
  var o = mo(e, t, a);
  if (l.push(o), n) {
    var c = mo(n, null, null);
    i.write_shift(16, s, "hex"), i.write_shift(4, 68 + o.length), l.push(c);
  }
  return xt(l);
}
function qr(e, r) {
  return e.read_shift(r), null;
}
function St(e, r) {
  return e.read_shift(r) === 1;
}
function qt(e, r) {
  return r || (r = V(2)), r.write_shift(2, +!!e), r;
}
function Et(e) {
  return e.read_shift(2, "u");
}
function wr(e, r) {
  return r || (r = V(2)), r.write_shift(2, e), r;
}
function ol(e, r) {
  return (function(t, a, n) {
    for (var s = [], i = t.l + a; t.l < i; ) s.push(n(t, i - t.l));
    if (i !== t.l) throw new Error("Slurp error");
    return s;
  })(e, r, Et);
}
function bo(e) {
  var r = e.read_shift(1);
  return e.read_shift(1) === 1 ? r : r === 1;
}
function cl(e, r, t) {
  return t || (t = V(2)), t.write_shift(1, r == "e" ? +e : +!!e), t.write_shift(1, r == "e" ? 1 : 0), t;
}
function La(e, r, t) {
  var a = e.read_shift(t && t.biff >= 12 ? 2 : 1), n = "sbcs-cont", s = Dt;
  t && t.biff >= 8 && (Dt = 1200), t && t.biff != 8 ? t.biff == 12 && (n = "wstr") : e.read_shift(1) && (n = "dbcs-cont"), t.biff >= 2 && t.biff <= 5 && (n = "cpstr");
  var i = a ? e.read_shift(a, n) : "";
  return Dt = s, i;
}
function S1(e) {
  var r = Dt;
  Dt = 1200;
  var t, a = e.read_shift(2), n = e.read_shift(1), s = 4 & n, i = 8 & n, l = 1 + (1 & n), o = 0, c = {};
  i && (o = e.read_shift(2)), s && (t = e.read_shift(4));
  var f = l == 2 ? "dbcs-cont" : "sbcs-cont", u = a === 0 ? "" : e.read_shift(a, f);
  return i && (e.l += 4 * o), s && (e.l += t), c.t = u, i || (c.raw = "<t>" + c.t + "</t>", c.r = c.t), Dt = r, c;
}
function x1(e) {
  var r = e.t || "", t = V(3);
  t.write_shift(2, r.length), t.write_shift(1, 1);
  var a = V(2 * r.length);
  return a.write_shift(2 * r.length, r, "utf16le"), xt([t, a]);
}
function ha(e, r, t) {
  if (t) {
    if (t.biff >= 2 && t.biff <= 5) return e.read_shift(r, "cpstr");
    if (t.biff >= 12) return e.read_shift(r, "dbcs-cont");
  }
  return e.read_shift(1) === 0 ? e.read_shift(r, "sbcs-cont") : e.read_shift(r, "dbcs-cont");
}
function nn(e, r, t) {
  var a = e.read_shift(t && t.biff == 2 ? 1 : 2);
  return a === 0 ? (e.l++, "") : ha(e, a, t);
}
function pa(e, r, t) {
  if (t.biff > 5) return nn(e, 0, t);
  var a = e.read_shift(1);
  return a === 0 ? (e.l++, "") : e.read_shift(a, t.biff <= 4 || !e.lens ? "cpstr" : "sbcs-cont");
}
function ll(e, r, t) {
  return t || (t = V(3 + 2 * e.length)), t.write_shift(2, e.length), t.write_shift(1, 1), t.write_shift(31, e, "utf16le"), t;
}
function A1(e, r) {
  var t = e.read_shift(16);
  switch (t) {
    case "e0c9ea79f9bace118c8200aa004ba90b":
      return (function(a) {
        var n = a.read_shift(4), s = a.l, i = !1;
        n > 24 && (a.l += n - 24, a.read_shift(16) === "795881f43b1d7f48af2c825dc4852763" && (i = !0), a.l = s);
        var l = a.read_shift((i ? n - 24 : n) >> 1, "utf16le").replace(or, "");
        return i && (a.l += 24), l;
      })(e);
    case "0303000000000000c000000000000046":
      return (function(a) {
        for (var n = a.read_shift(2), s = ""; n-- > 0; ) s += "../";
        var i = a.read_shift(0, "lpstr-ansi");
        if (a.l += 2, a.read_shift(2) != 57005) throw new Error("Bad FileMoniker");
        if (a.read_shift(4) === 0) return s + i.replace(/\\/g, "/");
        var l = a.read_shift(4);
        if (a.read_shift(2) != 3) throw new Error("Bad FileMoniker");
        return s + a.read_shift(l >> 1, "utf16le").replace(or, "");
      })(e);
    default:
      throw new Error("Unsupported Moniker " + t);
  }
}
function Ln(e) {
  var r = e.read_shift(4);
  return r > 0 ? e.read_shift(r, "utf16le").replace(or, "") : "";
}
function wo(e, r) {
  r || (r = V(6 + 2 * e.length)), r.write_shift(4, 1 + e.length);
  for (var t = 0; t < e.length; ++t) r.write_shift(2, e.charCodeAt(t));
  return r.write_shift(2, 0), r;
}
function C1(e) {
  var r = V(512), t = 0, a = e.Target;
  a.slice(0, 7) == "file://" && (a = a.slice(7));
  var n = a.indexOf("#"), s = n > -1 ? 31 : 23;
  switch (a.charAt(0)) {
    case "#":
      s = 28;
      break;
    case ".":
      s &= -3;
  }
  r.write_shift(4, 2), r.write_shift(4, s);
  var i = [8, 6815827, 6619237, 4849780, 83];
  for (t = 0; t < i.length; ++t) r.write_shift(4, i[t]);
  if (s == 28) wo(a = a.slice(1), r);
  else if (2 & s) {
    for (i = "e0 c9 ea 79 f9 ba ce 11 8c 82 00 aa 00 4b a9 0b".split(" "), t = 0; t < i.length; ++t) r.write_shift(1, parseInt(i[t], 16));
    var l = n > -1 ? a.slice(0, n) : a;
    for (r.write_shift(4, 2 * (l.length + 1)), t = 0; t < l.length; ++t) r.write_shift(2, l.charCodeAt(t));
    r.write_shift(2, 0), 8 & s && wo(n > -1 ? a.slice(n + 1) : "", r);
  } else {
    for (i = "03 03 00 00 00 00 00 00 c0 00 00 00 00 00 00 46".split(" "), t = 0; t < i.length; ++t) r.write_shift(1, parseInt(i[t], 16));
    for (var o = 0; a.slice(3 * o, 3 * o + 3) == "../" || a.slice(3 * o, 3 * o + 3) == "..\\"; ) ++o;
    for (r.write_shift(2, o), r.write_shift(4, a.length - 3 * o + 1), t = 0; t < a.length - 3 * o; ++t) r.write_shift(1, 255 & a.charCodeAt(t + 3 * o));
    for (r.write_shift(1, 0), r.write_shift(2, 65535), r.write_shift(2, 57005), t = 0; t < 6; ++t) r.write_shift(4, 0);
  }
  return r.slice(0, r.l);
}
function fl(e) {
  return [e.read_shift(1), e.read_shift(1), e.read_shift(1), e.read_shift(1)];
}
function To(e, r) {
  var t = fl(e);
  return t[3] = 0, t;
}
function kr(e, r, t) {
  var a = { r: e.read_shift(2), c: e.read_shift(2), ixfe: 0 };
  if (t && t.biff == 2 || r == 7) {
    var n = e.read_shift(1);
    a.ixfe = 63 & n, e.l += 2;
  } else a.ixfe = e.read_shift(2);
  return a;
}
function ua(e, r, t, a) {
  return a || (a = V(6)), a.write_shift(2, e), a.write_shift(2, r), a.write_shift(2, t || 0), a;
}
function I1(e, r, t) {
  var a = t.biff > 8 ? 4 : 2;
  return [e.read_shift(a), e.read_shift(a, "i"), e.read_shift(a, "i")];
}
function yo(e) {
  return [e.read_shift(2), ts(e)];
}
function jn(e) {
  var r = e.read_shift(2), t = e.read_shift(2);
  return { s: { c: e.read_shift(2), r }, e: { c: e.read_shift(2), r: t } };
}
function Eo(e, r) {
  return r || (r = V(8)), r.write_shift(2, e.s.r), r.write_shift(2, e.e.r), r.write_shift(2, e.s.c), r.write_shift(2, e.e.c), r;
}
function hl(e) {
  var r = e.read_shift(2), t = e.read_shift(2);
  return { s: { c: e.read_shift(1), r }, e: { c: e.read_shift(1), r: t } };
}
var R1 = hl;
function ul(e) {
  e.l += 4;
  var r = e.read_shift(2), t = e.read_shift(2), a = e.read_shift(2);
  return e.l += 12, [t, r, a];
}
function Xt(e) {
  e.l += 2, e.l += e.read_shift(2);
}
var O1 = { 0: Xt, 4: Xt, 5: Xt, 6: Xt, 7: function(e) {
  return e.l += 4, e.cf = e.read_shift(2), {};
}, 8: Xt, 9: Xt, 10: Xt, 11: Xt, 12: Xt, 13: function(e) {
  var r = {};
  return e.l += 4, e.l += 16, r.fSharedNote = e.read_shift(2), e.l += 4, r;
}, 14: Xt, 15: Xt, 16: Xt, 17: Xt, 18: Xt, 19: Xt, 20: Xt, 21: ul };
function Mn(e, r) {
  var t = { BIFFVer: 0, dt: 0 };
  switch (t.BIFFVer = e.read_shift(2), (r -= 2) >= 2 && (t.dt = e.read_shift(2), e.l -= 2), t.BIFFVer) {
    case 1536:
    case 1280:
    case 1024:
    case 768:
    case 512:
    case 2:
    case 7:
      break;
    default:
      if (r > 6) throw new Error("Unexpected BIFF Ver " + t.BIFFVer);
  }
  return e.read_shift(r), t;
}
function _i(e, r, t) {
  var a = 1536, n = 16;
  switch (t.bookType) {
    case "biff8":
    case "xla":
      break;
    case "biff5":
      a = 1280, n = 8;
      break;
    case "biff4":
      a = 4, n = 6;
      break;
    case "biff3":
      a = 3, n = 6;
      break;
    case "biff2":
      a = 2, n = 4;
      break;
    default:
      throw new Error("unsupported BIFF version");
  }
  var s = V(n);
  return s.write_shift(2, a), s.write_shift(2, r), n > 4 && s.write_shift(2, 29282), n > 6 && s.write_shift(2, 1997), n > 8 && (s.write_shift(2, 49161), s.write_shift(2, 1), s.write_shift(2, 1798), s.write_shift(2, 0)), s;
}
function N1(e, r) {
  var t = !r || r.biff >= 8 ? 2 : 1, a = V(8 + t * e.name.length);
  a.write_shift(4, e.pos), a.write_shift(1, e.hs || 0), a.write_shift(1, e.dt), a.write_shift(1, e.name.length), r.biff >= 8 && a.write_shift(1, 1), a.write_shift(t * e.name.length, e.name, r.biff < 8 ? "sbcs" : "utf16le");
  var n = a.slice(0, a.l);
  return n.l = a.l, n;
}
function ko(e, r, t) {
  var a = 0;
  t && t.biff == 2 || (a = e.read_shift(2));
  var n = e.read_shift(2);
  return t && t.biff == 2 && (a = 1 - (n >> 15), n &= 32767), [{ Unsynced: 1 & a, DyZero: (2 & a) >> 1, ExAsc: (4 & a) >> 2, ExDsc: (8 & a) >> 3 }, n];
}
function F1(e, r, t, a) {
  var n = t && t.biff == 5;
  a || (a = V(n ? 3 + r.length : 5 + 2 * r.length)), a.write_shift(2, e), a.write_shift(n ? 1 : 2, r.length), n || a.write_shift(1, 1), a.write_shift((n ? 1 : 2) * r.length, r, n ? "sbcs" : "utf16le");
  var s = a.length > a.l ? a.slice(0, a.l) : a;
  return s.l == null && (s.l = s.length), s;
}
var D1 = pa;
function _o(e, r, t) {
  var a = e.l + r, n = t.biff != 8 && t.biff ? 2 : 4, s = e.read_shift(n), i = e.read_shift(n), l = e.read_shift(2), o = e.read_shift(2);
  return e.l = a, { s: { r: s, c: l }, e: { r: i, c: o } };
}
function So(e, r, t, a) {
  var n = t && t.biff == 5;
  a || (a = V(n ? 16 : 20)), a.write_shift(2, 0), e.style ? (a.write_shift(2, e.numFmtId || 0), a.write_shift(2, 65524)) : (a.write_shift(2, e.numFmtId || 0), a.write_shift(2, r << 4));
  var s = 0;
  return e.numFmtId > 0 && n && (s |= 1024), a.write_shift(4, s), a.write_shift(4, 0), n || a.write_shift(4, 0), a.write_shift(2, 0), a;
}
function dl(e) {
  var r = V(12);
  return r.l++, r.write_shift(1, e.numFmtId), r.l += 10, r;
}
var P1 = dl;
function _s(e, r, t, a, n, s) {
  var i = V(8);
  return ua(e, r, a, i), cl(t, s, i), i;
}
var xo = function(e, r, t) {
  return r === 0 ? "" : pa(e, 0, t);
};
function Ao(e, r, t) {
  var a, n = e.read_shift(2), s = { fBuiltIn: 1 & n, fWantAdvise: n >>> 1 & 1, fWantPict: n >>> 2 & 1, fOle: n >>> 3 & 1, fOleLink: n >>> 4 & 1, cf: n >>> 5 & 1023, fIcon: n >>> 15 & 1 };
  return t.sbcch === 14849 && (a = (function(i, l, o) {
    i.l += 4, l -= 4;
    var c = i.l + l, f = La(i, 0, o), u = i.read_shift(2);
    if (u !== (c -= i.l)) throw new Error("Malformed AddinUdf: padding = " + c + " != " + u);
    return i.l += u, f;
  })(e, r - 2, t)), s.body = a || e.read_shift(r - 2), typeof a == "string" && (s.Name = a), s;
}
function Co(e, r, t) {
  var a = e.l + r, n = e.read_shift(2), s = e.read_shift(1), i = e.read_shift(1), l = e.read_shift(t && t.biff == 2 ? 1 : 2), o = 0;
  (!t || t.biff >= 5) && (t.biff != 5 && (e.l += 2), o = e.read_shift(2), t.biff == 5 && (e.l += 2), e.l += 4);
  var c = ha(e, i, t);
  32 & n && (c = Ei[c.charCodeAt(0)]);
  var f = a - e.l;
  t && t.biff == 2 && --f;
  var u = a != e.l && l !== 0 && f > 0 ? (function(h, p, d, g) {
    var m, v = h.l + p, y = Rn(h, g, d);
    return v !== h.l && (m = In(h, v - h.l, y, d)), [y, m];
  })(e, f, t, l) : [];
  return { chKey: s, Name: c, itab: o, rgce: u };
}
function pl(e, r, t) {
  if (t.biff < 8 || !(t.biff > 8) && r == e[e.l] + (e[e.l + 1] == 3 ? 1 : 0) + 1) return Io(e, r, t);
  for (var a = [], n = e.l + r, s = e.read_shift(t.biff > 8 ? 4 : 2); s-- !== 0; ) a.push(I1(e, t.biff, t));
  if (e.l != n) throw new Error("Bad ExternSheet: " + e.l + " != " + n);
  return a;
}
function Io(e, r, t) {
  e[e.l + 1] == 3 && e[e.l]++;
  var a = La(e, 0, t);
  return a.charCodeAt(0) == 3 ? a.slice(1) : a;
}
function Ro(e, r, t) {
  var a = R1(e);
  switch (t.biff) {
    case 2:
      e.l++, r -= 7;
      break;
    case 3:
    case 4:
      e.l += 2, r -= 8;
      break;
    default:
      e.l += 6, r -= 12;
  }
  return [a, B0(e, r, t)];
}
function Ss(e, r, t, a) {
  var n = V(6 + (a || e.length));
  return n.write_shift(2, r), n.write_shift(2, t), n.write_shift(2, a || e.length), n.write_shift(e.length, e, "sbcs"), n;
}
var L1 = { 8: function(e, r) {
  var t = e.l + r;
  e.l += 10;
  var a = e.read_shift(2);
  e.l += 4, e.l += 2, e.l += 2, e.l += 2, e.l += 4;
  var n = e.read_shift(1);
  return e.l += n, e.l = t, { fmt: a };
} };
function M1(e) {
  var r = V(24), t = ft(e[0]);
  r.write_shift(2, t.r), r.write_shift(2, t.r), r.write_shift(2, t.c), r.write_shift(2, t.c);
  for (var a = "d0 c9 ea 79 f9 ba ce 11 8c 82 00 aa 00 4b a9 0b".split(" "), n = 0; n < 16; ++n) r.write_shift(1, parseInt(a[n], 16));
  return xt([r, C1(e[1])]);
}
function U1(e) {
  var r = e[1].Tooltip, t = V(10 + 2 * (r.length + 1));
  t.write_shift(2, 2048);
  var a = ft(e[0]);
  t.write_shift(2, a.r), t.write_shift(2, a.r), t.write_shift(2, a.c), t.write_shift(2, a.c);
  for (var n = 0; n < r.length; ++n) t.write_shift(2, r.charCodeAt(n));
  return t.write_shift(2, 0), t;
}
function ml(e, r, t) {
  if (!t.cellStyles) return tr(e, r);
  var a = t && t.biff >= 12 ? 4 : 2, n = e.read_shift(a), s = e.read_shift(a), i = e.read_shift(a), l = e.read_shift(a), o = e.read_shift(2);
  a == 2 && (e.l += 2);
  var c = { s: n, e: s, w: i, ixfe: l, flags: o };
  return (t.biff >= 5 || !t.biff) && (c.level = o >> 8 & 7), c;
}
var B1 = kr, W1 = ol, z1 = nn;
function Qa(e, r, t, a, n) {
  return e || (e = V(7)), e.write_shift(2, r), e.write_shift(2, t), e.write_shift(1, a || 0), e.write_shift(1, n || 0), e.write_shift(1, 0), e;
}
var H1 = [2, 3, 48, 49, 131, 139, 140, 245], Ys = (function() {
  var e = { 1: 437, 2: 850, 3: 1252, 4: 1e4, 100: 852, 101: 866, 102: 865, 103: 861, 104: 895, 105: 620, 106: 737, 107: 857, 120: 950, 121: 949, 122: 936, 123: 932, 124: 874, 125: 1255, 126: 1256, 150: 10007, 151: 10029, 152: 10006, 200: 1250, 201: 1251, 202: 1254, 203: 1253, 0: 20127, 8: 865, 9: 437, 10: 850, 11: 437, 13: 437, 14: 850, 15: 437, 16: 850, 17: 437, 18: 850, 19: 932, 20: 850, 21: 437, 22: 850, 23: 865, 24: 437, 25: 437, 26: 850, 27: 437, 28: 863, 29: 850, 31: 852, 34: 852, 35: 852, 36: 860, 37: 850, 38: 866, 55: 850, 64: 852, 77: 936, 78: 949, 79: 950, 80: 874, 87: 1252, 88: 1252, 89: 1252, 108: 863, 134: 737, 135: 852, 136: 857, 204: 1257, 255: 16969 }, r = ls({ 1: 437, 2: 850, 3: 1252, 4: 1e4, 100: 852, 101: 866, 102: 865, 103: 861, 104: 895, 105: 620, 106: 737, 107: 857, 120: 950, 121: 949, 122: 936, 123: 932, 124: 874, 125: 1255, 126: 1256, 150: 10007, 151: 10029, 152: 10006, 200: 1250, 201: 1251, 202: 1254, 203: 1253, 0: 20127 });
  function t(n, s) {
    var i = s || {};
    i.dateNF || (i.dateNF = "yyyymmdd");
    var l = Ga((function(o, c) {
      var f = [], u = ea(1);
      switch (c.type) {
        case "base64":
          u = sr(hr(o));
          break;
        case "binary":
          u = sr(o);
          break;
        case "buffer":
        case "array":
          u = o;
      }
      Ft(u, 0);
      var h = u.read_shift(1), p = !!(136 & h), d = !1, g = !1;
      switch (h) {
        case 2:
        case 3:
        case 131:
        case 139:
        case 245:
          break;
        case 48:
        case 49:
          d = !0, p = !0;
          break;
        case 140:
          g = !0;
          break;
        default:
          throw new Error("DBF Unsupported Version: " + h.toString(16));
      }
      var m = 0, v = 521;
      h == 2 && (m = u.read_shift(2)), u.l += 3, h != 2 && (m = u.read_shift(4)), m > 1048576 && (m = 1e6), h != 2 && (v = u.read_shift(2));
      var y = u.read_shift(2), w = c.codepage || 1252;
      h != 2 && (u.l += 16, u.read_shift(1), u[u.l] !== 0 && (w = e[u[u.l]]), u.l += 1, u.l += 2), g && (u.l += 36);
      for (var E = [], A = {}, b = Math.min(u.length, h == 2 ? 521 : v - 10 - (d ? 264 : 0)), _ = g ? 32 : 11; u.l < b && u[u.l] != 13; ) switch ((A = {}).name = (ze !== void 0 ? ze.utils.decode(w, u.slice(u.l, u.l + _)) : Pr(u.slice(u.l, u.l + _))).replace(/[\u0000\r\n][\S\s]*$/g, ""), u.l += _, A.type = String.fromCharCode(u.read_shift(1)), h == 2 || g || (A.offset = u.read_shift(4)), A.len = u.read_shift(1), h == 2 && (A.offset = u.read_shift(2)), A.dec = u.read_shift(1), A.name.length && E.push(A), h != 2 && (u.l += g ? 13 : 14), A.type) {
        case "B":
          d && A.len == 8 || !c.WTF || console.log("Skipping " + A.name + ":" + A.type);
          break;
        case "G":
        case "P":
          c.WTF && console.log("Skipping " + A.name + ":" + A.type);
          break;
        case "+":
        case "0":
        case "@":
        case "C":
        case "D":
        case "F":
        case "I":
        case "L":
        case "M":
        case "N":
        case "O":
        case "T":
        case "Y":
          break;
        default:
          throw new Error("Unknown Field Type: " + A.type);
      }
      if (u[u.l] !== 13 && (u.l = v - 1), u.read_shift(1) !== 13) throw new Error("DBF Terminator not found " + u.l + " " + u[u.l]);
      u.l = v;
      var k = 0, T = 0;
      for (f[0] = [], T = 0; T != E.length; ++T) f[0][T] = E[T].name;
      for (; m-- > 0; ) if (u[u.l] !== 42) for (++u.l, f[++k] = [], T = 0, T = 0; T != E.length; ++T) {
        var S = u.slice(u.l, u.l + E[T].len);
        u.l += E[T].len, Ft(S, 0);
        var C = ze !== void 0 ? ze.utils.decode(w, S) : Pr(S);
        switch (E[T].type) {
          case "C":
            C.trim().length && (f[k][T] = C.replace(/([^\s])\s+$/, "$1"));
            break;
          case "D":
            C.length === 8 ? (f[k][T] = new Date(Date.UTC(+C.slice(0, 4), +C.slice(4, 6) - 1, +C.slice(6, 8), 0, 0, 0, 0)), c && c.UTC || (f[k][T] = ka(f[k][T]))) : f[k][T] = C;
            break;
          case "F":
            f[k][T] = parseFloat(C.trim());
            break;
          case "+":
          case "I":
            f[k][T] = g ? 2147483648 ^ S.read_shift(-4, "i") : S.read_shift(4, "i");
            break;
          case "L":
            switch (C.trim().toUpperCase()) {
              case "Y":
              case "T":
                f[k][T] = !0;
                break;
              case "N":
              case "F":
                f[k][T] = !1;
                break;
              case "":
              case "\0":
              case "?":
                break;
              default:
                throw new Error("DBF Unrecognized L:|" + C + "|");
            }
            break;
          case "M":
            if (!p) throw new Error("DBF Unexpected MEMO for type " + h.toString(16));
            f[k][T] = "##MEMO##" + (g ? parseInt(C.trim(), 10) : S.read_shift(4));
            break;
          case "N":
            (C = C.replace(/\u0000/g, "").trim()) && C != "." && (f[k][T] = +C || 0);
            break;
          case "@":
            f[k][T] = new Date(S.read_shift(-8, "f") - 621356832e5);
            break;
          case "T":
            var F = S.read_shift(4), I = S.read_shift(4);
            if (F == 0 && I == 0) break;
            f[k][T] = new Date(864e5 * (F - 2440588) + I), c && c.UTC || (f[k][T] = ka(f[k][T]));
            break;
          case "Y":
            f[k][T] = S.read_shift(4, "i") / 1e4 + S.read_shift(4, "i") / 1e4 * Math.pow(2, 32);
            break;
          case "O":
            f[k][T] = -S.read_shift(-8, "f");
            break;
          case "B":
            if (d && E[T].len == 8) {
              f[k][T] = S.read_shift(8, "f");
              break;
            }
          case "G":
          case "P":
            S.l += E[T].len;
            break;
          case "0":
            if (E[T].name === "_NullFlags") break;
          default:
            throw new Error("DBF Unsupported data type " + E[T].type);
        }
      }
      else u.l += y;
      if (h != 2 && u.l < u.length && u[u.l++] != 26) throw new Error("DBF EOF Marker missing " + (u.l - 1) + " of " + u.length + " " + u[u.l - 1].toString(16));
      return c && c.sheetRows && (f = f.slice(0, c.sheetRows)), c.DBF = E, f;
    })(n, i), i);
    return l["!cols"] = i.DBF.map(function(o) {
      return { wch: o.len, DBF: o };
    }), delete i.DBF, l;
  }
  var a = { B: 8, C: 250, L: 1, D: 8, "?": 0, "": 0 };
  return { to_workbook: function(n, s) {
    try {
      var i = aa(t(n, s), s);
      return i.bookType = "dbf", i;
    } catch (l) {
      if (s && s.WTF) throw l;
    }
    return { SheetNames: [], Sheets: {} };
  }, to_sheet: t, from_sheet: function(n, s) {
    if (!n["!ref"]) throw new Error("Cannot export empty sheet to DBF");
    var i = s || {}, l = Dt;
    if (+i.codepage >= 0 && yr(+i.codepage), i.type == "string") throw new Error("Cannot write DBF to JS string");
    var o = rr(), c = ai(n, { header: 1, raw: !0, cellDates: !0 }), f = c[0], u = c.slice(1), h = n["!cols"] || [], p = 0, d = 0, g = 0, m = 1;
    for (p = 0; p < f.length; ++p) if (((h[p] || {}).DBF || {}).name) f[p] = h[p].DBF.name, ++g;
    else if (f[p] != null) {
      if (++g, typeof f[p] == "number" && (f[p] = f[p].toString(10)), typeof f[p] != "string") throw new Error("DBF Invalid column name " + f[p] + " |" + typeof f[p] + "|");
      if (f.indexOf(f[p]) !== p) {
        for (d = 0; d < 1024; ++d) if (f.indexOf(f[p] + "_" + d) == -1) {
          f[p] += "_" + d;
          break;
        }
      }
    }
    var v = Je(n["!ref"]), y = [], w = [], E = [];
    for (p = 0; p <= v.e.c - v.s.c; ++p) {
      var A = "", b = "", _ = 0, k = [];
      for (d = 0; d < u.length; ++d) u[d][p] != null && k.push(u[d][p]);
      if (k.length != 0 && f[p] != null) {
        for (d = 0; d < k.length; ++d) {
          switch (typeof k[d]) {
            case "number":
              b = "B";
              break;
            case "string":
            default:
              b = "C";
              break;
            case "boolean":
              b = "L";
              break;
            case "object":
              b = k[d] instanceof Date ? "D" : "C";
          }
          _ = Math.max(_, (ze !== void 0 && typeof k[d] == "string" ? ze.utils.encode(ya, k[d]) : String(k[d])).length), A = A && A != b ? "C" : b;
        }
        _ > 250 && (_ = 250), (b = ((h[p] || {}).DBF || {}).type) == "C" && h[p].DBF.len > _ && (_ = h[p].DBF.len), A == "B" && b == "N" && (A = "N", E[p] = h[p].DBF.dec, _ = h[p].DBF.len), w[p] = A == "C" || b == "N" ? _ : a[A] || 0, m += w[p], y[p] = A;
      } else y[p] = "?";
    }
    var T = o.next(32);
    for (T.write_shift(4, 318902576), T.write_shift(4, u.length), T.write_shift(2, 296 + 32 * g), T.write_shift(2, m), p = 0; p < 4; ++p) T.write_shift(4, 0);
    var S = +r[Dt] || 3;
    for (T.write_shift(4, S << 8), e[S] != +i.codepage && (i.codepage && console.error("DBF Unsupported codepage " + Dt + ", using 1252"), Dt = 1252), p = 0, d = 0; p < f.length; ++p) if (f[p] != null) {
      var C = o.next(32), F = (f[p].slice(-10) + "\0\0\0\0\0\0\0\0\0\0\0").slice(0, 11);
      C.write_shift(1, F, "sbcs"), C.write_shift(1, y[p] == "?" ? "C" : y[p], "sbcs"), C.write_shift(4, d), C.write_shift(1, w[p] || a[y[p]] || 0), C.write_shift(1, E[p] || 0), C.write_shift(1, 2), C.write_shift(4, 0), C.write_shift(1, 0), C.write_shift(4, 0), C.write_shift(4, 0), d += w[p] || a[y[p]] || 0;
    }
    var I = o.next(264);
    for (I.write_shift(4, 13), p = 0; p < 65; ++p) I.write_shift(4, 0);
    for (p = 0; p < u.length; ++p) {
      var P = o.next(m);
      for (P.write_shift(1, 0), d = 0; d < f.length; ++d) if (f[d] != null) switch (y[d]) {
        case "L":
          P.write_shift(1, u[p][d] == null ? 63 : u[p][d] ? 84 : 70);
          break;
        case "B":
          P.write_shift(8, u[p][d] || 0, "f");
          break;
        case "N":
          var W = "0";
          for (typeof u[p][d] == "number" && (W = u[p][d].toFixed(E[d] || 0)), W.length > w[d] && (W = W.slice(0, w[d])), g = 0; g < w[d] - W.length; ++g) P.write_shift(1, 32);
          P.write_shift(1, W, "sbcs");
          break;
        case "D":
          u[p][d] ? (P.write_shift(4, ("0000" + u[p][d].getFullYear()).slice(-4), "sbcs"), P.write_shift(2, ("00" + (u[p][d].getMonth() + 1)).slice(-2), "sbcs"), P.write_shift(2, ("00" + u[p][d].getDate()).slice(-2), "sbcs")) : P.write_shift(8, "00000000", "sbcs");
          break;
        case "C":
          var U = P.l, G = String(u[p][d] != null ? u[p][d] : "").slice(0, w[d]);
          for (P.write_shift(1, G, "cpstr"), U += w[d] - P.l, g = 0; g < U; ++g) P.write_shift(1, 32);
      }
    }
    return Dt = l, o.next(1).write_shift(1, 26), o.end();
  } };
})(), vl = (function() {
  var e = { AA: "À", BA: "Á", CA: "Â", DA: 195, HA: "Ä", JA: 197, AE: "È", BE: "É", CE: "Ê", HE: "Ë", AI: "Ì", BI: "Í", CI: "Î", HI: "Ï", AO: "Ò", BO: "Ó", CO: "Ô", DO: 213, HO: "Ö", AU: "Ù", BU: "Ú", CU: "Û", HU: "Ü", Aa: "à", Ba: "á", Ca: "â", Da: 227, Ha: "ä", Ja: 229, Ae: "è", Be: "é", Ce: "ê", He: "ë", Ai: "ì", Bi: "í", Ci: "î", Hi: "ï", Ao: "ò", Bo: "ó", Co: "ô", Do: 245, Ho: "ö", Au: "ù", Bu: "ú", Cu: "û", Hu: "ü", KC: "Ç", Kc: "ç", q: "æ", z: "œ", a: "Æ", j: "Œ", DN: 209, Dn: 241, Hy: 255, S: 169, c: 170, R: 174, "B ": 180, 0: 176, 1: 177, 2: 178, 3: 179, 5: 181, 6: 182, 7: 183, Q: 185, k: 186, b: 208, i: 216, l: 222, s: 240, y: 248, "!": 161, '"': 162, "#": 163, "(": 164, "%": 165, "'": 167, "H ": 168, "+": 171, ";": 187, "<": 188, "=": 189, ">": 190, "?": 191, "{": 223 }, r = new RegExp("\x1BN(" + gt(e).join("|").replace(/\|\|\|/, "|\\||").replace(/([?()+])/g, "\\$1").replace("{", "\\{") + "|\\|)", "gm");
  try {
    r = new RegExp("\x1BN(" + gt(e).join("|").replace(/\|\|\|/, "|\\||").replace(/([?()+])/g, "\\$1") + "|\\|)", "gm");
  } catch {
  }
  var t = function(l, o) {
    var c = e[o];
    return typeof c == "number" ? Bs(c) : c;
  }, a = function(l, o, c) {
    var f = o.charCodeAt(0) - 32 << 4 | c.charCodeAt(0) - 48;
    return f == 59 ? l : Bs(f);
  };
  e["|"] = 254;
  function n(l, o) {
    var c, f = l.split(/[\n\r]+/), u = -1, h = -1, p = 0, d = 0, g = [], m = [], v = null, y = {}, w = [], E = [], A = [], b = 0, _ = { Workbook: { WBProps: {}, Names: [] } };
    for (+o.codepage >= 0 && yr(+o.codepage); p !== f.length; ++p) {
      b = 0;
      var k, T = f[p].trim().replace(/\x1B([\x20-\x2F])([\x30-\x3F])/g, a).replace(r, t), S = T.replace(/;;/g, "\0").split(";").map(function(he) {
        return he.replace(/\u0000/g, ";");
      }), C = S[0];
      if (T.length > 0) switch (C) {
        case "ID":
        case "E":
        case "B":
        case "W":
          break;
        case "O":
          for (d = 1; d < S.length; ++d) if (S[d].charAt(0) === "V") {
            var F = parseInt(S[d].slice(1), 10);
            F >= 1 && F <= 4 && (_.Workbook.WBProps.date1904 = !0);
          }
          break;
        case "P":
          S[1].charAt(0) === "P" && m.push(T.slice(3).replace(/;;/g, ";"));
          break;
        case "NN":
          var I = { Sheet: 0 };
          for (d = 1; d < S.length; ++d) switch (S[d].charAt(0)) {
            case "N":
              I.Name = S[d].slice(1);
              break;
            case "E":
              I.Ref = (o && o.sheet || "Sheet1") + "!" + ba(S[d].slice(1));
          }
          _.Workbook.Names.push(I);
          break;
        case "C":
          var P = !1, W = !1, U = !1, G = !1, B = -1, z = -1, K = "", ee = "z", se = "";
          for (d = 1; d < S.length; ++d) switch (S[d].charAt(0)) {
            case "A":
              se = S[d].slice(1);
              break;
            case "X":
              h = parseInt(S[d].slice(1), 10) - 1, W = !0;
              break;
            case "Y":
              for (u = parseInt(S[d].slice(1), 10) - 1, W || (h = 0), c = g.length; c <= u; ++c) g[c] = [];
              break;
            case "K":
              (k = S[d].slice(1)).charAt(0) === '"' ? (k = k.slice(1, k.length - 1), ee = "s") : k === "TRUE" || k === "FALSE" ? (k = k === "TRUE", ee = "b") : k.charAt(0) == "#" && zt[k] != null ? (ee = "e", k = zt[k]) : isNaN(fr(k)) || (k = fr(k), ee = "n", v !== null && ur(v) && o.cellDates && (ee = typeof (k = Xr(_.Workbook.WBProps.date1904 ? k + 1462 : k)) == "number" ? "n" : "d")), ze !== void 0 && typeof k == "string" && (o || {}).type != "string" && (o || {}).codepage && (k = ze.utils.decode(o.codepage, k)), P = !0;
              break;
            case "E":
              G = !0, K = ba(S[d].slice(1), { r: u, c: h });
              break;
            case "S":
              U = !0;
              break;
            case "G":
              break;
            case "R":
              B = parseInt(S[d].slice(1), 10) - 1;
              break;
            case "C":
              z = parseInt(S[d].slice(1), 10) - 1;
              break;
            default:
              if (o && o.WTF) throw new Error("SYLK bad record " + T);
          }
          if (P && (g[u][h] ? (g[u][h].t = ee, g[u][h].v = k) : g[u][h] = { t: ee, v: k }, v && (g[u][h].z = v), o.cellText !== !1 && v && (g[u][h].w = lr(g[u][h].z, g[u][h].v, { date1904: _.Workbook.WBProps.date1904 })), v = null), U) {
            if (G) throw new Error("SYLK shared formula cannot have own formula");
            var H = B > -1 && g[B][z];
            if (!H || !H[1]) throw new Error("SYLK shared formula cannot find base");
            K = Al(H[1], { r: u - B, c: h - z });
          }
          K && (g[u][h] ? g[u][h].f = K : g[u][h] = { t: "n", f: K }), se && (g[u][h] || (g[u][h] = { t: "z" }), g[u][h].c = [{ a: "SheetJSYLK", t: se }]);
          break;
        case "F":
          var Y = 0;
          for (d = 1; d < S.length; ++d) switch (S[d].charAt(0)) {
            case "X":
              h = parseInt(S[d].slice(1), 10) - 1, ++Y;
              break;
            case "Y":
              for (u = parseInt(S[d].slice(1), 10) - 1, c = g.length; c <= u; ++c) g[c] = [];
              break;
            case "M":
              b = parseInt(S[d].slice(1), 10) / 20;
              break;
            case "F":
            case "G":
            case "S":
            case "D":
            case "N":
              break;
            case "P":
              v = m[parseInt(S[d].slice(1), 10)];
              break;
            case "W":
              for (A = S[d].slice(1).split(" "), c = parseInt(A[0], 10); c <= parseInt(A[1], 10); ++c) b = parseInt(A[2], 10), E[c - 1] = b === 0 ? { hidden: !0 } : { wch: b };
              break;
            case "C":
              E[h = parseInt(S[d].slice(1), 10) - 1] || (E[h] = {});
              break;
            case "R":
              w[u = parseInt(S[d].slice(1), 10) - 1] || (w[u] = {}), b > 0 ? (w[u].hpt = b, w[u].hpx = Ha(b)) : b === 0 && (w[u].hidden = !0);
              break;
            default:
              if (o && o.WTF) throw new Error("SYLK bad record " + T);
          }
          Y < 1 && (v = null);
          break;
        default:
          if (o && o.WTF) throw new Error("SYLK bad record " + T);
      }
    }
    return w.length > 0 && (y["!rows"] = w), E.length > 0 && (y["!cols"] = E), E.forEach(function(he) {
      jr(he);
    }), o && o.sheetRows && (g = g.slice(0, o.sheetRows)), [g, y, _];
  }
  function s(l, o, c, f, u, h) {
    var p = "C;Y" + (c + 1) + ";X" + (f + 1) + ";K";
    switch (l.t) {
      case "n":
        p += isFinite(l.v) ? l.v || 0 : Lt[isNaN(l.v) ? 36 : 7], l.f && !l.F && (p += ";E" + Cn(l.f, { r: c, c: f }));
        break;
      case "b":
        p += l.v ? "TRUE" : "FALSE";
        break;
      case "e":
        p += l.w || Lt[l.v] || l.v;
        break;
      case "d":
        p += yt(wt(l.v, h), h);
        break;
      case "s":
        p += '"' + (l.v == null ? "" : String(l.v)).replace(/"/g, "").replace(/;/g, ";;") + '"';
    }
    return p;
  }
  function i(l, o, c) {
    var f = "C;Y" + (o + 1) + ";X" + (c + 1) + ";A";
    return f += l.map(function(u) {
      return u.t;
    }).join("").replace(/\n/g, "\x1B :").replace(/\r/g, "\x1B =");
  }
  return { to_workbook: function(l, o) {
    var c = (function(m, v) {
      switch (v.type) {
        case "base64":
          return n(hr(m), v);
        case "binary":
          return n(m, v);
        case "buffer":
          return n(Ve && Buffer.isBuffer(m) ? m.toString("binary") : Pr(m), v);
        case "array":
          return n(Ea(m), v);
      }
      throw new Error("Unrecognized type " + v.type);
    })(l, o), f = c[0], u = c[1], h = c[2], p = st(o);
    p.date1904 = (((h || {}).Workbook || {}).WBProps || {}).date1904;
    var d = Ga(f, p);
    gt(u).forEach(function(m) {
      d[m] = u[m];
    });
    var g = aa(d, o);
    return gt(h).forEach(function(m) {
      g[m] = h[m];
    }), g.bookType = "sylk", g;
  }, from_sheet: function(l, o, c) {
    o || (o = {}), o._formats = ["General"];
    var f, u = ["ID;PSheetJS;N;E"], h = [], p = Je(l["!ref"] || "A1"), d = l["!data"] != null, g = `\r
`, m = (((c || {}).Workbook || {}).WBProps || {}).date1904;
    u.push("P;PGeneral");
    var v, y = p.s.r, w = p.s.c, E = [];
    if (l["!ref"]) {
      for (y = p.s.r; y <= p.e.r; ++y) if (!d || l["!data"][y]) {
        for (E = [], w = p.s.c; w <= p.e.c; ++w) (f = d ? l["!data"][y][w] : l[De(w) + Xe(y)]) && f.c && E.push(i(f.c, y, w));
        E.length && h.push(E.join(g));
      }
    }
    if (l["!ref"]) {
      for (y = p.s.r; y <= p.e.r; ++y) if (!d || l["!data"][y]) {
        for (E = [], w = p.s.c; w <= p.e.c; ++w) if ((f = d ? l["!data"][y][w] : l[De(w) + Xe(y)]) && (f.v != null || f.f && !f.F)) {
          if ((f.z || (f.t == "d" ? be[14] : "General")) != "General") {
            var A = o._formats.indexOf(f.z);
            A == -1 && (o._formats.push(f.z), A = o._formats.length - 1, u.push("P;P" + f.z.replace(/;/g, ";;"))), E.push("F;P" + A + ";Y" + (y + 1) + ";X" + (w + 1));
          }
          E.push(s(f, 0, y, w, 0, m));
        }
        h.push(E.join(g));
      }
    }
    return u.push("F;P0;DG0G8;M255"), l["!cols"] && (v = u, l["!cols"].forEach(function(b, _) {
      var k = "F;W" + (_ + 1) + " " + (_ + 1) + " ";
      b.hidden ? k += "0" : (typeof b.width != "number" || b.wpx || (b.wpx = za(b.width)), typeof b.wpx != "number" || b.wch || (b.wch = bn(b.wpx)), typeof b.wch == "number" && (k += Math.round(b.wch))), k.charAt(k.length - 1) != " " && v.push(k);
    })), l["!rows"] && (function(b, _) {
      _.forEach(function(k, T) {
        var S = "F;";
        k.hidden ? S += "M0;" : k.hpt ? S += "M" + 20 * k.hpt + ";" : k.hpx && (S += "M" + 20 * wn(k.hpx) + ";"), S.length > 2 && b.push(S + "R" + (T + 1));
      });
    })(u, l["!rows"]), l["!ref"] && u.push("B;Y" + (p.e.r - p.s.r + 1) + ";X" + (p.e.c - p.s.c + 1) + ";D" + [p.s.c, p.s.r, p.e.c, p.e.r].join(" ")), u.push("O;L;D;B" + (m ? ";V4" : "") + ";K47;G100 0.001"), delete o._formats, u.join(g) + g + h.join(g) + g + "E" + g;
  } };
})(), gl = /* @__PURE__ */ (function() {
  function e(n, s) {
    for (var i = n.split(`
`), l = -1, o = -1, c = 0, f = []; c !== i.length; ++c) if (i[c].trim() !== "BOT") {
      if (!(l < 0)) {
        for (var u = i[c].trim().split(","), h = u[0], p = u[1], d = i[++c] || ""; 1 & (d.match(/["]/g) || []).length && c < i.length - 1; ) d += `
` + i[++c];
        switch (d = d.trim(), +h) {
          case -1:
            if (d === "BOT") {
              f[++l] = [], o = 0;
              continue;
            }
            if (d !== "EOD") throw new Error("Unrecognized DIF special command " + d);
            break;
          case 0:
            d === "TRUE" ? f[l][o] = !0 : d === "FALSE" ? f[l][o] = !1 : isNaN(fr(p)) ? isNaN(un(p).getDate()) ? f[l][o] = p : (f[l][o] = wt(p), s && s.UTC || (f[l][o] = ka(f[l][o]))) : f[l][o] = fr(p), ++o;
            break;
          case 1:
            (d = (d = d.slice(1, d.length - 1)).replace(/""/g, '"')) && d.match(/^=".*"$/) && (d = d.slice(2, -1)), f[l][o++] = d !== "" ? d : null;
        }
        if (d === "EOD") break;
      }
    } else f[++l] = [], o = 0;
    return s && s.sheetRows && (f = f.slice(0, s.sheetRows)), f;
  }
  function r(n, s) {
    return Ga((function(i, l) {
      switch (l.type) {
        case "base64":
          return e(hr(i), l);
        case "binary":
          return e(i, l);
        case "buffer":
          return e(Ve && Buffer.isBuffer(i) ? i.toString("binary") : Pr(i), l);
        case "array":
          return e(Ea(i), l);
      }
      throw new Error("Unrecognized type " + l.type);
    })(n, s), s);
  }
  function t(n, s) {
    return "0," + String(n) + `\r
` + s;
  }
  function a(n) {
    return `1,0\r
"` + n.replace(/"/g, '""') + '"';
  }
  return { to_workbook: function(n, s) {
    var i = aa(r(n, s), s);
    return i.bookType = "dif", i;
  }, to_sheet: r, from_sheet: function(n) {
    if (!n["!ref"]) throw new Error("Cannot export empty sheet to DIF");
    for (var s = Je(n["!ref"]), i = n["!data"] != null, l = [`TABLE\r
0,1\r
"sheetjs"\r
`, `VECTORS\r
0,` + (s.e.r - s.s.r + 1) + `\r
""\r
`, `TUPLES\r
0,` + (s.e.c - s.s.c + 1) + `\r
""\r
`, `DATA\r
0,0\r
""\r
`], o = s.s.r; o <= s.e.r; ++o) {
      for (var c = i ? n["!data"][o] : [], f = `-1,0\r
BOT\r
`, u = s.s.c; u <= s.e.c; ++u) {
        var h = i ? c && c[u] : n[Ge({ r: o, c: u })];
        if (h != null) {
          switch (h.t) {
            case "n":
              h.w != null ? f += "0," + h.w + `\r
V` : h.v != null ? f += t(h.v, "V") : h.f == null || h.F ? f += `1,0\r
""` : f += a("=" + h.f);
              break;
            case "b":
              f += h.v ? t(1, "TRUE") : t(0, "FALSE");
              break;
            case "s":
              f += a(isNaN(+h.v) ? h.v : '="' + h.v + '"');
              break;
            case "d":
              h.w || (h.w = lr(h.z || be[14], yt(wt(h.v)))), f += t(h.w, "V");
              break;
            default:
              f += `1,0\r
""`;
          }
          f += `\r
`;
        } else f += `1,0\r
""\r
`;
      }
      l.push(f);
    }
    return l.join("") + `-1,0\r
EOD`;
  } };
})(), bl = (function() {
  function e(o) {
    return o.replace(/\\b/g, "\\").replace(/\\c/g, ":").replace(/\\n/g, `
`);
  }
  function r(o) {
    return o.replace(/\\/g, "\\b").replace(/:/g, "\\c").replace(/\n/g, "\\n");
  }
  function t(o, c) {
    return Ga((function(f, u) {
      for (var h = f.split(`
`), p = -1, d = -1, g = 0, m = []; g !== h.length; ++g) {
        var v = h[g].trim().split(":");
        if (v[0] === "cell") {
          var y = ft(v[1]);
          if (m.length <= y.r) for (p = m.length; p <= y.r; ++p) m[p] || (m[p] = []);
          switch (p = y.r, d = y.c, v[2]) {
            case "t":
              m[p][d] = e(v[3]);
              break;
            case "v":
              m[p][d] = +v[3];
              break;
            case "vtf":
              var w = v[v.length - 1];
            case "vtc":
              v[3] === "nl" ? m[p][d] = !!+v[4] : m[p][d] = v[v.length - 1].charAt(0) == "#" ? { t: "e", v: zt[v[v.length - 1]] } : +v[4], v[2] == "vtf" && (m[p][d] = [m[p][d], w]);
          }
        }
      }
      return u && u.sheetRows && (m = m.slice(0, u.sheetRows)), m;
    })(o, c), c);
  }
  var a = ["socialcalc:version:1.5", "MIME-Version: 1.0", "Content-Type: multipart/mixed; boundary=SocialCalcSpreadsheetControlSave"].join(`
`), n = ["--SocialCalcSpreadsheetControlSave", "Content-type: text/plain; charset=UTF-8"].join(`
`) + `
`, s = ["# SocialCalc Spreadsheet Control Save", "part:sheet"].join(`
`), i = "--SocialCalcSpreadsheetControlSave--";
  function l(o) {
    if (!o || !o["!ref"]) return "";
    for (var c, f = [], u = [], h = "", p = Ot(o["!ref"]), d = o["!data"] != null, g = p.s.r; g <= p.e.r; ++g) for (var m = p.s.c; m <= p.e.c; ++m) if (h = Ge({ r: g, c: m }), (c = d ? (o["!data"][g] || [])[m] : o[h]) && c.v != null && c.t !== "z") {
      switch (u = ["cell", h, "t"], c.t) {
        case "s":
          u.push(r(c.v));
          break;
        case "b":
          u[2] = "vt" + (c.f ? "f" : "c"), u[3] = "nl", u[4] = c.v ? "1" : "0", u[5] = r(c.f || (c.v ? "TRUE" : "FALSE"));
          break;
        case "d":
          var v = yt(wt(c.v));
          u[2] = "vtc", u[3] = "nd", u[4] = "" + v, u[5] = c.w || lr(c.z || be[14], v);
          break;
        case "n":
          isFinite(c.v) ? c.f ? (u[2] = "vtf", u[3] = "n", u[4] = c.v, u[5] = r(c.f)) : (u[2] = "v", u[3] = c.v) : (u[2] = "vt" + (c.f ? "f" : "c"), u[3] = "e" + Lt[isNaN(c.v) ? 36 : 7], u[4] = "0", u[5] = c.f || u[3].slice(1), u[6] = "e", u[7] = u[3].slice(1));
          break;
        case "e":
          continue;
      }
      f.push(u.join(":"));
    }
    return f.push("sheet:c:" + (p.e.c - p.s.c + 1) + ":r:" + (p.e.r - p.s.r + 1) + ":tvf:1"), f.push("valueformat:1:text-wiki"), f.join(`
`);
  }
  return { to_workbook: function(o, c) {
    return aa(t(o, c), c);
  }, to_sheet: t, from_sheet: function(o) {
    return [a, n, s, n, l(o), i].join(`
`);
  } };
})(), Wa = /* @__PURE__ */ (function() {
  function e(l, o, c, f, u) {
    u.raw ? o[c][f] = l : l === "" || (l === "TRUE" ? o[c][f] = !0 : l === "FALSE" ? o[c][f] = !1 : isNaN(fr(l)) ? isNaN(un(l).getDate()) ? l.charCodeAt(0) == 35 && zt[l] != null ? o[c][f] = { t: "e", v: zt[l], w: l } : o[c][f] = l : o[c][f] = wt(l) : o[c][f] = fr(l));
  }
  var r = { 44: ",", 9: "	", 59: ";", 124: "|" }, t = { 44: 3, 9: 2, 59: 1, 124: 0 };
  function a(l) {
    for (var o = {}, c = !1, f = 0, u = 0; f < l.length; ++f) (u = l.charCodeAt(f)) == 34 ? c = !c : !c && u in r && (o[u] = (o[u] || 0) + 1);
    for (f in u = [], o) Object.prototype.hasOwnProperty.call(o, f) && u.push([o[f], f]);
    if (!u.length) for (f in o = t) Object.prototype.hasOwnProperty.call(o, f) && u.push([o[f], f]);
    return u.sort(function(h, p) {
      return h[0] - p[0] || t[h[1]] - t[p[1]];
    }), r[u.pop()[1]] || 44;
  }
  function n(l, o) {
    var c = o || {}, f = "", u = {};
    c.dense && (u["!data"] = []);
    var h = { s: { c: 0, r: 0 }, e: { c: 0, r: 0 } };
    l.slice(0, 4) == "sep=" ? l.charCodeAt(5) == 13 && l.charCodeAt(6) == 10 ? (f = l.charAt(4), l = l.slice(7)) : l.charCodeAt(5) == 13 || l.charCodeAt(5) == 10 ? (f = l.charAt(4), l = l.slice(6)) : f = a(l.slice(0, 1024)) : f = c && c.FS ? c.FS : a(l.slice(0, 1024));
    var p, d, g = 0, m = 0, v = 0, y = 0, w = 0, E = f.charCodeAt(0), A = !1, b = 0, _ = l.charCodeAt(0), k = c.dateNF != null ? (p = c.dateNF, d = (d = typeof p == "number" ? be[p] : p).replace(Fn, "(\\d+)"), Fn.lastIndex = 0, new RegExp("^" + d + "$")) : null;
    function T() {
      var S = l.slice(y, w);
      S.slice(-1) == "\r" && (S = S.slice(0, -1));
      var C = {};
      if (S.charAt(0) == '"' && S.charAt(S.length - 1) == '"' && (S = S.slice(1, -1).replace(/""/g, '"')), c.cellText !== !1 && (C.w = S), S.length === 0) C.t = "z";
      else if (c.raw) C.t = "s", C.v = S;
      else if (S.trim().length === 0) C.t = "s", C.v = S;
      else if (S.charCodeAt(0) == 61) S.charCodeAt(1) == 34 && S.charCodeAt(S.length - 1) == 34 ? (C.t = "s", C.v = S.slice(2, -1).replace(/""/g, '"')) : S.length != 1 ? (C.t = "s", C.f = S.slice(1), C.v = S) : (C.t = "s", C.v = S);
      else if (S == "TRUE") C.t = "b", C.v = !0;
      else if (S == "FALSE") C.t = "b", C.v = !1;
      else if (isNaN(v = fr(S))) if (!isNaN((v = un(S)).getDate()) || k && S.match(k)) {
        if (C.z = c.dateNF || be[14], k && S.match(k)) {
          var F = (function(I, P, W) {
            var U = -1, G = -1, B = -1, z = -1, K = -1, ee = -1;
            (P.match(Fn) || []).forEach(function(Y, he) {
              var te = parseInt(W[he + 1], 10);
              switch (Y.toLowerCase().charAt(0)) {
                case "y":
                  U = te;
                  break;
                case "d":
                  B = te;
                  break;
                case "h":
                  z = te;
                  break;
                case "s":
                  ee = te;
                  break;
                case "m":
                  z >= 0 ? K = te : G = te;
              }
            }), Fn.lastIndex = 0, ee >= 0 && K == -1 && G >= 0 && (K = G, G = -1);
            var se = ("" + (U >= 0 ? U : (/* @__PURE__ */ new Date()).getFullYear())).slice(-4) + "-" + ("00" + (G >= 1 ? G : 1)).slice(-2) + "-" + ("00" + (B >= 1 ? B : 1)).slice(-2);
            se.length == 7 && (se = "0" + se), se.length == 8 && (se = "20" + se);
            var H = ("00" + (z >= 0 ? z : 0)).slice(-2) + ":" + ("00" + (K >= 0 ? K : 0)).slice(-2) + ":" + ("00" + (ee >= 0 ? ee : 0)).slice(-2);
            return z == -1 && K == -1 && ee == -1 ? se : U == -1 && G == -1 && B == -1 ? H : se + "T" + H;
          })(0, c.dateNF, S.match(k) || []);
          v = wt(F), c && c.UTC === !1 && (v = ka(v));
        } else c && c.UTC === !1 ? v = ka(v) : c.cellText !== !1 && c.dateNF && (C.w = lr(C.z, v));
        c.cellDates ? (C.t = "d", C.v = v) : (C.t = "n", C.v = yt(v)), c.cellNF || delete C.z;
      } else S.charCodeAt(0) == 35 && zt[S] != null ? (C.t = "e", C.w = S, C.v = zt[S]) : (C.t = "s", C.v = S);
      else C.t = "n", C.v = v;
      if (C.t == "z" || (c.dense ? (u["!data"][g] || (u["!data"][g] = []), u["!data"][g][m] = C) : u[Ge({ c: m, r: g })] = C), y = w + 1, _ = l.charCodeAt(y), h.e.c < m && (h.e.c = m), h.e.r < g && (h.e.r = g), b == E) ++m;
      else if (m = 0, ++g, c.sheetRows && c.sheetRows <= g) return !0;
    }
    e: for (; w < l.length; ++w) switch (b = l.charCodeAt(w)) {
      case 34:
        _ === 34 && (A = !A);
        break;
      case 13:
        if (A) break;
        l.charCodeAt(w + 1) == 10 && ++w;
      case E:
      case 10:
        if (!A && T()) break e;
    }
    return w - y > 0 && T(), u["!ref"] = We(h), u;
  }
  function s(l, o) {
    return o && o.PRN ? o.FS || l.slice(0, 4) == "sep=" || l.indexOf("	") >= 0 || l.indexOf(",") >= 0 || l.indexOf(";") >= 0 ? n(l, o) : Ga((function(c, f) {
      var u = f || {}, h = [];
      if (!c || c.length === 0) return h;
      for (var p = c.split(/[\r\n]/), d = p.length - 1; d >= 0 && p[d].length === 0; ) --d;
      for (var g = 10, m = 0, v = 0; v <= d; ++v) (m = p[v].indexOf(" ")) == -1 ? m = p[v].length : m++, g = Math.max(g, m);
      for (v = 0; v <= d; ++v) {
        h[v] = [];
        var y = 0;
        for (e(p[v].slice(0, g).trim(), h, v, y, u), y = 1; y <= (p[v].length - g) / 10 + 1; ++y) e(p[v].slice(g + 10 * (y - 1), g + 10 * y).trim(), h, v, y, u);
      }
      return u.sheetRows && (h = h.slice(0, u.sheetRows)), h;
    })(l, o), o) : n(l, o);
  }
  function i(l, o) {
    var c = "", f = o.type == "string" ? [0, 0, 0, 0] : ri(l, o);
    switch (o.type) {
      case "base64":
        c = hr(l);
        break;
      case "binary":
      case "string":
        c = l;
        break;
      case "buffer":
        c = o.codepage == 65001 ? l.toString("utf8") : o.codepage && ze !== void 0 ? ze.utils.decode(o.codepage, l) : Ve && Buffer.isBuffer(l) ? l.toString("binary") : Pr(l);
        break;
      case "array":
        c = Ea(l);
        break;
      default:
        throw new Error("Unrecognized type " + o.type);
    }
    return f[0] == 239 && f[1] == 187 && f[2] == 191 ? c = ht(c.slice(3)) : o.type != "string" && o.type != "buffer" && o.codepage == 65001 ? c = ht(c) : o.type == "binary" && ze !== void 0 && o.codepage && (c = ze.utils.decode(o.codepage, ze.utils.encode(28591, c))), c.slice(0, 19) == "socialcalc:version:" ? bl.to_sheet(o.type == "string" ? c : ht(c), o) : s(c, o);
  }
  return { to_workbook: function(l, o) {
    return aa(i(l, o), o);
  }, to_sheet: i, from_sheet: function(l) {
    var o = [];
    if (!l["!ref"]) return "";
    for (var c, f = Je(l["!ref"]), u = l["!data"] != null, h = f.s.r; h <= f.e.r; ++h) {
      for (var p = [], d = f.s.c; d <= f.e.c; ++d) {
        var g = Ge({ r: h, c: d });
        if ((c = u ? (l["!data"][h] || [])[d] : l[g]) && c.v != null) {
          for (var m = (c.w || (Lr(c), c.w) || "").slice(0, 10); m.length < 10; ) m += " ";
          p.push(m + (d === 0 ? " " : ""));
        } else p.push("          ");
      }
      o.push(p.join(""));
    }
    return o.join(`
`);
  } };
})(), ga = /* @__PURE__ */ (function() {
  function e(b, _, k) {
    if (b) {
      Ft(b, b.l || 0);
      for (var T = k.Enum || y; b.l < b.length; ) {
        var S = b.read_shift(2), C = T[S] || T[65535], F = b.read_shift(2), I = b.l + F, P = C.f && C.f(b, F, k);
        if (b.l = I, _(P, C, S)) return;
      }
    }
  }
  var r = ["mmmm", "dd-mmm-yyyy", "dd-mmm", "mmm-yyyy", "@", "mm/dd", "hh:mm:ss AM/PM", "hh:mm AM/PM", "mm/dd/yyyy", "mm/dd", "hh:mm:ss", "hh:mm"];
  function t(b, _) {
    if (!b) return b;
    var k = _ || {}, T = {}, S = "Sheet1", C = "", F = 0, I = {}, P = [], W = [], U = [];
    k.dense && (U = T["!data"] = []);
    var G = { s: { r: 0, c: 0 }, e: { r: 0, c: 0 } }, B = k.sheetRows || 0, z = {};
    if (b[4] == 81 && b[5] == 80 && b[6] == 87) return (function(H, Y) {
      Ft(H, 0);
      var he = Y || {}, te = {};
      he.dense && (te["!data"] = []);
      var Q = [], ke = "", ce = { s: { r: -1, c: -1 }, e: { r: -1, c: -1 } }, fe = 0, Ne = 0, R = 0, Ce = 0, bt = { SheetNames: [], Sheets: {} }, tt = [];
      e: for (; H.l < H.length; ) {
        var pt = H.read_shift(2), mt = H.read_shift(2), ue = H.slice(H.l, H.l + mt);
        switch (Ft(ue, 0), pt) {
          case 1:
            if (ue.read_shift(4) != 962023505) throw "Bad QPW9 BOF!";
            break;
          case 2:
            break e;
          case 8:
          case 1025:
          case 1026:
          case 1032:
            break;
          case 10:
            for (var _t = ue.read_shift(4), Nt = (ue.length - ue.l) / _t | 0, Ie = 0; Ie < _t; ++Ie) {
              var je = ue.l + Nt, Pe = {};
              ue.l += 2, Pe.numFmtId = ue.read_shift(2), E[Pe.numFmtId] && (Pe.z = E[Pe.numFmtId]), ue.l = je, tt.push(Pe);
            }
            break;
          case 1031:
            for (ue.l += 12; ue.l < ue.length; ) fe = ue.read_shift(2), Ne = ue.read_shift(1), Q.push(ue.read_shift(fe, "cstr"));
            break;
          case 1537:
            var at = ue.read_shift(2);
            te = {}, he.dense && (te["!data"] = []), ce.s.c = ue.read_shift(2), ce.e.c = ue.read_shift(2), ce.s.r = ue.read_shift(4), ce.e.r = ue.read_shift(4), ue.l += 4, ue.l + 2 < ue.length && (fe = ue.read_shift(2), Ne = ue.read_shift(1), ke = fe == 0 ? "" : ue.read_shift(fe, "cstr")), ke || (ke = De(at));
            break;
          case 1538:
            if (ce.s.c > 255 || ce.s.r > 999999) break;
            ce.e.c < ce.s.c && (ce.e.c = ce.s.c), ce.e.r < ce.s.r && (ce.e.r = ce.s.r), te["!ref"] = We(ce), Nn(bt, te, ke);
            break;
          case 2561:
            R = ue.read_shift(2), ce.e.c < R && (ce.e.c = R), ce.s.c > R && (ce.s.c = R), Ce = ue.read_shift(4), ce.s.r > Ce && (ce.s.r = Ce), Ce = ue.read_shift(4), ce.e.r < Ce && (ce.e.r = Ce);
            break;
          case 3073:
            Ce = ue.read_shift(4), fe = ue.read_shift(4), ce.s.r > Ce && (ce.s.r = Ce), ce.e.r < Ce + fe - 1 && (ce.e.r = Ce + fe - 1);
            for (var ct = De(R); ue.l < ue.length; ) {
              var Te = { t: "z" }, rt = ue.read_shift(1), qe = -1;
              128 & rt && (qe = ue.read_shift(2));
              var x = 64 & rt ? ue.read_shift(2) - 1 : 0;
              switch (31 & rt) {
                case 0:
                case 1:
                  break;
                case 2:
                  Te = { t: "n", v: ue.read_shift(2) };
                  break;
                case 3:
                  Te = { t: "n", v: ue.read_shift(2, "i") };
                  break;
                case 4:
                  Te = { t: "n", v: ts(ue) };
                  break;
                case 5:
                  Te = { t: "n", v: ue.read_shift(8, "f") };
                  break;
                case 7:
                  Te = { t: "s", v: Q[Ne = ue.read_shift(4) - 1] };
                  break;
                case 8:
                  Te = { t: "n", v: ue.read_shift(8, "f") }, ue.l += 2, ue.l += 4, isNaN(Te.v) && (Te = { t: "e", v: 15 });
                  break;
                default:
                  throw "Unrecognized QPW cell type " + (31 & rt);
              }
              qe != -1 && (tt[qe - 1] || {}).z && (Te.z = tt[qe - 1].z);
              var N = 0;
              if (32 & rt) switch (31 & rt) {
                case 2:
                case 7:
                  N = ue.read_shift(2);
                  break;
                case 3:
                  N = ue.read_shift(2, "i");
                  break;
                default:
                  throw "Unsupported delta for QPW cell type " + (31 & rt);
              }
              if (he.sheetStubs || Te.t != "z") {
                var O = st(Te);
                Te.t == "n" && Te.z && ur(Te.z) && he.cellDates && (O.v = Xr(Te.v), O.t = typeof O.v == "number" ? "n" : "d"), te["!data"] != null ? (te["!data"][Ce] || (te["!data"][Ce] = []), te["!data"][Ce][R] = O) : te[ct + Xe(Ce)] = O;
              }
              for (++Ce, --fe; x-- > 0 && fe >= 0; ) {
                if (32 & rt) switch (31 & rt) {
                  case 2:
                    Te = { t: "n", v: Te.v + N & 65535 };
                    break;
                  case 3:
                    (Te = { t: "n", v: Te.v + N & 65535 }).v > 32767 && (Te.v -= 65536);
                    break;
                  case 7:
                    Te = { t: "s", v: Q[Ne = Ne + N >>> 0] };
                    break;
                  default:
                    throw "Cannot apply delta for QPW cell type " + (31 & rt);
                }
                else switch (31 & rt) {
                  case 1:
                    Te = { t: "z" };
                    break;
                  case 2:
                    Te = { t: "n", v: ue.read_shift(2) };
                    break;
                  case 7:
                    Te = { t: "s", v: Q[Ne = ue.read_shift(4) - 1] };
                    break;
                  default:
                    throw "Cannot apply repeat for QPW cell type " + (31 & rt);
                }
                (he.sheetStubs || Te.t != "z") && (te["!data"] != null ? (te["!data"][Ce] || (te["!data"][Ce] = []), te["!data"][Ce][R] = Te) : te[ct + Xe(Ce)] = Te), ++Ce, --fe;
              }
            }
            break;
          case 3074:
            R = ue.read_shift(2), Ce = ue.read_shift(4);
            var L = A(ue);
            te["!data"] != null ? (te["!data"][Ce] || (te["!data"][Ce] = []), te["!data"][Ce][R] = { t: "s", v: L }) : te[De(R) + Xe(Ce)] = { t: "s", v: L };
        }
        H.l += mt;
      }
      return bt;
    })(b, _);
    if (b[2] == 0 && (b[3] == 8 || b[3] == 9) && b.length >= 16 && b[14] == 5 && b[15] === 108) throw new Error("Unsupported Works 3 for Mac file");
    if (b[2] == 2) k.Enum = y, e(b, function(H, Y, he) {
      switch (he) {
        case 0:
          k.vers = H, H >= 4096 && (k.qpro = !0);
          break;
        case 255:
          k.vers = H, k.works = !0;
          break;
        case 6:
          G = H;
          break;
        case 204:
          H && (C = H);
          break;
        case 222:
          C = H;
          break;
        case 15:
        case 51:
          (!k.qpro && !k.works || he == 51) && H[1].v.charCodeAt(0) < 48 && (H[1].v = H[1].v.slice(1)), (k.works || k.works2) && (H[1].v = H[1].v.replace(/\r\n/g, `
`));
        case 13:
        case 14:
        case 16:
          !(112 & ~H[2]) && (15 & H[2]) > 1 && (15 & H[2]) < 15 && (H[1].z = k.dateNF || r[(15 & H[2]) - 1] || be[14], k.cellDates && (H[1].v = Xr(H[1].v), H[1].t = typeof H[1].v == "number" ? "n" : "d")), k.qpro && H[3] > F && (T["!ref"] = We(G), I[S] = T, P.push(S), T = {}, k.dense && (U = T["!data"] = []), G = { s: { r: 0, c: 0 }, e: { r: 0, c: 0 } }, F = H[3], S = C || "Sheet" + (F + 1), C = "");
          var te = k.dense ? (U[H[0].r] || [])[H[0].c] : T[Ge(H[0])];
          if (te) {
            te.t = H[1].t, te.v = H[1].v, H[1].z != null && (te.z = H[1].z), H[1].f != null && (te.f = H[1].f), z = te;
            break;
          }
          k.dense ? (U[H[0].r] || (U[H[0].r] = []), U[H[0].r][H[0].c] = H[1]) : T[Ge(H[0])] = H[1], z = H[1];
          break;
        case 21509:
          k.works2 = !0;
          break;
        case 21506:
          H == 5281 && (z.z = "hh:mm:ss", k.cellDates && z.t == "n" && (z.v = Xr(z.v), z.t = typeof z.v == "number" ? "n" : "d"));
      }
    }, k);
    else {
      if (b[2] != 26 && b[2] != 14) throw new Error("Unrecognized LOTUS BOF " + b[2]);
      k.Enum = w, b[2] == 14 && (k.qpro = !0, b.l = 0), e(b, function(H, Y, he) {
        switch (he) {
          case 204:
            S = H;
            break;
          case 22:
            H[1].v.charCodeAt(0) < 48 && (H[1].v = H[1].v.slice(1)), H[1].v = H[1].v.replace(/\x0F./g, function(te) {
              return String.fromCharCode(te.charCodeAt(1) - 32);
            }).replace(/\r\n/g, `
`);
          case 23:
          case 24:
          case 25:
          case 37:
          case 39:
          case 40:
            if (H[3] > F && (T["!ref"] = We(G), I[S] = T, P.push(S), T = {}, k.dense && (U = T["!data"] = []), G = { s: { r: 0, c: 0 }, e: { r: 0, c: 0 } }, F = H[3], S = "Sheet" + (F + 1)), B > 0 && H[0].r >= B) break;
            k.dense ? (U[H[0].r] || (U[H[0].r] = []), U[H[0].r][H[0].c] = H[1]) : T[Ge(H[0])] = H[1], G.e.c < H[0].c && (G.e.c = H[0].c), G.e.r < H[0].r && (G.e.r = H[0].r);
            break;
          case 27:
            H[14e3] && (W[H[14e3][0]] = H[14e3][1]);
            break;
          case 1537:
            W[H[0]] = H[1], H[0] == F && (S = H[1]);
        }
      }, k);
    }
    if (T["!ref"] = We(G), I[C || S] = T, P.push(C || S), !W.length) return { SheetNames: P, Sheets: I };
    for (var K = {}, ee = [], se = 0; se < W.length; ++se) I[P[se]] ? (ee.push(W[se] || P[se]), K[W[se]] = I[W[se]] || I[P[se]]) : (ee.push(W[se]), K[W[se]] = { "!ref": "A1" });
    return { SheetNames: ee, Sheets: K };
  }
  function a(b, _, k) {
    var T = [{ c: 0, r: 0 }, { t: "n", v: 0 }, 0, 0];
    return k.qpro && k.vers != 20768 ? (T[0].c = b.read_shift(1), T[3] = b.read_shift(1), T[0].r = b.read_shift(2), b.l += 2) : k.works ? (T[0].c = b.read_shift(2), T[0].r = b.read_shift(2), T[2] = b.read_shift(2)) : (T[2] = b.read_shift(1), T[0].c = b.read_shift(2), T[0].r = b.read_shift(2)), T;
  }
  function n(b) {
    return b.z && ur(b.z) ? 240 | (r.indexOf(b.z) + 1 || 2) : 255;
  }
  function s(b, _, k) {
    var T = V(7 + k.length);
    T.write_shift(1, 255), T.write_shift(2, _), T.write_shift(2, b), T.write_shift(1, 39);
    for (var S = 0; S < T.length; ++S) {
      var C = k.charCodeAt(S);
      T.write_shift(1, C >= 128 ? 95 : C);
    }
    return T.write_shift(1, 0), T;
  }
  function i(b, _, k) {
    var T = V(7);
    return T.write_shift(1, n(k)), T.write_shift(2, _), T.write_shift(2, b), T.write_shift(2, k.v, "i"), T;
  }
  function l(b, _, k) {
    var T = V(13);
    return T.write_shift(1, n(k)), T.write_shift(2, _), T.write_shift(2, b), T.write_shift(8, k.v, "f"), T;
  }
  function o(b, _, k) {
    var T = 32768 & _;
    return _ = (T ? b : 0) + ((_ &= -32769) >= 8192 ? _ - 16384 : _), (T ? "" : "$") + (k ? De(_) : Xe(_));
  }
  var c = { 31: ["NA", 0], 33: ["ABS", 1], 34: ["TRUNC", 1], 35: ["SQRT", 1], 36: ["LOG", 1], 37: ["LN", 1], 38: ["PI", 0], 39: ["SIN", 1], 40: ["COS", 1], 41: ["TAN", 1], 42: ["ATAN2", 2], 43: ["ATAN", 1], 44: ["ASIN", 1], 45: ["ACOS", 1], 46: ["EXP", 1], 47: ["MOD", 2], 49: ["ISNA", 1], 50: ["ISERR", 1], 51: ["FALSE", 0], 52: ["TRUE", 0], 53: ["RAND", 0], 54: ["DATE", 3], 63: ["ROUND", 2], 64: ["TIME", 3], 68: ["ISNUMBER", 1], 69: ["ISTEXT", 1], 70: ["LEN", 1], 71: ["VALUE", 1], 73: ["MID", 3], 74: ["CHAR", 1], 80: ["SUM", 69], 81: ["AVERAGEA", 69], 82: ["COUNTA", 69], 83: ["MINA", 69], 84: ["MAXA", 69], 102: ["UPPER", 1], 103: ["LOWER", 1], 107: ["PROPER", 1], 109: ["TRIM", 1], 111: ["T", 1] }, f = ["", "", "", "", "", "", "", "", "", "+", "-", "*", "/", "^", "=", "<>", "<=", ">=", "<", ">", "", "", "", "", "&", "", "", "", "", "", "", ""];
  function u(b) {
    var _ = [{ c: 0, r: 0 }, { t: "n", v: 0 }, 0];
    return _[0].r = b.read_shift(2), _[3] = b[b.l++], _[0].c = b[b.l++], _;
  }
  function h(b, _, k, T) {
    var S = V(6 + T.length);
    S.write_shift(2, b), S.write_shift(1, k), S.write_shift(1, _), S.write_shift(1, 39);
    for (var C = 0; C < T.length; ++C) {
      var F = T.charCodeAt(C);
      S.write_shift(1, F >= 128 ? 95 : F);
    }
    return S.write_shift(1, 0), S;
  }
  function p(b, _) {
    var k = u(b), T = b.read_shift(4), S = b.read_shift(4), C = b.read_shift(2);
    if (C == 65535) return T === 0 && S === 3221225472 ? (k[1].t = "e", k[1].v = 15) : T === 0 && S === 3489660928 ? (k[1].t = "e", k[1].v = 42) : k[1].v = 0, k;
    var F = 32768 & C;
    return C = (32767 & C) - 16446, k[1].v = (1 - 2 * F) * (S * Math.pow(2, C + 32) + T * Math.pow(2, C)), k;
  }
  function d(b, _, k, T) {
    var S = V(14);
    if (S.write_shift(2, b), S.write_shift(1, k), S.write_shift(1, _), T == 0) return S.write_shift(4, 0), S.write_shift(4, 0), S.write_shift(2, 65535), S;
    var C, F = 0, I = 0, P = 0;
    return T < 0 && (F = 1, T = -T), I = 0 | Math.log2(T), 2147483648 & (P = (T /= Math.pow(2, I - 31)) >>> 0) || (++I, P = (T /= 2) >>> 0), T -= P, P |= 2147483648, P >>>= 0, C = (T *= Math.pow(2, 32)) >>> 0, S.write_shift(4, C), S.write_shift(4, P), I += 16383 + (F ? 32768 : 0), S.write_shift(2, I), S;
  }
  function g(b, _) {
    var k = u(b), T = b.read_shift(8, "f");
    return k[1].v = T, k;
  }
  function m(b, _) {
    return b[b.l + _ - 1] == 0 ? b.read_shift(_, "cstr") : "";
  }
  function v(b, _) {
    var k = V(5 + b.length);
    k.write_shift(2, 14e3), k.write_shift(2, _);
    for (var T = 0; T < b.length; ++T) {
      var S = b.charCodeAt(T);
      k[k.l++] = S > 127 ? 95 : S;
    }
    return k[k.l++] = 0, k;
  }
  var y = { 0: { n: "BOF", f: Et }, 1: { n: "EOF" }, 2: { n: "CALCMODE" }, 3: { n: "CALCORDER" }, 4: { n: "SPLIT" }, 5: { n: "SYNC" }, 6: { n: "RANGE", f: function(b, _, k) {
    var T = { s: { c: 0, r: 0 }, e: { c: 0, r: 0 } };
    return _ == 8 && k.qpro ? (T.s.c = b.read_shift(1), b.l++, T.s.r = b.read_shift(2), T.e.c = b.read_shift(1), b.l++, T.e.r = b.read_shift(2), T) : (T.s.c = b.read_shift(2), T.s.r = b.read_shift(2), _ == 12 && k.qpro && (b.l += 2), T.e.c = b.read_shift(2), T.e.r = b.read_shift(2), _ == 12 && k.qpro && (b.l += 2), T.s.c == 65535 && (T.s.c = T.e.c = T.s.r = T.e.r = 0), T);
  } }, 7: { n: "WINDOW1" }, 8: { n: "COLW1" }, 9: { n: "WINTWO" }, 10: { n: "COLW2" }, 11: { n: "NAME" }, 12: { n: "BLANK" }, 13: { n: "INTEGER", f: function(b, _, k) {
    var T = a(b, 0, k);
    return T[1].v = b.read_shift(2, "i"), T;
  } }, 14: { n: "NUMBER", f: function(b, _, k) {
    var T = a(b, 0, k);
    return T[1].v = b.read_shift(8, "f"), T;
  } }, 15: { n: "LABEL", f: function(b, _, k) {
    var T = b.l + _, S = a(b, 0, k);
    if (S[1].t = "s", (65534 & k.vers) == 20768) {
      b.l++;
      var C = b.read_shift(1);
      return S[1].v = b.read_shift(C, "utf8"), S;
    }
    return k.qpro && b.l++, S[1].v = b.read_shift(T - b.l, "cstr"), S;
  } }, 16: { n: "FORMULA", f: function(b, _, k) {
    var T = b.l + _, S = a(b, 0, k);
    if (S[1].v = b.read_shift(8, "f"), k.qpro) b.l = T;
    else {
      var C = b.read_shift(2);
      (function(F, I) {
        Ft(F, 0);
        for (var P = [], W = 0, U = "", G = "", B = "", z = ""; F.l < F.length; ) {
          var K = F[F.l++];
          switch (K) {
            case 0:
              P.push(F.read_shift(8, "f"));
              break;
            case 1:
              G = o(I[0].c, F.read_shift(2), !0), U = o(I[0].r, F.read_shift(2), !1), P.push(G + U);
              break;
            case 2:
              var ee = o(I[0].c, F.read_shift(2), !0), se = o(I[0].r, F.read_shift(2), !1);
              G = o(I[0].c, F.read_shift(2), !0), U = o(I[0].r, F.read_shift(2), !1), P.push(ee + se + ":" + G + U);
              break;
            case 3:
              if (F.l < F.length) return void console.error("WK1 premature formula end");
              break;
            case 4:
              P.push("(" + P.pop() + ")");
              break;
            case 5:
              P.push(F.read_shift(2));
              break;
            case 6:
              for (var H = ""; K = F[F.l++]; ) H += String.fromCharCode(K);
              P.push('"' + H.replace(/"/g, '""') + '"');
              break;
            case 8:
              P.push("-" + P.pop());
              break;
            case 23:
              P.push("+" + P.pop());
              break;
            case 22:
              P.push("NOT(" + P.pop() + ")");
              break;
            case 20:
            case 21:
              z = P.pop(), B = P.pop(), P.push(["AND", "OR"][K - 20] + "(" + B + "," + z + ")");
              break;
            default:
              if (K < 32 && f[K]) z = P.pop(), B = P.pop(), P.push(B + f[K] + z);
              else {
                if (!c[K]) return K <= 7 ? console.error("WK1 invalid opcode " + K.toString(16)) : K <= 24 ? console.error("WK1 unsupported op " + K.toString(16)) : K <= 30 ? console.error("WK1 invalid opcode " + K.toString(16)) : K <= 115 ? console.error("WK1 unsupported function opcode " + K.toString(16)) : console.error("WK1 unrecognized opcode " + K.toString(16));
                if ((W = c[K][1]) == 69 && (W = F[F.l++]), W > P.length) return void console.error("WK1 bad formula parse 0x" + K.toString(16) + ":|" + P.join("|") + "|");
                var Y = P.slice(-W);
                P.length -= W, P.push(c[K][0] + "(" + Y.join(",") + ")");
              }
          }
        }
        P.length == 1 ? I[1].f = "" + P[0] : console.error("WK1 bad formula parse |" + P.join("|") + "|");
      })(b.slice(b.l, b.l + C), S), b.l += C;
    }
    return S;
  } }, 24: { n: "TABLE" }, 25: { n: "ORANGE" }, 26: { n: "PRANGE" }, 27: { n: "SRANGE" }, 28: { n: "FRANGE" }, 29: { n: "KRANGE1" }, 32: { n: "HRANGE" }, 35: { n: "KRANGE2" }, 36: { n: "PROTEC" }, 37: { n: "FOOTER" }, 38: { n: "HEADER" }, 39: { n: "SETUP" }, 40: { n: "MARGINS" }, 41: { n: "LABELFMT" }, 42: { n: "TITLES" }, 43: { n: "SHEETJS" }, 45: { n: "GRAPH" }, 46: { n: "NGRAPH" }, 47: { n: "CALCCOUNT" }, 48: { n: "UNFORMATTED" }, 49: { n: "CURSORW12" }, 50: { n: "WINDOW" }, 51: { n: "STRING", f: function(b, _, k) {
    var T = b.l + _, S = a(b, 0, k);
    if (S[1].t = "s", k.vers == 20768) {
      var C = b.read_shift(1);
      return S[1].v = b.read_shift(C, "utf8"), S;
    }
    return S[1].v = b.read_shift(T - b.l, "cstr"), S;
  } }, 55: { n: "PASSWORD" }, 56: { n: "LOCKED" }, 60: { n: "QUERY" }, 61: { n: "QUERYNAME" }, 62: { n: "PRINT" }, 63: { n: "PRINTNAME" }, 64: { n: "GRAPH2" }, 65: { n: "GRAPHNAME" }, 66: { n: "ZOOM" }, 67: { n: "SYMSPLIT" }, 68: { n: "NSROWS" }, 69: { n: "NSCOLS" }, 70: { n: "RULER" }, 71: { n: "NNAME" }, 72: { n: "ACOMM" }, 73: { n: "AMACRO" }, 74: { n: "PARSE" }, 102: { n: "PRANGES??" }, 103: { n: "RRANGES??" }, 104: { n: "FNAME??" }, 105: { n: "MRANGES??" }, 204: { n: "SHEETNAMECS", f: m }, 222: { n: "SHEETNAMELP", f: function(b, _) {
    var k = b[b.l++];
    k > _ - 1 && (k = _ - 1);
    for (var T = ""; T.length < k; ) T += String.fromCharCode(b[b.l++]);
    return T;
  } }, 255: { n: "BOF", f: Et }, 21506: { n: "WKSNF", f: Et }, 65535: { n: "" } }, w = { 0: { n: "BOF" }, 1: { n: "EOF" }, 2: { n: "PASSWORD" }, 3: { n: "CALCSET" }, 4: { n: "WINDOWSET" }, 5: { n: "SHEETCELLPTR" }, 6: { n: "SHEETLAYOUT" }, 7: { n: "COLUMNWIDTH" }, 8: { n: "HIDDENCOLUMN" }, 9: { n: "USERRANGE" }, 10: { n: "SYSTEMRANGE" }, 11: { n: "ZEROFORCE" }, 12: { n: "SORTKEYDIR" }, 13: { n: "FILESEAL" }, 14: { n: "DATAFILLNUMS" }, 15: { n: "PRINTMAIN" }, 16: { n: "PRINTSTRING" }, 17: { n: "GRAPHMAIN" }, 18: { n: "GRAPHSTRING" }, 19: { n: "??" }, 20: { n: "ERRCELL" }, 21: { n: "NACELL" }, 22: { n: "LABEL16", f: function(b, _) {
    var k = u(b);
    return k[1].t = "s", k[1].v = b.read_shift(_ - 4, "cstr"), k;
  } }, 23: { n: "NUMBER17", f: p }, 24: { n: "NUMBER18", f: function(b, _) {
    var k = u(b);
    k[1].v = b.read_shift(2);
    var T = k[1].v >> 1;
    if (1 & k[1].v) switch (7 & T) {
      case 0:
        T = 5e3 * (T >> 3);
        break;
      case 1:
        T = 500 * (T >> 3);
        break;
      case 2:
        T = (T >> 3) / 20;
        break;
      case 3:
        T = (T >> 3) / 200;
        break;
      case 4:
        T = (T >> 3) / 2e3;
        break;
      case 5:
        T = (T >> 3) / 2e4;
        break;
      case 6:
        T = (T >> 3) / 16;
        break;
      case 7:
        T = (T >> 3) / 64;
    }
    return k[1].v = T, k;
  } }, 25: { n: "FORMULA19", f: function(b, _) {
    var k = p(b);
    return b.l += _ - 14, k;
  } }, 26: { n: "FORMULA1A" }, 27: { n: "XFORMAT", f: function(b, _) {
    for (var k = {}, T = b.l + _; b.l < T; ) {
      var S = b.read_shift(2);
      if (S == 14e3) {
        for (k[S] = [0, ""], k[S][0] = b.read_shift(2); b[b.l]; ) k[S][1] += String.fromCharCode(b[b.l]), b.l++;
        b.l++;
      }
    }
    return k;
  } }, 28: { n: "DTLABELMISC" }, 29: { n: "DTLABELCELL" }, 30: { n: "GRAPHWINDOW" }, 31: { n: "CPA" }, 32: { n: "LPLAUTO" }, 33: { n: "QUERY" }, 34: { n: "HIDDENSHEET" }, 35: { n: "??" }, 37: { n: "NUMBER25", f: function(b, _) {
    var k = u(b), T = b.read_shift(4);
    return k[1].v = T >> 6, k;
  } }, 38: { n: "??" }, 39: { n: "NUMBER27", f: g }, 40: { n: "FORMULA28", f: function(b, _) {
    var k = g(b);
    return b.l += _ - 12, k;
  } }, 142: { n: "??" }, 147: { n: "??" }, 150: { n: "??" }, 151: { n: "??" }, 152: { n: "??" }, 153: { n: "??" }, 154: { n: "??" }, 155: { n: "??" }, 156: { n: "??" }, 163: { n: "??" }, 174: { n: "??" }, 175: { n: "??" }, 176: { n: "??" }, 177: { n: "??" }, 184: { n: "??" }, 185: { n: "??" }, 186: { n: "??" }, 187: { n: "??" }, 188: { n: "??" }, 195: { n: "??" }, 201: { n: "??" }, 204: { n: "SHEETNAMECS", f: m }, 205: { n: "??" }, 206: { n: "??" }, 207: { n: "??" }, 208: { n: "??" }, 256: { n: "??" }, 259: { n: "??" }, 260: { n: "??" }, 261: { n: "??" }, 262: { n: "??" }, 263: { n: "??" }, 265: { n: "??" }, 266: { n: "??" }, 267: { n: "??" }, 268: { n: "??" }, 270: { n: "??" }, 271: { n: "??" }, 384: { n: "??" }, 389: { n: "??" }, 390: { n: "??" }, 393: { n: "??" }, 396: { n: "??" }, 512: { n: "??" }, 514: { n: "??" }, 513: { n: "??" }, 516: { n: "??" }, 517: { n: "??" }, 640: { n: "??" }, 641: { n: "??" }, 642: { n: "??" }, 643: { n: "??" }, 644: { n: "??" }, 645: { n: "??" }, 646: { n: "??" }, 647: { n: "??" }, 648: { n: "??" }, 658: { n: "??" }, 659: { n: "??" }, 660: { n: "??" }, 661: { n: "??" }, 662: { n: "??" }, 665: { n: "??" }, 666: { n: "??" }, 768: { n: "??" }, 772: { n: "??" }, 1537: { n: "SHEETINFOQP", f: function(b, _, k) {
    if (k.qpro && !(_ < 21)) {
      var T = b.read_shift(1);
      return b.l += 17, b.l += 1, b.l += 2, [T, b.read_shift(_ - 21, "cstr")];
    }
  } }, 1600: { n: "??" }, 1602: { n: "??" }, 1793: { n: "??" }, 1794: { n: "??" }, 1795: { n: "??" }, 1796: { n: "??" }, 1920: { n: "??" }, 2048: { n: "??" }, 2049: { n: "??" }, 2052: { n: "??" }, 2688: { n: "??" }, 10998: { n: "??" }, 12849: { n: "??" }, 28233: { n: "??" }, 28484: { n: "??" }, 65535: { n: "" } }, E = { 5: "dd-mmm-yy", 6: "dd-mmm", 7: "mmm-yy", 8: "mm/dd/yy", 10: "hh:mm:ss AM/PM", 11: "hh:mm AM/PM", 14: "dd-mmm-yyyy", 15: "mmm-yyyy", 34: "0.00", 50: "0.00;[Red]0.00", 66: "0.00;(0.00)", 82: "0.00;[Red](0.00)", 162: '"$"#,##0.00;\\("$"#,##0.00\\)', 288: "0%", 304: "0E+00", 320: "# ?/?" };
  function A(b) {
    var _ = b.read_shift(2), k = b.read_shift(1);
    if (k != 0) throw "unsupported QPW string type " + k.toString(16);
    return b.read_shift(_, "sbcs-cont");
  }
  return { sheet_to_wk1: function(b, _) {
    var k = _ || {};
    if (+k.codepage >= 0 && yr(+k.codepage), k.type == "string") throw new Error("Cannot write WK1 to JS string");
    var T = rr();
    if (!b["!ref"]) throw new Error("Cannot export empty sheet to WK1");
    var S, C, F = Je(b["!ref"]), I = b["!data"] != null, P = [];
    Z(T, 0, (S = 1030, (C = V(2)).write_shift(2, S), C)), Z(T, 6, (function(ee) {
      var se = V(8);
      return se.write_shift(2, ee.s.c), se.write_shift(2, ee.s.r), se.write_shift(2, ee.e.c), se.write_shift(2, ee.e.r), se;
    })(F));
    for (var W = Math.min(F.e.r, 8191), U = F.s.c; U <= F.e.c; ++U) P[U] = De(U);
    for (var G = F.s.r; G <= W; ++G) {
      var B = Xe(G);
      for (U = F.s.c; U <= F.e.c; ++U) {
        var z = I ? (b["!data"][G] || [])[U] : b[P[U] + B];
        if (z && z.t != "z") switch (z.t) {
          case "n":
            (0 | z.v) == z.v && z.v >= -32768 && z.v <= 32767 ? Z(T, 13, i(G, U, z)) : Z(T, 14, l(G, U, z));
            break;
          case "d":
            var K = yt(z.v);
            (0 | K) == K && K >= -32768 && K <= 32767 ? Z(T, 13, i(G, U, { v: K, z: z.z || be[14] })) : Z(T, 14, l(G, U, { v: K, z: z.z || be[14] }));
            break;
          default:
            Z(T, 15, s(G, U, Lr(z).slice(0, 239)));
        }
      }
    }
    return Z(T, 1), T.end();
  }, book_to_wk3: function(b, _) {
    var k = _ || {};
    if (+k.codepage >= 0 && yr(+k.codepage), k.type == "string") throw new Error("Cannot write WK3 to JS string");
    var T = rr();
    Z(T, 0, (function(H) {
      var Y = V(26);
      Y.write_shift(2, 4096), Y.write_shift(2, 4), Y.write_shift(4, 0);
      for (var he = 0, te = 0, Q = 0, ke = 0; ke < H.SheetNames.length; ++ke) {
        var ce = H.SheetNames[ke], fe = H.Sheets[ce];
        if (fe && fe["!ref"]) {
          ++Q;
          var Ne = Ot(fe["!ref"]);
          he < Ne.e.r && (he = Ne.e.r), te < Ne.e.c && (te = Ne.e.c);
        }
      }
      return he > 8191 && (he = 8191), Y.write_shift(2, he), Y.write_shift(1, Q), Y.write_shift(1, te), Y.write_shift(2, 0), Y.write_shift(2, 0), Y.write_shift(1, 1), Y.write_shift(1, 2), Y.write_shift(4, 0), Y.write_shift(4, 0), Y;
    })(b));
    for (var S = 0, C = 0; S < b.SheetNames.length; ++S) (b.Sheets[b.SheetNames[S]] || {})["!ref"] && Z(T, 27, v(b.SheetNames[S], C++));
    var F = 0;
    for (S = 0; S < b.SheetNames.length; ++S) {
      var I = b.Sheets[b.SheetNames[S]];
      if (I && I["!ref"]) {
        for (var P = Je(I["!ref"]), W = I["!data"] != null, U = [], G = Math.min(P.e.r, 8191), B = P.s.r; B <= G; ++B) for (var z = Xe(B), K = P.s.c; K <= P.e.c; ++K) {
          B === P.s.r && (U[K] = De(K));
          var ee = U[K] + z, se = W ? (I["!data"][B] || [])[K] : I[ee];
          se && se.t != "z" && (se.t == "n" ? Z(T, 23, d(B, K, F, se.v)) : Z(T, 22, h(B, K, F, Lr(se).slice(0, 239))));
        }
        ++F;
      }
    }
    return Z(T, 1), T.end();
  }, to_workbook: function(b, _) {
    switch (_.type) {
      case "base64":
        return t(sr(hr(b)), _);
      case "binary":
        return t(sr(b), _);
      case "buffer":
      case "array":
        return t(b, _);
    }
    throw "Unsupported type " + _.type;
  } };
})(), V1 = /* @__PURE__ */ (function() {
  function e(a) {
    var n = Wt(a, "t");
    if (!n) return { t: "s", v: "" };
    var s = { t: "s", v: et(n[1]) }, i = Wt(a, "rPr");
    return i && (s.s = (function(l) {
      var o = {}, c = l.match(Vt), f = 0, u = !1;
      if (c) for (; f != c.length; ++f) {
        var h = pe(c[f]);
        switch (h[0].replace(/<\w*:/g, "<")) {
          case "<condense":
          case "<extend":
            break;
          case "<shadow":
            if (!h.val) break;
          case "<shadow>":
          case "<shadow/>":
            o.shadow = 1;
            break;
          case "</shadow>":
            break;
          case "<charset":
            if (h.val == "1") break;
            o.cp = ni[parseInt(h.val, 10)];
            break;
          case "<outline":
            if (!h.val) break;
          case "<outline>":
          case "<outline/>":
            o.outline = 1;
            break;
          case "</outline>":
            break;
          case "<rFont":
            o.name = h.val;
            break;
          case "<sz":
            o.sz = h.val;
            break;
          case "<strike":
            if (!h.val) break;
          case "<strike>":
          case "<strike/>":
            o.strike = 1;
            break;
          case "</strike>":
            break;
          case "<u":
            if (!h.val) break;
            switch (h.val) {
              case "double":
                o.uval = "double";
                break;
              case "singleAccounting":
                o.uval = "single-accounting";
                break;
              case "doubleAccounting":
                o.uval = "double-accounting";
            }
          case "<u>":
          case "<u/>":
            o.u = 1;
            break;
          case "</u>":
            break;
          case "<b":
            if (h.val == "0") break;
          case "<b>":
          case "<b/>":
            o.b = 1;
            break;
          case "</b>":
            break;
          case "<i":
            if (h.val == "0") break;
          case "<i>":
          case "<i/>":
            o.i = 1;
            break;
          case "</i>":
            break;
          case "<color":
            h.rgb && (o.color = h.rgb.slice(2, 8));
            break;
          case "<color>":
          case "<color/>":
          case "</color>":
            break;
          case "<family":
            o.family = h.val;
            break;
          case "<family>":
          case "<family/>":
          case "</family>":
            break;
          case "<vertAlign":
            o.valign = h.val;
            break;
          case "<vertAlign>":
          case "<vertAlign/>":
          case "</vertAlign>":
          case "<scheme":
          case "<scheme>":
          case "<scheme/>":
          case "</scheme>":
          case "<extLst":
          case "<extLst>":
          case "</extLst>":
            break;
          case "<ext":
            u = !0;
            break;
          case "</ext>":
            u = !1;
            break;
          default:
            if (h[0].charCodeAt(1) !== 47 && !u) throw new Error("Unrecognized rich format " + h[0]);
        }
      }
      return o;
    })(i[1])), s;
  }
  var r = /<(?:\w+:)?r>/g, t = /<\/(?:\w+:)?r>/;
  return function(a) {
    return a.replace(r, "").split(t).map(e).filter(function(n) {
      return n.v;
    });
  };
})(), $1 = /* @__PURE__ */ (function() {
  var e = /(\r\n|\n)/g;
  function r(t) {
    var a = [[], t.v, []];
    return t.v ? (t.s && (function(n, s, i) {
      var l = [];
      n.u && l.push("text-decoration: underline;"), n.uval && l.push("text-underline-style:" + n.uval + ";"), n.sz && l.push("font-size:" + n.sz + "pt;"), n.outline && l.push("text-effect: outline;"), n.shadow && l.push("text-shadow: auto;"), s.push('<span style="' + l.join("") + '">'), n.b && (s.push("<b>"), i.push("</b>")), n.i && (s.push("<i>"), i.push("</i>")), n.strike && (s.push("<s>"), i.push("</s>"));
      var o = n.valign || "";
      o == "superscript" || o == "super" ? o = "sup" : o == "subscript" && (o = "sub"), o != "" && (s.push("<" + o + ">"), i.push("</" + o + ">")), i.push("</span>");
    })(t.s, a[0], a[2]), a[0].join("") + a[1].replace(e, "<br/>") + a[2].join("")) : "";
  }
  return function(t) {
    return t.map(r).join("");
  };
})(), G1 = /<(?:\w+:)?t\b[^<>]*>([^<]*)<\/(?:\w+:)?t>/g, X1 = /<(?:\w+:)?r\b[^<>]*>/;
function Si(e, r) {
  var t = !r || r.cellHTML, a = {};
  return e ? (e.match(/^\s*<(?:\w+:)?t[^>]*>/) ? (a.t = et(ht(e.slice(e.indexOf(">") + 1).split(/<\/(?:\w+:)?t>/)[0] || ""), !0), a.r = ht(e), t && (a.h = Za(a.t))) : e.match(X1) && (a.r = ht(e), a.t = et(ht((zf(e, "rPh").match(G1) || []).join("").replace(Vt, "")), !0), t && (a.h = $1(V1(a.r)))), a) : { t: "" };
}
var j1 = /<(?:\w+:)?(?:si|sstItem)>/g, K1 = /<\/(?:\w+:)?(?:si|sstItem)>/, Y1 = /^\s|\s$|[\t\n\r]/, J1 = function(e, r) {
  var t = !1;
  return r == null && (t = !0, r = V(15 + 4 * e.t.length)), r.write_shift(1, 0), Pt(e.t, r), t ? r.slice(0, r.l) : r;
};
function q1(e) {
  var r = rr();
  J(r, 159, (function(a, n) {
    return n || (n = V(8)), n.write_shift(4, a.Count), n.write_shift(4, a.Unique), n;
  })(e));
  for (var t = 0; t < e.length; ++t) J(r, 19, J1(e[t]));
  return J(r, 160), r.end();
}
function wl(e) {
  if (ze !== void 0) return ze.utils.encode(ya, e);
  for (var r = [], t = e.split(""), a = 0; a < t.length; ++a) r[a] = t[a].charCodeAt(0);
  return r;
}
function $r(e, r) {
  var t = {};
  return t.Major = e.read_shift(2), t.Minor = e.read_shift(2), r >= 4 && (e.l += r - 4), t;
}
function Q1(e) {
  for (var r = e.read_shift(4), t = e.l + r - 4, a = {}, n = e.read_shift(4), s = []; n-- > 0; ) s.push({ t: e.read_shift(4), v: e.read_shift(0, "lpp4") });
  if (a.name = e.read_shift(0, "lpp4"), a.comps = s, e.l != t) throw new Error("Bad DataSpaceMapEntry: " + e.l + " != " + t);
  return a;
}
function Z1(e) {
  var r = (function(t) {
    var a = {};
    return t.read_shift(4), t.l += 4, a.id = t.read_shift(0, "lpp4"), a.name = t.read_shift(0, "lpp4"), a.R = $r(t, 4), a.U = $r(t, 4), a.W = $r(t, 4), a;
  })(e);
  if (r.ename = e.read_shift(0, "8lpp4"), r.blksz = e.read_shift(4), r.cmode = e.read_shift(4), e.read_shift(4) != 4) throw new Error("Bad !Primary record");
  return r;
}
function Tl(e, r) {
  var t = e.l + r, a = {};
  a.Flags = 63 & e.read_shift(4), e.l += 4, a.AlgID = e.read_shift(4);
  var n = !1;
  switch (a.AlgID) {
    case 26126:
    case 26127:
    case 26128:
      n = a.Flags == 36;
      break;
    case 26625:
      n = a.Flags == 4;
      break;
    case 0:
      n = a.Flags == 16 || a.Flags == 4 || a.Flags == 36;
      break;
    default:
      throw "Unrecognized encryption algorithm: " + a.AlgID;
  }
  if (!n) throw new Error("Encryption Flags/AlgID mismatch");
  return a.AlgIDHash = e.read_shift(4), a.KeySize = e.read_shift(4), a.ProviderType = e.read_shift(4), e.l += 8, a.CSPName = e.read_shift(t - e.l >> 1, "utf16le"), e.l = t, a;
}
function yl(e, r) {
  var t = {}, a = e.l + r;
  return e.l += 4, t.Salt = e.slice(e.l, e.l + 16), e.l += 16, t.Verifier = e.slice(e.l, e.l + 16), e.l += 16, e.read_shift(4), t.VerifierHash = e.slice(e.l, a), e.l = a, t;
}
function e0(e) {
  if ((63 & e.read_shift(4)) != 36) throw new Error("EncryptionInfo mismatch");
  var r = e.read_shift(4);
  return { t: "Std", h: Tl(e, r), v: yl(e, e.length - e.l) };
}
function t0() {
  throw new Error("File is password-protected: ECMA-376 Extensible");
}
function r0(e) {
  var r = ["saltSize", "blockSize", "keyBits", "hashSize", "cipherAlgorithm", "cipherChaining", "hashAlgorithm", "saltValue"];
  e.l += 4;
  var t = e.read_shift(e.length - e.l, "utf8"), a = {};
  return t.replace(Vt, function(n) {
    var s = pe(n);
    switch (Tr(s[0])) {
      case "<?xml":
      case "<encryption":
      case "</encryption>":
      case "</keyEncryptors>":
      case "</keyEncryptor>":
        break;
      case "<keyData":
        r.forEach(function(i) {
          a[i] = s[i];
        });
        break;
      case "<dataIntegrity":
        a.encryptedHmacKey = s.encryptedHmacKey, a.encryptedHmacValue = s.encryptedHmacValue;
        break;
      case "<keyEncryptors>":
      case "<keyEncryptors":
        a.encs = [];
        break;
      case "<keyEncryptor":
        a.uri = s.uri;
        break;
      case "<encryptedKey":
        a.encs.push(s);
        break;
      default:
        throw s[0];
    }
  }), a;
}
function xi(e) {
  var r, t, a = 0, n = wl(e), s = n.length + 1;
  for ((r = ea(s))[0] = n.length, t = 1; t != s; ++t) r[t] = n[t - 1];
  for (t = s - 1; t >= 0; --t) a = ((16384 & a ? 1 : 0) | a << 1 & 32767) ^ r[t];
  return 52811 ^ a;
}
var Oo = /* @__PURE__ */ (function() {
  var e = [187, 255, 255, 186, 255, 255, 185, 128, 0, 190, 15, 0, 191, 15, 0], r = [57840, 7439, 52380, 33984, 4364, 3600, 61902, 12606, 6258, 57657, 54287, 34041, 10252, 43370, 20163], t = [44796, 19929, 39858, 10053, 20106, 40212, 10761, 31585, 63170, 64933, 60267, 50935, 40399, 11199, 17763, 35526, 1453, 2906, 5812, 11624, 23248, 885, 1770, 3540, 7080, 14160, 28320, 56640, 55369, 41139, 20807, 41614, 21821, 43642, 17621, 28485, 56970, 44341, 19019, 38038, 14605, 29210, 60195, 50791, 40175, 10751, 21502, 43004, 24537, 18387, 36774, 3949, 7898, 15796, 31592, 63184, 47201, 24803, 49606, 37805, 14203, 28406, 56812, 17824, 35648, 1697, 3394, 6788, 13576, 27152, 43601, 17539, 35078, 557, 1114, 2228, 4456, 30388, 60776, 51953, 34243, 7079, 14158, 28316, 14128, 28256, 56512, 43425, 17251, 34502, 7597, 13105, 26210, 52420, 35241, 883, 1766, 3532, 4129, 8258, 16516, 33032, 4657, 9314, 18628], a = function(n, s) {
    return 255 & ((i = n ^ s) / 2 | 128 * i);
    var i;
  };
  return function(n) {
    for (var s, i, l, o = wl(n), c = (function(p) {
      for (var d = r[p.length - 1], g = 104, m = p.length - 1; m >= 0; --m) for (var v = p[m], y = 0; y != 7; ++y) 64 & v && (d ^= t[g]), v *= 2, --g;
      return d;
    })(o), f = o.length, u = ea(16), h = 0; h != 16; ++h) u[h] = 0;
    for (1 & ~f || (s = c >> 8, u[f] = a(e[0], s), --f, s = 255 & c, i = o[o.length - 1], u[f] = a(i, s)); f > 0; ) s = c >> 8, u[--f] = a(o[f], s), s = 255 & c, u[--f] = a(o[f], s);
    for (f = 15, l = 15 - o.length; l > 0; ) s = c >> 8, u[f] = a(e[l], s), --l, s = 255 & c, u[--f] = a(o[f], s), --f, --l;
    return u;
  };
})(), a0 = function(e) {
  var r = 0, t = Oo(e);
  return function(a) {
    var n = (function(s, i, l, o, c) {
      var f, u;
      for (c || (c = i), o || (o = Oo(s)), f = 0; f != i.length; ++f) u = i[f], u = 255 & ((u ^= o[l]) >> 5 | u << 3), c[f] = u, ++l;
      return [c, l, o];
    })("", a, r, t);
    return r = n[1], n[0];
  };
};
function n0(e, r, t) {
  var a = t || {};
  return a.Info = e.read_shift(2), e.l -= 2, a.Info === 1 ? a.Data = (function(n) {
    var s = {}, i = s.EncryptionVersionInfo = $r(n, 4);
    if (i.Major != 1 || i.Minor != 1) throw "unrecognized version code " + i.Major + " : " + i.Minor;
    return s.Salt = n.read_shift(16), s.EncryptedVerifier = n.read_shift(16), s.EncryptedVerifierHash = n.read_shift(16), s;
  })(e) : a.Data = (function(n, s) {
    var i = {}, l = i.EncryptionVersionInfo = $r(n, 4);
    if (s -= 4, l.Minor != 2) throw new Error("unrecognized minor version code: " + l.Minor);
    if (l.Major > 4 || l.Major < 2) throw new Error("unrecognized major version code: " + l.Major);
    i.Flags = n.read_shift(4), s -= 4;
    var o = n.read_shift(4);
    return s -= 4, i.EncryptionHeader = Tl(n, o), s -= o, i.EncryptionVerifier = yl(n, s), i;
  })(e, r), a;
}
function Un(e, r) {
  var t = r || {}, a = {}, n = t.dense;
  n && (a["!data"] = []);
  var s = zs(e, "\\trowd", "\\row");
  if (!s) throw new Error("RTF missing table");
  var i = { s: { c: 0, r: 0 }, e: { c: 0, r: s.length - 1 } }, l = [];
  return s.forEach(function(o, c) {
    n && (l = a["!data"][c] = []);
    for (var f, u = /\\[\w\-]+\b/g, h = 0, p = -1, d = []; (f = u.exec(o)) != null; ) {
      var g = o.slice(h, u.lastIndex - f[0].length);
      switch (g.charCodeAt(0) == 32 && (g = g.slice(1)), g.length && d.push(g), f[0]) {
        case "\\cell":
          if (++p, d.length) {
            var m = { v: d.join(""), t: "s" };
            m.v == "TRUE" || m.v == "FALSE" ? (m.v = m.v == "TRUE", m.t = "b") : isNaN(fr(m.v)) ? zt[m.v] != null && (m.t = "e", m.w = m.v, m.v = zt[m.v]) : (m.t = "n", t.cellText !== !1 && (m.w = m.v), m.v = fr(m.v)), n ? l[p] = m : a[Ge({ r: c, c: p })] = m;
          }
          d = [];
          break;
        case "\\par":
          d.push(`
`);
      }
      h = u.lastIndex;
    }
    p > i.e.c && (i.e.c = p);
  }), a["!ref"] = We(i), a;
}
function s0(e, r) {
  var t = aa((function(a, n) {
    switch (n.type) {
      case "base64":
        return Un(hr(a), n);
      case "binary":
        return Un(a, n);
      case "buffer":
        return Un(Ve && Buffer.isBuffer(a) ? a.toString("binary") : Pr(a), n);
      case "array":
        return Un(Ea(a), n);
    }
    throw new Error("Unrecognized type " + n.type);
  })(e, r), r);
  return t.bookType = "rtf", t;
}
function gn(e) {
  for (var r = 0, t = 1; r != 3; ++r) t = 256 * t + (e[r] > 255 ? 255 : e[r] < 0 ? 0 : e[r]);
  return t.toString(16).toUpperCase().slice(1);
}
function ns(e, r) {
  if (r === 0) return e;
  var t, a, n = (function(s) {
    var i = s[0] / 255, l = s[1] / 255, o = s[2] / 255, c = Math.max(i, l, o), f = Math.min(i, l, o), u = c - f;
    if (u === 0) return [0, 0, i];
    var h, p = 0, d = c + f;
    switch (h = u / (d > 1 ? 2 - d : d), c) {
      case i:
        p = ((l - o) / u + 6) % 6;
        break;
      case l:
        p = (o - i) / u + 2;
        break;
      case o:
        p = (i - l) / u + 4;
    }
    return [p / 6, h, d / 2];
  })((a = (t = e).slice(t[0] === "#" ? 1 : 0).slice(0, 6), [parseInt(a.slice(0, 2), 16), parseInt(a.slice(2, 4), 16), parseInt(a.slice(4, 6), 16)]));
  return n[2] = r < 0 ? n[2] * (1 + r) : 1 - (1 - n[2]) * (1 - r), gn((function(s) {
    var i, l = s[0], o = s[1], c = s[2], f = 2 * o * (c < 0.5 ? c : 1 - c), u = c - f / 2, h = [u, u, u], p = 6 * l;
    if (o !== 0) switch (0 | p) {
      case 0:
      case 6:
        i = f * p, h[0] += f, h[1] += i;
        break;
      case 1:
        i = f * (2 - p), h[0] += i, h[1] += f;
        break;
      case 2:
        i = f * (p - 2), h[1] += f, h[2] += i;
        break;
      case 3:
        i = f * (4 - p), h[1] += i, h[2] += f;
        break;
      case 4:
        i = f * (p - 4), h[2] += f, h[0] += i;
        break;
      case 5:
        i = f * (6 - p), h[2] += i, h[0] += f;
    }
    for (var d = 0; d != 3; ++d) h[d] = Math.round(255 * h[d]);
    return h;
  })(n));
}
var Zt = 6;
function za(e) {
  return Math.floor((e + Math.round(128 / Zt) / 256) * Zt);
}
function bn(e) {
  return Math.floor((e - 5) / Zt * 100 + 0.5) / 100;
}
function ss(e) {
  return Math.round((e * Zt + 5) / Zt * 256) / 256;
}
function xs(e) {
  return ss(bn(za(e)));
}
function Ai(e) {
  var r = Math.abs(e - xs(e)), t = Zt;
  if (r > 5e-3) for (Zt = 1; Zt < 15; ++Zt) Math.abs(e - xs(e)) <= r && (r = Math.abs(e - xs(e)), t = Zt);
  Zt = t;
}
function jr(e) {
  e.width ? (e.wpx = za(e.width), e.wch = bn(e.wpx), e.MDW = Zt) : e.wpx ? (e.wch = bn(e.wpx), e.width = ss(e.wch), e.MDW = Zt) : typeof e.wch == "number" && (e.width = ss(e.wch), e.wpx = za(e.width), e.MDW = Zt), e.customWidth && delete e.customWidth;
}
var El = 96;
function wn(e) {
  return 96 * e / El;
}
function Ha(e) {
  return e * El / 96;
}
var i0 = { None: "none", Solid: "solid", Gray50: "mediumGray", Gray75: "darkGray", Gray25: "lightGray", HorzStripe: "darkHorizontal", VertStripe: "darkVertical", ReverseDiagStripe: "darkDown", DiagStripe: "darkUp", DiagCross: "darkGrid", ThickDiagCross: "darkTrellis", ThinHorzStripe: "lightHorizontal", ThinVertStripe: "lightVertical", ThinReverseDiagStripe: "lightDown", ThinHorzCross: "lightGrid" }, Bn = ["numFmtId", "fillId", "fontId", "borderId", "xfId"], Wn = ["applyAlignment", "applyBorder", "applyFill", "applyFont", "applyNumberFormat", "applyProtection", "pivotButton", "quotePrefix"], o0 = /* @__PURE__ */ (function() {
  return function(e, r, t) {
    var a, n = {};
    return e && (e = oi(An(e, "<!--", "-->")), (a = Wt(e, "numFmts")) && (function(s, i, l) {
      i.NumberFmt = [];
      for (var o = gt(be), c = 0; c < o.length; ++c) i.NumberFmt[o[c]] = be[o[c]];
      var f = s.match(Vt);
      if (f) for (c = 0; c < f.length; ++c) {
        var u = pe(f[c]);
        switch (Tr(u[0])) {
          case "<numFmts":
          case "</numFmts>":
          case "<numFmts/>":
          case "<numFmts>":
          case "</numFmt>":
            break;
          case "<numFmt":
            var h = et(ht(u.formatCode)), p = parseInt(u.numFmtId, 10);
            if (i.NumberFmt[p] = h, p > 0) {
              if (p > 392) {
                for (p = 392; p > 60 && i.NumberFmt[p] != null; --p) ;
                i.NumberFmt[p] = h;
              }
              Zr(h, p);
            }
            break;
          default:
            if (l.WTF) throw new Error("unrecognized " + u[0] + " in numFmts");
        }
      }
    })(a[0], n, t), (a = Wt(e, "fonts")) && (function(s, i, l, o) {
      i.Fonts = [];
      var c = {}, f = !1;
      (s.match(Vt) || []).forEach(function(u) {
        var h = pe(u);
        switch (Tr(h[0])) {
          case "<fonts":
          case "<fonts>":
          case "</fonts>":
          case "<font":
          case "<font>":
          case "<name/>":
          case "</name>":
          case "</b>":
          case "</b":
          case "</i>":
          case "</i":
          case "</u>":
          case "</u":
          case "</strike>":
          case "</strike":
          case "</outline>":
          case "</outline":
          case "</shadow>":
          case "</shadow":
          case "</condense>":
          case "</condense":
          case "</extend>":
          case "</extend":
          case "<sz/>":
          case "</sz>":
          case "</sz":
          case "<vertAlign/>":
          case "</vertAlign>":
          case "</vertAlign":
          case "<family/>":
          case "</family>":
          case "</family":
          case "<scheme/>":
          case "</scheme>":
          case "</scheme":
          case "<charset/>":
          case "</charset>":
          case "</charset":
          case "<color/>":
          case "</color>":
          case "</color":
          case "<extLst":
          case "<extLst>":
          case "</extLst>":
            break;
          case "</font>":
          case "<font/>":
            i.Fonts.push(c), c = {};
            break;
          case "<name":
            h.val && (c.name = ht(h.val));
            break;
          case "<b":
            c.bold = h.val ? ot(h.val) : 1;
            break;
          case "<b/>":
            c.bold = 1;
            break;
          case "<i":
            c.italic = h.val ? ot(h.val) : 1;
            break;
          case "<i/>":
            c.italic = 1;
            break;
          case "<u":
            switch (h.val) {
              case "none":
                c.underline = 0;
                break;
              case "single":
                c.underline = 1;
                break;
              case "double":
                c.underline = 2;
                break;
              case "singleAccounting":
                c.underline = 33;
                break;
              case "doubleAccounting":
                c.underline = 34;
            }
            break;
          case "<u/>":
            c.underline = 1;
            break;
          case "<strike":
            c.strike = h.val ? ot(h.val) : 1;
            break;
          case "<strike/>":
            c.strike = 1;
            break;
          case "<outline":
            c.outline = h.val ? ot(h.val) : 1;
            break;
          case "<outline/>":
            c.outline = 1;
            break;
          case "<shadow":
            c.shadow = h.val ? ot(h.val) : 1;
            break;
          case "<shadow/>":
            c.shadow = 1;
            break;
          case "<condense":
            c.condense = h.val ? ot(h.val) : 1;
            break;
          case "<condense/>":
            c.condense = 1;
            break;
          case "<extend":
            c.extend = h.val ? ot(h.val) : 1;
            break;
          case "<extend/>":
            c.extend = 1;
            break;
          case "<sz":
            h.val && (c.sz = +h.val);
            break;
          case "<vertAlign":
            h.val && (c.vertAlign = h.val);
            break;
          case "<family":
            h.val && (c.family = parseInt(h.val, 10));
            break;
          case "<scheme":
            h.val && (c.scheme = h.val);
            break;
          case "<charset":
            if (h.val == "1") break;
            h.codepage = ni[parseInt(h.val, 10)];
            break;
          case "<color":
            if (c.color || (c.color = {}), h.auto && (c.color.auto = ot(h.auto)), h.rgb) c.color.rgb = h.rgb.slice(-6);
            else if (h.indexed) {
              c.color.index = parseInt(h.indexed, 10);
              var p = Da[c.color.index];
              c.color.index == 81 && (p = Da[1]), p || (p = Da[1]), c.color.rgb = p[0].toString(16) + p[1].toString(16) + p[2].toString(16);
            } else h.theme && (c.color.theme = parseInt(h.theme, 10), h.tint && (c.color.tint = parseFloat(h.tint)), h.theme && l.themeElements && l.themeElements.clrScheme && (c.color.rgb = ns(l.themeElements.clrScheme[c.color.theme].rgb, c.color.tint || 0)));
            break;
          case "<AlternateContent":
          case "<ext":
            f = !0;
            break;
          case "</AlternateContent>":
          case "</AlternateContent":
          case "</ext>":
            f = !1;
            break;
          default:
            if (o && o.WTF && !f) throw new Error("unrecognized " + h[0] + " in fonts");
        }
      });
    })(a[0], n, r, t), (a = Wt(e, "fills")) && (function(s, i, l, o) {
      i.Fills = [];
      var c = {}, f = !1;
      (s.match(Vt) || []).forEach(function(u) {
        var h = pe(u);
        switch (Tr(h[0])) {
          case "<fills":
          case "<fills>":
          case "</fills>":
          case "</fill>":
          case "<gradientFill>":
          case "<patternFill/>":
          case "</patternFill>":
          case "<bgColor/>":
          case "</bgColor>":
          case "<fgColor/>":
          case "</fgColor>":
          case "<stop":
          case "<stop/>":
          case "</stop>":
          case "<color":
          case "<color/>":
          case "</color>":
          case "<extLst":
          case "<extLst>":
          case "</extLst>":
            break;
          case "<fill>":
          case "<fill":
          case "<fill/>":
            c = {}, i.Fills.push(c);
            break;
          case "<gradientFill":
          case "</gradientFill>":
            i.Fills.push(c), c = {};
            break;
          case "<patternFill":
          case "<patternFill>":
            h.patternType && (c.patternType = h.patternType);
            break;
          case "<bgColor":
            c.bgColor || (c.bgColor = {}), h.indexed && (c.bgColor.indexed = parseInt(h.indexed, 10)), h.theme && (c.bgColor.theme = parseInt(h.theme, 10)), h.tint && (c.bgColor.tint = parseFloat(h.tint)), h.rgb && (c.bgColor.rgb = h.rgb.slice(-6));
            break;
          case "<fgColor":
            c.fgColor || (c.fgColor = {}), h.theme && (c.fgColor.theme = parseInt(h.theme, 10)), h.tint && (c.fgColor.tint = parseFloat(h.tint)), h.rgb != null && (c.fgColor.rgb = h.rgb.slice(-6));
            break;
          case "<ext":
            f = !0;
            break;
          case "</ext>":
            f = !1;
            break;
          default:
            if (o && o.WTF && !f) throw new Error("unrecognized " + h[0] + " in fills");
        }
      });
    })(a[0], n, 0, t), (a = Wt(e, "borders")) && (function(s, i, l, o) {
      i.Borders = [];
      var c = {}, f = !1;
      (s.match(Vt) || []).forEach(function(u) {
        var h = pe(u);
        switch (Tr(h[0])) {
          case "<borders":
          case "<borders>":
          case "</borders>":
          case "</border>":
          case "<left/>":
          case "<left":
          case "<left>":
          case "</left>":
          case "<right/>":
          case "<right":
          case "<right>":
          case "</right>":
          case "<top/>":
          case "<top":
          case "<top>":
          case "</top>":
          case "<bottom/>":
          case "<bottom":
          case "<bottom>":
          case "</bottom>":
          case "<diagonal":
          case "<diagonal>":
          case "<diagonal/>":
          case "</diagonal>":
          case "<horizontal":
          case "<horizontal>":
          case "<horizontal/>":
          case "</horizontal>":
          case "<vertical":
          case "<vertical>":
          case "<vertical/>":
          case "</vertical>":
          case "<start":
          case "<start>":
          case "<start/>":
          case "</start>":
          case "<end":
          case "<end>":
          case "<end/>":
          case "</end>":
          case "<color":
          case "<color>":
          case "<color/>":
          case "</color>":
          case "<extLst":
          case "<extLst>":
          case "</extLst>":
            break;
          case "<border":
          case "<border>":
          case "<border/>":
            c = {}, h.diagonalUp && (c.diagonalUp = ot(h.diagonalUp)), h.diagonalDown && (c.diagonalDown = ot(h.diagonalDown)), i.Borders.push(c);
            break;
          case "<ext":
            f = !0;
            break;
          case "</ext>":
            f = !1;
            break;
          default:
            if (o && o.WTF && !f) throw new Error("unrecognized " + h[0] + " in borders");
        }
      });
    })(a[0], n, 0, t), (a = Wt(e, "cellXfs")) && (function(s, i, l) {
      var o;
      i.CellXf = [];
      var c = !1;
      (s.match(Vt) || []).forEach(function(f) {
        var u = pe(f), h = 0;
        switch (Tr(u[0])) {
          case "<cellXfs":
          case "<cellXfs>":
          case "<cellXfs/>":
          case "</cellXfs>":
          case "</xf>":
          case "</alignment>":
          case "<protection":
          case "<protection>":
          case "</protection>":
          case "<protection/>":
          case "<extLst":
          case "<extLst>":
          case "</extLst>":
            break;
          case "<xf":
          case "<xf/>":
          case "<xf>":
            for (delete (o = u)[0], h = 0; h < Bn.length; ++h) o[Bn[h]] && (o[Bn[h]] = parseInt(o[Bn[h]], 10));
            for (h = 0; h < Wn.length; ++h) o[Wn[h]] && (o[Wn[h]] = ot(o[Wn[h]]));
            if (i.NumberFmt && o.numFmtId > 392) {
              for (h = 392; h > 60; --h) if (i.NumberFmt[o.numFmtId] == i.NumberFmt[h]) {
                o.numFmtId = h;
                break;
              }
            }
            i.CellXf.push(o);
            break;
          case "<alignment":
          case "<alignment/>":
          case "<alignment>":
            var p = {};
            u.vertical && (p.vertical = u.vertical), u.horizontal && (p.horizontal = u.horizontal), u.textRotation != null && (p.textRotation = u.textRotation), u.indent && (p.indent = u.indent), u.wrapText && (p.wrapText = ot(u.wrapText)), o.alignment = p;
            break;
          case "<AlternateContent":
          case "<AlternateContent>":
          case "<ext":
            c = !0;
            break;
          case "</AlternateContent>":
          case "</ext>":
            c = !1;
            break;
          default:
            if (l && l.WTF && !c) throw new Error("unrecognized " + u[0] + " in cellXfs");
        }
      });
    })(a[0], n, t)), n;
  };
})();
function c0(e, r) {
  var t, a = [kt, ne("styleSheet", null, { xmlns: Sa[0], "xmlns:vt": ui })];
  return e.SSF && (t = (function(n) {
    var s = ["<numFmts>"];
    return [[5, 8], [23, 26], [41, 44], [50, 392]].forEach(function(i) {
      for (var l = i[0]; l <= i[1]; ++l) n[l] != null && (s[s.length] = ne("numFmt", null, { numFmtId: l, formatCode: Be(n[l]) }));
    }), s.length === 1 ? "" : (s[s.length] = "</numFmts>", s[0] = ne("numFmts", null, { count: s.length - 2 }).replace("/>", ">"), s.join(""));
  })(e.SSF)) != null && (a[a.length] = t), a[a.length] = '<fonts count="1"><font><sz val="12"/><color theme="1"/><name val="Calibri"/><family val="2"/><scheme val="minor"/></font></fonts>', a[a.length] = '<fills count="2"><fill><patternFill patternType="none"/></fill><fill><patternFill patternType="gray125"/></fill></fills>', a[a.length] = '<borders count="1"><border><left/><right/><top/><bottom/><diagonal/></border></borders>', a[a.length] = '<cellStyleXfs count="1"><xf numFmtId="0" fontId="0" fillId="0" borderId="0"/></cellStyleXfs>', (t = (function(n) {
    var s = [];
    return s[s.length] = ne("cellXfs", null), n.forEach(function(i) {
      s[s.length] = ne("xf", null, i);
    }), s[s.length] = "</cellXfs>", s.length === 2 ? "" : (s[0] = ne("cellXfs", null, { count: s.length - 2 }).replace("/>", ">"), s.join(""));
  })(r.cellXfs)) && (a[a.length] = t), a[a.length] = '<cellStyles count="1"><cellStyle name="Normal" xfId="0" builtinId="0"/></cellStyles>', a[a.length] = '<dxfs count="0"/>', a[a.length] = '<tableStyles count="0" defaultTableStyle="TableStyleMedium9" defaultPivotStyle="PivotStyleMedium4"/>', a.length > 2 && (a[a.length] = "</styleSheet>", a[1] = a[1].replace("/>", ">")), a.join("");
}
function l0(e, r, t) {
  t || (t = V(6 + 4 * r.length)), t.write_shift(2, e), Pt(r, t);
  var a = t.length > t.l ? t.slice(0, t.l) : t;
  return t.l == null && (t.l = t.length), a;
}
function f0(e, r) {
  r || (r = V(153)), r.write_shift(2, 20 * e.sz), (function(a, n) {
    n || (n = V(2));
    var s = (a.italic ? 2 : 0) | (a.strike ? 8 : 0) | (a.outline ? 16 : 0) | (a.shadow ? 32 : 0) | (a.condense ? 64 : 0) | (a.extend ? 128 : 0);
    n.write_shift(1, s), n.write_shift(1, 0);
  })(e, r), r.write_shift(2, e.bold ? 700 : 400);
  var t = 0;
  return e.vertAlign == "superscript" ? t = 1 : e.vertAlign == "subscript" && (t = 2), r.write_shift(2, t), r.write_shift(1, e.underline || 0), r.write_shift(1, e.family || 0), r.write_shift(1, e.charset || 0), r.write_shift(1, 0), rs(e.color, r), r.write_shift(1, 2), Pt(e.name, r), r.length > r.l ? r.slice(0, r.l) : r;
}
var As, h0 = ["none", "solid", "mediumGray", "darkGray", "lightGray", "darkHorizontal", "darkVertical", "darkDown", "darkUp", "darkGrid", "darkTrellis", "lightHorizontal", "lightVertical", "lightDown", "lightUp", "lightGrid", "lightTrellis", "gray125", "gray0625"], u0 = tr;
function No(e, r) {
  r || (r = V(84)), As || (As = ls(h0));
  var t = As[e.patternType];
  t == null && (t = 40), r.write_shift(4, t);
  var a = 0;
  if (t != 40) for (rs({ auto: 1 }, r), rs({ auto: 1 }, r); a < 12; ++a) r.write_shift(4, 0);
  else {
    for (; a < 4; ++a) r.write_shift(4, 0);
    for (; a < 12; ++a) r.write_shift(4, 0);
  }
  return r.length > r.l ? r.slice(0, r.l) : r;
}
function Fo(e, r, t) {
  return t || (t = V(16)), t.write_shift(2, r || 0), t.write_shift(2, e.numFmtId || 0), t.write_shift(2, 0), t.write_shift(2, 0), t.write_shift(2, 0), t.write_shift(1, 0), t.write_shift(1, 0), t.write_shift(1, 0), t.write_shift(1, 0), t.write_shift(1, 0), t.write_shift(1, 0), t;
}
function ja(e, r) {
  return r || (r = V(10)), r.write_shift(1, 0), r.write_shift(1, 0), r.write_shift(4, 0), r.write_shift(4, 0), r;
}
var d0 = tr;
function p0(e) {
  var r;
  J(e, 613, Sr(1)), J(e, 46, (r || (r = V(51)), r.write_shift(1, 0), ja(0, r), ja(0, r), ja(0, r), ja(0, r), ja(0, r), r.length > r.l ? r.slice(0, r.l) : r)), J(e, 614);
}
function m0(e) {
  var r, t;
  J(e, 619, Sr(1)), J(e, 48, (r = { xfId: 0, name: "Normal" }, t || (t = V(52)), t.write_shift(4, r.xfId), t.write_shift(2, 1), t.write_shift(1, 0), t.write_shift(1, 0), mn(r.name || "", t), t.length > t.l ? t.slice(0, t.l) : t)), J(e, 620);
}
function v0(e) {
  J(e, 508, (function(r, t, a) {
    var n = V(2052);
    return n.write_shift(4, r), mn(t, n), mn(a, n), n.length > n.l ? n.slice(0, n.l) : n;
  })(0, "TableStyleMedium9", "PivotStyleMedium4")), J(e, 509);
}
function g0(e, r) {
  var t = rr();
  return J(t, 278), (function(a, n) {
    if (n) {
      var s = 0;
      [[5, 8], [23, 26], [41, 44], [50, 392]].forEach(function(i) {
        for (var l = i[0]; l <= i[1]; ++l) n[l] != null && ++s;
      }), s != 0 && (J(a, 615, Sr(s)), [[5, 8], [23, 26], [41, 44], [50, 392]].forEach(function(i) {
        for (var l = i[0]; l <= i[1]; ++l) n[l] != null && J(a, 44, l0(l, n[l]));
      }), J(a, 616));
    }
  })(t, e.SSF), (function(a) {
    J(a, 611, Sr(1)), J(a, 43, f0({ sz: 12, color: { theme: 1 }, name: "Calibri", family: 2 })), J(a, 612);
  })(t), (function(a) {
    J(a, 603, Sr(2)), J(a, 45, No({ patternType: "none" })), J(a, 45, No({ patternType: "gray125" })), J(a, 604);
  })(t), p0(t), (function(a) {
    J(a, 626, Sr(1)), J(a, 47, Fo({ numFmtId: 0 }, 65535)), J(a, 627);
  })(t), (function(a, n) {
    J(a, 617, Sr(n.length)), n.forEach(function(s) {
      J(a, 47, Fo(s, 0));
    }), J(a, 618);
  })(t, r.cellXfs), m0(t), (function(a) {
    J(a, 505, Sr(0)), J(a, 506);
  })(t), v0(t), J(t, 279), t.end();
}
var b0 = ["</a:lt1>", "</a:dk1>", "</a:lt2>", "</a:dk2>", "</a:accent1>", "</a:accent2>", "</a:accent3>", "</a:accent4>", "</a:accent5>", "</a:accent6>", "</a:hlink>", "</a:folHlink>"];
function w0(e, r, t) {
  var a;
  if (r.themeElements = {}, !(a = va(e, "a:clrScheme"))) throw new Error("clrScheme not found in themeElements");
  if ((function(n, s, i) {
    s.themeElements.clrScheme = [];
    var l = {};
    (n[0].match(Vt) || []).forEach(function(o) {
      var c = pe(o);
      switch (c[0]) {
        case "<a:clrScheme":
        case "</a:clrScheme>":
        case "</a:srgbClr>":
        case "</a:sysClr>":
          break;
        case "<a:srgbClr":
          l.rgb = c.val;
          break;
        case "<a:sysClr":
          l.rgb = c.lastClr;
          break;
        case "</a:dk1>":
        case "</a:lt1>":
        case "<a:dk1>":
        case "<a:lt1>":
        case "<a:dk2>":
        case "</a:dk2>":
        case "<a:lt2>":
        case "</a:lt2>":
        case "<a:accent1>":
        case "</a:accent1>":
        case "<a:accent2>":
        case "</a:accent2>":
        case "<a:accent3>":
        case "</a:accent3>":
        case "<a:accent4>":
        case "</a:accent4>":
        case "<a:accent5>":
        case "</a:accent5>":
        case "<a:accent6>":
        case "</a:accent6>":
        case "<a:hlink>":
        case "</a:hlink>":
        case "<a:folHlink>":
        case "</a:folHlink>":
          c[0].charAt(1) === "/" ? (s.themeElements.clrScheme[b0.indexOf(c[0])] = l, l = {}) : l.name = c[0].slice(3, c[0].length - 1);
          break;
        default:
          if (i && i.WTF) throw new Error("Unrecognized " + c[0] + " in clrScheme");
      }
    });
  })(a, r, t), !(a = va(e, "a:fontScheme"))) throw new Error("fontScheme not found in themeElements");
  if (!(a = va(e, "a:fmtScheme"))) throw new Error("fmtScheme not found in themeElements");
}
function kl(e, r) {
  var t;
  e && e.length !== 0 || (e = Ci());
  var a = {};
  if (!(t = va(e, "a:themeElements"))) throw new Error("themeElements not found in theme");
  return w0(t[0], a, r), a.raw = e, a;
}
function Ci(e, r) {
  if (r && r.themeXLSX) return r.themeXLSX;
  if (e && typeof e.raw == "string") return e.raw;
  var t = [kt];
  return t[t.length] = '<a:theme xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main" name="Office Theme">', t[t.length] = "<a:themeElements>", t[t.length] = '<a:clrScheme name="Office">', t[t.length] = '<a:dk1><a:sysClr val="windowText" lastClr="000000"/></a:dk1>', t[t.length] = '<a:lt1><a:sysClr val="window" lastClr="FFFFFF"/></a:lt1>', t[t.length] = '<a:dk2><a:srgbClr val="1F497D"/></a:dk2>', t[t.length] = '<a:lt2><a:srgbClr val="EEECE1"/></a:lt2>', t[t.length] = '<a:accent1><a:srgbClr val="4F81BD"/></a:accent1>', t[t.length] = '<a:accent2><a:srgbClr val="C0504D"/></a:accent2>', t[t.length] = '<a:accent3><a:srgbClr val="9BBB59"/></a:accent3>', t[t.length] = '<a:accent4><a:srgbClr val="8064A2"/></a:accent4>', t[t.length] = '<a:accent5><a:srgbClr val="4BACC6"/></a:accent5>', t[t.length] = '<a:accent6><a:srgbClr val="F79646"/></a:accent6>', t[t.length] = '<a:hlink><a:srgbClr val="0000FF"/></a:hlink>', t[t.length] = '<a:folHlink><a:srgbClr val="800080"/></a:folHlink>', t[t.length] = "</a:clrScheme>", t[t.length] = '<a:fontScheme name="Office">', t[t.length] = "<a:majorFont>", t[t.length] = '<a:latin typeface="Cambria"/>', t[t.length] = '<a:ea typeface=""/>', t[t.length] = '<a:cs typeface=""/>', t[t.length] = '<a:font script="Jpan" typeface="MS Pゴシック"/>', t[t.length] = '<a:font script="Hang" typeface="맑은 고딕"/>', t[t.length] = '<a:font script="Hans" typeface="宋体"/>', t[t.length] = '<a:font script="Hant" typeface="新細明體"/>', t[t.length] = '<a:font script="Arab" typeface="Times New Roman"/>', t[t.length] = '<a:font script="Hebr" typeface="Times New Roman"/>', t[t.length] = '<a:font script="Thai" typeface="Tahoma"/>', t[t.length] = '<a:font script="Ethi" typeface="Nyala"/>', t[t.length] = '<a:font script="Beng" typeface="Vrinda"/>', t[t.length] = '<a:font script="Gujr" typeface="Shruti"/>', t[t.length] = '<a:font script="Khmr" typeface="MoolBoran"/>', t[t.length] = '<a:font script="Knda" typeface="Tunga"/>', t[t.length] = '<a:font script="Guru" typeface="Raavi"/>', t[t.length] = '<a:font script="Cans" typeface="Euphemia"/>', t[t.length] = '<a:font script="Cher" typeface="Plantagenet Cherokee"/>', t[t.length] = '<a:font script="Yiii" typeface="Microsoft Yi Baiti"/>', t[t.length] = '<a:font script="Tibt" typeface="Microsoft Himalaya"/>', t[t.length] = '<a:font script="Thaa" typeface="MV Boli"/>', t[t.length] = '<a:font script="Deva" typeface="Mangal"/>', t[t.length] = '<a:font script="Telu" typeface="Gautami"/>', t[t.length] = '<a:font script="Taml" typeface="Latha"/>', t[t.length] = '<a:font script="Syrc" typeface="Estrangelo Edessa"/>', t[t.length] = '<a:font script="Orya" typeface="Kalinga"/>', t[t.length] = '<a:font script="Mlym" typeface="Kartika"/>', t[t.length] = '<a:font script="Laoo" typeface="DokChampa"/>', t[t.length] = '<a:font script="Sinh" typeface="Iskoola Pota"/>', t[t.length] = '<a:font script="Mong" typeface="Mongolian Baiti"/>', t[t.length] = '<a:font script="Viet" typeface="Times New Roman"/>', t[t.length] = '<a:font script="Uigh" typeface="Microsoft Uighur"/>', t[t.length] = '<a:font script="Geor" typeface="Sylfaen"/>', t[t.length] = "</a:majorFont>", t[t.length] = "<a:minorFont>", t[t.length] = '<a:latin typeface="Calibri"/>', t[t.length] = '<a:ea typeface=""/>', t[t.length] = '<a:cs typeface=""/>', t[t.length] = '<a:font script="Jpan" typeface="MS Pゴシック"/>', t[t.length] = '<a:font script="Hang" typeface="맑은 고딕"/>', t[t.length] = '<a:font script="Hans" typeface="宋体"/>', t[t.length] = '<a:font script="Hant" typeface="新細明體"/>', t[t.length] = '<a:font script="Arab" typeface="Arial"/>', t[t.length] = '<a:font script="Hebr" typeface="Arial"/>', t[t.length] = '<a:font script="Thai" typeface="Tahoma"/>', t[t.length] = '<a:font script="Ethi" typeface="Nyala"/>', t[t.length] = '<a:font script="Beng" typeface="Vrinda"/>', t[t.length] = '<a:font script="Gujr" typeface="Shruti"/>', t[t.length] = '<a:font script="Khmr" typeface="DaunPenh"/>', t[t.length] = '<a:font script="Knda" typeface="Tunga"/>', t[t.length] = '<a:font script="Guru" typeface="Raavi"/>', t[t.length] = '<a:font script="Cans" typeface="Euphemia"/>', t[t.length] = '<a:font script="Cher" typeface="Plantagenet Cherokee"/>', t[t.length] = '<a:font script="Yiii" typeface="Microsoft Yi Baiti"/>', t[t.length] = '<a:font script="Tibt" typeface="Microsoft Himalaya"/>', t[t.length] = '<a:font script="Thaa" typeface="MV Boli"/>', t[t.length] = '<a:font script="Deva" typeface="Mangal"/>', t[t.length] = '<a:font script="Telu" typeface="Gautami"/>', t[t.length] = '<a:font script="Taml" typeface="Latha"/>', t[t.length] = '<a:font script="Syrc" typeface="Estrangelo Edessa"/>', t[t.length] = '<a:font script="Orya" typeface="Kalinga"/>', t[t.length] = '<a:font script="Mlym" typeface="Kartika"/>', t[t.length] = '<a:font script="Laoo" typeface="DokChampa"/>', t[t.length] = '<a:font script="Sinh" typeface="Iskoola Pota"/>', t[t.length] = '<a:font script="Mong" typeface="Mongolian Baiti"/>', t[t.length] = '<a:font script="Viet" typeface="Arial"/>', t[t.length] = '<a:font script="Uigh" typeface="Microsoft Uighur"/>', t[t.length] = '<a:font script="Geor" typeface="Sylfaen"/>', t[t.length] = "</a:minorFont>", t[t.length] = "</a:fontScheme>", t[t.length] = '<a:fmtScheme name="Office">', t[t.length] = "<a:fillStyleLst>", t[t.length] = '<a:solidFill><a:schemeClr val="phClr"/></a:solidFill>', t[t.length] = '<a:gradFill rotWithShape="1">', t[t.length] = "<a:gsLst>", t[t.length] = '<a:gs pos="0"><a:schemeClr val="phClr"><a:tint val="50000"/><a:satMod val="300000"/></a:schemeClr></a:gs>', t[t.length] = '<a:gs pos="35000"><a:schemeClr val="phClr"><a:tint val="37000"/><a:satMod val="300000"/></a:schemeClr></a:gs>', t[t.length] = '<a:gs pos="100000"><a:schemeClr val="phClr"><a:tint val="15000"/><a:satMod val="350000"/></a:schemeClr></a:gs>', t[t.length] = "</a:gsLst>", t[t.length] = '<a:lin ang="16200000" scaled="1"/>', t[t.length] = "</a:gradFill>", t[t.length] = '<a:gradFill rotWithShape="1">', t[t.length] = "<a:gsLst>", t[t.length] = '<a:gs pos="0"><a:schemeClr val="phClr"><a:tint val="100000"/><a:shade val="100000"/><a:satMod val="130000"/></a:schemeClr></a:gs>', t[t.length] = '<a:gs pos="100000"><a:schemeClr val="phClr"><a:tint val="50000"/><a:shade val="100000"/><a:satMod val="350000"/></a:schemeClr></a:gs>', t[t.length] = "</a:gsLst>", t[t.length] = '<a:lin ang="16200000" scaled="0"/>', t[t.length] = "</a:gradFill>", t[t.length] = "</a:fillStyleLst>", t[t.length] = "<a:lnStyleLst>", t[t.length] = '<a:ln w="9525" cap="flat" cmpd="sng" algn="ctr"><a:solidFill><a:schemeClr val="phClr"><a:shade val="95000"/><a:satMod val="105000"/></a:schemeClr></a:solidFill><a:prstDash val="solid"/></a:ln>', t[t.length] = '<a:ln w="25400" cap="flat" cmpd="sng" algn="ctr"><a:solidFill><a:schemeClr val="phClr"/></a:solidFill><a:prstDash val="solid"/></a:ln>', t[t.length] = '<a:ln w="38100" cap="flat" cmpd="sng" algn="ctr"><a:solidFill><a:schemeClr val="phClr"/></a:solidFill><a:prstDash val="solid"/></a:ln>', t[t.length] = "</a:lnStyleLst>", t[t.length] = "<a:effectStyleLst>", t[t.length] = "<a:effectStyle>", t[t.length] = "<a:effectLst>", t[t.length] = '<a:outerShdw blurRad="40000" dist="20000" dir="5400000" rotWithShape="0"><a:srgbClr val="000000"><a:alpha val="38000"/></a:srgbClr></a:outerShdw>', t[t.length] = "</a:effectLst>", t[t.length] = "</a:effectStyle>", t[t.length] = "<a:effectStyle>", t[t.length] = "<a:effectLst>", t[t.length] = '<a:outerShdw blurRad="40000" dist="23000" dir="5400000" rotWithShape="0"><a:srgbClr val="000000"><a:alpha val="35000"/></a:srgbClr></a:outerShdw>', t[t.length] = "</a:effectLst>", t[t.length] = "</a:effectStyle>", t[t.length] = "<a:effectStyle>", t[t.length] = "<a:effectLst>", t[t.length] = '<a:outerShdw blurRad="40000" dist="23000" dir="5400000" rotWithShape="0"><a:srgbClr val="000000"><a:alpha val="35000"/></a:srgbClr></a:outerShdw>', t[t.length] = "</a:effectLst>", t[t.length] = '<a:scene3d><a:camera prst="orthographicFront"><a:rot lat="0" lon="0" rev="0"/></a:camera><a:lightRig rig="threePt" dir="t"><a:rot lat="0" lon="0" rev="1200000"/></a:lightRig></a:scene3d>', t[t.length] = '<a:sp3d><a:bevelT w="63500" h="25400"/></a:sp3d>', t[t.length] = "</a:effectStyle>", t[t.length] = "</a:effectStyleLst>", t[t.length] = "<a:bgFillStyleLst>", t[t.length] = '<a:solidFill><a:schemeClr val="phClr"/></a:solidFill>', t[t.length] = '<a:gradFill rotWithShape="1">', t[t.length] = "<a:gsLst>", t[t.length] = '<a:gs pos="0"><a:schemeClr val="phClr"><a:tint val="40000"/><a:satMod val="350000"/></a:schemeClr></a:gs>', t[t.length] = '<a:gs pos="40000"><a:schemeClr val="phClr"><a:tint val="45000"/><a:shade val="99000"/><a:satMod val="350000"/></a:schemeClr></a:gs>', t[t.length] = '<a:gs pos="100000"><a:schemeClr val="phClr"><a:shade val="20000"/><a:satMod val="255000"/></a:schemeClr></a:gs>', t[t.length] = "</a:gsLst>", t[t.length] = '<a:path path="circle"><a:fillToRect l="50000" t="-80000" r="50000" b="180000"/></a:path>', t[t.length] = "</a:gradFill>", t[t.length] = '<a:gradFill rotWithShape="1">', t[t.length] = "<a:gsLst>", t[t.length] = '<a:gs pos="0"><a:schemeClr val="phClr"><a:tint val="80000"/><a:satMod val="300000"/></a:schemeClr></a:gs>', t[t.length] = '<a:gs pos="100000"><a:schemeClr val="phClr"><a:shade val="30000"/><a:satMod val="200000"/></a:schemeClr></a:gs>', t[t.length] = "</a:gsLst>", t[t.length] = '<a:path path="circle"><a:fillToRect l="50000" t="50000" r="50000" b="50000"/></a:path>', t[t.length] = "</a:gradFill>", t[t.length] = "</a:bgFillStyleLst>", t[t.length] = "</a:fmtScheme>", t[t.length] = "</a:themeElements>", t[t.length] = "<a:objectDefaults>", t[t.length] = "<a:spDef>", t[t.length] = '<a:spPr/><a:bodyPr/><a:lstStyle/><a:style><a:lnRef idx="1"><a:schemeClr val="accent1"/></a:lnRef><a:fillRef idx="3"><a:schemeClr val="accent1"/></a:fillRef><a:effectRef idx="2"><a:schemeClr val="accent1"/></a:effectRef><a:fontRef idx="minor"><a:schemeClr val="lt1"/></a:fontRef></a:style>', t[t.length] = "</a:spDef>", t[t.length] = "<a:lnDef>", t[t.length] = '<a:spPr/><a:bodyPr/><a:lstStyle/><a:style><a:lnRef idx="2"><a:schemeClr val="accent1"/></a:lnRef><a:fillRef idx="0"><a:schemeClr val="accent1"/></a:fillRef><a:effectRef idx="1"><a:schemeClr val="accent1"/></a:effectRef><a:fontRef idx="minor"><a:schemeClr val="tx1"/></a:fontRef></a:style>', t[t.length] = "</a:lnDef>", t[t.length] = "</a:objectDefaults>", t[t.length] = "<a:extraClrSchemeLst/>", t[t.length] = "</a:theme>", t.join("");
}
function T0(e) {
  var r = {};
  switch (r.xclrType = e.read_shift(2), r.nTintShade = e.read_shift(2), r.xclrType) {
    case 0:
    case 4:
      e.l += 4;
      break;
    case 1:
      r.xclrValue = (function(t, a) {
        return tr(t, a);
      })(e, 4);
      break;
    case 2:
      r.xclrValue = fl(e);
      break;
    case 3:
      r.xclrValue = (function(t) {
        return t.read_shift(4);
      })(e);
  }
  return e.l += 8, r;
}
function y0(e) {
  var r = e.read_shift(2), t = e.read_shift(2) - 4, a = [r];
  switch (r) {
    case 4:
    case 5:
    case 7:
    case 8:
    case 9:
    case 10:
    case 11:
    case 13:
      a[1] = T0(e);
      break;
    case 6:
      a[1] = (function(n, s) {
        return tr(n, s);
      })(e, t);
      break;
    case 14:
    case 15:
      a[1] = e.read_shift(t === 1 ? 1 : 2);
      break;
    default:
      throw new Error("Unrecognized ExtProp type: " + r + " " + t);
  }
  return a;
}
function E0(e, r) {
  r.forEach(function(t) {
    t[0];
  });
}
function k0() {
  var e, r, t = rr();
  return J(t, 332), J(t, 334, Sr(1)), J(t, 335, ((r = V(12 + 2 * (e = { name: "XLDAPR", version: 12e4, flags: 3496657072 }).name.length)).write_shift(4, e.flags), r.write_shift(4, e.version), Pt(e.name, r), r.slice(0, r.l))), J(t, 336), J(t, 339, (function(a, n) {
    var s = V(8 + 2 * n.length);
    return s.write_shift(4, a), Pt(n, s), s.slice(0, s.l);
  })(1, "XLDAPR")), J(t, 52), J(t, 35, Sr(514)), J(t, 4096, Sr(0)), J(t, 4097, wr(1)), J(t, 36), J(t, 53), J(t, 340), J(t, 337, (function(a) {
    var n = V(8);
    return n.write_shift(4, a), n.write_shift(4, 1), n;
  })(1)), J(t, 51, (function(a) {
    var n = V(4 + 8 * a.length);
    n.write_shift(4, a.length);
    for (var s = 0; s < a.length; ++s) n.write_shift(4, a[s][0]), n.write_shift(4, a[s][1]);
    return n;
  })([[1, 0]])), J(t, 338), J(t, 333), t.end();
}
function _l(e, r, t) {
  var a = [21600, 21600], n = ["m0,0l0", a[1], a[0], a[1], a[0], "0xe"].join(","), s = [ne("xml", null, { "xmlns:v": n1, "xmlns:o": dn, "xmlns:x": us, "xmlns:mv": a1 }).replace(/\/>/, ">"), ne("o:shapelayout", ne("o:idmap", null, { "v:ext": "edit", data: e }), { "v:ext": "edit" })], i = 65536 * e, l = r || [];
  return l.length > 0 && s.push(ne("v:shapetype", [ne("v:stroke", null, { joinstyle: "miter" }), ne("v:path", null, { gradientshapeok: "t", "o:connecttype": "rect" })].join(""), { id: "_x0000_t202", coordsize: a.join(","), "o:spt": 202, path: n })), l.forEach(function(o) {
    ++i, s.push((function(c, f) {
      var u = ft(c[0]), h = { color2: "#BEFF82", type: "gradient" };
      h.type == "gradient" && (h.angle = "-180");
      var p = h.type == "gradient" ? ne("o:fill", null, { type: "gradientUnscaled", "v:ext": "view" }) : null, d = ne("v:fill", p, h), g = { on: "t", obscured: "t" };
      return ["<v:shape" + _a({ id: "_x0000_s" + f, type: "#_x0000_t202", style: "position:absolute; margin-left:80pt;margin-top:5pt;width:104pt;height:64pt;z-index:10" + (c[1].hidden ? ";visibility:hidden" : ""), fillcolor: "#ECFAD4", strokecolor: "#edeaa1" }) + ">", d, ne("v:shadow", null, g), ne("v:path", null, { "o:connecttype": "none" }), '<v:textbox><div style="text-align:left"></div></v:textbox>', '<x:ClientData ObjectType="Note">', "<x:MoveWithCells/>", "<x:SizeWithCells/>", $t("x:Anchor", [u.c + 1, 0, u.r + 1, 0, u.c + 3, 20, u.r + 5, 20].join(",")), $t("x:AutoFill", "False"), $t("x:Row", String(u.r)), $t("x:Column", String(u.c)), c[1].hidden ? "" : "<x:Visible/>", "</x:ClientData>", "</v:shape>"].join("");
    })(o, i));
  }), s.push("</xml>"), s.join("");
}
function Do(e, r, t, a) {
  var n, s = e["!data"] != null;
  r.forEach(function(i) {
    var l = ft(i.ref);
    if (!(l.r < 0 || l.c < 0)) {
      if (s ? (e["!data"][l.r] || (e["!data"][l.r] = []), n = e["!data"][l.r][l.c]) : n = e[i.ref], !n) {
        n = { t: "z" }, s ? e["!data"][l.r][l.c] = n : e[i.ref] = n;
        var o = Je(e["!ref"] || "BDWGO1000001:A1");
        o.s.r > l.r && (o.s.r = l.r), o.e.r < l.r && (o.e.r = l.r), o.s.c > l.c && (o.s.c = l.c), o.e.c < l.c && (o.e.c = l.c);
        var c = We(o);
        e["!ref"] = c;
      }
      n.c || (n.c = []);
      var f = { a: i.author, t: i.t, r: i.r, T: t };
      i.h && (f.h = i.h);
      for (var u = n.c.length - 1; u >= 0; --u) {
        if (!t && n.c[u].T) return;
        t && !n.c[u].T && n.c.splice(u, 1);
      }
      if (t && a) {
        for (u = 0; u < a.length; ++u) if (f.a == a[u].id) {
          f.a = a[u].name || f.a;
          break;
        }
      }
      n.c.push(f);
    }
  });
}
function _0(e) {
  var r = [kt, ne("comments", null, { xmlns: Sa[0] })], t = [];
  return r.push("<authors>"), e.forEach(function(a) {
    a[1].forEach(function(n) {
      var s = Be(n.a);
      t.indexOf(s) == -1 && (t.push(s), r.push("<author>" + s + "</author>")), n.T && n.ID && t.indexOf("tc=" + n.ID) == -1 && (t.push("tc=" + n.ID), r.push("<author>tc=" + n.ID + "</author>"));
    });
  }), t.length == 0 && (t.push("SheetJ5"), r.push("<author>SheetJ5</author>")), r.push("</authors>"), r.push("<commentList>"), e.forEach(function(a) {
    var n = 0, s = [], i = 0;
    if (a[1][0] && a[1][0].T && a[1][0].ID && (n = t.indexOf("tc=" + a[1][0].ID)), a[1].forEach(function(c) {
      c.a && (n = t.indexOf(Be(c.a))), c.T && ++i, s.push(c.t == null ? "" : Be(c.t));
    }), i === 0) a[1].forEach(function(c) {
      r.push('<comment ref="' + a[0] + '" authorId="' + t.indexOf(Be(c.a)) + '"><text>'), r.push($t("t", c.t == null ? "" : Be(c.t))), r.push("</text></comment>");
    });
    else {
      a[1][0] && a[1][0].T && a[1][0].ID && (n = t.indexOf("tc=" + a[1][0].ID)), r.push('<comment ref="' + a[0] + '" authorId="' + n + '"><text>');
      for (var l = `Comment:
    ` + s[0] + `
`, o = 1; o < s.length; ++o) l += `Reply:
    ` + s[o] + `
`;
      r.push($t("t", Be(l))), r.push("</text></comment>");
    }
  }), r.push("</commentList>"), r.length > 2 && (r[r.length] = "</comments>", r[1] = r[1].replace("/>", ">")), r.join("");
}
function Sl(e, r, t) {
  var a = [kt, ne("ThreadedComments", null, { xmlns: Fc }).replace(/[\/]>/, ">")];
  return e.forEach(function(n) {
    var s = "";
    (n[1] || []).forEach(function(i, l) {
      if (i.T) {
        i.a && r.indexOf(i.a) == -1 && r.push(i.a);
        var o = { ref: n[0], id: "{54EE7951-7262-4200-6969-" + ("000000000000" + t.tcid++).slice(-12) + "}" };
        l == 0 ? s = o.id : o.parentId = s, i.ID = o.id, i.a && (o.personId = "{54EE7950-7262-4200-6969-" + ("000000000000" + r.indexOf(i.a)).slice(-12) + "}"), a.push(ne("threadedComment", $t("text", i.t || ""), o));
      } else delete i.ID;
    });
  }), a.push("</ThreadedComments>"), a.join("");
}
function xl(e) {
  var r = [kt, ne("personList", null, { xmlns: Fc, "xmlns:x": Sa[0] }).replace(/[\/]>/, ">")];
  return e.forEach(function(t, a) {
    r.push(ne("person", null, { displayName: t, id: "{54EE7950-7262-4200-6969-" + ("000000000000" + a).slice(-12) + "}", userId: t, providerId: "None" }));
  }), r.push("</personList>"), r.join("");
}
var S0 = Yt;
function Po(e) {
  return Pt(e.slice(0, 54));
}
function x0(e) {
  var r = rr(), t = [];
  return J(r, 628), J(r, 630), e.forEach(function(a) {
    a[1].forEach(function(n) {
      t.indexOf(n.a) > -1 || (t.push(n.a.slice(0, 54)), J(r, 632, Po(n.a)), n.T && n.ID && t.indexOf("tc=" + n.ID) == -1 && (t.push("tc=" + n.ID), J(r, 632, Po("tc=" + n.ID))));
    });
  }), J(r, 631), J(r, 633), e.forEach(function(a) {
    a[1].forEach(function(n) {
      var s = -1;
      n.ID && (s = t.indexOf("tc=" + n.ID)), s == -1 && a[1][0].T && a[1][0].ID && (s = t.indexOf("tc=" + a[1][0].ID)), s == -1 && (s = t.indexOf(n.a)), n.iauthor = s;
      var i = { s: ft(a[0]), e: ft(a[0]) };
      J(r, 635, (function(l, o) {
        return o == null && (o = V(36)), o.write_shift(4, l[1].iauthor), Xa(l[0], o), o.write_shift(4, 0), o.write_shift(4, 0), o.write_shift(4, 0), o.write_shift(4, 0), o;
      })([i, n])), n.t && n.t.length > 0 && J(r, 637, p1(n)), J(r, 636), delete n.iauthor;
    });
  }), J(r, 634), J(r, 629), r.end();
}
var A0 = ["xlsb", "xlsm", "xlam", "biff8", "xla"], ba = /* @__PURE__ */ (function() {
  var e = /(^|[^A-Za-z_])R(\[?-?\d+\]|[1-9]\d*|)C(\[?-?\d+\]|[1-9]\d*|)(?![A-Za-z0-9_])/g, r = { r: 0, c: 0 };
  function t(a, n, s, i) {
    var l = !1, o = !1;
    s.length == 0 ? o = !0 : s.charAt(0) == "[" && (o = !0, s = s.slice(1, -1)), i.length == 0 ? l = !0 : i.charAt(0) == "[" && (l = !0, i = i.slice(1, -1));
    var c = s.length > 0 ? 0 | parseInt(s, 10) : 0, f = i.length > 0 ? 0 | parseInt(i, 10) : 0;
    return l ? f += r.c : --f, o ? c += r.r : --c, n + (l ? "" : "$") + De(f) + (o ? "" : "$") + Xe(c);
  }
  return function(a, n) {
    return r = n, a.replace(e, t);
  };
})(), ps = /(^|[^._A-Z0-9])(\$?)([A-Z]{1,2}|[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D])(\$?)(\d{1,7})(?![_.\(A-Za-z0-9])/g;
try {
  ps = /(^|[^._A-Z0-9])([$]?)([A-Z]{1,2}|[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D])([$]?)(10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5})(?![_.\(A-Za-z0-9])/g;
} catch {
}
var Cn = /* @__PURE__ */ (function() {
  return function(e, r) {
    return e.replace(ps, function(t, a, n, s, i, l) {
      var o = Ti(s) - (n ? 0 : r.c), c = wi(l) - (i ? 0 : r.r);
      return a + "R" + (i == "$" ? c + 1 : c == 0 ? "" : "[" + c + "]") + "C" + (n == "$" ? o + 1 : o == 0 ? "" : "[" + o + "]");
    });
  };
})();
function Al(e, r) {
  return e.replace(ps, function(t, a, n, s, i, l) {
    return a + (n == "$" ? n + s : De(Ti(s) + r.c)) + (i == "$" ? i + l : Xe(wi(l) + r.r));
  });
}
function Lo(e, r, t) {
  var a = Ot(r).s, n = ft(t);
  return Al(e, { r: n.r - a.r, c: n.c - a.c });
}
function Mo(e) {
  return e.replace(/_xlfn\./g, "");
}
function Ct(e) {
  e.l += 1;
}
function ta(e, r) {
  var t = e.read_shift(2);
  return [16383 & t, t >> 14 & 1, t >> 15 & 1];
}
function Uo(e, r, t) {
  var a = 2;
  if (t) {
    if (t.biff >= 2 && t.biff <= 5) return Cl(e);
    t.biff == 12 && (a = 4);
  }
  var n = e.read_shift(a), s = e.read_shift(a), i = ta(e), l = ta(e);
  return { s: { r: n, c: i[0], cRel: i[1], rRel: i[2] }, e: { r: s, c: l[0], cRel: l[1], rRel: l[2] } };
}
function Cl(e) {
  var r = ta(e), t = ta(e), a = e.read_shift(1), n = e.read_shift(1);
  return { s: { r: r[0], c: a, cRel: r[1], rRel: r[2] }, e: { r: t[0], c: n, cRel: t[1], rRel: t[2] } };
}
function Bo(e, r, t) {
  if (t && t.biff >= 2 && t.biff <= 5) return (function(s) {
    var i = ta(s), l = s.read_shift(1);
    return { r: i[0], c: l, cRel: i[1], rRel: i[2] };
  })(e);
  var a = e.read_shift(t && t.biff == 12 ? 4 : 2), n = ta(e);
  return { r: a, c: n[0], cRel: n[1], rRel: n[2] };
}
function C0(e) {
  var r = e.read_shift(2), t = e.read_shift(2);
  return { r, c: 255 & t, fQuoted: !!(16384 & t), cRel: t >> 15, rRel: t >> 15 };
}
function Wo(e) {
  var r = 1 & e[e.l + 1];
  return e.l += 4, [r, 1];
}
function zo(e) {
  return [e.read_shift(1), e.read_shift(1)];
}
function I0(e, r) {
  var t = [e.read_shift(1)];
  if (r == 12) switch (t[0]) {
    case 2:
      t[0] = 4;
      break;
    case 4:
      t[0] = 16;
      break;
    case 0:
      t[0] = 1;
      break;
    case 1:
      t[0] = 2;
  }
  switch (t[0]) {
    case 4:
      t[1] = St(e, 1) ? "TRUE" : "FALSE", r != 12 && (e.l += 7);
      break;
    case 37:
    case 16:
      t[1] = Lt[e[e.l]], e.l += r == 12 ? 4 : 8;
      break;
    case 0:
      e.l += 8;
      break;
    case 1:
      t[1] = Jt(e);
      break;
    case 2:
      t[1] = pa(e, 0, { biff: r > 0 && r < 8 ? 2 : r });
      break;
    default:
      throw new Error("Bad SerAr: " + t[0]);
  }
  return t;
}
function R0(e, r, t) {
  for (var a = e.read_shift(t.biff == 12 ? 4 : 2), n = [], s = 0; s != a; ++s) n.push((t.biff == 12 ? da : jn)(e));
  return n;
}
function O0(e, r, t) {
  var a = 0, n = 0;
  t.biff == 12 ? (a = e.read_shift(4), n = e.read_shift(4)) : (n = 1 + e.read_shift(1), a = 1 + e.read_shift(2)), t.biff >= 2 && t.biff < 8 && (--a, --n == 0 && (n = 256));
  for (var s = 0, i = []; s != a && (i[s] = []); ++s) for (var l = 0; l != n; ++l) i[s][l] = I0(e, t.biff);
  return i;
}
function Ka(e, r, t) {
  return e.l += 2, [C0(e)];
}
function Cs(e) {
  return e.l += 6, [];
}
function Ho(e) {
  return e.l += 2, [Et(e), 1 & e.read_shift(2)];
}
var N0 = ["Data", "All", "Headers", "??", "?Data2", "??", "?DataHeaders", "??", "Totals", "??", "??", "??", "?DataTotals", "??", "??", "??", "?Current"], Vo = { 1: { n: "PtgExp", f: function(e, r, t) {
  return e.l++, t && t.biff == 12 ? [e.read_shift(4, "i"), 0] : [e.read_shift(2), e.read_shift(t && t.biff == 2 ? 1 : 2)];
} }, 2: { n: "PtgTbl", f: tr }, 3: { n: "PtgAdd", f: Ct }, 4: { n: "PtgSub", f: Ct }, 5: { n: "PtgMul", f: Ct }, 6: { n: "PtgDiv", f: Ct }, 7: { n: "PtgPower", f: Ct }, 8: { n: "PtgConcat", f: Ct }, 9: { n: "PtgLt", f: Ct }, 10: { n: "PtgLe", f: Ct }, 11: { n: "PtgEq", f: Ct }, 12: { n: "PtgGe", f: Ct }, 13: { n: "PtgGt", f: Ct }, 14: { n: "PtgNe", f: Ct }, 15: { n: "PtgIsect", f: Ct }, 16: { n: "PtgUnion", f: Ct }, 17: { n: "PtgRange", f: Ct }, 18: { n: "PtgUplus", f: Ct }, 19: { n: "PtgUminus", f: Ct }, 20: { n: "PtgPercent", f: Ct }, 21: { n: "PtgParen", f: Ct }, 22: { n: "PtgMissArg", f: Ct }, 23: { n: "PtgStr", f: function(e, r, t) {
  return e.l++, La(e, 0, t);
} }, 26: { n: "PtgSheet", f: function(e, r, t) {
  return e.l += 5, e.l += 2, e.l += t.biff == 2 ? 1 : 4, ["PTGSHEET"];
} }, 27: { n: "PtgEndSheet", f: function(e, r, t) {
  return e.l += t.biff == 2 ? 4 : 5, ["PTGENDSHEET"];
} }, 28: { n: "PtgErr", f: function(e) {
  return e.l++, Lt[e.read_shift(1)];
} }, 29: { n: "PtgBool", f: function(e) {
  return e.l++, e.read_shift(1) !== 0;
} }, 30: { n: "PtgInt", f: function(e) {
  return e.l++, e.read_shift(2);
} }, 31: { n: "PtgNum", f: function(e) {
  return e.l++, Jt(e);
} }, 32: { n: "PtgArray", f: function(e, r, t) {
  var a = (96 & e[e.l++]) >> 5;
  return e.l += t.biff == 2 ? 6 : t.biff == 12 ? 14 : 7, [a];
} }, 33: { n: "PtgFunc", f: function(e, r, t) {
  var a = (96 & e[e.l]) >> 5;
  e.l += 1;
  var n = e.read_shift(t && t.biff <= 3 ? 1 : 2);
  return [j0[n], Xo[n], a];
} }, 34: { n: "PtgFuncVar", f: function(e, r, t) {
  var a = e[e.l++], n = e.read_shift(1), s = t && t.biff <= 3 ? [a == 88 ? -1 : 0, e.read_shift(1)] : (function(i) {
    return [i[i.l + 1] >> 7, 32767 & i.read_shift(2)];
  })(e);
  return [n, (s[0] === 0 ? Xo : X0)[s[1]]];
} }, 35: { n: "PtgName", f: function(e, r, t) {
  var a = e.read_shift(1) >>> 5 & 3, n = !t || t.biff >= 8 ? 4 : 2, s = e.read_shift(n);
  switch (t.biff) {
    case 2:
      e.l += 5;
      break;
    case 3:
    case 4:
      e.l += 8;
      break;
    case 5:
      e.l += 12;
  }
  return [a, 0, s];
} }, 36: { n: "PtgRef", f: function(e, r, t) {
  var a = (96 & e[e.l]) >> 5;
  return e.l += 1, [a, Bo(e, 0, t)];
} }, 37: { n: "PtgArea", f: function(e, r, t) {
  return [(96 & e[e.l++]) >> 5, Uo(e, t.biff >= 2 && t.biff, t)];
} }, 38: { n: "PtgMemArea", f: function(e, r, t) {
  var a = e.read_shift(1) >>> 5 & 3;
  return e.l += t && t.biff == 2 ? 3 : 4, [a, e.read_shift(t && t.biff == 2 ? 1 : 2)];
} }, 39: { n: "PtgMemErr", f: tr }, 40: { n: "PtgMemNoMem", f: tr }, 41: { n: "PtgMemFunc", f: function(e, r, t) {
  return [e.read_shift(1) >>> 5 & 3, e.read_shift(t && t.biff == 2 ? 1 : 2)];
} }, 42: { n: "PtgRefErr", f: function(e, r, t) {
  var a = e.read_shift(1) >>> 5 & 3;
  return e.l += 4, t.biff < 8 && e.l--, t.biff == 12 && (e.l += 2), [a];
} }, 43: { n: "PtgAreaErr", f: function(e, r, t) {
  var a = (96 & e[e.l++]) >> 5;
  return e.l += t && t.biff > 8 ? 12 : t.biff < 8 ? 6 : 8, [a];
} }, 44: { n: "PtgRefN", f: function(e, r, t) {
  var a = (96 & e[e.l]) >> 5;
  e.l += 1;
  var n = (function(s, i, l) {
    var o = l && l.biff ? l.biff : 8;
    if (o >= 2 && o <= 5) return (function(p) {
      var d = p.read_shift(2), g = p.read_shift(1), m = (32768 & d) >> 15, v = (16384 & d) >> 14;
      return d &= 16383, m == 1 && d >= 8192 && (d -= 16384), v == 1 && g >= 128 && (g -= 256), { r: d, c: g, cRel: v, rRel: m };
    })(s);
    var c = s.read_shift(o >= 12 ? 4 : 2), f = s.read_shift(2), u = (16384 & f) >> 14, h = (32768 & f) >> 15;
    if (f &= 16383, h == 1) for (; c > 524287; ) c -= 1048576;
    if (u == 1) for (; f > 8191; ) f -= 16384;
    return { r: c, c: f, cRel: u, rRel: h };
  })(e, 0, t);
  return [a, n];
} }, 45: { n: "PtgAreaN", f: function(e, r, t) {
  var a = (96 & e[e.l++]) >> 5, n = (function(s, i, l) {
    if (l.biff < 8) return Cl(s);
    var o = s.read_shift(l.biff == 12 ? 4 : 2), c = s.read_shift(l.biff == 12 ? 4 : 2), f = ta(s), u = ta(s);
    return { s: { r: o, c: f[0], cRel: f[1], rRel: f[2] }, e: { r: c, c: u[0], cRel: u[1], rRel: u[2] } };
  })(e, 0, t);
  return [a, n];
} }, 46: { n: "PtgMemAreaN", f: function(e) {
  return [e.read_shift(1) >>> 5 & 3, e.read_shift(2)];
} }, 47: { n: "PtgMemNoMemN", f: function(e) {
  return [e.read_shift(1) >>> 5 & 3, e.read_shift(2)];
} }, 57: { n: "PtgNameX", f: function(e, r, t) {
  return t.biff == 5 ? (function(a) {
    var n = a.read_shift(1) >>> 5 & 3, s = a.read_shift(2, "i");
    a.l += 8;
    var i = a.read_shift(2);
    return a.l += 12, [n, s, i];
  })(e) : [e.read_shift(1) >>> 5 & 3, e.read_shift(2), e.read_shift(4)];
} }, 58: { n: "PtgRef3d", f: function(e, r, t) {
  var a = (96 & e[e.l]) >> 5;
  e.l += 1;
  var n = e.read_shift(2);
  return t && t.biff == 5 && (e.l += 12), [a, n, Bo(e, 0, t)];
} }, 59: { n: "PtgArea3d", f: function(e, r, t) {
  var a = (96 & e[e.l++]) >> 5, n = e.read_shift(2, "i");
  if (t) switch (t.biff) {
    case 5:
      e.l += 12;
      break;
    case 12:
  }
  return [a, n, Uo(e, 0, t)];
} }, 60: { n: "PtgRefErr3d", f: function(e, r, t) {
  var a = (96 & e[e.l++]) >> 5, n = e.read_shift(2), s = 4;
  if (t) switch (t.biff) {
    case 5:
      s = 15;
      break;
    case 12:
      s = 6;
  }
  return e.l += s, [a, n];
} }, 61: { n: "PtgAreaErr3d", f: function(e, r, t) {
  var a = (96 & e[e.l++]) >> 5, n = e.read_shift(2), s = 8;
  if (t) switch (t.biff) {
    case 5:
      e.l += 12, s = 6;
      break;
    case 12:
      s = 12;
  }
  return e.l += s, [a, n];
} }, 255: {} }, F0 = { 64: 32, 96: 32, 65: 33, 97: 33, 66: 34, 98: 34, 67: 35, 99: 35, 68: 36, 100: 36, 69: 37, 101: 37, 70: 38, 102: 38, 71: 39, 103: 39, 72: 40, 104: 40, 73: 41, 105: 41, 74: 42, 106: 42, 75: 43, 107: 43, 76: 44, 108: 44, 77: 45, 109: 45, 78: 46, 110: 46, 79: 47, 111: 47, 88: 34, 120: 34, 89: 57, 121: 57, 90: 58, 122: 58, 91: 59, 123: 59, 92: 60, 124: 60, 93: 61, 125: 61 }, D0 = { 1: { n: "PtgElfLel", f: Ho }, 2: { n: "PtgElfRw", f: Ka }, 3: { n: "PtgElfCol", f: Ka }, 6: { n: "PtgElfRwV", f: Ka }, 7: { n: "PtgElfColV", f: Ka }, 10: { n: "PtgElfRadical", f: Ka }, 11: { n: "PtgElfRadicalS", f: Cs }, 13: { n: "PtgElfColS", f: Cs }, 15: { n: "PtgElfColSV", f: Cs }, 16: { n: "PtgElfRadicalLel", f: Ho }, 25: { n: "PtgList", f: function(e) {
  e.l += 2;
  var r = e.read_shift(2), t = e.read_shift(2), a = e.read_shift(4), n = e.read_shift(2), s = e.read_shift(2);
  return { ixti: r, coltype: 3 & t, rt: N0[t >> 2 & 31], idx: a, c: n, C: s };
} }, 29: { n: "PtgSxName", f: function(e) {
  return e.l += 2, [e.read_shift(4)];
} }, 255: {} }, P0 = { 0: { n: "PtgAttrNoop", f: function(e) {
  return e.l += 4, [0, 0];
} }, 1: { n: "PtgAttrSemi", f: function(e, r, t) {
  var a = 255 & e[e.l + 1] ? 1 : 0;
  return e.l += t && t.biff == 2 ? 3 : 4, [a];
} }, 2: { n: "PtgAttrIf", f: function(e, r, t) {
  var a = 255 & e[e.l + 1] ? 1 : 0;
  return e.l += 2, [a, e.read_shift(t && t.biff == 2 ? 1 : 2)];
} }, 4: { n: "PtgAttrChoose", f: function(e, r, t) {
  e.l += 2;
  for (var a = e.read_shift(t && t.biff == 2 ? 1 : 2), n = [], s = 0; s <= a; ++s) n.push(e.read_shift(t && t.biff == 2 ? 1 : 2));
  return n;
} }, 8: { n: "PtgAttrGoto", f: function(e, r, t) {
  var a = 255 & e[e.l + 1] ? 1 : 0;
  return e.l += 2, [a, e.read_shift(t && t.biff == 2 ? 1 : 2)];
} }, 16: { n: "PtgAttrSum", f: function(e, r, t) {
  e.l += t && t.biff == 2 ? 3 : 4;
} }, 32: { n: "PtgAttrBaxcel", f: Wo }, 33: { n: "PtgAttrBaxcel", f: Wo }, 64: { n: "PtgAttrSpace", f: function(e) {
  return e.read_shift(2), zo(e);
} }, 65: { n: "PtgAttrSpaceSemi", f: function(e) {
  return e.read_shift(2), zo(e);
} }, 128: { n: "PtgAttrIfError", f: function(e) {
  var r = 255 & e[e.l + 1] ? 1 : 0;
  return e.l += 2, [r, e.read_shift(2)];
} }, 255: {} };
function In(e, r, t, a) {
  if (a.biff < 8) return tr(e, r);
  for (var n = e.l + r, s = [], i = 0; i !== t.length; ++i) switch (t[i][0]) {
    case "PtgArray":
      t[i][1] = O0(e, 0, a), s.push(t[i][1]);
      break;
    case "PtgMemArea":
      t[i][2] = R0(e, t[i][1], a), s.push(t[i][2]);
      break;
    case "PtgExp":
      a && a.biff == 12 && (t[i][1][1] = e.read_shift(4), s.push(t[i][1]));
      break;
    case "PtgList":
    case "PtgElfRadicalS":
    case "PtgElfColS":
    case "PtgElfColSV":
      throw "Unsupported " + t[i][0];
  }
  return (r = n - e.l) !== 0 && s.push(tr(e, r)), s;
}
function Rn(e, r, t) {
  for (var a, n, s = e.l + r, i = []; s != e.l; ) r = s - e.l, n = e[e.l], a = Vo[n] || Vo[F0[n]], n !== 24 && n !== 25 || (a = (n === 24 ? D0 : P0)[e[e.l + 1]]), a && a.f ? i.push([a.n, a.f(e, r, t)]) : tr(e, r);
  return i;
}
function L0(e) {
  for (var r = [], t = 0; t < e.length; ++t) {
    for (var a = e[t], n = [], s = 0; s < a.length; ++s) {
      var i = a[s];
      i ? i[0] === 2 ? n.push('"' + i[1].replace(/"/g, '""') + '"') : n.push(i[1]) : n.push("");
    }
    r.push(n.join(","));
  }
  return r.join(";");
}
var M0 = { PtgAdd: "+", PtgConcat: "&", PtgDiv: "/", PtgEq: "=", PtgGe: ">=", PtgGt: ">", PtgLe: "<=", PtgLt: "<", PtgMul: "*", PtgNe: "<>", PtgPower: "^", PtgSub: "-" };
function U0(e, r) {
  var t = e.lastIndexOf("!"), a = r.lastIndexOf("!");
  return t == -1 && a == -1 ? e + ":" + r : t > 0 && a > 0 && e.slice(0, t).toLowerCase() == r.slice(0, a).toLowerCase() ? e + ":" + r.slice(a + 1) : (console.error("Cannot hydrate range", e, r), e + ":" + r);
}
function Il(e, r, t) {
  if (!e) return "SH33TJSERR0";
  if (t.biff > 8 && (!e.XTI || !e.XTI[r])) return e.SheetNames[r];
  if (!e.XTI) return "SH33TJSERR6";
  var a = e.XTI[r];
  if (t.biff < 8) return r > 1e4 && (r -= 65536), r < 0 && (r = -r), r == 0 ? "" : e.XTI[r - 1];
  if (!a) return "SH33TJSERR1";
  var n = "";
  if (t.biff > 8) switch (e[a[0]][0]) {
    case 357:
      return n = a[1] == -1 ? "#REF" : e.SheetNames[a[1]], a[1] == a[2] ? n : n + ":" + e.SheetNames[a[2]];
    case 358:
      return t.SID != null ? e.SheetNames[t.SID] : "SH33TJSSAME" + e[a[0]][0];
    default:
      return "SH33TJSSRC" + e[a[0]][0];
  }
  switch (e[a[0]][0][0]) {
    case 1025:
      return n = a[1] == -1 ? "#REF" : e.SheetNames[a[1]] || "SH33TJSERR3", a[1] == a[2] ? n : n + ":" + e.SheetNames[a[2]];
    case 14849:
      return e[a[0]].slice(1).map(function(s) {
        return s.Name;
      }).join(";;");
    default:
      return e[a[0]][0][3] ? (n = a[1] == -1 ? "#REF" : e[a[0]][0][3][a[1]] || "SH33TJSERR4", a[1] == a[2] ? n : n + ":" + e[a[0]][0][3][a[2]]) : "SH33TJSERR2";
  }
}
function $o(e, r, t) {
  var a = Il(e, r, t);
  return a == "#REF" ? a : pn(a, t);
}
function Qt(e, r, t, a, n) {
  var s, i, l, o, c = n && n.biff || 8, f = { s: { c: 0, r: 0 } }, u = [], h = 0, p = 0, d = "";
  if (!e[0] || !e[0][0]) return "";
  for (var g = -1, m = "", v = 0, y = e[0].length; v < y; ++v) {
    var w = e[0][v];
    switch (w[0]) {
      case "PtgUminus":
        u.push("-" + u.pop());
        break;
      case "PtgUplus":
        u.push("+" + u.pop());
        break;
      case "PtgPercent":
        u.push(u.pop() + "%");
        break;
      case "PtgAdd":
      case "PtgConcat":
      case "PtgDiv":
      case "PtgEq":
      case "PtgGe":
      case "PtgGt":
      case "PtgLe":
      case "PtgLt":
      case "PtgMul":
      case "PtgNe":
      case "PtgPower":
      case "PtgSub":
        if (s = u.pop(), i = u.pop(), g >= 0) {
          switch (e[0][g][1][0]) {
            case 0:
              m = Ze(" ", e[0][g][1][1]);
              break;
            case 1:
              m = Ze("\r", e[0][g][1][1]);
              break;
            default:
              if (m = "", n.WTF) throw new Error("Unexpected PtgAttrSpaceType " + e[0][g][1][0]);
          }
          i += m, g = -1;
        }
        u.push(i + M0[w[0]] + s);
        break;
      case "PtgIsect":
        s = u.pop(), i = u.pop(), u.push(i + " " + s);
        break;
      case "PtgUnion":
        s = u.pop(), i = u.pop(), u.push(i + "," + s);
        break;
      case "PtgRange":
        s = u.pop(), i = u.pop(), u.push(U0(i, s));
        break;
      case "PtgAttrChoose":
      case "PtgAttrGoto":
      case "PtgAttrIf":
      case "PtgAttrIfError":
      case "PtgAttrBaxcel":
      case "PtgAttrSemi":
      case "PtgMemArea":
      case "PtgTbl":
      case "PtgMemErr":
      case "PtgMemAreaN":
      case "PtgMemNoMemN":
      case "PtgAttrNoop":
      case "PtgSheet":
      case "PtgEndSheet":
      case "PtgMemFunc":
      case "PtgMemNoMem":
        break;
      case "PtgRef":
        l = tn(w[1][1], f, n), u.push(rn(l, c));
        break;
      case "PtgRefN":
        l = t ? tn(w[1][1], t, n) : w[1][1], u.push(rn(l, c));
        break;
      case "PtgRef3d":
        h = w[1][1], l = tn(w[1][2], f, n), d = $o(a, h, n), u.push(d + "!" + rn(l, c));
        break;
      case "PtgFunc":
      case "PtgFuncVar":
        var E = w[1][0], A = w[1][1];
        E || (E = 0);
        var b = (E &= 127) == 0 ? [] : u.slice(-E);
        u.length -= E, A === "User" && (A = b.shift()), u.push(A + "(" + b.join(",") + ")");
        break;
      case "PtgBool":
        u.push(w[1] ? "TRUE" : "FALSE");
        break;
      case "PtgInt":
      case "PtgErr":
        u.push(w[1]);
        break;
      case "PtgNum":
        u.push(String(w[1]));
        break;
      case "PtgStr":
        u.push('"' + w[1].replace(/"/g, '""') + '"');
        break;
      case "PtgAreaN":
        o = io(w[1][1], t ? { s: t } : f, n), u.push(Ts(o, n));
        break;
      case "PtgArea":
        o = io(w[1][1], f, n), u.push(Ts(o, n));
        break;
      case "PtgArea3d":
        h = w[1][1], o = w[1][2], d = $o(a, h, n), u.push(d + "!" + Ts(o, n));
        break;
      case "PtgAttrSum":
        u.push("SUM(" + u.pop() + ")");
        break;
      case "PtgName":
        p = w[1][2];
        var _ = (a.names || [])[p - 1] || (a[0] || [])[p], k = _ ? _.Name : "SH33TJSNAME" + String(p);
        k && k.slice(0, 6) == "_xlfn." && !n.xlfn && (k = k.slice(6)), u.push(k);
        break;
      case "PtgNameX":
        var T, S = w[1][1];
        if (p = w[1][2], !(n.biff <= 5)) {
          var C = "";
          if (((a[S] || [])[0] || [])[0] == 14849 || (((a[S] || [])[0] || [])[0] == 1025 ? a[S][p] && a[S][p].itab > 0 && (C = a.SheetNames[a[S][p].itab - 1] + "!") : C = a.SheetNames[p - 1] + "!"), a[S] && a[S][p]) C += a[S][p].Name;
          else if (a[0] && a[0][p]) C += a[0][p].Name;
          else {
            var F = (Il(a, S, n) || "").split(";;");
            F[p - 1] ? C = F[p - 1] : C += "SH33TJSERRX";
          }
          u.push(C);
          break;
        }
        S < 0 && (S = -S), a[S] && (T = a[S][p]), T || (T = { Name: "SH33TJSERRY" }), u.push(T.Name);
        break;
      case "PtgParen":
        var I = "(", P = ")";
        if (g >= 0) {
          switch (m = "", e[0][g][1][0]) {
            case 2:
              I = Ze(" ", e[0][g][1][1]) + I;
              break;
            case 3:
              I = Ze("\r", e[0][g][1][1]) + I;
              break;
            case 4:
              P = Ze(" ", e[0][g][1][1]) + P;
              break;
            case 5:
              P = Ze("\r", e[0][g][1][1]) + P;
              break;
            default:
              if (n.WTF) throw new Error("Unexpected PtgAttrSpaceType " + e[0][g][1][0]);
          }
          g = -1;
        }
        u.push(I + u.pop() + P);
        break;
      case "PtgRefErr":
      case "PtgRefErr3d":
      case "PtgAreaErr":
      case "PtgAreaErr3d":
        u.push("#REF!");
        break;
      case "PtgExp":
        l = { c: w[1][1], r: w[1][0] };
        var W = { c: t.c, r: t.r };
        if (a.sharedf[Ge(l)]) {
          var U = a.sharedf[Ge(l)];
          u.push(Qt(U, f, W, a, n));
        } else {
          var G = !1;
          for (s = 0; s != a.arrayf.length; ++s) if (i = a.arrayf[s], !(l.c < i[0].s.c || l.c > i[0].e.c || l.r < i[0].s.r || l.r > i[0].e.r)) {
            u.push(Qt(i[1], f, W, a, n)), G = !0;
            break;
          }
          G || u.push(w[1]);
        }
        break;
      case "PtgArray":
        u.push("{" + L0(w[1]) + "}");
        break;
      case "PtgAttrSpace":
      case "PtgAttrSpaceSemi":
        g = v;
        break;
      case "PtgMissArg":
        u.push("");
        break;
      case "PtgList":
        u.push("Table" + w[1].idx + "[#" + w[1].rt + "]");
        break;
      case "PtgElfCol":
      case "PtgElfColS":
      case "PtgElfColSV":
      case "PtgElfColV":
      case "PtgElfLel":
      case "PtgElfRadical":
      case "PtgElfRadicalLel":
      case "PtgElfRadicalS":
      case "PtgElfRw":
      case "PtgElfRwV":
        throw new Error("Unsupported ELFs");
      default:
        throw new Error("Unrecognized Formula Token: " + String(w));
    }
    if (n.biff != 3 && g >= 0 && ["PtgAttrSpace", "PtgAttrSpaceSemi", "PtgAttrGoto"].indexOf(e[0][v][0]) == -1) {
      var B = !0;
      switch ((w = e[0][g])[1][0]) {
        case 4:
          B = !1;
        case 0:
          m = Ze(" ", w[1][1]);
          break;
        case 5:
          B = !1;
        case 1:
          m = Ze("\r", w[1][1]);
          break;
        default:
          if (m = "", n.WTF) throw new Error("Unexpected PtgAttrSpaceType " + w[1][0]);
      }
      u.push((B ? m : "") + u.pop() + (B ? "" : m)), g = -1;
    }
  }
  if (u.length > 1 && n.WTF) throw new Error("bad formula stack");
  return u[0] == "TRUE" || u[0] != "FALSE" && u[0];
}
function B0(e, r, t) {
  var a, n = e.l + r, s = t.biff == 2 ? 1 : 2, i = e.read_shift(s);
  if (i == 65535) return [[], tr(e, r - 2)];
  var l = Rn(e, i, t);
  return r !== i + s && (a = In(e, r - i - s, l, t)), e.l = n, [l, a];
}
function W0(e, r, t) {
  var a, n = e.l + r, s = e.read_shift(2), i = Rn(e, s, t);
  return s == 65535 ? [[], tr(e, r - 2)] : (r !== s + 2 && (a = In(e, n - s - 2, i, t)), [i, a]);
}
function Is(e, r, t) {
  var a = e.l + r, n = kr(e, 6, t), s = (function(o) {
    var c;
    if (Vr(o, o.l + 6) !== 65535) return [Jt(o), "n"];
    switch (o[o.l]) {
      case 0:
        return o.l += 8, ["String", "s"];
      case 1:
        return c = o[o.l + 2] === 1, o.l += 8, [c, "b"];
      case 2:
        return c = o[o.l + 2], o.l += 8, [c, "e"];
      case 3:
        return o.l += 8, ["", "s"];
    }
    return [];
  })(e), i = e.read_shift(1);
  t.biff != 2 && (e.read_shift(1), t.biff >= 5 && e.read_shift(4));
  var l = (function(o, c, f) {
    var u, h = o.l + c, p = f.biff == 2 ? 1 : 2, d = o.read_shift(p);
    if (d == 65535) return [[], tr(o, c - 2)];
    var g = Rn(o, d, f);
    return c !== d + p && (u = In(o, c - d - p, g, f)), o.l = h, [g, u];
  })(e, a - e.l, t);
  return { cell: n, val: s[0], formula: l, shared: i >> 3 & 1, tt: s[1] };
}
function z0(e, r, t, a, n) {
  var s = ua(r, t, n), i = (function(f) {
    if (f == null) {
      var u = V(8);
      return u.write_shift(1, 3), u.write_shift(1, 0), u.write_shift(2, 0), u.write_shift(2, 0), u.write_shift(2, 65535), u;
    }
    return Ba(typeof f == "number" ? f : 0);
  })(e.v), l = V(6);
  l.write_shift(2, 33), l.write_shift(4, 0);
  for (var o = V(e.bf.length), c = 0; c < e.bf.length; ++c) o[c] = e.bf[c];
  return xt([s, i, l, o]);
}
function ms(e, r, t) {
  var a = e.read_shift(4), n = Rn(e, a, t), s = e.read_shift(4);
  return [n, s > 0 ? In(e, s, n, t) : null];
}
var H0 = ms, zn = ms, V0 = ms, $0 = ms;
function Go(e) {
  if ((0 | e) == e && e < Math.pow(2, 16) && e >= 0) {
    var r = V(11);
    return r.write_shift(4, 3), r.write_shift(1, 30), r.write_shift(2, e), r.write_shift(4, 0), r;
  }
  var t = V(17);
  return t.write_shift(4, 11), t.write_shift(1, 31), t.write_shift(8, e), t.write_shift(4, 0), t;
}
var G0 = function(e, r) {
  if (typeof e == "number") return Go(e);
  if (typeof e == "boolean") return (function(s) {
    var i = V(10);
    return i.write_shift(4, 2), i.write_shift(1, 29), i.write_shift(1, s ? 1 : 0), i.write_shift(4, 0), i;
  })(e);
  if (/^#(DIV\/0!|GETTING_DATA|N\/A|NAME\?|NULL!|NUM!|REF!|VALUE!)$/.test(e)) return (function(s) {
    var i = V(10);
    return i.write_shift(4, 2), i.write_shift(1, 28), i.write_shift(1, s), i.write_shift(4, 0), i;
  })(+zt[e]);
  if (e.match(/^\$?(?:[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D]|[A-Z]{1,2})\$?(?:10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5})$/)) return a = ft(t = e), (n = V(15)).write_shift(4, 7), n.write_shift(1, 36), n.write_shift(4, a.r), n.write_shift(2, a.c | (t.charAt(0) == "$" ? 0 : 1) << 14 | (t.match(/\$\d/) ? 0 : 1) << 15), n.write_shift(4, 0), n;
  var t, a, n;
  if (e.match(/^\$?(?:[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D]|[A-Z]{1,2})\$?(?:10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5}):\$?(?:[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D]|[A-Z]{1,2})\$?(?:10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5})$/)) return (function(s) {
    var i = s.split(":"), l = i[0], o = V(23);
    o.write_shift(4, 15);
    var c = ft(l = i[0]);
    return o.write_shift(1, 36), o.write_shift(4, c.r), o.write_shift(2, c.c | (l.charAt(0) == "$" ? 0 : 1) << 14 | (l.match(/\$\d/) ? 0 : 1) << 15), o.write_shift(4, 0), c = ft(l = i[1]), o.write_shift(1, 36), o.write_shift(4, c.r), o.write_shift(2, c.c | (l.charAt(0) == "$" ? 0 : 1) << 14 | (l.match(/\$\d/) ? 0 : 1) << 15), o.write_shift(4, 0), o.write_shift(1, 17), o.write_shift(4, 0), o;
  })(e);
  if (e.match(/^#REF!\$?(?:[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D]|[A-Z]{1,2})\$?(?:10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5}):\$?(?:[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D]|[A-Z]{1,2})\$?(?:10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5})$/)) return (function(s, i) {
    var l = s.lastIndexOf("!"), o = s.slice(0, l);
    s = s.slice(l + 1), o.charAt(0) == "'" && (o = o.slice(1, -1).replace(/''/g, "'"));
    var c = Ot(s), f = V(23);
    return f.write_shift(4, 15), f.write_shift(1, 59), f.write_shift(2, 2 + i.SheetNames.map(function(u) {
      return u.toLowerCase();
    }).indexOf(o.toLowerCase())), f.write_shift(4, c.s.r), f.write_shift(4, c.e.r), f.write_shift(2, c.s.c), f.write_shift(2, c.e.c), f.write_shift(4, 0), f;
  })(e, r);
  if (e.match(/^(?:'[^\\\/?*\[\]:]*'|[^'][^\\\/?*\[\]:'`~!@#$%^()\-=+{}|;,<.>]*)!\$?(?:[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D]|[A-Z]{1,2})\$?(?:10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5})$/)) return (function(s, i) {
    var l = s.lastIndexOf("!"), o = s.slice(0, l), c = ft(s = s.slice(l + 1));
    o.charAt(0) == "'" && (o = o.slice(1, -1).replace(/''/g, "'"));
    var f = V(17);
    return f.write_shift(4, 9), f.write_shift(1, 58), f.write_shift(2, 2 + i.SheetNames.map(function(u) {
      return u.toLowerCase();
    }).indexOf(o.toLowerCase())), f.write_shift(4, c.r), f.write_shift(2, c.c | (s.charAt(0) == "$" ? 0 : 1) << 14 | (s.match(/\$\d/) ? 0 : 1) << 15), f.write_shift(4, 0), f;
  })(e, r);
  if (e.match(/^(?:'[^\\\/?*\[\]:]*'|[^'][^\\\/?*\[\]:'`~!@#$%^()\-=+{}|;,<.>]*)!\$?(?:[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D]|[A-Z]{1,2})\$?(?:10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5}):\$?(?:[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D]|[A-Z]{1,2})\$?(?:10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5})$/)) return (function(s, i) {
    var l = s.lastIndexOf("!"), o = s.slice(0, l);
    s = s.slice(l + 1), o.charAt(0) == "'" && (o = o.slice(1, -1).replace(/''/g, "'"));
    var c = s.split(":"), f = V(27);
    f.write_shift(4, 19);
    var u = c[0], h = ft(u);
    return f.write_shift(1, 58), f.write_shift(2, 2 + i.SheetNames.map(function(p) {
      return p.toLowerCase();
    }).indexOf(o.toLowerCase())), f.write_shift(4, h.r), f.write_shift(2, h.c | (u.charAt(0) == "$" ? 0 : 1) << 14 | (u.match(/\$\d/) ? 0 : 1) << 15), h = ft(u = c[1]), f.write_shift(1, 58), f.write_shift(2, 2 + i.SheetNames.map(function(p) {
      return p.toLowerCase();
    }).indexOf(o.toLowerCase())), f.write_shift(4, h.r), f.write_shift(2, h.c | (u.charAt(0) == "$" ? 0 : 1) << 14 | (u.match(/\$\d/) ? 0 : 1) << 15), f.write_shift(1, 17), f.write_shift(4, 0), f;
  })(e, r);
  if (/^(?:'[^\\\/?*\[\]:]*'|[^'][^\\\/?*\[\]:'`~!@#$%^()\-=+{}|;,<.>]*)!#REF!$/.test(e)) return (function(s, i) {
    var l = s.lastIndexOf("!"), o = s.slice(0, l);
    s = s.slice(l + 1), o.charAt(0) == "'" && (o = o.slice(1, -1).replace(/''/g, "'"));
    var c = V(17);
    return c.write_shift(4, 9), c.write_shift(1, 60), c.write_shift(2, 2 + i.SheetNames.map(function(f) {
      return f.toLowerCase();
    }).indexOf(o.toLowerCase())), c.write_shift(4, 0), c.write_shift(2, 0), c.write_shift(4, 0), c;
  })(e, r);
  if (/^".*"$/.test(e)) return (function(s) {
    var i = V(7);
    i.write_shift(4, 3 + 2 * s.length), i.write_shift(1, 23), i.write_shift(2, s.length);
    var l = V(2 * s.length);
    l.write_shift(2 * s.length, s, "utf16le");
    var o = V(4);
    return o.write_shift(4, 0), xt([i, l, o]);
  })(e);
  if (/^[+-]\d+$/.test(e)) return Go(parseInt(e, 10));
  throw "Formula |" + e + "| not supported for XLSB";
}, X0 = { 0: "BEEP", 1: "OPEN", 2: "OPEN.LINKS", 3: "CLOSE.ALL", 4: "SAVE", 5: "SAVE.AS", 6: "FILE.DELETE", 7: "PAGE.SETUP", 8: "PRINT", 9: "PRINTER.SETUP", 10: "QUIT", 11: "NEW.WINDOW", 12: "ARRANGE.ALL", 13: "WINDOW.SIZE", 14: "WINDOW.MOVE", 15: "FULL", 16: "CLOSE", 17: "RUN", 22: "SET.PRINT.AREA", 23: "SET.PRINT.TITLES", 24: "SET.PAGE.BREAK", 25: "REMOVE.PAGE.BREAK", 26: "FONT", 27: "DISPLAY", 28: "PROTECT.DOCUMENT", 29: "PRECISION", 30: "A1.R1C1", 31: "CALCULATE.NOW", 32: "CALCULATION", 34: "DATA.FIND", 35: "EXTRACT", 36: "DATA.DELETE", 37: "SET.DATABASE", 38: "SET.CRITERIA", 39: "SORT", 40: "DATA.SERIES", 41: "TABLE", 42: "FORMAT.NUMBER", 43: "ALIGNMENT", 44: "STYLE", 45: "BORDER", 46: "CELL.PROTECTION", 47: "COLUMN.WIDTH", 48: "UNDO", 49: "CUT", 50: "COPY", 51: "PASTE", 52: "CLEAR", 53: "PASTE.SPECIAL", 54: "EDIT.DELETE", 55: "INSERT", 56: "FILL.RIGHT", 57: "FILL.DOWN", 61: "DEFINE.NAME", 62: "CREATE.NAMES", 63: "FORMULA.GOTO", 64: "FORMULA.FIND", 65: "SELECT.LAST.CELL", 66: "SHOW.ACTIVE.CELL", 67: "GALLERY.AREA", 68: "GALLERY.BAR", 69: "GALLERY.COLUMN", 70: "GALLERY.LINE", 71: "GALLERY.PIE", 72: "GALLERY.SCATTER", 73: "COMBINATION", 74: "PREFERRED", 75: "ADD.OVERLAY", 76: "GRIDLINES", 77: "SET.PREFERRED", 78: "AXES", 79: "LEGEND", 80: "ATTACH.TEXT", 81: "ADD.ARROW", 82: "SELECT.CHART", 83: "SELECT.PLOT.AREA", 84: "PATTERNS", 85: "MAIN.CHART", 86: "OVERLAY", 87: "SCALE", 88: "FORMAT.LEGEND", 89: "FORMAT.TEXT", 90: "EDIT.REPEAT", 91: "PARSE", 92: "JUSTIFY", 93: "HIDE", 94: "UNHIDE", 95: "WORKSPACE", 96: "FORMULA", 97: "FORMULA.FILL", 98: "FORMULA.ARRAY", 99: "DATA.FIND.NEXT", 100: "DATA.FIND.PREV", 101: "FORMULA.FIND.NEXT", 102: "FORMULA.FIND.PREV", 103: "ACTIVATE", 104: "ACTIVATE.NEXT", 105: "ACTIVATE.PREV", 106: "UNLOCKED.NEXT", 107: "UNLOCKED.PREV", 108: "COPY.PICTURE", 109: "SELECT", 110: "DELETE.NAME", 111: "DELETE.FORMAT", 112: "VLINE", 113: "HLINE", 114: "VPAGE", 115: "HPAGE", 116: "VSCROLL", 117: "HSCROLL", 118: "ALERT", 119: "NEW", 120: "CANCEL.COPY", 121: "SHOW.CLIPBOARD", 122: "MESSAGE", 124: "PASTE.LINK", 125: "APP.ACTIVATE", 126: "DELETE.ARROW", 127: "ROW.HEIGHT", 128: "FORMAT.MOVE", 129: "FORMAT.SIZE", 130: "FORMULA.REPLACE", 131: "SEND.KEYS", 132: "SELECT.SPECIAL", 133: "APPLY.NAMES", 134: "REPLACE.FONT", 135: "FREEZE.PANES", 136: "SHOW.INFO", 137: "SPLIT", 138: "ON.WINDOW", 139: "ON.DATA", 140: "DISABLE.INPUT", 142: "OUTLINE", 143: "LIST.NAMES", 144: "FILE.CLOSE", 145: "SAVE.WORKBOOK", 146: "DATA.FORM", 147: "COPY.CHART", 148: "ON.TIME", 149: "WAIT", 150: "FORMAT.FONT", 151: "FILL.UP", 152: "FILL.LEFT", 153: "DELETE.OVERLAY", 155: "SHORT.MENUS", 159: "SET.UPDATE.STATUS", 161: "COLOR.PALETTE", 162: "DELETE.STYLE", 163: "WINDOW.RESTORE", 164: "WINDOW.MAXIMIZE", 166: "CHANGE.LINK", 167: "CALCULATE.DOCUMENT", 168: "ON.KEY", 169: "APP.RESTORE", 170: "APP.MOVE", 171: "APP.SIZE", 172: "APP.MINIMIZE", 173: "APP.MAXIMIZE", 174: "BRING.TO.FRONT", 175: "SEND.TO.BACK", 185: "MAIN.CHART.TYPE", 186: "OVERLAY.CHART.TYPE", 187: "SELECT.END", 188: "OPEN.MAIL", 189: "SEND.MAIL", 190: "STANDARD.FONT", 191: "CONSOLIDATE", 192: "SORT.SPECIAL", 193: "GALLERY.3D.AREA", 194: "GALLERY.3D.COLUMN", 195: "GALLERY.3D.LINE", 196: "GALLERY.3D.PIE", 197: "VIEW.3D", 198: "GOAL.SEEK", 199: "WORKGROUP", 200: "FILL.GROUP", 201: "UPDATE.LINK", 202: "PROMOTE", 203: "DEMOTE", 204: "SHOW.DETAIL", 206: "UNGROUP", 207: "OBJECT.PROPERTIES", 208: "SAVE.NEW.OBJECT", 209: "SHARE", 210: "SHARE.NAME", 211: "DUPLICATE", 212: "APPLY.STYLE", 213: "ASSIGN.TO.OBJECT", 214: "OBJECT.PROTECTION", 215: "HIDE.OBJECT", 216: "SET.EXTRACT", 217: "CREATE.PUBLISHER", 218: "SUBSCRIBE.TO", 219: "ATTRIBUTES", 220: "SHOW.TOOLBAR", 222: "PRINT.PREVIEW", 223: "EDIT.COLOR", 224: "SHOW.LEVELS", 225: "FORMAT.MAIN", 226: "FORMAT.OVERLAY", 227: "ON.RECALC", 228: "EDIT.SERIES", 229: "DEFINE.STYLE", 240: "LINE.PRINT", 243: "ENTER.DATA", 249: "GALLERY.RADAR", 250: "MERGE.STYLES", 251: "EDITION.OPTIONS", 252: "PASTE.PICTURE", 253: "PASTE.PICTURE.LINK", 254: "SPELLING", 256: "ZOOM", 259: "INSERT.OBJECT", 260: "WINDOW.MINIMIZE", 265: "SOUND.NOTE", 266: "SOUND.PLAY", 267: "FORMAT.SHAPE", 268: "EXTEND.POLYGON", 269: "FORMAT.AUTO", 272: "GALLERY.3D.BAR", 273: "GALLERY.3D.SURFACE", 274: "FILL.AUTO", 276: "CUSTOMIZE.TOOLBAR", 277: "ADD.TOOL", 278: "EDIT.OBJECT", 279: "ON.DOUBLECLICK", 280: "ON.ENTRY", 281: "WORKBOOK.ADD", 282: "WORKBOOK.MOVE", 283: "WORKBOOK.COPY", 284: "WORKBOOK.OPTIONS", 285: "SAVE.WORKSPACE", 288: "CHART.WIZARD", 289: "DELETE.TOOL", 290: "MOVE.TOOL", 291: "WORKBOOK.SELECT", 292: "WORKBOOK.ACTIVATE", 293: "ASSIGN.TO.TOOL", 295: "COPY.TOOL", 296: "RESET.TOOL", 297: "CONSTRAIN.NUMERIC", 298: "PASTE.TOOL", 302: "WORKBOOK.NEW", 305: "SCENARIO.CELLS", 306: "SCENARIO.DELETE", 307: "SCENARIO.ADD", 308: "SCENARIO.EDIT", 309: "SCENARIO.SHOW", 310: "SCENARIO.SHOW.NEXT", 311: "SCENARIO.SUMMARY", 312: "PIVOT.TABLE.WIZARD", 313: "PIVOT.FIELD.PROPERTIES", 314: "PIVOT.FIELD", 315: "PIVOT.ITEM", 316: "PIVOT.ADD.FIELDS", 318: "OPTIONS.CALCULATION", 319: "OPTIONS.EDIT", 320: "OPTIONS.VIEW", 321: "ADDIN.MANAGER", 322: "MENU.EDITOR", 323: "ATTACH.TOOLBARS", 324: "VBAActivate", 325: "OPTIONS.CHART", 328: "VBA.INSERT.FILE", 330: "VBA.PROCEDURE.DEFINITION", 336: "ROUTING.SLIP", 338: "ROUTE.DOCUMENT", 339: "MAIL.LOGON", 342: "INSERT.PICTURE", 343: "EDIT.TOOL", 344: "GALLERY.DOUGHNUT", 350: "CHART.TREND", 352: "PIVOT.ITEM.PROPERTIES", 354: "WORKBOOK.INSERT", 355: "OPTIONS.TRANSITION", 356: "OPTIONS.GENERAL", 370: "FILTER.ADVANCED", 373: "MAIL.ADD.MAILER", 374: "MAIL.DELETE.MAILER", 375: "MAIL.REPLY", 376: "MAIL.REPLY.ALL", 377: "MAIL.FORWARD", 378: "MAIL.NEXT.LETTER", 379: "DATA.LABEL", 380: "INSERT.TITLE", 381: "FONT.PROPERTIES", 382: "MACRO.OPTIONS", 383: "WORKBOOK.HIDE", 384: "WORKBOOK.UNHIDE", 385: "WORKBOOK.DELETE", 386: "WORKBOOK.NAME", 388: "GALLERY.CUSTOM", 390: "ADD.CHART.AUTOFORMAT", 391: "DELETE.CHART.AUTOFORMAT", 392: "CHART.ADD.DATA", 393: "AUTO.OUTLINE", 394: "TAB.ORDER", 395: "SHOW.DIALOG", 396: "SELECT.ALL", 397: "UNGROUP.SHEETS", 398: "SUBTOTAL.CREATE", 399: "SUBTOTAL.REMOVE", 400: "RENAME.OBJECT", 412: "WORKBOOK.SCROLL", 413: "WORKBOOK.NEXT", 414: "WORKBOOK.PREV", 415: "WORKBOOK.TAB.SPLIT", 416: "FULL.SCREEN", 417: "WORKBOOK.PROTECT", 420: "SCROLLBAR.PROPERTIES", 421: "PIVOT.SHOW.PAGES", 422: "TEXT.TO.COLUMNS", 423: "FORMAT.CHARTTYPE", 424: "LINK.FORMAT", 425: "TRACER.DISPLAY", 430: "TRACER.NAVIGATE", 431: "TRACER.CLEAR", 432: "TRACER.ERROR", 433: "PIVOT.FIELD.GROUP", 434: "PIVOT.FIELD.UNGROUP", 435: "CHECKBOX.PROPERTIES", 436: "LABEL.PROPERTIES", 437: "LISTBOX.PROPERTIES", 438: "EDITBOX.PROPERTIES", 439: "PIVOT.REFRESH", 440: "LINK.COMBO", 441: "OPEN.TEXT", 442: "HIDE.DIALOG", 443: "SET.DIALOG.FOCUS", 444: "ENABLE.OBJECT", 445: "PUSHBUTTON.PROPERTIES", 446: "SET.DIALOG.DEFAULT", 447: "FILTER", 448: "FILTER.SHOW.ALL", 449: "CLEAR.OUTLINE", 450: "FUNCTION.WIZARD", 451: "ADD.LIST.ITEM", 452: "SET.LIST.ITEM", 453: "REMOVE.LIST.ITEM", 454: "SELECT.LIST.ITEM", 455: "SET.CONTROL.VALUE", 456: "SAVE.COPY.AS", 458: "OPTIONS.LISTS.ADD", 459: "OPTIONS.LISTS.DELETE", 460: "SERIES.AXES", 461: "SERIES.X", 462: "SERIES.Y", 463: "ERRORBAR.X", 464: "ERRORBAR.Y", 465: "FORMAT.CHART", 466: "SERIES.ORDER", 467: "MAIL.LOGOFF", 468: "CLEAR.ROUTING.SLIP", 469: "APP.ACTIVATE.MICROSOFT", 470: "MAIL.EDIT.MAILER", 471: "ON.SHEET", 472: "STANDARD.WIDTH", 473: "SCENARIO.MERGE", 474: "SUMMARY.INFO", 475: "FIND.FILE", 476: "ACTIVE.CELL.FONT", 477: "ENABLE.TIPWIZARD", 478: "VBA.MAKE.ADDIN", 480: "INSERTDATATABLE", 481: "WORKGROUP.OPTIONS", 482: "MAIL.SEND.MAILER", 485: "AUTOCORRECT", 489: "POST.DOCUMENT", 491: "PICKLIST", 493: "VIEW.SHOW", 494: "VIEW.DEFINE", 495: "VIEW.DELETE", 509: "SHEET.BACKGROUND", 510: "INSERT.MAP.OBJECT", 511: "OPTIONS.MENONO", 517: "MSOCHECKS", 518: "NORMAL", 519: "LAYOUT", 520: "RM.PRINT.AREA", 521: "CLEAR.PRINT.AREA", 522: "ADD.PRINT.AREA", 523: "MOVE.BRK", 545: "HIDECURR.NOTE", 546: "HIDEALL.NOTES", 547: "DELETE.NOTE", 548: "TRAVERSE.NOTES", 549: "ACTIVATE.NOTES", 620: "PROTECT.REVISIONS", 621: "UNPROTECT.REVISIONS", 647: "OPTIONS.ME", 653: "WEB.PUBLISH", 667: "NEWWEBQUERY", 673: "PIVOT.TABLE.CHART", 753: "OPTIONS.SAVE", 755: "OPTIONS.SPELL", 808: "HIDEALL.INKANNOTS" }, Xo = { 0: "COUNT", 1: "IF", 2: "ISNA", 3: "ISERROR", 4: "SUM", 5: "AVERAGE", 6: "MIN", 7: "MAX", 8: "ROW", 9: "COLUMN", 10: "NA", 11: "NPV", 12: "STDEV", 13: "DOLLAR", 14: "FIXED", 15: "SIN", 16: "COS", 17: "TAN", 18: "ATAN", 19: "PI", 20: "SQRT", 21: "EXP", 22: "LN", 23: "LOG10", 24: "ABS", 25: "INT", 26: "SIGN", 27: "ROUND", 28: "LOOKUP", 29: "INDEX", 30: "REPT", 31: "MID", 32: "LEN", 33: "VALUE", 34: "TRUE", 35: "FALSE", 36: "AND", 37: "OR", 38: "NOT", 39: "MOD", 40: "DCOUNT", 41: "DSUM", 42: "DAVERAGE", 43: "DMIN", 44: "DMAX", 45: "DSTDEV", 46: "VAR", 47: "DVAR", 48: "TEXT", 49: "LINEST", 50: "TREND", 51: "LOGEST", 52: "GROWTH", 53: "GOTO", 54: "HALT", 55: "RETURN", 56: "PV", 57: "FV", 58: "NPER", 59: "PMT", 60: "RATE", 61: "MIRR", 62: "IRR", 63: "RAND", 64: "MATCH", 65: "DATE", 66: "TIME", 67: "DAY", 68: "MONTH", 69: "YEAR", 70: "WEEKDAY", 71: "HOUR", 72: "MINUTE", 73: "SECOND", 74: "NOW", 75: "AREAS", 76: "ROWS", 77: "COLUMNS", 78: "OFFSET", 79: "ABSREF", 80: "RELREF", 81: "ARGUMENT", 82: "SEARCH", 83: "TRANSPOSE", 84: "ERROR", 85: "STEP", 86: "TYPE", 87: "ECHO", 88: "SET.NAME", 89: "CALLER", 90: "DEREF", 91: "WINDOWS", 92: "SERIES", 93: "DOCUMENTS", 94: "ACTIVE.CELL", 95: "SELECTION", 96: "RESULT", 97: "ATAN2", 98: "ASIN", 99: "ACOS", 100: "CHOOSE", 101: "HLOOKUP", 102: "VLOOKUP", 103: "LINKS", 104: "INPUT", 105: "ISREF", 106: "GET.FORMULA", 107: "GET.NAME", 108: "SET.VALUE", 109: "LOG", 110: "EXEC", 111: "CHAR", 112: "LOWER", 113: "UPPER", 114: "PROPER", 115: "LEFT", 116: "RIGHT", 117: "EXACT", 118: "TRIM", 119: "REPLACE", 120: "SUBSTITUTE", 121: "CODE", 122: "NAMES", 123: "DIRECTORY", 124: "FIND", 125: "CELL", 126: "ISERR", 127: "ISTEXT", 128: "ISNUMBER", 129: "ISBLANK", 130: "T", 131: "N", 132: "FOPEN", 133: "FCLOSE", 134: "FSIZE", 135: "FREADLN", 136: "FREAD", 137: "FWRITELN", 138: "FWRITE", 139: "FPOS", 140: "DATEVALUE", 141: "TIMEVALUE", 142: "SLN", 143: "SYD", 144: "DDB", 145: "GET.DEF", 146: "REFTEXT", 147: "TEXTREF", 148: "INDIRECT", 149: "REGISTER", 150: "CALL", 151: "ADD.BAR", 152: "ADD.MENU", 153: "ADD.COMMAND", 154: "ENABLE.COMMAND", 155: "CHECK.COMMAND", 156: "RENAME.COMMAND", 157: "SHOW.BAR", 158: "DELETE.MENU", 159: "DELETE.COMMAND", 160: "GET.CHART.ITEM", 161: "DIALOG.BOX", 162: "CLEAN", 163: "MDETERM", 164: "MINVERSE", 165: "MMULT", 166: "FILES", 167: "IPMT", 168: "PPMT", 169: "COUNTA", 170: "CANCEL.KEY", 171: "FOR", 172: "WHILE", 173: "BREAK", 174: "NEXT", 175: "INITIATE", 176: "REQUEST", 177: "POKE", 178: "EXECUTE", 179: "TERMINATE", 180: "RESTART", 181: "HELP", 182: "GET.BAR", 183: "PRODUCT", 184: "FACT", 185: "GET.CELL", 186: "GET.WORKSPACE", 187: "GET.WINDOW", 188: "GET.DOCUMENT", 189: "DPRODUCT", 190: "ISNONTEXT", 191: "GET.NOTE", 192: "NOTE", 193: "STDEVP", 194: "VARP", 195: "DSTDEVP", 196: "DVARP", 197: "TRUNC", 198: "ISLOGICAL", 199: "DCOUNTA", 200: "DELETE.BAR", 201: "UNREGISTER", 204: "USDOLLAR", 205: "FINDB", 206: "SEARCHB", 207: "REPLACEB", 208: "LEFTB", 209: "RIGHTB", 210: "MIDB", 211: "LENB", 212: "ROUNDUP", 213: "ROUNDDOWN", 214: "ASC", 215: "DBCS", 216: "RANK", 219: "ADDRESS", 220: "DAYS360", 221: "TODAY", 222: "VDB", 223: "ELSE", 224: "ELSE.IF", 225: "END.IF", 226: "FOR.CELL", 227: "MEDIAN", 228: "SUMPRODUCT", 229: "SINH", 230: "COSH", 231: "TANH", 232: "ASINH", 233: "ACOSH", 234: "ATANH", 235: "DGET", 236: "CREATE.OBJECT", 237: "VOLATILE", 238: "LAST.ERROR", 239: "CUSTOM.UNDO", 240: "CUSTOM.REPEAT", 241: "FORMULA.CONVERT", 242: "GET.LINK.INFO", 243: "TEXT.BOX", 244: "INFO", 245: "GROUP", 246: "GET.OBJECT", 247: "DB", 248: "PAUSE", 251: "RESUME", 252: "FREQUENCY", 253: "ADD.TOOLBAR", 254: "DELETE.TOOLBAR", 255: "User", 256: "RESET.TOOLBAR", 257: "EVALUATE", 258: "GET.TOOLBAR", 259: "GET.TOOL", 260: "SPELLING.CHECK", 261: "ERROR.TYPE", 262: "APP.TITLE", 263: "WINDOW.TITLE", 264: "SAVE.TOOLBAR", 265: "ENABLE.TOOL", 266: "PRESS.TOOL", 267: "REGISTER.ID", 268: "GET.WORKBOOK", 269: "AVEDEV", 270: "BETADIST", 271: "GAMMALN", 272: "BETAINV", 273: "BINOMDIST", 274: "CHIDIST", 275: "CHIINV", 276: "COMBIN", 277: "CONFIDENCE", 278: "CRITBINOM", 279: "EVEN", 280: "EXPONDIST", 281: "FDIST", 282: "FINV", 283: "FISHER", 284: "FISHERINV", 285: "FLOOR", 286: "GAMMADIST", 287: "GAMMAINV", 288: "CEILING", 289: "HYPGEOMDIST", 290: "LOGNORMDIST", 291: "LOGINV", 292: "NEGBINOMDIST", 293: "NORMDIST", 294: "NORMSDIST", 295: "NORMINV", 296: "NORMSINV", 297: "STANDARDIZE", 298: "ODD", 299: "PERMUT", 300: "POISSON", 301: "TDIST", 302: "WEIBULL", 303: "SUMXMY2", 304: "SUMX2MY2", 305: "SUMX2PY2", 306: "CHITEST", 307: "CORREL", 308: "COVAR", 309: "FORECAST", 310: "FTEST", 311: "INTERCEPT", 312: "PEARSON", 313: "RSQ", 314: "STEYX", 315: "SLOPE", 316: "TTEST", 317: "PROB", 318: "DEVSQ", 319: "GEOMEAN", 320: "HARMEAN", 321: "SUMSQ", 322: "KURT", 323: "SKEW", 324: "ZTEST", 325: "LARGE", 326: "SMALL", 327: "QUARTILE", 328: "PERCENTILE", 329: "PERCENTRANK", 330: "MODE", 331: "TRIMMEAN", 332: "TINV", 334: "MOVIE.COMMAND", 335: "GET.MOVIE", 336: "CONCATENATE", 337: "POWER", 338: "PIVOT.ADD.DATA", 339: "GET.PIVOT.TABLE", 340: "GET.PIVOT.FIELD", 341: "GET.PIVOT.ITEM", 342: "RADIANS", 343: "DEGREES", 344: "SUBTOTAL", 345: "SUMIF", 346: "COUNTIF", 347: "COUNTBLANK", 348: "SCENARIO.GET", 349: "OPTIONS.LISTS.GET", 350: "ISPMT", 351: "DATEDIF", 352: "DATESTRING", 353: "NUMBERSTRING", 354: "ROMAN", 355: "OPEN.DIALOG", 356: "SAVE.DIALOG", 357: "VIEW.GET", 358: "GETPIVOTDATA", 359: "HYPERLINK", 360: "PHONETIC", 361: "AVERAGEA", 362: "MAXA", 363: "MINA", 364: "STDEVPA", 365: "VARPA", 366: "STDEVA", 367: "VARA", 368: "BAHTTEXT", 369: "THAIDAYOFWEEK", 370: "THAIDIGIT", 371: "THAIMONTHOFYEAR", 372: "THAINUMSOUND", 373: "THAINUMSTRING", 374: "THAISTRINGLENGTH", 375: "ISTHAIDIGIT", 376: "ROUNDBAHTDOWN", 377: "ROUNDBAHTUP", 378: "THAIYEAR", 379: "RTD", 380: "CUBEVALUE", 381: "CUBEMEMBER", 382: "CUBEMEMBERPROPERTY", 383: "CUBERANKEDMEMBER", 384: "HEX2BIN", 385: "HEX2DEC", 386: "HEX2OCT", 387: "DEC2BIN", 388: "DEC2HEX", 389: "DEC2OCT", 390: "OCT2BIN", 391: "OCT2HEX", 392: "OCT2DEC", 393: "BIN2DEC", 394: "BIN2OCT", 395: "BIN2HEX", 396: "IMSUB", 397: "IMDIV", 398: "IMPOWER", 399: "IMABS", 400: "IMSQRT", 401: "IMLN", 402: "IMLOG2", 403: "IMLOG10", 404: "IMSIN", 405: "IMCOS", 406: "IMEXP", 407: "IMARGUMENT", 408: "IMCONJUGATE", 409: "IMAGINARY", 410: "IMREAL", 411: "COMPLEX", 412: "IMSUM", 413: "IMPRODUCT", 414: "SERIESSUM", 415: "FACTDOUBLE", 416: "SQRTPI", 417: "QUOTIENT", 418: "DELTA", 419: "GESTEP", 420: "ISEVEN", 421: "ISODD", 422: "MROUND", 423: "ERF", 424: "ERFC", 425: "BESSELJ", 426: "BESSELK", 427: "BESSELY", 428: "BESSELI", 429: "XIRR", 430: "XNPV", 431: "PRICEMAT", 432: "YIELDMAT", 433: "INTRATE", 434: "RECEIVED", 435: "DISC", 436: "PRICEDISC", 437: "YIELDDISC", 438: "TBILLEQ", 439: "TBILLPRICE", 440: "TBILLYIELD", 441: "PRICE", 442: "YIELD", 443: "DOLLARDE", 444: "DOLLARFR", 445: "NOMINAL", 446: "EFFECT", 447: "CUMPRINC", 448: "CUMIPMT", 449: "EDATE", 450: "EOMONTH", 451: "YEARFRAC", 452: "COUPDAYBS", 453: "COUPDAYS", 454: "COUPDAYSNC", 455: "COUPNCD", 456: "COUPNUM", 457: "COUPPCD", 458: "DURATION", 459: "MDURATION", 460: "ODDLPRICE", 461: "ODDLYIELD", 462: "ODDFPRICE", 463: "ODDFYIELD", 464: "RANDBETWEEN", 465: "WEEKNUM", 466: "AMORDEGRC", 467: "AMORLINC", 468: "CONVERT", 724: "SHEETJS", 469: "ACCRINT", 470: "ACCRINTM", 471: "WORKDAY", 472: "NETWORKDAYS", 473: "GCD", 474: "MULTINOMIAL", 475: "LCM", 476: "FVSCHEDULE", 477: "CUBEKPIMEMBER", 478: "CUBESET", 479: "CUBESETCOUNT", 480: "IFERROR", 481: "COUNTIFS", 482: "SUMIFS", 483: "AVERAGEIF", 484: "AVERAGEIFS" }, j0 = { 2: 1, 3: 1, 10: 0, 15: 1, 16: 1, 17: 1, 18: 1, 19: 0, 20: 1, 21: 1, 22: 1, 23: 1, 24: 1, 25: 1, 26: 1, 27: 2, 30: 2, 31: 3, 32: 1, 33: 1, 34: 0, 35: 0, 38: 1, 39: 2, 40: 3, 41: 3, 42: 3, 43: 3, 44: 3, 45: 3, 47: 3, 48: 2, 53: 1, 61: 3, 63: 0, 65: 3, 66: 3, 67: 1, 68: 1, 69: 1, 70: 1, 71: 1, 72: 1, 73: 1, 74: 0, 75: 1, 76: 1, 77: 1, 79: 2, 80: 2, 83: 1, 85: 0, 86: 1, 89: 0, 90: 1, 94: 0, 95: 0, 97: 2, 98: 1, 99: 1, 101: 3, 102: 3, 105: 1, 106: 1, 108: 2, 111: 1, 112: 1, 113: 1, 114: 1, 117: 2, 118: 1, 119: 4, 121: 1, 126: 1, 127: 1, 128: 1, 129: 1, 130: 1, 131: 1, 133: 1, 134: 1, 135: 1, 136: 2, 137: 2, 138: 2, 140: 1, 141: 1, 142: 3, 143: 4, 144: 4, 161: 1, 162: 1, 163: 1, 164: 1, 165: 2, 172: 1, 175: 2, 176: 2, 177: 3, 178: 2, 179: 1, 184: 1, 186: 1, 189: 3, 190: 1, 195: 3, 196: 3, 197: 1, 198: 1, 199: 3, 201: 1, 207: 4, 210: 3, 211: 1, 212: 2, 213: 2, 214: 1, 215: 1, 225: 0, 229: 1, 230: 1, 231: 1, 232: 1, 233: 1, 234: 1, 235: 3, 244: 1, 247: 4, 252: 2, 257: 1, 261: 1, 271: 1, 273: 4, 274: 2, 275: 2, 276: 2, 277: 3, 278: 3, 279: 1, 280: 3, 281: 3, 282: 3, 283: 1, 284: 1, 285: 2, 286: 4, 287: 3, 288: 2, 289: 4, 290: 3, 291: 3, 292: 3, 293: 4, 294: 1, 295: 3, 296: 1, 297: 3, 298: 1, 299: 2, 300: 3, 301: 3, 302: 4, 303: 2, 304: 2, 305: 2, 306: 2, 307: 2, 308: 2, 309: 3, 310: 2, 311: 2, 312: 2, 313: 2, 314: 2, 315: 2, 316: 4, 325: 2, 326: 2, 327: 2, 328: 2, 331: 2, 332: 2, 337: 2, 342: 1, 343: 1, 346: 2, 347: 1, 350: 4, 351: 3, 352: 1, 353: 2, 360: 1, 368: 1, 369: 1, 370: 1, 371: 1, 372: 1, 373: 1, 374: 1, 375: 1, 376: 1, 377: 1, 378: 1, 382: 3, 385: 1, 392: 1, 393: 1, 396: 2, 397: 2, 398: 2, 399: 1, 400: 1, 401: 1, 402: 1, 403: 1, 404: 1, 405: 1, 406: 1, 407: 1, 408: 1, 409: 1, 410: 1, 414: 4, 415: 1, 416: 1, 417: 2, 420: 1, 421: 1, 422: 2, 424: 1, 425: 2, 426: 2, 427: 2, 428: 2, 430: 3, 438: 3, 439: 3, 440: 3, 443: 2, 444: 2, 445: 2, 446: 2, 447: 6, 448: 6, 449: 2, 450: 2, 464: 2, 468: 3, 476: 2, 479: 1, 480: 2, 65535: 0 };
function jo(e) {
  return e.slice(0, 3) == "of:" && (e = e.slice(3)), e.charCodeAt(0) == 61 && (e = e.slice(1)).charCodeAt(0) == 61 && (e = e.slice(1)), (e = (e = (e = (e = (e = e.replace(/COM\.MICROSOFT\./g, "")).replace(/\[((?:\.[A-Z]+[0-9]+)(?::\.[A-Z]+[0-9]+)?)\]/g, function(r, t) {
    return t.replace(/\./g, "");
  })).replace(/\$'([^']|'')+'/g, function(r) {
    return r.slice(1);
  })).replace(/\$([^\]\. #$]+)/g, function(r, t) {
    return t.match(/^([A-Z]{1,2}|[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D])?(10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5})?$/) ? r : t;
  })).replace(/\[.(#[A-Z]*[?!])\]/g, "$1")).replace(/[;~]/g, ",").replace(/\|/g, ";");
}
function K0(e) {
  return ("of:=" + e.replace(ps, "$1[.$2$3$4$5]").replace(/\]:\[/g, ":")).replace(/;/g, "|").replace(/,/g, ";");
}
function Rs(e) {
  var r = (e = (e = e.replace(/\$'([^']|'')+'/g, function(t) {
    return t.slice(1);
  })).replace(/\$([^\]\. #$]+)/g, function(t, a) {
    return a.match(/^([A-Z]{1,2}|[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D])?(10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5})?$/) ? t : a;
  })).split(":");
  return [r[0].split(".")[0], r[0].split(".")[1] + (r.length > 1 ? ":" + (r[1].split(".")[1] || r[1].split(".")[0]) : "")];
}
function Rl(e) {
  return e.replace(/!/, ".").replace(/:/, ":.");
}
var sn = {}, Ma = {}, on = typeof Map < "u";
function Ii(e, r, t) {
  var a = 0, n = e.length;
  if (t) {
    if (on ? t.has(r) : Object.prototype.hasOwnProperty.call(t, r)) {
      for (var s = on ? t.get(r) : t[r]; a < s.length; ++a) if (e[s[a]].t === r) return e.Count++, s[a];
    }
  } else for (; a < n; ++a) if (e[a].t === r) return e.Count++, a;
  return e[n] = { t: r }, e.Count++, e.Unique++, t && (on ? (t.has(r) || t.set(r, []), t.get(r).push(n)) : (Object.prototype.hasOwnProperty.call(t, r) || (t[r] = []), t[r].push(n))), n;
}
function On(e, r) {
  var t = { min: e + 1, max: e + 1 }, a = -1;
  return r.MDW && (Zt = r.MDW), r.width != null ? t.customWidth = 1 : r.wpx != null ? a = bn(r.wpx) : r.wch != null && (a = r.wch), a > -1 ? (t.width = ss(a), t.customWidth = 1) : r.width != null && (t.width = r.width), r.hidden && (t.hidden = !0), r.level != null && (t.outlineLevel = t.level = r.level), t;
}
function wa(e, r) {
  if (e) {
    var t = [0.7, 0.7, 0.75, 0.75, 0.3, 0.3];
    r == "xlml" && (t = [1, 1, 1, 1, 0.5, 0.5]), e.left == null && (e.left = t[0]), e.right == null && (e.right = t[1]), e.top == null && (e.top = t[2]), e.bottom == null && (e.bottom = t[3]), e.header == null && (e.header = t[4]), e.footer == null && (e.footer = t[5]);
  }
}
function Mr(e, r, t) {
  var a = t.revssf[r.z != null ? r.z : "General"], n = 60, s = e.length;
  if (a == null && t.ssf) {
    for (; n < 392; ++n) if (t.ssf[n] == null) {
      Zr(r.z, n), t.ssf[n] = r.z, t.revssf[r.z] = a = n;
      break;
    }
  }
  for (n = 0; n != s; ++n) if (e[n].numFmtId === a) return n;
  return e[s] = { numFmtId: a, fontId: 0, fillId: 0, borderId: 0, xfId: 0, applyNumberFormat: 1 }, s;
}
function Ol(e, r, t, a, n, s, i) {
  try {
    a.cellNF && (e.z = be[r]);
  } catch (o) {
    if (a.WTF) throw o;
  }
  if (e.t !== "z" || a.cellStyles) {
    if (e.t === "d" && typeof e.v == "string" && (e.v = wt(e.v)), (!a || a.cellText !== !1) && e.t !== "z") try {
      if (be[r] == null && Zr(xf[r] || "General", r), e.t === "e") e.w = e.w || Lt[e.v];
      else if (r === 0) if (e.t === "n") (0 | e.v) === e.v ? e.w = e.v.toString(10) : e.w = hn(e.v);
      else if (e.t === "d") {
        var l = yt(e.v, !!i);
        e.w = (0 | l) === l ? l.toString(10) : hn(l);
      } else {
        if (e.v === void 0) return "";
        e.w = ma(e.v, Ma);
      }
      else e.t === "d" ? e.w = lr(r, yt(e.v, !!i), Ma) : e.w = lr(r, e.v, Ma);
    } catch (o) {
      if (a.WTF) throw o;
    }
    if (a.cellStyles && t != null) try {
      e.s = s.Fills[t], e.s.fgColor && e.s.fgColor.theme && !e.s.fgColor.rgb && (e.s.fgColor.rgb = ns(n.themeElements.clrScheme[e.s.fgColor.theme].rgb, e.s.fgColor.tint || 0), a.WTF && (e.s.fgColor.raw_rgb = n.themeElements.clrScheme[e.s.fgColor.theme].rgb)), e.s.bgColor && e.s.bgColor.theme && (e.s.bgColor.rgb = ns(n.themeElements.clrScheme[e.s.bgColor.theme].rgb, e.s.bgColor.tint || 0), a.WTF && (e.s.bgColor.raw_rgb = n.themeElements.clrScheme[e.s.bgColor.theme].rgb));
    } catch (o) {
      if (a.WTF && s.Fills) throw o;
    }
  }
}
function Y0(e, r, t) {
  if (e && e["!ref"]) {
    var a = Je(e["!ref"]);
    if (a.e.c < a.s.c || a.e.r < a.s.r) throw new Error("Bad range (" + t + "): " + e["!ref"]);
  }
}
var J0 = /<(?:\w+:)?mergeCell ref=["'][A-Z0-9:]+['"]\s*[\/]?>/g, q0 = /<(?:\w+:)?hyperlink [^<>]*>/gm, Q0 = /"(\w*:\w*)"/, Z0 = /<(?:\w+:)?col\b[^<>]*[\/]?>/g, eh = /<(?:\w+:)?autoFilter[^>]*/g, th = /<(?:\w+:)?pageMargins[^<>]*\/>/g, Nl = /<(?:\w+:)?sheetPr\b[^<>]*?\/>/;
function rh(e, r, t, a, n, s, i) {
  if (!e) return e;
  a || (a = { "!id": {} });
  var l = {};
  r.dense && (l["!data"] = []);
  var o = { s: { r: 2e6, c: 2e6 }, e: { r: 0, c: 0 } }, c = "", f = "", u = Wt(e, "sheetData");
  u ? (c = e.slice(0, u.index), f = e.slice(u.index + u[0].length)) : c = f = e;
  var h = c.match(Nl);
  h ? Js(h[0], l, n, t) : (h = Wt(c, "sheetPr")) && (function(C, F, I, P, W) {
    Js(C.slice(0, C.indexOf(">")), I, P, W);
  })(h[0], h[1], l, n, t);
  var p = (c.match(/<(?:\w*:)?dimension/) || { index: -1 }).index;
  if (p > 0) {
    var d = c.slice(p, p + 50).match(Q0);
    !d || r && r.nodim || (function(C, F) {
      var I = Je(F);
      I.s.r <= I.e.r && I.s.c <= I.e.c && I.s.r >= 0 && I.s.c >= 0 && (C["!ref"] = We(I));
    })(l, d[1]);
  }
  var g = Wt(c, "sheetViews");
  g && g[1] && (function(C, F) {
    F.Views || (F.Views = [{}]), (C.match(sh) || []).forEach(function(I, P) {
      var W = pe(I);
      F.Views[P] || (F.Views[P] = {}), +W.zoomScale && (F.Views[P].zoom = +W.zoomScale), W.rightToLeft && ot(W.rightToLeft) && (F.Views[P].RTL = !0);
    });
  })(g[1], n);
  var m = [];
  if (r.cellStyles) {
    var v = c.match(Z0);
    v && (function(C, F) {
      for (var I = !1, P = 0; P != F.length; ++P) {
        var W = pe(F[P], !0);
        W.hidden && (W.hidden = ot(W.hidden));
        var U = parseInt(W.min, 10) - 1, G = parseInt(W.max, 10) - 1;
        for (W.outlineLevel && (W.level = +W.outlineLevel || 0), delete W.min, delete W.max, W.width = +W.width, !I && W.width && (I = !0, Ai(W.width)), jr(W); U <= G; ) C[U++] = st(W);
      }
    })(m, v);
  }
  u && oh(u[1], l, r, o, s, i, n);
  var y = f.match(eh);
  y && (l["!autofilter"] = (function(C) {
    var F = { ref: (C.match(/ref="([^"]*)"/) || [])[1] };
    return F;
  })(y[0]));
  var w = [], E = f.match(J0);
  if (E) for (p = 0; p != E.length; ++p) w[p] = Je(E[p].slice(E[p].indexOf("=") + 2));
  var A = f.match(q0);
  A && (function(C, F, I) {
    for (var P = C["!data"] != null, W = 0; W != F.length; ++W) {
      var U = pe(ht(F[W]), !0);
      if (!U.ref) return;
      var G = ((I || {})["!id"] || [])[U.id];
      G ? (U.Target = G.Target, U.location && (U.Target += "#" + et(U.location))) : (U.Target = "#" + et(U.location), G = { Target: U.Target, TargetMode: "Internal" }), U.Rel = G, U.tooltip && (U.Tooltip = U.tooltip, delete U.tooltip);
      for (var B = Je(U.ref), z = B.s.r; z <= B.e.r; ++z) for (var K = B.s.c; K <= B.e.c; ++K) {
        var ee = De(K) + Xe(z);
        P ? (C["!data"][z] || (C["!data"][z] = []), C["!data"][z][K] || (C["!data"][z][K] = { t: "z", v: void 0 }), C["!data"][z][K].l = U) : (C[ee] || (C[ee] = { t: "z", v: void 0 }), C[ee].l = U);
      }
    }
  })(l, A, a);
  var b, _, k, T = f.match(th);
  if (T && (l["!margins"] = (b = pe(T[0]), _ = {}, ["left", "right", "top", "bottom", "header", "footer"].forEach(function(C) {
    b[C] && (_[C] = parseFloat(b[C]));
  }), _)), (k = f.match(/legacyDrawing r:id="(.*?)"/)) && (l["!legrel"] = k[1]), r && r.nodim && (o.s.c = o.s.r = 0), !l["!ref"] && o.e.c >= o.s.c && o.e.r >= o.s.r && (l["!ref"] = We(o)), r.sheetRows > 0 && l["!ref"]) {
    var S = Je(l["!ref"]);
    r.sheetRows <= +S.e.r && (S.e.r = r.sheetRows - 1, S.e.r > o.e.r && (S.e.r = o.e.r), S.e.r < S.s.r && (S.s.r = S.e.r), S.e.c > o.e.c && (S.e.c = o.e.c), S.e.c < S.s.c && (S.s.c = S.e.c), l["!fullref"] = l["!ref"], l["!ref"] = We(S));
  }
  return m.length > 0 && (l["!cols"] = m), w.length > 0 && (l["!merges"] = w), a["!id"][l["!legrel"]] && (l["!legdrawel"] = a["!id"][l["!legrel"]]), l;
}
function Js(e, r, t, a) {
  var n = pe(e);
  t.Sheets[a] || (t.Sheets[a] = {}), n.codeName && (t.Sheets[a].CodeName = et(ht(n.codeName)));
}
var ah = ["objects", "scenarios", "selectLockedCells", "selectUnlockedCells"], nh = ["formatColumns", "formatRows", "formatCells", "insertColumns", "insertRows", "insertHyperlinks", "deleteColumns", "deleteRows", "sort", "autoFilter", "pivotTables"], sh = /<(?:\w:)?sheetView(?:[^<>a-z][^<>]*)?\/?>/g;
function ih(e, r, t, a, n, s, i) {
  if (e.c && t["!comments"].push([r, e.c]), (e.v === void 0 || e.t === "z" && !(a || {}).sheetStubs) && typeof e.f != "string" && e.z === void 0) return "";
  var l = "", o = e.t, c = e.v;
  if (e.t !== "z") switch (e.t) {
    case "b":
      l = e.v ? "1" : "0";
      break;
    case "n":
      isNaN(e.v) ? (e.t = "e", l = Lt[e.v = 36]) : isFinite(e.v) ? l = "" + e.v : (e.t = "e", l = Lt[e.v = 7]);
      break;
    case "e":
      l = Lt[e.v];
      break;
    case "d":
      if (a && a.cellDates) {
        var f = wt(e.v, i);
        l = f.toISOString(), f.getUTCFullYear() < 1900 && (l = l.slice(l.indexOf("T") + 1).replace("Z", ""));
      } else (e = st(e)).t = "n", l = "" + (e.v = yt(wt(e.v, i), i));
      e.z === void 0 && (e.z = be[14]);
      break;
    default:
      l = e.v;
  }
  var u = e.t == "z" || e.v == null ? "" : $t("v", Be(l)), h = { r }, p = Mr(a.cellXfs, e, a);
  switch (p !== 0 && (h.s = p), e.t) {
    case "n":
    case "z":
      break;
    case "d":
      h.t = "d";
      break;
    case "b":
      h.t = "b";
      break;
    case "e":
      h.t = "e";
      break;
    default:
      if (e.v == null) {
        delete e.t;
        break;
      }
      if (e.v.length > 32767) throw new Error("Text length must not exceed 32767 characters");
      if (a && a.bookSST) {
        u = $t("v", "" + Ii(a.Strings, e.v, a.revStrings)), h.t = "s";
        break;
      }
      h.t = "str";
  }
  if (e.t != o && (e.t = o, e.v = c), typeof e.f == "string" && e.f) {
    var d = e.F && e.F.slice(0, r.length) == r ? { t: "array", ref: e.F } : null;
    u = ne("f", Be(e.f), d) + (e.v != null ? u : "");
  }
  return e.l && (e.l.display = Be(l), t["!links"].push([r, e.l])), e.D && (h.cm = 1), ne("c", u, h);
}
var oh = /* @__PURE__ */ (function() {
  var e = /<(?:\w+:)?c[ \/>]/, r = /<\/(?:\w+:)?row>/, t = /r=["']([^"']*)["']/, a = /ref=["']([^"']*)["']/;
  return function(n, s, i, l, o, c, f) {
    for (var u, h, p, d, g, m = 0, v = "", y = [], w = [], E = 0, A = 0, b = 0, _ = "", k = 0, T = 0, S = 0, C = 0, F = Array.isArray(c.CellXf), I = [], P = [], W = s["!data"] != null, U = [], G = {}, B = !1, z = !!i.sheetStubs, K = !!((f || {}).WBProps || {}).date1904, ee = n.split(r), se = 0, H = ee.length; se != H; ++se) {
      var Y = (v = ee[se].trim()).length;
      if (Y !== 0) {
        var he = 0;
        e: for (m = 0; m < Y; ++m) switch (v[m]) {
          case ">":
            if (v[m - 1] != "/") {
              ++m;
              break e;
            }
            if (i && i.cellStyles) {
              if (k = (h = pe(v.slice(he, m), !0)).r != null ? parseInt(h.r, 10) : k + 1, T = -1, i.sheetRows && i.sheetRows < k) continue;
              G = {}, B = !1, h.ht && (B = !0, G.hpt = parseFloat(h.ht), G.hpx = Ha(G.hpt)), h.hidden && ot(h.hidden) && (B = !0, G.hidden = !0), h.outlineLevel != null && (B = !0, G.level = +h.outlineLevel), B && (U[k - 1] = G);
            }
            break;
          case "<":
            he = m;
        }
        if (he >= m) break;
        if (k = (h = pe(v.slice(he, m), !0)).r != null ? parseInt(h.r, 10) : k + 1, T = -1, !(i.sheetRows && i.sheetRows < k)) {
          i.nodim || (l.s.r > k - 1 && (l.s.r = k - 1), l.e.r < k - 1 && (l.e.r = k - 1)), i && i.cellStyles && (G = {}, B = !1, h.ht && (B = !0, G.hpt = parseFloat(h.ht), G.hpx = Ha(G.hpt)), h.hidden && ot(h.hidden) && (B = !0, G.hidden = !0), h.outlineLevel != null && (B = !0, G.level = +h.outlineLevel), B && (U[k - 1] = G)), y = v.slice(m).split(e);
          for (var te = 0; te != y.length && y[te].trim().charAt(0) == "<"; ++te) ;
          for (y = y.slice(te), m = 0; m != y.length; ++m) if ((v = y[m].trim()).length !== 0) {
            if (w = v.match(t), E = m, A = 0, b = 0, v = "<c " + (v.slice(0, 1) == "<" ? ">" : "") + v, w != null && w.length === 2) {
              for (E = 0, _ = w[1], A = 0; A != _.length && !((b = _.charCodeAt(A) - 64) < 1 || b > 26); ++A) E = 26 * E + b;
              T = --E;
            } else ++T;
            for (A = 0; A != v.length && v.charCodeAt(A) !== 62; ++A) ;
            if (++A, (h = pe(v.slice(0, A), !0)).r || (h.r = Ge({ r: k - 1, c: T })), _ = v.slice(A), u = { t: "" }, (w = Wt(_, "v")) != null && w[1] !== "" && (u.v = et(w[1])), i.cellFormula) {
              if ((w = Wt(_, "f")) != null) {
                if (w[1] == "") w[0].indexOf('t="shared"') > -1 && P[(d = pe(w[0])).si] && (u.f = Lo(P[d.si][1], P[d.si][2], h.r));
                else if (u.f = et(ht(w[1]), !0), i.xlfn || (u.f = Mo(u.f)), w[0].indexOf('t="array"') > -1) u.F = (_.match(a) || [])[1], u.F.indexOf(":") > -1 && I.push([Je(u.F), u.F]);
                else if (w[0].indexOf('t="shared"') > -1) {
                  d = pe(w[0]);
                  var Q = et(ht(w[1]));
                  i.xlfn || (Q = Mo(Q)), P[parseInt(d.si, 10)] = [d, Q, h.r];
                }
              } else (w = _.match(/<f[^<>]*\/>/)) && P[(d = pe(w[0])).si] && (u.f = Lo(P[d.si][1], P[d.si][2], h.r));
              var ke = ft(h.r);
              for (A = 0; A < I.length; ++A) ke.r >= I[A][0].s.r && ke.r <= I[A][0].e.r && ke.c >= I[A][0].s.c && ke.c <= I[A][0].e.c && (u.F = I[A][1]);
            }
            if (h.t == null && u.v === void 0) if (u.f || u.F) u.v = 0, u.t = "n";
            else {
              if (!z) continue;
              u.t = "z";
            }
            else u.t = h.t || "n";
            switch (l.s.c > T && (l.s.c = T), l.e.c < T && (l.e.c = T), u.t) {
              case "n":
                if (u.v == "" || u.v == null) {
                  if (!z) continue;
                  u.t = "z";
                } else u.v = parseFloat(u.v);
                break;
              case "s":
                if (u.v === void 0) {
                  if (!z) continue;
                  u.t = "z";
                } else p = sn[parseInt(u.v, 10)], u.v = p.t, u.r = p.r, i.cellHTML && (u.h = p.h);
                break;
              case "str":
                u.t = "s", u.v = u.v != null ? et(ht(u.v), !0) : "", i.cellHTML && (u.h = Za(u.v));
                break;
              case "inlineStr":
                w = Wt(_, "is"), u.t = "s", w != null && (p = Si(w[1])) ? (u.v = p.t, i.cellHTML && (u.h = p.h)) : u.v = "";
                break;
              case "b":
                u.v = ot(u.v);
                break;
              case "d":
                i.cellDates ? u.v = wt(u.v, K) : (u.v = yt(wt(u.v, K), K), u.t = "n");
                break;
              case "e":
                i && i.cellText === !1 || (u.w = u.v), u.v = zt[u.v];
            }
            if (S = C = 0, g = null, F && h.s !== void 0 && (g = c.CellXf[h.s]) != null && (g.numFmtId != null && (S = g.numFmtId), i.cellStyles && g.fillId != null && (C = g.fillId)), Ol(u, S, C, i, o, c, K), i.cellDates && F && u.t == "n" && ur(be[S]) && (u.v = Xr(u.v + (K ? 1462 : 0)), u.t = typeof u.v == "number" ? "n" : "d"), h.cm && i.xlmeta) {
              var ce = (i.xlmeta.Cell || [])[+h.cm - 1];
              ce && ce.type == "XLDAPR" && (u.D = !0);
            }
            var fe;
            i.nodim && (fe = ft(h.r), l.s.r > fe.r && (l.s.r = fe.r), l.e.r < fe.r && (l.e.r = fe.r)), W ? (fe = ft(h.r), s["!data"][fe.r] || (s["!data"][fe.r] = []), s["!data"][fe.r][fe.c] = u) : s[h.r] = u;
          }
        }
      }
    }
    U.length > 0 && (s["!rows"] = U);
  };
})();
function ch(e, r, t, a) {
  var n, s = [kt, ne("worksheet", null, { xmlns: Sa[0], "xmlns:r": Dc })], i = t.SheetNames[e], l = "", o = t.Sheets[i];
  o == null && (o = {});
  var c = o["!ref"] || "A1", f = Je(c);
  if (f.e.c > 16383 || f.e.r > 1048575) {
    if (r.WTF) throw new Error("Range " + c + " exceeds format limit A1:XFD1048576");
    f.e.c = Math.min(f.e.c, 16383), f.e.r = Math.min(f.e.c, 1048575), c = We(f);
  }
  a || (a = {}), o["!comments"] = [];
  var u = [];
  (function(m, v, y, w, E) {
    var A = !1, b = {}, _ = null;
    if (w.bookType !== "xlsx" && v.vbaraw) {
      var k = v.SheetNames[y];
      try {
        v.Workbook && (k = v.Workbook.Sheets[y].CodeName || k);
      } catch {
      }
      A = !0, b.codeName = Dr(Be(k));
    }
    if (m && m["!outline"]) {
      var T = { summaryBelow: 1, summaryRight: 1 };
      m["!outline"].above && (T.summaryBelow = 0), m["!outline"].left && (T.summaryRight = 0), _ = (_ || "") + ne("outlinePr", null, T);
    }
    (A || _) && (E[E.length] = ne("sheetPr", _, b));
  })(o, t, e, r, s), s[s.length] = ne("dimension", null, { ref: c }), s[s.length] = (function(m, v, y, w) {
    var E = { workbookViewId: "0" };
    return (((w || {}).Workbook || {}).Views || [])[0] && (E.rightToLeft = w.Workbook.Views[0].RTL ? "1" : "0"), ne("sheetViews", ne("sheetView", null, E), {});
  })(0, 0, 0, t), r.sheetFormat && (s[s.length] = ne("sheetFormatPr", null, { defaultRowHeight: r.sheetFormat.defaultRowHeight || "16", baseColWidth: r.sheetFormat.baseColWidth || "10", outlineLevelRow: r.sheetFormat.outlineLevelRow || "7" })), o["!cols"] != null && o["!cols"].length > 0 && (s[s.length] = (function(m, v) {
    for (var y, w = ["<cols>"], E = 0; E != v.length; ++E) (y = v[E]) && (w[w.length] = ne("col", null, On(E, y)));
    return w[w.length] = "</cols>", w.join("");
  })(0, o["!cols"])), s[n = s.length] = "<sheetData/>", o["!links"] = [], o["!ref"] != null && (l = (function(m, v, y, w) {
    var E, A, b = [], _ = [], k = Je(m["!ref"]), T = "", S = "", C = [], F = 0, I = 0, P = m["!rows"], W = m["!data"] != null, U = W ? m["!data"] : [], G = { r: S }, B = -1, z = (((w || {}).Workbook || {}).WBProps || {}).date1904;
    for (I = k.s.c; I <= k.e.c; ++I) C[I] = De(I);
    for (F = k.s.r; F <= k.e.r; ++F) {
      _ = [], S = Xe(F);
      var K = W ? U[F] : [];
      for (I = k.s.c; I <= k.e.c; ++I) {
        E = C[I] + S;
        var ee = W ? K[I] : m[E];
        ee !== void 0 && (T = ih(ee, E, m, v, 0, 0, z)) != null && _.push(T);
      }
      (_.length > 0 || P && P[F]) && (G = { r: S }, P && P[F] && ((A = P[F]).hidden && (G.hidden = 1), B = -1, A.hpx ? B = wn(A.hpx) : A.hpt && (B = A.hpt), B > -1 && (G.ht = B, G.customHeight = 1), A.level && (G.outlineLevel = A.level)), b[b.length] = ne("row", _.join(""), G));
    }
    if (P) for (; F < P.length; ++F) P && P[F] && (G = { r: F + 1 }, (A = P[F]).hidden && (G.hidden = 1), B = -1, A.hpx ? B = wn(A.hpx) : A.hpt && (B = A.hpt), B > -1 && (G.ht = B, G.customHeight = 1), A.level && (G.outlineLevel = A.level), b[b.length] = ne("row", "", G));
    return b.join("");
  })(o, r, 0, t), l.length > 0 && (s[s.length] = l)), s.length > n + 1 && (s[s.length] = "</sheetData>", s[n] = s[n].replace("/>", ">")), o["!protect"] && (s[s.length] = (function(m) {
    var v = { sheet: 1 };
    return ah.forEach(function(y) {
      m[y] != null && m[y] && (v[y] = "1");
    }), nh.forEach(function(y) {
      m[y] == null || m[y] || (v[y] = "0");
    }), m.password && (v.password = xi(m.password).toString(16).toUpperCase()), ne("sheetProtection", null, v);
  })(o["!protect"])), o["!autofilter"] != null && (s[s.length] = (function(m, v, y, w) {
    var E = typeof m.ref == "string" ? m.ref : We(m.ref);
    y.Workbook || (y.Workbook = { Sheets: [] }), y.Workbook.Names || (y.Workbook.Names = []);
    var A = y.Workbook.Names, b = Ot(E);
    b.s.r == b.e.r && (b.e.r = Ot(v["!ref"]).e.r, E = We(b));
    for (var _ = 0; _ < A.length; ++_) {
      var k = A[_];
      if (k.Name == "_xlnm._FilterDatabase" && k.Sheet == w) {
        k.Ref = pn(y.SheetNames[w]) + "!" + Ua(E);
        break;
      }
    }
    return _ == A.length && A.push({ Name: "_xlnm._FilterDatabase", Sheet: w, Ref: "'" + y.SheetNames[w] + "'!" + E }), ne("autoFilter", null, { ref: E });
  })(o["!autofilter"], o, t, e)), o["!merges"] != null && o["!merges"].length > 0 && (s[s.length] = (function(m) {
    if (m.length === 0) return "";
    for (var v = '<mergeCells count="' + m.length + '">', y = 0; y != m.length; ++y) v += '<mergeCell ref="' + We(m[y]) + '"/>';
    return v + "</mergeCells>";
  })(o["!merges"]));
  var h, p, d = -1, g = -1;
  return o["!links"].length > 0 && (s[s.length] = "<hyperlinks>", o["!links"].forEach(function(m) {
    m[1].Target && (h = { ref: m[0] }, m[1].Target.charAt(0) != "#" && (g = it(a, -1, Be(m[1].Target).replace(/#[\s\S]*$/, ""), $e.HLINK), h["r:id"] = "rId" + g), (d = m[1].Target.indexOf("#")) > -1 && (h.location = Be(m[1].Target.slice(d + 1))), m[1].Tooltip && (h.tooltip = Be(m[1].Tooltip)), h.display = m[1].display, s[s.length] = ne("hyperlink", null, h));
  }), s[s.length] = "</hyperlinks>"), delete o["!links"], o["!margins"] != null && (s[s.length] = (wa(p = o["!margins"]), ne("pageMargins", null, p))), r && !r.ignoreEC && r.ignoreEC != null || (s[s.length] = $t("ignoredErrors", ne("ignoredError", null, { numberStoredAsText: 1, sqref: c }))), u.length > 0 && (g = it(a, -1, "../drawings/drawing" + (e + 1) + ".xml", $e.DRAW), s[s.length] = ne("drawing", null, { "r:id": "rId" + g }), o["!drawing"] = u), o["!comments"].length > 0 && (g = it(a, -1, "../drawings/vmlDrawing" + (e + 1) + ".vml", $e.VML), s[s.length] = ne("legacyDrawing", null, { "r:id": "rId" + g }), o["!legacy"] = g), s.length > 1 && (s[s.length] = "</worksheet>", s[1] = s[1].replace("/>", ">")), s.join("");
}
function lh(e, r, t, a) {
  var n = (function(s, i, l) {
    var o = V(145), c = (l["!rows"] || [])[s] || {};
    o.write_shift(4, s), o.write_shift(4, 0);
    var f = 320;
    c.hpx ? f = 20 * wn(c.hpx) : c.hpt && (f = 20 * c.hpt), o.write_shift(2, f), o.write_shift(1, 0);
    var u = 0;
    c.level && (u |= c.level), c.hidden && (u |= 16), (c.hpx || c.hpt) && (u |= 32), o.write_shift(1, u), o.write_shift(1, 0);
    var h = 0, p = o.l;
    o.l += 4;
    for (var d = { r: s, c: 0 }, g = l["!data"] != null, m = 0; m < 16; ++m) if (!(i.s.c > m + 1 << 10 || i.e.c < m << 10)) {
      for (var v = -1, y = -1, w = m << 10; w < m + 1 << 10; ++w) d.c = w, (g ? (l["!data"][d.r] || [])[d.c] : l[Ge(d)]) && (v < 0 && (v = w), y = w);
      v < 0 || (++h, o.write_shift(4, v), o.write_shift(4, y));
    }
    var E = o.l;
    return o.l = p, o.write_shift(4, h), o.l = E, o.length > o.l ? o.slice(0, o.l) : o;
  })(a, t, r);
  (n.length > 17 || (r["!rows"] || [])[a]) && J(e, 0, n);
}
var fh = da, hh = Xa;
function Os(e, r, t) {
  return t == null && (t = V(9)), ia(r, t), t.write_shift(1, e.v), t;
}
function Ns(e, r, t) {
  return t == null && (t = V(8)), ca(r, t), t.write_shift(1, e.v), t.write_shift(2, 0), t.write_shift(1, 0), t;
}
function Fl(e) {
  return [oa(e), Jt(e), "n"];
}
var uh = da, dh = Xa, Dl = ["left", "right", "top", "bottom", "header", "footer"];
function ph(e, r, t, a, n, s, i, l) {
  var o = { r: t, c: a };
  if (r.c && s["!comments"].push([Ge(o), r.c]), r.v === void 0) return !1;
  var c = "";
  switch (r.t) {
    case "b":
      c = r.v ? "1" : "0";
      break;
    case "d":
      (r = st(r)).z = r.z || be[14], r.v = yt(wt(r.v, l), l), r.t = "n";
      break;
    case "n":
    case "e":
      c = "" + r.v;
      break;
    default:
      c = r.v;
  }
  switch (o.s = Mr(n.cellXfs, r, n), r.l && s["!links"].push([Ge(o), r.l]), r.t) {
    case "s":
    case "str":
      return n.bookSST ? (c = Ii(n.Strings, r.v == null ? "" : String(r.v), n.revStrings), o.t = "s", o.v = c, i ? J(e, 18, (function(f, u, h) {
        return h == null && (h = V(8)), ca(u, h), h.write_shift(4, u.v), h;
      })(0, o)) : J(e, 7, (function(f, u, h) {
        return h == null && (h = V(12)), ia(u, h), h.write_shift(4, u.v), h;
      })(0, o))) : (o.t = "str", i ? J(e, 17, (function(f, u, h) {
        var p = f.v == null ? "" : String(f.v);
        return h == null && (h = V(8 + 4 * p.length)), ca(u, h), Pt(p, h), h.length > h.l ? h.slice(0, h.l) : h;
      })(r, o)) : J(e, 6, (function(f, u, h) {
        var p = f.v == null ? "" : String(f.v);
        return h == null && (h = V(12 + 4 * f.v.length)), ia(u, h), Pt(p, h), h.length > h.l ? h.slice(0, h.l) : h;
      })(r, o))), !0;
    case "n":
      return r.v == (0 | r.v) && r.v > -1e3 && r.v < 1e3 ? i ? J(e, 13, (function(f, u, h) {
        return h == null && (h = V(8)), ca(u, h), oo(f.v, h), h;
      })(r, o)) : J(e, 2, (function(f, u, h) {
        return h == null && (h = V(12)), ia(u, h), oo(f.v, h), h;
      })(r, o)) : isFinite(r.v) ? i ? J(e, 16, (function(f, u, h) {
        return h == null && (h = V(12)), ca(u, h), Ba(f.v, h), h;
      })(r, o)) : J(e, 5, (function(f, u, h) {
        return h == null && (h = V(16)), ia(u, h), Ba(f.v, h), h;
      })(r, o)) : (o.t = "e", isNaN(r.v) ? i ? J(e, 14, Ns({ v: 36 }, o)) : J(e, 3, Os({ v: 36 }, o)) : i ? J(e, 14, Ns({ v: 7 }, o)) : J(e, 3, Os({ v: 7 }, o))), !0;
    case "b":
      return o.t = "b", i ? J(e, 15, (function(f, u, h) {
        return h == null && (h = V(5)), ca(u, h), h.write_shift(1, f.v ? 1 : 0), h;
      })(r, o)) : J(e, 4, (function(f, u, h) {
        return h == null && (h = V(9)), ia(u, h), h.write_shift(1, f.v ? 1 : 0), h;
      })(r, o)), !0;
    case "e":
      return o.t = "e", i ? J(e, 14, Ns(r, o)) : J(e, 3, Os(r, o)), !0;
  }
  return i ? J(e, 12, (function(f, u, h) {
    return h == null && (h = V(4)), ca(u, h);
  })(0, o)) : J(e, 1, (function(f, u, h) {
    return h == null && (h = V(8)), ia(u, h);
  })(0, o)), !0;
}
function mh(e, r) {
  var t, a;
  r && r["!merges"] && (J(e, 177, (t = r["!merges"].length, a == null && (a = V(4)), a.write_shift(4, t), a)), r["!merges"].forEach(function(n) {
    J(e, 176, dh(n));
  }), J(e, 178));
}
function vh(e, r) {
  r && r["!cols"] && (J(e, 390), r["!cols"].forEach(function(t, a) {
    t && J(e, 60, (function(n, s, i) {
      i == null && (i = V(18));
      var l = On(n, s);
      i.write_shift(-4, n), i.write_shift(-4, n), i.write_shift(4, 256 * (l.width || 10)), i.write_shift(4, 0);
      var o = 0;
      return s.hidden && (o |= 1), typeof l.width == "number" && (o |= 2), s.level && (o |= s.level << 8), i.write_shift(2, o), i;
    })(a, t));
  }), J(e, 391));
}
function gh(e, r) {
  var t, a;
  r && r["!ref"] && (J(e, 648), J(e, 649, (t = Je(r["!ref"]), (a = V(24)).write_shift(4, 4), a.write_shift(4, 1), Xa(t, a), a)), J(e, 650));
}
function bh(e, r, t) {
  r["!links"].forEach(function(a) {
    if (a[1].Target) {
      var n = it(t, -1, a[1].Target.replace(/#[\s\S]*$/, ""), $e.HLINK);
      J(e, 494, (function(s, i) {
        var l = V(50 + 4 * (s[1].Target.length + (s[1].Tooltip || "").length));
        Xa({ s: ft(s[0]), e: ft(s[0]) }, l), yi("rId" + i, l);
        var o = s[1].Target.indexOf("#");
        return Pt((o == -1 ? "" : s[1].Target.slice(o + 1)) || "", l), Pt(s[1].Tooltip || "", l), Pt("", l), l.slice(0, l.l);
      })(a, n));
    }
  }), delete r["!links"];
}
function wh(e, r, t) {
  J(e, 133), J(e, 137, (function(a, n, s) {
    s == null && (s = V(30));
    var i = 924;
    return (((n || {}).Views || [])[0] || {}).RTL && (i |= 32), s.write_shift(2, i), s.write_shift(4, 0), s.write_shift(4, 0), s.write_shift(4, 0), s.write_shift(1, 0), s.write_shift(1, 0), s.write_shift(2, 0), s.write_shift(2, 100), s.write_shift(2, 0), s.write_shift(2, 0), s.write_shift(2, 0), s.write_shift(4, 0), s;
  })(0, t)), J(e, 138), J(e, 134);
}
function Th(e, r) {
  var t, a;
  r["!protect"] && J(e, 535, (t = r["!protect"], a == null && (a = V(66)), a.write_shift(2, t.password ? xi(t.password) : 0), a.write_shift(4, 1), [["objects", !1], ["scenarios", !1], ["formatCells", !0], ["formatColumns", !0], ["formatRows", !0], ["insertColumns", !0], ["insertRows", !0], ["insertHyperlinks", !0], ["deleteColumns", !0], ["deleteRows", !0], ["selectLockedCells", !1], ["sort", !0], ["autoFilter", !0], ["pivotTables", !0], ["selectUnlockedCells", !1]].forEach(function(n) {
    n[1] ? a.write_shift(4, t[n[0]] == null || t[n[0]] ? 0 : 1) : a.write_shift(4, t[n[0]] != null && t[n[0]] ? 0 : 1);
  }), a));
}
function yh(e, r, t, a) {
  var n = rr(), s = t.SheetNames[e], i = t.Sheets[s] || {}, l = s;
  try {
    t && t.Workbook && (l = t.Workbook.Sheets[e].CodeName || l);
  } catch {
  }
  var o, c, f = Je(i["!ref"] || "A1");
  if (f.e.c > 16383 || f.e.r > 1048575) {
    if (r.WTF) throw new Error("Range " + (i["!ref"] || "A1") + " exceeds format limit A1:XFD1048576");
    f.e.c = Math.min(f.e.c, 16383), f.e.r = Math.min(f.e.c, 1048575);
  }
  return i["!links"] = [], i["!comments"] = [], J(n, 129), (t.vbaraw || i["!outline"]) && J(n, 147, (function(u, h, p) {
    p == null && (p = V(84 + 4 * u.length));
    var d = 192;
    h && (h.above && (d &= -65), h.left && (d &= -129)), p.write_shift(1, d);
    for (var g = 1; g < 3; ++g) p.write_shift(1, 0);
    return rs({ auto: 1 }, p), p.write_shift(-4, -1), p.write_shift(-4, -1), Kc(u, p), p.slice(0, p.l);
  })(l, i["!outline"])), J(n, 148, hh(f)), wh(n, 0, t.Workbook), vh(n, i), (function(u, h, p, d, g) {
    var m = Je(h["!ref"] || "A1"), v = "", y = [], w = (((g || {}).Workbook || {}).WBProps || {}).date1904;
    J(u, 145);
    var E = h["!data"] != null, A = E ? h["!data"][m.s.r] : [], b = m.e.r;
    h["!rows"] && (b = Math.max(m.e.r, h["!rows"].length - 1));
    for (var _ = m.s.r; _ <= b; ++_) if (v = Xe(_), E && (A = h["!data"][_]), lh(u, h, m, _), !E || A) {
      var k = !1;
      if (_ <= m.e.r) for (var T = m.s.c; T <= m.e.c; ++T) {
        _ === m.s.r && (y[T] = De(T));
        var S = E ? A[T] : h[y[T] + v];
        k = !!S && ph(u, S, _, T, d, h, k, w);
      }
    }
    J(u, 146);
  })(n, i, 0, r, t), Th(n, i), (function(u, h, p, d) {
    if (h["!autofilter"]) {
      var g = h["!autofilter"], m = typeof g.ref == "string" ? g.ref : We(g.ref);
      p.Workbook || (p.Workbook = { Sheets: [] }), p.Workbook.Names || (p.Workbook.Names = []);
      var v = p.Workbook.Names, y = Ot(m);
      y.s.r == y.e.r && (y.e.r = Ot(h["!ref"]).e.r, m = We(y));
      for (var w = 0; w < v.length; ++w) {
        var E = v[w];
        if (E.Name == "_xlnm._FilterDatabase" && E.Sheet == d) {
          E.Ref = pn(p.SheetNames[d]) + "!" + Ua(m);
          break;
        }
      }
      w == v.length && v.push({ Name: "_xlnm._FilterDatabase", Sheet: d, Ref: pn(p.SheetNames[d]) + "!" + Ua(m) }), J(u, 161, Xa(Je(m))), J(u, 162);
    }
  })(n, i, t, e), mh(n, i), bh(n, i, a), i["!margins"] && J(n, 476, (o = i["!margins"], c == null && (c = V(48)), wa(o), Dl.forEach(function(u) {
    Ba(o[u], c);
  }), c)), r && !r.ignoreEC && r.ignoreEC != null || gh(n, i), (function(u, h, p, d) {
    if (h["!comments"].length > 0) {
      var g = it(d, -1, "../drawings/vmlDrawing" + (p + 1) + ".vml", $e.VML);
      J(u, 551, yi("rId" + g)), h["!legacy"] = g;
    }
  })(n, i, e, a), J(n, 130), n.end();
}
function Eh(e, r, t, a, n, s) {
  var i = s || { "!type": "chart" };
  if (!e) return s;
  var l = 0, o = 0, c = "A", f = { s: { r: 2e6, c: 2e6 }, e: { r: 0, c: 0 } };
  return (zs(e, "<c:numCache>", "</c:numCache>") || []).forEach(function(u) {
    var h = (function(p) {
      var d, g = [], m = p.match(/^<c:numCache>/);
      (p.match(/<c:pt idx="(\d*)"[^<>\/]*><c:v>([^<])<\/c:v><\/c:pt>/gm) || []).forEach(function(y) {
        var w = y.match(/<c:pt idx="(\d*)"[^<>\/]*><c:v>([^<]*)<\/c:v><\/c:pt>/);
        w && (g[+w[1]] = m ? +w[2] : w[2]);
      });
      var v = et((va(p, "c:formatCode") || ["", "General"])[1]);
      return (zs(p, "<c:f>", "</c:f>") || []).forEach(function(y) {
        d = y.replace(/<[^<>]*>/g, "");
      }), [g, v, d];
    })(u);
    f.s.r = f.s.c = 0, f.e.c = l, c = De(l), h[0].forEach(function(p, d) {
      i["!data"] ? (i["!data"][d] || (i["!data"][d] = []), i["!data"][d][l] = { t: "n", v: p, z: h[1] }) : i[c + Xe(d)] = { t: "n", v: p, z: h[1] }, o = d;
    }), f.e.r < o && (f.e.r = o), ++l;
  }), l > 0 && (i["!ref"] = We(f)), i;
}
var Ri = [["allowRefreshQuery", !1, "bool"], ["autoCompressPictures", !0, "bool"], ["backupFile", !1, "bool"], ["checkCompatibility", !1, "bool"], ["CodeName", ""], ["date1904", !1, "bool"], ["defaultThemeVersion", 0, "int"], ["filterPrivacy", !1, "bool"], ["hidePivotFieldList", !1, "bool"], ["promptedSolutions", !1, "bool"], ["publishItems", !1, "bool"], ["refreshAllConnections", !1, "bool"], ["saveExternalLinkValues", !0, "bool"], ["showBorderUnselectedTables", !0, "bool"], ["showInkAnnotation", !0, "bool"], ["showObjects", "all"], ["showPivotChartFilter", !1, "bool"], ["updateLinks", "userSet"]], kh = [["activeTab", 0, "int"], ["autoFilterDateGrouping", !0, "bool"], ["firstSheet", 0, "int"], ["minimized", !1, "bool"], ["showHorizontalScroll", !0, "bool"], ["showSheetTabs", !0, "bool"], ["showVerticalScroll", !0, "bool"], ["tabRatio", 600, "int"], ["visibility", "visible"]], _h = [], Sh = [["calcCompleted", "true"], ["calcMode", "auto"], ["calcOnSave", "true"], ["concurrentCalc", "true"], ["fullCalcOnLoad", "false"], ["fullPrecision", "true"], ["iterate", "false"], ["iterateCount", "100"], ["iterateDelta", "0.001"], ["refMode", "A1"]];
function Ko(e, r) {
  for (var t = 0; t != e.length; ++t) for (var a = e[t], n = 0; n != r.length; ++n) {
    var s = r[n];
    if (a[s[0]] == null) a[s[0]] = s[1];
    else switch (s[2]) {
      case "bool":
        typeof a[s[0]] == "string" && (a[s[0]] = ot(a[s[0]]));
        break;
      case "int":
        typeof a[s[0]] == "string" && (a[s[0]] = parseInt(a[s[0]], 10));
    }
  }
}
function Yo(e, r) {
  for (var t = 0; t != r.length; ++t) {
    var a = r[t];
    if (e[a[0]] == null) e[a[0]] = a[1];
    else switch (a[2]) {
      case "bool":
        typeof e[a[0]] == "string" && (e[a[0]] = ot(e[a[0]]));
        break;
      case "int":
        typeof e[a[0]] == "string" && (e[a[0]] = parseInt(e[a[0]], 10));
    }
  }
}
function Jo(e) {
  Yo(e.WBProps, Ri), Yo(e.CalcPr, Sh), Ko(e.WBView, kh), Ko(e.Sheets, _h), Ma.date1904 = ot(e.WBProps.date1904);
}
var xh = ":][*?/\\".split("");
function Pl(e, r) {
  try {
    if (e == "") throw new Error("Sheet name cannot be blank");
    if (e.length > 31) throw new Error("Sheet name cannot exceed 31 chars");
    if (e.charCodeAt(0) == 39 || e.charCodeAt(e.length - 1) == 39) throw new Error("Sheet name cannot start or end with apostrophe (')");
    if (e.toLowerCase() == "history") throw new Error("Sheet name cannot be 'History'");
    xh.forEach(function(t) {
      if (e.indexOf(t) != -1) throw new Error("Sheet name cannot contain : \\ / ? * [ ]");
    });
  } catch (t) {
    throw t;
  }
  return !0;
}
function Ll(e) {
  if (!e || !e.SheetNames || !e.Sheets) throw new Error("Invalid Workbook");
  if (!e.SheetNames.length) throw new Error("Workbook is empty");
  var r, t, a, n = e.Workbook && e.Workbook.Sheets || [];
  r = e.SheetNames, t = n, a = !!e.vbaraw, r.forEach(function(i, l) {
    Pl(i);
    for (var o = 0; o < l; ++o) if (i == r[o]) throw new Error("Duplicate Sheet Name: " + i);
    if (a) {
      var c = t && t[l] && t[l].CodeName || i;
      if (c.charCodeAt(0) == 95 && c.length > 22) throw new Error("Bad Code Name: Worksheet" + c);
    }
  });
  for (var s = 0; s < e.SheetNames.length; ++s) Y0(e.Sheets[e.SheetNames[s]], e.SheetNames[s], s);
  e.SheetNames.forEach(function(i, l) {
    var o = e.Sheets[i];
    if (o && o["!autofilter"]) {
      var c;
      e.Workbook || (e.Workbook = {}), e.Workbook.Names || (e.Workbook.Names = []), e.Workbook.Names.forEach(function(u) {
        u.Name == "_xlnm._FilterDatabase" && u.Sheet == l && (c = u);
      });
      var f = pn(i) + "!" + Ua(o["!autofilter"].ref);
      c ? c.Ref = f : e.Workbook.Names.push({ Name: "_xlnm._FilterDatabase", Sheet: l, Ref: f });
    }
  });
}
var Ah = /<\w+:workbook/;
function Ch(e, r) {
  return r || (r = V(127)), r.write_shift(4, e.Hidden), r.write_shift(4, e.iTabID), yi(e.strRelID, r), Pt(e.name.slice(0, 31), r), r.length > r.l ? r.slice(0, r.l) : r;
}
function Ih(e, r) {
  var t = {};
  return e.read_shift(4), t.ArchID = e.read_shift(4), e.l += r - 8, t;
}
function Rh(e, r) {
  if (r.Workbook && r.Workbook.Sheets) {
    for (var t, a, n = r.Workbook.Sheets, s = 0, i = -1, l = -1; s < n.length; ++s) !n[s] || !n[s].Hidden && i == -1 ? i = s : n[s].Hidden == 1 && l == -1 && (l = s);
    l > i || (J(e, 135), J(e, 158, (t = i, a || (a = V(29)), a.write_shift(-4, 0), a.write_shift(-4, 460), a.write_shift(4, 28800), a.write_shift(4, 17600), a.write_shift(4, 500), a.write_shift(4, t), a.write_shift(4, t), a.write_shift(1, 120), a.length > a.l ? a.slice(0, a.l) : a)), J(e, 136));
  }
}
function Oh(e, r) {
  r.Workbook && r.Workbook.Names && r.Workbook.Names.forEach(function(t) {
    try {
      if (14 & t.Flags) return;
      J(e, 39, (function(a, n) {
        var s = V(9), i = 0, l = a.Name;
        Ei.indexOf(l) > -1 && (i |= 32, l = l.slice(6)), s.write_shift(4, i), s.write_shift(1, 0), s.write_shift(4, a.Sheet == null ? 4294967295 : a.Sheet);
        var o = [s, Pt(l), G0(a.Ref, n)];
        if (a.Comment) o.push(mn(a.Comment));
        else {
          var c = V(4);
          c.write_shift(4, 4294967295), o.push(c);
        }
        return xt(o);
      })(t, r));
    } catch {
      console.error("Could not serialize defined name " + JSON.stringify(t));
    }
  });
}
function Nh(e, r) {
  J(e, 353), J(e, 357), J(e, 362, (function(t) {
    var a = t.SheetNames.length, n = V(12 * a + 28);
    n.write_shift(4, a + 2), n.write_shift(4, 0), n.write_shift(4, -2), n.write_shift(4, -2), n.write_shift(4, 0), n.write_shift(4, -1), n.write_shift(4, -1);
    for (var s = 0; s < a; ++s) n.write_shift(4, 0), n.write_shift(4, s), n.write_shift(4, s);
    return n;
  })(r)), J(e, 354);
}
function Fh(e, r) {
  var t = rr();
  return J(t, 131), J(t, 128, (function(a, n) {
    n || (n = V(127));
    for (var s = 0; s != 4; ++s) n.write_shift(4, 0);
    return Pt("SheetJS", n), Pt(Kn.version, n), Pt(Kn.version, n), Pt("7262", n), n.length > n.l ? n.slice(0, n.l) : n;
  })()), J(t, 153, (function(a, n) {
    n || (n = V(72));
    var s = 0;
    return a && (a.date1904 && (s |= 1), a.filterPrivacy && (s |= 8)), n.write_shift(4, s), n.write_shift(4, 0), Kc(a && a.CodeName || "ThisWorkbook", n), n.slice(0, n.l);
  })(e.Workbook && e.Workbook.WBProps || null)), Rh(t, e), (function(a, n) {
    J(a, 143);
    for (var s = 0; s != n.SheetNames.length; ++s) J(a, 156, Ch({ Hidden: n.Workbook && n.Workbook.Sheets && n.Workbook.Sheets[s] && n.Workbook.Sheets[s].Hidden || 0, iTabID: s + 1, strRelID: "rId" + (s + 1), name: n.SheetNames[s] }));
    J(a, 144);
  })(t, e), Nh(t, e), (e.Workbook || {}).Names && Oh(t, e), J(t, 132), t.end();
}
function Dh(e, r, t) {
  return r.slice(-4) === ".bin" ? (function(a, n) {
    var s = { AppVersion: {}, WBProps: {}, WBView: [], Sheets: [], CalcPr: {}, xmlns: "" }, i = [], l = !1;
    n || (n = {}), n.biff = 12;
    var o = [], c = [[]];
    return c.SheetNames = [], c.XTI = [], Tn[16] = { n: "BrtFRTArchID$", f: Ih }, Yr(a, function(f, u, h) {
      switch (h) {
        case 156:
          c.SheetNames.push(f.name), s.Sheets.push(f);
          break;
        case 153:
          s.WBProps = f;
          break;
        case 39:
          f.Sheet != null && (n.SID = f.Sheet), f.Ref = f.Ptg ? Qt(f.Ptg, 0, null, c, n) : "#REF!", delete n.SID, delete f.Ptg, o.push(f);
          break;
        case 1036:
        case 361:
        case 2071:
        case 158:
        case 143:
        case 664:
        case 353:
        case 3072:
        case 3073:
        case 534:
        case 677:
        case 157:
        case 610:
        case 2050:
        case 155:
        case 548:
        case 676:
        case 128:
        case 665:
        case 2128:
        case 2125:
        case 549:
        case 2053:
        case 596:
        case 2076:
        case 2075:
        case 2082:
        case 397:
        case 154:
        case 1117:
        case 553:
        case 2091:
        case 16:
          break;
        case 357:
        case 358:
        case 355:
        case 667:
          c[0].length ? c.push([h, f]) : c[0] = [h, f], c[c.length - 1].XTI = [];
          break;
        case 362:
          c.length === 0 && (c[0] = [], c[0].XTI = []), c[c.length - 1].XTI = c[c.length - 1].XTI.concat(f), c.XTI = c.XTI.concat(f);
          break;
        case 35:
        case 37:
          i.push(h), l = !0;
          break;
        case 36:
        case 38:
          i.pop(), l = !1;
          break;
        default:
          if (!u.T) {
            if (!l || n.WTF && i[i.length - 1] != 37 && i[i.length - 1] != 35) throw new Error("Unexpected record 0x" + h.toString(16));
          }
      }
    }, n), Jo(s), s.Names = o, s.supbooks = c, s;
  })(e, t) : (function(a, n) {
    if (!a) throw new Error("Could not find file");
    var s = { AppVersion: {}, WBProps: {}, WBView: [], Sheets: [], CalcPr: {}, Names: [], xmlns: "" }, i = !1, l = "xmlns", o = {}, c = 0;
    if (a.replace(Vt, function(f, u) {
      var h = pe(f);
      switch (Tr(h[0])) {
        case "<?xml":
        case "</workbook>":
        case "<fileVersion/>":
        case "</fileVersion>":
        case "<fileSharing":
        case "<fileSharing/>":
        case "</workbookPr>":
        case "<workbookProtection":
        case "<workbookProtection/>":
        case "<bookViews":
        case "<bookViews>":
        case "</bookViews>":
        case "</workbookView>":
        case "<sheets":
        case "<sheets>":
        case "</sheets>":
        case "</sheet>":
        case "<functionGroups":
        case "<functionGroups/>":
        case "<functionGroup":
        case "<externalReferences":
        case "</externalReferences>":
        case "<externalReferences>":
        case "<externalReference":
        case "<definedNames/>":
        case "<definedName/>":
        case "</calcPr>":
        case "<oleSize":
        case "<customWorkbookViews>":
        case "</customWorkbookViews>":
        case "<customWorkbookViews":
        case "<customWorkbookView":
        case "</customWorkbookView>":
        case "<pivotCaches>":
        case "</pivotCaches>":
        case "<pivotCaches":
        case "<pivotCache":
        case "<smartTagPr":
        case "<smartTagPr/>":
        case "<smartTagTypes":
        case "<smartTagTypes>":
        case "</smartTagTypes>":
        case "<smartTagType":
        case "<webPublishing":
        case "<webPublishing/>":
        case "<fileRecoveryPr":
        case "<fileRecoveryPr/>":
        case "<webPublishObjects>":
        case "<webPublishObjects":
        case "</webPublishObjects>":
        case "<webPublishObject":
        case "<extLst":
        case "<extLst>":
        case "</extLst>":
        case "<extLst/>":
        case "<ArchID":
        case "<revisionPtr":
          break;
        case "<workbook":
          f.match(Ah) && (l = "xmlns" + f.match(/<(\w+):/)[1]), s.xmlns = h[l];
          break;
        case "<fileVersion":
          delete h[0], s.AppVersion = h;
          break;
        case "<workbookPr":
        case "<workbookPr/>":
          Ri.forEach(function(p) {
            if (h[p[0]] != null) switch (p[2]) {
              case "bool":
                s.WBProps[p[0]] = ot(h[p[0]]);
                break;
              case "int":
                s.WBProps[p[0]] = parseInt(h[p[0]], 10);
                break;
              default:
                s.WBProps[p[0]] = h[p[0]];
            }
          }), h.codeName && (s.WBProps.CodeName = ht(h.codeName));
          break;
        case "<workbookView":
        case "<workbookView/>":
          delete h[0], s.WBView.push(h);
          break;
        case "<sheet":
          switch (h.state) {
            case "hidden":
              h.Hidden = 1;
              break;
            case "veryHidden":
              h.Hidden = 2;
              break;
            default:
              h.Hidden = 0;
          }
          delete h.state, h.name = et(ht(h.name)), delete h[0], s.Sheets.push(h);
          break;
        case "<definedNames>":
        case "<definedNames":
        case "<ext":
        case "<AlternateContent":
        case "<AlternateContent>":
          i = !0;
          break;
        case "</definedNames>":
        case "</ext>":
        case "</AlternateContent>":
          i = !1;
          break;
        case "<definedName":
          (o = {}).Name = ht(h.name), h.comment && (o.Comment = h.comment), h.localSheetId && (o.Sheet = +h.localSheetId), ot(h.hidden || "0") && (o.Hidden = !0), c = u + f.length;
          break;
        case "</definedName>":
          o.Ref = et(ht(a.slice(c, u))), s.Names.push(o);
          break;
        case "<calcPr":
        case "<calcPr/>":
          delete h[0], s.CalcPr = h;
          break;
        default:
          if (!i && n.WTF) throw new Error("unrecognized " + h[0] + " in workbook");
      }
      return f;
    }), Sa.indexOf(s.xmlns) === -1) throw new Error("Unknown Namespace: " + s.xmlns);
    return Jo(s), s;
  })(e, t);
}
function Ph(e, r, t, a, n, s, i, l) {
  return r.slice(-4) === ".bin" ? (function(o, c, f, u, h, p, d) {
    if (!o) return o;
    var g = c || {};
    u || (u = { "!id": {} });
    var m, v = {};
    g.dense && (v["!data"] = []);
    var y, w, E, A, b, _, k, T, S, C = { s: { r: 2e6, c: 2e6 }, e: { r: 0, c: 0 } }, F = !1, I = !1, P = [];
    g.biff = 12, g["!row"] = 0;
    var W = 0, U = !1, G = [], B = {}, z = g.supbooks || h.supbooks || [[]];
    if (z.sharedf = B, z.arrayf = G, z.SheetNames = h.SheetNames || h.Sheets.map(function(Q) {
      return Q.name;
    }), !g.supbooks && (g.supbooks = z, h.Names)) for (var K = 0; K < h.Names.length; ++K) z[0][K + 1] = h.Names[K];
    var ee, se = [], H = [], Y = !1;
    Tn[16] = { n: "BrtShortReal", f: Fl };
    var he = 1462 * +!!((h || {}).WBProps || {}).date1904;
    if (Yr(o, function(Q, ke, ce) {
      if (!I) switch (ce) {
        case 148:
          m = Q;
          break;
        case 0:
          y = Q, g.sheetRows && g.sheetRows <= y.r && (I = !0), T = Xe(A = y.r), g["!row"] = y.r, (Q.hidden || Q.hpt || Q.level != null) && (Q.hpt && (Q.hpx = Ha(Q.hpt)), H[Q.r] = Q);
          break;
        case 2:
        case 3:
        case 4:
        case 5:
        case 6:
        case 7:
        case 8:
        case 9:
        case 10:
        case 11:
        case 13:
        case 14:
        case 15:
        case 16:
        case 17:
        case 18:
        case 62:
          switch (w = { t: Q[2] }, Q[2]) {
            case "n":
              w.v = Q[1];
              break;
            case "s":
              k = sn[Q[1]], w.v = k.t, w.r = k.r;
              break;
            case "b":
              w.v = !!Q[1];
              break;
            case "e":
              w.v = Q[1], g.cellText !== !1 && (w.w = Lt[w.v]);
              break;
            case "str":
              w.t = "s", w.v = Q[1];
              break;
            case "is":
              w.t = "s", w.v = Q[1].t;
          }
          if ((E = d.CellXf[Q[0].iStyleRef]) && Ol(w, E.numFmtId, null, g, p, d, he > 0), b = Q[0].c == -1 ? b + 1 : Q[0].c, g.dense ? (v["!data"][A] || (v["!data"][A] = []), v["!data"][A][b] = w) : v[De(b) + T] = w, g.cellFormula) {
            for (U = !1, W = 0; W < G.length; ++W) {
              var fe = G[W];
              y.r >= fe[0].s.r && y.r <= fe[0].e.r && b >= fe[0].s.c && b <= fe[0].e.c && (w.F = We(fe[0]), U = !0);
            }
            !U && Q.length > 3 && (w.f = Q[3]);
          }
          if (C.s.r > y.r && (C.s.r = y.r), C.s.c > b && (C.s.c = b), C.e.r < y.r && (C.e.r = y.r), C.e.c < b && (C.e.c = b), g.cellDates && E && w.t == "n" && ur(be[E.numFmtId])) {
            var Ne = Fr(w.v + he);
            Ne && (w.t = "d", w.v = new Date(Date.UTC(Ne.y, Ne.m - 1, Ne.d, Ne.H, Ne.M, Ne.S, Ne.u)));
          }
          ee && (ee.type == "XLDAPR" && (w.D = !0), ee = void 0);
          break;
        case 1:
        case 12:
          if (!g.sheetStubs || F) break;
          w = { t: "z", v: void 0 }, b = Q[0].c == -1 ? b + 1 : Q[0].c, g.dense ? (v["!data"][A] || (v["!data"][A] = []), v["!data"][A][b] = w) : v[De(b) + T] = w, C.s.r > y.r && (C.s.r = y.r), C.s.c > b && (C.s.c = b), C.e.r < y.r && (C.e.r = y.r), C.e.c < b && (C.e.c = b), ee && (ee.type == "XLDAPR" && (w.D = !0), ee = void 0);
          break;
        case 176:
          P.push(Q);
          break;
        case 49:
          ee = ((g.xlmeta || {}).Cell || [])[Q - 1];
          break;
        case 494:
          var R = u["!id"][Q.relId];
          for (R ? (Q.Target = R.Target, Q.loc && (Q.Target += "#" + Q.loc), Q.Rel = R) : Q.relId == "" && (Q.Target = "#" + Q.loc), A = Q.rfx.s.r; A <= Q.rfx.e.r; ++A) for (b = Q.rfx.s.c; b <= Q.rfx.e.c; ++b) g.dense ? (v["!data"][A] || (v["!data"][A] = []), v["!data"][A][b] || (v["!data"][A][b] = { t: "z", v: void 0 }), v["!data"][A][b].l = Q) : (_ = De(b) + Xe(A), v[_] || (v[_] = { t: "z", v: void 0 }), v[_].l = Q);
          break;
        case 426:
          if (!g.cellFormula) break;
          G.push(Q), (S = g.dense ? v["!data"][A][b] : v[De(b) + T]).f = Qt(Q[1], 0, { r: y.r, c: b }, z, g), S.F = We(Q[0]);
          break;
        case 427:
          if (!g.cellFormula) break;
          B[Ge(Q[0].s)] = Q[1], (S = g.dense ? v["!data"][A][b] : v[De(b) + T]).f = Qt(Q[1], 0, { r: y.r, c: b }, z, g);
          break;
        case 60:
          if (!g.cellStyles) break;
          for (; Q.e >= Q.s; ) se[Q.e--] = { width: Q.w / 256, hidden: !!(1 & Q.flags), level: Q.level }, Y || (Y = !0, Ai(Q.w / 256)), jr(se[Q.e + 1]);
          break;
        case 551:
          Q && (v["!legrel"] = Q);
          break;
        case 161:
          v["!autofilter"] = { ref: We(Q) };
          break;
        case 476:
          v["!margins"] = Q;
          break;
        case 147:
          h.Sheets[f] || (h.Sheets[f] = {}), Q.name && (h.Sheets[f].CodeName = Q.name), (Q.above || Q.left) && (v["!outline"] = { above: Q.above, left: Q.left });
          break;
        case 137:
          h.Views || (h.Views = [{}]), h.Views[0] || (h.Views[0] = {}), Q.RTL && (h.Views[0].RTL = !0);
          break;
        case 485:
        case 64:
        case 1053:
        case 151:
        case 152:
        case 175:
        case 644:
        case 625:
        case 562:
        case 396:
        case 1112:
        case 1146:
        case 471:
        case 1050:
        case 649:
        case 1105:
        case 589:
        case 607:
        case 564:
        case 1055:
        case 168:
        case 174:
        case 1180:
        case 499:
        case 507:
        case 550:
        case 171:
        case 167:
        case 1177:
        case 169:
        case 1181:
        case 552:
        case 661:
        case 639:
        case 478:
        case 537:
        case 477:
        case 536:
        case 1103:
        case 680:
        case 1104:
        case 1024:
        case 663:
        case 535:
        case 678:
        case 504:
        case 1043:
        case 428:
        case 170:
        case 3072:
        case 50:
        case 2070:
        case 1045:
          break;
        case 35:
        case 37:
          F = !0;
          break;
        case 36:
        case 38:
          F = !1;
          break;
        default:
          if (!ke.T) {
            if (!F || g.WTF) throw new Error("Unexpected record 0x" + ce.toString(16));
          }
      }
    }, g), delete g.supbooks, delete g["!row"], !v["!ref"] && (C.s.r < 2e6 || m && (m.e.r > 0 || m.e.c > 0 || m.s.r > 0 || m.s.c > 0)) && (v["!ref"] = We(m || C)), g.sheetRows && v["!ref"]) {
      var te = Je(v["!ref"]);
      g.sheetRows <= +te.e.r && (te.e.r = g.sheetRows - 1, te.e.r > C.e.r && (te.e.r = C.e.r), te.e.r < te.s.r && (te.s.r = te.e.r), te.e.c > C.e.c && (te.e.c = C.e.c), te.e.c < te.s.c && (te.s.c = te.e.c), v["!fullref"] = v["!ref"], v["!ref"] = We(te));
    }
    return P.length > 0 && (v["!merges"] = P), se.length > 0 && (v["!cols"] = se), H.length > 0 && (v["!rows"] = H), u["!id"][v["!legrel"]] && (v["!legdrawel"] = u["!id"][v["!legrel"]]), v;
  })(e, a, t, n, s, i, l) : rh(e, a, t, n, s, i, l);
}
function Lh(e, r, t, a, n, s, i, l) {
  return r.slice(-4) === ".bin" ? (function(o, c, f, u, h) {
    if (!o) return o;
    u || (u = { "!id": {} });
    var p = { "!type": "chart", "!drawel": null, "!rel": "" }, d = !1;
    return Yr(o, function(g, m, v) {
      switch (v) {
        case 550:
          p["!rel"] = g;
          break;
        case 651:
          h.Sheets[f] || (h.Sheets[f] = {}), g.name && (h.Sheets[f].CodeName = g.name);
          break;
        case 562:
        case 652:
        case 669:
        case 679:
        case 551:
        case 552:
        case 476:
        case 3072:
        case 37:
        case 38:
          break;
        case 35:
          d = !0;
          break;
        case 36:
          d = !1;
          break;
        default:
          if (!(m.T > 0)) {
            if (!(m.T < 0)) {
              if (!d || c.WTF) throw new Error("Unexpected record 0x" + v.toString(16));
            }
          }
      }
    }, c), u["!id"][p["!rel"]] && (p["!drawel"] = u["!id"][p["!rel"]]), p;
  })(e, a, t, n, s) : (function(o, c, f, u, h) {
    if (!o) return o;
    u || (u = { "!id": {} });
    var p, d = { "!type": "chart", "!drawel": null, "!rel": "" }, g = o.match(Nl);
    return g && Js(g[0], 0, h, f), (p = o.match(/drawing r:id="(.*?)"/)) && (d["!rel"] = p[1]), u["!id"][d["!rel"]] && (d["!drawel"] = u["!id"][d["!rel"]]), d;
  })(e, 0, t, n, s);
}
function Mh(e, r, t, a) {
  return r.slice(-4) === ".bin" ? (function(n, s, i) {
    var l = { NumberFmt: [] };
    for (var o in be) l.NumberFmt[o] = be[o];
    l.CellXf = [], l.Fonts = [];
    var c = [], f = !1;
    return Yr(n, function(u, h, p) {
      switch (p) {
        case 44:
          l.NumberFmt[u[0]] = u[1], Zr(u[1], u[0]);
          break;
        case 43:
          l.Fonts.push(u), u.color.theme != null && s && s.themeElements && s.themeElements.clrScheme && (u.color.rgb = ns(s.themeElements.clrScheme[u.color.theme].rgb, u.color.tint || 0));
          break;
        case 1025:
        case 45:
        case 46:
        case 48:
        case 507:
        case 572:
        case 475:
        case 1171:
        case 2102:
        case 1130:
        case 512:
        case 2095:
        case 3072:
          break;
        case 47:
          c[c.length - 1] == 617 && l.CellXf.push(u);
          break;
        case 35:
          f = !0;
          break;
        case 36:
          f = !1;
          break;
        case 37:
          c.push(p), f = !0;
          break;
        case 38:
          c.pop(), f = !1;
          break;
        default:
          if (h.T > 0) c.push(p);
          else if (h.T < 0) c.pop();
          else if (!f || i.WTF && c[c.length - 1] != 37) throw new Error("Unexpected record 0x" + p.toString(16));
      }
    }), l;
  })(e, t, a) : o0(e, t, a);
}
function Uh(e, r, t) {
  return r.slice(-4) === ".bin" ? (function(a, n) {
    var s = [], i = !1;
    return Yr(a, function(l, o, c) {
      switch (c) {
        case 159:
          s.Count = l[0], s.Unique = l[1];
          break;
        case 19:
          s.push(l);
          break;
        case 160:
          return !0;
        case 35:
          i = !0;
          break;
        case 36:
          i = !1;
          break;
        default:
          if (o.T, !i || n.WTF) throw new Error("Unexpected record 0x" + c.toString(16));
      }
    }), s;
  })(e, t) : (function(a, n) {
    var s = [], i = "";
    if (!a) return s;
    var l = Wt(a, "sst");
    if (l) {
      i = l[1].replace(j1, "").split(K1);
      for (var o = 0; o != i.length; ++o) {
        var c = Si(i[o].trim(), n);
        c != null && (s[s.length] = c);
      }
      l = pe(l[0].slice(0, l[0].indexOf(">"))), s.Count = l.count, s.Unique = l.uniqueCount;
    }
    return s;
  })(e, t);
}
function Bh(e, r, t) {
  return r.slice(-4) === ".bin" ? (function(a, n) {
    var s = [], i = [], l = {}, o = !1;
    return Yr(a, function(c, f, u) {
      switch (u) {
        case 632:
          i.push(c);
          break;
        case 635:
          l = c;
          break;
        case 637:
          l.t = c.t, l.h = c.h, l.r = c.r;
          break;
        case 636:
          if (l.author = i[l.iauthor], delete l.iauthor, n.sheetRows && l.rfx && n.sheetRows <= l.rfx.r) break;
          l.t || (l.t = ""), delete l.rfx, s.push(l);
          break;
        case 3072:
        case 37:
        case 38:
          break;
        case 35:
          o = !0;
          break;
        case 36:
          o = !1;
          break;
        default:
          if (!f.T) {
            if (!o || n.WTF) throw new Error("Unexpected record 0x" + u.toString(16));
          }
      }
    }), s;
  })(e, t) : (function(a, n) {
    if (a.match(/<(?:\w+:)?comments *\/>/)) return [];
    var s = [], i = [], l = Wt(a, "authors");
    l && l[1] && l[1].split(/<\/\w*:?author>/).forEach(function(c) {
      if (c !== "" && c.trim() !== "") {
        var f = c.match(/<(?:\w+:)?author[^<>]*>(.*)/);
        f && s.push(f[1]);
      }
    });
    var o = Wt(a, "commentList");
    return o && o[1] && o[1].split(/<\/\w*:?comment>/).forEach(function(c) {
      if (c !== "" && c.trim() !== "") {
        var f = c.match(/<(?:\w+:)?comment[^<>]*>/);
        if (f) {
          var u = pe(f[0]), h = { author: u.authorId && s[u.authorId] || "sheetjsghost", ref: u.ref, guid: u.guid }, p = ft(u.ref);
          if (!(n.sheetRows && n.sheetRows <= p.r)) {
            var d = Wt(c, "text"), g = !!d && !!d[1] && Si(d[1]) || { r: "", t: "", h: "" };
            h.r = g.r, g.r == "<t></t>" && (g.t = g.h = ""), h.t = (g.t || "").replace(/\r\n/g, `
`).replace(/\r/g, `
`), n.cellHTML && (h.h = g.h), i.push(h);
          }
        }
      }
    }), i;
  })(e, t);
}
function Wh(e, r, t) {
  return r.slice(-4) === ".bin" ? (function(a) {
    var n = [];
    return Yr(a, function(s, i, l) {
      if (l === 63) n.push(s);
      else if (!i.T) throw new Error("Unexpected record 0x" + l.toString(16));
    }), n;
  })(e) : (function(a) {
    var n = [];
    if (!a) return n;
    var s = 1;
    return (a.match(Vt) || []).forEach(function(i) {
      var l = pe(i);
      switch (l[0]) {
        case "<?xml":
        case "<calcChain":
        case "<calcChain>":
        case "</calcChain>":
          break;
        case "<c":
          delete l[0], l.i ? s = l.i : l.i = s, n.push(l);
      }
    }), n;
  })(e);
}
function zh(e, r, t, a) {
  if (t.slice(-4) === ".bin") return (function(n, s, i, l) {
    if (!n) return n;
    var o = l || {}, c = !1;
    Yr(n, function(f, u, h) {
      switch (h) {
        case 359:
        case 363:
        case 364:
        case 366:
        case 367:
        case 368:
        case 369:
        case 370:
        case 371:
        case 472:
        case 577:
        case 578:
        case 579:
        case 580:
        case 581:
        case 582:
        case 583:
        case 584:
        case 585:
        case 586:
        case 587:
          break;
        case 35:
          c = !0;
          break;
        case 36:
          c = !1;
          break;
        default:
          if (!u.T) {
            if (!c || o.WTF) throw new Error("Unexpected record 0x" + h.toString(16));
          }
      }
    }, o);
  })(e, 0, 0, a);
}
function Hh(e, r, t) {
  return r.slice(-4) === ".bin" ? (function(a, n, s) {
    var i = { Types: [], Cell: [], Value: [] }, l = s || {}, o = [], c = !1, f = 2;
    return Yr(a, function(u, h, p) {
      switch (p) {
        case 335:
          i.Types.push({ name: u.name });
          break;
        case 51:
          u.forEach(function(d) {
            f == 1 ? i.Cell.push({ type: i.Types[d[0] - 1].name, index: d[1] }) : f == 0 && i.Value.push({ type: i.Types[d[0] - 1].name, index: d[1] });
          });
          break;
        case 337:
          f = u ? 1 : 0;
          break;
        case 338:
          f = 2;
          break;
        case 35:
          o.push(p), c = !0;
          break;
        case 36:
          o.pop(), c = !1;
          break;
        default:
          if (!h.T) {
            if (!c || l.WTF && o[o.length - 1] != 35) throw new Error("Unexpected record 0x" + p.toString(16));
          }
      }
    }), i;
  })(e, 0, t) : (function(a, n, s) {
    var i = { Types: [], Cell: [], Value: [] };
    if (!a) return i;
    var l, o = !1, c = 2;
    return a.replace(Vt, function(f) {
      var u = pe(f);
      switch (Tr(u[0])) {
        case "<?xml":
        case "<metadata":
        case "</metadata>":
        case "<metadataTypes":
        case "</metadataTypes>":
        case "</metadataType>":
        case "</futureMetadata>":
        case "<bk>":
        case "</bk>":
        case "</rc>":
        case "<extLst":
        case "<extLst>":
        case "</extLst>":
        case "<extLst/>":
          break;
        case "<metadataType":
          i.Types.push({ name: u.name });
          break;
        case "<futureMetadata":
          for (var h = 0; h < i.Types.length; ++h) i.Types[h].name == u.name && (l = i.Types[h]);
          break;
        case "<rc":
          c == 1 ? i.Cell.push({ type: i.Types[u.t - 1].name, index: +u.v }) : c == 0 && i.Value.push({ type: i.Types[u.t - 1].name, index: +u.v });
          break;
        case "<cellMetadata":
          c = 1;
          break;
        case "</cellMetadata>":
        case "</valueMetadata>":
          c = 2;
          break;
        case "<valueMetadata":
          c = 0;
          break;
        case "<ext":
          o = !0;
          break;
        case "</ext>":
          o = !1;
          break;
        case "<rvb":
          if (!l) break;
          l.offsets || (l.offsets = []), l.offsets.push(+u.i);
          break;
        default:
          if (!o && s?.WTF) throw new Error("unrecognized " + u[0] + " in metadata");
      }
      return f;
    }), i;
  })(e, 0, t);
}
var cn, Ml = /\b((?:\w+:)?[\w]+)=((?:")([^"]*)(?:")|(?:')([^']*)(?:'))/g, Ul = /\b((?:\w+:)?[\w]+)=((?:")(?:[^"]*)(?:")|(?:')(?:[^']*)(?:'))/;
function Er(e, r) {
  var t = e.split(/\s+/), a = [];
  if (a[0] = t[0], t.length === 1) return a;
  var n, s, i, l = e.match(Ml);
  if (l) for (i = 0; i != l.length; ++i) (s = (n = l[i].match(Ul))[1].indexOf(":")) === -1 ? a[n[1]] = n[2].slice(1, n[2].length - 1) : a[n[1].slice(0, 6) === "xmlns:" ? "xmlns" + n[1].slice(6) : n[1].slice(s + 1)] = n[2].slice(1, n[2].length - 1);
  return a;
}
function Vh(e) {
  var r = {};
  if (e.split(/\s+/).length === 1) return r;
  var t, a, n, s = e.match(Ml);
  if (s) for (n = 0; n != s.length; ++n) (a = (t = s[n].match(Ul))[1].indexOf(":")) === -1 ? r[t[1]] = t[2].slice(1, t[2].length - 1) : r[t[1].slice(0, 6) === "xmlns:" ? "xmlns" + t[1].slice(6) : t[1].slice(a + 1)] = t[2].slice(1, t[2].length - 1);
  return r;
}
function $h(e, r, t, a) {
  var n = a;
  switch ((t[0].match(/dt:dt="([\w.]+)"/) || ["", ""])[1]) {
    case "boolean":
      n = ot(a);
      break;
    case "i2":
    case "int":
      n = parseInt(a, 10);
      break;
    case "r4":
    case "float":
      n = parseFloat(a);
      break;
    case "date":
    case "dateTime.tz":
      n = wt(a);
      break;
    case "i8":
    case "string":
    case "fixed":
    case "uuid":
    case "bin.base64":
      break;
    default:
      throw new Error("bad custprop:" + t[0]);
  }
  e[et(r)] = n;
}
function Gh(e, r, t, a) {
  if (e.t !== "z") {
    if (!t || t.cellText !== !1) try {
      e.t === "e" ? e.w = e.w || Lt[e.v] : r === "General" ? e.t === "n" ? (0 | e.v) === e.v ? e.w = e.v.toString(10) : e.w = hn(e.v) : e.w = ma(e.v) : e.w = (function(i, l, o) {
        var c = cn[i] || et(i);
        return c === "General" ? ma(l) : lr(c, l, { date1904: !!o });
      })(r || "General", e.v, a);
    } catch (i) {
      if (t.WTF) throw i;
    }
    try {
      var n = cn[r] || r || "General";
      if (t.cellNF && (e.z = n), t.cellDates && e.t == "n" && ur(n)) {
        var s = Fr(e.v + (a ? 1462 : 0));
        s && (e.t = "d", e.v = new Date(Date.UTC(s.y, s.m - 1, s.d, s.H, s.M, s.S, s.u)));
      }
    } catch (i) {
      if (t.WTF) throw i;
    }
  }
}
function Xh(e, r, t) {
  if (t.cellStyles && r.Interior) {
    var a = r.Interior;
    a.Pattern && (a.patternType = i0[a.Pattern] || a.Pattern);
  }
  e[r.ID] = r;
}
function jh(e, r, t, a, n, s, i, l, o, c, f) {
  var u = "General", h = a.StyleID, p = {};
  c = c || {};
  var d = [], g = 0;
  for (h === void 0 && l && (h = l.StyleID), h === void 0 && i && (h = i.StyleID); s[h] !== void 0; ) {
    var m = s[h];
    if (m.nf && (u = m.nf), m.Interior && d.push(m.Interior), !m.Parent) break;
    h = m.Parent;
  }
  switch (t.Type) {
    case "Boolean":
      a.t = "b", a.v = ot(e);
      break;
    case "String":
      a.t = "s", a.r = qi(et(e)), a.v = e.indexOf("<") > -1 ? et(r || e).replace(/<[^<>]*>/g, "") : a.r;
      break;
    case "DateTime":
      e.slice(-1) != "Z" && (e += "Z"), a.v = yt(wt(e, f), f), a.v != a.v && (a.v = et(e)), u && u != "General" || (u = "yyyy-mm-dd");
    case "Number":
      a.v === void 0 && (a.v = +e), a.t || (a.t = "n");
      break;
    case "Error":
      a.t = "e", a.v = zt[e], c.cellText !== !1 && (a.w = e);
      break;
    default:
      e == "" && r == "" ? a.t = "z" : (a.t = "s", a.v = qi(r || e));
  }
  if (Gh(a, u, c, f), c.cellFormula !== !1) if (a.Formula) {
    var v = et(a.Formula);
    v.charCodeAt(0) == 61 && (v = v.slice(1)), a.f = ba(v, n), delete a.Formula, a.ArrayRange == "RC" ? a.F = ba("RC:RC", n) : a.ArrayRange && (a.F = ba(a.ArrayRange, n), o.push([Je(a.F), a.F]));
  } else for (g = 0; g < o.length; ++g) n.r >= o[g][0].s.r && n.r <= o[g][0].e.r && n.c >= o[g][0].s.c && n.c <= o[g][0].e.c && (a.F = o[g][1]);
  c.cellStyles && (d.forEach(function(y) {
    !p.patternType && y.patternType && (p.patternType = y.patternType);
  }), a.s = p), a.StyleID !== void 0 && (a.ixfe = a.StyleID);
}
function Kh(e) {
  return Ei.indexOf("_xlnm." + e) > -1 ? "_xlnm." + e : e;
}
function Yh(e) {
  e.t = e.v || "", e.t = e.t.replace(/\r\n/g, `
`).replace(/\r/g, `
`), e.v = e.w = e.ixfe = void 0;
}
function Fs(e, r) {
  var t = r || {};
  xa();
  var a = Ia(hs(e));
  t.type != "binary" && t.type != "array" && t.type != "base64" || (a = ze !== void 0 ? ze.utils.decode(65001, Yn(a)) : ht(a));
  var n, s = a.slice(0, 1024).toLowerCase(), i = !1;
  if ((1023 & (s = s.replace(/".*?"/g, "")).indexOf(">")) > Math.min(1023 & s.indexOf(","), 1023 & s.indexOf(";"))) {
    var l = st(t);
    return l.type = "string", Wa.to_workbook(a, l);
  }
  if (s.indexOf("<?xml") == -1 && ["html", "table", "head", "meta", "script", "style", "div"].forEach(function(ue) {
    s.indexOf("<" + ue) >= 0 && (i = !0);
  }), i) return (function(ue, _t) {
    var Nt = Hf(ue, "table");
    if (!Nt || Nt.length == 0) throw new Error("Invalid HTML: could not find <table>");
    if (Nt.length == 1) {
      var Ie = aa(qo(Nt[0], _t), _t);
      return Ie.bookType = "html", Ie;
    }
    var je = Li();
    return Nt.forEach(function(Pe, at) {
      Nn(je, qo(Pe, _t), "Sheet" + (at + 1));
    }), je.bookType = "html", je;
  })(a, t);
  cn = { "General Number": "General", "General Date": be[22], "Long Date": "dddd, mmmm dd, yyyy", "Medium Date": be[15], "Short Date": be[14], "Long Time": be[19], "Medium Time": be[18], "Short Time": be[20], Currency: '"$"#,##0.00_);[Red]\\("$"#,##0.00\\)', Fixed: be[2], Standard: be[4], Percent: be[10], Scientific: be[11], "Yes/No": '"Yes";"Yes";"No";@', "True/False": '"True";"True";"False";@', "On/Off": '"Yes";"Yes";"No";@' };
  var o, c = [], f = {}, u = [], h = {}, p = "";
  t.dense && (h["!data"] = []);
  var d, g = {}, m = {}, v = Er('<Data ss:Type="String">'), y = 0, w = 0, E = 0, A = { s: { r: 2e6, c: 2e6 }, e: { r: 0, c: 0 } }, b = {}, _ = {}, k = "", T = 0, S = [], C = {}, F = {}, I = 0, P = [], W = [], U = {}, G = [], B = !1, z = [], K = [], ee = {}, se = 0, H = 0, Y = { Sheets: [], WBProps: { date1904: !1 } }, he = {};
  Rt.lastIndex = 0, a = An(a, "<!--", "-->");
  for (var te = ""; n = Rt.exec(a); ) switch (n[3] = (te = n[3]).toLowerCase()) {
    case "data":
      if (te == "data") {
        if (n[1] === "/") {
          if ((o = c.pop())[0] !== n[3]) throw new Error("Bad state: " + o.join("|"));
        } else n[0].charAt(n[0].length - 2) !== "/" && c.push([n[3], !0]);
        break;
      }
      if (c[c.length - 1][1]) break;
      n[1] === "/" ? jh(a.slice(y, n.index), k, v, c[c.length - 1][0] == "comment" ? U : g, { c: w, r: E }, b, G[w], m, z, t, Y.WBProps.date1904) : (k = "", v = Er(n[0]), y = n.index + n[0].length);
      break;
    case "cell":
      if (n[1] === "/") if (W.length > 0 && (g.c = W), (!t.sheetRows || t.sheetRows > E) && g.v !== void 0 && (t.dense ? (h["!data"][E] || (h["!data"][E] = []), h["!data"][E][w] = g) : h[De(w) + Xe(E)] = g), g.HRef && (g.l = { Target: et(g.HRef) }, g.HRefScreenTip && (g.l.Tooltip = g.HRefScreenTip), delete g.HRef, delete g.HRefScreenTip), (g.MergeAcross || g.MergeDown) && (se = w + (0 | parseInt(g.MergeAcross, 10)), H = E + (0 | parseInt(g.MergeDown, 10)), (se > w || H > E) && S.push({ s: { c: w, r: E }, e: { c: se, r: H } })), t.sheetStubs) if (g.MergeAcross || g.MergeDown) {
        for (var Q = w; Q <= se; ++Q) for (var ke = E; ke <= H; ++ke) (Q > w || ke > E) && (t.dense ? (h["!data"][ke] || (h["!data"][ke] = []), h["!data"][ke][Q] = { t: "z" }) : h[De(Q) + Xe(ke)] = { t: "z" });
        w = se + 1;
      } else ++w;
      else g.MergeAcross ? w = se + 1 : ++w;
      else (g = Vh(n[0])).Index && (w = +g.Index - 1), w < A.s.c && (A.s.c = w), w > A.e.c && (A.e.c = w), n[0].slice(-2) === "/>" && ++w, W = [];
      break;
    case "row":
      n[1] === "/" || n[0].slice(-2) === "/>" ? (E < A.s.r && (A.s.r = E), E > A.e.r && (A.e.r = E), n[0].slice(-2) === "/>" && (m = Er(n[0])).Index && (E = +m.Index - 1), w = 0, ++E) : ((m = Er(n[0])).Index && (E = +m.Index - 1), ee = {}, (m.AutoFitHeight == "0" || m.Height) && (ee.hpx = parseInt(m.Height, 10), ee.hpt = wn(ee.hpx), K[E] = ee), m.Hidden == "1" && (ee.hidden = !0, K[E] = ee));
      break;
    case "worksheet":
      if (n[1] === "/") {
        if ((o = c.pop())[0] !== n[3]) throw new Error("Bad state: " + o.join("|"));
        u.push(p), A.s.r <= A.e.r && A.s.c <= A.e.c && (h["!ref"] = We(A), t.sheetRows && t.sheetRows <= A.e.r && (h["!fullref"] = h["!ref"], A.e.r = t.sheetRows - 1, h["!ref"] = We(A))), S.length && (h["!merges"] = S), G.length > 0 && (h["!cols"] = G), K.length > 0 && (h["!rows"] = K), f[p] = h;
      } else A = { s: { r: 2e6, c: 2e6 }, e: { r: 0, c: 0 } }, E = w = 0, c.push([n[3], !1]), o = Er(n[0]), p = et(o.Name), h = {}, t.dense && (h["!data"] = []), S = [], z = [], K = [], he = { name: p, Hidden: 0 }, Y.Sheets.push(he);
      break;
    case "table":
      if (n[1] === "/") {
        if ((o = c.pop())[0] !== n[3]) throw new Error("Bad state: " + o.join("|"));
      } else {
        if (n[0].slice(-2) == "/>") break;
        c.push([n[3], !1]), G = [], B = !1;
      }
      break;
    case "style":
      n[1] === "/" ? Xh(b, _, t) : _ = Er(n[0]);
      break;
    case "numberformat":
      _.nf = et(Er(n[0]).Format || "General"), cn[_.nf] && (_.nf = cn[_.nf]);
      for (var ce = 0; ce != 392 && be[ce] != _.nf; ++ce) ;
      if (ce == 392) {
        for (ce = 57; ce != 392; ++ce) if (be[ce] == null) {
          Zr(_.nf, ce);
          break;
        }
      }
      break;
    case "column":
      if (c[c.length - 1][0] !== "table" || n[1] === "/") break;
      if ((d = Er(n[0])).Hidden && (d.hidden = !0, delete d.Hidden), d.Width && (d.wpx = parseInt(d.Width, 10)), !B && d.wpx > 10) {
        B = !0, Zt = 6;
        for (var fe = 0; fe < G.length; ++fe) G[fe] && jr(G[fe]);
      }
      B && jr(d), G[d.Index - 1 || G.length] = d;
      for (var Ne = 0; Ne < +d.Span; ++Ne) G[G.length] = st(d);
      break;
    case "namedrange":
      if (n[1] === "/") break;
      Y.Names || (Y.Names = []);
      var R = pe(n[0]), Ce = { Name: Kh(R.Name), Ref: ba(R.RefersTo.slice(1), { r: 0, c: 0 }) };
      Y.Sheets.length > 0 && (Ce.Sheet = Y.Sheets.length - 1), Y.Names.push(Ce);
      break;
    case "namedcell":
    case "b":
    case "i":
    case "u":
    case "s":
    case "em":
    case "h2":
    case "h3":
    case "sub":
    case "sup":
    case "span":
    case "alignment":
    case "borders":
    case "border":
    case "protection":
    case "paragraphs":
    case "name":
    case "pixelsperinch":
    case "null":
      break;
    case "font":
      if (n[0].slice(-2) === "/>") break;
      n[1] === "/" ? k += a.slice(T, n.index) : T = n.index + n[0].length;
      break;
    case "interior":
      if (!t.cellStyles) break;
      _.Interior = Er(n[0]);
      break;
    case "author":
    case "title":
    case "description":
    case "created":
    case "keywords":
    case "subject":
    case "category":
    case "company":
    case "lastauthor":
    case "lastsaved":
    case "lastprinted":
    case "version":
    case "revision":
    case "totaltime":
    case "hyperlinkbase":
    case "manager":
    case "contentstatus":
    case "identifier":
    case "language":
    case "appname":
      if (n[0].slice(-2) === "/>") break;
      n[1] === "/" ? E1(C, te, a.slice(I, n.index)) : I = n.index + n[0].length;
      break;
    case "styles":
    case "workbook":
      if (n[1] === "/") {
        if ((o = c.pop())[0] !== n[3]) throw new Error("Bad state: " + o.join("|"));
      } else c.push([n[3], !1]);
      break;
    case "comment":
      if (n[1] === "/") {
        if ((o = c.pop())[0] !== n[3]) throw new Error("Bad state: " + o.join("|"));
        Yh(U), W.push(U);
      } else c.push([n[3], !1]), ot((o = Er(n[0])).ShowAlways || "0") || (W.hidden = !0), U = { a: o.Author };
      break;
    case "autofilter":
      if (n[1] === "/") {
        if ((o = c.pop())[0] !== n[3]) throw new Error("Bad state: " + o.join("|"));
      } else if (n[0].charAt(n[0].length - 2) !== "/") {
        var bt = Er(n[0]);
        h["!autofilter"] = { ref: ba(bt.Range).replace(/\$/g, "") }, c.push([n[3], !0]);
      }
      break;
    case "datavalidation":
      if (n[1] === "/") {
        if ((o = c.pop())[0] !== n[3]) throw new Error("Bad state: " + o.join("|"));
      } else n[0].charAt(n[0].length - 2) !== "/" && c.push([n[3], !0]);
      break;
    case "componentoptions":
    case "documentproperties":
    case "customdocumentproperties":
    case "officedocumentsettings":
    case "pivottable":
    case "pivotcache":
    case "names":
    case "mapinfo":
    case "pagebreaks":
    case "querytable":
    case "sorting":
    case "schema":
    case "conditionalformatting":
    case "smarttagtype":
    case "smarttags":
    case "excelworkbook":
    case "workbookoptions":
    case "worksheetoptions":
      if (n[1] === "/") {
        if ((o = c.pop())[0] !== n[3]) throw new Error("Bad state: " + o.join("|"));
      } else n[0].charAt(n[0].length - 2) !== "/" && c.push([n[3], !0]);
      break;
    default:
      if (c.length == 0 && n[3] == "document" || c.length == 0 && n[3] == "uof") return tc(a, t);
      var tt = !0;
      switch (c[c.length - 1][0]) {
        case "officedocumentsettings":
          switch (n[3]) {
            case "allowpng":
            case "removepersonalinformation":
            case "downloadcomponents":
            case "locationofcomponents":
            case "colors":
            case "color":
            case "index":
            case "rgb":
            case "targetscreensize":
            case "readonlyrecommended":
              break;
            default:
              tt = !1;
          }
          break;
        case "componentoptions":
          switch (n[3]) {
            case "toolbar":
            case "hideofficelogo":
            case "spreadsheetautofit":
            case "label":
            case "caption":
            case "maxheight":
            case "maxwidth":
            case "nextsheetnumber":
              break;
            default:
              tt = !1;
          }
          break;
        case "excelworkbook":
          switch (n[3]) {
            case "date1904":
              Y.WBProps.date1904 = !0;
              break;
            case "hidehorizontalscrollbar":
            case "hideverticalscrollbar":
            case "hideworkbooktabs":
            case "windowheight":
            case "windowwidth":
            case "windowtopx":
            case "windowtopy":
            case "tabratio":
            case "protectstructure":
            case "protectwindow":
            case "protectwindows":
            case "activesheet":
            case "displayinknotes":
            case "firstvisiblesheet":
            case "supbook":
            case "sheetname":
            case "sheetindex":
            case "sheetindexfirst":
            case "sheetindexlast":
            case "dll":
            case "acceptlabelsinformulas":
            case "donotsavelinkvalues":
            case "iteration":
            case "maxiterations":
            case "maxchange":
            case "path":
            case "xct":
            case "count":
            case "selectedsheets":
            case "calculation":
            case "uncalced":
            case "startupprompt":
            case "crn":
            case "externname":
            case "formula":
            case "colfirst":
            case "collast":
            case "wantadvise":
            case "boolean":
            case "error":
            case "text":
            case "ole":
            case "noautorecover":
            case "publishobjects":
            case "donotcalculatebeforesave":
            case "number":
            case "refmoder1c1":
            case "embedsavesmarttags":
              break;
            default:
              tt = !1;
          }
          break;
        case "workbookoptions":
          switch (n[3]) {
            case "owcversion":
            case "height":
            case "width":
              break;
            default:
              tt = !1;
          }
          break;
        case "worksheetoptions":
          switch (n[3]) {
            case "visible":
              if (n[0].slice(-2) !== "/>") if (n[1] === "/") switch (a.slice(I, n.index)) {
                case "SheetHidden":
                  he.Hidden = 1;
                  break;
                case "SheetVeryHidden":
                  he.Hidden = 2;
              }
              else I = n.index + n[0].length;
              break;
            case "header":
              h["!margins"] || wa(h["!margins"] = {}, "xlml"), isNaN(+pe(n[0]).Margin) || (h["!margins"].header = +pe(n[0]).Margin);
              break;
            case "footer":
              h["!margins"] || wa(h["!margins"] = {}, "xlml"), isNaN(+pe(n[0]).Margin) || (h["!margins"].footer = +pe(n[0]).Margin);
              break;
            case "pagemargins":
              var pt = pe(n[0]);
              h["!margins"] || wa(h["!margins"] = {}, "xlml"), isNaN(+pt.Top) || (h["!margins"].top = +pt.Top), isNaN(+pt.Left) || (h["!margins"].left = +pt.Left), isNaN(+pt.Right) || (h["!margins"].right = +pt.Right), isNaN(+pt.Bottom) || (h["!margins"].bottom = +pt.Bottom);
              break;
            case "displayrighttoleft":
              Y.Views || (Y.Views = []), Y.Views[0] || (Y.Views[0] = {}), Y.Views[0].RTL = !0;
              break;
            case "freezepanes":
            case "frozennosplit":
            case "splithorizontal":
            case "splitvertical":
            case "donotdisplaygridlines":
            case "activerow":
            case "activecol":
            case "toprowbottompane":
            case "leftcolumnrightpane":
            case "unsynced":
            case "print":
            case "printerrors":
            case "panes":
            case "scale":
            case "pane":
            case "number":
            case "layout":
            case "pagesetup":
            case "selected":
            case "protectobjects":
            case "enableselection":
            case "protectscenarios":
            case "validprinterinfo":
            case "horizontalresolution":
            case "verticalresolution":
            case "numberofcopies":
            case "activepane":
            case "toprowvisible":
            case "leftcolumnvisible":
            case "fittopage":
            case "rangeselection":
            case "papersizeindex":
            case "pagelayoutzoom":
            case "pagebreakzoom":
            case "filteron":
            case "fitwidth":
            case "fitheight":
            case "commentslayout":
            case "zoom":
            case "lefttoright":
            case "gridlines":
            case "allowsort":
            case "allowfilter":
            case "allowinsertrows":
            case "allowdeleterows":
            case "allowinsertcols":
            case "allowdeletecols":
            case "allowinserthyperlinks":
            case "allowformatcells":
            case "allowsizecols":
            case "allowsizerows":
            case "tabcolorindex":
            case "donotdisplayheadings":
            case "showpagelayoutzoom":
            case "blackandwhite":
            case "donotdisplayzeros":
            case "displaypagebreak":
            case "rowcolheadings":
            case "donotdisplayoutline":
            case "noorientation":
            case "allowusepivottables":
            case "zeroheight":
            case "viewablerange":
            case "selection":
            case "protectcontents":
              break;
            case "nosummaryrowsbelowdetail":
              h["!outline"] || (h["!outline"] = {}), h["!outline"].above = !0;
              break;
            case "nosummarycolumnsrightdetail":
              h["!outline"] || (h["!outline"] = {}), h["!outline"].left = !0;
              break;
            default:
              tt = !1;
          }
          break;
        case "pivottable":
        case "pivotcache":
          switch (n[3]) {
            case "immediateitemsondrop":
            case "showpagemultipleitemlabel":
            case "compactrowindent":
            case "location":
            case "pivotfield":
            case "orientation":
            case "layoutform":
            case "layoutsubtotallocation":
            case "layoutcompactrow":
            case "position":
            case "pivotitem":
            case "datatype":
            case "datafield":
            case "sourcename":
            case "parentfield":
            case "ptlineitems":
            case "ptlineitem":
            case "countofsameitems":
            case "item":
            case "itemtype":
            case "ptsource":
            case "cacheindex":
            case "consolidationreference":
            case "filename":
            case "reference":
            case "nocolumngrand":
            case "norowgrand":
            case "blanklineafteritems":
            case "hidden":
            case "subtotal":
            case "basefield":
            case "mapchilditems":
            case "function":
            case "refreshonfileopen":
            case "printsettitles":
            case "mergelabels":
            case "defaultversion":
            case "refreshname":
            case "refreshdate":
            case "refreshdatecopy":
            case "versionlastrefresh":
            case "versionlastupdate":
            case "versionupdateablemin":
            case "versionrefreshablemin":
            case "calculation":
              break;
            default:
              tt = !1;
          }
          break;
        case "pagebreaks":
          switch (n[3]) {
            case "colbreaks":
            case "colbreak":
            case "rowbreaks":
            case "rowbreak":
            case "colstart":
            case "colend":
            case "rowend":
              break;
            default:
              tt = !1;
          }
          break;
        case "autofilter":
          switch (n[3]) {
            case "autofiltercolumn":
            case "autofiltercondition":
            case "autofilterand":
            case "autofilteror":
              break;
            default:
              tt = !1;
          }
          break;
        case "querytable":
          switch (n[3]) {
            case "id":
            case "autoformatfont":
            case "autoformatpattern":
            case "querysource":
            case "querytype":
            case "enableredirections":
            case "refreshedinxl9":
            case "urlstring":
            case "htmltables":
            case "connection":
            case "commandtext":
            case "refreshinfo":
            case "notitles":
            case "nextid":
            case "columninfo":
            case "overwritecells":
            case "donotpromptforfile":
            case "textwizardsettings":
            case "source":
            case "number":
            case "decimal":
            case "thousandseparator":
            case "trailingminusnumbers":
            case "formatsettings":
            case "fieldtype":
            case "delimiters":
            case "tab":
            case "comma":
            case "autoformatname":
            case "versionlastedit":
            case "versionlastrefresh":
              break;
            default:
              tt = !1;
          }
          break;
        case "datavalidation":
          switch (n[3]) {
            case "range":
            case "type":
            case "min":
            case "max":
            case "sort":
            case "descending":
            case "order":
            case "casesensitive":
            case "value":
            case "errorstyle":
            case "errormessage":
            case "errortitle":
            case "inputmessage":
            case "inputtitle":
            case "combohide":
            case "inputhide":
            case "condition":
            case "qualifier":
            case "useblank":
            case "value1":
            case "value2":
            case "format":
            case "cellrangelist":
              break;
            default:
              tt = !1;
          }
          break;
        case "sorting":
        case "conditionalformatting":
          switch (n[3]) {
            case "range":
            case "type":
            case "min":
            case "max":
            case "sort":
            case "descending":
            case "order":
            case "casesensitive":
            case "value":
            case "errorstyle":
            case "errormessage":
            case "errortitle":
            case "cellrangelist":
            case "inputmessage":
            case "inputtitle":
            case "combohide":
            case "inputhide":
            case "condition":
            case "qualifier":
            case "useblank":
            case "value1":
            case "value2":
            case "format":
              break;
            default:
              tt = !1;
          }
          break;
        case "mapinfo":
        case "schema":
        case "data":
          switch (n[3]) {
            case "map":
            case "entry":
            case "range":
            case "xpath":
            case "field":
            case "xsdtype":
            case "filteron":
            case "aggregate":
            case "elementtype":
            case "attributetype":
            case "schema":
            case "element":
            case "complextype":
            case "datatype":
            case "all":
            case "attribute":
            case "extends":
            case "row":
              break;
            default:
              tt = !1;
          }
          break;
        case "smarttags":
          break;
        default:
          tt = !1;
      }
      if (tt || n[3].match(/!\[CDATA/)) break;
      if (!c[c.length - 1][1]) throw "Unrecognized tag: " + n[3] + "|" + c.join("|");
      if (c[c.length - 1][0] === "customdocumentproperties") {
        if (n[0].slice(-2) === "/>") break;
        n[1] === "/" ? $h(F, te, P, a.slice(I, n.index)) : (P = n, I = n.index + n[0].length);
        break;
      }
      if (t.WTF) throw "Unrecognized tag: " + n[3] + "|" + c.join("|");
  }
  var mt = {};
  return t.bookSheets || t.bookProps || (mt.Sheets = f), mt.SheetNames = u, mt.Workbook = Y, mt.SSF = st(be), mt.Props = C, mt.Custprops = F, mt.bookType = "xlml", mt;
}
function qs(e, r) {
  switch (Oi(r = r || {}), r.type || "base64") {
    case "base64":
      return Fs(hr(e), r);
    case "binary":
    case "buffer":
    case "file":
      return Fs(e, r);
    case "array":
      return Fs(Pr(e), r);
  }
}
function Bl(e, r) {
  var t = [];
  return e.Props && t.push((function(a, n) {
    var s = [];
    return gt(js).map(function(i) {
      for (var l = 0; l < Wr.length; ++l) if (Wr[l][1] == i) return Wr[l];
      for (l = 0; l < fa.length; ++l) if (fa[l][1] == i) return fa[l];
      throw i;
    }).forEach(function(i) {
      if (a[i[1]] != null) {
        var l = n && n.Props && n.Props[i[1]] != null ? n.Props[i[1]] : a[i[1]];
        i[2] === "date" && (l = new Date(l).toISOString().replace(/\.\d*Z/, "Z")), typeof l == "number" ? l = String(l) : l === !0 || l === !1 ? l = l ? "1" : "0" : l instanceof Date && (l = new Date(l).toISOString().replace(/\.\d*Z/, "")), s.push($t(js[i[1]] || i[1], l));
      }
    }), ne("DocumentProperties", s.join(""), { xmlns: dn });
  })(e.Props, r)), e.Custprops && t.push((function(a, n) {
    var s = ["Worksheets", "SheetNames"], i = "CustomDocumentProperties", l = [];
    return a && gt(a).forEach(function(o) {
      if (Object.prototype.hasOwnProperty.call(a, o)) {
        for (var c = 0; c < Wr.length; ++c) if (o == Wr[c][1]) return;
        for (c = 0; c < fa.length; ++c) if (o == fa[c][1]) return;
        for (c = 0; c < s.length; ++c) if (o == s[c]) return;
        var f = a[o], u = "string";
        typeof f == "number" ? (u = "float", f = String(f)) : f === !0 || f === !1 ? (u = "boolean", f = f ? "1" : "0") : f = String(f), l.push(ne(Ji(o), f, { "dt:dt": u }));
      }
    }), n && gt(n).forEach(function(o) {
      if (Object.prototype.hasOwnProperty.call(n, o) && (!a || !Object.prototype.hasOwnProperty.call(a, o))) {
        var c = n[o], f = "string";
        typeof c == "number" ? (f = "float", c = String(c)) : c === !0 || c === !1 ? (f = "boolean", c = c ? "1" : "0") : c instanceof Date ? (f = "dateTime.tz", c = c.toISOString()) : c = String(c), l.push(ne(Ji(o), c, { "dt:dt": f }));
      }
    }), "<" + i + ' xmlns="' + dn + '">' + l.join("") + "</" + i + ">";
  })(e.Props, e.Custprops)), t.join("");
}
function Wl(e) {
  return (((e || {}).Workbook || {}).WBProps || {}).date1904 ? '<ExcelWorkbook xmlns="urn:schemas-microsoft-com:office:excel"><Date1904/></ExcelWorkbook>' : "";
}
function zl(e, r) {
  var t = ['<Style ss:ID="Default" ss:Name="Normal"><NumberFormat/></Style>'];
  return r.cellXfs.forEach(function(a, n) {
    var s = [];
    s.push(ne("NumberFormat", null, { "ss:Format": Be(be[a.numFmtId]) }));
    var i = { "ss:ID": "s" + (21 + n) };
    t.push(ne("Style", s.join(""), i));
  }), ne("Styles", t.join(""));
}
function Hl(e) {
  return ne("NamedRange", null, { "ss:Name": e.Name.slice(0, 6) == "_xlnm." ? e.Name.slice(6) : e.Name, "ss:RefersTo": "=" + Cn(e.Ref, { r: 0, c: 0 }) });
}
function Vl(e) {
  if (!((e || {}).Workbook || {}).Names) return "";
  for (var r = e.Workbook.Names, t = [], a = 0; a < r.length; ++a) {
    var n = r[a];
    n.Sheet == null && (n.Name.match(/^_xlfn\./) || t.push(Hl(n)));
  }
  return ne("Names", t.join(""));
}
function $l(e, r, t, a) {
  if (!e || !((a || {}).Workbook || {}).Names) return "";
  for (var n = a.Workbook.Names, s = [], i = 0; i < n.length; ++i) {
    var l = n[i];
    l.Sheet == t && (l.Name.match(/^_xlfn\./) || s.push(Hl(l)));
  }
  return s.join("");
}
function Gl(e, r, t, a) {
  if (!e) return "";
  var n = [];
  if (e["!margins"] && (n.push("<PageSetup>"), e["!margins"].header && n.push(ne("Header", null, { "x:Margin": e["!margins"].header })), e["!margins"].footer && n.push(ne("Footer", null, { "x:Margin": e["!margins"].footer })), n.push(ne("PageMargins", null, { "x:Bottom": e["!margins"].bottom || "0.75", "x:Left": e["!margins"].left || "0.7", "x:Right": e["!margins"].right || "0.7", "x:Top": e["!margins"].top || "0.75" })), n.push("</PageSetup>")), a && a.Workbook && a.Workbook.Sheets && a.Workbook.Sheets[t]) if (a.Workbook.Sheets[t].Hidden) n.push(ne("Visible", a.Workbook.Sheets[t].Hidden == 1 ? "SheetHidden" : "SheetVeryHidden", {}));
  else {
    for (var s = 0; s < t && (!a.Workbook.Sheets[s] || a.Workbook.Sheets[s].Hidden); ++s) ;
    s == t && n.push("<Selected/>");
  }
  return ((((a || {}).Workbook || {}).Views || [])[0] || {}).RTL && n.push("<DisplayRightToLeft/>"), e["!protect"] && (n.push($t("ProtectContents", "True")), e["!protect"].objects && n.push($t("ProtectObjects", "True")), e["!protect"].scenarios && n.push($t("ProtectScenarios", "True")), e["!protect"].selectLockedCells == null || e["!protect"].selectLockedCells ? e["!protect"].selectUnlockedCells == null || e["!protect"].selectUnlockedCells || n.push($t("EnableSelection", "UnlockedCells")) : n.push($t("EnableSelection", "NoSelection")), [["formatCells", "AllowFormatCells"], ["formatColumns", "AllowSizeCols"], ["formatRows", "AllowSizeRows"], ["insertColumns", "AllowInsertCols"], ["insertRows", "AllowInsertRows"], ["insertHyperlinks", "AllowInsertHyperlinks"], ["deleteColumns", "AllowDeleteCols"], ["deleteRows", "AllowDeleteRows"], ["sort", "AllowSort"], ["autoFilter", "AllowFilter"], ["pivotTables", "AllowUsePivotTables"]].forEach(function(i) {
    e["!protect"][i[0]] && n.push("<" + i[1] + "/>");
  })), n.length == 0 ? "" : ne("WorksheetOptions", n.join(""), { xmlns: us });
}
function Xl(e, r, t, a, n, s, i) {
  if (!e || e.v == null && e.f == null) return "";
  var l = {};
  if (e.f && (l["ss:Formula"] = "=" + Be(Cn(e.f, i))), e.F && e.F.slice(0, r.length) == r) {
    var o = ft(e.F.slice(r.length + 1));
    l["ss:ArrayRange"] = "RC:R" + (o.r == i.r ? "" : "[" + (o.r - i.r) + "]") + "C" + (o.c == i.c ? "" : "[" + (o.c - i.c) + "]");
  }
  if (e.l && e.l.Target && (l["ss:HRef"] = Be(e.l.Target), e.l.Tooltip && (l["x:HRefScreenTip"] = Be(e.l.Tooltip))), t["!merges"]) for (var c = t["!merges"], f = 0; f != c.length; ++f) c[f].s.c == i.c && c[f].s.r == i.r && (c[f].e.c > c[f].s.c && (l["ss:MergeAcross"] = c[f].e.c - c[f].s.c), c[f].e.r > c[f].s.r && (l["ss:MergeDown"] = c[f].e.r - c[f].s.r));
  var u = "", h = "";
  switch (e.t) {
    case "z":
      if (!a.sheetStubs) return "";
      break;
    case "n":
      isFinite(e.v) ? (u = "Number", h = String(e.v)) : (u = "Error", h = Lt[isNaN(e.v) ? 36 : 7]);
      break;
    case "b":
      u = "Boolean", h = e.v ? "1" : "0";
      break;
    case "e":
      u = "Error", h = Lt[e.v];
      break;
    case "d":
      u = "DateTime", h = new Date(e.v).toISOString(), e.z == null && (e.z = e.z || be[14]);
      break;
    case "s":
      u = "String", h = ((e.v || "") + "").replace(hi, function(v) {
        return fi[v];
      }).replace(Ic, function(v) {
        return "&#x" + v.charCodeAt(0).toString(16).toUpperCase() + ";";
      });
  }
  var p = Mr(a.cellXfs, e, a);
  l["ss:StyleID"] = "s" + (21 + p), l["ss:Index"] = i.c + 1;
  var d, g = e.v != null ? h : "", m = e.t == "z" ? "" : '<Data ss:Type="' + u + '">' + g + "</Data>";
  return (e.c || []).length > 0 && (m += (d = e.c).map(function(v) {
    var y = ne("ss:Data", (v.t || "").replace(/(\r\n|[\r\n])/g, "&#10;"), { xmlns: "http://www.w3.org/TR/REC-html40" }), w = {};
    return v.a && (w["ss:Author"] = v.a), d.hidden || (w["ss:ShowAlways"] = "1"), ne("Comment", y, w);
  }).join("")), ne("Cell", m, l);
}
function jl(e, r) {
  var t = '<Row ss:Index="' + (e + 1) + '"';
  return r && (r.hpt && !r.hpx && (r.hpx = Ha(r.hpt)), r.hpx && (t += ' ss:AutoFitHeight="0" ss:Height="' + r.hpx + '"'), r.hidden && (t += ' ss:Hidden="1"')), t + ">";
}
function Jh(e, r, t) {
  var a = [], n = t.SheetNames[e], s = t.Sheets[n], i = s ? $l(s, 0, e, t) : "";
  return i.length > 0 && a.push("<Names>" + i + "</Names>"), i = s ? (function(l, o) {
    if (!l["!ref"]) return "";
    var c = Je(l["!ref"]), f = l["!merges"] || [], u = 0, h = [];
    l["!cols"] && l["!cols"].forEach(function(A, b) {
      jr(A);
      var _ = !!A.width, k = On(b, A), T = { "ss:Index": b + 1 };
      _ && (T["ss:Width"] = za(k.width)), A.hidden && (T["ss:Hidden"] = "1"), h.push(ne("Column", null, T));
    });
    for (var p = l["!data"] != null, d = { r: 0, c: 0 }, g = c.s.r; g <= c.e.r; ++g) {
      var m = [jl(g, (l["!rows"] || [])[g])];
      d.r = g;
      for (var v = c.s.c; v <= c.e.c; ++v) {
        d.c = v;
        var y = !1;
        for (u = 0; u != f.length; ++u) if (!(f[u].s.c > v || f[u].s.r > g || f[u].e.c < v || f[u].e.r < g)) {
          f[u].s.c == v && f[u].s.r == g || (y = !0);
          break;
        }
        if (!y) {
          var w = De(v) + Xe(g), E = p ? (l["!data"][g] || [])[v] : l[w];
          m.push(Xl(E, w, l, o, 0, 0, d));
        }
      }
      m.push("</Row>"), m.length > 2 && h.push(m.join(""));
    }
    return h.join("");
  })(s, r) : "", i.length > 0 && a.push("<Table>" + i + "</Table>"), a.push(Gl(s, 0, e, t)), s && s["!autofilter"] && a.push('<AutoFilter x:Range="' + Cn(Ua(s["!autofilter"].ref), { r: 0, c: 0 }) + '" xmlns="urn:schemas-microsoft-com:office:excel"></AutoFilter>'), a.join("");
}
function qh(e) {
  var r = {}, t = e.content;
  if (t.l = 28, r.AnsiUserType = t.read_shift(0, "lpstr-ansi"), r.AnsiClipboardFormat = (function(n) {
    return co(n, 1);
  })(t), t.length - t.l <= 4) return r;
  var a = t.read_shift(4);
  return a == 0 || a > 40 ? r : (t.l -= 4, r.Reserved1 = t.read_shift(0, "lpstr-ansi"), t.length - t.l <= 4 || (a = t.read_shift(4)) !== 1907505652 ? r : (r.UnicodeClipboardFormat = (function(n) {
    return co(n, 2);
  })(t), (a = t.read_shift(4)) == 0 || a > 40 ? r : (t.l -= 4, void (r.Reserved2 = t.read_shift(0, "lpwstr")))));
}
var Qh = [60, 1084, 2066, 2165, 2175];
function Zh(e, r, t, a, n) {
  var s = a, i = [], l = t.slice(t.l, t.l + s);
  if (n && n.enc && n.enc.insitu && l.length > 0) switch (e) {
    case 9:
    case 521:
    case 1033:
    case 2057:
    case 47:
    case 405:
    case 225:
    case 406:
    case 312:
    case 404:
    case 10:
    case 133:
      break;
    default:
      n.enc.insitu(l);
  }
  i.push(l), t.l += s;
  for (var o = Vr(t, t.l), c = Zs[o], f = 0; c != null && Qh.indexOf(o) > -1; ) s = Vr(t, t.l + 2), f = t.l + 4, o == 2066 ? f += 4 : o != 2165 && o != 2175 || (f += 12), l = t.slice(f, t.l + 4 + s), i.push(l), t.l += 4 + s, c = Zs[o = Vr(t, t.l)];
  var u = xt(i);
  Ft(u, 0);
  var h = 0;
  u.lens = [];
  for (var p = 0; p < i.length; ++p) u.lens.push(h), h += i[p].length;
  if (u.length < a) throw "XLS Record 0x" + e.toString(16) + " Truncated: " + u.length + " < " + a;
  return r.f(u, u.length, n);
}
function Cr(e, r, t) {
  if (e.t !== "z" && e.XF) {
    var a = 0;
    try {
      a = e.z || e.XF.numFmtId || 0, r.cellNF && e.z == null && (e.z = be[a]);
    } catch (s) {
      if (r.WTF) throw s;
    }
    if (!r || r.cellText !== !1) try {
      e.t === "e" ? e.w = e.w || Lt[e.v] : a === 0 || a == "General" ? e.t === "n" ? (0 | e.v) === e.v ? e.w = e.v.toString(10) : e.w = hn(e.v) : e.w = ma(e.v) : e.w = lr(a, e.v, { date1904: !!t, dateNF: r && r.dateNF });
    } catch (s) {
      if (r.WTF) throw s;
    }
    if (r.cellDates && a && e.t == "n" && ur(be[a] || String(a))) {
      var n = Fr(e.v + (t ? 1462 : 0));
      n && (e.t = "d", e.v = new Date(Date.UTC(n.y, n.m - 1, n.d, n.H, n.M, n.S, n.u)));
    }
  }
}
function Hn(e, r, t) {
  return { v: e, ixfe: r, t };
}
function eu(e, r) {
  var t = { opts: {} }, a = {}, n = {};
  r.dense && (n["!data"] = []);
  var s, i, l, o, c, f, u, h, p = {}, d = {}, g = null, m = [], v = "", y = {}, w = "", E = {}, A = [], b = [], _ = [], k = { Sheets: [], WBProps: { date1904: !1 }, Views: [{}] }, T = {}, S = !1, C = function(x) {
    return x < 8 ? Da[x] : x < 64 && _[x - 8] || Da[x];
  }, F = function(x, N, O) {
    if ((S || !(se > 1)) && !(O.sheetRows && x.r >= O.sheetRows)) {
      if (O.cellStyles && N.XF && N.XF.data && (function(D, M) {
        var j, q = D.XF.data;
        q && q.patternType && M && M.cellStyles && (D.s = {}, D.s.patternType = q.patternType, (j = gn(C(q.icvFore))) && (D.s.fgColor = { rgb: j }), (j = gn(C(q.icvBack))) && (D.s.bgColor = { rgb: j }));
      })(N, O), delete N.ixfe, delete N.XF, s = x, w = Ge(x), d && d.s && d.e || (d = { s: { r: 0, c: 0 }, e: { r: 0, c: 0 } }), x.r < d.s.r && (d.s.r = x.r), x.c < d.s.c && (d.s.c = x.c), x.r + 1 > d.e.r && (d.e.r = x.r + 1), x.c + 1 > d.e.c && (d.e.c = x.c + 1), O.cellFormula && N.f) {
        for (var L = 0; L < A.length; ++L) if (!(A[L][0].s.c > x.c || A[L][0].s.r > x.r || A[L][0].e.c < x.c || A[L][0].e.r < x.r)) {
          N.F = We(A[L][0]), A[L][0].s.c == x.c && A[L][0].s.r == x.r || delete N.f, N.f && (N.f = "" + Qt(A[L][1], 0, x, z, I));
          break;
        }
      }
      O.dense ? (n["!data"][x.r] || (n["!data"][x.r] = []), n["!data"][x.r][x.c] = N) : n[w] = N;
    }
  }, I = { enc: !1, sbcch: 0, snames: [], sharedf: E, arrayf: A, rrtabid: [], lastuser: "", biff: 8, codepage: 0, winlocked: 0, cellStyles: !!r && !!r.cellStyles, WTF: !!r && !!r.wtf };
  r.password && (I.password = r.password);
  var P = [], W = [], U = [], G = [], B = !1, z = [];
  z.SheetNames = I.snames, z.sharedf = I.sharedf, z.arrayf = I.arrayf, z.names = [], z.XTI = [];
  var K, ee = 0, se = 0, H = 0, Y = [], he = [];
  I.codepage = 1200, yr(1200);
  for (var te = !1; e.l < e.length - 1; ) {
    var Q = e.l, ke = e.read_shift(2);
    if (ke === 0 && ee === 10) break;
    var ce = e.l === e.length ? 0 : e.read_shift(2), fe = Zs[ke];
    if (se == 0 && [9, 521, 1033, 2057].indexOf(ke) == -1) break;
    if (fe && fe.f) {
      if (r.bookSheets && ee === 133 && ke !== 133) break;
      if (ee = ke, fe.r === 2 || fe.r == 12) {
        var Ne = e.read_shift(2);
        if (ce -= 2, !I.enc && Ne !== ke && ((255 & Ne) << 8 | Ne >> 8) !== ke) throw new Error("rt mismatch: " + Ne + "!=" + ke);
        fe.r == 12 && (e.l += 10, ce -= 10);
      }
      var R = {};
      if (R = ke === 10 ? fe.f(e, ce, I) : Zh(ke, fe, e, ce, I), se == 0 && [9, 521, 1033, 2057].indexOf(ee) === -1) continue;
      switch (ke) {
        case 34:
          t.opts.Date1904 = k.WBProps.date1904 = R;
          break;
        case 134:
          t.opts.WriteProtect = !0;
          break;
        case 47:
          if (I.enc || (e.l = 0), I.enc = R, !r.password) throw new Error("File is password-protected");
          if (R.valid == null) throw new Error("Encryption scheme unsupported");
          if (!R.valid) throw new Error("Password is incorrect");
          break;
        case 92:
          I.lastuser = R;
          break;
        case 66:
          var Ce = Number(R);
          switch (Ce) {
            case 21010:
              Ce = 1200;
              break;
            case 32768:
              Ce = 1e4;
              break;
            case 32769:
              Ce = 1252;
          }
          yr(I.codepage = Ce), te = !0;
          break;
        case 317:
          I.rrtabid = R;
          break;
        case 25:
          I.winlocked = R;
          break;
        case 439:
          t.opts.RefreshAll = R;
          break;
        case 12:
          t.opts.CalcCount = R;
          break;
        case 16:
          t.opts.CalcDelta = R;
          break;
        case 17:
          t.opts.CalcIter = R;
          break;
        case 13:
          t.opts.CalcMode = R;
          break;
        case 14:
          t.opts.CalcPrecision = R;
          break;
        case 95:
          t.opts.CalcSaveRecalc = R;
          break;
        case 15:
          I.CalcRefMode = R;
          break;
        case 2211:
          t.opts.FullCalc = R;
          break;
        case 129:
          R.fDialog && (n["!type"] = "dialog"), R.fBelow || ((n["!outline"] || (n["!outline"] = {})).above = !0), R.fRight || ((n["!outline"] || (n["!outline"] = {})).left = !0);
          break;
        case 67:
        case 579:
        case 1091:
        case 224:
          b.push(R);
          break;
        case 430:
          z.push([R]), z[z.length - 1].XTI = [];
          break;
        case 35:
        case 547:
          z[z.length - 1].push(R);
          break;
        case 24:
        case 536:
          K = { Name: R.Name, Ref: Qt(R.rgce, 0, null, z, I) }, R.itab > 0 && (K.Sheet = R.itab - 1), z.names.push(K), z[0] || (z[0] = [], z[0].XTI = []), z[z.length - 1].push(R), R.Name == "_xlnm._FilterDatabase" && R.itab > 0 && R.rgce && R.rgce[0] && R.rgce[0][0] && R.rgce[0][0][0] == "PtgArea3d" && (he[R.itab - 1] = { ref: We(R.rgce[0][0][1][2]) });
          break;
        case 22:
          I.ExternCount = R;
          break;
        case 23:
          z.length == 0 && (z[0] = [], z[0].XTI = []), z[z.length - 1].XTI = z[z.length - 1].XTI.concat(R), z.XTI = z.XTI.concat(R);
          break;
        case 2196:
          if (I.biff < 8) break;
          K != null && (K.Comment = R[1]);
          break;
        case 18:
          n["!protect"] = R;
          break;
        case 19:
          R !== 0 && I.WTF && console.error("Password verifier: " + R);
          break;
        case 133:
          p[I.biff == 4 ? I.snames.length : R.pos] = R, I.snames.push(R.name);
          break;
        case 10:
          if (--se ? !S : S) break;
          if (d.e) {
            if (d.e.r > 0 && d.e.c > 0) {
              if (d.e.r--, d.e.c--, n["!ref"] = We(d), r.sheetRows && r.sheetRows <= d.e.r) {
                var bt = d.e.r;
                d.e.r = r.sheetRows - 1, n["!fullref"] = n["!ref"], n["!ref"] = We(d), d.e.r = bt;
              }
              d.e.r++, d.e.c++;
            }
            P.length > 0 && (n["!merges"] = P), W.length > 0 && (n["!objects"] = W), U.length > 0 && (n["!cols"] = U), G.length > 0 && (n["!rows"] = G), k.Sheets.push(T);
          }
          v === "" ? y = n : a[v] = n, n = {}, r.dense && (n["!data"] = []);
          break;
        case 9:
        case 521:
        case 1033:
        case 2057:
          if (I.biff === 8 && (I.biff = { 9: 2, 521: 3, 1033: 4 }[ke] || { 512: 2, 768: 3, 1024: 4, 1280: 5, 1536: 8, 2: 2, 7: 2 }[R.BIFFVer] || 8), I.biffguess = R.BIFFVer == 0, R.BIFFVer == 0 && R.dt == 4096 && (I.biff = 5, te = !0, yr(I.codepage = 28591)), I.biff == 4 && 256 & R.dt && (S = !0), I.biff == 8 && R.BIFFVer == 0 && R.dt == 16 && (I.biff = 2), se++ && !S) break;
          if (n = {}, r.dense && (n["!data"] = []), I.biff < 8 && !te && (te = !0, yr(I.codepage = r.codepage || 1252)), I.biff == 4 && S) v = (p[I.snames.indexOf(v) + 1] || { name: "" }).name;
          else if (I.biff < 5 || R.BIFFVer == 0 && R.dt == 4096) {
            v === "" && (v = "Sheet1"), d = { s: { r: 0, c: 0 }, e: { r: 0, c: 0 } };
            var tt = { pos: e.l - ce, name: v };
            p[tt.pos] = tt, I.snames.push(v);
          } else v = (p[Q] || { name: "" }).name;
          R.dt == 32 && (n["!type"] = "chart"), R.dt == 64 && (n["!type"] = "macro"), P = [], W = [], I.arrayf = A = [], U = [], G = [], B = !1, T = { Hidden: (p[Q] || { hs: 0 }).hs, name: v };
          break;
        case 515:
        case 3:
        case 2:
          n["!type"] == "chart" && (r.dense ? (n["!data"][R.r] || [])[R.c] : n[De(R.c) + Xe(R.r)]) && ++R.c, f = { ixfe: R.ixfe, XF: b[R.ixfe] || {}, v: R.val, t: "n" }, H > 0 && (f.z = f.XF && f.XF.numFmtId && Y[f.XF.numFmtId] || Y[f.ixfe >> 8 & 63]), Cr(f, r, t.opts.Date1904), F({ c: R.c, r: R.r }, f, r);
          break;
        case 5:
        case 517:
          f = { ixfe: R.ixfe, XF: b[R.ixfe], v: R.val, t: R.t }, H > 0 && (f.z = f.XF && f.XF.numFmtId && Y[f.XF.numFmtId] || Y[f.ixfe >> 8 & 63]), Cr(f, r, t.opts.Date1904), F({ c: R.c, r: R.r }, f, r);
          break;
        case 638:
          f = { ixfe: R.ixfe, XF: b[R.ixfe], v: R.rknum, t: "n" }, H > 0 && (f.z = f.XF && f.XF.numFmtId && Y[f.XF.numFmtId] || Y[f.ixfe >> 8 & 63]), Cr(f, r, t.opts.Date1904), F({ c: R.c, r: R.r }, f, r);
          break;
        case 189:
          for (var pt = R.c; pt <= R.C; ++pt) {
            var mt = R.rkrec[pt - R.c][0];
            f = { ixfe: mt, XF: b[mt], v: R.rkrec[pt - R.c][1], t: "n" }, H > 0 && (f.z = f.XF && f.XF.numFmtId && Y[f.XF.numFmtId] || Y[f.ixfe >> 8 & 63]), Cr(f, r, t.opts.Date1904), F({ c: pt, r: R.r }, f, r);
          }
          break;
        case 6:
        case 518:
        case 1030:
          if (R.val == "String") {
            g = R;
            break;
          }
          if ((f = Hn(R.val, R.cell.ixfe, R.tt)).XF = b[f.ixfe], r.cellFormula) {
            var ue = R.formula;
            if (ue && ue[0] && ue[0][0] && ue[0][0][0] == "PtgExp") {
              var _t = ue[0][0][1][0], Nt = ue[0][0][1][1], Ie = Ge({ r: _t, c: Nt });
              E[Ie] ? f.f = "" + Qt(R.formula, 0, R.cell, z, I) : f.F = ((r.dense ? (n["!data"][_t] || [])[Nt] : n[Ie]) || {}).F;
            } else f.f = "" + Qt(R.formula, 0, R.cell, z, I);
          }
          H > 0 && (f.z = f.XF && f.XF.numFmtId && Y[f.XF.numFmtId] || Y[f.ixfe >> 8 & 63]), Cr(f, r, t.opts.Date1904), F(R.cell, f, r), g = R;
          break;
        case 7:
        case 519:
          if (!g) throw new Error("String record expects Formula");
          g.val = R, (f = Hn(R, g.cell.ixfe, "s")).XF = b[f.ixfe], r.cellFormula && (f.f = "" + Qt(g.formula, 0, g.cell, z, I)), H > 0 && (f.z = f.XF && f.XF.numFmtId && Y[f.XF.numFmtId] || Y[f.ixfe >> 8 & 63]), Cr(f, r, t.opts.Date1904), F(g.cell, f, r), g = null;
          break;
        case 33:
        case 545:
          A.push(R);
          var je = Ge(R[0].s);
          if (i = r.dense ? (n["!data"][R[0].s.r] || [])[R[0].s.c] : n[je], r.cellFormula && i) {
            if (!g || !je || !i) break;
            i.f = "" + Qt(R[1], 0, R[0], z, I), i.F = We(R[0]);
          }
          break;
        case 1212:
          if (!r.cellFormula) break;
          if (w) {
            if (!g) break;
            E[Ge(g.cell)] = R[0], ((i = r.dense ? (n["!data"][g.cell.r] || [])[g.cell.c] : n[Ge(g.cell)]) || {}).f = "" + Qt(R[0], 0, s, z, I);
          }
          break;
        case 253:
          f = Hn(m[R.isst].t, R.ixfe, "s"), m[R.isst].h && (f.h = m[R.isst].h), f.XF = b[f.ixfe], H > 0 && (f.z = f.XF && f.XF.numFmtId && Y[f.XF.numFmtId] || Y[f.ixfe >> 8 & 63]), Cr(f, r, t.opts.Date1904), F({ c: R.c, r: R.r }, f, r);
          break;
        case 513:
          r.sheetStubs && (f = { ixfe: R.ixfe, XF: b[R.ixfe], t: "z" }, H > 0 && (f.z = f.XF && f.XF.numFmtId && Y[f.XF.numFmtId] || Y[f.ixfe >> 8 & 63]), Cr(f, r, t.opts.Date1904), F({ c: R.c, r: R.r }, f, r));
          break;
        case 190:
          if (r.sheetStubs) for (var Pe = R.c; Pe <= R.C; ++Pe) {
            var at = R.ixfe[Pe - R.c];
            f = { ixfe: at, XF: b[at], t: "z" }, H > 0 && (f.z = f.XF && f.XF.numFmtId && Y[f.XF.numFmtId] || Y[f.ixfe >> 8 & 63]), Cr(f, r, t.opts.Date1904), F({ c: Pe, r: R.r }, f, r);
          }
          break;
        case 214:
        case 516:
        case 4:
          (f = Hn(R.val, R.ixfe, "s")).XF = b[f.ixfe], H > 0 && (f.z = f.XF && f.XF.numFmtId && Y[f.XF.numFmtId] || Y[f.ixfe >> 8 & 63]), Cr(f, r, t.opts.Date1904), F({ c: R.c, r: R.r }, f, r);
          break;
        case 0:
        case 512:
          se === 1 && (d = R);
          break;
        case 252:
          m = R;
          break;
        case 1054:
          if (I.biff >= 3 && I.biff <= 4) {
            Y[H++] = R[1];
            for (var ct = 0; ct < H + 163 && be[ct] != R[1]; ++ct) ;
            ct >= 163 && Zr(R[1], H + 163);
          } else Zr(R[1], R[0]);
          break;
        case 30:
          Y[H++] = R;
          for (var Te = 0; Te < H + 163 && be[Te] != R; ++Te) ;
          Te >= 163 && Zr(R, H + 163);
          break;
        case 229:
          P = P.concat(R);
          break;
        case 93:
          W[R.cmo[0]] = I.lastobj = R;
          break;
        case 438:
          I.lastobj.TxO = R;
          break;
        case 127:
          I.lastobj.ImData = R;
          break;
        case 440:
          for (c = R[0].s.r; c <= R[0].e.r; ++c) for (o = R[0].s.c; o <= R[0].e.c; ++o) (i = r.dense ? (n["!data"][c] || [])[o] : n[Ge({ c: o, r: c })]) && (i.l = R[1]);
          break;
        case 2048:
          for (c = R[0].s.r; c <= R[0].e.r; ++c) for (o = R[0].s.c; o <= R[0].e.c; ++o) (i = r.dense ? (n["!data"][c] || [])[o] : n[Ge({ c: o, r: c })]) && i.l && (i.l.Tooltip = R[1]);
          break;
        case 28:
          if ((i = r.dense ? (n["!data"][R[0].r] || [])[R[0].c] : n[Ge(R[0])]) || (r.dense ? (n["!data"][R[0].r] || (n["!data"][R[0].r] = []), i = n["!data"][R[0].r][R[0].c] = { t: "z" }) : i = n[Ge(R[0])] = { t: "z" }, d.e.r = Math.max(d.e.r, R[0].r), d.s.r = Math.min(d.s.r, R[0].r), d.e.c = Math.max(d.e.c, R[0].c), d.s.c = Math.min(d.s.c, R[0].c)), i.c || (i.c = []), I.biff <= 5 && I.biff >= 2) l = { a: "SheetJ5", t: R[1] };
          else {
            var rt = W[R[2]];
            l = { a: R[1], t: rt.TxO.t }, R[3] == null || 2 & R[3] || (i.c.hidden = !0);
          }
          i.c.push(l);
          break;
        case 2173:
          E0(b[R.ixfe], R.ext);
          break;
        case 125:
          if (!I.cellStyles) break;
          for (; R.e >= R.s; ) U[R.e--] = { width: R.w / 256, level: R.level || 0, hidden: !!(1 & R.flags) }, B || (B = !0, Ai(R.w / 256)), jr(U[R.e + 1]);
          break;
        case 520:
          var qe = {};
          R.level != null && (G[R.r] = qe, qe.level = R.level), R.hidden && (G[R.r] = qe, qe.hidden = !0), R.hpt && (G[R.r] = qe, qe.hpt = R.hpt, qe.hpx = Ha(R.hpt));
          break;
        case 38:
        case 39:
        case 40:
        case 41:
          n["!margins"] || wa(n["!margins"] = {}), n["!margins"][{ 38: "left", 39: "right", 40: "top", 41: "bottom" }[ke]] = R;
          break;
        case 161:
          n["!margins"] || wa(n["!margins"] = {}), n["!margins"].header = R.header, n["!margins"].footer = R.footer;
          break;
        case 574:
          R.RTL && (k.Views[0].RTL = !0);
          break;
        case 146:
          _ = R;
          break;
        case 2198:
          h = R;
          break;
        case 140:
          u = R;
          break;
        case 442:
          v ? T.CodeName = R || T.name : k.WBProps.CodeName = R || "ThisWorkbook";
      }
    } else fe || console.error("Missing Info for XLS Record 0x" + ke.toString(16)), e.l += ce;
  }
  return t.SheetNames = gt(p).sort(function(x, N) {
    return Number(x) - Number(N);
  }).map(function(x) {
    return p[x].name;
  }), r.bookSheets || (t.Sheets = a), !t.SheetNames.length && y["!ref"] ? (t.SheetNames.push("Sheet1"), t.Sheets && (t.Sheets.Sheet1 = y)) : t.Preamble = y, t.Sheets && he.forEach(function(x, N) {
    t.Sheets[t.SheetNames[N]]["!autofilter"] = x;
  }), t.Strings = m, t.SSF = st(be), I.enc && (t.Encryption = I.enc), h && (t.Themes = h), t.Metadata = {}, u !== void 0 && (t.Metadata.Country = u), z.names.length > 0 && (k.Names = z.names), t.Workbook = k, t;
}
var Kl = "e0859ff2f94f6810ab9108002b27b3d9", Yl = "02d5cdd59c2e1b10939708002b2cf9ae", tu = "05d5cdd59c2e1b10939708002b2cf9ae";
function Qs(e, r) {
  var t, a, n, s;
  if (r || (r = {}), Oi(r), cs(), r.codepage && os(r.codepage), e.FullPaths) {
    if (Ee.find(e, "/encryption")) throw new Error("File is password-protected");
    t = Ee.find(e, "!CompObj"), a = Ee.find(e, "/Workbook") || Ee.find(e, "/Book");
  } else {
    switch (r.type) {
      case "base64":
        e = sr(hr(e));
        break;
      case "binary":
        e = sr(e);
        break;
      case "buffer":
        break;
      case "array":
        Array.isArray(e) || (e = Array.prototype.slice.call(e));
    }
    Ft(e, 0), a = { content: e };
  }
  if (t && qh(t), r.bookProps && !r.bookSheets) n = {};
  else {
    var i = Ve ? "buffer" : "array";
    if (a && a.content) n = eu(a.content, r);
    else if ((s = Ee.find(e, "PerfectOffice_MAIN")) && s.content) n = ga.to_workbook(s.content, (r.type = i, r));
    else {
      if (!(s = Ee.find(e, "NativeContent_MAIN")) || !s.content) throw (s = Ee.find(e, "MN0")) && s.content ? new Error("Unsupported Works 4 for Mac file") : new Error("Cannot find Workbook stream");
      n = ga.to_workbook(s.content, (r.type = i, r));
    }
    r.bookVBA && e.FullPaths && Ee.find(e, "/_VBA_PROJECT_CUR/VBA/dir") && (n.vbaraw = (function(o) {
      var c = Ee.utils.cfb_new({ root: "R" });
      return o.FullPaths.forEach(function(f, u) {
        if (f.slice(-1) !== "/" && f.match(/_VBA_PROJECT_CUR/)) {
          var h = f.replace(/^[^\/]*/, "R").replace(/\/_VBA_PROJECT_CUR\u0000*/, "");
          Ee.utils.cfb_add(c, h, o.FileIndex[u].content);
        }
      }), Ee.write(c);
    })(e));
  }
  var l = {};
  return e.FullPaths && (function(o, c, f) {
    var u = Ee.find(o, "/!DocumentSummaryInformation");
    if (u && u.size > 0) try {
      var h = vo(u, $s, Yl);
      for (var p in h) c[p] = h[p];
    } catch (v) {
      if (f.WTF) throw v;
    }
    var d = Ee.find(o, "/!SummaryInformation");
    if (d && d.size > 0) try {
      var g = vo(d, Gs, Kl);
      for (var m in g) c[m] == null && (c[m] = g[m]);
    } catch (v) {
      if (f.WTF) throw v;
    }
    c.HeadingPairs && c.TitlesOfParts && (tl(c.HeadingPairs, c.TitlesOfParts, c, f), delete c.HeadingPairs, delete c.TitlesOfParts);
  })(e, l, r), n.Props = n.Custprops = l, r.bookFiles && (n.cfb = e), n;
}
function ru(e, r) {
  var t = r || {}, a = Ee.utils.cfb_new({ root: "R" }), n = "/Workbook";
  switch (t.bookType || "xls") {
    case "xls":
      t.bookType = "biff8";
    case "xla":
      t.bookType || (t.bookType = "xla");
    case "biff8":
      n = "/Workbook", t.biff = 8;
      break;
    case "biff5":
      n = "/Book", t.biff = 5;
      break;
    default:
      throw new Error("invalid type " + t.bookType + " for XLS CFB");
  }
  return Ee.utils.cfb_add(a, n, ql(e, t)), t.biff == 8 && (e.Props || e.Custprops) && (function(s, i) {
    var l, o = [], c = [], f = [], u = 0, h = ji($s, "n"), p = ji(Gs, "n");
    if (s.Props) for (l = gt(s.Props), u = 0; u < l.length; ++u) (Object.prototype.hasOwnProperty.call(h, l[u]) ? o : Object.prototype.hasOwnProperty.call(p, l[u]) ? c : f).push([l[u], s.Props[l[u]]]);
    if (s.Custprops) for (l = gt(s.Custprops), u = 0; u < l.length; ++u) Object.prototype.hasOwnProperty.call(s.Props || {}, l[u]) || (Object.prototype.hasOwnProperty.call(h, l[u]) ? o : Object.prototype.hasOwnProperty.call(p, l[u]) ? c : f).push([l[u], s.Custprops[l[u]]]);
    var d = [];
    for (u = 0; u < f.length; ++u) il.indexOf(f[u][0]) > -1 || el.indexOf(f[u][0]) > -1 || f[u][1] != null && d.push(f[u]);
    c.length && Ee.utils.cfb_add(i, "/SummaryInformation", go(c, Kl, p, Gs)), (o.length || d.length) && Ee.utils.cfb_add(i, "/DocumentSummaryInformation", go(o, Yl, h, $s, d.length ? d : null, tu));
  })(e, a), t.biff == 8 && e.vbaraw && (function(s, i) {
    i.FullPaths.forEach(function(l, o) {
      if (o != 0) {
        var c = l.replace(/^[\/]*[^\/]*[\/]/, "/_VBA_PROJECT_CUR/");
        c.slice(-1) !== "/" && Ee.utils.cfb_add(s, c, i.FileIndex[o].content);
      }
    });
  })(a, Ee.read(e.vbaraw, { type: typeof e.vbaraw == "string" ? "binary" : "buffer" })), a;
}
var Tn = { 0: { f: function(e, r) {
  var t = {}, a = e.l + r;
  t.r = e.read_shift(4), e.l += 4;
  var n = e.read_shift(2);
  e.l += 1;
  var s = e.read_shift(1);
  return e.l = a, 7 & s && (t.level = 7 & s), 16 & s && (t.hidden = !0), 32 & s && (t.hpt = n / 20), t;
} }, 1: { f: function(e) {
  return [pr(e)];
} }, 2: { f: function(e) {
  return [pr(e), ts(e), "n"];
} }, 3: { f: function(e) {
  return [pr(e), e.read_shift(1), "e"];
} }, 4: { f: function(e) {
  return [pr(e), e.read_shift(1), "b"];
} }, 5: { f: function(e) {
  return [pr(e), Jt(e), "n"];
} }, 6: { f: function(e) {
  return [pr(e), Yt(e), "str"];
} }, 7: { f: function(e) {
  return [pr(e), e.read_shift(4), "s"];
} }, 8: { f: function(e, r, t) {
  var a = e.l + r, n = pr(e);
  n.r = t["!row"];
  var s = [n, Yt(e), "str"];
  if (t.cellFormula) {
    e.l += 2;
    var i = zn(e, a - e.l, t);
    s[3] = Qt(i, 0, n, t.supbooks, t);
  } else e.l = a;
  return s;
} }, 9: { f: function(e, r, t) {
  var a = e.l + r, n = pr(e);
  n.r = t["!row"];
  var s = [n, Jt(e), "n"];
  if (t.cellFormula) {
    e.l += 2;
    var i = zn(e, a - e.l, t);
    s[3] = Qt(i, 0, n, t.supbooks, t);
  } else e.l = a;
  return s;
} }, 10: { f: function(e, r, t) {
  var a = e.l + r, n = pr(e);
  n.r = t["!row"];
  var s = [n, e.read_shift(1), "b"];
  if (t.cellFormula) {
    e.l += 2;
    var i = zn(e, a - e.l, t);
    s[3] = Qt(i, 0, n, t.supbooks, t);
  } else e.l = a;
  return s;
} }, 11: { f: function(e, r, t) {
  var a = e.l + r, n = pr(e);
  n.r = t["!row"];
  var s = [n, e.read_shift(1), "e"];
  if (t.cellFormula) {
    e.l += 2;
    var i = zn(e, a - e.l, t);
    s[3] = Qt(i, 0, n, t.supbooks, t);
  } else e.l = a;
  return s;
} }, 12: { f: function(e) {
  return [oa(e)];
} }, 13: { f: function(e) {
  return [oa(e), ts(e), "n"];
} }, 14: { f: function(e) {
  return [oa(e), e.read_shift(1), "e"];
} }, 15: { f: function(e) {
  return [oa(e), e.read_shift(1), "b"];
} }, 16: { f: Fl }, 17: { f: function(e) {
  return [oa(e), Yt(e), "str"];
} }, 18: { f: function(e) {
  return [oa(e), e.read_shift(4), "s"];
} }, 19: { f: Vs }, 20: {}, 21: {}, 22: {}, 23: {}, 24: {}, 25: {}, 26: {}, 27: {}, 28: {}, 29: {}, 30: {}, 31: {}, 32: {}, 33: {}, 34: {}, 35: { T: 1 }, 36: { T: -1 }, 37: { T: 1 }, 38: { T: -1 }, 39: { f: function(e, r, t) {
  var a = e.l + r, n = e.read_shift(4);
  e.l += 1;
  var s, i = e.read_shift(4), l = v1(e), o = "";
  try {
    s = V0(e, 0, t);
    try {
      o = Xn(e);
    } catch {
    }
  } catch {
    console.error("Could not parse defined name " + l);
  }
  32 & n && (l = "_xlnm." + l), e.l = a;
  var c = { Name: l, Ptg: s, Flags: n };
  return i < 268435455 && (c.Sheet = i), o && (c.Comment = o), c;
} }, 40: {}, 42: {}, 43: { f: function(e, r, t) {
  var a = {};
  a.sz = e.read_shift(2) / 20;
  var n = (function(o) {
    var c = o.read_shift(1);
    return o.l++, { fBold: 1 & c, fItalic: 2 & c, fUnderline: 4 & c, fStrikeout: 8 & c, fOutline: 16 & c, fShadow: 32 & c, fCondense: 64 & c, fExtend: 128 & c };
  })(e);
  switch (n.fItalic && (a.italic = 1), n.fCondense && (a.condense = 1), n.fExtend && (a.extend = 1), n.fShadow && (a.shadow = 1), n.fOutline && (a.outline = 1), n.fStrikeout && (a.strike = 1), e.read_shift(2) === 700 && (a.bold = 1), e.read_shift(2)) {
    case 1:
      a.vertAlign = "superscript";
      break;
    case 2:
      a.vertAlign = "subscript";
  }
  var s = e.read_shift(1);
  s != 0 && (a.underline = s);
  var i = e.read_shift(1);
  i > 0 && (a.family = i);
  var l = e.read_shift(1);
  switch (l > 0 && (a.charset = l), e.l++, a.color = (function(o) {
    var c = {}, f = o.read_shift(1) >>> 1, u = o.read_shift(1), h = o.read_shift(2, "i"), p = o.read_shift(1), d = o.read_shift(1), g = o.read_shift(1);
    switch (o.l++, f) {
      case 0:
        c.auto = 1;
        break;
      case 1:
        c.index = u;
        var m = Da[u];
        m && (c.rgb = gn(m));
        break;
      case 2:
        c.rgb = gn([p, d, g]);
        break;
      case 3:
        c.theme = u;
    }
    return h != 0 && (c.tint = h > 0 ? h / 32767 : h / 32768), c;
  })(e), e.read_shift(1)) {
    case 1:
      a.scheme = "major";
      break;
    case 2:
      a.scheme = "minor";
  }
  return a.name = Yt(e), a;
} }, 44: { f: function(e, r) {
  return [e.read_shift(2), Yt(e)];
} }, 45: { f: u0 }, 46: { f: d0 }, 47: { f: function(e, r) {
  var t = e.l + r, a = e.read_shift(2), n = e.read_shift(2);
  return e.l = t, { ixfe: a, numFmtId: n };
} }, 48: {}, 49: { f: function(e) {
  return e.read_shift(4, "i");
} }, 50: {}, 51: { f: function(e) {
  for (var r = [], t = e.read_shift(4); t-- > 0; ) r.push([e.read_shift(4), e.read_shift(4)]);
  return r;
} }, 52: { T: 1 }, 53: { T: -1 }, 54: { T: 1 }, 55: { T: -1 }, 56: { T: 1 }, 57: { T: -1 }, 58: {}, 59: {}, 60: { f: ml }, 62: { f: function(e) {
  return [pr(e), Vs(e), "is"];
} }, 63: { f: function(e) {
  var r = {};
  r.i = e.read_shift(4);
  var t = {};
  t.r = e.read_shift(4), t.c = e.read_shift(4), r.r = Ge(t);
  var a = e.read_shift(1);
  return 2 & a && (r.l = "1"), 8 & a && (r.a = "1"), r;
} }, 64: { f: function() {
} }, 65: {}, 66: {}, 67: {}, 68: {}, 69: {}, 70: {}, 128: {}, 129: { T: 1 }, 130: { T: -1 }, 131: { T: 1, f: tr, p: 0 }, 132: { T: -1 }, 133: { T: 1 }, 134: { T: -1 }, 135: { T: 1 }, 136: { T: -1 }, 137: { T: 1, f: function(e) {
  var r = e.read_shift(2);
  return e.l += 28, { RTL: 32 & r };
} }, 138: { T: -1 }, 139: { T: 1 }, 140: { T: -1 }, 141: { T: 1 }, 142: { T: -1 }, 143: { T: 1 }, 144: { T: -1 }, 145: { T: 1 }, 146: { T: -1 }, 147: { f: function(e, r) {
  var t = {}, a = e[e.l];
  return ++e.l, t.above = !(64 & a), t.left = !(128 & a), e.l += 18, t.name = m1(e), t;
} }, 148: { f: fh, p: 16 }, 151: { f: function() {
} }, 152: {}, 153: { f: function(e, r) {
  var t = {}, a = e.read_shift(4);
  t.defaultThemeVersion = e.read_shift(4);
  var n = r > 8 ? Yt(e) : "";
  return n.length > 0 && (t.CodeName = n), t.autoCompressPictures = !!(65536 & a), t.backupFile = !!(64 & a), t.checkCompatibility = !!(4096 & a), t.date1904 = !!(1 & a), t.filterPrivacy = !!(8 & a), t.hidePivotFieldList = !!(1024 & a), t.promptedSolutions = !!(16 & a), t.publishItems = !!(2048 & a), t.refreshAllConnections = !!(262144 & a), t.saveExternalLinkValues = !!(128 & a), t.showBorderUnselectedTables = !!(4 & a), t.showInkAnnotation = !!(32 & a), t.showObjects = ["all", "placeholders", "none"][a >> 13 & 3], t.showPivotChartFilter = !!(32768 & a), t.updateLinks = ["userSet", "never", "always"][a >> 8 & 3], t;
} }, 154: {}, 155: {}, 156: { f: function(e, r) {
  var t = {};
  return t.Hidden = e.read_shift(4), t.iTabID = e.read_shift(4), t.strRelID = ys(e), t.name = Yt(e), t;
} }, 157: {}, 158: {}, 159: { T: 1, f: function(e) {
  return [e.read_shift(4), e.read_shift(4)];
} }, 160: { T: -1 }, 161: { T: 1, f: da }, 162: { T: -1 }, 163: { T: 1 }, 164: { T: -1 }, 165: { T: 1 }, 166: { T: -1 }, 167: {}, 168: {}, 169: {}, 170: {}, 171: {}, 172: { T: 1 }, 173: { T: -1 }, 174: {}, 175: {}, 176: { f: uh }, 177: { T: 1 }, 178: { T: -1 }, 179: { T: 1 }, 180: { T: -1 }, 181: { T: 1 }, 182: { T: -1 }, 183: { T: 1 }, 184: { T: -1 }, 185: { T: 1 }, 186: { T: -1 }, 187: { T: 1 }, 188: { T: -1 }, 189: { T: 1 }, 190: { T: -1 }, 191: { T: 1 }, 192: { T: -1 }, 193: { T: 1 }, 194: { T: -1 }, 195: { T: 1 }, 196: { T: -1 }, 197: { T: 1 }, 198: { T: -1 }, 199: { T: 1 }, 200: { T: -1 }, 201: { T: 1 }, 202: { T: -1 }, 203: { T: 1 }, 204: { T: -1 }, 205: { T: 1 }, 206: { T: -1 }, 207: { T: 1 }, 208: { T: -1 }, 209: { T: 1 }, 210: { T: -1 }, 211: { T: 1 }, 212: { T: -1 }, 213: { T: 1 }, 214: { T: -1 }, 215: { T: 1 }, 216: { T: -1 }, 217: { T: 1 }, 218: { T: -1 }, 219: { T: 1 }, 220: { T: -1 }, 221: { T: 1 }, 222: { T: -1 }, 223: { T: 1 }, 224: { T: -1 }, 225: { T: 1 }, 226: { T: -1 }, 227: { T: 1 }, 228: { T: -1 }, 229: { T: 1 }, 230: { T: -1 }, 231: { T: 1 }, 232: { T: -1 }, 233: { T: 1 }, 234: { T: -1 }, 235: { T: 1 }, 236: { T: -1 }, 237: { T: 1 }, 238: { T: -1 }, 239: { T: 1 }, 240: { T: -1 }, 241: { T: 1 }, 242: { T: -1 }, 243: { T: 1 }, 244: { T: -1 }, 245: { T: 1 }, 246: { T: -1 }, 247: { T: 1 }, 248: { T: -1 }, 249: { T: 1 }, 250: { T: -1 }, 251: { T: 1 }, 252: { T: -1 }, 253: { T: 1 }, 254: { T: -1 }, 255: { T: 1 }, 256: { T: -1 }, 257: { T: 1 }, 258: { T: -1 }, 259: { T: 1 }, 260: { T: -1 }, 261: { T: 1 }, 262: { T: -1 }, 263: { T: 1 }, 264: { T: -1 }, 265: { T: 1 }, 266: { T: -1 }, 267: { T: 1 }, 268: { T: -1 }, 269: { T: 1 }, 270: { T: -1 }, 271: { T: 1 }, 272: { T: -1 }, 273: { T: 1 }, 274: { T: -1 }, 275: { T: 1 }, 276: { T: -1 }, 277: {}, 278: { T: 1 }, 279: { T: -1 }, 280: { T: 1 }, 281: { T: -1 }, 282: { T: 1 }, 283: { T: 1 }, 284: { T: -1 }, 285: { T: 1 }, 286: { T: -1 }, 287: { T: 1 }, 288: { T: -1 }, 289: { T: 1 }, 290: { T: -1 }, 291: { T: 1 }, 292: { T: -1 }, 293: { T: 1 }, 294: { T: -1 }, 295: { T: 1 }, 296: { T: -1 }, 297: { T: 1 }, 298: { T: -1 }, 299: { T: 1 }, 300: { T: -1 }, 301: { T: 1 }, 302: { T: -1 }, 303: { T: 1 }, 304: { T: -1 }, 305: { T: 1 }, 306: { T: -1 }, 307: { T: 1 }, 308: { T: -1 }, 309: { T: 1 }, 310: { T: -1 }, 311: { T: 1 }, 312: { T: -1 }, 313: { T: -1 }, 314: { T: 1 }, 315: { T: -1 }, 316: { T: 1 }, 317: { T: -1 }, 318: { T: 1 }, 319: { T: -1 }, 320: { T: 1 }, 321: { T: -1 }, 322: { T: 1 }, 323: { T: -1 }, 324: { T: 1 }, 325: { T: -1 }, 326: { T: 1 }, 327: { T: -1 }, 328: { T: 1 }, 329: { T: -1 }, 330: { T: 1 }, 331: { T: -1 }, 332: { T: 1 }, 333: { T: -1 }, 334: { T: 1 }, 335: { f: function(e, r) {
  return { flags: e.read_shift(4), version: e.read_shift(4), name: Yt(e) };
} }, 336: { T: -1 }, 337: { f: function(e) {
  return e.l += 4, e.read_shift(4) != 0;
}, T: 1 }, 338: { T: -1 }, 339: { T: 1 }, 340: { T: -1 }, 341: { T: 1 }, 342: { T: -1 }, 343: { T: 1 }, 344: { T: -1 }, 345: { T: 1 }, 346: { T: -1 }, 347: { T: 1 }, 348: { T: -1 }, 349: { T: 1 }, 350: { T: -1 }, 351: {}, 352: {}, 353: { T: 1 }, 354: { T: -1 }, 355: { f: ys }, 357: {}, 358: {}, 359: {}, 360: { T: 1 }, 361: {}, 362: { f: pl }, 363: {}, 364: {}, 366: {}, 367: {}, 368: {}, 369: {}, 370: {}, 371: {}, 372: { T: 1 }, 373: { T: -1 }, 374: { T: 1 }, 375: { T: -1 }, 376: { T: 1 }, 377: { T: -1 }, 378: { T: 1 }, 379: { T: -1 }, 380: { T: 1 }, 381: { T: -1 }, 382: { T: 1 }, 383: { T: -1 }, 384: { T: 1 }, 385: { T: -1 }, 386: { T: 1 }, 387: { T: -1 }, 388: { T: 1 }, 389: { T: -1 }, 390: { T: 1 }, 391: { T: -1 }, 392: { T: 1 }, 393: { T: -1 }, 394: { T: 1 }, 395: { T: -1 }, 396: {}, 397: {}, 398: {}, 399: {}, 400: {}, 401: { T: 1 }, 403: {}, 404: {}, 405: {}, 406: {}, 407: {}, 408: {}, 409: {}, 410: {}, 411: {}, 412: {}, 413: {}, 414: {}, 415: {}, 416: {}, 417: {}, 418: {}, 419: {}, 420: {}, 421: {}, 422: { T: 1 }, 423: { T: 1 }, 424: { T: -1 }, 425: { T: -1 }, 426: { f: function(e, r, t) {
  var a = e.l + r, n = Yc(e), s = e.read_shift(1), i = [n];
  if (i[2] = s, t.cellFormula) {
    var l = H0(e, a - e.l, t);
    i[1] = l;
  } else e.l = a;
  return i;
} }, 427: { f: function(e, r, t) {
  var a = e.l + r, n = [da(e)];
  if (t.cellFormula) {
    var s = $0(e, a - e.l, t);
    n[1] = s, e.l = a;
  } else e.l = a;
  return n;
} }, 428: {}, 429: { T: 1 }, 430: { T: -1 }, 431: { T: 1 }, 432: { T: -1 }, 433: { T: 1 }, 434: { T: -1 }, 435: { T: 1 }, 436: { T: -1 }, 437: { T: 1 }, 438: { T: -1 }, 439: { T: 1 }, 440: { T: -1 }, 441: { T: 1 }, 442: { T: -1 }, 443: { T: 1 }, 444: { T: -1 }, 445: { T: 1 }, 446: { T: -1 }, 447: { T: 1 }, 448: { T: -1 }, 449: { T: 1 }, 450: { T: -1 }, 451: { T: 1 }, 452: { T: -1 }, 453: { T: 1 }, 454: { T: -1 }, 455: { T: 1 }, 456: { T: -1 }, 457: { T: 1 }, 458: { T: -1 }, 459: { T: 1 }, 460: { T: -1 }, 461: { T: 1 }, 462: { T: -1 }, 463: { T: 1 }, 464: { T: -1 }, 465: { T: 1 }, 466: { T: -1 }, 467: { T: 1 }, 468: { T: -1 }, 469: { T: 1 }, 470: { T: -1 }, 471: {}, 472: {}, 473: { T: 1 }, 474: { T: -1 }, 475: {}, 476: { f: function(e) {
  var r = {};
  return Dl.forEach(function(t) {
    r[t] = Jt(e);
  }), r;
} }, 477: {}, 478: {}, 479: { T: 1 }, 480: { T: -1 }, 481: { T: 1 }, 482: { T: -1 }, 483: { T: 1 }, 484: { T: -1 }, 485: { f: function() {
} }, 486: { T: 1 }, 487: { T: -1 }, 488: { T: 1 }, 489: { T: -1 }, 490: { T: 1 }, 491: { T: -1 }, 492: { T: 1 }, 493: { T: -1 }, 494: { f: function(e, r) {
  var t = e.l + r, a = da(e), n = Xn(e), s = Yt(e), i = Yt(e), l = Yt(e);
  e.l = t;
  var o = { rfx: a, relId: n, loc: s, display: l };
  return i && (o.Tooltip = i), o;
} }, 495: { T: 1 }, 496: { T: -1 }, 497: { T: 1 }, 498: { T: -1 }, 499: {}, 500: { T: 1 }, 501: { T: -1 }, 502: { T: 1 }, 503: { T: -1 }, 504: {}, 505: { T: 1 }, 506: { T: -1 }, 507: {}, 508: { T: 1 }, 509: { T: -1 }, 510: { T: 1 }, 511: { T: -1 }, 512: {}, 513: {}, 514: { T: 1 }, 515: { T: -1 }, 516: { T: 1 }, 517: { T: -1 }, 518: { T: 1 }, 519: { T: -1 }, 520: { T: 1 }, 521: { T: -1 }, 522: {}, 523: {}, 524: {}, 525: {}, 526: {}, 527: {}, 528: { T: 1 }, 529: { T: -1 }, 530: { T: 1 }, 531: { T: -1 }, 532: { T: 1 }, 533: { T: -1 }, 534: {}, 535: {}, 536: {}, 537: {}, 538: { T: 1 }, 539: { T: -1 }, 540: { T: 1 }, 541: { T: -1 }, 542: { T: 1 }, 548: {}, 549: {}, 550: { f: ys }, 551: { f: Xn }, 552: {}, 553: {}, 554: { T: 1 }, 555: { T: -1 }, 556: { T: 1 }, 557: { T: -1 }, 558: { T: 1 }, 559: { T: -1 }, 560: { T: 1 }, 561: { T: -1 }, 562: {}, 564: {}, 565: { T: 1 }, 566: { T: -1 }, 569: { T: 1 }, 570: { T: -1 }, 572: {}, 573: { T: 1 }, 574: { T: -1 }, 577: {}, 578: {}, 579: {}, 580: {}, 581: {}, 582: {}, 583: {}, 584: {}, 585: {}, 586: {}, 587: {}, 588: { T: -1 }, 589: {}, 590: { T: 1 }, 591: { T: -1 }, 592: { T: 1 }, 593: { T: -1 }, 594: { T: 1 }, 595: { T: -1 }, 596: {}, 597: { T: 1 }, 598: { T: -1 }, 599: { T: 1 }, 600: { T: -1 }, 601: { T: 1 }, 602: { T: -1 }, 603: { T: 1 }, 604: { T: -1 }, 605: { T: 1 }, 606: { T: -1 }, 607: {}, 608: { T: 1 }, 609: { T: -1 }, 610: {}, 611: { T: 1 }, 612: { T: -1 }, 613: { T: 1 }, 614: { T: -1 }, 615: { T: 1 }, 616: { T: -1 }, 617: { T: 1 }, 618: { T: -1 }, 619: { T: 1 }, 620: { T: -1 }, 625: {}, 626: { T: 1 }, 627: { T: -1 }, 628: { T: 1 }, 629: { T: -1 }, 630: { T: 1 }, 631: { T: -1 }, 632: { f: S0 }, 633: { T: 1 }, 634: { T: -1 }, 635: { T: 1, f: function(e) {
  var r = {};
  r.iauthor = e.read_shift(4);
  var t = da(e);
  return r.rfx = t.s, r.ref = Ge(t.s), e.l += 16, r;
} }, 636: { T: -1 }, 637: { f: d1 }, 638: { T: 1 }, 639: {}, 640: { T: -1 }, 641: { T: 1 }, 642: { T: -1 }, 643: { T: 1 }, 644: {}, 645: { T: -1 }, 646: { T: 1 }, 648: { T: 1 }, 649: {}, 650: { T: -1 }, 651: { f: function(e, r) {
  return e.l += 10, { name: Yt(e) };
} }, 652: {}, 653: { T: 1 }, 654: { T: -1 }, 655: { T: 1 }, 656: { T: -1 }, 657: { T: 1 }, 658: { T: -1 }, 659: {}, 660: { T: 1 }, 661: {}, 662: { T: -1 }, 663: {}, 664: { T: 1 }, 665: {}, 666: { T: -1 }, 667: {}, 668: {}, 669: {}, 671: { T: 1 }, 672: { T: -1 }, 673: { T: 1 }, 674: { T: -1 }, 675: {}, 676: {}, 677: {}, 678: {}, 679: {}, 680: {}, 681: {}, 1024: {}, 1025: {}, 1026: { T: 1 }, 1027: { T: -1 }, 1028: { T: 1 }, 1029: { T: -1 }, 1030: {}, 1031: { T: 1 }, 1032: { T: -1 }, 1033: { T: 1 }, 1034: { T: -1 }, 1035: {}, 1036: {}, 1037: {}, 1038: { T: 1 }, 1039: { T: -1 }, 1040: {}, 1041: { T: 1 }, 1042: { T: -1 }, 1043: {}, 1044: {}, 1045: {}, 1046: { T: 1 }, 1047: { T: -1 }, 1048: { T: 1 }, 1049: { T: -1 }, 1050: {}, 1051: { T: 1 }, 1052: { T: 1 }, 1053: { f: function() {
} }, 1054: { T: 1 }, 1055: {}, 1056: { T: 1 }, 1057: { T: -1 }, 1058: { T: 1 }, 1059: { T: -1 }, 1061: {}, 1062: { T: 1 }, 1063: { T: -1 }, 1064: { T: 1 }, 1065: { T: -1 }, 1066: { T: 1 }, 1067: { T: -1 }, 1068: { T: 1 }, 1069: { T: -1 }, 1070: { T: 1 }, 1071: { T: -1 }, 1072: { T: 1 }, 1073: { T: -1 }, 1075: { T: 1 }, 1076: { T: -1 }, 1077: { T: 1 }, 1078: { T: -1 }, 1079: { T: 1 }, 1080: { T: -1 }, 1081: { T: 1 }, 1082: { T: -1 }, 1083: { T: 1 }, 1084: { T: -1 }, 1085: {}, 1086: { T: 1 }, 1087: { T: -1 }, 1088: { T: 1 }, 1089: { T: -1 }, 1090: { T: 1 }, 1091: { T: -1 }, 1092: { T: 1 }, 1093: { T: -1 }, 1094: { T: 1 }, 1095: { T: -1 }, 1096: {}, 1097: { T: 1 }, 1098: {}, 1099: { T: -1 }, 1100: { T: 1 }, 1101: { T: -1 }, 1102: {}, 1103: {}, 1104: {}, 1105: {}, 1111: {}, 1112: {}, 1113: { T: 1 }, 1114: { T: -1 }, 1115: { T: 1 }, 1116: { T: -1 }, 1117: {}, 1118: { T: 1 }, 1119: { T: -1 }, 1120: { T: 1 }, 1121: { T: -1 }, 1122: { T: 1 }, 1123: { T: -1 }, 1124: { T: 1 }, 1125: { T: -1 }, 1126: {}, 1128: { T: 1 }, 1129: { T: -1 }, 1130: {}, 1131: { T: 1 }, 1132: { T: -1 }, 1133: { T: 1 }, 1134: { T: -1 }, 1135: { T: 1 }, 1136: { T: -1 }, 1137: { T: 1 }, 1138: { T: -1 }, 1139: { T: 1 }, 1140: { T: -1 }, 1141: {}, 1142: { T: 1 }, 1143: { T: -1 }, 1144: { T: 1 }, 1145: { T: -1 }, 1146: {}, 1147: { T: 1 }, 1148: { T: -1 }, 1149: { T: 1 }, 1150: { T: -1 }, 1152: { T: 1 }, 1153: { T: -1 }, 1154: { T: -1 }, 1155: { T: -1 }, 1156: { T: -1 }, 1157: { T: 1 }, 1158: { T: -1 }, 1159: { T: 1 }, 1160: { T: -1 }, 1161: { T: 1 }, 1162: { T: -1 }, 1163: { T: 1 }, 1164: { T: -1 }, 1165: { T: 1 }, 1166: { T: -1 }, 1167: { T: 1 }, 1168: { T: -1 }, 1169: { T: 1 }, 1170: { T: -1 }, 1171: {}, 1172: { T: 1 }, 1173: { T: -1 }, 1177: {}, 1178: { T: 1 }, 1180: {}, 1181: {}, 1182: {}, 2048: { T: 1 }, 2049: { T: -1 }, 2050: {}, 2051: { T: 1 }, 2052: { T: -1 }, 2053: {}, 2054: {}, 2055: { T: 1 }, 2056: { T: -1 }, 2057: { T: 1 }, 2058: { T: -1 }, 2060: {}, 2067: {}, 2068: { T: 1 }, 2069: { T: -1 }, 2070: {}, 2071: {}, 2072: { T: 1 }, 2073: { T: -1 }, 2075: {}, 2076: {}, 2077: { T: 1 }, 2078: { T: -1 }, 2079: {}, 2080: { T: 1 }, 2081: { T: -1 }, 2082: {}, 2083: { T: 1 }, 2084: { T: -1 }, 2085: { T: 1 }, 2086: { T: -1 }, 2087: { T: 1 }, 2088: { T: -1 }, 2089: { T: 1 }, 2090: { T: -1 }, 2091: {}, 2092: {}, 2093: { T: 1 }, 2094: { T: -1 }, 2095: {}, 2096: { T: 1 }, 2097: { T: -1 }, 2098: { T: 1 }, 2099: { T: -1 }, 2100: { T: 1 }, 2101: { T: -1 }, 2102: {}, 2103: { T: 1 }, 2104: { T: -1 }, 2105: {}, 2106: { T: 1 }, 2107: { T: -1 }, 2108: {}, 2109: { T: 1 }, 2110: { T: -1 }, 2111: { T: 1 }, 2112: { T: -1 }, 2113: { T: 1 }, 2114: { T: -1 }, 2115: {}, 2116: {}, 2117: {}, 2118: { T: 1 }, 2119: { T: -1 }, 2120: {}, 2121: { T: 1 }, 2122: { T: -1 }, 2123: { T: 1 }, 2124: { T: -1 }, 2125: {}, 2126: { T: 1 }, 2127: { T: -1 }, 2128: {}, 2129: { T: 1 }, 2130: { T: -1 }, 2131: { T: 1 }, 2132: { T: -1 }, 2133: { T: 1 }, 2134: {}, 2135: {}, 2136: {}, 2137: { T: 1 }, 2138: { T: -1 }, 2139: { T: 1 }, 2140: { T: -1 }, 2141: {}, 3072: {}, 3073: {}, 4096: { T: 1 }, 4097: { T: -1 }, 5002: { T: 1 }, 5003: { T: -1 }, 5081: { T: 1 }, 5082: { T: -1 }, 5083: {}, 5084: { T: 1 }, 5085: { T: -1 }, 5086: { T: 1 }, 5087: { T: -1 }, 5088: {}, 5089: {}, 5090: {}, 5092: { T: 1 }, 5093: { T: -1 }, 5094: {}, 5095: { T: 1 }, 5096: { T: -1 }, 5097: {}, 5099: {}, 65535: { n: "" } }, Zs = { 6: { f: Is }, 10: { f: qr }, 12: { f: Et }, 13: { f: Et }, 14: { f: St }, 15: { f: St }, 16: { f: Jt }, 17: { f: St }, 18: { f: St }, 19: { f: Et }, 20: { f: xo }, 21: { f: xo }, 23: { f: pl }, 24: { f: Co }, 25: { f: St }, 26: {}, 27: {}, 28: { f: function(e, r, t) {
  if (t && t.biff < 8) {
    var a = e.read_shift(2), n = e.read_shift(2);
    if (a == 65535 || a == -1) return;
    var s = e.read_shift(2);
    return [{ r: a, c: n }, e.read_shift(Math.min(s, 2048), "cpstr")];
  }
  return (function(i, l, o) {
    var c = i.read_shift(2), f = i.read_shift(2), u = i.read_shift(2), h = i.read_shift(2);
    return [{ r: c, c: f }, pa(i, 0, o), h, u];
  })(e, 0, t);
} }, 29: {}, 34: { f: St }, 35: { f: Ao }, 38: { f: Jt }, 39: { f: Jt }, 40: { f: Jt }, 41: { f: Jt }, 42: { f: St }, 43: { f: St }, 47: { f: function(e, r, t) {
  var a = { Type: t.biff >= 8 ? e.read_shift(2) : 0 };
  return a.Type ? n0(e, r - 2, a) : (function(n, s, i, l) {
    var o = { key: Et(n), verificationBytes: Et(n) };
    i.password && (o.verifier = xi(i.password)), l.valid = o.verificationBytes === o.verifier, l.valid && (l.insitu = a0(i.password));
  })(e, t.biff, t, a), a;
} }, 49: { f: function(e, r, t) {
  var a = { dyHeight: e.read_shift(2), fl: e.read_shift(2) };
  switch (t && t.biff || 8) {
    case 2:
      break;
    case 3:
    case 4:
      e.l += 2;
      break;
    default:
      e.l += 10;
  }
  return a.name = La(e, 0, t), a;
} }, 51: { f: Et }, 60: {}, 61: { f: function(e) {
  return { Pos: [e.read_shift(2), e.read_shift(2)], Dim: [e.read_shift(2), e.read_shift(2)], Flags: e.read_shift(2), CurTab: e.read_shift(2), FirstTab: e.read_shift(2), Selected: e.read_shift(2), TabRatio: e.read_shift(2) };
} }, 64: { f: St }, 65: { f: function() {
} }, 66: { f: Et }, 77: {}, 80: {}, 81: {}, 82: {}, 85: { f: Et }, 89: {}, 90: {}, 91: {}, 92: { f: function(e, r, t) {
  if (t.enc) return e.l += r, "";
  var a = e.l, n = pa(e, 0, t);
  return e.read_shift(r + a - e.l), n;
} }, 93: { f: function(e, r, t) {
  if (t && t.biff < 8) return (function(s, i, l) {
    s.l += 4;
    var o = s.read_shift(2), c = s.read_shift(2), f = s.read_shift(2);
    s.l += 2, s.l += 2, s.l += 2, s.l += 2, s.l += 2, s.l += 2, s.l += 2, s.l += 2, s.l += 2, s.l += 6, i -= 36;
    var u = [];
    return u.push((L1[o] || tr)(s, i, l)), { cmo: [c, o, f], ft: u };
  })(e, r, t);
  var a = ul(e), n = (function(s, i) {
    for (var l = s.l + i, o = []; s.l < l; ) {
      var c = s.read_shift(2);
      s.l -= 2;
      try {
        o[c] = O1[c](s, l - s.l);
      } catch {
        return s.l = l, o;
      }
    }
    return s.l != l && (s.l = l), o;
  })(e, r - 22, a[1]);
  return { cmo: a, ft: n };
} }, 94: {}, 95: { f: St }, 96: {}, 97: {}, 99: { f: St }, 125: { f: ml }, 128: { f: function(e) {
  e.l += 4;
  var r = [e.read_shift(2), e.read_shift(2)];
  if (r[0] !== 0 && r[0]--, r[1] !== 0 && r[1]--, r[0] > 7 || r[1] > 7) throw new Error("Bad Gutters: " + r.join("|"));
  return r;
} }, 129: { f: function(e, r, t) {
  var a = t && t.biff == 8 || r == 2 ? e.read_shift(2) : (e.l += r, 0);
  return { fDialog: 16 & a, fBelow: 64 & a, fRight: 128 & a };
} }, 130: { f: Et }, 131: { f: St }, 132: { f: St }, 133: { f: function(e, r, t) {
  var a = "";
  if (t.biff == 4) return (a = La(e, 0, t)).length === 0 && (a = "Sheet1"), { name: a };
  var n = e.read_shift(4), s = 3 & e.read_shift(1), i = e.read_shift(1);
  switch (i) {
    case 0:
      i = "Worksheet";
      break;
    case 1:
      i = "Macrosheet";
      break;
    case 2:
      i = "Chartsheet";
      break;
    case 6:
      i = "VBAModule";
  }
  return (a = La(e, 0, t)).length === 0 && (a = "Sheet1"), { pos: n, hs: s, dt: i, name: a };
} }, 134: {}, 140: { f: function(e) {
  var r, t = [0, 0];
  return r = e.read_shift(2), t[0] = lo[r] || r, r = e.read_shift(2), t[1] = lo[r] || r, t;
} }, 141: { f: Et }, 144: {}, 146: { f: function(e) {
  for (var r = e.read_shift(2), t = []; r-- > 0; ) t.push(To(e));
  return t;
} }, 151: {}, 152: {}, 153: {}, 154: {}, 155: {}, 156: { f: Et }, 157: {}, 158: {}, 160: { f: W1 }, 161: { f: function(e, r) {
  var t = {};
  return r < 32 || (e.l += 16, t.header = Jt(e), t.footer = Jt(e), e.l += 2), t;
} }, 174: {}, 175: {}, 176: {}, 177: {}, 178: {}, 180: {}, 181: {}, 182: {}, 184: {}, 185: {}, 189: { f: function(e, r) {
  for (var t = e.l + r - 2, a = e.read_shift(2), n = e.read_shift(2), s = []; e.l < t; ) s.push(yo(e));
  if (e.l !== t) throw new Error("MulRK read error");
  var i = e.read_shift(2);
  if (s.length != i - n + 1) throw new Error("MulRK length mismatch");
  return { r: a, c: n, C: i, rkrec: s };
} }, 190: { f: function(e, r) {
  for (var t = e.l + r - 2, a = e.read_shift(2), n = e.read_shift(2), s = []; e.l < t; ) s.push(e.read_shift(2));
  if (e.l !== t) throw new Error("MulBlank read error");
  var i = e.read_shift(2);
  if (s.length != i - n + 1) throw new Error("MulBlank length mismatch");
  return { r: a, c: n, C: i, ixfe: s };
} }, 193: { f: qr }, 197: {}, 198: {}, 199: {}, 200: {}, 201: {}, 202: { f: St }, 203: {}, 204: {}, 205: {}, 206: {}, 207: {}, 208: {}, 209: {}, 210: {}, 211: {}, 213: {}, 215: {}, 216: {}, 217: {}, 218: { f: Et }, 220: {}, 221: { f: St }, 222: {}, 224: { f: function(e, r, t) {
  var a = {};
  return a.ifnt = e.read_shift(2), a.numFmtId = e.read_shift(2), a.flags = e.read_shift(2), a.fStyle = a.flags >> 2 & 1, a.data = (function(n, s, i, l) {
    var o = {}, c = n.read_shift(4), f = n.read_shift(4), u = n.read_shift(4), h = n.read_shift(2);
    return o.patternType = b1[u >> 26], l.cellStyles && (o.alc = 7 & c, o.fWrap = c >> 3 & 1, o.alcV = c >> 4 & 7, o.fJustLast = c >> 7 & 1, o.trot = c >> 8 & 255, o.cIndent = c >> 16 & 15, o.fShrinkToFit = c >> 20 & 1, o.iReadOrder = c >> 22 & 2, o.fAtrNum = c >> 26 & 1, o.fAtrFnt = c >> 27 & 1, o.fAtrAlc = c >> 28 & 1, o.fAtrBdr = c >> 29 & 1, o.fAtrPat = c >> 30 & 1, o.fAtrProt = c >> 31 & 1, o.dgLeft = 15 & f, o.dgRight = f >> 4 & 15, o.dgTop = f >> 8 & 15, o.dgBottom = f >> 12 & 15, o.icvLeft = f >> 16 & 127, o.icvRight = f >> 23 & 127, o.grbitDiag = f >> 30 & 3, o.icvTop = 127 & u, o.icvBottom = u >> 7 & 127, o.icvDiag = u >> 14 & 127, o.dgDiag = u >> 21 & 15, o.icvFore = 127 & h, o.icvBack = h >> 7 & 127, o.fsxButton = h >> 14 & 1), o;
  })(e, 0, a.fStyle, t), a;
} }, 225: { f: function(e, r) {
  return r === 0 || e.read_shift(2), 1200;
} }, 226: { f: qr }, 227: {}, 229: { f: function(e, r) {
  for (var t = [], a = e.read_shift(2); a--; ) t.push(jn(e));
  return t;
} }, 233: {}, 235: {}, 236: {}, 237: {}, 239: {}, 240: {}, 241: {}, 242: {}, 244: {}, 245: {}, 246: {}, 247: {}, 248: {}, 249: {}, 251: {}, 252: { f: function(e, r) {
  for (var t = e.l + r, a = e.read_shift(4), n = e.read_shift(4), s = [], i = 0; i != n && e.l < t; ++i) s.push(S1(e));
  return s.Count = a, s.Unique = n, s;
} }, 253: { f: function(e, r, t) {
  var a = kr(e, r, t);
  return a.isst = e.read_shift(4), a;
} }, 255: { f: function(e, r) {
  var t = {};
  return t.dsst = e.read_shift(2), e.l += r - 2, t;
} }, 256: {}, 259: {}, 290: {}, 311: {}, 312: {}, 315: {}, 317: { f: ol }, 318: {}, 319: {}, 320: {}, 330: {}, 331: {}, 333: {}, 334: {}, 335: {}, 336: {}, 337: {}, 338: {}, 339: {}, 340: {}, 351: {}, 352: { f: St }, 353: { f: qr }, 401: {}, 402: {}, 403: {}, 404: {}, 405: {}, 406: {}, 407: {}, 408: {}, 425: {}, 426: {}, 427: {}, 428: {}, 429: {}, 430: { f: function(e, r, t) {
  var a = e.l + r, n = e.read_shift(2), s = e.read_shift(2);
  if (t.sbcch = s, s == 1025 || s == 14849) return [s, n];
  if (s < 1 || s > 255) throw new Error("Unexpected SupBook type: " + s);
  for (var i = ha(e, s), l = []; a > e.l; ) l.push(nn(e));
  return [s, n, i, l];
} }, 431: { f: St }, 432: {}, 433: {}, 434: {}, 437: {}, 438: { f: function(e, r, t) {
  var a = e.l, n = "";
  try {
    e.l += 4;
    var s = (t.lastobj || { cmo: [0, 0] }).cmo[1];
    [0, 5, 7, 11, 12, 14].indexOf(s) == -1 ? e.l += 6 : (function(f) {
      var u = f.read_shift(1);
      f.l++;
      var h = f.read_shift(2);
      return f.l += 2, [u, h];
    })(e);
    var i = e.read_shift(2);
    e.read_shift(2), Et(e);
    var l = e.read_shift(2);
    e.l += l;
    for (var o = 1; o < e.lens.length - 1; ++o) {
      if (e.l - a != e.lens[o]) throw new Error("TxO: bad continue record");
      var c = e[e.l];
      if ((n += ha(e, e.lens[o + 1] - e.lens[o] - 1)).length >= (c ? i : 2 * i)) break;
    }
    if (n.length !== i && n.length !== 2 * i) throw new Error("cchText: " + i + " != " + n.length);
    return e.l = a + r, { t: n };
  } catch {
    return e.l = a + r, { t: n };
  }
} }, 439: { f: St }, 440: { f: function(e, r) {
  var t = jn(e);
  e.l += 16;
  var a = (function(n, s) {
    var i = n.l + s, l = n.read_shift(4);
    if (l !== 2) throw new Error("Unrecognized streamVersion: " + l);
    var o = n.read_shift(2);
    n.l += 2;
    var c, f, u, h, p, d, g = "";
    16 & o && (c = Ln(n, n.l)), 128 & o && (f = Ln(n, n.l)), 257 & ~o || (u = Ln(n, n.l)), (257 & o) == 1 && (h = A1(n, n.l)), 8 & o && (g = Ln(n, n.l)), 32 & o && (p = n.read_shift(16)), 64 & o && (d = ki(n)), n.l = i;
    var m = f || u || h || "";
    m && g && (m += "#" + g), m || (m = "#" + g), 2 & o && m.charAt(0) == "/" && m.charAt(1) != "/" && (m = "file://" + m);
    var v = { Target: m };
    return p && (v.guid = p), d && (v.time = d), c && (v.Tooltip = c), v;
  })(e, r - 24);
  return [t, a];
} }, 441: {}, 442: { f: nn }, 443: {}, 444: { f: Et }, 445: {}, 446: {}, 448: { f: qr }, 449: { f: function(e) {
  return e.read_shift(2), e.read_shift(4);
}, r: 2 }, 450: { f: qr }, 512: { f: _o }, 513: { f: B1 }, 515: { f: function(e, r, t) {
  t.biffguess && t.biff == 2 && (t.biff = 5);
  var a = kr(e, 6, t), n = Jt(e);
  return a.val = n, a;
} }, 516: { f: function(e, r, t) {
  t.biffguess && t.biff == 2 && (t.biff = 5), e.l;
  var a = kr(e, r, t), n = nn(e, e.l, t);
  return a.val = n, a;
} }, 517: { f: function(e, r, t) {
  var a = kr(e, 6, t), n = bo(e);
  return a.val = n, a.t = n === !0 || n === !1 ? "b" : "e", a;
} }, 519: { f: z1 }, 520: { f: function(e) {
  var r = {};
  r.r = e.read_shift(2), r.c = e.read_shift(2), r.cnt = e.read_shift(2) - r.c;
  var t = e.read_shift(2);
  e.l += 4;
  var a = e.read_shift(1);
  return e.l += 3, 7 & a && (r.level = 7 & a), 32 & a && (r.hidden = !0), 64 & a && (r.hpt = t / 20), r;
} }, 523: {}, 545: { f: Ro }, 549: { f: ko }, 566: {}, 574: { f: function(e, r, t) {
  return t && t.biff >= 2 && t.biff < 5 ? {} : { RTL: 64 & e.read_shift(2) };
} }, 638: { f: function(e) {
  var r = e.read_shift(2), t = e.read_shift(2), a = yo(e);
  return { r, c: t, ixfe: a[0], rknum: a[1] };
} }, 659: {}, 1048: {}, 1054: { f: function(e, r, t) {
  return [e.read_shift(2), pa(e, 0, t)];
} }, 1084: {}, 1212: { f: function(e, r, t) {
  var a = hl(e);
  e.l++;
  var n = e.read_shift(1);
  return [W0(e, r -= 8, t), n, a];
} }, 2048: { f: function(e, r) {
  e.read_shift(2);
  var t = jn(e), a = e.read_shift((r - 10) / 2, "dbcs-cont");
  return [t, a = a.replace(or, "")];
} }, 2049: {}, 2050: {}, 2051: {}, 2052: {}, 2053: {}, 2054: {}, 2055: {}, 2056: {}, 2057: { f: Mn }, 2058: {}, 2059: {}, 2060: {}, 2061: {}, 2062: {}, 2063: {}, 2064: {}, 2066: {}, 2067: {}, 2128: {}, 2129: {}, 2130: {}, 2131: {}, 2132: {}, 2133: {}, 2134: {}, 2135: {}, 2136: {}, 2137: {}, 2138: {}, 2146: {}, 2147: { r: 12 }, 2148: {}, 2149: {}, 2150: {}, 2151: { f: qr }, 2152: {}, 2154: {}, 2155: {}, 2156: {}, 2161: {}, 2162: {}, 2164: {}, 2165: {}, 2166: {}, 2167: {}, 2168: {}, 2169: {}, 2170: {}, 2171: {}, 2172: { f: function(e) {
  e.l += 2;
  var r = { cxfs: 0, crc: 0 };
  return r.cxfs = e.read_shift(2), r.crc = e.read_shift(4), r;
}, r: 12 }, 2173: { f: function(e, r) {
  e.l, e.l += 2;
  var t = e.read_shift(2);
  e.l += 2;
  for (var a = e.read_shift(2), n = []; a-- > 0; ) n.push(y0(e, e.l));
  return { ixfe: t, ext: n };
}, r: 12 }, 2174: {}, 2175: {}, 2180: {}, 2181: {}, 2182: {}, 2183: {}, 2184: {}, 2185: {}, 2186: {}, 2187: {}, 2188: { f: St, r: 12 }, 2189: {}, 2190: { r: 12 }, 2191: {}, 2192: {}, 2194: {}, 2195: {}, 2196: { f: function(e, r, t) {
  if (!(t.biff < 8)) {
    var a = e.read_shift(2), n = e.read_shift(2);
    return [ha(e, a, t), ha(e, n, t)];
  }
  e.l += r;
}, r: 12 }, 2197: {}, 2198: { f: function(e, r, t) {
  var a = e.l + r;
  if (e.read_shift(4) !== 124226) if (t.cellStyles) {
    var n, s = e.slice(e.l);
    e.l = a;
    try {
      n = xc(s, { type: "array" });
    } catch {
      return;
    }
    var i = ir(n, "theme/theme/theme1.xml", !0);
    if (i) return kl(i, t);
  } else e.l = a;
}, r: 12 }, 2199: {}, 2200: {}, 2201: {}, 2202: { f: function(e) {
  return [e.read_shift(4) !== 0, e.read_shift(4) !== 0, e.read_shift(4)];
}, r: 12 }, 2203: { f: qr }, 2204: {}, 2205: {}, 2206: {}, 2207: {}, 2211: { f: function(e) {
  var r = (function(t) {
    var a = t.read_shift(2), n = t.read_shift(2);
    return t.l += 8, { type: a, flags: n };
  })(e);
  if (r.type != 2211) throw new Error("Invalid Future Record " + r.type);
  return e.read_shift(4) !== 0;
} }, 2212: {}, 2213: {}, 2214: {}, 2215: {}, 4097: {}, 4098: {}, 4099: {}, 4102: {}, 4103: {}, 4105: {}, 4106: {}, 4107: {}, 4108: {}, 4109: {}, 4116: {}, 4117: {}, 4118: {}, 4119: {}, 4120: {}, 4121: {}, 4122: {}, 4123: {}, 4124: {}, 4125: {}, 4126: {}, 4127: {}, 4128: {}, 4129: {}, 4130: {}, 4132: {}, 4133: {}, 4134: { f: Et }, 4135: {}, 4146: {}, 4147: {}, 4148: {}, 4149: {}, 4154: {}, 4156: {}, 4157: {}, 4158: {}, 4159: {}, 4160: {}, 4161: {}, 4163: {}, 4164: { f: function(e, r, t) {
  var a = { area: !1 };
  if (t.biff != 5) return e.l += r, a;
  var n = e.read_shift(1);
  return e.l += 3, 16 & n && (a.area = !0), a;
} }, 4165: {}, 4166: {}, 4168: {}, 4170: {}, 4171: {}, 4174: {}, 4175: {}, 4176: {}, 4177: {}, 4187: {}, 4188: { f: function(e) {
  for (var r = e.read_shift(2), t = []; r-- > 0; ) t.push(To(e));
  return t;
} }, 4189: {}, 4191: {}, 4192: {}, 4193: {}, 4194: {}, 4195: {}, 4196: {}, 4197: {}, 4198: {}, 4199: {}, 4200: {}, 0: { f: _o }, 1: {}, 2: { f: function(e, r, t) {
  var a = kr(e, 7, t), n = e.read_shift(2);
  return a.t = "n", a.val = n, a;
} }, 3: { f: function(e, r, t) {
  var a = kr(e, 7, t), n = Jt(e);
  return a.t = "n", a.val = n, a;
} }, 4: { f: function(e, r, t) {
  t.biffguess && t.biff == 5 && (t.biff = 2);
  var a = kr(e, 7, t), n = pa(e, 0, t);
  return a.t = "str", a.val = n, a;
} }, 5: { f: function(e, r, t) {
  var a = e.l + 7, n = kr(e, 6, t);
  e.l = a;
  var s = bo(e);
  return n.val = s, n.t = s === !0 || s === !1 ? "b" : "e", n;
} }, 7: { f: function(e) {
  var r = e.read_shift(1);
  return r === 0 ? (e.l++, "") : e.read_shift(r, "sbcs-cont");
} }, 8: {}, 9: { f: Mn }, 11: {}, 22: { f: Et }, 30: { f: D1 }, 31: {}, 32: {}, 33: { f: Ro }, 36: {}, 37: { f: ko }, 50: { f: function(e, r) {
  e.l += 6, e.l += 2, e.l += 1, e.l += 3, e.l += 1, e.l += r - 13;
} }, 62: {}, 52: {}, 67: { f: function(e) {
  var r = {};
  return r.ifnt = e.read_shift(1), e.l++, r.flags = e.read_shift(1), r.numFmtId = 63 & r.flags, r.flags >>= 6, r.fStyle = 0, r.data = {}, r;
} }, 68: { f: Et }, 69: {}, 86: {}, 126: {}, 127: { f: function(e) {
  var r = e.read_shift(2), t = e.read_shift(2), a = e.read_shift(4), n = { fmt: r, env: t, len: a, data: e.slice(e.l, e.l + a) };
  return e.l += a, n;
} }, 135: {}, 136: {}, 137: {}, 143: { f: function(e) {
  var r = e.read_shift(4), t = e.read_shift(1), a = e.read_shift(t, "sbcs");
  return a.length === 0 && (a = "Sheet1"), { flags: r, name: a };
} }, 145: {}, 148: {}, 149: {}, 150: {}, 169: {}, 171: {}, 188: {}, 191: {}, 192: {}, 194: {}, 195: {}, 214: { f: function(e, r, t) {
  var a = e.l + r, n = kr(e, 6, t), s = e.read_shift(2), i = ha(e, s, t);
  return e.l = a, n.t = "str", n.val = i, n;
} }, 223: {}, 234: {}, 354: {}, 421: {}, 518: { f: Is }, 521: { f: Mn }, 536: { f: Co }, 547: { f: Ao }, 561: {}, 579: { f: function(e) {
  var r = {};
  return r.ifnt = e.read_shift(1), r.numFmtId = e.read_shift(1), r.flags = e.read_shift(2), r.fStyle = r.flags >> 2 & 1, r.data = {}, r;
} }, 1030: { f: Is }, 1033: { f: Mn }, 1091: { f: function(e) {
  var r = {};
  return r.ifnt = e.read_shift(1), r.numFmtId = e.read_shift(1), r.flags = e.read_shift(2), r.fStyle = r.flags >> 2 & 1, r.data = {}, r;
} }, 2157: {}, 2163: {}, 2177: {}, 2240: {}, 2241: {}, 2242: {}, 2243: {}, 2244: {}, 2245: {}, 2246: {}, 2247: {}, 2248: {}, 2249: {}, 2250: {}, 2251: {}, 2262: { r: 12 }, 101: {}, 102: {}, 105: {}, 106: {}, 107: {}, 109: {}, 112: {}, 114: {}, 29282: {} };
function Z(e, r, t, a) {
  var n = r;
  if (!isNaN(n)) {
    var s = a || (t || []).length || 0, i = e.next(4);
    i.write_shift(2, n), i.write_shift(2, s), s > 0 && bi(t) && e.push(t);
  }
}
function Ds(e, r, t, a) {
  var n = V(9);
  return Qa(n, e, r), cl(t, a || "b", n), n;
}
function Jl(e, r) {
  r.forEach(function(t) {
    var a = t[0].map(function(s) {
      return s.t;
    }).join("");
    if (a.length <= 2048) return Z(e, 28, Ss(a, t[1], t[2]));
    Z(e, 28, Ss(a.slice(0, 2048), t[1], t[2], a.length));
    for (var n = 2048; n < a.length; n += 2048) Z(e, 28, Ss(a.slice(n, Math.min(n + 2048, a.length)), -1, -1, Math.min(2048, a.length - n)));
  });
}
function au(e, r, t, a, n, s) {
  var i = 0;
  r.z != null && (i = n._BIFF2FmtTable.indexOf(r.z)) == -1 && (n._BIFF2FmtTable.push(r.z), i = n._BIFF2FmtTable.length - 1);
  var l = 0;
  if (r.z != null) {
    for (; l < n.cellXfs.length && n.cellXfs[l].numFmtId != i; ++l) ;
    l == n.cellXfs.length && n.cellXfs.push({ numFmtId: i });
  }
  if (r.v != null) switch (r.t) {
    case "d":
    case "n":
      var o = r.t == "d" ? yt(wt(r.v, s), s) : r.v;
      return void (n.biff == 2 && o == (0 | o) && o >= 0 && o < 65536 ? Z(e, 2, (function(c, f, u, h, p) {
        var d = V(9);
        return Qa(d, c, f, h || 0, p || 0), d.write_shift(2, u), d;
      })(t, a, o, l, i)) : isNaN(o) ? Z(e, 5, Ds(t, a, 36, "e")) : isFinite(o) ? Z(e, 3, (function(c, f, u, h, p) {
        var d = V(15);
        return Qa(d, c, f, h || 0, p || 0), d.write_shift(8, u, "f"), d;
      })(t, a, o, l, i)) : Z(e, 5, Ds(t, a, 7, "e")));
    case "b":
    case "e":
      return void Z(e, 5, Ds(t, a, r.v, r.t));
    case "s":
    case "str":
      return void Z(e, 4, (function(c, f, u) {
        var h = V(8 + 2 * u.length);
        return Qa(h, c, f), h.write_shift(1, u.length), h.write_shift(u.length, u, "sbcs"), h.l < h.length ? h.slice(0, h.l) : h;
      })(t, a, r.v == null ? "" : String(r.v).slice(0, 255)));
  }
  Z(e, 1, Qa(null, t, a));
}
function nu(e, r) {
  for (var t = r || {}, a = rr(), n = 0, s = 0; s < e.SheetNames.length; ++s) e.SheetNames[s] == t.sheet && (n = s);
  if (n == 0 && t.sheet && e.SheetNames[0] != t.sheet) throw new Error("Sheet not found: " + t.sheet);
  Z(a, t.biff == 4 ? 1033 : t.biff == 3 ? 521 : 9, _i(0, 16, t)), ((e.Workbook || {}).WBProps || {}).date1904 && Z(a, 34, qt(!0)), t.cellXfs = [{ numFmtId: 0 }], t._BIFF2FmtTable = ["General"], t._Fonts = [];
  var i = rr();
  return (function(l, o, c, f, u) {
    var h = o["!data"] != null, p = Je(o["!ref"] || "A1"), d = "", g = [];
    if (p.e.c > 255 || p.e.r > 16383) {
      if (f.WTF) throw new Error("Range " + (o["!ref"] || "A1") + " exceeds format limit A1:IV16384");
      p.e.c = Math.min(p.e.c, 255), p.e.r = Math.min(p.e.r, 16383);
    }
    for (var m = (((u || {}).Workbook || {}).WBProps || {}).date1904, v = [], y = [], w = p.s.c; w <= p.e.c; ++w) g[w] = De(w);
    for (var E = p.s.r; E <= p.e.r; ++E) for (h && (v = o["!data"][E] || []), d = Xe(E), w = p.s.c; w <= p.e.c; ++w) {
      var A = h ? v[w] : o[g[w] + d];
      A && (au(l, A, E, w, f, m), A.c && y.push([A.c, E, w]));
    }
    Jl(l, y);
  })(i, e.Sheets[e.SheetNames[n]], 0, t, e), t._BIFF2FmtTable.forEach(function(l) {
    t.biff <= 3 ? Z(a, 30, (function(o) {
      var c = V(1 + o.length);
      return c.write_shift(1, o.length), c.write_shift(o.length, o, "sbcs"), c;
    })(l)) : Z(a, 1054, (function(o) {
      var c = V(3 + o.length);
      return c.l += 2, c.write_shift(1, o.length), c.write_shift(o.length, o, "sbcs"), c;
    })(l));
  }), t.cellXfs.forEach(function(l) {
    switch (t.biff) {
      case 2:
        Z(a, 67, (function(o) {
          var c = V(4);
          return c.l += 2, c.write_shift(1, o.numFmtId), c.l++, c;
        })(l));
        break;
      case 3:
        Z(a, 579, dl(l));
        break;
      case 4:
        Z(a, 1091, P1(l));
    }
  }), delete t._BIFF2FmtTable, delete t.cellXfs, delete t._Fonts, a.push(i.end()), Z(a, 10), a.end();
}
var _r = 1, gr = [];
function su(e, r, t) {
  Z(e, 49, (function(a, n) {
    var s = a.name || "Arial", i = n && n.biff == 5, l = V(i ? 15 + s.length : 16 + 2 * s.length);
    return l.write_shift(2, 20 * a.sz), l.write_shift(4, 0), l.write_shift(2, 400), l.write_shift(4, 0), l.write_shift(2, 0), l.write_shift(1, s.length), i || l.write_shift(1, 1), l.write_shift((i ? 1 : 2) * s.length, s, i ? "sbcs" : "utf16le"), l;
  })({ sz: 12, name: "Arial" }, t));
}
function iu(e, r) {
  if (r) {
    var t = 0;
    r.forEach(function(a, n) {
      ++t <= 256 && a && Z(e, 125, (function(s, i) {
        var l = V(12);
        l.write_shift(2, i), l.write_shift(2, i), l.write_shift(2, 256 * s.width), l.write_shift(2, 0);
        var o = 0;
        return s.hidden && (o |= 1), l.write_shift(1, o), o = s.level || 0, l.write_shift(1, o), l.write_shift(2, 0), l;
      })(On(n, a), n));
    });
  }
}
function ou(e, r, t, a, n, s) {
  var i = 16 + Mr(n.cellXfs, r, n);
  if (r.v != null || r.bf) if (r.bf) Z(e, 6, z0(r, t, a, 0, i));
  else switch (r.t) {
    case "d":
    case "n":
      var l = r.t == "d" ? yt(wt(r.v, s), s) : r.v;
      isNaN(l) ? Z(e, 517, _s(t, a, 36, i, 0, "e")) : isFinite(l) ? Z(e, 515, (function(o, c, f, u) {
        var h = V(14);
        return ua(o, c, u, h), Ba(f, h), h;
      })(t, a, l, i)) : Z(e, 517, _s(t, a, 7, i, 0, "e"));
      break;
    case "b":
    case "e":
      Z(e, 517, _s(t, a, r.v, i, 0, r.t));
      break;
    case "s":
    case "str":
      n.bookSST ? Z(e, 253, (function(o, c, f, u) {
        var h = V(10);
        return ua(o, c, u, h), h.write_shift(4, f), h;
      })(t, a, Ii(n.Strings, r.v == null ? "" : String(r.v), n.revStrings), i)) : Z(e, 516, (function(o, c, f, u, h) {
        var p = !h || h.biff == 8, d = V(+p + 8 + (1 + p) * f.length);
        return ua(o, c, u, d), d.write_shift(2, f.length), p && d.write_shift(1, 1), d.write_shift((1 + p) * f.length, f, p ? "utf16le" : "sbcs"), d;
      })(t, a, (r.v == null ? "" : String(r.v)).slice(0, 255), i, n));
      break;
    default:
      Z(e, 513, ua(t, a, i));
  }
  else Z(e, 513, ua(t, a, i));
}
function cu(e, r, t) {
  var a, n = rr(), s = t.SheetNames[e], i = t.Sheets[s] || {}, l = (t || {}).Workbook || {}, o = (l.Sheets || [])[e] || {}, c = i["!data"] != null, f = r.biff == 8, u = "", h = [], p = Je(i["!ref"] || "A1"), d = f ? 65536 : 16384;
  if (p.e.c > 255 || p.e.r >= d) {
    if (r.WTF) throw new Error("Range " + (i["!ref"] || "A1") + " exceeds format limit A1:IV" + d);
    p.e.c = Math.min(p.e.c, 255), p.e.r = Math.min(p.e.r, d - 1);
  }
  Z(n, 2057, _i(0, 16, r)), Z(n, 13, wr(1)), Z(n, 12, wr(100)), Z(n, 15, qt(!0)), Z(n, 17, qt(!1)), Z(n, 16, Ba(1e-3)), Z(n, 95, qt(!0)), Z(n, 42, qt(!1)), Z(n, 43, qt(!1)), Z(n, 130, wr(1)), Z(n, 128, ((a = V(8)).write_shift(4, 0), a.write_shift(2, 0), a.write_shift(2, 0), a)), Z(n, 131, qt(!1)), Z(n, 132, qt(!1)), f && iu(n, i["!cols"]), Z(n, 512, (function(b, _) {
    var k = _.biff != 8 && _.biff ? 2 : 4, T = V(2 * k + 6);
    return T.write_shift(k, b.s.r), T.write_shift(k, b.e.r + 1), T.write_shift(2, b.s.c), T.write_shift(2, b.e.c + 1), T.write_shift(2, 0), T;
  })(p, r));
  var g = (((t || {}).Workbook || {}).WBProps || {}).date1904;
  f && (i["!links"] = []);
  for (var m = p.s.c; m <= p.e.c; ++m) h[m] = De(m);
  for (var v = [], y = [], w = p.s.r; w <= p.e.r; ++w) for (c && (y = i["!data"][w] || []), u = Xe(w), m = p.s.c; m <= p.e.c; ++m) {
    var E = c ? y[m] : i[h[m] + u];
    E && (ou(n, E, w, m, r, g), f && E.l && i["!links"].push([h[m] + u, E.l]), E.c && v.push([E.c, w, m]));
  }
  var A = o.CodeName || o.name || s;
  return f ? (function(b, _) {
    var k, T = [], S = 0, C = rr(), F = _r;
    _.forEach(function(P, W) {
      var U = "", G = P[0].map(function(he) {
        return he.a && !U && (U = he.a), he.t;
      }).join("");
      ++_r;
      var B = V(150);
      B.write_shift(2, 15), B.write_shift(2, 61444), B.write_shift(4, 150), B.write_shift(2, 3234), B.write_shift(2, 61450), B.write_shift(4, 8), B.write_shift(4, _r), B.write_shift(4, 2560), B.write_shift(2, 227), B.write_shift(2, 61451), B.write_shift(4, 84), B.write_shift(2, 128), B.write_shift(4, 0), B.write_shift(2, 139), B.write_shift(4, 2), B.write_shift(2, 191), B.write_shift(4, 524296), B.write_shift(2, 344), B.l += 4, B.write_shift(2, 385), B.write_shift(4, 134217808), B.write_shift(2, 387), B.write_shift(4, 134217808), B.write_shift(2, 389), B.write_shift(4, 268435700), B.write_shift(2, 447), B.write_shift(4, 1048592), B.write_shift(2, 448), B.write_shift(4, 134217809), B.write_shift(2, 451), B.write_shift(4, 268435700), B.write_shift(2, 513), B.write_shift(4, 134217809), B.write_shift(2, 515), B.write_shift(4, 268435700), B.write_shift(2, 575), B.write_shift(4, 196609), B.write_shift(2, 959), B.write_shift(4, 131072 | (P[0].hidden ? 2 : 0)), B.l += 2, B.write_shift(2, 61456), B.write_shift(4, 18), B.write_shift(2, 3), B.write_shift(2, P[2] + 2), B.l += 2, B.write_shift(2, P[1] + 1), B.l += 2, B.write_shift(2, P[2] + 4), B.l += 2, B.write_shift(2, P[1] + 5), B.l += 2, B.l += 2, B.write_shift(2, 61457), B.l += 4, B.l = 150, W == 0 ? k = B : Z(C, 236, B), S += 150;
      var z = V(52);
      z.write_shift(2, 21), z.write_shift(2, 18), z.write_shift(2, 25), z.write_shift(2, _r), z.write_shift(2, 0), z.l = 22, z.write_shift(2, 13), z.write_shift(2, 22), z.write_shift(4, 1651663474), z.write_shift(4, 2503426821), z.write_shift(4, 2150634280), z.write_shift(4, 1768515844 + 256 * _r), z.write_shift(2, 0), z.write_shift(4, 0), z.l += 4, Z(C, 93, z);
      var K = V(8);
      K.l += 2, K.write_shift(2, 61453), K.l += 4, Z(C, 236, K), S += 8;
      var ee = V(18);
      ee.write_shift(2, 18), ee.l += 8, ee.write_shift(2, G.length), ee.write_shift(2, 16), ee.l += 4, Z(C, 438, ee);
      var se = V(1 + G.length);
      se.write_shift(1, 0), se.write_shift(G.length, G, "sbcs"), Z(C, 60, se);
      var H = V(16);
      H.l += 8, H.write_shift(2, G.length), H.l += 6, Z(C, 60, H);
      var Y = V(12 + U.length);
      Y.write_shift(2, P[1]), Y.write_shift(2, P[2]), Y.write_shift(2, 0 | (P[0].hidden ? 0 : 2)), Y.write_shift(2, _r), Y.write_shift(2, U.length), Y.write_shift(1, 0), Y.write_shift(U.length, U, "sbcs"), Y.l++, T.push(Y);
    });
    var I = V(80);
    I.write_shift(2, 15), I.write_shift(2, 61442), I.write_shift(4, S + I.length - 8), I.write_shift(2, 16), I.write_shift(2, 61448), I.write_shift(4, 8), I.write_shift(4, _.length + 1), I.write_shift(4, _r), I.write_shift(2, 15), I.write_shift(2, 61443), I.write_shift(4, S + 48), I.write_shift(2, 15), I.write_shift(2, 61444), I.write_shift(4, 40), I.write_shift(2, 1), I.write_shift(2, 61449), I.write_shift(4, 16), I.l += 16, I.write_shift(2, 2), I.write_shift(2, 61450), I.write_shift(4, 8), I.write_shift(4, F), I.write_shift(4, 5), Z(b, 236, k ? xt([I, k]) : I), b.push(C.end()), T.forEach(function(P) {
      Z(b, 28, P);
    }), gr.push([F, _.length + 1, _r]), ++_r;
  })(n, v) : Jl(n, v), f && Z(n, 574, (function(b) {
    var _ = V(18), k = 1718;
    return b && b.RTL && (k |= 64), _.write_shift(2, k), _.write_shift(4, 0), _.write_shift(4, 64), _.write_shift(4, 0), _.write_shift(4, 0), _;
  })((l.Views || [])[0])), f && (i["!merges"] || []).length && Z(n, 229, (function(b) {
    var _ = V(2 + 8 * b.length);
    _.write_shift(2, b.length);
    for (var k = 0; k < b.length; ++k) Eo(b[k], _);
    return _;
  })(i["!merges"])), f && (function(b, _) {
    for (var k = 0; k < _["!links"].length; ++k) {
      var T = _["!links"][k];
      Z(b, 440, M1(T)), T[1].Tooltip && Z(b, 2048, U1(T));
    }
    delete _["!links"];
  })(n, i), Z(n, 442, ll(A)), f && (function(b, _) {
    var k = V(19);
    k.write_shift(4, 2151), k.write_shift(4, 0), k.write_shift(4, 0), k.write_shift(2, 3), k.write_shift(1, 1), k.write_shift(4, 0), Z(b, 2151, k), (k = V(39)).write_shift(4, 2152), k.write_shift(4, 0), k.write_shift(4, 0), k.write_shift(2, 3), k.write_shift(1, 0), k.write_shift(4, 0), k.write_shift(2, 1), k.write_shift(4, 4), k.write_shift(2, 0), Eo(Je(_["!ref"] || "A1"), k), k.write_shift(4, 4), Z(b, 2152, k);
  })(n, i), Z(n, 10), n.end();
}
function lu(e, r, t) {
  var a, n = rr(), s = (e || {}).Workbook || {}, i = s.Sheets || [], l = s.WBProps || {}, o = t.biff == 8, c = t.biff == 5;
  Z(n, 2057, _i(0, 5, t)), t.bookType == "xla" && Z(n, 135), Z(n, 225, o ? wr(1200) : null), Z(n, 193, (function(w, E) {
    E || (E = V(w));
    for (var A = 0; A < w; ++A) E.write_shift(1, 0);
    return E;
  })(2)), c && Z(n, 191), c && Z(n, 192), Z(n, 226), Z(n, 92, (function(w, E) {
    var A = !E || E.biff == 8, b = V(A ? 112 : 54);
    for (b.write_shift(E.biff == 8 ? 2 : 1, 7), A && b.write_shift(1, 0), b.write_shift(4, 859007059), b.write_shift(4, 5458548 | (A ? 0 : 536870912)); b.l < b.length; ) b.write_shift(1, A ? 0 : 32);
    return b;
  })(0, t)), Z(n, 66, wr(o ? 1200 : 1252)), o && Z(n, 353, wr(0)), o && Z(n, 448), Z(n, 317, (function(w) {
    for (var E = V(2 * w), A = 0; A < w; ++A) E.write_shift(2, A + 1);
    return E;
  })(e.SheetNames.length)), o && e.vbaraw && Z(n, 211), o && e.vbaraw && Z(n, 442, ll(l.CodeName || "ThisWorkbook")), Z(n, 156, wr(17)), Z(n, 25, qt(!1)), Z(n, 18, qt(!1)), Z(n, 19, wr(0)), o && Z(n, 431, qt(!1)), o && Z(n, 444, wr(0)), Z(n, 61, ((a = V(18)).write_shift(2, 0), a.write_shift(2, 0), a.write_shift(2, 29280), a.write_shift(2, 17600), a.write_shift(2, 56), a.write_shift(2, 0), a.write_shift(2, 0), a.write_shift(2, 1), a.write_shift(2, 500), a)), Z(n, 64, qt(!1)), Z(n, 141, wr(0)), Z(n, 34, qt((function(w) {
    return w.Workbook && w.Workbook.WBProps && ot(w.Workbook.WBProps.date1904) ? "true" : "false";
  })(e) == "true")), Z(n, 14, qt(!0)), o && Z(n, 439, qt(!1)), Z(n, 218, wr(0)), su(n, 0, t), (function(w, E, A) {
    E && [[5, 8], [23, 26], [41, 44], [50, 392]].forEach(function(b) {
      for (var _ = b[0]; _ <= b[1]; ++_) E[_] != null && Z(w, 1054, F1(_, E[_], A));
    });
  })(n, e.SSF, t), (function(w, E) {
    for (var A = 0; A < 16; ++A) Z(w, 224, So({ numFmtId: 0, style: !0 }, 0, E));
    E.cellXfs.forEach(function(b) {
      Z(w, 224, So(b, 0, E));
    });
  })(n, t), o && Z(n, 352, qt(!1));
  var f = n.end(), u = rr();
  o && Z(u, 140, (function(w) {
    return w || (w = V(4)), w.write_shift(2, 1), w.write_shift(2, 1), w;
  })()), o && gr.length && Z(u, 235, (function() {
    var w = V(82 + 8 * gr.length);
    w.write_shift(2, 15), w.write_shift(2, 61440), w.write_shift(4, 74 + 8 * gr.length), w.write_shift(2, 0), w.write_shift(2, 61446), w.write_shift(4, 16 + 8 * gr.length), w.write_shift(4, _r), w.write_shift(4, gr.length + 1);
    for (var E = 0, A = 0; A < gr.length; ++A) E += gr[A] && gr[A][1] || 0;
    return w.write_shift(4, E), w.write_shift(4, gr.length), gr.forEach(function(b) {
      w.write_shift(4, b[0]), w.write_shift(4, b[2]);
    }), w.write_shift(2, 51), w.write_shift(2, 61451), w.write_shift(4, 18), w.write_shift(2, 191), w.write_shift(4, 524296), w.write_shift(2, 385), w.write_shift(4, 134217793), w.write_shift(2, 448), w.write_shift(4, 134217792), w.write_shift(2, 64), w.write_shift(2, 61726), w.write_shift(4, 16), w.write_shift(4, 134217741), w.write_shift(4, 134217740), w.write_shift(4, 134217751), w.write_shift(4, 268435703), w;
  })()), o && t.Strings && (function(w, E, A) {
    var b = (A || []).length || 0;
    if (b <= 8224) return Z(w, E, A, b);
    var _ = E;
    if (!isNaN(_)) {
      for (var k = A.parts || [], T = 0, S = 0, C = 0; C + (k[T] || 8224) <= 8224; ) C += k[T] || 8224, T++;
      var F = w.next(4);
      for (F.write_shift(2, _), F.write_shift(2, C), w.push(A.slice(S, S + C)), S += C; S < b; ) {
        for ((F = w.next(4)).write_shift(2, 60), C = 0; C + (k[T] || 8224) <= 8224; ) C += k[T] || 8224, T++;
        F.write_shift(2, C), w.push(A.slice(S, S + C)), S += C;
      }
    }
  })(u, 252, (function(w) {
    var E = V(8);
    E.write_shift(4, w.Count), E.write_shift(4, w.Unique);
    for (var A = [], b = 0; b < w.length; ++b) A[b] = x1(w[b]);
    var _ = xt([E].concat(A));
    return _.parts = [E.length].concat(A.map(function(k) {
      return k.length;
    })), _;
  })(t.Strings)), Z(u, 10);
  var h = u.end(), p = rr(), d = 0, g = 0;
  for (g = 0; g < e.SheetNames.length; ++g) d += (o ? 12 : 11) + (o ? 2 : 1) * e.SheetNames[g].length;
  var m = f.length + d + h.length;
  for (g = 0; g < e.SheetNames.length; ++g)
    Z(p, 133, N1({ pos: m, hs: (i[g] || {}).Hidden || 0, dt: 0, name: e.SheetNames[g] }, t)), m += r[g].length;
  var v = p.end();
  if (d != v.length) throw new Error("BS8 " + d + " != " + v.length);
  var y = [];
  return f.length && y.push(f), v.length && y.push(v), h.length && y.push(h), xt(y);
}
function ql(e, r) {
  for (var t = 0; t <= e.SheetNames.length; ++t) {
    var a = e.Sheets[e.SheetNames[t]];
    if (a && a["!ref"]) {
      var n = Ot(a["!ref"]);
      n.e.c > 255 && typeof console < "u" && console.error && console.error("Worksheet '" + e.SheetNames[t] + "' extends beyond column IV (255).  Data may be lost."), n.e.r > 65535 && typeof console < "u" && console.error && console.error("Worksheet '" + e.SheetNames[t] + "' extends beyond row 65536.  Data may be lost.");
    }
  }
  var s = r || {};
  switch (s.biff || 2) {
    case 8:
    case 5:
      return (function(i, l) {
        var o = l || {}, c = [];
        i && !i.SSF && (i.SSF = st(be)), i && i.SSF && (xa(), Va(i.SSF), o.revssf = xn(i.SSF), o.revssf[i.SSF[65535]] = 0, o.ssf = i.SSF), _r = 1, gr = [], o.Strings = [], o.Strings.Count = 0, o.Strings.Unique = 0, Ni(o), o.cellXfs = [], Mr(o.cellXfs, {}, { revssf: { General: 0 } }), i.Props || (i.Props = {});
        for (var f = 0; f < i.SheetNames.length; ++f) c[c.length] = cu(f, o, i);
        return c.unshift(lu(i, c, o)), xt(c);
      })(e, r);
    case 4:
    case 3:
    case 2:
      return nu(e, r);
  }
  throw new Error("invalid type " + s.bookType + " for BIFF");
}
function qo(e, r) {
  var t = r || {}, a = t.dense != null ? t.dense : null, n = {};
  a && (n["!data"] = []);
  var s = (e = An(e, "<!--", "-->")).match(/<table/i);
  if (!s) throw new Error("Invalid HTML: could not find <table>");
  var i = e.match(/<\/table/i), l = s.index, o = i && i.index || e.length, c = Bf(e.slice(l, o), /(:?<tr[^<>]*>)/i, "<tr>"), f = -1, u = 0, h = 0, p = 0, d = { s: { r: 1e7, c: 1e7 }, e: { r: 0, c: 0 } }, g = [];
  for (l = 0; l < c.length; ++l) {
    var m = c[l].trim(), v = m.slice(0, 3).toLowerCase();
    if (v != "<tr") {
      if (v == "<td" || v == "<th") {
        var y = m.split(/<\/t[dh]>/i);
        for (o = 0; o < y.length; ++o) {
          var w = y[o].trim();
          if (w.match(/<t[dh]/i)) {
            for (var E = w, A = 0; E.charAt(0) == "<" && (A = E.indexOf(">")) > -1; ) E = E.slice(A + 1);
            for (var b = 0; b < g.length; ++b) {
              var _ = g[b];
              _.s.c == u && _.s.r < f && f <= _.e.r && (u = _.e.c + 1, b = -1);
            }
            var k = pe(w.slice(0, w.indexOf(">")));
            p = k.colspan ? +k.colspan : 1, ((h = +k.rowspan) > 1 || p > 1) && g.push({ s: { r: f, c: u }, e: { r: f + (h || 1) - 1, c: u + p - 1 } });
            var T = k.t || k["data-t"] || "";
            if (E.length) if (E = Rc(E), d.s.r > f && (d.s.r = f), d.e.r < f && (d.e.r = f), d.s.c > u && (d.s.c = u), d.e.c < u && (d.e.c = u), E.length) {
              var S = { t: "s", v: E };
              t.raw || !E.trim().length || T == "s" || (E === "TRUE" ? S = { t: "b", v: !0 } : E === "FALSE" ? S = { t: "b", v: !1 } : isNaN(fr(E)) ? isNaN(un(E).getDate()) ? E.charCodeAt(0) == 35 && zt[E] != null && (S.t = "e", S.w = E, S.v = zt[E]) : (S = { t: "d", v: wt(E) }, t.UTC === !1 && (S.v = ka(S.v)), t.cellDates || (S = { t: "n", v: yt(S.v) }), S.z = t.dateNF || be[14]) : S = { t: "n", v: fr(E) }), S.cellText !== !1 && (S.w = E), a ? (n["!data"][f] || (n["!data"][f] = []), n["!data"][f][u] = S) : n[Ge({ r: f, c: u })] = S, u += p;
            } else u += p;
            else u += p;
          }
        }
      }
    } else {
      if (++f, t.sheetRows && t.sheetRows <= f) {
        --f;
        break;
      }
      u = 0;
    }
  }
  return n["!ref"] = We(d), g.length && (n["!merges"] = g), n;
}
function Ql(e, r, t, a) {
  for (var n = e["!merges"] || [], s = [], i = {}, l = e["!data"] != null, o = r.s.c; o <= r.e.c; ++o) {
    for (var c = 0, f = 0, u = 0; u < n.length; ++u) if (!(n[u].s.r > t || n[u].s.c > o || n[u].e.r < t || n[u].e.c < o)) {
      if (n[u].s.r < t || n[u].s.c < o) {
        c = -1;
        break;
      }
      c = n[u].e.r - n[u].s.r + 1, f = n[u].e.c - n[u].s.c + 1;
      break;
    }
    if (!(c < 0)) {
      var h = De(o) + Xe(t), p = l ? (e["!data"][t] || [])[o] : e[h];
      p && p.t == "n" && p.v != null && !isFinite(p.v) && (p = isNaN(p.v) ? { t: "e", v: 36, w: Lt[36] } : { t: "e", v: 7, w: Lt[7] });
      var d = p && p.v != null && (p.h || Za(p.w || (Lr(p), p.w) || "")) || "";
      i = {}, c > 1 && (i.rowspan = c), f > 1 && (i.colspan = f), a.editable ? d = '<span contenteditable="true">' + d + "</span>" : p && (i["data-t"] = p && p.t || "z", p.v != null && (i["data-v"] = Za(p.v instanceof Date ? p.v.toISOString() : p.v)), p.z != null && (i["data-z"] = p.z), p.l && (p.l.Target || "#").charAt(0) != "#" && (d = '<a href="' + Za(p.l.Target) + '">' + d + "</a>")), i.id = (a.id || "sjs") + "-" + h, s.push(ne("td", d, i));
    }
  }
  return "<tr>" + s.join("") + "</tr>";
}
var Zl = '<html><head><meta charset="utf-8"/><title>SheetJS Table Export</title></head><body>', ef = "</body></html>";
function tf(e, r, t) {
  return [].join("") + "<table" + (t && t.id ? ' id="' + t.id + '"' : "") + ">";
}
function rf(e, r) {
  var t = r || {}, a = t.header != null ? t.header : Zl, n = t.footer != null ? t.footer : ef, s = [a], i = Ot(e["!ref"] || "A1");
  if (s.push(tf(0, 0, t)), e["!ref"]) for (var l = i.s.r; l <= i.e.r; ++l) s.push(Ql(e, i, l, t));
  return s.push("</table>" + n), s.join("");
}
function af(e, r, t) {
  var a = r.rows;
  if (!a) throw "Unsupported origin when " + r.tagName + " is not a TABLE";
  var n = t || {}, s = e["!data"] != null, i = 0, l = 0;
  if (n.origin != null) if (typeof n.origin == "number") i = n.origin;
  else {
    var o = typeof n.origin == "string" ? ft(n.origin) : n.origin;
    i = o.r, l = o.c;
  }
  var c = Math.min(n.sheetRows || 1e7, a.length), f = { s: { r: 0, c: 0 }, e: { r: i, c: l } };
  if (e["!ref"]) {
    var u = Ot(e["!ref"]);
    f.s.r = Math.min(f.s.r, u.s.r), f.s.c = Math.min(f.s.c, u.s.c), f.e.r = Math.max(f.e.r, u.e.r), f.e.c = Math.max(f.e.c, u.e.c), i == -1 && (f.e.r = i = u.e.r + 1);
  }
  var h = [], p = 0, d = e["!rows"] || (e["!rows"] = []), g = 0, m = 0, v = 0, y = 0, w = 0, E = 0;
  for (e["!cols"] || (e["!cols"] = []); g < a.length && m < c; ++g) {
    var A = a[g];
    if (Zo(A)) {
      if (n.display) continue;
      d[m] = { hidden: !0 };
    }
    var b = A.cells;
    for (v = y = 0; v < b.length; ++v) {
      var _ = b[v];
      if (!n.display || !Zo(_)) {
        var k = _.hasAttribute("data-v") ? _.getAttribute("data-v") : _.hasAttribute("v") ? _.getAttribute("v") : Rc(_.innerHTML), T = _.getAttribute("data-z") || _.getAttribute("z");
        for (p = 0; p < h.length; ++p) {
          var S = h[p];
          S.s.c == y + l && S.s.r < m + i && m + i <= S.e.r && (y = S.e.c + 1 - l, p = -1);
        }
        E = +_.getAttribute("colspan") || 1, ((w = +_.getAttribute("rowspan") || 1) > 1 || E > 1) && h.push({ s: { r: m + i, c: y + l }, e: { r: m + i + (w || 1) - 1, c: y + l + (E || 1) - 1 } });
        var C = { t: "s", v: k }, F = _.getAttribute("data-t") || _.getAttribute("t") || "";
        k != null && (k.length == 0 ? C.t = F || "z" : n.raw || k.trim().length == 0 || F == "s" || (F == "e" && Lt[+k] ? C = { t: "e", v: +k, w: Lt[+k] } : k === "TRUE" ? C = { t: "b", v: !0 } : k === "FALSE" ? C = { t: "b", v: !1 } : isNaN(fr(k)) ? isNaN(un(k).getDate()) ? k.charCodeAt(0) == 35 && zt[k] != null && (C = { t: "e", v: zt[k], w: k }) : (C = { t: "d", v: wt(k) }, n.UTC && (C.v = fs(C.v)), n.cellDates || (C = { t: "n", v: yt(C.v) }), C.z = n.dateNF || be[14]) : C = { t: "n", v: fr(k) })), C.z === void 0 && T != null && (C.z = T);
        var I = "", P = _.getElementsByTagName("A");
        if (P && P.length) for (var W = 0; W < P.length && (!P[W].hasAttribute("href") || (I = P[W].getAttribute("href")).charAt(0) == "#"); ++W) ;
        I && I.charAt(0) != "#" && I.slice(0, 11).toLowerCase() != "javascript:" && (C.l = { Target: I }), s ? (e["!data"][m + i] || (e["!data"][m + i] = []), e["!data"][m + i][y + l] = C) : e[Ge({ c: y + l, r: m + i })] = C, f.e.c < y + l && (f.e.c = y + l), y += E;
      }
    }
    ++m;
  }
  return h.length && (e["!merges"] = (e["!merges"] || []).concat(h)), f.e.r = Math.max(f.e.r, m - 1 + i), e["!ref"] = We(f), m >= c && (e["!fullref"] = We((f.e.r = a.length - g + m - 1 + i, f))), e;
}
function Qo(e, r) {
  var t = {};
  return (r || {}).dense && (t["!data"] = []), af(t, e, r);
}
function Zo(e) {
  var r = "", t = (function(a) {
    return a.ownerDocument.defaultView && typeof a.ownerDocument.defaultView.getComputedStyle == "function" ? a.ownerDocument.defaultView.getComputedStyle : typeof getComputedStyle == "function" ? getComputedStyle : null;
  })(e);
  return t && (r = t(e).getPropertyValue("display")), r || (r = e.style && e.style.display), r === "none";
}
function fu(e) {
  var r = e.replace(/[\t\r\n]/g, " ").trim().replace(/ +/g, " ").replace(/<text:s\/>/g, " ").replace(/<text:s text:c="(\d+)"\/>/g, function(t, a) {
    return Array(parseInt(a, 10) + 1).join(" ");
  }).replace(/<text:tab[^<>]*\/>/g, "	").replace(/<text:line-break\/>/g, `
`);
  return [et(r.replace(/<[^<>]*>/g, ""))];
}
function nf(e, r, t) {
  var a = t || {}, n = hs(e);
  Rt.lastIndex = 0, n = oi(An(n, "<!--", "-->"));
  for (var s, i, l, o = "", c = "", f = 0, u = -1, h = ""; s = Rt.exec(n); ) switch (s[3] = s[3].replace(/_[\s\S]*$/, "")) {
    case "number-style":
    case "currency-style":
    case "percentage-style":
    case "date-style":
    case "time-style":
    case "text-style":
      s[1] === "/" ? (i["truncate-on-overflow"] == "false" && (o.match(/h/) ? o = o.replace(/h+/, "[$&]") : o.match(/m/) ? o = o.replace(/m+/, "[$&]") : o.match(/s/) && (o = o.replace(/s+/, "[$&]"))), a[i.name] = o, o = "") : s[0].charAt(s[0].length - 2) !== "/" && (o = "", i = pe(s[0], !1));
      break;
    case "boolean-style":
      s[1] === "/" ? (a[i.name] = "General", o = "") : s[0].charAt(s[0].length - 2) !== "/" && (o = "", i = pe(s[0], !1));
      break;
    case "boolean":
      o += "General";
      break;
    case "text":
      s[1] === "/" ? (h = n.slice(u, Rt.lastIndex - s[0].length)) == "%" && i[0] == "<number:percentage-style" ? o += "%" : o += '"' + h.replace(/"/g, '""') + '"' : s[0].charAt(s[0].length - 2) !== "/" && (u = Rt.lastIndex);
      break;
    case "day":
      (l = pe(s[0], !1)).style === "short" ? o += "d" : o += "dd";
      break;
    case "day-of-week":
      switch ((l = pe(s[0], !1)).style) {
        case "short":
        default:
          o += "ddd";
          break;
        case "long":
          o += "dddd";
      }
      break;
    case "era":
      (l = pe(s[0], !1)).style === "short" ? o += "ee" : o += "eeee";
      break;
    case "hours":
      (l = pe(s[0], !1)).style === "short" ? o += "h" : o += "hh";
      break;
    case "minutes":
      (l = pe(s[0], !1)).style === "short" ? o += "m" : o += "mm";
      break;
    case "month":
      switch ((l = pe(s[0], !1)).textual && (o += "mm"), l.style) {
        case "short":
        default:
          o += "m";
          break;
        case "long":
          o += "mm";
      }
      break;
    case "seconds":
      (l = pe(s[0], !1)).style === "short" ? o += "s" : o += "ss", l["decimal-places"] && (o += "." + Ze("0", +l["decimal-places"]));
      break;
    case "year":
      switch ((l = pe(s[0], !1)).style) {
        case "short":
        default:
          o += "yy";
          break;
        case "long":
          o += "yyyy";
      }
      break;
    case "am-pm":
      o += "AM/PM";
      break;
    case "week-of-year":
    case "quarter":
      console.error("Excel does not support ODS format token " + s[3]);
      break;
    case "fill-character":
      s[1] === "/" ? o += '"' + (h = n.slice(u, Rt.lastIndex - s[0].length)).replace(/"/g, '""') + '"*' : s[0].charAt(s[0].length - 2) !== "/" && (u = Rt.lastIndex);
      break;
    case "scientific-number":
      o += "0." + Ze("0", +(l = pe(s[0], !1))["min-decimal-places"] || +l["decimal-places"] || 2) + Ze("?", +l["decimal-places"] - +l["min-decimal-places"] || 0) + "E" + (ot(l["forced-exponent-sign"]) ? "+" : "") + Ze("0", +l["min-exponent-digits"] || 2);
      break;
    case "fraction":
      +(l = pe(s[0], !1))["min-integer-digits"] ? o += Ze("0", +l["min-integer-digits"]) : o += "#", o += " ", o += Ze("?", +l["min-numerator-digits"] || 1), o += "/", +l["denominator-value"] ? o += l["denominator-value"] : o += Ze("?", +l["min-denominator-digits"] || 1);
      break;
    case "currency-symbol":
      s[1] === "/" ? o += '"' + n.slice(u, Rt.lastIndex - s[0].length).replace(/"/g, '""') + '"' : s[0].charAt(s[0].length - 2) !== "/" ? u = Rt.lastIndex : o += "$";
      break;
    case "text-properties":
      switch (((l = pe(s[0], !1)).color || "").toLowerCase().replace("#", "")) {
        case "ff0000":
        case "red":
          o = "[Red]" + o;
      }
      break;
    case "text-content":
      o += "@";
      break;
    case "map":
      l = pe(s[0], !1), et(l.condition) == "value()>=0" ? o = a[l["apply-style-name"]] + ";" + o : console.error("ODS number format may be incorrect: " + l.condition);
      break;
    case "number":
      if (s[1] === "/") break;
      c = "", c += Ze("0", +(l = pe(s[0], !1))["min-integer-digits"] || 1), ot(l.grouping) && (c = zr(Ze("#", Math.max(0, 4 - c.length)) + c)), (+l["min-decimal-places"] || +l["decimal-places"]) && (c += "."), +l["min-decimal-places"] && (c += Ze("0", +l["min-decimal-places"] || 1)), +l["decimal-places"] - (+l["min-decimal-places"] || 0) && (c += Ze("0", +l["decimal-places"] - (+l["min-decimal-places"] || 0))), o += c;
      break;
    case "embedded-text":
      s[1] === "/" ? f == 0 ? o += '"' + n.slice(u, Rt.lastIndex - s[0].length).replace(/"/g, '""') + '"' : o = o.slice(0, f) + '"' + n.slice(u, Rt.lastIndex - s[0].length).replace(/"/g, '""') + '"' + o.slice(f) : s[0].charAt(s[0].length - 2) !== "/" && (u = Rt.lastIndex, f = -+pe(s[0], !1).position || 0);
  }
  return a;
}
function sf(e, r, t) {
  var a, n, s, i, l, o, c, f = r || {}, u = hs(e), h = [], p = 0, d = {}, g = [], m = {};
  f.dense && (m["!data"] = []);
  var v = { value: "" }, y = {}, w = "", E = 0, A = "", b = 0, _ = [], k = [], T = -1, S = -1, C = { s: { r: 1e6, c: 1e7 }, e: { r: 0, c: 0 } }, F = 0, I = t || {}, P = {}, W = [], U = {}, G = 0, B = 0, z = [], K = 1, ee = 1, se = [], H = { Names: [], WBProps: {} }, Y = {}, he = ["", ""], te = [], Q = {}, ke = "", ce = 0, fe = !1, Ne = !1, R = 0;
  for (Rt.lastIndex = 0, u = oi(An(u, "<!--", "-->")); o = Rt.exec(u); ) switch (o[3] = o[3].replace(/_[\s\S]*$/, "")) {
    case "table":
    case "工作表":
      o[1] === "/" ? (C.e.c >= C.s.c && C.e.r >= C.s.r ? m["!ref"] = We(C) : m["!ref"] = "A1:A1", f.sheetRows > 0 && f.sheetRows <= C.e.r && (m["!fullref"] = m["!ref"], C.e.r = f.sheetRows - 1, m["!ref"] = We(C)), W.length && (m["!merges"] = W), z.length && (m["!rows"] = z), i.name = i.名称 || i.name, typeof JSON < "u" && JSON.stringify(i), g.push(i.name), d[i.name] = m, Ne = !1) : o[0].charAt(o[0].length - 2) !== "/" && (i = pe(o[0], !1), T = S = -1, C.s.r = C.s.c = 1e7, C.e.r = C.e.c = 0, m = {}, f.dense && (m["!data"] = []), W = [], z = [], Ne = !0);
      break;
    case "table-row-group":
      o[1] === "/" ? --F : ++F;
      break;
    case "table-row":
    case "行":
      if (o[1] === "/") {
        T += K, K = 1;
        break;
      }
      if ((l = pe(o[0], !1)).行号 ? T = l.行号 - 1 : T == -1 && (T = 0), (K = +l["number-rows-repeated"] || 1) < 10) for (R = 0; R < K; ++R) F > 0 && (z[T + R] = { level: F });
      S = -1;
      break;
    case "covered-table-cell":
      if (o[1] !== "/") if (++S, v = pe(o[0], !1), ee = parseInt(v["number-columns-repeated"] || "1", 10) || 1, f.sheetStubs) {
        for (; ee-- > 0; ) f.dense ? (m["!data"][T] || (m["!data"][T] = []), m["!data"][T][S] = { t: "z" }) : m[Ge({ r: T, c: S })] = { t: "z" }, ++S;
        --S;
      } else S += ee - 1;
      w = "", _ = [];
      break;
    case "table-cell":
    case "数据":
      if (o[0].charAt(o[0].length - 2) === "/") ++S, v = pe(o[0], !1), ee = parseInt(v["number-columns-repeated"] || "1", 10) || 1, c = { t: "z", v: null }, v.formula && f.cellFormula != 0 && (c.f = jo(et(v.formula))), v["style-name"] && P[v["style-name"]] && (c.z = P[v["style-name"]]), (v.数据类型 || v["value-type"]) == "string" && (c.t = "s", c.v = et(v["string-value"] || ""), f.dense ? (m["!data"][T] || (m["!data"][T] = []), m["!data"][T][S] = c) : m[De(S) + Xe(T)] = c), S += ee - 1;
      else if (o[1] !== "/") {
        w = A = "", E = b = 0, _ = [], k = [], ee = 1;
        var Ce = K ? T + K - 1 : T;
        if (++S > C.e.c && (C.e.c = S), S < C.s.c && (C.s.c = S), T < C.s.r && (C.s.r = T), Ce > C.e.r && (C.e.r = Ce), v = pe(o[0], !1), y = Gf(o[0]), te = [], Q = {}, c = { t: v.数据类型 || v["value-type"], v: null }, v["style-name"] && P[v["style-name"]] && (c.z = P[v["style-name"]]), f.cellFormula) if (v.formula && (v.formula = et(v.formula)), v["number-matrix-columns-spanned"] && v["number-matrix-rows-spanned"] && (U = { s: { r: T, c: S }, e: { r: T + (G = parseInt(v["number-matrix-rows-spanned"], 10) || 0) - 1, c: S + (B = parseInt(v["number-matrix-columns-spanned"], 10) || 0) - 1 } }, c.F = We(U), se.push([U, c.F])), v.formula) c.f = jo(v.formula);
        else for (R = 0; R < se.length; ++R) T >= se[R][0].s.r && T <= se[R][0].e.r && S >= se[R][0].s.c && S <= se[R][0].e.c && (c.F = se[R][1]);
        switch ((v["number-columns-spanned"] || v["number-rows-spanned"]) && (G = parseInt(v["number-rows-spanned"] || "1", 10) || 1) * (B = parseInt(v["number-columns-spanned"] || "1", 10) || 1) > 1 && (U = { s: { r: T, c: S }, e: { r: T + G - 1, c: S + B - 1 } }, W.push(U)), v["number-columns-repeated"] && (ee = parseInt(v["number-columns-repeated"], 10)), c.t) {
          case "boolean":
            c.t = "b", c.v = ot(v["boolean-value"]) || +v["boolean-value"] >= 1;
            break;
          case "float":
            c.t = "n", c.v = parseFloat(v.value), f.cellDates && c.z && ur(c.z) && (c.v = Xr(c.v + (H.WBProps.date1904 ? 1462 : 0)), c.t = typeof c.v == "number" ? "n" : "d");
            break;
          case "percentage":
          case "currency":
            c.t = "n", c.v = parseFloat(v.value);
            break;
          case "date":
            c.t = "d", c.v = wt(v["date-value"], H.WBProps.date1904), f.cellDates || (c.t = "n", c.v = yt(c.v, H.WBProps.date1904)), c.z || (c.z = "m/d/yy");
            break;
          case "time":
            c.t = "n", c.v = Of(v["time-value"]) / 86400, f.cellDates && (c.v = Xr(c.v), c.t = typeof c.v == "number" ? "n" : "d"), c.z || (c.z = "HH:MM:SS");
            break;
          case "number":
            c.t = "n", c.v = parseFloat(v.数据数值);
            break;
          default:
            if (c.t !== "string" && c.t !== "text" && c.t) throw new Error("Unsupported value type " + c.t);
            c.t = "s", v["string-value"] != null && (w = et(v["string-value"]), _ = []);
        }
      } else {
        if (fe = !1, y["calcext:value-type"] == "error" && zt[w] != null && (c.t = "e", c.w = w, c.v = zt[w]), c.t === "s" && (c.v = w || "", _.length && (c.R = _), fe = E == 0), Y.Target && (c.l = Y), te.length > 0 && (c.c = te, te = []), w && f.cellText !== !1 && (c.w = w), fe && (c.t = "z", delete c.v), (!fe || f.sheetStubs) && !(f.sheetRows && f.sheetRows <= T)) for (var bt = 0; bt < K; ++bt) {
          if (ee = parseInt(v["number-columns-repeated"] || "1", 10), f.dense) for (m["!data"][T + bt] || (m["!data"][T + bt] = []), m["!data"][T + bt][S] = bt == 0 ? c : st(c); --ee > 0; ) m["!data"][T + bt][S + ee] = st(c);
          else for (m[Ge({ r: T + bt, c: S })] = c; --ee > 0; ) m[Ge({ r: T + bt, c: S + ee })] = st(c);
          C.e.c <= S && (C.e.c = S);
        }
        S += (ee = parseInt(v["number-columns-repeated"] || "1", 10)) - 1, ee = 0, c = {}, w = "", _ = [];
      }
      Y = {};
      break;
    case "document":
    case "document-content":
    case "电子表格文档":
    case "spreadsheet":
    case "主体":
    case "scripts":
    case "styles":
    case "font-face-decls":
    case "master-styles":
      if (o[1] === "/") {
        if ((a = h.pop())[0] !== o[3]) throw "Bad state: " + a;
      } else o[0].charAt(o[0].length - 2) !== "/" && h.push([o[3], !0]);
      break;
    case "annotation":
      if (o[1] === "/") {
        if ((a = h.pop())[0] !== o[3]) throw "Bad state: " + a;
        Q.t = w, _.length && (Q.R = _), Q.a = ke, te.push(Q), w = A, E = b, _ = k;
      } else if (o[0].charAt(o[0].length - 2) !== "/") {
        h.push([o[3], !1]);
        var tt = pe(o[0], !0);
        tt.display && ot(tt.display) || (te.hidden = !0), A = w, b = E, k = _, w = "", E = 0, _ = [];
      }
      ke = "", ce = 0;
      break;
    case "creator":
      o[1] === "/" ? ke = u.slice(ce, o.index) : ce = o.index + o[0].length;
      break;
    case "meta":
    case "元数据":
    case "settings":
    case "config-item-set":
    case "config-item-map-indexed":
    case "config-item-map-entry":
    case "config-item-map-named":
    case "shapes":
    case "frame":
    case "text-box":
    case "image":
    case "data-pilot-tables":
    case "list-style":
    case "form":
    case "dde-links":
    case "event-listeners":
    case "chart":
      if (o[1] === "/") {
        if ((a = h.pop())[0] !== o[3]) throw "Bad state: " + a;
      } else o[0].charAt(o[0].length - 2) !== "/" && h.push([o[3], !1]);
      w = "", E = 0, _ = [];
      break;
    case "scientific-number":
    case "currency-symbol":
    case "fill-character":
    case "script":
    case "libraries":
    case "automatic-styles":
    case "default-style":
    case "page-layout":
    case "map":
    case "font-face":
    case "paragraph-properties":
    case "table-properties":
    case "table-column-properties":
    case "table-row-properties":
    case "table-cell-properties":
    case "number":
    case "fraction":
    case "day":
    case "month":
    case "year":
    case "era":
    case "day-of-week":
    case "week-of-year":
    case "quarter":
    case "hours":
    case "minutes":
    case "seconds":
    case "am-pm":
    case "boolean":
    case "text-content":
    case "text-properties":
    case "embedded-text":
    case "body":
    case "电子表格":
    case "forms":
    case "table-column":
    case "table-header-rows":
    case "table-rows":
    case "table-column-group":
    case "table-header-columns":
    case "table-columns":
    case "graphic-properties":
    case "calculation-settings":
    case "named-expressions":
    case "label-range":
    case "label-ranges":
    case "named-expression":
    case "sort":
    case "sort-by":
    case "sort-groups":
    case "tab":
    case "line-break":
    case "span":
    case "s":
    case "date":
    case "object":
    case "title":
    case "标题":
    case "desc":
    case "binary-data":
    case "table-source":
    case "scenario":
    case "iteration":
    case "content-validations":
    case "content-validation":
    case "help-message":
    case "error-message":
    case "database-ranges":
    case "filter":
    case "filter-and":
    case "filter-or":
    case "filter-condition":
    case "filter-set-item":
    case "list-level-style-bullet":
    case "list-level-style-number":
    case "list-level-properties":
    case "sender-firstname":
    case "sender-lastname":
    case "sender-initials":
    case "sender-title":
    case "sender-position":
    case "sender-email":
    case "sender-phone-private":
    case "sender-fax":
    case "sender-company":
    case "sender-phone-work":
    case "sender-street":
    case "sender-city":
    case "sender-postal-code":
    case "sender-country":
    case "sender-state-or-province":
    case "author-name":
    case "author-initials":
    case "chapter":
    case "file-name":
    case "template-name":
    case "sheet-name":
    case "event-listener":
    case "initial-creator":
    case "creation-date":
    case "print-date":
    case "generator":
    case "document-statistic":
    case "user-defined":
    case "editing-duration":
    case "editing-cycles":
    case "config-item":
    case "page-number":
    case "page-count":
    case "time":
    case "cell-range-source":
    case "detective":
    case "operation":
    case "highlighted-range":
    case "data-pilot-table":
    case "source-cell-range":
    case "source-service":
    case "data-pilot-field":
    case "data-pilot-level":
    case "data-pilot-subtotals":
    case "data-pilot-subtotal":
    case "data-pilot-members":
    case "data-pilot-member":
    case "data-pilot-display-info":
    case "data-pilot-sort-info":
    case "data-pilot-layout-info":
    case "data-pilot-field-reference":
    case "data-pilot-groups":
    case "data-pilot-group":
    case "data-pilot-group-member":
    case "rect":
    case "dde-connection-decls":
    case "dde-connection-decl":
    case "dde-link":
    case "dde-source":
    case "properties":
    case "property":
    case "table-protection":
    case "data-pilot-grand-total":
    case "office-document-common-attrs":
      break;
    case "text-style":
    case "boolean-style":
    case "number-style":
    case "currency-style":
    case "percentage-style":
    case "date-style":
    case "time-style":
      if (o[1] === "/") {
        var pt = Rt.lastIndex;
        nf(u.slice(s, Rt.lastIndex), 0, I), Rt.lastIndex = pt;
      } else o[0].charAt(o[0].length - 2) !== "/" && (s = Rt.lastIndex - o[0].length);
      break;
    case "style":
      var mt = pe(o[0], !1);
      mt.family == "table-cell" && I[mt["data-style-name"]] && (P[mt.name] = I[mt["data-style-name"]]);
      break;
    case "text":
      if (o[0].slice(-2) === "/>") break;
      if (o[1] === "/") switch (h[h.length - 1][0]) {
        case "number-style":
        case "date-style":
        case "time-style":
          u.slice(p, o.index);
      }
      else p = o.index + o[0].length;
      break;
    case "named-range":
      he = Rs((n = pe(o[0], !1))["cell-range-address"]);
      var ue = { Name: n.name, Ref: he[0] + "!" + he[1] };
      Ne && (ue.Sheet = g.length), H.Names.push(ue);
      break;
    case "null-date":
      (n = pe(o[0], !1))["date-value"] === "1904-01-01" && (H.WBProps.date1904 = !0);
      break;
    case "p":
    case "文本串":
      if (["master-styles"].indexOf(h[h.length - 1][0]) > -1) break;
      if (o[1] !== "/" || v && v["string-value"]) o[0].slice(-2) == "/>" ? w += `
` : (pe(o[0], !1), E = o.index + o[0].length);
      else {
        var _t = fu(u.slice(E, o.index));
        w = (w.length > 0 ? w + `
` : "") + _t[0];
      }
      break;
    case "database-range":
      if (o[1] === "/") break;
      try {
        d[(he = Rs(pe(o[0])["target-range-address"]))[0]]["!autofilter"] = { ref: he[1] };
      } catch {
      }
      break;
    case "a":
      if (o[1] !== "/") {
        if (!(Y = pe(o[0], !1)).href) break;
        Y.Target = et(Y.href), delete Y.href, Y.Target.charAt(0) == "#" && Y.Target.indexOf(".") > -1 ? (he = Rs(Y.Target.slice(1)), Y.Target = "#" + he[0] + "!" + he[1]) : Y.Target.match(/^\.\.[\\\/]/) && (Y.Target = Y.Target.slice(3));
      }
      break;
    default:
      switch (o[2]) {
        case "dc:":
        case "calcext:":
        case "loext:":
        case "ooo:":
        case "chartooo:":
        case "draw:":
        case "style:":
        case "chart:":
        case "form:":
        case "uof:":
        case "表:":
        case "字:":
          break;
        default:
          if (f.WTF) throw new Error(o);
      }
  }
  var Nt = { Sheets: d, SheetNames: g, Workbook: H };
  return f.bookSheets && delete Nt.Sheets, Nt;
}
function ec(e, r) {
  r = r || {}, br(e, "META-INF/manifest.xml") && (function(i, l) {
    for (var o, c, f = hs(i); o = Rt.exec(f); ) switch (o[3]) {
      case "manifest":
        break;
      case "file-entry":
        if ((c = pe(o[0], !1)).path == "/" && c.type !== "application/vnd.oasis.opendocument.spreadsheet") throw new Error("This OpenDocument is not a spreadsheet");
        break;
      case "encryption-data":
      case "algorithm":
      case "start-key-generation":
      case "key-derivation":
        throw new Error("Unsupported ODS Encryption");
      default:
        if (l && l.WTF) throw o;
    }
  })(It(e, "META-INF/manifest.xml"), r);
  var t = ir(e, "styles.xml"), a = t && nf(ht(t)), n = ir(e, "content.xml");
  if (!n) throw new Error("Missing content.xml in ODS / UOF file");
  var s = sf(ht(n), r, a);
  return br(e, "meta.xml") && (s.Props = Qc(It(e, "meta.xml"))), s.bookType = "ods", s;
}
function tc(e, r) {
  var t = sf(e, r);
  return t.bookType = "fods", t;
}
var hu = (function() {
  var e = ["<office:master-styles>", '<style:master-page style:name="mp1" style:page-layout-name="mp1">', "<style:header/>", '<style:header-left style:display="false"/>', "<style:footer/>", '<style:footer-left style:display="false"/>', "</style:master-page>", "</office:master-styles>"].join(""), r = "<office:document-styles " + _a({ "xmlns:office": "urn:oasis:names:tc:opendocument:xmlns:office:1.0", "xmlns:table": "urn:oasis:names:tc:opendocument:xmlns:table:1.0", "xmlns:style": "urn:oasis:names:tc:opendocument:xmlns:style:1.0", "xmlns:text": "urn:oasis:names:tc:opendocument:xmlns:text:1.0", "xmlns:draw": "urn:oasis:names:tc:opendocument:xmlns:drawing:1.0", "xmlns:fo": "urn:oasis:names:tc:opendocument:xmlns:xsl-fo-compatible:1.0", "xmlns:xlink": "http://www.w3.org/1999/xlink", "xmlns:dc": "http://purl.org/dc/elements/1.1/", "xmlns:number": "urn:oasis:names:tc:opendocument:xmlns:datastyle:1.0", "xmlns:svg": "urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0", "xmlns:of": "urn:oasis:names:tc:opendocument:xmlns:of:1.2", "office:version": "1.2" }) + ">" + e + "</office:document-styles>";
  return function() {
    return kt + r;
  };
})();
function uu(e, r) {
  var t = "number", a = "", n = { "style:name": r }, s = "", i = 0;
  e: if ((e = e.replace(/"[$]"/g, "$")).indexOf(";") > -1 && (console.error("Unsupported ODS Style Map exported.  Using first branch of " + e), e = e.slice(0, e.indexOf(";"))), e != "@") {
    if (e.indexOf(/\$/) > -1 && (t = "currency"), e[i] == '"') {
      for (s = ""; e[++i] != '"' || e[++i] == '"'; ) s += e[i];
      e[--i + 1] == "*" ? (i++, a += "<number:fill-character>" + Be(s.replace(/""/g, '"')) + "</number:fill-character>") : a += "<number:text>" + Be(s.replace(/""/g, '"')) + "</number:text>", e = e.slice(i + 1), i = 0;
    }
    var l = e.match(/# (\?+)\/(\?+)/);
    if (l) a += ne("number:fraction", null, { "number:min-integer-digits": 0, "number:min-numerator-digits": l[1].length, "number:max-denominator-value": Math.max(+l[1].replace(/./g, "9"), +l[2].replace(/./g, "9")) });
    else if (l = e.match(/# (\?+)\/(\d+)/)) a += ne("number:fraction", null, { "number:min-integer-digits": 0, "number:min-numerator-digits": l[1].length, "number:denominator-value": +l[2] });
    else if (l = e.match(/\b(\d+)(|\.\d+)%/)) t = "percentage", a += ne("number:number", null, { "number:decimal-places": l[2] && l.length - 1 || 0, "number:min-decimal-places": l[2] && l.length - 1 || 0, "number:min-integer-digits": l[1].length }) + "<number:text>%</number:text>";
    else {
      var o = !1;
      if (["y", "m", "d"].indexOf(e[0]) > -1) {
        t = "date";
        t: for (; i < e.length; ++i) switch (s = e[i].toLowerCase()) {
          case "h":
          case "s":
            o = !0, --i;
            break t;
          case "m":
            r: for (var c = i + 1; c < e.length; ++c) switch (e[c]) {
              case "y":
              case "d":
                break r;
              case "h":
              case "s":
                o = !0, --i;
                break t;
            }
          case "y":
          case "d":
            for (; (e[++i] || "").toLowerCase() == s[0]; ) s += s[0];
            switch (--i, s) {
              case "y":
              case "yy":
                a += "<number:year/>";
                break;
              case "yyy":
              case "yyyy":
                a += '<number:year number:style="long"/>';
                break;
              case "mmmmm":
                console.error("ODS has no equivalent of format |mmmmm|");
              case "m":
              case "mm":
              case "mmm":
              case "mmmm":
                a += '<number:month number:style="' + (s.length % 2 ? "short" : "long") + '" number:textual="' + (s.length >= 3 ? "true" : "false") + '"/>';
                break;
              case "d":
              case "dd":
                a += '<number:day number:style="' + (s.length % 2 ? "short" : "long") + '"/>';
                break;
              case "ddd":
              case "dddd":
                a += '<number:day-of-week number:style="' + (s.length % 2 ? "short" : "long") + '"/>';
            }
            break;
          case '"':
            for (; e[++i] != '"' || e[++i] == '"'; ) s += e[i];
            --i, a += "<number:text>" + Be(s.slice(1).replace(/""/g, '"')) + "</number:text>";
            break;
          case "\\":
            a += "<number:text>" + Be(s = e[++i]) + "</number:text>";
            break;
          case "/":
          case ":":
            a += "<number:text>" + Be(s) + "</number:text>";
            break;
          default:
            console.error("unrecognized character " + s + " in ODF format " + e);
        }
        if (!o) break e;
        e = e.slice(i + 1), i = 0;
      }
      if (e.match(/^\[?[hms]/)) for (t == "number" && (t = "time"), e.match(/\[/) && (e = e.replace(/[\[\]]/g, ""), n["number:truncate-on-overflow"] = "false"); i < e.length; ++i) switch (s = e[i].toLowerCase()) {
        case "h":
        case "m":
        case "s":
          for (; (e[++i] || "").toLowerCase() == s[0]; ) s += s[0];
          switch (--i, s) {
            case "h":
            case "hh":
              a += '<number:hours number:style="' + (s.length % 2 ? "short" : "long") + '"/>';
              break;
            case "m":
            case "mm":
              a += '<number:minutes number:style="' + (s.length % 2 ? "short" : "long") + '"/>';
              break;
            case "s":
            case "ss":
              if (e[i + 1] == ".") do
                s += e[i + 1], ++i;
              while (e[i + 1] == "0");
              a += '<number:seconds number:style="' + (s.match("ss") ? "long" : "short") + '"' + (s.match(/\./) ? ' number:decimal-places="' + (s.match(/0+/) || [""])[0].length + '"' : "") + "/>";
          }
          break;
        case '"':
          for (; e[++i] != '"' || e[++i] == '"'; ) s += e[i];
          --i, a += "<number:text>" + Be(s.slice(1).replace(/""/g, '"')) + "</number:text>";
          break;
        case "/":
        case ":":
          a += "<number:text>" + Be(s) + "</number:text>";
          break;
        case "a":
          if (e.slice(i, i + 3).toLowerCase() == "a/p") {
            a += "<number:am-pm/>", i += 2;
            break;
          }
          if (e.slice(i, i + 5).toLowerCase() == "am/pm") {
            a += "<number:am-pm/>", i += 4;
            break;
          }
        default:
          console.error("unrecognized character " + s + " in ODF format " + e);
      }
      else {
        if (e.indexOf(/\$/) > -1 && (t = "currency"), e[0] == "$" && (a += '<number:currency-symbol number:language="en" number:country="US">$</number:currency-symbol>', e = e.slice(1), i = 0), e[i = 0] == '"') {
          for (; e[++i] != '"' || e[++i] == '"'; ) s += e[i];
          e[--i + 1] == "*" ? (i++, a += "<number:fill-character>" + Be(s.replace(/""/g, '"')) + "</number:fill-character>") : a += "<number:text>" + Be(s.replace(/""/g, '"')) + "</number:text>", e = e.slice(i + 1), i = 0;
        }
        var f = e.match(/([#0][0#,]*)(\.[0#]*|)(E[+]?0*|)/i);
        if (f && f[0]) {
          var u = f[1].replace(/,/g, "");
          a += "<number:" + (f[3] ? "scientific-" : "") + 'number number:min-integer-digits="' + (u.indexOf("0") == -1 ? "0" : u.length - u.indexOf("0")) + '"' + (f[0].indexOf(",") > -1 ? ' number:grouping="true"' : "") + (f[2] && ' number:decimal-places="' + (f[2].length - 1) + '"' || ' number:decimal-places="0"') + (f[3] && f[3].indexOf("+") > -1 ? ' number:forced-exponent-sign="true"' : "") + (f[3] ? ' number:min-exponent-digits="' + f[3].match(/0+/)[0].length + '"' : "") + "></number:" + (f[3] ? "scientific-" : "") + "number>", i = f.index + f[0].length;
        } else console.error("Could not find numeric part of " + e);
        if (e[i] == '"') {
          for (s = ""; e[++i] != '"' || e[++i] == '"'; ) s += e[i];
          --i, a += "<number:text>" + Be(s.replace(/""/g, '"')) + "</number:text>";
        }
      }
    }
  } else t = "text", a = "<number:text-content/>";
  return a ? ne("number:" + t + "-style", a, n) : (console.error("Could not generate ODS number format for |" + e + "|"), "");
}
function rc(e, r, t) {
  for (var a = [], n = 0; n < e.length; ++n) {
    var s = e[n];
    s && s.Sheet == (t == -1 ? null : t) && a.push(s);
  }
  return a.length ? `      <table:named-expressions>
` + a.map(function(i) {
    var l = (t == -1 ? "$" : "") + Rl(i.Ref);
    return "        " + ne("table:named-range", null, { "table:name": i.Name, "table:cell-range-address": l, "table:base-cell-address": l.replace(/[\.][^\.]*$/, ".$A$1") });
  }).join(`
`) + `
      </table:named-expressions>
` : "";
}
var ac = /* @__PURE__ */ (function() {
  var e = function(a, n) {
    return Be(a).replace(/  +/g, function(s) {
      return '<text:s text:c="' + s.length + '"/>';
    }).replace(/\t/g, "<text:tab/>").replace(/\n/g, "</text:p><text:p>").replace(/^ /, "<text:s/>").replace(/ $/, "<text:s/>");
  }, r = `          <table:table-cell />
`, t = function(a, n, s, i, l, o) {
    var c = [];
    c.push('      <table:table table:name="' + Be(n.SheetNames[s]) + `" table:style-name="ta1">
`);
    var f = 0, u = 0, h = Ot(a["!ref"] || "A1"), p = a["!merges"] || [], d = 0, g = a["!data"] != null;
    if (a["!cols"]) for (u = 0; u <= h.e.c; ++u) c.push("        <table:table-column" + (a["!cols"][u] ? ' table:style-name="co' + a["!cols"][u].ods + '"' : "") + `></table:table-column>
`);
    var m = "", v = a["!rows"] || [];
    for (f = 0; f < h.s.r; ++f) m = v[f] ? ' table:style-name="ro' + v[f].ods + '"' : "", c.push("        <table:table-row" + m + `></table:table-row>
`);
    for (; f <= h.e.r; ++f) {
      for (m = v[f] ? ' table:style-name="ro' + v[f].ods + '"' : "", c.push("        <table:table-row" + m + `>
`), u = 0; u < h.s.c; ++u) c.push(r);
      for (; u <= h.e.c; ++u) {
        var y = !1, w = {}, E = "";
        for (d = 0; d != p.length; ++d) if (!(p[d].s.c > u || p[d].s.r > f || p[d].e.c < u || p[d].e.r < f)) {
          p[d].s.c == u && p[d].s.r == f || (y = !0), w["table:number-columns-spanned"] = p[d].e.c - p[d].s.c + 1, w["table:number-rows-spanned"] = p[d].e.r - p[d].s.r + 1;
          break;
        }
        if (y) c.push(`          <table:covered-table-cell/>
`);
        else {
          var A = Ge({ r: f, c: u }), b = g ? (a["!data"][f] || [])[u] : a[A];
          if (b && b.f && (w["table:formula"] = Be(K0(b.f)), b.F && b.F.slice(0, A.length) == A)) {
            var _ = Ot(b.F);
            w["table:number-matrix-columns-spanned"] = _.e.c - _.s.c + 1, w["table:number-matrix-rows-spanned"] = _.e.r - _.s.r + 1;
          }
          if (b) {
            switch (b.t) {
              case "b":
                E = b.v ? "TRUE" : "FALSE", w["office:value-type"] = "boolean", w["office:boolean-value"] = b.v ? "true" : "false";
                break;
              case "n":
                isFinite(b.v) ? (E = b.w || String(b.v || 0), w["office:value-type"] = "float", w["office:value"] = b.v || 0) : (isNaN(b.v) ? (E = "#NUM!", w["table:formula"] = "of:=#NUM!") : (E = "#DIV/0!", w["table:formula"] = "of:=" + (b.v < 0 ? "-" : "") + "1/0"), w["office:string-value"] = "", w["office:value-type"] = "string", w["calcext:value-type"] = "error");
                break;
              case "s":
              case "str":
                E = b.v == null ? "" : b.v, w["office:value-type"] = "string";
                break;
              case "d":
                E = b.w || wt(b.v, o).toISOString(), w["office:value-type"] = "date", w["office:date-value"] = wt(b.v, o).toISOString(), w["table:style-name"] = "ce1";
                break;
              default:
                c.push(r);
                continue;
            }
            var k = e(E);
            if (b.l && b.l.Target) {
              var T = b.l.Target;
              (T = T.charAt(0) == "#" ? "#" + Rl(T.slice(1)) : T).charAt(0) == "#" || T.match(/^\w+:/) || (T = "../" + T), k = ne("text:a", k, { "xlink:href": T.replace(/&/g, "&amp;") });
            }
            l[b.z] && (w["table:style-name"] = "ce" + l[b.z].slice(1));
            var S = ne("text:p", k, {});
            if (b.c) {
              for (var C = "", F = "", I = {}, P = 0; P < b.c.length; ++P) !C && b.c[P].a && (C = b.c[P].a), F += "<text:p>" + e(b.c[P].t) + "</text:p>";
              b.c.hidden || (I["office:display"] = !0), S = ne("office:annotation", F, I) + S;
            }
            c.push("          " + ne("table:table-cell", S, w) + `
`);
          } else c.push(r);
        }
      }
      c.push(`        </table:table-row>
`);
    }
    return (n.Workbook || {}).Names && c.push(rc(n.Workbook.Names, n.SheetNames, s)), c.push(`      </table:table>
`), c.join("");
  };
  return function(a, n) {
    var s = [kt], i = _a({ "xmlns:office": "urn:oasis:names:tc:opendocument:xmlns:office:1.0", "xmlns:table": "urn:oasis:names:tc:opendocument:xmlns:table:1.0", "xmlns:style": "urn:oasis:names:tc:opendocument:xmlns:style:1.0", "xmlns:text": "urn:oasis:names:tc:opendocument:xmlns:text:1.0", "xmlns:draw": "urn:oasis:names:tc:opendocument:xmlns:drawing:1.0", "xmlns:fo": "urn:oasis:names:tc:opendocument:xmlns:xsl-fo-compatible:1.0", "xmlns:xlink": "http://www.w3.org/1999/xlink", "xmlns:dc": "http://purl.org/dc/elements/1.1/", "xmlns:meta": "urn:oasis:names:tc:opendocument:xmlns:meta:1.0", "xmlns:number": "urn:oasis:names:tc:opendocument:xmlns:datastyle:1.0", "xmlns:presentation": "urn:oasis:names:tc:opendocument:xmlns:presentation:1.0", "xmlns:svg": "urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0", "xmlns:chart": "urn:oasis:names:tc:opendocument:xmlns:chart:1.0", "xmlns:dr3d": "urn:oasis:names:tc:opendocument:xmlns:dr3d:1.0", "xmlns:math": "http://www.w3.org/1998/Math/MathML", "xmlns:form": "urn:oasis:names:tc:opendocument:xmlns:form:1.0", "xmlns:script": "urn:oasis:names:tc:opendocument:xmlns:script:1.0", "xmlns:ooo": "http://openoffice.org/2004/office", "xmlns:ooow": "http://openoffice.org/2004/writer", "xmlns:oooc": "http://openoffice.org/2004/calc", "xmlns:dom": "http://www.w3.org/2001/xml-events", "xmlns:xforms": "http://www.w3.org/2002/xforms", "xmlns:xsd": "http://www.w3.org/2001/XMLSchema", "xmlns:xsi": "http://www.w3.org/2001/XMLSchema-instance", "xmlns:sheet": "urn:oasis:names:tc:opendocument:sh33tjs:1.0", "xmlns:rpt": "http://openoffice.org/2005/report", "xmlns:of": "urn:oasis:names:tc:opendocument:xmlns:of:1.2", "xmlns:xhtml": "http://www.w3.org/1999/xhtml", "xmlns:grddl": "http://www.w3.org/2003/g/data-view#", "xmlns:tableooo": "http://openoffice.org/2009/table", "xmlns:drawooo": "http://openoffice.org/2010/draw", "xmlns:calcext": "urn:org:documentfoundation:names:experimental:calc:xmlns:calcext:1.0", "xmlns:loext": "urn:org:documentfoundation:names:experimental:office:xmlns:loext:1.0", "xmlns:field": "urn:openoffice:names:experimental:ooo-ms-interop:xmlns:field:1.0", "xmlns:formx": "urn:openoffice:names:experimental:ooxml-odf-interop:xmlns:form:1.0", "xmlns:css3t": "http://www.w3.org/TR/css3-text/", "office:version": "1.2" }), l = _a({ "xmlns:config": "urn:oasis:names:tc:opendocument:xmlns:config:1.0", "office:mimetype": "application/vnd.oasis.opendocument.spreadsheet" });
    n.bookType == "fods" ? (s.push("<office:document" + i + l + `>
`), s.push(qc().replace(/<office:document-meta[^<>]*?>/, "").replace(/<\/office:document-meta>/, "") + `
`)) : s.push("<office:document-content" + i + `>
`);
    var o = (function(f, u) {
      f.push(` <office:automatic-styles>
`);
      var h = 0;
      u.SheetNames.map(function(m) {
        return u.Sheets[m];
      }).forEach(function(m) {
        if (m && m["!cols"]) {
          for (var v = 0; v < m["!cols"].length; ++v) if (m["!cols"][v]) {
            var y = m["!cols"][v];
            if (y.width == null && y.wpx == null && y.wch == null) continue;
            jr(y), y.ods = h;
            var w = m["!cols"][v].wpx + "px";
            f.push('  <style:style style:name="co' + h + `" style:family="table-column">
`), f.push('   <style:table-column-properties fo:break-before="auto" style:column-width="' + w + `"/>
`), f.push(`  </style:style>
`), ++h;
          }
        }
      });
      var p = 0;
      u.SheetNames.map(function(m) {
        return u.Sheets[m];
      }).forEach(function(m) {
        if (m && m["!rows"]) {
          for (var v = 0; v < m["!rows"].length; ++v) if (m["!rows"][v]) {
            m["!rows"][v].ods = p;
            var y = m["!rows"][v].hpx + "px";
            f.push('  <style:style style:name="ro' + p + `" style:family="table-row">
`), f.push('   <style:table-row-properties fo:break-before="auto" style:row-height="' + y + `"/>
`), f.push(`  </style:style>
`), ++p;
          }
        }
      }), f.push(`  <style:style style:name="ta1" style:family="table" style:master-page-name="mp1">
`), f.push(`   <style:table-properties table:display="true" style:writing-mode="lr-tb"/>
`), f.push(`  </style:style>
`), f.push(`  <number:date-style style:name="N37" number:automatic-order="true">
`), f.push(`   <number:month number:style="long"/>
`), f.push(`   <number:text>/</number:text>
`), f.push(`   <number:day number:style="long"/>
`), f.push(`   <number:text>/</number:text>
`), f.push(`   <number:year/>
`), f.push(`  </number:date-style>
`);
      var d = {}, g = 69;
      return u.SheetNames.map(function(m) {
        return u.Sheets[m];
      }).forEach(function(m) {
        if (m) {
          var v = m["!data"] != null;
          if (m["!ref"]) for (var y = Ot(m["!ref"]), w = 0; w <= y.e.r; ++w) for (var E = 0; E <= y.e.c; ++E) {
            var A = v ? (m["!data"][w] || [])[E] : m[Ge({ r: w, c: E })];
            if (A && A.z && A.z.toLowerCase() != "general" && !d[A.z]) {
              var b = uu(A.z, "N" + g);
              b && (d[A.z] = "N" + g, ++g, f.push(b + `
`));
            }
          }
        }
      }), f.push(`  <style:style style:name="ce1" style:family="table-cell" style:parent-style-name="Default" style:data-style-name="N37"/>
`), gt(d).forEach(function(m) {
        f.push('<style:style style:name="ce' + d[m].slice(1) + '" style:family="table-cell" style:parent-style-name="Default" style:data-style-name="' + d[m] + `"/>
`);
      }), f.push(` </office:automatic-styles>
`), d;
    })(s, a);
    s.push(`  <office:body>
`), s.push(`    <office:spreadsheet>
`), ((a.Workbook || {}).WBProps || {}).date1904 && s.push(`      <table:calculation-settings table:case-sensitive="false" table:search-criteria-must-apply-to-whole-cell="true" table:use-wildcards="true" table:use-regular-expressions="false" table:automatic-find-labels="false">
        <table:null-date table:date-value="1904-01-01"/>
      </table:calculation-settings>
`);
    for (var c = 0; c != a.SheetNames.length; ++c) s.push(t(a.Sheets[a.SheetNames[c]], a, c, 0, o, ((a.Workbook || {}).WBProps || {}).date1904));
    return (a.Workbook || {}).Names && s.push(rc(a.Workbook.Names, a.SheetNames, -1)), s.push(`    </office:spreadsheet>
`), s.push(`  </office:body>
`), n.bookType == "fods" ? s.push("</office:document>") : s.push("</office:document-content>"), s.join("");
  };
})();
function of(e, r) {
  if (r.bookType == "fods") return ac(e, r);
  var t = li(), a = "", n = [], s = [];
  return Me(t, a = "mimetype", "application/vnd.oasis.opendocument.spreadsheet"), Me(t, a = "content.xml", ac(e, r)), n.push([a, "text/xml"]), s.push([a, "ContentFile"]), Me(t, a = "styles.xml", hu(e, r)), n.push([a, "text/xml"]), s.push([a, "StylesFile"]), Me(t, a = "meta.xml", kt + qc()), n.push([a, "text/xml"]), s.push([a, "MetadataFile"]), Me(t, a = "manifest.rdf", (function(i) {
    var l = [kt];
    l.push(`<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
`);
    for (var o = 0; o != i.length; ++o) l.push(fo(i[o][0], i[o][1])), l.push(T1("", i[o][0]));
    return l.push(fo("", "Document", "pkg")), l.push("</rdf:RDF>"), l.join("");
  })(s)), n.push([a, "application/rdf+xml"]), Me(t, a = "META-INF/manifest.xml", (function(i) {
    var l = [kt];
    l.push(`<manifest:manifest xmlns:manifest="urn:oasis:names:tc:opendocument:xmlns:manifest:1.0" manifest:version="1.2">
`), l.push(`  <manifest:file-entry manifest:full-path="/" manifest:version="1.2" manifest:media-type="application/vnd.oasis.opendocument.spreadsheet"/>
`);
    for (var o = 0; o < i.length; ++o) l.push('  <manifest:file-entry manifest:full-path="' + i[o][0] + '" manifest:media-type="' + i[o][1] + `"/>
`);
    return l.push("</manifest:manifest>"), l.join("");
  })(n)), t;
}
var At = (function() {
  try {
    return typeof Uint8Array > "u" || Uint8Array.prototype.subarray === void 0 ? "slice" : typeof Buffer < "u" ? Buffer.prototype.subarray === void 0 ? "slice" : (typeof Buffer.from == "function" ? Buffer.from([72, 62]) : new Buffer([72, 62])) instanceof Uint8Array ? "subarray" : "slice" : "subarray";
  } catch {
    return "slice";
  }
})();
function Kr(e) {
  return new DataView(e.buffer, e.byteOffset, e.byteLength);
}
function Ar(e) {
  return typeof TextDecoder < "u" ? new TextDecoder().decode(e) : ht(Pr(e));
}
function ar(e) {
  return typeof TextEncoder < "u" ? new TextEncoder().encode(e) : sr(Dr(e));
}
function ra(e) {
  for (var r = 0, t = 0; t < e.length; ++t) r += e[t].length;
  var a = new Uint8Array(r), n = 0;
  for (t = 0; t < e.length; ++t) {
    var s = e[t], i = s.length;
    if (i < 250) for (var l = 0; l < i; ++l) a[n++] = s[l];
    else a.set(s, n), n += i;
  }
  return a;
}
function ln(e) {
  return 16843009 * ((e = (858993459 & (e -= e >> 1 & 1431655765)) + (e >> 2 & 858993459)) + (e >> 4) & 252645135) >>> 24;
}
function yn(e, r) {
  var t = r.l, a = 127 & e[t];
  e: if (e[t++] >= 128 && (a |= (127 & e[t]) << 7, e[t++] < 128 || (a |= (127 & e[t]) << 14, e[t++] < 128) || (a |= (127 & e[t]) << 21, e[t++] < 128) || (a += (127 & e[t]) * Math.pow(2, 28), ++t, e[t++] < 128) || (a += (127 & e[t]) * Math.pow(2, 35), ++t, e[t++] < 128) || (a += (127 & e[t]) * Math.pow(2, 42), ++t, e[t++] < 128)))
    break e;
  return r.l = t, a;
}
function ve(e) {
  var r = new Uint8Array(7);
  r[0] = 127 & e;
  var t = 1;
  e: if (e > 127) {
    if (r[t - 1] |= 128, r[t] = e >> 7 & 127, ++t, e <= 16383 || (r[t - 1] |= 128, r[t] = e >> 14 & 127, ++t, e <= 2097151) || (r[t - 1] |= 128, r[t] = e >> 21 & 127, ++t, e <= 268435455) || (r[t - 1] |= 128, r[t] = e / 256 >>> 21 & 127, ++t, e <= 34359738367) || (r[t - 1] |= 128, r[t] = e / 65536 >>> 21 & 127, ++t, e <= 4398046511103)) break e;
    r[t - 1] |= 128, r[t] = e / 16777216 >>> 21 & 127, ++t;
  }
  return r[At](0, t);
}
function cf(e) {
  for (var r = { l: 0 }, t = []; r.l < e.length; ) t.push(yn(e, r));
  return t;
}
function lf(e) {
  return ra(e.map(function(r) {
    return ve(r);
  }));
}
function Ue(e) {
  var r = 0, t = 127 & e[r];
  return e[r++] < 128 ? t : (t |= (127 & e[r]) << 7, e[r++] < 128 ? t : (t |= (127 & e[r]) << 14, e[r++] < 128 ? t : (t |= (127 & e[r]) << 21, e[r++] < 128 ? t : t |= (15 & e[r]) << 28)));
}
function ie(e) {
  for (var r = [], t = { l: 0 }; t.l < e.length; ) {
    var a, n = t.l, s = yn(e, t), i = 7 & s;
    s = s / 8 | 0;
    var l = t.l;
    switch (i) {
      case 0:
        for (; e[l++] >= 128; ) ;
        a = e[At](t.l, l), t.l = l;
        break;
      case 1:
        a = e[At](l, l + 8), t.l = l + 8;
        break;
      case 2:
        var o = yn(e, t);
        a = e[At](t.l, t.l + o), t.l += o;
        break;
      case 5:
        a = e[At](l, l + 4), t.l = l + 4;
        break;
      default:
        throw new Error("PB Type ".concat(i, " for Field ").concat(s, " at offset ").concat(n));
    }
    var c = { data: a, type: i };
    r[s] == null && (r[s] = []), r[s].push(c);
  }
  return r;
}
function ge(e) {
  var r = [];
  return e.forEach(function(t, a) {
    a != 0 && t.forEach(function(n) {
      n.data && (r.push(ve(8 * a + n.type)), n.type == 2 && r.push(ve(n.data.length)), r.push(n.data));
    });
  }), ra(r);
}
function Qr(e, r) {
  return e?.map(function(t) {
    return r(t.data);
  }) || [];
}
function En(e) {
  for (var r, t = [], a = { l: 0 }; a.l < e.length; ) {
    var n = yn(e, a), s = ie(e[At](a.l, a.l + n));
    a.l += n;
    var i = { id: Ue(s[1][0].data), messages: [] };
    s[2].forEach(function(l) {
      var o = ie(l.data), c = Ue(o[3][0].data);
      i.messages.push({ meta: o, data: e[At](a.l, a.l + c) }), a.l += c;
    }), (r = s[3]) != null && r[0] && (i.merge = Ue(s[3][0].data) >>> 0 > 0), t.push(i);
  }
  return t;
}
function Oa(e) {
  var r = [];
  return e.forEach(function(t) {
    var a = [[], [{ data: ve(t.id), type: 0 }], []];
    t.merge != null && (a[3] = [{ data: ve(+!!t.merge), type: 0 }]);
    var n = [];
    t.messages.forEach(function(i) {
      n.push(i.data), i.meta[3] = [{ type: 0, data: ve(i.data.length) }], a[2].push({ data: ge(i.meta), type: 2 });
    });
    var s = ge(a);
    r.push(ve(s.length)), r.push(s), n.forEach(function(i) {
      return r.push(i);
    });
  }), ra(r);
}
function du(e, r) {
  if (e != 0) throw new Error("Unexpected Snappy chunk type ".concat(e));
  for (var t = { l: 0 }, a = yn(r, t), n = [], s = t.l; s < r.length; ) {
    var i = 3 & r[s];
    if (i != 0) {
      var l = 0, o = 0;
      if (i == 1 ? (o = 4 + (r[s] >> 2 & 7), l = (224 & r[s++]) << 3, l |= r[s++]) : (o = 1 + (r[s++] >> 2), i == 2 ? (l = r[s] | r[s + 1] << 8, s += 2) : (l = (r[s] | r[s + 1] << 8 | r[s + 2] << 16 | r[s + 3] << 24) >>> 0, s += 4)), l == 0) throw new Error("Invalid offset 0");
      for (var c = n.length - 1, f = l; c >= 0 && f >= n[c].length; ) f -= n[c].length, --c;
      if (c < 0) {
        if (f != 0) throw new Error("Invalid offset beyond length");
        f = n[c = 0].length;
      }
      if (o < f) n.push(n[c][At](n[c].length - f, n[c].length - f + o));
      else {
        for (f > 0 && (n.push(n[c][At](n[c].length - f)), o -= f), ++c; o >= n[c].length; ) n.push(n[c]), o -= n[c].length, ++c;
        o && n.push(n[c][At](0, o));
      }
      n.length > 25 && (n = [ra(n)]);
    } else {
      var u = r[s++] >> 2;
      if (u < 60) ++u;
      else {
        var h = u - 59;
        u = r[s], h > 1 && (u |= r[s + 1] << 8), h > 2 && (u |= r[s + 2] << 16), h > 3 && (u |= r[s + 3] << 24), u >>>= 0, u++, s += h;
      }
      n.push(r[At](s, s + u)), s += u;
    }
  }
  for (var p = 0, d = 0; d < n.length; ++d) p += n[d].length;
  if (p != a) throw new Error("Unexpected length: ".concat(p, " != ").concat(a));
  return n;
}
function kn(e) {
  Array.isArray(e) && (e = new Uint8Array(e));
  for (var r = [], t = 0; t < e.length; ) {
    var a = e[t++], n = e[t] | e[t + 1] << 8 | e[t + 2] << 16;
    t += 3, r.push.apply(r, du(a, e[At](t, t + n))), t += n;
  }
  if (t !== e.length) throw new Error("data is not a valid framed stream!");
  return r.length == 1 ? r[0] : ra(r);
}
function Na(e) {
  for (var r = [], t = 0; t < e.length; ) {
    var a = Math.min(e.length - t, 268435455), n = new Uint8Array(4);
    r.push(n);
    var s = ve(a), i = s.length;
    r.push(s), a <= 60 ? (i++, r.push(new Uint8Array([a - 1 << 2]))) : a <= 256 ? (i += 2, r.push(new Uint8Array([240, a - 1 & 255]))) : a <= 65536 ? (i += 3, r.push(new Uint8Array([244, a - 1 & 255, a - 1 >> 8 & 255]))) : a <= 16777216 ? (i += 4, r.push(new Uint8Array([248, a - 1 & 255, a - 1 >> 8 & 255, a - 1 >> 16 & 255]))) : a <= 4294967296 && (i += 5, r.push(new Uint8Array([252, a - 1 & 255, a - 1 >> 8 & 255, a - 1 >> 16 & 255, a - 1 >>> 24 & 255]))), r.push(e[At](t, t + a)), i += a, n[0] = 0, n[1] = 255 & i, n[2] = i >> 8 & 255, n[3] = i >> 16 & 255, t += a;
  }
  return ra(r);
}
function ff(e, r, t, a, n) {
  var s, i, l, o, c = 255 & r, f = r >> 8, u = f >= 5 ? n : a;
  e: if (t & (f > 4 ? 8 : 4) && e.t == "n" && c == 7) {
    var h = (s = u[7]) != null && s[0] ? Ue(u[7][0].data) : -1;
    if (h == -1) break e;
    var p = (i = u[15]) != null && i[0] ? Ue(u[15][0].data) : -1, d = (l = u[16]) != null && l[0] ? Ue(u[16][0].data) : -1, g = (o = u[40]) != null && o[0] ? Ue(u[40][0].data) : -1, m = e.v, v = m;
    t: if (g) {
      if (m == 0) {
        p = d = 2;
        break t;
      }
      p = m >= 604800 ? 1 : m >= 86400 ? 2 : m >= 3600 ? 4 : m >= 60 ? 8 : m >= 1 ? 16 : 32, Math.floor(m) != m ? d = 32 : m % 60 ? d = 16 : m % 3600 ? d = 8 : m % 86400 ? d = 4 : m % 604800 && (d = 2), d < p && (d = p);
    }
    if (p == -1 || d == -1) break e;
    var y = [], w = [];
    p == 1 && (v = m / 604800, d == 1 ? w.push('d"d"') : m -= 604800 * (v |= 0), y.push(v + (h == 2 ? " week" + (v == 1 ? "" : "s") : h == 1 ? "w" : ""))), p <= 2 && d >= 2 && (v = m / 86400, d > 2 && (m -= 86400 * (v |= 0)), w.push('d"d"'), y.push(v + (h == 2 ? " day" + (v == 1 ? "" : "s") : h == 1 ? "d" : ""))), p <= 4 && d >= 4 && (v = m / 3600, d > 4 && (m -= 3600 * (v |= 0)), w.push((p >= 4 ? "[h]" : "h") + '"h"'), y.push(v + (h == 2 ? " hour" + (v == 1 ? "" : "s") : h == 1 ? "h" : ""))), p <= 8 && d >= 8 && (v = m / 60, d > 8 && (m -= 60 * (v |= 0)), w.push((p >= 8 ? "[m]" : "m") + '"m"'), h == 0 ? y.push((p == 8 && d == 8 || v >= 10 ? "" : "0") + v) : y.push(v + (h == 2 ? " minute" + (v == 1 ? "" : "s") : h == 1 ? "m" : ""))), p <= 16 && d >= 16 && (v = m, d > 16 && (m -= v |= 0), w.push((p >= 16 ? "[s]" : "s") + '"s"'), h == 0 ? y.push((d == 16 && p == 16 || v >= 10 ? "" : "0") + v) : y.push(v + (h == 2 ? " second" + (v == 1 ? "" : "s") : h == 1 ? "s" : ""))), d >= 32 && (v = Math.round(1e3 * m), p < 32 && w.push('.000"ms"'), h == 0 ? y.push((v >= 100 ? "" : v >= 10 ? "0" : "00") + v) : y.push(v + (h == 2 ? " millisecond" + (v == 1 ? "" : "s") : h == 1 ? "ms" : ""))), e.w = y.join(h == 0 ? ":" : " "), e.z = w.join(h == 0 ? '":"' : " "), h == 0 && (e.w = e.w.replace(/:(\d\d\d)$/, ".$1"));
  }
}
function pu(e, r, t) {
  var a = Kr(e);
  a.getUint32(4, !0);
  var n, s = a.getUint32(8, !0), i = 12, l = -1, o = -1, c = -1, f = NaN, u = NaN, h = 0, p = new Date(Date.UTC(2001, 0, 1));
  1 & s && (f = (function(v, y) {
    for (var w = (127 & v[y + 15]) << 7 | v[y + 14] >> 1, E = 1 & v[y + 14], A = y + 13; A >= y; --A) E = 256 * E + v[A];
    return (128 & v[y + 15] ? -E : E) * Math.pow(10, w - 6176);
  })(e, i), i += 16), 2 & s && (u = a.getFloat64(i, !0), i += 8), 4 & s && (p.setTime(p.getTime() + 1e3 * (h = a.getFloat64(i, !0))), i += 8), 8 & s && (o = a.getUint32(i, !0), i += 4), 16 & s && (l = a.getUint32(i, !0), i += 4), i += 4 * ln(480 & s), 512 & s && (a.getUint32(i, !0), i += 4), i += 4 * ln(1024 & s), 2048 & s && (a.getUint32(i, !0), i += 4);
  var d = e[1];
  switch (d) {
    case 0:
      n = { t: "z" };
      break;
    case 2:
    case 10:
      n = { t: "n", v: f };
      break;
    case 3:
      n = { t: "s", v: r.sst[o] };
      break;
    case 5:
      n = t?.cellDates ? { t: "d", v: p } : { t: "n", v: h / 86400 + 35430, z: be[14] };
      break;
    case 6:
      n = { t: "b", v: u > 0 };
      break;
    case 7:
      n = { t: "n", v: u };
      break;
    case 8:
      n = { t: "e", v: 0 };
      break;
    case 9:
      if (!(l > -1)) throw new Error("Unsupported cell type ".concat(e[1], " : ").concat(31 & s, " : ").concat(e[At](0, 4)));
      var g = r.rsst[l];
      n = { t: "s", v: g.v }, g.l && (n.l = { Target: g.l });
      break;
    default:
      throw new Error("Unsupported cell type ".concat(e[1], " : ").concat(31 & s, " : ").concat(e[At](0, 4)));
  }
  if (i += 4 * ln(4096 & s), 516096 & s && (c == -1 && (c = a.getUint32(i, !0)), i += 4), 524288 & s) {
    var m = a.getUint32(i, !0);
    i += 4, r.cmnt[m] && (n.c = (function(v) {
      var y = [];
      return y.push({ t: v.t || "", a: v.a, T: v.replies && v.replies.length > 0 }), v.replies && v.replies.forEach(function(w) {
        y.push({ t: w.t || "", a: w.a, T: !0 });
      }), y;
    })(r.cmnt[m]));
  }
  return c > -1 && ff(n, 1280 | d, s >> 13, r.ofmt[c], r.nfmt[c]), d == 7 && (n.v /= 86400), n;
}
function Ps(e, r) {
  var t = new Uint8Array(32), a = Kr(t), n = 12, s = 0;
  switch (t[0] = 5, e.t) {
    case "n":
      if (e.z && ur(e.z)) {
        t[1] = 5, a.setFloat64(n, (Xr(e.v + 1462).getTime() - Date.UTC(2001, 0, 1)) / 1e3, !0), s |= 4, n += 8;
        break;
      }
      t[1] = 2, (function(c, f, u) {
        var h = Math.floor(u == 0 ? 0 : Math.LOG10E * Math.log(Math.abs(u))) + 6176 - 16, p = u / Math.pow(10, h - 6176);
        c[f + 15] |= h >> 7, c[f + 14] |= (127 & h) << 1;
        for (var d = 0; p >= 1; ++d, p /= 256) c[f + d] = 255 & p;
        c[f + 15] |= u >= 0 ? 0 : 128;
      })(t, n, e.v), s |= 1, n += 16;
      break;
    case "b":
      t[1] = 6, a.setFloat64(n, e.v ? 1 : 0, !0), s |= 2, n += 8;
      break;
    case "s":
      var i = e.v == null ? "" : String(e.v);
      if (e.l) {
        var l = r.rsst.findIndex(function(c) {
          var f;
          return c.v == i && c.l == ((f = e.l) == null ? void 0 : f.Target);
        });
        l == -1 && (r.rsst[l = r.rsst.length] = { v: i, l: e.l.Target }), t[1] = 9, a.setUint32(n, l, !0), s |= 16, n += 4;
      } else {
        var o = r.sst.indexOf(i);
        o == -1 && (r.sst[o = r.sst.length] = i), t[1] = 3, a.setUint32(n, o, !0), s |= 8, n += 4;
      }
      break;
    case "d":
      t[1] = 5, a.setFloat64(n, (e.v.getTime() - Date.UTC(2001, 0, 1)) / 1e3, !0), s |= 4, n += 8;
      break;
    case "z":
      t[1] = 0;
      break;
    default:
      throw "unsupported cell type " + e.t;
  }
  return e.c && (r.cmnt.push((function(c) {
    for (var f = { a: "", t: "", replies: [] }, u = 0; u < c.length; ++u) u == 0 ? (f.a = c[u].a, f.t = c[u].t) : f.replies.push({ a: c[u].a, t: c[u].t });
    return f;
  })(e.c)), a.setUint32(n, r.cmnt.length - 1, !0), s |= 524288, n += 4), a.setUint32(8, s, !0), t[At](0, n);
}
function Ls(e, r) {
  var t = new Uint8Array(32), a = Kr(t), n = 12, s = 0, i = "";
  switch (t[0] = 4, e.t) {
    case "n":
    case "b":
    case "d":
    case "e":
    case "z":
      break;
    case "s":
      if (i = e.v == null ? "" : String(e.v), e.l) {
        var l = r.rsst.findIndex(function(c) {
          var f;
          return c.v == i && c.l == ((f = e.l) == null ? void 0 : f.Target);
        });
        l == -1 && (r.rsst[l = r.rsst.length] = { v: i, l: e.l.Target }), t[1] = 9, a.setUint32(n, l, !0), s |= 512, n += 4;
      }
      break;
    default:
      throw "unsupported cell type " + e.t;
  }
  switch (e.c && (a.setUint32(n, r.cmnt.length - 1, !0), s |= 4096, n += 4), e.t) {
    case "n":
      t[1] = 2, a.setFloat64(n, e.v, !0), s |= 32, n += 8;
      break;
    case "b":
      t[1] = 6, a.setFloat64(n, e.v ? 1 : 0, !0), s |= 32, n += 8;
      break;
    case "s":
      if (i = e.v == null ? "" : String(e.v), !e.l) {
        var o = r.sst.indexOf(i);
        o == -1 && (r.sst[o = r.sst.length] = i), t[1] = 3, a.setUint32(n, o, !0), s |= 16, n += 4;
      }
      break;
    case "d":
      t[1] = 5, a.setFloat64(n, (e.v.getTime() - Date.UTC(2001, 0, 1)) / 1e3, !0), s |= 64, n += 8;
      break;
    case "z":
      t[1] = 0;
      break;
    default:
      throw "unsupported cell type " + e.t;
  }
  return a.setUint32(8, s, !0), t[At](0, n);
}
function mu(e, r, t) {
  switch (e[0]) {
    case 0:
    case 1:
    case 2:
    case 3:
    case 4:
      return (function(a, n, s, i) {
        var l, o = Kr(a), c = o.getUint32(4, !0), f = -1, u = -1, h = -1, p = NaN, d = 0, g = new Date(Date.UTC(2001, 0, 1)), m = s > 1 ? 12 : 8;
        2 & c && (h = o.getUint32(m, !0), m += 4), m += 4 * ln(c & (s > 1 ? 3468 : 396)), 512 & c && (f = o.getUint32(m, !0), m += 4), m += 4 * ln(c & (s > 1 ? 12288 : 4096)), 16 & c && (u = o.getUint32(m, !0), m += 4), 32 & c && (p = o.getFloat64(m, !0), m += 8), 64 & c && (g.setTime(g.getTime() + 1e3 * (d = o.getFloat64(m, !0))), m += 8), s > 1 && 255 & (c = o.getUint32(8, !0) >>> 16) && (h == -1 && (h = o.getUint32(m, !0)), m += 4);
        var v = a[s >= 4 ? 1 : 2];
        switch (v) {
          case 0:
            return;
          case 2:
          case 7:
            l = { t: "n", v: p };
            break;
          case 3:
            l = { t: "s", v: n.sst[u] };
            break;
          case 5:
            l = i?.cellDates ? { t: "d", v: g } : { t: "n", v: d / 86400 + 35430, z: be[14] };
            break;
          case 6:
            l = { t: "b", v: p > 0 };
            break;
          case 8:
            l = { t: "e", v: 0 };
            break;
          case 9:
            if (!(f > -1)) throw new Error("Unsupported cell type ".concat(a[At](0, 4)));
            var y = n.rsst[f];
            l = { t: "s", v: y.v }, y.l && (l.l = { Target: y.l });
            break;
          default:
            throw new Error("Unsupported cell type ".concat(a[At](0, 4)));
        }
        return h > -1 && ff(l, v | s << 8, c, n.ofmt[h], n.nfmt[h]), v == 7 && (l.v /= 86400), l;
      })(e, r, e[0], t);
    case 5:
      return pu(e, r, t);
    default:
      throw new Error("Unsupported payload version ".concat(e[0]));
  }
}
function Ye(e) {
  return Ue(ie(e)[1][0].data);
}
function jt(e) {
  return ge([[], [{ type: 0, data: ve(e) }]]);
}
function Kt(e, r) {
  var t, a = (t = e.messages[0].meta[5]) != null && t[0] ? cf(e.messages[0].meta[5][0].data) : [];
  a.indexOf(r) == -1 && (a.push(r), e.messages[0].meta[5] = [{ type: 2, data: lf(a) }]);
}
function Br(e, r) {
  var t, a = (t = e.messages[0].meta[5]) != null && t[0] ? cf(e.messages[0].meta[5][0].data) : [];
  e.messages[0].meta[5] = [{ type: 2, data: lf(a.filter(function(n) {
    return n != r;
  })) }];
}
function na(e, r) {
  var t = ie(r.data), a = Ue(t[1][0].data), n = t[3], s = [];
  return (n || []).forEach(function(i) {
    var l, o, c = ie(i.data);
    if (c[1]) {
      var f = Ue(c[1][0].data) >>> 0;
      switch (a) {
        case 1:
          s[f] = Ar(c[3][0].data);
          break;
        case 8:
          var u = ie(e[Ye(c[9][0].data)][0].data), h = e[Ye(u[1][0].data)][0], p = Ue(h.meta[1][0].data);
          if (p != 2001) throw new Error("2000 unexpected reference to ".concat(p));
          var d = ie(h.data), g = { v: d[3].map(function(y) {
            return Ar(y.data);
          }).join("") };
          s[f] = g;
          e: if ((l = d?.[11]) != null && l[0]) {
            var m = (o = ie(d[11][0].data)) == null ? void 0 : o[1];
            if (!m) break e;
            m.forEach(function(y) {
              var w, E, A, b = ie(y.data);
              if ((w = b[2]) != null && w[0]) {
                var _ = e[Ye((E = b[2]) == null ? void 0 : E[0].data)][0], k = Ue(_.meta[1][0].data);
                switch (k) {
                  case 2032:
                    var T = ie(_.data);
                    (A = T?.[2]) != null && A[0] && !g.l && (g.l = Ar(T[2][0].data));
                    break;
                  case 2039:
                    break;
                  default:
                    console.log("unrecognized ObjectAttribute type ".concat(k));
                }
              }
            });
          }
          break;
        case 2:
          s[f] = ie(c[6][0].data);
          break;
        case 3:
          s[f] = ie(c[5][0].data);
          break;
        case 10:
          var v = e[Ye(c[10][0].data)][0];
          s[f] = hf(e, v.data);
          break;
        default:
          throw a;
      }
    }
  }), s;
}
function vu(e, r) {
  var t, a = ie(r.data), n = -1;
  (t = a?.[7]) != null && t[0] && (n = Ue(a[7][0].data) >>> 0 ? 1 : 0);
  var s = Qr(a[5], function(i) {
    return (function(l, o) {
      var c, f, u, h, p, d, g, m, v, y, w, E, A, b, _, k, T = ie(l), S = Ue(T[1][0].data) >>> 0, C = Ue(T[2][0].data) >>> 0, F = ((f = (c = T[8]) == null ? void 0 : c[0]) == null ? void 0 : f.data) && Ue(T[8][0].data) > 0 || !1;
      if ((h = (u = T[7]) == null ? void 0 : u[0]) != null && h.data && o != 0) _ = (d = (p = T[7]) == null ? void 0 : p[0]) == null ? void 0 : d.data, k = (m = (g = T[6]) == null ? void 0 : g[0]) == null ? void 0 : m.data;
      else {
        if (!((y = (v = T[4]) == null ? void 0 : v[0]) != null && y.data) || o == 1) throw "NUMBERS Tile missing ".concat(o, " cell storage");
        _ = (E = (w = T[4]) == null ? void 0 : w[0]) == null ? void 0 : E.data, k = (b = (A = T[3]) == null ? void 0 : A[0]) == null ? void 0 : b.data;
      }
      for (var I = F ? 4 : 1, P = Kr(_), W = [], U = 0; U < _.length / 2; ++U) {
        var G = P.getUint16(2 * U, !0);
        G < 65535 && W.push([U, G]);
      }
      if (W.length != C) throw "Expected ".concat(C, " cells, found ").concat(W.length);
      var B = [];
      for (U = 0; U < W.length - 1; ++U) B[W[U][0]] = k[At](W[U][1] * I, W[U + 1][1] * I);
      return W.length >= 1 && (B[W[W.length - 1][0]] = k[At](W[W.length - 1][1] * I)), { R: S, cells: B };
    })(i, n);
  });
  return { nrows: Ue(a[4][0].data) >>> 0, data: s.reduce(function(i, l) {
    return i[l.R] || (i[l.R] = []), l.cells.forEach(function(o, c) {
      if (i[l.R][c]) throw new Error("Duplicate cell r=".concat(l.R, " c=").concat(c));
      i[l.R][c] = o;
    }), i;
  }, []) };
}
function hf(e, r) {
  var t, a, n, s, i, l, o, c, f, u, h = { t: "", a: "" }, p = ie(r);
  if ((a = (t = p?.[1]) == null ? void 0 : t[0]) != null && a.data && (h.t = Ar((s = (n = p?.[1]) == null ? void 0 : n[0]) == null ? void 0 : s.data) || ""), (l = (i = p?.[3]) == null ? void 0 : i[0]) == null ? void 0 : l.data) {
    var d = ie(e[Ye((c = (o = p?.[3]) == null ? void 0 : o[0]) == null ? void 0 : c.data)][0].data);
    (u = (f = d[1]) == null ? void 0 : f[0]) != null && u.data && (h.a = Ar(d[1][0].data));
  }
  return p?.[4] && (h.replies = [], p[4].forEach(function(g) {
    var m = e[Ye(g.data)][0];
    h.replies.push(hf(e, m.data));
  })), h;
}
function gu(e, r, t) {
  var a = ie(r.data), n = { "!ref": "A1" };
  t?.dense && (n["!data"] = []);
  var s = e[Ye(a[2][0].data)], i = Ue(s[0].meta[1][0].data);
  if (i != 6001) throw new Error("6000 unexpected reference to ".concat(i));
  return (function(l, o, c, f) {
    var u, h, p, d, g, m, v, y, w, E, A, b, _, k, T = ie(o.data), S = { s: { r: 0, c: 0 }, e: { r: 0, c: 0 } };
    if (S.e.r = (Ue(T[6][0].data) >>> 0) - 1, S.e.r < 0) throw new Error("Invalid row varint ".concat(T[6][0].data));
    if (S.e.c = (Ue(T[7][0].data) >>> 0) - 1, S.e.c < 0) throw new Error("Invalid col varint ".concat(T[7][0].data));
    c["!ref"] = We(S);
    var C = c["!data"] != null, F = c, I = ie(T[4][0].data), P = { sst: [], rsst: [], ofmt: [], nfmt: [], fmla: [], ferr: [], cmnt: [] };
    (u = I[4]) != null && u[0] && (P.sst = na(l, l[Ye(I[4][0].data)][0])), (h = I[6]) != null && h[0] && (P.fmla = na(l, l[Ye(I[6][0].data)][0])), (p = I[11]) != null && p[0] && (P.ofmt = na(l, l[Ye(I[11][0].data)][0])), (d = I[12]) != null && d[0] && (P.ferr = na(l, l[Ye(I[12][0].data)][0])), (g = I[17]) != null && g[0] && (P.rsst = na(l, l[Ye(I[17][0].data)][0])), (m = I[19]) != null && m[0] && (P.cmnt = na(l, l[Ye(I[19][0].data)][0])), (v = I[22]) != null && v[0] && (P.nfmt = na(l, l[Ye(I[22][0].data)][0]));
    var W = ie(I[3][0].data), U = 0;
    if (!((y = I[9]) != null && y[0])) throw "NUMBERS file missing row tree";
    if (ie(I[9][0].data)[1].map(function(ee) {
      return ie(ee.data);
    }).forEach(function(ee) {
      U = Ue(ee[1][0].data);
      var se = Ue(ee[2][0].data), H = W[1][se];
      if (!H) throw "NUMBERS missing tile " + se;
      var Y = ie(H.data), he = l[Ye(Y[2][0].data)][0], te = Ue(he.meta[1][0].data);
      if (te != 6002) throw new Error("6001 unexpected reference to ".concat(te));
      var Q = vu(0, he);
      Q.data.forEach(function(ke, ce) {
        ke.forEach(function(fe, Ne) {
          var R = mu(fe, P, f);
          R && (C ? (F["!data"][U + ce] || (F["!data"][U + ce] = []), F["!data"][U + ce][Ne] = R) : c[De(Ne) + Xe(U + ce)] = R);
        });
      }), U += Q.nrows;
    }), (w = I[13]) == null ? void 0 : w[0]) {
      var G = l[Ye(I[13][0].data)][0], B = Ue(G.meta[1][0].data);
      if (B != 6144) throw new Error("Expected merge type 6144, found ".concat(B));
      c["!merges"] = (E = ie(G.data)) == null ? void 0 : E[1].map(function(ee) {
        var se = ie(ee.data), H = Kr(ie(se[1][0].data)[1][0].data), Y = Kr(ie(se[2][0].data)[1][0].data);
        return { s: { r: H.getUint16(0, !0), c: H.getUint16(2, !0) }, e: { r: H.getUint16(0, !0) + Y.getUint16(0, !0) - 1, c: H.getUint16(2, !0) + Y.getUint16(2, !0) - 1 } };
      });
    }
    if (!((A = c["!merges"]) != null && A.length) && ((b = T[47]) != null && b[0])) {
      var z = ie(T[47][0].data);
      if ((_ = z[2]) != null && _[0]) {
        var K = ie(z[2][0].data);
        (k = K[3]) != null && k[0] && (c["!merges"] = Qr(K[3], function(ee) {
          var se, H, Y, he, te, Q = ie(ee), ke = ie(Q[2][0].data), ce = ie(ke[1][0].data);
          if ((se = ce[1]) != null && se[0]) {
            var fe = ie(ce[1][0].data);
            if (Ue(fe[1][0].data) == 67) {
              var Ne = ie(fe[40][0].data);
              if ((H = Ne[3]) != null && H[0] && ((Y = Ne[4]) != null && Y[0])) {
                var R = ie(Ne[3][0].data), Ce = ie(Ne[4][0].data), bt = Ue(R[1][0].data), tt = (he = R[2]) != null && he[0] ? Ue(R[2][0].data) : bt, pt = Ue(Ce[1][0].data);
                return { s: { r: pt, c: bt }, e: { r: (te = Ce[2]) != null && te[0] ? Ue(Ce[2][0].data) : pt, c: tt } };
              }
            }
          }
        }).filter(function(ee) {
          return ee != null;
        }));
      }
    }
  })(e, s[0], n, t), n;
}
function bu(e, r, t) {
  var a, n = Li();
  n.Workbook = { WBProps: { date1904: !0 } };
  var s = ie(r.data);
  if ((a = s[2]) != null && a[0]) throw new Error("Keynote presentations are not supported");
  if (Qr(s[1], Ye).forEach(function(i) {
    e[i].forEach(function(l) {
      if (Ue(l.meta[1][0].data) == 2) {
        var o = (function(c, f, u) {
          var h, p = ie(f.data), d = { name: (h = p[1]) != null && h[0] ? Ar(p[1][0].data) : "", sheets: [] };
          return Qr(p[2], Ye).forEach(function(g) {
            c[g].forEach(function(m) {
              Ue(m.meta[1][0].data) == 6e3 && d.sheets.push(gu(c, m, u));
            });
          }), d;
        })(e, l, t);
        o.sheets.forEach(function(c, f) {
          Nn(n, c, f == 0 ? o.name : o.name + "_" + f, !0);
        });
      }
    });
  }), n.SheetNames.length == 0) throw new Error("Empty NUMBERS file");
  return n.bookType = "numbers", n;
}
function Ms(e, r) {
  var t, a, n, s, i, l, o, c = {}, f = [];
  if (e.FullPaths.forEach(function(h) {
    if (h.match(/\.iwpv2/)) throw new Error("Unsupported password protection");
  }), e.FileIndex.forEach(function(h) {
    if (h.name.match(/\.iwa$/) && h.content[0] == 0) {
      var p, d;
      try {
        p = kn(h.content);
      } catch (g) {
        return console.log("?? " + h.content.length + " " + (g.message || g));
      }
      try {
        d = En(p);
      } catch (g) {
        return console.log("## " + (g.message || g));
      }
      d.forEach(function(g) {
        c[g.id] = g.messages, f.push(g.id);
      });
    }
  }), !f.length) throw new Error("File has no messages");
  if ((n = (a = (t = c?.[1]) == null ? void 0 : t[0].meta) == null ? void 0 : a[1]) != null && n[0].data && Ue(c[1][0].meta[1][0].data) == 1e4) throw new Error("Pages documents are not supported");
  var u = ((o = (l = (i = (s = c?.[1]) == null ? void 0 : s[0]) == null ? void 0 : i.meta) == null ? void 0 : l[1]) == null ? void 0 : o[0].data) && Ue(c[1][0].meta[1][0].data) == 1 && c[1][0];
  if (u || f.forEach(function(h) {
    c[h].forEach(function(p) {
      if (Ue(p.meta[1][0].data) >>> 0 == 1) {
        if (u) throw new Error("Document has multiple roots");
        u = p;
      }
    });
  }), !u) throw new Error("Cannot find Document root");
  return bu(c, u, r);
}
function wu(e, r, t) {
  var a, n, s, i = [[], [{ type: 0, data: ve(0) }], [{ type: 0, data: ve(0) }], [{ type: 2, data: new Uint8Array([]) }], [{ type: 2, data: new Uint8Array(Array.from({ length: 510 }, function() {
    return 255;
  })) }], [{ type: 0, data: ve(5) }], [{ type: 2, data: new Uint8Array([]) }], [{ type: 2, data: new Uint8Array(Array.from({ length: 510 }, function() {
    return 255;
  })) }], [{ type: 0, data: ve(1) }]];
  if (!((a = i[6]) != null && a[0]) || !((n = i[7]) != null && n[0])) throw "Mutation only works on post-BNC storages!";
  var l = 0;
  if (i[7][0].data.length < 2 * e.length) {
    var o = new Uint8Array(2 * e.length);
    o.set(i[7][0].data), i[7][0].data = o;
  }
  if (i[4][0].data.length < 2 * e.length) {
    var c = new Uint8Array(2 * e.length);
    c.set(i[4][0].data), i[4][0].data = c;
  }
  for (var f = Kr(i[7][0].data), u = 0, h = [], p = Kr(i[4][0].data), d = 0, g = [], m = 0; m < e.length; ++m) if (e[m] == null || e[m].t == "z" && !((s = e[m].c) != null && s.length) || e[m].t == "e") f.setUint16(2 * m, 65535, !0), p.setUint16(2 * m, 65535);
  else {
    var v, y;
    switch (f.setUint16(2 * m, u / 4, !0), p.setUint16(2 * m, d / 4, !0), e[m].t) {
      case "d":
        if (e[m].v instanceof Date) {
          v = Ps(e[m], r), y = Ls(e[m], r);
          break;
        }
        v = Ps(e[m], r), y = Ls(e[m], r);
        break;
      case "s":
      case "n":
      case "b":
      case "z":
        v = Ps(e[m], r), y = Ls(e[m], r);
        break;
      default:
        throw new Error("Unsupported value " + e[m]);
    }
    h.push(v), u += v.length, g.push(y), d += y.length, ++l;
  }
  for (i[2][0].data = ve(l), i[5][0].data = ve(5); m < i[7][0].data.length / 2; ++m) f.setUint16(2 * m, 65535, !0), p.setUint16(2 * m, 65535, !0);
  return i[6][0].data = ra(h), i[3][0].data = ra(g), i[8] = [{ type: 0, data: ve(1) }], i;
}
function ei(e, r) {
  return { meta: [[], [{ type: 0, data: ve(e) }]], data: r };
}
function Or(e, r) {
  r.last || (r.last = 927262);
  for (var t = r.last; t < 2e6; ++t) if (!r[t]) return r[r.last = t] = e, t;
  throw new Error("Too many messages");
}
function Vn(e, r, t) {
  return ge([[], [{ type: 0, data: ve(1) }], [], [{ type: 5, data: new Uint8Array(Float32Array.from([e / 255]).buffer) }], [{ type: 5, data: new Uint8Array(Float32Array.from([r / 255]).buffer) }], [{ type: 5, data: new Uint8Array(Float32Array.from([t / 255]).buffer) }], [{ type: 5, data: new Uint8Array(Float32Array.from([1]).buffer) }], [], [], [], [], [], [{ type: 0, data: ve(1) }]]);
}
function nc(e) {
  switch (e) {
    case 0:
      return Vn(99, 222, 171);
    case 1:
      return Vn(162, 197, 240);
    case 2:
      return Vn(255, 189, 189);
  }
  return Vn(255 * Math.random(), 255 * Math.random(), 255 * Math.random());
}
function Tu(e, r) {
  if (!r || !r.numbers) throw new Error("Must pass a `numbers` option -- check the README");
  var t = Ee.read(r.numbers, { type: "base64" }), a = (function(i) {
    var l = {}, o = [];
    return i.FileIndex.map(function(c, f) {
      return [c, i.FullPaths[f]];
    }).forEach(function(c) {
      var f = c[0], u = c[1];
      f.type == 2 && f.name.match(/\.iwa/) && f.content[0] == 0 && En(kn(f.content)).forEach(function(h) {
        o.push(h.id), l[h.id] = { deps: [], location: u, type: Ue(h.messages[0].meta[1][0].data) };
      });
    }), i.FileIndex.forEach(function(c) {
      c.name.match(/\.iwa/) && c.content[0] == 0 && En(kn(c.content)).forEach(function(f) {
        f.messages.forEach(function(u) {
          [5, 6].forEach(function(h) {
            u.meta[h] && u.meta[h].forEach(function(p) {
              l[f.id].deps.push(Ue(p.data));
            });
          });
        });
      });
    }), l;
  })(t), n = Ir(t, a, 1);
  if (n == null) throw "Could not find message ".concat(1, " in Numbers template");
  var s = Qr(ie(n.messages[0].data)[1], Ye);
  if (s.length > 1) throw new Error("Template NUMBERS file must have exactly one sheet");
  return e.SheetNames.forEach(function(i, l) {
    l >= 1 && ((function(o, c, f) {
      var u = -1, h = -1, p = {};
      ut(o, c, 1, function(m, v) {
        var y = ie(m.messages[0].data);
        u = Ye(ie(m.messages[0].data)[1][0].data), h = Or({ deps: [1], location: c[u].location, type: 2 }, c), p[u] = h, Kt(m, h), y[1].push({ type: 2, data: jt(h) });
        var w = Ir(o, c, u);
        w.id = h, c[1].location == c[h].location ? v.push(w) : ut(o, c, h, function(E, A) {
          return A.push(w);
        }), m.messages[0].data = ge(y);
      });
      var d = -1;
      ut(o, c, h, function(m, v) {
        for (var y = ie(m.messages[0].data), w = 3; w <= 69; ++w) delete y[w];
        var E = Qr(y[2], Ye);
        E.forEach(function(b) {
          return Br(m, b);
        }), d = Or({ deps: [h], location: c[E[0]].location, type: c[E[0]].type }, c), Kt(m, d), p[E[0]] = d, y[2] = [{ type: 2, data: jt(d) }];
        var A = Ir(o, c, E[0]);
        A.id = d, c[E[0]].location == c[h].location ? v.push(A) : (ut(o, c, 2, function(b) {
          var _ = ie(b.messages[0].data);
          cr(_, c, h, d), b.messages[0].data = ge(_);
        }), ut(o, c, d, function(b, _) {
          return _.push(A);
        })), m.messages[0].data = ge(y);
      });
      var g = -1;
      ut(o, c, d, function(m, v) {
        for (var y = ie(m.messages[0].data), w = ie(y[1][0].data), E = 3; E <= 69; ++E) delete w[E];
        var A = Ye(w[2][0].data);
        w[2][0].data = jt(p[A]), y[1][0].data = ge(w);
        var b = Ye(y[2][0].data);
        Br(m, b), Kt(m, g = Or({ deps: [d], location: c[b].location, type: c[b].type }, c)), p[b] = g, y[2][0].data = jt(g);
        var _ = Ir(o, c, b);
        _.id = g, c[d].location == c[g].location ? v.push(_) : ut(o, c, g, function(k, T) {
          return T.push(_);
        }), m.messages[0].data = ge(y);
      }), ut(o, c, g, function(m, v) {
        var y, w, E = ie(m.messages[0].data), A = Ar(E[1][0].data).replace(/-[A-Z0-9]*/, "-".concat(("0000" + f.toString(16)).slice(-4)));
        if (E[1][0].data = ar(A), [12, 13, 29, 31, 32, 33, 39, 44, 47, 81, 82, 84].forEach(function(S) {
          return delete E[S];
        }), E[45]) {
          var b = Ye(ie(E[45][0].data)[1][0].data);
          Br(m, b), delete E[45];
        }
        E[70] && ((y = ie(E[70][0].data)[2]) == null || y.forEach(function(S) {
          var C = ie(S.data);
          [2, 3].map(function(F) {
            return C[F][0];
          }).forEach(function(F) {
            var I = ie(F.data);
            if (I[8]) {
              var P = Ye(I[8][0].data);
              Br(m, P);
            }
          });
        }), delete E[70]), [46, 30, 34, 35, 36, 38, 48, 49, 60, 61, 62, 63, 64, 71, 72, 73, 74, 75, 85, 86, 87, 88, 89].forEach(function(S) {
          if (E[S]) {
            var C = Ye(E[S][0].data);
            delete E[S], Br(m, C);
          }
        });
        var _ = ie(E[4][0].data);
        [2, 4, 5, 6, 11, 12, 13, 15, 16, 17, 18, 19, 20, 21, 22].forEach(function(S) {
          var C;
          if ((C = _[S]) != null && C[0]) {
            var F = Ye(_[S][0].data), I = Or({ deps: [g], location: c[F].location, type: c[F].type }, c);
            Br(m, F), Kt(m, I), p[F] = I;
            var P = Ir(o, c, F);
            if (P.id = I, c[F].location == c[g].location) v.push(P);
            else {
              c[I].location = c[F].location.replace(F.toString(), I.toString()), c[I].location == c[F].location && (c[I].location = c[I].location.replace(/\.iwa/, "-".concat(I, ".iwa"))), Ee.utils.cfb_add(o, c[I].location, Na(Oa([P])));
              var W = c[I].location.replace(/^Root Entry\//, "").replace(/^Index\//, "").replace(/\.iwa$/, "");
              ut(o, c, 2, function(U) {
                var G = ie(U.messages[0].data);
                ti(G, I, W), cr(G, c, g, I), U.messages[0].data = ge(G);
              });
            }
            _[S][0].data = jt(I);
          }
        });
        var k = ie(_[1][0].data);
        (w = k[2]) == null || w.forEach(function(S) {
          var C = Ye(S.data), F = Or({ deps: [g], location: c[C].location, type: c[C].type }, c);
          Br(m, C), Kt(m, F), p[C] = F;
          var I = Ir(o, c, C);
          if (I.id = F, c[C].location == c[g].location) v.push(I);
          else {
            c[F].location = c[C].location.replace(C.toString(), F.toString()), c[F].location == c[C].location && (c[F].location = c[F].location.replace(/\.iwa/, "-".concat(F, ".iwa"))), Ee.utils.cfb_add(o, c[F].location, Na(Oa([I])));
            var P = c[F].location.replace(/^Root Entry\//, "").replace(/^Index\//, "").replace(/\.iwa$/, "");
            ut(o, c, 2, function(W) {
              var U = ie(W.messages[0].data);
              ti(U, F, P), cr(U, c, g, F), W.messages[0].data = ge(U);
            });
          }
          S.data = jt(F);
        }), _[1][0].data = ge(k);
        var T = ie(_[3][0].data);
        T[1].forEach(function(S) {
          var C = ie(S.data), F = Ye(C[2][0].data), I = p[F];
          if (!p[F]) {
            I = Or({ deps: [g], location: "", type: c[F].type }, c), c[I].location = "Root Entry/Index/Tables/Tile-".concat(I, ".iwa"), p[F] = I;
            var P = Ir(o, c, F);
            P.id = I, Br(m, F), Kt(m, I), Ee.utils.cfb_add(o, "/Index/Tables/Tile-".concat(I, ".iwa"), Na(Oa([P]))), ut(o, c, 2, function(W) {
              var U = ie(W.messages[0].data);
              U[3].push({ type: 2, data: ge([[], [{ type: 0, data: ve(I) }], [{ type: 2, data: ar("Tables/Tile") }], [{ type: 2, data: ar("Tables/Tile-".concat(I)) }], [{ type: 2, data: new Uint8Array([2, 0, 0]) }], [{ type: 2, data: new Uint8Array([2, 0, 0]) }], [], [], [], [], [{ type: 0, data: ve(0) }], [], [{ type: 0, data: ve(0) }]]) }), U[1] = [{ type: 0, data: ve(Math.max(I + 1, Ue(U[1][0].data))) }], cr(U, c, g, I), W.messages[0].data = ge(U);
            });
          }
          C[2][0].data = jt(I), S.data = ge(C);
        }), _[3][0].data = ge(T), E[4][0].data = ge(_), m.messages[0].data = ge(E);
      });
    })(t, a, l + 1), n = Ir(t, a, 1), s = Qr(ie(n.messages[0].data)[1], Ye)), (function(o, c, f, u, h, p) {
      var d = [];
      ut(o, c, p, function(v) {
        var y = ie(v.messages[0].data);
        y[1] = [{ type: 2, data: ar(u) }], d = Qr(y[2], Ye), v.messages[0].data = ge(y);
      });
      var g = Ir(o, c, d[0]), m = Ye(ie(g.messages[0].data)[2][0].data);
      ut(o, c, m, function(v, y) {
        return (function(w, E, A, b, _, k) {
          if (!A["!ref"]) throw new Error("Cannot export empty sheet to NUMBERS");
          var T = Ot(A["!ref"]);
          T.s.r = T.s.c = 0;
          var S = !1;
          T.e.c > 999 && (S = !0, T.e.c = 999), T.e.r > 999999 && (S = !0, T.e.r = 999999), S && console.error("Truncating to ".concat(We(T)));
          var C = [];
          if (A["!data"]) C = A["!data"];
          else {
            for (var F = [], I = 0; I <= T.e.c; ++I) F[I] = De(I);
            for (var P = 0; P <= T.e.r; ++P) {
              C[P] = [];
              var W = "" + (P + 1);
              for (I = 0; I <= T.e.c; ++I) {
                var U = A[F[I] + W];
                U && (C[P][I] = U);
              }
            }
          }
          var G = { cmnt: [{ a: "~54ee77S~", t: "... the people who are crazy enough to think they can change the world, are the ones who do." }], rsst: [{ v: "~54ee77S~", l: "https://sheetjs.com/" }], sst: ["~Sh33tJ5~"] }, B = ie(b.messages[0].data);
          B[6][0].data = ve(T.e.r + 1), B[7][0].data = ve(T.e.c + 1), delete B[46];
          var z = ie(B[4][0].data), K = Ye(ie(z[1][0].data)[2][0].data);
          ut(w, E, K, function(Ie, je) {
            var Pe, at = ie(Ie.messages[0].data);
            if ((Pe = at?.[2]) != null && Pe[0]) for (var ct = 0; ct < C.length; ++ct) {
              var Te = ie(at[2][0].data);
              Te[1][0].data = ve(ct), Te[4][0].data = ve(C[ct].length), at[2][ct] = { type: at[2][0].type, data: ge(Te) };
            }
            Ie.messages[0].data = ge(at);
          });
          var ee = Ye(z[2][0].data);
          ut(w, E, ee, function(Ie, je) {
            for (var Pe = ie(Ie.messages[0].data), at = 0; at <= T.e.c; ++at) {
              var ct = ie(Pe[2][0].data);
              ct[1][0].data = ve(at), ct[4][0].data = ve(T.e.r + 1), Pe[2][at] = { type: Pe[2][0].type, data: ge(ct) };
            }
            Ie.messages[0].data = ge(Pe);
          });
          var se = ie(z[9][0].data);
          se[1] = [];
          var H = ie(z[3][0].data), Y = 256;
          H[2] = [{ type: 0, data: ve(Y) }];
          var he = Ye(ie(H[1][0].data)[2][0].data), te = (Q = ie(Ir(w, E, 2).messages[0].data)[3].filter(function(Ie) {
            return Ue(ie(Ie.data)[1][0].data) == he;
          }), Q?.length ? Ue(ie(Q[0].data)[12][0].data) : 0), Q;
          Ee.utils.cfb_del(w, E[he].location), ut(w, E, 2, function(Ie) {
            var je = ie(Ie.messages[0].data);
            je[3] = je[3].filter(function(Pe) {
              return Ue(ie(Pe.data)[1][0].data) != he;
            }), (function(Pe, at, ct, Te) {
              var rt = at[ct].location.replace(/^Root Entry\//, "").replace(/^Index\//, "").replace(/\.iwa$/, ""), qe = Pe[3].findIndex(function(N) {
                var O, L, D = ie(N.data);
                return (O = D[3]) != null && O[0] ? Ar(D[3][0].data) == rt : !(!((L = D[2]) != null && L[0]) || Ar(D[2][0].data) != rt);
              }), x = ie(Pe[3][qe].data);
              x[6] || (x[6] = []), x[6] = x[6].filter(function(N) {
                return Ue(ie(N.data)[1][0].data) != Te;
              }), Pe[3][qe].data = ge(x);
            })(je, E, k, he), Ie.messages[0].data = ge(je);
          }), Br(b, he), H[1] = [];
          for (var ke = Math.ceil((T.e.r + 1) / Y), ce = 0; ce < ke; ++ce) {
            var fe = Or({ deps: [], location: "", type: 6002 }, E);
            E[fe].location = "Root Entry/Index/Tables/Tile-".concat(fe, ".iwa");
            for (var Ne = [[], [{ type: 0, data: ve(0) }], [{ type: 0, data: ve(Math.min(T.e.r + 1, (ce + 1) * Y)) }], [{ type: 0, data: ve(0) }], [{ type: 0, data: ve(Math.min((ce + 1) * Y, T.e.r + 1) - ce * Y) }], [], [{ type: 0, data: ve(5) }], [{ type: 0, data: ve(1) }], [{ type: 0, data: ve(1) }]], R = ce * Y; R <= Math.min(T.e.r, (ce + 1) * Y - 1); ++R) {
              var Ce = wu(C[R], G);
              Ce[1][0].data = ve(R - ce * Y), Ne[5].push({ data: ge(Ce), type: 2 });
            }
            H[1].push({ type: 2, data: ge([[], [{ type: 0, data: ve(ce) }], [{ type: 2, data: jt(fe) }]]) });
            var bt = Na(Oa([{ id: fe, messages: [ei(6002, ge(Ne))] }]));
            Ee.utils.cfb_add(w, "/Index/Tables/Tile-".concat(fe, ".iwa"), bt), ut(w, E, 2, function(Ie) {
              var je = ie(Ie.messages[0].data);
              je[3].push({ type: 2, data: ge([[], [{ type: 0, data: ve(fe) }], [{ type: 2, data: ar("Tables/Tile") }], [{ type: 2, data: ar("Tables/Tile-".concat(fe)) }], [{ type: 2, data: new Uint8Array([2, 0, 0]) }], [{ type: 2, data: new Uint8Array([2, 0, 0]) }], [], [], [], [], [{ type: 0, data: ve(0) }], [], [{ type: 0, data: ve(te) }]]) }), je[1] = [{ type: 0, data: ve(Math.max(fe + 1, Ue(je[1][0].data))) }], cr(je, E, k, fe), Ie.messages[0].data = ge(je);
            }), Kt(b, fe), se[1].push({ type: 2, data: ge([[], [{ type: 0, data: ve(ce * Y) }], [{ type: 0, data: ve(ce) }]]) });
          }
          if (z[3][0].data = ge(H), z[9][0].data = ge(se), z[10] = [{ type: 2, data: new Uint8Array([]) }], A["!merges"]) {
            var tt = Or({ type: 6144, deps: [k], location: E[k].location }, E);
            _.push({ id: tt, messages: [ei(6144, ge([[], A["!merges"].map(function(Ie) {
              return { type: 2, data: ge([[], [{ type: 2, data: ge([[], [{ type: 5, data: new Uint8Array(new Uint16Array([Ie.s.r, Ie.s.c]).buffer) }]]) }], [{ type: 2, data: ge([[], [{ type: 5, data: new Uint8Array(new Uint16Array([Ie.e.r - Ie.s.r + 1, Ie.e.c - Ie.s.c + 1]).buffer) }]]) }]]) };
            })]))] }), z[13] = [{ type: 2, data: jt(tt) }], ut(w, E, 2, function(Ie) {
              var je = ie(Ie.messages[0].data);
              cr(je, E, k, tt), Ie.messages[0].data = ge(je);
            }), Kt(b, tt);
          } else delete z[13];
          var pt = Ye(z[4][0].data);
          ut(w, E, pt, function(Ie) {
            var je = ie(Ie.messages[0].data);
            je[3] = [], G.sst.forEach(function(Pe, at) {
              at != 0 && je[3].push({ type: 2, data: ge([[], [{ type: 0, data: ve(at) }], [{ type: 0, data: ve(1) }], [{ type: 2, data: ar(Pe) }]]) });
            }), Ie.messages[0].data = ge(je);
          });
          var mt = Ye(z[17][0].data);
          if (ut(w, E, mt, function(Ie) {
            var je = ie(Ie.messages[0].data);
            je[3] = [];
            var Pe = [904980, 903835, 903815, 903845];
            G.rsst.forEach(function(at, ct) {
              if (ct != 0) {
                var Te = [[], [{ type: 0, data: new Uint8Array([5]) }], [], [{ type: 2, data: ar(at.v) }]];
                Te[10] = [{ type: 0, data: new Uint8Array([1]) }], Te[19] = [{ type: 2, data: new Uint8Array([10, 6, 8, 0, 18, 2, 101, 110]) }], Te[5] = [{ type: 2, data: new Uint8Array([10, 8, 8, 0, 18, 4, 8, 155, 149, 55]) }], Te[2] = [{ type: 2, data: new Uint8Array([8, 148, 158, 55]) }], Te[6] = [{ type: 2, data: new Uint8Array([10, 6, 8, 0, 16, 0, 24, 0]) }], Te[7] = [{ type: 2, data: new Uint8Array([10, 8, 8, 0, 18, 4, 8, 135, 149, 55]) }], Te[8] = [{ type: 2, data: new Uint8Array([10, 8, 8, 0, 18, 4, 8, 165, 149, 55]) }], Te[14] = [{ type: 2, data: new Uint8Array([10, 6, 8, 0, 16, 0, 24, 0]) }], Te[24] = [{ type: 2, data: new Uint8Array([10, 6, 8, 0, 16, 0, 24, 0]) }];
                var rt = Or({ deps: [], location: "", type: 2001 }, E), qe = [];
                if (at.l) {
                  var x = sa(w, 2032, [[], [], [{ type: 2, data: ar(at.l) }]], "/Index/Tables/DataList", E);
                  Te[11] = [];
                  var N = [[], []];
                  N[1] || (N[1] = []), N[1].push({ type: 2, data: ge([[], [{ type: 0, data: ve(0) }], [{ type: 2, data: jt(x) }]]) }), Te[11][0] = { type: 2, data: ge(N) }, qe.push(x);
                }
                sa(w, 2001, Te, "/Index/Tables/DataList", E, rt), ut(w, E, rt, function(L) {
                  Pe.forEach(function(D) {
                    return Kt(L, D);
                  }), qe.forEach(function(D) {
                    return Kt(L, D);
                  });
                });
                var O = sa(w, 6218, [[], [{ type: 2, data: jt(rt) }], [], [{ type: 2, data: new Uint8Array([13, 255, 255, 255, 0, 18, 10, 16, 255, 255, 1, 24, 255, 255, 255, 255, 7]) }]], "/Index/Tables/DataList", E);
                ut(w, E, O, function(L) {
                  return Kt(L, rt);
                }), je[3].push({ type: 2, data: ge([[], [{ type: 0, data: ve(ct) }], [{ type: 0, data: ve(1) }], [], [], [], [], [], [], [{ type: 2, data: jt(O) }]]) }), Kt(Ie, O), ut(w, E, 2, function(L) {
                  var D = ie(L.messages[0].data);
                  cr(D, E, mt, O), cr(D, E, O, rt), cr(D, E, rt, qe), cr(D, E, rt, Pe), L.messages[0].data = ge(D);
                });
              }
            }), Ie.messages[0].data = ge(je);
          }), G.cmnt.length > 1) {
            var ue = Ye(z[19][0].data), _t = {}, Nt = 0;
            ut(w, E, ue, function(Ie) {
              var je = ie(Ie.messages[0].data);
              je[3] = [], G.cmnt.forEach(function(Pe, at) {
                if (at != 0) {
                  var ct = [];
                  Pe.replies && Pe.replies.forEach(function(qe) {
                    _t[qe.a || ""] || (_t[qe.a || ""] = sa(w, 212, [[], [{ type: 2, data: ar(qe.a || "") }], [{ type: 2, data: nc(++Nt) }], [], [{ type: 0, data: ve(0) }]], "/Index/Tables/DataList", E));
                    var x = _t[qe.a || ""], N = sa(w, 3056, [[], [{ type: 2, data: ar(qe.t || "") }], [{ type: 2, data: ge([[], [{ type: 1, data: new Uint8Array([0, 0, 0, 128, 116, 109, 182, 65]) }]]) }], [{ type: 2, data: jt(x) }]], "/Index/Tables/DataList", E);
                    ut(w, E, N, function(O) {
                      return Kt(O, x);
                    }), ct.push(N), ut(w, E, 2, function(O) {
                      var L = ie(O.messages[0].data);
                      cr(L, E, N, x), O.messages[0].data = ge(L);
                    });
                  }), _t[Pe.a || ""] || (_t[Pe.a || ""] = sa(w, 212, [[], [{ type: 2, data: ar(Pe.a || "") }], [{ type: 2, data: nc(++Nt) }], [], [{ type: 0, data: ve(0) }]], "/Index/Tables/DataList", E));
                  var Te = _t[Pe.a || ""], rt = sa(w, 3056, [[], [{ type: 2, data: ar(Pe.t || "") }], [{ type: 2, data: ge([[], [{ type: 1, data: new Uint8Array([0, 0, 0, 128, 116, 109, 182, 65]) }]]) }], [{ type: 2, data: jt(Te) }], ct.map(function(qe) {
                    return { type: 2, data: jt(qe) };
                  }), [{ type: 2, data: ge([[], [{ type: 0, data: ve(at) }], [{ type: 0, data: ve(0) }]]) }]], "/Index/Tables/DataList", E);
                  ut(w, E, rt, function(qe) {
                    Kt(qe, Te), ct.forEach(function(x) {
                      return Kt(qe, x);
                    });
                  }), je[3].push({ type: 2, data: ge([[], [{ type: 0, data: ve(at) }], [{ type: 0, data: ve(1) }], [], [], [], [], [], [], [], [{ type: 2, data: jt(rt) }]]) }), Kt(Ie, rt), ut(w, E, 2, function(qe) {
                    var x = ie(qe.messages[0].data);
                    cr(x, E, ue, rt), cr(x, E, rt, Te), ct.length && cr(x, E, rt, ct), qe.messages[0].data = ge(x);
                  });
                }
              }), je[2][0].data = ve(G.cmnt.length + 1), Ie.messages[0].data = ge(je);
            });
          }
          B[4][0].data = ge(z), b.messages[0].data = ge(B);
        })(o, c, f, v, y, m);
      });
    })(t, a, e.Sheets[i], i, 0, s[l]);
  }), t;
}
function ut(e, r, t, a) {
  var n = Ee.find(e, r[t].location);
  if (!n) throw "Could not find ".concat(r[t].location, " in Numbers template");
  var s = En(kn(n.content));
  a(s.find(function(i) {
    return i.id == t;
  }), s), n.content = Na(Oa(s)), n.size = n.content.length;
}
function Ir(e, r, t) {
  var a = Ee.find(e, r[t].location);
  if (!a) throw "Could not find ".concat(r[t].location, " in Numbers template");
  return En(kn(a.content)).find(function(n) {
    return n.id == t;
  });
}
function ti(e, r, t) {
  e[3].push({ type: 2, data: ge([[], [{ type: 0, data: ve(r) }], [{ type: 2, data: ar(t.replace(/-[\s\S]*$/, "")) }], [{ type: 2, data: ar(t) }], [{ type: 2, data: new Uint8Array([2, 0, 0]) }], [{ type: 2, data: new Uint8Array([2, 0, 0]) }], [], [], [], [], [{ type: 0, data: ve(0) }], [], [{ type: 0, data: ve(0) }]]) }), e[1] = [{ type: 0, data: ve(Math.max(r + 1, Ue(e[1][0].data))) }];
}
function sa(e, r, t, a, n, s) {
  s || (s = Or({ deps: [], location: "", type: r }, n));
  var i = "".concat(a, "-").concat(s, ".iwa");
  n[s].location = "Root Entry" + i, Ee.utils.cfb_add(e, i, Na(Oa([{ id: s, messages: [ei(r, ge(t))] }])));
  var l = i.replace(/^[\/]/, "").replace(/^Index\//, "").replace(/\.iwa$/, "");
  return ut(e, n, 2, function(o) {
    var c = ie(o.messages[0].data);
    ti(c, s || 0, l), o.messages[0].data = ge(c);
  }), s;
}
function cr(e, r, t, a) {
  var n = r[t].location.replace(/^Root Entry\//, "").replace(/^Index\//, "").replace(/\.iwa$/, ""), s = e[3].findIndex(function(l) {
    var o, c, f = ie(l.data);
    return (o = f[3]) != null && o[0] ? Ar(f[3][0].data) == n : !(!((c = f[2]) != null && c[0]) || Ar(f[2][0].data) != n);
  }), i = ie(e[3][s].data);
  i[6] || (i[6] = []), (Array.isArray(a) ? a : [a]).forEach(function(l) {
    i[6].push({ type: 2, data: ge([[], [{ type: 0, data: ve(l) }]]) });
  }), e[3][s].data = ge(i);
}
function uf(e) {
  return function(r) {
    for (var t = 0; t != e.length; ++t) {
      var a = e[t];
      r[a[0]] === void 0 && (r[a[0]] = a[1]), a[2] === "n" && (r[a[0]] = Number(r[a[0]]));
    }
  };
}
function Oi(e) {
  uf([["cellNF", !1], ["cellHTML", !0], ["cellFormula", !0], ["cellStyles", !1], ["cellText", !0], ["cellDates", !1], ["sheetStubs", !1], ["sheetRows", 0, "n"], ["bookDeps", !1], ["bookSheets", !1], ["bookProps", !1], ["bookFiles", !1], ["bookVBA", !1], ["password", ""], ["WTF", !1]])(e);
}
function Ni(e) {
  uf([["cellDates", !1], ["bookSST", !1], ["bookType", "xlsx"], ["compression", !1], ["WTF", !1]])(e);
}
function yu(e, r, t, a, n, s, i, l) {
  if (e && e["!legdrawel"]) {
    var o = ir(t, Ra(e["!legdrawel"].Target, a), !0);
    o && (function(c, f, u) {
      var h = 0;
      (kc(c, "shape") || []).forEach(function(p) {
        var d = "", g = !0, m = -1, v = -1, y = -1;
        if (p.replace(Vt, function(E, A) {
          var b = pe(E);
          switch (Tr(b[0])) {
            case "<ClientData":
              b.ObjectType && (d = b.ObjectType);
              break;
            case "<Visible":
            case "<Visible/>":
              g = !1;
              break;
            case "<Row":
            case "<Row>":
            case "<Column":
            case "<Column>":
              m = A + E.length;
              break;
            case "</Row>":
              v = +p.slice(m, A).trim();
              break;
            case "</Column>":
              y = +p.slice(m, A).trim();
          }
          return "";
        }), d === "Note") {
          var w = is(f, v >= 0 && y >= 0 ? Ge({ r: v, c: y }) : u[h].ref);
          w.c && (w.c.hidden = g), ++h;
        }
      });
    })(ht(o), e, l || []);
  }
}
function Eu(e, r, t, a, n, s, i, l, o, c, f, u) {
  try {
    s[a] = an(ir(e, t, !0), r);
    var h, p = It(e, r);
    switch (l) {
      case "sheet":
        h = Ph(p, r, n, o, s[a], c, f, u);
        break;
      case "chart":
        if (!(h = Lh(p, r, n, o, s[a], c)) || !h["!drawel"]) break;
        var d = Ra(h["!drawel"].Target, r), g = vn(d), m = (function(b, _) {
          if (!b) return "??";
          var k = (b.match(/<c:chart [^<>]*r:id="([^<>"]*)"/) || ["", ""])[1];
          return _["!id"][k].Target;
        })(ir(e, d, !0), an(ir(e, g, !0), d)), v = Ra(m, d), y = vn(v);
        h = Eh(ir(e, v, !0), 0, 0, an(ir(e, y, !0), v), 0, h);
        break;
      case "macro":
        A = r, s[a], A.slice(-4), h = { "!type": "macro" };
        break;
      case "dialog":
        h = (function(b, _) {
          return _.slice(-4), { "!type": "dialog" };
        })(0, r, 0, 0, s[a]);
        break;
      default:
        throw new Error("Unrecognized sheet type " + l);
    }
    i[a] = h;
    var w = [], E = [];
    s && s[a] && gt(s[a]).forEach(function(b) {
      var _ = "";
      if (s[a][b].Type == $e.CMNT) {
        if (_ = Ra(s[a][b].Target, r), !(w = Bh(It(e, _, !0), _, o)) || !w.length) return;
        Do(h, w, !1);
      }
      s[a][b].Type == $e.TCMNT && (_ = Ra(s[a][b].Target, r), E = E.concat((function(k, T) {
        var S = [], C = !1, F = {}, I = 0;
        return k.replace(Vt, function(P, W) {
          var U = pe(P);
          switch (Tr(U[0])) {
            case "<?xml":
            case "<ThreadedComments":
            case "</ThreadedComments>":
            case "<extLst":
            case "<extLst>":
            case "</extLst>":
            case "<extLst/>":
              break;
            case "<threadedComment":
              F = { author: U.personId, guid: U.id, ref: U.ref, T: 1 };
              break;
            case "</threadedComment>":
              F.t != null && S.push(F);
              break;
            case "<text>":
            case "<text":
              I = W + P.length;
              break;
            case "</text>":
              F.t = k.slice(I, W).replace(/\r\n/g, `
`).replace(/\r/g, `
`);
              break;
            case "<mentions":
            case "<mentions>":
            case "<ext":
              C = !0;
              break;
            case "</mentions>":
            case "</ext>":
              C = !1;
              break;
            default:
              if (!C && T.WTF) throw new Error("unrecognized " + U[0] + " in threaded comments");
          }
          return P;
        }), S;
      })(It(e, _, !0), o)));
    }), E && E.length && Do(h, E, !0, o.people || []), yu(h, 0, e, r, 0, 0, 0, w);
  } catch (b) {
    if (o.WTF) throw b;
  }
  var A;
}
function mr(e) {
  return e.charAt(0) == "/" ? e.slice(1) : e;
}
function df(e, r) {
  if (xa(), Oi(r = r || {}), br(e, "META-INF/manifest.xml") || br(e, "objectdata.xml")) return ec(e, r);
  if (br(e, "Index/Document.iwa")) {
    if (typeof Uint8Array > "u") throw new Error("NUMBERS file parsing requires Uint8Array support");
    if (Ms !== void 0) {
      if (e.FileIndex) return Ms(e, r);
      var t = Ee.utils.cfb_new();
      return Ki(e).forEach(function(W) {
        Me(t, W, (function(U, G) {
          return Sc(ci(U, G));
        })(e, W));
      }), Ms(t, r);
    }
    throw new Error("Unsupported NUMBERS file");
  }
  if (!br(e, "[Content_Types].xml")) {
    if (br(e, "index.xml.gz")) throw new Error("Unsupported NUMBERS 08 file");
    if (br(e, "index.xml")) throw new Error("Unsupported NUMBERS 09 file");
    var a = Ee.find(e, "Index.zip");
    if (a) return delete (r = st(r)).type, typeof a.content == "string" && (r.type = "binary"), typeof Bun < "u" && Buffer.isBuffer(a.content) ? Ta(new Uint8Array(a.content), r) : Ta(a.content, r);
    throw new Error("Unsupported ZIP file");
  }
  var n, s, i = Ki(e), l = (function(W) {
    var U = { workbooks: [], sheets: [], charts: [], dialogs: [], macros: [], rels: [], strs: [], comments: [], threadedcomments: [], links: [], coreprops: [], extprops: [], custprops: [], themes: [], styles: [], calcchains: [], vba: [], drawings: [], metadata: [], people: [], TODO: [], xmlns: "" };
    if (!W || !W.match) return U;
    var G = {};
    if ((W.match(Vt) || []).forEach(function(B) {
      var z = pe(B);
      switch (z[0].replace(Vf, "<")) {
        case "<?xml":
          break;
        case "<Types":
          U.xmlns = z["xmlns" + (z[0].match(/<(\w+):/) || ["", ""])[1]];
          break;
        case "<Default":
          G[z.Extension.toLowerCase()] = z.ContentType;
          break;
        case "<Override":
          U[Xs[z.ContentType]] !== void 0 && U[Xs[z.ContentType]].push(z.PartName);
      }
    }), U.xmlns !== Nc) throw new Error("Unknown Namespace: " + U.xmlns);
    return U.calcchain = U.calcchains.length > 0 ? U.calcchains[0] : "", U.sst = U.strs.length > 0 ? U.strs[0] : "", U.style = U.styles.length > 0 ? U.styles[0] : "", U.defaults = G, delete U.calcchains, U;
  })(ir(e, "[Content_Types].xml")), o = !1;
  if (l.workbooks.length === 0 && It(e, s = "xl/workbook.xml", !0) && l.workbooks.push(s), l.workbooks.length === 0) {
    if (!It(e, s = "xl/workbook.bin", !0)) throw new Error("Could not find workbook");
    l.workbooks.push(s), o = !0;
  }
  l.workbooks[0].slice(-3) == "bin" && (o = !0);
  var c = {}, f = {};
  if (!r.bookSheets && !r.bookProps) {
    if (sn = [], l.sst) try {
      sn = Uh(It(e, mr(l.sst)), l.sst, r);
    } catch (W) {
      if (r.WTF) throw W;
    }
    r.cellStyles && l.themes.length && (c = kl(ir(e, l.themes[0].replace(/^\//, ""), !0) || "", r)), l.style && (f = Mh(It(e, mr(l.style)), l.style, c, r));
  }
  l.links.map(function(W) {
    try {
      return an(ir(e, vn(mr(W))), W), zh(It(e, mr(W)), 0, W, r);
    } catch {
    }
  });
  var u = Dh(It(e, mr(l.workbooks[0])), l.workbooks[0], r), h = {}, p = "";
  l.coreprops.length && ((p = It(e, mr(l.coreprops[0]), !0)) && (h = Qc(p)), l.extprops.length !== 0 && (p = It(e, mr(l.extprops[0]), !0)) && (function(W, U, G) {
    var B = {};
    U || (U = {}), W = ht(W), fa.forEach(function(z) {
      var K = (Wt(W, z[0]) || [])[1];
      switch (z[2]) {
        case "string":
          K && (U[z[1]] = et(K));
          break;
        case "bool":
          U[z[1]] = K === "true";
          break;
        case "raw":
          var ee = va(W, z[0]);
          ee && ee.length > 0 && (B[z[1]] = ee[1]);
      }
    }), B.HeadingPairs && B.TitlesOfParts && tl(B.HeadingPairs, B.TitlesOfParts, U, G);
  })(p, h, r));
  var d = {};
  r.bookSheets && !r.bookProps || l.custprops.length !== 0 && (p = ir(e, mr(l.custprops[0]), !0)) && (d = (function(W, U) {
    var G = {}, B = "", z = W.match(y1);
    if (z) for (var K = 0; K != z.length; ++K) {
      var ee = z[K], se = pe(ee);
      switch (Tr(se[0])) {
        case "<?xml":
        case "<Properties":
          break;
        case "<property":
          B = et(se.name);
          break;
        case "</property>":
          B = null;
          break;
        default:
          if (ee.indexOf("<vt:") === 0) {
            var H = ee.split(">"), Y = H[0].slice(4), he = H[1];
            switch (Y) {
              case "lpstr":
              case "bstr":
              case "lpwstr":
              case "cy":
              case "error":
                G[B] = et(he);
                break;
              case "bool":
                G[B] = ot(he);
                break;
              case "i1":
              case "i2":
              case "i4":
              case "i8":
              case "int":
              case "uint":
                G[B] = parseInt(he, 10);
                break;
              case "r4":
              case "r8":
              case "decimal":
                G[B] = parseFloat(he);
                break;
              case "filetime":
              case "date":
                G[B] = wt(he);
                break;
              default:
                if (Y.slice(-1) == "/") break;
                U.WTF && typeof console < "u" && console.warn("Unexpected", ee, Y, H);
            }
          } else if (ee.slice(0, 2) !== "</") {
            if (U.WTF) throw new Error(ee);
          }
      }
    }
    return G;
  })(p, r));
  var g = {};
  if ((r.bookSheets || r.bookProps) && (u.Sheets ? n = u.Sheets.map(function(W) {
    return W.name;
  }) : h.Worksheets && h.SheetNames.length > 0 && (n = h.SheetNames), r.bookProps && (g.Props = h, g.Custprops = d), r.bookSheets && n !== void 0 && (g.SheetNames = n), r.bookSheets ? g.SheetNames : r.bookProps)) return g;
  n = {};
  var m = {};
  r.bookDeps && l.calcchain && (m = Wh(It(e, mr(l.calcchain)), l.calcchain));
  var v, y, w = 0, E = {}, A = u.Sheets;
  h.Worksheets = A.length, h.SheetNames = [];
  for (var b = 0; b != A.length; ++b) h.SheetNames[b] = A[b].name;
  var _ = o ? "bin" : "xml", k = l.workbooks[0].lastIndexOf("/"), T = (l.workbooks[0].slice(0, k + 1) + "_rels/" + l.workbooks[0].slice(k + 1) + ".rels").replace(/^\//, "");
  br(e, T) || (T = "xl/_rels/workbook." + _ + ".rels");
  var S = an(ir(e, T, !0), T.replace(/_rels.*/, "s5s"));
  (l.metadata || []).length >= 1 && (r.xlmeta = Hh(It(e, mr(l.metadata[0])), l.metadata[0], r)), (l.people || []).length >= 1 && (r.people = (function(W, U) {
    var G = [], B = !1;
    return W.replace(Vt, function(z) {
      var K = pe(z);
      switch (Tr(K[0])) {
        case "<?xml":
        case "<personList":
        case "</personList>":
        case "</person>":
        case "<extLst":
        case "<extLst>":
        case "</extLst>":
        case "<extLst/>":
          break;
        case "<person":
          G.push({ name: K.displayname, id: K.id });
          break;
        case "<ext":
          B = !0;
          break;
        case "</ext>":
          B = !1;
          break;
        default:
          if (!B && U.WTF) throw new Error("unrecognized " + K[0] + " in threaded comments");
      }
      return z;
    }), G;
  })(It(e, mr(l.people[0])), r)), S && (S = (function(W, U) {
    if (!W) return 0;
    try {
      W = U.map(function(G) {
        return G.id || (G.id = G.strRelID), [G.name, W["!id"][G.id].Target, (B = W["!id"][G.id].Type, $e.WS.indexOf(B) > -1 ? "sheet" : B == $e.CS ? "chart" : B == $e.DS ? "dialog" : B == $e.MS ? "macro" : B && B.length ? B : "sheet")];
        var B;
      });
    } catch {
      return null;
    }
    return W && W.length !== 0 ? W : null;
  })(S, u.Sheets));
  var C = It(e, "xl/worksheets/sheet.xml", !0) ? 1 : 0;
  e: for (w = 0; w != h.Worksheets; ++w) {
    var F = "sheet";
    if (S && S[w] ? (v = "xl/" + S[w][1].replace(/[\/]?xl\//, ""), br(e, v) || (v = S[w][1]), br(e, v) || (v = T.replace(/_rels\/[\S\s]*$/, "") + S[w][1]), F = S[w][2]) : v = (v = "xl/worksheets/sheet" + (w + 1 - C) + "." + _).replace(/sheet0\./, "sheet."), y = v.replace(/^(.*)(\/)([^\/]*)$/, "$1/_rels/$3.rels"), r && r.sheets != null) switch (typeof r.sheets) {
      case "number":
        if (w != r.sheets) continue e;
        break;
      case "string":
        if (h.SheetNames[w].toLowerCase() != r.sheets.toLowerCase()) continue e;
        break;
      default:
        if (Array.isArray && Array.isArray(r.sheets)) {
          for (var I = !1, P = 0; P != r.sheets.length; ++P) typeof r.sheets[P] == "number" && r.sheets[P] == w && (I = 1), typeof r.sheets[P] == "string" && r.sheets[P].toLowerCase() == h.SheetNames[w].toLowerCase() && (I = 1);
          if (!I) continue e;
        }
    }
    Eu(e, v, y, h.SheetNames[w], w, E, n, F, r, u, c, f);
  }
  return g = { Directory: l, Workbook: u, Props: h, Custprops: d, Deps: m, Sheets: n, SheetNames: h.SheetNames, Strings: sn, Styles: f, Themes: c, SSF: st(be) }, r && r.bookFiles && (e.files ? (g.keys = i, g.files = e.files) : (g.keys = [], g.files = {}, e.FullPaths.forEach(function(W, U) {
    W = W.replace(/^Root Entry[\/]/, ""), g.keys.push(W), g.files[W] = e.FileIndex[U];
  }))), r && r.bookVBA && (l.vba.length > 0 ? g.vbaraw = It(e, mr(l.vba[0]), !0) : l.defaults && l.defaults.bin === "application/vnd.ms-office.vbaProject" && (g.vbaraw = It(e, "xl/vbaProject.bin", !0))), g.bookType = o ? "xlsb" : "xlsx", g;
}
function ku(e, r) {
  var t, a, n = r || {}, s = "Workbook", i = Ee.find(e, s);
  try {
    if (s = "/!DataSpaces/Version", !(i = Ee.find(e, s)) || !i.content) throw new Error("ECMA-376 Encrypted file missing " + s);
    if (t = i.content, (a = {}).id = t.read_shift(0, "lpp4"), a.R = $r(t, 4), a.U = $r(t, 4), a.W = $r(t, 4), s = "/!DataSpaces/DataSpaceMap", !(i = Ee.find(e, s)) || !i.content) throw new Error("ECMA-376 Encrypted file missing " + s);
    var l = (function(f) {
      var u = [];
      f.l += 4;
      for (var h = f.read_shift(4); h-- > 0; ) u.push(Q1(f));
      return u;
    })(i.content);
    if (l.length !== 1 || l[0].comps.length !== 1 || l[0].comps[0].t !== 0 || l[0].name !== "StrongEncryptionDataSpace" || l[0].comps[0].v !== "EncryptedPackage") throw new Error("ECMA-376 Encrypted file bad " + s);
    if (s = "/!DataSpaces/DataSpaceInfo/StrongEncryptionDataSpace", !(i = Ee.find(e, s)) || !i.content) throw new Error("ECMA-376 Encrypted file missing " + s);
    var o = (function(f) {
      var u = [];
      f.l += 4;
      for (var h = f.read_shift(4); h-- > 0; ) u.push(f.read_shift(0, "lpp4"));
      return u;
    })(i.content);
    if (o.length != 1 || o[0] != "StrongEncryptionTransform") throw new Error("ECMA-376 Encrypted file bad " + s);
    if (s = "/!DataSpaces/TransformInfo/StrongEncryptionTransform/!Primary", !(i = Ee.find(e, s)) || !i.content) throw new Error("ECMA-376 Encrypted file missing " + s);
    Z1(i.content);
  } catch {
  }
  if (s = "/EncryptionInfo", !(i = Ee.find(e, s)) || !i.content) throw new Error("ECMA-376 Encrypted file missing " + s);
  var c = (function(f) {
    var u = $r(f);
    switch (u.Minor) {
      case 2:
        return [u.Minor, e0(f)];
      case 3:
        return [u.Minor, t0()];
      case 4:
        return [u.Minor, r0(f)];
    }
    throw new Error("ECMA-376 Encrypted file unrecognized Version: " + u.Minor);
  })(i.content);
  if (s = "/EncryptedPackage", !(i = Ee.find(e, s)) || !i.content) throw new Error("ECMA-376 Encrypted file missing " + s);
  if (c[0] == 4 && typeof decrypt_agile < "u") return decrypt_agile(c[1], i.content, n.password || "", n);
  if (c[0] == 2 && typeof decrypt_std76 < "u") return decrypt_std76(c[1], i.content, n.password || "", n);
  throw new Error("File is password-protected");
}
function pf(e, r) {
  e && !e.SSF && (e.SSF = st(be)), e && e.SSF && (xa(), Va(e.SSF), r.revssf = xn(e.SSF), r.revssf[e.SSF[65535]] = 0, r.ssf = e.SSF), r.rels = {}, r.wbrels = {}, r.Strings = [], r.Strings.Count = 0, r.Strings.Unique = 0, on ? r.revStrings = /* @__PURE__ */ new Map() : (r.revStrings = {}, r.revStrings.foo = [], delete r.revStrings.foo);
  var t = "xml", a = A0.indexOf(r.bookType) > -1, n = { workbooks: [], sheets: [], charts: [], dialogs: [], macros: [], rels: [], strs: [], comments: [], threadedcomments: [], links: [], coreprops: [], extprops: [], custprops: [], themes: [], styles: [], calcchains: [], vba: [], drawings: [], metadata: [], people: [], TODO: [], xmlns: "" };
  Ni(r = r || {});
  var s = li(), i = "", l = 0;
  if (r.cellXfs = [], Mr(r.cellXfs, {}, { revssf: { General: 0 } }), e.Props || (e.Props = {}), Me(s, i = "docProps/core.xml", Zc(e.Props, r)), n.coreprops.push(i), it(r.rels, 2, i, $e.CORE_PROPS), i = "docProps/app.xml", !(e.Props && e.Props.SheetNames)) if (e.Workbook && e.Workbook.Sheets) {
    for (var o = [], c = 0; c < e.SheetNames.length; ++c) (e.Workbook.Sheets[c] || {}).Hidden != 2 && o.push(e.SheetNames[c]);
    e.Props.SheetNames = o;
  } else e.Props.SheetNames = e.SheetNames;
  e.Props.Worksheets = e.Props.SheetNames.length, Me(s, i, rl(e.Props)), n.extprops.push(i), it(r.rels, 3, i, $e.EXT_PROPS), e.Custprops !== e.Props && gt(e.Custprops || {}).length > 0 && (Me(s, i = "docProps/custom.xml", al(e.Custprops)), n.custprops.push(i), it(r.rels, 4, i, $e.CUST_PROPS));
  var f, u = ["SheetJ5"];
  for (r.tcid = 0, l = 1; l <= e.SheetNames.length; ++l) {
    var h = { "!id": {} }, p = e.Sheets[e.SheetNames[l - 1]];
    if ((p || {})["!type"], Me(s, i = "xl/worksheets/sheet" + l + "." + t, ch(l - 1, r, e, h)), n.sheets.push(i), it(r.wbrels, -1, "worksheets/sheet" + l + "." + t, $e.WS[0]), p) {
      var d = p["!comments"], g = !1, m = "";
      if (d && d.length > 0) {
        var v = !1;
        d.forEach(function(y) {
          y[1].forEach(function(w) {
            w.T == 1 && (v = !0);
          });
        }), v && (Me(s, m = "xl/threadedComments/threadedComment" + l + ".xml", Sl(d, u, r)), n.threadedcomments.push(m), it(h, -1, "../threadedComments/threadedComment" + l + ".xml", $e.TCMNT)), Me(s, m = "xl/comments" + l + "." + t, _0(d)), n.comments.push(m), it(h, -1, "../comments" + l + "." + t, $e.CMNT), g = !0;
      }
      p["!legacy"] && g && Me(s, "xl/drawings/vmlDrawing" + l + ".vml", _l(l, p["!comments"])), delete p["!comments"], delete p["!legacy"];
    }
    h["!id"].rId1 && Me(s, vn(i), Pa(h));
  }
  return r.Strings != null && r.Strings.length > 0 && (Me(s, i = "xl/sharedStrings." + t, (function(y, w) {
    if (!w.bookSST) return "";
    var E = [kt];
    E[E.length] = ne("sst", null, { xmlns: Sa[0], count: y.Count, uniqueCount: y.Unique });
    for (var A = 0; A != y.length; ++A) if (y[A] != null) {
      var b = y[A], _ = "<si>";
      b.r ? _ += b.r : (_ += "<t", b.t || (b.t = ""), typeof b.t != "string" && (b.t = String(b.t)), b.t.match(Y1) && (_ += ' xml:space="preserve"'), _ += ">" + Be(b.t) + "</t>"), _ += "</si>", E[E.length] = _;
    }
    return E.length > 2 && (E[E.length] = "</sst>", E[1] = E[1].replace("/>", ">")), E.join("");
  })(r.Strings, r)), n.strs.push(i), it(r.wbrels, -1, "sharedStrings." + t, $e.SST)), Me(s, i = "xl/workbook." + t, (function(y) {
    var w = [kt];
    w[w.length] = ne("workbook", null, { xmlns: Sa[0], "xmlns:r": Dc });
    var E = y.Workbook && (y.Workbook.Names || []).length > 0, A = { codeName: "ThisWorkbook" };
    y.Workbook && y.Workbook.WBProps && (Ri.forEach(function(T) {
      y.Workbook.WBProps[T[0]] != null && y.Workbook.WBProps[T[0]] != T[1] && (A[T[0]] = y.Workbook.WBProps[T[0]]);
    }), y.Workbook.WBProps.CodeName && (A.codeName = y.Workbook.WBProps.CodeName, delete A.CodeName)), w[w.length] = ne("workbookPr", null, A);
    var b = y.Workbook && y.Workbook.Sheets || [], _ = 0;
    if (b && b[0] && b[0].Hidden) {
      for (w[w.length] = "<bookViews>", _ = 0; _ != y.SheetNames.length && b[_] && b[_].Hidden; ++_) ;
      _ == y.SheetNames.length && (_ = 0), w[w.length] = '<workbookView firstSheet="' + _ + '" activeTab="' + _ + '"/>', w[w.length] = "</bookViews>";
    }
    for (w[w.length] = "<sheets>", _ = 0; _ != y.SheetNames.length; ++_) {
      var k = { name: Be(y.SheetNames[_].slice(0, 31)) };
      if (k.sheetId = "" + (_ + 1), k["r:id"] = "rId" + (_ + 1), b[_]) switch (b[_].Hidden) {
        case 1:
          k.state = "hidden";
          break;
        case 2:
          k.state = "veryHidden";
      }
      w[w.length] = ne("sheet", null, k);
    }
    return w[w.length] = "</sheets>", E && (w[w.length] = "<definedNames>", y.Workbook && y.Workbook.Names && y.Workbook.Names.forEach(function(T) {
      var S = { name: T.Name };
      T.Comment && (S.comment = T.Comment), T.Sheet != null && (S.localSheetId = "" + T.Sheet), T.Hidden && (S.hidden = "1"), T.Ref && (w[w.length] = ne("definedName", Be(T.Ref), S));
    }), w[w.length] = "</definedNames>"), w.length > 2 && (w[w.length] = "</workbook>", w[1] = w[1].replace("/>", ">")), w.join("");
  })(e)), n.workbooks.push(i), it(r.rels, 1, i, $e.WB), Me(s, i = "xl/theme/theme1.xml", Ci(e.Themes, r)), n.themes.push(i), it(r.wbrels, -1, "theme/theme1.xml", $e.THEME), Me(s, i = "xl/styles." + t, c0(e, r)), n.styles.push(i), it(r.wbrels, -1, "styles." + t, $e.STY), e.vbaraw && a && (Me(s, i = "xl/vbaProject.bin", e.vbaraw), n.vba.push(i), it(r.wbrels, -1, "vbaProject.bin", $e.VBA)), Me(s, i = "xl/metadata." + t, ((f = [kt]).push(`<metadata xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main" xmlns:xlrd="http://schemas.microsoft.com/office/spreadsheetml/2017/richdata" xmlns:xda="http://schemas.microsoft.com/office/spreadsheetml/2017/dynamicarray">
  <metadataTypes count="1">
    <metadataType name="XLDAPR" minSupportedVersion="120000" copy="1" pasteAll="1" pasteValues="1" merge="1" splitFirst="1" rowColShift="1" clearFormats="1" clearComments="1" assign="1" coerce="1" cellMeta="1"/>
  </metadataTypes>
  <futureMetadata name="XLDAPR" count="1">
    <bk>
      <extLst>
        <ext uri="{bdbb8cdc-fa1e-496e-a857-3c3f30c029c3}">
          <xda:dynamicArrayProperties fDynamic="1" fCollapsed="0"/>
        </ext>
      </extLst>
    </bk>
  </futureMetadata>
  <cellMetadata count="1">
    <bk>
      <rc t="1" v="0"/>
    </bk>
  </cellMetadata>
</metadata>`), f.join(""))), n.metadata.push(i), it(r.wbrels, -1, "metadata." + t, $e.XLMETA), u.length > 1 && (Me(s, i = "xl/persons/person.xml", xl(u)), n.people.push(i), it(r.wbrels, -1, "persons/person.xml", $e.PEOPLE)), Me(s, "[Content_Types].xml", Jc(n, r)), Me(s, "_rels/.rels", Pa(r.rels)), Me(s, "xl/_rels/workbook.xml.rels", Pa(r.wbrels)), delete r.revssf, delete r.ssf, s;
}
function ri(e, r) {
  var t = "";
  switch ((r || {}).type || "base64") {
    case "buffer":
    case "array":
      return [e[0], e[1], e[2], e[3], e[4], e[5], e[6], e[7]];
    case "base64":
      t = hr(e.slice(0, 12));
      break;
    case "binary":
      t = e;
      break;
    default:
      throw new Error("Unrecognized type " + (r && r.type || "undefined"));
  }
  return [t.charCodeAt(0), t.charCodeAt(1), t.charCodeAt(2), t.charCodeAt(3), t.charCodeAt(4), t.charCodeAt(5), t.charCodeAt(6), t.charCodeAt(7)];
}
function mf(e, r) {
  var t = 0;
  e: for (; t < e.length; ) switch (e.charCodeAt(t)) {
    case 10:
    case 13:
    case 32:
      ++t;
      break;
    case 60:
      return qs(e.slice(t), r);
    default:
      break e;
  }
  return Wa.to_workbook(e, r);
}
function _u(e, r) {
  var t = e;
  return r.type == "base64" && (t = hr(t)), typeof ArrayBuffer < "u" && e instanceof ArrayBuffer && (t = new Uint8Array(e)), t = ze !== void 0 ? ze.utils.decode(1200, t.slice(2), "str") : Ve && Buffer.isBuffer(e) ? e.slice(2).toString("utf16le") : typeof Uint8Array < "u" && t instanceof Uint8Array ? typeof TextDecoder < "u" ? new TextDecoder("utf-16le").decode(t.slice(2)) : (function(a) {
    for (var n = [], s = 0; s < a.length >> 1; ++s) n[s] = String.fromCharCode(a[2 * s] + (a[2 * s + 1] << 8));
    return n.join("");
  })(t.slice(2)) : fc(t.slice(2)), r.type = "binary", mf(t, r);
}
function Us(e, r, t, a) {
  return a ? (t.type = "string", Wa.to_workbook(e, t)) : Wa.to_workbook(r, t);
}
function Ta(e, r) {
  cs();
  var t = r || {};
  if (t.codepage && ze === void 0 && console.error("Codepage tables are not loaded.  Non-ASCII characters may not give expected results"), typeof ArrayBuffer < "u" && e instanceof ArrayBuffer) return Ta(new Uint8Array(e), ((t = st(t)).type = "array", t));
  if (typeof Int8Array < "u" && e instanceof Int8Array) return Ta(new Uint8Array(e.buffer, e.byteOffset, e.length), t);
  typeof Uint8Array < "u" && e instanceof Uint8Array && !t.type && (t.type = typeof Deno < "u" ? "buffer" : "array");
  var a, n = e, s = !1;
  if (t.cellStyles && (t.cellNF = !0, t.sheetStubs = !0), Ma = {}, t.dateNF && (Ma.dateNF = t.dateNF), t.type || (t.type = Ve && Buffer.isBuffer(e) ? "buffer" : "base64"), t.type == "file" && (t.type = Ve ? "buffer" : "binary", n = (function(o) {
    if (Hr !== void 0) return Hr.readFileSync(o);
    if (typeof Deno < "u") return Deno.readFileSync(o);
    if (typeof $ < "u" && typeof File < "u" && typeof Folder < "u") try {
      var c = File(o);
      c.open("r"), c.encoding = "binary";
      var f = c.read();
      return c.close(), f;
    } catch (u) {
      if (!u.message || u.message.indexOf("onstruct") == -1) throw u;
    }
    throw new Error("Cannot access file " + o);
  })(e), typeof Uint8Array > "u" || Ve || (t.type = "array")), t.type == "string" && (s = !0, t.type = "binary", t.codepage = 65001, n = (function(o) {
    return o.match(/[^\x00-\x7F]/) ? Dr(o) : o;
  })(e)), t.type == "array" && typeof Uint8Array < "u" && e instanceof Uint8Array && typeof ArrayBuffer < "u") {
    var i = new ArrayBuffer(3), l = new Uint8Array(i);
    if (l.foo = "bar", !l.foo) return (t = st(t)).type = "array", Ta(si(n), t);
  }
  switch ((a = ri(n, t))[0]) {
    case 208:
      if (a[1] === 207 && a[2] === 17 && a[3] === 224 && a[4] === 161 && a[5] === 177 && a[6] === 26 && a[7] === 225) return (function(o, c) {
        return Ee.find(o, "EncryptedPackage") ? ku(o, c) : Qs(o, c);
      })(Ee.read(n, t), t);
      break;
    case 9:
      if (a[1] <= 8) return Qs(n, t);
      break;
    case 60:
      return qs(n, t);
    case 73:
      if (a[1] === 73 && a[2] === 42 && a[3] === 0) throw new Error("TIFF Image File is not a spreadsheet");
      if (a[1] === 68) return (function(o, c) {
        var f = c || {}, u = !!f.WTF;
        f.WTF = !0;
        try {
          var h = vl.to_workbook(o, f);
          return f.WTF = u, h;
        } catch (p) {
          if (f.WTF = u, p.message.indexOf("SYLK bad record ID") == -1 && u) throw p;
          return Wa.to_workbook(o, c);
        }
      })(n, t);
      break;
    case 84:
      if (a[1] === 65 && a[2] === 66 && a[3] === 76) return gl.to_workbook(n, t);
      break;
    case 80:
      return a[1] === 75 && a[2] < 9 && a[3] < 9 ? (function(o, c) {
        var f = o, u = c || {};
        return u.type || (u.type = Ve && Buffer.isBuffer(o) ? "buffer" : "base64"), df(xc(f, u), u);
      })(n, t) : Us(e, n, t, s);
    case 239:
      return a[3] === 60 ? qs(n, t) : Us(e, n, t, s);
    case 255:
      if (a[1] === 254) return _u(n, t);
      if (a[1] === 0 && a[2] === 2 && a[3] === 0) return ga.to_workbook(n, t);
      break;
    case 0:
      if (a[1] === 0 && (a[2] >= 2 && a[3] === 0 || a[2] === 0 && (a[3] === 8 || a[3] === 9)))
        return ga.to_workbook(n, t);
      break;
    case 3:
    case 131:
    case 139:
    case 140:
      return Ys.to_workbook(n, t);
    case 123:
      if (a[1] === 92 && a[2] === 114 && a[3] === 116) return s0(n, t);
      break;
    case 10:
    case 13:
    case 32:
      return (function(o, c) {
        var f = "", u = ri(o, c);
        switch (c.type) {
          case "base64":
            f = hr(o);
            break;
          case "binary":
            f = o;
            break;
          case "buffer":
            f = o.toString("binary");
            break;
          case "array":
            f = Ea(o);
            break;
          default:
            throw new Error("Unrecognized type " + c.type);
        }
        return u[0] == 239 && u[1] == 187 && u[2] == 191 && (f = ht(f)), c.type = "binary", mf(f, c);
      })(n, t);
    case 137:
      if (a[1] === 80 && a[2] === 78 && a[3] === 71) throw new Error("PNG Image File is not a spreadsheet");
      break;
    case 8:
      if (a[1] === 231) throw new Error("Unsupported Multiplan 1.x file!");
      break;
    case 12:
      if (a[1] === 236) throw new Error("Unsupported Multiplan 2.x file!");
      if (a[1] === 237) throw new Error("Unsupported Multiplan 3.x file!");
  }
  return H1.indexOf(a[0]) > -1 && a[2] <= 12 && a[3] <= 31 ? Ys.to_workbook(n, t) : Us(e, n, t, s);
}
function sc(e, r) {
  var t = r || {};
  return t.type = "file", Ta(e, t);
}
function vf(e, r) {
  switch (r.type) {
    case "base64":
    case "binary":
      break;
    case "buffer":
    case "array":
      r.type = "";
      break;
    case "file":
      return Sn(r.file, Ee.write(e, { type: Ve ? "buffer" : "" }));
    case "string":
      throw new Error("'string' output type invalid for '" + r.bookType + "' files");
    default:
      throw new Error("Unrecognized type " + r.type);
  }
  return Ee.write(e, r);
}
function Su(e, r) {
  switch (r.bookType) {
    case "ods":
      return of(e, r);
    case "numbers":
      return Tu(e, r);
    case "xlsb":
      return (function(t, a) {
        t && !t.SSF && (t.SSF = st(be)), t && t.SSF && (xa(), Va(t.SSF), a.revssf = xn(t.SSF), a.revssf[t.SSF[65535]] = 0, a.ssf = t.SSF), a.rels = {}, a.wbrels = {}, a.Strings = [], a.Strings.Count = 0, a.Strings.Unique = 0, on ? a.revStrings = /* @__PURE__ */ new Map() : (a.revStrings = {}, a.revStrings.foo = [], delete a.revStrings.foo);
        var n = "bin", s = { workbooks: [], sheets: [], charts: [], dialogs: [], macros: [], rels: [], strs: [], comments: [], threadedcomments: [], links: [], coreprops: [], extprops: [], custprops: [], themes: [], styles: [], calcchains: [], vba: [], drawings: [], metadata: [], people: [], TODO: [], xmlns: "" };
        Ni(a = a || {});
        var i = li(), l = "", o = 0;
        if (a.cellXfs = [], Mr(a.cellXfs, {}, { revssf: { General: 0 } }), t.Props || (t.Props = {}), Me(i, l = "docProps/core.xml", Zc(t.Props, a)), s.coreprops.push(l), it(a.rels, 2, l, $e.CORE_PROPS), l = "docProps/app.xml", !(t.Props && t.Props.SheetNames)) if (t.Workbook && t.Workbook.Sheets) {
          for (var c = [], f = 0; f < t.SheetNames.length; ++f) (t.Workbook.Sheets[f] || {}).Hidden != 2 && c.push(t.SheetNames[f]);
          t.Props.SheetNames = c;
        } else t.Props.SheetNames = t.SheetNames;
        t.Props.Worksheets = t.Props.SheetNames.length, Me(i, l, rl(t.Props)), s.extprops.push(l), it(a.rels, 3, l, $e.EXT_PROPS), t.Custprops !== t.Props && gt(t.Custprops || {}).length > 0 && (Me(i, l = "docProps/custom.xml", al(t.Custprops)), s.custprops.push(l), it(a.rels, 4, l, $e.CUST_PROPS));
        var u = ["SheetJ5"];
        for (a.tcid = 0, o = 1; o <= t.SheetNames.length; ++o) {
          var h = { "!id": {} }, p = t.Sheets[t.SheetNames[o - 1]];
          if ((p || {})["!type"], Me(i, l = "xl/worksheets/sheet" + o + "." + n, yh(o - 1, a, t, h)), s.sheets.push(l), it(a.wbrels, -1, "worksheets/sheet" + o + "." + n, $e.WS[0]), p) {
            var d = p["!comments"], g = !1, m = "";
            if (d && d.length > 0) {
              var v = !1;
              d.forEach(function(y) {
                y[1].forEach(function(w) {
                  w.T == 1 && (v = !0);
                });
              }), v && (Me(i, m = "xl/threadedComments/threadedComment" + o + ".xml", Sl(d, u, a)), s.threadedcomments.push(m), it(h, -1, "../threadedComments/threadedComment" + o + ".xml", $e.TCMNT)), Me(i, m = "xl/comments" + o + "." + n, x0(d)), s.comments.push(m), it(h, -1, "../comments" + o + "." + n, $e.CMNT), g = !0;
            }
            p["!legacy"] && g && Me(i, "xl/drawings/vmlDrawing" + o + ".vml", _l(o, p["!comments"])), delete p["!comments"], delete p["!legacy"];
          }
          h["!id"].rId1 && Me(i, vn(l), Pa(h));
        }
        return a.Strings != null && a.Strings.length > 0 && (Me(i, l = "xl/sharedStrings." + n, q1(a.Strings)), s.strs.push(l), it(a.wbrels, -1, "sharedStrings." + n, $e.SST)), Me(i, l = "xl/workbook." + n, Fh(t)), s.workbooks.push(l), it(a.rels, 1, l, $e.WB), Me(i, l = "xl/theme/theme1.xml", Ci(t.Themes, a)), s.themes.push(l), it(a.wbrels, -1, "theme/theme1.xml", $e.THEME), Me(i, l = "xl/styles." + n, g0(t, a)), s.styles.push(l), it(a.wbrels, -1, "styles." + n, $e.STY), t.vbaraw && (Me(i, l = "xl/vbaProject.bin", t.vbaraw), s.vba.push(l), it(a.wbrels, -1, "vbaProject.bin", $e.VBA)), Me(i, l = "xl/metadata." + n, k0()), s.metadata.push(l), it(a.wbrels, -1, "metadata." + n, $e.XLMETA), u.length > 1 && (Me(i, l = "xl/persons/person.xml", xl(u)), s.people.push(l), it(a.wbrels, -1, "persons/person.xml", $e.PEOPLE)), Me(i, "[Content_Types].xml", Jc(s, a)), Me(i, "_rels/.rels", Pa(a.rels)), Me(i, "xl/_rels/workbook.bin.rels", Pa(a.wbrels)), delete a.revssf, delete a.ssf, i;
      })(e, r);
    default:
      return pf(e, r);
  }
}
function gf(e, r) {
  var t = {}, a = Ve ? "nodebuffer" : typeof Uint8Array < "u" ? "array" : "string";
  if (r.compression && (t.compression = "DEFLATE"), r.password) t.type = a;
  else switch (r.type) {
    case "base64":
      t.type = "base64";
      break;
    case "binary":
      t.type = "string";
      break;
    case "string":
      throw new Error("'string' output type invalid for '" + r.bookType + "' files");
    case "buffer":
    case "file":
      t.type = a;
      break;
    default:
      throw new Error("Unrecognized type " + r.type);
  }
  var n = e.FullPaths ? Ee.write(e, { fileType: "zip", type: { nodebuffer: "buffer", string: "binary" }[t.type] || t.type, compression: !!r.compression }) : e.generate(t);
  if (typeof Deno < "u" && typeof n == "string") {
    if (r.type == "binary" || r.type == "base64") return n;
    n = new Uint8Array(_n(n));
  }
  return r.password && typeof encrypt_agile < "u" ? vf(encrypt_agile(n, r.password), r) : r.type === "file" ? Sn(r.file, n) : r.type == "string" ? ht(n) : n;
}
function Nr(e, r, t) {
  t || (t = "");
  var a = t + e;
  switch (r.type) {
    case "base64":
      return Jn(Dr(a));
    case "binary":
      return Dr(a);
    case "string":
      return e;
    case "file":
      return Sn(r.file, a, "utf8");
    case "buffer":
      return Ve ? Ur(a, "utf8") : typeof TextEncoder < "u" ? new TextEncoder().encode(a) : Nr(a, { type: "binary" }).split("").map(function(n) {
        return n.charCodeAt(0);
      });
  }
  throw new Error("Unrecognized type " + r.type);
}
function xu(e, r) {
  switch (r.type) {
    case "base64":
      return (function(t) {
        for (var a = "", n = 0, s = 0, i = 0, l = 0, o = 0, c = 0, f = 0, u = 0; u < t.length; ) (n = t.charCodeAt(u++)) > 255 && (n = 95), l = n >> 2, (s = t.charCodeAt(u++)) > 255 && (s = 95), o = (3 & n) << 4 | s >> 4, (i = t.charCodeAt(u++)) > 255 && (i = 95), c = (15 & s) << 2 | i >> 6, f = 63 & i, isNaN(s) ? c = f = 64 : isNaN(i) && (f = 64), a += er.charAt(l) + er.charAt(o) + er.charAt(c) + er.charAt(f);
        return a;
      })(e);
    case "binary":
    case "string":
      return e;
    case "file":
      return Sn(r.file, e, "binary");
    case "buffer":
      return Ve ? Ur(e, "binary") : e.split("").map(function(t) {
        return t.charCodeAt(0);
      });
  }
  throw new Error("Unrecognized type " + r.type);
}
function $n(e, r) {
  switch (r.type) {
    case "string":
    case "base64":
    case "binary":
      for (var t = "", a = 0; a < e.length; ++a) t += String.fromCharCode(e[a]);
      return r.type == "base64" ? Jn(t) : r.type == "string" ? ht(t) : t;
    case "file":
      return Sn(r.file, e);
    case "buffer":
      return e;
    default:
      throw new Error("Unrecognized type " + r.type);
  }
}
function Fi(e, r) {
  cs(), Ll(e);
  var t = st(r || {});
  if (t.cellStyles && (t.cellNF = !0, t.sheetStubs = !0), t.type == "array") {
    t.type = "binary";
    var a = Fi(e, t);
    return t.type = "array", _n(a);
  }
  return (function(n, s) {
    var i = st(s || {});
    return gf(pf(n, i), i);
  })(e, t);
}
function vs(e, r) {
  cs(), Ll(e);
  var t = st(r || {});
  if (t.cellStyles && (t.cellNF = !0, t.sheetStubs = !0), t.type == "array") {
    t.type = "binary";
    var a = vs(e, t);
    return t.type = "array", _n(a);
  }
  var n = 0;
  if (t.sheet && (n = typeof t.sheet == "number" ? t.sheet : e.SheetNames.indexOf(t.sheet), !e.SheetNames[n])) throw new Error("Sheet not found: " + t.sheet + " : " + typeof t.sheet);
  switch (t.bookType || "xlsb") {
    case "xml":
    case "xlml":
      return Nr((function(s, i) {
        i || (i = {}), s.SSF || (s.SSF = st(be)), s.SSF && (xa(), Va(s.SSF), i.revssf = xn(s.SSF), i.revssf[s.SSF[65535]] = 0, i.ssf = s.SSF, i.cellXfs = [], Mr(i.cellXfs, {}, { revssf: { General: 0 } }));
        var l = [];
        l.push(Bl(s, i)), l.push(Wl(s)), l.push(""), l.push(Vl(s));
        for (var o = 0; o < s.SheetNames.length; ++o) l.push(ne("Worksheet", Jh(o, i, s), { "ss:Name": Be(s.SheetNames[o]) }));
        return l[2] = zl(0, i), kt + ne("Workbook", l.join(""), { xmlns: Zn, "xmlns:o": dn, "xmlns:x": us, "xmlns:ss": Zn, "xmlns:dt": Lc, "xmlns:html": Mc });
      })(e, t), t);
    case "slk":
    case "sylk":
      return Nr(vl.from_sheet(e.Sheets[e.SheetNames[n]], t, e), t);
    case "htm":
    case "html":
      return Nr(rf(e.Sheets[e.SheetNames[n]], t), t);
    case "txt":
      return xu(Tf(e.Sheets[e.SheetNames[n]], t), t);
    case "csv":
      return Nr(Pi(e.Sheets[e.SheetNames[n]], t), t, "\uFEFF");
    case "dif":
      return Nr(gl.from_sheet(e.Sheets[e.SheetNames[n]], t), t);
    case "dbf":
      return $n(Ys.from_sheet(e.Sheets[e.SheetNames[n]], t), t);
    case "prn":
      return Nr(Wa.from_sheet(e.Sheets[e.SheetNames[n]], t), t);
    case "rtf":
      return Nr((function(s) {
        var i = ["{\\rtf1\\ansi"];
        if (!s["!ref"]) return i[0] + "}";
        for (var l, o = Je(s["!ref"]), c = s["!data"] != null, f = [], u = o.s.r; u <= o.e.r; ++u) {
          i.push("\\trowd\\trautofit1");
          for (var h = o.s.c; h <= o.e.c; ++h) i.push("\\cellx" + (h + 1));
          for (i.push("\\pard\\intbl"), c && (f = s["!data"][u] || []), h = o.s.c; h <= o.e.c; ++h) {
            var p = Ge({ r: u, c: h });
            (l = c ? f[h] : s[p]) && (l.v != null || l.f && !l.F) ? (i.push(" " + (l.w || (Lr(l), l.w) || "").replace(/[\r\n]/g, "\\par ")), i.push("\\cell")) : i.push(" \\cell");
          }
          i.push("\\pard\\intbl\\row");
        }
        return i.join("") + "}";
      })(e.Sheets[e.SheetNames[n]]), t);
    case "eth":
      return Nr(bl.from_sheet(e.Sheets[e.SheetNames[n]], t), t);
    case "fods":
      return Nr(of(e, t), t);
    case "wk1":
      return $n(ga.sheet_to_wk1(e.Sheets[e.SheetNames[n]], t), t);
    case "wk3":
      return $n(ga.book_to_wk3(e, t), t);
    case "biff2":
      t.biff || (t.biff = 2);
    case "biff3":
      t.biff || (t.biff = 3);
    case "biff4":
      return t.biff || (t.biff = 4), $n(ql(e, t), t);
    case "biff5":
      t.biff || (t.biff = 5);
    case "biff8":
    case "xla":
    case "xls":
      return t.biff || (t.biff = 8), (function(s, i) {
        var l = i || {};
        return vf(ru(s, l), l);
      })(e, t);
    case "xlsx":
    case "xlsm":
    case "xlam":
    case "xlsb":
    case "numbers":
    case "ods":
      return (function(s, i) {
        var l = st(i || {});
        return gf(Su(s, l), l);
      })(e, t);
    default:
      throw new Error("Unrecognized bookType |" + t.bookType + "|");
  }
}
function Di(e) {
  if (!e.bookType) {
    var r = e.file.slice(e.file.lastIndexOf(".")).toLowerCase();
    r.match(/^\.[a-z]+$/) && (e.bookType = r.slice(1)), e.bookType = { xls: "biff8", htm: "html", slk: "sylk", socialcalc: "eth", Sh33tJS: "WTF" }[e.bookType] || e.bookType;
  }
}
function ic(e, r, t) {
  var a = t || {};
  return a.type = "file", a.file = r, Di(a), vs(e, a);
}
function Au(e, r, t) {
  var a = t || {};
  return a.type = "file", a.file = r, Di(a), Fi(e, a);
}
function Cu(e, r, t, a) {
  var n = t || {};
  n.type = "file", n.file = e, Di(n), n.type = "buffer";
  var s = a;
  return s instanceof Function || (s = t), Hr.writeFile(e, vs(r, n), s);
}
function bf(e, r, t, a, n, s, i) {
  var l = Xe(t), o = i.defval, c = i.raw || !Object.prototype.hasOwnProperty.call(i, "raw"), f = !0, u = e["!data"] != null, h = n === 1 ? [] : {};
  if (n !== 1) if (Object.defineProperty) try {
    Object.defineProperty(h, "__rowNum__", { value: t, enumerable: !1 });
  } catch {
    h.__rowNum__ = t;
  }
  else h.__rowNum__ = t;
  if (!u || e["!data"][t]) for (var p = r.s.c; p <= r.e.c; ++p) {
    var d = u ? (e["!data"][t] || [])[p] : e[a[p] + l];
    if (d != null && d.t !== void 0) {
      var g = d.v;
      switch (d.t) {
        case "z":
          if (g == null) break;
          continue;
        case "e":
          g = g == 0 ? null : void 0;
          break;
        case "s":
        case "b":
        case "n":
          if (!d.z || !ur(d.z) || typeof (g = Xr(g)) == "number") break;
        case "d":
          i && (i.UTC || i.raw === !1) || (g = ka(new Date(g)));
          break;
        default:
          throw new Error("unrecognized type " + d.t);
      }
      if (s[p] != null) {
        if (g == null) if (d.t == "e" && g === null) h[s[p]] = null;
        else if (o !== void 0) h[s[p]] = o;
        else {
          if (!c || g !== null) continue;
          h[s[p]] = null;
        }
        else h[s[p]] = (d.t === "n" && typeof i.rawNumbers == "boolean" ? i.rawNumbers : c) ? g : Lr(d, g, i);
        g != null && (f = !1);
      }
    } else {
      if (o === void 0) continue;
      s[p] != null && (h[s[p]] = o);
    }
  }
  return { row: h, isempty: f };
}
function ai(e, r) {
  if (e == null || e["!ref"] == null) return [];
  var t = { t: "n", v: 0 }, a = 0, n = 1, s = [], i = 0, l = "", o = { s: { r: 0, c: 0 }, e: { r: 0, c: 0 } }, c = r || {}, f = c.range != null ? c.range : e["!ref"];
  switch (c.header === 1 ? a = 1 : c.header === "A" ? a = 2 : Array.isArray(c.header) ? a = 3 : c.header == null && (a = 0), typeof f) {
    case "string":
      o = Je(f);
      break;
    case "number":
      (o = Je(e["!ref"])).s.r = f;
      break;
    default:
      o = f;
  }
  a > 0 && (n = 0);
  var u = Xe(o.s.r), h = [], p = [], d = 0, g = 0, m = e["!data"] != null, v = o.s.r, y = 0, w = {};
  m && !e["!data"][v] && (e["!data"][v] = []);
  var E = c.skipHidden && e["!cols"] || [], A = c.skipHidden && e["!rows"] || [];
  for (y = o.s.c; y <= o.e.c; ++y) if (!(E[y] || {}).hidden) switch (h[y] = De(y), t = m ? e["!data"][v][y] : e[h[y] + u], a) {
    case 1:
      s[y] = y - o.s.c;
      break;
    case 2:
      s[y] = h[y];
      break;
    case 3:
      s[y] = c.header[y - o.s.c];
      break;
    default:
      if (t == null && (t = { w: "__EMPTY", t: "s" }), l = i = Lr(t, null, c), g = w[i] || 0) {
        do
          l = i + "_" + g++;
        while (w[l]);
        w[i] = g, w[l] = 1;
      } else w[i] = 1;
      s[y] = l;
  }
  for (v = o.s.r + n; v <= o.e.r; ++v) if (!(A[v] || {}).hidden) {
    var b = bf(e, o, v, h, a, s, c);
    (b.isempty === !1 || (a === 1 ? c.blankrows !== !1 : c.blankrows)) && (p[d++] = b.row);
  }
  return p.length = d, p;
}
var oc = /"/g;
function wf(e, r, t, a, n, s, i, l, o) {
  for (var c = !0, f = [], u = "", h = Xe(t), p = e["!data"] != null, d = p && e["!data"][t] || [], g = r.s.c; g <= r.e.c; ++g) if (a[g]) {
    var m = p ? d[g] : e[a[g] + h];
    if (m == null) u = "";
    else if (m.v != null) {
      c = !1, u = "" + (o.rawNumbers && m.t == "n" ? m.v : Lr(m, null, o));
      for (var v = 0, y = 0; v !== u.length; ++v) if ((y = u.charCodeAt(v)) === n || y === s || y === 34 || o.forceQuotes) {
        u = '"' + u.replace(oc, '""') + '"';
        break;
      }
      u == "ID" && l == 0 && f.length == 0 && (u = '"ID"');
    } else m.f == null || m.F ? u = "" : (c = !1, (u = "=" + m.f).indexOf(",") >= 0 && (u = '"' + u.replace(oc, '""') + '"'));
    f.push(u);
  }
  if (o.strip) for (; f[f.length - 1] === ""; ) --f.length;
  return o.blankrows === !1 && c ? null : f.join(i);
}
function Pi(e, r) {
  var t = [], a = r ?? {};
  if (e == null || e["!ref"] == null) return "";
  for (var n = Je(e["!ref"]), s = a.FS !== void 0 ? a.FS : ",", i = s.charCodeAt(0), l = a.RS !== void 0 ? a.RS : `
`, o = l.charCodeAt(0), c = "", f = [], u = a.skipHidden && e["!cols"] || [], h = a.skipHidden && e["!rows"] || [], p = n.s.c; p <= n.e.c; ++p) (u[p] || {}).hidden || (f[p] = De(p));
  for (var d = 0, g = n.s.r; g <= n.e.r; ++g) (h[g] || {}).hidden || (c = wf(e, n, g, f, i, o, s, d, a)) != null && (c || a.blankrows !== !1) && t.push((d++ ? l : "") + c);
  return t.join("");
}
function Tf(e, r) {
  r || (r = {}), r.FS = "	", r.RS = `
`;
  var t = Pi(e, r);
  if (ze === void 0 || r.type == "string") return t;
  var a = ze.utils.encode(1200, t, "str");
  return "ÿþ" + a;
}
function cc(e, r, t) {
  var a = t || {}, n = e ? e["!data"] != null : a.dense, s = +!a.skipHeader, i = e || {};
  !e && n && (i["!data"] = []);
  var l = 0, o = 0;
  if (i && a.origin != null) if (typeof a.origin == "number") l = a.origin;
  else {
    var c = typeof a.origin == "string" ? ft(a.origin) : a.origin;
    l = c.r, o = c.c;
  }
  var f = { s: { c: 0, r: 0 }, e: { c: o, r: l + r.length - 1 + s } };
  if (i["!ref"]) {
    var u = Je(i["!ref"]);
    f.e.c = Math.max(f.e.c, u.e.c), f.e.r = Math.max(f.e.r, u.e.r), l == -1 && (l = u.e.r + 1, f.e.r = l + r.length - 1 + s);
  } else l == -1 && (l = 0, f.e.r = r.length - 1 + s);
  var h = a.header || [], p = 0, d = [];
  r.forEach(function(m, v) {
    n && !i["!data"][l + v + s] && (i["!data"][l + v + s] = []), n && (d = i["!data"][l + v + s]), gt(m).forEach(function(y) {
      (p = h.indexOf(y)) == -1 && (h[p = h.length] = y);
      var w = m[y], E = "z", A = "", b = n ? "" : De(o + p) + Xe(l + v + s), _ = n ? d[o + p] : i[b];
      !w || typeof w != "object" || w instanceof Date ? (typeof w == "number" ? E = "n" : typeof w == "boolean" ? E = "b" : typeof w == "string" ? E = "s" : w instanceof Date ? (E = "d", a.UTC || (w = fs(w)), a.cellDates || (E = "n", w = yt(w)), A = _ != null && _.z && ur(_.z) ? _.z : a.dateNF || be[14]) : w === null && a.nullError && (E = "e", w = 0), _ ? (_.t = E, _.v = w, delete _.w, delete _.R, A && (_.z = A)) : n ? d[o + p] = _ = { t: E, v: w } : i[b] = _ = { t: E, v: w }, A && (_.z = A)) : n ? d[o + p] = w : i[b] = w;
    });
  }), f.e.c = Math.max(f.e.c, o + h.length - 1);
  var g = Xe(l);
  if (n && !i["!data"][l] && (i["!data"][l] = []), s) for (p = 0; p < h.length; ++p) n ? i["!data"][l][p + o] = { t: "s", v: h[p] } : i[De(p + o) + g] = { t: "s", v: h[p] };
  return i["!ref"] = We(f), i;
}
function is(e, r, t) {
  if (typeof r == "string") {
    if (e["!data"] != null) {
      var a = ft(r);
      return e["!data"][a.r] || (e["!data"][a.r] = []), e["!data"][a.r][a.c] || (e["!data"][a.r][a.c] = { t: "z" });
    }
    return e[r] || (e[r] = { t: "z" });
  }
  return is(e, typeof r != "number" ? Ge(r) : De(t || 0) + Xe(r));
}
function Li(e, r) {
  var t = { SheetNames: [], Sheets: {} };
  return e && Nn(t, e, r || "Sheet1"), t;
}
function Nn(e, r, t, a) {
  var n = 1;
  if (!t) for (; n <= 65535 && e.SheetNames.indexOf(t = "Sheet" + n) != -1; ++n, t = void 0) ;
  if (!t || e.SheetNames.length >= 65535) throw new Error("Too many worksheets");
  if (a && e.SheetNames.indexOf(t) >= 0 && t.length < 32) {
    var s = t.match(/\d+$/);
    n = s && +s[0] || 0;
    var i = s && t.slice(0, s.index) || t;
    for (++n; n <= 65535 && e.SheetNames.indexOf(t = i + n) != -1; ++n) ;
  }
  if (Pl(t), e.SheetNames.indexOf(t) >= 0) throw new Error("Worksheet with name |" + t + "| already exists!");
  return e.SheetNames.push(t), e.Sheets[t] = r, t;
}
function lc(e, r, t) {
  return r ? (e.l = { Target: r }, t && (e.l.Tooltip = t)) : delete e.l, e;
}
var Ya, Iu = { encode_col: De, encode_row: Xe, encode_cell: Ge, encode_range: We, decode_col: Ti, decode_row: wi, split_cell: function(e) {
  return e.replace(/(\$?[A-Z]*)(\$?\d*)/, "$1,$2").split(",");
}, decode_cell: ft, decode_range: Ot, format_cell: Lr, sheet_new: function(e) {
  var r = {};
  return (e || {}).dense && (r["!data"] = []), r;
}, sheet_add_aoa: jc, sheet_add_json: cc, sheet_add_dom: af, aoa_to_sheet: Ga, json_to_sheet: function(e, r) {
  return cc(null, e, r);
}, table_to_sheet: Qo, table_to_book: function(e, r) {
  return aa(Qo(e, r), r);
}, sheet_to_csv: Pi, sheet_to_txt: Tf, sheet_to_json: ai, sheet_to_html: rf, sheet_to_formulae: function(e, r) {
  var t, a = "", n = "";
  if (e == null || e["!ref"] == null) return [];
  var s, i = Je(e["!ref"]), l = "", o = [], c = [], f = e["!data"] != null;
  for (s = i.s.c; s <= i.e.c; ++s) o[s] = De(s);
  for (var u = i.s.r; u <= i.e.r; ++u) for (l = Xe(u), s = i.s.c; s <= i.e.c; ++s) if (a = o[s] + l, n = "", (t = f ? (e["!data"][u] || [])[s] : e[a]) !== void 0) {
    if (t.F != null) {
      if (a = t.F, !t.f) continue;
      n = t.f, a.indexOf(":") == -1 && (a = a + ":" + a);
    }
    if (t.f != null) n = t.f;
    else {
      if (r && r.values === !1 || t.t == "z") continue;
      if (t.t == "n" && t.v != null) n = "" + t.v;
      else if (t.t == "b") n = t.v ? "TRUE" : "FALSE";
      else if (t.w !== void 0) n = "'" + t.w;
      else {
        if (t.v === void 0) continue;
        n = t.t == "s" ? "'" + t.v : "" + t.v;
      }
    }
    c[c.length] = a + "=" + n;
  }
  return c;
}, sheet_to_row_object_array: ai, sheet_get_cell: is, book_new: Li, book_append_sheet: Nn, book_set_sheet_visibility: function(e, r, t) {
  e.Workbook || (e.Workbook = {}), e.Workbook.Sheets || (e.Workbook.Sheets = []);
  var a = (function(n, s) {
    if (typeof s == "number") {
      if (s >= 0 && n.SheetNames.length > s) return s;
      throw new Error("Cannot find sheet # " + s);
    }
    if (typeof s == "string") {
      var i = n.SheetNames.indexOf(s);
      if (i > -1) return i;
      throw new Error("Cannot find sheet name |" + s + "|");
    }
    throw new Error("Cannot find sheet |" + s + "|");
  })(e, r);
  switch (e.Workbook.Sheets[a] || (e.Workbook.Sheets[a] = {}), t) {
    case 0:
    case 1:
    case 2:
      break;
    default:
      throw new Error("Bad sheet visibility setting " + t);
  }
  e.Workbook.Sheets[a].Hidden = t;
}, cell_set_number_format: function(e, r) {
  return e.z = r, e;
}, cell_set_hyperlink: lc, cell_set_internal_link: function(e, r, t) {
  return lc(e, "#" + r, t);
}, cell_add_comment: function(e, r, t) {
  e.c || (e.c = []), e.c.push({ t: r, a: t || "SheetJS" });
}, sheet_set_array_formula: function(e, r, t, a) {
  for (var n = typeof r != "string" ? r : Je(r), s = typeof r == "string" ? r : We(r), i = n.s.r; i <= n.e.r; ++i) for (var l = n.s.c; l <= n.e.c; ++l) {
    var o = is(e, i, l);
    o.t = "n", o.F = s, delete o.v, i == n.s.r && l == n.s.c && (o.f = t, a && (o.D = !0));
  }
  var c = Ot(e["!ref"]);
  return c.s.r > n.s.r && (c.s.r = n.s.r), c.s.c > n.s.c && (c.s.c = n.s.c), c.e.r < n.e.r && (c.e.r = n.e.r), c.e.c < n.e.c && (c.e.c = n.e.c), e["!ref"] = We(c), e;
}, consts: { SHEET_VISIBLE: 0, SHEET_HIDDEN: 1, SHEET_VERY_HIDDEN: 2 } }, Ru = { to_json: function(e, r) {
  var t = Ya({ objectMode: !0 });
  if (e == null || e["!ref"] == null) return t.push(null), t;
  var a = { t: "n", v: 0 }, n = 0, s = 1, i = [], l = 0, o = "", c = { s: { r: 0, c: 0 }, e: { r: 0, c: 0 } }, f = r || {}, u = f.range != null ? f.range : e["!ref"];
  switch (f.header === 1 ? n = 1 : f.header === "A" ? n = 2 : Array.isArray(f.header) && (n = 3), typeof u) {
    case "string":
      c = Je(u);
      break;
    case "number":
      (c = Je(e["!ref"])).s.r = u;
      break;
    default:
      c = u;
  }
  n > 0 && (s = 0);
  var h = Xe(c.s.r), p = [], d = 0, g = e["!data"] != null, m = c.s.r, v = 0, y = {};
  g && !e["!data"][m] && (e["!data"][m] = []);
  var w = f.skipHidden && e["!cols"] || [], E = f.skipHidden && e["!rows"] || [];
  for (v = c.s.c; v <= c.e.c; ++v) if (!(w[v] || {}).hidden) switch (p[v] = De(v), a = g ? e["!data"][m][v] : e[p[v] + h], n) {
    case 1:
      i[v] = v - c.s.c;
      break;
    case 2:
      i[v] = p[v];
      break;
    case 3:
      i[v] = f.header[v - c.s.c];
      break;
    default:
      if (a == null && (a = { w: "__EMPTY", t: "s" }), o = l = Lr(a, null, f), d = y[l] || 0) {
        do
          o = l + "_" + d++;
        while (y[o]);
        y[l] = d, y[o] = 1;
      } else y[l] = 1;
      i[v] = o;
  }
  return m = c.s.r + s, t._read = function() {
    for (; m <= c.e.r; ) if (!(E[m - 1] || {}).hidden) {
      var A = bf(e, c, m, p, n, i, f);
      if (++m, A.isempty === !1 || (n === 1 ? f.blankrows !== !1 : f.blankrows)) return void t.push(A.row);
    }
    return t.push(null);
  }, t;
}, to_html: function(e, r) {
  var t = Ya(), a = r || {}, n = a.header != null ? a.header : Zl, s = a.footer != null ? a.footer : ef;
  t.push(n);
  var i = Ot(e["!ref"]);
  t.push(tf(0, 0, a));
  var l = i.s.r, o = !1;
  return t._read = function() {
    if (l > i.e.r) return o || (o = !0, t.push("</table>" + s)), t.push(null);
    for (; l <= i.e.r; ) {
      t.push(Ql(e, i, l, a)), ++l;
      break;
    }
  }, t;
}, to_csv: function(e, r) {
  var t = Ya(), a = r ?? {};
  if (e == null || e["!ref"] == null) return t.push(null), t;
  for (var n = Je(e["!ref"]), s = a.FS !== void 0 ? a.FS : ",", i = s.charCodeAt(0), l = a.RS !== void 0 ? a.RS : `
`, o = l.charCodeAt(0), c = "", f = [], u = a.skipHidden && e["!cols"] || [], h = a.skipHidden && e["!rows"] || [], p = n.s.c; p <= n.e.c; ++p) (u[p] || {}).hidden || (f[p] = De(p));
  var d = n.s.r, g = !1, m = 0;
  return t._read = function() {
    if (!g) return g = !0, t.push("\uFEFF");
    for (; d <= n.e.r; ) if (++d, !(h[d - 1] || {}).hidden && (c = wf(e, n, d - 1, f, i, o, s, m, a)) != null && (c || a.blankrows !== !1)) return t.push((m++ ? l : "") + c);
    return t.push(null);
  }, t;
}, to_xlml: function(e, r) {
  var t = Ya(), a = r ?? {}, n = +a.stride || 10;
  e.SSF || (e.SSF = st(be)), e.SSF && (xa(), Va(e.SSF), a.revssf = xn(e.SSF), a.revssf[e.SSF[65535]] = 0, a.ssf = e.SSF, a.cellXfs = [], Mr(a.cellXfs, {}, { revssf: { General: 0 } })), e.SheetNames.forEach(function(v) {
    var y = e.Sheets[v];
    if (y && y["!ref"]) {
      for (var w = Ot(y["!ref"]), E = y["!data"] != null, A = E ? y["!data"] : [], b = w.s.r; b <= w.e.r; ++b) if (!E || A[b]) for (var _ = w.s.c; _ <= w.e.c; ++_) {
        var k = E ? A[b][_] : y[De(_) + Xe(b)];
        k && (k.t == "d" && k.z == null && ((k = st(k)).z = be[14]), Mr(a.cellXfs, k, a));
      }
    }
  });
  var s = zl(0, a), i = 0, l = 0, o = e.Sheets[e.SheetNames[l]], c = Je(o), f = -1, u = !1, h = [], p = 0, d = !1, g = [], m = { r: 0, c: 0 };
  return t._read = function() {
    switch (i) {
      case 0:
        i = 1, t.push(kt), t.push("<Workbook" + _a({ xmlns: Zn, "xmlns:o": dn, "xmlns:x": us, "xmlns:ss": Zn, "xmlns:dt": Lc, "xmlns:html": Mc }) + ">");
        break;
      case 1:
        i = 2, t.push(Bl(e, a)), t.push(Wl(e));
        break;
      case 2:
        i = 3, t.push(s), t.push(Vl(e));
        break;
      case 3:
        if (u = !1, l >= e.SheetNames.length) {
          i = -1, t.push("");
          break;
        }
        if (t.push("<Worksheet" + _a({ "ss:Name": Be(e.SheetNames[l]) }) + ">"), !(o = e.Sheets[e.SheetNames[l]])) return t.push("</Worksheet>"), void ++l;
        var v = $l(o, 0, l, e);
        if (v.length && t.push("<Names>" + v + "</Names>"), !o["!ref"]) return i = 5;
        c = Je(o["!ref"]), f = c.s.r, i = 4;
        break;
      case 4:
        if (f < 0 || f > c.e.r) return u && t.push("</Table>"), void (i = 5);
        f <= c.s.r && (o["!cols"] && o["!cols"].forEach(function(k, T) {
          jr(k);
          var S = !!k.width, C = On(T, k), F = { "ss:Index": T + 1 };
          S && (F["ss:Width"] = za(C.width)), k.hidden && (F["ss:Hidden"] = "1"), u || (u = !0, t.push("<Table>")), t.push(ne("Column", null, F));
        }), (d = o["!data"] != null) && (g = o["!data"]), m.r = m.c = 0);
        for (var y = 0; f <= c.e.r && y < n; ++f, ++y) {
          var w = [jl(f, (o["!rows"] || [])[f])];
          if (m.r = f, !d || g[f]) for (var E = c.s.c; E <= c.e.c; ++E) {
            m.c = E;
            var A = !1;
            for (p = 0; p != h.length; ++p) if (!(h[p].s.c > E || h[p].s.r > f || h[p].e.c < E || h[p].e.r < f)) {
              h[p].s.c == E && h[p].s.r == f || (A = !0);
              break;
            }
            if (!A) {
              var b = De(E) + Xe(f), _ = d ? g[f][E] : o[b];
              w.push(Xl(_, b, o, a, 0, 0, m));
            }
          }
          w.push("</Row>"), u || (u = !0, t.push("<Table>")), t.push(w.join(""));
        }
        break;
      case 5:
        return t.push(Gl(o, 0, l, e)), o && o["!autofilter"] && t.push('<AutoFilter x:Range="' + Cn(Ua(o["!autofilter"].ref), { r: 0, c: 0 }) + '" xmlns="urn:schemas-microsoft-com:office:excel"></AutoFilter>'), t.push("</Worksheet>"), l++, f = -1, void (i = 3);
      case -1:
        i = -2, t.push("</Workbook>");
        break;
      case -2:
        t.push(null);
    }
  }, t;
}, set_readable: function(e) {
  Ya = e;
} };
const Ou = Kn.version, Nu = { parse_xlscfb: Qs, parse_zip: df, read: Ta, readFile: sc, readFileSync: sc, write: vs, writeFile: ic, writeFileSync: ic, writeFileAsync: Cu, writeXLSX: Fi, writeFileXLSX: Au, utils: Iu, set_fs: Cf, set_cptable: Ef, stream: Ru, SSF: Tc, CFB: Ee };
export {
  Ee as CFB,
  Tc as SSF,
  Nu as default,
  Qs as parse_xlscfb,
  df as parse_zip,
  Ta as read,
  sc as readFile,
  sc as readFileSync,
  Ef as set_cptable,
  Cf as set_fs,
  Ru as stream,
  Iu as utils,
  Ou as version,
  vs as write,
  ic as writeFile,
  Cu as writeFileAsync,
  ic as writeFileSync,
  Au as writeFileXLSX,
  Fi as writeXLSX
};