MediaWiki:Gadget-luxon.js

MediaWiki界面页面
一位史蒂夫讨论 | 贡献2024年1月2日 (二) 23:26的版本
(差异) ←上一版本 | 最后版本 (差异) | 下一版本→ (差异)

注意:在发布之后,您可能需要清除浏览器缓存才能看到所作出的变更的影响。

  • Firefox或Safari:按住Shift的同时单击刷新,或按Ctrl-F5Ctrl-R(Mac为⌘-R
  • Google Chrome:Ctrl-Shift-R(Mac为⌘-Shift-R
  • Internet Explorer或Edge:按住Ctrl的同时单击刷新,或按Ctrl-F5
  • Opera:Ctrl-F5
"use strict";
var luxon = function (e) {
    "use strict";
    function A(e, t) { for (var n = 0; n < t.length; n++) {
        var r = t[n];
        r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r);
    } }
    function o(e, t, n) { t && A(e.prototype, t), n && A(e, n), Object.defineProperty(e, "prototype", { writable: !1 }); }
    function s() { return (s = Object.assign ? Object.assign.bind() : function (e) { for (var t = 1; t < arguments.length; t++) {
        var n, r = arguments[t];
        for (n in r)
            Object.prototype.hasOwnProperty.call(r, n) && (e[n] = r[n]);
    } return e; }).apply(this, arguments); }
    function i(e, t) { e.prototype = Object.create(t.prototype), z(e.prototype.constructor = e, t); }
    function j(e) { return (j = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function (e) { return e.__proto__ || Object.getPrototypeOf(e); })(e); }
    function z(e, t) { return (z = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (e, t) { return e.__proto__ = t, e; })(e, t); }
    function q(e, t, n) { return (q = function () { if ("undefined" != typeof Reflect && Reflect.construct && !Reflect.construct.sham) {
        if ("function" == typeof Proxy)
            return 1;
        try {
            return Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () { })), 1;
        }
        catch (e) {
            return;
        }
    } }() ? Reflect.construct.bind() : function (e, t, n) { var r = [null]; r.push.apply(r, t); t = new (Function.bind.apply(e, r)); return n && z(t, n.prototype), t; }).apply(null, arguments); }
    function _(e) { var n = "function" == typeof Map ? new Map : void 0; return function (e) { if (null === e || -1 === Function.toString.call(e).indexOf("[native code]"))
        return e; if ("function" != typeof e)
        throw new TypeError("Super expression must either be null or a function"); if (void 0 !== n) {
        if (n.has(e))
            return n.get(e);
        n.set(e, t);
    } function t() { return q(e, arguments, j(this).constructor); } return t.prototype = Object.create(e.prototype, { constructor: { value: t, enumerable: !1, writable: !0, configurable: !0 } }), z(t, e); }(e); }
    function U(e, t) { if (null == e)
        return {}; for (var n, r = {}, i = Object.keys(e), o = 0; o < i.length; o++)
        n = i[o], 0 <= t.indexOf(n) || (r[n] = e[n]); return r; }
    function P(e, t) { (null == t || t > e.length) && (t = e.length); for (var n = 0, r = new Array(t); n < t; n++)
        r[n] = e[n]; return r; }
    function g(e, t) { var n, r = "undefined" != typeof Symbol && e[Symbol.iterator] || e["@@iterator"]; if (r)
        return (r = r.call(e)).next.bind(r); if (Array.isArray(e) || (r = function (e, t) { if (e) {
        if ("string" == typeof e)
            return P(e, t);
        var n = Object.prototype.toString.call(e).slice(8, -1);
        return "Map" === (n = "Object" === n && e.constructor ? e.constructor.name : n) || "Set" === n ? Array.from(e) : "Arguments" === n || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n) ? P(e, t) : void 0;
    } }(e)) || t && e && "number" == typeof e.length)
        return r && (e = r), n = 0, function () { return n >= e.length ? { done: !0 } : { done: !1, value: e[n++] }; }; throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
    var t = function (e) { function t() { return e.apply(this, arguments) || this; } return i(t, e), t; }(_(Error)), R = function (t) { function e(e) { return t.call(this, "Invalid DateTime: " + e.toMessage()) || this; } return i(e, t), e; }(t), H = function (t) { function e(e) { return t.call(this, "Invalid Interval: " + e.toMessage()) || this; } return i(e, t), e; }(t), W = function (t) { function e(e) { return t.call(this, "Invalid Duration: " + e.toMessage()) || this; } return i(e, t), e; }(t), J = function (e) { function t() { return e.apply(this, arguments) || this; } return i(t, e), t; }(t), Y = function (t) { function e(e) { return t.call(this, "Invalid unit " + e) || this; } return i(e, t), e; }(t), u = function (e) { function t() { return e.apply(this, arguments) || this; } return i(t, e), t; }(t), n = function (e) { function t() { return e.call(this, "Zone is an abstract class") || this; } return i(t, e), t; }(t), t = "numeric", r = "short", a = "long", G = { year: t, month: t, day: t }, $ = { year: t, month: r, day: t }, B = { year: t, month: r, day: t, weekday: r }, Q = { year: t, month: a, day: t }, K = { year: t, month: a, day: t, weekday: a }, X = { hour: t, minute: t }, ee = { hour: t, minute: t, second: t }, te = { hour: t, minute: t, second: t, timeZoneName: r }, ne = { hour: t, minute: t, second: t, timeZoneName: a }, re = { hour: t, minute: t, hourCycle: "h23" }, ie = { hour: t, minute: t, second: t, hourCycle: "h23" }, oe = { hour: t, minute: t, second: t, hourCycle: "h23", timeZoneName: r }, ae = { hour: t, minute: t, second: t, hourCycle: "h23", timeZoneName: a }, ue = { year: t, month: t, day: t, hour: t, minute: t }, se = { year: t, month: t, day: t, hour: t, minute: t, second: t }, ce = { year: t, month: r, day: t, hour: t, minute: t }, le = { year: t, month: r, day: t, hour: t, minute: t, second: t }, fe = { year: t, month: r, day: t, weekday: r, hour: t, minute: t }, de = { year: t, month: a, day: t, hour: t, minute: t, timeZoneName: r }, he = { year: t, month: a, day: t, hour: t, minute: t, second: t, timeZoneName: r }, me = { year: t, month: a, day: t, weekday: a, hour: t, minute: t, timeZoneName: a }, ye = { year: t, month: a, day: t, weekday: a, hour: t, minute: t, second: t, timeZoneName: a };
    function w(e) { return void 0 === e; }
    function y(e) { return "number" == typeof e; }
    function ve(e) { return "number" == typeof e && e % 1 == 0; }
    function pe() { try {
        return "undefined" != typeof Intl && !!Intl.RelativeTimeFormat;
    }
    catch (e) {
        return !1;
    } }
    function ge(e, n, r) { if (0 !== e.length)
        return e.reduce(function (e, t) { t = [n(t), t]; return e && r(e[0], t[0]) === e[0] ? e : t; }, null)[1]; }
    function f(e, t) { return Object.prototype.hasOwnProperty.call(e, t); }
    function k(e, t, n) { return ve(e) && t <= e && e <= n; }
    function c(e, t) { void 0 === t && (t = 2); e = e < 0 ? "-" + ("" + -e).padStart(t, "0") : ("" + e).padStart(t, "0"); return e; }
    function l(e) { if (!w(e) && null !== e && "" !== e)
        return parseInt(e, 10); }
    function d(e) { if (!w(e) && null !== e && "" !== e)
        return parseFloat(e); }
    function we(e) { if (!w(e) && null !== e && "" !== e)
        return e = 1e3 * parseFloat("0." + e), Math.floor(e); }
    function ke(e, t, n) { void 0 === n && (n = !1); t = Math.pow(10, t); return (n ? Math.trunc : Math.round)(e * t) / t; }
    function be(e) { return e % 4 == 0 && (e % 100 != 0 || e % 400 == 0); }
    function Te(e) { return be(e) ? 366 : 365; }
    function Se(e, t) { var n, r = (r = t - 1) - (n = 12) * Math.floor(r / n) + 1; return 2 == r ? be(e + (t - r) / 12) ? 29 : 28 : [31, null, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31][r - 1]; }
    function Oe(e) { var t = Date.UTC(e.year, e.month - 1, e.day, e.hour, e.minute, e.second, e.millisecond); return e.year < 100 && 0 <= e.year && (t = new Date(t)).setUTCFullYear(t.getUTCFullYear() - 1900), +t; }
    function Me(e) { var t = (e + Math.floor(e / 4) - Math.floor(e / 100) + Math.floor(e / 400)) % 7, e = e - 1, e = (e + Math.floor(e / 4) - Math.floor(e / 100) + Math.floor(e / 400)) % 7; return 4 == t || 3 == e ? 53 : 52; }
    function Ne(e) { return 99 < e ? e : 60 < e ? 1900 + e : 2e3 + e; }
    function De(e, t, n, r) { void 0 === r && (r = null); var e = new Date(e), i = { hourCycle: "h23", year: "numeric", month: "2-digit", day: "2-digit", hour: "2-digit", minute: "2-digit" }, r = (r && (i.timeZone = r), s({ timeZoneName: t }, i)), t = new Intl.DateTimeFormat(n, r).formatToParts(e).find(function (e) { return "timezonename" === e.type.toLowerCase(); }); return t ? t.value : null; }
    function Ee(e, t) { e = parseInt(e, 10), Number.isNaN(e) && (e = 0), t = parseInt(t, 10) || 0; return 60 * e + (e < 0 || Object.is(e, -0) ? -t : t); }
    function Ve(e) { var t = Number(e); if ("boolean" == typeof e || "" === e || Number.isNaN(t))
        throw new u("Invalid unit value " + e); return t; }
    function Ie(e, t) { var n, r, i = {}; for (n in e)
        !f(e, n) || null != (r = e[n]) && (i[t(n)] = Ve(r)); return i; }
    function xe(e, t) { var n = Math.trunc(Math.abs(e / 60)), r = Math.trunc(Math.abs(e % 60)), i = 0 <= e ? "+" : "-"; switch (t) {
        case "short": return i + c(n, 2) + ":" + c(r, 2);
        case "narrow": return i + n + (0 < r ? ":" + r : "");
        case "techie": return i + c(n, 2) + c(r, 2);
        default: throw new RangeError("Value format " + t + " is out of range for property format");
    } }
    function Ce(e) { return n = e, ["hour", "minute", "second", "millisecond"].reduce(function (e, t) { return e[t] = n[t], e; }, {}); var n; }
    var r = /[A-Za-z_+-]{1,256}(?::?\/[A-Za-z0-9_+-]{1,256}(?:\/[A-Za-z0-9_+-]{1,256})?)?/, Fe = ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"], Ze = ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"], Le = ["J", "F", "M", "A", "M", "J", "J", "A", "S", "O", "N", "D"];
    function Ae(e) { switch (e) {
        case "narrow": return [].concat(Le);
        case "short": return [].concat(Ze);
        case "long": return [].concat(Fe);
        case "numeric": return ["1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12"];
        case "2-digit": return ["01", "02", "03", "04", "05", "06", "07", "08", "09", "10", "11", "12"];
        default: return null;
    } }
    var je = ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"], ze = ["Mon", "Tue", "Wed", "Thu", "Fri", "Sat", "Sun"], qe = ["M", "T", "W", "T", "F", "S", "S"];
    function _e(e) { switch (e) {
        case "narrow": return [].concat(qe);
        case "short": return [].concat(ze);
        case "long": return [].concat(je);
        case "numeric": return ["1", "2", "3", "4", "5", "6", "7"];
        default: return null;
    } }
    var Ue = ["AM", "PM"], Pe = ["Before Christ", "Anno Domini"], Re = ["BC", "AD"], He = ["B", "A"];
    function We(e) { switch (e) {
        case "narrow": return [].concat(He);
        case "short": return [].concat(Re);
        case "long": return [].concat(Pe);
        default: return null;
    } }
    function Je(e, t) { for (var n = "", r = g(e); !(i = r()).done;) {
        var i = i.value;
        i.literal ? n += i.val : n += t(i.val);
    } return n; }
    var Ye = { D: G, DD: $, DDD: Q, DDDD: K, t: X, tt: ee, ttt: te, tttt: ne, T: re, TT: ie, TTT: oe, TTTT: ae, f: ue, ff: ce, fff: de, ffff: me, F: se, FF: le, FFF: he, FFFF: ye }, h = function () { function d(e, t) { this.opts = t, this.loc = e, this.systemLoc = null; } d.create = function (e, t) { return new d(e, t = void 0 === t ? {} : t); }, d.parseFormat = function (e) { for (var t = null, n = "", r = !1, i = [], o = 0; o < e.length; o++) {
        var a = e.charAt(o);
        "'" === a ? (0 < n.length && i.push({ literal: r, val: n }), t = null, n = "", r = !r) : r || a === t ? n += a : (0 < n.length && i.push({ literal: !1, val: n }), t = n = a);
    } return 0 < n.length && i.push({ literal: r, val: n }), i; }, d.macroTokenToFormatOpts = function (e) { return Ye[e]; }; var e = d.prototype; return e.formatWithSystemDefault = function (e, t) { return null === this.systemLoc && (this.systemLoc = this.loc.redefaultToSystem()), this.systemLoc.dtFormatter(e, s({}, this.opts, t)).format(); }, e.formatDateTime = function (e, t) { return this.loc.dtFormatter(e, s({}, this.opts, t = void 0 === t ? {} : t)).format(); }, e.formatDateTimeParts = function (e, t) { return this.loc.dtFormatter(e, s({}, this.opts, t = void 0 === t ? {} : t)).formatToParts(); }, e.resolvedOptions = function (e, t) { return this.loc.dtFormatter(e, s({}, this.opts, t = void 0 === t ? {} : t)).resolvedOptions(); }, e.num = function (e, t) { if (void 0 === t && (t = 0), this.opts.forceSimple)
        return c(e, t); var n = s({}, this.opts); return 0 < t && (n.padTo = t), this.loc.numberFormatter(n).format(e); }, e.formatDateTimeFromString = function (r, e) { var n = this, i = "en" === this.loc.listingMode(), t = this.loc.outputCalendar && "gregory" !== this.loc.outputCalendar, o = function (e, t) { return n.loc.extract(r, e, t); }, a = function (e) { return r.isOffsetFixed && 0 === r.offset && e.allowZ ? "Z" : r.isValid ? r.zone.formatOffset(r.ts, e.format) : ""; }, u = function () { return i ? Ue[r.hour < 12 ? 0 : 1] : o({ hour: "numeric", hourCycle: "h12" }, "dayperiod"); }, s = function (e, t) { return i ? (n = r, Ae(e)[n.month - 1]) : o(t ? { month: e } : { month: e, day: "numeric" }, "month"); var n; }, c = function (e, t) { return i ? (n = r, _e(e)[n.weekday - 1]) : o(t ? { weekday: e } : { weekday: e, month: "long", day: "numeric" }, "weekday"); var n; }, l = function (e) { var t = d.macroTokenToFormatOpts(e); return t ? n.formatWithSystemDefault(r, t) : e; }, f = function (e) { return i ? (t = r, We(e)[t.year < 0 ? 0 : 1]) : o({ era: e }, "era"); var t; }; return Je(d.parseFormat(e), function (e) { switch (e) {
        case "S": return n.num(r.millisecond);
        case "u":
        case "SSS": return n.num(r.millisecond, 3);
        case "s": return n.num(r.second);
        case "ss": return n.num(r.second, 2);
        case "uu": return n.num(Math.floor(r.millisecond / 10), 2);
        case "uuu": return n.num(Math.floor(r.millisecond / 100));
        case "m": return n.num(r.minute);
        case "mm": return n.num(r.minute, 2);
        case "h": return n.num(r.hour % 12 == 0 ? 12 : r.hour % 12);
        case "hh": return n.num(r.hour % 12 == 0 ? 12 : r.hour % 12, 2);
        case "H": return n.num(r.hour);
        case "HH": return n.num(r.hour, 2);
        case "Z": return a({ format: "narrow", allowZ: n.opts.allowZ });
        case "ZZ": return a({ format: "short", allowZ: n.opts.allowZ });
        case "ZZZ": return a({ format: "techie", allowZ: n.opts.allowZ });
        case "ZZZZ": return r.zone.offsetName(r.ts, { format: "short", locale: n.loc.locale });
        case "ZZZZZ": return r.zone.offsetName(r.ts, { format: "long", locale: n.loc.locale });
        case "z": return r.zoneName;
        case "a": return u();
        case "d": return t ? o({ day: "numeric" }, "day") : n.num(r.day);
        case "dd": return t ? o({ day: "2-digit" }, "day") : n.num(r.day, 2);
        case "c": return n.num(r.weekday);
        case "ccc": return c("short", !0);
        case "cccc": return c("long", !0);
        case "ccccc": return c("narrow", !0);
        case "E": return n.num(r.weekday);
        case "EEE": return c("short", !1);
        case "EEEE": return c("long", !1);
        case "EEEEE": return c("narrow", !1);
        case "L": return t ? o({ month: "numeric", day: "numeric" }, "month") : n.num(r.month);
        case "LL": return t ? o({ month: "2-digit", day: "numeric" }, "month") : n.num(r.month, 2);
        case "LLL": return s("short", !0);
        case "LLLL": return s("long", !0);
        case "LLLLL": return s("narrow", !0);
        case "M": return t ? o({ month: "numeric" }, "month") : n.num(r.month);
        case "MM": return t ? o({ month: "2-digit" }, "month") : n.num(r.month, 2);
        case "MMM": return s("short", !1);
        case "MMMM": return s("long", !1);
        case "MMMMM": return s("narrow", !1);
        case "y": return t ? o({ year: "numeric" }, "year") : n.num(r.year);
        case "yy": return t ? o({ year: "2-digit" }, "year") : n.num(r.year.toString().slice(-2), 2);
        case "yyyy": return t ? o({ year: "numeric" }, "year") : n.num(r.year, 4);
        case "yyyyyy": return t ? o({ year: "numeric" }, "year") : n.num(r.year, 6);
        case "G": return f("short");
        case "GG": return f("long");
        case "GGGGG": return f("narrow");
        case "kk": return n.num(r.weekYear.toString().slice(-2), 2);
        case "kkkk": return n.num(r.weekYear, 4);
        case "W": return n.num(r.weekNumber);
        case "WW": return n.num(r.weekNumber, 2);
        case "o": return n.num(r.ordinal);
        case "ooo": return n.num(r.ordinal, 3);
        case "q": return n.num(r.quarter);
        case "qq": return n.num(r.quarter, 2);
        case "X": return n.num(Math.floor(r.ts / 1e3));
        case "x": return n.num(r.ts);
        default: return l(e);
    } }); }, e.formatDurationFromString = function (e, t) { var n, r = this, i = function (e) { switch (e[0]) {
        case "S": return "millisecond";
        case "s": return "second";
        case "m": return "minute";
        case "h": return "hour";
        case "d": return "day";
        case "w": return "week";
        case "M": return "month";
        case "y": return "year";
        default: return null;
    } }, t = d.parseFormat(t), o = t.reduce(function (e, t) { var n = t.literal, t = t.val; return n ? e : e.concat(t); }, []), e = e.shiftTo.apply(e, o.map(i).filter(function (e) { return e; })); return Je(t, (n = e, function (e) { var t = i(e); return t ? r.num(n.get(t), e.length) : e; })); }, d; }(), v = function () { function e(e, t) { this.reason = e, this.explanation = t; } return e.prototype.toMessage = function () { return this.explanation ? this.reason + ": " + this.explanation : this.reason; }, e; }(), m = function () { function e() { } var t = e.prototype; return t.offsetName = function (e, t) { throw new n; }, t.formatOffset = function (e, t) { throw new n; }, t.offset = function (e) { throw new n; }, t.equals = function (e) { throw new n; }, o(e, [{ key: "type", get: function () { throw new n; } }, { key: "name", get: function () { throw new n; } }, { key: "ianaName", get: function () { return this.name; } }, { key: "isUniversal", get: function () { throw new n; } }, { key: "isValid", get: function () { throw new n; } }]), e; }(), Ge = null, $e = function (e) { function t() { return e.apply(this, arguments) || this; } i(t, e); var n = t.prototype; return n.offsetName = function (e, t) { return De(e, t.format, t.locale); }, n.formatOffset = function (e, t) { return xe(this.offset(e), t); }, n.offset = function (e) { return -new Date(e).getTimezoneOffset(); }, n.equals = function (e) { return "system" === e.type; }, o(t, [{ key: "type", get: function () { return "system"; } }, { key: "name", get: function () { return (new Intl.DateTimeFormat).resolvedOptions().timeZone; } }, { key: "isUniversal", get: function () { return !1; } }, { key: "isValid", get: function () { return !0; } }], [{ key: "instance", get: function () { return Ge = null === Ge ? new t : Ge; } }]), t; }(m), Be = {};
    var Qe = { year: 0, month: 1, day: 2, era: 3, hour: 4, minute: 5, second: 6 };
    var Ke = {}, p = function (n) { function r(e) { var t = n.call(this) || this; return t.zoneName = e, t.valid = r.isValidZone(e), t; } i(r, n), r.create = function (e) { return Ke[e] || (Ke[e] = new r(e)), Ke[e]; }, r.resetCache = function () { Ke = {}, Be = {}; }, r.isValidSpecifier = function (e) { return this.isValidZone(e); }, r.isValidZone = function (e) { if (!e)
        return !1; try {
        return new Intl.DateTimeFormat("en-US", { timeZone: e }).format(), !0;
    }
    catch (e) {
        return !1;
    } }; var e = r.prototype; return e.offsetName = function (e, t) { return De(e, t.format, t.locale, this.name); }, e.formatOffset = function (e, t) { return xe(this.offset(e), t); }, e.offset = function (e) { e = new Date(e); if (isNaN(e))
        return NaN; t = this.name, Be[t] || (Be[t] = new Intl.DateTimeFormat("en-US", { hour12: !1, timeZone: t, year: "numeric", month: "2-digit", day: "2-digit", hour: "2-digit", minute: "2-digit", second: "2-digit", era: "short" })); var t = Be[t], t = t.formatToParts ? function (e, t) { for (var n = e.formatToParts(t), r = [], i = 0; i < n.length; i++) {
        var o = n[i], a = o.type, o = o.value, u = Qe[a];
        "era" === a ? r[u] = o : w(u) || (r[u] = parseInt(o, 10));
    } return r; }(t, e) : (r = e, t = (t = t).format(r).replace(/\u200E/g, ""), t = (r = /(\d+)\/(\d+)\/(\d+) (AD|BC),? (\d+):(\d+):(\d+)/.exec(t))[1], n = r[2], [r[3], t, n, r[4], r[5], r[6], r[7]]), n = t[0], r = t[1], i = t[2], o = t[3], a = t[4], u = t[5], t = t[6], a = 24 === a ? 0 : a, e = +e, s = e % 1e3; return (Oe({ year: n = "BC" === o ? 1 - Math.abs(n) : n, month: r, day: i, hour: a, minute: u, second: t, millisecond: 0 }) - (e -= 0 <= s ? s : 1e3 + s)) / 6e4; }, e.equals = function (e) { return "iana" === e.type && e.name === this.name; }, o(r, [{ key: "type", get: function () { return "iana"; } }, { key: "name", get: function () { return this.zoneName; } }, { key: "isUniversal", get: function () { return !1; } }, { key: "isValid", get: function () { return this.valid; } }]), r; }(m), Xe = null, b = function (n) { function t(e) { var t = n.call(this) || this; return t.fixed = e, t; } i(t, n), t.instance = function (e) { return 0 === e ? t.utcInstance : new t(e); }, t.parseSpecifier = function (e) { if (e) {
        e = e.match(/^utc(?:([+-]\d{1,2})(?::(\d{2}))?)?$/i);
        if (e)
            return new t(Ee(e[1], e[2]));
    } return null; }; var e = t.prototype; return e.offsetName = function () { return this.name; }, e.formatOffset = function (e, t) { return xe(this.fixed, t); }, e.offset = function () { return this.fixed; }, e.equals = function (e) { return "fixed" === e.type && e.fixed === this.fixed; }, o(t, [{ key: "type", get: function () { return "fixed"; } }, { key: "name", get: function () { return 0 === this.fixed ? "UTC" : "UTC" + xe(this.fixed, "narrow"); } }, { key: "ianaName", get: function () { return 0 === this.fixed ? "Etc/UTC" : "Etc/GMT" + xe(-this.fixed, "narrow"); } }, { key: "isUniversal", get: function () { return !0; } }, { key: "isValid", get: function () { return !0; } }], [{ key: "utcInstance", get: function () { return Xe = null === Xe ? new t(0) : Xe; } }]), t; }(m), et = function (n) { function e(e) { var t = n.call(this) || this; return t.zoneName = e, t; } i(e, n); var t = e.prototype; return t.offsetName = function () { return null; }, t.formatOffset = function () { return ""; }, t.offset = function () { return NaN; }, t.equals = function () { return !1; }, o(e, [{ key: "type", get: function () { return "invalid"; } }, { key: "name", get: function () { return this.zoneName; } }, { key: "isUniversal", get: function () { return !1; } }, { key: "isValid", get: function () { return !1; } }]), e; }(m);
    function T(e, t) { var n; return w(e) || null === e ? t : e instanceof m ? e : "string" == typeof e ? "default" === (n = e.toLowerCase()) ? t : "local" === n || "system" === n ? $e.instance : "utc" === n || "gmt" === n ? b.utcInstance : b.parseSpecifier(n) || p.create(e) : y(e) ? b.instance(e) : "object" == typeof e && e.offset && "number" == typeof e.offset ? e : new et(e); }
    var tt, nt = function () { return Date.now(); }, rt = "system", it = null, ot = null, at = null, S = function () { function e() { } return e.resetCaches = function () { O.resetCache(), p.resetCache(); }, o(e, null, [{ key: "now", get: function () { return nt; }, set: function (e) { nt = e; } }, { key: "defaultZone", get: function () { return T(rt, $e.instance); }, set: function (e) { rt = e; } }, { key: "defaultLocale", get: function () { return it; }, set: function (e) { it = e; } }, { key: "defaultNumberingSystem", get: function () { return ot; }, set: function (e) { ot = e; } }, { key: "defaultOutputCalendar", get: function () { return at; }, set: function (e) { at = e; } }, { key: "throwOnInvalid", get: function () { return tt; }, set: function (e) { tt = e; } }]), e; }(), ut = ["base"], st = ["padTo", "floor"], ct = {};
    var lt = {};
    function ft(e, t) { void 0 === t && (t = {}); var n = JSON.stringify([e, t]), r = lt[n]; return r || (r = new Intl.DateTimeFormat(e, t), lt[n] = r), r; }
    var dt = {};
    var ht = {};
    var mt = null;
    function yt(e, t, n, r, i) { e = e.listingMode(n); return "error" === e ? null : ("en" === e ? r : i)(t); }
    var vt = function () { function e(e, t, n) { this.padTo = n.padTo || 0, this.floor = n.floor || !1, n.padTo, n.floor; var r = U(n, st); (!t || 0 < Object.keys(r).length) && (t = s({ useGrouping: !1 }, n), 0 < n.padTo && (t.minimumIntegerDigits = n.padTo), this.inf = (r = e, void 0 === (n = t) && (n = {}), e = JSON.stringify([r, n]), (t = dt[e]) || (t = new Intl.NumberFormat(r, n), dt[e] = t), t)); } return e.prototype.format = function (e) { var t; return this.inf ? (t = this.floor ? Math.floor(e) : e, this.inf.format(t)) : c(this.floor ? Math.floor(e) : ke(e, 3), this.padTo); }, e; }(), pt = function () { function e(e, t, n) { this.opts = n, e.zone.isUniversal ? (i = 0 <= (i = e.offset / 60 * -1) ? "Etc/GMT+" + i : "Etc/GMT" + i, 0 !== e.offset && p.create(i).valid ? (r = i, this.dt = e) : (r = "UTC", n.timeZoneName ? this.dt = e : this.dt = 0 === e.offset ? e : L.fromMillis(e.ts + 60 * e.offset * 1e3))) : "system" === e.zone.type ? this.dt = e : r = (this.dt = e).zone.name; var r, i = s({}, this.opts); r && (i.timeZone = r), this.dtf = ft(t, i); } var t = e.prototype; return t.format = function () { return this.dtf.format(this.dt.toJSDate()); }, t.formatToParts = function () { return this.dtf.formatToParts(this.dt.toJSDate()); }, t.resolvedOptions = function () { return this.dtf.resolvedOptions(); }, e; }(), gt = function () { function e(e, t, n) { var r; this.opts = s({ style: "long" }, n), !t && pe() && (this.rtf = (t = e, (n = e = void 0 === (e = n) ? {} : e).base, n = U(n = e, ut), n = JSON.stringify([t, n]), (r = ht[n]) || (r = new Intl.RelativeTimeFormat(t, e), ht[n] = r), r)); } var t = e.prototype; return t.format = function (e, t) { if (this.rtf)
        return this.rtf.format(e, t); var n = t, t = e, e = this.opts.numeric, r = "long" !== this.opts.style, i = (void 0 === e && (e = "always"), void 0 === r && (r = !1), { years: ["year", "yr."], quarters: ["quarter", "qtr."], months: ["month", "mo."], weeks: ["week", "wk."], days: ["day", "day", "days"], hours: ["hour", "hr."], minutes: ["minute", "min."], seconds: ["second", "sec."] }), o = -1 === ["hours", "minutes", "seconds"].indexOf(n); if ("auto" === e && o) {
        var a = "days" === n;
        switch (t) {
            case 1: return a ? "tomorrow" : "next " + i[n][0];
            case -1: return a ? "yesterday" : "last " + i[n][0];
            case 0: return a ? "today" : "this " + i[n][0];
        }
    } var e = Object.is(t, -0) || t < 0, t = 1 === (o = Math.abs(t)), u = i[n], r = r ? !t && u[2] || u[1] : t ? i[n][0] : n; return e ? o + " " + r + " ago" : "in " + o + " " + r; }, t.formatToParts = function (e, t) { return this.rtf ? this.rtf.formatToParts(e, t) : []; }, e; }(), O = function () { function i(e, t, n, r) { var e = function (e) { if (-1 === (n = e.indexOf("-u-")))
        return [e]; var t, n = e.substring(0, n); try {
        t = ft(e).resolvedOptions();
    }
    catch (e) {
        t = ft(n).resolvedOptions();
    } return [n, (e = t).numberingSystem, e.calendar]; }(e), i = e[0], o = e[1], e = e[2]; this.locale = i, this.numberingSystem = t || o || null, this.outputCalendar = n || e || null, this.intl = (i = this.locale, t = this.numberingSystem, ((o = this.outputCalendar) || t) && (i += "-u", o && (i += "-ca-" + o), t && (i += "-nu-" + t)), i), this.weekdaysCache = { format: {}, standalone: {} }, this.monthsCache = { format: {}, standalone: {} }, this.meridiemCache = null, this.eraCache = {}, this.specifiedLocale = r, this.fastNumbersCached = null; } i.fromOpts = function (e) { return i.create(e.locale, e.numberingSystem, e.outputCalendar, e.defaultToEN); }, i.create = function (e, t, n, r) { void 0 === r && (r = !1); e = e || S.defaultLocale; return new i(e || (r ? "en-US" : mt = mt || (new Intl.DateTimeFormat).resolvedOptions().locale), t || S.defaultNumberingSystem, n || S.defaultOutputCalendar, e); }, i.resetCache = function () { mt = null, lt = {}, dt = {}, ht = {}; }, i.fromObject = function (e) { var e = void 0 === e ? {} : e, t = e.locale, n = e.numberingSystem, e = e.outputCalendar; return i.create(t, n, e); }; var e = i.prototype; return e.listingMode = function () { var e = this.isEnglish(), t = !(null !== this.numberingSystem && "latn" !== this.numberingSystem || null !== this.outputCalendar && "gregory" !== this.outputCalendar); return e && t ? "en" : "intl"; }, e.clone = function (e) { return e && 0 !== Object.getOwnPropertyNames(e).length ? i.create(e.locale || this.specifiedLocale, e.numberingSystem || this.numberingSystem, e.outputCalendar || this.outputCalendar, e.defaultToEN || !1) : this; }, e.redefaultToEN = function (e) { return this.clone(s({}, e = void 0 === e ? {} : e, { defaultToEN: !0 })); }, e.redefaultToSystem = function (e) { return this.clone(s({}, e = void 0 === e ? {} : e, { defaultToEN: !1 })); }, e.months = function (n, r, e) { var i = this; return void 0 === r && (r = !1), yt(this, n, e = void 0 === e ? !0 : e, Ae, function () { var t = r ? { month: n, day: "numeric" } : { month: n }, e = r ? "format" : "standalone"; return i.monthsCache[e][n] || (i.monthsCache[e][n] = function (e) { for (var t = [], n = 1; n <= 12; n++) {
        var r = L.utc(2016, n, 1);
        t.push(e(r));
    } return t; }(function (e) { return i.extract(e, t, "month"); })), i.monthsCache[e][n]; }); }, e.weekdays = function (n, r, e) { var i = this; return void 0 === r && (r = !1), yt(this, n, e = void 0 === e ? !0 : e, _e, function () { var t = r ? { weekday: n, year: "numeric", month: "long", day: "numeric" } : { weekday: n }, e = r ? "format" : "standalone"; return i.weekdaysCache[e][n] || (i.weekdaysCache[e][n] = function (e) { for (var t = [], n = 1; n <= 7; n++) {
        var r = L.utc(2016, 11, 13 + n);
        t.push(e(r));
    } return t; }(function (e) { return i.extract(e, t, "weekday"); })), i.weekdaysCache[e][n]; }); }, e.meridiems = function (e) { var n = this; return yt(this, void 0, e = void 0 === e ? !0 : e, function () { return Ue; }, function () { var t; return n.meridiemCache || (t = { hour: "numeric", hourCycle: "h12" }, n.meridiemCache = [L.utc(2016, 11, 13, 9), L.utc(2016, 11, 13, 19)].map(function (e) { return n.extract(e, t, "dayperiod"); })), n.meridiemCache; }); }, e.eras = function (e, t) { var n = this; return yt(this, e, t = void 0 === t ? !0 : t, We, function () { var t = { era: e }; return n.eraCache[e] || (n.eraCache[e] = [L.utc(-40, 1, 1), L.utc(2017, 1, 1)].map(function (e) { return n.extract(e, t, "era"); })), n.eraCache[e]; }); }, e.extract = function (e, t, n) { e = this.dtFormatter(e, t).formatToParts().find(function (e) { return e.type.toLowerCase() === n; }); return e ? e.value : null; }, e.numberFormatter = function (e) { return new vt(this.intl, (e = void 0 === e ? {} : e).forceSimple || this.fastNumbers, e); }, e.dtFormatter = function (e, t) { return new pt(e, this.intl, t = void 0 === t ? {} : t); }, e.relFormatter = function (e) { return void 0 === e && (e = {}), new gt(this.intl, this.isEnglish(), e); }, e.listFormatter = function (e) { return void 0 === e && (e = {}), t = this.intl, void 0 === (e = e) && (e = {}), n = JSON.stringify([t, e]), (r = ct[n]) || (r = new Intl.ListFormat(t, e), ct[n] = r), r; var t, n, r; }, e.isEnglish = function () { return "en" === this.locale || "en-us" === this.locale.toLowerCase() || new Intl.DateTimeFormat(this.intl).resolvedOptions().locale.startsWith("en-us"); }, e.equals = function (e) { return this.locale === e.locale && this.numberingSystem === e.numberingSystem && this.outputCalendar === e.outputCalendar; }, o(i, [{ key: "fastNumbers", get: function () { var e; return null == this.fastNumbersCached && (this.fastNumbersCached = (!(e = this).numberingSystem || "latn" === e.numberingSystem) && ("latn" === e.numberingSystem || !e.locale || e.locale.startsWith("en") || "latn" === new Intl.DateTimeFormat(e.intl).resolvedOptions().numberingSystem)), this.fastNumbersCached; } }]), i; }();
    function M() { for (var e = arguments.length, t = new Array(e), n = 0; n < e; n++)
        t[n] = arguments[n]; var r = t.reduce(function (e, t) { return e + t.source; }, ""); return RegExp("^" + r + "$"); }
    function N() { for (var e = arguments.length, t = new Array(e), n = 0; n < e; n++)
        t[n] = arguments[n]; return function (o) { return t.reduce(function (e, t) { var n = e[0], r = e[1], e = e[2], t = t(o, e), e = t[0], i = t[1], t = t[2]; return [s({}, n, e), i || r, t]; }, [{}, null, 1]).slice(0, 2); }; }
    function wt(e) { if (null != e) {
        for (var t = arguments.length, n = new Array(1 < t ? t - 1 : 0), r = 1; r < t; r++)
            n[r - 1] = arguments[r];
        for (var i = 0, o = n; i < o.length; i++) {
            var a = o[i], u = a[0], a = a[1], u = u.exec(e);
            if (u)
                return a(u);
        }
    } return [null, null]; }
    function kt() { for (var e = arguments.length, i = new Array(e), t = 0; t < e; t++)
        i[t] = arguments[t]; return function (e, t) { for (var n = {}, r = 0; r < i.length; r++)
        n[i[r]] = l(e[t + r]); return [n, null, t + r]; }; }
    var t = /(?:(Z)|([+-]\d\d)(?::?(\d\d))?)/, a = /(\d\d)(?::?(\d\d)(?::?(\d\d)(?:[.,](\d{1,30}))?)?)?/, bt = RegExp(a.source + ("(?:" + t.source + "?(?:\\[(" + r.source + ")\\])?)?")), D = RegExp("(?:T" + bt.source + ")?"), Tt = kt("weekYear", "weekNumber", "weekDay"), St = kt("year", "ordinal"), t = RegExp(a.source + " ?(?:" + t.source + "|(" + r.source + "))?"), r = RegExp("(?: " + t.source + ")?");
    function Ot(e, t, n) { e = e[t]; return w(e) ? n : l(e); }
    function Mt(e, t) { return [{ hours: Ot(e, t, 0), minutes: Ot(e, t + 1, 0), seconds: Ot(e, t + 2, 0), milliseconds: we(e[t + 3]) }, null, t + 4]; }
    function Nt(e, t) { var n = !e[t] && !e[t + 1], e = Ee(e[t + 1], e[t + 2]); return [{}, n ? null : b.instance(e), t + 3]; }
    function Dt(e, t) { return [{}, e[t] ? p.create(e[t]) : null, t + 1]; }
    var Et = RegExp("^T?" + a.source + "$"), Vt = /^-?P(?:(?:(-?\d{1,20}(?:\.\d{1,20})?)Y)?(?:(-?\d{1,20}(?:\.\d{1,20})?)M)?(?:(-?\d{1,20}(?:\.\d{1,20})?)W)?(?:(-?\d{1,20}(?:\.\d{1,20})?)D)?(?:T(?:(-?\d{1,20}(?:\.\d{1,20})?)H)?(?:(-?\d{1,20}(?:\.\d{1,20})?)M)?(?:(-?\d{1,20})(?:[.,](-?\d{1,20}))?S)?)?)$/;
    function It(e) { function t(e, t) { return void 0 === t && (t = !1), void 0 !== e && (t || e && l) ? -e : e; } var n = e[0], r = e[1], i = e[2], o = e[3], a = e[4], u = e[5], s = e[6], c = e[7], e = e[8], l = "-" === n[0], n = c && "-" === c[0]; return [{ years: t(d(r)), months: t(d(i)), weeks: t(d(o)), days: t(d(a)), hours: t(d(u)), minutes: t(d(s)), seconds: t(d(c), "-0" === c), milliseconds: t(we(e), n) }]; }
    var xt = { GMT: 0, EDT: -240, EST: -300, CDT: -300, CST: -360, MDT: -360, MST: -420, PDT: -420, PST: -480 };
    function Ct(e, t, n, r, i, o, a) { t = { year: 2 === t.length ? Ne(l(t)) : l(t), month: Ze.indexOf(n) + 1, day: l(r), hour: l(i), minute: l(o) }; return a && (t.second = l(a)), e && (t.weekday = 3 < e.length ? je.indexOf(e) + 1 : ze.indexOf(e) + 1), t; }
    var Ft = /^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),\s)?(\d{1,2})\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s(\d{2,4})\s(\d\d):(\d\d)(?::(\d\d))?\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|(?:([+-]\d\d)(\d\d)))$/;
    function Zt(e) { var t = e[1], n = e[2], r = e[3], i = e[4], o = e[5], a = e[6], u = e[7], s = e[8], c = e[9], l = e[10], e = e[11], t = Ct(t, i, r, n, o, a, u), i = s ? xt[s] : c ? 0 : Ee(l, e); return [t, new b(i)]; }
    var Lt = /^(Mon|Tue|Wed|Thu|Fri|Sat|Sun), (\d\d) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) (\d{4}) (\d\d):(\d\d):(\d\d) GMT$/, At = /^(Monday|Tuesday|Wednesday|Thursday|Friday|Saturday|Sunday), (\d\d)-(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)-(\d\d) (\d\d):(\d\d):(\d\d) GMT$/, jt = /^(Mon|Tue|Wed|Thu|Fri|Sat|Sun) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) ( \d|\d\d) (\d\d):(\d\d):(\d\d) (\d{4})$/;
    function zt(e) { var t = e[1], n = e[2], r = e[3]; return [Ct(t, e[4], r, n, e[5], e[6], e[7]), b.utcInstance]; }
    function qt(e) { var t = e[1], n = e[2], r = e[3], i = e[4], o = e[5], a = e[6]; return [Ct(t, e[7], n, r, i, o, a), b.utcInstance]; }
    var _t = M(/([+-]\d{6}|\d{4})(?:-?(\d\d)(?:-?(\d\d))?)?/, D), Ut = M(/(\d{4})-?W(\d\d)(?:-?(\d))?/, D), Pt = M(/(\d{4})-?(\d{3})/, D), Rt = M(bt), Ht = N(function (e, t) { return [{ year: Ot(e, t), month: Ot(e, t + 1, 1), day: Ot(e, t + 2, 1) }, null, t + 3]; }, Mt, Nt, Dt), Wt = N(Tt, Mt, Nt, Dt), Jt = N(St, Mt, Nt, Dt), Yt = N(Mt, Nt, Dt);
    var Gt = N(Mt);
    var $t = M(/(\d{4})-(\d\d)-(\d\d)/, r), Bt = M(t), Qt = N(Mt, Nt, Dt);
    var a = { weeks: { days: 7, hours: 168, minutes: 10080, seconds: 604800, milliseconds: 6048e5 }, days: { hours: 24, minutes: 1440, seconds: 86400, milliseconds: 864e5 }, hours: { minutes: 60, seconds: 3600, milliseconds: 36e5 }, minutes: { seconds: 60, milliseconds: 6e4 }, seconds: { milliseconds: 1e3 } }, Kt = s({ years: { quarters: 4, months: 12, weeks: 52, days: 365, hours: 8760, minutes: 525600, seconds: 31536e3, milliseconds: 31536e6 }, quarters: { months: 3, weeks: 13, days: 91, hours: 2184, minutes: 131040, seconds: 7862400, milliseconds: 78624e5 }, months: { weeks: 4, days: 30, hours: 720, minutes: 43200, seconds: 2592e3, milliseconds: 2592e6 } }, a), D = 365.2425, bt = 30.436875, Xt = s({ years: { quarters: 4, months: 12, weeks: D / 7, days: D, hours: 24 * D, minutes: 525949.2, seconds: 525949.2 * 60, milliseconds: 525949.2 * 60 * 1e3 }, quarters: { months: 3, weeks: D / 28, days: D / 4, hours: 24 * D / 4, minutes: 131487.3, seconds: 525949.2 * 60 / 4, milliseconds: 7889237999.999999 }, months: { weeks: bt / 7, days: bt, hours: 24 * bt, minutes: 43829.1, seconds: 2629746, milliseconds: 2629746e3 } }, a), E = ["years", "quarters", "months", "weeks", "days", "hours", "minutes", "seconds", "milliseconds"], en = E.slice(0).reverse();
    function V(e, t, n) { n = { values: (n = void 0 === n ? !1 : n) ? t.values : s({}, e.values, t.values || {}), loc: e.loc.clone(t.loc), conversionAccuracy: t.conversionAccuracy || e.conversionAccuracy, matrix: t.matrix || e.matrix }; return new I(n); }
    function tn(e, t, n, r, i) { var e = e[i][n], o = t[n] / e, a = !(Math.sign(o) === Math.sign(r[i])) && 0 !== r[i] && Math.abs(o) <= 1 ? (a = o) < 0 ? Math.floor(a) : Math.ceil(a) : Math.trunc(o); r[i] += a, t[n] -= a * e; }
    var I = function () { function m(e) { var t = "longterm" === e.conversionAccuracy || !1, n = t ? Xt : Kt; e.matrix && (n = e.matrix), this.values = e.values, this.loc = e.loc || O.create(), this.conversionAccuracy = t ? "longterm" : "casual", this.invalid = e.invalid || null, this.matrix = n, this.isLuxonDuration = !0; } m.fromMillis = function (e, t) { return m.fromObject({ milliseconds: e }, t); }, m.fromObject = function (e, t) { if (void 0 === t && (t = {}), null == e || "object" != typeof e)
        throw new u("Duration.fromObject: argument expected to be an object, got " + (null === e ? "null" : typeof e)); return new m({ values: Ie(e, m.normalizeUnit), loc: O.fromObject(t), conversionAccuracy: t.conversionAccuracy, matrix: t.matrix }); }, m.fromDurationLike = function (e) { if (y(e))
        return m.fromMillis(e); if (m.isDuration(e))
        return e; if ("object" == typeof e)
        return m.fromObject(e); throw new u("Unknown duration argument " + e + " of type " + typeof e); }, m.fromISO = function (e, t) { var n = wt(e, [Vt, It])[0]; return n ? m.fromObject(n, t) : m.invalid("unparsable", 'the input "' + e + "\" can't be parsed as ISO 8601"); }, m.fromISOTime = function (e, t) { var n = wt(e, [Et, Gt])[0]; return n ? m.fromObject(n, t) : m.invalid("unparsable", 'the input "' + e + "\" can't be parsed as ISO 8601"); }, m.invalid = function (e, t) { if (void 0 === t && (t = null), !e)
        throw new u("need to specify a reason the Duration is invalid"); e = e instanceof v ? e : new v(e, t); if (S.throwOnInvalid)
        throw new W(e); return new m({ invalid: e }); }, m.normalizeUnit = function (e) { var t = { year: "years", years: "years", quarter: "quarters", quarters: "quarters", month: "months", months: "months", week: "weeks", weeks: "weeks", day: "days", days: "days", hour: "hours", hours: "hours", minute: "minutes", minutes: "minutes", second: "seconds", seconds: "seconds", millisecond: "milliseconds", milliseconds: "milliseconds" }[e && e.toLowerCase()]; if (t)
        return t; throw new Y(e); }, m.isDuration = function (e) { return e && e.isLuxonDuration || !1; }; var e = m.prototype; return e.toFormat = function (e, t) { t = s({}, t = void 0 === t ? {} : t, { floor: !1 !== t.round && !1 !== t.floor }); return this.isValid ? h.create(this.loc, t).formatDurationFromString(this, e) : "Invalid Duration"; }, e.toHuman = function (n) { var r = this, e = (void 0 === n && (n = {}), E.map(function (e) { var t = r.values[e]; return w(t) ? null : r.loc.numberFormatter(s({ style: "unit", unitDisplay: "long" }, n, { unit: e.slice(0, -1) })).format(t); }).filter(function (e) { return e; })); return this.loc.listFormatter(s({ type: "conjunction", style: n.listStyle || "narrow" }, n)).format(e); }, e.toObject = function () { return this.isValid ? s({}, this.values) : {}; }, e.toISO = function () { if (!this.isValid)
        return null; var e = "P"; return 0 !== this.years && (e += this.years + "Y"), 0 === this.months && 0 === this.quarters || (e += this.months + 3 * this.quarters + "M"), 0 !== this.weeks && (e += this.weeks + "W"), 0 !== this.days && (e += this.days + "D"), 0 === this.hours && 0 === this.minutes && 0 === this.seconds && 0 === this.milliseconds || (e += "T"), 0 !== this.hours && (e += this.hours + "H"), 0 !== this.minutes && (e += this.minutes + "M"), 0 === this.seconds && 0 === this.milliseconds || (e += ke(this.seconds + this.milliseconds / 1e3, 3) + "S"), "P" === e && (e += "T0S"), e; }, e.toISOTime = function (e) { if (void 0 === e && (e = {}), !this.isValid)
        return null; var t = this.toMillis(); if (t < 0 || 864e5 <= t)
        return null; e = s({ suppressMilliseconds: !1, suppressSeconds: !1, includePrefix: !1, format: "extended" }, e); var t = this.shiftTo("hours", "minutes", "seconds", "milliseconds"), n = "basic" === e.format ? "hhmm" : "hh:mm", t = (e.suppressSeconds && 0 === t.seconds && 0 === t.milliseconds || (n += "basic" === e.format ? "ss" : ":ss", e.suppressMilliseconds && 0 === t.milliseconds || (n += ".SSS")), t.toFormat(n)); return t = e.includePrefix ? "T" + t : t; }, e.toJSON = function () { return this.toISO(); }, e.toString = function () { return this.toISO(); }, e.toMillis = function () { return this.as("milliseconds"); }, e.valueOf = function () { return this.toMillis(); }, e.plus = function (e) { if (!this.isValid)
        return this; for (var t = m.fromDurationLike(e), n = {}, r = g(E); !(i = r()).done;) {
        var i = i.value;
        (f(t.values, i) || f(this.values, i)) && (n[i] = t.get(i) + this.get(i));
    } return V(this, { values: n }, !0); }, e.minus = function (e) { if (!this.isValid)
        return this; e = m.fromDurationLike(e); return this.plus(e.negate()); }, e.mapUnits = function (e) { if (!this.isValid)
        return this; for (var t = {}, n = 0, r = Object.keys(this.values); n < r.length; n++) {
        var i = r[n];
        t[i] = Ve(e(this.values[i], i));
    } return V(this, { values: t }, !0); }, e.get = function (e) { return this[m.normalizeUnit(e)]; }, e.set = function (e) { return this.isValid ? V(this, { values: s({}, this.values, Ie(e, m.normalizeUnit)) }) : this; }, e.reconfigure = function (e) { var e = void 0 === e ? {} : e, t = e.locale, n = e.numberingSystem, r = e.conversionAccuracy, e = e.matrix, t = this.loc.clone({ locale: t, numberingSystem: n }); return V(this, { loc: t, matrix: e, conversionAccuracy: r }); }, e.as = function (e) { return this.isValid ? this.shiftTo(e).get(e) : NaN; }, e.normalize = function () { if (!this.isValid)
        return this; var n, r, e = this.toObject(); return n = this.matrix, r = e, en.reduce(function (e, t) { return w(r[t]) ? e : (e && tn(n, r, e, r, t), t); }, null), V(this, { values: e }, !0); }, e.shiftTo = function () { for (var e = arguments.length, t = new Array(e), n = 0; n < e; n++)
        t[n] = arguments[n]; if (!this.isValid)
        return this; if (0 === t.length)
        return this; for (var r, t = t.map(function (e) { return m.normalizeUnit(e); }), i = {}, o = {}, a = this.toObject(), u = g(E); !(h = u()).done;) {
        var s = h.value;
        if (0 <= t.indexOf(s)) {
            var c, l = s, f = 0;
            for (c in o)
                f += this.matrix[c][s] * o[c], o[c] = 0;
            y(a[s]) && (f += a[s]);
            var d, h = Math.trunc(f);
            for (d in i[s] = h, o[s] = (1e3 * f - 1e3 * h) / 1e3, a)
                E.indexOf(d) > E.indexOf(s) && tn(this.matrix, a, d, i, s);
        }
        else
            y(a[s]) && (o[s] = a[s]);
    } for (r in o)
        0 !== o[r] && (i[l] += r === l ? o[r] : o[r] / this.matrix[l][r]); return V(this, { values: i }, !0).normalize(); }, e.negate = function () { if (!this.isValid)
        return this; for (var e = {}, t = 0, n = Object.keys(this.values); t < n.length; t++) {
        var r = n[t];
        e[r] = 0 === this.values[r] ? 0 : -this.values[r];
    } return V(this, { values: e }, !0); }, e.equals = function (e) { if (!this.isValid || !e.isValid)
        return !1; if (!this.loc.equals(e.loc))
        return !1; for (var t, n = g(E); !(r = n()).done;) {
        var r = r.value;
        if (t = this.values[r], r = e.values[r], !(void 0 === t || 0 === t ? void 0 === r || 0 === r : t === r))
            return !1;
    } return !0; }, o(m, [{ key: "locale", get: function () { return this.isValid ? this.loc.locale : null; } }, { key: "numberingSystem", get: function () { return this.isValid ? this.loc.numberingSystem : null; } }, { key: "years", get: function () { return this.isValid ? this.values.years || 0 : NaN; } }, { key: "quarters", get: function () { return this.isValid ? this.values.quarters || 0 : NaN; } }, { key: "months", get: function () { return this.isValid ? this.values.months || 0 : NaN; } }, { key: "weeks", get: function () { return this.isValid ? this.values.weeks || 0 : NaN; } }, { key: "days", get: function () { return this.isValid ? this.values.days || 0 : NaN; } }, { key: "hours", get: function () { return this.isValid ? this.values.hours || 0 : NaN; } }, { key: "minutes", get: function () { return this.isValid ? this.values.minutes || 0 : NaN; } }, { key: "seconds", get: function () { return this.isValid ? this.values.seconds || 0 : NaN; } }, { key: "milliseconds", get: function () { return this.isValid ? this.values.milliseconds || 0 : NaN; } }, { key: "isValid", get: function () { return null === this.invalid; } }, { key: "invalidReason", get: function () { return this.invalid ? this.invalid.reason : null; } }, { key: "invalidExplanation", get: function () { return this.invalid ? this.invalid.explanation : null; } }]), m; }(), nn = "Invalid Interval";
    var rn = function () { function c(e) { this.s = e.start, this.e = e.end, this.invalid = e.invalid || null, this.isLuxonInterval = !0; } c.invalid = function (e, t) { if (void 0 === t && (t = null), !e)
        throw new u("need to specify a reason the Interval is invalid"); e = e instanceof v ? e : new v(e, t); if (S.throwOnInvalid)
        throw new H(e); return new c({ invalid: e }); }, c.fromDateTimes = function (e, t) { var n, e = rr(e), t = rr(t), r = (n = t, (r = e) && r.isValid ? n && n.isValid ? n < r ? rn.invalid("end before start", "The end of an interval must be after its start, but you had start=" + r.toISO() + " and end=" + n.toISO()) : null : rn.invalid("missing or invalid end") : rn.invalid("missing or invalid start")); return null == r ? new c({ start: e, end: t }) : r; }, c.after = function (e, t) { t = I.fromDurationLike(t), e = rr(e); return c.fromDateTimes(e, e.plus(t)); }, c.before = function (e, t) { t = I.fromDurationLike(t), e = rr(e); return c.fromDateTimes(e.minus(t), e); }, c.fromISO = function (e, t) { var n, r, i, o = (e || "").split("/", 2), a = o[0], u = o[1]; if (a && u) {
        try {
            s = (n = L.fromISO(a, t)).isValid;
        }
        catch (u) {
            s = !1;
        }
        try {
            i = (r = L.fromISO(u, t)).isValid;
        }
        catch (u) {
            i = !1;
        }
        if (s && i)
            return c.fromDateTimes(n, r);
        if (s) {
            o = I.fromISO(u, t);
            if (o.isValid)
                return c.after(n, o);
        }
        else if (i) {
            var s = I.fromISO(a, t);
            if (s.isValid)
                return c.before(r, s);
        }
    } return c.invalid("unparsable", 'the input "' + e + "\" can't be parsed as ISO 8601"); }, c.isInterval = function (e) { return e && e.isLuxonInterval || !1; }; var e = c.prototype; return e.length = function (e) { return void 0 === e && (e = "milliseconds"), this.isValid ? this.toDuration.apply(this, [e]).get(e) : NaN; }, e.count = function (e) { if (!this.isValid)
        return NaN; var t = this.start.startOf(e = void 0 === e ? "milliseconds" : e), n = this.end.startOf(e); return Math.floor(n.diff(t, e).get(e)) + 1; }, e.hasSame = function (e) { return !!this.isValid && (this.isEmpty() || this.e.minus(1).hasSame(this.s, e)); }, e.isEmpty = function () { return this.s.valueOf() === this.e.valueOf(); }, e.isAfter = function (e) { return !!this.isValid && this.s > e; }, e.isBefore = function (e) { return !!this.isValid && this.e <= e; }, e.contains = function (e) { return !!this.isValid && (this.s <= e && this.e > e); }, e.set = function (e) { var e = void 0 === e ? {} : e, t = e.start, e = e.end; return this.isValid ? c.fromDateTimes(t || this.s, e || this.e) : this; }, e.splitAt = function () { var t = this; if (!this.isValid)
        return []; for (var e = arguments.length, n = new Array(e), r = 0; r < e; r++)
        n[r] = arguments[r]; for (var i = n.map(rr).filter(function (e) { return t.contains(e); }).sort(), o = [], a = this.s, u = 0; a < this.e;) {
        var s = i[u] || this.e, s = +s > +this.e ? this.e : s;
        o.push(c.fromDateTimes(a, s)), a = s, u += 1;
    } return o; }, e.splitBy = function (e) { var t = I.fromDurationLike(e); if (!this.isValid || !t.isValid || 0 === t.as("milliseconds"))
        return []; for (var n = this.s, r = 1, i = []; n < this.e;) {
        var o = this.start.plus(t.mapUnits(function (e) { return e * r; })), o = +o > +this.e ? this.e : o;
        i.push(c.fromDateTimes(n, o)), n = o, r += 1;
    } return i; }, e.divideEqually = function (e) { return this.isValid ? this.splitBy(this.length() / e).slice(0, e) : []; }, e.overlaps = function (e) { return this.e > e.s && this.s < e.e; }, e.abutsStart = function (e) { return !!this.isValid && +this.e == +e.s; }, e.abutsEnd = function (e) { return !!this.isValid && +e.e == +this.s; }, e.engulfs = function (e) { return !!this.isValid && (this.s <= e.s && this.e >= e.e); }, e.equals = function (e) { return !(!this.isValid || !e.isValid) && (this.s.equals(e.s) && this.e.equals(e.e)); }, e.intersection = function (e) { if (!this.isValid)
        return this; var t = (this.s > e.s ? this : e).s, e = (this.e < e.e ? this : e).e; return e <= t ? null : c.fromDateTimes(t, e); }, e.union = function (e) { if (!this.isValid)
        return this; var t = (this.s < e.s ? this : e).s, e = (this.e > e.e ? this : e).e; return c.fromDateTimes(t, e); }, c.merge = function (e) { var e = e.sort(function (e, t) { return e.s - t.s; }).reduce(function (e, t) { var n = e[0], e = e[1]; return e ? e.overlaps(t) || e.abutsStart(t) ? [n, e.union(t)] : [n.concat([e]), t] : [n, t]; }, [[], null]), t = e[0], e = e[1]; return e && t.push(e), t; }, c.xor = function (e) { for (var t, n = null, r = 0, i = [], e = e.map(function (e) { return [{ time: e.s, type: "s" }, { time: e.e, type: "e" }]; }), o = g((t = Array.prototype).concat.apply(t, e).sort(function (e, t) { return e.time - t.time; })); !(a = o()).done;)
        var a = a.value, n = 1 === (r += "s" === a.type ? 1 : -1) ? a.time : (n && +n != +a.time && i.push(c.fromDateTimes(n, a.time)), null); return c.merge(i); }, e.difference = function () { for (var t = this, e = arguments.length, n = new Array(e), r = 0; r < e; r++)
        n[r] = arguments[r]; return c.xor([this].concat(n)).map(function (e) { return t.intersection(e); }).filter(function (e) { return e && !e.isEmpty(); }); }, e.toString = function () { return this.isValid ? "[" + this.s.toISO() + " – " + this.e.toISO() + ")" : nn; }, e.toISO = function (e) { return this.isValid ? this.s.toISO(e) + "/" + this.e.toISO(e) : nn; }, e.toISODate = function () { return this.isValid ? this.s.toISODate() + "/" + this.e.toISODate() : nn; }, e.toISOTime = function (e) { return this.isValid ? this.s.toISOTime(e) + "/" + this.e.toISOTime(e) : nn; }, e.toFormat = function (e, t) { t = (void 0 === t ? {} : t).separator, t = void 0 === t ? " – " : t; return this.isValid ? "" + this.s.toFormat(e) + t + this.e.toFormat(e) : nn; }, e.toDuration = function (e, t) { return this.isValid ? this.e.diff(this.s, e, t) : I.invalid(this.invalidReason); }, e.mapEndpoints = function (e) { return c.fromDateTimes(e(this.s), e(this.e)); }, o(c, [{ key: "start", get: function () { return this.isValid ? this.s : null; } }, { key: "end", get: function () { return this.isValid ? this.e : null; } }, { key: "isValid", get: function () { return null === this.invalidReason; } }, { key: "invalidReason", get: function () { return this.invalid ? this.invalid.reason : null; } }, { key: "invalidExplanation", get: function () { return this.invalid ? this.invalid.explanation : null; } }]), c; }(), on = function () { function e() { } return e.hasDST = function (e) { void 0 === e && (e = S.defaultZone); var t = L.now().setZone(e).set({ month: 12 }); return !e.isUniversal && t.offset !== t.set({ month: 6 }).offset; }, e.isValidIANAZone = function (e) { return p.isValidZone(e); }, e.normalizeZone = function (e) { return T(e, S.defaultZone); }, e.months = function (e, t) { void 0 === e && (e = "long"); var t = void 0 === t ? {} : t, n = t.locale, r = t.numberingSystem, i = t.locObj, i = void 0 === i ? null : i, t = t.outputCalendar; return (i || O.create(void 0 === n ? null : n, void 0 === r ? null : r, void 0 === t ? "gregory" : t)).months(e); }, e.monthsFormat = function (e, t) { void 0 === e && (e = "long"); var t = void 0 === t ? {} : t, n = t.locale, r = t.numberingSystem, i = t.locObj, i = void 0 === i ? null : i, t = t.outputCalendar; return (i || O.create(void 0 === n ? null : n, void 0 === r ? null : r, void 0 === t ? "gregory" : t)).months(e, !0); }, e.weekdays = function (e, t) { void 0 === e && (e = "long"); var t = void 0 === t ? {} : t, n = t.locale, r = t.numberingSystem, t = t.locObj; return ((void 0 === t ? null : t) || O.create(void 0 === n ? null : n, void 0 === r ? null : r, null)).weekdays(e); }, e.weekdaysFormat = function (e, t) { void 0 === e && (e = "long"); var t = void 0 === t ? {} : t, n = t.locale, r = t.numberingSystem, t = t.locObj; return ((void 0 === t ? null : t) || O.create(void 0 === n ? null : n, void 0 === r ? null : r, null)).weekdays(e, !0); }, e.meridiems = function (e) { e = (void 0 === e ? {} : e).locale; return O.create(void 0 === e ? null : e).meridiems(); }, e.eras = function (e, t) { void 0 === e && (e = "short"); t = (void 0 === t ? {} : t).locale; return O.create(void 0 === t ? null : t, null, "gregory").eras(e); }, e.features = function () { return { relative: pe() }; }, e; }();
    function an(e, t) { function n(e) { return e.toUTC(0, { keepLocalTime: !0 }).startOf("day").valueOf(); } t = n(t) - n(e); return Math.floor(I.fromMillis(t).as("days")); }
    function un(e, t, n, r) { var e = function (e, t, n) { for (var r = {}, i = 0, o = [["years", function (e, t) { return t.year - e.year; }], ["quarters", function (e, t) { return t.quarter - e.quarter + 4 * (t.year - e.year); }], ["months", function (e, t) { return t.month - e.month + 12 * (t.year - e.year); }], ["weeks", function (e, t) { e = an(e, t); return (e - e % 7) / 7; }], ["days", an]]; i < o.length; i++) {
        var a, u, s, c = o[i], l = c[0], c = c[1];
        0 <= n.indexOf(l) && (a = l, c = c(e, t), t < (s = e.plus(((u = {})[l] = c, u))) ? (e = e.plus(((u = {})[l] = c - 1, u)), --c) : e = s, r[l] = c);
    } return [e, r, s, a]; }(e, t, n), i = e[0], o = e[1], a = e[2], e = e[3], u = t - i, n = n.filter(function (e) { return 0 <= ["hours", "minutes", "seconds", "milliseconds"].indexOf(e); }), t = (0 === n.length && (a = a < t ? i.plus(((t = {})[e] = 1, t)) : a) !== i && (o[e] = (o[e] || 0) + u / (a - i)), I.fromObject(o, r)); return 0 < n.length ? (e = I.fromMillis(u, r)).shiftTo.apply(e, n).plus(t) : t; }
    var sn = { arab: "[٠-٩]", arabext: "[۰-۹]", bali: "[᭐-᭙]", beng: "[০-৯]", deva: "[०-९]", fullwide: "[0-9]", gujr: "[૦-૯]", hanidec: "[〇|一|二|三|四|五|六|七|八|九]", khmr: "[០-៩]", knda: "[೦-೯]", laoo: "[໐-໙]", limb: "[᥆-᥏]", mlym: "[൦-൯]", mong: "[᠐-᠙]", mymr: "[၀-၉]", orya: "[୦-୯]", tamldec: "[௦-௯]", telu: "[౦-౯]", thai: "[๐-๙]", tibt: "[༠-༩]", latn: "\\d" }, cn = { arab: [1632, 1641], arabext: [1776, 1785], bali: [6992, 7001], beng: [2534, 2543], deva: [2406, 2415], fullwide: [65296, 65303], gujr: [2790, 2799], khmr: [6112, 6121], knda: [3302, 3311], laoo: [3792, 3801], limb: [6470, 6479], mlym: [3430, 3439], mong: [6160, 6169], mymr: [4160, 4169], orya: [2918, 2927], tamldec: [3046, 3055], telu: [3174, 3183], thai: [3664, 3673], tibt: [3872, 3881] }, ln = sn.hanidec.replace(/[\[|\]]/g, "").split("");
    function x(e, t) { e = e.numberingSystem; return void 0 === t && (t = ""), new RegExp("" + sn[e || "latn"] + t); }
    var fn = "missing Intl.DateTimeFormat.formatToParts support";
    function C(e, t) { return void 0 === t && (t = function (e) { return e; }), { regex: e, deser: function (e) { e = e[0]; return t(function (e) { var t = parseInt(e, 10); if (isNaN(t)) {
            for (var t = "", n = 0; n < e.length; n++) {
                var r = e.charCodeAt(n);
                if (-1 !== e[n].search(sn.hanidec))
                    t += ln.indexOf(e[n]);
                else
                    for (var i in cn) {
                        var i = cn[i], o = i[0], i = i[1];
                        o <= r && r <= i && (t += r - o);
                    }
            }
            return parseInt(t, 10);
        } return t; }(e)); } }; }
    var dn = "[ " + String.fromCharCode(160) + "]", hn = new RegExp(dn, "g");
    function mn(e) { return e.replace(/\./g, "\\.?").replace(hn, dn); }
    function yn(e) { return e.replace(/\./g, "").replace(hn, " ").toLowerCase(); }
    function F(n, r) { return null === n ? null : { regex: RegExp(n.map(mn).join("|")), deser: function (e) { var t = e[0]; return n.findIndex(function (e) { return yn(t) === yn(e); }) + r; } }; }
    function vn(e, t) { return { regex: e, deser: function (e) { return Ee(e[1], e[2]); }, groups: t }; }
    function pn(e) { return { regex: e, deser: function (e) { return e[0]; } }; }
    function gn(t, n) { function r(e) { return { regex: RegExp(e.val.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g, "\\$&")), deser: function (e) { return e[0]; }, literal: !0 }; } var i = x(n), o = x(n, "{2}"), a = x(n, "{3}"), u = x(n, "{4}"), s = x(n, "{6}"), c = x(n, "{1,2}"), l = x(n, "{1,3}"), f = x(n, "{1,6}"), d = x(n, "{1,9}"), h = x(n, "{2,4}"), m = x(n, "{4,6}"), e = function (e) { if (t.literal)
        return r(e); switch (e.val) {
        case "G": return F(n.eras("short", !1), 0);
        case "GG": return F(n.eras("long", !1), 0);
        case "y": return C(f);
        case "yy": return C(h, Ne);
        case "yyyy": return C(u);
        case "yyyyy": return C(m);
        case "yyyyyy": return C(s);
        case "M": return C(c);
        case "MM": return C(o);
        case "MMM": return F(n.months("short", !0, !1), 1);
        case "MMMM": return F(n.months("long", !0, !1), 1);
        case "L": return C(c);
        case "LL": return C(o);
        case "LLL": return F(n.months("short", !1, !1), 1);
        case "LLLL": return F(n.months("long", !1, !1), 1);
        case "d": return C(c);
        case "dd": return C(o);
        case "o": return C(l);
        case "ooo": return C(a);
        case "HH": return C(o);
        case "H": return C(c);
        case "hh": return C(o);
        case "h": return C(c);
        case "mm": return C(o);
        case "m":
        case "q": return C(c);
        case "qq": return C(o);
        case "s": return C(c);
        case "ss": return C(o);
        case "S": return C(l);
        case "SSS": return C(a);
        case "u": return pn(d);
        case "uu": return pn(c);
        case "uuu": return C(i);
        case "a": return F(n.meridiems(), 0);
        case "kkkk": return C(u);
        case "kk": return C(h, Ne);
        case "W": return C(c);
        case "WW": return C(o);
        case "E":
        case "c": return C(i);
        case "EEE": return F(n.weekdays("short", !1, !1), 1);
        case "EEEE": return F(n.weekdays("long", !1, !1), 1);
        case "ccc": return F(n.weekdays("short", !0, !1), 1);
        case "cccc": return F(n.weekdays("long", !0, !1), 1);
        case "Z":
        case "ZZ": return vn(new RegExp("([+-]" + c.source + ")(?::(" + o.source + "))?"), 2);
        case "ZZZ": return vn(new RegExp("([+-]" + c.source + ")(" + o.source + ")?"), 2);
        case "z": return pn(/[a-z_+-/]{1,256}?/i);
        default: return r(e);
    } }(t) || { invalidReason: fn }; return e.token = t, e; }
    var wn = { year: { "2-digit": "yy", numeric: "yyyyy" }, month: { numeric: "M", "2-digit": "MM", short: "MMM", long: "MMMM" }, day: { numeric: "d", "2-digit": "dd" }, weekday: { short: "EEE", long: "EEEE" }, dayperiod: "a", dayPeriod: "a", hour: { numeric: "h", "2-digit": "hh" }, minute: { numeric: "m", "2-digit": "mm" }, second: { numeric: "s", "2-digit": "ss" }, timeZoneName: { long: "ZZZZZ", short: "ZZZ" } };
    var kn = null;
    function bn(e, n) { var t; return (t = Array.prototype).concat.apply(t, e.map(function (e) { return t = n, (e = e).literal || null == (t = Sn(h.macroTokenToFormatOpts(e.val), t)) || t.includes(void 0) ? e : t; var t; })); }
    function Tn(t, e, n) { var n = bn(h.parseFormat(n), t), r = n.map(function (e) { return gn(e, t); }), i = r.find(function (e) { return e.invalidReason; }); if (i)
        return { input: e, tokens: n, invalidReason: i.invalidReason }; var o, r = ["^" + (i = r).map(function (e) { return e.regex; }).reduce(function (e, t) { return e + "(" + t.source + ")"; }, "") + "$", i], i = r[1], r = RegExp(r[0], "i"), i = function (e, t, n) { var r = e.match(t); if (r) {
        var i, o, a, u = {}, s = 1;
        for (i in n)
            f(n, i) && (a = (o = n[i]).groups ? o.groups + 1 : 1, !o.literal && o.token && (u[o.token.val[0]] = o.deser(r.slice(s, s + a))), s += a);
        return [r, u];
    } return [r, {}]; }(e, r, i), a = i[0], i = i[1], u = i ? (u = null, w((o = i).z) || (u = p.create(o.z)), w(o.Z) || (u = u || new b(o.Z), s = o.Z), w(o.q) || (o.M = 3 * (o.q - 1) + 1), w(o.h) || (o.h < 12 && 1 === o.a ? o.h += 12 : 12 === o.h && 0 === o.a && (o.h = 0)), 0 === o.G && o.y && (o.y = -o.y), w(o.u) || (o.S = we(o.u)), [Object.keys(o).reduce(function (e, t) { var n = function (e) { switch (e) {
            case "S": return "millisecond";
            case "s": return "second";
            case "m": return "minute";
            case "h":
            case "H": return "hour";
            case "d": return "day";
            case "o": return "ordinal";
            case "L":
            case "M": return "month";
            case "y": return "year";
            case "E":
            case "c": return "weekday";
            case "W": return "weekNumber";
            case "k": return "weekYear";
            case "q": return "quarter";
            default: return null;
        } }(t); return n && (e[n] = o[t]), e; }, {}), u, s]) : [null, null, void 0], s = u[0], c = u[1], l = u[2]; if (f(i, "a") && f(i, "H"))
        throw new J("Can't include meridiem when specifying 24-hour format"); return { input: e, tokens: n, regex: r, rawMatches: a, matches: i, result: s, zone: c, specificOffset: l }; }
    function Sn(r, e) { return r ? h.create(e, r).formatDateTimeParts(kn = kn || L.fromMillis(1555555555555)).map(function (e) { return t = r, n = (e = e).type, e = e.value, "literal" === n ? { literal: !0, val: e } : (e = t[n], (t = "object" == typeof (t = wn[n]) ? t[e] : t) ? { literal: !1, val: t } : void 0); var t, n; }) : null; }
    var On = [0, 31, 59, 90, 120, 151, 181, 212, 243, 273, 304, 334], Mn = [0, 31, 60, 91, 121, 152, 182, 213, 244, 274, 305, 335];
    function Z(e, t) { return new v("unit out of range", "you specified " + t + " (of type " + typeof t + ") as a " + e + ", which is invalid"); }
    function Nn(e, t, n) { t = new Date(Date.UTC(e, t - 1, n)), e < 100 && 0 <= e && t.setUTCFullYear(t.getUTCFullYear() - 1900), n = t.getUTCDay(); return 0 === n ? 7 : n; }
    function Dn(e, t, n) { return n + (be(e) ? Mn : On)[t - 1]; }
    function En(e, t) { var e = be(e) ? Mn : On, n = e.findIndex(function (e) { return e < t; }); return { month: n + 1, day: t - e[n] }; }
    function Vn(e) { var t, n = e.year, r = e.month, i = e.day, o = Dn(n, r, i), r = Nn(n, r, i), i = Math.floor((o - r + 10) / 7); return i < 1 ? i = Me(t = n - 1) : i > Me(n) ? (t = n + 1, i = 1) : t = n, s({ weekYear: t, weekNumber: i, weekday: r }, Ce(e)); }
    function In(e) { var t, n = e.weekYear, r = e.weekNumber, i = e.weekday, o = Nn(n, 1, 4), a = Te(n), r = 7 * r + i - o - 3, i = (r < 1 ? r += Te(t = n - 1) : a < r ? (t = n + 1, r -= Te(n)) : t = n, En(t, r)); return s({ year: t, month: i.month, day: i.day }, Ce(e)); }
    function xn(e) { var t = e.year; return s({ year: t, ordinal: Dn(t, e.month, e.day) }, Ce(e)); }
    function Cn(e) { var t = e.year, n = En(t, e.ordinal); return s({ year: t, month: n.month, day: n.day }, Ce(e)); }
    function Fn(e) { var t = ve(e.year), n = k(e.month, 1, 12), r = k(e.day, 1, Se(e.year, e.month)); return t ? n ? !r && Z("day", e.day) : Z("month", e.month) : Z("year", e.year); }
    function Zn(e) { var t = e.hour, n = e.minute, r = e.second, e = e.millisecond, i = k(t, 0, 23) || 24 === t && 0 === n && 0 === r && 0 === e, o = k(n, 0, 59), a = k(r, 0, 59), u = k(e, 0, 999); return i ? o ? a ? !u && Z("millisecond", e) : Z("second", r) : Z("minute", n) : Z("hour", t); }
    var Ln = "Invalid DateTime";
    function An(e) { return new v("unsupported zone", 'the zone "' + e.name + '" is not supported'); }
    function jn(e) { return null === e.weekData && (e.weekData = Vn(e.c)), e.weekData; }
    function zn(e, t) { e = { ts: e.ts, zone: e.zone, c: e.c, o: e.o, loc: e.loc, invalid: e.invalid }; return new L(s({}, e, t, { old: e })); }
    function qn(e, t, n) { var r = e - 60 * t * 1e3, i = n.offset(r); if (t === i)
        return [r, t]; n = n.offset(r -= 60 * (i - t) * 1e3); return i === n ? [r, i] : [e - 60 * Math.min(i, n) * 1e3, Math.max(i, n)]; }
    function _n(e, t) { e += 60 * t * 1e3; t = new Date(e); return { year: t.getUTCFullYear(), month: t.getUTCMonth() + 1, day: t.getUTCDate(), hour: t.getUTCHours(), minute: t.getUTCMinutes(), second: t.getUTCSeconds(), millisecond: t.getUTCMilliseconds() }; }
    function Un(e, t, n) { return qn(Oe(e), t, n); }
    function Pn(e, t) { var n = e.o, r = e.c.year + Math.trunc(t.years), i = e.c.month + Math.trunc(t.months) + 3 * Math.trunc(t.quarters), r = s({}, e.c, { year: r, month: i, day: Math.min(e.c.day, Se(r, i)) + Math.trunc(t.days) + 7 * Math.trunc(t.weeks) }), i = I.fromObject({ years: t.years - Math.trunc(t.years), quarters: t.quarters - Math.trunc(t.quarters), months: t.months - Math.trunc(t.months), weeks: t.weeks - Math.trunc(t.weeks), days: t.days - Math.trunc(t.days), hours: t.hours, minutes: t.minutes, seconds: t.seconds, milliseconds: t.milliseconds }).as("milliseconds"), t = qn(Oe(r), n, e.zone), r = t[0], n = t[1]; return 0 !== i && (n = e.zone.offset(r += i)), { ts: r, o: n }; }
    function Rn(e, t, n, r, i, o) { var a = n.setZone, u = n.zone; return e && 0 !== Object.keys(e).length ? (e = L.fromObject(e, s({}, n, { zone: t || u, specificOffset: o })), a ? e : e.setZone(u)) : L.invalid(new v("unparsable", 'the input "' + i + "\" can't be parsed as " + r)); }
    function Hn(e, t, n) { return void 0 === n && (n = !0), e.isValid ? h.create(O.create("en-US"), { allowZ: n, forceSimple: !0 }).formatDateTimeFromString(e, t) : null; }
    function Wn(e, t) { var n = 9999 < e.c.year || e.c.year < 0, r = ""; return n && 0 <= e.c.year && (r += "+"), r += c(e.c.year, n ? 6 : 4), r = t ? (r = (r += "-") + c(e.c.month) + "-") + c(e.c.day) : (r += c(e.c.month)) + c(e.c.day); }
    function Jn(e, t, n, r, i, o) { var a = c(e.c.hour); return t ? (a = (a += ":") + c(e.c.minute), 0 === e.c.second && n || (a += ":")) : a += c(e.c.minute), 0 === e.c.second && n || (a += c(e.c.second), 0 === e.c.millisecond && r || (a = (a += ".") + c(e.c.millisecond, 3))), i && (e.isOffsetFixed && 0 === e.offset && !o ? a += "Z" : a = e.o < 0 ? (a = (a += "-") + c(Math.trunc(-e.o / 60)) + ":") + c(Math.trunc(-e.o % 60)) : (a = (a += "+") + c(Math.trunc(e.o / 60)) + ":") + c(Math.trunc(e.o % 60))), o && (a += "[" + e.zone.ianaName + "]"), a; }
    var Yn = { month: 1, day: 1, hour: 0, minute: 0, second: 0, millisecond: 0 }, Gn = { weekNumber: 1, weekday: 1, hour: 0, minute: 0, second: 0, millisecond: 0 }, $n = { ordinal: 1, hour: 0, minute: 0, second: 0, millisecond: 0 }, Bn = ["year", "month", "day", "hour", "minute", "second", "millisecond"], Qn = ["weekYear", "weekNumber", "weekday", "hour", "minute", "second", "millisecond"], Kn = ["year", "ordinal", "hour", "minute", "second", "millisecond"];
    function Xn(e) { var t = { year: "year", years: "year", month: "month", months: "month", day: "day", days: "day", hour: "hour", hours: "hour", minute: "minute", minutes: "minute", quarter: "quarter", quarters: "quarter", second: "second", seconds: "second", millisecond: "millisecond", milliseconds: "millisecond", weekday: "weekday", weekdays: "weekday", weeknumber: "weekNumber", weeksnumber: "weekNumber", weeknumbers: "weekNumber", weekyear: "weekYear", weekyears: "weekYear", ordinal: "ordinal" }[e.toLowerCase()]; if (t)
        return t; throw new Y(e); }
    function er(e, t) { var n = T(t.zone, S.defaultZone), t = O.fromObject(t), r = S.now(); if (w(e.year))
        u = r;
    else {
        for (var i = g(Bn); !(o = i()).done;) {
            var o = o.value;
            w(e[o]) && (e[o] = Yn[o]);
        }
        var a = Fn(e) || Zn(e);
        if (a)
            return L.invalid(a);
        var a = Un(e, n.offset(r), n), u = a[0], a = a[1];
    } return new L({ ts: u, zone: n, loc: t, o: a }); }
    function tr(t, n, r) { function e(e, t) { return e = ke(e, o || r.calendary ? 0 : 2, !0), n.loc.clone(r).relFormatter(r).format(e, t); } function i(e) { return r.calendary ? n.hasSame(t, e) ? 0 : n.startOf(e).diff(t.startOf(e), e).get(e) : n.diff(t, e).get(e); } var o = !!w(r.round) || r.round; if (r.unit)
        return e(i(r.unit), r.unit); for (var a = g(r.units); !(u = a()).done;) {
        var u = u.value, s = i(u);
        if (1 <= Math.abs(s))
            return e(s, u);
    } return e(n < t ? -0 : 0, r.units[r.units.length - 1]); }
    function nr(e) { var t = {}, e = 0 < e.length && "object" == typeof e[e.length - 1] ? (t = e[e.length - 1], Array.from(e).slice(0, e.length - 1)) : Array.from(e); return [t, e]; }
    var L = function () { function p(e) { var t, n = e.zone || S.defaultZone, r = e.invalid || (Number.isNaN(e.ts) ? new v("invalid input") : null) || (n.isValid ? null : An(n)), i = (this.ts = w(e.ts) ? S.now() : e.ts, null), o = null; r || (o = e.old && e.old.ts === this.ts && e.old.zone.equals(n) ? (i = (t = [e.old.c, e.old.o])[0], t[1]) : (t = n.offset(this.ts), i = _n(this.ts, t), i = (r = Number.isNaN(i.year) ? new v("invalid input") : null) ? null : i, r ? null : t)), this._zone = n, this.loc = e.loc || O.create(), this.invalid = r, this.weekData = null, this.c = i, this.o = o, this.isLuxonDateTime = !0; } p.now = function () { return new p({}); }, p.local = function () { var e = nr(arguments), t = e[0], e = e[1]; return er({ year: e[0], month: e[1], day: e[2], hour: e[3], minute: e[4], second: e[5], millisecond: e[6] }, t); }, p.utc = function () { var e = nr(arguments), t = e[0], e = e[1], n = e[0], r = e[1], i = e[2], o = e[3], a = e[4], u = e[5], e = e[6]; return t.zone = b.utcInstance, er({ year: n, month: r, day: i, hour: o, minute: a, second: u, millisecond: e }, t); }, p.fromJSDate = function (e, t) { void 0 === t && (t = {}); e = "[object Date]" === Object.prototype.toString.call(e) ? e.valueOf() : NaN; if (Number.isNaN(e))
        return p.invalid("invalid input"); var n = T(t.zone, S.defaultZone); return n.isValid ? new p({ ts: e, zone: n, loc: O.fromObject(t) }) : p.invalid(An(n)); }, p.fromMillis = function (e, t) { if (void 0 === t && (t = {}), y(e))
        return e < -864e13 || 864e13 < e ? p.invalid("Timestamp out of range") : new p({ ts: e, zone: T(t.zone, S.defaultZone), loc: O.fromObject(t) }); throw new u("fromMillis requires a numerical input, but received a " + typeof e + " with value " + e); }, p.fromSeconds = function (e, t) { if (void 0 === t && (t = {}), y(e))
        return new p({ ts: 1e3 * e, zone: T(t.zone, S.defaultZone), loc: O.fromObject(t) }); throw new u("fromSeconds requires a numerical input"); }, p.fromObject = function (e, t) { e = e || {}; var n = T((t = void 0 === t ? {} : t).zone, S.defaultZone); if (!n.isValid)
        return p.invalid(An(n)); var r = S.now(), i = w(t.specificOffset) ? n.offset(r) : t.specificOffset, o = Ie(e, Xn), a = !w(o.ordinal), u = !w(o.year), s = !w(o.month) || !w(o.day), u = u || s, c = o.weekYear || o.weekNumber, t = O.fromObject(t); if ((u || a) && c)
        throw new J("Can't mix weekYear/weekNumber units with year/month/day or ordinals"); if (s && a)
        throw new J("Can't mix ordinal dates with month/day"); for (var l, s = c || o.weekday && !u, f = _n(r, i), d = (s ? (v = Qn, l = Gn, f = Vn(f)) : a ? (v = Kn, l = $n, f = xn(f)) : (v = Bn, l = Yn), !1), h = g(v); !(m = h()).done;) {
        var m = m.value;
        w(o[m]) ? o[m] = (d ? l : f)[m] : d = !0;
    } var y, c = (s ? (r = ve((c = o).weekYear), v = k(c.weekNumber, 1, Me(c.weekYear)), y = k(c.weekday, 1, 7), r ? v ? !y && Z("weekday", c.weekday) : Z("week", c.week) : Z("weekYear", c.weekYear)) : a ? (v = ve((r = o).year), y = k(r.ordinal, 1, Te(r.year)), v ? !y && Z("ordinal", r.ordinal) : Z("year", r.year)) : Fn(o)) || Zn(o); if (c)
        return p.invalid(c); var v = Un(s ? In(o) : a ? Cn(o) : o, i, n), r = new p({ ts: v[0], zone: n, o: v[1], loc: t }); return o.weekday && u && e.weekday !== r.weekday ? p.invalid("mismatched weekday", "you can't specify both a weekday of " + o.weekday + " and a date of " + r.toISO()) : r; }, p.fromISO = function (e, t) { void 0 === t && (t = {}); var n = wt(e, [_t, Ht], [Ut, Wt], [Pt, Jt], [Rt, Yt]); return Rn(n[0], n[1], t, "ISO 8601", e); }, p.fromRFC2822 = function (e, t) { void 0 === t && (t = {}); var n = wt(e.replace(/\([^)]*\)|[\n\t]/g, " ").replace(/(\s\s+)/g, " ").trim(), [Ft, Zt]); return Rn(n[0], n[1], t, "RFC 2822", e); }, p.fromHTTP = function (e, t) { void 0 === t && (t = {}); e = wt(e, [Lt, zt], [At, zt], [jt, qt]); return Rn(e[0], e[1], t, "HTTP", t); }, p.fromFormat = function (e, t, n) { if (void 0 === n && (n = {}), w(e) || w(t))
        throw new u("fromFormat requires an input string and a format"); var r = n, i = r.locale, r = r.numberingSystem, i = O.fromOpts({ locale: void 0 === i ? null : i, numberingSystem: void 0 === r ? null : r, defaultToEN: !0 }), i = [(r = Tn(r = i, e, t)).result, r.zone, r.specificOffset, r.invalidReason], r = i[0], o = i[1], a = i[2], i = i[3]; return i ? p.invalid(i) : Rn(r, o, n, "format " + t, e, a); }, p.fromString = function (e, t, n) { return p.fromFormat(e, t, n = void 0 === n ? {} : n); }, p.fromSQL = function (e, t) { void 0 === t && (t = {}); var n = wt(e, [$t, Ht], [Bt, Qt]); return Rn(n[0], n[1], t, "SQL", e); }, p.invalid = function (e, t) { if (void 0 === t && (t = null), !e)
        throw new u("need to specify a reason the DateTime is invalid"); e = e instanceof v ? e : new v(e, t); if (S.throwOnInvalid)
        throw new R(e); return new p({ invalid: e }); }, p.isDateTime = function (e) { return e && e.isLuxonDateTime || !1; }, p.parseFormatForOpts = function (e, t) { e = Sn(e, O.fromObject(t = void 0 === t ? {} : t)); return e ? e.map(function (e) { return e ? e.val : null; }).join("") : null; }, p.expandFormat = function (e, t) { return void 0 === t && (t = {}), bn(h.parseFormat(e), O.fromObject(t)).map(function (e) { return e.val; }).join(""); }; var e = p.prototype; return e.get = function (e) { return this[e]; }, e.resolvedLocaleOptions = function (e) { e = h.create(this.loc.clone(e = void 0 === e ? {} : e), e).resolvedOptions(this); return { locale: e.locale, numberingSystem: e.numberingSystem, outputCalendar: e.calendar }; }, e.toUTC = function (e, t) { return void 0 === t && (t = {}), this.setZone(b.instance(e = void 0 === e ? 0 : e), t); }, e.toLocal = function () { return this.setZone(S.defaultZone); }, e.setZone = function (e, t) { var n, t = void 0 === t ? {} : t, r = t.keepLocalTime, r = void 0 !== r && r, t = t.keepCalendarTime, t = void 0 !== t && t; return (e = T(e, S.defaultZone)).equals(this.zone) ? this : e.isValid ? (n = this.ts, (r || t) && (r = e.offset(this.ts), n = Un(this.toObject(), r, e)[0]), zn(this, { ts: n, zone: e })) : p.invalid(An(e)); }, e.reconfigure = function (e) { var e = void 0 === e ? {} : e, t = e.locale, n = e.numberingSystem, e = e.outputCalendar, t = this.loc.clone({ locale: t, numberingSystem: n, outputCalendar: e }); return zn(this, { loc: t }); }, e.setLocale = function (e) { return this.reconfigure({ locale: e }); }, e.set = function (e) { if (!this.isValid)
        return this; var t, e = Ie(e, Xn), n = !w(e.weekYear) || !w(e.weekNumber) || !w(e.weekday), r = !w(e.ordinal), i = !w(e.year), o = !w(e.month) || !w(e.day), a = e.weekYear || e.weekNumber; if ((i || o || r) && a)
        throw new J("Can't mix weekYear/weekNumber units with year/month/day or ordinals"); if (o && r)
        throw new J("Can't mix ordinal dates with month/day"); n ? t = In(s({}, Vn(this.c), e)) : w(e.ordinal) ? (t = s({}, this.toObject(), e), w(e.day) && (t.day = Math.min(Se(t.year, t.month), t.day))) : t = Cn(s({}, xn(this.c), e)); i = Un(t, this.o, this.zone); return zn(this, { ts: i[0], o: i[1] }); }, e.plus = function (e) { return this.isValid ? zn(this, Pn(this, I.fromDurationLike(e))) : this; }, e.minus = function (e) { return this.isValid ? zn(this, Pn(this, I.fromDurationLike(e).negate())) : this; }, e.startOf = function (e) { if (!this.isValid)
        return this; var t = {}, e = I.normalizeUnit(e); switch (e) {
        case "years": t.month = 1;
        case "quarters":
        case "months": t.day = 1;
        case "weeks":
        case "days": t.hour = 0;
        case "hours": t.minute = 0;
        case "minutes": t.second = 0;
        case "seconds": t.millisecond = 0;
    } return "weeks" === e && (t.weekday = 1), "quarters" === e && (e = Math.ceil(this.month / 3), t.month = 3 * (e - 1) + 1), this.set(t); }, e.endOf = function (e) { var t; return this.isValid ? this.plus(((t = {})[e] = 1, t)).startOf(e).minus(1) : this; }, e.toFormat = function (e, t) { return void 0 === t && (t = {}), this.isValid ? h.create(this.loc.redefaultToEN(t)).formatDateTimeFromString(this, e) : Ln; }, e.toLocaleString = function (e, t) { return void 0 === e && (e = G), void 0 === t && (t = {}), this.isValid ? h.create(this.loc.clone(t), e).formatDateTime(this) : Ln; }, e.toLocaleParts = function (e) { return void 0 === e && (e = {}), this.isValid ? h.create(this.loc.clone(e), e).formatDateTimeParts(this) : []; }, e.toISO = function (e) { var e = void 0 === e ? {} : e, t = e.format, n = e.suppressSeconds, n = void 0 !== n && n, r = e.suppressMilliseconds, r = void 0 !== r && r, i = e.includeOffset, i = void 0 === i || i, e = e.extendedZone, e = void 0 !== e && e; if (!this.isValid)
        return null; var t = "extended" === (void 0 === t ? "extended" : t), o = Wn(this, t); return (o += "T") + Jn(this, t, n, r, i, e); }, e.toISODate = function (e) { e = (void 0 === e ? {} : e).format; return this.isValid ? Wn(this, "extended" === (void 0 === e ? "extended" : e)) : null; }, e.toISOWeekDate = function () { return Hn(this, "kkkk-'W'WW-c"); }, e.toISOTime = function (e) { var e = void 0 === e ? {} : e, t = e.suppressMilliseconds, n = e.suppressSeconds, r = e.includeOffset, i = e.includePrefix, o = e.extendedZone, e = e.format; return this.isValid ? (void 0 !== i && i ? "T" : "") + Jn(this, "extended" === (void 0 === e ? "extended" : e), void 0 !== n && n, void 0 !== t && t, void 0 === r || r, void 0 !== o && o) : null; }, e.toRFC2822 = function () { return Hn(this, "EEE, dd LLL yyyy HH:mm:ss ZZZ", !1); }, e.toHTTP = function () { return Hn(this.toUTC(), "EEE, dd LLL yyyy HH:mm:ss 'GMT'"); }, e.toSQLDate = function () { return this.isValid ? Wn(this, !0) : null; }, e.toSQLTime = function (e) { var e = void 0 === e ? {} : e, t = e.includeOffset, t = void 0 === t || t, n = e.includeZone, n = void 0 !== n && n, e = e.includeOffsetSpace, r = "HH:mm:ss.SSS"; return (n || t) && ((void 0 === e || e) && (r += " "), n ? r += "z" : t && (r += "ZZ")), Hn(this, r, !0); }, e.toSQL = function (e) { return void 0 === e && (e = {}), this.isValid ? this.toSQLDate() + " " + this.toSQLTime(e) : null; }, e.toString = function () { return this.isValid ? this.toISO() : Ln; }, e.valueOf = function () { return this.toMillis(); }, e.toMillis = function () { return this.isValid ? this.ts : NaN; }, e.toSeconds = function () { return this.isValid ? this.ts / 1e3 : NaN; }, e.toUnixInteger = function () { return this.isValid ? Math.floor(this.ts / 1e3) : NaN; }, e.toJSON = function () { return this.toISO(); }, e.toBSON = function () { return this.toJSDate(); }, e.toObject = function (e) { if (void 0 === e && (e = {}), !this.isValid)
        return {}; var t = s({}, this.c); return e.includeConfig && (t.outputCalendar = this.outputCalendar, t.numberingSystem = this.loc.numberingSystem, t.locale = this.loc.locale), t; }, e.toJSDate = function () { return new Date(this.isValid ? this.ts : NaN); }, e.diff = function (e, t, n) { if (void 0 === t && (t = "milliseconds"), void 0 === n && (n = {}), !this.isValid || !e.isValid)
        return I.invalid("created by diffing an invalid DateTime"); var n = s({ locale: this.locale, numberingSystem: this.numberingSystem }, n), t = (t = t, (Array.isArray(t) ? t : [t]).map(I.normalizeUnit)), r = e.valueOf() > this.valueOf(), e = un(r ? this : e, r ? e : this, t, n); return r ? e.negate() : e; }, e.diffNow = function (e, t) { return void 0 === e && (e = "milliseconds"), void 0 === t && (t = {}), this.diff(p.now(), e, t); }, e.until = function (e) { return this.isValid ? rn.fromDateTimes(this, e) : this; }, e.hasSame = function (e, t) { if (!this.isValid)
        return !1; var n = e.valueOf(), e = this.setZone(e.zone, { keepLocalTime: !0 }); return e.startOf(t) <= n && n <= e.endOf(t); }, e.equals = function (e) { return this.isValid && e.isValid && this.valueOf() === e.valueOf() && this.zone.equals(e.zone) && this.loc.equals(e.loc); }, e.toRelative = function (e) { if (!this.isValid)
        return null; var t = (e = void 0 === e ? {} : e).base || p.fromObject({}, { zone: this.zone }), n = e.padding ? this < t ? -e.padding : e.padding : 0, r = ["years", "months", "days", "hours", "minutes", "seconds"], i = e.unit; return Array.isArray(e.unit) && (r = e.unit, i = void 0), tr(t, this.plus(n), s({}, e, { numeric: "always", units: r, unit: i })); }, e.toRelativeCalendar = function (e) { return void 0 === e && (e = {}), this.isValid ? tr(e.base || p.fromObject({}, { zone: this.zone }), this, s({}, e, { numeric: "auto", units: ["years", "months", "days"], calendary: !0 })) : null; }, p.min = function () { for (var e = arguments.length, t = new Array(e), n = 0; n < e; n++)
        t[n] = arguments[n]; if (t.every(p.isDateTime))
        return ge(t, function (e) { return e.valueOf(); }, Math.min); throw new u("min requires all arguments be DateTimes"); }, p.max = function () { for (var e = arguments.length, t = new Array(e), n = 0; n < e; n++)
        t[n] = arguments[n]; if (t.every(p.isDateTime))
        return ge(t, function (e) { return e.valueOf(); }, Math.max); throw new u("max requires all arguments be DateTimes"); }, p.fromFormatExplain = function (e, t, n) { var n = n = void 0 === n ? {} : n, r = n.locale, n = n.numberingSystem; return Tn(O.fromOpts({ locale: void 0 === r ? null : r, numberingSystem: void 0 === n ? null : n, defaultToEN: !0 }), e, t); }, p.fromStringExplain = function (e, t, n) { return p.fromFormatExplain(e, t, n = void 0 === n ? {} : n); }, o(p, [{ key: "isValid", get: function () { return null === this.invalid; } }, { key: "invalidReason", get: function () { return this.invalid ? this.invalid.reason : null; } }, { key: "invalidExplanation", get: function () { return this.invalid ? this.invalid.explanation : null; } }, { key: "locale", get: function () { return this.isValid ? this.loc.locale : null; } }, { key: "numberingSystem", get: function () { return this.isValid ? this.loc.numberingSystem : null; } }, { key: "outputCalendar", get: function () { return this.isValid ? this.loc.outputCalendar : null; } }, { key: "zone", get: function () { return this._zone; } }, { key: "zoneName", get: function () { return this.isValid ? this.zone.name : null; } }, { key: "year", get: function () { return this.isValid ? this.c.year : NaN; } }, { key: "quarter", get: function () { return this.isValid ? Math.ceil(this.c.month / 3) : NaN; } }, { key: "month", get: function () { return this.isValid ? this.c.month : NaN; } }, { key: "day", get: function () { return this.isValid ? this.c.day : NaN; } }, { key: "hour", get: function () { return this.isValid ? this.c.hour : NaN; } }, { key: "minute", get: function () { return this.isValid ? this.c.minute : NaN; } }, { key: "second", get: function () { return this.isValid ? this.c.second : NaN; } }, { key: "millisecond", get: function () { return this.isValid ? this.c.millisecond : NaN; } }, { key: "weekYear", get: function () { return this.isValid ? jn(this).weekYear : NaN; } }, { key: "weekNumber", get: function () { return this.isValid ? jn(this).weekNumber : NaN; } }, { key: "weekday", get: function () { return this.isValid ? jn(this).weekday : NaN; } }, { key: "ordinal", get: function () { return this.isValid ? xn(this.c).ordinal : NaN; } }, { key: "monthShort", get: function () { return this.isValid ? on.months("short", { locObj: this.loc })[this.month - 1] : null; } }, { key: "monthLong", get: function () { return this.isValid ? on.months("long", { locObj: this.loc })[this.month - 1] : null; } }, { key: "weekdayShort", get: function () { return this.isValid ? on.weekdays("short", { locObj: this.loc })[this.weekday - 1] : null; } }, { key: "weekdayLong", get: function () { return this.isValid ? on.weekdays("long", { locObj: this.loc })[this.weekday - 1] : null; } }, { key: "offset", get: function () { return this.isValid ? +this.o : NaN; } }, { key: "offsetNameShort", get: function () { return this.isValid ? this.zone.offsetName(this.ts, { format: "short", locale: this.locale }) : null; } }, { key: "offsetNameLong", get: function () { return this.isValid ? this.zone.offsetName(this.ts, { format: "long", locale: this.locale }) : null; } }, { key: "isOffsetFixed", get: function () { return this.isValid ? this.zone.isUniversal : null; } }, { key: "isInDST", get: function () { return !this.isOffsetFixed && (this.offset > this.set({ month: 1, day: 1 }).offset || this.offset > this.set({ month: 5 }).offset); } }, { key: "isInLeapYear", get: function () { return be(this.year); } }, { key: "daysInMonth", get: function () { return Se(this.year, this.month); } }, { key: "daysInYear", get: function () { return this.isValid ? Te(this.year) : NaN; } }, { key: "weeksInWeekYear", get: function () { return this.isValid ? Me(this.weekYear) : NaN; } }], [{ key: "DATE_SHORT", get: function () { return G; } }, { key: "DATE_MED", get: function () { return $; } }, { key: "DATE_MED_WITH_WEEKDAY", get: function () { return B; } }, { key: "DATE_FULL", get: function () { return Q; } }, { key: "DATE_HUGE", get: function () { return K; } }, { key: "TIME_SIMPLE", get: function () { return X; } }, { key: "TIME_WITH_SECONDS", get: function () { return ee; } }, { key: "TIME_WITH_SHORT_OFFSET", get: function () { return te; } }, { key: "TIME_WITH_LONG_OFFSET", get: function () { return ne; } }, { key: "TIME_24_SIMPLE", get: function () { return re; } }, { key: "TIME_24_WITH_SECONDS", get: function () { return ie; } }, { key: "TIME_24_WITH_SHORT_OFFSET", get: function () { return oe; } }, { key: "TIME_24_WITH_LONG_OFFSET", get: function () { return ae; } }, { key: "DATETIME_SHORT", get: function () { return ue; } }, { key: "DATETIME_SHORT_WITH_SECONDS", get: function () { return se; } }, { key: "DATETIME_MED", get: function () { return ce; } }, { key: "DATETIME_MED_WITH_SECONDS", get: function () { return le; } }, { key: "DATETIME_MED_WITH_WEEKDAY", get: function () { return fe; } }, { key: "DATETIME_FULL", get: function () { return de; } }, { key: "DATETIME_FULL_WITH_SECONDS", get: function () { return he; } }, { key: "DATETIME_HUGE", get: function () { return me; } }, { key: "DATETIME_HUGE_WITH_SECONDS", get: function () { return ye; } }]), p; }();
    function rr(e) { if (L.isDateTime(e))
        return e; if (e && e.valueOf && y(e.valueOf()))
        return L.fromJSDate(e); if (e && "object" == typeof e)
        return L.fromObject(e); throw new u("Unknown datetime argument: " + e + ", of type " + typeof e); }
    return e.DateTime = L, e.Duration = I, e.FixedOffsetZone = b, e.IANAZone = p, e.Info = on, e.Interval = rn, e.InvalidZone = et, e.Settings = S, e.SystemZone = $e, e.VERSION = "3.0.4", e.Zone = m, Object.defineProperty(e, "__esModule", { value: !0 }), e;
}({});
window.luxon = luxon;