vendor: 70,602 bytes, lines 1-1500
1!function(e, t) { 2 'object' == typeof exports && 'undefined' != typeof module ? module.exports = t() : 'function' == typeof define && define.amd ? define(t) : e.moment = t(); 3}(this, function() { 4 'use strict'; 5 var e, i; 6 7 function c() { 8 return e.apply(null, arguments); 9 } 10 11 function o(e) { 12 return e instanceof Array || '[object Array]' === Object.prototype.toString.call(e); 13 } 14 15 function u(e) { 16 return null != e && '[object Object]' === Object.prototype.toString.call(e); 17 } 18 19 function l(e) { 20 return void 0 === e; 21 } 22 23 function h(e) { 24 return 'number' == typeof e || '[object Number]' === Object.prototype.toString.call(e); 25 } 26 27 function d(e) { 28 return e instanceof Date || '[object Date]' === Object.prototype.toString.call(e); 29 } 30 31 function f(e, t) { 32 var n, s = []; 33 for (n = 0; n < e.length; ++n) s.push(t(e[n], n)); 34 return s; 35 } 36 37 function m(e, t) { 38 return Object.prototype.hasOwnProperty.call(e, t); 39 } 40 41 function _(e, t) { 42 for (var n in t) m(t, n) && (e[n] = t[n]); 43 return m(t, 'toString') && (e.toString = t.toString), m(t, 'valueOf') && (e.valueOf = t.valueOf), e; 44 } 45 46 function y(e, t, n, s) { 47 return Tt(e, t, n, s, !0).utc(); 48 } 49 50 function g(e) { 51 return null == e._pf && (e._pf = { 52 empty: !1, 53 unusedTokens: [], 54 unusedInput: [], 55 overflow: -2, 56 charsLeftOver: 0, 57 nullInput: !1, 58 invalidMonth: null, 59 invalidFormat: !1, 60 userInvalidated: !1, 61 iso: !1, 62 parsedDateParts: [], 63 meridiem: null, 64 rfc2822: !1, 65 weekdayMismatch: !1 66 }), e._pf; 67 } 68 69 function v(e) { 70 if (null == e._isValid) { 71 var t = g(e), n = i.call(t.parsedDateParts, function(e) { 72 return null != e; 73 }), 74 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); 75 if (e._strict && (s = s && 0 === t.charsLeftOver && 0 === t.unusedTokens.length && void 0 === t.bigHour), null != Object.isFrozen && Object.isFrozen(e)) return s; 76 e._isValid = s; 77 } 78 return e._isValid; 79 } 80 81 function p(e) { 82 var t = y(NaN); 83 return null != e ? _(g(t), e) : g(t).userInvalidated = !0, t; 84 } 85 86 i = Array.prototype.some ? Array.prototype.some : function(e) { 87 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; 88 return !1; 89 }; 90 var r = c.momentProperties = []; 91 92 function w(e, t) { 93 var n, s, i; 94 if (l(t._isAMomentObject) || (e._isAMomentObject = t._isAMomentObject), l(t._i) || (e._i = t._i), l(t._f) || (e._f = t._f), l(t._l) || (e._l = t._l), l(t._strict) || (e._strict = t._strict), l(t._tzm) || (e._tzm = t._tzm), l(t._isUTC) || (e._isUTC = t._isUTC), l(t._offset) || (e._offset = t._offset), l(t._pf) || (e._pf = g(t)), l(t._locale) || (e._locale = t._locale), 0 < r.length) for (n = 0; n < r.length; n++) l(i = t[s = r[n]]) || (e[s] = i); 95 return e; 96 } 97 98 var t = !1; 99 100 function M(e) { 101 w(this, e), this._d = new Date(null != e._d ? e._d.getTime() : NaN), this.isValid() || (this._d = new Date(NaN)), !1 === t && (t = !0, c.updateOffset(this), t = !1); 102 } 103 104 function k(e) { 105 return e instanceof M || null != e && null != e._isAMomentObject; 106 } 107 108 function S(e) { 109 return e < 0 ? Math.ceil(e) || 0 : Math.floor(e); 110 } 111 112 function D(e) { 113 var t = +e, n = 0; 114 return 0 !== t && isFinite(t) && (n = S(t)), n; 115 } 116 117 function a(e, t, n) { 118 var s, i = Math.min(e.length, t.length), r = Math.abs(e.length - t.length), a = 0; 119 for (s = 0; s < i; s++) (n && e[s] !== t[s] || !n && D(e[s]) !== D(t[s])) && a++; 120 return a + r; 121 } 122 123 function Y(e) { 124 !1 === c.suppressDeprecationWarnings && 'undefined' != typeof console && console.warn && console.warn('Deprecation warning: ' + e); 125 } 126 127 function n(i, r) { 128 var a = !0; 129 return _(function() { 130 if (null != c.deprecationHandler && c.deprecationHandler(null, i), a) { 131 for (var e, t = [], n = 0; n < arguments.length; n++) { 132 if (e = '', 'object' == typeof arguments[n]) { 133 for (var s in e += '\n[' + n + '] ', arguments[0]) e += s + ': ' + arguments[0][s] + ', '; 134 e = e.slice(0, -2); 135 } else e = arguments[n]; 136 t.push(e); 137 } 138 Y(i + '\nArguments: ' + Array.prototype.slice.call(t).join('') + '\n' + (new Error).stack), a = !1; 139 } 140 return r.apply(this, arguments); 141 }, r); 142 } 143 144 var s, O = {}; 145 146 function T(e, t) { 147 null != c.deprecationHandler && c.deprecationHandler(e, t), O[e] || (Y(t), O[e] = !0); 148 } 149 150 function b(e) { 151 return e instanceof Function || '[object Function]' === Object.prototype.toString.call(e); 152 } 153 154 function x(e, t) { 155 var n, s = _({}, e); 156 for (n in t) m(t, n) && (u(e[n]) && u(t[n]) ? (s[n] = {}, _(s[n], e[n]), _(s[n], t[n])) : null != t[n] ? s[n] = t[n] : delete s[n]); 157 for (n in e) m(e, n) && !m(t, n) && u(e[n]) && (s[n] = _({}, s[n])); 158 return s; 159 } 160 161 function P(e) { 162 null != e && this.set(e); 163 } 164 165 c.suppressDeprecationWarnings = !1, c.deprecationHandler = null, s = Object.keys ? Object.keys : function(e) { 166 var t, n = []; 167 for (t in e) m(e, t) && n.push(t); 168 return n; 169 }; 170 var W = {}; 171 172 function C(e, t) { 173 var n = e.toLowerCase(); 174 W[n] = W[n + 's'] = W[t] = e; 175 } 176 177 function H(e) { 178 return 'string' == typeof e ? W[e] || W[e.toLowerCase()] : void 0; 179 } 180 181 function R(e) { 182 var t, n, s = {}; 183 for (n in e) m(e, n) && (t = H(n)) && (s[t] = e[n]); 184 return s; 185 } 186 187 var U = {}; 188 189 function F(e, t) { 190 U[e] = t; 191 } 192 193 function L(e, t, n) { 194 var s = '' + Math.abs(e), i = t - s.length; 195 return (0 <= e ? n ? '+' : '' : '-') + Math.pow(10, Math.max(0, i)).toString().substr(1) + s; 196 } 197 198 var N = /(\[[^\[]*\])|(\\)?([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, 199 G = /(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g, V = {}, E = {}; 200 201 function I(e, t, n, s) { 202 var i = s; 203 'string' == typeof s && (i = function() { 204 return this[s](); 205 }), e && (E[e] = i), t && (E[t[0]] = function() { 206 return L(i.apply(this, arguments), t[1], t[2]); 207 }), n && (E[n] = function() { 208 return this.localeData().ordinal(i.apply(this, arguments), e); 209 }); 210 } 211 212 function A(e, t) { 213 return e.isValid() ? (t = j(t, e.localeData()), V[t] = V[t] || function(s) { 214 var e, i, t, r = s.match(N); 215 for (e = 0, i = r.length; e < i; e++) E[r[e]] ? r[e] = E[r[e]] : r[e] = (t = r[e]).match(/\[[\s\S]/) ? t.replace(/^\[|\]$/g, '') : t.replace(/\\/g, ''); 216 return function(e) { 217 var t, n = ''; 218 for (t = 0; t < i; t++) n += b(r[t]) ? r[t].call(e, s) : r[t]; 219 return n; 220 }; 221 }(t), V[t](e)) : e.localeData().invalidDate(); 222 } 223 224 function j(e, t) { 225 var n = 5; 226 227 function s(e) { 228 return t.longDateFormat(e) || e; 229 } 230 231 for (G.lastIndex = 0; 0 <= n && G.test(e);) e = e.replace(G, s), G.lastIndex = 0, n -= 1; 232 return e; 233 } 234 235 var Z = /\d/, z = /\d\d/, $ = /\d{3}/, q = /\d{4}/, J = /[+-]?\d{6}/, B = /\d\d?/, Q = /\d\d\d\d?/, 236 X = /\d\d\d\d\d\d?/, K = /\d{1,3}/, ee = /\d{1,4}/, te = /[+-]?\d{1,6}/, ne = /\d+/, se = /[+-]?\d+/, 237 ie = /Z|[+-]\d\d:?\d\d/gi, re = /Z|[+-]\d\d(?::?\d\d)?/gi, 238 ae = /[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, 239 oe = {}; 240 241 function ue(e, n, s) { 242 oe[e] = b(n) ? n : function(e, t) { 243 return e && s ? s : n; 244 }; 245 } 246 247 function le(e, t) { 248 return m(oe, e) ? oe[e](t._strict, t._locale) : new RegExp(he(e.replace('\\', '').replace(/\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g, function(e, t, n, s, i) { 249 return t || n || s || i; 250 }))); 251 } 252 253 function he(e) { 254 return e.replace(/[-\/\\^$*+?.()|[\]{}]/g, '\\$&'); 255 } 256 257 var de = {}; 258 259 function ce(e, n) { 260 var t, s = n; 261 for ('string' == typeof e && (e = [e]), h(n) && (s = function(e, t) { 262 t[n] = D(e); 263 }), t = 0; t < e.length; t++) de[e[t]] = s; 264 } 265 266 function fe(e, i) { 267 ce(e, function(e, t, n, s) { 268 n._w = n._w || {}, i(e, n._w, n, s); 269 }); 270 } 271 272 var me = 0, _e = 1, ye = 2, ge = 3, ve = 4, pe = 5, we = 6, Me = 7, ke = 8; 273 274 function Se(e) { 275 return De(e) ? 366 : 365; 276 } 277 278 function De(e) { 279 return e % 4 == 0 && e % 100 != 0 || e % 400 == 0; 280 } 281 282 I('Y', 0, 0, function() { 283 var e = this.year(); 284 return e <= 9999 ? '' + e : '+' + e; 285 }), I(0, ['YY', 2], 0, function() { 286 return this.year() % 100; 287 }), I(0, ['YYYY', 4], 0, 'year'), I(0, ['YYYYY', 5], 0, 'year'), I(0, ['YYYYYY', 6, !0], 0, 'year'), C('year', 'y'), F('year', 1), ue('Y', se), ue('YY', B, z), ue('YYYY', ee, q), ue('YYYYY', te, J), ue('YYYYYY', te, J), ce(['YYYYY', 'YYYYYY'], me), ce('YYYY', function(e, t) { 288 t[me] = 2 === e.length ? c.parseTwoDigitYear(e) : D(e); 289 }), ce('YY', function(e, t) { 290 t[me] = c.parseTwoDigitYear(e); 291 }), ce('Y', function(e, t) { 292 t[me] = parseInt(e, 10); 293 }), c.parseTwoDigitYear = function(e) { 294 return D(e) + (68 < D(e) ? 1900 : 2e3); 295 }; 296 var Ye, Oe = Te('FullYear', !0); 297 298 function Te(t, n) { 299 return function(e) { 300 return null != e ? (xe(this, t, e), c.updateOffset(this, n), this) : be(this, t); 301 }; 302 } 303 304 function be(e, t) { 305 return e.isValid() ? e._d['get' + (e._isUTC ? 'UTC' : '') + t]() : NaN; 306 } 307 308 function xe(e, t, n) { 309 e.isValid() && !isNaN(n) && ('FullYear' === t && De(e.year()) && 1 === e.month() && 29 === e.date() ? e._d['set' + (e._isUTC ? 'UTC' : '') + t](n, e.month(), Pe(n, e.month())) : e._d['set' + (e._isUTC ? 'UTC' : '') + t](n)); 310 } 311 312 function Pe(e, t) { 313 if (isNaN(e) || isNaN(t)) return NaN; 314 var n, s = (t % (n = 12) + n) % n; 315 return e += (t - s) / 12, 1 === s ? De(e) ? 29 : 28 : 31 - s % 7 % 2; 316 } 317 318 Ye = Array.prototype.indexOf ? Array.prototype.indexOf : function(e) { 319 var t; 320 for (t = 0; t < this.length; ++t) if (this[t] === e) return t; 321 return -1; 322 }, I('M', ['MM', 2], 'Mo', function() { 323 return this.month() + 1; 324 }), I('MMM', 0, 0, function(e) { 325 return this.localeData().monthsShort(this, e); 326 }), I('MMMM', 0, 0, function(e) { 327 return this.localeData().months(this, e); 328 }), C('month', 'M'), F('month', 8), ue('M', B), ue('MM', B, z), ue('MMM', function(e, t) { 329 return t.monthsShortRegex(e); 330 }), ue('MMMM', function(e, t) { 331 return t.monthsRegex(e); 332 }), ce(['M', 'MM'], function(e, t) { 333 t[_e] = D(e) - 1; 334 }), ce(['MMM', 'MMMM'], function(e, t, n, s) { 335 var i = n._locale.monthsParse(e, s, n._strict); 336 null != i ? t[_e] = i : g(n).invalidMonth = e; 337 }); 338 var We = /D[oD]?(\[[^\[\]]*\]|\s)+MMMM?/, 339 Ce = 'January_February_March_April_May_June_July_August_September_October_November_December'.split('_'); 340 var He = 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'); 341 342 function Re(e, t) { 343 var n; 344 if (!e.isValid()) return e; 345 if ('string' == typeof t) if (/^\d+$/.test(t)) t = D(t); else if (!h(t = e.localeData().monthsParse(t))) return e; 346 return n = Math.min(e.date(), Pe(e.year(), t)), e._d['set' + (e._isUTC ? 'UTC' : '') + 'Month'](t, n), e; 347 } 348 349 function Ue(e) { 350 return null != e ? (Re(this, e), c.updateOffset(this, !0), this) : be(this, 'Month'); 351 } 352 353 var Fe = ae; 354 var Le = ae; 355 356 function Ne() { 357 function e(e, t) { 358 return t.length - e.length; 359 } 360 361 var t, n, s = [], i = [], r = []; 362 for (t = 0; t < 12; t++) n = y([2e3, t]), s.push(this.monthsShort(n, '')), i.push(this.months(n, '')), r.push(this.months(n, '')), r.push(this.monthsShort(n, '')); 363 for (s.sort(e), i.sort(e), r.sort(e), t = 0; t < 12; t++) s[t] = he(s[t]), i[t] = he(i[t]); 364 for (t = 0; t < 24; t++) r[t] = he(r[t]); 365 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'); 366 } 367 368 function Ge(e) { 369 var t; 370 if (e < 100 && 0 <= e) { 371 var n = Array.prototype.slice.call(arguments); 372 n[0] = e + 400, t = new Date(Date.UTC.apply(null, n)), isFinite(t.getUTCFullYear()) && t.setUTCFullYear(e); 373 } else t = new Date(Date.UTC.apply(null, arguments)); 374 return t; 375 } 376 377 function Ve(e, t, n) { 378 var s = 7 + t - n; 379 return -((7 + Ge(e, 0, s).getUTCDay() - t) % 7) + s - 1; 380 } 381 382 function Ee(e, t, n, s, i) { 383 var r, a, o = 1 + 7 * (t - 1) + (7 + n - s) % 7 + Ve(e, s, i); 384 return a = o <= 0 ? Se(r = e - 1) + o : o > Se(e) ? (r = e + 1, o - Se(e)) : (r = e, o), { year: r, dayOfYear: a }; 385 } 386 387 function Ie(e, t, n) { 388 var s, i, r = Ve(e.year(), t, n), a = Math.floor((e.dayOfYear() - r - 1) / 7) + 1; 389 return a < 1 ? s = a + Ae(i = e.year() - 1, t, n) : a > Ae(e.year(), t, n) ? (s = a - Ae(e.year(), t, n), i = e.year() + 1) : (i = e.year(), s = a), { 390 week: s, 391 year: i 392 }; 393 } 394 395 function Ae(e, t, n) { 396 var s = Ve(e, t, n), i = Ve(e + 1, t, n); 397 return (Se(e) - s + i) / 7; 398 } 399 400 I('w', ['ww', 2], 'wo', 'week'), I('W', ['WW', 2], 'Wo', 'isoWeek'), C('week', 'w'), C('isoWeek', 'W'), F('week', 5), F('isoWeek', 5), ue('w', B), ue('ww', B, z), ue('W', B), ue('WW', B, z), fe(['w', 'ww', 'W', 'WW'], function(e, t, n, s) { 401 t[s.substr(0, 1)] = D(e); 402 }); 403 404 function je(e, t) { 405 return e.slice(t, 7).concat(e.slice(0, t)); 406 } 407 408 I('d', 0, 'do', 'day'), I('dd', 0, 0, function(e) { 409 return this.localeData().weekdaysMin(this, e); 410 }), I('ddd', 0, 0, function(e) { 411 return this.localeData().weekdaysShort(this, e); 412 }), I('dddd', 0, 0, function(e) { 413 return this.localeData().weekdays(this, e); 414 }), I('e', 0, 0, 'weekday'), I('E', 0, 0, 'isoWeekday'), C('day', 'd'), C('weekday', 'e'), C('isoWeekday', 'E'), F('day', 11), F('weekday', 11), F('isoWeekday', 11), ue('d', B), ue('e', B), ue('E', B), ue('dd', function(e, t) { 415 return t.weekdaysMinRegex(e); 416 }), ue('ddd', function(e, t) { 417 return t.weekdaysShortRegex(e); 418 }), ue('dddd', function(e, t) { 419 return t.weekdaysRegex(e); 420 }), fe(['dd', 'ddd', 'dddd'], function(e, t, n, s) { 421 var i = n._locale.weekdaysParse(e, s, n._strict); 422 null != i ? t.d = i : g(n).invalidWeekday = e; 423 }), fe(['d', 'e', 'E'], function(e, t, n, s) { 424 t[s] = D(e); 425 }); 426 var Ze = 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split('_'); 427 var ze = 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'); 428 var $e = 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'); 429 var qe = ae; 430 var Je = ae; 431 var Be = ae; 432 433 function Qe() { 434 function e(e, t) { 435 return t.length - e.length; 436 } 437 438 var t, n, s, i, r, a = [], o = [], u = [], l = []; 439 for (t = 0; t < 7; t++) n = y([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); 440 for (a.sort(e), o.sort(e), u.sort(e), l.sort(e), t = 0; t < 7; t++) o[t] = he(o[t]), u[t] = he(u[t]), l[t] = he(l[t]); 441 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'); 442 } 443 444 function Xe() { 445 return this.hours() % 12 || 12; 446 } 447 448 function Ke(e, t) { 449 I(e, 0, 0, function() { 450 return this.localeData().meridiem(this.hours(), this.minutes(), t); 451 }); 452 } 453 454 function et(e, t) { 455 return t._meridiemParse; 456 } 457 458 I('H', ['HH', 2], 0, 'hour'), I('h', ['hh', 2], 0, Xe), I('k', ['kk', 2], 0, function() { 459 return this.hours() || 24; 460 }), I('hmm', 0, 0, function() { 461 return '' + Xe.apply(this) + L(this.minutes(), 2); 462 }), I('hmmss', 0, 0, function() { 463 return '' + Xe.apply(this) + L(this.minutes(), 2) + L(this.seconds(), 2); 464 }), I('Hmm', 0, 0, function() { 465 return '' + this.hours() + L(this.minutes(), 2); 466 }), I('Hmmss', 0, 0, function() { 467 return '' + this.hours() + L(this.minutes(), 2) + L(this.seconds(), 2); 468 }), Ke('a', !0), Ke('A', !1), C('hour', 'h'), F('hour', 13), ue('a', et), ue('A', et), ue('H', B), ue('h', B), ue('k', B), ue('HH', B, z), ue('hh', B, z), ue('kk', B, z), ue('hmm', Q), ue('hmmss', X), ue('Hmm', Q), ue('Hmmss', X), ce(['H', 'HH'], ge), ce(['k', 'kk'], function(e, t, n) { 469 var s = D(e); 470 t[ge] = 24 === s ? 0 : s; 471 }), ce(['a', 'A'], function(e, t, n) { 472 n._isPm = n._locale.isPM(e), n._meridiem = e; 473 }), ce(['h', 'hh'], function(e, t, n) { 474 t[ge] = D(e), g(n).bigHour = !0; 475 }), ce('hmm', function(e, t, n) { 476 var s = e.length - 2; 477 t[ge] = D(e.substr(0, s)), t[ve] = D(e.substr(s)), g(n).bigHour = !0; 478 }), ce('hmmss', function(e, t, n) { 479 var s = e.length - 4, i = e.length - 2; 480 t[ge] = D(e.substr(0, s)), t[ve] = D(e.substr(s, 2)), t[pe] = D(e.substr(i)), g(n).bigHour = !0; 481 }), ce('Hmm', function(e, t, n) { 482 var s = e.length - 2; 483 t[ge] = D(e.substr(0, s)), t[ve] = D(e.substr(s)); 484 }), ce('Hmmss', function(e, t, n) { 485 var s = e.length - 4, i = e.length - 2; 486 t[ge] = D(e.substr(0, s)), t[ve] = D(e.substr(s, 2)), t[pe] = D(e.substr(i)); 487 }); 488 var tt, nt = Te('Hours', !0), st = { 489 calendar: { 490 sameDay: '[Today at] LT', 491 nextDay: '[Tomorrow at] LT', 492 nextWeek: 'dddd [at] LT', 493 lastDay: '[Yesterday at] LT', 494 lastWeek: '[Last] dddd [at] LT', 495 sameElse: 'L' 496 }, 497 longDateFormat: { 498 LTS: 'h:mm:ss A', 499 LT: 'h:mm A', 500 L: 'MM/DD/YYYY', 501 LL: 'MMMM D, YYYY', 502 LLL: 'MMMM D, YYYY h:mm A', 503 LLLL: 'dddd, MMMM D, YYYY h:mm A' 504 }, 505 invalidDate: 'Invalid date', 506 ordinal: '%d', 507 dayOfMonthOrdinalParse: /\d{1,2}/, 508 relativeTime: { 509 future: 'in %s', 510 past: '%s ago', 511 s: 'a few seconds', 512 ss: '%d seconds', 513 m: 'a minute', 514 mm: '%d minutes', 515 h: 'an hour', 516 hh: '%d hours', 517 d: 'a day', 518 dd: '%d days', 519 M: 'a month', 520 MM: '%d months', 521 y: 'a year', 522 yy: '%d years' 523 }, 524 months: Ce, 525 monthsShort: He, 526 week: { dow: 0, doy: 6 }, 527 weekdays: Ze, 528 weekdaysMin: $e, 529 weekdaysShort: ze, 530 meridiemParse: /[ap]\.?m?\.?/i 531 }, it = {}, rt = {}; 532 533 function at(e) { 534 return e ? e.toLowerCase().replace('_', '-') : e; 535 } 536 537 function ot(e) { 538 var t = null; 539 if (!it[e] && 'undefined' != typeof module && module && module.exports) try { 540 t = tt._abbr, require('./locale/' + e), ut(t); 541 } catch (e) { 542 } 543 return it[e]; 544 } 545 546 function ut(e, t) { 547 var n; 548 return e && ((n = l(t) ? ht(e) : lt(e, t)) ? tt = n : 'undefined' != typeof console && console.warn && console.warn('Locale ' + e + ' not found. Did you forget to load it?')), tt._abbr; 549 } 550 551 function lt(e, t) { 552 if (null === t) return delete it[e], null; 553 var n, s = st; 554 if (t.abbr = e, null != it[e]) T('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 = it[e]._config; else if (null != t.parentLocale) if (null != it[t.parentLocale]) s = it[t.parentLocale]._config; else { 555 if (null == (n = ot(t.parentLocale))) return rt[t.parentLocale] || (rt[t.parentLocale] = []), rt[t.parentLocale].push({ 556 name: e, 557 config: t 558 }), null; 559 s = n._config; 560 } 561 return it[e] = new P(x(s, t)), rt[e] && rt[e].forEach(function(e) { 562 lt(e.name, e.config); 563 }), ut(e), it[e]; 564 } 565 566 function ht(e) { 567 var t; 568 if (e && e._locale && e._locale._abbr && (e = e._locale._abbr), !e) return tt; 569 if (!o(e)) { 570 if (t = ot(e)) return t; 571 e = [e]; 572 } 573 return function(e) { 574 for (var t, n, s, i, r = 0; r < e.length;) { 575 for (t = (i = at(e[r]).split('-')).length, n = (n = at(e[r + 1])) ? n.split('-') : null; 0 < t;) { 576 if (s = ot(i.slice(0, t).join('-'))) return s; 577 if (n && n.length >= t && a(i, n, !0) >= t - 1) break; 578 t--; 579 } 580 r++; 581 } 582 return tt; 583 }(e); 584 } 585 586 function dt(e) { 587 var t, n = e._a; 588 return n && -2 === g(e).overflow && (t = n[_e] < 0 || 11 < n[_e] ? _e : n[ye] < 1 || n[ye] > Pe(n[me], n[_e]) ? ye : n[ge] < 0 || 24 < n[ge] || 24 === n[ge] && (0 !== n[ve] || 0 !== n[pe] || 0 !== n[we]) ? ge : n[ve] < 0 || 59 < n[ve] ? ve : n[pe] < 0 || 59 < n[pe] ? pe : n[we] < 0 || 999 < n[we] ? we : -1, g(e)._overflowDayOfYear && (t < me || ye < t) && (t = ye), g(e)._overflowWeeks && -1 === t && (t = Me), g(e)._overflowWeekday && -1 === t && (t = ke), g(e).overflow = t), e; 589 } 590 591 function ct(e, t, n) { 592 return null != e ? e : null != t ? t : n; 593 } 594 595 function ft(e) { 596 var t, n, s, i, r, a = []; 597 if (!e._d) { 598 var o, u; 599 for (o = e, u = new Date(c.now()), s = o._useUTC ? [u.getUTCFullYear(), u.getUTCMonth(), u.getUTCDate()] : [u.getFullYear(), u.getMonth(), u.getDate()], e._w && null == e._a[ye] && null == e._a[_e] && function(e) { 600 var t, n, s, i, r, a, o, u; 601 if (null != (t = e._w).GG || null != t.W || null != t.E) r = 1, a = 4, n = ct(t.GG, e._a[me], Ie(bt(), 1, 4).year), s = ct(t.W, 1), ((i = ct(t.E, 1)) < 1 || 7 < i) && (u = !0); else { 602 r = e._locale._week.dow, a = e._locale._week.doy; 603 var l = Ie(bt(), r, a); 604 n = ct(t.gg, e._a[me], l.year), s = ct(t.w, l.week), null != t.d ? ((i = t.d) < 0 || 6 < i) && (u = !0) : null != t.e ? (i = t.e + r, (t.e < 0 || 6 < t.e) && (u = !0)) : i = r; 605 } 606 s < 1 || s > Ae(n, r, a) ? g(e)._overflowWeeks = !0 : null != u ? g(e)._overflowWeekday = !0 : (o = Ee(n, s, i, r, a), e._a[me] = o.year, e._dayOfYear = o.dayOfYear); 607 }(e), null != e._dayOfYear && (r = ct(e._a[me], s[me]), (e._dayOfYear > Se(r) || 0 === e._dayOfYear) && (g(e)._overflowDayOfYear = !0), n = Ge(r, 0, e._dayOfYear), e._a[_e] = n.getUTCMonth(), e._a[ye] = n.getUTCDate()), t = 0; t < 3 && null == e._a[t]; ++t) e._a[t] = a[t] = s[t]; 608 for (; t < 7; t++) e._a[t] = a[t] = null == e._a[t] ? 2 === t ? 1 : 0 : e._a[t]; 609 24 === e._a[ge] && 0 === e._a[ve] && 0 === e._a[pe] && 0 === e._a[we] && (e._nextDay = !0, e._a[ge] = 0), e._d = (e._useUTC ? Ge : function(e, t, n, s, i, r, a) { 610 var o; 611 return e < 100 && 0 <= e ? (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; 612 }).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[ge] = 24), e._w && void 0 !== e._w.d && e._w.d !== i && (g(e).weekdayMismatch = !0); 613 } 614 } 615 616 var mt = /^\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)?)?$/, 617 _t = /^\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)?)?$/, 618 yt = /Z|[+-]\d\d(?::?\d\d)?/, 619 gt = [['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}/]], 620 vt = [['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/]], 621 pt = /^\/?Date\((\-?\d+)/i; 622 623 function wt(e) { 624 var t, n, s, i, r, a, o = e._i, u = mt.exec(o) || _t.exec(o); 625 if (u) { 626 for (g(e).iso = !0, t = 0, n = gt.length; t < n; t++) if (gt[t][1].exec(u[1])) { 627 i = gt[t][0], s = !1 !== gt[t][2]; 628 break; 629 } 630 if (null == i) return void (e._isValid = !1); 631 if (u[3]) { 632 for (t = 0, n = vt.length; t < n; t++) if (vt[t][1].exec(u[3])) { 633 r = (u[2] || ' ') + vt[t][0]; 634 break; 635 } 636 if (null == r) return void (e._isValid = !1); 637 } 638 if (!s && null != r) return void (e._isValid = !1); 639 if (u[4]) { 640 if (!yt.exec(u[4])) return void (e._isValid = !1); 641 a = 'Z'; 642 } 643 e._f = i + (r || '') + (a || ''), Yt(e); 644 } else e._isValid = !1; 645 } 646 647 var Mt = /^(?:(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}))$/; 648 649 function kt(e, t, n, s, i, r) { 650 var a = [function(e) { 651 var t = parseInt(e, 10); 652 { 653 if (t <= 49) return 2e3 + t; 654 if (t <= 999) return 1900 + t; 655 } 656 return t; 657 }(e), He.indexOf(t), parseInt(n, 10), parseInt(s, 10), parseInt(i, 10)]; 658 return r && a.push(parseInt(r, 10)), a; 659 } 660 661 var St = { UT: 0, GMT: 0, EDT: -240, EST: -300, CDT: -300, CST: -360, MDT: -360, MST: -420, PDT: -420, PST: -480 }; 662 663 function Dt(e) { 664 var t, n, s, 665 i = Mt.exec(e._i.replace(/\([^)]*\)|[\n\t]/g, ' ').replace(/(\s\s+)/g, ' ').replace(/^\s\s*/, '').replace(/\s\s*$/, '')); 666 if (i) { 667 var r = kt(i[4], i[3], i[2], i[5], i[6], i[7]); 668 if (t = i[1], n = r, s = e, t && ze.indexOf(t) !== new Date(n[0], n[1], n[2]).getDay() && (g(s).weekdayMismatch = !0, !(s._isValid = !1))) return; 669 e._a = r, e._tzm = function(e, t, n) { 670 if (e) return St[e]; 671 if (t) return 0; 672 var s = parseInt(n, 10), i = s % 100; 673 return (s - i) / 100 * 60 + i; 674 }(i[8], i[9], i[10]), e._d = Ge.apply(null, e._a), e._d.setUTCMinutes(e._d.getUTCMinutes() - e._tzm), g(e).rfc2822 = !0; 675 } else e._isValid = !1; 676 } 677 678 function Yt(e) { 679 if (e._f !== c.ISO_8601) if (e._f !== c.RFC_2822) { 680 e._a = [], g(e).empty = !0; 681 var t, n, s, i, r, a, o, u, l = '' + e._i, h = l.length, d = 0; 682 for (s = j(e._f, e._locale).match(N) || [], t = 0; t < s.length; t++) i = s[t], (n = (l.match(le(i, e)) || [])[0]) && (0 < (r = l.substr(0, l.indexOf(n))).length && g(e).unusedInput.push(r), l = l.slice(l.indexOf(n) + n.length), d += n.length), E[i] ? (n ? g(e).empty = !1 : g(e).unusedTokens.push(i), a = i, u = e, null != (o = n) && m(de, a) && de[a](o, u._a, u, a)) : e._strict && !n && g(e).unusedTokens.push(i); 683 g(e).charsLeftOver = h - d, 0 < l.length && g(e).unusedInput.push(l), e._a[ge] <= 12 && !0 === g(e).bigHour && 0 < e._a[ge] && (g(e).bigHour = void 0), g(e).parsedDateParts = e._a.slice(0), g(e).meridiem = e._meridiem, e._a[ge] = function(e, t, n) { 684 var s; 685 if (null == n) return t; 686 return null != e.meridiemHour ? e.meridiemHour(t, n) : (null != e.isPM && ((s = e.isPM(n)) && t < 12 && (t += 12), s || 12 !== t || (t = 0)), t); 687 }(e._locale, e._a[ge], e._meridiem), ft(e), dt(e); 688 } else Dt(e); else wt(e); 689 } 690 691 function Ot(e) { 692 var t, n, s, i, r = e._i, a = e._f; 693 return e._locale = e._locale || ht(e._l), null === r || void 0 === a && '' === r ? p({ nullInput: !0 }) : ('string' == typeof r && (e._i = r = e._locale.preparse(r)), k(r) ? new M(dt(r)) : (d(r) ? e._d = r : o(a) ? function(e) { 694 var t, n, s, i, r; 695 if (0 === e._f.length) return g(e).invalidFormat = !0, e._d = new Date(NaN); 696 for (i = 0; i < e._f.length; i++) r = 0, t = w({}, e), null != e._useUTC && (t._useUTC = e._useUTC), t._f = e._f[i], Yt(t), v(t) && (r += g(t).charsLeftOver, r += 10 * g(t).unusedTokens.length, g(t).score = r, (null == s || r < s) && (s = r, n = t)); 697 _(e, n || t); 698 }(e) : a ? Yt(e) : l(n = (t = e)._i) ? t._d = new Date(c.now()) : d(n) ? t._d = new Date(n.valueOf()) : 'string' == typeof n ? (s = t, null === (i = pt.exec(s._i)) ? (wt(s), !1 === s._isValid && (delete s._isValid, Dt(s), !1 === s._isValid && (delete s._isValid, c.createFromInputFallback(s)))) : s._d = new Date(+i[1])) : o(n) ? (t._a = f(n.slice(0), function(e) { 699 return parseInt(e, 10); 700 }), ft(t)) : u(n) ? function(e) { 701 if (!e._d) { 702 var t = R(e._i); 703 e._a = f([t.year, t.month, t.day || t.date, t.hour, t.minute, t.second, t.millisecond], function(e) { 704 return e && parseInt(e, 10); 705 }), ft(e); 706 } 707 }(t) : h(n) ? t._d = new Date(n) : c.createFromInputFallback(t), v(e) || (e._d = null), e)); 708 } 709 710 function Tt(e, t, n, s, i) { 711 var r, a = {}; 712 return !0 !== n && !1 !== n || (s = n, n = void 0), (u(e) && function(e) { 713 if (Object.getOwnPropertyNames) return 0 === Object.getOwnPropertyNames(e).length; 714 var t; 715 for (t in e) if (e.hasOwnProperty(t)) return !1; 716 return !0; 717 }(e) || o(e) && 0 === e.length) && (e = void 0), a._isAMomentObject = !0, a._useUTC = a._isUTC = i, a._l = n, a._i = e, a._f = t, a._strict = s, (r = new M(dt(Ot(a))))._nextDay && (r.add(1, 'd'), r._nextDay = void 0), r; 718 } 719 720 function bt(e, t, n, s) { 721 return Tt(e, t, n, s, !1); 722 } 723 724 c.createFromInputFallback = n('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) { 725 e._d = new Date(e._i + (e._useUTC ? ' UTC' : '')); 726 }), c.ISO_8601 = function() { 727 }, c.RFC_2822 = function() { 728 }; 729 var xt = n('moment().min is deprecated, use moment.max instead. http://momentjs.com/guides/#/warnings/min-max/', function() { 730 var e = bt.apply(null, arguments); 731 return this.isValid() && e.isValid() ? e < this ? this : e : p(); 732 }), 733 Pt = n('moment().max is deprecated, use moment.min instead. http://momentjs.com/guides/#/warnings/min-max/', function() { 734 var e = bt.apply(null, arguments); 735 return this.isValid() && e.isValid() ? this < e ? this : e : p(); 736 }); 737 738 function Wt(e, t) { 739 var n, s; 740 if (1 === t.length && o(t[0]) && (t = t[0]), !t.length) return bt(); 741 for (n = t[0], s = 1; s < t.length; ++s) t[s].isValid() && !t[s][e](n) || (n = t[s]); 742 return n; 743 } 744 745 var Ct = ['year', 'quarter', 'month', 'week', 'day', 'hour', 'minute', 'second', 'millisecond']; 746 747 function Ht(e) { 748 var t = R(e), n = t.year || 0, s = t.quarter || 0, i = t.month || 0, r = t.week || t.isoWeek || 0, a = t.day || 0, 749 o = t.hour || 0, u = t.minute || 0, l = t.second || 0, h = t.millisecond || 0; 750 this._isValid = function(e) { 751 for (var t in e) if (-1 === Ye.call(Ct, t) || null != e[t] && isNaN(e[t])) return !1; 752 for (var n = !1, s = 0; s < Ct.length; ++s) if (e[Ct[s]]) { 753 if (n) return !1; 754 parseFloat(e[Ct[s]]) !== D(e[Ct[s]]) && (n = !0); 755 } 756 return !0; 757 }(t), this._milliseconds = +h + 1e3 * l + 6e4 * u + 1e3 * o * 60 * 60, this._days = +a + 7 * r, this._months = +i + 3 * s + 12 * n, this._data = {}, this._locale = ht(), this._bubble(); 758 } 759 760 function Rt(e) { 761 return e instanceof Ht; 762 } 763 764 function Ut(e) { 765 return e < 0 ? -1 * Math.round(-1 * e) : Math.round(e); 766 } 767 768 function Ft(e, n) { 769 I(e, 0, 0, function() { 770 var e = this.utcOffset(), t = '+'; 771 return e < 0 && (e = -e, t = '-'), t + L(~~(e / 60), 2) + n + L(~~e % 60, 2); 772 }); 773 } 774 775 Ft('Z', ':'), Ft('ZZ', ''), ue('Z', re), ue('ZZ', re), ce(['Z', 'ZZ'], function(e, t, n) { 776 n._useUTC = !0, n._tzm = Nt(re, e); 777 }); 778 var Lt = /([\+\-]|\d\d)/gi; 779 780 function Nt(e, t) { 781 var n = (t || '').match(e); 782 if (null === n) return null; 783 var s = ((n[n.length - 1] || []) + '').match(Lt) || ['-', 0, 0], i = 60 * s[1] + D(s[2]); 784 return 0 === i ? 0 : '+' === s[0] ? i : -i; 785 } 786 787 function Gt(e, t) { 788 var n, s; 789 return t._isUTC ? (n = t.clone(), s = (k(e) || d(e) ? e.valueOf() : bt(e).valueOf()) - n.valueOf(), n._d.setTime(n._d.valueOf() + s), c.updateOffset(n, !1), n) : bt(e).local(); 790 } 791 792 function Vt(e) { 793 return 15 * -Math.round(e._d.getTimezoneOffset() / 15); 794 } 795 796 function Et() { 797 return !!this.isValid() && (this._isUTC && 0 === this._offset); 798 } 799 800 c.updateOffset = function() { 801 }; 802 var It = /^(\-|\+)?(?:(\d*)[. ])?(\d+)\:(\d+)(?:\:(\d+)(\.\d*)?)?$/, 803 At = /^(-|\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/; 804 805 function jt(e, t) { 806 var n, s, i, r = e, a = null; 807 return Rt(e) ? r = { 808 ms: e._milliseconds, 809 d: e._days, 810 M: e._months 811 } : h(e) ? (r = {}, t ? r[t] = e : r.milliseconds = e) : (a = It.exec(e)) ? (n = '-' === a[1] ? -1 : 1, r = { 812 y: 0, 813 d: D(a[ye]) * n, 814 h: D(a[ge]) * n, 815 m: D(a[ve]) * n, 816 s: D(a[pe]) * n, 817 ms: D(Ut(1e3 * a[we])) * n 818 }) : (a = At.exec(e)) ? (n = '-' === a[1] ? -1 : 1, r = { 819 y: Zt(a[2], n), 820 M: Zt(a[3], n), 821 w: Zt(a[4], n), 822 d: Zt(a[5], n), 823 h: Zt(a[6], n), 824 m: Zt(a[7], n), 825 s: Zt(a[8], n) 826 }) : null == r ? r = {} : 'object' == typeof r && ('from' in r || 'to' in r) && (i = function(e, t) { 827 var n; 828 if (!e.isValid() || !t.isValid()) return { milliseconds: 0, months: 0 }; 829 t = Gt(t, e), e.isBefore(t) ? n = zt(e, t) : ((n = zt(t, e)).milliseconds = -n.milliseconds, n.months = -n.months); 830 return n; 831 }(bt(r.from), bt(r.to)), (r = {}).ms = i.milliseconds, r.M = i.months), s = new Ht(r), Rt(e) && m(e, '_locale') && (s._locale = e._locale), s; 832 } 833 834 function Zt(e, t) { 835 var n = e && parseFloat(e.replace(',', '.')); 836 return (isNaN(n) ? 0 : n) * t; 837 } 838 839 function zt(e, t) { 840 var n = {}; 841 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; 842 } 843 844 function $t(s, i) { 845 return function(e, t) { 846 var n; 847 return null === t || isNaN(+t) || (T(i, 'moment().' + i + '(period, number) is deprecated. Please use moment().' + i + '(number, period). See http://momentjs.com/guides/#/warnings/add-inverted-param/ for more info.'), n = e, e = t, t = n), qt(this, jt(e = 'string' == typeof e ? +e : e, t), s), this; 848 }; 849 } 850 851 function qt(e, t, n, s) { 852 var i = t._milliseconds, r = Ut(t._days), a = Ut(t._months); 853 e.isValid() && (s = null == s || s, a && Re(e, be(e, 'Month') + a * n), r && xe(e, 'Date', be(e, 'Date') + r * n), i && e._d.setTime(e._d.valueOf() + i * n), s && c.updateOffset(e, r || a)); 854 } 855 856 jt.fn = Ht.prototype, jt.invalid = function() { 857 return jt(NaN); 858 }; 859 var Jt = $t(1, 'add'), Bt = $t(-1, 'subtract'); 860 861 function Qt(e, t) { 862 var n = 12 * (t.year() - e.year()) + (t.month() - e.month()), s = e.clone().add(n, 'months'); 863 return -(n + (t - s < 0 ? (t - s) / (s - e.clone().add(n - 1, 'months')) : (t - s) / (e.clone().add(n + 1, 'months') - s))) || 0; 864 } 865 866 function Xt(e) { 867 var t; 868 return void 0 === e ? this._locale._abbr : (null != (t = ht(e)) && (this._locale = t), this); 869 } 870 871 c.defaultFormat = 'YYYY-MM-DDTHH:mm:ssZ', c.defaultFormatUtc = 'YYYY-MM-DDTHH:mm:ss[Z]'; 872 var Kt = n('moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.', function(e) { 873 return void 0 === e ? this.localeData() : this.locale(e); 874 }); 875 876 function en() { 877 return this._locale; 878 } 879 880 var tn = 126227808e5; 881 882 function nn(e, t) { 883 return (e % t + t) % t; 884 } 885 886 function sn(e, t, n) { 887 return e < 100 && 0 <= e ? new Date(e + 400, t, n) - tn : new Date(e, t, n).valueOf(); 888 } 889 890 function rn(e, t, n) { 891 return e < 100 && 0 <= e ? Date.UTC(e + 400, t, n) - tn : Date.UTC(e, t, n); 892 } 893 894 function an(e, t) { 895 I(0, [e, e.length], 0, t); 896 } 897 898 function on(e, t, n, s, i) { 899 var r; 900 return null == e ? Ie(this, s, i).year : ((r = Ae(e, s, i)) < t && (t = r), function(e, t, n, s, i) { 901 var r = Ee(e, t, n, s, i), a = Ge(r.year, 0, r.dayOfYear); 902 return this.year(a.getUTCFullYear()), this.month(a.getUTCMonth()), this.date(a.getUTCDate()), this; 903 }.call(this, e, t, n, s, i)); 904 } 905 906 I(0, ['gg', 2], 0, function() { 907 return this.weekYear() % 100; 908 }), I(0, ['GG', 2], 0, function() { 909 return this.isoWeekYear() % 100; 910 }), an('gggg', 'weekYear'), an('ggggg', 'weekYear'), an('GGGG', 'isoWeekYear'), an('GGGGG', 'isoWeekYear'), C('weekYear', 'gg'), C('isoWeekYear', 'GG'), F('weekYear', 1), F('isoWeekYear', 1), ue('G', se), ue('g', se), ue('GG', B, z), ue('gg', B, z), ue('GGGG', ee, q), ue('gggg', ee, q), ue('GGGGG', te, J), ue('ggggg', te, J), fe(['gggg', 'ggggg', 'GGGG', 'GGGGG'], function(e, t, n, s) { 911 t[s.substr(0, 2)] = D(e); 912 }), fe(['gg', 'GG'], function(e, t, n, s) { 913 t[s] = c.parseTwoDigitYear(e); 914 }), I('Q', 0, 'Qo', 'quarter'), C('quarter', 'Q'), F('quarter', 7), ue('Q', Z), ce('Q', function(e, t) { 915 t[_e] = 3 * (D(e) - 1); 916 }), I('D', ['DD', 2], 'Do', 'date'), C('date', 'D'), F('date', 9), ue('D', B), ue('DD', B, z), ue('Do', function(e, t) { 917 return e ? t._dayOfMonthOrdinalParse || t._ordinalParse : t._dayOfMonthOrdinalParseLenient; 918 }), ce(['D', 'DD'], ye), ce('Do', function(e, t) { 919 t[ye] = D(e.match(B)[0]); 920 }); 921 var un = Te('Date', !0); 922 I('DDD', ['DDDD', 3], 'DDDo', 'dayOfYear'), C('dayOfYear', 'DDD'), F('dayOfYear', 4), ue('DDD', K), ue('DDDD', $), ce(['DDD', 'DDDD'], function(e, t, n) { 923 n._dayOfYear = D(e); 924 }), I('m', ['mm', 2], 0, 'minute'), C('minute', 'm'), F('minute', 14), ue('m', B), ue('mm', B, z), ce(['m', 'mm'], ve); 925 var ln = Te('Minutes', !1); 926 I('s', ['ss', 2], 0, 'second'), C('second', 's'), F('second', 15), ue('s', B), ue('ss', B, z), ce(['s', 'ss'], pe); 927 var hn, dn = Te('Seconds', !1); 928 for (I('S', 0, 0, function() { 929 return ~~(this.millisecond() / 100); 930 }), I(0, ['SS', 2], 0, function() { 931 return ~~(this.millisecond() / 10); 932 }), I(0, ['SSS', 3], 0, 'millisecond'), I(0, ['SSSS', 4], 0, function() { 933 return 10 * this.millisecond(); 934 }), I(0, ['SSSSS', 5], 0, function() { 935 return 100 * this.millisecond(); 936 }), I(0, ['SSSSSS', 6], 0, function() { 937 return 1e3 * this.millisecond(); 938 }), I(0, ['SSSSSSS', 7], 0, function() { 939 return 1e4 * this.millisecond(); 940 }), I(0, ['SSSSSSSS', 8], 0, function() { 941 return 1e5 * this.millisecond(); 942 }), I(0, ['SSSSSSSSS', 9], 0, function() { 943 return 1e6 * this.millisecond(); 944 }), C('millisecond', 'ms'), F('millisecond', 16), ue('S', K, Z), ue('SS', K, z), ue('SSS', K, $), hn = 'SSSS'; hn.length <= 9; hn += 'S') ue(hn, ne); 945 946 function cn(e, t) { 947 t[we] = D(1e3 * ('0.' + e)); 948 } 949 950 for (hn = 'S'; hn.length <= 9; hn += 'S') ce(hn, cn); 951 var fn = Te('Milliseconds', !1); 952 I('z', 0, 0, 'zoneAbbr'), I('zz', 0, 0, 'zoneName'); 953 var mn = M.prototype; 954 955 function _n(e) { 956 return e; 957 } 958 959 mn.add = Jt, mn.calendar = function(e, t) { 960 var n = e || bt(), s = Gt(n, this).startOf('day'), i = c.calendarFormat(this, s) || 'sameElse', 961 r = t && (b(t[i]) ? t[i].call(this, n) : t[i]); 962 return this.format(r || this.localeData().calendar(i, this, bt(n))); 963 }, mn.clone = function() { 964 return new M(this); 965 }, mn.diff = function(e, t, n) { 966 var s, i, r; 967 if (!this.isValid()) return NaN; 968 if (!(s = Gt(e, this)).isValid()) return NaN; 969 switch (i = 6e4 * (s.utcOffset() - this.utcOffset()), t = H(t)) { 970 case'year': 971 r = Qt(this, s) / 12; 972 break; 973 case'month': 974 r = Qt(this, s); 975 break; 976 case'quarter': 977 r = Qt(this, s) / 3; 978 break; 979 case'second': 980 r = (this - s) / 1e3; 981 break; 982 case'minute': 983 r = (this - s) / 6e4; 984 break; 985 case'hour': 986 r = (this - s) / 36e5; 987 break; 988 case'day': 989 r = (this - s - i) / 864e5; 990 break; 991 case'week': 992 r = (this - s - i) / 6048e5; 993 break; 994 default: 995 r = this - s; 996 } 997 return n ? r : S(r); 998 }, mn.endOf = function(e) { 999 var t; 1000 if (void 0 === (e = H(e)) || 'millisecond' === e || !this.isValid()) return this; 1001 var n = this._isUTC ? rn : sn; 1002 switch (e) { 1003 case'year': 1004 t = n(this.year() + 1, 0, 1) - 1; 1005 break; 1006 case'quarter': 1007 t = n(this.year(), this.month() - this.month() % 3 + 3, 1) - 1; 1008 break; 1009 case'month': 1010 t = n(this.year(), this.month() + 1, 1) - 1; 1011 break; 1012 case'week': 1013 t = n(this.year(), this.month(), this.date() - this.weekday() + 7) - 1; 1014 break; 1015 case'isoWeek': 1016 t = n(this.year(), this.month(), this.date() - (this.isoWeekday() - 1) + 7) - 1; 1017 break; 1018 case'day': 1019 case'date': 1020 t = n(this.year(), this.month(), this.date() + 1) - 1; 1021 break; 1022 case'hour': 1023 t = this._d.valueOf(), t += 36e5 - nn(t + (this._isUTC ? 0 : 6e4 * this.utcOffset()), 36e5) - 1; 1024 break; 1025 case'minute': 1026 t = this._d.valueOf(), t += 6e4 - nn(t, 6e4) - 1; 1027 break; 1028 case'second': 1029 t = this._d.valueOf(), t += 1e3 - nn(t, 1e3) - 1; 1030 break; 1031 } 1032 return this._d.setTime(t), c.updateOffset(this, !0), this; 1033 }, mn.format = function(e) { 1034 e || (e = this.isUtc() ? c.defaultFormatUtc : c.defaultFormat); 1035 var t = A(this, e); 1036 return this.localeData().postformat(t); 1037 }, mn.from = function(e, t) { 1038 return this.isValid() && (k(e) && e.isValid() || bt(e).isValid()) ? jt({ 1039 to: this, 1040 from: e 1041 }).locale(this.locale()).humanize(!t) : this.localeData().invalidDate(); 1042 }, mn.fromNow = function(e) { 1043 return this.from(bt(), e); 1044 }, mn.to = function(e, t) { 1045 return this.isValid() && (k(e) && e.isValid() || bt(e).isValid()) ? jt({ 1046 from: this, 1047 to: e 1048 }).locale(this.locale()).humanize(!t) : this.localeData().invalidDate(); 1049 }, mn.toNow = function(e) { 1050 return this.to(bt(), e); 1051 }, mn.get = function(e) { 1052 return b(this[e = H(e)]) ? this[e]() : this; 1053 }, mn.invalidAt = function() { 1054 return g(this).overflow; 1055 }, mn.isAfter = function(e, t) { 1056 var n = k(e) ? e : bt(e); 1057 return !(!this.isValid() || !n.isValid()) && ('millisecond' === (t = H(t) || 'millisecond') ? this.valueOf() > n.valueOf() : n.valueOf() < this.clone().startOf(t).valueOf()); 1058 }, mn.isBefore = function(e, t) { 1059 var n = k(e) ? e : bt(e); 1060 return !(!this.isValid() || !n.isValid()) && ('millisecond' === (t = H(t) || 'millisecond') ? this.valueOf() < n.valueOf() : this.clone().endOf(t).valueOf() < n.valueOf()); 1061 }, mn.isBetween = function(e, t, n, s) { 1062 var i = k(e) ? e : bt(e), r = k(t) ? t : bt(t); 1063 return !!(this.isValid() && i.isValid() && r.isValid()) && ('(' === (s = s || '()')[0] ? this.isAfter(i, n) : !this.isBefore(i, n)) && (')' === s[1] ? this.isBefore(r, n) : !this.isAfter(r, n)); 1064 }, mn.isSame = function(e, t) { 1065 var n, s = k(e) ? e : bt(e); 1066 return !(!this.isValid() || !s.isValid()) && ('millisecond' === (t = H(t) || 'millisecond') ? this.valueOf() === s.valueOf() : (n = s.valueOf(), this.clone().startOf(t).valueOf() <= n && n <= this.clone().endOf(t).valueOf())); 1067 }, mn.isSameOrAfter = function(e, t) { 1068 return this.isSame(e, t) || this.isAfter(e, t); 1069 }, mn.isSameOrBefore = function(e, t) { 1070 return this.isSame(e, t) || this.isBefore(e, t); 1071 }, mn.isValid = function() { 1072 return v(this); 1073 }, mn.lang = Kt, mn.locale = Xt, mn.localeData = en, mn.max = Pt, mn.min = xt, mn.parsingFlags = function() { 1074 return _({}, g(this)); 1075 }, mn.set = function(e, t) { 1076 if ('object' == typeof e) for (var n = function(e) { 1077 var t = []; 1078 for (var n in e) t.push({ unit: n, priority: U[n] }); 1079 return t.sort(function(e, t) { 1080 return e.priority - t.priority; 1081 }), t; 1082 }(e = R(e)), s = 0; s < n.length; s++) this[n[s].unit](e[n[s].unit]); else if (b(this[e = H(e)])) return this[e](t); 1083 return this; 1084 }, mn.startOf = function(e) { 1085 var t; 1086 if (void 0 === (e = H(e)) || 'millisecond' === e || !this.isValid()) return this; 1087 var n = this._isUTC ? rn : sn; 1088 switch (e) { 1089 case'year': 1090 t = n(this.year(), 0, 1); 1091 break; 1092 case'quarter': 1093 t = n(this.year(), this.month() - this.month() % 3, 1); 1094 break; 1095 case'month': 1096 t = n(this.year(), this.month(), 1); 1097 break; 1098 case'week': 1099 t = n(this.year(), this.month(), this.date() - this.weekday()); 1100 break; 1101 case'isoWeek': 1102 t = n(this.year(), this.month(), this.date() - (this.isoWeekday() - 1)); 1103 break; 1104 case'day': 1105 case'date': 1106 t = n(this.year(), this.month(), this.date()); 1107 break; 1108 case'hour': 1109 t = this._d.valueOf(), t -= nn(t + (this._isUTC ? 0 : 6e4 * this.utcOffset()), 36e5); 1110 break; 1111 case'minute': 1112 t = this._d.valueOf(), t -= nn(t, 6e4); 1113 break; 1114 case'second': 1115 t = this._d.valueOf(), t -= nn(t, 1e3); 1116 break; 1117 } 1118 return this._d.setTime(t), c.updateOffset(this, !0), this; 1119 }, mn.subtract = Bt, mn.toArray = function() { 1120 var e = this; 1121 return [e.year(), e.month(), e.date(), e.hour(), e.minute(), e.second(), e.millisecond()]; 1122 }, mn.toObject = function() { 1123 var e = this; 1124 return { 1125 years: e.year(), 1126 months: e.month(), 1127 date: e.date(), 1128 hours: e.hours(), 1129 minutes: e.minutes(), 1130 seconds: e.seconds(), 1131 milliseconds: e.milliseconds() 1132 }; 1133 }, mn.toDate = function() { 1134 return new Date(this.valueOf()); 1135 }, mn.toISOString = function(e) { 1136 if (!this.isValid()) return null; 1137 var t = !0 !== e, n = t ? this.clone().utc() : this; 1138 return n.year() < 0 || 9999 < n.year() ? A(n, t ? 'YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]' : 'YYYYYY-MM-DD[T]HH:mm:ss.SSSZ') : b(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'); 1139 }, mn.inspect = function() { 1140 if (!this.isValid()) return 'moment.invalid(/* ' + this._i + ' */)'; 1141 var e = 'moment', t = ''; 1142 this.isLocal() || (e = 0 === this.utcOffset() ? 'moment.utc' : 'moment.parseZone', t = 'Z'); 1143 var n = '[' + e + '("]', s = 0 <= this.year() && this.year() <= 9999 ? 'YYYY' : 'YYYYYY', i = t + '[")]'; 1144 return this.format(n + s + '-MM-DD[T]HH:mm:ss.SSS' + i); 1145 }, mn.toJSON = function() { 1146 return this.isValid() ? this.toISOString() : null; 1147 }, mn.toString = function() { 1148 return this.clone().locale('en').format('ddd MMM DD YYYY HH:mm:ss [GMT]ZZ'); 1149 }, mn.unix = function() { 1150 return Math.floor(this.valueOf() / 1e3); 1151 }, mn.valueOf = function() { 1152 return this._d.valueOf() - 6e4 * (this._offset || 0); 1153 }, mn.creationData = function() { 1154 return { input: this._i, format: this._f, locale: this._locale, isUTC: this._isUTC, strict: this._strict }; 1155 }, mn.year = Oe, mn.isLeapYear = function() { 1156 return De(this.year()); 1157 }, mn.weekYear = function(e) { 1158 return on.call(this, e, this.week(), this.weekday(), this.localeData()._week.dow, this.localeData()._week.doy); 1159 }, mn.isoWeekYear = function(e) { 1160 return on.call(this, e, this.isoWeek(), this.isoWeekday(), 1, 4); 1161 }, mn.quarter = mn.quarters = function(e) { 1162 return null == e ? Math.ceil((this.month() + 1) / 3) : this.month(3 * (e - 1) + this.month() % 3); 1163 }, mn.month = Ue, mn.daysInMonth = function() { 1164 return Pe(this.year(), this.month()); 1165 }, mn.week = mn.weeks = function(e) { 1166 var t = this.localeData().week(this); 1167 return null == e ? t : this.add(7 * (e - t), 'd'); 1168 }, mn.isoWeek = mn.isoWeeks = function(e) { 1169 var t = Ie(this, 1, 4).week; 1170 return null == e ? t : this.add(7 * (e - t), 'd'); 1171 }, mn.weeksInYear = function() { 1172 var e = this.localeData()._week; 1173 return Ae(this.year(), e.dow, e.doy); 1174 }, mn.isoWeeksInYear = function() { 1175 return Ae(this.year(), 1, 4); 1176 }, mn.date = un, mn.day = mn.days = function(e) { 1177 if (!this.isValid()) return null != e ? this : NaN; 1178 var t, n, s = this._isUTC ? this._d.getUTCDay() : this._d.getDay(); 1179 return null != e ? (t = e, n = this.localeData(), e = 'string' != typeof t ? t : isNaN(t) ? 'number' == typeof (t = n.weekdaysParse(t)) ? t : null : parseInt(t, 10), this.add(e - s, 'd')) : s; 1180 }, mn.weekday = function(e) { 1181 if (!this.isValid()) return null != e ? this : NaN; 1182 var t = (this.day() + 7 - this.localeData()._week.dow) % 7; 1183 return null == e ? t : this.add(e - t, 'd'); 1184 }, mn.isoWeekday = function(e) { 1185 if (!this.isValid()) return null != e ? this : NaN; 1186 if (null == e) return this.day() || 7; 1187 var t, n, 1188 s = (t = e, n = this.localeData(), 'string' == typeof t ? n.weekdaysParse(t) % 7 || 7 : isNaN(t) ? null : t); 1189 return this.day(this.day() % 7 ? s : s - 7); 1190 }, mn.dayOfYear = function(e) { 1191 var t = Math.round((this.clone().startOf('day') - this.clone().startOf('year')) / 864e5) + 1; 1192 return null == e ? t : this.add(e - t, 'd'); 1193 }, mn.hour = mn.hours = nt, mn.minute = mn.minutes = ln, mn.second = mn.seconds = dn, mn.millisecond = mn.milliseconds = fn, mn.utcOffset = function(e, t, n) { 1194 var s, i = this._offset || 0; 1195 if (!this.isValid()) return null != e ? this : NaN; 1196 if (null == e) return this._isUTC ? i : Vt(this); 1197 if ('string' == typeof e) { 1198 if (null === (e = Nt(re, e))) return this; 1199 } else Math.abs(e) < 16 && !n && (e *= 60); 1200 return !this._isUTC && t && (s = Vt(this)), this._offset = e, this._isUTC = !0, null != s && this.add(s, 'm'), i !== e && (!t || this._changeInProgress ? qt(this, jt(e - i, 'm'), 1, !1) : this._changeInProgress || (this._changeInProgress = !0, c.updateOffset(this, !0), this._changeInProgress = null)), this; 1201 }, mn.utc = function(e) { 1202 return this.utcOffset(0, e); 1203 }, mn.local = function(e) { 1204 return this._isUTC && (this.utcOffset(0, e), this._isUTC = !1, e && this.subtract(Vt(this), 'm')), this; 1205 }, mn.parseZone = function() { 1206 if (null != this._tzm) this.utcOffset(this._tzm, !1, !0); else if ('string' == typeof this._i) { 1207 var e = Nt(ie, this._i); 1208 null != e ? this.utcOffset(e) : this.utcOffset(0, !0); 1209 } 1210 return this; 1211 }, mn.hasAlignedHourOffset = function(e) { 1212 return !!this.isValid() && (e = e ? bt(e).utcOffset() : 0, (this.utcOffset() - e) % 60 == 0); 1213 }, mn.isDST = function() { 1214 return this.utcOffset() > this.clone().month(0).utcOffset() || this.utcOffset() > this.clone().month(5).utcOffset(); 1215 }, mn.isLocal = function() { 1216 return !!this.isValid() && !this._isUTC; 1217 }, mn.isUtcOffset = function() { 1218 return !!this.isValid() && this._isUTC; 1219 }, mn.isUtc = Et, mn.isUTC = Et, mn.zoneAbbr = function() { 1220 return this._isUTC ? 'UTC' : ''; 1221 }, mn.zoneName = function() { 1222 return this._isUTC ? 'Coordinated Universal Time' : ''; 1223 }, mn.dates = n('dates accessor is deprecated. Use date instead.', un), mn.months = n('months accessor is deprecated. Use month instead', Ue), mn.years = n('years accessor is deprecated. Use year instead', Oe), mn.zone = n('moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/', function(e, t) { 1224 return null != e ? ('string' != typeof e && (e = -e), this.utcOffset(e, t), this) : -this.utcOffset(); 1225 }), mn.isDSTShifted = n('isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information', function() { 1226 if (!l(this._isDSTShifted)) return this._isDSTShifted; 1227 var e = {}; 1228 if (w(e, this), (e = Ot(e))._a) { 1229 var t = e._isUTC ? y(e._a) : bt(e._a); 1230 this._isDSTShifted = this.isValid() && 0 < a(e._a, t.toArray()); 1231 } else this._isDSTShifted = !1; 1232 return this._isDSTShifted; 1233 }); 1234 var yn = P.prototype; 1235 1236 function gn(e, t, n, s) { 1237 var i = ht(), r = y().set(s, t); 1238 return i[n](r, e); 1239 } 1240 1241 function vn(e, t, n) { 1242 if (h(e) && (t = e, e = void 0), e = e || '', null != t) return gn(e, t, n, 'month'); 1243 var s, i = []; 1244 for (s = 0; s < 12; s++) i[s] = gn(e, s, n, 'month'); 1245 return i; 1246 } 1247 1248 function pn(e, t, n, s) { 1249 t = ('boolean' == typeof e ? h(t) && (n = t, t = void 0) : (t = e, e = !1, h(n = t) && (n = t, t = void 0)), t || ''); 1250 var i, r = ht(), a = e ? r._week.dow : 0; 1251 if (null != n) return gn(t, (n + a) % 7, s, 'day'); 1252 var o = []; 1253 for (i = 0; i < 7; i++) o[i] = gn(t, (i + a) % 7, s, 'day'); 1254 return o; 1255 } 1256 1257 yn.calendar = function(e, t, n) { 1258 var s = this._calendar[e] || this._calendar.sameElse; 1259 return b(s) ? s.call(t, n) : s; 1260 }, yn.longDateFormat = function(e) { 1261 var t = this._longDateFormat[e], n = this._longDateFormat[e.toUpperCase()]; 1262 return t || !n ? t : (this._longDateFormat[e] = n.replace(/MMMM|MM|DD|dddd/g, function(e) { 1263 return e.slice(1); 1264 }), this._longDateFormat[e]); 1265 }, yn.invalidDate = function() { 1266 return this._invalidDate; 1267 }, yn.ordinal = function(e) { 1268 return this._ordinal.replace('%d', e); 1269 }, yn.preparse = _n, yn.postformat = _n, yn.relativeTime = function(e, t, n, s) { 1270 var i = this._relativeTime[n]; 1271 return b(i) ? i(e, t, n, s) : i.replace(/%d/i, e); 1272 }, yn.pastFuture = function(e, t) { 1273 var n = this._relativeTime[0 < e ? 'future' : 'past']; 1274 return b(n) ? n(t) : n.replace(/%s/i, t); 1275 }, yn.set = function(e) { 1276 var t, n; 1277 for (n in e) b(t = e[n]) ? this[n] = t : this['_' + n] = t; 1278 this._config = e, this._dayOfMonthOrdinalParseLenient = new RegExp((this._dayOfMonthOrdinalParse.source || this._ordinalParse.source) + '|' + /\d{1,2}/.source); 1279 }, yn.months = function(e, t) { 1280 return e ? o(this._months) ? this._months[e.month()] : this._months[(this._months.isFormat || We).test(t) ? 'format' : 'standalone'][e.month()] : o(this._months) ? this._months : this._months.standalone; 1281 }, yn.monthsShort = function(e, t) { 1282 return e ? o(this._monthsShort) ? this._monthsShort[e.month()] : this._monthsShort[We.test(t) ? 'format' : 'standalone'][e.month()] : o(this._monthsShort) ? this._monthsShort : this._monthsShort.standalone; 1283 }, yn.monthsParse = function(e, t, n) { 1284 var s, i, r; 1285 if (this._monthsParseExact) return function(e, t, n) { 1286 var s, i, r, a = e.toLocaleLowerCase(); 1287 if (!this._monthsParse) for (this._monthsParse = [], this._longMonthsParse = [], this._shortMonthsParse = [], s = 0; s < 12; ++s) r = y([2e3, s]), this._shortMonthsParse[s] = this.monthsShort(r, '').toLocaleLowerCase(), this._longMonthsParse[s] = this.months(r, '').toLocaleLowerCase(); 1288 return n ? 'MMM' === t ? -1 !== (i = Ye.call(this._shortMonthsParse, a)) ? i : null : -1 !== (i = Ye.call(this._longMonthsParse, a)) ? i : null : 'MMM' === t ? -1 !== (i = Ye.call(this._shortMonthsParse, a)) ? i : -1 !== (i = Ye.call(this._longMonthsParse, a)) ? i : null : -1 !== (i = Ye.call(this._longMonthsParse, a)) ? i : -1 !== (i = Ye.call(this._shortMonthsParse, a)) ? i : null; 1289 }.call(this, e, t, n); 1290 for (this._monthsParse || (this._monthsParse = [], this._longMonthsParse = [], this._shortMonthsParse = []), s = 0; s < 12; s++) { 1291 if (i = y([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; 1292 if (n && 'MMM' === t && this._shortMonthsParse[s].test(e)) return s; 1293 if (!n && this._monthsParse[s].test(e)) return s; 1294 } 1295 }, yn.monthsRegex = function(e) { 1296 return this._monthsParseExact ? (m(this, '_monthsRegex') || Ne.call(this), e ? this._monthsStrictRegex : this._monthsRegex) : (m(this, '_monthsRegex') || (this._monthsRegex = Le), this._monthsStrictRegex && e ? this._monthsStrictRegex : this._monthsRegex); 1297 }, yn.monthsShortRegex = function(e) { 1298 return this._monthsParseExact ? (m(this, '_monthsRegex') || Ne.call(this), e ? this._monthsShortStrictRegex : this._monthsShortRegex) : (m(this, '_monthsShortRegex') || (this._monthsShortRegex = Fe), this._monthsShortStrictRegex && e ? this._monthsShortStrictRegex : this._monthsShortRegex); 1299 }, yn.week = function(e) { 1300 return Ie(e, this._week.dow, this._week.doy).week; 1301 }, yn.firstDayOfYear = function() { 1302 return this._week.doy; 1303 }, yn.firstDayOfWeek = function() { 1304 return this._week.dow; 1305 }, yn.weekdays = function(e, t) { 1306 var n = o(this._weekdays) ? this._weekdays : this._weekdays[e && !0 !== e && this._weekdays.isFormat.test(t) ? 'format' : 'standalone']; 1307 return !0 === e ? je(n, this._week.dow) : e ? n[e.day()] : n; 1308 }, yn.weekdaysMin = function(e) { 1309 return !0 === e ? je(this._weekdaysMin, this._week.dow) : e ? this._weekdaysMin[e.day()] : this._weekdaysMin; 1310 }, yn.weekdaysShort = function(e) { 1311 return !0 === e ? je(this._weekdaysShort, this._week.dow) : e ? this._weekdaysShort[e.day()] : this._weekdaysShort; 1312 }, yn.weekdaysParse = function(e, t, n) { 1313 var s, i, r; 1314 if (this._weekdaysParseExact) return function(e, t, n) { 1315 var s, i, r, a = e.toLocaleLowerCase(); 1316 if (!this._weekdaysParse) for (this._weekdaysParse = [], this._shortWeekdaysParse = [], this._minWeekdaysParse = [], s = 0; s < 7; ++s) r = y([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(); 1317 return n ? 'dddd' === t ? -1 !== (i = Ye.call(this._weekdaysParse, a)) ? i : null : 'ddd' === t ? -1 !== (i = Ye.call(this._shortWeekdaysParse, a)) ? i : null : -1 !== (i = Ye.call(this._minWeekdaysParse, a)) ? i : null : 'dddd' === t ? -1 !== (i = Ye.call(this._weekdaysParse, a)) ? i : -1 !== (i = Ye.call(this._shortWeekdaysParse, a)) ? i : -1 !== (i = Ye.call(this._minWeekdaysParse, a)) ? i : null : 'ddd' === t ? -1 !== (i = Ye.call(this._shortWeekdaysParse, a)) ? i : -1 !== (i = Ye.call(this._weekdaysParse, a)) ? i : -1 !== (i = Ye.call(this._minWeekdaysParse, a)) ? i : null : -1 !== (i = Ye.call(this._minWeekdaysParse, a)) ? i : -1 !== (i = Ye.call(this._weekdaysParse, a)) ? i : -1 !== (i = Ye.call(this._shortWeekdaysParse, a)) ? i : null; 1318 }.call(this, e, t, n); 1319 for (this._weekdaysParse || (this._weekdaysParse = [], this._minWeekdaysParse = [], this._shortWeekdaysParse = [], this._fullWeekdaysParse = []), s = 0; s < 7; s++) { 1320 if (i = y([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; 1321 if (n && 'ddd' === t && this._shortWeekdaysParse[s].test(e)) return s; 1322 if (n && 'dd' === t && this._minWeekdaysParse[s].test(e)) return s; 1323 if (!n && this._weekdaysParse[s].test(e)) return s; 1324 } 1325 }, yn.weekdaysRegex = function(e) { 1326 return this._weekdaysParseExact ? (m(this, '_weekdaysRegex') || Qe.call(this), e ? this._weekdaysStrictRegex : this._weekdaysRegex) : (m(this, '_weekdaysRegex') || (this._weekdaysRegex = qe), this._weekdaysStrictRegex && e ? this._weekdaysStrictRegex : this._weekdaysRegex); 1327 }, yn.weekdaysShortRegex = function(e) { 1328 return this._weekdaysParseExact ? (m(this, '_weekdaysRegex') || Qe.call(this), e ? this._weekdaysShortStrictRegex : this._weekdaysShortRegex) : (m(this, '_weekdaysShortRegex') || (this._weekdaysShortRegex = Je), this._weekdaysShortStrictRegex && e ? this._weekdaysShortStrictRegex : this._weekdaysShortRegex); 1329 }, yn.weekdaysMinRegex = function(e) { 1330 return this._weekdaysParseExact ? (m(this, '_weekdaysRegex') || Qe.call(this), e ? this._weekdaysMinStrictRegex : this._weekdaysMinRegex) : (m(this, '_weekdaysMinRegex') || (this._weekdaysMinRegex = Be), this._weekdaysMinStrictRegex && e ? this._weekdaysMinStrictRegex : this._weekdaysMinRegex); 1331 }, yn.isPM = function(e) { 1332 return 'p' === (e + '').toLowerCase().charAt(0); 1333 }, yn.meridiem = function(e, t, n) { 1334 return 11 < e ? n ? 'pm' : 'PM' : n ? 'am' : 'AM'; 1335 }, ut('en', { 1336 dayOfMonthOrdinalParse: /\d{1,2}(th|st|nd|rd)/, ordinal: function(e) { 1337 var t = e % 10; 1338 return e + (1 === D(e % 100 / 10) ? 'th' : 1 === t ? 'st' : 2 === t ? 'nd' : 3 === t ? 'rd' : 'th'); 1339 } 1340 }), c.lang = n('moment.lang is deprecated. Use moment.locale instead.', ut), c.langData = n('moment.langData is deprecated. Use moment.localeData instead.', ht); 1341 var wn = Math.abs; 1342 1343 function Mn(e, t, n, s) { 1344 var i = jt(t, n); 1345 return e._milliseconds += s * i._milliseconds, e._days += s * i._days, e._months += s * i._months, e._bubble(); 1346 } 1347 1348 function kn(e) { 1349 return e < 0 ? Math.floor(e) : Math.ceil(e); 1350 } 1351 1352 function Sn(e) { 1353 return 4800 * e / 146097; 1354 } 1355 1356 function Dn(e) { 1357 return 146097 * e / 4800; 1358 } 1359 1360 function Yn(e) { 1361 return function() { 1362 return this.as(e); 1363 }; 1364 } 1365 1366 var On = Yn('ms'), Tn = Yn('s'), bn = Yn('m'), xn = Yn('h'), Pn = Yn('d'), Wn = Yn('w'), Cn = Yn('M'), Hn = Yn('Q'), 1367 Rn = Yn('y'); 1368 1369 function Un(e) { 1370 return function() { 1371 return this.isValid() ? this._data[e] : NaN; 1372 }; 1373 } 1374 1375 var Fn = Un('milliseconds'), Ln = Un('seconds'), Nn = Un('minutes'), Gn = Un('hours'), Vn = Un('days'), 1376 En = Un('months'), In = Un('years'); 1377 var An = Math.round, jn = { ss: 44, s: 45, m: 45, h: 22, d: 26, M: 11 }; 1378 var Zn = Math.abs; 1379 1380 function zn(e) { 1381 return (0 < e) - (e < 0) || +e; 1382 } 1383 1384 function $n() { 1385 if (!this.isValid()) return this.localeData().invalidDate(); 1386 var e, t, n = Zn(this._milliseconds) / 1e3, s = Zn(this._days), i = Zn(this._months); 1387 t = S((e = S(n / 60)) / 60), n %= 60, e %= 60; 1388 var r = S(i / 12), a = i %= 12, o = s, u = t, l = e, h = n ? n.toFixed(3).replace(/\.?0+$/, '') : '', 1389 d = this.asSeconds(); 1390 if (!d) return 'P0D'; 1391 var c = d < 0 ? '-' : '', f = zn(this._months) !== zn(d) ? '-' : '', m = zn(this._days) !== zn(d) ? '-' : '', 1392 _ = zn(this._milliseconds) !== zn(d) ? '-' : ''; 1393 return c + 'P' + (r ? f + r + 'Y' : '') + (a ? f + a + 'M' : '') + (o ? m + o + 'D' : '') + (u || l || h ? 'T' : '') + (u ? _ + u + 'H' : '') + (l ? _ + l + 'M' : '') + (h ? _ + h + 'S' : ''); 1394 } 1395 1396 var qn = Ht.prototype; 1397 return qn.isValid = function() { 1398 return this._isValid; 1399 }, qn.abs = function() { 1400 var e = this._data; 1401 return this._milliseconds = wn(this._milliseconds), this._days = wn(this._days), this._months = wn(this._months), e.milliseconds = wn(e.milliseconds), e.seconds = wn(e.seconds), e.minutes = wn(e.minutes), e.hours = wn(e.hours), e.months = wn(e.months), e.years = wn(e.years), this; 1402 }, qn.add = function(e, t) { 1403 return Mn(this, e, t, 1); 1404 }, qn.subtract = function(e, t) { 1405 return Mn(this, e, t, -1); 1406 }, qn.as = function(e) { 1407 if (!this.isValid()) return NaN; 1408 var t, n, s = this._milliseconds; 1409 if ('month' === (e = H(e)) || 'quarter' === e || 'year' === e) switch (t = this._days + s / 864e5, n = this._months + Sn(t), e) { 1410 case'month': 1411 return n; 1412 case'quarter': 1413 return n / 3; 1414 case'year': 1415 return n / 12; 1416 } else switch (t = this._days + Math.round(Dn(this._months)), e) { 1417 case'week': 1418 return t / 7 + s / 6048e5; 1419 case'day': 1420 return t + s / 864e5; 1421 case'hour': 1422 return 24 * t + s / 36e5; 1423 case'minute': 1424 return 1440 * t + s / 6e4; 1425 case'second': 1426 return 86400 * t + s / 1e3; 1427 case'millisecond': 1428 return Math.floor(864e5 * t) + s; 1429 default: 1430 throw new Error('Unknown unit ' + e); 1431 } 1432 }, qn.asMilliseconds = On, qn.asSeconds = Tn, qn.asMinutes = bn, qn.asHours = xn, qn.asDays = Pn, qn.asWeeks = Wn, qn.asMonths = Cn, qn.asQuarters = Hn, qn.asYears = Rn, qn.valueOf = function() { 1433 return this.isValid() ? this._milliseconds + 864e5 * this._days + this._months % 12 * 2592e6 + 31536e6 * D(this._months / 12) : NaN; 1434 }, qn._bubble = function() { 1435 var e, t, n, s, i, r = this._milliseconds, a = this._days, o = this._months, u = this._data; 1436 return 0 <= r && 0 <= a && 0 <= o || r <= 0 && a <= 0 && o <= 0 || (r += 864e5 * kn(Dn(o) + a), o = a = 0), u.milliseconds = r % 1e3, e = S(r / 1e3), u.seconds = e % 60, t = S(e / 60), u.minutes = t % 60, n = S(t / 60), u.hours = n % 24, o += i = S(Sn(a += S(n / 24))), a -= kn(Dn(i)), s = S(o / 12), o %= 12, u.days = a, u.months = o, u.years = s, this; 1437 }, qn.clone = function() { 1438 return jt(this); 1439 }, qn.get = function(e) { 1440 return e = H(e), this.isValid() ? this[e + 's']() : NaN; 1441 }, qn.milliseconds = Fn, qn.seconds = Ln, qn.minutes = Nn, qn.hours = Gn, qn.days = Vn, qn.weeks = function() { 1442 return S(this.days() / 7); 1443 }, qn.months = En, qn.years = In, qn.humanize = function(e) { 1444 if (!this.isValid()) return this.localeData().invalidDate(); 1445 var t, n, s, i, r, a, o, u, l, h, d, c = this.localeData(), 1446 f = (n = !e, s = c, i = jt(t = this).abs(), r = An(i.as('s')), a = An(i.as('m')), o = An(i.as('h')), u = An(i.as('d')), l = An(i.as('M')), h = An(i.as('y')), (d = r <= jn.ss && ['s', r] || r < jn.s && ['ss', r] || a <= 1 && ['m'] || a < jn.m && ['mm', a] || o <= 1 && ['h'] || o < jn.h && ['hh', o] || u <= 1 && ['d'] || u < jn.d && ['dd', u] || l <= 1 && ['M'] || l < jn.M && ['MM', l] || h <= 1 && ['y'] || ['yy', h])[2] = n, d[3] = 0 < +t, d[4] = s, function(e, t, n, s, i) { 1447 return i.relativeTime(t || 1, !!n, e, s); 1448 }.apply(null, d)); 1449 return e && (f = c.pastFuture(+this, f)), c.postformat(f); 1450 }, qn.toISOString = $n, qn.toString = $n, qn.toJSON = $n, qn.locale = Xt, qn.localeData = en, qn.toIsoString = n('toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)', $n), qn.lang = Kt, I('X', 0, 0, 'unix'), I('x', 0, 0, 'valueOf'), ue('x', se), ue('X', /[+-]?\d+(\.\d{1,3})?/), ce('X', function(e, t, n) { 1451 n._d = new Date(1e3 * parseFloat(e, 10)); 1452 }), ce('x', function(e, t, n) { 1453 n._d = new Date(D(e)); 1454 }), c.version = '2.24.0', e = bt, c.fn = mn, c.min = function() { 1455 return Wt('isBefore', [].slice.call(arguments, 0)); 1456 }, c.max = function() { 1457 return Wt('isAfter', [].slice.call(arguments, 0)); 1458 }, c.now = function() { 1459 return Date.now ? Date.now() : +new Date; 1460 }, c.utc = y, c.unix = function(e) { 1461 return bt(1e3 * e); 1462 }, c.months = function(e, t) { 1463 return vn(e, t, 'months'); 1464 }, c.isDate = d, c.locale = ut, c.invalid = p, c.duration = jt, c.isMoment = k, c.weekdays = function(e, t, n) { 1465 return pn(e, t, n, 'weekdays'); 1466 }, c.parseZone = function() { 1467 return bt.apply(null, arguments).parseZone(); 1468 }, c.localeData = ht, c.isDuration = Rt, c.monthsShort = function(e, t) { 1469 return vn(e, t, 'monthsShort'); 1470 }, c.weekdaysMin = function(e, t, n) { 1471 return pn(e, t, n, 'weekdaysMin'); 1472 }, c.defineLocale = lt, c.updateLocale = function(e, t) { 1473 if (null != t) { 1474 var n, s, i = st; 1475 null != (s = ot(e)) && (i = s._config), (n = new P(t = x(i, t))).parentLocale = it[e], it[e] = n, ut(e); 1476 } else null != it[e] && (null != it[e].parentLocale ? it[e] = it[e].parentLocale : null != it[e] && delete it[e]); 1477 return it[e]; 1478 }, c.locales = function() { 1479 return s(it); 1480 }, c.weekdaysShort = function(e, t, n) { 1481 return pn(e, t, n, 'weekdaysShort'); 1482 }, c.normalizeUnits = H, c.relativeTimeRounding = function(e) { 1483 return void 0 === e ? An : 'function' == typeof e && (An = e, !0); 1484 }, c.relativeTimeThreshold = function(e, t) { 1485 return void 0 !== jn[e] && (void 0 === t ? jn[e] : (jn[e] = t, 's' === e && (jn.ss = t - 1), !0)); 1486 }, c.calendarFormat = function(e, t) { 1487 var n = e.diff(t, 'days', !0); 1488 return n < -6 ? 'sameElse' : n < -1 ? 'lastWeek' : n < 0 ? 'lastDay' : n < 1 ? 'sameDay' : n < 2 ? 'nextDay' : n < 7 ? 'nextWeek' : 'sameElse'; 1489 }, c.prototype = mn, c.HTML5_FMT = { 1490 DATETIME_LOCAL: 'YYYY-MM-DDTHH:mm', 1491 DATETIME_LOCAL_SECONDS: 'YYYY-MM-DDTHH:mm:ss', 1492 DATETIME_LOCAL_MS: 'YYYY-MM-DDTHH:mm:ss.SSS', 1493 DATE: 'YYYY-MM-DD', 1494 TIME: 'HH:mm', 1495 TIME_SECONDS: 'HH:mm:ss', 1496 TIME_MS: 'HH:mm:ss.SSS', 1497 WEEK: 'GGGG-[W]WW', 1498 MONTH: 'YYYY-MM' 1499 }, c; 1500});
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.