UNPKG

@sheetxl/studio-vanilla

Version:

SheetXL Studio - Vanilla entry point for integrating SheetXL UI.

906 lines 230 kB
import { a1 as b, a2 as R, a3 as Ft, a4 as W, E as $, t as vn, a5 as Wt } from "./Bf37sZn7h1jSr98w.mjs"; /** * @license @sheetxl/studio-vanilla - SheetXL Studio - Vanilla entry point for integrating SheetXL UI. - v0.7.27 * * (C) 2025-present SheetXL Inc. & Michael T. Ford * License: The license can be found at https://www.sheetxl.com/license. */ const jt = Object.freeze(Object.defineProperty({ __proto__: null, CUBEKPIMEMBER: function(n, t, e, a) { }, CUBEMEMBER: function(n, t, e) { }, CUBEMEMBERPROPERTY: function(n, t, e) { }, CUBERANKEDMEMBER: function(n, t, e, a) { }, CUBESET: function(n, t, e, a, r) { }, CUBESETCOUNT: function(n) { }, CUBEVALUE: function(n, ...t) { } }, Symbol.toStringTag, { value: "Module" })), Kt = Object.freeze(Object.defineProperty({ __proto__: null, DAVERAGE: function(n, t, e) { }, DCOUNT: function(n, t, e) { }, DCOUNTA: function(n, t, e) { }, DGET: function(n, t, e) { }, DMAX: function(n, t, e) { }, DMIN: function(n, t, e) { }, DPRODUCT: function(n, t, e) { }, DSTDEV: function(n, t, e) { }, DSTDEVP: function(n, t, e) { }, DSUM: function(n, t, e) { }, DVAR: function(n, t, e) { }, DVARP: function(n, t, e) { } }, Symbol.toStringTag, { value: "Module" })), L = { NUMBER: 0, ARRAY: 1, BOOLEAN: 2, STRING: 3, RANGE_REF: 4, CELL_REF: 5, NUMBER_NO_BOOLEAN: 10 }, sn = new class { constructor() { this.Types = L, this.type2Number = { number: L.NUMBER, boolean: L.BOOLEAN, string: L.STRING, object: -1 }; } flattenDeep(n) { return Array.isArray(n) || (console.log("flattenDeep invalid arg", n), n = [n]), n.reduce((t, e) => Array.isArray(e) ? t.concat(this.flattenDeep(e)) : t.concat(e), []); } acceptNumber(n, t = !0, e = !0) { if (n instanceof b.Known) return n; let a; if (typeof n == "number") a = n; else if (typeof n == "boolean") { if (!e) throw b.BuiltIn.Value; a = Number(n); } else if (typeof n == "string") { if (n.length === 0) throw b.BuiltIn.Value; if (a = Number(n), a != a) throw b.BuiltIn.Value; } else if (n?.isIRange) { const r = n; if (t) a = this.acceptNumber(r.getValueAt(0, 0) ?? 0); else { if (r.size !== 1) throw b.BuiltIn.Value; a = this.acceptNumber(r.getValueAt(0, 0) ?? 0); } } else { if (!Array.isArray(n)) throw new b.Value("Unknown type in FormulaHelpers.acceptNumber"); if (t) a = this.acceptNumber(n[0][0]); else { if (n[0].length !== 1) throw b.BuiltIn.Value; a = this.acceptNumber(n[0][0]); } } return a; } flattenParams(n, t, e, a, r = null, o = 1) { if (n.length < o) throw new b.NA(`Argument type ${t} is missing.`); r == null && (r = t === L.NUMBER ? 0 : t == null ? null : ""), n.forEach((u) => { const { isCellRef: i, isRangeRef: l, isArray: s } = u; let f = u.value; const m = !(i || l || s), g = { isLiteral: m, isCellRef: i, isRangeRef: l, isArray: s, isUnion: !1 }; f?.isIRange && (f = f.getValues(), i && (f = f[0][0])), m ? (u = u.omitted ? r : this.accept(u, t, r), a(u, g)) : i ? a(f, g) : (l || s) && (u = this.flattenDeep(f)).forEach((p) => { a(p, g); }); }); } accept(n, t = null, e = void 0, a = !0, r = !1) { let o = !1; if (n && (n.isIRange || n.value?.isIRange)) { const i = n.value ?? n; i.size === 1 || t !== L.ARRAY ? n = i.getValueAt(0, 0) : (n = i.getValueAt(), o = !0); } else n?.value && (o = n.isArray, n = n.value); if (Array.isArray(t) && (t = t[0]), n == null) { if (e === void 0) throw new b.NA(`Argument type ${t} is missing.`); return e; } if (t == null) return n; if (n instanceof b.Known) throw n; if (t === L.ARRAY) { if (Array.isArray(n)) return a ? this.flattenDeep(n) : n; if (Array.isArray(n.value)) for (let i = 0; i < n.value.length; i++) n.value[i] === null && (n.value[i] = e); else { if (r) return a ? [n] : [[n]]; if (n.value === null) return a ? [e] : [[e]]; } throw b.BuiltIn.Value; } o && (n = n[0][0]); const u = this.type(n); if (t === L.STRING) n = u === L.BOOLEAN ? n ? "TRUE" : "FALSE" : `${n}`; else if (t === L.BOOLEAN) { if (u === L.STRING) throw b.BuiltIn.Value; u === L.NUMBER && (n = !!n); } else if (t === L.NUMBER) n = this.acceptNumber(n, !1); else { if (t !== L.NUMBER_NO_BOOLEAN) throw b.BuiltIn.Value; n = this.acceptNumber(n, !1, !1); } return n; } type(n) { if (n.isIRange) return L.RANGE_REF; let t = this.type2Number[typeof n]; return t === -1 && (Array.isArray(n) ? t = L.ARRAY : n.ref && (t = n.ref.from ? L.RANGE_REF : L.CELL_REF)), t; } }(), Rn = 864e5, Hn = new Date(Date.UTC(1900, 0, 1)), $t = [void 0, 0, 1, void 0, void 0, void 0, void 0, void 0, void 0, void 0, void 0, void 0, 1, 2, 3, 4, 5, 6, 0], Qt = [void 0, [1, 2, 3, 4, 5, 6, 7], [7, 1, 2, 3, 4, 5, 6], [6, 0, 1, 2, 3, 4, 5], void 0, void 0, void 0, void 0, void 0, void 0, void 0, [7, 1, 2, 3, 4, 5, 6], [6, 7, 1, 2, 3, 4, 5], [5, 6, 7, 1, 2, 3, 4], [4, 5, 6, 7, 1, 2, 3], [3, 4, 5, 6, 7, 1, 2], [2, 3, 4, 5, 6, 7, 1], [1, 2, 3, 4, 5, 6, 7]], Ht = [void 0, [6, 0], [0, 1], [1, 2], [2, 3], [3, 4], [4, 5], [5, 6], void 0, void 0, void 0, [0], [1], [2], [3], [4], [5], [6]], Zt = /^\s*(\d\d?)\s*(:\s*\d\d?)?\s*(:\s*\d\d?)?\s*(pm|am)?\s*$/i, Jt = /^\s*((\d\d?)\s*([-/])\s*(\d\d?))([\d:.apm\s]*)$/i, ne = /^\s*((\d\d?)\s*([-/])\s*(jan\w*|feb\w*|mar\w*|apr\w*|may\w*|jun\w*|jul\w*|aug\w*|sep\w*|oct\w*|nov\w*|dec\w*))([\d:.apm\s]*)$/i, te = /^\s*((jan\w*|feb\w*|mar\w*|apr\w*|may\w*|jun\w*|jul\w*|aug\w*|sep\w*|oct\w*|nov\w*|dec\w*)\s*([-/])\s*(\d\d?))([\d:.apm\s]*)$/i; function bn(n) { let t = n.getTime?.() ?? n; const e = t > -22038912e5 ? 2 : 1; return Math.floor((t - Hn.getTime()) / 864e5) + e; } function H(n) { return (function(t) { if (t instanceof Date) return { date: t }; let e, a = !0; return isNaN(t) ? (e = (function(r) { const o = r.match(Zt); if (!o) return; const u = o[2] ? o[2] : ":00", i = o[3] ? o[3] : ":00", l = o[4] ? " " + o[4] : "", s = new Date(Date.parse(`1/1/1900 ${o[1] + u + i + l} UTC`)); let f = /* @__PURE__ */ new Date(); return f = new Date(Date.UTC(f.getFullYear(), f.getMonth(), f.getDate(), f.getHours(), f.getMinutes(), f.getSeconds(), f.getMilliseconds())), new Date(Date.UTC(f.getUTCFullYear(), f.getUTCMonth(), f.getUTCDate(), s.getUTCHours(), s.getUTCMinutes(), s.getUTCSeconds(), s.getUTCMilliseconds())); })(t), e ? a = !1 : e = (function(r) { const o = r.match(Jt), u = r.match(ne), i = r.match(te); return o ? r = o[1] + o[3] + (/* @__PURE__ */ new Date()).getFullYear() + o[5] : u ? r = u[1] + u[3] + (/* @__PURE__ */ new Date()).getFullYear() + u[5] : i && (r = i[1] + i[3] + (/* @__PURE__ */ new Date()).getFullYear() + i[5]), new Date(Date.parse(`${r} UTC`)); })(t)) : e = (function(r) { if (r < 0) throw b.BuiltIn.Value; return r <= 60 ? new Date(Hn.getTime() + 864e5 * (r - 1)) : new Date(Hn.getTime() + 864e5 * (r - 2)); })(t = Number(t)), { date: e, isDateGiven: a }; })(n).date; } function Gn(n, t) { return n.getUTCFullYear() === t.getUTCFullYear() && n.getUTCMonth() === t.getUTCMonth() && n.getUTCDate() === t.getUTCDate(); } function rn(n, t, e) { const a = R.fromOADate(n), r = R.fromOADate(t); if (e = e.toLowerCase(), n > t) return Number.NaN; const o = r.getUTCFullYear() - a.getUTCFullYear(), u = r.getUTCMonth() - a.getUTCMonth(), i = r.getUTCDate() - a.getUTCDate(); let l; switch (e) { case "y": return l = u < 0 || u === 0 && i < 0 ? -1 : 0, l + o; case "m": return l = i < 0 ? -1 : 0, 12 * o + u + l; case "d": return Math.floor(r.getTime() - a.getTime()) / Rn; case "md": return a.setUTCFullYear(r.getUTCFullYear()), i < 0 ? a.setUTCMonth(r.getUTCMonth() - 1) : a.setUTCMonth(r.getUTCMonth()), Math.floor(r.getTime() - a.getTime()) / Rn; case "ym": return l = i < 0 ? -1 : 0, (l + 12 * o + u) % 12; case "yd": return u < 0 || u === 0 && i < 0 ? a.setUTCFullYear(r.getUTCFullYear() - 1) : a.setUTCFullYear(r.getUTCFullYear()), Math.floor(r.getTime() - a.getTime()) / Rn; } } function un(n, t) { return Math.trunc(n) - Math.trunc(t); } function an(n, t, e = !1) { const a = R.fromOADate(n), r = R.fromOADate(t); a.getUTCDate() === 31 && a.setUTCDate(30), !e && a.getUTCDate() < 30 && r.getUTCDate() > 30 ? r.setUTCMonth(r.getUTCMonth() + 1, 1) : r.getUTCDate() === 31 && r.setUTCDate(30); const o = r.getUTCFullYear() - a.getUTCFullYear(); return 30 * (r.getUTCMonth() - a.getUTCMonth()) + (r.getUTCDate() - a.getUTCDate()) + 12 * o * 30; } function zn(n) { const t = H(n), e = new Date(Date.UTC(t.getFullYear(), t.getMonth(), t.getDate())), a = e.getUTCDay(); e.setUTCDate(e.getUTCDate() + 4 - a); const r = new Date(Date.UTC(e.getUTCFullYear(), 0, 1)); return Math.ceil(((e.getTime() - r.getTime()) / 864e5 + 1) / 7); } function Wn(n, t, e = 1, a = null) { if (n = H(n), e === "1111111") throw b.BuiltIn.Value; if (typeof e == "string" && Number(e).toString() !== e) { if (e.length !== 7) throw b.BuiltIn.Value; e = e.charAt(6) + e.slice(0, 6); const u = []; for (let i = 0; i < e.length; i++) e.charAt(i) === "1" && u.push(i); e = u; } else { if (typeof e != "number") throw b.BuiltIn.Value; if ((e = Ht[e]) == null) throw b.BuiltIn.Num; } const r = []; a != null && sn.flattenParams([a], L.NUMBER, !1, (u) => { r.push(H(u)); }), n.setUTCDate(n.getUTCDate() + 1); let o = 0; for (; o < t; ) { let u = !1; for (let i = 0; i < e.length; i++) if (e[i] === n.getUTCDay()) { u = !0; break; } if (!u) { let i = !1; for (let l = 0; l < r.length; l++) if (Gn(n, r[l])) { i = !0; break; } i || o++; } n.setUTCDate(n.getUTCDate() + 1); } return bn(n) - 1; } function Gt(n, t, e = 0) { let a = R.fromOADate(n), r = R.fromOADate(t); if (a > r) { const g = a; a = r, r = g; const p = n; n = t, t = p; } if ((e = Math.trunc(e)) < 0 || e > 4) throw b.BuiltIn.Value; let o = a.getUTCDate(); const u = a.getUTCMonth() + 1, i = a.getUTCFullYear(); let l = r.getUTCDate(); const s = r.getUTCMonth() + 1, f = r.getUTCFullYear(); switch (e) { case 0: return o === 31 && l === 31 ? (o = 30, l = 30) : o === 31 ? o = 30 : o === 30 && l === 31 && (l = 30), Math.abs(l + 30 * s + 360 * f - (o + 30 * u + 360 * i)) / 360; case 1: if (f - i < 2) { const g = (m = i) !== 1900 && new Date(m, 1, 29).getMonth() !== 1 || i === 1900 ? 365 : 366; return un(t, n) / g; } { const g = f - i + 1, p = new Date(f + 1, 0, 1), c = new Date(i, 0, 1), h = (p.getTime() - c.getTime()) / 1e3 / 60 / 60 / 24 / g; return un(t, n) / h; } case 2: return Math.abs(un(t, n) / 360); case 3: return Math.abs(un(t, n) / 365); case 4: return Math.abs(l + 30 * s + 360 * f - (o + 30 * u + 360 * i)) / 360; } var m; } const ee = Object.freeze(Object.defineProperty({ __proto__: null, DATE: function(n, t, e) { return n < 0 || n >= 1e4 ? Number.NaN : (n < 1900 && (n += 1900), R.formatResults("Short Date"), R.toOADate(new Date(n, t - 1, e))); }, DATEDIF: rn, DATESTRING: function(n) { return b.BuiltIn.NA; }, DATEVALUE: function(n) { try { const t = R.parseAsDateTime(n); if (!t) throw b.BuiltIn.Value; return Math.floor(t); } catch { throw b.BuiltIn.Value; } }, DAY: function(n) { return H(n).getUTCDate(); }, DAYS: un, DAYS360: an, EDATE: function(n, t) { return n.setUTCMonth(n.getUTCMonth() + t), bn(n); }, EOMONTH: function(n, t) { return n.setUTCMonth(n.getUTCMonth() + t + 1, 0), bn(n); }, HOUR: function(n) { return H(n).getUTCHours(); }, ISOWEEKNUM: zn, MINUTE: function(n) { return H(n).getUTCMinutes(); }, MONTH: function(n) { return H(n).getUTCMonth() + 1; }, NETWORKDAYS: function(n, t, e = null) { let a = 1; if (n > t) { a = -1; const u = n; n = t, t = u; } const r = []; e !== null && sn.flattenParams([e], L.NUMBER, !1, (u) => { r.push(H(u)); }); let o = 0; for (; n <= t; ) { if (n.getUTCDay() !== 0 && n.getUTCDay() !== 6) { let u = !1; for (let i = 0; i < r.length; i++) if (Gn(n, r[i])) { u = !0; break; } u || o++; } n.setUTCDate(n.getUTCDate() + 1); } return a * o; }, NETWORKDAYS_INTL: function(n, t, e = 1, a = null) { let r = 1; if ((n = H(n)) > (t = H(t))) { r = -1; const i = n; n = t, t = i; } if (e === "1111111") return 0; if (typeof e == "string" && Number(e).toString() !== e) { if (e.length !== 7) throw b.BuiltIn.Value; e = e.charAt(6) + e.slice(0, 6); const i = []; for (let l = 0; l < e.length; l++) e.charAt(l) === "1" && i.push(l); e = i; } else { if (typeof e != "number") throw b.BuiltIn.Value; e = Ht[e]; } const o = []; a != null && sn.flattenParams([a], L.NUMBER, !1, (i) => { o.push(H(i)); }); let u = 0; for (; n <= t; ) { let i = !1; for (let l = 0; l < e.length; l++) if (e[l] === n.getUTCDay()) { i = !0; break; } if (!i) { let l = !1; for (let s = 0; s < o.length; s++) if (Gn(n, o[s])) { l = !0; break; } l || u++; } n.setUTCDate(n.getUTCDate() + 1); } return r * u; }, NOW: function() { const n = /* @__PURE__ */ new Date(), t = bn(Date.UTC(n.getFullYear(), n.getMonth(), n.getDate(), n.getHours(), n.getMinutes(), n.getSeconds(), n.getMilliseconds())) + (3600 * n.getHours() + 60 * n.getMinutes() + n.getSeconds()) / 86400; return R.markVolatile(), R.formatResults("Short Date Short Time"), t; }, SECOND: function(n) { return H(n).getUTCSeconds(); }, TIME: function(n, t, e) { return n < 0 || n > 32767 || t < 0 || t > 32767 || e < 0 || e > 32767 ? Number.NaN : (R.formatResults("Medium Time"), (3600 * n + 60 * t + e) / 86400); }, TIMEVALUE: function(n) { const t = H(n); return (3600 * t.getUTCHours() + 60 * t.getUTCMinutes() + t.getUTCSeconds()) / 86400; }, TODAY: function() { R.formatResults("Short Date"); const n = /* @__PURE__ */ new Date(); return R.toOADate(new Date(n.getFullYear(), n.getMonth(), n.getDate())); }, WEEKDAY: function(n, t = 1) { const e = H(n).getUTCDay(), a = Qt[t]; if (!a) throw b.BuiltIn.Num; return a[e]; }, WEEKNUM: function(n, t = 1) { const e = H(n); if (t === 21) return zn(n); const a = $t[t], r = new Date(Date.UTC(e.getUTCFullYear(), 0, 1)), o = r.getUTCDay() < a ? 1 : 0; return Math.ceil(((e.getTime() - r.getTime()) / 864e5 + 1) / 7) + o; }, WORKDAY: function(n, t, e = null) { return Wn(n, t, 1, e); }, WORKDAY_INTL: Wn, YEAR: function(n) { return H(n).getUTCFullYear(); }, YEARFRAC: Gt }, Symbol.toStringTag, { value: "Module" })); var jn, Kn, $n = {}; const mn = Ft((jn || (jn = 1, Kn = function(n) { n.version = "1.0.2"; var t = Math; function e(S, y) { for (var A = 0, O = 0; A < S.length; ++A) O = y * O + S[A]; return O; } function a(S, y, A, O, D) { if (y === 0) return A; if (y === 1) return O; for (var _ = 2 / S, P = O, Y = 1; Y < y; ++Y) P = O * Y * _ + D * A, A = O, O = P; return P; } function r(S, y, A, O, D) { return function(_, P) { if (O) { if (_ === 0) return O == 1 ? -1 / 0 : 1 / 0; if (_ < 0) return NaN; } return P === 0 ? S(_) : P === 1 ? y(_) : P < 0 ? NaN : a(_, P |= 0, S(_), y(_), D); }; } var o, u, i, l, s, f, m, g, p, c, h, d, N, E = (function() { var S = 0.636619772, y = [57568490574, -13362590354, 6516196407e-1, -1121442418e-2, 77392.33017, -184.9052456].reverse(), A = [57568490411, 1029532985, 9494680718e-3, 59272.64853, 267.8532712, 1].reverse(), O = [1, -0.001098628627, 2734510407e-14, -2073370639e-15, 2093887211e-16].reverse(), D = [-0.01562499995, 1430488765e-13, -6911147651e-15, 7621095161e-16, -934935152e-16].reverse(); function _(V) { var x = 0, U = 0, k = 0, X = V * V; if (V < 8) x = (U = e(y, X)) / (k = e(A, X)); else { var j = V - 0.785398164; U = e(O, X = 64 / X), k = e(D, X), x = t.sqrt(S / V) * (t.cos(j) * U - t.sin(j) * k * 8 / V); } return x; } var P = [72362614232, -7895059235, 2423968531e-1, -2972611439e-3, 15704.4826, -30.16036606].reverse(), Y = [144725228442, 2300535178, 1858330474e-2, 99447.43394, 376.9991397, 1].reverse(), q = [1, 183105e-8, -3516396496e-14, 2457520174e-15, -240337019e-15].reverse(), Q = [0.04687499995, -2002690873e-13, 8449199096e-15, -88228987e-14, 105787412e-15].reverse(); function z(V) { var x = 0, U = 0, k = 0, X = V * V, j = t.abs(V) - 2.356194491; return Math.abs(V) < 8 ? x = (U = V * e(P, X)) / (k = e(Y, X)) : (U = e(q, X = 64 / X), k = e(Q, X), x = t.sqrt(S / t.abs(V)) * (t.cos(j) * U - t.sin(j) * k * 8 / t.abs(V)), V < 0 && (x = -x)), x; } return function V(x, U) { if (U = Math.round(U), !isFinite(x)) return isNaN(x) ? x : 0; if (U < 0) return (U % 2 ? -1 : 1) * V(x, -U); if (x < 0) return (U % 2 ? -1 : 1) * V(-x, U); if (U === 0) return _(x); if (U === 1) return z(x); if (x === 0) return 0; var k = 0; if (x > U) k = a(x, U, _(x), z(x), -1); else { for (var X = !1, j = 0, fn = 0, J = 1, kn = 0, zt = 2 / x, cn = 2 * t.floor((U + t.floor(t.sqrt(40 * U))) / 2); cn > 0; cn--) kn = cn * zt * J - j, j = J, J = kn, t.abs(J) > 1e10 && (J *= 1e-10, j *= 1e-10, k *= 1e-10, fn *= 1e-10), X && (fn += J), X = !X, cn == U && (k = j); k /= fn = 2 * fn - J; } return k; }; })(), I = (o = 0.636619772, u = [-2957821389, 7062834065, -5123598036e-1, 1087988129e-2, -86327.92757, 228.4622733].reverse(), i = [40076544269, 7452499648e-1, 7189466438e-3, 47447.2647, 226.1030244, 1].reverse(), l = [1, -0.001098628627, 2734510407e-14, -2073370639e-15, 2093887211e-16].reverse(), s = [-0.01562499995, 1430488765e-13, -6911147651e-15, 7621095161e-16, -934945152e-16].reverse(), f = [-4900604943e3, 127527439e4, -51534381390, 7349264551e-1, -4237922726e-3, 8511.937935].reverse(), m = [249958057e5, 424441966400, 3733650367, 2245904002e-2, 102042.605, 354.9632885, 1].reverse(), g = [1, 183105e-8, -3516396496e-14, 2457520174e-15, -240337019e-15].reverse(), p = [0.04687499995, -2002690873e-13, 8449199096e-15, -88228987e-14, 105787412e-15].reverse(), r(function(S) { var y = 0, A = 0, O = 0, D = S * S, _ = S - 0.785398164; return S < 8 ? y = (A = e(u, D)) / (O = e(i, D)) + o * E(S, 0) * t.log(S) : (A = e(l, D = 64 / D), O = e(s, D), y = t.sqrt(o / S) * (t.sin(_) * A + t.cos(_) * O * 8 / S)), y; }, function(S) { var y = 0, A = 0, O = 0, D = S * S, _ = S - 2.356194491; return S < 8 ? y = (A = S * e(f, D)) / (O = e(m, D)) + o * (E(S, 1) * t.log(S) - 1 / S) : (A = e(g, D = 64 / D), O = e(p, D), y = t.sqrt(o / S) * (t.sin(_) * A + t.cos(_) * O * 8 / S)), y; }, 0, 1, -1)), T = (c = [1, 3.5156229, 3.0899424, 1.2067492, 0.2659732, 0.0360768, 45813e-7].reverse(), h = [0.39894228, 0.01328592, 225319e-8, -157565e-8, 916281e-8, -0.02057706, 0.02635537, -0.01647633, 392377e-8].reverse(), d = [0.5, 0.87890594, 0.51498869, 0.15084934, 0.02658733, 301532e-8, 32411e-8].reverse(), N = [0.39894228, -0.03988024, -362018e-8, 163801e-8, -0.01031555, 0.02282967, -0.02895312, 0.01787654, -420059e-8].reverse(), function S(y, A) { if ((A = Math.round(A)) === 0) return (O = y) <= 3.75 ? e(c, O * O / 14.0625) : t.exp(t.abs(O)) / t.sqrt(t.abs(O)) * e(h, 3.75 / t.abs(O)); var O; if (A === 1) return (function(z) { return z < 3.75 ? z * e(d, z * z / 14.0625) : (z < 0 ? -1 : 1) * t.exp(t.abs(z)) / t.sqrt(t.abs(z)) * e(N, 3.75 / t.abs(z)); })(y); if (A < 0) return NaN; if (t.abs(y) === 0) return 0; if (y == 1 / 0) return 1 / 0; var D, _ = 0, P = 2 / t.abs(y), Y = 0, q = 1, Q = 0; for (D = 2 * t.round((A + t.round(t.sqrt(40 * A))) / 2); D > 0; D--) Q = D * P * q + Y, Y = q, q = Q, t.abs(q) > 1e10 && (q *= 1e-10, Y *= 1e-10, _ *= 1e-10), D == A && (_ = Y); return _ *= S(y, 0) / q, y < 0 && A % 2 ? -_ : _; }), M = (function() { var S = [-0.57721566, 0.4227842, 0.23069756, 0.0348859, 262698e-8, 1075e-7, 74e-7].reverse(), y = [1.25331414, -0.07832358, 0.02189568, -0.01062446, 587872e-8, -25154e-7, 53208e-8].reverse(), A = [1, 0.15443144, -0.67278579, -0.18156897, -0.01919402, -110404e-8, -4686e-8].reverse(), O = [1.25331414, 0.23498619, -0.0365562, 0.01504268, -780353e-8, 325614e-8, -68245e-8].reverse(); return r(function(D) { return D <= 2 ? -t.log(D / 2) * T(D, 0) + e(S, D * D / 4) : t.exp(-D) / t.sqrt(D) * e(y, 2 / D); }, function(D) { return D <= 2 ? t.log(D / 2) * T(D, 1) + 1 / D * e(A, D * D / 4) : t.exp(-D) / t.sqrt(D) * e(O, 2 / D); }, 0, 2, 1); })(); n.besselj = E, n.bessely = I, n.besseli = T, n.besselk = M; }, Kn(typeof DO_NOT_EXPORT_BESSEL > "u" ? $n : {})), $n)), re = Object.freeze(Object.defineProperty({ __proto__: null, BESSELI: function(n, t) { return (t = Math.trunc(t)) < 0 ? Number.NaN : mn.besseli(n, t); }, BESSELJ: function(n, t) { return (t = Math.trunc(t)) < 0 ? Number.NaN : mn.besselj(n, t); }, BESSELK: function(n, t) { return (t = Math.trunc(t)) < 0 ? Number.NaN : mn.besselk(n, t); }, BESSELY: function(n, t) { return (t = Math.trunc(t)) < 0 ? Number.NaN : mn.bessely(n, t); } }, Symbol.toStringTag, { value: "Module" })), pn = -512, Z = (n) => { const t = typeof n; if (t === "boolean") return n ? 1 : 0; if (t === "number") { if (n < 0 || n > 281474976710655 || Math.floor(n) !== n) throw b.BuiltIn.Num; return n; } if (t === "string") { let e = 0; try { e = 1 * n; } catch { } if (Number.isFinite(e)) return e; } throw b.BuiltIn.Value; }; function Qn(n, t) { if (n = Z(n), t = Math.trunc(t), Math.abs(t) > 53) return Number.NaN; const e = t >= 0 ? n * 2 ** t : Math.trunc(n / 2 ** -t); return e > 281474976710655 ? Number.NaN : e; } function Zn(n, t) { if (n < -549755813888 || n > 549755813888) throw b.BuiltIn.Num; if (n < 0) return (1099511627776 + n).toString(16).toUpperCase(); const e = parseInt(n, 10).toString(16); if (t === void 0) return e.toUpperCase(); if ((t = Math.trunc(t)) <= 0) throw b.BuiltIn.Num; if (t < e.length) throw b.BuiltIn.Num; return "0".repeat(t - e.length) + e.toUpperCase(); } function Jn(n, t) { if (n < -536870912 || n > 536870912) throw b.BuiltIn.Num; if (n < 0) return (n + 1073741824).toString(8); const e = parseInt(n, 10).toString(8); if (t === void 0) return e.toUpperCase(); if ((t = Math.trunc(t)) <= 0) throw b.BuiltIn.Num; if (t < e.length) throw b.BuiltIn.Num; return "0".repeat(t - e.length) + e; } function nt(n) { if (!/^[0-9A-Fa-f]{1,10}$/.test(n)) return Number.NaN; const t = parseInt(n, 16); return t >= 549755813888 ? t - 1099511627776 : t; } function yn(n) { if (n.length > 10) throw b.BuiltIn.Num; for (const e of n) if (e < "0" || e > "7") throw b.BuiltIn.Num; const t = parseInt(n, 8); return t >= 536870912 ? t - 1073741824 : t; } const ue = Object.freeze(Object.defineProperty({ __proto__: null, BIN2DEC: function(n) { const t = n.toString(); return t.length > 10 ? Number.NaN : t.length === 10 && t.substring(0, 1) === "1" ? parseInt(t.substring(1), 2) + pn : parseInt(t, 2); }, BIN2HEX: function(n, t) { const e = n.toString(); if (e.length > 10) throw b.BuiltIn.Num; if (e.length === 10 && e.substring(0, 1) === "1") return (parseInt(e.substring(1), 2) + 1099511627264).toString(16).toUpperCase(); const a = parseInt(n, 2).toString(16); if (t === void 0) return a.toUpperCase(); if (t < 0) throw b.BuiltIn.Num; if ((t = Math.trunc(t)) >= a.length) return ("0".repeat(t - a.length) + a).toUpperCase(); throw b.BuiltIn.Num; }, BIN2OCT: function(n, t) { let e = n.toString(); if (e.length > 10) throw b.BuiltIn.Num; if (e.length === 10 && e.substring(0, 1) === "1") return (parseInt(e.substring(1), 2) + 1073741312).toString(8); const a = parseInt(n, 2).toString(8); if (t === void 0) return a.toUpperCase(); if (t < 0) throw b.BuiltIn.Num; if ((t = Math.trunc(t)) >= a.length) return "0".repeat(t - a.length) + a; throw b.BuiltIn.Num; }, BITAND: function(n, t) { return (n = Z(n)) & Z(t); }, BITLSHIFT: Qn, BITOR: function(n, t) { return (n = Z(n)) | Z(t); }, BITRSHIFT: function(n, t) { return Qn(n = Z(n), -t); }, BITXOR: function(n, t) { return (n = Z(n)) ^ Z(t); }, DEC2BIN: function(n, t) { if (n < pn || n > 511) throw b.BuiltIn.Num; if (n < 0) return "1" + "0".repeat(9 - (512 + n).toString(2).length) + (512 + n).toString(2); const e = parseInt(n, 10).toString(2); if (t === void 0) return e; if ((t = Math.trunc(t)) <= 0) throw b.BuiltIn.Num; if (t < e.length) throw b.BuiltIn.Num; return "0".repeat(t - e.length) + e; }, DEC2HEX: Zn, DEC2OCT: Jn, HEX2BIN: function(n, t) { if (n.length > 10 || !/^[0-9a-fA-F]*$/.test(n)) return Number.NaN; const e = n.length === 10 && n.substring(0, 1).toLowerCase() === "f", a = e ? parseInt(n, 16) - 1099511627776 : parseInt(n, 16); if (a < pn || a > 511) return Number.NaN; if (e) return "1" + "0".repeat(9 - (a + 512).toString(2).length) + (a + 512).toString(2); const r = a.toString(2); return t === void 0 ? r : (t = Math.trunc(t)) <= 0 || t < r.length ? Number.NaN : "0".repeat(t - r.length) + r; }, HEX2DEC: nt, HEX2OCT: function(n, t) { if (n.length > 10 || !/^[0-9a-fA-F]*$/.test(n)) throw b.BuiltIn.Num; const e = nt(n); if (e > 536870911 || e < -536870912) throw b.BuiltIn.Num; return Jn(e, t); }, OCT2BIN: function(n, t) { if (n.length > 10) throw b.BuiltIn.Num; if (t > 10) throw b.BuiltIn.Num; if (t !== void 0 && t < 0) throw b.BuiltIn.Num; t = Math.trunc(t); const e = n.length === 10 && n.substring(0, 1) === "7", a = yn(n); if (a < pn || a > 511) throw b.BuiltIn.Num; if (e) return "1" + "0".repeat(9 - (512 + a).toString(2).length) + (512 + a).toString(2); const r = a.toString(2); if (t === 0) return r; if (t < r.length) throw b.BuiltIn.Num; return "0".repeat(t - r.length) + r; }, OCT2DEC: yn, OCT2HEX: function(n, t) { if (n.length > 10) return Number.NaN; for (const a of n) if (a < "0" || a > "7") return Number.NaN; if ((t = Math.trunc(t)) < 0 || t > 10) return Number.NaN; const e = Zn(yn(n)); return t === 0 ? e : t < e.length ? Number.NaN : "0".repeat(t - e.length) + e; } }, Symbol.toStringTag, { value: "Module" })), oe = Object.freeze(Object.defineProperty({ __proto__: null, CONVERT: function(n, t, e) { const a = [["a.u. of action", "?", null, "action", !1, !1, 105457168181818e-48], ["a.u. of charge", "e", null, "electric_charge", !1, !1, 160217653141414e-33], ["a.u. of energy", "Eh", null, "energy", !1, !1, 435974417757576e-32], ["a.u. of length", "a?", null, "length", !1, !1, 529177210818182e-25], ["a.u. of mass", "m?", null, "mass", !1, !1, 910938261616162e-45], ["a.u. of time", "?/Eh", null, "time", !1, !1, 241888432650516e-31], ["admiralty knot", "admkn", null, "speed", !1, !0, 0.514773333], ["ampere", "A", null, "electric_current", !0, !1, 1], ["ampere per meter", "A/m", null, "magnetic_field_intensity", !0, !1, 1], ["ångström", "Å", ["ang"], "length", !1, !0, 1e-10], ["are", "ar", null, "area", !1, !0, 100], ["astronomical unit", "ua", null, "length", !1, !1, 149597870691667e-25], ["bar", "bar", null, "pressure", !1, !1, 1e5], ["barn", "b", null, "area", !1, !1, 1e-28], ["becquerel", "Bq", null, "radioactivity", !0, !1, 1], ["bit", "bit", ["b"], "information", !1, !0, 1], ["btu", "BTU", ["btu"], "energy", !1, !0, 1055.05585262], ["byte", "byte", null, "information", !1, !0, 8], ["candela", "cd", null, "luminous_intensity", !0, !1, 1], ["candela per square metre", "cd/m?", null, "luminance", !0, !1, 1], ["coulomb", "C", null, "electric_charge", !0, !1, 1], ["cubic ångström", "ang3", ["ang^3"], "volume", !1, !0, 1e-30], ["cubic foot", "ft3", ["ft^3"], "volume", !1, !0, 0.028316846592], ["cubic inch", "in3", ["in^3"], "volume", !1, !0, 16387064e-12], ["cubic light-year", "ly3", ["ly^3"], "volume", !1, !0, 846786664623715e-61], ["cubic metre", "m3", ["m^3"], "volume", !0, !0, 1], ["cubic mile", "mi3", ["mi^3"], "volume", !1, !0, 416818182544058e-5], ["cubic nautical mile", "Nmi3", ["Nmi^3"], "volume", !1, !0, 6352182208], ["cubic Pica", "Pica3", ["Picapt3", "Pica^3", "Picapt^3"], "volume", !1, !0, 758660370370369e-22], ["cubic yard", "yd3", ["yd^3"], "volume", !1, !0, 0.764554857984], ["cup", "cup", null, "volume", !1, !0, 2365882365e-13], ["dalton", "Da", ["u"], "mass", !1, !1, 166053886282828e-41], ["day", "d", ["day"], "time", !1, !0, 86400], ["degree", "°", null, "angle", !1, !1, 0.0174532925199433], ["degrees Rankine", "Rank", null, "temperature", !1, !0, 0.555555555555556], ["dyne", "dyn", ["dy"], "force", !1, !0, 1e-5], ["electronvolt", "eV", ["ev"], "energy", !1, !0, 1.60217656514141], ["ell", "ell", null, "length", !1, !0, 1.143], ["erg", "erg", ["e"], "energy", !1, !0, 1e-7], ["farad", "F", null, "electric_capacitance", !0, !1, 1], ["fluid ounce", "oz", null, "volume", !1, !0, 295735295625e-16], ["foot", "ft", null, "length", !1, !0, 0.3048], ["foot-pound", "flb", null, "energy", !1, !0, 1.3558179483314], ["gal", "Gal", null, "acceleration", !1, !1, 0.01], ["gallon", "gal", null, "volume", !1, !0, 0.003785411784], ["gauss", "G", ["ga"], "magnetic_flux_density", !1, !0, 1], ["grain", "grain", null, "mass", !1, !0, 647989e-10], ["gram", "g", null, "mass", !1, !0, 1e-3], ["gray", "Gy", null, "absorbed_dose", !0, !1, 1], ["gross registered ton", "GRT", ["regton"], "volume", !1, !0, 2.8316846592], ["hectare", "ha", null, "area", !1, !0, 1e4], ["henry", "H", null, "inductance", !0, !1, 1], ["hertz", "Hz", null, "frequency", !0, !1, 1], ["horsepower", "HP", ["h"], "power", !1, !0, 745.69987158227], ["horsepower-hour", "HPh", ["hh", "hph"], "energy", !1, !0, 2684519538e-3], ["hour", "h", ["hr"], "time", !1, !0, 3600], ["imperial gallon (U.K.)", "uk_gal", null, "volume", !1, !0, 454609e-8], ["imperial hundredweight", "lcwt", ["uk_cwt", "hweight"], "mass", !1, !0, 50.802345], ["imperial quart (U.K)", "uk_qt", null, "volume", !1, !0, 0.0011365225], ["imperial ton", "brton", ["uk_ton", "LTON"], "mass", !1, !0, 1016.046909], ["inch", "in", null, "length", !1, !0, 0.0254], ["international acre", "uk_acre", null, "area", !1, !0, 4046.8564224], ["IT calorie", "cal", null, "energy", !1, !0, 4.1868], ["joule", "J", null, "energy", !0, !0, 1], ["katal", "kat", null, "catalytic_activity", !0, !1, 1], ["kelvin", "K", ["kel"], "temperature", !0, !0, 1], ["kilogram", "kg", null, "mass", !0, !0, 1], ["knot", "kn", null, "speed", !1, !0, 0.514444444444444], ["light-year", "ly", null, "length", !1, !0, 9460730472580800], ["litre", "L", ["l", "lt"], "volume", !1, !0, 1e-3], ["lumen", "lm", null, "luminous_flux", !0, !1, 1], ["lux", "lx", null, "illuminance", !0, !1, 1], ["maxwell", "Mx", null, "magnetic_flux", !1, !1, 1e-18], ["measurement ton", "MTON", null, "volume", !1, !0, 1.13267386368], ["meter per hour", "m/h", ["m/hr"], "speed", !1, !0, 27777777777778e-17], ["meter per second", "m/s", ["m/sec"], "speed", !0, !0, 1], ["meter per second squared", "m?s??", null, "acceleration", !0, !1, 1], ["parsec", "pc", ["parsec"], "length", !1, !0, 30856775814671900], ["meter squared per second", "m?/s", null, "kinematic_viscosity", !0, !1, 1], ["metre", "m", null, "length", !0, !0, 1], ["miles per hour", "mph", null, "speed", !1, !0, 0.44704], ["millimetre of mercury", "mmHg", null, "pressure", !1, !1, 133.322], ["minute", "?", null, "angle", !1, !1, 290888208665722e-18], ["minute", "min", ["mn"], "time", !1, !0, 60], ["modern teaspoon", "tspm", null, "volume", !1, !0, 5e-6], ["mole", "mol", null, "amount_of_substance", !0, !1, 1], ["morgen", "Morgen", null, "area", !1, !0, 2500], ["n.u. of action", "?", null, "action", !1, !1, 105457168181818e-48], ["n.u. of mass", "m?", null, "mass", !1, !1, 910938261616162e-45], ["n.u. of speed", "c?", null, "speed", !1, !1, 299792458], ["n.u. of time", "?/(me?c??)", null, "time", !1, !1, 128808866778687e-35], ["nautical mile", "M", ["Nmi"], "length", !1, !0, 1852], ["newton", "N", null, "force", !0, !0, 1], ["œrsted", "Oe ", null, "magnetic_field_intensity", !1, !1, 79.5774715459477], ["ohm", "Ω", null, "electric_resistance", !0, !1, 1], ["ounce mass", "ozm", null, "mass", !1, !0, 0.028349523125], ["pascal", "Pa", null, "pressure", !0, !1, 1], ["pascal second", "Pa?s", null, "dynamic_viscosity", !0, !1, 1], ["pferdestärke", "PS", null, "power", !1, !0, 735.49875], ["phot", "ph", null, "illuminance", !1, !1, 1e-4], ["pica (1/6 inch)", "pica", null, "length", !1, !0, 35277777777778e-17], ["pica (1/72 inch)", "Pica", ["Picapt"], "length", !1, !0, 0.00423333333333333], ["poise", "P", null, "dynamic_viscosity", !1, !1, 0.1], ["pond", "pond", null, "force", !1, !0, 980665e-8], ["pound force", "lbf", null, "force", !1, !0, 4.4482216152605], ["pound mass", "lbm", null, "mass", !1, !0, 0.45359237], ["quart", "qt", null, "volume", !1, !0, 946352946e-12], ["radian", "rad", null, "angle", !0, !1, 1], ["second", "?", null, "angle", !1, !1, 484813681109536e-20], ["second", "s", ["sec"], "time", !0, !0, 1], ["short hundredweight", "cwt", ["shweight"], "mass", !1, !0, 45.359237], ["siemens", "S", null, "electrical_conductance", !0, !1, 1], ["sievert", "Sv", null, "equivalent_dose", !0, !1, 1], ["slug", "sg", null, "mass", !1, !0, 14.59390294], ["square ångström", "ang2", ["ang^2"], "area", !1, !0, 1e-20], ["square foot", "ft2", ["ft^2"], "area", !1, !0, 0.09290304], ["square inch", "in2", ["in^2"], "area", !1, !0, 64516e-8], ["square light-year", "ly2", ["ly^2"], "area", !1, !0, 895054210748189e17], ["square meter", "m?", null, "area", !0, !0, 1], ["square mile", "mi2", ["mi^2"], "area", !1, !0, 2589988110336e-6], ["square nautical mile", "Nmi2", ["Nmi^2"], "area", !1, !0, 3429904], ["square Pica", "Pica2", ["Picapt2", "Pica^2", "Picapt^2"], "area", !1, !0, 1792111111111e-17], ["square yard", "yd2", ["yd^2"], "area", !1, !0, 0.83612736], ["statute mile", "mi", null, "length", !1, !0, 1609.344], ["steradian", "sr", null, "solid_angle", !0, !1, 1], ["stilb", "sb", null, "luminance", !1, !1, 1e-4], ["stokes", "St", null, "kinematic_viscosity", !1, !1, 1e-4], ["stone", "stone", null, "mass", !1, !0, 6.35029318], ["tablespoon", "tbs", null, "volume", !1, !0, 147868e-10], ["teaspoon", "tsp", null, "volume", !1, !0, 492892e-11], ["tesla", "T", null, "magnetic_flux_density", !0, !0, 1], ["thermodynamic calorie", "c", null, "energy", !1, !0, 4.184], ["ton", "ton", null, "mass", !1, !0, 907.18474], ["tonne", "t", null, "mass", !1, !1, 1e3], ["U.K. pint", "uk_pt", null, "volume", !1, !0, 56826125e-11], ["U.S. bushel", "bushel", null, "volume", !1, !0, 0.03523907], ["U.S. oil barrel", "barrel", null, "volume", !1, !0, 0.158987295], ["U.S. pint", "pt", ["us_pt"], "volume", !1, !0, 473176473e-12], ["U.S. survey mile", "survey_mi", null, "length", !1, !0, 1609.347219], ["U.S. survey/statute acre", "us_acre", null, "area", !1, !0, 4046.87261], ["volt", "V", null, "voltage", !0, !1, 1], ["watt", "W", null, "power", !0, !0, 1], ["watt-hour", "Wh", ["wh"], "energy", !1, !0, 3600], ["weber", "Wb", null, "magnetic_flux", !0, !1, 1], ["yard", "yd", null, "length", !1, !0, 0.9144], ["year", "yr", null, "time", !1, !0, 31557600]], r = { Yi: ["yobi", 80, 12089258196146292e8, "Yi", "yotta"], Zi: ["zebi", 70, 11805916207174113e5, "Zi", "zetta"], Ei: ["exbi", 60, 1152921504606847e3, "Ei", "exa"], Pi: ["pebi", 50, 1125899906842624, "Pi", "peta"], Ti: ["tebi", 40, 1099511627776, "Ti", "tera"], Gi: ["gibi", 30, 1073741824, "Gi", "giga"], Mi: ["mebi", 20, 1048576, "Mi", "mega"], ki: ["kibi", 10, 1024, "ki", "kilo"] }, o = { Y: ["yotta", 1e24, "Y"], Z: ["zetta", 1e21, "Z"], E: ["exa", 1e18, "E"], P: ["peta", 1e15, "P"], T: ["tera", 1e12, "T"], G: ["giga", 1e9, "G"], M: ["mega", 1e6, "M"], k: ["kilo", 1e3, "k"], h: ["hecto", 100, "h"], e: ["dekao", 10, "e"], d: ["deci", 0.1, "d"], c: ["centi", 0.01, "c"], m: ["milli", 1e-3, "m"], u: ["micro", 1e-6, "u"], n: ["nano", 1e-9, "n"], p: ["pico", 1e-12, "p"], f: ["femto", 1e-15, "f"], a: ["atto", 1e-18, "a"], z: ["zepto", 1e-21, "z"], y: ["yocto", 1e-24, "y"] }; let u, i = null, l = null, s = t, f = e, m = 1, g = 1; for (let p = 0; p < a.length; p++) u = a[p][2] === null ? [] : a[p][2], (a[p][1] === s || u.indexOf(s) >= 0) && (i = a[p]), (a[p][1] === f || u.indexOf(f) >= 0) && (l = a[p]); if (i === null) { const p = r[t.substring(0, 2)]; let c = o[t.substring(0, 1)]; t.substring(0, 2) === "da" && (c = ["dekao", 10, "da"]), p ? (m = p[2], s = t.substring(2)) : c && (m = c[1], s = t.substring(c[2].length)); for (let h = 0; h < a.length; h++) u = a[h][2] === null ? [] : a[h][2], (a[h][1] === s || u.indexOf(s) >= 0) && (i = a[h]); } if (l === null) { const p = r[e.substring(0, 2)]; let c = o[e.substring(0, 1)]; e.substring(0, 2) === "da" && (c = ["dekao", 10, "da"]), p ? (g = p[2], f = e.substring(2)) : c && (g = c[1], f = e.substring(c[2].length)); for (let h = 0; h < a.length; h++) u = a[h][2] === null ? [] : a[h][2], (a[h][1] === f || u.indexOf(f) >= 0) && (l = a[h]); } if (i === null || l === null) throw b.BuiltIn.NA; if (i[3] !== l[3]) throw b.BuiltIn.NA; return n * i[6] * m / (l[6] * g); } }, Symbol.toStringTag, { value: "Module" })), ae = Object.freeze(Object.defineProperty({ __proto__: null, DELTA: function(n, t = 0) { return n === t ? 1 : 0; }, GESTEP: function(n, t = 0) { return n >= t ? 1 : 0; } }, Symbol.toStringTag, { value: "Module" })); var tt, C, et = { exports: {} }, ie = (tt || (tt = 1, et.exports = (C = (function(n, t) { var e = Array.prototype.concat, a = Array.prototype.slice, r = Object.prototype.toString; function o(c, h) { var d = c > h ? c : h; return n.pow(10, 17 - ~~(n.log(d > 0 ? d : -d) * n.LOG10E)); } var u = Array.isArray || function(c) { return r.call(c) === "[object Array]"; }; function i(c) { return r.call(c) === "[object Function]"; } function l(c) { return typeof c == "number" && c - c === 0; } function s() { return new s._init(arguments); } function f() { return 0; } function m() { return 1; } function g(c, h) { return c === h ? 1 : 0; } s.fn = s.prototype, s._init = function(c) { if (u(c[0])) if (u(c[0][0])) { i(c[1]) && (c[0] = s.map(c[0], c[1])); for (var h = 0; h < c[0].length; h++) this[h] = c[0][h]; this.length = c[0].length; } else this[0] = i(c[1]) ? s.map(c[0], c[1]) : c[0], this.length = 1; else if (l(c[0])) this[0] = s.seq.apply(null, c), this.length = 1; else { if (c[0] instanceof s) return s(c[0].toArray()); this[0] = [], this.length = 1; } return this; }, s._init.prototype = s.prototype, s._init.constructor = s, s.utils = { calcRdx: o, isArray: u, isFunction: i, isNumber: l, toVector: function(c) { return e.apply([], c); } }, s._random_fn = n.random, s.setRandom = function(c) { if (typeof c != "function") throw new TypeError("fn is not a function"); s._random_fn = c; }, s.extend = function(c) { var h, d; if (arguments.length === 1) { for (d in c) s[d] = c[d]; return this; } for (h = 1; h < arguments.length; h++) for (d in arguments[h]) c[d] = arguments[h][d]; return c; }, s.rows = function(c) { return c.length || 1; }, s.cols = function(c) { return c[0].length || 1; }, s.dimensions = function(c) { return { rows: s.rows(c), cols: s.cols(c) }; }, s.row = function(c, h) { return u(h) ? h.map(function(d) { return s.row(c, d); }) : c[h]; }, s.rowa = function(c, h) { return s.row(c, h); }, s.col = function(c, h) { if (u(h)) { var d = s.arange(c.length).map(function() { return new Array(h.length); }); return h.forEach(function(I, T) { s.arange(c.length).forEach(function(M) { d[M][T] = c[M][I]; }); }), d; } for (var N = new Array(c.length), E = 0; E < c.length; E++) N[E] = [c[E][h]]; return N; }, s.cola = function(c, h) { return s.col(c, h).map(function(d) { return d[0]; }); }, s.diag = function(c) { for (var h = s.rows(c), d = new Array(h), N = 0; N < h; N++) d[N] = [c[N][N]]; return d; }, s.antidiag = function(c) { for (var h = s.rows(c) - 1, d = new Array(h), N = 0; h >= 0; h--, N++) d[N] = [c[N][h]]; return d; }, s.transpose = function(c) { var h, d, N, E, I, T = []; for (u(c[0]) || (c = [c]), d = c.length, N = c[0].length, I = 0; I < N; I++) { for (h = new Array(d), E = 0; E < d; E++) h[E] = c[E][I]; T.push(h); } return T.length === 1 ? T[0] : T; }, s.map = function(c, h, d) { var N, E, I, T, M; for (u(c[0]) || (c = [c]), E = c.length, I = c[0].length, T = d ? c : new Array(E), N = 0; N < E; N++) for (T[N] || (T[N] = new Array(I)), M = 0; M < I; M++) T[N][M] = h(c[N][M], N, M); return T.length === 1 ? T[0] : T; }, s.cumreduce = function(c, h, d) { var N, E, I, T, M; for (u(c[0]) || (c = [c]), E = c.length, I = c[0].length, T = d ? c : new Array(E), N = 0; N < E; N++) for (T[N] || (T[N] = new Array(I)), I > 0 && (T[N][0] = c[N][0]), M = 1; M < I; M++) T[N][M] = h(T[N][M - 1], c[N][M]); return T.length === 1 ? T[0] : T; }, s.alter = function(c, h) { return s.map(c, h, !0); }, s.create = function(c, h, d) { var N, E, I = new Array(c); for (i(h) && (d = h, h = c), N = 0; N < c; N++) for (I[N] = new Array(h), E = 0; E < h; E++) I[N][E] = d(N, E); return I; }, s.zeros = function(c, h) { return l(h) || (h = c), s.create(c, h, f); }, s.ones = function(c, h) { return l(h) || (h = c), s.create(c, h, m); }, s.rand = function(c, h) { return l(h) || (h = c), s.create(c, h, s._random_fn); }, s.identity = function(c, h) { return l(h) || (h = c), s.create(c, h, g); }, s.symmetric = function(c) { var h, d, N = c.length; if (c.length !== c[0].length) return !1; for (h = 0; h < N; h++) for (d = 0; d < N; d++) if (c[d][h] !== c[h][d]) return !1; return !0; }, s.clear = function(c) { return s.alter(c, f); }, s.seq = function(c, h, d, N) { i(N) || (N = !1); var E, I = [], T = o(c, h), M = (h * T - c * T) / ((d - 1) * T), S = c; for (E = 0; S <= h && E < d; S = (c * T + M * T * ++E) / T) I.push(N ? N(S, E) : S); return I; }, s.arange = function(c, h, d) { var N, E = []; if (d = d || 1, h === t && (h = c, c = 0), c === h || d === 0) return []; if (c < h && d < 0) return []; if (c > h && d > 0) return []; if (d > 0) for (N = c; N < h; N += d) E.push(N); else for (N = c; N > h; N += d) E.push(N); return E; }, s.slice = /* @__PURE__ */ (function() { function c(h, d, N, E) { var I, T = [], M = h.length; if (d === t && N === t && E === t) return s.copy(h); if (E = E || 1, (d = (d = d || 0) >= 0 ? d : M + d) === (N = (N = N || h.length) >= 0 ? N : M + N) || E === 0) return []; if (d < N && E < 0) return []; if (d > N && E > 0) return []; if (E > 0) for (I = d; I < N; I += E) T.push(h[I]); else for (I = d; I > N; I += E) T.push(h[I]); return T; } return function(h, d) { var N, E; return l((d = d || {}).row) ? l(d.col) ? h[d.row][d.col] : c(s.rowa(h, d.row), (N = d.col || {}).start, N.end, N.step) : l(d.col) ? c(s.cola(h, d.col), (E = d.row || {}).start, E.end, E.step) : (E = d.row || {}, N = d.col || {}, c(h, E.start, E.end, E.step).map(function(I) { return c(I, N.start, N.end, N.step); })); }; })(), s.sliceAssign = function(c, h, d) { var N, E; if (l(h.row)) { if (l(h.col)) return c[h.row][h.col] = d; h.col = h.col || {}, h.col.start = h.col.start || 0, h.col.end = h.col.end || c[0].length, h.col.step = h.col.step || 1, N = s.arange(h.col.start, n.min(c.length, h.col.end), h.col.step); var I = h.row; return N.forEach(function(M, S) { c[I][M] = d[S]; }), c; } if (l(h.col)) { h.row = h.row || {}, h.row.start = h.row.start || 0, h.row.end = h.row.end || c.length, h.row.step = h.row.step || 1, E = s.arange(h.row.start, n.min(c[0].length, h.row.end), h.row.step); var T = h.col; return E.forEach(function(M, S) { c[M][T] = d[S]; }), c; } return d[0].length === t && (d = [d]), h.row.start = h.row.start || 0, h.row.end = h.row.end || c.length, h.row.step = h.row.step || 1, h.col.start = h.col.start || 0, h.col.end = h.col.end || c[0].length, h.col.step = h.col.step || 1, E = s.arange(h.row.start, n.min(c.length, h.row.end), h.row.step), N = s.arange(h.col.start, n.min(c[0].length, h.col.end), h.col.step), E.forEach(function(M, S) { N.forEach(function(y, A) { c[M][y] = d[S][A]; }); }), c; }, s.diagonal = function(c) { var h = s.zeros(c.length, c.length); return c.forEach(function(d, N) { h[N][N] = d; }), h; }, s.copy = function(c) { return c.map(function(h) { return l(h) ? h : h.map(function(d) { return d; }); }); }; var p = s.prototype; return p.length = 0, p.push = Array.prototype.push, p.sort = Array.prototype.sort, p.splice = Array.prototype.splice, p.slice = Array.prototype.slice, p.toArray = function() { return this.length > 1 ? a.call(this) : a.call(this)[0]; }, p.map = function(c, h) { return s(s.map(this, c, h)); }, p.cumreduce = function(c, h) { return s(s.cumreduce(this, c, h)); }, p.alter = function(c) { return s.alter(this, c), this; }, (function(c) { for (var h = 0; h < c.length; h++) (function(d) { p[d] = function(N) { var E, I = this; return N ? (setTimeout(function() { N.call(I, p[d].call(I)); }), this) : (E = s[d](this), u(E) ? s(E) : E); }; })(c[h]); })("transpose clear symmetric rows cols dimensions diag antidiag".split(" ")), (function(c) { for (var h = 0; h < c.length; h++) (function(d) { p[d] = function(N, E) { var I = this; return E ? (setTimeout(function() { E.call(I, p[d].call(I, N)); }), this) : s(s[d](this, N)); }; })(c[h]); })("row col".split(" ")), (function(c) { for (var h = 0; h < c.length; h++) (function(d) { p[d] = function() { return s(s[d].apply(null, arguments)); }; })(c[h]); })("create zeros ones rand identity".split(" ")), s; })(Math), (function(n, t) { var e = n.utils.isFunction; function a(u, i) { return u - i; } function r(u, i, l) { return t.max(i, t.min(u, l)); } n.sum = function(u) { for (var i = 0, l = u.length; --l >= 0; ) i += u[l]; return i; }, n.sumsqrd = function(u) { for (var i = 0, l = u.length; --l >= 0; ) i += u[l] * u[l]; return i; }, n.sumsqerr = function(u) { for (var i, l = n.mean(u), s = 0, f = u.length; --f >= 0; ) s += (i = u[f] - l) * i; return s; }, n.sumrow = function(u) { for (var i = 0, l = u.length; --l >= 0; ) i += u[l]; return i; }, n.product = function(u) { for (var i = 1, l = u.length; --l >= 0; ) i *= u[l]; return i; }, n.min = function(u) { for (var i = u[0], l = 0; ++l < u.length; ) u[l] < i && (i = u[l]); return i; }, n.max = function(u) { for (var i = u[0], l = 0; ++l < u.length; ) u[l] > i && (i = u[l]); return i; }, n.unique = function(u) { for (var i = {}, l = [], s = 0; s < u.length; s++) i[u[s]] || (i[u[s]] = !0, l.push(u[s])); return l; }, n.mean = function(u) { return n.sum(u) / u.length; }, n.meansqerr = function(u) { return n.sumsqerr(u) / u.length; }, n.geomean = function(u) { var i = u.map(t.log), l = n.mean(i); return t.exp(l); }, n.median = function(u) { var i = u.length, l = u.slice().sort(a); return 1 & i ? l[i / 2 | 0] : (l[i / 2 - 1] + l[i / 2]) / 2; }, n.cumsum = function(u) { return n.cumreduce(u, function(i, l) { return i + l; }); }, n.cumprod = function(u) { return n.cumreduce(u, function(i, l) { return i * l; }); }, n.diff = function(u) { var i, l = [], s = u.length; for (i = 1; i < s; i++) l.push(u[i] - u[i - 1]); return l; }, n.rank = function(u) { var i, l = [], s = {}; for (i = 0; i < u.length; i++) s[p = u[i]] ? s[p]++ : (s[p] = 1, l.push(p)); var f = l.sort(a), m = {}, g = 1; for (i = 0; i < f.length; i++) { var p, c = s[p = f[i]], h = (g + (g + c - 1)) / 2; m[p] = h, g += c; } return u.map(function(d) { return m[d]; }); }, n.mode = function(u) { var i, l = u.length, s = u.slice().sort(a), f = 1, m = 0, g = 0, p = []; for (i = 0; i < l; i++) s[i] === s[i + 1] ? f++ : (f > m ? (p = [s[i]], m = f, g = 0) : f === m && (p.push(s[i]), g++), f = 1); return g === 0 ? p[0] : p; }, n.range = function(u) { return n.max(u) - n.min(u); }, n.variance = function(u, i) { return n.sumsqerr(u) / (u.length - (i ? 1 : 0)); }, n.pooledvariance = function(u) { return u.reduce(function(i, l) { return i + n.sumsqerr(l); }, 0) / (u.reduce(function(i, l) { return i + l.length; }, 0) - u.length); }, n.deviation = function(u) { for (var i = n.mean(u), l = u.length, s = new Array(l), f = 0; f < l; f++) s[f] = u[f] - i; return s; }, n.stdev = function(u, i) { return t.sqrt(n.variance(u, i)); }, n.pooledstdev = function(u) { return t.sqrt(n.pooledvariance(u)); }, n.meandev = function(u) { for (var i = n.mean(u), l = [], s = u.length - 1; s >= 0; s--) l.push(t.abs(u[s] - i)); return n.mean(l); }, n.meddev = function(u) { for (var i = n.median(u), l = [], s = u.length - 1; s >= 0; s--) l.push(t.abs(u[s] - i)); return n.median(l); }, n.coeffvar = function(u) { return n.stdev(u) / n.mean(u); }, n.quartiles = function(u) { var i = u.lengt