2
"object" == typeof exports && "undefined" != typeof module
3
? (module.exports = t())
4
: "function" == typeof define && define.amd
11
return H.apply(null, arguments);
16
"[object Array]" === Object.prototype.toString.call(e)
20
return null != e && "[object Object]" === Object.prototype.toString.call(e);
23
return Object.prototype.hasOwnProperty.call(e, t);
26
if (Object.getOwnPropertyNames)
27
return 0 === Object.getOwnPropertyNames(e).length;
28
for (var t in e) if (c(e, t)) return;
36
"number" == typeof e ||
37
"[object Number]" === Object.prototype.toString.call(e)
42
e instanceof Date || "[object Date]" === Object.prototype.toString.call(e)
46
for (var n = [], s = e.length, i = 0; i < s; ++i) n.push(t(e[i], i));
50
for (var n in t) c(t, n) && (e[n] = t[n]);
52
c(t, "toString") && (e.toString = t.toString),
53
c(t, "valueOf") && (e.valueOf = t.valueOf),
57
function l(e, t, n, s) {
58
return Wt(e, t, n, s, !0).utc();
87
s = e._d && !isNaN(e._d.getTime());
91
(n = j.call(t.parsedDateParts, function (e) {
100
!t.weekdayMismatch &&
103
!t.userInvalidated &&
104
(!t.meridiem || (t.meridiem && n))),
108
0 === t.charsLeftOver &&
109
0 === t.unusedTokens.length &&
110
void 0 === t.bigHour),
111
null != Object.isFrozen && Object.isFrozen(e)
113
: ((e._isValid = s), e._isValid)
118
return null != e ? E(p(t), e) : (p(t).userInvalidated = !0), t;
121
Array.prototype.some ||
123
for (var t = Object(this), n = t.length >>> 0, s = 0; s < n; s++)
124
if (s in t && e.call(this, t[s], s, t)) return !0;
127
Z = (_.momentProperties = []),
135
(g(t._isAMomentObject) || (e._isAMomentObject = t._isAMomentObject),
136
g(t._i) || (e._i = t._i),
137
g(t._f) || (e._f = t._f),
138
g(t._l) || (e._l = t._l),
139
g(t._strict) || (e._strict = t._strict),
140
g(t._tzm) || (e._tzm = t._tzm),
141
g(t._isUTC) || (e._isUTC = t._isUTC),
142
g(t._offset) || (e._offset = t._offset),
143
g(t._pf) || (e._pf = p(t)),
144
g(t._locale) || (e._locale = t._locale),
147
for (n = 0; n < r; n++) g((i = t[(s = Z[n])])) || (e[s] = i);
152
(this._d = new Date(null != e._d ? e._d.getTime() : NaN)),
153
this.isValid() || (this._d = new Date(NaN)),
154
!1 === z && ((z = !0), _.updateOffset(this), (z = !1));
157
return e instanceof $ || (null != e && null != e._isAMomentObject);
160
!1 === _.suppressDeprecationWarnings &&
161
"undefined" != typeof console &&
163
console.warn("Deprecation warning: " + e);
167
return E(function () {
168
if ((null != _.deprecationHandler && _.deprecationHandler(null, r), o)) {
169
for (var e, t, n = [], s = arguments.length, i = 0; i < s; i++) {
170
if (((e = ""), "object" == typeof arguments[i])) {
171
for (t in ((e += "\n[" + i + "] "), arguments[0]))
172
c(arguments[0], t) && (e += t + ": " + arguments[0][t] + ", ");
174
} else e = arguments[i];
180
Array.prototype.slice.call(n).join("") +
186
return a.apply(this, arguments);
191
null != _.deprecationHandler && _.deprecationHandler(e, t),
192
J[e] || (B(t), (J[e] = !0));
196
("undefined" != typeof Function && e instanceof Function) ||
197
"[object Function]" === Object.prototype.toString.call(e)
206
? ((s[n] = {}), E(s[n], e[n]), E(s[n], t[n]))
210
for (n in e) c(e, n) && !c(t, n) && F(e[n]) && (s[n] = E({}, s[n]));
214
null != e && this.set(e);
216
(_.suppressDeprecationWarnings = !1), (_.deprecationHandler = null);
222
for (t in e) c(e, t) && n.push(t);
225
function r(e, t, n) {
226
var s = "" + Math.abs(e);
228
(0 <= e ? (n ? "+" : "") : "-") +
229
Math.pow(10, Math.max(0, t - s.length))
236
/(\[[^\[]*\])|(\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|N{1,5}|YYYYYY|YYYYY|YYYY|YY|y{2,4}|yo?|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g,
237
ne = /(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g,
240
function s(e, t, n, s) {
249
(ie[t[0]] = function () {
250
return r(i.apply(this, arguments), t[1], t[2]);
253
(ie[n] = function () {
254
return this.localeData().ordinal(i.apply(this, arguments), e);
259
? ((t = ae(t, e.localeData())),
263
for (var e, i = s.match(te), t = 0, r = i.length; t < r; t++)
266
: (i[t] = (e = i[t]).match(/\[[\s\S]/)
267
? e.replace(/^\[|\]$/g, "")
268
: e.replace(/\\/g, ""));
269
return function (e) {
270
for (var t = "", n = 0; n < r; n++)
271
t += a(i[n]) ? i[n].call(e, s) : i[n];
276
: e.localeData().invalidDate();
281
return t.longDateFormat(e) || e;
283
for (ne.lastIndex = 0; 0 <= n && ne.test(e); )
284
(e = e.replace(ne, s)), (ne.lastIndex = 0), --n;
298
isoweekdays: "isoWeekday",
299
isoweekday: "isoWeekday",
301
dayofyears: "dayOfYear",
302
dayofyear: "dayOfYear",
307
milliseconds: "millisecond",
308
millisecond: "millisecond",
322
weekyears: "weekYear",
323
weekyear: "weekYear",
325
isoweekyears: "isoWeekYear",
326
isoweekyear: "isoWeekYear",
338
return "string" == typeof e ? oe[e] || oe[e.toLowerCase()] : void 0;
344
for (n in e) c(e, n) && (t = o(n)) && (s[t] = e[n]);
372
_e = /\d\d\d\d\d\d?/,
378
Me = /Z|[+-]\d\d:?\d\d/gi,
379
ve = /Z|[+-]\d\d(?::?\d\d)?/gi,
381
/[0-9]{0,256}['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFF07\uFF10-\uFFEF]{1,256}|[\u0600-\u06FF\/]{1,256}(\s*?[\u0600-\u06FF]{1,256}){1,2}/i,
384
function h(e, n, s) {
388
return e && s ? s : n;
393
? Ye[e](t._strict, t._locale)
399
/\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g,
400
function (e, t, n, s, i) {
401
return t || n || s || i;
408
return e.replace(/[-\/\\^$*+?.()|[\]{}]/g, "\\$&");
411
return e < 0 ? Math.ceil(e) || 0 : Math.floor(e);
416
return (t = 0 != e && isFinite(e) ? m(e) : t);
425
"string" == typeof e && (e = [e]),
427
(i = function (e, t) {
438
v(e, function (e, t, n, s) {
439
(n._w = n._w || {}), i(e, n._w, n, s);
443
return (e % 4 == 0 && e % 100 != 0) || e % 400 == 0;
455
return be(e) ? 366 : 365;
457
s("Y", 0, 0, function () {
459
return e <= 9999 ? r(e, 4) : "+" + e;
461
s(0, ["YY", 2], 0, function () {
462
return this.year() % 100;
464
s(0, ["YYYY", 4], 0, "year"),
465
s(0, ["YYYYY", 5], 0, "year"),
466
s(0, ["YYYYYY", 6, !0], 0, "year"),
472
v(["YYYYY", "YYYYYY"], D),
473
v("YYYY", function (e, t) {
474
t[D] = 2 === e.length ? _.parseTwoDigitYear(e) : M(e);
476
v("YY", function (e, t) {
477
t[D] = _.parseTwoDigitYear(e);
479
v("Y", function (e, t) {
480
t[D] = parseInt(e, 10);
482
(_.parseTwoDigitYear = function (e) {
483
return M(e) + (68 < M(e) ? 1900 : 2e3);
486
Pe = Re("FullYear", !0);
488
return function (e) {
490
? (Ue(this, t, e), _.updateOffset(this, n), this)
495
if (!e.isValid()) return NaN;
500
return s ? n.getUTCMilliseconds() : n.getMilliseconds();
502
return s ? n.getUTCSeconds() : n.getSeconds();
504
return s ? n.getUTCMinutes() : n.getMinutes();
506
return s ? n.getUTCHours() : n.getHours();
508
return s ? n.getUTCDate() : n.getDate();
510
return s ? n.getUTCDay() : n.getDay();
512
return s ? n.getUTCMonth() : n.getMonth();
514
return s ? n.getUTCFullYear() : n.getFullYear();
519
function Ue(e, t, n) {
521
if (e.isValid() && !isNaN(n)) {
522
switch (((s = e._d), (i = e._isUTC), t)) {
524
return i ? s.setUTCMilliseconds(n) : s.setMilliseconds(n);
526
return i ? s.setUTCSeconds(n) : s.setSeconds(n);
528
return i ? s.setUTCMinutes(n) : s.setMinutes(n);
530
return i ? s.setUTCHours(n) : s.setHours(n);
532
return i ? s.setUTCDate(n) : s.setDate(n);
540
(e = 29 !== (e = e.date()) || 1 !== r || be(t) ? e : 28),
541
i ? s.setUTCFullYear(t, r, e) : s.setFullYear(t, r, e);
546
return isNaN(e) || isNaN(t)
548
: ((n = ((t % (n = 12)) + n) % n),
550
1 == n ? (be(e) ? 29 : 28) : 31 - ((n % 7) % 2));
553
Array.prototype.indexOf ||
555
for (var t = 0; t < this.length; ++t) if (this[t] === e) return t;
558
s("M", ["MM", 2], "Mo", function () {
559
return this.month() + 1;
561
s("MMM", 0, 0, function (e) {
562
return this.localeData().monthsShort(this, e);
564
s("MMMM", 0, 0, function (e) {
565
return this.localeData().months(this, e);
569
h("MMM", function (e, t) {
570
return t.monthsShortRegex(e);
572
h("MMMM", function (e, t) {
573
return t.monthsRegex(e);
575
v(["M", "MM"], function (e, t) {
578
v(["MMM", "MMMM"], function (e, t, n, s) {
579
s = n._locale.monthsParse(e, s, n._strict);
580
null != s ? (t[Y] = s) : (p(n).invalidMonth = e);
583
"January_February_March_April_May_June_July_August_September_October_November_December".split(
586
Le = "Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),
587
Ve = /D[oD]?(\[[^\[\]]*\]|\s)+MMMM?/,
592
if ("string" == typeof t)
593
if (/^\d+$/.test(t)) t = M(t);
594
else if (!w((t = e.localeData().monthsParse(t)))) return;
595
var n = (n = e.date()) < 29 ? n : Math.min(n, He(e.year(), t));
596
e._isUTC ? e._d.setUTCMonth(t, n) : e._d.setMonth(t, n);
601
? (Ae(this, e), _.updateOffset(this, !0), this)
606
return t.length - e.length;
608
for (var t, n, s = [], i = [], r = [], a = 0; a < 12; a++)
610
(t = f(this.monthsShort(n, ""))),
611
(n = f(this.months(n, ""))),
619
(this._monthsRegex = new RegExp("^(" + r.join("|") + ")", "i")),
620
(this._monthsShortRegex = this._monthsRegex),
621
(this._monthsStrictRegex = new RegExp("^(" + i.join("|") + ")", "i")),
622
(this._monthsShortStrictRegex = new RegExp(
623
"^(" + s.join("|") + ")",
627
function Ze(e, t, n, s, i, r, a) {
631
? ((o = new Date(e + 400, t, n, s, i, r, a)),
632
isFinite(o.getFullYear()) && o.setFullYear(e))
633
: (o = new Date(e, t, n, s, i, r, a)),
641
? (((t = Array.prototype.slice.call(arguments))[0] = e + 400),
642
(t = new Date(Date.UTC.apply(null, t))),
643
isFinite(t.getUTCFullYear()) && t.setUTCFullYear(e))
644
: (t = new Date(Date.UTC.apply(null, arguments))),
648
function qe(e, t, n) {
650
return n - ((7 + ze(e, 0, n).getUTCDay() - t) % 7) - 1;
652
function $e(e, t, n, s, i) {
654
t = 1 + 7 * (t - 1) + ((7 + n - s) % 7) + qe(e, s, i),
657
? We((r = e - 1)) + t
659
? ((r = e + 1), t - We(e))
661
return { year: r, dayOfYear: n };
663
function Be(e, t, n) {
666
r = qe(e.year(), t, n),
667
r = Math.floor((e.dayOfYear() - r - 1) / 7) + 1;
670
? (s = r + N((i = e.year() - 1), t, n))
671
: r > N(e.year(), t, n)
672
? ((s = r - N(e.year(), t, n)), (i = e.year() + 1))
673
: ((i = e.year()), (s = r)),
677
function N(e, t, n) {
680
return (We(e) - s + t) / 7;
682
s("w", ["ww", 2], "wo", "week"),
683
s("W", ["WW", 2], "Wo", "isoWeek"),
688
Oe(["w", "ww", "W", "WW"], function (e, t, n, s) {
689
t[s.substr(0, 1)] = M(e);
692
return e.slice(t, 7).concat(e.slice(0, t));
694
s("d", 0, "do", "day"),
695
s("dd", 0, 0, function (e) {
696
return this.localeData().weekdaysMin(this, e);
698
s("ddd", 0, 0, function (e) {
699
return this.localeData().weekdaysShort(this, e);
701
s("dddd", 0, 0, function (e) {
702
return this.localeData().weekdays(this, e);
704
s("e", 0, 0, "weekday"),
705
s("E", 0, 0, "isoWeekday"),
709
h("dd", function (e, t) {
710
return t.weekdaysMinRegex(e);
712
h("ddd", function (e, t) {
713
return t.weekdaysShortRegex(e);
715
h("dddd", function (e, t) {
716
return t.weekdaysRegex(e);
718
Oe(["dd", "ddd", "dddd"], function (e, t, n, s) {
719
s = n._locale.weekdaysParse(e, s, n._strict);
720
null != s ? (t.d = s) : (p(n).invalidWeekday = e);
722
Oe(["d", "e", "E"], function (e, t, n, s) {
725
var Qe = "Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split(
728
Xe = "Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),
729
Ke = "Su_Mo_Tu_We_Th_Fr_Sa".split("_"),
735
return t.length - e.length;
737
for (var t, n, s, i = [], r = [], a = [], o = [], u = 0; u < 7; u++)
738
(s = l([2e3, 1]).day(u)),
739
(t = f(this.weekdaysMin(s, ""))),
740
(n = f(this.weekdaysShort(s, ""))),
741
(s = f(this.weekdays(s, ""))),
752
(this._weekdaysRegex = new RegExp("^(" + o.join("|") + ")", "i")),
753
(this._weekdaysShortRegex = this._weekdaysRegex),
754
(this._weekdaysMinRegex = this._weekdaysRegex),
755
(this._weekdaysStrictRegex = new RegExp("^(" + a.join("|") + ")", "i")),
756
(this._weekdaysShortStrictRegex = new RegExp(
757
"^(" + r.join("|") + ")",
760
(this._weekdaysMinStrictRegex = new RegExp(
761
"^(" + i.join("|") + ")",
766
return this.hours() % 12 || 12;
769
s(e, 0, 0, function () {
770
return this.localeData().meridiem(this.hours(), this.minutes(), t);
774
return t._meridiemParse;
776
s("H", ["HH", 2], 0, "hour"),
777
s("h", ["hh", 2], 0, it),
778
s("k", ["kk", 2], 0, function () {
779
return this.hours() || 24;
781
s("hmm", 0, 0, function () {
782
return "" + it.apply(this) + r(this.minutes(), 2);
784
s("hmmss", 0, 0, function () {
785
return "" + it.apply(this) + r(this.minutes(), 2) + r(this.seconds(), 2);
787
s("Hmm", 0, 0, function () {
788
return "" + this.hours() + r(this.minutes(), 2);
790
s("Hmmss", 0, 0, function () {
791
return "" + this.hours() + r(this.minutes(), 2) + r(this.seconds(), 2);
808
v(["k", "kk"], function (e, t, n) {
810
t[O] = 24 === e ? 0 : e;
812
v(["a", "A"], function (e, t, n) {
813
(n._isPm = n._locale.isPM(e)), (n._meridiem = e);
815
v(["h", "hh"], function (e, t, n) {
816
(t[O] = M(e)), (p(n).bigHour = !0);
818
v("hmm", function (e, t, n) {
819
var s = e.length - 2;
820
(t[O] = M(e.substr(0, s))), (t[b] = M(e.substr(s))), (p(n).bigHour = !0);
822
v("hmmss", function (e, t, n) {
823
var s = e.length - 4,
825
(t[O] = M(e.substr(0, s))),
826
(t[b] = M(e.substr(s, 2))),
827
(t[T] = M(e.substr(i))),
830
v("Hmm", function (e, t, n) {
831
var s = e.length - 2;
832
(t[O] = M(e.substr(0, s))), (t[b] = M(e.substr(s)));
834
v("Hmmss", function (e, t, n) {
835
var s = e.length - 4,
837
(t[O] = M(e.substr(0, s))),
838
(t[b] = M(e.substr(s, 2))),
839
(t[T] = M(e.substr(i)));
845
sameDay: "[Today at] LT",
846
nextDay: "[Tomorrow at] LT",
847
nextWeek: "dddd [at] LT",
848
lastDay: "[Yesterday at] LT",
849
lastWeek: "[Last] dddd [at] LT",
857
LLL: "MMMM D, YYYY h:mm A",
858
LLLL: "dddd, MMMM D, YYYY h:mm A",
860
invalidDate: "Invalid date",
862
dayOfMonthOrdinalParse: /\d{1,2}/,
883
week: { dow: 0, doy: 6 },
887
meridiemParse: /[ap]\.?m?\.?/i,
892
return e && e.toLowerCase().replace("_", "-");
895
for (var t, n, s, i, r = 0; r < e.length; ) {
897
t = (i = dt(e[r]).split("-")).length,
898
n = (n = dt(e[r + 1])) ? n.split("-") : null;
902
if ((s = ct(i.slice(0, t).join("-")))) return s;
907
for (var n = Math.min(e.length, t.length), s = 0; s < n; s += 1)
908
if (e[s] !== t[s]) return s;
924
"undefined" != typeof module &&
928
n.match("^[^/\\\\]*$")
931
(e = ot._abbr), require("./locale/" + t), ft(e);
940
((t = g(t) ? P(e) : mt(e, t))
942
: "undefined" != typeof console &&
945
"Locale " + e + " not found. Did you forget to load it?"
951
if (null === t) return delete W[e], null;
954
if (((t.abbr = e), null != W[e]))
956
"defineLocaleOverride",
957
"use moment.updateLocale(localeName, config) to change an existing locale. moment.defineLocale(localeName, config) should only be used for creating a new locale See http://momentjs.com/guides/#/warnings/define-locale/ for more info."
960
else if (null != t.parentLocale)
961
if (null != W[t.parentLocale]) s = W[t.parentLocale]._config;
963
if (null == (n = ct(t.parentLocale)))
965
lt[t.parentLocale] || (lt[t.parentLocale] = []),
966
lt[t.parentLocale].push({ name: e, config: t }),
972
(W[e] = new K(X(s, t))),
974
lt[e].forEach(function (e) {
975
mt(e.name, e.config);
983
if (!(e = e && e._locale && e._locale._abbr ? e._locale._abbr : e))
986
if ((t = ct(e))) return t;
995
-2 === p(e).overflow &&
997
t[Y] < 0 || 11 < t[Y]
999
: t[S] < 1 || t[S] > He(t[D], t[Y])
1003
(24 === t[O] && (0 !== t[b] || 0 !== t[T] || 0 !== t[Te]))
1005
: t[b] < 0 || 59 < t[b]
1007
: t[T] < 0 || 59 < t[T]
1009
: t[Te] < 0 || 999 < t[Te]
1012
p(e)._overflowDayOfYear && (t < D || S < t) && (t = S),
1013
p(e)._overflowWeeks && -1 === t && (t = xe),
1014
p(e)._overflowWeekday && -1 === t && (t = Ne),
1015
(p(e).overflow = t)),
1020
/^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([+-]\d\d(?::?\d\d)?|\s*Z)?)?$/,
1022
/^\s*((?:[+-]\d{6}|\d{4})(?:\d\d\d\d|W\d\d\d|W\d\d|\d\d\d|\d\d|))(?:(T| )(\d\d(?:\d\d(?:\d\d(?:[.,]\d+)?)?)?)([+-]\d\d(?::?\d\d)?|\s*Z)?)?$/,
1023
wt = /Z|[+-]\d\d(?::?\d\d)?/,
1025
["YYYYYY-MM-DD", /[+-]\d{6}-\d\d-\d\d/],
1026
["YYYY-MM-DD", /\d{4}-\d\d-\d\d/],
1027
["GGGG-[W]WW-E", /\d{4}-W\d\d-\d/],
1028
["GGGG-[W]WW", /\d{4}-W\d\d/, !1],
1029
["YYYY-DDD", /\d{4}-\d{3}/],
1030
["YYYY-MM", /\d{4}-\d\d/, !1],
1031
["YYYYYYMMDD", /[+-]\d{10}/],
1032
["YYYYMMDD", /\d{8}/],
1033
["GGGG[W]WWE", /\d{4}W\d{3}/],
1034
["GGGG[W]WW", /\d{4}W\d{2}/, !1],
1035
["YYYYDDD", /\d{7}/],
1036
["YYYYMM", /\d{6}/, !1],
1037
["YYYY", /\d{4}/, !1],
1040
["HH:mm:ss.SSSS", /\d\d:\d\d:\d\d\.\d+/],
1041
["HH:mm:ss,SSSS", /\d\d:\d\d:\d\d,\d+/],
1042
["HH:mm:ss", /\d\d:\d\d:\d\d/],
1043
["HH:mm", /\d\d:\d\d/],
1044
["HHmmss.SSSS", /\d\d\d\d\d\d\.\d+/],
1045
["HHmmss,SSSS", /\d\d\d\d\d\d,\d+/],
1046
["HHmmss", /\d\d\d\d\d\d/],
1047
["HHmm", /\d\d\d\d/],
1050
Mt = /^\/?Date\((-?\d+)/i,
1052
/^(?:(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{4}))$/,
1073
u = yt.exec(o) || gt.exec(o),
1077
for (p(e).iso = !0, t = 0, n = o; t < n; t++)
1078
if (pt[t][1].exec(u[1])) {
1079
(i = pt[t][0]), (s = !1 !== pt[t][2]);
1082
if (null == i) e._isValid = !1;
1085
for (t = 0, n = l; t < n; t++)
1086
if (kt[t][1].exec(u[3])) {
1087
r = (u[2] || " ") + kt[t][0];
1090
if (null == r) return void (e._isValid = !1);
1092
if (s || null == r) {
1094
if (!wt.exec(u[4])) return void (e._isValid = !1);
1097
(e._f = i + (r || "") + (a || "")), xt(e);
1098
} else e._isValid = !1;
1100
} else e._isValid = !1;
1102
function St(e, t, n, s, i, r) {
1105
e = parseInt(e, 10);
1107
if (e <= 49) return 2e3 + e;
1108
if (e <= 999) return 1900 + e;
1117
return r && e.push(parseInt(r, 10)), e;
1124
.replace(/\([^()]*\)|[\n\t]/g, " ")
1125
.replace(/(\s\s+)/g, " ")
1126
.replace(/^\s\s*/, "")
1127
.replace(/\s\s*$/, "")
1130
? ((t = St(s[4], s[3], s[2], s[5], s[6], s[7])),
1131
(function (e, t, n) {
1132
if (!e || Xe.indexOf(e) === new Date(t[0], t[1], t[2]).getDay())
1134
(p(n).weekdayMismatch = !0), (n._isValid = !1);
1145
: 60 * (((t = parseInt(s, 10)) - (n = t % 100)) / 100) + n)),
1146
(e._d = ze.apply(null, e._a)),
1147
e._d.setUTCMinutes(e._d.getUTCMinutes() - e._tzm),
1148
(p(e).rfc2822 = !0)))
1149
: (e._isValid = !1);
1151
function bt(e, t, n) {
1152
return null != e ? e : null != t ? t : n;
1170
i = new Date(_.now()),
1172
? [i.getUTCFullYear(), i.getUTCMonth(), i.getUTCDate()]
1173
: [i.getFullYear(), i.getMonth(), i.getDate()],
1177
(null != (i = (s = e)._w).GG || null != i.W || null != i.E
1180
(r = bt(i.GG, s._a[D], Be(R(), 1, 4).year)),
1182
((o = bt(i.E, 1)) < 1 || 7 < o) && (d = !0))
1183
: ((u = s._locale._week.dow),
1184
(l = s._locale._week.doy),
1185
(h = Be(R(), u, l)),
1186
(r = bt(i.gg, s._a[D], h.year)),
1187
(a = bt(i.w, h.week)),
1189
? ((o = i.d) < 0 || 6 < o) && (d = !0)
1191
? ((o = i.e + u), (i.e < 0 || 6 < i.e) && (d = !0))
1193
a < 1 || a > N(r, u, l)
1194
? (p(s)._overflowWeeks = !0)
1196
? (p(s)._overflowWeekday = !0)
1197
: ((h = $e(r, a, o, u, l)),
1199
(s._dayOfYear = h.dayOfYear))),
1200
null != e._dayOfYear &&
1201
((i = bt(e._a[D], n[D])),
1202
(e._dayOfYear > We(i) || 0 === e._dayOfYear) &&
1203
(p(e)._overflowDayOfYear = !0),
1204
(d = ze(i, 0, e._dayOfYear)),
1205
(e._a[Y] = d.getUTCMonth()),
1206
(e._a[S] = d.getUTCDate())),
1208
t < 3 && null == e._a[t];
1211
e._a[t] = c[t] = n[t];
1213
e._a[t] = c[t] = null == e._a[t] ? (2 === t ? 1 : 0) : e._a[t];
1218
((e._nextDay = !0), (e._a[O] = 0)),
1219
(e._d = (e._useUTC ? ze : Ze).apply(null, c)),
1220
(r = e._useUTC ? e._d.getUTCDay() : e._d.getDay()),
1221
null != e._tzm && e._d.setUTCMinutes(e._d.getUTCMinutes() - e._tzm),
1222
e._nextDay && (e._a[O] = 24),
1224
void 0 !== e._w.d &&
1226
(p(e).weekdayMismatch = !0);
1230
if (e._f === _.ISO_8601) Yt(e);
1231
else if (e._f === _.RFC_2822) Ot(e);
1233
(e._a = []), (p(e).empty = !0);
1243
l = ae(e._f, e._locale).match(te) || [],
1250
(t = (a.match(De(n, e)) || [])[0]) &&
1251
(0 < (s = a.substr(0, a.indexOf(t))).length &&
1252
p(e).unusedInput.push(s),
1253
(a = a.slice(a.indexOf(t) + t.length)),
1256
? (t ? (p(e).empty = !1) : p(e).unusedTokens.push(n),
1259
null != (i = t) && c(Se, s) && Se[s](i, r._a, r, s))
1260
: e._strict && !t && p(e).unusedTokens.push(n);
1261
(p(e).charsLeftOver = o - u),
1262
0 < a.length && p(e).unusedInput.push(a),
1264
!0 === p(e).bigHour &&
1266
(p(e).bigHour = void 0),
1267
(p(e).parsedDateParts = e._a.slice(0)),
1268
(p(e).meridiem = e._meridiem),
1269
(e._a[O] = (function (e, t, n) {
1270
if (null == n) return t;
1271
return null != e.meridiemHour
1272
? e.meridiemHour(t, n)
1274
? ((e = e.isPM(n)) && t < 12 && (t += 12),
1275
(t = e || 12 !== t ? t : 0))
1277
})(e._locale, e._a[O], e._meridiem)),
1278
null !== (o = p(e).era) &&
1279
(e._a[D] = e._locale.erasConvertYear(o, e._a[D])),
1291
((e._locale = e._locale || P(e._l)),
1292
null === i || (void 0 === r && "" === i))
1294
return I({ nullInput: !0 });
1295
if (("string" == typeof i && (e._i = i = e._locale.preparse(i)), k(i)))
1296
return new $(_t(i));
1308
if (0 === m) (p(c).invalidFormat = !0), (c._d = new Date(NaN));
1310
for (l = 0; l < m; l++)
1314
null != c._useUTC && (a._useUTC = c._useUTC),
1318
(d = (d += p(a).charsLeftOver) + 10 * p(a).unusedTokens.length),
1321
? d < u && ((u = d), (o = a))
1322
: (null == u || d < u || h) && ((u = d), (o = a), h) && (f = !0);
1325
} else if (r) xt(e);
1326
else if (g((r = (i = e)._i))) i._d = new Date(_.now());
1329
? (i._d = new Date(r.valueOf()))
1330
: "string" == typeof r
1332
null !== (t = Mt.exec(n._i))
1333
? (n._d = new Date(+t[1]))
1335
!1 === n._isValid &&
1336
(delete n._isValid, Ot(n), !1 === n._isValid) &&
1338
n._strict ? (n._isValid = !1) : _.createFromInputFallback(n))))
1340
? ((i._a = G(r.slice(0), function (e) {
1341
return parseInt(e, 10);
1346
((s = void 0 === (n = ue(t._i)).day ? n.date : n.day),
1348
[n.year, n.month, s, n.hour, n.minute, n.second, n.millisecond],
1350
return e && parseInt(e, 10);
1355
? (i._d = new Date(r))
1356
: _.createFromInputFallback(i);
1357
return A(e) || (e._d = null), e;
1359
function Wt(e, t, n, s, i) {
1362
(!0 !== t && !1 !== t) || ((s = t), (t = void 0)),
1363
(!0 !== n && !1 !== n) || ((s = n), (n = void 0)),
1364
((F(e) && L(e)) || (y(e) && 0 === e.length)) && (e = void 0),
1365
(r._isAMomentObject = !0),
1366
(r._useUTC = r._isUTC = i),
1371
(i = new $(_t(Nt((i = r)))))._nextDay &&
1372
(i.add(1, "d"), (i._nextDay = void 0)),
1376
function R(e, t, n, s) {
1377
return Wt(e, t, n, s, !1);
1379
(_.createFromInputFallback = e(
1380
"value provided is not in a recognized RFC2822 or ISO format. moment construction falls back to js Date(), which is not reliable across all browsers and versions. Non RFC2822/ISO date formats are discouraged. Please refer to http://momentjs.com/guides/#/warnings/js-date/ for more info.",
1382
e._d = new Date(e._i + (e._useUTC ? " UTC" : ""));
1385
(_.ISO_8601 = function () {}),
1386
(_.RFC_2822 = function () {});
1388
"moment().min is deprecated, use moment.max instead. http://momentjs.com/guides/#/warnings/min-max/",
1390
var e = R.apply(null, arguments);
1391
return this.isValid() && e.isValid() ? (e < this ? this : e) : I();
1395
"moment().max is deprecated, use moment.min instead. http://momentjs.com/guides/#/warnings/min-max/",
1397
var e = R.apply(null, arguments);
1398
return this.isValid() && e.isValid() ? (this < e ? this : e) : I();
1403
if (!(t = 1 === t.length && y(t[0]) ? t[0] : t).length) return R();
1404
for (n = t[0], s = 1; s < t.length; ++s)
1405
(t[s].isValid() && !t[s][e](n)) || (n = t[s]);
1424
i = e.week || e.isoWeek || 0,
1429
l = e.millisecond || 0;
1430
(this._isValid = (function (e) {
1436
if (c(e, t) && (-1 === x.call(Rt, t) || (null != e[t] && isNaN(e[t]))))
1438
for (n = 0; n < i; ++n)
1441
parseFloat(e[Rt[n]]) !== M(e[Rt[n]]) && (s = !0);
1445
(this._milliseconds = +l + 1e3 * u + 6e4 * o + 1e3 * a * 60 * 60),
1446
(this._days = +r + 7 * i),
1447
(this._months = +s + 3 * n + 12 * t),
1449
(this._locale = P()),
1453
return e instanceof Ct;
1456
return e < 0 ? -1 * Math.round(-1 * e) : Math.round(e);
1459
s(e, 0, 0, function () {
1460
var e = this.utcOffset(),
1463
e < 0 && ((e = -e), (t = "-")),
1464
t + r(~~(e / 60), 2) + n + r(~~e % 60, 2)
1472
v(["Z", "ZZ"], function (e, t, n) {
1473
(n._useUTC = !0), (n._tzm = Vt(ve, e));
1475
var Lt = /([\+\-]|\d\d)/gi;
1477
var t = (t || "").match(e);
1483
(e = ((t[t.length - 1] || []) + "").match(Lt) || ["-", 0, 0])[1] +
1494
(n = (k(e) || V(e) ? e : R(e)).valueOf() - t.valueOf()),
1495
t._d.setTime(t._d.valueOf() + n),
1496
_.updateOffset(t, !1),
1501
return -Math.round(e._d.getTimezoneOffset());
1504
return !!this.isValid() && this._isUTC && 0 === this._offset;
1506
_.updateOffset = function () {};
1507
var It = /^(-|\+)?(?:(\d*)[. ])?(\d+):(\d+)(?::(\d+)(\.\d*)?)?$/,
1509
/^(-|\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/;
1515
? (s = { ms: e._milliseconds, d: e._days, M: e._months })
1516
: w(e) || !isNaN(+e)
1517
? ((s = {}), t ? (s[t] = +e) : (s.milliseconds = +e))
1519
? ((n = "-" === t[1] ? -1 : 1),
1526
ms: M(Ht(1e3 * t[Te])) * n,
1529
? ((n = "-" === t[1] ? -1 : 1),
1541
: "object" == typeof s &&
1542
("from" in s || "to" in s) &&
1543
((t = (function (e, t) {
1545
if (!e.isValid() || !t.isValid())
1546
return { milliseconds: 0, months: 0 };
1550
: (((n = zt(t, e)).milliseconds = -n.milliseconds),
1551
(n.months = -n.months));
1553
})(R(s.from), R(s.to))),
1554
((s = {}).ms = t.milliseconds),
1557
Ut(e) && c(e, "_locale") && (n._locale = e._locale),
1558
Ut(e) && c(e, "_isValid") && (n._isValid = e._isValid),
1563
e = e && parseFloat(e.replace(",", "."));
1564
return (isNaN(e) ? 0 : e) * t;
1569
(n.months = t.month() - e.month() + 12 * (t.year() - e.year())),
1570
e.clone().add(n.months, "M").isAfter(t) && --n.months,
1571
(n.milliseconds = +t - +e.clone().add(n.months, "M")),
1576
return function (e, t) {
1585
"(period, number) is deprecated. Please use moment()." +
1587
"(number, period). See http://momentjs.com/guides/#/warnings/add-inverted-param/ for more info."
1592
$t(this, C(e, t), s),
1597
function $t(e, t, n, s) {
1598
var i = t._milliseconds,
1602
((s = null == s || s),
1603
t && Ae(e, Ce(e, "Month") + t * n),
1604
r && Ue(e, "Date", Ce(e, "Date") + r * n),
1605
i && e._d.setTime(e._d.valueOf() + i * n),
1607
_.updateOffset(e, r || t);
1609
(C.fn = Ct.prototype),
1610
(C.invalid = function () {
1613
(Fe = qt(1, "add")), (Qe = qt(-1, "subtract"));
1615
return "string" == typeof e || e instanceof String;
1629
t.filter(function (e) {
1630
return !w(e) && Bt(t);
1666
for (t = 0; t < a; t += 1) (n = r[t]), (i = i || c(e, n));
1674
return e.date() < t.date()
1677
(n = 12 * (t.year() - e.year()) + (t.month() - e.month())) +
1678
(t - (s = e.clone().add(n, "months")) < 0
1679
? (t - s) / (s - e.clone().add(n - 1, "months"))
1680
: (t - s) / (e.clone().add(1 + n, "months") - s))
1685
? this._locale._abbr
1686
: (null != (e = P(e)) && (this._locale = e), this);
1688
(_.defaultFormat = "YYYY-MM-DDTHH:mm:ssZ"),
1689
(_.defaultFormatUtc = "YYYY-MM-DDTHH:mm:ss[Z]");
1691
"moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.",
1693
return void 0 === e ? this.localeData() : this.locale(e);
1697
return this._locale;
1699
var en = 126227808e5;
1701
return ((e % t) + t) % t;
1703
function nn(e, t, n) {
1704
return e < 100 && 0 <= e
1705
? new Date(e + 400, t, n) - en
1706
: new Date(e, t, n).valueOf();
1708
function sn(e, t, n) {
1709
return e < 100 && 0 <= e ? Date.UTC(e + 400, t, n) - en : Date.UTC(e, t, n);
1712
return t.erasAbbrRegex(e);
1731
(n = f(o[u].narrow)),
1738
(this._erasRegex = new RegExp("^(" + a.join("|") + ")", "i")),
1739
(this._erasNameRegex = new RegExp("^(" + i.join("|") + ")", "i")),
1740
(this._erasAbbrRegex = new RegExp("^(" + s.join("|") + ")", "i")),
1741
(this._erasNarrowRegex = new RegExp("^(" + r.join("|") + ")", "i"));
1744
s(0, [e, e.length], 0, t);
1746
function un(e, t, n, s, i) {
1749
? Be(this, s, i).year
1750
: ((r = N(e, s, i)),
1751
function (e, t, n, s, i) {
1752
(e = $e(e, t, n, s, i)), (t = ze(e.year, 0, e.dayOfYear));
1754
this.year(t.getUTCFullYear()),
1755
this.month(t.getUTCMonth()),
1756
this.date(t.getUTCDate()),
1759
}.call(this, e, (t = r < t ? r : t), n, s, i));
1761
s("N", 0, 0, "eraAbbr"),
1762
s("NN", 0, 0, "eraAbbr"),
1763
s("NNN", 0, 0, "eraAbbr"),
1764
s("NNNN", 0, 0, "eraName"),
1765
s("NNNNN", 0, 0, "eraNarrow"),
1766
s("y", ["y", 1], "yo", "eraYear"),
1767
s("y", ["yy", 2], 0, "eraYear"),
1768
s("y", ["yyy", 3], 0, "eraYear"),
1769
s("y", ["yyyy", 4], 0, "eraYear"),
1773
h("NNNN", function (e, t) {
1774
return t.erasNameRegex(e);
1776
h("NNNNN", function (e, t) {
1777
return t.erasNarrowRegex(e);
1779
v(["N", "NN", "NNN", "NNNN", "NNNNN"], function (e, t, n, s) {
1780
s = n._locale.erasParse(e, s, n._strict);
1781
s ? (p(n).era = s) : (p(n).invalidEra = e);
1787
h("yo", function (e, t) {
1788
return t._eraYearOrdinalRegex || pe;
1790
v(["y", "yy", "yyy", "yyyy"], D),
1791
v(["yo"], function (e, t, n, s) {
1793
n._locale._eraYearOrdinalRegex &&
1794
(i = e.match(n._locale._eraYearOrdinalRegex)),
1795
n._locale.eraYearOrdinalParse
1796
? (t[D] = n._locale.eraYearOrdinalParse(e, i))
1797
: (t[D] = parseInt(e, 10));
1799
s(0, ["gg", 2], 0, function () {
1800
return this.weekYear() % 100;
1802
s(0, ["GG", 2], 0, function () {
1803
return this.isoWeekYear() % 100;
1805
on("gggg", "weekYear"),
1806
on("ggggg", "weekYear"),
1807
on("GGGG", "isoWeekYear"),
1808
on("GGGGG", "isoWeekYear"),
1817
Oe(["gggg", "ggggg", "GGGG", "GGGGG"], function (e, t, n, s) {
1818
t[s.substr(0, 2)] = M(e);
1820
Oe(["gg", "GG"], function (e, t, n, s) {
1821
t[s] = _.parseTwoDigitYear(e);
1823
s("Q", 0, "Qo", "quarter"),
1825
v("Q", function (e, t) {
1826
t[Y] = 3 * (M(e) - 1);
1828
s("D", ["DD", 2], "Do", "date"),
1831
h("Do", function (e, t) {
1833
? t._dayOfMonthOrdinalParse || t._ordinalParse
1834
: t._dayOfMonthOrdinalParseLenient;
1837
v("Do", function (e, t) {
1838
t[S] = M(e.match(n)[0]);
1840
ge = Re("Date", !0);
1841
s("DDD", ["DDDD", 3], "DDDo", "dayOfYear"),
1844
v(["DDD", "DDDD"], function (e, t, n) {
1845
n._dayOfYear = M(e);
1847
s("m", ["mm", 2], 0, "minute"),
1852
ce = Re("Minutes", !1),
1854
(s("s", ["ss", 2], 0, "second"),
1860
s("S", 0, 0, function () {
1861
return ~~(this.millisecond() / 100);
1863
s(0, ["SS", 2], 0, function () {
1864
return ~~(this.millisecond() / 10);
1866
s(0, ["SSS", 3], 0, "millisecond"),
1867
s(0, ["SSSS", 4], 0, function () {
1868
return 10 * this.millisecond();
1870
s(0, ["SSSSS", 5], 0, function () {
1871
return 100 * this.millisecond();
1873
s(0, ["SSSSSS", 6], 0, function () {
1874
return 1e3 * this.millisecond();
1876
s(0, ["SSSSSSS", 7], 0, function () {
1877
return 1e4 * this.millisecond();
1879
s(0, ["SSSSSSSS", 8], 0, function () {
1880
return 1e5 * this.millisecond();
1882
s(0, ["SSSSSSSSS", 9], 0, function () {
1883
return 1e6 * this.millisecond();
1894
t[Te] = M(1e3 * ("0." + e));
1896
for (ln = "S"; ln.length <= 9; ln += "S") v(ln, dn);
1897
(fe = Re("Milliseconds", !1)),
1898
s("z", 0, 0, "zoneAbbr"),
1899
s("zz", 0, 0, "zoneName");
1905
(u.calendar = function (e, t) {
1906
1 === arguments.length &&
1909
? ((e = arguments[0]), (t = void 0))
1912
var t = F(e) && !L(e),
1926
n = n || c(e, s[i]);
1928
})(arguments[0]) && ((t = arguments[0]), (e = void 0))
1929
: (t = e = void 0));
1931
n = Gt(e, this).startOf("day"),
1932
n = _.calendarFormat(this, n) || "sameElse",
1933
t = t && (a(t[n]) ? t[n].call(this, e) : t[n]);
1934
return this.format(t || this.localeData().calendar(n, this, R(e)));
1936
(u.clone = function () {
1939
(u.diff = function (e, t, n) {
1941
if (!this.isValid()) return NaN;
1942
if (!(s = Gt(e, this)).isValid()) return NaN;
1943
switch (((i = 6e4 * (s.utcOffset() - this.utcOffset())), (t = o(t)))) {
1945
r = Qt(this, s) / 12;
1951
r = Qt(this, s) / 3;
1954
r = (this - s) / 1e3;
1957
r = (this - s) / 6e4;
1960
r = (this - s) / 36e5;
1963
r = (this - s - i) / 864e5;
1966
r = (this - s - i) / 6048e5;
1971
return n ? r : m(r);
1973
(u.endOf = function (e) {
1975
if (void 0 !== (e = o(e)) && "millisecond" !== e && this.isValid()) {
1976
switch (((n = this._isUTC ? sn : nn), e)) {
1978
t = n(this.year() + 1, 0, 1) - 1;
1981
t = n(this.year(), this.month() - (this.month() % 3) + 3, 1) - 1;
1984
t = n(this.year(), this.month() + 1, 1) - 1;
1988
n(this.year(), this.month(), this.date() - this.weekday() + 7) -
1996
this.date() - (this.isoWeekday() - 1) + 7
2001
t = n(this.year(), this.month(), this.date() + 1) - 1;
2004
(t = this._d.valueOf()),
2007
tn(t + (this._isUTC ? 0 : 6e4 * this.utcOffset()), 36e5) -
2011
(t = this._d.valueOf()), (t += 6e4 - tn(t, 6e4) - 1);
2014
(t = this._d.valueOf()), (t += 1e3 - tn(t, 1e3) - 1);
2017
this._d.setTime(t), _.updateOffset(this, !0);
2021
(u.format = function (e) {
2023
(e = e || (this.isUtc() ? _.defaultFormatUtc : _.defaultFormat)),
2025
this.localeData().postformat(e)
2028
(u.from = function (e, t) {
2029
return this.isValid() && ((k(e) && e.isValid()) || R(e).isValid())
2030
? C({ to: this, from: e }).locale(this.locale()).humanize(!t)
2031
: this.localeData().invalidDate();
2033
(u.fromNow = function (e) {
2034
return this.from(R(), e);
2036
(u.to = function (e, t) {
2037
return this.isValid() && ((k(e) && e.isValid()) || R(e).isValid())
2038
? C({ from: this, to: e }).locale(this.locale()).humanize(!t)
2039
: this.localeData().invalidDate();
2041
(u.toNow = function (e) {
2042
return this.to(R(), e);
2044
(u.get = function (e) {
2045
return a(this[(e = o(e))]) ? this[e]() : this;
2047
(u.invalidAt = function () {
2048
return p(this).overflow;
2050
(u.isAfter = function (e, t) {
2052
(e = k(e) ? e : R(e)),
2053
!(!this.isValid() || !e.isValid()) &&
2054
("millisecond" === (t = o(t) || "millisecond")
2055
? this.valueOf() > e.valueOf()
2056
: e.valueOf() < this.clone().startOf(t).valueOf())
2059
(u.isBefore = function (e, t) {
2061
(e = k(e) ? e : R(e)),
2062
!(!this.isValid() || !e.isValid()) &&
2063
("millisecond" === (t = o(t) || "millisecond")
2064
? this.valueOf() < e.valueOf()
2065
: this.clone().endOf(t).valueOf() < e.valueOf())
2068
(u.isBetween = function (e, t, n, s) {
2070
(e = k(e) ? e : R(e)),
2071
(t = k(t) ? t : R(t)),
2072
!!(this.isValid() && e.isValid() && t.isValid()) &&
2073
("(" === (s = s || "()")[0]
2074
? this.isAfter(e, n)
2075
: !this.isBefore(e, n)) &&
2076
(")" === s[1] ? this.isBefore(t, n) : !this.isAfter(t, n))
2079
(u.isSame = function (e, t) {
2080
var e = k(e) ? e : R(e);
2082
!(!this.isValid() || !e.isValid()) &&
2083
("millisecond" === (t = o(t) || "millisecond")
2084
? this.valueOf() === e.valueOf()
2085
: ((e = e.valueOf()),
2086
this.clone().startOf(t).valueOf() <= e &&
2087
e <= this.clone().endOf(t).valueOf()))
2090
(u.isSameOrAfter = function (e, t) {
2091
return this.isSame(e, t) || this.isAfter(e, t);
2093
(u.isSameOrBefore = function (e, t) {
2094
return this.isSame(e, t) || this.isBefore(e, t);
2096
(u.isValid = function () {
2101
(u.localeData = Kt),
2104
(u.parsingFlags = function () {
2105
return E({}, p(this));
2107
(u.set = function (e, t) {
2108
if ("object" == typeof e)
2110
var n = (function (e) {
2113
for (t in e) c(e, t) && n.push({ unit: t, priority: le[t] });
2115
n.sort(function (e, t) {
2116
return e.priority - t.priority;
2126
this[n[i].unit](e[n[i].unit]);
2127
else if (a(this[(e = o(e))])) return this[e](t);
2130
(u.startOf = function (e) {
2132
if (void 0 !== (e = o(e)) && "millisecond" !== e && this.isValid()) {
2133
switch (((n = this._isUTC ? sn : nn), e)) {
2135
t = n(this.year(), 0, 1);
2138
t = n(this.year(), this.month() - (this.month() % 3), 1);
2141
t = n(this.year(), this.month(), 1);
2144
t = n(this.year(), this.month(), this.date() - this.weekday());
2150
this.date() - (this.isoWeekday() - 1)
2155
t = n(this.year(), this.month(), this.date());
2158
(t = this._d.valueOf()),
2159
(t -= tn(t + (this._isUTC ? 0 : 6e4 * this.utcOffset()), 36e5));
2162
(t = this._d.valueOf()), (t -= tn(t, 6e4));
2165
(t = this._d.valueOf()), (t -= tn(t, 1e3));
2168
this._d.setTime(t), _.updateOffset(this, !0);
2173
(u.toArray = function () {
2185
(u.toObject = function () {
2192
minutes: e.minutes(),
2193
seconds: e.seconds(),
2194
milliseconds: e.milliseconds(),
2197
(u.toDate = function () {
2198
return new Date(this.valueOf());
2200
(u.toISOString = function (e) {
2202
return this.isValid()
2203
? (t = (e = !0 !== e) ? this.clone().utc() : this).year() < 0 ||
2208
? "YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]"
2209
: "YYYYYY-MM-DD[T]HH:mm:ss.SSSZ"
2211
: a(Date.prototype.toISOString)
2213
? this.toDate().toISOString()
2214
: new Date(this.valueOf() + 60 * this.utcOffset() * 1e3)
2216
.replace("Z", re(t, "Z"))
2219
e ? "YYYY-MM-DD[T]HH:mm:ss.SSS[Z]" : "YYYY-MM-DD[T]HH:mm:ss.SSSZ"
2223
(u.inspect = function () {
2225
return this.isValid()
2229
((t = 0 === this.utcOffset() ? "moment.utc" : "moment.parseZone"),
2231
(t = "[" + t + '("]'),
2232
(n = 0 <= this.year() && this.year() <= 9999 ? "YYYY" : "YYYYYY"),
2233
this.format(t + n + "-MM-DD[T]HH:mm:ss.SSS" + (e + '[")]')))
2234
: "moment.invalid(/* " + this._i + " */)";
2236
"undefined" != typeof Symbol &&
2237
null != Symbol.for &&
2238
(u[Symbol.for("nodejs.util.inspect.custom")] = function () {
2239
return "Moment<" + this.format() + ">";
2241
(u.toJSON = function () {
2242
return this.isValid() ? this.toISOString() : null;
2244
(u.toString = function () {
2247
.format("ddd MMM DD YYYY HH:mm:ss [GMT]ZZ");
2249
(u.unix = function () {
2250
return Math.floor(this.valueOf() / 1e3);
2252
(u.valueOf = function () {
2253
return this._d.valueOf() - 6e4 * (this._offset || 0);
2255
(u.creationData = function () {
2259
locale: this._locale,
2261
strict: this._strict,
2264
(u.eraName = function () {
2266
var e, t = this.localeData().eras(), n = 0, s = t.length;
2271
((e = this.clone().startOf("day").valueOf()),
2272
t[n].since <= e && e <= t[n].until)
2275
if (t[n].until <= e && e <= t[n].since) return t[n].name;
2279
(u.eraNarrow = function () {
2281
var e, t = this.localeData().eras(), n = 0, s = t.length;
2286
((e = this.clone().startOf("day").valueOf()),
2287
t[n].since <= e && e <= t[n].until)
2290
if (t[n].until <= e && e <= t[n].since) return t[n].narrow;
2294
(u.eraAbbr = function () {
2296
var e, t = this.localeData().eras(), n = 0, s = t.length;
2301
((e = this.clone().startOf("day").valueOf()),
2302
t[n].since <= e && e <= t[n].until)
2305
if (t[n].until <= e && e <= t[n].since) return t[n].abbr;
2309
(u.eraYear = function () {
2311
var e, t, n = this.localeData().eras(), s = 0, i = n.length;
2316
((e = n[s].since <= n[s].until ? 1 : -1),
2317
(t = this.clone().startOf("day").valueOf()),
2318
(n[s].since <= t && t <= n[s].until) ||
2319
(n[s].until <= t && t <= n[s].since))
2321
return (this.year() - _(n[s].since).year()) * e + n[s].offset;
2325
(u.isLeapYear = function () {
2326
return be(this.year());
2328
(u.weekYear = function (e) {
2333
this.weekday() + this.localeData()._week.dow,
2334
this.localeData()._week.dow,
2335
this.localeData()._week.doy
2338
(u.isoWeekYear = function (e) {
2339
return un.call(this, e, this.isoWeek(), this.isoWeekday(), 1, 4);
2341
(u.quarter = u.quarters =
2344
? Math.ceil((this.month() + 1) / 3)
2345
: this.month(3 * (e - 1) + (this.month() % 3));
2348
(u.daysInMonth = function () {
2349
return He(this.year(), this.month());
2353
var t = this.localeData().week(this);
2354
return null == e ? t : this.add(7 * (e - t), "d");
2356
(u.isoWeek = u.isoWeeks =
2358
var t = Be(this, 1, 4).week;
2359
return null == e ? t : this.add(7 * (e - t), "d");
2361
(u.weeksInYear = function () {
2362
var e = this.localeData()._week;
2363
return N(this.year(), e.dow, e.doy);
2365
(u.weeksInWeekYear = function () {
2366
var e = this.localeData()._week;
2367
return N(this.weekYear(), e.dow, e.doy);
2369
(u.isoWeeksInYear = function () {
2370
return N(this.year(), 1, 4);
2372
(u.isoWeeksInISOWeekYear = function () {
2373
return N(this.isoWeekYear(), 1, 4);
2379
return this.isValid()
2380
? ((t = Ce(this, "Day")),
2383
(s = this.localeData()),
2385
"string" != typeof n
2388
? "number" == typeof (n = s.weekdaysParse(n))
2392
this.add(e - t, "d"))
2398
(u.weekday = function (e) {
2400
return this.isValid()
2401
? ((t = (this.day() + 7 - this.localeData()._week.dow) % 7),
2402
null == e ? t : this.add(e - t, "d"))
2407
(u.isoWeekday = function (e) {
2409
return this.isValid()
2412
(n = this.localeData()),
2414
"string" == typeof t
2415
? n.weekdaysParse(t) % 7 || 7
2419
this.day(this.day() % 7 ? n : n - 7))
2425
(u.dayOfYear = function (e) {
2428
(this.clone().startOf("day") - this.clone().startOf("year")) / 864e5
2430
return null == e ? t : this.add(e - t, "d");
2432
(u.hour = u.hours = i),
2433
(u.minute = u.minutes = ce),
2434
(u.second = u.seconds = we),
2435
(u.millisecond = u.milliseconds = fe),
2436
(u.utcOffset = function (e, t, n) {
2438
i = this._offset || 0;
2439
if (!this.isValid()) return null != e ? this : NaN;
2440
if (null == e) return this._isUTC ? i : Et(this);
2441
if ("string" == typeof e) {
2442
if (null === (e = Vt(ve, e))) return this;
2443
} else Math.abs(e) < 16 && !n && (e *= 60);
2445
!this._isUTC && t && (s = Et(this)),
2448
null != s && this.add(s, "m"),
2450
(!t || this._changeInProgress
2451
? $t(this, C(e - i, "m"), 1, !1)
2452
: this._changeInProgress ||
2453
((this._changeInProgress = !0),
2454
_.updateOffset(this, !0),
2455
(this._changeInProgress = null))),
2459
(u.utc = function (e) {
2460
return this.utcOffset(0, e);
2462
(u.local = function (e) {
2465
(this.utcOffset(0, e), (this._isUTC = !1), e) &&
2466
this.subtract(Et(this), "m"),
2470
(u.parseZone = function () {
2474
? this.utcOffset(this._tzm, !1, !0)
2475
: "string" == typeof this._i &&
2476
(null != (e = Vt(Me, this._i))
2478
: this.utcOffset(0, !0)),
2482
(u.hasAlignedHourOffset = function (e) {
2485
((e = e ? R(e).utcOffset() : 0), (this.utcOffset() - e) % 60 == 0)
2488
(u.isDST = function () {
2490
this.utcOffset() > this.clone().month(0).utcOffset() ||
2491
this.utcOffset() > this.clone().month(5).utcOffset()
2494
(u.isLocal = function () {
2495
return !!this.isValid() && !this._isUTC;
2497
(u.isUtcOffset = function () {
2498
return !!this.isValid() && this._isUTC;
2502
(u.zoneAbbr = function () {
2503
return this._isUTC ? "UTC" : "";
2505
(u.zoneName = function () {
2506
return this._isUTC ? "Coordinated Universal Time" : "";
2508
(u.dates = e("dates accessor is deprecated. Use date instead.", ge)),
2509
(u.months = e("months accessor is deprecated. Use month instead", Ie)),
2510
(u.years = e("years accessor is deprecated. Use year instead", Pe)),
2512
"moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/",
2515
? (this.utcOffset((e = "string" != typeof e ? -e : e), t), this)
2516
: -this.utcOffset();
2519
(u.isDSTShifted = e(
2520
"isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information",
2524
g(this._isDSTShifted) &&
2527
? ((t = (e._isUTC ? l : R)(e._a)),
2528
(this._isDSTShifted =
2531
(function (e, t, n) {
2533
var s = Math.min(e.length, t.length),
2534
i = Math.abs(e.length - t.length),
2540
((n && e[a] !== t[a]) || (!n && M(e[a]) !== M(t[a]))) &&
2543
})(e._a, t.toArray())))
2544
: (this._isDSTShifted = !1)),
2550
function cn(e, t, n, s) {
2555
function fn(e, t, n) {
2556
if ((w(e) && ((t = e), (e = void 0)), (e = e || ""), null != t))
2557
return cn(e, t, n, "month");
2558
for (var s = [], i = 0; i < 12; i++) s[i] = cn(e, i, n, "month");
2561
function mn(e, t, n, s) {
2563
("boolean" == typeof e
2564
? w(t) && ((n = t), (t = void 0))
2565
: ((t = e), (e = !1), w((n = t)) && ((n = t), (t = void 0))),
2569
a = e ? r._week.dow : 0,
2571
if (null != n) return cn(t, (n + a) % 7, s, "day");
2572
for (i = 0; i < 7; i++) o[i] = cn(t, (i + a) % 7, s, "day");
2575
(d.calendar = function (e, t, n) {
2576
return a((e = this._calendar[e] || this._calendar.sameElse))
2580
(d.longDateFormat = function (e) {
2581
var t = this._longDateFormat[e],
2582
n = this._longDateFormat[e.toUpperCase()];
2585
: ((this._longDateFormat[e] = n
2588
return "MMMM" === e || "MM" === e || "DD" === e || "dddd" === e
2593
this._longDateFormat[e]);
2595
(d.invalidDate = function () {
2596
return this._invalidDate;
2598
(d.ordinal = function (e) {
2599
return this._ordinal.replace("%d", e);
2602
(d.postformat = hn),
2603
(d.relativeTime = function (e, t, n, s) {
2604
var i = this._relativeTime[n];
2605
return a(i) ? i(e, t, n, s) : i.replace(/%d/i, e);
2607
(d.pastFuture = function (e, t) {
2608
return a((e = this._relativeTime[0 < e ? "future" : "past"]))
2610
: e.replace(/%s/i, t);
2612
(d.set = function (e) {
2615
c(e, n) && (a((t = e[n])) ? (this[n] = t) : (this["_" + n] = t));
2617
(this._dayOfMonthOrdinalParseLenient = new RegExp(
2618
(this._dayOfMonthOrdinalParse.source || this._ordinalParse.source) +
2623
(d.eras = function (e, t) {
2625
var n, s = this._eras || P("en")._eras, i = 0, r = s.length;
2629
switch (typeof s[i].since) {
2631
(n = _(s[i].since).startOf("day")), (s[i].since = n.valueOf());
2634
switch (typeof s[i].until) {
2639
(n = _(s[i].until).startOf("day").valueOf()),
2640
(s[i].until = n.valueOf());
2646
(d.erasParse = function (e, t, n) {
2653
for (e = e.toUpperCase(), s = 0, i = u.length; s < i; ++s)
2655
((r = u[s].name.toUpperCase()),
2656
(a = u[s].abbr.toUpperCase()),
2657
(o = u[s].narrow.toUpperCase()),
2664
if (a === e) return u[s];
2667
if (r === e) return u[s];
2670
if (o === e) return u[s];
2673
else if (0 <= [r, a, o].indexOf(e)) return u[s];
2675
(d.erasConvertYear = function (e, t) {
2676
var n = e.since <= e.until ? 1 : -1;
2679
: _(e.since).year() + (t - e.offset) * n;
2681
(d.erasAbbrRegex = function (e) {
2683
c(this, "_erasAbbrRegex") || an.call(this),
2684
e ? this._erasAbbrRegex : this._erasRegex
2687
(d.erasNameRegex = function (e) {
2689
c(this, "_erasNameRegex") || an.call(this),
2690
e ? this._erasNameRegex : this._erasRegex
2693
(d.erasNarrowRegex = function (e) {
2695
c(this, "_erasNarrowRegex") || an.call(this),
2696
e ? this._erasNarrowRegex : this._erasRegex
2699
(d.months = function (e, t) {
2704
(this._months.isFormat || Ve).test(t) ? "format" : "standalone"
2708
: this._months.standalone;
2710
(d.monthsShort = function (e, t) {
2712
? (y(this._monthsShort)
2714
: this._monthsShort[Ve.test(t) ? "format" : "standalone"])[
2717
: y(this._monthsShort)
2719
: this._monthsShort.standalone;
2721
(d.monthsParse = function (e, t, n) {
2723
if (this._monthsParseExact)
2724
return function (e, t, n) {
2728
e = e.toLocaleLowerCase();
2729
if (!this._monthsParse)
2731
this._monthsParse = [],
2732
this._longMonthsParse = [],
2733
this._shortMonthsParse = [],
2739
(this._shortMonthsParse[s] = this.monthsShort(
2742
).toLocaleLowerCase()),
2743
(this._longMonthsParse[s] = this.months(
2746
).toLocaleLowerCase());
2749
? -1 !== (i = x.call(this._shortMonthsParse, e))
2752
: -1 !== (i = x.call(this._longMonthsParse, e))
2756
? -1 !== (i = x.call(this._shortMonthsParse, e)) ||
2757
-1 !== (i = x.call(this._longMonthsParse, e))
2760
: -1 !== (i = x.call(this._longMonthsParse, e)) ||
2761
-1 !== (i = x.call(this._shortMonthsParse, e))
2764
}.call(this, e, t, n);
2766
this._monthsParse ||
2767
((this._monthsParse = []),
2768
(this._longMonthsParse = []),
2769
(this._shortMonthsParse = [])),
2777
!this._longMonthsParse[s] &&
2778
((this._longMonthsParse[s] = new RegExp(
2779
"^" + this.months(i, "").replace(".", "") + "$",
2782
(this._shortMonthsParse[s] = new RegExp(
2783
"^" + this.monthsShort(i, "").replace(".", "") + "$",
2787
this._monthsParse[s] ||
2788
((i = "^" + this.months(i, "") + "|^" + this.monthsShort(i, "")),
2789
(this._monthsParse[s] = new RegExp(i.replace(".", ""), "i"))),
2790
n && "MMMM" === t && this._longMonthsParse[s].test(e))
2793
if (n && "MMM" === t && this._shortMonthsParse[s].test(e)) return s;
2794
if (!n && this._monthsParse[s].test(e)) return s;
2797
(d.monthsRegex = function (e) {
2798
return this._monthsParseExact
2799
? (c(this, "_monthsRegex") || je.call(this),
2800
e ? this._monthsStrictRegex : this._monthsRegex)
2801
: (c(this, "_monthsRegex") || (this._monthsRegex = Ee),
2802
this._monthsStrictRegex && e
2803
? this._monthsStrictRegex
2804
: this._monthsRegex);
2806
(d.monthsShortRegex = function (e) {
2807
return this._monthsParseExact
2808
? (c(this, "_monthsRegex") || je.call(this),
2809
e ? this._monthsShortStrictRegex : this._monthsShortRegex)
2810
: (c(this, "_monthsShortRegex") || (this._monthsShortRegex = Ge),
2811
this._monthsShortStrictRegex && e
2812
? this._monthsShortStrictRegex
2813
: this._monthsShortRegex);
2815
(d.week = function (e) {
2816
return Be(e, this._week.dow, this._week.doy).week;
2818
(d.firstDayOfYear = function () {
2819
return this._week.doy;
2821
(d.firstDayOfWeek = function () {
2822
return this._week.dow;
2824
(d.weekdays = function (e, t) {
2826
(t = y(this._weekdays)
2829
e && !0 !== e && this._weekdays.isFormat.test(t)
2833
!0 === e ? Je(t, this._week.dow) : e ? t[e.day()] : t
2836
(d.weekdaysMin = function (e) {
2838
? Je(this._weekdaysMin, this._week.dow)
2840
? this._weekdaysMin[e.day()]
2841
: this._weekdaysMin;
2843
(d.weekdaysShort = function (e) {
2845
? Je(this._weekdaysShort, this._week.dow)
2847
? this._weekdaysShort[e.day()]
2848
: this._weekdaysShort;
2850
(d.weekdaysParse = function (e, t, n) {
2852
if (this._weekdaysParseExact)
2853
return function (e, t, n) {
2857
e = e.toLocaleLowerCase();
2858
if (!this._weekdaysParse)
2860
this._weekdaysParse = [],
2861
this._shortWeekdaysParse = [],
2862
this._minWeekdaysParse = [],
2867
(r = l([2e3, 1]).day(s)),
2868
(this._minWeekdaysParse[s] = this.weekdaysMin(
2871
).toLocaleLowerCase()),
2872
(this._shortWeekdaysParse[s] = this.weekdaysShort(
2875
).toLocaleLowerCase()),
2876
(this._weekdaysParse[s] = this.weekdays(
2879
).toLocaleLowerCase());
2882
? -1 !== (i = x.call(this._weekdaysParse, e))
2886
? -1 !== (i = x.call(this._shortWeekdaysParse, e))
2889
: -1 !== (i = x.call(this._minWeekdaysParse, e))
2893
? -1 !== (i = x.call(this._weekdaysParse, e)) ||
2894
-1 !== (i = x.call(this._shortWeekdaysParse, e)) ||
2895
-1 !== (i = x.call(this._minWeekdaysParse, e))
2899
? -1 !== (i = x.call(this._shortWeekdaysParse, e)) ||
2900
-1 !== (i = x.call(this._weekdaysParse, e)) ||
2901
-1 !== (i = x.call(this._minWeekdaysParse, e))
2904
: -1 !== (i = x.call(this._minWeekdaysParse, e)) ||
2905
-1 !== (i = x.call(this._weekdaysParse, e)) ||
2906
-1 !== (i = x.call(this._shortWeekdaysParse, e))
2909
}.call(this, e, t, n);
2911
this._weekdaysParse ||
2912
((this._weekdaysParse = []),
2913
(this._minWeekdaysParse = []),
2914
(this._shortWeekdaysParse = []),
2915
(this._fullWeekdaysParse = [])),
2921
((i = l([2e3, 1]).day(s)),
2923
!this._fullWeekdaysParse[s] &&
2924
((this._fullWeekdaysParse[s] = new RegExp(
2925
"^" + this.weekdays(i, "").replace(".", "\\.?") + "$",
2928
(this._shortWeekdaysParse[s] = new RegExp(
2929
"^" + this.weekdaysShort(i, "").replace(".", "\\.?") + "$",
2932
(this._minWeekdaysParse[s] = new RegExp(
2933
"^" + this.weekdaysMin(i, "").replace(".", "\\.?") + "$",
2936
this._weekdaysParse[s] ||
2939
this.weekdays(i, "") +
2941
this.weekdaysShort(i, "") +
2943
this.weekdaysMin(i, "")),
2944
(this._weekdaysParse[s] = new RegExp(i.replace(".", ""), "i"))),
2945
n && "dddd" === t && this._fullWeekdaysParse[s].test(e))
2948
if (n && "ddd" === t && this._shortWeekdaysParse[s].test(e)) return s;
2949
if (n && "dd" === t && this._minWeekdaysParse[s].test(e)) return s;
2950
if (!n && this._weekdaysParse[s].test(e)) return s;
2953
(d.weekdaysRegex = function (e) {
2954
return this._weekdaysParseExact
2955
? (c(this, "_weekdaysRegex") || st.call(this),
2956
e ? this._weekdaysStrictRegex : this._weekdaysRegex)
2957
: (c(this, "_weekdaysRegex") || (this._weekdaysRegex = et),
2958
this._weekdaysStrictRegex && e
2959
? this._weekdaysStrictRegex
2960
: this._weekdaysRegex);
2962
(d.weekdaysShortRegex = function (e) {
2963
return this._weekdaysParseExact
2964
? (c(this, "_weekdaysRegex") || st.call(this),
2965
e ? this._weekdaysShortStrictRegex : this._weekdaysShortRegex)
2966
: (c(this, "_weekdaysShortRegex") || (this._weekdaysShortRegex = tt),
2967
this._weekdaysShortStrictRegex && e
2968
? this._weekdaysShortStrictRegex
2969
: this._weekdaysShortRegex);
2971
(d.weekdaysMinRegex = function (e) {
2972
return this._weekdaysParseExact
2973
? (c(this, "_weekdaysRegex") || st.call(this),
2974
e ? this._weekdaysMinStrictRegex : this._weekdaysMinRegex)
2975
: (c(this, "_weekdaysMinRegex") || (this._weekdaysMinRegex = nt),
2976
this._weekdaysMinStrictRegex && e
2977
? this._weekdaysMinStrictRegex
2978
: this._weekdaysMinRegex);
2980
(d.isPM = function (e) {
2981
return "p" === (e + "").toLowerCase().charAt(0);
2983
(d.meridiem = function (e, t, n) {
2984
return 11 < e ? (n ? "pm" : "PM") : n ? "am" : "AM";
2989
since: "0001-01-01",
2992
name: "Anno Domini",
2997
since: "0000-12-31",
3000
name: "Before Christ",
3005
dayOfMonthOrdinalParse: /\d{1,2}(th|st|nd|rd)/,
3006
ordinal: function (e) {
3010
(1 === M((e % 100) / 10)
3022
(_.lang = e("moment.lang is deprecated. Use moment.locale instead.", ft)),
3024
"moment.langData is deprecated. Use moment.localeData instead.",
3028
function yn(e, t, n, s) {
3031
(e._milliseconds += s * t._milliseconds),
3032
(e._days += s * t._days),
3033
(e._months += s * t._months),
3038
return e < 0 ? Math.floor(e) : Math.ceil(e);
3041
return (4800 * e) / 146097;
3044
return (146097 * e) / 4800;
3047
return function () {
3062
return function () {
3063
return this.isValid() ? this._data[e] : NaN;
3066
var we = Mn("milliseconds"),
3073
var Yn = Math.round,
3074
Sn = { ss: 44, s: 45, m: 45, h: 22, d: 26, w: null, M: 11 };
3075
function On(e, t, n, s) {
3085
(r <= n.ss ? ["s", r] : r < n.s && ["ss", r]) ||
3086
(a <= 1 ? ["m"] : a < n.m && ["mm", a]) ||
3087
(o <= 1 ? ["h"] : o < n.h && ["hh", o]) ||
3088
(u <= 1 ? ["d"] : u < n.d && ["dd", u]);
3091
(r = null != n.w ? r || (d <= 1 ? ["w"] : d < n.w && ["ww", d]) : r) ||
3092
(l <= 1 ? ["M"] : l < n.M && ["MM", l]) ||
3093
(i <= 1 ? ["y"] : ["yy", i]))[2] = t),
3096
function (e, t, n, s, i) {
3097
return i.relativeTime(t || 1, !!n, e, s);
3103
return (0 < e) - (e < 0) || +e;
3106
var e, t, n, s, i, r, a, o, u, l, d;
3107
return this.isValid()
3108
? ((e = bn(this._milliseconds) / 1e3),
3109
(t = bn(this._days)),
3110
(n = bn(this._months)),
3111
(o = this.asSeconds())
3118
(a = e ? e.toFixed(3).replace(/\.?0+$/, "") : ""),
3119
(u = Tn(this._months) !== Tn(o) ? "-" : ""),
3120
(l = Tn(this._days) !== Tn(o) ? "-" : ""),
3121
(d = Tn(this._milliseconds) !== Tn(o) ? "-" : ""),
3122
(o < 0 ? "-" : "") +
3124
(r ? u + r + "Y" : "") +
3125
(n ? u + n + "M" : "") +
3126
(t ? l + t + "D" : "") +
3127
(i || s || e ? "T" : "") +
3128
(i ? d + i + "H" : "") +
3129
(s ? d + s + "M" : "") +
3130
(e ? d + a + "S" : ""))
3132
: this.localeData().invalidDate();
3134
var U = Ct.prototype;
3136
(U.isValid = function () {
3137
return this._isValid;
3139
(U.abs = function () {
3142
(this._milliseconds = _n(this._milliseconds)),
3143
(this._days = _n(this._days)),
3144
(this._months = _n(this._months)),
3145
(e.milliseconds = _n(e.milliseconds)),
3146
(e.seconds = _n(e.seconds)),
3147
(e.minutes = _n(e.minutes)),
3148
(e.hours = _n(e.hours)),
3149
(e.months = _n(e.months)),
3150
(e.years = _n(e.years)),
3154
(U.add = function (e, t) {
3155
return yn(this, e, t, 1);
3157
(U.subtract = function (e, t) {
3158
return yn(this, e, t, -1);
3160
(U.as = function (e) {
3161
if (!this.isValid()) return NaN;
3164
s = this._milliseconds;
3165
if ("month" === (e = o(e)) || "quarter" === e || "year" === e)
3166
switch (((t = this._days + s / 864e5), (n = this._months + wn(t)), e)) {
3175
switch (((t = this._days + Math.round(pn(this._months))), e)) {
3177
return t / 7 + s / 6048e5;
3179
return t + s / 864e5;
3181
return 24 * t + s / 36e5;
3183
return 1440 * t + s / 6e4;
3185
return 86400 * t + s / 1e3;
3187
return Math.floor(864e5 * t) + s;
3189
throw new Error("Unknown unit " + e);
3192
(U.asMilliseconds = de),
3199
(U.asQuarters = Qe),
3202
(U._bubble = function () {
3203
var e = this._milliseconds,
3208
(0 <= e && 0 <= t && 0 <= n) ||
3209
(e <= 0 && t <= 0 && n <= 0) ||
3210
((e += 864e5 * gn(pn(n) + t)), (n = t = 0)),
3211
(s.milliseconds = e % 1e3),
3213
(s.seconds = e % 60),
3215
(s.minutes = e % 60),
3219
(n += e = m(wn(t))),
3229
(U.clone = function () {
3232
(U.get = function (e) {
3233
return (e = o(e)), this.isValid() ? this[e + "s"]() : NaN;
3235
(U.milliseconds = we),
3240
(U.weeks = function () {
3241
return m(this.days() / 7);
3245
(U.humanize = function (e, t) {
3247
return this.isValid()
3250
"object" == typeof e && ((t = e), (e = !1)),
3251
"boolean" == typeof e && (n = e),
3252
"object" == typeof t &&
3253
((s = Object.assign({}, Sn, t)), null != t.s) &&
3256
(e = this.localeData()),
3257
(t = On(this, !n, s, e)),
3258
n && (t = e.pastFuture(+this, t)),
3260
: this.localeData().invalidDate();
3262
(U.toISOString = xn),
3266
(U.localeData = Kt),
3268
"toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)",
3272
s("X", 0, 0, "unix"),
3273
s("x", 0, 0, "valueOf"),
3275
h("X", /[+-]?\d+(\.\d{1,3})?/),
3276
v("X", function (e, t, n) {
3277
n._d = new Date(1e3 * parseFloat(e));
3279
v("x", function (e, t, n) {
3280
n._d = new Date(M(e));
3282
(_.version = "2.30.1"),
3285
(_.min = function () {
3286
return Pt("isBefore", [].slice.call(arguments, 0));
3288
(_.max = function () {
3289
return Pt("isAfter", [].slice.call(arguments, 0));
3291
(_.now = function () {
3292
return Date.now ? Date.now() : +new Date();
3295
(_.unix = function (e) {
3298
(_.months = function (e, t) {
3299
return fn(e, t, "months");
3306
(_.weekdays = function (e, t, n) {
3307
return mn(e, t, n, "weekdays");
3309
(_.parseZone = function () {
3310
return R.apply(null, arguments).parseZone();
3313
(_.isDuration = Ut),
3314
(_.monthsShort = function (e, t) {
3315
return fn(e, t, "monthsShort");
3317
(_.weekdaysMin = function (e, t, n) {
3318
return mn(e, t, n, "weekdaysMin");
3320
(_.defineLocale = mt),
3321
(_.updateLocale = function (e, t) {
3326
null != W[e] && null != W[e].parentLocale
3327
? W[e].set(X(W[e]._config, t))
3328
: ((t = X((s = null != (n = ct(e)) ? n._config : s), t)),
3329
null == n && (t.abbr = e),
3330
((s = new K(t)).parentLocale = W[e]),
3334
(null != W[e].parentLocale
3335
? ((W[e] = W[e].parentLocale), e === ft() && ft(e))
3336
: null != W[e] && delete W[e]),
3340
(_.locales = function () {
3343
(_.weekdaysShort = function (e, t, n) {
3344
return mn(e, t, n, "weekdaysShort");
3346
(_.normalizeUnits = o),
3347
(_.relativeTimeRounding = function (e) {
3348
return void 0 === e ? Yn : "function" == typeof e && ((Yn = e), !0);
3350
(_.relativeTimeThreshold = function (e, t) {
3353
(void 0 === t ? Sn[e] : ((Sn[e] = t), "s" === e && (Sn.ss = t - 1), !0))
3356
(_.calendarFormat = function (e, t) {
3357
return (e = e.diff(t, "days", !0)) < -6
3373
DATETIME_LOCAL: "YYYY-MM-DDTHH:mm",
3374
DATETIME_LOCAL_SECONDS: "YYYY-MM-DDTHH:mm:ss",
3375
DATETIME_LOCAL_MS: "YYYY-MM-DDTHH:mm:ss.SSS",
3378
TIME_SECONDS: "HH:mm:ss",
3379
TIME_MS: "HH:mm:ss.SSS",