var t0 = /* @__PURE__ */ new Date(), t1 = /* @__PURE__ */ new Date();
function timeInterval(f, p, m, h) {
  function g(r) {
    return f(r = arguments.length === 0 ? /* @__PURE__ */ new Date() : /* @__PURE__ */ new Date(+r)), r;
  }
  return g.floor = (r) => (f(r = /* @__PURE__ */ new Date(+r)), r), g.ceil = (r) => (f(r = /* @__PURE__ */ new Date(r - 1)), p(r, 1), f(r), r), g.round = (r) => {
    let u = g(r), d = g.ceil(r);
    return r - u < d - r ? u : d;
  }, g.offset = (r, u) => (p(r = /* @__PURE__ */ new Date(+r), u == null ? 1 : Math.floor(u)), r), g.range = (r, u, d) => {
    let m2 = [];
    if (r = g.ceil(r), d = d == null ? 1 : Math.floor(d), !(r < u) || !(d > 0)) return m2;
    let h2;
    do
      m2.push(h2 = /* @__PURE__ */ new Date(+r)), p(r, d), f(r);
    while (h2 < r && r < u);
    return m2;
  }, g.filter = (r) => timeInterval((u) => {
    if (u >= u) for (; f(u), !r(u); ) u.setTime(u - 1);
  }, (u, d) => {
    if (u >= u) if (d < 0) for (; ++d <= 0; ) for (; p(u, -1), !r(u); ) ;
    else for (; --d >= 0; ) for (; p(u, 1), !r(u); ) ;
  }), m && (g.count = (d, p2) => (t0.setTime(+d), t1.setTime(+p2), f(t0), f(t1), Math.floor(m(t0, t1))), g.every = (r) => (r = Math.floor(r), !isFinite(r) || !(r > 0) ? null : r > 1 ? g.filter(h ? (u) => h(u) % r === 0 : (u) => g.count(0, u) % r === 0) : g)), g;
}
const millisecond = timeInterval(() => {
}, (r, u) => {
  r.setTime(+r + u);
}, (r, u) => u - r);
millisecond.every = (r) => (r = Math.floor(r), !isFinite(r) || !(r > 0) ? null : r > 1 ? timeInterval((u) => {
  u.setTime(Math.floor(u / r) * r);
}, (u, d) => {
  u.setTime(+u + d * r);
}, (u, d) => (d - u) / r) : millisecond), millisecond.range;
const durationSecond = 1e3, durationMinute = durationSecond * 60, durationHour = durationMinute * 60, durationDay = durationHour * 24, durationWeek = durationDay * 7, durationMonth = durationDay * 30, durationYear = durationDay * 365, second = timeInterval((r) => {
  r.setTime(r - r.getMilliseconds());
}, (r, u) => {
  r.setTime(+r + u * durationSecond);
}, (r, u) => (u - r) / durationSecond, (r) => r.getUTCSeconds());
second.range;
const timeMinute = timeInterval((r) => {
  r.setTime(r - r.getMilliseconds() - r.getSeconds() * durationSecond);
}, (r, u) => {
  r.setTime(+r + u * durationMinute);
}, (r, u) => (u - r) / durationMinute, (r) => r.getMinutes());
timeMinute.range;
const utcMinute = timeInterval((r) => {
  r.setUTCSeconds(0, 0);
}, (r, u) => {
  r.setTime(+r + u * durationMinute);
}, (r, u) => (u - r) / durationMinute, (r) => r.getUTCMinutes());
utcMinute.range;
const timeHour = timeInterval((r) => {
  r.setTime(r - r.getMilliseconds() - r.getSeconds() * durationSecond - r.getMinutes() * durationMinute);
}, (r, u) => {
  r.setTime(+r + u * durationHour);
}, (r, u) => (u - r) / durationHour, (r) => r.getHours());
timeHour.range;
const utcHour = timeInterval((r) => {
  r.setUTCMinutes(0, 0, 0);
}, (r, u) => {
  r.setTime(+r + u * durationHour);
}, (r, u) => (u - r) / durationHour, (r) => r.getUTCHours());
utcHour.range;
const timeDay = timeInterval((r) => r.setHours(0, 0, 0, 0), (r, u) => r.setDate(r.getDate() + u), (r, u) => (u - r - (u.getTimezoneOffset() - r.getTimezoneOffset()) * durationMinute) / durationDay, (r) => r.getDate() - 1);
timeDay.range;
const utcDay = timeInterval((r) => {
  r.setUTCHours(0, 0, 0, 0);
}, (r, u) => {
  r.setUTCDate(r.getUTCDate() + u);
}, (r, u) => (u - r) / durationDay, (r) => r.getUTCDate() - 1);
utcDay.range;
const unixDay = timeInterval((r) => {
  r.setUTCHours(0, 0, 0, 0);
}, (r, u) => {
  r.setUTCDate(r.getUTCDate() + u);
}, (r, u) => (u - r) / durationDay, (r) => Math.floor(r / durationDay));
unixDay.range;
function timeWeekday(r) {
  return timeInterval((u) => {
    u.setDate(u.getDate() - (u.getDay() + 7 - r) % 7), u.setHours(0, 0, 0, 0);
  }, (r2, u) => {
    r2.setDate(r2.getDate() + u * 7);
  }, (r2, u) => (u - r2 - (u.getTimezoneOffset() - r2.getTimezoneOffset()) * durationMinute) / durationWeek);
}
const timeSunday = timeWeekday(0), timeMonday = timeWeekday(1), timeTuesday = timeWeekday(2), timeWednesday = timeWeekday(3), timeThursday = timeWeekday(4), timeFriday = timeWeekday(5), timeSaturday = timeWeekday(6);
timeSunday.range, timeMonday.range, timeTuesday.range, timeWednesday.range, timeThursday.range, timeFriday.range, timeSaturday.range;
function utcWeekday(r) {
  return timeInterval((u) => {
    u.setUTCDate(u.getUTCDate() - (u.getUTCDay() + 7 - r) % 7), u.setUTCHours(0, 0, 0, 0);
  }, (r2, u) => {
    r2.setUTCDate(r2.getUTCDate() + u * 7);
  }, (r2, u) => (u - r2) / durationWeek);
}
const utcSunday = utcWeekday(0), utcMonday = utcWeekday(1), utcTuesday = utcWeekday(2), utcWednesday = utcWeekday(3), utcThursday = utcWeekday(4), utcFriday = utcWeekday(5), utcSaturday = utcWeekday(6);
utcSunday.range, utcMonday.range, utcTuesday.range, utcWednesday.range, utcThursday.range, utcFriday.range, utcSaturday.range;
const timeMonth = timeInterval((r) => {
  r.setDate(1), r.setHours(0, 0, 0, 0);
}, (r, u) => {
  r.setMonth(r.getMonth() + u);
}, (r, u) => u.getMonth() - r.getMonth() + (u.getFullYear() - r.getFullYear()) * 12, (r) => r.getMonth());
timeMonth.range;
const utcMonth = timeInterval((r) => {
  r.setUTCDate(1), r.setUTCHours(0, 0, 0, 0);
}, (r, u) => {
  r.setUTCMonth(r.getUTCMonth() + u);
}, (r, u) => u.getUTCMonth() - r.getUTCMonth() + (u.getUTCFullYear() - r.getUTCFullYear()) * 12, (r) => r.getUTCMonth());
utcMonth.range;
const timeYear = timeInterval((r) => {
  r.setMonth(0, 1), r.setHours(0, 0, 0, 0);
}, (r, u) => {
  r.setFullYear(r.getFullYear() + u);
}, (r, u) => u.getFullYear() - r.getFullYear(), (r) => r.getFullYear());
timeYear.every = (r) => !isFinite(r = Math.floor(r)) || !(r > 0) ? null : timeInterval((u) => {
  u.setFullYear(Math.floor(u.getFullYear() / r) * r), u.setMonth(0, 1), u.setHours(0, 0, 0, 0);
}, (u, d) => {
  u.setFullYear(u.getFullYear() + d * r);
}), timeYear.range;
const utcYear = timeInterval((r) => {
  r.setUTCMonth(0, 1), r.setUTCHours(0, 0, 0, 0);
}, (r, u) => {
  r.setUTCFullYear(r.getUTCFullYear() + u);
}, (r, u) => u.getUTCFullYear() - r.getUTCFullYear(), (r) => r.getUTCFullYear());
utcYear.every = (r) => !isFinite(r = Math.floor(r)) || !(r > 0) ? null : timeInterval((u) => {
  u.setUTCFullYear(Math.floor(u.getUTCFullYear() / r) * r), u.setUTCMonth(0, 1), u.setUTCHours(0, 0, 0, 0);
}, (u, d) => {
  u.setUTCFullYear(u.getUTCFullYear() + d * r);
}), utcYear.range;
function localDate(r) {
  if (0 <= r.y && r.y < 100) {
    var u = new Date(-1, r.m, r.d, r.H, r.M, r.S, r.L);
    return u.setFullYear(r.y), u;
  }
  return new Date(r.y, r.m, r.d, r.H, r.M, r.S, r.L);
}
function utcDate(r) {
  if (0 <= r.y && r.y < 100) {
    var u = new Date(Date.UTC(-1, r.m, r.d, r.H, r.M, r.S, r.L));
    return u.setUTCFullYear(r.y), u;
  }
  return new Date(Date.UTC(r.y, r.m, r.d, r.H, r.M, r.S, r.L));
}
function newDate(r, u, d) {
  return {
    y: r,
    m: u,
    d,
    H: 0,
    M: 0,
    S: 0,
    L: 0
  };
}
function formatLocale(r) {
  var u = r.dateTime, d = r.date, f = r.time, p = r.periods, m = r.days, h = r.shortDays, g = r.months, _ = r.shortMonths, v = formatRe(p), y = formatLookup(p), b = formatRe(m), x = formatLookup(m), S = formatRe(h), C = formatLookup(h), w = formatRe(g), T = formatLookup(g), E = formatRe(_), D = formatLookup(_), O = {
    a: H,
    A: U,
    b: W,
    B: G,
    c: null,
    d: formatDayOfMonth,
    e: formatDayOfMonth,
    f: formatMicroseconds,
    g: formatYearISO,
    G: formatFullYearISO,
    H: formatHour24,
    I: formatHour12,
    j: formatDayOfYear,
    L: formatMilliseconds,
    m: formatMonthNumber,
    M: formatMinutes,
    p: K,
    q,
    Q: formatUnixTimestamp,
    s: formatUnixTimestampSeconds,
    S: formatSeconds,
    u: formatWeekdayNumberMonday,
    U: formatWeekNumberSunday,
    V: formatWeekNumberISO,
    w: formatWeekdayNumberSunday,
    W: formatWeekNumberMonday,
    x: null,
    X: null,
    y: formatYear,
    Y: formatFullYear,
    Z: formatZone,
    "%": formatLiteralPercent
  }, k = {
    a: J,
    A: Y,
    b: X,
    B: Z,
    c: null,
    d: formatUTCDayOfMonth,
    e: formatUTCDayOfMonth,
    f: formatUTCMicroseconds,
    g: formatUTCYearISO,
    G: formatUTCFullYearISO,
    H: formatUTCHour24,
    I: formatUTCHour12,
    j: formatUTCDayOfYear,
    L: formatUTCMilliseconds,
    m: formatUTCMonthNumber,
    M: formatUTCMinutes,
    p: Q,
    q: $,
    Q: formatUnixTimestamp,
    s: formatUnixTimestampSeconds,
    S: formatUTCSeconds,
    u: formatUTCWeekdayNumberMonday,
    U: formatUTCWeekNumberSunday,
    V: formatUTCWeekNumberISO,
    w: formatUTCWeekdayNumberSunday,
    W: formatUTCWeekNumberMonday,
    x: null,
    X: null,
    y: formatUTCYear,
    Y: formatUTCFullYear,
    Z: formatUTCZone,
    "%": formatLiteralPercent
  }, A = {
    a: F,
    A: I,
    b: L,
    B: R,
    c: z,
    d: parseDayOfMonth,
    e: parseDayOfMonth,
    f: parseMicroseconds,
    g: parseYear,
    G: parseFullYear,
    H: parseHour24,
    I: parseHour24,
    j: parseDayOfYear,
    L: parseMilliseconds,
    m: parseMonthNumber,
    M: parseMinutes,
    p: P,
    q: parseQuarter,
    Q: parseUnixTimestamp,
    s: parseUnixTimestampSeconds,
    S: parseSeconds,
    u: parseWeekdayNumberMonday,
    U: parseWeekNumberSunday,
    V: parseWeekNumberISO,
    w: parseWeekdayNumberSunday,
    W: parseWeekNumberMonday,
    x: B,
    X: V,
    y: parseYear,
    Y: parseFullYear,
    Z: parseZone,
    "%": parseLiteralPercent
  };
  O.x = j(d, O), O.X = j(f, O), O.c = j(u, O), k.x = j(d, k), k.X = j(f, k), k.c = j(u, k);
  function j(r2, u2) {
    return function(d2) {
      var f2 = [], p2 = -1, m2 = 0, h2 = r2.length, g2, _2, v2;
      for (d2 instanceof Date || (d2 = /* @__PURE__ */ new Date(+d2)); ++p2 < h2; ) r2.charCodeAt(p2) === 37 && (f2.push(r2.slice(m2, p2)), (_2 = pads[g2 = r2.charAt(++p2)]) == null ? _2 = g2 === "e" ? " " : "0" : g2 = r2.charAt(++p2), (v2 = u2[g2]) && (g2 = v2(d2, _2)), f2.push(g2), m2 = p2 + 1);
      return f2.push(r2.slice(m2, p2)), f2.join("");
    };
  }
  function M(r2, u2) {
    return function(d2) {
      var f2 = newDate(1900, void 0, 1), p2 = N(f2, r2, d2 += "", 0), m2, h2;
      if (p2 != d2.length) return null;
      if ("Q" in f2) return new Date(f2.Q);
      if ("s" in f2) return new Date(f2.s * 1e3 + ("L" in f2 ? f2.L : 0));
      if (u2 && !("Z" in f2) && (f2.Z = 0), "p" in f2 && (f2.H = f2.H % 12 + f2.p * 12), f2.m === void 0 && (f2.m = "q" in f2 ? f2.q : 0), "V" in f2) {
        if (f2.V < 1 || f2.V > 53) return null;
        "w" in f2 || (f2.w = 1), "Z" in f2 ? (m2 = utcDate(newDate(f2.y, 0, 1)), h2 = m2.getUTCDay(), m2 = h2 > 4 || h2 === 0 ? utcMonday.ceil(m2) : utcMonday(m2), m2 = utcDay.offset(m2, (f2.V - 1) * 7), f2.y = m2.getUTCFullYear(), f2.m = m2.getUTCMonth(), f2.d = m2.getUTCDate() + (f2.w + 6) % 7) : (m2 = localDate(newDate(f2.y, 0, 1)), h2 = m2.getDay(), m2 = h2 > 4 || h2 === 0 ? timeMonday.ceil(m2) : timeMonday(m2), m2 = timeDay.offset(m2, (f2.V - 1) * 7), f2.y = m2.getFullYear(), f2.m = m2.getMonth(), f2.d = m2.getDate() + (f2.w + 6) % 7);
      } else ("W" in f2 || "U" in f2) && ("w" in f2 || (f2.w = "u" in f2 ? f2.u % 7 : "W" in f2 ? 1 : 0), h2 = "Z" in f2 ? utcDate(newDate(f2.y, 0, 1)).getUTCDay() : localDate(newDate(f2.y, 0, 1)).getDay(), f2.m = 0, f2.d = "W" in f2 ? (f2.w + 6) % 7 + f2.W * 7 - (h2 + 5) % 7 : f2.w + f2.U * 7 - (h2 + 6) % 7);
      return "Z" in f2 ? (f2.H += f2.Z / 100 | 0, f2.M += f2.Z % 100, utcDate(f2)) : localDate(f2);
    };
  }
  function N(r2, u2, d2, f2) {
    for (var p2 = 0, m2 = u2.length, h2 = d2.length, g2, _2; p2 < m2; ) {
      if (f2 >= h2) return -1;
      if (g2 = u2.charCodeAt(p2++), g2 === 37) {
        if (g2 = u2.charAt(p2++), _2 = A[g2 in pads ? u2.charAt(p2++) : g2], !_2 || (f2 = _2(r2, d2, f2)) < 0) return -1;
      } else if (g2 != d2.charCodeAt(f2++)) return -1;
    }
    return f2;
  }
  function P(r2, u2, d2) {
    var f2 = v.exec(u2.slice(d2));
    return f2 ? (r2.p = y.get(f2[0].toLowerCase()), d2 + f2[0].length) : -1;
  }
  function F(r2, u2, d2) {
    var f2 = S.exec(u2.slice(d2));
    return f2 ? (r2.w = C.get(f2[0].toLowerCase()), d2 + f2[0].length) : -1;
  }
  function I(r2, u2, d2) {
    var f2 = b.exec(u2.slice(d2));
    return f2 ? (r2.w = x.get(f2[0].toLowerCase()), d2 + f2[0].length) : -1;
  }
  function L(r2, u2, d2) {
    var f2 = E.exec(u2.slice(d2));
    return f2 ? (r2.m = D.get(f2[0].toLowerCase()), d2 + f2[0].length) : -1;
  }
  function R(r2, u2, d2) {
    var f2 = w.exec(u2.slice(d2));
    return f2 ? (r2.m = T.get(f2[0].toLowerCase()), d2 + f2[0].length) : -1;
  }
  function z(r2, d2, f2) {
    return N(r2, u, d2, f2);
  }
  function B(r2, u2, f2) {
    return N(r2, d, u2, f2);
  }
  function V(r2, u2, d2) {
    return N(r2, f, u2, d2);
  }
  function H(r2) {
    return h[r2.getDay()];
  }
  function U(r2) {
    return m[r2.getDay()];
  }
  function W(r2) {
    return _[r2.getMonth()];
  }
  function G(r2) {
    return g[r2.getMonth()];
  }
  function K(r2) {
    return p[+(r2.getHours() >= 12)];
  }
  function q(r2) {
    return 1 + ~~(r2.getMonth() / 3);
  }
  function J(r2) {
    return h[r2.getUTCDay()];
  }
  function Y(r2) {
    return m[r2.getUTCDay()];
  }
  function X(r2) {
    return _[r2.getUTCMonth()];
  }
  function Z(r2) {
    return g[r2.getUTCMonth()];
  }
  function Q(r2) {
    return p[+(r2.getUTCHours() >= 12)];
  }
  function $(r2) {
    return 1 + ~~(r2.getUTCMonth() / 3);
  }
  return {
    format: function(r2) {
      var u2 = j(r2 += "", O);
      return u2.toString = function() {
        return r2;
      }, u2;
    },
    parse: function(r2) {
      var u2 = M(r2 += "", false);
      return u2.toString = function() {
        return r2;
      }, u2;
    },
    utcFormat: function(r2) {
      var u2 = j(r2 += "", k);
      return u2.toString = function() {
        return r2;
      }, u2;
    },
    utcParse: function(r2) {
      var u2 = M(r2 += "", true);
      return u2.toString = function() {
        return r2;
      }, u2;
    }
  };
}
var pads = {
  "-": "",
  _: " ",
  0: "0"
}, numberRe = /^\s*\d+/, percentRe = /^%/, requoteRe = /[\\^$*+?|[\]().{}]/g;
function pad(r, u, d) {
  var f = r < 0 ? "-" : "", p = (f ? -r : r) + "", m = p.length;
  return f + (m < d ? Array(d - m + 1).join(u) + p : p);
}
function requote(r) {
  return r.replace(requoteRe, "\\$&");
}
function formatRe(r) {
  return RegExp("^(?:" + r.map(requote).join("|") + ")", "i");
}
function formatLookup(r) {
  return new Map(r.map((r2, u) => [r2.toLowerCase(), u]));
}
function parseWeekdayNumberSunday(r, u, d) {
  var f = numberRe.exec(u.slice(d, d + 1));
  return f ? (r.w = +f[0], d + f[0].length) : -1;
}
function parseWeekdayNumberMonday(r, u, d) {
  var f = numberRe.exec(u.slice(d, d + 1));
  return f ? (r.u = +f[0], d + f[0].length) : -1;
}
function parseWeekNumberSunday(r, u, d) {
  var f = numberRe.exec(u.slice(d, d + 2));
  return f ? (r.U = +f[0], d + f[0].length) : -1;
}
function parseWeekNumberISO(r, u, d) {
  var f = numberRe.exec(u.slice(d, d + 2));
  return f ? (r.V = +f[0], d + f[0].length) : -1;
}
function parseWeekNumberMonday(r, u, d) {
  var f = numberRe.exec(u.slice(d, d + 2));
  return f ? (r.W = +f[0], d + f[0].length) : -1;
}
function parseFullYear(r, u, d) {
  var f = numberRe.exec(u.slice(d, d + 4));
  return f ? (r.y = +f[0], d + f[0].length) : -1;
}
function parseYear(r, u, d) {
  var f = numberRe.exec(u.slice(d, d + 2));
  return f ? (r.y = +f[0] + (+f[0] > 68 ? 1900 : 2e3), d + f[0].length) : -1;
}
function parseZone(r, u, d) {
  var f = /^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(u.slice(d, d + 6));
  return f ? (r.Z = f[1] ? 0 : -(f[2] + (f[3] || "00")), d + f[0].length) : -1;
}
function parseQuarter(r, u, d) {
  var f = numberRe.exec(u.slice(d, d + 1));
  return f ? (r.q = f[0] * 3 - 3, d + f[0].length) : -1;
}
function parseMonthNumber(r, u, d) {
  var f = numberRe.exec(u.slice(d, d + 2));
  return f ? (r.m = f[0] - 1, d + f[0].length) : -1;
}
function parseDayOfMonth(r, u, d) {
  var f = numberRe.exec(u.slice(d, d + 2));
  return f ? (r.d = +f[0], d + f[0].length) : -1;
}
function parseDayOfYear(r, u, d) {
  var f = numberRe.exec(u.slice(d, d + 3));
  return f ? (r.m = 0, r.d = +f[0], d + f[0].length) : -1;
}
function parseHour24(r, u, d) {
  var f = numberRe.exec(u.slice(d, d + 2));
  return f ? (r.H = +f[0], d + f[0].length) : -1;
}
function parseMinutes(r, u, d) {
  var f = numberRe.exec(u.slice(d, d + 2));
  return f ? (r.M = +f[0], d + f[0].length) : -1;
}
function parseSeconds(r, u, d) {
  var f = numberRe.exec(u.slice(d, d + 2));
  return f ? (r.S = +f[0], d + f[0].length) : -1;
}
function parseMilliseconds(r, u, d) {
  var f = numberRe.exec(u.slice(d, d + 3));
  return f ? (r.L = +f[0], d + f[0].length) : -1;
}
function parseMicroseconds(r, u, d) {
  var f = numberRe.exec(u.slice(d, d + 6));
  return f ? (r.L = Math.floor(f[0] / 1e3), d + f[0].length) : -1;
}
function parseLiteralPercent(r, u, d) {
  var f = percentRe.exec(u.slice(d, d + 1));
  return f ? d + f[0].length : -1;
}
function parseUnixTimestamp(r, u, d) {
  var f = numberRe.exec(u.slice(d));
  return f ? (r.Q = +f[0], d + f[0].length) : -1;
}
function parseUnixTimestampSeconds(r, u, d) {
  var f = numberRe.exec(u.slice(d));
  return f ? (r.s = +f[0], d + f[0].length) : -1;
}
function formatDayOfMonth(r, u) {
  return pad(r.getDate(), u, 2);
}
function formatHour24(r, u) {
  return pad(r.getHours(), u, 2);
}
function formatHour12(r, u) {
  return pad(r.getHours() % 12 || 12, u, 2);
}
function formatDayOfYear(r, u) {
  return pad(1 + timeDay.count(timeYear(r), r), u, 3);
}
function formatMilliseconds(r, u) {
  return pad(r.getMilliseconds(), u, 3);
}
function formatMicroseconds(r, u) {
  return formatMilliseconds(r, u) + "000";
}
function formatMonthNumber(r, u) {
  return pad(r.getMonth() + 1, u, 2);
}
function formatMinutes(r, u) {
  return pad(r.getMinutes(), u, 2);
}
function formatSeconds(r, u) {
  return pad(r.getSeconds(), u, 2);
}
function formatWeekdayNumberMonday(r) {
  var u = r.getDay();
  return u === 0 ? 7 : u;
}
function formatWeekNumberSunday(r, u) {
  return pad(timeSunday.count(timeYear(r) - 1, r), u, 2);
}
function dISO(r) {
  var u = r.getDay();
  return u >= 4 || u === 0 ? timeThursday(r) : timeThursday.ceil(r);
}
function formatWeekNumberISO(r, u) {
  return r = dISO(r), pad(timeThursday.count(timeYear(r), r) + (timeYear(r).getDay() === 4), u, 2);
}
function formatWeekdayNumberSunday(r) {
  return r.getDay();
}
function formatWeekNumberMonday(r, u) {
  return pad(timeMonday.count(timeYear(r) - 1, r), u, 2);
}
function formatYear(r, u) {
  return pad(r.getFullYear() % 100, u, 2);
}
function formatYearISO(r, u) {
  return r = dISO(r), pad(r.getFullYear() % 100, u, 2);
}
function formatFullYear(r, u) {
  return pad(r.getFullYear() % 1e4, u, 4);
}
function formatFullYearISO(r, u) {
  var d = r.getDay();
  return r = d >= 4 || d === 0 ? timeThursday(r) : timeThursday.ceil(r), pad(r.getFullYear() % 1e4, u, 4);
}
function formatZone(r) {
  var u = r.getTimezoneOffset();
  return (u > 0 ? "-" : (u *= -1, "+")) + pad(u / 60 | 0, "0", 2) + pad(u % 60, "0", 2);
}
function formatUTCDayOfMonth(r, u) {
  return pad(r.getUTCDate(), u, 2);
}
function formatUTCHour24(r, u) {
  return pad(r.getUTCHours(), u, 2);
}
function formatUTCHour12(r, u) {
  return pad(r.getUTCHours() % 12 || 12, u, 2);
}
function formatUTCDayOfYear(r, u) {
  return pad(1 + utcDay.count(utcYear(r), r), u, 3);
}
function formatUTCMilliseconds(r, u) {
  return pad(r.getUTCMilliseconds(), u, 3);
}
function formatUTCMicroseconds(r, u) {
  return formatUTCMilliseconds(r, u) + "000";
}
function formatUTCMonthNumber(r, u) {
  return pad(r.getUTCMonth() + 1, u, 2);
}
function formatUTCMinutes(r, u) {
  return pad(r.getUTCMinutes(), u, 2);
}
function formatUTCSeconds(r, u) {
  return pad(r.getUTCSeconds(), u, 2);
}
function formatUTCWeekdayNumberMonday(r) {
  var u = r.getUTCDay();
  return u === 0 ? 7 : u;
}
function formatUTCWeekNumberSunday(r, u) {
  return pad(utcSunday.count(utcYear(r) - 1, r), u, 2);
}
function UTCdISO(r) {
  var u = r.getUTCDay();
  return u >= 4 || u === 0 ? utcThursday(r) : utcThursday.ceil(r);
}
function formatUTCWeekNumberISO(r, u) {
  return r = UTCdISO(r), pad(utcThursday.count(utcYear(r), r) + (utcYear(r).getUTCDay() === 4), u, 2);
}
function formatUTCWeekdayNumberSunday(r) {
  return r.getUTCDay();
}
function formatUTCWeekNumberMonday(r, u) {
  return pad(utcMonday.count(utcYear(r) - 1, r), u, 2);
}
function formatUTCYear(r, u) {
  return pad(r.getUTCFullYear() % 100, u, 2);
}
function formatUTCYearISO(r, u) {
  return r = UTCdISO(r), pad(r.getUTCFullYear() % 100, u, 2);
}
function formatUTCFullYear(r, u) {
  return pad(r.getUTCFullYear() % 1e4, u, 4);
}
function formatUTCFullYearISO(r, u) {
  var d = r.getUTCDay();
  return r = d >= 4 || d === 0 ? utcThursday(r) : utcThursday.ceil(r), pad(r.getUTCFullYear() % 1e4, u, 4);
}
function formatUTCZone() {
  return "+0000";
}
function formatLiteralPercent() {
  return "%";
}
function formatUnixTimestamp(r) {
  return +r;
}
function formatUnixTimestampSeconds(r) {
  return Math.floor(r / 1e3);
}
var locale, timeFormat, timeParse, utcFormat, utcParse;
defaultLocale({
  dateTime: "%x, %X",
  date: "%-m/%-d/%Y",
  time: "%-I:%M:%S %p",
  periods: ["AM", "PM"],
  days: [
    "Sunday",
    "Monday",
    "Tuesday",
    "Wednesday",
    "Thursday",
    "Friday",
    "Saturday"
  ],
  shortDays: [
    "Sun",
    "Mon",
    "Tue",
    "Wed",
    "Thu",
    "Fri",
    "Sat"
  ],
  months: [
    "January",
    "February",
    "March",
    "April",
    "May",
    "June",
    "July",
    "August",
    "September",
    "October",
    "November",
    "December"
  ],
  shortMonths: [
    "Jan",
    "Feb",
    "Mar",
    "Apr",
    "May",
    "Jun",
    "Jul",
    "Aug",
    "Sep",
    "Oct",
    "Nov",
    "Dec"
  ]
});
function defaultLocale(r) {
  return locale = formatLocale(r), timeFormat = locale.format, timeParse = locale.parse, utcFormat = locale.utcFormat, utcParse = locale.utcParse, locale;
}
export {
  durationSecond as A,
  timeMinute as C,
  durationHour as D,
  durationDay as E,
  durationYear as M,
  millisecond as N,
  durationMinute as O,
  utcHour as S,
  second as T,
  utcSunday as _,
  formatLocale as a,
  utcDay as b,
  timeMonth as c,
  timeMonday as d,
  timeSaturday as f,
  timeWednesday as g,
  timeTuesday as h,
  utcParse as i,
  durationWeek as j,
  durationMonth as k,
  utcMonth as l,
  timeThursday as m,
  timeParse as n,
  timeYear as o,
  timeSunday as p,
  utcFormat as r,
  utcYear as s,
  timeFormat as t,
  timeFriday as u,
  timeDay as v,
  utcMinute as w,
  timeHour as x,
  unixDay as y
};
