UNPKG

@sheetxl/studio-vanilla

Version:

SheetXL Studio - Vanilla entry point for integrating SheetXL UI.

904 lines 228 kB
import { n as E, V as S, C as Yt, M as K, w as J, Y as Cn, D as Qt } from "./Dm24M4tfHrPDHOCg.js"; /** * @license @sheetxl/studio-vanilla - SheetXL Studio - Vanilla entry point for integrating SheetXL UI. - v0.6.4 * * (C) 2025-present SheetXL Inc. & Michael T. Ford * License: The license can be found at https://www.sheetxl.com/license. */ const Zt = 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" })), Jt = 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" })), F = { NUMBER: 0, ARRAY: 1, BOOLEAN: 2, STRING: 3, RANGE_REF: 4, CELL_REF: 5, NUMBER_NO_BOOLEAN: 10 }, mn = new class { constructor() { this.Types = F, this.type2Number = { number: F.NUMBER, boolean: F.BOOLEAN, string: F.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 E.Known) return n; let a; if (typeof n == "number") a = n; else if (typeof n == "boolean") { if (!e) throw E.BuiltIn.Value; a = Number(n); } else if (typeof n == "string") { if (n.length === 0) throw E.BuiltIn.Value; if (a = Number(n), a != a) throw E.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 E.BuiltIn.Value; a = this.acceptNumber(r.getValueAt(0, 0) ?? 0); } } else { if (!Array.isArray(n)) throw new E.Value("Unknown type in FormulaHelpers.acceptNumber"); if (t) a = this.acceptNumber(n[0][0]); else { if (n[0].length !== 1) throw E.BuiltIn.Value; a = this.acceptNumber(n[0][0]); } } return a; } flattenParams(n, t, e, a, r = null, u = 1) { if (n.length < u) throw new E.NA(`Argument type ${t} is missing.`); r == null && (r = t === F.NUMBER ? 0 : t == null ? null : ""), n.forEach((o) => { const { isCellRef: i, isRangeRef: l, isArray: s } = o; let f = o.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 ? (o = o.omitted ? r : this.accept(o, t, r), a(o, g)) : i ? a(f, g) : (l || s) && (o = this.flattenDeep(f)).forEach((p) => { a(p, g); }); }); } accept(n, t = null, e = void 0, a = !0, r = !1) { let u = !1; if (n && (n.isIRange || n.value?.isIRange)) { const i = n.value ?? n; i.size === 1 || t !== F.ARRAY ? n = i.getValueAt(0, 0) : (n = i.getValueAt(), u = !0); } else n?.value && (u = n.isArray, n = n.value); if (Array.isArray(t) && (t = t[0]), n == null) { if (e === void 0) throw new E.NA(`Argument type ${t} is missing.`); return e; } if (t == null) return n; if (n instanceof E.Known) throw n; if (t === F.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 E.BuiltIn.Value; } u && (n = n[0][0]); const o = this.type(n); if (t === F.STRING) n = o === F.BOOLEAN ? n ? "TRUE" : "FALSE" : `${n}`; else if (t === F.BOOLEAN) { if (o === F.STRING) throw E.BuiltIn.Value; o === F.NUMBER && (n = !!n); } else if (t === F.NUMBER) n = this.acceptNumber(n, !1); else { if (t !== F.NUMBER_NO_BOOLEAN) throw E.BuiltIn.Value; n = this.acceptNumber(n, !1, !1); } return n; } type(n) { if (n.isIRange) return F.RANGE_REF; let t = this.type2Number[typeof n]; return t === -1 && (Array.isArray(n) ? t = F.ARRAY : n.ref && (t = n.ref.from ? F.RANGE_REF : F.CELL_REF)), t; } }(), On = 864e5, qn = new Date(Date.UTC(1900, 0, 1)), ne = [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], te = [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]], qt = [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]], ee = /^\s*(\d\d?)\s*(:\s*\d\d?)?\s*(:\s*\d\d?)?\s*(pm|am)?\s*$/i, re = /^\s*((\d\d?)\s*([-/])\s*(\d\d?))([\d:.apm\s]*)$/i, oe = /^\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, ue = /^\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 An(n) { let t = n.getTime?.() ?? n; const e = t > -22038912e5 ? 2 : 1; return Math.floor((t - qn.getTime()) / 864e5) + e; } function X(n) { return function(t) { if (t instanceof Date) return { date: t }; let e, a = !0; return isNaN(t) ? (e = function(r) { const u = r.match(ee); if (!u) return; const o = u[2] ? u[2] : ":00", i = u[3] ? u[3] : ":00", l = u[4] ? " " + u[4] : "", s = new Date(Date.parse(`1/1/1900 ${u[1] + o + 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 u = r.match(re), o = r.match(oe), i = r.match(ue); return u ? r = u[1] + u[3] + (/* @__PURE__ */ new Date()).getFullYear() + u[5] : o ? r = o[1] + o[3] + (/* @__PURE__ */ new Date()).getFullYear() + o[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 E.BuiltIn.Value; return r <= 60 ? new Date(qn.getTime() + 864e5 * (r - 1)) : new Date(qn.getTime() + 864e5 * (r - 2)); }(t = Number(t)), { date: e, isDateGiven: a }; }(n).date; } function kn(n, t) { return n.getUTCFullYear() === t.getUTCFullYear() && n.getUTCMonth() === t.getUTCMonth() && n.getUTCDate() === t.getUTCDate(); } function an(n, t, e) { const a = S.fromOADate(n), r = S.fromOADate(t); if (e = e.toLowerCase(), n > t) return Number.NaN; const u = r.getUTCFullYear() - a.getUTCFullYear(), o = r.getUTCMonth() - a.getUTCMonth(), i = r.getUTCDate() - a.getUTCDate(); let l; switch (e) { case "y": return l = o < 0 || o === 0 && i < 0 ? -1 : 0, l + u; case "m": return l = i < 0 ? -1 : 0, 12 * u + o + l; case "d": return Math.floor(r.getTime() - a.getTime()) / On; case "md": return a.setUTCFullYear(r.getUTCFullYear()), i < 0 ? a.setUTCMonth(r.getUTCMonth() - 1) : a.setUTCMonth(r.getUTCMonth()), Math.floor(r.getTime() - a.getTime()) / On; case "ym": return l = i < 0 ? -1 : 0, (l + 12 * u + o) % 12; case "yd": return o < 0 || o === 0 && i < 0 ? a.setUTCFullYear(r.getUTCFullYear() - 1) : a.setUTCFullYear(r.getUTCFullYear()), Math.floor(r.getTime() - a.getTime()) / On; } } function ln(n, t) { return Math.trunc(n) - Math.trunc(t); } function fn(n, t, e = !1) { const a = S.fromOADate(n), r = S.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 u = r.getUTCFullYear() - a.getUTCFullYear(); return 30 * (r.getUTCMonth() - a.getUTCMonth()) + (r.getUTCDate() - a.getUTCDate()) + 12 * u * 30; } function $n(n) { const t = X(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 Qn(n, t, e = 1, a = null) { if (n = X(n), e === "1111111") throw E.BuiltIn.Value; if (typeof e == "string" && Number(e).toString() !== e) { if (e.length !== 7) throw E.BuiltIn.Value; e = e.charAt(6) + e.slice(0, 6); const o = []; for (let i = 0; i < e.length; i++) e.charAt(i) === "1" && o.push(i); e = o; } else { if (typeof e != "number") throw E.BuiltIn.Value; if ((e = qt[e]) == null) throw E.BuiltIn.Num; } const r = []; a != null && mn.flattenParams([a], F.NUMBER, !1, (o) => { r.push(X(o)); }), n.setUTCDate(n.getUTCDate() + 1); let u = 0; for (; u < t; ) { let o = !1; for (let i = 0; i < e.length; i++) if (e[i] === n.getUTCDay()) { o = !0; break; } if (!o) { let i = !1; for (let l = 0; l < r.length; l++) if (kn(n, r[l])) { i = !0; break; } i || u++; } n.setUTCDate(n.getUTCDate() + 1); } return An(n) - 1; } function kt(n, t, e = 0) { let a = S.fromOADate(n), r = S.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 E.BuiltIn.Value; let u = a.getUTCDate(); const o = a.getUTCMonth() + 1, i = a.getUTCFullYear(); let l = r.getUTCDate(); const s = r.getUTCMonth() + 1, f = r.getUTCFullYear(); switch (e) { case 0: return u === 31 && l === 31 ? (u = 30, l = 30) : u === 31 ? u = 30 : u === 30 && l === 31 && (l = 30), Math.abs(l + 30 * s + 360 * f - (u + 30 * o + 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 ln(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 ln(t, n) / h; } case 2: return Math.abs(ln(t, n) / 360); case 3: return Math.abs(ln(t, n) / 365); case 4: return Math.abs(l + 30 * s + 360 * f - (u + 30 * o + 360 * i)) / 360; } var m; } const ae = Object.freeze(Object.defineProperty({ __proto__: null, DATE: function(n, t, e) { return n < 0 || n >= 1e4 ? Number.NaN : (n < 1900 && (n += 1900), S.formatResults("Short Date"), S.toOADate(new Date(n, t - 1, e))); }, DATEDIF: an, DATESTRING: function(n) { return E.BuiltIn.NA; }, DATEVALUE: function(n) { try { const t = S.parseAsDateTime(n); if (!t) throw E.BuiltIn.Value; return Math.floor(t); } catch { throw E.BuiltIn.Value; } }, DAY: function(n) { return X(n).getUTCDate(); }, DAYS: ln, DAYS360: fn, EDATE: function(n, t) { return n.setUTCMonth(n.getUTCMonth() + t), An(n); }, EOMONTH: function(n, t) { return n.setUTCMonth(n.getUTCMonth() + t + 1, 0), An(n); }, HOUR: function(n) { return X(n).getUTCHours(); }, ISOWEEKNUM: $n, MINUTE: function(n) { return X(n).getUTCMinutes(); }, MONTH: function(n) { return X(n).getUTCMonth() + 1; }, NETWORKDAYS: function(n, t, e = null) { let a = 1; if (n > t) { a = -1; const o = n; n = t, t = o; } const r = []; e !== null && mn.flattenParams([e], F.NUMBER, !1, (o) => { r.push(X(o)); }); let u = 0; for (; n <= t; ) { if (n.getUTCDay() !== 0 && n.getUTCDay() !== 6) { let o = !1; for (let i = 0; i < r.length; i++) if (kn(n, r[i])) { o = !0; break; } o || u++; } n.setUTCDate(n.getUTCDate() + 1); } return a * u; }, NETWORKDAYS_INTL: function(n, t, e = 1, a = null) { let r = 1; if ((n = X(n)) > (t = X(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 E.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 E.BuiltIn.Value; e = qt[e]; } const u = []; a != null && mn.flattenParams([a], F.NUMBER, !1, (i) => { u.push(X(i)); }); let o = 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 < u.length; s++) if (kn(n, u[s])) { l = !0; break; } l || o++; } n.setUTCDate(n.getUTCDate() + 1); } return r * o; }, NOW: function() { const n = /* @__PURE__ */ new Date(), t = An(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 S.markVolatile(), S.formatResults("Short Date Short Time"), t; }, SECOND: function(n) { return X(n).getUTCSeconds(); }, TIME: function(n, t, e) { return n < 0 || n > 32767 || t < 0 || t > 32767 || e < 0 || e > 32767 ? Number.NaN : (S.formatResults("Medium Time"), (3600 * n + 60 * t + e) / 86400); }, TIMEVALUE: function(n) { const t = X(n); return (3600 * t.getUTCHours() + 60 * t.getUTCMinutes() + t.getUTCSeconds()) / 86400; }, TODAY: function() { S.formatResults("Short Date"); const n = /* @__PURE__ */ new Date(); return S.toOADate(new Date(n.getFullYear(), n.getMonth(), n.getDate())); }, WEEKDAY: function(n, t = 1) { const e = X(n).getUTCDay(), a = te[t]; if (!a) throw E.BuiltIn.Num; return a[e]; }, WEEKNUM: function(n, t = 1) { const e = X(n); if (t === 21) return $n(n); const a = ne[t], r = new Date(Date.UTC(e.getUTCFullYear(), 0, 1)), u = r.getUTCDay() < a ? 1 : 0; return Math.ceil(((e.getTime() - r.getTime()) / 864e5 + 1) / 7) + u; }, WORKDAY: function(n, t, e = null) { return Qn(n, t, 1, e); }, WORKDAY_INTL: Qn, YEAR: function(n) { return X(n).getUTCFullYear(); }, YEARFRAC: kt }, Symbol.toStringTag, { value: "Module" })); var Zn, Jn, nt = {}; const dn = Yt((Zn || (Zn = 1, Jn = function(n) { n.version = "1.0.2"; var t = Math; function e(R, O) { for (var D = 0, C = 0; D < R.length; ++D) C = O * C + R[D]; return C; } function a(R, O, D, C, L) { if (O === 0) return D; if (O === 1) return C; for (var _ = 2 / R, z = C, $ = 1; $ < O; ++$) z = C * $ * _ + L * D, D = C, C = z; return z; } function r(R, O, D, C, L) { return function(_, z) { if (C) { if (_ === 0) return C == 1 ? -1 / 0 : 1 / 0; if (_ < 0) return NaN; } return z === 0 ? R(_) : z === 1 ? O(_) : z < 0 ? NaN : a(_, z |= 0, R(_), O(_), L); }; } var u, o, i, l, s, f, m, g, p, c, h, d, N, b, I, T, M, w = function() { var R = 0.636619772, O = [57568490574, -13362590354, 6516196407e-1, -1121442418e-2, 77392.33017, -184.9052456].reverse(), D = [57568490411, 1029532985, 9494680718e-3, 59272.64853, 267.8532712, 1].reverse(), C = [1, -0.001098628627, 2734510407e-14, -2073370639e-15, 2093887211e-16].reverse(), L = [-0.01562499995, 1430488765e-13, -6911147651e-15, 7621095161e-16, -934935152e-16].reverse(); function _(H) { var B = 0, V = 0, k = 0, q = H * H; if (H < 8) B = (V = e(O, q)) / (k = e(D, q)); else { var Q = H - 0.785398164; V = e(C, q = 64 / q), k = e(L, q), B = t.sqrt(R / H) * (t.cos(Q) * V - t.sin(Q) * k * 8 / H); } return B; } var z = [72362614232, -7895059235, 2423968531e-1, -2972611439e-3, 15704.4826, -30.16036606].reverse(), $ = [144725228442, 2300535178, 1858330474e-2, 99447.43394, 376.9991397, 1].reverse(), nn = [1, 183105e-8, -3516396496e-14, 2457520174e-15, -240337019e-15].reverse(), pn = [0.04687499995, -2002690873e-13, 8449199096e-15, -88228987e-14, 105787412e-15].reverse(); function j(H) { var B = 0, V = 0, k = 0, q = H * H, Q = t.abs(H) - 2.356194491; return Math.abs(H) < 8 ? B = (V = H * e(z, q)) / (k = e($, q)) : (V = e(nn, q = 64 / q), k = e(pn, q), B = t.sqrt(R / t.abs(H)) * (t.cos(Q) * V - t.sin(Q) * k * 8 / t.abs(H)), H < 0 && (B = -B)), B; } return function H(B, V) { if (V = Math.round(V), !isFinite(B)) return isNaN(B) ? B : 0; if (V < 0) return (V % 2 ? -1 : 1) * H(B, -V); if (B < 0) return (V % 2 ? -1 : 1) * H(-B, V); if (V === 0) return _(B); if (V === 1) return j(B); if (B === 0) return 0; var k = 0; if (B > V) k = a(B, V, _(B), j(B), -1); else { for (var q = !1, Q = 0, hn = 0, en = 1, Kn = 0, $t = 2 / B, gn = 2 * t.floor((V + t.floor(t.sqrt(40 * V))) / 2); gn > 0; gn--) Kn = gn * $t * en - Q, Q = en, en = Kn, t.abs(en) > 1e10 && (en *= 1e-10, Q *= 1e-10, k *= 1e-10, hn *= 1e-10), q && (hn += en), q = !q, gn == V && (k = Q); k /= hn = 2 * hn - en; } return k; }; }(), x = (u = 0.636619772, o = [-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(R) { var O = 0, D = 0, C = 0, L = R * R, _ = R - 0.785398164; return R < 8 ? O = (D = e(o, L)) / (C = e(i, L)) + u * w(R, 0) * t.log(R) : (D = e(l, L = 64 / L), C = e(s, L), O = t.sqrt(u / R) * (t.sin(_) * D + t.cos(_) * C * 8 / R)), O; }, function(R) { var O = 0, D = 0, C = 0, L = R * R, _ = R - 2.356194491; return R < 8 ? O = (D = R * e(f, L)) / (C = e(m, L)) + u * (w(R, 1) * t.log(R) - 1 / R) : (D = e(g, L = 64 / L), C = e(p, L), O = t.sqrt(u / R) * (t.sin(_) * D + t.cos(_) * C * 8 / R)), O; }, 0, 1, -1)), U = (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 R(O, D) { if ((D = Math.round(D)) === 0) return (C = O) <= 3.75 ? e(c, C * C / 14.0625) : t.exp(t.abs(C)) / t.sqrt(t.abs(C)) * e(h, 3.75 / t.abs(C)); var C; if (D === 1) return function(j) { return j < 3.75 ? j * e(d, j * j / 14.0625) : (j < 0 ? -1 : 1) * t.exp(t.abs(j)) / t.sqrt(t.abs(j)) * e(N, 3.75 / t.abs(j)); }(O); if (D < 0) return NaN; if (t.abs(O) === 0) return 0; if (O == 1 / 0) return 1 / 0; var L, _ = 0, z = 2 / t.abs(O), $ = 0, nn = 1, pn = 0; for (L = 2 * t.round((D + t.round(t.sqrt(40 * D))) / 2); L > 0; L--) pn = L * z * nn + $, $ = nn, nn = pn, t.abs(nn) > 1e10 && (nn *= 1e-10, $ *= 1e-10, _ *= 1e-10), L == D && (_ = $); return _ *= R(O, 0) / nn, O < 0 && D % 2 ? -_ : _; }), W = (b = [-0.57721566, 0.4227842, 0.23069756, 0.0348859, 262698e-8, 1075e-7, 74e-7].reverse(), I = [1.25331414, -0.07832358, 0.02189568, -0.01062446, 587872e-8, -25154e-7, 53208e-8].reverse(), T = [1, 0.15443144, -0.67278579, -0.18156897, -0.01919402, -110404e-8, -4686e-8].reverse(), M = [1.25331414, 0.23498619, -0.0365562, 0.01504268, -780353e-8, 325614e-8, -68245e-8].reverse(), r(function(R) { return R <= 2 ? -t.log(R / 2) * U(R, 0) + e(b, R * R / 4) : t.exp(-R) / t.sqrt(R) * e(I, 2 / R); }, function(R) { return R <= 2 ? t.log(R / 2) * U(R, 1) + 1 / R * e(T, R * R / 4) : t.exp(-R) / t.sqrt(R) * e(M, 2 / R); }, 0, 2, 1)); n.besselj = w, n.bessely = x, n.besseli = U, n.besselk = W; }, Jn(typeof DO_NOT_EXPORT_BESSEL > "u" ? nt : {})), nt)), ie = Object.freeze(Object.defineProperty({ __proto__: null, BESSELI: function(n, t) { return (t = Math.trunc(t)) < 0 ? Number.NaN : dn.besseli(n, t); }, BESSELJ: function(n, t) { return (t = Math.trunc(t)) < 0 ? Number.NaN : dn.besselj(n, t); }, BESSELK: function(n, t) { return (t = Math.trunc(t)) < 0 ? Number.NaN : dn.besselk(n, t); }, BESSELY: function(n, t) { return (t = Math.trunc(t)) < 0 ? Number.NaN : dn.bessely(n, t); } }, Symbol.toStringTag, { value: "Module" })), Nn = -512, tn = (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 E.BuiltIn.Num; return n; } if (t === "string") { let e = 0; try { e = 1 * n; } catch { } if (Number.isFinite(e)) return e; } throw E.BuiltIn.Value; }; function tt(n, t) { if (n = tn(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 et(n, t) { if (n < -549755813888 || n > 549755813888) throw E.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 E.BuiltIn.Num; if (t < e.length) throw E.BuiltIn.Num; return "0".repeat(t - e.length) + e.toUpperCase(); } function rt(n, t) { if (n < -536870912 || n > 536870912) throw E.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 E.BuiltIn.Num; if (t < e.length) throw E.BuiltIn.Num; return "0".repeat(t - e.length) + e; } function ot(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 Dn(n) { if (n.length > 10) throw E.BuiltIn.Num; for (const e of n) if (e < "0" || e > "7") throw E.BuiltIn.Num; const t = parseInt(n, 8); return t >= 536870912 ? t - 1073741824 : t; } const le = 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) + Nn : parseInt(t, 2); }, BIN2HEX: function(n, t) { const e = n.toString(); if (e.length > 10) throw E.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 E.BuiltIn.Num; if ((t = Math.trunc(t)) >= a.length) return ("0".repeat(t - a.length) + a).toUpperCase(); throw E.BuiltIn.Num; }, BIN2OCT: function(n, t) { let e = n.toString(); if (e.length > 10) throw E.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 E.BuiltIn.Num; if ((t = Math.trunc(t)) >= a.length) return "0".repeat(t - a.length) + a; throw E.BuiltIn.Num; }, BITAND: function(n, t) { return (n = tn(n)) & tn(t); }, BITLSHIFT: tt, BITOR: function(n, t) { return (n = tn(n)) | tn(t); }, BITRSHIFT: function(n, t) { return tt(n = tn(n), -t); }, BITXOR: function(n, t) { return (n = tn(n)) ^ tn(t); }, DEC2BIN: function(n, t) { if (n < Nn || n > 511) throw E.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 E.BuiltIn.Num; if (t < e.length) throw E.BuiltIn.Num; return "0".repeat(t - e.length) + e; }, DEC2HEX: et, DEC2OCT: rt, 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 < Nn || 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: ot, HEX2OCT: function(n, t) { if (n.length > 10 || !/^[0-9a-fA-F]*$/.test(n)) throw E.BuiltIn.Num; const e = ot(n); if (e > 536870911 || e < -536870912) throw E.BuiltIn.Num; return rt(e, t); }, OCT2BIN: function(n, t) { if (n.length > 10) throw E.BuiltIn.Num; if (t > 10) throw E.BuiltIn.Num; if (t !== void 0 && t < 0) throw E.BuiltIn.Num; t = Math.trunc(t); const e = n.length === 10 && n.substring(0, 1) === "7", a = Dn(n); if (a < Nn || a > 511) throw E.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 E.BuiltIn.Num; return "0".repeat(t - r.length) + r; }, OCT2DEC: Dn, 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 = et(Dn(n)); return t === 0 ? e : t < e.length ? Number.NaN : "0".repeat(t - e.length) + e; } }, Symbol.toStringTag, { value: "Module" })), se = 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"] }, u = { 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 o, i = null, l = null, s = t, f = e, m = 1, g = 1; for (let p = 0; p < a.length; p++) o = a[p][2] === null ? [] : a[p][2], (a[p][1] === s || o.indexOf(s) >= 0) && (i = a[p]), (a[p][1] === f || o.indexOf(f) >= 0) && (l = a[p]); if (i === null) { const p = r[t.substring(0, 2)]; let c = u[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++) o = a[h][2] === null ? [] : a[h][2], (a[h][1] === s || o.indexOf(s) >= 0) && (i = a[h]); } if (l === null) { const p = r[e.substring(0, 2)]; let c = u[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++) o = a[h][2] === null ? [] : a[h][2], (a[h][1] === f || o.indexOf(f) >= 0) && (l = a[h]); } if (i === null || l === null) throw E.BuiltIn.NA; if (i[3] !== l[3]) throw E.BuiltIn.NA; return n * i[6] * m / (l[6] * g); } }, Symbol.toStringTag, { value: "Module" })), fe = 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 ut, y, at = { exports: {} }, ce = (ut || (ut = 1, at.exports = (y = function(n, t) { var e = Array.prototype.concat, a = Array.prototype.slice, r = Object.prototype.toString; function u(c, h) { var d = c > h ? c : h; return n.pow(10, 17 - ~~(n.log(d > 0 ? d : -d) * n.LOG10E)); } var o = 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 (o(c[0])) if (o(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: u, isArray: o, 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 o(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 (o(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), b = 0; b < c.length; b++) N[b] = [c[b][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, b, I, T = []; for (o(c[0]) || (c = [c]), d = c.length, N = c[0].length, I = 0; I < N; I++) { for (h = new Array(d), b = 0; b < d; b++) h[b] = c[b][I]; T.push(h); } return T.length === 1 ? T[0] : T; }, s.map = function(c, h, d) { var N, b, I, T, M; for (o(c[0]) || (c = [c]), b = c.length, I = c[0].length, T = d ? c : new Array(b), N = 0; N < b; 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, b, I, T, M; for (o(c[0]) || (c = [c]), b = c.length, I = c[0].length, T = d ? c : new Array(b), N = 0; N < b; 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, b, I = new Array(c); for (i(h) && (d = h, h = c), N = 0; N < c; N++) for (I[N] = new Array(h), b = 0; b < h; b++) I[N][b] = d(N, b); 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 b, I = [], T = u(c, h), M = (h * T - c * T) / ((d - 1) * T), w = c; for (b = 0; w <= h && b < d; w = (c * T + M * T * ++b) / T) I.push(N ? N(w, b) : w); return I; }, s.arange = function(c, h, d) { var N, b = []; 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) b.push(N); else for (N = c; N > h; N += d) b.push(N); return b; }, s.slice = /* @__PURE__ */ function() { function c(h, d, N, b) { var I, T = [], M = h.length; if (d === t && N === t && b === t) return s.copy(h); if (b = b || 1, (d = (d = d || 0) >= 0 ? d : M + d) === (N = (N = N || h.length) >= 0 ? N : M + N) || b === 0) return []; if (d < N && b < 0) return []; if (d > N && b > 0) return []; if (b > 0) for (I = d; I < N; I += b) T.push(h[I]); else for (I = d; I > N; I += b) T.push(h[I]); return T; } return function(h, d) { var N, b; 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), (b = d.row || {}).start, b.end, b.step) : (b = d.row || {}, N = d.col || {}, c(h, b.start, b.end, b.step).map(function(I) { return c(I, N.start, N.end, N.step); })); }; }(), s.sliceAssign = function(c, h, d) { var N, b; 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, w) { c[I][M] = d[w]; }), 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, b = s.arange(h.row.start, n.min(c[0].length, h.row.end), h.row.step); var T = h.col; return b.forEach(function(M, w) { c[M][T] = d[w]; }), 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, b = 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), b.forEach(function(M, w) { N.forEach(function(x, U) { c[M][x] = d[w][U]; }); }), 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 b, I = this; return N ? (setTimeout(function() { N.call(I, p[d].call(I)); }), this) : (b = s[d](this), o(b) ? s(b) : b); }; })(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, b) { var I = this; return b ? (setTimeout(function() { b.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(o, i) { return o - i; } function r(o, i, l) { return t.max(i, t.min(o, l)); } n.sum = function(o) { for (var i = 0, l = o.length; --l >= 0; ) i += o[l]; return i; }, n.sumsqrd = function(o) { for (var i = 0, l = o.length; --l >= 0; ) i += o[l] * o[l]; return i; }, n.sumsqerr = function(o) { for (var i, l = n.mean(o), s = 0, f = o.length; --f >= 0; ) s += (i = o[f] - l) * i; return s; }, n.sumrow = function(o) { for (var i = 0, l = o.length; --l >= 0; ) i += o[l]; return i; }, n.product = function(o) { for (var i = 1, l = o.length; --l >= 0; ) i *= o[l]; return i; }, n.min = function(o) { for (var i = o[0], l = 0; ++l < o.length; ) o[l] < i && (i = o[l]); return i; }, n.max = function(o) { for (var i = o[0], l = 0; ++l < o.length; ) o[l] > i && (i = o[l]); return i; }, n.unique = function(o) { for (var i = {}, l = [], s = 0; s < o.length; s++) i[o[s]] || (i[o[s]] = !0, l.push(o[s])); return l; }, n.mean = function(o) { return n.sum(o) / o.length; }, n.meansqerr = function(o) { return n.sumsqerr(o) / o.length; }, n.geomean = function(o) { var i = o.map(t.log), l = n.mean(i); return t.exp(l); }, n.median = function(o) { var i = o.length, l = o.slice().sort(a); return 1 & i ? l[i / 2 | 0] : (l[i / 2 - 1] + l[i / 2]) / 2; }, n.cumsum = function(o) { return n.cumreduce(o, function(i, l) { return i + l; }); }, n.cumprod = function(o) { return n.cumreduce(o, function(i, l) { return i * l; }); }, n.diff = function(o) { var i, l = [], s = o.length; for (i = 1; i < s; i++) l.push(o[i] - o[i - 1]); return l; }, n.rank = function(o) { var i, l = [], s = {}; for (i = 0; i < o.length; i++) s[p = o[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 o.map(function(d) { return m[d]; }); }, n.mode = function(o) { var i, l = o.length, s = o.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(o) { return n.max(o) - n.min(o); }, n.variance = function(o, i) { return n.sumsqerr(o) / (o.length - (i ? 1 : 0)); }, n.pooledvariance = function(o) { return o.reduce(function(i, l) { return i + n.sumsqerr(l); }, 0) / (o.reduce(function(i, l) { return i + l.length; }, 0) - o.length); }, n.deviation = function(o) { for (var i = n.mean(o), l = o.length, s = new Array(l), f = 0; f < l; f++) s[f] = o[f] - i; return s; }, n.stdev = function(o, i) { return t.sqrt(n.variance(o, i)); }, n.pooledstdev = function(o) { return t.sqrt(n.pooledvariance(o)); }, n.meandev = function(o) { for (var i = n.mean(o), l = [], s = o.length - 1; s >= 0; s--) l.push(t.abs(o[s] - i)); return n.mean(l); }, n.meddev = function(o) { for (var i = n.median(o), l = [], s = o.length - 1; s >= 0; s--) l.push(t.abs(o[s] - i)); return n.median(l); }, n.coeffvar = function(o) { return n.stdev(o) / n.mean(o); }, n.quartiles = function(o) { var i = o.length, l = o.slice().sort(a); retu