moment.js 65 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083
  1. !
  2. function(e, t) {
  3. "object" == typeof exports && "undefined" != typeof module ? module.exports = t() : "function" == typeof define && define.amd ? define(t) : e.moment = t()
  4. } (this,
  5. function() {
  6. "use strict";
  7. var e, i;
  8. function c() {
  9. return e.apply(null, arguments)
  10. }
  11. function o(e) {
  12. return e instanceof Array || "[object Array]" === Object.prototype.toString.call(e)
  13. }
  14. function u(e) {
  15. return null != e && "[object Object]" === Object.prototype.toString.call(e)
  16. }
  17. function l(e) {
  18. return void 0 === e
  19. }
  20. function h(e) {
  21. return "number" == typeof e || "[object Number]" === Object.prototype.toString.call(e)
  22. }
  23. function d(e) {
  24. return e instanceof Date || "[object Date]" === Object.prototype.toString.call(e)
  25. }
  26. function f(e, t) {
  27. var n, s = [];
  28. for (n = 0; n < e.length; ++n) s.push(t(e[n], n));
  29. return s
  30. }
  31. function m(e, t) {
  32. return Object.prototype.hasOwnProperty.call(e, t)
  33. }
  34. function _(e, t) {
  35. for (var n in t) m(t, n) && (e[n] = t[n]);
  36. return m(t, "toString") && (e.toString = t.toString),
  37. m(t, "valueOf") && (e.valueOf = t.valueOf),
  38. e
  39. }
  40. function y(e, t, n, s) {
  41. return Tt(e, t, n, s, !0).utc()
  42. }
  43. function g(e) {
  44. return null == e._pf && (e._pf = {
  45. empty: !1,
  46. unusedTokens: [],
  47. unusedInput: [],
  48. overflow: -2,
  49. charsLeftOver: 0,
  50. nullInput: !1,
  51. invalidMonth: null,
  52. invalidFormat: !1,
  53. userInvalidated: !1,
  54. iso: !1,
  55. parsedDateParts: [],
  56. meridiem: null,
  57. rfc2822: !1,
  58. weekdayMismatch: !1
  59. }),
  60. e._pf
  61. }
  62. function v(e) {
  63. if (null == e._isValid) {
  64. var t = g(e),
  65. n = i.call(t.parsedDateParts,
  66. function(e) {
  67. return null != e
  68. }),
  69. 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);
  70. if (e._strict && (s = s && 0 === t.charsLeftOver && 0 === t.unusedTokens.length && void 0 === t.bigHour), null != Object.isFrozen && Object.isFrozen(e)) return s;
  71. e._isValid = s
  72. }
  73. return e._isValid
  74. }
  75. function p(e) {
  76. var t = y(NaN);
  77. return null != e ? _(g(t), e) : g(t).userInvalidated = !0,
  78. t
  79. }
  80. i = Array.prototype.some ? Array.prototype.some: function(e) {
  81. 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;
  82. return ! 1
  83. };
  84. var r = c.momentProperties = [];
  85. function w(e, t) {
  86. var n, s, i;
  87. 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);
  88. return e
  89. }
  90. var t = !1;
  91. function M(e) {
  92. w(this, e),
  93. this._d = new Date(null != e._d ? e._d.getTime() : NaN),
  94. this.isValid() || (this._d = new Date(NaN)),
  95. !1 === t && (t = !0, c.updateOffset(this), t = !1)
  96. }
  97. function k(e) {
  98. return e instanceof M || null != e && null != e._isAMomentObject
  99. }
  100. function S(e) {
  101. return e < 0 ? Math.ceil(e) || 0 : Math.floor(e)
  102. }
  103. function D(e) {
  104. var t = +e,
  105. n = 0;
  106. return 0 !== t && isFinite(t) && (n = S(t)),
  107. n
  108. }
  109. function a(e, t, n) {
  110. var s, i = Math.min(e.length, t.length),
  111. r = Math.abs(e.length - t.length),
  112. a = 0;
  113. for (s = 0; s < i; s++)(n && e[s] !== t[s] || !n && D(e[s]) !== D(t[s])) && a++;
  114. return a + r
  115. }
  116. function Y(e) { ! 1 === c.suppressDeprecationWarnings && "undefined" != typeof console && console.warn && console.warn("Deprecation warning: " + e)
  117. }
  118. function n(i, r) {
  119. var a = !0;
  120. return _(function() {
  121. if (null != c.deprecationHandler && c.deprecationHandler(null, i), a) {
  122. for (var e, t = [], n = 0; n < arguments.length; n++) {
  123. if (e = "", "object" == typeof arguments[n]) {
  124. for (var s in e += "\n[" + n + "] ",
  125. arguments[0]) e += s + ": " + arguments[0][s] + ", ";
  126. e = e.slice(0, -2)
  127. } else e = arguments[n];
  128. t.push(e)
  129. }
  130. Y(i + "\nArguments: " + Array.prototype.slice.call(t).join("") + "\n" + (new Error).stack),
  131. a = !1
  132. }
  133. return r.apply(this, arguments)
  134. },
  135. r)
  136. }
  137. var s, O = {};
  138. function T(e, t) {
  139. null != c.deprecationHandler && c.deprecationHandler(e, t),
  140. O[e] || (Y(t), O[e] = !0)
  141. }
  142. function b(e) {
  143. return e instanceof Function || "[object Function]" === Object.prototype.toString.call(e)
  144. }
  145. function x(e, t) {
  146. var n, s = _({},
  147. e);
  148. for (n in t) m(t, n) && (u(e[n]) && u(t[n]) ? (s[n] = {},
  149. _(s[n], e[n]), _(s[n], t[n])) : null != t[n] ? s[n] = t[n] : delete s[n]);
  150. for (n in e) m(e, n) && !m(t, n) && u(e[n]) && (s[n] = _({},
  151. s[n]));
  152. return s
  153. }
  154. function P(e) {
  155. null != e && this.set(e)
  156. }
  157. c.suppressDeprecationWarnings = !1,
  158. c.deprecationHandler = null,
  159. s = Object.keys ? Object.keys: function(e) {
  160. var t, n = [];
  161. for (t in e) m(e, t) && n.push(t);
  162. return n
  163. };
  164. var W = {};
  165. function C(e, t) {
  166. var n = e.toLowerCase();
  167. W[n] = W[n + "s"] = W[t] = e
  168. }
  169. function H(e) {
  170. return "string" == typeof e ? W[e] || W[e.toLowerCase()] : void 0
  171. }
  172. function R(e) {
  173. var t, n, s = {};
  174. for (n in e) m(e, n) && (t = H(n)) && (s[t] = e[n]);
  175. return s
  176. }
  177. var U = {};
  178. function F(e, t) {
  179. U[e] = t
  180. }
  181. function L(e, t, n) {
  182. var s = "" + Math.abs(e),
  183. i = t - s.length;
  184. return (0 <= e ? n ? "+": "": "-") + Math.pow(10, Math.max(0, i)).toString().substr(1) + s
  185. }
  186. 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,
  187. G = /(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g,
  188. V = {},
  189. E = {};
  190. function I(e, t, n, s) {
  191. var i = s;
  192. "string" == typeof s && (i = function() {
  193. return this[s]()
  194. }),
  195. e && (E[e] = i),
  196. t && (E[t[0]] = function() {
  197. return L(i.apply(this, arguments), t[1], t[2])
  198. }),
  199. n && (E[n] = function() {
  200. return this.localeData().ordinal(i.apply(this, arguments), e)
  201. })
  202. }
  203. function A(e, t) {
  204. return e.isValid() ? (t = j(t, e.localeData()), V[t] = V[t] ||
  205. function(s) {
  206. var e, i, t, r = s.match(N);
  207. 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, "");
  208. return function(e) {
  209. var t, n = "";
  210. for (t = 0; t < i; t++) n += b(r[t]) ? r[t].call(e, s) : r[t];
  211. return n
  212. }
  213. } (t), V[t](e)) : e.localeData().invalidDate()
  214. }
  215. function j(e, t) {
  216. var n = 5;
  217. function s(e) {
  218. return t.longDateFormat(e) || e
  219. }
  220. for (G.lastIndex = 0; 0 <= n && G.test(e);) e = e.replace(G, s),
  221. G.lastIndex = 0,
  222. n -= 1;
  223. return e
  224. }
  225. var Z = /\d/,
  226. z = /\d\d/,
  227. $ = /\d{3}/,
  228. q = /\d{4}/,
  229. J = /[+-]?\d{6}/,
  230. B = /\d\d?/,
  231. Q = /\d\d\d\d?/,
  232. X = /\d\d\d\d\d\d?/,
  233. K = /\d{1,3}/,
  234. ee = /\d{1,4}/,
  235. te = /[+-]?\d{1,6}/,
  236. ne = /\d+/,
  237. se = /[+-]?\d+/,
  238. ie = /Z|[+-]\d\d:?\d\d/gi,
  239. re = /Z|[+-]\d\d(?::?\d\d)?/gi,
  240. 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,
  241. oe = {};
  242. function ue(e, n, s) {
  243. oe[e] = b(n) ? n: function(e, t) {
  244. return e && s ? s: n
  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,
  249. function(e, t, n, s, i) {
  250. return t || n || s || i
  251. })))
  252. }
  253. function he(e) {
  254. return e.replace(/[-\/\\^$*+?.()|[\]{}]/g, "\\$&")
  255. }
  256. var de = {};
  257. function ce(e, n) {
  258. var t, s = n;
  259. for ("string" == typeof e && (e = [e]), h(n) && (s = function(e, t) {
  260. t[n] = D(e)
  261. }), t = 0; t < e.length; t++) de[e[t]] = s
  262. }
  263. function fe(e, i) {
  264. ce(e,
  265. function(e, t, n, s) {
  266. n._w = n._w || {},
  267. i(e, n._w, n, s)
  268. })
  269. }
  270. var me = 0,
  271. _e = 1,
  272. ye = 2,
  273. ge = 3,
  274. ve = 4,
  275. pe = 5,
  276. we = 6,
  277. Me = 7,
  278. ke = 8;
  279. function Se(e) {
  280. return De(e) ? 366 : 365
  281. }
  282. function De(e) {
  283. return e % 4 == 0 && e % 100 != 0 || e % 400 == 0
  284. }
  285. I("Y", 0, 0,
  286. function() {
  287. var e = this.year();
  288. return e <= 9999 ? "" + e: "+" + e
  289. }),
  290. I(0, ["YY", 2], 0,
  291. function() {
  292. return this.year() % 100
  293. }),
  294. I(0, ["YYYY", 4], 0, "year"),
  295. I(0, ["YYYYY", 5], 0, "year"),
  296. I(0, ["YYYYYY", 6, !0], 0, "year"),
  297. C("year", "y"),
  298. F("year", 1),
  299. ue("Y", se),
  300. ue("YY", B, z),
  301. ue("YYYY", ee, q),
  302. ue("YYYYY", te, J),
  303. ue("YYYYYY", te, J),
  304. ce(["YYYYY", "YYYYYY"], me),
  305. ce("YYYY",
  306. function(e, t) {
  307. t[me] = 2 === e.length ? c.parseTwoDigitYear(e) : D(e)
  308. }),
  309. ce("YY",
  310. function(e, t) {
  311. t[me] = c.parseTwoDigitYear(e)
  312. }),
  313. ce("Y",
  314. function(e, t) {
  315. t[me] = parseInt(e, 10)
  316. }),
  317. c.parseTwoDigitYear = function(e) {
  318. return D(e) + (68 < D(e) ? 1900 : 2e3)
  319. };
  320. var Ye, Oe = Te("FullYear", !0);
  321. function Te(t, n) {
  322. return function(e) {
  323. return null != e ? (xe(this, t, e), c.updateOffset(this, n), this) : be(this, t)
  324. }
  325. }
  326. function be(e, t) {
  327. return e.isValid() ? e._d["get" + (e._isUTC ? "UTC": "") + t]() : NaN
  328. }
  329. function xe(e, t, n) {
  330. 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))
  331. }
  332. function Pe(e, t) {
  333. if (isNaN(e) || isNaN(t)) return NaN;
  334. var n, s = (t % (n = 12) + n) % n;
  335. return e += (t - s) / 12,
  336. 1 === s ? De(e) ? 29 : 28 : 31 - s % 7 % 2
  337. }
  338. Ye = Array.prototype.indexOf ? Array.prototype.indexOf: function(e) {
  339. var t;
  340. for (t = 0; t < this.length; ++t) if (this[t] === e) return t;
  341. return - 1
  342. },
  343. I("M", ["MM", 2], "Mo",
  344. function() {
  345. return this.month() + 1
  346. }),
  347. I("MMM", 0, 0,
  348. function(e) {
  349. return this.localeData().monthsShort(this, e)
  350. }),
  351. I("MMMM", 0, 0,
  352. function(e) {
  353. return this.localeData().months(this, e)
  354. }),
  355. C("month", "M"),
  356. F("month", 8),
  357. ue("M", B),
  358. ue("MM", B, z),
  359. ue("MMM",
  360. function(e, t) {
  361. return t.monthsShortRegex(e)
  362. }),
  363. ue("MMMM",
  364. function(e, t) {
  365. return t.monthsRegex(e)
  366. }),
  367. ce(["M", "MM"],
  368. function(e, t) {
  369. t[_e] = D(e) - 1
  370. }),
  371. ce(["MMM", "MMMM"],
  372. function(e, t, n, s) {
  373. var i = n._locale.monthsParse(e, s, n._strict);
  374. null != i ? t[_e] = i: g(n).invalidMonth = e
  375. });
  376. var We = /D[oD]?(\[[^\[\]]*\]|\s)+MMMM?/,
  377. Ce = "January_February_March_April_May_June_July_August_September_October_November_December".split("_");
  378. var He = "Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_");
  379. function Re(e, t) {
  380. var n;
  381. if (!e.isValid()) return e;
  382. if ("string" == typeof t) if (/^\d+$/.test(t)) t = D(t);
  383. else if (!h(t = e.localeData().monthsParse(t))) return e;
  384. return n = Math.min(e.date(), Pe(e.year(), t)),
  385. e._d["set" + (e._isUTC ? "UTC": "") + "Month"](t, n),
  386. e
  387. }
  388. function Ue(e) {
  389. return null != e ? (Re(this, e), c.updateOffset(this, !0), this) : be(this, "Month")
  390. }
  391. var Fe = ae;
  392. var Le = ae;
  393. function Ne() {
  394. function e(e, t) {
  395. return t.length - e.length
  396. }
  397. var t, n, s = [],
  398. i = [],
  399. r = [];
  400. for (t = 0; t < 12; t++) n = y([2e3, t]),
  401. s.push(this.monthsShort(n, "")),
  402. i.push(this.months(n, "")),
  403. r.push(this.months(n, "")),
  404. r.push(this.monthsShort(n, ""));
  405. for (s.sort(e), i.sort(e), r.sort(e), t = 0; t < 12; t++) s[t] = he(s[t]),
  406. i[t] = he(i[t]);
  407. for (t = 0; t < 24; t++) r[t] = he(r[t]);
  408. this._monthsRegex = new RegExp("^(" + r.join("|") + ")", "i"),
  409. this._monthsShortRegex = this._monthsRegex,
  410. this._monthsStrictRegex = new RegExp("^(" + i.join("|") + ")", "i"),
  411. this._monthsShortStrictRegex = new RegExp("^(" + s.join("|") + ")", "i")
  412. }
  413. function Ge(e) {
  414. var t;
  415. if (e < 100 && 0 <= e) {
  416. var n = Array.prototype.slice.call(arguments);
  417. n[0] = e + 400,
  418. t = new Date(Date.UTC.apply(null, n)),
  419. isFinite(t.getUTCFullYear()) && t.setUTCFullYear(e)
  420. } else t = new Date(Date.UTC.apply(null, arguments));
  421. return t
  422. }
  423. function Ve(e, t, n) {
  424. var s = 7 + t - n;
  425. return - ((7 + Ge(e, 0, s).getUTCDay() - t) % 7) + s - 1
  426. }
  427. function Ee(e, t, n, s, i) {
  428. var r, a, o = 1 + 7 * (t - 1) + (7 + n - s) % 7 + Ve(e, s, i);
  429. return a = o <= 0 ? Se(r = e - 1) + o: o > Se(e) ? (r = e + 1, o - Se(e)) : (r = e, o),
  430. {
  431. year: r,
  432. dayOfYear: a
  433. }
  434. }
  435. function Ie(e, t, n) {
  436. var s, i, r = Ve(e.year(), t, n),
  437. a = Math.floor((e.dayOfYear() - r - 1) / 7) + 1;
  438. 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),
  439. {
  440. week: s,
  441. year: i
  442. }
  443. }
  444. function Ae(e, t, n) {
  445. var s = Ve(e, t, n),
  446. i = Ve(e + 1, t, n);
  447. return (Se(e) - s + i) / 7
  448. }
  449. I("w", ["ww", 2], "wo", "week"),
  450. I("W", ["WW", 2], "Wo", "isoWeek"),
  451. C("week", "w"),
  452. C("isoWeek", "W"),
  453. F("week", 5),
  454. F("isoWeek", 5),
  455. ue("w", B),
  456. ue("ww", B, z),
  457. ue("W", B),
  458. ue("WW", B, z),
  459. fe(["w", "ww", "W", "WW"],
  460. function(e, t, n, s) {
  461. t[s.substr(0, 1)] = D(e)
  462. });
  463. function je(e, t) {
  464. return e.slice(t, 7).concat(e.slice(0, t))
  465. }
  466. I("d", 0, "do", "day"),
  467. I("dd", 0, 0,
  468. function(e) {
  469. return this.localeData().weekdaysMin(this, e)
  470. }),
  471. I("ddd", 0, 0,
  472. function(e) {
  473. return this.localeData().weekdaysShort(this, e)
  474. }),
  475. I("dddd", 0, 0,
  476. function(e) {
  477. return this.localeData().weekdays(this, e)
  478. }),
  479. I("e", 0, 0, "weekday"),
  480. I("E", 0, 0, "isoWeekday"),
  481. C("day", "d"),
  482. C("weekday", "e"),
  483. C("isoWeekday", "E"),
  484. F("day", 11),
  485. F("weekday", 11),
  486. F("isoWeekday", 11),
  487. ue("d", B),
  488. ue("e", B),
  489. ue("E", B),
  490. ue("dd",
  491. function(e, t) {
  492. return t.weekdaysMinRegex(e)
  493. }),
  494. ue("ddd",
  495. function(e, t) {
  496. return t.weekdaysShortRegex(e)
  497. }),
  498. ue("dddd",
  499. function(e, t) {
  500. return t.weekdaysRegex(e)
  501. }),
  502. fe(["dd", "ddd", "dddd"],
  503. function(e, t, n, s) {
  504. var i = n._locale.weekdaysParse(e, s, n._strict);
  505. null != i ? t.d = i: g(n).invalidWeekday = e
  506. }),
  507. fe(["d", "e", "E"],
  508. function(e, t, n, s) {
  509. t[s] = D(e)
  510. });
  511. var Ze = "Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_");
  512. var ze = "Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_");
  513. var $e = "Su_Mo_Tu_We_Th_Fr_Sa".split("_");
  514. var qe = ae;
  515. var Je = ae;
  516. var Be = ae;
  517. function Qe() {
  518. function e(e, t) {
  519. return t.length - e.length
  520. }
  521. var t, n, s, i, r, a = [],
  522. o = [],
  523. u = [],
  524. l = [];
  525. for (t = 0; t < 7; t++) n = y([2e3, 1]).day(t),
  526. s = this.weekdaysMin(n, ""),
  527. i = this.weekdaysShort(n, ""),
  528. r = this.weekdays(n, ""),
  529. a.push(s),
  530. o.push(i),
  531. u.push(r),
  532. l.push(s),
  533. l.push(i),
  534. l.push(r);
  535. for (a.sort(e), o.sort(e), u.sort(e), l.sort(e), t = 0; t < 7; t++) o[t] = he(o[t]),
  536. u[t] = he(u[t]),
  537. l[t] = he(l[t]);
  538. this._weekdaysRegex = new RegExp("^(" + l.join("|") + ")", "i"),
  539. this._weekdaysShortRegex = this._weekdaysRegex,
  540. this._weekdaysMinRegex = this._weekdaysRegex,
  541. this._weekdaysStrictRegex = new RegExp("^(" + u.join("|") + ")", "i"),
  542. this._weekdaysShortStrictRegex = new RegExp("^(" + o.join("|") + ")", "i"),
  543. this._weekdaysMinStrictRegex = new RegExp("^(" + a.join("|") + ")", "i")
  544. }
  545. function Xe() {
  546. return this.hours() % 12 || 12
  547. }
  548. function Ke(e, t) {
  549. I(e, 0, 0,
  550. function() {
  551. return this.localeData().meridiem(this.hours(), this.minutes(), t)
  552. })
  553. }
  554. function et(e, t) {
  555. return t._meridiemParse
  556. }
  557. I("H", ["HH", 2], 0, "hour"),
  558. I("h", ["hh", 2], 0, Xe),
  559. I("k", ["kk", 2], 0,
  560. function() {
  561. return this.hours() || 24
  562. }),
  563. I("hmm", 0, 0,
  564. function() {
  565. return "" + Xe.apply(this) + L(this.minutes(), 2)
  566. }),
  567. I("hmmss", 0, 0,
  568. function() {
  569. return "" + Xe.apply(this) + L(this.minutes(), 2) + L(this.seconds(), 2)
  570. }),
  571. I("Hmm", 0, 0,
  572. function() {
  573. return "" + this.hours() + L(this.minutes(), 2)
  574. }),
  575. I("Hmmss", 0, 0,
  576. function() {
  577. return "" + this.hours() + L(this.minutes(), 2) + L(this.seconds(), 2)
  578. }),
  579. Ke("a", !0),
  580. Ke("A", !1),
  581. C("hour", "h"),
  582. F("hour", 13),
  583. ue("a", et),
  584. ue("A", et),
  585. ue("H", B),
  586. ue("h", B),
  587. ue("k", B),
  588. ue("HH", B, z),
  589. ue("hh", B, z),
  590. ue("kk", B, z),
  591. ue("hmm", Q),
  592. ue("hmmss", X),
  593. ue("Hmm", Q),
  594. ue("Hmmss", X),
  595. ce(["H", "HH"], ge),
  596. ce(["k", "kk"],
  597. function(e, t, n) {
  598. var s = D(e);
  599. t[ge] = 24 === s ? 0 : s
  600. }),
  601. ce(["a", "A"],
  602. function(e, t, n) {
  603. n._isPm = n._locale.isPM(e),
  604. n._meridiem = e
  605. }),
  606. ce(["h", "hh"],
  607. function(e, t, n) {
  608. t[ge] = D(e),
  609. g(n).bigHour = !0
  610. }),
  611. ce("hmm",
  612. function(e, t, n) {
  613. var s = e.length - 2;
  614. t[ge] = D(e.substr(0, s)),
  615. t[ve] = D(e.substr(s)),
  616. g(n).bigHour = !0
  617. }),
  618. ce("hmmss",
  619. function(e, t, n) {
  620. var s = e.length - 4,
  621. i = e.length - 2;
  622. t[ge] = D(e.substr(0, s)),
  623. t[ve] = D(e.substr(s, 2)),
  624. t[pe] = D(e.substr(i)),
  625. g(n).bigHour = !0
  626. }),
  627. ce("Hmm",
  628. function(e, t, n) {
  629. var s = e.length - 2;
  630. t[ge] = D(e.substr(0, s)),
  631. t[ve] = D(e.substr(s))
  632. }),
  633. ce("Hmmss",
  634. function(e, t, n) {
  635. var s = e.length - 4,
  636. i = e.length - 2;
  637. t[ge] = D(e.substr(0, s)),
  638. t[ve] = D(e.substr(s, 2)),
  639. t[pe] = D(e.substr(i))
  640. });
  641. var tt, nt = Te("Hours", !0),
  642. st = {
  643. calendar: {
  644. sameDay: "[Today at] LT",
  645. nextDay: "[Tomorrow at] LT",
  646. nextWeek: "dddd [at] LT",
  647. lastDay: "[Yesterday at] LT",
  648. lastWeek: "[Last] dddd [at] LT",
  649. sameElse: "L"
  650. },
  651. longDateFormat: {
  652. LTS: "h:mm:ss A",
  653. LT: "h:mm A",
  654. L: "MM/DD/YYYY",
  655. LL: "MMMM D, YYYY",
  656. LLL: "MMMM D, YYYY h:mm A",
  657. LLLL: "dddd, MMMM D, YYYY h:mm A"
  658. },
  659. invalidDate: "Invalid date",
  660. ordinal: "%d",
  661. dayOfMonthOrdinalParse: /\d{1,2}/,
  662. relativeTime: {
  663. future: "in %s",
  664. past: "%s ago",
  665. s: "a few seconds",
  666. ss: "%d seconds",
  667. m: "a minute",
  668. mm: "%d minutes",
  669. h: "an hour",
  670. hh: "%d hours",
  671. d: "a day",
  672. dd: "%d days",
  673. M: "a month",
  674. MM: "%d months",
  675. y: "a year",
  676. yy: "%d years"
  677. },
  678. months: Ce,
  679. monthsShort: He,
  680. week: {
  681. dow: 0,
  682. doy: 6
  683. },
  684. weekdays: Ze,
  685. weekdaysMin: $e,
  686. weekdaysShort: ze,
  687. meridiemParse: /[ap]\.?m?\.?/i
  688. },
  689. it = {},
  690. rt = {};
  691. function at(e) {
  692. return e ? e.toLowerCase().replace("_", "-") : e
  693. }
  694. function ot(e) {
  695. var t = null;
  696. if (!it[e] && "undefined" != typeof module && module && module.exports) try {
  697. t = tt._abbr,
  698. require("./locale/" + e),
  699. ut(t)
  700. } catch(e) {}
  701. return it[e]
  702. }
  703. function ut(e, t) {
  704. var n;
  705. 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?")),
  706. tt._abbr
  707. }
  708. function lt(e, t) {
  709. if (null === t) return delete it[e],
  710. null;
  711. var n, s = st;
  712. 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."),
  713. s = it[e]._config;
  714. else if (null != t.parentLocale) if (null != it[t.parentLocale]) s = it[t.parentLocale]._config;
  715. else {
  716. if (null == (n = ot(t.parentLocale))) return rt[t.parentLocale] || (rt[t.parentLocale] = []),
  717. rt[t.parentLocale].push({
  718. name: e,
  719. config: t
  720. }),
  721. null;
  722. s = n._config
  723. }
  724. return it[e] = new P(x(s, t)),
  725. rt[e] && rt[e].forEach(function(e) {
  726. lt(e.name, e.config)
  727. }),
  728. ut(e),
  729. it[e]
  730. }
  731. function ht(e) {
  732. var t;
  733. if (e && e._locale && e._locale._abbr && (e = e._locale._abbr), !e) return tt;
  734. if (!o(e)) {
  735. if (t = ot(e)) return t;
  736. e = [e]
  737. }
  738. return function(e) {
  739. for (var t, n, s, i, r = 0; r < e.length;) {
  740. for (t = (i = at(e[r]).split("-")).length, n = (n = at(e[r + 1])) ? n.split("-") : null; 0 < t;) {
  741. if (s = ot(i.slice(0, t).join("-"))) return s;
  742. if (n && n.length >= t && a(i, n, !0) >= t - 1) break;
  743. t--
  744. }
  745. r++
  746. }
  747. return tt
  748. } (e)
  749. }
  750. function dt(e) {
  751. var t, n = e._a;
  752. 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),
  753. e
  754. }
  755. function ct(e, t, n) {
  756. return null != e ? e: null != t ? t: n
  757. }
  758. function ft(e) {
  759. var t, n, s, i, r, a = [];
  760. if (!e._d) {
  761. var o, u;
  762. 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] &&
  763. function(e) {
  764. var t, n, s, i, r, a, o, u;
  765. if (null != (t = e._w).GG || null != t.W || null != t.E) r = 1,
  766. a = 4,
  767. n = ct(t.GG, e._a[me], Ie(bt(), 1, 4).year),
  768. s = ct(t.W, 1),
  769. ((i = ct(t.E, 1)) < 1 || 7 < i) && (u = !0);
  770. else {
  771. r = e._locale._week.dow,
  772. a = e._locale._week.doy;
  773. var l = Ie(bt(), r, a);
  774. n = ct(t.gg, e._a[me], l.year),
  775. s = ct(t.w, l.week),
  776. 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
  777. }
  778. 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)
  779. } (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];
  780. for (; t < 7; t++) e._a[t] = a[t] = null == e._a[t] ? 2 === t ? 1 : 0 : e._a[t];
  781. 24 === e._a[ge] && 0 === e._a[ve] && 0 === e._a[pe] && 0 === e._a[we] && (e._nextDay = !0, e._a[ge] = 0),
  782. e._d = (e._useUTC ? Ge: function(e, t, n, s, i, r, a) {
  783. var o;
  784. 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),
  785. o
  786. }).apply(null, a),
  787. i = e._useUTC ? e._d.getUTCDay() : e._d.getDay(),
  788. null != e._tzm && e._d.setUTCMinutes(e._d.getUTCMinutes() - e._tzm),
  789. e._nextDay && (e._a[ge] = 24),
  790. e._w && void 0 !== e._w.d && e._w.d !== i && (g(e).weekdayMismatch = !0)
  791. }
  792. }
  793. 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)?)?$/,
  794. _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)?)?$/,
  795. yt = /Z|[+-]\d\d(?::?\d\d)?/,
  796. 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}/]],
  797. 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/]],
  798. pt = /^\/?Date\((\-?\d+)/i;
  799. function wt(e) {
  800. var t, n, s, i, r, a, o = e._i,
  801. u = mt.exec(o) || _t.exec(o);
  802. if (u) {
  803. for (g(e).iso = !0, t = 0, n = gt.length; t < n; t++) if (gt[t][1].exec(u[1])) {
  804. i = gt[t][0],
  805. s = !1 !== gt[t][2];
  806. break
  807. }
  808. if (null == i) return void(e._isValid = !1);
  809. if (u[3]) {
  810. for (t = 0, n = vt.length; t < n; t++) if (vt[t][1].exec(u[3])) {
  811. r = (u[2] || " ") + vt[t][0];
  812. break
  813. }
  814. if (null == r) return void(e._isValid = !1)
  815. }
  816. if (!s && null != r) return void(e._isValid = !1);
  817. if (u[4]) {
  818. if (!yt.exec(u[4])) return void(e._isValid = !1);
  819. a = "Z"
  820. }
  821. e._f = i + (r || "") + (a || ""),
  822. Yt(e)
  823. } else e._isValid = !1
  824. }
  825. 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}))$/;
  826. function kt(e, t, n, s, i, r) {
  827. var a = [function(e) {
  828. var t = parseInt(e, 10); {
  829. if (t <= 49) return 2e3 + t;
  830. if (t <= 999) return 1900 + t
  831. }
  832. return t
  833. } (e), He.indexOf(t), parseInt(n, 10), parseInt(s, 10), parseInt(i, 10)];
  834. return r && a.push(parseInt(r, 10)),
  835. a
  836. }
  837. var St = {
  838. UT: 0,
  839. GMT: 0,
  840. EDT: -240,
  841. EST: -300,
  842. CDT: -300,
  843. CST: -360,
  844. MDT: -360,
  845. MST: -420,
  846. PDT: -420,
  847. PST: -480
  848. };
  849. function Dt(e) {
  850. var t, n, s, i = Mt.exec(e._i.replace(/\([^)]*\)|[\n\t]/g, " ").replace(/(\s\s+)/g, " ").replace(/^\s\s*/, "").replace(/\s\s*$/, ""));
  851. if (i) {
  852. var r = kt(i[4], i[3], i[2], i[5], i[6], i[7]);
  853. 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;
  854. e._a = r,
  855. e._tzm = function(e, t, n) {
  856. if (e) return St[e];
  857. if (t) return 0;
  858. var s = parseInt(n, 10),
  859. i = s % 100;
  860. return (s - i) / 100 * 60 + i
  861. } (i[8], i[9], i[10]),
  862. e._d = Ge.apply(null, e._a),
  863. e._d.setUTCMinutes(e._d.getUTCMinutes() - e._tzm),
  864. g(e).rfc2822 = !0
  865. } else e._isValid = !1
  866. }
  867. function Yt(e) {
  868. if (e._f !== c.ISO_8601) if (e._f !== c.RFC_2822) {
  869. e._a = [],
  870. g(e).empty = !0;
  871. var t, n, s, i, r, a, o, u, l = "" + e._i,
  872. h = l.length,
  873. d = 0;
  874. for (s = j(e._f, e._locale).match(N) || [], t = 0; t < s.length; t++) i = s[t],
  875. (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),
  876. 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);
  877. g(e).charsLeftOver = h - d,
  878. 0 < l.length && g(e).unusedInput.push(l),
  879. e._a[ge] <= 12 && !0 === g(e).bigHour && 0 < e._a[ge] && (g(e).bigHour = void 0),
  880. g(e).parsedDateParts = e._a.slice(0),
  881. g(e).meridiem = e._meridiem,
  882. e._a[ge] = function(e, t, n) {
  883. var s;
  884. if (null == n) return t;
  885. 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)
  886. } (e._locale, e._a[ge], e._meridiem),
  887. ft(e),
  888. dt(e)
  889. } else Dt(e);
  890. else wt(e)
  891. }
  892. function Ot(e) {
  893. var t, n, s, i, r = e._i,
  894. a = e._f;
  895. return e._locale = e._locale || ht(e._l),
  896. null === r || void 0 === a && "" === r ? p({
  897. nullInput: !0
  898. }) : ("string" == typeof r && (e._i = r = e._locale.preparse(r)), k(r) ? new M(dt(r)) : (d(r) ? e._d = r: o(a) ?
  899. function(e) {
  900. var t, n, s, i, r;
  901. if (0 === e._f.length) return g(e).invalidFormat = !0,
  902. e._d = new Date(NaN);
  903. for (i = 0; i < e._f.length; i++) r = 0,
  904. t = w({},
  905. e),
  906. null != e._useUTC && (t._useUTC = e._useUTC),
  907. t._f = e._f[i],
  908. Yt(t),
  909. v(t) && (r += g(t).charsLeftOver, r += 10 * g(t).unusedTokens.length, g(t).score = r, (null == s || r < s) && (s = r, n = t));
  910. _(e, n || t)
  911. } (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),
  912. function(e) {
  913. return parseInt(e, 10)
  914. }), ft(t)) : u(n) ?
  915. function(e) {
  916. if (!e._d) {
  917. var t = R(e._i);
  918. e._a = f([t.year, t.month, t.day || t.date, t.hour, t.minute, t.second, t.millisecond],
  919. function(e) {
  920. return e && parseInt(e, 10)
  921. }),
  922. ft(e)
  923. }
  924. } (t) : h(n) ? t._d = new Date(n) : c.createFromInputFallback(t), v(e) || (e._d = null), e))
  925. }
  926. function Tt(e, t, n, s, i) {
  927. var r, a = {};
  928. return ! 0 !== n && !1 !== n || (s = n, n = void 0),
  929. (u(e) &&
  930. function(e) {
  931. if (Object.getOwnPropertyNames) return 0 === Object.getOwnPropertyNames(e).length;
  932. var t;
  933. for (t in e) if (e.hasOwnProperty(t)) return ! 1;
  934. return ! 0
  935. } (e) || o(e) && 0 === e.length) && (e = void 0),
  936. a._isAMomentObject = !0,
  937. a._useUTC = a._isUTC = i,
  938. a._l = n,
  939. a._i = e,
  940. a._f = t,
  941. a._strict = s,
  942. (r = new M(dt(Ot(a))))._nextDay && (r.add(1, "d"), r._nextDay = void 0),
  943. r
  944. }
  945. function bt(e, t, n, s) {
  946. return Tt(e, t, n, s, !1)
  947. }
  948. 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.",
  949. function(e) {
  950. e._d = new Date(e._i + (e._useUTC ? " UTC": ""))
  951. }),
  952. c.ISO_8601 = function() {},
  953. c.RFC_2822 = function() {};
  954. var xt = n("moment().min is deprecated, use moment.max instead. http://momentjs.com/guides/#/warnings/min-max/",
  955. function() {
  956. var e = bt.apply(null, arguments);
  957. return this.isValid() && e.isValid() ? e < this ? this: e: p()
  958. }),
  959. Pt = n("moment().max is deprecated, use moment.min instead. http://momentjs.com/guides/#/warnings/min-max/",
  960. function() {
  961. var e = bt.apply(null, arguments);
  962. return this.isValid() && e.isValid() ? this < e ? this: e: p()
  963. });
  964. function Wt(e, t) {
  965. var n, s;
  966. if (1 === t.length && o(t[0]) && (t = t[0]), !t.length) return bt();
  967. for (n = t[0], s = 1; s < t.length; ++s) t[s].isValid() && !t[s][e](n) || (n = t[s]);
  968. return n
  969. }
  970. var Ct = ["year", "quarter", "month", "week", "day", "hour", "minute", "second", "millisecond"];
  971. function Ht(e) {
  972. var t = R(e),
  973. n = t.year || 0,
  974. s = t.quarter || 0,
  975. i = t.month || 0,
  976. r = t.week || t.isoWeek || 0,
  977. a = t.day || 0,
  978. o = t.hour || 0,
  979. u = t.minute || 0,
  980. l = t.second || 0,
  981. h = t.millisecond || 0;
  982. this._isValid = function(e) {
  983. for (var t in e) if ( - 1 === Ye.call(Ct, t) || null != e[t] && isNaN(e[t])) return ! 1;
  984. for (var n = !1,
  985. s = 0; s < Ct.length; ++s) if (e[Ct[s]]) {
  986. if (n) return ! 1;
  987. parseFloat(e[Ct[s]]) !== D(e[Ct[s]]) && (n = !0)
  988. }
  989. return ! 0
  990. } (t),
  991. this._milliseconds = +h + 1e3 * l + 6e4 * u + 1e3 * o * 60 * 60,
  992. this._days = +a + 7 * r,
  993. this._months = +i + 3 * s + 12 * n,
  994. this._data = {},
  995. this._locale = ht(),
  996. this._bubble()
  997. }
  998. function Rt(e) {
  999. return e instanceof Ht
  1000. }
  1001. function Ut(e) {
  1002. return e < 0 ? -1 * Math.round( - 1 * e) : Math.round(e)
  1003. }
  1004. function Ft(e, n) {
  1005. I(e, 0, 0,
  1006. function() {
  1007. var e = this.utcOffset(),
  1008. t = "+";
  1009. return e < 0 && (e = -e, t = "-"),
  1010. t + L(~~ (e / 60), 2) + n + L(~~e % 60, 2)
  1011. })
  1012. }
  1013. Ft("Z", ":"),
  1014. Ft("ZZ", ""),
  1015. ue("Z", re),
  1016. ue("ZZ", re),
  1017. ce(["Z", "ZZ"],
  1018. function(e, t, n) {
  1019. n._useUTC = !0,
  1020. n._tzm = Nt(re, e)
  1021. });
  1022. var Lt = /([\+\-]|\d\d)/gi;
  1023. function Nt(e, t) {
  1024. var n = (t || "").match(e);
  1025. if (null === n) return null;
  1026. var s = ((n[n.length - 1] || []) + "").match(Lt) || ["-", 0, 0],
  1027. i = 60 * s[1] + D(s[2]);
  1028. return 0 === i ? 0 : "+" === s[0] ? i: -i
  1029. }
  1030. function Gt(e, t) {
  1031. var n, s;
  1032. 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()
  1033. }
  1034. function Vt(e) {
  1035. return 15 * -Math.round(e._d.getTimezoneOffset() / 15)
  1036. }
  1037. function Et() {
  1038. return !! this.isValid() && (this._isUTC && 0 === this._offset)
  1039. }
  1040. c.updateOffset = function() {};
  1041. var It = /^(\-|\+)?(?:(\d*)[. ])?(\d+)\:(\d+)(?:\:(\d+)(\.\d*)?)?$/,
  1042. At = /^(-|\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/;
  1043. function jt(e, t) {
  1044. var n, s, i, r = e,
  1045. a = null;
  1046. return Rt(e) ? r = {
  1047. ms: e._milliseconds,
  1048. d: e._days,
  1049. M: e._months
  1050. }: h(e) ? (r = {},
  1051. t ? r[t] = e: r.milliseconds = e) : (a = It.exec(e)) ? (n = "-" === a[1] ? -1 : 1, r = {
  1052. y: 0,
  1053. d: D(a[ye]) * n,
  1054. h: D(a[ge]) * n,
  1055. m: D(a[ve]) * n,
  1056. s: D(a[pe]) * n,
  1057. ms: D(Ut(1e3 * a[we])) * n
  1058. }) : (a = At.exec(e)) ? (n = "-" === a[1] ? -1 : 1, r = {
  1059. y: Zt(a[2], n),
  1060. M: Zt(a[3], n),
  1061. w: Zt(a[4], n),
  1062. d: Zt(a[5], n),
  1063. h: Zt(a[6], n),
  1064. m: Zt(a[7], n),
  1065. s: Zt(a[8], n)
  1066. }) : null == r ? r = {}: "object" == typeof r && ("from" in r || "to" in r) && (i = function(e, t) {
  1067. var n;
  1068. if (!e.isValid() || !t.isValid()) return {
  1069. milliseconds: 0,
  1070. months: 0
  1071. };
  1072. t = Gt(t, e),
  1073. e.isBefore(t) ? n = zt(e, t) : ((n = zt(t, e)).milliseconds = -n.milliseconds, n.months = -n.months);
  1074. return n
  1075. } (bt(r.from), bt(r.to)), (r = {}).ms = i.milliseconds, r.M = i.months),
  1076. s = new Ht(r),
  1077. Rt(e) && m(e, "_locale") && (s._locale = e._locale),
  1078. s
  1079. }
  1080. function Zt(e, t) {
  1081. var n = e && parseFloat(e.replace(",", "."));
  1082. return (isNaN(n) ? 0 : n) * t
  1083. }
  1084. function zt(e, t) {
  1085. var n = {};
  1086. return n.months = t.month() - e.month() + 12 * (t.year() - e.year()),
  1087. e.clone().add(n.months, "M").isAfter(t) && --n.months,
  1088. n.milliseconds = +t - +e.clone().add(n.months, "M"),
  1089. n
  1090. }
  1091. function $t(s, i) {
  1092. return function(e, t) {
  1093. var n;
  1094. 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),
  1095. qt(this, jt(e = "string" == typeof e ? +e: e, t), s),
  1096. this
  1097. }
  1098. }
  1099. function qt(e, t, n, s) {
  1100. var i = t._milliseconds,
  1101. r = Ut(t._days),
  1102. a = Ut(t._months);
  1103. 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))
  1104. }
  1105. jt.fn = Ht.prototype,
  1106. jt.invalid = function() {
  1107. return jt(NaN)
  1108. };
  1109. var Jt = $t(1, "add"),
  1110. Bt = $t( - 1, "subtract");
  1111. function Qt(e, t) {
  1112. var n = 12 * (t.year() - e.year()) + (t.month() - e.month()),
  1113. s = e.clone().add(n, "months");
  1114. return - (n + (t - s < 0 ? (t - s) / (s - e.clone().add(n - 1, "months")) : (t - s) / (e.clone().add(n + 1, "months") - s))) || 0
  1115. }
  1116. function Xt(e) {
  1117. var t;
  1118. return void 0 === e ? this._locale._abbr: (null != (t = ht(e)) && (this._locale = t), this)
  1119. }
  1120. c.defaultFormat = "YYYY-MM-DDTHH:mm:ssZ",
  1121. c.defaultFormatUtc = "YYYY-MM-DDTHH:mm:ss[Z]";
  1122. var Kt = n("moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.",
  1123. function(e) {
  1124. return void 0 === e ? this.localeData() : this.locale(e)
  1125. });
  1126. function en() {
  1127. return this._locale
  1128. }
  1129. var tn = 126227808e5;
  1130. function nn(e, t) {
  1131. return (e % t + t) % t
  1132. }
  1133. function sn(e, t, n) {
  1134. return e < 100 && 0 <= e ? new Date(e + 400, t, n) - tn: new Date(e, t, n).valueOf()
  1135. }
  1136. function rn(e, t, n) {
  1137. return e < 100 && 0 <= e ? Date.UTC(e + 400, t, n) - tn: Date.UTC(e, t, n)
  1138. }
  1139. function an(e, t) {
  1140. I(0, [e, e.length], 0, t)
  1141. }
  1142. function on(e, t, n, s, i) {
  1143. var r;
  1144. return null == e ? Ie(this, s, i).year: ((r = Ae(e, s, i)) < t && (t = r),
  1145. function(e, t, n, s, i) {
  1146. var r = Ee(e, t, n, s, i),
  1147. a = Ge(r.year, 0, r.dayOfYear);
  1148. return this.year(a.getUTCFullYear()),
  1149. this.month(a.getUTCMonth()),
  1150. this.date(a.getUTCDate()),
  1151. this
  1152. }.call(this, e, t, n, s, i))
  1153. }
  1154. I(0, ["gg", 2], 0,
  1155. function() {
  1156. return this.weekYear() % 100
  1157. }),
  1158. I(0, ["GG", 2], 0,
  1159. function() {
  1160. return this.isoWeekYear() % 100
  1161. }),
  1162. an("gggg", "weekYear"),
  1163. an("ggggg", "weekYear"),
  1164. an("GGGG", "isoWeekYear"),
  1165. an("GGGGG", "isoWeekYear"),
  1166. C("weekYear", "gg"),
  1167. C("isoWeekYear", "GG"),
  1168. F("weekYear", 1),
  1169. F("isoWeekYear", 1),
  1170. ue("G", se),
  1171. ue("g", se),
  1172. ue("GG", B, z),
  1173. ue("gg", B, z),
  1174. ue("GGGG", ee, q),
  1175. ue("gggg", ee, q),
  1176. ue("GGGGG", te, J),
  1177. ue("ggggg", te, J),
  1178. fe(["gggg", "ggggg", "GGGG", "GGGGG"],
  1179. function(e, t, n, s) {
  1180. t[s.substr(0, 2)] = D(e)
  1181. }),
  1182. fe(["gg", "GG"],
  1183. function(e, t, n, s) {
  1184. t[s] = c.parseTwoDigitYear(e)
  1185. }),
  1186. I("Q", 0, "Qo", "quarter"),
  1187. C("quarter", "Q"),
  1188. F("quarter", 7),
  1189. ue("Q", Z),
  1190. ce("Q",
  1191. function(e, t) {
  1192. t[_e] = 3 * (D(e) - 1)
  1193. }),
  1194. I("D", ["DD", 2], "Do", "date"),
  1195. C("date", "D"),
  1196. F("date", 9),
  1197. ue("D", B),
  1198. ue("DD", B, z),
  1199. ue("Do",
  1200. function(e, t) {
  1201. return e ? t._dayOfMonthOrdinalParse || t._ordinalParse: t._dayOfMonthOrdinalParseLenient
  1202. }),
  1203. ce(["D", "DD"], ye),
  1204. ce("Do",
  1205. function(e, t) {
  1206. t[ye] = D(e.match(B)[0])
  1207. });
  1208. var un = Te("Date", !0);
  1209. I("DDD", ["DDDD", 3], "DDDo", "dayOfYear"),
  1210. C("dayOfYear", "DDD"),
  1211. F("dayOfYear", 4),
  1212. ue("DDD", K),
  1213. ue("DDDD", $),
  1214. ce(["DDD", "DDDD"],
  1215. function(e, t, n) {
  1216. n._dayOfYear = D(e)
  1217. }),
  1218. I("m", ["mm", 2], 0, "minute"),
  1219. C("minute", "m"),
  1220. F("minute", 14),
  1221. ue("m", B),
  1222. ue("mm", B, z),
  1223. ce(["m", "mm"], ve);
  1224. var ln = Te("Minutes", !1);
  1225. I("s", ["ss", 2], 0, "second"),
  1226. C("second", "s"),
  1227. F("second", 15),
  1228. ue("s", B),
  1229. ue("ss", B, z),
  1230. ce(["s", "ss"], pe);
  1231. var hn, dn = Te("Seconds", !1);
  1232. for (I("S", 0, 0,
  1233. function() {
  1234. return~~ (this.millisecond() / 100)
  1235. }), I(0, ["SS", 2], 0,
  1236. function() {
  1237. return~~ (this.millisecond() / 10)
  1238. }), I(0, ["SSS", 3], 0, "millisecond"), I(0, ["SSSS", 4], 0,
  1239. function() {
  1240. return 10 * this.millisecond()
  1241. }), I(0, ["SSSSS", 5], 0,
  1242. function() {
  1243. return 100 * this.millisecond()
  1244. }), I(0, ["SSSSSS", 6], 0,
  1245. function() {
  1246. return 1e3 * this.millisecond()
  1247. }), I(0, ["SSSSSSS", 7], 0,
  1248. function() {
  1249. return 1e4 * this.millisecond()
  1250. }), I(0, ["SSSSSSSS", 8], 0,
  1251. function() {
  1252. return 1e5 * this.millisecond()
  1253. }), I(0, ["SSSSSSSSS", 9], 0,
  1254. function() {
  1255. return 1e6 * this.millisecond()
  1256. }), 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);
  1257. function cn(e, t) {
  1258. t[we] = D(1e3 * ("0." + e))
  1259. }
  1260. for (hn = "S"; hn.length <= 9; hn += "S") ce(hn, cn);
  1261. var fn = Te("Milliseconds", !1);
  1262. I("z", 0, 0, "zoneAbbr"),
  1263. I("zz", 0, 0, "zoneName");
  1264. var mn = M.prototype;
  1265. function _n(e) {
  1266. return e
  1267. }
  1268. mn.add = Jt,
  1269. mn.calendar = function(e, t) {
  1270. var n = e || bt(),
  1271. s = Gt(n, this).startOf("day"),
  1272. i = c.calendarFormat(this, s) || "sameElse",
  1273. r = t && (b(t[i]) ? t[i].call(this, n) : t[i]);
  1274. return this.format(r || this.localeData().calendar(i, this, bt(n)))
  1275. },
  1276. mn.clone = function() {
  1277. return new M(this)
  1278. },
  1279. mn.diff = function(e, t, n) {
  1280. var s, i, r;
  1281. if (!this.isValid()) return NaN;
  1282. if (! (s = Gt(e, this)).isValid()) return NaN;
  1283. switch (i = 6e4 * (s.utcOffset() - this.utcOffset()), t = H(t)) {
  1284. case "year":
  1285. r = Qt(this, s) / 12;
  1286. break;
  1287. case "month":
  1288. r = Qt(this, s);
  1289. break;
  1290. case "quarter":
  1291. r = Qt(this, s) / 3;
  1292. break;
  1293. case "second":
  1294. r = (this - s) / 1e3;
  1295. break;
  1296. case "minute":
  1297. r = (this - s) / 6e4;
  1298. break;
  1299. case "hour":
  1300. r = (this - s) / 36e5;
  1301. break;
  1302. case "day":
  1303. r = (this - s - i) / 864e5;
  1304. break;
  1305. case "week":
  1306. r = (this - s - i) / 6048e5;
  1307. break;
  1308. default:
  1309. r = this - s
  1310. }
  1311. return n ? r: S(r)
  1312. },
  1313. mn.endOf = function(e) {
  1314. var t;
  1315. if (void 0 === (e = H(e)) || "millisecond" === e || !this.isValid()) return this;
  1316. var n = this._isUTC ? rn: sn;
  1317. switch (e) {
  1318. case "year":
  1319. t = n(this.year() + 1, 0, 1) - 1;
  1320. break;
  1321. case "quarter":
  1322. t = n(this.year(), this.month() - this.month() % 3 + 3, 1) - 1;
  1323. break;
  1324. case "month":
  1325. t = n(this.year(), this.month() + 1, 1) - 1;
  1326. break;
  1327. case "week":
  1328. t = n(this.year(), this.month(), this.date() - this.weekday() + 7) - 1;
  1329. break;
  1330. case "isoWeek":
  1331. t = n(this.year(), this.month(), this.date() - (this.isoWeekday() - 1) + 7) - 1;
  1332. break;
  1333. case "day":
  1334. case "date":
  1335. t = n(this.year(), this.month(), this.date() + 1) - 1;
  1336. break;
  1337. case "hour":
  1338. t = this._d.valueOf(),
  1339. t += 36e5 - nn(t + (this._isUTC ? 0 : 6e4 * this.utcOffset()), 36e5) - 1;
  1340. break;
  1341. case "minute":
  1342. t = this._d.valueOf(),
  1343. t += 6e4 - nn(t, 6e4) - 1;
  1344. break;
  1345. case "second":
  1346. t = this._d.valueOf(),
  1347. t += 1e3 - nn(t, 1e3) - 1;
  1348. break
  1349. }
  1350. return this._d.setTime(t),
  1351. c.updateOffset(this, !0),
  1352. this
  1353. },
  1354. mn.format = function(e) {
  1355. e || (e = this.isUtc() ? c.defaultFormatUtc: c.defaultFormat);
  1356. var t = A(this, e);
  1357. return this.localeData().postformat(t)
  1358. },
  1359. mn.from = function(e, t) {
  1360. return this.isValid() && (k(e) && e.isValid() || bt(e).isValid()) ? jt({
  1361. to: this,
  1362. from: e
  1363. }).locale(this.locale()).humanize(!t) : this.localeData().invalidDate()
  1364. },
  1365. mn.fromNow = function(e) {
  1366. return this.from(bt(), e)
  1367. },
  1368. mn.to = function(e, t) {
  1369. return this.isValid() && (k(e) && e.isValid() || bt(e).isValid()) ? jt({
  1370. from: this,
  1371. to: e
  1372. }).locale(this.locale()).humanize(!t) : this.localeData().invalidDate()
  1373. },
  1374. mn.toNow = function(e) {
  1375. return this.to(bt(), e)
  1376. },
  1377. mn.get = function(e) {
  1378. return b(this[e = H(e)]) ? this[e]() : this
  1379. },
  1380. mn.invalidAt = function() {
  1381. return g(this).overflow
  1382. },
  1383. mn.isAfter = function(e, t) {
  1384. var n = k(e) ? e: bt(e);
  1385. return ! (!this.isValid() || !n.isValid()) && ("millisecond" === (t = H(t) || "millisecond") ? this.valueOf() > n.valueOf() : n.valueOf() < this.clone().startOf(t).valueOf())
  1386. },
  1387. mn.isBefore = function(e, t) {
  1388. var n = k(e) ? e: bt(e);
  1389. return ! (!this.isValid() || !n.isValid()) && ("millisecond" === (t = H(t) || "millisecond") ? this.valueOf() < n.valueOf() : this.clone().endOf(t).valueOf() < n.valueOf())
  1390. },
  1391. mn.isBetween = function(e, t, n, s) {
  1392. var i = k(e) ? e: bt(e),
  1393. r = k(t) ? t: bt(t);
  1394. 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))
  1395. },
  1396. mn.isSame = function(e, t) {
  1397. var n, s = k(e) ? e: bt(e);
  1398. 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()))
  1399. },
  1400. mn.isSameOrAfter = function(e, t) {
  1401. return this.isSame(e, t) || this.isAfter(e, t)
  1402. },
  1403. mn.isSameOrBefore = function(e, t) {
  1404. return this.isSame(e, t) || this.isBefore(e, t)
  1405. },
  1406. mn.isValid = function() {
  1407. return v(this)
  1408. },
  1409. mn.lang = Kt,
  1410. mn.locale = Xt,
  1411. mn.localeData = en,
  1412. mn.max = Pt,
  1413. mn.min = xt,
  1414. mn.parsingFlags = function() {
  1415. return _({},
  1416. g(this))
  1417. },
  1418. mn.set = function(e, t) {
  1419. if ("object" == typeof e) for (var n = function(e) {
  1420. var t = [];
  1421. for (var n in e) t.push({
  1422. unit: n,
  1423. priority: U[n]
  1424. });
  1425. return t.sort(function(e, t) {
  1426. return e.priority - t.priority
  1427. }),
  1428. t
  1429. } (e = R(e)), s = 0; s < n.length; s++) this[n[s].unit](e[n[s].unit]);
  1430. else if (b(this[e = H(e)])) return this[e](t);
  1431. return this
  1432. },
  1433. mn.startOf = function(e) {
  1434. var t;
  1435. if (void 0 === (e = H(e)) || "millisecond" === e || !this.isValid()) return this;
  1436. var n = this._isUTC ? rn: sn;
  1437. switch (e) {
  1438. case "year":
  1439. t = n(this.year(), 0, 1);
  1440. break;
  1441. case "quarter":
  1442. t = n(this.year(), this.month() - this.month() % 3, 1);
  1443. break;
  1444. case "month":
  1445. t = n(this.year(), this.month(), 1);
  1446. break;
  1447. case "week":
  1448. t = n(this.year(), this.month(), this.date() - this.weekday());
  1449. break;
  1450. case "isoWeek":
  1451. t = n(this.year(), this.month(), this.date() - (this.isoWeekday() - 1));
  1452. break;
  1453. case "day":
  1454. case "date":
  1455. t = n(this.year(), this.month(), this.date());
  1456. break;
  1457. case "hour":
  1458. t = this._d.valueOf(),
  1459. t -= nn(t + (this._isUTC ? 0 : 6e4 * this.utcOffset()), 36e5);
  1460. break;
  1461. case "minute":
  1462. t = this._d.valueOf(),
  1463. t -= nn(t, 6e4);
  1464. break;
  1465. case "second":
  1466. t = this._d.valueOf(),
  1467. t -= nn(t, 1e3);
  1468. break
  1469. }
  1470. return this._d.setTime(t),
  1471. c.updateOffset(this, !0),
  1472. this
  1473. },
  1474. mn.subtract = Bt,
  1475. mn.toArray = function() {
  1476. var e = this;
  1477. return [e.year(), e.month(), e.date(), e.hour(), e.minute(), e.second(), e.millisecond()]
  1478. },
  1479. mn.toObject = function() {
  1480. var e = this;
  1481. return {
  1482. years: e.year(),
  1483. months: e.month(),
  1484. date: e.date(),
  1485. hours: e.hours(),
  1486. minutes: e.minutes(),
  1487. seconds: e.seconds(),
  1488. milliseconds: e.milliseconds()
  1489. }
  1490. },
  1491. mn.toDate = function() {
  1492. return new Date(this.valueOf())
  1493. },
  1494. mn.toISOString = function(e) {
  1495. if (!this.isValid()) return null;
  1496. var t = !0 !== e,
  1497. n = t ? this.clone().utc() : this;
  1498. 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")
  1499. },
  1500. mn.inspect = function() {
  1501. if (!this.isValid()) return "moment.invalid(/* " + this._i + " */)";
  1502. var e = "moment",
  1503. t = "";
  1504. this.isLocal() || (e = 0 === this.utcOffset() ? "moment.utc": "moment.parseZone", t = "Z");
  1505. var n = "[" + e + '("]',
  1506. s = 0 <= this.year() && this.year() <= 9999 ? "YYYY": "YYYYYY",
  1507. i = t + '[")]';
  1508. return this.format(n + s + "-MM-DD[T]HH:mm:ss.SSS" + i)
  1509. },
  1510. mn.toJSON = function() {
  1511. return this.isValid() ? this.toISOString() : null
  1512. },
  1513. mn.toString = function() {
  1514. return this.clone().locale("en").format("ddd MMM DD YYYY HH:mm:ss [GMT]ZZ")
  1515. },
  1516. mn.unix = function() {
  1517. return Math.floor(this.valueOf() / 1e3)
  1518. },
  1519. mn.valueOf = function() {
  1520. return this._d.valueOf() - 6e4 * (this._offset || 0)
  1521. },
  1522. mn.creationData = function() {
  1523. return {
  1524. input: this._i,
  1525. format: this._f,
  1526. locale: this._locale,
  1527. isUTC: this._isUTC,
  1528. strict: this._strict
  1529. }
  1530. },
  1531. mn.year = Oe,
  1532. mn.isLeapYear = function() {
  1533. return De(this.year())
  1534. },
  1535. mn.weekYear = function(e) {
  1536. return on.call(this, e, this.week(), this.weekday(), this.localeData()._week.dow, this.localeData()._week.doy)
  1537. },
  1538. mn.isoWeekYear = function(e) {
  1539. return on.call(this, e, this.isoWeek(), this.isoWeekday(), 1, 4)
  1540. },
  1541. mn.quarter = mn.quarters = function(e) {
  1542. return null == e ? Math.ceil((this.month() + 1) / 3) : this.month(3 * (e - 1) + this.month() % 3)
  1543. },
  1544. mn.month = Ue,
  1545. mn.daysInMonth = function() {
  1546. return Pe(this.year(), this.month())
  1547. },
  1548. mn.week = mn.weeks = function(e) {
  1549. var t = this.localeData().week(this);
  1550. return null == e ? t: this.add(7 * (e - t), "d")
  1551. },
  1552. mn.isoWeek = mn.isoWeeks = function(e) {
  1553. var t = Ie(this, 1, 4).week;
  1554. return null == e ? t: this.add(7 * (e - t), "d")
  1555. },
  1556. mn.weeksInYear = function() {
  1557. var e = this.localeData()._week;
  1558. return Ae(this.year(), e.dow, e.doy)
  1559. },
  1560. mn.isoWeeksInYear = function() {
  1561. return Ae(this.year(), 1, 4)
  1562. },
  1563. mn.date = un,
  1564. mn.day = mn.days = function(e) {
  1565. if (!this.isValid()) return null != e ? this: NaN;
  1566. var t, n, s = this._isUTC ? this._d.getUTCDay() : this._d.getDay();
  1567. 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
  1568. },
  1569. mn.weekday = function(e) {
  1570. if (!this.isValid()) return null != e ? this: NaN;
  1571. var t = (this.day() + 7 - this.localeData()._week.dow) % 7;
  1572. return null == e ? t: this.add(e - t, "d")
  1573. },
  1574. mn.isoWeekday = function(e) {
  1575. if (!this.isValid()) return null != e ? this: NaN;
  1576. if (null == e) return this.day() || 7;
  1577. var t, n, s = (t = e, n = this.localeData(), "string" == typeof t ? n.weekdaysParse(t) % 7 || 7 : isNaN(t) ? null: t);
  1578. return this.day(this.day() % 7 ? s: s - 7)
  1579. },
  1580. mn.dayOfYear = function(e) {
  1581. var t = Math.round((this.clone().startOf("day") - this.clone().startOf("year")) / 864e5) + 1;
  1582. return null == e ? t: this.add(e - t, "d")
  1583. },
  1584. mn.hour = mn.hours = nt,
  1585. mn.minute = mn.minutes = ln,
  1586. mn.second = mn.seconds = dn,
  1587. mn.millisecond = mn.milliseconds = fn,
  1588. mn.utcOffset = function(e, t, n) {
  1589. var s, i = this._offset || 0;
  1590. if (!this.isValid()) return null != e ? this: NaN;
  1591. if (null == e) return this._isUTC ? i: Vt(this);
  1592. if ("string" == typeof e) {
  1593. if (null === (e = Nt(re, e))) return this
  1594. } else Math.abs(e) < 16 && !n && (e *= 60);
  1595. return ! this._isUTC && t && (s = Vt(this)),
  1596. this._offset = e,
  1597. this._isUTC = !0,
  1598. null != s && this.add(s, "m"),
  1599. 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)),
  1600. this
  1601. },
  1602. mn.utc = function(e) {
  1603. return this.utcOffset(0, e)
  1604. },
  1605. mn.local = function(e) {
  1606. return this._isUTC && (this.utcOffset(0, e), this._isUTC = !1, e && this.subtract(Vt(this), "m")),
  1607. this
  1608. },
  1609. mn.parseZone = function() {
  1610. if (null != this._tzm) this.utcOffset(this._tzm, !1, !0);
  1611. else if ("string" == typeof this._i) {
  1612. var e = Nt(ie, this._i);
  1613. null != e ? this.utcOffset(e) : this.utcOffset(0, !0)
  1614. }
  1615. return this
  1616. },
  1617. mn.hasAlignedHourOffset = function(e) {
  1618. return !! this.isValid() && (e = e ? bt(e).utcOffset() : 0, (this.utcOffset() - e) % 60 == 0)
  1619. },
  1620. mn.isDST = function() {
  1621. return this.utcOffset() > this.clone().month(0).utcOffset() || this.utcOffset() > this.clone().month(5).utcOffset()
  1622. },
  1623. mn.isLocal = function() {
  1624. return !! this.isValid() && !this._isUTC
  1625. },
  1626. mn.isUtcOffset = function() {
  1627. return !! this.isValid() && this._isUTC
  1628. },
  1629. mn.isUtc = Et,
  1630. mn.isUTC = Et,
  1631. mn.zoneAbbr = function() {
  1632. return this._isUTC ? "UTC": ""
  1633. },
  1634. mn.zoneName = function() {
  1635. return this._isUTC ? "Coordinated Universal Time": ""
  1636. },
  1637. mn.dates = n("dates accessor is deprecated. Use date instead.", un),
  1638. mn.months = n("months accessor is deprecated. Use month instead", Ue),
  1639. mn.years = n("years accessor is deprecated. Use year instead", Oe),
  1640. mn.zone = n("moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/",
  1641. function(e, t) {
  1642. return null != e ? ("string" != typeof e && (e = -e), this.utcOffset(e, t), this) : -this.utcOffset()
  1643. }),
  1644. mn.isDSTShifted = n("isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information",
  1645. function() {
  1646. if (!l(this._isDSTShifted)) return this._isDSTShifted;
  1647. var e = {};
  1648. if (w(e, this), (e = Ot(e))._a) {
  1649. var t = e._isUTC ? y(e._a) : bt(e._a);
  1650. this._isDSTShifted = this.isValid() && 0 < a(e._a, t.toArray())
  1651. } else this._isDSTShifted = !1;
  1652. return this._isDSTShifted
  1653. });
  1654. var yn = P.prototype;
  1655. function gn(e, t, n, s) {
  1656. var i = ht(),
  1657. r = y().set(s, t);
  1658. return i[n](r, e)
  1659. }
  1660. function vn(e, t, n) {
  1661. if (h(e) && (t = e, e = void 0), e = e || "", null != t) return gn(e, t, n, "month");
  1662. var s, i = [];
  1663. for (s = 0; s < 12; s++) i[s] = gn(e, s, n, "month");
  1664. return i
  1665. }
  1666. function pn(e, t, n, s) {
  1667. t = ("boolean" == typeof e ? h(t) && (n = t, t = void 0) : (t = e, e = !1, h(n = t) && (n = t, t = void 0)), t || "");
  1668. var i, r = ht(),
  1669. a = e ? r._week.dow: 0;
  1670. if (null != n) return gn(t, (n + a) % 7, s, "day");
  1671. var o = [];
  1672. for (i = 0; i < 7; i++) o[i] = gn(t, (i + a) % 7, s, "day");
  1673. return o
  1674. }
  1675. yn.calendar = function(e, t, n) {
  1676. var s = this._calendar[e] || this._calendar.sameElse;
  1677. return b(s) ? s.call(t, n) : s
  1678. },
  1679. yn.longDateFormat = function(e) {
  1680. var t = this._longDateFormat[e],
  1681. n = this._longDateFormat[e.toUpperCase()];
  1682. return t || !n ? t: (this._longDateFormat[e] = n.replace(/MMMM|MM|DD|dddd/g,
  1683. function(e) {
  1684. return e.slice(1)
  1685. }), this._longDateFormat[e])
  1686. },
  1687. yn.invalidDate = function() {
  1688. return this._invalidDate
  1689. },
  1690. yn.ordinal = function(e) {
  1691. return this._ordinal.replace("%d", e)
  1692. },
  1693. yn.preparse = _n,
  1694. yn.postformat = _n,
  1695. yn.relativeTime = function(e, t, n, s) {
  1696. var i = this._relativeTime[n];
  1697. return b(i) ? i(e, t, n, s) : i.replace(/%d/i, e)
  1698. },
  1699. yn.pastFuture = function(e, t) {
  1700. var n = this._relativeTime[0 < e ? "future": "past"];
  1701. return b(n) ? n(t) : n.replace(/%s/i, t)
  1702. },
  1703. yn.set = function(e) {
  1704. var t, n;
  1705. for (n in e) b(t = e[n]) ? this[n] = t: this["_" + n] = t;
  1706. this._config = e,
  1707. this._dayOfMonthOrdinalParseLenient = new RegExp((this._dayOfMonthOrdinalParse.source || this._ordinalParse.source) + "|" + /\d{1,2}/.source)
  1708. },
  1709. yn.months = function(e, t) {
  1710. 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
  1711. },
  1712. yn.monthsShort = function(e, t) {
  1713. 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
  1714. },
  1715. yn.monthsParse = function(e, t, n) {
  1716. var s, i, r;
  1717. if (this._monthsParseExact) return function(e, t, n) {
  1718. var s, i, r, a = e.toLocaleLowerCase();
  1719. if (!this._monthsParse) for (this._monthsParse = [], this._longMonthsParse = [], this._shortMonthsParse = [], s = 0; s < 12; ++s) r = y([2e3, s]),
  1720. this._shortMonthsParse[s] = this.monthsShort(r, "").toLocaleLowerCase(),
  1721. this._longMonthsParse[s] = this.months(r, "").toLocaleLowerCase();
  1722. 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
  1723. }.call(this, e, t, n);
  1724. for (this._monthsParse || (this._monthsParse = [], this._longMonthsParse = [], this._shortMonthsParse = []), s = 0; s < 12; s++) {
  1725. 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;
  1726. if (n && "MMM" === t && this._shortMonthsParse[s].test(e)) return s;
  1727. if (!n && this._monthsParse[s].test(e)) return s
  1728. }
  1729. },
  1730. yn.monthsRegex = function(e) {
  1731. 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)
  1732. },
  1733. yn.monthsShortRegex = function(e) {
  1734. 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)
  1735. },
  1736. yn.week = function(e) {
  1737. return Ie(e, this._week.dow, this._week.doy).week
  1738. },
  1739. yn.firstDayOfYear = function() {
  1740. return this._week.doy
  1741. },
  1742. yn.firstDayOfWeek = function() {
  1743. return this._week.dow
  1744. },
  1745. yn.weekdays = function(e, t) {
  1746. var n = o(this._weekdays) ? this._weekdays: this._weekdays[e && !0 !== e && this._weekdays.isFormat.test(t) ? "format": "standalone"];
  1747. return ! 0 === e ? je(n, this._week.dow) : e ? n[e.day()] : n
  1748. },
  1749. yn.weekdaysMin = function(e) {
  1750. return ! 0 === e ? je(this._weekdaysMin, this._week.dow) : e ? this._weekdaysMin[e.day()] : this._weekdaysMin
  1751. },
  1752. yn.weekdaysShort = function(e) {
  1753. return ! 0 === e ? je(this._weekdaysShort, this._week.dow) : e ? this._weekdaysShort[e.day()] : this._weekdaysShort
  1754. },
  1755. yn.weekdaysParse = function(e, t, n) {
  1756. var s, i, r;
  1757. if (this._weekdaysParseExact) return function(e, t, n) {
  1758. var s, i, r, a = e.toLocaleLowerCase();
  1759. if (!this._weekdaysParse) for (this._weekdaysParse = [], this._shortWeekdaysParse = [], this._minWeekdaysParse = [], s = 0; s < 7; ++s) r = y([2e3, 1]).day(s),
  1760. this._minWeekdaysParse[s] = this.weekdaysMin(r, "").toLocaleLowerCase(),
  1761. this._shortWeekdaysParse[s] = this.weekdaysShort(r, "").toLocaleLowerCase(),
  1762. this._weekdaysParse[s] = this.weekdays(r, "").toLocaleLowerCase();
  1763. 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
  1764. }.call(this, e, t, n);
  1765. for (this._weekdaysParse || (this._weekdaysParse = [], this._minWeekdaysParse = [], this._shortWeekdaysParse = [], this._fullWeekdaysParse = []), s = 0; s < 7; s++) {
  1766. 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;
  1767. if (n && "ddd" === t && this._shortWeekdaysParse[s].test(e)) return s;
  1768. if (n && "dd" === t && this._minWeekdaysParse[s].test(e)) return s;
  1769. if (!n && this._weekdaysParse[s].test(e)) return s
  1770. }
  1771. },
  1772. yn.weekdaysRegex = function(e) {
  1773. 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)
  1774. },
  1775. yn.weekdaysShortRegex = function(e) {
  1776. 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)
  1777. },
  1778. yn.weekdaysMinRegex = function(e) {
  1779. 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)
  1780. },
  1781. yn.isPM = function(e) {
  1782. return "p" === (e + "").toLowerCase().charAt(0)
  1783. },
  1784. yn.meridiem = function(e, t, n) {
  1785. return 11 < e ? n ? "pm": "PM": n ? "am": "AM"
  1786. },
  1787. ut("en", {
  1788. dayOfMonthOrdinalParse: /\d{1,2}(th|st|nd|rd)/,
  1789. ordinal: function(e) {
  1790. var t = e % 10;
  1791. return e + (1 === D(e % 100 / 10) ? "th": 1 === t ? "st": 2 === t ? "nd": 3 === t ? "rd": "th")
  1792. }
  1793. }),
  1794. c.lang = n("moment.lang is deprecated. Use moment.locale instead.", ut),
  1795. c.langData = n("moment.langData is deprecated. Use moment.localeData instead.", ht);
  1796. var wn = Math.abs;
  1797. function Mn(e, t, n, s) {
  1798. var i = jt(t, n);
  1799. return e._milliseconds += s * i._milliseconds,
  1800. e._days += s * i._days,
  1801. e._months += s * i._months,
  1802. e._bubble()
  1803. }
  1804. function kn(e) {
  1805. return e < 0 ? Math.floor(e) : Math.ceil(e)
  1806. }
  1807. function Sn(e) {
  1808. return 4800 * e / 146097
  1809. }
  1810. function Dn(e) {
  1811. return 146097 * e / 4800
  1812. }
  1813. function Yn(e) {
  1814. return function() {
  1815. return this.as(e)
  1816. }
  1817. }
  1818. var On = Yn("ms"),
  1819. Tn = Yn("s"),
  1820. bn = Yn("m"),
  1821. xn = Yn("h"),
  1822. Pn = Yn("d"),
  1823. Wn = Yn("w"),
  1824. Cn = Yn("M"),
  1825. Hn = Yn("Q"),
  1826. Rn = Yn("y");
  1827. function Un(e) {
  1828. return function() {
  1829. return this.isValid() ? this._data[e] : NaN
  1830. }
  1831. }
  1832. var Fn = Un("milliseconds"),
  1833. Ln = Un("seconds"),
  1834. Nn = Un("minutes"),
  1835. Gn = Un("hours"),
  1836. Vn = Un("days"),
  1837. En = Un("months"),
  1838. In = Un("years");
  1839. var An = Math.round,
  1840. jn = {
  1841. ss: 44,
  1842. s: 45,
  1843. m: 45,
  1844. h: 22,
  1845. d: 26,
  1846. M: 11
  1847. };
  1848. var Zn = Math.abs;
  1849. function zn(e) {
  1850. return (0 < e) - (e < 0) || +e
  1851. }
  1852. function $n() {
  1853. if (!this.isValid()) return this.localeData().invalidDate();
  1854. var e, t, n = Zn(this._milliseconds) / 1e3,
  1855. s = Zn(this._days),
  1856. i = Zn(this._months);
  1857. t = S((e = S(n / 60)) / 60),
  1858. n %= 60,
  1859. e %= 60;
  1860. var r = S(i / 12),
  1861. a = i %= 12,
  1862. o = s,
  1863. u = t,
  1864. l = e,
  1865. h = n ? n.toFixed(3).replace(/\.?0+$/, "") : "",
  1866. d = this.asSeconds();
  1867. if (!d) return "P0D";
  1868. var c = d < 0 ? "-": "",
  1869. f = zn(this._months) !== zn(d) ? "-": "",
  1870. m = zn(this._days) !== zn(d) ? "-": "",
  1871. _ = zn(this._milliseconds) !== zn(d) ? "-": "";
  1872. 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": "")
  1873. }
  1874. var qn = Ht.prototype;
  1875. return qn.isValid = function() {
  1876. return this._isValid
  1877. },
  1878. qn.abs = function() {
  1879. var e = this._data;
  1880. return this._milliseconds = wn(this._milliseconds),
  1881. this._days = wn(this._days),
  1882. this._months = wn(this._months),
  1883. e.milliseconds = wn(e.milliseconds),
  1884. e.seconds = wn(e.seconds),
  1885. e.minutes = wn(e.minutes),
  1886. e.hours = wn(e.hours),
  1887. e.months = wn(e.months),
  1888. e.years = wn(e.years),
  1889. this
  1890. },
  1891. qn.add = function(e, t) {
  1892. return Mn(this, e, t, 1)
  1893. },
  1894. qn.subtract = function(e, t) {
  1895. return Mn(this, e, t, -1)
  1896. },
  1897. qn.as = function(e) {
  1898. if (!this.isValid()) return NaN;
  1899. var t, n, s = this._milliseconds;
  1900. if ("month" === (e = H(e)) || "quarter" === e || "year" === e) switch (t = this._days + s / 864e5, n = this._months + Sn(t), e) {
  1901. case "month":
  1902. return n;
  1903. case "quarter":
  1904. return n / 3;
  1905. case "year":
  1906. return n / 12
  1907. } else switch (t = this._days + Math.round(Dn(this._months)), e) {
  1908. case "week":
  1909. return t / 7 + s / 6048e5;
  1910. case "day":
  1911. return t + s / 864e5;
  1912. case "hour":
  1913. return 24 * t + s / 36e5;
  1914. case "minute":
  1915. return 1440 * t + s / 6e4;
  1916. case "second":
  1917. return 86400 * t + s / 1e3;
  1918. case "millisecond":
  1919. return Math.floor(864e5 * t) + s;
  1920. default:
  1921. throw new Error("Unknown unit " + e)
  1922. }
  1923. },
  1924. qn.asMilliseconds = On,
  1925. qn.asSeconds = Tn,
  1926. qn.asMinutes = bn,
  1927. qn.asHours = xn,
  1928. qn.asDays = Pn,
  1929. qn.asWeeks = Wn,
  1930. qn.asMonths = Cn,
  1931. qn.asQuarters = Hn,
  1932. qn.asYears = Rn,
  1933. qn.valueOf = function() {
  1934. return this.isValid() ? this._milliseconds + 864e5 * this._days + this._months % 12 * 2592e6 + 31536e6 * D(this._months / 12) : NaN
  1935. },
  1936. qn._bubble = function() {
  1937. var e, t, n, s, i, r = this._milliseconds,
  1938. a = this._days,
  1939. o = this._months,
  1940. u = this._data;
  1941. return 0 <= r && 0 <= a && 0 <= o || r <= 0 && a <= 0 && o <= 0 || (r += 864e5 * kn(Dn(o) + a), o = a = 0),
  1942. u.milliseconds = r % 1e3,
  1943. e = S(r / 1e3),
  1944. u.seconds = e % 60,
  1945. t = S(e / 60),
  1946. u.minutes = t % 60,
  1947. n = S(t / 60),
  1948. u.hours = n % 24,
  1949. o += i = S(Sn(a += S(n / 24))),
  1950. a -= kn(Dn(i)),
  1951. s = S(o / 12),
  1952. o %= 12,
  1953. u.days = a,
  1954. u.months = o,
  1955. u.years = s,
  1956. this
  1957. },
  1958. qn.clone = function() {
  1959. return jt(this)
  1960. },
  1961. qn.get = function(e) {
  1962. return e = H(e),
  1963. this.isValid() ? this[e + "s"]() : NaN
  1964. },
  1965. qn.milliseconds = Fn,
  1966. qn.seconds = Ln,
  1967. qn.minutes = Nn,
  1968. qn.hours = Gn,
  1969. qn.days = Vn,
  1970. qn.weeks = function() {
  1971. return S(this.days() / 7)
  1972. },
  1973. qn.months = En,
  1974. qn.years = In,
  1975. qn.humanize = function(e) {
  1976. if (!this.isValid()) return this.localeData().invalidDate();
  1977. var t, n, s, i, r, a, o, u, l, h, d, c = this.localeData(),
  1978. 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,
  1979. function(e, t, n, s, i) {
  1980. return i.relativeTime(t || 1, !!n, e, s)
  1981. }.apply(null, d));
  1982. return e && (f = c.pastFuture( + this, f)),
  1983. c.postformat(f)
  1984. },
  1985. qn.toISOString = $n,
  1986. qn.toString = $n,
  1987. qn.toJSON = $n,
  1988. qn.locale = Xt,
  1989. qn.localeData = en,
  1990. qn.toIsoString = n("toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)", $n),
  1991. qn.lang = Kt,
  1992. I("X", 0, 0, "unix"),
  1993. I("x", 0, 0, "valueOf"),
  1994. ue("x", se),
  1995. ue("X", /[+-]?\d+(\.\d{1,3})?/),
  1996. ce("X",
  1997. function(e, t, n) {
  1998. n._d = new Date(1e3 * parseFloat(e, 10))
  1999. }),
  2000. ce("x",
  2001. function(e, t, n) {
  2002. n._d = new Date(D(e))
  2003. }),
  2004. c.version = "2.24.0",
  2005. e = bt,
  2006. c.fn = mn,
  2007. c.min = function() {
  2008. return Wt("isBefore", [].slice.call(arguments, 0))
  2009. },
  2010. c.max = function() {
  2011. return Wt("isAfter", [].slice.call(arguments, 0))
  2012. },
  2013. c.now = function() {
  2014. return Date.now ? Date.now() : +new Date
  2015. },
  2016. c.utc = y,
  2017. c.unix = function(e) {
  2018. return bt(1e3 * e)
  2019. },
  2020. c.months = function(e, t) {
  2021. return vn(e, t, "months")
  2022. },
  2023. c.isDate = d,
  2024. c.locale = ut,
  2025. c.invalid = p,
  2026. c.duration = jt,
  2027. c.isMoment = k,
  2028. c.weekdays = function(e, t, n) {
  2029. return pn(e, t, n, "weekdays")
  2030. },
  2031. c.parseZone = function() {
  2032. return bt.apply(null, arguments).parseZone()
  2033. },
  2034. c.localeData = ht,
  2035. c.isDuration = Rt,
  2036. c.monthsShort = function(e, t) {
  2037. return vn(e, t, "monthsShort")
  2038. },
  2039. c.weekdaysMin = function(e, t, n) {
  2040. return pn(e, t, n, "weekdaysMin")
  2041. },
  2042. c.defineLocale = lt,
  2043. c.updateLocale = function(e, t) {
  2044. if (null != t) {
  2045. var n, s, i = st;
  2046. null != (s = ot(e)) && (i = s._config),
  2047. (n = new P(t = x(i, t))).parentLocale = it[e],
  2048. it[e] = n,
  2049. ut(e)
  2050. } else null != it[e] && (null != it[e].parentLocale ? it[e] = it[e].parentLocale: null != it[e] && delete it[e]);
  2051. return it[e]
  2052. },
  2053. c.locales = function() {
  2054. return s(it)
  2055. },
  2056. c.weekdaysShort = function(e, t, n) {
  2057. return pn(e, t, n, "weekdaysShort")
  2058. },
  2059. c.normalizeUnits = H,
  2060. c.relativeTimeRounding = function(e) {
  2061. return void 0 === e ? An: "function" == typeof e && (An = e, !0)
  2062. },
  2063. c.relativeTimeThreshold = function(e, t) {
  2064. return void 0 !== jn[e] && (void 0 === t ? jn[e] : (jn[e] = t, "s" === e && (jn.ss = t - 1), !0))
  2065. },
  2066. c.calendarFormat = function(e, t) {
  2067. var n = e.diff(t, "days", !0);
  2068. return n < -6 ? "sameElse": n < -1 ? "lastWeek": n < 0 ? "lastDay": n < 1 ? "sameDay": n < 2 ? "nextDay": n < 7 ? "nextWeek": "sameElse"
  2069. },
  2070. c.prototype = mn,
  2071. c.HTML5_FMT = {
  2072. DATETIME_LOCAL: "YYYY-MM-DDTHH:mm",
  2073. DATETIME_LOCAL_SECONDS: "YYYY-MM-DDTHH:mm:ss",
  2074. DATETIME_LOCAL_MS: "YYYY-MM-DDTHH:mm:ss.SSS",
  2075. DATE: "YYYY-MM-DD",
  2076. TIME: "HH:mm",
  2077. TIME_SECONDS: "HH:mm:ss",
  2078. TIME_MS: "HH:mm:ss.SSS",
  2079. WEEK: "GGGG-[W]WW",
  2080. MONTH: "YYYY-MM"
  2081. },
  2082. c
  2083. });