mirror of
https://github.com/idanoo/GoScrobble.git
synced 2024-11-24 09:25:15 +00:00
1 line
232 KiB
JSON
1 line
232 KiB
JSON
{"ast":null,"code":"const e = (e, t, a) => {\n const [n, r] = e.split(\"/\"),\n [o, i] = r.split(\":\");\n return Date.UTC(a, n - 1, o, i) - 36e5 * t;\n};\n\nvar t = (t, a, n, r, o) => {\n const i = new Date(t).getUTCFullYear(),\n s = e(a, o, i),\n u = e(n, r, i);\n return t >= s && t < u;\n};\n\nvar a = e => {\n let a = e.timezones[e.tz];\n if (void 0 === a) return console.warn(\"Warning: couldn't find timezone \" + e.tz), 0;\n if (void 0 === a.dst) return a.offset;\n let n = a.offset,\n r = a.offset + 1;\n \"n\" === a.hem && (r = n - 1);\n let o = a.dst.split(\"->\");\n return !0 === t(e.epoch, o[0], o[1], n, r) ? n : r;\n};\n\nvar n,\n r = (n = Object.freeze({\n __proto__: null,\n default: {\n \"9|s\": \"2/dili,2/jayapura\",\n \"9|n\": \"2/chita,2/khandyga,2/pyongyang,2/seoul,2/tokyo,11/palau\",\n \"9.5|s|04/04:03->10/03:02\": \"4/adelaide,4/broken_hill,4/south,4/yancowinna\",\n \"9.5|s\": \"4/darwin,4/north\",\n \"8|s|03/08:01->10/04:00\": \"12/casey\",\n \"8|s\": \"2/kuala_lumpur,2/makassar,2/singapore,4/perth,2/ujung_pandang,4/west\",\n \"8|n\": \"2/brunei,2/choibalsan,2/hong_kong,2/irkutsk,2/kuching,2/macau,2/manila,2/shanghai,2/taipei,2/ulaanbaatar,2/chongqing,2/chungking,2/harbin,2/macao,2/ulan_bator\",\n \"8.75|s\": \"4/eucla\",\n \"7|s\": \"12/davis,2/jakarta,9/christmas\",\n \"7|n\": \"2/bangkok,2/barnaul,2/hovd,2/krasnoyarsk,2/novokuznetsk,2/novosibirsk,2/phnom_penh,2/pontianak,2/saigon,2/tomsk,2/vientiane,2/ho_chi_minh\",\n \"6|s\": \"12/vostok\",\n \"6|n\": \"2/almaty,2/bishkek,2/dhaka,2/omsk,2/qyzylorda,2/qostanay,2/thimphu,2/urumqi,9/chagos,2/dacca,2/kashgar,2/thimbu\",\n \"6.5|n\": \"2/rangoon,9/cocos,2/yangon\",\n \"5|s\": \"12/mawson,9/kerguelen\",\n \"5|n\": \"2/aqtau,2/aqtobe,2/ashgabat,2/atyrau,2/baku,2/dushanbe,2/karachi,2/oral,2/samarkand,2/tashkent,2/yekaterinburg,9/maldives,2/ashkhabad\",\n \"5.75|n\": \"2/katmandu,2/kathmandu\",\n \"5.5|n\": \"2/calcutta,2/colombo,2/kolkata\",\n \"4|s\": \"9/reunion\",\n \"4|n\": \"2/dubai,2/muscat,2/tbilisi,2/yerevan,8/astrakhan,8/samara,8/saratov,8/ulyanovsk,8/volgograd,2/volgograd,9/mahe,9/mauritius\",\n \"4.5|n|03/22:00->09/21:24\": \"2/tehran\",\n \"4.5|n\": \"2/kabul\",\n \"3|s\": \"12/syowa,9/antananarivo\",\n \"3|n|03/28:03->10/31:04\": \"2/famagusta,2/nicosia,8/athens,8/bucharest,8/helsinki,8/kiev,8/mariehamn,8/riga,8/sofia,8/tallinn,8/uzhgorod,8/vilnius,8/zaporozhye,8/nicosia\",\n \"3|n|03/28:02->10/31:03\": \"8/chisinau,8/tiraspol\",\n \"3|n|03/28:00->10/30:24\": \"2/beirut\",\n \"3|n|03/27:00->10/30:01\": \"2/gaza,2/hebron\",\n \"3|n|03/26:02->10/31:02\": \"2/jerusalem,2/tel_aviv\",\n \"3|n|03/26:00->10/29:01\": \"2/amman\",\n \"3|n|03/26:00->10/28:24\": \"2/damascus\",\n \"3|n\": \"0/addis_ababa,0/asmera,0/dar_es_salaam,0/djibouti,0/juba,0/kampala,0/mogadishu,0/nairobi,2/aden,2/baghdad,2/bahrain,2/kuwait,2/qatar,2/riyadh,8/istanbul,8/kirov,8/minsk,8/moscow,8/simferopol,9/comoro,9/mayotte,0/asmara,2/istanbul\",\n \"2|s|03/28:02->10/31:02\": \"12/troll\",\n \"2|s\": \"0/gaborone,0/harare,0/johannesburg,0/lubumbashi,0/lusaka,0/maputo,0/maseru,0/mbabane\",\n \"2|n|03/28:02->10/31:03\": \"0/ceuta,arctic/longyearbyen,8/amsterdam,8/andorra,8/belgrade,8/berlin,8/bratislava,8/brussels,8/budapest,8/busingen,8/copenhagen,8/gibraltar,8/ljubljana,8/luxembourg,8/madrid,8/malta,8/monaco,8/oslo,8/paris,8/podgorica,8/prague,8/rome,8/san_marino,8/sarajevo,8/skopje,8/stockholm,8/tirane,8/vaduz,8/vatican,8/vienna,8/warsaw,8/zagreb,8/zurich,3/jan_mayen\",\n \"2|n\": \"0/blantyre,0/bujumbura,0/cairo,0/khartoum,0/kigali,0/tripoli,8/kaliningrad\",\n \"1|s\": \"0/brazzaville,0/kinshasa,0/luanda,0/windhoek\",\n \"1|n|04/11:03->05/16:02\": \"0/casablanca,0/el_aaiun\",\n \"1|n|03/28:01->10/31:02\": \"3/canary,3/faeroe,3/madeira,8/dublin,8/guernsey,8/isle_of_man,8/jersey,8/lisbon,8/london,3/faroe,8/belfast\",\n \"1|n\": \"0/algiers,0/bangui,0/douala,0/lagos,0/libreville,0/malabo,0/ndjamena,0/niamey,0/porto-novo,0/tunis\",\n \"14|n\": \"11/kiritimati\",\n \"13|s|04/04:04->09/26:03\": \"11/apia\",\n \"13|s|01/15:02->11/05:03\": \"11/tongatapu\",\n \"13|n\": \"11/enderbury,11/fakaofo\",\n \"12|s|04/04:03->09/26:02\": \"12/mcmurdo,11/auckland,12/south_pole\",\n \"12|s|01/17:03->11/14:02\": \"11/fiji\",\n \"12|n\": \"2/anadyr,2/kamchatka,2/srednekolymsk,11/funafuti,11/kwajalein,11/majuro,11/nauru,11/tarawa,11/wake,11/wallis\",\n \"12.75|s|04/04:03->09/26:02\": \"11/chatham\",\n \"11|s|04/04:03->10/03:02\": \"12/macquarie\",\n \"11|s\": \"11/bougainville\",\n \"11|n\": \"2/magadan,2/sakhalin,11/efate,11/guadalcanal,11/kosrae,11/noumea,11/ponape,11/pohnpei\",\n \"11.5|n|04/04:03->10/03:02\": \"11/norfolk\",\n \"10|s|04/04:03->10/03:02\": \"4/currie,4/hobart,4/melbourne,4/sydney,4/act,4/canberra,4/nsw,4/tasmania,4/victoria\",\n \"10|s\": \"12/dumontdurville,4/brisbane,4/lindeman,11/port_moresby,4/queensland\",\n \"10|n\": \"2/ust-nera,2/vladivostok,2/yakutsk,11/guam,11/saipan,11/truk,11/chuuk,11/yap\",\n \"10.5|s|04/04:01->10/03:02\": \"4/lord_howe,4/lhi\",\n \"0|n|03/28:00->10/31:01\": \"1/scoresbysund,3/azores\",\n \"0|n\": \"0/abidjan,0/accra,0/bamako,0/banjul,0/bissau,0/conakry,0/dakar,0/freetown,0/lome,0/monrovia,0/nouakchott,0/ouagadougou,0/sao_tome,1/danmarkshavn,3/reykjavik,3/st_helena,13/gmt,13/utc,0/timbuktu,13/gmt-0,13/gmt+0,13/gmt0,13/greenwich,13/uct,13/universal,13/zulu\",\n \"-9|n|03/14:02->11/07:02\": \"1/adak,1/atka,us/aleutian\",\n \"-9|n\": \"11/gambier\",\n \"-9.5|n\": \"11/marquesas\",\n \"-8|n|03/14:02->11/07:02\": \"1/anchorage,1/juneau,1/metlakatla,1/nome,1/sitka,1/yakutat,us/alaska\",\n \"-8|n\": \"11/pitcairn\",\n \"-7|n|03/14:02->11/07:02\": \"1/los_angeles,1/santa_isabel,1/tijuana,1/vancouver,1/ensenada,6/pacific,10/bajanorte,us/pacific-new,us/pacific\",\n \"-7|n|03/08:02->11/01:01\": \"1/dawson,1/whitehorse,6/yukon\",\n \"-7|n\": \"1/creston,1/dawson_creek,1/fort_nelson,1/hermosillo,1/phoenix,us/arizona\",\n \"-6|s|04/03:22->09/04:22\": \"11/easter,7/easterisland\",\n \"-6|n|04/04:02->10/31:02\": \"1/chihuahua,1/mazatlan,10/bajasur\",\n \"-6|n|03/14:02->11/07:02\": \"1/boise,1/cambridge_bay,1/denver,1/edmonton,1/inuvik,1/ojinaga,1/yellowknife,1/shiprock,6/mountain,us/mountain\",\n \"-6|n\": \"1/belize,1/costa_rica,1/el_salvador,1/guatemala,1/managua,1/regina,1/swift_current,1/tegucigalpa,11/galapagos,6/east-saskatchewan,6/saskatchewan\",\n \"-5|s\": \"1/lima,1/rio_branco,1/porto_acre,5/acre\",\n \"-5|n|04/04:02->10/31:02\": \"1/bahia_banderas,1/merida,1/mexico_city,1/monterrey,10/general\",\n \"-5|n|03/14:02->11/07:02\": \"1/chicago,1/matamoros,1/menominee,1/rainy_river,1/rankin_inlet,1/resolute,1/winnipeg,1/indiana/knox,1/indiana/tell_city,1/north_dakota/beulah,1/north_dakota/center,1/north_dakota/new_salem,1/knox_in,6/central,us/central,us/indiana-starke\",\n \"-5|n|03/12:03->11/05:01\": \"1/north_dakota\",\n \"-5|n\": \"1/bogota,1/cancun,1/cayman,1/coral_harbour,1/eirunepe,1/guayaquil,1/jamaica,1/panama,1/atikokan\",\n \"-4|s|05/13:23->08/13:01\": \"12/palmer\",\n \"-4|s|04/03:24->09/05:00\": \"1/santiago,7/continental\",\n \"-4|s|03/27:24->10/03:00\": \"1/asuncion\",\n \"-4|s|02/16:24->11/03:00\": \"1/campo_grande,1/cuiaba\",\n \"-4|s\": \"1/la_paz,1/manaus,5/west\",\n \"-4|n|03/14:02->11/07:02\": \"1/detroit,1/grand_turk,1/indianapolis,1/iqaluit,1/louisville,1/montreal,1/nassau,1/new_york,1/nipigon,1/pangnirtung,1/port-au-prince,1/thunder_bay,1/toronto,1/indiana/marengo,1/indiana/petersburg,1/indiana/vevay,1/indiana/vincennes,1/indiana/winamac,1/kentucky/monticello,1/fort_wayne,1/indiana/indianapolis,1/kentucky/louisville,6/eastern,us/east-indiana,us/eastern,us/michigan\",\n \"-4|n|03/14:00->11/07:01\": \"1/havana\",\n \"-4|n|03/12:03->11/05:01\": \"1/indiana,1/kentucky\",\n \"-4|n\": \"1/anguilla,1/antigua,1/aruba,1/barbados,1/blanc-sablon,1/boa_vista,1/caracas,1/curacao,1/dominica,1/grenada,1/guadeloupe,1/guyana,1/kralendijk,1/lower_princes,1/marigot,1/martinique,1/montserrat,1/port_of_spain,1/porto_velho,1/puerto_rico,1/santo_domingo,1/st_barthelemy,1/st_kitts,1/st_lucia,1/st_thomas,1/st_vincent,1/tortola,1/virgin\",\n \"-3|s\": \"1/argentina,1/buenos_aires,1/catamarca,1/cordoba,1/fortaleza,1/jujuy,1/mendoza,1/montevideo,1/punta_arenas,1/sao_paulo,12/rothera,3/stanley,1/argentina/la_rioja,1/argentina/rio_gallegos,1/argentina/salta,1/argentina/san_juan,1/argentina/san_luis,1/argentina/tucuman,1/argentina/ushuaia,1/argentina/buenos_aires,1/argentina/catamarca,1/argentina/comodrivadavia,1/argentina/cordoba,1/argentina/jujuy,1/argentina/mendoza,1/rosario,5/east\",\n \"-3|n|03/14:02->11/07:02\": \"1/glace_bay,1/goose_bay,1/halifax,1/moncton,1/thule,3/bermuda,6/atlantic\",\n \"-3|n\": \"1/araguaina,1/bahia,1/belem,1/cayenne,1/maceio,1/paramaribo,1/recife,1/santarem\",\n \"-2|n|03/27:22->10/30:23\": \"1/godthab,1/nuuk\",\n \"-2|n|03/14:02->11/07:02\": \"1/miquelon\",\n \"-2|n\": \"1/noronha,3/south_georgia,5/denoronha\",\n \"-2.5|n|03/14:02->11/07:02\": \"1/st_johns,6/newfoundland\",\n \"-1|n\": \"3/cape_verde\",\n \"-11|n\": \"11/midway,11/niue,11/pago_pago,11/samoa,us/samoa\",\n \"-10|n\": \"11/honolulu,11/johnston,11/rarotonga,11/tahiti,us/hawaii\"\n }\n})) && n.default || n,\n o = [\"africa\", \"america\", \"asia\", \"atlantic\", \"australia\", \"brazil\", \"canada\", \"chile\", \"europe\", \"indian\", \"mexico\", \"pacific\", \"antarctica\", \"etc\"];\nlet i = {};\nObject.keys(r).forEach(e => {\n let t = e.split(\"|\"),\n a = {\n offset: Number(t[0]),\n hem: t[1]\n };\n t[2] && (a.dst = t[2]), r[e].split(\",\").forEach(e => {\n e = e.replace(/(^[0-9]+)\\//, (e, t) => (t = Number(t), o[t] + \"/\")), i[e] = a;\n });\n}), i.utc = {\n offset: 0,\n hem: \"n\"\n};\n\nfor (let e = -14; e <= 14; e += .5) {\n let t = e;\n t > 0 && (t = \"+\" + t);\n let a = \"etc/gmt\" + t;\n i[a] = {\n offset: -1 * e,\n hem: \"n\"\n }, a = \"utc/gmt\" + t, i[a] = {\n offset: -1 * e,\n hem: \"n\"\n };\n}\n\nconst s = /(\\-?[0-9]+)h(rs)?/i,\n u = /(\\-?[0-9]+)/,\n l = /utc([\\-+]?[0-9]+)/i,\n h = /gmt([\\-+]?[0-9]+)/i,\n c = function (e) {\n return (e = Number(e)) >= -13 && e <= 13 ? \"etc/gmt\" + (e = ((e *= -1) > 0 ? \"+\" : \"\") + e) : null;\n};\n\nvar d = i,\n m = function (e) {\n let t = e.match(s);\n if (null !== t) return c(t[1]);\n if (t = e.match(l), null !== t) return c(t[1]);\n\n if (t = e.match(h), null !== t) {\n let e = -1 * Number(t[1]);\n return c(e);\n }\n\n return t = e.match(u), null !== t ? c(t[1]) : null;\n};\n\nconst p = (() => {\n let e = (() => {\n if (\"undefined\" == typeof Intl || void 0 === Intl.DateTimeFormat) return null;\n let e = Intl.DateTimeFormat();\n if (void 0 === e || void 0 === e.resolvedOptions) return null;\n let t = e.resolvedOptions().timeZone;\n return t ? t.toLowerCase() : null;\n })();\n\n return null === e ? \"utc\" : e;\n})(),\n f = Object.keys(d).reduce((e, t) => {\n let a = t.split(\"/\")[1] || \"\";\n return a = a.replace(/_/g, \" \"), e[a] = t, e;\n}, {});\n\nvar y,\n g = (e, t) => {\n if (!e) return p;\n \"string\" != typeof e && console.error(\"Timezone must be a string - recieved: '\", e, \"'\\n\");\n let a = e.trim();\n if (a = a.toLowerCase(), !0 === t.hasOwnProperty(a)) return a;\n if (a = (e => (e = (e = (e = (e = (e = e.replace(/ time/g, \"\")).replace(/ (standard|daylight|summer)/g, \"\")).replace(/\\b(east|west|north|south)ern/g, \"$1\")).replace(/\\b(africa|america|australia)n/g, \"$1\")).replace(/\\beuropean/g, \"europe\")).replace(/\\islands/g, \"island\"))(a), !0 === t.hasOwnProperty(a)) return a;\n if (!0 === f.hasOwnProperty(a)) return f[a];\n\n if (!0 === /[0-9]/.test(a)) {\n let e = m(a);\n if (e) return e;\n }\n\n throw new Error(\"Spacetime: Cannot find timezone named: '\" + e + \"'. Please enter an IANA timezone id.\");\n},\n b = (function (e, t) {\n t.isLeapYear = e => e % 4 == 0 && e % 100 != 0 || e % 400 == 0, t.isDate = e => \"[object Date]\" === Object.prototype.toString.call(e) && !isNaN(e.valueOf()), t.isArray = e => \"[object Array]\" === Object.prototype.toString.call(e), t.isObject = e => \"[object Object]\" === Object.prototype.toString.call(e), t.isBoolean = e => \"[object Boolean]\" === Object.prototype.toString.call(e), t.zeroPad = (e, t = 2) => (e += \"\").length >= t ? e : new Array(t - e.length + 1).join(\"0\") + e, t.titleCase = e => e ? e[0].toUpperCase() + e.substr(1) : \"\", t.ordinal = e => {\n let t = e % 10,\n a = e % 100;\n return 1 === t && 11 !== a ? e + \"st\" : 2 === t && 12 !== a ? e + \"nd\" : 3 === t && 13 !== a ? e + \"rd\" : e + \"th\";\n }, t.toCardinal = e => (e = (e = String(e)).replace(/([0-9])(st|nd|rd|th)$/i, \"$1\"), parseInt(e, 10)), t.normalize = (e = \"\") => \"day\" === (e = (e = (e = (e = e.toLowerCase().trim()).replace(/ies$/, \"y\")).replace(/s$/, \"\")).replace(/-/g, \"\")) || \"days\" === e ? \"date\" : \"min\" === e || \"mins\" === e ? \"minute\" : e, t.getEpoch = e => \"number\" == typeof e ? e : t.isDate(e) ? e.getTime() : e.epoch ? e.epoch : null, t.beADate = (e, a) => !1 === t.isObject(e) ? a.clone().set(e) : e, t.formatTimezone = (e, a = \"\") => {\n const n = e > 0 ? \"+\" : \"-\",\n r = Math.abs(e);\n return `${n}${t.zeroPad(parseInt(\"\" + r, 10))}${a}${t.zeroPad(r % 1 * 60)}`;\n };\n}(y = {\n exports: {}\n}, y.exports), y.exports);\n\nb.isLeapYear, b.isDate, b.isArray, b.isObject, b.isBoolean, b.zeroPad, b.titleCase, b.ordinal, b.toCardinal, b.normalize, b.getEpoch, b.beADate, b.formatTimezone;\nconst k = {\n year: new Date().getFullYear(),\n month: 0,\n date: 1\n};\nvar w = {\n parseArray: (e, t, a) => {\n if (0 === t.length) return e;\n let n = [\"year\", \"month\", \"date\", \"hour\", \"minute\", \"second\", \"millisecond\"];\n\n for (let r = 0; r < n.length; r++) {\n let o = t[r] || a[n[r]] || k[n[r]] || 0;\n e = e[n[r]](o);\n }\n\n return e;\n },\n parseObject: (e, t, a) => {\n if (0 === Object.keys(t).length) return e;\n t = Object.assign({}, k, a, t);\n let n = Object.keys(t);\n\n for (let r = 0; r < n.length; r++) {\n let o = n[r];\n if (void 0 === e[o] || \"function\" != typeof e[o]) continue;\n if (null === t[o] || void 0 === t[o] || \"\" === t[o]) continue;\n let i = t[o] || a[o] || k[o] || 0;\n e = e[o](i);\n }\n\n return e;\n },\n parseNumber: function (e, t) {\n return t > 0 && t < 25e8 && !1 === e.silent && (console.warn(\" - Warning: You are setting the date to January 1970.\"), console.warn(\" - did input seconds instead of milliseconds?\")), e.epoch = t, e;\n }\n};\n\nconst v = function (e) {\n return e.epoch = Date.now(), Object.keys(e._today || {}).forEach(t => {\n \"function\" == typeof e[t] && (e = e[t](e._today[t]));\n }), e;\n},\n z = {\n now: e => v(e),\n today: e => v(e),\n tonight: e => e = (e = v(e)).hour(18),\n tomorrow: e => e = (e = (e = v(e)).add(1, \"day\")).startOf(\"day\"),\n yesterday: e => e = (e = (e = v(e)).subtract(1, \"day\")).startOf(\"day\"),\n christmas: e => {\n let t = v(e).year();\n return e = e.set([t, 11, 25, 18, 0, 0]);\n },\n \"new years\": e => {\n let t = v(e).year();\n return e = e.set([t, 11, 31, 18, 0, 0]);\n }\n};\n\nz[\"new years eve\"] = z[\"new years\"];\nvar _ = z;\n\nvar j = function (e) {\n return e = (e = (e = (e = e.replace(/\\b(mon|tues?|wed|wednes|thur?s?|fri|sat|satur|sun)(day)?\\b/i, \"\")).replace(/([0-9])(th|rd|st|nd)/, \"$1\")).replace(/,/g, \"\")).replace(/ +/g, \" \").trim();\n};\n\nlet O = {\n millisecond: 1,\n second: 1e3,\n minute: 6e4,\n hour: 36e5,\n day: 864e5\n};\nO.date = O.day, O.month = 25488e5, O.week = 6048e5, O.year = 3154e7, Object.keys(O).forEach(e => {\n O[e + \"s\"] = O[e];\n});\nvar $ = O;\n\nconst D = (e, t, a, n, r) => {\n let o = e.d[a]();\n if (o === t) return;\n let i = null === r ? null : e.d[r](),\n s = e.epoch,\n u = t - o;\n e.epoch += $[n] * u, \"day\" === n && Math.abs(u) > 28 && t < 28 && (e.epoch += $.hour), null !== r && i !== e.d[r]() && (e.epoch = s);\n const l = $[n] / 2;\n\n for (; e.d[a]() < t;) e.epoch += l;\n\n for (; e.d[a]() > t;) e.epoch -= l;\n\n null !== r && i !== e.d[r]() && (e.epoch = s);\n},\n M = {\n year: {\n valid: e => e > -4e3 && e < 4e3,\n walkTo: (e, t) => D(e, t, \"getFullYear\", \"year\", null)\n },\n month: {\n valid: e => e >= 0 && e <= 11,\n walkTo: (e, t) => {\n let a = e.d,\n n = a.getMonth(),\n r = e.epoch,\n o = a.getFullYear();\n if (n === t) return;\n let i = t - n;\n\n for (e.epoch += $.day * (28 * i), o !== e.d.getFullYear() && (e.epoch = r); e.d.getMonth() < t;) e.epoch += $.day;\n\n for (; e.d.getMonth() > t;) e.epoch -= $.day;\n }\n },\n date: {\n valid: e => e > 0 && e <= 31,\n walkTo: (e, t) => D(e, t, \"getDate\", \"day\", \"getMonth\")\n },\n hour: {\n valid: e => e >= 0 && e < 24,\n walkTo: (e, t) => D(e, t, \"getHours\", \"hour\", \"getDate\")\n },\n minute: {\n valid: e => e >= 0 && e < 60,\n walkTo: (e, t) => D(e, t, \"getMinutes\", \"minute\", \"getHours\")\n },\n second: {\n valid: e => e >= 0 && e < 60,\n walkTo: (e, t) => {\n e.epoch = e.seconds(t).epoch;\n }\n },\n millisecond: {\n valid: e => e >= 0 && e < 1e3,\n walkTo: (e, t) => {\n e.epoch = e.milliseconds(t).epoch;\n }\n }\n};\n\nvar P = (e, t) => {\n let a = Object.keys(M),\n n = e.clone();\n\n for (let r = 0; r < a.length; r++) {\n let o = a[r],\n i = t[o];\n if (void 0 === i && (i = n[o]()), \"string\" == typeof i && (i = parseInt(i, 10)), !M[o].valid(i)) return e.epoch = null, void (!1 === e.silent && console.warn(\"invalid \" + o + \": \" + i));\n M[o].walkTo(e, i);\n }\n};\n\nlet S = [\"jan\", \"feb\", \"mar\", \"apr\", \"may\", \"jun\", \"jul\", \"aug\", \"sept\", \"oct\", \"nov\", \"dec\"],\n q = [\"january\", \"february\", \"march\", \"april\", \"may\", \"june\", \"july\", \"august\", \"september\", \"october\", \"november\", \"december\"];\n\nvar T = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31],\n E = b,\n N = {\n short: () => S,\n long: () => q,\n mapping: () => function () {\n const e = {\n sep: 8\n };\n\n for (let t = 0; t < S.length; t++) e[S[t]] = t;\n\n for (let t = 0; t < q.length; t++) e[q[t]] = t;\n\n return e;\n }(),\n set: e => {\n S = e.short || S, q = e.long || q;\n }\n},\n C = (e, t) => {\n if (!t) return e;\n \"Z\" !== t && \"z\" !== t || (t = \"+0000\");\n let a = 0;\n /^[\\+-]?[0-9]{2}:[0-9]{2}$/.test(t) && (!0 === /:00/.test(t) && (t = t.replace(/:00/, \"\")), !0 === /:30/.test(t) && (t = t.replace(/:30/, \".5\"))), /^[\\+-]?[0-9]{4}$/.test(t) && (t = t.replace(/30$/, \".5\")), a = parseFloat(t), Math.abs(a) > 100 && (a /= 100), a *= -1, a >= 0 && (a = \"+\" + a);\n let n = \"etc/gmt\" + a;\n return e.timezones[n] && (e.tz = n), e;\n},\n I = (e, t = \"\") => {\n let a = (t = t.replace(/^\\s+/, \"\").toLowerCase()).match(/([0-9]{1,2}):([0-9]{1,2}):?([0-9]{1,2})?[:\\.]?([0-9]{1,4})?/);\n\n if (null !== a) {\n let n = Number(a[1]);\n if (n < 0 || n > 24) return e.startOf(\"day\");\n let r = Number(a[2]);\n if (a[2].length < 2 || r < 0 || r > 59) return e.startOf(\"day\");\n a[4] > 999 && (a[4] = parseInt((\"\" + a[4]).substring(0, 3), 10)), e = (e = (e = (e = e.hour(n)).minute(r)).seconds(a[3] || 0)).millisecond(a[4] || 0);\n let o = t.match(/[\\b0-9] ?(am|pm)\\b/);\n return null !== o && o[1] && (e = e.ampm(o[1])), e;\n }\n\n if (a = t.match(/([0-9]+) ?(am|pm)/), null !== a && a[1]) {\n let t = Number(a[1]);\n return t > 12 || t < 1 ? e.startOf(\"day\") : e = (e = (e = e.hour(a[1] || 0)).ampm(a[2])).startOf(\"hour\");\n }\n\n return e = e.startOf(\"day\");\n};\n\nconst Y = E.isLeapYear,\n A = N.mapping();\nvar x = P,\n L = {\n parseOffset: C,\n parseTime: I,\n parseYear: (e = \"\", t) => {\n if (e = e.trim(), !0 === /^'[0-9][0-9]$/.test(e)) {\n let t = Number(e.replace(/'/, \"\"));\n return t > 50 ? 1900 + t : 2e3 + t;\n }\n\n let a = parseInt(e, 10);\n return !a && t && (a = t.year), a = a || new Date().getFullYear(), a;\n },\n parseMonth: function (e) {\n return e = e.toLowerCase().trim(), A[e];\n },\n validate: e => {\n if (!0 !== T.hasOwnProperty(e.month)) return !1;\n if (1 === e.month) return !!(Y(e.year) && e.date <= 29) || e.date <= 28;\n let t = T[e.month] || 0;\n return e.date <= t;\n }\n};\nconst {\n validate: F,\n parseTime: B,\n parseYear: Z,\n parseMonth: H,\n parseOffset: Q\n} = L;\nvar G = [{\n reg: /^(\\-?0?0?[0-9]{3,4})-([0-9]{1,2})-([0-9]{1,2})[T| ]([0-9.:]+)(Z|[0-9\\-\\+:]+)?$/i,\n parse: (e, t) => {\n let a = {\n year: t[1],\n month: parseInt(t[2], 10) - 1,\n date: t[3]\n };\n return !1 === F(a) ? (e.epoch = null, e) : (Q(e, t[5]), x(e, a), e = B(e, t[4]));\n }\n}, {\n reg: /^([0-9]{4})[\\-\\/\\. ]([0-9]{1,2})[\\-\\/\\. ]([0-9]{1,2})( [0-9]{1,2}(:[0-9]{0,2})?(:[0-9]{0,3})? ?(am|pm)?)?$/i,\n parse: (e, t) => {\n let a = {\n year: t[1],\n month: parseInt(t[2], 10) - 1,\n date: parseInt(t[3], 10)\n };\n return a.month >= 12 && (a.date = parseInt(t[2], 10), a.month = parseInt(t[3], 10) - 1), !1 === F(a) ? (e.epoch = null, e) : (x(e, a), e = B(e, t[4]));\n }\n}, {\n reg: /^([0-9]{4})[\\-\\/\\. ]([a-z]+)[\\-\\/\\. ]([0-9]{1,2})( [0-9]{1,2}(:[0-9]{0,2})?(:[0-9]{0,3})? ?(am|pm)?)?$/i,\n parse: (e, t) => {\n let a = {\n year: Z(t[1], e._today),\n month: H(t[2]),\n date: E.toCardinal(t[3] || \"\")\n };\n return !1 === F(a) ? (e.epoch = null, e) : (x(e, a), e = B(e, t[4]));\n }\n}];\nconst {\n validate: U,\n parseTime: V,\n parseYear: W,\n parseMonth: J\n} = L;\nvar K = [{\n reg: /^([0-9]{1,2})[\\-\\/.]([0-9]{1,2})[\\-\\/.]?([0-9]{4})?( [0-9]{1,2}:[0-9]{2}:?[0-9]{0,2}? ?(am|pm|gmt))?$/i,\n parse: (e, t) => {\n let a = parseInt(t[1], 10) - 1,\n n = parseInt(t[2], 10);\n (e.british || a >= 12) && (n = parseInt(t[1], 10), a = parseInt(t[2], 10) - 1);\n let r = {\n date: n,\n month: a,\n year: W(t[3], e._today) || new Date().getFullYear()\n };\n return !1 === U(r) ? (e.epoch = null, e) : (x(e, r), e = V(e, t[4]));\n }\n}, {\n reg: /^([a-z]+)[\\-\\/\\. ]([0-9]{1,2})[\\-\\/\\. ]?([0-9]{4}|'[0-9]{2})?( [0-9]{1,2}(:[0-9]{0,2})?(:[0-9]{0,3})? ?(am|pm)?)?$/i,\n parse: (e, t) => {\n let a = {\n year: W(t[3], e._today),\n month: J(t[1]),\n date: E.toCardinal(t[2] || \"\")\n };\n return !1 === U(a) ? (e.epoch = null, e) : (x(e, a), e = V(e, t[4]));\n }\n}, {\n reg: /^([a-z]+) ([0-9]{1,2})( [0-9]{4})?( ([0-9:]+( ?am| ?pm| ?gmt)?))?$/i,\n parse: (e, t) => {\n let a = {\n year: W(t[3], e._today),\n month: J(t[1]),\n date: E.toCardinal(t[2] || \"\")\n };\n return !1 === U(a) ? (e.epoch = null, e) : (x(e, a), e = V(e, t[4]));\n }\n}, {\n reg: /^([a-z]+) ([0-9]{1,2})( [0-9:]+)?( \\+[0-9]{4})?( [0-9]{4})?$/i,\n parse: (e, t) => {\n let a = {\n year: W(t[5], e._today),\n month: J(t[1]),\n date: E.toCardinal(t[2] || \"\")\n };\n return !1 === U(a) ? (e.epoch = null, e) : (x(e, a), e = V(e, t[3]));\n }\n}];\nconst {\n validate: R,\n parseTime: X,\n parseYear: ee,\n parseMonth: te\n} = L;\nvar ae = [{\n reg: /^([0-9]{1,2})[\\-\\/]([a-z]+)[\\-\\/]?([0-9]{4})?$/i,\n parse: (e, t) => {\n let a = {\n year: ee(t[3], e._today),\n month: te(t[2]),\n date: E.toCardinal(t[1] || \"\")\n };\n return !1 === R(a) ? (e.epoch = null, e) : (x(e, a), e = X(e, t[4]));\n }\n}, {\n reg: /^([0-9]{1,2})( [a-z]+)( [0-9]{4}| '[0-9]{2})? ?([0-9]{1,2}:[0-9]{2}:?[0-9]{0,2}? ?(am|pm|gmt))?$/i,\n parse: (e, t) => {\n let a = {\n year: ee(t[3], e._today),\n month: te(t[2]),\n date: E.toCardinal(t[1])\n };\n return a.month && !1 !== R(a) ? (x(e, a), e = X(e, t[4])) : (e.epoch = null, e);\n }\n}, {\n reg: /^([0-9]{1,2})[\\. -/]([a-z]+)[\\. -/]([0-9]{4})?( [0-9]{1,2}(:[0-9]{0,2})?(:[0-9]{0,3})? ?(am|pm)?)?$/i,\n parse: (e, t) => {\n let a = {\n date: Number(t[1]),\n month: te(t[2]),\n year: Number(t[3])\n };\n return !1 === R(a) ? (e.epoch = null, e) : (x(e, a), e = e.startOf(\"day\"), e = X(e, t[4]));\n }\n}];\nconst {\n validate: ne,\n parseTime: re,\n parseYear: oe,\n parseMonth: ie\n} = L;\nvar se = [].concat(G, K, ae, [{\n reg: /^([0-9]{4})[\\-\\/]([0-9]{2})$/i,\n parse: (e, t) => {\n let a = {\n year: t[1],\n month: parseInt(t[2], 10) - 1,\n date: 1\n };\n return !1 === ne(a) ? (e.epoch = null, e) : (x(e, a), e = re(e, t[4]));\n }\n}, {\n reg: /^([a-z]+) ([0-9]{4})$/i,\n parse: (e, t) => {\n let a = {\n year: oe(t[2], e._today),\n month: ie(t[1]),\n date: e._today.date || 1\n };\n return !1 === ne(a) ? (e.epoch = null, e) : (x(e, a), e = re(e, t[4]));\n }\n}, {\n reg: /^(q[0-9])( of)?( [0-9]{4})?/i,\n parse: (e, t) => {\n let a = t[1] || \"\";\n e = e.quarter(a);\n let n = t[3] || \"\";\n return n && (n = n.trim(), e = e.year(n)), e;\n }\n}, {\n reg: /^(spring|summer|winter|fall|autumn)( of)?( [0-9]{4})?/i,\n parse: (e, t) => {\n let a = t[1] || \"\";\n e = e.season(a);\n let n = t[3] || \"\";\n return n && (n = n.trim(), e = e.year(n)), e;\n }\n}, {\n reg: /^[0-9,]+ ?b\\.?c\\.?$/i,\n parse: (e, t) => {\n let a = t[0] || \"\";\n a = a.replace(/^([0-9,]+) ?b\\.?c\\.?$/i, \"-$1\");\n let n = new Date(),\n r = {\n year: parseInt(a.trim(), 10),\n month: n.getMonth(),\n date: n.getDate()\n };\n return !1 === ne(r) ? (e.epoch = null, e) : (x(e, r), e = re(e));\n }\n}, {\n reg: /^[0-9,]+ ?(a\\.?d\\.?|c\\.?e\\.?)$/i,\n parse: (e, t) => {\n let a = t[0] || \"\";\n a = a.replace(/,/g, \"\");\n let n = new Date(),\n r = {\n year: parseInt(a.trim(), 10),\n month: n.getMonth(),\n date: n.getDate()\n };\n return !1 === ne(r) ? (e.epoch = null, e) : (x(e, r), e = re(e));\n }\n}, {\n reg: /^[0-9]{4}( ?a\\.?d\\.?)?$/i,\n parse: (e, t) => {\n let a = e._today;\n a.month && !a.date && (a.date = 1);\n let n = new Date(),\n r = {\n year: oe(t[0], a),\n month: a.month || n.getMonth(),\n date: a.date || n.getDate()\n };\n return !1 === ne(r) ? (e.epoch = null, e) : (x(e, r), e = re(e));\n }\n}]);\n\nvar ue = w,\n le = _,\n he = j,\n ce = function (e, t, a) {\n for (let n = 0; n < se.length; n++) {\n let r = t.match(se[n].reg);\n\n if (r) {\n let t = se[n].parse(e, r, a);\n if (null !== t && t.isValid()) return t;\n }\n }\n\n return !1 === e.silent && console.warn(\"Warning: couldn't parse date-string: '\" + t + \"'\"), e.epoch = null, e;\n};\n\nconst {\n parseArray: de,\n parseObject: me,\n parseNumber: pe\n} = ue,\n fe = {\n year: new Date().getFullYear(),\n month: 0,\n date: 1\n};\n\nvar ye = (e, t) => {\n let a = e._today || fe;\n if (\"number\" == typeof t) return pe(e, t);\n\n if (e.epoch = Date.now(), e._today && E.isObject(e._today) && Object.keys(e._today).length > 0) {\n let t = me(e, a, fe);\n t.isValid() && (e.epoch = t.epoch);\n }\n\n return null == t || \"\" === t ? e : !0 === E.isDate(t) ? (e.epoch = t.getTime(), e) : !0 === E.isArray(t) ? e = de(e, t, a) : !0 === E.isObject(t) ? t.epoch ? (e.epoch = t.epoch, e.tz = t.tz, e) : e = me(e, t, a) : \"string\" != typeof t ? e : (t = he(t), !0 === le.hasOwnProperty(t) ? e = le[t](e) : ce(e, t));\n};\n\nlet ge = [\"sun\", \"mon\", \"tue\", \"wed\", \"thu\", \"fri\", \"sat\"],\n be = [\"sunday\", \"monday\", \"tuesday\", \"wednesday\", \"thursday\", \"friday\", \"saturday\"];\nlet ke = !0;\n\nvar we = {\n short: () => ge,\n long: () => be,\n set: e => {\n ge = e.short || ge, be = e.long || be;\n },\n aliases: {\n mo: 1,\n tu: 2,\n we: 3,\n th: 4,\n fr: 5,\n sa: 6,\n su: 7,\n tues: 2,\n weds: 3,\n wedn: 3,\n thur: 4,\n thurs: 4\n }\n},\n ve = {\n useTitleCase: () => ke,\n set: e => {\n ke = e;\n }\n},\n ze = e => {\n let t = e.timezone().current.offset;\n return t ? E.formatTimezone(t, \":\") : \"Z\";\n};\n\nconst _e = e => ve.useTitleCase() ? E.titleCase(e) : e,\n je = {\n day: e => _e(e.dayName()),\n \"day-short\": e => _e(we.short()[e.day()]),\n \"day-number\": e => e.day(),\n \"day-ordinal\": e => E.ordinal(e.day()),\n \"day-pad\": e => E.zeroPad(e.day()),\n date: e => e.date(),\n \"date-ordinal\": e => E.ordinal(e.date()),\n \"date-pad\": e => E.zeroPad(e.date()),\n month: e => _e(e.monthName()),\n \"month-short\": e => _e(N.short()[e.month()]),\n \"month-number\": e => e.month(),\n \"month-ordinal\": e => E.ordinal(e.month()),\n \"month-pad\": e => E.zeroPad(e.month()),\n \"iso-month\": e => E.zeroPad(e.month() + 1),\n year: e => {\n let t = e.year();\n return t > 0 ? t : (t = Math.abs(t), t + \" BC\");\n },\n \"year-short\": e => {\n let t = e.year();\n return t > 0 ? \"'\" + String(e.year()).substr(2, 4) : (t = Math.abs(t), t + \" BC\");\n },\n \"iso-year\": e => {\n let t = e.year(),\n a = t < 0,\n n = E.zeroPad(Math.abs(t), 4);\n return a && (n = E.zeroPad(n, 6), n = \"-\" + n), n;\n },\n time: e => e.time(),\n \"time-24\": e => `${e.hour24()}:${E.zeroPad(e.minute())}`,\n hour: e => e.hour12(),\n \"hour-pad\": e => E.zeroPad(e.hour12()),\n \"hour-24\": e => e.hour24(),\n \"hour-24-pad\": e => E.zeroPad(e.hour24()),\n minute: e => e.minute(),\n \"minute-pad\": e => E.zeroPad(e.minute()),\n second: e => e.second(),\n \"second-pad\": e => E.zeroPad(e.second()),\n millisecond: e => e.millisecond(),\n \"millisecond-pad\": e => E.zeroPad(e.millisecond(), 3),\n ampm: e => e.ampm(),\n quarter: e => \"Q\" + e.quarter(),\n season: e => e.season(),\n era: e => e.era(),\n json: e => e.json(),\n timezone: e => e.timezone().name,\n offset: e => ze(e),\n numeric: e => `${e.year()}/${E.zeroPad(e.month() + 1)}/${E.zeroPad(e.date())}`,\n \"numeric-us\": e => `${E.zeroPad(e.month() + 1)}/${E.zeroPad(e.date())}/${e.year()}`,\n \"numeric-uk\": e => `${E.zeroPad(e.date())}/${E.zeroPad(e.month() + 1)}/${e.year()}`,\n \"mm/dd\": e => `${E.zeroPad(e.month() + 1)}/${E.zeroPad(e.date())}`,\n iso: e => `${e.format(\"iso-year\")}-${E.zeroPad(e.month() + 1)}-${E.zeroPad(e.date())}T${E.zeroPad(e.h24())}:${E.zeroPad(e.minute())}:${E.zeroPad(e.second())}.${E.zeroPad(e.millisecond(), 3)}${ze(e)}`,\n \"iso-short\": e => {\n let t = E.zeroPad(e.month() + 1),\n a = E.zeroPad(e.date());\n var n;\n return `${(n = e.year()) >= 0 ? E.zeroPad(n, 4) : (n = Math.abs(n), \"-\" + E.zeroPad(n, 4))}-${t}-${a}`;\n },\n \"iso-utc\": e => new Date(e.epoch).toISOString(),\n nice: e => `${N.short()[e.month()]} ${E.ordinal(e.date())}, ${e.time()}`,\n \"nice-24\": e => `${N.short()[e.month()]} ${E.ordinal(e.date())}, ${e.hour24()}:${E.zeroPad(e.minute())}`,\n \"nice-year\": e => `${N.short()[e.month()]} ${E.ordinal(e.date())}, ${e.year()}`,\n \"nice-day\": e => `${we.short()[e.day()]} ${_e(N.short()[e.month()])} ${E.ordinal(e.date())}`,\n \"nice-full\": e => `${e.dayName()} ${_e(e.monthName())} ${E.ordinal(e.date())}, ${e.time()}`,\n \"nice-full-24\": e => `${e.dayName()} ${_e(e.monthName())} ${E.ordinal(e.date())}, ${e.hour24()}:${E.zeroPad(e.minute())}`\n},\n Oe = {\n \"day-name\": \"day\",\n \"month-name\": \"month\",\n \"iso 8601\": \"iso\",\n \"time-h24\": \"time-24\",\n \"time-12\": \"time\",\n \"time-h12\": \"time\",\n tz: \"timezone\",\n \"day-num\": \"day-number\",\n \"month-num\": \"month-number\",\n \"month-iso\": \"iso-month\",\n \"year-iso\": \"iso-year\",\n \"nice-short\": \"nice\",\n \"nice-short-24\": \"nice-24\",\n mdy: \"numeric-us\",\n dmy: \"numeric-uk\",\n ymd: \"numeric\",\n \"yyyy/mm/dd\": \"numeric\",\n \"mm/dd/yyyy\": \"numeric-us\",\n \"dd/mm/yyyy\": \"numeric-us\",\n \"little-endian\": \"numeric-uk\",\n \"big-endian\": \"numeric\",\n \"day-nice\": \"nice-day\"\n};\n\nObject.keys(Oe).forEach(e => je[e] = je[Oe[e]]);\n\nvar $e = (e, t = \"\") => {\n if (!0 !== e.isValid()) return \"\";\n\n if (je.hasOwnProperty(t)) {\n let a = je[t](e) || \"\";\n return \"json\" !== t && (a = String(a), \"ampm\" !== t && (a = _e(a))), a;\n }\n\n if (-1 !== t.indexOf(\"{\")) {\n let a = /\\{(.+?)\\}/g;\n return t = t.replace(a, (t, a) => {\n if (a = a.toLowerCase().trim(), je.hasOwnProperty(a)) {\n let t = String(je[a](e));\n return \"ampm\" !== a ? _e(t) : t;\n }\n\n return \"\";\n });\n }\n\n return e.format(\"iso-short\");\n};\n\nconst De = E.zeroPad,\n Me = E.formatTimezone,\n Pe = {\n G: e => e.era(),\n GG: e => e.era(),\n GGG: e => e.era(),\n GGGG: e => \"AD\" === e.era() ? \"Anno Domini\" : \"Before Christ\",\n y: e => e.year(),\n yy: e => parseInt(String(e.year()).substr(2, 4), 10),\n yyy: e => e.year(),\n yyyy: e => e.year(),\n yyyyy: e => \"0\" + e.year(),\n Q: e => e.quarter(),\n QQ: e => e.quarter(),\n QQQ: e => e.quarter(),\n QQQQ: e => e.quarter(),\n M: e => e.month() + 1,\n MM: e => De(e.month() + 1),\n MMM: e => e.format(\"month-short\"),\n MMMM: e => e.format(\"month\"),\n w: e => e.week(),\n ww: e => De(e.week()),\n d: e => e.date(),\n dd: e => De(e.date()),\n D: e => e.dayOfYear(),\n DD: e => De(e.dayOfYear()),\n DDD: e => De(e.dayOfYear(), 3),\n E: e => e.format(\"day-short\"),\n EE: e => e.format(\"day-short\"),\n EEE: e => e.format(\"day-short\"),\n EEEE: e => e.format(\"day\"),\n EEEEE: e => e.format(\"day\")[0],\n e: e => e.day(),\n ee: e => e.day(),\n eee: e => e.format(\"day-short\"),\n eeee: e => e.format(\"day\"),\n eeeee: e => e.format(\"day\")[0],\n a: e => e.ampm().toUpperCase(),\n aa: e => e.ampm().toUpperCase(),\n aaa: e => e.ampm().toUpperCase(),\n aaaa: e => e.ampm().toUpperCase(),\n h: e => e.h12(),\n hh: e => De(e.h12()),\n H: e => e.hour(),\n HH: e => De(e.hour()),\n m: e => e.minute(),\n mm: e => De(e.minute()),\n s: e => e.second(),\n ss: e => De(e.second()),\n SSS: e => De(e.millisecond(), 3),\n A: e => e.epoch - e.startOf(\"day\").epoch,\n z: e => e.timezone().name,\n zz: e => e.timezone().name,\n zzz: e => e.timezone().name,\n zzzz: e => e.timezone().name,\n Z: e => Me(e.timezone().current.offset),\n ZZ: e => Me(e.timezone().current.offset),\n ZZZ: e => Me(e.timezone().current.offset),\n ZZZZ: e => Me(e.timezone().current.offset, \":\")\n},\n Se = (e, t, a) => {\n let n = e,\n r = t;\n\n for (let o = 0; o < a; o += 1) Pe[n] = Pe[r], n += e, r += t;\n};\n\nSe(\"q\", \"Q\", 4), Se(\"L\", \"M\", 4), Se(\"Y\", \"y\", 4), Se(\"c\", \"e\", 4), Se(\"k\", \"H\", 2), Se(\"K\", \"h\", 2), Se(\"S\", \"s\", 2), Se(\"v\", \"z\", 4), Se(\"V\", \"Z\", 4);\n\nvar qe = (e, t) => {\n let a = t.split(\"\");\n return a = function (e) {\n for (let t = 0; t < e.length; t += 1) if (\"'\" === e[t]) for (let a = t + 1; a < e.length; a += 1) {\n if (e[a] && (e[t] += e[a]), \"'\" === e[a]) {\n e[a] = null;\n break;\n }\n\n e[a] = null;\n }\n\n return e.filter(e => e);\n }(a), a = function (e) {\n for (let t = 0; t < e.length; t += 1) {\n let a = e[t];\n\n for (let n = t + 1; n < e.length && e[n] === a; n += 1) e[t] += e[n], e[n] = null;\n }\n\n return (e = e.filter(e => e)).map(e => (\"''\" === e && (e = \"'\"), e));\n }(a), a.reduce((t, a) => (void 0 !== Pe[a] ? t += Pe[a](e) || \"\" : (/^'.{1,}'$/.test(a) && (a = a.replace(/'/g, \"\")), t += a), t), \"\");\n};\n\nconst Te = [\"year\", \"season\", \"quarter\", \"month\", \"week\", \"day\", \"quarterHour\", \"hour\", \"minute\"],\n Ee = function (e, t) {\n let a = e.clone().startOf(t),\n n = e.clone().endOf(t).epoch - a.epoch,\n r = (e.epoch - a.epoch) / n;\n return parseFloat(r.toFixed(2));\n};\n\nvar Ne = (e, t) => {\n if (t) return t = E.normalize(t), Ee(e, t);\n let a = {};\n return Te.forEach(t => {\n a[t] = Ee(e, t);\n }), a;\n};\n\nvar Ce = (e, t) => {\n let a = e.progress();\n return \"quarterhour\" === (t = E.normalize(t)) && (t = \"quarterHour\"), void 0 !== a[t] ? (a[t] > .5 && (e = e.add(1, t)), e = e.startOf(t)) : !1 === e.silent && console.warn(\"no known unit '\" + t + \"'\"), e;\n};\n\nconst Ie = (e, t, a) => {\n let n = 0;\n\n for (e = e.clone(); e.isBefore(t);) e = e.add(1, a), n += 1;\n\n return e.isAfter(t, a) && (n -= 1), n;\n};\n\nvar Ye = (e, t, a) => e.isBefore(t) ? Ie(e, t, a) : -1 * Ie(t, e, a);\n\nvar Ae = function (e, t) {\n let a = t.epoch - e.epoch,\n n = {\n milliseconds: a,\n seconds: parseInt(a / 1e3, 10)\n };\n n.minutes = parseInt(n.seconds / 60, 10), n.hours = parseInt(n.minutes / 60, 10);\n let r = e.clone();\n return n.years = ((e, t) => {\n let a = t.year() - e.year();\n return (e = e.year(t.year())).isAfter(t) && (a -= 1), a;\n })(r, t), r = e.add(n.years, \"year\"), n.months = 12 * n.years, r = e.add(n.months, \"month\"), n.months += Ye(r, t, \"month\"), n.weeks = 52 * n.years, r = e.add(n.weeks, \"week\"), n.weeks += Ye(r, t, \"week\"), n.days = 7 * n.weeks, r = e.add(n.days, \"day\"), n.days += Ye(r, t, \"day\"), n;\n};\n\nvar xe = function (e, t, a) {\n t = E.beADate(t, e);\n let n = !1;\n\n if (e.isAfter(t)) {\n let a = e;\n e = t, t = a, n = !0;\n }\n\n let r = Ae(e, t);\n return n && (r = function (e) {\n return Object.keys(e).forEach(t => {\n e[t] *= -1;\n }), e;\n }(r)), a ? (a = E.normalize(a), !0 !== /s$/.test(a) && (a += \"s\"), \"dates\" === a && (a = \"days\"), r[a]) : r;\n};\n\nconst Le = {\n months: {\n almost: 10,\n over: 4\n },\n days: {\n almost: 25,\n over: 10\n },\n hours: {\n almost: 20,\n over: 8\n },\n minutes: {\n almost: 50,\n over: 20\n },\n seconds: {\n almost: 50,\n over: 20\n }\n};\n\nfunction Fe(e, t) {\n return 1 === e && (t = t.slice(0, -1)), e + \" \" + t;\n}\n\nvar Be = (e, t) => {\n const a = function (e, t) {\n const a = e.isBefore(t),\n n = a ? t : e;\n let r = a ? e : t;\n r = r.clone();\n const o = {\n years: 0,\n months: 0,\n days: 0,\n hours: 0,\n minutes: 0,\n seconds: 0\n };\n return Object.keys(o).forEach(e => {\n if (r.isSame(n, e)) return;\n let t = r.diff(n, e);\n r = r.add(t, e), o[e] = t;\n }), a && Object.keys(o).forEach(e => {\n 0 !== o[e] && (o[e] *= -1);\n }), o;\n }(e, t = E.beADate(t, e));\n\n if (!0 === Object.keys(a).every(e => !a[e])) return {\n diff: a,\n rounded: \"now\",\n qualified: \"now\",\n precise: \"now\"\n };\n let n,\n r,\n o,\n i = [];\n return Object.keys(a).forEach((e, t, o) => {\n const s = Math.abs(a[e]);\n if (0 === s) return;\n const u = Fe(s, e);\n\n if (i.push(u), !n) {\n if (n = r = u, t > 4) return;\n const i = o[t + 1],\n l = Math.abs(a[i]);\n l > Le[i].almost ? (n = Fe(s + 1, e), r = \"almost \" + n) : l > Le[i].over && (r = \"over \" + u);\n }\n }), o = i.splice(0, 2).join(\", \"), !0 === e.isAfter(t) ? (n += \" ago\", r += \" ago\", o += \" ago\") : (n = \"in \" + n, r = \"in \" + r, o = \"in \" + o), {\n diff: a,\n rounded: n,\n qualified: r,\n precise: o\n };\n},\n Ze = {\n north: [[\"spring\", 2, 1], [\"summer\", 5, 1], [\"fall\", 8, 1], [\"autumn\", 8, 1], [\"winter\", 11, 1]],\n south: [[\"fall\", 2, 1], [\"autumn\", 2, 1], [\"winter\", 5, 1], [\"spring\", 8, 1], [\"summer\", 11, 1]]\n},\n He = [null, [0, 1], [3, 1], [6, 1], [9, 1]];\n\nconst Qe = {\n minute: e => (x(e, {\n second: 0,\n millisecond: 0\n }), e),\n quarterhour: e => {\n let t = e.minutes();\n return e = t >= 45 ? e.minutes(45) : t >= 30 ? e.minutes(30) : t >= 15 ? e.minutes(15) : e.minutes(0), x(e, {\n second: 0,\n millisecond: 0\n }), e;\n },\n hour: e => (x(e, {\n minute: 0,\n second: 0,\n millisecond: 0\n }), e),\n day: e => (x(e, {\n hour: 0,\n minute: 0,\n second: 0,\n millisecond: 0\n }), e),\n week: e => {\n let t = e.clone();\n return (e = e.day(e._weekStart)).isAfter(t) && (e = e.subtract(1, \"week\")), x(e, {\n hour: 0,\n minute: 0,\n second: 0,\n millisecond: 0\n }), e;\n },\n month: e => (x(e, {\n date: 1,\n hour: 0,\n minute: 0,\n second: 0,\n millisecond: 0\n }), e),\n quarter: e => {\n let t = e.quarter();\n return He[t] && x(e, {\n month: He[t][0],\n date: He[t][1],\n hour: 0,\n minute: 0,\n second: 0,\n millisecond: 0\n }), e;\n },\n season: e => {\n let t = e.season(),\n a = \"north\";\n \"South\" === e.hemisphere() && (a = \"south\");\n\n for (let n = 0; n < Ze[a].length; n++) if (Ze[a][n][0] === t) {\n let r = e.year();\n return \"winter\" === t && e.month() < 3 && (r -= 1), x(e, {\n year: r,\n month: Ze[a][n][1],\n date: Ze[a][n][2],\n hour: 0,\n minute: 0,\n second: 0,\n millisecond: 0\n }), e;\n }\n\n return e;\n },\n year: e => (x(e, {\n month: 0,\n date: 1,\n hour: 0,\n minute: 0,\n second: 0,\n millisecond: 0\n }), e),\n decade: e => {\n let t = (e = e.startOf(\"year\")).year(),\n a = 10 * parseInt(t / 10, 10);\n return e = e.year(a);\n },\n century: e => {\n let t = (e = e.startOf(\"year\")).year(),\n a = 100 * parseInt(t / 100, 10);\n return e = e.year(a);\n }\n};\nQe.date = Qe.day;\nvar Ge = g;\n\nvar Ue = $e,\n Ve = qe,\n We = Ne,\n Je = Ce,\n Ke = xe,\n Re = Be,\n Xe = {\n startOf: (e, t) => {\n let a = e.clone();\n return t = E.normalize(t), Qe[t] ? Qe[t](a) : \"summer\" === t || \"winter\" === t ? (a = a.season(t), Qe.season(a)) : a;\n },\n endOf: (e, t) => {\n let a = e.clone();\n return t = E.normalize(t), Qe[t] ? (a = Qe[t](a), a = a.add(1, t), a = a.subtract(1, \"millisecond\"), a) : a;\n }\n},\n et = function (e, t = \"\", a) {\n if (!t || !a) return [];\n\n if (t = E.normalize(t), a = e.clone().set(a), e.isAfter(a)) {\n let t = e;\n e = a, a = t;\n }\n\n let n = e.clone();\n !function (e) {\n return !!we.short().find(t => t === e) || !!we.long().find(t => t === e);\n }(t) ? n = n.next(t) : (n = n.next(t), t = \"week\");\n let r = [];\n\n for (; n.isBefore(a);) r.push(n), n = n.add(1, t);\n\n return r;\n},\n tt = e => {\n let a = e.timezones,\n n = e.tz;\n if (!1 === a.hasOwnProperty(n) && (n = Ge(e.tz, a)), null === n) return !1 === e.silent && console.warn(\"Warn: could not find given or local timezone - '\" + e.tz + \"'\"), {\n current: {\n epochShift: 0\n }\n };\n let r = a[n],\n o = {\n name: (i = n, i = (i = (i = i[0].toUpperCase() + i.substr(1)).replace(/\\/gmt/, \"/GMT\")).replace(/[\\/_]([a-z])/gi, e => e.toUpperCase())),\n hasDst: Boolean(r.dst),\n default_offset: r.offset,\n hemisphere: \"s\" === r.hem ? \"South\" : \"North\",\n current: {}\n };\n var i, s;\n\n if (o.hasDst) {\n let e = (s = r.dst) ? s.split(\"->\") : [];\n o.change = {\n start: e[0],\n back: e[1]\n };\n }\n\n let u = r.offset,\n l = u;\n return !0 === o.hasDst && (l = \"North\" === o.hemisphere ? u - 1 : r.offset + 1), !1 === o.hasDst ? (o.current.offset = u, o.current.isDST = !1) : !0 === t(e.epoch, o.change.start, o.change.back, u, l) ? (o.current.offset = u, o.current.isDST = \"North\" === o.hemisphere) : (o.current.offset = l, o.current.isDST = \"South\" === o.hemisphere), o;\n},\n at = ye;\n\nconst nt = [\"century\", \"decade\", \"year\", \"month\", \"date\", \"day\", \"hour\", \"minute\", \"second\", \"millisecond\"],\n rt = {\n set: function (e, t) {\n let a = this.clone();\n return a = at(a, e, null), t && (this.tz = Ge(t)), a;\n },\n timezone: function () {\n return tt(this);\n },\n isDST: function () {\n return tt(this).current.isDST;\n },\n hasDST: function () {\n return tt(this).hasDst;\n },\n offset: function () {\n return 60 * tt(this).current.offset;\n },\n hemisphere: function () {\n return tt(this).hemisphere;\n },\n format: function (e) {\n return Ue(this, e);\n },\n unixFmt: function (e) {\n return Ve(this, e);\n },\n startOf: function (e) {\n return Xe.startOf(this, e);\n },\n endOf: function (e) {\n return Xe.endOf(this, e);\n },\n leapYear: function () {\n let e = this.year();\n return E.isLeapYear(e);\n },\n progress: function (e) {\n return We(this, e);\n },\n nearest: function (e) {\n return Je(this, e);\n },\n diff: function (e, t) {\n return Ke(this, e, t);\n },\n since: function (e) {\n return e || (e = this.clone().set()), Re(this, e);\n },\n next: function (e) {\n return this.add(1, e).startOf(e);\n },\n last: function (e) {\n return this.subtract(1, e).startOf(e);\n },\n isValid: function () {\n return !(!this.epoch && 0 !== this.epoch) && !isNaN(this.d.getTime());\n },\n goto: function (e) {\n let t = this.clone();\n return t.tz = Ge(e, t.timezones), t;\n },\n every: function (e, t) {\n if (\"object\" == typeof e && \"string\" == typeof t) {\n let a = t;\n t = e, e = a;\n }\n\n return et(this, e, t);\n },\n isAwake: function () {\n let e = this.hour();\n return !(e < 8 || e > 22);\n },\n isAsleep: function () {\n return !this.isAwake();\n },\n daysInMonth: function () {\n switch (this.month()) {\n case 0:\n return 31;\n\n case 1:\n return this.leapYear() ? 29 : 28;\n\n case 2:\n return 31;\n\n case 3:\n return 30;\n\n case 4:\n return 31;\n\n case 5:\n return 30;\n\n case 6:\n case 7:\n return 31;\n\n case 8:\n return 30;\n\n case 9:\n return 31;\n\n case 10:\n return 30;\n\n case 11:\n return 31;\n\n default:\n throw new Error(\"Invalid Month state.\");\n }\n },\n log: function () {\n return console.log(\"\"), console.log(Ue(this, \"nice-short\")), this;\n },\n logYear: function () {\n return console.log(\"\"), console.log(Ue(this, \"full-short\")), this;\n },\n json: function () {\n return nt.reduce((e, t) => (e[t] = this[t](), e), {});\n },\n debug: function () {\n let e = this.timezone(),\n t = this.format(\"MM\") + \" \" + this.format(\"date-ordinal\") + \" \" + this.year();\n return t += \"\\n - \" + this.format(\"time\"), console.log(\"\\n\\n\", t + \"\\n - \" + e.name + \" (\" + e.current.offset + \")\"), this;\n },\n from: function (e) {\n return (e = this.clone().set(e)).since(this);\n },\n fromNow: function () {\n return this.clone().set(Date.now()).since(this);\n },\n weekStart: function (e) {\n if (\"number\" == typeof e) return this._weekStart = e, this;\n\n if (\"string\" == typeof e) {\n e = e.toLowerCase().trim();\n let t = we.short().indexOf(e);\n -1 === t && (t = we.long().indexOf(e)), -1 === t && (t = 1), this._weekStart = t;\n } else console.warn(\"Spacetime Error: Cannot understand .weekStart() input:\", e);\n\n return this;\n }\n};\nrt.inDST = rt.isDST, rt.round = rt.nearest, rt.each = rt.every;\nvar ot = rt;\n\nconst it = E.isLeapYear,\n st = e => (\"string\" == typeof e && (e = parseInt(e, 10)), e),\n ut = [\"year\", \"month\", \"date\", \"hour\", \"minute\", \"second\", \"millisecond\"],\n lt = (e, t, a) => {\n let n = ut.indexOf(a),\n r = ut.slice(n, ut.length);\n\n for (let a = 0; a < r.length; a++) {\n let n = t[r[a]]();\n e[r[a]](n);\n }\n\n return e;\n},\n ht = function (e, t, a, n) {\n return !0 === a && e.isBefore(t) ? e = e.add(1, n) : !1 === a && e.isAfter(t) && (e = e.minus(1, n)), e;\n};\n\nvar ct = {\n milliseconds: (e, t) => {\n t = st(t);\n let a = e.millisecond() - t;\n return e.epoch - a;\n },\n seconds: (e, t, a) => {\n t = st(t);\n let n = e.clone(),\n r = (e.second() - t) * $.second;\n return e.epoch = e.epoch - r, (e = ht(e, n, a, \"minute\")).epoch;\n },\n minutes: (e, t, a) => {\n t = st(t);\n let n = e.clone(),\n r = (e.minute() - t) * $.minute;\n return e.epoch -= r, lt(e, n, \"second\"), (e = ht(e, n, a, \"hour\")).epoch;\n },\n hours: (e, t, a) => {\n (t = st(t)) >= 24 ? t = 24 : t < 0 && (t = 0);\n let n = e.clone(),\n r = e.hour() - t,\n o = r * $.hour;\n return e.epoch -= o, e.date() !== n.date() && (e = n.clone(), r > 1 && (r -= 1), r < 1 && (r += 1), o = r * $.hour, e.epoch -= o), x(e, {\n hour: t\n }), lt(e, n, \"minute\"), (e = ht(e, n, a, \"day\")).epoch;\n },\n time: (e, t, a) => {\n let n = t.match(/([0-9]{1,2})[:h]([0-9]{1,2})(:[0-9]{1,2})? ?(am|pm)?/);\n\n if (!n) {\n if (n = t.match(/([0-9]{1,2}) ?(am|pm)/), !n) return e.epoch;\n n.splice(2, 0, \"0\"), n.splice(3, 0, \"\");\n }\n\n let r = !1,\n o = parseInt(n[1], 10),\n i = parseInt(n[2], 10);\n i >= 60 && (i = 59), o > 12 && (r = !0), !1 === r && (\"am\" === n[4] && 12 === o && (o = 0), \"pm\" === n[4] && o < 12 && (o += 12)), n[3] = n[3] || \"\", n[3] = n[3].replace(/:/, \"\");\n let s = parseInt(n[3], 10) || 0,\n u = e.clone();\n return e = (e = (e = (e = e.hour(o)).minute(i)).second(s)).millisecond(0), (e = ht(e, u, a, \"day\")).epoch;\n },\n date: (e, t, a) => {\n if ((t = st(t)) > 28) {\n let a = e.month(),\n n = T[a];\n 1 === a && 29 === t && it(e.year()) && (n = 29), t > n && (t = n);\n }\n\n t <= 0 && (t = 1);\n let n = e.clone();\n return x(e, {\n date: t\n }), (e = ht(e, n, a, \"month\")).epoch;\n },\n month: (e, t, a) => {\n \"string\" == typeof t && (t = N.mapping()[t.toLowerCase()]), (t = st(t)) >= 12 && (t = 11), t <= 0 && (t = 0);\n let n = e.date();\n n > T[t] && (n = T[t]);\n let r = e.clone();\n return x(e, {\n month: t,\n date: n\n }), (e = ht(e, r, a, \"year\")).epoch;\n },\n year: (e, t) => (\"string\" == typeof t && /^'[0-9]{2}$/.test(t) && (t = t.replace(/'/, \"\").trim(), t = (t = Number(t)) > 30 ? 1900 + t : 2e3 + t), t = st(t), x(e, {\n year: t\n }), e.epoch),\n week: (e, t, a) => {\n let n = e.clone();\n return t = st(t), \"december\" === (e = (e = (e = e.month(0)).date(1)).day(\"monday\")).monthName() && e.date() >= 28 && (e = e.add(1, \"week\")), t -= 1, e = e.add(t, \"weeks\"), (e = ht(e, n, a, \"year\")).epoch;\n },\n dayOfYear: (e, t, a) => {\n t = st(t);\n let n = e.clone();\n return (t -= 1) <= 0 ? t = 0 : t >= 365 && (t = 364), e = (e = e.startOf(\"year\")).add(t, \"day\"), lt(e, n, \"hour\"), (e = ht(e, n, a, \"year\")).epoch;\n }\n};\n\nconst dt = e => e = (e = (e = e.minute(0)).second(0)).millisecond(1);\n\nvar mt = {\n millisecond: function (e) {\n if (void 0 !== e) {\n let t = this.clone();\n return t.epoch = ct.milliseconds(t, e), t;\n }\n\n return this.d.getMilliseconds();\n },\n second: function (e, t) {\n if (void 0 !== e) {\n let a = this.clone();\n return a.epoch = ct.seconds(a, e, t), a;\n }\n\n return this.d.getSeconds();\n },\n minute: function (e, t) {\n if (void 0 !== e) {\n let a = this.clone();\n return a.epoch = ct.minutes(a, e, t), a;\n }\n\n return this.d.getMinutes();\n },\n hour: function (e, t) {\n let a = this.d;\n\n if (void 0 !== e) {\n let a = this.clone();\n return a.epoch = ct.hours(a, e, t), a;\n }\n\n return a.getHours();\n },\n hourFloat: function (e, t) {\n if (void 0 !== e) {\n let a = this.clone(),\n n = e % 1;\n n *= 60;\n let r = parseInt(e, 10);\n return a.epoch = ct.hours(a, r, t), a.epoch = ct.minutes(a, n, t), a;\n }\n\n let a = this.d,\n n = a.getHours(),\n r = a.getMinutes();\n return r /= 60, n + r;\n },\n hour12: function (e, t) {\n let a = this.d;\n\n if (void 0 !== e) {\n let a = this.clone(),\n n = (e = \"\" + e).match(/^([0-9]+)(am|pm)$/);\n\n if (n) {\n let e = parseInt(n[1], 10);\n \"pm\" === n[2] && (e += 12), a.epoch = ct.hours(a, e, t);\n }\n\n return a;\n }\n\n let n = a.getHours();\n return n > 12 && (n -= 12), 0 === n && (n = 12), n;\n },\n time: function (e, t) {\n if (void 0 !== e) {\n let a = this.clone();\n return e = e.toLowerCase().trim(), a.epoch = ct.time(a, e, t), a;\n }\n\n return `${this.h12()}:${E.zeroPad(this.minute())}${this.ampm()}`;\n },\n ampm: function (e, t) {\n let a = \"am\",\n n = this.hour();\n if (n >= 12 && (a = \"pm\"), \"string\" != typeof e) return a;\n let r = this.clone();\n return e = e.toLowerCase().trim(), n >= 12 && \"am\" === e ? (n -= 12, r.hour(n, t)) : n < 12 && \"pm\" === e ? (n += 12, r.hour(n, t)) : r;\n },\n dayTime: function (e, t) {\n if (void 0 !== e) {\n const a = {\n morning: \"7:00am\",\n breakfast: \"7:00am\",\n noon: \"12:00am\",\n lunch: \"12:00pm\",\n afternoon: \"2:00pm\",\n evening: \"6:00pm\",\n dinner: \"6:00pm\",\n night: \"11:00pm\",\n midnight: \"23:59pm\"\n };\n let n = this.clone();\n return e = (e = e || \"\").toLowerCase(), !0 === a.hasOwnProperty(e) && (n = n.time(a[e], t)), n;\n }\n\n let a = this.hour();\n return a < 6 ? \"night\" : a < 12 ? \"morning\" : a < 17 ? \"afternoon\" : a < 22 ? \"evening\" : \"night\";\n },\n iso: function (e) {\n return void 0 !== e ? this.set(e) : this.format(\"iso\");\n }\n},\n pt = {\n date: function (e, t) {\n if (void 0 !== e) {\n let a = this.clone();\n return (e = parseInt(e, 10)) && (a.epoch = ct.date(a, e, t)), a;\n }\n\n return this.d.getDate();\n },\n day: function (e, t) {\n if (void 0 === e) return this.d.getDay();\n let a = this.clone(),\n n = e;\n \"string\" == typeof e && (e = e.toLowerCase(), we.aliases.hasOwnProperty(e) ? n = we.aliases[e] : (n = we.short().indexOf(e), -1 === n && (n = we.long().indexOf(e))));\n let r = this.d.getDay() - n;\n !0 === t && r > 0 && (r -= 7), !1 === t && r < 0 && (r += 7);\n let o = this.subtract(r, \"days\");\n return x(o, {\n hour: a.hour(),\n minute: a.minute(),\n second: a.second()\n }), o;\n },\n dayName: function (e, t) {\n if (void 0 === e) return we.long()[this.day()];\n let a = this.clone();\n return a = a.day(e, t), a;\n }\n},\n ft = {\n dayOfYear: function (e, t) {\n if (void 0 !== e) {\n let a = this.clone();\n return a.epoch = ct.dayOfYear(a, e, t), a;\n }\n\n let a,\n n = 0,\n r = this.d.getMonth();\n\n for (let e = 1; e <= r; e++) a = new Date(), a.setDate(1), a.setFullYear(this.d.getFullYear()), a.setHours(1), a.setMinutes(1), a.setMonth(e), a.setHours(-2), n += a.getDate();\n\n return n + this.d.getDate();\n },\n week: function (e, t) {\n if (void 0 !== e) {\n let a = this.clone();\n return a.epoch = ct.week(this, e, t), a = dt(a), a;\n }\n\n let a = this.clone();\n a = a.month(0), a = a.date(1), a = dt(a), a = a.day(\"monday\"), \"december\" === a.monthName() && a.date() >= 28 && (a = a.add(1, \"week\"));\n let n = 1;\n 1 === a.date() && (n = 0), a = a.minus(1, \"second\");\n const r = this.epoch;\n if (a.epoch > r) return 1;\n let o = 0,\n i = 4 * this.month();\n\n for (a.epoch += $.week * i, o += i; o <= 52; o++) {\n if (a.epoch > r) return o + n;\n a = a.add(1, \"week\");\n }\n\n return 52;\n },\n month: function (e, t) {\n if (void 0 !== e) {\n let a = this.clone();\n return a.epoch = ct.month(a, e, t), a;\n }\n\n return this.d.getMonth();\n },\n monthName: function (e, t) {\n if (void 0 !== e) {\n let a = this.clone();\n return a = a.month(e, t), a;\n }\n\n return N.long()[this.month()];\n },\n quarter: function (e, t) {\n if (void 0 !== e && (\"string\" == typeof e && (e = e.replace(/^q/i, \"\"), e = parseInt(e, 10)), He[e])) {\n let a = this.clone(),\n n = He[e][0];\n return a = a.month(n, t), a = a.date(1, t), a = a.startOf(\"day\"), a;\n }\n\n let a = this.d.getMonth();\n\n for (let e = 1; e < He.length; e++) if (a < He[e][0]) return e - 1;\n\n return 4;\n },\n season: function (e, t) {\n let a = \"north\";\n\n if (\"South\" === this.hemisphere() && (a = \"south\"), void 0 !== e) {\n let n = this.clone();\n\n for (let r = 0; r < Ze[a].length; r++) e === Ze[a][r][0] && (n = n.month(Ze[a][r][1], t), n = n.date(1), n = n.startOf(\"day\"));\n\n return n;\n }\n\n let n = this.d.getMonth();\n\n for (let e = 0; e < Ze[a].length - 1; e++) if (n >= Ze[a][e][1] && n < Ze[a][e + 1][1]) return Ze[a][e][0];\n\n return \"winter\";\n },\n year: function (e) {\n if (void 0 !== e) {\n let t = this.clone();\n return t.epoch = ct.year(t, e), t;\n }\n\n return this.d.getFullYear();\n },\n era: function (e) {\n if (void 0 !== e) {\n let t = this.clone();\n e = e.toLowerCase();\n let a = t.d.getFullYear();\n return \"bc\" === e && a > 0 && (t.epoch = ct.year(t, -1 * a)), \"ad\" === e && a < 0 && (t.epoch = ct.year(t, -1 * a)), t;\n }\n\n return this.d.getFullYear() < 0 ? \"BC\" : \"AD\";\n },\n decade: function (e) {\n if (void 0 !== e) {\n if (!(e = (e = (e = String(e)).replace(/([0-9])'?s$/, \"$1\")).replace(/([0-9])(th|rd|st|nd)/, \"$1\"))) return console.warn(\"Spacetime: Invalid decade input\"), this;\n 2 === e.length && /[0-9][0-9]/.test(e) && (e = \"19\" + e);\n let t = Number(e);\n return isNaN(t) ? this : (t = 10 * Math.floor(t / 10), this.year(t));\n }\n\n return this.startOf(\"decade\").year();\n },\n century: function (e) {\n if (void 0 !== e) {\n \"string\" == typeof e && (e = (e = (e = e.replace(/([0-9])(th|rd|st|nd)/, \"$1\")).replace(/([0-9]+) ?(b\\.?c\\.?|a\\.?d\\.?)/i, (e, t, a) => (a.match(/b\\.?c\\.?/i) && (t = \"-\" + t), t))).replace(/c$/, \"\"));\n let t = Number(e);\n return isNaN(e) ? (console.warn(\"Spacetime: Invalid century input\"), this) : (0 === t && (t = 1), t = t >= 0 ? 100 * (t - 1) : 100 * (t + 1), this.year(t));\n }\n\n let t = this.startOf(\"century\").year();\n return t = Math.floor(t / 100), t < 0 ? t - 1 : t + 1;\n },\n millenium: function (e) {\n if (void 0 !== e) {\n if (\"string\" == typeof e && (e = e.replace(/([0-9])(th|rd|st|nd)/, \"$1\"), e = Number(e), isNaN(e))) return console.warn(\"Spacetime: Invalid millenium input\"), this;\n e > 0 && (e -= 1);\n let t = 1e3 * e;\n return 0 === t && (t = 1), this.year(t);\n }\n\n let t = Math.floor(this.year() / 1e3);\n return t >= 0 && (t += 1), t;\n }\n};\nconst yt = Object.assign({}, mt, pt, ft);\nyt.milliseconds = yt.millisecond, yt.seconds = yt.second, yt.minutes = yt.minute, yt.hours = yt.hour, yt.hour24 = yt.hour, yt.h12 = yt.hour12, yt.h24 = yt.hour24, yt.days = yt.day;\n\nvar gt = e => {\n Object.keys(yt).forEach(t => {\n e.prototype[t] = yt[t];\n });\n};\n\nconst bt = E.isLeapYear,\n kt = function (e, t) {\n return 1 === e && bt(t) ? 29 : T[e];\n};\n\nvar wt = {\n months: (e, t) => {\n if (e.month > 0) {\n let a = parseInt(e.month / 12, 10);\n e.year = t.year() + a, e.month = e.month % 12;\n } else if (e.month < 0) {\n let a = Math.floor(Math.abs(e.month) / 13, 10);\n a = Math.abs(a) + 1, e.year = t.year() - a, e.month = e.month % 12, e.month = e.month + 12, 12 === e.month && (e.month = 0);\n }\n\n return e;\n },\n days: (e, t, a) => {\n let n = t.year(),\n r = t.month(),\n o = kt(r, n);\n\n for (; a > o;) a -= o, r += 1, r >= 12 && (r -= 12, n += 1), o = kt(r, n);\n\n return e.month = r, e.date = a, e;\n },\n daysBack: (e, t, a) => {\n e.year = t.year(), e.month = t.month();\n let n = t.date();\n\n for (e.date = n - Math.abs(a); e.date < 1;) {\n e.month -= 1, e.month < 0 && (e.month = 11, e.year -= 1);\n let t = kt(e.month, e.year);\n e.date += t;\n }\n\n return e;\n }\n};\nconst vt = [\"millisecond\", \"second\", \"minute\", \"hour\", \"date\", \"month\"];\nlet zt = {\n second: vt.slice(0, 1),\n minute: vt.slice(0, 2),\n quarterhour: vt.slice(0, 2),\n hour: vt.slice(0, 3),\n date: vt.slice(0, 4),\n month: vt.slice(0, 4),\n quarter: vt.slice(0, 4),\n season: vt.slice(0, 4),\n year: vt,\n decade: vt,\n century: vt\n};\nzt.week = zt.hour, zt.season = zt.date, zt.quarter = zt.date;\nconst _t = {\n year: !0,\n quarter: !0,\n season: !0,\n month: !0,\n week: !0,\n date: !0\n},\n jt = {\n month: !0,\n quarter: !0,\n season: !0,\n year: !0\n};\n\nvar Ot = e => {\n e.prototype.add = function (e, t) {\n let a = this.clone();\n if (!t || 0 === e) return a;\n let n = this.clone();\n if (\"millisecond\" === (t = E.normalize(t))) return a.epoch += e, a;\n \"fortnight\" === t && (e *= 2, t = \"week\"), $[t] ? a.epoch += $[t] * e : \"week\" === t || \"weekend\" === t ? a.epoch += $.day * (7 * e) : \"quarter\" === t || \"season\" === t ? a.epoch += $.month * (3 * e) : \"quarterhour\" === t && (a.epoch += 15 * $.minute * e);\n let r = {};\n\n if (zt[t] && zt[t].forEach(e => {\n r[e] = n[e]();\n }), _t[t]) {\n const e = n.timezone().current.offset - a.timezone().current.offset;\n a.epoch += 3600 * e * 1e3;\n }\n\n if (\"month\" === t && (r.month = n.month() + e, r = wt.months(r, n)), \"week\" === t) {\n let t = n.date() + 7 * e;\n t <= 28 && t > 1 && (r.date = t);\n }\n\n if (\"weekend\" === t && \"saturday\" !== a.dayName()) a = a.day(\"saturday\", !0);else if (\"date\" === t) {\n if (e < 0) r = wt.daysBack(r, n, e);else {\n let t = n.date() + e;\n r = wt.days(r, n, t);\n }\n 0 !== e && n.isSame(a, \"day\") && (r.date = n.date() + e);\n } else if (\"quarter\" === t) {\n if (r.month = n.month() + 3 * e, r.year = n.year(), r.month < 0) {\n let e = Math.floor(r.month / 12),\n t = r.month + 12 * Math.abs(e);\n r.month = t, r.year += e;\n } else if (r.month >= 12) {\n let e = Math.floor(r.month / 12);\n r.month = r.month % 12, r.year += e;\n }\n\n r.date = n.date();\n } else if (\"year\" === t) {\n let t = n.year() + e,\n r = a.year();\n\n if (r < t) {\n let t = Math.floor(e / 4) || 1;\n a.epoch += Math.abs($.day * t);\n } else if (r > t) {\n let t = Math.floor(e / 4) || 1;\n a.epoch += $.day * t;\n }\n } else \"decade\" === t ? r.year = a.year() + 10 : \"century\" === t && (r.year = a.year() + 100);\n\n if (jt[t]) {\n let e = T[r.month];\n r.date = n.date(), r.date > e && (r.date = e);\n }\n\n return Object.keys(r).length > 1 && x(a, r), a;\n }, e.prototype.subtract = function (e, t) {\n return this.clone().add(-1 * e, t);\n }, e.prototype.minus = e.prototype.subtract, e.prototype.plus = e.prototype.add;\n};\n\nconst $t = {\n millisecond: e => e.epoch,\n second: e => [e.year(), e.month(), e.date(), e.hour(), e.minute(), e.second()].join(\"-\"),\n minute: e => [e.year(), e.month(), e.date(), e.hour(), e.minute()].join(\"-\"),\n hour: e => [e.year(), e.month(), e.date(), e.hour()].join(\"-\"),\n day: e => [e.year(), e.month(), e.date()].join(\"-\"),\n week: e => [e.year(), e.week()].join(\"-\"),\n month: e => [e.year(), e.month()].join(\"-\"),\n quarter: e => [e.year(), e.quarter()].join(\"-\"),\n year: e => e.year()\n};\n$t.date = $t.day;\n\nvar Dt = e => {\n const t = {\n isAfter: function (e) {\n e = E.beADate(e, this);\n let t = E.getEpoch(e);\n return null === t ? null : this.epoch > t;\n },\n isBefore: function (e) {\n e = E.beADate(e, this);\n let t = E.getEpoch(e);\n return null === t ? null : this.epoch < t;\n },\n isEqual: function (e) {\n e = E.beADate(e, this);\n let t = E.getEpoch(e);\n return null === t ? null : this.epoch === t;\n },\n isBetween: function (e, t, a = !1) {\n e = E.beADate(e, this), t = E.beADate(t, this);\n let n = E.getEpoch(e);\n if (null === n) return null;\n let r = E.getEpoch(t);\n return null === r ? null : a ? this.isBetween(e, t) || this.isEqual(e) || this.isEqual(t) : n < this.epoch && this.epoch < r;\n }\n };\n Object.keys(t).forEach(a => {\n e.prototype[a] = t[a];\n });\n};\n\nvar Mt = e => {\n const t = {\n i18n: e => {\n E.isObject(e.days) && we.set(e.days), E.isObject(e.months) && N.set(e.months), E.isBoolean(e.useTitleCase) && ve.set(e.useTitleCase);\n }\n };\n Object.keys(t).forEach(a => {\n e.prototype[a] = t[a];\n });\n},\n Pt = a,\n St = ot,\n qt = gt,\n Tt = Ot,\n Et = e => {\n e.prototype.isSame = function (t, a, n = !0) {\n let r = this;\n if (!a) return null;\n\n if (\"string\" == typeof t && \"object\" == typeof a) {\n let e = t;\n t = a, a = e;\n }\n\n return \"string\" != typeof t && \"number\" != typeof t || (t = new e(t, this.timezone.name)), a = a.replace(/s$/, \"\"), !0 === n && r.tz !== t.tz && ((t = t.clone()).tz = r.tz), $t[a] ? $t[a](r) === $t[a](t) : null;\n };\n},\n Nt = Dt,\n Ct = Mt;\n\nlet It = d;\n\nconst Yt = function (e, t, a = {}) {\n this.epoch = null, this.tz = Ge(t, It), this.silent = a.silent || !0, this.british = a.dmy || a.british, this._weekStart = 1, void 0 !== a.weekStart && (this._weekStart = a.weekStart), this._today = {}, void 0 !== a.today && (this._today = a.today), Object.defineProperty(this, \"d\", {\n get: function () {\n let e = Pt(this),\n t = (new Date(this.epoch).getTimezoneOffset() || 0) + 60 * e;\n t = 60 * t * 1e3;\n let a = this.epoch + t;\n return new Date(a);\n }\n }), Object.defineProperty(this, \"timezones\", {\n get: () => It,\n set: e => (It = e, e)\n });\n let n = at(this, e);\n this.epoch = n.epoch;\n};\n\nObject.keys(St).forEach(e => {\n Yt.prototype[e] = St[e];\n}), Yt.prototype.clone = function () {\n return new Yt(this.epoch, this.tz, {\n silent: this.silent,\n weekStart: this._weekStart,\n today: this._today,\n parsers: this.parsers\n });\n}, Yt.prototype.toLocalDate = function () {\n return this.toNativeDate();\n}, Yt.prototype.toNativeDate = function () {\n return new Date(this.epoch);\n}, qt(Yt), Tt(Yt), Et(Yt), Nt(Yt), Ct(Yt);\nvar At = Yt;\n\nvar xt = (e, t) => {\n let a = new At(null),\n n = new At(null);\n a = a.time(e), n = t ? n.time(t) : a.add(59, \"minutes\");\n let r = a.hour(),\n o = n.hour();\n return Object.keys(a.timezones).filter(e => {\n if (-1 === e.indexOf(\"/\")) return !1;\n let t = new At(null, e),\n i = t.hour();\n return i >= r && i <= o && !(i === r && t.minute() < a.minute()) && !(i === o && t.minute() > n.minute());\n });\n};\n\nconst Lt = (e, t, a) => new At(e, t, a),\n Ft = function (e) {\n let t = e._today || {};\n return Object.keys(t).forEach(a => {\n e = e[a](t[a]);\n }), e;\n};\n\nLt.now = (e, t) => {\n let a = new At(new Date().getTime(), e, t);\n return a = Ft(a), a;\n}, Lt.today = (e, t) => {\n let a = new At(new Date().getTime(), e, t);\n return a = Ft(a), a.startOf(\"day\");\n}, Lt.tomorrow = (e, t) => {\n let a = new At(new Date().getTime(), e, t);\n return a = Ft(a), a.add(1, \"day\").startOf(\"day\");\n}, Lt.yesterday = (e, t) => {\n let a = new At(new Date().getTime(), e, t);\n return a = Ft(a), a.subtract(1, \"day\").startOf(\"day\");\n}, Lt.extend = function (e = {}) {\n return Object.keys(e).forEach(t => {\n At.prototype[t] = e[t];\n }), this;\n}, Lt.timezones = function () {\n return new At().timezones;\n}, Lt.max = function (e, t) {\n let a = new At(null, e, t);\n return a.epoch = 864e13, a;\n}, Lt.min = function (e, t) {\n let a = new At(null, e, t);\n return a.epoch = -864e13, a;\n}, Lt.whereIts = xt, Lt.version = \"6.16.3\", Lt.plugin = Lt.extend;\nvar Bt = Lt;\nexport { Bt as default };","map":{"version":3,"sources":["/app/node_modules/spacetime/builds/spacetime.mjs"],"names":["e","t","a","n","r","split","o","i","Date","UTC","getUTCFullYear","s","u","timezones","tz","console","warn","dst","offset","hem","epoch","Object","freeze","__proto__","default","keys","forEach","Number","replace","utc","l","h","c","d","m","match","p","Intl","DateTimeFormat","resolvedOptions","timeZone","toLowerCase","f","reduce","y","g","error","trim","hasOwnProperty","test","Error","b","isLeapYear","isDate","prototype","toString","call","isNaN","valueOf","isArray","isObject","isBoolean","zeroPad","length","Array","join","titleCase","toUpperCase","substr","ordinal","toCardinal","String","parseInt","normalize","getEpoch","getTime","beADate","clone","set","formatTimezone","Math","abs","exports","k","year","getFullYear","month","date","w","parseArray","parseObject","assign","parseNumber","silent","v","now","_today","z","today","tonight","hour","tomorrow","add","startOf","yesterday","subtract","christmas","_","j","O","millisecond","second","minute","day","week","$","D","M","valid","walkTo","getMonth","seconds","milliseconds","P","S","q","T","E","N","short","long","mapping","sep","C","parseFloat","I","substring","ampm","Y","A","x","L","parseOffset","parseTime","parseYear","parseMonth","validate","F","B","Z","H","Q","G","reg","parse","U","V","W","J","K","british","R","X","ee","te","ae","ne","re","oe","ie","se","concat","quarter","season","getDate","ue","le","he","ce","isValid","de","me","pe","fe","ye","ge","be","ke","we","aliases","mo","tu","th","fr","sa","su","tues","weds","wedn","thur","thurs","ve","useTitleCase","ze","timezone","current","_e","je","dayName","monthName","time","hour24","hour12","era","json","name","numeric","iso","format","h24","toISOString","nice","Oe","mdy","dmy","ymd","$e","indexOf","De","Me","Pe","GG","GGG","GGGG","yy","yyy","yyyy","yyyyy","QQ","QQQ","QQQQ","MM","MMM","MMMM","ww","dd","dayOfYear","DD","DDD","EE","EEE","EEEE","EEEEE","eee","eeee","eeeee","aa","aaa","aaaa","h12","hh","HH","mm","ss","SSS","zz","zzz","zzzz","ZZ","ZZZ","ZZZZ","Se","qe","filter","map","Te","Ee","endOf","toFixed","Ne","Ce","progress","Ie","isBefore","isAfter","Ye","Ae","minutes","hours","years","months","weeks","days","xe","Le","almost","over","Fe","slice","Be","isSame","diff","every","rounded","qualified","precise","push","splice","Ze","north","south","He","Qe","quarterhour","_weekStart","hemisphere","decade","century","Ge","Ue","Ve","We","Je","Ke","Re","Xe","et","find","next","tt","epochShift","hasDst","Boolean","default_offset","change","start","back","isDST","at","nt","rt","hasDST","unixFmt","leapYear","nearest","since","last","goto","isAwake","isAsleep","daysInMonth","log","logYear","debug","from","fromNow","weekStart","inDST","round","each","ot","it","st","ut","lt","ht","minus","ct","dt","mt","getMilliseconds","getSeconds","getMinutes","getHours","hourFloat","dayTime","morning","breakfast","noon","lunch","afternoon","evening","dinner","night","midnight","pt","getDay","ft","setDate","setFullYear","setHours","setMinutes","setMonth","floor","millenium","yt","gt","bt","kt","wt","daysBack","vt","zt","_t","jt","Ot","plus","$t","Dt","isEqual","isBetween","Mt","i18n","Pt","St","qt","Tt","Et","Nt","Ct","It","Yt","defineProperty","get","getTimezoneOffset","parsers","toLocalDate","toNativeDate","At","xt","Lt","Ft","extend","max","min","whereIts","version","plugin","Bt"],"mappings":"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","sourcesContent":["const e=(e,t,a)=>{const[n,r]=e.split(\"/\"),[o,i]=r.split(\":\");return Date.UTC(a,n-1,o,i)-36e5*t};var t=(t,a,n,r,o)=>{const i=new Date(t).getUTCFullYear(),s=e(a,o,i),u=e(n,r,i);return t>=s&&t<u};var a=e=>{let a=e.timezones[e.tz];if(void 0===a)return console.warn(\"Warning: couldn't find timezone \"+e.tz),0;if(void 0===a.dst)return a.offset;let n=a.offset,r=a.offset+1;\"n\"===a.hem&&(r=n-1);let o=a.dst.split(\"->\");return!0===t(e.epoch,o[0],o[1],n,r)?n:r};var n,r=(n=Object.freeze({__proto__:null,default:{\"9|s\":\"2/dili,2/jayapura\",\"9|n\":\"2/chita,2/khandyga,2/pyongyang,2/seoul,2/tokyo,11/palau\",\"9.5|s|04/04:03->10/03:02\":\"4/adelaide,4/broken_hill,4/south,4/yancowinna\",\"9.5|s\":\"4/darwin,4/north\",\"8|s|03/08:01->10/04:00\":\"12/casey\",\"8|s\":\"2/kuala_lumpur,2/makassar,2/singapore,4/perth,2/ujung_pandang,4/west\",\"8|n\":\"2/brunei,2/choibalsan,2/hong_kong,2/irkutsk,2/kuching,2/macau,2/manila,2/shanghai,2/taipei,2/ulaanbaatar,2/chongqing,2/chungking,2/harbin,2/macao,2/ulan_bator\",\"8.75|s\":\"4/eucla\",\"7|s\":\"12/davis,2/jakarta,9/christmas\",\"7|n\":\"2/bangkok,2/barnaul,2/hovd,2/krasnoyarsk,2/novokuznetsk,2/novosibirsk,2/phnom_penh,2/pontianak,2/saigon,2/tomsk,2/vientiane,2/ho_chi_minh\",\"6|s\":\"12/vostok\",\"6|n\":\"2/almaty,2/bishkek,2/dhaka,2/omsk,2/qyzylorda,2/qostanay,2/thimphu,2/urumqi,9/chagos,2/dacca,2/kashgar,2/thimbu\",\"6.5|n\":\"2/rangoon,9/cocos,2/yangon\",\"5|s\":\"12/mawson,9/kerguelen\",\"5|n\":\"2/aqtau,2/aqtobe,2/ashgabat,2/atyrau,2/baku,2/dushanbe,2/karachi,2/oral,2/samarkand,2/tashkent,2/yekaterinburg,9/maldives,2/ashkhabad\",\"5.75|n\":\"2/katmandu,2/kathmandu\",\"5.5|n\":\"2/calcutta,2/colombo,2/kolkata\",\"4|s\":\"9/reunion\",\"4|n\":\"2/dubai,2/muscat,2/tbilisi,2/yerevan,8/astrakhan,8/samara,8/saratov,8/ulyanovsk,8/volgograd,2/volgograd,9/mahe,9/mauritius\",\"4.5|n|03/22:00->09/21:24\":\"2/tehran\",\"4.5|n\":\"2/kabul\",\"3|s\":\"12/syowa,9/antananarivo\",\"3|n|03/28:03->10/31:04\":\"2/famagusta,2/nicosia,8/athens,8/bucharest,8/helsinki,8/kiev,8/mariehamn,8/riga,8/sofia,8/tallinn,8/uzhgorod,8/vilnius,8/zaporozhye,8/nicosia\",\"3|n|03/28:02->10/31:03\":\"8/chisinau,8/tiraspol\",\"3|n|03/28:00->10/30:24\":\"2/beirut\",\"3|n|03/27:00->10/30:01\":\"2/gaza,2/hebron\",\"3|n|03/26:02->10/31:02\":\"2/jerusalem,2/tel_aviv\",\"3|n|03/26:00->10/29:01\":\"2/amman\",\"3|n|03/26:00->10/28:24\":\"2/damascus\",\"3|n\":\"0/addis_ababa,0/asmera,0/dar_es_salaam,0/djibouti,0/juba,0/kampala,0/mogadishu,0/nairobi,2/aden,2/baghdad,2/bahrain,2/kuwait,2/qatar,2/riyadh,8/istanbul,8/kirov,8/minsk,8/moscow,8/simferopol,9/comoro,9/mayotte,0/asmara,2/istanbul\",\"2|s|03/28:02->10/31:02\":\"12/troll\",\"2|s\":\"0/gaborone,0/harare,0/johannesburg,0/lubumbashi,0/lusaka,0/maputo,0/maseru,0/mbabane\",\"2|n|03/28:02->10/31:03\":\"0/ceuta,arctic/longyearbyen,8/amsterdam,8/andorra,8/belgrade,8/berlin,8/bratislava,8/brussels,8/budapest,8/busingen,8/copenhagen,8/gibraltar,8/ljubljana,8/luxembourg,8/madrid,8/malta,8/monaco,8/oslo,8/paris,8/podgorica,8/prague,8/rome,8/san_marino,8/sarajevo,8/skopje,8/stockholm,8/tirane,8/vaduz,8/vatican,8/vienna,8/warsaw,8/zagreb,8/zurich,3/jan_mayen\",\"2|n\":\"0/blantyre,0/bujumbura,0/cairo,0/khartoum,0/kigali,0/tripoli,8/kaliningrad\",\"1|s\":\"0/brazzaville,0/kinshasa,0/luanda,0/windhoek\",\"1|n|04/11:03->05/16:02\":\"0/casablanca,0/el_aaiun\",\"1|n|03/28:01->10/31:02\":\"3/canary,3/faeroe,3/madeira,8/dublin,8/guernsey,8/isle_of_man,8/jersey,8/lisbon,8/london,3/faroe,8/belfast\",\"1|n\":\"0/algiers,0/bangui,0/douala,0/lagos,0/libreville,0/malabo,0/ndjamena,0/niamey,0/porto-novo,0/tunis\",\"14|n\":\"11/kiritimati\",\"13|s|04/04:04->09/26:03\":\"11/apia\",\"13|s|01/15:02->11/05:03\":\"11/tongatapu\",\"13|n\":\"11/enderbury,11/fakaofo\",\"12|s|04/04:03->09/26:02\":\"12/mcmurdo,11/auckland,12/south_pole\",\"12|s|01/17:03->11/14:02\":\"11/fiji\",\"12|n\":\"2/anadyr,2/kamchatka,2/srednekolymsk,11/funafuti,11/kwajalein,11/majuro,11/nauru,11/tarawa,11/wake,11/wallis\",\"12.75|s|04/04:03->09/26:02\":\"11/chatham\",\"11|s|04/04:03->10/03:02\":\"12/macquarie\",\"11|s\":\"11/bougainville\",\"11|n\":\"2/magadan,2/sakhalin,11/efate,11/guadalcanal,11/kosrae,11/noumea,11/ponape,11/pohnpei\",\"11.5|n|04/04:03->10/03:02\":\"11/norfolk\",\"10|s|04/04:03->10/03:02\":\"4/currie,4/hobart,4/melbourne,4/sydney,4/act,4/canberra,4/nsw,4/tasmania,4/victoria\",\"10|s\":\"12/dumontdurville,4/brisbane,4/lindeman,11/port_moresby,4/queensland\",\"10|n\":\"2/ust-nera,2/vladivostok,2/yakutsk,11/guam,11/saipan,11/truk,11/chuuk,11/yap\",\"10.5|s|04/04:01->10/03:02\":\"4/lord_howe,4/lhi\",\"0|n|03/28:00->10/31:01\":\"1/scoresbysund,3/azores\",\"0|n\":\"0/abidjan,0/accra,0/bamako,0/banjul,0/bissau,0/conakry,0/dakar,0/freetown,0/lome,0/monrovia,0/nouakchott,0/ouagadougou,0/sao_tome,1/danmarkshavn,3/reykjavik,3/st_helena,13/gmt,13/utc,0/timbuktu,13/gmt-0,13/gmt+0,13/gmt0,13/greenwich,13/uct,13/universal,13/zulu\",\"-9|n|03/14:02->11/07:02\":\"1/adak,1/atka,us/aleutian\",\"-9|n\":\"11/gambier\",\"-9.5|n\":\"11/marquesas\",\"-8|n|03/14:02->11/07:02\":\"1/anchorage,1/juneau,1/metlakatla,1/nome,1/sitka,1/yakutat,us/alaska\",\"-8|n\":\"11/pitcairn\",\"-7|n|03/14:02->11/07:02\":\"1/los_angeles,1/santa_isabel,1/tijuana,1/vancouver,1/ensenada,6/pacific,10/bajanorte,us/pacific-new,us/pacific\",\"-7|n|03/08:02->11/01:01\":\"1/dawson,1/whitehorse,6/yukon\",\"-7|n\":\"1/creston,1/dawson_creek,1/fort_nelson,1/hermosillo,1/phoenix,us/arizona\",\"-6|s|04/03:22->09/04:22\":\"11/easter,7/easterisland\",\"-6|n|04/04:02->10/31:02\":\"1/chihuahua,1/mazatlan,10/bajasur\",\"-6|n|03/14:02->11/07:02\":\"1/boise,1/cambridge_bay,1/denver,1/edmonton,1/inuvik,1/ojinaga,1/yellowknife,1/shiprock,6/mountain,us/mountain\",\"-6|n\":\"1/belize,1/costa_rica,1/el_salvador,1/guatemala,1/managua,1/regina,1/swift_current,1/tegucigalpa,11/galapagos,6/east-saskatchewan,6/saskatchewan\",\"-5|s\":\"1/lima,1/rio_branco,1/porto_acre,5/acre\",\"-5|n|04/04:02->10/31:02\":\"1/bahia_banderas,1/merida,1/mexico_city,1/monterrey,10/general\",\"-5|n|03/14:02->11/07:02\":\"1/chicago,1/matamoros,1/menominee,1/rainy_river,1/rankin_inlet,1/resolute,1/winnipeg,1/indiana/knox,1/indiana/tell_city,1/north_dakota/beulah,1/north_dakota/center,1/north_dakota/new_salem,1/knox_in,6/central,us/central,us/indiana-starke\",\"-5|n|03/12:03->11/05:01\":\"1/north_dakota\",\"-5|n\":\"1/bogota,1/cancun,1/cayman,1/coral_harbour,1/eirunepe,1/guayaquil,1/jamaica,1/panama,1/atikokan\",\"-4|s|05/13:23->08/13:01\":\"12/palmer\",\"-4|s|04/03:24->09/05:00\":\"1/santiago,7/continental\",\"-4|s|03/27:24->10/03:00\":\"1/asuncion\",\"-4|s|02/16:24->11/03:00\":\"1/campo_grande,1/cuiaba\",\"-4|s\":\"1/la_paz,1/manaus,5/west\",\"-4|n|03/14:02->11/07:02\":\"1/detroit,1/grand_turk,1/indianapolis,1/iqaluit,1/louisville,1/montreal,1/nassau,1/new_york,1/nipigon,1/pangnirtung,1/port-au-prince,1/thunder_bay,1/toronto,1/indiana/marengo,1/indiana/petersburg,1/indiana/vevay,1/indiana/vincennes,1/indiana/winamac,1/kentucky/monticello,1/fort_wayne,1/indiana/indianapolis,1/kentucky/louisville,6/eastern,us/east-indiana,us/eastern,us/michigan\",\"-4|n|03/14:00->11/07:01\":\"1/havana\",\"-4|n|03/12:03->11/05:01\":\"1/indiana,1/kentucky\",\"-4|n\":\"1/anguilla,1/antigua,1/aruba,1/barbados,1/blanc-sablon,1/boa_vista,1/caracas,1/curacao,1/dominica,1/grenada,1/guadeloupe,1/guyana,1/kralendijk,1/lower_princes,1/marigot,1/martinique,1/montserrat,1/port_of_spain,1/porto_velho,1/puerto_rico,1/santo_domingo,1/st_barthelemy,1/st_kitts,1/st_lucia,1/st_thomas,1/st_vincent,1/tortola,1/virgin\",\"-3|s\":\"1/argentina,1/buenos_aires,1/catamarca,1/cordoba,1/fortaleza,1/jujuy,1/mendoza,1/montevideo,1/punta_arenas,1/sao_paulo,12/rothera,3/stanley,1/argentina/la_rioja,1/argentina/rio_gallegos,1/argentina/salta,1/argentina/san_juan,1/argentina/san_luis,1/argentina/tucuman,1/argentina/ushuaia,1/argentina/buenos_aires,1/argentina/catamarca,1/argentina/comodrivadavia,1/argentina/cordoba,1/argentina/jujuy,1/argentina/mendoza,1/rosario,5/east\",\"-3|n|03/14:02->11/07:02\":\"1/glace_bay,1/goose_bay,1/halifax,1/moncton,1/thule,3/bermuda,6/atlantic\",\"-3|n\":\"1/araguaina,1/bahia,1/belem,1/cayenne,1/maceio,1/paramaribo,1/recife,1/santarem\",\"-2|n|03/27:22->10/30:23\":\"1/godthab,1/nuuk\",\"-2|n|03/14:02->11/07:02\":\"1/miquelon\",\"-2|n\":\"1/noronha,3/south_georgia,5/denoronha\",\"-2.5|n|03/14:02->11/07:02\":\"1/st_johns,6/newfoundland\",\"-1|n\":\"3/cape_verde\",\"-11|n\":\"11/midway,11/niue,11/pago_pago,11/samoa,us/samoa\",\"-10|n\":\"11/honolulu,11/johnston,11/rarotonga,11/tahiti,us/hawaii\"}}))&&n.default||n,o=[\"africa\",\"america\",\"asia\",\"atlantic\",\"australia\",\"brazil\",\"canada\",\"chile\",\"europe\",\"indian\",\"mexico\",\"pacific\",\"antarctica\",\"etc\"];let i={};Object.keys(r).forEach(e=>{let t=e.split(\"|\"),a={offset:Number(t[0]),hem:t[1]};t[2]&&(a.dst=t[2]),r[e].split(\",\").forEach(e=>{e=e.replace(/(^[0-9]+)\\//,(e,t)=>(t=Number(t),o[t]+\"/\")),i[e]=a})}),i.utc={offset:0,hem:\"n\"};for(let e=-14;e<=14;e+=.5){let t=e;t>0&&(t=\"+\"+t);let a=\"etc/gmt\"+t;i[a]={offset:-1*e,hem:\"n\"},a=\"utc/gmt\"+t,i[a]={offset:-1*e,hem:\"n\"}}const s=/(\\-?[0-9]+)h(rs)?/i,u=/(\\-?[0-9]+)/,l=/utc([\\-+]?[0-9]+)/i,h=/gmt([\\-+]?[0-9]+)/i,c=function(e){return(e=Number(e))>=-13&&e<=13?\"etc/gmt\"+(e=((e*=-1)>0?\"+\":\"\")+e):null};var d=i,m=function(e){let t=e.match(s);if(null!==t)return c(t[1]);if(t=e.match(l),null!==t)return c(t[1]);if(t=e.match(h),null!==t){let e=-1*Number(t[1]);return c(e)}return t=e.match(u),null!==t?c(t[1]):null};const p=(()=>{let e=(()=>{if(\"undefined\"==typeof Intl||void 0===Intl.DateTimeFormat)return null;let e=Intl.DateTimeFormat();if(void 0===e||void 0===e.resolvedOptions)return null;let t=e.resolvedOptions().timeZone;return t?t.toLowerCase():null})();return null===e?\"utc\":e})(),f=Object.keys(d).reduce((e,t)=>{let a=t.split(\"/\")[1]||\"\";return a=a.replace(/_/g,\" \"),e[a]=t,e},{});var y,g=(e,t)=>{if(!e)return p;\"string\"!=typeof e&&console.error(\"Timezone must be a string - recieved: '\",e,\"'\\n\");let a=e.trim();if(a=a.toLowerCase(),!0===t.hasOwnProperty(a))return a;if(a=(e=>(e=(e=(e=(e=(e=e.replace(/ time/g,\"\")).replace(/ (standard|daylight|summer)/g,\"\")).replace(/\\b(east|west|north|south)ern/g,\"$1\")).replace(/\\b(africa|america|australia)n/g,\"$1\")).replace(/\\beuropean/g,\"europe\")).replace(/\\islands/g,\"island\"))(a),!0===t.hasOwnProperty(a))return a;if(!0===f.hasOwnProperty(a))return f[a];if(!0===/[0-9]/.test(a)){let e=m(a);if(e)return e}throw new Error(\"Spacetime: Cannot find timezone named: '\"+e+\"'. Please enter an IANA timezone id.\")},b=(function(e,t){t.isLeapYear=e=>e%4==0&&e%100!=0||e%400==0,t.isDate=e=>\"[object Date]\"===Object.prototype.toString.call(e)&&!isNaN(e.valueOf()),t.isArray=e=>\"[object Array]\"===Object.prototype.toString.call(e),t.isObject=e=>\"[object Object]\"===Object.prototype.toString.call(e),t.isBoolean=e=>\"[object Boolean]\"===Object.prototype.toString.call(e),t.zeroPad=(e,t=2)=>(e+=\"\").length>=t?e:new Array(t-e.length+1).join(\"0\")+e,t.titleCase=e=>e?e[0].toUpperCase()+e.substr(1):\"\",t.ordinal=e=>{let t=e%10,a=e%100;return 1===t&&11!==a?e+\"st\":2===t&&12!==a?e+\"nd\":3===t&&13!==a?e+\"rd\":e+\"th\"},t.toCardinal=e=>(e=(e=String(e)).replace(/([0-9])(st|nd|rd|th)$/i,\"$1\"),parseInt(e,10)),t.normalize=(e=\"\")=>\"day\"===(e=(e=(e=(e=e.toLowerCase().trim()).replace(/ies$/,\"y\")).replace(/s$/,\"\")).replace(/-/g,\"\"))||\"days\"===e?\"date\":\"min\"===e||\"mins\"===e?\"minute\":e,t.getEpoch=e=>\"number\"==typeof e?e:t.isDate(e)?e.getTime():e.epoch?e.epoch:null,t.beADate=(e,a)=>!1===t.isObject(e)?a.clone().set(e):e,t.formatTimezone=(e,a=\"\")=>{const n=e>0?\"+\":\"-\",r=Math.abs(e);return`${n}${t.zeroPad(parseInt(\"\"+r,10))}${a}${t.zeroPad(r%1*60)}`}}(y={exports:{}},y.exports),y.exports);b.isLeapYear,b.isDate,b.isArray,b.isObject,b.isBoolean,b.zeroPad,b.titleCase,b.ordinal,b.toCardinal,b.normalize,b.getEpoch,b.beADate,b.formatTimezone;const k={year:(new Date).getFullYear(),month:0,date:1};var w={parseArray:(e,t,a)=>{if(0===t.length)return e;let n=[\"year\",\"month\",\"date\",\"hour\",\"minute\",\"second\",\"millisecond\"];for(let r=0;r<n.length;r++){let o=t[r]||a[n[r]]||k[n[r]]||0;e=e[n[r]](o)}return e},parseObject:(e,t,a)=>{if(0===Object.keys(t).length)return e;t=Object.assign({},k,a,t);let n=Object.keys(t);for(let r=0;r<n.length;r++){let o=n[r];if(void 0===e[o]||\"function\"!=typeof e[o])continue;if(null===t[o]||void 0===t[o]||\"\"===t[o])continue;let i=t[o]||a[o]||k[o]||0;e=e[o](i)}return e},parseNumber:function(e,t){return t>0&&t<25e8&&!1===e.silent&&(console.warn(\" - Warning: You are setting the date to January 1970.\"),console.warn(\" - did input seconds instead of milliseconds?\")),e.epoch=t,e}};const v=function(e){return e.epoch=Date.now(),Object.keys(e._today||{}).forEach(t=>{\"function\"==typeof e[t]&&(e=e[t](e._today[t]))}),e},z={now:e=>v(e),today:e=>v(e),tonight:e=>e=(e=v(e)).hour(18),tomorrow:e=>e=(e=(e=v(e)).add(1,\"day\")).startOf(\"day\"),yesterday:e=>e=(e=(e=v(e)).subtract(1,\"day\")).startOf(\"day\"),christmas:e=>{let t=v(e).year();return e=e.set([t,11,25,18,0,0])},\"new years\":e=>{let t=v(e).year();return e=e.set([t,11,31,18,0,0])}};z[\"new years eve\"]=z[\"new years\"];var _=z;var j=function(e){return e=(e=(e=(e=e.replace(/\\b(mon|tues?|wed|wednes|thur?s?|fri|sat|satur|sun)(day)?\\b/i,\"\")).replace(/([0-9])(th|rd|st|nd)/,\"$1\")).replace(/,/g,\"\")).replace(/ +/g,\" \").trim()};let O={millisecond:1,second:1e3,minute:6e4,hour:36e5,day:864e5};O.date=O.day,O.month=25488e5,O.week=6048e5,O.year=3154e7,Object.keys(O).forEach(e=>{O[e+\"s\"]=O[e]});var $=O;const D=(e,t,a,n,r)=>{let o=e.d[a]();if(o===t)return;let i=null===r?null:e.d[r](),s=e.epoch,u=t-o;e.epoch+=$[n]*u,\"day\"===n&&Math.abs(u)>28&&t<28&&(e.epoch+=$.hour),null!==r&&i!==e.d[r]()&&(e.epoch=s);const l=$[n]/2;for(;e.d[a]()<t;)e.epoch+=l;for(;e.d[a]()>t;)e.epoch-=l;null!==r&&i!==e.d[r]()&&(e.epoch=s)},M={year:{valid:e=>e>-4e3&&e<4e3,walkTo:(e,t)=>D(e,t,\"getFullYear\",\"year\",null)},month:{valid:e=>e>=0&&e<=11,walkTo:(e,t)=>{let a=e.d,n=a.getMonth(),r=e.epoch,o=a.getFullYear();if(n===t)return;let i=t-n;for(e.epoch+=$.day*(28*i),o!==e.d.getFullYear()&&(e.epoch=r);e.d.getMonth()<t;)e.epoch+=$.day;for(;e.d.getMonth()>t;)e.epoch-=$.day}},date:{valid:e=>e>0&&e<=31,walkTo:(e,t)=>D(e,t,\"getDate\",\"day\",\"getMonth\")},hour:{valid:e=>e>=0&&e<24,walkTo:(e,t)=>D(e,t,\"getHours\",\"hour\",\"getDate\")},minute:{valid:e=>e>=0&&e<60,walkTo:(e,t)=>D(e,t,\"getMinutes\",\"minute\",\"getHours\")},second:{valid:e=>e>=0&&e<60,walkTo:(e,t)=>{e.epoch=e.seconds(t).epoch}},millisecond:{valid:e=>e>=0&&e<1e3,walkTo:(e,t)=>{e.epoch=e.milliseconds(t).epoch}}};var P=(e,t)=>{let a=Object.keys(M),n=e.clone();for(let r=0;r<a.length;r++){let o=a[r],i=t[o];if(void 0===i&&(i=n[o]()),\"string\"==typeof i&&(i=parseInt(i,10)),!M[o].valid(i))return e.epoch=null,void(!1===e.silent&&console.warn(\"invalid \"+o+\": \"+i));M[o].walkTo(e,i)}};let S=[\"jan\",\"feb\",\"mar\",\"apr\",\"may\",\"jun\",\"jul\",\"aug\",\"sept\",\"oct\",\"nov\",\"dec\"],q=[\"january\",\"february\",\"march\",\"april\",\"may\",\"june\",\"july\",\"august\",\"september\",\"october\",\"november\",\"december\"];var T=[31,28,31,30,31,30,31,31,30,31,30,31],E=b,N={short:()=>S,long:()=>q,mapping:()=>function(){const e={sep:8};for(let t=0;t<S.length;t++)e[S[t]]=t;for(let t=0;t<q.length;t++)e[q[t]]=t;return e}(),set:e=>{S=e.short||S,q=e.long||q}},C=(e,t)=>{if(!t)return e;\"Z\"!==t&&\"z\"!==t||(t=\"+0000\");let a=0;/^[\\+-]?[0-9]{2}:[0-9]{2}$/.test(t)&&(!0===/:00/.test(t)&&(t=t.replace(/:00/,\"\")),!0===/:30/.test(t)&&(t=t.replace(/:30/,\".5\"))),/^[\\+-]?[0-9]{4}$/.test(t)&&(t=t.replace(/30$/,\".5\")),a=parseFloat(t),Math.abs(a)>100&&(a/=100),a*=-1,a>=0&&(a=\"+\"+a);let n=\"etc/gmt\"+a;return e.timezones[n]&&(e.tz=n),e},I=(e,t=\"\")=>{let a=(t=t.replace(/^\\s+/,\"\").toLowerCase()).match(/([0-9]{1,2}):([0-9]{1,2}):?([0-9]{1,2})?[:\\.]?([0-9]{1,4})?/);if(null!==a){let n=Number(a[1]);if(n<0||n>24)return e.startOf(\"day\");let r=Number(a[2]);if(a[2].length<2||r<0||r>59)return e.startOf(\"day\");a[4]>999&&(a[4]=parseInt((\"\"+a[4]).substring(0,3),10)),e=(e=(e=(e=e.hour(n)).minute(r)).seconds(a[3]||0)).millisecond(a[4]||0);let o=t.match(/[\\b0-9] ?(am|pm)\\b/);return null!==o&&o[1]&&(e=e.ampm(o[1])),e}if(a=t.match(/([0-9]+) ?(am|pm)/),null!==a&&a[1]){let t=Number(a[1]);return t>12||t<1?e.startOf(\"day\"):e=(e=(e=e.hour(a[1]||0)).ampm(a[2])).startOf(\"hour\")}return e=e.startOf(\"day\")};const Y=E.isLeapYear,A=N.mapping();var x=P,L={parseOffset:C,parseTime:I,parseYear:(e=\"\",t)=>{if(e=e.trim(),!0===/^'[0-9][0-9]$/.test(e)){let t=Number(e.replace(/'/,\"\"));return t>50?1900+t:2e3+t}let a=parseInt(e,10);return!a&&t&&(a=t.year),a=a||(new Date).getFullYear(),a},parseMonth:function(e){return e=e.toLowerCase().trim(),A[e]},validate:e=>{if(!0!==T.hasOwnProperty(e.month))return!1;if(1===e.month)return!!(Y(e.year)&&e.date<=29)||e.date<=28;let t=T[e.month]||0;return e.date<=t}};const{validate:F,parseTime:B,parseYear:Z,parseMonth:H,parseOffset:Q}=L;var G=[{reg:/^(\\-?0?0?[0-9]{3,4})-([0-9]{1,2})-([0-9]{1,2})[T| ]([0-9.:]+)(Z|[0-9\\-\\+:]+)?$/i,parse:(e,t)=>{let a={year:t[1],month:parseInt(t[2],10)-1,date:t[3]};return!1===F(a)?(e.epoch=null,e):(Q(e,t[5]),x(e,a),e=B(e,t[4]))}},{reg:/^([0-9]{4})[\\-\\/\\. ]([0-9]{1,2})[\\-\\/\\. ]([0-9]{1,2})( [0-9]{1,2}(:[0-9]{0,2})?(:[0-9]{0,3})? ?(am|pm)?)?$/i,parse:(e,t)=>{let a={year:t[1],month:parseInt(t[2],10)-1,date:parseInt(t[3],10)};return a.month>=12&&(a.date=parseInt(t[2],10),a.month=parseInt(t[3],10)-1),!1===F(a)?(e.epoch=null,e):(x(e,a),e=B(e,t[4]))}},{reg:/^([0-9]{4})[\\-\\/\\. ]([a-z]+)[\\-\\/\\. ]([0-9]{1,2})( [0-9]{1,2}(:[0-9]{0,2})?(:[0-9]{0,3})? ?(am|pm)?)?$/i,parse:(e,t)=>{let a={year:Z(t[1],e._today),month:H(t[2]),date:E.toCardinal(t[3]||\"\")};return!1===F(a)?(e.epoch=null,e):(x(e,a),e=B(e,t[4]))}}];const{validate:U,parseTime:V,parseYear:W,parseMonth:J}=L;var K=[{reg:/^([0-9]{1,2})[\\-\\/.]([0-9]{1,2})[\\-\\/.]?([0-9]{4})?( [0-9]{1,2}:[0-9]{2}:?[0-9]{0,2}? ?(am|pm|gmt))?$/i,parse:(e,t)=>{let a=parseInt(t[1],10)-1,n=parseInt(t[2],10);(e.british||a>=12)&&(n=parseInt(t[1],10),a=parseInt(t[2],10)-1);let r={date:n,month:a,year:W(t[3],e._today)||(new Date).getFullYear()};return!1===U(r)?(e.epoch=null,e):(x(e,r),e=V(e,t[4]))}},{reg:/^([a-z]+)[\\-\\/\\. ]([0-9]{1,2})[\\-\\/\\. ]?([0-9]{4}|'[0-9]{2})?( [0-9]{1,2}(:[0-9]{0,2})?(:[0-9]{0,3})? ?(am|pm)?)?$/i,parse:(e,t)=>{let a={year:W(t[3],e._today),month:J(t[1]),date:E.toCardinal(t[2]||\"\")};return!1===U(a)?(e.epoch=null,e):(x(e,a),e=V(e,t[4]))}},{reg:/^([a-z]+) ([0-9]{1,2})( [0-9]{4})?( ([0-9:]+( ?am| ?pm| ?gmt)?))?$/i,parse:(e,t)=>{let a={year:W(t[3],e._today),month:J(t[1]),date:E.toCardinal(t[2]||\"\")};return!1===U(a)?(e.epoch=null,e):(x(e,a),e=V(e,t[4]))}},{reg:/^([a-z]+) ([0-9]{1,2})( [0-9:]+)?( \\+[0-9]{4})?( [0-9]{4})?$/i,parse:(e,t)=>{let a={year:W(t[5],e._today),month:J(t[1]),date:E.toCardinal(t[2]||\"\")};return!1===U(a)?(e.epoch=null,e):(x(e,a),e=V(e,t[3]))}}];const{validate:R,parseTime:X,parseYear:ee,parseMonth:te}=L;var ae=[{reg:/^([0-9]{1,2})[\\-\\/]([a-z]+)[\\-\\/]?([0-9]{4})?$/i,parse:(e,t)=>{let a={year:ee(t[3],e._today),month:te(t[2]),date:E.toCardinal(t[1]||\"\")};return!1===R(a)?(e.epoch=null,e):(x(e,a),e=X(e,t[4]))}},{reg:/^([0-9]{1,2})( [a-z]+)( [0-9]{4}| '[0-9]{2})? ?([0-9]{1,2}:[0-9]{2}:?[0-9]{0,2}? ?(am|pm|gmt))?$/i,parse:(e,t)=>{let a={year:ee(t[3],e._today),month:te(t[2]),date:E.toCardinal(t[1])};return a.month&&!1!==R(a)?(x(e,a),e=X(e,t[4])):(e.epoch=null,e)}},{reg:/^([0-9]{1,2})[\\. -/]([a-z]+)[\\. -/]([0-9]{4})?( [0-9]{1,2}(:[0-9]{0,2})?(:[0-9]{0,3})? ?(am|pm)?)?$/i,parse:(e,t)=>{let a={date:Number(t[1]),month:te(t[2]),year:Number(t[3])};return!1===R(a)?(e.epoch=null,e):(x(e,a),e=e.startOf(\"day\"),e=X(e,t[4]))}}];const{validate:ne,parseTime:re,parseYear:oe,parseMonth:ie}=L;var se=[].concat(G,K,ae,[{reg:/^([0-9]{4})[\\-\\/]([0-9]{2})$/i,parse:(e,t)=>{let a={year:t[1],month:parseInt(t[2],10)-1,date:1};return!1===ne(a)?(e.epoch=null,e):(x(e,a),e=re(e,t[4]))}},{reg:/^([a-z]+) ([0-9]{4})$/i,parse:(e,t)=>{let a={year:oe(t[2],e._today),month:ie(t[1]),date:e._today.date||1};return!1===ne(a)?(e.epoch=null,e):(x(e,a),e=re(e,t[4]))}},{reg:/^(q[0-9])( of)?( [0-9]{4})?/i,parse:(e,t)=>{let a=t[1]||\"\";e=e.quarter(a);let n=t[3]||\"\";return n&&(n=n.trim(),e=e.year(n)),e}},{reg:/^(spring|summer|winter|fall|autumn)( of)?( [0-9]{4})?/i,parse:(e,t)=>{let a=t[1]||\"\";e=e.season(a);let n=t[3]||\"\";return n&&(n=n.trim(),e=e.year(n)),e}},{reg:/^[0-9,]+ ?b\\.?c\\.?$/i,parse:(e,t)=>{let a=t[0]||\"\";a=a.replace(/^([0-9,]+) ?b\\.?c\\.?$/i,\"-$1\");let n=new Date,r={year:parseInt(a.trim(),10),month:n.getMonth(),date:n.getDate()};return!1===ne(r)?(e.epoch=null,e):(x(e,r),e=re(e))}},{reg:/^[0-9,]+ ?(a\\.?d\\.?|c\\.?e\\.?)$/i,parse:(e,t)=>{let a=t[0]||\"\";a=a.replace(/,/g,\"\");let n=new Date,r={year:parseInt(a.trim(),10),month:n.getMonth(),date:n.getDate()};return!1===ne(r)?(e.epoch=null,e):(x(e,r),e=re(e))}},{reg:/^[0-9]{4}( ?a\\.?d\\.?)?$/i,parse:(e,t)=>{let a=e._today;a.month&&!a.date&&(a.date=1);let n=new Date,r={year:oe(t[0],a),month:a.month||n.getMonth(),date:a.date||n.getDate()};return!1===ne(r)?(e.epoch=null,e):(x(e,r),e=re(e))}}]);var ue=w,le=_,he=j,ce=function(e,t,a){for(let n=0;n<se.length;n++){let r=t.match(se[n].reg);if(r){let t=se[n].parse(e,r,a);if(null!==t&&t.isValid())return t}}return!1===e.silent&&console.warn(\"Warning: couldn't parse date-string: '\"+t+\"'\"),e.epoch=null,e};const{parseArray:de,parseObject:me,parseNumber:pe}=ue,fe={year:(new Date).getFullYear(),month:0,date:1};var ye=(e,t)=>{let a=e._today||fe;if(\"number\"==typeof t)return pe(e,t);if(e.epoch=Date.now(),e._today&&E.isObject(e._today)&&Object.keys(e._today).length>0){let t=me(e,a,fe);t.isValid()&&(e.epoch=t.epoch)}return null==t||\"\"===t?e:!0===E.isDate(t)?(e.epoch=t.getTime(),e):!0===E.isArray(t)?e=de(e,t,a):!0===E.isObject(t)?t.epoch?(e.epoch=t.epoch,e.tz=t.tz,e):e=me(e,t,a):\"string\"!=typeof t?e:(t=he(t),!0===le.hasOwnProperty(t)?e=le[t](e):ce(e,t))};let ge=[\"sun\",\"mon\",\"tue\",\"wed\",\"thu\",\"fri\",\"sat\"],be=[\"sunday\",\"monday\",\"tuesday\",\"wednesday\",\"thursday\",\"friday\",\"saturday\"];let ke=!0;var we={short:()=>ge,long:()=>be,set:e=>{ge=e.short||ge,be=e.long||be},aliases:{mo:1,tu:2,we:3,th:4,fr:5,sa:6,su:7,tues:2,weds:3,wedn:3,thur:4,thurs:4}},ve={useTitleCase:()=>ke,set:e=>{ke=e}},ze=e=>{let t=e.timezone().current.offset;return t?E.formatTimezone(t,\":\"):\"Z\"};const _e=e=>ve.useTitleCase()?E.titleCase(e):e,je={day:e=>_e(e.dayName()),\"day-short\":e=>_e(we.short()[e.day()]),\"day-number\":e=>e.day(),\"day-ordinal\":e=>E.ordinal(e.day()),\"day-pad\":e=>E.zeroPad(e.day()),date:e=>e.date(),\"date-ordinal\":e=>E.ordinal(e.date()),\"date-pad\":e=>E.zeroPad(e.date()),month:e=>_e(e.monthName()),\"month-short\":e=>_e(N.short()[e.month()]),\"month-number\":e=>e.month(),\"month-ordinal\":e=>E.ordinal(e.month()),\"month-pad\":e=>E.zeroPad(e.month()),\"iso-month\":e=>E.zeroPad(e.month()+1),year:e=>{let t=e.year();return t>0?t:(t=Math.abs(t),t+\" BC\")},\"year-short\":e=>{let t=e.year();return t>0?\"'\"+String(e.year()).substr(2,4):(t=Math.abs(t),t+\" BC\")},\"iso-year\":e=>{let t=e.year(),a=t<0,n=E.zeroPad(Math.abs(t),4);return a&&(n=E.zeroPad(n,6),n=\"-\"+n),n},time:e=>e.time(),\"time-24\":e=>`${e.hour24()}:${E.zeroPad(e.minute())}`,hour:e=>e.hour12(),\"hour-pad\":e=>E.zeroPad(e.hour12()),\"hour-24\":e=>e.hour24(),\"hour-24-pad\":e=>E.zeroPad(e.hour24()),minute:e=>e.minute(),\"minute-pad\":e=>E.zeroPad(e.minute()),second:e=>e.second(),\"second-pad\":e=>E.zeroPad(e.second()),millisecond:e=>e.millisecond(),\"millisecond-pad\":e=>E.zeroPad(e.millisecond(),3),ampm:e=>e.ampm(),quarter:e=>\"Q\"+e.quarter(),season:e=>e.season(),era:e=>e.era(),json:e=>e.json(),timezone:e=>e.timezone().name,offset:e=>ze(e),numeric:e=>`${e.year()}/${E.zeroPad(e.month()+1)}/${E.zeroPad(e.date())}`,\"numeric-us\":e=>`${E.zeroPad(e.month()+1)}/${E.zeroPad(e.date())}/${e.year()}`,\"numeric-uk\":e=>`${E.zeroPad(e.date())}/${E.zeroPad(e.month()+1)}/${e.year()}`,\"mm/dd\":e=>`${E.zeroPad(e.month()+1)}/${E.zeroPad(e.date())}`,iso:e=>`${e.format(\"iso-year\")}-${E.zeroPad(e.month()+1)}-${E.zeroPad(e.date())}T${E.zeroPad(e.h24())}:${E.zeroPad(e.minute())}:${E.zeroPad(e.second())}.${E.zeroPad(e.millisecond(),3)}${ze(e)}`,\"iso-short\":e=>{let t=E.zeroPad(e.month()+1),a=E.zeroPad(e.date());var n;return`${(n=e.year())>=0?E.zeroPad(n,4):(n=Math.abs(n),\"-\"+E.zeroPad(n,4))}-${t}-${a}`},\"iso-utc\":e=>new Date(e.epoch).toISOString(),nice:e=>`${N.short()[e.month()]} ${E.ordinal(e.date())}, ${e.time()}`,\"nice-24\":e=>`${N.short()[e.month()]} ${E.ordinal(e.date())}, ${e.hour24()}:${E.zeroPad(e.minute())}`,\"nice-year\":e=>`${N.short()[e.month()]} ${E.ordinal(e.date())}, ${e.year()}`,\"nice-day\":e=>`${we.short()[e.day()]} ${_e(N.short()[e.month()])} ${E.ordinal(e.date())}`,\"nice-full\":e=>`${e.dayName()} ${_e(e.monthName())} ${E.ordinal(e.date())}, ${e.time()}`,\"nice-full-24\":e=>`${e.dayName()} ${_e(e.monthName())} ${E.ordinal(e.date())}, ${e.hour24()}:${E.zeroPad(e.minute())}`},Oe={\"day-name\":\"day\",\"month-name\":\"month\",\"iso 8601\":\"iso\",\"time-h24\":\"time-24\",\"time-12\":\"time\",\"time-h12\":\"time\",tz:\"timezone\",\"day-num\":\"day-number\",\"month-num\":\"month-number\",\"month-iso\":\"iso-month\",\"year-iso\":\"iso-year\",\"nice-short\":\"nice\",\"nice-short-24\":\"nice-24\",mdy:\"numeric-us\",dmy:\"numeric-uk\",ymd:\"numeric\",\"yyyy/mm/dd\":\"numeric\",\"mm/dd/yyyy\":\"numeric-us\",\"dd/mm/yyyy\":\"numeric-us\",\"little-endian\":\"numeric-uk\",\"big-endian\":\"numeric\",\"day-nice\":\"nice-day\"};Object.keys(Oe).forEach(e=>je[e]=je[Oe[e]]);var $e=(e,t=\"\")=>{if(!0!==e.isValid())return\"\";if(je.hasOwnProperty(t)){let a=je[t](e)||\"\";return\"json\"!==t&&(a=String(a),\"ampm\"!==t&&(a=_e(a))),a}if(-1!==t.indexOf(\"{\")){let a=/\\{(.+?)\\}/g;return t=t.replace(a,(t,a)=>{if(a=a.toLowerCase().trim(),je.hasOwnProperty(a)){let t=String(je[a](e));return\"ampm\"!==a?_e(t):t}return\"\"})}return e.format(\"iso-short\")};const De=E.zeroPad,Me=E.formatTimezone,Pe={G:e=>e.era(),GG:e=>e.era(),GGG:e=>e.era(),GGGG:e=>\"AD\"===e.era()?\"Anno Domini\":\"Before Christ\",y:e=>e.year(),yy:e=>parseInt(String(e.year()).substr(2,4),10),yyy:e=>e.year(),yyyy:e=>e.year(),yyyyy:e=>\"0\"+e.year(),Q:e=>e.quarter(),QQ:e=>e.quarter(),QQQ:e=>e.quarter(),QQQQ:e=>e.quarter(),M:e=>e.month()+1,MM:e=>De(e.month()+1),MMM:e=>e.format(\"month-short\"),MMMM:e=>e.format(\"month\"),w:e=>e.week(),ww:e=>De(e.week()),d:e=>e.date(),dd:e=>De(e.date()),D:e=>e.dayOfYear(),DD:e=>De(e.dayOfYear()),DDD:e=>De(e.dayOfYear(),3),E:e=>e.format(\"day-short\"),EE:e=>e.format(\"day-short\"),EEE:e=>e.format(\"day-short\"),EEEE:e=>e.format(\"day\"),EEEEE:e=>e.format(\"day\")[0],e:e=>e.day(),ee:e=>e.day(),eee:e=>e.format(\"day-short\"),eeee:e=>e.format(\"day\"),eeeee:e=>e.format(\"day\")[0],a:e=>e.ampm().toUpperCase(),aa:e=>e.ampm().toUpperCase(),aaa:e=>e.ampm().toUpperCase(),aaaa:e=>e.ampm().toUpperCase(),h:e=>e.h12(),hh:e=>De(e.h12()),H:e=>e.hour(),HH:e=>De(e.hour()),m:e=>e.minute(),mm:e=>De(e.minute()),s:e=>e.second(),ss:e=>De(e.second()),SSS:e=>De(e.millisecond(),3),A:e=>e.epoch-e.startOf(\"day\").epoch,z:e=>e.timezone().name,zz:e=>e.timezone().name,zzz:e=>e.timezone().name,zzzz:e=>e.timezone().name,Z:e=>Me(e.timezone().current.offset),ZZ:e=>Me(e.timezone().current.offset),ZZZ:e=>Me(e.timezone().current.offset),ZZZZ:e=>Me(e.timezone().current.offset,\":\")},Se=(e,t,a)=>{let n=e,r=t;for(let o=0;o<a;o+=1)Pe[n]=Pe[r],n+=e,r+=t};Se(\"q\",\"Q\",4),Se(\"L\",\"M\",4),Se(\"Y\",\"y\",4),Se(\"c\",\"e\",4),Se(\"k\",\"H\",2),Se(\"K\",\"h\",2),Se(\"S\",\"s\",2),Se(\"v\",\"z\",4),Se(\"V\",\"Z\",4);var qe=(e,t)=>{let a=t.split(\"\");return a=function(e){for(let t=0;t<e.length;t+=1)if(\"'\"===e[t])for(let a=t+1;a<e.length;a+=1){if(e[a]&&(e[t]+=e[a]),\"'\"===e[a]){e[a]=null;break}e[a]=null}return e.filter(e=>e)}(a),a=function(e){for(let t=0;t<e.length;t+=1){let a=e[t];for(let n=t+1;n<e.length&&e[n]===a;n+=1)e[t]+=e[n],e[n]=null}return(e=e.filter(e=>e)).map(e=>(\"''\"===e&&(e=\"'\"),e))}(a),a.reduce((t,a)=>(void 0!==Pe[a]?t+=Pe[a](e)||\"\":(/^'.{1,}'$/.test(a)&&(a=a.replace(/'/g,\"\")),t+=a),t),\"\")};const Te=[\"year\",\"season\",\"quarter\",\"month\",\"week\",\"day\",\"quarterHour\",\"hour\",\"minute\"],Ee=function(e,t){let a=e.clone().startOf(t),n=e.clone().endOf(t).epoch-a.epoch,r=(e.epoch-a.epoch)/n;return parseFloat(r.toFixed(2))};var Ne=(e,t)=>{if(t)return t=E.normalize(t),Ee(e,t);let a={};return Te.forEach(t=>{a[t]=Ee(e,t)}),a};var Ce=(e,t)=>{let a=e.progress();return\"quarterhour\"===(t=E.normalize(t))&&(t=\"quarterHour\"),void 0!==a[t]?(a[t]>.5&&(e=e.add(1,t)),e=e.startOf(t)):!1===e.silent&&console.warn(\"no known unit '\"+t+\"'\"),e};const Ie=(e,t,a)=>{let n=0;for(e=e.clone();e.isBefore(t);)e=e.add(1,a),n+=1;return e.isAfter(t,a)&&(n-=1),n};var Ye=(e,t,a)=>e.isBefore(t)?Ie(e,t,a):-1*Ie(t,e,a);var Ae=function(e,t){let a=t.epoch-e.epoch,n={milliseconds:a,seconds:parseInt(a/1e3,10)};n.minutes=parseInt(n.seconds/60,10),n.hours=parseInt(n.minutes/60,10);let r=e.clone();return n.years=((e,t)=>{let a=t.year()-e.year();return(e=e.year(t.year())).isAfter(t)&&(a-=1),a})(r,t),r=e.add(n.years,\"year\"),n.months=12*n.years,r=e.add(n.months,\"month\"),n.months+=Ye(r,t,\"month\"),n.weeks=52*n.years,r=e.add(n.weeks,\"week\"),n.weeks+=Ye(r,t,\"week\"),n.days=7*n.weeks,r=e.add(n.days,\"day\"),n.days+=Ye(r,t,\"day\"),n};var xe=function(e,t,a){t=E.beADate(t,e);let n=!1;if(e.isAfter(t)){let a=e;e=t,t=a,n=!0}let r=Ae(e,t);return n&&(r=function(e){return Object.keys(e).forEach(t=>{e[t]*=-1}),e}(r)),a?(a=E.normalize(a),!0!==/s$/.test(a)&&(a+=\"s\"),\"dates\"===a&&(a=\"days\"),r[a]):r};const Le={months:{almost:10,over:4},days:{almost:25,over:10},hours:{almost:20,over:8},minutes:{almost:50,over:20},seconds:{almost:50,over:20}};function Fe(e,t){return 1===e&&(t=t.slice(0,-1)),e+\" \"+t}var Be=(e,t)=>{const a=function(e,t){const a=e.isBefore(t),n=a?t:e;let r=a?e:t;r=r.clone();const o={years:0,months:0,days:0,hours:0,minutes:0,seconds:0};return Object.keys(o).forEach(e=>{if(r.isSame(n,e))return;let t=r.diff(n,e);r=r.add(t,e),o[e]=t}),a&&Object.keys(o).forEach(e=>{0!==o[e]&&(o[e]*=-1)}),o}(e,t=E.beADate(t,e));if(!0===Object.keys(a).every(e=>!a[e]))return{diff:a,rounded:\"now\",qualified:\"now\",precise:\"now\"};let n,r,o,i=[];return Object.keys(a).forEach((e,t,o)=>{const s=Math.abs(a[e]);if(0===s)return;const u=Fe(s,e);if(i.push(u),!n){if(n=r=u,t>4)return;const i=o[t+1],l=Math.abs(a[i]);l>Le[i].almost?(n=Fe(s+1,e),r=\"almost \"+n):l>Le[i].over&&(r=\"over \"+u)}}),o=i.splice(0,2).join(\", \"),!0===e.isAfter(t)?(n+=\" ago\",r+=\" ago\",o+=\" ago\"):(n=\"in \"+n,r=\"in \"+r,o=\"in \"+o),{diff:a,rounded:n,qualified:r,precise:o}},Ze={north:[[\"spring\",2,1],[\"summer\",5,1],[\"fall\",8,1],[\"autumn\",8,1],[\"winter\",11,1]],south:[[\"fall\",2,1],[\"autumn\",2,1],[\"winter\",5,1],[\"spring\",8,1],[\"summer\",11,1]]},He=[null,[0,1],[3,1],[6,1],[9,1]];const Qe={minute:e=>(x(e,{second:0,millisecond:0}),e),quarterhour:e=>{let t=e.minutes();return e=t>=45?e.minutes(45):t>=30?e.minutes(30):t>=15?e.minutes(15):e.minutes(0),x(e,{second:0,millisecond:0}),e},hour:e=>(x(e,{minute:0,second:0,millisecond:0}),e),day:e=>(x(e,{hour:0,minute:0,second:0,millisecond:0}),e),week:e=>{let t=e.clone();return(e=e.day(e._weekStart)).isAfter(t)&&(e=e.subtract(1,\"week\")),x(e,{hour:0,minute:0,second:0,millisecond:0}),e},month:e=>(x(e,{date:1,hour:0,minute:0,second:0,millisecond:0}),e),quarter:e=>{let t=e.quarter();return He[t]&&x(e,{month:He[t][0],date:He[t][1],hour:0,minute:0,second:0,millisecond:0}),e},season:e=>{let t=e.season(),a=\"north\";\"South\"===e.hemisphere()&&(a=\"south\");for(let n=0;n<Ze[a].length;n++)if(Ze[a][n][0]===t){let r=e.year();return\"winter\"===t&&e.month()<3&&(r-=1),x(e,{year:r,month:Ze[a][n][1],date:Ze[a][n][2],hour:0,minute:0,second:0,millisecond:0}),e}return e},year:e=>(x(e,{month:0,date:1,hour:0,minute:0,second:0,millisecond:0}),e),decade:e=>{let t=(e=e.startOf(\"year\")).year(),a=10*parseInt(t/10,10);return e=e.year(a)},century:e=>{let t=(e=e.startOf(\"year\")).year(),a=100*parseInt(t/100,10);return e=e.year(a)}};Qe.date=Qe.day;var Ge=g;var Ue=$e,Ve=qe,We=Ne,Je=Ce,Ke=xe,Re=Be,Xe={startOf:(e,t)=>{let a=e.clone();return t=E.normalize(t),Qe[t]?Qe[t](a):\"summer\"===t||\"winter\"===t?(a=a.season(t),Qe.season(a)):a},endOf:(e,t)=>{let a=e.clone();return t=E.normalize(t),Qe[t]?(a=Qe[t](a),a=a.add(1,t),a=a.subtract(1,\"millisecond\"),a):a}},et=function(e,t=\"\",a){if(!t||!a)return[];if(t=E.normalize(t),a=e.clone().set(a),e.isAfter(a)){let t=e;e=a,a=t}let n=e.clone();!function(e){return!!we.short().find(t=>t===e)||!!we.long().find(t=>t===e)}(t)?n=n.next(t):(n=n.next(t),t=\"week\");let r=[];for(;n.isBefore(a);)r.push(n),n=n.add(1,t);return r},tt=e=>{let a=e.timezones,n=e.tz;if(!1===a.hasOwnProperty(n)&&(n=Ge(e.tz,a)),null===n)return!1===e.silent&&console.warn(\"Warn: could not find given or local timezone - '\"+e.tz+\"'\"),{current:{epochShift:0}};let r=a[n],o={name:(i=n,i=(i=(i=i[0].toUpperCase()+i.substr(1)).replace(/\\/gmt/,\"/GMT\")).replace(/[\\/_]([a-z])/gi,e=>e.toUpperCase())),hasDst:Boolean(r.dst),default_offset:r.offset,hemisphere:\"s\"===r.hem?\"South\":\"North\",current:{}};var i,s;if(o.hasDst){let e=(s=r.dst)?s.split(\"->\"):[];o.change={start:e[0],back:e[1]}}let u=r.offset,l=u;return!0===o.hasDst&&(l=\"North\"===o.hemisphere?u-1:r.offset+1),!1===o.hasDst?(o.current.offset=u,o.current.isDST=!1):!0===t(e.epoch,o.change.start,o.change.back,u,l)?(o.current.offset=u,o.current.isDST=\"North\"===o.hemisphere):(o.current.offset=l,o.current.isDST=\"South\"===o.hemisphere),o},at=ye;const nt=[\"century\",\"decade\",\"year\",\"month\",\"date\",\"day\",\"hour\",\"minute\",\"second\",\"millisecond\"],rt={set:function(e,t){let a=this.clone();return a=at(a,e,null),t&&(this.tz=Ge(t)),a},timezone:function(){return tt(this)},isDST:function(){return tt(this).current.isDST},hasDST:function(){return tt(this).hasDst},offset:function(){return 60*tt(this).current.offset},hemisphere:function(){return tt(this).hemisphere},format:function(e){return Ue(this,e)},unixFmt:function(e){return Ve(this,e)},startOf:function(e){return Xe.startOf(this,e)},endOf:function(e){return Xe.endOf(this,e)},leapYear:function(){let e=this.year();return E.isLeapYear(e)},progress:function(e){return We(this,e)},nearest:function(e){return Je(this,e)},diff:function(e,t){return Ke(this,e,t)},since:function(e){return e||(e=this.clone().set()),Re(this,e)},next:function(e){return this.add(1,e).startOf(e)},last:function(e){return this.subtract(1,e).startOf(e)},isValid:function(){return!(!this.epoch&&0!==this.epoch)&&!isNaN(this.d.getTime())},goto:function(e){let t=this.clone();return t.tz=Ge(e,t.timezones),t},every:function(e,t){if(\"object\"==typeof e&&\"string\"==typeof t){let a=t;t=e,e=a}return et(this,e,t)},isAwake:function(){let e=this.hour();return!(e<8||e>22)},isAsleep:function(){return!this.isAwake()},daysInMonth:function(){switch(this.month()){case 0:return 31;case 1:return this.leapYear()?29:28;case 2:return 31;case 3:return 30;case 4:return 31;case 5:return 30;case 6:case 7:return 31;case 8:return 30;case 9:return 31;case 10:return 30;case 11:return 31;default:throw new Error(\"Invalid Month state.\")}},log:function(){return console.log(\"\"),console.log(Ue(this,\"nice-short\")),this},logYear:function(){return console.log(\"\"),console.log(Ue(this,\"full-short\")),this},json:function(){return nt.reduce((e,t)=>(e[t]=this[t](),e),{})},debug:function(){let e=this.timezone(),t=this.format(\"MM\")+\" \"+this.format(\"date-ordinal\")+\" \"+this.year();return t+=\"\\n - \"+this.format(\"time\"),console.log(\"\\n\\n\",t+\"\\n - \"+e.name+\" (\"+e.current.offset+\")\"),this},from:function(e){return(e=this.clone().set(e)).since(this)},fromNow:function(){return this.clone().set(Date.now()).since(this)},weekStart:function(e){if(\"number\"==typeof e)return this._weekStart=e,this;if(\"string\"==typeof e){e=e.toLowerCase().trim();let t=we.short().indexOf(e);-1===t&&(t=we.long().indexOf(e)),-1===t&&(t=1),this._weekStart=t}else console.warn(\"Spacetime Error: Cannot understand .weekStart() input:\",e);return this}};rt.inDST=rt.isDST,rt.round=rt.nearest,rt.each=rt.every;var ot=rt;const it=E.isLeapYear,st=e=>(\"string\"==typeof e&&(e=parseInt(e,10)),e),ut=[\"year\",\"month\",\"date\",\"hour\",\"minute\",\"second\",\"millisecond\"],lt=(e,t,a)=>{let n=ut.indexOf(a),r=ut.slice(n,ut.length);for(let a=0;a<r.length;a++){let n=t[r[a]]();e[r[a]](n)}return e},ht=function(e,t,a,n){return!0===a&&e.isBefore(t)?e=e.add(1,n):!1===a&&e.isAfter(t)&&(e=e.minus(1,n)),e};var ct={milliseconds:(e,t)=>{t=st(t);let a=e.millisecond()-t;return e.epoch-a},seconds:(e,t,a)=>{t=st(t);let n=e.clone(),r=(e.second()-t)*$.second;return e.epoch=e.epoch-r,(e=ht(e,n,a,\"minute\")).epoch},minutes:(e,t,a)=>{t=st(t);let n=e.clone(),r=(e.minute()-t)*$.minute;return e.epoch-=r,lt(e,n,\"second\"),(e=ht(e,n,a,\"hour\")).epoch},hours:(e,t,a)=>{(t=st(t))>=24?t=24:t<0&&(t=0);let n=e.clone(),r=e.hour()-t,o=r*$.hour;return e.epoch-=o,e.date()!==n.date()&&(e=n.clone(),r>1&&(r-=1),r<1&&(r+=1),o=r*$.hour,e.epoch-=o),x(e,{hour:t}),lt(e,n,\"minute\"),(e=ht(e,n,a,\"day\")).epoch},time:(e,t,a)=>{let n=t.match(/([0-9]{1,2})[:h]([0-9]{1,2})(:[0-9]{1,2})? ?(am|pm)?/);if(!n){if(n=t.match(/([0-9]{1,2}) ?(am|pm)/),!n)return e.epoch;n.splice(2,0,\"0\"),n.splice(3,0,\"\")}let r=!1,o=parseInt(n[1],10),i=parseInt(n[2],10);i>=60&&(i=59),o>12&&(r=!0),!1===r&&(\"am\"===n[4]&&12===o&&(o=0),\"pm\"===n[4]&&o<12&&(o+=12)),n[3]=n[3]||\"\",n[3]=n[3].replace(/:/,\"\");let s=parseInt(n[3],10)||0,u=e.clone();return e=(e=(e=(e=e.hour(o)).minute(i)).second(s)).millisecond(0),(e=ht(e,u,a,\"day\")).epoch},date:(e,t,a)=>{if((t=st(t))>28){let a=e.month(),n=T[a];1===a&&29===t&&it(e.year())&&(n=29),t>n&&(t=n)}t<=0&&(t=1);let n=e.clone();return x(e,{date:t}),(e=ht(e,n,a,\"month\")).epoch},month:(e,t,a)=>{\"string\"==typeof t&&(t=N.mapping()[t.toLowerCase()]),(t=st(t))>=12&&(t=11),t<=0&&(t=0);let n=e.date();n>T[t]&&(n=T[t]);let r=e.clone();return x(e,{month:t,date:n}),(e=ht(e,r,a,\"year\")).epoch},year:(e,t)=>(\"string\"==typeof t&&/^'[0-9]{2}$/.test(t)&&(t=t.replace(/'/,\"\").trim(),t=(t=Number(t))>30?1900+t:2e3+t),t=st(t),x(e,{year:t}),e.epoch),week:(e,t,a)=>{let n=e.clone();return t=st(t),\"december\"===(e=(e=(e=e.month(0)).date(1)).day(\"monday\")).monthName()&&e.date()>=28&&(e=e.add(1,\"week\")),t-=1,e=e.add(t,\"weeks\"),(e=ht(e,n,a,\"year\")).epoch},dayOfYear:(e,t,a)=>{t=st(t);let n=e.clone();return(t-=1)<=0?t=0:t>=365&&(t=364),e=(e=e.startOf(\"year\")).add(t,\"day\"),lt(e,n,\"hour\"),(e=ht(e,n,a,\"year\")).epoch}};const dt=e=>e=(e=(e=e.minute(0)).second(0)).millisecond(1);var mt={millisecond:function(e){if(void 0!==e){let t=this.clone();return t.epoch=ct.milliseconds(t,e),t}return this.d.getMilliseconds()},second:function(e,t){if(void 0!==e){let a=this.clone();return a.epoch=ct.seconds(a,e,t),a}return this.d.getSeconds()},minute:function(e,t){if(void 0!==e){let a=this.clone();return a.epoch=ct.minutes(a,e,t),a}return this.d.getMinutes()},hour:function(e,t){let a=this.d;if(void 0!==e){let a=this.clone();return a.epoch=ct.hours(a,e,t),a}return a.getHours()},hourFloat:function(e,t){if(void 0!==e){let a=this.clone(),n=e%1;n*=60;let r=parseInt(e,10);return a.epoch=ct.hours(a,r,t),a.epoch=ct.minutes(a,n,t),a}let a=this.d,n=a.getHours(),r=a.getMinutes();return r/=60,n+r},hour12:function(e,t){let a=this.d;if(void 0!==e){let a=this.clone(),n=(e=\"\"+e).match(/^([0-9]+)(am|pm)$/);if(n){let e=parseInt(n[1],10);\"pm\"===n[2]&&(e+=12),a.epoch=ct.hours(a,e,t)}return a}let n=a.getHours();return n>12&&(n-=12),0===n&&(n=12),n},time:function(e,t){if(void 0!==e){let a=this.clone();return e=e.toLowerCase().trim(),a.epoch=ct.time(a,e,t),a}return`${this.h12()}:${E.zeroPad(this.minute())}${this.ampm()}`},ampm:function(e,t){let a=\"am\",n=this.hour();if(n>=12&&(a=\"pm\"),\"string\"!=typeof e)return a;let r=this.clone();return e=e.toLowerCase().trim(),n>=12&&\"am\"===e?(n-=12,r.hour(n,t)):n<12&&\"pm\"===e?(n+=12,r.hour(n,t)):r},dayTime:function(e,t){if(void 0!==e){const a={morning:\"7:00am\",breakfast:\"7:00am\",noon:\"12:00am\",lunch:\"12:00pm\",afternoon:\"2:00pm\",evening:\"6:00pm\",dinner:\"6:00pm\",night:\"11:00pm\",midnight:\"23:59pm\"};let n=this.clone();return e=(e=e||\"\").toLowerCase(),!0===a.hasOwnProperty(e)&&(n=n.time(a[e],t)),n}let a=this.hour();return a<6?\"night\":a<12?\"morning\":a<17?\"afternoon\":a<22?\"evening\":\"night\"},iso:function(e){return void 0!==e?this.set(e):this.format(\"iso\")}},pt={date:function(e,t){if(void 0!==e){let a=this.clone();return(e=parseInt(e,10))&&(a.epoch=ct.date(a,e,t)),a}return this.d.getDate()},day:function(e,t){if(void 0===e)return this.d.getDay();let a=this.clone(),n=e;\"string\"==typeof e&&(e=e.toLowerCase(),we.aliases.hasOwnProperty(e)?n=we.aliases[e]:(n=we.short().indexOf(e),-1===n&&(n=we.long().indexOf(e))));let r=this.d.getDay()-n;!0===t&&r>0&&(r-=7),!1===t&&r<0&&(r+=7);let o=this.subtract(r,\"days\");return x(o,{hour:a.hour(),minute:a.minute(),second:a.second()}),o},dayName:function(e,t){if(void 0===e)return we.long()[this.day()];let a=this.clone();return a=a.day(e,t),a}},ft={dayOfYear:function(e,t){if(void 0!==e){let a=this.clone();return a.epoch=ct.dayOfYear(a,e,t),a}let a,n=0,r=this.d.getMonth();for(let e=1;e<=r;e++)a=new Date,a.setDate(1),a.setFullYear(this.d.getFullYear()),a.setHours(1),a.setMinutes(1),a.setMonth(e),a.setHours(-2),n+=a.getDate();return n+this.d.getDate()},week:function(e,t){if(void 0!==e){let a=this.clone();return a.epoch=ct.week(this,e,t),a=dt(a),a}let a=this.clone();a=a.month(0),a=a.date(1),a=dt(a),a=a.day(\"monday\"),\"december\"===a.monthName()&&a.date()>=28&&(a=a.add(1,\"week\"));let n=1;1===a.date()&&(n=0),a=a.minus(1,\"second\");const r=this.epoch;if(a.epoch>r)return 1;let o=0,i=4*this.month();for(a.epoch+=$.week*i,o+=i;o<=52;o++){if(a.epoch>r)return o+n;a=a.add(1,\"week\")}return 52},month:function(e,t){if(void 0!==e){let a=this.clone();return a.epoch=ct.month(a,e,t),a}return this.d.getMonth()},monthName:function(e,t){if(void 0!==e){let a=this.clone();return a=a.month(e,t),a}return N.long()[this.month()]},quarter:function(e,t){if(void 0!==e&&(\"string\"==typeof e&&(e=e.replace(/^q/i,\"\"),e=parseInt(e,10)),He[e])){let a=this.clone(),n=He[e][0];return a=a.month(n,t),a=a.date(1,t),a=a.startOf(\"day\"),a}let a=this.d.getMonth();for(let e=1;e<He.length;e++)if(a<He[e][0])return e-1;return 4},season:function(e,t){let a=\"north\";if(\"South\"===this.hemisphere()&&(a=\"south\"),void 0!==e){let n=this.clone();for(let r=0;r<Ze[a].length;r++)e===Ze[a][r][0]&&(n=n.month(Ze[a][r][1],t),n=n.date(1),n=n.startOf(\"day\"));return n}let n=this.d.getMonth();for(let e=0;e<Ze[a].length-1;e++)if(n>=Ze[a][e][1]&&n<Ze[a][e+1][1])return Ze[a][e][0];return\"winter\"},year:function(e){if(void 0!==e){let t=this.clone();return t.epoch=ct.year(t,e),t}return this.d.getFullYear()},era:function(e){if(void 0!==e){let t=this.clone();e=e.toLowerCase();let a=t.d.getFullYear();return\"bc\"===e&&a>0&&(t.epoch=ct.year(t,-1*a)),\"ad\"===e&&a<0&&(t.epoch=ct.year(t,-1*a)),t}return this.d.getFullYear()<0?\"BC\":\"AD\"},decade:function(e){if(void 0!==e){if(!(e=(e=(e=String(e)).replace(/([0-9])'?s$/,\"$1\")).replace(/([0-9])(th|rd|st|nd)/,\"$1\")))return console.warn(\"Spacetime: Invalid decade input\"),this;2===e.length&&/[0-9][0-9]/.test(e)&&(e=\"19\"+e);let t=Number(e);return isNaN(t)?this:(t=10*Math.floor(t/10),this.year(t))}return this.startOf(\"decade\").year()},century:function(e){if(void 0!==e){\"string\"==typeof e&&(e=(e=(e=e.replace(/([0-9])(th|rd|st|nd)/,\"$1\")).replace(/([0-9]+) ?(b\\.?c\\.?|a\\.?d\\.?)/i,(e,t,a)=>(a.match(/b\\.?c\\.?/i)&&(t=\"-\"+t),t))).replace(/c$/,\"\"));let t=Number(e);return isNaN(e)?(console.warn(\"Spacetime: Invalid century input\"),this):(0===t&&(t=1),t=t>=0?100*(t-1):100*(t+1),this.year(t))}let t=this.startOf(\"century\").year();return t=Math.floor(t/100),t<0?t-1:t+1},millenium:function(e){if(void 0!==e){if(\"string\"==typeof e&&(e=e.replace(/([0-9])(th|rd|st|nd)/,\"$1\"),e=Number(e),isNaN(e)))return console.warn(\"Spacetime: Invalid millenium input\"),this;e>0&&(e-=1);let t=1e3*e;return 0===t&&(t=1),this.year(t)}let t=Math.floor(this.year()/1e3);return t>=0&&(t+=1),t}};const yt=Object.assign({},mt,pt,ft);yt.milliseconds=yt.millisecond,yt.seconds=yt.second,yt.minutes=yt.minute,yt.hours=yt.hour,yt.hour24=yt.hour,yt.h12=yt.hour12,yt.h24=yt.hour24,yt.days=yt.day;var gt=e=>{Object.keys(yt).forEach(t=>{e.prototype[t]=yt[t]})};const bt=E.isLeapYear,kt=function(e,t){return 1===e&&bt(t)?29:T[e]};var wt={months:(e,t)=>{if(e.month>0){let a=parseInt(e.month/12,10);e.year=t.year()+a,e.month=e.month%12}else if(e.month<0){let a=Math.floor(Math.abs(e.month)/13,10);a=Math.abs(a)+1,e.year=t.year()-a,e.month=e.month%12,e.month=e.month+12,12===e.month&&(e.month=0)}return e},days:(e,t,a)=>{let n=t.year(),r=t.month(),o=kt(r,n);for(;a>o;)a-=o,r+=1,r>=12&&(r-=12,n+=1),o=kt(r,n);return e.month=r,e.date=a,e},daysBack:(e,t,a)=>{e.year=t.year(),e.month=t.month();let n=t.date();for(e.date=n-Math.abs(a);e.date<1;){e.month-=1,e.month<0&&(e.month=11,e.year-=1);let t=kt(e.month,e.year);e.date+=t}return e}};const vt=[\"millisecond\",\"second\",\"minute\",\"hour\",\"date\",\"month\"];let zt={second:vt.slice(0,1),minute:vt.slice(0,2),quarterhour:vt.slice(0,2),hour:vt.slice(0,3),date:vt.slice(0,4),month:vt.slice(0,4),quarter:vt.slice(0,4),season:vt.slice(0,4),year:vt,decade:vt,century:vt};zt.week=zt.hour,zt.season=zt.date,zt.quarter=zt.date;const _t={year:!0,quarter:!0,season:!0,month:!0,week:!0,date:!0},jt={month:!0,quarter:!0,season:!0,year:!0};var Ot=e=>{e.prototype.add=function(e,t){let a=this.clone();if(!t||0===e)return a;let n=this.clone();if(\"millisecond\"===(t=E.normalize(t)))return a.epoch+=e,a;\"fortnight\"===t&&(e*=2,t=\"week\"),$[t]?a.epoch+=$[t]*e:\"week\"===t||\"weekend\"===t?a.epoch+=$.day*(7*e):\"quarter\"===t||\"season\"===t?a.epoch+=$.month*(3*e):\"quarterhour\"===t&&(a.epoch+=15*$.minute*e);let r={};if(zt[t]&&zt[t].forEach(e=>{r[e]=n[e]()}),_t[t]){const e=n.timezone().current.offset-a.timezone().current.offset;a.epoch+=3600*e*1e3}if(\"month\"===t&&(r.month=n.month()+e,r=wt.months(r,n)),\"week\"===t){let t=n.date()+7*e;t<=28&&t>1&&(r.date=t)}if(\"weekend\"===t&&\"saturday\"!==a.dayName())a=a.day(\"saturday\",!0);else if(\"date\"===t){if(e<0)r=wt.daysBack(r,n,e);else{let t=n.date()+e;r=wt.days(r,n,t)}0!==e&&n.isSame(a,\"day\")&&(r.date=n.date()+e)}else if(\"quarter\"===t){if(r.month=n.month()+3*e,r.year=n.year(),r.month<0){let e=Math.floor(r.month/12),t=r.month+12*Math.abs(e);r.month=t,r.year+=e}else if(r.month>=12){let e=Math.floor(r.month/12);r.month=r.month%12,r.year+=e}r.date=n.date()}else if(\"year\"===t){let t=n.year()+e,r=a.year();if(r<t){let t=Math.floor(e/4)||1;a.epoch+=Math.abs($.day*t)}else if(r>t){let t=Math.floor(e/4)||1;a.epoch+=$.day*t}}else\"decade\"===t?r.year=a.year()+10:\"century\"===t&&(r.year=a.year()+100);if(jt[t]){let e=T[r.month];r.date=n.date(),r.date>e&&(r.date=e)}return Object.keys(r).length>1&&x(a,r),a},e.prototype.subtract=function(e,t){return this.clone().add(-1*e,t)},e.prototype.minus=e.prototype.subtract,e.prototype.plus=e.prototype.add};const $t={millisecond:e=>e.epoch,second:e=>[e.year(),e.month(),e.date(),e.hour(),e.minute(),e.second()].join(\"-\"),minute:e=>[e.year(),e.month(),e.date(),e.hour(),e.minute()].join(\"-\"),hour:e=>[e.year(),e.month(),e.date(),e.hour()].join(\"-\"),day:e=>[e.year(),e.month(),e.date()].join(\"-\"),week:e=>[e.year(),e.week()].join(\"-\"),month:e=>[e.year(),e.month()].join(\"-\"),quarter:e=>[e.year(),e.quarter()].join(\"-\"),year:e=>e.year()};$t.date=$t.day;var Dt=e=>{const t={isAfter:function(e){e=E.beADate(e,this);let t=E.getEpoch(e);return null===t?null:this.epoch>t},isBefore:function(e){e=E.beADate(e,this);let t=E.getEpoch(e);return null===t?null:this.epoch<t},isEqual:function(e){e=E.beADate(e,this);let t=E.getEpoch(e);return null===t?null:this.epoch===t},isBetween:function(e,t,a=!1){e=E.beADate(e,this),t=E.beADate(t,this);let n=E.getEpoch(e);if(null===n)return null;let r=E.getEpoch(t);return null===r?null:a?this.isBetween(e,t)||this.isEqual(e)||this.isEqual(t):n<this.epoch&&this.epoch<r}};Object.keys(t).forEach(a=>{e.prototype[a]=t[a]})};var Mt=e=>{const t={i18n:e=>{E.isObject(e.days)&&we.set(e.days),E.isObject(e.months)&&N.set(e.months),E.isBoolean(e.useTitleCase)&&ve.set(e.useTitleCase)}};Object.keys(t).forEach(a=>{e.prototype[a]=t[a]})},Pt=a,St=ot,qt=gt,Tt=Ot,Et=e=>{e.prototype.isSame=function(t,a,n=!0){let r=this;if(!a)return null;if(\"string\"==typeof t&&\"object\"==typeof a){let e=t;t=a,a=e}return\"string\"!=typeof t&&\"number\"!=typeof t||(t=new e(t,this.timezone.name)),a=a.replace(/s$/,\"\"),!0===n&&r.tz!==t.tz&&((t=t.clone()).tz=r.tz),$t[a]?$t[a](r)===$t[a](t):null}},Nt=Dt,Ct=Mt;let It=d;const Yt=function(e,t,a={}){this.epoch=null,this.tz=Ge(t,It),this.silent=a.silent||!0,this.british=a.dmy||a.british,this._weekStart=1,void 0!==a.weekStart&&(this._weekStart=a.weekStart),this._today={},void 0!==a.today&&(this._today=a.today),Object.defineProperty(this,\"d\",{get:function(){let e=Pt(this),t=(new Date(this.epoch).getTimezoneOffset()||0)+60*e;t=60*t*1e3;let a=this.epoch+t;return new Date(a)}}),Object.defineProperty(this,\"timezones\",{get:()=>It,set:e=>(It=e,e)});let n=at(this,e);this.epoch=n.epoch};Object.keys(St).forEach(e=>{Yt.prototype[e]=St[e]}),Yt.prototype.clone=function(){return new Yt(this.epoch,this.tz,{silent:this.silent,weekStart:this._weekStart,today:this._today,parsers:this.parsers})},Yt.prototype.toLocalDate=function(){return this.toNativeDate()},Yt.prototype.toNativeDate=function(){return new Date(this.epoch)},qt(Yt),Tt(Yt),Et(Yt),Nt(Yt),Ct(Yt);var At=Yt;var xt=(e,t)=>{let a=new At(null),n=new At(null);a=a.time(e),n=t?n.time(t):a.add(59,\"minutes\");let r=a.hour(),o=n.hour();return Object.keys(a.timezones).filter(e=>{if(-1===e.indexOf(\"/\"))return!1;let t=new At(null,e),i=t.hour();return i>=r&&i<=o&&(!(i===r&&t.minute()<a.minute())&&!(i===o&&t.minute()>n.minute()))})};const Lt=(e,t,a)=>new At(e,t,a),Ft=function(e){let t=e._today||{};return Object.keys(t).forEach(a=>{e=e[a](t[a])}),e};Lt.now=(e,t)=>{let a=new At((new Date).getTime(),e,t);return a=Ft(a),a},Lt.today=(e,t)=>{let a=new At((new Date).getTime(),e,t);return a=Ft(a),a.startOf(\"day\")},Lt.tomorrow=(e,t)=>{let a=new At((new Date).getTime(),e,t);return a=Ft(a),a.add(1,\"day\").startOf(\"day\")},Lt.yesterday=(e,t)=>{let a=new At((new Date).getTime(),e,t);return a=Ft(a),a.subtract(1,\"day\").startOf(\"day\")},Lt.extend=function(e={}){return Object.keys(e).forEach(t=>{At.prototype[t]=e[t]}),this},Lt.timezones=function(){return(new At).timezones},Lt.max=function(e,t){let a=new At(null,e,t);return a.epoch=864e13,a},Lt.min=function(e,t){let a=new At(null,e,t);return a.epoch=-864e13,a},Lt.whereIts=xt,Lt.version=\"6.16.3\",Lt.plugin=Lt.extend;var Bt=Lt;export{Bt as default};\n"]},"metadata":{},"sourceType":"module"} |