moment.js 63 KB

1
  1. "use strict"; var _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (e) { return typeof e } : function (e) { return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e }; !function (e, t) { "object" === ("undefined" == typeof exports ? "undefined" : _typeof(exports)) && "undefined" != typeof module ? module.exports = t() : "function" == typeof define && define.amd ? define(t) : e.moment = t() }(void 0, function () { function e() { return Ps.apply(null, arguments) } function t(e) { return e instanceof Array || "[object Array]" === Object.prototype.toString.call(e) } function n(e) { return null != e && "[object Object]" === Object.prototype.toString.call(e) } function s(e) { if (Object.getOwnPropertyNames) return 0 === Object.getOwnPropertyNames(e).length; var t; for (t in e) if (e.hasOwnProperty(t)) return !1; return !0 } function i(e) { return void 0 === e } function r(e) { return "number" == typeof e || "[object Number]" === Object.prototype.toString.call(e) } function a(e) { return e instanceof Date || "[object Date]" === Object.prototype.toString.call(e) } function o(e, t) { var n, s = []; for (n = 0; n < e.length; ++n)s.push(t(e[n], n)); return s } function u(e, t) { return Object.prototype.hasOwnProperty.call(e, t) } function l(e, t) { for (var n in t) u(t, n) && (e[n] = t[n]); return u(t, "toString") && (e.toString = t.toString), u(t, "valueOf") && (e.valueOf = t.valueOf), e } function d(e, t, n, s) { return Dt(e, t, n, s, !0).utc() } function h() { return { empty: !1, unusedTokens: [], unusedInput: [], overflow: -2, charsLeftOver: 0, nullInput: !1, invalidMonth: null, invalidFormat: !1, userInvalidated: !1, iso: !1, parsedDateParts: [], meridiem: null, rfc2822: !1, weekdayMismatch: !1 } } function c(e) { return null == e._pf && (e._pf = h()), e._pf } function f(e) { if (null == e._isValid) { var t = c(e), n = Ws.call(t.parsedDateParts, function (e) { return null != e }), s = !isNaN(e._d.getTime()) && t.overflow < 0 && !t.empty && !t.invalidMonth && !t.invalidWeekday && !t.weekdayMismatch && !t.nullInput && !t.invalidFormat && !t.userInvalidated && (!t.meridiem || t.meridiem && n); if (e._strict && (s = s && 0 === t.charsLeftOver && 0 === t.unusedTokens.length && void 0 === t.bigHour), null != Object.isFrozen && Object.isFrozen(e)) return s; e._isValid = s } return e._isValid } function m(e) { var t = d(NaN); return null != e ? l(c(t), e) : c(t).userInvalidated = !0, t } function _(e, t) { var n, s, r; if (i(t._isAMomentObject) || (e._isAMomentObject = t._isAMomentObject), i(t._i) || (e._i = t._i), i(t._f) || (e._f = t._f), i(t._l) || (e._l = t._l), i(t._strict) || (e._strict = t._strict), i(t._tzm) || (e._tzm = t._tzm), i(t._isUTC) || (e._isUTC = t._isUTC), i(t._offset) || (e._offset = t._offset), i(t._pf) || (e._pf = c(t)), i(t._locale) || (e._locale = t._locale), Cs.length > 0) for (n = 0; n < Cs.length; n++)s = Cs[n], r = t[s], i(r) || (e[s] = r); return e } function y(t) { _(this, t), this._d = new Date(null != t._d ? t._d.getTime() : NaN), this.isValid() || (this._d = new Date(NaN)), !1 === Hs && (Hs = !0, e.updateOffset(this), Hs = !1) } function g(e) { return e instanceof y || null != e && null != e._isAMomentObject } function p(e) { return e < 0 ? Math.ceil(e) || 0 : Math.floor(e) } function w(e) { var t = +e, n = 0; return 0 !== t && isFinite(t) && (n = p(t)), n } function v(e, t, n) { var s, i = Math.min(e.length, t.length), r = Math.abs(e.length - t.length), a = 0; for (s = 0; s < i; s++)(n && e[s] !== t[s] || !n && w(e[s]) !== w(t[s])) && a++; return a + r } function M(t) { !1 === e.suppressDeprecationWarnings && "undefined" != typeof console && console.warn && console.warn("Deprecation warning: " + t) } function S(t, n) { var s = !0; return l(function () { if (null != e.deprecationHandler && e.deprecationHandler(null, t), s) { for (var i, r = [], a = 0; a < arguments.length; a++) { if (i = "", "object" === _typeof(arguments[a])) { i += "\n[" + a + "] "; for (var o in arguments[0]) i += o + ": " + arguments[0][o] + ", "; i = i.slice(0, -2) } else i = arguments[a]; r.push(i) } M(t + "\nArguments: " + Array.prototype.slice.call(r).join("") + "\n" + (new Error).stack), s = !1 } return n.apply(this, arguments) }, n) } function k(t, n) { null != e.deprecationHandler && e.deprecationHandler(t, n), Rs[t] || (M(n), Rs[t] = !0) } function D(e) { return e instanceof Function || "[object Function]" === Object.prototype.toString.call(e) } function Y(e) { var t, n; for (n in e) t = e[n], D(t) ? this[n] = t : this["_" + n] = t; this._config = e, this._dayOfMonthOrdinalParseLenient = new RegExp((this._dayOfMonthOrdinalParse.source || this._ordinalParse.source) + "|" + /\d{1,2}/.source) } function O(e, t) { var s, i = l({}, e); for (s in t) u(t, s) && (n(e[s]) && n(t[s]) ? (i[s] = {}, l(i[s], e[s]), l(i[s], t[s])) : null != t[s] ? i[s] = t[s] : delete i[s]); for (s in e) u(e, s) && !u(t, s) && n(e[s]) && (i[s] = l({}, i[s])); return i } function T(e) { null != e && this.set(e) } function b(e, t, n) { var s = this._calendar[e] || this._calendar.sameElse; return D(s) ? s.call(t, n) : s } function x(e) { var t = this._longDateFormat[e], n = this._longDateFormat[e.toUpperCase()]; return t || !n ? t : (this._longDateFormat[e] = n.replace(/MMMM|MM|DD|dddd/g, function (e) { return e.slice(1) }), this._longDateFormat[e]) } function P() { return this._invalidDate } function W(e) { return this._ordinal.replace("%d", e) } function C(e, t, n, s) { var i = this._relativeTime[n]; return D(i) ? i(e, t, n, s) : i.replace(/%d/i, e) } function H(e, t) { var n = this._relativeTime[e > 0 ? "future" : "past"]; return D(n) ? n(t) : n.replace(/%s/i, t) } function R(e, t) { var n = e.toLowerCase(); Vs[n] = Vs[n + "s"] = Vs[t] = e } function U(e) { return "string" == typeof e ? Vs[e] || Vs[e.toLowerCase()] : void 0 } function F(e) { var t, n, s = {}; for (n in e) u(e, n) && (t = U(n)) && (s[t] = e[n]); return s } function L(e, t) { Es[e] = t } function N(e) { var t = []; for (var n in e) t.push({ unit: n, priority: Es[n] }); return t.sort(function (e, t) { return e.priority - t.priority }), t } function G(e, t, n) { var s = "" + Math.abs(e), i = t - s.length; return (e >= 0 ? n ? "+" : "" : "-") + Math.pow(10, Math.max(0, i)).toString().substr(1) + s } function V(e, t, n, s) { var i = s; "string" == typeof s && (i = function () { return this[s]() }), e && (Zs[e] = i), t && (Zs[t[0]] = function () { return G(i.apply(this, arguments), t[1], t[2]) }), n && (Zs[n] = function () { return this.localeData().ordinal(i.apply(this, arguments), e) }) } function E(e) { return e.match(/\[[\s\S]/) ? e.replace(/^\[|\]$/g, "") : e.replace(/\\/g, "") } function I(e) { var t, n, s = e.match(Is); for (t = 0, n = s.length; t < n; t++)Zs[s[t]] ? s[t] = Zs[s[t]] : s[t] = E(s[t]); return function (t) { var i, r = ""; for (i = 0; i < n; i++)r += D(s[i]) ? s[i].call(t, e) : s[i]; return r } } function A(e, t) { return e.isValid() ? (t = j(t, e.localeData()), js[t] = js[t] || I(t), js[t](e)) : e.localeData().invalidDate() } function j(e, t) { function n(e) { return t.longDateFormat(e) || e } var s = 5; for (As.lastIndex = 0; s >= 0 && As.test(e);)e = e.replace(As, n), As.lastIndex = 0, s -= 1; return e } function Z(e, t, n) { li[e] = D(t) ? t : function (e, s) { return e && n ? n : t } } function z(e, t) { return u(li, e) ? li[e](t._strict, t._locale) : new RegExp($(e)) } function $(e) { return q(e.replace("\\", "").replace(/\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g, function (e, t, n, s, i) { return t || n || s || i })) } function q(e) { return e.replace(/[-\/\\^$*+?.()|[\]{}]/g, "\\$&") } function J(e, t) { var n, s = t; for ("string" == typeof e && (e = [e]), r(t) && (s = function (e, n) { n[t] = w(e) }), n = 0; n < e.length; n++)di[e[n]] = s } function B(e, t) { J(e, function (e, n, s, i) { s._w = s._w || {}, t(e, s._w, s, i) }) } function Q(e, t, n) { null != t && u(di, e) && di[e](t, n._a, n, e) } function X(e) { return K(e) ? 366 : 365 } function K(e) { return e % 4 == 0 && e % 100 != 0 || e % 400 == 0 } function ee() { return K(this.year()) } function te(t, n) { return function (s) { return null != s ? (se(this, t, s), e.updateOffset(this, n), this) : ne(this, t) } } function ne(e, t) { return e.isValid() ? e._d["get" + (e._isUTC ? "UTC" : "") + t]() : NaN } function se(e, t, n) { e.isValid() && !isNaN(n) && ("FullYear" === t && K(e.year()) && 1 === e.month() && 29 === e.date() ? e._d["set" + (e._isUTC ? "UTC" : "") + t](n, e.month(), oe(n, e.month())) : e._d["set" + (e._isUTC ? "UTC" : "") + t](n)) } function ie(e) { return e = U(e), D(this[e]) ? this[e]() : this } function re(e, t) { if ("object" === (void 0 === e ? "undefined" : _typeof(e))) { e = F(e); for (var n = N(e), s = 0; s < n.length; s++)this[n[s].unit](e[n[s].unit]) } else if (e = U(e), D(this[e])) return this[e](t); return this } function ae(e, t) { return (e % t + t) % t } function oe(e, t) { if (isNaN(e) || isNaN(t)) return NaN; var n = ae(t, 12); return e += (t - n) / 12, 1 === n ? K(e) ? 29 : 28 : 31 - n % 7 % 2 } function ue(e, n) { return e ? t(this._months) ? this._months[e.month()] : this._months[(this._months.isFormat || Si).test(n) ? "format" : "standalone"][e.month()] : t(this._months) ? this._months : this._months.standalone } function le(e, n) { return e ? t(this._monthsShort) ? this._monthsShort[e.month()] : this._monthsShort[Si.test(n) ? "format" : "standalone"][e.month()] : t(this._monthsShort) ? this._monthsShort : this._monthsShort.standalone } function de(e, t, n) { var s, i, r, a = e.toLocaleLowerCase(); if (!this._monthsParse) for (this._monthsParse = [], this._longMonthsParse = [], this._shortMonthsParse = [], s = 0; s < 12; ++s)r = d([2e3, s]), this._shortMonthsParse[s] = this.monthsShort(r, "").toLocaleLowerCase(), this._longMonthsParse[s] = this.months(r, "").toLocaleLowerCase(); return n ? "MMM" === t ? (i = vi.call(this._shortMonthsParse, a), -1 !== i ? i : null) : (i = vi.call(this._longMonthsParse, a), -1 !== i ? i : null) : "MMM" === t ? -1 !== (i = vi.call(this._shortMonthsParse, a)) ? i : (i = vi.call(this._longMonthsParse, a), -1 !== i ? i : null) : -1 !== (i = vi.call(this._longMonthsParse, a)) ? i : (i = vi.call(this._shortMonthsParse, a), -1 !== i ? i : null) } function he(e, t, n) { var s, i, r; if (this._monthsParseExact) return de.call(this, e, t, n); for (this._monthsParse || (this._monthsParse = [], this._longMonthsParse = [], this._shortMonthsParse = []), s = 0; s < 12; s++) { if (i = d([2e3, s]), n && !this._longMonthsParse[s] && (this._longMonthsParse[s] = new RegExp("^" + this.months(i, "").replace(".", "") + "$", "i"), this._shortMonthsParse[s] = new RegExp("^" + this.monthsShort(i, "").replace(".", "") + "$", "i")), n || this._monthsParse[s] || (r = "^" + this.months(i, "") + "|^" + this.monthsShort(i, ""), this._monthsParse[s] = new RegExp(r.replace(".", ""), "i")), n && "MMMM" === t && this._longMonthsParse[s].test(e)) return s; if (n && "MMM" === t && this._shortMonthsParse[s].test(e)) return s; if (!n && this._monthsParse[s].test(e)) return s } } function ce(e, t) { var n; if (!e.isValid()) return e; if ("string" == typeof t) if (/^\d+$/.test(t)) t = w(t); else if (t = e.localeData().monthsParse(t), !r(t)) return e; return n = Math.min(e.date(), oe(e.year(), t)), e._d["set" + (e._isUTC ? "UTC" : "") + "Month"](t, n), e } function fe(t) { return null != t ? (ce(this, t), e.updateOffset(this, !0), this) : ne(this, "Month") } function me() { return oe(this.year(), this.month()) } function _e(e) { return this._monthsParseExact ? (u(this, "_monthsRegex") || ge.call(this), e ? this._monthsShortStrictRegex : this._monthsShortRegex) : (u(this, "_monthsShortRegex") || (this._monthsShortRegex = Yi), this._monthsShortStrictRegex && e ? this._monthsShortStrictRegex : this._monthsShortRegex) } function ye(e) { return this._monthsParseExact ? (u(this, "_monthsRegex") || ge.call(this), e ? this._monthsStrictRegex : this._monthsRegex) : (u(this, "_monthsRegex") || (this._monthsRegex = Oi), this._monthsStrictRegex && e ? this._monthsStrictRegex : this._monthsRegex) } function ge() { function e(e, t) { return t.length - e.length } var t, n, s = [], i = [], r = []; for (t = 0; t < 12; t++)n = d([2e3, t]), s.push(this.monthsShort(n, "")), i.push(this.months(n, "")), r.push(this.months(n, "")), r.push(this.monthsShort(n, "")); for (s.sort(e), i.sort(e), r.sort(e), t = 0; t < 12; t++)s[t] = q(s[t]), i[t] = q(i[t]); for (t = 0; t < 24; t++)r[t] = q(r[t]); this._monthsRegex = new RegExp("^(" + r.join("|") + ")", "i"), this._monthsShortRegex = this._monthsRegex, this._monthsStrictRegex = new RegExp("^(" + i.join("|") + ")", "i"), this._monthsShortStrictRegex = new RegExp("^(" + s.join("|") + ")", "i") } function pe(e, t, n, s, i, r, a) { var o; return e < 100 && e >= 0 ? (o = new Date(e + 400, t, n, s, i, r, a), isFinite(o.getFullYear()) && o.setFullYear(e)) : o = new Date(e, t, n, s, i, r, a), o } function we(e) { var t; if (e < 100 && e >= 0) { var n = Array.prototype.slice.call(arguments); n[0] = e + 400, t = new Date(Date.UTC.apply(null, n)), isFinite(t.getUTCFullYear()) && t.setUTCFullYear(e) } else t = new Date(Date.UTC.apply(null, arguments)); return t } function ve(e, t, n) { var s = 7 + t - n; return -(7 + we(e, 0, s).getUTCDay() - t) % 7 + s - 1 } function Me(e, t, n, s, i) { var r, a, o = (7 + n - s) % 7, u = ve(e, s, i), l = 1 + 7 * (t - 1) + o + u; return l <= 0 ? (r = e - 1, a = X(r) + l) : l > X(e) ? (r = e + 1, a = l - X(e)) : (r = e, a = l), { year: r, dayOfYear: a } } function Se(e, t, n) { var s, i, r = ve(e.year(), t, n), a = Math.floor((e.dayOfYear() - r - 1) / 7) + 1; return a < 1 ? (i = e.year() - 1, s = a + ke(i, t, n)) : a > ke(e.year(), t, n) ? (s = a - ke(e.year(), t, n), i = e.year() + 1) : (i = e.year(), s = a), { week: s, year: i } } function ke(e, t, n) { var s = ve(e, t, n), i = ve(e + 1, t, n); return (X(e) - s + i) / 7 } function De(e) { return Se(e, this._week.dow, this._week.doy).week } function Ye() { return this._week.dow } function Oe() { return this._week.doy } function Te(e) { var t = this.localeData().week(this); return null == e ? t : this.add(7 * (e - t), "d") } function be(e) { var t = Se(this, 1, 4).week; return null == e ? t : this.add(7 * (e - t), "d") } function xe(e, t) { return "string" != typeof e ? e : isNaN(e) ? (e = t.weekdaysParse(e), "number" == typeof e ? e : null) : parseInt(e, 10) } function Pe(e, t) { return "string" == typeof e ? t.weekdaysParse(e) % 7 || 7 : isNaN(e) ? null : e } function We(e, t) { return e.slice(t, 7).concat(e.slice(0, t)) } function Ce(e, n) { var s = t(this._weekdays) ? this._weekdays : this._weekdays[e && !0 !== e && this._weekdays.isFormat.test(n) ? "format" : "standalone"]; return !0 === e ? We(s, this._week.dow) : e ? s[e.day()] : s } function He(e) { return !0 === e ? We(this._weekdaysShort, this._week.dow) : e ? this._weekdaysShort[e.day()] : this._weekdaysShort } function Re(e) { return !0 === e ? We(this._weekdaysMin, this._week.dow) : e ? this._weekdaysMin[e.day()] : this._weekdaysMin } function Ue(e, t, n) { var s, i, r, a = e.toLocaleLowerCase(); if (!this._weekdaysParse) for (this._weekdaysParse = [], this._shortWeekdaysParse = [], this._minWeekdaysParse = [], s = 0; s < 7; ++s)r = d([2e3, 1]).day(s), this._minWeekdaysParse[s] = this.weekdaysMin(r, "").toLocaleLowerCase(), this._shortWeekdaysParse[s] = this.weekdaysShort(r, "").toLocaleLowerCase(), this._weekdaysParse[s] = this.weekdays(r, "").toLocaleLowerCase(); return n ? "dddd" === t ? (i = vi.call(this._weekdaysParse, a), -1 !== i ? i : null) : "ddd" === t ? (i = vi.call(this._shortWeekdaysParse, a), -1 !== i ? i : null) : (i = vi.call(this._minWeekdaysParse, a), -1 !== i ? i : null) : "dddd" === t ? -1 !== (i = vi.call(this._weekdaysParse, a)) ? i : -1 !== (i = vi.call(this._shortWeekdaysParse, a)) ? i : (i = vi.call(this._minWeekdaysParse, a), -1 !== i ? i : null) : "ddd" === t ? -1 !== (i = vi.call(this._shortWeekdaysParse, a)) ? i : -1 !== (i = vi.call(this._weekdaysParse, a)) ? i : (i = vi.call(this._minWeekdaysParse, a), -1 !== i ? i : null) : -1 !== (i = vi.call(this._minWeekdaysParse, a)) ? i : -1 !== (i = vi.call(this._weekdaysParse, a)) ? i : (i = vi.call(this._shortWeekdaysParse, a), -1 !== i ? i : null) } function Fe(e, t, n) { var s, i, r; if (this._weekdaysParseExact) return Ue.call(this, e, t, n); for (this._weekdaysParse || (this._weekdaysParse = [], this._minWeekdaysParse = [], this._shortWeekdaysParse = [], this._fullWeekdaysParse = []), s = 0; s < 7; s++) { if (i = d([2e3, 1]).day(s), n && !this._fullWeekdaysParse[s] && (this._fullWeekdaysParse[s] = new RegExp("^" + this.weekdays(i, "").replace(".", "\\.?") + "$", "i"), this._shortWeekdaysParse[s] = new RegExp("^" + this.weekdaysShort(i, "").replace(".", "\\.?") + "$", "i"), this._minWeekdaysParse[s] = new RegExp("^" + this.weekdaysMin(i, "").replace(".", "\\.?") + "$", "i")), this._weekdaysParse[s] || (r = "^" + this.weekdays(i, "") + "|^" + this.weekdaysShort(i, "") + "|^" + this.weekdaysMin(i, ""), this._weekdaysParse[s] = new RegExp(r.replace(".", ""), "i")), n && "dddd" === t && this._fullWeekdaysParse[s].test(e)) return s; if (n && "ddd" === t && this._shortWeekdaysParse[s].test(e)) return s; if (n && "dd" === t && this._minWeekdaysParse[s].test(e)) return s; if (!n && this._weekdaysParse[s].test(e)) return s } } function Le(e) { if (!this.isValid()) return null != e ? this : NaN; var t = this._isUTC ? this._d.getUTCDay() : this._d.getDay(); return null != e ? (e = xe(e, this.localeData()), this.add(e - t, "d")) : t } function Ne(e) { if (!this.isValid()) return null != e ? this : NaN; var t = (this.day() + 7 - this.localeData()._week.dow) % 7; return null == e ? t : this.add(e - t, "d") } function Ge(e) { if (!this.isValid()) return null != e ? this : NaN; if (null != e) { var t = Pe(e, this.localeData()); return this.day(this.day() % 7 ? t : t - 7) } return this.day() || 7 } function Ve(e) { return this._weekdaysParseExact ? (u(this, "_weekdaysRegex") || Ae.call(this), e ? this._weekdaysStrictRegex : this._weekdaysRegex) : (u(this, "_weekdaysRegex") || (this._weekdaysRegex = Wi), this._weekdaysStrictRegex && e ? this._weekdaysStrictRegex : this._weekdaysRegex) } function Ee(e) { return this._weekdaysParseExact ? (u(this, "_weekdaysRegex") || Ae.call(this), e ? this._weekdaysShortStrictRegex : this._weekdaysShortRegex) : (u(this, "_weekdaysShortRegex") || (this._weekdaysShortRegex = Ci), this._weekdaysShortStrictRegex && e ? this._weekdaysShortStrictRegex : this._weekdaysShortRegex) } function Ie(e) { return this._weekdaysParseExact ? (u(this, "_weekdaysRegex") || Ae.call(this), e ? this._weekdaysMinStrictRegex : this._weekdaysMinRegex) : (u(this, "_weekdaysMinRegex") || (this._weekdaysMinRegex = Hi), this._weekdaysMinStrictRegex && e ? this._weekdaysMinStrictRegex : this._weekdaysMinRegex) } function Ae() { function e(e, t) { return t.length - e.length } var t, n, s, i, r, a = [], o = [], u = [], l = []; for (t = 0; t < 7; t++)n = d([2e3, 1]).day(t), s = this.weekdaysMin(n, ""), i = this.weekdaysShort(n, ""), r = this.weekdays(n, ""), a.push(s), o.push(i), u.push(r), l.push(s), l.push(i), l.push(r); for (a.sort(e), o.sort(e), u.sort(e), l.sort(e), t = 0; t < 7; t++)o[t] = q(o[t]), u[t] = q(u[t]), l[t] = q(l[t]); this._weekdaysRegex = new RegExp("^(" + l.join("|") + ")", "i"), this._weekdaysShortRegex = this._weekdaysRegex, this._weekdaysMinRegex = this._weekdaysRegex, this._weekdaysStrictRegex = new RegExp("^(" + u.join("|") + ")", "i"), this._weekdaysShortStrictRegex = new RegExp("^(" + o.join("|") + ")", "i"), this._weekdaysMinStrictRegex = new RegExp("^(" + a.join("|") + ")", "i") } function je() { return this.hours() % 12 || 12 } function Ze() { return this.hours() || 24 } function ze(e, t) { V(e, 0, 0, function () { return this.localeData().meridiem(this.hours(), this.minutes(), t) }) } function $e(e, t) { return t._meridiemParse } function qe(e) { return "p" === (e + "").toLowerCase().charAt(0) } function Je(e, t, n) { return e > 11 ? n ? "pm" : "PM" : n ? "am" : "AM" } function Be(e) { return e ? e.toLowerCase().replace("_", "-") : e } function Qe(e) { for (var t, n, s, i, r = 0; r < e.length;) { for (i = Be(e[r]).split("-"), t = i.length, n = Be(e[r + 1]), n = n ? n.split("-") : null; t > 0;) { if (s = Xe(i.slice(0, t).join("-"))) return s; if (n && n.length >= t && v(i, n, !0) >= t - 1) break; t-- } r++ } return Ri } function Xe(e) { var t = null; if (!Ni[e] && "undefined" != typeof module && module && module.exports) try { t = Ri._abbr; require("./locale/" + e), Ke(t) } catch (e) { } return Ni[e] } function Ke(e, t) { var n; return e && (n = i(t) ? nt(e) : et(e, t), n ? Ri = n : "undefined" != typeof console && console.warn && console.warn("Locale " + e + " not found. Did you forget to load it?")), Ri._abbr } function et(e, t) { if (null !== t) { var n, s = Li; if (t.abbr = e, null != Ni[e]) k("defineLocaleOverride", "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."), s = Ni[e]._config; else if (null != t.parentLocale) if (null != Ni[t.parentLocale]) s = Ni[t.parentLocale]._config; else { if (null == (n = Xe(t.parentLocale))) return Gi[t.parentLocale] || (Gi[t.parentLocale] = []), Gi[t.parentLocale].push({ name: e, config: t }), null; s = n._config } return Ni[e] = new T(O(s, t)), Gi[e] && Gi[e].forEach(function (e) { et(e.name, e.config) }), Ke(e), Ni[e] } return delete Ni[e], null } function tt(e, t) { if (null != t) { var n, s, i = Li; s = Xe(e), null != s && (i = s._config), t = O(i, t), n = new T(t), n.parentLocale = Ni[e], Ni[e] = n, Ke(e) } else null != Ni[e] && (null != Ni[e].parentLocale ? Ni[e] = Ni[e].parentLocale : null != Ni[e] && delete Ni[e]); return Ni[e] } function nt(e) { var n; if (e && e._locale && e._locale._abbr && (e = e._locale._abbr), !e) return Ri; if (!t(e)) { if (n = Xe(e)) return n; e = [e] } return Qe(e) } function st() { return Us(Ni) } function it(e) { var t, n = e._a; return n && -2 === c(e).overflow && (t = n[ci] < 0 || n[ci] > 11 ? ci : n[fi] < 1 || n[fi] > oe(n[hi], n[ci]) ? fi : n[mi] < 0 || n[mi] > 24 || 24 === n[mi] && (0 !== n[_i] || 0 !== n[yi] || 0 !== n[gi]) ? mi : n[_i] < 0 || n[_i] > 59 ? _i : n[yi] < 0 || n[yi] > 59 ? yi : n[gi] < 0 || n[gi] > 999 ? gi : -1, c(e)._overflowDayOfYear && (t < hi || t > fi) && (t = fi), c(e)._overflowWeeks && -1 === t && (t = pi), c(e)._overflowWeekday && -1 === t && (t = wi), c(e).overflow = t), e } function rt(e, t, n) { return null != e ? e : null != t ? t : n } function at(t) { var n = new Date(e.now()); return t._useUTC ? [n.getUTCFullYear(), n.getUTCMonth(), n.getUTCDate()] : [n.getFullYear(), n.getMonth(), n.getDate()] } function ot(e) { var t, n, s, i, r, a = []; if (!e._d) { for (s = at(e), e._w && null == e._a[fi] && null == e._a[ci] && ut(e), null != e._dayOfYear && (r = rt(e._a[hi], s[hi]), (e._dayOfYear > X(r) || 0 === e._dayOfYear) && (c(e)._overflowDayOfYear = !0), n = we(r, 0, e._dayOfYear), e._a[ci] = n.getUTCMonth(), e._a[fi] = n.getUTCDate()), t = 0; t < 3 && null == e._a[t]; ++t)e._a[t] = a[t] = s[t]; for (; t < 7; t++)e._a[t] = a[t] = null == e._a[t] ? 2 === t ? 1 : 0 : e._a[t]; 24 === e._a[mi] && 0 === e._a[_i] && 0 === e._a[yi] && 0 === e._a[gi] && (e._nextDay = !0, e._a[mi] = 0), e._d = (e._useUTC ? we : pe).apply(null, a), i = e._useUTC ? e._d.getUTCDay() : e._d.getDay(), null != e._tzm && e._d.setUTCMinutes(e._d.getUTCMinutes() - e._tzm), e._nextDay && (e._a[mi] = 24), e._w && void 0 !== e._w.d && e._w.d !== i && (c(e).weekdayMismatch = !0) } } function ut(e) { var t, n, s, i, r, a, o, u; if (t = e._w, null != t.GG || null != t.W || null != t.E) r = 1, a = 4, n = rt(t.GG, e._a[hi], Se(Yt(), 1, 4).year), s = rt(t.W, 1), ((i = rt(t.E, 1)) < 1 || i > 7) && (u = !0); else { r = e._locale._week.dow, a = e._locale._week.doy; var l = Se(Yt(), r, a); n = rt(t.gg, e._a[hi], l.year), s = rt(t.w, l.week), null != t.d ? ((i = t.d) < 0 || i > 6) && (u = !0) : null != t.e ? (i = t.e + r, (t.e < 0 || t.e > 6) && (u = !0)) : i = r } s < 1 || s > ke(n, r, a) ? c(e)._overflowWeeks = !0 : null != u ? c(e)._overflowWeekday = !0 : (o = Me(n, s, i, r, a), e._a[hi] = o.year, e._dayOfYear = o.dayOfYear) } function lt(e) { var t, n, s, i, r, a, o = e._i, u = Vi.exec(o) || Ei.exec(o); if (u) { for (c(e).iso = !0, t = 0, n = Ai.length; t < n; t++)if (Ai[t][1].exec(u[1])) { i = Ai[t][0], s = !1 !== Ai[t][2]; break } if (null == i) return void (e._isValid = !1); if (u[3]) { for (t = 0, n = ji.length; t < n; t++)if (ji[t][1].exec(u[3])) { r = (u[2] || " ") + ji[t][0]; break } if (null == r) return void (e._isValid = !1) } if (!s && null != r) return void (e._isValid = !1); if (u[4]) { if (!Ii.exec(u[4])) return void (e._isValid = !1); a = "Z" } e._f = i + (r || "") + (a || ""), gt(e) } else e._isValid = !1 } function dt(e, t, n, s, i, r) { var a = [ht(e), Di.indexOf(t), parseInt(n, 10), parseInt(s, 10), parseInt(i, 10)]; return r && a.push(parseInt(r, 10)), a } function ht(e) { var t = parseInt(e, 10); return t <= 49 ? 2e3 + t : t <= 999 ? 1900 + t : t } function ct(e) { return e.replace(/\([^)]*\)|[\n\t]/g, " ").replace(/(\s\s+)/g, " ").replace(/^\s\s*/, "").replace(/\s\s*$/, "") } function ft(e, t, n) { if (e) { if (xi.indexOf(e) !== new Date(t[0], t[1], t[2]).getDay()) return c(n).weekdayMismatch = !0, n._isValid = !1, !1 } return !0 } function mt(e, t, n) { if (e) return $i[e]; if (t) return 0; var s = parseInt(n, 10), i = s % 100; return (s - i) / 100 * 60 + i } function _t(e) { var t = zi.exec(ct(e._i)); if (t) { var n = dt(t[4], t[3], t[2], t[5], t[6], t[7]); if (!ft(t[1], n, e)) return; e._a = n, e._tzm = mt(t[8], t[9], t[10]), e._d = we.apply(null, e._a), e._d.setUTCMinutes(e._d.getUTCMinutes() - e._tzm), c(e).rfc2822 = !0 } else e._isValid = !1 } function yt(t) { var n = Zi.exec(t._i); if (null !== n) return void (t._d = new Date(+n[1])); lt(t), !1 === t._isValid && (delete t._isValid, _t(t), !1 === t._isValid && (delete t._isValid, e.createFromInputFallback(t))) } function gt(t) { if (t._f === e.ISO_8601) return void lt(t); if (t._f === e.RFC_2822) return void _t(t); t._a = [], c(t).empty = !0; var n, s, i, r, a, o = "" + t._i, u = o.length, l = 0; for (i = j(t._f, t._locale).match(Is) || [], n = 0; n < i.length; n++)r = i[n], s = (o.match(z(r, t)) || [])[0], s && (a = o.substr(0, o.indexOf(s)), a.length > 0 && c(t).unusedInput.push(a), o = o.slice(o.indexOf(s) + s.length), l += s.length), Zs[r] ? (s ? c(t).empty = !1 : c(t).unusedTokens.push(r), Q(r, s, t)) : t._strict && !s && c(t).unusedTokens.push(r); c(t).charsLeftOver = u - l, o.length > 0 && c(t).unusedInput.push(o), t._a[mi] <= 12 && !0 === c(t).bigHour && t._a[mi] > 0 && (c(t).bigHour = void 0), c(t).parsedDateParts = t._a.slice(0), c(t).meridiem = t._meridiem, t._a[mi] = pt(t._locale, t._a[mi], t._meridiem), ot(t), it(t) } function pt(e, t, n) { var s; return null == n ? t : null != e.meridiemHour ? e.meridiemHour(t, n) : null != e.isPM ? (s = e.isPM(n), s && t < 12 && (t += 12), s || 12 !== t || (t = 0), t) : t } function wt(e) { var t, n, s, i, r; if (0 === e._f.length) return c(e).invalidFormat = !0, void (e._d = new Date(NaN)); for (i = 0; i < e._f.length; i++)r = 0, t = _({}, e), null != e._useUTC && (t._useUTC = e._useUTC), t._f = e._f[i], gt(t), f(t) && (r += c(t).charsLeftOver, r += 10 * c(t).unusedTokens.length, c(t).score = r, (null == s || r < s) && (s = r, n = t)); l(e, n || t) } function vt(e) { if (!e._d) { var t = F(e._i); e._a = o([t.year, t.month, t.day || t.date, t.hour, t.minute, t.second, t.millisecond], function (e) { return e && parseInt(e, 10) }), ot(e) } } function Mt(e) { var t = new y(it(St(e))); return t._nextDay && (t.add(1, "d"), t._nextDay = void 0), t } function St(e) { var n = e._i, s = e._f; return e._locale = e._locale || nt(e._l), null === n || void 0 === s && "" === n ? m({ nullInput: !0 }) : ("string" == typeof n && (e._i = n = e._locale.preparse(n)), g(n) ? new y(it(n)) : (a(n) ? e._d = n : t(s) ? wt(e) : s ? gt(e) : kt(e), f(e) || (e._d = null), e)) } function kt(s) { var u = s._i; i(u) ? s._d = new Date(e.now()) : a(u) ? s._d = new Date(u.valueOf()) : "string" == typeof u ? yt(s) : t(u) ? (s._a = o(u.slice(0), function (e) { return parseInt(e, 10) }), ot(s)) : n(u) ? vt(s) : r(u) ? s._d = new Date(u) : e.createFromInputFallback(s) } function Dt(e, i, r, a, o) { var u = {}; return !0 !== r && !1 !== r || (a = r, r = void 0), (n(e) && s(e) || t(e) && 0 === e.length) && (e = void 0), u._isAMomentObject = !0, u._useUTC = u._isUTC = o, u._l = r, u._i = e, u._f = i, u._strict = a, Mt(u) } function Yt(e, t, n, s) { return Dt(e, t, n, s, !1) } function Ot(e, n) { var s, i; if (1 === n.length && t(n[0]) && (n = n[0]), !n.length) return Yt(); for (s = n[0], i = 1; i < n.length; ++i)n[i].isValid() && !n[i][e](s) || (s = n[i]); return s } function Tt() { return Ot("isBefore", [].slice.call(arguments, 0)) } function bt() { return Ot("isAfter", [].slice.call(arguments, 0)) } function xt(e) { for (var t in e) if (-1 === vi.call(Qi, t) || null != e[t] && isNaN(e[t])) return !1; for (var n = !1, s = 0; s < Qi.length; ++s)if (e[Qi[s]]) { if (n) return !1; parseFloat(e[Qi[s]]) !== w(e[Qi[s]]) && (n = !0) } return !0 } function Pt() { return this._isValid } function Wt() { return Bt(NaN) } function Ct(e) { var t = F(e), n = t.year || 0, s = t.quarter || 0, i = t.month || 0, r = t.week || t.isoWeek || 0, a = t.day || 0, o = t.hour || 0, u = t.minute || 0, l = t.second || 0, d = t.millisecond || 0; this._isValid = xt(t), this._milliseconds = +d + 1e3 * l + 6e4 * u + 1e3 * o * 60 * 60, this._days = +a + 7 * r, this._months = +i + 3 * s + 12 * n, this._data = {}, this._locale = nt(), this._bubble() } function Ht(e) { return e instanceof Ct } function Rt(e) { return e < 0 ? -1 * Math.round(-1 * e) : Math.round(e) } function Ut(e, t) { V(e, 0, 0, function () { var e = this.utcOffset(), n = "+"; return e < 0 && (e = -e, n = "-"), n + G(~~(e / 60), 2) + t + G(~~e % 60, 2) }) } function Ft(e, t) { var n = (t || "").match(e); if (null === n) return null; var s = n[n.length - 1] || [], i = (s + "").match(Xi) || ["-", 0, 0], r = 60 * i[1] + w(i[2]); return 0 === r ? 0 : "+" === i[0] ? r : -r } function Lt(t, n) { var s, i; return n._isUTC ? (s = n.clone(), i = (g(t) || a(t) ? t.valueOf() : Yt(t).valueOf()) - s.valueOf(), s._d.setTime(s._d.valueOf() + i), e.updateOffset(s, !1), s) : Yt(t).local() } function Nt(e) { return 15 * -Math.round(e._d.getTimezoneOffset() / 15) } function Gt(t, n, s) { var i, r = this._offset || 0; if (!this.isValid()) return null != t ? this : NaN; if (null != t) { if ("string" == typeof t) { if (null === (t = Ft(ai, t))) return this } else Math.abs(t) < 16 && !s && (t *= 60); return !this._isUTC && n && (i = Nt(this)), this._offset = t, this._isUTC = !0, null != i && this.add(i, "m"), r !== t && (!n || this._changeInProgress ? tn(this, Bt(t - r, "m"), 1, !1) : this._changeInProgress || (this._changeInProgress = !0, e.updateOffset(this, !0), this._changeInProgress = null)), this } return this._isUTC ? r : Nt(this) } function Vt(e, t) { return null != e ? ("string" != typeof e && (e = -e), this.utcOffset(e, t), this) : -this.utcOffset() } function Et(e) { return this.utcOffset(0, e) } function It(e) { return this._isUTC && (this.utcOffset(0, e), this._isUTC = !1, e && this.subtract(Nt(this), "m")), this } function At() { if (null != this._tzm) this.utcOffset(this._tzm, !1, !0); else if ("string" == typeof this._i) { var e = Ft(ri, this._i); null != e ? this.utcOffset(e) : this.utcOffset(0, !0) } return this } function jt(e) { return !!this.isValid() && (e = e ? Yt(e).utcOffset() : 0, (this.utcOffset() - e) % 60 == 0) } function Zt() { return this.utcOffset() > this.clone().month(0).utcOffset() || this.utcOffset() > this.clone().month(5).utcOffset() } function zt() { if (!i(this._isDSTShifted)) return this._isDSTShifted; var e = {}; if (_(e, this), e = St(e), e._a) { var t = e._isUTC ? d(e._a) : Yt(e._a); this._isDSTShifted = this.isValid() && v(e._a, t.toArray()) > 0 } else this._isDSTShifted = !1; return this._isDSTShifted } function $t() { return !!this.isValid() && !this._isUTC } function qt() { return !!this.isValid() && this._isUTC } function Jt() { return !!this.isValid() && (this._isUTC && 0 === this._offset) } function Bt(e, t) { var n, s, i, a = e, o = null; return Ht(e) ? a = { ms: e._milliseconds, d: e._days, M: e._months } : r(e) ? (a = {}, t ? a[t] = e : a.milliseconds = e) : (o = Ki.exec(e)) ? (n = "-" === o[1] ? -1 : 1, a = { y: 0, d: w(o[fi]) * n, h: w(o[mi]) * n, m: w(o[_i]) * n, s: w(o[yi]) * n, ms: w(Rt(1e3 * o[gi])) * n }) : (o = er.exec(e)) ? (n = "-" === o[1] ? -1 : 1, a = { y: Qt(o[2], n), M: Qt(o[3], n), w: Qt(o[4], n), d: Qt(o[5], n), h: Qt(o[6], n), m: Qt(o[7], n), s: Qt(o[8], n) }) : null == a ? a = {} : "object" === (void 0 === a ? "undefined" : _typeof(a)) && ("from" in a || "to" in a) && (i = Kt(Yt(a.from), Yt(a.to)), a = {}, a.ms = i.milliseconds, a.M = i.months), s = new Ct(a), Ht(e) && u(e, "_locale") && (s._locale = e._locale), s } function Qt(e, t) { var n = e && parseFloat(e.replace(",", ".")); return (isNaN(n) ? 0 : n) * t } function Xt(e, t) { var n = {}; return n.months = t.month() - e.month() + 12 * (t.year() - e.year()), e.clone().add(n.months, "M").isAfter(t) && --n.months, n.milliseconds = +t - +e.clone().add(n.months, "M"), n } function Kt(e, t) { var n; return e.isValid() && t.isValid() ? (t = Lt(t, e), e.isBefore(t) ? n = Xt(e, t) : (n = Xt(t, e), n.milliseconds = -n.milliseconds, n.months = -n.months), n) : { milliseconds: 0, months: 0 } } function en(e, t) { return function (n, s) { var i, r; return null === s || isNaN(+s) || (k(t, "moment()." + t + "(period, number) is deprecated. Please use moment()." + t + "(number, period). See http://momentjs.com/guides/#/warnings/add-inverted-param/ for more info."), r = n, n = s, s = r), n = "string" == typeof n ? +n : n, i = Bt(n, s), tn(this, i, e), this } } function tn(t, n, s, i) { var r = n._milliseconds, a = Rt(n._days), o = Rt(n._months); t.isValid() && (i = null == i || i, o && ce(t, ne(t, "Month") + o * s), a && se(t, "Date", ne(t, "Date") + a * s), r && t._d.setTime(t._d.valueOf() + r * s), i && e.updateOffset(t, a || o)) } function nn(e, t) { var n = e.diff(t, "days", !0); return n < -6 ? "sameElse" : n < -1 ? "lastWeek" : n < 0 ? "lastDay" : n < 1 ? "sameDay" : n < 2 ? "nextDay" : n < 7 ? "nextWeek" : "sameElse" } function sn(t, n) { var s = t || Yt(), i = Lt(s, this).startOf("day"), r = e.calendarFormat(this, i) || "sameElse", a = n && (D(n[r]) ? n[r].call(this, s) : n[r]); return this.format(a || this.localeData().calendar(r, this, Yt(s))) } function rn() { return new y(this) } function an(e, t) { var n = g(e) ? e : Yt(e); return !(!this.isValid() || !n.isValid()) && (t = U(t) || "millisecond", "millisecond" === t ? this.valueOf() > n.valueOf() : n.valueOf() < this.clone().startOf(t).valueOf()) } function on(e, t) { var n = g(e) ? e : Yt(e); return !(!this.isValid() || !n.isValid()) && (t = U(t) || "millisecond", "millisecond" === t ? this.valueOf() < n.valueOf() : this.clone().endOf(t).valueOf() < n.valueOf()) } function un(e, t, n, s) { var i = g(e) ? e : Yt(e), r = g(t) ? t : Yt(t); return !!(this.isValid() && i.isValid() && r.isValid()) && (s = s || "()", ("(" === s[0] ? this.isAfter(i, n) : !this.isBefore(i, n)) && (")" === s[1] ? this.isBefore(r, n) : !this.isAfter(r, n))) } function ln(e, t) { var n, s = g(e) ? e : Yt(e); return !(!this.isValid() || !s.isValid()) && (t = U(t) || "millisecond", "millisecond" === t ? this.valueOf() === s.valueOf() : (n = s.valueOf(), this.clone().startOf(t).valueOf() <= n && n <= this.clone().endOf(t).valueOf())) } function dn(e, t) { return this.isSame(e, t) || this.isAfter(e, t) } function hn(e, t) { return this.isSame(e, t) || this.isBefore(e, t) } function cn(e, t, n) { var s, i, r; if (!this.isValid()) return NaN; if (s = Lt(e, this), !s.isValid()) return NaN; switch (i = 6e4 * (s.utcOffset() - this.utcOffset()), t = U(t)) { case "year": r = fn(this, s) / 12; break; case "month": r = fn(this, s); break; case "quarter": r = fn(this, s) / 3; break; case "second": r = (this - s) / 1e3; break; case "minute": r = (this - s) / 6e4; break; case "hour": r = (this - s) / 36e5; break; case "day": r = (this - s - i) / 864e5; break; case "week": r = (this - s - i) / 6048e5; break; default: r = this - s }return n ? r : p(r) } function fn(e, t) { var n, s, i = 12 * (t.year() - e.year()) + (t.month() - e.month()), r = e.clone().add(i, "months"); return t - r < 0 ? (n = e.clone().add(i - 1, "months"), s = (t - r) / (r - n)) : (n = e.clone().add(i + 1, "months"), s = (t - r) / (n - r)), -(i + s) || 0 } function mn() { return this.clone().locale("en").format("ddd MMM DD YYYY HH:mm:ss [GMT]ZZ") } function _n(e) { if (!this.isValid()) return null; var t = !0 !== e, n = t ? this.clone().utc() : this; return n.year() < 0 || n.year() > 9999 ? A(n, t ? "YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]" : "YYYYYY-MM-DD[T]HH:mm:ss.SSSZ") : D(Date.prototype.toISOString) ? t ? this.toDate().toISOString() : new Date(this.valueOf() + 60 * this.utcOffset() * 1e3).toISOString().replace("Z", A(n, "Z")) : A(n, t ? "YYYY-MM-DD[T]HH:mm:ss.SSS[Z]" : "YYYY-MM-DD[T]HH:mm:ss.SSSZ") } function yn() { if (!this.isValid()) return "moment.invalid(/* " + this._i + " */)"; var e = "moment", t = ""; this.isLocal() || (e = 0 === this.utcOffset() ? "moment.utc" : "moment.parseZone", t = "Z"); var n = "[" + e + '("]', s = 0 <= this.year() && this.year() <= 9999 ? "YYYY" : "YYYYYY", i = t + '[")]'; return this.format(n + s + "-MM-DD[T]HH:mm:ss.SSS" + i) } function gn(t) { t || (t = this.isUtc() ? e.defaultFormatUtc : e.defaultFormat); var n = A(this, t); return this.localeData().postformat(n) } function pn(e, t) { return this.isValid() && (g(e) && e.isValid() || Yt(e).isValid()) ? Bt({ to: this, from: e }).locale(this.locale()).humanize(!t) : this.localeData().invalidDate() } function wn(e) { return this.from(Yt(), e) } function vn(e, t) { return this.isValid() && (g(e) && e.isValid() || Yt(e).isValid()) ? Bt({ from: this, to: e }).locale(this.locale()).humanize(!t) : this.localeData().invalidDate() } function Mn(e) { return this.to(Yt(), e) } function Sn(e) { var t; return void 0 === e ? this._locale._abbr : (t = nt(e), null != t && (this._locale = t), this) } function kn() { return this._locale } function Dn(e, t) { return (e % t + t) % t } function Yn(e, t, n) { return e < 100 && e >= 0 ? new Date(e + 400, t, n) - or : new Date(e, t, n).valueOf() } function On(e, t, n) { return e < 100 && e >= 0 ? Date.UTC(e + 400, t, n) - or : Date.UTC(e, t, n) } function Tn(t) { var n; if (void 0 === (t = U(t)) || "millisecond" === t || !this.isValid()) return this; var s = this._isUTC ? On : Yn; switch (t) { case "year": n = s(this.year(), 0, 1); break; case "quarter": n = s(this.year(), this.month() - this.month() % 3, 1); break; case "month": n = s(this.year(), this.month(), 1); break; case "week": n = s(this.year(), this.month(), this.date() - this.weekday()); break; case "isoWeek": n = s(this.year(), this.month(), this.date() - (this.isoWeekday() - 1)); break; case "day": case "date": n = s(this.year(), this.month(), this.date()); break; case "hour": n = this._d.valueOf(), n -= Dn(n + (this._isUTC ? 0 : this.utcOffset() * rr), ar); break; case "minute": n = this._d.valueOf(), n -= Dn(n, rr); break; case "second": n = this._d.valueOf(), n -= Dn(n, ir) }return this._d.setTime(n), e.updateOffset(this, !0), this } function bn(t) { var n; if (void 0 === (t = U(t)) || "millisecond" === t || !this.isValid()) return this; var s = this._isUTC ? On : Yn; switch (t) { case "year": n = s(this.year() + 1, 0, 1) - 1; break; case "quarter": n = s(this.year(), this.month() - this.month() % 3 + 3, 1) - 1; break; case "month": n = s(this.year(), this.month() + 1, 1) - 1; break; case "week": n = s(this.year(), this.month(), this.date() - this.weekday() + 7) - 1; break; case "isoWeek": n = s(this.year(), this.month(), this.date() - (this.isoWeekday() - 1) + 7) - 1; break; case "day": case "date": n = s(this.year(), this.month(), this.date() + 1) - 1; break; case "hour": n = this._d.valueOf(), n += ar - Dn(n + (this._isUTC ? 0 : this.utcOffset() * rr), ar) - 1; break; case "minute": n = this._d.valueOf(), n += rr - Dn(n, rr) - 1; break; case "second": n = this._d.valueOf(), n += ir - Dn(n, ir) - 1 }return this._d.setTime(n), e.updateOffset(this, !0), this } function xn() { return this._d.valueOf() - 6e4 * (this._offset || 0) } function Pn() { return Math.floor(this.valueOf() / 1e3) } function Wn() { return new Date(this.valueOf()) } function Cn() { var e = this; return [e.year(), e.month(), e.date(), e.hour(), e.minute(), e.second(), e.millisecond()] } function Hn() { var e = this; return { years: e.year(), months: e.month(), date: e.date(), hours: e.hours(), minutes: e.minutes(), seconds: e.seconds(), milliseconds: e.milliseconds() } } function Rn() { return this.isValid() ? this.toISOString() : null } function Un() { return f(this) } function Fn() { return l({}, c(this)) } function Ln() { return c(this).overflow } function Nn() { return { input: this._i, format: this._f, locale: this._locale, isUTC: this._isUTC, strict: this._strict } } function Gn(e, t) { V(0, [e, e.length], 0, t) } function Vn(e) { return jn.call(this, e, this.week(), this.weekday(), this.localeData()._week.dow, this.localeData()._week.doy) } function En(e) { return jn.call(this, e, this.isoWeek(), this.isoWeekday(), 1, 4) } function In() { return ke(this.year(), 1, 4) } function An() { var e = this.localeData()._week; return ke(this.year(), e.dow, e.doy) } function jn(e, t, n, s, i) { var r; return null == e ? Se(this, s, i).year : (r = ke(e, s, i), t > r && (t = r), Zn.call(this, e, t, n, s, i)) } function Zn(e, t, n, s, i) { var r = Me(e, t, n, s, i), a = we(r.year, 0, r.dayOfYear); return this.year(a.getUTCFullYear()), this.month(a.getUTCMonth()), this.date(a.getUTCDate()), this } function zn(e) { return null == e ? Math.ceil((this.month() + 1) / 3) : this.month(3 * (e - 1) + this.month() % 3) } function $n(e) { var t = Math.round((this.clone().startOf("day") - this.clone().startOf("year")) / 864e5) + 1; return null == e ? t : this.add(e - t, "d") } function qn(e, t) { t[gi] = w(1e3 * ("0." + e)) } function Jn() { return this._isUTC ? "UTC" : "" } function Bn() { return this._isUTC ? "Coordinated Universal Time" : "" } function Qn(e) { return Yt(1e3 * e) } function Xn() { return Yt.apply(null, arguments).parseZone() } function Kn(e) { return e } function es(e, t, n, s) { var i = nt(), r = d().set(s, t); return i[n](r, e) } function ts(e, t, n) { if (r(e) && (t = e, e = void 0), e = e || "", null != t) return es(e, t, n, "month"); var s, i = []; for (s = 0; s < 12; s++)i[s] = es(e, s, n, "month"); return i } function ns(e, t, n, s) { "boolean" == typeof e ? (r(t) && (n = t, t = void 0), t = t || "") : (t = e, n = t, e = !1, r(t) && (n = t, t = void 0), t = t || ""); var i = nt(), a = e ? i._week.dow : 0; if (null != n) return es(t, (n + a) % 7, s, "day"); var o, u = []; for (o = 0; o < 7; o++)u[o] = es(t, (o + a) % 7, s, "day"); return u } function ss(e, t) { return ts(e, t, "months") } function is(e, t) { return ts(e, t, "monthsShort") } function rs(e, t, n) { return ns(e, t, n, "weekdays") } function as(e, t, n) { return ns(e, t, n, "weekdaysShort") } function os(e, t, n) { return ns(e, t, n, "weekdaysMin") } function us() { var e = this._data; return this._milliseconds = _r(this._milliseconds), this._days = _r(this._days), this._months = _r(this._months), e.milliseconds = _r(e.milliseconds), e.seconds = _r(e.seconds), e.minutes = _r(e.minutes), e.hours = _r(e.hours), e.months = _r(e.months), e.years = _r(e.years), this } function ls(e, t, n, s) { var i = Bt(t, n); return e._milliseconds += s * i._milliseconds, e._days += s * i._days, e._months += s * i._months, e._bubble() } function ds(e, t) { return ls(this, e, t, 1) } function hs(e, t) { return ls(this, e, t, -1) } function cs(e) { return e < 0 ? Math.floor(e) : Math.ceil(e) } function fs() { var e, t, n, s, i, r = this._milliseconds, a = this._days, o = this._months, u = this._data; return r >= 0 && a >= 0 && o >= 0 || r <= 0 && a <= 0 && o <= 0 || (r += 864e5 * cs(_s(o) + a), a = 0, o = 0), u.milliseconds = r % 1e3, e = p(r / 1e3), u.seconds = e % 60, t = p(e / 60), u.minutes = t % 60, n = p(t / 60), u.hours = n % 24, a += p(n / 24), i = p(ms(a)), o += i, a -= cs(_s(i)), s = p(o / 12), o %= 12, u.days = a, u.months = o, u.years = s, this } function ms(e) { return 4800 * e / 146097 } function _s(e) { return 146097 * e / 4800 } function ys(e) { if (!this.isValid()) return NaN; var t, n, s = this._milliseconds; if ("month" === (e = U(e)) || "quarter" === e || "year" === e) switch (t = this._days + s / 864e5, n = this._months + ms(t), e) { case "month": return n; case "quarter": return n / 3; case "year": return n / 12 } else switch (t = this._days + Math.round(_s(this._months)), e) { case "week": return t / 7 + s / 6048e5; case "day": return t + s / 864e5; case "hour": return 24 * t + s / 36e5; case "minute": return 1440 * t + s / 6e4; case "second": return 86400 * t + s / 1e3; case "millisecond": return Math.floor(864e5 * t) + s; default: throw new Error("Unknown unit " + e) } } function gs() { return this.isValid() ? this._milliseconds + 864e5 * this._days + this._months % 12 * 2592e6 + 31536e6 * w(this._months / 12) : NaN } function ps(e) { return function () { return this.as(e) } } function ws() { return Bt(this) } function vs(e) { return e = U(e), this.isValid() ? this[e + "s"]() : NaN } function Ms(e) { return function () { return this.isValid() ? this._data[e] : NaN } } function Ss() { return p(this.days() / 7) } function ks(e, t, n, s, i) { return i.relativeTime(t || 1, !!n, e, s) } function Ds(e, t, n) { var s = Bt(e).abs(), i = Cr(s.as("s")), r = Cr(s.as("m")), a = Cr(s.as("h")), o = Cr(s.as("d")), u = Cr(s.as("M")), l = Cr(s.as("y")), d = i <= Hr.ss && ["s", i] || i < Hr.s && ["ss", i] || r <= 1 && ["m"] || r < Hr.m && ["mm", r] || a <= 1 && ["h"] || a < Hr.h && ["hh", a] || o <= 1 && ["d"] || o < Hr.d && ["dd", o] || u <= 1 && ["M"] || u < Hr.M && ["MM", u] || l <= 1 && ["y"] || ["yy", l]; return d[2] = t, d[3] = +e > 0, d[4] = n, ks.apply(null, d) } function Ys(e) { return void 0 === e ? Cr : "function" == typeof e && (Cr = e, !0) } function Os(e, t) { return void 0 !== Hr[e] && (void 0 === t ? Hr[e] : (Hr[e] = t, "s" === e && (Hr.ss = t - 1), !0)) } function Ts(e) { if (!this.isValid()) return this.localeData().invalidDate(); var t = this.localeData(), n = Ds(this, !e, t); return e && (n = t.pastFuture(+this, n)), t.postformat(n) } function bs(e) { return (e > 0) - (e < 0) || +e } function xs() { if (!this.isValid()) return this.localeData().invalidDate(); var e, t, n, s = Rr(this._milliseconds) / 1e3, i = Rr(this._days), r = Rr(this._months); e = p(s / 60), t = p(e / 60), s %= 60, e %= 60, n = p(r / 12), r %= 12; var a = n, o = r, u = i, l = t, d = e, h = s ? s.toFixed(3).replace(/\.?0+$/, "") : "", c = this.asSeconds(); if (!c) return "P0D"; var f = c < 0 ? "-" : "", m = bs(this._months) !== bs(c) ? "-" : "", _ = bs(this._days) !== bs(c) ? "-" : "", y = bs(this._milliseconds) !== bs(c) ? "-" : ""; return f + "P" + (a ? m + a + "Y" : "") + (o ? m + o + "M" : "") + (u ? _ + u + "D" : "") + (l || d || h ? "T" : "") + (l ? y + l + "H" : "") + (d ? y + d + "M" : "") + (h ? y + h + "S" : "") } var Ps, Ws; Ws = Array.prototype.some ? Array.prototype.some : function (e) { for (var t = Object(this), n = t.length >>> 0, s = 0; s < n; s++)if (s in t && e.call(this, t[s], s, t)) return !0; return !1 }; var Cs = e.momentProperties = [], Hs = !1, Rs = {}; e.suppressDeprecationWarnings = !1, e.deprecationHandler = null; var Us; Us = Object.keys ? Object.keys : function (e) { var t, n = []; for (t in e) u(e, t) && n.push(t); return n }; var Fs = { sameDay: "[Today at] LT", nextDay: "[Tomorrow at] LT", nextWeek: "dddd [at] LT", lastDay: "[Yesterday at] LT", lastWeek: "[Last] dddd [at] LT", sameElse: "L" }, Ls = { LTS: "h:mm:ss A", LT: "h:mm A", L: "MM/DD/YYYY", LL: "MMMM D, YYYY", LLL: "MMMM D, YYYY h:mm A", LLLL: "dddd, MMMM D, YYYY h:mm A" }, Ns = /\d{1,2}/, Gs = { future: "in %s", past: "%s ago", s: "a few seconds", ss: "%d seconds", m: "a minute", mm: "%d minutes", h: "an hour", hh: "%d hours", d: "a day", dd: "%d days", M: "a month", MM: "%d months", y: "a year", yy: "%d years" }, Vs = {}, Es = {}, Is = /(\[[^\[]*\])|(\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|YYYYYY|YYYYY|YYYY|YY|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g, As = /(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g, js = {}, Zs = {}, zs = /\d/, $s = /\d\d/, qs = /\d{3}/, Js = /\d{4}/, Bs = /[+-]?\d{6}/, Qs = /\d\d?/, Xs = /\d\d\d\d?/, Ks = /\d\d\d\d\d\d?/, ei = /\d{1,3}/, ti = /\d{1,4}/, ni = /[+-]?\d{1,6}/, si = /\d+/, ii = /[+-]?\d+/, ri = /Z|[+-]\d\d:?\d\d/gi, ai = /Z|[+-]\d\d(?::?\d\d)?/gi, oi = /[+-]?\d+(\.\d{1,3})?/, ui = /[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, li = {}, di = {}, hi = 0, ci = 1, fi = 2, mi = 3, _i = 4, yi = 5, gi = 6, pi = 7, wi = 8; V("Y", 0, 0, function () { var e = this.year(); return e <= 9999 ? "" + e : "+" + e }), V(0, ["YY", 2], 0, function () { return this.year() % 100 }), V(0, ["YYYY", 4], 0, "year"), V(0, ["YYYYY", 5], 0, "year"), V(0, ["YYYYYY", 6, !0], 0, "year"), R("year", "y"), L("year", 1), Z("Y", ii), Z("YY", Qs, $s), Z("YYYY", ti, Js), Z("YYYYY", ni, Bs), Z("YYYYYY", ni, Bs), J(["YYYYY", "YYYYYY"], hi), J("YYYY", function (t, n) { n[hi] = 2 === t.length ? e.parseTwoDigitYear(t) : w(t) }), J("YY", function (t, n) { n[hi] = e.parseTwoDigitYear(t) }), J("Y", function (e, t) { t[hi] = parseInt(e, 10) }), e.parseTwoDigitYear = function (e) { return w(e) + (w(e) > 68 ? 1900 : 2e3) }; var vi, Mi = te("FullYear", !0); vi = Array.prototype.indexOf ? Array.prototype.indexOf : function (e) { var t; for (t = 0; t < this.length; ++t)if (this[t] === e) return t; return -1 }, V("M", ["MM", 2], "Mo", function () { return this.month() + 1 }), V("MMM", 0, 0, function (e) { return this.localeData().monthsShort(this, e) }), V("MMMM", 0, 0, function (e) { return this.localeData().months(this, e) }), R("month", "M"), L("month", 8), Z("M", Qs), Z("MM", Qs, $s), Z("MMM", function (e, t) { return t.monthsShortRegex(e) }), Z("MMMM", function (e, t) { return t.monthsRegex(e) }), J(["M", "MM"], function (e, t) { t[ci] = w(e) - 1 }), J(["MMM", "MMMM"], function (e, t, n, s) { var i = n._locale.monthsParse(e, s, n._strict); null != i ? t[ci] = i : c(n).invalidMonth = e }); var Si = /D[oD]?(\[[^\[\]]*\]|\s)+MMMM?/, ki = "January_February_March_April_May_June_July_August_September_October_November_December".split("_"), Di = "Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"), Yi = ui, Oi = ui; V("w", ["ww", 2], "wo", "week"), V("W", ["WW", 2], "Wo", "isoWeek"), R("week", "w"), R("isoWeek", "W"), L("week", 5), L("isoWeek", 5), Z("w", Qs), Z("ww", Qs, $s), Z("W", Qs), Z("WW", Qs, $s), B(["w", "ww", "W", "WW"], function (e, t, n, s) { t[s.substr(0, 1)] = w(e) }); var Ti = { dow: 0, doy: 6 }; V("d", 0, "do", "day"), V("dd", 0, 0, function (e) { return this.localeData().weekdaysMin(this, e) }), V("ddd", 0, 0, function (e) { return this.localeData().weekdaysShort(this, e) }), V("dddd", 0, 0, function (e) { return this.localeData().weekdays(this, e) }), V("e", 0, 0, "weekday"), V("E", 0, 0, "isoWeekday"), R("day", "d"), R("weekday", "e"), R("isoWeekday", "E"), L("day", 11), L("weekday", 11), L("isoWeekday", 11), Z("d", Qs), Z("e", Qs), Z("E", Qs), Z("dd", function (e, t) { return t.weekdaysMinRegex(e) }), Z("ddd", function (e, t) { return t.weekdaysShortRegex(e) }), Z("dddd", function (e, t) { return t.weekdaysRegex(e) }), B(["dd", "ddd", "dddd"], function (e, t, n, s) { var i = n._locale.weekdaysParse(e, s, n._strict); null != i ? t.d = i : c(n).invalidWeekday = e }), B(["d", "e", "E"], function (e, t, n, s) { t[s] = w(e) }); var bi = "Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"), xi = "Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"), Pi = "Su_Mo_Tu_We_Th_Fr_Sa".split("_"), Wi = ui, Ci = ui, Hi = ui; V("H", ["HH", 2], 0, "hour"), V("h", ["hh", 2], 0, je), V("k", ["kk", 2], 0, Ze), V("hmm", 0, 0, function () { return "" + je.apply(this) + G(this.minutes(), 2) }), V("hmmss", 0, 0, function () { return "" + je.apply(this) + G(this.minutes(), 2) + G(this.seconds(), 2) }), V("Hmm", 0, 0, function () { return "" + this.hours() + G(this.minutes(), 2) }), V("Hmmss", 0, 0, function () { return "" + this.hours() + G(this.minutes(), 2) + G(this.seconds(), 2) }), ze("a", !0), ze("A", !1), R("hour", "h"), L("hour", 13), Z("a", $e), Z("A", $e), Z("H", Qs), Z("h", Qs), Z("k", Qs), Z("HH", Qs, $s), Z("hh", Qs, $s), Z("kk", Qs, $s), Z("hmm", Xs), Z("hmmss", Ks), Z("Hmm", Xs), Z("Hmmss", Ks), J(["H", "HH"], mi), J(["k", "kk"], function (e, t, n) { var s = w(e); t[mi] = 24 === s ? 0 : s }), J(["a", "A"], function (e, t, n) { n._isPm = n._locale.isPM(e), n._meridiem = e }), J(["h", "hh"], function (e, t, n) { t[mi] = w(e), c(n).bigHour = !0 }), J("hmm", function (e, t, n) { var s = e.length - 2; t[mi] = w(e.substr(0, s)), t[_i] = w(e.substr(s)), c(n).bigHour = !0 }), J("hmmss", function (e, t, n) { var s = e.length - 4, i = e.length - 2; t[mi] = w(e.substr(0, s)), t[_i] = w(e.substr(s, 2)), t[yi] = w(e.substr(i)), c(n).bigHour = !0 }), J("Hmm", function (e, t, n) { var s = e.length - 2; t[mi] = w(e.substr(0, s)), t[_i] = w(e.substr(s)) }), J("Hmmss", function (e, t, n) { var s = e.length - 4, i = e.length - 2; t[mi] = w(e.substr(0, s)), t[_i] = w(e.substr(s, 2)), t[yi] = w(e.substr(i)) }); var Ri, Ui = /[ap]\.?m?\.?/i, Fi = te("Hours", !0), Li = { calendar: Fs, longDateFormat: Ls, invalidDate: "Invalid date", ordinal: "%d", dayOfMonthOrdinalParse: Ns, relativeTime: Gs, months: ki, monthsShort: Di, week: Ti, weekdays: bi, weekdaysMin: Pi, weekdaysShort: xi, meridiemParse: Ui }, Ni = {}, Gi = {}, Vi = /^\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)?)?$/, Ei = /^\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)?)?$/, Ii = /Z|[+-]\d\d(?::?\d\d)?/, Ai = [["YYYYYY-MM-DD", /[+-]\d{6}-\d\d-\d\d/], ["YYYY-MM-DD", /\d{4}-\d\d-\d\d/], ["GGGG-[W]WW-E", /\d{4}-W\d\d-\d/], ["GGGG-[W]WW", /\d{4}-W\d\d/, !1], ["YYYY-DDD", /\d{4}-\d{3}/], ["YYYY-MM", /\d{4}-\d\d/, !1], ["YYYYYYMMDD", /[+-]\d{10}/], ["YYYYMMDD", /\d{8}/], ["GGGG[W]WWE", /\d{4}W\d{3}/], ["GGGG[W]WW", /\d{4}W\d{2}/, !1], ["YYYYDDD", /\d{7}/]], ji = [["HH:mm:ss.SSSS", /\d\d:\d\d:\d\d\.\d+/], ["HH:mm:ss,SSSS", /\d\d:\d\d:\d\d,\d+/], ["HH:mm:ss", /\d\d:\d\d:\d\d/], ["HH:mm", /\d\d:\d\d/], ["HHmmss.SSSS", /\d\d\d\d\d\d\.\d+/], ["HHmmss,SSSS", /\d\d\d\d\d\d,\d+/], ["HHmmss", /\d\d\d\d\d\d/], ["HHmm", /\d\d\d\d/], ["HH", /\d\d/]], Zi = /^\/?Date\((\-?\d+)/i, zi = /^(?:(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}))$/, $i = { UT: 0, GMT: 0, EDT: -240, EST: -300, CDT: -300, CST: -360, MDT: -360, MST: -420, PDT: -420, PST: -480 }; e.createFromInputFallback = S("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 and will be removed in an upcoming major release. Please refer to http://momentjs.com/guides/#/warnings/js-date/ for more info.", function (e) { e._d = new Date(e._i + (e._useUTC ? " UTC" : "")) }), e.ISO_8601 = function () { }, e.RFC_2822 = function () { }; var qi = S("moment().min is deprecated, use moment.max instead. http://momentjs.com/guides/#/warnings/min-max/", function () { var e = Yt.apply(null, arguments); return this.isValid() && e.isValid() ? e < this ? this : e : m() }), Ji = S("moment().max is deprecated, use moment.min instead. http://momentjs.com/guides/#/warnings/min-max/", function () { var e = Yt.apply(null, arguments); return this.isValid() && e.isValid() ? e > this ? this : e : m() }), Bi = function () { return Date.now ? Date.now() : +new Date }, Qi = ["year", "quarter", "month", "week", "day", "hour", "minute", "second", "millisecond"]; Ut("Z", ":"), Ut("ZZ", ""), Z("Z", ai), Z("ZZ", ai), J(["Z", "ZZ"], function (e, t, n) { n._useUTC = !0, n._tzm = Ft(ai, e) }); var Xi = /([\+\-]|\d\d)/gi; e.updateOffset = function () { }; var Ki = /^(\-|\+)?(?:(\d*)[. ])?(\d+)\:(\d+)(?:\:(\d+)(\.\d*)?)?$/, er = /^(-|\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/; Bt.fn = Ct.prototype, Bt.invalid = Wt; var tr = en(1, "add"), nr = en(-1, "subtract"); e.defaultFormat = "YYYY-MM-DDTHH:mm:ssZ", e.defaultFormatUtc = "YYYY-MM-DDTHH:mm:ss[Z]"; var sr = S("moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.", function (e) { return void 0 === e ? this.localeData() : this.locale(e) }), ir = 1e3, rr = 60 * ir, ar = 60 * rr, or = 3506328 * ar; V(0, ["gg", 2], 0, function () { return this.weekYear() % 100 }), V(0, ["GG", 2], 0, function () { return this.isoWeekYear() % 100 }), Gn("gggg", "weekYear"), Gn("ggggg", "weekYear"), Gn("GGGG", "isoWeekYear"), Gn("GGGGG", "isoWeekYear"), R("weekYear", "gg"), R("isoWeekYear", "GG"), L("weekYear", 1), L("isoWeekYear", 1), Z("G", ii), Z("g", ii), Z("GG", Qs, $s), Z("gg", Qs, $s), Z("GGGG", ti, Js), Z("gggg", ti, Js), Z("GGGGG", ni, Bs), Z("ggggg", ni, Bs), B(["gggg", "ggggg", "GGGG", "GGGGG"], function (e, t, n, s) { t[s.substr(0, 2)] = w(e) }), B(["gg", "GG"], function (t, n, s, i) { n[i] = e.parseTwoDigitYear(t) }), V("Q", 0, "Qo", "quarter"), R("quarter", "Q"), L("quarter", 7), Z("Q", zs), J("Q", function (e, t) { t[ci] = 3 * (w(e) - 1) }), V("D", ["DD", 2], "Do", "date"), R("date", "D"), L("date", 9), Z("D", Qs), Z("DD", Qs, $s), Z("Do", function (e, t) { return e ? t._dayOfMonthOrdinalParse || t._ordinalParse : t._dayOfMonthOrdinalParseLenient }), J(["D", "DD"], fi), J("Do", function (e, t) { t[fi] = w(e.match(Qs)[0]) }); var ur = te("Date", !0); V("DDD", ["DDDD", 3], "DDDo", "dayOfYear"), R("dayOfYear", "DDD"), L("dayOfYear", 4), Z("DDD", ei), Z("DDDD", qs), J(["DDD", "DDDD"], function (e, t, n) { n._dayOfYear = w(e) }), V("m", ["mm", 2], 0, "minute"), R("minute", "m"), L("minute", 14), Z("m", Qs), Z("mm", Qs, $s), J(["m", "mm"], _i); var lr = te("Minutes", !1); V("s", ["ss", 2], 0, "second"), R("second", "s"), L("second", 15), Z("s", Qs), Z("ss", Qs, $s), J(["s", "ss"], yi); var dr = te("Seconds", !1); V("S", 0, 0, function () { return ~~(this.millisecond() / 100) }), V(0, ["SS", 2], 0, function () { return ~~(this.millisecond() / 10) }), V(0, ["SSS", 3], 0, "millisecond"), V(0, ["SSSS", 4], 0, function () { return 10 * this.millisecond() }), V(0, ["SSSSS", 5], 0, function () { return 100 * this.millisecond() }), V(0, ["SSSSSS", 6], 0, function () { return 1e3 * this.millisecond() }), V(0, ["SSSSSSS", 7], 0, function () { return 1e4 * this.millisecond() }), V(0, ["SSSSSSSS", 8], 0, function () { return 1e5 * this.millisecond() }), V(0, ["SSSSSSSSS", 9], 0, function () { return 1e6 * this.millisecond() }), R("millisecond", "ms"), L("millisecond", 16), Z("S", ei, zs), Z("SS", ei, $s), Z("SSS", ei, qs); var hr; for (hr = "SSSS"; hr.length <= 9; hr += "S")Z(hr, si); for (hr = "S"; hr.length <= 9; hr += "S")J(hr, qn); var cr = te("Milliseconds", !1); V("z", 0, 0, "zoneAbbr"), V("zz", 0, 0, "zoneName"); var fr = y.prototype; fr.add = tr, fr.calendar = sn, fr.clone = rn, fr.diff = cn, fr.endOf = bn, fr.format = gn, fr.from = pn, fr.fromNow = wn, fr.to = vn, fr.toNow = Mn, fr.get = ie, fr.invalidAt = Ln, fr.isAfter = an, fr.isBefore = on, fr.isBetween = un, fr.isSame = ln, fr.isSameOrAfter = dn, fr.isSameOrBefore = hn, fr.isValid = Un, fr.lang = sr, fr.locale = Sn, fr.localeData = kn, fr.max = Ji, fr.min = qi, fr.parsingFlags = Fn, fr.set = re, fr.startOf = Tn, fr.subtract = nr, fr.toArray = Cn, fr.toObject = Hn, fr.toDate = Wn, fr.toISOString = _n, fr.inspect = yn, fr.toJSON = Rn, fr.toString = mn, fr.unix = Pn, fr.valueOf = xn, fr.creationData = Nn, fr.year = Mi, fr.isLeapYear = ee, fr.weekYear = Vn, fr.isoWeekYear = En, fr.quarter = fr.quarters = zn, fr.month = fe, fr.daysInMonth = me, fr.week = fr.weeks = Te, fr.isoWeek = fr.isoWeeks = be, fr.weeksInYear = An, fr.isoWeeksInYear = In, fr.date = ur, fr.day = fr.days = Le, fr.weekday = Ne, fr.isoWeekday = Ge, fr.dayOfYear = $n, fr.hour = fr.hours = Fi, fr.minute = fr.minutes = lr, fr.second = fr.seconds = dr, fr.millisecond = fr.milliseconds = cr, fr.utcOffset = Gt, fr.utc = Et, fr.local = It, fr.parseZone = At, fr.hasAlignedHourOffset = jt, fr.isDST = Zt, fr.isLocal = $t, fr.isUtcOffset = qt, fr.isUtc = Jt, fr.isUTC = Jt, fr.zoneAbbr = Jn, fr.zoneName = Bn, fr.dates = S("dates accessor is deprecated. Use date instead.", ur), fr.months = S("months accessor is deprecated. Use month instead", fe), fr.years = S("years accessor is deprecated. Use year instead", Mi), fr.zone = S("moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/", Vt), fr.isDSTShifted = S("isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information", zt); var mr = T.prototype; mr.calendar = b, mr.longDateFormat = x, mr.invalidDate = P, mr.ordinal = W, mr.preparse = Kn, mr.postformat = Kn, mr.relativeTime = C, mr.pastFuture = H, mr.set = Y, mr.months = ue, mr.monthsShort = le, mr.monthsParse = he, mr.monthsRegex = ye, mr.monthsShortRegex = _e, mr.week = De, mr.firstDayOfYear = Oe, mr.firstDayOfWeek = Ye, mr.weekdays = Ce, mr.weekdaysMin = Re, mr.weekdaysShort = He, mr.weekdaysParse = Fe, mr.weekdaysRegex = Ve, mr.weekdaysShortRegex = Ee, mr.weekdaysMinRegex = Ie, mr.isPM = qe, mr.meridiem = Je, Ke("en", { dayOfMonthOrdinalParse: /\d{1,2}(th|st|nd|rd)/, ordinal: function (e) { var t = e % 10; return e + (1 === w(e % 100 / 10) ? "th" : 1 === t ? "st" : 2 === t ? "nd" : 3 === t ? "rd" : "th") } }), e.lang = S("moment.lang is deprecated. Use moment.locale instead.", Ke), e.langData = S("moment.langData is deprecated. Use moment.localeData instead.", nt); var _r = Math.abs, yr = ps("ms"), gr = ps("s"), pr = ps("m"), wr = ps("h"), vr = ps("d"), Mr = ps("w"), Sr = ps("M"), kr = ps("Q"), Dr = ps("y"), Yr = Ms("milliseconds"), Or = Ms("seconds"), Tr = Ms("minutes"), br = Ms("hours"), xr = Ms("days"), Pr = Ms("months"), Wr = Ms("years"), Cr = Math.round, Hr = { ss: 44, s: 45, m: 45, h: 22, d: 26, M: 11 }, Rr = Math.abs, Ur = Ct.prototype; return Ur.isValid = Pt, Ur.abs = us, Ur.add = ds, Ur.subtract = hs, Ur.as = ys, Ur.asMilliseconds = yr, Ur.asSeconds = gr, Ur.asMinutes = pr, Ur.asHours = wr, Ur.asDays = vr, Ur.asWeeks = Mr, Ur.asMonths = Sr, Ur.asQuarters = kr, Ur.asYears = Dr, Ur.valueOf = gs, Ur._bubble = fs, Ur.clone = ws, Ur.get = vs, Ur.milliseconds = Yr, Ur.seconds = Or, Ur.minutes = Tr, Ur.hours = br, Ur.days = xr, Ur.weeks = Ss, Ur.months = Pr, Ur.years = Wr, Ur.humanize = Ts, Ur.toISOString = xs, Ur.toString = xs, Ur.toJSON = xs, Ur.locale = Sn, Ur.localeData = kn, Ur.toIsoString = S("toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)", xs), Ur.lang = sr, V("X", 0, 0, "unix"), V("x", 0, 0, "valueOf"), Z("x", ii), Z("X", oi), J("X", function (e, t, n) { n._d = new Date(1e3 * parseFloat(e, 10)) }), J("x", function (e, t, n) { n._d = new Date(w(e)) }), e.version = "2.24.0", function (e) { Ps = e }(Yt), e.fn = fr, e.min = Tt, e.max = bt, e.now = Bi, e.utc = d, e.unix = Qn, e.months = ss, e.isDate = a, e.locale = Ke, e.invalid = m, e.duration = Bt, e.isMoment = g, e.weekdays = rs, e.parseZone = Xn, e.localeData = nt, e.isDuration = Ht, e.monthsShort = is, e.weekdaysMin = os, e.defineLocale = et, e.updateLocale = tt, e.locales = st, e.weekdaysShort = as, e.normalizeUnits = U, e.relativeTimeRounding = Ys, e.relativeTimeThreshold = Os, e.calendarFormat = nn, e.prototype = fr, e.HTML5_FMT = { DATETIME_LOCAL: "YYYY-MM-DDTHH:mm", DATETIME_LOCAL_SECONDS: "YYYY-MM-DDTHH:mm:ss", DATETIME_LOCAL_MS: "YYYY-MM-DDTHH:mm:ss.SSS", DATE: "YYYY-MM-DD", TIME: "HH:mm", TIME_SECONDS: "HH:mm:ss", TIME_MS: "HH:mm:ss.SSS", WEEK: "GGGG-[W]WW", MONTH: "YYYY-MM" }, e });